物品位置变化检测方法及装置、存储介质、电子设备与流程

文档序号:17118490发布日期:2019-03-15 23:34阅读:182来源:国知局
物品位置变化检测方法及装置、存储介质、电子设备与流程

本公开涉及图像处理技术领域,具体而言,涉及一种物品位置变化检测方法、物品位置变化检测装置、计算机可读存储介质以及电子设备。



背景技术:

在电商平台的商品展示方式中,可以包括如下两种方式:一种是,对商品的多个角度进行拍摄以取得多张商品的照片进行,并通过照片进行展示;另一种是,连续拍摄商品旋转360度的视频,然后在展示界面中显示出多帧连续的图片,简称为全景主图。

拍摄商品的视频素材的方法可以包括如下两种方法:其一,将商品放在旋转的转盘上,固定摄像头并录像;或者,对于不需要旋转的商品,只需开启摄像头则可以录取商品使的视频;其二,对于体积较大的商品,开启摄像头并绕着商品转一圈则可以录取商品使的视频。上述两种方法所得的视频,在后期处理的过程中,都会存在判断视频中商品是否旋转、是顺时针还是逆时针旋转、旋转角度是小于360度,等于360度还是大于360度的问题,以及伴随着的计算旋转角度及速度的问题。

在现有的解上述问题的方法可以包括:首先,对于是否旋转以及旋转方向的判断方法是采用人工分类的方法;其次,对于旋转角度的计算是通过制造精密的旋转转盘控制转盘的所转角度;然后,对于旋转速度的计算是通过控制转盘恒速旋转,同时在拍摄过程中采用高清定时摄像机;但是,对于体积较大的商品的视频素材的获取尚无稳定可靠的方法。

但是,现有技术无法通过机器自动判断视频中商品旋转方向,并且,判断计算方法依赖于仪器设备,无法处理旋转速度不恒定以及移动摄像头的情况。因此,需要提供一种新的物品位置变化检测方法。

需要说明的是,在上述背景技术部分公开的信息仅用于加强对本公开的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。



技术实现要素:

本公开的目的在于提供一种物品位置变化检测方法、物品位置变化检测装置、计算机可读存储介质以及电子设备,进而至少在一定程度上克服由于相关技术的限制和缺陷而导致的一个或者多个问题。

根据本公开的一个方面,提供一种物品位置变化检测方法,包括:

从一视频图像中获取预设间隔的多帧图像并对所述多帧图像进行处理得到多帧目标图像;

选取任一帧目标图像以及与所述任一帧目标图像相邻帧的目标图像进行光流分析以得到两帧之间的光流场以及光流场中多个点的坐标;

根据所述光流场以及光流场中多个点的坐标计算各点对应的位移矢量;

根据各所述位移矢量判断所述视频图像中物品的位置是否发生变化。

在本公开的一种示例性实施例中,判断所述视频图像中物品的位置是否发生变化包括:

判断所述视频图像中物品是否发生旋转;

在判断所述物品发生旋转时,判断所述物品的旋转方向、旋转角度以及旋转速度是否发生变化。

在本公开的一种示例性实施例中,所述位移矢量包括水平位移以及垂直位移;其中,判断所述视频图像中物品是否发生旋转包括:

计算各所述水平位移的绝对值并对各所述水平位移的绝对值进行求和运算;

根据各所述水平位移的绝对值的求和运算结果判断所述视频图像中物品是否发生旋转。

在本公开的一种示例性实施例中,根据各所述水平位移的绝对值的求和运算结果判断所述视频图像中物品是否发生旋转包括:

判断各所述水平位移的绝对值的求和运算结果在所述视频图像中水平方向上位移幅度绝对值之和中所占的比例是否超过预设比例;

在判断所述比例超过所述预设比例时,判断所述视频图像中物品发生了旋转。

在本公开的一种示例性实施例中,判断所述物品的旋转方向是否发生变化包括:

计算各所述位移矢量中水平位移大于零的点的个数以及水平位移小于零的点的个数;

根据所述水平位移大于零的点的个数以及所述水平位移小于零的点的个数判断所述物品的旋转方向是否发生变化。

在本公开的一种示例性实施例中,根据所述水平位移大于零的点的个数以及所述水平位移小于零的点的个数判断所述物品的旋转方向是否发生变化包括:

当所述水平位移大于零的点的个数大于所述水平位移小于零的点的个数时,判断所述物品的旋转方向为逆时针旋转;

当所述水平位移大于零的点的个数小于所述水平位移小于零的点的个数时,判断所述物品的旋转方向为顺时针旋转。

在本公开的一种示例性实施例中,判断所述物品的旋转角度是否发生变化包括:

根据光流法计算所述物品的旋转中心轴的位置并根据所述旋转中心轴的位置计算出旋转半径;

根据所述旋转半径以及各所述位移矢量中的水平位移判断所述物品的旋转角度是否发生变化。

在本公开的一种示例性实施例中,判断所述物品的旋转速度是否发生变化包括:

在判断所述物品的旋转角度发生变化时,根据所述旋转角度判断所述物品的旋转速度是否发生变化。

在本公开的一种示例性实施例中,对所述多帧图像进行处理得到多帧目标图像包括:

将所述多帧图像中除物品以外的部分删除得到多帧目标图像。

根据本公开的一个方面,提供一种物品位置变化检测装置,包括:

处理模块,用于从一视频图像中获取预设间隔的多帧图像并对所述多帧图像进行处理得到多帧目标图像;

光流分析模块,用于选取任一帧目标图像以及与所述任一帧目标图像相邻帧的目标图像进行光流分析以得到两帧之间的光流场以及光流场中多个点的坐标;

位移矢量计算模块,用于根据所述光流场以及光流场中多个点的坐标计算各点对应的位移矢量;

位置判断模块,用于根据各所述位移矢量判断所述视频图像中物品的位置是否发生变化。

根据本公开的一个方面,提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任意一项所述的物品位置变化检测方法。

根据本公开的一个方面,提供一种电子设备,包括:

处理器;以及

存储器,用于存储所述处理器的可执行指令;

其中,所述处理器配置为经由执行所述可执行指令来执行上述任意一项所述的物品位置变化检测方法。

本公开一种物品位置变化检测方法及装置,

根据本公开的一个方面,提供一种物品位置变化检测方法,通过对多帧图像进行处理得到多帧目标图像;选取任一帧目标图像以及与其相邻帧的目标图像进行光流分析以得到两帧之间的光流场以及光流场中多个点的坐标并计算各点对应的位移矢量;最后再根据各位移矢量判断视频图像中物品的位置是否发生变化;一方面,可以根据各位移矢量判断视频图像中物品的位置是否发生变化,解决了现有技术中无法通过机器自动判断视频中物品位置是否发生变化的问题,摆脱了对仪器设备的依赖,提高了检测的精确度;另一方面,可以根据各位移矢量判断视频图像中物品的位置是否发生变化,解决了现有技术中需要通过人工对大量视频图像进行处理的负担,提高了处理效率同时也减少了人力成本。

应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。

附图说明

此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1示意性示出一种物品位置变化检测方法的流程图。

图2示意性示出一种旋转模型示例图。

图3示意性示出一种旋转角度计算方法流程图。

图4示意性示出一种物品位置变化检测装置的方框图。

图5示意性示出一种用于实现上述物品位置变化检测方法的电子设备。

图6示意性示出一种用于实现上述物品位置变化检测方法的计算机可读存储介质。

具体实施方式

现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本公开将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施方式中。在下面的描述中,提供许多具体细节从而给出对本公开的实施方式的充分理解。然而,本领域技术人员将意识到,可以实践本公开的技术方案而省略所述特定细节中的一个或更多,或者可以采用其它的方法、组元、装置、步骤等。在其它情况下,不详细示出或描述公知技术方案以避免喧宾夺主而使得本公开的各方面变得模糊。

此外,附图仅为本公开的示意性图解,并非一定是按比例绘制。图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。附图中所示的一些方框图是功能实体,不一定必须与物理或逻辑上独立的实体相对应。可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。

图像运动的一种表达方式是通过估计几幅图片的光流场(opticalflowfield)来近似实际物理世界中物体的运动场(motionfield),这一类方法称为光流估计(opticalflowestimation)方法,其目标是估计出第一幅图像中的每个像素点相对于第二幅图像的位移矢量。通过光流估计可以得到图像中每个运动物体的所有运动细节。

本示例实施方式中首先提供了一种物品位置变化检测方法。参考图1所示,该物品位置变化检测方法可以包括以下步骤:

步骤s110.从一视频图像中获取预设间隔的多帧图像并对所述多帧图像进行处理得到多帧目标图像。

步骤s120.选取任一帧目标图像以及与所述任一帧目标图像相邻帧的目标图像进行光流分析以得到两帧之间的光流场以及光流场中多个点的坐标。

步骤s130.根据所述光流场以及光流场中多个点的坐标计算各点对应的位移矢量。

步骤s140.根据各所述位移矢量判断所述视频图像中物品的位置是否发生变化。

上述物品位置变化检测方法中,一方面,可以根据各位移矢量判断视频图像中物品的位置是否发生变化,解决了现有技术中无法通过机器自动判断视频中物品位置是否发生变化的问题,摆脱了对仪器设备的依赖,提高了检测的精确度;另一方面,可以根据各位移矢量判断视频图像中物品的位置是否发生变化,解决了现有技术中需要通过人工对大量视频图像进行处理的负担,提高了处理效率同时也减少了人力成本。

下面,将对本示例实施方式中上述物品位置变化检测方法中的各步骤进行详细的解释以及说明。

在步骤s110中,从一视频图像中获取预设间隔的多帧图像并对所述多帧图像进行处理得到多帧目标图像。

在本示例实施方式中,上述视频图像可以通过手机拍摄得到,也可以通过其他拍摄器材拍摄得到,例如可以是摄像头或者摄像机等等,本示例对此不做特殊限制;上述预设间隔可以人为的进行设定,例如可以是间隔8帧图像或者10帧图像,也可以是12帧图像等等,可以根据视频图像的时间长短进行人为设定;也可以直接根据视频图像的时间长短进行均匀分配,例如可以按照视频图像的时间长短将视频图像分为前中后三部分等等,本示例对此不做特殊限制。举例而言:

从一视频图像(视频图像中的物品例如可以是苹果,也可以是其他物品,例如手机等等,本示例对此不做特殊限制。本公开后文均以苹果为例进行解释说明)获取预设间隔(例如可以是10帧图像)的多帧图像(例如可以是8帧或者12帧,也可以是6帧或者9帧,本示例对此不做特殊限制);然后对获取的多帧图像进行处理。其中,对图像进行处理可以包括:将所述多帧图像中除物品以外的部分删除得到多帧目标图像。详细而言:

从各帧图像中扣出包含商品的部分(包含苹果的部分),然后将图像的空白边界删除;通过该方式,可以保证所有商品的图像的大小相同。此外,在本公开的其他示例性实施方式中,也可以通过其他的方式保证所有商品的图像的大小相同,例如可以是在拍摄的过程中保证摄像机与商品的距离以及拍摄方式一致等等,本示例对此不做特殊限制。

在步骤s120中,选取任一帧目标图像以及与所述任一帧目标图像相邻帧的目标图像进行光流分析以得到两帧之间的光流场以及光流场中多个点的坐标。

首先,对上述光流场(opticalflowfield)进行简单的解释说明。光流场是指二维图像上像素点的位移矢量图,根据多幅图像计算得出,它可以用来估计物理世界中的运动场(motionfield)。进一步的,光流场可以包括在图像中观察到的表面上的点的运动;其中,点的形成方式可以包括:物品在动,摄像机不动;或者物品不动,摄像机动;或者摄像机以及物品都在动等等;光流场可以是图像灰度模式的表面运动;而运动场则需要三维物品实际要运动,并在图像上产生了对应的投影。并且,一个运动物品在空间产生一个三维的速度场(三维指的是运动点前后,左右,上下),运动前后空间对应点在图像上的投影会形成一个二维场(只有左右和上下);因此在理想情况下,光流场与运动场是可以互相吻合的,但实际上并不如此;例如,在一个摄像机前让一个颜色均匀的小球均匀转动,运动场因为有角速度,不为零,但因为图像并不随时间而变化,所以光流场处处为零。

其次,基于上述光流场对步骤s120进行解释说明。选取任一帧目标图像(苹果)以及与该目标图像相邻帧的目标图像(苹果);然后对该帧目标图像以及与该帧目标图像相邻帧的目标图像进行采样,并在不同的采样尺度上计算图像上每个像素点的sift(scale-invariantfeaturetransform)特征,在同一尺度上进行sift特征匹配,再计算出使得损失函数取得最小值的匹配从而估计出整个光流场以及光流场中的多个点的坐标;其中,多个点的坐标可以用p=(x,y)进行表示。

在步骤s130中,根据所述光流场以及光流场中多个点的坐标计算各点对应的位移矢量。详细而言:

首先,将各点对应的位移矢量标记为:w(p)=(u(p),v(p));其中,u(p)可以是个点对应的水平位移,v(p)可以是各点对应的垂直位移;然后,根据各点的坐标p=(x,y)以及光流场计算各点对应的位移矢量w(p)=(u(p),v(p))。此外,在本公开的其他示例实施方式中,也可以通过其他的方法计算各点对应的位移矢量,例如可以是根据同一点在不同时刻的坐标进行计算,本示例对此不做特殊限制。

在步骤s140中,根据各所述位移矢量判断所述视频图像中物品的位置是否发生变化。

在本示例实施方式中,视频图像中物品的位置是否发生变化可以包括:视频图像中物品是否发生旋转,并在判断视频图像中物品的位置发生旋转时,还需要判断物品的旋转方向、旋转角度以及旋转速度是否发生变化。

首先,根据各位移矢量判断视频图像中的物品是否发生旋转。具体的可以包括:计算各所述水平位移的绝对值并对各所述水平位移的绝对值进行求和运算;根据各所述水平位移的绝对值的求和运算结果判断所述视频图像中物品是否发生旋转。详细而言:

先计算各点对应的位移矢量w(p)=(u(p),v(p))中水平位移u(p)的绝对值|u(p)|,然后再对各点的水平位移的绝对值|u(p)|进行求和运算并根据最终的求和运算结果判断是否发生旋转,具体的可以包括:判断各所述水平位移的绝对值的求和运算结果在所述视频图像中水平方向上位移幅度绝对值之和中所占的比例是否超过预设比例;在判断所述比例超过超过所述预设比例时,判断所述视频图像中物品发生了旋转。举例而言:

当水平位移的绝对值|u(p)|之和占所有图像中水平方向上位移幅度绝对值之和的比例超过预设比例(例如可以是50%或者55%,也可以是60%,本示例对此不做特殊限制)时,则可以判断视频图像中的物品发生了旋转;否则,则可以判断视频图像中的物品未发生旋转。

其次,在判断视频图像中的物品发生旋转时,再判断判断物品的旋转方向是否发生变化,具体的可以包括:计算各所述位移矢量中水平位移大于零的点的个数以及水平位移小于零的点的个数;根据所述水平位移大于零的点的个数以及所述水平位移小于零的点的个数判断所述物品的旋转方向是否发生变化。详细而言:

先先计算各点对应的位移矢量w(p)=(u(p),v(p))中水平位移u(p)大于零的点的个数(可以记为nb0),以及水平位移u(p)小于零的点的个数(可以记为nl0);然后再根据该大于零的点的个数以及小于零的点的个数判断视频图像中物品的旋转方向,具体的可以包括:当所述水平位移大于零的点的个数大于所述水平位移小于零的点的个数时,判断所述物品的旋转方向为逆时针旋转;当所述水平位移大于零的点的个数小于所述水平位移小于零的点的个数时,判断所述物品的旋转方向为顺时针旋转。举例而言:

当nb0≥1.2nl0时,则可以判断视频图像从上往下看是逆时针旋转;当nl0≥1.2nb0时,则可以判断视频图像从上往下看是顺时针旋转。此外,判断视频图像的逆时针旋转或者顺时针旋转也可以通过从下网上看的方式进行判断,本示例对此不做特殊限制。进一步的,此处需要说明的是,当上述水平位移中大于零的点的个数与小于零的点的个数存在其他情况时,可以重复上述过程重新计算;若重复多次(例如可以是三次或者四次)仍然无法判断时,可以认为该视频为可疑视频,可以通过人工进行判断。再进一步的,对于体积较大的物品来说,若固定商品并转动摄像装置,则可以根据运动的相对性,认为是摄像装置固定而物品在运动,因此也可以根据上述方法判断物品的旋转方向。因此,通过该方法,可以对体积较大或者较小的物品的旋转方向进行判断,具有较强的适用性。

然后,再判断物品的旋转角度是否发生变化,具体的可以包括:根据光流法计算所述物品的旋转中心轴的位置并根据所述旋转中心轴的位置计算出旋转半径;根据所述旋转半径以及各所述位移矢量中的水平位移判断所述物品的旋转角度是否发生变化。详细而言:

参考图2所示,首先,假设物品上有一点p,经过逆时针旋转后变为p'点,那么点p在x轴方向上的坐标值也将发生变化;假设p点在x轴上的坐标为x(p),p'点在x轴上的坐标为x(p'),则x轴方向上坐标位移(水平坐标位移)u(p)可以为:u(p)=x(p')-x(p);其中,u(p)可以通过光流场进行计算得到;进一步的,假设在旋转过程中,初始角度为θ,旋转后的角度为θ';则可以以图2中的o点为原点,并根据三角函数关系可以得到:

x(p)=r*cos(θ)

x(p')=r*cos(θ');

u(p)=r*(cos(θ')-cos(θ))

此处需要补充说明的是,对于放在旋转转盘上的物品,由于旋转的物品可以近似看做刚性物体(rigidobject),因此,可以近似的认为在旋转的过程中,刚性物体上所有的点的旋转角度都相同且可以保持旋转半径不便。

其次,计算上述旋转半径。其中,计算旋转半径可以包括如下步骤:

参考图2所示,首先,通过光流法估算出旋转中心轴;具体的可以包括:通过光流法估计出刚性物体上每个点在旋转过程中的最大x轴坐标值和最小x轴坐标值,此时的坐标值是建立在图像的像素坐标系统上,图像的左上角为原点(0,0),右下角为最大坐标值点(w,h);其中,w以及h分别为图像的宽度和高度,x轴上最大坐标值为w,最小坐标值为0。

其次,求解旋转半径;具体的可以包括:估计出刚性物体上的最大x轴坐标值和最小x轴坐标值后,通过求最大x轴坐标值和最小x轴坐标值的平均值(可以记为w/2),得到旋转中心轴的x轴坐标值,最大值x轴坐标值与旋转中心轴x轴坐标值进行求差运算得到该像素点的旋转半径r(可以记为w/2)。

然后,建立并求解非线性方程组;具体的可以包括:在得到每个像素点的旋转半径后,建立起方程:u(pi)=r*(cos(θ'i)-cos(θi));紧接着,在图像上选取n个点,并从光流场中得到其位移矢量,建立n组方程;则在这n组方程中,会有n+1个知数个数为,未知数分别为:θ1',θ2',...,θn';其中:δθ=θi'-θi,i=1,2,3,...,n;由于未知数个数多于方程个数,因此可以通过在同一垂直线上或水平线上取临近像素点建立方程,保证方程数个数多于未知数个数,即可以求出旋转的角度大小δθ,在求解方程组的方法可采用最小二乘估计法。此处需要进一步补充说明的是,由于刚性物体的旋转会导致有180度的范围内像素点不可见(旋转到后方被遮挡),因此在计算旋转角度时,并不是一次性根据一个像素点计算出旋转范围为【0-360】度的旋转角度,而是根据多个水平上相隔一定角度的像素点的各自旋转角度的加和来估计整个过程中的计算角度。

最后,再判断所述物品的旋转速度是否发生变化,具体的可以包括:在判断所述物品的旋转角度发生变化时,根据所述旋转角度判断所述物品的旋转速度是否发生变化。详细而言:

参考图2以及图3所示,在商品的正视图中,位于正前方的像素点,其在图2中所示坐标系统下其x轴坐标值为0,当前旋转角度可设为0,假设从上往下看时商品是逆时针旋转的,那么该像素点在旋转时x轴的坐标值是逐渐增加的,可以用数学表达式描述为:x=r*cosθ;ω=θ/t,若假设所有像素点都在均速圆周运动,这是角速度不变的运动,那么其任意时刻的角速度跟旋转角度、时间之间的关系可用公式ω=θ/t表示。在公式x=r*cosθ)中,像素坐标x值、旋转半径r,均可通过光流法可以测量出来,从而旋转角度θ可知,再结合视频中的播放时间t,从而根据公式ω=θ/t计算出角速度ω;当得到角速度ω后,即可根据角速度ω判断物品的旋转速度是否发生变化。

本公开还提供了一种物品位置变化检测装置。参考图4所示,该物品位置变化检测装置可以包括处理模块410、光流分析模块420、位移矢量计算模块430以及位置判断模块440。其中:

处理模块410可以用于从一视频图像中获取预设间隔的多帧图像并对所述多帧图像进行处理得到多帧目标图像。

光流分析模块420可以用于选取任一帧目标图像以及与所述任一帧目标图像相邻帧的目标图像进行光流分析以得到两帧之间的光流场以及光流场中多个点的坐标。

位移矢量计算模块430可以用于根据所述光流场以及光流场中多个点的坐标计算各点对应的位移矢量。

位置判断模块440可以用于根据各所述位移矢量判断所述视频图像中物品的位置是否发生变化。

上述物品位置变化检测装置中各模块的具体细节已经在对应的物品位置变化检测方法中进行了详细想描述,因此此处不再赘述。

应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本公开的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。

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

通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是cd-rom,u盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、移动终端、或者网络设备等)执行根据本公开实施方式的方法。

在本公开的示例性实施例中,还提供了一种能够实现上述方法的电子设备。

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

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

如图5所示,电子设备600以通用计算设备的形式表现。电子设备600的组件可以包括但不限于:上述至少一个处理单元610、上述至少一个存储单元620、连接不同系统组件(包括存储单元620和处理单元610)的总线630。

其中,所述存储单元存储有程序代码,所述程序代码可以被所述处理单元610执行,使得所述处理单元610执行本说明书上述“示例性方法”部分中描述的根据本发明各种示例性实施方式的步骤。例如,所述处理单元610可以执行如图1中所示的步骤s110:从一视频图像中获取预设间隔的多帧图像并对所述多帧图像进行处理得到多帧目标图像;步骤s120:选取任一帧目标图像以及与所述任一帧目标图像相邻帧的目标图像进行光流分析以得到两帧之间的光流场以及光流场中多个点的坐标;步骤s130:根据所述光流场以及光流场中多个点的坐标计算各点对应的位移矢量;步骤s140:根据各所述位移矢量判断所述视频图像中物品的位置是否发生变化。。

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

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

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

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

通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是cd-rom,u盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、终端装置、或者网络设备等)执行根据本公开实施方式的方法。

在本公开的示例性实施例中,还提供了一种计算机可读存储介质,其上存储有能够实现本说明书上述方法的程序产品。在一些可能的实施方式中,本发明的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当所述程序产品在终端设备上运行时,所述程序代码用于使所述终端设备执行本说明书上述“示例性方法”部分中描述的根据本发明各种示例性实施方式的步骤。

参考图6所示,描述了根据本发明的实施方式的用于实现上述方法的程序产品800,其可以采用便携式紧凑盘只读存储器(cd-rom)并包括程序代码,并可以在终端设备,例如个人电脑上运行。然而,本发明的程序产品不限于此,在本文件中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。

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

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

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

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

此外,上述附图仅是根据本发明示例性实施例的方法所包括的处理的示意性说明,而不是限制目的。易于理解,上述附图所示的处理并不表明或限制这些处理的时间顺序。另外,也易于理解,这些处理可以是例如在多个模块中同步或异步执行的。

本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其他实施例。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由权利要求指出。

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