基于RGBD跌倒检测综述

2015-05-29 13:10王力玄
电脑知识与技术 2015年10期

王力玄

摘要:跌倒是老年人由于身体状况的下降,随着年龄的增长,经常会发生的一个高危动作。跌倒对于老年人的身心健康有着严重的危害,为了解决该问题,可以实时自动检测跌倒动作系统的研究,逐渐增多。近几年基于RGBD深度相机的跌倒检测研究情况综述也逐渐增多。区别于其他检测方式,基于深度信息的视觉设备检测,可以减少因光照和阴影所带来的误差,也可以使原始数据更加丰富,提取更多特征。针对目前检测算法的实现策略和研究现状,总结公开的数据库,跌倒检测的发展趋势进行展望和讨论,有助于后续研究的进展。

关键词:跌倒检测;RGBD;深度图像;深度相机;Kinect

中图分类号:TP391 文献标识码:A 文章编号:1009-3044(2015)10-0172-05

跌倒对于超过65岁的老年人,已经成为一个公共的高危健康问题。数据表明,每年都有33%的老年人都会跌倒,而跌倒也会带来一些无可挽回的伤害,比如说髋部骨折、撕裂伤和头部创伤[1]。根据急诊部门的报告,截止到2012年,部门接待了240万跌倒的老年人,其中超过三分之一的老年人,都进行了住院护理,金额达到了300亿美元。随着中国老年人人口的增长,2014年超过60岁的老人数目达到2亿[2],而到2021年,中国的老龄化水平由14.9%提高到17.9%。

独居的老人,承受更多的跌倒风险。老人发生跌倒后,没有获得即时的援助,甚至可能因此在家身亡[3]。因此,家中或者其他环境中针对个人的跌倒检测是在计算机视觉和机器学习领域中一个比较有意义的研究话题[4]。

近几年中,关于自动检测跌倒系统已经提出来,其中主要是检测一个固定区域是否会发生跌到检测,一旦发生跌倒,即时把结果反馈给监护人或者救助机构(急诊室)[5-11]。早期的一些工作主要是基于可穿戴设备[12]。可穿戴设备的主要缺点就是在日常使用中需要携带相关硬件设备,比如说电池。再之后的研究趋势是基于图像技术的。图像技术大部分使用RGB摄像头[13-16]。随着像Kinect这样的深度摄像头的普及,处理深度图像技术也融入了跌倒检测系统当中[17-18]。深度图像的采集和处理,可以保护被监护人的个人隐私,从而不会影响他的日常生活[18]。不仅如此,深度摄像设备可以不受光照影响,弥补了RGB图像的缺点[19]。

本文的组织结构如下:首先介绍深度相机的原理,然后总结了近几年文章基于深度相机的主要实现方法,最后对跌倒检测的发展进行了展望和讨论。

1 深度相机

1.1 原理介绍

随着摄像设备的技术的提高,深度相机最近了人们的视野。同时,微软提供了相对价格低廉的Kinect摄像设备,使得深度相机,可以逐渐走入人们的生活中。深度相机在采集图像的时候,可以形成RGB-D图像。RGB-D图像是由彩色(RGB)图像和深度(Depth)图像共同组成的。深度图像和彩色图像相比,是一种特殊类型的图像。深度图像中,是将物体表面到摄像头的参考位置所得到相对距离,存到深度图像每个像素点当中。深度图像有很多优点,相比于经常接触到的灰度图像,深度图像可以在不易受到光照和阴影因素的影响,更好的识别和定位现实世界的物体。除此之外,深度图像可以很好地解决在彩色图像中,物体的色彩饱和度和颜色值会随着距离的改变而改变。而且在物体轮廓检测中,阴影往往会降低识别度,而深度图像可以很好地克服这个问题。深度图像的应用可以简化背景减法算法和地板检测,更好的加强物体识别,并且提供检测物体和周围环境交互的信息,比如说人体撞击地板。深度图像也让重建真实3D物体更容易。

深度图像的获取方式可以分为接触式/非接触式获取,主动式/被动式获取。被动式的获取是指直接利用环境里已有的信息,如自然光、红外光等,行程灰度图像,并进行换算,得到深度信息。最常用的方法是将多个摄像机两个相隔一定的距离放置,利用两个摄像机同时获取图像,根据视觉差异,来得到深度图像。根据摄像机的数量可以分为双目视觉和多目视觉。

主动获取需要借助辅助设备对物体进行距离探测,如激光、电磁波等,设备会根据发射能量的反射能量,来感知物体距离,得到深度图像。目前,常见的主动式获取一般为结构光测距、激光雷达测距等。常见的有基于ToF(Time of Flight),是一种主动式深度感应技术,通过计算光的飞飞行时间,来判断距离。Kinect二代区别于一代采用的light coding,也采用了这一技术。

1.2 评价指标

跌倒检测是一个二分类检测,无论其他动作为什么,一旦发生跌倒,目标检测系统就应该识别出该动作。那么我们为了定义评价指标,先定义如下变量如表1所示。其中TP(True Positive)表示结果的真阳性,FN(False Negative)表示结果假阴性,FP(False Positive)表示结果的假阳性,TN(True Negative)表示结果的真阴性。

2 研究现状

跌掉检测,包含了动作识别和动作跟踪,那么基于此,解决跌倒的一般包含为:1)人体检测:这个阶段需要鉴别,分离,提出所需要的人体特征;2)跟踪和识别:对人体进行跟踪,并检测是否发生目标动作-跌倒。

2.1 人体检测

在跌倒检测的时候,人体的变化是一个很重要的线索。人体的形状、高度会在跌倒的时候发生快速的变化。基于人体检测形状的特征,比较明显的是用矩型边界框或椭圆来刻画人体,然后从中提取几何属性,比如说长宽比,点的方向判别[6],或者可以表现跌倒过程轮廓上的点[7]。相比于其他动作来说,跌倒发生的时间很短暂[8],导致上述特征在验证的时候,并不会得到比较理想的准确率。很多其他动作分析的算法,也尝试用在跌倒检测中,比如说编码动作轮廓[8]或者利用时空兴趣点[10]。

在深度视觉设备的检测中,上述特征也均可以尝试。由于微软提供了SDK,可以从Kinect的拍摄后的数据中,获得各个人体关节体的三维坐标信息,距离特征的设定也是常用的考虑因素。跌倒动作发生的时候,一个直观现象就是人体的高度发生了变化,从而可以根据这一线索,利用深度信息提取这一特征。[17][21-25]均用到了距离作为了特征,但是计算的距离特征略有差异。[21]中选择了物体的中心到地面的距离作为人体特征,根据[26]中利用视觉差异进行地平面的检测,来计算检测到人体的各个关节点到地平面的距离,作为后续跟踪检测的特征之一。而在[23]中,作者在[21]的基础上,增强了对地平面检测场景范围的扩大,再检测关键点到地平面的距离。[24]中,将检测系统应用到智能手机上,通过微软提供的SDK中的地平面,计算关节点到平面的距离。

在基于Kinect的设备中针对头部的跟踪识别,也是很多文章将其选为特征。在[24]中提出数据的特征,就包含了头部在识别片段的高度变化,以及最小高度最为特征。除了头部,脊椎也是一个关键要考虑的点。在[17]中作者对头部和脊椎行成了连线,计算它与地平面的角度以及脊椎的高度。[27-28]在识别头部的时候,并不是直接调用Kinect中的信息,因为Kinect的识别精度在4m。基于此[27]把Kinect放在天花板上,通过头部与地面的距离,再根据获取的深度信息来判定头部。另外根据头部和肩部的深度差(20-30cm),从而可以判定头部和肩部所在的一个区域。然后作者结合投影所产生的区域,换算评估人所在的区域。

[28]根据一个点周围点的深度信息,来计算这个点的值,判断该点的属性。由于计算量比较大,作者计算的时候采用随机决策森林,来加快判断这个点的属性(头部,躯干,臀部,其他),从而得到更精准的人体识别。

由2D视觉感知设备,经常用到的轮廓信息,也被应用到Kinect中。在[29]中,基于获得的图像的深度信息,在[30]基础上用词带从人体的轮廓信息中,利用高斯函数对其进行卷积,从而提取BoCSS特征,这样的特征具有变换、旋转、尺度、变形的不变性,而且与跌倒时间长度无关。

在图像根据时间序列前后对比,来进行人体特征提取。在[22]中作者认为,关节点的识别,在一个人发生跌倒的时候,由于时间的短暂,数据会存在偏差,所以作者采用计算关节点之间的角度,从而比较每一帧图像的角度变化差异,作为识别的特征。在[31]中,作者利用平滑窗口,来寻找前后帧中,所含深度信息的差异,再依据经验密度函数处理深度信息,进行分类,从而提取出人体。

此外另外一个很重要特征就是速度。根据[32]对跌倒动作发生的四个阶段的定义,以及现实中发生的状况,速度和加速度也是一个跌倒动作检测的一个重要线索。结合可是别的信息,可以跟踪人体的中心速度[21],头部速度[17][24],各个关节点速度的值的加权[23][25]。

2.2 跌倒检测识别

在获得人体特征之后,会进行目标动作检测,即跌倒检测。常用的机器学习都可以运用其中。[21][23]采用阈值法,来进行跌倒检测的决策。[23]中,在得到可能的跌倒动作,之后,通过连续的帧,来进行速度提取进一步判断,如果训练得到的阈值,检测出跌倒动作。 [22]采用分层SVM,先分类出跌倒动作和其他动作的区分,再继续细分跌倒的方式:站着跌倒和从椅子上跌倒。[24]采用贝叶斯进行对特征的正负性进行一个概率计算,然后根据概率阈值来进行最终决策。

模糊神经网络在[24]被用来检测2D图像感知器下站立、弯腰、坐下和躺下的动作,跌倒被定义为从站立到躺下动作短暂的过程。然而,因为数据集的数量不足而影响了算法发挥效果。最近比较新的基于检测采用了ELM(Extreme Learning Machine),ELM相比SVM计算更快,并且在有噪声的数据上依然可以保持稳定。[29]在此基础上,利用了粒子群优化算法对模型进行了改进优化。

3 数据库

3.1基于2D视觉设备的跌倒数据集

[33] 建立一个多摄像头的2D视觉设备标准的一个数据库,共计8个视角,24种情景,736组视频。该数据库是基于2D摄像头比较常用的数据库。

3.2基于3D视觉设备的跌倒数据集

[24]中提到的数据库,该数据库提供了2视角的Kinect数据库,其中包含了真实跌倒数据和跌倒类似的动作数据,比如说从地板捡起硬币,坐在地板上,系鞋带等类似跌倒过程的动作。2个视角总共有26组跌倒数据,视角1包含12组,视角2包含14组。其他数据信息如下,包含跌倒共计87组数据,如表3所示。

[22]中提到的数据,公开了50组跌倒数据,分别是[22]文章中提到的从椅子上跌倒,站着跌倒,坐在地板,坐在椅子,站着,每类10组为4m以内光照正常的数据,共计50组。

[34]包含了30跌倒和40日常活动,共计70组跌倒数据。在[31]中被引用。

4 总结与展望

4.1研究趋势

如今随着移动互联网的发展如火如荼,以及Kinect SDK移动端的移植,基于智能手机上应用RGBD跌倒检测的研究日趋增加。智能手机作为人体的第六感官如何协助人们更好的生活,正确的规避风险,已经成为一个很有意义的一个课题。并且智能手机作为了一个高频率出现在人们周围的硬软件集为一体的设备,可以用来解决像跌倒这样随时随地可能发生的突发高危状况。目前检测的主要是两种方法,借助速度信息,采用阈值方法或者机器学习算法。第一种方法计算量比较小,可以在跌倒时刻就进行检测,但是准确率不佳。机器学习算法相对比较复杂,但是可以得到一个比较高的准确率。相比阈值方法,机器学习肯定是一种趋势,但是应用机器学习,会需要较高的计算资源等等,对于手机的处理器和内存具有较高的要求,如何在智能手机上实行一个高效低资源需求的算法,是一个很值得研究的课题。

4.2研究挑战

跌倒检测系统面临很多挑战,其一就是这个系统必须足够可以被信赖。一个稳定的跌倒检测系统需要高精度和高准度,缺一不可。现在跌倒检测系统都是在实验环境下实验,但是应用到真实场景中,实验室的准确率显然显得难以信服。好的跌倒检测系统测试和训练的时候应该尽可能选择现实生活中的真实场景,比如说可以选择平时日常活动的数据集作为对比,来加强系统的鲁棒性。此外,跌倒检测的目标群体是老年人,但是针对老年人的数据集寥寥无几,这样产生的系统是不会让它在现实应用中还可以达到理想中的效果。

其次,随着智能手机的普及,老年人用户的增多,依靠智能手机的跌倒检测技术研究逐渐增多。但是目前研究是将手机摆成一个固定的位置[25],这样会导致算法在这样的情况下可以达到一个很高的准确率,却不能符合智能手机的日常摆放的随意性,给实际应用带来了很多挑战。

另外一个挑战是关于接受度的问题。很少研究是关于跌倒检测技术,尤其是基于视觉技术的检测系统,是否可以让老年用户接受及使用,毕竟老年人相对接受电子产品的能力比较低,尽可能的减少用户的操作成本也必须是系统考虑的因素。有研究证明在智能手机方面,老年人关注健康、养生、家庭护理或者安全、保障、便携这两个领域。如何从用户角度出发,去建立一个可接受的跌倒检测系统,是一个很大的挑战。

4.3目前问题

首先是关于隐私问题,这是一个一直被讨论的话题。尤其对于基于视觉技术跌倒检测系统,检测用户的数据,需要被保护。隐私的保护一方面要保护用户的个人利益,另一方面,也不能妨碍系统对用户特征的提取。虽然RGBD系统的中深度图像可以很好的保护人们的个人隐私,但是依然在认知上,还是很难被接受。总之,隐私是跌倒系统应用到生活中必须面对的一个问题。

另外一个问题就是公共数据集。现在关于跌倒检测的文章也是比较多的,但是问题是,几乎同类方法,也很难作比较,因为每个方法所包含的各样制作的跌倒和日常活动样本,动作检测器,样本频率,信号的检测长度,提取的特征等等都不尽相同。研究检测算法的时候,不仅需要关注如何实现,也需要在修订分类器之前,处理检测信息的获取和处理。公开权威的数据集在跌倒检测的研究上,可以协助后续研究的开展。

还有一个非常现实的问题,就是真实世界的跌倒。大部分的研究用的数据还是模仿跌倒而制作的数据,而且实验对象一般是年轻人。即使这样的数据公开,很多算法对其做了相似的比较,获得一个比较好的检测系统,还是很难断定,这样的系统是否可以应用到真实场景中。毕竟我们无法断定是否老年用户跌倒时候的真实场景可以用实验同构。这样会导致评价跌倒检测系统的非常局限。

参考文献:

[1] Caida E U, en la Comunidad R. Falls Among Older Adults: An Overview[J].

[2] 丛丽, 王卫红, 何彩云. 住院老人生存质量的研究现状[J]. 中国老年学杂志, 2015, 1: 142.

[3] 王颖, 何国平, 贺达仁. 空巢老人的健康问题及对策思考[J]. 中国医学伦理学, 2007, 20(3): 106-107.

[4] Li Y, Ho K C, Popescu M. A microphone array system for automatic fall detection[J]. Biomedical Engineering, IEEE Transactions on, 2012, 59(5): 1291-1301.

[5] Popoola O P, Wang K. Video-based abnormal human behavior recognition—A review[J]. Systems, Man, and Cybernetics, Part C: Applications and Reviews, IEEE Transactions on, 2012, 42(6): 865-878.

[6] Vishwakarma V, Mandal C, Sural S. Automatic detection of human fall in video[M]//Pattern Recognition and Machine Intelligence. Springer Berlin Heidelberg, 2007: 616-623.

[7] Rougier C, Meunier J, St-Arnaud A, et al. Robust video surveillance for fall detection based on human shape deformation[J]. Circuits and Systems for Video Technology, IEEE Transactions on, 2011, 21(5): 611-622.

[8] Mirmahboub B, Samavi S, Karimi N, et al. Automatic monocular system for human fall detection based on variations in silhouette area[J]. Biomedical Engineering, IEEE Transactions on, 2013, 60(2): 427-436.

[9] Qian H, Mao Y, Xiang W, et al. Recognition of human activities using SVM multi-class classifier[J]. Pattern Recognition Letters, 2010, 31(2): 100-111.

[10] Liao Y T, Huang C L, Hsu S C. Slip and fall event detection using Bayesian Belief Network[J]. Pattern recognition, 2012, 45(1): 24-32.

[11] Zigel Y, Litvak D, Gannot I. A method for automatic fall detection of elderly people using floor vibrations and sound—Proof of concept on human mimicking doll falls[J]. Biomedical Engineering, IEEE Transactions on, 2009, 56(12): 2858-2867.

[12] Chen J, Kwong K, Chang D, et al. Wearable sensors for reliable fall detection[C]//Engineering in Medicine and Biology Society, 2005. IEEE-EMBS 2005. 27th Annual International Conference of the. IEEE, 2006: 3551-3554.

[13] Juang C F, Chang C M. Human body posture classification by a neural fuzzy network and home care system application[J]. Systems, Man and Cybernetics, Part A: Systems and Humans, IEEE Transactions on, 2007, 37(6): 984-994.

[14] Liu C L, Lee C H, Lin P M. A fall detection system using k-nearest neighbor classifier[J]. Expert systems with applications, 2010, 37(10): 7174-7181.

[15] Brulin D, Benezeth Y, Courtial E. Posture recognition based on fuzzy logic for home monitoring of the elderly[J]. Information Technology in Biomedicine, IEEE Transactions on, 2012, 16(5): 974-982.

[16] Yu M, Rhuma A, Naqvi S M, et al. A posture recognition-based fall detection system for monitoring an elderly person in a smart home environment[J]. Information Technology in Biomedicine, IEEE Transactions on, 2012, 16(6): 1274-1286.

[17] Planinc R, Kampel M. Introducing the use of depth data for fall detection[J]. Personal and ubiquitous computing, 2013, 17(6): 1063-1072.

[18] Mastorakis G, Makris D. Fall detection system using Kinects infrared sensor[J]. Journal of Real-Time Image Processing, 2014, 9(4): 635-646.

[19] Khoshelham K, Elberink S O. Accuracy and resolution of kinect depth data for indoor mapping applications[J]. Sensors, 2012, 12(2): 1437-1454.

[20] ADER N S. Detecting falls and poses in image silhouettes[J].

[21] Igual R, Medrano C, Plaza I. Challenges, issues and trends in fall detection systems[J]. Biomed. Eng. Online, 2013, 12(66): 1-66.

[22] Zhang C, Tian Y, Capezuti E. Privacy preserving automatic fall detection for elderly using RGBD cameras[M]. Springer Berlin Heidelberg, 2012.

[23] Bian Z P, Chau L P, Magnenat-Thalmann N. A depth video approach for fall detection based on human joints height and falling velocity[J]. International Coference on Computer Animation and Social Agents, 2012.

[24] Zhang Z, Liu W, Metsis V, et al. A viewpoint-independent statistical method for fall detection[C]//Pattern Recognition (ICPR), 2012 21st International Conference on. IEEE, 2012: 3626-3630.

[25] Kawatsu C, Li J, Chung C J. Development of a fall detection system with Microsoft Kinect[M]//Robot Intelligence Technology and Applications 2012. Springer Berlin Heidelberg, 2013: 623-630.

[26] Zhao J, Katupitiya J, Ward J. Global correlation based ground plane estimation using v-disparity image[C]//Robotics and Automation, 2007 IEEE International Conference on. IEEE, 2007: 529-534.

[27] Gasparrini S, Cippitelli E, Spinsante S, et al. A depth-based fall detection system using a Kinect? sensor[J]. Sensors, 2014, 14(2): 2756-2775.

[28] Bian Z, Hou J, Chau L, et al. Fall detection based on body part tracking using a depth camera[J]. 2014.

[29] Ma X, Wang H, Xue B, et al. Depth-Based Human Fall Detection via Shape Features and Improved Extreme Learning Machine[J]. IEEE journal of biomedical and health informatics, 2014, 18(6): 1915-1922.

[30] Fei-Fei L, Perona P. A bayesian hierarchical model for learning natural scene categories[C]//Computer Vision and Pattern Recognition, 2005. CVPR 2005. IEEE Computer Society Conference on. IEEE, 2005, 2: 524-531.

[31] Kepski M, Kwolek B. Human fall detection by mean shift combined with depth connected components[M]//Computer Vision and Graphics. Springer Berlin Heidelberg, 2012: 457-464.

[32] Noury N, Rumeau P, Bourke A K, et al. A proposal for the classification and evaluation of fall detectors[J]. Irbm, 2008, 29(6): 340-349.

[33] Auvinet E, Rougier C, Meunier J, et al. Multiple cameras fall dataset[J]. DIRO-Université de Montréal, Tech. Rep, 2010, 1350.

[34] Kwolek B, Kepski M. Human fall detection on embedded platform using depth maps and wireless accelerometer[J]. Computer methods and programs in biomedicine, 2014, 117(3):s