How obtain coordinates of pixels within bwboundaries for each object?
6 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Suppose I have an image
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/214353/image.png)
and then I use the code below
I=imread("image.bmp");
imshow(I); hold on; [B,L,N] = bwboundaries(I);
for k=1:length(B),
boundary = B{k};
plot(boundary(:,2), boundary(:,1),'.r')
end
The boundaries then look like
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/214354/image.png)
However, I don't just want the x,y coordinates of each pixel ON the boundaries. I also want the x,y coordinates of each pixel INSIDE the boundaries also. That is, I want to store the row/column numbers for each object in separate matrices. So I want a matrix `A1` that should store the row/column numbers for the white pixels in the big object, and a matrix `A2` that should store the row/column numbers for the white pixels in the circular object
Is there a way to do this in Matlab?
1 Kommentar
Antworten (1)
KALYAN ACHARJYA
am 17 Apr. 2019
Bearbeitet: KALYAN ACHARJYA
am 17 Apr. 2019
Code for find the pixels of two withe segmented objects
(Larger is object1 and circular object2)
%Image raed, ensure that image_bw is the binary image
image_bw=im2bw(rgb2gray(imread('image5.png')));
%Extration largest 1 blob only
object1=bwareafilt(image_bw,1);
% Find the rows and colums of object1
[rows_obj1,rows_obj1]=find(object1);
% Find second object
object2=image_bw & imcomplement(object1);
[rows_obj2,cols_obj2]=find(object2);
% Now use the rows_obj1 & rows_obj1 as you want
% Also rows_obj2 & cols_obj2
matrix_A1=[rows_obj1 rows_obj1];
matrix_A2=[rows_obj2 rows_obj2];
![77.png](https://www.mathworks.com/matlabcentral/answers/uploaded_files/214450/77.png)
2 Kommentare
KALYAN ACHARJYA
am 17 Apr. 2019
As you asked for individual matrices for each segmented part(blobs), any image having more number of segmented blobs, you must separate indivually and apply the same.
Siehe auch
Kategorien
Mehr zu Computer Vision with Simulink finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!