如何解决CV2相机-Python
如何将cv2捕获应用于其他应用程序的实际相机?就像Google Meet的例子一样,我想通过cv2将特效应用到我的相机上来诱骗我的老师,我已经拥有了想要做的特效,但是现在我不知道如何将其应用到我的实际相机上。 >
解决方法
为此,您需要创建一个假相机
对于 Windows:
您可以使用名为 pyvirtualcam
的模块
您必须使用 pip
安装它
现在我们必须创建一个假相机,为此你必须去 this link 并下载 OBS-VirtualCam[version].zip
解压并导航到 \bin[your computer's bittedness]
在该目录中打开命令提示符并键入
regsvr32 /n /i:1 "obs-virtualsource.dll"
这将在您的计算机上注册一个假相机
现在您可以使用 pyvirtualcam 发送帧
import pyvirtualcam
import numpy as np
with pyvirtualcam.Camera(width=1280,height=720,fps=30) as cam:
while True:
frame = np.zeros((cam.height,cam.width,4),np.uint8) # RGBA
frame[:,:,:3] = cam.frames_sent % 255 # grayscale animation
frame[:,3] = 255
cam.send(frame)
cam.sleep_until_next_frame()
对于 Linux:
你可以使用pyfakewebcam
要创建一个假相机,您必须运行 modprobe v4l2loopback devices=2
。这将创建 2 个假相机
然后你可以使用 pyfakewebcam 向它发送帧
import time
import pyfakewebcam
import numpy as np
blue = np.zeros((480,640,3),dtype=np.uint8)
blue[:,2] = 255
red = np.zeros((480,dtype=np.uint8)
red[:,0] = 255
camera = pyfakewebcam.FakeWebcam('/dev/video1',480)
while True:
camera.schedule_frame(red)
time.sleep(1/30.0)
camera.schedule_frame(blue)
time.sleep(1/30.0)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。