视频处理方法及装置、电子设备和计算机可读介质与流程

文档序号:14796307发布日期:2018-06-29 06:00阅读:140来源:国知局

本公开涉及一种视频处理方法及装置、电子设备和计算机可读介质。



背景技术:

随着科学技术的发展,视频传输技术越来越成熟,其应用范围也越来越广泛。例如,通过视频传输技术可以使得发送端和接收端之间实现较好的视频交互,或者发送端录制视频后可以将录制好的视频进行在线或离线播放,使得接收端可以进行观看。在视频播放的过程中,有时候视频的发送端需要在某些关键时刻对视频做一些操作,比如在某个关键时刻对视频帧使用特效等。然而由于视频在播放过程中存在延时的问题,视频的接收端很难根据时间戳来判定被发送端操作的视频帧具体是哪一帧,导致用户体验不佳。



技术实现要素:

本公开的一个方面提供了一种视频处理方法,包括获取第一视频帧;确定上述第一视频帧中的预设行,其中,上述预设行中包含有多个像素点,每个像素点都具有各自的第一颜色值;将上述预设行中包含的上述多个像素点各自的第一颜色值调整为各自对应的第二颜色值,得到第二视频帧;以及将上述第一视频帧替换为上述第二视频帧,以使接收端能够根据上述第二视频帧中上述预设行的颜色信息将上述第二视频帧确定为目标视频帧。

可选地,将上述预设行中包含的上述多个像素点各自的第一颜色值调整为各自对应的第二颜色值包括将上述预设行中包含的上述多个像素点分成N组像素组,其中,上述N组像素组中的每一组像素组中包含一个或多个像素点;为上述N组像素组中的每一组像素组分别确定各自的目标颜色信息;以及根据上述每一组像素组相对应的目标颜色信息,将上述每一组像素组中的一个或多个像素点的第一颜色值调整为各自对应的第二颜色值。

可选地,将上述预设行中包含的上述多个像素点各自的第一颜色值调整为各自对应的第二颜色值包括将上述预设行中包含的上述多个像素点分成N组像素组,其中,上述N组像素组中的每一组像素组中包含一个或多个像素点;从上述N组像素组中确定出M组像素组,其中,上述M为小于上述N的整数;为上述N组像素组中除上述M组像素组之外的每一组像素组分别确定各自的目标颜色信息;根据上述N组像素组中除上述M组像素组之外的每一组像素组各自的目标颜色信息,将上述N组像素组中除上述M组像素组之外的每一组像素组中的像素点各自的第一颜色值调整为相应的第二颜色值;获取操作指令,其中,上述操作指令用于调整上述第一视频帧的展示效果;以及将上述M组像素组中的每一组像素组中的像素点的第一颜色值调整为与上述操作指令所对应的数值。

可选地,确定上述第一视频帧中的预设行包括确定上述第一视频帧被传输时的缩放比例;以及根据上述第一视频帧的缩放比例确定上述预设行的数量。

可选地,在根据上述第一视频帧被传输时的缩放比例确定上述预设行的数量为多个的情况下,上述视频处理方法还包括根据上述第一视频帧被传输时的缩放比例判断上述第一视频帧是否需要被压缩;以及在上述第一视频帧需要被压缩的情况下,将多个上述预设行中每一行的像素点各自的第一颜色值都调整为相同的颜色值。

本公开的另一个方面提供了一种视频处理装置,包括获取模块、确定模块、第一调整模块和替换模块。获取模块用于获取第一视频帧;确定模块用于确定上述第一视频帧中的预设行,其中,上述预设行中包含有多个像素点,每个像素点都具有各自的第一颜色值;第一调整模块用于将上述预设行中包含的上述多个像素点各自的第一颜色值调整为各自对应的第二颜色值,得到第二视频帧;以及替换模块用于将上述第一视频帧替换为上述第二视频帧,以使接收端能够根据上述第二视频帧中上述预设行的颜色信息将上述第二视频帧确定为目标视频帧。

可选地,上述第一调整模块包括第一分类单元、第一确定单元和第一调整单元。第一分类单元用于将上述预设行中包含的上述多个像素点分成N组像素组,其中,上述N组像素组中的每一组像素组中包含一个或多个像素点;第一确定单元用于为上述N组像素组中的每一组像素组分别确定各自的目标颜色信息;以及第一调整单元用于根据上述每一组像素组相对应的目标颜色信息,将上述每一组像素组中的一个或多个像素点的第一颜色值调整为各自对应的第二颜色值。

可选地,上述第一调整模块包括第二分类单元、第二确定单元、第三确定单元、第二调整单元、获取单元和第三调整单元。第二分类单元用于将上述预设行中包含的上述多个像素点分成N组像素组,其中,上述N组像素组中的每一组像素组中包含一个或多个像素点;第二确定单元用于从上述N组像素组中确定出M组像素组,其中,上述M为小于上述N的整数;第三确定单元用于为上述N组像素组中除上述M组像素组之外的每一组像素组分别确定各自的目标颜色信息;第二调整单元用于根据上述N组像素组中除上述M组像素组之外的每一组像素组各自的目标颜色信息,将上述N组像素组中除上述M组像素组之外的每一组像素组中的像素点各自的第一颜色值调整为相应的第二颜色值;获取单元用于获取操作指令,其中,上述操作指令用于调整上述第一视频帧的展示效果;以及第三调整单元用于将上述M组像素组中的每一组像素组中的像素点的第一颜色值调整为与上述操作指令所对应的数值。

可选地,上述确定模块包括第四确定单元和第五确定单元。第四确定单元用于确定上述第一视频帧被传输时的缩放比例;以及第五确定单元用于根据上述第一视频帧的缩放比例确定上述预设行的数量。

可选地,在根据上述第一视频帧被传输时的缩放比例确定上述预设行的数量为多个的情况下,上述视频处理装置还包括判断模块和第二调整模块。判断模块用于根据上述第一视频帧被传输时的缩放比例判断上述第一视频帧是否需要被压缩;以及第二调整模块用于在上述第一视频帧需要被压缩的情况下,将多个上述预设行中每一行的像素点各自的第一颜色值都调整为相同的颜色值。

本公开的另一个方面提供了一种电子设备,包括:存储器,其上存储有计算机可执行指令;以及处理器,用于运行所述指令,以执行如上所述的视频处理方法。

本公开的又一个方面提供了一种计算机可读介质,存储有计算机可执行指令,所述指令在被执行时用于实现如上所述的视频处理方法。

本公开的再一方面提供了一种计算机程序,所述计算机程序包括计算机可执行指令,所述指令在被执行时用于实现如上所述的视频处理方法。

附图说明

为了更完整地理解本公开及其优势,现在将参考结合附图的以下描述,其中:

图1A示意性示出了根据本公开实施例的待处理视频中第一视频帧的示意图;

图1B示意性示出了根据本公开实施例的应用视频处理方法或其装置处理第一视频帧后得到的第二视频帧的示意图;

图2示意性示出了根据本公开实施例的视频处理方法的流程图;

图3示意性示出了根据本公开实施例的将预设行中包含的多个像素点各自的第一颜色值调整为各自对应的第二颜色值的流程图;

图4示意性示出了根据本公开另一实施例的将预设行中包含的多个像素点各自的第一颜色值调整为各自对应的第二颜色值的流程图;

图5示意性示出了根据本公开实施例的确定第一视频帧中的预设行的流程图;

图6示意性示出了根据本公开另一实施例的视频处理方法的流程图;

图7示意性示出了根据本公开实施例的视频处理装置的框图;

图8示意性示出了根据本公开实施例的第一调整模块的框图;

图9示意性示出了根据本公开另一实施例的第一调整模块的框图;

图10示意性示出了根据本公开实施例的确定模块的框图;

图11示意性示出了根据本公开另一实施例的视频处理装置的框图;以及

图12示意性示出了根据本公开实施例的适于实现本公开的方法的电子设备的框图。

具体实施方式

以下,将参照附图来描述本公开的实施例。但是应该理解,这些描述只是示例性的,而并非要限制本公开的范围。在下面的详细描述中,为便于解释,阐述了许多具体的细节以提供对本公开实施例的全面理解。然而,明显地,一个或多个实施例在没有这些具体细节的情况下也可以被实施。此外,在以下说明中,省略了对公知结构和技术的描述,以避免不必要地混淆本公开的概念。

在此使用的术语仅仅是为了描述具体实施例,而并非意在限制本公开。在此使用的术语“包括”、“包含”等表明了所述特征、步骤、操作和/或部件的存在,但是并不排除存在或添加一个或多个其他特征、步骤、操作或部件。

在此使用的所有术语(包括技术和科学术语)具有本领域技术人员通常所理解的含义,除非另外定义。应注意,这里使用的术语应解释为具有与本说明书的上下文相一致的含义,而不应以理想化或过于刻板的方式来解释。

在使用类似于“A、B和C等中至少一个”这样的表述的情况下,一般来说应该按照本领域技术人员通常理解该表述的含义来予以解释(例如,“具有A、B和C中至少一个的系统”应包括但不限于单独具有A、单独具有B、单独具有C、具有A和B、具有A和C、具有B和C、和/或具有A、B、C的系统等)。在使用类似于“A、B或C等中至少一个”这样的表述的情况下,一般来说应该按照本领域技术人员通常理解该表述的含义来予以解释(例如,“具有A、B或C中至少一个的系统”应包括但不限于单独具有A、单独具有B、单独具有C、具有A和B、具有A和C、具有B和C、和/或具有A、B、C的系统等)。本领域技术人员还应理解,实质上任意表示两个或更多可选项目的转折连词和/或短语,无论是在说明书、权利要求书还是附图中,都应被理解为给出了包括这些项目之一、这些项目任一方、或两个项目的可能性。例如,短语“A或B”应当被理解为包括“A”或“B”、或“A和B”的可能性。

附图中示出了一些方框图和/或流程图。应理解,方框图和/或流程图中的一些方框或其组合可以由计算机程序指令来实现。这些计算机程序指令可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器,从而这些指令在由该处理器执行时可以创建用于实现这些方框图和/或流程图中所说明的功能/操作的装置。

因此,本公开的技术可以硬件和/或软件(包括固件、微代码等)的形式来实现。另外,本公开的技术可以采取存储有指令的计算机可读介质上的计算机程序产品的形式,该计算机程序产品可供指令执行系统使用或者结合指令执行系统使用。在本公开的上下文中,计算机可读介质可以是能够包含、存储、传送、传播或传输指令的任意介质。例如,计算机可读介质可以包括但不限于电、磁、光、电磁、红外或半导体系统、装置、器件或传播介质。计算机可读介质的具体示例包括:磁存储装置,如磁带或硬盘(HDD);光存储装置,如光盘(CD-ROM);存储器,如随机存取存储器(RAM)或闪存;和/或有线/无线通信链路。

本公开的实施例提供了一种视频处理方法及装置,视频处理方法包括获取第一视频帧;确定第一视频帧中的预设行,其中,预设行中包含有多个像素点,每个像素点都具有各自的第一颜色值;将预设行中包含的多个像素点各自的第一颜色值调整为各自对应的第二颜色值,得到第二视频帧;以及将第一视频帧替换为第二视频帧,以使接收端能够根据第二视频帧中预设行的颜色信息将第二视频帧确定为目标视频帧。

图1A示意性示出了根据本公开实施例的待处理视频中第一视频帧的示意图。

如图1A所示,第一视频帧101可以表示一段视频中的其中一个视频帧,该段视频的应用场景可以是妈妈在家中为自己的女儿庆祝生日,并与女儿的爸爸(图中未示出)实时进行视频,第一视频帧101可以是妈妈和女儿面对镜头与爸爸打招呼的画面。通过视频传输技术可以使得妈妈、女儿和爸爸之间实现较好的视频交互。

根据本公开的实施例,在视频的过程中,为了增加视频的交互效果,可以在某些关键时刻对视频做一些操作,比如在妈妈和女儿面对镜头与爸爸打招呼的时候,可以对视频帧使用特效等,例如加入It’s a Party!。

图1B示意性示出了根据本公开实施例的应用视频处理方法或其装置处理第一视频帧后得到的第二视频帧的示意图。

如图1B所示,第二视频帧102中的It’s a Party!104是对第一视频帧101进行操作后的特效。根据本公开的实施例,为了使视频的接收端判定被发送端操作的视频帧具体是哪一帧,可以改变第一视频帧中预设行中的像素点的颜色信息,使得视频接收方可以根据更改颜色值后的第二视频帧的颜色信息,将第二视频帧确定为目标视频帧。如图1B所示,第二视频帧102中的黑线103是改变第一视频帧中预设行中的像素点的颜色信息后得到的。通过黑线103可以知道第二视频帧102是被发送端操作的视频帧。

通过本公开的实施例,使得可以仅改变第一视频帧中的预设行的颜色信息,就可以提示接收方第二视频帧为目标帧,基本不影响视频质量,对于其他视频帧没有图像损失。

需要注意的是,图1A和图1B所示仅为可以应用本公开实施例的场景的示例,以帮助本领域技术人员理解本公开的技术内容,但并不意味着本公开实施例不可以用于其他设备、系统、环境或场景。

图2示意性示出了根据本公开实施例的视频处理方法的流程图。

如图2所示,该视频处理方法包括操作S210~S240。

在操作S210,获取第一视频帧。

在操作S220,确定第一视频帧中的预设行,其中,预设行中包含有多个像素点,每个像素点都具有各自的第一颜色值。

根据本公开的实施例,由于视频是由许多静止的图片所组成的,一张静止的图片可以称作一帧视频帧。,每一帧视频帧上可以有若干行,每一行上有多个像素点。每个像素点都具有各自的第一颜色值,其中,每一行上不同像素点的第一颜色值可以相同也可以不同。例如,在每一行上像素点的第一颜色值都相同的情况下,该行的颜色信息就为纯色的。在每一行上像素点的第一颜色值都不相同的情况下,该行的颜色信息可能是彩色的。

在操作S230,将预设行中包含的多个像素点各自的第一颜色值调整为各自对应的第二颜色值,得到第二视频帧。

根据本公开的实施例,预设行可以是视频帧的最上面或最底部一行或多行,为了减少视频解析过程中的计算量,预设行的数量可以是一行或少量的几行。根据本公开的实施例,在确定预设行之后,可以预设行中包含的多个像素点各自的第一颜色值调整为各自对应的第二颜色值,其中,多个像素点各自的第二颜色值可以相同也可以不同,当然,需要说明的是,在改变预设行中包含的多个像素点的第一颜色值以后,需要能够被视频接收方监视到第二视频帧中的颜色值的变化。例如,当多个像素点各自的第一颜色值相同的情况下,说明预设行的颜色信息为纯色,可以将多个像素点的第一颜色值调整为各自对应的第二颜色值,该各自不同的第二颜色值是不同的,此时,预设行修改后的颜色信息变为彩色的。

在操作S240,将第一视频帧替换为第二视频帧,以使接收端能够根据第二视频帧中预设行的颜色信息将第二视频帧确定为目标视频帧。

根据本公开的实施例,由于第二视频帧中预设行的颜色信息发生了变化,因此,接收端能够根据第二视频帧中预设行的颜色信息将第二视频帧确定为目标视频帧。

通过本公开的实施例,使得可以仅改变第一视频帧中的预设行的颜色信息,就可以提示接收方第二视频帧为目标帧,基本不影响视频质量,对于其他视频帧没有图像损失,同时由于仅改变第一视频帧中的预设行的颜色信息,使得解析视频帧的时候处理器的计算量小,不会影响视频的流畅度,提高了用户体验。

下面参考图3~图6,结合具体实施例对图2所示的方法做进一步说明。

图3示意性示出了根据本公开实施例的将预设行中包含的多个像素点各自的第一颜色值调整为各自对应的第二颜色值的流程图。

如图3所示,将预设行中包含的多个像素点各自的第一颜色值调整为各自对应的第二颜色值包括操作S231~S233。

在操作S231,将预设行中包含的多个像素点分成N组像素组,其中,N组像素组中的每一组像素组中包含一个或多个像素点。

在操作S232,为N组像素组中的每一组像素组分别确定各自的目标颜色信息。

根据本公开的实施例,例如,将预设行中包含的多个像素点分成3组像素组,每一组像素组分别确定各自的目标颜色信息可以是像素组1的目标颜色信息为红色,像素组2的目标颜色信息为黄色,像素组3的目标颜色信息为蓝色。

根据本公开的实施例,N的大小可以根据实际情况进行确定,可以参考视频传输的容错率,将N确定为容错率低的数值,因此,本领域技术人员可以根据相关技术进行进一步确定。

在操作S233,根据每一组像素组相对应的目标颜色信息,将每一组像素组中的一个或多个像素点的第一颜色值调整为各自对应的第二颜色值。

根据本公开的实施例,例如,根据像素组1的目标颜色信息红色,将像素组1中的一个或多个像素点的第一颜色值调整为表征红色的第二颜色值。根据像素组2的目标颜色信息黄色,将像素组2中的一个或多个像素点的第一颜色值调整为表征黄色的第二颜色值。根据像素组3的目标颜色信息蓝色,将像素组3中的一个或多个像素点的第一颜色值调整为表征蓝色的第二颜色值。

通过本公开的实施例,可以将多个像素点进行分组,每个像素组中的像素点的颜色值可以调成一种颜色值,不同的像素组可以调成不同的颜色值。使得可以将第一视频帧中的行调整为彩色的,可以更加醒目的提示接收方第二视频帧为目标视频帧。

图4示意性示出了根据本公开另一实施例的将预设行中包含的多个像素点各自的第一颜色值调整为各自对应的第二颜色值的流程图。

如图4所示,将预设行中包含的多个像素点各自的第一颜色值调整为各自对应的第二颜色值包括操作S234~S239。

在操作S234,将预设行中包含的多个像素点分成N组像素组,其中,N组像素组中的每一组像素组中包含一个或多个像素点。

在操作S235,从N组像素组中确定出M组像素组,其中,M为小于N的整数。

在操作S236,为N组像素组中除M组像素组之外的每一组像素组分别确定各自的目标颜色信息。

根据本公开的实施例,例如,将预设行中包含的多个像素点分成10组像素组,从10组像素组中确定出3组像素组。可以为10组像素组中除确定的3组像素组之外的每一组像素组分别确定各自的目标颜色信息。例如,10组像素组的编号为像素组1,像素组2…像素组10,确定出的M组像素组可以是像素组5、像素组6和像素组7。

因此,需要为像素组1,像素组2、像素组3、像素组4、像素组8、像素组9和像素组10确定各自的目标颜色信息。

在操作S237,根据N组像素组中除M组像素组之外的每一组像素组各自的目标颜色信息,将N组像素组中除M组像素组之外的每一组像素组中的像素点各自的第一颜色值调整为相应的第二颜色值。

在操作S238,获取操作指令,其中,操作指令用于调整第一视频帧的展示效果。

根据本公开的实施例,操作指令的种类包括多种,例如可以是增加特效的操作指令,例如还可以是对视频进行暂停操作的操作指令。以增加特效的操作指令为例,根据操作指令调整第一视频帧的展示效果可以是使得视频的具有特效的展示效果。

在操作S239,将M组像素组中的每一组像素组中的像素点的第一颜色值调整为与操作指令所对应的数值。

根据本公开的实施例,以上述确定出的M组像素组可以是像素组5、像素组6和像素组7为例,像素组5、像素组6和像素组7中每一个像素组中都包含一个或多个像素点,每个像素点都具有相应的第一颜色值,为了将操作指令的信息通过预设行展示出来,可以将像素组5、像素组6和像素组7中的像素点的第一颜色值调整为与操作指令所对应的数值。

根据本公开的实施例,每个像素组都可以作为一个整体,每一个整体都可以填入相同的数据,数据结构可以是:像素组1,像素组2、像素组3、像素组4、像素组5、像素组6、像素组7、像素组8、像素组9和像素组10。根据本公开的实施例,还可以将N组像素组中除M组像素组之外的每一组像素组作为填入校验码的像素组,在视频传输的过程中,像素组1,像素组2、像素组3、像素组4、像素组8、像素组9和像素组10中的数据作为前后校验码,校验码可以用于判定解析的视频帧是否为目标视频帧,在是的情况下,可以快速从该预设行中提取相关信息。而像素组5、像素组6、像素组7中的数据可以作为中间信息。

通过本公开的实施例,可以将用户的操作指令填入到确定的M组像素组中的像素点中,使得视频接收端可以直接解析该行的视频数据,快速提取发送方操作的相关信息,提高了用户体验。

图5示意性示出了根据本公开实施例的确定第一视频帧中的预设行的流程图。

如图5所示,确定第一视频帧中的预设行包括操作S221~S221。

在操作S221,确定第一视频帧被传输时的缩放比例。

在操作S222,根据第一视频帧的缩放比例确定预设行的数量。

根据本公开的实施例,例如,第一视频帧被传输时的缩放比例为80%,则可以确定预设行的数量为3行,第一视频帧被传输时的缩放比例为100%,则可以确定预设行的数量为1行。第一视频帧被传输时的缩放比例为120%,则可以确定预设行的数量为1行。

根据本公开的实施例,由于视频在传输过程中为了适应不同分辨率的显示屏,或者为了达到视频传输要求,可能会将第一视频帧进行一定的缩放。为了在第一视频帧被压缩,可能将预设行中的数据丢失的情况下,不影响预设行的展示效果,可以根据第一视频帧的缩放比例确定预设行的数量。

图6示意性示出了根据本公开另一实施例的视频处理方法的流程图。

如图6所示,在根据第一视频帧被传输时的缩放比例确定预设行的数量为多个的情况下,视频处理方法还包括操作S250~S260。

在操作S250,根据第一视频帧被传输时的缩放比例判断第一视频帧是否需要被压缩。

在操作S260,在第一视频帧需要被压缩的情况下,将多个预设行中每一行的像素点各自的第一颜色值都调整为相同的颜色值。

根据本公开的实施例,例如,第一视频帧被传输时的缩放比例为80%,确定预设行的数量为多个,则判断第一视频帧需要被压缩,可以多个预设行中每一行的像素点各自的第一颜色值都调整为相同的颜色值。

根据本公开的实施例,由于视频压缩时,可能会丢失数据,所以改变预设行的数量,可以防止修改后的预设行的颜色信息丢失严重。此外,在第一视频帧需要被压缩的情况下,被修改的行可能被隐藏或者消失,所以将多个预设行的颜色信息调整为同一颜色,也即将多个预设行中每一行的像素点各自的第一颜色值都调整为相同的颜色值,接收端只需关注颜色即可确定是否为目标视频帧。

图7示意性示出了根据本公开实施例的视频处理装置的框图。

如图7所示,视频处理装置300包括获取模块310、确定模块320、第一调整模块330和替换模块340。

获取模块310用于获取第一视频帧。

确定模块320用于确定第一视频帧中的预设行,其中,预设行中包含有多个像素点,每个像素点都具有各自的第一颜色值。

第一调整模块330用于将预设行中包含的多个像素点各自的第一颜色值调整为各自对应的第二颜色值,得到第二视频帧。

替换模块340用于将第一视频帧替换为第二视频帧,以使接收端能够根据第二视频帧中预设行的颜色信息将第二视频帧确定为目标视频帧。

通过本公开的实施例,使得可以仅改变第一视频帧中的预设行的颜色信息,就可以提示接收方第二视频帧为目标帧,基本不影响视频质量,对于其他视频帧没有图像损失,同时由于仅改变第一视频帧中的预设行的颜色信息,使得解析视频帧的时候处理器的计算量小,不会影响视频的流畅度,提高了用户体验。

图8示意性示出了根据本公开实施例的第一调整模块的框图。

如图8所示,根据本公开的实施例,第一调整模块330包括第一分类单元331、第一确定单元332和第一调整单元333。

第一分类单元331用于将预设行中包含的多个像素点分成N组像素组,其中,N组像素组中的每一组像素组中包含一个或多个像素点。

第一确定单元332用于为N组像素组中的每一组像素组分别确定各自的目标颜色信息。

第一调整单元333用于根据每一组像素组相对应的目标颜色信息,将每一组像素组中的一个或多个像素点的第一颜色值调整为各自对应的第二颜色值。

通过本公开的实施例,可以将多个像素点进行分组,每个像素组中的像素点的颜色值可以调成一种颜色值,不同的像素组可以调成不同的颜色值。使得可以将第一视频帧中的行调整为彩色的,可以更加醒目的提示接收方第二视频帧为目标视频帧。

图9示意性示出了根据本公开另一实施例的第一调整模块的框图。

如图9所示,根据本公开的实施例,第一调整模块330包括第二分类单元334、第二确定单元335、第三确定单元336、第二调整单元337、获取单元338和第三调整单元339。

第二分类单元334用于将预设行中包含的多个像素点分成N组像素组,其中,N组像素组中的每一组像素组中包含一个或多个像素点。

第二确定单元335用于从N组像素组中确定出M组像素组,其中,M为小于N的整数。

第三确定单元336用于为N组像素组中除M组像素组之外的每一组像素组分别确定各自的目标颜色信息。

第二调整单元337用于根据N组像素组中除M组像素组之外的每一组像素组各自的目标颜色信息,将N组像素组中除M组像素组之外的每一组像素组中的像素点各自的第一颜色值调整为相应的第二颜色值。

获取单元338用于获取操作指令,其中,操作指令用于调整第一视频帧的展示效果。

第三调整单元339用于将M组像素组中的每一组像素组中的像素点的第一颜色值调整为与操作指令所对应的数值。

通过本公开的实施例,可以将用户的操作指令填入到确定的M组像素组中的像素点中,使得视频接收端可以直接解析该行的视频数据,快速提取发送方操作的相关信息,提高了用户体验。

图10示意性示出了根据本公开实施例的确定模块的框图。

如图10所示,根据本公开的实施例,确定模块320包括第四确定单元321和第五确定单元322。

第四确定单元321用于确定第一视频帧被传输时的缩放比例。

第五确定单元322用于根据第一视频帧的缩放比例确定预设行的数量。

根据本公开的实施例,由于视频在传输过程中为了适应不同分辨率的显示屏,或者为了达到视频传输要求,可能会将第一视频帧进行一定的缩放。为了在第一视频帧被压缩,可能将预设行中的数据丢失的情况下,不影响预设行的展示效果,可以根据第一视频帧的缩放比例确定预设行的数量。

图11示意性示出了根据本公开另一实施例的视频处理装置的框图。

如图11所示,根据本公开的实施例,在根据第一视频帧被传输时的缩放比例确定预设行的数量为多个的情况下,视频处理装置300除了包括获取模块310、确定模块320、第一调整模块330和替换模块340,还包括判断模块350和第二调整模块360。

判断模块350用于根据第一视频帧被传输时的缩放比例判断第一视频帧是否需要被压缩。

第二调整模块360用于在第一视频帧需要被压缩的情况下,将多个预设行中每一行的像素点各自的第一颜色值都调整为相同的颜色值。

根据本公开的实施例,由于视频压缩时,可能会丢失数据,所以改变预设行的数量,可以防止修改后的预设行的颜色信息丢失严重。此外,在第一视频帧需要被压缩的情况下,被修改的行可能被隐藏或者消失,所以将多个预设行的颜色信息调整为同一颜色,也即将多个预设行中每一行的像素点各自的第一颜色值都调整为相同的颜色值,接收端只需关注颜色即可确定是否为目标视频帧。

根据本公开的实施例的模块、子模块、单元、子单元中的任意多个、或其中任意多个的至少部分功能可以在一个模块中实现。根据本公开实施例的模块、子模块、单元、子单元中的任意一个或多个可以被拆分成多个模块来实现。根据本公开实施例的模块、子模块、单元、子单元中的任意一个或多个可以至少被部分地实现为硬件电路,例如现场可编程门阵列(FPGA)、可编程逻辑阵列(PLA)、片上系统、基板上的系统、封装上的系统、专用集成电路(ASIC),或可以通过对电路进行集成或封装的任何其他的合理方式的硬件或固件来实现,或以软件、硬件以及固件三种实现方式中任意一种或以其中任意几种的适当组合来实现。或者,根据本公开实施例的模块、子模块、单元、子单元中的一个或多个可以至少被部分地实现为计算机程序模块,当该计算机程序模块被运行时,可以执行相应的功能。

例如,获取模块310、确定模块320、第一调整模块330、替换模块340、判断模块350、第二调整模块360、第四确定单元321、第五确定单元322、第一分类单元331、第一确定单元332和第一调整单元333、第二分类单元334、第二确定单元335、第三确定单元336、第二调整单元337、获取单元338和第三调整单元339中的任意多个可以合并在一个模块或单元中实现,或者其中的任意一个模块或单元可以被拆分成多个模块或单元。或者,这些模块中的一个或多个模块的至少部分功能可以与其他模块的至少部分功能相结合,并在一个模块中实现。根据本公开的实施例,获取模块310、确定模块320、第一调整模块330、替换模块340、判断模块350、第二调整模块360、第四确定单元321、第五确定单元322、第一分类单元331、第一确定单元332和第一调整单元333、第二分类单元334、第二确定单元335、第三确定单元336、第二调整单元337、获取单元338和第三调整单元339中的至少一个可以至少被部分地实现为硬件电路,例如现场可编程门阵列(FPGA)、可编程逻辑阵列(PLA)、片上系统、基板上的系统、封装上的系统、专用集成电路(ASIC),或可以通过对电路进行集成或封装的任何其他的合理方式等硬件或固件来实现,或以软件、硬件以及固件三种实现方式中任意一种或以其中任意几种的适当组合来实现。或者,获取模块310、确定模块320、第一调整模块330、替换模块340、判断模块350、第二调整模块360、第四确定单元321、第五确定单元322、第一分类单元331、第一确定单元332和第一调整单元333、第二分类单元334、第二确定单元335、第三确定单元336、第二调整单元337、获取单元338和第三调整单元339中的至少一个可以至少被部分地实现为计算机程序模块,当该计算机程序模块被运行时,可以执行相应的功能。

本公开的另一个方面提供了一种电子设备,包括:存储器,其上存储有计算机可执行指令;以及处理器,用于运行所述指令,以执行如上所述的视频处理方法。

图12示意性示出了根据本公开实施例的适于实现本公开的方法的电子设备的框图。图12示出的电子设备仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。

如图12所示,电子设备400包括处理器410、计算机可读存储介质420。该电子设备400可以执行根据本公开实施例的方法。

具体地,处理器410例如可以包括通用微处理器、指令集处理器和/或相关芯片组和/或专用微处理器(例如,专用集成电路(ASIC)),等等。处理器410还可以包括用于缓存用途的板载存储器。处理器410可以是用于执行根据本公开实施例的方法流程的不同动作的单一处理单元或者是多个处理单元。

计算机可读存储介质420,例如可以是能够包含、存储、传送、传播或传输指令的任意介质。例如,可读存储介质可以包括但不限于电、磁、光、电磁、红外或半导体系统、装置、器件或传播介质。可读存储介质的具体示例包括:磁存储装置,如磁带或硬盘(HDD);光存储装置,如光盘(CD-ROM);存储器,如随机存取存储器(RAM)或闪存;和/或有线/无线通信链路。

计算机可读存储介质420可以包括计算机程序421,该计算机程序421可以包括代码/计算机可执行指令,其在由处理器410执行时使得处理器410执行根据本公开实施例的方法或其任何变形。

计算机程序421可被配置为具有例如包括计算机程序模块的计算机程序代码。例如,在示例实施例中,计算机程序421中的代码可以包括一个或多个程序模块,例如包括421A、模块421B、……。应当注意,模块的划分方式和个数并不是固定的,本领域技术人员可以根据实际情况使用合适的程序模块或程序模块组合,当这些程序模块组合被处理器410执行时,使得处理器410可以执行根据本公开实施例的方法或其任何变形。

根据本发明的实施例,获取模块310、确定模块320、第一调整模块330、替换模块340、判断模块350、第二调整模块360、第四确定单元321、第五确定单元322、第一分类单元331、第一确定单元332和第一调整单元333、第二分类单元334、第二确定单元335、第三确定单元336、第二调整单元337、获取单元338和第三调整单元339中的至少一个可以实现为参考图12描述的计算机程序模块,其在被处理器410执行时,可以实现上面描述的相应操作。

本公开的又一个方面提供了一种计算机可读介质,存储有计算机可执行指令,所述指令在被执行时用于实现如上所述的视频处理方法。

该计算机可读介质可以是上述实施例中描述的设备/装置/系统中所包含的;也可以是单独存在,而未装配入该设备/装置/系统中。

根据本公开的实施例,计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本公开中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、有线、光缆、射频信号等等,或者上述的任意合适的组合。

附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

本领域技术人员可以理解,本公开的各个实施例和/或权利要求中记载的特征可以进行多种组合或/或结合,即使这样的组合或结合没有明确记载于本公开中。特别地,在不脱离本公开精神和教导的情况下,本公开的各个实施例和/或权利要求中记载的特征可以进行多种组合和/或结合。所有这些组合和/或结合均落入本公开的范围。

尽管已经参照本公开的特定示例性实施例示出并描述了本公开,但是本领域技术人员应该理解,在不背离所附权利要求及其等同物限定的本公开的精神和范围的情况下,可以对本公开进行形式和细节上的多种改变。因此,本公开的范围不应该限于上述实施例,而是应该不仅由所附权利要求来进行确定,还由所附权利要求的等同物来进行限定。

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