Releases: rfonod/geo-trax
v0.7.0
Major Enhancements
Sample Data and Reproducibility
Added comprehensive example dataset in data/ directory with complete processing outputs, including sample video, flight log, georeferenced results, and visualization plots. Includes detailed reproducibility instructions in data/README.md to help users get started quickly and validate their setup. This addition makes it easy to test the full pipeline and understand expected outputs.
Enhanced Batch Processing with Plotting Control
Added plotting options to batch_process.py, enabling automatic generation and saving of trajectory plots and distribution charts during batch processing. New modes include plot-only processing (--plot, --plot-only) and flexible aggregation options (--plot-aggregate, --plot-points).
Video Re-Cutting Tool
Enhanced tools/recut_video_and_csv.py with:
- Direct CLI frame specification: Cut videos without needing a cuts file using
--startand--endarguments - Exact frame cutting mode: New
--exact-cutoption for precise frame-level cutting with re-encoding (slower but exact) - Robust error handling: Gracefully handles missing flight logs and CSV files without 'frame' column
- Flexible bitrate control: Custom bitrate specification for re-encoded videos
New Auxiliary Tools
tools/yolo_to_coco.py: Convert YOLO annotations to COCO format for dataset interoperabilitytools/random_frame_extraction.py: Extract random frames with SRT metadata filtering for dataset creation and validation
Feature & Documentation Updates
README and Documentation Enhancements:
- Added visual pipeline diagram (
assets/geo-trax_pipeline.svg) showing complete processing workflow - Expanded "Related Projects" section highlighting integration with Stabilo and HBB2OBB
- Restructured installation instructions for improved clarity
Visualization Improvements:
- Speed unit selection: New
--speed-unit(-su) option to display speeds in km/h or mi/h - Fixed
--showargument: Corrected implementation to actually display processing visualization during runtime - Improved help text: Clarified descriptions for plot-related arguments across all scripts
Configuration File Refinements:
- Renamed
cfg/aggressive.yaml→cfg/stable.yamlfor clearer naming convention
Dependency & Config Changes
Project Metadata Updates:
- Updated version to 0.7.0 across
pyproject.tomlandCITATION.cff - Adjusted
.gitignorefor better handling of dataset directories
Full Changelog: v0.6.0...v0.7.0
v0.6.0
Major Enhancements
- New auxiliary tools: Added a suite of scripts for dataset analysis, annotation, and validation, including tools for bounding box analysis, vehicle dimension comparison, tracking algorithm comparison, and dataset verification.
- Video and data processing utilities: Introduced scripts for video frame extraction, timestamp interpolation, video and flight log re-cutting, and timestamp anomaly correction.
- Visualization improvements: Added tools for visualizing YOLO annotations, lane segmentations, and bounding box center errors.
Feature & Documentation Updates
- README and documentation updates: Expanded documentation with new usage examples, tool descriptions, and a demonstration GIF/video.
- Improved CLI and help messages: Enhanced argument parsing and help descriptions across scripts for better usability.
- Citation and publication info updated: Updated citation details and publication information in
README.mdandCITATION.cff.
Pipeline & Usability Improvements
- Enhanced
visualize.py: Improved overlays and visualization options. - Aggregate and batch processing improvements: Refined logic in
aggregate.pyandbatch_process.pyfor more robust data handling. - New dataset validation and filtering tools: Added scripts for dataset speed/acceleration checks, annotation file ranking, and anomaly detection in cut videos.
Dependency & Config Changes
- Project metadata updates: Updated version to 0.6.0 and improved project classifiers in
pyproject.toml.
Full Changelog: v0.5.0...v0.6.0
v0.5.0
Major Enhancements
- New script
aggregate.py: Consolidates vehicle tracking results from multiple drone flights into unified datasets, with automated grouping, unique ID handling, and zipped exports. - Introduced
georeference.py: Dedicated georeferencing tool that converts stabilized trajectory data to geospatial coordinates, supports robust homography estimation, lane/section assignment, and vehicle kinematic analysis. - Improved project structure: Optional dependencies now managed in
pyproject.toml; removedrequirements.txtfor consistent installation (usepip install -e .).
Feature & Documentation Updates
- README expanded and clarified: More comprehensive project description, updated feature list, and new field deployment section highlighting real-world validation and dataset links.
- Installation instructions updated: Now recommend editable installs and provide details for both bash and zsh users.
- Updated citation and version info: Consistent across documentation and
CITATION.cff.
Pipeline & Usability Improvements
- Enhanced
visualize.py: More flexible and informative tracking overlays, including speed and lane numbers. - Improved error handling: Better guidance for missing orthophoto folders or configuration issues.
- Auxiliary tool support: Roadmap clarified for future releases.
Dependency & Config Changes
- All dependencies managed via
pyproject.toml: Core and development requirements are more explicit. - Improved maintainability: Updated
setuptoolsconfiguration and project classifiers.
Other
- General improvements to code quality, modularity, and robustness throughout the pipeline.
Full Changelog: v0.4.0...v0.5.0
v0.4.0
Main Changes:
- Enhanced Visualization Capabilities
- New Plotting Script: Added a dedicated script for visualizing extracted trajectories in multiple formats
- Stabilized Trajectory Preview: Trajectories are now displayed at the beginning of videos, providing immediate visual feedback
- Improved Visual Analysis: Enhanced visualization options to better analyze and interpret trajectory data
- Batch Processing Improvements
- Robust Multi-file Handling: Improved processing logic when working with multiple input files
- Error Handling: Enhanced error management during batch operations to prevent processing failures
- New Configuration Files: Added new configuration files to accommodate specific use cases and processing scenarios
- Code Quality & Documentation
- Codebase Refactoring: Streamlined internal architecture for better maintainability
- Performance Optimizations: Improved overall processing speed and memory usage
- Documentation Updates: Enhanced README with clearer installation and usage instructions
Full Changelog: v0.3.0...v0.4.0
v0.3.0
Changes:
-
Video Visualization and Batch Processing Enhancements
- Added a script for visualizing video outputs with annotated trajectories.
- Improved batch processing logic for better efficiency and robustness when handling multiple input files.
-
Dependency and Delimiter Detection Updates
- Updated the
stabilodependency to install directly from PyPI instead of GitHub. - Enhanced text file delimiter detection logic for better compatibility with various input formats.
- Updated the
-
High-Precision Homography and Logging Improvements
- Updated the code to save homography transformations at higher precision.
- Enhanced logging functionality for more detailed and user-friendly feedback during execution.
-
Code Streamlining
- Performed general code optimizations and refactoring for better maintainability and performance.
- Made minor updates to the
README.md.
Full Changelog: v0.2.0...v0.3.0
v0.2.0
Changes:
-
Dependency Update: Stabilo v1.0.0
- Upgraded Stabilo version from v0.1.0 to v1.0.0 in
requirements.txt. - The new version of Stabilo improves the robustness of the bounding box conversion function, particularly for handling sudden dynamic changes.
- Upgraded Stabilo version from v0.1.0 to v1.0.0 in
-
README.mdupdate- Made minor improvements for clarity and conciseness, including added citation details.
-
References:
- Added a citation reference to the preprint paper for research-related attribution and updated link to
stabilo-optimize
- Added a citation reference to the preprint paper for research-related attribution and updated link to
Full Changelog: v0.1.0...v0.2.0
v0.1.0
Pre-release of geo-trax.
Full Changelog: https://github.com/rfonod/geo-trax/commits/v0.1.0