最近在重构人脸识别的项目,通过opencv打开本地摄像头识别面部的时候,发现非常的卡。查了一些资料,有说是帧率的问题,我重新设置了一下帧率,毫无作用。记得以前在运行目标检测方面的时候,也遇到过此类的问题,当时的解决方案就是通过opencv官网下载没有编译过的版本在本地进行编译,编译完成后再运行就不卡了,因为我电脑上另一个系统ubuntu是编译过的,索性就将代码丢在ubuntu上运行了一下,发现流畅的很。所以就想着给编译的过程记录一下……
PART 01
安装准备
1.安装cmake
代码语言:javascript复制sudo apt-get install cmake
2.依赖环境
代码语言:javascript复制sudo apt-get install build-essential libgtk2.0-dev libavcodec-dev libavformat-dev libjpeg-dev libswscale-dev libtiff5-dev
sudo apt-get install libgtk2.0-dev
sudo apt-get install pkg-config
3.下载opencv
下载地址:https://opencv.org/releases/ 点击Sources进行下载自己需要的版本
PART 02
安装
1.解压文件
解压后,将文件夹放自己喜欢的地方,笔者这里就放在了home下
2.进入到解压后的文件夹下
(这里我将解压后的文件夹重新命为opencv3,这个随便,不是重点) 在opencv3文件夹下新建build文件夹
代码语言:javascript复制mkdir build
代码语言:javascript复制进入build文件夹下
代码语言:javascript复制cd build
3.cmake
代码语言:javascript复制sudo cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local ..
接下来时一个漫长的等待过程,大概需要等10分钟,不用担心,耐心点
4.进行编译
代码语言:javascript复制sudo make -j8
可以使用sudo make -j 8 、sudo make -j4 、sudo make
我这里就使用sudo make -j 8了
5.进行安装
代码语言:javascript复制sudo make install
PART 03
配置环境
用gedit打开/etc/ld.so.conf 在文件中加上一行 /usr/loacal/lib 其中/user/loacal是opencv安装路径也就是makefile中指定的安装路
代码语言:javascript复制sudo gedit /etc/ld.so.conf
运行sudo ldconfig, 修改bash.bashrc文件
代码语言:javascript复制sudo gedit /etc/bash.bashrc
在文件末尾加入: PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig export PKG_CONFIG_PATH
然后在命令行中输入
代码语言:javascript复制source /etc/bash.bashrc
在命令行中输入如下命令:
代码语言:javascript复制pkg-config opencv --modversion
至此opencv的安装就完成了。
PART 04
常见问题