本次项目使用了树莓派3B+,用的raspberry系统(Linux),如果想使用windows系统,最好购买3B。
首先贴出这次项目的方案:
路由器那部分可以直接换成一个web摄像头,但是那种大型的网络摄像头比较清晰。实验阶段就暂时用了可以直接读取的那种摄像头。
树莓派初次安装说明可以参考附件,其中需要说明的有:
- 有时候IP地址找不到或者不知道是哪个,可以下载IP scanner查看,可以看到厂商名称,安装包在附件
- vnc有多种版本,注意命令的格式
- 记得新建ssh文件
- 系统启动时可以观察指示灯看看网口或者系统有没有正常运行
- 如果想要重新烧录系统,无法直接用右键格式化的方法去格式化内存卡,我选择的方法是利用命令提示符清楚磁盘内容(详情参看),之后会提示磁盘无法使用,然后我用了内存卡修复工具进行修复(安装包在附件)
- 最好多买几根线,如果用到picamrea或者云台等
此时应该可以正常使用系统
最开始想用百度SDK(ubuntu或centos才可以)离线人脸检测,但是linux版本的SDK无法使用,故推荐尝试一下win的SDK或其他平台的SDK
我们最后采用的是python调用opencv2进行人脸检测
由于我们买的是web摄像头而不是 picamrea所以程序无法直接调用摄像头,所以采用的是motion软件采集视频和照片,用程序检测本地图片的人脸,接下来推荐几个博客:
- 更新软件源和安装opencv
https://blog.csdn.net/kxwinxp/article/details/78512341
更新软件源时出错,是因为中科大官方那个路径更改了,可以自行检查一下路径
- 如何设置系统中的相关参数,用命令抓图
https://blog.csdn.net/yjp19871013/article/details/80147803
- 如果使用的是picamrea或者想用c++
https://blog.csdn.net/u012526003/article/details/52801211
- 本地图片人脸检测
https://blog.csdn.net/kxwinxp/article/details/78519227
- 使用云台,最好是两个
https://blog.csdn.net/yonglisikao/article/details/82318626
- 比较完整的一个自动上传,需要用picamrea
http://bbs.elecfans.com/jishu_538512_1_1.html
- motion的配置
https://www.jianshu.com/p/0e66d9b6b87d
人脸检测还可以找一找更好的代码,或者也可以不用python
接下来需要需要把检测出来的照片传到服务器上,其实也可以不用上传,然后把树莓派配置成一个服务器,但是这样太占用资源,很容易死机,这也是当初选这个方案的原因。
我们用的阿里云windows服务器,ftp搭建方法百度有很多的,并且没有什么坑,此处就不赘述了,需要注意的是
- ftp站点配置的时候不但要添加公有ip,还需要添加上私有ip,原因未知
- 使用win10自带的远程桌面链接可能出现(远程桌面报错:这可能是由于CredSSp加密Oracle修正),错误解决方法一般可以百度出来,但是如果需要更改策略组,win10家庭版没法进入,下边是解决方案的一个博客
https://blog.csdn.net/SunshineBlog/article/details/81030397
最后需要一个脚本来将之前的程序和命令自动执行,也可以添加到开机文件中,linux也有很多定时执行脚本的软件。
总之,如果要使用Linux系统,需要对Linux的命令还有脚本有简单的了解,本人就因为命令格式和脚本报错的小问题走了不少弯路,不过Linux比windows要更加流畅,尤其是这种比较性能比较低(相对于pc)的开发板。
树莓派官网也有很多树莓派的教程!