JPWO2020175145A1 - 画像処理装置及び画像処理方法 - Google Patents

画像処理装置及び画像処理方法 Download PDF

Info

Publication number
JPWO2020175145A1
JPWO2020175145A1 JP2021501897A JP2021501897A JPWO2020175145A1 JP WO2020175145 A1 JPWO2020175145 A1 JP WO2020175145A1 JP 2021501897 A JP2021501897 A JP 2021501897A JP 2021501897 A JP2021501897 A JP 2021501897A JP WO2020175145 A1 JPWO2020175145 A1 JP WO2020175145A1
Authority
JP
Japan
Prior art keywords
block
filter
unit
boundary
image
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
JP2021501897A
Other languages
English (en)
Other versions
JP7444159B2 (ja
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.)
Sony Corp
Sony Group Corp
Original Assignee
Sony Corp
Sony Group Corp
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 Sony Corp, Sony Group Corp filed Critical Sony Corp
Publication of JPWO2020175145A1 publication Critical patent/JPWO2020175145A1/ja
Priority to JP2024025254A priority Critical patent/JP2024045713A/ja
Application granted granted Critical
Publication of JP7444159B2 publication Critical patent/JP7444159B2/ja
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/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/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/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/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/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/184Methods 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 bits, e.g. of the compressed video stream
    • 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/59Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial sub-sampling or interpolation, e.g. alteration of picture size or resolution
    • 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
    • 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

Landscapes

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

Abstract

本技術は、ブロック歪みを抑制することができるようにする画像処理装置及び画像処理方法に関する。変換ブロックと予測ブロックと符号化ブロックとが統一された階層構造を有するブロック構造に従って、ビットストリームが復号されて復号画像が生成される。復号画像の変換ブロックを分割したサブブロックの境界であるサブブロック境界と直交するラインの画素に、デブロックフィルタが適用される。本技術は、例えば、画像の符号化及び復号を行う場合に適用することができる。

Description

本技術は、画像処理装置及び画像処理方法に関し、特に、例えば、ブロック歪みを抑制することができるようにする画像処理装置及び画像処理方法に関する。
ITU-TとISO/IECとの共同の標準化団体であるJVET(Joint Video Experts Team)では、H.265/HEVCよりも符号化効率をさらに向上することを目的として、次世代の画像符号化方式であるVVC(Versatile Video Coding)の標準化作業が進められている。
VVCの標準化作業では、非特許文献1において、ブロックを、ISP(Intra Sub-Partitions)に設定することができることが提案されている。
ISPに設定されたブロックは、複数のサブブロック(Sub-Partition)に分割することができ、サブブロックの単位で、直交変換を行うことができる。
JVET-M0102-v5: CE3: Intra Sub-Partitions Coding Mode (version 7 - date 2019-01-17)
ISPに設定されたブロックを分割したサブブロックの境界であるサブブロック境界には、ブロック歪みが生じ得るが、サブブロック境界(に直交するラインの画素)は、デブロックフィルタの適用対象にされていない。
本技術は、このような状況に鑑みてなされたものであり、ブロック歪みを抑制することができるようにするものである。
本技術の第1の画像処理装置は、変換ブロックと予測ブロックと符号化ブロックとが統一された階層構造を有するブロック構造に従って、ビットストリームを復号して復号画像を生成する復号部と、前記復号部により生成された復号画像の前記変換ブロックを分割したサブブロックの境界であるサブブロック境界と直交するラインの画素に、デブロックフィルタを適用するフィルタ部とを備える画像処理装置である。
本技術の第1の画像処理方法は、変換ブロックと予測ブロックと符号化ブロックとが統一された階層構造を有するブロック構造に従って、ビットストリームを復号して復号画像を生成することと、前記復号画像の前記変換ブロックを分割したサブブロックの境界であるサブブロック境界と直交するラインの画素に、デブロックフィルタを適用することとを含む画像処理方法である。
本技術の第1の画像処理装置及び画像処理方法においては、変換ブロックと予測ブロックと符号化ブロックとが統一された階層構造を有するブロック構造に従って、ビットストリームを復号して復号画像が生成される。そして、前記復号画像の前記変換ブロックを分割したサブブロックの境界であるサブブロック境界と直交するラインの画素に、デブロックフィルタが適用される。
本技術の第2の画像処理装置は、画像を変換ブロックと予測ブロックと符号化ブロックとが統一された階層構造を有するブロック構造に従って符号化する際にローカル復号されたローカル復号画像の、イントラ予測が行われる前記変換ブロックを分割したサブブロックの境界であるサブブロック境界と直交するラインの画素に、デブロックフィルタを適用してフィルタ画像を生成するフィルタ部と、前記フィルタ部により生成されたフィルタ画像を用いて、前記画像を符号化する符号化部とを備える画像処理装置である。
本技術の第2の画像処理方法は、画像を変換ブロックと予測ブロックと符号化ブロックとが統一された階層構造を有するブロック構造に従って符号化する際にローカル復号されたローカル復号画像の、イントラ予測が行われる前記変換ブロックを分割したサブブロックの境界であるサブブロック境界と直交するラインの画素に、デブロックフィルタを適用してフィルタ画像を生成することと、前記フィルタ画像を用いて、前記画像を符号化することとを含む画像処理方法である。
本技術の第2の画像処理装置及び画像処理方法においては、画像を変換ブロックと予測ブロックと符号化ブロックとが統一された階層構造を有するブロック構造に従って符号化する際にローカル復号されたローカル復号画像の、イントラ予測が行われる前記変換ブロックを分割したサブブロックの境界であるサブブロック境界と直交するラインの画素に、デブロックフィルタを適用してフィルタ画像が生成される。そして、前記フィルタ画像を用いて、前記画像が符号化される。
なお、画像処理装置は、コンピュータにプログラムを実行させることにより実現することができる。プログラムは、記録媒体に記録して、又は、伝送媒体を介して伝送することにより、提供することができる。
HEVCにおけるbSの設定方法を説明する図である。 デブロックフィルタの他の適用方法におけるbSの設定方法を説明する図である。 垂直方向のブロック境界である垂直ブロック境界BBを挟んで隣接する、2つの隣接ブロックとしてのブロックBp及びブロックBq内の画素(の画素値)の例を示す図である。 ISP(intra-sub-partition)を説明する図である。 デブロックフィルタのフィルタタイプの例を示す図である。 デブロックフィルタの並列適用を行うときに生じ得る不都合を説明する図である。 本技術を適用した画像処理システムの一実施の形態の構成例を示すブロック図である。 エンコーダ11の詳細な構成例を示すブロック図である。 エンコーダ11の符号化処理の例を説明するフローチャートである。 デコーダ51の詳細な構成例を示すブロック図である。 デコーダ51の復号処理の例を説明するフローチャートである。 デブロックフィルタ(DF)31aの構成例を示すブロック図である。 境界強度設定部261のbSの設定方法の例を示す図である。 デブロックフィルタが適用され得るブロック境界を判定するブロック境界判定処理の例を説明するフローチャートである。 ブロック境界判定処理においてサブブロック境界であると判定された部分ブロック境界を対象として行われるデブロックフィルタ31aの処理の例を説明するフローチャートである。 本技術を適用したコンピュータの一実施の形態の構成例を示すブロック図である。
本明細書で開示される範囲は、実施の形態の内容に限定されるものではなく、出願当時において公知となっている以下の参照文献REF1-REF8の内容も、参照により本明細書に組み込まれる。つまり、以下の参照文献REF1-REF8に記載されている内容もサポート要件について判断する際の根拠となる。例えば、参照文献REF2に記載されているQuad-Tree Block Structure、参照文献REF3に記載されているQTBT(Quad Tree Plus Binary Tree) Block Structure、参照文献REF4, REF5, 及びREF8に記載されているMTT(Multi-type Tree) Block Structureが発明の詳細な説明において直接的に定義されていない場合でも、本開示の範囲内であり、請求の範囲のサポート要件を満たすものとする。また、例えば、パース(Parsing)、シンタックス(Syntax)、セマンティクス(Semantics)等の技術用語についても同様に、発明の詳細な説明において直接的に定義されていない場合でも、本開示の範囲内であり、請求の範囲のサポート要件を満たすものとする。
REF1:Recommendation ITU-T H.264 (04/2017) “Advanced video coding for generic audiovisual services”, April 2017
REF2:Recommendation ITU-T H.265 (12/2016) "High efficiency video coding”, December 2016
REF3:J. Chen, E. Alshina, G. J. Sullivan, J.-R. Ohm, J. Boyce,"Algorithm Description of Joint Exploration Test Model (JEM7)”, JVET-G1001, Joint Video Exploration Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11 7th Meeting: Torino, IT, 13-21 July 2017
REF4: B. Bross, J. Chen, S. Liu , “Versatile Video Coding (Draft 3), ” JVET-L1001, Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11 12th Meeting: Macau, CN, 312 Oct. 2018
REF5:J. J. Chen, Y. Ye, S. Kim,"Algorithm description for Versatile Video Coding and Test Model 3 (VTM 3)”, JVET-L1002, Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11 12th Meeting: Macau, CN, 312 Oct. 2018
REF6: J. Boyce (Intel), Y. Ye (InterDigital), Y.-W. Huang (Mediatek), M. Karczewicz (Qualcomm), E. Francois (Technicolor), W. Husak (Dolby), J. Ridge (Nokia), A. Abbas (GoPro),"Two tier test model”, JVET- J0093 , Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11 10th Meeting: San Diego, US, 1020 Apr. 2018
REF7: S. De-Luxan-Hernandez, V. George, J. Ma, T. Nguyen, H. Schwarz, D. Marpe, T. Wiegand (HHI) ,"CE3: Intra Sub-Partitions Coding Mode (Tests 1.1.1 and 1.1.2)”, JVET- M0102 , Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11 13th Meeting: Marrakech, MA, 918 Jan. 2019
REF8: M. Ikeda, T. Suzuki (Sony), D. Rusanovskyy, M. Karczewicz (Qualcomm), W. Zhu, K. Misra, P. Cowan, A. Segall (Sharp Labs of America), K. Andersson, J. Enhorn, Z. Zhang, R. Sjoberg (Ericsson) ,"CE11.1.6, CE11.1.7 and CE11.1.8: Joint proposals for long deblocking from Sony, Qualcomm, Sharp, Ericsson”, JVET- M0471 , Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11 13th Meeting: Marrakesh, MA, 918 Jan. 2019
<デブロックフィルタの概要>
HEVC等の既存の画像符号化方式におけるデブロックフィルタに関する処理は、フィルタ判定(適用要否判定及びフィルタ強度判定)、及び、フィルタリング(フィルタの適用)を含む。以下では、HEVCを例に、デブロックフィルタの概要を説明する。
なお、デブロックフィルタの適用要否とは、デブロックフィルタを適用するか否かを意味する。デブロックフィルタの適用要否判定とは、デブロックフィルタを適用するか否かを判定することを意味する。また、適用要否判定の判定結果とは、デブロックフィルタを適用するか否かを判定した結果である。適用要否判定の判定結果は、適用する、又は、適用しない、のいずれかを示す情報であり得る。
フィルタ強度判定とは、デブロックフィルタを適用する場合に、その適用するデブロックフィルタのフィルタ強度を判定(決定)することを意味する。例えば、デブロックフィルタとして、ウイークフィルタと、ウイークフィルタよりもタップ数が多い、すなわち、フィルタ強度が強いストロングフィルタとがある場合、フィルタ強度判定では、画素に適用するデブロックフィルタを、ウイークフィルタ及びストロングフィルタのうちのいずれとするかが判定(決定)される。
デブロックフィルタについては、適用要否判定及びフィルタ強度判定によって、デブロックフィルタを適用しないこと、又は、適用するデブロックフィルタの種類が判定される。
例えば、デブロックフィルタとして、ウイークフィルタとストロングフィルタとがある場合、適用要否判定及びフィルタ強度判定では、デブロックフィルタを適用しないこと、ウイークフィルタを適用すること、又は、ストロングフィルタを適用することが判定される。以下、適用要否判定及びフィルタ強度判定を、まとめて、フィルタ判定ともいう。
また、本明細書において、復号画像には、符号化時にローカル復号されたローカル復号画像が含まれる。
デブロックフィルタに関する処理では、まず、フィルタ判定が行われる。フィルタ判定では、まず、復号画像のブロック境界(Block Boundary)にデブロックフィルタを適用するか否かを判定する適用要否判定が行われる。
なお、HEVCにおいて、ブロック境界は、参照文献REF2に記載されているQuad-Tree Block Structureのブロック構造に基づいて特定される。具体的には、最小のブロック単位である8×8画素ブロック(サンプルグリッド)のエッジのうち、TU(Transform Unit)境界又はPU(Prediction Unit)境界のうち少なくともいずれか一方であるという条件を満たすエッジが、HEVCにおけるブロック境界として特定される。
適用要否判定は、ブロック境界の境界強度(Boundary Strength:以下、bSとも記載する)に基づいて行われる。HEVCにおいてbSは、ブロック境界に対してデブロックフィルタのフィルタ判定(適用要否判定)を行う際の処理単位である部分ブロック境界(ブロック境界の一部)と直交する方向の4ラインを、デブロックフィルタを適用するフィルタ適用単位として、そのフィルタ適用単位の4ラインごとに設定される。ブロック境界が垂直方向の垂直ブロック境界である場合、フィルタ適用単位のラインとは、垂直ブロック境界と直交する水平方向のライン(行)である。また、ブロック境界が水平方向の水平ブロック境界である場合、フィルタ適用単位のラインとは、水平ブロック境界と直交する垂直方向のライン(列)である。
図1は、HEVCにおけるbSの設定方法を説明する図である。
図1に示すように、HEVCにおいてbSは、イントラ予測に関する条件である条件A、Y成分の有意係数に関する条件である条件B1、及び動きベクトル(MV)と参照画像(参照ピクチャ)に関する条件である条件B2の真偽(満たされるか満たされないか)に基づいて設定される。図1を参照すると、条件Aが真である場合にbSは2に設定される。また、条件Aが偽であり、条件B1、条件B2のうち少なくとも一方が真である場合にbSは1に設定される。そして、条件A、条件B1、及び条件B2がいずれも偽である場合にbSは0に設定される。なお、図1に示す条件A、条件B1、条件B2は、以下のような条件である。また、ここでは、説明を簡単にするため、ブロック境界は、例えば、垂直ブロック境界であることとする。
条件A:bSの設定対象のブロック境界と直交するラインのうち最も上のラインの画素を含みブロック境界を挟むCU(Coding Unit)のうち、少なくともいずれか一方の予測モードがイントラ予測モードである。
条件B1:ブロック境界がTU境界であり、bSの設定対象のブロック境界と直交するラインのうち最も上のラインの画素を含みブロック境界を挟む2つのTUのうち、少なくともいずれか一方にY成分の有意係数が存在する。
条件B2:bSの設定対象のブロック境界と直交するラインのうち最も上のラインの画素を含みブロック境界を挟む2つのCUの間で、MVの差の絶対値が1画素以上、又は、動き補償の参照画像が異なるか、MVの数が異なる。
HEVCにおいては、上述のように設定されたbSが1以上に設定されたブロック境界を対象に、復号画像の輝度成分(Y成分)に対するデブロックフィルタが適用され得る。HEVCにおいて、条件B1、条件B2が満たされるか否かに応じて、復号画像の輝度成分に対するデブロックフィルタの適用要否判定の判定結果は異なり得る。
なお、HEVCでは、復号画像の輝度成分に対するデブロックフィルタとして、フィルタ強度が大きいストロングフィルタと、フィルタ強度が小さいウイークフィルタとが用意されている。bSが1以上である場合、復号画像の輝度成分に対するデブロックフィルタに関する処理は、さらなる条件に基づくさらなる適用要否判定が行われた後に、フィルタ強度の判定、フィルタリングと続く。これらの処理の詳細については参照文献REF2に記載されており、ここでの説明は省略する。
一方で、HEVCにおける復号画像の色差成分(U成分、V成分)に対するデブロックフィルタは、bSが2であるブロック境界のみを対象として適用される。そのため、図1に示すように、条件B1、条件B2が満たすか否かは、HEVCにおいて、復号画像の色差成分に対するデブロックフィルタの適用要否判定に影響を与えない。
また、HEVCにおいて、復号画像の色差成分に対して適用され得るデブロックフィルタはウイークフィルタのみである。そのため、復号画像の色差成分について、フィルタ強度の判定処理は不要であり、bSが2である場合には、復号画像の色差成分に対してウイークフィルタが適用される。
ところで、参照文献REF3に記載されるように、VVCにおけるQTBT Block Structureによるブロック分割では、HEVCにおけるQuad-Tree Block Structureによるブロック分割よりも、さらに大きなサイズのブロックが選択され得る。フラットな領域(領域内の画素値の変化が小さい領域)におけるブロックのサイズが大きい場合、ブロック歪みが発生し易い。そのため、より大きなサイズのブロックが選択され得るVVCにおいて、HEVCと同様に復号画像の色差成分に対して適用され得るデブロックフィルタをウイークフィルタのみとした場合、色差成分において、顕著なブロック歪みが残ってしまう恐れがあった。このような状況に鑑み、復号画像の色差成分に対するデブロックフィルタを改善することが望まれている。
そこで、HEVCとは異なるデブロックフィルタの他の適用方法が提案されている。デブロックフィルタの他の適用方法では、例えば、色差成分に適用され得るデブロックフィルタを、輝度成分に適用され得るデブロックフィルタと同様に2種類に変更し、色差成分に対しても、ストロングフィルタを適用し得ることが提案されている。また、bSが2である場合のみならず、bSが1の場合であっても、復号画像の色差成分に対してデブロックフィルタが適用され得ることが提案されている。
図2は、デブロックフィルタの他の適用方法におけるbSの設定方法を説明する図である。
デブロックフィルタの他の適用方法では、図2に示したHEVCの例と同様に、上述した条件A、条件B1、条件B2に基づいてbSが設定される。ただし、上述したように、bSが2である場合のみならず、bSが1の場合であっても復号画像の色差成分に対してデブロックフィルタが適用され得る。図2に示すように、条件B1、条件B2が満たされるか否かに応じて、復号画像の色差成分(U成分、V成分)に対するデブロックフィルタの適用要否判定の判定結果は異なり得る。
図3は、垂直方向のブロック境界である垂直ブロック境界BBを挟んで隣接する、2つの隣接ブロックとしてのブロックBp及びブロックBq内の画素(の画素値)の例を示す図である。
なお、ここでは、垂直ブロック境界を例にとって説明するが、垂直ブロック境界について説明される事項は、特に断らない限り、水平方向のブロック境界である水平ブロック境界にも同様に適用可能である。また、図3には、ブロックBp及びブロックBqが4×4画素のブロックである例を示しているが、ここで説明される事項は、他のサイズのブロックにも同様に適用可能である。
図3の例において、ブロックBp内の画素値(及び画素)は、pi,jという記号で示されている。iは列のインデクスで、jは行のインデクスである。列のインデクスiは、垂直ブロック境界BBに近い列から順に(図中の左から右へ)0,1,2,3と付番されている。行のインデクスjは、上から下へ0,1,2,3と付番されている。一方、ブロックBq内の画素値(及び画素)は、qk,jという記号で示されている。kは列のインデクス、jは行のインデクスである。列のインデクスkは、垂直ブロック境界BBに近い列から順に(図中の右から左へ)0,1,2,3と付番されている。画素値とは、ここでは、輝度成分又は色差成分である。
なお、図3では、ブロック境界BBが、垂直ブロック境界であるとしているが、ブロック境界BBを、水平ブロック境界とみなすとともに、ブロックBp及びブロックBqを、水平ブロック境界BBを挟んで隣接する2つの隣接ブロックとみなすことができる。この場合、pi,jにおいて、iは行のインデクスで、jは列のインデクスとなる。qk,jについても同様である。
デブロックフィルタの他の適用方法では、図2を参照して説明したようにbSが設定された後、以下のように3つの条件を用いて、フィルタ判定が行われる。
フィルタ判定は、輝度成分については、4ライン単位で行われ、色差成分については、輝度成分の4ラインに対応する色差成分のライン単位で行われる。
復号画像のカラーフォーマットが、例えば、YUV420フォーマットである場合、色差成分の画素の横方向及び縦方向の密度は、それぞれ、輝度成分の画素の横方向及び縦方向の密度の1/2である。
したがって、復号画像のカラーフォーマットが、YUV420フォーマットである場合、色差成分については、輝度成分の4ラインに対応する色差成分の2ライン単位で、フィルタ判定が行われる。
すなわち、復号画像のカラーフォーマットがYUV420フォーマットである場合、色差成分については、垂直ブロック境界BB(と直交する水平方向の画素)に対してデブロックフィルタを適用するかを判定する際の処理単位である部分垂直ブロック境界は、垂直方向に連続する色差成分の2ライン分の垂直ブロック境界(垂直ブロック境界のうちの、水平方向の色差成分の連続する2ラインと直交する部分)である。色差成分のフィルタ判定は、そのような部分垂直ブロック境界ごとに行われる。
いま、図3に示したブロックBp及びブロックBqが輝度成分のブロックであるとする。この場合、輝度成分のフィルタ判定は、ラインL11及びラインL12並びにラインL21及びラインL22の4ライン分の部分垂直ブロック境界bを対象に行われる。
また、図3に示したブロックBp及びブロックBqが色差成分のブロックであるとする。この場合、色差成分のフィルタ判定は、ラインL11及びラインL12の2ライン分の部分垂直ブロック境界b1と、ラインL21及びラインL22の2ライン分の部分垂直ブロック境界b2とをそれぞれ対象として行われる。
部分垂直ブロック境界b1に対するフィルタ判定は、その部分垂直ブロック境界b1と直交する水平方向の(色差成分の)ラインL11及びラインL12(の画素)を用いて行われる。同様に、部分垂直ブロック境界b2に対するフィルタ判定は、その部分垂直ブロック境界b2と直交する水平方向のラインL21及びラインL22を用いて行われる。
デブロックフィルタの他の適用方法のフィルタ判定では、適用要否判定において、以下の条件C91、及び条件C92が真であるか否かが順に判定される。
条件C91:(bS==2||bS==1&&(block_width>16&&block_height>16))
条件C92:d<beta
なお、条件C91においてblock_width、及び、block_heightは、図3に示したように、フィルタ判定の対象となる部分垂直ブロック境界b1にかかるブロック(例えばCU)の水平方向のサイズ、及び、垂直方向のサイズである。||は、論理和を表し、&&は、論理積を表す。
また、条件C92における変数betaは、エッジ判定閾値であり、変数betaは、量子化パラメータに応じて与えられる。また、条件C92における変数dは、以下の式(1)ないし式(7)により設定される。
dp0=Abs(p2,0-2*p1,0+p0,0)
・・・(1)
dp1=Abs(p2,3-2*p1,3+p0,3)
・・・(2)
dq0=Abs(q2,0-2*q1,0+q0,0)
・・・(3)
dq1=Abs(q2,3-2*q1,3+q0,3)
・・・(4)
dpq0=dp0+dq0
・・・(5)
dpq1=dp1+dq1
・・・(6)
d=dpq0+dpq1
・・・(7)
なお、条件C92は、フィルタ判定に用いられるラインが異なることを除いて、HEVCにおいて輝度成分に適用されるデブロックフィルタのフィルタ判定において用いられる条件(以下、輝度成分における条件と呼ぶ)と同様である。輝度成分における条件では、1ライン目の画素と4ライン目の画素とを用いて、4ライン(セグメント)分の部分垂直ブロック境界(垂直ブロック境界のうちの、垂直方向に連続する4ラインと直交する部分)ごとに、フィルタ判定が行われる。
また、カラーフォーマットがYUV420フォーマットである場合、色差成分(U成分、V成分)の水平方向及び垂直方向それぞれの画素の密度が輝度成分の画素の密度の半分であり、輝度成分の4ラインは、色差成分の2ラインに対応する。そのため、YUV420フォーマットでは、上述のように、色差成分については、輝度成分の4ラインに対応する色差成分の2ライン分の部分垂直ブロック境界(例えば、部分垂直ブロック境界b1やb2)ごとに、その部分垂直ブロック境界と直交する色差成分の1ライン目の画素と2ライン目の画素とを用いて、フィルタ判定が行われる。
すなわち、例えば、部分垂直ブロック境界b1については、式(2)及び式(4)の輝度成分の4ライン目の画素pi,3及びqk,3に代えて、色差成分の2ライン目の画素pi,1及びqk,1を用いてフィルタ判定が行われる。
条件C91及び条件C92のうち少なくともいずれか一方が偽である場合には、復号画像の色差成分にデブロックフィルタが適用されない。一方、条件C91及び条件C92の両方が真である場合、フィルタ判定では、フィルタ強度判定が行われる。
フィルタ強度判定では、ストロングフィルタとウイークフィルタとのうち、いずれのフィルタを適用するかの判定として、例えば、条件C93が真であるか否かが判定される。
条件C93:(block_width>16&&block_height>16)
なお、条件C93におけるblock_width、及び、block_heightは、条件C91におけるblock_width、及びblock_heightと同様に、フィルタ判定の対象となる部分垂直ブロック境界にかかるブロックの水平方向のサイズ、及び、垂直方向のサイズである。
条件C93が真である場合には、部分垂直ブロック境界において復号画像にストロングフィルタが適用され、条件C93が偽である場合には、部分垂直ブロック境界において復号画像にウイークフィルタが適用される。
色差成分及び輝度成分に適用されるストロングフィルタとしては、HEVCにおいて輝度成分に適用されるストロングフィルタを採用することができる。この場合、ストロングフィルタは、以下の式(8)ないし式(13)で表される。
p0′=Clip3(p0-2*tc,p0+2*tC,(p2+2*p1+2*p0+2*q0+q1+4)>>3)
・・・(8)
p1′=Clip3(p1-2*tc,p1+2*tC,(p2+p1+p0+q0+2)>>2)
・・・(9)
p2′=Clip3(p2-2*tc,p2+2*tC,(2*p3+3*p2+p1+p0+q0+4)>>3)
・・・(10)
q0′=Clip3(q0-2*tc,q0+2*tC,(p1+2p0+2q0+2q1+q2+4)>>3)
・・・(11)
q1′=Clip3(q1-2*tc,q1+2*tC,(p0+q0+q1+q2+2)>>2)
・・・(12)
q2′=Clip3(q2-2*tc,q2+2*tC,(p0+q0+q1+3*q2+2*q3+4)>>3)
・・・(13)
なお、式(8)ないし式(13)において、pi及びqkはデブロックフィルタ適用前の画素値を表す。また、pi′及びqk′は、デブロックフィルタ適用後の画素値を表す。ここで、i及びkはそれぞれ上述したブロックBp、ブロックBq内の列のインデクスであり、式(8)ないし式(13)では行のインデクスは同一であるため、省略されている。また、tCは量子化パラメータに応じて与えられるパラメータである。また、Clip3(a,b,c)は、値cをa≦c≦bの範囲でクリップするクリッピング処理を表す。
色差成分及び輝度成分に適用されるウイークフィルタとしては、HEVCにおいて輝度成分に適用されるウイークフィルタを採用することができる。
<ISP>
図4は、ISP(intra-sub-partition)を説明する図である。
非特許文献1では、ブロック構造が、直交変換の単位となる変換ブロックであるTU(Transform Unit)、予測の単位となる予測ブロックであるPU(Prediction Unit)、及び、符号化の単位となる符号化ブロックであるCU(Coding Unit)が同一のブロックに統一された階層構造を有する。
そして、輝度成分のブロックに適用されるブロックモードとして、ISP(intra-sub-partition)がある。ブロックは、ISPに設定されると、複数のサブブロック(Sub-Partition)に分割することができ、サブブロック単位で、直交変換を行うことができる。
ISPに設定されたブロックのサブブロックへの分割は、画素数(輝度成分の数)が64以上のブロックを対象に、水平又は垂直の同一方向(一次元方向)に、2分割又は4分割を選択して行うことができる。
すなわち、ISPに設定されたブロックのサブブロックへの分割としては、図4に示すように、水平方向若しくは垂直方向に2等分又は4等分の分割を行うことができる。したがって、ブロックの横×縦を、W×Hで表すこととすると、ブロックは、W×H/2の2個のサブブロック、W/2×Hの2個のサブブロック、W×H/4の4個のサブブロック、又は、W/4×Hの4個のサブブロックに分割することができる。
ISPに設定されたブロック、ひいては、そのブロックを分割したサブブロックについては、イントラ予測が行われる。イントラ予測が行われるブロックのブロック境界には、ブロック歪みが生じやすいが、非特許文献1では、サブブロックのブロック境界(サブブロック境界)は、デブロックフィルタの適用の対象になっていない。
そこで、本技術では、サブブロック境界(と直交するラインの画素)を、デブロックフィルタの適用の対象として、デブロックフィルタが適用され得る。これにより、サブブロック境界に生じるブロック歪みを抑制することができる。
例えば、ブロック境界に隣接するブロックがイントラ予測されるブロックである場合にブロック境界に設定されるbS(BS)と同一のbSを、サブブロック境界のbSとして設定することで、サブブロック境界にデブロックフィルタを適用することができる。図1及び図2では、ブロック境界に隣接するブロックがイントラ予測されるブロックである場合にブロック境界に設定されるbSは、2であり、したがって、サブブロック境界のbSとしては、2を設定することができる。なお、サブブロック境界のbSとしては、その他、例えば、1を設定することができる。
なお、ブロックがサブブロックに分割される場合としては、ISPが設定された場合の他、SBT(Sub-Block Transform)が設定された場合がある。SBTが設定された場合も、ISPが設定された場合と同様に、サブブロック境界に、デブロックフィルタを適用することができる。
図5は、デブロックフィルタのフィルタタイプの例を示す図である。
デブロックフィルタのフィルタタイプ(種類)としては、例えば、ロングフィルタ、ストロングフィルタ、及び、ウイークフィルタの3つを採用することができる。ロングフィルタ、ストロングフィルタ、及び、ウイークフィルタは、その順で、フィルタ強度が強い(平滑性が高い)フィルタになっている。
デブロックフィルタは、ブロック境界BBと直交するラインの画素のうちの、ブロック境界BBに連続して隣接する所定数の画素に適用される。ここで、デブロックフィルタが適用される画素を、適用対象画素ともいう。また、適用対象画素ではないが、デブロックフィルタの適用にあたって参照される画素、すなわち、デブロックフィルタの適用としてのフィルタ演算に用いられる画素を、参照画素ともいう。なお、適用対象画素は、デブロックフィルタの適用にあたって参照されることがある。
例えば、ブロック境界BBが垂直ブロック境界である場合、ロングフィルタでは、ブロック境界BBと直交するラインの画素のうちの、ブロック境界BBの左に連続して隣接する7個の画素と、ブロック境界BBの右に連続して隣接する7個の画素とが、適用対象画素となる。また、ブロック境界BBと直交するラインの画素のうちの、ブロック境界BBから8個目の画素が、参照画素となる。
なお、ロングフィルタは、1辺が32画素以上のブロック(の画素)を対象として適用され得る。
ストロングフィルタでは、ブロック境界BBと直交するラインの画素のうちの、ブロック境界BBの左に連続して隣接する3個の画素と、ブロック境界BBの右に連続して隣接する3個の画素とが、適用対象画素となる。また、ブロック境界BBと直交するラインの画素のうちの、ブロック境界BBから4個目の画素が、参照画素となる。
ウイークフィルタでは、ブロック境界BBと直交するラインの画素のうちの、ブロック境界BBの左に連続して隣接する2個の画素と、ブロック境界BBの右に連続して隣接する2個の画素とが、適用対象画素となる。また、ブロック境界BBと直交するラインの画素のうちの、ブロック境界BBから3個目の画素が、参照画素となる。
なお、ウイークフィルタでは、ブロック境界BBと直交するラインの画素のうちの、ブロック境界BBから1個目の画素、すなわち、ブロック境界の左に隣接する1個の画素、及び、右に隣接する1個の画素だけを適用対象画素とすることができる。この場合、ブロック境界BBと直交するラインの画素のうちの、ブロック境界BBから2個目及び3個目の画素が、参照画素となる。
以上、ブロック境界BBが垂直ブロック境界である場合のデブロックフィルタの適用について説明したが、ブロック境界BBが水平ブロック境界である場合のデブロックフィルタの適用も同様である。
ところで、図4で説明したように、ISPに設定された64画素以上のブロックは、水平又は垂直の同一方向への2分割又は4分割により、サブブロックに分割することができる。したがって、ブロックは、ブロックサイズが1×N、N×1、2×N、N×2、4×N、N×4のサブブロックに分割され得る。例えば、ブロックが、4×16画素のブロックである場合、ブロックは、2×16画素や、1×16画素のブロックサイズのサブブロックに分割され得る。
一方、デブロックフィルタの適用は、複数のブロック境界(それぞれに隣接する画素)に対して、並列して行うことができる。例えば、ある水平ラインの、各垂直ブロック境界BBに隣接する画素に対して、デブロックフィルタを並列(同時)に適用することができる。ここで、複数の垂直ブロック境界に対して、デブロックフィルタを並列に適用することを、デブロックフィルタの並列適用ともいう。デブロックフィルタの並列適用によれば、処理の高速化を図ることができる。
図4で説明したように、サブブロック境界(と直交するラインの画素)を、デブロックフィルタの適用の対象とする場合に、デブロックフィルタの並列適用を行うときには、不都合が生じ得る。
図6は、デブロックフィルタの並列適用を行うときに生じ得る不都合を説明する図である。
図6は、サブブロックサイズが2×Nのサブブロックが水平方向に並んでいる場合のある水平ラインLの画素を表している。
ここでは、図5で説明した3つの(フィルタタイプの)デブロックフィルタのうちの、例えば、ウイークフィルタを適用することとする。
ある垂直ブロック境界BB1に、ウイークフィルタが適用される場合、水平ラインLの、垂直ブロック境界BB1に連続して隣接する2個の画素p1及びp2、並びに、q1及びq2が適用対象画素となる。さらに、この場合、水平ラインLの、垂直ブロック境界BB1から3個目の画素p3及びq3が、参照画素となる。
一方、垂直ブロック境界BB1の右に隣接する垂直ブロック境界BB2に、ウイークフィルタがされる場合、画素q1ないしq3は、適用対象画素となる。
したがって、垂直ブロック境界BB1にウイークフィルタが適用される場合に適用対象画素となる画素q1及びq2、並びに、参照画素となるq3は、垂直ブロック境界BB2にウイークフィルタがされる場合に適用対象画素にもなる。
このため、垂直ブロック境界BB1にウイークフィルタが適用される前後や、垂直ブロック境界BB2にウイークフィルタが適用される前後で、画素q1ないしq3の画素値(輝度成分)が変化する。そして、その変化に起因して、垂直ブロック境界BB1及びBB2にウイークフィルタが適用されるタイミングによって適用対象画素q1及びq2の画素値が変化する。
また、垂直ブロック境界BB1にウイークフィルタが適用される場合と、垂直ブロック境界BB12ウイークフィルタが適用される場合とのいずれの場合にも適用対象画素となる画素q1及びq2については、垂直ブロック境界BB1にウイークフィルタが適用される場合と、垂直ブロック境界BB12にウイークフィルタが適用される場合とで、画素値の書き込みの競合が生じ得る。
以上の点、ウイークフィルタよりも適用対象画素が多いストロングフィルタ及びロングフィルタでも同様である。
本技術では、デブロックフィルタの並列適用を行うときに生じ得る、上述のような、ウイークフィルタが適用されるタイミングによる適用対象画素の画素値の変化や、画素値の書き込みの競合といった不都合を抑制する。
そのため、本技術では、1のサブブロック境界でデブロックフィルタが適用される適用対象画素の中に、他のサブブロック境界でのデブロックフィルタの適用で参照される画素が含まれないように、デブロックフィルタを適用する。
また、本技術では、1のサブブロック境界でデブロックフィルタが適用される適用対象画素の中に、他のサブブロック境界、すなわち、1のサブブロック境界に隣接するサブブロック境界(以下、隣接サブブロック境界ともいう)でのデブロックフィルタの適用で参照される画素が含まれないように、デブロックフィルタを適用することができない場合には、デブロックフィルタの適用を制限する(デブロックフィルタを適用しない)。
図6では、例えば、サブブロック境界BB2でデブロックフィルタが適用される適用対象画素q1ないしq3の中に、隣接サブブロック境界としてのサブブロック境界BB1でのデブロックフィルタの適用で参照される画素p1ないしp3及びq1ないしq3が含まれないように、デブロックフィルタを適用することができない。そのため、デブロックフィルタの適用は制限される。
図5で説明したデブロックフィルタについては、サブブロック境界と直交する方向のサブブロックのサイズが1又は2画素である場合、すなわち、サブブロック境界に隣接するサブブロックのブロックサイズが、1×N、N×1、2×N、又は、N×2である場合、1のサブブロック境界でデブロックフィルタが適用される適用対象画素の中に、隣接サブブロック境界でのデブロックフィルタの適用で参照される画素が含まれないように、デブロックフィルタを適用することができることはない。
したがって、本技術では、ブロックサイズが1×N、N×1、2×N、又は、N×2のサブブロックのサブブロック境界では、デブロックフィルタの適用が制限される。これにより、デブロックフィルタの並列適用を行う場合に、不都合が生じることを抑制することができる。
また、サブブロック境界と直交する方向のサブブロックのサイズが4画素である場合、すなわち、サブブロック境界に隣接するサブブロックのブロックサイズが、4×N、又は、N×4である場合、サブブロック境界から1個目の画素だけを適用対象画素とすることで、1のサブブロック境界でウイークフィルタが適用される適用対象画素の中に、隣接サブブロック境界でのウイークフィルタの適用で参照される画素が含まれないように、ウイークフィルタを適用することができる。
そこで、本技術では、ブロックサイズが4×N、又は、N×4のサブブロックのサブブロック境界では、サブブロック境界から1個目の画素だけを適用対象画素とするウイークフィルタのみを適用し得ることとする。この場合、不都合が生じることなく、デブロックフィルタの並列適用を行うことができる。
そして、本技術では、サブブロック境界と直交する方向のサブブロックのサイズが8画素以上である場合、すなわち、サブブロック境界に隣接するサブブロックのブロックサイズが、8×N、又は、N×8以上のブロックサイズである場合、ウイークフィルタ、ストロングフィルタ、及び、ロングフィルタの中から所定の方法で選択されたデブロックフィルタを適用し得ることとする。
<本技術を適用した画像処理システム>
図7は、本技術を適用した画像処理システムの一実施の形態の構成例を示すブロック図である。
画像処理システム10は、エンコーダ11としての画像処理装置、及び、デコーダ51としての画像処理装置を有する。
エンコーダ11は、そこに供給される符号化対象の元画像を符号化し、その符号化により得られる符号化ビットストリームを出力する。符号化ビットストリームは、図示せぬ記録媒体又は伝送媒体を介して、デコーダ51に供給される。
デコーダ51は、そこに供給される符号化ビットストリームを復号し、その復号により得られる復号画像を出力する。
エンコーダ11及びデコーダ51では、TU(変換ブロック)、PU(予測ブロック)、及び、CU(符号化ブロック)が同一のブロックに統一された階層構造を有するブロック構造に従って、符号化及び復号が、それぞれ行われる。
<エンコーダ11の構成例>
図8は、図7のエンコーダ11の詳細な構成例を示すブロック図である。
なお、以下説明するブロック図については、図が煩雑になるのを避けるため、各ブロックの処理で必要となる情報(データ)を供給する線の記載を、適宜省略する。
図8において、エンコーダ11は、A/D変換部21、並べ替えバッファ22、演算部23、直交変換部24、量子化部25、可逆符号化部26、及び、蓄積バッファ27を有する。さらに、エンコーダ11は、逆量子化部28、逆直交変換部29、演算部30、フレームメモリ32、選択部33、イントラ予測部34、動き予測補償部35、予測画像選択部36、及び、レート制御部37を有する。また、エンコーダ11は、デブロックフィルタ31a、適応オフセットフィルタ41、及び、ALF(adaptive loop filter)42を有する。
A/D変換部21は、アナログ信号の元画像(符号化対象)を、ディジタル信号の元画像にA/D変換し、並べ替えバッファ22に供給して記憶させる。なお、エンコーダ11にディジタル信号の元画像が供給される場合には、エンコーダ11は、A/D変換部21を設けずに構成することができる。
並べ替えバッファ22は、元画像のフレームを、GOP(Group Of Picture)に応じて、表示順から符号化(復号)順に並べ替え、演算部23、イントラ予測部34、及び、動き予測補償部35に供給する。
演算部23は、並べ替えバッファ22からの元画像から、予測画像選択部36を介してイントラ予測部34又は動き予測補償部35から供給される予測画像を減算し、その減算により得られる残差(予測残差)を、直交変換部24に供給する。
直交変換部24は、演算部23から供給される残差に対して、離散コサイン変換やカルーネン・レーベ変換等の直交変換を施し、その直交変換により得られる直交変換係数を量子化部25に供給する。
量子化部25は、直交変換部24から供給される直交変換係数を量子化する。量子化部25は、レート制御部37から供給される符号量の目標値(符号量目標値)に基づいて量子化パラメータを設定し、直交変換係数の量子化を行う。量子化部25は、量子化された直交変換係数である符号化データを、可逆符号化部26に供給する。
可逆符号化部26は、量子化部25からの符号化データとしての量子化された直交変換係数を所定の可逆符号化方式で符号化する。
また、可逆符号化部26は、エンコーダ11での予測符号化に関する符号化情報のうちの、復号装置170での復号に必要な符号化情報を、各ブロックから取得する。
ここで、符号化情報としては、例えば、イントラ予測やインター予測の予測モード、動きベクトル等の動き情報、符号量目標値、量子化パラメータ、ピクチャタイプ(I,P,B)、デブロックフィルタ31a及び適応オフセットフィルタ41のフィルタパラメータ等がある。
予測モードは、イントラ予測部34や動き予測補償部35から取得することができる。動き情報は、動き予測補償部35から取得することができる。デブロックフィルタ31a及び適応オフセットフィルタ41のフィルタパラメータは、デブロックフィルタ31a及び適応オフセットフィルタ41からそれぞれ取得することができる。
可逆符号化部26は、符号化情報を、例えば、CAVLC(Context-Adaptive Variable Length Coding)やCABAC(Context-Adaptive Binary Arithmetic Coding)等の可変長符号化又は算術符号化その他の可逆符号化方式で符号化し、符号化後の符号化情報、及び、量子化部25からの符号化データを含む(多重化した)符号化ビットストリームを生成して、蓄積バッファ27に供給する。
蓄積バッファ27は、可逆符号化部26から供給される符号化ビットストリームを、一時的に蓄積する。蓄積バッファ27に蓄積された符号化ビットストリームは、所定のタイミングで読み出されて伝送される。
量子化部25において量子化された直交変換係数である符号化データは、可逆符号化部26に供給される他、逆量子化部28にも供給される。逆量子化部28は、量子化された直交変換係数を、量子化部25による量子化に対応する方法で逆量子化し、その逆量子化により得られる直交変換係数を、逆直交変換部29に供給する。
逆直交変換部29は、逆量子化部28から供給される直交変換係数を、直交変換部24による直交変換処理に対応する方法で逆直交変換し、その逆直交変換の結果得られる残差を、演算部30に供給する。
演算部30は、逆直交変換部29から供給される残差に、予測画像選択部36を介してイントラ予測部34又は動き予測補償部35から供給される予測画像を加算し、これにより、元画像を復号した復号画像(の一部)を得て出力する。
演算部30が出力する復号画像は、デブロックフィルタ31a又はフレームメモリ32に供給される。
フレームメモリ32は、演算部30から供給される復号画像、及び、ALF42から供給される、デブロックフィルタ31a、適応オフセットフィルタ41、及び、ALF42が適用された復号画像(フィルタ画像)を一時記憶する。フレームメモリ32に記憶された復号画像は、必要なタイミングで、予測画像の生成に用いられる参照画像として、選択部33に供給される。
選択部33は、フレームメモリ32から供給される参照画像の供給先を選択する。イントラ予測部34においてイントラ予測が行われる場合、選択部33は、フレームメモリ32から供給される参照画像を、イントラ予測部34に供給する。動き予測補償部35においてインター予測が行われる場合、選択部33は、フレームメモリ32から供給される参照画像を、動き予測補償部35に供給する。
イントラ予測部34は、並べ替えバッファ22から供給される元画像と、選択部33を介してフレームメモリ32から供給される参照画像とを用い、イントラ予測(画面内予測)を行う。イントラ予測部34は、所定のコスト関数(例えば、RDコスト等)に基づいて、最適なイントラ予測モードを選択し、その最適なイントラ予測モードで参照画像から生成された予測画像を、予測画像選択部36に供給する。また、上述したように、イントラ予測部34は、コスト関数に基づいて選択されたイントラ予測モードを示す予測モードを、可逆符号化部26等に適宜供給する。
動き予測補償部35は、並べ替えバッファ22から供給される元画像と、選択部33を介してフレームメモリ32から供給される参照画像とを用い、動き予測(インター予測)を行う。さらに、動き予測補償部35は、動き予測により検出される動きベクトルに応じて動き補償を行い、予測画像を生成する。動き予測補償部35は、あらかじめ用意された複数のインター予測モードで、インター予測を行い、参照画像から予測画像を生成する。
動き予測補償部35は、複数のインター予測モードそれぞれについて得られた予測画像の所定のコスト関数に基づいて、最適なインター予測モードを選択する。さらに、動き予測補償部35は、最適なインター予測モードで生成された予測画像を、予測画像選択部36に供給する。
また、動き予測補償部35は、コスト関数に基づいて選択されたインター予測モードを示す予測モードや、そのインター予測モードで符号化された符号化データを復号する際に必要な動きベクトル等の動き情報等を、可逆符号化部26に供給する。
予測画像選択部36は、演算部23及び演算部30に供給する予測画像の供給元を、イントラ予測部34及び動き予測補償部35の中から選択し、その選択した方の供給元から供給される予測画像を、演算部23及び演算部30に供給する。
レート制御部37は、蓄積バッファ27に蓄積された符号化ビットストリームの符号量に基づいて、オーバーフローあるいはアンダーフローが発生しないように、量子化部25の量子化動作のレートを制御する。すなわち、レート制御部37は、蓄積バッファ27のオーバーフロー及びアンダーフローが生じないように、符号化ビットストリームの目標符号量を設定し、量子化部25に供給する。
デブロックフィルタ31aは、演算部30からの復号画像に、デブロックフィルタを必要に応じて適用し、デブロックフィルタが適用された復号画像(フィルタ画像)、又は、デブロックフィルタが適用されていない復号画像を、適応オフセットフィルタ41に供給する。
適応オフセットフィルタ41は、デブロックフィルタ31aからの復号画像に、適応オフセットフィルタを必要に応じて適用し、適応オフセットフィルタが適用された復号画像(フィルタ画像)、又は、適応オフセットフィルタが適用されていない復号画像を、ALF42に供給する。
ALF42は、適応オフセットフィルタ41からの復号画像に、ALFを必要に応じて適用し、ALFが適用された復号画像、又は、ALFが適用されていない復号画像を、フレームメモリ32に供給する。
<符号化処理>
図9は、図8のエンコーダ11の符号化処理の例を説明するフローチャートである。
なお、図9に示す符号化処理の各ステップの順番は、説明の便宜上の順番であり、実際の符号化処理の各ステップは、適宜、並列的に、必要な順番で行われる。後述する処理についても、同様である。
エンコーダ11では、ステップS11において、A/D変換部21は、元画像をA/D変換し、並べ替えバッファ22に供給して、処理は、ステップS12に進む。
ステップS12において、並べ替えバッファ22は、A/D変換部21からの元画像を記憶し、符号化順に並べ替えて出力し、処理は、ステップS13に進む。
ステップS13では、イントラ予測部34は、イントラ予測モードのイントラ予測処理を行い、処理は、ステップS14に進む。ステップS14において、動き予測補償部35は、インター予測モードでの動き予測や動き補償を行うインター動き予測処理を行い、処理は、ステップS15に進む。
イントラ予測部34のイントラ予測処理、及び、動き予測補償部35のインター動き予測処理では、各種の予測モードのコスト関数が演算されるとともに、予測画像が生成される。
ステップS15では、予測画像選択部36は、イントラ予測部34及び動き予測補償部35で得られる各コスト関数に基づいて、最適な予測モードを決定する。そして、予測画像選択部36は、イントラ予測部34により生成された予測画像と、動き予測補償部35により生成された予測画像のうちの最適な予測モードの予測画像を選択して出力し、処理は、ステップS15からステップS16に進む。
ステップS16では、演算部23は、並べ替えバッファ22が出力する元画像である符号化対象の対象画像と、予測画像選択部36が出力する予測画像との残差を演算し、直交変換部24に供給して、処理は、ステップS17に進む。
ステップS17では、直交変換部24は、演算部23からの残差を直交変換し、その結果得られる直交変換係数を、量子化部25に供給して、処理は、ステップS18に進む。
ステップS18では、量子化部25は、直交変換部24からの直交変換係数を量子化し、その量子化により得られる量子化係数を、可逆符号化部26及び逆量子化部28に供給して、処理は、ステップS19に進む。
ステップS19では、逆量子化部28は、量子化部25からの量子化係数を逆量子化し、その結果得られる直交変換係数を、逆直交変換部29に供給して、処理は、ステップS20に進む。ステップS20では、逆直交変換部29は、逆量子化部28からの直交変換係数を逆直交変換し、その結果得られる残差を、演算部30に供給して、処理は、ステップS21に進む。
ステップS21では、演算部30は、逆直交変換部29からの残差と、予測画像選択部36が出力する予測画像とを加算し、演算部23での残差の演算の対象となった元画像に対応する復号画像を生成する。演算部30は、復号画像を、デブロックフィルタ31aに供給し、処理は、ステップS21からステップS22に進む。
ステップS22では、デブロックフィルタ31aは、演算部30からの復号画像に、デブロックフィルタを適用し、その結果得られるフィルタ画像を、適応オフセットフィルタ41に供給して、処理は、ステップS23に進む。
ステップS23では、適応オフセットフィルタ41は、デブロックフィルタ31aからのフィルタ画像に、適応オフセットフィルタを適用し、その結果得られるフィルタ画像を、ALF42に供給して、処理は、ステップS24に進む。
ステップS24では、ALF42は、適応オフセットフィルタ41からのフィルタ画像に、ALFを適用し、その結果得られるフィルタ画像を、フレームメモリ32に供給して、処理は、ステップS25に進む。
ステップS25では、フレームメモリ32は、ALF42から供給されるフィルタ画像を記憶し、処理は、ステップS26に進む。フレームメモリ32に記憶されたフィルタ画像は、ステップS13やS14で、予測画像を生成する元となる参照画像として使用される。
ステップS26では、可逆符号化部26は、量子化部25からの量子化係数である符号化データを符号化し、その符号化データを含む符号化ビットストリームを生成する。さらに、可逆符号化部26は、量子化部25での量子化に用いられた量子化パラメータや、イントラ予測部34でのイントラ予測処理で得られた予測モード、動き予測補償部35でのインター動き予測処理で得られた予測モードや動き情報、デブロックフィルタ31a及び適応オフセットフィルタ41のフィルタパラメータ等の符号化情報を必要に応じて符号化し、符号化ビットストリームに含める。
そして、可逆符号化部26は、符号化ビットストリームを、蓄積バッファ27に供給し、処理は、ステップS26からステップS27に進む。
ステップS27において、蓄積バッファ27は、可逆符号化部26からの符号化ビットストリームを蓄積し、処理は、ステップS28に進む。蓄積バッファ27に蓄積された符号化ビットストリームは、適宜読み出されて伝送される。
ステップS28では、レート制御部37は、蓄積バッファ27に蓄積されている符号化ビットストリームの符号量(発生符号量)に基づいて、オーバーフローあるいはアンダーフローが発生しないように、量子化部25の量子化動作のレートを制御し、符号化処理は終了する。
<デコーダ51の構成例>
図10は、図7のデコーダ51の詳細な構成例を示すブロック図である。
図10において、デコーダ51は、蓄積バッファ61、可逆復号部62、逆量子化部63、逆直交変換部64、演算部65、並べ替えバッファ67、及び、D/A変換部68を有する。さらに、デコーダ51は、フレームメモリ69、選択部70、イントラ予測部71、動き予測補償部72、及び、選択部73を有する。また、デコーダ51は、デブロックフィルタ31b、適応オフセットフィルタ81、及び、ALF82を有する。
蓄積バッファ61は、エンコーダ11から伝送されてくる符号化ビットストリームを一時蓄積し、所定のタイミングにおいて、その符号化ビットストリームを、可逆復号部62に供給する。
可逆復号部62は、蓄積バッファ61からの符号化ビットストリームを受信し、図8の可逆符号化部26の符号化方式に対応する方式で復号する。
そして、可逆復号部62は、符号化ビットストリームの復号結果に含まれる符号化データとしての量子化係数を、逆量子化部63に供給する。
また、可逆復号部62は、パースを行う機能を有する。可逆復号部62は、符号化ビットストリームの復号結果に含まれる必要な符号化情報をパースし、符号化情報を、イントラ予測部71や、動き予測補償部72、デブロックフィルタ31b、適応オフセットフィルタ81その他の必要なブロックに供給する。
逆量子化部63は、可逆復号部62からの符号化データとしての量子化係数を、図8の量子化部25の量子化方式に対応する方式で逆量子化し、その逆量子化により得られる直交変換係数を、逆直交変換部64に供給する。
逆直交変換部64は、逆量子化部63から供給される直交変換係数を、図8の直交変換部24の直交変換方式に対応する方式で逆直交変換し、その結果得られる残差を、演算部65に供給する。
演算部65には、逆直交変換部64から残差が供給される他、選択部73を介して、イントラ予測部71又は動き予測補償部72から予測画像が供給される。
演算部65は、逆直交変換部64からの残差と、選択部73からの予測画像とを加算し、復号画像を生成して、デブロックフィルタ31bに供給する。
並べ替えバッファ67は、ALF82から供給される復号画像を一時記憶し、復号画像のフレーム(ピクチャ)の並びを、符号化(復号)順から表示順に並べ替え、D/A変換部68に供給する。
D/A変換部68は、並べ替えバッファ67から供給される復号画像をD/A変換し、図示せぬディスプレイに出力して表示させる。なお、デコーダ51に接続される機器がディジタル信号の画像を受け付ける場合には、デコーダ51は、D/A変換部68を設けずに構成することができる。
フレームメモリ69は、ALF82から供給される復号画像を一時記憶する。さらに、フレームメモリ69は、所定のタイミングにおいて、又は、イントラ予測部71や動き予測補償部72等の外部の要求に基づいて、復号画像を、予測画像の生成に用いる参照画像として、選択部70に供給する。
選択部70は、フレームメモリ69から供給される参照画像の供給先を選択する。選択部70は、イントラ予測で符号化された画像を復号する場合、フレームメモリ69から供給される参照画像をイントラ予測部71に供給する。また、選択部70は、インター予測で符号化された画像を復号する場合、フレームメモリ69から供給される参照画像を動き予測補償部72に供給する。
イントラ予測部71は、可逆復号部62から供給される符号化情報に含まれる予測モードに従い、図8のイントラ予測部34において用いられたイントラ予測モードで、フレームメモリ69から選択部70を介して供給される参照画像を用いてイントラ予測を行う。そして、イントラ予測部71は、イントラ予測により得られる予測画像を、選択部73に供給する。
動き予測補償部72は、可逆復号部62から供給される符号化情報に含まれる予測モードに従い、図8の動き予測補償部35において用いられたインター予測モードで、フレームメモリ69から選択部70を介して供給される参照画像を用いてインター予測を行う。インター予測は、可逆復号部62から供給される符号化情報に含まれる動き情報等を必要に応じて用いて行われる。
動き予測補償部72は、インター予測により得られる予測画像を、選択部73に供給する。
選択部73は、イントラ予測部71から供給される予測画像、又は、動き予測補償部72から供給される予測画像を選択し、演算部65に供給する。
デブロックフィルタ31bは、可逆復号部62から供給される符号化情報に含まれるフィルタパラメータに従い、演算部65からの復号画像に、デブロックフィルタを適用する。デブロックフィルタ31bは、デブロックフィルタが適用された復号画像(フィルタ画像)、又は、デブロックフィルタが適用されていない復号画像を、適応オフセットフィルタ81に供給する。
適応オフセットフィルタ81は、可逆復号部62から供給される符号化情報に含まれるフィルタパラメータに従い、デブロックフィルタ31bからの復号画像に、適応オフセットフィルタを必要に応じて適用する。適応凹セットフィルタ81は、適応オフセットフィルタが適用された復号画像(フィルタ画像)、又は、適応オフセットフィルタが適用されていない復号画像を、ALF82に供給する。
ALF82は、適応オフセットフィルタ81からの復号画像に、ALFを必要に応じて適用し、ALFが適用された復号画像、又は、ALFが適用されていない復号画像を、並べ替えバッファ67及びフレームメモリ69に供給する。
<復号処理>
図11は、図10のデコーダ51の復号処理の例を説明するフローチャートである。
復号処理では、ステップS51において、蓄積バッファ61は、エンコーダ11から伝送されてくる符号化ビットストリームを一時蓄積し、適宜、可逆復号部62に供給して、処理は、ステップS52に進む。
ステップS52では、可逆復号部62は、蓄積バッファ61から供給される符号化ビットストリームを受け取って復号し、符号化ビットストリームの復号結果に含まれる符号化データとしての量子化係数を、逆量子化部63に供給する。
また、可逆復号部62は、符号化ビットストリームの復号結果に含まれる符号化情報をパースする。そして、可逆復号部62は、必要な符号化情報を、イントラ予測部71や、動き予測補償部72、デブロックフィルタ31b、適応オフセットフィルタ81その他の必要なブロックに供給する。
そして、処理は、ステップS52からステップS53に進み、イントラ予測部71又は動き予測補償部72が、フレームメモリ69から選択部70を介して供給される参照画像、及び、可逆復号部62から供給される符号化情報に従い、予測画像を生成するイントラ予測処理又はインター動き予測処理を行う。そして、イントラ予測部71又は動き予測補償部72は、イントラ予測処理又はインター動き予測処理により得られる予測画像を、選択部73に供給し、処理は、ステップS53からステップS54に進む。
ステップS54では、選択部73は、イントラ予測部71又は動き予測補償部72から供給される予測画像を選択し、演算部65に供給して、処理は、ステップS55に進む。
ステップS55では、逆量子化部63は、可逆復号部62からの量子化係数を逆量子化し、その結果得られる直交変換係数を、逆直交変換部64に供給して、処理は、ステップS56に進む。
ステップS56では、逆直交変換部64は、逆量子化部63からの直交変換係数を逆直交変換し、その結果得られる残差を、演算部65に供給して、処理は、ステップS57に進む。
ステップS57では、演算部65は、逆直交変換部64からの残差と、選択部73からの予測画像を加算することにより、復号画像を生成する。そして、演算部65は、復号画像を、デブロックフィルタ31bに供給して、処理は、ステップS57からステップS58に進む。
ステップS58では、デブロックフィルタ31bは、可逆復号部62から供給される符号化情報に含まれるフィルタパラメータに従い、演算部65からの復号画像に、デブロックフィルタを適用する。デブロックフィルタ31Bは、デブロックフィルタの適用の結果得られるフィルタ画像を、適応オフセットフィルタ81に供給して、処理は、ステップS58からステップS59に進む。
ステップS59では、適応オフセットフィルタ81は、可逆復号部62から供給される符号化情報に含まれるフィルタパラメータに従い、デブロックフィルタ31bからのフィルタ画像に、適応オフセットフィルタを適用する。適応オフセットフィルタ81は、適応オフセットフィルタの適用の結果得られるフィルタ画像を、ALF82に供給して、処理は、ステップS59からステップS60に進む。
ALF82は、適応オフセットフィルタ81からのフィルタ画像に、ALFを適用し、その結果得られるフィルタ画像を、並べ替えバッファ67及びフレームメモリ69に供給して、処理は、ステップS61に進む。
ステップS61では、フレームメモリ69は、ALF82から供給されるフィルタ画像を一時記憶し、処理は、ステップS62に進む。フレームメモリ69に記憶されたフィルタ画像(復号画像)は、ステップS53のイントラ予測処理又はインター動き予測処理で、予測画像を生成する元となる参照画像として使用される。
ステップS62では、並べ替えバッファ67は、ALF82から供給されるフィルタ画像を、表示順に並べ替えて、D/A変換部68に供給し、処理は、ステップS63に進む。
ステップS63では、D/A変換部68は、並べ替えバッファ67からのフィルタ画像をD/A変換し、処理は、復号処理は終了する。D/A変換後のフィルタ画像(復号画像)は、図示せぬディスプレイに出力されて表示される。
<デブロックフィルタ31aの構成例>
図12は、デブロックフィルタ(DF)31aの構成例を示すブロック図である。
なお、デブロックフィルタ31bは、デブロックフィルタ31aと同様に構成される。
図12において、デブロックフィルタ31aは、境界強度設定部261、判定部310、フィルタリング部320、ラインバッファ330、及び、制御部340を有する。
境界強度設定部261は、復号画像のブロック境界を対象とし、ブロック境界に隣接する隣接ブロックの特性に応じて、bS(境界強度)を設定する。
境界強度設定部261は、復号画像の輝度成分については、ブロック境界と直交する4ラインに対応するブロック境界を、部分ブロック境界として、部分ブロック境界に、bSを設定する。また、境界強度設定部261は、復号画像の色差成分については、例えば、YUV420フォーマットの信号がbSの設定対象である場合、輝度成分の4ラインに対応する色差成分の2ラインに対応するブロック境界を、部分ブロック境界として、部分ブロック境界に、bSを設定する。
bSの設定は、例えば、隣接ブロック内の画素に関する画素関連パラメータを、部分ブロック境界に隣接する隣接ブロックの特性を表すパラメータとして用いて行われる。
画素関連パラメータには、輝度関連パラメータと色差関連パラメータとがある。
輝度関連パラメータ及び色差関連パラメータとは、輝度及び色差に関連するパラメータ全般をそれぞれ意味する。例えば、輝度関連パラメータ及び色差関連パラメータは、TU(Transform Unit)や、PU(Prediction Unit)、CU(Coding Unit)、その他の任意のブロックに含まれる輝度成分及び色差成分の直交変換係数(量子化係数)をそれぞれ含み得る。さらに、輝度関連パラメータ及び色差関連パラメータは、各ブロックにおける輝度成分及び色差成分の有意係数(非ゼロの直交変換係数)の有無を示すフラグ等、輝度成分及び色差成分の直交変換係数に関する情報をそれぞれ含み得る。輝度関連パラメータ及び色差関連パラメータは、かかる例に限定されず、それぞれ、輝度及び色差に関連する多様なパラメータであり得る。
境界強度設定部261がbSの設定に用いる画素関連パラメータは、ブロック境界がグリッドに位置するブロックにおける輝度成分及び色差成分(U及びV)それぞれの有意係数の有無を示すフラグ等を含む。境界強度設定部261には、かかる画素関連パラメータが、制御部340から供給される。
その他、制御部340から境界強度設定部261には、隣接ブロックがISPに設定されているかどうかや、ISPに設定された隣接ブロックを分割したサブブロックのブロックサイズ等の情報が、隣接ブロックの特性を表すパラメータとして供給される。
境界強度設定部261は、制御部340からの、隣接ブロックの特性を表すパラメータ等に応じて、bSを設定する。境界強度設定部261は、bSを、判定部310に供給する。
なお、bSの設定方法は、例えば、参照文献REF4に記載されている方法、その他の任意の方法を採用することができる。また、bSとしては、境界強度を表す任意の値を採用することができる。ここでは、bSとして、境界強度を3段階に分ける値0,1,2を採用し、境界強度が強くなるほど、bSは、大きな値をとることとする。
判定部310は、適用要否判定部311及びフィルタ強度判定部312を有し、フィルタ判定を行う。
適用要否判定部311には、境界強度設定部261からbSが供給される。また、適用要否判定部311には、デブロックフィルタ31aの外部(図8の演算部30や図10の演算部65)やラインバッファ330から復号画像が供給される。
適用要否判定部311は、境界強度設定部261からのbS、さらには、デブロックフィルタ31aの外部やラインバッファ330からの復号画像等を用いて、適用要否判定を行う。
適用要否判定部311は、適用要否判定の判定結果を、フィルタ強度判定部312に供給する。
フィルタ強度判定部312には、適用要否判定部311から適用要否判定の判定結果が供給される他、デブロックフィルタ31aの外部やラインバッファ330から復号画像が供給される。
フィルタ強度判定部312は、適用要否判定部311からの適用要否判定の判定結果が、デブロックフィルタを適用する旨を表している場合、デブロックフィルタ31aの外部やラインバッファ330からの復号画像を用いて、復号画像に適用されるデブロックフィルタのフィルタ強度を判定するフィルタ強度判定を行う。そして、フィルタ強度判定部312は、フィルタ強度判定の判定結果を、フィルタ判定の判定結果として、フィルタリング部320に供給する。
デブロックフィルタ31aにおいて、復号画像に適用されるデブロックフィルタのフィルタタイプに、例えば、ウイークフィルタ、ストロングフィルタ、及び、ロングフィルタの3つのフィルタタイプがある場合、フィルタ強度の判定結果は、ウイークフィルタ、ストロングフィルタ、及び、ロングフィルタを表す。
ここで、ストロングフィルタは、ウイークフィルタよりもタップ数が多く、フィルタ強度が強いフィルタである。ロングフィルタは、ストロングフィルタよりもタップ数が多く、フィルタ強度が強いフィルタである。
また、フィルタ強度判定部312は、適用要否判定部311からの適用要否判定の判定結果が、デブロックフィルタを適用しない旨を表している場合、その適用要否判定の判定結果を、フィルタ判定の判定結果として、フィルタリング部320に供給する。
フィルタリング部320には、フィルタ強度判定部312からフィルタ判定の判定結果が供給される他、デブロックフィルタ31aの外部やラインバッファ330から復号画像が供給される。
フィルタリング部320は、判定部310(のフィルタ強度判定部312)からのフィルタ判定の判定結果が、デブロックフィルタを適用しない旨を表している場合、復号画像にデブロックフィルタを適用せずに、復号画像をそのまま出力する。
また、フィルタリング部320は、フィルタ強度判定部312からのフィルタ判定の判定結果がフィルタタイプ(ここでは、ウイークフィルタ、ストロングフィルタ、又は、ロングフィルタ)を表す場合、そのフィルタ判定の判定結果が表すフィルタタイプのデブロックフィルタを、復号画像に適用するフィルタ処理を行う。
すなわち、フィルタリング部320は、デブロックフィルタ31aの外部やラインバッファ330からの復号画像のうちの、フィルタ処理の対象となる画素である適用対象画素のフィルタ処理としてのフィルタ演算を、適用対象画素の近傍の画素を用いて行う。
フィルタリング部320は、適用対象画素のフィルタ処理により得られる画素値を、復号画像にデブロックフィルタを適用して得られるフィルタ画像(フィルタ処理後の復号画像)を構成するフィルタ画素の画素値として出力する。
ラインバッファ330には、デブロックフィルタ31aの外部から復号画像が供給される。ラインバッファ330は、デブロックフィルタ31aの外部からの復号画像(の画素値)を適宜記憶する。なお、ラインバッファ330は、所定のライン数(行数)分の画素値を記憶する記憶容量を有し、その記憶容量分の画素値を記憶すると、新たな画素値を、最も古い画素値に上書きする形で記憶する。
ここで、デブロックフィルタ31aが、例えば、復号画像を、ラスタスキャン順に処理することとする。
デブロックフィルタ31aでは、例えば、TU、PU、及び、CUを統一したブロックを単位として処理が行われる。デブロックフィルタ31aでは、例えば、1行分等の複数のブロックをラスタスキャン順に処理する他、並列で処理することができる。
判定部310、及び、フィルタリング部320は、デブロックフィルタ31aの処理の対象となっているブロックである対象ブロックに含まれる水平方向のラインの画素値を記憶することができる容量の内部バッファを内蔵する。判定部310、及び、フィルタリング部320は、内部バッファに、対象ブロックに含まれる水平方向のラインの画素値を記憶し、その内部バッファに記憶された画素値を、必要に応じて用いて、対象ブロックの処理を行う。
対象ブロックの上側の水平ブロック境界に、デブロックフィルタ31aを適用する場合、対象ブロック内の画素の画素値と、対象ブロックの上側に隣接するブロック内の画素の画素値とが必要となることがある。
対象ブロック内の画素の画素値は、対象ブロックの処理時に、内部バッファに記憶されている。一方、対象ブロックの上側に隣接するブロック内の画素の画素値は、対象ブロック内の画素の画素値でないため、対象ブロックの処理時に、内部バッファに記憶されていない。
そこで、ラインバッファ330は、対象ブロックの上側に隣接するブロックに含まれる水平方向のラインのうちの、対象ブロックの上側の水平ブロック境界に、デブロックフィルタ31aを適用するのに必要なラインの画素(ラインに属する画素)の画素値を記憶する。デブロックフィルタ31aを適用するのに必要なラインの画素とは、フィルタ判定に用いられる画素や、フィルタ処理に用いられる画素である。
制御部340は、デブロックフィルタ31aを構成する各ブロックを制御する。また、制御部340は、bSの設定に必要なパラメータ等を生成等することにより取得し、境界強度設定部261に供給する。
なお、本実施の形態では、デブロックフィルタ31aは、例えば、復号画像を、ラスタスキャン順に処理することとする。但し、デブロックフィルタ31aは、復号画像を、ラスタスキャン順以外の順で行うことができる。例えば、デブロックフィルタ31aは、復号画像を上から下方向に処理することを、左から右方向に繰り返すことができる。この場合、以下説明する水平(横)(左右)と垂直(縦)(上下)とは、逆になる(入れ替わる)。
<bSの設定方法>
図13は、境界強度設定部261のbSの設定方法の例を示す図である。
図13において、P(p)及びQ(q)は、ブロック境界(サブブロック境界を含む)に隣接する2つのブロック(サブブロックを含む)のうちの一方のブロック内の画素、及び、他方のブロック内の画素を、それぞれ表す。
図13によれば、ブロック境界(サブブロック境界を含む)に隣接する2つのブロック(サブブロックを含む)の特性に応じて、bSが設定される。
例えば、図13によれば、ブロック境界に隣接する2つのブロック(隣接ブロック)のうちの一方のブロック内の画素P、又は、他方のブロック内の画素Qが、イントラ予測モードのブロック(イントラ予測されるブロック)内の画素である場合、bSは2に設定される。
また、例えば、図13によれば、ISPに設定されたブロックを分割したサブブロックのサブブロック境界(Sub-Partition boundary)に隣接する2つのサブブロックのうちの一方のサブブロック内の画素P、又は、他方のサブブロック内の画素Qが、イントラ予測モードのブロック内の画素である場合、bSは2に設定される。
したがって、図13によれば、ISPに設定されたブロックを分割したサブブロックのサブブロック境界のbSとして、ブロック境界に隣接するブロックがイントラ予測モードのブロックである場合にブロック境界に設定されるbSと同一の2が設定される。
なお、ISPに設定されたブロックを分割したサブブロックのサブブロック境界に隣接する2つのサブブロック内の画素P又はQが、イントラ予測モードのブロック内の画素である場合、bSは2ではなく、1に設定することができる。
また、ISPに設定されるブロックは、輝度成分(Y)のブロックだけであり、色差成分(U及びV)のブロックは、ISPに設定されない。
図13によれば、CU又はTUのブロック境界に隣接する2つのブロック内の画素P又はQが、CIPP(Combined Intra and Inter Prediction mode)のブロック内の画素である場合、bSは2に設定される。
さらに、図13によれば、ブロック境界に隣接する2つのブロックの動きベクトルMVが異なる場合、及び、参照画像が異なる場合、bSは1に設定される。なお、動きベクトルMV又は参照画像が異なることにより、bSを1に設定することは、輝度成分のブロックにだけ適用され、色差成分のブロックには適用されない。
また、図13によれば、CU又はTUのブロック境界に隣接するブロックに、1個以上の有意係数(非ゼロの直交変換係数)が存在する場合、bSは1に設定される。
さらに、例えば、図13によれば、ブロック境界に隣接する2つのブロック内の画素P又はQが、CIPPのブロック内の画素である場合、bSは1に設定される。
以上のいずれにも該当しない場合、bSは0に設定される。
<デブロックフィルタ31aの処理>
図14は、デブロックフィルタが適用され得るブロック境界を判定するブロック境界判定処理の例を説明するフローチャートである。
ブロック境界判定処理は、デブロックフィルタ31a(図12)において、境界強度設定部261が、bSを設定する前に行う。
ステップS111において、境界強度設定部261は、グリッドに位置するブロック境界(サブブロック境界を含む)におけるフィルタ判定を行う際の処理単位である部分ブロック境界が、TUのブロック境界であるかどうかを判定する。
ステップS111において、部分ブロック境界が、TUのブロック境界であると判定された場合、処理は、ステップS112に進み、境界強度設定部261は、部分ブロック境界が、CUのブロック境界であるかどうかを判定する。
ステップS112において、部分ブロック境界が、CUのブロック境界でないと判定された場合、処理は、ステップS113に進み、境界強度設定部261は、部分ブロック境界が、サブブロック境界であると判定し、ブロック境界判定処理は終了する。
また、ステップS112において、部分ブロック境界が、CUのブロック境界であると判定された場合、処理は、ステップS114に進み、境界強度設定部261は、部分ブロック境界が、ブロック境界であると判定し、ブロック境界判定処理は終了する。
一方、ステップS111において、部分ブロック境界が、TUのブロック境界でないと判定された場合、処理は、ステップS115に進み、境界強度設定部261は、部分ブロック境界が、PUのブロック境界であるかどうかを判定する。
ステップS115において、部分ブロック境界が、PUのブロック境界でないと判定された場合、ブロック境界判定処理は終了する。
また、ステップS115において、部分ブロック境界が、PUのブロック境界であると判定された場合、処理は、ステップS116に進み、境界強度設定部261は、部分ブロック境界が、CUのブロック境界であるかどうかを判定する。
ステップS116において、部分ブロック境界が、CUのブロック境界であると判定された場合、処理は、ステップS117に進み、境界強度設定部261は、部分ブロック境界が、ブロック境界であると判定し、ブロック境界判定処理は終了する。
また、ステップS116において、部分ブロック境界が、CUのブロック境界でないと判定された場合、処理は、ステップS118,S119、及び、S120に進む。
ステップS118では、境界強度設定部261は、部分ブロック境界に隣接する隣接ブロックの予測モードがイントラ予測モードで、そのインター予測モードがアフィン又はマージ、かつ、ATMVP(advanced temporal motion vector prediction)であるかどうかを判定する。
ステップS119では、境界強度設定部261は、部分ブロック境界に隣接する隣接ブロックの予測モードがイントラ予測モードで、そのインター予測モードがCIIPであるかどうかを判定する。
ステップS120では、境界強度設定部261は、部分ブロック境界に隣接する隣接ブロックがISPに設定されているかどうかを判定する。
ステップS118ないしS120の判定結果が、いずれも偽である場合、ブロック境界判定処理は終了する。
ステップS118の判定結果が真である場合、処理は、ステップS121に進み、境界強度設定部261は、部分ブロック境界が、サブブロック境界であると判定し、ブロック境界判定処理は終了する。
ステップS119の判定結果が真である場合、処理は、ステップS122に進み、境界強度設定部261は、部分ブロック境界が、ブロック境界であると判定し、ブロック境界判定処理は終了する。
ステップS120の判定結果が真である場合、処理は、ステップS123に進み、境界強度設定部261は、部分ブロック境界に隣接する隣接ブロックの、部分ブロック境界と直交する方向のサイズが4画素以上であるかどうかを判定する。
ステップS123において、部分ブロック境界に隣接する隣接ブロックの、部分ブロック境界と直交する方向のサイズが4画素以上でないと判定された場合、ブロック境界判定処理は終了する。
また、ステップS123において、部分ブロック境界に隣接する隣接ブロックの、部分ブロック境界と直交する方向のサイズが4画素以上であると判定された場合、処理は、ステップS124に進む。ステップS124では、境界強度設定部261は、部分ブロック境界が、サブブロック境界であると判定し、ブロック境界判定処理は終了する。
ブロック境界判定処理において、ブロック境界又はサブブロック境界であると判定されなかった部分ブロック境界については、デブロックフィルタは適用されず、デブロックフィルタ31aにおいて以降の処理は行われない。
一方、ブロック境界又はサブブロック境界であると判定された部分ブロック境界については、デブロックフィルタが適用され得るとして、デブロックフィルタ31aにおいてbSの設定、フィルタ判定、及び、フィルタ処理が行われる。
図15は、ブロック境界判定処理においてサブブロック境界であると判定された部分ブロック境界を対象として行われるデブロックフィルタ31aの処理の例を説明するフローチャートである。
ステップS151では、境界強度設定部261は、ブロック境界判定処理においてサブブロック境界であると判定された部分ブロック境界のbSを、図13で説明した設定方法に従って設定(算出)する。境界強度設定部261は、部分ブロック境界のbSを、判定部310に供給し、処理は、ステップS151からステップS152に進む。
ステップS152では、判定部310は、部分ブロック境界のbSが0より大である(1又は2である)かどうかを判定し、0より大でないと判定した場合、すなわち、0である場合、処理は、ステップS163に進む。
また、ステップS152において、部分ブロック境界のbSが0より大であると判定された場合、すなわち、1又は2である場合、処理は、ステップS153に進む。
ステップS153では、判定部310は、ISPに設定されたブロックを分割したサブブロックのうちの、部分ブロック境界に隣接する隣接サブブロックのブロックサイズが判定される。
ステップS153において、隣接サブブロックのブロックサイズが、8×N以上又はN×8以上であると判定された場合、すなわち、部分ブロック境界と直交する方向の隣接サブブロックのサイズが8画素以上である場合、処理は、ステップS154に進む。
ステップS154では、判定部310は、ロングデブロッキングオンオフ判定を行う。
ステップS154のロングデブロッキングオンオフ判定の判定結果が真である場合、処理は、ステップS155に進み、判定部310は、ロングデブロッキング傾斜判定を行う。
ステップS155のロングデブロッキング傾斜判定が真である場合、処理は、ステップS156に進み、判定部310は、ロングフィルタを適用すると判定し、ロングフィルタの適用を設定する。そして、フィルタリング部320は、部分ブロック境界にロングフィルタを適用するフィルタ処理を行い、処理は終了する。
一方、ステップS154のロングデブロッキングオンオフ判定の判定結果が偽であるか、又は、ステップS155のロングデブロッキング傾斜判定が偽である場合、処理は、ステップS157に進む。
ステップS157では、判定部310は、HEVCデブロッキングオン/オフ判定を行い、処理は、ステップS158に進む。
ステップS158では、判定部310は、ストロングフィルタ判定を行う。
ステップS158のストロングフィルタ判定が真である場合、処理は、ステップS159に進み、判定部310は、ストロングフィルタを適用すると判定し、ストロングフィルタの適用を設定する。そして、フィルタリング部320は、部分ブロック境界にストロングフィルタを適用するフィルタ処理を行い、処理は終了する。
また、ステップS158のストロングフィルタ判定が偽である場合、処理は、ステップS161に進む。
一方、ステップS153において、部分ブロック境界と直交する方向の隣接サブブロックのサイズが8画素以上でないと判定された場合、処理は、ステップS160に進む。
ステップS160では、判定部310は、ISPに設定されたブロックを分割したサブブロックのうちの、部分ブロック境界に隣接する隣接サブブロックのブロックサイズが判定される。
ステップS150において、隣接サブブロックのブロックサイズが、4×N又はN×4であると判定された場合、すなわち、部分ブロック境界と直交する方向の隣接サブブロックのサイズが4画素である場合、処理は、ステップS161に進む。
ステップS161では、判定部310は、ウイークフィルタ判定を行う。
ステップS161のウイークフィルタ判定が偽である場合、処理は、ステップS163に進む。
ステップS161のウイークフィルタ判定が真である場合、処理は、ステップS162に進み、判定部310は、ウイークフィルタを適用すると判定し、ウイークフィルタの適用を設定する。そして、フィルタリング部320は、部分ブロック境界にウイークフィルタを適用するフィルタ処理を行い、処理は終了する。
一方、ステップS160において、部分ブロック境界と直交する方向の隣接サブブロックのサイズが4画素でないと判定された場合、処理は、ステップS163に進む。ステップS163では、判定部310は、デブロックフィルタを適用しないと判定し、フィルタリング部320は、部分ブロック境界(に直交するラインの画素)に、デブロックフィルタを適用せずに、処理は終了する。
したがって、部分ブロック境界と直交する方向の隣接サブブロックのサイズが4画素未満である場合、すなわち、垂直方向の部分ブロック境界に隣接する隣接サブブロックのブロックサイズが1×N若しくは2×Nであるか、又は、水平方向の部分ブロック境界に隣接する隣接サブブロックのブロックサイズがN×1若しくはN×2である場合、デブロックフィルタの適用は制限される(デブロックフィルタは適用されない)。
図15によれば、デブロックフィルタ31aにおいて、ISPに設定されたブロックを分割したサブブロックのサブブロック境界について、サブブロック境界に隣接する隣接サブブロックのブロックサイズが、8×N又はN×8以上であるかどうか、すなわち、サブブロック境界と直交する方向のサブブロックのサイズが8画素以上であるかどうかが判定される。そして、サブブロック境界と直交する方向のサブブロックのサイズが8画素以上である場合、ロングフィルタ、ストロングフィルタ、及び、ウイークフィルタのうちのいずれかが適用され得る。
また、図15によれば、デブロックフィルタ31aにおいて、ISPに設定されたブロックを分割したサブブロックのサブブロック境界について、サブブロック境界に隣接する隣接サブブロックのブロックサイズが、8×N以上でもなく、N×8以上でもない場合、4×N又はN×4であるかどうか、すなわち、サブブロック境界と直交する方向のサブブロックのサイズが4画素であるかどうかが判定される。そして、サブブロック境界と直交する方向のサブブロックのサイズが4画素である場合、ウイークフィルタが適用され得る。
さらに、図15によれば、サブブロック境界に隣接する隣接サブブロックのブロックサイズが、8×N以上でもなく、N×8以上でもない場合であって、かつ、4×Nでもなく、N×4でもない場合、すなわち、サブブロック境界と直交する方向のサブブロックのサイズが4画素未満である場合、デブロックフィルタの適用が制限される。
したがって、デブロックフィルタ31aでは、ISPに設定されたブロックを分割したサブブロックのサブブロック境界について、そのサブブロック境界に隣接する隣接サブブロックのブロックサイズに応じて、デブロックフィルタを適用するかが判定されている、ということができる。
さらに、隣接サブブロックのブロックサイズに応じて、適用するデブロックフィルタのフィルタタイプ(ロングフィルタ、ストロングフィルタ、及び、ウイークフィルタ)が設定(判定)されている、ということができる。
<その他>
(本技術の適用対象)
本技術は、任意の画像符号化・復号方式に適用することができる。つまり、上述した本技術と矛盾しない限り、変換(逆変換)、量子化(逆量子化)、符号化(復号)、予測等、画像符号化・復号に関する各種処理の仕様は任意であり、上述した例に限定されない。また、上述した本技術と矛盾しない限り、これらの処理の内の一部を省略してもよい。
(ブロック)
また、本明細書において、画像(ピクチャ)の部分領域や処理単位として説明に用いる「ブロック」(処理部を示すブロックではない)は、特に言及しない限り、ピクチャ内の任意の部分領域を示し、その大きさ、形状、及び特性等は限定されない。例えば、「ブロック」には、参照文献REF1〜REF3等に記載のTB(Transform Block)、TU(Transform Unit)、PB(Prediction Block)、PU(Prediction Unit)、SCU(Smallest Coding Unit)、CU(Coding Unit)、LCU(Largest Coding Unit)、CTB(Coding Tree Block)、CTU(Coding Tree Unit)、変換ブロック、サブブロック、マクロブロック、タイル、又はスライス等、任意の部分領域(処理単位)が含まれるものとする。
(処理単位)
以上において説明した各種情報が設定されるデータ単位や、各種処理が対象とするデータ単位は、それぞれ任意であり上述した例に限定されない。例えば、これらの情報や処理が、それぞれ、TU(Transform Unit)、TB(Transform Block)、PU(Prediction Unit)、PB(Prediction Block)、CU(Coding Unit)、LCU(Largest Coding Unit)、サブブロック、ブロック、タイル、スライス、ピクチャ、シーケンス、又はコンポーネント毎に設定されるようにしてもよいし、それらのデータ単位のデータを対象とするようにしてもよい。もちろん、このデータ単位は、情報や処理毎に設定され得るものであり、全ての情報や処理のデータ単位が統一されている必要はない。なお、これらの情報の格納場所は任意であり、上述したデータ単位のヘッダやパラメータセット等に格納されるようにしてもよい。また、複数個所に格納されるようにしてもよい。
(制御情報)
以上において説明した本技術に関する制御情報を符号化側から復号側に伝送するようにしてもよい。例えば、上述した本技術を適用することを許可(又は禁止)するか否かを制御する制御情報(例えばenabled_flag)を伝送するようにしてもよい。また、例えば、上述した本技術を適用する対象(又は適用しない対象)を示す制御情報を伝送するようにしてもよい。例えば、本技術を適用する(又は、適用を許可若しくは禁止する)ブロックサイズ(上限若しくは下限、又はその両方)、フレーム、コンポーネント、又はレイヤ等を指定する制御情報を伝送するようにしてもよい。
(ブロックサイズ情報)
本技術を適用するブロックのサイズを指定するに当たって、直接的にブロックサイズを指定するだけでなく、間接的にブロックサイズを指定するようにしてもよい。例えばサイズを識別する識別情報を用いてブロックサイズを指定するようにしてもよい。また、例えば、基準となるブロック(例えばLCUやSCU等)のサイズとの比又は差分によってブロックサイズを指定するようにしてもよい。例えば、シンタックス要素等としてブロックサイズを指定する情報を伝送する場合に、その情報として、上述のような間接的にサイズを指定する情報を用いるようにしてもよい。このようにすることにより、その情報の情報量を低減させることができ、符号化効率を向上させることができる場合もある。また、このブロックサイズの指定には、ブロックサイズの範囲の指定(例えば、許容されるブロックサイズの範囲の指定等)も含む。
(その他)
なお、本明細書において「フラグ」とは、複数の状態を識別するための情報であり、真(1)又は偽(0)の2状態を識別する際に用いる情報だけでなく、3以上の状態を識別することが可能な情報も含まれる。したがって、この「フラグ」が取り得る値は、例えば1/0の2値であってもよいし、3値以上であってもよい。すなわち、この「フラグ」を構成するbit数は任意であり、1bitでも複数bitでもよい。また、識別情報(フラグも含む)は、その識別情報をビットストリームに含める形だけでなく、ある基準となる情報に対する識別情報の差分情報をビットストリームに含める形も想定されるため、本明細書においては、「フラグ」や「識別情報」は、その情報だけではなく、基準となる情報に対する差分情報も包含する。
また、符号化データ(ビットストリーム)に関する各種情報(メタデータ等)は、符号化データに関連付けられていれば、どのような形態で伝送又は記録されるようにしてもよい。ここで、「関連付ける」という用語は、例えば、一方のデータを処理する際に他方のデータを利用し得る(リンクさせ得る)ようにすることを意味する。つまり、互いに関連付けられたデータは、1つのデータとしてまとめられてもよいし、それぞれ個別のデータとしてもよい。例えば、符号化データ(画像)に関連付けられた情報は、その符号化データ(画像)とは別の伝送路上で伝送されるようにしてもよい。また、例えば、符号化データ(画像)に関連付けられた情報は、その符号化データ(画像)とは別の記録媒体(又は同一の記録媒体の別の記録エリア)に記録されるようにしてもよい。なお、この「関連付け」は、データ全体でなく、データの一部であってもよい。例えば、画像とその画像に対応する情報とが、複数フレーム、1フレーム、又はフレーム内の一部分などの任意の単位で互いに関連付けられるようにしてもよい。
なお、本明細書において、「合成する」、「多重化する」、「付加する」、「一体化する」、「含める」、「格納する」、「入れ込む」、「差し込む」、「挿入する」等の用語は、例えば符号化データとメタデータとを1つのデータにまとめるといった、複数の物を1つにまとめることを意味し、上述の「関連付ける」の1つの方法を意味する。
本技術は、装置又はシステムを構成するあらゆる構成、例えば、システムLSI(Large Scale Integration)等としてのプロセッサ、複数のプロセッサ等を用いるモジュール、複数のモジュール等を用いるユニット、ユニットにさらにその他の機能を付加したセット等(すなわち、装置の一部の構成)として実施することもできる。
<本技術を適用したコンピュータの説明>
次に、上述した一連の処理は、ハードウエアにより行うこともできるし、ソフトウエアにより行うこともできる。一連の処理をソフトウエアによって行う場合には、そのソフトウエアを構成するプログラムが、汎用のコンピュータ等にインストールされる。
図16は、上述した一連の処理を実行するプログラムがインストールされるコンピュータの一実施の形態の構成例を示すブロック図である。
プログラムは、コンピュータに内蔵されている記録媒体としてのハードディスク905やROM903に予め記録しておくことができる。
あるいはまた、プログラムは、ドライブ909によって駆動されるリムーバブル記録媒体911に格納(記録)しておくことができる。このようなリムーバブル記録媒体911は、いわゆるパッケージソフトウエアとして提供することができる。ここで、リムーバブル記録媒体911としては、例えば、フレキシブルディスク、CD-ROM(Compact Disc Read Only Memory),MO(Magneto Optical)ディスク,DVD(Digital Versatile Disc)、磁気ディスク、半導体メモリ等がある。
なお、プログラムは、上述したようなリムーバブル記録媒体911からコンピュータにインストールする他、通信網や放送網を介して、コンピュータにダウンロードし、内蔵するハードディスク905にインストールすることができる。すなわち、プログラムは、例えば、ダウンロードサイトから、ディジタル衛星放送用の人工衛星を介して、コンピュータに無線で転送したり、LAN(Local Area Network)、インターネットといったネットワークを介して、コンピュータに有線で転送することができる。
コンピュータは、CPU(Central Processing Unit)902を内蔵しており、CPU902には、バス901を介して、入出力インタフェース910が接続されている。
CPU902は、入出力インタフェース910を介して、ユーザによって、入力部907が操作等されることにより指令が入力されると、それに従って、ROM(Read Only Memory)903に格納されているプログラムを実行する。あるいは、CPU902は、ハードディスク905に格納されたプログラムを、RAM(Random Access Memory)904にロードして実行する。
これにより、CPU902は、上述したフローチャートにしたがった処理、あるいは上述したブロック図の構成により行われる処理を行う。そして、CPU902は、その処理結果を、必要に応じて、例えば、入出力インタフェース910を介して、出力部906から出力、あるいは、通信部908から送信、さらには、ハードディスク905に記録等させる。
なお、入力部907は、キーボードや、マウス、マイク等で構成される。また、出力部906は、LCD(Liquid Crystal Display)やスピーカ等で構成される。
ここで、本明細書において、コンピュータがプログラムに従って行う処理は、必ずしもフローチャートとして記載された順序に沿って時系列に行われる必要はない。すなわち、コンピュータがプログラムに従って行う処理は、並列的あるいは個別に実行される処理(例えば、並列処理あるいはオブジェクトによる処理)も含む。
また、プログラムは、1のコンピュータ(プロセッサ)により処理されるものであっても良いし、複数のコンピュータによって分散処理されるものであっても良い。さらに、プログラムは、遠方のコンピュータに転送されて実行されるものであっても良い。
さらに、本明細書において、システムとは、複数の構成要素(装置、モジュール(部品)等)の集合を意味し、すべての構成要素が同一筐体中にあるか否かは問わない。したがって、別個の筐体に収納され、ネットワークを介して接続されている複数の装置、及び、1つの筐体の中に複数のモジュールが収納されている1つの装置は、いずれも、システムである。
なお、本技術の実施の形態は、上述した実施の形態に限定されるものではなく、本技術の要旨を逸脱しない範囲において種々の変更が可能である。
例えば、本技術は、1つの機能をネットワークを介して複数の装置で分担、共同して処理するクラウドコンピューティングの構成をとることができる。
また、上述のフローチャートで説明した各ステップは、1つの装置で実行する他、複数の装置で分担して実行することができる。
さらに、1つのステップに複数の処理が含まれる場合には、その1つのステップに含まれる複数の処理は、1つの装置で実行する他、複数の装置で分担して実行することができる。
また、本明細書に記載された効果はあくまで例示であって限定されるものではなく、他の効果があってもよい。
10 画像処理システム, 11 エンコーダ, 21 A/D変換部, 22 並べ替えバッファ22, 23 演算部, 24 直交変換部, 25 量子化部, 26 可逆符号化部, 27 蓄積バッファ, 28 逆量子化部, 29 逆直交変換部, 30 演算部, 31a,31b デブロックフィルタ, 32 フレームメモリ, 33 選択部, 34 イントラ予測部, 35 動き予測補償部, 36 予測画像選択部, 37 レート制御部, 41 適応オフセットフィルタ, 42 ALF, 51 デコーダ, 61 蓄積バッファ, 62 可逆復号部, 63 逆量子化部, 64 逆直交変換部, 65 演算部, 67 並べ替えバッファ, 68 D/A変換部, 69 フレームメモリ, 70 選択部, 71 イントラ予測部, 72 動き予測補償部, 73 選択部, 81 適応オフセットフィルタ, 82 ALF, 261 境界強度設定部, 310 判定部, 311 適用要否判定部, 312 フィルタ強度判定部, 320 フィルタリング部, 330 ラインバッファ, 340 制御部, 901 バス, 902 CPU, 903 ROM, 904 RAM, 905 ハードディスク, 906 出力部, 907 入力部, 908 通信部, 909 ドライブ, 910 入出力インタフェース, 911 リムーバブル記録媒体

Claims (10)

  1. 変換ブロックと予測ブロックと符号化ブロックとが統一された階層構造を有するブロック構造に従って、ビットストリームを復号して復号画像を生成する復号部と、
    前記復号部により生成された復号画像の前記変換ブロックを分割したサブブロックの境界であるサブブロック境界と直交するラインの画素に、デブロックフィルタを適用するフィルタ部と
    を備える画像処理装置。
  2. 前記フィルタ部は、前記サブブロック境界を挟んで隣接する隣接サブブロックの特性に応じて設定された境界強度に応じて、前記サブブロック境界と直交するラインの画素に、前記デブロックフィルタを適用する
    請求項1に記載の画像処理装置。
  3. 前記フィルタ部は、イントラ予測が行われる前記変換ブロックを分割したサブブロックの前記サブブロック境界と直交するラインの画素に、前記デブロックフィルタを適用する
    請求項2に記載の画像処理装置。
  4. 前記フィルタ部は、イントラ予測が行われる前記変換ブロックのブロック境界と同一の境界強度に設定された境界強度に応じて、前記サブブロック境界と直交するラインの画素に、前記デブロックフィルタを適用する
    請求項3に記載の画像処理装置。
  5. 前記サブブロックのブロックサイズに応じて、前記デブロックフィルタを適用するかを判定する判定部をさらに備え、
    前記フィルタ部は、前記判定部により前記デブロックフィルタを適用すると判定された場合、前記サブブロックの前記サブブロック境界と直交するラインの画素に、前記デブロックフィルタを適用する
    請求項3に記載の画像処理装置。
  6. 前記フィルタ部は、前記サブブロックのブロックサイズに応じて設定されたフィルタタイプの前記デブロックフィルタを適用する
    請求項5に記載の画像処理装置。
  7. 前記フィルタ部は、1のサブブロック境界で前記デブロックフィルタが適用される適用対象画素の中に、他のサブブロック境界での前記デブロックフィルタの適用で参照される画素が含まれないように、前記デブロックフィルタを適用する
    請求項5に記載の画像処理装置。
  8. 変換ブロックと予測ブロックと符号化ブロックとが統一された階層構造を有するブロック構造に従って、ビットストリームを復号して復号画像を生成することと、
    前記復号画像の前記変換ブロックを分割したサブブロックの境界であるサブブロック境界と直交するラインの画素に、デブロックフィルタを適用することと
    を含む画像処理方法。
  9. 画像を変換ブロックと予測ブロックと符号化ブロックとが統一された階層構造を有するブロック構造に従って符号化する際にローカル復号されたローカル復号画像の、イントラ予測が行われる前記変換ブロックを分割したサブブロックの境界であるサブブロック境界と直交するラインの画素に、デブロックフィルタを適用してフィルタ画像を生成するフィルタ部と、
    前記フィルタ部により生成されたフィルタ画像を用いて、前記画像を符号化する符号化部と
    を備える画像処理装置。
  10. 画像を変換ブロックと予測ブロックと符号化ブロックとが統一された階層構造を有するブロック構造に従って符号化する際にローカル復号されたローカル復号画像の、イントラ予測が行われる前記変換ブロックを分割したサブブロックの境界であるサブブロック境界と直交するラインの画素に、デブロックフィルタを適用してフィルタ画像を生成することと、
    前記フィルタ画像を用いて、前記画像を符号化することと
    を含む画像処理方法。
JP2021501897A 2019-02-27 2020-02-13 画像処理装置及び画像処理方法 Active JP7444159B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2024025254A JP2024045713A (ja) 2019-02-27 2024-02-22 画像処理装置及び画像処理方法

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201962811126P 2019-02-27 2019-02-27
US62/811,126 2019-02-27
PCT/JP2020/005472 WO2020175145A1 (ja) 2019-02-27 2020-02-13 画像処理装置及び画像処理方法

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2024025254A Division JP2024045713A (ja) 2019-02-27 2024-02-22 画像処理装置及び画像処理方法

Publications (2)

Publication Number Publication Date
JPWO2020175145A1 true JPWO2020175145A1 (ja) 2021-12-23
JP7444159B2 JP7444159B2 (ja) 2024-03-06

Family

ID=72238942

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2021501897A Active JP7444159B2 (ja) 2019-02-27 2020-02-13 画像処理装置及び画像処理方法
JP2024025254A Pending JP2024045713A (ja) 2019-02-27 2024-02-22 画像処理装置及び画像処理方法

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2024025254A Pending JP2024045713A (ja) 2019-02-27 2024-02-22 画像処理装置及び画像処理方法

Country Status (7)

Country Link
US (1) US20220174276A1 (ja)
EP (1) EP3934256A4 (ja)
JP (2) JP7444159B2 (ja)
KR (1) KR20210130716A (ja)
CN (1) CN113491133A (ja)
TW (1) TW202041013A (ja)
WO (1) WO2020175145A1 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113302922A (zh) * 2019-02-15 2021-08-24 松下电器(美国)知识产权公司 编码装置、解码装置、编码方法和解码方法
CN114270848A (zh) * 2019-08-23 2022-04-01 北京字节跳动网络技术有限公司 在去方块滤波中使用边界强度
EP3985486B1 (en) * 2020-10-13 2024-04-17 Hiroyuki Ikeda Glasses-type terminal

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
MY191783A (en) * 2010-04-13 2022-07-15 Samsung Electronics Co Ltd Video encoding method and video encoding apparatus and video decoding method and video decoding apparatus, which perform deblocking filtering based on tree-structure encoding units
WO2014107709A2 (en) * 2013-01-07 2014-07-10 Vid Scale, Inc. Enhanced deblocking filters for video coding
CN109845255A (zh) * 2016-10-03 2019-06-04 夏普株式会社 用于将解块滤波器应用于重构视频数据的系统和方法
WO2019137751A1 (en) * 2018-01-10 2019-07-18 Telefonaktiebolaget Lm Ericsson (Publ) Determining filter length for deblocking during encoding and/or decoding of video
US10904555B2 (en) * 2018-07-11 2021-01-26 Tencent America LLC Method and apparatus for video coding

Also Published As

Publication number Publication date
JP2024045713A (ja) 2024-04-02
TW202041013A (zh) 2020-11-01
EP3934256A1 (en) 2022-01-05
EP3934256A4 (en) 2022-03-09
US20220174276A1 (en) 2022-06-02
KR20210130716A (ko) 2021-11-01
WO2020175145A1 (ja) 2020-09-03
JP7444159B2 (ja) 2024-03-06
CN113491133A (zh) 2021-10-08

Similar Documents

Publication Publication Date Title
KR102287779B1 (ko) 해시 기반의 블록 매칭의 결과에 기초한 인코더 결정
US10567754B2 (en) Hash table construction and availability checking for hash-based block matching
KR20130056183A (ko) 다중-레벨 유효성 맵 스캐닝
JP7444159B2 (ja) 画像処理装置及び画像処理方法
KR102625986B1 (ko) 인트라 서브파티션 코딩 툴로 인한 서브파티션 경계를 위한 디블로킹 필터
EP2876883B1 (en) Multi-level significance maps for encoding and decoding
KR20210107889A (ko) 인코더, 디코더 및 디블로킹 필터 적응 방법
JP2023101812A (ja) 画像処理装置、及び画像処理方法
WO2020255769A1 (ja) 画像処理装置及び画像処理方法
JP2024023856A (ja) 画像処理装置および方法
WO2021125317A1 (ja) 画像処理装置及び画像処理方法
CN116389755A (zh) 一种图像解码方法、编码方法及装置
WO2021060262A1 (ja) 画像処理装置および画像処理方法
US20220078416A1 (en) Image processing device and image processing method
CN113170206A (zh) 图像处理装置和图像处理方法
WO2020262370A1 (ja) 画像処理装置および画像処理方法
WO2021054437A1 (ja) 画像処理装置および画像処理方法
WO2021125316A1 (ja) 画像処理装置および画像処理方法
WO2021060484A1 (ja) 画像処理装置および画像処理方法
WO2023083245A1 (zh) 解码方法、编码方法及装置
WO2021054438A1 (ja) 画像処理装置および画像処理方法
KR20240074918A (ko) 인코더, 디코더 및 디블로킹 필터 적응 방법
CN116668705A (zh) 一种图像解码方法、编码方法及装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20221221

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20231205

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20240110

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20240123

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20240205

R151 Written notification of patent or utility model registration

Ref document number: 7444159

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151