我裁剪了一些灰色背景的图像,需要将它们转换为白色背景,以便与参考图像进行比较。我实现了以下代码转换:
import cv2 im_gray = cv2.imread('gray_bg.png', cv2.IMREAD_GRAYSCALE) (thresh, im_bw) = cv2.threshold(im_gray, 255, 255, cv2.THRESH_BINARY + cv2.THRESH_OTSU) cv2.imwrite('white_bg.png', im_bw) 在将我的输出与参考图像进行比较时,我得不到所需的输出。有人可以建议我怎么做吗?
避免颜色编码的变化达到最佳效果。这是代码:
im_gray = cv2.imread('gray_bg.png', cv2.IMREAD_UNCHANGED)
b, g, r = cv2.split(im_gray)
t = [None] * 3
u = [None] * 3
for i, im in enumerate([b, g, r]):
t[i], u[i] = cv2.threshold(im, 255, 255, cv2.THRESH_BINARY + cv2.THRESH_TRIANGLE)
dst = cv2.merge((*u,))
cv2.imwrite('white_bg.png', dst)
通过将它与原始数据进行比较,它给出了99.99%相等
如果你真的需要它,你可以将图像转换为灰度cv2.cvtColor(src, cv2.COLOR_BGR2GRAY)。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。