OpenCV是开源计算机视觉库,拥有强大的内置函数和开源社区,且提供了C++、Python和Java等编程语言的接口,配合树莓派可直接读取树莓派摄像头Picamera的视频,并对采集到的图像进行处理。
下边将介绍在python环境下如何安装opencv库,numpy为数值计算库numpy,经常与opencv配合使用,将一并安装。
Rasbiane系统中自带了python2和python3编译器,不用再下载安装,可在终端中输入命令查看python版本:
python2 --version
python3 --version
1、换源
将源地址换为国内镜像源会加快下载速度(共两处更改)
①第一处:在终端执行指令:
sudo nano /etc/apt/sources.list
在弹出的页面中注释掉原来的代码,换成下边的新代码:
deb http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/ buster main non-free contrib rpi
deb-src http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/ buster main non-free contrib rpi
(此处为清华源,若下载速度仍不理想,可更改为其它源)
接着按 Ctrl+x离开—>再按Y ->回车,保存修改
②第二处:在终端中执行命令:
sudo nano /etc/apt/sources.list.d/raspi.list
将原来的代码注释掉,换上新的代码:
deb http://mirrors.tuna.tsinghua.edu.cn/raspberrypi/ buster main ui
然后按 Ctrl+x离开—>再按Y ->回车,保存修改即可
最后更新一下,使配置生效,终端输入:sudo apt-get update
换源成功。
2、安装python库
①安装opencv库和numpy库
pip3 install opencv-contrib-python=4.5.4.60
pip3 install numpy
②安装如下依赖库,有一些出现报错也无所谓,能装的尽量装上
安装build-essential、cmake、git和pkg-config:
sudo apt-get install build-essential cmake git pkg-config
安装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-devsudo apt-get install libavcodec-dev libavformat-dev libswscale-dev libv4l-dev
③、安装完成后测试opencv能否正常使用:
在终端中输入:
python3
import cv2
如未报错,则安装成功
如报错ImportError: numpy.core.multiarray failed to import,报错原因:numpy版本不匹配
退出python后在终端中输入:
pip3 install -U numpy
即可
参考连接:
基于树莓派4B的OpenCV安装与简单应用(真速通版)_树莓派opencv-CSDN博客
安装完成后测试报错:AttributeError: module ‘cv2’ has no attribute ‘VideoCapture’
解决:AttributeError: module 'cv2' has no attribute 'VideoCapture' 在树莓派上报错的问题: (已解决)-CSDN博客
3、摄像头使能
部分树莓派4B的镜像默认是不使能摄像头Camera的,所以,OpenCV调用摄像头可能会出现警告进而失败。所以,这里我们需要先使能Camera。
打开终端,输入:
sudo raspi-config
按照以下步骤找到摄像头选项,打开树莓派的摄像头功能。
插上摄像头后,就可以使用树莓派进行视觉识别了。