实时实现图像特效显示的方法
技术领域
本发明实施例涉及视频处理技术领域,具体涉及一种实时实现图像特效显示的方法。
背景技术
图像的特效显示是把图像以一定连贯的顺序分部分的输出到显示区域,在输出的过程中加入一定的控制,在人眼的视觉中产生一个连续变幻并逐渐形成一幅完整图像的效果。现有技术在实现图像的特效显示时,将显示设备固定在机械装置上,当机械装置进行横向、纵向移动并同时进行360°任意角度旋转的时候,通过有关软件对视频源进行预处理,按照机械装置预先设定的运动轨迹,将视频源处理成符合该运动轨迹的图像,使得机械装置在运行起来之后而显示设备输出的图像保持稳定。
然而,这种产生特效显示的方式需要更换视频源,或者在重新设定机械装置的运动轨迹时,需要对视频源进行重新处理,由此,会导致处理时间长而且成本高。
有鉴于此,特提出本发明。
发明内容
鉴于上述问题,提出了本发明以便提供一种至少部分地解决上述问题的一种实时实现图像特效显示的方法。
为了实现上述目的,根据本发明的一个方面,提供了以下技术方案:
一种实时实现图像特效显示的方法,用于视频拼接器,所述视频拼接器连接显示设备,所述方法可以包括:
确定所述显示设备的物理参数,并实时获取所述显示设备的移动轨迹;
根据所述显示设备的物理参数和所述移动轨迹,确定输出视频图像的长度、宽度及旋转角度;
基于所述输出视频图像的所述长度、所述宽度、所述旋转角度以及所述显示设备的所述移动轨迹,保持所述输出视频图像与所述显示设备的同步,从而实现相对于人眼而言的所述输出视频图像稳定而所述显示设备运动的图像特效。
较佳地,所述物理参数包括所述显示设备中心点的坐标及所述显示设备的长度和宽度;
所述根据所述显示设备的物理参数和所述移动轨迹,确定输出视频图像的长度、宽度及旋转角度,具体包括:
根据所述显示设备的所述移动轨迹确定一外接矩形;
根据所述输入视频源图像在二维坐标系中原点的位置设定所述外接矩形在所述二维坐标系中的原点;
根据所述输入视频源的分辨率和所述外接矩形在所述二维坐标系中的所述原点,按照所述显示设备的所述长度和所述宽度从所述输入视频源图像上截取视频图像,并计算截取的视频图像在横向和纵向上的像素数量;
根据所述显示设备中心点的坐标、所述输入视频源的分辨率以及所述外接矩形的长度和宽度,计算所述截取的视频图像的中心点坐标;
基于所述截取的视频图像的所述中心点坐标以及所述截取的视频图像在横向和纵向上的像素数量,计算所述输出视频图像的长度、宽度及旋转角度。
较佳地,所述输入视频源的分辨率为1920×1080;
所述根据所述输入视频源的分辨率和所述外接矩形在所述二维坐标系中的所述原点,按照所述显示设备的所述长度和所述宽度从所述输入视频源图像上截取视频图像,并计算截取的视频图像在横向和纵向上的像素数量,具体包括:
根据以下公式计算所述截取的视频图像在横向和纵向上的像素数量:
H=A_x×(1920/D_h)
V=A_y×(1080/D_v)
其中,所述A_x表示所述显示设备的长度;所述A_y表示所述显示设备的宽度;所述D_h表示所述外接矩形的长度;所述D_v表示所述外接矩形的宽度;所述H表示所述截取的视频图像在横向上的像素数量;所述V表示所述截取的视频图像在纵向上的像素数量。
较佳地,所述输入视频源的分辨率为1920×1080;
所述根据所述显示设备中心点的坐标、所述输入视频源的分辨率以及所述外接矩形的长度和宽度,计算所述截取的视频图像的中心点坐标,具体包括:
根据以下公式计算所述截取的视频图像的所述中心点坐标:
O_H=O_x×(1920/D_h)
O_V=O_y×(1080/D_v)
其中,所述O_x表示所述显示设备中心点的横坐标;所述O_y表示所述显示设备中心点的纵坐标;所述D_h表示所述外接矩形的长度;所述D_v表示所述外接矩形的宽度;所述O_H表示所述截取的视频图像的所述中心点的横坐标;所述O_V表示所述截取的视频图像的所述中心点的纵坐标。
与现有技术相比,上述技术方案至少具有以下有益效果:
本发明实施例通过确定显示设备的物理参数,并实时获取显示设备的移动轨迹;根据显示设备的物理参数和移动轨迹,确定输出视频图像的长度、宽度及旋转角度;基于输出视频图像的长度、宽度、旋转角度以及显示设备的移动轨迹,保持输出视频图像与显示设备的同步,由此,可以在显示设备运动的过程中,保持该显示设备所显示的视频图像的稳定,而无需对视频源进行提前处理,从而实现图像特效显示的效果。
附图说明
附图作为本发明的一部分,用来提供对本发明的进一步的理解,本发明的示意性实施例及其说明用于解释本发明,但不构成对本发明的不当限定。显然,下面描述中的附图仅仅是一些实施例,对于本领域普通技术人员来说,在不付出创造性劳动的前提下,还可以根据这些附图获得其他附图。在附图中:
图1为根据一示例性实施例示出的实时实现图像特效显示的方法的流程示意图;
图2为根据另一示例性实施例示出的确定输出视频图像的长度、宽度及旋转角度的流程示意图;
图3为根据另一示例性实施例示出的实时实现图像特效显示的方法的流程示意图。
这些附图和文字描述并不旨在以任何方式限制本发明的保护范围,而是通过参考特定实施例为本领域技术人员说明本发明的概念。
具体实施方式
下面结合附图以及具体实施例对本发明实施例解决的技术问题、所采用的技术方案以及实现的技术效果进行清楚、完整的描述。显然,所描述的实施例仅仅是本申请的一部分实施例,并不是全部实施例。在没有明确限定或不冲突的情况下,本发明中的各个实施例及其中的技术特征可以相互组合而形成技术方案。基于本申请中的实施例,本领域普通技术人员在不付出创造性劳动的前提下,所获的所有其它等同或明显变型的实施例均落在本发明的保护范围内。本发明实施例可以按照权利要求中限定和涵盖的多种不同方式来具体化。
需要说明的是,在下面的描述中,为了方便理解,给出了许多具体细节。但是很明显,本发明的实现可以没有这些具体细节。
另外,虽然本文可提供包含特定值的参数的示例,但应了解,参数无需确切等于相应的值,而是在可接受的误差容限或设计约束内近似于相应的值。
为实现显示设备运动而该显示设备所显示的视频图像保持稳定的图像特效,本发明实施例提供一种实时实现图像特效显示的方法。该方法应用于视频拼接器,该视频拼接器与显示设备相连。如图1所示,该方法可以包括:步骤S100至步骤S120。
步骤S100:确定显示设备的物理参数,并实时获取显示设备的移动轨迹。
步骤S110:根据显示设备的物理参数和移动轨迹,确定输出视频图像的长度、宽度及旋转角度。
步骤S120:基于输出视频图像的长度、宽度、旋转角度以及显示设备的移动轨迹,保持输出视频图像与显示设备的同步,从而实现相对于人眼而言的输出视频图像稳定而显示设备运动的图像特效。
如图2所示,在一个优选的实施例中,物理参数可以包括显示设备中心点的坐标及显示设备的长度和宽度。根据显示设备的物理参数和移动轨迹,确定输出视频图像的长度、宽度及旋转角度具体可以包括:
步骤S200:根据显示设备的移动轨迹确定一外接矩形。
步骤S210:根据输入视频源图像在二维坐标系中原点的位置设定外接矩形在二维坐标系中的原点。
步骤S220:根据输入视频源的分辨率和外接矩形在二维坐标系中的原点,按照显示设备的长度和宽度从输入视频源图像上截取视频图像,并计算截取的视频图像在横向和纵向上的像素数量。
步骤S230:根据显示设备中心点的坐标、输入视频源的分辨率以及外接矩形的长度和宽度,计算截取的视频图像的中心点坐标。
步骤S240:基于截取的视频图像的中心点坐标以及截取的视频图像在横向和纵向上的像素数量,计算输出视频图像的长度、宽度及旋转角度。
在一个优选的实施例中,输入视频源的分辨率为1920×1080。根据输入视频源的分辨率和外接矩形在二维坐标系中的原点,按照显示设备的长度和宽度从输入视频源图像上截取视频图像,并计算截取的视频图像在横向和纵向上的像素数量具体可以包括:
根据以下公式计算截取的视频图像在横向和纵向上的像素数量:
H=A_x×(1920/D_h)
V=A_y×(1080/D_v)
其中,A_x表示显示设备的长度;A_y表示显示设备的宽度;D_h表示外接矩形的长度;D_v表示外接矩形的宽度;H表示截取的视频图像在横向上的像素数量;V表示截取的视频图像在纵向上的像素数量。
在一个优选的实施例中,输入视频源的分辨率为1920×1080。根据显示设备中心点的坐标、输入视频源的分辨率以及外接矩形的长度和宽度,计算截取的视频图像的中心点坐标具体可以包括:
O_H=O_x×(1920/D_h)
O_V=O_y×(1080/D_v)
其中,O_x表示显示设备中心点的横坐标;O_y表示显示设备中心点的纵坐标;D_h表示外接矩形的长度;D_v表示外接矩形的宽度;O_H表示截取的视频图像的中心点的横坐标;O_V表示截取的视频图像的中心点的纵坐标。
下面以一优选实施例来详细说明本发明的实现过程,如图3所示。
假设显示设备的长度和宽度分别为A_x、A_y,输入视频源的分辨率为1920×1080。
步骤S301:实时获取显示设备的移动轨迹。
其中,例如,可以通过传感器实时获取显示设备的移动轨迹。移动轨迹例如可以为横向移动、纵向移动或旋转。
步骤S302:根据该移动轨迹确定一个外接矩形,并确定该外接矩形的长度和宽度。其中,外接矩形的长度和宽度分别为D_h、D_v。
步骤S303:根据输入视频源图像在二维坐标系中原点的位置确定外接矩形在二维坐标系中的原点。
其中,可以以外接矩形的左上角为外接矩形的原点。外接矩形的左上角对应于输入视频源图像的(0,0)点。
步骤S304:根据输入视频源的分辨率和外接矩形在二维坐标系中的原点,按照显示设备的长度和宽度从输入视频源图像上截取出视频图像,并根据以下公式计算截取的输入视频源在横向上的像素数量H和在纵向上的像素数量V:
H=A_x*(1920/D_h)
V=A_y*(1080/D_v)
其中,A_x表示显示设备的长度;A_y表示显示设备的宽度;D_h表示外接矩形的长度;D_v表示外接矩形的宽度;H表示截取的视频图像在横向上的像素数量;V表示截取的视频图像在纵向上的像素数量。
步骤S305:获取显示设备中心点的坐标。
步骤S306:根据显示设备中心点的坐标、输入视频源的分辨率以及外接矩形的长度和宽度,按照以下公式计算显示设备截取的输入视频源图像的中心点坐标:
O_H=O_x*(1920/D_h)
O_V=O_y*(1080/D_v)
其中,O_x表示显示设备中心点的横坐标;O_y表示显示设备中心点的纵坐标;D_h表示外接矩形的长度;D_v表示外接矩形的宽度;O_H表示截取的视频图像的中心点的横坐标;O_V表示截取的视频图像的中心点的纵坐标。
步骤S307:基于截取的视频图像的中心点坐标以及截取的视频图像在横向和纵向上的像素数量,计算输出视频图像的长度、宽度及旋转角度。
步骤S308:基于输出视频图像的长度、宽度、旋转角度以及显示设备的移动轨迹,保持输出视频图像与显示设备的同步,从而实现相对于人眼而言的输出视频图像稳定而显示设备运动的图像特效。
本发明实施例通过采取上述技术方案,可以在显示设备运动的过程中,保持该显示设备所显示的视频图像的稳定,而无需对视频源进行提前处理,从而达到图像特效显示的目的。
上述实施例中虽然将各个步骤按照上述先后次序的方式进行了描述,但是本领域技术人员可以理解,为了实现本实施例的效果,不同的步骤之间不必按照这样的次序执行,其可以同时(并行)执行或以颠倒的次序执行,这些简单的变化都在本发明的保护范围之内。
以上对本发明实施例所提供的技术方案进行了详细的介绍。虽然本文应用了具体的个例对本发明的原理和实施方式进行了阐述,但是,上述实施例的说明仅适用于帮助理解本发明实施例的原理;同时,对于本领域技术人员来说,依据本发明实施例,在具体实施方式以及应用范围之内均会做出改变。
需要说明的是,本文中涉及到的流程图或框图不仅仅局限于本文所示的形式,其还可以进行其他划分和/或组合。
还需要说明的是:附图中的标记和文字只是为了更清楚地说明本发明,不视为对本发明保护范围的不当限定。
术语“包括”或者任何其它类似用语旨在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备/装置不仅包括那些要素,而且还包括没有明确列出的其它要素,或者还包括这些过程、方法、物品或者设备/装置所固有的要素。
本发明的各个步骤可以用通用的计算装置来实现,例如,它们可以集中在单个的计算装置上,例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备或者多处理器装置,也可以分布在多个计算装置所组成的网络上,它们可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。因此,本发明不限于任何特定的硬件和软件或者其结合。
本发明并不限于上述实施方式,在不背离本发明实质内容的情况下,本领域普通技术人员可以想到的任何变形、改进或替换均落入本发明的保护范围。