张家源 刘建华 傅周超 严涵 齐子康 程博洋
摘要:智能家居是一种新兴的物联网技术系统,基于手势识别控制智能家居的人机交互系统设计,是一种新的改善传统智能家居人机交互的方案。利用中智讯公司的机器视觉平台模拟获取操作者的手势,并与控制器进行命令交互,结合AI高清摄像头以及智能节点控制等单元,搭建一个智能家居感知控制系统。通过试验测试采集并分析数据,结果表明,该系统具有良好的可行性,简单直观实现新的智能家居控制方式。
关键词:手势识别;计算机视觉;人机交互;物联网;Zigbee
中图分类号:TP391 文献标识码:A
文章编号:1009-3044(2023)13-0105-03
开放科学(资源服务)标识码(OSID)
0 引言
近年来,随着人工智能、机器视觉等领域的高速发展,手势识别技术在人机交互、AR等领域取得了不错的成果。目前,手势识别技术是当下非常流行的一种人机交互技术,这种技术提供给用户便捷、灵活的交互方式,面向智能家居的手势控制方式又具有操作简单、人机交互友好等优点,所以这种技术是未来智能家居的发展趋势之一。
目前,手势识别技术大致可以分为三个等级:二维手型识别、二维手势识别、三维手势识别。其中,前两者是基于画面中的二维坐标信息进行手势识别,而三维则由于包含深度信息(z坐标)在识别技术和系统上都有更复杂的实现方式。例如利用Hausdorff距离模板匹配思想来实现手势的识别[1]、基于DTW的手势识别算法[2]、基于CRF和HMM混合模型的手势识别[3]等。其中,易靖国等人[4]提出通过Kinect深度摄像头采集信息并用Hu矩进行提取手势特征,利用BP(Back Propagation) 神经网络的手势识别方法很好地适应复杂环境,本文在此基础上,通过Zigbee搭建平台模拟实现智能家居手势交互控制,以此分析测试。
1 系统功能需求分析
传统的智能家居控制方式以手动开关或无线方式控制,当遥控器或开关失灵无法控制家居设备时,家居设备的使用往往会遇到很大的不便。本文设计的手势控制智能家居,能在没有遥控器的情况下,使用手势直接控制智能家居设备,方便了用户使用智能家居设备,摆脱了遥控器或者开关的制约。目前的手势识别产品,由于识别率较低,没有得到大面积推广。该系统的实现将使手势控制智能家居的识别率提升,推动其在智能家居领域的应用。该系统主要通过智能摄像头识别手势,把手势映射为智能家居设备开关指令,通过ZigBee无线网络通信技术控制空调、电风扇、灯光的开关状态。本系统实现如下功能:
1) 手势图像采集:目前常用的手势特征包括轮廓、边缘、图像特征向量、区域直方图特征等,在安卓系统端使用统计分析技术,通过统计样本特征向量来确定分类器。
2) 手势识别:在安卓端对采集的图像进行手势的识别。
3) 执行控制:把识别的结果转变为控制信号,通过无线传感器控制智能家居设备。
2 系统框架设计
系统总体硬件组成如下:1) AI高清摄像头;2) 智能边缘计算网关;3) 智能+产业套件,其中智能产业套件由ZigBee节点天线、风扇、LED灯、继电器、RJ45通信连线、步进电机、ZigBee无线节点、智慧家居套件节点等组成。本系统是利用机器视觉平台模拟操作者与控制器进行人机交互,共分为三个部分:操作者动作采集部分、传感器被控制部分、数据处理部分。各部分功能如下:1) 操作者动作采集:操作者面向摄像头做出命令动作,摄像头将识别手势数据传送至数据处理中心,进行图像识别处理;2) 传感器:接收数据处理中心发来的控制命令并完成相应指令,如风扇转动(停止),LED灯的亮(灭)等;3) 数据处理中心:协调系统控制流程,完成数据交换与图像识别处理。系统总体框图如图1所示:
本系统的软件设计主要分为边缘计算网关网络配置、数据中心处理、动作识别算法设计以及各智能产业套件的无线连接。下面主要介绍数据处理中心设计。
数据处理中心主要负责數据的集中处理计算,包括整个系统的数据传输、信息处理等。当摄像头采集和处理数据完毕后,数据包将传送至数据处理中心,通过算法进行分析和识别,再将其控制命令发送至传感器完成相应指令。其软件工作流程如图2所示。
在软件系统内建立识别库样本,设置不同手势完成对应操作,如手势“2”完成开关风扇、开启LED操作等。
4 系统实现
4.1 识别模块
在识别模块中,系统负责抓拍用户手势图像,并进行预处理,然后提取手部外观特征构建样本,同时根据参数进行识别并反馈输出识别信息至数据处理中心进行处理。其识别结果与图片中手部的外观特征有关,如位置、轮廓、纹理,也与图像矩、图像特征向量以及区域直方图特征有关。因此,需要反复进行训练,补充扩大样本库才能提高识别准确性。
用户手势动作识别的过程具体如下:
1) 获取手势动作。在对手势动作的加速影像进行识别判断、综合分析之前,首要的基础就是要能够顺利地获取手势的有效动作数据。这种有效地动作表现为在比较明显的静止时间内出现短暂的动作区段。
2) 建立样本库。本次系统所采用的模式识别主要运用的是处理分析法,这种方法的本质就是对手势影像的每一个动作进行信息采集,构建强大的动作样本库,在库内针对每一个动作手势,进行不同的分解识别,然后对其进行处理分析。
3) 模块识别。对于采集的手势动作影像数据库具有很高的要求,能够有效地提取分析库内动作的有效特征,并生成特征的子空间;也可以将动作的子特征再次投影,构成一组新的数据库,将其与有效的动作片段库进行对比,找出操作者的动作区别,更精准地分别识别操作者动作。
4.2 控制模块
识别信息结果与构建模型进行校对,若两者相吻合,则输出命令控制传感器,完成相应指令,如图3、图4所示。
5 实验测试结果與分析
5.1 动作识别功能测试
操作者完成各个手势动作样本采样,设置A、B两组正反手势识别,C组在复杂背景下进行,每种手势采样数量各为10,测得误识别率最高为25%,不识别率为0%,C组偏差过大,不作展出(由数据看出,手势的正反也对识别有一定影响,且复杂的背景环境也对识别有很大干扰,猜测是算法模型问题导致)。重复数次实验后,A、B两组各动作的误识别率和不识别率表1所示。
5.2 操作者定位测试
通过摄像头不仅可以抓取操作者的手势动作,同样也可以获取操作者的位置信息,对于操作者的位置信息检测到人体在室内的位置,通过图像校正的功能对操作者进行有效定位,可以对单纯的手势识别进行补充,系统可以通过操作者的位置信息判定手势控制的有效时段,更好地控制智能家居的反应效果。
6 结束语
本文研究基于手势识别的智能家居控制系统,主要是对用户手势进行识别,并能准确地操控智能家居产品,完成相应的指令。采用Python的开源Web 应用框架Django搭建手势识别系统,以此对智能家居进行控制。经测试,系统能较好地识别手势并作出相应指令。后续研究包括:进一步调整优化算法,提高识别准确度、分别对不同场景下不同干扰下对手势识别[5]、准确分类手势类型[6]并通过卷积神经网络进行识别训练[7]。
参考文献:
[1] 苏九林.Hausdorff距离在手势识别中的运用[D].上海:上海海事大学,2004.
[2] 佟喜峰,樊鑫.基于DTW的手势识别算法[J].计算机与数字工程,2022,50(8):1782-1786.
[3] 蔡旻,高涵文,李华一,等.基于CRF和HMM混合模型的手势识别方法[J].计算机应用与软件,2021,38(11):162-166.
[4] 易靖国,程江华,库锡树.复杂背景下的手势识别方法[J].数字技术与应用,2016(9):50-53.
[5] 杨波,宋晓娜,冯志全,等.复杂背景下基于空间分布特征的手势识别算法[J].计算机辅助设计与图形学学报,2010,22(10):1841-1848.
[6] 解迎刚,王全.基于视觉的动态手势识别研究综述[J].计算机工程与应用,2021,57(22):68-77.
[7] 万宇.基于轻量型卷积神经网络的手势识别及应用[D].武汉:江汉大学,2020.
【通联编辑:唐一东】