这是我的代码
img_original=cv2.imread("sudoku-original.jpg",0)
cv2.imshow("original",img_original)
laplacian = cv2.Laplacian(img_original,cv2.CV_64F)
cv2.imshow("laplace",laplacian)
我想要文档中的结果,但它不是。
答案 0 :(得分:1)
laplacian = cv2.Laplacian(img_original,cv2.CV_64F)
上面一行暗示图像的格式是CV_64F,它是一个浮点值数组。因此,当您使用cv2.imshow()函数时,它的工作方式如下:大于1.0的值将是白色像素,小于0.0的值将是黑色。
因此您需要将其转换为CV_8U。有很多方法可以做到, 我一般用这个:
laplacian = cv2.Laplacian(img,cv2.CV_64F)
ret,thresh = cv2.threshold(laplacian,0,255.0,cv2.THRESH_TOZERO)
laplacian8 = np.uint8(laplacian)
cv2.imshow('sud',laplacian8)
这给了我结果:
检查this链接以了解有关该问题的更多信息。