2015-10-31 171 views
0

這裏我找到了找到橢圓的所有x,y座標的方法,但我需要座標和角度值。如何使用擬合橢圓函數及其角度獲取座標點(opencv)

代碼

cv::Mat binaryImg; 
cv::threshold(grayImg, binaryImg, 100, 255, cv::THRESH_BINARY); 
std::vector<std::vector<cv::Point> > contours; 
findContours(binaryImg, contours, CV_RETR_TREE, CV_CHAIN_APPROX_NONE); 
for(size_t i = 1; i < contours.size(); i++) { 
std::vector<CvPoint> points; 
if(contours[i].size() >= 5) { 
cv::RotatedRect Ellipse = fitEllipse(contours[i]); 
majoraxis = Ellipse.size.height; 
minoraxis = Ellipse.size.width; 
angle = Ellipse.angle; 
xcenter=Ellipse.center.x; 
ycenter=Ellipse.center.y; 
for(unsigned int i=0;i<contours.size();i++){ 
    for(unsigned int j=0;j<contours[i].size();j++) 
    { 
     cout << "Point(x,y)=" << contours[i][j].x << "," << contours[i][j].y << endl; 

    }} 

這裏我的形象

here my image 上面的代碼找到輪廓的X,Y座標點,但我需要的角度中心point.And它們的座標點

回答

0

你可以使用內建函數ellipse2Poly()

相關問題