一种前景检测方法及装置与流程

文档序号:12916361阅读:186来源:国知局
一种前景检测方法及装置与流程

本发明的实施方式涉及图像编码领域,更具体地,本发明的实施方式涉及一种前景检测方法及装置。



背景技术:

前景检测是从目标序列图像中将变化区域从背景图像中提取出来,运动前景对象的有效检测对于对象跟踪、目标分类、行为理解等后期处理至关重要。尤其是对于录像摄影设备相对固定时的手势、体感识别时,前景检测具有更为广泛的应用。

在相关的现有技术中,针对录像摄影设备相对固定的场景,有如下几种较为常见的前景检测方法:1、使用景深摄像头进行检测。例如微软的kinect和华硕的xtionpro系列产品均使用的该种方法。其利用红外发射器、红外接收器与rgb摄像头,使拍摄的图像除了rgb信息外,还可以直接获取景深信息,并根据景深信息进一步计算出前景与背景。2、使用双目摄像头进行检测。例如使用两个rgb摄像头,基于基本的三角原理,可以获知拍摄点距离双目摄像头所在平面的景深信息,从而进一步计算前景与背景。

但是,本发明的发明人在研究中发现:上述两种方法对于背景与前景具有相似景深的情况下进行前景检测时,会将部分背景同样识别为前景,造成前景检测的不准确,从而影响后期的对象跟踪等处理。



技术实现要素:

本发明实施例提供了一种前景检测方法,用于解决现有技术中前景检测不准确的问题。

一方面,本申请实施例提供了一种前景检测方法,包括:

依据预设的像素块、时间间隔,以及所述像素块的坐标,对每个所述像素块计算运动矢量;

如果所述运动矢量的大小大于预设值,则所述像素块为前景。

另一方面,本申请实施例还提供了一种前景检测装置,包括:

运动矢量计算模块,用于依据预设的像素块、时间间隔,以及所述像素块的坐标,对每个所述像素块计算运动矢量;

确定模块,用于当所述运动矢量的大小大于预设值时,确定所述像素块为前景。

再一方面,本申请实施例还提供了一种电子设备,包括:

至少一个处理器;以及,

与所述至少一个处理器通信连接的存储器;其中,

所述存储器存储有可被所述一个处理器执行的指令,所述指令被被所述至少一个处理器执行,以使所述至少一个处理器能够执行前述实施例中的任一种方法。

再一方面,本发明实施例提供了一种非易失性计算机存储介质,存储有计算机可执行指令,所述计算机可执行指令用于执行本发明实施例上述任一项前景检测方法。

再一方面,本发明实施例提供了一种计算机程序产品,所述计算机程序产品包括存储在非易失性计算机可读存储介质上的计算程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,使所述计算机执行上述任一项前景检测方法。

附图说明

为了更清楚地说明本发明的实施方式或现有技术中的技术方案,下面将对实施方式或现有技术描述中所需要使用的附图作简单地介绍。显而易见地,下面描述中的附图仅仅是示例性的,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图引伸获得其它的实施附图。

图1为本申请实施例所述一种前景检测方法的流程示意图;

图2为运动矢量计算示意图;

图3为示例性的二维图像;

图4为本申请实施例所述一种前景检测装置的原理结构图;

图5本申请实施例所述一种电子装置的原理结构图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

实施例一

如图1所示为本发明实施例提供的一种前景检测方法的流程图,本实施例的技术方案可适于录像摄影设备,尤其是相对固定设置的录像摄影设备,或者可用于进行前景检测或视频编码的电子设备,如手机、平板电脑、个人计算机(pc)、手持计算机(pda)、电视、服务器等。

本申请实施例一提供的一种前景检测方法,包括如下步骤:

s110、依据预设的像素块、时间间隔,以及所述像素块的坐标,对每个所述像素块计算运动矢量。

运动矢量是视频的运动估计中的一个常用概念,用于表示一段视频中,设定时间内某一像素块的相对位移。运动估计是帧间预测的一种重要概念,帧间预测作为预测编码的一种重要形式,经常被应用于视频压缩之中,旨在消除时域冗余信息,即利用之前编码过的图像来预测要编码的图像。运动估计的核心在于寻找当前编码的像素块在已编码图像(称为参考帧)中的最佳对应块,并且计算出对应块的位移。所述位移即运动矢量,mv(motionvector)。

如图2所示,假设当前帧为p(即要进行编码的帧),参考帧为pr(即已经完成编码的帧),当前编码的像素块为b,其中b中可以包含一个或多个像素。之后,在参考帧pr中寻找与b块最为相似的块br,例如通过计算相减残差并取其最小值对应的块的方式。br即称为b的最佳匹配块,这个过程即为运动估计。最佳匹配块的获取方式有很多种,本申请中并不做具体限定。如图2所示,块b*与b的规格相同(如均为矩形,且宽、高一致),其中块b*位于参考帧pr对应的图像中,块b位于当前帧p对应的图像中,且块b*与b在所在帧的图像中的坐标位置相同。设块br左上角坐标(xr,yr),块b*左上角坐标(x,y),则块b的运动矢量mv即为上述块br左上角坐标值减去块b*左上角坐标值,即(xr-x,yr-y)。由于视频的时间冗余很大,只要参考帧和参考块选取得合适,需要编码的残差值将会很小。

而在进行上述运动矢量的计算之前,需要首先确定需要进行计算的像素块与时间间隔。所述像素块与时间间隔的确定可以为依据提前设定好的值(例如相应的出厂设置)或由用户进行人为设置进行。所述像素块即为上一段中进行运动矢量计算所对应的块。一般地,需要在进行上述计算之前,将所属视频对应的图像划分成多个像素块,所述图像中的多个像素块的大小可以相同,也可以不同;形状可以为矩形,也可以为其他形状,如三角形、梯形、平行四边形等。可选地,为了进一步提高前景检测的准确性,所述像素块可以仅为一个像素。所述时间间隔即为上一段中所述当前帧与参考帧之间所间隔的时间。可选地,所述时间间隔可以为视频中每一帧所对应的时间。即将当前帧的上一帧作为当前帧的参考帧。以每秒24帧的视频为例,其时间间隔即为1/24秒。可以理解地,在对进行整个画面的运动矢量进行进一步处理时,由于图像中包含多个像素块,则整个图像的运动矢量将构成一个矩阵。

s120、如果所述运动矢量的大小大于预设值,则所述像素块为前景。

本发明实施例可以用于对录像摄影设备拍摄的视频的检测,也可以对其他非通过拍摄方式获得的视频进行检测,例如通过计算机制作的动画视频。可选地,本方法可用于背景相对固定的视频,例如以录像摄影设备相对固定设置的方式进行拍摄的视频的前景检测。背景相对固定的视频的场景,例如通过固定设置的监控摄像头、体感摄像头等拍摄的视频,经常应用需要对于前景进行进一步处理,例如对于拍摄的图像进行包括人脸、手势、体感等的识别或行为理解,或进行对象跟踪以及目标分类等进一步处理。在这种情况下,背景部分是不变化或没有较大变化的,因此可以通过识别图像中物体的运动与否来进行前景与背景的区分。而图像中物体的运动与否可以通过对应的一个或多个像素块的运动矢量的大小进行判断。通过对于运动矢量大小的判断来进行前景、背景的识别,能够有效解决当部分背景具有与前景接近的深度信息时的识别错误问题。

虽然如上一段所述,背景一般为不变化的,但是由于某些因素,如风、振动等因素会造成背景的轻微变化,因此需要设定一预设值,当像素块对应的运动矢量的大小大于该预设值时,才判断该像素块为前景,否则该像素块为背景。例如,设块br左上角坐标(xr,yr)=(20,8)(例如以二维直角坐标系对完整图像的坐标进行标记,并以图像p与pr的左下角作为(0,0)点),块b*左上角坐标(x,y)=(24,11),则块b的运动矢量mv即为上述块br左上角坐标值减去块b*左上角坐标值,即(xr-x,yr-y)=(-4,-3)。则根据勾股定理可以确定该块的运动矢量的大小为=5。示例性地,可以设置预设值为4,则当运动矢量大于4时对应的像素块为前景。上述块b的运动矢量的大小为5,即块b为前景。

本发明实施例一公开了一种前景检测的方法,通过计算运动矢量的方式方便的实现前景检测,尤其是当图像中具有与前景深度信息类似的背景时,仍能够更为准确的实现对于前景的检测,方便进行对于图像的进一步处理。

实施例二

本实施例提供了一种前景检测方法,在上一实施例的基础上,所述方法还包括:

s230、根据所述判断的结果绘制二值图像;

s240、进行连通域计算。

二值图像是指该图像的亮度值只有两个状态:黑(0)和白(255)。二值图像由于其模式简单,对像素在空间上的关系有着极强的表现力,常用于图像分析与识别中。二值图像分析最重要的方法就是连通区域标记,它是所有二值图像分析的基础,它通过对二值图像中白色像素(目标)的标记,让每个单独的连通区域形成一个被标识的块,进一步的我们就可以获取这些块的轮廓、外接矩形、质心、不变矩等几何参数。其中进行连通区域标记的运算称作连通域计算。图3为示例性的二值图像,其中用阿拉伯数字标记的白色区域为多个连通域。对于连通域的标记方式有多种,本发明实施例中不做具体限定。

示例性地,在根据步骤s120的判断结果,可以将判断为前景的像素块设置为白色亮度值,对于没有判断为前景的像素块设置为黑色亮度值。则可以获得一张只有黑色与白色,且白色为对应图像的前景的二值图像。进一步通过连通域计算,可以获取具有明确连通区域的连通域图像,从而方便进一步的图像处理。

本发明实施例中,通过对于判断结果的进一步处理,获得了与前景检测相对应图像的连通域图像,为进一步的图像识别等处理提供了方便。进一步提高了前景检测的准确度与效率。

实施例三

本实施例提供了一种前景检测方法,在上述实施例的基础上,还包括:

所述计算运动矢量的步骤是在进行视频编码时进行的。

视频编码就是指通过特定的压缩技术,将某个视频格式的文件转换成另一种视频格式文件的方式。考虑到视频的传输以及在传输时的效率与带宽的限制,大多数情况下视频在传输之前均需要进行视频编码以进行压缩。而根据不同的编码方案,视频编码具有多种系列,例如mpeg系列和h.26x系列等。

视频编码的重要目的即实现视频的压缩。视频能够进行压缩的原因在于视频图像数据有极强的相关性,即具有大量的冗余信息。其中冗余信息可分为空域冗余信息和时域冗余信息。压缩技术就是将数据中的冗余信息去掉(即去除数据之间的相关性)。而预测编码是视频编码中最基本的编码工具,常见的预测编码包括帧间预测和帧内预测。

其中,帧间预测就是时域预测,旨在消除时域冗余信息,即利用之前编码过的图像来预测将要编码的图像。而帧间预测又包含两个重要的概念:运动估计与运动补偿。运动估计就是寻找当前编码的块在已编码图像(成为参考帧)中的最佳对应块,并且计算出对应块的偏移(即运动矢量mv)。

可见,对运动矢量的计算是视频编码中的重要步骤。因此,在进行前景检测中的计算运动矢量的步骤,可以直接运用视频编码中运动矢量计算的结果,从而进一步提高前景检测的效率。

本发明实施例中,通过在前景检测的步骤中直接运用视频编码过程中运动矢量的计算结果,进一步提高了前景检测的速度和效率,方便了前景检测进一步的进行。

实施例四

本发明实施例还提供了一种前景检测装置,所述前景检测装置可以是录像摄影设备,尤其是相对固定设置的录像摄影设备,或者为用于视频编码的电子设备,如手机、平板电脑、个人计算机(pc)、手持计算机(pda)、电视、服务器等。

如图4所示,所述前景检测装置包括:运动矢量计算模块10和确定模块20。

其中,所述运动矢量计算模块10用于依据预设的像素块和时间间隔,对每个所述像素块计算运动矢量。示例性地,所述运动矢量计算模块10由为视频处理单元vpu(videoprocessingunit),所述视频处理单元一般用于视频编码与解码、视频后过滤(postfiltering)与视频旋转与反向(rotationandinversion)。

运动矢量是视频的运动估计中的一个常用概念,用于表示一段视频中,设定时间内某一像素块的相对位移。运动估计是帧间预测的一种重要概念,帧间预测作为预测编码的一种重要形式,经常被应用于视频压缩之中,旨在消除时域冗余信息,即利用之前编码过的图像来预测要编码的图像。运动估计的核心在于寻找当前编码的像素块在已编码图像(称为参考帧)中的最佳对应块,并且计算出对应块的位移。所述位移即运动矢量,mv(motionvector)。

如图2所示,假设当前帧为p(即要进行编码的帧),参考帧为pr(即已经完成编码的帧),当前编码的像素块为b,其中b中可以包含一个或多个像素。之后,在参考帧pr中寻找与b块最为相似的块br,例如通过计算相减残差并取其最小值对应的块的方式。br即称为b的最佳匹配块,这个过程即为运动估计。最佳匹配块的获取方式有很多种,本申请中并不做具体限定。如图2所示,块b*与b的规格相同(如均为矩形,且宽、高一致),其中块b*位于参考帧pr对应的图像中,块b位于当前帧p对应的图像中,且块b*与b在所在帧的图像中的坐标位置相同。设块br左上角坐标(xr,yr),块b*左上角坐标(x,y),则块b的运动矢量mv即为上述块br左上角坐标值减去块b*左上角坐标值,即(xr-x,yr-y)。由于视频的时间冗余很大,只要参考帧和参考块选取得合适,需要编码的残差值将会很小。

可选地,所述装置还包括设置模块30,所述设置模块30在进行上述运动矢量的计算之前,确定需要进行计算的像素块与时间间隔。所述像素块与时间间隔的确定可以为依据提前设定好的值(例如相应的出厂设置)或由用户进行人为设置进行。所述像素块即为上一段中进行运动矢量计算所对应的块。一般地,需要在进行上述计算之前,将所属视频对应的图像划分成多个像素块,所述图像中的多个像素块的大小可以相同,也可以不同;形状可以为矩形,也可以为其他形状,如三角形、梯形、平行四边形等。可选地,为了进一步提高前景检测的准确性,所述像素块可以仅为一个像素。所述时间间隔即为上一段中所述当前帧与参考帧之间所间隔的时间。可选地,所述时间间隔可以为视频中每一帧所对应的时间。即将当前帧的上一帧作为当前帧的参考帧。以每秒24帧的视频为例,其时间间隔即为1/24秒。可以理解地,在对进行整个画面的运动矢量进行进一步处理时,由于图像中包含多个像素块,则整个图像的运动矢量将构成一个矩阵。

所述确定模块20,用于当所述运动矢量的大小大于预设值时,确定所述像素块为前景。示例性地,所述确定模块20可以是图形处理单元gpu(graphicsprocessingunit)。在视频编码中,所述图形处理单元经常用于涉及相关图形的计算,例如矩阵的相关运算。当运动矢量计算模块10计算得到所有像素块的运动矢量后,会将上述运动矢量的集合(例如形成一个矩阵形式)发送给确定模块20,并由确定模块进行进一步的处理。

本发明实施例所述的前景检测装置可以对录像摄影设备拍摄的视频进行检测,也可以对其他非通过拍摄方式获得的视频进行检测,例如通过计算机制作的动画视频。可选地,本设备可用于对背景相对固定的视频进行前景检测,例如以录像摄影设备相对固定设置的方式进行拍摄的视频的前景检测。背景相对固定的视频的场景,例如通过固定设置的监控摄像头、体感摄像头等拍摄的视频,经常应用需要对于前景进行进一步处理,例如对于拍摄的图像进行包括人脸、手势、体感等的识别或行为理解,或进行对象跟踪以及目标分类等进一步处理。在这种情况下,背景部分是不变化或没有较大变化的,因此可以通过识别图像中物体的运动与否来进行前景与背景的区分。而图像中物体的运动与否可以通过对应的一个或多个像素块的运动矢量的大小进行判断。通过对于运动矢量大小的判断来进行前景、背景的识别,能够有效解决当部分背景具有与前景接近的深度信息时的识别错误问题。

虽然如上一段所述,背景一般为不变化的,但是由于某些因素,如风、振动等因素会造成背景的轻微变化,因此需要设定一预设值,当像素块对应的运动矢量的大小大于该预设值时,才判断该像素块为前景,否则该像素块为背景。例如,当块br左上角坐标(xr,yr)=(20,8)(例如以二维直角坐标系对完整图像的坐标进行标记,并以左下角作为(0,0)点),块b*左上角坐标(x,y)=(24,11),则块b的运动矢量mv即为上述块br左上角坐标值减去块b*左上角坐标值,即(xr-x,yr-y)=(-4,-3)。则根据勾股定理可以确定运动矢量的大小为=5。示例性地,可以设置预设值为4,则当运动矢量大于4时对应的像素块为前景,上述块b的运动矢量为5,即块b为前景。

该发明实施例公开了一种前景检测的装置,该装置可以通过计算运动矢量的方式方便的实现前景检测,尤其是针对图像中具有与前景深度信息类似的背景时,能够更为准确的实现对于前景的检测,方便进行对于图像的进一步处理。

实施例五

本发明实施例还提供了一种前景检测装置,在实施例三的基础上还包括:绘制模块40和连通域计算模块50。

绘制模块40,用于根据确定模块20的判断结果绘制二值图像。

二值图像是指就是图像的亮度值只有两个状态:黑(0)和白(255)。二值图像由于其模式简单,对像素在空间上的关系有着极强的表现力,常用于图像分析与识别中。二值图像分析最重要的方法就是连通区域标记,它是所有二值图像分析的基础,它通过对二值图像中白色像素(目标)的标记,让每个单独的连通区域形成一个被标识的块,进一步的我们就可以获取这些块的轮廓、外接矩形、质心、不变矩等几何参数。其中进行连通区域标记的运算称作连通域计算。图3为示例性的二值图像,其中用阿拉伯数字标记的白色区域为多个连通域。对于连通域的标记方式有多种,本发明实施例中不做具体限定。

示例性地,在根据确定模块20的判断结果,可以将判断为前景的像素块设置为白色亮度值,对于没有判断为前景的像素块设置为黑色亮度值。则可以获得一张只有黑色与白色,且白色为对应图像的前景的二值图像。进一步通过连通域计算,可以获取具有明确连通区域的连通域图像,从而方便进一步的图像处理。

本发明实施例中,通过对于判断结果的进一步处理,获得了与前景检测相对应图像的连通域图像,为进一步的图像识别等处理提供了方便。进一步提高了前景检测的准确度与效率。

实施例六

本实施例提供了一种前景检测装置,在上述实施例的基础上,还包括视频编码模块60。

视频编码模块60用于进行视频编码,是指通过特定的压缩技术,将某个视频格式的文件转换成另一种视频格式文件的方式。考虑到视频的传输以及在传输时的效率与带宽的限制,大多数情况下视频在传输之前均需要进行视频编码以进行压缩。而根据不同的编码方案,视频编码具有多种系列,例如mpeg系列和h.26x系列等。

视频编码的重要目的即实现视频的压缩。视频能够进行压缩的原因在于视频图像数据有极强的相关性,即具有大量的冗余信息。其中冗余信息可分为空域冗余信息和时域冗余信息。压缩技术就是将数据中的冗余信息去掉(即去除数据之间的相关性)。而预测编码是视频编码中最基本的编码工具,常见的预测编码包括帧间预测和帧内预测。

其中,帧间预测就是时域预测,旨在消除时域冗余信息,即利用之前编码过的图像来预测将要编码的图像。而帧间预测又包含两个重要的概念:运动估计与运动补偿。运动估计就是寻找当前编码的块在已编码图像(成为参考帧)中的最佳对应块,并且通过运动矢量计算模块计算出对应块的偏移(即运动矢量mv)。

可见,运动矢量计算模块是视频编码模块的重要组成部分。因此,对于前景检测装置,运动矢量计算模块可以包含于视频编码模块中,从而进一步提高前景检测的效率,降低设备结构的复杂度。

本发明实施例中,通过将矢量计算模块包含于视频编码模块中,进一步提高了前景检测的速度和效率,降低设备结构的复杂度,方便了前景检测进一步的进行。

实施例七

图5是本申请实施例七提供的执行列表项操作的处理方法的电子设备的硬件结构示意图,如图5所示,该设备包括:

一个或多个处理器610以及存储器620,图4中以一个处理器610为例。

执行列表项操作的处理方法的设备还可以包括:输入装置630和输出装置640。

处理器610、存储器620、输入装置630和输出装置640可以通过总线或者其他方式连接。

存储器620作为一种非暂态计算机可读存储介质,可用于存储非暂态软件程序、非暂态计算机可执行程序以及模块,如本申请实施例中的列表项操作的处理方法对应的程序指令/模块(例如,附图4所示的显示状态切换模块410、列表项移动模块420和编辑操作执行模块430)。处理器610通过运行存储在存储器620中的非暂态软件程序、指令以及模块,从而执行服务器的各种功能应用以及数据处理,即实现上述方法实施例列表项操作的处理方法。

存储器620可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据列表项操作的处理装置的使用所创建的数据等。此外,存储器620可以包括高速随机存取存储器,还可以包括非暂态存储器,例如至少一个磁盘存储器件、闪存器件、或其他非暂态固态存储器件。在一些实施例中,存储器620可选包括相对于处理器610远程设置的存储器,这些远程存储器可以通过网络连接至列表项操作的处理装置。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。

输入装置630可接收输入的数字或字符信息,以及产生与列表项操作的处理装置的用户设置以及功能控制有关的键信号输入。输出装置640可包括显示屏等显示设备。

所述一个或者多个模块存储在所述存储器620中,当被所述一个或者多个处理器610执行时,执行上述任意方法实施例中的列表项操作的处理方法。

上述产品可执行本申请实施例所提供的方法,包括执行方法相应的功能模块和有益效果。未在本实施例中详尽描述的技术细节,可参见本申请实施例所提供的方法。

实施例八

本发明实施例提供了一种非易失性计算机存储介质,存储有计算机可执行指令,所述计算机可执行指令用于执行本发明实施例上述任一项前景检测方法。

本发明实施例具有与方法实施例相应的有益效果。未在本实施例中详尽描述的技术细节,可参见本发明实施例所提供的方法。

实施例

再一方面,本发明实施例提供了一种计算机程序产品,所述计算机程序产品包括存储在非易失性计算机可读存储介质上的计算程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,使所述计算机执行上述任一项前景检测方法。

本发明实施例具有与方法实施例相应的有益效果。未在本实施例中详尽描述的技术细节,可参见本发明实施例所提供的方法。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(read-onlymemory,rom)或随机存储记忆体(randomaccessmemory,ram)等。

最后需要说明的是,本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(rom)或随机存储记忆体(ram)等。

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