(57)【要約】【課題】複雑な回路やデータ量の増加を伴うことなく、サブサンプリングされた画像データから容易に符号データを生成する。【解決手段】  入力された画像データのコンポーネント１，２がサブサンプリングされたものである場合、コンポーネント１，２に対して、ステージ１における所定方向の１次元ウェーブレット変換を省略する。また、このような２次元ウェーブレット変換により作成された係数データを符号化する場合、コンポーネント０による係数データと比較して不足しているサブバンドは、トランケーションされたものと見なして処理を実行する。【選択図】        図４
2007251967.tif 000002
【特許請求の範囲】
【請求項１】
画像データに対して水平方向及び／又は垂直方向のウェーブレット変換を１以上のステージにおいて行うウェーブレット変換手段を有し、
該ウェーブレット変換手段は、前記画像データに対する垂直方向及び／又は水平方向のウェーブレット変換を所定のステージにおいて行わないことを特徴とする画像処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置に関し、特に、ＪＰＥＧ−２０００に準拠した画像処理装置に関する。
【背景技術】
【０００２】
近年、静止画圧縮技術の次世代国際標準方式として、「ＪＰＥＧ−２０００」が標準化された。
【０００３】
この「ＪＰＥＧ−２０００」は、インターネットやディジタル・スチル・カメラ等の静止画圧縮技術として現在主流となっている「ＪＰＥＧ（Joint Photo-graphic Experts Group）」の後継とされる圧縮方式であり、現在のところ、データ圧縮技術を定める「Ｐａｒｔ−１」と呼ばれる部分が国際標準とされている。
【０００４】
「ＪＰＥＧ−２０００」では、現行の「ＪＰＥＧ」が利用している圧縮技術とは大きく異なり、ウェーブレット変換が採用されている。図２を用いて、ウェーブレット変換を用いた「ＪＰＥＧ−２０００」による符号化／復号化の一般的な動作を説明する。
【０００５】
図２は、図中左側から入力された画像データを符号化して図中右側から出力し、また、図中右側から入力された符号データを復号化して図中左側から出力するよう構成されたものである。
【０００６】
より詳細には、カラー変換部１０が、入力された画像データを色変換する。これは、例えばＲＧＢ（Ｒ＝Ｒｅｄ，Ｇ＝Ｇｒｅｅｎ，Ｂ＝Ｂｌｕｅ）の形式で入力された画像データを、ＹＣｂＣｒ（Ｙ＝輝度，Ｃｂ，ＣＲ＝色差）の形式に変換したり、その逆の変換を行うものである。以下に、例として、ＲＧＢ形式の画像データを色変換する場合の式（式１）を示す。
Ｇ＝Ｙｒ−（Ｃｒ＋Ｃｂ−２）／４    Ｙ＝（Ｒ＋２Ｇ＋Ｂ）／４
Ｒ＝Ｃｒ＋Ｇ                        Ｃｒ＝Ｒ−Ｇ
Ｂ＝Ｃｂ＋Ｇ                        Ｃｂ＝Ｂ−Ｇ              …（式１）
但し、カラー変換部１０は、必ずしも必要な構成ではなく、必要に応じて機能するものである。
【０００７】
次に図２に示す例では、ウェーブレット変換部２０において、画像データの各コンポーネントに対し独立して複数レベルの２次元離散ウェーブレット変換（ＤＷＴ）が行われる。この際、処理する画像をタイルと呼ばれる複数の矩形ブロックに分割して２次元離散ウェーブレット変換を行うことも可能である。但し、画像を複数のタイルに分割して処理を行う場合、ウェーブレット変換部２０，量子化部３０，及びエントロピー符号化部６０では、タイル単位で各処理が行われる。
【０００８】
・サブサンプリングされていないコンポーネントをウェーブレット変換した場合
以下に、サブサンプリングされていない３つのコンポーネント（例えばコンポーネント０＝Ｙ，コンポーネント１＝Ｃｂ，コンポーネント２＝Ｃｒとしてもよい）からなる画像データを１２８×１２８画素の大きさのタイルに分割し、レベル３の２次元離散ウェーブレット変換を行う場合について例を挙げて説明する。
【０００９】
「ＪＰＥＧ−２０００」で採用されているウェーブレット変換の一つである可逆変換が可能な整数型離散ウェーブレット変換（ＤＷＴ：Discrete Wavelet Transform）の式（式２）を示す。
Ｌ(k)＝ｘ(2k)＋(Ｈ(k)＋Ｈ(k+1))／４
Ｈ(k)＝ｘ(2k-1)−(ｘ(2k)＋ｘ(2k-2))／２    （式２）
ここで、ｘ(k)はｋ点（タイル上の画素ｋ）における画素値である。また、Ｌは平滑化、Ｈはエッジ検出を意味している。
【００１０】
以上に示す（式２）により、レベル３の２次元離散ウェーブレット変換を行った場合、上記３つのコンポーネントのデータは、図４に示すような、１０個のサブバンドの係数データに変換される。また、図８に、１０個のサブバンド（３ＬＬ，３ＨＬ，３ＬＨ，３ＨＨ，２ＨＬ，２ＬＨ，２ＨＨ，１ＨＬ，１ＬＨ，１ＨＨ）の係数データに変換されたコンポーネントの構成を示す。但し、例えば'３ＨＬ'は、ステージ３において水平成分にハイパスフィルタ（'Ｈ'）を、垂直成分にローパスフィルタ（'Ｌ'）を掛けることにより得られたサブバンドであることを示している。
【００１１】
このように、各コンポーネントをレベルに応じた複数の係数データに変換した後、必要であれば、これをタイル単位で量子化部３０において量子化し、その後、エントロピー符号化部６０においてエントロピー符号化する。
【００１２】
ここで、エントロピー符号化とは、各係数データをビットプレーンに分割し、各ビットプレーンに存在するビットデータを２値の算術符号器（ＭＱ符号器）で符号化していくものである。
【００１３】
このような構成において、可逆の符号、即ち、圧縮による画像劣化のない符号を得るためには、全サブバンドの全てのビットプレーンを符号化する必要がある。これに対し、例えばサブバンド毎に個別に下位のビットプレーンを破棄して符号化することで、圧縮率を上げることも可能である。
【００１４】
この下位のビットプレーンを破棄して圧縮率を上げることはトランケーションと呼ばれ、復号化した画像の画質に影響の少ないサブバンドのビットプレーンを優先して破棄することで、所定の圧縮率で最適な画質を得ることを可能とするものである。
【００１５】
・サブサンプリングされたコンポーネントをウェーブレット変換した場合
次に、色差信号がサブサンプリングされた画像データを符号化する場合について以下に説明する。
【００１６】
図３は、各入出力フォーマットのｘ方向（水平方向）ｙ方向（垂直方向）の画素比を示す図である。尚、図３は各入出力フォーマットのｘ方向ｙ方向の画素比を説明するための構成であり、本従来技術におけるウェーブレット変換の最小画素単位とは関係するものではない。
【００１７】
また、図３において、４：２：２（水平成分Ｈ＝２，垂直成分Ｖ＝１：以下、Ｈ２Ｖ１と表現する），４：２：２（Ｈ１Ｖ２），４：１：１（Ｈ１Ｖ１）の各フォーマットのコンポーネント１，２は、それぞれ前処理としてサブサンプリングされているものとする。
【００１８】
この構成において、例えば４：２：２（Ｈ２Ｖ１）フォーマットの場合では、ｘ方向にサブサンプリングされているため、ｘ方向のデータが間引きされてサブサンプリングされている。同様に、４：２：２（Ｈ１Ｖ２）フォーマットの場合では、ｙ方向のデータが間引きされ、４：１：１（Ｈ１Ｖ１）の場合では、ｘｙ方向両方のデータがサブサンプリング（間引き）されている。
【００１９】
ここで、図９に、４：２：２（Ｈ２Ｖ１）フォーマットの画像データに対してレベル３の２次元離散ウェーブレット変換を行った場合の、各コンポーネントのウェーブレット係数の様子を示す。
【００２０】
図９を参照すると、例えばタイルの大きさが１２８×１２８画素の場合、サブサンプリングされたコンポーネント１，２のデータ領域は、ｘ方向において間引きがなされているため、６４×１２８画素となる。
【００２１】
この領域のデータに対してレベル３の２次元離散ウェーブレット変換を実施した場合、最終的なサブバンドは図１０に示すように、水平成分の画素数が垂直成分の画素数に対して半分となり、サブサンプリングされていないコンポーネントのサブバンド（図８参照）とは異なった形状となる。
【特許文献１】特開２０００−２７０３３５号公報
【特許文献２】特開２０００−１３４６３９号公報
【発明の開示】
【発明が解決しようとする課題】
【００２２】
このように、Ｘ方向及び／又はＹ方向が間引きされたデータに対して２次元離散ウェーブレット変換を行った場合、コンポーネント毎にサブバンドの形状に差分が存在する。
【００２３】
このため、サブバンド毎にビットプレーンに分割してエントロピー符号化を実施する場合、サブサンプリングされたビットプレーンに対して画素間に'０'等を補間したり、前の画素に対する値を補間する等、存在する差分に応じた制御が必要となり、エントロピー符号化部６０の回路が複雑となるという問題が存在した。
【００２４】
更に、上記のように補間すると、補間した分、データ量が増加するため、処理量が増大するという問題も存在した。
【００２５】
本発明は、上記問題に鑑みてなされたものであり、複雑な回路やデータ量の増加を伴うことなく、サブサンプリングされた画像データから容易に符号データを生成することを可能にする画像処理装置を提供することを目的とする。
【課題を解決するための手段】
【００２６】
係る目的を達成するために、本発明は、画像データに対して水平方向及び／又は垂直方向のウェーブレット変換を１以上のステージにおいて行うウェーブレット変換手段を有し、該ウェーブレット変換手段が、前記画像データに対する垂直方向及び／又は水平方向のウェーブレット変換を所定のステージにおいて行わないことを特徴としている。
【００２７】
これにより、本発明では、複雑な回路やデータ量の増加を伴うことなく、サブサンプリングされた画像データから容易に符号データを生成することが可能になる。
【００２８】
更に、本発明の参考発明は、前記ウェーブレット変換手段が、前記画像データにおける所定方向のラインが間引きされている場合、該所定方向に対するウェーブレット変換を前記所定のステージにおいて行わず、前記画像データにおけるラインがいずれも間引かれていない場合、全てのステージにおいてウェーブレット変換を行うことを特徴としている。
【００２９】
これにより、本発明の参考発明では、サブサンプリングされた画像データに応じて、容易に符号データを生成することが可能になる。
【００３０】
更に、本発明の参考発明は、前記ウェーブレット変換手段により作成された係数データを符号化する符号化手段を有し、該符号化手段が、前記係数データに所定のサブバンドが含まれない場合、該所定のサブバンドに対する符号化は行わないことを特徴としている。
【００３１】
これにより、本発明の参考発明では、圧縮率が高い符号データを生成することが可能となる。
【００３２】
また、本発明の参考発明は、複数のコンポーネント毎に作成された画像データに対して水平方向の１次元ウェーブレット変換を施す１次元水平方向ウェーブレット変換手段と、前記画像データに対して垂直方向の１次元ウェーブレット変換を施す１次元垂直方向ウェーブレット変換手段と、より成る２次元ウェーブレット変換手段を有し、該逆ウェーブレット変換手段により１以上のステージにおいて２次元ウェーブレット変換を行う画像処理装置であって、第１のステージにおける前記１次元水平方向ウェーブレット変換手段及び／又は前記１次元垂直方向ウェーブレット変換手段の入出力先を切り替える入出力先切替え手段を有し、該入出力先切替え手段が、前記画像データの所定方向のラインが間引きされている場合、該画像データに対して、前記第１のステージにおいて前記所定方向に対する１次元ウェーブレット変換を行なわないように、前記入出力先を切り替えることを特徴としている。
【００３３】
これにより、本発明の参考発明では、サブサンプリングされた画像データに対して適切なウェーブレット変換を行なうことが可能となり、複雑な回路やデータ量の増加を伴うことなく、容易に符号データを生成することが可能になる。
【００３４】
更に、本発明の参考発明は、前記第１のステージの後段の入力先を切り替える入力先切替え手段を有し、該入力先切替え手段が、前記画像データの何れのラインも間引きされていない場合、前記第１のステージによる２次元ウェーブレット変換を施すことで作成された係数データが、前記後段に入力されるように前記入力先を切り替えることを特徴としている。
【００３５】
これにより、本発明の参考発明では、サブサンプリングされた画像データとサブサンプリングされていない画像データとを区別し、それぞれに応じた適切なウェーブレット変換を行なうことが可能となり、複雑な回路やデータ量の増加を伴うことなく、容易に符号データを生成することが可能になる。
【００３６】
また、本発明の参考発明は、ウェーブレット変換により生成された複数のサブバンドより成る係数データに対して水平方向及び／又は垂直方向の逆ウェーブレット変換を１以上のステージにおいて行う逆ウェーブレット変換手段を有する画像処理装置であって、前記逆ウェーブレット変換手段が、前記係数データに対して行なう逆ウェーブレット変換を所定のステージにおいて行なわないことを特徴としている。
【００３７】
これにより、本発明の参考発明では、目的に応じてサブサンプリングされた画像データ出力することが可能になる。
【００３８】
更に、本発明の参考発明は、前記逆ウェーブレット変換手段が、作成する画像データの形状に応じて、前記係数データに対する逆ウェーブレット変換を行なわないことを特徴としている。
【００３９】
これにより、本発明の参考発明では、サブサンプリングされた画像データとサブサンプリングされていない画像データとを容易に切り替えて出力することが可能になる。
【００４０】
また、本発明の参考発明は、１つ以上のサブバンドより成る係数データに対して水平方向の１次元逆ウェーブレット変換を施す１次元水平方向逆ウェーブレット変換手段と、前記係数データに対して垂直方向の１次元逆ウェーブレット変換を施す１次元垂直方向逆ウェーブレット変換手段と、より成る２次元逆ウェーブレット変換手段を有し、該２次元逆ウェーブレット変換手段により１以上のステージにおいて２次元逆ウェーブレット変換を行う画像処理装置であって、最後のステージにおける前記１次元水平方向逆ウェーブレット変換手段及び／又は前記１次元垂直方向逆ウェーブレット変換手段の入出力先を切り替える入出力先切替え手段を有し、該入出力先切替え手段が、作成する画像データの形状に応じて、前記係数データに対し、前記最後のステージにおいて水平方向及び／又は垂直方向の１次元逆ウェーブレット変換を行なわないように、前記入出力先を切り替えることを特徴としている。
【００４１】
これにより、本発明の参考発明では、目的に応じて適切な逆ウェーブレット変換が行なわれて作成された、サブサンプリングされた画像データ出力することが可能になる。
【００４２】
更に、本発明の参考発明は、前記最後のステージの後段の入力先を切り替える入力先切替え手段を有し、該入力先切替え手段が、前記最後のステージによる２次元逆ウェーブレット変換が前記係数データに対して施されていない画像データを作成する場合、前記最後のステージによる２次元逆ウェーブレット変換が施されていない画像データが前記後段に入力されるように前記入力先を切り替えることを特徴としている。
【００４３】
これにより、本発明の参考発明では、目的の画像データが、サブサンプリングされた画像データであるかサブサンプリングされていない画像データであるかを区別し、これに応じて適切な逆ウェーブレット変換を施すことが可能となる。
【００４４】
また、本発明の参考発明は、画像から複数のコンポーネント毎に画素データを読み取る画素データ読取り手段を有する画像処理装置であって、前記画素データ読取り手段が、入力の対象とするコンポーネントを画素単位又はタイル単位又はライン単位で切り替えて、前記画素データを読み取ることを特徴としている。
【００４５】
これにより、本発明の参考発明では、ウェーブレット変換を行なう際に必要となるバッファが大きくならないように、画像データを入出力することが可能となる。
【００４６】
更に、本発明の参考発明は、前記画素データ読取り手段が、異なるコンポーネントの画素データを、１度に１つ又は２つ以上並列に読み取ることを特徴としている。
【００４７】
これにより、本発明の参考発明では、ウェーブレット変換を行なう際に必要となるバッファが大きくならないように、画像データを入出力することが可能となるだけでなく、画素データを並列に読み取ることが可能となる。
【００４８】
更に、本発明の参考発明は、前記複数のコンポーネントは、第１から第３のコンポーネントであり、前記画素データ読取り手段が、前記第２及び第３のコンポーネントの画像データにおける垂直方向のラインを間引く場合、前記第１のコンポーネントの画素データと前記第２のコンポーネントの画素データと前記第３のコンポーネントの画素データとを２：１：１の割合で読み取るように、前記コンポーネントを切り替えることを特徴としている。
【００４９】
これにより、本発明の参考発明では、ウェーブレット変換を行なう際に必要となるバッファが大きくならないように、適切にサブサンプリングされた画像データを読み取ることが可能となる。
【００５０】
更に、本発明の参考発明は、前記画素データ読取り手段が、前記第２及び第３のコンポーネントの画像データにおける水平方向のラインをさらに間引く場合、前記第２及び第３のコンポーネントにおける垂直方向の画素データを１画素飛びに読み取ることを特徴としている。
【００５１】
これにより、本発明の参考発明では、ウェーブレット変換を行なう際に必要となるバッファが大きくならないように、適切にサブサンプリングされた画像データを読み取ることが可能となる。
【００５２】
更に、本発明の参考発明は、前記複数のコンポーネントは、第１から第３のコンポーネントであり、前記画素データ読取り手段が、前記第２及び第３のコンポーネントの画素データにおける水平成分のラインを間引く場合、前記第１のコンポーネントの画素データと前記第２のコンポーネントの画素データ又は前記第３のコンポーネントの画素データとを２：１の割合で読み取るように、前記コンポーネントを切り替え、また、前記第２のコンポーネントと前記第３のコンポーネントとをライン毎に切り替えることを特徴としている。
【００５３】
これにより、本発明の参考発明では、ウェーブレット変換を行なう際に必要となるバッファが大きくならないように、適切にサブサンプリングされた画像データを読み取ることが可能となる。
【００５４】
更に、本発明の参考発明は、画像データに対して水平方向及び／又は垂直方向のウェーブレット変換を１以上のステージにおいて行うウェーブレット変換工程を有する画像処理方法であって、該ウェーブレット変換工程が、前記画像データに対する垂直方向及び／又は水平方向のウェーブレット変換を所定のステージにおいて行わないことを特徴としている。
【００５５】
これにより、本発明の参考発明では、複雑な回路やデータ量の増加を伴うことなく、サブサンプリングされた画像データから容易に符号データを生成することが可能になる。
【００５６】
更に、本発明の参考発明は、前記ウェーブレット変換工程が、前記画像データにおける所定方向のラインが間引きされている場合、該所定方向に対するウェーブレット変換を前記所定のステージにおいて行わず、前記画像データにおけるラインがいずれも間引かれていない場合、全てのステージにおいてウェーブレット変換を行うことを特徴としている。
【００５７】
これにより、本発明の参考発明では、サブサンプリングされた画像データに応じて、容易に符号データを生成することが可能になる。
【００５８】
更に、本発明の参考発明は、前記ウェーブレット変換工程において作成された係数データを符号化する符号化工程を有し、該符号化工程が、前記係数データに所定のサブバンドが含まれない場合、該所定のサブバンドに対する符号化は行わないことを特徴としている。
【００５９】
これにより、本発明の参考発明では、圧縮率が高い符号データを生成することが可能となる。
【００６０】
また、本発明の参考発明は、ウェーブレット変換により生成された複数のサブバンドより成る係数データに対して水平方向及び／又は垂直方向の逆ウェーブレット変換を１以上のステージにおいて行う逆ウェーブレット変換工程を有する画像処理方法であって、前記逆ウェーブレット変換方法が、前記係数データに対して行なう逆ウェーブレット変換を所定のステージにおいて行なわないことを特徴としている。
【００６１】
これにより、本発明の参考発明では、目的に応じてサブサンプリングされた画像データ出力することが可能になる。
【００６２】
更に、本発明の参考発明は、前記逆ウェーブレット変換工程は、作成する画像データの形状に応じて、前記係数データに対する逆ウェーブレット変換を行なわないことを特徴としている。
【００６３】
これにより、本発明の参考発明では、サブサンプリングされた画像データとサブサンプリングされていない画像データとを容易に切り替えて出力することが可能になる。
【００６４】
また、本発明の参考発明は、画像から複数のコンポーネント毎に画素データを読み取る画素データ読取り工程を有する画像読取り方法であって、前記画素データ読取り工程が、入力の対象とするコンポーネントを画素単位又はタイル単位又はライン単位で切り替えて、前記画素データを読み取ることを特徴としている。
【００６５】
これにより、本発明の参考発明では、ウェーブレット変換を行なう際に必要となるバッファが大きくならないように、画像データを入出力することが可能となる。
【００６６】
更に、本発明の参考発明は、前記画素データ読取り工程が、異なるコンポーネントの画素データを、１度に１つ又は２つ以上並列に読み取ることを特徴としている。
【００６７】
これにより、本発明の参考発明では、ウェーブレット変換を行なう際に必要となるバッファが大きくならないように、画像データを入出力することが可能となるだけでなく、画素データを並列に読み取ることが可能となる。
【００６８】
更に、本発明の参考発明は、前記複数のコンポーネントが、第１から第３のコンポーネントであり、前記画素データ読取り工程が、前記第２及び第３のコンポーネントの画像データにおける垂直方向のラインを間引く場合、前記第１のコンポーネントの画素データと前記第２のコンポーネントの画素データと前記第３のコンポーネントの画素データとを２：１：１の割合で読み取るように、前記コンポーネントを切り替えることを特徴としている。
【００６９】
これにより、本発明の参考発明では、ウェーブレット変換を行なう際に必要となるバッファが大きくならないように、適切にサブサンプリングされた画像データを読み取ることが可能となる。
【００７０】
更に、本発明の参考発明は、前記画素データ読取り工程が、前記第２及び第３のコンポーネントの画像データにおける水平方向のラインをさらに間引く場合、前記第２及び第３のコンポーネントにおける垂直方向の画素データを１画素飛びに読み取ることを特徴としている。
【００７１】
これにより、本発明の参考発明では、ウェーブレット変換を行なう際に必要となるバッファが大きくならないように、適切にサブサンプリングされた画像データを読み取ることが可能となる。
【００７２】
更に、本発明の参考発明は、前記複数のコンポーネントが、第１から第３のコンポーネントであり、前記画素データ読取り工程が、前記第２及び第３のコンポーネントの画素データにおける水平成分のラインを間引く場合、前記第１のコンポーネントの画素データと前記第２のコンポーネントの画素データ又は前記第３のコンポーネントの画素データとを２：１の割合で読み取るように、前記コンポーネントを切り替え、また、前記第２のコンポーネントと前記第３のコンポーネントとをライン毎に切り替えることを特徴としている。
【００７３】
これにより、本発明の参考発明では、ウェーブレット変換を行なう際に必要となるバッファが大きくならないように、適切にサブサンプリングされた画像データを読み取ることが可能となる。
【発明の効果】
【００７４】
以上、説明したように、本発明によれば、複雑な回路やデータ量の増加を伴うことなく、サブサンプリングされた画像データから容易に符号データを生成することが可能になる。
【発明を実施するための最良の形態】
【００７５】
〔本発明の特徴〕
本発明は、ＪＰＥＧ−２０００を用いた画像圧縮において、従来の方法よりも圧縮効果を向上させることを可能にするものである。
【００７６】
これを実現するにあたり、本発明は、従来技術において間引きされた画像データを補間するために挿入される'０'ビットをまとめて、いわゆる'０'ビットプレーンを形成する。ここで'０'ビットプレーンとは、全て'０'の値で形成されたビットプレーンである。
【００７７】
即ち、例えばＹ，Ｃｂ，Ｃｒの３つのコンポーネント０（＝Ｙ），１（＝Ｃｂ），２（＝Ｃｒ）より成り、１タイルが１２８×１２８画素から構成された画像データであって、コンポーネント１，２におけるｙ方向の画素が１／２に間引きされ、６４×１２８画素とされた画像データに対して、ＪＰＥＧ−２０００に準じた２次元離散ウェーブレット変換を行う場合、従来技術では、コンポーネント１，２における各画素間に'０'を補間することで、全てのコンポーネントで同一の大きさ（１２８×１２８画素）とする必要があった。
【００７８】
これに対し、本発明では、コンポーネント１，２に対して'０'ビットプレーンを付加することで、全てのコンポーネントで同一の大きさ（１２８×１２８画素）となるように形成する。
【００７９】
ＪＰＥＧ−２０００において、この'０'ビットプレーンは、１ビットのデータに圧縮される。従って、本発明では、補間を'０'ビットプレーンを付加することで行うため、より高圧縮が実現される。
【００８０】
但し、本発明において'０'ビットプレーンが形成される領域はデータフォーマット毎に確定しているため、実際には、'０'ビットプレーンを付加する処理を省き、'０'ビットプレーンが所定のビットプレーンに形成されていると仮定して処理を実行する。
【００８１】
〔第１の実施形態〕
以下、本発明を好適に実施した第１の実施形態について図面を用いて詳細に説明する。
【００８２】
（第１の実施形態の構成）
本実施形態は、図１に示す画像処理装置において、ＪＰＥＧ−２０００による圧縮率を向上させるためのものである。
【００８３】
図１において、符号化／復号化処理部２は、図２に示すような機能ブロックを有して構成されるものであり、入力された画像データに対してカラー変換やウェーブレット変換や量子化や係数順序制御や係数モデリングやエントロピー符号化等の処理を施して符号化し、また、入力された符号データを上記の逆処理を施して復号化するものである。
【００８４】
また、図１において、画像読取部５は、ＣＣＤカメラ等で構成されるものであり、Ａ／Ｄ変換部６は、画像読取部５で読み取られた画像データをＡ／Ｄ変換して出力するものである。
【００８５】
また、Ｉ／Ｏインタフェース７は、Ａ／Ｄ変換部６，ＲＡＭ８，バス１，又は外部機器間のデータの送受信を仲介するインタフェースである。
【００８６】
更に、ＣＰＵ３は、各部の制御等を実行し、メモリ４は、ＣＰＵ３や符号化／復号化処理部２の作業領域等として機能する。
【００８７】
この構成において、符号化／復号化処理部２の処理動作について、以下に図面を用いて詳細に説明する。
【００８８】
（符号化方法）
まず、符号化／復号化処理部２における符号化方法に関し、図面を用いて説明する。但し、以下の説明では、１タイルが１２８×１２８画素で構成されている場合を例に挙げて説明する。また、符号化／復号化処理部２におけるＪＰＥＧ−２０００の符号化機能ブロックの構成は、図２に示すものを引用する。但し、本実施形態では、ウェーブレット変換部２０の構成及び動作が上述の説明とは異なり、以下に示すものとなる。
【００８９】
また、以下の説明では、便宜上、画像データのデータ形式を、４：４：４フォーマット，４：２：２（Ｈ２Ｖ１）フォーマット，４：２：２（Ｈ１Ｖ２）フォーマット，４：１：１（４：２：０）フォーマットというデータ形式で表している。
【００９０】
４：４：４フォーマットとは、ＲＧＢ又はＹＣｂＣｒ形式の画像データにおいて、各コンポーネント（例えばＹ：Ｃｂ：Ｃｒ）の画素数の比が４：４：４（＝１：１：１）である、即ち、間引きされていないデータを指す。
【００９１】
また、４：２：２（Ｈ２Ｖ１）フォーマットは、各コンポーネントの画素数の比が４：２：２であり、垂直方向（ｙ方向）の画素が間引きされているデータを指し、４：２：２（Ｈ１Ｖ２）フォーマットは、各コンポーネントの画素数の比が４：２：２であり、水平方向（ｘ方向）の画素が間引きされていデータを指す。
【００９２】
更に、４：１：１（Ｈ１Ｖ１）フォーマットは、各コンポーネントの画素数の日が４：１：１であり、垂直方向及び水平方向の画素が間引きされているデータを指す。
【００９３】
また、本実施形態では、ウェーブレット変換部２０に入力される画像データがＹＣｂＣｒ形式であり、また、実行されるウェーブレット変換がレベル３までであるように構成した場合について説明する。
【００９４】
・４：２：２（Ｈ２Ｖ１）フォーマットにサブサンプリングされた画像データを符号化する場合
まず、本実施形態において、４：２：２（Ｈ２Ｖ１）フォーマットにサブサンプリングされた画像データを符号化する方法を説明する。
【００９５】
図５は、４：２：２（Ｈ２Ｖ１）フォーマットの画像データに対して実行されるウェーブレット変換をステージ毎に説明するための図である。
【００９６】
図５を参照すると、４：２：２（Ｈ２Ｖ１）フォーマットの画像データにおけるコンポーネント１，２は、ｘ方向にサブサンプリング（間引き）がなされているため、入力データが６４画素×１２８画素となる。また、出力データも同様に６４画素×１２８画素となる。
【００９７】
本実施形態では、このように６４画素×１２８画素の画像データが入力されると、ウェーブレット変換部２０において、コンポーネント１，２のデータに関しては既にｘ方向に対してローパスフィルタがかかったデータが入力されたとみなす。従って、図５中、ステージ１では、縦方向の変換のみを実行する。また、以降のステージ２，３では、縦横共に１回ずつの変換を実行する。
【００９８】
このように処理を実行することで、コンポーネント１，２に対して最終的に得られる係数データは、３ＬＬ〜２ＨＨまで及び１ＬＨのみとなり、サブバンドの形状が図１１に示すようになる。
【００９９】
但し、サブバンドの大きさは、何れのコンポーネントに関しても同じとする必要がある。従って、コンポーネント１，２に関するサブバンドでは、１ＨＬと１ＨＨとの係数データが存在するものと仮定して以降の処理が実行される。
【０１００】
即ち、図１１に示す係数データをエントロピー符号化する際、エントロピー符号化部６０は、予め存在すると仮定された１ＨＬ及び１ＨＨのサブバンドの係数データが全て破棄された（トランケーションされた）とみなして符号化を実行する。これにより、本実施形態では、ＪＰＥＧ−２０００に準拠した符号が生成される。
【０１０１】
また、以上の方法では、各サブバンドの領域の大きさが、全てのコンポーネントにおいて同じであると見なすことが可能であるため、符号化の制御方法も同じとなる。従って、本実施形態では複雑な回路等を追加構成する必要なく、ＪＰＥＧ−２０００に準拠した符号を生成することができる。
【０１０２】
・４：２：２（Ｈ１Ｖ２）フォーマットにサブサンプリングされた画像データを符号化する場合
次に、本実施形態において、４：２：２（Ｈ１Ｖ２）フォーマットにサブサンプリングされた画像データを符号化する方法を説明する。
【０１０３】
図６は、４：２：２（Ｈ１Ｖ２）フォーマットの画像データに対して実行されるウェーブレット変換をステージ毎に説明するための図である。
【０１０４】
図６を参照すると、コンポーネント１，２は、ｙ方向にサブサンプリング（間引き）がなされているため、入力データが１２８画素×６４画素となる。また、出力データも同様に１２８画素×６４画素となる。
【０１０５】
本実施形態では、このように１２８画素×６４画素の画像データが入力されると、ウェーブレット変換部２０において、コンポーネント１，２のデータに関しては既にｙ方向に対してローパスフィルタがかかったデータが入力されたとみなす。従って、図６中、ステージ１では、横方向の変換のみを実行する。また、以降のステージ２，３では、縦横共に１回ずつの変換を実行する。
【０１０６】
このように処理を実行することで、コンポーネント１，２に対して最終的に得られる係数データは、３ＬＬ〜２ＨＨまで及び１ＨＬのみとなり、サブバンドの形状が、図１１に示す構成において１ＬＨを１ＨＬに置き換えたものとなる。
【０１０７】
従って、以降の処理は、上記と同様に、コンポーネント１，２に関するサブバンドでは、１ＬＨと１ＨＨとの'０'ビットプレーンが存在するものと仮定し、１ＬＨと１ＨＨとの係数データを破棄してエントロピー符号化を実行し、ＪＰＥＧ−２０００に準拠した符号を生成する。
【０１０８】
この場合においても、各サブバンドの領域の大きさが、全てのコンポーネントにおいて同じであると見なすことが可能であるため、符号化の制御方法も同じとなり、複雑な回路等を追加構成する必要なくＪＰＥＧ−２０００に準拠した符号を生成することができる。
【０１０９】
・４：１：１（Ｈ１Ｖ１）フォーマットにサブサンプリングされた画像データを符号化する場合
また、本実施形態において、４：１：１（Ｈ１Ｖ１）フォーマットにサブサンプリングされた画像データを符号化する方法を説明する。
【０１１０】
図７は、４：１：１（Ｈ１Ｖ１）フォーマットの画像データに対して実行するウェーブレット変換をステージ毎に説明するための図である。
【０１１１】
図７を参照すると、コンポーネント１，２は、ｘ方向及びｙ方向にサブサンプリング（間引き）がなされているため、縦横共に１／２の入力データ（６４画素×６４画素）となる。また、出力されるデータも同様に６４画素×６４画素の出力データとなる。
【０１１２】
本実施形態では、このように６４画素×６４画素の画像データが入力されると、ウェーブレット変換部２０において、コンポーネント１，２のデータに関しては既にｘ方向及びｙ方向に対してローパスフィルタがかかったデータが入力された、即ち、１ＬＬのデータが入力されたとみなす。従って、本実施形態では、ステージ１，２において縦横共に１回ずつの変換を実行し、３回目の変換、即ち、ステージ３を省略する。
【０１１３】
このように処理を実行することで、コンポーネント１，２に対して最終的に得られる係数データは、３ＬＬ〜２ＨＨまでとなる。
【０１１４】
従って、以降の処理は、コンポーネント１，２に関するサブバンドでは、１ＨＬと１ＬＨと１ＨＨとの'０'ビットプレーンが存在するものと仮定し、１ＨＬと１ＬＨと１ＨＨとの係数データを破棄してエントロピー符号化を実行し、ＪＰＥＧ−２０００に準拠した符号を生成する。
【０１１５】
この場合においても、各サブバンドの領域の大きさが、全てのコンポーネントにおいて同じであると見なすことが可能であるため、符号化の制御方法も同じとなり、複雑な回路等を追加構成する必要なく、ＪＰＥＧ−２０００に準拠した符号を生成することができる。
【０１１６】
このように、本実施形態では、何れのコンポーネントにおいてもサブバンドの形状が同一であるとみなすことが可能であるため、入力フォーマットの形式を意識することなく、一定の処理によるエントロピー符号化でＪＰＥＧ−２０００に準拠した符号を得ることが可能となる。
【０１１７】
即ち、ＪＰＥＧ−２０００による画像符号化を行う装置において、例えば色差データがサブサンプリングされたＹＣｂＣｒなどの画像データを入力する際、そのサブサンプリングされたＣｂ，Ｃｒに対するウェーブレット変換の次数を換えるのみで、ＪＰＥＧ−２０００フォーマットに準拠した符号を生成することが可能となる。
【０１１８】
（ウェーブレット変換を実行するための構成）
次に、本実施形態において、上記した符号化方法を実現する際のウェーブレット変換を実行する構成を図１２のブロック図を用いて詳細に説明する。
【０１１９】
図１２は、２次元離散ウェーブレット変換を行うウェーブレット変換部２０の構成例を示すブロック図である。また、図１２において、『Ｈ』はｘ方向の１次元離散ウェーブレット変換を実行するブロック（以下、水平方向１次元離散ウェーブレット変換部という）であり、『Ｖ』はｙ方向の１次元離散ウェーブレット変換を実行するブロック（以下、垂直方向１次元離散ウェーブレット変換部という）である。更に、図１２では、『Ｈ』，『Ｖ』を各々３つ設けることで、レベル３の２次元離散ウェーブレット変換を実現するよう構成されている。
【０１２０】
また、それぞれのステージにおいて『Ｖ』と『Ｈ』とは構成を入れ換えても良い。更に、図１２中、各セレクタには、所定の制御部（例えばＣＰＵ３００）から制御信号が入力され、何れの入力を出力するかが選択される。
【０１２１】
・４：４：４フォーマットの画像データが入力された場合
この構成において、４：４：４フォーマットの画像データが入力された場合、この画像データは、まず、Ｖ１０１においてｙ方向の１次元離散ウェーブレット変換が実行される。その後、Ｖ１０１から出力されたデータは、セレクタ１０２を介してＨ１０３に入力され、ｘ方向の１次元離散ウェーブレット変換が実行される。これにより、ステージ１の処理が完了する。
【０１２２】
その後、Ｈ１０３から出力されたデータは、セレクタ１０４を介してＶ１０５に入力され、Ｖ１０５，Ｈ１０６によりステージ２の処理が実行される。更に、同様にＶ１０７，Ｈ１０８によりステージ３の処理が実行される。
【０１２３】
このように、４：４：４フォーマットの画像データが入力された場合、本実施形態では、入力された画像データにおける全てのコンポーネントに対して３組全ての『Ｈ』，『Ｖ』が使用され、最終的な係数データが取得される。
【０１２４】
・４：２：２（Ｈ２Ｖ１）フォーマットの画像データが入力された場合
また、４：２：２（Ｈ２Ｖ１）フォーマットの画像データが入力された場合、コンポーネント０に関しては、上記４：４：４フォーマットの場合と同様に、３組全ての『Ｈ』，『Ｖ』を使用して、最終的な係数データを取得する。
【０１２５】
また、コンポーネント１，２に関しては、入力された画像データにＶ１０１においてｙ方向の１次元離散ウェーブレット変換が実行された後、これがセレクタ１０４を介してＶ１０５へ入力される。
【０１２６】
即ち、４：２：２（Ｈ２Ｖ１）フォーマットの画像データが入力された場合、セレクタ１０４がＶ１０１から入力されたデータを出力するよう動作する。
【０１２７】
これにより、コンポーネント１，２に対するステージ１では、ｙ方向の１次元離散ウェーブレット変換のみが実行され、ｘ方向の１次元離散ウェーブレット変換が省略される。また、ステージ２，３の処理は、４：４：４フォーマットと同様に実行される。
【０１２８】
従って、４：２：２（Ｈ２Ｖ１）フォーマットの画像データが入力された場合、本実施形態では、入力された画像データにおけるコンポーネント０に対してのみ３組全ての『Ｈ』，『Ｖ』が使用され、コンポーネント１，２に対してはステージ１の『Ｈ』以外の『Ｈ』，『Ｖ』が使用され、最終的な係数データが取得される。
【０１２９】
・４：２：２（Ｈ１Ｖ２）フォーマットの画像データが入力された場合
また、４：２：２（Ｈ１Ｖ２）フォーマットの画像データが入力された場合、コンポーネント０に関しては、上記４：４：４フォーマットの場合と同様に、３組全ての『Ｈ』，『Ｖ』を使用して、最終的な係数データを取得する。
【０１３０】
また、コンポーネント１，２に関しては、入力された画像データが、セレクタ１０２を介してＨ１０３に入力され、ｘ方向の１次元離散ウェーブレット変換が実行される。
【０１３１】
即ち、４：２：２（Ｈ１Ｖ２）フォーマットの画像データが入力された場合、この画像データは、Ｖ１０１には入力されず、セレクタ１０２に入力され、セレクタ１０２がこの画像データをＨ１０３へ出力する。
【０１３２】
これにより、コンポーネント１，２に対するステージ１では、ｘ方向の１次元離散ウェーブレット変換のみが実行され、ｙ方向の１次元離散ウェーブレット変換が省略される。また、ステージ２，３の処理は、４：４：４フォーマットと同様に実行される。
【０１３３】
従って、４：２：２（Ｈ１Ｖ２）フォーマットの画像データが入力された場合、本実施形態では、入力された画像データにおけるコンポーネント０に対してのみ３組全ての『Ｈ』，『Ｖ』が使用され、コンポーネント１，２に対してはステージ１の『Ｖ』以外の『Ｈ』，『Ｖ』が使用され、最終的な係数データが取得される。
【０１３４】
・４：１：１（Ｈ１Ｖ１）フォーマットの画像データが入力された場合
更に、４：１：１（Ｈ１Ｖ１）フォーマットの画像データが入力された場合、コンポーネント０に関しては、上記４：４：４フォーマットの場合と同様に、３組全ての『Ｈ』，『Ｖ』を使用して、最終的な係数データを取得する。
【０１３５】
また、コンポーネント１，２に関しては、Ｖ１０１及びＨ１０３には入力されず、セレクタ１０４を介してＨ１０５に入力され、ステージ２以降の処理が実行される。
【０１３６】
即ち、４：１：１（Ｈ１Ｖ１）フォーマットの画像データが入力された場合、この画像データは、セレクタ１０４に入力され、セレクタ１０４がこの画像データをＶ１０５へ出力する。
【０１３７】
これにより、コンポーネント１，２に対するステージ１では、ステージ１の処理が省略され、ステージ２，３の処理が、４：４：４フォーマットと同様に実行される。
【０１３８】
従って、４：１：１（Ｈ１Ｖ１）フォーマットの画像データが入力された場合、本実施形態では、入力された画像データにおけるコンポーネント０に対してのみ３組全ての『Ｈ』，『Ｖ』が使用され、コンポーネント１，２に対してはステージ２以降の『Ｈ』，『Ｖ』が使用され、最終的な係数データが取得される。
【０１３９】
このように、ステージ１のブロックの前に切り替え器を設ける構成等のように、ウェーブレット処理に簡単な切り替え機能を追加することで、サブサンプリングされた画像データとサブサンプリングされていない画像データとに関係なく、全てのフォーマットに対応した２次元離散ウェーブレット変換を実現することが可能となる。
【０１４０】
即ち、ＪＰＥＧ−２０００による画像符号化を行う装置において、例えば色差データがサブサンプリングされたＹＣｂＣｒなどの画像データと、サブサンプリングされていないＹＣｂＣＲ，ＲＧＢなどの画像データとで、ウェーブレット変換の次数を換えることにより、両方の画像データに対して統一的にＪＰＥＧ−２０００フォーマットに準拠した符号を生成することが可能となる。
【０１４１】
（逆ウェーブレット変換を実行するための構成）
次に、本実施形態において、逆ウェーブレット変換を実行する構成を図１３のブロック図を用いて詳細に説明する。
【０１４２】
図１３は、２次元離散逆ウェーブレット変換を行うウェーブレット変換部２０の構成例を示すブロック図である。また、図１３において、『ＩＨ』はｘ方向の１次元離散逆ウェーブレット変換を実行するブロック（以下、水平方向１次元離散逆ウェーブレット変換部という）であり、『ＩＶ』はｙ方向の１次元離散逆ウェーブレット変換を実行するブロック（垂直方向１次元離散逆ウェーブレット変換部という）である。更に、図１３では、『ＩＨ』，『ＩＶ』を各々３つ設けることで、レベル３の２次元離散逆ウェーブレット変換を実現するよう構成されている。
【０１４３】
また、それぞれのステージにおいて『ＩＶ』と『ＩＨ』とは構成を入れ換えても良い。更に、図１３中、各セレクタには、所定の制御部（例えばＣＰＵ３００）から制御信号が入力され、何れの入力を出力するかが選択される。
【０１４４】
また、この構成には、ＪＰＥＧ−２０００標準に準拠した符号により得られたウェーブレットの係数データが入力される。
【０１４５】
・４：４：４フォーマットの画像データを出力する場合
この構成において、最終的に４：４：４フォーマットの画像データを出力させる場合、３組全ての『ＩＨ』，『ＩＶ』を使用して、２次元離散逆ウェーブレット変換を実行する。
【０１４６】
即ち、セレクタ２０６は、ＩＨ２０５から入力された係数データをＩＶ２０７に入力する。これにより、出力側では、全ての『ＩＨ』，『ＩＶ』を経て、ＩＶ２０７より出力された画像データが取得される。
【０１４７】
・４：２：２（Ｈ２Ｖ１）フォーマットの画像データを出力する場合
これに対して、４：２：２（Ｈ２Ｖ１）フォーマットの画像データを出力させる場合、セレクタ２０６は、ＩＶ２０４より出力された係数データをＩＶ２０７へ出力する。これにより、出力側では、ＩＨ２０５、即ち、ステージ３におけるｘ方向の１次元離散逆ウェーブレット変換が省略されて画像データが取得される。
【０１４８】
・４：２：２（Ｈ１Ｖ２）フォーマットの画像データを出力する場合
また、４：２：２（Ｈ１Ｖ２）フォーマットの画像データを出力させる場合、セレクタ２０６は、ＩＨ２０５より出力されたデータを出力し、出力側において、このセレクタ２０６から出力されたデータを取得する。これにより、出力側では、ＩＶ２０７、即ち、ステージ３におけるｙ方向の１次元離散逆ウェーブレット変換が省略されて画像データが取得される。
【０１４９】
・４：１：１（Ｈ１Ｖ１）フォーマットの画像データを出力する場合
更に、４：１：１（Ｈ１Ｖ１）フォーマットの画像データを出力させる場合、出力側において、ＩＶ２０４から出力されたデータを取得する。これにより、出力側では、ＩＨ２０５及びＩＶ２０７、即ち、ステージ３におけるｘ方向及びｙ方向の２次元離散逆ウェーブレット変換が省略されて画像データが取得される。
【０１５０】
このように、ステージ３のブロックの前に切り替え器を設け、取得したい画像データのフォーマットに応じてステージ３の変換を切り替えることで、全てのフォーマットに対応した２次元離散逆ウェーブレット変換を実現し、色差データがサブサンプリングされたＹＣｂＣｒなどの画像データの出力と、サブサンプリングされていない画像データの出力とを切り替えることが可能となる。
【０１５１】
（画像データ入出力方法）
また、図２のように構成した符号化機能ブロックへ画像データを入力する際に好適な画像データ入出力方法について、以下に図面を用いて詳細に説明する。また、この画像データ入出力方法は、画像読取部５において動作するものである。
【０１５２】
一般的に、ＮＴＳＣ方式などでは画素毎にコンポーネントを切り替えながらＹＣｂＣｒ信号を順番に入出力する構成となっているが、デジタルカメラなどではフレーム単位でコンポーネントの順番を切り替えてＹＣｂＣｒ信号を入出力する構成となっている。
【０１５３】
しかしながら、図２に示す符号化機能ブロックに対し、フレーム単位でコンポーネントの順番を切り替えてＹＣｂＣｒ信号を入出力するよう構成した場合、画像データを一時格納するバッファに要求されるサイズが非常に大きなものとなり、これを搭載するＬＳＩのチップサイズが巨大化してしまう。
【０１５４】
そこで、本実施形態では、入力された画像データを効率的にウェーブレット変換するために、以下に示す方法（画像データ入出力方法）で画像データを入力し、符号化機能ブロックへ出力するよう構成する。
【０１５５】
本実施形態による画像データ入出力方法では、図１４に示すように、まず、画像データを基準となる画像単位（タイル）に分割する。その後、このタイルに分割された画像データを、タイル毎に順次入力し、これを図２に示す符号化機能ブロックへ出力する。
【０１５６】
また、各タイルに対しては、図１５に示すように、例えば左上を始点とし、また、右下を終点としてラスタ順に画像データが入力され、これが出力される。
【０１５７】
ここで、（表１）に本実施形態において入出力される画像データのフォーマットの一覧を例示する。
【０１５８】
【表１】
2007251967.tif 000003
（表１）に示すように、本実施形態では、各フォーマット（4:4:4，4:2:2(H2V1)，4:2:2(H1V2)，4:1:1(4:2:0)）に対して、例えば８ビット又は１０ビットの色形式が対応付けられている。また、色形式としては、ＲＧＢ形式又はＹＣｂＣｒ形式が用いられている。
【０１５９】
・４：４：４フォーマット（ＲＧＢ，ＹＣｂＣｒ）
この中で、４：４：４フォーマットのＲＧＢ形式又はＹＣｂＣｒ形式による画像データを、時系列に従って入出力する際の動作を、図１６の（ａ）を用いて説明する。
【０１６０】
図１６の（ａ）において、４：４：４フォーマットのＲＧＢ形式又はＹＣｂＣｒ形式による画像データを入出力する際は、タイル中の画素をコンポーネント（Ｒ，Ｇ，Ｂ、又は、Ｙ，Ｃｂ，Ｃｒ）を順次切り替えながら入力し、これを出力するよう動作する。
【０１６１】
即ち、本実施形態では、各コンポーネント（Ｒ，Ｇ，Ｂ、又は、Ｙ，Ｃｂ，Ｃｒ）に対する処理が分離されずに実行されている。
【０１６２】
・４：２：２（Ｈ２Ｖ１）フォーマット（ＹＣｂＣｒ）
また、４：２：２（Ｈ２Ｖ１）フォーマットのＹＣｂＣｒ形式による画像データを、時系列に従って入出力する際の動作を、図１６の（ｂ）を用いて説明する。
【０１６３】
図１６の（ｂ）において、４：２：２（Ｈ２Ｖ１）フォーマットのＹＣｂＣｒ形式による画像データを入出力する際は、ＹとＣｂ若しくはＣｒとのそれぞれのコンポーネントに対する処理が分離されて、実行される。
【０１６４】
即ち、図１６の（ｂ）において、コンポーネント１（＝Ｙ）に対する処理では、タイルが１２８×１２８画素のタイルとされているが、コンポーネント１（＝Ｃｂ），２（＝Ｃｒ）に対する処理では、タイルが６４×１２８画素のタイルとされている。
【０１６５】
・４：２：２（Ｈ１Ｖ２）フォーマット（ＹＣｂＣｒ）
また、同様に、４：２：２（Ｈ１Ｖ２）フォーマットのＹＣｂＣｒ形式による画像データを入出力する際は、図１６の（ｃ）に示す図において、コンポーネント０（＝Ｙ）に対する処理でタイルが１２８×１２８画素とされ、コンポーネント１（＝Ｃｂ），２（＝Ｃｒ）に対する処理でタイルが１２８×６４画素とされている。
【０１６６】
従って、この場合でも、ＹとＣｂ若しくはＣｒとのそれぞれのコンポーネントに対する処理が分離されて、実行されている。
【０１６７】
・４：１：１（４：２：０）フォーマット（ＹＣｂＣｒ）
更に、４：１：１（４：２：０）フォーマットのＹＣｂＣｒ形式による画像データを入出力する際は、図１６の（ｄ）に示す図において、コンポーネント０（＝Ｙ）に対する処理でタイルが１２８×１２８画素とされ、コンポーネント１（＝Ｃｂ），２（＝Ｃｒ）に対する処理でタイルが６４×６４画素とされている。
【０１６８】
従って、この場合でも、ＹとＣｂ若しくはＣｒとのそれぞれのコンポーネントに対する処理が分離されて、実行されている。
【０１６９】
このように、本実施形態では、間引きされていない画像データを入出力する際は、各コンポーネントに対する処理を分離せずに実行し、Ｃｂ，Ｃｒに対する画素が間引きされた画像データを入出力する際は、Ｙのコンポーネントに対する処理とＣｂ若しくはＣｒのコンポーネントに対する処理とを分離して実行している。これにより、各フォーマットに応じて適切な画像データ入出力方法が実現される。
【０１７０】
（画像データ入出力方法の具体例）
次に、以下に示す（表２）〜（表１３）を用いて、（表１）に示した入出力画像フォーマット毎の画像データ入出力方法の具体例を挙げ、これを時系列に従って説明する。
【０１７１】
但し、以下に示す各表において、画素データは、Ｒ（赤），Ｇ（緑），Ｂ（青）、又は、Ｙ（照度），Ｃｂ・Ｃｒ（色差）により構成されている。
【０１７２】
また、表中『クロック＃』は、画素データの入力（出力）開始からのクロック数を示すものであり、『サイクル＃』は、繰り返される処理の周期をクロックに準じて示すものであり、『画素＃』は、処理対象の画素の番号（図１６に示すタイルにおいて各画素に付されている番号：但し、コンポーネント０（＝Ｙ）に関する）を示すものであり、画素データ（又は画素データ３，２，１，０）は、各画素をコンポーネント毎に読み取った際の値を示すものである。
【０１７３】
更に、表中、画素データにおける『×』は、画素データの入出力無しを示し、説明中'ｎ'は任意の正の整数である。
【０１７４】
・４：４：４フォーマット（ＲＧＢ，ＹＣｂＣｒ）の入出力（シリアル）
【０１７５】
【表２】
2007251967.tif 000004
（表２）は、４：４：４フォーマット（ＲＧＢ，ＹＣｂＣｒ）の画素データを画素順にシリアルに入出力する際の流れを時系列に従って説明するための表である。
【０１７６】
（表２）を参照すると、サイクル'０'で画素'ｎ'の照度'Ｙｎ'（又は'Ｒｎ'）が入力（出力）され、サイクル'１'で画素'ｎ'の色差'Ｃｂｎ'（又は'Ｇｎ'）が入力され、サイクル'２'で画素'ｎ'の色差'Ｃｒｎ'（又は'Ｂｎ'）が入力（出力）される。また、（表２）では、この一連の動作が１サイクルとされている。また、このサイクルは、全ての画素（例えば１２８×１２８画素のタイルであれば１６３８３個の画素）に対して完了するまで繰り返される。
【０１７７】
このように、（表２）では、３クロックで１画素の画素データの入出力が行われる。
【０１７８】
・４：２：２（Ｈ２Ｖ１）又は４：１：１フォーマット（ＹＣｂＣｒ）の入出力（シリアル）
【０１７９】
【表３】
2007251967.tif 000005
また、（表３）は、４：２：２（Ｈ２Ｖ１）又は４：１：１フォーマット（ＹＣｂＣｒ）の画素データを画素順にシリアルに入出力する際の流れを時系列に従って説明するための表である。但し、（表３）は、画素単位でＣｂ，Ｃｒが交互に入出力されるよう構成した場合の流れを示している。
【０１８０】
（表３）の（ａ）を参照すると、サイクル'０'で画素'ｎ'の色差'Ｃｂｎ'が入力（出力）され、サイクル'１'で画素'ｎ'の照度'Ｙｎ'が入力（出力）され、サイクル'２'で画素'ｎ'の色差'Ｃｒｎ'が入力（出力）され、サイクル'３'で画素'ｎ＋１'の照度'Ｙｎ＋１'が入力（出力）される。また、（表３）では、この一連の動作が１サイクルとされている。また、このサイクルは、全ての画素（例えばコンポーネント０（＝Ｙ）が１２８×１２８画素のタイルであれば１６３８３個の画素（但し、コンポーネント１，２に対しては６４×１２８画素の８１９１画素））に対して完了するまで繰り返される。
【０１８１】
このように、（表３）では、４クロックで２画素の画素データの入出力が行われる。
【０１８２】
但し、４：１：１フォーマットの画素データを読み出す場合、（表３）の（ｂ）に示すように、コンポーネント０（＝Ｙ）におけるラインにおいて、上から偶数番目のラインに対して行われる画素データの入出力で、色差Ｃｂ，Ｃｒの画素データが入力（出力）されない。
【０１８３】
・４：２：２（Ｈ１Ｖ２）フォーマット（ＹＣｂＣｒ）の入出力（シリアル）
【０１８４】
【表４】
2007251967.tif 000006
また、（表４）は、４：２：２（Ｈ１Ｖ２）フォーマット（ＹＣｂＣｒ）の画素データを画素順にシリアルに入出力する際の流れを時系列に従って説明するための表である。但し、（表４）は、ライン単位でＣｂ，Ｃｒが交互に入出力されるよう構成した場合の流れを示している。
【０１８５】
コンポーネント０（＝Ｙ）における奇数番目のラインにおいては、（表４）の（ａ）に示すように、例えばサイクル'０'で画素'ｎ'の色差'Ｃｂｎ'が入力（出力）され、サイクル'１'で画素'ｎ'の照度'Ｙｎ'が入力（出力）される。また、コンポーネント０（＝Ｙ）における奇数番目のラインにおいては、（表４）の（ｂ）に示すように、例えばサイクル'０'（例えばクロック'２５６'：但し、１タイルが１２８×１２８画素とする）で画素'ｎ（０）'の色差'Ｃｒｎ（Ｃｒ０）'が入力（出力）され、サイクル'１'（クロック'２５７'）で画素'ｎ＋１２７（１２８）'の照度'Ｙｎ＋１２７（Ｙ１２８）'が入力（出力）される。
【０１８６】
このように、（表４）では、２クロックを１サイクルとし、ライン毎に入出力色差Ｃｂ，Ｃｒを入れ換えている。
【０１８７】
また、このサイクルは、全ての画素（例えばコンポーネント０（＝Ｙ）が１２８×１２８画素のタイルであれば１６３８３個の画素（但し、コンポーネント１，２に対しては１２８×６４画素の８１９１画素））に対して行われるまで繰り返される。
【０１８８】
このように、（表４）では、２クロックで１画素の画素データの入出力が行われる。
【０１８９】
・４：２：２（Ｈ２Ｖ１，Ｈ１Ｖ２）フォーマット（ＹＣｂＣｒ）の入出力（シリアル）
【０１９０】
【表５】
2007251967.tif 000007
また、（表５）は、４：２：２（Ｈ２Ｖ１，Ｈ１Ｖ２）フォーマット（ＹＣｂＣｒ）の画素データをタイル順にシリアルに入出力する際の流れを時系列に従って説明するための表である。但し、（表５）は、タイル単位でＹを入出力し、次にタイル単位でＣｂ，Ｃｒを交互に入出力するよう構成した場合の流れを示している。
【０１９１】
即ち、（表５）の（ａ）において、まず、クロック'０'〜'１６３８３'までの動作で、１タイル分の照度信号Ｙ（'Ｙ０'〜'Ｙ１６３８３'）を入出力し、次に、（表５）の（ｂ）において、クロック'１６３８４'〜'３２７６７'までの動作で、１タイル分の色差信号Ｃｂ，Ｃｒ（'Ｃｂ０'〜'Ｃｂ８１９１'，'Ｃｒ０'〜'Ｃｒ８１９１'）を交互に入出力する。
【０１９２】
従って、（表５）では、２クロックで１画素の画素データの入出力が行われる。
【０１９３】
・４：４：４フォーマット（ＲＧＢ，ＹＣｂＣｒ）の入出力（２データパラレル）
【０１９４】
【表６】
2007251967.tif 000008
（表６）は、４：４：４フォーマット（ＲＧＢ，ＹＣｂＣｒ）の画素データを画素順に２つの画素データ毎パラレルに入出力する際の流れを時系列に従って説明するための表である。
【０１９５】
（表６）を参照すると、サイクル'０'で画素'ｎ'の照度'Ｙｎ'（又は'Ｒｎ'）及び色差'Ｃｂｎ'（又は'Ｇｎ'）が入力（出力）され、サイクル'１'で画素'ｎ'の色差'Ｃｒｎ'（又は'Ｂｎ'）が入力される。また、（表６）では、この一連の動作が１サイクルとされている。また、このサイクルは、全ての画素（例えば１２８×１２８画素のタイルであれば１６３８３個の画素）に対して完了するまで繰り返される。
【０１９６】
このように、（表６）では、２クロックで１画素の画素データの入出力が行われる。
【０１９７】
・４：２：２（Ｈ２Ｖ１）又は４：１：１フォーマット（ＹＣｂＣｒ）の入出力（２データパラレル）
【０１９８】
【表７】
2007251967.tif 000009
また、（表７）は、４：２：２（Ｈ２Ｖ１）又は４：１：１フォーマット（ＹＣｂＣｒ）の画素データを画素順に２つの画素データ毎パラレルに入出力する際の流れを時系列に従って説明するための表である。但し、（表７）は、画素単位でＣｂ，Ｃｒが交互に入出力されるよう構成した場合の流れを示している。
【０１９９】
（表７）の（ａ）を参照すると、サイクル'０'で画素'ｎ'の照度'Ｙｎ'及び色差'Ｃｂｎ'が入力（出力）され、サイクル'１'で画素'ｎ＋１'の照度'Ｙｎ＋１'と画素'ｎ'の色差'Ｃｒｎ'が入力（出力）される。また、（表７）では、この一連の動作が１サイクルとされている。また、このサイクルは、全ての画素（例えばコンポーネント０（＝Ｙ）が１２８×１２８画素のタイルであれば１６３８３個の画素（但し、コンポーネント１，２に対しては６４×１２８画素の８１９１画素））に対して完了するまで繰り返される。
【０２００】
このように、（表７）では、４クロックで２画素の画素データの入出力が行われる。
【０２０１】
但し、４：１：１フォーマットの画素データを読み出す場合、（表７）の（ｂ）に示すように、コンポーネント０（＝Ｙ）におけるラインにおいて、上から偶数番目のラインに対して行われる画素データの入出力で、色差Ｃｂ，Ｃｒの画素データが入力（出力）されない。
【０２０２】
・４：２：２（Ｈ１Ｖ２）フォーマット（ＹＣｂＣｒ）の入出力（２データパラレル）
【０２０３】
【表８】
2007251967.tif 000010
また、（表８）は、４：２：２（Ｈ１Ｖ２）フォーマット（ＹＣｂＣｒ）の画素データを画素順に２つの画素データ毎パラレルに入出力する際の流れを時系列に従って説明するための表である。但し、（表８）は、ライン単位でＣｂ，Ｃｒが交互に入出力されるよう構成した場合の流れを示している。
【０２０４】
コンポーネント０（＝Ｙ）における奇数番目のラインにおいては、（表８）の（ａ）に示すように、例えばサイクル'０'で画素'ｎ'の照度'Ｙｎ'及び色差'Ｃｂｎ'が入力（出力）される。また、コンポーネント０（＝Ｙ）における奇数番目のラインにおいては、（表８）の（ｂ）に示すように、例えばサイクル'０'（例えばクロック'２５６，２５７'：但し、１タイルが１２８×１２８画素とする）で画素'ｎ＋１２７（１２８）'の照度'Ｙｎ＋１２７（Ｙ１２８）'及び画素'ｎ（０）'の色差'Ｃｒｎ（Ｃｒ０）'が入力（出力）される。
【０２０５】
このように、（表８）では、２クロックを１サイクルとし、ライン毎に入出力色差Ｃｂ，Ｃｒを入れ換えている。
【０２０６】
また、このサイクルは、全ての画素（例えばコンポーネント０（＝Ｙ）が１２８×１２８画素のタイルであれば１６３８３個の画素（但し、コンポーネント１，２に対しては１２８×６４画素の８１９１画素））に対して行われるまで繰り返される。
【０２０７】
このように、（表８）では、２クロックで１画素の画素データの入出力が行われる。
【０２０８】
・４：４：４フォーマット（ＲＧＢ，ＹＣｂＣｒ）の入出力（３データパラレル）
【０２０９】
【表９】
2007251967.tif 000011
（表９）は、４：４：４フォーマット（ＲＧＢ，ＹＣｂＣｒ）の画素データを画素順に３つの画素データ毎パラレルに入出力する際の流れを時系列に従って説明するための表である。
【０２１０】
（表９）を参照すると、サイクル'０'で画素'ｎ'の照度'Ｙｎ'（又は'Ｒｎ'）及び色差'Ｃｂｎ'（又は'Ｇｎ'）及び色差'Ｃｒｎ'（又は'Ｂｎ'）が入力される。また、（表９）では、この一連の動作が１サイクルとされている。また、このサイクルは、全ての画素（例えば１２８×１２８画素のタイルであれば１６３８３個の画素）に対して完了するまで繰り返される。
【０２１１】
このように、（表９）では、２クロックで１画素の画素データの入出力が行われる。
【０２１２】
・４：２：２（Ｈ２Ｖ１）又は４：１：１フォーマット（ＹＣｂＣｒ）の入出力（４データパラレル）
【０２１３】
【表１０】
2007251967.tif 000012
また、（表１０）は、４：２：２（Ｈ２Ｖ１）又は４：１：１フォーマット（ＹＣｂＣｒ）の画素データを画素順に４つの画素データ毎パラレルに入出力する際の流れを時系列に従って説明するための表である。但し、（表１０）は、画素単位でＣｂ，Ｃｒが交互に入出力されるよう構成した場合の流れを示している。
【０２１４】
（表１０）の（ａ）を参照すると、サイクル'０'で画素'ｎ'の照度'Ｙｎ'及び色差'Ｃｂｎ'及び色差'Ｃｒｎ'と画素'ｎ＋１'の照度'Ｙｎ＋１'とが入力（出力）される。また、（表１０）では、この一連の動作が１サイクルとされている。また、このサイクルは、全ての画素（例えばコンポーネント０（＝Ｙ）が１２８×１２８画素のタイルであれば１６３８３個の画素（但し、コンポーネント１，２に対しては６４×１２８画素の８１９１画素））に対して完了するまで繰り返される。
【０２１５】
このように、（表１０）では、４クロックで２画素の画素データの入出力が行われる。
【０２１６】
但し、４：１：１フォーマットの画素データを読み出す場合、（表１０）の（ｂ）に示すように、コンポーネント０（＝Ｙ）におけるラインにおいて、上から偶数番目のラインに対して行われる画素データの入出力で、色差Ｃｂ，Ｃｒの画素データが入力（出力）されない。
【０２１７】
・４：２：２（Ｈ１Ｖ２）フォーマット（ＹＣｂＣｒ）の入出力（４データパラレル）
【０２１８】
【表１１】
2007251967.tif 000013
また、（表１１）は、４：２：２（Ｈ１Ｖ２）フォーマット（ＹＣｂＣｒ）の画素データを画素順に４つの画素データ毎パラレルに入出力する際の流れを時系列に従って説明するための表である。但し、（表１１）は、ライン単位でＣｂ，Ｃｒが交互に入出力されるよう構成した場合の流れを示している。
【０２１９】
コンポーネント０（＝Ｙ）における奇数番目のラインにおいては、（表１１）の（ａ）に示すように、例えばサイクル'０'で画素'ｎ'の照度'Ｙｎ'及び色差'Ｃｂｎ'と画素'ｎ＋１'の照度'Ｙｎ＋１'及び色差'Ｃｂｎ＋１'とが入力（出力）される。また、コンポーネント０（＝Ｙ）における奇数番目のラインにおいては、（表１１）の（ｂ）に示すように、例えばサイクル'０'（例えばクロック'２５６，２５７，２５８，２５９'：但し、１タイルが１２８×１２８画素とする）で画素'ｎ＋１２７（１２８）'の照度'Ｙｎ＋１２７（Ｙ１２８）'及び画素'ｎ（０）'の色差'Ｃｒｎ（Ｃｒ０）'と画素'ｎ＋１２８（１２９）'の照度'Ｙｎ＋１２８（Ｙ１２９）'及び画素'ｎ＋１（１）'の色差'Ｃｒｎ＋１（Ｃｒ１）'とが入力（出力）される。
【０２２０】
このように、（表１１）では、４クロックを１サイクルとし、ライン毎に入出力色差Ｃｂ，Ｃｒを入れ換えている。
【０２２１】
また、このサイクルは、全ての画素（例えばコンポーネント０（＝Ｙ）が１２８×１２８画素のタイルであれば１６３８３個の画素（但し、コンポーネント１，２に対しては１２８×６４画素の８１９１画素））に対して行われるまで繰り返される。
【０２２２】
このように、（表１１）では、４クロックで２画素の画素データの入出力が行われる。
【０２２３】
・グレイスケールフォーマットの入出力（シリアル）
【０２２４】
【表１２】
2007251967.tif 000014
（表１２）は、グレイスケールフォーマットの画素データを画素順にシリアルに入出力する際の流れを時系列に従って説明するための表である。
【０２２５】
（表１２）を参照すると、サイクル'０'で画素'ｎ'の照度'Ｙｎ'が入力（出力）される。また、（表１２）では、この動作が１サイクルとされている。また、このサイクルは、全ての画素（例えば１２８×１２８画素のタイルであれば１６３８３個の画素）に対して完了するまで繰り返される。
【０２２６】
このように、（表１２）では、２クロックで１画素の画素データの入出力が行われる。
【０２２７】
・グレイスケールフォーマットの入出力（２データパラレル）
【０２２８】
【表１３】
2007251967.tif 000015
（表１３）は、グレイスケールフォーマットの画素データを画素順に２つの画素データ毎パラレルに入出力する際の流れを時系列に従って説明するための表である。
【０２２９】
（表１３）を参照すると、サイクル'０'で画素'ｎ'の照度'Ｙｎ'及び画素'ｎ＋１'の照度'Ｙｎ＋１'が入力される。また、（表１３）では、この動作が１サイクルとされている。また、このサイクルは、全ての画素（例えば１２８×１２８画素のタイルであれば１６３８３個の画素）に対して完了するまで繰り返される。
【０２３０】
このように、（表１３）では、４クロックで２画素の画素データの入出力が行われる。
【０２３１】
以上のような手順で入出力を行うことにより、４：４：４フォーマット（ＲＧＢ，ＹＣｂＣｒ）の画像データに対しては、画素単位で順次入出力処理を実行し、それ以外のフォーマットの画像データに対しては、画素データを照度（Ｙ）と色差（Ｃｂ，Ｃｒ）とを分離してタイル単位で入出力することが可能となる。
【０２３２】
また、上記（表６）〜（表１１），（表１３）に示すように、本実施形態では、複数の画素データをパラレルで処理することも可能である。
【０２３３】
（タイミングチャート例）
次に、上記（表７）で示した、４：２：２（Ｈ２Ｖ１）又は４：１：１フォーマット（ＹＣｂＣｒ）の画素データを画素順に２つの画素データ毎パラレルに入出力する際のタイミングチャート例を図１７を用いて説明する。
【０２３４】
図１７を参照すると、４：２：２（Ｈ２Ｖ１）又は４：１：１フォーマット（ＹＣｂＣｒ）の画素データを画素順に２つの画素データ毎パラレルに入出力する際の動作では、４クロックを１サイクルとし、１サイクルを２クロックずつのサイクル'０'とサイクル'１'とに分割している。
【０２３５】
従って、まず、サイクル'０'が開始されると、画素データ１，０として画素'０'の照度'Ｙ０'及び色差'Ｃｂ０'が入力（出力）される。次に、サイクル'１'が開始されると、画素データ１，０として画素'１'の照度'Ｙ１'と画素'０'の色差'Ｃｒ０'とが入力（出力）される。以降の動作は、これが繰り返される。
【０２３６】
また、他の表に関しても、各々に基づいて図１７のようなタイミングチャートを作成することが可能である。
【０２３７】
このような手順で画像読取部５において画像データを入力し、これを符号化／復号化処理部２（符号化機能ブロック）に入力することにより、本実施形態では効率的な符号化処理を実現することが可能となる。
【０２３８】
〔他の実施形態〕
また、上記した各実施形態は、本発明を好適に実施した形態の一例に過ぎず、本発明は、その主旨を逸脱しない限り、種々変形して実施することが可能なものである。
【０２３９】
以上、説明したように、本発明によれば、複雑な回路やデータ量の増加を伴うことなく、サブサンプリングされた画像データから容易に符号データを生成することが可能になる。
【０２４０】
更に、本発明の参考発明によれば、サブサンプリングされた画像データに応じて、容易に符号データを生成することが可能になる。
【０２４１】
更に、本発明の参考発明によれば、圧縮率が高い符号データを生成することが可能となる。
【０２４２】
また、本発明の参考発明によれば、サブサンプリングされた画像データに対して適切なウェーブレット変換を行なうことが可能となり、複雑な回路やデータ量の増加を伴うことなく、容易に符号データを生成することが可能になる。
【０２４３】
更に、本発明の参考発明によれば、サブサンプリングされた画像データとサブサンプリングされていない画像データとを区別し、それぞれに応じた適切なウェーブレット変換を行なうことが可能となり、複雑な回路やデータ量の増加を伴うことなく、容易に符号データを生成することが可能になる。
【０２４４】
また、本発明の参考発明によれば、目的に応じてサブサンプリングされた画像データ出力することが可能になる。
【０２４５】
更に、本発明の参考発明によれば、サブサンプリングされた画像データとサブサンプリングされていない画像データとを容易に切り替えて出力することが可能になる。
【０２４６】
また、本発明の参考発明によれば、目的に応じて適切な逆ウェーブレット変換が行なわれて作成された、サブサンプリングされた画像データ出力することが可能になる。
【０２４７】
更に、本発明の参考発明によれば、目的の画像データが、サブサンプリングされた画像データであるかサブサンプリングされていない画像データであるかを区別し、これに応じて適切な逆ウェーブレット変換を施すことが可能となる。
【０２４８】
また、本発明の参考発明によれば、ウェーブレット変換を行なう際に必要となるバッファが大きくならないように、画像データを入出力することが可能となる。
【０２４９】
更に、本発明の参考発明によれば、ウェーブレット変換を行なう際に必要となるバッファが大きくならないように、画像データを入出力することが可能となるだけでなく、画素データを並列に読み取ることが可能となる。
【０２５０】
更に、本発明の参考発明によれば、ウェーブレット変換を行なう際に必要となるバッファが大きくならないように、適切にサブサンプリングされた画像データを読み取ることが可能となる。
【０２５１】
更に、本発明の参考発明によれば、ウェーブレット変換を行なう際に必要となるバッファが大きくならないように、適切にサブサンプリングされた画像データを読み取ることが可能となる。
【０２５２】
更に、本発明の参考発明によれば、ウェーブレット変換を行なう際に必要となるバッファが大きくならないように、適切にサブサンプリングされた画像データを読み取ることが可能となる。
【０２５３】
更に、本発明の参考発明によれば、複雑な回路やデータ量の増加を伴うことなく、サブサンプリングされた画像データから容易に符号データを生成することが可能になる。
【０２５４】
更に、本発明の参考発明によれば、サブサンプリングされた画像データに応じて、容易に符号データを生成することが可能になる。
【０２５５】
更に、本発明の参考発明によれば、圧縮率が高い符号データを生成することが可能となる。
【０２５６】
また、本発明の参考発明によれば、目的に応じてサブサンプリングされた画像データ出力することが可能になる。
【０２５７】
更に、本発明の参考発明によれば、サブサンプリングされた画像データとサブサンプリングされていない画像データとを容易に切り替えて出力することが可能になる。
【０２５８】
また、本発明の参考発明によれば、ウェーブレット変換を行なう際に必要となるバッファが大きくならないように、画像データを入出力することが可能となる。
【０２５９】
更に、本発明の参考発明によれば、ウェーブレット変換を行なう際に必要となるバッファが大きくならないように、画像データを入出力することが可能となるだけでなく、画素データを並列に読み取ることが可能となる。
【０２６０】
更に、本発明の参考発明によれば、ウェーブレット変換を行なう際に必要となるバッファが大きくならないように、適切にサブサンプリングされた画像データを読み取ることが可能となる。
【０２６１】
更に、本発明の参考発明によれば、ウェーブレット変換を行なう際に必要となるバッファが大きくならないように、適切にサブサンプリングされた画像データを読み取ることが可能となる。
【０２６２】
更に、本発明の参考発明によれば、ウェーブレット変換を行なう際に必要となるバッファが大きくならないように、適切にサブサンプリングされた画像データを読み取ることが可能となる。
【図面の簡単な説明】
【０２６３】
【図１】本発明の第１の実施形態による画像処理装置の構成例を示すブロック図である。
【図２】本発明の第１の実施形態による符号化／復号化処理部２の符号化機能ブロックの構成例を示すブロック図である。
【図３】４：４：４，４：２：２（Ｈ２Ｖ１），４：２：２（Ｈ１Ｖ２），４：１：１，グレイスケールの各入出力フォーマットにおけるｘ方向及びｙ方向の画素比の例を示す図である。
【図４】４：４：４フォーマットの画像データに対して実行される２次元離散ウェーブレット変換をステージ毎に説明するための図である。
【図５】本発明の第１の実施形態において４：２：２（Ｈ２Ｖ１）フォーマットの画像データに対して実行される２次元離散ウェーブレット変換をステージ毎に説明するための図である。
【図６】本発明の第１の実施形態において４：２：２（Ｈ１Ｖ２）フォーマットの画像データに対して実行される２次元離散ウェーブレット変換をステージ毎に説明するための図である。
【図７】本発明の第１の実施形態において４：１：１フォーマットの画像データに対して実行される２次元離散ウェーブレット変換をステージ毎に説明するための図である。
【図８】サブサンプリングされていないコンポーネントに対してレベル３の２次元離散ウェーブレット変換を施すことにより生成されるサブバンドの形状例を説明するための図である。
【図９】従来技術において４：２：２（Ｈ２Ｖ１）フォーマットの画像データに対して実行される２次元離散ウェーブレット変換をステージ毎に説明するための図である。
【図１０】図９に示す２次元離散ウェーブレット変換により生成されるサブバンドの形状例を説明するための図である。
【図１１】図５に示す２次元離散ウェーブレット変換により生成されるサブバンドの系条例を説明するための図である。
【図１２】本発明の第１の実施形態によるウェーブレット変換を実行するウェーブレット変換部２０の構成例を示すブロック図である。
【図１３】本発明の第１の実施形態による逆ウェーブレット変換を実行するウェーブレット変換部２０の構成例を示すブロック図である。
【図１４】本発明の第１の実施形態による画像データ入出力方法において画像データが分割されて作成されるタイルの構成を示すブロック図である。
【図１５】図１４において分割された各タイルにおける画素データを読み出す順序を説明するための図である。
【図１６】本発明の第１の実施形態において画像データを時系列に従って入出力する際の動作を説明するための図であり、（ａ）は４：４：４フォーマットのＲＧＢ形式又はＹＣｂＣｒ形式による画像データを入出力する際の動作を説明するための図であり、（ｂ）は４：２：２（Ｈ２Ｖ１）フォーマットのＹＣｂＣｒ形式による画像データを入出力する際の動作を説明するための図であり、（ｃ）は４：２：２（Ｈ１Ｖ２）フォーマットのＹＣｂＣｒ形式による画像データを入出力する際の動作を説明するための図であり、（ｄ）は４：１：１（４：２：０）フォーマットのＹＣｂＣｒ形式の画像データを入出力する際の動作を説明するための図である。
【図１７】（表７）で示した４：２：２（Ｈ２Ｖ１）又は４：１：１フォーマット（ＹＣｂＣｒ）の画素データを画素順に２つの画素データ毎パラレルに入出力する際の流れを示すタイミングチャートである。
【符号の説明】
【０２６４】
１  バス
２  符号化／復号化処理部
３  ＣＰＵ
４  メモリ
５  画像読取部
６  Ａ／Ｄ変換部
７  Ｉ／Ｏインタフェース
８  ＲＡＭ
１０  カラー変換部
２０  ウェーブレット変換部
３０  量子化部
４０  係数順序制御部
５０  係数モデリング部
６０  エントロピー符号化部
１０１，１０５，１０７  垂直方向１次元離散ウェーブレット変換部（Ｖ）
１０２，１０４，２０６  セレクタ
１０３，１０６，１０８  水平方向１次元離散ウェーブレット変換部（Ｈ）
２０１，２０３，２０５  水平方向１次元離散逆ウェーブレット変換部（ＩＨ）
２０２，２０４，２０７  垂直方向１次元離散逆ウェーブレット変換部（ＩＶ）
【図１】
2007251967.tif 000016
【図２】
2007251967.tif 000017
【図３】
2007251967.tif 000018
【図４】
2007251967.tif 000019
【図５】
2007251967.tif 000020
【図６】
2007251967.tif 000021
【図７】
2007251967.tif 000022
【図８】
2007251967.tif 000023
【図９】
2007251967.tif 000024
【図１０】
2007251967.tif 000025
【図１１】
2007251967.tif 000026
【図１２】
2007251967.tif 000027
【図１３】
2007251967.tif 000028
【図１４】
2007251967.tif 000029
【図１５】
2007251967.tif 000030
【図１６】
2007251967.tif 000031
【図１７】
2007251967.tif 000032