Ubuntu 20.04 编译安装 Qt5、Eigen 3.4.0、OpenCV 4.5.5、ncnn

Ubuntu 20.04 编译安装 Qt5、Eigen 3.4.0、OpenCV 4.5.5、ncnn

前面步骤和在树莓派安装是一样的,到安装OpenCV 4.5.5那里,cmake命令有些不一样,安装顺序:Qt5 -> Eigen 3.4.0 -> OpenCV 4.5.5

换清华源并完全更新

sudo apt-get update
sudo apt-get dist-upgrade

安装 Qt5

sudo apt-get update
sudo apt-get upgrade
sudo apt-get install clang clang-format
sudo apt-get install qt5-default
sudo apt-get install qtcreator
sudo apt-get install qtdeclarative5-dev

安装 Eigen 3.4.0

也是采用编译安装,能安装上最新版本。
先去官网下载最新版本:Eigen下载地址
在这里插入图片描述
下载后解压并重命名到主目录:

unzip eigen-3.4.0.zip
mv eigen-3.4.0 ~/eigen
cd eigen
mkdir build
cd build
cmake ..
make
sudo make install
sudo ldconfig
sudo reboot

安装 OpenCV 4.5.5

GitHub - opencv/opencv_contrib 下载地址
在这里插入图片描述
下载、解压、重命名。

unzip opencv-4.5.5.zip
unzip opencv_contrib-4.5.5.zip
mv opencv-4.5.5 ~/opencv
mv opencv_contrib-4.5.5 ~/opencv_contrib

安装依赖
由于 Ubuntu 20.04 是只有 Python3 的,所以不需要安装 Python2 的依赖

sudo apt-get update
sudo apt-get upgrade
sudo apt-get install cmake gfortran
sudo apt-get install python3 python3-dev python3-numpy
sudo apt-get install libjpeg-dev libtiff-dev libgif-dev
sudo apt-get install libgstreamer1.0-dev gstreamer1.0-gtk3
sudo apt-get install libgstreamer-plugins-base1.0-dev gstreamer1.0-gl
sudo apt-get install libavcodec-dev libavformat-dev libswscale-dev
sudo apt-get install libgtk2.0-dev libcanberra-gtk*
sudo apt-get install libxvidcore-dev libx264-dev libgtk-3-dev
sudo apt-get install libtbb2 libtbb-dev libdc1394-22-dev libv4l-dev
sudo apt-get install libopenblas-dev libatlas-base-dev libblas-dev
sudo apt-get install protobuf-compiler

下面两个包也是需要安装的,若执行时出现:无法定位libjasper-dev的问题,可以看这篇blog解决,尽管题目说是树莓派64位的,但也适用于我们的环境。
问题解决之后,再次执行下面的命令:

sudo apt-get install libjasper-dev liblapack-dev libhdf5-dev

编译安装

cd opencv
mkdir build
cd build

此时最好把cmake过程中需要下载的文件全部预先下载好,并放在opencv/.cache目录下,该目录默认是隐藏的,我下载了一份最最完整的,云盘链接放在这里:

链接:https://pan.xunlei.com/s/VNE1rT9yF41tGsft05hW08pCA1
提取码:im86
unzip cache.zip
mv cache ~/opencv/.cache

然后cmake

cmake -D CMAKE_BUILD_TYPE=RELEASE \
-D CMAKE_INSTALL_PREFIX=/usr/local \
-D OPENCV_EXTRA_MODULES_PATH=~/opencv_contrib/modules \
-D WITH_EIGEN=ON \
-D WITH_QT=ON \
-D OPENCV_ENABLE_NONFREE=ON \
-D INSTALL_C_EXAMPLES=OFF \
-D INSTALL_PYTHON_EXAMPLES=OFF \
-D PYTHON3_PACKAGES_PATH=/usr/lib/python3/dist-packages \
-D OPENCV_GENERATE_PKGCONFIG=ON \
-D BUILD_EXAMPLES=OFF ..
make
sudo make install 
sudo ldconfig
sudo reboot

重启之后开终端看一下 OpenCV 的版本

pkg-config --modversion opencv4

会显示 4.5.5,则安装完成
同时也会拥有Python版本的OpenCV

Python
>>> import cv2
>>> cv2.__version__
'4.5.5'

安装 ncnn

ncnn下载地址
在这里插入图片描述

sudo apt-get update
sudo apt-get upgrade
sudo apt install build-essential git cmake libprotobuf-dev protobuf-compiler libvulkan-dev vulkan-utils libopencv-dev
unzip ncnn-master.zip
mv ncnn-master ~/ncnn
cd ncnn

安装ncnn还需要glslang,此时可以去目录 /ncnn/glslang/ 下看看,会发现是空的,因此还需要把 glslang 的源码放到 glslang/ 目录下
glslang下载地址
Ubuntu 20.04 编译安装 Qt5、Eigen 3.4.0、OpenCV 4.5.5、ncnn_第1张图片
下载完之后

unzip glslang-master.zip
cd glslang-master
cp -r * ~/ncnn/glslang/

复制完之后,glslang/里面是这样的
Ubuntu 20.04 编译安装 Qt5、Eigen 3.4.0、OpenCV 4.5.5、ncnn_第2张图片
然后就可以开始编译了

cd ~/ncnn/
mkdir build
cd build
cmake -DCMAKE_BUILD_TYPE=Release -DNCNN_VULKAN=OFF -DNCNN_SYSTEM_GLSLANG=ON -DNCNN_BUILD_EXAMPLES=ON ..
make
sudo make install
sudo ldconfig

ncnn 的文件都安装在 build 下的 install 里面了,需要复制到 /usr/local

sudo cp -r install/bin/* /usr/local/bin/
sudo cp -r install/include/* /usr/local/include/
sudo cp -r install/lib/* /usr/local/lib/

大功告成

你可能感兴趣的:(开发环境配置,linux,ubuntu,opencv)