基于计算机视觉的手势识别康复系统研究与应用

2023-01-18 10:07:58
科技创新与生产力 2022年12期
关键词:手势手部病患

唐 莉

(景德镇学院,江西 景德镇 333000)

手部疾病不仅对个人、家庭造成医疗负担,还会增加国家在医疗方面的支出,影响经济发展。虽然现在市面上出现一些以分析病患手掌信息的数据手套,或是以手部触觉为技术基础的手部康复系统,但是却存在价格昂贵、设备重量过大、灵活性不足等问题,并不适用于大面积推广。因此,本文将以计算机视觉角度,对于手势识别康复系统做全面分析。

1 手势识别康复系统基本结构

当前,治疗手部疾病主要有两种智能化方案可供选择:一是以数据手套为技术基础的手部远程虚拟康复系统。这种治疗方案需预先创设虚拟场景,由病患通过数据手套对场景中的小球进行抓握,缓慢恢复手部正常功能,实现手部康复训练。但整体设备拥有一定重量,会带给病患较大的负重感,极容易在康复训练中出现二次伤害,影响手部正常恢复。并且现在数据手套的一些技术尚未突破,无法实现批量试生产,导致整个康复设备的价格偏高,并不适合大面积推广应用。二是以人体触觉为基础的虚拟康复系统。这种治疗方案是在虚拟场景的基础上增加人体触觉系统,从而设计用于手部康复的“3D迷宫”,病患通过举起、放下杯子,或者对小球抓握等手部动作,控制图像完成迷宫任务,在任务过程中进行手部训练[1]。虽然这种治疗方案可以提升患者对手部训练的积极性,但是受限于技术,导致系统仅支持数个特定动作,病患的恢复训练不具备动作的灵活性。

本文设计的手势识别康复系统基本结构见图1。

图1 手势识别康复系统基本结构

2 手势识别康复系统结构功能模块

本系统应用PyCharm编辑器,可以有效提高编程速度,控制系统开发时间。以Anaconda管理数据包,并以开源视觉库OpenCV为主,卷积神经网络为辅,负责处理图像数据,sklearn用于模型训练,PyQt则用于界面设计,实现数据可视化[2]。

2.1 图像采集

通过PC端摄像头实现采集病患的康复手势,OpenCV在接收图片信息后,会将其细分为许多像素点,构成表述图片的像素图,并把图像移动至文件夹,通过命名文件夹的方式标记图像内容。

2.2 图像预处理

2.2.1 图像分割

PC端摄像头负责采集各个等级的灰度图像,但是在许多应用场景中,仅需要纯黑、纯白两种类型的图像[3]。例如卷积神经网络提取图像特征信息时,只需输入线条、文字构成的图像,以此加快信息提取速度,提高模型训练精度。本文将应用自适应阈值二值化算法,对图像做分割处理。对于摄像头获得的彩色图片做灰度化处理,再通过二值化处理灰度图像,获得一个阈值。如果阈值小于灰度,则将该区域设置为255像素;如果阈值大于灰度,则将该区域设置为0像素。该方法是针对一些拥有较大的光影变化图像,利用其灰度直方图获得契合图像信息的二值化阈值,通过两个合适高斯,在两者相交的灰度值,就是应用的阈值。图像二值化自适应阈值通过最大类间方差法(OTSU)获得。阈值把图像划分成前景、后景两个部分,现设定阈值为T,像素对应的灰度级设定为f(x,y),通过阈值分割得到的图像g(x,y)则被设为

式中:T为分割阈值;1为前景;0为后景;两者共同构成图像二值化。

在选择最符合应用条件的阈值时,需保证目标和背景拥有最大化差别,可使用OTSU进行推导。

图像总平均灰度U的表达式为

前景与后景的方差S的表达式为

式中:W0为前景点数在图像中的占比;U0为前景平均灰度;W1为后景点数在图像中的占比;U1为后景平均灰度。

只有在S最大时,才能让前景与后景拥有最大差距,获得的灰度即为最佳阈值。

2.2.2 图像平滑处理

作为计算机视觉实现相对简单、应用频率高的图像平滑处理,其主要负责降低图像噪点,控制分辨率。图像如果没有经过处理,会携带例如噪音等高频信息,直接做卷积运算会造成运算成本额外支出。因此,需要通过滤波器去除噪音,将图像做模糊处理。本文将应用均值平滑滤波的图像做平滑处理。作为一种线性滤波算法,均值滤波是向目标像素值提供滤波模板,这个模板拥有目标像素附近m×n个临近像素,即将目标像素预先取出,以目标像素附近的像素平均值描述目标像素值。m×n构成的矩阵被称作核,利用核对像素点进行处理,在去噪处理后,即可获得结果图像。均值滤波处理公式为

5×5矩阵即为模糊内核,本文将采用blur()方法对图像做平滑处理。

2.3 图像分类

因为计算机是以像素值方式识别图片,并不是以人类视觉分辨事物、类别,因此需要以图像分类方式对图片做区分。本文将通过卷积神经网络图像分类算法进行图像分类。使用主成分分析(Principal Components Analysis,PCA)技术,对图像特征和需要分类处理的图像特征码做提取操作,以特征码获得输入项,图像标签当成输出项使用,并将两项送入神经网络中做训练操作,让神经网络对各个类别图像特征进行学习,并在最后把待分类特征码输入,测试神经网络的学习效果,利用神经网络输出项分析图像的类别。

2.4 图像识别

计算机是以颜色轮廓区分图像,由三原色构成的颜色可以利用调色方式获得各类图像颜色。在图像识别中,本文应用RGB(Red,Green,Blue)通道对图像做识别操作。OpenCV最常见的图像通道有单通道与三通道。使用灰度描述色彩的黑白图像,即为单通道。比如黑色像素值为0,白色像素值为255,因此灰度范围处于0~255范围内。彩色图像需要使用RGB通道进行描述,即为三通道,比如白色是(255,255,255),黑色是(0,0,0)。为让本文内容更具有应用价值,将应用三通道进行图像识别。

3 基于计算机视觉的手势识别康复系统设计

3.1 康复系统运行流程

3.1.1 样本采集

由病患在系统界面的识别方框中做出手势,通过摄像头进行识别,并将拍摄内容保存于文件夹中,通过文件夹命名标记手势。本文在查阅大量手部疾病医疗档案后,现定义几种手势,分别为等待动作的悬垂、锻炼两个手指的二指捏、运动手腕的击打、四指联动的柱状抓握、单个手指获得的勾拉、手指与手腕联动的侧捏,由此构建康复手势数据库。使用cv2.VideoCapture(0)调用PC端摄像头,对于病患的手势进行采集。为了让系统更加具有适用性,服务更多病患,选择10岁及以下、11岁到50岁、50岁以上3个年龄段的人群,拍摄500张手势图,图片规格设定为306×306。以正午阳光作为光源,在室内进行正常拍摄收集。并且采集手势保持男女比例平衡,扩大系统适用性。

3.1.2 图片预处理

为让手势训练期间的过拟合与处理图片计算量得到有效控制,要对图片做预处理。使用cv2.Imread()加载图片,并通过Numpy array()归一化处理图片,使模型获得更快的收敛速度,有效提高精度,再通过LabelBinarizer()对图片做二值化处理,把原本摄像头采集的彩色图像转化为黑白图像,此时图像被称为二值化灰度图像。利用blur()实现平滑处理二值化灰度图像,有效控制图像携带噪声。通过pickle dump(lb,f)把图像的标签数据更改成dat文件,便于后续神经网络训练与模型测试。

3.1.3 神经网络训练

对于本文设计的手部康复系统,在神经网络结构中涉及5个拥有相同卷积核规格的卷积层,并使用全零填充模式,应用Relu激活函数;3个规格为2×2、步长为2的池化层,要求池化操作最大化;以及2个全连接层。在设置全连接层前,本文设计的系统还使用Dropout模式,将50%的神经元参数进行随机丢弃,通过将这些参数在现在的神经网络训练中排除,实现预防过拟合目标。最后,使用Softmax函数于输出层,实现分类输出训练结果。

3.1.4 模型测试

确保模型使用的精度,要对模型做安全测试。先通过pickle load()对标签数据进行加载,同时load_model()调动神经网络运行,并通过inverse_transform()把已经标准化处理的数据转变成原始数据,通过调用cv2.VideoCapture(0),将PC端摄像头打开,并于界面区域作出存储在数据库中的病患手势,利用cv2.putText()把手势类型投影在屏幕上,利用识别区域做出手势,对屏幕显示类型进行对比,判断模型是否拥有良好的准确度。模型测试要进行重复多次,直到模型测试对于手势判断拥有较高的准确度,并且模型测试结果逐渐趋于稳定时,才能将该模型应用在后续的手部康复训练中。

除此之外,本系统还提供康复历史查询功能,病患可根据需求查询以往手部康复训练情况。

3.2 病患康复训练过程

患有手部疾病的病患,在接触本文设计的康复系统时需要确认是否是首次使用,如果是,则要由病患根据康复训练要求,将各类手势输入到系统中;如果不是,则跳过该环节。康复系统会将病患输入的各种手势作为一组,一个疗程拥有多组手势训练,引导病患做康复训练。在训练期间,病患要以设备屏幕显示的文字信息为准,于界面区域做出屏幕要求的手势,做出本疗程的全部手势后,本疗程结束。在手部训练结束后,会将其作为数据送入数据库储存,病患可以通过历史查询选项,查看数据库对过去疗程中的康复训练反馈信息,由系统分析病患在过去疗程中手部训练完成度,并对训练计划展开科学调整。在初次接触康复训练系统时,病患可以将疗程的组数设置为1~3组,用于适应性训练。等到病患已经适应当前康复训练强度后,则通过增加单个疗程训练组数的方式,提升训练难度。这种循序渐进的康复训练模式,可以让病患逐渐提升康复训练信心,也能利用这种难度引导方式,提升病患手部恢复质量。

近些年,我国人工智能领域积极和其他领域进行融合发展,手势识别康复就是人工智能与医疗结合的最新产物。未来若想让手势识别康复系统得到更广泛应用,降低生产成本,提升康复训练效果,就需要积极和手部医疗相关医院展开深度合作,将更多医护知识应用在系统中,以此实现优化训练类型、过程设计。

猜你喜欢
手势手部病患
手部皮肤软组织缺损修复的皮瓣选择
老年冠心病无痛性心肌缺血患者的临床护理效果观察
氨磺必利与喹硫平对老年精神分裂症的诊疗效果比较
挑战!神秘手势
分析严重创伤患者并发精神障碍的心理疏导及护理体会
智慧健康(2019年7期)2019-01-30 23:56:37
V字手势的由来
胜利的手势
制度变迁与明代官员病患叙事的演变
两种皮瓣修复手部软组织缺损的比较
发生于手部的硬下疳一例