ood_in_object_detection
https://github.com/aitor-martinez-seras/ood_in_object_detection
Science Score: 44.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
✓CITATION.cff file
Found CITATION.cff file -
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
○DOI references
-
○Academic publication links
-
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (10.8%) to scientific vocabulary
Repository
Basic Info
- Host: GitHub
- Owner: aitor-martinez-seras
- License: agpl-3.0
- Language: Python
- Default Branch: main
- Size: 27.6 MB
Statistics
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
- Releases: 0
Metadata Files
README.md
Introduction
This is the code for the paper On the Inherent Robustness of One-Stage Object Detection against Out-of-Distribution Data.
The code is based on an early version of the Ultralytics YOLOv8 repository. The more updated version of the libray can be found here.
The version of ultralytics is 8.3.127.
Instalation of the package
To install the package:
- Install torch>=1.8 and torchvision>=0.8.1, with CUDA support preferably
pip install -r requirements.txt- If you want to use CLI commands, use
pip install -e .
Basic structure
bash
├── datasets
│ └──coco
└── < source_code_folder >
├── datasets_utils
├── data_utils.py
├── examples
├── ultralytics
├── ultralytics.egg-info
├── venv-yolo
├── visualization_utils.py
...
└── yolov8n.pt
Datasets must be outside the source code folder
Warnings
The code has been only tested on Linux and some of the code may not work, as some parts are not OS agnostic due to the usage of the / for splitting paths.
Download datasets
OWOD (Open World Object Detection)
Follow instructions in datasets_utils/owod/instructions.md.
COCO OOD and COCO Mixed
Follow instructions in datasetsutils/cocoood/instructions.md.
Usage
The model obtaining the results of the paper can be downloaded from this OneDrive link.
Replicate results
1) Train a model using the replicate/train.sh. The arguments are the same to the ones used for the paper.
2) Run the bash scripts inside the replicate/benchmarks.sh to obtain the results.
3) To obtain the figures of the paper, run the process_results.ipynb. The code expects the following structure:
```bash
< source_code_folder >
├── results
├── fmap_method
│ └── < .csv files from the vanilla FMap method >
├── fmap_method_SDR
│ └── < .csv files from the SDR FMap method >
├── fmap_method_EUL
│ └── < .csv files from the EUL FMap method >
├── logits_methods
│ └── < .csv files from the post-hoc or logits methods >
└── fusion_methods
└── < .csv files from the fusion methods >
```
Using the OOD methods
Examples of usage are provided in the scripts/ood_evaluation.sh file.
Training a YOLO model
Examples are provided scripts/train_owod.sh file.
Owner
- Name: Aitor Martínez Seras
- Login: aitor-martinez-seras
- Kind: user
- Location: Bilbao
- Company: University of Deusto
- Repositories: 2
- Profile: https://github.com/aitor-martinez-seras
PhD candidate at TECNALIA Research & Innovation
Citation (CITATION.cff)
cff-version: 1.2.0
preferred-citation:
type: software
message: If you use this software, please cite it as below.
authors:
- family-names: Jocher
given-names: Glenn
orcid: "https://orcid.org/0000-0001-5950-6979"
- family-names: Chaurasia
given-names: Ayush
orcid: "https://orcid.org/0000-0002-7603-6750"
- family-names: Qiu
given-names: Jing
orcid: "https://orcid.org/0000-0003-3783-7069"
title: "YOLO by Ultralytics"
version: 8.0.0
# doi: 10.5281/zenodo.3908559 # TODO
date-released: 2023-1-10
license: AGPL-3.0
url: "https://github.com/ultralytics/ultralytics"
GitHub Events
Total
- Push event: 3
- Create event: 1
Last Year
- Push event: 3
- Create event: 1