【发布时间】:2023-03-21 04:28:01
【问题描述】:
有人可以解释为什么 OpenCV imshow 和 imwrite 函数似乎会产生完全不同的图像吗?
第一张图片对应imshow,第二张图片对应imwrite。
Result 是一个 0 到 255 之间的浮点值数组。
**result = result.astype(np.uint8)**
cv2.imshow('img', result)
cv2.imwrite('img.png', result)
【问题讨论】:
-
1 拍了第一张照片并尝试了,我得到了两者的第一张照片(但我在这里使用 opencv3.0)
-
我使用 Python 3.3 版
-
你使用的是哪个opencv版本?它是使用opencv的png库还是系统中的东西?试试:cv2.getBuildInformation()
-
imwrite 根本不处理浮动图像。
-
result.astype(np.uint8)不会更改结果对象。您需要将该操作的返回值分配给某物。