图像中文本的边界框

时间:2016-04-25 16:09:32

标签: python opencv

我正在尝试按照以下答案:Extract all bounding boxes using OpenCV Python

with the code:
    def tt(self, img):
        img = np.array(img)
        gray=cv2.cvtColor(img,cv2.COLOR_BGR2GRAY)
        contours,hierarchy = cv2.findContours(gray,cv2.RETR_LIST,cv2.CHAIN_APPROX_SIMPLE)
        idx =0 
        for cnt in contours:
            idx += 1
            x,y,w,h = cv2.boundingRect(cnt)
            roi=img[y:y+h,x:x+w]
            #cv2.imwrite(str(idx) + '.jpg', roi)
            #cv2.rectangle(im,(x,y),(x+w,y+h),(200,0,0),2)
        cv2.imshow('img',img)
        cv2.waitKey(0)  


d = opcv()

im = Image.open(r"ss.JPG")
d.tt(im)

但是我得到ValueError: too many values to unpack (expected 2)我没有找到运气的原因。

我正试图获取此图片的边界框: enter image description here

1 个答案:

答案 0 :(得分:2)

带有附加参数的findCountours的新定义,尝试在代码中交换行:

_, contours,hierarchy =cv2.findContours(gray,cv2.RETR_LIST,cv2.CHAIN_APPROX_SIMPLE)

cf:http://docs.opencv.org/3.1.0/d4/d73/tutorial_py_contours_begin.html#gsc.tab=0