基于深度学习的移动网络视频码率实时调整方法和装置与流程

文档序号:29693350发布日期:2022-04-16 12:21阅读:271来源:国知局
基于深度学习的移动网络视频码率实时调整方法和装置与流程

1.本发明涉及视频传输技术领域,尤其涉及的是一种基于深度学习的移动网络视频码率实时调整方法和装置。


背景技术:

2.移动网络上传输音视频时,由于移动网络的特性,使得移动网络中端对端的吞吐量、延迟等都具有很高的时变性,并且在不同的用户之间由于网络资源竞争使得这些网络状态随时间动态波动,使得现有的固定规则码率调整算法难以实现良好的码率控制。
3.因此,现有技术还有待改进和发展。


技术实现要素:

4.本发明的主要目的在于提供一种基于深度学习的移动网络视频码率实时调整方法、装置、智能终端及存储介质,旨在解决现有技术中固定规则码率调整算法难以根据移动网络的网络信号质量自动调节传输视频的码率。
5.为了实现上述目的,本发明提供了一种基于深度学习的移动网络视频码率实时调整方法,其中,上述方法包括:
6.实时获取移动网络用于码率调整决策的网络参数;
7.基于所述网络参数,预先建立的神经网络实时调整视频传输码率;
8.获取视频播放时生成的反馈信号;
9.基于所述反馈信号,根据最大化累积奖励算法更新所述神经网络的参数。
10.可选的,所述视频播放时生成反馈信号的方法,包括:
11.获取视频播放时的实时误码率和丢帧率;
12.将所述实时误码率和所述丢帧率组合,形成所述反馈信号。
13.可选的,预先建立所述神经网络的方法,包括:
14.采集移动网络的训练参数;
15.基于所述训练参数,根据网络拥塞控制算法获得决策结果;
16.基于所述训练参数和所述决策结果,训练所述神经网络。
17.可选的,所述训练参数包括:码流大小、丢包率、网络模式、网络状态和视频播放状态。
18.可选的,所述基于所述网络参数,预先建立的神经网络实时调整视频传输码率,包括:
19.基于所述网络参数,所述神经网络生成码率调整决策;
20.根据所述码率调整决策实时调节视频传输码率。
21.可选的,所述实时获取移动网络用于码率调整决策的网络参数,包括:
22.基于视频的当前码率,获取视频的编码缓冲状态;
23.获取移动网络当前模式下的无线信号质量和网络状态;
24.获取视频当前播放状态;
25.将所述编码缓冲状态、所述无线信号质量、所述网络状态和所述播放状态加权组合,形成所述网络参数。
26.可选的,所述神经网络包括三个卷积层、两个池化层和两个全连接层。
27.为了实现上述目的,本发明第二方面还提供了一种基于深度学习的移动网络视频码率实时调整装置,包括:
28.网络参数获取模块,用于实时获取移动网络用于码率调整决策的网络参数;
29.码率调整模块,用于基于所述网络参数,预先建立的神经网络实时调整视频传输码率;
30.反馈信号获取模块,用于获取视频播放时生成的反馈信号;
31.更新模块,用于基于所述反馈信号,根据最大化累积奖励算法更新所述神经网络的参数。
32.本发明第三方面提供一种智能终端,上述智能终端包括存储器、处理器以及存储在上述存储器上并可在上述处理器上运行的基于深度学习的移动网络视频码率实时调整程序,上述基于深度学习的移动网络视频码率实时调整程序被上述处理器执行时实现任意一项上述基于深度学习的移动网络视频码率实时调整方法的步骤。
33.本发明第四方面提供一种计算机可读存储介质,上述计算机可读存储介质上存储有基于深度学习的移动网络视频码率实时调整程序,上述基于深度学习的移动网络视频码率实时调整程序被处理器执行时实现任意一项上述基于深度学习的移动网络视频码率实时调整方法的步骤。
34.由上述可见,本发明的基于深度学习的移动网络视频码率实时调整方法、装置、智能终端及存储介质,实时获取移动网络用于码率调整决策的网络参数;基于所述网络参数,通过预先建立的神经网络实时调整视频传输码率;获取视频播放时生成的反馈信号;基于反馈信号,根据最大化累积奖励算法更新所述神经网络的参数。通过基于深度学习的神经网络根据当前移动网络参数实时动态调整视频码率,从而能够在移动网络信号不稳定的情况下,实现流畅的视频播放效果。
附图说明
35.为了更清楚地说明本发明实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其它的附图。
36.图1是本发明实施例提供的基于深度学习的移动网络视频码率实时调整方法的流程示意图;
37.图2是本发明实施图1中步骤s200的具体流程示意图;
38.图3是本发明实施图1中步骤s300的具体流程示意图;
39.图4是本发明实施例提供的基于深度学习的移动网络视频码率实时调整装置的结构示意图;
40.图5是本发明实施例提供的一种智能终端的内部结构原理框图。
具体实施方式
41.以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本发明实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本发明。在其它情况下,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本发明的描述。
42.应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
43.还应当理解,在本发明说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本发明。如在本发明说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
44.还应当进一步理解,在本发明说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
45.如在本说明书和所附权利要求书中所使用的那样,术语“如果”可以依据上下文被解释为“当

时”或“一旦”或“响应于确定”或“响应于检测到”。类似的,短语“如果确定”或“如果检测到[所描述条件或事件]”可以依据上下文被解释为意指“一旦确定”或“响应于确定”或“一旦检测到[所描述的条件或事件]”或“响应于检测到[所描述条件或事件]”。
[0046]
下面结合本发明实施例的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
[0047]
在下面的描述中阐述了很多具体细节以便于充分理解本发明,但是本发明还可以采用其它不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本发明内涵的情况下做类似推广,因此本发明不受下面公开的具体实施例的限制。
[0048]
移动网络上传输音视频时,由于移动网络的特性,使得移动网络中端对端的吞吐量、延迟等都具有很高的时变性,并且在不同的用户之间由于网络资源竞争使得这些网络状态随时间动态波动。使得根据网络和视频内容生成的固定规则的码率调整算法难以实现良好的码率控制。
[0049]
本发明通过基于深度学习的神经网络根据当前移动网络参数实时动态调整视频码率,从而有效对抗网络波动的同时提升视频播放效果。
[0050]
示例性方法
[0051]
如图1所示,本发明实施例提供一种基于深度学习的移动网络视频码率实时调整方法,具体的,上述方法包括如下步骤:
[0052]
步骤s100:实时获取移动网络用于码率调整决策的网络参数;
[0053]
其中,网络参数包括编码缓冲状态、无线信号质量、网络状态和视频播放状态,将这些参数输入到神经网络中,神经网络就能根据这些参数生成码率调整决策,实现对视频码率的调整。具体的,编码缓冲状态是指在视频的当前码率下,视频实时编码的码流大小和缓存区的使用状况,基于视频的当前码率,可以获取到视频的编码缓冲状态;移动网络的当前模式可以从移动设备的无线模块中获取,现有的实时网络模式主要为:5g sa、5g nsa、
4g、3g。无线信号质量可以用rsrp(reference signal receiving power,参考信号接收功率)和rssi(received signal strength indicator接收信号强度指示)来衡量。移动网络状态是指当前网络模式下的实时网络延时和抖动参数。
[0054]
进一步的,还可以对编码缓冲状态、无线信号质量、网络状态和视频播放状态设置不同的权重,将这些参数进行加权组合,作为网络参数用于输入至神经网络中。
[0055]
步骤s200:基于网络参数,通过预先建立的神经网络实时调整视频传输码率;
[0056]
具体的,获取到网络参数后,将网络参数输入至神经网络模型中,神经网络就能实时调整当前视频的传输码率,实现对视频编码参数的自适应调整,从而有效对抗网络波动的同时有效提升视频播放效果。
[0057]
需要说明的是,神经网络是通过学习训练过程预先建立的,通过采用当前主流的实时流媒体网络拥塞控制算法在实际移动网络中长时间运行获得。具体的,在学习阶段,通过采集移动网络的训练参数,这些训练参数可以包括:码流大小、丢包率、网络模式、网络状态和视频播放状态等。然后基于这些训练参数,根据网络拥塞控制算法获得决策结果,并依据训练参数和决策结果对神经网络进行训练。其中,实时流媒体网络拥塞控制算法主要通过丢包率来感知网络拥塞、或者基于时延的方法感知网络拥塞、或者上述两者混合的方法感知网络拥塞。
[0058]
根据移动网络现在时刻的参数信息以及历史信息,神经网络预测输出值。因此神经网络将实时流媒体网络拥塞控制算法作为预测模型,该预测模型具有预测未来动态行为的功能。这样可以像在仿真时那样,任意的给出未来控制策略,观察不同控制策略下的输出变化,从而为比较这些控制策略的优劣提供基础。
[0059]
本实施例中的神经网络具体采用了deep q network(dqn)算法,包括三个卷积层、两个池化层和两个全连接层,用于挖掘视频编码和传输过程中视频内容和网络的潜在特征,并做出码率设置的决策。
[0060]
步骤s300:获取视频播放时生成的反馈信号;
[0061]
步骤s400:基于反馈信号,根据最大化累积奖励算法更新神经网络的参数。
[0062]
具体的,在移动网络接收端进行解码播放后,产生新的播放状态,同时向神经网络实时发送当前码率决策的反馈信号。基于此反馈信号,根据最大化累积奖励算法不断更新神经网络参数。上述反馈信号主要包含采集的实时误码率、丢帧率等反映视频播放状态的参数。
[0063]
也就是说,本发明采用了闭环优化控制的原理,在预测控制中,通过输出的值与神经网络模型的预估值进行比较,获得神经网络模型的预测误差,再利用神经网络模型预测误差对神经网络模型的预测值进行修正。由于对神经网络模型施加了反馈校正的过程,使得预测控制具有很强的抗扰动和克服系统不确定性的能力。因此,本发明的神经网络的优化与通常的离散最优控制算法不同,它不是采用一个不变的全局最优目标,而是采用滚动式的有限时域优化策略。即优化过程不是一次离线完成的,而是反复在线进行的。
[0064]
综上所述,本发明方案实时获取移动网络用于码率调整决策的网络参数;基于所述网络参数,预先建立的神经网络实时调整视频传输码率;基于接收的反馈信号,根据最大化累积奖励算法更新所述神经网络的参数。通过基于深度学习的神经网络根据当前移动网络参数实时动态调整视频码率,从而有效对抗网络波动的同时提升视频播放效果。
[0065]
在一个实施例中,上述步骤s200更具体地包括如图2所示的步骤:
[0066]
步骤s210:基于网络参数,神经网络生成码率调整决策;
[0067]
步骤s220:根据码率调整决策实时调节视频码率;
[0068]
具体的,根据获得的网络参数,神经网络根据可用带宽、缓冲区大小等指标来调整视频码率,以便为下一个视频片段选择适当的码率,从而生成码率调整决策。即:神经网络通过预测模型控制最优化,预测合适的码率。再根据生成码率调整决策实时对当前移动网络上的视频编码码率、传输码率进行调整。
[0069]
由上可见,本实施例实现了利用神经网络的预测模型动态对移动网络的视频编码码率、传输码率的动态调整。
[0070]
在一个实施例中,上述步骤s300更具体地包括如图3所示的步骤:
[0071]
步骤s310:获取视频播放时的实时误码率和丢帧率;
[0072]
步骤s320:将实时误码率和丢帧率组合,形成所述反馈信号;
[0073]
具体的,移动网络接收端接收到视频后进行解码播放的同时,并实时统计当前播放视频的误码率和丢帧率,将实时误码率和丢帧率组合作为反馈信号发送给神经网络形成奖励反馈机制。通过该反馈机制能有效提高神经网络的预测准确度。可选的,也可以组合其他的视频播放qoe指标参数形成反馈信号。
[0074]
示例性设备
[0075]
如图4中所示,对应于基于深度学习的移动网络视频码率实时调整方法,本发明实施例还提供一种基于深度学习的移动网络视频码率实时调整装置,上述基于深度学习的移动网络视频码率实时调整装置包括:
[0076]
网络参数获取模块600,用于实时获取移动网络用于码率调整决策的网络参数;
[0077]
其中,网络参数包括编码缓冲状态、无线信号质量、网络状态和视频播放状态,将这些参数输入到神经网络中,神经网络就能根据这些参数生成码率调整决策,实现对视频码率的调整。具体的,编码缓冲状态是指在视频的当前码率下,视频实时编码的码流大小和缓存区的使用状况,基于视频的当前码率,可以获取到视频的编码缓冲状态;移动网络的当前模式可以从移动设备的无线模块中获取,现有的实时网络模式主要为:5g sa、5g nsa、4g、3g。无线信号质量可以用rsrp(reference signal receiving power,参考信号接收功率)和rssi(received signal strength indicator接收信号强度指示)来衡量。移动网络状态是指当前网络模式下的实时网络延时和抖动参数。
[0078]
进一步的,还可以对编码缓冲状态、无线信号质量、网络状态和视频播放状态设置不同的权重,将这些参数进行加权组合,作为网络参数用于输入至神经网络中。
[0079]
码率调整模块610,用于基于网络参数,预先建立的神经网络实时调整视频传输码率;
[0080]
具体的,获取到网络参数后,将网络参数输入至神经网络模型中,神经网络就能实时调整当前视频的传输码率,实现对视频编码参数的自适应调整,从而有效对抗网络波动的同时有效提升视频播放效果。
[0081]
需要说明的是,神经网络是通过学习训练过程预先建立的,通过采用当前主流的实时流媒体网络拥塞控制算法在实际移动网络中长时间运行获得。具体的,在学习阶段,通过采集移动网络的训练参数,这些训练参数可以包括:码流大小、丢包率、网络模式、网络状
态和视频播放状态等。然后基于这些训练参数,根据网络拥塞控制算法获得决策结果,并依据训练参数和决策结果对神经网络进行训练。其中,实时流媒体网络拥塞控制算法主要通过丢包率来感知网络拥塞、或者基于时延的方法感知网络拥塞、或者上述两者混合的方法感知网络拥塞。
[0082]
根据移动网络现在时刻的参数信息以及历史信息,神经网络预测输出值。因此神经网络将实时流媒体网络拥塞控制算法作为预测模型,该预测模型具有预测未来动态行为的功能。这样可以像在仿真时那样,任意的给出未来控制策略,观察不同控制策略下的输出变化,从而为比较这些控制策略的优劣提供基础。
[0083]
反馈信号获取模块620,用于获取视频播放时生成的反馈信号;
[0084]
更新模块630,用于基于反馈信号,根据最大化累积奖励算法更新神经网络的参数。
[0085]
具体的,在移动网络接收端进行解码播放后,产生新的播放状态,同时向神经网络实时发送当前码率决策的反馈信号。基于此反馈信号,根据最大化累积奖励算法不断更新神经网络参数。上述反馈信号主要包含采集的实时误码率、丢帧率等反映视频播放状态的参数。
[0086]
也就是说,本发明采用了闭环优化控制的原理,在预测控制中,通过输出的值与神经网络模型的预估值进行比较,获得神经网络模型的预测误差,再利用神经网络模型预测误差对神经网络模型的预测值进行修正。由于对神经网络模型施加了反馈校正的过程,使得预测控制具有很强的抗扰动和克服系统不确定性的能力。因此,本发明的神经网络的优化与通常的离散最优控制算法不同,它不是采用一个不变的全局最优目标,而是采用滚动式的有限时域优化策略。即优化过程不是一次离线完成的,而是反复在线进行的。
[0087]
本实施例中,上述基于深度学习的移动网络视频码率实时调整装置的各模块的具体功能可以参照上述基于深度学习的移动网络视频码率实时调整方法中的对应描述,在此不再赘述。
[0088]
基于上述实施例,本发明还提供了一种智能终端,其原理框图可以如图5所示。上述智能终端包括通过系统总线连接的处理器、存储器、网络接口以及显示屏。其中,该智能终端的处理器用于提供计算和控制能力。该智能终端的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和基于深度学习的移动网络视频码率实时调整程序。该内存储器为非易失性存储介质中的操作系统和基于深度学习的移动网络视频码率实时调整程序的运行提供环境。该智能终端的网络接口用于与外部的终端通过网络连接通信。该基于深度学习的移动网络视频码率实时调整程序被处理器执行时实现上述任意一种基于深度学习的移动网络视频码率实时调整方法的步骤。该智能终端的显示屏可以是液晶显示屏或者电子墨水显示屏。
[0089]
本领域技术人员可以理解,图5中示出的原理框图,仅仅是与本发明方案相关的部分结构的框图,并不构成对本发明方案所应用于其上的智能终端的限定,具体的智能终端可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
[0090]
在一个实施例中,提供了一种智能终端,上述智能终端包括存储器、处理器以及存储在上述存储器上并可在上述处理器上运行的基于深度学习的移动网络视频码率实时调整程序,上述基于深度学习的移动网络视频码率实时调整程序被上述处理器执行时进行以
下操作指令:
[0091]
实时获取移动网络用于码率调整决策的网络参数;
[0092]
基于所述网络参数,预先建立的神经网络实时调整视频传输码率;
[0093]
基于接收的反馈信号,根据最大化累积奖励算法更新所述神经网络的参数。
[0094]
本发明实施例还提供一种计算机可读存储介质,上述计算机可读存储介质上存储有基于深度学习的移动网络视频码率实时调整程序,上述基于深度学习的移动网络视频码率实时调整程序被处理器执行时实现本发明实施例提供的任意一种基于深度学习的移动网络视频码率实时调整方法的步骤。
[0095]
应理解,上述实施例中各步骤的序号大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
[0096]
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将上述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
[0097]
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
[0098]
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各实例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟是以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
[0099]
在本发明所提供的实施例中,应该理解到,所揭露的装置/终端设备和方法,可以通过其它的方式实现。例如,以上所描述的装置/终端设备实施例仅仅是示意性的,例如,上述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以由另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。
[0100]
上述集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,上述计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,上述计算机程序包括计算机程序代码,上述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。上述计算机可读介质可以包括:能够携带上述计算机程序代码的任何实体或装置、记录介质、u盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,上述计算机可读存储介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减。
[0101]
以上所述实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解;其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不是相应技术方案的本质脱离本发明各实施例技术方案的精神和范围,均应包含在本发明的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1