Linux下安装OpenCV4(适用于Ubuntu等)


安装依赖

必须要安装的依赖,通过命令安装:

sudo apt-get install build-essential cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev

如果需要其他的功能,还需安装一些,命令:

sudo apt-get install python-dev python-numpy python3-dev python3-numpy
sudo apt-get install libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev libdc1394-22-dev

安装OpenCV

下载OpenCV的安装包,OpenCV官网下载地址
在这里我下载OpenCV4.0的安装包,下载Sources包,解压:

unzip opencv-4.0.1.zip

在解压的文件夹里新建一个文件夹用来编译OpenCV:

cd opencv-4.0.1
mkdir release
cd release

然后在新建的这个文件里运行cmake:

cmake -DCMAKE_BUILD_TYPE=Release \
-DOPENCV_GENERATE_PKGCONFIG=ON \
-DCMAKE_INSTALL_PREFIX=/usr/local ..

OpenCV4默认不生成.pc文件,OPENCV_GENERATE_PKGCONFIG=ON才会生成。
之后就是编译和安装了,我的电脑是四核八线程,可以运行make -j8,但我不想编译时影响我工作,所以用-j7,如果是四核可用make -j4

make -j7
sudo make install

如果你安装了python-dev,这时Python应该可以使用OpenCV了,在终端输入python,可以查看OpenCV版本:

$ python 
>>> import cv2
>>> cv2.__version__
'4.0.1'
>>> 

之后就是配置c++了,先在/etc/ld.so.conf.d/文件夹下新建一个opencv4.conf,里面写入/usr/local/lib。

cd /etc/ld.so.conf.d/
sudo touch opencv4.conf
sudo sh -c 'echo "/usr/local/lib" > opencv4.conf'

更新pkg-config:

sudo ldconfig

之后可以在终端输入pkg-config --libs opencv4pkg-config --cflags opencv4检验一下,我的输出如下:

$ pkg-config --libs opencv4 
-L/usr/local/lib -lopencv_dnn -lopencv_gapi -lopencv_ml -lopencv_objdetect -lopencv_photo -lopencv_stitching -lopencv_video -lopencv_calib3d -lopencv_features2d -lopencv_highgui -lopencv_flann -lopencv_videoio -lopencv_imgcodecs -lopencv_imgproc -lopencv_core

最后编译一个cpp文件庆祝一下,进入<你的目录>/opencv-4.0.1/samples/cpp/下,用g++编译:

g++ `pkg-config --cflags opencv4` drawing.cpp `pkg-config --libs opencv4` -o drawing.out
./drawing.out

drawing.cpp是你要编译的文件,-o后面的是生成文件,默认生成a.out文件;./drawing.out是执行。


OpenCV的卸载

删掉opencv4.conf文件,再在你编译的文件夹(我的是release)下运行sudo make uinstall即可。


OpenCV3的安装

OpenCV3版本的安装略有不同,编译后其生成的是opencv.pc,所以要建立一个opencv.conf文件,编译命令:

g++ `pkg-config --cflags --libs opencv` drawing.cpp

参考文章:OpenCV:Installation in linux

你可能感兴趣的:(Linux下安装OpenCV4(适用于Ubuntu等))