how to get the (x,y) coordinate values of points touching bounding box
1 view (last 30 days)
Show older comments
I have a binary object
How can i get the (x,y) co-ordinate value of the points touching the bounding box.
0 Comments
Accepted Answer
KSSV
on 22 Mar 2018
I = imread('16.png') ;
[m,n] = size(I) ;
[y,x] = find(I) ;
% GEt mean
mx = mean(x) ; my = mean(y) ;
% Line 1
L1 = [repmat(mx,m,1) (1:m)'] ;
L2 = [(1:n)' repmat(my,n,1) ] ;
P = [L1(1,1) L1(1,2) ; L1(end,1) L1(end,2) ;L2(1,1) L2(1,2) ; L2(end,1) L2(end,2) ] ;
idx = knnsearch([x y],P) ;
imshow(I) ;
hold on
plot(x(idx),y(idx),'*r')
0 Comments
More Answers (1)
Stalin Samuel
on 22 Mar 2018
Edited: Stalin Samuel
on 22 Mar 2018
Let us assume that, you have the image(from bounding box) in variable "Elysi". Then you can get the co-ordinate values using below code
[x1 y1]=find( Elysi(1,:)==1)
[x2 y2]=find( Elysi(:,end)==1)
[x3 y3]=find( Elysi(end,:)==1)
[x4 y4]=find( Elysi(:,1)==1)
0 Comments
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!