基于深度學(xué)習(xí)的2D和3D仿射變換配準(zhǔn)
點擊上方“小白學(xué)視覺”,選擇加"星標(biāo)"或“置頂”
重磅干貨,第一時間送達(dá)
作者:Sarath Chandra
編譯:ronghuaiyang
將配準(zhǔn)從2D場景擴展到3D場景。
上周我開發(fā)了一個基于深度學(xué)習(xí)的2D可變形圖像配準(zhǔn)的基本框架,并演示了如何從MNIST數(shù)據(jù)集中配準(zhǔn)手寫數(shù)字圖像。除了損失函數(shù)和架構(gòu)上的細(xì)微差別外,該框架本質(zhì)上與VoxelMorph框架相同。
本周,我的任務(wù)是將該實現(xiàn)擴展到3D,并在一個包含150個T1-weighted掃描的小數(shù)據(jù)集上進(jìn)行試驗。通過對現(xiàn)有代碼進(jìn)行一些細(xì)微的更改,我能夠?qū)崿F(xiàn)原始的VoxelMorph模型。我使用一個掃描作為靜態(tài)圖像,其余的作為移動圖像(125用于訓(xùn)練,25用于測試)。

配準(zhǔn)效果不佳的原因是這些volumes沒有去掉頭骨。會議上有人向我指出,腦提取是配準(zhǔn)的一個重要預(yù)處理步驟,即去除顱骨和眼睛等非腦組織。
我想看看像剛性變換和仿射變換這樣的簡單變換是否有效。所以我很快修改了代碼來做無監(jiān)督的2D仿射配準(zhǔn)。這個想法是空間變壓器網(wǎng)絡(luò)的一個簡單推論。
2D仿射變換配準(zhǔn)的Colab notebook:https://colab.research.google.com/drive/1drp2ny2t-nxddkt4pezn6mtjehnfccw
卷積神經(jīng)網(wǎng)絡(luò)以移動圖像和靜態(tài)圖像為輸入,計算使移動圖像彎曲和對齊到靜態(tài)圖像所需的仿射變換參數(shù)。在二維配準(zhǔn)的情況下,這些參數(shù)有6個,控制旋轉(zhuǎn)、縮放、平移和剪切。

訓(xùn)練卷積神經(jīng)網(wǎng)絡(luò)輸出兩幅輸入圖像之間的仿射變換參數(shù)T,空間變壓器網(wǎng)絡(luò)利用這些參數(shù)對運動圖像進(jìn)行變換。
空間變壓器block取仿射參數(shù)和運動圖像,執(zhí)行兩項任務(wù):
計算采樣網(wǎng)格 使用采樣網(wǎng)格重新采樣移動圖像
在規(guī)則網(wǎng)格上應(yīng)用仿射變換得到新的采樣網(wǎng)格,即運動圖像的采樣點集。將輸出中的每個位置映射到輸入中的一個位置,使用如下公式:

由于新的采樣位置可以是非積分的,雙線性插值用于可微的采樣,并允許梯度流回卷積神經(jīng)網(wǎng)絡(luò),使整個框架端到端可微。
MNIST數(shù)據(jù)集經(jīng)過篩選,只保留一類圖像,而靜態(tài)圖像是從篩選后數(shù)據(jù)集的測試集中隨機選擇的。使用歸一化交叉相關(guān)(NCC)訓(xùn)練網(wǎng)絡(luò)。數(shù)學(xué)上是:

S和M分別代表靜態(tài)圖像和運動圖像。下標(biāo)mea和std分別表示圖像的均值和標(biāo)準(zhǔn)差。圖像中所有像素的求和。該訓(xùn)練在Tesla K80 GPU上大約需要5分鐘,在CPU (i5-8250U)上大約需要10分鐘。

我修改了2D配準(zhǔn)的代碼,使其適用于3D volumes,并在T1-weighted掃描上進(jìn)行了嘗試。AIRNet的工作,與此相似。但與AIRnet不同的是,它是在監(jiān)督的方式下訓(xùn)練的,并且需要ground-truth仿射變換參數(shù),這是在無監(jiān)督的方式下訓(xùn)練的,就像VoxelMorph。

好消息!
小白學(xué)視覺知識星球
開始面向外開放啦??????
下載1:OpenCV-Contrib擴展模塊中文版教程 在「小白學(xué)視覺」公眾號后臺回復(fù):擴展模塊中文教程,即可下載全網(wǎng)第一份OpenCV擴展模塊教程中文版,涵蓋擴展模塊安裝、SFM算法、立體視覺、目標(biāo)跟蹤、生物視覺、超分辨率處理等二十多章內(nèi)容。 下載2:Python視覺實戰(zhàn)項目52講 在「小白學(xué)視覺」公眾號后臺回復(fù):Python視覺實戰(zhàn)項目,即可下載包括圖像分割、口罩檢測、車道線檢測、車輛計數(shù)、添加眼線、車牌識別、字符識別、情緒檢測、文本內(nèi)容提取、面部識別等31個視覺實戰(zhàn)項目,助力快速學(xué)校計算機視覺。 下載3:OpenCV實戰(zhàn)項目20講 在「小白學(xué)視覺」公眾號后臺回復(fù):OpenCV實戰(zhàn)項目20講,即可下載含有20個基于OpenCV實現(xiàn)20個實戰(zhàn)項目,實現(xiàn)OpenCV學(xué)習(xí)進(jìn)階。 交流群
歡迎加入公眾號讀者群一起和同行交流,目前有SLAM、三維視覺、傳感器、自動駕駛、計算攝影、檢測、分割、識別、醫(yī)學(xué)影像、GAN、算法競賽等微信群(以后會逐漸細(xì)分),請掃描下面微信號加群,備注:”昵稱+學(xué)校/公司+研究方向“,例如:”張三 + 上海交大 + 視覺SLAM“。請按照格式備注,否則不予通過。添加成功后會根據(jù)研究方向邀請進(jìn)入相關(guān)微信群。請勿在群內(nèi)發(fā)送廣告,否則會請出群,謝謝理解~

