## 3 Experimental Design and Implementation
### Development Environment
#### 3.2.1 Python Development Environment  
Python serves as the primary data processing platform, responsible for data preprocessing, feature engineering, and partial visualization work. The reasons for choosing Python include:  
1. Rich data processing libraries: pandas provides powerful dataframe manipulation capabilities, numpy supports efficient numerical computation, and matplotlib and seaborn offer flexible visualization functions.
2. Excellent extensibility: Python's modular design makes code easy to maintain and extend, facilitating the construction of reusable processing workflows.  
Active community support: Python has widespread application in data science, making it easy to find solutions when encountering problems.  
In the Python environment, this study developed a series of custom functions such as createPath(), loadData(), and dropDuplicated(). These functions encapsulate common data processing operations, improving code readability and reusability. The data storage system based on the shelve package, in particular, implements functionality similar to MATLAB's.mat files, allowing multiple variables to be saved in a single data file, facilitating data management and sharing.  
MATLAB Development Environment  
MATLAB is primarily used for complex spatial analysis and visualization work, playing an important role particularly in intersection coordinate calibration and vehicle path identification. The reasons for choosing MATLAB include:  
1. Powerful geometric computation capabilities: MATLAB's built-in functions such as inpolygon() provide efficient and reliable solutions for geometric determination.
2. Interactive visualization: MATLAB's graphical interface supports interactive operations such as zooming, panning, and other interactions, facilitating detailed visual analysis.
3. Matrix computation advantages: MATLAB excels when handling matrix operations on large-scale data.  
In the MATLAB environment, core functions such as plotRoad(), selectRoad(), and routeInferMain() were developed, forming the technical foundation for path identification and parameter extraction.  
Development Tool Integration  
Data exchange between the two platforms is implemented through text files, ensuring data format compatibility. The specific workflow is as follows: Python completes data preprocessing and exports results as text files; MATLAB reads these files for further analysis; analysis results are then exported for Python to perform visualization or other processing.  
While more advanced data serialization formats such as HDF5 or JSON could potentially improve I/O performance, text file exchange was selected for this study due to several practical considerations: (1) universal compatibility between Python and MATLAB environments without requiring additional libraries, (2) human-readable format facilitating debugging and data verification during algorithm development, (3) simplified data inspection and quality control processes, and (4) sufficient performance for the dataset size used in this study. For larger-scale implementations or real-time applications, more efficient serialization formats would be recommended. This loosely coupled integration approach ensures platform independence while achieving functional complementarity.