CN108353192B - 视频处理系统和方法中的分层去块滤波 - Google Patents

视频处理系统和方法中的分层去块滤波 Download PDF

Info

Publication number
CN108353192B
CN108353192B CN201580083623.2A CN201580083623A CN108353192B CN 108353192 B CN108353192 B CN 108353192B CN 201580083623 A CN201580083623 A CN 201580083623A CN 108353192 B CN108353192 B CN 108353192B
Authority
CN
China
Prior art keywords
block
block size
size
transform
current
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
CN201580083623.2A
Other languages
English (en)
Other versions
CN108353192A (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.)
RealNetworks LLC
Original Assignee
RealNetworks Inc
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 RealNetworks Inc filed Critical RealNetworks Inc
Publication of CN108353192A publication Critical patent/CN108353192A/zh
Application granted granted Critical
Publication of CN108353192B publication Critical patent/CN108353192B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • H04N19/86Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving reduction of coding artifacts, e.g. of blockiness
    • 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/117Filters, e.g. for pre-processing or post-processing
    • 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
    • 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/176Methods 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 block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • H04N19/619Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding the transform being operated outside the prediction loop

Landscapes

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

Abstract

提供一种协议,通过该协议识别当前块和相邻块并处理当前块。在一些变体中,根据当前块和相邻块的同一大小是否小于标准块大小,应用去块滤波器,去块滤波器的滤波块大小设置为标准块大小或同一块大小。

Description

视频处理系统和方法中的分层去块滤波
技术领域
本公开涉及视频信号的编码和解码,并且更具体地,涉及块状伪像的有效减轻。
背景技术
诸如数字图像、语音/音频、图形和视频等数字多媒体的出现显著改善了各种应用,并开启了全新的应用,这是因为它相对容易地实现了对内容的可靠存储、通信、传输、搜索和访问。总的来说,数字多媒体的应用范围很广,包括娱乐、信息、医药和安全等广泛领域,并以多种方式使社会受益。诸如相机和麦克风等传感器捕获的多媒体通常是模拟的,并且以脉冲编码调制(PCM)形式的数字化过程使其成为数字化的。然而,就在数字化之后,所得到的数据的量可能非常重要,这是重建扬声器和/或电视显示器所需的模拟表示所必需的。因此,大量数字多媒体内容的有效通信、存储或传输需要从原始PCM形式压缩到压缩表示。因此,已经发明了许多多媒体压缩技术。多年来,视频压缩技术的发展高度发达,以至于他们通常可以实现10至100之间的高压缩比,同时保持较高的心理视觉质量,这通常与未压缩的数字视频类似。
尽管迄今为止在视频压缩领域和科学方面已经取得了巨大进步(诸如MPEG-1、MPEG-2、H.263、MPEG-4第2部分、MPEG-4AVC/H.264、MPEG-4SVC和MVC等多种标准体驱动的视频编码标准以及诸如Windows Media Video、RealVideo、On2VP等行业驱动的专有标准所表现的),但是消费者对可随时随地访问更高质量、更高清晰度以及现在的3D(立体声)视频的日益增加的需求必需通过各种方式(例如,DVD/BD、无线广播、有线/卫星、有线和移动网络)传输至各种客户端设备(例如,个人电脑/笔记本电脑、电视机、机顶盒、游戏控制台、便携式媒体播放器/设备、智能手机和可穿戴计算设备等),为更高水平的视频压缩带来了希望。在标准体驱动的标准中,ISO MPEG最近开始在高效视频编码(HEVC)中实现就可以证明这一点,该技术预计将新技术贡献和ITU-T标准委员会对H.265视频压缩的多年探索性工作中的技术相结合起来。
所有上述标准采用通用帧间预测编码框架,其涉及通过补偿视频帧之间的运动来减少时间冗余。基本构思是通过使用块匹配方法去除相邻图片之间的时序依赖。在编码过程开始时,未编码视频序列的每一帧被分为以下三类中的一类:I型帧、P型帧和B型帧。I型帧是帧内编码的。也就是说,只有来自帧本身的信息被用于对图片进行编码,并且没有使用帧间运动补偿技术(但是可以应用帧内运动补偿技术)。
其它两种类型的帧(P型和B型)使用帧间运动补偿技术进行编码。P图片和B图片之间的差异是用于运动补偿的参考图片的时间方向。P型图片利用来自先前图片的信息(按照显示顺序),而B型图片可以利用来自先前图片和未来图片的信息(按照显示顺序)。
对于P型帧和B型帧,则将每个帧分成由每个像素的亮度分量和色度分量的系数表示的像素块,并且针对每个块获得一个或多个运动矢量(因为B型图片可以利用来自未来编码帧和过去编码帧的信息,可以针对每个块编码两个运动矢量)。运动矢量(MV)表示从当前块的位置到另一先前编码帧(其可以是按照显示顺序的过去帧或未来帧)中相似块的位置的空间位移,所述另一先前编码帧和所述相似块分别被称为参考块和参考帧。确定参考块和当前块之间的差异(如果有的话),并且获得残差(也称为“残差信号”)。因此,对于帧间编码帧的每个块,只需要对残差和运动矢量进行编码而不需要对块的全部内容进行编码。通过消除视频序列的帧之间的这种时间冗余,可以压缩视频序列。
为了进一步压缩视频数据,在已经应用帧间或帧内预测技术之后,残差信号的系数通常从空间域变换到频域(例如,使用离散余弦变换(“DCT”)或离散正弦变换(“DST”))。对于自然出现的图像(例如通常构成人类可感知视频序列的图像类型),低频能量总是比高频能量更强。因此,残差信号在频域中比它们在空间域中得到更好的能量压缩。在正向变换之后,系数可以在被分组化或以其他方式处理之前被量化和熵编码,例如,用于通过诸如因特网的网络传输。
在解码器侧,应用逆量化和逆变换来恢复空间残差信号。这些是许多视频压缩标准中的典型变换/量化过程。然后可以执行逆预测过程以便生成原始未编码视频序列的重新创建版本。
在现有技术的视频压缩中,去块滤波器(DBF)是编解码器设计的关键方面。这种滤波器的目的是减轻所谓的“块状伪像”(在两个图像块之间的边界处可观察到的不连续性,主要由量化产生)。在减轻这些明显的视频图像缺陷同时又不会过度加重系统资源的负担方面存在着巨大而持续的需求,这是复杂的挑战。
附图说明
图1图示了根据至少一个实施例的示例性视频编码/解码系统。
图2示出了根据至少一个实施例的示例性编码装置的若干部件。
图3示出了根据至少一个实施例的示例性解码装置的若干部件。
图4示出了根据至少一个实施例的示例性视频编码器的框图。
图5示出了根据至少一个实施例的示例性视频解码器的框图。
图6示出了根据至少一个实施例的待处理图像的区域。
图7也示出了根据至少一个实施例的待处理图像的区域。
图8也示出了根据至少一个实施例的待处理图像的区域。
图9示出了根据至少一个实施例的变换块处理例程。
图10示出了根据至少一个实施例的变换块大小选择子例程。
图11示出了根据至少一个实施例的正向整数变换子例程。
图12示出了根据至少一个实施例的图片处理例程。
图13示出了根据至少一个实施例的去块滤波块大小确定子例程。
图14图示了根据至少一个实施例的亮度专用DBF应用子例程。
图15示出了根据至少一个实施例的DBF应用子例程。
图16示出了根据至少一个实施例的边界强度确定子例程。
图17示出了根据至少一个实施例的示例性联网视频实现。
具体实施方式
下面的详细描述主要由传统计算机部件的操作过程和符号表示来表示,传统计算机部件包括处理器、用于处理器的存储器存储装置、连接的显示装置和输入装置。此外,这些过程和操作可以利用异构分布式计算环境中的传统计算机部件,包括远程文件服务器、计算机服务器和存储器存储装置。这些传统分布式计算部件中的每一个都可以由处理器经由通信网络访问。
短语“在一个实施例中”、“在至少一个实施例中”、“在各种实施例中”、“在一些实施例中”等可以在本文中重复使用。这样的短语不一定指代相同的实施例。术语“包含”、“具有”和“包括”是同义的,除非上下文另有规定。如上面总体描述的,在典型的“混合”视频编码方法的背景下描述各种实施例,该方法在于使用帧间/帧内图像预测和变换编码。
现在详细参照对附图中所示的实施例的描述。尽管结合附图和相关描述来描述实施例,但是本领域的普通技术人员应该理解,在不脱离本公开的范围的情况下,替代和/或等同实现可以替代所示出和描述的具体实施例,包括所有替代、修改和等同物(无论是否明确示出和/或描述)。在各种替代实施例中,附加装置或所示装置的组合可被添加或组合,而不将范围限制为本文公开的实施例。
示例性视频编码/解码系统
图1示出了根据至少一个实施例的示例性视频编码/解码系统100。编码装置200(在图2中示出并在下面描述)和解码装置300(在图3中示出并在下面描述)与网络104进行数据通信。编码装置200可以通过直接数据连接(例如,存储区域网络(“SAN”)、高速串行总线)和/或经由其他合适的通信技术或经由网络104(如图1中的虚线所示)与未编码视频源108进行数据通信。类似地,解码装置300可以通过直接数据连接(例如,存储区域网络(“SAN”)、高速串行总线)和/或经由其他合适的通信技术或经由网络104(如图1中的虚线所示)与可选的编码视频源112进行数据通信技术。在一些实施例中,编码装置200、解码装置300、编码视频源112和/或未编码视频源108可以包括一个或多个复制和/或分布式物理或逻辑装置。在许多实施例中,可以存在比图示更多的编码装置200、解码装置300、未编码视频源108和/或编码视频源112。
在各种实施例中,编码装置200可以是通常能够通过网络104从例如解码装置300接受请求并相应地提供响应的联网计算装置。在各种实施例中,解码装置300可以是具有以下形状因子的联网计算装置,诸如手持装置(例如移动电话)、可穿戴计算装置(例如手表或抬头显示器)、专用媒体播放器、计算平板电脑、机动车音响主机、音频-视频点播(AVOD)系统、专用媒体控制台、游戏装置、“机顶盒”、数字录像机、电视机或通用计算机。在各种实施例中,网络104可以包括因特网、一个或多个局域网(“LAN”)、一个或多个广域网(“WAN”)、蜂窝数据网络和/或其它数据网络。网络104可以在各个点处是有线和/或无线网络。
示例性编码装置
参照图2,示出了示例性编码装置200的若干部件。在一些实施例中,编码装置可以包括比图2中示出的更多的部件。然而,为了公开说明性实施例,示出所有这些通常传统的部件并不是必须的。如图2所示,示例性编码装置200包括用于连接到网络(诸如网络104)的网络接口204。示例性编码装置200还包括处理单元208(例如实现为通用处理器)、存储器212、可选的用户输入214(例如,字母数字键盘、小键盘、鼠标或其他定点装置、触摸屏和/或麦克风)以及可选的显示器216,它们全都经由总线220与网络接口204互连。存储器212通常包括RAM、ROM以及诸如磁盘驱动器、闪存等永久大容量存储装置。
示例性编码装置200的存储器212存储多个软件服务的程序代码以及操作系统224,所述多个软件服务诸如是软件实现的帧间视频编码器400(下面参照图4描述),该软件实现的帧间视频编码器400具有用于执行变换块处理例程900(下面参照图9描述)的指令。存储器212还可以存储可以表示音频/视觉媒体作品(例如,电影和/或电视剧集)的未编码副本的视频数据文件(未示出)。可以使用与非暂时性计算机可读介质232(诸如软盘、磁带、DVD/CD-ROM驱动器、USB驱动器、存储卡等)相关联的驱动机构(未示出)将这些和其他软件部件加载到编码装置200的存储器212中。
在操作中,操作系统224管理编码装置200的硬件和其他软件资源,并为软件应用(诸如,软件实现的帧间视频编码器400)提供公共服务。对于硬件功能(诸如,经由网络接口204的网络通信、经由输入214接收数据、经由可选的显示器216输出数据以及为各种软件应用(诸如软件实现的帧间视频编码器400)分配存储器212),操作系统224用作在编码装置上执行的软件和硬件之间的中介。
在一些实施例中,编码装置200还可以包括用于与未编码视频源108进行通信的专用未编码视频接口236(例如高速串行总线等)。在一些实施例中,编码装置200可以经由网络接口204与未编码视频源108进行通信。在其他实施例中,未编码视频源108可以驻留在存储器212或计算机可读介质232中。
尽管已经描述了大体符合传统的通用计算装置的示例性编码装置200,但是编码装置200可以是能够根据各种实施例执行指令以对视频进行编码的大量装置中的任何装置,诸如示例性的软件实现的帧间视频编码器400和变换块处理例程900,例如视频记录装置、视频协处理器和/或加速器、个人计算机、游戏控制台、机顶盒、手持式或可穿戴式计算装置、智能电话或任何其他合适的装置。
例如,编码装置200可以在推动点播媒体服务(未示出)的情况下进行操作。在至少一个示例性实施例中,点播媒体服务可以操作编码装置200以促进在线点播媒体存储,以基于每个作品和/或订阅向用户提供诸如视频内容的媒体作品的数字副本。点播媒体服务可以从未编码视频源108获得这种媒体作品的数字副本。
示例性解码装置
参照图3,示出了示例性解码装置300的若干部件。在一些实施例中,解码装置可以包括比图3中示出的更多的部件。然而,为了公开说明性实施例,示出所有这些通常传统的部件并不是必须的。如图3所示,示例性解码装置300包括用于连接到网络(诸如网络104)的网络接口304。示例性解码装置300还包括处理单元308(例如实现为通用处理器)、存储器312、可选的用户输入314(例如,字母数字键盘、小键盘、鼠标或其他定点装置、触摸屏和/或麦克风)、可选的显示器316以及可选的扬声器318,它们全都经由总线320与网络接口304互连。存储器312通常包括RAM、ROM以及诸如磁盘驱动器、闪存等永久大容量存储装置。
示例性解码装置300的存储器312可以存储操作系统324以及用于诸如软件实现的帧间视频解码器500(下面参照图5描述)的多个软件服务的程序代码,帧间视频解码器500具有用于执行变换块恢复例程的指令(在于2015年3月31日提交的标题为“视频编码系统和方法中的残差变换和逆变换”的国际专利申请PCT/CN2015/075597中进行描述)。存储器312还可以存储可以表示音频/视觉媒体作品(例如,电影和/或电视剧集)的编码副本的视频数据文件(未示出)。可以使用与非暂时性计算机可读介质332(诸如软盘、磁带、DVD/CD-ROM驱动器、存储卡等)相关联的驱动机构(未示出)将这些和其他软件部件加载到编码装置300的存储器312中。
在操作中,操作系统324管理解码装置300的硬件和其他软件资源,并为软件应用(诸如,软件实现的帧间视频解码器500)提供公共服务。对于硬件功能(诸如,经由网络接口304的网络通信、经由输入314接收数据、经由可选的显示器216和/或可选的扬声器318输出数据以及分配存储器312),操作系统324用作在编码装置上执行的软件和硬件之间的中介。
在一些实施例中,解码装置300还可以包括用于与编码视频源112进行通信的可选的编码视频接口336(例如高速串行总线等)。在一些实施例中,解码装置300可以经由网络接口304与编码视频源(诸如编码视频源112)通信。在其他实施例中,编码视频源112可以驻留在存储器312或计算机可读介质332中。
尽管已经描述了大体符合传统的通用计算装置的的示例性解码装置300,但是解码装置300可以是能够根据各种实施例执行指令以对视频进行解码的大量装置中的任何装置,诸如示例性的软件实现的帧间视频解码器500和变换块大小选择子例程1000,例如视频记录装置、视频协处理器和/或加速器、个人计算机、游戏控制台、机顶盒、手持式或可穿戴式计算装置、智能电话或任何其他合适的装置。
例如,解码装置300可以与点播媒体服务进行合作来操作。在至少一个示例性实施例中,点播媒体服务可以基于每个作品和/或订阅向操作解码装置300的用户提供媒体作品(诸如视频内容)的数字副本。解码装置可以经由网络104通过例如编码装置200从未编码视频源108获得这种媒体作品的数字副本。
软件实现的帧间视频编码器
图4示出了根据至少一个实施例的采用残差变换技术的软件实现的帧间视频编码器400(以下称为“编码器400”)的通用功能框图。视频序列的按照显示顺序的一个或多个未编码视频帧(vidfrms)可被提供给定序器404。
定序器404可以将预测编码图片类型(例如I、P或B)分配给每个未编码视频帧并且将帧序列或来自帧序列的帧组重新排序成用于运动预测目的的编码顺序(例如,I型帧之后是P型帧,然后是B型帧)。然后可以按编码顺序将排序的未编码视频帧(seqfrms)输入到块索引器408。
对于每个排序的未编码视频帧(seqfrms),块索引器408可确定当前帧的最大编码块(“LCB”)大小(例如64×64像素),并将未编码帧分成编码块(blcks)的阵列。给定帧内的各个编码块的大小可以变化,例如,从4×4像素到当前帧的LCB大小。
然后每个编码块可以一次一个输入到差分器412,并且可以与从先前编码的编码块(CB)产生的对应预测信号块(pred)进行差分。为了生成预测块(pred),还将向运动估计器416提供编码块(blcks)。在差分器412处进行差分之后,可以通过变换器420(下面讨论)将得到的残差块(res)正向变换为频域表示,以产生变换系数块(tcof)。随后可将变换系数块(tcof)发送到量化器424,从而产生量化系数块(qcf),然后可将量化系数块发送到熵编码器428和本地解码环路430。
在本地解码环路430的开始处,逆量化器432可以对变换系数块(tcof')进行去量化并且将它们传递到逆变换器436以生成去量化残差块(res')。在加法器440处,来自运动补偿预测器442或帧内预测器444的预测块(pred)可以被添加到去量化残差块(res')以生成本地解码块(rec)。本地解码块(rec)然后可以被发送到帧组装器和去块滤波处理器488,其减少块效应并组装恢复的帧(recd),恢复的帧可以用作运动估计器416和运动补偿预测器442的参考帧。在加法器440之后,rec可以被用作参考像素以生成帧内预测器。当预测块与其相邻块具有强背景时,帧内预测器是有用的。
熵编码器428对量化变换系数(qcf)、差分运动矢量(dmv)和其他数据进行编码,从而生成编码的视频比特流448。对于未编码的视频序列的每个帧,编码的视频比特流448可以包括编码的图片数据(例如,编码的量化变换系数(qcf)和差分运动矢量(dmv))和编码的帧头(例如语法信息,诸如当前帧的LCB大小)。
正向整数变换程序
参照变换器420的功能,变换器接收每个编码块的亮度和色度值的残差值块,并将残差值块划分为一个或多个亮度和色度变换块。
在至少一个实施例中,编码块被划分为根据当前编码块大小以及用于编码块的运动补偿或帧内预测的一个或多个预测块(PB)的大小来确定大小的变换块。例如,可以根据图10中所示的组合来分配变换块(TB)大小。变换器420还可以在当前帧的图片头部中设置最大变换块大小标志。
在编码块被分成变换块之后,变换块中的残差值经由例如正向DCT变换操作从空间域转换到频域。在至少一个实施例中,为了提高编码效率,获得变换块的残差值的整数等效值并且可以执行正向整数DCT变换操作。为了进一步提高编码效率,在视频编码过程中利用单指令多数据(SIMD)指令架构可能是有利的。然而,SIMD指令架构的大多数常见实现需要16位的位宽。因此,在至少一个实施例中,可以在一些正向变换操作之后对残差值(并且在解码器一侧,对一些逆变换操作之后的变换系数)执行移位操作以确保残差值和变换系数可以由十六位整数表示。
软件实现的帧间解码器
图5示出了根据至少一个实施例并且适用于解码装置(诸如解码装置300)的相应的软件实现的帧间视频解码器500(以下称为“解码器500”)的逆残差变换技术的通用功能框图。解码器500可以与编码器400处的本地解码器环路430类似地工作。
具体地,可以将待解码的编码视频比特流504提供给熵解码器508,熵解码器508可以对量化系数块(qcf)、差分运动矢量(dmv)、伴随的消息数据分组(msg-data)以及其他数据解码。然后可以通过逆量化器512对量化系数块(qcf)进行逆量化,从而产生去量化系数(cf')。去量化系数(cf')然后可以通过逆变换器516(在下面描述)逆变换到频域之外,从而产生解码残差块(res')。根据预测模式(predMode),加法器520可以添加预测器(pred),该预测器可以是在去块滤波处理之前通过使用相邻块根据帧内预测模式(intraMode)导出的帧内预测器534或者可以是通过使用相应的运动矢量(mv)获得的运动补偿预测器。可以在帧组装器和去块滤波处理器588中对所得到的解码视频(dv)进行去块滤波。帧组装器和去块滤波处理器588的输出处的块(recd)形成视频序列的重构帧,重构帧可以从解码器500输出并且还可以用作解码后续编码块的运动补偿预测器530的参考帧。
逆整数变换程序
参照逆变换器516的功能,逆变换器获得来自逆量化器512的去量化的16比特整数变换系数块。逆变换器516对从逆量化器512获得的变换系数执行逆整数DCT变换操作以对由变换器420执行的前述正向整数DCT变换操作进行逆向,并且恢复残差值。在于2015年3月31日提交的国际专利申请PCT/CN2015/075597(“视频编码系统和方法中的残差变换和逆变换”)中可以找到这种实现方式进一步的信息。
水平相邻的块
图6示出了区域600(例如图片或帧),区域600包括与相邻子块/块630的若干像素631、632、633相邻的当前子块/块640的若干像素641、642、643,块630、640可选地具有相同的大小(例如两者均为8x8或16x16)。在各个变体中,这样的当前块和相邻块可以对应于4×4或更大的编码块、预测块或变换块(例如下面关于图6所描述的)。块630、640可以(可选地)是由沿其各自顶部的水平边界601和它们之间的垂直边界602所界定的连续变换块。如图所示,当前块640也与上面的相邻块650相邻。块640的一个或多个边界601、602上可观察到的块状伪像(例如,明显由图像压缩的量化或其他方面导致的急剧转变)通过如本文所述的去块滤波来缓解。
垂直相邻的块
图7示出了(例如图片或帧的)区域700,区域700包括与相邻块760的像素相邻的当前块770的若干像素771、772、773、774、775,块760、770可选地具有相同大小(例如,8×8或16×16)。例如,这样的当前块和相邻块可以对应于参照图6的编码块、预测块或变换块。如图所示,块760、770两者由其间的水平边界701和沿其各自左侧的垂直边界702界定。在一些变体中,块770可以是块640的实例并且因此可以与感兴趣的另一图像区域780(例如,区域700的小块或邻近相邻块630)相邻。另选地或另外地,块770可以包括具有4像素×4像素的块大小779的子块,如图所示。
角块
图8示出了(例如图片或帧的)区域800,其中,当前块822通过一对线性边界801、802从垂直相邻的相邻块812、水平相邻的相邻块821和对角相邻的块811划分出,如图所示。如这里所描述的,所有这四个块811、812、821、822还具有其他共同的属性(例如全部是编码或变换块)。而且,当前块822可以在一些变型中对块640或块770中的一个或多个进行实例化。
变换块处理例程
图9示出了适合用于至少一个实施例(诸如在此描述的编码器400或解码器500的实例)的变换块处理例程900。
在执行框904处,变换块处理例程900获得正被编码的当前帧的整数残差值的编码块。然后,变换块处理例程900将当前编码块的大小和在运动估计中使用的对应预测块的大小提供给变换块大小选择子例程1000(下面参照图10进行描述),其返回用于当前编码块大小和预测块大小的当前组合的适当色度和亮度变换块大小。
在执行框908处,变换块处理例程900然后根据由上述变换块大小选择子例程1000返回的色度和亮度变换块大小将当前编码块分离成一个或多个16位整数残差值的变换块。
在开始循环框912处,依次处理当前编码块的每个变换块。
在判定框916处,如果当前变换块的每个残差值具有零值,则在执行框920处,变换块处理例程900在当前变换块的变换块头部中设置对应的变换块图案标志。
否则,在判定框916处,如果当前变换块的一个或多个残差值具有非零值,则变换块处理例程900调用正向整数变换子例程1100(在下面参照图11描述),其返回对应的16位整数变换系数块。
在结束循环块924处,变换块处理例程900迭代回到开始循环块912以处理当前编码块的下一变换块(如果有的话),然后变换块处理例程900在终止框999处结束当前编码块。
变换块大小选择子例程
图10示出了适用于至少一个实施例(例如变换块处理例程900)的变换块大小选择子例程1000。
在执行框1004和1008处,变换块大小选择子例程1000获得编码块大小和用于当前编码块的运动估计处理的预测块大小。
在判定框1012处,如果当前编码块的编码块大小是8×8像素,则变换块大小选择子例程1000进行到判定框1016。
在判定框1016处,如果当前编码块的预测块大小是8×8像素,则在执行框1020处,变换块大小选择子例程1000将当前编码块的亮度变换块大小设置为8×8亮度变换系数,并且在执行框1024处,变换块大小确定子例程将当前编码块的色度变换块大小设置为4×4色度变换系数。然后,在返回框1099处,变换块大小确定子例程返回当前编码块的亮度变换块大小和色度变换块大小。
再次参照判定框1016,如果当前编码块的预测块大小不是8×8像素,则在执行框1028处,变换块大小选择子例程1000将当前编码块的亮度变换块大小设置为4×4亮度变换系数。然后,变换块大小选择子例程1000前进到执行框1024。如上所述,在执行框1024处,变换块大小确定子例程将当前编码块的色度变换块大小设置为4×4色度变换系数。然后,变换块大小选择子例程1000在返回框1099处返回当前编码块的亮度变换块大小和色度变换块大小。
再次参照判定框1012,如果当前编码块的编码块大小不是8×8像素,则变换块大小选择子例程1000进行到判定框1036。
在判定框1036处,如果当前编码块的编码块大小是16×16像素,则变换块大小选择子例程1000进行到判定框1040。
在判定框1040处,如果当前编码块的预测块大小是16×16像素,则在执行框1044处,变换块大小选择子例程1000将当前编码块的亮度变换块大小设置为16×16亮度变换系数,并且在执行框1048处,变换块大小确定子例程然后将当前编码块的色度变换块大小设置为8×8色度变换系数。然后,在返回框1099处,变换块大小确定子例程返回当前编码块的亮度变换块大小和色度变换块大小。
再次参照判定框1040,如果当前编码块的预测块大小不是16×16像素,则变换块大小选择子例程1000进行到执行框1028。如上所述,在执行框1028处,变换块大小选择子例程1000将当前编码块的亮度变换块大小设置为4×4亮度变换系数。然后,变换块大小选择子例程1000进行到执行框1024。如上所述,在执行框1024处,变换块大小确定子例程将当前编码块的色度变换块大小设置为4×4色度变换系数。然后,在返回框1099处,变换块大小确定子例程返回当前编码块的亮度变换块大小和色度变换块大小。
再次参照判定框1036,如果当前编码块的编码块大小不是16×16像素,则变换块大小选择子例程1000前进到执行框1044。如上所述,在执行框1044处,变换块大小选择子例程1000将当前编码块的亮度变换块大小设置为16×16亮度变换系数,并且在执行框1048处,变换块大小确定子例程然后将当前编码块的色度变换块大小设置为8×8色度变换系数。然后,在返回框1099处,变换块大小确定子例程返回当前编码块的亮度变换块大小和色度变换块大小。
正向整数变换子例程
图11示出适用于至少一个实施例(例如变换块处理例程900)的正向整数变换子例程1100。
在执行框1104处,正向整数变换子例程例如从变换块处理例程900获得变换块。
在判定框1108处,如果当前变换块是4×4整数变换系数块,则在执行框1112处,正向整数变换子例程1100执行4×4正向变换,例如上述的4×4正向整数变换操作。然后在返回框1199处,正向整数变换子例程1100返回经由4×4整数变换获得的变换系数。
再次参照判定框1108,如果当前变换块不是4×4整数变换系数块,例如是8×8、16×16、32×32或64×64整数变换系数块,则正向整数变换子例程1100进行到判定框1116。
在判定框1116处,如果当前变换块是8×8整数变换系数块,则在执行框1120处,正向整数变换子例程1100执行8×8正向变换,例如上述的8×8正向整数变换操作。在执行框1124处,正向整数变换子例程1100对在执行框1120处经由8×8整数变换获得的变换系数进行操纵,将变换系数向右移位两次以确保变换系数可由不超过16位进行表示。在返回框1199处,正向整数变换子例程1100返回移位后的变换系数。
再次参照判定框1116,如果当前变换块不是8×8整数变换系数块(例如,如果它是16×16、32×32或64×64整数变换系数块),则正向整数变换子例程1100进行到判定框1126。
在判定框1126处,如果当前变换块是16×16整数变换系数块,则在执行框1128处,正向整数变换子例程1100执行16×16正向变换,例如上述的16×16正向整数变换操作。正向整数变换子例程1100然后进行到执行框1124。如上所述,在执行框1124处,正向整数变换子例程1100对在执行框1120处经由8×8整数变换获得的变换系数进行操纵,将变换系数向右移位两次以确保变换系数可以由不超过十六位表示。在返回框1199处,正向整数变换子例程1100返回移位后的变换系数。
再次参照判定框1126,如果当前变换块大于16×16整数变换系数块(例如32×32或64×64整数变换系数块),则在执行框1132处,正向整数变换子例程1100执行大变换程序。在返回框1199处,正向整数变换子例程1100返回大整数变换程序的结果。
图片处理例程
图12示出适用于至少一个实施例(例如本文所述的编码器400或解码器500的实例)的图片处理例程1200。如本领域普通技术人员将认识到的,图12中并未示出编码过程中的所有事件。更确切的,为了清楚起见,一些不重要的内容(诸如本领域众所周知的内容或与呈现的实施例不直接相关的内容)已被省略。
在开始循环框1214中,依次处理系列(例如,数据流)中的每个图片。
在执行框1216处,变换块处理例程1200提取头部(例如,图片头部)的内容,诸如布尔“deblock_enabled_pic”标志值和布尔“deblock_enabled_luma_only_pic”标志值,其效果在下面描述。
在判定框1222处,如果设置了“deblock_enabled_pic”标志,则图片处理例程1200调用DBF块大小确定子例程1300(下面参照图13描述),例程1300返回相应的去块滤波器块大小。然后图片处理例程1200进行到判定框1224。
在判定框1224处,如果设置了“deblock_enabled_luma_only_pic”标志,则图片处理例程1200调用亮度专用DBF应用子例程1400(下面参照图14描述),例程1400将去块滤波器沿着图像中每个合适块的一个或两个边缘应用于亮度分量。在区域600是当前图片的亮度分量的一部分的背景下,例如,这可以触发影响像素641-643的模糊操作,使得越过边界602的转变不太明显。
然而,如果在判定框1224处未设置“deblock_enabled_luma_only_pic”标志,则图片处理例程1200调用DBF应用子例程1500(在下面参照图15进行描述),例程1500将去块滤波器沿着图像中每个合适块的一个或两个边缘应用于亮度和色度分量。在区域700是当前图片的一部分的背景下,例如,这可以触发影响像素771-775的亮度和色度分量的模糊操作,使得越过边界701的转变不太明显。替代地或另外地,在如下所述一些情况下,模糊操作可以缓和边界701上的亮度和色度转变。
在结束循环框1234处,图片处理例程1200迭代回到开始循环框1214以处理序列中的下一图片(如果有的话),否则在终止框1299处停止。
DBF块大小确定子例程
图13示出适用于至少一个实施例(诸如当由图片处理例程1200调用时或者在本文所述的编码器400或解码器500的实例中)的DBF块大小确定子例程1300。
在执行框1302和1304处,DBF块大小确定子例程1300获得“标准”块大小(例如,8×8或16×16)和变换块大小。
在判定框1308处,如果变换块大小小于“标准”块大小,则DBF块大小确定子例程1300在执行框1314处将去块滤波器块大小设置为匹配“标准”块大小(例如,如果“标准”块大小是8x8并且变换块大小是4x4,则设置滤波器块大小为8x8)。否则,DBF块大小确定子例程1300在执行框1316处将去块滤波器块大小设置为匹配变换块大小(例如,如果变换块大小为16×16并且如果“标准”块大小是16×16或更小,则将滤波器块大小设置为16×16)。在任一情况下,在返回框1399处,DBF块大小确定子例程1300然后返回DBF滤波器块大小。这可以发生在例如边缘可行的实施背景下(例如,在通用处理器执行的软件中实现的DBF),其中不可接受的处理负载(例如产生用于去块的太小的变换块大小)将产生(例如最终提供适度和不必要的更好的图像)。这样的去块滤波可以被称为“分层”,只要当情况允许时去块滤波的级别更深(更彻底)。
在一些变体中,去块滤波处理仅应用于一个滤波器块的顶边界和左边界。
亮度专用DBF应用子例程
图14示出了适用于至少一个实施例(例如本文所述的编码器400或解码器500的实例)的亮度专用DBF应用子例程1400。
在开始循环框1408处,依次处理图像中每个块或单色图像的每个块的亮度分量。
在判定框1412处,如果当前块(例如,上面描述的一个或多个块640、770、822的实例)被帧内编码,则在执行框1414处,亮度专用DBF应用子例程1400指示比标称值更强的边界(例如,通过选择边界强度2)。否则亮度专用DBF应用子例程1400进行到判定框1422。
在判定框1422处,如果当前块具有非零的量化变换系数,则在执行框1428处,亮度专用DBF应用子例程1400指示标称强度边界(例如,通过选择边界强度为1或某个其他中间值)。否则亮度专用DBF应用子例程1400调用特定背景边界强度确定子例程1600(在下面参照图16进行描述),其指示标称或较弱的边界强度。
无论哪种情况,在执行框1434处,亮度专用DBF应用子例程1400然后使用应用去块滤波时所确定的边界强度。
在结束循环框1438处,亮度专用DBF应用子例程1400迭代回到开始循环框1408,以处理当前图片中的下一个块(如果有的话),否则在终止框1499处停止。
DBF应用子例程
图15示出适用于至少一个实施例(诸如本文所述的编码器400或解码器500的实例)的DBF应用子例程1500。
在开始循环框1508处,依次处理图像中的每个块。
在判定框1512处,如果当前块(例如,上面描述的一个或多个块640、822的实例)被帧内编码,则在执行框1514处,DBF应用子例程1500指示比标称值更强的边界(例如,通过选择边界强度2)。否则DBF应用子例程1500前进到判定框1522。
在判定框1522处,如果当前块具有非零的量化变换系数,则在执行框1528处,DBF应用子例程1500指示标称强度边界(例如,通过选择边界强度1)。否则,DBF应用子例程1500调用特定背景边界强度确定子例程1600(下面参照图16描述),其指示标称或较弱的边界强度。
无论哪种情况,在执行框1534处,DBF应用子例程1500然后使用应用去块滤波时所确定的边界强度。
在结束循环框1538处,DBF应用子例程1500迭代回到开始循环框1508,以处理当前图片中的下一个块(如果有的话),否则在终止框1599处停止。
边界强度确定子例程
图16示出了适用于至少一个实施例(如本文所述的编码器400或解码器500的实例)的边界强度确定子例程1600。
在执行框1606处,边界强度确定子例程1600确定当前区域的一个或多个属性(例如,一个或多个上述子块/块640、770、822的实例的预测索引、参考索引或运动矢量中的一个或多个))。
在执行框1608处,边界强度确定子例程1600确定相邻区域的相同属性(例如,根据上述一个或多个相邻子块/块630、760、812、821的实例)。
在判定框1614处,边界强度确定子例程1600确定当前区域和相邻区域的预测索引(PI)是否相同(诸如通过确定表示“向前预测”的PI适用于当前块和相邻块二者,或者通过确定表示“向后预测”和“双向预测”的相应PI不相同)。如果两个区域(例如,块)的PI不相同,则在执行框1628处,边界强度确定子例程1600选择标称或中间边界强度(例如具有整数值1)。
否则,边界强度确定子例程1600前进到判定框1616,在判定框1616处,比较当前区域和相邻区域的参考索引(RI)。例如,如果当前区域的RI是“LIST0”并且相邻区域的RI是“LIST1”(例如,表示对不同图片的引用),则在执行框1628处,边界强度确定子例程1600选择标称边界强度。
否则边界强度确定子例程1600进行到执行框1618,在执行框1618处计算(例如,相邻块760和当前块770的)运动矢量之间差值的大小。例如,可以将这种差值计算为欧几里德距离或曼哈顿距离。在执行框1632处,边界强度确定子例程1600将该差值的大小与阈值(例如,一个像素距离)进行比较。如果该差值的大小超过阈值,则在执行框1628处,边界强度确定子例程1600选择标称边界强度。否则在执行框1636处,边界强度确定子例程1600选择较低的边界强度(例如,零)。无论哪种情况,在返回框1699处,边界强度确定子例程1600都将返回所选择的边界强度。
图17示出了根据至少一个实施例的示例性联网视频实现1700。网络1704可以与具有视频功能的可穿戴装置1710、手持装置1720、专用计算装置1730(例如,在一些变型中具有一个或多个专用集成电路1731、1732、1733实例)、游戏装置1740或通用计算机1750(例如,实现为如上所述的一个或多个编码装置200或解码装置300)中的一个或多个实例进行数据通信。
视频压缩大师Peter Symes将视频优化技术描述为“涉及严密保护商业秘密的人类心理视觉系统模型的黑暗艺术”。在缺乏有效的专利法的情况下,很少有市场参与者在这个领域保持活力。在缺乏强有力的信息披露和公平的竞争环境的情况下,未来的发展将变得不那么必要。事实上,本文公开的秘密协议和结构不仅仅是现有技术的当前编解码器设计的单纯表达。以下表达的特定组合不仅仅是由普通技术人员随意组装的设计选择。更确切的,它们实际上是独特的突破,发明人在此向公众披露,以换取适当法律规定的有限期的适当排他使用。
关于以下表达的编号的条款和权利要求,本领域的技术人员将认识到,其中列举的操作通常可以以任何顺序执行。而且,尽管以一个或多个序列呈现各种操作流程,但应该理解的是,各种操作可以以不同于所示顺序的其他顺序执行,或者可以同时执行。除非上下文另有规定,否则此类替代排序的示例可包括重叠、交错、中断、重新排序、增量、预备、补充、同时、反向或其他变体排序。此外,除非上下文另有规定,否则诸如“响应于”、“涉及”或其他过去式形容词的术语通常不旨在排除这些变体。同样在以下编号的条款中,各个方面和实施例的具体组合以简写形式阐述,使得(1)根据各个实施例,对于其中在给定连锁条款中不止一次(通过例如“一”或“一个”)引入“部件”或其他这样的标识符的每个实例,这样的标识可以标识相同的实体或不同的实体;以及(2)以下可以称为“从属”条款的条款在各个实施例中可以包含或可以不包含它们所涉及的“独立”条款的特征或上述其他特征。
条款
条款1.一种计算机实现的用于处理数字视频数据的方法,包括:
识别当前块(例如,项目640、770、822中的一个或多个)和相邻块(例如,项目630、650、760、811、812、821中的一个或多个),当前块和相邻块具有同一大小且它们之间具有线性边界(例如,项目601、602、701、702、801、802中的一个或多个),当前块和相邻块均与线性边界相邻;
确定当前块和相邻块的同一大小小于标准块大小(例如,8像素×8像素的名义上正方形大小);以及
至少对当前块应用去块滤波器,去块滤波器的滤波块大小设置为标准块大小(例如,参见图12或图13)。
条款2.根据条款1所述的计算机实现的用于处理数字视频数据的方法,还包括:
对不具有视频编码器的装置(例如,未配置视频编码器的项目300、1710、1720、1730、1740中的一个或多个)的视频解码器(例如,参见图5)进行配置以执行所述识别步骤、所述确定步骤和所述应用步骤。
条款3.根据条款1所述的计算机实现的用于处理数字视频数据的方法,还包括:
对视频编码器(例如,通用计算机1750中的编码装置200的实例)的解码器环路(例如,通过在本地解码器环路430中包括DBF处理器488的实例)进行配置以执行所述识别步骤、所述确定步骤和所述应用步骤。
条款4.根据上述条款任一项所述的计算机实现的用于处理数字视频数据的方法,其中,将具有设置为标准块大小的滤波块大小的去块滤波器应用到当前块包括:
调用电路(例如,专用电路1731的实例),所述电路配置为:作为对确定当前块和相邻块的同一大小小于标准块大小的自动和有条件的响应,将具有设置为标准块大小的滤波块大小的去块滤波器应用到当前块,并且所述电路还配置为:作为对确定当前块和相邻块的同一大小至少等于标准块大小的自动和有条件的响应,将具有设置为当前块和相邻块的同一大小的滤波块大小的去块滤波器应用到当前块。
条款5.根据上述条款任一项所述的计算机实现的用于处理数字视频数据的方法,还包括:
调用电路(例如,专用电路1732的实例),所述电路配置为:作为对确定当前块和相邻块的同一大小至少等于标准块大小的自动和有条件的响应,将具有设置为当前块和相邻块的同一大小的滤波块大小的去块滤波器应用到当前块。
条款6.根据上述条款任一项所述的计算机实现的用于处理数字视频数据的方法,其中,识别当前块和相邻块还包括:
选择由水平边界分隔的第一块和第二块分别作为相邻块(例如,项目650、760、812中的一个或多个)和当前块(例如,项目640、770、822中的一个或多个),该水平边界是线性边界(例如,项目601、701、802中的一个或多个)。
条款7.根据上述条款任一项所述的计算机实现的用于处理数字视频数据的方法,其中,识别当前块和相邻块还包括:
选择方形块大小作为标准块大小。
条款8.根据上述条款任一项所述的计算机实现的用于处理数字视频数据的方法,其中识别当前块和相邻块还包括:
选择至少8像素×8像素的块大小作为标准块大小。
条款9.根据上述条款任一项所述的计算机实现的用于处理数字视频数据的方法,其中,识别当前块和相邻块还包括:
选择最多8像素×8像素的块大小作为标准块大小。
条款10.根据上述条款任一项所述的计算机实现的用于处理数字视频数据的方法,其中,识别当前块和相邻块还包括:
将从由4像素×4像素、8像素×8像素和16像素×16像素组成的组中选择的块大小识别为所述同一大小(例如,参见图11)。
条款11.根据上述条款任一项所述的计算机实现的用于处理数字视频数据的方法,还包括:
配置游戏装置(例如,项目1740的实例)以执行所述识别步骤、所述确定步骤和所述应用步骤。
条款12.根据上述条款任一项所述的计算机实现的用于处理数字视频数据的方法,还包括:
配置手持式联网计算装置(例如,项目1720、1730中的一个或多个)以执行所述识别步骤、所述确定步骤和所述应用步骤。
条款13.根据上述条款任一项所述的计算机实现的用于处理数字视频数据的方法,还包括:
配置可穿戴联网计算装置(例如,项目1710、1730中的一个或多个)以执行所述识别步骤、所述确定步骤和所述应用步骤。
条款14.根据上述条款任一项所述的计算机实现的用于处理数字视频数据的方法,还包括:
配置通用处理器(位于执行该方法的软件实现的通用计算机1750中)以执行所述识别步骤、所述确定步骤和所述应用步骤。
条款15.根据上述条款任一项所述的计算机实现的用于处理数字视频数据的方法,其中,当前块和相邻块是连续变换块。
条款16.根据上述条款任一项所述的计算机实现的用于处理数字视频数据的方法,还包括:
如果包括当前块和相邻块的图像块被帧内编码,则利用第一边界强度来配置去块滤波器,并且如果图像块没有被帧内编码,则利用比第一边界强度低的第二边界强度来配置去块滤波器(例如,参见图14或图15)。
条款17.根据上述条款任一项所述的计算机实现的用于处理数字视频数据的方法,还包括:
如果包括当前块和相邻块的图像块被帧内编码,则利用第一边界强度来配置去块滤波器,并且如果图像块没有被帧内编码,则利用比第一边界强度低的第二边界强度来配置去块滤波器,如果与滤波块大小相关联的量化变换系数是零,则第二边界强度具有较低强度值,并且如果与滤波块大小相关联的量化变换系数不是零,则第二边界强度具有较高强度值(例如,参见图14或图15)。
关于以下所附权利要求,本领域的技术人员将认识到,其中列举的操作通常可以以任何顺序执行。而且,尽管以一个或多个序列呈现各种操作流程,但应该理解的是,各种操作可以以不同于所示顺序的其他顺序执行,或者可以同时执行。除非上下文另有规定,否则此类替代排序的示例可包括重叠、交错、中断、重新排序、增量、预备、补充、同时、反向或其他变体排序。此外,除非上下文另有规定,否则诸如“响应于”、“涉及”或其他过去式形容词的术语通常不旨在排除这些变体。
尽管在此已经示出和描述了具体实施例,但是本领域的普通技术人员将认识到,在不脱离本公开的范围的情况下,替代和/或等同实现可以替换所示出和描述的具体实施例。本申请旨在覆盖本文讨论的实施例的任何修改或变化。

Claims (14)

1.一种计算机实现的用于处理数字视频数据的方法,包括:
选择步骤,包括选择方形块大小作为标准块大小;
识别步骤,包括识别当前块和相邻块,所述当前块和所述相邻块均具有彼此相同的方形块大小,所述当前块和所述相邻块为以下之一:
彼此水平相邻,之间具有竖直线性边界;或
彼此竖直相邻,之间具有水平线性边界;以及
确定步骤,包括确定所述当前块和所述相邻块的所述相同的方形块大小是否小于所述标准块大小;
应用步骤,包括:
响应于确定所述当前块和所述相邻块的所述相同的方形块大小小于所述标准块大小,至少对所述当前块应用滤波块大小设置为所述标准块大小的去块滤波器;以及
响应于确定所述当前块和所述相邻块的所述相同的方形块大小大于或等于所述标准块大小,至少对所述当前块应用滤波块大小设置为所述当前块和所述相邻块的所述相同的方形块大小的去块滤波器。
2.根据权利要求1所述的计算机实现的用于处理数字视频数据的方法,还包括:
对不具有视频编码器的装置的视频解码器进行配置以执行所述识别步骤、所述确定步骤和所述应用步骤。
3.根据权利要求1所述的计算机实现的用于处理数字视频数据的方法,还包括:
对视频编码器的解码器环路进行配置以执行所述识别步骤、所述确定步骤和所述应用步骤。
4.根据权利要求1所述的计算机实现的用于处理数字视频数据的方法,其中,识别所述当前块和所述相邻块还包括:
选择至少8像素×8像素的方形块大小作为所述标准块大小。
5.根据权利要求1所述的计算机实现的用于处理数字视频数据的方法,还包括:
配置游戏装置以执行所述识别步骤、所述确定步骤和所述应用步骤。
6.根据权利要求1所述的计算机实现的用于处理数字视频数据的方法,还包括:
配置手持式联网计算装置以执行所述识别步骤、所述确定步骤和所述应用步骤。
7.根据权利要求1所述的计算机实现的用于处理数字视频数据的方法,还包括:
配置可穿戴联网计算装置以执行所述识别步骤、所述确定步骤和所述应用步骤。
8.根据权利要求1所述的计算机实现的用于处理数字视频数据的方法,其中,识别所述当前块和所述相邻块还包括:
将从由4像素×4像素、8像素×8像素和16像素×16像素组成的组中选择的块大小识别为所述相同的方形块大小。
9.根据权利要求1所述的计算机实现的用于处理数字视频数据的方法,还包括:
配置通用处理器以执行所述识别步骤、所述确定步骤和所述应用步骤。
10.根据权利要求1所述的计算机实现的用于处理数字视频数据的方法,其中,所述当前块和所述相邻块是连续变换块。
11.根据权利要求1所述的计算机实现的用于处理数字视频数据的方法,还包括:
如果包括所述当前块和所述相邻块的图像块被帧内编码,则利用第一边界强度来配置所述去块滤波器,并且如果图像块没有被帧内编码,则利用比所述第一边界强度低的第二边界强度来配置所述去块滤波器。
12.根据权利要求1所述的计算机实现的用于处理数字视频数据的方法,还包括:
如果包括所述当前块和所述相邻块的图像块被帧内编码,则利用第一边界强度来配置所述去块滤波器,并且如果所述图像块没有被帧内编码,则利用比第一边界强度低的第二边界强度来配置所述去块滤波器,如果与所述滤波块大小相关联的量化变换系数是零,则所述第二边界强度具有较低强度值,并且如果与所述滤波块大小相关联的量化变换系数不是零,则所述第二边界强度具有较高强度值。
13.根据权利要求1所述的计算机实现的用于处理数字视频数据的方法,其中,通用处理器通过仅在软件中实现的所述去块滤波器执行所述识别步骤、所述确定步骤和所述应用步骤。
14.一种用于处理视频数据的方法,所述方法包括:
选择方形块大小作为标准块大小;
识别当前块和相邻块,所述当前块和所述相邻块均具有彼此相同的方形块大小,所述当前块和所述相邻块为以下之一:
彼此水平相邻,之间具有竖直线性边界;或
彼此竖直相邻,之间具有水平线性边界;
确定所述当前块和所述相邻块的所述相同的方形块大小是否小于所述标准块大小;
响应于确定所述当前块和所述相邻块的所述相同的方形块大小小于所述标准块大小,至少对所述当前块应用滤波块大小设置为所述标准块大小的去块滤波器;以及
响应于确定所述当前块和所述相邻块的所述相同的方形块大小大于或等于所述标准块大小,至少对所述当前块应用滤波块大小设置为所述当前块和所述相邻块的所述相同的方形块大小的去块滤波器。
CN201580083623.2A 2015-09-30 2015-09-30 视频处理系统和方法中的分层去块滤波 Active CN108353192B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2015/091307 WO2017054194A1 (en) 2015-09-30 2015-09-30 Layered deblocking filtering in video processing systems and methods

Publications (2)

Publication Number Publication Date
CN108353192A CN108353192A (zh) 2018-07-31
CN108353192B true CN108353192B (zh) 2022-01-04

Family

ID=58422624

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201580083623.2A Active CN108353192B (zh) 2015-09-30 2015-09-30 视频处理系统和方法中的分层去块滤波

Country Status (6)

Country Link
US (1) US10659779B2 (zh)
EP (1) EP3357248B1 (zh)
JP (1) JP2018530259A (zh)
KR (1) KR20180061273A (zh)
CN (1) CN108353192B (zh)
WO (1) WO2017054194A1 (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3590259A4 (en) * 2017-02-23 2020-08-19 RealNetworks, Inc. STRUCTURE AND SYNTAX OF CODING BLOCK BINARY FLOWS IN VIDEO CODING SYSTEMS AND METHODS
CN117956195A (zh) * 2018-01-08 2024-04-30 三星电子株式会社 编码方法及其设备以及解码方法及其设备
CN112335250A (zh) * 2018-06-28 2021-02-05 韩国电子通信研究院 用于对图像进行编码/解码的方法和设备以及用于存储比特流的记录介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008193548A (ja) * 2007-02-07 2008-08-21 Nippon Telegr & Teleph Corp <Ntt> 適応デブロッキング処理方法,装置および適応デブロッキング処理プログラム並びにコンピュータ読み取り可能な記録媒体
JP2011223302A (ja) * 2010-04-09 2011-11-04 Sony Corp 画像処理装置と画像処理方法
WO2011145601A1 (ja) * 2010-05-18 2011-11-24 ソニー株式会社 画像処理装置と画像処理方法
CN103999469A (zh) * 2011-10-07 2014-08-20 高通股份有限公司 执行相依于变换的解块滤波

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006157481A (ja) * 2004-11-30 2006-06-15 Canon Inc 画像符号化装置及びその方法
WO2012096614A2 (en) 2011-01-14 2012-07-19 Telefonaktiebolaget L M Ericsson (Publ) A method for filter control and a filtering control device
JP5741092B2 (ja) * 2011-03-15 2015-07-01 富士通株式会社 画像符号化方法及び画像符号化装置
EP2870752A1 (en) * 2012-07-06 2015-05-13 Telefonaktiebolaget LM Ericsson (Publ) Restricted intra deblocking filtering for video coding
EP2920962A4 (en) 2012-11-13 2016-07-20 Intel Corp ADAPTIVE TRANSFORMATION ENCODING OF CONTENT FOR NEXT GENERATION VIDEO
FR2998930B1 (fr) 2012-12-05 2014-12-26 Peugeot Citroen Automobiles Sa Porte-agrafe comprenant des moyens de centrage
CN107637078B (zh) 2015-03-31 2020-05-26 瑞尔数码有限公司 整数变换系数的视频译码系统和方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008193548A (ja) * 2007-02-07 2008-08-21 Nippon Telegr & Teleph Corp <Ntt> 適応デブロッキング処理方法,装置および適応デブロッキング処理プログラム並びにコンピュータ読み取り可能な記録媒体
JP2011223302A (ja) * 2010-04-09 2011-11-04 Sony Corp 画像処理装置と画像処理方法
CN102823246A (zh) * 2010-04-09 2012-12-12 索尼公司 图像处理设备和图像处理方法
WO2011145601A1 (ja) * 2010-05-18 2011-11-24 ソニー株式会社 画像処理装置と画像処理方法
CN102934429A (zh) * 2010-05-18 2013-02-13 索尼公司 图像处理装置和图像处理方法
CN103999469A (zh) * 2011-10-07 2014-08-20 高通股份有限公司 执行相依于变换的解块滤波

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
Development of HEVC deblocking filter;Andrey Norkin,et al.;《4th JCT-VC Meeting in Daegu》;20110124;全文 *
Variable block-based deblocking filter for H.264/AVC on low-end and low-bit rates terminals;Seung-Ho Shin,et al.;《Signal Processing: Image Communication》;20100430;第25卷(第4期);255-267 *
高效视频编码的环路去块效应滤波技术研究;郭颖;《中国优秀硕士学位论文全文数据库》;20140430;I136-209 *

Also Published As

Publication number Publication date
KR20180061273A (ko) 2018-06-07
EP3357248B1 (en) 2021-07-28
CN108353192A (zh) 2018-07-31
US20180295362A1 (en) 2018-10-11
EP3357248A4 (en) 2019-03-27
JP2018530259A (ja) 2018-10-11
EP3357248A1 (en) 2018-08-08
US10659779B2 (en) 2020-05-19
WO2017054194A1 (en) 2017-04-06

Similar Documents

Publication Publication Date Title
US10531086B2 (en) Residual transformation and inverse transformation in video coding systems and methods
WO2007117429A2 (en) Method of reducing computations in intra-prediction and mode decision processes in a digital video encoder
US10735729B2 (en) Residual transformation and inverse transformation in video coding systems and methods
US20120263225A1 (en) Apparatus and method for encoding moving picture
CN108353192B (zh) 视频处理系统和方法中的分层去块滤波
JP6678357B2 (ja) ビデオ符号化システムにおける動きベクトルの選択及び予測方法
WO2018152750A1 (en) Residual transformation and inverse transformation in video coding systems and methods
US10887589B2 (en) Block size determination for video coding systems and methods
US20210250579A1 (en) Intra-picture prediction in video coding systems and methods
JP6748657B2 (ja) 圧縮ビデオビットストリームに付属メッセージデータを含めるシステムおよび方法
WO2018165917A1 (en) Condensed coding block headers in video coding systems and methods
Lohar et al. Effective compression of digital video
WO2020248099A1 (en) Perceptual adaptive quantization and rounding offset with piece-wise mapping function
WO2020142095A1 (en) Systems, methods, and articles for adaptive lossy decoding

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
TA01 Transfer of patent application right

Effective date of registration: 20211119

Address after: Washington State

Applicant after: REALNETWORKS, Inc.

Address before: Washington State

Applicant before: REALNETWORKS, Inc.

Applicant before: Cai Jiayang

TA01 Transfer of patent application right
GR01 Patent grant
GR01 Patent grant