如何使用cv :: boxPoints(RotatedRect框,OutputArray点)

时间:2017-02-24 22:06:31

标签: c++ opencv

我尝试了以下内容:

public Form(String[] webForm){
    System.arraycopy(webForm, 0, this.webForm, 0, webForm.length);
}

boxPoints函数似乎不喜欢Point2f的向量。它想要什么样的OutputArray?

3 个答案:

答案 0 :(得分:0)

似乎cv::boxPoints()需要cv::Mat作为OutputArray

行是4个点,两列是x和y。

答案 1 :(得分:0)

Mat作为 OutputArray

RotatedRect minRect = minAreaRect(contour);
Mat boxPts;
boxPoints(minRect, boxPts);
cout << boxPts.size() << endl;
cout << "boxPts " << endl << " " << boxPts << endl;

框的顺序指向:左下,左上,右上,右下

答案 2 :(得分:0)

一个人也可以使用RotatedRect.points,它与Point2f[]配合使用,如下所示:

RotatedRect minRect = minAreaRect(contour);
vector<Point2f> boxPts(4);
minRect.points(boxPts.data());