曼查克 发表于 2021-1-15 11:42:16

opencv绘制轮廓的疑问?

def contour():
    img_misaka_rgb = cv2.imread(r'D:\image\bilibili2.jpeg', cv2.IMREAD_COLOR)
    img_misaka_gray = cv2.cvtColor(img_misaka_rgb, cv2.COLOR_BGR2GRAY)
    ret, thresh = cv2.threshold(img_misaka_gray, 200, 255, 0)
    #cv2.imshow('thresh', thresh)
    image, contours, hierarchy = cv2.findContours(thresh, cv2.RETR_TREE, cv2.CHAIN_APPROX_NONE)
    #cv2.imshow('thresh2', thresh)
    #cv2.imshow('image', image)
    misaka_contour = cv2.drawContours(img_misaka_rgb, contours, -1, (0, 255, 0), 3)
    image2, contours2, hierarchy2 = cv2.findContours(thresh, cv2.RETR_TREE, cv2.CHAIN_APPROX_SIMPLE)
    misaka_contour2 = cv2.drawContours(img_misaka_rgb, contours2, -1, (0, 255, 0), 3)

misaka_contour 和misaka_contour2show出来的轮廓居然是一样的,很奇怪但是找了很久没有找到原因。
百度有看到cv2.findContours方法会改变原图但show出来后也没发现什么变化。

求解答,感谢!

曼查克 发表于 2021-1-15 11:46:50

刚刚试了一下cv2.drawContours居然会改变原图。。。
但是findContours是否会修改原图还未确认。
页: [1]
查看完整版本: opencv绘制轮廓的疑问?