APP下载

基于树莓派的智能语音提醒系统

2019-11-16张润午赵海舟曾凡瑞汤留阳

物联网技术 2019年10期
关键词:树莓派魔镜人脸识别

张润午 赵海舟 曾凡瑞 汤留阳

摘 要:出门时忘记带某物或忘记某事是生活中普遍遇到的现象,这给人们的工作与生活带来困扰,文中针对这种现象设计并实现一个基于树莓派的智能语音提醒系统。在手机端通过系统APP将备忘内容发送到树莓派,当用户出门时,系统对用户拍照并通过Face++平台提供的功能进行人脸识别,语音读出该用户相应的备忘信息,起到提醒的作用。同时该系统还配有屏幕,显示时间、天气、问候语等,给用户带来智能化的出门体验。

关键词:树莓派;人脸识别;蓝牙传输;Python;文字转语音;魔镜

中图分类号:TP27文献标识码:A文章编号:2095-1302(2019)10-00-03

0 引 言

随着科技的迅猛发展,人们的生活水平日益提高,众多的科技产品使人们的生活更加便捷与高效。与此同时,人们的需求也越来越高,这就需要更多智能化的产品走进人们的日常生活中。近年来,随着物联网的普及,智能家居产品的使用越来越普遍[1]。试想一下这样一个场景,当你收拾东西慌忙出门时,来到门口,传来一个声音提醒你别忘了带某份重要文件,你因此避免了一次工作上的重大失误。这样的智能生活体验正是本文智能语音提醒系统可以带给用户的。

目前,该领域的产品较少,比较出名的是Nut防丢贴片,但其不能解决出门忘带东西的问题,且有其他不少缺陷。首先,用户手机对该Nut的APP必须完全信赖,提供所有权限,且必须保持蓝牙一直处于开启状态,给用户带来极大不便;其次,Nut防忘贴片根据贴片与手机之间蓝牙信号的强弱判断距离,对环境的适应性较差,在墙体较多的地方、较近的距离就会报警,而在空旷的地方、较远的距离却不会报警,家庭的门是一个固定位置,Nut防忘贴片无法做到出门时提醒。本文智能语音提醒系统可在用户来到门口时,提醒用户带某物或做某事,弥补了目前产品在这一板块功能的不足。

系统以树莓派为核心进行控制,用户在手机上安装通过蓝牙串口软件改进后的“提醒小助手”APP,该软件将用戶备忘的信息通过蓝牙发送到树莓派。当用户出门时,树莓派将摄像头拍摄的用户照片上传至服务器进行人脸识别,通过返回的结果判断是家中的哪一位用户,并将其备忘的信息通过音响读出,从而达到提醒用户的目的。

1 系统硬件构成

1.1 系统总体结构

系统以树莓派为控制核心,摄像头、音响、屏幕等外设都与树莓派相连,手机通过蓝牙与树莓派连接,树莓派通过WiFi连接到云端服务器,总体结构如图1所示。

1.2 树莓派3代B+

树莓派作为微型计算机,相比传统计算机只是缺少了显示屏幕和键盘,USB端口可以方便地连接Linux免驱摄像头,具有独立的40个GPIO引脚。树莓派可以运行Python语言,并进行编译,运算速度快,价格低[2]。

树莓派3代B+是树莓派基金会于2018年3月14日发布的新版本,如图2所示,主频达到了1.4 GHz,在无线网络以及蓝牙性能上相比上一款产品也有较大提升。树莓派作为系统大脑,强大的性能是完成系统核心功能的基础。

1.3 USB高清摄像头

由于要对照片进行人脸识别,因此需要照片足够清晰。本文选用1080P高清USB摄像头,如图3所示,相比树莓派原装摄像头Pi Camera的清晰度提高了许多。

1.4 便携式音响

用户备忘的信息需要通过语音的方式读出,通过便携式音响来完成,如图4所示。在实际操作过程中发现,树莓派与音响通过蓝牙配对与连接不稳定,所以采用有线连接的方式,保证系统稳定性。

1.5 20寸屏幕

屏幕用于实现系统的附加功能,即“魔镜”的功能。屏幕上显示当前的精确时间、天气、温度、风力、日落时间,以及未来几天的天气与温度。屏幕正中显示问候语,系统会在上午、下午、晚上显示不同类型的问候语。摄像头固定在屏幕边框上,用户出门时只需下意识地看看时间、温度、天气等,就可被摄像头拍照,然后上传到服务器进行人脸识别。屏幕如图5所示。

2 系统各部分功能的实现

2.1 整体的运作流程

用户在手机上打开“提醒小助手”APP,打开蓝牙并连接到树莓派,此时用户就可在APP的消息发送界面将备忘的信息发送至树莓派,树莓派根据连接手机的Mac地址识别是家庭中哪位成员备忘的消息,并将用户发来的信息存到相应文本中。若用户出门,用户看“魔镜”时会被摄像头拍照,树莓派则将照片上传至Face++平台服务器中进行识别,平台在事先已经建立好的家庭人脸集合中识别出最相似的人脸,树莓派通过平台返回的数据即可判断出是家庭中的哪位成员,随后将相应的备忘内容读出,提醒用户。系统整体运作流程如图6所示。

2.2 手机与树莓派的蓝牙连接以及数据传送

树莓派3代B+自带蓝牙功能,无需另外加装蓝牙模块,但在实际使用过程中发现,树莓派的原生蓝牙在传统连接方式下与手机只能实现配对,无法实现稳定连接。因此,本文采用RFCOMM协议,在该协议的监听功能下实现手机与树莓派蓝牙的连接。RFCOMM协议还提供查看连接设备信息的功能,可获取手机的Mac地址,由此区分是哪位家庭成员的手机。在该协议下,树莓派收到的信息会自动储存到/dev/rfcomm0中,这是一个会随着蓝牙连接的断开而删除的文件,用程序可将其写入到该家庭成员对应的文本文件中,用户每次写入的信息会覆盖前一次的信息。出于对用户误触发或没听清等情形的考虑,提醒完之后备忘信息不会被立即删除,实现该部分功能的主要Python程序如图7所示,其中get_mac_addr是将手机的Mac地址从设备信息表中提取出来的函数。

2.3 利用Face++平台实现人脸识别

人脸识别的程序一直循环运行,摄像头也一直处于循环拍照状态。若未识别到家庭成员的人脸则不执行任何指令;若识别到某一家庭成员的人脸,则读出相应的备忘信息。事先调用API在Face++平台上创建一个Faceset,Faceset是所有家庭成员人脸照片的集合,这些照片作为家庭成员的人脸标准照片。Face++平台的人脸识别能力强大,提供每位家庭成员一张人脸照片即可。当摄像头拍摄照片后,通过调用API的方式将该照片上传至Face++平台服务器,并在Faceset中寻找与其最相似的照片,最后返回置信度,找到标准照片的Face_token(Face_token即为与传到Face++平台服务器的照片一一对应的编号)。若置信度小于设定阈值,则不执行任何指令;若置信度大于设定阈值,则通过Face_token识别出是哪位家庭成员,即可将备忘内容读出进行提醒。

2.4 将用户备忘的信息用语音读出

用户备忘的内容最终要通过语音的方式从便携式音响中读出,为此本文在树莓派上安装eSpeak软件作为一款开源软件,便于将文字转为语音读出。在此基础上,利用eSpeak读取文本文件里的内容,从而将用户备忘的内容读出。调用API进行人脸识别及将备忘信息语音读出的主要Python程序如图8所示,其中get_conface是通过API向Face++平台服务器请求Search功能并将返回值中的confidence與face_token提取出来的函数,espeak_txt_chinese是将指定文本中的内容通过eSpeak软件语音读出的函数。

3 系统实现

安装好的系统外观如图9所示,用屏幕支架可将屏幕悬空固定,支架可调节,便于将屏幕置于方便且舒适的位置与角度。摄像头固定在屏幕上方,用户观看屏幕时会被摄像头拍照,树莓派与便携式音响等放置在任意方便位置即可。系统运行之后,屏幕上出现了时间、天气、问候语等信息。

系统测试时,模拟有两名家庭成员的情景,APP界面如图10所示。两名成员都先后发送了自己的备忘信息,模拟出门场景。两名成员先后出门,出门时看“魔镜”上的天气、时间及问候语,其出门场景分别如图11、图12所示,系统正确地读出了相应的备忘信息。测试到有效的人脸识别范围为距摄像头两米以内,符合实际要求。

4 结 语

智能家居以提高生活高效性、舒适性与便利性为主旨,着眼于生活中的小细节,以改善用户生活体验。本文智能语音提醒系统着眼于生活中普遍存在的出门忘物与出门忘事现象,在用户出门时提醒相应的备忘信息,屏幕上的时间、天气与问候语增添了科技感与亲切感,给用户的生活带来了便利与更好的体验。

参 考 文 献

[1]党鹏,马菁.物联网在智能家居中的应用与发展[J].计算机产品与流通,2019(4):120.

[2]曾杰,陈超波,赵楠,等.基于树莓派的搜检机器人的设计[J].计算机与数字工程,2019,47(3):700-705.

[3]马帅.基于树莓派的人脸识别门禁系统设计与实现[D].大连:大连交通大学,2018.

[4]牛可,张珣.智能家居语音识别通用语音AI云平台的设计与实现[J].物联网技术,2019,9(2):68-70,74.

[5]马馨雅.基于树莓派的智能实验室管理系统[J].科技风,2019(2):9.

[6]张满青,唐辉,张慧,等.树莓派和人脸识别的云端智能课堂考勤系统[J].单片机与嵌入式系统应用,2019,19(1):35-37.

[7]蔡舒旻,盛希宁.基于树莓派和Adruino的室内空气品质监测系统[J].机电工程技术,2019(2):69-70,89.

[8]汪志敏.基于树莓派的智能监控系统设计[J].科技广场,2017(3):89-91.

[9]陈必东,谭美娟.基于RaspberryPi+Arduino智能家居雏形系统的探索与研究[J].智慧工厂,2016(6):49-54,63.

[10]李奕.物联网建设中的蓝牙技术运用分析及研究[J].中国新通信,2018,20(23):25-26.

猜你喜欢

树莓派魔镜人脸识别
人脸识别 等
这是一面魔镜
揭开人脸识别的神秘面纱
魔镜,魔镜,告诉我
智能安全防盗探测小车
基于嵌入式技术的农村医疗系统设计
基于类独立核稀疏表示的鲁棒人脸识别
基于K-L变换和平均近邻法的人脸识别