本发明涉及视频监控技术领域,尤其涉及一种人体跌倒的检测方法及装置。
背景技术:
根据数据统计,跌倒已成为老年人日常生活中最多也最严重的安全问题之一。随着摄像头制造成本的下降和互联网的普及,很多用户都通过使用网络摄像头实时监护独居的老人。当老人发生跌倒时,可发出预警提醒。
目前,判断人体跌倒常用的方式包括:基于人体检测的跌倒行为进行判断,即先进行人体检测,然后根据人体长、宽、高的比例变化,判断人体是否有跌倒行为;以及基于模型训练的人体跌倒行为进行判断,即基于不同的跌倒姿态,对模型训练跌倒的人体跌倒时的相关特征进行提取,通过模型训练,将上述相关特征作为判断人体是否有跌倒行为的比对样本。
然而,采用基于人体检测的跌倒行为的判断方法,会存在以下弊端,即当图像采集设备为顶装时,人体检测率会明显下降,导致后续根据人体长、宽、高的比例变化判断人体跌倒的准确率降低,甚至直接导致无法跟人体长、宽、高的比例变化来判断人体是否跌倒。采用基于模型训练的人体跌倒行为的判断方法,也会存在以下弊端,即直接使用模型训练跌倒的人体时,由于人体跌倒的姿态非常多,给训练带来的难度很大,同时还增加了图像收集的难度,以及需要采集的样本量。此外由于基于模型训练的人体跌倒行为的判断方法所应用的场景也非常有限,限制了技术的提升,因此当图像采集设备为顶装时,采用基于模型训练的人体跌倒行为的判断方法,同样会存在因人体检测率下降,影响对人体跌倒事件进行判断的问题。
因当图像采集设备为顶装时,采集图像的视角更为广泛,可以起到很好的检测作用,而上述两种方式在顶装场景下都存在对人体跌倒事件的检测率及准确率较低的弊端,故亟需提供一种可针对顶装场景下,有效对人体跌倒事件进行检测的方法。
技术实现要素:
本发明提供了一种人体跌倒的检测方法及装置,用以解决现有技术中在的顶装场景下,存在的因采集难度大、人体检测率下降,导致对人体跌倒事件的检测率及准确率较低的技术问题。
依据本发明的一个方面,提供了一种人体跌倒的检测方法,应用于图像采集设备的顶装场景中,所述方法包括:
获取当前帧图像,根据预设的至少一个人体识别部位,确定待检测目标在所述当前帧图像中由所述人体识别部位确定的第一区域;
根据所述当前帧图像中的所述第一区域,及位于所述当前帧之前,且与所述当前帧间隔预设数值帧的第一图像中所述待检测目标对应的第二区域,确定所述待检测目标的当前速度;
判断所述当前速度是否大于保存的所述待检测目标正常运动的速度范围;
如果是,判断所述第一区域的面积是否小于保存的所述待检测目标正常运动时对应的面积阈值;
如果是,判定所述待检测目标跌到。
具体地,所述获取当前帧图像,根据预设的至少一个人体识别部位,确定待检测目标在所述当前帧图像中由所述人体识别部位确定的第一区域包括:
通过卷积神经网络cnn的特征提取层从所述当前帧图像中提取出,与所述待检测目标的所述至少一个人体识别部位相对应的区域;
将提取到的与所述至少一个人体识别部位相对应的区域通过cnn的特征映射层映射到所述当前帧图像上,生成矩形目标框;
将所述矩形目标框确定为所述待检测目标由所述人体识别部位确定的第一区域。
具体地,所述根据所述当前帧图像中的所述第一区域,及位于所述当前帧之前,且与所述当前帧间隔预设数值帧的第一图像中所述待检测目标对应的第二区域,确定所述待检测目标的当前速度包括:
根据所述第一区域在所述当前帧图像中对应的第一位置信息,以及所述第二区域在所述第一图像中对应的第二位置信息,确定所述待检测目标的第一位移;
根据所述当前帧图像对应的第一时间,以及所述第一图像对应的第二时间,确定所述当前帧图像与所述第一图像之间的第一时间差;
根据所述第一位移和所述第一时间差,确定所述待检测目标的当前速度。
具体地,所述根据所述当前帧图像中的所述第一区域,及位于所述当前帧之前,且与所述当前帧间隔预设数值帧的第一图像中所述待检测目标对应的第二区域,确定所述待检测目标的当前速度还包括:
针对在所述第一区域中的每个光流点,根据该光流点在所述当前帧图像中的第三位置信息,以及该光流点在所述第一图像中的第四位置信息,确定该光流点对应的第二位移;
根据所述当前帧图像对应的第三时间,以及所述第一图像对应的第四时间,确定所述当前帧图像与所述第一图像之间的第二时间差;
根据与每个光流点对应的所述第二位移及所述第二时间差,确定所述待检测目标的当前速度。
具体地,所述根据与每个光流点对应的所述第二位移及所述第二时间差,确定所述待检测目标的当前速度之前,所述方法还包括:
判断是否存在对应至少两个所述第二位移的光流点;
如果否,执行根据所述当前帧图像中的所述第一区域,及位于所述当前帧之前,且与所述当前帧间隔预设数值帧的第一图像中所述待检测目标对应的第二区域,确定所述待检测目标的当前速度及后续步骤。
具体地,所述根据所述当前帧图像中的所述第一区域,及位于所述当前帧之前,且与所述当前帧间隔预设数值帧的第一图像中所述待检测目标对应的第二区域,确定所述待检测目标的当前速度之前,所述方法还包括:
判断所述第一区域是否与所述当前帧图像中其他检测目标对应的第三区域重叠;
如果否,执行根据所述当前帧图像中的所述第一区域,及位于所述当前帧之前,且与所述当前帧间隔预设数值帧的第一图像中所述待检测目标对应的第二区域,确定所述待检测目标的当前速度及后续步骤。
具体地,所述方法还包括:
对保存的所述待检测目标发生跌倒的次数进行更新;
判断更新后的次数是否达到预设阈值;
如果是,输出报警提醒。
具体地,所述方法还包括:
如果所述当前速度在所述速度范围内,和/或所述第一区域的面积不小于所述面积阈值,将保存的所述待检测目标发生跌到的次数清零。
依据本发明的另一个方面,还提供了一种人体跌倒的检测装置,应用于图像采集设备的顶装场景中,所述装置包括:
区域确定模块,用于获取当前帧图像,根据预设的至少一个人体识别部位,确定待检测目标在所述当前帧图像中由所述人体识别部位确定的第一区域;
速度确定模块,用于根据所述当前帧图像中的所述第一区域,及位于所述当前帧之前,且与所述当前帧间隔预设数值帧的第一图像中所述待检测目标对应的第二区域,确定所述待检测目标的当前速度;
速度判断模块,用于判断所述当前速度是否大于保存的所述待检测目标正常运动的速度范围;
面积判断模块,用于当所述速度判断模块判断为是时,判断所述第一区域的面积是否小于保存的所述待检测目标正常运动时对应的面积阈值;
跌倒判定模块,用于当所述面积判断模块判断为是时,判定所述待检测目标跌到。
具体地,所述区域确定模块包括:
提取单元,用于通过卷积神经网络cnn的特征提取层从所述当前帧图像中提取出,与所述待检测目标的所述至少一个人体识别部位相对应的区域;
映射单元,用于将提取到的与所述至少一个人体识别部位相对应的区域通过cnn的特征映射层映射到所述当前帧图像上,生成矩形目标框;
区域确定单元,用于将所述矩形目标框确定为所述待检测目标由所述人体识别部位确定的第一区域。
具体地,所述速度确定模块包括:
第一位移确定单元,用于根据所述第一区域在所述当前帧图像中对应的第一位置信息,以及所述第二区域在所述第一图像中对应的第二位置信息,确定所述待检测目标的第一位移;
第一时间差确定单元,用于根据所述当前帧图像对应的第一时间,以及所述第一图像对应的第二时间,确定所述当前帧图像与所述第一图像之间的第一时间差;
第一速度确定单元,用于根据所述第一位移和所述第一时间差,确定所述待检测目标的当前速度。
具体地,所述速度确定模块还包括:
第二位移确定单元,用于针对在所述第一区域中的每个光流点,根据该光流点在所述当前帧图像中的第三位置信息,以及该光流点在所述第一图像中的第四位置信息,确定该光流点对应的第二位移;
第二时间差确定单元,用于根据所述当前帧图像对应的第三时间,以及所述第一图像对应的第四时间,确定所述当前帧图像与所述第一图像之间的第二时间差;
第二速度确定单元,用于根据与每个光流点对应的所述第二位移及所述第二时间差,确定所述待检测目标的当前速度。
具体地,所述速度确定模块确定所述待检测目标的当前速度之前,所述装置还包括:
第二位移判断模块,用于判断是否存在对应至少两个所述第二位移的光流点;如果否,执行根据所述当前帧图像中的所述第一区域,及位于所述当前帧之前,且与所述当前帧间隔预设数值帧的第一图像中所述待检测目标对应的第二区域,确定所述待检测目标的当前速度及后续步骤。
具体地,所述速度确定模块确定所述待检测目标的当前速度之前,所述装置还包括:
区域重叠判断模块,用于判断所述第一区域是否与所述当前帧图像中其他检测目标对应的第三区域重叠;如果否,执行根据所述当前帧图像中的所述第一区域,及位于所述当前帧之前,且与所述当前帧间隔预设数值帧的第一图像中所述待检测目标对应的第二区域,确定所述待检测目标的当前速度及后续步骤。
具体地,所述装置还包括:
更新模块,用于对保存的所述待检测目标发生跌倒的次数进行更新;
次数判断模块,用于判断更新后的次数是否达到预设阈值;
报警模块,用于当次数判断模块判断为是时,输出报警提醒。
具体地,所述装置还包括:
清零模块,用于如果所述当前速度在所述速度范围内,和/或所述第一区域的面积不小于所述面积阈值,将保存的所述待检测目标发生跌到的次数清零。
本发明的有益效果如下:
本发明提供了一种人体跌倒的检测方法及装置,应用于图像采集设备的顶装场景中,该方法包括:获取视频中的当前帧图像,根据预设的至少一个人体识别部位,确定待检测目标在当前帧图像中由人体识别部位确定的第一区域;然后根据当前帧图像中的第一区域,及位于当前帧之前,且与当前帧间隔预设数值帧的第一图像中所述待检测目标对应的第二区域,确定所述待检测目标的当前速度;其中,当待检测目标的当前速度大于保存的待检测目标正常运动的速度范围,且第一区域的面积小于保存的待检测目标正常运动时对应的面积阈值时,判定待检测目标跌倒。与现有技术相比,本发明中通过在顶装场景下,对待检测目标的运动速度以及待检测目标由预设的至少一个人体识别部位确定的区域的面积进行结合检测,以判断人体是否发生跌倒的检测方法,是基于现实生活中人体跌倒时,人体的实际变化而制定的,因此可大大提高对人体跌倒事件的检测率和准确率。另由于在本发明中仅需要对预设的至少一个人体识别部位检测,因此与现有技术中对整个人体进行检测相比,可大大降低采集难度,更容易获取到有效检测数据,提高对人体相关数据的检测率。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的人体跌倒的检测方法的流程示意图;
图2为本发明实施例提供的人体跌倒的检测方法的时序流程图之一;
图3为本发明实施例提供的人体跌倒的检测方法的时序流程图之二;
图4为本发明实施例提供的人体跌倒的检测装置的结构示意图;
图5为本发明实施例提供的区域确定模块的结构示意图;
图6为本发明实施例提供的速度确定模块的结构示意图。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,显然,所描述的实施例仅仅是本发明一部份实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
实施例一
在实际场景中,当人体发生跌倒时,人体自身的速度会发生一个较大的变化,即人体会突然加速。另外在录像设备的顶装场景中,当人体发生跌倒时,图像中与头部或者肩部相对应的区域的面积也会发生相应的变化,即在顶装场景下采集到的视频图像中,与头部或者肩部相对应的区域的面积会因人体发生跌倒而减小。因此在录像设备的顶装场景中,通过对采集视频中与头部或者肩部相对应的区域的面积,以及人体的运动速度进行结合检测,即可判断出人体是否跌倒。
因此,依据本发明实施例的一个方面,提供了一种人体跌倒的检测方法,应用于图像采集设备的顶装场景中。其中,由于获取到的视频码流是由很多帧图像组成的,因此本发明实施例通过对获取到的视频码流中的每一帧图像进行检测,判断人体是否发生跌倒。其中,需要说明的是,获取的视频码流可以为实时采集的图像,也可以为已经录制好的一段码流,在本发明实施例中,对此并不作具体限定。
如图1所示,通过本发明实施例提供的检测方法对当前帧图像进行检测时,具体包括以下步骤:
步骤s101:获取当前帧图像,根据预设的至少一个人体识别部位,确定待检测目标在所述当前帧图像中由所述人体识别部位确定的第一区域。
在本发明实施例中,预设的至少一个人体识别部位可以为头部或者肩部或者由头部和肩部构成的组合部位,具体地,预设的至少一个人体识别部位可以为视频图像中可见的任何部位,当然需要理解的是,在本发明实施例中,对预设的至少一个人体识别部位并不作具体限定。
步骤s102:根据当前帧图像中所述第一区域,及位于所述当前帧之前,且与所述当前帧间隔预设数值帧的第一图像中所述待检测目标对应的第二区域,确定所述待检测目标的当前速度。
其中,上述预设数值帧可以至少为一帧,需要说明的是,在本发明实施例中,对预设数值帧并不作具体限定。
由于每个像素点在每一帧的图像中都有与该像素点对应的位置,因此可根据任意两帧图像中该像素点对应位置的变化,确定该像素点的位移,并根据上述任意两帧图像中间的时间差,确定该像素点的速度。因此,通过对待检测目标由预设的人体识别部位在每一帧图像中的位置进行跟踪,根据待检测目标在任意两帧图像中位置的变化,即可确定待检测目标的位移,然后根据任意两帧图像中间的时间差,确定待检测目标的运动速度。
步骤s103:判断所述当前速度是否大于保存的所述待检测目标正常运动的速度范围。
步骤s104:如果是,判断所述第一区域的面积是否小于保存的所述待检测目标正常运动时对应的面积阈值。
步骤s105:如果是,判定所述待检测目标跌到。
由上述可知,本发明实施例提供的检测方法,是对视频码流中的每一个帧图像分别进行检测的,在对每一帧图像进行检测时,通过对待检测目标的运动速度以及待检测目标由预设的至少一个人体识别部位确定的区域的面积进行结合检测,其中,当待检测目标的当前速度大于保存的待检测目标正常运动的速度范围,且第一区域的面积小于保存的待检测目标正常运动时对应的面积阈值时,判定待检测目标跌倒。由于该检测方法是根据实际场景中人体跌倒时人体发生的变化而制定的,因此与现有技术相比,可大大提高对人体跌倒事件的检测率和准确率。其中,在图像采集设备的顶装场景中,预设的至少一个人体识别部位一般包括头部、肩部等部位。因此由预设的至少一个人体识别部位确定的区域可以为由头部确定的区域、或者由肩部确定的区域、或者由头部与肩部共同确定的区域。另外当预设的人体识别部位为其他部位时,那么由人体识别部位确定的区域则为与该部位对应的区域。需要说明的是,在本发明实施例中,对预设的人体识别部位并不作具体限定。
另在本发明实施例中,仅需对预设的至少一个人体识别部位检测,且由上述可知,预设的至少一个人体识别部位可以为头部或人肩部等部位,由于头部或人肩均为姿态变化较少的固定部位,因此,相比现有技术中对整个人体进行检测来说,可大大降低采集难度,更易获取到有效检测数据,提高对人体相关数据的检测率。
由于在上述方法中,在当前帧图像中,当待检测目标的当前速度大于保存的待检测目标正常运动的速度范围,且第一区域的面积小于保存的待检测目标正常运动时对应的面积阈值时,即判定待检测目标跌倒。但人体的跌倒是一个过程,因此,为进一步提高对人体跌倒事件的准确率,还可以从当前帧图像对应的当前时刻起,在预设的报警时间内,判断待检测目标是否处于跌倒状态,如果判断结果为是,则发出报警提醒。具体地,可对预设报警时间内对应的待检测目标跌倒次数进行检测。
因此,在本发明实施例中,该检测方法还包括:对保存的待检测目标发生跌倒的次数进行更新;并判断更新后的次数是否达到预设阈值;如果是,输出报警提醒。而如果当前速度在速度范围内,和/或第一区域的面积不小于面积阈值,将保存的待检测目标发生跌到的次数清零。
比如,预设报警时间为10s,而在10s内对应的待检测目标的跌倒次数为100次,那么在当前帧图像中判断出待检测目标发生跌倒后,需对待检测目标继续跟踪检测,判断待检测目标是否发生跌倒行为,即待检测目标的运动速度不在保存的正常运动的速度范围,且第一区域的面积小于保存的待检测目标正常运动时对应的面积阈值,那么输出一次跌倒,并对待检测目标发生跌倒的次数进行保存并更新,当更新后待检测目标的跌倒次数达到100次时,则说明待检测目标在预设报警时间10s内发生了跌倒事件,此时发出待检测目标跌倒的报警提醒。然而若当前帧图像中判断出待检测目标发生跌倒后,检测到待检测目标的运动速度在保存的正常运动的速度范围,或者第一区域的面积不小于保存的待检测目标正常运动时对应的面积阈值,则说明待检测目标在预设报警时间10s内为发生跌倒事件,此时,主需要对之间保存的待检测目标发生跌到的次数清零。
实施例二
具体地,在本发明实施例中,公开了一种人体跌倒的检测方法,该方法对应的时序流程图如图2所示,即在图像采集设备的顶装场景中,获取当前帧的图像后,执行以下步骤:
步骤s201:获取待检测目标在当前帧图像由人体识别部位确定的第一区域;
步骤s202:获取待检测目标的当前速度;
步骤s203:判断待检测目标的当前速度是否大于待检测目标正常运动的速度范围,判断结果为是时,则执行步骤s205,判断结果为否时,则执行步骤s204;
步骤s204:继续跟踪待检测目标;
步骤s205:判断第一区域的面积是否小于待检测目标正常运动时对于对应的面积范围,判断结果为是时,则执行步骤s206,判断结果为否时,则返回步骤s204;
步骤s206:判定待检测目标发生跌倒;
步骤s207:判断待检测目标的跌倒次数是否达到预设阈值,判断结果为是时,则执行步骤s208;判断结果为否时,则返回步骤s204;
步骤s309:发出报警提醒。
在本发明实施例中,通过对待检测目标的运动速度和待检测目标由人体识别部位确定的区域的面积进行结合检测,其中,当待检测目标的当前速度大于保存的待检测目标正常运动的速度范围,且第一区域的面积小于保存的待检测目标正常运动时对应的面积阈值时,判定待检测目标跌倒。与现有技术相比,可有效判断出待检测目标是否发生跌倒,提高对人体跌倒事件的检测率和准确率。
实施例三
基于以上实施例,本发明实施例具体说明步骤s101中确定待检测目标在所述当前帧图像中由所述人体识别部位确定的第一区域的过程。
其中,步骤s101具体包括:
通过cnn的特征提取层从当前帧图像中提取出,与待检测目标的至少一个人体识别部位相对应的区域;
将提取到的与至少一个人体识别部位相对应的区域通过cnn的特征映射层映射到当前帧图像上,生成矩形目标框;
将矩形目标框确定为待检测目标由人体识别部位确定的第一区域。
cnn是一种前馈神经网络,人工神经元可以响应周围单元,可以大型图像处理。一般地,cnn的基本结构包括两层,其一为特征提取层,其二为特征映射层。
由以上实施例可知,预设的至少一个人体识别部位一般包括头部、肩部等部位,因此,通过cnn对待检测目标上的人体识别部位进行识别时,可以由cnn的特征提取层针对待检测目标的头部或者肩部进行特征提取,从当前帧图像中提取出与待检测目标的头部或者肩部相对应的区域,然后通过cnn的特征映射层将与待检测目标的头部或者肩部相对应的区域映射到当前帧图像上,生成与待检测目标的头部或者肩部的矩形目标框,该矩形目标框则为与待检测目标的头部或者肩部对应的区域。
其中,需要说明的是,当人体识别部位仅为人体上的一个部位时,比如上述所说的头部或者肩部,那么在当前帧图像中只有一个与之对应的矩形目标框,该矩形目标框即为待检测目标的由人体识别部位确定的第一区域。然而当人体识别部位至少为人体上的两个部位时,比如头部和者肩部,那么针对头部和者肩部,在当前帧图像中都有与之对应的矩形目标框,即在当前帧图像中有两个矩形目标框,而此时,待检测目标的由人体识别部位确定的第一区域为包含上述两个矩形目标框的区域。
另外,还需要说明的是,在本发明实施例中,对步骤101中确定待检测目标在所述当前帧图像中由所述人体识别部位确定的第一区域的过程,所采用的图像识别方法并不仅仅局限于cnn这一种方式。其他可行的识别方法也在本发明实施例的保护范围内。
具体地,在根据待检测目标的位置变化及任一两帧图像的时间差确定待检测目标的运动速度时,可通过目标跟踪方法或光流点跟踪方法确定待检测目标的位置变化。
当然可以理解的是,在本发明实施例中,还可以采用其他跟踪方法对待检测目标的位置进行跟踪,而目标跟踪方法或光流点跟踪方法仅为本发明为说明如何确定待检测目标的运动速度的两种实施方式,在本发明实施例中,对采用的跟踪方法并不进行具体限定。
下面将分别结合具体实施例,分别对通过目标跟踪方法或光流点跟踪方法对待检测目标进行位置跟踪,确定所述待检测目标的当前速度的方式进行具体说明。
实施例四
本发明实施例主要介绍通过目标跟踪方法对待检测目标进行位置跟踪,并确定所述待检测目标的当前速度。然而,由于在监测区域范围内,可能会存在多个检测目标,所以在对待检测目标进行跟踪时,如果出现检测目标交叠的现象,则获取到的待检测目标的位移信息有误,进而影响对待检测目标的判断。因此,在确定待检测目标的当前速度之前,还需要对待检测目标与其他检测目标之间是否存在交叠进行判断。
其中,由上述实施例可知,在当前帧图像中存在待检测目标由人体识别部位确定的第一区域,因此,第一区域对应的位置即可表示待检测目标所在的位置。同样的,在监测区域范围内,存在其他检测目标时,在当前帧图像中也存在其他检测目标由人体识别部位确定的第三区域,且第三区域对应的位置也可表示其他检测目标所在的位置。因此在当前帧图像中,如果待检测目标对应的第一区域会与其他检测目标对应的第三区域重叠,那么说明待检测目标与其他检测目标发生了交叠。
因此,在本发明实施例中,当采用目标跟踪方法对待检测目标进行位置跟踪时,步骤s102根据所述当前帧图像中的所述第一区域,及位于所述当前帧之前,且与所述当前帧间隔预设数值帧的第一图像中所述待检测目标对应的第二区域,确定所述待检测目标的当前速度之前,所述方法还包括:
判断所述第一区域是否与所述当前帧图像中其他检测目标对应的第三区域重叠。
当判断结果为否时,则执行步骤s102及后续步骤。
也就是说,在当前帧图像中,如果待检测目标对应的第一区域会与其他检测目标对应的第三区域不重叠,那么待检测目标与其他检测目标不交叠,则对待检测目标的当前速度以及待检测目标在当前帧图像中由人体识别部位确定的区域的面积作出进一步的判断,以确定待检测目标是否发生跌倒。而当待检测目标对应的第一区域会与其他检测目标对应的第三区域重叠,即待检测目标与其他检测目标交叠时,为避免因与其他检测目标交叠而产生误判,则对待检测目标的当前速度以及待检测目标在当前帧图像中由人体识别部位确定的区域的面积暂不判断,仅仅对待检测目标的位置进行跟踪,当待检测目标与其他检测目标不交叠时,再判断待检测目标是否跌倒。
其中,采用目标跟踪方法对待检测目标进行位置跟踪,并确定所述待检测目标的当前速度时,步骤s102根据所述当前帧图像中的所述第一区域,及位于所述当前帧之前,且与所述当前帧间隔预设数值帧的第一图像中所述待检测目标对应的第二区域,确定所述待检测目标的当前速度具体包括:
根据所述第一区域在所述当前帧图像中对应的第一位置信息,以及所述第二区域在所述第一图像中对应的第二位置信息,确定所述待检测目标的第一位移;
根据所述当前帧图像对应的第一时间,以及所述第一图像对应的第二时间,确定所述当前帧图像与所述第一图像之间的第一时间差;
根据所述第一位移和所述第一时间差,确定所述待检测目标的当前速度。
由上述实施例可知,在通过cnn可以确定人体识别部位在当前帧生成的矩形目标框,因此通过目标跟踪方法对待检测目标进行跟踪时,对该矩形目标框进行跟踪即可,就能确定矩形目标框在每一帧图像中对应的位置。
假设与当前帧间隔的预设数值帧为1帧,那么在计算待检测目标的当前速度时,根据矩形目标框在当前帧图像中的位置以及矩形目标框在上一帧图像中的位置,确定矩形目标框由上一帧图像中的位置移动到当前帧图像中的位置的位移,那么该位移即可表示待检测目标移动的位移,然后在确定当前帧与上一帧对应的时间差,通过公式v=s/t即可计算出待检测目标的当前速度。
其中,当前帧间隔的预设数值帧取值为其他数值时,也可按照上述的计算方法对待检测目标的当前速速进行计算。
实施例五
本发明实施例主要介绍通过光流点跟踪方法对待检测目标进行位置跟踪,并确定所述待检测目标的当前速度。与采用目标跟踪方法相同,在确定待检测目标的当前速度之前,也需要对待检测目标与其他检测目标是否交叠进行判断。
其中,所谓光流点跟踪就是指从人体识别部位确定多个特征点,然后将这些特征点作为光流点进行跟踪,因此,每个光流点在每帧图像上,都存在与该光流点对应的位置信息。所以在监测区域范围内,若存在多个检测目标时,那么没帧图像上,都存在对应于每个检测目标的光流点。因此,当对光流点进行跟踪时,如果存在至少一个光流点对应至少两个位移,那么说明检测目标之间发生了交叠。
因此,在本发明实施例中,当采用光流点跟踪算法对待检测目标进行位置跟踪时,步骤s102根据所述当前帧图像中的所述第一区域,及位于所述当前帧之前,且与所述当前帧间隔预设数值帧的第一图像中所述待检测目标对应的第二区域,确定所述待检测目标的当前速度之前,所述方法还包括:
判断是否存在对应至少两个所述第二位移的光流点;
当判断结果为否时,则执行步骤s102及后续步骤。
也就是说,当前帧图像中,与待检测目标对应的光流点中,如果不存在光流点对应至少两个位移,那么待检测目标与其他检测目标不交叠,则对待检测目标的当前速度以及待检测目标在当前帧图像中由人体识别部位确定的区域的面积作出进一步的判断,以确定待检测目标是否发生跌倒。而当前帧图像中,与待检测目标对应的光流点中,如果存在至少一个光流点对应至少两个位移,那么待检测目标与其他检测目标交叠,为避免因与其他检测目标交叠而产生误判,则对待检测目标的当前速度以及待检测目标在当前帧图像中由人体识别部位确定的区域的面积暂不判断,仅仅对待检测目标的位置进行跟踪,当待检测目标与其他检测目标不交叠时,在判断待检测目标是否跌倒。
其中,采用光流点跟踪方法对待检测目标进行位置跟踪,并确定所述待检测目标的当前速度时,步骤s102根据所述当前帧图像中的所述第一区域,及位于所述当前帧之前,且与所述当前帧间隔预设数值帧的第一图像中所述待检测目标对应的第二区域,确定所述待检测目标的当前速度包括:
针对在所述第一区域中的每个光流点,根据该光流点在所述当前帧图像中的第三位置信息,以及该光流点在所述第一图像中的第四位置信息,确定该光流点对应的第二位移;
根据所述当前帧图像对应的第三时间,以及所述第一图像对应的第四时间,确定所述当前帧图像与所述第一图像之间的第二时间差;
根据与每个光流点对应的所述第二位移及所述第二时间差,确定所述待检测目标的当前速度。
假如与当前帧间隔的预设数值帧为1帧,那么在计算待检测目标的当前速度时,根据与待检测目标对应的每一个光流点在当前帧图像中的位置以及与待检测目标对应的每一个光流点在上一帧图像中的位置,确定与待检测目标对应的每一个光流点由帧图像中的位置移动到当前帧图像中的位置的位移,然后在确定当前帧与上一帧对应的时间差,通过公式v=s/t即可计算出每一个光流点对应的当前速度,最后通过光流点的当前速度取平均值,则该平均值即可表示为待检测目标的当前速度。
其中,由于每一个光流点的位移可能会存在些许偏差,为保证确定的待检测目标的当前速度的准确性,在计算每一个光流点对应的当前速度时,可去掉两个最大位移和两个最小位移,根据剩余的位移计算剩余的光流点对应的当前速度,然后在进一步计算出光流点当前速度的平均值。当然可以理解的是,对于去掉最大位移和最小位移的个数,在本发明实施例中,并不作具体限定。
其中,当前帧间隔的预设数值帧取值为其他数值时,也可按照上述的计算方法对待检测目标的当前速速进行计算。
实施例六
具体地,在本发明实施例中,公开了一种人体跌倒的检测方法,该方法对应的时序流程图如图3所示,即在图像采集设备的顶装场景中,获取当前帧的图像后,执行以下步骤:
步骤s301:获取待检测目标在当前帧图像由人体识别部位确定的第一区域;
步骤s302:判断第一区域是否与其他检测目标由人体识别部位确定的第三区域是否交叠,当判断结果为是时,则执行步骤s303,当判断结果为否时,则执行步骤s304;
步骤s303:获取待检测目标的速度;
步骤s304:继续跟踪待检测目标;
步骤s305:判断待检测目标的速度是否大于待检测目标正常运动的速度范围,判断结果为是时,则执行步骤s306,判断结果为否时,则返回步骤s304;
步骤s306:判断第一区域的面积是否小于待检测目标正常运动时对于对应的面积范围,判断结果为是时,则执行步骤s307,判断结果为否时,则返回步骤s304;
步骤s307:判定待检测目标发生跌倒;
步骤s308:判断待检测目标的跌倒次数是否达到预设阈值,判断结果为是时则执行步骤s309,判断结果为否时,则返回步骤s304;
步骤s309:发出报警提醒。
在本发明实施例中,在图像采集设备的顶装场景中,在通过cnn确定待检测目标在当前帧图像由人体识别部位确定的第一区域后,先根据目标跟踪方法判断待检测目标由人体识别部位确定的第一区域,与其他检测目标由人体识别部位确定的第三区域是否与其他检测目标是否重叠,以判断待检测目标与其他检测目标是否发生交叠,当判断结果为否时,再对待检测目标的运动速度和待检测目标由人体识别部位确定的区域的面积进行结合检测,以判断待检测目标是否跌倒。因此通过在确定待检测目标的当前速度之前,对待检测目标与其他检测目标之间是否存在交叠进行判断,可避免因与其他检测目标交叠而产生误判,大大提高了对人体跌倒事件的检测率和准确率。
实施例七
依据本发明实施例的另一个方面,还提供了一种人体跌倒的检测装置,应用于图像采集设备的顶装场景中,如图4所示,为本发明实施例中该装置的结构框图,该装置400具体包括:
区域确定模块401,用于获取当前帧图像,根据预设的至少一个人体识别部位,确定待检测目标在所述当前帧图像中由所述人体识别部位确定的第一区域;
速度确定模块402,用于根据所述当前帧图像中的所述第一区域,及位于所述当前帧之前,且与所述当前帧间隔预设数值帧的第一图像中所述待检测目标对应的第二区域,确定所述待检测目标的当前速度;
速度判断模块403,用于判断所述当前速度是否大于保存的所述待检测目标正常运动的速度范围;
面积判断模块404,用于当速度判断模块判断403为是时,判断所述第一区域的面积是否小于保存的所述待检测目标正常运动时对应的面积阈值;
跌倒判定模块405,用于当面积判断模块判断404为是时,判定所述待检测目标跌到。
与现有技术相比,本发明实施例中通过在顶装场景下,对待检测目标的运动速度以及待检测目标由预设的至少一个人体识别部位确定的区域的面积进行结合检测,判断人体是否发生跌倒的检测方法,是根据实际场景中人体跌倒时人体发生的变化而制定的,因此可大大提高对人体跌倒事件的检测率。另由于在本发明实施例中,仅需对预设的至少一个人体识别部位检测,相比现有技术中对整个人体进行检测来说,可大大降低采集难度,更易获取到有效检测数据,提高对人体跌倒事件判断的准确率。
为进一步提高对人体跌倒事件的准确率,如图4所示,所述装置400还包括:
更新模块408,用于对保存的所述待检测目标发生跌倒的次数进行更新;
次数判断模块409,用于判断更新后的次数是否达到预设阈值;
报警模块4010,用于当次数判断模块409判断为是时,输出报警提醒。
其中,如图4所示,所述装置400还包括:
清零模块411,用于如果所述当前速度在所述速度范围内,和/或所述第一区域的面积不小于所述面积阈值,将保存的所述待检测目标发生跌到的次数清零。
因此,若在当前帧图像检测中,判定待检测目标发生跌倒,通过对当前帧的后续多帧图像进行判断,可进一步判断待检测目标是否真的发生跌倒,大大提高对人体跌倒事件判断的准确率。
具体地,在本发明实施例中,区域确定模块401通过卷积神经网络cnn对待检测目标在所述当前帧图像中由所述人体识别部位进行识别,并确定与待检测目标在所述当前帧图像中由所述人体识别部位对应的第一区域。因此,如图5所示,区域确定模块401包括:
提取单元4011,用于通过卷积神经网络cnn的特征提取层从所述当前帧图像中提取出,与所述待检测目标的所述至少一个人体识别部位相对应的区域;
映射单元4012,用于将提取到的与所述至少一个人体识别部位相对应的区域通过cnn的特征映射层映射到所述当前帧图像上,生成矩形目标框;
区域确定单元4013,用于将所述矩形目标框确定为所述待检测目标由所述人体识别部位确定的第一区域。
由于卷积神经网络cnn可以对所述人体识别部位进行识别,并确定与待检测目标在每一帧图像上对应的位置,因此可根据所述待检测目标位置的变化,以及对应的时间差,确定所述待检测目标的速度。
其中,在确定所述待检测目标位置的变化时,可通过目标跟踪方法和/或光流点跟踪方法对待检测目标进行位置跟踪。
如图6所示,当通过目标跟踪方法对待检测目标进行位置跟踪,并确定所述待检测目标的当前速度时,速度确定模块402包括:
第一位移确定单元4021,用于根据所述第一区域在所述当前帧图像中对应的第一位置信息,以及所述第二区域在所述第一图像中对应的第二位置信息,确定所述待检测目标的第一位移;
第一时间差确定单元4022,用于根据所述当前帧图像对应的第一时间,以及与所述第一图像对应的第二时间,确定所述当前帧图像与所述第一图像之间的第一时间差;
第一速度确定单元4023,用于根据所述第一位移和所述第一时间差,确定所述待检测目标的当前速度。
如图6所示,当通过光流点跟踪方法对待检测目标进行位置跟踪,并确定所述待检测目标的当前速度时,速度确定模块402还包括:
第二位移确定单元4024,用于针对在所述第一区域中的每个光流点,根据该光流点在当前帧图像中的第三位置信息,以及该光流点在所述第一图像中的第四位置信息,确定该光流点对应的第二位移;
第二时间差确定单元4025,用于根据所述当前帧图像对应的第三时间,以及所述第一图像对应的第四时间,确定所述当前帧图像与所述第一图像之间的第二时间差;
第二速度确定单元4026,用于根据与每个光流点对应的所述第二位移及所述第二时间差,确定所述待检测目标的当前速度。
另外,由于在监测区域范围内,存在多个检测目标的可能,因此,在对待检测目标进行检测时,若待检测目标与其他检测目标之间出现交叠,则获取到的待检测目标的位移信息有误,影响对待检测目标的判断。因此,在确定待检测目标的当前速度之前,还需要对待检测目标与其他检测目标之间否存在交叠进行判断。
具体地,当采用光流点跟踪方法对待检测目标进行位置跟踪,并判断待检测目标是否与其他检测目标重叠时,所述速度确定模块402确定所述待检测目标的当前速度之前,如图4所示,所述装置400还包括:
第二位移判断模块406,用于判断是否存在对应至少两个第二位移的光流点;如果否,那么待检测目标与其他检测目标不重叠,则执行根据所述当前帧图像中的所述第一区域,及位于所述当前帧之前,且与所述当前帧间隔预设数值帧的第一图像中所述待检测目标对应的第二区域,确定所述待检测目标的当前速度及后续步骤。
具体地,当采用目标跟踪方法对待检测目标的位置进行跟踪,并判断待检测目标是否与其他检测目标重叠时,如图4所示,所述速度确定模块402确定所述待检测目标的当前速度之前,所述装置400还包括:
区域重叠判断模块407,用于判断所述第一区域是否与当前帧图像中其他检测目标对应的第三区域重叠;如果否,那么待检测目标与其他检测目标不重叠,则执行根据当前帧图像中所述第一区域,及与当前帧之间为预设间隔的上一帧图像中所述待检测目标对应的第二区域,确定所述待检测目标的当前速度及后续步骤。
由上述可知,在本发明实施例中,通过对待检测目标的运动速度和待检测目标由所述人体识别部位确定的区域的面积进行结合检测,可有效的判断出待检测目标是否跌倒,提高对人体跌倒事件判断的准确率。
对于系统/装置实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者一个操作与另一个实体或者另一个操作区分开来,而不一定要求或者暗示这些实体或者操作之间存在任何这种实际的关系或者顺序。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全应用实施例、或结合应用和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明的优选实施例,但本领域内的技术人体一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人体可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。