在CT图像中分割肺和结节 [英] Segmenting Lungs and nodules in CT images
问题描述
我是Matlab中图像处理的新手,我试图从CT图像中分割LUNG和结节。我已经完成了初始图像增强。
I am new with Image processing in Matlab, I am trying to segment LUNG and nodules from CT image. I have done initial image enhancement.
我搜索了相同但我没有找到任何相关资料。
I searched lot on the same but I haven't found any relevant materials.
尝试从给定图像中分割肺部分;然后检测肺部的结节。
Trying to segment lung part from the given image; and then detecting nodules on Lung part.
我在Matlab中尝试的代码:
Code I tried in Matlab:
d1 = dicomread('000000.dcm');
d1ca = imadjust(d1);
d1nF = wiener2(d1ca);
d1Level = graythresh(d1nF);
d1sBW = im2bw(d1nF,d1Level);
sed = strel('diamon',1);
BWfinal = imerode(d1sBW,sed);
BWfinal = imerode(BWfinal,sed);
BWoutline = bwperim(BWfinal);
Segout = d1nF;
Segout(BWoutline) = 0;
edgePrewitt = edge(d1nF,'prewitt');
上述代码的结果:
< img src =https://i.stack.imgur.com/tX547.pngalt =在此输入图像说明>
想要这样的结果:
http://oi41.tinypic.com/35me7pj .jpg
http:// oi42.tinypic.com/2jbtk6p.jpg
http://oi44.tinypic.com/w0kthe.jpg
http://oi40.tinypic.com/nmfaio.jpg
http://oi41.tinypic.com/2nvdrie.jpg
< a href =http://oi43.tinypic.com/2nvdnhk.jpg =noreferrer> http://oi43.tinypic.com/2nvdnhk.jpg
我知道专家可能很容易。请帮帮我。
I know its may be easy for experts. Please help me out.
谢谢!
推荐答案
试试这个:
% dp6BK.png is your original image, I downloaded directly
I = im2double(imread('dp6BK.png'));
I=I(:,:,1);
imshow(I)
cropped = I(50:430,8:500); %% Crop region of interest
thresholded = cropped < 0.35; %% Threshold to isolate lungs
clearThresh = imclearborder(thresholded); %% Remove border artifacts in image
Liver = bwareaopen(clearThresh,100); %% Remove objects less than 100 pixels
Liver1 = imfill(Liver,'hole'); % fill in the vessels inside the lungs
figure,imshow(Liver1.*cropped)
您会得到什么:
这篇关于在CT图像中分割肺和结节的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!