How to remove small portion in an image?

2 次查看(过去 30 天)
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 个评论
KSSV
KSSV 2017-6-5
If you have the locations of those highlighted images, cant you replace those pixel values with black?
Ahmad
Ahmad 2017-6-6
I want to do automatically. sunkara manoj code working perfectly but now I need to smoothen the boundaries.

请先登录,再进行评论。

采纳的回答

sunkara manoj
sunkara manoj 2017-6-5
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 个评论
Ahmad
Ahmad 2017-6-10
I never tried. I dont know the purpose of convex hull.

请先登录,再进行评论。

更多回答(0 个)

Community Treasure Hunt

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

Start Hunting!

Translated by