【直捣黄龙】树莓派安装OpenCV 3.4.1
首先把准备工作做好,先确保已经更换好源:树莓派换源
首先说说配置:我的树莓派是2018年11月份买的,系统是2018-11-13-raspbian-stretch
附上:树莓派系统下载地址
本文代码均可直接复制进shell
1.安装OpenCV 依赖包:
a. 更新软件源 + 升级安装包 + 升级固件
sudo apt-get update
sudo apt-get upgrade
固件较新或Ubuntu 则可忽略此步:
sudo rpi-update
b. 安装构建OpenCV 相关的工具
sudo apt-get install build-essential cmake git pkg-config
其中包括build-essential、cmake、git和pkg-config
c. 安装常用图像工具包
jpeg格式图像工具包:
sudo apt-get install libjpeg8-dev
tif格式图像工具包:
sudo apt-get install libtiff5-dev
jpeg-2000图像工具包:
sudo apt-get install libjasper-dev
png图像工具包:
sudo apt-get install libpng12-dev
d. 安装视频I/O包
sudo apt-get install libavcodec-dev libavformat-dev libswscale-dev libv4l-dev
e. 安装gtk2.0
sudo apt-get install libgtk2.0-dev
f. 优化函数包
sudo apt-get install libatlas-base-dev gfortran
至此,OpenCV 依赖包已经全部安装完成。
2. 编译OpenCV源代码的准备工作
a. 下载OpenCV
使用wget工具下载OpenCV 压缩包到用户目录下:
wget -O opencv-3.4.1.zip https://github.com/Itseez/opencv/archive/3.4.1.zip
解压OpenCV:
unzip opencv-3.4.1.zip
下载OpenCV_contrib库:
wget -O opencv_contrib-3.4.1.zip https://github.com/Itseez/opencv_contrib/archive/3.4.1.zip
解压OpenCV_contrib库:
unzip opencv_contrib-3.4.1.zip
b. 进入解压后的OpenCV 源码文件夹
cd opencv-3.4.1
c. 新建一个名为release的文件夹用来存放cmake编译时产生的临时文件
mkdir release
cd release
d. 配置cmake编译参数
sudo cmake -D CMAKE_BUILD_TYPE=RELEASE \
-D CMAKE_INSTALL_PREFIX=/usr/local \
-D OPENCV_EXTRA_MODULES_PATH=~/opencv_contrib-3.4.1/modules \
-D INSTALL_PYTHON_EXAMPLES=ON \
-D BUILD_EXAMPLES=ON ..
其中参数简介:
参数 | 作用 |
---|---|
CMAKE_BUILD_TYPE=RELEASE | 编译方式 |
CMAKE_INSTALL_PREFIX | 安装目录 |
OPENCV_EXTRA_MODULES_PATH | 加载额外模块 |
INSTALL_PYTHON_EXAMPLES | 安装官方python例程 |
BUILD_EXAMPLES | 编译例程 |
3. 正式开始编译:
a. 编译
此过程极为漫长,我一共编译了4个小时!!!
sudo make
b. 安装
sudo make install
c. 更新动态链接库
sudo ldconfig
恭喜!您已成功安装OpenCV!
下面就来利用一个简单的Python 程序检验一下OpenCV 是否正常工作
# --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 正常工作,则屏幕显示一条白色斜线:
最后说一句,在此我极度建议大家备份一下,不然花了那么长时间安装好,万一出了点差错,TF卡坏了,那真是…哔了狗了