基于鸿蒙系统的分布式视频处理方法、终端和可读介质与流程

专利检索2022-05-10  203


本发明涉及电子设备,尤其涉及基于鸿蒙系统的分布式视频处理方法、终端和可读介质。

背景技术

目前,视频的编码处理大都使用单一设备进行,只有在大批量数据需要同时处理时才使用分布式处理系统进行针对性处理,但是一般都使用云端或多服务器的后台处理实现,不能依据周围的电子设备进行自行组网实现临时组件分布式视频处理系统。

鸿蒙OS是基于微内核、面向5G物联网、面向全场景的分布式操作系统。打通手机、电脑、平板、电视、工业自动化控制、无人驾驶、车机设备、智能穿戴统一成一个操作系统,并且该系统是面向下一代技术而设计的,能兼容全部安卓应用的所有Web应用。创造一个超级虚拟终端互联的世界,将人、设备、场景有机联系在一起。鸿蒙系统,可以实现接触交互,若是应用在家庭分布式中,可以提高视频编码的速度,即让用户不仅仅依靠云端或后台服务器组就实现视频的编码或大批量视频编码。

本发明基于鸿蒙系统,主要提供一种针对视频处理的分布式处理系统,能够利用鸿蒙系统附近的参与组网的终端设备进行视频处理,大大提高视频处理速度。



技术实现要素:

鉴于上述现有技术的不足之处,本发明的目的之一在于提供一种基于鸿蒙系统的分布式视频处理方法,能够使加载鸿蒙系统的智能终端在视频处理时,将视频处理的任务分配到附近的可以参与组网的终端中进行处理,方便快捷。

本发明的目的之二在于提供视频处理终端。

本发明的目的之三在于提供一种计算机可读介质。

为了达到上述目的,本发明采取了以下技术方案:

一方面,本发明提供一种基于鸿蒙系统的分布式视频处理方法,应用于视频处理终端,所述视频处理终端装载有鸿蒙系统,包括:

获取视频源数据,并对所述视频源数据进行预处理得到多个预处理数据;所述预处理数据为所述视频源数据通过所述预处理切割得到;

获取通过对接组网的多个从处理终端的终端参数;所述终端参数包括CPU频率;所述从处理终端装载有鸿蒙系统;

基于每个所述从处理终端的终端参数以及视频处理终端的终端参数,将多个所述预处理数据分配到一个或多个所述从处理终端、以及所述视频处理终端;以使一个或多个所述从处理终端以及所述视频处理终端对分配的预处理数据执行编码操作并对应生成编码子数据;

集合所有的编码子数据,生成编码数据。

进一步的,所述的基于鸿蒙系统的分布式视频处理方法,所述预处理数据包括关键帧数据和预测帧数据;

所述预处理包括:

将所述视频源数据按照GOP分解得到多个预处理组;

提取得到每个所述预处理组的关键帧和预测帧,分别生成所述关键帧数据和所述预测帧数据。

进一步的,所述的基于鸿蒙系统的分布式视频处理方法,针对所述关键帧数据执行的所述编码操作具体包括:

将关键帧分解得到比特平面,并按照阶层从低到高排列;

选取其中的多个高阶比特平面进行重建,得到明文图像;

获取伪随机密钥,将所述明文图像通过随机置乱得到关键编码子数据。

进一步的,所述的基于鸿蒙系统的分布式视频处理方法,针对所述预测帧数据执行的所述编码操作具体包括:

将所述预测帧通过感知压缩转化为预测编码数据。

进一步的,所述的基于鸿蒙系统的分布式视频处理方法,所述分配具体包括:

分别计算每个从处理终端以及视频处理终端的CPU频率占当前组网内的所有所述从处理终端以及所述视频处理终端的CPU频率之和的主频比例;

根据所述主频比例生成对应的分配权重;根据所述分配权重进行分配操作。

进一步的,所述的基于鸿蒙系统的分布式视频处理方法,在分配过程中,所述关键帧数据主要分配到所述CPU频率大于预定频率的所述从处理终端以及视频处理终端中。

进一步的,所述的基于鸿蒙系统的分布式视频处理方法,当有从处理终端脱离组网时,执行以下步骤:

判定任务完成度;所述任务完成度根据接收到的编码子数据以及该从处理终端被分配的预处理数据得到;

根据所述任务完成度以及接收到的编码子数据确定未完成的预处理数据,并按照所述分配权重重新分配。

另一方面,本发明提供一种使用前述中任一所述的分布式视频处理方法的视频处理终端,终端装载有鸿蒙系统,包括:

预处理模块,用于获取视频源数据,并对所述视频源数据进行预处理得到多个预处理数据;所述预处理数据为所述视频源数据通过所述预处理切割得到;

对接模块,用于获取通过对接组网的多个从处理终端的终端参数;所述终端参数包括CPU频率;所述从处理终端装载有鸿蒙系统;

编码模块,用于对分配的预处理数据执行编码操作并对应生成编码子数据;

处理模块,分别与所述预处理模块、所述对接模块、所述编码模块连接,用于基于每个所述从处理终端的终端参数以及视频处理终端的终端参数,将多个所述预处理数据分配到一个或多个所述从处理终端、以及所述视频处理终端;以使一个或多个所述从处理终端以及所述视频处理终端对分配的预处理数据执行编码操作并对应生成编码子数据;并集合所有的编码子数据,生成编码数据。

另一方面,本发明提供一种视频处理终端,包括:

一个或多个存储器,存储有计算机程序;

一个或多个处理器;

所述计算机程序被一个或多个处理器执行时实现前述中任一所述的分布式视频处理方法。

另一方面,本发明提供一种计算机可读介质,存储计算机程序,所述计算机程序被一个或多个处理器执行时实现权前述中任一所述的分布式视频处理方法。

相较于现有技术,本发明提供的基于鸿蒙系统的分布式视频处理方法、终端和可读介质,具有以下有益效果:

使用本发明提供的基于鸿蒙系统的分布式视频处理方法,得到视频源数据后,对视频源数据进行预处理,得到多个预处理数据,进而将多个预处理数据分别通过视频处理中和/或从处理终端进行编码操作,最终得到对应的子编码数据,然后集合所有子编码数据生成编码数据,能够保证多个预处理数据同时由多个终端进行处理,编码速度提高;并且,由于所有终端均装载鸿蒙系统,可以通过触碰互联实现组网,使应用范围更广,更可以通过多个家庭设备组件分布式视频处理系统,提高处理速度,方便快捷。

附图说明

图1是本发明提供的分布式视频处理方法流程图;

图2是本发明提供的视频处理终端的结构框图。

具体实施方式

为使本发明的目的、技术方案及效果更加清楚、明确,以下参照附图并举实施例对本发明进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。

本领域技术人员应当理解,前面的一般描述和下面的详细描述是本发明的示例性和说明性的具体实施例,不意图限制本发明。

本文中术语“包括”,“包含”或其任何其他变体旨在覆盖非排他性包括,使得包括步骤列表的过程或方法不仅包括那些步骤,而且可以包括未明确列出或此类过程或方法固有的其他步骤。同样,在没有更多限制的情况下,以“包含...一个”开头的一个或多个设备或子系统,元素或结构或组件也不会没有更多限制,排除存在其他设备或其他子系统或其他元素或其他结构或其他组件或其他设备或其他子系统或其他元素或其他结构或其他组件。在整个说明书中,短语“在一个实施例中”,“在另一个实施例中”的出现和类似的语言可以但不一定都指相同的实施例。

除非另有定义,否则本文中使用的所有技术和科学术语具有与本发明所属领域的普通技术人员通常所理解的相同含义。

请参阅图1,本发明提供一种基于鸿蒙系统的分布式视频处理方法,应用于视频处理终端,所述视频处理终端装载有鸿蒙系统。所述视频处理终端是分布式视频处理系统中的一个作为主要的运行的终端,起到的作用主要是中控作用,即所述视频处理终端调整配置分布式视频处理系统的正常运维工作。

进一步的,所述视频处理终端以及从处理终端分配不做具体限定,可以指定分布式视频处理系统中任一终端作为视频处理终端。

更进一步的,在分布式视频处理系统中,将第一个接收到视频源数据的终端确定为视频处理终端,使用本发明提供的分布式视频处理方法执行工作。接收到视频源数据的方式不做限定,本领域的技术人员可以根据实际需求在分布式视频处理系统中对视频处理终端进行确定。

更进一步的,所述分布式视频处理系统中的每个终端均装载有鸿蒙系统,具有近距离或触碰组网的功能。近距离组网是指当两个终端相互靠近时,在预定距离范围内,就实现组网功能;触碰组网是指两个终端之间通触碰实现组网。当然,针对近距离组网和所授触碰组网的基础功能本领域的技术人员可以根据实际情况进行实施,本发明不做限定。例如使用鸿蒙系统的基础触碰互联的功能实现。

更进一步的,实施分布式视频处理系统中的每个终端均装载有鸿蒙系统,通过触碰组网对接完成,其中,每个终端可以为智能终端,也可以是相应的服务器类型的终端,当然还可以是家用电器等设备。例如,所述分布式视频处理系统中,每个终端均为服务器设备,且每个设备均使用鸿蒙系统作为运行系统,则此时任一终端接收到与之连接的移动终端的视频源数据后,将作为所述视频处理中,其他终端为从处理终端,使用本发明提供的分布式视频处理方法处理所述视频源数据。再例如,所述分布式视频处理系统是通过家庭设备之间组网实现,家庭设备包括电视机、电脑、手机、路由器、机顶盒、电饭锅、空调等,多个家庭设备之间进行了触碰组网或近距离组网,其中能够进行视频处理工作的设备包括电视机、电脑、手机、机顶盒,则此时所述分布式视频处理系统所包含的终端包括电视机、电脑、手机、机顶盒,多个终端均装载有鸿蒙系统,采用本发明提供的视频处理方法进行视频源数据的处理工作;其中,任一家庭设备得到了视频源数据后,则该设备作为所述视频处理终端,其他家庭设备为从处理终端。

进一步的,若是参与组网的家庭设备中,不具有对应编码模块,则基于鸿蒙系统,将对应编码模块投射到对应的家庭设备中。

基于鸿蒙系统的分布式视频处理方法包括:

获取视频源数据,并对所述视频源数据进行预处理得到多个预处理数据;所述预处理数据为所述视频源数据通过所述预处理切割得到;一般的,所述视频源数据的视频格式不做限定,包括MPEG/MPG/DAT、AVI、MOV、ASF、WMV、nAVI、3GP、REAL VIDEO、MKV、FLV、F4V、RMVB,当然,针对不同的视频格式,本领域的技术人员可以根据对应视频格式的特点进行预处理,使所述视频源数据得到切割,形成多个所述预处理数据。

获取通过对接组网的多个从处理终端的终端参数;所述终端参数包括CPU频率;所述从处理终端装载有鸿蒙系统;所述对接组网的方式不做限定,可以使用局域网组网,也可以使用前述中的近距离组网或触碰组网完成。本实施例中,所述视屏处理终端和所述从处理终端均装载有鸿蒙系统,则优先使用触碰组网。所述终端参数主要包括用于展示所述分布式视频处理系统中每个终端的工作频率的CPU频率,以使预处理数据的分配更加的客观;当然,所述终端参数还可以包括该终端的类型和名称,可以更加快速的识别当前识别是否可以参阅视频处理。例如视频处理终端识别到电饭锅,则不将电饭锅作为从处理终端使用。当然,跟简单的是通过CPU频率进行分配,只要CPU频率低于某一频率值的终端均不作为从处理终端使用。

基于每个所述从处理终端的终端参数以及视频处理终端的终端参数,将多个所述预处理数据分配到一个或多个所述从处理终端、以及所述视频处理终端;以使一个或多个所述从处理终端以及所述视频处理终端对分配的预处理数据执行编码操作并对应生成编码子数据;具体的,本领域的技术人员可以根据视频源数据或运行效率的考量,选择适当编码函数或编码算法对预处理数据进行处理。当然,在分布式视频处理系统中,对于同一个视频源数据,使用一种编码算法或函数。

集合所有的编码子数据,生成编码数据。

使用本发明提供的基于鸿蒙系统的分布式视频处理方法,得到视频源数据后,对视频源数据进行预处理,得到多个预处理数据,进而将多个预处理数据分别通过视频处理中和/或从处理终端进行编码操作,最终得到对应的子编码数据,然后集合所有子编码数据生成编码数据,能够保证多个预处理数据同时由多个终端进行处理,编码速度提高;并且,由于所有终端均装载鸿蒙系统,可以通过触碰互联实现组网,使应用范围更广,更可以通过多个家庭设备组件分布式视频处理系统,提高处理速度,方便快捷。

进一步的,作为优选方案,本实施例中,针对所述分布式视频处理方法生成编码数据,使用对应的解码方法,所述解码方法在数据处理上是编码方法的反向处理过程,区别在于:解码步骤可以是单个设备执行也可以是分布式系统执行。

进一步的,作为优选方案,本实施例中,所述预处理数据包括关键帧数据和预测帧数据;

所述预处理包括:

将所述视频源数据按照GOP分解得到多个预处理组;GOP(Group of Pictures)策略影响编码质量, GOP意思是画面组,一个GOP就是一组连续的画面。GOP是视频序列中的一个图片集,用来辅助随机存取。GOP的第一个图像必须为I帧(关键帧),这样就能保证GOP不需要参考其他图像,可以独立解码;GOP中还包含P帧(预测帧),需要基于I帧才能正常解码。本领域的技术人员可以根据实际需要,可以根据GOP策略进行预处理组的生成,其中,每个预处理组包括一个或多个GOP。

提取得到每个所述预处理组的关键帧和预测帧,分别生成所述关键帧数据和所述预测帧数据。提取关键帧和预测帧的方法,本领域的技术人员可以根据实际需求进行确定,本发明不做限定。

进一步的,作为优选方案,本实施例中,针对所述关键帧数据执行的所述编码操作具体包括:

将关键帧分解得到比特平面,并按照阶层从低到高排列;具体的,像素是由比特(bit)组成的数字。每个像素的灰度是由8个比特(字节)构成的。相当于一幅8比特图像是由8个1比特平面组成。每个比特平面的是在阈值灰度变换函数处理下得到的二值图像,同时, 8个比特平面的阶层从低到高,阶层越高则包含的原图像信息就越多。

选取其中的多个高阶比特平面进行重建,得到明文图像;在本实施例中,一般是使用8个比特平面中的位于高阶层的4-6个比特平面进行中间,可以降低存储空间。

获取伪随机密钥,将所述明文图像通过随机置乱得到关键编码子数据。进一步的,所述伪随机秘钥通过本领域的公知的伪随机处理系统得到,本发明不做限定。所述随机置乱过程为本领域的公知技术手段,本领域的技术人员可以根据实际需求使用确定随机置乱算法对所述明文图像进行随机置乱得到所述关键编码子数据。

进一步的实施例中,针对所述预测帧数据的编码操作可以选用与关键帧数据相同的编码操作过程,也可以使用其他编码操作过程,本发明不做限定。

进一步的,作为优选方案,本实施例中,针对所述预测帧数据执行的所述编码操作具体包括:

将所述预测帧通过感知压缩转化为预测编码数据。具体的,所述感知压缩使用本领域的公知技术手段,本领域的技术人员可以根据实际情况选用适当的感知压缩技术将所述预测帧处理为所述预测编码数据。

进一步的实施例中,针对所述关键帧数据的编码操作可以选用与预测帧数据相同的编码操作过程,也可以使用其他编码操作过程,本发明不做限定。

进一步的,作为优选方案,本实施例中,所述分配具体包括:

分别计算每个从处理终端以及视频处理终端的CPU频率占当前组网内的所有所述从处理终端以及所述视频处理终端的CPU频率之和的主频比例;例如,在某一分布式视频处理系统中,多个终端的CPU频率分别为终端一为2.2GHz、终端二位3.0GHz、终端三为2.8GHz,则CPU频率之和为8GHz,其中,终端一的主频比例为27.5%、终端二的主频比例为37.5%、终端三的主频比例为35%。

根据所述主频比例生成对应的分配权重;根据所述分配权重进行分配操作。所述分配权重根据所述主频比例进行调整,依据上例,可以将多个预处理数据中的27.5%分配给终端一进行处理,将多个预处理数据中的37.5%分配给终端二进行处理,将多个预处理数据中的35%分配给终端三进行处理。

进一步的,作为优选方案,本实施例中,在分配过程中,所述关键帧数据主要分配到所述CPU频率大于预定频率的所述从处理终端以及视频处理终端中。具体的,所述预定频率一般设定为2GHz-3GHz,进一步优选为2.5GHz,这样就可以保证针对关键帧的处理较为稳定且保证处理效率,缩短处理时间。

更进一步的实施例中,所述关键帧的处理可以全部在所述CPU频率最大的终端中进行编码操作,所有所述预测帧则按照其余的终端的CPU频率进行主频比例的重新计算,进而进行分配。例如,在某一分布式视频处理系统中,多个终端的CPU频率分别为终端一为2.2GHz、终端二位3.0GHz、终端三为2.8GHz,则CPU频率之和为8GHz。若是将终端二作为所述关键帧的处理设备(即不参与主频比例的计算),则终端一的主频比例为44%、终端三的主频比例为56%。

进一步的,作为优选方案,本实施例中,当有从处理终端脱离组网时,执行以下步骤:

判定任务完成度;所述任务完成度根据接收到的编码子数据以及该从处理终端被分配的预处理数据得到;本实施例中,所述从处理终端只要生成一个编码子数据就将之发送到所述视频处理终端中,因此,可以顺利计算任务完成度。当然若是所述从处理终端将接收到的所有预处理数据都处理完才发送所有的编码子数据到视频处理终端,则所述任务完成度为0。

根据所述任务完成度以及接收到的编码子数据确定未完成的预处理数据,并按照所述分配权重重新分配。例如,在某一分布式视频处理系统中,多个终端的CPU频率分别为终端一为2.2GHz、终端二位3.0GHz、终端三为2.8GHz,则CPU频率之和为8GHz;将多个预处理数据中的27.5%分配给终端一进行处理,将多个预处理数据中的37.5%分配给终端二进行处理,将多个预处理数据中的35%分配给终端三进行处理。若其中,终端二断开组网,此时就判定任务完成度为50%,则获取剩余的18.75%的预处理数据,按照终端一的主频比例为44%、终端三的主频比例为56%进行分配权重进行重新分配。

请参阅图2,本发明还提供一种使用前述任一实施例所述的分布式视频处理方法的视频处理终端,其特征在于,终端装载有鸿蒙系统,包括:

预处理模块,用于获取视频源数据,并对所述视频源数据进行预处理得到多个预处理数据;所述预处理数据为所述视频源数据通过所述预处理切割得到;

对接模块,用于获取通过对接组网的多个从处理终端的终端参数;所述终端参数包括CPU频率;所述从处理终端装载有鸿蒙系统;

编码模块,用于对分配的预处理数据执行编码操作并对应生成编码子数据;

处理模块,分别与所述预处理模块、所述对接模块、所述编码模块连接,用于基于每个所述从处理终端的终端参数以及视频处理终端的终端参数,将多个所述预处理数据分配到一个或多个所述从处理终端、以及所述视频处理终端;以使一个或多个所述从处理终端以及所述视频处理终端对分配的预处理数据执行编码操作并对应生成编码子数据;并集合所有的编码子数据,生成编码数据。

进一步的,作为优选方案,本实施例中,所述预处理数据包括关键帧数据和预测帧数据;

所述预处理模块在执行的所述预处理包括:

将所述视频源数据按照GOP分解得到多个预处理组;

提取得到每个所述预处理组的关键帧和预测帧,分别生成所述关键帧数据和所述预测帧数据。

进一步的,作为优选方案,本实施例中,所述编码模块针对所述关键帧数据执行的所述编码操作具体包括:

将关键帧分解得到比特平面,并按照阶层从低到高排列;

选取其中的多个高阶比特平面进行重建,得到明文图像;

获取伪随机密钥,将所述明文图像通过随机置乱得到关键编码子数据。

进一步的,作为优选方案,本实施例中,所述编码模块针对所述预测帧数据执行的所述编码操作具体包括:

将所述预测帧通过感知压缩转化为预测编码数据。

进一步的,作为优选方案,本实施例中,所述处理模块在执行所述分配操作时,具体包括:

分别计算每个从处理终端以及视频处理终端的CPU频率占当前组网内的所有所述从处理终端以及所述视频处理终端的CPU频率之和的主频比例;

根据所述主频比例生成对应的分配权重;根据所述分配权重进行分配操作。

进一步的,作为优选方案,本实施例中,当有从处理终端脱离组网时,所述处理模块还执行以下步骤:

判定任务完成度;所述任务完成度根据接收到的编码子数据以及该从处理终端被分配的预处理数据得到;

根据所述任务完成度以及接收到的编码子数据确定未完成的预处理数据,并按照所述分配权重重新分配。

本发明还提供一种视频处理终端,包括:

一个或多个存储器,存储有计算机程序;

一个或多个处理器;

所述计算机程序被一个或多个处理器执行时实现前述任一实施例所述的分布式视频处理方法。

本发明还提供一种计算机可读介质,存储计算机程序,所述计算机程序被一个或多个处理器执行时实现前述任一实施例所述的分布式视频处理方法。

计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。

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

可以理解的是,对本领域普通技术人员来说,可以根据本发明的技术方案及其发明构思加以等同替换或改变,而所有这些改变或替换都应属于本发明所附的权利要求的保护范围。

转载请注明原文地址:https://win.8miu.com/read-49.html

最新回复(0)