一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

自适应视频流式传输系统和方法与流程

2021-11-09 21:05:00 来源:中国专利 TAG:


1.本公开一般涉及将音频、视频和相关内容流式传输到客户端设备。更具体地,例如,本公开的实施例涉及用于向内容分发网络中的客户端设备进行自适应视频流式传输的系统和方法。


背景技术:

2.视频流式传输服务向客户端提供视频、音频和其它相关内容的按需(on

demand)流式传输。在一些系统中,内容提供者使客户端订户可以获得电影、电视节目和其它视频内容。客户端订户可以跨多种不同的网络连接从不同的位置操作不同的设备。因此,视频流式传输服务在将高质量内容递送到每个客户端订户方面面临挑战。另一个挑战是管理和存储为按需服务平台中的每个客户端服务所需的不同格式的视频内容,特别是随着视频内容的数量持续增长。
3.鉴于前述内容,在本领域中存在对于改进的内容递送系统和方法的持续需要,所述系统和方法向各种客户端提供高质量、按需内容,同时有效地利用内容提供者资源。
附图说明
4.参考以下附图和下面的详细描述可以更好地理解本公开的各方面及其优点。应当理解,相似的附图标记用于标识在附图中的一个或多个中图示的相似的元件,其中,附图中的展示是为了说明本公开的实施例的目的,而不是为了限制本公开的实施例的目的。附图中的部件不一定按比例,而是将重点放在清楚地图示本公开的原理上。
5.图1是图示根据本公开的一个或多个实施例的内容递送系统的图。
6.图2图示了根据一个或多个实施例的可以在内容递送系统的一个或多个物理设备中实现的示例媒体服务器部件。
7.图3图示了根据一个或多个实施例的可以在一个或多个物理设备中实现的客户端设备部件。
8.图4图示了根据一个或多个实施例的内容递送系统的示例操作。
9.图5图示了根据一个或多个实施例的示例视频会议系统。
10.图6图示了根据一个或多个实施例的示例人工智能训练系统。
具体实施方式
11.本文中公开了用于使用人工智能自适应地流式传输视频内容的系统和方法的各种实施例。
12.视频流式传输服务通过互联网协议(ip)网络将视频内容递送到客户端设备。为了适应各种客户端设备、网络速度和位置,视频流式传输服务通常使用称为自适应比特率流式传输的协议,其通过检测客户端的网络带宽和设备处理能力以及相应地实时调整媒体流的质量来工作。
13.在一些实施例中,使用编码器执行自适应比特率流式传输,该编码器可以将单个源媒体(视频或音频)以多个比特率编码为各种流,其中每个流被划分成一系列的“组块(chunk)”(例如,1

2秒的块)以供递送到流式传输客户端。通常期望以针对网络和客户端设备的资源而优化的分辨率来为客户端设备提供视频。例如,不同的客户端设备可以具有不同的屏幕分辨率,并且所递送的内容可以被优化以用于以每个设备的最大屏幕分辨率向每个设备递送视频(例如,4k tv将请求2160p流,fhd tv将请求1080p流,并且移动电话可以请求720p流)。
14.网络带宽还提供对流式传输质量的约束。例如,如果客户端在具有20

30mbps的带宽(其是对于4k流式传输所需的)的网络上接收到对于4k tv的视频,则可以显示高质量视频。然而,如果网络带宽下降到10mbps(例如,由于网络拥塞),那么客户端可检测到其未按时接收到视频组块并且从下一组块起请求流的较低分辨率(例如,1080p版本)。当带宽恢复(go back up)时,客户端可以从下一组块中提取(pull)4k流。在一些实施例中,利用tv或stb或移动/平板片上系统(soc)内部的硬件按比例放大器(upscaler)(例如,使用双三次插值)来接收、解码和按比例放大(upscale)较低分辨率图像组块(例如,1080p),以匹配显示设备的分辨率。
15.在本公开的各种实施例中,边缘服务器和/或其它设备被配置有包括人工智能处理器架构的神经网络加速器,该人工智能处理器架构包括用于池化、卷积和完全连接的神经网络层的完全可编程向量单元(vpu)和专用处理引擎。神经网络加速器可以嵌入在视频soc内,该视频soc还包括视频缩放引擎(例如,按比例放大器和/或按比例缩小器(downscaler))。本文中公开的按比例放大技术优于常规硬件缩放器(scaler),因为它们可以给出更好的感知质量,并且神经网络模型可以被训练成特定的内容(例如,电影戏剧、动作电影、体育赛事等)的集合。神经网络模型操作为可训练滤波器,并且它的性能可以比硬件缩放器好,尤其是在锐化高频区域(如边缘)周围。
16.在一些实施例中,基于人工智能的分辨率缩放器的使用允许内容分发系统减少在编码服务器侧上以不同分辨率存储的流的数量,由此减少存储成本。在一个实施例中,单个流被存储并连同分辨率缩放模型一起被提供给各种客户端设备,以将流按比例放大到期望的屏幕分辨率。神经网络模型可以是视频整体流的大小的一部分。例如,用于从1080p按比例放大到2160p的神经网络模型可以包括5mb下载量,而全长电影(90分钟长)的流可以是大约6750 mb,从而节省6 gb的存储量和相关联的网络带宽。
17.内容递送系统可以定义用于递送到客户端设备的多个缩放模型。例如,如果内容流是720p分辨率,则系统可以具有用于将视频内容按比例放大到1080p的按比例放大模型以及用于将视频内容按比例放大到2160p的另一按比例放大模型。本文中公开的系统和方法在客户端设备上提供良好质量的按比例放大的视频,而不具有存储和切换多个流以适应于可用网络带宽的内容服务器开销。内容服务器可以被配置为在流式传输会话的开始时下载神经网络缩放模型,可以针对正在被流式传输的特定类型的内容(诸如戏剧、快节奏动作、体育等)来对其进行训练。
18.本公开提供了优于常规系统的许多优点。硬件缩放器可以执行单个流的按比例放大,但是最终质量不那么良好(例如,因为模型不适应于内容)。在本公开中,神经网络缩放提供改进的图片质量和轻微调整缩放比例以适合正被按比例放大的内容的能力。已观察
到,本文中所公开的实施例可通过常规双三次插值方法将峰信噪比(psnr)提高4或更多分贝(db),从而引起改进对人类眼睛的感知图像质量。
19.常规系统还需要存储用于各种分辨率(例如,1080p、4k等)和带宽的视频内容的多个版本。在许多系统中,内容服务器和设备交换消息以基于例如当前带宽容量和客户端处理和显示能力来确定要流式传输哪些内容。与常规自适应缩放技术相比,本公开的其它益处包括在内容服务器处或在云中的降低的存储成本、客户端侧流式传输软件的降低的复杂性、对性能跟踪和消息传递的减少的需要、以及减少的等待时间,这是因为客户端不再需要找出要播放哪个分辨率流。本公开还可用于改进在流式传输基础结构被限制的位置中的图片质量。
20.本文中公开的系统和方法还可以与其它视频流式传输应用(诸如视频会议应用)一起使用。在视频呼叫方面的网络挑战包括下行带宽限制和上行带宽限制两者。视频会话可以包括呼叫中的每个客户端设备上的神经网络分辨率缩放器。例如,以360p或480p实时捕获的视频可以使用本文中的神经网络缩放器公开内容来按比例放大到1080p,以向用户提供更高的感知质量。
21.参考图1,现在将根据本公开的一个或多个实施例描述示例内容分发网络100。在图示的实施例中,内容分发网络100包括内容递送系统110,该内容递送系统110包括一个或多个内容服务器112、一个或多个边缘服务器130和一个或多个客户端设备150。
22.内容递送系统110还包括用于存储用于由内容分发网络100分发的视频内容的内容存储装置114,以及用于由内容递送系统进行训练缩放神经网络用途的神经网络缩放部件。内容服务器112通过网络120可通信地耦合到边缘服务器130,网络120可以包括一个或多个有线和/或无线通信网络。内容递送系统110被配置为将包括音频数据、视频数据和其它媒体数据的视频内容存储在内容存储装置114中,该内容存储装置114可以包括一个或多个数据库、存储设备和/或存储网络。
23.边缘服务器130被配置为从内容服务器112接收媒体内容和神经网络缩放模型,并且流式传输媒体内容并且将神经网络缩放模型递送到客户端设备150。边缘服务器130可以在地理上被分布成跨区网络140向区客户端设备150提供媒体服务。客户端设备150可以访问通过网络120和140中的一个或多个连接的任何数量的边缘服务器130上的内容。
24.图1图示了内容递送网络的一个示例实施例。其它实施例可以包括更多元件、更少元件和/或不同元件,并且本文中描述的各种部件可以跨多个设备和/或网络分布,和/或根据需要被组合成一个或多个设备。
25.在操作中,内容递送系统110接收媒体内容并且对媒体内容进行编码以供递送到客户端设备。编码过程可以包括训练一个或多个神经网络以缩放媒体内容,从而允许有单个媒体文件与训练的神经网络缩放模型一起被递送到客户端设备。在一些实施例中,可以训练按比例放大神经网络模型和按比例缩小(downscale)神经网络模型以适应与每个客户端设备150相关联的不同通信带宽、处理资源和显示分辨率。然后,将编码的媒体内容和相关联的神经网络模型分发给一个或多个边缘服务器130以供递送到客户端设备。
26.每个客户端设备150包括或连接到显示器和音频输出资源。用户可以访问客户端设备150上的应用,以选择和流式传输可用于从边缘服务器130流式传输的媒体内容134。客户端设备150接收与媒体内容和媒体内容的流相关联的神经网络模型136。客户端设备被配
置为对经流式传输的媒体内容进行解码、使用所选择的缩放神经网络来缩放媒体内容、以及将解码和缩放的媒体内容递送到显示器和音频输出资源。在一些实施例中,下载媒体文件以供在稍后的时间进行回放,并且可以在回放期间执行解码和缩放操作。
27.在各种实施例中,客户端设备150可以包括个人计算机、膝上型计算机、平板计算机、移动设备、视频显示系统或被配置为如本文中所述的那样从边缘服务器130接收和播放媒体内容的其它设备。
28.图2图示了根据一个或多个实施例的可以在内容递送网络的一个或多个物理设备中实现的示例媒体服务器部件。如所图示,媒体服务器200包括通信部件202、存储部件204、处理部件206和程序存储器208。媒体服务器200可以表示被配置为执行本文中公开的一些或所有处理步骤的任何类型的网络视频服务器。图2中所图示的部件可实现为独立服务器、可分布在多个不同设备之中、并且可包括附加部件。
29.处理部件206可以被实现为任何适当的处理设备(例如,逻辑设备、微控制器、处理器、专用集成电路(asic)、现场可编程门阵列(fpga)或其它设备),其可以被媒体服务器200用于执行适当的指令,诸如存储在程序存储器208中的软件指令,所述程序存储器208包括神经网络训练部件210、媒体编码部件212、媒体缩放部件214和媒体流式传输部件216。
30.程序存储器208可以包括存储数据和信息的一个或多个存储器设备(例如,存储器部件),所述数据和信息包括图像数据(例如,包括热成像数据)、音频数据、网络信息、相机信息和/或其它类型的传感器数据和/或其它监测信息。存储器设备可包括用于信息存储的各种类型的存储器,包括易失性和非易失性存储器设备,诸如ram(随机存取存储器)、rom(只读存储器)、eeprom(电可擦除只读存储器)、闪速存储器、磁盘驱动器以及本文中所描述的其它类型的存储器。在一些实施例中,处理部件206被配置为执行存储在存储器程序存储器208中的软件指令,以执行本文中描述的各种方法、过程或操作。存储部件204可以包括存储器部件和大容量存储设备,诸如存储区域网络、云存储装置或被配置为存储媒体内容和神经网络信息的其它存储部件。
31.通信部件202可以包括用于使用各种通信协议与其它设备通信的电路或其它部件。例如,通信部件202可包括无线和/或无线通信部件,诸如通过一个或多个网络(诸如蜂窝网络、因特网或其它通信网络)生成、接收和/或处理通信信号的部件。通信部件202可以用于接收媒体内容以供流式传输到一个或多个客户端设备。媒体内容可包括诸如利用工业标准视频压缩格式(其可包括mpeg

2、mpeg

4、h.263、h.264、hevc、av1及mjpeg标准)被压缩以减少网络带宽、图像处理资源的使用及存储量的视频流及文件。
32.参考图3,现在将描述根据本公开的一个或多个实施例的媒体客户端300的示例部件。媒体客户端300被配置为跨网络访问媒体服务器200,以接收和处理媒体内容的流。媒体客户端300包括通信部件302、显示部件304、处理部件306和存储器部件308。处理部件306可包括逻辑设备、微控制器、处理器、专用集成电路(asic)、现场可编程门阵列(fpga)或可由媒体客户端300使用以执行适当指令(诸如存储在存储器308中的软件指令)的其它设备。
33.媒体客户端300被配置为执行存储在存储器308中的媒体流式传输应用312。媒体流式传输应用312可以包括允许用户与媒体服务器对接并且选择用于在媒体客户端300上回放的媒体的用户接口310、被配置为促进媒体客户端300与媒体服务器200之间的通信的边缘服务器接口312、以及用于接收流式传输的媒体内容并且准备供在显示部件304上输出
的媒体的媒体回放模块314(例如,电视机、具有扬声器的计算机监视器、移动电话等)。媒体回放模块314可以包括用于解码和解压缩所接收的视频流的解码器以及被配置为按比例放大所接收的媒体内容以供在媒体客户端300上回放的神经网络缩放器318。
34.图4图示了根据一个或多个实施例的内容递送系统的示例操作。内容递送过程400在内容服务器402处以准备用于流式传输的媒体内容404(例如,电影)开始。将媒体内容压缩并由编码器406编码为由系统支持的视频文件格式,以减小用于流式传输的文件大小。媒体内容404还由媒体分析部件408分析以确定供进一步处理中使用的媒体的类型。媒体类型可以包括戏剧、动作电影、体育赛事等。
35.然后,使用对应于所标识的媒体类型的按比例缩小神经网络410来按比例缩小媒体内容。内容服务器402将编码/下采样的媒体内容412和缩放神经网络414提供给边缘服务器420以供流式传输到一个或多个客户端,诸如客户端设备440。边缘服务器420接收对媒体内容的请求,并且边缘服务器420传输相关联的编码/下采样的媒体内容424和对应的缩放神经网络422。客户端设备440接收编码/下采样的媒体内容442、使用解码器444解码媒体内容、并且应用适当的缩放神经网络446以生成媒体内容452的高分辨率版本,以供在媒体播放器450上回放。
36.所描述的系统和方法减少了对于递送媒体内容的带宽要求。在一些实施例中,生成单个编码/按比例缩小的媒体内容412并且将其连同一个或多个缩放神经网络446一起递送到客户端设备440,以按比例放大客户端设备440上的递送的媒体内容。在一些实施例中,客户端设备440监测媒体流以确定是否有足够的带宽来处理流式传输媒体内容,并且通知边缘服务器420在将编码/按比例缩小的媒体内容424递送到客户端设备440之前对该编码/按比例缩小的媒体内容424进行下采样,以使系统能够进一步适配内容,以供在不能处理编码和下采样的媒体内容的大小的装备上使用。
37.在各种实施例中,编码/按比例缩小的媒体内容424的分辨率被选择以使用边缘服务器420与客户端设备440之间的可用带宽来优化视频质量。然而,在一些情况下,可以在各种时间(例如,高于正常网络流量、网络或设备故障或维护等)使带宽降低/降级。为了适应低带宽场景,缩放神经网络422还可以包括按比例缩小神经网络和对应的按比例放大神经网络。例如,检测到低带宽场景的边缘服务器420和/或客户端设备440可以产生用于边缘服务器420的指令,以在媒体内容424流式传输到客户端设备之前使用缩放神经网络422按比例缩小该媒体内容424,并且客户端设备将接收并应用适当的按比例放大神经网络446。在一个实施方式中,将边缘服务器420配置有三个按比例放大器(例如,以处理四个输出分辨率)和一个按比例缩小器/按比例放大器对就足以为低带宽场景提供附加的灵活性。
38.本领域技术人员将认识到,本文中公开的系统和方法不限于按需媒体内容流式传输服务,并且可以应用于使用流式传输媒体的其它应用。例如,参考图5,视频会议系统510可以使用缩放神经网络来在两个或更多客户端设备550之间进行通信。所图示的实施例示出了主控voip系统,但是将理解,也可以使用其它视频会议配置,包括对等通信。
39.视频会议系统510包括用于管理客户端设备550之间的通信的会话管理器。在一个实施例中,会话管理器512分发缩放神经网络模型以供由客户端用于传入和传出通信两者。客户端设备550可以从用户捕获音频和视频560,并且使用按比例缩小神经网络模型562来媒体对进行编码/按比例缩小,以降低对于上传的媒体的流的带宽要求。同时,客户端设备
550可以经由会话管理器512从其它客户端设备550接收下载的媒体的流。客户端设备使用按比例放大神经网络570对下载的媒体进行解码和按比例放大,并针对用户572输出媒体。
40.在各种实施例中,客户端设备550可以被配置为以两个端点都已经确定为对于条件最优的分辨率来捕获相机流,由此避免在传输之前按比例缩小流的需要。例如,两个端点都同意其可以以720p流式传输,并且使各自的ai按比例放大模型将流缩放到4k。在其它实施例中,例如,通过使用确定用于流式传输的视频分辨率的应用和/或协议以及用于处理(一个或多个)传入视频流的预定的按比例放大神经网络模型,可以在不使用中间会话管理器的情况下建立对等通信。将理解,视频会议系统可以在主控和对等实现方式两者中与多于两个客户端设备一起使用。
41.参考图6,现在将描述根据一个或多个实施例的示例人工智能训练系统600。在各种实施例中,训练系统600包括:按比例缩小人工智能训练系统610,其被配置为训练一个或多个ai以按比例缩小原始视频内容以用于存储和流式传输;以及按比例放大ai训练系统660,其被配置为训练一个或多个ai以供由客户端设备使用来按比例放大按比例缩小的视频内容。
42.在一些实施例中,ai包括神经网络,该神经网络包括用于按比例缩小的神经网络612和用于按比例放大的神经网络662。例如,神经网络可以包括接收训练数据集(诸如包括视频内容622和元数据632的训练数据集620,以及包括按比例缩小的视频内容672和元数据674的训练数据集670)并输出缩放的视频内容的一个或多个卷积神经网络(cnn)。
43.训练数据集620可以包括原始视频内容622和标识视频内容的类型(例如,动作电影、戏剧、体育赛事)的元数据632。在一些实施例中,针对多个不同类型的视频内容中的每个来训练多个神经网络612,以优化对内容的缩放。在一个实施例中,训练以通过神经网络612的前向传递开始,所述神经网络612包括特征提取、多个卷积层和池化层、多个完全连接的层以及包括期望的分类的输出层。接下来,通过神经网络612的反向传递可以用于鉴于在前向传递中产生的误差来更新cnn参数(例如,以减少缩放误差和/或改进按比例缩小的视频内容640的图像质量)。在各种实施例中,根据本公开,可以使用其它过程来训练ai系统。
44.训练数据集670可以包括按比例缩小的视频内容672和标识视频内容的类型(例如,动作电影、戏剧、体育赛事)的元数据674。在一些实施例中,针对多个不同类型的视频内容和期望的输出分辨率中的每个来训练多个神经网络662,以优化对内容的缩放。在一个实施例中,训练以通过神经网络662的前向传递开始,所述神经网络662包括特征提取、多个卷积层和池化层、多个完全连接的层以及包括期望的分类的输出层。接下来,通过神经网络662的反向传递可以用于鉴于在前向传递中产生的误差来更新cnn参数(例如,以减少缩放误差和/或改进与原始视频内容相比的按比例放大的视频内容670的图像质量)。
45.在各种实施例中,根据本公开,可以使用其它过程来训练ai系统。例如,验证过程可以包括通过训练的神经网络运行测试数据集并且验证输出图像质量(例如,如由psnr测量的那样)满足或超过期望的阈值。在另一示例中,可以分析来自按比例缩小ai训练系统610、按比例放大ai训练系统660和验证过程的检测到的误差并通过ai优化过程680来将其馈送回到训练系统,以例如通过比较不同ai模型的准确性和选择训练数据以及优化缩放的图像的质量的模型参数来优化训练模型。
46.前述公开内容并不旨在将本公开限制于所公开的精确形式或特定使用领域。因
此,预期的是,根据本公开,对本公开的各种替代实施例和/或修改(无论是在本文中明确描述还是暗示)都是可能的。
47.在不脱离本公开的精神的情况下,本文中提供的各种实施例可以使用硬件、软件或硬件和软件的组合来实现,并且各种硬件和软件部件可以组合成包括软件和/或硬件的组合的一个或多个部件。在可适用的情况下,本文中所述的各种步骤的排序可以被改变、组合成复合步骤和/或分成子步骤以提供本文中描述的特征。
48.已经像这样描述了本公开的实施例,本领域普通技术人员将认识到,在不脱离本公开的范围的情况下,可以在形式和细节方面作出改变。因此,本公开仅由权利要求限制。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献