前言:
在深度學習和計算機視覺中,人們正在努力提取特征,為各種視覺任務輸出有意義的表示。在一些任務中,我們隻關注對象的幾何形狀,而不管顔色、紋理和照明等。這就是邊界檢測的作用所在。
關注公衆号CV技術指南,及時擷取更多計算機視覺技術總結文章。
問題定義
使用Dice loss實作清晰的邊界檢測

圖1 邊界檢測
圖1是一個邊界檢測的例子,顧名思義,邊界檢測是從圖像中檢測對象邊界的任務。這是一個不适定的問題,因為問題設定本身存在歧義。如圖所示,對于室内房間圖像(左),ground truth(中)定義房間内的ground truth對象邊界,并且預測(右)估計房間的對象邊界。然而,我們可以看到,估計的邊界遠不止是ground truth,包括來自房間布局、窗簾,甚至沙發紋理的不必要的邊界線。提取幹淨且有意義的對象邊界并不容易。
原始方法
邊界檢測的一個直接解決方案是将其視為語義分割問題。在标注中簡單地将邊界為1和其他區域标記為0,我們可以将其表示為一個二分類語義分割問題,以二值交叉熵損失為損失函數。然而,它有兩個原因:高度不平衡的标簽分布和每像素交叉熵損失的内在問題。
Cross Entropy Loss的局限性
當使用交叉熵損失時,标簽的統計分布對訓練精度起着很重要的作用。标簽分布越不平衡,訓練就越困難。雖然權重交叉熵損失可以減輕難度,但改進并不顯著,交叉熵損失的内在問題也沒有得到解決。在交叉熵損失中,損失按每像素損失的平均值計算,每像素損失按離散值計算,而不知道其相鄰像素是否為邊界。是以,交叉熵損失隻考慮微觀意義上的損失,而不是全局考慮,這還不足以預測圖像水準。
圖2 具有交叉熵損失的邊界預測
如圖2所示。對于輸入圖像(左),比較了交叉熵損失(中)和權重交叉熵損失(右)的預測。右邊的邊界比中間的要好得多,但預測的邊界并不幹淨,肮髒的草地紋理邊界仍然存在。
Dice Loss
Dice Loss起源于Sørensen-Dice系數,這是20世紀40年代用來測量兩個樣本之間的相似性的統計資料。它是由米勒塔裡等人帶到計算機視覺的。2016年進行三維醫學圖像分割。
圖3 骰子系數
上式顯示了骰子系數方程,其中pi和gi分别表示對應的像素預測值和ground truth。在邊界檢測場景中,pi和gi的值為0或1,表示像素是否為邊界,是的時候值為1,否則值為0。是以,分母是預測和ground truth的總邊界像素的和,數值是正确預測的邊界像素的和,因為隻有當pi和gi值比對時(兩個值1)才遞增。
圖4 骰子系數(設定視圖)
圖4是圖3的另一個視圖。從集理論的角度來看,其中骰子系數(DSC)是兩個集合之間重疊的度量。例如,如果兩組A和B完全重疊,DSC的最大值為1。否則,DSC開始減少,如果兩個組完全不重疊,則最小值為0。是以,DSC的範圍在0到1之間,越大越好。是以,我們可以使用1-DSC作為骰子損失來最大化兩組之間的重疊。
在邊界檢測任務中,ground truth邊界像素和預測的邊界像素可以被視為兩個集合。通過利用Dice Loss,這兩組被訓練一點地重疊。如圖4所示。分母考慮全局尺度上的邊界像素的總數,而數值考慮局部尺度上的兩個集合之間的重疊。是以,Dice Loss在本地和全局上都考慮了損失資訊,這對于高精度至關重要。
結果
圖5 邊界預測的結果
如圖5所示。使用Dice Loss(c列)的預測結果比其他方法(d、e列)具有更高的精度。特别是對于薄邊界,因為隻有當預測的邊界像素與ground truth薄邊界重疊,并且在其他區域沒有預測的邊界像素時,才可以減少Dice Loss
參考論文
V-Net: Fully Convolutional Neural Networks for Volumetric Medical Image Segmentation, Milletari et al., 3DV 2016
Learning to Predict Crisp Boundaries, Deng et al., ECCV 2018
原文連結:
https://medium.com/ai-salon/understanding-dice-loss-for-crisp-boundary-detection-bb30c2e5f62b
本文來源于公衆号 CV技術指南 的論文分享系列。
歡迎關注公衆号 CV技術指南 ,專注于計算機視覺的技術總結、最新技術跟蹤、經典論文解讀。
在公衆号中回複關鍵字 “技術總結” 可擷取以下文章的彙總pdf。
使用Dice loss實作清晰的邊界檢測
使用Dice loss實作清晰的邊界檢測
其它文章
使用Dice loss實作清晰的邊界檢測
PVT--無卷積密集預測的多功能backbone
CVPR2021 | 開放世界的目标檢測
Siamese network總結
視覺目标檢測和識别之過去,現在及可能
在做算法工程師的道路上,你掌握了什麼概念或技術使你感覺自我提升突飛猛進?
計算機視覺專業術語總結(一)建構計算機視覺的知識體系
欠拟合與過拟合技術總結
歸一化方法總結
論文創新的常見思路總結
CV方向的高效閱讀英文文獻方法總結
計算機視覺中的小樣本學習綜述
知識蒸餾的簡要概述
優化OpenCV視訊的讀取速度
NMS總結
損失函數技術總結
注意力機制技術總結
特征金字塔技術總結
池化技術總結
資料增強方法總結
CNN結構演變總結(一)經典模型
CNN結構演變總結(二)輕量化模型
CNN結構演變總結(三)設計原則
如何看待計算機視覺未來的走向
CNN可視化技術總結(一)特征圖可視化
CNN可視化技術總結(二)卷積核可視化
CNN可視化技術總結(三)類可視化
CNN可視化技術總結(四)可視化工具與項目