opencv —— 调用摄像头采集图像 VideoCapture capture(0);

时间:2022-09-02 19:25:33
如果要调用摄像头进行视频采集,将代码 
VideoCapture capture("C:/Users/齐明洋/Desktop/1.mp4"); 中的
"C:/Users/齐明洋/Desktop/1.mp4" 换为 0 就可以了,表示调用摄像头而不是从文件中读取视频。
写法有两种:

①先实例化再初始化:
VideoCapture capture;
capture.open(0); ②实例化的同时进行初始化
VideoCapture capture(0); 代码:
#include<opencv.hpp>
using namespace cv;
int main() {
VideoCapture capture();
while () {
Mat frame;
capture >> frame;
imshow("摄像头捕捉", frame);
waitKey();
}
}

另外,还可以加入 canny 边缘检测,得到 canny 边缘检测并高斯模糊后的设想有采集视频,代码如下:

#include<opencv.hpp>
using namespace cv;
int main() {
VideoCapture capture();
Mat edgs;
while () {
Mat frame;
capture >> frame;
cvtColor(frame, edgs,COLOR_BGR2GRAY);
blur(edgs, edgs, Size(, ));
Canny(edgs, edgs, , , );
imshow("摄像头捕捉", edgs);
waitKey();
}
}