【DigiKey“智造万物,快乐不停”创意大赛】基于树莓派的智能考勤机+环境搭建
[复制链接]
本帖最后由 青春最好时 于 2023-11-10 11:43 编辑
再次,感谢EEworld和得捷给予的机会,现在来进行系统环境搭建和open cv基础内容测试。
************************************环境搭建*******************************************
系统烧录软件使用树莓派官网软件,Raspberry Pi Imager,系统镜像在附件中提供,
系统再烧录的时候可以选择SSH配置,系统烧写完以后可以直接使用SSH进行登录,此时系统SSH默认是开的状态。
然后就点击确定,进行烧录
但问题是需要先获取树莓派的IP地址才可以用SSH登录。我这里的解决办法是准备一个USB转串口(CH340)模块,先使用串口登录,查看树莓派IP,
使用命令:
Ifconfig
画红线的就是树莓派的IP地址,此时可以使用该IP进行SSH登录或者VNC服务,方便开发,密码为系统登录密码。
然后就是打开VNC,输入命令:
sudo raspi-config
然后选择:
选择合适的VNC桌面分辨率:
选择合适的分辨率,这个可以自己指定,我这里选择
然后输入命令,开启服务,
sudo systemctl start vncserver-x11-serviced
sudo svstemctl enable vncserver-x11-serviced
最后系统重启:
sudo reboot
重启之后使用VNC Viewer,进行访问,点击
输入树莓派的IP和用户名,然后确定。
成功登录远程桌面以后可以看到
至此,系统烧录和基础的配置结束,下面就开始安装open cv。
#######################################################
使用提供的树莓派系统,由于该版本系统自带python3.7.3,所以python不需要重新安装,但需要安装合适的whl包,whl包也在附件中给出。拿到合适的whl包后,进行安装,使用命令
pip3 install opencv_contrib_python-4.5.5.62-cp37-cp37m-linux_armv7l
pip3 install opencv_python-4.5.5.62-cp37-cp37m-linux_armv7l
pip3 install numpy-1.21.5-cp37-cp37m-linux_armv7l
还需要安装一个python的依赖
sudo apt-get install python3-h5py
然后安装open cv的依赖包
sudo apt-get install libhdf5-dev
sudo apt-get install libatlas-base-dev
sudo apt-get install libjasper-dev
sudo apt-get install libqt4-test
sudo apt-get install libqtgui4
sudo apt-get update
安装之后,要是没有问题的话,检查一下环境是否配置好,输入命令
python3
import cv2
可以看到open cv环境导入成功
注意:在使用open cv时包的版本一定要和python相对应,不然导入环境会出错。可以在网站查询目前的python支持的open cv的版本,本人在这个问题上花费了较多的时间。
https://www.piwheels.org/project/opencv-python/
https://www.piwheels.org/project/opencv-contrib-python/
至此,系统环境配置结束,下面就开始使用open cv。
##############################################
我这里使用的是树莓派摄像头,需要在树莓派系统重开启摄像头支持,输入
sudo raspi-config
此时,重启系统。
然后新建文件夹,存放需要的脚本和图片,输入命令
mkdir face_identification
在进行测试之前,先安装一个vim编辑器,自带的nano命令确实用不习惯,输入命令
sudo apt-get install vim
然后,新建测试脚本
vim test_camear.py
测试脚本是用来检测摄像头是否好用,代码
import cv2
cap = cv2.VideoCapture(0) #读取摄像头
while(True):
ret, frame = cap.read()
if ret:
cv2.imshow("frame", frame)
if cv2.waitKey(1) & 0xFF == ord('q'):
break
else:
break
cap.release()
运行上述代码
python3 test_camear.py
由于使用的是VNC,此时会显示一个窗口来显示摄像头识别的内容。
可以看到目前open cv已经可以调用摄像头显示图像了。
至此,系统环境搭建和摄像头测试完毕*********************************************
本人使用的系统镜像和open cv包见链接:
https://www.aliyundrive.com/s/MEDshz8Gtqo 提取码: ap76
|