# underwater-object-detection-mmdetection
## [和鲸社区Kesci 水下目标检测算法赛(光学图像赛项)](https://www.kesci.com/home/competition/5e535a612537a0002ca864ac)
## 答辩PPT
coming soon or by contacting with me
## 整体思路
1. 使用两阶段检测框架,保证精度要求;
2. 使用FPN,增强小目标的检测效果;
3. 使用Mixup、旋转等无损的数据增强技术,减轻网络过拟合,并提升模型泛化能力;
![avatar](pic/mixup.PNG)
4. 使用多尺度训练与预测,适应图片分辨率差异,可以让参与训练的目标大小分布更加均衡,使模型对目标大小具有一定的鲁棒性;
5. 参考[ResNet](https://arxiv.org/abs/1512.03385)论文,使用Global Context ROI为每个候选框添加上下文信息,充分利用数据分布特点,提升了检测精度。
## 消融实验
<table>
<tr>
<th>Backbone</th>
<th>DCN</th>
<th>MS</th>
<th><a href="https://github.com/sankin97/Underwater_detection/blob/master/mmdet/datasets/pipelines/transforms.py">Mixup</a></th>
<th>RandomRotate90°</th>
<th><a href="https://github.com/cizhenshi/TianchiGuangdong2019_2th/blob/master/src/mmdet/models/roi_extractors/single_level.py">GC</a></th>
<th>mAP</th>
</tr>
<tr>
<th>ResNet50-FPN</th>
<th></th>
<th></th>
<th></th>
<th></th>
<th></th>
<th>baseline</th>
</tr>
<tr>
<th>ResNeXt101-FPN</th>
<th>✓</th>
<th>✓</th>
<th></th>
<th></th>
<th></th>
<th>baseline+3.35%</th>
</tr>
<tr>
<th>ResNeXt101-FPN</th>
<th>✓</th>
<th>✓</th>
<th>✓</th>
<th></th>
<th></th>
<th>baseline+4.25%</th>
</tr>
<tr>
<th>ResNeXt101-FPN</th>
<th>✓</th>
<th>✓</th>
<th></th>
<th></th>
<th>✓</th>
<th>baseline+4.36%</th>
</tr>
<tr>
<th>ResNeXt101-FPN</th>
<th>✓</th>
<th>✓</th>
<th></th>
<th>✓</th>
<th>✓</th>
<th>baseline+4.69%</th>
</tr>
</table>
## 项目运行的资源环境
+ 操作系统:Ubuntu 18.04.2
+ GPU:2080Ti * 4
+ Python:Python 3.6.8
+ NVIDIA依赖:
- CUDA:V10.0.130
- CUDNN:7.4.1
- NVIDIA驱动版本:410.73
+ 深度学习框架:PyTorch1.1.0
## 环境安装及编译
1. conda create -n 自拟环境名称 python=3.7 -y
2. conda install pytorch=1.1.0 torchvision=0.3.0 cudatoolkit=10.0
3. pip install cython && pip install -r requirements.txt
4. conda install pillow=6.1
5. pip install tqdm
6. pip install pytest-runner -i http://pypi.douban.com/simple/ --trusted-host pypi.douban.com
7. python setup.py develop
## 预训练模型下载
- 下载mmdetection官方开源的htc的[resnext 64×4d 预训练模型](https://s3.ap-northeast-2.amazonaws.com/open-mmlab/mmdetection/models/htc/htc_dconv_c3-c5_mstrain_400_1400_x101_64x4d_fpn_20e_20190408-0e50669c.pth)
- 百度网盘下载地址:链接:https://pan.baidu.com/s/1r3uQVpOLKfjF8vfLEYPMgg 密码:811m
## 模型训练与预测
- **训练**
1. 运行:
x101_64x4d (htc pretrained):
chmod +x tools/dist_train.sh
./tools/dist_train.sh configs/underwater/cas_x101/cascade_rcnn_x101_64x4d_fpn_dcn_1x.py 4
(上面的4是我的gpu数量,请自行修改)
2. 训练过程文件及最终权重文件均保存在config文件中指定的work_dirs目录中
- **预测**
1. 运行:
x101_64x4d (htc pretrained):
chmod +x tools/dist_test.sh
./tools/dist_test.sh configs/underwater/cas_x101/cascade_rcnn_x101_64x4d_fpn_dcn_1x.py work_dirs/cas_x101_64x4d_fpn_htc_dconv_1x/latest.pth 4 --json_out results/cas_x101.json
(上面的4是我的gpu数量,请自行修改)
2. 预测结果文件会保存在 /results 目录下
3. 转化mmd预测结果为提交csv格式文件:
python tools/post_process/json2submit.py --test_json cas_x101.bbox.json --submit_file cas_x101.csv
最终符合官方要求格式的提交文件 cas_x101.csv 位于 submit目录下
## Reference
- [BaselineBy郑烨](https://github.com/zhengye1995/underwater-object-detection)
- [2019广东工业智造创新大赛【赛场一】布匹疵点智能识别rank2解决方案](https://github.com/cizhenshi/TianchiGuangdong2019_2th)
## Contact
author: hk
qq:3025531252
email: 3025531252@qq.com
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
收起资源包目录
和鲸社区Kesci__水下目标检测算法赛_光学图像赛项_三等奖_单模方案_ (219个子文件)
deform_conv_cuda.cpp 29KB
deform_pool_cuda.cpp 4KB
roi_align_cuda.cpp 3KB
roi_pool_cuda.cpp 3KB
masked_conv2d_cuda.cpp 3KB
nms_cpu.cpp 2KB
sigmoid_focal_loss.cpp 2KB
compiling_info.cpp 1KB
nms_cuda.cpp 575B
deform_conv_cuda_kernel.cu 42KB
deform_pool_cuda_kernel.cu 16KB
roi_align_kernel.cu 11KB
roi_pool_kernel.cu 7KB
sigmoid_focal_loss_cuda.cu 6KB
nms_kernel.cu 5KB
masked_conv2d_kernel.cu 5KB
README.md 5KB
mixup.PNG 329KB
transforms.py 34KB
reppoints_head.py 27KB
guided_anchor_head.py 25KB
htc.py 22KB
cascade_rcnn.py 21KB
hrnet.py 19KB
mean_ap.py 19KB
resnet.py 18KB
test_robustness.py 16KB
fcos_head.py 16KB
fovea_head.py 16KB
grid_head.py 15KB
generalized_attention.py 15KB
flops_counter.py 14KB
anchor_head.py 14KB
two_stage.py 13KB
senet.py 13KB
deform_conv.py 12KB
guided_anchor_target.py 12KB
train.py 11KB
bbox_head.py 11KB
test_mixins.py 11KB
test.py 10KB
deform_pool.py 10KB
grid_rcnn.py 9KB
mask_scoring_rcnn.py 8KB
max_iou_assigner.py 8KB
cascade_rcnn_x101_64x4d_fpn_dcn_1x.py 8KB
robustness_eval.py 8KB
resnext.py 8KB
coco_utils.py 8KB
ssd_head.py 8KB
transforms.py 8KB
maskiou_head.py 7KB
double_head_rcnn.py 7KB
free_anchor_retina_head.py 7KB
anchor_target.py 7KB
fcn_mask_head.py 7KB
inference.py 7KB
setup.py 7KB
base.py 7KB
convfc_bbox_head.py 7KB
coco_error_analysis.py 7KB
iou_loss.py 7KB
nas_fpn.py 6KB
point_target.py 6KB
ghm_loss.py 6KB
analyze_logs.py 6KB
decorators.py 6KB
approx_max_iou_assigner.py 6KB
formating.py 6KB
recall.py 6KB
iou_balanced_neg_sampler.py 6KB
sampler.py 6KB
conv_module.py 6KB
point_assigner.py 6KB
eval_hooks.py 5KB
class_names.py 5KB
ssd_vgg.py 5KB
fpn.py 5KB
double_bbox_head.py 5KB
custom.py 5KB
ga_rpn_head.py 5KB
loading.py 5KB
pascal_voc.py 5KB
hooks.py 4KB
coco.py 4KB
single_level.py 4KB
contextmanagers.py 4KB
train.py 4KB
rpn_head.py 4KB
retina_sepbn_head.py 4KB
detectron2pytorch.py 4KB
context_block.py 4KB
ga_retina_head.py 4KB
non_local.py 4KB
nms_wrapper.py 4KB
retina_head.py 4KB
bfp.py 4KB
anchor_generator.py 4KB
merge_augs.py 3KB
assign_result.py 3KB
共 219 条
- 1
- 2
- 3
资源评论
普通网友
- 粉丝: 0
- 资源: 510
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- electron-v32.2.5-win32-x64资源包
- 日历组件使用········
- java班级管理系统(java毕业设计源码).zip
- bochb_assist_2.0.0.apk
- java无线点餐系统源码数据库 MySQL源码类型 WebForm
- 简历模板嵌入式常用知识&面试题库200M
- 常用基础元件的PCB封装库SchLib/IntLib通用原理图库接插件-脚距3.96
- 常用基础元件的PCB封装库SchLib/IntLib通用原理图库STM32 F2系列单片机
- 常用基础元件的PCB封装库SchLib/IntLib通用原理图库PIC系列单片机
- java通用后台管理系统源码数据库 MySQL源码类型 WebForm
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功