(57)【要約】【課題】既存の手法において生じ得るブロック境界に沿った画質の劣化を防止し又は軽減する仕組みを提供すること。【解決手段】１つ以上のブロックを含む画像の周波数成分の変換係数データを、整数型逆離散ウェーブレット変換（逆ＤＷＴ）を実行することにより画像信号に変換する逆変換部、を備え、前記整数型逆離散ウェーブレット変換における整数化関数は、原点を基準として点対称な関数グラフを有する、画像処理装置を提供する。【選択図】図６
2013187692.tif 000002
【特許請求の範囲】
【請求項１】
１つ以上のブロックを含む画像の周波数成分の変換係数データを、整数型逆離散ウェーブレット変換を実行することにより画像信号に変換する逆変換部、
を備え、
前記整数型逆離散ウェーブレット変換における整数化関数は、原点を基準として点対称な関数グラフを有する、
画像処理装置。
【請求項２】
前記整数化関数は、引数の絶対値を前記引数の符号に依存することなく整数化し、整数化された前記絶対値に前記引数と同じ符号を付す関数である、請求項１に記載の画像処理装置。
【請求項３】
前記整数化関数は、前記絶対値の小数第１位を四捨五入することにより、前記絶対値を整数化する、請求項２に記載の画像処理装置。
【請求項４】
前記整数型逆離散ウェーブレット変換は、ｎ番目の画素値をＸ（ｎ）、ｎ番目の変換係数をＹ（ｎ）、とすると、
低周波成分については、
【数１】
2013187692.tif 000011
高周波成分については、
【数２】
2013187692.tif 000012
のように定義され、ｒｏｕｎｄ（）は前記整数化関数である、
請求項１に記載の画像処理装置。
【請求項５】
前記変換係数データは、各ブロックの端部の画素値を対称周期拡張によって拡張して離散ウェーブレット変換を実行することにより、前記画像の符号化の際に生成される、請求項１に記載の画像処理装置。
【請求項６】
前記画像処理装置は、ＪＰＥＧ２０００方式に従って前記画像を復号する装置であり、
前記ブロックは、タイルに相当する、
請求項１に記載の画像処理装置。
【請求項７】
１つ以上のブロックを含む画像の画像信号を、整数型離散ウェーブレット変換を実行することにより周波数成分の変換係数データに変換する変換部、
を備え、
前記整数型離散ウェーブレット変換における整数化関数は、原点を基準として点対称な関数グラフを有する、
画像処理装置。
【請求項８】
前記整数化関数は、引数の絶対値を前記引数の符号に依存することなく整数化し、整数化された前記絶対値に前記引数と同じ符号を付す関数である、請求項７に記載の画像処理装置。
【請求項９】
前記整数化関数は、前記絶対値の小数第１位を四捨五入することにより、前記絶対値を整数化する、請求項８に記載の画像処理装置。
【請求項１０】
前記整数型離散ウェーブレット変換は、ｎ番目の画素値をＸ（ｎ）、ｎ番目の変換係数をＹ（ｎ）、とすると、
低周波成分については、
【数３】
2013187692.tif 000013
高周波成分については、
【数４】
2013187692.tif 000014
のように定義され、ｒｏｕｎｄ（）は前記整数化関数である、
請求項７に記載の画像処理装置。
【請求項１１】
前記変換部は、各ブロックの端部の画素値を対称周期拡張によって拡張して離散ウェーブレット変換を実行する、請求項７に記載の画像処理装置。
【請求項１２】
前記画像処理装置は、ＪＰＥＧ２０００方式に従って前記画像を符号化する装置であり、
前記ブロックは、タイルに相当する、
請求項７に記載の画像処理装置。
【請求項１３】
１つ以上のブロックを含む画像を復号するための画像処理方法であって、
前記画像の周波数成分の変換係数データを、整数型逆離散ウェーブレット変換を実行することにより画像信号に変換すること、
を含み、
前記整数型逆離散ウェーブレット変換における整数化関数は、原点を基準として点対称な関数グラフを有する、
画像処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、画像処理装置及び画像処理方法に関する。
【背景技術】
【０００２】
近年実用されている多くの画像符号化方式は、デジタル画像信号を空間ドメインの信号から周波数ドメインの信号へ変換し、周波数ドメインでデータを量子化して符号化することにより、画像のデータサイズを圧縮する。例えば、ＪＰＥＧ（Joint  Photographic  Experts  Group）方式では、離散コサイン変換（ＤＣＴ：Discrete  Cosine  Transform）が信号の変換のために使用される。一方、ＪＰＥＧ２０００方式では、離散ウェーブレット変換（ＤＷＴ：Discrete  Wavelet  Transform）が信号の変換のために使用される。
【０００３】
これら変換は、一般的に、画像内に設定されるブロック単位で行われる。ＤＣＴでは、様々な周波数の定常波（余弦波）がブロック単位で使用されるのに対して、ＤＷＴでは、空間的な局在性を有する孤立波がブロック内で使用される。このようなブロック単位の信号の変換が行われる場合、ブロック境界に沿って画像に歪み（即ち、画質の劣化）が生じ得る。
【０００４】
下記特許文献１及び２は、ＤＷＴベースの画像符号化方式において、復号される画像のブロック境界の近傍の画素をフィルタリングすることにより、ブロック境界に発生した画質の劣化を修復する手法を開示している。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００４−１１２００４号公報
【特許文献２】特開２００１−２５７５９６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、ブロック境界の近傍の画素をフィルタリングする手法は、ブロック境界の近傍領域において画像が不自然にぼけるという副作用をもたらす。従って、画像を事後的にフィルタリングするというアプローチよりも、画質の劣化を生じさせる原因を除くというアプローチの方が、フィルタリングの副作用を回避できる点で有益である。
【課題を解決するための手段】
【０００７】
本開示によれば、１つ以上のブロックを含む画像の周波数成分の変換係数データを、整数型逆離散ウェーブレット変換を実行することにより画像信号に変換する逆変換部、を備え、前記整数型逆離散ウェーブレット変換における整数化関数は、原点を基準として点対称な関数グラフを有する、画像処理装置が提供される。
【０００８】
また、本開示によれば、１つ以上のブロックを含む画像の画像信号を、整数型離散ウェーブレット変換を実行することにより周波数成分の変換係数データに変換する変換部、を備え、前記整数型離散ウェーブレット変換における整数化関数は、原点を基準として点対称な関数グラフを有する、画像処理装置が提供される。
【０００９】
また、本開示によれば、１つ以上のブロックを含む画像を復号するための画像処理方法であって、前記画像の周波数成分の変換係数データを、整数型逆離散ウェーブレット変換を実行することにより画像信号に変換すること、を含み、前記整数型逆離散ウェーブレット変換における整数化関数は、原点を基準として点対称な関数グラフを有する、画像処理方法が提供される。
【発明の効果】
【００１０】
本開示に係る技術によれば、既存の手法において生じ得るブロック境界に沿った画質の劣化を防止し又は軽減することができる。
【図面の簡単な説明】
【００１１】
【図１】ブロック端における対称周期拡張について説明するための説明図である。
【図２】整数型離散ウェーブレット変換における既存の整数化関数の関数グラフを示す説明図である。
【図３Ａ】一実施形態において採用され得る新たな整数化関数の関数グラフの第１の例を示す説明図である。
【図３Ｂ】一実施形態において採用され得る新たな整数化関数の関数グラフの第２の例を示す説明図である。
【図４】一実施形態に係るエンコーダの構成の一例を示すブロック図である。
【図５】２次元ＤＷＴについて説明するための説明図である。
【図６】一実施形態に係るデコーダの構成の一例を示すブロック図である。
【図７】一実施形態に係る符号化処理の流れの一例を示すフローチャートである。
【図８】一実施形態に係る復号処理の流れの一例を示すフローチャートである。
【発明を実施するための形態】
【００１２】
以下に添付図面を参照しながら、本開示の好適な実施の形態について詳細に説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複説明を省略する。
【００１３】
また、以下の順序で説明を行う。
１．課題の説明
１−１．既存の整数型逆離散ウェーブレット変換
１−２．新たな整数化関数
２．エンコーダの構成例
３．デコーダの構成例
４．符号化処理の流れ
５．復号処理の流れ
６．まとめ
【００１４】
＜１．課題の説明＞
まず、図１及び図２を用いて、本開示に係る技術に関連する課題について述べる。
【００１５】
［１−１．既存の整数型逆離散ウェーブレット変換］
ＪＰＥＧ２０００方式などのいくつかの画像符号化方式において採用されている離散ウェーブレット変換（ＤＷＴ）は、実質的には、各画素の周辺画素を含むフィルタタップを入力値とするフィルタ演算によって実現される。ＤＷＴには、整数型ＤＷＴ及び実数型ＤＷＴという２つの種類が存在する。このうち、整数型ＤＷＴの一形態である整数型５×３ＤＷＴは、例えばＪＰＥＧ２０００方式では、次の演算式（１）及び（２）のように定義される。
【００１６】
【数１】
2013187692.tif 000003
【００１７】
式（１）はローパスフィルタのフィルタ演算、式（２）はハイパスフィルタのフィルタ演算にそれぞれ相当する。これら演算式において、ｎは水平方向又は垂直方向の信号位置、Ｘ（ｎ）は信号位置ｎにおける画素値、Ｙ（ｎ）は信号位置ｎにおける変換係数、をそれぞれ表す。ｆｌｏｏｒ（ｘ）は、引数ｘの小数部を切り捨てることにより引数ｘを整数化する関数である。式（１）及び式（２）に従ってローパスフィルタ及びハイパスフィルタのフィルタ演算が信号位置ごとに交互に実行されることにより、空間ドメインの画像信号が周波数ドメインの複数のサブバンドの変換係数データに変換される。
【００１８】
また、整数型５×３逆ＤＷＴは、例えばＪＰＥＧ２０００方式では、次の演算式（３）及び（４）のように定義される。
【００１９】
【数２】
2013187692.tif 000004
【００２０】
式（３）はローパスフィルタのフィルタ演算、式（４）はハイパスフィルタのフィルタ演算にそれぞれ相当する。式（３）及び式（４）に従ってローパスフィルタ及びハイパスフィルタのフィルタ演算が実行されることにより、周波数ドメインの複数のサブバンドの変換係数データが空間ドメインの画像信号に変換される。
【００２１】
これら演算式に着目すると、ブロックの端部において、フィルタ演算に入力すべきフィルタタップが不足することが理解される。そのため、対称周期拡張によって、不足する画素値が補われる。
【００２２】
図１は、ブロック端における対称周期拡張について説明するための説明図である。図１において、横軸は１次元化された画像信号の信号位置に対応し、縦軸は各信号位置における画素値に対応する。図中の実線の丸印は実際の画素値であり、破線の丸印は対称周期拡張によって補われる画素値である。図１の例において、信号位置ゼロから信号位置Ｎ−１までの画素は、ブロックＢ０に含まれる。ＪＰＥＧ２０００方式で画像が符号化される場合には、このようなブロックはタイルと呼ばれ、タイルを処理単位として離散ウェーブレット変換（ＤＷＴ）が実行される。ＪＰＥＧ２０００方式のタイルのサイズは、可変である。画像全体に１つのタイルが設定されてもよく、その場合にはタイル端は画像の端部に等しい。図１の例では、ブロック境界ＢＢ１の近傍で、画素Ｐａ、Ｐｂ及びＰｃはブロックＢ０に含まれるものの、画素Ｐｄ及びＰｅはブロックＢ０に含まれない。従って、信号位置Ｎ−１におけるＤＷＴのフィルタ演算のために、信号位置Ｎに画素Ｐｂ´、信号位置Ｎ＋１に画素Ｐａ´がそれぞれ複製され、画素Ｐａ、Ｐｂ、Ｐｃ、Ｐｂ´及びＰａ´の画素値がフィルタ演算において使用される。
【００２３】
図２は、式（１）〜式（４）における整数化関数ｆｌｏｏｒ（ｘ）の関数グラフを示している。式（１）〜式（４）において、整数化関数の引数は、整数値を２又は４で割った値を有する。従って、当該引数の小数部は、ゼロ、０．２５、０．５及び０．７５のいずれかである。これら小数部が整数化関数ｆｌｏｏｒ（ｘ）によって切り捨てられることにより、フィルタ演算を通じて信号値に負の方向へのバイアスがかかる。例えば、信号値０．５、１．５及び２．５を整数化した結果はそれぞれゼロ、１及び２となるのに対し、信号値−０．５、−１．５及び−２．５を整数化した結果はそれぞれ−１、−２及び−３となる。即ち、正の信号値が小数部を含む場合にはフィルタ演算を通じて信号値の絶対値は減少し得るのに対し、負の信号値が小数部を含む場合にはフィルタ演算を通じて信号値の絶対値は増加し得る。
【００２４】
しかし、ブロック端の信号値は、上述した対称周期拡張を原因として、このようなバイアスの影響を受けない。例えば、整数型５×３ＤＷＴに際して、信号位置Ｎ−１がブロック端であるとすると、対称周期拡張により、画素値Ｘ（Ｎ）＝Ｘ（Ｎ−２）となる。これを式（２）に代入すると、変換係数Ｙ（Ｎ−１）＝Ｘ（Ｎ−１）−Ｘ（Ｎ−２）が導かれる。同様に、例えば整数型５×３逆ＤＷＴに際して、信号位置Ｎ−１がブロック端であるとすると、対称周期拡張により、画素値Ｘ（Ｎ）＝Ｘ（Ｎ−２）となる。これを式（４）に代入すると、画素値Ｘ（Ｎ−１）＝Ｙ（Ｎ−１）＋Ｘ（Ｎ−２）が導かれる。即ち、整数型５×３ＤＷＴ及び整数型５×３逆ＤＷＴのいずれのケースでも、対称周期拡張を原因として整数化関数の引数に小数部が発生しないため、実質的に小数部の切り捨てが行われず、結果として信号値に特定の方向へのバイアスはかからない。
【００２５】
従って、整数型ＤＷＴを通じて符号化された画像を復号する際、量子化又は下位ビットの破棄（truncation）を通じて発生する誤差の挙動は、ブロック境界と画像内の他の部分との間で異なる。その結果、ブロック境界に沿って、視覚的に感知される画質の劣化が生じ得る。特に、１つの画像が複数のブロックに分割される場合には、ブロック境界が画像の中央部を通過するため、ブロック境界に沿った歪みは視覚的に顕著となり得る。
【００２６】
既存の手法では、ブロック境界の近傍領域においてブロック歪みが現れる場合に、デコーダ側でブロック境界の近傍の画素をフィルタリングすることにより、画質の劣化の修復が試みられる。しかし、そのような手法は、ブロック境界の近傍領域において画像が不自然にぼけるという副作用を伴う。そこで、本開示に係る技術は、既存の手法のような事後的なフィルタリングというアプローチではなく、画質の劣化を防止し又は軽減することを目的として、画質の劣化を生じさせる原因となっている整数化関数を修正し又は再定義するというアプローチを採用する。
【００２７】
［１−２．新たな整数化関数］
本開示に係る技術の一実施形態において、整数型ＤＷＴ及び整数型逆ＤＷＴの演算式内で用いられる整数化関数は、原点を基準として点対称な関数グラフを有する関数である。そのような整数化関数を用いれば、信号値が小数部を有する場合にも、信号値に特定の方向へのバイアスがかかることが回避される。当該整数化関数は、引数の絶対値を引数の符号に依存することなく整数化し、整数化された絶対値に引数と同じ符号を付す関数であってよい。
【００２８】
図３Ａ及び図３Ｂは、一実施形態において採用され得る新たな整数化関数の関数グラフの例をそれぞれ示している。図３Ａの例において、整数化関数ｒｏｕｎｄ（ｘ）は、引数ｘの絶対値の小数第１位を四捨五入し、それにより整数化された絶対値に引数ｘと同じ符号を付す関数である。例えば、信号値０．５、１．５及び２．５を図３Ａの整数化関数ｒｏｕｎｄ（ｘ）で整数化した結果はそれぞれ１、２及び３となり、信号値−０．５、−１．５及び−２．５を当該整数化関数ｒｏｕｎｄ（ｘ）で整数化した結果はそれぞれ−１、−２及び−３となる。図３Ｂの例では、引数ｘの小数部が０．５に等しい場合にのみ、整数化関数ｒｏｕｎｄ（ｘ）の出力が図３Ａの例とは異なる。図３Ａ及び図３Ｂのいずれにおいても、信号値の絶対値の挙動は、信号値が正であるか負であるかに依存しない。
【００２９】
なお、図３Ａ及び図３Ｂに示した整数化関数は一例に過ぎず、原点を基準として点対称な関数グラフを有する他の整数化関数が使用されてもよい。また、ここでの“対称性”は、少なくとも整数化関数の引数がとり得る離散的な定義域（式（１）〜式（４）の例では、０．２５の整数倍）において実現されていればよい。さらに、本明細書では主にＪＰＥＧ２０００方式を例にとって説明する。しかしながら、本開示に係る技術は、ＪＰＥＧ２０００方式に限定されず、整数型ＤＷＴに基づく、対称周期拡張を伴う様々な画像符号化方式に広く適用可能である。
【００３０】
＜２．エンコーダの構成例＞
図４は、一実施形態に係るエンコーダ１００の構成の一例を示すブロック図である。図４を参照すると、エンコーダ１００は、変換・シフト部１１０、タイル分割部１２０、ＤＷＴ部１３０、量子化部１４０、ビットモデリング部１５０、符号化・レート制御部１６０及びストリーム出力部１７０を備える。
【００３１】
（１）変換・シフト部
変換・シフト部１１０には、入力画像の画像信号ＩＭＧが入力される。変換・シフト部１１０は、エンコーダ１００によりサポートされる色空間と画像信号ＩＭＧの色空間とが異なる場合に、画像信号ＩＭＧの色空間をエンコーダ１００によりサポートされる色空間に変換する。また、変換・シフト部１１０は、画像信号ＩＭＧの信号値の定義域の中央値がゼロに一致するように、画像信号ＩＭＧの信号レベルを一律的にシフトする。例えば、シフト前の信号値の定義域が０〜２５５である場合には、信号値は、一律的に１２８だけ減算され得る。そして、変換・シフト部１１０は、変換及びシフト後の画像信号ＢＢをタイル分割部１２０へ出力する。
【００３２】
（２）タイル分割部
タイル分割部１２０は、入力画像内に１つ以上のタイルを設定する。タイルのサイズは、典型的には、一辺の長さが２のべき乗の画素数に等しい複数のサイズの候補から選択され得る。入力画像の全体に１つのタイルが設定されてもよい。タイル分割部１２０は、タイルの設定に従って、画像信号ＢＢをタイルごとの画像信号であるタイル信号ＴＢＢに分割し、タイル信号ＴＢＢをＤＷＴ部１３０へ順次出力する。
【００３３】
（３）離散ウェーブレット変換（ＤＷＴ）部
ＤＷＴ部１３０は、タイル分割部１２０からタイルごとに入力されるタイル信号ＴＢＢについて２次元の整数型ＤＷＴを実行することにより、タイルごとの変換係数データを生成する。ここでの整数型ＤＷＴの演算式は、例えば、次の式（５）及び式（６）であってよい。
【００３４】
【数３】
2013187692.tif 000005
【００３５】
なお、式（５）はローパスフィルタのフィルタ演算、式（６）はハイパスフィルタのフィルタ演算にそれぞれ相当する。ｒｏｕｎｄ（ｘ）は、引数ｘを整数化するための、原点を基準として点対称な関数グラフを有する整数化関数である。整数化関数ｒｏｕｎｄ（ｘ）は、引数ｘの符号に依存することなくその絶対値を整数化し、整数化された絶対値に引数ｘと同じ符号を付す。整数化関数ｒｏｕｎｄ（ｘ）の関数グラフは、例えば、図３Ａに示したようなグラフであってよい。その場合、整数化関数ｒｏｕｎｄ（ｘ）は、引数ｘの絶対値の小数第１位を四捨五入することにより、当該絶対値を整数化する。その代わりに、整数化関数ｒｏｕｎｄ（ｘ）の関数グラフは、図３Ｂに示したようなグラフ、又は原点を基準として点対称なその他のグラフであってもよい。ＤＷＴ部１３０は、式（５）及び式（６）に従ってローパスフィルタ及びハイパスフィルタのフィルタ演算を信号位置ごとに交互に実行することにより、タイル信号ＴＢＢを２つのサブバンド信号に分解する。
【００３６】
このようにＤＷＴを実行する際、タイル端では式（５）又は式（６）に代入されるフィルタタップが不足する。そこで、ＤＷＴ部１３０は、各タイルの端部の画素値を図１を用いて説明した対称周期拡張によって拡張した上でフィルタ演算を実行する。
【００３７】
図５は、２次元ＤＷＴについて説明するための説明図である。図５の左上には、１つのタイルについてのタイル信号ＴＢＢが示されている。ＤＷＴ部１３０は、まず、タイル信号ＴＢＢを水平方向に走査し、信号位置ごとにローパスフィルタ及びハイパスフィルタを交互に適用する。ＤＷＴ部１３０は、ローパスフィルタの出力信号（１Ｌ）及びハイパスフィルタの出力信号（１Ｈ）を図５の中央上のように並び替える。このような処理を垂直方向についても実行すると、図５の右上のように、４つのサブバンド信号（１ＬＬ、１ＨＬ、１ＬＨ、１ＨＨ）が得られる。これが１回の２次元ＤＷＴの結果である。ＤＷＴ部１３０は、さらに、低周波成分のサブバンド信号（１ＬＬ）を対象として、２次元ＤＷＴを実行し得る。その結果、図５の右下のように、７つのサブバンド信号（２ＬＬ、２ＨＬ、２ＬＨ、２ＨＨ、１ＨＬ、１ＬＨ、１ＨＨ）が得られる。ＤＷＴ部１３０は、このように２次元ＤＷＴ（低周波及び高周波のサブバンドへの信号の分解）を所定の回数だけ繰り返して実行し、複数の周波数成分（即ち、サブバンド）の変換係数を含む変換係数データＣＥを生成する。このような階層的なサブバンドの分解によって、プログレッシブな画像の復号が可能となる。なお、サブバンドの分解は、いかなる回数だけ繰り返されてもよい。
【００３８】
ＤＷＴ部１３０は、このように２次元の整数型ＤＷＴを実行することにより生成されるタイルごとの変換係数データＣＥを、量子化部１４０へ出力する。
【００３９】
（４）量子化部
量子化部１４０は、ＤＷＴ部１３０から入力される変換係数データＣＥを量子化することにより、量子化された変換係数データＱＣＥを生成する。ＪＰＥＧ２０００方式では、スカラ量子化が採用され、サブバンドごとに動的に量子化ステップが決定され得る。量子化部１４０は、量子化された変換係数データＱＣＥをビットモデリング部１５０へ出力する。なお、量子化部１４０による量子化処理は、省略されてもよい。
【００４０】
（５）ビットモデリング部
ビットモデリング部１５０は、エントロピー符号化の一種であるＥＢＣＯＴ（Embedded  Block  Coding  with  Optimized  Truncation）を実現するためのビットモデリングを行う。ビットモデリング部１５０は、コードブロックごとに、量子化部１４０から入力される変換係数データＱＣＥから、３つの符号化パス（サブビットプレーン）を含むビット列ＢＩＮを生成する。そして、ビットモデリング部１５０は、生成したビット列ＢＩＮを符号化・レート制御部１６０へ出力する。
【００４１】
（６）符号化・レート制御部
符号化・レート制御部１６０は、指定される符号化レート（あるいは圧縮率）を達成するために、ビットの破棄位置（ＴＰ：Truncation  Point）をコードブロックごとに決定し、破棄位置以下の下位ビットに相当する変換係数データＱＣＥのビットプレーンを破棄する。また、符号化・レート制御部１６０は、残されるビットプレーンを含む変換係数データのビット列ＢＩＮを算術符号化器の一種であるＭＱ−Ｃｏｄｅｒによって符号化して、符号化ストリームＢＳを生成する。そして、符号化・レート制御部１６０は、生成した符号化ストリームＢＳを、ストリーム出力部１７０へ出力する。
【００４２】
（７）ストリーム出力部
ストリーム出力部１７０は、符号化・レート制御部１６０から入力される符号化ストリームＢＳを所定のファイル形式に整形することにより出力データＰＢＳを生成し、生成した出力データＰＢＳを出力する。ストリーム出力部１７０により出力される出力データＰＢＳは、エンコーダ１００に接続される記憶媒体により記憶されてもよい。その代わりに、出力データＰＢＳは、エンコーダ１００から他の装置へ送信され、他の装置において記憶又は復号されてもよい。
【００４３】
＜３．デコーダの構成例＞
図６は、一実施形態に係るデコーダ２００の構成の一例を示すブロック図である。図６を参照すると、デコーダ２００は、ストリーム取得部２１０、復号部２２０、ビットデモデリング部２３０、逆量子化部２４０、逆ＤＷＴ部２５０、タイル合成部２６０及び逆変換・逆シフト部２７０を備える。
【００４４】
（１）ストリーム取得部
ストリーム取得部２１０は、デコーダ２００による復号処理の入力となる入力データＰＢＳを取得する。入力データＰＢＳは、復号すべき画像の周波数成分の変換係数データが符号化された符号化ストリームを含む。当該変換係数データは、対称周期拡張を伴う整数型ＤＷＴを通じて画像信号から変換されたデータである。入力データＰＢＳのファイル形式は、例えば、上述したエンコーダ１００から出力される出力データＰＢＳと同様の形式であってよい。ストリーム取得部２１０は、入力データＰＢＳから符号化ストリームＢＳを抽出し、抽出した符号化ストリームＢＳを復号部２２０へ出力する。
【００４５】
（２）復号部
復号部２２０は、ストリーム取得部２１０から入力される符号化ストリームＢＳから、変換係数データのビット列ＢＩＮを復号する。より具体的には、本実施形態において、復号部２２０は、符号化ストリームＢＳから、コードブロックごとの３つの符号化パスのビット列ＢＩＮをＭＱ−Ｄｅｏｄｅｒによって復号する。そして、復号部２２０は、復号されたビット列ＢＩＮをビットデモデリング部２３０へ出力する。
【００４６】
（３）ビットデモデリング部
ビットデモデリング部２３０は、復号部２２０から入力されるビット列ＢＩＮを並び替え直すことにより、エンコーダ１００において量子化された変換係数データＱＣＥを復元する。そして、ビットデモデリング部２３０は、復元した変換係数データＱＣＥを逆量子化部２４０へ出力する。
【００４７】
（４）逆量子化部
逆量子化部２４０は、ビットデモデリング部２３０から入力される変換係数データＱＣＥを、エンコーダ１００における量子化処理において使用されたものと同等の量子化ステップで逆量子化することにより、量子化前の変換係数データＣＥを復元する。そして、逆量子化部２４０は、復元した変換係数データＣＥを逆ＤＷＴ部２５０へ出力する。なお、逆量子化部２４０による逆量子化処理は、省略されてもよい。
【００４８】
（５）逆ＤＷＴ部
逆ＤＷＴ部２５０は、逆量子化部２４０から入力される変換係数データＣＥについて２次元の整数型逆ＤＷＴを実行することにより、タイルごとの画像信号であるタイル信号ＴＢＢを復元する。ここでの整数型逆ＤＷＴの演算式は、例えば、次の式（７）及び式（８）であってよい。
【００４９】
【数４】
2013187692.tif 000006
【００５０】
なお、式（７）はローパスフィルタのフィルタ演算、式（８）はハイパスフィルタのフィルタ演算にそれぞれ相当する。ｒｏｕｎｄ（ｘ）は、引数ｘを整数化するための、原点を基準として点対称な関数グラフを有する整数化関数である。逆ＤＷＴ部２５０は、このような２次元の整数化逆ＤＷＴを繰り返すことにより所望のレベルのタイル信号ＴＢＢを復元し、復元したタイル信号ＴＢＢをタイル合成部２６０へ順次出力する。
【００５１】
（６）タイル合成部
タイル合成部２６０は、逆ＤＷＴ部２５０から入力されるタイル信号ＴＢＢを、タイル位置及びタイルサイズに応じて画像内に順次配置し、１つの画像の画像信号ＢＢを復元する。そして、タイル合成部２６０は、復元した画像信号ＢＢを逆変換・逆シフト部２７０へ出力する。
【００５２】
（７）逆変換・逆シフト部
逆変換・逆シフト部２７０は、タイル合成部２６０から入力される画像信号ＢＢの信号値を一律的にシフトし、画像信号ＩＭＧを復元する。また、逆変換・逆シフト部２７０は、画像信号ＩＭＧの色空間を逆変換する。逆変換・逆シフト部２７０により復元された画像信号ＩＭＧは、例えば、表示装置（図示せず）へ出力されてもよく、又は記憶媒体により記憶されてもよい。
【００５３】
＜４．符号化処理の流れ＞
図７は、エンコーダ１００による符号化処理の流れの一例を示すフローチャートである。
【００５４】
図７を参照すると、まず、変換・シフト部１１０は、入力画像信号ＩＭＧの色空間をエンコーダ１００によりサポートされる色空間に変換し、信号レベルをシフトする（ステップＳ１１０）。そして、変換・シフト部１１０は、変換及びシフト後の画像信号ＢＢをタイル分割部１２０へ出力する。
【００５５】
次に、タイル分割部１２０は、入力画像内に１つ以上のタイルを設定し、画像信号ＢＢをタイル信号ＴＢＢに分割する（ステップＳ１２０）。そして、タイル分割部１２０は、タイル信号ＴＢＢをＤＷＴ部１３０へ出力する。その後のステップＳ１３０からステップＳ１８０までの処理は、入力画像内のタイルの各々について繰り返される。
【００５６】
ＤＷＴ部１３０は、タイル分割部１２０から入力されるタイル信号ＴＢＢについて、原点を基準として点対称な関数グラフを有する整数化関数を用いた整数型ＤＷＴを実行することにより、変換係数データＣＥを生成する（ステップＳ１３０）。そして、ＤＷＴ部１３０は、生成した変換係数データＣＥを量子化部１４０へ出力する。
【００５７】
次に、量子化部１４０は、ＤＷＴ部１３０から入力される変換係数データＣＥを量子化することにより、量子化された変換係数データＱＣＥを生成する（ステップＳ１４０）。これにより、変換係数データに量子化誤差が生じ得る。そして、量子化部１４０は、量子化された変換係数データＱＣＥをビットモデリング部１５０へ出力する。
【００５８】
次に、ビットモデリング部１５０は、コードブロックごとに、量子化部１４０から入力される変換係数データＱＣＥを、３つの符号化パスを含むビット列ＢＩＮに変換する（ステップＳ１５０）。そして、ビットモデリング部１５０は、ビット列ＢＩＮを符号化・レート制御部１６０へ出力する。
【００５９】
次に、符号化・レート制御部１６０は、指定される符号化レートに応じた破棄位置ＴＰを決定し、ビットモデリング部１５０から入力されるビット列ＢＩＮの破棄位置ＴＰ以下の下位ビットを破棄する（ステップＳ１６０）。これにより、変換係数データにビットの破棄に起因する誤差が生じ得る。
【００６０】
また、符号化・レート制御部１６０は、下位ビットの破棄されたビット列ＢＩＮを符号化して、符号化ストリームＢＳを生成する（ステップＳ１７０）。そして、符号化・レート制御部１６０は、生成した符号化ストリームＢＳを、ストリーム出力部１７０へ出力する。
【００６１】
その後、未処理の次のタイルが存在する場合には、処理はステップＳ１３０へ戻る。全てのタイルについて符号化ストリームが生成された場合には、処理はステップＳ１９０へ進む（ステップＳ１８０）。
【００６２】
ステップＳ１９０において、ストリーム出力部１７０は、符号化ストリームＢＳを所定のファイル形式に整形することにより出力データＰＢＳを生成し、生成した出力データＰＢＳを出力する。
【００６３】
＜５．復号処理の流れ＞
図８は、デコーダ２００により実行される復号処理の流れの一例を示すフローチャートである。
【００６４】
図８を参照すると、まず、ストリーム取得部２１０は、復号すべき画像の変換係数データが符号化された符号化ストリームＢＳを取得する（ステップＳ２１０）。そして、ストリーム取得部２１０は、符号化ストリームＢＳを復号部２２０へ出力する。
【００６５】
その後のステップＳ２２０からステップＳ２６０までの処理は、入力画像内のタイルの各々について繰り返される。
【００６６】
復号部２２０は、ストリーム取得部２１０から入力される符号化ストリームＢＳから、変換係数データのビット列ＢＩＮを復号する（ステップＳ２２０）。そして、復号部２２０は、復号されたビット列ＢＩＮをビットデモデリング部２３０へ出力する。
【００６７】
次に、ビットデモデリング部２３０は、復号部２２０から入力されるビット列ＢＩＮを並び替え直すことにより、ビット列ＢＩＮを量子化された変換係数データＱＣＥに変換する（ステップＳ２３０）。そして、ビットデモデリング部２３０は、量子化された変換係数データＱＣＥを逆量子化部２４０へ出力する。
【００６８】
次に、逆量子化部２４０は、ビットデモデリング部２３０から入力される変換係数データＱＣＥを逆量子化することにより、量子化前の変換係数データＣＥを復元する（ステップＳ２４０）。そして、逆量子化部２４０は、復元した変換係数データＣＥを逆ＤＷＴ部２５０へ出力する。
【００６９】
次に、逆ＤＷＴ部２５０は、変換係数データＣＥについて、原点を基準として点対称な関数グラフを有する整数化関数を用いた２次元の整数型逆ＤＷＴを実行することにより、タイルごとの画像信号であるタイル信号ＴＢＢを復元する（ステップＳ２５０）。そして、逆ＤＷＴ部２５０は、復元したタイル信号ＴＢＢをタイル合成部２６０へ出力する。
【００７０】
その後、未処理の次のタイルが存在する場合には、処理はステップＳ２２０へ戻る。全てのタイルについてタイル信号ＴＢＢが復元された場合には、処理はステップＳ２７０へ進む（ステップＳ２６０）。
【００７１】
ステップＳ２７０において、タイル合成部２６０は、逆ＤＷＴ部２５０から入力される複数のタイルのタイル信号ＴＢＢを合成することにより、１つの画像の画像信号ＢＢを復元する（ステップＳ２７０）。そして、タイル合成部２６０は、復元した画像信号ＢＢを逆変換・逆シフト部２７０へ出力する。なお、１つの画像全体が１つのタイルに相当する場合には、ステップＳ２７０の処理はスキップされてよい。
【００７２】
次に、逆変換・逆シフト部２７０は、タイル合成部２６０から入力される画像信号ＢＢの信号値を一律的にシフトして画像信号ＩＭＧを復元し、（必要に応じて）画像信号ＩＭＧの色空間を逆変換する（ステップＳ２８０）。そして、逆変換・逆シフト部２７０は、例えば表示装置又は記憶装置などの、デコーダ２００と接続される装置へ、画像信号ＩＭＧを出力する。
【００７３】
なお、本明細書で説明した処理は、必ずしもフローチャートに示した順序で実行されなくてよい。一例として、色空間の変換、信号レベルのシフト及びタイル分割の順序が入れ替えられてもよい。
【００７４】
＜６．まとめ＞
ここまで、図１〜図８を用いて、本開示に係る技術の一実施形態について詳細に説明した。上述した実施形態によれば、画像の符号化の際には、原点を基準として点対称な関数グラフを有する整数化関数を用いて整数型ＤＷＴが実行される。また、画像の復号の際には、原点を基準として点対称な関数グラフを有する整数化関数を用いて整数型逆ＤＷＴが実行される。それにより、量子化又は下位ビットの破棄を通じて発生する誤差に、ブロック境界以外の部分においてのみ特定の方向へのバイアスがかかる、という事象は解消される。従って、これら誤差の挙動を原因としてブロック境界に沿って画質の劣化が生じることが防止される。また、上述した実施形態によれば、ブロック境界の近傍の画素の追加的なフィルタリングが行われないため、ブロック境界の近傍領域において画像がぼけるという副作用は生じない。
【００７５】
上述した実施形態によれば、整数化関数は、当該関数の引数の絶対値をその符号に依存することなく整数化し、整数化された絶対値に引数と同じ符号を付す関数である。このような整数化関数を用いれば、整数化される信号値の絶対値の挙動が当該信号値の正負に依存して異なることが回避される。それにより、対称周期拡張の結果として整数化関数へ入力される信号値が整数となるブロック境界と、整数化関数へ入力される信号値が小数部を含み得る非ブロック境界との間で、上記誤差の挙動が均一となる。
【００７６】
上記整数化関数は、例えば、引数の絶対値の小数第１位を四捨五入することにより当該絶対値を整数化する関数であってよい。絶対値演算及び四捨五入演算は、一般的な画像処理環境において既に利用可能である。従って、このような整数化関数を、低コストで容易に実装することが可能である。
【００７７】
なお、上述した実施形態に係るデコーダ２００は、既存のエンコーダ、即ち非点対称な関数グラフを有する整数化関数を用いる整数型ＤＷＴを実行するエンコーダによって符号化された符号化ストリームから、画像を復号するために使用されてもよい。その場合にも、誤差を含む変換係数データから整数型逆ＤＷＴを通じて画像を復元する際のブロック歪みを軽減することが可能である。
【００７８】
本明細書において説明したエンコーダ及びデコーダによる一連の処理は、ソフトウェア、ハードウェア、及びソフトウェアとハードウェアとの組合せのいずれを用いて実現されてもよい。ソフトウェアを構成するプログラムは、例えば、装置の内部又は外部に設けられる記憶媒体に予め格納される。そして、各プログラムは、例えば、実行時にＲＡＭ（Random  Access  Memory）に読み込まれ、ＣＰＵ（Central  Processing  Unit）などのプロセッサにより実行される。
【００７９】
本開示に係る技術は、画像を符号化し又は復号する様々な製品に応用可能である。限定ではなく一例として、ＰＣ（Personal  Computer）、スマートフォン、ＰＤＡ（Personal  Digital  Assistants）、デジタルカメラ、ゲーム端末、コンテンツレコーダ、コンテンツプレーヤ又はデジタルテレビジョン装置などの製品において、本開示に係る技術が採用されてよい。
【００８０】
以上、添付図面を参照しながら本開示の好適な実施形態について詳細に説明したが、本開示の技術的範囲はかかる例に限定されない。本開示の技術分野における通常の知識を有する者であれば、特許請求の範囲に記載された技術的思想の範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、これらについても、当然に本開示の技術的範囲に属するものと了解される。
【００８１】
なお、以下のような構成も本開示の技術的範囲に属する。
（１）
１つ以上のブロックを含む画像の周波数成分の変換係数データを、整数型逆離散ウェーブレット変換を実行することにより画像信号に変換する逆変換部、
を備え、
前記整数型逆離散ウェーブレット変換における整数化関数は、原点を基準として点対称な関数グラフを有する、
画像処理装置。
（２）
前記整数化関数は、引数の絶対値を前記引数の符号に依存することなく整数化し、整数化された前記絶対値に前記引数と同じ符号を付す関数である、前記（１）に記載の画像処理装置。
（３）
前記整数化関数は、前記絶対値の小数第１位を四捨五入することにより、前記絶対値を整数化する、前記（２）に記載の画像処理装置。
（４）
前記整数型逆離散ウェーブレット変換は、ｎ番目の画素値をＸ（ｎ）、ｎ番目の変換係数をＹ（ｎ）、とすると、
低周波成分については、
【数５】
2013187692.tif 000007
高周波成分については、
【数６】
2013187692.tif 000008
のように定義され、ｒｏｕｎｄ（）は前記整数化関数である、
前記（１）〜（３）のいずれか１項に記載の画像処理装置。
（５）
前記変換係数データは、各ブロックの端部の画素値を対称周期拡張によって拡張して離散ウェーブレット変換を実行することにより、前記画像の符号化の際に生成される、前記（１）〜（４）のいずれか１項に記載の画像処理装置。
（６）
前記画像処理装置は、ＪＰＥＧ２０００方式に従って前記画像を復号する装置であり、
前記ブロックは、タイルに相当する、
前記（１）〜（５）のいずれか１項に記載の画像処理装置。
（７）
１つ以上のブロックを含む画像の画像信号を、整数型離散ウェーブレット変換を実行することにより周波数成分の変換係数データに変換する変換部、
を備え、
前記整数型離散ウェーブレット変換における整数化関数は、原点を基準として点対称な関数グラフを有する、
画像処理装置。
（８）
前記整数化関数は、引数の絶対値を前記引数の符号に依存することなく整数化し、整数化された前記絶対値に前記引数と同じ符号を付す関数である、前記（７）に記載の画像処理装置。
（９）
前記整数化関数は、前記絶対値の小数第１位を四捨五入することにより、前記絶対値を整数化する、前記（８）に記載の画像処理装置。
（１０）
前記整数型離散ウェーブレット変換は、ｎ番目の画素値をＸ（ｎ）、ｎ番目の変換係数をＹ（ｎ）、とすると、
低周波成分については、
【数７】
2013187692.tif 000009
高周波成分については、
【数８】
2013187692.tif 000010
のように定義され、ｒｏｕｎｄ（）は前記整数化関数である、
前記（７）〜（９）のいずれか１項に記載の画像処理装置。
（１１）
前記変換部は、各ブロックの端部の画素値を対称周期拡張によって拡張して離散ウェーブレット変換を実行する、前記（７）〜（１０）のいずれか１項に記載の画像処理装置。
（１２）
前記画像処理装置は、ＪＰＥＧ２０００方式に従って前記画像を符号化する装置であり、
前記ブロックは、タイルに相当する、
前記（７）〜（１１）のいずれか１項に記載の画像処理装置。
（１３）
１つ以上のブロックを含む画像を復号するための画像処理方法であって、
前記画像の周波数成分の変換係数データを、整数型逆離散ウェーブレット変換を実行することにより画像信号に変換すること、
を含み、
前記整数型逆離散ウェーブレット変換における整数化関数は、原点を基準として点対称な関数グラフを有する、
画像処理方法。
（１４）
１つ以上のブロックを含む画像を符号化するための画像処理方法であって、
前記画像の画像信号を、整数型離散ウェーブレット変換を実行することにより周波数成分の変換係数データに変換すること、
を含み、
前記整数型離散ウェーブレット変換における整数化関数は、原点を基準として点対称な関数グラフを有する、
画像処理方法。
（１５）
画像処理装置を制御するコンピュータを、
１つ以上のブロックを含む画像の周波数成分の変換係数データを、整数型逆離散ウェーブレット変換を実行することにより画像信号に変換する逆変換部、
として機能させ、
前記整数型逆離散ウェーブレット変換における整数化関数は、原点を基準として点対称な関数グラフを有する、
プログラム。
（１６）
画像処理装置を制御するコンピュータを、
１つ以上のブロックを含む画像の画像信号を、整数型離散ウェーブレット変換を実行することにより周波数成分の変換係数データに変換する変換部、
として機能させ、
前記整数型離散ウェーブレット変換における整数化関数は、原点を基準として点対称な関数グラフを有する、
プログラム。
【符号の説明】
【００８２】
１００    画像処理装置（エンコーダ）
１１０    変換・シフト部
１２０    タイル分割部
１３０    ＤＷＴ（離散ウェーブレット変換）部
１４０    量子化部
１５０    ビットモデリング部
１６０    符号化・レート制御部
１７０    ストリーム出力部
２００    画像処理装置（デコーダ）
２１０    ストリーム取得部
２２０    復号部
２３０    ビットデモデリング部
２４０    逆量子化部
２５０    逆ＤＷＴ（離散ウェーブレット変換）部
２６０    タイル合成部
２７０    逆変換・逆シフト部
【図１】
2013187692.tif 000015
【図２】
2013187692.tif 000016
【図３Ａ】
2013187692.tif 000017
【図３Ｂ】
2013187692.tif 000018
【図４】
2013187692.tif 000019
【図５】
2013187692.tif 000020
【図６】
2013187692.tif 000021
【図７】
2013187692.tif 000022
【図８】
2013187692.tif 000023