固定视场中的图像拼接方法、装置、系统转让专利

申请号 : CN202111058979.4

文献号 : CN115797164B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 张丽唐虎孙运达刘永春李栋王志明郑大川

申请人 : 同方威视技术股份有限公司清华大学

摘要 :

本公开涉及图像处理技术领域,更具体地,涉及一种固定视场中的图像拼接方法、装置、系统、电子设备、存储介质、程序。一种图像拼接方法包括获取图像序列,图像序列至少包括包含有移动目标多个帧图像;确定多个帧图像中的同一位置为拼接位置;分别确定tn时刻帧图像和tn+1时刻帧图像中移动目标的前景,并对前景处的图像区域进行上下文特征提取;根据上下文特征确定移动目标在tn时刻帧图像和tn+1时刻帧图像间的移动距离;根据移动距离和拼接位置分别对tn时刻帧图像和tn+1时刻帧图像进行剪裁,获得剪裁图像;对剪裁图像进行拼接。本公开的方法中可实现对固定视场中移动目标的拼接显示。(56)对比文件丁莹;范静涛;杨华民;姜会林.基于图像配准的动态场景运动目标检测算法.长春理工大学学报(自然科学版).2013,(Z1),4-9.

权利要求 :

1.一种固定视场中的图像拼接方法,其特征在于,包括:获取图像序列,所述图像序列至少包括包含有移动目标的多个帧图像;

确定多个所述帧图像中的同一位置为拼接位置;

分别确定tn时刻帧图像和tn+1时刻帧图像中所述移动目标的前景,并对所述前景处的图像区域进行上下文特征提取,其中,包括对所述前景处的图像区域内的多种上下文特征进行提取,n为正整数;

根据所述上下文特征确定所述移动目标在所述tn时刻帧图像和所述tn+1时刻帧图像间的移动距离,其中,包括对所述tn时刻帧图像的多种上下文特征的组合和所述tn+1时刻帧图像的多种上下文特征的组合进行特征匹配,获得特征匹配对;根据所述特征匹配对在所述tn时刻帧图像和所述tn+1时刻帧图像中的坐标信息计算所述移动目标在所述tn时刻帧图像和所述tn+1时刻帧图像间的移动距离;

根据所述移动距离和所述拼接位置分别对所述tn时刻帧图像和所述tn+1时刻帧图像进行剪裁,获得剪裁图像;以及对所述剪裁图像进行拼接。

2.根据权利要求1所述的固定视场中的图像拼接方法,其特征在于,在分别确定tn时刻帧图像和tn+1时刻帧图像中所述移动目标的前景之前,还包括:获取帧图像中的背景图像;

对所述背景图像和所述tn时刻帧图像分别进行混合高斯建模;以及根据所述背景图像的混合高斯模型和所述tn时刻帧图像的混合高斯模型的比对结果,判断所述tn时刻帧图像中是否包含移动目标。

3.根据权利要求2所述的固定视场中的图像拼接方法,其特征在于,在判断所述tn时刻帧图像中未包含移动目标时,将所述tn时刻帧图像的混合高斯模型更新为所述背景图像的混合高斯模型。

4.根据权利要求2所述的固定视场中的图像拼接方法,其特征在于,所述确定多个所述帧图像中的同一位置为拼接位置包括:将所述帧图像的行或者列设置为所述拼接位置,其中,所述拼接位置满足:在所述移动目标的运动方向上,所述拼接位置位于tm时刻帧图像中的移动目标的前方,其中,所述tm时刻帧图像为第一次包含有所述移动目标的帧图像,m为正整数且m小于等于n。

5.根据权利要求1所述的固定视场中的图像拼接方法,其特征在于,所述根据所述特征匹配对在所述tn时刻帧图像和所述tn+1时刻帧图像中的坐标信息计算所述移动目标在所述tn时刻帧图像和所述tn+1时刻帧图像间的移动距离包括:根据多个所述特征匹配对的坐标信息的平均绝对差或者绝对差的中间值计算所述移动距离。

6.根据权利要求5所述的固定视场中的图像拼接方法,其特征在于,至少一个所述上下文特征与采集所述图像序列的设备的工作模式和/或所述设备的工作环境相关。

7.根据权利要求1所述的固定视场中的图像拼接方法,其特征在于,所述根据所述移动距离和所述拼接位置分别对所述tn时刻帧图像和所述tn+1时刻帧图像进行剪裁包括:确定剪裁区域,所述剪裁区域为以所述拼接位置处为剪裁起点,以所述剪裁起点沿所述移动目标的运动方向相反的方向划定长度为所述移动距离的区域。

8.根据权利要求1‑7任一项所述的固定视场中的图像拼接方法,其特征在于,所述获取所述图像序列包括:获取待拼接的视频,对所述视频解码后获得所述图像序列。

9.根据权利要求1‑7任一项所述的固定视场中的图像拼接方法,其特征在于,所述分别确定tn时刻帧图像和tn+1时刻帧图像中所述移动目标的前景包括:采用形态学方法确定tn时刻帧图像和tn+1时刻帧图像中所述移动目标的前景。

10.根据权利要求1所述的固定视场中的图像拼接方法,其特征在于,在所述对所述剪裁图像进行拼接后,若判断所述tn+2时刻帧图像中未包含有所述移动目标,则结束对所述剪裁图像的拼接。

11.一种固定视场中的图像拼接装置,其特征在于,包括:图像序列获取模块,用于获取图像序列,所述图像序列至少包括包含有移动目标的多个帧图像;

拼接位置设定模块,用于确定多个所述帧图像中的同一位置为拼接位置;

前景确定模块,用于分别确定tn时刻帧图像和tn+1时刻帧图像中所述移动目标的前景;

上下文特征提取模块,用于对所述前景处的图像区域进行上下文特征提取,其中,包括对所述前景处的图像区域内的多种上下文特征进行提取;

移动距离计算模块,用于根据所述上下文特征确定所述移动目标在所述tn时刻帧图像和所述tn+1时刻帧图像间的移动距离,其中,包括对所述tn时刻帧图像的多种上下文特征的组合和所述tn+1时刻帧图像的多种上下文特征的组合进行特征匹配,获得特征匹配对;根据所述特征匹配对在所述tn时刻帧图像和所述tn+1时刻帧图像中的坐标信息计算所述移动目标在所述tn时刻帧图像和所述tn+1时刻帧图像间的移动距离;

剪裁模块,用于根据所述移动距离和所述拼接位置分别对所述tn时刻帧图像和所述tn+1时刻帧图像进行剪裁,获得剪裁图像;

拼接模块,对所述剪裁图像进行拼接。

12.根据权利要求11所述的固定视场中的图像拼接装置,其特征在于,还包括:背景图像获取模块,用于获取帧图像中的背景图像;

混合高斯建模模块,用于对所述背景图像和所述tn时刻帧图像分别进行混合高斯建模;

移动目标判断模块,用于根据所述背景图像的混合高斯模型和所述tn时刻帧图像的混合高斯模型的比对结果,判断所述tn时刻帧图像中是否包含移动目标。

13.根据权利要求11所述的固定视场中的图像拼接装置,其特征在于,还包括:视频处理模块,用于获取待拼接的视频,并对所述视频进行解码处理。

14.根据权利要求11所述的固定视场中的图像拼接装置,其特征在于,还包括:混合高斯模型更新模块,用于在判断所述tn时刻帧图像中未包含移动目标时,将所述tn时刻帧图像的混合高斯模型更新为背景图像的混合高斯模型。

15.一种固定视场中的图像拼接系统,其特征在于,包括:权利要求11‑14中任一项所述的固定视场中的图像拼接装置;

图像采集设备,用以采集并形成包含有移动目标的视频,以及采集图像背景。

16.一种电子设备,包括:

一个或多个处理器;

存储装置,用于存储一个或多个程序,

其中,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器执行根据权利要求1~10中任一项所述的方法。

17.一种计算机可读存储介质,其上存储有可执行指令,该指令被处理器执行时使处理器执行根据权利要求1~10中任一项所述的方法。

说明书 :

固定视场中的图像拼接方法、装置、系统

技术领域

[0001] 本公开涉及图像处理技术领域,更具体地,涉及一种固定视场中的图像拼接方法、装置、系统、电子设备、存储介质和程序产品。

背景技术

[0002] 广义的图像拼接就是将数张有重叠部分的静态图像(可能是不同时间,不同视角或不同传感器获得的)拼成一副无缝的全景图或高分辨率图像。现有的图像拼接技术一般包含图像配准和图像融合两个关键技术。其中图像配准是指采用图像处理方法计算带拼接图像间的匹配关系,得到重叠区域,实现图像的拼接。图像融合则是实现拼接后图像在拼接处的平滑过渡。
[0003] 但是,当相机或其他拍摄设备的视场固定且拼接对象为场景中的移动目标(例如,拼接正在行驶的大型交通工具、拼接传送带上传送的物体等)时,对于现有的拼接方式,由于待拼接图像中存在视场相同的背景,当使用特征匹配时,会导致错误的图像配准,从而得到错误的拼接结果。

发明内容

[0004] 有鉴于此,本公开的实施例提供了一种图像拼接方法、装置、系统、电子设备、存储介质和程序产品。
[0005] 本公开的一个方面提供了一种固定视场中的图像拼接方法,包括:获取图像序列,所述图像序列至少包括包含有移动目标的多个帧图像;确定多个所述帧图像中的同一位置为拼接位置;分别确定tn时刻帧图像和tn+1时刻帧图像中所述移动目标的前景,并对所述前景处的图像区域进行上下文特征提取;根据所述上下文特征确定所述移动目标在所述tn时刻帧图像和所述tn+1时刻帧图像间的移动距离;根据所述移动距离和所述拼接位置分别对所述tn时刻帧图像和所述tn+1时刻帧图像进行剪裁,获得剪裁图像;对所述剪裁图像进行拼接。
[0006] 在某些实施例中,在分别确定tn时刻帧图像和tn+1时刻帧图像中所述移动目标的前景之前,还包括:获取帧图像中的背景图像;对所述背景图像和所述tn时刻帧图像分别进行混合高斯建模;根据所述背景图像的混合高斯模型和所述tn时刻帧图像的混合高斯模型的比对结果,判断所述tn时刻帧图像中是否包含移动目标。
[0007] 在某些实施例中,在判断所述tn时刻帧图像中未包含移动目标时,将所述tn时刻帧图像的混合高斯模型更新为所述背景图像的混合高斯模型。
[0008] 在某些实施例中,所述确定多个所述帧图像中的同一位置为拼接位置包括:将所述帧图像的行或者列设置为所述拼接位置,所述拼接位置满足:在所述移动目标的运动方向上,所述拼接位置位于tm时刻帧图像中的移动目标的前方,所述tm时刻帧图像为第一次包含有所述移动目标的帧图像,m为正整数且m小于等于n。
[0009] 在某些实施例中,所述根据所述上下文特征确定所述移动目标在所述tn时刻帧图像和所述tn+1时刻帧图像间的移动距离包括:对所述tn时刻帧图像的上下文特征和所述tn+1时刻帧图像的上下文特征进行特征匹配,并获得所述特征匹配对;根据所述特征匹配对在所述tn时刻帧图像和所述tn+1时刻帧图像中的坐标信息计算所述移动目标在所述tn时刻帧图像和所述tn+1时刻帧图像间的移动距离。
[0010] 在某些实施例中,所述对所述前景处的图像区域进行上下文特征提取包括:对所述前景处的图像区域内的多种上下文特征进行提取;所述对所述tn时刻帧图像的上下文特征和所述tn+1时刻帧图像的上下文特征进行特征匹配包括:对所述tn时刻帧图像的多种上下文特征的组合和所述tn+1时刻帧图像的多种上下文特征的组合进行特征匹配。
[0011] 在某些实施例中,所述根据所述特征匹配对在所述tn时刻帧图像和所述tn+1时刻帧图像中的坐标信息计算所述移动目标在所述tn时刻帧图像和所述tn+1时刻帧图像间的移动距离包括:根据所述多个所述特征匹配对的坐标信息的平均绝对差或者绝对差的中间值计算所述移动距离。
[0012] 在某些实施例中,至少一个所述上下文特征与采集所述图像序列的设备的工作模式和/或所述设备的工作环境相关。
[0013] 在某些实施例中,所述根据所述移动距离和所述拼接位置分别对所述tn时刻帧图像和所述tn+1时刻帧图像进行剪裁包括:确定剪裁区域,所述剪裁区域为以所述拼接位置处为剪裁起点,以所述剪裁起点沿所述移动目标的相反运动方向划定长度为所述移动距离的区域。
[0014] 在某些实施例中,所述获取所述图像序列包括:获取待拼接的视频,对所述视频解码后获得所述图像序列。
[0015] 在某些实施例中,所述分别确定tn时刻帧图像和tn+1时刻帧图像中所述移动目标的前景包括:采用形态学方法确定tn时刻帧图像和tn+1时刻帧图像中所述移动目标的前景。
[0016] 在某些实施例中,在所述对所述剪裁图像进行拼接后,若判断所述tn+2时刻帧图像中未包含有所述移动目标,则结束对所述剪裁图像的拼接。
[0017] 本公开的另一个方面提供了一种固定视场中的图像拼接装置,包括:图像序列获取模块,用于获取图像序列,所述图像序列至少包括包含有移动目标的多个帧图像;拼接位置设定模块,用于确定多个所述帧图像中的同一位置为拼接位置;前景确定模块,用于分别确定tn时刻帧图像和tn+1时刻帧图像中所述移动目标的前景;上下文特征提取模块,用于对所述前景处的图像区域进行上下文特征提取;移动距离计算模块,用于根据所述上下文特征确定所述移动目标在所述tn时刻帧图像和所述tn+1时刻帧图像间的移动距离;剪裁模块,用于根据所述移动距离和所述拼接位置分别对所述tn时刻帧图像和所述tn+1时刻帧图像进行剪裁,获得剪裁图像;拼接模块,对所述剪裁图像进行拼接。
[0018] 在某些实施例中,还包括:背景图像获取模块,用于获取帧图像中的背景图像;混合高斯建模模块,用于对所述背景图像和所述tn时刻帧图像分别进行混合高斯建模;移动目标判断模块,用于根据所述背景图像的混合高斯模型和所述tn时刻帧图像的混合高斯模型的比对结果,判断所述tn时刻帧图像中是否包含移动目标。
[0019] 在某些实施例中,还包括:特征匹配模块,用于对所述tn时刻帧图像的上下文特征和所述tn+1时刻帧图像的上下文特征进行特征匹配,并获得所述特征匹配对。
[0020] 在某些实施例中,还包括:视频处理模块,用于获取待拼接的视频,对所述视频进行解码处理。
[0021] 在某些实施例中,还包括:混合高斯模型更新模块,用于在判断所述tn时刻帧图像中未包含移动目标时,将所述tn时刻帧图像的混合高斯模型更新为所述背景图像的混合高斯模型。
[0022] 本公开的另一个方面还提供了一种固定视场中的图像拼接系统,包括:上述中任一项所述的固定视场中的图像拼接装置,以及图像采集设备,用以采集并形成包含有移动目标的视频以及采集图像背景。
[0023] 本公开的另一个方面还提供了一种电子设备,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,其中,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器执行上述中任一项所述的方法。
[0024] 本公开的另一个方面还提供了一种计算机可读存储介质,其上存储有可执行指令,该指令被处理器执行时使处理器执行上述中任一项所述的方法。
[0025] 本公开的另一个方面还提供了一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现上述中任一项所述的方法。
[0026] 根据本公开实施例的图像拼接方法包括获取图像序列,图像序列至少包括包含有移动目标的多个帧图像;确定多个帧图像中的同一位置为拼接位置;分别确定tn时刻帧图像和tn+1时刻帧图像中移动目标的前景,并对前景处的图像区域进行上下文特征提取;根据上下文特征确定移动目标在tn时刻帧图像和tn+1时刻帧图像间的移动距离;根据移动距离和拼接位置分别对tn时刻帧图像和tn+1时刻帧图像进行剪裁,获得剪裁图像;对剪裁图像进行拼接。本公开的方法中通过比对上下文特征确定出移动物体在相邻帧图像间的移动距离,根据移动距离以及设定的拼接位置,实现对帧图像的剪裁以获得移动目标的部分,每剪裁一次获取移动目标的部分图像,最终通过将所有帧图像中剪裁下来的区域进行拼接,即可实现对移动目标的全景显示。

附图说明

[0027] 通过以下参照附图对本公开实施例的描述,本公开的上述以及其他目的、特征和优点将更为清楚,在附图中:
[0028] 图1示意性示出了根据本公开实施例的固定视场中移动目标的拼接方法的流程图;
[0029] 图2示意性示出了根据本公开实施例的固定视场中移动目标的拼接方法另一实施方式的流程图;
[0030] 图3示意性示出了根据本公开实施例的固定视场中移动目标的拼接方法另一实施方式的流程图;
[0031] 图4示意性示出了根据本公开实施例的固定视场中移动目标的拼接方法另一实施方式的流程图;
[0032] 图5示意性示出了根据本公开实施例的移动目标tn时刻帧图像的示意图;
[0033] 图6示意性示出了根据本公开实施例中移动目标tn+1时刻帧图像的示意图;
[0034] 图7示意性示出了根据本公开实施例中移动目标tn+2时刻帧图像的示意图;
[0035] 图8示意性示出了根据本公开实施例的固定视场中移动目标的拼接装置的结构框图;
[0036] 图9示意性示出了根据本公开实施例的适于实现固定视场中移动目标的拼接方法的电子设备的方框图。

具体实施方式

[0037] 以下,将参照附图来描述本公开的实施例。但是应该理解,这些描述只是示例性的,而并非要限制本公开的范围。在下面的详细描述中,为便于解释,阐述了许多具体的细节以提供对本公开实施例的全面理解。然而,明显地,一个或多个实施例在没有这些具体细节的情况下也可以被实施。此外,在以下说明中,省略了对公知结构和技术的描述,以避免不必要地混淆本公开的概念。
[0038] 在此使用的术语仅仅是为了描述具体实施例,而并非意在限制本公开。在此使用的术语“包括”、“包含”等表明了所述特征、步骤、操作和/或部件的存在,但是并不排除存在或添加一个或多个其他特征、步骤、操作或部件。
[0039] 在使用类似于“A、B或C等中至少一个”这样的表述的情况下,一般来说应该按照本领域技术人员通常理解该表述的含义来予以解释(例如,“具有A、B或C中至少一个的系统”应包括但不限于单独具有A、单独具有B、单独具有C、具有A和B、具有A和C、具有B和C、和/或具有A、B、C的系统等)。术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个所述特征。
[0040] 详细的背景技术,可以包括除独权解决的技术问题之外的其它技术问题。
[0041] 本公开的实施例中提供了一种固定视场中的图像拼接方法包括获取图像序列,图像序列至少包括包含有移动目标的多个帧图像;确定多个帧图像中的同一位置为拼接位置;分别确定tn时刻帧图像和tn+1时刻帧图像中移动目标的前景,并对前景处的图像区域进行上下文特征提取;根据上下文特征确定移动目标在tn时刻帧图像和tn+1时刻帧图像间的移动距离;根据移动距离和拼接位置分别对tn时刻帧图像和tn+1时刻帧图像进行剪裁,获得剪裁图像;对剪裁图像进行拼接。
[0042] 本公开的实施例中的图像拼接方法适用于在固定视场环境下,拼接出固定视场中移动物体的全景图像,特别适用于,移动物体的体积较大,固定视场的取像范围无法对移动物体的整体直接进行成像的场景。
[0043] 需要说明的是,本公开实施例中的移动目标可以为固定视场中需要拍摄的移动物体。
[0044] 图1示意性示出了根据本公开实施例的固定视场中的图像拼接方法的应用场景图。
[0045] 如图1所示,根据该实施例的应用场景100可以包括存储设备101、102、103。网络104用以在存储设备101、102、103和服务器105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
[0046] 用户可以使用存储设备101、102、103通过网络104与服务器105交互,以将图像序列上传到服务器105上,供服务器105处理。
[0047] 存储设备101、102、103可以是具有显示屏的各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机和台式计算机等等。
[0048] 服务器105可以是针对图像序列进行上下文特征识别、特征匹配、图像剪裁、图像拼接融合的服务器。
[0049] 需要说明的是,本公开实施例所提供的固定视场中移动目标的拼接方法一般可以由服务器105执行。相应地,本公开实施例所提供的固定视场中移动目标的拼接装置一般可以设置于服务器105中。本公开实施例所提供的固定视场中移动目标的拼接方法也可以由不同于服务器105且能够与存储设备101、102、103和/或服务器105通信的服务器或服务器集群执行。相应地,本公开实施例所提供的固定视场中移动目标的拼接系统也可以设置于不同于服务器105且能够与存储设备101、102、103和/或服务器105通信的服务器或服务器集群中。
[0050] 应该理解,图1中的存储设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。
[0051] 以下将基于图1描述的场景,通过图2~图7对本公开实施例的固定视场中移动目标的拼接方法进行详细描述。
[0052] 图2示意性示出了根据本公开实施例的固定视场中移动目标的拼接方法的流程图。
[0053] 如图2所示,该实施例的固定视场中移动目标的拼接方法包括操作S210~操作S260。
[0054] 在操作210,获取图像序列,所述图像序列至少包括包含有移动目标在运动时刻t下的多个帧图像。
[0055] 本公开的实施例中的图像序列可以包括在不同时间移动目标依序连续获取的系列图像,还可以包括对包含有移动目标的视频、动画等进行处理后得到的多个帧图像。在本公开的实施例的应用场景中,移动目标在固定视场中运动,相应地,上述图像序列至少包括移动目标开始进入固定视场以及到完全脱离固定视场整个运动过程所产生的视频,并对上述视频进行解析处理后得到的以运动时刻t为轴线所对应产生的多张帧图像。
[0056] 结合本公开实施例的应用场景,如港口处对大型集装箱的安检场景,固定视场中的拍摄装置在工作时间内会保持工作状态,但是固定视场中不会每时每刻均有移动目标在运动,所以,图像序列中还可包括未包含有移动目标的帧图像。
[0057] 本公开的实施例中的获取图像序列的方式可包括:获取包含有待拼接移动目标的视频,对上述视频进行解码处理,得到多个帧图像。
[0058] 所述视频可以包括固定视场中的摄像机等拍摄的离线视频文件,可以包括用户上传到网上的在线视频文件,视频文件的格式可以包括但不限于MPEG、AVI、MOV、WMV等通用视频格式,解码得到的帧图像的格式可以包括但不限于PNG、BMP或JPG等通用图像格式。
[0059] 本公开的实施例中的对视频解码处理可采用相关的第三方软件,如photoshop、Adobe Premiere等软件中的帧图像处理功能实现。
[0060] 可以理解,在对视频进行解码处理时,可通过控制帧图像的帧数以保证具有移动目标的相邻帧之间具有重复的部分,使得本公开实施例提供的方法中存在图像拼接的基础。
[0061] 需要说明的是,对视频解码处理得到的帧图像以移动目标的运动时刻t进行命名,以便于理解和阐述本公开实施例的技术构思。示例性地,t0时刻帧图像到tn时刻帧图像,下述中为了表示帧图像中某些具有特殊含义或者作用的帧图像,将其命名为tm时刻帧图像,以加以更好地区分说明。
[0062] 在操作S220,确定多个所述帧图像中的同一位置为拼接位置。
[0063] 本公开的实施例中获取到的帧图像是固定视场下的图像,相应地,固定视场所对应产生的背景图像的大小是相同的。参见图5到图7所示,背景图像为包括a1到a18列,b1到b14行的像素区域。本实施例中以a9列为上述的拼接位置,拼接位置的确定以方便后续图像的剪裁和拼接。
[0064] 可以理解,不同的视场,对应的背景图像的像素区域的尺寸不同。
[0065] 可以理解,拼接位置还可以是像素区域中的行像素,或者包含多个行或者列像素的折线型拼接线。
[0066] 为了进一步优化拼接出来的移动目标的完整性,在对拼接位置进行设定时,还需要满足下述条件:
[0067] 在所述移动目标的运动方向上,所述拼接位置位于tm时刻帧图像中的移动目标的前方,所述tm时刻帧图像为第一次包含有所述移动目标的帧图像,m为正整数且m小于等于n。
[0068] 参见图5所示,图5中水平方向的箭头标识出移动目标的运动方向,假设当前的tn时刻为上述中的tm时刻帧图像,假设移动目标由c1、c2、c3等部分组成,为了图示的更消楚,避免更多的重叠,本实施例中仅在附图中显示移动目标的c1和c2部分。在tm时刻下,移动目标第一次进入到固定视场中,此时需要保证设定的拼接位置在c1的左边,此种设置的目的在于,当tm时刻的帧图像中,拼接位置若是和移动目标存在交叉,在后续的图像剪裁时,会导致位于拼接位置左侧的移动目标的无法被剪裁到,导致图像拼接时,无法显示出移动目标的全景图像。
[0069] 在操作S230,分别确定tn时刻帧图像和tn+1时刻帧图像中所述移动目标的前景,并对所述前景处的图像区域进行上下文特征提取。
[0070] 本公开的实施例中,采用形态学方法确定tn时刻帧图像和tn+1时刻帧图像中所述移动目标的前景。将背景图像和移动目标的前景采用形态学中的开运算,即对背景图像和前景形成的二值图像先腐蚀再膨胀以对帧图像进行降噪处理,进而更好地在背景图像中区分出前景。
[0071] 本公开的实施例中的上下文特征可以包括SIFT特征、HOG特征等。本公开的实施例中SIFT特征提取方法可以包括以下操作:
[0072] 构建DOG空间;
[0073] 提取兴趣点(interest points),找到所有特征点后,用拐角点(cornerpoints)做识别,对离散点用RANSAC做曲线拟合,得到精确的关键点的位置和尺度信息;
[0074] 方向赋值,根据检测到的关键点的局部图像结构为特征点赋值,可采用梯度方向直方图的方法,在计算直方图时,每个加入直方图的采样点都使用圆形高斯函数进行加权处理。
[0075] 可以理解,在对上下文特征进行提取时,可提取多种上下文特征,以通过后续操作对多种组合的上下文特征的比对,实现更加精确的剪裁区域,以方便拼接。示例性地,同时提取上述中的SIFT特征和HOG特征,以进一步减弱外界环境如光照等对图像拼接的影响。
[0076] 可以理解,在提取上下文特征时,需保证至少一个所述上下文特征与采集所述图像序列的设备的工作模式和/或所述设备的工作环境相关,以降低设备的工作模式和工作环境(例如白天检测和夜晚检测等)对图像拼接的影响。
[0077] 需要说明的是,在采用形态学方法确定tn时刻帧图像和tn+1时刻帧图像中所述移动目标的前景前还需要进行如下操作。
[0078] 图3示意性示出了根据本公开实施例中的固定视场中移动目标的拼接方法的又一实施例的流程图,包括操作S201到操作S203。
[0079] 在操作S201,获取帧图像中的背景图像。
[0080] 背景图像为不包含有移动目标的图像。例如,可以通过拍照设备对固定视场未包含有移动目标时进行拍照,以获取所述背景图像。
[0081] 在操作S202,对所述背景图像和所述tn时刻帧图像分别进行混合高斯建模。
[0082] 在操作S203,根据所述背景图像的混合高斯模型和所述tn时刻帧图像的混合高斯模型的比对结果,判断所述tn时刻帧图像中是否包含移动目标。混合高斯模型中使用K个高斯模型来表征帧图像中各个像素点的特征,K通常取值3到5。在进行判断时,通过将tn时刻帧图像中的每个像素点与背景图像的混合高斯模型匹配,若匹配成功,则说明该像素点是背景,若匹配不成功,则说明该像素点为前景。在判断出tn时刻帧图像中包含移动目标后,再采用上述的基于形态学的方法对帧图像中的前景进一步降噪优化处理。
[0083] 背景图像的采集易受到外界环境的影响,如光照、拍摄角度、距离等均会导致背景图像的混合高斯模型发生变化,可以理解,采用高斯混合建模是为了在背景图像中更好地区分出来移动目标,故参见图4所示,在操作S2031,在判断所述tn时刻帧图像中未包含移动目标时,将所述tn时刻帧图像的混合高斯模型更新为所述背景图像的混合高斯模型,以保证背景图像尽可能的接近tn时刻帧图像中的背景图像。
[0084] 返回参照图2,在操作S240,根据所述上下文特征确定所述移动目标在所述tn时刻帧图像和所述tn+1时刻帧图像间的移动距离。
[0085] 本公开的实施例中,对所述tn时刻帧图像的上下文特征和所述tn+1时刻帧图像的上下文特征进行特征匹配,并获得所述特征匹配对;根据所述特征匹配对在所述tn时刻帧图像和所述tn+1时刻帧图像中的坐标信息计算所述移动目标在所述tn时刻帧图像和所述tn+1时刻帧图像间的移动距离。以上下文特征中的SIFT特征为示例,分别对tn时刻帧图像和tn+1时刻帧图像中移动目标上的SIFT特征进行提取,通过特征描述确定移动目标的相同部分在tn时刻帧图像和所述tn+1时刻帧图像分别对应的SIFT特征,故在不同的帧图像中描述移动物体相同部分的SIFT特征构建成特征匹配对,通过分别获取特征匹配对在帧图像中的像素区域的坐标位置,如在tn时刻帧图像中特征匹配对的一方的坐标为像素区域中的a13列,在tn+1时刻帧图像中特征匹配对的另一方的坐标为像素区域中的a9列,则可以计算出移动目标在tn时刻帧图像和tn+1时刻帧图像间的移动距离为四列像素单元的长度。
[0086] 可以理解,在对同一种上下文特征进行提取时,可对移动目标上的多处位置进行特征提取,进而得到多个特征匹配对,可根据多个特征匹配的坐标信息的平均绝对差或者绝对差的中间值计算所述移动距离,以提高移动距离计算的精确度。
[0087] 可以理解,在对多种上下文特征进行提取时,可对移动目标上的多处位置进行不同的特征提取,进而得到多个不同特征匹配对,可根据多个不同特征匹配的坐标信息的平均绝对差或者绝对差的中间值计算所述移动距离,以提高移动距离计算的精确度。
[0088] 在操作S250,根据所述移动距离和所述拼接位置分别对所述tn时刻帧图像和所述tn+1时刻帧图像进行剪裁,获得剪裁图像。
[0089] 例如,在该操作S250中,可以确定剪裁区域,所述剪裁区域为以所述拼接位置处为剪裁起点,以所述剪裁起点沿所述移动目标的运动方向相反的方向划定长度为所述移动距离的区域。参见图5至图7,移动目标的运动方向为在图面中从右向左的方向。图中的a9列位置处表示在操作S220中所阐述的拼接位置。在图5中的tn时刻,移动目标的c1部分的前端运动到像素区域的a13列,在图6中的tn+1时刻,移动目标的c1部分的前端运动到像素区域的a9列,采用上述的上下文特征计算移动距离的方法,可计算出移动距离为四个列像素单元的长度,以确定剪裁区域的方法进行区域划定可得到如图6中的水平双向箭头所指示的区域,即为剪裁区域。此剪裁区域至少适用tn时刻帧图像和tn+1时刻帧图像。在tn时刻帧图像中进行剪裁得到的是不含有移动目标的空白区域,在tn+1时刻帧图像中进行剪裁得到是图6中所示的移动目标的阴影部分。依照此方式可同样对tn+2时刻帧图像进行剪裁,得到如图7中所示的移动目标的阴影部分。
[0090] 在操作S260,对所述剪裁图像进行拼接。
[0091] 以上述中图5和图7进行示例说明,通过将剪裁区域中的移动目标进行拼接可得到移动目标上的完整c1和c2部分,即将图5中剪裁下来的空白区域、图6和图7中的移动目标的阴影部分进行拼接。在剪裁区域拼接时,以图5中的a9位置为起点,以图5中的a13处与图6中的a9处对接以实现两个剪裁区域的拼接,后续拼接方式依次类推,不再赘述。
[0092] 可以理解地,剪裁区域的拼接,可在所述剪裁区域均得到后,在按照上述规则进行拼接,或者每获取到一个剪裁区域,就执行一次拼接操作。
[0093] 在操作S260之后,在对tn+2时刻帧图像进行是否含有移动目标的判断时,若tn+2时刻帧图像中未包含有移动目标,则可结束对图像拼接的整个方法,说明图像的拼接操作已经完成,直到再次检测到新的移动目标时,在循环执行本方法。
[0094] 基于上述固定视场中移动目标的拼接方法,本公开的实施例还提供了一种固定视场中移动目标的拼接装置。以下将结合图8对该装置进行详细描述。
[0095] 图8示意性示出了根据本公开实施例的固定视场中移动目标的拼接装置的结构框图。
[0096] 如图8所示,拼接装置300包括图像序列获取模块301,拼接位置设定模块302,前景确定模块303,上下文特征提取模块304,移动距离计算模块305,剪裁模块306,拼接模块307。
[0097] 图像序列获取模块301,用于获取图像序列,所述图像序列至少包括包含有移动目标在运动时刻t下的多个帧图像。
[0098] 拼接位置设定模块302,用于确定多个所述帧图像中的同一位置为拼接位置。
[0099] 前景确定模块303,用于分别确定tn时刻帧图像和tn+1时刻帧图像中所述移动目标的前景。
[0100] 上下文特征提取模块304,用于对所述前景处的图像区域进行上下文特征提取。
[0101] 移动距离计算模块305,用于根据所述上下文特征确定所述移动目标在所述tn时刻帧图像和所述tn+1时刻帧图像间的移动距离。
[0102] 剪裁模块306,用于根据所述移动距离和所述拼接位置分别对所述tn时刻帧图像和所述tn+1时刻帧图像进行剪裁,获得剪裁图像。
[0103] 拼接模块307,用于对所述剪裁图像进行拼接。
[0104] 例如,根据本公开实施例的固定视场中移动目标的拼接装置还包括背景图像获取模块,用于获取帧图像中的背景图像;混合高斯建模模块,用于对所述背景图像和所述tn时刻帧图像分别进行混合高斯建模;移动目标判断模块,用于根据所述背景图像的混合高斯模型和所述tn时刻帧图像的混合高斯模型的比对结果,判断所述tn时刻帧图像中是否包含移动目标。
[0105] 例如,根据本公开实施例的固定视场中移动目标的拼接装置还包括特征匹配模块,用于对所述tn时刻帧图像的上下文特征和所述tn+1时刻帧图像的上下文特征进行特征匹配,并获得所述特征匹配对。
[0106] 例如,根据本公开实施例的固定视场中移动目标的拼接装置还包括:视频处理模块,用于获取待拼接的视频,对所述视频进行解码处理。
[0107] 例如,根据本公开实施例的固定视场中移动目标的拼接装置还包括混合高斯模型更新模块,用于在判断所述tn时刻帧图像中未包含移动目标时,将所述tn时刻帧图像的混合高斯模型更新为所述背景图像的混合高斯模型。
[0108] 在本公开的实施例中,获取图像序列,图像序列至少包括包含有移动目标的多个帧图像;确定多个帧图像中的同一位置为拼接位置;分别确定tn时刻帧图像和tn+1时刻帧图像中移动目标的前景,并对前景处的图像区域进行上下文特征提取;根据上下文特征确定移动目标在tn时刻帧图像和tn+1时刻帧图像间的移动距离;根据移动距离和拼接位置分别对tn时刻帧图像和tn+1时刻帧图像进行剪裁,获得剪裁图像;对剪裁图像进行拼接。通过比对上下文特征确定出移动物体在相邻帧图像间的移动距离,根据移动距离以及设定的拼接位置,实现对帧图像的剪裁以获得移动目标的部分,每剪裁一次获取移动目标的部分图像,最终通过将所有帧图像中剪裁下来的区域进行拼接,即可实现对移动目标的全景显示。
[0109] 根据本公开的实施例,图像序列获取模块301,拼接位置设定模块302,前景确定模块303,上下文特征提取模块304,移动距离计算模块305,剪裁模块306,拼接模块307中的任意多个模块可以合并在一个模块中实现,或者其中的任意一个模块可以被拆分成多个模块。或者,这些模块中的一个或多个模块的至少部分功能可以与其他模块的至少部分功能相结合,并在一个模块中实现。根据本公开的实施例,图像序列获取模块301,拼接位置设定模块302,前景确定模块303,上下文特征提取模块304,移动距离计算模块305,剪裁模块306,拼接模块307中的至少一个可以至少被部分地实现为硬件电路,例如现场可编程门阵列(FPGA)、可编程逻辑阵列(PLA)、片上系统、基板上的系统、封装上的系统、专用集成电路(ASIC),或可以通过对电路进行集成或封装的任何其他的合理方式等硬件或固件来实现,或以软件、硬件以及固件三种实现方式中任意一种或以其中任意几种的适当组合来实现。
或者,图像序列获取模块301,拼接位置设定模块302,前景确定模块303,上下文特征提取模块304,移动距离计算模块305,剪裁模块306,拼接模块307中的至少一个可以至少被部分地实现为计算机程序模块,当该计算机程序模块被运行时,可以执行相应的功能。
[0110] 本公开的实施例还提供了一种固定视场中移动目标的拼接系统,上述中实施例中的固定视场中的图像拼接装置,以及图像采集设备,用以采集并形成包含有移动目标的视频,以及采集图像背景。
[0111] 图9示意性示出了根据本公开实施例的适于实现固定视场中移动目标的拼接方法的电子设备的方框图。
[0112] 如图9所示,根据本公开实施例的电子设备400包括处理器401,其可以根据存储在只读存储器(ROM)402中的程序或者从存储部分408加载到随机访问存储器(RAM)403中的程序而执行各种适当的动作和处理。处理器401例如可以包括通用微处理器(例如CPU)、指令集处理器和/或相关芯片组和/或专用微处理器(例如,专用集成电路(ASIC))等等。处理器401还可以包括用于缓存用途的板载存储器。处理器401可以包括用于执行根据本公开实施例的方法流程的不同动作的单一处理单元或者是多个处理单元。
[0113] 在RAM 403中,存储有电子设备400操作所需的各种程序和数据。处理器401、ROM 402以及RAM 403通过总线404彼此相连。处理器401通过执行ROM 402和/或RAM 403中的程序来执行根据本公开实施例的方法流程的各种操作。需要注意,所述程序也可以存储在除ROM 402和RAM 403以外的一个或多个存储器中。处理器401也可以通过执行存储在所述一个或多个存储器中的程序来执行根据本公开实施例的方法流程的各种操作。
[0114] 根据本公开的实施例,电子设备400还可以包括输入/输出(I/O)接口405,输入/输出(I/O)接口405也连接至总线404。电子设备400还可以包括连接至I/O接口405的以下部件中的一项或多项:包括键盘、鼠标等的输入部分406;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分407;包括硬盘等的存储部分408;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分409。通信部分409经由诸如因特网的网络执行通信处理。驱动器410也根据需要连接至I/O接口405。可拆卸介质411,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器410上,以便于从其上读出的计算机程序根据需要被安装入存储部分408。
[0115] 本公开还提供了一种计算机可读存储介质,该计算机可读存储介质可以是上述实施例中描述的设备/装置/系统中所包含的;也可以是单独存在,而未装配入该设备/装置/系统中。上述计算机可读存储介质承载有一个或者多个程序,当上述一个或者多个程序被执行时,实现根据本公开实施例的方法。
[0116] 根据本公开的实施例,计算机可读存储介质可以是非易失性的计算机可读存储介质,例如可以包括但不限于:便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、便携式紧凑磁盘只读存储器(CD‑ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开的实施例中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。例如,根据本公开的实施例,计算机可读存储介质可以包括上文描述的ROM 402和/或RAM 403和/或ROM 402和RAM 403以外的一个或多个存储器。
[0117] 本公开的实施例还包括一种计算机程序产品,其包括计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。当计算机程序产品在计算机系统中运行时,该程序代码用于使计算机系统实现本公开实施例所提供的物品推荐方法。
[0118] 在该计算机程序被处理器401执行时执行本公开实施例的系统/装置中限定的上述功能。根据本公开的实施例,上文描述的系统、装置、模块、单元等可以通过计算机程序模块来实现。
[0119] 在一种实施例中,该计算机程序可以依托于光存储器件、磁存储器件等有形存储介质。在另一种实施例中,该计算机程序也可以在网络介质上以信号的形式进行传输、分发,并通过通信部分409被下载和安装,和/或从可拆卸介质411被安装。该计算机程序包含的程序代码可以用任何适当的网络介质传输,包括但不限于:无线、有线等等,或者上述的任意合适的组合。
[0120] 在这样的实施例中,该计算机程序可以通过通信部分409从网络上被下载和安装,和/或从可拆卸介质411被安装。在该计算机程序被处理器401执行时,执行本公开实施例的系统中限定的上述功能。根据本公开的实施例,上文描述的系统、设备、装置、模块、单元等可以通过计算机程序模块来实现。
[0121] 根据本公开的实施例,可以以一种或多种程序设计语言的任意组合来编写用于执行本公开实施例提供的计算机程序的程序代码,具体地,可以利用高级过程和/或面向对象的编程语言、和/或汇编/机器语言来实施这些计算程序。程序设计语言包括但不限于诸如Java,C++,python,“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
[0122] 附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
[0123] 本领域技术人员可以理解,本公开的各个实施例和/或权利要求中记载的特征可以进行多种组合和/或结合,即使这样的组合或结合没有明确记载于本公开的实施例中。特别地,在不脱离本公开精神和教导的情况下,本公开的各个实施例和/或权利要求中记载的特征可以进行多种组合和/或结合。所有这些组合和/或结合均落入本公开的范围。
[0124] 以上对本公开的实施例进行了描述。但是,这些实施例仅仅是为了说明的目的,而并非为了限制本公开的范围。尽管在以上分别描述了各实施例,但是这并不意味着各个实施例中的措施不能有利地结合使用。本公开的范围由所附权利要求及其等同物限定。不脱离本公开的范围,本领域技术人员可以做出多种替代和修改,这些替代和修改都应落在本公开的范围之内。