需要帮助检测多个blob

时间:2015-06-07 20:24:59

标签: matlab image-processing

我已经在一系列Dicom图像上应用了阈值处理,现在我的问题是我有不同的blob,面积为50,315,1054,22724,我想要显示多个blob,对于一个blob它工作正常但是当区域被设置为检测多个blobs它给出一个错误矩阵尺寸必须一致。 这里是matlab代码

LB = 1050;
UB = 22724;
L = bwlabeln(bw);
stats = regionprops(L,'Area','Centroid');
A = [stats.Area]
mul_blob = find(A >= LB & A<=UB) ;
mriAdjust(L  ~= mul_blob) = 1; %mriAdjust is stack of dicom images 
imA = imadjust(mriAdjust(:,:,17));
imshow(imA) `

1 个答案:

答案 0 :(得分:0)

如果要使用区域(或其他regionproperties)进行过滤,可以使用bwpropfilt函数。在那里,您可以根据不同的标准(也是区域)过滤您的BW图像。

LB = 1050;
UB = 22724;
bwFiltered = bwpropfilt(bw, 'Area', [LB, UB]);
imshow(bwFiltered);

http://ch.mathworks.com/help/images/ref/bwpropfilt.html