CN111587576B - 编码方法、解码方法、编码装置、解码装置以及记录介质 - Google Patents

编码方法、解码方法、编码装置、解码装置以及记录介质 Download PDF

Info

Publication number
CN111587576B
CN111587576B CN201880085180.4A CN201880085180A CN111587576B CN 111587576 B CN111587576 B CN 111587576B CN 201880085180 A CN201880085180 A CN 201880085180A CN 111587576 B CN111587576 B CN 111587576B
Authority
CN
China
Prior art keywords
pixel
unit
group
block
offset
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
CN201880085180.4A
Other languages
English (en)
Other versions
CN111587576A (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.)
Socionext Inc
Original Assignee
Socionext 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 Socionext Inc filed Critical Socionext Inc
Publication of CN111587576A publication Critical patent/CN111587576A/zh
Application granted granted Critical
Publication of CN111587576B publication Critical patent/CN111587576B/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/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/46Embedding additional information in the video signal during the compression process
    • 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/119Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
    • 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/132Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
    • 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
    • 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/182Methods 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 a pixel
    • 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/186Methods 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 a colour or a chrominance component
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/80Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
    • H04N19/82Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation involving filtering within a prediction loop

Landscapes

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

Abstract

本发明提供编码方法、解码方法、编码装置、解码装置、编码程序和解码程序。提高画质,并且减少SAO参数的比特量。编码方法的特征在于,具有:计算工序,将编码单位的块的像素值的灰度分割为具有规定灰度数的多个组类,对属于该多个组类中的各个组类的像素数进行计算;组类加法工序,选择计算出的像素数较多的上位n个(n为1以上的整数)组类,对属于所选择的n个组类中的各个组类的像素的像素值加上偏移值;以及第1信令工序,对包含加上的偏移值的SAO参数进行信令。

Description

编码方法、解码方法、编码装置、解码装置以及记录介质
技术领域
本发明涉及编码方法、解码方法、编码装置、解码装置、编码程序和解码程序。
背景技术
作为与动态图像数据的压缩编码相关的国际标准,公知有H.265/HEVC。在H.265/HEVC中,作为抑制压缩编码时的画质的劣化的环路滤波技术,导入像素自适应偏移(SAO(Sample Adaptive Offset:样本自适应偏移))。
按照H.265/HEVC导入的像素自适应偏移包含边缘偏移和带偏移,能够在压缩编码时应用任意的偏移。其中,带偏移是如下的处理:将像素值的灰度分割为32个带,从其中选择基于所决定的带位置的连续的4个带,并对属于该4个带中的各个带的像素的像素值加上(或者减去)偏移值。
通过应用该带偏移,能够调节与特定的连续的灰度值对应的像素值,因此能够减少压缩编码时的误差,改善画质。
专利文献1:日本特表2014-534762号公报
然而,现状的带偏移不仅带宽度较宽,而且以特定的连续的灰度值为对象,因此很难进行像素值的细节调节,具有画质的提高存在极限的问题。
例如,由于色差中的灰度值的中央值附近为无彩色,因此在存在失真的情况下,容易产生主观性的画质劣化,但在现状的带偏移中,在带宽度较宽而且中央值以外的连续的4个带成为对象的情况下,无法对合适的对象加上(或者减去)偏移值。由此,在当前研究中的下一代视频编解码器(接着H.265/HEVC的下一代编解码器)中,期望带偏移中的画质的提高。
另外,带偏移按每个处理对象的块,对包含所决定的带位置和与所选择的4个带分别对应的偏移值的SAO参数进行信令并发送到解码器。因此,存在向解码器发送的SAO参数的比特量大的问题。由此,在当前研究中的下一代视频编解码器中,期望减少SAO参数的比特量。
发明内容
在一个方式中,目的在于,提高画质,并且减少SAO参数的比特量。
根据一个方式,编码方法具备以下的结构。即,特征在于,具有:计算工序,将编码单位的块的像素值的灰度分割为具有规定灰度数的多个组类,对属于该多个组类中的各个组类的像素数进行计算;组类加法工序,选择计算出的像素数较多的上位n个(n为1以上的整数)组类,对属于所选择的n个组类中的各个组类的像素的像素值加上偏移值;以及第1信令工序,对包含加上的偏移值的SAO参数进行信令。
能够提高画质,并且减少SAO参数的比特量。
附图说明
图1是示出编码器和解码器的应用例的图。
图2是示出编码器和解码器的其他的应用例的图。
图3是示出编码器的硬件结构的一例子的图。
图4是示出编码器的功能结构的一例子的图。
图5是示出一般的编码器的环路滤波部的功能结构的一例子的图。
图6是示出基于一般的编码器的像素自适应偏移处理的流程的流程图。
图7是用于对一般的编码器的带偏移处理的处理内容进行说明的图。
图8是示出基于一般的编码器的带偏移处理的流程的流程图。
图9是示出基于一般的编码器的信令处理的流程的流程图。
图10是示出第1实施方式的编码器的环路滤波部的功能结构的一例子的图。
图11是示出第1实施方式的编码器的组类偏移处理的具体例的第1图。
图12是示出第1实施方式的编码器的组类偏移处理的具体例的第2图。
图13是示出第1实施方式的编码器的组类偏移处理的具体例的第3图。
图14是示出基于第1实施方式的编码器的组类偏移处理的流程的流程图。
图15是示出基于第1实施方式的编码器的信令处理的流程的流程图。
图16是示出解码器的功能结构的一例子的图。
图17是示出一般的解码器的环路滤波部的功能结构的一例子的图。
图18是示出基于一般的解码器的像素自适应偏移处理的流程的流程图。
图19是示出基于一般的解码器的带偏移处理的流程的流程图。
图20是示出第1实施方式的解码器的环路滤波部的功能结构的一例子的图。
图21是示出基于第1实施方式的解码器的组类偏移处理的流程的流程图。
图22是示出第2实施方式的编码器的环路滤波部的功能结构的一例子的图。
具体实施方式
以下,一边参照附图一边对各实施方式进行说明。此外,在本说明书和附图中,对于实质上具有相同的功能结构的结构要素,通过标注相同的附图标记而省略重复的说明。
[第1实施方式]
<1.编码器和解码器的应用例>
首先,对编码器(编码装置)和解码器(解码装置)的应用例进行说明。图1是示出编码器和解码器的应用例的图。
如图1所示,将编码器110配置于发送装置,将解码器120配置于接收装置,经由网络160进行连接,由此能够形成应用了编码器110和解码器120的图像处理系统100。
在图像处理系统100中,配置于发送装置的编码器110对所输入的动态图像数据进行编码而生成数据流(编码列)。另外,经由网络160将发送装置所生成的数据流发送给接收装置。
接收装置接收数据流。另外,配置于接收装置的解码器120对数据流进行解码而生成并显示动态图像数据。
通过形成该图像处理系统100,能够减少发送动态图像数据时的发送负荷。因此,图像处理系统100能够应用于互联网领域、播放领域、通信领域等各种领域。
应用例100a示出将图像处理系统100应用于互联网领域的例子。在应用例100a的情况下,接收装置120的一例子亦即个人计算机121a、智能终端121b等接收并显示从发送装置110的一例子亦即服务器装置111发送的数据流。由此,个人计算机121a、智能终端121b的用户能够经由互联网对服务器装置111保存的动态图像数据进行视听。
应用例100b示出将图像处理系统100应用于播放领域的例子。在应用例100b的情况下,接收装置120的一例子亦即电视机122接收并显示从发送装置110的一例子亦即播放用发送机112发送的数据流。由此,例如电视机122的用户能够对播放用发送机112发送的播放内容进行视听。
应用例100c示出将图像处理系统100应用于通信领域的例子。在应用例100c的情况下,接收装置120的一例子亦即电视电话机123接收并显示从发送装置110的一例子亦即电视电话机113发送的数据流。由此,电视电话机123的用户能够一边观看通话对象的脸部一边进行通话。
图2是示出编码器和解码器的其他的应用例的图。如图2所示,通过将编码器110和解码器120一体构成,能够形成应用了编码器110和解码器120的积蓄装置200。
在积蓄装置200中,编码器110对所输入的动态图像数据进行编码,将所生成的数据流储存于记录介质。另外,在积蓄装置200中,解码器120对储存于记录介质的数据流进行解码来生成并显示动态图像数据。
通过形成该积蓄装置200,能够减少储存动态图像数据时的容量,因此例如能够应用于积蓄领域。应用例200a示出将积蓄装置200应用于积蓄领域的例子。在应用例200a的情况下,在积蓄装置200的一例子亦即录像机211中,内置的编码器110将对动态图像数据进行编码而生成的数据流储存于记录介质212。另外,在录像机211中,内置的解码器120通过对从记录介质212读出的数据流进行解码而生成动态图像数据,并显示于监视器213。由此,录像机211的用户能够高效地积蓄所取得的动态图像数据。
<2.编码器和解码器的硬件结构>
接下来,对编码器和解码器的硬件结构进行说明。此外,编码器110和解码器120具有相同的硬件结构,因此这里,对编码器110的硬件结构进行说明。
图3是示出编码器的硬件结构的一例子的图。如图3所示,编码器110具有CPU(Central Processing Unit:中央处理单元)301、ROM(Read Only Memory:只读存储器)302、RAM(Random Access Memory:随机存取存储器)303。CPU301、ROM302、RAM303形成所谓的计算机。另外,编码器110具有辅助存储装置304、输入装置305、显示装置306、连接装置307、驱动装置308。此外,编码器110的各硬件经由总线309而相互连接。
CPU301执行安装于辅助存储装置304的各种程序(例如,编码程序(在解码器120的情况下为解码程序)等)。
ROM302是非易失性存储器。ROM302作为存储有由CPU301执行安装于辅助存储装置304的各种程序所需的各种程序、数据等的主存储设备发挥功能。具体而言,ROM302存储有BIOS(Basic Input/Output System:基本输入/输出系统)、EFI(Extensible FirmwareInterface:扩展固件)等的引导程序等。
RAM303是DRAM(Dynamic Random Access Memory:动态随机存取存储器)、SRAM(Static Random Access Memory:静态随机存取存储器)等易失性存储器。RAM303作为提供由CPU301执行安装于辅助存储装置304的各种程序时展开的作业区域的主存储设备发挥功能。
辅助存储装置304是存储有所安装的各种程序、执行各种程序时使用的信息的辅助存储设备。
输入装置305是对编码器110输入各种指示时使用的输入设备。
显示装置306是显示编码器110的内部信息的显示设备。连接装置307是用于编码器110接受来自外部的动态图像数据、或者编码器110与解码器120连接而进行通信的通信设备。
驱动装置308是用于设置计算机可读取的记录介质310的设备。这里所说的记录介质310包含像CD-ROM、软盘、光磁盘等那样对信息进行光学记录、电记录或者磁记录的介质。或者,记录介质310也可以是包含如ROM、闪存等那样对信息进行电记录的半导体存储器等。
此外,安装于辅助存储装置304的各种程序也可以例如通过将所分发的记录介质310设置于驱动装置308,并由驱动装置308读出记录于该记录介质310的各种程序而被安装。或者,安装于辅助存储装置304的各种程序通过经由连接装置307从网络160下载而被安装。
此外,图3所示的硬件结构仅仅是一例子,根据应用方式,当然也可以除去图3所示的硬件的一部分,或者替换成其他的硬件。
<3.编码器的功能结构>
接下来,关于通过执行编码程序而实现的编码器110的功能结构进行说明。图4是示出编码器的功能结构的一例子的图。如图4所示,编码器110具有块分割部401、正交变换部402、量化部403、熵编码部404。另外,编码器110具有逆量化部405、逆正交变换部406、环路滤波部407、解码图像存储部408、帧内/帧间预测部409。
块分割部401将所输入的动态图像数据中包含的各画面(输入画面)按照流而分割成固定尺寸的块。而且,块分割部401将固定尺寸的块分别进一步递归地分割为编码单位的块。
此外,在H.265/HEVC的块分割部中,将输入画面按照流分割为固定尺寸的块即CTU(Coding Tree Unit:编码树单元)。另外,在H.265/HEVC的块分割部中,将各CTU的块分割为编码单位的块即CU(Coding Unit:编码单元)。而且,在H.265/HEVC的块分割部中,将各CU的块分割为预测单元(PU(Prediction Unit))和变换单元(TU(Transform Unit))的块。
然而,在接着H.265/HEVC的下一代编解码器中,预计废除PU、TU,全部分割为CU的块。因此,在本实施方式中,关于块分割部401将CTU的块全部分割为CU的块的情况进行说明。此外,根据在接着H.265/HEVC的下一代编解码器中研究的内容,CTU的块的尺寸最大为128像素×128像素,因此以下,对CTU的块的尺寸为128像素×128像素的情况进行说明。
由块分割部401分割为CU的块的各输入画面向帧内/帧间预测部409通知,并且用于预测残差信号的计算。
正交变换部402针对基于输入画面内的各CU的块的输入图像与对应的各CU的块的预测图像的差分而计算出的预测残差信号执行正交变换处理。
量化部403通过对执行了正交变换处理的预测残差信号进行量化而生成量化信号,并向熵编码部404和逆量化部405输出。
熵编码部404通过对量化信号进行熵编码,来生成并输出数据流。
逆量化部405对量化信号进行逆量化,并向逆正交变换部406输出。逆正交变换部406针对逆量化的量化信号执行逆正交变换处理。针对由逆正交变换部406得到的信号例如加上由帧内/帧间预测部409生成的预测图像,由此生成解码图像,并向环路滤波部407输入。
环路滤波部407进行减少所输入的解码图像的编码噪声的滤波处理。此外,环路滤波部407还具有去块滤波(Deblocking Filter)部、像素自适应偏移(Sample AdaptiveOffset)处理部(详细情况后述说明)。在环路滤波部407具有的这些各部分执行处理时使用的参数(例如,像素自适应偏移处理部执行像素自适应偏移处理时使用的像素自适应偏移参数(SAO参数)等)被进行信令。由环路滤波部407进行信令后的参数(包含SAO参数)作为附加信息而被熵编码部404组入数据流。
解码图像存储部408按每个画面而存储由环路滤波部407进行了滤波处理后的解码图像。
帧内/帧间预测部409进行使用解码中的画面内的各CU的块的解码图像而生成处理对象的CU的块的预测图像的帧内预测(画面内预测)。另外,帧内/帧间预测部409进行运动补偿帧间预测(画面间预测),在该运动补偿帧间预测中,使用参照画面内的各CU的块的解码图像在画面间进行运动补偿,生成处理对象的CU的块的预测图像。
而且,帧内/帧间预测部409输出通过帧内预测而生成的各CU的块的预测图像即帧内预测图像或者通过运动补偿帧间预测而生成的各CU的块的预测图像即帧间预测图像中的任意一方。
从帧内/帧间预测部409输出的各CU的块的预测图像用于与输入画面内的各CU的块的输入图像的残差计算,将计算出的预测残差信号向正交变换部402输入。另外,从帧内/帧间预测部409输出的预测图像与由逆正交变换部406得到的信号相加,作为解码图像向环路滤波部407输入。
<4.环路滤波部的说明>
接着,对编码器110的环路滤波部407的详细情况进行说明。此外,在对编码器110的环路滤波部407的详细情况进行说明时,首先,作为比较对象,对一般的(H.265/HEVC的)编码器的环路滤波部进行详细地说明。以下,在“4.1”~“4.4”之前,对一般的编码器的环路滤波部进行详细地说明。然后,在“4.5”~“4.8”中,对第1实施方式的编码器110的环路滤波部407进行详细地说明。
<4.1一般的编码器的环路滤波部的功能结构>
图5是示出一般的编码器的环路滤波部的功能结构的一例子的图。如图5所示,环路滤波部具有去块滤波部510、像素自适应偏移处理部520。
去块滤波部510通过对处理对象的块的解码图像进行滤波处理,来减少在对输入画面内的各CU的块的输入图像进行编码时在块边界产生的失真。像素自适应偏移处理部520按像素单位对由去块滤波部510进行了滤波处理后的处理对象的块的解码图像进行分类,针对各像素加上与分类对应的偏移值。
此外,具体而言,像素自适应偏移处理部520具有边缘偏移处理部521、带偏移处理部522、选择部523。
边缘偏移处理部521根据在被指定为边缘偏移组类的方向上连续的3个像素的像素值的大小关系来对边缘状态进行分类。另外,边缘偏移处理部521将与边缘状态的分类对应的偏移值与处理对象的块的解码图像的像素值相加。而且,边缘偏移处理部521向选择部523通知对像素值加上偏移值而得的处理对象的块。
此外,边缘偏移处理部521一边变更与边缘偏移处理相关的SAO参数,一边对各个SAO参数执行这些处理(边缘偏移处理)。
带偏移处理部522将处理对象的块的解码图像能够取得的像素值的灰度分割为32个带,从其中选择基于所决定的带位置的连续的4个带。而且,带偏移处理部522对属于该4个带中的各个带的像素的像素值加上(或者减去)偏移值。
具体而言,如图5的右侧所示,带偏移处理部522具有块读出部541、SAO参数决定部542、像素值变更部543。块读出部541读出像素自适应偏移处理部520所取得的各块的解码图像中的、处理对象的块的解码图像,向像素值变更部543通知。SAO参数决定部542将处理对象的块的解码图像能够取得的像素值的灰度分割为32个带,并且决定与带偏移处理相关的SAO参数(带位置、偏移值),向像素值变更部543输出。
像素值变更部543对处理对象的块的解码图像的各色成分(亮度信号(Y)、色差信号(Cb、Cr))的像素值中的、属于基于带位置的连续的4个带中的各个带的像素的像素值加上偏移值。另外,像素值变更部543将加上偏移值而得的处理对象的块的解码图像和与带偏移处理相关的SAO参数(带位置、偏移值)一同向选择部523通知。
此外,带偏移处理部522一边变更与带偏移处理相关的SAO参数(带位置、偏移值)一边对各个SAO参数执行这些处理(带偏移处理)。
选择部523针对处理对象的块的解码图像,分别取得由边缘偏移处理部521进行的各处理结果和由带偏移处理部522进行的各处理结果,计算速率失真(RD(RateDistortion))成本。另外,选择部523判定计算出的RD成本最低的处理结果,对在所判定的处理结果的计算中使用的SAO参数进行信令。
<4.2基于一般的编码器的像素自适应偏移处理部的像素自适应偏移处理的流程>
接下来,对基于一般的编码器的像素自适应偏移处理部520的像素自适应偏移处理的流程进行说明。图6是示出基于一般的编码器的像素自适应偏移处理的流程的流程图。
若针对处理对象的块,完成基于去块滤波部510的去块滤波处理,则像素自适应偏移处理部520开始图6所示的像素自适应偏移处理。此外,这里,为了说明的简单化,对一个处理对象的块的处理进行说明。
在步骤S601中,像素自适应偏移处理部520取得处理对象的块。
在步骤S602中,边缘偏移处理部521读出所取得的处理对象的块,使用与边缘偏移处理相关的规定的SAO参数进行边缘偏移处理。
在步骤S603中,选择部523针对步骤S602的边缘偏移处理的处理结果,计算RD成本。
在步骤S604中,边缘偏移处理部521判定是否针对处理对象的块,使用预先决定的范围内的全部的SAO参数(与边缘偏移处理相关的SAO参数)来执行边缘偏移处理。
当在步骤S604中,判定为存在边缘偏移处理的执行中未使用的SAO参数的情况下(在步骤S604中为否的情况下),返回步骤S602。
另一方面,当在步骤S604中,判定为使用预先决定的范围内的全部的SAO参数来执行边缘偏移处理的情况下,进入步骤S605。
在步骤S605中,带偏移处理部522读出处理对象的块,使用与带偏移处理相关的规定的SAO参数来进行带偏移处理(详细情况后述说明)。
在步骤S606中,选择部523针对步骤S605的带偏移处理的处理结果,计算RD成本。
在步骤S607中,带偏移处理部522判定针对处理对象的块是否使用预先决定的范围内的全部的SAO参数(与带偏移处理相关的SAO参数)来执行带偏移处理。
当在步骤S607中,判定为存在带偏移处理的执行中未使用的SAO参数的情况下(在步骤S607中为否的情况下),返回步骤S605。
另一方面,当在步骤S607中判定为使用预先决定的范围内的全部的SAO参数执行了带偏移处理的情况下,进入步骤S608。
在步骤S608中,选择部523对由边缘偏移处理部521进行的各处理结果以及由带偏移处理部522进行的各处理结果各自的RD成本进行比较,判定RD成本最低的处理结果。另外,选择部523确定在所判定的处理结果的计算中使用的SAO参数。
在步骤S609中,选择部523输出所判定的处理结果作为像素自适应偏移处理的处理结果。
在步骤S610中,选择部523对特定的SAO参数进行信令处理(详细情况后述说明)。
<4.3一般的编码器的带偏移处理(步骤S605)的详细情况>
接下来,对一般的编码器的带偏移处理(步骤S605)的详细情况进行说明。
(1)带偏移处理的处理内容
首先,对带偏移处理(步骤S605)的处理内容进行说明。图7是用于对一般的编码器的带偏移处理的处理内容进行说明的图。其中,图7的700a示出处理对象的块。如图7的700a所示,在一般的编码器的情况下,在解码中的画面710中对CTU单位的块执行带偏移处理。图7的700a的例子示出对128像素×128像素的CTU720的块执行带偏移处理,生成CTU720’的块作为处理结果的情形。
图7的700b示出带偏移处理的具体例。这里,说明针对解码中的画面710的各色成分(亮度信号(Y)、色差信号(Cb、Cr))中的色差信号(Cr)的带偏移处理。
如图7的700b所示,在解码中的画面710中,在处理对象的块的解码图像中的色差信号(Cr)的能够取得的像素值为256灰度的情况下,在像素值变更部543中,将该256灰度分割为32个带。由此,每1带的灰度数为8灰度。
这里,SAO参数决定部542输出箭头730所示的带位置作为针对CTU720的块的解码图像的带位置。在该情况下,像素值变更部543确定带731~734作为连续的4个带。
而且,像素值变更部543对CTU720的块的解码图像中包含的各像素中的、属于带731的像素的色差信号(Cr)的像素值加上偏移值V1。同样,像素值变更部543对CTU720的块的解码图像中包含的各像素中的、属于带732的像素的色差信号(Cr)的像素值加上偏移值V2。同样,像素值变更部543对CTU720的块的解码图像中包含的各像素中的、属于带733的像素的色差信号(Cr)的像素值加上偏移值V3。同样,像素值变更部543对CTU720的块的解码图像中包含的各像素中的、属于带734的像素的色差信号(Cr)的像素值加上偏移值V4
这样,在带偏移处理部522中,使用与带偏移处理相关的SAO参数=(箭头730所示的带位置、偏移值V1~V4),对CTU720的块的解码图像进行带偏移处理。此外,在带偏移处理部522中,对亮度信号(Y)、色差信号(Cb)也进行相同的带偏移处理。由此,作为带偏移处理的处理结果,生成CTU720’的块。
此外,对于连续的4个带分别加上(或者减去)的偏移值V1~V4可以是不同的值也可以是相同的值(1种值)。
(2)带偏移处理的流程
接着,对基于一般的编码器的带偏移处理(步骤S605)的详细的流程图进行说明。图8是示出基于一般的编码器的带偏移处理的流程的流程图。
在步骤S801中,块读出部541读出像素自适应偏移处理部520所取得的各块的解码图像中的、处理对象的块的解码图像。
在步骤S802中,作为关于带偏移处理的SAO参数,SAO参数决定部542按每一色成分决定“带位置”、作为连续的4个带的偏移值的“偏移的绝对值”和“偏移代码”。此外,由SAO参数决定部542决定的与带偏移处理相关的SAO参数的范围按每一色成分而预先决定,SAO参数决定部542依次决定该范围内的SAO参数。另外,SAO参数决定部542将按每一色成分而决定的与带偏移处理相关的SAO参数(各色成分的带位置、4个偏移绝对值、4个偏移代码)依次向像素值变更部543输出。
在步骤S803中,像素值变更部543使用与带偏移处理相关的SAO参数(各色成分的带位置、4个偏移绝对值、4个偏移代码)按每一色成分变更处理对象的块的解码图像的像素值。
<4.4基于一般的编码器的信令处理(步骤S610)的详细情况>
接下来,对基于一般的编码器的信令处理(步骤S610)的详细情况进行说明。图9是示出基于一般的编码器的信令处理的流程的流程图。其中,这里关于如下的情况进行说明,根据RD成本比较,判定为使用与带偏移处理的SAO参数相关的带偏移处理的处理结果为RD成本最低的处理结果。
在步骤S901中,选择部523在像素自适应偏移处理中,对表示选择了带偏移处理的处理结果的情况的信息进行信令。
在步骤S902中,选择部523对在计算出RD成本最低的处理结果时的与带偏移处理相关的SAO参数亦即各色成分的4个偏移绝对值进行信令。
在步骤S903中,选择部523对在计算出RD成本最低的处理结果时的与带偏移处理相关的SAO参数亦即各色成分的4个偏移代码进行信令。
在步骤S904中,选择部523对在计算出RD成本最低的处理结果时的与带偏移处理相关的SAO参数亦即各色成分的带位置进行信令。
<4.5第1实施方式的编码器的环路滤波部的功能结构>
接着,对第1实施方式的编码器110的环路滤波部407的功能结构进行说明。
图10的右侧是示出第1实施方式的编码器的环路滤波部的功能结构的一例子的图。此外,关于使用图5而说明的、与一般的编码器的环路滤波部相同的功能,标注相同的附图标记,这里省略说明。
与图5的不同点在于,像素自适应偏移处理部520具有组类偏移处理部1001这点;和选择部1002的功能与选择部523的功能不同这点。此外,像后述那样,组类偏移处理部1001也能够减少色差失真,还具有作为CAR(Chroma Artifact Reduction:色度伪影减少)SAO的功能。
如图10所示,组类偏移处理部1001具有块读出部541、像素数计算部1011、组类选择部1012、偏移决定部1013、像素值变更部1014。
块读出部541读出像素自适应偏移处理部520所取得的各块的解码图像中的、处理对象的块的解码图像,并向像素值变更部1014通知。
像素数计算部1011是计算部的一例子。像素数计算部1011将处理对象的块的解码图像的各色成分(亮度信号(Y)、色差信号(Cb、Cr))的像素值的灰度分割为具有规定灰度数的多个组。以下,将该组称为“组类”。像素数计算部1011也可以将像素值的灰度分割为各组类具有相同的灰度数,也可以分割为不同的灰度数。
另外,各组类所具有的灰度数相比于由图5所示的带偏移处理部522分割为32个带时的、各带所具有的灰度数(在像素值为256灰度的情况下,各带所具有的灰度数为“8”),可以较多也可以较少。
此外,在各组类所具有的灰度数比各带所具有的灰度数少的情况下(即,使带宽度变窄的情况下),在处理对象的块内,能够针对引起较小的劣化的特定区域加上偏移值。在该情况下,与一般的编码器的带偏移处理进行比较,能够增大色偏移的改善效果。
像素数计算部1011按每一色成分,基于像素值来将处理对象的块的解码图像中包含的各像素分类为各组类,由此计算属于各组类的像素数。
组类选择部1012按每一色成分选择计算出的像素数较多的上位n个组类(n为1以上的整数。例如“3”),并向像素值变更部1014通知。
此外,通过使按每一色成分所选择的上位n个组类小于4个(即,通过与一般的编码器的情况进行比较,减少加上偏移值的带数),能够减少对各色成分的偏移值进行信令时的比特量。
作为另一例子,在处理对象的块的解码图像的各色成分为色差信号(Cb、Cr)的情况下,组类选择部1012选择灰度值的中央值(1<<(bitdepth-1))前后的m个组类(m为1以上的整数。例如“6”),从m个中选择计算出的像素数较多的上位n个组类(n为1以上的整数。例如,“3”),并向像素值变更部1014通知。
此外,灰度值的中央值附近为无彩色,在存在失真的情况下,固定地选择中央值附近,由此能够提高主观的画质。另外,通过使所选择的上位n个组类小于4个(即,与一般的编码器的情况进行比较,减少加上偏移值的带数),能够减少对各色成分的偏移值进行信令时的比特量。
偏移决定部1013接受从组类选择部1012选择的n个组类信息,按每一色成分决定n个偏移值(n个偏移绝对值、n个偏移代码),以使解码时的像素值的平方误差最小。另外,偏移决定部1013向像素值变更部1014通知所决定的各色成分的n个偏移值。
像素值变更部1014为组类加法部的一例子。像素值变更部1014针对处理对象的块的解码图像中包含的各像素中的、属于由组类选择部1012选择的组类的像素的像素值加上按每一色成分而决定的偏移值。另外,像素值变更部1014向选择部1002输出按每一色成分加上偏移值而得的处理对象的块的解码图像。另外,作为与组类偏移处理相关的SAO参数,像素值变更部1014向选择部1002输出包含各色成分的偏移值的SAO参数。
选择部1002为信令部的一例子。选择部1002针对处理对象的块的解码图像,取得由边缘偏移处理部521进行的各处理结果、以及由组类偏移处理部1001进行的各处理结果,计算RD成本。另外,选择部1002判定计算出的RD成本最低的处理结果,选择所判定的处理结果,并向自适应环路滤波部530输出。并且,选择部1002对所判定的处理结果的计算中使用的SAO参数进行信令。
<4.6第1实施方式的编码器的组类偏移处理的详细情况>
接下来,对第1实施方式的编码器110的组类偏移处理的详细情况进行说明。
(1)组类偏移处理的具体例
首先,对组类偏移处理的具体例进行说明。此外,与图7的说明同样,这里,也说明针对色差信号(Cr)的组类偏移处理。
(1-1)组类偏移处理的第1具体例
图11是示出第1实施方式的编码器的组类偏移处理的具体例的第1图。
图11的1100a的例子示出如下的情况:在解码中的画面710中,在处理对象的块的解码图像的色差信号(Cr)的能够取得的像素值为256灰度的情况下,像素数计算部1011将该256灰度均等地分割为128个组类。由此,每1组类的灰度数为2灰度。
另外,图11的1100a的例子示出如下的情况:像素数计算部1011基于色差信号(Cr)的像素值而将CTU720的块的解码图像中包含的各像素分类为各组类,由此生成直方图1101。
图11的1100b的例子示出组类选择部1012选择计算出的像素数较多的上位3个组类的情况。另外,图11的1100b的例子示出像素值变更部1014针对属于选择出的3个组类的像素的色差信号(Cr)的像素值,分别加上偏移值V1、V2、V3的情况。
作为图11的1100b的另一例子,组类选择部1012也可以固定地选择灰度值的中央值前后的6个组类,选择3个组类。
这样,在图11的例子的情况下,组类偏移处理部1001针对CTU720的块的解码图像,按照下述的内容进行组类偏移处理。将加上偏移值的对象作为比8灰度的带窄的2灰度的组类。不决定相当于带位置的参数,基于属于各组类的像素数而选择加上偏移值的对象。另外,也可以不决定相当于带位置的参数,固定地选择灰度值的中央值前后,基于属于各组类的像素数而选择加上偏移值的对象。将加上偏移值的对象的数设为3个。
由此,在组类偏移处理部1001中,在CTU720的块的解码图像中,能够仅针对引起较小的劣化的特定区域的色差信号(Cr)加上偏移值。因此,与一般的编码器的带偏移处理进行比较,能够增大色偏移的改善效果。
另外,在组类偏移处理部1001中,不需要将相当于带位置的参数包含在SAO参数中而向解码器侧发送。因此,与一般的编码器的带偏移处理进行比较,能够减少向解码器发送的SAO参数的比特量。
并且,在组类偏移处理部1001中,能够减少包含在SAO参数中的偏移值的个数。因此,与一般的编码器的带偏移处理进行比较,能够进一步减少向解码器发送的SAO参数的比特量。
(1-2)组类偏移处理的第2具体例
接下来,对组类偏移处理的其他的具体例进行说明。图12是示出第1实施方式的编码器的组类偏移处理的具体例的第2图。
图12的1200a的例子示出如下的情况:与图11的1100a的例子同样,像素数计算部1011基于色差信号(Cr)的像素值而将CTU720的块的解码图像中包含的各像素分类为各组类,由此生成直方图1201。与图11的1100a的不同点在于:计算出的像素数较多的上位3个组类不连续。
此外,如图12的1200b所示,不论上位3个组类是否连续,组类选择部1012都选择计算出的像素数较多的上位3个组类。另外,在像素值变更部1014中,针对属于组类选择部1012所选择的3个组类的像素的色差信号(Cr)的像素值分别加上偏移值V1、V2、V3
这样,在组类偏移处理部1001中,不论CTU720的块的解码图像中包含的各像素的像素值的分布如何,按照与上述第1具体例相同的内容进行组类偏移处理,由此能够得到与上述第1具体例相同的效果。
除此之外,与一般的编码器的带偏移处理不同,能够针对属于不连续的组类的像素的像素值也加上偏移值。因此,例如,针对包含背景与物体这样的色差值大幅不同的情况的区域,也能够分别加上偏移值,因此能够增大色偏移的改善效果。
(1-3)组类偏移处理的第3具体例
接下来,对组类偏移处理的其他的具体例进行说明。图13是示出第1实施方式的编码器的组类偏移处理的具体例的第3图。
图13的1300a的例子示出如下的情况:在解码中的画面710中,处理对象的块的解码图像的色差信号(Cr)的能够取得的像素值为256灰度的情况下,像素数计算部1011将该256灰度分割为不同的灰度数的组类。具体而言,像素数计算部1011被分割为从灰度数=2的组类到灰度数=16的组类中包含的多个组类。
另外,图13的1300a的例子示出如下的情况:像素数计算部1011基于色差信号(Cr)的像素值而将CTU720的块的解码图像中包含的各像素分类为各组类,由此生成直方图1301。与图12的1200a的不同点在于:计算出的像素数较多的上位3个组类分别具有不同的灰度数(灰度数:2、4、6)。
此外,如图13的1300b所示,不论上位3个组类各自具有的灰度数是相同还是不同,组类选择部1012都选择计算出的像素数较多的上位3个组类。另外,在像素值变更部1014中,针对属于由组类选择部1012选择的各组类的像素的色差信号(Cr)的像素值,分别加上偏移值V1、V2、V3。或者,在上位3个组类各自具有的灰度数不同的情况下,从属于像素数最多的灰度数的组类选择像素数较多的上位3个组类。
这样,在组类偏移处理部1001中,不论各组类所具有的灰度数是相同还是不同,都按照与上述具体例(第1具体例)相同的内容进行组类偏移处理,由此能够得到与上述第1具体例相同的效果。
除此之外,与一般的编码器的带偏移处理不同,能够与灰度值对应地改变加上偏移值的灰度数,因此能够增大色偏移的改善效果。
(1-4)组类偏移处理的第4具体例
在上述(1-1)~(1-3)的例子(第1具体例~第3具体例)中,说明了组类选择部1012选择计算出的像素数较多的上位3个组类的情况。然而,所选择的组类数并不局限于此,例如,也可以选择上位4个以上的组类(例如,上位4个组类或者上位6个组类)。
另外,在上述(1-1)~(1-2)的例子中,说明如下的情况:在解码中的画面710中,在处理对象的块的解码图像的色差信号(Cr)的能够取得的像素值为256灰度的情况下,分割为各组类所具有的灰度数为“2”。
另一方面,在解码中的画面710中,处理对象的块的解码图像的色差信号(Cr)的像素值例如也可以为0~511的512灰度。在该情况下,像素数计算部1011也可以分割为各组类各自具有的灰度数为“4”。即,在均等地分割的情况下,也可以根据灰度来变更各组类所具有的灰度数。例如,在解码中的画面710中,将处理对象的块的解码图像的色差信号(Cr)的能够取得的像素值的比特深度(Bit Depth)设为BD(将色差信号(Cr)的像素值设为2BD灰度)。在该情况下,像素数计算部1011也可以分割为各组类所具有的灰度数为2(BD-7)。其中,BD为8以上的整数。
(2)组类偏移处理的流程
接着,作为代替基于一般的编码器的带偏移处理(图6的步骤S605)的处理,对基于第1实施方式的编码器110的组类偏移处理的详细的流程进行说明。图14是示出基于第1实施方式的编码器的组类偏移处理的流程的流程图。
在步骤S1401中,块读出部541读出像素自适应偏移处理部520所取得的各块的解码图像中的、处理对象的块的解码图像。
在步骤S1403中,像素数计算部1011在处理对象的块的解码图像中将各色成分的像素值的灰度分割为具有规定灰度数的多个组类。另外,像素数计算部1011按每一色成分,基于像素值来将处理对象的块的解码图像中包含的各像素分类为各组类,由此计算属于各组类的像素数。并且,组类选择部1012按每一色成分选择计算出的像素数较多的上位n个组类。或者,在色成分为色差信号(Cb、Cr)的情况下,组类选择部1012选择灰度值的中央值(1<<(bitdepth-1))前后的m个组类,从m个中选择计算出的像素数较多的上位n个组类。
在步骤S1404中,作为与属于选择出的n个组类的像素的像素值相加的偏移值,偏移决定部1013按每一色成分决定n个偏移绝对值和n个偏移代码。
在步骤S1405中,像素值变更部1014在各色成分中,针对属于所选择的n个组类中的各个组类的像素的像素值,加上所决定的n个偏移值(n个偏移绝对值、n个偏移代码)。
<4.7基于第1实施方式的编码器的信令处理的详细情况>
接下来,对基于第1实施方式的编码器110的信令处理的详细情况进行说明。图15是示出基于第1实施方式的编码器的信令处理的流程的流程图。此外,这里,关于如下的情况进行说明:根据选择部1002的RD成本比较,判定为使用与组类偏移处理相关的SAO参数的组类偏移处理的处理结果为RD成本最低的处理结果。
在步骤S1501中,选择部1002在像素自适应偏移处理中,对表示选择了组类偏移处理的处理结果的情况的信息进行信令。
在步骤S1502中,选择部1002对计算出RD成本最低的处理结果时的SAO参数中的、针对各色成分计算出的n个组类各自的偏移绝对值进行信令。
在步骤S1503中,选择部1002对计算出RD成本最低的处理结果时的SAO参数中的、针对各色成分计算出的n个组类各自的偏移代码进行信令。
<5.解码器的功能结构>
接下来,关于通过执行解码程序而实现的解码器120的功能结构进行说明。图16是示出解码器的功能结构的一例子的图。如图16所示,解码器120具有熵解码部1601、逆量化部1602、逆正交变换部1603、环路滤波部1604、解码图像存储部1605、帧内/帧间预测部1606。
熵解码部1601对接收到的数据流进行解码,输出量化信号。另外,熵解码部1601从数据流中提取附加信息(包含在环路滤波部1604中使用的SAO参数等),向环路滤波部1604通知。
逆量化部1602对量化信号进行逆量化,向逆正交变换部1603输出。逆正交变换部1603对逆量化的量化信号执行逆正交变换处理。
针对由逆正交变换部1603执行逆正交变换处理而得到的信号,例如加上由帧内/帧间预测部1606生成的预测图像,由此生成解码图像,向环路滤波部1604输入。
环路滤波部1604使用所通知的附加信息,进行减少所输入的解码图像的编码噪声的滤波处理。此外,环路滤波部1604还具有去块滤波部、像素自适应偏移处理部、自适应环路滤波部(详细情况后述说明)。
另外,环路滤波部1604输出滤波处理后的解码图像作为解码结果,并且存储于解码图像存储部1605。
帧内/帧间预测部1606进行使用解码中的画面内的各CU的块的解码图像而生成处理对象的CU的块的预测图像的帧内预测。另外,帧内/帧间预测部1606进行帧间预测,在该帧间预测中,使用参照画面内的各CU的块的解码图像而在画面内进行运动补偿,生成处理对象的CU的块的预测图像。
并且,帧内/帧间预测部1606输出通过帧内预测而生成的各CU的块的预测图像即帧内预测图像或者通过运动补偿帧间预测而生成的各CU的块的预测图像即帧间预测图像中的任意一方。所输出的预测图像与由逆正交变换部1603执行逆正交变换处理而得的信号相加,作为解码图像向环路滤波部1604输入。
<6.环路滤波部的说明>
接着,对解码器120的环路滤波部1604的详细情况进行说明。此外,在对解码器120的环路滤波部1604的详细情况进行说明时,首先,作为比较对象,对一般的(H.265/HEVC的)解码器的环路滤波部进行详细地说明。以下,在“6.1”~“6.3”之前,对一般的解码器的环路滤波部进行详细地说明。然后,在“6.4”~“6.5”中,对第1实施方式的解码器120的环路滤波部1604进行详细地说明。
<6.1一般的解码器的环路滤波部的功能结构>
图17是示出一般的解码器的环路滤波部的功能结构的一例子的图。如图17所示,环路滤波部具有去块滤波部1710、像素自适应偏移处理部1720。
去块滤波部1710通过对处理对象的块的解码图像进行滤波处理,而减少在编码器对输入画面内的各CU的块的输入图像进行编码时在块边界产生的失真。像素自适应偏移处理部1720按像素单位对由去块滤波部1710进行了滤波处理后的处理对象的块的解码图像进行分类,针对各像素加上与分类对应的偏移值。
此外,具体而言,像素自适应偏移处理部1720具有边缘偏移处理部1721、带偏移处理部1722,基于从熵解码部1601通知的附加信息来使任意的处理部执行。
边缘偏移处理部1721根据在指定为边缘偏移组类的方向上连续的3个像素的像素值的大小关系对边缘状态进行分类。另外,边缘偏移处理部1721将与边缘状态的分类对应的偏移值与处理对象的块的解码图像的像素值相加。
带偏移处理部1722将处理对象的块的解码图像能够取得的像素值的灰度分割为32个带,从其中选择基于带位置的连续的4个带。而且,带偏移处理部1722对属于该4个带中的各个带的像素的像素值加上(或者减去)偏移值。
具体而言,如图17的右侧所示,带偏移处理部1722具有块读出部1741、SAO参数取得部1742、像素值变更部1743。块读出部1741读出像素自适应偏移处理部1720所取得的各块的解码图像中的、处理对象的块的解码图像,并向像素值变更部1743通知。SAO参数取得部1742将处理对象的块的解码图像能够取得的像素值的灰度分割为32个带。另外,SAO参数取得部1742取得在附加信息中包含的与带偏移处理相关的SAO参数(带位置、偏移值),并向像素值变更部1743输出。
像素值变更部1743使用从SAO参数取得部1742输出的、与带偏移处理相关的SAO参数来变更处理对象的块的解码图像的各色成分(亮度信号(Y)、色差信号(Cb、Cr))的像素值。另外,像素值变更部1743输出变更了像素值的处理对象的块的解码图像。
自适应环路滤波部530通过对由像素自适应偏移处理部520进行了偏移处理后的处理对象的块的解码图像进行滤波处理,来减少与对应的输入图像的误差。
<6.2基于一般的解码器的像素自适应偏移处理部的像素自适应偏移处理的流程>
接下来,对基于一般的解码器的像素自适应偏移处理部1720的像素自适应偏移处理的流程进行说明。图18是示出基于一般的解码器的像素自适应偏移处理的流程的流程图。
若针对处理对象的块,完成基于去块滤波部1710的去块滤波处理,像素自适应偏移处理部1720开始图18所示的像素自适应偏移处理。此外,这里为了说明的简单化,对一个处理对象的块的处理进行说明。
在步骤S1801中,像素自适应偏移处理部1720取得处理对象的块。
在步骤S1802中,像素自适应偏移处理部1720从熵解码部1601取得附加信息。
在步骤S1803中,像素自适应偏移处理部1720基于所取得的附加信息而判定偏移模式是否为带偏移模式。当在步骤S1803中判定为是带偏移模式的情况下(在步骤S1803中为是的情况下),进入步骤S1804。
在步骤S1804中,带偏移处理部1722使用在附加信息中包含的与带偏移处理相关的SAO参数,来执行带偏移处理。
另一方面,当在步骤S1803中判定为不是带偏移模式的情况下(在步骤S1803中为否的情况下),进入步骤S1805。
在步骤S1805中,像素自适应偏移处理部1720判定偏移模式是否为边缘偏移模式。当在步骤S1805中判定为是边缘偏移模式的情况下(在步骤S1805中为是的情况下),进入步骤S1806。
在步骤S1806中,边缘偏移处理部1721使用在附加信息中包含的与边缘偏移处理相关的SAO参数来执行边缘偏移处理。
另一方面,当在步骤S1805中判定为不是边缘偏移模式的情况下(在步骤S1805中为否的情况下),判定为偏移模式截止,并结束针对处理对象的块的像素自适应偏移处理。
<6.3基于一般的解码器的像素自适应偏移处理部的带偏移处理部的带偏移处理的流程>
接着,对基于一般的解码器的带偏移处理(步骤S1804)的详细的流程图进行说明。图19是示出基于一般的解码器的带偏移处理的流程的流程图。
在步骤S1901中,块读出部1741读出像素自适应偏移处理部1720所取得的各块的解码图像中的、处理对象的块的解码图像。
在步骤S1902中,SAO参数取得部1742按每一色成分取得带位置、4个偏移绝对值、4个偏移代码,作为在附加信息中包含的与带偏移处理相关的SAO参数。
在步骤S1903中,像素值变更部1743使用与带偏移处理相关的SAO参数(带位置、4个偏移绝对值、4个偏移代码)按照色成分变更处理对象的块的解码图像的像素值。
<6.4第1实施方式的解码器的环路滤波部的功能结构>
接下来,对第1实施方式的解码器120的环路滤波部1604的功能结构进行说明。
图20是示出第1实施方式的解码器的环路滤波部的功能结构的一例子的图。此外,关于使用图17而说明的、与一般的解码器的环路滤波部相同的功能,标注相同的附图标记,这里省略说明。
与图17的不同点在于:像素自适应偏移处理部1720具有组类偏移处理部2001。此外,像后述那样,组类偏移处理部2001也能够减少色差失真,还具有作为CARSAO的功能。如图20的右侧所示,组类偏移处理部2001具有块读出部1741、像素数计算部2011、组类选择部2012、SAO参数取得部2013、像素值变更部2014。
块读出部1741读出像素自适应偏移处理部1720所取得的各块的解码图像中的、处理对象的块的解码图像,并向像素值变更部2014通知。
像素数计算部2011为计算部的一例子。像素数计算部2011将处理对象的块的解码图像的各色成分(亮度信号(Y)、色差信号(Cb、Cr))的像素值的灰度分割为具有规定灰度数的多个组类。像素数计算部2011也可以将像素值的灰度分割为各组类具有相同的灰度数,也可以分割为具有不同的灰度数。
另外,各组类所具有的灰度数相比于在由图17所示的带偏移处理部1722分割为32个带时的、各带所具有的灰度数(在像素值的灰度为256灰度的情况下,各带所具有的灰度数为“8”),可以较多也可以较少。
其中,像素数计算部2011生成各组类时的分割方法与在编码器110中,像素数计算部1011生成各组类时所使用的分割方法相同,是预先决定的。
此外,在各组类所具有的灰度数比各带所具有的灰度数少的情况下(即,在使带宽度变窄的情况下),能够在处理对象的块内,针对引起较小的劣化的特定区域加上偏移值。在该情况下,与一般的解码器的带偏移处理进行比较,能够增大色偏移的改善效果。
并且,像素数计算部2011按每一色成分,基于像素值将在处理对象的块的解码图像中包含的各像素分类为各组类,由此计算属于各组类的像素数。
组类选择部2012按每一色成分来选择计算出的像素数较多的上位n个组类(n为1以上的整数。例如为“3”),并向像素值变更部2014通知。
作为另一例子,在处理对象的块的解码图像的各色成分为色差信号(Cb、Cr)的情况下,组类选择部2012选择灰度值的中央值(1<<(bitdepth-1))前后的m个组类(m为1以上的整数。例如为“6”),从m个中选择计算出的像素数较多的上位n个组类(n为1以上的整数。例如为“3”),并向像素值变更部1014通知。
其中,组类选择部2012所选择的组类数与在编码器110中像素数计算部1011所选择的组类数相同,是预先决定的。
SAO参数取得部2013取得与组类偏移处理相关的SAO参数。此外,在本实施方式中,SAO参数取得部2013按每一色成分而取得n个偏移值(n个偏移绝对值、n个偏移代码)作为SAO参数。另外,SAO参数取得部2013向像素值变更部2014通知所取得的各色成分的n个偏移值。
像素值变更部2014为组类加法部的一例子。像素值变更部2014针对处理对象的块的解码图像中包含的各像素中的、属于由组类选择部2012选择的组类的像素的像素值,按每一色成分而加上所通知的偏移值。另外,像素值变更部2014输出按每一色成分加上偏移值而得的处理对象的块的解码图像。
<6.5基于第1实施方式的解码器的组类偏移处理的详细情况>
接下来,作为取代基于一般的解码器的带偏移处理(图18的步骤S1804)的处理,对基于第1实施方式的解码器120的组类偏移处理的详细的流程进行说明。图21是示出基于第1实施方式的解码器的组类偏移处理的流程的流程图。
在步骤S2101中,块读出部1741读出像素自适应偏移处理部1720所取得的各块的解码图像中的、处理对象的块的解码图像。
在步骤S2103中,像素数计算部2011在处理对象的块的解码图像中将各色成分的像素值的灰度分割为具有规定灰度数的多个组类。另外,像素数计算部2011按每一色成分,基于像素值而将在处理对象的块的解码图像中包含的各像素分类为各组类,由此计算属于各组类的像素数。并且,组类选择部2012按每一色成分,选择计算出的像素数较多的上位n个组类。或者,作为另一例子,在色成分为色差信号(Cb、Cr)的情况下,组类选择部2012选择灰度值的中央值(1<<(bitdepth-1))前后的m个组类,从m个中选择计算出的像素数较多的上位n个组类。
在步骤S2104中,作为在附加信息中包含的SAO参数,SAO参数取得部2013按每一色成分而取得n个组类各自的偏移值(n个偏移绝对值、n个偏移代码)。
在步骤S2105中,像素值变更部2014在各色成分中针对属于所选择的n个组类中的各个组类的像素的像素值加上所取得的n个偏移值(n个偏移绝对值、n个偏移代码)。
<7.总结>
从以上的说明可知,在第1实施方式的编码器110中,像素自适应偏移处理部具有组类偏移处理部来取代带偏移处理部,该组类偏移处理部将处理对象的块的解码图像的各色成分的像素值的灰度分割为具有规定的灰度数的多个组类。该组类偏移处理部对属于多个组类中的各个组类的像素数进行计算,选择计算出的像素数较多的上位n个组类,使所选择的n个组类加上偏移值。或者,该组类偏移处理部也能够固定地选择灰度值的中央值前后,对属于所选择的多个组类中的各个组类的像素数进行计算,选择计算出的像素数较多的上位n个组类,对所选择的n个组类加上偏移值。对包含加上的偏移值在内的SAO参数进行信令并向解码器发送。
这样,通过根据像素数来选择组类,并加上偏移值,从而根据第1实施方式的编码器110,不需要将作为SAO参数的带位置向解码器发送。其结果为,能够减少SAO参数的比特量。
另外,第1实施方式的编码器110在组类偏移处理部进行组类偏移处理时,通过减少所选择的组类数(通过小于4个),能够减少在SAO参数中包含的偏移绝对值、偏移代码的数量。其结果为,能够进一步减少SAO参数的比特量。通过减小各组类所具有的灰度数,能够仅针对引起较小的劣化的特定区域加上偏移值。其结果为,能够增大色偏移的改善效果。
同样,在第1实施方式的解码器120中,像素自适应偏移处理部具有组类偏移处理部来取代带偏移处理部,该组类偏移处理部将处理对象的块的解码图像的各色成分的像素值的灰度分割为具有规定的灰度数的多个组类。该组类偏移处理部对属于多个组类中的各个组类的像素数进行计算,选择计算出的像素数较多的上位n个组类,对所选择的n个组类加上偏移值。或者,该组类偏移处理部也能够固定地选择灰度值的中央值前后,对属于所选择的多个组类中的各个组类的像素数进行计算,选择计算出的像素数较多的上位n个组类,对所选择的n个组类加上偏移值。从编码器接收偏移值作为SAO参数。
这样,通过根据像素数来选择组类,并加上偏移值,从而根据第1实施方式的解码器120,不需要经由SAO参数来接收带位置。其结果为,能够减少SAO参数的比特量。
另外,第1实施方式的解码器120在组类偏移处理部进行组类偏移处理时,通过减少所选择的组类数(通过小于4个),能够减少在SAO参数中包含的偏移绝对值、偏移代码的数量。其结果为,能够进一步减少SAO参数的比特量。通过减小各组类所具有的灰度数,能够仅针对引起较小的劣化的特定区域加上偏移值。其结果为,能够增大色偏移的改善效果。
[第2实施方式]
在上述第1实施方式中,像素自适应偏移处理部采用具有组类偏移处理部来取代带偏移处理部的结构。另外,在上述第1实施方式中,关于在处理对象的块的解码图像中,针对各色成分进行相同的偏移处理的情况进行说明。
然而,像素自适应偏移处理部的结构并不局限于此,例如也可以采用除了带偏移处理部之外还具有组类偏移处理部的结构。另外,也可以构成为按每一色成分而进行带偏移处理或者组类偏移处理中的任意的处理。以下,对于第2实施方式,以与上述第1实施方式的不同点为中心进行说明。
图22是示出第2实施方式的编码器的环路滤波部的功能结构的一例子的图。与图10所示的功能结构的不同点在于:像素自适应偏移处理部2200除了具有边缘偏移处理部521、组类偏移处理部1001、选择部1002之外,还具有带偏移处理部522。
基于图22所示的功能结构,在像素自适应偏移处理部2200中,例如控制为针对各色成分中的亮度信号(Y)进行基于带偏移处理部522的带偏移处理。另外,控制为针对色差信号(Cb、Cr)进行基于组类偏移处理部1001的组类偏移处理。其中,针对各色成分是进行带偏移处理还是进行组类偏移处理,是预先设定的。
此外,在图22中,示出编码器110的环路滤波部的功能结构,但解码器120的环路滤波部也能够同样地构成。
这样,通过采用按照色成分进行不同的偏移处理的结构,能够增大色偏移的改善效果。
[其他的实施方式]
在上述第1和第2实施方式中,没有特别地提及n个偏移值的发送顺序,但n个偏移值按照预先决定的顺序发送。例如,选择部1002也可以构成为按照像素数较多的组类的顺序,发送n个偏移值。或者,选择部1002也可以构成为按照灰度值较小的组类的顺序或者灰度值较大的组类的顺序,发送n个偏移值。或者,选择部1002也可以构成为按照灰度值接近中央值的组类的顺序发送n个偏移值。
另外,在上述第1和第2实施方式中,关于选择计算出的像素数较多的上位n个组类的情况进行了说明,但也会产生计算出的像素数相同的组类为多个(n个以上)的情况。
在这样的情况下,在组类选择部1012中,以使所选择的组类数为n个的方式,从选择对象除去计算出的像素数相同的组类的一部分。例如,也可以对像素数相同的组类进行比较,从选择对象中除去灰度值最远离中央值的组类。
另外,在上述第1和第2实施方式中,关于在执行基于去块滤波部510的处理之后,执行基于像素自适应偏移处理部520的处理的情况进行说明。
然而,基于去块滤波部510的处理是利用邻接的块的像素进行的。因此,在之后执行计算像素数的处理而加上偏移值的像素未被确定的情况下,在去块滤波部510中产生无法执行处理的像素。在该情况下,需要暂时地保存该像素的存储器,存储器使用量增大。
因此,也可以构成为,在执行基于去块滤波部510的处理之前执行基于组类偏移处理部1001的处理中的、计算像素数的处理。由此,确定加上偏移值的像素,因此能够避免存储器使用量的增大。此外,也可以构成为,按流单位来定义是否在执行基于去块滤波部510的处理之前执行计算像素数的处理。
此外,本发明不限于上述实施方式中列举的结构等、与其他的要素的组合等、这里所示的结构。关于这些方面,能够在不脱离本发明的主旨的范围内进行变更,能够与其应用方式适当地确定。
本申请基于在2018年1月5日申请的美国专利第62/613920号而主张其优先权,通过参照该美国专利申请的全部内容而引用到本申请中。
附图标记的说明
100…图像处理系统;110…编码器;120…解码器;407…环路滤波部;520…像素自适应偏移处理部;521…边缘偏移处理部;522…带偏移处理部;541…块读出部;1001…组类偏移处理部;1002…选择部;1011…像素数计算部;1012…组类选择部;1013…偏移决定部;1014…像素值变更部;1720…像素自适应偏移处理部;1721…边缘偏移处理部;1741…块读出部;2001…组类偏移处理部;2011…像素数计算部;2012…组类选择部;2013…SAO参数取得部;2014…像素值变更部。

Claims (8)

1.一种编码方法,其特征在于,具有:
计算工序,将编码单位的块的像素值的灰度分割为具有规定灰度数的多个组类,对属于该多个组类中的各个组类的像素数进行计算;
组类加法工序,选择计算出的像素数较多的上位n个组类,对属于所选择的n个组类中的各个组类的像素的像素值加上偏移值,其中,n为1以上的整数;
第1信令工序,对包含加上的偏移值的SAO参数进行信令,所述SAO参数不包含表示加上偏移值的对象的参数,
带分割工序,将编码单位的块的像素值的灰度分割为32个带;
带加法工序,从所述32个带中决定带位置,并对属于根据所决定的带位置而确定的4个带中的各个带的像素的像素值加上偏移值;以及
第2信令工序,对包含所决定的带位置和加上的偏移值的SAO参数进行信令,
所述编码单位的块的像素值的灰度数为256个,
在所述计算工序中,将所述像素值的灰度分割为具有2个灰度数的多个组类。
2.根据权利要求1所述的编码方法,其特征在于,
在所述组类加法工序中,选择计算出的像素数较多的上位4个或者6个组类。
3.一种解码方法,其特征在于,具有:
计算工序,将编码单位的块的像素值的灰度分割为具有规定灰度数的多个组类,对属于该多个组类中的各个组类的像素数进行计算;
第1取得工序,取得被信令后的SAO参数中所包含的偏移值,所述SAO参数不包含表示加上偏移值的对象的参数;
组类加法工序,选择计算出的像素数较多的上位n个组类,对属于所选择的n个组类中的各个组类的像素的像素值加上所取得的偏移值,其中,n为1以上的整数,
带分割工序,将编码单位的块的像素值的灰度分割为32个带;
第2取得工序,取得被信令后的SAO参数中所包含的带位置和偏移值;以及
带加法工序,对属于根据所取得的带位置而确定的4个带中的各个带的像素的像素值加上所取得的偏移值,
所述编码单位的块的像素值的灰度数为256个,
在所述计算工序中,将所述像素值的灰度分割为具有2个灰度数的多个组类。
4.根据权利要求3所述的解码方法,其特征在于,
在所述组类加法工序中,选择计算出的像素数较多的上位4个或者6个组类。
5.一种编码装置,其特征在于,具有:
计算部,其将编码单位的块的像素值的灰度分割为具有规定灰度数的多个组类,对属于该多个组类中的各个组类的像素数进行计算;
组类加法部,其选择计算出的像素数较多的上位n个组类,对属于所选择的n个组类中的各个组类的像素的像素值加上偏移值,其中,n为1以上的整数;
第1信令部,其对包含加上的偏移值的SAO参数进行信令,所述SAO参数不包含表示加上偏移值的对象的参数,
带分割部,其将编码单位的块的像素值的灰度分割为32个带;
带加法部,其从所述32个带中决定带位置,并对属于根据所决定的带位置而确定的4个带中的各个带的像素的像素值加上偏移值;以及
第2信令部,其对包含所决定的带位置和加上的偏移值的SAO参数进行信令,
所述编码单位的块的像素值的灰度数为256个,
所述计算部将所述像素值的灰度分割为具有2个灰度数的多个组类。
6.一种解码装置,其特征在于,具有:
计算部,其将编码单位的块的像素值的灰度分割为具有规定灰度数的多个组类,对属于该多个组类中的各个组类的像素数进行计算;
第1取得部,其取得被信令的SAO参数中所包含的偏移值,所述SAO 参数不包含表示加上偏移值的对象的参数;
组类加法部,其选择计算出的像素数较多的上位n个组类,对属于所选择的n个组类中的各个组类的像素的像素值加上所取得的偏移值,其中,n为1以上的整数,
带分割部,其将编码单位的块的像素值的灰度分割为32个带;
第2取得部,其取得被信令后的SAO参数中所包含的带位置和偏移值;以及
带加法部,其对属于根据所取得的带位置而确定的4个带中的各个带的像素的像素值加上所取得的偏移值,
所述编码单位的块的像素值的灰度数为256个,
所述计算部将所述像素值的灰度分割为具有2个灰度数的多个组类。
7.一种存储有编码程序的记录介质,所述编码程序使计算机执行如下的工序:
计算工序,将编码单位的块的像素值的灰度分割为具有规定灰度数的多个组类,对属于该多个组类中的各个组类的像素数进行计算;
组类加法工序,选择计算出的像素数较多的上位n个组类,对属于所选择的n个组类中的各个组类的像素的像素值加上偏移值,其中,n为1以上的整数;
第1信令工序,对包含加上的偏移值的SAO参数进行信令,所述SAO参数不包含表示加上偏移值的对象的参数,
带分割工序,将编码单位的块的像素值的灰度分割为32个带;
带加法工序,从所述32个带中决定带位置,并对属于根据所决定的带位置而确定的4个带中的各个带的像素的像素值加上偏移值;以及
第2信令工序,对包含所决定的带位置和加上的偏移值的SAO参数进行信令,
所述编码单位的块的像素值的灰度数为256个,
在所述计算工序中,将所述像素值的灰度分割为具有2个灰度数的多个组类。
8.一种存储有解码程序的记录介质,所述解 码程序使计算机执行如下的工序:
计算工序,将编码单位的块的像素值的灰度分割为具有规定灰度数的多个组类,对属于该多个组类中的各个组类的像素数进行计算;
第1取得工序,取得被信令后的SAO参数中包含的偏移值,所述SAO参数不包含表示加上偏移值的对象的参数;
组类加法工序,选择计算出的像素数较多的上位n个组类,对属于所选择的n个组类中的各个组类的像素的像素值加上所取得的偏移值,其中,n为1以上的整数,
带分割工序,将编码单位的块的像素值的灰度分割为32个带;
第2取得工序,取得被信令后的SAO参数中所包含的带位置和偏移值;以及
带加法工序,对属于根据所取得的带位置而确定的4个带中的各个带的像素的像素值加上所取得的偏移值,
所述编码单位的块的像素值的灰度数为256个,
在所述计算工序中,将所述像素值的灰度分割为具有2个灰度数的多个组类。
CN201880085180.4A 2018-01-05 2018-07-03 编码方法、解码方法、编码装置、解码装置以及记录介质 Active CN111587576B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201862613920P 2018-01-05 2018-01-05
US62/613,920 2018-01-05
PCT/JP2018/025141 WO2019135294A1 (ja) 2018-01-05 2018-07-03 符号化方法、復号方法、符号化装置、復号装置、符号化プログラム及び復号プログラム

Publications (2)

Publication Number Publication Date
CN111587576A CN111587576A (zh) 2020-08-25
CN111587576B true CN111587576B (zh) 2023-03-31

Family

ID=67143767

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201880085180.4A Active CN111587576B (zh) 2018-01-05 2018-07-03 编码方法、解码方法、编码装置、解码装置以及记录介质

Country Status (4)

Country Link
US (1) US11330282B2 (zh)
JP (1) JP7147788B2 (zh)
CN (1) CN111587576B (zh)
WO (1) WO2019135294A1 (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113099230B (zh) * 2021-02-22 2022-09-06 浙江大华技术股份有限公司 编码方法、装置、电子设备及计算机可读存储介质
CN113194315B (zh) * 2021-04-01 2022-05-31 Tcl华星光电技术有限公司 图像压缩方法及压缩装置

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103248888A (zh) * 2012-02-10 2013-08-14 美国博通公司 根据视频编码的采样点自适应偏移(sao)

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DK2725797T3 (da) 2011-06-23 2019-01-02 Huawei Tech Co Ltd Offset dekoderanordning, offset koderanordning, billedfilteranordning og datastruktur
CA3039403C (en) * 2011-06-24 2021-06-08 Lg Electronics Inc. Image information encoding and decoding method
WO2013046990A1 (ja) 2011-09-29 2013-04-04 シャープ株式会社 オフセット復号装置、オフセット符号化装置、画像フィルタ装置、および、データ構造
US10051289B2 (en) 2011-11-04 2018-08-14 Qualcomm Incorporated Adaptive center band offset filter for video coding
GB201119206D0 (en) 2011-11-07 2011-12-21 Canon Kk Method and device for providing compensation offsets for a set of reconstructed samples of an image
US9716882B2 (en) * 2012-01-05 2017-07-25 Google Technology Holdings LLC Devices and methods for sample adaptive offset coding and/or selection of edge offset parameters
US9282328B2 (en) 2012-02-10 2016-03-08 Broadcom Corporation Sample adaptive offset (SAO) in accordance with video coding
CN103647975B (zh) * 2013-12-02 2017-01-11 国家广播电影电视总局广播科学研究院 基于直方图分析的改进样本自适应偏移滤波方法
CN103761726B (zh) * 2013-12-25 2017-03-08 河海大学 基于fcm的分块自适应图像分割方法
JP6454229B2 (ja) * 2015-06-10 2019-01-16 日本電信電話株式会社 画像符号化装置、画像復号装置、画像符号化プログラム及び画像復号プログラム
CN106817583B (zh) * 2015-12-02 2020-01-10 福州瑞芯微电子股份有限公司 一种hevc sao计算方法和装置

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103248888A (zh) * 2012-02-10 2013-08-14 美国博通公司 根据视频编码的采样点自适应偏移(sao)

Also Published As

Publication number Publication date
CN111587576A (zh) 2020-08-25
JP7147788B2 (ja) 2022-10-05
US20200336754A1 (en) 2020-10-22
JPWO2019135294A1 (ja) 2020-12-17
WO2019135294A1 (ja) 2019-07-11
US11330282B2 (en) 2022-05-10

Similar Documents

Publication Publication Date Title
US11601687B2 (en) Method and device for providing compensation offsets for a set of reconstructed samples of an image
US20200029082A1 (en) Image processing method for performing processing of encoding tree unit and encoding unit, image decoding and encoding method using same, and device thereof
CN111587576B (zh) 编码方法、解码方法、编码装置、解码装置以及记录介质
CN115088265A (zh) 用于控制环路滤波的图像编码装置和方法
KR20220073834A (ko) 영상/비디오 코딩을 위한 상위 레벨 신택스 시그널링 방법 및 장치
KR20210129224A (ko) 스케일링 리스트 기반 비디오 또는 영상 코딩
WO2019233997A1 (en) Prediction of sao parameters
WO2019234000A1 (en) Prediction of sao parameters
GB2574423A (en) Video coding and decoding
US10992942B2 (en) Coding method, decoding method, and coding device
US11778238B2 (en) Method and apparatus for encoding/decoding video
US11240535B2 (en) Method and device for filtering image in image coding system
JP2022509626A (ja) イントラ予測方法及び装置
GB2574426A (en) Video coding and decoding
CN117981316A (zh) 图像编码/解码方法、发送比特流的方法及存储比特流的记录介质
GB2574422A (en) Video coding and decoding
CN114449279A (zh) 基于视频质量度量的视频编码
GB2574425A (en) Video coding and 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
GR01 Patent grant
GR01 Patent grant