📦 BlyncsySFT
Supervised Fine-Tuning for Faster R-CNN with Focal Loss and Custom Augmentations
An extensible training and evaluation framework for object detection on COCO-format datasets.
🚀 Features
- 🧠 Fine-tuning with Focal Loss for class imbalance
- 🎯 Customizable anchor boxes and backbone networks
- 🧪 Augmentation pipeline (MixUp, transforms, etc.)
- 📊 Validation pipeline with mAP evaluation (COCO)
- 🛠 CLI interface for training automation
- 🗂 Compatible with COCO-style datasets
📁 Installation
pip install blyncsysft
or
git clone https://github.com/your-username/BlyncsySFT.git
cd BlyncsySFT
pip install .
🧩 Quick Start
-
Prepare your dataset and project structure: Ensure your dataset is in COCO format. The directory structure should look like this:
your_project/ ├── images/ │ ├── train/ │ └── validation/ ├── annotations/ │ ├── train.json │ └── validation.json └── .env
-
Create a
.envfile: This file should contain the following variables:TRAINING_RUN=test01 EPOCHS=20 BATCH_SIZE=4 WORKERS=2 NUM_CLASSES=2 BACKBONE=resnet50 SAVE_EVERY=5 TRAIN_IMAGE_PATH=images/train TRAIN_ANNOT_PATH=annotations/train.json VAL_IMAGE_PATH=images/validation VAL_ANNOT_PATH=annotations/validation.json
🧪 Usage
Run training directly from the command line:
python -m BlyncsySFT.cli train /path/to/your_project/ --verbose
This command:
- Valdiates your .env file
- Loads the dataset
- Builds and trains the model
- Logs the training process
- Saves the model checkpoints
Or use the Python API:
from BlyncsySFT.pipeline import run_auto_training_pipeline
from BlyncsySFT.config import load_and_validate_env
# Step 1: Load config
cfg = load_and_validate_env(env_file="/path/to/your_project/.env")
# Step 2: Define project directory
project_dir = "/path/to/your_project"
# Step 3: Run the training pipeline
run_auto_training_pipeline(project_dir, cfg, verbose=True)
📄 License
MIT License. See the LICENSE file for details.
🤝 Contributing
We welcome contributions! Please follow these steps:
- Fork the repo and create your branch (
git checkout -b feature/YourFeature). - Make your changes, add tests, and commit them (
git commit -m 'Add some feature'). - Submit a pull request and describe your changes.
👥 Contributors
- Sonny Jones – sonny.jones@utah.edu
- Tony Le – anthony.le@utah.edu
- Rohit Raj – rohitrraj284@gmail.com
Metadata
Release files for BlyncsySFT 0.1.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| blyncsysft-0.1.2.tar.gz | 33.7 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| blyncsysft-0.1.2-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 64.0 kB
Release files / blyncsysft-0.1.2.tar.gz
| Download URL | blyncsysft-0.1.2.tar.gz |
|---|---|
| Size | 33.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
a224ecc2f9bfd93d7d3e98ee70c2c1633d304ddd5216a7a8328f380d55dd7f41
|
|
BLAKE2b-256 checksum How to use checksums |
3448baeff4663126ab450d58c760bf3bbdce2bbc82b19de6a05433ec36fec0e8
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.10.6
|
Release files / blyncsysft-0.1.2-py3-none-any.whl
| Download URL | blyncsysft-0.1.2-py3-none-any.whl |
|---|---|
| Size | 30.3 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
0eb29cbe381dd9d282f180f233f537ead6f6cf8f7287ad4d2b371b2efffffef9
|
|
BLAKE2b-256 checksum How to use checksums |
4c1ca39b9137049f541c3be6f0d34ed34de65515ec92ef6cdf920b550f0accf4
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.10.6
|