how to get the (x,y) coordinate values of points touching bounding box

1 vue (au cours des 30 derniers jours)
Elysi Cochin
Elysi Cochin le 22 Mar 2018
Modifié(e) : Elysi Cochin le 22 Mar 2018
I have a binary object
How can i get the (x,y) co-ordinate value of the points touching the bounding box.

Réponse acceptée

KSSV
KSSV le 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')

Plus de réponses (1)

Stalin Samuel
Stalin Samuel le 22 Mar 2018
Modifié(e) : Stalin Samuel le 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)

Catégories

En savoir plus sur Simulink dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by