MATLAB Answers

How to filter objects based on size using"bwareafilt()" ?

조회 수: 28(최근 30일)
Dnyanesh Kanade
Dnyanesh Kanade 2015년 7월 5일
댓글: Saptadeepa Kalita 2020년 9월 24일
I want to remove only lung area shown in the image using function "bwareafilt"
The following code gives me error Undefined function 'bwareafilt' for input arguments of type 'double'.
fi=fopen('JPCLN001.img','r','b');
img=fread(fi,[2048 2048],'*uint16','b');
img1=mat2gray(img, [0,4096]);
img2=imrotate(img1,-90);
img2=flip(img2,2); %Horizantal Flip
%subplot(1,2,1);
figure,imshow(img2),title('Original');
img3=imcomplement(img2);
%subplot(1,2,2);
figure,imshow(img3),title('negative');
medf=medfilt2(img3,[3 3]);
%subplot(1,2,1);
figure,imshow(medf),title('Med_filtered');
img4=imadjust(medf);
%subplot(1,2,2);
figure,imshow(img4),title('Contrast1');
img5=histeq(img4);
%subplot(1,2,1);
figure,imshow(img5),title('Hist_Equa');
%level = graythresh(img5);
B = im2bw(img5,0.45);
figure,imshow(B);
%B1=logical(B);
BW2 = bwareafilt(B,2);
figure,imshow(BW2)

답변(3개)

KAE
KAE 2017년 8월 7일
It sounds like you do not have the Image Processing Toolbox, which includes the function bwareafilt.

Image Analyst
Image Analyst 2017년 8월 7일
You have the Image Processing Toolbox (otherwise imrotate would not have worked), but you have an antique version older than R2014b which is when bwareafilt() was introduced. Upgrade to the latest version or use bwareaopen() as an alternative.
By the way, your initial segmentation is really bad.
  댓글 수: 1
Saptadeepa Kalita
Saptadeepa Kalita 2020년 9월 24일
I am working on RVG dental xray. My aim is to detect the type of dental caries present. The problem i m facing is with the selecting region of interest from the xray( the only tooth which is affected). I would be glad if anyone can suggest me the way.

댓글을 달려면 로그인하십시오.


Mrutyunjaya Hiremath
Mrutyunjaya Hiremath 2020년 4월 24일
in your code, there is a code part as show below
img3=imcomplement(img2);
don't use that.
code works fine in 2014b.
Here, ROI part is Lung only.
  댓글 수: 1
Saptadeepa Kalita
Saptadeepa Kalita 2020년 9월 24일
I am working on RVG dental xray. My aim is to detect the type of dental caries present. The problem i m facing is with the selecting region of interest from the xray( the only tooth which is affected). I would be glad if anyone can suggest me the way.

댓글을 달려면 로그인하십시오.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by