OpenCV(Open Source Computer Vision Library,开源计算机视觉库)是一个开源的计算机视觉和机器学习软件库,它包含了许多图像处理、视频分析和计算机视觉方面的功能。OpenCV的目的是为人工智能、机器视觉、图像处理等领域的研究人员和开发者提供一个通用且高效的平台。
OpenCV的主要应用领域包括:
- 图像处理:例如图像缩放、旋转、裁剪、滤波等。
- 视频分析:例如视频帧提取、运动检测、行为分析等。
- 特征提取:例如SIFT、SURF、HOG等特征提取算法。
- 目标检测和跟踪:例如基于Haar特征的人脸检测、基于深度学习的目标检测等。
- 机器学习:例如支持向量机(SVM)、随机森林等机器学习算法。
安装OpenCV的方法因操作系统和硬件平台而异。以下是几种常见操作系统的安装方法: - 在Ubuntu或Debian系统上安装OpenCV:
sudo apt-get update
sudo apt-get install build-essential cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev
sudo apt-get install libopencv-dev
CopyCopy
- 在Fedora或CentOS系统上安装OpenCV:
sudo yum install epel-release
sudo yum install opencv
CopyCopy
- 在Windows系统上安装OpenCV:
- 使用Visual Studio 2019安装OpenCV:
- 打开Visual Studio 2019
- 点击“创建一个新的项目”
- 选择“Visual C++”下的“控制台应用”
- 输入项目名称和保存位置,点击“创建”
- 在“解决方案资源管理器”中右键点击项目名称,选择“添加现有项”
- 浏览到OpenCV的安装路径(例如C:\opencv\build\x64\vc15\lib),选择“opencv_world411.lib”和“opencv_world411.dll”
- 点击“配置”并选择“C++”下的“常规”,将“附加包含目录”设置为OpenCV头文件路径(例如C:\opencv\build\include)
- 点击“链接器”下的“常规”,将“附加库目录”设置为OpenCV库文件路径(例如C:\opencv\build\x64\vc15\lib)
- 点击“运行时信息”下的“C++”,将“附加依赖项”设置为“opencv_world411.lib”
- 编写一个简单的OpenCV程序,例如:
CopyCopy
include
include
include
using namespace std;
using namespace cv;
int main()
{
Mat img = imread("input.jpg", IMREAD_COLOR);
if (!img.data)
{
cout << "无法读取图像" << endl;
return -1;
}
namedWindow("显示图像", WINDOW_AUTOSIZE);
imshow("显示图像", img);
waitKey(0);
return 0;
}
- 编译并运行程序
如何显示视频:
要使用OpenCV显示视频,您需要首先读取视频文件,然后逐帧显示。以下是一个简单的示例:
CopyCopy
include
include
include
using namespace std;
using namespace cv;
int main()
{
// 读取视频文件
VideoCapture cap("video.mp4");
if (!cap.isOpened())
{
cout << "无法打开视频文件" << endl;
return -1;
}
// 创建窗口
namedWindow("视频显示", WINDOW_AUTOSIZE);
// 逐帧显示视频
Mat frame;
while (true)
{
cap >> frame;
if (frame.empty())