基於深度學習的視覺自動估計魚重量方法

  • 2019 年 10 月 4 日
  • 筆記
論文資訊

導讀:基於視覺的物體品質估計是電腦視覺的新興領域,具有廣泛的工業應用價值。該論文主要研究了兩個問題:第一是評估由CNN自動分割的魚形輪廓是否應該包括魚鰭和尾巴(基於全魚輪廓的兩個簡單的數學模型應用在不同地理位置的不可見的測試影像時效果更好(即較低的MAPEs))。第二是單因子(單參數,one-parameter)數學模型和雙因子模型表現在新測試影像上孰優孰劣(單因子數學模型更好)。單因素模型高度穩定,在測試影像上實現比訓練影像更低的MAPE = 4.36%,MAPE = 5.44%。

實驗數據

論文貢獻

該研究的重點是提出從影像中自動估計魚重量的方法,具體來說解決了以下兩個問題:

1)實驗中與使用整個魚輪廓模型相比,排除魚鰭和尾部的模型是否更準確?換句話說魚的整個輪廓模型是否應該包含魚鰭和尾部?(提取整個魚表面區域要比排除魚鰭和尾部要容易的多)。

2)評估模型的穩定性。魚的大小和拍攝條件不同造成魚在影像中顯示不同,形態分割的穩定性與品質估計的穩定性息息相關。

詳細內容

論文中使用的模型:

本研究使用基於U-Net的變種LinkNet-34網路模型作為分割模型,使用ResNet-34作為特徵編碼器。損失函數為:

其中y是目標掩碼,hat{y}是LinkNet34的輸出,bc(y,hat{y})是二進位交叉熵,dice(y,hat{y})是dice係數。不管是訓練還是測試,所使用的的輸入圖片均為單通道灰度影像並標準化為數值0,1範圍。

在實踐時,為了更有效地重用預訓練模型ResNet34,在ResNet34作為編碼器時,將Adam學習率降低10倍。Adam的起始學習率lr=10^{-3},在迭代100次後學習率調整為lr=10^{-5}.圖4位不同學習率的損失效果。

迭代圖

魚類體重估計方法:

最常用的魚類體重估計方法:

image.png

通過魚輪廓-長度模型估計品質,L=f(C)為輪廓-長度模型,M=g(L)為長度-品質模型。

也有研究人員提出利用影像中魚表面積來估計小型魚類的品質

image.png

其中S代表影像中魚類的表面積(分割區域面積),H表示高度L表示長度。

Konovalov提出只利用魚表面積來擬合估計魚類品質:

image.png

式中參數a,b,c與魚類物種相關,需要各自獨立擬合得到。

實驗結果:

(1) Weight-from-area mathematical models

檢測評估模型(即式子5和式子6,式子5是單因子模型,式子6是雙因子模型).通過對魚輪廓是否包含魚鰭和尾部分別進行評估,看是完整的還是排除魚鰭和尾部的輪廓更為準確。效果看錶I:whole-完整的輪廓,no-fins:去除魚鰭的輪廓。

image.png

(2)Weight-from-image estimation

模型LinkNet34R來自於LinkNet34,它將LinkNet34 sigmoid輸出相加,並進行對數處理:

image.png

利用LinkNet34R網路模型訓練後,基於回歸方法的品質估計對影像中的目標魚類進行估計,Mask type 7-8為利用網路模型對輸入數據進行品質估計的結果,其他是基於數學模型計算得到的結果:

image.png

研究發現沒有魚鰭的掩膜對於品質預測更為有效。輪廓中含有魚鰭時,網路模型更容易記住複雜的外形,會引起一定程度的過擬合。

網路模型LinkNet::

https://github.com/e-lab/LinkNet

論文地址:https://arxiv.org/pdf/1909.02710.pdf

更多論文分享,請關注公眾號