All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- Video sequence support for temporal tasks
- Integration with Weights & Biases for experiment tracking
- TensorRT optimization for faster inference
- Docker images for easy deployment
- Additional model architectures (DETR, YOLOv8, etc.)
- Mobile deployment guide (CoreML, TFLite)
- Added policies for PRs and CI for testing
- Added bib files for referencing
2.0.0 - 2025-01-15
Complete rewrite of the original 2019 toolkit with modern PyTorch and best practices.
-
Core Components
- Native PyTorch Dataset class (
VisDroneDataset) with automatic filtering - Support for 4 detection models: Faster R-CNN (ResNet50, MobileNet), FCOS, RetinaNet
- Model factory with
get_model()function - Comprehensive visualization utilities
- Format converters for COCO and YOLO (not just VOC)
- Native PyTorch Dataset class (
-
CLI Tools
train.py- Complete training pipeline with AMP supportinference.py- Batch inference on images/videoswebcam_demo.py- Real-time webcam detection demoevaluate.py- Model evaluation with metricsconvert_annotations.py- Format conversion utility
-
Training Features
- Automatic mixed precision (AMP) for 2x faster training
- Learning rate scheduling (StepLR)
- Checkpointing and resuming
- Training curve visualization
- Validation during training
-
Documentation
- Comprehensive README with examples
- Installation guide (INSTALL.md)
- Quick reference guide (QUICKSTART.md)
- Contributing guidelines (CONTRIBUTING.md)
- Code of Conduct (CODE_OF_CONDUCT.md)
- Security policy (SECURITY.md)
- Test documentation
-
Development
- 66 unit tests with pytest
- Test coverage >80%
- Pre-commit hooks for code quality
- Makefile for common tasks
- Type hints throughout codebase
- Modern packaging with pyproject.toml
-
Configuration
- YAML configuration files for all models
- Virtualenv-first installation
- Requirements files for different use cases
- .gitignore for Python projects
- Framework: Migrated from TensorFlow 1.x to PyTorch 2.0+
- Models: Replaced custom implementations with torchvision models
- Format: Moved from PASCAL VOC only to COCO and YOLO support
- Installation: Simplified with virtualenv instead of conda
- Structure: Proper Python package with CLI entry points
- Performance: 2-3x faster training with AMP
- Usability: Simple CLI tools instead of complex scripts
- Maintainability: Comprehensive tests and documentation
- Code Quality: Type hints, linting, formatting with Black
- Flexibility: Easy to extend with new models and features
- TensorFlow dependencies
- PASCAL VOC as primary format (still available if needed)
- Legacy training scripts
- Conda environment (replaced with virtualenv)
1.0.0 - 2019-XX-XX
- Basic VisDrone annotation conversion to PASCAL VOC format
- TensorFlow 1.x implementation
- Faster R-CNN with Inception V3
- Simple conversion script (
convertVis_to_xml.py) - Basic visualization
- Training script for static images
We use Semantic Versioning:
- MAJOR version for incompatible API changes
- MINOR version for new functionality in a backwards compatible manner
- PATCH version for backwards compatible bug fixes
- Added - New features
- Changed - Changes in existing functionality
- Deprecated - Soon-to-be removed features
- Removed - Removed features
- Fixed - Bug fixes
- Security - Security vulnerability fixes