Instruction set for running powerful and efficient YOLOv8-based object detection training pipeline on RB3Gen2, optimized for custom dataset training with advanced configuration options.
https://developer.android.com/tools/releases/platform-tools
https://docs.qualcomm.com/bundle/publicresource/topics/80-70014-253/demo_app.html
- Yolov8 Setup for RB3Gen2
- Quantization and Compiliation
- YOLOv8 model support with multiple architecture options (nano to extra-large)
- Configurable training parameters through YAML configuration
- Support for both CPU and CUDA training
- Advanced training optimizations including:
- Cosine learning rate scheduling
- Mixed precision training
- Rectangular training for memory efficiency
- Mosaic augmentation
- Label smoothing
- Dropout regularization
- Google Account
- RB3Gen2
- Open .ipynb and click the link "Open in Collab"
- Make sure you're using a T4 GPU Runtime
The project uses a config.yaml file for all training parameters. Key configuration sections include:
- Model Configuration: Choose YOLOv8 model size and pretrained options
- Dataset Configuration: Set training/validation data paths and number of classes
- Training Configuration: Fine-tune training parameters like epochs, batch size, etc.
Example configuration:
model:
type: 'yolov8n' # Options: yolov8n, yolov8s, yolov8m, yolov8l, yolov8x
pretrained: true
data:
train: 'data/train'
val: 'data/val'
nc: 1 # Number of classesyolo-rb3gen2-trainer/
├── config.yaml # Training configuration
├── requirements.txt # Project dependencies
├── training_images/ # Training dataset directory
└── base_image.jpg # Base image for reference
- Prepare your dataset in the
training_imagesdirectory - Update the
config.yamlfile with your specific requirements - Open the ipynb in collab and run it then follow the instructions in the Jupyter Notebook
The training pipeline supports various parameters for YOLOv8 that can be configured in config.yaml:
epochs: Number of training epochsbatch_size: Batch size for trainingimgsz: Input image sizedevice: Training device (cuda/cpu)optimizer: Choice of optimizer (SGD/Adam)- And many more advanced options
Contributions are welcome! Please feel free to submit a Pull Request.
This project is licensed under the MIT License - see the LICENSE file for details.
- Ultralytics YOLOv8
- AI Hub Qualcomm
- PyTorch
- OpenCV
- And all other open-source libraries used in this project