MCPcopy Index your code
hub / github.com/CVHub520/yolov5_obb

github.com/CVHub520/yolov5_obb @main

Chat with this repo
repository ↗ · DeepWiki ↗ · + Follow
1,473 symbols 3,809 edges 80 files 196 documented · 13%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

Yolov5 for Oriented Object Detection

图片 train_batch0.jpg results.png

The code for the implementation of “Yolov5 + Circular Smooth Label”.

Results and Models

The results on DOTA_subsize1024_gap200_rate1.0 test-dev set are shown in the table below. (password: yolo)

|Model

(download link) |Size

(pixels) | TTA

(multi-scale/

rotate testing) | OBB mAPtest

0.5

DOTAv1.0 | OBB mAPtest

0.5

DOTAv1.5 | OBB mAPtest

0.5

DOTAv2.0 | Speed

CPU b1

(ms)|Speed

2080Ti b1

(ms) |Speed

2080Ti b16

(ms) |params

(M) |FLOPs

@640 (B) | ---- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |yolov5m [baidu/google] |1024 | × |77.3 |73.2 |58.0 |328.2 |16.9 |11.3 |21.6 |50.5
|yolov5s [baidu] |1024 | × |76.8 |- |- |- |15.6 | - |7.5 |17.5
|yolov5n [baidu] |1024 | × |73.3 |- |- |- |15.2 | - |2.0 |5.0

Table Notes (click to expand / 点我看更多)

  • All checkpoints are trained to 300 epochs with COCO pre-trained checkpoints, default settings and hyperparameters.
  • mAPtest dota values are for single-model single-scale on DOTA(1024,1024,200,1.0) dataset.

Reproduce Example: shell python val.py --data 'data/dotav15_poly.yaml' --img 1024 --conf 0.01 --iou 0.4 --task 'test' --batch 16 --save-json --name 'dotav15_test_split' python tools/TestJson2VocClassTxt.py --json_path 'runs/val/dotav15_test_split/best_obb_predictions.json' --save_path 'runs/val/dotav15_test_split/obb_predictions_Txt' python DOTA_devkit/ResultMerge_multi_process.py --scrpath 'runs/val/dotav15_test_split/obb_predictions_Txt' --dstpath 'runs/val/dotav15_test_split/obb_predictions_Txt_Merged' zip the poly format results files and submit it to https://captain-whu.github.io/DOTA/evaluation.html * Speed averaged over DOTAv1.5 val_split_subsize1024_gap200 images using a 2080Ti gpu. NMS + pre-process times is included.

Reproduce by python val.py --data 'data/dotav15_poly.yaml' --img 1024 --task speed --batch 1

Updates

  • [2022/1/7] : Faster and stronger, some bugs fixed, yolov5 base version updated.

Installation

Please refer to install.md for installation and dataset preparation.

Getting Started

This repo is based on yolov5.

And this repo has been rebuilt, Please see GetStart.md for the Oriented Detection latest basic usage.

Acknowledgements

I have used utility functions from other wonderful open-source projects. Espeicially thank the authors of:

More detailed explanation

想要了解相关实现的细节和原理可以看我的知乎文章:
* 自己改建YOLOv5旋转目标的踩坑记录.

有问题反馈

在使用中有任何问题,建议先按照install.md检查环境依赖项,再按照GetStart.md检查使用流程是否正确,善用搜索引擎和github中的issue搜索框,可以极大程度上节省你的时间。

若遇到的是新问题,可以用以下联系方式跟我交流,为了提高沟通效率,请尽可能地提供相关信息以便我复现该问题。

  • 知乎(@略略略
  • 代码问题提issues,其他问题请知乎上联系

关于作者

```javascript Name : "胡凯旋" describe myself:"咸鱼一枚"

Core symbols most depended-on inside this repo

append
called by 163
DOTA_devkit/polyiou.py
info
called by 134
models/yolo.py
SWIG_CheckState
called by 45
DOTA_devkit/polyiou_wrap.cxx
SWIG_Py_Void
called by 43
DOTA_devkit/polyiou_wrap.cxx
colorstr
called by 34
utils/general.py
asptr
called by 31
DOTA_devkit/polyiou_wrap.cxx
copy
called by 27
DOTA_devkit/polyiou.py
SWIG_AsVal_ptrdiff_t
called by 24
DOTA_devkit/polyiou_wrap.cxx

Shape

Function 861
Method 438
Class 169
Enum 4
Route 1

Languages

C++52%
Python48%

Modules by API surface

DOTA_devkit/polyiou_wrap.cxx393 symbols
DOTA_devkit/poly_nms_gpu/poly_nms.cpp167 symbols
DOTA_devkit/poly_nms_gpu/poly_overlaps.cpp159 symbols
models/common.py75 symbols
utils/general.py68 symbols
DOTA_devkit/polyiou.py62 symbols
models/tf.py52 symbols
utils/datasets.py48 symbols
utils/plots.py27 symbols
utils/torch_utils.py23 symbols
utils/loggers/wandb/wandb_utils.py22 symbols
utils/activations.py20 symbols

For agents

$ claude mcp add yolov5_obb \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact