-1

我试图在应用过滤器后保存图像,但在我的磁盘上保存操作后我没有dst_1,但是img

img = cv2.imread(images[14], 1)
kernel = np.ones((5,5), np.float32)/25
dst_1 = cv2.filter2D(img, -1, kernel)
cv2.imwrite("path/f.jpg", dst_1)

当我imshow在应用过滤器后使用时,我看到了我期望看到的 - 过滤后的图像。有谁知道,这种imwrite行为的原因是什么或我的错误在哪里?

4

1 回答 1

0

我相信问题不在于您保存文件的方式,而在于您的过滤器没有按照您认为的那样做,因此它看起来与您正在保存的图像没有什么不同。

OpenCV以BGR格式打开图像,您在评论中显示的第二张图像是相同的图像,但是在RGB格式中,OpenCV有一个功能可以为您做到这一点,所以请尝试以下代码:

import cv2
import numpy as np 

img = cv2.imread(images[14], 1)
dst_1 = cv2.cvtColor(img, cv2.COLOR_BGR2RGB)
cv2.imwrite("path/f.jpg", dst_1)

这应该可以实现您正在寻找的输出,希望对您有所帮助!

于 2017-09-14T16:11:50.977 回答