opencv / python:在流式摄像头视频时模块cv2中的掩码
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了opencv / python:在流式摄像头视频时模块cv2中的掩码,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1220字,纯文字阅读大概需要2分钟。
内容图文
![opencv / python:在流式摄像头视频时模块cv2中的掩码](/upload/InfoBanner/zyjiaocheng/777/633a80a7f8ee4c429c32c7db083a86d3.jpg)
嘿大家我正在尝试使用我的网络摄像头制作游戏,我需要一些物体落在屏幕上,而我用网络摄像头流式传输视频(该流是我的背景).
我正在使用opencv的python和模块cv2
问题是:如何将遮罩应用于此对象?我已经有一个图像作为原始图像的掩码,但我不知道如何应用它来减去原始图像的背景.
香港专业教育学院已经尝试使用cv2.bitwise_and但没有任何反应,成像与黑色背景保持相同:
#targets
original_ball = cv2.imread("Aqua-Ball-Red-icon.png")
ball = cv2.resize(bola_original, (64,64), fx=1, fy=1)
#mask
mask_original = cv2.imread("input-mask.png",0)
mask = cv2.resize(mask_original, (64,64), fx=1, fy=1)
res = cv2.bitwise_and(ball, ball, mask = mask)
提前致谢!
解决方法:
如果您正在使用cv2,那么您正在使用numpy数组,并且无需使用opencv来处理像mask这样简单的事情.
首先,操纵(可能,相乘)您的掩码数组,以便您想要的值(即:未屏蔽的值)具有值1.然后,将源图像乘以掩码.这将使得到的图像具有掩模== 1的原始像素,以及掩码== 0的0(即:黑色).
这是它的要点:
import numpy
original_ball = cv2.imread("Aqua-Ball-Red-icon.png")
ball = cv2.resize(bola_original, (64,64), fx=1, fy=1)
mask_original = cv2.imread("input-mask.png",0)
mask = cv2.resize(mask_original, (64,64), fx=1, fy=1)
max_value= numpy.max(mask)
mask/=max_value
res= ball*mask
根据input-mask.png的颜色深度,您可能需要先将其缩小为灰度
内容总结
以上是互联网集市为您收集整理的opencv / python:在流式摄像头视频时模块cv2中的掩码全部内容,希望文章能够帮你解决opencv / python:在流式摄像头视频时模块cv2中的掩码所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。