繁体   English   中英

OpenCV和Python:如何使用二进制掩码降低亮度?

[英]OpenCV & Python: How to decrease brightness using binary mask?

我想根据边缘检测到的第二张图像的遮罩使一张图像变暗。

图片1:原始(灰度)图片

在此处输入图片说明

图片2:检测到边缘(用作遮罩)

在此处输入图片说明

图3:显示cv2.subtract处理的失败示例

在此处输入图片说明

失败的示例(图像3)中,我从原始图像中减去了白色像素(255),但我要基于边缘检测图像的遮罩来使原始图像暗淡

在本文中: 如何使用python + OpenCV快速更改图像亮度? ,比尔·盖茨(Bill Gates)介绍了他如何将图像转换为HSV,拆分,修改Value以及最终合并。 这似乎是一种合理的方法,但我只想在蒙版为白色(即存在边缘)的地方修改“ 值”

最终,我试图以类似于FLIR One VividIR技术的方式来增强低分辨率热视频流的边缘。

我相信我已经真正成为了图像处理,OpenCV和Python的一个完整的新手,但是经过几天的尝试,几乎可以尝试使用OpenCV提供的每个功能,但我还是陷入了困境。

## get the edge coordinates
pos = np.where(edge >0)
## divide 
img[pos] //=2

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM