基于树莓派的云台人脸追踪系统校内实习制作操作全记录
【前言】

校内进行实习制作,制作的是基于树莓派的云台人脸追踪系统。本文主要目的是记录我的操作以及执行的过程。
因为要准备考研,所以只能去学习制作一个简单的系统啦,期望能有所收获。
【个人情况(供看文章的同学参考):
树莓派的初学者,首次进行全新树莓派的操作,涵盖选购器件、安装硬件、烧录镜像以及配置本次实验所需的树莓派通信环境等各个方面。
②python初学者,但是有其他语言基础。
文中有大量试错过程可供参考。】
九月份说明:整体时长约为两个月。因为答主在考研,所以只能花费这么长的时间来学习相关知识并进行实践。
除了最开始的集中实践,后续基本都是零零散散的调试。
我在基础配置上卡了很久很久,花费了大量的时间去摸索。于是我决定把自己的操作以及遇到的问题都记录下来,希望能给需要的小伙伴提供一些帮助。
时长记录
事件
时长
原因
器材选购
约四天
选择商家并购买(半天左右),快递(三天左右)
树莓派环境配置
约一周
镜像下载、烧录以及更换 SD 卡,因为内存不够,所以需要更换大内存的 SD 卡,快递大概需要三天左右。找不到 IP 地址的话,PC 端就无法远程控制树莓派,大概半天左右可以解决。尝试更改成静态 IP,但尝试多种方法都没有效果,导致镜像崩溃,重新烧录镜像花费了一天多的时间。尝试使用手机 app 端控制,效果不好,后来采用了一种很冷门的瞄定方法,最终成功了,大概用了一天的时间。选择了如何配置文件传输工具 sshClient 并进行了下载,还学习了如何配置远程控制工具 vnc 并进行了学习。
pip和opencv配置
约三天
主要难点:学习并实践opencv和pip的配置和简单使用。
学习python和opencv
始终
我会抽空进行学习。目前我的水平还处于比较初级的状态,像是菜鸟一样。我在博客上推荐了一些经过亲身测试,比较适合新手学习的资源教程,大家如果有想法欢迎一起讨论。
LBP特征提取算法
两天左右
我本次校内实习人脸检测选用的算法是 LBP 特征提取算法,opencv 目标检测也使用该算法。
在树莓派上实现人脸检测
一周左右
难点在于修改 haar 算法的伪代码,并且要找到相关的教程,然后用 python 来实现,这个过程花费了接近一周的时间。
摄像头进行了连接和调试,这个过程花费了不到一天的时间。然而,该算法在捕捉图像时的精度是有限的。
PID算法
一天左右
主要是理解,需要一定数学基础。
在树莓派上实现云台舵机目标追踪
—周半左右
难点在于舵机接线,由于担心烧坏树莓派,所以购买了一块 PCA9685 板子,然而发现该板子的排针没焊好,于是更换了一块控制板,在此过程中浪费了不少时间。同时,修改 T——积分控制算法也很难调到理想精度。
添加各种传感器并编写代码
约一周
加了温湿度传感器、红外检测、蜂鸣器、继电器等等。
在树莓派上做图形化界面
约两周
原本以为这次校内实习用不上,所以就一直慢慢地在学习。接着发现必须要进行界面的制作,而此时离实习结束的时间已经很接近了,根本来不及学习 Javaweb 了,于是就转而学习 Qt 。最终通过《QT5 开发与实例》以及多个开源项目,将其改造出了一个简单的图形化界面。
在树莓派上做图形化界面
参考资料先贴出来:
书籍:
《Qt5开发及实例》
这本书讲解得很细致,并且包含有实战开发的案例。大佬称,基本上将其从头到尾看完,就能够入门,当然我还没有看完。
可以购买实体书。不建议购买在 tb 上可以看到的书旗 app 版电子版,虽然它比原价便宜了三分之二,但是 app 里广告很多,并且电子书不能下载,只能在 app 上看,这很麻烦。如果资金确实有限,推荐购买二手书。
参考网址:
(当时没电关机忘记存了,好气。)
(等明年叭我再翻一翻列个表)
大致总结:
目前只实现了camera(视频监控)和温湿度的界面显示。
camera 实际上是使用了 v4l2 ,并且使用了一个能够编写 v4l2 camera 脚本的库 libv4l 。
温湿度:直接调用了前面写好的检测温湿度的代码。
(待续)