我正在使用opencv做一个项目。我想从网络摄像头检测形状。我已经通过编辑 square.c 成功检测到正方形,现在我想使用 square.c 来检测三角。
是否可以从 square.c 中检测三角形?我必须添加或修改哪个部分?
编辑
我试过添加这个代码:
else if ( result->total == 3 &&
fabs ( cvContourArea(result, CV_WHOLE_SEQ)) > 1000 &&
cvCheckContourConvexity(result))
{
s = 0;
for (int i = 0; i < 3; i++)
{
if (i >= 1)
{
t = fabs( angle(
(CvPoint*)cvGetSeqElem(result, i),
(CvPoint*)cvGetSeqElem(result, i-1),
(CvPoint*)cvGetSeqElem(result, i-2)));
s = s > s ? s : t;
}
}
}
但结果是,在正方形上检测到的三角形..