Separating a group of higher intensity pixels in an image
Show older comments
I have an binary image in which only a particular group of pixels are my area of interest. I want to separate these higher intensity group of pixels in a new figure of want to differentiate them with a different color. How can I do it? Please have a look at the link for clarification
Answers (3)
Sean de Wolski
on 19 Mar 2011
I would do an:
cirx = imfill(bw, 'holes');
on your circles. Then do a logical AND on this to get the areas inside the circles that are also white. Then maybe bwlabel to color them. I.e:
both = BW&cirx;
L = bwlabel(both);
imshow(label2rgb(L));
Sean de Wolski
on 20 Mar 2011
Then use:
bwareaopen
to remove small blobs.
6 Comments
Niranjan
on 20 Mar 2011
Niranjan
on 20 Mar 2011
Sean de Wolski
on 20 Mar 2011
what is the result when you type:
size(BW);
is it [something, something, 3]?
Niranjan
on 20 Mar 2011
Niranjan
on 20 Mar 2011
Sean de Wolski
on 20 Mar 2011
So you have all 3-dimensions of your rgb image binarized.
The easiest way to view it would just be to do:
imshow(uint8(bwAreaOpenBW)*255);
But I get the feeling that you're not understanding everything going on under the hood. Do you want a convert your rgb image to gray scale and then do the logical/morphological operations on them? Do you want to binarize all three dimensions (as you have) and then come up with some criteria based on that e.g. if true in two planes leave true, else no. Etc....
pratibha rane
on 10 Apr 2013
0 votes
Code: BW = imread('E:\ProjectCode\45.jpg');%Binary image BW2 = bwareaopen(BW, 24); figure,imshow(BW2)
Error: Error using ==> imageDisplayParseInputs>validateCData at 291 If input is logical (binary), it must be two-dimensional.
I want to highlight only object area with white color
Categories
Find more on Image Type Conversion in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!