JP2021129131A - 符号化装置、符号化方法、復号装置、及び、復号方法 - Google Patents
符号化装置、符号化方法、復号装置、及び、復号方法 Download PDFInfo
- Publication number
- JP2021129131A JP2021129131A JP2018095906A JP2018095906A JP2021129131A JP 2021129131 A JP2021129131 A JP 2021129131A JP 2018095906 A JP2018095906 A JP 2018095906A JP 2018095906 A JP2018095906 A JP 2018095906A JP 2021129131 A JP2021129131 A JP 2021129131A
- Authority
- JP
- Japan
- Prior art keywords
- pixel
- interest
- unit
- frequency distribution
- class
- 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.)
- Pending
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods 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/136—Incoming video signal characteristics or properties
- H04N19/14—Coding unit complexity, e.g. amount of activity or edge presence estimation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/117—Filters, e.g. for pre-processing or post-processing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/182—Methods 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/80—Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
- H04N19/82—Details 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
【課題】フィルタ処理の性能を改善する。
【解決手段】符号化装置及び復号装置は、復号画像の注目画素を含む度数分布生成領域内の複数の画素の画素値の傾斜の方向を表す傾斜方向の度数分布に応じて決定される信頼度に応じて、注目画素を複数のクラスのうちのいずれかのクラスに分類するクラス分類を行い、そのクラス分類により得られる注目画素のクラスのタップ係数と復号画像の画素との積和演算を行う予測式を復号画像に適用するフィルタ処理を行って、フィルタ画像を生成する。本技術は、例えば、画像の符号化及び復号を行う場合に適用することができる。
【選択図】図19
【解決手段】符号化装置及び復号装置は、復号画像の注目画素を含む度数分布生成領域内の複数の画素の画素値の傾斜の方向を表す傾斜方向の度数分布に応じて決定される信頼度に応じて、注目画素を複数のクラスのうちのいずれかのクラスに分類するクラス分類を行い、そのクラス分類により得られる注目画素のクラスのタップ係数と復号画像の画素との積和演算を行う予測式を復号画像に適用するフィルタ処理を行って、フィルタ画像を生成する。本技術は、例えば、画像の符号化及び復号を行う場合に適用することができる。
【選択図】図19
Description
本技術は、符号化装置、符号化方法、復号装置、及び、復号方法に関し、特に、例えば、フィルタ処理の性能を改善することができるようにする符号化装置、符号化方法、復号装置、及び、復号方法に関する。
HEVC(High Efficiency Video Coding)の後継規格としてFVC(Future Video Coding)の標準化の開始に向けた作業が進められており、画像の符号化及び復号に用いるILF(In Loop Filter)として、デブロッキングフィルタ、適応オフセットフィルタに加えて、バイラテラルフィルタ(Bilateral Filter)、ALF(Adaptive Loop Filter)が検討されている(例えば、非特許文献1を参照)。
また、既存のALFを改善するフィルタとして、GALF(Geometry Adaptive Loop Filter)が提案されている(例えば、非特許文献2を参照)。
Algorithm description of Joint Exploration Test Model 7 (JEM7), 2017-08-19
Marta Karczewicz, Li Zhang, Wei-Jung Chien, Xiang Li, "Geometry transformation-based adaptive in-loop filter", IEEE Picture Coding Symposium (PCS), 2016.
ILFで行われるフィルタ処理については、符号化効率及び画質の向上のために、フィルタ処理の性能を改善することが要請されている。
本技術は、このような状況に鑑みてなされたものであり、フィルタ処理の性能を改善することができるようにするものである。
本技術の復号装置は、符号化ビットストリームに含まれる符号化データを、フィルタ画像を用いて復号し、復号画像を生成する復号部と、前記復号部により生成された前記復号画像の注目画素を含む度数分布生成領域内の複数の画素の画素値の傾斜の方向を表す傾斜方向の度数分布に応じて設定される信頼度に応じて、前記注目画素を複数のクラスのうちのいずれかのクラスに分類するクラス分類を行うクラス分類部と、前記クラス分類部により行われた前記クラス分類により得られる前記注目画素のクラスのタップ係数と前記復号画像の画素との積和演算を行う予測式を前記復号画像に適用するフィルタ処理を行って、前記フィルタ画像を生成するフィルタ部とを備える復号装置である。
本技術の復号方法は、符号化ビットストリームに含まれる符号化データを、フィルタ画像を用いて復号し、復号画像を生成することと、前記復号画像の注目画素を含む度数分布生成領域内の複数の画素の画素値の傾斜の方向を表す傾斜方向の度数分布に応じて設定される信頼度に応じて、前記注目画素を複数のクラスのうちのいずれかのクラスに分類するクラス分類を行うことと、前記クラス分類により得られる前記注目画素のクラスのタップ係数と前記復号画像の画素との積和演算を行う予測式を前記復号画像に適用するフィルタ処理を行って、前記フィルタ画像を生成することとを含む復号方法である。
本技術の復号装置及び復号方法においては、符号化ビットストリームに含まれる符号化データが、フィルタ画像を用いて復号され、復号画像が生成される。また、前記復号画像の注目画素を含む度数分布生成領域内の複数の画素の画素値の傾斜の方向を表す傾斜方向の度数分布に応じて設定される信頼度に応じて、前記注目画素を複数のクラスのうちのいずれかのクラスに分類するクラス分類が行われる。そして、前記クラス分類により得られる前記注目画素のクラスのタップ係数と前記復号画像の画素との積和演算を行う予測式を前記復号画像に適用するフィルタ処理が行われ、前記フィルタ画像が生成される。
本技術の符号化装置は、局所復号された復号画像の注目画素を含む度数分布生成領域内の複数の画素の画素値の傾斜の方向を表す傾斜方向の度数分布に応じて設定される信頼度に応じて、前記注目画素を複数のクラスのうちのいずれかのクラスに分類するクラス分類を行うクラス分類部と、前記クラス分類部により行われた前記クラス分類により得られる前記注目画素のクラスのタップ係数と前記復号画像の画素との積和演算を行う予測式を前記復号画像に適用するフィルタ処理を行って、フィルタ画像を生成するフィルタ部と、前記フィルタ部により生成された前記フィルタ画像を用いて、元画像を符号化する符号化部とを備える符号化装置である。
本技術の符号化方法は、局所復号された復号画像の注目画素を含む度数分布生成領域内の複数の画素の画素値の傾斜の方向を表す傾斜方向の度数分布に応じて設定される信頼度に応じて、前記注目画素を複数のクラスのうちのいずれかのクラスに分類するクラス分類を行うことと、前記クラス分類により得られる前記注目画素のクラスのタップ係数と前記復号画像の画素との積和演算を行う予測式を前記復号画像に適用するフィルタ処理を行って、フィルタ画像を生成することと、前記フィルタ画像を用いて、元画像を符号化することとを含む符号化方法である。
本技術の符号化装置及び符号化方法においては、局所復号された復号画像の注目画素を含む度数分布生成領域内の複数の画素の画素値の傾斜の方向を表す傾斜方向の度数分布に応じて設定される信頼度に応じて、前記注目画素を複数のクラスのうちのいずれかのクラスに分類するクラス分類が行われる。さらに、前記クラス分類により得られる前記注目画素のクラスのタップ係数と前記復号画像の画素との積和演算を行う予測式を前記復号画像に適用するフィルタ処理が行われ、フィルタ画像が生成される。そして、前記フィルタ画像を用いて、元画像が符号化される。
なお、符号化装置や復号装置は、独立した装置であっても良いし、1つの装置を構成している内部ブロックであっても良い。
また、符号化装置や復号装置は、コンピュータにプログラムを実行させることにより実現することができる。プログラムは、伝送媒体を介して伝送することにより、又は、記録媒体に記録して、提供することができる。
本技術によれば、フィルタ処理の性能を改善することができる。
なお、ここに記載された効果は必ずしも限定されるものではなく、本開示中に記載されたいずれかの効果であってもよい。
<技術内容・技術用語をサポートする文献等>
本願で開示される範囲は、本明細書及び図面に記載されている内容だけではなく、出願当時において公知となっている以下の文献に記載されている内容も含まれる。
文献1:AVC規格書("Advanced video coding for generic audiovisual services", ITU-T H.264(04/2017))
文献2:HEVC規格書("High efficiency video coding", ITU-T H.265(12/2016))
文献3:FVC アルゴリズム解説書(Algorithm description of Joint Exploration Test Model 7 (JEM7), 2017-08-19)
文献2:HEVC規格書("High efficiency video coding", ITU-T H.265(12/2016))
文献3:FVC アルゴリズム解説書(Algorithm description of Joint Exploration Test Model 7 (JEM7), 2017-08-19)
つまり、上述の文献に記載されている内容もサポート要件を判断する際の根拠となる。例えば、文献1に記載されているQuad-Tree Block Structure、文献3に記載されているQTBT(Quad Tree Plus Binary Tree)やBlock Structureが実施の形態において直接的な記載がない場合でも、本技術の開示範囲内であり、特許請求の範囲のサポート要件を満たす。また、例えば、パース(Parsing)、シンタックス(Syntax)、セマンティクス(Semantics)等の技術用語についても同様に、実施の形態において直接的な記載がない場合でも、本技術の開示範囲内であり、特許請求の範囲のサポート要件を満たす。
また、本明細書において、画像(ピクチャ)の部分領域や処理単位として説明に用いる「ブロック」(処理部を示すブロックではない)は、特に言及しない限り、ピクチャ内の任意の部分領域を示し、その大きさ、形状、および特性等は限定されない。例えば、「ブロック」には、上述の文献1ないし3に記載の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)、変換ブロック、サブブロック、マクロブロック、タイル、又は、スライス等、任意の部分領域(処理単位)が含まれる。
また、このようなブロックのサイズを指定するに当たって、直接的にブロックサイズを指定するだけでなく、間接的にブロックサイズを指定するようにしてもよい。例えばサイズを識別する識別情報を用いてブロックサイズを指定するようにしてもよい。また、例えば、基準となるブロック(例えばLCUやSCU等)のサイズとの比または差分によってブロックサイズを指定するようにしてもよい。例えば、シンタックス要素等としてブロックサイズを指定する情報を伝送する場合に、その情報として、上述のような間接的にサイズを指定する情報を用いるようにしてもよい。このようにすることにより、その情報の情報量を低減させることができ、符号化効率を向上させることができる場合がある。また、このブロックサイズの指定には、ブロックサイズの範囲の指定(例えば、許容されるブロックサイズの範囲の指定等)も含む。
<定義>
本願では、以下の用語を、以下のように定義する。
符号化データとは、画像を符号化することにより得られるデータであり、例えば、画像(の残差)を直交変換して量子化することにより得られるデータである。
符号化ビットストリームとは、符号化データを含むビットストリームであり、必要に応じて、符号化に関する符号化情報を含む。符号化情報には、符号化データを復号するのに必要な情報、すなわち、例えば、符号化で量子化が行われている場合の量子化パラメータ(QP)や、符号化で予測符号化(動き補償)が行われている場合の動きベクトル等が、少なくとも含まれる。
取得可能情報とは、符号化ビットストリームから取得可能な情報である。したがって、取得可能情報は、画像を符号化し、符号化ビットストリームを生成する符号化装置、及び、符号化ビットストリームを画像に復号する復号装置のいずれでも取得可能な情報でもある。取得可能情報には、例えば、符号化ビットストリームに含められる符号化情報や、符号化ビットストリームに含まれる符号化データを復号することにより得られる画像の画像特徴量がある。
予測式とは、第1のデータから第2のデータを予測する多項式である。第1のデータ及び第2のデータが、例えば、画像(データ)である場合、予測式は、第1の画像から第2の画像を予測する多項式となる。かかる多項式である予測式の各項は、1個のタップ係数と1個以上の予測タップとの積で構成され、したがって、予測式は、タップ係数と予測タップとの積和演算を行う式である。第1の画像の画素のうちの予測に用いるi番目の予測タップとしての画素(の画素値)をxiと、i番目のタップ係数をwiと、第2の画像の画素(の画素値の予測値)をy'と、それぞれ表すとともに、予測式として、1次項のみからなる多項式を採用することとすると、予測式は、式y'=Σwixiで表される。式y'=Σwixiにおいて、Σは、iについてのサメーションを表す。予測式を構成するタップ係数wiは、予測式により得られる値y'の、真値yとの誤差y'-yを統計的に最小にする学習により求められる。タップ係数を求める学習(以下、タップ係数学習ともいう)の方法としては、最小自乗法がある。タップ係数学習では、予測式が適用される第1の画像に相当する、学習の生徒となる生徒データ(予測式への入力xi)としての生徒画像と、第1の画像に予測式を適用した結果として得たい第2の画像に相当する、学習の教師となる教師データ(予測式の演算により求められる予測値の真値y)としての教師画像とを用いて、正規方程式を構成する各項の係数の足し込み(係数のサメーション)を行うことにより、正規方程式が求められ、その正規方程式を解くことにより、予測値y'の自乗誤差の総和を最小にするタップ係数が求められる。
予測処理とは、第1の画像に、予測式を適用して、第2の画像を予測する処理である。予測処理では、第1の画像の画素(の画素値)を用いて、予測式の演算としての積和演算を行うことにより、第2の画像の予測値が求められる。第1の画像を用いて積和演算を行うことは、第1の画像にフィルタをかけるフィルタ処理ということができ、第1の画像を用いて、予測式の積和演算(予測式の演算としての積和演算)を行う予測処理は、フィルタ処理の一種であるということができる。
フィルタ画像とは、フィルタ処理の結果得られる画像を意味する。予測処理としてのフィルタ処理により、第1の画像から得られる第2の画像(の予測値)は、フィルタ画像である。
タップ係数とは、予測式である多項式の各項を構成する係数であり、ディジタルフィルタのタップにおいて、フィルタリングの対象の信号に乗算されるフィルタ係数に相当する。
予測タップとは、予測式の演算に用いられる画素(の画素値)等の情報であり、予測式において、タップ係数と乗算される。予測タップには、画素(の画素値)そのものの他、画素から求められる値、例えば、あるブロック内の画素(の画素値)の総和や平均値等が含まれる。
ここで、予測式の演算に用いる予測タップとしての画素等を選択することは、ディジタルフィルタのタップに、入力となる信号を供給する接続線を張る(配する)ことに相当することから、予測式の演算に用いる予測タップとしての画素を選択することを、「予測タップを張る」ともいう。
クラス分類とは、画素を複数のクラスのうちのいずれかのクラスに分類する(クラスタリングする)ことを意味する。クラス分類は、例えば、注目画素の周辺領域の画素(の画素値)や、注目画素に関係する符号化情報を用いて行うことができる。注目画素に関係する符号化情報としては、例えば、注目画素の量子化に用いられる量子化パラメータや、注目画素にかけられたデブロッキングフィルタに関するDF(Deblocking Filter)情報等がある。DF情報とは、例えば、デブロッキングフィルタにおいて、ストロングフィルタ又はウィークフィルタのうちのいずれが適用されたかや、いずれも適用されなかったといった情報である。
クラス分類予測処理とは、クラスごとに行われる予測処理としてのフィルタ処理である。クラス分類予測処理の基本的な原理については、例えば、特許第4449489号等に記載されている。
高次項とは、予測式としての多項式を構成する項のうちの、2個以上の予測タップ(としての画素)の積を有する項である。
D次項とは、予測式としての多項式を構成する項のうちの、D個の予測タップの積を有する項である。例えば、1次項は、1個の予測タップを有する項であり、2次項は、2個の予測タップの積を有する項である。D次項を構成する予測タップの積において、その積をとる予測タップは、同一の予測タップ(画素)であってもよい。
D次係数とは、D次項を構成するタップ係数を意味する。
D次タップとは、D次項を構成する予測タップ(としての画素)を意味する。ある1個の画素が、D次タップであり、かつ、D次タップとは異なるD’次タップであることもある。また、D次タップのタップ構造と、D次タップとは異なるD’次タップのタップ構造とは、同一である必要はない。
DC(Direct Current)予測式とは、DC項を含む予測式である。
DC項とは、予測式としての多項式を構成する項のうちの、予測タップとしての画像のDC成分を表す値とタップ係数との積の項である。
DCタップとは、DC項の予測タップ、すなわち、DC成分を表す値を意味する。
DC係数とは、DC項のタップ係数を意味する。
1次予測式とは、1次項のみからなる予測式である。
高次予測式とは、高次項を含む予測式、すなわち、1次項と2次以上の高次項とからなる予測式や、2次以上の高次項のみからなる予測式である。
第1の画像の画素のうちの予測に用いるi番目の予測タップ(画素値等)をxiと、i番目のタップ係数をwiと、予測式により求める第2の画像の画素(の画素値の予測値)をyと、それぞれ表すこととすると、1次予測式は、式y=Σwixiで表される。
また、1次項及び2次項のみからなる高次予測式は、例えば、式y=Σwixi+Σ(Σwj,kxk)xjで表される。
さらに、例えば、1次予測式にDC項を含ませたDC予測式は、例えば、式Σwixi+wDCBDCBで表される。ここで、wDCBは、DC係数を表し、DCBは、DCタップを表す。
1次予測式、高次予測式、及び、DC予測式のタップ係数は、いずれも、上述したような最小自乗法によるタップ係数学習を行うことにより求めることができる。
本実施の形態では、説明を簡単にするため、予測式としては、1次予測式を採用することとする。
タップ構造とは、(例えば、注目画素の位置を基準とする、)予測タップとしての画素の配置を意味する。タップ構造は、予測タップの張り方、ということもできる。1次予測式が採用される場合、予測タップを構成する画素の位置に、その画素と乗算されるタップ係数を配置した状態を考えると、タップ構造は、タップ係数の配置であるということもできる。そこで、タップ構造とは、注目画素の予測タップを構成する画素の配置、及び、予測タップを構成する画素の位置に、その画素と乗算されるタップ係数を配置した状態でのタップ係数の配置のいずれをも意味することとする。
(画像の)アクティビティとは、画像の空間的な画素値の変化具合を意味する。
復号画像とは、元画像を符号化することにより得られる符号化データを復号することにより得られる画像である。復号画像には、復号装置で符号化データを復号することにより得られる画像の他、符号化装置で元画像が予測符号化される場合には、その予測符号化の局所復号で得られる画像も含まれる。すなわち、符号化装置において、元画像が予測符号化される場合には、局所復号において、予測画像と(復号された)残差とが加算されるが、その加算の加算結果は、復号画像である。符号化装置の局所復号にILFが用いられる場合、予測画像と残差との加算結果である復号画像が、ILFのフィルタ処理の対象となるが、ILFのフィルタ処理後の復号画像は、フィルタ画像でもある。
(画素の)傾斜方向とは、画素値の傾斜の方向、特に、例えば、画素値の傾斜が最大の方向を意味する。なお、画素値の傾斜が最大の方向は、画素値の等高線に直交する方向であり、画素値の等高線の接線方向と直交するので、画素値の等高線の接線方向とは一対一の関係にある。したがって、画素値の傾斜が最大の方向と、画素値の等高線の接線方向とは、等価な情報であり、傾斜方向というときには、画素値の傾斜が最大の方向、及び、画素値の等高線の接線方向のいずれをも含む。本実施の形態では、傾斜方向として、画素値の傾斜が最大の方向を採用することとする。
規定方向とは、あらかじめ決められた離散的な方向を意味する。方向の表現方法としては、例えば、連続的な角度によって連続的な方向を表現する方法や、水平方向及び垂直方向という2種類の離散的な方向で表現する方法、周囲360度を等角度の8方向に区分して、その8方向の離散的な方向で表現する方法等を採用することができる。規定方向とは、このように、あらかじめ決められた離散的な方向で表現される方向を意味する。例えば、非特許文献2に記載のGALFで用いられるdirectionや、GALFの方向クラスが表す方向(後述するV方向若しくはH方向のいずれかか、又は、D0方向若しくはD1方向のいずれかかの2通りの方向)等が、規定方向の一例である。
傾斜方向というときには、連続的な角度によって連続的に表現される方向も含まれるし、規定方向も含まれる。すなわち、傾斜方向は、連続的な方向で表現することもできるし、規定方向で表現することもできる。
傾斜特徴量とは、傾斜方向を表す画像の特徴量である。例えば、各方向のアクティビティや、画像にソーベルフィルタ等をかけて得られる傾斜ベクトル(グラディエント)が、傾斜特徴量の一例である。
傾斜特徴量には、画素の傾斜特徴量と、領域の傾斜特徴量とがある。画素の傾斜特徴量とは、1画素に注目して、その1画素に対する処理により得られる傾斜特徴量である。領域の傾斜特徴量とは、その領域内の複数の画素それぞれの傾斜特徴量を統計的に処理すること等により、総合的に用いて得られる傾斜特徴量である。画素の傾斜特徴量は、1画素に注目するので、ローカルな傾斜特徴量ということができ、領域の傾斜特徴量は、複数の画素の傾斜特徴量を総合的に用いて得られるので、マクロな傾斜特徴量ということができる。例えば、1画素に対して、ラプラシアンフィルタをかけることにより得られるアクティビティが、画素の傾斜特徴量(ローカルな傾斜特徴量)の一例であり、注目画素の周辺領域内の複数の画素それぞれのアクティビティを加算した加算値(以下、アクティビティサムともいう)が、領域の傾斜特徴量(マクロな傾斜特徴量)の一例である。
傾斜方向の信頼度とは、何らかの方法で求められた画素の傾斜方向の信頼性(確からしさ)を意味する。
度数分布生成領域とは、注目画素を含む所定領域で、傾斜方向(規定方向)の度数分布の生成に用いられる画素の領域である。
傾斜方向の特徴量とは、傾斜方向の画像の特徴量を意味する。例えば、傾斜方向のアクティビティが、傾斜方向の特徴量の一例である。
<GALFのクラス分類の概要>
図1は、GALFのクラス分類を行うクラス分類部10の処理の概要を説明する図である。
すなわち、図1は、JVET(Joint Video. Exploration Team)-B0060のクラス分類の概要を示している。
クラス分類部10は、復号画像(符号化装置での局所復号により得られる復号画像を含む)において、クラス分類の対象となる画素を、順次、注目画素に選択し、注目画素を始点とする複数方向それぞれのアクティビティを、注目画素の傾斜特徴量として求める。
クラス分類部10では、注目画素を始点とする複数方向として、例えば、注目画素を始点とする垂直方向としての上方向、水平方向としての左方向、左上方向、及び、右上方向の4方向が採用される。
ここで、図1に示すように、上方向、左方向、左上方向、及び、右上方向を、以下、それぞれ、V方向、H方向、D0方向、及び、D1方向ともいう。また、V方向、H方向、D0方向、及び、D1方向に対して、注目画素(の位置)を対称の中心として点対称の方向(反対方向)を、それぞれ、V'方向、H'方向、D0'方向、及び、D1'方向ともいう。
画像のアクティビティは、点対称であることが多いため、GALFのクラス分類では、点対称の2方向のアクティビティが、その2方向のうちの1方向のアクティビティによって兼用(代用)される。すなわち、V方向及びV'方向のアクティビティは、V方向のアクティビティによって兼用され、H方向及びH'方向のアクティビティは、H方向のアクティビティによって兼用される。D0方向及びD0'方向のアクティビティは、D0方向のアクティビティによって兼用され、D1方向及びD1'方向のアクティビティは、D1方向のアクティビティによって兼用される。
V方向、H方向、D0方向、及び、D1方向は、GALFのクラス分類においてアクティビティが求められる方向であるから、アクティビティ算出方向であるということができる。アクティビティ算出方向であるV方向、H方向、D0方向、及び、D1方向は、あらかじめ決められた離散的な方向であるから、規定方向(の一種)である。
クラス分類部10は、注目画素のD方向(V方向、H方向、D0方向、及び、D1方向を表す)のアクティビティA(D)を、注目画素を含む復号画像に、例えば、ラプラシアンフィルタをかけることで求める。この場合、注目画素のV方向、H方向、D0方向、及び、D1方向それぞれのアクティビティA(V), A(H), A(D0)、及び、 A(D1)は、例えば、次式に従って求めることができる。
A(V) = abs((L[y][x]<<1) L[y-1][x] L[y+1][x])
A(H) = abs((L[y][x]<<1) L[y][x-1] L[y][x+1])
A(D0) = abs((L[y][x]<<1) L[y-1][x-1] L[y+1][x+1])
A(D1) = abs((L[y][x]<<1) L[y+1][x-1] L[y-1][x+1])
・・・(1)
A(H) = abs((L[y][x]<<1) L[y][x-1] L[y][x+1])
A(D0) = abs((L[y][x]<<1) L[y-1][x-1] L[y+1][x+1])
A(D1) = abs((L[y][x]<<1) L[y+1][x-1] L[y-1][x+1])
・・・(1)
ここで、L[y][x]は、復号画像の第y行第x列の位置の画素の画素値(輝度値)を表し、いまの場合、復号画像の第y行第x列の位置の画素が、注目画素である。また、abs(v)は、vの絶対値を表し、v<<bは、vを、bビットだけ左シフトすること(2b倍すること)を表す。
クラス分類部10は、注目画素の周辺領域内の複数の画素それぞれのアクティビティを同様にして求める。そして、クラス分類部10は、注目画素の周辺領域内の複数の画素それぞれのアクティビティを、V方向、H方向、D0方向、及び、D1方向それぞれごとに加算し、V方向、H方向、D0方向、及び、D1方向それぞれについて、アクティビティの加算値(以下、アクティビティサム(activity summation)ともいう)を求める。
本実施の形態では、例えば、図1に示すように、注目画素を中心とする横×縦が3×3画素の領域が、傾斜特徴量としてのアクティビティA(D)を総合的に用いる対象とする周辺領域になっており、その周辺領域の3×3画素それぞれの式(1)のアクティビティA(V)を加算し、注目画素のV方向のアクティビティサムsumA(V)が求められる。注目画素のH方向、D0方向、及び、D1方向のアクティビティサムsumA(H)、sumA(D0)、及び、sumA(D1)も同様にして求められる。ここで、周辺領域は、3×3画素の領域に限定されるものではない。傾斜特徴量を総合的に用いる対象とする周辺領域、(ここでは、アクティビティA(D)の加算の対象とする周辺領域)としては、3×3画素の領域の他、注目画素を含む6×6画素の領域、その他の、注目画素を含む任意の領域を採用することができる。
クラス分類部10は、注目画素のV方向、H方向、D0方向、及び、D1方向のアクティビティサムsumA(V)、sumA(H)、sumA(D0)、及び、sumA(D1)を用いて、注目画素の傾斜方向を表す規定方向としてのGALFのdirectionを求める(設定する)。
ここで、規定方向としてのGALFのdirectionとは、図1に示すように、2進数で000ないし111、10進数で0ないし7が割り当てられた8方向である。GALFでは、規定方向としてのdirectionとして、H方向とH方向及びD0方向を2等分する方向HD0との間の方向、方向HD0とD0方向との間の方向、D0方向とD方向及びV方向を2等分する方向D0Vとの間の方向、方向D0VとV方向との間の方向、V方向とV方向及びD1方向を2等分する方向VD1との間の方向、方向VD1とD1方向との間の方向、D1方向とD1方向及びH'方向を2等分する方向D1H'との間の方向、並びに、方向D1H'とH'方向との間の方向の、合計で8方向があらかじめ決められている。
H方向と方向HD0との間の方向には2進数の110が、方向HD0とD0方向との間の方向には2進数の001が、D0方向と方向D0Vとの間の方向には2進数の000が、方向D0VとV方向との間の方向には2進数の010が、V方向と方向VD1との間の方向には2進数の011が、方向VD1とD1方向との間の方向には2進数の100が、D1方向と方向D1H'との間の方向には2進数の101が、方向D1H'とH'方向との間の方向には2進数の111が、それぞれ割り当てられている。なお、GALFでは、上述の8方向それぞれと、その8方向それぞれと点対称の方向とは、同一の方向として扱われる。
クラス分類部10は、注目画素の規定方向としてのdirectionから、注目画素の傾斜方向を表す方向クラスを求める(設定する)。GALFの方向クラスは、V方向若しくはH方向のいずれかか、又は、D0方向若しくはD1方向のいずれかかの2通りの方向を表す。
ここで、方向クラスを求めることは、クラス分類部10が行うGALFのクラス分類の一部を構成するので、サブクラス分類ということができる。方向クラスを求めるサブクラス分類を、以下、方向サブクラス分類ともいう。
クラス分類部10は、注目画素の方向クラス、並びに、V方向、H方向、D0方向、及び、D1方向のアクティビティサムsumA(V)、sumA(H)、sumA(D0)、及び、sumA(D1)に応じて、注目画素をクラス分類する。
図2は、注目画素の規定方向(傾斜方向)としてのGALFのdirectionの求め方を説明する図である。
図2は、GALFのクラス分類において、V方向、H方向、D0方向、及び、D1方向のアクティビティサムsumA(V)、sumA(H)、sumA(D0)、及び、sumA(D1)を用いて求められる(設定される)MainDir及びSecDirの例を示している。さらに、図2は、GALFのクラス分類で用いられるMainDir及びSecDirとdirectionとの関係、及び、directionとtranspose及びclassとの関係を示す方向クラス分類テーブルを示している。
クラス分類部10は、V方向、H方向、D0方向、及び、D1方向のアクティビティサムsumA(V)、sumA(H)、sumA(D0)、及び、sumA(D1)を求めた後、アクティビティサムsumA(H)とsumA(V)とを比較し、大きい方を第1の勝者アクティビティHVhighとするとともに、他方を第1の敗者アクティビティHVlowとする。
また、クラス分類部10は、アクティビティサムsumA(D0)とsumA(D1)とを比較し、大きい方を第2の勝者アクティビティDhighとするとともに、他方を第2の敗者アクティビティDlowとする。
そして、クラス分類部10は、第1の勝者アクティビティHVhighと第2の敗者アクティビティDlowとの乗算値HVhigh×Dlowと、第2の勝者アクティビティDhighと第1の敗者アクティビティHVlowとの乗算値Dhigh×HVlowとを比較する。
乗算値HVhigh×Dlowが、乗算値Dhigh×HVlowより大きい場合、クラス分類部10は、第1の勝者アクティビティHVhighが得られた方向(H方向又はV方向)を、Main Dir(MainDirection)に決定するとともに、第2の勝者アクティビティDhighが得られた方向(D0方向又はD1方向)を、SecDir(Second Direction)に決定する。
一方、HVhigh×Dlowが、Dhigh×HVlowより大きくない場合、クラス分類部10は、第2の勝者アクティビティDhighが得られた方向を、MainDirに決定するとともに、第1の勝者アクティビティHVhighが得られた方向を、SecDirに決定する。
図2では、注目画素のMainDir及びSecDirが、それぞれ、D0方向及びV方向になっている。
クラス分類部10は、方向クラス分類テーブルにおいて、注目画素のMainDir及びSecDirに割り当てられているdirectionを、注目画素の規定方向としてのdirectionに決定する。さらに、クラス分類部10は、方向クラス分類テーブルにおいて、注目画素のdirectionに割り当てられているtranspose及びclassを、注目画素のtranspose及びclassに決定する。
ここで、GALFでは、フィルタ係数が転置され、フィルタ処理に用いられるが、transposeは、フィルタ係数の転置の仕方を表す。classは、方向クラスを表す。GALFの方向クラスは、10進数の0及び2で表される2通りのクラスである。方向クラスは、注目画素のdirectionと、2進数の010との論理積をとることにより求めることができる。方向クラス0は、傾斜方向がD0方向又はD1方向であることを表し、方向クラス2は、傾斜方向がV方向又はH方向であることを表す。
図3は、GALFのクラス分類で求められるクラスを説明する図である。
クラス分類部10が行うGALFのクラス分類では、注目画素は、最終クラス0ないし24の25クラスのうちのいずれかに分類される。
すなわち、クラス分類部10は、注目画素の方向クラス、並びに、V方向、H方向、D0方向、及び、D1方向のアクティビティサムsumA(V)、sumA(H)、sumA(D0)、及び、sumA(D1)を必要に応じて用いて、傾斜強度比を求め、その傾斜強度比に応じて、注目画素の、傾斜強度比を表すクラスを求める(設定する)。
ここで、傾斜強度比を表すクラスを求めることは、クラス分類部10が行うGALFのクラス分類の一部を構成するので、サブクラス分類ということができる。傾斜強度比を表すクラスを求めるサブクラス分類を、以下、傾斜強度比サブクラス分類ともいう。
注目画素の方向クラスが、D0方向又はD1方向に対応する方向クラス0である場合、クラス分類部10は、D0方向、及び、D1方向のアクティビティサムsumA(D0)、及び、sumA(D1)の比rd1,d2を、傾斜強度比として求める。
すなわち、傾斜強度比rd1,d2は、式(2)に従って求められる。
rd1,d2=max{sumA(D0),sumA(D1)}/min{sumA(D0),sumA(D1)}
・・・(2)
・・・(2)
ここで、max{A, B}は、A及びBのうちの大きい方を表し、min{A, B}は、A及びBのうちの小さい方を表す。
傾斜強度比rd1,d2が、第1の閾値t1未満である場合、注目画素は、傾斜強度比が極めて小さいノン(None)クラスに傾斜強度比サブクラス分類される。
傾斜強度比サブクラス分類において、注目画素がノンクラスに分類された場合、クラス分類部10は、注目画素の空間特徴量としてのV方向、H方向、D0方向、及び、D1方向のアクティビティサムsumA(V)、sumA(H)、sumA(D0)、及び、sumA(D1)に応じて、注目画素を、最終的なクラス(以下、最終クラスともいう)にクラス分類する。
すなわち、傾斜強度比サブクラス分類においてノンクラスに分類された注目画素は、注目画素のV方向、H方向、D0方向、及び、D1方向のアクティビティサムsumA(V)、sumA(H)、sumA(D0)、及び、sumA(D1)に応じて、最終クラス0ないし4のいずれかにクラス分類される。
傾斜強度比rd1,d2が、第1の閾値t1以上第2の閾値t2未満である場合、注目画素は、傾斜強度比が小さいウイーク(Weak)クラスに傾斜強度比サブクラス分類される。
傾斜強度比サブクラス分類において、注目画素がウイーククラスに分類された場合、クラス分類部10は、注目画素の空間特徴量としてのV方向、H方向、D0方向、及び、D1方向のアクティビティサムsumA(V)、sumA(H)、sumA(D0)、及び、sumA(D1)に応じて、注目画素を、最終クラスにクラス分類する。
すなわち、傾斜強度比サブクラス分類においてウイーククラスに分類された注目画素は、注目画素のV方向、H方向、D0方向、及び、D1方向のアクティビティサムsumA(V)、sumA(H)、sumA(D0)、及び、sumA(D1)に応じて、最終クラス5ないし9のいずれかにクラス分類される。
傾斜強度比rd1,d2が、第2の閾値t2以上である場合、注目画素は、傾斜強度比が大きいストロング(Strong)クラスに傾斜強度比サブクラス分類される。
傾斜強度比サブクラス分類において、注目画素がストロングクラスに分類された場合、クラス分類部10は、注目画素の空間特徴量としてのV方向、H方向、D0方向、及び、D1方向のアクティビティサムsumA(V)、sumA(H)、sumA(D0)、及び、sumA(D1)に応じて、注目画素を、最終クラスにクラス分類する。
すなわち、傾斜強度比サブクラス分類においてストロングクラスに分類された注目画素は、注目画素のV方向、H方向、D0方向、及び、D1方向のアクティビティサムsumA(V)、sumA(H)、sumA(D0)、及び、sumA(D1)に応じて、最終クラス10ないし14のいずれかにクラス分類される。
一方、注目画素の方向クラスが、V方向又はH方向に対応する方向クラス2である場合、クラス分類部10は、V方向、及び、H方向のアクティビティサムsumA(V)、及び、sumA(H)の比rh,vを、傾斜強度比として求める。
すなわち、傾斜強度比rh,vは、式(3)に従って求められる。
rh,v=max{sumA(V),sumA(H)}/min{sumA(V),sumA(H)}
・・・(3)
・・・(3)
傾斜強度比rh,vが、第1の閾値t1未満である場合、注目画素は、傾斜強度比が極めて小さいノン(None)クラスに傾斜強度比サブクラス分類される。
傾斜強度比サブクラス分類において、注目画素がノンクラスに分類された場合、上述したように、クラス分類部10は、注目画素の空間特徴量としてのV方向、H方向、D0方向、及び、D1方向のアクティビティサムsumA(V)、sumA(H)、sumA(D0)、及び、sumA(D1)に応じて、注目画素を、最終クラス0ないし4のいずれかにクラス分類する。
傾斜強度比rh,vが、第1の閾値t1以上第2の閾値t2未満である場合、注目画素は、傾斜強度比が小さいウイーク(Weak)クラスに傾斜強度比サブクラス分類される。
傾斜強度比サブクラス分類において、注目画素がウイーククラスに分類された場合、クラス分類部10は、注目画素の空間特徴量としてのV方向、H方向、D0方向、及び、D1方向のアクティビティサムsumA(V)、sumA(H)、sumA(D0)、及び、sumA(D1)に応じて、注目画素を、最終クラス15ないし19のいずれかにクラス分類する。
傾斜強度比rh,vが、第2の閾値t2以上である場合、注目画素は、傾斜強度比が大きいストロング(Strong)クラスに傾斜強度比サブクラス分類される。
傾斜強度比サブクラス分類において、注目画素がストロングクラスに分類された場合、クラス分類部10は、注目画素の空間特徴量としてのV方向、H方向、D0方向、及び、D1方向のアクティビティサムsumA(V)、sumA(H)、sumA(D0)、及び、sumA(D1)に応じて、注目画素を、最終クラス20ないし24のいずれかにクラス分類する。
以上説明したGALFのクラス分類には、傾斜方向の信頼度という考え方がない。
また、GALFのクラス分類では、注目画素の周辺領域内の複数の画素(図1では、3×3画素)それぞれのアクティビティA(D)は、ローカルな傾斜特徴量であるということができ、アクティビティサムsumA(D)は、ローカルな傾斜特徴量としての周辺領域内の複数の画素それぞれのアクティビティA(D)を総合的に用いて得られるマクロな傾斜特徴量であるということができる。GALFのクラス分類では、マクロな傾斜特徴量としてのアクティビティサムsumA(D)が用いられるが、ローカルな傾斜特徴量としてのD方向のアクティビティA(D)そのものは用いられない。
ここで、本件発明者によれば、クラス分類予測処理としてのフィルタ処理において、クラス分類に、傾斜方向の信頼度を導入することにより、フィルタ処理の性能が改善すること、すなわち、フィルタ処理により得られるフィルタ画像の元画像に対する誤差が小さくなり、符号化効率、及び、最終的な復号画像となるフィルタ画像の画質が向上することが確認されている。
そこで、以下、傾斜方向の信頼度に応じて行うクラス分類について説明する。傾斜方向の信頼度に応じて行うクラス分類の方式を、信頼度方式ともいう。
<内積信頼度方式のクラス分類>
図4は、内積信頼度方式のクラス分類を行うクラス分類部20の処理の概要を説明する図である。
内積信頼度方式は、信頼度方式の1つである。信頼度方式には、内積信頼度方式と、後述する度数分布方式とがある。
内積信頼度方式のクラス分類を行うクラス分類部20は、GALFのクラス分類と同様に、復号画像において、クラス分類の対象となる画素を、順次、注目画素に選択する。そして、クラス分類部20は、注目画素について、例えば、復号画像にソーベルフィルタを適用することで、注目画素の傾斜特徴量として、注目画素の傾斜方向を表す傾斜ベクトルを求める。
すなわち、位置iの画素の画素値をR(i)と表すとともに、傾斜ベクトルを、ti=(gradX(i), gradY(i))と表すこととすると、クラス分類部20は、式(4)に従って、位置iの注目画素の傾斜ベクトルti = (gradX(i), gradY(i))を求める。
ti = (gradX(i), gradY(i))
=(∂R(i)/∂x,∂R(i)/∂y)
・・・(4)
=(∂R(i)/∂x,∂R(i)/∂y)
・・・(4)
∂/∂x及び∂/∂yは、ソーベルフィルタを表す。
ここで、傾斜ベクトルtiを90度だけ回転したベクトルは、画素値の等高線の接線方向を表す。
クラス分類部20は、傾斜特徴量を総合的に用いる対象とする周辺領域内の複数の画素としての、注目画素を中心とする3×3画素の傾斜ベクトルtiそれぞれを、同様にして求める。
そして、クラス分類部20は、傾斜特徴量を総合的に用いる対象とする周辺領域内の3×3画素の傾斜ベクトルtiそれぞれとの内積の総和J=Σ(|ti||e|cosθ)を最大にする単位ベクトルeを、周辺領域内の3×3画素の傾斜ベクトルtiを代表する代表ベクトルとして求める(設定する)。ここで、式J=Σ(|ti||e|cosθ)において、Jは、3×3画素の傾斜ベクトルtiそれぞれと単位ベクトルeとの内積の総和を表し、Σは、周辺領域内の3×3画素についてのサメーションを表す。|ti|及び|e|は、傾斜ベクトルti及び単位ベクトルeのノルムをそれぞれ表し、θは、傾斜ベクトルtiと単位ベクトルeとがなす角度を表す。
ここで、内積信頼度方式において、注目画素の周辺領域内の3×3画素それぞれの傾斜ベクトルtiは、ローカルな傾斜特徴量であるということができ、注目画素について得られる周辺領域の代表ベクトル(注目画素についての代表ベクトル)は、ローカルな傾斜特徴量としての3×3画素それぞれの傾斜ベクトルtiを総合的に用いて得られるマクロな傾斜特徴量であるということができる。
クラス分類部20は、注目画素についての代表ベクトルを用いて、例えば、注目画素の傾斜方向を表す規定方向としてのGALFのdirectionを求める(設定する)。すなわち、クラス分類部20は、図1で説明したGALFの8方向のdirectionのうちの、注目画素についての代表ベクトル(の方向)が属するdirectionを、注目画素の傾斜方向を表す規定方向として求める。
また、クラス分類部20は、代表ベクトルと、注目画素の周辺領域内の3×3画素の傾斜ベクトルtiとの内積の総和に対応する値を、注目画素の傾斜方向を表す規定方向の信頼度として求める(設定する)。
この場合、注目画素の規定方向の信頼度は、周辺領域内の3×3画素の傾斜ベクトルtiが代表ベクトルに寄与する程度を指標として求められる(設定される)、ということができる。
以上のようにして求められる注目画素の規定方向の信頼度は、周辺領域内の3×3画素の傾斜ベクトルtiの中に、注目画素の規定方向(傾斜方向)と異なる方向の傾斜ベクトルtiがない程度(3×3画素の傾斜ベクトルtiの中に、注目画素の規定方向と同様の方向の傾斜ベクトルtiがある程度)を表す。
したがって、信頼度が大であることは、周辺領域内の3×3画素の傾斜ベクトルtiの中に、注目画素の規定方向と同様の方向の傾斜ベクトルtiが多くあることを表す。
クラス分類部20は、注目画素の規定方向と信頼度とに応じて、クラス分類を行い、注目画素のクラス(最終クラス)を求める。
図5は、図4のクラス分類部20が注目画素について行う内積信頼度方式のクラス分類の処理の例を説明するフローチャートである。
ステップS11において、クラス分類部20は、注目画素の周辺領域内の3×3画素の中から、傾斜特徴量としての傾斜ベクトルを求める対象の対象画素に選択していない画素の1つを、対象画素に選択し、処理は、ステップS12に進む。
ステップS12では、クラス分類部20は、復号画像にソーベルフィルタを適用することで、対象画素の傾斜特徴量としての傾斜ベクトルを求め、処理は、ステップS13に進む。
ステップS13では、クラス分類部20は、周辺領域内の3×3画素のすべてを、対象画素に選択したかどうかを判定する。
ステップS13において、周辺領域内の3×3画素のすべてを、まだ、対象画素に選択していないと判定された場合、処理は、ステップS11に戻る。ステップS11において、クラス分類部20は、周辺領域内の3×3画素の中から、対象画素を新たに選択し、以下、同様の処理を繰り返す。
また、ステップS13において、周辺領域内の3×3画素のすべてを、対象画素に選択したと判定された場合、処理は、ステップS14に進む。
ステップS14では、クラス分類部20は、注目画素について、周辺領域内の3×3画素の傾斜ベクトルtiそれぞれとの内積の総和J=Σ(|ti||e|cosθ)を最大にする単位ベクトルeを、代表ベクトルとして求める(設定する)。さらに、クラス分類部20は、GALFの8方向のdirectionのうちの、注目画素についての代表ベクトル(の方向)が属するdirectionを、注目画素の傾斜方向を表す規定方向として求め(設定し)、処理は、ステップS14からステップS15に進む。
ステップS15では、クラス分類部20は、注目画素の周辺領域内の3×3画素の中から、注目画素についての代表ベクトルと傾斜ベクトルtiとの内積を求める対象の対象画素に選択していない画素の1つを、対象画素に選択し、処理は、ステップS16に進む。
ステップS16では、クラス分類部20は、注目画素についての代表ベクトルと、対象画素の傾斜ベクトルtiとの内積を求め、その内積に対応する値を、注目画素の規定方向の信頼度(としての変数)に加算し、処理は、ステップS17に進む。
ここで、注目画素の規定方向の信頼度(としての変数)は、注目画素について、ステップS15の処理が最初に行われる前に、0にリセットされる。
ステップS17では、クラス分類部20は、周辺領域内の3×3画素のすべてを、対象画素に選択したかどうかを判定する。
ステップS17において、周辺領域内の3×3画素のすべてを、まだ、対象画素に選択していないと判定された場合、処理は、ステップS15に戻る。ステップS15において、クラス分類部20は、周辺領域内の3×3画素の中から、対象画素を新たに選択し、以下、同様の処理を繰り返す。
また、ステップS17において、周辺領域内の3×3画素のすべてを、対象画素に選択したと判定された場合、処理は、ステップS18に進む。
ステップS18では、クラス分類部20は、注目画素の規定方向と(規定方向の)信頼度とに応じて、クラス分類を行い、注目画素のクラス(最終クラス)を求め、注目画素についてのクラス分類の処理を終了する。
ステップS18では、例えば、クラス分類部20は、注目画素の規定方向の信頼度に応じて、規定方向の信頼度を表す信頼度クラスを求める(設定する)。すなわち、例えば、クラス分類部20は、注目画素の規定方向の信頼度が所定の閾値以上である場合、注目画素を信頼度がある信頼度ありクラスに分類し、信頼度が所定の閾値以上でない場合、注目画素を信頼度がない信頼度なしクラスに分類する。
ここで、信頼度クラスを求めることは、クラス分類部20が行う内積信頼度方式のクラス分類の一部を構成するので、サブクラス分類ということができる。信頼度クラスを求めるサブクラス分類を、以下、信頼度サブクラス分類ともいう。
クラス分類部20は、注目画素の信頼度クラス(ここでは、信頼度ありクラス又は信頼度なしクラス)、及び、注目画素の規定方向に応じて、注目画素をクラス分類する。
すなわち、例えば、信頼度サブクラス分類において、注目画素が信頼度なしクラスに分類された場合、クラス分類部20は、注目画素を、信頼度なしクラスにあらかじめ割り当てられた最終クラスにクラス分類する。
また、例えば、信頼度サブクラス分類において、注目画素が信頼度ありクラスに分類された場合、クラス分類部20は、注目画素の規定方向に応じて、GALFのdirectionが表す8方向それぞれにあらかじめ割り当てられた最終クラスのうちの、注目画素の規定方向に一致する方向に割り当てられた最終クラスに、注目画素をクラス分類する。
以上のような内積信頼度方式のクラス分類では、注目画素は、信頼度なしクラスにあらかじめ割り当てられた1個の最終クラスと、GALFのdirectionが表す8方向それぞれにあらかじめ割り当てられた8個の最終クラスとの合計で9個の最終クラスのうちのいずれかに分類される。
内積信頼度方式のクラス分類によれば、クラス分類が、注目画素の規定方向の信頼度に応じて行われるので、クラス分類予測処理としてのフィルタ処理の性能を改善することができる。
但し、内積信頼度方式のクラス分類では、図5のフローチャートに示したように、ステップS11ないしS13のループ処理と、ステップS15ないしS17のループ処理との2個のループ処理が、周辺領域内の複数の画素を対象画素として行うループ処理として存在する。
以上のように、信頼度方式の1つである内積信頼度方式のクラス分類では、2個のループ処理が存在する。さらに、内積信頼度方式のクラス分類では、規定方向(傾斜)の信頼度を求める(設定する)にあたって、内積を計算する必要がある。そのため、内積信頼度方式のクラス分類を行うクラス分類予測処理を符号化装置及び復号装置に実装する場合には、符号化装置及び復号装置に必要なスループットが悪化し、符号化装置及び復号装置に必要とされるハードウエアに与えるインパクトが大きくなる。
そこで、以下では、符号化装置及び復号装置に必要なスループットのリダクションを図った信頼度方式である度数分布方式のクラス分類について説明する。
度数分布方式のクラス分類は、注目画素を含む所定領域を、規定方向の度数分布の生成に用いられる画素の領域である度数分布生成領域として、その度数分布生成領域内の複数の画素それぞれのローカルな傾斜特徴量そのものを用いて、傾斜特徴量が表す規定方向の度数分布を生成し、その度数分布の度数に対応する値を、規定方向の信頼度として用いる。
これにより、度数分布方式のクラス分類では、内積を計算することなく、度数分布の生成の際の度数の加算により、傾斜方向の信頼度を求めることができる。さらに、度数分布方式のクラス分類では、複数の画素を対象画素として行うループ処理を、1個のループ処理だけにすることができる。
したがって、度数分布方式のクラス分類を行う場合には、内積信頼度方式のクラス分類を行う場合に比較して、符号化装置及び復号装置に必要なスループットを向上させつつ、クラス分類予測処理としてのフィルタ処理の性能を改善することができる。
<第1の度数分布方式のクラス分類>
図6は、第1の度数分布方式のクラス分類を行うクラス分類部30の処理の概要を説明する図である。
第1の度数分布方式は、信頼度方式の1つである。
第1の度数分布方式のクラス分類を行うクラス分類部30は、復号画像において、クラス分類の対象となる画素を、順次、注目画素に選択する。そして、クラス分類部30は、例えば、内積信頼度方式のクラス分類を行うクラス分類部20(図4)と同様に、注目画素について、復号画像にソーベルフィルタを適用することで、注目画素のローカルな傾斜特徴量としての傾斜ベクトルを求める。
クラス分類部30は、注目画素を含む所定領域を度数分布生成領域として、その度数分布生成領域内の複数の画素としての、注目画素を中心とする3×3画素のうちの注目画素以外の8画素のローカルな傾斜特徴量としての傾斜ベクトルも同様にして求める。
そして、クラス分類部30は、注目画素の度数分布生成領域内の3×3画素のローカルな傾斜特徴量としての傾斜ベクトルそのものを用いて、傾斜方向の度数分布を生成する。
すなわち、クラス分類部30は、例えば、図1で説明したGALFの8方向のdirectionとしての規定方向を、度数分布の階級として、注目画素について、度数分布生成領域内の3×3画素の傾斜ベクトルを対象に、その傾斜ベクトルが属する階級としての規定方向の度数をカウントすることで、規定方向(で表される傾斜方向)の度数分布を生成する。
その後、クラス分類部30は、注目画素についての規定方向の度数分布において、最大度数の規定方向を、注目画素の規定方向として求める(設定する)とともに、その最大度数に対応する値を、注目画素の規定方向の信頼度として求める(設定する)。
そして、クラス分類部30は、注目画素の規定方向及び信頼度等に応じて、クラス分類を行い、注目画素のクラス(最終クラス)を求める。
なお、本実施の形態では、度数分布生成領域は、マクロな傾斜特徴量としてのアクティビティサムや代表ベクトルを求めるにあたり、ローカルな傾斜特徴量としてのアクティビティや傾斜ベクトルを総合的に用いる対象とする周辺領域と一致する3×3画素の領域であるが、度数分布生成領域は、注目画素を含む3×3画素の領域に限定されるものではない。さらに、度数分布生成領域としては、周辺領域と一致しない領域を採用することができる。
図7は、第1の度数分布方式のクラス分類で求められるクラスを説明する図である。
クラス分類部30が行う第1の度数分布方式のクラス分類では、例えば、図3で説明したGALFのクラス分類と同様に、注目画素を、最終クラス0ないし24の25クラスのうちのいずれかに分類することができる。
クラス分類部30は、例えば、注目画素の規定方向及び信頼度、並びに、V方向、H方向、D0方向、及び、D1方向のアクティビティサムsumA(V)、sumA(H)、sumA(D0)、及び、sumA(D1)に応じて、注目画素をクラス分類する。
すなわち、クラス分類部30は、注目画素の周辺領域に一致する度数分布生成領域の3×3画素について、傾斜ベクトルを求める。さらに、クラス分類部30は、クラス分類部10と同様に、V方向、H方向、D0方向、及び、D1方向の4方向のアクティビティA(V), A(H), A(D0)、及び、A(D1)を求める。
また、クラス分類部30は、度数分布生成領域の3×3画素それぞれの傾斜ベクトルを用いて、その傾斜ベクトルが属する規定方向の度数分布を求める(生成する)。さらに、クラス分類部30は、クラス分類部10と同様に、周辺領域内の3×3画素それぞれのV方向、H方向、D0方向、D1方向の4方向のアクティビティA(V), A(H), A(D0)、及び、A(D1)を用いて、アクティビティサムsumA(V)、sumA(H)、sumA(D0)、及び、sumA(D1)を求める。
その後、クラス分類部30は、注目画素についての規定方向の度数分布において、最大度数の規定方向を、注目画素の規定方向として求める(設定する)とともに、その最大度数に対応する値を、注目画素の規定方向の信頼度として求める(設定する)。
そして、クラス分類部30は、例えば、クラス分類部10と同様に、注目画素の規定方向としてのdirectionに応じて、方向サブクラス分類を行い、注目画素について、GALFと同様の方向クラスを求める(設定する)。図3で説明したように、GALFの方向クラスは、V方向若しくはH方向のいずれかか、又は、D0方向若しくはD1方向のいずれかかの2通りの方向を表す。
また、クラス分類部30は、注目画素の規定方向の信頼度に応じて、信頼度サブクラス分類を行い、例えば、注目画素を、信頼度が低いロー(Low)クラス、信頼度が中くらいのウイーク(Weak)クラス、及び、信頼度が高いストロング(Strong)クラスのうちのいずれかに分類する。
規定方向の信頼度が、第1の閾値p1未満である場合、注目画素は、ロークラスに信頼度サブクラス分類される。また、規定方向の信頼度が、第1の閾値p1以上で第2の閾値p2未満である場合、注目画素は、ウイーククラスに信頼度サブクラス分類され、規定方向の信頼度が、第2の閾値p2以上である場合、注目画素は、ストロングクラスに信頼度サブクラス分類される。
度数分布生成領域の3×3画素の傾斜方向それぞれがほとんど一致していない場合、注目画素は、ロークラスに分類される。度数分布生成領域の3×3画素の傾斜方向それぞれが幾分か一致していない場合、注目画素は、ウイーククラスに分類される。度数分布生成領域の3×3画素の傾斜方向それぞれがほとんど一致している場合、注目画素は、ストロッククラスに分類される。
信頼度サブクラス分類において、注目画素がロークラスに分類された場合、クラス分類部30は、方向クラスに関係なく、注目画素のV方向、H方向、D0方向、及び、D1方向のアクティビティサムsumA(V)、sumA(H)、sumA(D0)、及び、sumA(D1)に応じて、注目画素を、最終クラスにクラス分類する。
すなわち、信頼度サブクラス分類においてロークラスに分類された注目画素は、注目画素のV方向、H方向、D0方向、及び、D1方向のアクティビティサムsumA(V)、sumA(H)、sumA(D0)、及び、sumA(D1)に応じて、GALFのクラス分類と同様に、最終クラス0ないし4のいずれかにクラス分類される。
信頼度サブクラス分類において、注目画素がウイーククラスに分類された場合、クラス分類部30は、方向クラス、並びに、注目画素のV方向、H方向、D0方向、及び、D1方向のアクティビティサムsumA(V)、sumA(H)、sumA(D0)、及び、sumA(D1)に応じて、注目画素を、最終クラスにクラス分類する。
すなわち、信頼度サブクラス分類においてウイーククラスに分類され、方向クラス分類においてD0方向又はD1方向に対応する方向クラス0に分類された注目画素は、注目画素のV方向、H方向、D0方向、及び、D1方向のアクティビティサムsumA(V)、sumA(H)、sumA(D0)、及び、sumA(D1)に応じて、GALFのクラス分類と同様に、最終クラス5ないし9のいずれかにクラス分類される。
信頼度サブクラス分類においてストロングクラスに分類され、方向クラス分類においてD0方向又はD1方向に対応する方向クラス0に分類された注目画素は、注目画素のV方向、H方向、D0方向、及び、D1方向のアクティビティサムsumA(V)、sumA(H)、sumA(D0)、及び、sumA(D1)に応じて、GALFのクラス分類と同様に、最終クラス10ないし14のいずれかにクラス分類される。
信頼度サブクラス分類においてウイーククラスに分類され、方向クラス分類においてV方向又はH方向に対応する方向クラス2に分類された注目画素は、注目画素のV方向、H方向、D0方向、及び、D1方向のアクティビティサムsumA(V)、sumA(H)、sumA(D0)、及び、sumA(D1)に応じて、GALFのクラス分類と同様に、最終クラス15ないし19のいずれかにクラス分類される。
信頼度サブクラス分類においてストロングクラスに分類され、方向クラス分類においてV方向又はH方向に対応する方向クラス2に分類された注目画素は、注目画素のV方向、H方向、D0方向、及び、D1方向のアクティビティサムsumA(V)、sumA(H)、sumA(D0)、及び、sumA(D1)に応じて、GALFのクラス分類と同様に、最終クラス20ないし24のいずれかにクラス分類される。
第1の度数分布方式において、第1の閾値p1及び第2の閾値p2は、例えば、度数分布生成領域の画素数に応じて設定することができる。例えば、規定方向の信頼度として、規定方向の度数分布の度数(ここでは、最大度数)そのものを採用する場合において、度数分布生成領域が6×6画素の領域であるときには、第1の閾値p1は、例えば、度数分布生成領域の画素数(例えば36画素)の1/4に設定し、第2の閾値p2は、例えば、度数分布生成領域の画素数の1/2に設定することができる。
なお、上述の場合には、信頼度サブクラス分類において、注目画素の規定方向の信頼度が、第1の閾値p1未満である場合には、注目画素を、信頼度が低いロークラスに信頼度サブクラス分類することとしたが、注目画素の規定方向の信頼度が、第1の閾値p1未満である場合、注目画素については、最終クラスを求めるクラス分類を行わずに、予測処理としてのフィルタ処理をパスすること、又は、フィルタ処理をパスする最終クラスにクラス分類することができる。後述する度数分布方式のクラス分類でも同様である。
図8は、図6のクラス分類部30が注目画素について行う第1の度数分布方式のクラス分類の処理の例を説明するフローチャートである。
ステップS21において、クラス分類部30は、注目画素の周辺領域に一致する度数分布生成領域内の3×3画素の中から、傾斜特徴量としての傾斜ベクトルを求める対象の対象画素に選択していない画素の1つを、対象画素に選択し、処理は、ステップS22に進む。
ステップS22では、クラス分類部30は、復号画像にソーベルフィルタ及びラプラシアンフィルタを適用することで、対象画素の傾斜特徴量としての傾斜ベクトル及び4方向(V方向、H方向、D0方向、及び、D1方向)のアクティビティを求め、処理は、ステップS23に進む。
ステップS23では、クラス分類部30は、対象画素の傾斜ベクトルが属するGALFのdirectionを、対象画素の傾斜方向として求め(設定し)、処理は、ステップS24に進む。
ステップS24では、クラス分類部30は、注目画素についての規定方向の度数分布(の各階級の度数を保持する変数)において、対象画素の傾斜方向としての規定方向の度数をインクリメントする。さらに、ステップS24では、クラス分類部30は、注目画素の4方向それぞれのアクティビティサム(としての変数)に、対象画素の4方向それぞれのアクティビティを加算し、処理は、ステップS25に進む。
ここで、注目画素についての規定方向の度数分布(の各階級の度数を保持する変数)、及び、注目画素の4方向それぞれのアクティビティサム(としての変数)は、注目画素について、ステップS21の処理が最初に行われる前に、0にリセットされる。
ステップS25では、クラス分類部30は、度数分布生成領域内の3×3画素のすべてを、対象画素に選択したかどうかを判定する。
ステップS25において、度数分布生成領域内の3×3画素のすべてを、まだ、対象画素に選択していないと判定された場合、処理は、ステップS21に戻る。ステップS21において、クラス分類部30は、度数分布生成領域内の3×3画素の中から、対象画素を新たに選択し、以下、同様の処理を繰り返す。
また、ステップS25において、度数分布生成領域内の3×3画素のすべてを、対象画素に選択したと判定された場合、処理は、ステップS26に進む。
ステップS26では、クラス分類部30は、注目画素についての規定方向の度数分布において、最大度数の規定方向を、注目画素の規定方向として求める(設定する)とともに、その最大度数に対応する値(例えば、最大度数そのもの)を、注目画素の規定方向の信頼度として求め(設定し)、処理は、ステップS27に進む。
ステップS27では、クラス分類部30は、注目画素の規定方向、信頼度、及び、4方向それぞれのアクティビティサムに応じて、図7で説明したクラス分類を行い、注目画素の最終クラスを求めて、注目画素についてのクラス分類の処理を終了する。
第1の度数分布方式のクラス分類によれば、クラス分類が、注目画素の規定方向の信頼度に応じて行われるので、クラス分類予測処理としてのフィルタ処理の性能を改善することができる。
さらに、第1の度数分布方式のクラス分類では、図8のフローチャートに示したように、ステップS21ないしS25の1個のループ処理だけが、度数分布生成領域内の複数の画素を対象画素として行うループ処理として存在する。
したがって、2個のループ処理が存在する内積信頼度方式のクラス分類(図5)に比較して、スループットを向上させることができる。
また、第1の度数分布方式のクラス分類では、度数分布生成領域内の複数の画素のローカルな傾斜特徴量としての傾斜ベクトルそのものを用いて、傾斜ベクトルが属する規定方向の度数分布が生成され、その度数分布を用いて、注目画素の傾斜方向としての規定方向及びその規定方向の信頼度が求められる(設定される)。したがって、第1の度数分布方式によれば、内積信頼度方式のように、内積を求める複雑な計算を行うことなく、信頼度を求める(設定する)ことができる。
<第2の度数分布方式のクラス分類>
図9は、第2の度数分布方式のクラス分類を行うクラス分類部40の処理の概要を説明する図である。
第2の度数分布方式は、第1の度数分布方式と同様に、信頼度方式の1つである。
第2の度数分布方式のクラス分類を行うクラス分類部40は、復号画像において、クラス分類の対象となる画素を、順次、注目画素に選択する。
そして、クラス分類部40は、図4及び図5で説明した内積信頼度方式と同様に、注目画素について、代表ベクトルを求める(設定する)。
すなわち、クラス分類部40は、復号画像にソーベルフィルタを適用することで、注目画素を含む度数分布生成領域でもある周辺領域内の3×3画素のローカルな傾斜特徴量としての傾斜ベクトルを求める。
そして、クラス分類部40は、周辺領域内の3×3画素の傾斜ベクトルそれぞれとの内積の総和を最大にする単位ベクトルを、注目画素についての代表ベクトルとして求める(設定する)。
また、クラス分類部40は、図6ないし8で説明した第1の度数分布方式と同様に、注目画素について、傾斜方向の度数分布を生成する。
すなわち、クラス分類部40は、復号画像にソーベルフィルタを適用することで、注目画素を含む度数分布生成領域内の3×3画素のローカルな傾斜特徴量としての傾斜ベクトルを求める。なお、ここでは、度数分布生成領域は、周辺領域と一致するので、度数分布生成領域内の3×3画素の傾斜ベクトルとしては、代表ベクトルを求めるときに求められた周辺領域内の3×3画素の傾斜ベクトルをそのまま用いることができる。
クラス分類部40は、例えば、GALFの8方向のdirectionを、度数分布の階級を表す規定方向として、注目画素について、度数分布生成領域内の3×3画素の傾斜ベクトルを対象に、その傾斜ベクトルが属する階級としての規定方向の度数をカウントすることで、規定方向(で表される傾斜方向)の度数分布を生成する。
その後、クラス分類部40は、例えば、GALFの8方向のdirectionから、代表ベクトルが属する規定方向としてのdirectionを、注目画素の規定方向として求める(設定する)。さらに、クラス分類部40は、注目画素についての規定方向の度数分布において、注目画素の規定方向の度数に対応する値を、注目画素の規定方向の信頼度として求める(設定する)。
図9では、注目画素の規定方向は、GALFの8方向のdirectionのうちの、2進数で101が割り当てられたdirectionで表される規定方向(以下、規定方向101のように記載する)であり、注目画素についての規定方向の度数分布において、規定方向101の度数に対応する値が、注目画素の規定方向の信頼度として求められる(設定される)。
そして、クラス分類部40は、注目画素の規定方向及び信頼度等に応じて、クラス分類を行い、注目画素のクラス(最終クラス)を求める。
すなわち、クラス分類部40では、例えば、図6ないし図8で説明した第1の度数分布方式と同様にして、注目画素の規定方向及び信頼度、並びに、V方向、H方向、D0方向、及び、D1方向のアクティビティサムsumA(V)、sumA(H)、sumA(D0)、及び、sumA(D1)に応じてクラス分類を行い、GALFのクラス分類と同様に、注目画素を、最終クラス0ないし24の25クラスのうちのいずれかに分類する。
図10は、図9のクラス分類部40が注目画素について行う第2の度数分布方式のクラス分類の処理の例を説明するフローチャートである。
ステップS31ないしS35において、クラス分類部40は、図8のステップS21ないしS25とそれぞれ同様のループ処理を行う。
そして、ステップS35において、度数分布生成領域内の3×3画素のすべてを、対象画素に選択したと判定された場合、すなわち、度数分布生成領域に一致する周辺領域内の3×3画素すべての傾斜ベクトルが求められるとともに、注目画素について、度数分布生成領域内の3×3画素の規定方向の度数分布が求められた場合、処理は、ステップS36に進む。
ステップS36では、クラス分類部40は、図5のステップS14と同様に、注目画素について、度数分布生成領域に一致する周辺領域内の3×3画素の傾斜ベクトルそれぞれとの内積の総和を最大にする単位ベクトルを、代表ベクトルとして求める。さらに、クラス分類部40は、GALFの8方向のdirectionのうちの、注目画素についての代表ベクトル(の方向)が属するdirectionを、注目画素の傾斜方向を表す規定方向として求め(設定し)、処理は、ステップS36からステップS37に進む。
ステップS37では、クラス分類部40は、注目画素についての規定方向の度数分布において、注目画素の規定方向の度数に対応する値(例えば、注目画素の規定方向の度数そのもの)を、注目画素の規定方向の信頼度として求め(設定し)、処理は、ステップS38に進む。
ステップS38では、クラス分類部40は、注目画素の規定方向、信頼度、及び、4方向それぞれのアクティビティサムに応じて、図7で説明した場合と同様にクラス分類を行い、注目画素の最終クラスを求めて、注目画素についてのクラス分類の処理を終了する。
第2の度数分布方式のクラス分類によれば、クラス分類が、注目画素の規定方向の信頼度に応じて行われるので、クラス分類予測処理としてのフィルタ処理の性能を改善することができる。
さらに、第2の度数分布方式のクラス分類では、図10のフローチャートに示したように、ステップS31ないしS35の1個のループ処理だけが、度数分布生成領域内の複数の画素を対象画素として行うループ処理として存在する。
したがって、2個のループ処理が存在する内積信頼度方式のクラス分類(図5)に比較して、スループットを向上させることができる。
また、第2の度数分布方式のクラス分類では、内積信頼度方式と同様にして求められる、注目画素についての代表ベクトルが属するdirectionが、注目画素の傾斜方向を表す規定方向として求められる。そして、度数分布生成領域内の複数の画素のローカルな傾斜特徴量としての傾斜ベクトルそのものを用いて、傾斜ベクトルが属する規定方向の度数分布が生成され、その度数分布を用いて、注目画素の傾斜方向としての規定方向の信頼度が求められる。したがって、第2の度数分布方式によれば、内積信頼度方式のように、内積を求める複雑な計算を行うことなく、信頼度を求めることができる。
<第3の度数分布方式のクラス分類>
図11は、第3の度数分布方式のクラス分類を行うクラス分類部50の処理の概要を説明する図である。
第3の度数分布方式は、第1及び第2の度数分布方式と同様に、信頼度方式の1つである。
第3の度数分布方式のクラス分類を行うクラス分類部50は、復号画像において、クラス分類の対象となる画素を、順次、注目画素に選択する。そして、クラス分類部50は、例えば、GALFと同様に、注目画素について、復号画像にラプラシアンフィルタを適用することで、注目画素のローカルな傾斜特徴量としてのV方向、H方向、D0方向、及び、D1方向の4方向それぞれのアクティビティA(V), A(H), A(D0)、及び、 A(D1)を求める。
クラス分類部50は、注目画素を含む度数分布生成領域内の3×3画素のうちの注目画素以外の8画素についても、ローカルな傾斜特徴量としての4方向それぞれのアクティビティA(V), A(H), A(D0)、及び、 A(D1)を同様にして求める。
そして、クラス分類部50は、注目画素の度数分布生成領域内の3×3画素のローカルな傾斜特徴量としての4方向それぞれのアクティビティA(V), A(H), A(D0)、及び、 A(D1)そのものを用いて、傾斜方向の度数分布を生成する。
すなわち、クラス分類部50は、例えば、図1で説明したGALFの8方向のdirectionを、度数分布の階級を表す規定方向として、注目画素について、度数分布生成領域内の3×3画素の4方向それぞれのアクティビティA(V), A(H), A(D0)、及び、 A(D1)に対して求められたGALFのdirectionで表される規定方向を対象に、その規定方向の度数をカウントすることで、規定方向の度数分布を生成する。
具体的には、クラス分類部50は、4方向それぞれのアクティビティサムsumA(H)、sumA(D0)、及び、sumA(D1)に代えて、4方向それぞれのアクティビティA(V), A(H), A(D0)、及び、 A(D1)を用いて、度数分布生成領域内の3×3画素それぞれについて、図2で説明したように、MainDir及びSecDirを求める(設定する)。さらに、クラス分類部50は、度数分布生成領域内の3×3画素それぞれについて、図2で説明したように、MainDir及びSecDirに割り当てられているdirectionを、画素の規定方向として求める(設定する)。
そして、クラス分類部50は、以上のようにして、度数分布生成領域内の3×3画素それぞれについて求められた(設定された)規定方向の度数をカウントすることにより、注目画素についての規定方向の度数分布を生成する。
その後、クラス分類部50は、注目画素についての規定方向の度数分布において、最大度数の規定方向を、注目画素の規定方向として求める(設定する)とともに、その最大度数に対応する値を、注目画素の規定方向の信頼度として求める(設定する)。
クラス分類部50は、注目画素の規定方向及び信頼度等に応じて、クラス分類を行い、注目画素のクラス(最終クラス)を求める。
すなわち、クラス分類部50では、例えば、図6ないし図8で説明した第1の度数分布方式と同様にして、注目画素の規定方向及び信頼度、並びに、V方向、H方向、D0方向、及び、D1方向のアクティビティサムsumA(V)、sumA(H)、sumA(D0)、及び、sumA(D1)に応じてクラス分類を行い、GALFのクラス分類と同様に、注目画素を、最終クラス0ないし24の25クラスのうちのいずれかに分類する。
図12は、図11のクラス分類部50が注目画素について行う第3の度数分布方式のクラス分類の処理の例を説明するフローチャートである。
ステップS41において、クラス分類部50は、注目画素の周辺領域に一致する度数分布生成領域内の3×3画素の中から、傾斜特徴量としてのアクティビティを求める対象の対象画素に選択していない画素の1つを、対象画素に選択し、処理は、ステップS42に進む。
ステップS42では、クラス分類部50は、復号画像にラプラシアンフィルタを適用することで、対象画素の傾斜特徴量としての4方向(V方向、H方向、D0方向、及び、D1方向)それぞれのアクティビティを求め、処理は、ステップS43に進む。
ステップS43では、クラス分類部50は、対象画素の4方向それぞれのアクティビティに対して、MainDir及びSecDirを求め(設定し)、そのMainDir及びSecDirに割り当てられているdirectionを、対象画素の傾斜方向を表す規定方向として求める(設定する)。
ステップS44では、クラス分類部50は、注目画素についての規定方向の度数分布(の各階級の度数を保持する変数)において、対象画素の規定方向の度数をインクリメントする。さらに、ステップS44では、クラス分類部50は、注目画素の4方向それぞれのアクティビティサム(としての変数)に、対象画素の4方向それぞれのアクティビティを加算し、処理は、ステップS45に進む。
ここで、注目画素についての規定方向の度数分布(の各階級の度数を保持する変数)、及び、注目画素の4方向それぞれのアクティビティサム(としての変数)は、図8の場合と同様に、注目画素について、ステップS41の処理が最初に行われる前に、0にリセットされる。
ステップS45では、クラス分類部50は、度数分布生成領域内の3×3画素のすべてを、対象画素に選択したかどうかを判定する。
ステップS45において、度数分布生成領域内の3×3画素のすべてを、まだ、対象画素に選択していないと判定された場合、処理は、ステップS41に戻る。ステップS41において、クラス分類部50は、度数分布生成領域内の3×3画素の中から、対象画素を新たに選択し、以下、同様の処理を繰り返す。
また、ステップS45において、度数分布生成領域内の3×3画素のすべてを、対象画素に選択したと判定された場合、処理は、ステップS46に進む。
ステップS46では、クラス分類部50は、注目画素についての規定方向の度数分布において、最大度数の規定方向を、注目画素の規定方向として求める(設定する)とともに、その最大度数に対応する値(例えば、最大度数そのもの)を、注目画素の規定方向の信頼度として求め(設定し)、処理は、ステップS47に進む。
ステップS47では、クラス分類部50は、注目画素の規定方向、信頼度、及び、4方向それぞれのアクティビティサムに応じて、図7で説明したクラス分類を行い、注目画素の最終クラスを求めて、注目画素についてのクラス分類の処理を終了する。
第3の度数分布方式のクラス分類によれば、クラス分類が、注目画素の規定方向の信頼度に応じて行われるので、クラス分類予測処理としてのフィルタ処理の性能を改善することができる。
さらに、第3の度数分布方式のクラス分類では、図12のフローチャートに示したように、ステップS41ないしS45の1個のループ処理だけが、度数分布生成領域内の複数の画素を対象画素として行うループ処理として存在する。
したがって、2個のループ処理が存在する内積信頼度方式のクラス分類(図5)に比較して、スループットを向上させることができる。
また、第3の度数分布方式のクラス分類では、度数分布生成領域内の複数の画素のローカルな傾斜特徴量としての4方向それぞれのアクティビティそのものを用いて、そのアクティビティから得られるMainDir及びSecDirに割り当てられているGALFのdirectionで表される規定方向の度数分布が生成され、その度数分布を用いて、注目画素の傾斜方向としての規定方向及びその規定方向の信頼度が求められる(設定される)。したがって、第3の度数分布方式によれば、内積信頼度方式のように、内積を求める複雑な計算を行うことなく、信頼度を求める(設定する)ことができる。
なお、第3の度数分布方式のクラス分類は、GALFのクラス分類と同様に、ローカルな傾斜特徴量として、傾斜ベクトルを求める必要がなく、アクティビティのみを求めれば良いので、GALFに容易に適用することができる。
<第4の度数分布方式のクラス分類>
図13は、第4の度数分布方式のクラス分類を行うクラス分類部60の処理の概要を説明する図である。
第4の度数分布方式は、第1ないし第3の度数分布方式と同様に、信頼度方式の1つである。
第4の度数分布方式のクラス分類を行うクラス分類部60は、復号画像において、クラス分類の対象となる画素を、順次、注目画素に選択する。
そして、クラス分類部60は、例えば、GALFと同様に、注目画素の規定方向としてのdirectionを求める(設定する)。
すなわち、クラス分類部60は、復号画像にラプラシアンフィルタを適用することで、注目画素を含む度数分布生成領域でもある周辺領域内の3×3画素のローカルな傾斜特徴量としてのV方向、H方向、D0方向、及び、D1方向の4方向それぞれのアクティビティA(V), A(H), A(D0)、及び、 A(D1)を求める。
さらに、クラス分類部60は、注目画素について、周辺領域内の3×3画素のアクティビティA(D)を4方向それぞれごとに加算することで、マクロな傾斜特徴量としての4方向それぞれのアクティビティサムsumA(H)、sumA(D0)、及び、sumA(D1)を求める。
クラス分類部60は、注目画素についての4方向それぞれのアクティビティサムsumA(H)、sumA(D0)、及び、sumA(D1)に対して、図2で説明したように、MainDir及びSecDirを求め(設定し)、方向クラス分類テーブル(図2)において、そのMainDir及びSecDirに割り当てられているdirectionを、注目画素の規定方向として求める(設定する)。
また、クラス分類部60は、図11及び図12で説明した第3の度数分布方式と同様に、注目画素について、傾斜方向の度数分布を生成する。
すなわち、クラス分類部60は、復号画像にラプラシアンフィルタを適用することで、注目画素を含む度数分布生成領域内の3×3画素のローカルな傾斜特徴量としてのV方向、H方向、D0方向、及び、D1方向の4方向それぞれのアクティビティA(V), A(H), A(D0)、及び、 A(D1)を求める。なお、ここでは、度数分布生成領域は、周辺領域と一致するので、度数分布生成領域内の3×3画素の4方向それぞれのアクティビティA(V), A(H), A(D0)、及び、 A(D1)としては、注目画素の規定方向としてのdirectionを求めるときに求められた周辺領域内の3×3画素の4方向それぞれのアクティビティA(V), A(H), A(D0)、及び、 A(D1)をそのまま用いることができる。
クラス分類部60は、例えば、図1で説明したGALFの8方向のdirectionを、度数分布の階級を表す規定方向として、注目画素について、度数分布生成領域内の3×3画素の4方向それぞれのアクティビティA(V), A(H), A(D0)、及び、 A(D1)に対して求められる(設定される)GALFのdirectionで表される規定方向を対象に、その規定方向の度数をカウントすることで、規定方向の度数分布を生成する。
すなわち、クラス分類部60は、4方向それぞれのアクティビティサムsumA(H)、sumA(D0)、及び、sumA(D1)に代えて、4方向それぞれのアクティビティA(V), A(H), A(D0)、及び、 A(D1)を用いて、度数分布生成領域内の3×3画素それぞれについて、図2で説明したように、MainDir及びSecDirを求める(設定する)。さらに、クラス分類部60は、度数分布生成領域内の3×3画素それぞれについて、図2で説明したように、MainDir及びSecDirに割り当てられているdirectionを、画素の規定方向として求める(設定する)。
そして、クラス分類部60は、以上のようにして、度数分布生成領域内の3×3画素それぞれについて求められた(設定された)規定方向の度数をカウントすることにより、注目画素についての規定方向の度数分布を生成する。
その後、クラス分類部60は、注目画素についての規定方向の度数分布において、注目画素の規定方向としてのdirection(の階級)の度数に対応する値を、注目画素の規定方向の信頼度として求める(設定する)。
図13では、注目画素の規定方向は、GALFの8方向のdirectionとしての規定方向のうちの、規定方向000(10進数で0(2進数で000)が割り当てられた規定方向)であり、注目画素についての規定方向の度数分布において、規定方向000の度数に対応する値が、注目画素の規定方向の信頼度として求められる(設定される)。
クラス分類部60は、注目画素の規定方向及び信頼度等に応じて、クラス分類を行い、注目画素の最終クラスを求める。
すなわち、クラス分類部60では、例えば、図6ないし図8で説明した第1の度数分布方式と同様にして、注目画素の規定方向及び信頼度、並びに、V方向、H方向、D0方向、及び、D1方向のアクティビティサムsumA(V)、sumA(H)、sumA(D0)、及び、sumA(D1)に応じてクラス分類を行い、GALFのクラス分類と同様に、注目画素を、最終クラス0ないし24の25クラスのうちのいずれかに分類する。
図14は、図13のクラス分類部60が注目画素について行う第4の度数分布方式のクラス分類の処理の例を説明するフローチャートである。
ステップS51ないしS55において、クラス分類部60は、図12のステップS41ないしS45とそれぞれ同様のループ処理を行う。
そして、ステップS55において、度数分布生成領域内の3×3画素のすべてを、対象画素に選択したと判定された場合、すなわち、注目画素について、度数分布生成領域内の3×3画素の規定方向の度数分布が求められるとともに、度数分布生成領域に一致する周辺領域内の3×3画素の4方向それぞれのアクティビティを方向ごとに加算した4方向それぞれのアクティビティサムが求められた場合、処理は、ステップS56に進む。
ステップS56では、クラス分類部60は、注目画素についての4方向それぞれのアクティビティサムに対して、図2で説明したように、MainDir及びSecDirを求め(設定し)、方向クラス分類テーブル(図2)において、そのMainDir及びSecDirに割り当てられているdirectionを、注目画素の規定方向として求める(設定する)。その後、処理は、ステップS56からステップS57に進む。
ステップS57では、クラス分類部60は、注目画素についての規定方向の度数分布において、注目画素の規定方向としてのdirection(の階級)の度数に対応する値(例えば、注目画素の規定方向の度数そのもの)を、注目画素の規定方向の信頼度として求め(設定し)、処理は、ステップS58に進む。
ステップS58では、クラス分類部60は、注目画素の規定方向、信頼度、及び、4方向それぞれのアクティビティサムに応じて、図7で説明したクラス分類を行い、注目画素の最終クラスを求めて、注目画素についてのクラス分類の処理を終了する。
第4の度数分布方式のクラス分類によれば、クラス分類が、注目画素の規定方向の信頼度に応じて行われるので、クラス分類予測処理としてのフィルタ処理の性能を改善することができる。
さらに、第4の度数分布方式のクラス分類では、図14のフローチャートに示したように、ステップS51ないしS55の1個のループ処理だけが、度数分布生成領域内の複数の画素を対象画素として行うループ処理として存在する。
したがって、2個のループ処理が存在する内積信頼度方式のクラス分類(図5)に比較して、スループットを向上させることができる。
また、第4の度数分布方式のクラス分類では、度数分布生成領域内の複数の画素のローカルな傾斜特徴量としての4方向それぞれのアクティビティそのものを用いて、GALFのdirectionで表される規定方向の度数分布が生成され、その度数分布を用いて、注目画素の傾斜方向としての規定方向及びその規定方向の信頼度が求められる(設定される)。したがって、第4の度数分布方式によれば、内積信頼度方式のように、内積を求める複雑な計算を行うことなく、信頼度を求める(設定する)ことができる。
なお、第4の度数分布方式のクラス分類は、GALFのクラス分類と同様に、ローカルな傾斜特徴量として、傾斜ベクトルを求める必要がなく、アクティビティのみを求めれば良いので、GALFに容易に適用することができる。
第4の度数分布方式のクラス分類では、クラス分類部60は、注目画素の規定方向、信頼度、及び、4方向それぞれのアクティビティサムに応じて、図7で説明した最終クラスを求める他、GALFのクラス分類で求められる図3で説明した最終クラスを求めることができる。
図15は、第4の度数分布方式のクラス分類において、GALFのクラス分類で求められる最終クラスを求める求め方を説明する図である。
GALFのクラス分類では、方向サブクラス分類において、注目画素の規定方向としてのdirectionに応じて、注目画素の傾斜方向がD0方向又はD1方向であることを表す方向クラス0、及び、注目画素の傾斜方向がV方向又はH方向であることを表す方向クラス2の2個の方向クラスのうちのいずれかに、注目画素が分類される。
クラス分類部60は、GALFのクラス分類と同様に、方向サブクラス分類を行う。但し、クラス分類部60は、注目画素の規定方向としてのdirectionの他、その規定方向の信頼度にも応じて、方向サブクラス分類を行う。
そのため、図15では、方向クラスについては、方向クラス0及び2の他、信頼度が低いことを表すノン(None)クラスが用意されている。
注目画素の規定方向の信頼度が、閾値p未満である場合、クラス分類部60は、注目画素を、ノンクラスの方向クラスに方向サブクラス分類する。そして、クラス分類部60は、注目画素の空間特徴量としてのV方向、H方向、D0方向、及び、D1方向のアクティビティサムsumA(V)、sumA(H)、sumA(D0)、及び、sumA(D1)に応じて、GALFのクラス分類と同様に、注目画素を、最終クラス0ないし4のいずれかにクラス分類する。
注目画素の規定方向の信頼度が、閾値p以上である場合、クラス分類部60は、GALFのクラス分類と同様に、注目画素の規定方向としてのdirectionに応じて、注目画素を、方向クラス0又は2に方向サブクラス分類する。
方向サブクラス分類において、注目画素が方向クラス0又は2に分類された場合、クラス分類部60は、GALFのクラス分類と同様に、式(2)又は式(3)の傾斜強度比を求め、その傾斜強度比に応じて、注目画素の、傾斜強度比を表すクラスを求める傾斜強度比サブクラス分類を行う。
その後は、図3で説明したGALFのクラス分類と同様に、方向クラス0又は2、傾斜強度比サブクラス分類の結果得られるノンクラス、ウイーククラス、又は、ストロングクラス、並びに、注目画素の空間特徴量としてのV方向、H方向、D0方向、及び、D1方向のアクティビティサムsumA(V)、sumA(H)、sumA(D0)、及び、sumA(D1)に応じて、注目画素は、最終クラス5ないし24のいずれかにクラス分類される。
すなわち、注目画素の方向クラスが方向クラス0である場合、クラス分類部60は、式(2)の傾斜強度比rd1,d2を求める。
傾斜強度比rd1,d2が、第1の閾値t1未満である場合、注目画素は、ノンクラスに傾斜強度比サブクラス分類される。そして、注目画素は、V方向、H方向、D0方向、及び、D1方向のアクティビティサムsumA(V)、sumA(H)、sumA(D0)、及び、sumA(D1)に応じて、最終クラス0ないし4のいずれかにクラス分類される。
傾斜強度比rd1,d2が、第1の閾値t1以上第2の閾値t2未満である場合、注目画素は、ウイーククラスに傾斜強度比サブクラス分類される。そして、注目画素は、V方向、H方向、D0方向、及び、D1方向のアクティビティサムsumA(V)、sumA(H)、sumA(D0)、及び、sumA(D1)に応じて、最終クラス5ないし9のいずれかにクラス分類される。
傾斜強度比rd1,d2が、第2の閾値t2以上である場合、注目画素は、ストロングクラスに傾斜強度比サブクラス分類される。そして、注目画素は、V方向、H方向、D0方向、及び、D1方向のアクティビティサムsumA(V)、sumA(H)、sumA(D0)、及び、sumA(D1)に応じて、最終クラス10ないし14のいずれかにクラス分類される。
一方、注目画素の方向クラスが、方向クラス2である場合、クラス分類部60は、式(3)の傾斜強度比rh,vを求める。
傾斜強度比rh,vが、第1の閾値t1未満である場合、注目画素は、ノンクラスに傾斜強度比サブクラス分類される。そして、注目画素は、V方向、H方向、D0方向、及び、D1方向のアクティビティサムsumA(V)、sumA(H)、sumA(D0)、及び、sumA(D1)に応じて、最終クラス0ないし4のいずれかにクラス分類される。
傾斜強度比rh,vが、第1の閾値t1以上第2の閾値t2未満である場合、注目画素は、ウイーククラスに傾斜強度比サブクラス分類される。そして、注目画素は、V方向、H方向、D0方向、及び、D1方向のアクティビティサムsumA(V)、sumA(H)、sumA(D0)、及び、sumA(D1)に応じて、注目画素を、最終クラス15ないし19のいずれかにクラス分類される。
傾斜強度比rh,vが、第2の閾値t2以上である場合、注目画素は、ストロングクラスに傾斜強度比サブクラス分類される。そして、注目画素は、V方向、H方向、D0方向、及び、D1方向のアクティビティサムsumA(V)、sumA(H)、sumA(D0)、及び、sumA(D1)に応じて、注目画素を、最終クラス20ないし24のいずれかにクラス分類される。
なお、規定方向の信頼度の閾値pは、例えば、第1の閾値p1及び第2の閾値p2と同様に、度数分布生成領域の画素数に応じて設定することができる。例えば、規定方向の信頼度として、規定方向の度数分布の度数そのものを採用する場合において、度数分布生成領域が6×6画素の領域であるときには、閾値pは、例えば、度数分布生成領域の画素数(例えば36画素)の1/4又は1/8に設定することができる。
図15のクラス分類は、図3のGALFのクラス分類に、傾斜方向(規定方向)の信頼度を導入したクラス分類であるということができる。図15のクラス分類によれば、傾斜方向の信頼度によって、画素が分類されることで、傾斜方向の信頼度が低い場合、すなわち、傾斜方向を表すdirectionの信頼性が低い場合に、そのようなdirectionに応じた方向サブクラス分類によって、画素が方向クラス0又は2に分類されてしまい、画素が傾斜方向に対応していない方向クラスに分類されることを防止することができる。その結果、画素を適切なクラス(最終クラス)に分類し、そのクラスのタップ係数を用いて、適切な予測処理としてのフィルタ処理を行うことができる。したがって、フィルタ処理の性能を改善することができる。
<傾斜方向の度数分布の生成>
図16は、傾斜方向(規定方向)の度数分布の生成を説明する図である。
度数分布方式(第1ないし第4の度数分布方式)では、度数分布生成領域内の複数の画素(の傾斜方向)を対象として、傾斜方向の度数分布が生成される。
本技術では、注目画素の傾斜方向が、注目画素を含む度数分布生成領域内のより多くの画素の傾斜方向と同様であれば、注目画素の傾斜方向の信頼性が高いという観点から、注目画素の傾斜方向の信頼度を、傾斜方向の度数分布から求める(設定する)。したがって、度数分布生成領域は、注目画素の周辺領域等の、注目画素から比較的近い画素の領域である必要がある。そのため、度数分布生成領域は、それほど画素数が大きい領域ではない。
このように、それほど画素数が大きくない度数分布生成領域内の複数の画素を対象として、傾斜方向の度数分布を生成した場合、度数分布生成領域内の画素数が少ないために、適切な度数分布を得ることができないことがあり得る。
すなわち、傾斜方向の度数分布としては、例えば、図16の度数分布FD1のように、最大度数が他の度数と比較して突出していることが理想的である。しかしながら、度数分布生成領域内の画素数が少ない場合、傾斜方向の度数分布において、最大度数の階級が複数個存在することや、図16の度数分布FD2のように、最大度数が他の度数とそれほど変わらないことが生じ得る。
そこで、傾斜方向の度数分布の生成にあたっては、度数のカウントを工夫することができる。
すなわち、傾斜方向の度数分布の生成においては、度数分布生成領域内の画素のうちの、注目画素に近い画素の傾斜方向の度数に対して、注目画素から遠い画素の傾斜方向の度数よりも大きい重みを与えて、度数をカウントし、度数分布を生成することができる。
例えば、度数分布生成領域の注目画素の傾斜方向の度数の重みを2とするとともに、他の画素の傾斜方向の度数の重みを1として、度数をカウントすることができる。
また、傾斜方向の度数分布の生成においては、度数分布生成領域内の各画素の傾斜特徴量に対応する値を、傾斜方向の度数として用いて、度数をカウントし、度数分布を生成することができる。
例えば、度数分布生成領域内の各画素のMainDirの方向のアクティビティサムを、傾斜方向の度数として用いて、度数をカウントし、度数分布を生成することができる。また、例えば、度数分布生成領域内の画素のMainDirの方向が、D0又はD1方向である場合には、式(2)の傾斜強度比rd1,d2を、傾斜方向の度数として用いて、度数をカウントし、MainDirの方向が、V又はH方向である場合には、式(3)の傾斜強度比rh,vを、傾斜方向の度数として用いて、度数をカウントし、度数分布を生成することができる。
以上のように、度数のカウントを工夫することで、例えば、度数分布FD1のように、最大度数が他の度数と比較して突出する度数分布を生成することができる。
<度数分布方式のクラス分類を行うクラス分類予測フィルタの構成例>
図17は、度数分布方式のクラス分類を行い、そのクラス分類により得られるクラスのタップ係数を用いた予測式を適用するクラス分類予測処理としてのフィルタ処理を行うクラス分類予測フィルタの構成例を示すブロック図である。
図17において、クラス分類予測フィルタ110は、クラス分類部111、タップ係数取得部112、及び、予測部113を有する。
クラス分類部111及び予測部113には、フィルタ処理の対象となる対象画像(例えば、復号画像)が供給される。
クラス分類部111は、対象画像の画素を、順次、注目画素に選択し、その注目画素について、度数分布方式のクラス分類を行い、注目画素のクラス(最終クラス)を求め、タップ係数取得部112に供給する。
タップ係数取得部112は、タップ係数学習により求められたクラスごとのタップ係数を記憶しており、クラス分類部111からの注目画素のクラスに応じて、注目画素の予測処理としてのフィルタ処理に用いるタップ係数を取得する。
すなわち、タップ係数取得部112は、クラスごとのタップ係数の中から、クラス分類部111からの注目画素のクラスのタップ係数を選択し、予測部113に供給する。
予測部113は、対象画像に、タップ係数取得部112からの注目画素のクラスのタップ係数を用いた予測式を適用する予測処理としてのフィルタ処理を行い、そのフィルタ処理により生成されるフィルタ画像を出力する。
すなわち、予測部113は、対象画像の画素のうちの、例えば、注目画素の近傍の複数の画素を、注目画素の予測タップとして選択する。さらに、予測部113は、対象画像に、注目画素のクラスのタップ係数で構成される予測式を適用する予測処理を行うことにより、すなわち、注目画素の予測タップとしての画素(の画素値)xnと、注目画素のクラスのタップ係数wnとで構成される予測式y'=Σwnxnを演算することにより、注目画素に対する所定の画像(教師画像に相当する画像)(例えば、復号画像に対する元画像)の画素(の画素値)の予測値y'を求める。そして、予測部113は、その予測値y'を画素値とする画像を生成し、フィルタ画像として出力する。
クラス分類予測フィルタ110において、タップ係数取得部112に記憶させるクラスごとのタップ係数は、外部からクラス分類予測フィルタ110に供給することができる。
また、クラス分類予測フィルタ110に、タップ係数学習を行う学習部121を内蔵させ、学習部121において、教師画像及び生徒画像を用いたタップ係数学習を行うことにより得られるクラスごとのタップ係数を、タップ係数取得部112に記憶させることができる。
クラス分類予測フィルタ110が、符号化装置に適用される場合、教師画像として、符号化対象の元画像を採用するとともに、生徒画像として、元画像を符号化して局所復号することにより得られる復号画像を採用することができる。学習部121のタップ係数学習では、生徒画像としての復号画像を用いて、クラス分類部111と同様の度数分布方式のクラス分類が行われ、クラス分類により得られるクラスごとに、タップ係数と予測タップとで構成される予測式により求められる教師画像の予測値の予測誤差を統計的に最小にするタップ係数が、最小自乗法により求められる。
ここで、学習部121を内蔵するクラス分類予測フィルタ110を、特に、学習機能付きのクラス分類予測フィルタ110ともいう。
図18は、図17のクラス分類予測フィルタ110が行うクラス分類予測処理としてのフィルタ処理の例を説明するフローチャートである。
ステップS111において、クラス分類部111は、対象画像としての復号画像の、注目画素に選択すべき画素を、順次、注目画素に選択し、処理は、ステップS112に進む。
ステップS112では、クラス分類部111は、注目画素について、度数分布方式のクラス分類を行い、注目画素のクラス(最終クラス)を求め、タップ係数取得部112に供給して、処理は、ステップS113に進む。
ステップS113では、タップ係数取得部112は、クラスごとのタップ係数の中から、クラス分類部111からの注目画素のクラスのタップ係数を取得し、処理は、ステップS114に進む。
ステップS114では、予測部113は、復号画像に、タップ係数取得部112からの注目画素のクラスのタップ係数で構成される予測式を適用する予測処理としてのフィルタ処理を行う。
すなわち、予測部113は、復号画像から、注目画素の予測タップとなる画素を選択し、その予測タップ及び注目画素のクラスのタップ係数を用いて構成される1次予測式を演算することにより、注目画素に対する元画像の画素(の画素値)の予測値を求める。そして、予測部113は、その予測値を画素値とする画像を生成し、フィルタ画像として出力して、クラス分類予測処理は終了する。
<本技術を適用した画像処理システムの一実施の形態>
図19は、本技術を適用した画像処理システムの一実施の形態の概要を示すブロック図である。
図19において、画像処理システムは、符号化装置160及び復号装置170を有する。
符号化装置160は、符号化部161、局所復号部162、及び、フィルタ部163を有する。
符号化部161には、符号化対象の画像である元画像(データ)が供給されるとともに、フィルタ部163からフィルタ画像が供給される。
符号化部161は、フィルタ部163からのフィルタ画像を用いて、元画像を、例えば、CU等の所定のブロック単位で(予測)符号化し、その符号化により得られる符号化データを、局所復号部162に供給する。
すなわち、符号化部161は、フィルタ部163からのフィルタ画像の動き補償を行って得られる元画像の予測画像を、元画像から減算し、その結果得られる残差を符号化する。
符号化部161には、フィルタ部163からフィルタ情報が供給される。
符号化部161は、符号化データと、フィルタ部163からのフィルタ情報とを含む符号化ビットストリームを生成して伝送(送信)する。
局所復号部162には、符号化部161から符号化データが供給される他、フィルタ部163からフィルタ画像が供給される。
局所復号部162は、符号化部161からの符号化データの局所復号を、フィルタ部163からのフィルタ画像を用いて行い、その結果得られる(局所)復号画像を、フィルタ部163に供給する。
すなわち、局所復号部162は、符号化部161からの符号化データを残差に復号し、その残差に、フィルタ部163からのフィルタ画像の動き補償を行って得られる元画像の予測画像を加算することで、元画像を復号した復号画像を生成する。
フィルタ部163は、例えば、学習機能付きのクラス分類予測フィルタ110と同様に構成され、度数分布方式のクラス分類を行うクラス分類部164を含む。
フィルタ部163は、局所復号部162からの復号画像、及び、その復号画像に対する元画像を、生徒画像及び教師画像として用いてタップ係数学習を行い、クラスごとのタップ係数を求める。
また、フィルタ部163は、クラス分類部164において、局所復号部162からの復号画像を用いて、度数分布方式のクラス分類を行う。さらに、フィルタ部163は、クラス分類部164のクラス分類により得られる注目画素のクラスのタップ係数と復号画像の画素との積和演算を行う予測式を復号画像に適用する予測処理としてのフィルタ処理を行う。
そして、フィルタ部163は、フィルタ処理により得られるフィルタ画像を、符号化部161及び局所復号部162に供給する。さらに、フィルタ部163は、タップ係数学習により求められたクラスごとのタップ係数を、フィルタ情報として、符号化部161に供給する。
復号装置170は、パース部171、復号部172、及び、フィルタ部173を有する。
パース部171は、符号化装置160が伝送する符号化ビットストリームを受信してパースを行い、そのパースにより得られるフィルタ情報を、フィルタ部173に供給する。さらに、パース部171は、符号化ビットストリームに含まれる符号化データを、復号部172に供給する。
復号部172には、パース部171から符号化データが供給される他、フィルタ部173からフィルタ画像が供給される。
復号部172は、パース部171からの符号化データの復号を、フィルタ部173からのフィルタ画像を用いて、例えば、CU等の所定のブロック単位で行い、その結果得られる復号画像を、フィルタ部173に供給する。
すなわち、復号部172は、局所復号部162と同様に、パース部171からの符号化データを残差に復号し、その残差に、フィルタ部173からのフィルタ画像の動き補償を行って得られる元画像の予測画像を加算することで、元画像を復号した復号画像を生成する。
フィルタ部173は、例えば、学習機能付きでないクラス分類予測フィルタ110と同様に構成され、度数分布方式のクラス分類を行うクラス分類部174を含む。
フィルタ部173は、復号部172からの復号画像に、フィルタ部163と同様のフィルタ処理を行い、フィルタ画像を生成して、復号部172に供給する。
すなわち、フィルタ部173は、クラス分類部174において、復号部172からの復号画像を用いて、度数分布方式のクラス分類を行う。さらに、フィルタ部173は、クラス分類部174のクラス分類により得られる注目画素のクラスのタップ係数と復号画像の画素との積和演算を行う予測式を復号画像に適用する予測処理としてのフィルタ処理を行う。フィルタ処理に用いられる注目画素のクラスのタップ係数は、パース部171からのフィルタ情報に含まれるクラスごとのタップ係数から取得される。
フィルタ部173は、フィルタ処理により得られるフィルタ画像を、復号部172に供給するとともに、元画像を復号した最終的な復号画像として出力する。
なお、フィルタ部163及び173には、元画像に相当する画像及び復号画像に相当する画像を、教師画像及び生徒画像として用いたタップ係数学習を行って得られるクラスごとのタップ係数を、あらかじめ記憶させておく(プリセットしておく)ことができる。この場合、フィルタ部163は、学習機能付きでないクラス分類予測フィルタ110と同様に構成することができる。
図20は、図19の符号化装置160の符号化処理の概要を説明するフローチャートである。
図20のフローチャートに従った処理は、例えば、フレーム(ピクチャ)単位で行われる。
ステップS161において、符号化部161(図19)は、フィルタ部163からのフィルタ画像を用いて、元画像を(予測)符号化し、その符号化により得られる符号化データを、局所復号部162に供給して、処理は、ステップS162に進む。
ステップS162では、局所復号部162は、符号化部161からの符号化データの局所復号を、フィルタ部163からのフィルタ画像を用いて行い、その結果得られる(局所)復号画像を、フィルタ部163に供給して、処理は、ステップS163に進む。
ステップS163では、フィルタ部163は、局所復号部162からの復号画像、及び、その復号画像に対する元画像を、生徒画像及び教師画像として用いてタップ係数学習を行い、クラスごとのタップ係数を求め、処理は、ステップS164に進む。なお、タップ係数学習では、クラス分類が行われ、クラスごとに、正規方程式が求められる。そして、そのクラスごとの正規方程式を解くことにより、クラスごとのタップ係数が求められる。タップ係数学習で行われるクラス分類は、度数分布方式のクラス分類である。
ステップS164では、フィルタ部163は、タップ係数学習により求められたクラスごとのタップ係数を用いて、局所復号部162からの復号画像に、クラス分類予測処理としてのフィルタ処理を行い、フィルタ画像を生成する。
すなわち、フィルタ部163のクラス分類部164は、局所復号部162からの復号画像の注目画素について、度数分布方式のクラス分類を行う。さらに、フィルタ部163は、タップ係数学習により求められたクラスごとのタップ係数のうちの、注目画素のクラスのタップ係数と復号画像の画素との積和演算を行う予測式を復号画像に適用する予測処理としてのフィルタ処理を行い、フィルタ画像を生成する。フィルタ画像は、フィルタ部163から、符号化部161及び局所復号部162に供給される。フィルタ部163から符号化部161及び局所復号部162に供給されるフィルタ画像は、次のフレームを対象として行われるステップS161及びS162の処理で用いられる。
また、フィルタ部163は、タップ係数学習により求められたクラスごとのタップ係数を、フィルタ情報として、符号化部161に供給する。
その後、処理は、ステップS164からステップS165に進み、符号化部161は、ステップS161で得られた符号化データと、フィルタ部163からのフィルタ情報としてのクラスごとのタップ係数とを含む符号化ビットストリームを生成して伝送する。
図21は、図19の復号装置170の復号処理の概要を説明するフローチャートである。
図21のフローチャートに従った処理は、例えば、図20の符号化処理と同様に、フレーム単位で行われる。
ステップS181において、パース部171(図19)は、符号化装置160から伝送されてくる符号化ビットストリームを受信し、符号化ビットストリームに含まれるフィルタ情報としてのクラスごとのタップ係数をパースして、フィルタ部173に供給する。さらに、パース部171は、符号化ビットストリームに含まれる符号化データを、復号部172に供給し、処理は、ステップS181からステップS182に進む。
ステップS182では、復号部172は、パース部171からの符号化データの復号を、フィルタ部173からのフィルタ画像を用いて行い、その結果得られる復号画像を、フィルタ部173に供給して、処理は、ステップS183に進む。
ステップS183では、フィルタ部173は、パース部171からのフィルタ情報としてのクラスごとのタップ係数を用いて、復号部172からの復号画像に、クラス分類予測処理としてのフィルタ処理を行い、フィルタ画像を生成する。
すなわち、フィルタ部173のクラス分類部174は、復号部172からの復号画像の注目画素について、度数分布方式のクラス分類を行う。さらに、フィルタ部173は、パース部171からのクラスごとのタップ係数のうちの、注目画素のクラスのタップ係数と復号画像の画素との積和演算を行う予測式を復号画像に適用する予測処理としてのフィルタ処理を行い、フィルタ画像を生成する。
フィルタ画像は、フィルタ部173から復号部172に供給されるとともに、元画像を復号した最終的な復号画像として出力される。
フィルタ部173から復号部172に供給されるフィルタ画像は、復号画像の次のフレームを対象として行われるステップS182の処理で用いられる。
<符号化装置160の構成例>
図22は、図19の符号化装置160の詳細な構成例を示すブロック図である。
なお、以下説明するブロック図については、図が煩雑になるのを避けるため、各ブロックの処理で必要となる情報(データ)を供給する線の記載を、適宜省略する。
図22において、符号化装置160は、A/D変換部201、並べ替えバッファ202、演算部203、直交変換部204、量子化部205、可逆符号化部206、及び、蓄積バッファ207を有する。さらに、符号化装置160は、逆量子化部208、逆直交変換部209、演算部210、ILF211、フレームメモリ212、選択部213、イントラ予測部214、動き予測補償部215、予測画像選択部216、及び、レート制御部217を有する。
A/D変換部201は、アナログ信号の元画像を、ディジタル信号の元画像にA/D変換し、並べ替えバッファ202に供給して記憶させる。
並べ替えバッファ202は、元画像のフレームを、GOP(Group Of Picture)に応じて、表示順から符号化(復号)順に並べ替え、演算部203、イントラ予測部214、動き予測補償部215、及び、ILF211に供給する。
演算部203は、並べ替えバッファ202からの元画像から、予測画像選択部216を介してイントラ予測部214又は動き予測補償部215から供給される予測画像を減算し、その減算により得られる残差(予測残差)を、直交変換部204に供給する。
例えば、インター符号化が行われる画像の場合、演算部203は、並べ替えバッファ202から読み出された元画像から、動き予測補償部215から供給される予測画像を減算する。
直交変換部204は、演算部203から供給される残差に対して、離散コサイン変換やカルーネン・レーベ変換等の直交変換を施す。なお、この直交変換の方法は任意である。直交変換部204は、直交交換により得られる直交変換係数を量子化部205に供給する。
量子化部205は、直交変換部204から供給される直交変換係数を量子化する。量子化部205は、レート制御部217から供給される符号量の目標値(符号量目標値)に基づいて量子化パラメータQPを設定し、直交変換係数の量子化を行う。なお、この量子化の方法は任意である。量子化部205は、量子化された直交変換係数である符号化データを、可逆符号化部206に供給する。
可逆符号化部206は、量子化部205からの符号化データとしての量子化された直交変換係数を所定の可逆符号化方式で符号化する。直交変換係数は、レート制御部217の制御の下で量子化されているので、可逆符号化部206の可逆符号化により得られる符号化ビットストリームの符号量は、レート制御部217が設定した符号量目標値となる(又は符号量目標値に近似する)。
また、可逆符号化部206は、符号化装置160での予測符号化に関する符号化情報のうちの、復号装置170での復号に必要な符号化情報を、各ブロックから取得する。
ここで、符号化情報としては、例えば、イントラ予測やインター予測の予測モード、動きベクトル等の動き情報、符号量目標値、量子化パラメータQP、ピクチャタイプ(I,P,B)、CU(Coding Unit)やCTU(Coding Tree Unit)の情報等がある。
例えば、予測モードは、イントラ予測部214や動き予測補償部215から取得することができる。また、例えば、動き情報は、動き予測補償部215から取得することができる。
可逆符号化部206は、符号化情報を取得する他、ILF211から、そのILF211でのフィルタ処理に関するフィルタ情報としてのクラスごとのタップ係数を取得する。
可逆符号化部206は、符号化情報及びフィルタ情報を、例えば、CAVLC(Context-Adaptive Variable Length Coding)やCABAC(Context-Adaptive Binary Arithmetic Coding)等の可変長符号化又は算術符号化その他の可逆符号化方式で符号化し、符号化後の符号化情報及びフィルタ情報、及び、量子化部205からの符号化データを含む符号化ビットストリームを生成して、蓄積バッファ207に供給する。
蓄積バッファ207は、可逆符号化部206から供給される符号化ビットストリームを、一時的に蓄積する。蓄積バッファ207に蓄積された符号化ビットストリームは、所定のタイミングで読み出されて伝送される。
量子化部205において量子化された直交変換係数である符号化データは、可逆符号化部206に供給される他、逆量子化部208にも供給される。逆量子化部208は、量子化された直交変換係数を、量子化部205による量子化に対応する方法で逆量子化し、その逆量子化により得られる直交変換係数を、逆直交変換部209に供給する。
逆直交変換部209は、逆量子化部208から供給される直交変換係数を、直交変換部204による直交変換処理に対応する方法で逆直交変換し、その逆直交変換の結果得られる残差を、演算部210に供給する。
演算部210は、逆直交変換部209から供給される残差に、予測画像選択部216を介してイントラ予測部214又は動き予測補償部215から供給される予測画像を加算し、これにより、元画像を復号した復号画像(の一部)を得て出力する。
演算部210が出力する復号画像は、ILF211に供給される。
ILF211は、例えば、学習機能付きのクラス分類予測フィルタ110(図17)と同様に構成され、クラス分類予測処理としてのフィルタ処理を行うことで、デブロッキングフィルタ、適応オフセットフィルタ、バイラテラルフィルタ、ALFのうちの1つ、又は、2以上のフィルタとして機能する。ILF211を、デブロッキングフィルタ、適応オフセットフィルタ、バイラテラルフィルタ、及び、ALFのうちの2以上のフィルタとして機能させる場合、その2以上のフィルタの配置順は任意である。
ILF211には、演算部210から復号画像が供給される他、並べ替えバッファ202から、復号画像に対する元画像が供給される。
ILF211は、例えば、演算部210からの復号画像、及び、並べ替えバッファ202からの元画像を、それぞれ生徒画像及び教師画像として用いて、タップ係数学習を行い、クラスごとのタップ係数を求める。タップ係数学習では、生徒画像としての復号画像を用いて、度数分布方式のクラス分類が行われ、そのクラス分類により得られるクラスごとに、タップ係数と予測タップとで構成される予測式により求められる教師画像としての元画像の予測値の予測誤差を統計的に最小にするタップ係数が、最小自乗法により求められる。
ILF211は、タップ係数学習により求められたクラスごとのタップ係数を、フィルタ情報として、可逆符号化部206に供給する。
さらに、ILF211は、例えば、演算部210からの復号画像の画素を、順次、注目画素に選択する。ILF211は、注目画素について、度数分布方式のクラス分類を行い、注目画素のクラスを求める。さらに、ILF211は、タップ係数学習により求められたクラスごとのタップ係数のうちの、注目画素のクラスのタップ係数を取得する(読み出す)。そして、ILF211は、復号画像から、注目画素の近傍の画素を予測タップとして選択し、注目画素のクラスのタップ係数と予測タップとしての復号画像の画素との積和演算を行う予測式を復号画像に適用する予測処理としてのフィルタ処理を行い、フィルタ画像を生成する。なお、ILF211でのクラス分類では、例えば、2×2画素の左上の画素のクラス分類で得られたクラスを、その2×2画素それぞれのクラスとして採用することができる。
ILF211で生成されたフィルタ画像は、フレームメモリ212に供給される。
フレームメモリ212は、ILF211から供給されるフィルタ画像を一時記憶する。フレームメモリ212に記憶されたフィルタ画像は、必要なタイミングで、予測画像の生成に用いられる参照画像として、選択部213に供給される。
選択部213は、フレームメモリ212から供給される参照画像の供給先を選択する。例えば、イントラ予測部214においてイントラ予測が行われる場合、選択部213は、フレームメモリ212から供給される参照画像を、イントラ予測部214に供給する。また、例えば、動き予測補償部215においてインター予測が行われる場合、選択部213は、フレームメモリ212から供給される参照画像を、動き予測補償部215に供給する。
イントラ予測部214は、並べ替えバッファ202から供給される元画像と、選択部213を介してフレームメモリ212から供給される参照画像とを用い、例えば、PU(Prediction Unit)を処理単位として、イントラ予測(画面内予測)を行う。イントラ予測部214は、所定のコスト関数(例えば、RDコスト等)に基づいて、最適なイントラ予測モードを選択し、その最適なイントラ予測モードで生成された予測画像を、予測画像選択部216に供給する。また、上述したように、イントラ予測部214は、コスト関数に基づいて選択されたイントラ予測モードを示す予測モードを、可逆符号化部206等に適宜供給する。
動き予測補償部215は、並べ替えバッファ202から供給される元画像と、選択部213を介してフレームメモリ212から供給される参照画像とを用い、例えば、PUを処理単位として、動き予測(インター予測)を行う。さらに、動き予測補償部215は、動き予測により検出される動きベクトルに応じて動き補償を行い、予測画像を生成する。動き予測補償部215は、あらかじめ用意された複数のインター予測モードで、インター予測を行い、予測画像を生成する。
動き予測補償部215は、複数のインター予測モードそれぞれについて得られた予測画像の所定のコスト関数に基づいて、最適なインター予測モードを選択する。さらに、動き予測補償部215は、最適なインター予測モードで生成された予測画像を、予測画像選択部216に供給する。
また、動き予測補償部215は、コスト関数に基づいて選択されたインター予測モードを示す予測モードや、そのインター予測モードで符号化された符号化データを復号する際に必要な動きベクトル等の動き情報等を、可逆符号化部206に供給する。
予測画像選択部216は、演算部203及び演算部210に供給する予測画像の供給元(イントラ予測部214又は動き予測補償部215)を選択し、その選択した方の供給元から供給される予測画像を、演算部203及び演算部210に供給する。
レート制御部217は、蓄積バッファ207に蓄積された符号化ビットストリームの符号量に基づいて、オーバーフローあるいはアンダーフローが発生しないように、量子化部205の量子化動作のレートを制御する。すなわち、レート制御部217は、蓄積バッファ207のオーバーフロー及びアンダーフローが生じないように、符号化ビットストリームの目標符号量を設定し、量子化部205に供給する。
なお、図22において、演算部203ないし可逆符号化部206が図19の符号化部161に、逆量子化部208ないし演算部210が図19の局所復号部162に、ILF211が図19のフィルタ部163に、それぞれ相当する。
<符号化処理>
図23は、図22の符号化装置160の符号化処理の例を説明するフローチャートである。
なお、図23等に示す符号化処理の各ステップの順番は、説明の便宜上の順番であり、実際の符号化処理の各ステップは、適宜、並列的に、必要な順番で行われる。後述する処理についても、同様である。
符号化装置160において、ILF211は、演算部210から供給される復号画像を一時記憶するとともに、並べ替えバッファ202から供給される、演算部210からの復号画像に対応する元画像を一時記憶する。
そして、符号化装置160(の図示せぬ制御部)は、ステップS201において、現在のタイミングが、フィルタ情報を更新する更新タイミングであるかどうかを判定する。
ここで、フィルタ情報の更新タイミングは、例えば、1以上のフレーム(ピクチャ)ごとや、1以上のシーケンスごと、1以上のスライスごと、CTU等の所定のブロックの1以上のラインごと等のように、あらかじめ決めておくことができる。
また、フィルタ情報の更新タイミングとしては、1以上のフレーム(ピクチャ)ごとのタイミングのような周期的(固定的)なタイミングの他、フィルタ画像のS/Nが閾値以下になったタイミング(フィルタ画像の、元画像に対する誤差が閾値以上になったタイミング)や、残差(の絶対値和等)が閾値以上になったタイミング等の、いわば動的なタイミングを採用することができる。
ここでは、例えば、ILF211が、復号画像及び元画像の1フレームを用いて、タップ係数学習を行うこととし、1フレームごとのタイミングがフィルタ情報の更新タイミングであることとする。
ステップS201において、現在のタイミングが、フィルタ情報の更新タイミングでないと判定された場合、処理は、ステップS202ないしS204をスキップして、ステップS205に進む。
また、ステップS201において、現在のタイミングが、フィルタ情報の更新タイミングであると判定された場合、処理は、ステップS202に進み、ILF211は、クラスごとのタップ係数を求めるタップ係数学習を行う。
すなわち、ILF211は、例えば、前回の更新タイミングから、今回の更新タイミングまでの間に記憶した復号画像及び元画像(ここでは、ILF211に供給された最新の1フレームの復号画像及び元画像)を用いて、タップ係数学習を行い、クラスごとのタップ係数を求める。
そして、処理は、ステップS202からステップS203に進み、ILF211は、クラスごとのタップ係数を、フィルタ情報として、可逆符号化部206に供給する。可逆符号化部206は、ILF211からのフィルタ情報を、伝送対象に設定して、処理は、ステップS203からステップS204に進む。伝送対象に設定されたフィルタ情報は、後述するステップS205で行われる予測符号化処理において符号化ビットストリームに含められて伝送される。
ステップS204では、ILF211が、最新のステップS202のタップ係数学習で求められたクラスごとのタップ係数によって、クラス分類予測処理に用いるタップ係数を更新し、処理は、ステップS205に進む。
ステップS205では、元画像の予測符号化処理が行われ、符号化処理は終了する。
図24は、図23のステップS205の予測符号化処理の例を説明するフローチャートである。
予測符号化処理では、ステップS211において、A/D変換部201は、元画像をA/D変換し、並べ替えバッファ202に供給して、処理は、ステップS212に進む。
ステップS212において、並べ替えバッファ202は、A/D変換部201からの元画像を記憶し、符号化順に並べ替えて出力し、処理は、ステップS213に進む。
ステップS213では、イントラ予測部214は、イントラ予測モードのイントラ予測処理を行い、処理は、ステップS214に進む。ステップS214において、動き予測補償部215は、インター予測モードでの動き予測や動き補償を行うインター動き予測処理を行い、処理は、ステップS215に進む。
イントラ予測部214のイントラ予測処理、及び、動き予測補償部215のインター動き予測処理では、各種の予測モードのコスト関数が演算されるとともに、予測画像が生成される。
ステップS215では、予測画像選択部216は、イントラ予測部214及び動き予測補償部215で得られる各コスト関数に基づいて、最適な予測モードを決定する。そして、予測画像選択部216は、イントラ予測部214により生成された予測画像と、動き予測補償部215により生成された予測画像のうちの最適な予測モードの予測画像を選択して出力し、処理は、ステップS215からステップS216に進む。
ステップS216では、演算部203は、並べ替えバッファ202が出力する元画像である符号化対象の対象画像と、予測画像選択部216が出力する予測画像との残差を演算し、直交変換部204に供給して、処理は、ステップS217に進む。
ステップS217では、直交変換部204は、演算部203からの残差を直交変換し、その結果得られる直交変換係数を、量子化部205に供給して、処理は、ステップS218に進む。
ステップS218では、量子化部205は、直交変換部204からの直交変換係数を量子化し、その量子化により得られる量子化係数を、可逆符号化部206及び逆量子化部208に供給して、処理は、ステップS219に進む。
ステップS219では、逆量子化部208は、量子化部205からの量子化係数を逆量子化し、その結果得られる直交変換係数を、逆直交変換部209に供給して、処理は、ステップS220に進む。ステップS220では、逆直交変換部209は、逆量子化部208からの直交変換係数を逆直交変換し、その結果得られる残差を、演算部210に供給して、処理は、ステップS221に進む。
ステップS221では、演算部210は、逆直交変換部209からの残差と、予測画像選択部216が出力する予測画像とを加算し、演算部203での残差の演算の対象となった元画像に対応する復号画像を生成する。演算部210は、復号画像を、ILF211に供給し、処理は、ステップS221からステップS222に進む。
ステップS222では、ILF211は、演算部210からの復号画像に、クラス分類予測処理としてのフィルタ処理を施し、そのフィルタ処理により得られるフィルタ画像を、フレームメモリ212に供給して、処理は、ステップS222からステップS223に進む。
ステップS222のクラス分類予測処理では、クラス分類予測フィルタ110(図17)と同様の処理が行われる。
すなわち、図18で説明したように、ILF211は、演算部210からの復号画像の注目画素について、度数分布方式のクラス分類を行い、注目画素のクラス(最終クラス)を求める。さらに、ILF211は、図23のステップS204で更新されたクラスごとのタップ係数から、注目画素のクラスのタップ係数を取得する。その後、ILF211は、復号画像に、注目画素のクラスのタップ係数を用いて構成される予測式を適用する予測処理としてのフィルタ処理を行い、フィルタ画像を生成する。フィルタ画像は、ILF211からフレームメモリ212に供給される。
ステップS223では、フレームメモリ212は、ILF211から供給されるフィルタ画像を記憶し、処理は、ステップS224に進む。フレームメモリ212に記憶されたフィルタ画像は、ステップS213やS114で、予測画像を生成する元となる参照画像として使用される。
ステップS224では、可逆符号化部206は、量子化部205からの量子化係数である符号化データを符号化し、その符号化データを含む符号化ビットストリームを生成する。さらに、可逆符号化部206は、量子化部205での量子化に用いられた量子化パラメータQPや、イントラ予測部214でのイントラ予測処理で得られた予測モード、動き予測補償部215でのインター動き予測処理で得られた予測モードや動き情報等の符号化情報を必要に応じて符号化し、符号化ビットストリームに含める。
また、可逆符号化部206は、図23のステップS203で伝送対象に設定されたフィルタ情報を必要に応じて符号化し、符号化ビットストリームに含める。そして、可逆符号化部206は、符号化ビットストリームを、蓄積バッファ207に供給し、処理は、ステップS224からステップS225に進む。
ステップS225において、蓄積バッファ207は、可逆符号化部206からの符号化ビットストリームを蓄積し、処理は、ステップS226に進む。蓄積バッファ207に蓄積された符号化ビットストリームは、適宜読み出されて伝送される。
ステップS226では、レート制御部217は、蓄積バッファ207に蓄積されている符号化ビットストリームの符号量(発生符号量)に基づいて、オーバーフローあるいはアンダーフローが発生しないように、量子化部205の量子化動作のレートを制御し、符号化処理は終了する。
<復号装置170の構成例>
図25は、図19の復号装置170の詳細な構成例を示すブロック図である。
図25において、復号装置170は、蓄積バッファ301、可逆復号部302、逆量子化部303、逆直交変換部304、演算部305、ILF306、並べ替えバッファ307、及び、D/A変換部308を有する。また、復号装置170は、フレームメモリ310、選択部311、イントラ予測部312、動き予測補償部313、及び、選択部314を有する。
蓄積バッファ301は、符号化装置160から伝送されてくる符号化ビットストリームを一時蓄積し、所定のタイミングにおいて、その符号化ビットストリームを、可逆復号部302に供給する。
可逆復号部302は、蓄積バッファ301からの符号化ビットストリームを受信し、図22の可逆符号化部206の符号化方式に対応する方式で復号する。
そして、可逆復号部302は、符号化ビットストリームの復号結果に含まれる符号化データとしての量子化係数を、逆量子化部303に供給する。
また、可逆復号部302は、パースを行う機能を有する。可逆復号部302は、符号化ビットストリームの復号結果に含まれる必要な符号化情報やフィルタ情報をパースし、符号化情報を、イントラ予測部312や動き予測補償部313その他の必要なブロックに供給する。さらに、可逆復号部302は、フィルタ情報を、ILF306に供給する。
逆量子化部303は、可逆復号部302からの符号化データとしての量子化係数を、図22の量子化部205の量子化方式に対応する方式で逆量子化し、その逆量子化により得られる直交変換係数を、逆直交変換部304に供給する。
逆直交変換部304は、逆量子化部303から供給される直交変換係数を、図22の直交変換部204の直交変換方式に対応する方式で逆直交変換し、その結果得られる残差を、演算部305に供給する。
演算部305には、逆直交変換部304から残差が供給される他、選択部314を介して、イントラ予測部312又は動き予測補償部313から予測画像が供給される。
演算部305は、逆直交変換部304からの残差と、選択部314からの予測画像とを加算し、復号画像を生成して、ILF306に供給する。
ILF306は、例えば、学習機能付きでないクラス分類予測フィルタ110(図17)と同様に構成され、クラス分類予測処理としてのフィルタ処理を行うことで、図22のILF211と同様に、デブロッキングフィルタ、適応オフセットフィルタ、バイラテラルフィルタ、ALFのうちの1つ、又は、2以上のフィルタとして機能する。
ILF306は、演算部305からの復号画像の画素を、順次、注目画素に選択する。ILF306は、注目画素について、度数分布方式のクラス分類を行い、注目画素のクラスを求める。さらに、ILF306は、可逆復号部302から供給されるフィルタ情報としてのクラスごとのタップ係数のうちの、注目画素のクラスのタップ係数を取得する。そして、ILF306は、復号画像から、注目画素の近傍の画素を予測タップとして選択し、注目画素のクラスのタップ係数と予測タップとしての復号画像の画素との積和演算を行う予測式を復号画像に適用する予測処理としてのフィルタ処理を行い、フィルタ画像を生成して出力する。なお、ILF211と同様に、ILF306でのクラス分類では、例えば、2×2画素の左上の画素のクラス分類で得られたクラスを、その2×2画素それぞれのクラスとして採用することができる。
ILF306が出力するフィルタ画像は、図22のILF211が出力するフィルタ画像と同様の画像であり、並べ替えバッファ307及びフレームメモリ310に供給される。
並べ替えバッファ307は、ILF306から供給されるフィルタ画像を一時記憶し、フィルタ画像のフレーム(ピクチャ)の並びを、符号化(復号)順から表示順に並べ替え、D/A変換部308に供給する。
D/A変換部308は、並べ替えバッファ307から供給されるフィルタ画像をD/A変換し、図示せぬディスプレイに出力して表示させる。
フレームメモリ310は、ILF306から供給されるフィルタ画像を一時記憶する。さらに、フレームメモリ310は、所定のタイミングにおいて、又は、イントラ予測部312や動き予測補償部313等の外部の要求に基づいて、フィルタ画像を、予測画像の生成に用いる参照画像として、選択部311に供給する。
選択部311は、フレームメモリ310から供給される参照画像の供給先を選択する。選択部311は、イントラ符号化された画像を復号する場合、フレームメモリ310から供給される参照画像をイントラ予測部312に供給する。また、選択部311は、インター符号化された画像を復号する場合、フレームメモリ310から供給される参照画像を動き予測補償部313に供給する。
イントラ予測部312は、可逆復号部302から供給される符号化情報に含まれる予測モードに従い、図22のイントラ予測部214において用いられたイントラ予測モードで、フレームメモリ310から選択部311を介して供給される参照画像を用いてイントラ予測を行う。そして、イントラ予測部312は、イントラ予測により得られる予測画像を、選択部314に供給する。
動き予測補償部313は、可逆復号部302から供給される符号化情報に含まれる予測モードに従い、図22の動き予測補償部215において用いられたインター予測モードで、フレームメモリ310から選択部311を介して供給される参照画像を用いてインター予測を行う。インター予測は、可逆復号部302から供給される符号化情報に含まれる動き情報等を必要に応じて用いて行われる。
動き予測補償部313は、インター予測により得られる予測画像を、選択部314に供給する。
選択部314は、イントラ予測部312から供給される予測画像、又は、動き予測補償部313から供給される予測画像を選択し、演算部305に供給する。
なお、図25において、可逆復号部302が図19のパース部171に、逆量子化部303ないし演算部305が図19の復号部172に、ILF306が図19のフィルタ部173に、それぞれ相当する。
<復号処理>
図26は、図25の復号装置170の復号処理の例を説明するフローチャートである。
復号処理では、ステップS301において、蓄積バッファ301は、符号化装置160から伝送されてくる符号化ビットストリームを一時蓄積し、適宜、可逆復号部302に供給して、処理は、ステップS302に進む。
ステップS302では、可逆復号部302は、蓄積バッファ301から供給される符号化ビットストリームを受け取って復号し、符号化ビットストリームの復号結果に含まれる符号化データとしての量子化係数を、逆量子化部303に供給する。
また、可逆復号部302は、符号化ビットストリームの復号結果に、フィルタ情報や符号化情報が含まれる場合には、そのフィルタ情報や符号化情報をパースする。そして、可逆復号部302は、必要な符号化情報を、イントラ予測部312や動き予測補償部313その他の必要なブロックに供給する。また、可逆復号部302は、フィルタ情報を、ILF306に供給する。
その後、処理は、ステップS302からステップS303に進み、ILF306は、可逆復号部302からフィルタ情報としてのクラスごとのタップ係数が供給されたかどうかを判定する。
ステップS303において、フィルタ情報としてのクラスごとのタップ係数が供給されていないと判定された場合、処理は、ステップS304をスキップして、ステップS305に進む。
また、ステップS303において、フィルタ情報としてのクラスごとのタップ係数が供給されたと判定された場合、処理は、ステップS304に進み、ILF306は、可逆復号部302からのフィルタ情報としてのクラスごとのタップ係数を取得する。さらに、ILF306は、可逆復号部302からのフィルタ情報としてのクラスごとのタップ係数によって、クラス分類予測処理に用いるタップ係数を更新する。
そして、処理は、ステップS304からステップS305に進み、予測復号処理が行われ、復号処理は終了する。
図27は、図26のステップS305の予測復号処理の例を説明するフローチャートである。
ステップS311において、逆量子化部303は、可逆復号部302からの量子化係数を逆量子化し、その結果得られる直交変換係数を、逆直交変換部304に供給して、処理は、ステップS312に進む。
ステップS312では、逆直交変換部304は、逆量子化部303からの直交変換係数を逆直交変換し、その結果得られる残差を、演算部305に供給して、処理は、ステップS313に進む。
ステップS313では、イントラ予測部312又は動き予測補償部313が、フレームメモリ310から選択部311を介して供給される参照画像、及び、可逆復号部302から供給される符号化情報を用いて、予測画像を生成するイントラ予測処理又はインター動き予測処理を行う。そして、イントラ予測部312又は動き予測補償部313は、イントラ予測処理又はインター動き予測処理により得られる予測画像を、選択部314に供給し、処理は、ステップS313からステップS314に進む。
ステップS314では、選択部314は、イントラ予測部312又は動き予測補償部313から供給される予測画像を選択し、演算部305に供給して、処理は、ステップS315に進む。
ステップS315では、演算部305は、逆直交変換部304からの残差と、選択部314からの予測画像を加算することにより、復号画像を生成する。そして、演算部305は、復号画像を、ILF306に供給して、処理は、ステップS315からステップS316に進む。
ステップS316では、ILF306は、演算部305からの復号画像に、クラス分類予測処理としてのフィルタ処理を施し、そのフィルタ処理により得られるフィルタ画像を、並べ替えバッファ307及びフレームメモリ310に供給して、処理は、ステップS316からステップS317に進む。
ステップS316のクラス分類予測処理では、クラス分類予測フィルタ110(図17)と同様の処理が行われる。
すなわち、図18で説明したように、ILF306は、演算部305からの復号画像の注目画素について、度数分布方式のクラス分類を行い、注目画素のクラス(最終クラス)を求める。さらに、ILF306は、図26のステップS304で更新されたクラスごとのタップ係数のうちの、注目画素のクラスのタップ係数を取得する。その後、ILF306は、復号画像に、注目画素のクラスのタップ係数で構成される予測式を適用する予測処理としてのフィルタ処理を行い、フィルタ画像を生成する。フィルタ画像は、ILF306から並べ替えバッファ307及びフレームメモリ310に供給される。
ステップS317では、並べ替えバッファ307は、ILF306から供給されるフィルタ画像を一時記憶する。さらに、並べ替えバッファ307は、記憶したフィルタ画像を、表示順に並べ替えて、D/A変換部308に供給し、処理は、ステップS317からステップS318に進む。
ステップS318では、D/A変換部308は、並べ替えバッファ307からのフィルタ画像をD/A変換し、処理は、ステップS319に進む。D/A変換後のフィルタ画像は、図示せぬディスプレイに出力されて表示される。
ステップS319では、フレームメモリ310は、ILF306から供給されるフィルタ画像を記憶し、復号処理は終了する。フレームメモリ310に記憶されたフィルタ画像は、ステップS313のイントラ予測処理又はインター動き予測処理で、予測画像を生成する元となる参照画像として使用される。
なお、クラス分類予測フィルタ110(図17)は、ILF211及びILF306の他、例えば、符号化装置160や復号装置170において、動き予測補償部215及び動き予測補償部313の予測画像の生成に用いられる補間フィルタ等に適用することができる。
<本技術を適用したコンピュータの説明>
次に、上述した一連の処理は、ハードウェアにより行うこともできるし、ソフトウェアにより行うこともできる。一連の処理をソフトウェアによって行う場合には、そのソフトウェアを構成するプログラムが、汎用のコンピュータ等にインストールされる。
図28は、上述した一連の処理を実行するプログラムがインストールされるコンピュータの一実施の形態の構成例を示すブロック図である。
プログラムは、コンピュータに内蔵されている記録媒体としてのハードディスク905やROM903に予め記録しておくことができる。
あるいはまた、プログラムは、リムーバブル記録媒体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つの装置で実行する他、複数の装置で分担して実行することができる。
また、本明細書に記載された効果はあくまで例示であって限定されるものではなく、他の効果があってもよい。
<本技術の適用対象>
本技術は、任意の画像符号化・復号方式に適用することができる。つまり、上述した本技術と矛盾しない限り、変換(逆変換)、量子化(逆量子化)、符号化(復号)、予測等、画像符号化・復号に関する各種処理の仕様は任意であり、上述した例に限定されない。また、上述した本技術と矛盾しない限り、これらの処理の内の一部を省略してもよい。
本技術は、任意の画像符号化・復号方式に適用することができる。つまり、上述した本技術と矛盾しない限り、変換(逆変換)、量子化(逆量子化)、符号化(復号)、予測等、画像符号化・復号に関する各種処理の仕様は任意であり、上述した例に限定されない。また、上述した本技術と矛盾しない限り、これらの処理の内の一部を省略してもよい。
<処理単位>
以上において説明した各種情報が設定されるデータ単位や、各種処理が対象とするデータ単位は、それぞれ任意であり上述した例に限定されない。例えば、これらの情報や処理が、それぞれ、TU(Transform Unit)、TB(Transform Block)、PU(Prediction Unit)、PB(Prediction Block)、CU(Coding Unit)、LCU(Largest Coding Unit)、サブブロック、ブロック、タイル、スライス、ピクチャ、シーケンス、またはコンポーネント毎に設定されるようにしてもよいし、それらのデータ単位のデータを対象とするようにしてもよい。もちろん、このデータ単位は、情報や処理毎に設定され得るものであり、全ての情報や処理のデータ単位が統一されている必要はない。なお、これらの情報の格納場所は任意であり、上述したデータ単位のヘッダやパラメータセット等に格納されるようにしてもよい。また、複数個所に格納されるようにしてもよい。
以上において説明した各種情報が設定されるデータ単位や、各種処理が対象とするデータ単位は、それぞれ任意であり上述した例に限定されない。例えば、これらの情報や処理が、それぞれ、TU(Transform Unit)、TB(Transform Block)、PU(Prediction Unit)、PB(Prediction Block)、CU(Coding Unit)、LCU(Largest Coding Unit)、サブブロック、ブロック、タイル、スライス、ピクチャ、シーケンス、またはコンポーネント毎に設定されるようにしてもよいし、それらのデータ単位のデータを対象とするようにしてもよい。もちろん、このデータ単位は、情報や処理毎に設定され得るものであり、全ての情報や処理のデータ単位が統一されている必要はない。なお、これらの情報の格納場所は任意であり、上述したデータ単位のヘッダやパラメータセット等に格納されるようにしてもよい。また、複数個所に格納されるようにしてもよい。
<制御情報>
以上の各実施の形態において説明した本技術に関する制御情報を符号化側から復号側に伝送するようにしてもよい。例えば、上述した本技術を適用することを許可(または禁止)するか否かを制御する制御情報(例えばenabled_flag)を伝送するようにしてもよい。また、例えば、上述した本技術を適用する対象(または適用しない対象)を示す制御情報を伝送するようにしてもよい。例えば、本技術を適用する(または、適用を許可若しくは禁止する)ブロックサイズ(上限若しくは下限、またはその両方)、フレーム、コンポーネント、またはレイヤ等を指定する制御情報を伝送するようにしてもよい。
以上の各実施の形態において説明した本技術に関する制御情報を符号化側から復号側に伝送するようにしてもよい。例えば、上述した本技術を適用することを許可(または禁止)するか否かを制御する制御情報(例えばenabled_flag)を伝送するようにしてもよい。また、例えば、上述した本技術を適用する対象(または適用しない対象)を示す制御情報を伝送するようにしてもよい。例えば、本技術を適用する(または、適用を許可若しくは禁止する)ブロックサイズ(上限若しくは下限、またはその両方)、フレーム、コンポーネント、またはレイヤ等を指定する制御情報を伝送するようにしてもよい。
<ブロックサイズ情報>
本技術を適用するブロックのサイズを指定するに当たって、直接的にブロックサイズを指定するだけでなく、間接的にブロックサイズを指定するようにしてもよい。例えばサイズを識別する識別情報を用いてブロックサイズを指定するようにしてもよい。また、例えば、基準となるブロック(例えばLCUやSCU等)のサイズとの比または差分によってブロックサイズを指定するようにしてもよい。例えば、シンタックス要素等としてブロックサイズを指定する情報を伝送する場合に、その情報として、上述のような間接的にサイズを指定する情報を用いるようにしてもよい。このようにすることにより、その情報の情報量を低減させることができ、符号化効率を向上させることができる場合もある。また、このブロックサイズの指定には、ブロックサイズの範囲の指定(例えば、許容されるブロックサイズの範囲の指定等)も含む。
本技術を適用するブロックのサイズを指定するに当たって、直接的にブロックサイズを指定するだけでなく、間接的にブロックサイズを指定するようにしてもよい。例えばサイズを識別する識別情報を用いてブロックサイズを指定するようにしてもよい。また、例えば、基準となるブロック(例えばLCUやSCU等)のサイズとの比または差分によってブロックサイズを指定するようにしてもよい。例えば、シンタックス要素等としてブロックサイズを指定する情報を伝送する場合に、その情報として、上述のような間接的にサイズを指定する情報を用いるようにしてもよい。このようにすることにより、その情報の情報量を低減させることができ、符号化効率を向上させることができる場合もある。また、このブロックサイズの指定には、ブロックサイズの範囲の指定(例えば、許容されるブロックサイズの範囲の指定等)も含む。
<その他>
なお、本明細書において「フラグ」とは、複数の状態を識別するための情報であり、真(1)または偽(0)の2状態を識別する際に用いる情報だけでなく、3以上の状態を識別することが可能な情報も含まれる。したがって、この「フラグ」が取り得る値は、例えば1/0の2値であってもよいし、3値以上であってもよい。すなわち、この「フラグ」を構成するbit数は任意であり、1bitでも複数bitでもよい。また、識別情報(フラグも含む)は、その識別情報をビットストリームに含める形だけでなく、ある基準となる情報に対する識別情報の差分情報をビットストリームに含める形も想定されるため、本明細書においては、「フラグ」や「識別情報」は、その情報だけではなく、基準となる情報に対する差分情報も包含する。
なお、本明細書において「フラグ」とは、複数の状態を識別するための情報であり、真(1)または偽(0)の2状態を識別する際に用いる情報だけでなく、3以上の状態を識別することが可能な情報も含まれる。したがって、この「フラグ」が取り得る値は、例えば1/0の2値であってもよいし、3値以上であってもよい。すなわち、この「フラグ」を構成するbit数は任意であり、1bitでも複数bitでもよい。また、識別情報(フラグも含む)は、その識別情報をビットストリームに含める形だけでなく、ある基準となる情報に対する識別情報の差分情報をビットストリームに含める形も想定されるため、本明細書においては、「フラグ」や「識別情報」は、その情報だけではなく、基準となる情報に対する差分情報も包含する。
10,20,30,40,50,60 クラス分類部, 110 クラス分類予測フィルタ, 111 クラス分類部, 112 タップ係数取得部, 113 予測部, 121 学習部, 160 符号化装置, 161 符号化部, 162 局所復号部, 163 フィルタ部, 164 クラス分類部, 170 復号装置, 171 パース部, 172 復号部, 173 フィルタ部, 174 クラス分類部, 201 A/D変換部, 202 並べ替えバッファ, 203 演算部, 204 直交変換部, 205 量子化部, 206 可逆符号化部, 207 蓄積バッファ, 208 逆量子化部, 209 逆直交変換部, 210 演算部, 211 ILF, 212 フレームメモリ, 213 選択部, 214 イントラ予測部, 215 動き予測補償部, 216 予測画像選択部, 217 レート制御部, 301 蓄積バッファ, 302 可逆復号部, 303 逆量子化部, 304 逆直交変換部, 305 演算部, 306 ILF, 307 並べ替えバッファ, 308 D/A変換部, 310 フレームメモリ, 311 選択部, 312 イントラ予測部, 313 動き予測補償部, 314 選択部, 901 バス, 902 CPU, 903 ROM, 904 RAM, 905 ハードディスク, 906 出力部, 907 入力部, 908 通信部, 909 ドライブ, 910 入出力インタフェース, 911 リムーバブル記録媒体
Claims (28)
- 符号化ビットストリームに含まれる符号化データを、フィルタ画像を用いて復号し、復号画像を生成する復号部と、
前記復号部により生成された前記復号画像の注目画素を含む度数分布生成領域内の複数の画素の画素値の傾斜の方向を表す傾斜方向の度数分布に応じて設定される信頼度に応じて、前記注目画素を複数のクラスのうちのいずれかのクラスに分類するクラス分類を行うクラス分類部と、
前記クラス分類部により行われた前記クラス分類により得られる前記注目画素のクラスのタップ係数と前記復号画像の画素との積和演算を行う予測式を前記復号画像に適用するフィルタ処理を行って、前記フィルタ画像を生成するフィルタ部と
を備える復号装置。 - 前記クラス分類部は、前記注目画素の傾斜方向及び前記信頼度に応じて、前記注目画素のクラス分類を行う
請求項1に記載の復号装置。 - 前記クラス分類部は、前記度数分布において最大の度数の傾斜方向を、前記注目画素の傾斜方向として設定する
請求項2に記載の復号装置。 - 前記クラス分類部は、前記度数分布生成領域内の各画素について前記画素の傾斜方向を表す傾斜特徴量を用いて設定される傾斜方向の度数分布を生成する
請求項2に記載の復号装置。 - 前記クラス分類部は、前記注目画素の周辺領域内の複数の画素の前記傾斜特徴量を用いて設定される傾斜方向を、前記注目画素の傾斜方向として設定する
請求項4に記載の復号装置。 - 前記クラス分類部は、前記注目画素に近い画素の傾斜方向の度数に対して、前記注目画素から遠い画素の傾斜方向の度数よりも大きい重みを設定する
請求項4に記載の復号装置。 - 前記クラス分類部は、前記度数分布生成領域内の各画素の傾斜方向の特徴量に対応する値を、前記傾斜方向の度数として用いる
請求項4に記載の復号装置。 - 前記クラス分類部は、
前記度数分布生成領域内の各画素について前記画素の傾斜方向を表す傾斜ベクトルを用いて設定される傾斜方向の度数分布を生成し、
前記度数分布において最大の度数の傾斜方向を、前記注目画素の傾斜方向として設定し、
前記度数分布において最大の度数に対応する値を、前記注目画素の傾斜方向の信頼度として設定する
請求項2に記載の復号装置。 - 前記クラス分類部は、
前記度数分布生成領域内の各画素について前記画素の傾斜方向を表す傾斜ベクトルを用いて設定される傾斜方向の度数分布を生成し、
前記注目画素の周辺領域内の複数の画素の前記傾斜ベクトルとの内積の総和を最大にする方向を、前記注目画素の傾斜方向として設定し、
前記度数分布において前記注目画素の傾斜方向の度数に対応する値を、前記注目画素の傾斜方向の信頼度として設定する
請求項2に記載の復号装置。 - 前記クラス分類部は、
前記度数分布生成領域内の各画素について前記画素の複数方向のアクティビティを用いて設定される傾斜方向の度数分布を生成し、
前記度数分布において最大の度数の傾斜方向を、前記注目画素の傾斜方向として設定し、
前記度数分布において最大の度数に対応する値を、前記注目画素の傾斜方向の信頼度として設定する
請求項2に記載の復号装置。 - 前記クラス分類部は、
前記度数分布生成領域内の各画素について前記画素の複数方向のアクティビティを用いて設定される傾斜方向の度数分布を生成し、
前記注目画素の周辺領域内の複数の画素の前記複数方向のアクティビティを用いて設定される傾斜方向を、前記注目画素の傾斜方向として設定し、
前記度数分布において前記注目画素の傾斜方向の度数に対応する値を、前記注目画素の傾斜方向の信頼度として設定する
請求項2に記載の復号装置。 - 前記符号化ビットストリームに含まれる前記タップ係数をパースするパース部をさらに備える
請求項1に記載の復号装置。 - 前記復号部は、Quad-Tree Block Structure、又は、QTBT(Quad Tree Plus Binary Tree) Block StructureのCU(Coding Unit)を処理単位として、前記符号化データを復号する
請求項1に記載の復号装置。 - 符号化ビットストリームに含まれる符号化データを、フィルタ画像を用いて復号し、復号画像を生成することと、
前記復号画像の注目画素を含む度数分布生成領域内の複数の画素の画素値の傾斜の方向を表す傾斜方向の度数分布に応じて設定される信頼度に応じて、前記注目画素を複数のクラスのうちのいずれかのクラスに分類するクラス分類を行うことと、
前記クラス分類により得られる前記注目画素のクラスのタップ係数と前記復号画像の画素との積和演算を行う予測式を前記復号画像に適用するフィルタ処理を行って、前記フィルタ画像を生成することと
を含む復号方法。 - 局所復号された復号画像の注目画素を含む度数分布生成領域内の複数の画素の画素値の傾斜の方向を表す傾斜方向の度数分布に応じて設定される信頼度に応じて、前記注目画素を複数のクラスのうちのいずれかのクラスに分類するクラス分類を行うクラス分類部と、
前記クラス分類部により行われた前記クラス分類により得られる前記注目画素のクラスのタップ係数と前記復号画像の画素との積和演算を行う予測式を前記復号画像に適用するフィルタ処理を行って、フィルタ画像を生成するフィルタ部と、
前記フィルタ部により生成された前記フィルタ画像を用いて、元画像を符号化する符号化部と
を備える符号化装置。 - 前記クラス分類部は、前記注目画素の傾斜方向及び前記信頼度に応じて、前記注目画素のクラス分類を行う
請求項15に記載の符号化装置。 - 前記クラス分類部は、前記度数分布において最大の度数の傾斜方向を、前記注目画素の傾斜方向として設定する
請求項16に記載の符号化装置。 - 前記クラス分類部は、前記度数分布生成領域内の各画素について前記画素の傾斜方向を表す傾斜特徴量を用いて設定される傾斜方向の度数分布を生成する
請求項16に記載の符号化装置。 - 前記クラス分類部は、前記注目画素の周辺領域内の複数の画素の前記傾斜特徴量を用いて設定される傾斜方向を、前記注目画素の傾斜方向として設定する
請求項18に記載の符号化装置。 - 前記クラス分類部は、前記注目画素に近い画素の傾斜方向の度数に対して、前記注目画素から遠い画素の傾斜方向の度数よりも大きい重みを設定する
請求項18に記載の符号化装置。 - 前記クラス分類部は、前記度数分布生成領域内の各画素の傾斜方向の特徴量に対応する値を、前記傾斜方向の度数として用いて、前記度数分布を生成する
請求項18に記載の符号化装置。 - 前記クラス分類部は、
前記度数分布生成領域内の各画素について前記画素の傾斜方向を表す傾斜ベクトルを用いて設定される傾斜方向の度数分布を生成し、
前記度数分布において最大の度数の傾斜方向を、前記注目画素の傾斜方向として設定し、
前記度数分布において最大の度数に対応する値を、前記注目画素の傾斜方向の信頼度として設定する
請求項16に記載の符号化装置。 - 前記クラス分類部は、
前記度数分布生成領域内の各画素について前記画素の傾斜方向を表す傾斜ベクトルを用いて設定される傾斜方向の度数分布を生成し、
前記注目画素の周辺領域内の複数の画素の前記傾斜ベクトルとの内積の総和を最大にする方向を、前記注目画素の傾斜方向として設定し、
前記度数分布において前記注目画素の傾斜方向の度数に対応する値を、前記注目画素の傾斜方向の信頼度として設定する
請求項16に記載の符号化装置。 - 前記クラス分類部は、
前記度数分布生成領域内の各画素について前記画素の複数方向のアクティビティを用いて設定される傾斜方向の度数分布を生成し、
前記度数分布において最大の度数の傾斜方向を、前記注目画素の傾斜方向として設定し、
前記度数分布において最大の度数に対応する値を、前記注目画素の傾斜方向の信頼度として設定する
請求項16に記載の符号化装置。 - 前記クラス分類部は、
前記度数分布生成領域内の各画素について前記画素の複数方向のアクティビティを用いて設定される傾斜方向の度数分布を生成し、
前記注目画素の周辺領域内の複数の画素の前記複数方向のアクティビティを用いて設定される傾斜方向を、前記注目画素の傾斜方向として設定し、
前記度数分布において前記注目画素の傾斜方向の度数に対応する値を、前記注目画素の傾斜方向の信頼度として設定する
請求項16に記載の符号化装置。 - 前記フィルタ部は、前記元画像及び前記復号画像を用いて、前記予測式により得られる前記元画像の予測値の統計的な誤差を最小にする前記タップ係数を求め、
前記符号化部は、前記元画像を符号化することにより得られる符号化データと前記タップ係数とを含む符号化ビットストリームを生成する
請求項15に記載の符号化装置。 - 前記符号化部は、Quad-Tree Block Structure、又は、QTBT(Quad Tree Plus Binary Tree) Block StructureのCU(Coding Unit)を処理単位として、前記元画像を符号化する
請求項15に記載の符号化装置。 - 局所復号された復号画像の注目画素を含む度数分布生成領域内の複数の画素の画素値の傾斜の方向を表す傾斜方向の度数分布に応じて設定される信頼度に応じて、前記注目画素を複数のクラスのうちのいずれかのクラスに分類するクラス分類を行うことと、
前記クラス分類により得られる前記注目画素のクラスのタップ係数と前記復号画像の画素との積和演算を行う予測式を前記復号画像に適用するフィルタ処理を行って、フィルタ画像を生成することと、
前記フィルタ画像を用いて、元画像を符号化することと
を含む符号化方法。
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018095906A JP2021129131A (ja) | 2018-05-18 | 2018-05-18 | 符号化装置、符号化方法、復号装置、及び、復号方法 |
US17/053,532 US11265539B2 (en) | 2018-05-18 | 2019-05-07 | Encoding apparatus, encoding method, decoding apparatus, and decoding method |
TW108115662A TW202005397A (zh) | 2018-05-18 | 2019-05-07 | 編碼裝置、編碼方法、解碼裝置、及解碼方法 |
CN201980031736.6A CN112106361A (zh) | 2018-05-18 | 2019-05-07 | 编码装置、编码方法、解码装置和解码方法 |
PCT/JP2019/018214 WO2019220947A1 (ja) | 2018-05-18 | 2019-05-07 | 符号化装置、符号化方法、復号装置、及び、復号方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018095906A JP2021129131A (ja) | 2018-05-18 | 2018-05-18 | 符号化装置、符号化方法、復号装置、及び、復号方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2021129131A true JP2021129131A (ja) | 2021-09-02 |
Family
ID=68539891
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2018095906A Pending JP2021129131A (ja) | 2018-05-18 | 2018-05-18 | 符号化装置、符号化方法、復号装置、及び、復号方法 |
Country Status (5)
Country | Link |
---|---|
US (1) | US11265539B2 (ja) |
JP (1) | JP2021129131A (ja) |
CN (1) | CN112106361A (ja) |
TW (1) | TW202005397A (ja) |
WO (1) | WO2019220947A1 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019065261A1 (ja) * | 2017-09-27 | 2019-04-04 | ソニー株式会社 | 符号化装置、符号化方法、復号装置、及び、復号方法 |
CN113505801B (zh) * | 2021-09-13 | 2021-11-30 | 拓小拓科技(天津)有限公司 | 一种用于超维计算的图像编码方法 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4003128B2 (ja) * | 2002-12-24 | 2007-11-07 | ソニー株式会社 | 画像データ処理装置および方法、記録媒体、並びにプログラム |
JP5291133B2 (ja) * | 2011-03-09 | 2013-09-18 | 日本電信電話株式会社 | 画像処理方法,画像処理装置,映像符号化/復号方法,映像符号化/復号装置およびそれらのプログラム |
US20150365703A1 (en) * | 2014-06-13 | 2015-12-17 | Atul Puri | System and method for highly content adaptive quality restoration filtering for video coding |
-
2018
- 2018-05-18 JP JP2018095906A patent/JP2021129131A/ja active Pending
-
2019
- 2019-05-07 CN CN201980031736.6A patent/CN112106361A/zh active Pending
- 2019-05-07 WO PCT/JP2019/018214 patent/WO2019220947A1/ja active Application Filing
- 2019-05-07 TW TW108115662A patent/TW202005397A/zh unknown
- 2019-05-07 US US17/053,532 patent/US11265539B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
US11265539B2 (en) | 2022-03-01 |
CN112106361A (zh) | 2020-12-18 |
WO2019220947A1 (ja) | 2019-11-21 |
TW202005397A (zh) | 2020-01-16 |
US20210289200A1 (en) | 2021-09-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11070826B2 (en) | Constrained position dependent intra prediction combination (PDPC) | |
US9661344B2 (en) | Method and apparatus for encoding and decoding image through intra prediction | |
WO2020175970A1 (ko) | 크로마 성분을 예측하는 비디오 부호화 및 복호화 방법, 및 크로마 성분을 예측하는 비디오 부호화 및 복호화 장치 | |
US20210392346A1 (en) | Low-cost hash table construction and hash-based block matching for variable-size blocks | |
JP2024069447A (ja) | 画像処理装置及び画像処理方法 | |
WO2019220947A1 (ja) | 符号化装置、符号化方法、復号装置、及び、復号方法 | |
EP3989578B1 (en) | Image processing device, and image processing method | |
WO2020066642A1 (ja) | 符号化装置、符号化方法、復号装置、及び、復号方法 | |
US20210006836A1 (en) | Image encoding apparatus, image encoding method, image decoding apparatus, and image decoding method | |
WO2019107182A1 (ja) | 符号化装置、符号化方法、復号装置、及び、復号方法 | |
EP4054193A1 (en) | Image processing device and image processing method | |
US20210266535A1 (en) | Data processing apparatus and data processing method | |
WO2019208258A1 (ja) | 符号化装置、符号化方法、復号装置、及び、復号方法 | |
WO2019131161A1 (ja) | 符号化装置、符号化方法、復号装置、及び、復号方法 | |
WO2020262370A1 (ja) | 画像処理装置および画像処理方法 | |
WO2020008910A1 (ja) | 符号化装置、符号化方法、復号装置、及び、復号方法 | |
WO2020066643A1 (ja) | 符号化装置、符号化方法、復号装置、及び、復号方法 | |
JP2022002357A (ja) | 符号化装置、符号化方法、復号装置、及び、復号方法 | |
EP4052467A2 (en) | A decoder of coding block partitioning restrictions derivations | |
WO2012169054A1 (ja) | 動画像符号化方法、及び装置、動画像復号方法、及び装置 |