Science Score: 67.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
Found 4 DOI reference(s) in README -
✓Academic publication links
Links to: scholar.google, ieee.org -
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (10.5%) to scientific vocabulary
Repository
fork from https://github.com/obss/sahi
Basic Info
- Host: GitHub
- Owner: acai66
- License: mit
- Language: Python
- Default Branch: main
- Size: 60.4 MB
Statistics
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
- Releases: 0
Metadata Files
README.md
SAHI: Slicing Aided Hyper Inference
A lightweight vision library for performing large scale object detection & instance segmentation
Overview
Object detection and instance segmentation are by far the most important applications in Computer Vision. However, the detection of small objects and inference on large images still need to be improved in practical usage. Here comes the SAHI to help developers overcome these real-world problems with many vision utilities.
| Command | Description | |---|---| | predict | perform sliced/standard video/image prediction using any yolov5/mmdet/detectron2/huggingface model | | predict-fiftyone | perform sliced/standard prediction using any yolov5/mmdet/detectron2/huggingface model and explore results in fiftyone app | | coco slice | automatically slice COCO annotation and image files | | coco fiftyone | explore multiple prediction results on your COCO dataset with fiftyone ui ordered by number of misdetections | | coco evaluate | evaluate classwise COCO AP and AR for given predictions and ground truth | | coco analyse | calculate and export many error analysis plots | | coco yolov5 | automatically convert any COCO dataset to yolov5 format |
Quick Start Examples
List of publications that cite SAHI (currently 100+)
List of competition winners that used SAHI
Tutorials
Official paper (ICIP 2022 oral) (NEW)
'Exploring SAHI' Research Article from 'learnopencv.com' (2023) (NEW)
'VIDEO TUTORIAL: Slicing Aided Hyper Inference for Small Object Detection - SAHI' (2023) (NEW)
Installation

Installation details:
- Install `sahi` using pip: ```console pip install sahi ``` - On Windows, `Shapely` needs to be installed via Conda: ```console conda install -c conda-forge shapely ``` - Install your desired version of pytorch and torchvision (cuda 11.3 for detectron2, cuda 11.7 for rest): ```console conda install pytorch=1.10.2 torchvision=0.11.3 cudatoolkit=11.3 -c pytorch ``` ```console conda install pytorch=1.13.1 torchvision=0.14.1 pytorch-cuda=11.7 -c pytorch -c nvidia ``` - Install your desired detection framework (yolov5): ```console pip install yolov5==7.0.13 ``` - Install your desired detection framework (mmdet): ```console pip install mim mim install mmdet==3.0.0 ``` - Install your desired detection framework (detectron2): ```console pip install detectron2 -f https://dl.fbaipublicfiles.com/detectron2/wheels/cu113/torch1.10/index.html ``` - Install your desired detection framework (huggingface): ```console pip install transformers timm ```Framework Agnostic Sliced/Standard Prediction

Find detailed info on sahi predict command at cli.md.
Find detailed info on video inference at video inference tutorial.
Find detailed info on image/dataset slicing utilities at slicing.md.
Error Analysis Plots & Evaluation

Find detailed info at Error Analysis Plots & Evaluation.
Interactive Visualization & Inspection

Find detailed info at Interactive Result Visualization and Inspection.
Other utilities
Find detailed info on COCO utilities (yolov5 conversion, slicing, subsampling, filtering, merging, splitting) at coco.md.
Find detailed info on MOT utilities (ground truth dataset creation, exporting tracker metrics in mot challenge format) at mot.md.
Citation
If you use this package in your work, please cite it as:
@article{akyon2022sahi,
title={Slicing Aided Hyper Inference and Fine-tuning for Small Object Detection},
author={Akyon, Fatih Cagatay and Altinuc, Sinan Onur and Temizel, Alptekin},
journal={2022 IEEE International Conference on Image Processing (ICIP)},
doi={10.1109/ICIP46576.2022.9897990},
pages={966-970},
year={2022}
}
@software{obss2021sahi,
author = {Akyon, Fatih Cagatay and Cengiz, Cemil and Altinuc, Sinan Onur and Cavusoglu, Devrim and Sahin, Kadir and Eryuksel, Ogulcan},
title = {{SAHI: A lightweight vision library for performing large scale object detection and instance segmentation}},
month = nov,
year = 2021,
publisher = {Zenodo},
doi = {10.5281/zenodo.5718950},
url = {https://doi.org/10.5281/zenodo.5718950}
}
Contributing
sahi library currently supports all YOLOv5 models, MMDetection models, Detectron2 models, and HuggingFace object detection models. Moreover, it is easy to add new frameworks.
All you need to do is, create a new .py file under sahi/models/ folder and create a new class in that .py file that implements DetectionModel class. You can take the MMDetection wrapper or YOLOv5 wrapper as a reference.
Before opening a PR:
- Install required development packages:
bash
pip install -e ."[dev]"
- Reformat with black and isort:
bash
python -m scripts.run_code_style format
Contributors
Owner
- Name: acai
- Login: acai66
- Kind: user
- Website: https://hyacm.com
- Repositories: 33
- Profile: https://github.com/acai66
悟已往之不谏,知来者之可追
Citation (CITATION.cff)
cff-version: 1.2.0
message: "If you use this package, please consider citing it."
authors:
- family-names: "Akyon"
given-names: "Fatih Cagatay"
- family-names: "Cengiz"
given-names: "Cemil"
- family-names: "Altinuc"
given-names: "Sinan Onur"
- family-names: "Cavusoglu"
given-names: "Devrim"
- family-names: "Sahin"
given-names: "Kadir"
- family-names: "Eryuksel"
given-names: "Ogulcan"
title: "SAHI: A lightweight vision library for performing large scale object detection and instance segmentation"
preferred-citation:
type: article
title: "Slicing Aided Hyper Inference and Fine-tuning for Small Object Detection"
doi: 10.1109/ICIP46576.2022.9897990
url: https://ieeexplore.ieee.org/document/9897990
journal: 2022 IEEE International Conference on Image Processing (ICIP)
authors:
- family-names: "Akyon"
given-names: "Fatih Cagatay"
- family-names: "Altinuc"
given-names: "Sinan Onur"
- family-names: "Temizel"
given-names: "Alptekin"
year: 2022
start: 966
end: 970
GitHub Events
Total
Last Year
Issues and Pull Requests
Last synced: about 1 year ago
All Time
- Total issues: 0
- Total pull requests: 0
- Average time to close issues: N/A
- Average time to close pull requests: N/A
- Total issue authors: 0
- Total pull request authors: 0
- Average comments per issue: 0
- Average comments per pull request: 0
- Merged pull requests: 0
- Bot issues: 0
- Bot pull requests: 0
Past Year
- Issues: 0
- Pull requests: 0
- Average time to close issues: N/A
- Average time to close pull requests: N/A
- Issue authors: 0
- Pull request authors: 0
- Average comments per issue: 0
- Average comments per pull request: 0
- Merged pull requests: 0
- Bot issues: 0
- Bot pull requests: 0
Top Authors
Issue Authors
Pull Request Authors
Top Labels
Issue Labels
Pull Request Labels
Dependencies
- actions/cache v3 composite
- actions/checkout v3 composite
- actions/setup-python v4 composite
- actions/cache v3 composite
- actions/checkout v3 composite
- actions/setup-python v4 composite
- actions/checkout v3 composite
- actions/setup-python v4 composite
- click *
- fire *
- opencv-python *
- pillow >=8.2.0
- pybboxes ==0.1.6
- pyyaml *
- requests *
- shapely >=1.8.0
- terminaltables *
- tqdm >=4.48.2
