基于梯度下降和滑动窗口混合算法的人体穴位定位研究

2020-04-22 08:14:24付阳阳高志宇
中医药信息 2020年2期
关键词:手掌准确度滑动

付阳阳,高志宇

(河南中医药大学信息技术学院,河南 郑州 450000)

穴位是位于人体经络线上的特殊点区部位,亦是人体神经末梢密集或神经干线经过的地方,也称之为腧穴。腧穴与脏腑经络密切相关,腧穴是人体脏腑经络气血输注、结聚与体表的部位。中医学中辨识穴位的方法有触法、按法、捏法等,对人体穴位进行准确的判别存在一定的难度。为使人们对于人体穴位能够有更广泛的认识,对穴位的辨识定位更加的方便快捷,以大陵穴为例,通过滑动窗口与梯度下降算法相结合的方法对人体穴位进行辨识定位。现报告如下。

1 算法设计

1.1 关键算法

1.1.1 滑动窗口

为缩小找寻图像目标点的时间,提高找寻目标点的准确度,本文运用滑动窗口以缩小目标范围,缩短筛选时间,提高寻找目标点的效率。

1.1.2 梯度下降

梯度下降法(gradient descent)或称最速下降法(steepest descent)是求解无约束最优化问题的一种常用的方法,他的实现比较简单。梯度下降法是迭代算法,每一步需要求解目标函数的梯度向量[1]。本研究通过运用梯度下降算法比较得出图像中变化趋势最大的两个目标点。

1.1.3 数字图像处理技术之相似图片搜索

每张图片都具有各自的灰度直方图图像,若两个图像的灰度直方图相近,就可以认为它们是相似的[2]。

1.2 混合算法设计

为增加穴位定位的准确度,故采用将滑动窗口与梯度下降算法结合的混合算法设计。该算法首先利用滑动窗口对处理过的图像进行目标范围的缩小,之后用梯度下降算法对搜寻到的目标范围进行依次梯度大小的比较,多次比较之后将找寻到的目标坐标点进行记录,以便后期进行处理。如图1所示。

图1 混合算法设计流程图

2 穴位定位模型设计与实现

2.1 图像预处理

采集到手掌的原始图像为RGB真彩图像,为了便于提取图像的轮廓以及提取图像的梯度值,应对原始图像进行灰度化预处理,通过rgb2gray()函数实现图像灰度化。如图2(a)所示。

2.2 穴位定位

2.2.1 穴位点确定依据

将图像以中指为分界线一分为二进行分割,通过滑动窗口分别找到各部分中的目标范围后,通过梯度下降法比较各目标范围中梯度变化趋势最大的目标点,由此可得出目标图像部分中梯度值最大的坐标点(x1,y1),(x2,y2),可得出两坐标点的中点(x3,y3)=[(x1+x2)/2,(y1+y2)/2]即为大陵穴。

图2 实验过程图像

2.2.2 穴位的确定

2.2.2.1 观察图像的梯度变化趋势

2.2.2.2 运用滑动窗口确定目标范围

在本研究中,笔者首先确定目标对比图像,为了增加实验结果的准确度,需对目标图像进行与原图像一样的预处理。通过数字图形处理中的灰度直方图的方法将目标图像与原图像进行对比,若两图的直方图很接近,则认为这两张图是相似的。其步骤为[12]:

图3 图像梯度变化趋势

a)分别获得两灰度图像的直方图的分布。

m1=t1(i,j)+1; m2=t2(i,j)+1

e1(m1)=e1(m1)+1; e2(m2)=e2(m2)+1

b)将获取到的灰度直方图分为64个区,每个区为连续的4个灰度等级。

c)对每个区中的4个值进行求和运算,将得到1个数据,以此类推,将会得到64个数据,该数据即为该灰度图像的一个向量。

m1(1,i+1)=e1(4×i+1)+e1(4×i+2)+e1(4×i+3)+e1(4×i+4)

m2(1,i+1)=e2(4×i+1)+e2(4×i+2)+e2(4×i+3)+e2(4×i+4)

d)依据步骤(1、2、3),将输入的两幅灰度图像转化为2个向量,即为A、B。

A=sqrt(sum(sum(m1.^2))); B=sqrt(sum(sum(m2.^2)))

e)本文运用余弦相似度来计算A、B的相似度(若两向量的余弦值越接近1,则两个向量的夹角越接近0度,即认为这两个向量是相似的)。

cos1=C/(A×B)

对原图像做类似相同的滑动实验两次之后,即可确定出目标点所在的目标范围。图2(b)为通过滑动窗口所找寻到的目标范围。

2.2.2.3 确定坐标

目标范围确立后,在目标范围内,使用gradient()函数对图像中的每个坐标点依次进行梯度值的比较,找出梯度值最大的两个坐标点(x1,y1)、(x2、y2),即可得出这两点的中点坐标(x3,y3)=[(x1+x2)/2,(y1+y2)/2]。即可确定出大陵穴的坐标为(x3,y3)。如图2(c)为所找到的大陵穴的位置。

3 结果分析

3.1 研究对象预处理

本研究是将人体手掌部位作为研究对象,首先在采集图像时要保证图像的清晰度,将清晰度不够的图像舍去,也要将完整度不够的图像舍去。尽可能的选取不同年纪、不同大小、不同性别的人体手掌作为研究对象,以使研究结果更为客观和全面。而文中对图像进行的灰度化预处理,目的在于通过灰度化使RGB真彩图像生成为8位的灰度值图像,使其可以对研究对象进行直接处理,减少后续处理时的计算量,提高计算机的运行效率。灰度化处理的方法有很多,由于文中是以Matlab9.0为基础,故使用采用加权平均算法的rgb2gray()函数对RGB图像进行灰度化。

3.2 算法分析

在无约束的优化算法中,除梯度下降法外,还有最小二乘法、牛顿法和拟牛顿法,本文之所以选择梯度下降法与滑动窗口相混合是因为与最小二乘法相比较来说,梯度下降法是通过迭代求解的,在样本容量较大时,梯度下降法的迭代相对来说较有优势,而之所以不用牛顿、拟牛顿法是因为尽管牛顿、拟牛顿法是通过迭代进行求解的,但其求解主要依据二阶的海森矩阵的逆矩阵或者逆矩阵,使其每次的迭代时间都要比梯度下降法的时间长。其次本文主要的研究对象是人体手掌部位,其整体的梯度变化趋势较为明显,通过比较研究对象图像的梯度值的大小更易于确定目标点,故本文采用了梯度下降法与滑动窗口进行结合。

3.3 实验过程分析

1)本文起初利用gradient()函数对图像整体进行直接求取梯度值,并以中指为分界线将手掌一分为二,分别对手掌的两边进行求取梯度值,将两边图像中的每个坐标点的梯度值依次比较,求取出梯度值最大的坐标点,以确定目标坐标点。其代码如下:[ax,ay]=gradient(b);g1=sqrt(ax2+ay2);由于在整个实验过程中,所受到的不可抗干扰因素太多,同时由于部分不同手掌部位的梯度值差别较小,致使经过多次的实验探究,其所取得的结果与所要得到的目标结果相差甚远。

2)为了使实验中得到的真实值与目标值更为贴近,本文尝试通过缩小找寻坐标点的范围以来降低实验过程中所受到的干扰,提高实验结果的准确度。文中首先选用的是通过卷积求矩阵交集的方式来找寻出两图像的共同点,以来缩小目标范围。本文以a=[010,010,010]、b=[000,111,000]作为卷积核,分别求取出图像的边缘卷积result1、result2。其代码如下:

Result1=imfilter(R2_2,a);Result2=imfilter(R2_2,b)

3)运用c=intersect(result1,result2);找出result1、result2两矩阵的交集,C的结果值为0,1,由此可见用边缘卷积找矩阵交集的方法确定坐标点(x1,y1)、(x2,y2)对我们想要缩小找寻目标范围并没有起到很大的作用效果,故该方法不可行。

3.4有效性分析

本文采用将滑动窗口与梯度下降相混合的方法缩小目标检测范围,为检测该方法对于不同人体手掌部位的穴位识别的准确度,分别对不同人体的手掌进行了100次测试,结果显示,通过该方法对不同手掌穴位定位准确率可达到90%,未正确确定目标点的坐标点其误差也很小。其误差所产生的原因在于图像从收集到图像处理,参与计算整个过程中有可能会受到来自摄像机噪声,光电子噪声,椒噪声等不可预测的图像噪声的干扰,使得计算机的计算结果会产生随机误差,表1为其中10次的抽样数据,图4为单个手掌与多个手掌分别进行的抽样数据的有效性分析。

图4 有效性分析

表1 不同人体手掌图像测试

3.5 对比分析

为了检测该方法高效性,本文采用100个不同研究对象同时进行测试,旨在比较人工识别与该方法识别所需时间的长短以及其准确度的高低。结果显示,传统的人工识别穴位所需花费的时间远远超过计算机穴位的定位,但其定位穴位的准确度并非远远高出计算机穴位定位的准确度。并且随着研究对象数量的不断累加,计算机识别穴位的准确度与人工识别的准确度间的差距与其成反比,而计算机识别穴位所需时间与人工识别所需时间的差距与其成正比,由此可见计算机识别穴位的优势高于人工识别。如表2所示,为实验测试的数据结果,如图5为人工识别与计算机识别对比分析。

表2 人工识别与计算机识别比较

图5 人工识别与计算机识别对比分析

4 结论

图像采集过程中最好采用白色背景,易于后期图像与背景的分离,图像在后期的处理过程中背景最好采用透明的,降低噪声对图像求取梯度值的微干扰,以提高求取图像梯度值的准确性。直接对手掌图像的整体进行操作纵然简单易行,但由于在识别过程中会受到各种不可避免的因素的干扰,梯度值之间的较小差距,同时由于梯度下降算法所能找到的不一定是整体最优解,可能是局部的最优解的特性,都将使计算机识别结果受到影响,使其识别的准确度产生较大误差,故为避免计算过程中所产生的不必要的干扰,增加计算机识别结果的准确度,首先通过滑动窗口缩小目标范围之后,再对目标范围内的图像进行一系列的梯度处理,从而也进一步提高了计算效率。本文通过将滑动窗口与标准梯度算法混合的形式对人体穴位进行识别定位,结果显示,该方法能够有效提高人体穴位定位的效率,明显缩短人工识别穴位所需花费的时间。该方法的实现可以证实计算机能够很好的服务于中医,以计算机为辅助发展中医亦成为当今社会中医发展的趋势之一。

猜你喜欢
手掌准确度滑动
摊开手掌
一种新型滑动叉拉花键夹具
幕墙用挂件安装准确度控制技术
建筑科技(2018年6期)2018-08-30 03:40:54
手掌上的童话
Big Little lies: No One Is Perfect
动态汽车衡准确度等级的现实意义
手掌上的“小洞”
滑动供电系统在城市轨道交通中的应用
一种基于变换域的滑动聚束SAR调频率估计方法
雷达学报(2014年4期)2014-04-23 07:43:07
高炉重量布料准确度的提高
天津冶金(2014年4期)2014-02-28 16:52:58