1 文章介紹
閑來無事,被封宿舍,代碼不好碼,正好有幾篇綜述,拿來看看,這篇文章主要從U-Net模型的結(jié)構(gòu)性和非結(jié)構(gòu)性改進(jìn)兩個方向做出綜述,同時還介紹了視網(wǎng)膜血管,肺結(jié)節(jié),肝臟肝臟腫瘤,腦腫瘤四種典型任務(wù)為例,闡述不同數(shù)據(jù)的分割特點(diǎn)和難點(diǎn);
2 U-Net介紹
參考之前的一篇文章:U-Net代碼練習(xí)
對U-Net有一定了解之后,一定要動手跑一下,加深映像;總的來說,U-Net 網(wǎng) 絡(luò) 模 型 結(jié) 構(gòu) 主 要 包 括 編 碼 器 、解 碼 器 和跳躍連接部分。編碼器用于提取抽象特征和上 下 文 信 息 ,解 碼 器 用 于 將 圖 像 逐 步 恢 復(fù) 至 原 始 尺 寸 ,而 跳 躍 連 接 則 將 不 同 層 次 的 特 征 進(jìn) 行 融 合 。
3 結(jié)構(gòu)改進(jìn)
結(jié)構(gòu)性改進(jìn)就三種情況,編碼器解碼器改進(jìn),跳連接改進(jìn),以及模型整體結(jié)構(gòu)改進(jìn);大 部 分 改 進(jìn) 工 作是在原有模塊的基礎(chǔ)上,增加殘差模塊、Dense 模 塊 、Inception 模 塊 、Attention 模 塊 等 經(jīng) 典 網(wǎng) 絡(luò) 模 塊 , 或 綜 合 運(yùn) 用 其 中 的 幾 種 模 塊 ,以 提 高 網(wǎng) 絡(luò) 的 分 割 性 能。
2018年的一篇MDU-Net: Multi-scale Densely Connected U-Net for biomedical image segmentation,就是添加了Dense和Inceptioon模塊,然后不同層之間進(jìn)行特征連接,增加網(wǎng)絡(luò)的學(xué)習(xí)能力,結(jié)構(gòu)圖如下:
代碼如何實現(xiàn)呢:應(yīng)該是定義好各個卷積模塊和采樣模塊,在def forward中來回的進(jìn)行連接吧,有機(jī)會就回來實現(xiàn)一下代碼;
2018年的另外一篇文章,Recurrent Residual Convolutional Neural Network based on U-Net (R2U-Net) for Medical Image Segmentation,與原 始 U-Net 相比,這種網(wǎng)絡(luò)分別在編/解碼器階段用循環(huán)卷積層(RCLs)和帶有殘差單元的循環(huán)卷積層(RCLs)代替原有的正向卷積層,使得網(wǎng)絡(luò)在不增加參數(shù)量的同時具有優(yōu)于U-Net和ResU-Net 的分割性能,網(wǎng)絡(luò)結(jié)構(gòu)圖如下:
代碼如何實現(xiàn)呢:不太會,因為這個循環(huán)卷積層沒用過,只是在NLP任務(wù)中聽說過循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN),不知道是否有關(guān)系?
2019年一篇頂會文章,Prostate Segmentation using 2D Bridged U-net,文章中是串聯(lián)了U-Net,每個跳連接之間在通過其他方式連接起來,比較適合病灶分割,結(jié)合我之前看過的一篇文章,也是串聯(lián)U-Net,主要用來進(jìn)行視網(wǎng)膜血管分割,可以對比學(xué)習(xí)一下,文章鏈接:Iter-Net——迭代式U-Net變型
代碼如何實現(xiàn)呢:可以封裝U-Net,將跳連接部分的接口放出來,但是可能也不太好實現(xiàn),最莽的手段就是在forward里面按部就班的寫;
再來一篇2018年的頂刊文章M-Net,發(fā)表在TMI上的文章,主要思想,將輸入圖片縮放成不同的大小傳入U-Net的每一層,同時也將U-Net每一層的輸出都拿出來進(jìn)行損失計算,反向傳播,這樣可以的大大增加擬合強(qiáng)度,我第一次接觸這種每一層都輸出結(jié)果進(jìn)行計算的思想,是在
U
2
?
N
e
t
U^2-Net
U2?Net中,文章講解:套娃式U-Net網(wǎng)絡(luò)結(jié)構(gòu);M-Net網(wǎng)絡(luò)結(jié)構(gòu)如下:
代碼如何實現(xiàn):我猜將圖片縮放之后,存入列表中做參數(shù)傳入網(wǎng)絡(luò)結(jié)構(gòu)中,那GT圖像也要進(jìn)行同比例的縮放,這樣計算Loss時才方便,同時,訓(xùn)練和測試時,輸入輸出可能不一樣,這在 U 2 ? N e t U^2-Net U2?Net中有表現(xiàn);
那針對U-Net的結(jié)構(gòu)型改進(jìn)總結(jié)如下:
4 非結(jié)構(gòu)改進(jìn)
4.1 預(yù)處理——數(shù)據(jù)增強(qiáng)
數(shù)據(jù)增強(qiáng)的目的是有意地從原始訓(xùn)練數(shù)據(jù)中生成更多的訓(xùn)練數(shù)據(jù)來提高網(wǎng)絡(luò)性 能 ,常見的數(shù)據(jù)增 強(qiáng)方法有鏡像對稱、旋轉(zhuǎn) 、翻轉(zhuǎn) 、隨機(jī)裁剪等;最最重要的,也是我新學(xué)到的:Image Patch操作,在血管分割中,將大圖片裁剪成多個小圖片,這樣能大大增加圖片數(shù)量?。?/strong>
數(shù) 據(jù) 增 強(qiáng) 的 方 法 有 很 多 ,但 具 體 選 擇 哪 些 數(shù) 據(jù) 增 強(qiáng) 方 法 往 往 不 是 固 定 的 ,何 種 數(shù) 據(jù) 增 強(qiáng) 技 術(shù) 是 最 佳 的 也 很 難 衡 量 。 在 實 際 應(yīng) 用 中 ,要 根 據(jù) 訓(xùn) 練 數(shù) 據(jù) 集 的 特 點(diǎn) 進(jìn) 行 合 理 選 擇 ,使 網(wǎng) 絡(luò) 具 有 最 佳 的 泛 化 能 力 和 魯 棒 性 ,進(jìn) 而 有 助 于 網(wǎng) 絡(luò) 性 能 的 提升;
代碼如何實現(xiàn)呢:Pytorch有自帶已集成好的方法,但是傳入?yún)?shù)是單個的PIL或者是Numpy數(shù)據(jù),不能是object或者是List數(shù)據(jù),意味著你需要調(diào)用兩次才能實現(xiàn)原始圖像和GT圖像同時變換,而且有時候隨機(jī)數(shù)不同,兩者的變化也不同,因此,建議在github上找一個大神寫好的,然后自己修修改改,作為自己的,同時以后也可以作為實驗室祖?zhèn)鞔a傳下去,哈哈哈哈哈!
4.2 訓(xùn)練——數(shù)據(jù)歸一化
常見的是BN,BN 層可使網(wǎng)絡(luò)中的數(shù)據(jù)分布得更 均 勻 ,從而可以緩解梯度彌散,加快訓(xùn)練速度,但BN算法容易受到batch size的影響,因此出現(xiàn)了樣 本 歸 一 化(IN),即 只 對 每 個 樣 本 進(jìn) 行 類 似 BN 的 標(biāo)準(zhǔn)化處理,使其不受通道和 batch size 的影響;組 歸 一 化(GN)將 通 道 劃 分 為 組 ,在 組 內(nèi) 計 算 數(shù) 據(jù) 的 均 值 和 方 差 ,進(jìn) 而 實 現(xiàn) 對 圖 像 的 歸 一 化 處 理,之后還有集大成者,谷歌在 2019 年提出了新的歸 一 化 層 ——FRN(filter response normalization),它 既 能 解 決 mini batch 問 題 ,又 能 在 batch 較 大 時 具 有 比 使 用 BN 更 好 的 性 能,5種歸一化方法介紹:BN、GN、LN、IN、SN 、FRN
4.3 訓(xùn)練——激活函數(shù)
激活函數(shù)可使輸入輸出之間生成 非 線 性 映 射 ,從 而 使 得 網(wǎng) 絡(luò) 能 夠 學(xué) 習(xí) 更 為 復(fù) 雜 的 內(nèi) 容 。 U-Net 網(wǎng) 絡(luò) 及 大 部 分 的 改 進(jìn) 網(wǎng) 絡(luò) 均 使 用 ReLU 函 數(shù) 進(jìn) 行 激 活 ,能 夠 有 效 避 免 和 糾 正 梯 度 消 失 問 題;但是其也存在著梯度消失問題;因此人們剔除LeakReLU,ELU,mish等激活函數(shù),常見激活函數(shù)如下:Pytorch 非線性激活函數(shù)
代碼如何實現(xiàn):有時候不同的激活函數(shù)產(chǎn)生的效果不同,Pytorch提供的激活函數(shù)非常的全面,重點(diǎn)是學(xué)習(xí)前輩論文,然后有選擇性的使用激活函數(shù),這個在發(fā)表論文中,如果僅僅只是使用,是不夠發(fā)論文的,除非你新發(fā)明了一種新的激活函數(shù)!
4.4 訓(xùn)練——損失函數(shù)
損失函數(shù)是神經(jīng)網(wǎng)絡(luò)尋找最優(yōu)權(quán)重參數(shù)的指標(biāo)。常用的損失函數(shù)有BCELoss,BCE,DIceLoss, IoULoss等,同時組合使用損失函數(shù)也是當(dāng)前發(fā)論文的一種方向,但是想要取得成果,其實還是很難的,畢竟你不僅要有效果,還有指出為何有效果;不同的損失函數(shù)優(yōu)化目標(biāo)不同,有時候選擇不同的損失函數(shù),都會導(dǎo)致訓(xùn)練不收斂,因此損失函數(shù)尋找和組合需要謹(jǐn)慎和細(xì)心,Pytorch現(xiàn)有損失函數(shù)如下:Pytorch Loss
代碼如何實現(xiàn):Pytorch集成的損失函數(shù)只有一少部分,大部分的分割損失函數(shù)需要自己實現(xiàn),這里就需要平時多看GitHub進(jìn)行收集了,收集好了,作為實驗室祖?zhèn)鞔a,哈啊哈!
4.5 結(jié)構(gòu)改進(jìn)總結(jié)
針對 U-Net 網(wǎng)絡(luò)在結(jié)構(gòu)改進(jìn)和非結(jié)構(gòu)改進(jìn)方面取得的成效,按照改進(jìn)的目的對改進(jìn)措施和代表性網(wǎng)絡(luò)進(jìn)行了歸納總結(jié),結(jié)果如下:
5 U-Net應(yīng)用場景
根 據(jù) 不 同 的 疾 病 圖 像 特 點(diǎn) ,我 們 采 取 適 當(dāng) 的 措 施 對 U-Net 模 型 加 以 改 進(jìn) ,并 將 其 應(yīng) 用 于 不 同 醫(yī) 學(xué) 圖 像 的 分 割 中 ,會 取 得 不 錯 的 效 果 。 下 面 將 對 U-Net 及 其 改 進(jìn) 后 的 網(wǎng) 絡(luò) 在 視 網(wǎng) 膜 血 管 分 割 、肺 結(jié) 節(jié) 分 割 、肝 臟 和 肝 臟 腫 瘤 分 割 、腦 腫 瘤 分 割 四 種 不 同 醫(yī) 學(xué) 圖 像 分 割 中 的 應(yīng) 用 研究進(jìn)行總結(jié):
5.1 視網(wǎng)膜血管分割
二 維 彩 色 眼 底 圖 和 三 維 光 學(xué) 相 干 斷 層 掃 描 (OCT)圖 像 是 眼 科 疾 病 最 常 見 的 診 斷 依 據(jù);
其本身存在的困難點(diǎn)為 結(jié) 構(gòu) 極 其 復(fù) 雜 ,具 有 很 高 的 彎 曲 度 ,且 形 態(tài) 各 異 ,同 時 視 網(wǎng) 膜 血 管 細(xì) 小 ,分 叉 和 交 叉 區(qū) 域 較 多,分割精度要求較為嚴(yán)格;文章中舉例了DUNet: A deformable network for retinal vessel segmentation,在三個公開數(shù)據(jù)集DRIVE、STARE 和 CHASE上的分割效果很好,優(yōu)于傳統(tǒng)的U-Net,針對血管分割,需要提升網(wǎng)絡(luò)學(xué)習(xí)細(xì)小血管的能力,因此需要更多的信息采集模塊,文章后面提到的添加Inception模塊,也是相同的思想;同時,我之前看過的一篇文章Iter-Net:Iter-Net——迭代式U-Net變型,也是通過串行U-Net提升網(wǎng)絡(luò)分割精度的;
5.2 肺結(jié)節(jié)分割
通 過 觀 察 CT 圖 像 中 肺 結(jié) 節(jié) 的 紋 理 特 征 ,可 以 較 為 清 晰 地 判 斷 病 人 是 否 有 肺 癌 隱 患 ,并 量 化 分 析 肺 癌 的 惡 性 程 度 , 從 而 高 效 地 輔 助 醫(yī) 生 進(jìn) 行 診 斷;
其 存 在 的 分 割 難 點(diǎn) 在 于:肺 結(jié) 節(jié) 體 積微小,與肺實質(zhì)中的血管等組織相似,且在 CT 圖 像 中 存 在 邊 緣 模 糊 、對 比 度 低 、灰 度 不 均 勻 等 問 題 , 容 易 受 到 噪 聲 和 偽 影 的 影 響 ,從 而 在 一 定 程 度 上 對 醫(yī) 生 的 診 斷 造 成 了 干 擾;
文章中舉例了Dense U-Net,Res U-Net,也有添加了Inception的U-Net,分割效果都不斷的優(yōu)化,同時最令我注意的是,其實很多分割存在著兩個階段,第一階段是粗分割,分割出大致區(qū)域或者是個數(shù),第二階段,精細(xì)分割,確定分割范圍,這個我沒接觸過,以后可以試一試;
同時文章中主要列舉了分割的改進(jìn)方法:
- 通 過 引 入 條 件 隨 機(jī) 場 能 夠 關(guān) 聯(lián) 不 同 像 素 之 間 的 關(guān) 系 ,對 邊 緣 模 糊 的 情 況 有 較 好 的 改 善 作 用 ;
- 通 過 引 入 密 集 連 接 或 構(gòu) 建 子 網(wǎng) 絡(luò) 模 塊 ,促 進(jìn) 多 尺 度 特 征 的 提 取 ,有 助 于 網(wǎng) 絡(luò) 對 不 同 尺 寸 肺 結(jié) 節(jié) 的 分 割 ,特 別 是 小 結(jié) 節(jié) 區(qū) 域 或 血 管 粘 連 部 位 ,但 這 會 在 一 定 程 度 上 增 加 網(wǎng) 絡(luò) 的 計 算 成 本 ;
- 引 入 空 間 注 意 力 模 塊 和 通 道 注 意 力 模 塊 有 助于增強(qiáng)特征提取的有效性以及網(wǎng)絡(luò)對不同尺度 特 征 的提取能力;
- 增 加 深 度 監(jiān) 督 機(jī) 制 能 夠 進(jìn) 一 步 優(yōu) 化 網(wǎng) 絡(luò) 的 分 割 性 能 ,在 一 定 程 度 上 減 少 假 陽 性 的 發(fā)生。
5.3 肝臟和肝臟腫瘤分割
實現(xiàn)肝臟精準(zhǔn)分割有助于肝段切除和肝移植 體積測量。因此這一塊主要說的是3D領(lǐng)域的分割;
其分割難點(diǎn)在于:肝臟和肝臟腫瘤在形狀和大小上 都 是 不 規(guī) 則 的 ,它 們 可 能 與 周 圍 的 器 官 比 較 相 似; 由 于 儀 器 設(shè) 備 參 數(shù) 不 同 ,CT 圖 像 間 的 灰 度 值 也 存 在 差 異 ,進(jìn) 而 肝 臟 所 顯 示 的 位 置 也 不 同 。
從文中介紹的三個網(wǎng)絡(luò)來看,增 加 三 維 條 件 隨 機(jī) 場 的 3D UNet-C2 能 夠 有 效 減 少 假 陽 性 ,剔 除 非 肝 臟 區(qū) 域 ,同 時 優(yōu) 化 肝 臟 邊 緣 的 分 割 效 果 。 BSU-Net 能 夠 更 好 地 控 制 形 狀 變 形 、減 少 假 陽 性 和 假 陰 性 ,從 而 驗 證 了 使 用 密 集 連 接 模 塊 及擴(kuò)展編碼路徑的有效性。LV-Net 通過使用深度 監(jiān)督機(jī)制使網(wǎng)絡(luò)在減少參數(shù)量的同時仍然具有較 好的分割表現(xiàn)。
5.4 腦腫瘤分割
MRI 是 一 種 典 型 的 非 侵 入 式 成 像 技 術(shù) ,能 夠 生 成 高 質(zhì) 量 的 無 損 傷 和 無 顱 骨 偽 影 的 腦 影 像 ,是 進(jìn) 行 腦 腫 瘤 診 療 的 主 要 技 術(shù) 手 段。
腦 腫 瘤 區(qū) 域 的 分 割 難 度 相 比 其 他 種 類 圖 像 的 分 割 難 度 更 大 ,不 同 的 腫 瘤 區(qū) 域 又 存 在 不 同 的 分 割 難 點(diǎn) 。 比 如 :
- 完 整 腫 瘤 區(qū) 域(WT)易 將 背 景 部 分 分 割 進(jìn) 來 ,造 成 過 分 割 ;
- 腫 瘤 核 心 區(qū) 域(TC)易 與 其 他 區(qū) 域 產(chǎn) 生 粘 連 ;
- 增 強(qiáng) 腫 瘤 區(qū) 域(ET)多 存 在 點(diǎn) 狀 、 不 連 續(xù) 的 細(xì) 小 腫 瘤 ,分 割 難 度 更 大 。
公開數(shù)據(jù)集是:BRATS,文章中提到了3D-HDC-UNet網(wǎng)絡(luò)結(jié)構(gòu),其中通過Dice 損失和 Focal 損失的混合損失函數(shù)替換原來單一的 Dice 損 失 函 數(shù) ,加 強(qiáng) 了 稀 疏 類 對 損 失 函 數(shù) 的 貢 獻(xiàn) ,提 高 了 腫瘤核心區(qū)域的分割精度;
從文章分析結(jié)果來看:
- 通過引 入 密 集 連 接 和 殘 差 連 接 能 夠 有 效 改 善 該 問 題 ,不 僅 能 更 加 細(xì) 致 地 分 割 出 腫 瘤 核 心 區(qū) 域 ,避 免 與 其 他 區(qū) 域 粘 連 ,同 時 對 分 割 難 度 最 大 的 增 強(qiáng) 腫 瘤 區(qū) 域也能夠很好地進(jìn)行分割;
- 包含剛性或仿射的變 形以及包括亮度和彈性變形的數(shù)據(jù)增強(qiáng)方法對全 部完整腫瘤和腫瘤核心區(qū)域分割的改善作用明 顯 ,但 對 增 強(qiáng) 腫 瘤 區(qū) 域 分 割 的 改 善 效 果 不 明 顯 ;
- 混合膨脹卷積的使用有助于對大區(qū)域的分 割 ,混 合 了 Dice 損 失 和 Focal 損 失 的 損 失 函 數(shù) 有 利 于 對 小 區(qū) 域 目 標(biāo) 的 識 別 ,同 時 對 分 割 難 度 較 大 的 腫瘤核心和增強(qiáng)腫瘤區(qū)域的識別也更加準(zhǔn)確。
5.5 不同應(yīng)用場景總結(jié)
不 同 類 型 的 疾 病 在 進(jìn) 行 診 斷 時 所 使 用 的 圖 像 略 有 不 同 ,比 如 視 網(wǎng) 膜 區(qū) 域 的 疾 病 往 往 通 過 眼 底 彩 色 圖 像 進(jìn) 行 診 斷 ,肺 結(jié) 節(jié) 和 肝 臟 腫 瘤 常 通 過 CT 圖 像 進(jìn) 行 診 斷 ,而 腦 腫 瘤 一般通過磁共振圖像進(jìn)行診斷。各部位的圖像具 有 各 不 相 同 的 特 點(diǎn) ,因 此 在 進(jìn) 行 圖 像 分 割 時 也 存 在 不 同 的 分 割 難 點(diǎn) 。 針 對 各 種 問 題 ,研 究 人 員 采 取 了 相 應(yīng) 的 改 進(jìn) 措 施 ,有 效 地 提 高 了 分 割 精 度 和 網(wǎng) 絡(luò) 性 能 。 根 據(jù) 上 述 內(nèi) 容 ,本 文 對 U-Net 及 其 改 進(jìn) 網(wǎng) 絡(luò) 在 各 類 疾 病 圖 像 分 割 中 的 相 關(guān) 應(yīng) 用 進(jìn) 行 了 總 結(jié) ,具 體如下:文章來源:http://www.zghlxwxcb.cn/news/detail-805160.html
6 總結(jié)
通 過 研 究 大 量 相 關(guān) 改 進(jìn) 工 作 可 以 看 出 ,U-Net 模 型 的 改 進(jìn) ,網(wǎng) 絡(luò) 結(jié) 構(gòu) 改 進(jìn) 中 ,殘 差 模 塊、Dense 模塊、Inception 模塊和 Attention 模塊是最 常 見 的 引 入 模 塊 ,這 些 模 塊 能 夠 使 網(wǎng) 絡(luò) 有 效 提 取 特 征 ,充 分 利 用 上 下 文 信 息 ,從 而 提 高 分 割 精 度 ;對 于 引 入 的 卷 積 來 說 ,擴(kuò) 張 卷 積 和 可 變 形 卷 積 最 為 常 見 ,它 們 能 夠 調(diào) 整 感 受 野 的 大 小 ,減 少 參 數(shù) 量 ,使 網(wǎng) 絡(luò) 可 以 利 用 不 同 層 次 的 特 征 ,從 而 有 效 避 免 過 擬 合;
非 結(jié) 構(gòu) 改 進(jìn) 對 網(wǎng) 絡(luò) 性 能 提 升 的 有 效 性 也 逐 漸 得 到 了 關(guān) 注 ,有 些 研 究 者 在 進(jìn) 行 網(wǎng) 絡(luò) 結(jié) 構(gòu) 改 進(jìn) 的 同 時 ,充 分 考 慮 了 數(shù) 據(jù) 增 強(qiáng) 和 數(shù) 據(jù) 歸 一 化 方 法 的 綜 合 運(yùn) 用 ,并 提 出 了 一 些 新 的 混 合 損 失 函 數(shù) ,有 針 對 性 地 訓(xùn) 練 網(wǎng) 絡(luò) ,從 而 提 升 了 網(wǎng) 絡(luò) 的 性 能;
自己的想法:文章來源地址http://www.zghlxwxcb.cn/news/detail-805160.html
- 是將其真正落地,做成接口嵌入到硬件中;
- 進(jìn)行半監(jiān)督和無監(jiān)督的網(wǎng)絡(luò)改進(jìn);
- 將Transformer引入到醫(yī)學(xué)圖像分割中;
到了這里,關(guān)于U-Net 模型改進(jìn)和應(yīng)用場景研究性綜述的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!