掌桥专利:专业的专利平台
掌桥专利
首页

录像镜像处理方法、装置、摄像设备及可读存储介质

文献发布时间:2023-06-19 13:48:08


录像镜像处理方法、装置、摄像设备及可读存储介质

技术领域

本申请涉及图像处理领域,具体而言,涉及一种录像镜像处理方法、装置、摄像设备及可读存储介质。

背景技术

随着互联网技术的不断发展,摄像设备(例如,智能手机、摄像机等)为用户带来了极大的便利,用户可通过摄像设备进行视频录制,用以记录用户想要保存的信息,而用户在通过摄像设备进行视频录制的过程中,通常需要保证录制出的视频与录像预览时的画面内容保持一致。

但就实际而言,某些摄像设备所录制的视频会与录像预览时的画面内容持相反状态,例如当用户使用智能手机上的前置摄像头进行视频录制时,默认录制出的视频与录像预览时的画面内容是相反的。为确保摄像设备最终输出的视频内容与录像预览时的画面内容保持一致,通常需要摄像设备具有镜像视频录制功能。而目前市面上实现镜像视频录制的方案是在视频录制的过程中对录制出的每帧图像进行翻转,才能达到镜像的效果。这种实现方案通常会因图像生成镜像的速度较慢,导致摄像设备出现实时录像卡顿或录像延时大的现象,存在镜像视频录制性能差的问题。

发明内容

有鉴于此,本申请的目的在于提供一种录像镜像处理方法、装置、摄像设备及可读存储介质,能够提高镜像视频录制时的镜像转换速率,降低出现实时录像卡顿或录像延迟大的概率,增强镜像视频录制性能。

为了实现上述目的,本申请实施例采用的技术方案如下:

第一方面,本申请实施例提供一种录像镜像处理方法,应用于摄像设备,所述方法包括:

获取由所述摄像设备录制得到的每帧原始待处理图像;

针对每帧原始待处理图像,提取该原始待处理图像的YUV图像数据;

将该原始待处理图像的YUV图像数据关于该原始待处理图像在水平方向上的目标中轴线进行数据对调,得到对应的目标YUV数据;

对所述目标YUV数据进行图像表达,得到与该原始待处理图像对应的目标镜像图像。

在可选的实施方式中,所述将该原始待处理图像的YUV图像数据关于该原始待处理图像在水平方向上的目标中轴线进行数据对调,包括:

以所述目标中轴线将所述原始待处理图像划分为第一图像区域及第二图像区域;

依次针对所述第一图像区域中的每个第一像素行,确定该第一像素行在所述第二图像区域中关于所述目标中轴线对称的第二像素行;

在所述YUV图像数据中将位置对称的所述第一像素行与所述第二像素行各自的YUV数据进行数据对换。

在可选的实施方式中,所述在所述YUV图像数据中将位置对称的所述第一像素行与所述第二像素行各自的YUV数据进行数据对换,包括:

按照所述第一图像区域的第一像素行排列顺序,依次调用六角矢量扩展指令提取每个第一像素行及与该第一像素行关于所述目标中轴线对称的第二像素行各自在所述YUV图像数据中的至少一个YUV向量,其中所述YUV向量包括对应像素行中依次排列的多个像素点的YUV数据;

在提取出的位置对称的所述第一像素行与所述第二像素行各自的YUV向量中,将像素位置对应的YUV向量进行内容交换。

在可选的实施方式中,所述将该原始待处理图像的YUV图像数据关于该原始待处理图像在水平方向上的目标中轴线进行数据对调,包括:

将所述原始待处理图像划分为多个第三图像区域及多个第四图像区域,其中每个第三图像区域关于所述目标中轴线对称有一个第四图像区域;

针对每组位置对称的第三图像区域及第四图像区域,调用一个线程确定所述第三图像区域中的每个第三像素行在所述第四图像区域中关于所述目标中轴线对称的第四像素行;

调用该线程将确定出的位置对称的所述第三像素行及所述第四像素行各自在所述YUV图像数据中的YUV数据进行数据对换。

在可选的实施方式中,所述调用该线程将确定出的位置对称的所述第三像素行及所述第四像素行各自在所述YUV图像数据中的YUV数据进行数据对换,包括:

调用该线程基于六角矢量扩展指令在所述YUV图像数据中,提取与该线程匹配且位置对称的所述第三像素行与所述第四像素行各自对应的至少一个YUV向量;

根据像素位置对应关系调用该线程将位置对称的所述第三像素行与所述第四像素行各自的YUV向量进行内容交换。

第二方面,本申请实施例提供一种录像镜像处理装置,应用于摄像设备,所述装置包括:

图像获取模块,用于获取由所述摄像设备录制得到的每帧原始待处理图像;

YUV提取模块,用于针对每帧原始待处理图像,提取该原始待处理图像的YUV图像数据;

YUV对调模块,用于将该原始待处理图像的YUV图像数据关于该原始待处理图像在水平方向上的目标中轴线进行数据对调,得到对应的目标YUV数据;

镜像表达模块,用于对所述目标YUV数据进行图像表达,得到与该原始待处理图像对应的目标镜像图像。

在可选的实施方式中,所述YUV对调模块包括:

图像划分子模块,用于以所述目标中轴线将所述原始待处理图像划分为第一图像区域及第二图像区域;

像素行确定子模块,用于依次针对所述第一图像区域中的每个第一像素行,确定该第一像素行在所述第二图像区域中关于所述目标中轴线对称的第二像素行;

YUV对换子模块,用于在所述YUV图像数据中将位置对称的所述第一像素行与所述第二像素行各自的YUV数据进行数据对换。

在可选的实施方式中,所述YUV对换子模块在所述YUV图像数据中将位置对称的所述第一像素行与所述第二像素行各自的YUV数据进行数据对换,包括:

按照所述第一图像区域的第一像素行排列顺序,依次调用六角矢量扩展指令提取每个第一像素行及与该第一像素行关于所述目标中轴线对称的第二像素行各自在所述YUV图像数据中的至少一个YUV向量,其中所述YUV向量包括对应像素行中依次排列的多个像素点的YUV数据;

在提取出的位置对称的所述第一像素行与所述第二像素行各自的YUV向量中,将像素位置对应的YUV向量进行内容交换。

在可选的实施方式中,所述YUV对调模块包括:

图像划分子模块,用于将所述原始待处理图像划分为多个第三图像区域及多个第四图像区域,其中每个第三图像区域关于所述目标中轴线对称有一个第四图像区域;

像素行确定子模块,用于针对每组位置对称的第三图像区域及第四图像区域,调用一个线程确定该第三图像区域中的每个第三像素行在该第四图像区域中关于所述目标中轴线对称的第四像素行;

YUV对换子模块,用于调用该线程将确定出的位置对称的所述第三像素行及所述第四像素行各自在所述YUV图像数据中的YUV数据进行数据对换。

在可选的实施方式中,所述YUV对换子模块调用该线程将确定出的位置对称的所述第三像素行及所述第四像素行各自在所述YUV图像数据中的YUV数据进行数据对换,包括:

调用该线程基于六角矢量扩展指令在所述YUV图像数据中,提取与该线程匹配且位置对称的所述第三像素行与所述第四像素行各自对应的至少一个YUV向量;

根据像素位置对应关系调用该线程将位置对称的所述第三像素行与所述第四像素行各自的YUV向量进行内容交换。

第三方面,本申请实施例提供一种摄像设备,包括处理器和存储器,所述存储器存储有能够被所述处理器执行的机器可执行指令,所述处理器可执行所述机器可执行指令,以实现前述实施方式中任意一项所述的录像镜像处理方法。

第四方面,本申请实施例提供一种可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时,实现前述实施方式中任意一项所述的录像镜像处理方法。

本申请实施例的有益效果是:

本申请通过将由摄像设备录制的每帧原始待处理图像的YUV图像数据关于该原始待处理图像在水平方向上的目标中轴线进行数据对调,得到与该原始待处理图像对应的目标YUV数据,而后对该目标YUV数据进行图像表达,以得到与该原始待处理图像对应的呈镜面效果的目标镜像图像,从而实现镜像视频录制过程中的快速镜像转换功能,降低摄像设备出现实时录像卡顿或录像延迟大的概率,增强镜像视频录制性能。

为使本申请的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。

附图说明

为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。

图1为本申请实施例提供的摄像设备的结构组成示意图;

图2为本申请实施例提供的录像镜像处理方法的流程示意图;

图3为图2中的步骤S230包括的子步骤的流程示意图之一;

图4为图2中的步骤S230包括的子步骤的流程示意图之二;

图5为本申请实施例提供的录像镜像处理装置的模块组成示意图;

图6为图5中的YUV对调模块的模块组成示意图。

图标:10-摄像设备;11-存储器;12-处理器;13-通信单元;14-显示单元;15-摄像头;100-录像镜像处理装置;110-图像获取模块;120-YUV提取模块;130-YUV对调模块;140-镜像表达模块;131-图像划分子模块;132-像素行确定子模块;133-YUV对换子模块。

具体实施方式

为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。

因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。

在本申请的描述中,需要理解的是,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。

在本申请的描述中,还需要说明的是,除非另有明确的规定和限定,术语“设置”、“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本申请中的具体含义。

下面结合附图,对本申请的一些实施方式作详细说明。在不冲突的情况下,下述的实施例及实施例中的特征可以相互结合。

请参照图1,图1是本申请实施例提供的摄像设备10的结构组成示意图。在本申请实施例中,所述摄像设备10可用于实现视频录制,并在某些视频录制的过程中对录制的视频图像进行快速镜像处理,实现镜像视频录制过程中的快速镜像转换功能,降低出现实时录像卡顿或录像延迟大的概率,增强镜像视频录制性能。其中,所述摄像设备10可以是,但不限于,包括有前置摄像头的智能手机、平板电脑、智能照相机及个人计算机等。

在本实施例中,所述摄像设备10包括录像镜像处理装置100、存储器11、处理器12、通信单元13、显示单元14及摄像头15。所述存储器11、所述处理器12、所述通信单元13、所述显示单元14及所述摄像头15各个元件相互之间直接或间接地电性连接,以实现数据的传输或交互。例如,所述存储器11、所述处理器12、所述通信单元13、所述显示单元14及所述摄像头15这些元件相互之间可通过一条或多条通讯总线或信号线实现电性连接。

在本实施例中,所述存储器11可用于存储程序,所述处理器12在接收到执行指令后,可相应地执行所述程序。其中,所述存储器11可以是,但不限于,随机存取存储器(Random Access Memory,RAM),只读存储器(Read Only Memory,ROM),可编程只读存储器(Programmable Read-Only Memory,PROM),可擦除只读存储器(Erasable ProgrammableRead-Only Memory,EPROM),电可擦除只读存储器(Electric Erasable ProgrammableRead-Only Memory,EEPROM)等。

在本实施例中,所述处理器12可以是一种具有信号的处理能力的集成电路芯片。所述处理器12可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、图形处理器(Graphics Processing Unit,GPU)及网络处理器(Network Processor,NP)、数字信号处理器(Digital Signal Processor,DSP)等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等,可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。在本实施例的一种实施方式中,所述处理器12为计算机六角数值信号处理器(Compute Hexagon Digital Signal Processor,CDSP)。

在本实施例中,所述通信单元13用于通过网络建立所述摄像设备10与其他电子设备之间的通信连接,并通过网络进行数据交互。

在本实施例中,所述显示单元14包括显示屏,所述摄像设备10可通过所述显示单元14所包括的显示屏实现视频录制预览功能,也可通过所述显示单元14所包括的显示屏对录制出的视频进行播放。

在本实施例中,所述摄像头15用于实现所述摄像设备10的拍照功能及视频录制功能。在本实施例的一种实施方式中,所述摄像头15包括传感器方向为90

在本实施例中,所述录像镜像处理装置100包括至少一个能够以软件或固件的形式存储于所述存储器11中或固化在所述摄像设备10的操作系统中的软件功能模块。所述处理器12可用于执行所述存储器11存储的可执行模块,例如所述录像镜像处理装置100所包括软件功能模块及计算机程序等。所述摄像设备10通过所述录像镜像处理装置100提高镜像视频录制时的镜像转换速率,降低出现实时录像卡顿或录像延迟大的概率,增强镜像视频录制性能。

可以理解的是,图1所示的方框示意图仅为摄像设备10的一种结构组成示意图,所述摄像设备10还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。图1中所示的各组件可以采用硬件、软件或其组合实现。

在本申请中,为确保上述摄像设备10能够实现镜像视频录制过程中的快速镜像转换功能,本申请通过提供应用于上述摄像设备10的录像镜像处理方法实现上述功能。下面对本申请提供的录像镜像处理方法进行详细描述。

请参照图2,图2是本申请实施例提供的录像镜像处理方法的流程示意图。在本申请实施例中,图2所示的录像镜像处理方法如下所示。

步骤S210,获取由摄像设备录制得到的每帧原始待处理图像。

在本实施例中,所述原始待处理图像为用户通过所述摄像设备10进行视频录制操作时选定的需要镜像效果表达的被录制图像。在本实施例的一种实施方式中,所述原始待处理图像可以是所述摄像设备10通过前置摄像头录制的原始图像。

步骤S220,针对每帧原始待处理图像,提取该原始待处理图像的YUV图像数据。

在本实施例中,所述YUV图像数据包括对应原始待处理图像中每个像素点的Y(亮度)通道数据、U(色彩)通道数据及V(饱和度)通道数据,其中同一像素点的Y通道数据、U通道数据及V通道数据可采用Y:U:V或[Y,U,V]的方式进行表达。所述摄像设备10可采用式子“Y=0.299*R+0.587*G+0.114*B”计算每个像素点的Y通道数据大小,采用式子“U=-0.1687*R-0.3313*G+0.5*B+128”计算每个像素点的U通道数据大小,并采用式子“V=0.5*R-0.4187*G-0.0813*B+128”计算每个像素点的V通道数据大小。其中,Y表示对应像素点的Y通道数据,U表示对应像素点的U通道数据,V表示对应像素点的V通道数据,R表示对应像素点的R(Red,红色)分量数据,G表示对应像素点的G(Green,绿色)分量数据,B表示对应像素点的B(Blue,蓝色)分量数据。

步骤S230,将该原始待处理图像的YUV图像数据关于该原始待处理图像在水平方向上的目标中轴线进行数据对调,得到对应的目标YUV数据。

在本实施例中,所述目标中轴线为对应原始待处理图像在水平方向上的中线,该原始待处理图像可相对于该目标中轴线进行翻折。以尺寸为640×480的原始待处理图像为例,该原始待处理图像包括480个像素行,可以表达为第0像素行~第479像素行,此时该原始待处理图像在水平方向上的中轴线则为第239像素行与第240像素行之间的中线。

所述摄像设备10通过将关于原始待处理图像的YUV图像数据中所有关于所述目标中轴线对称的像素行的YUV数据进行参数对调,从而得到与该原始待处理图像对应的目标YUV数据。其中,同一像素行的YUV数据包括该像素行下不同像素点的YUV数据,同一像素行的YUV数据中不同像素点的YUV数据的位置与其在原始待处理图像中的位置相互对应,当某个像素行的YUV数据被对调到另一位置处时,对调后的该像素行的YUV数据中各像素点的YUV数据不变。其中,所述YUV数据包括对应像素点的Y通道数据、U通道数据及V通道数据。

以尺寸为640×480的原始待处理图像为例,该原始待处理图像对应的YUV图像数据包括480个像素行的YUV数据,此时所述摄像设备10会将第0像素行的YUV数据与第479像素行的YUV数据进行内容调换,将第1像素行的YUV数据与第478像素行的YUV数据进行内容调换,然后依次类推,直至将第239像素行的YUV数据与第240像素行的YUV数据进行内容调换,得到与该原始待处理图像对应的可代表镜像效果的目标YUV数据。其中,在内容调换过程中每个像素行的YUV数据的内部元素位置不变。

可选地,请参照图3,图3是图2中的步骤S230包括的子步骤的流程示意图之一。在本申请的一种实施例中,所述摄像设备10可通过单独调用一个线程实现上述步骤S230,此时所述步骤S230可以包括子步骤S231~子步骤S233。

子步骤S231,以目标中轴线将原始待处理图像划分为第一图像区域及第二图像区域。

子步骤S232,依次针对第一图像区域中的每个第一像素行,确定该第一像素行在第二图像区域中关于目标中轴线对称的第二像素行。

子步骤S233,在YUV图像数据中将位置对称的第一像素行与第二像素行各自的YUV数据进行数据对换。

其中,以尺寸为640×480的原始待处理图像为例,所述摄像设备10会将该原始待处理图像划分为尺寸为640×240的两个图像区域,其中一个图像区域(第一图像区域)所涵盖的像素行即为该原始待处理图像的第0像素行~第239像素行,另一图像区域(第二图像区域)所涵盖的像素行即为该原始待处理图像的第240像素行~第479像素行。此时,所述摄像设备10将根据第一图像区域内各第一像素行的排列顺序,依次确定第0像素行~第239像素行各自关于目标中轴线位置对称的第二像素行分别为第479像素行~第240像素行,而后依次将第0像素行与第479像素行在YUV图像数据中的YUV数据进行数据对换,将第1像素行与第478像素行在YUV图像数据中的YUV数据进行数据对换,将第2像素行与第477像素行在YUV图像数据中的YUV数据进行数据对换,然后依次类推直至将第239像素行与第240像素行在YUV图像数据中的YUV数据进行数据对换。

在本实施例的一种实施方式中,当所述处理器12为CDSP时,所述摄像设备10可通过调用六角矢量扩展(Hexagon Vector Extensions,HVX)指令实现YUV数据对换,此时所述在YUV图像数据中将位置对称的第一像素行与第二像素行各自的YUV数据进行数据对换,包括:

按照第一图像区域的第一像素行排列顺序,依次调用六角矢量扩展指令提取每个第一像素行及与该第一像素行关于目标中轴线对称的第二像素行各自在YUV图像数据中的至少一个YUV向量,其中YUV向量包括对应像素行中依次排列的多个像素点的YUV数据;

在提取出的位置对称的第一像素行与第二像素行各自的YUV向量中,将像素位置对应的YUV向量进行内容交换。

其中,以尺寸为640×480的原始待处理图像为例,该原始待处理图像的第一图像区域包括第0像素行~第239像素行,该原始待处理图像的第二图像区域包括第240像素行~第479像素行。而每个YUV向量的数据容量为1024bit,每个像素点的YUV数据可用8bit表示,此时一个YUV向量可直接一次性取1021/8=128个像素点,则一个像素行的YUV数据可被所述摄像设备10提取出5个依次排列的YUV向量,可表示为Vector1、Vector2、Vector3、Vector4及Vector5。在此情况下,所述摄像设备10将根据第一图像区域内各第一像素行的排列顺序,将第0像素行的Vector1、Vector2、Vector3、Vector4及Vector5分别与第479像素行的Vector1、Vector2、Vector3、Vector4及Vector5进行数据对换,而后将第1像素行的Vector1、Vector2、Vector3、Vector4及Vector5分别与第478像素行的Vector1、Vector2、Vector3、Vector4及Vector5进行数据对换,然后将第2像素行的Vector1、Vector2、Vector3、Vector4及Vector5分别与第477像素行的Vector1、Vector2、Vector3、Vector4及Vector5进行数据对换,并依次类推直至将第239像素行的Vector1、Vector2、Vector3、Vector4及Vector5分别与第240像素行的Vector1、Vector2、Vector3、Vector4及Vector5进行数据对换。

可选地,请参照图4,图4是图2中的步骤S230包括的子步骤的流程示意图之二。在本申请的另一种实施例中,所述摄像设备10可通过调用多个线程实现上述步骤S230,此时所述步骤S230可以包括子步骤S235~子步骤S237。

子步骤S235,将原始待处理图像划分为多个第三图像区域及多个第四图像区域,其中每个第三图像区域关于目标中轴线对称有一个第四图像区域。

子步骤S236,针对每组位置对称的第三图像区域及第四图像区域,调用一个线程确定第三图像区域中的每个第三像素行在第四图像区域中关于目标中轴线对称的第四像素行。

子步骤S237,调用该线程将确定出的位置对称的第三像素行及第四像素行各自在YUV图像数据中的YUV数据进行数据对换。

其中,所述摄像设备10可通过将原始待处理图像划分为多个区域组合,其中每个区域组合包括关于目标中轴线对称的第三图像区域及第四图像区域,而后针对每个区域组合,调用一个与该区域组合匹配的线程对该区域组合内关于所述目标中轴线对称的所有像素行进行YUV数据对换操作。

以尺寸为640×480的原始待处理图像为例,所述摄像设备10会将该原始待处理图像划分为640×60的八个图像区域,此时这八个图像区域可分配为4个区域组合。其中,第一个区域组合中的第三图像区域所涵盖的像素行包括该原始待处理图像的第0像素行~第59像素行,而第四图像区域所涵盖的像素行包括该原始待处理图像的第420像素行~第479像素行;第二个区域组合中的第三图像区域所涵盖的像素行包括第60像素行~第119像素行,而第四图像区域所涵盖的像素行包括第360像素行~第419像素行;第三个区域组合中的第三图像区域所涵盖的像素行包括第120像素行~第179像素行,而第四图像区域所涵盖的像素行包括第300像素行~第359像素行;第四个区域组合中的第三图像区域所涵盖的像素行包括第180像素行~第239像素行,而第四图像区域所涵盖的像素行包括第240像素行~第299像素行。

上述的每个区域组合可对应一个线程,此时第一个区域组合可对应线程1,由线程1实现第0像素行~第59像素行与第420像素行~第479像素行之间的数据对换;第二个区域组合可对应线程2,由线程2实现第60像素行~第119像素行与第360像素行~第419像素行之间的数据对换;第三个区域组合可对应线程3,由线程3实现第120像素行~第179像素行与第300像素行~第359像素行之间的数据对换;第四个区域组合可对应线程4,由线程4实现第180像素行~第239像素行与第240像素行~第299像素行之间的数据对换。

此时以第一个区域组合为例,所述摄像设备10可通过调用线程1确定第0像素行~第59像素行中每个像素行各自对应的第四像素行分别为第479像素行~第420像素行,此时该摄像设备10会调用线程1将第0像素行与第479像素行在YUV图像数据中的YUV数据进行数据对换,调用线程1将第1像素行与第478像素行在YUV图像数据中的YUV数据进行数据对换,调用线程1将第2像素行与第477像素行在YUV图像数据中的YUV数据进行数据对换,然后依次类推直至将第59像素行与第420像素行在YUV图像数据中的YUV数据进行数据对换。

在本实施例的一种实施方式中,当所述处理器12为CDSP时,所述摄像设备10可通过调用六角矢量扩展(Hexagon Vector Extensions,HVX)指令实现YUV数据对换,此时所述调用该线程将确定出的位置对称的第三像素行及第四像素行各自在YUV图像数据中的YUV数据进行数据对换,包括:

调用该线程基于六角矢量扩展指令在YUV图像数据中,提取与该线程匹配且位置对称的第三像素行与第四像素行各自对应的至少一个YUV向量;

根据像素位置对应关系调用该线程将位置对称的第三像素行与第四像素行各自的YUV向量进行内容交换。

其中,以尺寸为640×480的原始待处理图像中的第一个区域组合而一个像素行的YUV数据可被摄像设备10提取出5个依次排列的YUV向量(包括Vector1、Vector2、Vector3、Vector4及Vector5)为例,所述摄像设备10可调用线程1将第0像素行的Vector1、Vector2、Vector3、Vector4及Vector5分别与第479像素行的Vector1、Vector2、Vector3、Vector4及Vector5进行数据对换,而后调用线程1将第1像素行的Vector1、Vector2、Vector3、Vector4及Vector5分别与第478像素行的Vector1、Vector2、Vector3、Vector4及Vector5进行数据对换,然后调用线程1将第2像素行的Vector1、Vector2、Vector3、Vector4及Vector5分别与第477像素行的Vector1、Vector2、Vector3、Vector4及Vector5进行数据对换,并依次类推直至调用线程1将第59像素行的Vector1、Vector2、Vector3、Vector4及Vector5分别与第420像素行的Vector1、Vector2、Vector3、Vector4及Vector5进行数据对换。

请再次参照图2,步骤S240,对目标YUV数据进行图像表达,得到与该原始待处理图像对应的目标镜像图像。

在本实施例中,当所述摄像设备10确定出某帧原始待处理图像的YUV图像数据在被执行数据对调操作后的目标YUV数据后,可通过采用式子“R=Y+1.402*(V-128)”、“G=Y-0.34414*(U-128)-0.71414*(V-128)”及“B=Y+1.772*(U-128)”转换出与所述目标YUV数据对应的RGB分量数据,完成对目标YUV数据的图像表达操作,从而输出与该原始待处理图像对应的呈镜面效果的目标镜像图像,以快速实现镜像视频录制过程中的镜像转换功能,降低所述摄像设备10在实时视频录制过程中出现录像卡顿或录像延迟大的概率,增强镜像视频录制性能。

在本申请实施例中,所述摄像设备10通过执行上述录像镜像处理方法,实现镜像视频录制过程中的快速镜像转换功能,降低摄像设备10出现实时录像卡顿或录像延迟大的概率,增强镜像视频录制性能。

在本申请中,为确保所述摄像设备10所包括的录像镜像处理装置100能够正常实施,本申请通过对所述录像镜像处理装置100进行功能模块划分的方式实现其功能。下面对本申请提供的录像镜像处理装置100的具体组成进行相应描述。

请参照图5,图5是本申请实施例提供的录像镜像处理装置100的模块组成示意图。在本申请实施例中,所述录像镜像处理装置100包括图像获取模块110、YUV提取模块120、YUV对调模块130及镜像表达模块140。

图像获取模块110,用于获取由摄像设备录制得到的每帧原始待处理图像。

YUV提取模块120,用于针对每帧原始待处理图像,提取该原始待处理图像的YUV图像数据。

YUV对调模块130,用于将该原始待处理图像的YUV图像数据关于该原始待处理图像在水平方向上的目标中轴线进行数据对调,得到对应的目标YUV数据。

镜像表达模块140,用于对目标YUV数据进行图像表达,得到与该原始待处理图像对应的目标镜像图像。

请参照图6,图6是图5中的YUV对调模块130的模块组成示意图。在本申请实施例中,所述YUV对调模块130可以包括图像划分子模块131、像素行确定子模块132及YUV对换子模块133。

在本实施例的一种实施方式中,所述图像划分子模块131用于以目标中轴线将原始待处理图像划分为第一图像区域及第二图像区域。所述像素行确定子模块132用于依次针对第一图像区域中的每个第一像素行确定该第一像素行在第二图像区域中关于目标中轴线对称的第二像素行。所述YUV对换子模块133用于在YUV图像数据中将位置对称的第一像素行与第二像素行各自的YUV数据进行数据对换。

在本实施例的另一种实施方式中,所述图像划分子模块131用于将原始待处理图像划分为多个第三图像区域及多个第四图像区域,其中每个第三图像区域关于目标中轴线对称有一个第四图像区域。所述像素行确定子模块132用于针对每组位置对称的第三图像区域及第四图像区域,调用一个线程确定该第三图像区域中的每个第三像素行在该第四图像区域中关于目标中轴线对称的第四像素行。所述YUV对换子模块133用于调用该线程将确定出的位置对称的第三像素行及第四像素行各自在YUV图像数据中的YUV数据进行数据对换。

需要说明的是,本申请实施例所提供的录像镜像处理装置100,其基本原理及产生的技术效果与前述应用于摄像设备10的录像镜像处理方法相同,为简要描述,本实施例部分未提及之处,可参考上述的针对录像镜像处理方法的描述内容。

在本申请所提供的实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本申请的实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

另外,在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。

所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个可读存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个可读存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的可读存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。

综上所述,在本申请实施例提供的一种录像镜像处理方法、装置、摄像设备及可读存储介质中,本申请通过将由摄像设备录制的每帧原始待处理图像的YUV图像数据关于该原始待处理图像在水平方向上的目标中轴线进行数据对调,得到与该原始待处理图像对应的目标YUV数据,而后对该目标YUV数据进行图像表达,以得到与该原始待处理图像对应的呈镜面效果的目标镜像图像,从而实现镜像视频录制过程中的快速镜像转换功能,降低摄像设备出现实时录像卡顿或录像延迟大的概率,增强镜像视频录制性能。

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

相关技术
  • 录像镜像处理方法、装置、摄像设备及可读存储介质
  • 镜像处理方法、装置、电子设备及计算机可读存储介质
技术分类

06120113818581