Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add oriented bounding box head for object detection tasks #73

Open
wants to merge 80 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from 75 commits
Commits
Show all changes
80 commits
Select commit Hold shift + click to select a range
7c16e47
Resnet Variants (#9)
DrejcPesjak Feb 20, 2024
8e35f25
MLFlow Upload Fix (#10)
klemen1999 Feb 20, 2024
15bd923
CLI Source Option (#11)
kozlov721 Feb 21, 2024
2797278
Fix Removed Tensor Metadata (#12)
kozlov721 Feb 21, 2024
2c62a08
Forbid Extra Fields (#13)
kozlov721 Feb 22, 2024
0b51fa0
Automatic Inference of attach_index (#14)
kozlov721 Feb 24, 2024
bd67595
Backbone Fix (#15)
kozlov721 Feb 27, 2024
f42192c
Uploading logs to MLFlow (#16)
kozlov721 Feb 28, 2024
e1ab39b
Generate NN archive from training configs (#17)
jkbmrz Mar 20, 2024
b3b4e32
Extend NN Archive Generation Test Coverage (#18)
jkbmrz Mar 25, 2024
351e0c5
Upload All Checkpoints (#19)
kozlov721 Apr 11, 2024
9c4cadb
LuxonisML v0.1.0 (#20)
kozlov721 Apr 11, 2024
f425fdb
SIGTERM Handling (#21)
kozlov721 Apr 15, 2024
ca57063
Task Label Groups Support (#22)
kozlov721 Apr 24, 2024
d1d71f0
Tensor Core Float16 Precision (#24)
kozlov721 May 8, 2024
0830043
Metrics - Fixed Missing Reset (#25)
kozlov721 May 14, 2024
5a31f72
Deterministic Training Support (#23)
klemen1999 May 15, 2024
99b1857
Custom Loaders Support (#27)
kozlov721 May 21, 2024
b6b4688
enums handling (#31)
kozlov721 May 21, 2024
72afb72
GPUStatsMonitor (#29)
kozlov721 May 24, 2024
5893c3e
More Efficient Keypoint Export (#28)
JSabadin May 24, 2024
4110f78
Added active param to augmentations (#32)
klemen1999 May 24, 2024
36a92a6
Fix Archiver Pre-Processing (#34)
kozlov721 May 30, 2024
1d9998b
EfficientRep Variants (#33)
JSabadin May 31, 2024
c2e98b7
Support for LuxonisML - Annotation Refactor (#37)
kozlov721 Jun 6, 2024
abe7d3d
Changed Imports in Config (#38)
kozlov721 Jun 7, 2024
669a023
Multi Input Support (#36)
CaptainTrojan Jun 13, 2024
bb9b01d
Updated Tuner (#26)
klemen1999 Jun 13, 2024
bf69480
CLI Inspect Fix (#41)
kozlov721 Jun 16, 2024
88e8ff5
Tuning - Augmentation Subsets Support (#35)
klemen1999 Jun 19, 2024
248fa48
Support For Export Without Weights (#43)
kozlov721 Jun 21, 2024
4dda255
Openvino version in blobconverter config (#44)
klemen1999 Jun 27, 2024
7c31555
Fix onnx export (#45)
klemen1999 Jul 9, 2024
db24760
Multi-GPU Training Support (#42)
MatejRojec Jul 11, 2024
c70b2a6
Ensure checkpoint is always generated (#46)
klemen1999 Jul 11, 2024
57258ee
New Keypoint Heads and Losses (#40)
JSabadin Jul 11, 2024
ef606b7
Fix Views (#47)
kozlov721 Jul 17, 2024
5e4dd76
Remove `dataset_id` (#48)
kozlov721 Jul 26, 2024
c0305d6
Fix Archive Tests (#50)
kozlov721 Jul 30, 2024
3d5307d
Fixed New `mlflow` Run (#49)
kozlov721 Jul 30, 2024
fc4bf11
Suppressing `mlflow` Exceptions (#52)
kozlov721 Aug 2, 2024
a20de5f
Hotfix for Freezing `polars` (#54)
kozlov721 Aug 3, 2024
611b93c
Full Custom Tasks Support (#53)
kozlov721 Aug 7, 2024
c116982
Miscellaneous Fixes and Features (#55)
kozlov721 Aug 12, 2024
04d008b
Fix: Update NN Archive Generation (#56)
conorsim Aug 15, 2024
4fc6111
Adaptive Detection Loss Speed-Up (#51)
JSabadin Aug 15, 2024
6c7045f
Remove `num_workers` Hotfix (#58)
JSabadin Aug 15, 2024
4af2fab
Fixed Retrieving Labels in AdaptiveDetectionLoss (#59)
kozlov721 Aug 16, 2024
9b17a70
Unified Cores and Cleanup (#57)
kozlov721 Aug 19, 2024
55df6ef
Stricter Config Types (#60)
kozlov721 Aug 19, 2024
0d1a8a1
Semantic Nodes Categorization (#61)
kozlov721 Aug 19, 2024
356e5eb
Support for Multi-Split Views (#62)
kozlov721 Aug 20, 2024
9c8683b
Option to Parse Data in `LuxonisLoaderTorch` (#63)
kozlov721 Aug 21, 2024
3c2b2ae
Fix Archiver (#64)
kozlov721 Aug 22, 2024
54fc144
Generalized Progress Bar (#66)
kozlov721 Aug 27, 2024
19a5d2b
Fail-Proof Checkpoint Usage in Callbacks (#65)
kozlov721 Aug 27, 2024
8870968
LuxonisML 0.3.0 Updates (#68)
kozlov721 Aug 28, 2024
723dff1
[Feat]: add obb head
mak-en Sep 1, 2024
ae8aa1a
Merge branch 'dev' into obb-head
mak-en Sep 1, 2024
5acabfc
Config `pin_memory` Option (#67)
JSabadin Sep 3, 2024
8a99628
[Fix]: change target dimensions in _preprocess_target
mak-en Sep 3, 2024
9bf8f8a
Merge branch 'dev' into obb-head
mak-en Sep 3, 2024
8026126
[Fix]: change obb decoupled block dimensions for DFL
mak-en Sep 4, 2024
7b5adf5
[WiP]: add nms for obb
mak-en Sep 5, 2024
25cb8ef
[WiP]: add a metrics module for obb
mak-en Sep 8, 2024
c911a91
[WiP]: implement an obb visualizer
mak-en Sep 10, 2024
0df07a5
Increased default validation interval (#71)
klemen1999 Sep 13, 2024
b3f9f5d
[Fix] Corrected config valid sequence for predefined models (#72)
klemen1999 Sep 17, 2024
ae9c26d
[WiP]: add obb_loader and minor fixes
mak-en Sep 17, 2024
3318205
Merge branch 'dev' into obb-head
mak-en Sep 17, 2024
4265845
[Fix]: remove debug files
mak-en Sep 17, 2024
7daabdc
Code Cleanup and Improved Tests (#69)
kozlov721 Sep 19, 2024
1297a04
Update CI Badge (#75)
kozlov721 Sep 19, 2024
d2a95e5
Merge branch 'dev' into obb-head
kozlov721 Sep 19, 2024
af77626
formatting
kozlov721 Sep 19, 2024
a037c50
leftover merge discrepancies
kozlov721 Sep 19, 2024
e7ab0c0
[Fix] Updated `EfficientBBoxHead` parser to `YOLO` (#74)
klemen1999 Sep 20, 2024
2449850
DDRNet for Semantic Segmentation (#70)
sokovninn Sep 20, 2024
b918547
Merge branch 'dev' into obb-head
mak-en Sep 22, 2024
6ab3204
[Fix]: fix docstrings
mak-en Sep 22, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .github/CODEOWNERS
Validating CODEOWNERS rules …
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
* @luxonis/ML-Reviewers
32 changes: 32 additions & 0 deletions .github/labeler.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
tests:
- changed-files:
- any-glob-to-any-file: 'tests/*'
- head-branch:
- 'test/*'
- 'tests/*'

DevOps:
- changed-files:
- any-glob-to-any-file: '.github/*'

CLI:
- changed-files:
- any-glob-to-any-file: '**/__main__.py'

release:
- base-branch: 'main'

enhancement:
- head-branch:
- 'feature/*'
- 'feat/*'
- 'enhancement/*'

fix:
- head-branch:
- 'fix/*'
- 'bug/*'
- 'hotfix/*'
- 'issue/*'
- 'bugfix/*'
- 'patch/*'
175 changes: 175 additions & 0 deletions .github/workflows/ci.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,175 @@
name: CI

on:
pull_request:
branches: [ dev, main ]
paths:
- 'luxonis_train/**'
- 'tests/**'
- .github/workflows/ci.yaml
- '!**/*.md'
- '!luxonis_train/__main__.py'

permissions:
pull-requests: write
contents: write
checks: write

jobs:
assigner:
runs-on: ubuntu-latest
steps:
- name: Auto-assign
uses: toshimaru/auto-author-assign@v2.1.1

labeler:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
with:
ref: ${{ github.head_ref }}

- name: Labeler
uses: actions/labeler@v5
with:
configuration-path: .github/labeler.yaml

pre-commit:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
with:
ref: ${{ github.head_ref }}

- name: Run pre-commit
uses: pre-commit/action@v3.0.1

docs:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
with:
ref: ${{ github.head_ref }}

- name: Install dependencies
run: |
sudo apt update
sudo apt install -y pandoc
pip install pydoctor
curl -L "https://raw.githubusercontent.com/luxonis/python-api-analyzer-to-json/main/gen-docs.py" -o "gen-docs.py"

- name: Build docs
run: python gen-docs.py luxonis_train

type-check:
needs:
- pre-commit
- docs
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
with:
ref: ${{ github.head_ref }}

- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: '3.10'
cache: pip

- name: Install dependencies
run: pip install -e .[dev]

- name: Type check
uses: jakebailey/pyright-action@v2
with:
version: '1.1.380'
level: warning
warnings: true
python-version: '3.10'
project: pyproject.toml

tests:
needs:
- type-check
strategy:
fail-fast: false
matrix:
os: [ubuntu-latest, windows-latest]

runs-on: ${{ matrix.os }}

steps:
- name: Checkout
uses: actions/checkout@v4
with:
ref: ${{ github.head_ref }}

- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: '3.10'
cache: pip

- name: Install dependencies
run: pip install -e .[dev]

- name: Authenticate to Google Cloud
id: google-auth
uses: google-github-actions/auth@v2
with:
credentials_json: ${{ secrets.GOOGLE_APPLICATION_CREDENTIALS }}
create_credentials_file: true
export_environment_variables: true
token_format: access_token

- name: Run pytest
uses: pavelzw/pytest-action@v2
env:
LUXONISML_BUCKET: luxonis-test-bucket
PYTORCH_MPS_HIGH_WATERMARK_RATIO: 0.0
with:
emoji: false
custom-arguments: --junit-xml pytest.xml --cov luxonis_train --cov-report xml

- name: Create Test Report
uses: EnricoMi/publish-unit-test-result-action@v2
if: matrix.os == 'ubuntu-latest'
with:
files: pytest.xml

- name: Generate coverage badge
uses: tj-actions/coverage-badge-py@v2
if: matrix.os == 'ubuntu-latest'
with:
output: media/coverage_badge.svg

- name: Generate coverage report
uses: orgoro/coverage@v3.2
if: matrix.os == 'ubuntu-latest'
with:
coverageFile: coverage.xml
token: ${{ secrets.GITHUB_TOKEN }}
thresholdAll: 0.9
thresholdNew: 0.8

- name: Commit coverage badge
if: matrix.os == 'ubuntu-latest'
run: |
git config --global user.name 'GitHub Actions'
git config --global user.email 'actions@github.com'
git diff --quiet media/coverage_badge.svg || {
git add media/coverage_badge.svg
git commit -m "[Automated] Updated coverage badge"
}

- name: Push changes
uses: ad-m/github-push-action@master
if: matrix.os == 'ubuntu-latest'
with:
branch: ${{ github.head_ref }}

26 changes: 0 additions & 26 deletions .github/workflows/docs.yaml

This file was deleted.

13 changes: 0 additions & 13 deletions .github/workflows/pre-commit.yaml

This file was deleted.

115 changes: 0 additions & 115 deletions .github/workflows/tests.yaml

This file was deleted.

7 changes: 7 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -147,3 +147,10 @@ models_venv/*

# vscode settings
.vscode
tests/data
mlartifacts
mlruns
wandb
tests/_data
tests/integration/save-directory
data
Loading
Loading