我有一个矩形,我想从给定的图像中提取它的椭圆形状。我的代码如下:
RotatedRect ellipse ;
float p1 = (float) rect.width/2 + rect.x;
float p2 = (float) rect.height/2 + rect.y;
CvPoint2D32f p = cvPoint2D32f(p1,p2);
ellipse.center = p;
ellipse.angle = 0;
ellipse.size = cvSize2D32f((float)rect.width, (float)rect.height);
ellipse( image_colored, minEllipse, CV_RGB(255,255,255), 2, 8 );
此代码的输入是:图像(image_colored)和CvRect(rect)。最后一行代码在“image_colored”中绘制一个白色椭圆,但我希望在另一个图像中裁剪生成的椭圆,或者只是将图像的其余部分用黑色着色。
任何帮助,将不胜感激。谢谢。
PS:我不能像在link中那样使用函数cvEllipse(...)。 因为cvEllipse不接受CvPoint2D32f类型的对象,所以CvSize2D32f都不是类型。
答案 0 :(得分:2)
制作带有填充椭圆的图像,并将其用作与图像OpenCV bitwise_and + mask或Segmenting Lungs and nodules in CT images
组合(按位和)的蒙版