图像处理方法、装置、介质和电子设备与流程

文档序号:16885981发布日期:2019-02-15 22:38阅读:138来源:国知局
图像处理方法、装置、介质和电子设备与流程

本发明涉及通信及计算机技术领域,更具体地,本发明涉及一种图像处理方法、图像处理装置、计算机可读介质和电子设备。



背景技术:

本部分旨在为权利要求书中陈述的本发明提供背景或上下文。此处的描述不因为包括在本部分中就承认是现有技术。

随着科学技术的发展,界面交互技术大大提高了人们生活的便利性,并且丰富了人们的娱乐生活。其中,显示屏的触摸交互,例如,智能手机、平板电脑等触控设备带有的触摸界面交互给人们的生活带来了无数便利,改变了人们的生活方式。而交互投影技术作为一种更新潮的界面交互方式也被人们进行了探索与应用。

交互投影技术的使用场景中,用户通过肢体与投影中的画面实现互动。其中,在交互场景中如何识别用户的操作目的是交互投影技术需要解决的问题。

现有技术提供的一种方法中,采用基于红(r)、绿(g)、蓝(b)视频流进行背景建模,进一步根据背景获取前景,从而获取在交互场景中的肢体动作。现有技术提供的另一种方法中,采用基于深度图进行背景建模,并基于像素对背景进行更新。



技术实现要素:

但是,采用基于红(r)、绿(g)、蓝(b)视频流进行背景建模的方法中,受环境光照的影响较大,可能导致前景颜色和背景颜色很难进行区分。因此,此种技术方案的鲁棒性有待提高。基于像素对背景进行更新的方法中,在交互场景中出现用户肢体与投影物体重叠(例如:用户用手指点击投影中的物体图像)时,此种技术方案无法进行有效识别用户的操作目的。因而此种技术方案的识别准确性有待提高。

为此,非常需要一种改进的图像处理方法,以提高图像处理方法的鲁棒性,还可以提高图像识别的准确性。

在本上下文中,本发明的实施方式期望提供一种图像处理方法、图像处理装置、计算机可读介质和电子设备。

在本发明实施方式的第一方面中,提供了一种图像处理方法,包括:

获取深度图中的一个或多个轮廓;

识别所述轮廓的类型和所述轮廓的运动状态;

根据所述轮廓的类型和所述轮廓的运动状态确定出所述深度图的目标前景。

在本发明的一些实施例中,根据所述轮廓在所述深度图中的位置确定所述轮廓的类型。

在本发明的一些实施例中,根据所述轮廓在所述深度图中的位置确定所述轮廓的类型,包括:

若所述轮廓距离所述深度图边缘的最小距离大于第一阈值,则确定所述轮廓的类型为物体轮廓;

若所述轮廓距离所述深度图边缘的最小距离小于或等于所述第一阈值,则根据在获取所述深度图之后获取的s帧深度图中是否均包含所述轮廓确定所述轮廓的类型,s为正整数。

在本发明的一些实施例中,根据所述轮廓在所述深度图中的位置确定所述轮廓的类型,包括:

若所述轮廓距离所述深度图边缘的最小距离小于或等于所述第一阈值,则进一步判断:

若在获取所述深度图之后获取的s帧深度图中均包含所述轮廓,则确定所述轮廓的类型为物体轮廓;

若在获取所述深度图之后获取的s帧深度图中未均包含所述轮廓,则确定所述轮廓的类型为人体轮廓。

在本发明的一些实施例中,在识别出所述轮廓的类型为物体轮廓的情况下,所述方法还包括:

通过将所述物体轮廓与预先设置的静态物体轮廓集合进行比对确定出所述物体轮廓的运动状态。

在本发明的一些实施例中,通过将所述物体轮廓与预先设置的静态物体轮廓集合进行比对确定出所述物体轮廓的运动状态,包括:

对于所述预先设置的静态物体轮廓集合中的任一待比对轮廓:

分别获取所述待比对轮廓的第一外接矩形和所述物体轮廓的第二外接矩形,并确定所述第一外接矩形和所述第二外接矩形的重叠区域;

分别获取所述重叠区域面积和所述第一外接矩形面积的第一比值,以及所述重叠区域面积和所述第二外接矩形面积的第二比值;

若所述第一比值和所述第二比值均大于第二阈值,则确定所述物体轮廓的运动状态为静止;

若所述第二比值小于或等于所述第二阈值,则确定所述物体轮廓的运动状态为移动;

若所述第二比值大于所述第二阈值,且所述第一比值小于或等于所述第二阈值,则根据所述物体轮廓在所述深度图中的位置确定所述物体轮廓的运动状态。

在本发明的一些实施例中,根据所述物体轮廓在所述深度图中的位置确定所述物体轮廓的运动状态,包括:

若所述轮廓距离所述深度图边缘的最小距离大于第一阈值,则确定所述物体轮廓的运动状态为移动;

若所述待比对轮廓距离所述深度图边缘的最小距离小于或等于所述第一阈值,则根据所述待比对轮廓是否完全包含所述物体轮廓确定所述物体轮廓的运动状态。

在本发明的一些实施例中,根据所述待比对轮廓是否完全包含所述物体轮廓确定所述物体轮廓的运动状态,包括:

判断所述待比对轮廓是否完全包含所述物体轮廓;

若所述待比对轮廓完全包含所述物体轮廓,则确定所述物体轮廓的运动状态为静止;

若所述待比对轮廓未完全包含所述物体轮廓,则确定所述物体轮廓的运动状态为移动。

在本发明的一些实施例中,判断所述待比对轮廓是否完全包含所述物体轮廓,包括:

将所述待比对轮廓外扩t个像素生成第一图像掩膜,其中,t为两个轮廓之间的容错度,t为正整数;

通过判断所述物体轮廓的像素点是否全部落入所述第一图像掩膜内,来判断所述待比对轮廓是否完全包含所述物体轮廓;

其中,所述物体轮廓的像素点全部落入所述第一图像掩膜内,则所述待比对轮廓完全包含所述物体轮廓;所述物体轮廓的像素点未全部落入所述第一图像掩膜内,则所述待比对轮廓未完全包含所述物体轮廓。

在本发明的一些实施例中,根据所述轮廓的类型和所述轮廓的运动状态确定出所述深度图的目标前景,包括:

在识别出所述轮廓的类型为物体轮廓的情况下,若所述物体轮廓的运动状态为静止,则获取所述深度图中类型为人体轮廓的轮廓作为所述深度图的目标前景;

在识别出所述轮廓的类型为物体轮廓的情况下,若所述物体轮廓的运动状态为移动,则获取所述深度图中类型为物体轮廓和人体轮廓的轮廓作为所述深度图的目标前景。

在本发明的一些实施例中,获取深度图中的一个或多个轮廓,包括:

获取所述深度图并将所述深度图与预设的第一背景作差得到第一前景;

将所述第一前景进行二值化处理得到所述一个或多个轮廓。

在本发明的一些实施例中,根据所述轮廓的类型和所述轮廓的运动状态确定出所述深度图的目标前景,包括:

在识别出所述轮廓的类型为物体轮廓的情况下,利用所述物体轮廓生成第二图像掩膜;

在所述物体轮廓的运动状态为移动的情况下,在所述第一背景中获取所述第二图像掩膜对应的图像,并将所述图像更新至第二背景中;

根据所述第二背景和所述深度图确定目标前景。

在本发明的一些实施例中,根据所述轮廓的类型和所述轮廓的运动状态确定出所述深度图的目标前景,包括:

在识别出所述轮廓的类型为物体轮廓的情况下,利用所述物体轮廓生成第三图像掩膜;

在所述物体轮廓的运动状态为静止的情况下,在所述深度图中获取所述第三图像掩膜对应的图像,并将所述图像更新至第二背景中;

根据所述第二背景和所述深度图确定目标前景。

在本发明实施方式的第二方面中,提供了一种图像处理装置,包括:

轮廓获取模块,用于获取深度图中的一个或多个轮廓;

识别模块,用于识别所述轮廓的类型和所述轮廓的运动状态;

目标前景获取模块,用于根据所述轮廓的类型和所述轮廓的运动状态确定出所述深度图的目标前景。

在本发明实施方式的第三方面中,提供了一种计算机可读介质,其上存储有计算机程序,所述程序被处理器执行时实现如上述第一方面中所述的图像处理方法。

在本发明实施方式的第四方面中,提供了一种电子设备,包括:处理器和存储器,所述存储器存储有可执行指令,所述处理器用于调用所述存储器存储的可执行指令执行如上述第一方面中所述的图像处理方法。

根据本发明提供的实施方式中,获取深度图以及深度图中的轮廓,进一步根据所述轮廓的类型和所述轮廓的运动状态确定出所述深度图的目标前景。使用深度图进行图像处理的方式,避免了rgb视频流中彩色图像引起的图像处理鲁棒性低的问题。同时,使用基于轮廓的图像处理方式替代了基于像素对背景进行更新,能够提高图像识别准确性。从而,用户通过肢体与投影中的画面实现互动时,实现准确识别用户的操作目的的技术效果,为用户带来了更好的交互体验。

附图说明

通过参考附图阅读下文的详细描述,本发明示例性实施方式的上述以及其他目的、特征和优点将变得易于理解。在附图中,以示例性而非限制性的方式示出了本发明的若干实施方式,其中:

图1为根据本发明一些实施例的应用场景的示意图;

图2为根据本发明实施例的图像处理方法的流程示意图;

图3为根据本发明实施例的深度图中轮廓的获取方法的流程示意图;

图4为根据本发明实施例的根据轮廓在深度图中的位置对轮廓的类型进行识别的方法的流程示意图;

图5为根据本发明另一实施例的根据轮廓在深度图中的位置对轮廓的类型进行识别的方法的流程示意图;

图6为根据本发明实施例的轮廓的运动状态的识别方法的流程示意图;

图7为根据本发明另一实施例的轮廓的运动状态的识别方法的流程示意图;

图8为根据本发明再一实施例的轮廓的运动状态的识别方法的流程示意图;

图9为根据本发明实施例的判断待比对轮廓是否完全包含物体轮廓的方法的流程示意图;

图10为根据本发明实施例的目标前景的获取方法的流程示意图;

图11为根据本发明另一实施例的目标前景的获取方法的流程示意图;

图12为根据本发明又一实施例的目标前景的获取方法的流程示意图;

图13为根据本发明实施例的图像处理装置的结构示意图;

图14为根据本发明的示例实施例的计算机可读介质的示意图;以及,

图15示意性地示出了根据发明的示例实施例的电子设备的结构框图。

在附图中,相同或对应的标号表示相同或对应的部分。

具体实施方式

下面将参考若干示例性实施方式来描述本发明的原理和精神。应当理解,给出这些实施方式仅仅是为了使本领域技术人员能够更好地理解进而实现本发明,而并非以任何方式限制本发明的范围。相反,提供这些实施方式是为了使本发明更加透彻和完整,并且能够将本发明的范围完整地传达给本领域的技术人员。

本领域技术人员知道,本发明的实施方式可以实现为一种系统、装置、设备或计算机程序产品。因此,本发明可以具体实现为以下形式,即:完全的硬件、完全的软件(包括固件、驻留软件、微代码等),或者硬件和软件结合的形式。

根据本发明的实施方式,提出了一种图像处理方法、图像处理装置、计算机可读介质和电子设备。

在本发明中,需要理解的是,所涉及的“深度图”为根据交互投影场景中产生的图像确定的。示例性的获取深度图的方式包括但不限于以下:基于结构光的深度图、基于光的飞行时间的深度图以及基于多目视觉的深度图。

此外,附图中的任何元素数量均用于示例而非限制,以及任何命名都仅用于区分,而不具有任何限制含义。

下面参考本发明的若干代表性实施方式,详细阐释本发明的原理和精神。

发明概述

本发明人发现,采用基于红(r)、绿(g)、蓝(b)视频流进行背景建模的方法中,受环境光照的影响较大,可能导致前景颜色和背景颜色很难进行区分。因此,此种技术方案的鲁棒性有待提高。基于像素对背景进行更新的方法中,在交互场景中出现用户肢体与投影物体重叠(例如:用户用手指点击投影中的物体图像)时,此种技术方案无法进行有效识别用户的操作目的。因而此种技术方案的识别准确性有待提高。

基于上述内容,本发明的基本思想在于,获取深度图以及深度图中的轮廓,进一步根据所述轮廓的类型是物体轮廓还是人体轮廓,当轮廓的类型为物体轮廓时,确定物体轮廓的运动状态。进一步地,对于人体轮廓来说,由于本技术方案是为了识别用户的操作目的,而在人机交互场景中可以通过人体轮廓来对用户的操作目的进行识别,也就是说,无论人体轮廓的运动状态如何,目标前景中包含人体轮廓,因此无需进一步判断人体轮廓的运动状态是静止或移动;而对于物体轮廓来说,物体轮廓的运动状态是静止或移动时对应不同的人机交互场景,则根据物体轮廓不同的运动状态准确确定不同人机交互场景下的目标前景(即用于确定用户操作目的的图像),也就是说,在不同的人机交互场景下,目标前景中可能包含物体轮廓,也可能不包含物体轮廓。其中,使用深度图进行图像处理的方式,避免了rgb视频流中彩色图像引起的图像处理鲁棒性低的问题。同时,使用基于轮廓的图像处理方式替代了基于像素对背景进行更新,能够提高图像识别准确性。从而,用户通过肢体与投影中的画面实现互动时,实现准确识别用户的操作目的的技术效果,为用户带来了更好的交互体验。

在介绍了本发明的基本原理之后,下面具体介绍本发明的各种非限制性实施方式。

应用场景总览

需要注意的是,下述应用场景仅是为了便于理解本发明的精神和原理而示出,本发明的实施方式在此方面不受任何限制。相反,本发明的实施方式可以应用于适用的任何场景。

示例性的,本发明适用于“交互投影”应用场景中,首先参考图1,图1为根据本发明的一些实施例的示例性应用场景的示意图。例如,图1示出了用户通过肢体(人手/人体)11点击投影界面12上的第二物体轮廓14的场景。本发明实施例提供的图像处理方法即用于处理如图1所示图像的深度图。其中,第一物体轮廓13代表投影界面12上的另一物体轮廓。

在物体静止的场景中,即当用户通过肢体(人手/人体)11,将物体13、物体14逐个放入投影界面12范围内后,继而用户再次将肢体(人手/人体)11伸入投影界面12时,可以完成诸如物体表面点击、空中手势等复杂的交互任务。而对于这些任务,物体轮廓均处于静止状态,需仅获取用户的肢体(人手/人体)11轮廓来识别用户的操作目的。

在物体移动的场景中,即当用户通过肢体(人手/人体)11拖动物体移动的场景中,则需获取用户“肢体(人手/人体)11轮廓+物体轮廓”来识别用户的操作目的。当然,当用户肢体(人手/人体)11放开物体后,即物体恢复静止后,则回到上一个场景中,需仅获取用户的肢体(人手/人体)11轮廓来识别用户的操作目的。

可见,在交互投影场景中,准确识别用户的操作目的,不仅与轮廓的类型有关(物体轮廓、人体轮廓),还与轮廓的运动状态有关(移动、静止)。因此,本发明提供的技术方案中,对于每张深度图,首先获取其轮廓,并进一步识别轮廓的类型以及轮廓的运动状态,进一步根据不同的识别结果获取不同的目标前景。其中,目标前景用于识别用户的操作目的。

示例性方法

下面结合上述的应用场景,参考图2至图12来描述根据本发明示例性实施方式的图像处理方法。

图2为根据本发明实施例的图像处理方法的流程示意图,参考图2,该方法包括步骤s21-步骤s23。

在步骤s21中,获取深度图中的一个或多个轮廓。

在示例性的实施例中,以“交互投影”为例。其中,上述深度图为例如图1所示的人机交互图形,上述轮廓可以为图1中第一物体轮廓13、第二物体轮廓14、人体轮廓11。

在示例性的实施例中,图3为根据本发明实施例的深度图中轮廓的获取方法的流程示意图。参考图3,该方法包括:

步骤s31,获取所述深度图并将所述深度图与预设的第一背景作差得到第一前景;以及,步骤s32,将所述第一前景进行二值化处理得到所述一个或多个轮廓。

示例性的,步骤s31的具体实现方式中,用于获取深度图的可以是深度摄像头。深度图可以是整个交互投影过程中的深度摄像头获取到的任一图像。以当前深度图为例,步骤s31中的第一背景可以是在投影界面初始化时得到的界面背景。为了避免在投影界面初始化时界面中有物体或人手存在,本实施例中的第一背景也可以是通过当前深度图之前的深度图像迭代并把物体或人手信息剔除后的界面背景。其中,具体的迭代过程包括:对于深度摄像头获取的第一张深度图,可以直接将第一张深度图作为第一背景,其中,第一背景中坐标为(x,y)处像素的深度值为并通过在后图像对第一背景进行更新,包括:对于深度摄像头获取的第二张深度图,获取第二张深度图中坐标为(x,y)处像素的深度值为depthxy,通过公式一对第一背景各个像素的深度值进行更新。

其中,α用于控制对第一背景的迭代速率,α范围是(0,1],且α取值越接近0时,对第一背景的迭代速率越慢;α取值越接近1时,对第一背景的迭代速率越快。示例性的α取值为0.9。β范围是[0,depthxy的最大值],β取值一般取接近0,以避免对第一背景的迭代过程中获取到超过第一背景中最大深度的噪声。

其中,通过第二张深度图迭代后的第一背景可以用于与第二张深度图像作差得到第二张深度图对应的第一前景。通过第二张深度图迭代后的第一背景还用于第三张深度图进行上述迭代过程,得到通过第三张深度图迭代后的第一背景;而通过第三张深度图迭代后的第一背景除了用于与第三张深度图像作差得到第三张深度图对应的第一前景,还用于第四张深度图进行上述迭代过程,得到通过第四张深度图迭代后的第一背景;以此类推可见,从深度摄像头获取的第二张深度图开始,每张深度图均需进行上述迭代过程并得到第一背景,迭代过程用于将可能出现在投影界面中有物体或人手剔除;而每张深度图对应的第一背景除了用于与本张深度图作差得到第一前景外,还用于下一张深度图的迭代过程。

从而,上述通过第一张深度图之后的每一张深度图对第一背景进行不断迭代的目的在于:对于当前深度图来说,获取每个像素处最大的深度值作为第一背景,即保证第一背景为不包含物体轮廓/人体轮廓的“桌面”图像。进而,避免获取第一张深度图时,有物体或人体在深度摄像头视野范围内造成的物体轮廓/人体轮廓出现在第一背景中。以进一步保证当前深度图中的物体轮廓/人体轮廓均出现在第一前景中,以更进一步准确地获取当前深度图中的各个轮廓,以提高图像识别的准确性。

进一步地,对于当前深度图来说,根据本身深度值将第一背景进行上述迭代后,再和更新后的第一背景作差,得到当前深度图对应的第一前景。当然,当前深度图也可以不参与迭代过程,直接与预设的第一背景作差,得到该第一前景。

仍根据上述实施例,步骤s32的具体实现方式中,通过公式二确定以上实施例中第二张及之后深度图中的轮廓。

其中,为二值化后的第一前景中的像素值,δ为根据实际需求设定的数值。进行上述二值化后,可以获得当前深度图中包含的物体轮廓/人体轮廓。示例性的,在二值化后的第一前景中,获取轮廓尺寸(例如轮廓包含的面积等)大于预设阈值的轮廓用于步骤s22中轮廓类型以及轮廓的运动状态的识别,从而提高识别准确性。

继续参考图2,在步骤s21中获取当前深度图中的各个轮廓之后,在步骤s22中,识别所述轮廓的类型和所述轮廓的运动状态。以下通过图4、图5所示实施例提供的技术方法对轮廓的类型进行识别,以及通过图6-图9所示实施例提供的技术方法对轮廓的运动状态进行识别。

在示例性的实施例中,根据轮廓在深度图中的位置确定该轮廓的类型。参考图1,由于用户参与交互投影时,须通过肢体(人手/人体)11在投影界面12范围内操作。在此过程中,肢体(人手/人体)11一定会经过/处于投影界面12的边缘位置。因此,可以通过轮廓在深度图中的位置判断轮廓的类型。

在示例性的实施例中,图4为根据本发明实施例的根据轮廓在深度图中的位置对轮廓的类型进行识别的方法的流程示意图。且图4用于解释步骤s22中的识别轮廓的类型的具体实现方式。

参考图4,该方法,包括步骤s41-步骤s43。

在步骤s41中,判断所述轮廓距离所述深度图边缘的最小距离是否大于第一阈值;若轮廓距离深度图边缘的最小距离大于第一阈值,则在步骤s42中,确定所述轮廓的类型为物体轮廓。

其中,上述第一阈值是根据实际需要设定的正数值。

图4所示实施例提供的技术方案中,由于肢体(人手/人体)11一定会经过/处于投影界面12的边缘位置,因此可以通过步骤s41判断轮廓是否经过/处于深度图的边缘位置来判断此轮廓是否为人体。

若轮廓距离深度图边缘的最小距离大于第一阈值,即可以判断出此轮廓没有经过/处于深度图的边缘位置。对于没有经过/处于深度图的边缘位置的轮廓,执行步骤s42:确定所述轮廓的类型为物体轮廓。

若轮廓距离深度图边缘的最小距离小于或等于第一阈值,则在步骤s43中,根据在获取所述深度图之后获取的s帧深度图中是否均包含所述轮廓确定所述轮廓的类型,s为正整数。也就是说,对于经过/处于深度图的边缘位置的轮廓,还需根据在获取深度图之后获取的s帧深度图中是否均包含轮廓确定轮廓的类型,s为正整数。

具体的,当待判定的轮廓a距离深度图边缘的最小距离小于或等于第一阈值时,则可以确定轮廓a经过/处于投影界面12的边缘位置。然而,经过/处于投影界面12的边缘位置的轮廓a有可能是人体轮廓,还有可能是位于深度图边缘的物体轮廓。因此,进一步地,对于经过/处于投影界面12的边缘位置的轮廓a,本实施例提供判断轮廓a是否运动来进一步判断其类型为人体轮廓,还是物体轮廓。图5为根据本发明另一实施例的根据轮廓在深度图中的位置对轮廓的类型进行识别的方法的流程示意图。

其中,图5用于解释步骤s43的具体实现方式。参考图5,该方法,包括步骤s51-步骤s53。

在步骤s51中,判断在获取所述深度图之后获取的s帧深度图中是否均包含所述轮廓。

示例性的,可以通过步骤s51判断经过/处于投影界面12的边缘位置的轮廓a是否为动态的。具体地,假如s取值为3,而轮廓a出现在深度摄像头获取到的第五张深度图中,则通过判断第六张至第八张深度图中是否均包含轮廓a来判断轮廓a为动态的。包括以下两种情况:

一种情况下,第六张至第八张深度图中均包含轮廓a。此种情况说明,上述轮廓a并不是动态的,从而可以判定经过/处于投影界面12的边缘位置的轮廓a是物体轮廓。进而在步骤s52中,确定所述轮廓的类型为物体轮廓。

另一种情况下,第六张至第八张深度图中未均包含轮廓a,例如,第六张深度图中包含轮廓a,而第七张、第八张深度图中没有包含轮廓a。此种情况说明,上述轮廓a是动态的,从而可以判定经过/处于投影界面12的边缘位置的轮廓a是人体轮廓。进而在步骤s53中,确定所述轮廓的类型为人体轮廓。

经过图4、图5所示实施例提供的技术方案可以对深度图中轮廓的类型进行识别,在识别出轮廓的类型为物体轮廓的情况下,由于物体轮廓的运动状态是静止或移动时对应不同的人机交互场景,因此本发明提供的实施例还包括以下步骤:对物体轮廓的运动状态进行识别。

在示例性的实施例中,图6为根据本发明实施例的轮廓的运动状态的识别方法的流程示意图。具体地,通过将物体轮廓与预先设置的静态物体轮廓集合进行比对确定出物体轮廓的运动状态。其中,对于在图4、图5所示实施例提供的技术方案中识别结果为物体类型的轮廓,将其加入静态物体轮廓集合中,因此,静态物体轮廓集合中的轮廓为动态更新的。

其中,图6用于解释步骤s22中的识别轮廓的运动状态的具体实现方式。该方法各个步骤为针对预先设置的静态物体轮廓集合中的任一待比对轮廓实施的,具体是将上述待比对轮廓的外接矩形与图4/图5所示实施例中确定的物体轮廓的外接矩形进行比对,得到上述两个外接矩形之间的相对位置关系,以此来识别出上述物体轮廓的运动状态。即以静态物体轮廓集合中的待比对轮廓(静态)为参照对象,再根据上述物体轮廓与该参照对象重合面积与待比对轮廓比例的大小,以及物体轮廓与参照对象重合面积与物体轮廓比例的大小,确定出上述物体轮廓的运动状态。

参考图6,该方法,包括步骤s61-步骤s63。

在步骤s61中,分别获取所述待比对轮廓的第一外接矩形(boundingbox)和所述物体轮廓的第二外接矩形,并确定所述第一外接矩形和所述第二外接矩形的重叠区域。

示例性的,对于物体轮廓a,包括i个轮廓点:a1(x,y),a2(x,y),…,ai(x,y),公式三示出了物体轮廓a的第一外接矩形boxa的计算方法。

另外,对于静态物体轮廓集合中的任一待比对轮廓d,包括j个轮廓点:d1(x,y),d2(x,y),…,di(x,y),公式四示出了待比对轮廓d的第二外接矩形boxd的计算方法。

在步骤s62中,分别获取所述重叠区域面积和所述第一外接矩形面积的第一比值,以及所述重叠区域面积和所述第二外接矩形面积的第二比值。

示例性的,根据公式五计算第一比值αa,以及计算第二比值αd。

在步骤s63中,判断所述第二比值是否小于或等于所述第二阈值。其中,所述第二阈值为根据实际情况确定的正数值。

若上述第二比值小于或等于上述第二阈值,也就是,(物体轮廓与参照对象的)重合面积与上述待比对轮廓面积的比例的小于预先设置的第二阈值,则执行步骤s64:确定所述物体轮廓的运动状态为移动。

若上述第二比值大于上述第二阈值,则进一部执行步骤s65:判断所述第一比值是否大于所述第二阈值。

若上述第二比值大于上述第二阈值,且上述第一比值大于上述第二阈值,也就是,(物体轮廓与参照对象的)重合面积与上述物体轮廓面积的比例、(待比对轮廓与参照对象的)重合面积与上述待比对轮廓面积的比例,均大于预先设置的第二阈值,则执行步骤s66:确定所述物体轮廓的运动状态为静止。

若上述第二比值大于上述第二阈值,且上述第一比值小于或等于上述第二阈值,也就是,(物体轮廓与参照对象的)重合面积与上述待比对轮廓面积的比例大于预先设置的第二阈值、且(待比对轮廓与参照对象的)重合面积与上述物体轮廓面积的比例小于或等于预先设置的第二阈值,则执行步骤s67:根据所述物体轮廓在所述深度图中的位置确定所述物体轮廓的运动状态。

在示例性的实施例中,图7为根据本发明另一实施例的轮廓的运动状态的识别方法的流程示意图。具体地,图7所示实施例提供的技术方案用于解释步骤s67,提供了一种根据上述物体轮廓在上述深度图中的位置确定上述物体轮廓的运动状态的方法。

参考图7,该方法包括步骤s71-步骤s73。

在步骤s71中,判断所述物体轮廓距离所述深度图边缘的最小距离是否大于第一阈值。其中,步骤s71的判断结果包括以下两种情况:

一种情况下,上述物体轮廓距离上述深度图边缘的最小距离大于第一阈值,说明物体轮廓没有处于深度图的边缘位置。在步骤s72中,确定所述物体轮廓的运动状态为移动。同前所述,第一阈值是根据实际需要设定的正数值。

另一种情况下,上述物体轮廓距离上述深度图边缘的最小距离小于或等于第一阈值,说明物体轮廓处于深度图的边缘位置。即有可能出现以下情况:上述待比对轮廓为手和物体的轮廓,将上述物体轮廓进行了遮挡。则须进一步地在步骤s73中,根据所述待比对轮廓是否完全包含所述物体轮廓确定所述物体轮廓的运动状态。

在示例性的实施例中,图8为根据本发明再一实施例的轮廓的运动状态的识别方法的流程示意图。具体地,图8所示实施例提供的技术方案用于解释步骤s73,提供了一种根据待比对轮廓是否完全包含物体轮廓确定此物体轮廓的运动状态的方法。

参考图8,该方法,包括步骤s81-步骤s83。

在步骤s81中,判断所述待比对轮廓是否完全包含所述物体轮廓。

示例性的,图9为根据本发明实施例的判断待比对轮廓是否完全包含物体轮廓方法的流程示意图。具体地,图9所示实施例提供的技术方案用于解释步骤s81。参考图9,该方法包括:

步骤s91,将所述待比对轮廓外扩t个像素生成第一图像掩膜,其中,t为两个轮廓之间的容错度,t为正整数;

步骤s92,判断所述物体轮廓的像素点是否全部落入所述第一图像掩膜内;

步骤s93,若所述物体轮廓的像素点全部落入所述第一图像掩膜内,则所述待比对轮廓完全包含所述物体轮廓;以及,

步骤s94,若所述物体轮廓的像素点未全部落入所述第一图像掩膜内,则所述待比对轮廓未完全包含所述物体轮廓。

继续参考图8,一种情况下:上述待比对轮廓完全包含该物体轮廓。即该物体轮廓的像素点全部落入上述第一图像掩膜内,则出现以下情况:上述待比对轮廓为“手+物体”的组合轮廓,且该组合轮廓遮挡了上述物体轮廓。则执行步骤s82:确定所述物体轮廓的运动状态为静止。

另一种情况下:上述待比对轮廓未完全包含该物体轮廓。即该物体轮廓的像素点未全部落入上述第一图像掩膜内,则执行步骤s83中,确定所述物体轮廓的运动状态为移动。

经过图6-图9所示实施例提供的技术方案完成了对物体轮廓的运动状态的识别。

继续参考图2,在步骤s22中对轮廓的类型进行识别,以及对物体轮廓的运动状态进行识别之后,在步骤s23中,根据所述轮廓的类型和所述轮廓的运动状态确定出所述深度图的目标前景。以下结合图10、图11、图12对步骤s23的具体实现进行解释说明。

在示例性的实施例中,图10为根据本发明实施例的目标前景的获取方法的流程示意图。参考图10,该方法包括:

在步骤s101中,识别出所述轮廓的类型为物体轮廓。示例性的,步骤s101的具体实现方式可以参照根据上述图4、图5对应的实施例。

步骤s102,判断所述物体轮廓的运动状态是静止还是移动。示例性的,步骤s102的具体实现方式可以参照根据上述图6-图9对应的实施例。

判断结果为上述物体轮廓的运动状态为静止时,执行步骤s103:获取所述深度图中类型为人体轮廓的轮廓作为所述深度图的目标前景。

判断结果为上述物体轮廓的运动状态为移动时,执行步骤s104:获取所述深度图中类型为物体轮廓和人体轮廓的轮廓作为所述深度图的目标前景。

在示例性的实施例中,图11为根据本发明另一实施例的目标前景的获取方法的流程示意图。参考图11,该方法包括:

步骤s111,在识别出所述轮廓的类型为物体轮廓的情况下,利用所述物体轮廓生成第二图像掩膜;步骤s112,在所述物体轮廓的运动状态为移动的情况下,在所述第一背景中获取所述第二图像掩膜对应的图像,并将所述图像更新至第二背景中;以及,步骤s113,根据所述第二背景和所述深度图确定目标前景。

示例性的,第二图像掩膜中在物体轮廓以及物体轮廓内部的像素值为255,其余位置的像素值为0。图像掩膜用以辅助图像之间的部分区块的拷贝。其中,对于待拷贝图像来说,在待拷贝图像中,图像掩膜像素值为255的区块对应于拷贝区块,图像掩膜像素值为0的区块对应于忽略的区块(即不拷贝区块)。并且,为了提高图像处理效率,生产掩膜时可以利用物体轮廓的外界矩形(boundingbox)完成图像中区块的拷贝。

同前所述,对于当前深度图来说,获取每个像素处最大的深度值作为第一背景,从而避免摄像装置获取第一张深度图时,有物体或人体在深度摄像头视野范围内造成的物体轮廓/人体轮廓出现在第一背景中。可见,当前深度图对应的第一背景为不包含物体轮廓/人体轮廓的“桌面”图像。

示例性的,物体轮廓的运动状态为移动的场景中,例如,参考图1,当用户通过肢体(人手/人体)11拖动物体移动的场景中,则需获取用户的肢体(人手/人体)11“轮廓+物体轮廓”来识别用户的操作目的。那么,为了仅获取“人体轮廓+物体轮廓”作为目标前景的具体实现方法可以是:

①在上述第一背景中获取上述第二图像掩膜对应的图像。由于第一背景中不包含轮廓,则步骤s112中在上述第一背景中获取上述第二图像掩膜对应的图像时,获取的图像不包括任何轮廓。

②并将①中获取的上述图像更新至第二背景中。由于①中获取的上述图像中不包含任何轮廓,从而更新后的第二背景中也不包括任何轮廓。

③根据上述第二背景和上述深度图确定目标前景。由于第二背景中不包含当前深度图中的物体轮廓,而当前深度图中包含“物体轮廓+人体轮廓”,则可以通过作差的方式,通过第二背景不能将当前深度图中的物体轮廓剔除,从而可以仅获取到当前深度图中的“人体轮廓+物体轮廓”。从而,在物体轮廓的运动状态为移动的场景中,确定了对应的目标前景。例如:人手拖动物体移动的情况下,根据本实施例提供的技术方案可以获取“人体轮廓+物体轮廓”。

在示例性的实施例中,图12为根据本发明又一实施例的目标前景的获取方法的流程示意图。参考图12,该方法包括:

步骤s121,在识别出所述轮廓的类型为物体轮廓的情况下,利用所述物体轮廓生成第三图像掩膜;步骤s122,在所述物体轮廓的运动状态为静止的情况下,在所述深度图中获取所述第三图像掩膜对应的图像,并将所述图像更新至第二背景中;以及,步骤s123,根据所述第二背景和所述深度图确定目标前景。

其中,第三图像掩膜及其具体获取方式,与上述实施例中第二图像掩膜及其具体获取方式相同,在此不再赘述。

示例性的,物体轮廓的运动状态为静止的场景中,例如,参考图1,用户将肢体(人手/人体)11伸入投影界面12时,完成诸如物体表面点击、空中手势等复杂的交互任务。而对于这些任务,由于物体轮廓均处于静止状态,则需仅获取用户的肢体(人手/人体)11轮廓来识别用户的操作目的。那么,为了仅获取“人体轮廓”作为目标前景的具体实现方法可以包括以下几个步骤:

①在上述深度图中获取上述第三图像掩膜对应的图像。由于深度图中包含物体轮廓和人体轮廓,则步骤s122中在上述深度图中获取上述第三图像掩膜对应的图像时,获取的图像包含物体轮廓。

②并将①中获取的上述图像更新至第二背景中。由于①中获取的所述图像中包含物体轮廓,从而更新后的第二背景中也包含物体轮廓。

③根据上述第二背景和上述深度图确定目标前景。由于第二背景中包含当前深度图中的物体轮廓,而当前深度图中包含“物体轮廓+人体轮廓”,则可以通过作差的方式,通过第二背景将当前深度图中的物体轮廓剔除,从而可以仅获取到当前深度图中的人体轮廓。从而,在物体轮廓的运动状态为静止的场景中,确定了对应的目标前景。例如:得到“干净的”手部动作作为目标前景图像。其中,“干净的”图像代表不包含除了手部轮廓外其他轮廓的图像。

可见,无论是根据图11所示实施例提供的技术方案得到的:在物体轮廓移动场景中,“物体轮廓+人体轮廓”的目标前景,还是根据图12所示实施例提供的技术方案得到的:在物体轮廓静止场景中,“人体轮廓”的目标前景,两种目标前景均可以完成诸如物体识别、手势识别、追踪等各种图像处理。

示例性装置

在介绍了本发明示例性实施例的方法之后,接下来,参考图13对本发明示例性实施方式的图像处理装置进行说明。

图13为根据本发明实施例的图像处理装置的结构示意图。参考图13,图像处理装置1300,包括:

轮廓获取模块1301,用于获取深度图中的一个或多个轮廓;

识别模块1302,用于识别所述轮廓的类型和所述轮廓的运动状态;

目标前景获取模块1303,用于根据所述轮廓的类型和所述轮廓的运动状态确定出所述深度图的目标前景。

在示例性的实施例中,识别模块1302包括:类型识别子模块201。

其中,类型识别子模块201用于:根据所述轮廓在所述深度图中的位置确定所述轮廓的类型。

在示例性的实施例中,类型识别子模块201包括:第一识别单元2011和第二识别单元2012。

其中,第一识别单元2011用于:若所述轮廓距离所述深度图边缘的最小距离大于第一阈值,则确定所述轮廓的类型为物体轮廓;以及,第二识别单元2012用于:若所述轮廓距离所述深度图边缘的最小距离小于或等于所述第一阈值,则根据在获取所述深度图之后获取的s帧深度图中是否均包含所述轮廓确定所述轮廓的类型,s为正整数。

在示例性的实施例中,第二识别单元2012包括:物体轮廓识别单元和人体轮廓识别单元。

其中,物体轮廓识别单元用于:若在获取所述深度图之后获取的s帧深度图中均包含所述轮廓,则确定所述轮廓的类型为物体轮廓;以及,人体轮廓识别单元用于:若在获取所述深度图之后获取的s帧深度图中未均包含所述轮廓,则确定所述轮廓的类型为人体轮廓。

在示例性的实施例中,识别模块1302包括:运动状态识别子模块202。

其中,运动状态识别子模块202用于:通过将所述物体轮廓与预先设置的静态物体轮廓集合进行比对确定出所述物体轮廓的运动状态。

在示例性的实施例中,运动状态识别子模块202包括:外接矩形获取单元2021、面积比值获取单元2022、第一确定单元2023、第二确定单元2024以及第三确定单元2025。

其中,对于所述预先设置的静态物体轮廓集合中的任一待比对轮廓:

外接矩形获取单元2021用于:分别获取所述待比对轮廓的第一外接矩形和所述物体轮廓的第二外接矩形,并确定所述第一外接矩形和所述第二外接矩形的重叠区域;

面积比值获取单元2022用于:分别获取所述重叠区域面积和所述第一外接矩形面积的第一比值,以及所述重叠区域面积和所述第二外接矩形面积的第二比值;

第一确定单元2023用于:若所述第一比值和所述第二比值均大于第二阈值,则确定所述物体轮廓的运动状态为静止;

第二确定单元2024用于:若所述第二比值小于或等于所述第二阈值,则确定所述物体轮廓的运动状态为移动;

第三确定单元2025用于:若所述第二比值大于所述第二阈值,且所述第一比值小于或等于所述第二阈值,则根据所述物体轮廓在所述深度图中的位置确定所述物体轮廓的运动状态。

在示例性的实施例中,第三确定单元2025包括:第一确定子单元20251和第二确定子单元20252。

其中,第一确定子单元20251用于:若所述物体轮廓距离所述深度图边缘的最小距离大于第一阈值,则确定所述物体轮廓的运动状态为移动;以及,第二确定子单元20252用于:若所述待比对轮廓距离所述深度图边缘的最小距离小于或等于所述第一阈值,则根据所述待比对轮廓是否完全包含所述物体轮廓确定所述物体轮廓的运动状态。

在示例性的实施例中,第二确定子单元20252具体用于:

判断所述待比对轮廓是否完全包含所述物体轮廓;若所述待比对轮廓完全包含所述物体轮廓,则确定所述物体轮廓的运动状态为静止;以及,若所述待比对轮廓未完全包含所述物体轮廓,则确定所述物体轮廓的运动状态为移动。

在示例性的实施例中,第二确定子单元20252具体还用于:

将所述待比对轮廓外扩t个像素生成第一图像掩膜,其中,t为两个轮廓之间的容错度,t为正整数;以及,通过判断所述物体轮廓的像素点是否全部落入所述第一图像掩膜内,来判断所述待比对轮廓是否完全包含所述物体轮廓;

其中,所述物体轮廓的像素点全部落入所述第一图像掩膜内,则所述待比对轮廓完全包含所述物体轮廓;所述物体轮廓的像素点未全部落入所述第一图像掩膜内,则所述待比对轮廓未完全包含所述物体轮廓。

在示例性的实施例中,目标前景获取模块1303具体用于:

在识别出所述轮廓的类型为物体轮廓的情况下,若所述物体轮廓的运动状态为静止,则获取所述深度图中类型为人体轮廓的轮廓作为所述深度图的目标前景;以及,在识别出所述轮廓的类型为物体轮廓的情况下,若所述物体轮廓的运动状态为移动,则获取所述深度图中类型为物体轮廓和人体轮廓的轮廓作为所述深度图的目标前景。

在示例性的实施例中,轮廓获取模块1301具体用于:

获取所述深度图并将所述深度图与预设的第一背景作差得到第一前景;以及,将所述第一前景进行二值化处理得到所述一个或多个轮廓。

在示例性的实施例中,目标前景获取模块1303具体用于:

在识别出所述轮廓的类型为物体轮廓的情况下,利用所述物体轮廓生成第二图像掩膜;在所述物体轮廓的运动状态为移动的情况下,在所述第一背景中获取所述第二图像掩膜对应的图像,并将所述图像更新至第二背景中;以及,根据所述第二背景和所述深度图确定目标前景。

在示例性的实施例中,目标前景获取模块1303具体用于:

在识别出所述轮廓的类型为物体轮廓的情况下,利用所述物体轮廓生成第三图像掩膜;在所述物体轮廓的运动状态为静止的情况下,在所述深度图中获取所述第三图像掩膜对应的图像,并将所述图像更新至第二背景中;以及,根据所述第二背景和所述深度图确定目标前景。

示例性介质

在介绍了本发明示例性实施例的装置之后,接下来,对本发明示例性实施方式的介质进行说明。

在一些可能的实施方式中,本发明的各个方面还可以实现为一种介质,其上存储有程序代码,当所述程序代码被设备的处理器执行时用于实现本说明书上述“示例性方法”部分中描述的根据本发明各种示例性实施方式的图像处理方法中的步骤。

例如,所述设备的处理器执行所述程序代码时可以实现如图2中所述的步骤s21,获取深度图中的一个或多个轮廓;步骤s22,识别所述轮廓的类型和所述轮廓的运动状态;步骤s23,根据所述轮廓的类型和所述轮廓的运动状态确定出所述深度图的目标前景。

参考图14所示,描述了根据本发明的实施例的用于实现上述数据处理方法的程序产品1400,其可以采用便携式紧凑盘只读存储器(cd-rom)并包括程序代码,并可以在终端设备,例如个人电脑上运行。然而,本发明的程序产品不限于此。

在本发明的一些实施方式中,所述设备的处理器执行所述程序代码时用于实现如图2至图12任一图示的步骤。

需要说明的是:上述的介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以是但不限于:电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。

可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于:电磁信号、光信号或上述的任意合适的组合。可读信号介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。

可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、有线、光缆、rf等,或者上述的任意合适的组合。

可以以一种或多种程序设计语言的任意组合来编写用于执行本发明操作的程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如java、c++等,还包括常规的过程式程序设计语言—诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户电子设备上执行、部分在用户电子设备上部分在远程电子设备上执行、或者完全在远程电子设备或服务器上执行。在涉及远程电子设备的情形中,远程电子设备可以通过任意种类的网络——包括局域网(lan)或广域网(wan)—连接到用户电子设备,或者,可以连接到外部电子设备(例如利用因特网服务提供商来通过因特网连接)。

示例性电子设备

在介绍了本发明示例性实施方式的图像处理方法、图像处理装置、计算机可读介质之后,接下来,介绍根据本发明的另一示例性实施方式的电子设备。

所属技术领域的技术人员能够理解,本发明的各个方面可以实现为系统、方法或程序产品。因此,本发明的各个方面可以具体实现为以下形式,即:完全的硬件实施方式、完全的软件实施方式(包括固件、微代码等),或硬件和软件方面结合的实施方式,这里可以统称为“电路”、“模块”或“系统”。

在一些可能的实施方式中,根据本发明实施方式的电子设备可以至少包括至少一个处理器、以及至少一个存储器。其中,所述存储器存储有程序代码,当所述程序代码被所述处理器执行时,使得所述处理器执行本说明书上述“示例性方法”部分中描述的根据本发明各种示例性实施方式的图像处理方法中的步骤。例如,所述处理器可以执行如图2中所示的步骤s21,获取深度图中的一个或多个轮廓;步骤s22,识别所述轮廓的类型和所述轮廓的运动状态;步骤s23,根据所述轮廓的类型和所述轮廓的运动状态确定出所述深度图的目标前景。

又如,所述处理器也可以执行如图3至图12任一图示的步骤。

下面参照图15来描述根据本发明的示例实施例的电子设备1500。图15所示的电子设备1500仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。

如图15所示,电子设备1500以通用电子设备的形式表现。电子设备1500的组件可以包括但不限于:上述至少一个处理单元1501、上述至少一个存储单元1502、连接不同系统组件(包括存储单元1502和处理单元1501)的总线1503、显示单元1507。

总线1503表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器、外围总线、图形加速端口、处理器或者使用多种总线结构中的任意总线结构的局域总线。

存储单元1502可以包括易失性存储器形式的可读介质,例如随机存取存储器(ram)15021和/或高速缓存存储器15022,还可以进一步包括只读存储器(rom)15023。

存储单元1502还可以包括具有一组(至少一个)程序模块15024的程序/实用工具15025,这样的程序模块15024包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。

电子设备1500也可以与一个或多个外部设备1504(例如键盘、指向设备、蓝牙设备等)通信,还可与一个或者多个使得用户能与电子设备1500交互的设备通信,和/或与使得电子设备1500能与一个或多个其它电子设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(i/o)接口1505进行。并且,电子设备1500还可以通过网络适配器1506与一个或者多个网络(例如局域网(lan),广域网(wan)和/或公共网络,例如因特网)通信。如图所示,网络适配器1506通过总线1503与电子设备1500的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备1500使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、raid系统、磁带驱动器以及数据备份存储系统等。

应当注意,尽管在上文详细描述中提及了数据处理装置的若干单元/模块或子单元/模块,但是这种划分仅仅是示例性的并非强制性的。实际上,根据本发明的实施例,上文描述的两个或更多单元/模块的特征和功能可以在一个单元/模块中具体化。反之,上文描述的一个单元/模块的特征和功能可以进一步划分为由多个单元/模块来具体化。

应当注意,尽管在上文详细描述中提及了图像处理装置的若干单元或子单元,但是这种划分仅仅是示例性的,并非是强制性的。实际上,根据本发明的实施方式,上文描述的两个或更多模块或单元的特征和功能可以在一个模块或单元中具体化。反之,上文描述的一个模块或单元的特征和功能可以进一步划分为由多个模块或单元来具体化。

此外,尽管在附图中以特定顺序描述了本发明方法的操作,但是,这并非要求或者暗示必须按照该特定顺序来执行这些操作,或是必须执行全部所示的操作才能实现期望的结果。附加地或备选地,可以省略某些步骤,将多个步骤合并为一个步骤执行,和/或将一个步骤分解为多个步骤执行。

虽然已经参考若干具体实施方式描述了本发明的精神和原理,但是应该理解,本发明并不限于所发明的具体实施方式,对各方面的划分也不意味着这些方面中的特征不能组合以进行受益,这种划分仅是为了表述的方便。本发明旨在涵盖所附权利要求的精神和范围内所包括的各种修改和等同布置。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1