参考:树莓派4B安装OpenCV4
https://waao666.blog.csdn.net/article/details/84197532
实践环境:树莓派4B 8GB版本,搭配官方摄像头,使用Ubuntu18.04LTSC系统,putty进行远程SSH控制,配合VNC viwer进行图形桌面端测试。
前言:开始准备毕设的题目与开题,之前一直用现有的部署好的OpenCV镜像,基于树莓派官方系统。现在重新部署基于ubuntu的开发环境,果不其然遇到许多困难,这里就做一下简单记录吧,不一定会有下一篇更新。2021-10-06
sudo apt-get install build-essential cmake git pkg-config -y
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ xenial-security main
jpeg格式图像工具包:
sudo apt-get install libjpeg8-dev -y
1
tif格式图像工具包:
sudo apt-get install libtiff5-dev -y
1
jpeg-2000图像工具包:
sudo apt-get install libjasper-dev -y
1
png图像工具包:
sudo apt-get install libpng12-dev -y
sudo apt-get install libavcodec-dev libavformat-dev libswscale-dev libv4l-dev -y
sudo apt-get install libgtk2.0-dev -y
sudo apt-get install libatlas-base-dev gfortran -y
使用wget工具下载OpenCV 压缩包到用户目录下。
国内:
wget https://www.bzblog.online/opencv/opencv-4.5.1/opencv-4.5.1.zip
GitHub:
wget https://github.com/Itseez/opencv/archive/3.4.1.zip
解压OpenCV:
unzip opencv-4.5.1.zip
下载OpenCV_contrib库
国内:
wget https://www.bzblog.online/opencv/opencv_contrib/opencv_contrib-4.5.1.zip
GitHub:
wget https://github.com/Itseez/opencv_contrib/archive/3.4.1.zip
解压OpenCV_contrib库:
unzip opencv_contrib-4.5.1.zip
cd opencv-4.5.1
mkdir release
cd release
sudo cmake -D CMAKE_BUILD_TYPE=RELEASE \
-D CMAKE_INSTALL_PREFIX=/usr/local \
-D OPENCV_EXTRA_MODULES_PATH=~/opencv_contrib-4.5.1/modules ..
其中参数简介:
参数 | 作用 |
---|---|
CMAKE_BUILD_TYPE=RELEASE | 编译方式 |
CMAKE_INSTALL_PREFIX | 安装目录 |
OPENCV_EXTRA_MODULES_PATH | 加载额外模块 |
INSTALL_PYTHON_EXAMPLES | 安装官方python例程 |
BUILD_EXAMPLES | 编译例程 |
这里我使用参数编译错误,重新用去除最后一个参数+删除release文件夹重新编译了
sudo cmake -D CMAKE_BUILD_TYPE=RELEASE \
-D CMAKE_INSTALL_PREFIX=/usr/local ..
出现如下提示为成功
Configuring done
Generating done
sudo make
时间较长,请注意不要断电
出现报错参考:树莓派4B安装OpenCV4
https://waao666.blog.csdn.net/article/details/84197532
安装
sudo make install
更新动态链接库
sudo ldconfig
完成后测试代码
# --coding:utf-8--
import cv2
import numpy as np
cv2.namedWindow("gray")
img = np.zeros((512,512),np.uint8) #生成一张空的灰度图像
cv2.line(img,(0,0),(511,511),255,5) #绘制一条白色直线
cv2.imshow("gray",img) #显示图像
while True: #循环等待,按q键退出
key=cv2.waitKey(1)
if key==ord("q"):
break
cv2.destoryWindow("gray")
#若OpenCV 正常工作,则屏幕显示一条白色斜线
或者直接
import cv2
于2021-10-06早晨05:45开始部署,全程测试没遇到特别困难的地方,教程很完善。再次感谢分享教程的博主。