湛 群, 赵楠翔
(1.安徽农业大学, 安徽 合肥 230036; 2.解放军电子工程学院, 安徽 合肥 230037)
基于改进蚁群算法的非接触人体测量中体型聚类分析
湛 群1, 赵楠翔2
(1.安徽农业大学, 安徽 合肥 230036; 2.解放军电子工程学院, 安徽 合肥 230037)
本文提出了基于改进蚁群算法的非接触人体测量中体型聚类分析方法.选取合适的人体测量特征数据,并进行了正则空间变换.引入路径信息浓度加快了蚁群算法收敛速度.实验结果表明,这一方法可有效适用于非接触人体测量中的体型聚类.
非接触人体测量;体型聚类;蚁群算法;聚类分析
人体测量对于工业产品设计是一项非常重要的基础性工作.无论是家具设计、交通工具设计、日常用品设计等领域,都需要相关的人体数据作为参考.而人体数据的取得需要高效准确的人体测量技术,为产品设计提供有效的数据来源[1].正因为如此,人体测量技术得到了普遍重视,各种新技术不断涌现.其中,以计算机视觉为基础,通过二维非接触人体测量方法获取人体数据是一项具有很大潜力的技术手段,具有方便、快捷、接受度高的优势.在利用计算机视觉实现接触人体测量通常是通过相机获得人体正面和侧面图像,再通过对图像的处理获得人体高度、肩宽、身体厚度等二维尺寸.然而,很多人体三维数据是无法直接通过图像获得的,如人体的胸围、腰围和臀围等围度尺寸数据.这些数据需要通过测量得到的二维数据间接反演得到.然而,由于不同人体体型之间存在较大差异,导致计算模型存在很多不确定因素.在这一情况下,可以将人体体型先进行分类,再分别建立相应的计算模型,由此可以提高对围度尺寸的反演精度[2].由于人体数据存在着多样性、不确定性和类别归属模糊性等特点,这就要求一种具有自组织聚类能力的分类算法.蚁群算法作为一种仿生算法,在聚类方面具有可进化、并行性、自组织等优势,因而特别适用于人体体系数据的分类工作.本文提出了一种改进的蚁群算法.
在基于计算机视觉的非接触人体测量中,获得的二维图像可以得到大量与人体体型相关的数据指标,并可以通过这些指标构成人体分类特征.在本文中,选定 24项数据作为分类指标:体重、身高、胸宽、背宽、肩高、背长、胸厚、腰厚、臀厚、颈厚、臀高、颈椎点高、肩宽、乳点高、臂长、下档高、腰高、胸腰距、腰臀距、肩胸距.
为避免指标之间的线性相关性造成的分类午餐,利用利用正则空间变换方法对目标特征集进行空间映射处理.设人体变量观测矩阵为 X,对 X进行变换,使得变换后的矩阵类间距离最大,变换结果为 Y(Y为 n×R矩阵),由 X到 Y的变换矩阵 A满足:
A可以通过正则分析方法求得.
对正则分析方法得到的特征值按照从大到小顺序排列,取相应的前R个特征向量组成矩阵A,通过这一变换将人体特征测数据在正则子空间上投影变换为Y.
在对观测得到的人体特征测量数据进行正则变换后,还需要通过聚类方法将不同体型的人体数据进行分类.蚁群算法是 20世纪 09年代初由意大利学者 M.Dorigo,V.Maniezzo,A.Colorni等人提出,在数据聚类、路由寻找等领域取得了很好的应用效果.常见的聚类蚁群算法有基于蚂蚁觅食行为的蚁群算法和基于蚂蚁堆尸行为的蚁群算法[3].
将经过正则变换后的人体测量数据作为蚂蚁搬运的数据对象,通过蚂蚁根据各数据对象相似度的聚类,通过蚂蚁运动将相似数据聚集在一起,达到聚类的目的,假设在时刻 t某蚁群在地点 r发现了一个数据对象 oi.则可将对象 oi与其邻域对象的平均相似性定义为[4]:
式中,NeighS×S表示位置 r周围面积为 S×S的方形区域,S为区域边长,参数 v表示蚂蚁运动的速度,vmax为最大运动速度,α 为相似性参数,d(oi,oj)表示对象 oi和 oj在属性空间的距离.
蚂蚁根据负载与数据对象的相似性来决定放下负载拾起对象[5].若当前蚂蚁无负载,则对遇到的对象计算拾起该对象的概率:
确定一个随机概率,若 Ppick大于它,则该蚂蚁拾起该对象,并随机选择一条路径向别处运动,同时将负载标志置 1;否则,该蚂蚁放弃该对象.如果蚂蚁本身的负载标志为 1,则计算放下该负载的概率 Pdrop.
同样确定一个随机概率,若 Pdrop大于它,则该蚂蚁放下负载,同时将负载标志置 0,再随机向别处运动.
在传统的蚂蚁聚类算法中,蚂蚁的运动都是随机的,没有考虑先前其他蚂蚁的运动路径信息.为了提高聚类效率,本文加入蚂蚁路径信息,通过路径信息指示可能的聚类地点.设蚂蚁放下对象的位置为 s,则根据如下公式确定其向周围扩散的路径信息:
其中,r为阈值,决定了从聚类地点向周围路径信息的扩散范围.
当蚂蚁在某一地点 i“拾起”数据对象后,根据在当前位置各条可能路径的信息浓度,计算选择相应路径的概率:
在蚂蚁行进期间,路径上的信息浓度会发生改变,在完成一次循环后,信息素浓度根据下式调整:
式中,ρ 表示信息挥发系数,Δπij表示本次循环中路径(i,j)上的信息增量.
由于加入了路径信息,指明了可能的蚂蚁聚类位置,从而加快了算法收敛速度.
根据改进的蚁群算法,对实验获得的 240个人体测量数据样本先进行了正则空间变换,再进行了聚类运算.为了评判算法的聚类效果,引入了基于类内、类间距离准则的聚类有效性检验函数,来对聚类结果进行评判.
将改进的蚁群聚类算法与标准的蚁群聚类算法对相同样本进行处理,得到算法执行效率和聚类有效性结果对比如表1所示.
表1 改进蚁群算法与标准蚁群算法的聚类效果对比
由表1可见,改进的蚁群算法可以有效完成对人体体形的非监督聚类工作,与标准的蚁群算法相比,算法执行效率和聚类有效性上都有了明显改善.
以计算机视觉为基础的二维非接触式人体测量中,需要通过计算模型将获得的人体二维尺寸数据反演出三维体型数据,这一过程中需要通过人体体型分类来选择合适的计算模型.
本文通过对蚁群算法进行改进,加入聚类路径信息,达到加快聚类的目的.通过对蚁群算法的改进,提高了对人体体型聚类的有效性和执行效率.在此基础上建立针对性的体形三维转换模型,可以提高非接触式人体测量的准确度.
〔1〕潘志国,王兰美,郭业民.人体测量在工业设计领域的应用[J].机械制造与自动化,2003(6):22-24.
〔2〕李晓久,王玉秀,刘皓.非接触式人体测量系统中人体体型分类与自动判别[J].天津工业大学学报,2007(26):33-35.
〔3〕周爽,张钧萍,张枫,苏宝库.基于蚁群算法的遥感图像聚类方法[J].哈尔滨工程大学学报,2009 (30):210-215.
〔4〕刘念涛,刘希玉.基于改进的启发式蚁群算法的聚类问题的研究 [J]. 计算机技术与发展,2007 (17):37-39.
〔5〕赵贵喜,骆鲁秦,陈彬.基于蚁群算法的 kMeans聚类雷达信号分选算法 [J]. 雷达科学与技术,2009(7):142-146.
TS941
A
1673-260X(2014)08-0056-02