2013-05-17 2 views
2

XNA의 게임 개체에서 발견 된 윤곽을 매핑하려면 코너 위치를 CvBox2D (또는 MCvBox2D)으로 찾아야합니다. 나는 회전 각도의 정확한 번역에 문제가있다. 나는 이것이 일종의 기본적인 작동이라고 생각했지만 인터넷에서 어떤 해결책을 찾는다. OpenCV : CvBox2D의 모서리를 얻는 방법?

내가 시도 :

rotationAngle = box.angle * (180.0/ CV_PI); 
angle = box.angle; 
box.angle=rotationAngle; 
alien.X = box.center.X - box.Width/2; 
alien.Y = box.center.Y - box.Height/2; 
alien.angle=angle; 

하지만 제대로 번역되지 않았습니다.

누군가 이런 종류의 구조에서 모서리를 얻으려고 했습니까?

답변

2

는 EmguCV에서 당신은 boxMCvBox2D 경우

PointF[] corners = box.GetVertices(); 

를 호출해야합니다.

+0

감사합니다. 그것이 내가 필요한 것입니다! – ArturSkowronski

2

CvBox2D의 정점을 얻을 수있는 가장 간단한 방법은 RotatedRect로 변환하는 것입니다

CvBox2D box = ... 
cv::RotatedRect rr(box); 
cv::Point2f vertices[4]; 
rr.points(vertices); 
// vertices now has the four corners your seek 
관련 문제