Get the pixel index value of a particular area of an image
18 次查看(过去 30 天)
显示 更早的评论
Hi, here is my sudo code.
im=imread('myImage');
B=im2bw(im);
label=bwlabel(C);
max(max(label));
for j=1:max(max(label))
%%%%%The answer code goes here %%%%%%
end
As I mentioned in the code I am going to convert the RGB image into black and white image and then labels it.Just I want is the how to get the index value of pixels of each labeled area in to arrays separately. According to my image there are five labels and I want to get index values of pixels in each labeled areas in to five arrays. thanx !
0 个评论
采纳的回答
Image Analyst
2017-3-5
You don't need to do max(max(label)) because that just gives the number of regions, but has to scan every pixel in the image to do it, and you can get it directly from bwlabel:
[labeledImage, numberOfRegions] = bwlabel(B);
I have no idea what your "C" was.
And I don't know your definition of the "index value of each pixel". Is that the value of the labeled image at that point? Is it the (row, column) location of each non-zero pixel? Or something else? Why do you need it anyway? Why is the binary or labeled images not enough?
2 个评论
Image Analyst
2017-3-5
For example, to get the rows and columns of blob #7 of the labeled image:
[rows, columns] = find(labeledImage == 7);
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Computer Vision with Simulink 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!