使用OpenCV的函数minEllipse()求轮廓的外接椭圆时一定要判断构成轮廓的点个数是否大于5个

使用OpenCV的函数minEllipse()求轮廓的外接椭圆时一定要判断构成轮廓的点个数是否大于5个,如果不判断,是要报错的,如下图所示

使用OpenCV的函数minEllipse()求轮廓的外接椭圆时一定要判断构成轮廓的点个数是否大于5个_第1张图片

OpenCV Error: Incorrect size of input array (There should be at least 5 points to fit the ellipse) in cv::fitEllipse, file C:\builds\master_PackSlave-win32-vc11-shared\opencv\modules\imgproc\src\shapedescr.cpp, line 379

正确的示例代码如下

 // 求轮廓的外接椭圆  
        if (contours[i].size() > 5) //使用前一定要判断是否大于5个点,小于5个点要报错  
        {  
            minEllipse[i] = fitEllipse(Mat(contours[i]));  
        }  

你可能感兴趣的:(图像处理原理,工具,代码,minEllipse,外接椭圆)