【问题标题】:Variable Assignment - OpenCV/Python [duplicate]变量赋值 - OpenCV/Python [重复]
【发布时间】:2017-12-18 21:27:35
【问题描述】:

新手来了!我正在尝试对图像应用过滤器,并且我想在两个窗口中显示原始图像和过滤后的图像。我遇到的结果问题是,即使我仅将修改后的通道应用于 img_2,原始图像 (img_1) 也会被过滤。我知道如果我在合并 img_2 的通道之前触发 img_1 的 imshow 就可以了。即使将过滤器应用于 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()

【问题讨论】:

    标签: python-3.x opencv opencv3.0


    【解决方案1】:

    它们引用的图片与您写的 img_2 = img_1 相同。 您可以通过这种方式复制图像以获得所需的输出:img_2 = img_1.copy()

    【讨论】:

      猜你喜欢
      • 2013-09-13
      • 2014-05-06
      • 1970-01-01
      • 2015-03-21
      • 1970-01-01
      • 2013-03-31
      • 2017-07-01
      • 2011-10-11
      • 2016-02-03
      相关资源
      最近更新 更多