This project provides utilities for reading and processing camera trajectory data along with point clouds. It computes camera headings, identifies points to the left and right of the trajectory, and visualizes it in both 3D and 2D.
- Python 3.x
- NumPy
- Pandas
- Matplotlib
- Open3D
- Evo
pip install numpy pandas matplotlib open3d evo
The script can be executed with several command line arguments to specify input files and plotting preferences.
-
trajectory_files: Paths to one or more camera trajectory files. Multiple files should be separated by spaces.
-
--point_clouds
: (Optional) Paths to point cloud files corresponding to the trajectory files. -
--distance
: (Optional) Distance in meters to calculate left and right points, default is 1.0 meter. -
--plot
: (Optional) Flag to plot both the furthest left and right points along with the trajectory. -
--left
: (Optional) Flag to plot only the furthest left points. -
--right
: (Optional) Flag to plot only the furthest right points.There are some example trajectories and point cloud data files in the source folder.
python3 trajectory_visualization2D.py svin_Trajectory01.txt svin_Tajectory02.txt
python3 trajectory_visualization2D.py svin_2024_11_12_23_13_40CatacombsCenter.txt svin_2024_11_13_02_38_05CatacombsLeft.txt svin_2024_11_13_21_18_52CatacombsRight.txt
python3 trajectory_visualization3D.py svin_Trajectory01.txt
python3 trajectory_visualization2D.py svin_Trajectory01.txt --point_cloud Challenge2OGpointcloud1.ply --plot