mmdetection水下海鮮目標(biāo)檢測(cè)

向AI轉(zhuǎn)型的程序員都關(guān)注了這個(gè)號(hào)??????
人工智能大數(shù)據(jù)與深度學(xué)習(xí) 公眾號(hào):datayx
任務(wù):在真實(shí)海底圖片數(shù)據(jù)中檢測(cè)出不同海產(chǎn)品(海參、海膽、扇貝、海星)的位置
數(shù)據(jù)描述
訓(xùn)練集:提供 7600 幅訓(xùn)練圖像(含人工標(biāo)注真值數(shù)據(jù)),數(shù)據(jù)集結(jié)構(gòu)如下,

其中 train/image 文件夾中包含所有訓(xùn)練數(shù)據(jù),這些圖片之間不存在幀間連續(xù)性。圖片路徑示例如下:train/image/000001.jpg,其對(duì)應(yīng)的目標(biāo)檢測(cè)標(biāo)注真值位于路徑 train/box/000001.xml 文件中,該文件包含了對(duì)應(yīng)圖像中所有物體的類別以及目標(biāo)框參數(shù)(位置和尺寸)。需檢測(cè)的目標(biāo)類別包括海參“holothurian”,海膽“echinus”,扇貝“scallop”和海星“starfish”四類。訓(xùn)練數(shù)據(jù)真值中可能存在水草“waterweeds”這一類別,請(qǐng)忽略這一類。
關(guān)于標(biāo)注:
訓(xùn)練圖片中存在一定的標(biāo)注噪聲,如有需要選手可自行清洗數(shù)據(jù)。其中,前綴 c 為基本干凈標(biāo)注數(shù)據(jù),前綴 u 為含噪聲標(biāo)注數(shù)據(jù)。
關(guān)于扇貝的標(biāo)注歧義性較大,測(cè)試評(píng)估時(shí)基本以“前綴 c 中的扇貝標(biāo)注標(biāo)準(zhǔn)”為準(zhǔn)。

代碼 獲取方式:
分享本文到朋友圈
關(guān)注微信公眾號(hào) datayx 然后回復(fù) 海鮮 即可獲取。
AI項(xiàng)目體驗(yàn)地址 https://loveai.tech
店鋪地址:
https://shop585613237.taobao.com
方案簡(jiǎn)述
Baseline
cascade_rcnn_x101_64x4d_fpn_dcn_e15
注:不是所有數(shù)據(jù)
FPN
ResNeXt101-64x4d
Backbone:
Neck:
DCN
Global context(GC)
MS [(4096, 600), (4096, 1000)]
RandomRotate90°
15epochs + step:[11, 13]
A榜:0.55040585
基于1訓(xùn)練好的模型對(duì)訓(xùn)練數(shù)據(jù)進(jìn)行清洗(tools/data_process/data_clean.py)
修正錯(cuò)誤標(biāo)注
先過濾掉confidence<0.1的predict boxes, 然后同GT boxes求iou
如果predict box同GT的最大iou大于0.6,但類別不一致, 那么就修正該gt box的類別
如果某張圖片上所有預(yù)測(cè)框的confidence沒有一個(gè)是大于0.9, 那么去掉該圖片(即看不清的圖片)
基于2修正后的數(shù)據(jù)進(jìn)行訓(xùn)練 模型采用cascade_rcnn_r50_rfp_sac
注:所有數(shù)據(jù)
ResNet50
Backbone:
Neck: RFP-SAC
GC + MS + RandomRotate90°
cascade_iou調(diào)整為:(0.55, 0.65, 0.75)
A榜:0.56339531
基于3訓(xùn)練好的模型進(jìn)一步清洗數(shù)據(jù)
注:所有數(shù)據(jù)
模型同3:
A榜:0.56945031
基于4
注:所有數(shù)據(jù)
SWA(12epochs)(https://arxiv.org/abs/2012.12645)
A榜:0.57286428
項(xiàng)目運(yùn)行的資源環(huán)境
操作系統(tǒng):Ubuntu 18.04.2
GPU:1塊2080Ti
Python:Python 3.7.7
NVIDIA依賴:
NVCC: Cuda compilation tools, release 10.1, V10.1.243
CuDNN 7.6.5
深度學(xué)習(xí)框架:
PyTorch: 1.8.1
TorchVision: 0.9.1
OpenCV: 4.5.1
MMCV: 1.2.4+cu101
MMCV Compiler: GCC 7.5
MMCV CUDA Compiler: 10.1
MMDetection: 2.10.0+0489bcb
環(huán)境安裝及編譯
mmdetection安裝
參考mmdetection
預(yù)訓(xùn)練模型下載
下載mmdetection官方開源的htc的resnext 64×4d 預(yù)訓(xùn)練模型
下載mmdetection官方開源的htc的DetectoRS | HTC + ResNet-50 預(yù)訓(xùn)練模型
模型訓(xùn)練與預(yù)測(cè)
訓(xùn)練
python tools/train.py configs/swa_cascade_rcnn_r50_rfp_sac_iou_alldata-v3_e15.py --no-validate
python tools/train.py configs/cascade_rcnn_r50_rfp_sac_iou_e15_alldata_v3.py --no-validate
運(yùn)行:
r50_rfp_sac (htc pretrained):
SWA -- 訓(xùn)練12輪
預(yù)測(cè)
python tools/test.py configs/swa_cascade_rcnn_r50_rfp_sac_iou_alldata-v3_e15.py ./swa/swa_cascade_rcnn_r50_rfp_sac_iou_alldata-v3_e15/swa_model_12.pth --format-only --cfg-options "jsonfile_prefix=./submit"
注:采用fp16加速(配置文件添加fp16 = dict(loss_scale=512.0))
運(yùn)行:
預(yù)測(cè)結(jié)果文件名submit.bbox.json
轉(zhuǎn)化mmd預(yù)測(cè)結(jié)果為提交csv格式文件:
python tools/post_process/json2submit.py --test_json submit.bbox.json --submit_file submit.csv
最終符合官方要求格式的提交文件 submit.csv 位于 submit目錄下
機(jī)器學(xué)習(xí)算法AI大數(shù)據(jù)技術(shù)
搜索公眾號(hào)添加: datanlp
長(zhǎng)按圖片,識(shí)別二維碼
閱讀過本文的人還看了以下文章:
TensorFlow 2.0深度學(xué)習(xí)案例實(shí)戰(zhàn)
基于40萬表格數(shù)據(jù)集TableBank,用MaskRCNN做表格檢測(cè)
《基于深度學(xué)習(xí)的自然語(yǔ)言處理》中/英PDF
Deep Learning 中文版初版-周志華團(tuán)隊(duì)
【全套視頻課】最全的目標(biāo)檢測(cè)算法系列講解,通俗易懂!
《美團(tuán)機(jī)器學(xué)習(xí)實(shí)踐》_美團(tuán)算法團(tuán)隊(duì).pdf
《深度學(xué)習(xí)入門:基于Python的理論與實(shí)現(xiàn)》高清中文PDF+源碼
python就業(yè)班學(xué)習(xí)視頻,從入門到實(shí)戰(zhàn)項(xiàng)目
2019最新《PyTorch自然語(yǔ)言處理》英、中文版PDF+源碼
《21個(gè)項(xiàng)目玩轉(zhuǎn)深度學(xué)習(xí):基于TensorFlow的實(shí)踐詳解》完整版PDF+附書代碼
《深度學(xué)習(xí)之pytorch》pdf+附書源碼
PyTorch深度學(xué)習(xí)快速實(shí)戰(zhàn)入門《pytorch-handbook》
【下載】豆瓣評(píng)分8.1,《機(jī)器學(xué)習(xí)實(shí)戰(zhàn):基于Scikit-Learn和TensorFlow》
《Python數(shù)據(jù)分析與挖掘?qū)崙?zhàn)》PDF+完整源碼
汽車行業(yè)完整知識(shí)圖譜項(xiàng)目實(shí)戰(zhàn)視頻(全23課)
李沐大神開源《動(dòng)手學(xué)深度學(xué)習(xí)》,加州伯克利深度學(xué)習(xí)(2019春)教材
筆記、代碼清晰易懂!李航《統(tǒng)計(jì)學(xué)習(xí)方法》最新資源全套!
《神經(jīng)網(wǎng)絡(luò)與深度學(xué)習(xí)》最新2018版中英PDF+源碼
將機(jī)器學(xué)習(xí)模型部署為REST API
FashionAI服裝屬性標(biāo)簽圖像識(shí)別Top1-5方案分享
重要開源!CNN-RNN-CTC 實(shí)現(xiàn)手寫漢字識(shí)別
同樣是機(jī)器學(xué)習(xí)算法工程師,你的面試為什么過不了?
前海征信大數(shù)據(jù)算法:風(fēng)險(xiǎn)概率預(yù)測(cè)
【Keras】完整實(shí)現(xiàn)‘交通標(biāo)志’分類、‘票據(jù)’分類兩個(gè)項(xiàng)目,讓你掌握深度學(xué)習(xí)圖像分類
VGG16遷移學(xué)習(xí),實(shí)現(xiàn)醫(yī)學(xué)圖像識(shí)別分類工程項(xiàng)目
特征工程(二) :文本數(shù)據(jù)的展開、過濾和分塊
如何利用全新的決策樹集成級(jí)聯(lián)結(jié)構(gòu)gcForest做特征工程并打分?
Machine Learning Yearning 中文翻譯稿
全球AI挑戰(zhàn)-場(chǎng)景分類的比賽源碼(多模型融合)
斯坦福CS230官方指南:CNN、RNN及使用技巧速查(打印收藏)
python+flask搭建CNN在線識(shí)別手寫中文網(wǎng)站
中科院Kaggle全球文本匹配競(jìng)賽華人第1名團(tuán)隊(duì)-深度學(xué)習(xí)與特征工程
不斷更新資源
深度學(xué)習(xí)、機(jī)器學(xué)習(xí)、數(shù)據(jù)分析、python
搜索公眾號(hào)添加: datayx
