姜建浩
衢州市人民医院设备处 (浙江衢州 324000)
随着人口结构的老龄化发展,我国老年人口在总人口中所占比例越来越大。老年人机体抵抗力差,是各种疾病的高发人群,而且老年人普遍存在行动不便、就医困难的问题[1]。解决老年人看病和保健的难题,实现智慧健康养老是我国医疗服务体系改革的重要目标[2]。现阶段的养老服务不够人性化,存在独居老年人缺乏亲情关爱、安全隐患多、医疗服务需求不能满足、子女无法实时了解老年人生活状况等问题。情绪是人对客观事物的态度体验以及相应的行为反应,情绪状态成为检测老年人对生活状态态度的一个定量指标,研究一种能够及时获取老年人情绪状态,尤其是负面(悲伤)情绪状态的远程监控系统具有重要意义。基于面部表情的情绪识别方法是一种不影响老年人日常生活的检测方法。本研究设计了一种基于情绪识别的远程老年人看护系统,该系统通过英特尔开放式视觉推理和神经优化模块Openvino 进行基于表情的情绪识别以判断家中老年人的情绪,利用Python 的微信操作模块Wxpy 进行微信信息交互,使用图灵机器人进行用户语句的模糊查询[3]。
该系统基于微信构建聊天机器人,以微信为操作终端构建聊天平台,通过图灵机器人对微信中的查询内容进行匹配,反馈查询结果。其中,聊天机器人采用Python 的Wechat_sender 模块进行构建,Wechat_sender 模块是一个基于微信操作模块Wxpy 和Tornado 的可以将网站、爬虫、脚本等其他应用中的各种消息发送至微信的工具[4]。
系统采用微信群作为用户界面,将检测老年人情绪状态的聊天机器人和家属加入微信群中。于老年人家中设置一个常规摄像头和服务器,该服务器包含两个运行单元,其中情绪识别检测单元用于获取摄像头图像并进行识别,然后将识别到的悲伤情绪信息发送至微信交互单元,由微信交互单元将悲伤情绪信息发送至聊天群组,同时存储相应的悲伤情绪图片到指定位置。
微信交互单元为图像获取程序,负责在微信群组通信。微信交互单元检测群组发出的文字信息,当接收到用户文字信息后,将文字消息传送至图灵机器人平台进行处理;图灵机器人平台接收信息后,查询语料知识库进行模糊匹配,并将匹配查找的内容反馈给微信交互单元;微信交互单元判断是否为需应答指令,如果为需应答指令,则提供悲伤情绪图片。系统架构见图1。
图1 系统设计架构
通过可以接入网络的电脑作为服务器,搭载情绪识别、微信信息交互相应程序。服务器配置如下:Inter®Core™i5 CPU 4.5GHz,Windows 7 专业版 64 位,4G 内存,500GB硬盘。Python 使用3.7版本。
情绪识别硬件使用英特尔神经计算棒二代,插入服务器USB 端,情绪识别通过搭载在神经计算棒的英特尔Openvino 工具套件实现[5]。Openvino 工具套件是英特尔于2018年发布的,主要用于计算机视觉、实现神经网络模型优化和推理计算加速的软件工具套件。本系统使用Python 面向Openvino 的模块进行数据处理[6]。
情绪识别的模型采用在Caffe,TensorFlow 等框架中预先训练的深度学习计算机视觉模型,然后使用Openvino 工具套件进行优化,获得模型的中间表示[7]。中间表示包括两个文件,一个是存储模型权重参数的*.bin 文件,另一个是描述神经网络拓扑结构的*.xml 文件。获得中间表示文件后,就可以在用户应用程序中调用推理引擎完成推理计算。本系统直接获取中间表示文件实现情绪识别,具体流程如下。
2.2.1 载入硬件插件和中间表示文件
2.2.2 准备输入输出张量
2.2.3 载入模型
2.2.4 准备输入数据
2.2.5 执行推理计算,获取情绪识别输出
2.3.1 情绪信息发送
在服务器上使用Python 搭建情绪识别程序,程序中使用Wechat_sender 模块与微信交互单元进行交互,即:
sender = Sender(token='test', receivers='家庭群')
2.3.2 微信信息交互
2.3.3 智能应答系统设计
这部分内容在图灵机器人的语料库完成。通过查询图灵机器人的开发者文档,开发者可通过创建自己的语料库实现自定义的智能问答功能[8]。此外,对于同一个返回答案,可以在图灵机器人语料库中添加相似问法,从而使图灵机器人能够更加准确地理解用户意图,如“帮我获取现在照片”的相似问法有“返回现在照片”“给我拿现在照片”等。为了进一步提高图灵机器人的应答准确率,可以修改应答匹配度。
在微信中输入的查询语句主要包含两类文字数据。一类为获取检测到悲伤情绪的图像,如“帮我获取悲伤时照片”,应答数据为“PIC_SAD_OUT”,当获取到该应答数据时,返回悲伤时照片;另一类为获取当下及时的图像,如“帮我获取现在照片”,应答数据为“PIC_NOW_OUT”,当获取到该应答数据时,返回及时照片。
当聊天机器人进入家属群之后,群内家属用户等待悲伤情绪检测信息。当检测到悲伤情绪时,聊天机器人会给出“检测到悲伤情绪”的信息,家属通过发布文字信息,如“帮我获取悲伤时照片”,聊天机器人返回最近检测到的悲伤照片。
本系统为一种基于情绪识别的远程老年人看护系统,是通过情绪识别和微信交互模块构建的实时监控老年人情绪的看护系统,目的是实现对老年人的及时关爱。本系统基于Openvino 的情绪识别判断家中老年人的情绪,通过Python 的微信操作模块Wxpy 进行微信信息交互,利用图灵机器人进行用户语句的模糊查询。本系统实例实现了家中监控老年人情绪状态,检测到悲伤情绪后发送到微信群,老年人家属通过文字信息获取悲伤情绪时图片。
虽然面部表情可以相对直接地反映出人们的心理活动和情绪状态,是情绪表达的重要方式,但在真实环境中,姿势、光照、距离等因素会对表情的识别产生较大影响。通过观察身体动作、姿势、语调等不同的形式可提高对情绪状态的识别准确度[9]。因此,研究如何通过整合身体姿态、面部表情等多模态信息以提高情绪识别准确率是下一步的研究重点。