OpenCv实战笔记(3)基于opencv实现调用摄像头并实时显示画面
一、实现效果
二、实现原理
使用 OpenCV 打开摄像头,持续捕获视频帧,并在一个窗口中实时显示这些帧,直到用户按下 ESC 键退出。整体流程:打开摄像头(cv::VideoCapture)=>创建图像显示窗口(cv::namedWindow)=>循环读取视频帧=>显示帧到窗口中(cv::imshow)=>判断退出条件(cv::waitKey 检测键盘按键)=>释放资源并关闭窗口
三、参考代码
void demo() {std::cout << "Running video_processing demo..." << std::endl;cv::VideoCapture cap(0, cv::CAP_ANY);if (!cap.isOpened()) {std::cerr << "Error: Could not open camera." << std::endl;return;}cap.set(cv::CAP_PROP_FRAME_WIDTH, 1280);cap.set(cv::CAP_PROP_FRAME_HEIGHT, 720);cap.set(cv::CAP_PROP_FPS, 30);cv::namedWindow("Live", cv::WINDOW_NORMAL);cv::resizeWindow("Live", 1280, 720);cv::Mat frame;while (true) {if (!cap.read(frame)) break;if (frame.empty()) continue;cv::imshow("Live", frame);if (cv::waitKey(1) == 27) break;}cap.release();cv::destroyAllWindows();
}
欢迎关注我,一起交流!