基于MASK RCNN算法實現瑕疵圖像識別(訓練模型及應用)

數據的準備其實是最花功夫和時間的晤碘,度過了上一個階段后枯跑,就進入激動的模型訓練階段了恼除,首先簡要聊聊我對Mask RCNN算法的理解:


MaskRCNN是何凱明大神基于FastRCNN的改進璃谨,2018年初在tensorflow上實現了該模型算法芽狗。在原有FastRCNN的基礎上,將ROIPooling部分調整為ROIAlign庶橱,同時增加mask值描述分類贮勃。我對整個Mask RCNN的理解如下:

MaskRCNN 是一種two stage圖像檢測方法,追求精度和識別效果苏章,所謂two stage寂嘉,就是說第一步先要對圖像進行掃描,然后生成目標區(qū)域,認為里面有東西垫释;第二部再進行圖片分類以及生成界限框(矩形框rois)和mask丝格。與yolo和視網膜等追求速度的one stage算法不一樣。

下面一步一步說棵譬,first stage:

圖像進來首先是卷積層:這是一個標準的殘差網显蝌,代碼使用的是ResNet101網絡作為特征抽取器,前面的幾層可以檢測低層次的特征订咸,比如邊緣和邊角曼尊,后面的層次可以檢測一些高級特征,具體汽車脏嚷、人骆撇、天空等等,通過這個backbone網絡父叙,圖片會被提取出32*32的特征圖 共計2048個神郊。這些特征圖會進入下一個stage

在殘差網絡生成特征的同時,FPN特征金字塔也能更好識別物體的多重尺度上的特征趾唱,它將不同層級的特征可以自由的傳遞涌乳。雖然最后一層的feature maps 語義強,但是位置和分辨率都比較低甜癞,容易檢測不到比較小的物體夕晓。FPN的功能就是融合了底層到高層的feature maps ,從而充分的利用了提取到的各個階段的特征(ResNet中的C2-C5? ? 悠咱,參閱https://blog.csdn.net/remanented/article/details/79564045)蒸辆。

這里再說說高層上采樣:為了在圖像分辨率高的時候看見小東西,就要把后面分辨率低的特征拿到前面分辨率高的圖樣里融合成新的特征析既。繞嘴躬贡。。眼坏。

這段代碼能看出先生成上層特征逗宜,再生成下層特征 ,upsampling即是上采樣空骚。原代碼將FPN放在RPN網絡中用于生成proposal,原來的RPN網絡是以主網絡的某個卷積層輸出的feature map作為輸入擂仍,簡單講就是只用這一個尺度的feature map囤屹。但是現在要將FPN嵌在RPN網絡中,生成不同尺度特征并融合作為RPN網絡的輸入逢渔。(參閱https://blog.csdn.net/u014380165/article/details/72890275)


ResNet殘差網結構

好了肋坚,下面談談對second stage的理解。

RPN 區(qū)域推薦的網絡,用于幫助網絡推薦感興趣的區(qū)域智厌,首先是來自FPN輸出的特征P2到P5诲泌,即conv feature map


獲得窗口坐標和前后景置信度

接下來就是RoIAlign了,這也是MaskRCNN的重點改進


ROIpooling與ROIalign的區(qū)別

可以看出來铣鹏,兩者最大的區(qū)別就是ROIPooling做了2次取整敷扫,從圖片到特征圖,又從特征圖到ROI池化層诚卸,這對于圖像分割會產生很大的誤差葵第。RoiAlign采用雙線性插值來得到固定四個點坐標的像素值。得到固定的7*7的區(qū)域特征圖

這些搞定了合溺,就可以開始分類和mask了:包括了物體檢測最終的classes和bounding boxes卒密。該部分是利用了之前檢測到了ROI進行分類和回歸(是分別對每一個ROI進行);mask的預測也是在ROI之后的棠赛,通過全連接層來進行的哮奇。因為每個ROI只對應一個物體,只需對其進行語義分割就好睛约,相當于了實例分割了(? 在訓練的時候鼎俘,二者都是同時進行的;在預測的時候痰腮,先得到分類的結果而芥,然后再把此結果傳入到mask預測中得到mask)

---------------------------------------------------------------------------------------------------------------------------


以上是模型的預測原理,下面談談實際的訓練膀值,訓練的時候要先注明是訓練的哪一個部分:

我這里采用的是訓練頭部70 epoch棍丐,訓練resnet stage 5+ 20epoch,總計訓練90epoch沧踏,step設置為100.

STEPS_PER_EPOCH 要在config類里面事先說明歌逢。

一般情況下訓練到stage5+就可以了


90輪訓練的tensorboard展示

整整跑了130小時翘狱。秘案。阱高。

mAP的計算可以調用util的方法赤惊,實際上圈暗,我們發(fā)現關于臟點類的識別,在系統(tǒng)的總體loss值下降到.5以內既可以滿足要求卧斟。


另外通過visualize里的方法,可以實現豐富的圖像識別效果


以下為臟點類瑕疵的識別效果:

原圖


訓練效果圖


訓練不足時憎茂,會出現誤識別現象

對于鋼板擦痕和劃痕的識別效果比較奇怪珍语,超過一定訓練輪數后,會出現過擬合現象竖幔。有點進一步研究:


正常識別效果


過擬合

具體識別規(guī)律必須要實際確認板乙,loss和mAP只能算作輔助吧,訓練不一定越多越好拳氢,這就是本次”煉丹“的體會吧募逞。

?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市馋评,隨后出現的幾起案子放接,更是在濱河造成了極大的恐慌,老刑警劉巖留特,帶你破解...
    沈念sama閱讀 217,734評論 6 505
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件纠脾,死亡現場離奇詭異,居然都是意外死亡蜕青,警方通過查閱死者的電腦和手機苟蹈,發(fā)現死者居然都...
    沈念sama閱讀 92,931評論 3 394
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來右核,“玉大人汉操,你說我怎么就攤上這事∶衫迹” “怎么了磷瘤?”我有些...
    開封第一講書人閱讀 164,133評論 0 354
  • 文/不壞的土叔 我叫張陵,是天一觀的道長搜变。 經常有香客問我采缚,道長,這世上最難降的妖魔是什么挠他? 我笑而不...
    開封第一講書人閱讀 58,532評論 1 293
  • 正文 為了忘掉前任扳抽,我火速辦了婚禮,結果婚禮上殖侵,老公的妹妹穿的比我還像新娘贸呢。我一直安慰自己,他們只是感情好拢军,可當我...
    茶點故事閱讀 67,585評論 6 392
  • 文/花漫 我一把揭開白布楞陷。 她就那樣靜靜地躺著,像睡著了一般茉唉。 火紅的嫁衣襯著肌膚如雪固蛾。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,462評論 1 302
  • 那天度陆,我揣著相機與錄音艾凯,去河邊找鬼。 笑死懂傀,一個胖子當著我的面吹牛趾诗,可吹牛的內容都是我干的。 我是一名探鬼主播蹬蚁,決...
    沈念sama閱讀 40,262評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼恃泪,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了缚忧?” 一聲冷哼從身側響起悟泵,我...
    開封第一講書人閱讀 39,153評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎闪水,沒想到半個月后糕非,有當地人在樹林里發(fā)現了一具尸體,經...
    沈念sama閱讀 45,587評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡球榆,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 37,792評論 3 336
  • 正文 我和宋清朗相戀三年朽肥,在試婚紗的時候發(fā)現自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片持钉。...
    茶點故事閱讀 39,919評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡衡招,死狀恐怖,靈堂內的尸體忽然破棺而出每强,到底是詐尸還是另有隱情始腾,我是刑警寧澤州刽,帶...
    沈念sama閱讀 35,635評論 5 345
  • 正文 年R本政府宣布,位于F島的核電站浪箭,受9級特大地震影響穗椅,放射性物質發(fā)生泄漏。R本人自食惡果不足惜奶栖,卻給世界環(huán)境...
    茶點故事閱讀 41,237評論 3 329
  • 文/蒙蒙 一匹表、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧宣鄙,春花似錦袍镀、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,855評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至明也,卻和暖如春宣虾,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背温数。 一陣腳步聲響...
    開封第一講書人閱讀 32,983評論 1 269
  • 我被黑心中介騙來泰國打工绣硝, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人撑刺。 一個月前我還...
    沈念sama閱讀 48,048評論 3 370
  • 正文 我出身青樓鹉胖,卻偏偏與公主長得像,于是被迫代替她去往敵國和親够傍。 傳聞我的和親對象是個殘疾皇子甫菠,可洞房花燭夜當晚...
    茶點故事閱讀 44,864評論 2 354

推薦閱讀更多精彩內容