如何使用 Opencv 打开摄像头获取图像信息?
如何使用 Opencv 打开摄像头获取图像信息?
Flow
- 遍历摄像头设备。
- 根据 VID 和 PID 打开特定的设备。
- 使用 Directshow 设置摄像头相关参数(曝光度、分辨率、亮度、饱和度、对比度等)。
- 使用
capture.read(camera)
获取图像。 - 图像处理(滤波、边缘检测、二值化等)。
- 图像显示
cv::imshow()
。
Code
#include "opencv2/opencv.hpp"
using namespace cv;
void OpencvCamera()
{
//获取视频流
namedWindow("Win7x64",WINDOW_NORMAL);
VideoCapture capture;
Mat camera;
//采用 Directshow 的方式打开第一个摄像头设备。
capture.open(0,CAP_DSHOW);
if(!capture.isOpened())
{
return;
}
//capture.set(CAP_PROP_SETTINGS,0);//调出 Directshow 摄像头属性设置栏
while (true)
{
//读取一帧图像
capture.read(camera);
if(camera.empty())
{
continue;
}
imshow("Win7x64",camera);
//Esc
if (waitKey(1) == 27)
{
break;
}
}
return;
}
转载请注明出处并保持作品的完整性,谢谢