- 一、在Ubuntu中安装opencv-3.4.1
- 1.下载
- 2.解压
- 3.编译
- 4.配置
- 二、使用opencv处理图片
- 三、使用opencv播放和录制视频
- 1.获取主机摄像头权限
- 2.播放视频
- 3.录制视频
一、在Ubuntu中安装opencv-3.4.1
1.下载
在官网中下载source版本的opencv并保存文件到home目录中
2.解压
(1)在终端打开,输入命令行unzip opencv-3.4.1.zip
(2)输入命令行cd opencv-3.4.1
进入解压后的文件包
3.编译
(1)输入命令行sudo apt-get install cmake
安装依赖库和cmake
(2)输入命令
1
2
3
4mkdir my_build_dir cd my_build_dir cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local ..
创建编译文件夹,并进行cmake
(3)输入命令sudo make
进行编译
(4)输入命令sudo make install
进行编译
4.配置
(1)输入命令sudo gedit /etc/ld.so.conf.d/opencv.conf
打开文件
(2)在文件中添加/usr/local/lib
并保存
(3)在命令行界面输入命令sudo ldconfig
(4)输入命令行sudo gedit /etc/bash.bashrc
打开bash文件进行配置
(5)在文件末尾添加
1
2PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig Export PKG_CONFIG_PATH
(6)返回命令界面,输入命令
1
2source /etc/bash.bashrc sudo updatedb
二、使用opencv处理图片
1.新建一个code目录,并下载一张jpg在此目录下
2.在目录中新建程序test1.cpp
3.终端打开,输入命令g++ test1.cpp -o test1 pkg-config --cflags --libs opencv
编译文件
4.输入命令./test1
运行程序
三、使用opencv播放和录制视频
1.获取主机摄像头权限
(1)win+R输入sercices.msc
打开本地服务管理找到图中的红色方块的内容
(2)在虚拟机中点开设置,将USB版本设置为3.0
(3)右键点击虚拟机右下角的摄像图标,选择连接到主机,当图标表亮时表示连接成功
(注:此时虚拟机可能会没反应,然后你强制关机再次打开则会出现黑屏现象,这里提供一个解决办法①重启电脑确保所有进程关闭
②断开网络连接
③在虚拟机下载目录中找到所有.lck的文件夹并删除
④重启VM)
(注:如果VM虚拟机安装版本为15,则不能启动摄像头与主机连接,需下载VM16版本,下载地址:https://www.downkuai.com/soft/120135.html)
2.播放视频
(1)在虚拟机和主机之间建立一个共享文件夹:在虚拟机设置中找到共享文件夹建立文件
(2)在主机的文件夹中下载一段视频,在虚拟机的中找到并复制到code文件夹中
(3)编写test2.cpp程序
(4)在终端打开编译文件g++ test2.cpp -o test2 pkg-config --cflags --libs opencv
运行文件./test2
3.录制视频
(1)编写test.cpp程序
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67/********************************************************************* 打开电脑摄像头,空格控制视频录制,ESC退出并保存视频RecordVideo.avi *********************************************************************/ #include<iostream> #include <opencv2/opencv.hpp> #include<opencv2/core/core.hpp> #include<opencv2/highgui/highgui.hpp> using namespace cv; using namespace std; int main() { //打开电脑摄像头 VideoCapture cap(0); if (!cap.isOpened()) { cout << "error" << endl; waitKey(0); return 0; } //获得cap的分辨率 int w = static_cast<int>(cap.get(CV_CAP_PROP_FRAME_WIDTH)); int h = static_cast<int>(cap.get(CV_CAP_PROP_FRAME_HEIGHT)); Size videoSize(w, h); VideoWriter writer("RecordVideo.avi", CV_FOURCC('M', 'J', 'P', 'G'), 25, videoSize); Mat frame; int key;//记录键盘按键 char startOrStop = 1;//0 开始录制视频; 1 结束录制视频 char flag = 0;//正在录制标志 0-不在录制; 1-正在录制 while (1) { cap >> frame; key = waitKey(100); if (key == 32)//按下空格开始录制、暂停录制 可以来回切换 { startOrStop = 1 - startOrStop; if (startOrStop == 0) { flag = 1; } } if (key == 27)//按下ESC退出整个程序,保存视频文件到磁盘 { break; } if (startOrStop == 0 && flag==1) { writer << frame; cout << "recording" << endl; } else if (startOrStop == 1) { flag = 0; cout << "end recording" << endl; } imshow("picture", frame); } cap.release(); writer.release(); destroyAllWindows(); return 0; }
(2)编译文件g++ test3.cpp -o test3 pkg-config --cflags --libs opencv
运行文件./test
最后
以上就是眼睛大小猫咪最近收集整理的关于使用opencv库编写打开摄像头压缩视频一、在Ubuntu中安装opencv-3.4.1二、使用opencv处理图片三、使用opencv播放和录制视频的全部内容,更多相关使用opencv库编写打开摄像头压缩视频一、在Ubuntu中安装opencv-3内容请搜索靠谱客的其他文章。
发表评论 取消回复