(57)【要約】【課題】並び替え処理部における待ち時間を解消することにより、デコードの所要時間を短縮することが可能な画像処理装置を得る。【解決手段】並び替え処理部３は、復号処理部１によって処理された後の複数のＨＰ成分を、第１の予測方向に対応する第１のテーブルＴＡＨＰＨ、及び、第２の予測方向に対応する第２のテーブルＴＡＨＰＶの一方を、ＨＰ成分の予測方向に応じて選択して用いて並び替える。並び替え処理部３は、復号処理部１から入力されたＬＰ成分に対して逆予測処理を行う逆予測処理部１０と、逆予測処理部１０による逆予測処理後のＬＰ成分に基づいて、ＨＰ成分の予測方向を求める処理部１１と、処理部１１によって求められたＨＰ成分の予測方向に基づいて、第１のテーブルＴＡＨＰＨ及び第２のテーブルＴＡＨＰＶの一方を選択する選択部１２とを有する。【選択図】図７
2010114538.tif 000002
【特許請求の範囲】
【請求項１】
第１の周波数成分の第１のデータと、第２の周波数成分の第２のデータとを復号する復号処理部と、
前記復号処理部によって処理された後の複数の第２のデータを、第１の予測方向に対応する、非零データの出現頻度を示す第１のテーブル、及び、第２の予測方向に対応する、非零データの出現頻度を示す第２のテーブルの一方を、第２のデータの予測方向に応じて選択して用いて並び替える、並び替え処理部と、
前記並び替え処理部によって処理された後の第１のデータ及び第２のデータに対して逆予測処理を行う逆予測処理部と
を備え、
第２のデータの予測方向を求めるためには、逆予測処理後の第１のデータが必要であり、
前記並び替え処理部は、
前記復号処理部から入力された第１のデータに対して逆予測処理を行う第１の処理部と、
前記第１の処理部によって逆予測処理が行われた第１のデータに基づいて、第２のデータの予測方向を求める第２の処理部と、
前記第２の処理部によって求められた第２のデータの予測方向に基づいて、前記第１のテーブル及び前記第２のテーブルの一方を選択する第３の処理部と
を有する、画像処理装置。
【請求項２】
第１のデータの逆予測処理を行うためには、第１のデータの予測方向に関する情報が必要であり、
当該情報は、前記逆予測処理部から前記第１の処理部に入力される、請求項１に記載の画像処理装置。
【請求項３】
第１のデータの逆予測処理を行うためには、第１のデータの予測方向に関する情報が必要であり、
前記並び替え処理部は、第１のデータの予測方向を求める第４の処理部をさらに有する、請求項１に記載の画像処理装置。
【請求項４】
第１のデータの逆予測処理を行うためには、前記並び替え処理部によって前回処理されたマクロブロック内の特定の第１のデータが必要であり、
前記並び替え処理部は、その特定の第１のデータを記憶する記憶部をさらに有する、請求項１〜３のいずれか一つに記載の画像処理装置。
【請求項５】
第１のデータの逆予測処理を行うためには、前記並び替え処理部によって前回よりも前に処理されたマクロブロック内の特定の第１のデータが必要であり、
その特定の第１のデータは、前記逆予測処理部から前記第１の処理部に入力される、請求項１〜４のいずれか一つに記載の画像処理装置。
【請求項６】
データストリームに含まれる、第１の周波数成分の第１のデータと、第２の周波数成分の第２のデータとを復号する復号処理部と、
前記復号処理部によって処理された後の複数の第２のデータを、第１の予測方向に対応する、非零データの出現頻度を示す第１のテーブルを用いて並び替える、第１の並び替え処理部と、
前記第１の並び替え処理部による処理と並行して、前記復号処理部によって処理された後の複数の第２のデータを、第２の予測方向に対応する、非零データの出現頻度を示す第２のテーブルを用いて並び替える、第２の並び替え処理部と、
第１のデータ及び第２のデータに対して逆予測処理を行う逆予測処理部と
を備え、
前記逆予測処理部による、第１のデータに対する逆予測処理によって、第２のデータの予測方向が求まり、
当該第２のデータの予測方向に基づいて、前記第１の並び替え処理部及び前記第２の並び替え処理部の一方が選択され、
選択された前記第１の並び替え処理部又は前記第２の並び替え処理部によって処理された第２のデータが、前記逆予測処理部に入力される、画像処理装置。
【請求項７】
前記逆予測処理部によって求められた第２のデータの予測方向に関する情報は、前記復号処理部に通知され、
前記復号処理部は、当該情報に基づいて、次のマクロブロックに関する、データストリームにおける復号処理の開始位置を決定する、請求項６に記載の画像処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置に関し、特に、ＨＤ Ｐｈｏｔｏにおけるデコーダに関する。
【背景技術】
【０００２】
近年、ＪＰＥＧよりも高画質で、ＪＰＥＧ２０００よりも回路構成及び演算処理が簡素化された静止画ファイルフォーマットとして、マイクロソフト社よりＨＤ Ｐｈｏｔｏ（又はＪＰＥＧ ＸＲ）が提案されている。
【０００３】
ＨＤ Ｐｈｏｔｏにおけるエンコーダは、色変換部、プレフィルタ、周波数変換部、量子化部、予測部、及び符号化部を備えて構成されている。
【０００４】
周波数変換部は、入力された画素信号に対して所定の周波数変換処理（ＰＣＴ）を実行することにより、ハイパス（以下「ＨＰ」）成分、ローパス（以下「ＬＰ」）成分、及び直流（以下「ＤＣ」）成分の周波数データ（係数データ）を出力する。縦１６画素×横１６画素の１個のマクロブロック内には、輝度Ｙ、色差Ｕ、及び色差Ｖの各々毎に、ＨＰ成分の２４０個の周波数データと、ＬＰ成分の１５個の周波数データと、ＤＣ成分の１個の周波数データとが含まれる。
【０００５】
量子化部は、周波数変換部から入力された各成分の周波数データのうち、量子化係数で規定される桁数に相当する下位データをそれぞれ削除することにより、量子化後の周波数データ（ＨＰ成分、ＬＰ成分、及びＤＣ成分）を出力する。
【０００６】
符号化部は、予測部から入力された各成分の周波数データを、上位側の桁範囲内の上位データ（ＮＯＲＭＡＬ ＤＡＴＡ）と、下位側の桁範囲内の下位データ（ＦＬＥＸ ＢＩＴ）とに分割する。そして、符号化部は、各成分のＮＯＲＭＡＬ ＤＡＴＡに対して、エントロピー符号化処理をそれぞれ実行して出力する。また、符号化部は、各成分のＦＬＥＸ ＢＩＴを、エントロピー符号化することなく出力する。
【０００７】
また、ＨＤ Ｐｈｏｔｏにおけるデコーダは、色逆変換部、ポストフィルタ、周波数逆変換部、逆量子化部、逆予測部、及び復号部を備えて構成されている。デコーダは、エンコーダにおける処理と逆順序の処理を実行することによって、符号化された周波数データから画素信号を復元する。
【０００８】
なお、ＨＤ Ｐｈｏｔｏの詳細については、例えば下記非特許文献１に開示されており、ＪＰＥＧ ＸＲの詳細については、例えば下記非特許文献２又は下記非特許文献３に開示されている。
【０００９】
【非特許文献１】"HD Photo -Photographic Still Image File Format", [online], ２００６年１１月７日, Microsoft Corporation, [２００７年１０月１０日検索], インターネット＜URL: http://www.microsoft.com/whdc/xps/hdphotodpk.mspx＞
【非特許文献２】"Coding of Still Pictures -JBIG JPEG", [online], 19 December 2007, ISO/IEC JTC 1/SC 29/WG1 N 4392, [２００８年３月４日検索], インターネット＜URL: http://www.itscj.ipsj.or.jp/sc29/open/29view/29n9026t.doc＞
【非特許文献３】"Coding of Still Pictures -JBIG JPEG", [online], 14 September 2008, ISO/IEC JTC 1/SC 29/WG1 N 4739, [２００８年９月１７日検索], インターネット＜URL: http://www.itscj.ipsj.or.jp/sc29/open/29view/29n9749t.doc＞
【発明の開示】
【発明が解決しようとする課題】
【００１０】
図１４は、ＨＤ Ｐｈｏｔｏにおけるデコーダの構成の一部を示すブロック図である。処理部５０１，５０２には、符号化された複数の周波数データを含むデータストリームが入力される。処理部５０１は、ＮＯＲＭＡＬ ＤＡＴＡを復号する。処理部５０２は、ＦＬＥＸ ＢＩＴを復号する。処理部５０３は、処理部５０１から入力されたデータのうち、ＬＰ成分の１５個のデータの並び替え処理（Ａｄａｐｔｉｖｅ Ｓｃａｎ）を実行する。また、処理部５０３は、処理部５０１から入力されたデータのうち、ブロック毎に、ＨＰ成分の１５個のデータの並び替え処理を実行する。具体的には、非零データの出現頻度を示すテーブルを用いて、非零データの出現頻度が低くなるものほど後方に位置するように、データの並び替えが実行される。ここで、ＬＰ成分に関しては、１個のテーブルが準備されている。また、ＨＰ成分に関しては、そのマクロブロックのＨＰ成分の予測方向が左方向である場合に用いられるテーブル（以下「左方向用テーブル」と称す）と、上方向である場合に用いられるテーブル（以下「上方向用テーブル」と称す）との、合計２個のテーブルが準備されている。
【００１１】
処理部５０３による処理後のデータは、記憶部５０４に記憶される。また、処理部５０２による処理後のデータは、記憶部５０５に記憶される。
【００１２】
処理部５０６は、記憶部５０４，５０５から読み出したデータに対して、各サブブロック内での複数のブロックの並び替え処理、及び、ＮＯＲＭＡＬ ＤＡＴＡとＦＬＥＸ ＢＩＴとの結合処理を実行する。
【００１３】
処理部５０７は、処理部５０６から入力されたデータに対して、逆予測処理を実行する。ＤＣ成分に関する予測値は、エッジの有無に応じて、左のマクロブロックのＤＣ成分の値、上のマクロブロックのＤＣ成分の値、又は、左のマクロブロックのＤＣ成分の値と上のマクロブロックのＤＣ成分の値との平均値となる。
【００１４】
ＬＰ成分に関する予測値は、ＤＣ成分の予測方向に応じて、左のマクロブロックのＬＰ成分の値、上のマクロブロックのＬＰ成分の値、又はゼロ（つまり予測しない）となる。ここで、ＬＰ成分に関する予測は、特定のデータ（ＹＵＶ４４４の色空間の場合は、マクロブロック内の最上行の３個のデータと最左列の３個のデータ）についてのみ行われる。ＬＰ成分の予測のために必要なデータは、記憶部５０８に記憶されている。
【００１５】
ＨＰ成分に関する予測値は、ＬＰ成分の上記特定のデータの値に応じて、左のブロックのＨＰ成分の値、上のブロックのＨＰ成分の値、又はゼロとなる。ＬＰ成分と同様に、ＨＰ成分に関する予測は、特定のデータ（ＹＵＶ４４４の色空間の場合は、各ブロック内の最上行の３個のデータと最左列の３個のデータ）についてのみ行われる。
【００１６】
処理部５０７においてＨＰ成分の予測方向が求まると、その予測方向に関する情報は、データＳ１００として処理部５０３に通知される。処理部５０３は、データＳ１００に基づいて、左方向用テーブル及び上方向用テーブルの一方を選択する。
【００１７】
図１５は、図１４に示した構成の動作を示すタイミングチャートである。（Ａ）は、記憶部５０４，５０５にデータが書き込まれる期間を示しており、（Ｂ）は、処理部５０７において逆予測処理が実行される期間を示している。図１５では、連続する２個のマクロブロック（第０マクロブロック及び第１マクロブロック）に関する動作のみを示している。
【００１８】
図１５に示すように、第０マクロブロックのＬＰ成分のデータＬＰ０の書き込みが完了してから、第０マクロブロックのＨＰ成分のデータＨＰ０Ｙの書き込みが開始されるまでの間に、タイムラグＴ１００が生じている。同様に、第１マクロブロックのＬＰ成分のデータＬＰ１の書き込みが完了してから、第１マクロブロックのＨＰ成分のデータＨＰ１Ｙの書き込みが開始されるまでの間に、タイムラグＴ１０１が生じている。この原因は、処理部５０７において、ＬＰ成分のデータに対する逆予測処理が完了してＨＰ成分の予測方向が求まるまでは、処理部５０３において、左方向用テーブル及び上方向用テーブルの選択を行うことができないからである。
【００１９】
このように、図１４に示した構成によると、後段の逆予測処理部（処理部５０７）においてＨＰ成分の予測方向が求まるまで、前段の並び替え処理部（処理部５０３）は、ＨＰ成分のデータの並び替え処理の開始を待つ必要がある。そのため、並び替え処理部における待ち時間に起因して、デコーダ全体の処理が遅延するという問題がある。
【００２０】
本発明はかかる問題を解決するために成されたものであり、並び替え処理部における待ち時間を解消することにより、デコードの所要時間を短縮することが可能な画像処理装置を得ることを目的とするものである。
【課題を解決するための手段】
【００２１】
本発明の第１の態様に係る画像処理装置は、第１の周波数成分の第１のデータと、第２の周波数成分の第２のデータとを復号する復号処理部と、前記復号処理部によって処理された後の複数の第２のデータを、第１の予測方向に対応する、非零データの出現頻度を示す第１のテーブル、及び、第２の予測方向に対応する、非零データの出現頻度を示す第２のテーブルの一方を、第２のデータの予測方向に応じて選択して用いて並び替える、並び替え処理部と、前記並び替え処理部によって処理された後の第１のデータ及び第２のデータに対して逆予測処理を行う逆予測処理部とを備え、第２のデータの予測方向を求めるためには、逆予測処理後の第１のデータが必要であり、前記並び替え処理部は、前記復号処理部から入力された第１のデータに対して逆予測処理を行う第１の処理部と、前記第１の処理部によって逆予測処理が行われた第１のデータに基づいて、第２のデータの予測方向を求める第２の処理部と、前記第２の処理部によって求められた第２のデータの予測方向に基づいて、前記第１のテーブル及び前記第２のテーブルの一方を選択する第３の処理部とを有することを特徴とするものである。
【００２２】
第１の態様に係る画像処理装置によれば、並び替え処理部は、自身が有する第１の処理部によって、第１のデータに対する逆予測処理を行い、自身が有する第２の処理部によって、第２のデータの予測方向を求める。従って、後段の逆予測処理部において第２のデータの予測方向が求まることを待つことなく、並び替え処理部は、自身で求めた第２のデータの予測方向に基づいて、第１のテーブル及び第２のテーブルの一方を選択することができる。つまり、後段の逆予測処理部において第２のデータの予測方向が求まることを待つことなく、第２のデータに対する並び替え処理を開始することができる。その結果、並び替え処理部における待ち時間が解消されるため、デコードの所要時間を短縮することが可能となる。
【００２３】
本発明の第２の態様に係る画像処理装置は、第１の態様に係る画像処理装置において特に、第１のデータの逆予測処理を行うためには、第１のデータの予測方向に関する情報が必要であり、当該情報は、前記逆予測処理部から前記第１の処理部に入力されることを特徴とするものである。
【００２４】
第２の態様に係る画像処理装置によれば、第１のデータの予測方向に関する情報は、逆予測処理部から第１の処理部に入力される。従って、並び替え処理部は、第１のデータの予測方向を求めるための回路を、自らが有する必要はない。その結果、並び替え処理部の回路規模を削減することができる。
【００２５】
本発明の第３の態様に係る画像処理装置は、第１の態様に係る画像処理装置において特に、第１のデータの逆予測処理を行うためには、第１のデータの予測方向に関する情報が必要であり、前記並び替え処理部は、第１のデータの予測方向を求める第４の処理部をさらに有することを特徴とするものである。
【００２６】
第３の態様に係る画像処理装置によれば、並び替え処理部は、第１のデータの予測方向に関する情報を逆予測処理部から入手するのではなく、自身が有する第４の処理部によって第１のデータの予測方向を求める。従って、逆予測処理部によって第１のデータの予測方向が求まることを待つことなく、第１のデータに対する逆予測処理を開始することができる。その結果、デコードの所要時間を短縮することが可能となる。また、後段の逆予測処理部から第１のデータの予測方向に関する情報を入手するためのタイミング調整等が不要となる。
【００２７】
本発明の第４の態様に係る画像処理装置は、第１〜第３のいずれか一つの態様に係る画像処理装置において特に、第１のデータの逆予測処理を行うためには、前記並び替え処理部によって前回処理されたマクロブロック内の特定の第１のデータが必要であり、前記並び替え処理部は、その特定の第１のデータを記憶する記憶部をさらに有することを特徴とするものである。
【００２８】
第４の態様に係る画像処理装置によれば、並び替え処理部は、前回処理したマクロブロック内の特定の第１のデータを逆予測処理部から入手するのではなく、自身が有する記憶部に、その特定の第１のデータを記憶している。従って、逆予測処理部においてその特定の第１のデータが求まることを待つことなく、現在の処理対象のマクロブロックに関して、第１のデータに対する逆予測処理を開始することができる。その結果、デコードの所要時間を短縮することが可能となる。しかも、前回処理したマクロブロックは、現在処理対象のマクロブロックに対して、同一行で隣接するマクロブロックである。従って、前回処理されたマクロブロック内の特定の第１のデータの個数はさほど多くない（ＨＤ Ｐｈｏｔｏにおけるローパス成分のデータに関しては３個）ため、記憶部を追加することに起因する並び替え処理部の回路規模の増大を、最小限に抑えることができる。
【００２９】
本発明の第５の態様に係る画像処理装置は、第１〜第４のいずれか一つの態様に係る画像処理装置において特に、第１のデータの逆予測処理を行うためには、前記並び替え処理部によって前回よりも前に処理されたマクロブロック内の特定の第１のデータが必要であり、その特定の第１のデータは、前記逆予測処理部から前記第１の処理部に入力されることを特徴とするものである。
【００３０】
第５の態様に係る画像処理装置によれば、並び替え処理部において逆予測処理を行うために必要な特定の第１のデータは、逆予測処理部から並び替え処理部に入力される。従って、並び替え処理部は、特定の第１のデータを記憶しておくための記憶部を、自らが有する必要はない。その結果、並び替え処理部の回路規模を削減することができる。しかも、特定の第１のデータは、並び替え処理部によって前回よりも前に処理されたマクロブロックに関するデータであるため、逆予測処理部においてすでに求まっている。従って、並び替え処理部は、特定の第１のデータを待ち時間なく逆予測処理部から入手することができる。
【００３１】
本発明の第６の態様に係る画像処理装置は、データストリームに含まれる、第１の周波数成分の第１のデータと、第２の周波数成分の第２のデータとを復号する復号処理部と、前記復号処理部によって処理された後の複数の第２のデータを、第１の予測方向に対応する、非零データの出現頻度を示す第１のテーブルを用いて並び替える、第１の並び替え処理部と、前記第１の並び替え処理部による処理と並行して、前記復号処理部によって処理された後の複数の第２のデータを、第２の予測方向に対応する、非零データの出現頻度を示す第２のテーブルを用いて並び替える、第２の並び替え処理部と、第１のデータ及び第２のデータに対して逆予測処理を行う逆予測処理部とを備え、前記逆予測処理部による、第１のデータに対する逆予測処理によって、第２のデータの予測方向が求まり、当該第２のデータの予測方向に基づいて、前記第１の並び替え処理部及び前記第２の並び替え処理部の一方が選択され、選択された前記第１の並び替え処理部又は前記第２の並び替え処理部によって処理された第２のデータが、前記逆予測処理部に入力されることを特徴とするものである。
【００３２】
第６の態様に係る画像処理装置によれば、第１の予測方向に対応する第１のテーブルを用いて並び替えを行う第１の並び替え処理部と、第２の予測方向に対応する第２のテーブルを用いて並び替えを行う第２の並び替え処理部とを備える。そして、第１の並び替え処理部による並び替え処理と、第２の並び替え処理部による並び替え処理とが並行して行われ、後に逆予測処理部によって第２のデータの予測方向が求まると、第１及び第２の並び替え処理部のうちの正しい一方が選択される。従って、後段の逆予測処理部において第２のデータの予測方向が求まることを待つことなく、第１及び第２の並び替え処理部による第２のデータに対する並び替え処理を開始することができる。その結果、第１及び第２の並び替え処理部における待ち時間が解消されるため、デコードの所要時間を短縮することが可能となる。
【００３３】
本発明の第７の態様に係る画像処理装置は、第６の態様に係る画像処理装置において特に、前記逆予測処理部によって求められた第２のデータの予測方向に関する情報は、前記復号処理部に通知され、前記復号処理部は、当該情報に基づいて、次のマクロブロックに関する、データストリームにおける復号処理の開始位置を決定することを特徴とするものである。
【００３４】
現在処理対象のマクロブロックにおける第２のデータの予測方向に応じて、第２のデータのデータ長が異なる。つまり、現在処理対象のマクロブロックにおける第２のデータの予測方向に応じて、次回の処理対象のマクロブロックに関する、データストリームにおける復号処理の開始位置が異なる。第７の態様に係る画像処理装置によれば、逆予測処理部において求められた第２のデータの予測方向に関する情報は復号処理部に通知され、復号処理部は、当該情報に基づいて、次のマクロブロックに関する、データストリームにおける復号処理の開始位置を決定する。従って、復号処理部は、データストリームにおける適切な位置から、次のマクロブロックに関する復号処理を開始することができる。
【発明の効果】
【００３５】
本発明によれば、並び替え処理部における待ち時間が解消されるため、デコードの所要時間を短縮することが可能となる。
【発明を実施するための最良の形態】
【００３６】
以下、本発明の実施の形態について、図面を用いて詳細に説明する。異なる図面において同一の符号を付した要素は、同一又は相応する要素を示すものとする。なお、以下では、本発明をＨＤ Ｐｈｏｔｏにおけるデコーダに適用する例について述べるが、本発明の適用対象はこれに限定されるものではない。また、以下では、ＹＵＶ４４４の色空間を例にとり説明するが、本発明の適用対象はこれに限定されるものではない。
【００３７】
＜第１の実施の形態＞
図１は、本発明の第１の実施の形態に係るデコーダの構成の一部を示すブロック図である。図１の接続関係で示すように、デコーダは、復号処理部１，２、並び替え処理部３、記憶部４，５，８、結合処理部６、及び逆予測処理部７を備えて構成されている。
【００３８】
復号処理部１，２には、図示しないエンコーダによって符号化された複数の周波数データを含むデータストリームＤ１が入力される。
【００３９】
図２は、１個のマクロブロックに関するデータストリームＤ１の構成を示す図である。（Ａ）には、データストリームＤ１の全体を示しており、（Ｂ）には、輝度Ｙに関するＤＣ成分のデータの構成を示しており、（Ｃ）には、輝度Ｙに関するＬＰ成分のデータの構成を示しており、（Ｄ）には、輝度Ｙに関するＨＰ成分のデータの構成を示している。
【００４０】
図２の（Ａ）を参照して、データストリームＤ１は、輝度Ｙに関するＤＣ成分の１個のデータ、色差Ｕに関するＤＣ成分の１個のデータ、色差Ｖに関するＤＣ成分の１個のデータ、輝度Ｙに関するＬＰ成分の１５個のデータ、色差Ｕに関するＬＰ成分の１５個のデータ、色差Ｖに関するＬＰ成分の１５個のデータ、輝度Ｙに関するＨＰ成分の２４０個（１５個×１６ブロック）のデータ、色差Ｕに関するＨＰ成分の２４０個のデータ、及び色差Ｖに関するＨＰ成分の２４０個のデータが、この順に並んだ構成を有している。
【００４１】
図２の（Ｂ）を参照して、輝度Ｙに関するＤＣ成分のデータは、１個のＮＯＲＭＡＬ ＤＡＴＡの後ろに１個のＦＬＥＸ ＢＩＴが並んだ構成を有している。図２の（Ｃ）を参照して、輝度Ｙに関するＬＰ成分のデータは、１５個のＮＯＲＭＡＬ ＤＡＴＡの後ろに１５個のＦＬＥＸ ＢＩＴが並んだ構成を有している。図２の（Ｄ）を参照して、輝度Ｙに関するＨＰ成分のデータは、１個のブロック内の１５個のＮＯＲＭＡＬ ＤＡＴＡの後ろにそのブロック内の１５個のＦＬＥＸ ＢＩＴが並んだ構成が、１６個並んだ構成を有している。
【００４２】
図１を参照して、復号処理部１は、ＮＯＲＭＡＬ ＤＡＴＡを復号（エントロピー復号）する。また、復号処理部２は、ＦＬＥＸ ＢＩＴを復号する。
【００４３】
並び替え処理部３は、復号処理部１から入力されたデータＤ２のうち、ＬＰ成分の１５個のデータの並び替え処理（以下「Ａｄａｐｔｉｖｅ Ｓｃａｎ」と称す）を実行する。また、並び替え処理部３は、復号処理部５０１から入力されたデータＤ２のうち、ブロック毎に、ＨＰ成分の１５個のデータのＡｄａｐｔｉｖｅ Ｓｃａｎを実行する。具体的には、非零データの出現頻度を示すテーブルを用いて、非零データの出現頻度が低くなるものほど後方に位置するように、データＤ２の並び替えが実行される。
【００４４】
図３は、並び替え処理部３によるＡｄａｐｔｉｖｅ Ｓｃａｎを示す図である。（Ａ）は、１５個のデータの位置に割り当てられたｉｎｄｅｘ値を示しており、（Ｂ）は、テーブルＴＡの一例を示しており、（Ｃ）は、並び替え処理部３に入力される１５個のデータと、並び替え処理部３から出力される１５個のデータとを示している。
【００４５】
図３の（Ｂ）を参照して、テーブルＴＡにおいては、あるｉｎｄｅｘ値に対応する位置のデータの値がゼロでない場合（つまり非零データである場合）に、そのｉｎｄｅｘ値に対応するｃｏｕｎｔ値が「１」ずつインクリメントされる。そして、ｃｏｕｎｔ値の小さいｉｎｄｅｘ値ほど後方に位置するように、テーブルＴＡ内でのｉｎｄｅｘ値の並び替えが行われる。
【００４６】
図３の（Ｃ）を参照して、並び替え処理部３には、ｉｎｄｅｘ値が「０」である位置から順番に、１５個のデータが入力される。並び替え処理部３は、入力された１５個のデータの順序がテーブルＴＡにおけるｉｎｄｅｘ値の順序と等しくなるように、１５個のデータを並び替える。これにより、並び替え処理部３から出力されるデータにおいては、非零データの出現頻度が低くなるデータほど後方に位置することとなる。
【００４７】
ここで、ＬＰ成分に関しては、１個のテーブル（図７，８に示すテーブルＴＡＬＰ）が準備されている。また、ＨＰ成分に関しては、そのマクロブロックのＨＰ成分の予測方向が左方向である場合に用いられるテーブル（テーブルＴＡＨＰＨ）と、上方向である場合に用いられるテーブル（テーブルＴＡＨＰＶ）との、合計２個のテーブルが準備されている。なお、ＨＰ成分の予測方向が無しである場合（つまり予測しない場合）には、テーブルＴＡＨＰＨが用いられる。
【００４８】
図１を参照して、並び替え処理部３から出力されたデータＤ４は、記憶部４に入力され、記憶部４内で一時的に記憶される。また、復号処理部２から出力されたデータＤ３は、記憶部５に入力され、記憶部５内で一時的に記憶される。
【００４９】
結合処理部６は、記憶部４，５からデータＤ４，Ｄ３をそれぞれ読み出し、ＮＯＲＭＡＬ ＤＡＴＡであるデータＤ４とＦＬＥＸ ＢＩＴであるデータＤ３とを結合することにより、上位桁と下位桁とが揃ったデータＤ５を生成する。また、結合処理部６は、ＨＰ成分のデータＤ４，Ｄ３に関しては、１個のマクロブロック内の１６個のブロックを所定の順序で並び替える処理を行う。
【００５０】
逆予測処理部７は、データＤ５に対して逆予測処理を実行する。逆予測処理は、ＤＣ成分、ＬＰ成分、及びＨＰ成分の順序で行われる。
【００５１】
図４は、ＤＣ成分に関する逆予測処理を示す図である。図４には、４個のマクロブロックＭＢ１〜ＭＢ４に対応する４個のＤＣ成分のデータ１０１〜１０４を示している。現在の処理対象のデータ（差分データ）は、右下のマクロブロックＭＢ４のデータ１０４であるとする。なお、データ１０４の逆予測処理に必要な、逆予測処理後のデータ１０１〜１０３は、データＤ７として記憶部８に記憶されている。
【００５２】
逆予測処理部７は、輝度Ｙ及び色差Ｕ，Ｖのそれぞれに関して、データ１０１とデータ１０３との差の絶対値を求め、輝度Ｙの絶対値に所定値（例えば「４」）を乗じた後、３つの絶対値を加算することにより、水平方向のエッジの判定値を求める。同様に、輝度Ｙ及び色差Ｕ，Ｖのそれぞれに関して、データ１０１とデータ１０２との差の絶対値を求め、輝度Ｙの絶対値に所定値（例えば「４」）を乗じた後、３つの絶対値を加算することにより、垂直方向のエッジの判定値を求める。そして、逆予測処理部７は、水平方向のエッジの判定値に所定値（例えば「４」）を乗じた値が、垂直方向のエッジの判定値よりも小さい場合には、予測方向を上方向とする。この場合、予測値はデータ１０２の値となる。また、逆予測処理部７は、垂直方向のエッジの判定値に所定値（例えば「４」）を乗じた値が、水平方向のエッジの判定値よりも小さい場合には、予測方向を左方向とする。この場合、予測値はデータ１０３の値となる。また、逆予測処理部７は、上記のいずれの場合にも該当しない場合には、データ１０２の値とデータ１０３の値との平均値を、予測値とする。
【００５３】
逆予測処理部７は、差分データであるデータ１０４の値に、上記で求めた予測値を加算することにより、逆予測処理後のデータ１０４を得る。
【００５４】
なお、画素平面の左上角に位置するマクロブロックに関しては、上方向に隣接するマクロブロック及び左方向に隣接するマクロブロックが存在しないため、予測処理は実行されない。また、画素平面の左端の列に位置するマクロブロックに関しては、左方向に隣接するマクロブロックが存在しないため、予測方向は上方向となる。また、画素平面の上端の行に位置するマクロブロックに関しては、上方向に隣接するマクロブロックが存在しないため、予測方向は左方向となる。
【００５５】
図５は、ＬＰ成分に関する逆予測処理を示す図である。図５には、図４に対応させて、４個のマクロブロックＭＢ１〜ＭＢ４に対応する、合計６０個のＬＰ成分のデータを示している。現在の処理対象のデータは、右下のマクロブロックＭＢ４のデータ２０７〜２１２（差分データ）であるとする。なお、データ２０７〜２１２の逆予測処理に必要な、逆予測処理後のデータ２０１〜２０６は、データＤ７として記憶部８に記憶されている。
【００５６】
マクロブロックＭＢ４のＤＣ成分のデータ１０４（図４参照）に関する予測方向が上方向であり、かつ、ＬＰ成分に関する量子化係数がマクロブロックＭＢ４とマクロブロックＭＢ２とで等しい場合は、予測方向は上方向となる。この場合、各データ２０１，２０２，２０３の値が、各データ２０７，２０８，２０９に関する予測値となる。また、この場合、マクロブロックＭＢ４内のその他の１２個のデータに関しては、予測処理は実行されない。
【００５７】
マクロブロックＭＢ４のＤＣ成分のデータ１０４に関する予測方向が左方向であり、かつ、ＬＰ成分に関する量子化係数がマクロブロックＭＢ４とマクロブロックＭＢ３とで等しい場合は、予測方向は左方向となる。この場合、各データ２０４，２０５，２０６の値が、各データ２１０，２１１，２１２に関する予測値となる。また、この場合、マクロブロックＭＢ４内のその他の１２個のデータに関しては、予測処理は実行されない。
【００５８】
上記のいずれの場合にも該当しない場合には、マクロブロックＭＢ４内のいずれのデータに関しても、予測処理は実行されない。つまり予測値はゼロとなる。
【００５９】
逆予測処理部７は、差分データであるデータ２０７〜２０９又はデータ２１０〜２１２の値に、上記で求めた予測値を加算することにより、逆予測処理後のデータ２０７〜２１２を得る。
【００６０】
図６は、ＨＰ成分に関する逆予測処理を示す図である。図６には、１つのマクロブロックＭＢ４に対応する、合計２４０個のＨＰ成分の周波数データを示している。現在の処理対象のデータは、左から２列目かつ上から２行目のブロックに含まれるデータ３０７〜３１２（差分データ）であるとする。
【００６１】
図５を参照して、逆予測処理部７は、輝度Ｙに関する、逆予測処理後のデータ２０７〜２０９と、色差Ｕ，Ｖのそれぞれに関する、逆予測処理後のデータ２０７との全てを加算することにより、水平方向のエッジの判定値を求める。同様に、輝度Ｙに関する、逆予測処理後のデータ２１０〜２１２と、色差Ｕ，Ｖのそれぞれに関する、逆予測処理後のデータ２１０との全てを加算することにより、垂直方向のエッジの判定値を求める。
【００６２】
そして、逆予測処理部７は、水平方向のエッジの判定値に所定値（例えば「４」）を乗じた値が、垂直方向のエッジの判定値よりも小さい場合には、予測方向を左方向とする。この場合、図６を参照して、各データ３０４，３０５，３０６の値が、各データ３１０，３１１，３１２に関する予測値となる。また、この場合、そのブロック内のその他の１２個のデータに関しては、予測処理は実行されない。
【００６３】
また、逆予測処理部７は、垂直方向のエッジの判定値に所定値（例えば「４」）を乗じた値が、水平方向のエッジの判定値よりも小さい場合には、予測方向を上方向とする。この場合、各データ３０１，３０２，３０３の値が、各データ３０７，３０８，３０９に関する予測値となる。また、この場合、そのブロック内のその他の１２個のデータに関しては、予測処理は実行されない。
【００６４】
また、逆予測処理部７は、上記のいずれの場合にも該当しない場合には、そのブロック内のいずれのデータに関しても、予測処理を実行しない。つまり予測値はゼロとなる。
【００６５】
逆予測処理部７は、差分データであるデータ３０７〜３０９又はデータ３１０〜３１２の値に、上記で求めた予測値を加算することにより、逆予測処理後のデータ３０７〜３１２を得る。
【００６６】
図１を参照して、逆予測処理部７による逆予測処理後のデータＤ６は、図示しない逆量子化部に入力される。
【００６７】
図７は、並び替え処理部３の第１の構成例を示すブロック図である。図７の接続関係で示すように、並び替え処理部３は、逆予測処理部１０、処理部１１，１３、選択部１２、及び記憶部１４を備えて構成されている。記憶部１４には、テーブルＴＡＬＰ，ＴＡＨＰＨ，ＴＡＨＰＶが記憶されている。逆予測処理部１０は、結合部２０、記憶部２１、加算部２２、及び処理部２３を有して構成されている。
【００６８】
処理部１３には、図１に示した復号処理部１からデータＤ２が入力される。処理部１３は、ＤＣ成分のデータＤ２をそのまま出力する。また、処理部１３は、ＬＰ成分の１５個のデータＤ２に対して、テーブルＴＡＬＰを用いてＡｄａｐｔｉｖｅ Ｓｃａｎを実行する。また、処理部１３は、各ブロックのＨＰ成分の１５個のデータＤ２に対して、テーブルＴＡＨＰＨ及びテーブルＴＡＨＰＶの一方を用いてＡｄａｐｔｉｖｅ Ｓｃａｎを実行する。ここで、テーブルＴＡＨＰＨ，ＴＡＨＰＶの一方を選択するためには、現在の処理対象のマクロブロックに関する、ＨＰ成分の予測方向についての情報が必要である。並び替え処理部３は、その情報を、後段の逆予測処理部７（図１参照）から入手するのではなく、以下のようにして自ら生成する。以下の説明では、図５を参照して、現在の処理対象のマクロブロックがマクロブロックＭＢ４であるものとする。
【００６９】
並び替え処理部３における前回の処理対象のマクロブロックＭＢ３（つまり逆予測処理部７における現在の処理対象のマクロブロック）に関する、ＤＣ成分の逆予測処理後のデータ１０３（図４参照）が、データＤ２０（図１に示したデータＤ８の一部）として、逆予測処理部７から処理部２３に入力される。また、データ１０３とともに、データ１０１，１０２が、逆予測処理部７から処理部２３に入力される。データ１０１，１０２は記憶部８に記憶されており、逆予測処理部７は、記憶部８からデータ１０１，１０２を読み出して、処理部２３に入力する。なお、処理部２３が直接的に記憶部８からデータ１０１，１０２を読み出しても良い。また、逆予測処理部１０内にラインメモリを配置し、データ１０１，１０２をそのラインメモリ内に記憶しておき、処理部２３がそのラインメモリからデータ１０１，１０２を読み出しても良い。
【００７０】
処理部２３は、データ１０１〜１０３に基づいて、上述の逆予測処理部７と同様の手法によって、ＤＣ成分に関する予測方向を求める。つまり、処理部２３は、輝度Ｙ及び色差Ｕ，Ｖのそれぞれに関して、データ１０１とデータ１０３との差の絶対値を求め、輝度Ｙの絶対値に所定値（例えば「４」）を乗じた後、３つの絶対値を加算することにより、水平方向のエッジの判定値を求める。同様に、輝度Ｙ及び色差Ｕ，Ｖのそれぞれに関して、データ１０１とデータ１０２との差の絶対値を求め、輝度Ｙの絶対値に所定値（例えば「４」）を乗じた後、３つの絶対値を加算することにより、垂直方向のエッジの判定値を求める。そして、処理部２３は、水平方向のエッジの判定値に所定値（例えば「４」）を乗じた値が、垂直方向のエッジの判定値よりも小さい場合には、予測方向を上方向とする。また、処理部２３は、垂直方向のエッジの判定値に所定値（例えば「４」）を乗じた値が、水平方向のエッジの判定値よりも小さい場合には、予測方向を左方向とする。
【００７１】
次に、処理部２３は、上述の逆予測処理部７と同様の手法によって、ＬＰ成分に関する予測方向を求める。つまり、処理部２３は、ＤＣ成分に関する予測方向が上方向であり、かつ、ＬＰ成分に関する量子化係数が現在の処理対象のマクロブロックＭＢ４とその上のマクロブロックＭＢ２とで等しい場合は、ＬＰ成分に関する予測方向を上方向とする。また、処理部２３は、ＤＣ成分に関する予測方向が左方向であり、かつ、ＬＰ成分に関する量子化係数が現在の処理対象のマクロブロックＭＢ４とその左のマクロブロックＭＢ３とで等しい場合は、ＬＰ成分に関する予測方向を左方向とする。また、処理部２３は、上記のいずれの場合にも該当しない場合には、予測方向は無し（つまり予測しない）とする。
【００７２】
処理部２３によって求められたＬＰ成分の予測方向に関する情報は、データＤ１３として加算部２２に入力される。
【００７３】
図８は、並び替え処理部３の第２の構成例を示すブロック図である。図７の構成では、逆予測処理部７から処理部２３にデータ１０１〜１０３が入力され、ＤＣ成分及びＬＰ成分に関する予測方向を処理部２３によって求めた。これに対し、図８の構成では、処理部２３が省略され、逆予測処理部７がデータ１０１〜１０３に基づいてＤＣ成分及びＬＰ成分に関する予測方向を求める。そして、ＬＰ成分の予測方向に関する情報が、データＤ１３として逆予測処理部７から加算部２２に入力される。その他の構成及び動作は図７と同様である。
【００７４】
図７を参照して、結合部２０には、データＤ１０，Ｄ１１が入力される。データＤ１０は、Ａｄａｐｔｉｖｅ Ｓｃａｎ後のデータ２０７〜２１２（図５参照）に関するＮＯＲＭＡＬ ＤＡＴＡであり、データＤ１１は、データ２０７〜２１２に関するＦＬＥＸ ＢＩＴである。結合部２０は、ＮＯＲＭＡＬ ＤＡＴＡとＦＬＥＸ ＢＩＴとを結合することにより、上位桁と下位桁とが揃ったデータ２０７〜２１２を生成する。データ２０７〜２１２は、データＤ１２として加算部２２に入力される。
【００７５】
記憶部２１には、マクロブロックＭＢ４の左のマクロブロックＭＢ３（つまり並び替え処理部３において前回処理したマクロブロック）における、特定のデータ２０４〜２０６が記憶されている。記憶部２１に記憶されているデータ２０４〜２０６は、差分データではなく、逆予測処理後のデータである必要がある。
【００７６】
マクロブロックＭＢ３に関するＬＰ成分についての予測方向が左方向以外である場合は、結合部２０から出力されたデータ２０４〜２０６が、そのまま逆予測処理後のデータ２０４〜２０６となる。一方、マクロブロックＭＢ３に関するＬＰ成分についての予測方向が左方向である場合は、結合部２０から出力されたデータ２０４〜２０６に、マクロブロックＭＢ３の左のマクロブロック内の対応データ（つまりデータ２０４〜２０６と同一位置の逆予測処理後のデータ）を加算したものが、逆予測処理後のデータ２０４〜２０６となる。なお、逆予測処理後の対応データは、この時点では逆予測処理部７においてすでに求まっている。従って、並び替え処理部３は、逆予測処理部７からそのデータを入手することが可能である。
【００７７】
記憶部２１に記憶されているデータ２０４〜２０６は、データＤ１４として加算部２２に入力される。
【００７８】
また、マクロブロックＭＢ４の上のマクロブロックＭＢ２（つまり前回よりも前に処理したマクロブロック）における、逆予測処理後の特定のデータ２０１〜２０３が、データＤ１５（図１に示したデータＤ８の一部）として、逆予測処理部７から加算部２２に入力される。逆予測処理後のデータ２０１〜２０３は記憶部８に記憶されており、逆予測処理部７は、記憶部８からデータ２０１〜２０３を読み出して、加算部２２に入力する。なお、加算部２２が直接的に記憶部８からデータ２０１〜２０３を読み出しても良い。また、逆予測処理部１０内にラインメモリを配置し、データ２０１〜２０３をそのラインメモリ内に記憶しておき、加算部２２がそのラインメモリからデータ２０１〜２０３を読み出しても良い。
【００７９】
上記の通り、加算部２２には、現在の処理対象のマクロブロックＭＢ４に関する、ＬＰ成分の予測方向についての情報が、データＤ１３として入力されている。
【００８０】
データＤ１３で示される予測方向が左方向である場合には、加算部２２は、差分データである各データ２１０，２１１，２１２の値に、逆予測処理後のデータである各データ２０４，２０５，２０６の値をそれぞれ加算する。また、データＤ１３で示される予測方向が上方向である場合には、加算部２２は、差分データである各データ２０７，２０８，２０９の値に、逆予測処理後のデータである各データ２０１，２０２，２０３の値をそれぞれ加算する。また、データＤ１３で示される予測方向が無しである場合（つまり予測しない場合）には、加算部２２は、データ２０７〜２１２に対する加算処理を行わない。以上の結果、逆予測処理後のデータ２０７〜２１２が生成され、これらのデータ２０７〜２１２は、データＤ１６として処理部１１に入力される。
【００８１】
処理部１１は、データ２０７〜２１２に基づいて、上述の逆予測処理部７と同様の手法によって、ＨＰ成分に関する予測方向を求める。つまり、処理部１１は、輝度Ｙに関する、逆予測処理後のデータ２０７〜２０９と、色差Ｕ，Ｖのそれぞれに関する、逆予測処理後のデータ２０７との全てを加算することにより、水平方向のエッジの判定値を求める。同様に、処理部１１は、輝度Ｙに関する、逆予測処理後のデータ２１０〜２１２と、色差Ｕ，Ｖのそれぞれに関する、逆予測処理後のデータ２１０との全てを加算することにより、垂直方向のエッジの判定値を求める。そして、処理部１１は、水平方向のエッジの判定値に所定値（例えば「４」）を乗じた値が、垂直方向のエッジの判定値よりも小さい場合には、ＨＰ成分に関する予測方向を左方向とする。また、処理部１１は、垂直方向のエッジの判定値に所定値（例えば「４」）を乗じた値が、水平方向のエッジの判定値よりも小さい場合には、ＨＰ成分に関する予測方向を上方向とする。また、処理部１１は、上記のいずれの場合にも該当しない場合には、予測方向は無し（つまり予測しない）とする。
【００８２】
処理部１１によって求められたＨＰ成分の予測方向に関する情報は、データＤ１７として選択部１２に入力される。選択部１２は、データＤ１７に基づいて、テーブルＴＡＨＰＨ及びテーブルＴＡＨＰＶの一方を処理部１３に選択させるための選択信号Ｄ１８を生成する。選択信号Ｄ１８は処理部１３に入力される。データＤ１７で与えられる予測方向が左方向である場合、又は無しである場合には、左方向用のテーブルＴＡＨＰＨが選択される。また、データＤ１７で与えられる予測方向が上方向である場合には、上方向用のテーブルＴＡＨＰＶが選択される。
【００８３】
第１の実施の形態に係るデコーダ（画像処理装置）によれば、並び替え処理部３は、自身が有する逆予測処理部１０によって、ＬＰ成分のデータに対する逆予測処理を行い、自身が有する処理部１１によって、ＨＰ成分に関する予測方向を求める。従って、後段の逆予測処理部７においてＨＰ成分に関する予測方向が求まることを待つことなく、並び替え処理部３は、自身で求めたＨＰ成分に関する予測方向（データＤ１７）に基づいて、テーブルＴＡＨＰＨ及びテーブルＴＡＨＰＶの一方を選択することができる。従って、処理部１３は、後段の逆予測処理部７においてＨＰ成分に関する予測方向が求まることを待つことなく、ＨＰ成分のデータＤ２に対するＡｄａｐｔｉｖｅ Ｓｃａｎを開始することができる。その結果、並び替え処理部３における待ち時間が解消されるため、デコードの所要時間を短縮することが可能となる。
【００８４】
図９は、図１に示した構成の動作を示すタイミングチャートである。（Ａ）は、記憶部４，５にデータが書き込まれる期間を示しており、（Ｂ）は、逆予測処理部７において逆予測処理が実行される期間を示している。図９に示すように、第１マクロブロックのＬＰ成分のデータＬＰ１の書き込みが完了してから、第１マクロブロックのＨＰ成分のデータＨＰ１Ｙの書き込みが開始されるまでの間に、タイムラグは生じていない。同様に、第２マクロブロックのＬＰ成分のデータＬＰ２の書き込みが完了してから、第２マクロブロックのＨＰ成分のデータＨＰ２Ｙの書き込みが開始されるまでの間に、タイムラグは生じていない。
【００８５】
また、図８に示した構成によれば、ＬＰ成分の予測方向に関する情報（データＤ１３）は、逆予測処理部７から逆予測処理部１０に入力される。従って、並び替え処理部３は、ＬＰ成分の予測方向を求めるための回路（図７の処理部２３）を、自らが有する必要はない。その結果、並び替え処理部３の回路規模を削減することができる。
【００８６】
また、図７に示した構成によれば、並び替え処理部３は、ＬＰ成分の予測方向に関する情報（データＤ１３）を逆予測処理部７から入手するのではなく、自身が有する処理部２３によってＬＰ成分の予測方向を求める。従って、逆予測処理部７によってＬＰ成分の予測方向が求まることを待つことなく、ＬＰ成分に対する逆予測処理を開始することができる。その結果、デコードの所要時間を短縮することが可能となる。また、後段の逆予測処理部７からＬＰ成分の予測方向に関する情報を入手するためのタイミング調整等が不要となる。
【００８７】
また、第１の実施の形態に係るデコーダによれば、並び替え処理部３は、前回処理したマクロブロックＭＢ３内の特定のデータ２０４〜２０６を逆予測処理部７から入手するのではなく、自身が有する記憶部２１に、逆予測処理後のデータ２０４〜２０６を記憶している。従って、逆予測処理部７において逆予測処理後のデータ２０４〜２０６が求まることを待つことなく、現在の処理対象のマクロブロックＭＢ４に関して、ＬＰ成分に対する逆予測処理を開始することができる。その結果、デコードの所要時間を短縮することが可能となる。しかも、前回処理したマクロブロックＭＢ３は、現在の処理対象のマクロブロックＭＢ４に対して、同一行で隣接するマクロブロックである。従って、前回処理されたマクロブロックＭＢ３内のデータ２０４〜２０６の個数はさほど多くない（ＨＤ ＰｈｏｔｏにおけるＬＰ成分のデータに関しては３個）ため、記憶部２１を追加することに起因する並び替え処理部３の回路規模の増大を、最小限に抑えることができる。
【００８８】
また、第１の実施の形態に係るデコーダによれば、並び替え処理部３において逆予測処理を行うために必要な特定のデータ２０１〜２０３は、逆予測処理部７から並び替え処理部３に入力される。従って、並び替え処理部３は、データ２０１〜２０３を記憶しておくためのラインメモリを、自らが有する必要はない。その結果、並び替え処理部３の回路規模を削減することができる。しかも、データ２０１〜２０３は、並び替え処理部３によって前回よりも前に処理されたマクロブロックに関するデータであるため、逆予測処理部７においてすでに求まっている。従って、並び替え処理部３は、逆予測処理後のデータ２０１〜２０３を、待ち時間なく逆予測処理部から入手することができる。
【００８９】
＜第２の実施の形態＞
図１０は、本発明の第２の実施の形態に係るデコーダの構成の一部を示すブロック図である。図１０の接続関係で示すように、デコーダは、復号処理部１Ｈ，２Ｈ、並び替え処理部３Ｈ、記憶部４Ｈ，５Ｈ、復号処理部１Ｖ，２Ｖ、並び替え処理部３Ｖ、記憶部４Ｖ，５Ｖ、結合処理部６、逆予測処理部７、及び記憶部８を備えて構成されている。
【００９０】
復号処理部１Ｈ，１Ｖは、ＮＯＲＭＡＬ ＤＡＴＡを復号する。また、復号処理部２Ｈ，２Ｖは、ＦＬＥＸ ＢＩＴを復号する。
【００９１】
図１１は、並び替え処理部３Ｈの構成を示すブロック図である。並び替え処理部３Ｈは、処理部１３Ｈと記憶部１４Ｈとを備えて構成されている。記憶部１４Ｈには、テーブルＴＡＬＰ，ＴＡＨＰＨが記憶されている。
【００９２】
図１２は、並び替え処理部３Ｖの構成を示すブロック図である。並び替え処理部３Ｖは、処理部１３Ｖと記憶部１４Ｖとを備えて構成されている。記憶部１４Ｖには、テーブルＴＡＬＰ，ＴＡＨＰＶが記憶されている。
【００９３】
図１１を参照して、処理部１３Ｈには、図１０に示した復号処理部１ＨからデータＤ２Ｈが入力される。処理部１３Ｈは、ＤＣ成分のデータＤ２Ｈをそのまま出力する。また、処理部１３Ｈは、ＬＰ成分の１５個のデータＤ２Ｈに対して、テーブルＴＡＬＰを用いてＡｄａｐｔｉｖｅ Ｓｃａｎを実行する。また、処理部１３Ｈは、ＬＰ成分に対するＡｄａｐｔｉｖｅ Ｓｃａｎが完了すると、それに続けて、各ブロックのＨＰ成分の１５個のデータＤ２Ｈに対して、テーブルＴＡＨＰＨを用いてＡｄａｐｔｉｖｅ Ｓｃａｎを実行する。
【００９４】
図１２を参照して、処理部１３Ｖには、図１０に示した復号処理部１ＶからデータＤ２Ｖが入力される。処理部１３Ｖは、ＤＣ成分のデータＤ２Ｖをそのまま出力する。また、処理部１３Ｖは、ＬＰ成分の１５個のデータＤ２Ｖに対して、テーブルＴＡＬＰを用いてＡｄａｐｔｉｖｅ Ｓｃａｎを実行する。また、処理部１３Ｖは、ＬＰ成分に対するＡｄａｐｔｉｖｅ Ｓｃａｎが完了すると、それに続けて、各ブロックのＨＰ成分の１５個のデータＤ２Ｖに対して、テーブルＴＡＨＰＶを用いてＡｄａｐｔｉｖｅ Ｓｃａｎを実行する。
【００９５】
図１０を参照して、並び替え処理部３Ｈから出力されたデータＤ４Ｈは、記憶部４Ｈに入力され、記憶部４Ｈ内で一時的に記憶される。また、復号処理部２Ｈから出力されたデータＤ３Ｈは、記憶部５Ｈに入力され、記憶部５Ｈ内で一時的に記憶される。同様に、並び替え処理部３Ｖから出力されたデータＤ４Ｖは、記憶部４Ｖに入力され、記憶部４Ｖ内で一時的に記憶される。また、復号処理部２Ｖから出力されたデータＤ３Ｖは、記憶部５Ｖに入力され、記憶部５Ｖ内で一時的に記憶される。
【００９６】
結合処理部６は、ＤＣ成分及びＬＰ成分に関するデータＤ４Ｈ，Ｄ３Ｈを記憶部４Ｈ，５Ｈからそれぞれ読み出し、ＮＯＲＭＡＬ ＤＡＴＡであるデータＤ４ＨとＦＬＥＸ ＢＩＴであるデータＤ３Ｈとを結合することにより、上位桁と下位桁とが揃ったデータＤ５Ｈを生成する。また、結合処理部６は、ＤＣ成分及びＬＰ成分に関するデータＤ４Ｖ，Ｄ３Ｖを記憶部４Ｖ，５Ｖからそれぞれ読み出し、ＮＯＲＭＡＬ ＤＡＴＡであるデータＤ４ＶとＦＬＥＸ ＢＩＴであるデータＤ３Ｖとを結合することにより、上位桁と下位桁とが揃ったデータＤ５Ｖを生成する。ＤＣ成分及びＬＰ成分に関するデータＤ５Ｈ，Ｄ５Ｖは、逆予測処理部７に入力される。結合処理部６によるＤＣ成分及びＬＰ成分に対するこれらの処理は、並び替え処理部３Ｈ，３ＶによるＨＰ成分に対するＡｄａｐｔｉｖｅ Ｓｃａｎと並行して実行される。
【００９７】
逆予測処理部７において、前回の処理対象のマクロブロックに関するＤＣ成分の逆予測処理が完了すると、現在の処理対象のマクロブロックに関するＤＣ成分の予測方向が求まり、それに応じて、現在の処理対象のマクロブロックに関するＬＰ成分の予測方向が求まる。逆予測処理部７は、ＬＰ成分の予測方向に基づいて、ＬＰ成分に関する逆予測処理を行う。また、逆予測処理後のＬＰ成分の特定のデータ（図５に示したデータ２０７〜２１２）に基づいて、現在の処理対象のマクロブロックに関するＨＰ成分の予測方向を求める。
【００９８】
逆予測処理部７は、ＨＰ成分の予測方向に関する情報を、データＤ３０として結合処理部６に入力する。
【００９９】
データＤ３０で与えられる予測方向が左方向である場合、又は予測方向が無しである場合は、結合処理部６は、ＨＰ成分に関するデータＤ４Ｈ，Ｄ３Ｈを記憶部４Ｈ，５Ｈからそれぞれ読み出し、ＮＯＲＭＡＬ ＤＡＴＡであるデータＤ４ＨとＦＬＥＸ ＢＩＴであるデータＤ３Ｈとを結合することにより、上位桁と下位桁とが揃ったデータＤ５Ｈを生成する。また、結合処理部６は、ＨＰ成分のデータＤ４Ｈ，Ｄ３Ｈに関して、１個のマクロブロック内の１６個のブロックを所定の順序で並び替える処理を行う。結合処理部６によって生成されたＨＰ成分に関するデータＤ５Ｈは、逆予測処理部７に入力される。なお、この場合には、記憶部４Ｖ，５Ｖから結合処理部６への、ＨＰ成分に関するデータＤ４Ｖ，Ｄ３Ｖの読み出しは行われず、ＨＰ成分に関するデータＤ４Ｖ，Ｄ３Ｖは記憶部４Ｖ，５Ｖから削除される。
【０１００】
また、ＨＰ成分に関するデータＤ４Ｈ，Ｄ３Ｈが選択された旨の情報が、データＤ３１として、逆予測処理部７から復号処理部１Ｈ，２Ｈ，１Ｖ，２Ｖに入力される。復号処理部１Ｈ，２Ｈ，１Ｖ，２Ｖは、データＤ３１に基づいて、次回の処理対象のマクロブロックに関する、データストリームＤ１における復号処理の開始点を決定する。具体的には、現在の処理対象のマクロブロックに関して復号処理部２Ｈが処理した最終ビットの次のビットが、次回の処理対象のマクロブロックに関する復号処理の開始点として決定される。
【０１０１】
一方、データＤ３０で与えられる予測方向が上方向である場合は、結合処理部６は、ＨＰ成分に関するデータＤ４Ｖ，Ｄ３Ｖを記憶部４Ｖ，５Ｖからそれぞれ読み出し、ＮＯＲＭＡＬ ＤＡＴＡであるデータＤ４ＶとＦＬＥＸ ＢＩＴであるデータＤ３Ｖとを結合することにより、上位桁と下位桁とが揃ったデータＤ５Ｖを生成する。また、結合処理部６は、ＨＰ成分のデータＤ４Ｖ，Ｄ３Ｖに関して、１個のマクロブロック内の１６個のブロックを所定の順序で並び替える処理を行う。結合処理部６によって生成されたＨＰ成分に関するデータＤ５Ｖは、逆予測処理部７に入力される。なお、この場合には、記憶部４Ｈ，５Ｈから結合処理部６への、ＨＰ成分に関するデータＤ４Ｈ，Ｄ３Ｈの読み出しは行われず、ＨＰ成分に関するデータＤ４Ｈ，Ｄ３Ｈは記憶部４Ｈ，５Ｈから削除される。
【０１０２】
また、ＨＰ成分に関するデータＤ４Ｖ，Ｄ３Ｖが選択された旨の情報が、データＤ３１として、逆予測処理部７から復号処理部１Ｈ，２Ｈ，１Ｖ，２Ｖに入力される。復号処理部１Ｈ，２Ｈ，１Ｖ，２Ｖは、データＤ３１に基づいて、次回の処理対象のマクロブロックに関する、データストリームＤ１における復号処理の開始点を決定する。具体的には、現在の処理対象のマクロブロックに関して復号処理部２Ｖが処理した最終ビットの次のビットが、次回の処理対象のマクロブロックに関する復号処理の開始点として決定される。
【０１０３】
第２の実施の形態に係るデコーダ（画像処理装置）は、テーブルＴＡＨＰＨを用いてＨＰ成分の並び替えを行う並び替え処理部３Ｈと、テーブルＴＡＨＰＶを用いてＨＰ成分の並び替えを行う並び替え処理部３Ｖとを備えている。そして、並び替え処理部３ＨによるＡｄａｐｔｉｖｅ Ｓｃａｎと、並び替え処理部３ＶによるＡｄａｐｔｉｖｅ Ｓｃａｎとが並行して行われ、後に逆予測処理部７によってＨＰ成分に関する予測方向が求まると、並び替え処理部３Ｈ及び並び替え処理部３Ｖのうちの正しい一方が選択される。従って、後段の逆予測処理部７においてＨＰ成分の予測方向が求まることを待つことなく、並び替え処理部３Ｈ，３ＶによるＨＰ成分に対するＡｄａｐｔｉｖｅ Ｓｃａｎを開始することができる。その結果、並び替え処理部３Ｈ，３Ｖにおける待ち時間が解消されるため、デコードの所要時間を短縮することが可能となる。
【０１０４】
図１３は、図１０に示した構成の動作を示すタイミングチャートである。（Ａ）は、記憶部４Ｈ，４Ｖ，５Ｈ，５Ｖにデータが書き込まれる期間を示しており、（Ｂ）は、逆予測処理部７において逆予測処理が実行される期間を示している。図１３に示すように、第１マクロブロックのＬＰ成分のデータＬＰ１の書き込みが完了してから、第１マクロブロックのＨＰ成分のデータＨＰ１Ｙの書き込みが開始されるまでの間に、タイムラグは生じていない。同様に、第２マクロブロックのＬＰ成分のデータＬＰ２の書き込みが完了してから、第２マクロブロックのＨＰ成分のデータＨＰ２Ｙの書き込みが開始されるまでの間に、タイムラグは生じていない。
【０１０５】
また、現在の処理対象のマクロブロックにおけるＨＰ成分の予測方向に応じて、ＨＰ成分のデータのデータ長が異なる。つまり、現在の処理対象のマクロブロックにおけるＨＰ成分の予測方向に応じて、次回の処理対象のマクロブロックに関する、データストリームＤ１における復号処理の開始位置が異なる。第２の実施の形態に係るデコーダによれば、逆予測処理部７において求められたＨＰ成分の予測方向に関する情報（データＤ３１）は復号処理部１Ｈ，２Ｈ，１Ｖ，２Ｖに通知され、復号処理部１Ｈ，２Ｈ，１Ｖ，２Ｖは、当該情報に基づいて、次のマクロブロックに関する、データストリームＤ１における復号処理の開始位置を決定する。従って、復号処理部１Ｈ，２Ｈ，１Ｖ，２Ｖは、データストリームＤ１における適切な位置から、次のマクロブロックに関する復号処理を開始することができる。
【図面の簡単な説明】
【０１０６】
【図１】本発明の第１の実施の形態に係るデコーダの構成の一部を示すブロック図である。
【図２】１個のマクロブロックに関するデータストリームの構成を示す図である。
【図３】並び替え処理部によるＡｄａｐｔｉｖｅ Ｓｃａｎを示す図である。
【図４】ＤＣ成分に関する逆予測処理を示す図である。
【図５】ＬＰ成分に関する逆予測処理を示す図である。
【図６】ＨＰ成分に関する逆予測処理を示す図である。
【図７】並び替え処理部の第１の構成例を示すブロック図である。
【図８】並び替え処理部の第２の構成例を示すブロック図である。
【図９】図１に示した構成の動作を示すタイミングチャートである。
【図１０】本発明の第２の実施の形態に係るデコーダの構成の一部を示すブロック図である。
【図１１】並び替え処理部の構成を示すブロック図である。
【図１２】並び替え処理部の構成を示すブロック図である。
【図１３】図１０に示した構成の動作を示すタイミングチャートである。
【図１４】ＨＤ Ｐｈｏｔｏにおけるデコーダの構成の一部を示すブロック図である。
【図１５】図１４に示した構成の動作を示すタイミングチャートである。
【符号の説明】
【０１０７】
１，１Ｈ，１Ｖ，２，２Ｈ，２Ｖ  復号処理部
３，３Ｈ，３Ｖ  並び替え処理部
４，４Ｈ，４Ｖ，５，５Ｈ，５Ｖ，８，１４，２１  記憶部
７，１０  逆予測処理部
１１，１３，１３Ｈ，１３Ｖ，２３  処理部
１２  選択部
ＴＡＨＰＨ，ＴＡＨＰＶ  テーブル
【図１】
2010114538.tif 000003
【図２】
2010114538.tif 000004
【図３】
2010114538.tif 000005
【図４】
2010114538.tif 000006
【図５】
2010114538.tif 000007
【図６】
2010114538.tif 000008
【図７】
2010114538.tif 000009
【図８】
2010114538.tif 000010
【図９】
2010114538.tif 000011
【図１０】
2010114538.tif 000012
【図１１】
2010114538.tif 000013
【図１２】
2010114538.tif 000014
【図１３】
2010114538.tif 000015
【図１４】
2010114538.tif 000016
【図１５】
2010114538.tif 000017