两种下载方式
1、官网:https://opencv.org/opencv-4-2-0/
找到对应版本的Source,点击即可下载
2、GitHub:https://github.com/opencv/opencv_contrib/releases
我下载的是4.2.0的版本,其它版本任选,安装方式基本相同
下载也可以通过终端下载,但是不清楚是我网络问题还是其它,总是失败,便选择了手动安装。
打开终端(桌面右键或Ctrl+alt+T)
更新软件源并安装依赖包
sudo apt-get update
sudo apt-get install build-essential cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev
终端中复制粘贴是ctrl+shift+C/V
解压下载的安装包,可以专门创建一个文件夹储存
sudo unzip opencv-4.2.0.zip
解压完之后就可以开始配置了,进入文件创建一个文件夹进行编译,习惯命名为build
cd opencv-4.2.0
mkdir build
cd build
cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local ..
make -j4
sudo make install
j后面的数字代表用几个线程编译,线程越高速度越快,需要根据自己电脑的配置来
输入下面的指令来看是否成功
pkg-config --cflags opencv
到这基本就成功了,但中间可能会遇到一些问题,在这里贴出我遇到的问题,如果成功安装可以直接跳过这里了。
第一次安装中间过程并没有多少曲折,但执行验证的那行语句时出错了,提示我
Package opencv was not found in the pkg-config search path.
Perhaps you should add the directory containing `opencv.pc'
to the PKG_CONFIG_PATH environment variable
No package 'opencv' found
缺少了opencv.pc这个配置文件
解决方法:添加opencv.pc配置文件并将其导入到环境变量中去
既然缺少,自然要先自己创建一个
cd /usr/local/lib
sudo mkdir pkgconfig
cd pkgconfig
sudo touch opencv.pc
创建的文件应该是只读,所以想要修改还要改成可读可写
chmod a 666 opencv.pc
666的意思是改为可读可写
222是可写不可读
在文件中添加以下信息
记得更改对应的版本,如果路径不同,还要修改路径
prefix=/usr/local
exec_prefix=${prefix}
includedir=${prefix}/include
libdir=${exec_prefix}/lib
Name: opencv
Description: The opencv library
Version:4.2.0
Cflags: -I${includedir}/opencv4
Libs: -L${libdir} -lopencv_shape -lopencv_stitching -lopencv_objdetect -lopencv_superres -lopencv_videostab -lopencv_calib3d -lopencv_features2d -lopencv_highgui -lopencv_videoio -lopencv_imgcodecs -lopencv_video -lopencv_photo -lopencv_ml -lopencv_imgproc -lopencv_flann -lopencv_core
~
之后记得保存
再将其添加进环境变量
export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig
再输入指令,大功告成
下面写一个程序来测试一下
mkdir OpencvTest
cd OpencvTest
gedit Test.cpp
在编辑器中写
#include
using namespace cv;
int main()
{
Mat src = imread("1.jpg"); //读一张图片,自己保存在当前文件夹下
imshow("Output",src);//显示
Mat Gray;
cvtColor(src, grayImage, CV_BGR2GRAY);//转化为灰度图
imshow("Gray",grayImage);
waitKey(0);
return 0;
}
保存,关闭,接下来进行编译
先创建一个cmake文件
gedit CMakeLists.txt
输入
cmake_minimum_required(VERSION 2.8)
project( TestProject )
find_package( OpenCV REQUIRED )
add_executable( Test Test.cpp )
target_link_libraries( Test ${OpenCV_LIBS} )
保存关闭,开始编译
cmake .
make
最后运行
./ShowImage
显示图片则成功。