基于聚類的分割方法是以統計學為基礎提出的一種分割方法。其實質是通過計算像素與每一類聚類中心的歐氏距離來判定像素與每一類聚類中心的相似性,距離近就說明像素與聚類中心相似性大,反之相似性小。基于一定標準下的相似性自動劃分成若干個子集(類),使得相似度大的像素劃分為相同的組織類,反之劃分成不同的組織類。其聚類過程中不使用樣本任何的先驗信息,是一種非監督分類方法。
模糊聚類算法是目前聚類算法研究中應用最廣泛的算法之一。該方法利用隸屬度函數給出樣本對于類別的不確定程度,符合現實世界中事物所具有的亦此亦彼特性,進而實現聚類。因此,模糊聚類分析更能客觀地反映現實世界,成為解決聚類問題有力的分析工具。該算法較適用于模糊圖像的分割,但傳統的模糊聚類算法存在一個缺點就是未充分利用圖像像素所提供的信息。
腦部圖像分割是基于MRI和一定標準下的相似性,將MRI中較相似的像素劃分為相同的組織類,相似度小的像素劃分為不同的組織類。模糊c-均值聚類FCM算法是目前應用最廣泛的MRI圖像分割算法,該算法在分割無噪聲或者噪聲含量極低的圖像時可以取得較好的效果。但是醫學MRI圖像由于自身成像技術缺陷使得圖像較易受噪聲等多種因素影響。而傳統FCM算法在聚類分割過程中未充分考慮圖像像素的空間信息,僅考慮了像素點的灰度信息使得醫學圖像噪聲含量超過一定量后,若仍使用傳統模糊聚類分割算法進行分割,會導致分割效果受噪聲影響較大。
為解決上述缺陷,不少學者對FCM算法進行了改進。部分學者引入像素鄰域信息到模糊聚類分割算法的目標函數中,提高算法抗噪性,以獲得較好的分割效果。本項目將偏置場校正引入FCM算法,提出一種偏置場校正的改進模糊c-均值聚類圖像分割算法,運行環境為MATLAB R2018A。部分代碼如下:
Load the data
DATA_PATH = "data/data.mat";
data = load(DATA_PATH, "-mat");
img = data.imageData;
mask = data.imageMask;
imshow(img);
title("Corrupted Image");
saveas(gcf, "plots/corrupted.jpg", "jpg");
% We only need to segment inside the brain, the background-foreground
% segmentation is already provided by the mask
imshow(mask);
title("Image Mask");
saveas(gcf, "plots/mask.jpg", "jpg");
出圖如下:
完整代碼:MATLAB環境下基于偏置場校正的改進模糊c-均值聚類圖像分割算法(MATLAB R2018A)
工學博士,擔任《Mechanical System and Signal Processing》審稿專家,擔任《中國電機工程學報》優秀審稿專家,《控制與決策》,《系統工程與電子技術》,《電力系統保護與控制》,《宇航學報》等EI期刊審稿專家。
擅長領域:現代信號處理,機器學習,深度學習,數字孿生,時間序列分析,設備缺陷檢測、設備異常檢測、設備智能故障診斷與健康管理PHM等。