How to remove unconnected regions from image

1 回表示 (過去 30 日間)
Sidra Aleem
Sidra Aleem 2017 年 3 月 17 日
コメント済み: Image Analyst 2017 年 3 月 19 日
Hello
I am doing project "Persons identification on the basis of retinal vessels". I am working on the part of segmentation of blood vessels. I have read some relevant papers to implement segmentation process. However segmentation is not giving good results with majority of my images. I have to get good segmentation result for all the images. Some of papers I read are: <http://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=6965041> I also used information on the link https://www.mathworks.com/matlabcentral/answers/113073-how-to-remove-unconnected-pixels-or-objects-from-an-image and solved some problems using bwareafilt() and bwareaopen(). Below is my one of the input image with which segmentation is not good at all. Please help me with this. I also attached my .m file. Thanks in advance.
  5 件のコメント
Sidra Aleem
Sidra Aleem 2017 年 3 月 19 日
I contacted doctor who provided me data set. She said that some of the images are effected by catract and mayopia. So its natural anatomical structure.
Image Analyst
Image Analyst 2017 年 3 月 19 日
What is she hoping that you can visualize or measure that she can't see without you? Is she willing to manually trace or outline things?

サインインしてコメントする。

回答 (1 件)

sam  CP
sam CP 2017 年 3 月 17 日
You can refer the following code..
binaryImage = bwareafilt(binaryImage, 2); % Extract 2 largest blobs. % Erode it a little with imopen(). figure, imshow(binaryImage,[]);title('bwareafilt2'); binaryImage = imopen(binaryImage, true(5)); figure, imshow(binaryImage,[]);title('imopen');
binaryImage = bwareafilt(binaryImage, 1); % Extract largest blob. figure, imshow(binaryImage,[]);title('bwareafilt1'); % Fill any holes in the lagest blob. binaryImage = imfill(binaryImage, 'holes'); figure, imshow(binaryImage,[]);title('imfill'); % Dilate mask out a bit in case we've chopped out a little bit of largest blob. binaryImage = imdilate(binaryImage, true(5)); figure, imshow(binaryImage,[]);title('imdilate');
% Display the final binary image.
figure, imshow(binaryImage, []);title('Final binary image');
%===========================================================================================================
  1 件のコメント
Sidra Aleem
Sidra Aleem 2017 年 3 月 17 日
No that dint work for me.

サインインしてコメントする。

カテゴリ

Help Center および File ExchangeConvert Image Type についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by