opencv 阈值分割_CVPR2019实例分割Mask Scoring RCNN
點擊上方↑↑↑“OpenCV學堂”關注我
歡迎留言,參與互動討論,發表自己的看法
作者博客: https://blog.csdn.net/linolzhang
今年的Oral,在coco數據集表現超過了Mask RCNN,來自地平線的華科實習生。?
提出背景
Mask RCNN 提出以來,一直是作為經典霸屏,但這里面一直存在一個嚴重的問題,那就是其score機制:由于沿用了 Faster RCNN 的 class和box,對應class是類別score,并不能代表mask的好壞,看下圖:
算法框架
問題提出來,很簡單的想法就是,我能否加一個分支預測mask部分的score呢?比如用IoU來度量。
思路很簡單,在Mask head的基礎上,加了一個分支,將ROI對齊后的特征與得到的Mask做了一個concat,然后通過卷積層+全連接層,得到IoU Score,最后通過score相乘得到最終的得分:
Smask?=?Scls???Siou來看網絡是如何訓練的?給幾個key point:
對于新增的IoU分支,訓練樣本是RPN的正樣本(負樣本只參與分類),與Mask分支一致;定義正樣本為RPN的Box與Ground Truth的IoU大于0.5。
針對得到的Mask結果,根據閾值(文中是0.5)做二值化,計算二值化結果 和 Ground Truth的mask IoU;當二值化mask結果與GT一致時,Loss = 1 - Mask IoU = 0這里的二值化可以考慮修改一下,比如采用soft mask的方案。
3個head分支同時訓練。
這里作者試驗了多個head,根據試驗效果最后選擇當前head,這里也有改進的空間,大家可以好好分析一下。推理階段
對于輸出的box做soft-NMS處理后,得到score top-k(文中k=100)的box;這一步和mask RCNN并無區別,根據輸出box映射到mask 分支,獲取對應的分割圖。
將得到的分割圖送入mask IoU分支,計算對應得分;
僅使用Mask IoU的score來矯正class core,能夠整體反應分割的夠不夠好;
測試效果
測試效果很不錯,請看下圖:
在COCO 2017數據集上的表現(不同backbone上均有顯著提升):
論文:Mask Scoring R-CNN
Paper URL:?https://arxiv.org/abs/1903.00241github URL:?https://github.com/zjhuang22/maskscoring_rcnn
往期精選
海思總裁致團隊公開信對技術人員的啟示
OpenCV視頻分析背景提取與前景提取
使用條件GAN實現圖像到圖像的翻譯
OpenCV4系統化學習路線圖與教程
關注【OpenCV學堂】
長按或者掃碼即可關注
創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
以上是生活随笔為你收集整理的opencv 阈值分割_CVPR2019实例分割Mask Scoring RCNN的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 现在买手机还是等5g出来再买
- 下一篇: 硬盘温度70度正常吗_读懂固态硬盘:NV