编译安装opencv&&opencv_contrib
-
依赖安装
sudo apt install build-essential git cmake libprotobuf-dev protobuf-compiler libvulkan-dev vulkan-utils libopencv-dev
-
创建 build 目录,并下载 opencv && opencv_contrib 源码
mkdir ~/opencv_build && cd ~/opencv_build git clone https://github.com/opencv/opencv.git cd opencv git clone https://github.com/opencv/opencv_contrib.git mkdir build && cd build
-
Cmake编译配置
cmake -D CMAKE_BUILD_TYPE=RELEASE \ -D CMAKE_INSTALL_PREFIX=/usr/local/opencv4 \ -D INSTALL_C_EXAMPLES=ON \ -D INSTALL_PYTHON_EXAMPLES=ON \ -D OPENCV_GENERATE_PKGCONFIG=ON \ -D OPENCV_EXTRA_MODULES_PATH=~/opencv_build/opencv/opencv_contrib/modules\ -D BUILD_EXAMPLES=ON ..
-
如果需要用到 VIZ 这个库的,需要将下面的开关打开
cmake -D WITH_VTK=ON \
-
Cmake 报错解决
- IPPICV: Download: 会因为没法连上服务器报错
在opencv_3rdparty中branch中选择需要的ippicv版本
- 将对应的文件下载到
file://home/user_name/Documents/
- 之后更改
~/opencv_build/opencv/3rdparty/ippicv/ippicv.cmake
文件中的
"https://raw.githubusercontent.com/opencv/opencv_3rdparty/${IPPICV_COMMIT}ippicv/"
修改为:
"file://home/user_name/Documents/"
- IPPICV: Download: 会因为没法连上服务器报错
-
后面进行编译
- make -j8
-
编译完成后进行安装
- sudo make install
-
默认的安装位置是
/usr/local/bin
/usr/local/include/opencv4
/usr/local/lib
这几个路径
因为我们编译安装的是 opencv4.x 的版本
- 会在
/usr/local/lib/pkgconfig
路径下生成opencv4.pc
这个文件 所以 在用 pkg-config 查看 opencv 版本的时候用下面的指令
pkg-config opencv4 --modversion
ubuntu 卸载 opencv(通过源码编译安装的版本)
- cd 到安装opencv的build目录,进入build目录进行卸载,如果是按照上文写的步骤编译安装的opencv则进入
/home/用户名/opencv_build/opencv/build
这个目录下面 - 敲入卸载命令
sudo make uninstall
cd ..
rm -r build
- 删除整个
/home/用户名/opencv_build/
目录 - 最后卸载 /usr/ 目录下 Opencv 相关内容即可
cd /usr
find . -name "*opencv*" | xargs sudo rm -rf
ubuntu 编译安装 ncnn
-
Ubuntu20.04 编译 ncnn(无vulkan版 --等有空的带显卡的笔记本后加上带vulkan的)
-
gitclone 下载源码
git clone https://github.com/Tencent/ncnn.git
- 编译ncnn
cd ncnn mkdir build cd build cmake .. make make install
- 编译ncnn
-
Set environment variables. Run:
export ncnn_DIR=YOUR_NCNN_PATH/build/install/lib/cmake/ncnn