CN110557634A - 动态参考图像重建 - Google Patents

动态参考图像重建 Download PDF

Info

Publication number
CN110557634A
CN110557634A CN201811618709.2A CN201811618709A CN110557634A CN 110557634 A CN110557634 A CN 110557634A CN 201811618709 A CN201811618709 A CN 201811618709A CN 110557634 A CN110557634 A CN 110557634A
Authority
CN
China
Prior art keywords
slice
picture
image
drr
updated
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.)
Granted
Application number
CN201811618709.2A
Other languages
English (en)
Other versions
CN110557634B (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.)
Dayin Network Technology (shanghai) Co Ltd
Original Assignee
Dayin Network Technology (shanghai) 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 Dayin Network Technology (shanghai) Co Ltd filed Critical Dayin Network Technology (shanghai) Co Ltd
Publication of CN110557634A publication Critical patent/CN110557634A/zh
Application granted granted Critical
Publication of CN110557634B publication Critical patent/CN110557634B/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/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • H04N19/159Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
    • 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/164Feedback from the receiver or from the transmission channel
    • 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/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/174Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a slice, e.g. a line of blocks or a group of blocks
    • 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/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • 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/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/58Motion compensation with long-term prediction, i.e. the reference frame for a current frame not being the temporally closest one
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/65Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using error resilience
    • H04N19/68Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using error resilience involving the insertion of resynchronisation markers into the bitstream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/91Entropy coding, e.g. variable length coding [VLC] or arithmetic coding
    • 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/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/65Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using error resilience
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

本发明提出了一种用于编码视频流的方法,包括由处理器对视频流的第一幅图像的第一个切片进行编码;从解码器处接收表明第一幅图像的第一个切片已被接收的反馈消息;并且在已接收到表明第一幅图像的第一个切片已被接收的反馈消息后,随即使用第一幅图像的第一个切片来更新动态参考图像(DRR),其中在动态参考图像中使用第一幅图像的第一个切片来替换的第二幅图像的第一个切片,并且第一幅图像的第一个切片和第二幅图像的第一个切片具有相同定位。

Description

动态参考图像重建
技术领域
本发明涉及视频编码技术,具体领域为使用动态参考图像重建方法实现抗丢包性能良好的视频编码。
背景技术
在过去的几十年中,数据压缩技术的发展降低了媒体(音频、视频或多媒体) 数据传输所需的巨大带宽。例如,现代视频编码标准中采用参考图像进行运动估计(ME) 和运动补偿(MC)以减少帧间冗余。但数据压缩带来的一个弊端是压缩的媒体数据对数据丢失或噪声很敏感,而数据丢失或噪声在尽力型(best-effort)网络中时有发生。例如,在某些情况下,网络抖动会导致数据包丢失或迟迟无法送达解码器,因而导致解码器端图像或部分图像缺失。此外,丢失的数据包可能包含用于解码其他图像所需的信息(例如:参考图像的部分信息),从而更加影响解码过程。随着终端用户设备和网络环境越来越多样化,在噪声网络上进行可靠的媒体数据传输也变得更具挑战性。
发明内容
下文将阐述采用动态参考图像重建方法以实现抗丢包性能良好的视频编码的方法、设备和系统。
一个方面,本文公开了一种用于编码视频流的方法。该方法包括由处理器对视频流的第一幅图像的第一个切片进行编码;从解码器处接收反馈消息,该消息表明已接收到第一幅图像的第一个切片;并且在接收到反馈消息表明第一幅图像的第一个切片的已被接收后,随即用第一幅图像的第一个切片来更新动态参考图像(DRR),其中在DRR中使用第一幅图像的第一个切片来替换的第二幅图像的第一个切片,并且第一幅图像的第一个切片和第二幅图像的第一个切片具有相同定位。
另一方面,本文也公开了一种用于对编码视频流进行解码的方法。该方法包括从编码器接收与编码视频流的第一幅图像的第一个切片相关联的数据;在确定已经接收到解码第一幅图像的第一个切片所需的所有数据的情况下,向编码器发送反馈消息表明已接收到第一幅图像的第一个切片,并且由处理器对第一幅图像的第一个切片进行解码;用第一幅图像的第一个切片来更新动态参考图像(DRR),其中在DRR中使用第一幅图像的第一个切片来替换的第二幅图像的第一个切片,并且第一幅图像的第一个切片和第二幅图像的第一个切片具有相同定位。
再一方面,本文还公开了一种用于对编码视频流进行解码的设备装置。该设备包括非暂时性存储器和处理器,其中非暂时性存储器包括可由处理器执行的指令,用以从编码器处接收与编码视频流的第一幅图像的第一个切片相关联的数据;如确定已经接收到解码第一幅图像的第一个切片所需的所有数据,则向编码器发送反馈消息,该反馈消息表明第一幅图像的第一个切片已被接收,并且对编码视频流中的第一幅图像的第一个切片进行解码;使用第一幅图像的第一个切片来更新动态参考图像(DRR),其中在DRR中使用第一幅图像的第一个切片来替换的第二幅图像的第一个切片,并且第一幅图像的第一个切片和第二幅图像的第一个切片具有相同定位。
附图说明
在阅读以下详细描述时参考附图将有助于更好地理解本发明的内容。需要强调的是,根据惯例,图示中各个部分并不是按比例绘制的。相反,为表述清楚起见,已对各个不同部分的尺寸进行任意扩大或缩小。
图1是根据本发明实施例所绘制的一个用于媒体数据传输的系统示例图。
图2是一个视频流的结构示意图。
图3是根据本发明实施例所绘制的一个编码流程示例图。
图4是根据本发明实施例所绘制的一个解码流程示例图。
图5是根据本发明实施例所绘制的采用动态参考图像重建方法对编码视频流进行解码的示例流程图。
图6是根据本发明实施例所绘制的采用动态参考图像重建方法对视频流进行编码的示例流程图。
图7是根据本发明实施例所绘制的动态参考图像重建方法的示例图。
具体实施方式
网上多媒体数据共享,诸如视频会议、实时视频广播或互联网电话服务等,都需要高效率且高保真的媒体数据传输。媒体数据可包括音频数据、视频数据或包含音频序列或视频序列的任何多媒体数据。通常媒体数据可以以其原始形式存储或者转换成媒体流。视频流可以被编码(或“压缩”)成压缩视频流(如视频比特流)在网络上传输。压缩视频流可以在网络(如互联网)上以数据包的形式(或简称为“包”)进行传输。
在对视频流(也称为“视频序列”)进行编码时,可以使用运动估计(ME)和运动补偿(MC)对视频流的一幅图像进行编码。例如,在解码一幅图像时可以使用另一幅图像作为参考(称为“参考图像”)。参考图像可以是I图像(编码时未参考其他图像的图像),也可以是P图像(编码时使用另一图像作为参考的图像)。在编码和解码时,可以将图像划分或分割成一个或多个切片。一个切片可包含一个或多个块。在一些情况下,可以在每个切片内执行运动估计和运动补偿,而无需依赖同一图像中的其他切片。因此,即使丢失了一个切片,同一图像中的其他切片也不会受到影响。
根据本发明的实施例,解码器接收到图像的一个新的切片,并将反馈消息发送到编码器表明已接收到该新切片。当反馈消息到达编码器时,编码器用新切片(如基于新切片进行重构的切片)替换动态参考图像(DRR)中的旧切片,以便使用更新的DRR作为编码后续图像的参考图像。新切片和旧切片可以是具有相同定位的切片。反馈消息送达需要一些时间,尤其是当网络状况不稳定时。在接收反馈消息之前,即不知道切片是否已安全到达解码器的情况下,编码器不会将其用作参考。在接收到反馈消息之后,编码器可以更新DRR,将其用作编码新图像的参考。
类似地,在解码新切片之后,解码器可以在发送反馈消息之后使用新解码的切片更新DRR,但是必须等到编码器接收到反馈消息,这个过程可能需要一些时间。在使用更新的DRR作为编码新图像的参考时,该参考信息可以由编码器在新图像的切片报头或补充增强信息(SEI)等处标明。在接收到该新图像时,解码器可以根据切片报头或 SEI得知需要更新DRR,于是将使用先前解码的新切片来更新DRR并由解码器在反馈消息中确认。更新的DRR将用于解码该新图像。
一个切片可以包含在一个数据包中,也可以分成多个数据包。动态参考图像重建方法通过使用切片级反馈消息来更新后续图像的DRR,而无需等到整幅图像被接收,这样可以在不稳定的网络条件下增强抗丢包能力。本公开中描述的动态参考图像重建技术可以在提高性能、节省比特和减轻丢包影响等方面实现显著改善。例如,即使只接收到某幅图像中的一个切片,该切片仍可用于更新DRR。
应注意的是,本发明的应用和实施方案并不仅限于所述实例,且可针对任何计算环境实现本发明所述实施方案的替换方案、变体或修改形式。下文将首先概述系统和编码结构,然后将具体阐述本发明的方法、设备和系统。
图1是根据本发明实施例所绘制的用于媒体数据传输的系统100的示例图。如上所述,媒体数据可包括音频数据、视频数据或包含音频序列或视频序列的任何多媒体数据。如图1所示,系统100可包含多个设备和网络,诸如设备102、设备104和网络106。该设备可以是微型计算机、大型计算机、超级计算机、通用计算机、特殊用途或专用计算机、集成计算机、数据库计算机、远程服务器计算机、个人计算机、笔记本电脑、平板电脑、手机、个人数据助理(PDA)、可穿戴计算设备等一台或多台计算机的任何配置,或由计算服务提供商提供的计算服务(例如web主机或云服务)来实现。在一些实现中,计算设备可以由多组计算机的形式来实现,各个计算设备可位于不同地理位置,并通过网络等进行彼此间的通信。虽然某些操作可以由多台计算机共同完成,但在一些实现中,不同的计算机会被分配不同的操作。在一些实现中,系统100可以使用具有计算机程序的通用计算机或处理器来实现,在运行计算机程序时可执行本文描述的相应的方法、算法和/ 或指令。另外,也可以使用专用计算机或处理器,配备专用硬件设备用以执行本文描述的任何方法、算法或指令。
设备102可以包括处理器108和存储器110等硬件内部配置。处理器108可以是能够操作或处理信息的任何类型的一个或多个设备。在一些实现中,处理器108可以包括中央处理器(如中央处理单元,即CPU)。在一些实现中,处理器108也可以包括图形处理器(如图形处理单元,即GPU)。在另一些实现中,处理器108还可以包括一个特定的专用硬件加速处理器。尽管本文示例中可以用所示的单个处理器来实现,但是如果使用多个处理器将可体现速度和效率方面的优势。例如,处理器108可分布在多个机器或设备 (每个机器或设备带有一个或多个处理器)上,这些机器或设备可以直接耦合或通过网络 (如局域网)实现互联。存储器110可以是能够存储代码和数据的任何暂时或非暂时性的一个或多个设备,这些代码和数据可由处理器(通过诸如总线)访问。本文所述的存储器110可以是随机存取存储器设备(RAM)、只读存储器设备(ROM)、光盘或磁盘、硬盘驱动器、固态驱动器,闪存驱动器、安全数字(SD)卡、记忆棒、紧凑型闪存(CF)卡或任何合适类型的存储设备的任意组合。在一些实现中,存储器110可以分布在多个机器或设备上,诸如基于网络的存储器或基于云的存储器。存储器110可以包括数据、操作系统和应用程序。数据可以是用于处理的任何数据(如音频流、视频流或多媒体流),应用程序可以是允许处理器108执行指令以生成控制信号的程序,这些控制信号可用于执行下文描述的方法中所述的各项功能。
在一些实现中,设备102除了可包括处理器108和存储器110之外,还可以包括辅助(如外接)存储设备(未示出)。如使用上述辅助存储设备,则可在高处理需求时提供额外的存储空间。辅助存储设备可以是任何合适的非暂时性计算机可读介质形式的存储设备,如存储卡、硬盘驱动器、固态驱动器、闪存驱动器或光驱等。此外,辅助存储设备既可以是设备102的组件,也可以是通过网络访问的共享设备。在一些实现中,存储器 110中的应用程序可以全部或部分地存储在辅助存储设备中,并根据处理需要加载到存储器110中。
设备102除了包括处理器108和存储器110之外,还可以包括输入/输出(I/O) 设备,例如设备102可包括I/O设备112。I/O设备112可通过多种方式实现,比如它可以是耦合到设备102的显示器,并被配置为可以显示图形数据的图像。I/O设备112可以是向用户传输视觉、听觉或触觉信号的任何设备,如显示器、触敏设备(例如触摸屏)、扬声器、耳机、发光二极管(LED)指示灯或振动电机等。I/O设备112也可以是任何类型的需要或不需要用户干预的输入设备,如键盘、数字小键盘、鼠标、轨迹球、麦克风、触敏设备(如触摸屏幕)、传感器或手势感应输入设备。如果I/O设备112是显示器,则其可以是液晶显示器(LCD)、阴极射线管(CRT)或能够向个人提供可见输出的任何其他输出设备。在一些情况下,输出设备也可以作为输入设备,例如接收触摸式输入的触摸屏显示器。
此外,I/O设备112也可以由传输信号和/或数据的通信设备组成。例如,I/O设备112可包含一个从设备102向另一个设备发送信号或数据的有线装置。又如,I/O设备 112也可包含使用兼容协议的无线发射器或接收器,用于将信号从设备102发送到另一设备,或者将来自另一设备的信号接收到设备102。
设备102除了配备处理器108和存储器110之外,还可以额外包括通信设备 114来与另一个设备进行通信。或者也可以采用网络106进行通信。网络106可以是任何组合的任何合适类型的一个或多个通信网络,包括但不限于使用蓝牙通信、红外通信、近场连接(NFC)、无线网络、有线网络、局域网(LAN)、广域网(WAN)、虚拟专用网络 (VPN)、蜂窝数据网络和互联网。通信设备114可以通过多种方式实现,诸如应答器或收发器设备、调制解调器、路由器、网关、电路、芯片、有线网络适配器、无线网络适配器、蓝牙适配器、红外适配器、NFC适配器、蜂窝网络芯片,或耦合到设备102的任何组合的任何适当类型的设备,以提供与网络106的通信功能。
设备104与设备102类似,配备了处理器116、存储器118、I/O设备120和通信设备122。设备104的元件116-122的实现可类似于设备102中的108-114。设备102和 104可分别执行多媒体传输的不同功能。例如,设备102可以用作解码器设备(简称为“解码器”),而设备104可以用作编码器设备(简称为“编码器),反之亦然。设备102 可通过网络106与设备104通信。设备102和104还可与连接到网络106的其他设备(未示出)进行通信。
设备102和104(以及存储在其上和/或由此执行的算法、方法、指令等)可以在硬件上实现,硬件包括如知识产权(IP)内核、专用集成电路(ASIC)、可编程逻辑阵列、光处理器、可编程逻辑控制器、微代码、固件、微控制器、服务器、微处理器、数字信号处理器等或任何其他适用的电路。在本发明中,“处理器”一词应理解为包含任何上述内容中的一项或多项的组合。“信号”、“数据”和“信息”等术语可互换使用。此外,设备102和104的部分功能并不必以相同的方式来实现。
应注意的是,用于实现动态参考图像重建方法的编码设备(如设备102和104) 和系统的部件或组件并不局限于图1中所示的那些的元件,在不脱离本发明的范围的情况下,编码设备和系统可以包括更多或更少的部件、组件、硬件或软件模块,用于执行使用动态参考图像重建技术进行编码和解码相关或之外的其他各种功能。
图2是视频流200的示例图像。视频流200可以包括沿时间轴的一系列图像,其中包括图像202-208。例如,图像208可以是编码流程中的当前图像。图像208的参考图像可以是图像206、204、202中的一个或多个,或者其他在图像208之前被编码的图像 (未示出)。
视频流200的每幅图像都可被划分为多个处理单元。在一些视频编码标准中,该处理单元被称为“宏块”或“编码树块”(CTB)。在一些实现中,每个处理单元可以再进一步划分为一个或多个处理子单元,其中处理子单元被称为“块”或“编码单元” (CU)。处理单元和子单元可以是任何尺寸,例如8×8、8×16、16×16、32×32、64×64,也可以是任何任意形状。通常,如果图像中某个区域具有较多细节,则处理单元和子单元的尺寸往往较小。为便于解释而不引起歧义,处理单元和子单元在下文中称为“块”,除非另有明确说明。例如在图2中,图像206显示有4×4块,其中包括块210。块的边界以虚线表示。
在一些实现中,可以对块进行分组,从而形成图像的特定区域或分区。换句话说,图像可以被划分为一个或多个区域或分区,并且每个区域或分区可以包含一个或多个块。这样的区域或分区可被称为“切片”、“层片”或某一视频编码标准所特定的其他名称。为便于解释而不引起歧义,这些区域或分区在下文中称为“切片”,除非另有明确说明。例如,图像206可以被分成四个切片212-218,每个切片分成四个块。切片212-218之间可以具有边界220-226,以实线表示。
对切片的处理可独立于其他切片进行。例如,可以针对一个切片执行运动补偿和/或运动估计(如使用相同切片中的块)。此外,切片可以与其他切片同时编码,或者也可独立于其他切片单独编码。例如,可以独立地处理切片212-218,这样可提高视频编码的效率。类似地,也可以在解码器处单独对切片进行解码。
I图像的切片可被称为I切片,而P图像的切片可以被称为P切片。在一些实现中,对于P切片可以在两个或多个相同定位的切片之间执行运动估计和/或运动补偿。在本文中,“相同定位”指的是在两个不同图像中具有相同位置的两个切片。图像中切片的位置指的是图像中切片的相对位置。可以使用切片的一部分作为参考点来确定位置。例如,参考点可以在切片的中心、拐角、边界或其他任何位置的一个块内。在一些情况下,两个具有相同定位的切片可具有相同的尺寸和相同的形状。例如,对于两幅图像中具有相同尺寸和形状的两个切片,如果两个切片的左上角在图像中具有相同的位置(如相同的坐标),则可认为这两个切片具有“相同定位”。例如,图像208的切片228与图像206的切片 212具有相同定位,依此类推。如果切片228是P切片,则它可以使用与其相同定位的切片212作为其参考切片。在其他一些实现中,对于P切片,可以在两个或多个非相同定位的切片之间执行运动估计和/或运动补偿。例如,如果切片228是P切片,则它可以使用非相同定位切片214、216或218作为其参考切片。
应注意的是,本文所述的切片可以包括任何数量的任何块的任意组合,而并不限于上述示例(如切片212-218)。例如,切片可以是矩形,比如包括相邻几行的多个块。在另一示例中,切片可包括以非连续方式分组的块,例如两个或多个非连续块组。在另一示例中,第一个切片的一部分可以包含在第二个切片的一部分之内。在又一示例中,第一个切片也可以被第二个切片包围(如第一个切片可以在第二个切片之内)。
还应注意的是,切片的划分或分段在视频流中可以改变,也可以不变。换句话说,切片之间的边界可以改变也可以不改变。在一些实现中,视频流的图像可以被划分为相同模式的切片。在一些实现中,视频流中切片的划分模式可以随着图像的更迭而改变。
图3是根据本发明实施例所绘制的对视频流302进行编码的编码流程300的流程图。视频流302可包含音频源流、视频源流或包含音频和/或视频数据的任何媒体流。流程300可以实现为图1系统100中的软件和/或硬件模块。例如,流程300可以被实现为包含在编码器(如图1中的设备104)中的模块。流程300包括操作304-308以从视频流302产生压缩视频流314作为输出。在实现图5和图6所述的动态参考图像重建时,还可以对示例编码流程300(整个过程或其中一些阶段)做进一步修改。在一些实现中,实现切片式参考图像重建也可能并不需要流程300。
如图3中的流程300所示,编码器接收了视频流302。本文所指的“接收”一词可以指以任何方式接收、输入、获取、检索、获得、读取、访问或采用任何操作以输入信息或数据。例如,视频流302可以是视频流并且包括一系列视频图像(如当前图像)。
通常,编码过程可包括以下阶段或操作中的一个或多个:预测阶段(如用于帧内预测或帧间预测)、变换阶段(量化或非量化)和熵编码阶段。上述阶段可用于在编码处理的正向路径中将视频流302输出为压缩视频流314,如图3中的实线连接线所示:帧内/帧间预测阶段304、变换和/或量化阶段306以及熵编码阶段308。
在帧内/帧间预测阶段304,对于帧内预测,可以使用当前图像中先前编码的块来预测当前图像的当前块。对于帧间预测,可以使用先前编码的图像作为参考数据来预测当前图像的当前块。先前编码的图像可以包括比如先前编码和重建的图像(也称为参考图像)。例如,可以使用当前图像和一个或多个参考图像来执行运动估计和补偿以生成运动数据。然后可再对残差数据(即预测块和当前块之间的差)执行变换、量化和/或熵编码操作。
在一些实现中,也可以在熵编码阶段308之前附加应用一个环路滤波器。环路滤波器可减少由视频压缩导致的失真(如“块效应”)。其他用于对视频比特流进行解码的信息也可被熵编码,这些信息包括:预测模式、变换类型、量化级别和环路滤波器参数 (如滤波器强度)等。
在一些实现中,流程300还可以包括重建路径来对参考数据进行重建,用于预测未来图像。例如,重建路径(图3中表示为虚线连接线)可以包括以下阶段:去量化和 /或逆变换阶段310和重建阶段312。阶段310和312可确保编码器(如图1中的设备104) 和解码器(如图1中的设备102)使用相同的参考数据进行预测。在一些实现中,可以在重建阶段312之后附加应用一个环路滤波器(未示出);而在另一些实现中,也可以在不使用环路滤波器的情况下使用重建的图像。重建可以类似于解码流程中的重建阶段(如图 4中的阶段410)。
应注意的是,对视频序列进行编码也可以使用编码过程的其他变体形式。编码过程可以按照不同的顺序进行处理,也可组合为更少的阶段,或者是分成更多的阶段。例如在一些实现中,量化或变换可以是非必需的。比如说,基于非变换的编码器可以在不进行变换的情况下量化残差数据。
图4是根据本发明实施例所绘制的对压缩视频流进行解码的流程400示例图。流程400可以实现为图1系统100中的软件和/或硬件模块。例如,流程400的部分或所有阶段可以由解码器(如设备102)实现为包含在系统100中的软件或硬件模块。解码器可由存储在存储器(如存储器110)中的程序代码实现。程序代码可包括计算机可读指令,当由处理器(如处理器108)执行时使得解码器以图4中描述的方式解码压缩视频流。解码器还可以实现为包含在设备(如设备102)中的专用硬件。例如,解码器可以是硬件解码器。流程400包括操作404-410,用于将压缩视频流402重建为视频流412。此外,在实现下图5、6中所述的动态参考图像重建时,可以对示例流程400的整个过程或部分阶段进行修改。
通常在解码压缩媒体流时,解码过程类似于视频编码过程的重建路径。流程 400类似于上述流程300的重建路径,可以包括以下阶段:熵解码阶段404、去量化和/或逆变换阶段406、帧内/帧间预测阶段408和重建阶段410。重建的图像可以用作未来的参考数据,用于处理当前图像之后的后续图像。重建的图像不仅可在媒体流412中输出,还可以存储在缓冲器中(如图1中的存储器110)以用作未来的参考数据。在一些实现中,可以使用环路滤波器(未示出)对重建的图像进行滤波。也可采用流程400的其他结构变体对压缩视频流402进行解码。
图5是根据本发明实施例所绘制的使用动态参考图像重建方法来编码视频流的示例流程500的流程图。流程500可以实现为图1系统100中的软件和/或硬件模块。例如,流程500可以实现为存储在存储器118中的软件模块,作为由编码器(如图1中的设备104)中的处理器116执行的指令和/或数据。又如,流程500也可以在硬件中实现为专用芯片,可存储由专用芯片执行的指令。流程500的部分或所有操作可在图3中的流程 300的一个或多个阶段实现。
在操作502处对视频流第一幅图像的第一个切片进行编码。编码的切片在压缩视频流中发送并由解码器(如图1中的设备102)接收。例如,第一个切片可以与切片编号相关联,在本文中将用切片编号(例如:切片“S0”)及其所属的图像(如图7中的图像P(i+1))来表示一个切片。
如确定已接收到解码第一幅图像的第一个切片所需的所有数据,则解码器发送反馈消息给编码器,该反馈消息表明已接收到第一幅图像的第一个切片,此过程将在下文图6中详述。例如,图像P(i+1)的切片“S0”被编码并在压缩视频流(“比特流”)中传输。解码器接收到切片“S0”后将向编码器发送反馈消息,该反馈消息表明已接收到图像P(i+1) 的切片“S0”。
在操作504处,从解码器处接收反馈消息,该反馈消息表明已经接收到第一幅图像的第一个切片。如图7所示,反馈消息可以用于表明已经接收到图像P(i+1)的切片“S0”。
在操作506处,在接收到表明第一幅图像的第个一切片已被接收的反馈消息后,随即使用第一幅图像的第一个切片来更新动态参考图像(DRR)。在更新之前,DRR可以包括第二幅图像的第一个切片,该图像通常在时间上早于第一幅图像。可以通过使用 DRR中第一幅图像的第一个切片来替换第二幅图像的第一个切片来更新DRR。第一幅图像的第一个切片和第二幅图像的第一个切片具有相同定位。
标识相同的切片是具有相同定位的切片。例如,标识同为“S0”的切片都具有相同定位。以此类推,标识同为“S2”的切片也都具有相同定位。例如,图像P(i+1)的切片“S0”和图像P(i+2)的切片“S0”是具有相同定位的切片。例如再来看图2,将切片212 指定为图像206的切片“S0”,并将切片228指定为图像208的切片“S0”,则切片212和 228具有相同定位。
使用第一幅图像的第一个切片来更新DRR可包括:例如,在对第一幅图像的第一个切片进行编码之后对第一幅图像的第一个切片进行解码,并使用编码后被解码的第一幅图像的的第一个切片来更新DRR。
更新的DRR可以用于编码视频流的第三幅图像,对该第三幅图像的编码是在第一幅图像被编码之后,且在接收到表明第一幅图像的第一个切片已被接收的反馈消息之后。例如,在接收到表明已接收到图像P(i+1)的切片“S0”的反馈消息后,随即使用图像P(i+1)的切片“S0”来替换比如之前的图像Pi中的切片“S0”,以此更新DRR。更新的 DRR可以用于编码后续图像,例如图7中的图像P(i+5)。通过以切片方式更新DRR,只要在编码器处确认解码器已接收到该切片,就可以使用最新的切片来更新DRR,以此增加DRR与未来图像之间的关联性,即使在解码器仅接收到部分图像的情况下也可实现。因此,使用动态参考图像重建方法可以增强解码过程中的抗丢包能力。
在一些实现中,通过使用第一幅图像的第一个切片更新的DRR作为参考对视频流的第三幅图像进行编码还包括通过使用第一幅图像的第一个切片更新的DRR作为参考对第三幅图像的切片报头或补充增强信息(SEI)进行编码。例如在图7中,在时间T =4时编码器接收到反馈消息,采用图像P(i+1)中的切片“S0”更新的DRR可以用作对图像P(i+5)进行编码的参考,并且参考信息可以在图像P(i+5)的切片报头或SEI中携带。例如,参考信息可以包括切片索引(如索引为“S0”的切片)和参考图像编号(如编号为“i+1”的图像)。
在一些实现中,用于预测第三幅图像的参考图像还包括紧接在编码第三幅图像(如“上一幅”图像)之前编码和解码的图像。例如,可以使用图3中的重建路径对“上一幅”图像进行编码然后再解码,以便编码器和解码器可以使用同一幅根据编码视频流重建的参考图像。例如,可以从更新的DRR和上一幅图像中选择用于预测第三幅图像的参考图像。例如,当网络状况良好时(因此几乎没有丢包的情况下),上一幅图像可以被用作参考。当网络状况变差时,出现更多的丢包现象,如果还使用“上一幅”图像作为参考,则丢失的切片或图像可能导致后续解码被破坏。而在其他一些实现中,只使用DRR而不使用上一幅图像作为参考图像。
在一些实现中,可通过用第一幅图像的第一个切片所更新的DRR作为参考来编码视频流的第三幅图像的第一个切片,其中第一幅图像的第一个切片和第三幅图像的第一个切片具有相同定位。
在一些实现中,反馈消息用于表明已接收到第一幅图像的第一个切片以及至少一个其它切片。当解码器接收到来自同一图像的多个切片并且解码器发送一条反馈消息确认已接收到该图像的所有切片时,就会出现上述这种情况。这将降低传输和处理成本,但是也会增加更新参考切片/图像的时间延迟,因为解码器需要等待更长时间直到所有切片到达之后才会发送反馈消息。当反馈消息表明已经接收到第一幅图像的多个切片时,将同时使用这些切片来更新DRR。
在另一些实现中,从第一幅图像处接收到每一个新切片都将发送反馈消息,因此将发送第二反馈消息指示已接收到第一幅图像的第二个切片。
在一些实现中,一个编码器对应于多播场景中的多个解码器,则需要多个解码器来重建相同的DRR。因此,编码器可以在确定已经从与编码器相关联的各个解码器处都接收到了反馈消息后使用第一幅图像的一个公共切片来更新DRR,所述每个反馈消息均指示已经接收到该公共切片。例如,如公共切片是图像P(i+1)的切片“S0”,则当编码器从所有相应的解码器处收到反馈消息表明已接收到图像P(i+1)的切片“S0”之后,即可相应更新DRR。
图6是根据本发明的实施例所绘制的使用动态参考图像重建方法来解码视频流的示例流程600的流程图。压缩视频流可以以视频比特流的形式被接收。流程600可实现为图1系统100中的软件和/或硬件模块。例如,流程600可实现为包含在解码器(如图1 中的设备102)中的模块。流程600的操作还可以实现为机器可读指令,在诸如图4流程 400的一个或多个阶段中执行。流程600包括操作602-606,用于对接收到的视频流进行动态参考图像重建,详见下述。
在操作602处,从编码器处接收与编码视频流的第一幅图像的第一个切片相关联的数据。例如,从编码器处接收到与图像P(i+1)的切片“S0”相关联的数据。
在操作604处,如确定已接收到解码第一幅图像的第一个切片所需的所有数据,则将反馈消息发送到编码器,该反馈消息表明已经接收到第一幅图像的第一个切片。第一幅图像的第一个切片将被解码。例如,在确定已经接收到解码切片“S0”所需的所有数据后,解码器向编码器发送反馈消息,该反馈消息表明已经接收到图像P(i+1)的切片“S0”。例如,一个切片可以采用一个或多个数据包送达。
解码器除了发送反馈消息,还将根据接收到的数据对第一幅图像的第一个切片进行解码。可以参考其他图像(如上文所述的参考图像或参考图像集)来解码一个切片。例如,可以使用DRR来解码图像P(i+1)的切片“S0”。在一些实现中,参考图像还可以包括在图像序列中紧接在解码第一幅图像之前被解码的的“上一幅”图像。
在操作606处,使用第一幅图像的第一个切片来更新动态参考图像(DRR),其中使用动态参考图像中第一幅图像的第一个切片来替换第二幅图像的第一个切片,并且第一幅图像的第一个切片和第二幅图像的第一个切片具有相同定位。更新DRR可以包括例如从编码视频流中解码第一幅图像的第一个切片,以及使用从编码视频流中解码的第一幅图像的第一个切片来更新DRR。
更新DRR的时间可以根据不同的实施方案而不同。例如,在一些实现中,在第一幅图像的第一个切片被解码之后可能不会被立即用于更新DRR,而是编码器将决定何时使用它,例如,通过在新图像的切片报头或SEI中传递参考信息。如图7中的一个示例,编码器可以在图像P(i+5)的切片报头或SEI中包含该参考信息。然后当解码器解码图像P(i+5)时将得以重建新的DRR。而在此之前,旧的DRR仍可以使用。
接下来,解码器可从编码器处接收与编码视频流的第三幅图像相关联的数据,该数据使用第一幅图像的第一个切片所更新的DRR作为参考。第三幅图像的解码在时间上晚于第一幅图像。从第三幅图像的切片报头或补充增强信息(SEI)处可解码参考信息。解码器可根据该参考信息,将使用第一幅图像的第一个切片所更新的DRR作为参考来解码第三幅图像。如上所述,例如,在解码第三幅图像时可以更新DRR,其中第三幅图像的切片报头或SEI中包含第一幅图像的第一个切片的参考信息,解码器使用该信息来更新 DRR。
可以采用类似于图5中的流程500来更新参考切片和图像,但不需要完全照搬每个步骤。例如在一些实现中,可以选择紧接在第三幅图像(“上一幅”图像)之前被解码的图像作为参考图像,也可以选择用第一幅图像的第一个切片所更新的DRR作为参考图像来预测第三幅图像。而在其他一些实现中,只使用DRR而不使用上一幅图像作为参考图像。
在一些实现中,反馈消息用于表明已接收到第一幅图像的第一个切片以及该图像的其他至少一个切片。在另一些实现中,一旦接收到一个切片,就会发送反馈消息。
在一些实现中,用于表明已接收到第一幅图像的第一个切片的反馈消息是指已接收到第一幅图像的第一个切片以及其他至少一个切片。可以同时使用第一个切片和上述另一个或多个切片来更新DRR。
图7是根据本发明的实施例所绘制的的动态参考图像重建的一个示例。在该示例中,该过程按照从左到右的时间发展顺序示出。
在解码器750处,在时间点t1解码图像Pi之后,在时间点t1处的图像Pi和动态参考图像DRR(t1)752可被用作参考图像。编码器700处其对应的DRR为DRR(t1)702。假设在图像Pi之后接收的第一个切片(以切片K表示)属于图像P(i+T),其中T>=1。在该示例中T=1,这意味着切片K属于图像P(i+1)。可使用当前的参考图像如DRR(t1)752 或者“上一幅”图像Pi对切片K进行解码。同时,将表明“已接收到切片K”的反馈消息发送至编码器700。根据网络状况的不同,反馈消息送达编码器700可能需要花费一些时间。
例如,反馈消息在图像P(i+N)的编码期间到达编码器700,其在时间上晚于 P(i+T)。在该示例中,在编码图像P(i+4)(即N=4)的时候反馈消息被送达,其在时间上晚于图像P(i+1)。反馈消息送达后,可以在时间t2处更新DRR以包括图像P(i+T)中的切片K。在该示例中,T=1。更新的DRR(t2)704可以作为参考图像用于编码未来图像,如图像P(i+N+1)。在该示例中当N=4时,DRR(t2)704可以为从新图像P(i+5)开始往后的后续图像用作参考。
如上所述,参考图像的信息可以在切片报头或SEI中携带。在该示例中,如果新图像P(i+5)中的一个切片采用更新的DRR(t2)(如DRR(t2)704)进行编码,该DRR 是由图像P(i+1)中的切片K进行更新的,此类信息可以在切片报头或SEI中携带。在切片报头中接收到信息表明将DRR(t2)704用作参考后,解码器750可以开始使用相应的 DRR,该DRR已更新并包含图像P(i+1)中的切片K。已更新的DRR如DRR(t2)754可以用作从图像P(i+N+1)开始往后的图像解码时的参考,如图示中的图像P(i+5)。
在一些实现中,例如当仅将DRR用作参考时,任何切片(如图像P(i+2)、 P(i+3)或P(i+4)中的切片)的丢失都不会影响下一幅图像P(i+5)的解码。P(i+2)、P(i+3) 或P(i+4)中的切片如果发生丢包,解码器仍将可以从中修复。
在一些实现中,并不是在接收到切片后立即发送反馈消息,而是让解码器750 等待(等待时间取决于延迟限制)直到某一图像的所有切片都接收到后才发送反馈消息。因为切片不会同时到达,因此这可能就意味着更长的延迟。但另一方面,这样发送的反馈消息较少(每幅图像只发送一条反馈消息),因此可降低传输和处理成本。
在一些实现中,一个编码器对应于不止一个解码器,比如在多播场景中。编码器可以确定是否已经从所有解码器处接收到关于某一公共切片的反馈消息。如果都已接收到,则可使用该公共切片更新DRR。公共切片的信息可以在切片报头或SEI中携带。例如,当丢包率为10%时,对于1:4多播的情况(一个编码器,四个解码器),所有四个解码器都接收到切片的概率为66%。当丢包率达到20%时,概率降至41%。又如,对于 1:16多播的场景(一个编码器,十六个解码器),当丢包率为10%时,所有十六个解码器都接收到切片的概率为19%;而当丢包率为20%时该概率为2.8%。
此外,当一些解码器出故障时,比如当一些关键图像的所有数据包都丢失时,上述过程仍可在其他仍在运行的解码器中执行。同时,当接收到新的即时解码刷新(IDR) 图像时,即可恢复故障解码器。
如上所述,本领域专业人士应该注意,本文所述的本发明的全部或部分内容可以使用具有计算机程序的通用计算机或处理器来实现,其计算机程序在被运行时可执行本文所述的任何相应的技术、算法和/或指令。另外,也可以有选择地使用专用计算机或处理器,配备专用硬件设备用以执行本文描述的任何方法、算法或指令。
本文所述的计算设备(以及存储在其上和/或由此执行的算法、方法、指令等) 可以通过硬件、软件或其任何组合来实现。硬件可包括计算机、知识产权(IP)内核、专用集成电路(ASIC),可编程逻辑阵列、光处理器、可编程逻辑控制器、微代码、微控制器、服务器、微处理器、数字信号处理器或其他任何适用的电路。在本权利要求中,“处理器”一词应理解为包含任何上述内容中的一个或其多个组合。“信号”和“数据”两词可以互换使用。此外,计算设备各部分功能并非必须以相同的方式来实现。
本文所述各方面内容可通过功能块组件和各种处理操作来描述。本文发明的流程和序列可以单独或以任何组合形式来执行。功能块可以通过执行任意数量的可运行特定功能的硬件和/或软件组件来实现。例如,所述的内容可以采用各种集成电路组件,例如存储器元件、处理元件、逻辑元件、查找表等,在一个或多个微处理器或其他控制设备的控制下执行各种功能。类似地,实现所述内容各个功能时如需采用软件编程或软件元件,都可以采用诸如C、C++、Java、汇编程序等的任何编程或脚本语言来实现本发明,且可以采用任何数据结构、对象、进程、例程或其他编程元素的任意组合来执行各种算法。各项功能可以在一个或多个处理器上通过执行算法来实现。此外,本发明所述各功能可以采用任意数量的常规技术来进行电子配置、信号处理和/或控制、数据处理等。本文广泛使用“机制”和“元素”这些词语,并不限于机械或物理实现,而是可以包括与处理器结合的软件例程等。
以上发明的实施方式或部分实施方式可以采取计算机程序产品的形式,该程序产品可通过计算机使用或可由计算机可读介质进行访问等。计算机可用或计算机可读介质可以是任何设备,该设备可以具体包含、存储、传送或传输供任何处理器使用或与其结合使用的程序或数据结构。该介质可以是电子的、磁的、光学的、电磁的或半导体设备等等。也可包含其他适用的介质。上述计算机可用或计算机可读介质可以被称为非暂时性存储器或介质,并且可以包括RAM或其他易失性存储器或存储设备,它们可以随时间变化而发生改变。本文所述的设备存储器并非必须物理上配备于设备中,而是可以由设备远程访问,并且不必与设备中其他物理上配备的存储器相邻,特别说明除外。
本文所述作为本发明的示例执行的一项或多项功能均可使用机器可读指令来实现,该指令用于操作前述一个或多个组合的硬件。计算代码可以以一个或多个模块的形式实现,通过该模块可以将一个或多个组合的功能作为计算工具来执行,在运行本文所述方法和系统时,输入和输出数据在每个模块与一个或多个其他模块之间进行相互传输。
信息、数据和信号可以使用各种不同的技术和方法来表示。例如,本文中提到的任何数据、指令、命令、信息、信号、比特、符号和芯片可以用电压、电流、电磁波、磁场或粒子、光学场或粒子及其他等一项或多项组合来表示。
本文示出和描述的具体内容是本发明的说明性示例,且无意以任何方式限制本发明的范围。为行文简洁起见,可能并未详细描述常规电子元器件、控制系统、软件开发和系统的其他功能方面(以及系统的各个操作组件的组件)。此外,本文多个附图中示出的连接线或连接符旨在表示各种元件之间的示例性功能关系和/或物理或逻辑耦合关系。在实际设备中可能存在许多替代或额外的功能关系、物理连接或逻辑连接。
本文采用“示例”一词来表示举例、实例或说明。本文所述用于“示例”的任何功能或设计不一定表示其优于或胜于其他功能或设计。相反,使用“示例”一词是为了以具体的方式呈现概念。本申请中所使用的“或”字旨在表示包含性的“或”而不是排他性的“或”。也就是说,“X包括A或B”意在表示任何自然的包含性排列,除非另有说明,或者从上下文可明确判断则另当别论。换句话说,如果X包含A,X包含B,或X 包含A和B,那么在任何前述实例下“X包含A或B”都成立。此外,本申请和所附权利要求书中使用的冠词“一个(英文中的a和an)”通常应解释为表示“一个或多个”,除非另有说明或上下文清楚地指出为特指一个的单数形式。另外,“一个功能”或“一项功能”这两个短语在全文中多次用到,但并不意味着同一个实施方式或同一项功能。
本文中“包含”或“具有”及其同义词旨在表示包括其后列出的项目及其等同物以及附加项目。除非另外指明或限制,否则本文使用的“安装”、“连接”、“支持”和“耦合”及其同义词为广义上的含义,包括直接和间接安装、连接、支持和耦合。此外,“连接”和“耦合”并不限于物理或机械连接或耦合。
在本发明所述内容(特别是下文的权利要求书)中,“一”、“一个”和“该”以及类似的指示代词应理解为包含一个和多个的单数和复数形式。此外,本文中对数值范围的描述只是一种简便的描述方式,旨在表示包含在该范围之内的每一个单独数值,并且每个单独值并入规格范围中,等效于在本文中单独列举。最后,本文所述的所有方法的步骤可以以任何合适的顺序执行,除非本文另有说明或者与上下文明显矛盾。本文提供的示例或示例性语言(例如“诸如”)的使用旨在更好地说明本发明,并无意于限制本发明的范围,除非另有说明。
本文使用各种标题和小标题列出列举条目。包含这些内容是为了增强可读性并简化查找和引用材料的过程。这些标题和小标题无意于、也不会用来影响对权利要求的解释或以任何方式限制权利要求的范围。本文示出和描述的具体实现是本发明的说明性示例,且无意于以任何方式限制本发明的范围。
本文引用的所有参考文献(包括出版物、专利申请和专利)均通过引用纳入本文,等效于单独且明确地指明将每个参考文献通过引用纳入本文,且涵盖参考文献的全部相关内容。
虽然已经结合某些实施例和实施方式对本发明进行描述说明,但应理解为,本发明并不限于所公开的实施方式,与之相反,本公开旨在覆盖权利要求范围之内所涵盖的各种变体和等同设置,该范围应被赋予最宽泛的解释以涵盖法律允许的所有上述变体和等同设置。

Claims (20)

1.一种编码视频流的方法,包括:
由处理器对视频流第一幅图像的第一个切片进行编码;
从解码器处接收反馈消息,该反馈消息表明已接收到第一幅图像的第一个切片;以及
在接收到表明第一幅图像的第一个切片已被接收的反馈消息后,随即使用第一幅图像的第一个切片来更新动态参考图像(DRR),其中在DRR中使用第一幅图像的第一个切片来替换第二幅图像的第一个切片,并且第一幅图像的第一个切片和第二幅图像的第一个切片具有相同定位。
2.根据权利要求1所述的方法,还包括:
处理器用第一幅图像的第一个切片所更新的DRR作为参考对视频流的第三幅图像进行编码,其中在接收到表明第一幅图像的第一个切片已被接收的反馈消息后对第三幅图像进行编码。
3.根据权利要求2所述的方法,其中处理器用第一幅图像的第一个切片所更新的DRR作为参考对视频流的第三幅图像进行编码还包括:
用第一幅图像的第一个切片所更新的DRR作为参考来编码第三幅图像的切片片头。
4.根据权利要求2所述的方法,其中处理器用第一幅图像的第一个切片所更新的DRR作为参考对视频流的第三幅图像进行编码还包括:
用第一幅图像的第一个切片所更新的DRR作为参考来编码第三幅图像的补充增强信息(SEI)。
5.根据权利要求2所述的方法,其中用于预测第三幅图像的参考图像从以下选项中选择:紧接在第三幅图像之前编码和解码的那一幅图像,以及使用第一幅图像的第一个切片所更新的DRR。
6.根据权利要求1所述的方法,其中使用第一幅图像的第一个切片来更新DRR包括:在对第一幅图像的第一个切片进行编码之后,对第一幅图像的第一个切片进行解码;并且
使用编码后被解码的第一幅图像的第一个切片来更新DRR。
7.根据权利要求1所述的方法,其中反馈消息表明已接收到第一幅图像的第一个切片指的是已接收到第一幅图像的第一个切片以及至少一个其它切片,并且使用第一幅图像的第一个切片来更新DRR包括:
同时使用第一幅图像的第一个切片和其他至少一个切片来更新DRR。
8.根据权利要求1所述的方法,在接收到表明第一幅图像的第一个切片已被接收的反馈消息后,随即使用第一幅图像的第一个切片来更新动态参考图像(DRR)包括:
如确定已经从与实现该方法的编码器相关联的多个解码器中的各个解码器处都已接收到反馈消息,其中每条反馈消息均表明已经接收到第一幅图像的第一个切片,则使用第一幅图像的第一个切片来更新DRR。
9.一种对编码视频流进行解码的方法,包括:
从编码器处接收与编码视频流的第一幅图像的第一个切片相关联的数据;
如确定已经接收到解码第一幅图像的第一个切片所需的所有数据,则向编码器发送反馈消息,该反馈消息表明已接收到第一幅图像的第一个切片,并且由处理器解码第一幅图像的第一个切片;以及
使用第一幅图像的第一个切片来更新动态参考图像(DRR),其中在DRR中使用第一幅图像的第一个切片来替换第二幅图像的第一个切片,并且第一幅图像的第一个切片和第二幅图像的第一个切片具有相同定位。
10.根据权利要求9所述的方法,还包括:
从编码器处接收与编码视频流的第三幅图像相关联的数据,该数据用第一幅图像的第一个切片所更新的DRR作为参考;并且
用第一幅图像的第一个切片所更新的DRR作为参考来解码第三幅图像。
11.根据权利要求10所述的方法,其中用第一幅图像的第一个切片所更新的DRR作为参考来解码第三幅图像包括:
用第一幅图像的第一个切片所更新的DRR作为参考来解码第三幅图像的一个切片报头。
12.根据权利要求10所述的方法,其中用第一幅图像的第一个切片所更新的DRR作为参考来解码第三幅图像包括:
用第一幅图像的第一个切片所更新的DRR作为参考来解码第三幅图像的补充增强信息(SEI)。
13.根据权利要求10所述的方法,用于预测第三幅图像的参考图像可从下列选项中选择:紧接在第三幅图像之前被解码的那一幅图像,以及用第一幅图像的第一个切片所更新的DRR。
14.根据权利要求10所述的方法,其中使用第一幅图像的第一个切片来更新DRR包括:从编码视频流中解码第一幅图像的第一个切片;以及
使用从编码视频流中解码的第一幅图像的第一个切片来更新DRR。
15.根据权利要求9所述的方法,其中反馈消息表明已接收到第一幅图像的第一个切片指的是已接收到第一幅图像的第一个切片以及至少一个其它切片,并且使用第一幅图像的第一个切片来更新DRR包括:
同时使用第一幅图像的第一个切片和其他至少一个切片来更新DRR。
16.一种用于对编码视频流进行解码的设备,包括:
一个非暂时性存储器,以及
一台处理器,其中非暂时性存储器包含可由处理器执行的指令,用于:
从编码器处接收与编码视频流的第一幅图像的第一个切片相关联的数据;
如确定已经接收到解码第一幅图像的第一个切片所需的所有数据,则向编码器发送反馈消息,该反馈消息表明第一幅图像的第一个切片已被接收,并且由处理器对编码视频流中的第一幅图像的第一个切片进行解码;以及
使用第一幅图像的第一个切片来更新动态参考图像(DRR),其中在DRR中使用第一幅图像的第一个切片来替换第二幅图像的第一个切片,并且第一幅图像的第一个切片和第二幅图像的第一个切片具有相同定位。
17.根据权利要求16所述的设备,其中由处理器执行的指令还包括用于执行下列操作的指令:
从编码器处接收与编码视频流的第三幅图像相关联的数据,该数据用第一幅图像的第一个切片所更新的DRR作为参考;
用第一幅图像的第一个切片所更新的DRR作为参考来解码第三幅图像。
18.根据权利要求17所述的设备,其中用于将第一幅图像的第一个切片所更新的DRR用作参考来解码第三幅图像的指令还包括用于解码下列其中一条信息的指令:
用第一幅图像的第一个切片所更新的DRR作为参考来解码的第三幅图像的切片报头;以及
用第一幅图像的第一个切片所更新的DRR作为参考来解码的第三幅图像的补充增强信息(SEI)。
19.根据权利要求17所述的设备,用于预测第三幅图像的参考图像可从下列选项中选择:紧接在第三幅图像之前被解码的那一幅图像,以及用第一幅图像的第一个切片所更新的DRR。
20.根据权利要求16所述的设备,其中用第一幅图像的第一个切片来更新DRR的指令包括用于执行下列操作的指令:
对编码视频流中的第一幅图像的第一个切片进行解码;以及
使用从编码视频流中解码的第一幅图像的第一个切片来更新DRR。
CN201811618709.2A 2018-05-31 2018-12-28 视频流编码方法、对编码视频流进行解码的方法及设备 Active CN110557634B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US15/993,868 2018-05-31
US15/993,868 US10567757B2 (en) 2018-05-31 2018-05-31 Dynamic reference picture reconstruction

Publications (2)

Publication Number Publication Date
CN110557634A true CN110557634A (zh) 2019-12-10
CN110557634B CN110557634B (zh) 2023-03-24

Family

ID=65686753

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811618709.2A Active CN110557634B (zh) 2018-05-31 2018-12-28 视频流编码方法、对编码视频流进行解码的方法及设备

Country Status (3)

Country Link
US (1) US10567757B2 (zh)
EP (1) EP3576410B1 (zh)
CN (1) CN110557634B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113033616A (zh) * 2021-03-02 2021-06-25 北京大学 高质量视频重建方法、装置、设备及存储介质
WO2022205064A1 (zh) * 2021-03-31 2022-10-06 华为技术有限公司 视频编码器、视频解码器及相应方法

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2022508244A (ja) * 2018-11-27 2022-01-19 オーピー ソリューションズ, エルエルシー 明示的信号伝達および暗黙的信号伝達を用いた、使用不可参照フレームの適応ブロック更新

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6049570A (en) * 1996-12-27 2000-04-11 Oki Electric Industry Co., Ltd. Picture coder
CN1328746A (zh) * 1998-11-25 2001-12-26 汤媒森多媒体公司 根据运动图像专家组标准编码图像的方法和装置
WO2002085029A1 (en) * 2001-04-09 2002-10-24 Ntt Docomo, Inc. Image encoding method and apparatus, image decoding method and apparatus, and image processing system
CN101690202A (zh) * 2007-04-09 2010-03-31 思科技术公司 用于压缩视频通信的带差错反馈的长期参考帧管理
US20130058405A1 (en) * 2011-09-02 2013-03-07 David Zhao Video Coding
CN107396138A (zh) * 2016-05-17 2017-11-24 华为技术有限公司 一种视频编解码方法及设备

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3068002B2 (ja) 1995-09-18 2000-07-24 沖電気工業株式会社 画像符号化装置、画像復号化装置及び画像伝送システム
US20100195742A1 (en) * 2009-02-02 2010-08-05 Mediatek Inc. Error concealment method and apparatus
US9083975B2 (en) * 2009-08-21 2015-07-14 Nec Corporation Moving image coding device
WO2012091640A1 (en) * 2010-12-27 2012-07-05 Telefonaktiebolaget Lm Ericsson (Publ) Method and arrangement for processing of encoded video
KR101967398B1 (ko) * 2013-07-09 2019-04-09 노키아 테크놀로지스 오와이 모션 정보를 시그널링하기 위한 구문을 수반하는 비디오 코딩을 위한 방법 및 장치

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6049570A (en) * 1996-12-27 2000-04-11 Oki Electric Industry Co., Ltd. Picture coder
CN1328746A (zh) * 1998-11-25 2001-12-26 汤媒森多媒体公司 根据运动图像专家组标准编码图像的方法和装置
WO2002085029A1 (en) * 2001-04-09 2002-10-24 Ntt Docomo, Inc. Image encoding method and apparatus, image decoding method and apparatus, and image processing system
CN101690202A (zh) * 2007-04-09 2010-03-31 思科技术公司 用于压缩视频通信的带差错反馈的长期参考帧管理
US20130058405A1 (en) * 2011-09-02 2013-03-07 David Zhao Video Coding
CN107396138A (zh) * 2016-05-17 2017-11-24 华为技术有限公司 一种视频编解码方法及设备

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
SHIGERUFUKUNAGA ET AL.: "Error resilient video coding controlled by backward channel signaling", 《SIGNAL PROCESSING: IMAGE COMMUNICATION》 *
鲁云: "基于Hi3516A的高压缩比网络图像编码设备的设计", 《中国优秀硕士学位论文全文数据库信息科技辑(月刊),2017年第03期》 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113033616A (zh) * 2021-03-02 2021-06-25 北京大学 高质量视频重建方法、装置、设备及存储介质
CN113033616B (zh) * 2021-03-02 2022-12-02 北京大学 高质量视频重建方法、装置、设备及存储介质
WO2022205064A1 (zh) * 2021-03-31 2022-10-06 华为技术有限公司 视频编码器、视频解码器及相应方法

Also Published As

Publication number Publication date
US10567757B2 (en) 2020-02-18
EP3576410B1 (en) 2024-05-22
US20190373254A1 (en) 2019-12-05
CN110557634B (zh) 2023-03-24
EP3576410A1 (en) 2019-12-04

Similar Documents

Publication Publication Date Title
CN113261298B (zh) 视频编解码的方法和装置
EP3481068B1 (en) Low delay picture coding
US10382768B2 (en) Method and apparatus for transform coefficient coding of non-square blocks
JP2018093514A (ja) ビデオコード化における低遅延ビデオバッファリング
CN110557634B (zh) 视频流编码方法、对编码视频流进行解码的方法及设备
JP6321002B2 (ja) 固定長コード化されたビデオパラメータセット(vps)idを有する補足強化情報(sei)メッセージ
US11758154B2 (en) Method and apparatus for signaling an offset in video coding for intra block copy and/or inter prediction
JP2019195190A (ja) 改善されたrtpペイロードフォーマット設計
JP2014530573A (ja) 参照ピクチャシグナリングおよび復号ピクチャバッファ管理
JP2016506159A (ja) ビデオコード化における低遅延バッファリングモデル
JP2021520150A (ja) 予測モードおよび符号化ブロックフラグ(cbf)のコンテキスト設計を更に向上する方法および機器
JP2023109977A (ja) ビデオ・データを符号化する方法、装置及びコンピュータ・プログラム
US10123028B2 (en) Syntax parsing apparatus with multiple syntax parsing circuits for processing multiple image regions within same frame or processing multiple frames and related syntax parsing method
CN111277841B (zh) 一种在视频通信中执行错误隐藏的方法和设备
CN116567228A (zh) 编码方法、实时通信方法、装置、设备及存储介质
CN110557635B (zh) 视频流编码方法以及对编码视频流解码的方法和设备
EP3145187B1 (en) Method and apparatus for response of feedback information during video call
US10567781B2 (en) Progressive I-slice reference for packet loss resilient video coding
CN113491128B (zh) 已解码图片存储器管理的方法和相关装置
WO2023174076A1 (zh) 编码方法及装置、解码方法及装置、存储介质、电子装置
US20230308658A1 (en) Methods of parameter set indication in video streaming
JP2022538551A (ja) ビデオコーディングレイヤアップスイッチング指示

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