新手在这里!我试图在图像上应用滤镜,我想在两个窗口中显示原始和过滤的图像。我对结果的问题是,即使我仅将修改后的频道应用于img_2,原始图像(img_1)也会被过滤。我知道如果在合并img_2的频道之前触发img_1 imsh_1,那就没关系了。我仍然感到困惑的是,即使过滤器应用于img_2,为什么img_1会被更改。
import cv2
img_1 = cv2.imread('C:/xxxx')
img_2 = img_1
b,g,r = cv2.split(img_2)
cv2.addWeighted(b, 0.5, g, 0.5, 0, b)
cv2.merge((b,b,r), img_2)
cv2.imshow('Original', img_1)
cv2.imshow('Filtered with RC', img_2)
cv2.waitKey()
cv2.destroyAllWindows()
答案 0 :(得分:0)
他们引用与您编写img_2 = img_1
相同的图像。
您可以通过这种方式复制图像以获得所需的输出:img_2 = img_1.copy()