将网络摄像头中的帧捕获为位图 - VFW - WINAPI

Posted

技术标签:

【中文标题】将网络摄像头中的帧捕获为位图 - VFW - WINAPI【英文标题】:Capturing a frame from the webcam into a bitmap - VFW - WINAPI 【发布时间】:2021-12-22 11:37:59 【问题描述】:

我想从网络摄像头捕捉一帧并将其放入位图中,我不希望程序显示任何窗口,但我很难理解 vfw 函数的概念。

capCreateCaptureWindow 是一个为相机窗口创建处理程序的函数,但该函数会打开一个允许我选择相机设备的窗口。

我的目标是能够遍历所有相机设备,从它们中拍照并将它们放入位图中。

有没有办法在不使用capCreateCaptureWindow函数的情况下通过代码获取设备的详细信息?

【问题讨论】:

DirectShow API 可以做到,VFW我不确定,已经过时了。 您的最低目标平台要求是什么?使用 Windows 10 中的 Windows 运行时,事情变得更加容易(例如,请参阅 MediaCapture)。 【参考方案1】:

首先,您可以尝试使用Windows Image Acquisition (WIA) APIs 从设备中获取静止图像。您也可以尝试使用DirectShow 来捕获图像。

然后你可以Capturing an Image From a Still Image Pin

【讨论】:

@Omer Friedlander 你有任何更新吗?如果您的案例已经解决,请帮忙标记答案。如果没有,请随时与我们联系。您的理解与合作将不胜感激。

以上是关于将网络摄像头中的帧捕获为位图 - VFW - WINAPI的主要内容,如果未能解决你的问题,请参考以下文章

将 OpenCV IplImage 渲染到 QGLWidget

JMF和捕获设备的问题

将 OpenCV 网络摄像头集成到 Kivy 用户界面中

如何最有效地向服务器发送连续的帧流

以恒定帧速率捕获网络摄像头视频的方法?

无法使用 OpenCV 从辅助网络摄像头读取 VideoCapture 中的帧