‘數字人體’視覺挑戰賽 - 算法賽道亞軍比賽攻略_LLLLC

‘數字人體’視覺挑戰賽 - 算法賽道亞軍比賽攻略_LLLLC

比賽主頁:數字人體”視覺挑戰賽——宮頸癌風險智能診斷
相關代碼:github

0 賽題內容

本次比賽分爲初賽和複賽兩個階段,比賽的任務是對異常細胞進行檢測。初賽只需要檢測出異常細胞。複賽需要進一步區分六類異常細胞,其中四種爲陽性類別:“ASC-H” (AH)、“ASC-US” (AS)、“HSIL” (HL)、“LSIL” (LL),兩種爲陰性類別:“Candida” (CA, 念珠菌)、“Trichomonas” (TS, 滴蟲),其中陽性類別爲鱗狀上皮細胞本身發生病變,而陰性類型是細胞受到微生物 (念珠菌、滴蟲)感染。

圖片數量方面,複賽共提供1690張圖片,其中1440張爲陽性圖片 (注意區分於上面的陽性類別)提供標註信息,250張爲陰性圖片,不含有六類異常細胞,因此也沒有標註信息。1440張陽性圖片 (分辨率爲上萬的數量級,全部標註較耗時)並未完全標註,而是提供了3670個ROI區域 (分辨率爲幾千的數量級),並提供ROI區域的標註信息 (ROI以爲的區域可能存在異常細胞,但未進行標註)。

複賽測試集共350張測試圖片,需要預測ROI區域內6類異常細胞的位置、類別和概率。評測指標爲mAP(IOU=0.5, VOC2010)。

複賽提供的爲PAI的線上開發環境:

  • CPU:Intel® Xeon® CPU E5-2682 v4 @ 2.50GHz 8核;
  • GPU:Tesla P100 16G x 2;

1 賽題分析

我們首先對數據進行了病理學數據統計兩方面的分析,通過這兩方面的分析,得到一些可以利用的先驗以及任務的主要挑戰

結合病理學知識的一些發現:

  1. 細胞形態方面。四類陽性細胞較爲相似,它們是出於不同時期的病變細胞,主要的區別在於核質比的變化;兩類陰性細胞具有比較明顯的特點,CA主要是受念珠菌感染的細胞,呈矛狀,體積較大,TS是受滴蟲感染的細胞,滴蟲主要附着於細胞外部,體積較小;
  2. 細胞位置隨機均勻分佈。如圖2 (圖片見底部)是液基細胞學檢查的製片過程,其中包括了振盪和離心過程,所以可以粗略認爲細胞在玻片上是均勻隨機分佈的,這對後面的數據增強策略具有指導作用;
  3. 不共存先驗。念珠菌和滴蟲適合生存的pH環境是不同的,也就是在大部分情況下,念珠菌和滴蟲只能單獨存在,這對後面的模型設計以及後處理具有指導作用;
  4. 背景因素干擾。如圖3是一些不滿意的標本的示意圖,可以看出,某些玻片可能存在粘液,血等背景的干擾,如何提升背景的多樣性也是值得考慮的問題;

通過數據統計的一些發現:

  1. 類別數量不平衡。如圖4所示,是每一類細胞的ROI數量以及標註框 (gt_boxes)數量示意圖,可見存在類別不平衡問題,且這種不平衡有以下的特點:TS類以最少的ROI (234個ROI),佔據了最多的標註框 (11747個標註框),即ROI最少的類別標註框反而最多。這一點在後面的訓練策略中需要進行考慮;
  2. 標註框尺度變化大。如圖5所示,可以看出,四種陽性細胞的尺寸只要在幾十到兩百之間;CA的尺寸較大,存在幾百甚至上千的尺寸;TS的尺寸較小,大部分爲五十以下;
  3. 類別不共存先驗。如圖6所示,我們使用鄰接矩陣的形式來統計六個類別的兩兩共存情況,可以發現,CA和TS基本上是單獨出現,四類陽性細胞之間互爲共存,這也和前面的病理學分析是吻合的;

2 方案介紹

我們的整體方案可以分爲數據模型預測與後處理三大部分進行介紹。

2.1 數據

在訓練階段,我們使用“在線”crop的方式在ROI區域中crop固定size的patch作爲訓練圖片,如圖7所示,所以一個epoch就是遍歷所有的3670個ROI,“在線”crop的方式比“離線”先將所有的樣本crop出來具有更高的靈活性。

除了訓練圖片的獲取,最重要的環節就是數據增強,我們主要使用了下面幾種類型的數據增強方法:

  1. 隨機背景替換。如上所述,本次比賽除了提供1440張陽性圖片以外,還提供了250張陰性圖片,因此我們通過隨機背景替換的方式,利用陰性圖片來增加背景多樣性。具體地,如圖8所示,我們以一定的概率將標註框隨機貼到陰性圖片上,從而改變標註框周圍的背景,增加分類器negative樣本的多樣性。在利用陰性圖片的時候需要注意防止截取到圖片的四個角的純色背景部分,如圖9所示,因爲玻片中的細胞是位於一個圓形的區域內,如果截取到四個角的話會產生純色的背景,影響分類器訓練;
  2. 隨機標註框移動。除了利用陰性圖片來增加背景的多樣性,我們考慮進一步利用陽性圖片的背景來增加背景多樣性,如圖10所示,我們將標註框進行隨機移動,並是用inpainting操作對原來的位置進行填充。通過這種方式來改變標註框周圍的環境;
  • 除了上述的數據增強方式,我們還使用了下面一些常見的數據增強方式:
    1. 隨機抖動標註框;
    2. 隨機水平。豎直翻轉;
    3. 隨機旋轉;
    4. 隨機顏色空間擾動;

2.2 模型

我們使用通用模型專家模型結合的形式,如圖11所示,通用模型對六種類型的細胞進行檢測,專家模型針對特定的類別進行檢測。

模型的具體組成發麪,我們使用的是一些常見的經典結構:

  1. 檢測框架:Faster-RCNN[4]
  2. 基礎網絡:ResNet-50[5]
  3. 其它模塊:FPN[6]/BiFPN[7], DCN[8], Cascade[9]

由於上述都是一些比較常見的結構,這裏不進行詳細介紹,下面主要介紹針對本次任務數據的特點,在訓練過程中一些值得分享的細節

在訓練通用模型的過程中:

  1. batchsize的大小會對模型性能產生影響。前面提到,此次數據存在不平衡問題,且TS以最少的ROI佔據了最多的標註框,即TS在圖片中密集出現。有234個ROI包含TS,而總共有3670個ROI,我們可以計算不同的batchsize下TS在一個batch中出現的概率,如下表所示,可見隨着batchsize的增大,TS在某個batch中出現的概率增加。另外,當TS在某個batch中出現的時候,其梯度很可能會成爲主導,最終導致模型對TS產生bias。所以我們最終採用較小的bathsize (1或2)進行實驗;
  2. anchor scale會對模型的性能產生影響。因爲六個類別的標註框尺度有較大的差異,一開始我們希望通過增加anchor scale來提升anchor對CA的覆蓋程度,但是發現這樣並不是很work。如圖12所示,展示的是scales取[8]和[8, 16, 32]的時候anchor的尺寸和數量情況,可以看到,增加scales之後,anchor的尺寸變大了,能夠覆蓋到更大的CA (這是我們的本意),但是這會導致中等大小的anchor的佔比升高了,而中等大小的anchor的尺寸主要是128-512,這一範圍和陽性細胞的大小正好match,這會導致模型對四類陽性細胞產生bias,引在我們的實驗中,最終採用的是單一的scales
Batchsize 8 4 2 1
TS在batch中出現的概率 0.51 0.26 0.13 0.06

在訓練專家模型的過程中:

  • 考慮如何抑制假陽性預測。陽性細胞、CA、TS的ROI數量分別爲2953、483、234,可見CA和TS中總的ROI (3670)的比例較小。訓練專家模型的時候,以訓練CA的專家模型爲例,最常規的做法是僅使用483個含有CA的ROI進行訓練,我們發現這樣訓練出來的模型在測試集上會有很多的假陽預測 (因爲模型“見過”的背景較少,並沒有見過四類陽性細胞以及TS,很容易會產生假陽預測)。因此,我們在實驗中的做法是,訓練某一種類型的專家模型的時候,將其它類型細胞的ROI數據當成背景數據使用,通過上述的隨機背景替換數據增強方式進行利用。這樣,模型的分類器就能“見到”其它類型的細胞,提升分類器的性能。

2.3 預測與後處理

預測階段,我們採用交疊滑窗的形式 (步長爲patch大小的一半),如圖13所示,採用交疊滑窗的方式主要是爲了保證patch邊緣的檢測質量,防止檢測結果被patch“截斷”。

在後處理方面,我們主要進行重疊抑制異類不共存抑制兩方面的處理:

  1. 重疊抑制:
    1. 類內抑制:對同種類別的重疊預測框進行融合
      1. 模型內部抑制:對預測階段的滑窗重疊部分的預測框進行融合,如圖14所示。採用Box Voting,IoU閾值爲0.2;
      2. 模型之間抑制:對不同模型的預測框進行融合,如圖15所示,採用WBF (Weighted Box Fusion)[10]進行融合,IoU閾值爲0.3;
    2. 類間抑制:對不同類別的重疊預測框,抑制分數低的類別,如圖16所示。採用跨類別的NMS,IoU閾值取0.3 (這種方法在比賽的時候收效並不明顯,甚至有所下降,主要還是因爲模型本身不是很強,以及評價指標mAP的計算方式);
  2. 異類不共存抑制:
    • 利用CA過濾其它類型的框:當ROI中超過三個CA預測框的置信度大於0.85的時候,抑制該ROI上其它類別的預測框 (我們嘗試過依據其它5類細胞的預測置信度進行抑制,但是沒有收效,主要是因爲我們的CA本身區分度比較高,且我們的CA模型比較強一些);

3 方案總結

在本次比賽中,我們首先根據病理學數據統計得到一些先驗挑戰

  1. 先驗:不共存,隨機分佈;
  2. 挑戰:背景干擾,類別不平衡,標註框尺度變化;

我們提出的方法可以總結如下:

  1. 數據層面:隨機背景替換,隨機標註框移動(隨機分佈;背景干擾)
  2. 模型層面:通用模型和專家模型結合(不共存;類別不平衡)
  3. 訓練層面:減小batchsize,均衡anchor scale(類別不平衡,標註框尺度變化)
  4. 後處理策略:不共存抑制,重疊抑制(不共存)

4 參考文獻

[1] https://wenku.baidu.com/view/5b4ba55bad51f01dc281f1b5.html
[2] https://www.91360.com/201603/60/26147.html
[3] https://wenku.baidu.com/view/ff172cdfde80d4d8d05a4f21.html
[4] Faster r-cnn. NeurIPS 2015.
[5] Deep residual learning for image recognition. CVPR 2016.
[6] Feature pyramid networks for object detection. ICCV 2017.
[7] Efficientdet: Scalable and efficient object detection. arXiv preprint arXiv:1911.09070, 2019.
[8] Deformable convolutional networks. ICCV 2017.
[9] Cascade r-cnn: Delving into high quality object detection. CVPR 2018.
[10] Weighted Boxes Fusion: ensembling boxes for object detection models. arXiv preprint arXiv:1910.13302, 2019.

在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述

在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述

在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章