CN111901598B - 视频解码与编码的方法、装置、介质及电子设备 - Google Patents

视频解码与编码的方法、装置、介质及电子设备 Download PDF

Info

Publication number
CN111901598B
CN111901598B CN202010601628.2A CN202010601628A CN111901598B CN 111901598 B CN111901598 B CN 111901598B CN 202010601628 A CN202010601628 A CN 202010601628A CN 111901598 B CN111901598 B CN 111901598B
Authority
CN
China
Prior art keywords
video
frame
frames
information
pixel
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
CN202010601628.2A
Other languages
English (en)
Other versions
CN111901598A (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.)
South China University of Technology SCUT
Tencent Technology Shenzhen Co Ltd
Original Assignee
South China University of Technology SCUT
Tencent Technology Shenzhen Co 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 South China University of Technology SCUT, Tencent Technology Shenzhen Co Ltd filed Critical South China University of Technology SCUT
Priority to CN202010601628.2A priority Critical patent/CN111901598B/zh
Publication of CN111901598A publication Critical patent/CN111901598A/zh
Application granted granted Critical
Publication of CN111901598B publication Critical patent/CN111901598B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/587Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal sub-sampling or interpolation, e.g. decimation or subsequent interpolation of pictures in a video sequence
    • 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
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Artificial Intelligence (AREA)
  • Mathematical Physics (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Computing Systems (AREA)
  • Molecular Biology (AREA)
  • General Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Computational Linguistics (AREA)
  • Biophysics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Medical Informatics (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

本申请的实施例提供了一种视频解码与编码的方法、装置、计算机可读介质及电子设备。该视频解码与编码的方法包括:获取对视频进行编码得到的编码图像,对编码图像进行解码,以得到视频中的目标视频帧、以及视频中视频帧之间的像素变化信息,之后基于像素变化信息和目标视频帧还原视频中的视频帧,以在最后根据视频帧生成编码图像对应的视频。通过上述方式既可以减少视频在传输过程中的数据量,提高视频传输的效率,又能基于编码图像中的信息完整的还原整个视频,提高了视频编解码过程中信息的完整性,以及视频编解码处理的便捷性和直观性。

Description

视频解码与编码的方法、装置、介质及电子设备
技术领域
本申请涉及计算机技术领域,具体而言,涉及一种视频解码与编码的方法、装置、计算机可读介质及电子设备。
背景技术
在对一段视频进行传输等处理过程中,由于视频中包含了图像数据和音频数据,导致在处理过程中需要面对较大的数据量,因此,直接对视频进行处理或者传输将耗费较大的带宽和时延。相关技术中通过对视频数据进行压缩编码,但其压缩之后仍然存在数据量较大的问题,导致编码效率较低。
发明内容
本申请的实施例提供了一种视频解码与编码的方法、装置、计算机可读介质及电子设备,进而至少在一定程度上可以减少视频在传输过程中的数据量,提高视频传输的效率和视频解码过程中信息的完整性。
本申请的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本申请的实践而习得。
根据本申请实施例的一个方面,提供了一种视频解码的方法,包括:获取对视频进行编码得到的编码图像;对所述编码图像进行解码,得到所述视频中的目标视频帧、以及所述视频中视频帧之间的像素变化信息;基于所述像素变化信息和所述目标视频帧,还原所述视频中的视频帧;根据所述视频帧生成所述编码图像对应的视频。
根据本申请实施例的二个方面,提供了一种视频编码的方法,包括:获取待编码的视频;提取所述视频中的视频帧;基于注意力机制,提取所述视频帧之间的像素变化信息;对所述视频帧对应的像素变化信息和所述视频中的目标视频帧进行编码,得到所述视频对应的编码图像。
根据本申请实施例的一个方面,提供了一种视频解码的装置,包括:第一获取单元,用于获取对视频进行编码得到的编码图像;解码单元,用于对所述编码图像进行解码,得到所述视频中的目标视频帧、以及所述视频中视频帧之间的像素变化信息;还原单元,用于基于所述像素变化信息和所述目标视频帧,还原所述视频中的视频帧;视频单元,用于根据所述视频帧生成所述编码图像对应的视频。
在本申请的一些实施例中,基于前述方案,所述视频单元包括:排序单元,用于对所述视频帧进行排序,得到视频帧序列;第一生成单元,用于根据所述视频帧序列中相邻帧的像素参数,生成位于所述相邻帧之间的插值帧;第二生成单元,用于将所述插值帧插入所述相邻帧之间,以生成所述视频。
在本申请的一些实施例中,基于前述方案,所述第一生成单元包括:光流单元,用于根据所述视频帧序列中相邻帧的像素参数,确定所述相邻帧之间像素点变化对应的光流参数;第一确定单元,用于根据所述光流参数和所述相邻帧的时间信息,确定所述相邻帧对应的近似帧;第三生成单元,用于基于所述近似帧以及所述光流参数,生成位于所述相邻帧之间的插值帧。
在本申请的一些实施例中,基于前述方案,所述第一确定单元包括:时刻确定单元,用于根据所述相邻帧的时间信息,确定所述相邻帧之间至少两个待生成的插值帧对应的播放时刻;近似帧确定单元,用于基于所述光流参数和至少两个所述播放时刻,确定所述至少两个待生成的插值帧分别对应的近似帧。
在本申请的一些实施例中,基于前述方案,所述相邻帧包括位置靠前的第一帧和位置靠后的第二帧;所述第一确定单元包括:第二确定单元,用于根据所述相邻帧的时间信息,确定所述第一帧到所述第二帧之间的第一光流参数对应的第一权重,以及所述第二帧到所述第一帧之间的第二光流参数对应的第二权重;第三确定单元,用于基于所述第一光流参数及其对应的第一权重,确定所述第一帧对应的第一近似帧;第四确定单元,用于基于所述第二光流参数及其对应的第二权重,确定所述第二帧对应的第二近似帧。
在本申请的一些实施例中,基于前述方案,所述第三生成单元包括:形变单元,用于基于所述光流参数对所述近似帧进行反向形变,得到所述近似帧对应的形变结果;加权单元,用于对所述形变结果进行加权处理,得到所述插值帧。
根据本申请实施例的一个方面,提供了一种视频编码的装置,包括:第二获取单元,用于获取待编码的视频;第一提取单元,用于提取所述视频中的视频帧;第二提取单元,用于基于注意力机制,提取所述视频帧之间的像素变化信息;编码单元,用于对所述视频帧对应的像素变化信息和所述视频中的目标视频帧进行编码,得到所述视频对应的编码图像。
在本申请的一些实施例中,基于前述方案,所述第二提取单元包括:第三提取单元,用于将所述视频帧输入所述注意力机制的卷积网络中提取所述视频帧的像素信息;第五确定单元,用于基于所述视频帧的像素信息,确定所述视频帧对应的权重矩阵;第六确定单元,用于基于所述视频帧的像素信息及权重矩阵之间的乘积,确定所述视频帧之间的像素变化信息。
在本申请的一些实施例中,基于前述方案,所述第三提取单元包括:特征提取单元,用于将所述视频帧输入所述注意力机制的第一卷积网络中,提取出所述视频帧的图像特征;像素提取单元,用于将所述图像特征输入所述注意力机制的第二卷积网络中,得到所述像素信息,其中,所述第二卷积网络的通道数目小于所述第一卷积网络的通道数目。
在本申请的一些实施例中,基于前述方案,所述第五确定单元包括:拼接单元,用于对各所述视频帧的像素信息进行拼接,得到拼接信息;标准化单元,用于将所述拼接信息输入所述注意力机制中的标准化指数层中进行标准化处理,得到标准化矩阵;拆分单元,用于对所述标准化矩阵进行拆分处理,得到所述视频帧对应的权重矩阵。
在本申请的一些实施例中,基于前述方案,所述视频解码的装置还包括:损失函数单元,用于基于视频样本及其对应的编码图像,生成用于感知视频中序列帧的感知损失函数、用于确定视频的中心图像的单峰损失函数、用于生成编码图像的嵌入损失函数;训练单元,用于基于所述感知损失函数、所述单峰损失函数以及所述嵌入损失函数之间的线性组合,生成采用注意力机制的机器学习模型的目标损失函数,以基于所述目标损失函数对所述机器学习模型进行训练,并基于训练后的机器学习模型提取所述像素变化信息。
在本申请的一些实施例中,基于前述方案,所述视频解码的装置还包括:音频提取单元,用于从所述视频中提取出音频信息;音频编码单元,用于对所述音频信息进行编码,得到音频编码数据;音频融合单元,用于将所述音频编码数据融合进所述编码图像中。
根据本申请实施例的一个方面,提供了一种计算机可读介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如上述实施例中所述的视频解码与编码的方法。
根据本申请实施例的一个方面,提供了一种电子设备,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如上述实施例中所述的视频解码与编码的方法。
在本申请的一些实施例所提供的技术方案中,在编码过程中,基于注意力机制提取视频中视频帧之间的像素变化信息,对视频帧对应的像素变化信息和视频中的目标视频帧进行编码,将视频中的数据编写码在一幅编码图像中,既保留了视频信息的完整性,减少了视频在传输过程中的数据量,又能直观体现编码之后的视频对应的图像,提高了视频编码的可视化,具有较高的视频编码效率。在解码过程中,对编码图像进行解码得到视频中的目标视频帧、以及视频中视频帧之间的像素变化信息,之后基于像素变化信息和目标视频帧还原视频中的视频帧,以在最后基于编码图像中的信息完整的还原整个视频,既保证了视频信息的完整性,又提高了视频解码的效率。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
图1示出了可以应用本申请实施例的技术方案的示例性系统架构的示意图;
图2示意性示出了根据本申请的一个实施例的视频解码的方法的流程图
图3示意性示出了根据本申请的一个实施例的获取编码图像的示意图;
图4示意性示出了根据本申请的一个实施例的对编码图像进行解码的示意图;
图5示意性示出了根据本申请的一个实施例的根据所述视频帧生成所述编码图像对应的视频的流程图;
图6示意性示出了根据本申请的一个实施例的生成插值帧的插帧网络架构图;
图7示意性示出了根据本申请的一个实施例的视频解码结果对比的示意图;
图8示意性示出了根据本申请的一个实施例的基于插值帧对相邻帧进行插帧的示意图;
图9示意性示出了根据本申请的一个实施例的视频编码的方法的流程图;
图10示意性示出了根据本申请的一个实施例的基于注意力机制的视频编码的示意图;
图11示意性示出了根据本申请的一个实施例的编码图像的示意图;
图12示意性示出了根据本申请的一个实施例的视频解码的装置的框图;
图13示意性示出了根据本申请的一个实施例的视频编码的装置的框图;
图14示出了适于用来实现本申请实施例的电子设备的计算机系统的结构示意图。
具体实施方式
现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本申请将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。
此外,所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施例中。在下面的描述中,提供许多具体细节从而给出对本申请的实施例的充分理解。然而,本领域技术人员将意识到,可以实践本申请的技术方案而没有特定细节中的一个或更多,或者可以采用其它的方法、组元、装置、步骤等。在其它情况下,不详细示出或描述公知方法、装置、实现或者操作以避免模糊本申请的各方面。
附图中所示的方框图仅仅是功能实体,不一定必须与物理上独立的实体相对应。即,可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
附图中所示的流程图仅是示例性说明,不是必须包括所有的内容和操作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解,而有的操作/步骤可以合并或部分合并,因此实际执行的顺序有可能根据实际情况改变。
人工智能(Artificial Intelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。
人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
计算机视觉技术(Computer Vision,CV)计算机视觉是一门研究如何使机器“看”的科学,更进一步的说,就是指用摄影机和电脑代替人眼对目标进行识别、跟踪和测量等机器视觉,并进一步做图形处理,使电脑处理成为更适合人眼观察或传送给仪器检测的图像。作为一个科学学科,计算机视觉研究相关的理论和技术,试图建立能够从图像或者多维数据中获取信息的人工智能系统。计算机视觉技术通常包括图像处理、图像识别、图像语义理解、视频处理、视频语义理解、视频内容/行为识别、三维物体重建、3D技术、虚拟现实、增强现实、同步定位与地图构建等技术。机器学习(Machine Learning,ML)是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。机器学习是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。机器学习和深度学习通常包括人工神经网络、置信网络、强化学习、迁移学习、归纳学习、式教学习等技术。
随着人工智能技术研究和进步,人工智能技术在多个领域展开研究和应用,例如常见的智能家居、智能穿戴设备、虚拟助理、智能音箱、智能营销、无人驾驶、自动驾驶、无人机、机器人、智能医疗、智能客服等,相信随着技术的发展,人工智能技术将在更多的领域得到应用,并发挥越来越重要的价值。
本申请实施例提供的方案涉及人工智能的计算机视觉技术和机器学习等技术,具体通过如下实施例进行说明:
图1示出了可以应用本申请实施例的技术方案的示例性系统架构的示意图。
如图1所示,系统架构可以包括终端设备(如图1中所示智能手机101、平板电脑102和便携式计算机103中的一种或多种,当然也可以是台式计算机等等)、网络104和服务器105。网络104用以在终端设备和服务器105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线通信链路、无线通信链路等等。
应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。比如服务器105可以是多个服务器组成的服务器集群等。
用户可以使用终端设备通过网络104与服务器105交互,以接收或发送视频或者照片等数据。服务器105可以是提供各种服务的服务器。例如,在服务器105获取到一段待编码的视频之后,提取视频中的视频帧;基于注意力机制,提取视频帧之间的像素变化信息;最后对视频帧对应的像素变化信息和视频中的目标视频帧进行编码,得到视频对应的编码图像。通过这种方式将视频中的数据编码在一张图像中,既保留了视频信息的完整性,又能直观体现编码之后的视频对应的图像,提高了视频编码的可视化效果。
服务器105将编码得到的编码图像通过网络104传输至终端设备103(也可以是终端设备101或102),终端设备103获取对视频进行编码得到的编码图像,对编码图像进行解码,以得到视频中的目标视频帧、以及视频中视频帧之间的像素变化信息,之后基于像素变化信息和目标视频帧还原视频中的视频帧,以在最后根据视频帧生成编码图像对应的视频。通过上述方式既可以减少视频在传输过程中的数据量,提高视频传输的效率,又能基于编码图像中的信息完整的还原整个视频,提高了视频解码过程中信息的完整性。
需要说明的是,本申请实施例所提供的视频编码的方法一般由服务器105执行,相应地,视频编码的装置一般设置于服务器105中。但是,在本申请的其它实施例中,终端设备也可以与服务器具有相似的功能,从而执行本申请实施例所提供的视频编码的方案。同时,在本申请的其它实施例中,视频解码的装置也可以至于服务器中,从而通过服务器来处理本实施例中的视频解码的方法。
以下对本申请实施例的技术方案的实现细节进行详细阐述:
图2示出了根据本申请的一个实施例的视频解码的方法的流程图,该视频解码的方法可以由服务器来执行,该服务器可以是图1中所示的服务器。参照图2所示,该视频解码的方法至少包括步骤S210至步骤S240,详细介绍如下:
在步骤S210中,获取对视频进行编码得到的编码图像。
在本申请的一个实施例中,通过服务器等其它图像编码设备对视频进行编码得到编码图像,其中,编码图像中包括了视频中各播放时刻对应的视频帧的图像信息等。
在本申请的一个实施例中,获取编码图像的方式可以是通过网络的方式,例如从服务器获取;也可以从云端下载;或者从区块链中的其它区块节点中获取到,等等。
图3为本申请实施例提供的一种获取编码图像的示意图。
如图3所示,在服务器310中,将视频330进行编码得到编码图像340,再将编码图像340传输到终端设备320中。终端设备320通过网络获取到编码图像340,以基于该编码图像340中的信息对视频进行还原。
上述方案中,通过对视频进行编码得到编码图像,在进行传输,降低了视频数据在传输过程中的数据量,进而可以提高视频数据的传输效率。
在步骤S220中,对编码图像进行解码,得到视频中的目标视频帧、以及视频中视频帧之间的像素变化信息。
图4为本申请实施例提供的一种对编码图像进行解码的示意图。
如图4所示,在本申请的一个实施例中,编码图像410中的信息包括视频中的目标视频帧420,以及各视频帧之间的像素变化信息430。其中,目标视频帧可以为视频中的第一个视频帧,也可以为视频中的最后一个视频帧,还可以是视频帧组成的视频帧序列中位于中间位置的视频帧,由于位于中间位置的中间帧可以与其相邻的其它视频帧之间的差别较小,因此将将中间帧作为目标视频帧可以提高视频还原的准确性。
在本申请的一个实施例中,视频帧之间的像素变化信息430用于表示各个相邻视频帧之间在按照播放时间进行播放时,各个像素位置处对应的像素值的变化信息,例如可以为像素值的大小变化值、像素值的变化向量、表示像素值变化信息的矢量值等。
在步骤S230中,基于像素变化信息和目标视频帧,还原视频中的视频帧。
在本申请的一个实施例中,具体的,在对编码图像进行解码的过程,可以先基于编码图像中的像素信息,还原得到视频中的目标视频帧。示例性的,对编码图像中的像素信息进行提取,以基于这些像素信息生成该目标视频帧。
如图4所示,在得到目标视频帧420之后,基于各个视频帧之间的像素变化信息430,可以依次进行还原,得到各个视频帧中各像素位置处对应的像素值,进而基于像素值还原得到除目标视频帧之外的视频帧440。
在步骤S240中,根据视频帧生成编码图像对应的视频。
如图4所示,在本申请的一个实施例中,在得到各视频帧440之后,将各个视频帧根据播放时间进行排序,得到编码图像对应的视频450。
在本申请的一个实施例中,如图5所示,步骤S240中根据视频帧生成编码图像对应的视频的过程,包括如下步骤S510至步骤S530,详细介绍如下:
在步骤S510中,对视频帧进行排序,得到视频帧序列。
在本申请的一个实施例中,每个视频帧都有其对应的播放时间或者播放顺序,本实施例中基于各个视频帧对应的播放时间和播放顺序,对视频帧进行排序,得到视频帧序列。
在步骤S520中,根据视频帧序列中相邻帧的像素参数,生成位于相邻帧之间的插值帧。
在本申请的一个实施例中,在得到视频帧序列之后,由于视频帧序列中的视频帧的数目有限,因此,在基于视频帧序列播放视频时,播放时间较短,不会给用户带来很长的观看体验,进而影响用户的观看体验。因此,本实施例中通过在视频帧序列中插入插值帧,进而延长视频帧序列的播放时间,而给用户较好的观看体验。
在本申请的一个实施例中,步骤S520中根据视频帧序列中相邻帧的像素参数,生成位于相邻帧之间的插值帧的过程,包括如下步骤S5201~S5203:
在步骤S5201中,根据视频帧序列中相邻帧的像素参数,确定相邻帧之间像素点变化对应的光流参数。
在本申请的一个实施例中,在生成插值帧时,根据视频帧序列中的相邻帧的像素参数,确定相邻帧之间像素点变化对应的光流参数。本实施例中的光流参数用于表示相邻的视频帧在进行切换时,相同位置处的像素的变化信息,例如像素变化的大小、像素变化的速度等。
具体的,本实施例中,两个相邻的视频帧分别为I1和I2,视频帧I1切换到视频帧I2的光流参数为F1→2;视频帧I2切换到视频帧I1的光流参数为F2→1
在步骤S5202中,根据光流参数和相邻帧的时间信息,确定相邻帧对应的近似帧。
在本申请的一个实施例中,在得到光流参数之后,基于光流参数和相邻帧中对应的时间信息,可以确定相邻帧对应的近似帧。在本申请的一个实施例中,步骤S5202中根据光流参数和相邻帧的时间信息,确定相邻帧对应的近似帧的过程,包括如下步骤:根据相邻帧的时间信息,确定相邻帧之间至少两个待生成的插值帧对应的播放时刻;基于光流参数和至少两个播放时刻,确定至少两个待生成的插值帧分别对应的近似帧。
具体的,在本申请的一个实施例中,通过相邻帧对应的时间信息,确定相邻帧之间的插值帧对应的播放时刻。其中,插值帧的数量可以为一个、两个或者两个以上。具体的,本实施例中相邻帧的时间信息可以为相邻帧各自对应的播放时刻,取一对相邻帧对应的播放时刻之间的任一时刻,作为插值帧对应的播放时刻。之后,基于光流参数和至少两个播放时刻确定插值帧分别对应的近似帧。
在本申请的一个实施例中,相邻帧包括位置靠前的第一帧和位置靠后的第二帧;步骤S5202中根据光流参数和相邻帧的时间信息,确定相邻帧对应的近似帧的过程,包括如下步骤:根据相邻帧的时间信息,确定第一帧到第二帧之间的第一光流参数对应的第一权重,以及第二帧到第一帧之间的第二光流参数对应的第二权重;基于第一光流参数及其对应的第一权重,确定第一帧对应的第一近似帧;基于第二光流参数及其对应的第二权重,确定第二帧对应的第二近似帧。
具体的,对于第一帧对应的第一近似帧,第一帧到第二帧之间的第一光流参数为F1→2;根据相邻帧的时间信息,确定插值帧对应的播放时刻为t;进而得到第一光流参数F1→2对应的第一权重为-(1-t)t。视频帧I2切换到视频帧I1的光流参数为F2→1,其对应的权重为t2。基于第一光流参数及其对应的第一权重确定第一帧对应的光流参数为:
具体的,对于第二帧对应的第二近似帧,第二帧到第一帧之间的第一光流参数为F2→1,根据相邻帧的时间信息,确定插值帧对应的播放时刻为t,进而得到第二光流参数F2→1对应的第二权重为(1-t)t。视频帧I1切换到视频帧I2的光流参数为F1→2,其对应的权重为(1-t)2。基于第二光流参数及其对应的第二权重确定第二帧对应的光流参数为:
在得到第一帧对应的光流参数、第二帧对应的光流参数之后,基于第一帧及其对应的光流参数估计得到第一近似帧,同时基于第二帧及其对应的光流参数估计得到第二近似帧。
在步骤S5203中,基于近似帧以及光流参数,生成位于相邻帧之间的插值帧。
在本申请的一个实施例中,在得到各帧对应的近似帧之后,基于各帧对应的近似帧及其对应的权重,生成相邻帧之间的插值帧。其中,步骤S5203中基于近似帧以及光流参数,生成位于相邻帧之间的插值帧的过程,包括:基于光流参数对近似帧进行反向形变,得到近似帧对应的形变结果;对形变结果进行加权处理,得到插值帧。
具体的,本实施例中在得到光流参数和近似帧之后,基于光流参数对近似帧进行反向形变,得到近似帧对应的形变结果分别为:W(I1,Ft→1)和W(I2,Ft→2)。其中,W表示反向形变运算,I1和I2分别表示近似帧。对形变结果进行加权处理的过程中,各形变结果对应的权重分别通过插值帧对应的播放时间得到,例如t、1-t,得到插值帧为:
It=t⊙W(I1,Ft→1)+(1-t)⊙W(I2,Ft→2)
其中,⊙表示矩阵点乘运算,当时间t接近1时,插值帧It必然更接近第一帧I1,所以I1应该做出更大的贡献,在数学公式上以更大的权重反映,反之亦然。
图6为本申请实施例提供的一种生成插值帧的插帧网络架构图。
如图6所示,基于一组相邻帧中第一帧I1和第二帧I2(610),将息其输入光流信息生成网络620中,得到光流信息和/>(630)、近似帧/>和/>(640);将这些信息输入插值帧生成网络650中,输出至少两个插值帧O1…On+2(660),其中n>0。
在本申请的一个实施例中,在插帧网络训练过程中,通过生成损失函数来训练得到精确的插帧网络。其中,损失函数可以包括插帧重构损失函数和拉普拉斯金字塔损失函数。具体的,首先,本实施例引入Ll1范数:
其中,Iti分别对应真实帧及预测帧,N表示视频帧的数量,本实施例中通过范数来评估真实帧与网络输出插帧之间的数值差异,以通过该数值差异来调整插帧网络的参数。
本实施例通过拉普拉斯金字塔对输入数据提供从局部到全局的特征融合。其数学定义如下:
其中,i和j分别表示图像帧的标识,N表示图像帧的总数,Iti分别对应真实帧及预测帧。本实施例中通过运用一个五层的拉普拉斯金字塔。由于引入的额外空间尺度会提供更多的不同的数据,金字塔的层次越多,就能做出更大的贡献。
在步骤S530中,将插值帧插入相邻帧之间,以生成视频。
在本申请的一个实施例中,在生成插值帧之后,根据各个插值帧对应的播放时刻,将插值帧插入到相邻帧之间,得到播放时间较长的视频。本实施例中通过基于对解码得到的视频进行插帧,使得原有视频内容变得更加丰富,进而提高了用户的观看体验。
图7为本申请实施例提供的视频解码结果对比的示意图。
如图7所示,本实施例中,以原视频中的各个原视频帧710和740作为结果对比的基准,通过解码得到的解码帧分别为720和750,其中解码帧720和750中右下角的数字分别为解码的输出结果相对于原视频帧的峰值信噪比(Peak Signal to Noise Ratio,PSNR)和结构相似性(Structural Sarity Index,SSIM);通过将原视频帧710与解码帧720进行对比,即将两类图像的像素值进行相减运算,得到平均绝对误差(Mean Absolute Error,MAE),数值越小表示结果越接近真实图像帧,即生成对应的可视化对比效果图730。同理通过解码帧750及其对应的原视频帧740得到对比效果图760。
图8为本申请实施例提供的基于插值帧对相邻帧进行插帧的示意图。
如图8所示,在视频序列帧中的一对相邻帧中,在位置靠前的第一帧810与位置靠后的第二帧820之间生成了插值帧820~890,将其插入到第一帧810与第二帧820之间,得到内容丰富的视频。同理,在位置靠前的第一帧812与位置靠后的第二帧822之间生成了插值帧813~821,将其插入到第一帧812与第二帧822之间。通过上述方式,丰富了相邻视频帧之间的内容,并增长了视频的播放时间,以给用户带来较为优质的视频内容和观看体验。
图9示出了根据本申请的一个实施例的视频编码的方法的流程图,该视频编码的方法可以由服务器来执行,该服务器可以是图1中所示的服务器,也可以为终端设备。参照图9所示,该视频编码的方法至少包括步骤S910至步骤S940,详细介绍如下:
在步骤S910中,获取待编码的视频。
在本申请的一个实施例中,获取待编码的视频的方式可以是通过拍摄的方式获取到,也可以通过其它存储有视频的设备中获取,还可以通过从网络中下载的方式获取到待编码的视频。
在本申请的一个实施例中,待编码的视频具有的特征包括:播放时间较长、具有较多的视频帧、具有较高的清晰度或者数据量较大等等。本实施例中通过获取待编码的视频,以对视频进行编码压缩,得到视频对应的编码图像,达到减少视频的数据量的目的。
在步骤S920中,提取视频中的视频帧。
在本申请的一个实施例中,视频由至少两个视频帧组成。其中,每一个视频帧都是静止的图像,快速连续地显示视频帧便形成了运动的视频,因此高的帧率可以得到更流畅、更逼真的动画。
可选的,本实施例中为了更高的视频清晰度,可以基于较高的帧率从视频中提取出视频帧;除此之外,为了保证提取的数据量维持在较小的范围之内,也可以基于较小的帧率来对视频帧进行提取。
在步骤S930中,基于注意力机制,提取视频帧之间的像素变化信息。
在本申请的一个实施例中,在提取得到视频帧之后,各个相邻的视频帧在进行播放时,视频帧中相应的像素位置对应的像素值会发生变化,即像素变化信息。本实施例中基于注意力机制,提取各个视频帧之间的像素变化信息,以基于像素变化信息衡量每个视频帧的变化情况。
在本申请的一个实施例中,步骤S930中基于注意力机制,提取视频帧之间的像素变化信息的过程,包括步骤S9301~S9303,如下:
在步骤S9301中,将视频帧输入注意力机制的卷积网络中提取视频帧的像素信息。
在本申请的一个实施例中,由于视频帧中存储了较多的像素信息,而太多的像素信息将对之后的决策做出干扰。因此,本实施例中将视频帧输入注意力机制的卷积网络中,以提取视频帧的像素信息,达到精简视频帧中数据量、提高数据计算效率和计算精度的目的。
在本申请的一个实施例中,步骤S9301中将视频帧输入注意力机制的卷积网络中提取视频帧的像素信息的过程,包括步骤:将视频帧输入注意力机制的第一卷积网络中,提取出视频帧的图像特征;将图像特征输入注意力机制的第二卷积网络中,得到像素信息,其中,第二卷积网络的通道数目小于第一卷积网络的通道数目。
图10为本申请实施例提供的一种基于注意力机制的视频编码的示意图。
如图10所示,在本申请的一个实施例中,将视频帧1010输入基于注意力机制的网络中;第一卷积网络1020用于提取视频帧的空间图像特征,第二卷积网络1030用于将上游特征图的通道数目下采样到预设维度的像素信息1040。通过由两个卷积层组成的独立分支提取空间特征Si,提取的每个分支的特征图仅关注每个帧自身的空间特征。
示例性的,本实施例中的第一卷积网络1020的维度可以为m×n,其中m、n分别大于1,第二卷积网络1030的维度可以为1或者2。在本申请的一个实施例中,由于计算相邻帧之间的运动信息主要依赖于局部匹配,因此本实施例中两个卷积层在性能和计算成本之间取得了良好的平衡,即可以保证计算精度,又可以精简数据,提高计算效率。
在步骤S9302中,基于视频帧的像素信息,确定视频帧对应的权重矩阵。
在本申请的一个实施例中,由于各个视频帧对应的像素信息不同,因此,本实施例中通过根据视频帧的像素信息来确定视频帧对应的权重矩阵,以基于权重矩阵,确定各视频帧在编码图像中对应的像素比重,最后根据视频帧及其对应的权重矩阵,生成编码图像。
在本申请的一个实施例中,步骤S9302中基于视频帧的像素信息,确定视频帧对应的权重矩阵的过程,包括如下步骤:对各视频帧的像素信息进行拼接,得到拼接信息;将拼接信息输入注意力机制中的标准化指数层中进行标准化处理,得到标准化矩阵;对标准化矩阵进行拆分处理,得到视频帧对应的权重矩阵。
如图10所示,在本申请的一个实施例中,在生成权重矩阵时,对先对提取到的像素信息1040在连接层1050中进行拼接,得到拼接信息。通过建立所有帧之间的连接,本实施例让网络进一步关注到沿时域的运动,即像素变化信息。之后,将拼接信息输入注意力机制中的标准化指数层1060中进行标准化处理,得到标准化矩阵。
具体的,本实施例中对拼接信息进行标准化处理的方式可以是,对时间轴上相同坐标处的特征值集合进行标准化映射的方式。本实施例中可以通过如下公式进行标准化处理,得到标准化矩阵:
其中,Si,j表示拼接信息中位置(i,j)对应的特征值,Ti,j表示位置(i,j)对应的标准化之后的特征值。
如图10所示,在得到标准化矩阵之后,将标准化矩阵输入切片层1070中,通过切片操作将标准化矩阵对应的特征图切割为k个单通道的运动注意力特征图,即视频帧对应的权重矩阵1080,即T={Ti|i=0,1…,k},其中,k表示通道的数量,即视频帧的数量;i表示通道标识或视频帧的标识。
在步骤S9303中,基于视频帧的像素信息及权重矩阵之间的乘积,确定视频帧之间的像素变化信息。
在本申请的一个实施例中,在得到视频帧的像素信息和权重矩阵之后,根据像素信息和权重矩阵之间的乘积,可以是矩阵点乘的方式,以得到视频帧之间的像素变化信息。
在本申请的一个实施例中,本实施例中视频编码的方法还包括步骤:基于视频样本及其对应的编码图像,生成用于感知视频中序列帧的感知损失函数、用于确定视频的中心图像的单峰损失函数、用于生成编码图像的嵌入损失函数;基于感知损失函数、单峰损失函数以及嵌入损失函数之间的线性组合,生成采用注意力机制的机器学习模型的目标损失函数,以基于目标损失函数对机器学习模型进行训练,并基于训练后的机器学习模型提取像素变化信息。
具体的,本实施例中在训练基于注意力机制的视频编码网络时,通过设计损失函数的方式,实现机器学习模型的训练。具体的,本实施例中的损失函数由多个损失函数集合得到。其中可以包括用于感知视频中序列帧的感知损失函数、用于确定视频的中心图像的单峰损失函数、用于生成编码图像的嵌入损失函数,具体说明如下:
在本申请的一个实施例中,通过重构损失函数来优化网络从编码图像恢复输入帧序列的效果。本实施例中设定重构损失函数为:
其中,N表示视频的总数目;k表示每段视频中的视频帧的数目;x′ij、xij分别表示第j个视频的帧序列中的第i帧对应的计算特征值和样本特征值。
在本申请的一个实施例中,由于本实施例希望编码图像可以作为整段视频的代表性图像。同时本实施例按照经验选择中间帧作为编码图像的参考图像。大规模视频数据中的视频中间帧与对应视频序列的运动差异整体上服从正态分布,同时本实施例也希望平衡参考图像与第一帧/最后一帧的运动差异,因而选择视频序列的中间帧作为参考图像。本实施例当然不希望参考图像与任何其他帧之间的差异太大或太小。因此,本实施例中引入嵌入损失函数为:
其中,Mθ表示是阈值矩阵,它的维度与输入图像分辨率大小保持一致并以恒定阈值θ填充。x′j表示提供监督信号的视频序列的中间帧。本实施例在一定程度上放松了色差以获得更大编码空间用来嵌入视频序列的时空信息。在具体实验中,本实施例根据经验将θ设置为90。本实施例中通过嵌入函数来保证编码图像和参考图像之间的颜色一致性。
为了保证编码图像的清晰度和锐度,本实施例引入感知损失函数来增强感知相似性,例如清晰度,整体对比度等。本实施例中感知损失函数为:
其中,φ表示基于图像网络数据集预训练的模型的卷积层的输出特征图,表示输入特征,Ej表示输入特征的均值。
如果不加管控放任自流的从视频中选取视频帧的话,运动注意力特征图可能会误入歧途。此外,在没有单峰函数约束的情况下,时间时域注意力特征图Ti的特征值接近是1,而除Ti之外的注意力特征图的特征值几乎为0。本实施例因此可以推导出,除中间帧外,其他帧对于运动嵌入网络生成编码图像几乎没有贡献。因此,本实施例定义单峰损失函数来避免这种不平衡问题,如下所示:
其中,T表示注意力特征图;k设为奇数,以便可以从一个视频中准确获取一个中间帧,避免对中间两个邻帧进行求均值。
最后,本实施例对所有约束函数进行一个线性组合,故得出最终目标函数如下:
L=αrLreLepLpuLu
在本申请的一个实施例中,对于视频中的一系列连续帧I={Ii|i=0,1…,k}沿时域的颜色变化和运动编码为编码图像。复杂的颜色和运动变化使得仅靠简单的编码器很难实现这一目标。因此,本实施例同时提出了运动注意力模块重点学习视频中的动态信息,即像素变化信息对应的时空信息。然后,将运动注意力机制模块与朴素编码器级联起来,实现将时空信息高质量地嵌入到编码图像中。
在步骤S940中,对视频帧对应的像素变化信息和视频中的目标视频帧进行编码,得到视频对应的编码图像。
在本申请的一个实施例中,在得到视频帧对应的像素变化信息之后,对像素变化信息和目标视频帧进行合成编码,得到视频对应的编码图像。其中,目标视频帧可以为视频中的第一个视频帧,也可以为视频中的最后一个视频帧,还可以是视频帧组成的视频帧序列中位于中间位置的视频帧,由于位于中间位置的中间帧可以与其相邻的其它视频帧之间的差别较小,因此将将中间帧作为目标视频帧可以提高视频还原的准确性。
具体的,本实施例中在注意力机制之后,级联引入了一个编码器,用于将像素变化信息对应的时空信息嵌入编码图像中。编码器包括至少两个卷积块、四个残差块和两个反卷积块。此外,长跨度的跳跃连接进一步保留了更多的低级特征并降低了出现模糊伪像的结果。输出的嵌入图像不仅承载了空间信息,还携带了时域信息,即像素变化信息。
在本申请的一个实施例中,生成的编码图像可以为灰度图像、红外图像等,其对应的编码方式和解码方式与上述方法相同,此处不做赘述。
在本申请的一个实施例中,在目标图像中嵌入像素变化信息时,可以是多重嵌套的方法,即针对编码后得到的编码图像集合再次进行二次乃至多次的像素编码信息的嵌入,以使得编码图像中包含更多的像素编码信息,进而解码还原到内容更加充实的视频。
图11为本申请实施例提供的编码图像的示意图。
如图11所示,右上角的图展示了编码图像及其特写区域,与左上角中的真实图像相比,它们在视觉上几乎难以分辨,当然它实际上因为嵌入了大量的时空信息而产生了一些几乎看不见的图案。当放大框里的内容时,如右下图所示,可以看到一些有特定规律的图案模式出现,运动纹理对应的像素变化信息,其中隐藏了原始视频中的时空信息。它揭示了本申请实施例中的运动嵌入网络可以识别运动信息,并将其成功编码到编码图像中。
在本申请的一个实施例中,本实施例中视频编码的方法还包括步骤:从视频中提取出音频信息;对音频信息进行编码,得到音频编码数据;将音频编码数据融合进编码图像中。
在本申请的一个实施例中,由于很多情况下视频帧中的编码与音频为独立进行的,因此在对视频帧的图像进行编码时,可以对音频进行编码,以使得音频信息可以与视频信息同步对应起来,最后将音频编码数据融合进编码图像中,以得到完整的视频压缩数据。
以下介绍本申请的装置实施例,可以用于执行本申请上述实施例中的视频解码的方法。可以理解的是,装置可以是运行于计算机设备中的一个计算机程序(包括程序代码),例如该装置为一个应用软件;该装置可以用于执行本申请实施例提供的方法中的相应步骤。对于本申请装置实施例中未披露的细节,请参照本申请上述的视频解码的方法的实施例。
图12示出了根据本申请的一个实施例的视频解码的装置的框图。
参照图12所示,根据本申请的一个实施例的视频解码的装置1200,包括:第一获取单元1210,用于获取对视频进行编码得到的编码图像;解码单元1220,用于对编码图像进行解码,得到视频中的目标视频帧、以及视频中视频帧之间的像素变化信息;还原单元1230,用于基于像素变化信息和目标视频帧,还原视频中的视频帧;视频单元1240,用于根据视频帧生成编码图像对应的视频。
在本申请的一些实施例中,基于前述方案,视频单元1240包括:排序单元,用于对视频帧进行排序,得到视频帧序列;第一生成单元,用于根据视频帧序列中相邻帧的像素参数,生成位于相邻帧之间的插值帧;第二生成单元,用于将插值帧插入相邻帧之间,以生成视频。
在本申请的一些实施例中,基于前述方案,第一生成单元1210包括:光流单元,用于根据视频帧序列中相邻帧的像素参数,确定相邻帧之间像素点变化对应的光流参数;第一确定单元,用于根据光流参数和相邻帧的时间信息,确定相邻帧对应的近似帧;第三生成单元,用于基于近似帧以及光流参数,生成位于相邻帧之间的插值帧。
在本申请的一些实施例中,基于前述方案,第一确定单元包括:时刻确定单元,用于根据相邻帧的时间信息,确定相邻帧之间至少两个待生成的插值帧对应的播放时刻;近似帧确定单元,用于基于光流参数和至少两个播放时刻,确定至少两个待生成的插值帧分别对应的近似帧。
在本申请的一些实施例中,基于前述方案,相邻帧包括位置靠前的第一帧和位置靠后的第二帧;第一确定单元包括:第二确定单元,用于根据相邻帧的时间信息,确定第一帧到第二帧之间的第一光流参数对应的第一权重,以及第二帧到第一帧之间的第二光流参数对应的第二权重;第三确定单元,用于基于第一光流参数及其对应的第一权重,确定第一帧对应的第一近似帧;第四确定单元,用于基于第二光流参数及其对应的第二权重,确定第二帧对应的第二近似帧。
在本申请的一些实施例中,基于前述方案,第三生成单元包括:形变单元,用于基于光流参数对近似帧进行反向形变,得到近似帧对应的形变结果;加权单元,用于对形变结果进行加权处理,得到插值帧。
图13示出了根据本申请的一个实施例的视频编码的装置的框图。
参照图13所示,根据本申请的一个实施例的视频编码的装置1300,包括:第二获取单元1310,用于获取待编码的视频;第一提取单元1320,用于提取视频中的视频帧;第二提取单元1330,用于基于注意力机制,提取视频帧之间的像素变化信息;编码单元1340,用于对视频帧对应的像素变化信息和视频中的目标视频帧进行编码,得到视频对应的编码图像。
在本申请的一些实施例中,基于前述方案,第二提取单元1330包括:第三提取单元,用于将视频帧输入注意力机制的卷积网络中提取视频帧的像素信息;第五确定单元,用于基于视频帧的像素信息,确定视频帧对应的权重矩阵;第六确定单元,用于基于视频帧的像素信息及权重矩阵之间的乘积,确定视频帧之间的像素变化信息。
在本申请的一些实施例中,基于前述方案,第三提取单元包括:特征提取单元,用于将视频帧输入注意力机制的第一卷积网络中,提取出视频帧的图像特征;像素提取单元,用于将图像特征输入注意力机制的第二卷积网络中,得到像素信息,其中,第二卷积网络的通道数目小于第一卷积网络的通道数目。
在本申请的一些实施例中,基于前述方案,第五确定单元包括:拼接单元,用于对各视频帧的像素信息进行拼接,得到拼接信息;标准化单元,用于将拼接信息输入注意力机制中的标准化指数层中进行标准化处理,得到标准化矩阵;拆分单元,用于对标准化矩阵进行拆分处理,得到视频帧对应的权重矩阵。
在本申请的一些实施例中,基于前述方案,视频解码的装置1300还包括:损失函数单元,用于基于视频样本及其对应的编码图像,生成用于感知视频中序列帧的感知损失函数、用于确定视频的中心图像的单峰损失函数、用于生成编码图像的嵌入损失函数;训练单元,用于基于感知损失函数、单峰损失函数以及嵌入损失函数之间的线性组合,生成采用注意力机制的机器学习模型的目标损失函数,以基于目标损失函数对机器学习模型进行训练,并基于训练后的机器学习模型提取像素变化信息。
在本申请的一些实施例中,基于前述方案,视频解码的装置1300还包括:音频提取单元,用于从视频中提取出音频信息;音频编码单元,用于对音频信息进行编码,得到音频编码数据;音频融合单元,用于将音频编码数据融合进编码图像中。
图14示出了适于用来实现本申请实施例的电子设备的计算机系统的结构示意图。
需要说明的是,图14示出的电子设备的计算机系统1400仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。
如图14所示,计算机系统1400包括中央处理单元(Central Processing Unit,CPU)1401,其可以根据存储在只读存储器(Read-Only Memory,ROM)1402中的程序或者从储存部分1408加载到随机访问存储器(Random Access Memory,RAM)1403中的程序而执行各种适当的动作和处理,例如执行上述实施例中的方法。在RAM 1403中,还存储有系统操作所需的各种程序和数据。CPU 1401、ROM 1402以及RAM 1403通过总线1404彼此相连。输入/输出(Input/Output,I/O)接口1405也连接至总线1404。
以下部件连接至I/O接口1405:包括键盘、鼠标等的输入部分1406;包括诸如阴极射线管(Cathode Ray Tube,CRT)、液晶显示器(Liquid Crystal Display,LCD)等以及扬声器等的输出部分1407;包括硬盘等的储存部分1408;以及包括诸如LAN(Local AreaNetwork,局域网)卡、调制解调器等的网络接口卡的通信部分1409。通信部分1409经由诸如因特网的网络执行通信处理。驱动器1410也根据需要连接至I/O接口1405。可拆卸介质1411,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器1410上,以便于从其上读出的计算机程序根据需要被安装入储存部分1408。
特别地,根据本申请的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本申请的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的计算机程序。在这样的实施例中,该计算机程序可以通过通信部分1409从网络上被下载和安装,和/或从可拆卸介质1411被安装。在该计算机程序被中央处理单元(CPU)1401执行时,执行本申请的系统中限定的各种功能。
需要说明的是,本申请实施例所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(Erasable Programmable Read Only Memory,EPROM)、闪存、光纤、便携式紧凑磁盘只读存储器(Compact Disc Read-Only Memory,CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本申请中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本申请中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的计算机程序。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的计算机程序可以用任何适当的介质传输,包括但不限于:无线、有线等等,或者上述的任意合适的组合。
附图中的流程图和框图,图示了按照本申请各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。其中,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本申请实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现,所描述的单元也可以设置在处理器中。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定。
作为另一方面,本申请还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被一个该电子设备执行时,使得该电子设备实现上述实施例中所述的方法。
应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本申请的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本申请实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、触控终端、或者网络设备等)执行根据本申请实施方式的方法。
本领域技术人员在考虑说明书及实践这里公开的实施方式后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本申请未公开的本技术领域中的公知常识或惯用技术手段。
应当理解的是,本申请并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本申请的范围仅由所附的权利要求来限制。

Claims (14)

1.一种视频解码的方法,其特征在于,包括:
获取对视频进行编码得到的编码图像;
对所述编码图像进行解码,得到所述视频中的目标视频帧、以及所述视频中视频帧之间的像素变化信息;
基于所述像素变化信息和所述目标视频帧,还原所述视频中的视频帧;
根据所述视频帧生成所述编码图像对应的视频;
其中,所述像素变化信息在视频编码的过程中通过如下步骤获得:
将所述视频中的视频帧输入注意力机制的卷积网络中提取所述视频帧的像素信息;
对各所述视频帧的像素信息进行拼接,得到拼接信息,并将所述拼接信息输入所述注意力机制中的标准化指数层中进行标准化处理,得到标准化矩阵,将所述标准化矩阵输入所述注意力机制的切片层,通过切片操作将所述标准化矩阵对应的特征图切割为多个单通道的运动注意力特征图,以得到所述视频帧对应的权重矩阵;
基于所述视频帧的像素信息及权重矩阵之间的乘积,确定所述视频帧之间的像素变化信息。
2.根据权利要求1所述的方法,其特征在于,根据所述视频帧生成所述编码图像对应的视频,包括:
对所述视频帧进行排序,得到视频帧序列;
根据所述视频帧序列中相邻帧的像素参数,生成位于所述相邻帧之间的插值帧;
将所述插值帧插入所述相邻帧之间,以生成所述视频。
3.根据权利要求2所述的方法,其特征在于,根据所述视频帧序列中相邻帧的像素参数,生成位于所述相邻帧之间的插值帧,包括:
根据所述视频帧序列中相邻帧的像素参数,确定所述相邻帧之间像素点变化对应的光流参数;
根据所述光流参数和所述相邻帧的时间信息,确定所述相邻帧对应的近似帧;
基于所述近似帧以及所述光流参数,生成位于所述相邻帧之间的插值帧。
4.根据权利要求3所述的方法,其特征在于,根据所述光流参数和所述相邻帧的时间信息,确定所述相邻帧对应的近似帧,包括:
根据所述相邻帧的时间信息,确定所述相邻帧之间至少两个待生成的插值帧对应的播放时刻;
基于所述光流参数和至少两个所述播放时刻,确定所述至少两个待生成的插值帧分别对应的近似帧。
5.根据权利要求3所述的方法,其特征在于,所述相邻帧包括位置靠前的第一帧和位置靠后的第二帧;
根据所述光流参数和所述相邻帧的时间信息,确定所述相邻帧对应的近似帧,包括:
根据所述相邻帧的时间信息,确定所述第一帧到所述第二帧之间的第一光流参数对应的第一权重,以及所述第二帧到所述第一帧之间的第二光流参数对应的第二权重;
基于所述第一光流参数及其对应的第一权重,确定所述第一帧对应的第一近似帧;
基于所述第二光流参数及其对应的第二权重,确定所述第二帧对应的第二近似帧。
6.根据权利要求3所述的方法,其特征在于,基于所述近似帧以及所述光流参数,生成位于所述相邻帧之间的插值帧,包括:
基于所述光流参数对所述近似帧进行反向形变,得到所述近似帧对应的形变结果;
对所述形变结果进行加权处理,得到所述插值帧。
7.一种视频编码的方法,其特征在于,包括:
获取待编码的视频;
提取所述视频中的视频帧;
基于注意力机制,提取所述视频帧之间的像素变化信息;
对所述视频帧对应的像素变化信息和所述视频中的目标视频帧进行编码,得到所述视频对应的编码图像;
其中,所述基于注意力机制,提取所述视频帧之间的像素变化信息,包括:
将所述视频帧输入所述注意力机制的卷积网络中提取所述视频帧的像素信息;
对各所述视频帧的像素信息进行拼接,得到拼接信息,并将所述拼接信息输入所述注意力机制中的标准化指数层中进行标准化处理,得到标准化矩阵,将所述标准化矩阵输入所述注意力机制的切片层,通过切片操作将所述标准化矩阵对应的特征图切割为多个单通道的运动注意力特征图,以得到所述视频帧对应的权重矩阵;
基于所述视频帧的像素信息及权重矩阵之间的乘积,确定所述视频帧之间的像素变化信息。
8.根据权利要求7所述的方法,其特征在于,将所述视频帧输入所述注意力机制的卷积网络中提取所述视频帧的像素信息,包括:
将所述视频帧输入所述注意力机制的第一卷积网络中,提取出所述视频帧的图像特征;
将所述图像特征输入所述注意力机制的第二卷积网络中,得到所述像素信息,其中,所述第二卷积网络的通道数目小于所述第一卷积网络的通道数目。
9.根据权利要求7所述的方法,其特征在于,所述方法还包括:
基于视频样本及其对应的编码图像,生成用于感知视频中序列帧的感知损失函数、用于确定视频的中心图像的单峰损失函数、用于生成编码图像的嵌入损失函数;
基于所述感知损失函数、所述单峰损失函数以及所述嵌入损失函数之间的线性组合,生成采用注意力机制的机器学习模型的目标损失函数,以基于所述目标损失函数对所述机器学习模型进行训练,并基于训练后的机器学习模型提取所述像素变化信息。
10.根据权利要求7所述的方法,其特征在于,所述方法还包括:
从所述视频中提取出音频信息;
对所述音频信息进行编码,得到音频编码数据;
将所述音频编码数据融合进所述编码图像中。
11.一种视频解码的装置,其特征在于,包括:
第一获取单元,用于获取对视频进行编码得到的编码图像;
解码单元,用于对所述编码图像进行解码,得到所述视频中的目标视频帧、以及所述视频中视频帧之间的像素变化信息;
还原单元,用于基于所述像素变化信息和所述目标视频帧,还原所述视频中的视频帧;
视频单元,用于根据所述视频帧生成所述编码图像对应的视频;
其中,所述像素变化信息在视频编码的过程中通过如下步骤获得:
将所述视频中的视频帧输入注意力机制的卷积网络中提取所述视频帧的像素信息;
对各所述视频帧的像素信息进行拼接,得到拼接信息,并将所述拼接信息输入注意力机制中的标准化指数层中进行标准化处理,得到标准化矩阵,将所述标准化矩阵输入所述注意力机制的切片层,通过切片操作将所述标准化矩阵对应的特征图切割为多个单通道的运动注意力特征图,以得到所述视频帧对应的权重矩阵;
基于所述视频帧的像素信息及权重矩阵之间的乘积,确定所述视频帧之间的像素变化信息。
12.一种视频编码的装置,其特征在于,包括:
第二获取单元,用于获取待编码的视频;
第一提取单元,用于提取所述视频中的视频帧;
第二提取单元,用于基于注意力机制,提取所述视频帧之间的像素变化信息;
编码单元,用于对所述视频帧对应的像素变化信息和所述视频中的目标视频帧进行编码,得到所述视频对应的编码图像;
其中,所述第二提取单元用于具体执行如下步骤:
将所述视频帧输入所述注意力机制的卷积网络中提取所述视频帧的像素信息;
对各所述视频帧的像素信息进行拼接,得到拼接信息,并将所述拼接信息输入所述注意力机制中的标准化指数层中进行标准化处理,得到标准化矩阵,将所述标准化矩阵输入所述注意力机制的切片层,通过切片操作将所述标准化矩阵对应的特征图切割为多个单通道的运动注意力特征图,以得到所述视频帧对应的权重矩阵;
基于所述视频帧的像素信息及权重矩阵之间的乘积,确定所述视频帧之间的像素变化信息。
13.一种计算机可读介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至6中任一项所述的视频解码的方法、或权利要求7至10中任一项所述的视频编码的方法。
14.一种电子设备,其特征在于,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如权利要求1至6中任一项所述的视频解码的方法、或权利要求7至10中任一项所述的视频编码的方法。
CN202010601628.2A 2020-06-28 2020-06-28 视频解码与编码的方法、装置、介质及电子设备 Active CN111901598B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010601628.2A CN111901598B (zh) 2020-06-28 2020-06-28 视频解码与编码的方法、装置、介质及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010601628.2A CN111901598B (zh) 2020-06-28 2020-06-28 视频解码与编码的方法、装置、介质及电子设备

Publications (2)

Publication Number Publication Date
CN111901598A CN111901598A (zh) 2020-11-06
CN111901598B true CN111901598B (zh) 2023-10-13

Family

ID=73206481

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010601628.2A Active CN111901598B (zh) 2020-06-28 2020-06-28 视频解码与编码的方法、装置、介质及电子设备

Country Status (1)

Country Link
CN (1) CN111901598B (zh)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113822117B (zh) * 2021-06-04 2024-05-14 华南理工大学 一种数据处理方法、设备以及计算机可读存储介质
CN115580737A (zh) * 2021-06-21 2023-01-06 华为技术有限公司 用于视频插帧的方法、装置及设备
CN113556582A (zh) * 2021-07-30 2021-10-26 海宁奕斯伟集成电路设计有限公司 视频数据处理方法、装置、设备以及存储介质
CN116193128A (zh) * 2021-11-15 2023-05-30 深圳市中兴微电子技术有限公司 图像处理方法及装置、存储介质及电子装置
CN114430488A (zh) * 2022-04-01 2022-05-03 深圳市华曦达科技股份有限公司 一种视频编码和视频解码的方法及装置
CN114897189A (zh) * 2022-06-23 2022-08-12 阿里巴巴(中国)有限公司 模型训练方法、视频编码方法及解码方法
CN116320536B (zh) * 2023-05-16 2023-08-18 瀚博半导体(上海)有限公司 视频处理方法、装置、计算机设备及计算机可读存储介质
CN116828211B (zh) * 2023-08-30 2023-11-14 华洋通信科技股份有限公司 一种矿下视频无线传输自适应编码方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108040217A (zh) * 2017-12-20 2018-05-15 深圳岚锋创视网络科技有限公司 一种视频解码的方法、装置及相机
CN108388900A (zh) * 2018-02-05 2018-08-10 华南理工大学 基于多特征融合和时空注意力机制相结合的视频描述方法
CN108881952A (zh) * 2018-07-02 2018-11-23 上海商汤智能科技有限公司 视频生成方法及装置、电子设备和存储介质
CN109101896A (zh) * 2018-07-19 2018-12-28 电子科技大学 一种基于时空融合特征和注意力机制的视频行为识别方法
CN111083469A (zh) * 2019-12-24 2020-04-28 北京奇艺世纪科技有限公司 一种视频质量确定方法、装置、电子设备及可读存储介质

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108040217A (zh) * 2017-12-20 2018-05-15 深圳岚锋创视网络科技有限公司 一种视频解码的方法、装置及相机
CN108388900A (zh) * 2018-02-05 2018-08-10 华南理工大学 基于多特征融合和时空注意力机制相结合的视频描述方法
CN108881952A (zh) * 2018-07-02 2018-11-23 上海商汤智能科技有限公司 视频生成方法及装置、电子设备和存储介质
CN109101896A (zh) * 2018-07-19 2018-12-28 电子科技大学 一种基于时空融合特征和注意力机制的视频行为识别方法
CN111083469A (zh) * 2019-12-24 2020-04-28 北京奇艺世纪科技有限公司 一种视频质量确定方法、装置、电子设备及可读存储介质

Also Published As

Publication number Publication date
CN111901598A (zh) 2020-11-06

Similar Documents

Publication Publication Date Title
CN111901598B (zh) 视频解码与编码的方法、装置、介质及电子设备
Moorthy et al. Visual quality assessment algorithms: what does the future hold?
CN110751649B (zh) 视频质量评估方法、装置、电子设备及存储介质
CN114339409B (zh) 视频处理方法、装置、计算机设备及存储介质
CN112995652B (zh) 视频质量评估方法及装置
CN112040222A (zh) 一种视觉显著性预测方法及设备
CN112990078A (zh) 一种基于生成式对抗网络的人脸表情生成方法
CN114245215A (zh) 说话视频的生成方法、装置、电子设备、介质及产品
CN112734910A (zh) 基于rgb单图实时人脸三维图像重建方法、装置及电子设备
CN113658122A (zh) 图像质量评价方法、装置、存储介质与电子设备
CN117252984A (zh) 三维模型生成方法、装置、设备、存储介质及程序产品
CN116630514A (zh) 图像处理方法、装置、计算机可读存储介质及电子设备
CN111754622A (zh) 脸部三维图像生成方法及相关设备
CN115170388A (zh) 人物线稿生成方法、装置、设备及介质
Jin et al. From capture to display: A survey on volumetric video
CN113538254A (zh) 图像恢复方法、装置、电子设备及计算机可读存储介质
CN111754561A (zh) 基于自监督深度学习的光场图像深度恢复方法及系统
Wang et al. DFC-dehaze: an improved cycle-consistent generative adversarial network for unpaired image dehazing
CN116630485A (zh) 虚拟形象的驱动方法、虚拟形象的渲染方法以及电子设备
CN116156218A (zh) 视频插帧模型的确定方法及装置、视频插帧方法及装置
CN115311152A (zh) 图像处理方法、装置、电子设备以及存储介质
CN115082636A (zh) 基于混合高斯网络的单图像三维重建方法及设备
CN107770511A (zh) 一种多视点视频的编解码方法、装置和相关设备
CN107659805B (zh) 一种视频转换方法和装置
CN115439388B (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