【发布时间】:2021-08-07 22:46:42
【问题描述】:
我有 2 张如下图。我想有两个不同。
我尝试了一些带有阈值的代码。但没有门槛不同。两幅图像阈值图像全黑。我怎样才能使脱粒时的颜色与白色有所不同?
(区别就在左上角,像个小黑点)
before = cv2.imread('1.png')
after = cv2.imread('2.png')
threshb = cv2.threshold(before, 0, 255, cv2.THRESH_BINARY_INV)[1]
thresha = cv2.threshold(after, 0, 255, cv2.THRESH_BINARY_INV)[1]
cv.imshow("before",threshb)
cv.imshow("after",thresha)
不是:我使用“structural_similarity”link here 来寻找差异,但它发现了很多差异:(
我不需要小的像素差异。我需要人眼所见的差异。
【问题讨论】:
-
使用 cv2.absdiff()。见docs.opencv.org/4.1.1/d2/de8/…
-
它没有用。
-
显示您的估计中的“无效”。我建议使用 opencv 的背景减法模块,但这需要视频。 absdiff() 肯定可以解决这个问题。
-
当我对第一张和第二张图片使用 absdiff 时,结果都是黑色
标签: python image opencv difference threshold