MATLAB Answers

0

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

Elysi Cochin 님이 질문을 제출함. 22 Mar 2018
최근 활동 Elysi Cochin 님이 편집함. 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.

  댓글 수: 0

로그인 to comment.

답변 수: 2

KSSV 님의 답변 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

로그인 to comment.


Stalin Samuel 님의 답변 22 Mar 2018
Stalin Samuel 님이 편집함. 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

로그인 to comment.



Translated by