今年的电赛题目非常反常,传统控制题目基本没有,新增加了测距题目,甚至物联网题目,Ai题目都出来了。直接电赛变算法+钞能力大赛。看到F题:测温+人脸识别,碰巧我们手头有调好的红外测温模块+树莓派+openmv,还有一个现成的口罩识别算法,而openmv可以实现人脸识别,所以就选择了这道题。作为一个本组唯一一个非电类专业的,本人负责Ai口罩识别算法的移植以及编写一个opencv实现的人脸识别算法作为预备方案。

由于算法都是写好的,并且在ubuntu中全部测试成功。下面主要任务就是把他移植进树莓派了。万事环境难,在这几天里我给树莓派刷机了不下十次,下面记录一下艰辛例程。

配环境主要分下面几步:树莓派安装raspbian

安装opencv-python

安装tensorflow1.13

树莓派连接显示器

安装系统并且连接显示器

第一步比较简单,从官网下载镜像,然后用win32diskManager烧录进去就可以用,烧录好之后,如果要利用ssh功能的话,要在boot目录下新建一个空白文件命名为ssh(不带任何拓展名),如果需要利用HDMI显示器,则需修改boot目录下的config.txt

hdmi_force_hotplug=1

config_hdmi_boost=4

在文件末尾加入以上内容,或者将以上内容对应的注释都替换掉。

hdmi_force_hotplug:强制使用HDMI输出并且支持热插拔(强行认为HDMI口已经插入了设备)

config_hdmi_boost:HDMI信号增强。

按照以上步骤操作之后,应该就能看到树莓派的桌面了。

配置opencv环境

由于口罩识别的数据处理以及显示过程均需要用到opencv库,因此需要在raspbian中安装opencv-python-4.4.0(和ubuntu上版本统一,减少兼容性问题)。

我在安装过程中莫名出现了玄学hash值问题,经过多次google发现,原因是网络不稳定,需要用下面的方式安装,或者直接wget下载whl文件吧

pip3 install --upgrade opencv-python

安装好之后,打开测试文件,测试摄像头,发现可能会出现报错,原因是raspbian中没有依赖环境,需要安装

sudo apt-get install libatlas-base-dev

sudo apt-get install libjasper-dev

sudo apt-get install libqtgui4

sudo apt-get install python3-pyqt5

sudo apt install libqt4-test

安装好之后可以用以下代码测试摄像头是否正常

import cv2 as cv

Video = cv.VideoCapture(0)

while True:

ret,frame = Video.read()

cv.imshow("capture",frame)

cv.waitKey(33)

Video.release()

cv.destroyAllWindows()

如果不能显示可能需要打开外设开关,具体方法为命令行中输入sudo raspi-config,选择interfaceing-options,将camera选择为enable。

配置Tensorflow

由于tensorflow较大,推荐先从电脑上通过wget下载好后上传树莓派,否则由于树莓派网速慢且不稳定会出现一些麻烦的问题,下载方法如下。

wget http://piwheels.org/simple/tensorflow/tensorflow-1.13.1-cp37-none-linux_armv7l.whl

下载后可通过sftp上传至树莓派,上传好之后找到whl对应的目录,使用以下命令安装即可

pip3 install tensorflow-1.13.1-cp37-none-linux_armv7l.whl

安装好后可用以下代码测试

python3

#命令行中进入python3环境

import tensorflow as tf

hello = tf.constant('Hello!')

sess = tf.Session()

print(sess.run(hello))

若出现和opencv类似的hash问题则继续从电脑上wget下载镜像上传到树莓派即可。

Keras的安装也需要wget后手动安装whl,同时如果需要保存模型为h5文件则还需安装以下依赖:

sudo apt-get install libhdf5-dev

源码请参考这里。https://github.com/Anakin0607/Mask-recogniser-on-RaspberryPi/​github.com

树莓派 口罩识别 python_RaspberryPi上实现佩戴口罩识别——2020电赛F题小记相关推荐

  1. python利用tensorflow识别圆_RaspberryPi上实现佩戴口罩识别——2020电赛F题小记

    今年的电赛题目非常反常,传统控制题目基本没有,新增加了测距题目,甚至物联网题目,Ai题目都出来了.直接电赛变算法+钞能力大赛.看到F题:测温+人脸识别,碰巧我们手头有调好的红外测温模块+树莓派+ope ...

  2. 2020电赛F题回顾——简易无接触温度测量与身份识别装置

    2020电赛F题回顾--简易无接触温度测量与身份识别装置 第一次参加电赛,已经大三了,这也有可能是我的最后一次,不禁感慨时间过得真快.在实验室一起奋斗的夜晚既辛苦又幸福,感谢陪伴在我身边一起做电赛的同 ...

  3. 2021电赛F题智能送药小车方案分析(openMV数字识别,红线循迹,STM32HAL库freeRTOS,串级PID快速学习,小车自动返回)

    2021全国大学生电子设计竞赛F题智能送药小车 前提:本篇文章重在分享自己的心得与感悟,我们把最重要的部分,摄像头循迹,摄像头数字识别问题都解决了,有两种方案一种是openARTmini摄像头进行数字 ...

  4. 2021电赛F题之openmv数字识别--更新(附带视频与代码)

    成果展示 常见出错解决方法 openmv数字识别源代码-gitee 效果如上 openmv的u盘里需要 思路: 模板匹配很简单,只不过使用起来需要自己拍摄大量的模板,同时如果模板数量较多那么就会造成严 ...

  5. 全球No.1集装箱人工智能企业中国上海人工智能领军企业CIMC中集飞瞳,已完成百万AI集装箱箱况残损检验识别,上亿集装箱信息识别

    全球No.1集装箱人工智能企业,中国上海人工智能领军企业CIMC中集飞瞳,已完成上百万人工智能集装箱箱况检验,上亿箱信息识别,全球最成熟集装箱人工智能AI. 应用在全球港口/堆场智能闸口,港口岸边智能 ...

  6. python识别图片上的文字_python识别图片文字

    因为学校要求要刷一门叫<包装世界>的网课,而课程里有200多道选择题,而且只能在手机完成,网页版无法做题,而看视频是不可能看视频的,这辈子都不可能看...所以写了几行代码来进行百度搜答案. ...

  7. 实现2020年TI杯大学生电子设计竞赛F题简易无接触温度测量、身份识别与口罩检测装置(未完待续)

    声明 本文仅在CSDN发布,其他均为盗版.请支持正版! 正版链接: https://blog.csdn.net/meenr/article/details/109298042 本文目录 *实现2020 ...

  8. 【电赛开发】2021-F题数字识别-YOLOV2(含无脑训练教程

    前言: 本教程采用K210跑模板进行数字识别,针对电赛的环境训练出来的效果更好 在比赛中对识别速度要求也不是很高,所以尽量追求正确率,我选择了K210跑YOLOV2模型 演示视频:BILIBILI 电 ...

  9. 戴上口罩AI变“脸盲”?口罩人脸识别黑科技来袭

    疫情期间,口罩在全国抗疫中起到了关键作用.但在口罩成为每一位公民"标配"的同时,对诸如"刷脸"支付.高铁闸机身份认证等需要人脸识别的场景提出了挑战. 口罩.帽子 ...

  10. 研究:即便是最好的人脸识别算法也会受到口罩干扰

    据外媒报道,研究人员发现,口罩不仅能有效防新冠肺炎等空气传播疾病的传播,还能成功阻止面部识别算法.美国国家标准与技术研究所(NIST)在周一发布的一份报告中指出,口罩甚至还能给最先进的面部识别算法造成 ...

最新文章

  1. intellij idea 必知的debug功能
  2. 178页,四年图神经网络研究精华汇总
  3. C++ 写时拷贝 2
  4. java初学者只要掌握了以下十大原则,可以让你的技术飙升
  5. 苹果秋季发布会于9月16日召开;华为搜索业务将在国内亮相;Android 11正式版发布 | 极客头条
  6. java for while do-while 循环的经典题
  7. vue设置页面取消滚动和可以滚动
  8. 案例分享:Qt modbus485调试工具(读写Byte、Int、DInt、Real、DReal)(当前v1.3.0)
  9. java异步队对联_对联广告(带关闭的)
  10. Unity多人联机框架Mirro学习记录(一)
  11. Jvav语言(0.1)版
  12. 朗逸保险丝安培数及保险丝配置说明
  13. Excel 2010 SQL应用105 域聚合函数之第一个和最后一个
  14. 以流量为主导的发展方式,注定了直播带货无法逃脱电商的宿命
  15. 数字计算机模拟人脑,人造突触问世 计算机模拟人脑不是梦
  16. 程序员必备的软技能-金字塔原理拆解(上)
  17. RK3288 LED驱动编写准备
  18. 基于javaweb的商品进销存系统(java+vue+springboot+mybatis+mysql)
  19. windows7更换系统时间服务器,Windows7系统更改时间同步服务器
  20. 华为开发者联盟生态市场企业特惠GO第1期—应用软件专题

热门文章

  1. Spring 框架基础(03):核心思想 IOC 说明,案例演示
  2. 【问题解决方案】从 Anaconda Prompt 或 Jupyter Notebook 终端进入Python后重新退出到命令状态...
  3. Python Flask高级编程
  4. 如何使用Log4net创建日志及简单扩展
  5. (回溯法)和为n的所有不增正整数和式分解算法
  6. WEB系统技术开发方向
  7. 39页第6题 求贷款的金额
  8. perl DBI高级编程
  9. mono 最近的三条消息
  10. Log-Polar——关于对数极坐标