我想在黑色 IplImage 中绘制一个任意角度的白色填充多边形。我知道存在诸如 createCircle 之类的功能,但我找不到与多边形类似的东西。我找到 了这个,但它的使用很糟糕,我的意思是我不应该仅仅为了在黑色背景上绘制一个简单的白色多边形而进入这个......!
我在 OpenCV 文档中找到的示例:
void MyPolygon( Mat img )
{
int lineType = 8;
/** Create some points */
Point rook_points[1][20];
rook_points[0][0] = Point( w/4.0, 7*w/8.0 );
rook_points[0][1] = Point( 3*w/4.0, 7*w/8.0 );
rook_points[0][2] = Point( 3*w/4.0, 13*w/16.0 );
rook_poi /*** blablabla **/
rook_points[0][19] = Point( w/4.0, 13*w/16.0) ;
const Point* ppt[1] = { rook_points[0] };
int npt[] = { 20 };
fillPoly( img,
ppt,
npt,
1,
Scalar( 255, 255, 255 ),
lineType );
}
基本上,我的问题是,如何将 CvBox2D 放入 fillPoly 中,从中获取蒙版并最终设置我需要的“带角度的 ROI”?