1、读取图片的灰度图和彩色图:img1 = cv2.imread('0.png',0)img10 = cv2.imread('0.png')灰度图如下:
2、转化为二值图像:_,th = cv2.threshold(img1,200,255,0)
3、从二值图像里面检测轮廓:_,contours,_ = cv2.findContours(th,2,1)所有的轮廓数据,都保存在contours里面,然后在彩色图片里面画出所有的轮廓:for c in contours[1:]: cv2.drawContours(img10,[c],0,(0,0,255),2)注意看,图片本身就有一个轮廓,就是图片的整体的边界。
4、绘制每一个轮廓的最小外接矩形:
5、绘制横平竖直的外接矩形:
6、绘制外接圆:
7、用轮廓数据拟合椭圆: