包含运动目标的图像处理方法、装置及电子设备与流程

文档序号:13941682阅读:229来源:国知局

本发明涉及图像处理技术领域,尤其涉及包含运动目标的图像处理技术。



背景技术:

游戏渲染时需要进行大量的三维模型建模、光栅化、贴图、渲染光影效果等,其渲染复杂度很高,因此往往造成帧率的瓶颈。

现有技术主要针对完整视频序列,离线计算非关键帧运动矢量,实现帧间插补。此类方法实时性差,算法复杂,并未针对移动平台做出相应优化。此外,现有技术主要利用色彩信息对图像进行分析,并未融合深度数据减少冗余计算,提高效率;同时也并未融合深度数据,对不同深度采用多尺度的图像处理方法。最后,现有技术主要关注于颜色空间中光流计算的准确性、快速性,并未提出深度数据的融合方法,以及图像插补中的应用。在颜色空间中大量的重复纹理、违反光流假设的情况会对运动预测造成极大的影响。现有技术中主要针对完整视频数据的离线渲染,或者单目视频数据的在线预测,并未涉及多目、多维信息的融合。

针对上述问题,亟需一种全新的包含运动目标的图像处理技术。



技术实现要素:

有鉴于此,本发明实施例提供一种包含运动目标的图像处理方法、装置、电子设备、非暂态计算机可读存储介质及计算机程序,至少部分的解决现有技术中存在的问题。

第一方面,本发明实施例提供了一种包含运动目标的图像处理方法,包括:

利用与包含运用目标的当前图像对应的深度信息,提取所述当前图像的前景特征点与背景特征点;

基于所述当前图像的惯性数据及所述背景特征点,确定背景运动矢量;

获取与所述当前图像的当前图像金字塔以及与所述当前图像关联的历史帧图像金字塔,基于所述当前图像金字塔、历史帧图像金字塔以及所述前景特征点,确定前景运动矢量;

基于所述背景运动矢量及所述前景运动矢量,计算当前图像中运动目标的运动信息,形成与当前图像关联的目标图像。

根据本发明实施例的一种具体实现方式,所述利用与包含运用目标的当前图像对应的深度信息,提取所述当前图像的前景特征点与背景特征点,包括:

对所述当前图像进行快速角点检测,形成快速角点;

获取所述快速角点的深度值,基于所述深度值,将所述快速角点划分为前景角点或背景特征点。

根据本发明实施例的一种具体实现方式,所述利用与包含运用目标的当前图像对应的深度信息,提取所述当前图像的前景特征点与背景特征点,还包括:

对所述前景角点进行强角点检测,将通过强角点检测的前景角点作为前景特征点。

根据本发明实施例的一种具体实现方式,所述基于所述当前图像的惯性数据及所述背景特征点,确定背景运动矢量,包括:

利用所述惯性数据,计算所述当前图像的运动四元数;

获取背景特征点的平面坐标(x,y)以及所述背景特征点深度图像中搜索对应的深度z,得到所述背景特征点的空间坐标(x,y,z);

利用所述运动四元数,对所述背景特征点进行旋转,获得所述背景特征点旋转后的旋转坐标(xr,yr,zr);

使用投影矩阵将旋转后的背景特征点的坐标重新投影到二维平面中,投影后的背景特征点投影坐标为(u,v);

基于所述平面坐标(x,y)及所述投影坐标(u,v),确定所述背景运动矢量。

根据本发明实施例的一种具体实现方式,所述基于所述当前图像金字塔、历史帧图像金字塔以及所述前景特征点,确定前景运动矢量,包括:

遍历所述当前图像金字塔的各层;

在所述当前图像金字塔的前景特征点邻域区域计算梯度以及hessian矩阵。

根据本发明实施例的一种具体实现方式,所述基于所述当前图像金字塔、历史帧图像金字塔以及所述前景特征点,确定前景运动矢量,还包括:

采用lk光流计算方法确定所述前景运动矢量。

根据本发明实施例的一种具体实现方式,所述形成与当前图像关联的目标图像,包括:

初始化图元边界;

基于所述背景运动矢量及所述前景运动矢量的起点及终点来分割所述图元。

根据本发明实施例的一种具体实现方式,所述方法还包括:

获取所述当前图像的视角关联的关联视角;

生成在所述关联视角中显示的图像。

根据本发明实施例的一种具体实现方式,生成在所述关联视角中显示的图像,包括:

获取所述当前图形中的前景特征点在当前视角中的平面坐标pl以及在关联视角中的平面坐标pr;

将pr点为pl点在所述关联视角平面的运动矢量起点,基于当前图像中运动目标的运动信息,生成在所述关联视角中显示的图像。

第二方面,本发明实施例还提供了一种包含运动目标的图像处理装置,包括:

提取模块,用于利用与包含运用目标的当前图像对应的深度信息,提取所述当前图像的前景特征点与背景特征点;

第一确定模块,用于基于所述当前图像的惯性数据及所述背景特征点,确定背景运动矢量;

第二确定模块,用于获取与所述当前图像的当前图像金字塔以及与所述当前图像关联的历史帧图像金字塔,基于所述当前图像金字塔、历史帧图像金字塔以及所述前景特征点,确定前景运动矢量;

形成模块,用于基于所述背景运动矢量及所述前景运动矢量,计算当前图像中运动目标的运动信息,形成与当前图像关联的目标图像。

第三方面,本发明实施例还提供了一种电子设备,所述电子设备包括:

至少一个处理器;以及,

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

所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行前述任第一方面或第一方面的任一实现方式所述的包含运动目标的图像处理方法。

第四方面,本发明实施例还提供了一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令用于使所述计算机执行前述第一方面或第一方面的任一实现方式所述的包含运动目标的图像处理方法。

第五方面,本发明实施例还提供了一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,使所述计算机执行前述第一方面或第一方面的任一实现方式所述的包含运动目标的图像处理方法。

本发明实施例提供的包含运动目标的图像处理方法、装置、电子设备、非暂态计算机可读存储介质及计算机程序,基于相邻关键帧的图像特征,对画面中运动目标识别,并基于其运动矢量插补渲染中间帧。本发明仅提取画面中有限个具有代表性的运动矢量,将复杂运动简化为有限个运动矢量,基于深度数据将单目运动数据投射到另一目,基于画面中有限个特征点,及其运动矢量,生成中间帧图像中对应的特征点位置。并根据上述特征点对图像三角刨分,形成模型和着色器顶点坐标,通过着色器顶点坐标偏移的方式实现插补渲染,便于使用gpu完成中间插补帧的渲染。

附图说明

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

图1为本发明实施例提供的一种包含运动目标的图像处理流程示意图;

图2为本发明实施例提供的一种提取当前图像的前景特征点与背景特征点的流程示意图;

图3为本发明实施例提供的一种确定背景运动矢量的流程示意图;

图4为本发明实施例提供的一种包含运动物体的图像示意图;

图5为本发明实施例提供的一种包含深度数据的图像示意图;

图6为本发明实施例提供的一种用于特征点检测的原始图像;

图7为本发明实施例提供的一种用于特征点检测的原始图像对应的深度图像;

图8为本发明实施例提供的一种fast角点检测结果示意图;

图9为本发明实施例提供的一种前景fast角点检测结果示意图;

图10为本发明实施例提供的一种背景fast角点检测结果示意图;

图11为本发明实施例提供的一种前景强角点检测结果示意图;

图12为本发明实施例提供的一种背景角点运动矢量示意图;

图13为本发明实施例提供的一种前景角点运动矢量示意图;

图14为本发明实施例提供的一种多视角中的前景运动矢量转换示意图;

图15为本发明实施例提供的一种基于运动矢量起点的刨分结果示意图;

图16为本发明实施例提供的一种基于运动矢量终点的刨分结果示意图;

图17为本发明实施例提供的一种lk稀疏光流计算方法的流程示意图;

图18为本发明实施例提供的一种包含运动目标的图像处理装置结构示意图;

图19为本发明实施例提供的一种电子设备结构示意图。

具体实施方式

下面结合附图对本发明实施例进行详细描述。

应当明确,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。

图1为本发明的实施例的一种包含运动目标的图像处理流程示意图,如图1所示,本实施例的方法可以包括以下步骤:

s101,利用与包含运用目标的当前图像对应的深度信息,提取所述当前图像的前景特征点与背景特征点。

具体的,在实施步骤s101的过程中,可以包括如下步骤:

s201,对所述当前图像进行快速角点检测,形成快速角点。

本发明中的特征点(包括前景特征点与背景特征点),可以用角点来表示,也可以采用其他的能够表示图像特征的特征点来进行表示,在此不作限定。具体的,可以采用fast(featuresfromacceleratedsegmenttest,)特征点检测技术,进行快速角点的检测。该算法的基本原理是使用圆周长为16个像素点(半径为3的bresenham圆)来判定其圆心像素p是否为角点。在圆周上按顺时针方向从1到16的顺序对圆周像素点进行编号。如果在圆周上有n个连续的像素的亮度都比圆心像素的亮度ip加上阈值t还要亮,或者比圆心像素的亮度减去阈值还要暗,则圆心像素被称为角点。除了采用fast特征点检测技术之外,也可以采用其他的快速角点检测技术,形成快速角点。

s202,获取所述快速角点的深度值,基于所述深度值,将所述快速角点划分为前景角点或背景特征点。

区别于其他类型插补渲染的特点在于,本发明有效利用了深度缓存数据。深度缓存数据由应用渲染获得。如图4所示,画面中共包含三类内容:(1)汽车、(2)树木、(3)背景。其对应的深度缓存数据如图5所示,其中不同的灰度值表征了目标距离观测视点的距离,具体而言灰度值越亮,距离越近;反之灰度值越低,距离越远。

以图6为例,图6为原始图像,其对应的是深度图像如图7所示。对图6执行fast角点检测,其结果如图8所示。根据fast角点在深度图像上的命中情况,将上述fast角点按照其对应的深度值,划分为前景fast角点、背景fast角点两部分。前景fast角点如图9所示,背景fast角点如图10所示

s203,对所述前景角点进行强角点检测,将通过强角点检测的前景角点作为前景特征点。

图9中前景fast角点并不一定全部是强角点,因此对前景fast角点附近邻域执行强角点检测,最终提取出全部前景强角点,如图11所示。

需要说明的是本发明对强角点提取方法并不做限制,但限制深度数据在强角点搜索中的运用,其他运动目标快速检测渲染技术中利用深度数据加速shi-tomasi、sift角点等其他强角点的方法均落入本发明保护范围。

以harris角点为例,对不同深度的待检测角点计算其强角点提取的阈值、搜索半径等参数,之后由强角点检测模块计算前景fast角点附近邻域的梯度,进而计算hessian矩阵、角点响应。在各前景fast角点上判断该角点是否为极大值点,及其角点响应是否大于对应阈值。最终筛选出全部强角点。

在进行步骤s101之前,可选的,可以对目标图像执行图像预处理操作。图像预处理目的在于对计算源数据初始化,并通过必要的图像增强方法,提高图像中有效信息的信噪比。对图像的预处理,可以采用如下方式中的一种或多种:

(1)对图像降采样,以损失图像细节为代价,缩小图像尺寸,提高角点检测和运动矢量计算的效率。

(2)由于角点检测、运动矢量计算主要在梯度域中进行,因此可以通过灰度化,排除图像色彩信息,节约数据存储、提高运算效率。

(3)为提高角点检测和运动矢量计算精度,可利用边缘增强等方法对图像增强。

s102,基于所述当前图像的惯性数据及所述背景特征点,确定背景运动矢量。

由于运动矢量计算需要占用大量gpu资源,且算法复杂度较高。因此背景角点使用了更为轻量级的算法,提高系统的整体效率,节约计算资源,节约功耗。

具体的,步骤s102可以包括如下步骤:

s301,利用所述惯性数据,计算所述当前图像的运动四元数;

s302,获取背景特征点的平面坐标(x,y)以及所述背景特征点深度图像中搜索对应的深度z,得到所述背景特征点的空间坐标(x,y,z);

s303,利用所述运动四元数,对所述背景特征点进行旋转,获得所述背景特征点旋转后的旋转坐标(xr,yr,zr);

s304,使用投影矩阵将旋转后的背景特征点的坐标重新投影到二维平面中,投影后的背景特征点投影坐标为(u,v);

s305,基于所述平面坐标(x,y)及所述投影坐标(u,v),确定所述背景运动矢量。

利用陀螺仪、加速度计、磁力传感器三种惯性传感器的惯性数据,通过九轴融合算法,实时计算设备当前姿态四元数。根据有限次历史姿态数据,经过滤波、或加权求取当前运动四元数。上述数据表征了当前设备俯仰、偏航、翻滚的运动趋势。

对于背景角点(x,y),其在深度图像中搜索对应的深度,求取其在空间中的坐标(x,y,z)。根据上述运动四元数,对背景角点旋转,获得其旋转后的空间坐标(xr,yr,zr)。最后使用投影矩阵将其重新投影到二维平面中,最终坐标为(u,v)。

即通过惯性传感器数据,产生的运动数据,并将其作用在特征角点上,最终获得其二维运动矢量。背景角点运动矢量如图12所示。

s103,获取与所述当前图像的当前图像金字塔以及与所述当前图像关联的历史帧图像金字塔,基于所述当前图像金字塔、历史帧图像金字塔以及所述前景特征点,确定前景运动矢量。

本发明计算前景强角点的方法在于使用稀疏光流法计算角点运动矢量,具体而言本发明采用lk稀疏光流计算方法,参见图17,lk稀疏光流计算方法,可以包括如下步骤:

s1701,遍历全部强角点。

通过步骤s101中获取的前景特征点,可以得到金字塔图像中的所有全部强角点,通过遍历全部强角点,能够减少运算量。

s1702,判断是否达到金字塔的最底层。

s1703,当没有达到金字塔的最底层时,进行光流计算。

光流计算可以采用常规的光流计算方法,例如,第一幅图h中的像素点(x,y)在第二幅图i中的移动到了(x+u,y+v)的位置,则可以计算出偏移量为(u,v)。

s1704,判断是否达到收敛条件。

s1705,当达到收敛条件时,累计光流至金字塔的下一层。

s1706,当没有达到收敛条件时,偏移匹配块。

s1707,当达到金字塔的最底层时,根据匹配误差标记匹配结果。

通过累计金字塔上的各个光流量,结合匹配误差,最终结算出光流的匹配结果,作为最终的光流量。

可选地,为解决光流计算的孔径问题,首先建立图像金字塔。然后遍历金字塔各层,在强角点邻域区域计算梯度以及hessian矩阵。

s104,基于所述背景运动矢量及所述前景运动矢量,计算当前图像中运动目标的运动信息,形成与当前图像关联的目标图像。

具体的,需要初始化图元边界,基于所述背景运动矢量及所述前景运动矢量的起点及终点来分割所述图元。可以基于delaunay算法实现图元刨分,其中控制点分为以下三部分:(1)边界点,(2)运动矢量起始点,(3)运动矢量起终点。对于图12、图13基于运动矢量起点刨分结果如图15所示;基于运动矢量终点的刨分结果如图16所示。

除了上述内容之外,对于虚拟现实设备而言,其通常具有多个显示单元,每个显示单元可以对应多个不同的视角。具体而言对于一个场景,多个显示单元从多个不同或相同的视角下观察场景,将场景中的内容显示出来。

如果每个显示单元独立计算运动矢量,则算法复杂度较高、功耗较高。因此本发明利用单视角运动矢量、结合深度缓存数据对其他视角的运动矢量实现预测。

对于多视角中的全部显示单元所对应视角的背景运动矢量,都可以依据上述实施例中描述的方法,根据设备姿态和深度缓存数据直接计算求出。

对于多视角中的前景运动矢量需要采用如下步骤求解:

(1)对于前景角点(x,y),在深度图像中搜索对应的深度,求取其在空间中的坐标(x,y,z),如图14所示。其中,图14中标号1为左视角视野、标号2为右视角视野、标号3为左视角成像平面、标号4为右视角成像平面、标号5为左视点、标号6为右视点。

(2)若此空间点也存在于其他视角的视野内,则根据视角间的对应关系,计算当前角点pl在其他视角下的平面坐标pr。

(3)在采样(渲染)频率较高的情况下,运动矢量可以近似为时间维度的线性变化,标记pr点为pl点在其他像平面的运动矢量起点,pr点的运动距离和方向与pl相同。

本发明实施例充分利用了色彩空间、深度空间、融合用户视角、视点数据优化了中间帧查补的效果,提高了中间帧计算的速度。本发明所涉及的插补渲染技术是基于画面内容实现的,效果优于传统隔行插补技术。本发明基于修改顶点着色器的模型、纹理顶点实现帧间插补,避免了传统插补渲染技术中的孔洞计算。本发明结合了基于画面内容的运动检测,以及惯性传感器数据求取的设备姿态,实现运动矢量计算,更加高效。本发明节约了多显示设备(多视角)插补渲染中的冗余计算,提高了计算效率,节约了硬件占用程度,降低了算法功耗。本发明的实施细节中体现了对深度缓存的运用,极大程度地降低了算法复杂度。

在角点检测中,基于显著性采用不同的角点检测技术,表现了fast角点的快速性、强角点检测的准确性、深度信息对角点优选以及参数自适应调节的作用。对于lk光流的计算孔径问题,优选地可基于深度采用多孔径的方法提高计算速度,和精度。基于同深度、空间临近光流具有较好一致性的预设条件,对误差相对较大预测值进行空间滤波,提高了算法实现的精度。

与前述包含运动目标的图像处理方法的实施例相对应,本发明实施例还提供了一种包含运动目标的图像处理装置,如图18所示,包含运动目标的图像处理装置18,包括:

提取模块1801,用于利用与包含运用目标的当前图像对应的深度信息,提取所述当前图像的前景特征点与背景特征点;

第一确定模块1802,用于基于所述当前图像的惯性数据及所述背景特征点,确定背景运动矢量;

第二确定模块1803,用于获取与所述当前图像的当前图像金字塔以及与所述当前图像关联的历史帧图像金字塔,基于所述当前图像金字塔、历史帧图像金字塔以及所述前景特征点,确定前景运动矢量;

形成模块1804,用于基于所述背景运动矢量及所述前景运动矢量,计算当前图像中运动目标的运动信息,形成与当前图像关联的目标图像。

上述实施例中各功能模块所执行的功能及内容与其对应的方法实施例一一对应,在此不再赘述。

图19示出了本发明实施例提供的电子设备19的结构示意图,电子设备19包括至少一个处理器1901(例如cpu),至少一个输入输出接口1904,存储器1902,和至少一个通信总线1903,用于实现这些部件之间的连接通信。至少一个处理器1901用于执行存储器1902中存储的可执行模块,例如计算机程序。存储器1902为非暂态存储器(non-transitorymemory),其可以包含易失性存储器,例如高速随机存取存储器(ram:randomaccessmemory),也可以包括非易失性存储器(non-volatilememory),例如至少一个磁盘存储器。通过至少一个输入输出接口1904(可以是有线或者无线通信接口)实现与至少一个其他网元之间的通信连接。

在一些实施方式中,存储器1902存储了程序19021,处理器1901执行程序19021,用于执行前述任一基于电子设备的包含运动目标的图像处理方法的实施例。

该电子设备可以以多种形式存在,包括但不限于:

(1)移动通信设备:这类设备的特点是具备移动通信功能,并且以提供话音、数据通信为主要目标。这类终端包括:智能手机(例如iphone)、多媒体手机、功能性手机,以及低端手机等。

(2)超移动个人计算机设备:这类设备属于个人计算机的范畴,有计算和处理功能,一般也具备移动上网特性。这类终端包括:pda、mid和umpc设备等,例如ipad。

(3)便携式娱乐设备:这类设备可以显示和播放多媒体内容。该类设备包括:音频、视频播放器(例如ipod),掌上游戏机,电子书,以及智能玩具和便携式车载导航设备。

(4)特定服务器:提供计算服务的设备,服务器的构成包括处理器、硬盘、内存、系统总线等,服务器和通用的计算机架构类似,但是由于需要提供高可靠的服务,因此在处理能力、稳定性、可靠性、安全性、可扩展性、可管理性等方面要求较高。

(5)其他具有数据交互功能的电子设备。

需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将

一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些。

实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个......”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。

尤其,对于装置实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,″计算机可读介质″可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(ram),只读存储器(rom),可擦除可编辑只读存储器(eprom或闪速存储器),光纤装置,以及便携式光盘只读存储器(cdrom)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。

应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。

在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(pga),现场可编程门阵列(fpga)等。

以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。

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