Comments (6)
这个有一个治标不治本的方法:
可以在检测时,修改detect.py中的agnostic-nms,这个参数主要用于让NMS区分不同的类别,每个类别的框只跟同一个类别的框进行IoU计算。
既然会出现同一个物体检测出两种种类的框的情况,那就让NMS对所有的框一视同仁就好了
from yolov5_obb.
嗯,yolov3开始采用sigmoid,而不是softmax,就是可能在1个特征点位置允许有多类别的目标。通过你说的这个可以解决重叠框的问题,这个参数我之前没有注意过,但是知道这个算法;是让1个框与所有类别的框进行nms;但是置信度高的不一定就是对的,这就很尴尬了。实在不行我就把small-large合并了。
from yolov5_obb.
@hukaixuan19970627
咨询你1个问题,你在训练时只采用了mosaic,有没有采用旋转增强操作呢,我看你注释掉了。我打算采用UCAS_AOD里面的车辆进行训练,采用DOTA裁剪不同尺度的车辆,数据量太大以及车辆尺寸不如AOD的大。
from yolov5_obb.
旋转有这个代码,但是我没用,主要是旋转之后部分目标信息会丢失,为了防止目标信息丢失还得resize一下图片大小,但是resize图片我又怕把本来细节信息就不多的小目标再减少一部分像素,所以没加,准备之后闲下来了看看别人的开源代码是怎么做的;
DOTA_devkit_YOLO的Draw_DOTA_YOLO.py里面我把涉及到角度增强的代码都可视化了出来:
from yolov5_obb.
嗯,我看你的知乎看到了。目前还有个问题,你的处理代码对于无对象的裁剪块 是删除了,但是yolov5自身是支持无对象的,不知道你的代码是否支持呢?加入负样本数据 其实还是有用的,打比赛时 加入这种负样本可以提高精度。我们做项目时也加入这些负样本的,不知道对你有没有帮助。
from yolov5_obb.
代码肯定支持无对象,毕竟我改动的地方也就是加了个角度分类+CSL,我那个DOTA_devkit_YOLO的逻辑是这样的,分割后进行YOLO格式转换,格式转换过程中删除出错的目标(比如θ不符合设定范围,longside shortside大于1或者等于0),这些图片是包含了目标的,但是这个目标转换后的数据出了问题,为了防止有问题的数据进入网络训练我就把目标删了。如果图片中有效目标为0,那就删了这个图片,我当时是基于这个考虑:这张图没有有效目标,但也不能算是纯负样本,因为里面其实有目标,只不过转换格式的过程中出了问题,把这种不纯粹的负样本送入网络训练可能会影响检测效果。
但是你说的也有道理,后期改动的话我准备让网络也能训练longside shorside大于1的目标,尝试加点尽量纯粹的负样本进去。
from yolov5_obb.
Related Issues (20)
- 关于poly2rbox中转长边表示法的问题 HOT 4
- Problems with using CSL(circular smooth label) HOT 3
- Starting commit from original yolov5 repository
- 旋转框标注方式和后续旋转检测优化 HOT 2
- 图像损坏 HOT 3
- Train fitness chooses incorrect checkpoint as best
- ValueError: not enough values to unpack (expected 3, got 0)
- yolov5_obb_models_resources
- ModuleNotFoundError: No module named 'DOTA_devkit' HOT 1
- 为什么验证时速度很慢呀
- 运行pip install -v -e .时出现了以下错误 HOT 1
- 已按照解决办法替换了文件,执行python setup.py develop还是报错,请问各位大佬该怎么解决 HOT 2
- How to submit to DOTA official website HOT 1
- fatal error C1189 with nms_rotated/setuo.py HOT 1
- box损失问题 HOT 7
- 如何保存预测结果为jason格式???????
- ImportError: cannot import name 'nms_rotated_ext' from partially initialized module 'utils.nms_rotated' (most likely due to a circular import) HOT 3
- INTERNAL ASSERT FAILED got size:5 HOT 3
- error: command C:\\Program Files\\NVIDIA GPU Computing Toolkit\\CUDA\\v11.3\\bin\\nvcc.exe failed with exit code 1
- 出错 HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from yolov5_obb.