【发布时间】:2015-07-12 23:42:18
【问题描述】:
您好,我一直在尝试使用 OpenCV 识别手签名(数字)。我遇到了一个问题,即 1 和 2 显示相同数量的凸面缺陷。 我认为我可以纠正这个问题的一种方法是绘制一个最小边界矩形......并找到凸包面积与边界矩形面积的比率。 但是我不知道如何做到这一点。
vector<vector<Point>> hull;
我感兴趣的船体的索引是 k;
如何为这个凸包绘制一个旋转的矩形?
【问题讨论】:
您好,我一直在尝试使用 OpenCV 识别手签名(数字)。我遇到了一个问题,即 1 和 2 显示相同数量的凸面缺陷。 我认为我可以纠正这个问题的一种方法是绘制一个最小边界矩形......并找到凸包面积与边界矩形面积的比率。 但是我不知道如何做到这一点。
vector<vector<Point>> hull;
我感兴趣的船体的索引是 k;
如何为这个凸包绘制一个旋转的矩形?
【问题讨论】:
// Assuming
// vector<vector<Point>> hull;
// Mat3b frame;
if((k >= 0) && (k < hull.size()) && (!hull[k].empty()))
{
RotatedRect rotated = minAreaRect(hull[k]);
Point2f rect_points[4];
rotated.points( rect_points );
for( int j = 0; j < 4; j++ ) {
line( frame, rect_points[j], rect_points[(j+1)%4], Scalar(255,0,0), 1, 8 );
}
}
【讨论】: