|
Download README.md from WhiddenLab/N-MARINE_baseline_classifiers: direct link, hf CLI and curl.
- Browser
- Download file 4.67 kB
-
https://huggingface.co/WhiddenLab/N-MARINE_baseline_classifiers/resolve/main/README.md
- Command line
-
hf download hf://WhiddenLab/N-MARINE_baseline_classifiers/README.md
-
curl -L -o README.md https://huggingface.co/WhiddenLab/N-MARINE_baseline_classifiers/resolve/main/README.md
4.67 kB
| library_name: pytorch | |
| tags: | |
| - computer-vision | |
| - object-detection | |
| - image-classification | |
| - yolov7 | |
| - marine-biology | |
| pipeline_tag: object-detection | |
| model-index: | |
| - name: YOLOv7 Baselines on N-MARINE | |
| results: | |
| - task: | |
| type: object-detection | |
| name: Object Detection | |
| dataset: | |
| type: other | |
| name: N-MARINE | |
| url: https://open.canada.ca/data/en/dataset/2ae46860-f82a-4127-bb1f-b02e36ef6a70 | |
| split: test | |
| citation: | | |
| Morris, C. J., Ayyagari, K. D., Porter, D., Nguyen, Q. K., Hanlon, J., & Whidden, C. (2025). | |
| *Newfoundland Marine Refuge Fish Classification Dataset (N-Marine)*. | |
| Government of Canada Open Data Portal. | |
| https://open.canada.ca/data/en/dataset/2ae46860-f82a-4127-bb1f-b02e36ef6a70 | |
| metrics: | |
| - name: "mAP@0.5" | |
| type: mAP | |
| value: 0.808 | |
| - name: "mAP@0.5:0.95" | |
| type: mAP | |
| value: 0.494 | |
| - name: precision | |
| type: precision | |
| value: 0.807 | |
| - name: recall | |
| type: recall | |
| value: 0.764 | |
| # YOLOv7 Baselines for N-MARINE | |
| This repo hosts baseline **YOLOv7** models trained on the **N-MARINE** dataset (North Atlantic underwater images with 9 fish species + background). | |
| - **Best baseline (no class weights)** | |
| mAP@0.5 **0.808 ± 0.007** · mAP@[0.5:0.95] **0.494 ± 0.008** · P **0.807 ± 0.036** · R **0.764 ± 0.014** | |
| - **Paper:** TODO – add link when available | |
| > Dataset: [N-MARINE](https://open.canada.ca/data/en/dataset/2ae46860-f82a-4127-bb1f-b02e36ef6a70) | |
| > Supplementary + scripts: https://github.com/Pentaerythrittetranitrat/N-MARINE_dataset_supplementary | |
| ## Model list | |
| The released models follow this directory structure, where each `datasetX` (X = 1–5) corresponds to one of the five cross-validation splits: | |
| Each `datasetX` directory contains two trained models: | |
| - `classweights/best.pt` — trained with inverse-frequency class weights. | |
| - `no_classweights/best.pt` — trained without class weights (baseline, recommended). | |
| The **dataset splits** used for training can be found in the supplementary repository: | |
| [https://github.com/Pentaerythrittetranitrat/N-MARINE_dataset_supplementary](https://github.com/Pentaerythrittetranitrat/N-MARINE_dataset_supplementary) | |
| > **Note:** The models under `dataset5` correspond to the most balanced split across classes. | |
| Each model outputs **9 classes**. The **class order (index → class)** for all models is: | |
| | Index | Class name | | |
| |-------|----------------------| | |
| | 0 | Atlantic Cod | | |
| | 1 | Roughhead Grenadier | | |
| | 2 | Atlantic Halibut | | |
| | 3 | Redfish Mentella | | |
| | 4 | Thorny Skate | | |
| | 5 | Striped Wolffish | | |
| | 6 | Spinytail Skate | | |
| | 7 | Whelk | | |
| | 8 | Northern Wolffish | | |
| ## Intended use | |
| - Benchmarking object detection on North Atlantic underwater imagery | |
| - Studying class imbalance, visibility limits (turbidity/occlusion), and domain shifts | |
| - Generating crops for downstream **species classification** tasks | |
| ## Training data and splits | |
| - **Data:** N-MARINE (23,936 images, 9 species + background) | |
| - **Split protocol:** fixed **15% video-level** test; 5-fold CV within train videos | |
| - **Pretraining:** COCO weights (YOLOv7) | |
| - **Image size:** 640×640 letterboxed | |
| - **Epochs:** 50 | |
| - **Batch size:** 32 | |
| - **Other:** default YOLOv7 augmentations & hyperparams unless noted | |
| ### Class weights variant | |
| Inverse-frequency class weights slightly improved **Spinytail Skate** but reduced aggregate mAP. | |
| ### Quick inference | |
| > These weights are YOLOv7-format PyTorch checkpoints. Use the YOLOv7 repository or a compatible runner. | |
| ## CLI (YOLOv7) | |
| ```bash | |
| # 1) Clone YOLOv7 (example URL; use the official repo you trained with) | |
| git clone https://github.com/WongKinYiu/yolov7.git | |
| cd yolov7 | |
| pip install -r requirements.txt | |
| # 2) Run inference | |
| python detect.py \ | |
| --weights /path/to/N-MARINE_baseline_classifiers/n-marine_weights/dataset5/no_classweights/best.pt \ | |
| --source /path/to/images_or_video \ | |
| --img-size 640 \ | |
| --conf-thres 0.25 \ | |
| --iou-thres 0.65 \ | |
| --save-txt --save-conf | |
| ``` | |
| ### Citation | |
| If you use the dataset, please cite: | |
| Dataset citation (plain text): | |
| Morris, C. J., Ayyagari, K. D., Porter, D., Nguyen, Q. K., Hanlon, J., & Whidden, C. (2025). | |
| Newfoundland Marine Refuge Fish Classification Dataset (N-Marine). | |
| Government of Canada Open Data Portal. | |
| https://open.canada.ca/data/en/dataset/2ae46860-f82a-4127-bb1f-b02e36ef6a70 | |
| If you use the models, please cite: | |
| Model citation (plain text): | |
| TODO: Add |