OpenCV错误:使用findContours()方法时格式不受支持

时间:2016-02-18 03:55:53

标签: opencv image-processing opencv3.0

我正在尝试预处理我的图像,以便最终我可以从预处理的图像中找到轮廓。

img = cv2.imread('image.jpg',0)
img = cv2.copyMakeBorder(img, 50, 50, 50, 50, cv2.BORDER_CONSTANT)   
sobely = cv2.Sobel(img,cv2.CV_64F,0,1,ksize=5)
_,contours, hierarchy = cv2.findContours(sobely,cv2.RETR_TREE,cv2.CHAIN_APPROX_SIMPLE)

它给我一个错误说明: OpenCV错误:不支持的格式或格式组合([Start] FindContours仅在模式时支持CV_8UC1图像!= CV_RETR_FLOODFILL,否则仅支持CV_32SC1图像)cvStartFindContours

我使用的是opencv3.0

1 个答案:

答案 0 :(得分:1)

非常直接。您的图像应该是理想的二进制和CV_8UC1。您必须将图像转换为CV_8UC1格式才能处理轮廓。轮廓不支持CV_64F双重类型。