从 WinPE 下的网络摄像头捕获?

Capturing from webcam under WinPE?

本文关键字:摄像头 网络 WinPE      更新时间:2023-10-16

我正在编写一套将在Windows PE环境中运行的硬件测试。我需要测试网络摄像头,但到目前为止我被难住了。我使用 opencv 库编译了一个小型网络摄像头捕获程序,但它无法检测到网络摄像头。我尝试加载其他驱动程序,但没有奏效。不幸的是,我在网上没有找到任何帮助,因为显然没有其他人疯狂/愚蠢到尝试这样做。这个想法在某些方面是否存在根本缺陷,或者有没有办法做到这一点?任何帮助,不胜感激。

这是我正在使用的代码,用于在我的 Windows 10 机器上编译和运行:

#include "opencv2/opencv.hpp"
#include <cstdio>
using namespace cv;
int main(int argc, char** argv)
{
VideoCapture cap;
// open the default camera, use something different from 0 otherwise;
// Check VideoCapture documentation.
if(!cap.isOpened())  // check if we succeeded
{
printf("Unable to open webcam");
return -1;
}
for(;;)
{
Mat frame;
cap >> frame;
if( frame.empty() ) break; // end of video stream
imshow("this is you, smile! :)", frame);
if( waitKey(10) == 27 ) break; // stop capturing by pressing ESC 
}
// the camera will be closed automatically upon exit
// cap.close();
return 0;
}

编辑:我意识到驱动程序在启动时没有加载,所以我使用 drvload.exe 手动加载它们。现在,当我执行WQL查询(ConfigManagerErrorCode = 0(时,网络摄像头显示为功能正常,但我的opencv程序仍然无法检测到它。

如果不向PE 环境添加一些 DLL,您将无法让您的凸轮工作。

PE 是一种极简主义的 WIndows,由于最大限度地减少内存和磁盘空间消耗,它错过了许多功能。它仅用于脱机编辑Windows映像,而不用于进行硬件测试。几个月前遇到了类似的问题。

我不确定这里是否允许链接到这个项目,但他们肯定有关于你的有用信息:TheOven