今天我的任务就是搭建毕业设计在树莓派上的环境,例如opencv
树莓派开机准备
首先烧录树莓派系统
将空白的ssh文件放入SD卡的boot盘
手动创建一个空白记事本.txt文件,命名为ssh,重命名,删掉.txt扩展名。将这个文件放入SD卡的boot盘中。
配置wifi文件,放入SD卡的boot盘
用同样的方法新建一个空白文件wpa_supplicant.conf(注意要删掉扩展名.txt)
用文本编辑器打开wpa_supplicant.conf,输入以下配置,可以用多个network{}来配置多个wifi:
country=GB
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
network={
ssid="将我替换成第一个WiFi的名字,不删除引号,不能有中文"
psk="将我替换成WiFi密码,不删除引号"
priority=将我替换成数字,数字越大代表优先级越高
}
network={
ssid="将我替换成第二个WiFi的名字,不删除引号,不能有中文"
psk="将我替换成WiFi密码,不删除引号"
priority=将我替换成数字,数字越大代表优先级越高
}
country=GB
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
network={
ssid="dyk"
psk="dyk159357"
priority=5
}
network={
ssid="FAST_55555"
psk="dyk159357"
priority=2
}
开机获取树莓派ip
更换树莓派的源
默认的下载速度很慢所以需要我们自己更换国内的源
编辑/etc/apt/sources.list文件
sudo vim /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
编辑/etc/apt/sources.list.d/raspi.list文件
sudo vim /etc/apt/sources.list.d/raspi.list
用#注释掉原文件内容,用以下内容取代
deb http://mirrors.tuna.tsinghua.edu.cn/raspberrypi/ buster main ui
deb-src http://mirrors.tuna.tsinghua.edu.cn/raspberrypi/ buster main ui
更换完源后运行下面两个命令
sudo apt-get update
sudo apt-get upgrade
这个命令,会访问源列表里的每个网址,并读取软件列表,然后保存在树莓派本地。
以上步骤实现了Respbian的包管理器apt-get换源到清华大学软件镜像站,并更新了软件列表,今后在树莓派命令行中执行sudo apt-get install 软件名时便会自动从清华大学开源软件镜像站高速下载
更换pip的源
配置换源脚本
该方法在树莓派上亲测有效
在树莓派的命令行中依次输入运行以下三个命令
sudo mkdir ~/.pip
cd .pip
sudo chmod 777 pip.conf
sudo vim pip.conf
在打开的文件中输入以下内容:
[global]
timeout = 10
index-url = http://mirrors.aliyun.com/pypi/simple/
extra-index-url= http://pypi.douban.com/simple/
[install]
trusted-host=
mirrors.aliyun.com
pypi.douban.com
安装远程桌面
sudo apt-get install xrdp
安装opencv
这里我没有选择编译安装太浪费时间了,虽然不是很清楚编译安装和不编译安装的区别
安装依赖
请逐条执行以下命令:
sudo apt-get update
sudo apt-get upgrade
sudo apt-get install libhdf5-dev libhdf5-serial-dev
sudo apt-get install libqtgui4 libqtwebkit4 libqt4-test python3-pyqt5
sudo apt-get install libatlas-base-dev
sudo apt-get install libjasper-dev
接着执行
sudo pip3 install --no-cache-dir opencv-contrib-python==3.4.3.18
测试是否成功安装
依次运行如下指令: sudo python3 >>> import cv2 >>> print(cv2.version) 能正常输出安装版本则代表安装成功。
import cv2 # 导入库
cap = cv2.VideoCapture(0) # 开启摄像头
# 循环读取图像
while True:
ok, img = cap.read() # 读取摄像头图像
if ok is False:
print('无法读取到摄像头!')
break
# 展示图像
cv2.imshow('image', img)
k = cv2.waitKey(10) # 键盘值
if k == 27: # 通过esc键退出摄像
break
# 关闭摄像头
cap.release()
cv2.destroyAllWindows()
在树莓派上安装
大佬博客链接
多亏了这篇博客我自己装重装了两遍树莓派系统
要重新更换pip的源不然下载不了
[global]
timeout = 6000
index-url = http://mirrors.aliyun.com/pypi/simple/
extra-index-url=https://www.piwheels.org/simple/
[install]
use-mirrors = true
mirrors = http://mirrors.aliyun.com/pypi/simple/
trusted-host = mirrors.aliyun.com
必要的一些环境
sudo apt-get install libhdf5-dev -y
sudo apt-get install libatlas-base-dev -y
sudo apt-get install libjasper-dev -y
sudo apt-get install libqt4-test -y
sudo apt-get install libqtgui4 -y
sudo apt-get install libatlas-base-dev -y
pip安装
python3 -m pip install hyperlpr
直接运行官网代码会报以下错误
pip3 install opencv-python==3.4.6.27
ImportError: libcblas.so.3: cannot open shared object file: No such file or directory
因为最新版本opencv和树莓派不兼容,所以需要回退版本并安装opencv运行所依赖的环境。
重新安装opencv
pip3 install opencv-python==3.4.6.27
测试代码
#导入包
from hyperlpr import *
#导入OpenCV库
import cv2
#读入图片
image = cv2.imread("car3.jpg")
#识别结果
print(HyperLPR_plate_recognition(image))
ok了,环境也是搭的很麻烦,这里做个记录哈哈哈有点小激动