How to remove small portion in an image?

1 Ansicht (letzte 30 Tage)
Ahmad
Ahmad am 5 Jun. 2017
Kommentiert: Ahmad am 10 Jun. 2017
I am segmenting liver from CT data. Its 2d segmentation on multiple imaging. I trained my system using deep learning method. Now the results of segmentation are as follows...
I want to remove the circle parts from my image. I already tried bwareaopen() function from matlab. Using bwareaopen() function I got the whole image white. please help me.
Thanks
  2 Kommentare
KSSV
KSSV am 5 Jun. 2017
If you have the locations of those highlighted images, cant you replace those pixel values with black?
Ahmad
Ahmad am 6 Jun. 2017
I want to do automatically. sunkara manoj code working perfectly but now I need to smoothen the boundaries.

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

sunkara manoj
sunkara manoj am 5 Jun. 2017
the result is a binary image but the part is extracted.
if true
I=imread('liver.png');
im = imclearborder(im2bw(I));
im_fill = imfill(im, 'holes');
s = regionprops(im_fill, 'Area', 'PixelList');
[~,ind] = max([s.Area]);
pix = sub2ind(size(im), s(ind).PixelList(:,2), s(ind).PixelList(:,1));
out = zeros(size(im));
out(pix) = im(pix);
imshow(out); end
  3 Kommentare
KSSV
KSSV am 6 Jun. 2017
How about using convexhull?
Ahmad
Ahmad am 10 Jun. 2017
I never tried. I dont know the purpose of convex hull.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Community Treasure Hunt

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

Start Hunting!

Translated by