主要看了以下两位博客的文章完成的,也遇到了不少的坑,在这里一一填补说明。
链接: https://blog.csdn.net/weixin_42163073/article/details/107308759.
链接: https://blog.csdn.net/weixin_42573595/article/details/108526850.
树莓派与OpenCV实现人脸识别(OpenCV安装篇)
一、材料准备:
1.树莓派x1(含16g卡)
2.USB高清摄像头x1
3.键盘、鼠标、屏幕
二、系统烧录
只提供树莓派raspbian系统镜像,自己解压烧录即可,烧录步骤省略
系统镜像链接: https://pan.baidu.com/s/1ACxvVdpYYJ0OAg7nqVXJmA .
提取码:ms45
三、安装OpenCV依赖项
1.为了加快后面下载速度,换国内源
点击看此文
2.更新系统及源:
sudo apt-get update && sudo apt-get upgrade
3.切换Python版本
点击看此文
4.安装开发工具:
sudo apt-get install build-essential cmake unzip pkg-config
5.安装图像和视频库、安装GTK,GUI后端:
sudo apt-get install libjpeg-dev libpng-dev libtiff-dev
sudo apt-get install libavcodec-dev libavformat-dev libswscale-dev libv4l-dev
sudo apt-get install libxvidcore-dev libx264-dev
6.安装免除GTK警告的包
sudo apt-get install libcanberra-gtk*
四、下载OpenCV和OpenCV_contrib(三种办法,云盘下载最快)
下载OpenCV和OpenCV_contrib,注意:若安装的是OpenCV-4.3.0,则下载OpenCV_contrib时,必须也是OpenCV_contrib-4.3.0
(1)命令行下载,速度很慢,容易中断
1.下载压缩包,注意观察是否下载成功
cd ~
wget -O opencv.zip https://github.com/opencv/opencv/archive/4.3.0.zip
wget -O opencv_contrib.zip https://github.com/opencv/opencv_contrib/archive/4.3.0.zip
2.解压
unzip opencv.zip
mv opencv-4.3.0 opencv
unzip opencv_contrib.zip
(2)在window下通过官网或百度云盘下载完,再通过VNC或U盘传输到树莓派上,速度相对较快,百度云盘更快一点
OpenCV-4.3.0官网下载链接:
https://github.com/opencv/opencv/archive/4.3.0-openvino-2020.3.0.zip.
opencv_contrib-4.3.0官网下载链接: https://github.com/opencv/opencv_contrib/archive/4.3.0.zip.
OpenCV-4.3.0云盘下载链接:
链接: https://pan.baidu.com/s/1cLy7M2JSsLsEAsjqfXFsPg
提取码:zezp
opencv_contrib-4.3.0云盘下载链接: 链接: https://pan.baidu.com/s/1jFaBzr46SQkjo3E1ChbC2w
提取码:ru35
传输到树莓派的/home/pi目录下,对两个压缩包解压
cd
unzip 4.3.0-openvino-2020.3.0.zip
unzip opencv_contrib-4.3.0.zip
将两个文件夹重命名为opencv和opencv_contrib
mv opencv-4.3.0-openvino-2020.3.0 opencv
mv opencv_contrib-4.3.0 opencv_contrib
五、为OpenCV配置Python3虚拟环境
1.安装pip
wget https://bootstrap.pypa.io/get-pip.py
sudo python3 get-pip.py
2.安装虚拟环境
sudo pip install virtualenv virtualenvwrapper
sudo rm -rf ~/get-pip.py ~/.cache/pip
3.打开~/.profile文件
sudo nano ~/.profile
将以下行添加到您的~/.profile中
export WORKON_HOME=/home/pi/.virtualenvs
export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3
export VIRTUALENVWRAPPER_VIRTUALENV=/usr/local/bin/virtualenv
source /usr/local/bin/virtualenvwrapper.sh
export VIRTUALENVWRAPPER_ENV_BIN_DIR=bin
如下:
重新加载:source ~/.profile
4.下载numpy:pip install numpy
六、编译OpenCV(耗时较长)
安装cmake
sudo apt-get install cmake
cd ~/opencv
mkdir build
cd build
运行CMake来配置OpenCV 4
cmake -D CMAKE_BUILD_TYPE=RELEASE \
-D CMAKE_INSTALL_PREFIX=/usr/local \
-D OPENCV_EXTRA_MODULES_PATH=~/opencv_contrib-4.3.0/modules \
-D ENABLE_NEON=ON \
-D ENABLE_VFPV3=ON \
-D BUILD_TESTS=OFF \
-D OPENCV_ENABLE_NONFREE=ON \
-D INSTALL_PYTHON_EXAMPLES=ON \
-D BUILD_EXAMPLES=ON ..
过程无错则如下图:
请确保更新上述命令以使用正确的OpenCV_EXTER_MODES_PATH路径。如果您完全跟随本教程,则不需要更新路径。
配置成功后开始编译
sudo make -j4
注:编译遇错导致编译中止:fatal error: boostdesc_bgm.i: No such file or directory
解决办法:下载所有文件(不是文件夹)复制到**opencv_contrib/modules/xfeatures2d/src/**下
百度云链接: https://pan.baidu.com/s/1T0m0LPdstoTpEd2s8WUHkA
提取码:hlms
继续编译:sudo make -j4
基本只有上面一个错误,如果还出现其他错误,继续编译一两次直到完全成功就OK了
七、安装与检查
sudo make install
进入Python交互环境
python
import cv2
无错提示则说明opencv安装成功
from cv2 imort face
无错提示则说明opencv_contrib安装成功
Ctrl+D退出Python交互环境
下一篇:树莓派与OpenCV实现人脸识别(人脸识别篇)
参考:
链接: https://blog.csdn.net/weixin_42163073/article/details/107308759
链接: https://blog.csdn.net/weixin_42573595/article/details/108526850