#include<iostream>
#include<opencv2/opencv.hpp>
using namespace std;
using namespace cv;
//显示图像
void Test01()
{
Mat img; //创建 Mat 类,储存目标图像
string path("D:\\TYW\\OpenCV\\HappyFish.jpg"); //目标图像文件路径
img = imread(path); //读取目标图像
imshow("fish", img); //显示目标图像
waitKey(0); //设置图像刷新延时
}
//显示视频
void Test02()
{
Mat img; //创建 Mat 类,储存目标图像
string path("D:\\TYW\\OpenCV\\12.mp4"); //目标视频文件路径
VideoCapture cap(path); //创建 VideoCapture 类对象,储存视频文件
namedWindow("视频", 0); //创建可调节显示窗口
while (true) //循环结构,循环显示视频每一帧画面
{
cap.read(img); //读取每一帧画面
//对视频读取时,判空操作
if (img.empty())
{
break;
}
imshow("视频", img); //显示视频
waitKey(20); //设置图像刷新延时
}
cap.release(); //释放视频内存空间
}
//显示摄像头
void Test03()
{
Mat img; //创建 Mat 类,储存目标图像
VideoCapture cap(0); //创建 VideoCapture 类对象,储存摄像头捕捉的画面
if (!cap.isOpened())
{
cout << "没有打开摄像头" << endl;
return;
}
namedWindow("摄像头", 0); //创建可调节显示窗口
while (true) //循环结构,循环显示摄像头捕捉的每一帧画面
{
cap.read(img); //读取每一帧画面
//对摄像头读取时,判空操作
if (img.empty())
{
break;
}
imshow("摄像头", img); //显示摄像头捕捉的画面
if (waitKey(1) == 'q') //按键盘上的 q 键退出
{
break;
}
}
cap.release(); //释放摄像头内存空间
destroyAllWindows();
}
int main()
{
Test03();
}
OpenCV——图像与视频的读取
于 2024-07-17 21:59:17 首次发布