CN113301355B - 视频传输、直播与播放方法、设备及存储介质 - Google Patents

视频传输、直播与播放方法、设备及存储介质 Download PDF

Info

Publication number
CN113301355B
CN113301355B CN202010626671.4A CN202010626671A CN113301355B CN 113301355 B CN113301355 B CN 113301355B CN 202010626671 A CN202010626671 A CN 202010626671A CN 113301355 B CN113301355 B CN 113301355B
Authority
CN
China
Prior art keywords
video
image enhancement
stream
video stream
original
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202010626671.4A
Other languages
English (en)
Other versions
CN113301355A (zh
Inventor
孔祥振
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Alibaba Group Holding Ltd
Original Assignee
Alibaba Group Holding Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Priority to CN202010626671.4A priority Critical patent/CN113301355B/zh
Publication of CN113301355A publication Critical patent/CN113301355A/zh
Application granted granted Critical
Publication of CN113301355B publication Critical patent/CN113301355B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/21Server components or server architectures
    • H04N21/218Source of audio or video content, e.g. local disk arrays
    • H04N21/2187Live feed
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/90Dynamic range modification of images or parts thereof
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/70Media network packetisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/80Responding to QoS
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/4402Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10016Video; Image sequence
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20081Training; Learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

本申请实施例提供一种视频传输、直播与播放方法、设备及存储介质。在本申请实施例中,针对原始视频流生成与之适配的图像增强模型,将图像增强模型以及原始视频流对应的视频编码流发送至视频播放终端,视频播放终端对视频编码流进行解码,并利用对应的图像增强模型对解码出的视频流进行图像增强处理后进行播放,其中,采用与原始视频流或视频编码流适配的图像增强模型进行图像增强,增强效果具有针对性,因此,可以高效且准确的利用图像增强模型达到改善视频清晰度以及流畅度的效果,极大地提高用户的体验感。

Description

视频传输、直播与播放方法、设备及存储介质
技术领域
本申请涉及多媒体技术领域,尤其涉及一种视频传输、直播与播放方法、设备及存储介质。
背景技术
在视频直播场景中,视频的流畅度和清晰度是最重要的用户体验。当主播端的网络状况不稳定时,为了适应网络状况编码之后的视频流中就会出现不同程度的压缩失真,导致直播观看端播放的视频清晰度和流畅度较差。一种现有技术是,直播观看端在播放视频流之前,先对受到网络状况影响的视频流进行增强,但是受限于直播实时性的要求,现有增强方案的效果不够理想,视频清晰度和流畅度的改善不明显,用户的体验感较差。
发明内容
本申请的多个方面提供一种视频传输、直播与播放方法、设备及存储介质,用以改善视频播放时的流畅度和清晰度,提高用户的体验感。
本申请实施例提供一种视频传输方法,该方法包括:获取原始视频流;生成与原始视频流适配的图像增强模型;将图像增强模型和原始视频流对应的视频编码流发送给视频播放终端,以供视频播放终端利用图像增强模型对视频编码流进行图像增强。
本申请实施例提供一种视频直播方法,包括:采集当前直播场景中的直播视频流;生成与直播视频流适配的图像增强模型;将图像增强模型和直播视频流对应的视频编码流发送给直播观看终端,以供直播观看终端利用图像增强模型对视频编码流进行图像增强。
本申请实施例还提供一种视频播放方法,该方法包括:接收视频编码流以及对应的图像增强模型;对视频编码流进行解码,以得到解码后的视频流;将解码后的视频流输入图像增强模型进行图像增强;播放经图像增强模型进行增强后的视频流。
本申请实施例还提供一种视频处理设备,包括:存储器、处理器以及通信组件;存储器用于存储计算机程序;处理器与存储器耦合,用于执行计算机程序以用于:获取原始视频流;生成与原始视频流适配的图像增强模型;通过通信组件将图像增强模型和原始视频流对应的视频编码流发送给视频播放终端,以供视频播放终端利用图像增强模型对视频编码流进行图像增强。
本申请实施例还提供一种视频播放终端,包括:存储器、处理器以及通信组件;存储器用于存储计算机程序;处理器与存储器耦合,用于执行计算机程序以用于:通过通信组件接收视频编码流以及对应的图像增强模型;对视频编码流进行解码,以得到解码后的视频流;将解码后的视频流输入图像增强模型进行图像增强;播放经图像增强模型进行增强后的视频流。
本申请实施例还提供一种存储有计算机程序的计算机可读存储介质,当计算机程序被处理器执行时,致使处理器实现本申请实施例中任一项方法中的步骤。
在本申请实施例中,针对原始视频流生成与之适配的图像增强模型,将图像增强模型以及原始视频流对应的视频编码流发送至视频播放终端,视频播放终端对视频编码流进行解码,并利用对应的图像增强模型对解码出的视频流进行图像增强处理后进行播放,其中,采用与原始视频流或视频编码流适配的图像增强模型进行图像增强,增强效果具有针对性,因此,可以高效且准确的利用图像增强模型达到改善视频清晰度以及流畅度的效果,极大地提高用户的体验感。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1a为本申请示例性实施例提供的一种视频播放系统的结构示意图;
图1b为本申请示例性实施例提供的一种视频直播系统的结构示意图;
图1c为本申请示例性实施例提供的另一种视频直播系统的结构示意图;
图2为本申请示例性实施例提供的一种视频传输方法的流程示意图;
图3a为本申请示例性实施例提供的一种视频直播方法的流程示意图;
图3b为本申请示例性实施例提供的一种视频播放方法的流程示意图;
图4为本申请示例性实施例提供的一种视频处理设备的结构示意图;
图5为本申请示例性实施例提供的一种视频播放终端的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
针对现有直播过程中视频受网络状况的影响而出现的视频清晰度和流畅度较差的问题,在本申请实施例中,针对原始视频流生成与之适配的图像增强模型,将图像增强模型以及原始视频流对应的视频编码流发送至视频播放终端,在视频播放终端对视频编码流进行解码,并利用对应的图像增强模型对解码出的视频流进行图像增强处理后进行播放,其中,采用与原始视频流或视频编码流适配的图像增强模型进行图像增强,增强效果具有针对性,因此,可以高效且准确的利用图像增强模型达到改善视频清晰度以及流畅度的效果,极大地提高用户的体验感。
以下结合附图,详细说明本申请各实施例提供的技术方案。
图1a为本申请示例性实施例提供的一种视频播放系统的结构示意图;如图1a所示,该视频播放系统100包括:视频处理设备101和视频播放终端102。其中,视频处理设备101和视频播放终端102通信连接,视频处理设备101负责向视频播放终端102提供待播放的视频流,视频播放终端102负责播放视频处理设备101提供的视频流。
在本申请实施例中,并不对视频处理设备101进行限定,凡是具有视频处理和传输功能的计算机设备均适用于本申请实施例。例如,视频处理设备101可以是但不限于:视频采集终端、服务端设备等,对此不做限定。
在本申请实施例中,也不对视频播放终端102进行限定,凡是具有视频接收和播放功能的计算机设备均适用于本申请实施例。例如,视频播放终端102可以是但不限于:智能手机、平板电脑,台式电脑、智能电视等,对此不做限定。
在本实施例中,视频处理设备101可以获取原始视频流,原始视频流是指需要视频播放终端102进行播放的视频流。在本实施例中,并不对原始视频流进行限定。可选地,在视频直播场景中,原始视频流可以是获取直播场景中主播端录制的视频流。当然,原始视频流也可以是非直播场景中的视频流,例如可以是各种视频播放平台或应用中各种电视剧、电影、综艺节目等视频流。原始视频流数字化后数据带宽很高,为了节约视频传输所消耗的带宽,视频处理设备101可以对原始视频流进行编码,向视频播放终端102提供经过编码后的视频流,为了简化描述,将经过编码后的视频流称为视频编码流。需要说明的是,视频编码指的是通过压缩技术,将原始视频格式转换成另一种视频格式文件的方式。在本实施例中,并不限定对原始视频流进行编码采用的编码方式,例如可以采用H261、H263或H264等编码方式。
其中,为了适应视频处理设备101一端的网络状态,在编码过程中可能会出现不同程度的压缩失真,导致视频播放终端102播放的视频清晰度或者流畅度较差。基于此,视频处理设备101还可以生成与原始视频流适配的图像增强模型;之后,将图像增强模型和原始视频流对应的视频编码流发送给视频播放终端102,以供视频播放终端102利用图像增强模型对视频编码流进行图像增强。相应地,视频播放终端102可以接收视频处理设备101发送的视频编码流以及对应的图像增强模型;对视频编码流进行解码,以得到解码后的视频流;将解码后的视频流输入图像增强模型进行图像增强;播放经图像增强模型进行增强后的视频流。
在本申请实施例中,针对原始视频流生成与之适配的图像增强模型,将图像增强模型以及原始视频流对应的视频编码流发送至视频播放终端,视频播放终端对视频编码流进行解码,并利用对应的图像增强模型对解码出的视频流进行图像增强处理后进行播放,其中,采用与原始视频流或视频编码流适配的图像增强模型进行图像增强,增强效果具有针对性,因此,可以高效且准确的利用图像增强模型达到改善视频清晰度以及流畅度的效果,极大地提高用户的体验感。
下面对视频处理设备101在不同应用场景中的实现形态以及不同应用场景中的视频处理过程进行示例性说明。
在一种应用场景中,如图1b所示,视频直播系统200包含视频采集终端201、视频播放终端202和服务器203;服务器203分别与视频采集终端201和视频播放终端202通信连接。在该实施例中,服务器203可作为图1a所示实施例中视频处理设备101的一种具体实现形态;视频播放终端202可作为图1a所示实施例中视频播放终端102的一种具体实现形态。在图1b所示直播场景中,视频采集终端201是指设置于主播端的视频采集设备,例如可以是摄像机、录像机、摄像头或带摄像头的终端等,视频播放终端202是指设置于直播观看端的终端,例如可以是智能手机、平板电脑、笔记本电脑或智能电视等;服务器203可以是常规服务器、云服务器或服务器阵列等。
在本实施例中,视频采集终端201负责采集原始视频流,将原始视频流发送给服务器203,服务器203一方面对原始视频流进行编码得到视频编码流,另一方面生成与原始视频流适配的图像增强模型,并将图像增强模型和原始视频流对应的视频编码流发送给视频播放终端202,以供视频播放终端202利用图像增强模型对视频编码流进行图像增强。相应地,视频播放终端202可以接收服务器203发送的视频编码流以及对应的图像增强模型;对视频编码流进行解码,以得到解码后的视频流;将解码后的视频流输入图像增强模型进行图像增强;播放经图像增强模型进行增强后的视频流。
在另一种应用场景中,如图1c所示,视频直播系统300包括:视频采集终端301、视频播放终端302和服务器303;服务器303分别与视频采集终端301和视频播放终端302通信连接。在该实施例中,视频采集终端301可作为图1a所示实施例中视频处理设备101的一种具体实现形态;视频播放终端302可作为图1a所示实施例中视频播放终端102的一种具体实现形态。在图1c所示直播场景中,视频采集终端301是指设置于主播端的视频采集设备,例如可以是摄像机、录像机、摄像头或带摄像头的终端等,视频播放终端302是指设置于直播观看端的终端,例如可以是智能手机、平板电脑、笔记本电脑或智能电视等;服务器303可以是常规服务器、云服务器或服务器阵列等。在图1c所示中,以视频处理设备301是台式电脑为例进行图示,以视频播放终端302是手机终端为例进行图示,但并不限于此。
在本实施例中,视频采集终端301可以获取原始视频流,生成与原始视频流适配的图像增强模型,将图像增强模型和原始视频流对应的视频编码流发送给服务器303。服务器303将图像增强模型和视频编码流转发至视频播放终端302。相应地,视频播放终端302可以接收服务器303发送的视频编码流以及对应的图像增强模型;对视频编码流进行解码,以得到解码后的视频流;将解码后的视频流输入图像增强模型进行图像增强;播放经图像增强模型进行增强后的视频流。
无论是上述哪种实施例,其中生成图像增强模型的过程相同或相似,区别仅在于生成图像增强模型的设备形态有所不同而已,下面以视频处理设备101为例对生成图像增强模型的过程进行详细说明。
在本实施例中,视频处理设备101生成与原始视频流适配的图像增强模型的一种实施方式为:从原始视频流中提取多张原始图像,并获取多张原始图像对应的失真图像;根据多张原始图像和多张失真图像进行模型训练,得到与原始视频流适配的图像增强模型。
在本实施例中,并不限定从原始视频流中提取多张原始图像的实施方式,例如,可以随机的从原始视频流中,抽取一定数量的原始图像,其中,原始图像的数量可以是100张、200张、500张等对此不做限定。又例如,还可以以一定的时间间隔,从原始视频流中抽取多张原始图像,并不限定时间间隔的长度,例如可以是但不限于30ms、50ms、1s等,对此不做限定。在此说明,根据应用场景的不同,对图像增强模型的质量要求不同,可根据应用需求灵活选择用于模型训练的原始图像的数量,以得到符合质量要求的图像增强模型。其中,原始图像的数量越多,训练出的图像增强模型的质量越高。
在本实施例中,也不限定获取多张原始图像对应的失真图像的实施方式。在一可选实施例中,可以根据网络状态信息,对多张原始图像进行失真处理,得到多张失真图像。其中,网络状态信息用于表示网络状态的好坏程度,网络状态的好坏程度可以通过丢包率、带宽、时延、用户数量等进行衡量。若丢包率低,没有时延,带宽较大,用户数量少(带宽资源相对充足),则说明网络状态良好;若丢包率高,时延大,带宽较小,用户数量多(带宽资源不充足),则说明网络状态较差。
其中,在网络状态良好的时候,在编码过程中可减少对视频流的失真处理,例如,在第一阈值内减小原始图像的尺寸,在第二阈值内减小原始图像的分辨率等,其中,第一阈值或者第二阈值的大小可以根据实际情况进行修改,对此不做限定。例如,第一阈值可以是1mm、2mm、1cm等,第二阈值可以是10像素密度(Pixels Per Inch,ppi)、50ppi等,对此不做限定。
其中,考虑网络状态不好的情况,为了适配网络状态,在编码过程中可对视频流进行较大失真处理,例如,可在第三阈值内减小原始图像的尺寸,在第四阈值内减小原始图像的分辨率,还可以对原始图像进行较大幅度的裁剪、平移、翻转,以及改变原始图像的颜色、亮度或者对比度等得到失真图像。其中,图像尺寸减小的越大,图像的失真也就越大,因此,第一阈值小于第三阈值。图像分辨率减小的越多,图像的失真也就越大,因此,第二阈值小于第四阈值。
在另一可选实施例中,在获取原始视频流之后,可对原始视频流进行编码得到视频编码流,在编码过程中体现了网络状态,即视频编码流可体现网络状态,基于此,可以从视频编码流中提取与多张原始图像对应的多张编码图像,对多张编码图像进行解码处理,得到多张失真图像。其中,解码出的图像包含在编码过程中因适配网络状态而引起的失真信息。
在本实施例中,并不限定根据多张原始图像和多张失真图像进行模型训练从而得到图像增强模型的实施方式。在一可选实施例中,可以获取用于图像增强的初始网络模型;利用多张原始图像和多张失真图像对初始网络模型进行训练,得到与原始视频流适配的图像增强模型。在另一可选实施例中,也可以直接利用多张原始图像和多张失真图像进行模型训练,得到与原始视频流适配的图像增强模型。
其中,初始网络模型具有一定图像增强功能,但针对性相对较差,而根据多张原始图像和多张失真图像对初始网络模型进行训练,可得到与原始视频流适配且更具针对性的图像增强模型。在本实施例中,初始网络模型可以是深度学习网络模型,也可以是机器学习中除深度学习网络模型之外的其它模型,例如贝叶斯网络模型、支持向量机等。以深度学习网络模型为例,并不限定深度学习网络模型采用的深度学习技术,例如可以是但不限于:生成式对抗网络(Generative Adversarial Networks,GAN)、卷积神经网络(ConvolutionalNeural Networks,CNN)、循环神经网络(Recurrent Neural Network,RNN)、深度神经网络(Deep Neural Networks,DNN)、残差网络等。下面列举几种并就其在本申请实施例中的原理进行简单说明:
以GAN模型为例,GAN主要由两个网络组成,一个生成网络和一个判别网络,该网络的训练过程是一个对抗的过程,将多张原始图像和多张失真图像输入网络,生成网络不断对失真图像进行增强以生成能欺骗判别网路的中间图像,判别网络根据中间图像与原始图像的差异不断提高自己的判别能力,直到达到一个均衡状态,例如直到达到中间图像与原始图像的差异小于设定差异阈值为止。在本实施例中,生成网络包含CNN网络结构,其输入是失真图像,经过卷积层得到增强后的中间图像,输出是中间图像,失真图像与中间图像是一一对应关系。判别网络的输入是原始图像和中间图像,主要用于判断中间图像和原始图像的差异,差异越小表明增强后的中间图像与原始图像越接近,也即增强效果越好。
以残差网络为例,残差网络包含依次连接的多个残差模块,残差模块用于对输入的图像(可能是失真图像,也可能是上一层输出的图像)和对应的原始图像进行残差计算得到残差图像,并利用残差图像对其输入图像进行增强(例如可以将输入图像与残差图像相加)作为下一残差模块的输入或最终输出。其中,第一个残差模块的输入是失真图像和原始图像;中间残差模块的输入是上一残差模块的输出和原始图像。其中,随着残差模块对失真图像的不断增强,残差模块所输出的图像与原始图像的差异会越来越小,达到对失真图像进行图像增强的目的。当残差模块输出的图像与原始图像的差异小于设定差异阈值时,可认为模型训练结束,此时可得到图像增强模型所使用的模型参数。
关于初始网络模型,可以针对原始视频流所属的应用场景独立设计,例如设计一个GAN模型或残差网络模型。或者,也可以采用与原始视频流相似的其它视频流所使用的图像增强模型,作为本实施例中的初始网络模型,基于此,一种获取用于图像增强的初始网络模型的实施方式,包括:根据产生原始视频流时的场景特征和/或设备特征,确定与原始视频流相似的目标视频流;获取与目标视频流适配的图像增强模型,作为用于图像增强的初始网络模型。
其中,场景特征是指与产生原始视频流的场景相关的特征,例如包括但不限于:产生视频流的时间、视频流中的对象特征、场景中的环境特征等。根据应用场景的不同,场景特征也会有所不同。例如,以视频直播场景为例、场景特征包括以下至少一种:直播时间、直播间大小、直播对象的属性、主播属性以及直播间的环境特征。其中,设备特征是指与视频处理设备101对的特征,例如包括以下至少一种:视频处理设备的类型、视频处理设备的型号、视频处理设备的资源数量、视频处理设备上负责对原始视频流进行处理的软件类型以及软件版本等。
在一可选实施例中,可以根据产生原始视频流时的场景特征,确定与原始视频流相似的目标视频流。可选地,可以计算各个已知视频流的场景特征与原始视频流的场景特征之间的相似度,将相似度大于设定第一相似度阈值的视频流作为目标视频流。在本实施例中,并不对第一相似度阈值进行限定,根据场景特征的不同第一相似度阈值也会有所不同。
在另一可选实施例中,可以根据产生原始视频流时的设备特征,确定与原始视频流相似的目标视频流。可选地,可以计算各个已知视频流的设备特征与原始视频流的设备特征之间的相似度,将相似度大于设定第二相似度阈值的视频流作为目标视频流。在本实施例中,并不对第二相似度阈值进行限定,根据设备特征的不同第二相似度阈值也会有所不同。
在又一可选实施例中,可以根据产生原始视频流时的场景特征和设备特征,确定与原始视频流相似的目标视频流。可选地,可以计算各个已知视频流的场景特征与原始视频流的场景特征之间的相似度,并计算各个已知视频流的设备特征与原始视频流的设备特征之间的相似度;将场景特征相似度大于设定第一相似度阈值且设备特征相似度大于设定第二相似度阈值的视频流作为目标视频流。
在得到目标视频流之后,可以获取与目标视频流适配的图像增强模型,作为用于图像增强的初始网络模型;进而,利用多张原始图像和多张失真图像对初始网络模型进行训练,得到与原始视频流适配的图像增强模型。在该可选实施例中,将原始视频流的相似视频流(即目标视频流)使用的图像增强模型作为初始网络模型,以此为基础训练与原始视频流适配的图像增强模型,有利于提高模型训练效率,节约模型训练时间,尤其适合对实时性要求较高的视频处理场景,例如视频直播场景。
在此说明,根据应用场景的不同,图像增强模型的结构复杂度可有所不同。例如,对于对实时性要求较高的视频场景,例如视频直播场景,为了满足实时性的要求,可以训练结构复杂度相对较低,即结构较为简单的图像增强模型,例如,一个简单的由残差模块组成的残差网络,包括:输入层、若干残差模块以及输出层,其中,由于模型结构简单,参数量少,因此训练图像增强模型的时间较短。由于训练的图像增强模型,使用的是原始图像和失真图像,使得训练出的模型更具有针对性,图像增强的效果更好,增添了用户的体验感。
在此说明,在本申请实施例中,在根据原始视频流中的原始图像和原始图像对应的失真图像实时生成图像增强模型的情况下,生成图像增强模型需要一定时间。基于此,可以以图像增强模型的生成作为分界点,将原始视频流分割为两部分,即原始视频流包括:在生成图像增强模型前后分别获取到的第一部分原始视频流和第二部分原始视频流。其中,训练图像增强模型所需的多张原始图像来自于第一部分原始视频流。关于在生成图像增强模型之前获取的第一部分原始视频流,可以采用但不限于以下两种实施方式进行处理。
实施方式B1:在一些应用场景中,对视频播放质量的要求比较高,则为了保证视频播放的流畅度和清晰度,视频处理设备101可以对第一部分原始视频流进行编码得到第一部分视频编码流,并缓存第一部分原始视频流对应的第一部分视频编码流直至生成图像增强模型;在生成图像增强模型之后,将第一部分视频编码流以及第二部分原始视频流对应的第二部分视频编码流与图像增强模型一起发送给视频播放终端102。可选地,可以在同一通信过程中将图像增强模型与第一部分视频编码流以及第二部分视频编码流一起发送至视频播放终端,或者,也可以通过独立的通信过程分别将图像增强模型和第一部分视频编码流以及第二部分视频编码流发送至视频播放终端,对此不做限定。需要说明的是,第二部分原始视频流可能会持续较长时间,无论是以哪种方式将图像增强模型发送给视频播放终端102,在将图像增强模型发送给视频播放终端之后可以继续向视频播放终端102发送第二部分原始视频流。
相应地,在视频播放终端102可以同时接收第一部分视频编码流、第二部分视频编码流以及图像增强模型;对第一部分视频编码流和第二部分视频编码流进行解码,以得到第一解码视频流和第二解码视频流;将第一解码视频流和第二解码视频流输入图像增强模型进行图像增强,提高了直播视频的质量,极大地满足了用户对视频质量的体验感。
需要说明的是,在实施方式B1中,在生成图像增强模型之前,第一部分原始视频流对应的第一部分视频编码流是在视频处理设备101侧进行缓存,但并不限于此。可选地,视频处理设备101也可以在生成图像增强模型之前,实时地将第一部分视频编码流发送至视频播放终端102,并在生成图像增强模型之后,将第二部分视频编码流与图像增强模型一起发送给视频播放终端102。相应地,视频播放终端102在接收图像增强模型之前先接收第一部分视频编码流,对第一部分视频编码流进行解码,缓存得到的第一解码视频流直至接收到图像增强模型;之后同时接收图像增强模型和第二部分视频编码流,并在接收到第二部分视频编码流时对第二部分视频编码流进行解码,以得到第二解码视频流;以及在接收到所述图像增强模型时,按照视频流的时序依次将缓存的第一解码视频流和第二解码视频流输入图像增强模型进行图像增强,提高了直播视频的质量,极大地满足了用户对视频质量的体验感。
实施方式B2:在一些应用场景中,对视频播放的实时性要求比较高,则为了保证在视频播放终端102能够及时播放视频,视频处理设备101可以在生成图像增强模型之前,对第一部分原始视频流进行编码得到第一部分视频编码流,将第一部分原始视频流对应的第一部分视频编码流实时地发送给视频播放终端102,以及在生成图像增强模型之后,对第二部分原始视频流进行编码得到第二部分视频编码流,将第二部分原始视频流对应的第二部分视频编码流和图像增强模型一起发送给视频播放终端102。可选地,可以在同一通信过程中将图像增强模型与第二部分视频编码流一起发送至视频播放终端102,或者,也可以通过独立的通信过程分别将图像增强模型和第二部分视频编码流发送至视频播放终端102,对此不做限定。需要说明的是,第二部分原始视频流可能会持续较长时间,无论是以哪种方式将图像增强模型发送给视频播放终端102,在将图像增强模型发送给视频播放终端102之后可以继续向视频播放终端发送第二部分原始视频流。
相应地,视频播放终端102接收第一部分视频编码流,对第一部分视频编码流进行解码,得到第一解码视频流,并在接收到图像增强模型之前,实时播放第一解码视频流,用以维持视频播放终端102对时延的高要求,提高了用户对实时性的体验感;以及接收图像增强模型和第二部分视频编码流,对第二部分视频编码流进行解码,得到第二解码视频流,将第二解码视频流输入图像增强模型进行图像增强,提高直播视频的质量,极大地满足了用户对视频质量的体验感。
另外,在本申请实施例中,视频处理设备101可以在有原始视频流出现的情况下,主动地生成与原始视频流适配的图像增强模型并提供给视频播放终端102;或者,也可以在有原始视频流出现,且检测到网络状态较差的情况下,生成与原始视频流适配的图像增强模型并提供给视频播放终端102;或者,还可以是接收视频播放终端102发送的指示视频播放质量低于设定值的通知消息;根据通知消息,可以获知视频播放终端102的视频播放质量较差,需要进行图像增强,因此生成与原始视频流适配的图像增强模型并提供给视频播放终端102。这样,视频播放终端102可以接收视频处理设备101发送的视频编码流以及对应的图像增强模型;对视频编码流进行解码,以得到解码后的视频流;将解码后的视频流输入图像增强模型进行图像增强;播放经图像增强模型进行增强后的视频流。相应地,在视频播放终端102这侧,还可在播放第一解码视频流的过程中,检测视频播放质量;在视频播放质量低于设定值时,向提供视频编码流的视频处理设备101发送通知消息,以通知视频处理设备101提供与视频编码流适配的图像增强模型。其中,在根据视频播放终端102发送的通知消息生成图像增强模型的情况下,有利于提高用户的体验感,而且可在有必要时生成图像增强模型,从整个视频传输过程来看,有利于降低模型训练对视频传输造成的不利影响。
其中,并不对设定值进行限定,例如若视频播放质量用网速来衡量,则设定值100kb,即网速低于100kb时,则通知视频处理设备101需要生成图像增强模型。若视频播放质量是用视频的清晰度来衡量,视频的清晰度可以用标清、高清、超清、蓝光等来衡量,则设定值可以是标清,一旦视频的播放质量低于标清,则通知视频处理设备101需要生成图像增强模型。
针对现有直播过程中视频受网络状况的影响而出现的视频清晰度和流畅度较差的问题,在本申请实施例中,针对原始视频流生成与之适配的图像增强模型,将图像增强模型以及原始视频流对应的视频编码流发送至视频播放终端,在视频播放终端对视频编码流进行解码,并利用对应的图像增强模型对解码出的视频流进行图像增强处理后进行播放,其中,采用与原始视频流或视频编码流适配的图像增强模型进行图像增强,增强效果具有针对性,因此,可以高效且准确的利用图像增强模型达到改善视频清晰度以及流畅度的效果,极大地提高用户的体验感。
图2为本申请示例性实施例提供的一种视频传输方法的流程示意图,如图2所示,该方法包括:
21、获取原始视频流;
22、生成与原始视频流适配的图像增强模型;
23、将图像增强模型和原始视频流对应的视频编码流发送给视频播放终端,以供视频播放终端利用图像增强模型对视频编码流进行图像增强。
在本实施例中,视频处理设备可以获取原始视频流,原始视频流是指需要视频播放终端进行播放的视频流。在本实施例中,并不对原始视频流进行限定。可选地,在视频直播场景中,原始视频流可以是获取直播场景中主播端录制的视频流。当然,原始视频流也可以是非直播场景中的视频流,例如可以是各种视频播放平台或应用中各种电视剧、电影、综艺节目等视频流。原始视频流数字化后数据带宽很高,为了节约视频传输所消耗的带宽,可以对原始视频流进行编码,向视频播放终端提供经过编码后的视频流,为了简化描述,将经过编码后的视频流称为视频编码流。需要说明的是,视频编码指的是通过压缩技术,将原始视频格式转换成另一种视频格式文件的方式。在本实施例中,并不限定对原始视频流进行编码采用的编码方式,例如可以采用H261、H263或H264等编码方式。
其中,为了适应视频处理设备一端的网络状态,在编码过程中可能会出现不同程度的压缩失真,导致视频播放终端播放的视频清晰度或者流畅度较差。基于此,视频处理设备还可以生成与原始视频流适配的图像增强模型;之后,将图像增强模型和原始视频流对应的视频编码流发送给视频播放终端,以供视频播放终端利用图像增强模型对视频编码流进行图像增强。
在本实施例中,生成与原始视频流适配的图像增强模型的一种实施方式为:从原始视频流中提取多张原始图像,并获取多张原始图像对应的失真图像;根据多张原始图像和多张失真图像进行模型训练,得到与原始视频流适配的图像增强模型。
在本实施例中,并不限定从原始视频流中提取多张原始图像的实施方式,例如,可以随机的从原始视频流中,抽取一定数量的原始图像,其中,原始图像的数量可以是100张、200张、500张等对此不做限定。又例如,还可以以一定的时间间隔,从原始视频流中抽取多张原始图像,并不限定时间间隔的长度,例如可以是但不限于30ms、50ms、1s等,对此不做限定。在此说明,根据应用场景的不同,对图像增强模型的质量要求不同,可根据应用需求灵活选择用于模型训练的原始图像的数量,以得到符合质量要求的图像增强模型。其中,原始图像的数量越多,训练出的图像增强模型的质量越高。
在本实施例中,也不限定获取多张原始图像对应的失真图像的实施方式。在一可选实施例中,可以根据网络状态信息,对多张原始图像进行失真处理,得到多张失真图像。其中,网络状态信息用于表示网络状态的好坏程度,网络状态的好坏程度可以通过丢包率、带宽、时延、用户数量等进行衡量。若丢包率低,没有时延,带宽较大,用户数量少(带宽资源相对充足),则说明网络状态良好;若丢包率高,时延大,带宽较小,用户数量多(带宽资源不充足),则说明网络状态较差。
其中,在网络状态良好的时候,在编码过程中可减少对视频流的失真处理,例如,在第一阈值内减小原始图像的尺寸,在第二阈值内减小原始图像的分辨率等,其中,第一阈值或者第二阈值的大小可以根据实际情况进行修改,对此不做限定。例如,第一阈值可以是1mm、2mm、1cm等,第二阈值可以是10像素密度(Pixels Per Inch,ppi)、50ppi等,对此不做限定。在此说明,根据应用场景的不同,对图像增强模型的质量要求不同,可根据应用需求灵活选择用于模型训练的原始图像的数量,以得到符合质量要求的图像增强模型。其中,原始图像的数量越多,训练出的图像增强模型的质量越高。
其中,考虑网络状态不好的情况,为了适配网络状态,在编码过程中可对视频流进行较大失真处理,例如,可在第三阈值内减小原始图像的尺寸,在第四阈值内减小原始图像的分辨率,还可以对原始图像进行较大幅度的裁剪、平移、翻转,以及改变原始图像的颜色、亮度或者对比度等得到失真图像。详细内容可参见前述实施例,在此不再赘述。
在另一可选实施例中,在获取原始视频流之后,可对原始视频流进行编码得到视频编码流,在编码过程中体现了网络状态,即视频编码流可体现网络状态,基于此,可以从视频编码流中提取与多张原始图像对应的多张编码图像,对多张编码图像进行解码处理,得到多张失真图像。其中,解码出的图像包含在编码过程中因适配网络状态而引起的失真信息。
在本实施例中,并不限定根据多张原始图像和多张失真图像进行模型训练从而得到图像增强模型的实施方式。在一可选实施例中,可以获取用于图像增强的初始网络模型;利用多张原始图像和多张失真图像对初始网络模型进行训练,得到与原始视频流适配的图像增强模型。在另一可选实施例中,也可以直接利用多张原始图像和多张失真图像进行模型训练,得到与原始视频流适配的图像增强模型。
其中,初始网络模型具有一定图像增强功能,但针对性相对较差,而根据多张原始图像和多张失真图像对初始网络模型进行训练,可得到与原始视频流适配且更具针对性的图像增强模型。在本实施例中,初始网络模型可以是深度学习网络模型,也可以是机器学习中除深度学习网络模型之外的模型,例如贝叶斯网络模型、支持向量机等。以深度学习网络模型为例,并不限定深度学习网络模型采用的深度学习技术,例如可以是但不限于:GAN、CNN、RNN、DNN、残差网络等。下面列举几种并就其在本申请实施例中的原理进行简单说明:
以GAN模型为例,GAN主要由两个网络组成,一个生成网络和一个判别网络,该网络的训练过程是一个对抗的过程,将多张原始图像和多张失真图像输入网络,生成网络不断对失真图像进行增强以生成能欺骗判别网路的中间图像,判别网络根据中间图像与原始图像的差异不断提高自己的判别能力,直到达到一个均衡状态,例如直到达到中间图像与原始图像的差异小于设定差异阈值为止。在本实施例中,生成网络包含CNN网络结构,其输入是失真图像,经过卷积层得到增强后的中间图像,输出是中间图像,失真图像与中间图像是一一对应关系。判别网络的输入是原始图像和中间图像,主要用于判断中间图像和原始图像的差异,差异越小表明增强后的中间图像与原始图像越接近,也即增强效果越好。
以残差网络为例,残差网络包含依次连接的多个残差模块,残差模块用于对输入的图像(可能是失真图像,也可能是上一层输出的图像)和对应的原始图像进行残差计算得到残差图像,并利用残差图像对其输入图像进行增强(例如可以将输入图像与残差图像相加)作为下一残差模块的输入或最终输出。其中,第一个残差模块的输入是失真图像和原始图像;中间残差模块的输入是上一残差模块的输出和原始图像。其中,随着残差模块对失真图像的不断增强,残差模块所输出的图像与原始图像的差异会越来越小,达到对失真图像进行图像增强的目的。当残差模块输出的图像与原始图像的差异小于设定差异阈值时,可认为模型训练结束,此时可得到图像增强模型所使用的模型参数。具体内容可参见前述实施例,在此不再赘述。
关于初始网络模型,可以针对原始视频流所属的应用场景独立设计,例如设计一个GAN模型或残差网络模型。或者,也可以采用与原始视频流相似视频流的图像增强模型,作为本实施例中的初始网络模型,基于此,一种获取用于图像增强的初始网络模型的实施方式,包括:根据产生原始视频流时的场景特征和/或设备特征,确定与原始视频流相似的目标视频流;获取与目标视频流适配的图像增强模型,作为用于图像增强的初始网络模型。关于场景特征和设备特征的解释说明,可参见前述实施例,在此不再赘述。
在此说明,在本申请实施例中,在根据原始视频流中的原始图像和原始图像对应的失真图像实时生成图像增强模型的情况下,生成图像增强模型需要一定时间。基于此,可以以图像增强模型的生成作为分界点,将原始视频流分割为两部分,即原始视频流包括:在生成图像增强模型前后获取的第一部分原始视频流和第二部分原始视频流。关于在生成图像增强模型之前获取的第一部分原始视频流,可以采用但不限于以下两种实施方式进行处理。
实施方式C1:在一些应用场景中,对视频播放质量的要求比较高,则为了保证视频播放的流畅度和清晰度,视频处理设备可以对第一部分原始视频流进行编码得到第一部分视频编码流,并缓存第一部分原始视频流对应的第一部分视频编码流直至生成图像增强模型;在生成图像增强模型之后,将第一部分视频编码流以及第二部分原始视频流对应的第二部分视频编码流与图像增强模型一起发送给视频播放终端。可选地,可以在同一通信过程中将图像增强模型与第一部分视频编码流以及第二部分视频编码流一起发送至视频播放终端,或者,也可以通过独立的通信过程分别将图像增强模型和第一部分视频编码流以及第二部分视频编码流发送至视频播放终端,对此不做限定。这种方式提高了直播视频的质量,极大地满足了用户对视频质量的体验感。
需要说明的是,第二部分原始视频流可能会持续较长时间,无论是以哪种方式将图像增强模型发送给视频播放终端,在将图像增强模型发送给视频播放终端之后可以继续向视频播放终端发送第二部分原始视频流。
需要说明的是,在实施方式C1中,在生成图像增强模型之前,第一部分原始视频流对应的第一部分视频编码流是在视频处理设备侧进行缓存,但并不限于此。可选地,视频处理设备也可以在生成图像增强模型之前,实时地将第一部分视频编码流发送至视频播放终端,并在生成图像增强模型之后,将第二部分视频编码流与图像增强模型一起发送给视频播放终端。相应地,视频播放终端在接收图像增强模型之前先接收第一部分视频编码流,对第一部分视频编码流进行解码,缓存得到的第一解码视频流直至接收到图像增强模型;之后同时接收图像增强模型和第二部分视频编码流,并在接收到第二部分视频编码流时对第二部分视频编码流进行解码,以得到第二解码视频流;以及在接收到所述图像增强模型时,按照视频流的时序依次将缓存的第一解码视频流和第二解码视频流输入图像增强模型进行图像增强,提高了直播视频的质量,极大地满足了用户对视频质量的体验感。
实施方式C2:在一些应用场景中,对视频播放的实时性要求比较高,则为了保证在视频播放终端能够及时播放视频,视频处理设备可以在生成图像增强模型之前,对第一部分原始视频流进行编码得到第一部分视频编码流,将第一部分原始视频流对应的第一部分视频编码流实时地发送给视频播放终端,以及在生成图像增强模型之后,对第二部分原始视频流进行编码得到第二部分视频编码流,将第二部分原始视频流对应的第二部分视频编码流和图像增强模型一起发送给视频播放终端。可选地,可以在同一通信过程中将图像增强模型与第二部分视频编码流一起发送至视频播放终端,或者,也可以通过独立的通信过程分别将图像增强模型和第二部分视频编码流发送至视频播放终端,对此不做限定。这种方式提高直播视频的质量,极大地满足了用户对视频质量的体验感。
需要说明的是,第二部分原始视频流可能会持续较长时间,无论是以哪种方式将图像增强模型发送给视频播放终端,在将图像增强模型发送给视频播放终端之后可以继续向视频播放终端发送第二部分原始视频流。
另外,在本申请实施例中,视频处理设备可以在有原始视频流出现的情况下,主动地生成与原始视频流适配的图像增强模型并提供给视频播放终端;或者,也可以在有原始视频流出现,且检测到网络状态较差的情况下,生成与原始视频流适配的图像增强模型并提供给视频播放终端;或者,还可以是接收视频播放终端发送的指示视频播放质量低于设定值的通知消息;根据通知消息,可以获知视频播放终端的视频播放质量较差,需要进行图像增强,因此生成与原始视频流适配的图像增强模型并提供给视频播放终端。在根据视频播放终端发送的通知消息生成图像增强模型的情况下,有利于提高用户的体验感,而且可在有必要时生成图像增强模型,从整个视频传输过程来看,有利于降低模型训练对视频传输造成的不利影响。
其中,并不对设定值进行限定,例如若视频播放质量用网速来衡量,则设定值100kb,即网速低于100kb时,则通知视频处理设备需要生成图像增强模型。若视频播放质量是用视频的清晰度来衡量,视频的清晰度可以用标清、高清、超清、蓝光等来衡量,则设定值可以是标清,一旦视频的播放质量低于标清,则通知视频处理设备需要生成图像增强模型。
在本申请实施例中,视频处理设备针对原始视频流生成与之适配的图像增强模型,将图像增强模型以及原始视频流对应的视频编码流发送至视频播放终端,使视频播放终端对视频编码流进行解码,并利用对应的图像增强模型对解码出的视频流进行图像增强处理后进行播放,其中,采用与原始视频流或视频编码流适配的图像增强模型进行图像增强,增强效果具有针对性,因此,可以高效且准确的利用图像增强模型达到改善视频清晰度以及流畅度的效果,极大地提高用户的体验感。
本申请上述实施例提供的视频传输方法可以应用在各种视频场景中,例如可以应用在视频直播场景中。下面以视频直播场景为例,从主播端对本申请实施例在视频直播场景中的应用过程进行详细说明。图3a为本申请示例性实施例提供的一种视频直播方法的流程示意图,如图3a所示,该方法包括:
61、采集当前直播场景中的直播视频流;
62、生成与直播视频流适配的图像增强模型;
63、将图像增强模型和直播视频流对应的视频编码流发送给直播观看终端,以供直播观看终端利用图像增强模型对视频编码流进行图像增强。
在本实施例中,主播端的直播设备可以实时采集当前直播场景中的直播视频流,根据直播场景的不同,直播视频流的内容会有所不同。通常,直播视频流包括主播、直播对象和直播背景等内容。直播视频流数字化后数据带宽很高,为了节约视频传输所消耗的带宽,可以对直播视频流进行编码,向直播观看终端提供经过编码后的视频流,为了简化描述,将经过编码后的视频流称为视频编码流。需要说明的是,视频编码指的是通过压缩技术,将直播视频格式转换成另一种视频格式文件的方式。在本实施例中,并不限定对直播视频流进行编码采用的编码方式,例如可以采用H261、H263或H264等编码方式。
其中,为了适应主播端的网络状态,在编码过程中可能会出现不同程度的压缩失真,导致直播观看终端播放的视频清晰度或者流畅度较差。基于此,主播端的直播设备可以生成与直播视频流适配的图像增强模型;之后,将图像增强模型和直播视频流对应的视频编码流发送给直播观看终端,以供直播观看终端利用图像增强模型对视频编码流进行图像增强后播放。
在本实施例中,生成与直播视频流适配的图像增强模型的一种实施方式为:从直播视频流中提取多张原始图像,并获取多张原始图像对应的失真图像;根据多张原始图像和多张失真图像进行模型训练,得到与直播视频流适配的图像增强模型。
在本实施例中,并不限定从直播视频流中提取多张原始图像的实施方式,例如,可以随机的从直播视频流中,抽取一定数量的原始图像,其中,原始图像的数量可以是100张、200张、500张等对此不做限定。又例如,还可以以一定的时间间隔,从直播视频流中抽取多张原始图像,并不限定时间间隔的长度,例如可以是但不限于30ms、50ms、1s等,对此不做限定。在此说明,根据应用场景的不同,对图像增强模型的质量要求不同,可根据应用需求灵活选择用于模型训练的原始图像的数量,以得到符合质量要求的图像增强模型。其中,原始图像的数量越多,训练出的图像增强模型的质量越高。
在本实施例中,也不限定获取多张原始图像对应的失真图像的实施方式。在一可选实施例中,可以根据网络状态信息,对多张原始图像进行失真处理,得到多张失真图像。其中,网络状态信息用于表示网络状态的好坏程度,网络状态的好坏程度可以通过丢包率、带宽、时延、用户数量等进行衡量。若丢包率低,没有时延,带宽较大,用户数量少(带宽资源相对充足),则说明网络状态良好;若丢包率高,时延大,带宽较小,用户数量多(带宽资源不充足),则说明网络状态较差。
其中,在网络状态良好的时候,在编码过程中可减少对视频流的失真处理,例如,在第一阈值内减小原始图像的尺寸,在第二阈值内减小原始图像的分辨率等,其中,第一阈值或者第二阈值的大小可以根据实际情况进行修改,对此不做限定。例如,第一阈值可以是1mm、2mm、1cm等,第二阈值可以是10像素密度(Pixels Per Inch,ppi)、50ppi等,对此不做限定。
其中,考虑网络状态不好的情况,为了适配网络状态,在编码过程中可对视频流进行较大失真处理,例如,可在第三阈值内减小原始图像的尺寸,在第四阈值内减小原始图像的分辨率,还可以对原始图像进行较大幅度的裁剪、平移、翻转,以及改变原始图像的颜色、亮度或者对比度等得到失真图像。详细内容可参见前述实施例,在此不再赘述。
在另一可选实施例中,在获取直播视频流之后,可对直播视频流进行编码得到视频编码流,在编码过程中体现了网络状态,即视频编码流可体现网络状态,基于此,可以从视频编码流中提取与多张原始图像对应的多张编码图像,对多张编码图像进行解码处理,得到多张失真图像。其中,解码出的图像包含在编码过程中因适配网络状态而引起的失真信息。
在本实施例中,并不限定根据多张原始图像和多张失真图像进行模型训练从而得到图像增强模型的实施方式。在一可选实施例中,可以获取用于图像增强的初始网络模型;利用多张原始图像和多张失真图像对初始网络模型进行训练,得到与直播视频流适配的图像增强模型。在另一可选实施例中,也可以直接利用多张原始图像和多张失真图像进行模型训练,得到与原始视频流适配的图像增强模型。
其中,初始网络模型具有一定图像增强功能,但针对性相对较差,而根据多张原始图像和多张失真图像对初始网络模型进行训练,可得到与原始视频流适配且更具针对性的图像增强模型。在本实施例中,初始网络模型可以是深度学习网络模型,也可以是机器学习中除深度学习网络模型之外的模型,例如贝叶斯网络模型、支持向量机等。以深度学习网络模型为例,并不限定深度学习网络模型采用的深度学习技术,例如可以是但不限于:GAN、CNN、RNN、DNN、残差网络等。关于深度学习网络模型具体实施例,可参见前述实施例,在此不再赘述。
关于初始网络模型,可以针对直播视频流所属的应用场景独立设计,例如设计一个GAN模型或残差网络模型。或者,也可以根据当前直播场景的场景特征和/或当前直播设备的设备特征,获取用于图像增强的初始网络模型;利用多张原始图像和多张失真图像对初始网络模型进行训练,得到与直播视频流适配的图像增强模型。
其中,场景特征是指与当前直播场景相关的特征,例如包括以下至少一种:直播时间、直播间大小、直播对象的属性、主播属性以及直播间的环境特征。其中,直播时间可以是早上、中午或晚上,对此不做限定。直播间的大小可以用观看直播的人数来衡量,例如,若观看直播的人数小于或等于一千人,则可以认为直播间较小;若观看直播的人数大于一千人小于等于一万人,则可以认为直播间中等;若观看直播的人数大于一万人,则可以认为直播间较大,对此不做限定。直播对象是指被主播直播的对象,例如可能是各种商品、艺术品、文化内容、服务或软件等;直播对象的属性是指可描述直播对象的属性信息。例如,若直播对象是平板电脑,则直播对象的属性包括大小、类型、品牌、价格、厂商以及软硬件配置等等;若直播对象是面包,则直播对象的属性包括厂商、生产日期、保质期、口味、原料、烹制方式以及所属食品类型等等。主播属性指的是主播的属性信息,例如包括但不限于:主播的性别、网名、服饰、妆容、直播风格以及直播等级等等。直播间的环境特征包括但不限于:直播间内摆放的物体,背景颜色等。
其中,设备特征是指与直播设备相关的特征,包括以下至少一种:直播设备的类型、直播设备的型号、直播设备的资源数量、直播摄像头的类型、直播软件的类型以及直播软件的版本。直播设备的类型可以是但不限于:智能手机、平板电脑、笔记本电脑或者台式电脑等。直播设备的资源数量是指直播设备上计算资源和/或存储资源的数量,例如是双核CPU还是四核CPU等,是1G内存还是8G内存等。直播摄像头是指直播设备上用于采集直播视频流的摄像头,简称为直播摄像头。直播摄像头的类型可以是但不限于单目摄像头、双目摄像头或者广角摄像头等。直播软件是指直播设备上运行的用于对直播视频流进行处理的软件,简称为直播软件。直播软件的类型可以是但不限于用于在线教育的直播软件、在线游戏直播软件或者娱乐型直播软件等,对此不做限定。
进一步可选地,可以根据当前直播场景的场景特征和/或当前直播设备的设备特征,确定与当前直播场景相似的目标直播场景;获取在目标直播场景中使用的图像增强模型,作为用于图像增强的初始网络模型。
在一可选实施例中,可以根据当前直播场景的场景特征,确定与当前直播场景相似的目标直播场景。可选地,可以计算各个已知直播场景(历史直播场景)的场景特征与当前直播场景的场景特征之间的相似度,将相似度大于设定第一相似度阈值的已知直播场景作为目标直播场景。例如,若场景特征采用直播对象的属性,则可以计算各已知直播场景中直播对象的属性和当前直播场景中直播对象的属性之间的相似度,将相似度大于第一相似度阈值的已知直播场景作为目标直播场景。例如,假设当前直播场景中的直播对象是品牌A的笔记本,则可以将直播笔记本的其它已知直播场景作为目标直播场景,或者,也可以将直播品牌A的其它电子产品的已知直播场景作为目标直播场景,等等。在本实施例中,并不对第一相似度阈值进行限定,根据场景特征的不同第一相似度阈值也会有所不同。
在另一可选实施例中,可以根据当前直播场景的设备特征,确定与当前直播场景相似的目标直播场景。可选地,可以计算各个已知直播场景(历史直播场景)的设备特征与当前直播场景的设备特征之间的相似度,将相似度大于设定第二相似度阈值的已知直播场景作为目标直播场景。例如,若设备特征采用直播软件的类型,则可以计算各个已知直播场景中采用的直播软件的类型与当前直播场景中采用的直播软件的类型之间的相似度,将相似度大于设定第二相似度阈值的已知直播场景作为目标直播场景。例如,若当前直播场景中采用的是用于在线教育的直播软件,则可以将采用在线教育直播软件的其它已知直播场景作为目标直播场景。其中,采用同类型直播软件的直播场景,说明直播视频流具有较高的相似度。在本实施例中,并不对第二相似度阈值进行限定,根据设备特征的不同第二相似度阈值也会有所不同。
在又一可选实施例中,可以根据当前直播场景的场景特征和设备特征,确定与当前直播场景相似的目标直播场景。可选地,可以计算各个已知直播场景的场景特征与当前直播场景的场景特征之间的相似度,并计算各个已知直播场景的设备特征与当前直播场景的设备特征之间的相似度;将场景特征相似度大于设定第一相似度阈值且设备特征相似度大于设定第二相似度阈值的已知直播场景作为目标直播场景。
在获取目标直播场景之后,可以获取在目标直播场景中使用的图像增强模型,作为用于图像增强的初始网络模型;进而利用直播视频流中的多张原始图像以及对应的多张失真图像对初始网络模型进行训练,得到与直播视频流适配的图像增强模型。这种训练图像增强模型的方式,训练效率较高、模型训练耗时较少,尤其适用于视频直播场景。
在本申请一些实施例中,可以提供多种图像增强模式,不同图像增强模式对应直播场景中的不同增强对象。其中,直播场景中的增强对象包括但不限于:主播、直播背景、直播对象以及直播全画面。其中,将主播作为增强对象是指需要利用图像增强模型对直播视频流中的主播进行图像增强;将直播背景作为增强对象是指需要利用图像增强模型对直播视频流中的背景部分进行图像增强;将直播对象作为增强对象是指需要利用图像增强模型对直播视频流中的直播对象(例如商品)进行图像增强;将直播全画面作为增强对象是指需要利用图像增强模型对直播视频流中的整体内容(例如包括主播、直播背景以及直播对象等)进行图像增强。不同图像增强模式,所需图像增强模型的训练耗时和效率不同;不同图像增强模式对应的图像增强效果不同;不同图像增强模式,可以消耗不同数量的账号资源。账户资源可以是主播账户中的金额、流量、奖励币、积分、信用值等各种虚拟资源。其中,主播可以根据直播场景对时延、增强效果和/或服务费用的需求,灵活选择所需的图像增强模式。基于此,一种生成与直播视频流适配的图像增强模型的实施方式,包括:响应于主播对图像增强模式的选择操作,从多种图像增强模式中选择目标图像增强模式;根据目标图像增强模式对应的增强对象,生成与直播视频流适配的图像增强模型。
可选地,目标图像增强模式对应的增强对象可以为主播、直播背景、直播对象或直播全画面。在不同视频直播场景中,例如不同直播间可以使用不同的直播背景。若在当前直播场景中需要突出直播背景,可以选择将直播背景作为增强对象的图像增强模式作为目标增强模式,以保证整个直播背景的播放质量。在不同视频直播场景中,直播对象会有所不同,例如可以是但不限于平板智能或手机等电子类产品;也可以是眼影、粉底液或口红等美妆类产品;还可以是面包、饼干或薯片等食品,对此不做限定。若在当前直播场景中需要突出直播对象,可以选择将直播对象作为增强对象的图像增强模式作为目标增强模式,以保证整个直播对象的播放质量。同理,若在当前直播场景中需要突出直播全画面,可以选择将直播全画面作为增强对象的图像增强模式作为目标增强模式,以保证整个直播画面的播放质量。例如,主播选择使用的目标图像增强模式是将直播对象作为增强对象的图像增强模式,当前直播场景中的直播对象为智能手机,且直播时间为晚上,直播间的大小为较大,主播为女性。则,主播端的直播设备可以采集当前直播场景的场景特征;根据当前直播场景的场景特征,选择直播对象为智能手机、直播时间为晚上,直播间的大小为较大的历史直播场景作为目标直播场景;获取目标直播场景中使用的图像增强模型,作为用于图像增强的初始网络模型;进而,利用从当前直播场景中采集到的直播视频流中的多张原始图像以及对应的多张失真图像对初始网络模型进行训练,得到用于对直播视频流中的直播对象进行图像增强的图像增强模型。
又例如,主播选择使用的目标图像增强模式是将主播作为增强对象的图像增强模式,当前直播场景中的直播对象为B品牌的眼影,且直播时间为晚上,直播间的大小为较大,主播为女性。则,主播端的直播设备可以采集当前直播场景的场景特征;根据当前直播场景的场景特征,选择直播对象为B品牌的彩妆产品、直播时间为晚上,主播为女性的历史直播场景作为目标直播场景;获取目标直播场景中使用的图像增强模型,作为用于图像增强的初始网络模型;进而,利用从当前直播场景中采集到的直播视频流中的多张原始图像以及对应的多张失真图像对初始网络模型进行训练,得到用于对直播视频流中的主播进行图像增强的图像增强模型。
又例如,主播选择使用的目标图像增强模式是将直播全画面作为增强对象的图像增强模式,当前直播场景中的直播对象为美食,直播时间为晚上,直播设备采用智能手机,智能手机上采用美食类直播软件。则,主播端的直播设备可以采集当前直播场景的场景特征和设备特征;根据当前直播场景的设备特征和场景特征,选择采用智能手机上的美食类直播软件在晚上直播美食的历史直播场景,作为目标直播场景;获取目标直播场景中使用的图像增强模型,作为用于图像增强的初始网络模型;进而,利用从当前直播场景中采集到的直播视频流中的多张原始图像以及对应的多张失真图像对初始网络模型进行训练,得到用于对整个直播画面进行图像增强的图像增强模型。
在本申请一些可选实施例中,除了提供多种图像增强模式供主播选择使用之外,还可以向主播提供交互控件,供主播选择是否开启图像增强服务。只要在主播选择开启图像增强服务的情况下,才会在直播过程中为直播视频流生成与之适配的图像增强模型;反之,不会为直播视频流生成图像增强模型。基于此,在生成与直播视频流适配的图像增强模型之前,还包括:响应于对直播设备上图像增强按钮的触发操作,开启图像增强服务;其中,图像增强按钮是面向主播提供的交互控件,该图像增强按钮可以是直播设备显示的直播界面上的虚拟控件,或者也可以是直播设备上的物理按钮。
可选地,在主播可以选择是否开启图像增强服务的应用场景中,可以将图像增强服务与主播的账户资源相关联;当主播选择开启图像增强服务时,可以从主播的账户资源中扣除一定数量的资源,这里对账户资源的数量不做限定。其中,是否使用图像增强服务可以由主播端自主选择。当然,也可以不由主播端自主选择,而是默认使用图像增强服务。需要说明的是,在默认使用图像增强服务的情况下,可以默认免费使用图像增强服务,或者默认扣除一定数量的账户资源,对此不做限定。
进一步,在主播选择开启图像增强服务的情况下,进一步可以从多种图像增强模式中选择目标图像增强模式;根据当前直播场景的设备特征和/或场景特征,选择与当前直播场景相似的目标直播场景;获取目标直播场景中使用的图像增强模型,作为用于图像增强的初始网络模型;进而,基于目标图像增强模式对应的增强对象,利用从直播视频流中多张原始图像以及对应的多张失真图像对初始网络模型进行训练,得到用于对目标图像增强模式对应的增强对象进行图像增强的图像增强模型。
在本实施例中,针对直播视频流生成与之适配的图像增强模型,将图像增强模型以及直播视频流对应的视频编码流发送至直播观看终端,直播观看终端对视频编码流进行解码,并利用对应的图像增强模型对解码出的视频流进行图像增强处理后进行播放,其中,采用与直播视频流或视频编码流适配的图像增强模型进行图像增强,增强效果具有针对性,因此,可以高效且准确的利用图像增强模型达到改善视频清晰度以及流畅度的效果,极大地提高用户的体验感。关于直播观看终端利用图像增强模型对解码出的视频流进行图像增强处理后进行播放的详细过程与下述图3b所示实施例相同或类似,可参见下述图3b所示实施例。
图3b为本申请示例性实施例提供的一种视频播放方法的流程示意图,该方法包括:
31、接收视频编码流以及对应的图像增强模型;
32、对视频编码流进行解码,以得到解码后的视频流;
33、将解码后的视频流输入图像增强模型进行图像增强;
34、播放经图像增强模型进行增强后的视频流。
在本实施例中,视频处理设备可以生成与原始视频流适配的图像增强模型;之后,将图像增强模型和原始视频流对应的视频编码流发送给视频播放终端,以供视频播放终端利用图像增强模型对视频编码流进行图像增强。相应地,视频播放终端可以接收视频处理设备发送的视频编码流以及对应的图像增强模型;对视频编码流进行解码,以得到解码后的视频流;将解码后的视频流输入图像增强模型进行图像增强;播放经图像增强模型进行增强后的视频流。关于编码以及图像增强模型的具体内容可参见前述实施例,在此不再赘述。
在此说明,在本申请实施例中,在根据原始视频流中的原始图像和原始图像对应的失真图像实时生成图像增强模型的情况下,生成图像增强模型需要一定时间。基于此,可以以图像增强模型的生成作为分界点,将原始视频流分割为两部分,即原始视频流包括:在生成图像增强模型前后获取的第一部分原始视频流和第二部分原始视频流。关于在生成图像增强模型之前获取的第一部分原始视频流,可以采用但不限于以下两种实施方式进行处理。
实施方式D1,在一些应用场景中,对视频播放质量的要求比较高,则为了保证视频播放的流畅度和清晰度,视频播放终端可以在接收图像增强模型之前接收第一部分视频编码流;以及同时接收所述图像增强模型和第二部分视频编码流;在接收图像增强模型之前,对所述第一部分视频编码流进行解码以得到第一解码视频流;以及在接收到所述第二部分视频编码流时对所述第二部分视频编码流进行解码以得到第二解码视频流。可选地,为了提高直播视频播放质量,视频播放终端可以在得到第一解码视频流后,缓存第一解码视频流直至接收到图像增强模型;在接收到图像增强模型时,按照视频流的时序依次将缓存的第一解码视频流和第二解码视频流输入图像增强模型进行图像增强,提高了直播视频的质量,极大地满足了用户对视频质量的体验感。
实施方式D2:在一些应用场景中,对视频播放的实时性要求比较高,则为了保证在视频播放终端能够及时播放视频,视频播放终端可以接收第一部分视频编码流,对第一部分视频编码流进行解码,得到第一解码视频流,并在接收到图像增强模型之前,实时播放第一解码视频流,用以维持视频播放终端对时延的高要求,提高了用户对实时性的体验感。在接收图像增强模型和第二部分视频编码流之后,对第二部分视频编码流进行解码,得到第二解码视频流,将第二解码视频流输入图像增强模型进行图像增强,提高直播视频的质量,极大地满足了用户对视频质量的体验感。
在一些可选实施例中,在播放第一解码视频流的过程中,还可以检测视频播放质量;在视频播放质量低于设定值时,向提供视频编码流的视频处理设备发送通知消息,以通知视频处理设备提供与视频编码流适配的图像增强模型。
其中,并不对设定值进行限定,例如若视频播放质量用网速来衡量,则设定值100kb,即网速低于100kb时,则通知视频处理设备需要生成图像增强模型。若视频播放质量是用视频的清晰度来衡量,视频的清晰度可以用标清、高清、超清、蓝光等来衡量,则设定值可以是标清,一旦视频的播放质量低于标清,则通知视频处理设备需要生成图像增强模型。
在此说明,本实施例的视频播放方法可应用于视频直播场景,则在视频直播场景中,接收到的视频编码流是对直播视频流进行编码得到的编码流;相应地,对视频编码流进行解码得到的视频流是解码出的直播视频流。
在本申请实施例中,针对原始视频流生成与之适配的图像增强模型,将图像增强模型以及原始视频流对应的视频编码流发送至视频播放终端,视频播放终端对视频编码流进行解码,并利用对应的图像增强模型对解码出的视频流进行图像增强处理后进行播放,其中,采用与原始视频流或视频编码流适配的图像增强模型进行图像增强,增强效果具有针对性,因此,可以高效且准确的利用图像增强模型达到改善视频清晰度以及流畅度的效果,极大地提高用户的体验感。
需要说明的是,上述实施例所提供方法的各步骤的执行主体均可以是同一设备,或者,该方法也由不同设备作为执行主体。比如,步骤31至步骤33的执行主体可以为设备A;又比如,步骤31和32的执行主体可以为设备A,步骤33的执行主体可以为设备B;等等。
另外,在上述实施例及附图中的描述的一些流程中,包含了按照特定顺序出现的多个操作,但是应该清楚了解,这些操作可以不按照其在本文中出现的顺序来执行或并行执行,操作的序号如31、32等,仅仅是用于区分开各个不同的操作,序号本身不代表任何的执行顺序。另外,这些流程可以包括更多或更少的操作,并且这些操作可以按顺序执行或并行执行。需要说明的是,本文中的“第一”、“第二”等描述,是用于区分不同的消息、设备、模块等,不代表先后顺序,也不限定“第一”和“第二”是不同的类型。
图4为本申请示例性实施例提供的一种视频处理设备的结构示意图;如图4所示,该视频处理设备包括:存储器401、处理器402以及通信组件403。
存储器401,用于存储计算机程序,并可被配置为存储其它各种数据以支持在视频处理设备上的操作。这些数据的示例包括用于在视频处理设备上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。
存储器401可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。
处理器402,与存储器401耦合,用于执行计算机程序,以用于:获取原始视频流;生成与原始视频流适配的图像增强模型;通过通信组件403将图像增强模型和原始视频流对应的视频编码流发送给视频播放终端,以供视频播放终端利用图像增强模型对视频编码流进行图像增强。
在一可选实施例中,处理器402在生成与原始视频流适配的图像增强模型时,具体用于:从原始视频流中提取多张原始图像,并获取多张原始图像对应的失真图像;根据多张原始图像和多张失真图像进行模型训练,得到与原始视频流适配的图像增强模型。
在一可选实施例中,处理器402在获取多张原始图像对应的失真图像时,具体用于:根据网络状态信息,对多张原始图像进行失真处理,得到多张失真图像;或者从视频编码流中提取与多张原始图像对应的多张编码图像,对多张编码图像进行解码处理,得到多张失真图像。
在一可选实施例中,处理器402在根据多张原始图像和多张失真图像进行模型训练,得到与原始视频流适配的图像增强模型时,具体用于:获取用于图像增强的初始网络模型;利用多张原始图像和多张失真图像对初始网络模型进行训练,得到与原始视频流适配的图像增强模型。
在一可选实施例中,处理器402在获取用于图像增强的初始网络模型时,具体用于:根据产生原始视频流时的场景特征和/或设备特征,确定与原始视频流相似的目标视频流;获取与目标视频流适配的图像增强模型,作为用于图像增强的初始网络模型。
在一可选实施例中,原始视频流包括在生成图像增强模型前后获取的第一部分原始视频流和第二部分原始视频流,则处理器402在将原始视频流对应的视频编码流发送给视频播放终端时,具体用于:缓存第一部分原始视频流对应的第一部分视频编码流;在生成图像增强模型之后,将第一部分视频编码流以及第二部分原始视频流对应的第二部分视频编码流与图像增强模型一起发送给视频播放终端。
在一可选实施例中,处理器402在生成与原始视频流适配的图像增强模型时,具体用于:接收视频播放终端发送的指示视频播放质量低于设定值的通知消息;根据通知消息,生成与原始视频流适配的图像增强模型。
本实施例提供的视频处理设备可以作为视频直播场景中主播端使用的直播设备实现,在作为主播端使用的直播设备实现时,处理器402具体用于:采集当前直播场景中的直播视频流;生成与直播视频流适配的图像增强模型;将图像增强模型和直播视频流对应的视频编码流发送给直播观看终端,以供直播观看终端利用图像增强模型对视频编码流进行图像增强。
在一可选实施例中,处理器402在生成与直播视频流适配的图像增强模型时,具体用于:从直播视频流中提取多张原始图像,并获取多张原始图像对应的失真图像;根据多张原始图像和多张失真图像进行模型训练,得到与直播视频流适配的图像增强模型。
在一可选实施例中,处理器402在根据多张原始图像和多张失真图像进行模型训练,得到与原始视频流适配的图像增强模型时,具体用于:根据当前直播场景的场景特征和/或当前直播设备的设备特征,获取用于图像增强的初始网络模型;利用多张原始图像和多张失真图像对初始网络模型进行训练,得到与原始视频流适配的图像增强模型。
在一可选实施例中,处理器402在根据当前直播场景的场景特征和/或当前直播设备的设备特征,获取用于图像增强的初始网络模型时,具体用于:根据当前直播场景的场景特征和/或当前直播设备的设备特征,确定与当前直播场景相似的目标直播场景;获取在目标直播场景中使用的图像增强模型,作为用于图像增强的初始网络模型。
在一可选实施例中,处理器402在生成与直播视频流适配的图像增强模型之前,还用于:响应于对直播设备上图像增强按钮的触发操作,开启图像增强服务;图像增强按钮为直播设备显示的直播界面上的虚拟控件,或者为直播设备上的物理按钮。
在一可选实施例中,处理器402在生成与直播视频流适配的图像增强模型时,具体用于:响应于主播对图像增强模式的选择操作,从多种图像增强模式中选择目标图像增强模式,其中,不同图像增强模式对应直播场景中的不同增强对象;根据目标图像增强模式对应的增强对象,生成与直播视频流适配的图像增强模型。
进一步,如图4所示,该视频处理设备还包括:显示器407、电源组件408、音频组件409等其它组件。图4中仅示意性给出部分组件,并不意味着视频处理设备只包括图4所示组件。需要说明的是,图4中虚线框内的组件为可选组件,而非必选组件,具体可视视频处理设备的产品形态而定。
相应地,本申请实施例还提供一种存储有计算机程序的计算机可读存储介质,计算机程序被执行时能够实现上述视频传输方法或视频直播方法实施例中可由视频处理设备执行的各步骤。
图5为本申请示例性实施例提供的一种视频播放终端的结构示意图;如图5所示,该视频播放终端包括:存储器501、处理器502以及通信组件503。
存储器501,用于存储计算机程序,并可被配置为存储其它各种数据以支持在视频播放终端上的操作。这些数据的示例包括用于在视频播放终端上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。
存储器501可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。
处理器502,与一个或多个存储器501耦合,用于执行计算机程序,以用于:通过通信组件503接收视频编码流以及对应的图像增强模型;对视频编码流进行解码,以得到解码后的视频流;将解码后的视频流输入图像增强模型进行图像增强;播放经图像增强模型进行增强后的视频流。
在一可选实施例中,处理器502在接收视频编码流以及对应的图像增强模型时,具体用于:在接收图像增强模型之前接收第一部分视频编码流;以及同时接收图像增强模型和第二部分视频编码流;相应地,处理器502在对视频编码流进行解码,以得到解码后的视频流时,具体用于:在接收图像增强模型之前,对第一部分视频编码流进行解码以得到第一解码视频流;以及在接收到第二部分视频编码流时对第二部分视频编码流进行解码以得到第二解码视频流。
在一可选实施例中,处理器502还用于:在得到第一解码视频流后,缓存第一解码视频流直至接收到图像增强模型;相应地,处理器502在将解码后的视频流输入图像增强模型进行图像增强时,具体用于:在接收到图像增强模型时,按照视频流的时序依次将缓存的第一解码视频流和第二解码视频流输入图像增强模型进行图像增强。
在一可选实施例中,处理器502还用于:在接收到图像增强模型之前,播放第一解码视频流;相应地,处理器502在将解码后的视频流输入图像增强模型进行图像增强时,具体用于:将第二解码视频流输入图像增强模型进行图像增强。
在一可选实施例中,处理器502还用于:在播放第一解码视频流的过程中,检测视频播放质量;在视频播放质量低于设定值时,向提供视频编码流的视频处理设备发送通知消息,以通知视频处理设备提供与视频编码流适配的图像增强模型。
本实施例提供的视频播放终端可以作为视频直播场景中的直播观看终端实现,但不限于此。
进一步,如图5所示,该视频播放终端还包括:显示器507、电源组件508、音频组件509等其它组件。图5中仅示意性给出部分组件,并不意味着视频播放终端只包括图5所示组件。需要说明的是,图5中虚线框内的组件为可选组件,而非必选组件,具体可视视频播放终端的产品形态而定。
相应地,本申请实施例还提供一种存储有计算机程序的计算机可读存储介质,计算机程序被执行时能够实现上述视频播放方法实施例中可由视频播放终端执行的各步骤。
上述图4和图5中的通信组件被配置为便于通信组件所在设备和其他设备之间有线或无线方式的通信。通信组件所在设备可以接入基于通信标准的无线网络,如WiFi,2G或3G,或它们的组合。在一个示例性实施例中,通信组件经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,所述通信组件还可以包括近场通信(NFC)模块,射频识别(RFID)技术,红外数据协会(IrDA)技术,超宽带(UWB)技术,蓝牙(BT)技术等。
上述图4和图5中的显示器包括屏幕,其屏幕可以包括液晶显示器(LCD)和触摸面板(TP)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。
上述图4和图5中的电源组件,为电源组件所在设备的各种组件提供电力。电源组件可以包括电源管理系统,一个或多个电源,及其他与为电源组件所在设备生成、管理和分配电力相关联的组件。
上述图4和图5中的音频组件,可被配置为输出和/或输入音频信号。例如,音频组件包括一个麦克风(MIC),当音频组件所在设备处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器或经由通信组件发送。在一些实施例中,音频组件还包括一个扬声器,用于输出音频信号。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。

Claims (21)

1.一种视频传输方法,其特征在于,包括:
获取原始视频流;
从所述原始视频流中提取多张原始图像,并获取所述多张原始图像对应的失真图像;
根据所述多张原始图像和多张失真图像进行模型训练,得到与所述原始视频流适配的图像增强模型;
将所述图像增强模型和所述原始视频流对应的视频编码流发送给视频播放终端,以供所述视频播放终端利用所述图像增强模型对所述视频编码流进行图像增强。
2.根据权利要求1所述的方法,其特征在于,获取所述多张原始图像对应的失真图像,包括:
根据网络状态信息,对所述多张原始图像进行失真处理,得到多张失真图像;
或者
从所述视频编码流中提取与所述多张原始图像对应的多张编码图像,对所述多张编码图像进行解码处理,得到多张失真图像。
3.根据权利要求1所述的方法,其特征在于,根据所述多张原始图像和多张失真图像进行模型训练,得到与所述原始视频流适配的图像增强模型,包括:
获取用于图像增强的初始网络模型;
利用所述多张原始图像和多张失真图像对所述初始网络模型进行训练,得到与所述原始视频流适配的图像增强模型。
4.根据权利要求3所述的方法,其特征在于,获取用于图像增强的初始网络模型,包括:
根据产生所述原始视频流时的场景特征和/或设备特征,确定与所述原始视频流相似的目标视频流;
获取与所述目标视频流适配的图像增强模型,作为所述用于图像增强的初始网络模型。
5.根据权利要求1-4任一项所述的方法,其特征在于,所述原始视频流包括在生成所述图像增强模型前后获取的第一部分原始视频流和第二部分原始视频流,则将所述原始视频流对应的视频编码流发送给视频播放终端,包括:
缓存所述第一部分原始视频流对应的第一部分视频编码流;在生成所述图像增强模型之后,将所述第一部分视频编码流以及所述第二部分原始视频流对应的第二部分视频编码流与所述图像增强模型一起发送给视频播放终端。
6.根据权利要求1-4任一项所述的方法,其特征在于,生成与所述原始视频流适配的图像增强模型,包括:
接收视频播放终端发送的指示视频播放质量低于设定值的通知消息;
根据所述通知消息,生成与所述原始视频流适配的图像增强模型。
7.一种视频播放方法,其特征在于,包括:
接收视频编码流以及对应的图像增强模型,所述图像增强模型为根据多张原始图像和与所述多张原始图像对应的多张失真图像进行模型训练,得到的与原始视频流适配的图像增强模型,其中,所述视频编码流为所述原始视频流经过编码后的视频流,所述多张原始图像为从所述原始视频流中提取的;
对所述视频编码流进行解码,以得到解码后的视频流;
将所述解码后的视频流输入所述图像增强模型进行图像增强;
播放经所述图像增强模型进行增强后的视频流。
8.根据权利要求7所述的方法,其特征在于,接收视频编码流以及对应的图像增强模型,包括:
在接收图像增强模型之前接收第一部分视频编码流;以及同时接收所述图像增强模型和第二部分视频编码流;
相应地,对所述视频编码流进行解码,以得到解码后的视频流,包括:在接收所述图像增强模型之前,对所述第一部分视频编码流进行解码以得到第一解码视频流;以及在接收到所述第二部分视频编码流时对所述第二部分视频编码流进行解码以得到第二解码视频流。
9.根据权利要求8所述的方法,其特征在于,还包括:在得到所述第一解码视频流后,缓存所述第一解码视频流直至接收到所述图像增强模型;
相应地,将所述解码后的视频流输入所述图像增强模型进行图像增强,包括:
在接收到所述图像增强模型时,按照视频流的时序依次将所述缓存的第一解码视频流和所述第二解码视频流输入所述图像增强模型进行图像增强。
10.根据权利要求8所述的方法,其特征在于,还包括:在接收到所述图像增强模型之前,播放所述第一解码视频流;
相应地,将所述解码后的视频流输入所述图像增强模型进行图像增强,包括:将所述第二解码视频流输入所述图像增强模型进行图像增强。
11.根据权利要求10所述的方法,其特征在于,还包括:
在播放所述第一解码视频流的过程中,检测视频播放质量;
在所述视频播放质量低于设定值时,向提供所述视频编码流的视频处理设备发送通知消息,以通知所述视频处理设备提供与所述视频编码流适配的图像增强模型。
12.一种视频直播方法,其特征在于,包括:
采集当前直播场景中的直播视频流;
从所述直播视频流中提取多张原始图像,并获取所述多张原始图像对应的失真图像;
根据所述多张原始图像和多张失真图像进行模型训练,得到与所述直播视频流适配的图像增强模型;
将所述图像增强模型和所述直播视频流对应的视频编码流发送给直播观看终端,以供所述直播观看终端利用所述图像增强模型对所述视频编码流进行图像增强。
13.根据权利要求12所述的方法,其特征在于,根据所述多张原始图像和多张失真图像进行模型训练,得到与所述直播视频流适配的图像增强模型,包括:
根据当前直播场景的场景特征和/或当前直播设备的设备特征,获取用于图像增强的初始网络模型;
利用所述多张原始图像和多张失真图像对所述初始网络模型进行训练,得到与所述直播视频流适配的图像增强模型。
14.根据权利要求13所述的方法,其特征在于,根据当前直播场景的场景特征和/或当前直播设备的设备特征,获取用于图像增强的初始网络模型,包括:
根据当前直播场景的场景特征和/或当前直播设备的设备特征,确定与当前直播场景相似的目标直播场景;
获取在所述目标直播场景中使用的图像增强模型,作为所述用于图像增强的初始网络模型。
15.根据权利要求14所述的方法,其特征在于,所述场景特征包括以下至少一种:直播时间、直播间大小、直播对象的属性、主播属性以及直播间的环境特征;
所述设备特征包括以下至少一种:直播设备的类型、直播设备的型号、直播设备的资源数量、直播摄像头的类型、直播软件的类型以及直播软件的版本。
16.根据权利要求12-15任一项所述的方法,其特征在于,在生成与所述直播视频流适配的图像增强模型之前,还包括:
响应于对直播设备上图像增强按钮的触发操作,开启图像增强服务;所述图像增强按钮为直播设备显示的直播界面上的虚拟控件,或者为所述直播设备上的物理按钮。
17.根据权利要求12-15任一项所述的方法,其特征在于,生成与所述直播视频流适配的图像增强模型,包括:
响应于主播对图像增强模式的选择操作,从多种图像增强模式中选择目标图像增强模式,其中,不同图像增强模式对应直播场景中的不同增强对象;
根据所述目标图像增强模式对应的增强对象,生成与所述直播视频流适配的图像增强模型。
18.根据权利要求17所述的方法,其特征在于,所述目标图像增强模式对应的增强对象为主播、直播背景、直播对象或直播全画面。
19.一种视频处理设备,其特征在于,包括:存储器、处理器以及通信组件;
所述存储器,用于存储计算机程序;
所述处理器,与所述存储器耦合,用于执行所述计算机程序,以用于:获取原始视频流;从所述原始视频流中提取多张原始图像,并获取所述多张原始图像对应的失真图像;根据所述多张原始图像和多张失真图像进行模型训练,得到与所述原始视频流适配的图像增强模型;通过通信组件将所述图像增强模型和所述原始视频流对应的视频编码流发送给视频播放终端,以供所述视频播放终端利用所述图像增强模型对所述视频编码流进行图像增强。
20.一种视频播放终端,其特征在于,包括:存储器、处理器以及通信组件;
所述存储器,用于存储计算机程序;
所述处理器,与所述存储器耦合,用于执行所述计算机程序,以用于:
通过通信组件接收视频编码流以及对应的图像增强模型,所述图像增强模型为根据多张原始图像和与所述多张原始图像对应的多张失真图像进行模型训练,得到的与原始视频流适配的图像增强模型,其中,所述视频编码流为所述原始视频流经过编码后的视频流,所述多张原始图像为从所述原始视频流中提取的;对所述视频编码流进行解码,以得到解码后的视频流;将所述解码后的视频流输入所述图像增强模型进行图像增强;播放经所述图像增强模型进行增强后的视频流。
21.一种存储有计算机程序的计算机可读存储介质,其特征在于,当所述计算机程序被处理器执行时,致使所述处理器实现权利要求1-18任一项所述方法中的步骤。
CN202010626671.4A 2020-07-01 2020-07-01 视频传输、直播与播放方法、设备及存储介质 Active CN113301355B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010626671.4A CN113301355B (zh) 2020-07-01 2020-07-01 视频传输、直播与播放方法、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010626671.4A CN113301355B (zh) 2020-07-01 2020-07-01 视频传输、直播与播放方法、设备及存储介质

Publications (2)

Publication Number Publication Date
CN113301355A CN113301355A (zh) 2021-08-24
CN113301355B true CN113301355B (zh) 2023-04-28

Family

ID=77318336

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010626671.4A Active CN113301355B (zh) 2020-07-01 2020-07-01 视频传输、直播与播放方法、设备及存储介质

Country Status (1)

Country Link
CN (1) CN113301355B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112887512A (zh) * 2021-01-26 2021-06-01 长威信息科技发展股份有限公司 一种视频流高分可视化系统
CN113852860A (zh) * 2021-09-26 2021-12-28 北京金山云网络技术有限公司 视频处理方法、装置、系统及存储介质
CN114390307A (zh) * 2021-12-28 2022-04-22 广州虎牙科技有限公司 图像画质增强方法、装置、终端及可读存储介质
CN118450195A (zh) * 2024-04-30 2024-08-06 广州光晨信息科技有限公司 视频图像画质调节方法、系统、计算机设备及存储介质

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108305214B (zh) * 2017-12-28 2019-09-17 腾讯科技(深圳)有限公司 图像数据处理方法、装置、存储介质和计算机设备
US10999583B2 (en) * 2018-09-14 2021-05-04 Apple Inc. Scalability of multi-directional video streaming
CN109151573B (zh) * 2018-09-30 2021-06-15 Oppo广东移动通信有限公司 视频增强控制方法、装置以及电子设备
CN109819272B (zh) * 2018-12-26 2022-09-16 平安科技(深圳)有限公司 视频发送方法、装置、计算机可读存储介质及电子设备
CN110677728B (zh) * 2019-09-30 2020-09-22 北京达佳互联信息技术有限公司 播放视频的方法、装置、设备及存储介质

Also Published As

Publication number Publication date
CN113301355A (zh) 2021-08-24

Similar Documents

Publication Publication Date Title
CN113301355B (zh) 视频传输、直播与播放方法、设备及存储介质
US11706484B2 (en) Video processing method, electronic device and computer-readable medium
US11601699B2 (en) Predictive content delivery for video streaming services
US11962858B2 (en) Video playback method, video playback terminal, and non-volatile computer-readable storage medium
US9210372B2 (en) Communication method and device for video simulation image
US10574933B2 (en) System and method for converting live action alpha-numeric text to re-rendered and embedded pixel information for video overlay
CN108989609A (zh) 视频封面生成方法、装置、终端设备及计算机存储介质
CN106537902A (zh) 在音频或视频通话期间对上下文信息进行合成和传送
CN112714327B (zh) 基于直播应用程序的互动方法、装置、设备及存储介质
CN112788235B (zh) 图像处理方法、装置、终端设备及计算机可读取存储介质
CN110876079B (zh) 视频处理方法、装置和设备
WO2018076939A1 (zh) 视频文件的处理方法和装置
CN101998051A (zh) 图像显示控制装置、图像处理装置及搭载其的摄像装置
US11388472B2 (en) Temporal placement of a rebuffering event
CN112019907A (zh) 直播画面分流方法、计算机设备及可读存储介质
CN114296949A (zh) 一种虚拟现实设备及高清晰度截屏方法
CN114466228B (zh) 一种提高投屏显示流畅度的方法、设备及存储介质
CN112468830A (zh) 视频图像处理方法、装置及电子设备
CN111246246A (zh) 一种视频播放方法及装置
CN107004018B (zh) 数据处理方法及装置
CN112399231A (zh) 播放方法
CN114745597B (zh) 视频处理方法和装置、电子设备和计算机可读存储介质
CN112954483B (zh) 数据传输方法、系统及非易失性存储介质
CN117291810B (zh) 视频帧的处理方法、装置、设备及存储介质
CN117336518A (zh) 直播方法、装置、设备及存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant