网上好多教程,零散并且有些不适用。下面就介绍亲身配置的方法。
1.安装必须依赖项
sudo apt-get install build-essential
sudo apt-get install cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev
sudo apt-get install python-dev python-numpy libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev libdc1394-22-dev
注意以上依赖项安装时,如果出现无法定位包的情况,更新apt或检查网络,或者更换阿里云的源,使以上包都能安装。
2.使用CMake进行编译
这是编译cmake版本的opencv命令,大部分功能都包含。
cmake -DCMAKE_BUILD_TYPE=RELEASE -DOPENCV_EXTRA_MODULES_PATH= ../opencv_contrib/modules -DCMAKE_INSTALL_PREFIX=/opt/opencv-4.5.0 -DWITH_CUDA=OFF -DBUILD_EXAMPLES=ON -DBUILD_DOCS=OFF -DBUILD_PERF_TESTS=OFF -DBUILD_TESTS=OFF -DOPENCV_GENERATE_PKGCONFIG=YES -DOPENCV_ENABLE_NONFREE=True -DBUILD_opencv_world=OFF ..
3.编译安装
运行编译命令,j后是核数量,最大不能超过cpu核数量*2
sudo make -j8
编译完成后,安装,执行
sudo make install
安装在/opt/opencv-4.5.0/lib下
4.配置环境
(1)打开文件
sudo gedit /etc/ld.so.conf.d/opencv.conf
添加库,并使其生效
/opt/opencv-4.5.0/lib
sudo ldconfig
(2)更改终端的环境变量,这里使用的是zsh终端,bash终端同理
sudo vim ~/.zshrc
bash终端输入 sudo vim ~/.bashrc
添加如下内容
PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/opt/opencv-4.5.0/lib/pkgconfig
export PKG_CONFIG_PATH
export OpenCV_DIR=/opt/opencv-4.5.0
关闭vim,输入source ~/.zshrc或source ~/.bashrc使其生效。
5.CMakeLists测试
在文件夹下新建test.cpp
内容如下
#include "opencv2/opencv.hpp"
#include <iostream>
int main()
{
cv::Mat a=cv::Mat(3,3,CV_32FC1);
a.setTo(0);
std::cout<<a<<std::endl;
return 0;
}
在同级目录下新建CMakeLists.txt文件,内容如下
cmake_minimum_required(VERSION 3.0.2)
project(test_opencv)
set(OpenCV_DIR /opt/opencv_4.5.0/lib/cmake/opencv4)
find_package(OpenCV 4.5.0 REQUIRED)
include_directories(
${OpenCV_INCLUDE_DIRS}
)
add_executable(test1 test.cpp)
target_link_libraries(test1 ${OpenCV_LIBS})
其中, add_executable(test1 test.cpp)中cpp改为你的cpp名
新建一个build文件夹,cd进入,运行
cmake ..
make
./test1
即可运行得出结果