CN104424649B - 检测运动物体的方法和系统 - Google Patents
检测运动物体的方法和系统 Download PDFInfo
- Publication number
- CN104424649B CN104424649B CN201310365452.5A CN201310365452A CN104424649B CN 104424649 B CN104424649 B CN 104424649B CN 201310365452 A CN201310365452 A CN 201310365452A CN 104424649 B CN104424649 B CN 104424649B
- Authority
- CN
- China
- Prior art keywords
- motion
- depth image
- image frame
- block
- degree
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 title claims abstract description 82
- 230000033001 locomotion Effects 0.000 claims description 564
- 230000005484 gravity Effects 0.000 claims description 43
- 238000001514 detection method Methods 0.000 claims description 30
- 238000013507 mapping Methods 0.000 claims description 7
- 238000010586 diagram Methods 0.000 description 24
- 238000000513 principal component analysis Methods 0.000 description 20
- 238000003860 storage Methods 0.000 description 13
- 238000004422 calculation algorithm Methods 0.000 description 11
- 230000003993 interaction Effects 0.000 description 11
- 230000002123 temporal effect Effects 0.000 description 11
- 230000006870 function Effects 0.000 description 8
- 230000008569 process Effects 0.000 description 7
- 238000004364 calculation method Methods 0.000 description 5
- 238000009826 distribution Methods 0.000 description 5
- 238000012545 processing Methods 0.000 description 5
- 238000009825 accumulation Methods 0.000 description 4
- 238000007792 addition Methods 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 238000004590 computer program Methods 0.000 description 3
- 238000004519 manufacturing process Methods 0.000 description 3
- 239000000203 mixture Substances 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 230000004075 alteration Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 238000005259 measurement Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000003672 processing method Methods 0.000 description 2
- 238000012935 Averaging Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000001186 cumulative effect Effects 0.000 description 1
- 238000003708 edge detection Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000004886 head movement Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000035945 sensitivity Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/20—Movements or behaviour, e.g. gesture recognition
- G06V40/28—Recognition of hand or arm movements, e.g. recognition of deaf sign language
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/20—Analysis of motion
- G06T7/246—Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
- G06T7/248—Analysis of motion using feature-based methods, e.g. the tracking of corners or segments involving reference images or patches
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S17/00—Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
- G01S17/02—Systems using the reflection of electromagnetic waves other than radio waves
- G01S17/50—Systems of measurement based on relative movement of target
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/20—Analysis of motion
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/20—Analysis of motion
- G06T7/215—Motion-based segmentation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10028—Range image; Depth image; 3D point clouds
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20021—Dividing image into blocks, subimages or windows
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30196—Human being; Person
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Multimedia (AREA)
- Theoretical Computer Science (AREA)
- Electromagnetism (AREA)
- Computer Networks & Wireless Communication (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Psychiatry (AREA)
- Social Psychology (AREA)
- Human Computer Interaction (AREA)
- Image Analysis (AREA)
- Details Of Television Systems (AREA)
Abstract
公开了一种检测运动物体的方法和系统。该方法包括:获得通过连续拍摄运动物体而得到的具有深度信息的至少两个深度图像帧,包括当前深度图像帧和至少一个历史深度图像帧,其中,所述至少两个深度图像帧的每个被划分为多个块;计算当前深度图像帧的每个块中的落入不同深度区间的像素的个数与各个历史深度图像帧的对应块中的落入不同深度区间的像素的个数的差异情况;根据所述差异情况,检测当前深度图像帧中的运动块,以构成所检测的运动物体。
Description
技术领域
本公开涉及一种检测运动物体的方法和系统,且更具体地,涉及一种基于立体视觉的深度信息来检测人手的技术。
背景技术
运动物体的检测是平面图像处理和立体视觉处理的一个研究方向。通过检测到不同的运动物体,可以基于这种不同的运动物体的检测来进行一系列的后续控制和操作。具体地,例如,目前,基于立体视觉的手势控制广泛应用于各种智能设备、例如电视、游戏机等等,而手势控制的基础是人手检测。在人机交互过程中,人手通常处于不断运动的状态,有时也会发生手停留在某处一段时间的情况,比如交互系统利用手的停留时间来触发一个事件。因此,需要准确地进行诸如人手的运动物体的检测,从而实现后续的准确的操作和交互。
在发明人为李春林和王进的2009年5月20日公开的题为“面向电视控制的动态手势识别信号处理方法”的中国专利申请CN101437124A中,介绍了一种面向电视控制的动态手势识别信号处理方法。该方法利用电视机内置的摄像头采集电视前的用户动作图像,通过对采集到的图像进行分析得到运动物体,从运动物体中提取手目标的信息并生成轨迹,继而判断轨迹所对应的指令产生电视控制命令。更具体地,该方法利用连续多帧的灰度图像的平均值构建背景图像,通过计算当前帧与背景图像之间的差别获得多个物体并分析它们的轨迹以确定它们所属的身体部分。如果某区域的轨迹符合预定义的特征,则该区域被判定为手所在的区域。上述预定义的特征的构建是基于手的运动强于头部运动并且手与头之间的距离在一定范围内的假设。
在Lee等人的2013年2月12日授权公告的题为“Motion Detection UsingDepthImages”的美国专利US8374423B2中,介绍了一种基于深度图像检测运动的方法,该方法将连续多帧的深度图像的平均值作为一幅参考图像,并将当前的深度深度图像帧与该参考图像逐像素做差得到运动图像,然后判断运动图像中的像素所属的物体。该方法用运动物体的位置信息控制应用程序。
在Perski等人在2011年4月21日公开的题为“Computer Vision GestureBasedControl of a Device”的PCT申请WO2011045789中,介绍了一种手势控制方法。该方法将两帧2D或3D图像做差后获得一幅差值图像,并在该图像上进行边缘检测得到轮廓,将检测到的轮廓与手部轮廓模型进行比较。该方法要求用户的手正对摄像机并处于手掌打开、手指伸展的状态。
常规的运动估计方法并不能得到准确的诸如人手的运动物体的结果。此外,人体其他部分(如胳膊)发生运动时也可能使得诸如人手的运动物体的计算不够准确。因此,需要进一步地准确地检测诸如人手的运动物体的技术。
发明内容
根据本发明的一个方面,提供一种检测运动物体的方法,包括:获得通过连续拍摄运动物体而得到的具有深度信息的至少两个深度图像帧,包括当前深度图像帧和至少一个历史深度图像帧,其中,所述至少两个深度图像帧的每个被划分为多个块;计算当前深度图像帧的每个块中的落入不同深度区间的像素的个数与各个历史深度图像帧的对应块中的落入不同深度区间的像素的个数的差异情况;根据所述差异情况,检测当前深度图像帧中的运动块,以构成所检测的运动物体。
根据本发明的另一个方面,提供一种检测运动物体的系统,包括:获得装置,被配置为获得通过连续拍摄运动物体而得到的具有深度信息的至少两个深度图像帧,包括当前深度图像帧和至少一个历史深度图像帧,其中,所述至少两个深度图像帧的每个被划分为多个块;计算装置,被配置为计算当前深度图像帧的每个块中的落入不同深度区间的像素的个数与各个历史深度图像帧的对应块中的落入不同深度区间的像素的个数的差异情况;检测装置,被配置为根据所述差异情况,检测当前深度图像帧中的运动块,以构成所检测的运动物体。
附图说明
图1是示出应用本发明的各个实施例的应用场景的示例图。
图2是示出根据本发明的一个实施例的检测运动物体的方法的一个示例的流程图。
图3A是示出根据本发明的另一个实施例的检测运动物体的方法的另一个示例的流程图。图3B是示出在图3A的检测运动物体的方法中的计算当前运动图的步骤S302的一个具体的示例流程图。图3C示意性地示出例如某个块的空间直方图的示例,而图3D示意性地示出对应的某个块的时间直方图的示例。
图4A是示出人手的运动规律的示意图。图4B是示出根据本发明的另一个实施例的利用图4A所示意示出的人手的运动规律来检测诸如人手的运动物体的方法的另一个示例的流程图。
图5A是示出在图4的检测诸如人手的运动物体的方法中的投影先前运动图以与当前运动图重合的步骤S403的示例具体流程图。图5B是示意性地示出先前运动图中的运动块构成的第一运动区域和当前运动图的运动块构成的第二运动区域的示意图。图5C是示出在检测诸如人手的运动物体的方法中的第一运动区域和第二运动区域以及如何移动先前运动图以与当前运动图重合的示例示意图。图5D是示出检测诸如人手的运动物体的方法中的选取最像人手的运动区域的示例方法的示意图。图5E是示出在利用主成分分析(PCA)算法分析的区域的示意图。图5F是示出在利用主成分分析(PCA)算法来计算得到的区域的主方向的示意图。
图6是示出根据本发明的另一实施例的检测运动物体的系统的方框图。
具体实施方式
现在将详细参照本发明的具体实施例,在附图中例示了本发明的例子。尽管将结合具体实施例描述本发明,但将理解,不是想要将本发明限于所述的实施例。相反,想要覆盖由所附权利要求限定的在本发明的精神和范围内包括的变更、修改和等价物。应注意,这里描述的方法步骤都可以由任何功能块或功能布置来实现,且任何功能块或功能布置可被实现为物理实体或逻辑实体、或者两者的组合。
为了使本领域技术人员更好地理解本发明,下面结合附图和具体实施方式对本发明作进一步详细说明。
图1是示出应用本发明的各个实施例的应用场景的示例图。场景100包括深度摄像机101,用于拍摄例如包含人的场景来获得具有深度信息的深度图;计算机102,用于处理所拍摄的深度图来进行诸如检测运动物体、识别人机交互指令、进行人机交互反馈等等的后续处理。上述深度摄像机101可以是任意一种能够提供场景深度信息的摄像机,比如PrimeSensor、Kinect等。在图1所示的应用场景中,用户可以使用运动的人手的手势来控制计算机102中的人机交互程序或应用。本发明的各个实施例可以检测到该应用场景中的诸如人手的运动物体的位置和运动,而检测到的诸如人手的运动物体的运动又可以作为人机交互程序或应用的输入命令,以得到人机交互程序或应用的输出结果(例如,控制是否确认、控制玩游戏的操作等等,就像Kinect和Wii一样)。集成了本发明的各个实施例的应用程序可以用于初始化基于轨迹控制的系统。更具体地说,安装了集成了本发明的各个实施例的应用程序的计算机102可以分析深度摄像机101拍摄到的例如每帧深度图像和彩色图像,然后输出诸如用户的人手的运动物体的位置信息和运动状态。当然,图1所示的应用场景仅为本发明的各个实施例的一个应用示例,而非限制本发明,在实际应用中可能会出现不同于图1所示的应用场景的其他应用场景。
图2是示出根据本发明的一个实施例的检测运动物体的方法200的一个示例的流程图。
图2所示的检测运动物体的方法200包括:S201,获得通过连续拍摄运动物体而得到的具有深度信息的至少两个深度图像帧,包括当前深度图像帧和至少一个历史深度图像帧,其中,所述至少两个深度图像帧的每个被划分为多个块;S202,计算当前深度图像帧的每个块中的落入不同深度区间的像素的个数与各个历史深度图像帧的对应块中的落入不同深度区间的像素的个数的差异情况;S203,根据所述差异情况,检测当前深度图像帧中的运动块,以构成所检测的运动物体。
在一个实施例中,所述至少两个深度图像帧的每个被划分为多个块的大小可以是10×10个像素。当然,该10×10个像素仅是示例,在其他实施例中,可以设置块为其他大小的块,也可以不一定是正方形的块,可以是长方形、圆形、椭圆形等其他各种形状的块。
此处,“深度区间”是指将该块中所涉及的各个深度从小到大排列、并划分为多个(等分或不等分)区间而形成的多个深度区间。“落入不同深度区间的像素的个数”指的是根据深度图像,具有在该深度区间内的深度的像素有几个。例如,在深度图像中的一个块中,其各个深度区间可能包括0-0.1、0.1-0.2、0.2-0.3……、0.8-0.9(单位是米或其他,或者将深度区间归一化,因此深度区间的标度与具体单位无关,仅表示比例)一共9个深度区间。例如,落入深度区间0-0.1的像素有2个,假设其中一个像素的深度是0.02,一个像素的深度是0.08,而落入深度区间0.1-0.2的像素也有2个,假设其中一个像素的深度是0.15,一个像素的深度是0.16,等等,落入深度区间0.8-0.9的像素有4个,假设其中一个像素的深度是0.85,一个像素的深度是0.83,一个像素的深度是0.84,一个像素的深度是0.89(如稍后的图3C和3D所示)。诸如此类,当然这些具体的深度区间和像素的个数仅是为了示例,而非限制。该区间的划分可以是如该例子中一样等分的,也可以是不等分的,对此不做限制。如此,可以得到当前深度图像帧的每个块中的落入不同深度区间的像素的个数。而对于各个历史深度图像帧的对应块中的落入不同深度区间的像素的个数,在此,假设历史深度图像帧为N个(N是正整数),即,在当前深度图像帧之前的N个深度图像帧。同样,可以得到N个历史深度图像帧的每个中的对应的每个块的落入不同深度区间的像素的个数。当然,在检测当前深度图像帧中的运动块时,需要至少一个历史深度图像帧,因此,一般在第二帧时开始进行这种运动物体的检测。
通常,如果物体在运动的话,则在每个块中的落入不同深度区间的像素的个数在相邻的两帧或更多帧(在当前深度图像帧和N个历史深度图像帧)之间通常也会发生变化,因为物体在运动的话,其微小的部位的深度一般会发生变化,因此,落入相同深度区间内的像素的个数一般会发生变化。因此,可以通过观察当前深度图像帧的每个块中的落入不同深度区间的像素的个数与各个历史深度图像帧的对应块中的落入不同深度区间的像素的个数的差异情况,来检测当前深度图像帧中的各个运动块,以构成所检测的运动物体。
如此,通过观察当前深度图像帧的每个块中的落入不同深度区间的像素的个数与各个历史深度图像帧的对应块中的落入不同深度区间的像素的个数的差异情况,可以检测到各个小的运动块,将这些运动块合成几个运动区域,可以推测出运动物体所在的位置。
一般来说,只要当前深度图像帧的每个块中的落入不同深度区间的像素的个数与各个历史深度图像帧的对应块中的落入不同深度区间的像素的个数存在差异、或者看上去该差异比较大,都可以认为该块是运动的,但是也可以采用量化这种差异并阈值化的方式来规避测量或计算误差并统一检测和判断标准。因此,在一个实施例中,根据所述差异情况,检测当前深度图像帧中的运动块,以构成所检测的运动物体的S203步骤可以包括:步骤S2031(图中未示出),量化所述每个块的所述差异情况的大小来计算当前深度图像帧中的该块的运动程度;步骤S2032(图中未示出),如果一个块的运动程度大于或等于第一预定阈值,则检测该块作为运动块。
进一步地,在例如游戏机的人机交互过程中,发现人手的运动相对于身体其他部分(例如相对于手臂)的运动更为显著,因此,可以考虑这种人手的运动的特殊性,来从所检测到的运动区域中估计出诸如人手的运动物体可能所在的区域。
如此,在一个实施例中,在检测时,如果当前深度图像帧中一个块的运动程度大于或等于第二预定阈值,可以确认该块属于人手的一部分。在此,该用来确认人手的第二预定阈值可以大于上述用来检测运动块的第一预定阈值。
上述第二预定阈值可以是通过经验来确定为固定值,也可以根据各个运动块的运动程度的大小来确定为动态值,例如按各个运动块的运动程度从大到小排列的前40%的运动程度作为第二预定阈值(因为人手的运动程度相对于身体的其他部分来说是比较大的),在该情况下,具有运动程度从大到小排列的前40%的运动程度的各个运动块所构成的区域可以被确认作为人手,在这种情况下,该第二预定阈值也是随着各个运动块的运动程度的分布而变化的。
在一个实施例中,可以通过下述公式来量化当前深度图像帧的每个块中的落入不同深度区间的像素的个数与各个历史深度图像帧的对应块中的落入不同深度区间的像素的个数的差异情况,来得到每个块的运动程度:
其中,Cj表示第j个块的运动程度,j=1,2……,M,M表示划分的块的个数,N表示历史深度图像帧的个数,K表示深度区间的个数,i=1,2……,K,Sji表示当前深度图像帧中的第j个块中的落入第i个深度区间的像素的个数,Tji表示通过将每个历史深度图像帧中的第j个块中的落入第i个深度区间的像素的个数求总和而得到的值。当然,可以理解,量化各个块的运动程度的公式显然不限于此,只要能反映当前深度图像帧的每个块中的落入不同深度区间的像素的个数与各个历史深度图像帧的对应块中的落入不同深度区间的像素的个数的差异情况的大小的公式都可以应用于本公开中。
以上提到的是根据当前深度图像帧中的每个块的运动程度来检测运动物体,甚至是人手的各个实施例。进一步地,通过观察,在某些情况下人手可能会运动一段时间之后在某一时间保持静止不动或运动程度很小,比如游戏机利用人手的停留时间来触发一个点击按钮的事件,而传统的运动检测(例如基于帧差的方法)并不能得到这种情况下的处于静止状态或运动程度很小的人手的位置。因此,本发明人进一步考虑先前深度图像帧(如果有的话)中的各个运动块的分布、例如位置和/或运动程度的大小等,如此,可以考虑到先前运动(当前可能静止或运动程度很小)的人手,来进一步进行更准确地人手检测。
如此,在一个实施例中,可以根据所检测的当前深度图像帧中的各个运动块的位置和运动程度、以及先前检测的先前深度图像帧中的各个运动块的位置和运动程度中的至少一个,来确定当前深度图像帧中哪些部分属于人手。
在一个实施例中,所述根据所检测的当前深度图像帧中的各个运动块的位置和运动程度、以及先前检测的先前深度图像帧中的各个运动块的位置和运动程度中的至少一个,来确定当前深度图像帧中哪些部分属于人手的步骤包括:根据先前检测的先前深度图像帧中的各个运动块构成的第一运动区域的位置,将所述第一运动区域映射到当前深度图像帧中,以与当前深度图像帧中的各个运动块构成的第二运动区域全部或部分重合;将投影后的第一运动区域的各个像素点的运动程度与所述第二运动区域中的各个像素点的运动程度叠加,以得到基于先前运动的累加运动程度图;根据基于先前运动的累加运动程度图,将满足预定条件的区域确定为人手。在此的运动程度的叠加可以是简单的相加。
在该实施例中,因为观察到在例如人机交互过程中,人体的其他部分也可能有运动,比如胳膊的运动,但是根据实验观测,发现人手的运动具有特殊的形式,并有别于身体其他部分的运动:例如,在人手运动的同时,胳膊也在运动,并且它们的运动类似于一条直线绕固定的一个点旋转,即人手及手臂构成的直线绕肘部或肩部旋转,而且,人手的运动比手臂或肘部或者肩部的运动更强烈。因此,在该实施例中,通过将先前检测到的(一个或多个)先前深度图像帧中的各个运动块构成的第一运动区域移动到与当前深度帧中检测到的各个运动块构成的第二运动区域部分或全部重合(尽可能重合,例如使得第一运动区域和第二运动区域的重合部分的面积最大),然后将投影后的第一运动区域的各个像素点的运动程度与所述第二运动区域中的各个像素点的运动程度叠加,可以得到基于先前运动的累加运动程度图,也就是说,即使当前深度图像帧中的人手处于静止状态,即在当前深度图像帧中该人手部位的块被检测到静止而非运动的,那么在叠加了先前深度图像帧中检测的人手部位(例如,先前人手还是运动的)的运动块的运动程度,则可以得到其中体现了人手部位仍然具有较大的运动程度的该累加运动程度图,从而,根据该累加运动程度图,通过阈值化处理等多种方式来找到满足预定条件的区域确定为人手。当然,在此,如果当前深度图像帧是第一帧,则可能不存在先前深度图像帧中检测的运动块,在这种情况下,则不进行这种累加,而仅通过例如上述的利用第二预定阈值来检测人手。
注意,在此,“先前检测的先前深度图像帧中的各个运动块”中与在检测当前深度图像帧中的各个运动块时使用的历史深度图像帧是不同的概念。在检测当前深度图像帧中的各个运动块时使用的历史深度图像帧是在当前深度图像帧之前存在的至少一个历史深度图像帧,而针对该至少一个历史深度图像帧,可能并没有进行运动块的检测;而对于先前检测的先前深度图像帧中的各个运动块,指的是在例如当前深度图像帧之前紧挨着的先前的一个深度图像帧中,进行了这种运动块的检测,从而得知了先前检测的先前深度图像帧中的各个运动块。
正如之前提到的,观察到在人手运动的同时,胳膊也在运动,并且它们的运动类似于一条直线绕固定的一个点旋转,即人手及手臂构成的直线绕肘部或肩部旋转。因此,在一个实施例中,根据先前检测的先前深度图像帧中的各个运动块构成的第一运动区域的位置,将所述第一运动区域映射到当前深度图像帧中,以与当前深度图像帧中的各个运动块构成的第二运动区域全部或部分重合的步骤包括:根据先前检测的先前深度图像帧中的各个运动块的位置,计算所述第一运动区域的第一主方向、第一中轴线、第一重心;根据当前深度图像帧中的各个运动块的位置,计算所述第二运动区域的第二主方向、第二中轴线、第二重心;移动所述第一运动区域,使得所述第一重心与所述第二重心全部或部分重合,所述第一中轴线与所述第二中轴线全部或部分重合,所述第一主方向与所述第二主方向全部或部分重合。
在这里,计算一个区域的主方向可以采用公知的主成分分析(PrincipalComponent Analysis,PCA)的方式(见,维基百科http://zh.wikipedia.org/wiki/%E4%B8%BB%E6%88%90%E5%88%86%E5%88%86%E6%9E%90)。PCA算法就是去寻找那些在该维度上方差比较大的维,同时忽略比较平均的维度。打个比方,平面区域一个斜75度的椭圆,且长轴远大于短轴,那么椭圆上的点在短轴上的分布明显弱于长轴,当短轴远小于长轴时,近似为一条直线,便失去了短轴这个维度。对于一组数(以2维空间的数为例)比如X=(X1,X2,X3,…Xn),每一个Xi是有一个2维的向量构成,它们在坐标系中的图如图5E所示。PCA的主要任务就是找一个方向让这组数在这个方向上的投影的方差最大(即投影到这个方向上之后最左边的点和最右边的点的距离最大)。在图5F中,在离点状区域最接近的那条线上的投影的方差最大,那条线就是主方向。PCA的具体过程不在此赘述,本领域技术人员可以公知该PCA方法的具体算法。而中轴线可以用主方向所在的线来表示,也可以采用其他公知的方法求得中轴线。另外,求区域的重心也可以采用本领域公知的各种算法,在此不赘述。
因为手臂和人手的运动通常是围绕肘部或肩部的旋转,因此可以通过数学方式将先前深度图像帧中检测的第一运动区域映射到当前深度图像帧中检测的第二运动区域。在一个例子中,可以如上所述地移动所述第一运动区域,使得所述第一重心与所述第二重心全部或部分重合,所述第一中轴线与所述第二中轴线全部或部分重合,所述第一主方向与所述第二主方向全部或部分重合。在此,由于第一运动区域和第二运动区域的形状可能不同或者由于检测运动块的误差,可能导致无论如何移动第一运动区域都无法使得所述第一重心与所述第二重心完全重合,所述第一中轴线与所述第二中轴线完全重合,所述第一主方向与所述第二主方向完全重合,因此,一般只要求它们尽可能地部分重合使得例如重合的面积最大即可。在一个实施例中,例如,可以移动第一运动区域先使得第一重心与所述第二重心完全重合以及第一中轴线与所述第二中轴线完全重合,而第一主方向与所述第二主方向可以部分重合,或者先使得第一重心与所述第二重心完全重合以及第一主方向与所述第二主方向可以完全重合,而第一中轴线与所述第二中轴线可以部分重合等等。在此,该重合的标准、诸如重心、主方向、中轴线仅是示例,在其他实施例中,还可以使得运动区域的边缘尽可能重合等等。
通过观察,人手以及连着的手臂一般是狭长形的,因此在检测人手的运动区域之前,可以对所有运动块构成的运动区域进行预过滤,以找到最像人手和/或手臂的运动区域。例如,所述第一运动区域和所述第二运动区域可以是满足如下条件之一的区域:各个运动块构成的运动区域的形状最狭长;各个运动块构成的运动区域与手臂的形状的相似程度最大;各个运动块构成的运动区域经过外接椭圆或矩形之后,长轴与短轴之比或长宽比与手臂的相似程度最大。将运动区域进行外接椭圆或外接矩形是公知的几何运算方式,在此不赘述其具体步骤。
在一个实施例中,根据基于先前运动的累加运动程度图、将满足预定条件的区域确定为人手的步骤可以包括如下中的一种或多种:将运动程度大于第三预定阈值的区域确定为人手的区域,其中,根据所述基于先前运动的累加运动程度图中的叠加后的运动程度从大到小排列,取第预定数量个的运动程度值作为第三预定阈值;利用先前检测的人手的区域(如果有的话)相对于第一运动区域的位置来估算当前检测的人手的区域相对于第二运动区域的位置,并根据该当前检测的人手的区域相对于第二运动区域的位置来确定人手的区域;根据人手的颜色、灰度和深度中的至少一种的信息来找到与所述信息的相似程度大于预定值的区域。
当然,在先前运动的累加运动程度图的基础上,还可以有根据人手的特征来确定人手的区域的其他方式,例如将运动程度比较大,且形状比其他部位粗的区域确定为人手(因为人手一般比手臂更粗)等等。因此,本公开中举例的例子仅是示例而非限制。
如此,根据本发明的各个实施例,可以根据当前深度图像帧的每个块中的落入不同深度区间的像素的个数与各个历史深度图像帧的对应块中的落入不同深度区间的像素的个数的差异情况,来检测运动的块来找到包括人手的运动物体的区域,而进一步地,可以结合先前的运动块的检测情况和/或人手的形状、颜色、灰度、深度等特征,来更准确地检测人手的区域。
为了使得根据本发明的各个实施例的检测运动物体、甚至人手的方案更形象化,以下用各个图来示意性地示出根据本发明的各个和其他实施例的方案。
图3A是示出根据本发明的另一个实施例的检测运动物体的方法的另一个示例的流程图。
在图3A示出的根据本发明的另一个实施例的检测运动物体的方法300中,包括步骤:S301,获得当前深度图像帧和一个或多个历史深度图像帧,其中,所述当前深度图像帧和一个或多个历史深度图像帧的每个被划分为例如M个块(其中,M是正整数);S302,根据所述当前深度图像帧和一个或多个历史深度图像帧来计算当前运动图,此处,该当前运动图是为了用图像来更直观地反映当前深度图像帧的每个块中的落入不同深度区间的像素的个数与各个历史深度图像帧的对应块中的落入不同深度区间的像素的个数的差异情况及甚至差异的大小;S303,根据该计算的当前运动图来检测运动的块来构成所检测的运动物体。在此,该当前运动图仅是为了更直观地反映差异情况以及甚至差异的大小,使得后续检测的处理更加简单和直观明了。
图3B是示出在图3A的检测运动物体的方法中的计算当前运动图的步骤S302的一个具体的示例流程图。
如图3B所示,该计算当前运动图的步骤S302包括:S3021,利用当前深度图像帧来计算划分的每个块的空间直方图S;S3022,利用一个或多个历史深度图像帧来计算划分的每个块的时间直方图T;S3023,利用该空间直方图S和该时间直方图T来计算当前运动图。空间直方图S仅是为了用图像来更直观地反映当前深度图像帧(在空间上的)的每个块的落入不同深度区间的像素的个数,而时间直方图T也仅是为了用图像来更直观地反映各个(不同时间的)历史深度图像帧的每个块的落入不同深度区间的像素的个数。
图3C示意性地示出例如第j个块的空间直方图S的示例,而图3D示意性地示出对应的第j个块的时间直方图T的示例。参考图3C,在该空间直方图S中,各个深度区间可能包括0-0.1、0.1-0.2、0.2-0.3……、0.8-0.9(单位是米或其他,或者将深度区间归一化,因此深度区间的标度与具体单位无关,仅表示比例)一共9个深度区间。例如,落入深度区间0-0.1的像素有2个,假设其中一个像素的深度是0.02(米或其他单位),一个像素的深度是0.08(米或其他单位),而落入深度区间0.1-0.2的像素也有2个,假设其中一个像素的深度是0.15(米或其他单位),一个像素的深度是0.16(米或其他单位),等等,落入深度区间0.4-0.5的像素有23个,等等,落入深度区间0.8-0.9的像素有4个,假设其中一个像素的深度是0.85(米或其他单位),一个像素的深度是0.83(米或其他单位),一个像素的深度是0.84(米或其他单位),一个像素的深度是0.89(米或其他单位)。参考图3D,示出了示例的时间直方图T,其中,每个深度区间的柱(即落入该深度区间的像素的个数)在该例子中是各个历史深度图像帧中落入该深度区间的像素的个数的总和。例如,假设有10个历史深度图像帧,则得到在10个历史深度图像帧中的例如落入深度区间0-0.1的像素有20个,而落入深度区间0.1-0.2的像素有20个,落入深度区间0.4-0.5的像素有460个,等等,落入深度区间0.8-0.9的像素有40个。当然,该示例的时间直方图T的柱表示的是各个历史深度图像帧中落入该深度区间的像素的个数的总和,但是也可以用这种个数的总和除以10求平均得到的数来作为该柱的值,得到例如2、2……46、……4,这样可以与空间直方图S更直观地进行对比来找到差异情况和/或大小。
另外,求时间直方图时也可以将当前深度图像帧中落入该深度区间的像素的个数考虑进去,也就是说,时间直方图T的柱可以是当前深度图像帧和各个历史深度图像帧(即,在该例子中,一共11帧)中落入该深度区间的像素的个数的总和,但是也可以用这种个数的总和除以11求平均得到的数来作为该柱的值。但在本公开中,仅以10个历史深度图像帧来求时间直方图作为例子而非限制。
另外,在此利用例如10个历史深度图像帧来求落入某个深度区间的像素的个数的平均可以消除某个/些历史深度图像帧的某些像素深度的误差,达到更稳定的判断结果。
如上所述,在S3023中,可以利用该空间直方图S和该时间直方图T来计算当前运动图C。在一个实施例中,可以通过如下公式来利用该空间直方图S和该时间直方图T来计算当前运动图C:
其中,Cj表示第j个块的运动程度,j=1,2……,M,M表示划分的块的个数,N表示历史深度图像帧的个数,K表示深度区间的个数,i=1,2……,K,Sji表示当前深度图像帧中的第j个块中的落入第i个深度区间的像素的个数,Tji表示通过将每个历史深度图像帧中的第j个块中的落入第i个深度区间的像素的个数求总和而得到的值。其中,也可以表示为公式中,在N*Sji=Tji(或两者比较接近)(即,当前深度图像帧中的第j个块中落入第i个深度区间中的像素的个数Sji乘以N的结果与例如各个历史图像帧中的第j个块中落入第i个深度区间中的像素的个数的总和Tji,表示第j个块中落入第i个深度区间中的像素个数与历史图像帧中的几乎无变化)时,该可以为0或很小的值,因此,可以得到越小的运动程度Cj的值。而N*Sji是为了防止该的值过小而难以检测。可见,上述公式仅是示例而非限制,而为了获得量化的差异情况,可以编写其他公式来反映这种差异情况。
也就是说,计算得到的当前运动图C可以具有与M个块、即当前深度图像帧相对应的形状,具有与划分的M个块相对应的M个值,且每个值表示量化所述每个块的所述差异情况的大小而得到的该块的运动程度。这样,通过本实施例中的当前运动图C,可以更直观地看到在哪个位置的哪个块的运动程度如何。
如此,根据图3C和图3D示例示出的第j个块的时间直方图和空间直方图的例子,可以用上述示例公式来求得Cj≈69。
然后,可以接下来通过在当前运动图C中检测运动程度大于或等于第一预定阈值的块作为运动块,从而得到由运动块构成的各个运动区域作为各个运动物体。该第一预定阈值的选择可以根据具体情况、例如块的大小、计算得到的各个块的运动程度的大小等等来决定。例如,可以设置该第一预定阈值为对所有块计算的运动程度的平均数或该平均数的1/2等等。因此,该第一预定阈值可以是固定的,也可以是随着对所有块计算的运动程度的具体情况而改变的。该第一预定阈值设置地越小,则对于运动块的检测更灵敏,只要稍有运动,就会被检测为运动块,而相反,该第一预定阈值设置地越大,则对于运动块的检测更不灵敏,需要剧烈一些的运动,才会被检测为运动块。因此,灵活地调节该第一预定阈值可以调整运动块的检测的灵敏度。
以上描述了对于一般的运动块的检测方式,一般来说,检测到了运动块之后可以将运动块所构成的各个运动区域确定为运动物体。进一步地,对于人手这种具有特殊运动特征和形状特征的运动物体,下面将介绍一些具体的实施例来检测人手。
首先,图4A是示出人手的运动规律的示意图。
从图4A可以看出,首先人手的形状是相对于身体的其他部分来说比较狭长的。在人手运动时,人的身体的其他部分也可能运动,比如手肘、胳膊或手臂也会运动。观测可以看出,人手的运动具有其特殊的形式,并有别于身体其他部分的运动。在人手运动的同时,胳膊、手肘或手臂也在运动,并且它们的运动类似于一条直线绕固定的一端旋转,即人手及胳膊、手肘或手臂构成的直线绕肘部或肩部旋转。而且,人手的运动比胳膊、手臂、肘部或者肩部的运动强烈。
图4B是示出根据本发明的另一个实施例的利用图4A所示意示出的人手的运动规律来检测诸如人手的运动物体的方法的另一个示例的流程图。
在一个实施例中,如果存在先前检测的先前深度图像帧中的各个运动块的位置和运动程度(例如存在先前检测的先前运动图,其计算方式与上述当前运动图的计算方式可以相同),可以基于人手的运动规律,根据所检测的当前深度图像帧中的各个运动块的位置和运动程度、以及先前检测的先前深度图像帧中的各个运动块的位置和运动程度中的至少一个,来确定当前深度图像帧中哪些部分属于人手。
例如,如图4B所示,该检测诸如人手的运动物体的方法400可以包括:步骤S401,获得当前深度图像帧和一个或多个历史深度图像帧;步骤S402,根据当前深度图像帧和一个或多个历史深度图像帧来计算当前运动图(计算方式的例子可以参考图3B和相关描述);步骤S403,将先前运动图(如果有的话)中的运动块构成的第一运动区域投影到当前运动图中的运动块构成的第二运动区域,以与该第二运动区域全部或部分重合;步骤S404,将投影后的第一运动区域的各个像素点的运动程度与所述第二运动区域中的各个像素点的运动程度叠加,以得到基于先前运动的累加运动程度图;步骤S405,根据基于先前运动的累加运动程度图,将满足预定条件的区域检测为人手。在此的运动程度的叠加可以是简单的相加。
使得先前运动图中的第一运动区域和当前运动图中的第二运动区域重合的投影方式有很多种,以下仅示例一种简单的方式,除此之外,还可以有其他公知的投影方式来使得两个运动区域达到重合,例如通过分析第一运动区域和第二运动区域来计算第一运动区域向第二运动区域的投影方向及投影幅值。投影方向可以根据第一运动区域、即上一帧的运动区域的主方向及当前运动图中的第二运动区域的主方向计算得到的。投影幅值可以是第一运动区域的每一点到第二运动区域的垂直距离(例如通过第一运动区域主方向上的各个点到第二运动区域的主方向的垂直距离来估算)。然后,根据投影方向及幅值,将第二运动区域投影到第一运动区域上。当然,还可以构思其他方式来使得第一运动区域和第二运动区域尽可能重合,在此不赘述。
图5A是示出在图4的检测诸如人手的运动物体的方法中的投影先前运动图以与当前运动图重合的步骤S403的示例具体流程图。
在图5A中,该投影先前运动图以与当前运动图重合的步骤S403可以包括:S4031,通过先前运动图来计算先前深度图像帧中的各个运动块组成的第一运动区域的第一主方向、第一中轴线、第一重心;步骤S4032,通过当前运动图来计算当前深度图像帧中的各个运动块组成的第二运动区域的第二主方向、第二中轴线、第二重心;步骤S4033,移动所述第一运动区域,使得所述第一重心与所述第二重心全部或部分重合,所述第一中轴线与所述第二中轴线全部或部分重合,所述第一主方向与所述第二主方向全部或部分重合。
在此,由于第一运动区域和第二运动区域的形状可能不同或者由于检测运动块的误差,可能导致无论如何移动第一运动区域都无法使得所述第一重心与所述第二重心完全重合,所述第一中轴线与所述第二中轴线完全重合,所述第一主方向与所述第二主方向完全重合,因此,一般只要求它们尽可能地部分重合使得例如重合的面积最大即可。在一个实施例中,例如,可以移动第一运动区域先使得第一重心与所述第二重心完全重合以及第一中轴线与所述第二中轴线完全重合,而第一主方向与所述第二主方向可以部分重合,或者先使得第一重心与所述第二重心完全重合以及第一主方向与所述第二主方向可以完全重合,而第一中轴线与所述第二中轴线可以部分重合等等。在此,该重合的标准、诸如重心、主方向、中轴线仅是示例,在其他实施例中,还可以使得运动区域的边缘尽可能重合等等。
如图5B所示,图5B是示意性地示出先前运动图中的运动块构成的第一运动区域和当前运动图的运动块构成的第二运动区域的示意图。在图5B中,作为示例地,白色的小块表示检测为运动的块,而黑色的小块则表示检测为不运动的块。而每个小块的值是该块的运动程度,如上所述。
图5C是示出在检测诸如人手的运动物体的方法中的第一运动区域和第二运动区域以及如何移动先前运动图以与当前运动图重合的示例示意图。在该示例中,可以从图5C中看出,先前运动图中的第一运动区域的第一主方向为θ1,当前运动图中的第二运动区域的第二主方向为θ2。先前运动图中的第一运动区域的第一重心为C1,当前运动图中的第二运动区域的第二重心为C2。在该例子中,先前运动图中的第一运动区域的第一中轴线与该第一主方向在一条直线上,当前运动图中的第二运动区域的第二中轴线与第二主方向在一条直线上。当然,在其他实施例中,如果计算方式不同,则中轴线和主方向可以不在一条直线上。
在这里,计算一个区域的主方向可以采用公知的主成分分析(PrincipalComponent Analysis,PCA)的方式(见,维基百科http://zh.wikipedia.org/wiki/%E4%B8%BB%E6%88%90%E5%88%86%E5%88%86%E6%9E%90)。PCA算法就是去寻找那些在该维度上方差比较大的维,同时忽略比较平均的维度。例如,对于一组数(以2维空间的数为例)比如X=(X1,X2,X3,…Xn),每一个Xi是有一个2维的向量构成,它们在坐标系中的图如图5E所示。PCA的主要任务就是找一个方向让这组数在这个方向上的投影的方差最大(即投影到这个方向上之后最左边的点和最右边的点的距离最大)。在图5F中,在离点状区域最接近的那条线上的投影的方差最大,那条线就是主方向。PCA的具体过程不在此赘述,本领域技术人员可以公知该PCA方法的具体算法。求区域的主方向的目的是为了找到人手相对于手臂的方向,以为一般人手的形状比手臂要粗,因此,如果检测到运动的人手加上手臂的运动区域(例如,如图5B所示),由于人手的形状较粗大,因此求得的主方向可能是从手臂到人手的方向,这样在先前运动图和当前运动图中的众多的不同朝向的运动区域中,可以初步地判断人手位于这些运动区域中的什么部位,从而在日后投影先前运动图中的运动区域以与当前运动图的运动区域重合时,能够使得先前运动图中的人手的部位与当前运动图中的人手的部位尽可能重合。
而中轴线可以用主方向所在的线来表示,也可以采用其他公知的方法求得中轴线。另外,求区域的重心也可以采用本领域公知的各种算法,在此不赘述。
如此,在图5C的情况下,要投影或移动该第一运动区域使得该第一运动区域与该第二运动区域重合,可以通过将第一运动区域先绕第一中轴线与第二中轴线的交叉点O作为中心,将第一运动区域向第二运动区域的方向旋转第一主方向θ1与第二主方向θ2的夹角θ,可以使得首先第一运动区域的第一中轴线和第二运动区域的第二中轴线重合,然后,在将移动后的第一运动区域沿着第一/第二中轴线移动,使得第一重心C1和第二重心C2重合。
当然,上述利用主方向、中轴线、重心来使得第一运动区域与第二运动区域尽可能重合的方式仅是示例,实际上,其他能够使得第一运动区域与第二运动区域尽可能重合例如使得重合的面积最大的方式都可以应用于本实施例。
在使得第一运动区域与第二运动区域尽可能地重合之后,在同一点处,将第一运动区域的在该点的运动程度与所述第二运动区域中该点的运动程度叠加,可以得到基于先前运动的累加运动程度图。在这里,用一个点(例如小块10×10个像素中的一个像素)处的运动程度的原因是在第一运动区域经过旋转和移动之后,其第一运动区域中的例如10×10大小的块的边缘与第二运动区域中的块的边缘不一定完全重合,因此,可以不再使用块作为最小单位来计算运动程度的累加,而是将同一块中的所有像素点都具有相同的运动程度来以像素点作为最小单位来进行运动程度的累加,可以得到基于每个像素的基于先前运动的累加运动程度图。也就是说,即使当前深度图像帧中的人手处于静止状态,即在当前深度图像帧中该人手部位的块被检测到静止而非运动的,此时该当前运动图中的该块的运动程度可能为0或很小,那么在叠加了先前深度图像帧中检测的人手部位的运动块的运动程度(例如,在先前人手还是运动的情况下,该先前运动图中的该对应位置的块的运动程度则不是0或并不小),则可以得到其中体现了人手部位仍然具有较大的运动程度的该累加运动程度图,从而,根据该更为合理的累加运动程度图,再通过阈值化处理等多种方式来找到满足预定条件的区域确定为人手。在此的运动程度的叠加可以是简单的相加。
在一个实施例中,根据基于先前运动的累加运动程度图、将满足预定条件的区域确定为人手的步骤可以包括如下中的一种或多种:将运动程度大于第三预定阈值的区域确定为人手的区域,其中,根据所述基于先前运动的累加运动程度图中的叠加后的运动程度从大到小排列,取第预定数量个(例如前40%个)的运动程度值作为第三预定阈值;利用先前检测的人手的区域(如果有的话)相对于第一运动区域的位置来估算当前检测的人手的区域相对于第二运动区域的位置,并根据该当前检测的人手的区域相对于第二运动区域的位置来确定人手的区域;根据人手的颜色、灰度和深度中的至少一种的信息来找到与所述信息的相似程度大于预定值的区域。可见,该满足预定条件的区域是在运动程度、在运动区域内的位置、颜色、灰度和深度等等上与人手的对应特征类似的区域。因此,可以以运动程度为基础,进一步考虑人手的其他对应特征,来构思更多满足其他的预定条件的区域作为检测人手的区域。
当然,如上所述,通过观察,人手以及连着的手臂一般是狭长形的,因此在检测人手的运动区域之前,可以对所有运动块构成的运动区域进行预过滤,以找到最像人手和/或手臂的运动区域。例如,所述第一运动区域和所述第二运动区域可以是满足如下条件之一的区域:各个运动块构成的运动区域的形状最狭长;各个运动块构成的运动区域与手臂的形状的相似程度最大;各个运动块构成的运动区域经过外接椭圆或矩形之后,长轴与短轴之比或长宽比与手臂的相似程度最大。将运动区域进行外接椭圆或外接矩形是公知的几何运算方式,在此不赘述其具体步骤。
图5D是示出如上所述地检测诸如人手的运动物体的方法中的选取最像人手的运动区域的示例方法的示意图。在图5D的左侧,示意性地示出了将运动区域外接矩形之后,求该运动区域的长与宽之比与一般的手臂的长和宽之比的差别,如果差别小于一个阈值,则可以确定该运动区域为上述用于重合的第一运动区域或第二运动区域。或者,参考图5D的右侧,示意性地示出了将运动区域外接椭圆之后,求该运动区域的长轴与短轴之比与一般的手臂的长轴和短轴之比的差别,如果差别小于一个阈值,则可以确定该运动区域为上述用于重合的第一运动区域或第二运动区域。当然,选取最像人手的运动区域的方法不仅限于图5D所示意的几种方法,而是可以有其他方式来选取最像人手的运动区域,比如用运动区域的外接矩形或外接椭圆的长和宽或长轴和短轴中的每个的最大阈值和最小阈值来限定形状、用运动区域和实际手臂的相近似的面积的大小、以及运动区域的边缘与手臂的边缘的近似程度等等,在此不赘述。
如此,根据本发明的各个实施例,可以根据当前深度图像帧的每个块中的落入不同深度区间的像素的个数与各个历史深度图像帧的对应块中的落入不同深度区间的像素的个数的差异情况,来检测运动的块来找到包括人手的运动物体的区域,而进一步地,可以结合先前的运动块的检测情况和/或人手的形状、颜色、灰度、深度等特征,来更准确地检测人手的区域。
图6是示出根据本发明的另一实施例的检测运动物体的系统600的方框图。
图6中示出的检测运动物体的系统600包括:获得装置601,被配置为获得通过连续拍摄运动物体而得到的具有深度信息的至少两个深度图像帧,包括当前深度图像帧和至少一个历史深度图像帧,其中,所述至少两个深度图像帧的每个被划分为多个块;计算装置602,被配置为计算当前深度图像帧的每个块中的落入不同深度区间的像素的个数与各个历史深度图像帧的对应块中的落入不同深度区间的像素的个数的差异情况;检测装置603,被配置为根据所述差异情况,检测当前深度图像帧中的运动块,以构成所检测的运动物体。
在一个实施例中,所述至少两个深度图像帧的每个被划分为多个块的大小可以是10×10个像素。当然,该10×10个像素仅是示例,在其他实施例中,可以设置块为其他大小的块,也可以不一定是正方形的块,可以是长方形、圆形、椭圆形等其他各种形状的块。
通常,如果物体在运动的话,则在每个块中的落入不同深度区间的像素的个数在相邻的两帧或更多帧(在当前深度图像帧和N个历史深度图像帧)之间通常也会发生变化,因为物体在运动的话,其微小的部位的深度一般会发生变化,因此,落入相同深度区间内的像素的个数一般会发生变化。因此,可以通过观察当前深度图像帧的每个块中的落入不同深度区间的像素的个数与各个历史深度图像帧的对应块中的落入不同深度区间的像素的个数的差异情况,来检测当前深度图像帧中的各个运动块,以构成所检测的运动物体。
如此,通过观察当前深度图像帧的每个块中的落入不同深度区间的像素的个数与各个历史深度图像帧的对应块中的落入不同深度区间的像素的个数的差异情况,可以检测到各个小的运动块,将这些运动块合成几个运动区域,可以推测出运动物体所在的位置。
一般来说,只要当前深度图像帧的每个块中的落入不同深度区间的像素的个数与各个历史深度图像帧的对应块中的落入不同深度区间的像素的个数存在差异、或者看上去该差异比较大,都可以认为该块是运动的,但是也可以采用量化这种差异并阈值化的方式来规避测量或计算误差并统一检测和判断标准。因此,在一个实施例中,所述检测装置603可以包括:量化所述每个块的所述差异情况的大小来计算当前深度图像帧中的该块的运动程度的装置(图中未示出);如果一个块的运动程度大于或等于第一预定阈值,则检测该块作为运动块的装置(图中未示出)。
进一步地,在例如游戏机的人机交互过程中,发现人手的运动相对于身体其他部分(例如相对于手臂)的运动更为显著,因此,可以考虑这种人手的运动的特殊性,来从所检测到的运动区域中估计出诸如人手的运动物体可能所在的区域。
如此,在一个实施例中,在检测时,如果当前深度图像帧中一个块的运动程度大于或等于第二预定阈值,可以确认该块属于人手的一部分。在此,该用来确认人手的第二预定阈值可以大于上述用来检测运动块的第一预定阈值。
上述第二预定阈值可以是通过经验来确定为固定值,也可以根据各个运动块的运动程度的大小来确定为动态值,例如按各个运动块的运动程度从大到小排列的前40%的运动程度作为第二预定阈值(因为人手的运动程度相对于身体的其他部分来说是比较大的),在该情况下,具有运动程度从大到小排列的前40%的运动程度的各个运动块所构成的区域可以被确认作为人手,在这种情况下,该第二预定阈值也是随着各个运动块的运动程度的分布而变化的。
在一个实施例中,可以通过下述公式来量化当前深度图像帧的每个块中的落入不同深度区间的像素的个数与各个历史深度图像帧的对应块中的落入不同深度区间的像素的个数的差异情况,来得到每个块的运动程度:
其中,Cj表示第j个块的运动程度,j=1,2……,M,M表示划分的块的个数,N表示历史深度图像帧的个数,K表示深度区间的个数,i=1,2……,K,Sji表示当前深度图像帧中的第j个块中的落入第i个深度区间的像素的个数,Tji表示通过将每个历史深度图像帧中的第j个块中的落入第i个深度区间的像素的个数求总和而得到的值。当然,可以理解,量化各个块的运动程度的公式显然不限于此,只要能反映当前深度图像帧的每个块中的落入不同深度区间的像素的个数与各个历史深度图像帧的对应块中的落入不同深度区间的像素的个数的差异情况的大小的公式都可以应用于本公开中。
以上提到的是根据当前深度图像帧中的每个块的运动程度来检测运动物体,甚至是人手的各个实施例。进一步地,通过观察,在某些情况下人手可能会运动一段时间之后在某一时间保持静止不动或运动程度很小,比如游戏机利用人手的停留时间来触发一个点击按钮的事件,而传统的运动检测(例如基于帧差的方法)并不能得到这种情况下的处于静止状态或运动程度很小的人手的位置。因此,本发明人进一步考虑先前深度图像帧(如果有的话)中的各个运动块的分布、例如位置和/或运动程度的大小等,如此,可以考虑到先前运动(当前可能静止或运动程度很小)的人手,来进一步进行更准确地人手检测。
如此,在一个实施例中,所述检测装置可以根据所检测的当前深度图像帧中的各个运动块的位置和运动程度、以及先前检测的先前深度图像帧中的各个运动块的位置和运动程度中的至少一个,来确定当前深度图像帧中哪些部分属于人手。
在一个实施例中,所述检测装置可以通过如下步骤来根据所检测的当前深度图像帧中的各个运动块的位置和运动程度、以及先前检测的先前深度图像帧中的各个运动块的位置和运动程度中的至少一个,来确定当前深度图像帧中哪些部分属于人手:根据先前检测的先前深度图像帧中的各个运动块构成的第一运动区域的位置,将所述第一运动区域映射到当前深度图像帧中,以与当前深度图像帧中的各个运动块构成的第二运动区域全部或部分重合;将投影后的第一运动区域的各个像素点的运动程度与所述第二运动区域中的各个像素点的运动程度叠加,以得到基于先前运动的累加运动程度图;根据基于先前运动的累加运动程度图,将满足预定条件的区域确定为人手。
在该实施例中,因为观察到在例如人机交互过程中,人体的其他部分也可能有运动,比如胳膊的运动。根据实验观测,在人手运动的同时,胳膊也在运动,并且它们的运动类似于一条直线绕固定的一个点旋转,即人手及手臂构成的直线绕肘部或肩部旋转,而且,人手的运动比手臂或肘部或者肩部的运动更强烈。因此,在该实施例中,通过将先前检测到的(一个或多个)先前深度图像帧中的各个运动块构成的第一运动区域移动到与当前深度帧中检测到的各个运动块构成的第二运动区域部分或全部重合(尽可能重合,例如使得第一运动区域和第二运动区域的重合部分的面积最大),然后将投影后的第一运动区域的各个像素点的运动程度与所述第二运动区域中的各个像素点的运动程度叠加,可以得到基于先前运动的累加运动程度图,也就是说,即使当前深度图像帧中的人手处于静止状态,即在当前深度图像帧中该人手部位的块被检测到静止而非运动的,那么在叠加了先前深度图像帧中检测的人手部位(例如,先前人手还是运动的)的运动块的运动程度,则可以得到其中体现了人手部位仍然具有较大的运动程度的该累加运动程度图,从而,根据该累加运动程度图,通过阈值化处理等多种方式来找到满足预定条件的区域确定为人手。当然,在此,如果当前深度图像帧是第一帧,则可能不存在先前深度图像帧中检测的运动块,在这种情况下,则不进行这种累加,而仅通过例如上述的利用第二预定阈值来检测人手。
注意,在此,“先前检测的先前深度图像帧中的各个运动块”中与在检测当前深度图像帧中的各个运动块时使用的历史深度图像帧是不同的概念。在检测当前深度图像帧中的各个运动块时使用的历史深度图像帧是在当前深度图像帧之前存在的至少一个历史深度图像帧,而针对该至少一个历史深度图像帧,可能并没有进行运动块的检测;而对于先前检测的先前深度图像帧中的各个运动块,指的是在例如当前深度图像帧之前紧挨着的先前的一个深度图像帧中,进行了这种运动块的检测,从而得知了先前检测的先前深度图像帧中的各个运动块。
正如之前提到的,观察到在人手运动的同时,胳膊也在运动,并且它们的运动类似于一条直线绕固定的一个点旋转,即人手及手臂构成的直线绕肘部或肩部旋转。因此,在一个实施例中,根据先前检测的先前深度图像帧中的各个运动块构成的第一运动区域的位置,将所述第一运动区域映射到当前深度图像帧中,以与当前深度图像帧中的各个运动块构成的第二运动区域全部或部分重合的步骤包括:根据先前检测的先前深度图像帧中的各个运动块的位置,计算所述第一运动区域的第一主方向、第一中轴线、第一重心;根据当前深度图像帧中的各个运动块的位置,计算所述第二运动区域的第二主方向、第二中轴线、第二重心;移动所述第一运动区域,使得所述第一重心与所述第二重心全部或部分重合,所述第一中轴线与所述第二中轴线全部或部分重合,所述第一主方向与所述第二主方向全部或部分重合。
在这里,计算一个区域的主方向可以采用公知的主成分分析(PrincipalComponent Analysis,PCA)的方式(见,维基百科http://zh.wikipedia.org/wiki/%E4%B8%BB%E6%88%90%E5%88%86%E5%88%86%E6%9E%90)。PCA的具体过程不在此赘述,本领域技术人员可以公知该PCA方法的具体算法。而中轴线可以用主方向所在的线来表示,也可以采用其他公知的方法求得中轴线。另外,求区域的重心也可以采用本领域公知的各种算法,在此不赘述。
因为手臂和人手的运动通常是围绕肘部或肩部的旋转,因此可以通过数学方式将先前深度图像帧中检测的第一运动区域映射到当前深度图像帧中检测的第二运动区域。在一个例子中,可以如上所述地移动所述第一运动区域,使得所述第一重心与所述第二重心全部或部分重合,所述第一中轴线与所述第二中轴线全部或部分重合,所述第一主方向与所述第二主方向全部或部分重合。在此,由于第一运动区域和第二运动区域的形状可能不同或者由于检测运动块的误差,可能导致无论如何移动第一运动区域都无法使得所述第一重心与所述第二重心完全重合,所述第一中轴线与所述第二中轴线完全重合,所述第一主方向与所述第二主方向完全重合,因此,一般只要求它们尽可能地部分重合使得例如重合的面积最大即可。在此,该重合的标准、诸如重心、主方向、中轴线仅是示例,在其他实施例中,还可以使得运动区域的边缘尽可能重合等等。
通过观察,人手以及连着的手臂一般是狭长形的,因此在检测人手的运动区域之前,可以对所有运动块构成的运动区域进行预过滤,以找到最像人手和/或手臂的运动区域。例如,所述第一运动区域和所述第二运动区域可以是满足如下条件之一的区域:各个运动块构成的运动区域的形状最狭长;各个运动块构成的运动区域与手臂的形状的相似程度最大;各个运动块构成的运动区域经过外接椭圆或矩形之后,长轴与短轴之比或长宽比与手臂的相似程度最大。将运动区域进行外接椭圆或外接矩形是公知的几何运算方式,在此不赘述其具体步骤。
在一个实施例中,所述检测装置可以通过如下中的一种或多种来根据基于先前运动的累加运动程度图、将满足预定条件的区域确定为人手:将运动程度大于第三预定阈值的区域确定为人手的区域,其中,根据所述基于先前运动的累加运动程度图中的叠加后的运动程度从大到小排列,取第预定数量个的运动程度值作为第三预定阈值;利用先前检测的人手的区域(如果有的话)相对于第一运动区域的位置来估算当前检测的人手的区域相对于第二运动区域的位置,并根据该当前检测的人手的区域相对于第二运动区域的位置来确定人手的区域;根据人手的颜色、灰度和深度中的至少一种的信息来找到与所述信息的相似程度大于预定值的区域。
当然,在先前运动的累加运动程度图的基础上,还可以有根据人手的特征来确定人手的区域的其他方式,例如将运动程度比较大,且形状比其他部位粗的区域确定为人手(因为人手一般比手臂更粗)等等。因此,本公开中举例的例子仅是示例而非限制。
如此,根据本发明的各个实施例,可以根据当前深度图像帧的每个块中的落入不同深度区间的像素的个数与各个历史深度图像帧的对应块中的落入不同深度区间的像素的个数的差异情况,来检测运动的块来找到包括人手的运动物体的区域,而进一步地,可以结合先前的运动块的检测情况和/或人手的形状、颜色、灰度、深度等特征,来更准确地检测人手的区域。
本公开中涉及的器件、装置、设备、系统的方框图仅作为例示性的例子并且不意图要求或暗示必须按照方框图示出的方式进行连接、布置、配置。如本领域技术人员将认识到的,可以按任意方式连接、布置、配置这些器件、装置、设备、系统。诸如“包括”、“包含”、“具有”等等的词语是开放性词汇,指“包括但不限于”,且可与其互换使用。这里所使用的词汇“或”和“和”指词汇“和/或”,且可与其互换使用,除非上下文明确指示不是如此。这里所使用的词汇“诸如”指词组“诸如但不限于”,且可与其互换使用。
本公开中的步骤流程图以及以上方法描述仅作为例示性的例子并且不意图要求或暗示必须按照给出的顺序进行各个实施例的步骤。如本领域技术人员将认识到的,可以按任意顺序进行以上实施例中的步骤的顺序。诸如“其后”、“然后”、“接下来”等等的词语不意图限制步骤的顺序;这些词语仅用于引导读者通读这些方法的描述。此外,例如使用冠词“一个”、“一”或者“该”对于单数的要素的任何引用不被解释为将该要素限制为单数。
提供所公开的方面的以上描述以使本领域的任何技术人员能够做出或者使用本发明。对这些方面的各种修改对于本领域技术人员而言是非常显而易见的,并且在此定义的一般原理可以应用于其他方面而不脱离本发明的范围。因此,本发明不意图被限制到在此示出的方面,而是按照与在此公开的原理和新颖的特征一致的最宽范围。
为了例示和描述的目的已经给出了以上描述。此外,此描述不意图将本发明的实施例限制到在此公开的形式。尽管以上已经讨论了多个示例方面和实施例,但是本领域技术人员将认识到其某些变型、修改、改变、添加和子组合。
以上所述的方法的各个操作可以通过能够进行相应的功能的任何适当的手段而进行。该手段可以包括各种硬件和/或软件组件和/或模块,包括但不限于电路、专用集成电路(ASIC)或处理器。
可以利用被设计用于进行在此所述的功能的通用处理器、数字信号处理器(DSP)、ASIC、场可编程门阵列信号(FPGA)或其他可编程逻辑器件(PLD)、离散门或晶体管逻辑、离散的硬件组件或者其任意组合而实现或进行所述的各个例示的逻辑块、模块和电路。通用处理器可以是微处理器,但是作为替换,该处理器可以是任何商业上可获得的处理器、控制器、微控制器或状态机。处理器还可以实现为计算设备的组合,例如DSP和微处理器的组合,多个微处理器、与DSP核协作的一个或多个微处理器或任何其他这样的配置。
结合本公开描述的方法或算法的步骤可以直接嵌入在硬件中、处理器执行的软件模块中或者这两种的组合中。软件模块可以存在于任何形式的有形存储介质中。可以使用的存储介质的一些例子包括随机存取存储器(RAM)、只读存储器(ROM)、快闪存储器、EPROM存储器、EEPROM存储器、寄存器、硬碟、可移动碟、CD-ROM等。存储介质可以耦接到处理器以便该处理器可以从该存储介质读取信息以及向该存储介质写信息。在替换方式中,存储介质可以与处理器是整体的。软件模块可以是单个指令或者许多指令,并且可以分布在几个不同的代码段上、不同的程序之间以及跨过多个存储介质。
在此公开的方法包括用于实现所述的方法的一个或多个动作。方法和/或动作可以彼此互换而不脱离权利要求的范围。换句话说,除非指定了动作的具体顺序,否则可以修改具体动作的顺序和/或使用而不脱离权利要求的范围。
所述的功能可以按硬件、软件、固件或其任意组合而实现。如果以软件实现,功能可以作为一个或多个指令存储在切实的计算机可读介质上。存储介质可以是可以由计算机访问的任何可用的切实介质。通过例子而不是限制,这样的计算机可读介质可以包括RAM、ROM、EEPROM、CD-ROM或其他光碟存储、磁碟存储或其他磁存储器件或者可以用于携带或存储指令或数据结构形式的期望的程序代码并且可以由计算机访问的任何其他切实介质。如在此使用的,碟(disk)和盘(disc)包括紧凑盘(CD)、激光盘、光盘、数字通用盘(DVD)、软碟和蓝光盘,其中碟通常磁地再现数据,而盘利用激光光学地再现数据。
因此,计算机程序产品可以进行在此给出的操作。例如,这样的计算机程序产品可以是具有有形存储(和/或编码)在其上的指令的计算机可读的有形介质,该指令可由一个或多个处理器执行以进行在此所述的操作。计算机程序产品可以包括包装的材料。
软件或指令也可以通过传输介质而传输。例如,可以使用诸如同轴电缆、光纤光缆、双绞线、数字订户线(DSL)或诸如红外、无线电或微波的无线技术的传输介质从网站、服务器或者其他远程源传输软件。
此外,用于进行在此所述的方法和技术的模块和/或其他适当的手段可以在适当时由用户终端和/或基站下载和/或其他方式获得。例如,这样的设备可以耦接到服务器以促进用于进行在此所述的方法的手段的传送。或者,在此所述的各种方法可以经由存储部件(例如RAM、ROM、诸如CD或软碟等的物理存储介质)提供,以便用户终端和/或基站可以在耦接到该设备或者向该设备提供存储部件时获得各种方法。此外,可以利用用于将在此所述的方法和技术提供给设备的任何其他适当的技术。
其他例子和实现方式在本公开和所附权利要求的范围和精神内。例如,由于软件的本质,以上所述的功能可以使用由处理器、硬件、固件、硬连线或这些的任意的组合执行的软件实现。实现功能的特征也可以物理地位于各个位置,包括被分发以便功能的部分在不同的物理位置处实现。而且,如在此使用的,包括在权利要求中使用的,在以“至少一个”开始的项的列举中使用的“或”指示分离的列举,以便例如“A、B或C的至少一个”的列举意味着A或B或C,或AB或AC或BC,或ABC(即A和B和C)。此外,措辞“示例的”不意味着描述的例子是优选的或者比其他例子更好。
可以不脱离由所附权利要求定义的教导的技术而进行对在此所述的技术的各种改变、替换和更改。此外,本公开的和权利要求的范围不限于以上所述的处理、机器、制造、事件的构成、手段、方法和动作的具体方面。可以利用与在此所述的相应方面进行基本相同的功能或者实现基本相同的结果的当前存在的或者稍后要开发的处理、机器、制造、事件的构成、手段、方法或动作。因而,所附权利要求包括在其范围内的这样的处理、机器、制造、事件的构成、手段、方法或动作。
Claims (7)
1.一种检测运动物体的方法,包括:
获得通过连续拍摄运动物体而得到的具有深度信息的至少两个深度图像帧,包括当前深度图像帧和至少一个历史深度图像帧,其中,所述至少两个深度图像帧的每个被划分为多个块;
计算当前深度图像帧的每个块中的落入不同深度区间的像素的个数与各个历史深度图像帧的对应块中的落入不同深度区间的像素的个数的差异情况;
根据所述差异情况,检测当前深度图像帧中的运动块,以构成所检测的运动物体,
其中,根据所述差异情况,检测当前深度图像帧中的运动块,以构成所检测的运动物体的步骤包括:
量化所述每个块的所述差异情况的大小来计算当前深度图像帧中的该块的运动程度;
如果一个块的运动程度大于或等于第一预定阈值,则检测该块作为运动块,
所述方法还包括:根据所检测的当前深度图像帧中的各个运动块的位置和运动程度、以及先前检测的先前深度图像帧中的各个运动块的位置和运动程度中的至少一个,来确定当前深度图像帧中哪些部分属于人手,
其中,所述根据所检测的当前深度图像帧中的各个运动块的位置和运动程度、以及先前检测的先前深度图像帧中的各个运动块的位置和运动程度中的至少一个,来确定当前深度图像帧中哪些部分属于人手的步骤包括:
根据先前检测的先前深度图像帧中的各个运动块构成的第一运动区域的位置,将所述第一运动区域映射到当前深度图像帧中,以与当前深度图像帧中的各个运动块构成的第二运动区域全部或部分重合;
将投影后的第一运动区域的各个像素点的运动程度与所述第二运动区域中的各个像素点的运动程度叠加,以得到基于先前运动的累加运动程度图;
根据基于先前运动的累加运动程度图,将满足预定条件的区域确定为人手。
2.根据权利要求1的方法,其中,如果当前深度图像帧中一个块的运动程度大于或等于第二预定阈值,则确认该块属于人手的一部分。
3.根据权利要求1的方法,其中,根据先前检测的先前深度图像帧中的各个运动块构成的第一运动区域的位置,将所述第一运动区域映射到当前深度图像帧中,以与当前深度图像帧中的各个运动块构成的第二运动区域全部或部分重合的步骤包括:
根据先前检测的先前深度图像帧中的各个运动块的位置,计算所述第一运动区域的第一主方向、第一中轴线、第一重心;
根据当前深度图像帧中的各个运动块的位置,计算所述第二运动区域的第二主方向、第二中轴线、第二重心;
移动所述第一运动区域,使得所述第一重心与所述第二重心全部或部分重合,所述第一中轴线与所述第二中轴线全部或部分重合,所述第一主方向与所述第二主方向全部或部分重合。
4.根据权利要求3的方法,其中,所述第一运动区域和所述第二运动区域是满足如下条件之一的区域:
各个运动块构成的运动区域的形状最狭长;
各个运动块构成的运动区域与手臂的形状的相似程度最大;
各个运动块构成的运动区域经过外接椭圆或矩形之后,长轴与短轴之比或长宽比与手臂的相似程度最大。
5.根据权利要求1的方法,其中,根据基于先前运动的累加运动程度图,将满足预定条件的区域确定为人手包括如下中的一种或多种:
将运动程度大于第三预定阈值的区域确定为人手的区域,其中,根据所述基于先前运动的累加运动程度图中的叠加后的运动程度从大到小排列,取第预定数量个的运动程度值作为第三预定阈值;
利用先前检测的人手的区域相对于第一运动区域的位置来估算当前检测的人手的区域相对于第二运动区域的位置,并根据该当前检测的人手的区域相对于第二运动区域的位置来确定人手的区域;
根据人手的颜色、灰度和深度中的至少一种的信息来找到与所述信息的相似程度大于预定值的区域。
6.根据权利要求2-5中任一的方法,其中,通过如下公式,来计算所述块的运动程度:
<mrow>
<msub>
<mi>C</mi>
<mi>j</mi>
</msub>
<mo>=</mo>
<munderover>
<mo>&Sigma;</mo>
<mrow>
<mi>i</mi>
<mo>=</mo>
<mn>1</mn>
</mrow>
<mi>K</mi>
</munderover>
<mo>|</mo>
<mrow>
<mo>(</mo>
<mi>N</mi>
<mo>*</mo>
<msub>
<mi>S</mi>
<mrow>
<mi>j</mi>
<mi>i</mi>
</mrow>
</msub>
<mo>)</mo>
</mrow>
<mo>*</mo>
<mi>l</mi>
<mi>o</mi>
<mi>g</mi>
<mfrac>
<mrow>
<mi>N</mi>
<mo>*</mo>
<msub>
<mi>S</mi>
<mrow>
<mi>j</mi>
<mi>i</mi>
</mrow>
</msub>
</mrow>
<msub>
<mi>T</mi>
<mrow>
<mi>j</mi>
<mi>i</mi>
</mrow>
</msub>
</mfrac>
<mo>|</mo>
<mo>,</mo>
<mi>j</mi>
<mo>=</mo>
<mn>1</mn>
<mo>...</mo>
<mi>M</mi>
</mrow>
其中,Cj表示第j个块的运动程度,j=1,2……,M,M表示划分的块的个数,N表示历史深度图像帧的个数,K表示深度区间的个数,i=1,2……,K,Sji表示当前深度图像帧中的第j个块中的落入第i个深度区间的像素的个数,Tji表示通过将每个历史深度图像帧中的第j个块中的落入第i个深度区间的像素的个数求总和而得到的值。
7.一种检测运动物体的系统,包括:
获得装置,被配置为获得通过连续拍摄运动物体而得到的具有深度信息的至少两个深度图像帧,包括当前深度图像帧和至少一个历史深度图像帧,其中,所述至少两个深度图像帧的每个被划分为多个块;
计算装置,被配置为计算当前深度图像帧的每个块中的落入不同深度区间的像素的个数与各个历史深度图像帧的对应块中的落入不同深度区间的像素的个数的差异情况;
检测装置,被配置为根据所述差异情况,检测当前深度图像帧中的运动块,以构成所检测的运动物体,
其中,所述检测装置包括:
量化所述每个块的所述差异情况的大小来计算当前深度图像帧中的该块的运动程度的装置;
如果一个块的运动程度大于或等于第一预定阈值,则检测该块作为运动块的装置,
所述检测装置被配置为根据所检测的当前深度图像帧中的各个运动块的位置和运动程度、以及先前检测的先前深度图像帧中的各个运动块的位置和运动程度中的至少一个,来确定当前深度图像帧中哪些部分属于人手,
其中,所述检测装置被配置为通过如下步骤来根据所检测的当前深度图像帧中的各个运动块的位置和运动程度、以及先前检测的先前深度图像帧中的各个运动块的位置和运动程度中的至少一个,来确定当前深度图像帧中哪些部分属于人手:
根据先前检测的先前深度图像帧中的各个运动块构成的第一运动区域的位置,将所述第一运动区域映射到当前深度图像帧中,以与当前深度图像帧中的各个运动块构成的第二运动区域全部或部分重合;
将投影后的第一运动区域的各个像素点的运动程度与所述第二运动区域中的各个像素点的运动程度叠加,以得到基于先前运动的累加运动程度图;
根据基于先前运动的累加运动程度图,将满足预定条件的区域确定为人手。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310365452.5A CN104424649B (zh) | 2013-08-21 | 2013-08-21 | 检测运动物体的方法和系统 |
JP2014159203A JP6424510B2 (ja) | 2013-08-21 | 2014-08-05 | 移動物体検出方法及びシステム |
US14/461,558 US9552514B2 (en) | 2013-08-21 | 2014-08-18 | Moving object detection method and system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310365452.5A CN104424649B (zh) | 2013-08-21 | 2013-08-21 | 检测运动物体的方法和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104424649A CN104424649A (zh) | 2015-03-18 |
CN104424649B true CN104424649B (zh) | 2017-09-26 |
Family
ID=52480415
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310365452.5A Expired - Fee Related CN104424649B (zh) | 2013-08-21 | 2013-08-21 | 检测运动物体的方法和系统 |
Country Status (3)
Country | Link |
---|---|
US (1) | US9552514B2 (zh) |
JP (1) | JP6424510B2 (zh) |
CN (1) | CN104424649B (zh) |
Families Citing this family (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9111351B2 (en) * | 2011-12-15 | 2015-08-18 | Sony Corporation | Minimizing drift using depth camera images |
JP5961123B2 (ja) * | 2013-01-30 | 2016-08-02 | パナソニック株式会社 | 人物検出追跡装置、人物検出追跡方法、および人物検出追跡プログラム |
US9563955B1 (en) | 2013-05-15 | 2017-02-07 | Amazon Technologies, Inc. | Object tracking techniques |
CN104794733B (zh) | 2014-01-20 | 2018-05-08 | 株式会社理光 | 对象跟踪方法和装置 |
CN105096259B (zh) | 2014-05-09 | 2018-01-09 | 株式会社理光 | 深度图像的深度值恢复方法和系统 |
KR102267871B1 (ko) * | 2014-09-03 | 2021-06-23 | 삼성전자주식회사 | 디스플레이 장치 및 그 제어 방법 |
CN104202533B (zh) * | 2014-09-24 | 2019-05-21 | 中磊电子(苏州)有限公司 | 移动检测装置及移动检测方法 |
JP6030617B2 (ja) * | 2014-10-15 | 2016-11-24 | 株式会社ソニー・インタラクティブエンタテインメント | 画像処理装置および画像処理方法 |
CN105590309B (zh) | 2014-10-23 | 2018-06-15 | 株式会社理光 | 前景图像分割方法和装置 |
CN105590312B (zh) | 2014-11-12 | 2018-05-18 | 株式会社理光 | 前景图像分割方法和装置 |
EP3361935A4 (en) * | 2015-10-14 | 2019-08-28 | President and Fellows of Harvard College | AUTOMATIC CLASSIFICATION OF ANIMAL BEHAVIOR |
US9996933B2 (en) * | 2015-12-22 | 2018-06-12 | Qualcomm Incorporated | Methods and apparatus for outlier detection and correction of structured light depth maps |
TWI616843B (zh) * | 2016-09-12 | 2018-03-01 | 粉迷科技股份有限公司 | 動態影像去背方法、系統與電腦可讀取儲存裝置 |
CN106898014B (zh) * | 2017-02-22 | 2020-02-18 | 杭州艾芯智能科技有限公司 | 一种基于深度相机的入侵检测方法 |
KR102455632B1 (ko) | 2017-09-14 | 2022-10-17 | 삼성전자주식회사 | 스테레오 매칭 방법 및 장치 |
CN110493488B (zh) | 2018-05-15 | 2021-11-26 | 株式会社理光 | 视频稳像方法、视频稳像装置和计算机可读存储介质 |
CN109087351B (zh) * | 2018-07-26 | 2021-04-16 | 北京邮电大学 | 基于深度信息对场景画面进行闭环检测的方法及装置 |
CN109447929B (zh) * | 2018-10-18 | 2020-12-04 | 北京小米移动软件有限公司 | 图像合成方法及装置 |
TWI697846B (zh) | 2018-11-26 | 2020-07-01 | 財團法人工業技術研究院 | 物體辨識方法及其裝置 |
KR20200080047A (ko) * | 2018-12-26 | 2020-07-06 | 삼성전자주식회사 | 진정 사용자의 손을 식별하는 방법 및 이를 위한 웨어러블 기기 |
JP7362265B2 (ja) * | 2019-02-28 | 2023-10-17 | キヤノン株式会社 | 情報処理装置、情報処理方法及びプログラム |
CN111667398B (zh) | 2019-03-07 | 2023-08-01 | 株式会社理光 | 图像处理方法、装置和计算机可读存储介质 |
EP3798976B1 (en) * | 2019-09-30 | 2023-11-01 | Tata Consultancy Services Limited | Method and system for determining dynamism in a scene by processing a depth image |
US11508077B2 (en) | 2020-05-18 | 2022-11-22 | Samsung Electronics Co., Ltd. | Method and apparatus with moving object detection |
CN112361565B (zh) * | 2020-10-20 | 2022-07-15 | 上海炬佑智能科技有限公司 | 空调控制方法、空调控制装置以及空调设备 |
CN112883944B (zh) * | 2021-04-28 | 2021-07-02 | 北京三快在线科技有限公司 | 活体检测方法、模型训练方法、装置、存储介质及设备 |
Family Cites Families (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
AUPO894497A0 (en) * | 1997-09-02 | 1997-09-25 | Xenotech Research Pty Ltd | Image processing method and apparatus |
US6501515B1 (en) * | 1998-10-13 | 2002-12-31 | Sony Corporation | Remote control system |
JP3506934B2 (ja) * | 1998-12-11 | 2004-03-15 | 株式会社メガチップス | 監視装置及び監視システム |
JP2001306236A (ja) * | 2000-04-21 | 2001-11-02 | Sony Corp | 情報処理装置、動作認識処理方法及びプログラム格納媒体 |
JP4615252B2 (ja) * | 2000-10-06 | 2011-01-19 | 株式会社ソニー・コンピュータエンタテインメント | 画像処理装置、画像処理方法、記録媒体、コンピュータプログラム、半導体デバイス |
JP4244584B2 (ja) * | 2002-08-01 | 2009-03-25 | ソニー株式会社 | 重要画像検出装置、重要画像検出方法、プログラム及び記録媒体並びに重要画像検出システム |
JP2006134035A (ja) * | 2004-11-05 | 2006-05-25 | Fuji Heavy Ind Ltd | 移動物体検出装置および移動物体検出方法 |
CN100579174C (zh) * | 2007-02-02 | 2010-01-06 | 华为技术有限公司 | 一种运动检测方法和装置 |
CN101437124A (zh) * | 2008-12-17 | 2009-05-20 | 三星电子(中国)研发中心 | 面向电视控制的动态手势识别信号处理方法 |
KR20110007806A (ko) * | 2009-07-17 | 2011-01-25 | 삼성전자주식회사 | 카메라를 이용하여 손동작을 인식하는 장치 및 방법 |
CN101640809B (zh) * | 2009-08-17 | 2010-11-03 | 浙江大学 | 一种融合运动信息与几何信息的深度提取方法 |
JP2011078009A (ja) * | 2009-10-01 | 2011-04-14 | Olympus Corp | 撮像装置および撮像装置用プログラム |
US8564534B2 (en) * | 2009-10-07 | 2013-10-22 | Microsoft Corporation | Human tracking system |
US8867820B2 (en) * | 2009-10-07 | 2014-10-21 | Microsoft Corporation | Systems and methods for removing a background of an image |
GB2474536B (en) | 2009-10-13 | 2011-11-02 | Pointgrab Ltd | Computer vision gesture based control of a device |
US20110150271A1 (en) * | 2009-12-18 | 2011-06-23 | Microsoft Corporation | Motion detection using depth images |
JP2011243031A (ja) * | 2010-05-19 | 2011-12-01 | Canon Inc | ジェスチャ認識装置及びジェスチャ認識方法 |
JP2012238293A (ja) * | 2011-04-28 | 2012-12-06 | Nextedge Technology Inc | 入力装置 |
US9111351B2 (en) * | 2011-12-15 | 2015-08-18 | Sony Corporation | Minimizing drift using depth camera images |
-
2013
- 2013-08-21 CN CN201310365452.5A patent/CN104424649B/zh not_active Expired - Fee Related
-
2014
- 2014-08-05 JP JP2014159203A patent/JP6424510B2/ja not_active Expired - Fee Related
- 2014-08-18 US US14/461,558 patent/US9552514B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
CN104424649A (zh) | 2015-03-18 |
US9552514B2 (en) | 2017-01-24 |
JP6424510B2 (ja) | 2018-11-21 |
US20150055828A1 (en) | 2015-02-26 |
JP2015041381A (ja) | 2015-03-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104424649B (zh) | 检测运动物体的方法和系统 | |
US10540772B2 (en) | Feature trackability ranking, systems and methods | |
TWI708210B (zh) | 三維模型重建方法、電子裝置及非暫態電腦可讀取記錄媒體 | |
JP6525453B2 (ja) | オブジェクト位置推定システム、及びそのプログラム | |
EP3016071B1 (en) | Estimating device and estimation method | |
Peng et al. | Robust multiple cameras pedestrian detection with multi-view Bayesian network | |
US9672634B2 (en) | System and a method for tracking objects | |
EP2597597A2 (en) | Apparatus and method for calculating three dimensional (3D) positions of feature points | |
CN104246793A (zh) | 移动设备的三维脸部识别 | |
US20150161435A1 (en) | Frontal face detection apparatus and method using facial pose | |
WO2016133697A1 (en) | Projection transformations for depth estimation | |
JP2014235743A (ja) | 深度画像に基づく手の位置確定方法と設備 | |
Liu et al. | Accelerating vanishing point-based line sampling scheme for real-time people localization | |
EP3051492B1 (en) | Method and apparatus for determining disparity | |
CN109636828A (zh) | 基于视频图像的物体跟踪方法及装置 | |
Jung et al. | Object Detection and Tracking‐Based Camera Calibration for Normalized Human Height Estimation | |
KR102295183B1 (ko) | Cctv 프로젝션 모델을 이용한 cctv 영상의 객체 추적 방법 | |
CN110060278A (zh) | 基于背景减法的运动目标的检测方法及装置 | |
CN112233139A (zh) | 用于在3d数据重建过程中检测运动的系统和方法 | |
US20200041262A1 (en) | Method for performing calibration by using measured data without assumed calibration model and three-dimensional scanner calibration system for performing same | |
JP2009301242A (ja) | 頭部候補抽出方法、頭部候補抽出装置、頭部候補抽出プログラムおよびそのプログラムを記録した記録媒体 | |
JP4836065B2 (ja) | エッジトラッキング方法及びそのコンピュータプログラム | |
Van Crombrugge et al. | People tracking with range cameras using density maps and 2D blob splitting | |
CN117784162B (zh) | 目标标注数据获取方法、目标跟踪方法、智能设备及介质 | |
US11954924B2 (en) | System and method for determining information about objects using multiple sensors |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20170926 Termination date: 20210821 |
|
CF01 | Termination of patent right due to non-payment of annual fee |