(57)【特許請求の範囲】
【請求項１】
圧縮画像データをメモリに書き込む画像圧縮装置であって、
複数の画像を含む元画像データを複数のブロックラインに分割し、各ブロックラインを
複数のサブブロックラインに分割し、前記サブブロックライン毎に前記元画像データを圧
縮し、複数の圧縮サブブロックラインを生成する、圧縮部と、
前記サブブロックラインの数と、前記元画像データの元画像データサイズと、画像圧縮
率と、に基づいて、前記圧縮サブブロックライン毎に前記メモリの書込アドレスを決定す
る、書込アドレス決定部と、
前記複数の圧縮サブブロックラインを、各圧縮サブブロックラインに対応する前記書込
アドレスに書き込む、メモリ制御部と、を備え、
前記複数の圧縮サブブロックラインは、前記ブロックラインの先頭画素を含む第１圧縮
サブブロックラインと、前記第１圧縮サブブロックラインに続く第２圧縮サブブロックラ
インと、を含み、
前記メモリ制御部は、
前記メモリにおいて、前記第１圧縮サブブロックライン及び前記第２圧縮サブブロック
ラインを記憶可能な容量を有する、記憶領域を画定する先頭アドレス及び終端アドレスを
決定し、
前記先頭アドレスを第１書込アドレスとして決定し、
前記終端アドレスから、前記メモリの書込単位分だけ戻ったアドレスを、第２書込アド
レスとして決定し、
前記第１書込アドレスを始点とする第１書込領域に前記第１圧縮サブブロックラインを
書き込み、
前記第２書込アドレスを始点とする第２書込領域に前記第２圧縮サブブロックラインを
メモリ空間の垂直方向に対して逆方向に書き込む、ことを特徴とする画像圧縮装置。
【請求項２】
圧縮画像データをメモリに書き込む画像圧縮装置であって、
複数の画素を含む元画像データを複数のブロックラインに分割し、各ブロックラインを
複数のサブブロックラインに分割し、前記サブブロックライン毎に前記元画像データを圧
縮し、複数の圧縮サブブロックラインを生成する、圧縮部と、
前記サブブロックラインの数と、前記元画像データの元画像データサイズと、画像圧縮
率と、に基づいて、前記圧縮サブブロックライン毎に前記メモリの書込アドレスを決定す
る、書込アドレス決定部と、
前記複数の圧縮サブブロックラインを、各圧縮サブブロックラインに対応する前記書込
アドレスに書き込む、メモリ制御部と、を備え、
前記複数の圧縮サブブロックラインは、第１圧縮サブブロックラインと、前記第１圧縮
サブブロックラインに続く第２圧縮サブブロックラインと、を含み、
前記メモリ制御部は、
前記メモリにおいて、前記第１圧縮サブブロックライン及び前記第２圧縮サブブロック
ラインを記憶可能な容量を有する、記憶領域を画定する先頭アドレス及び終端アドレスを
決定し、
前記先頭アドレスを第１書込アドレスとして決定し、
前記先頭アドレスから、前記サブブロックラインのサブブロックラインサイズ分だけ隔
てたアドレスを、第２書込アドレスとして決定し、
前記第１書込アドレスから前記第２書込アドレスまでの第１書込領域に、前記第１圧縮
サブブロックラインの少なくとも一部を書き込み、
前記第２書込アドレスから前記終端アドレスまでの第２書込領域に、前記第２圧縮サブ
ブロックラインの少なくとも一部を書き込み、
前記第１圧縮サブブロックラインのサイズが前記第１書込領域のサイズより大きい場合
には、前記第１書込領域に記憶されていない前記第１圧縮サブブロックラインの残留部分
を、前記第２書込領域に書き込み、
前記第２圧縮サブブロックラインのサイズが前記第２書込領域のサイズより大きい場合
には、前記第２書込領域に記憶されていない前記第２圧縮サブブロックラインの残留部分
を、前記第１書込領域に書き込む、ことを特徴とする画像圧縮装置。
【請求項３】
圧縮画像データをメモリに書き込む画像圧縮装置であって、
複数の画素を含む元画像データを複数のブロックラインに分割し、各ブロックラインを
複数のサブブロックラインに分割し、前記サブブロックライン毎に前記元画像データを圧
縮し、複数の圧縮サブブロックラインを生成する、圧縮部と、
前記サブブロックラインの数と、前記元画像データの元画像データサイズと、画像圧縮
率と、に基づいて、前記圧縮サブブロックライン毎に前記メモリの書込アドレスを決定す
る、書込アドレス決定部と、
前記複数の圧縮サブブロックラインを、各圧縮サブブロックラインに対応する前記書込
アドレスに書き込む、メモリ制御部と、を備え、
前記複数の圧縮サブブロックラインは、第１圧縮サブブロックラインと、前記第１圧縮
サブブロックラインに続く第２圧縮佐産ブロックラインと、を含み、
前記第１圧縮サブブロックラインは、第１部分と、前記第１部分に続く第２部分と、を
含み、
前記第２圧縮サブブロックラインは、第１部分と、前記第１部分に続く第２部分と、を
含み、
前記メモリ制御部は、
前記第１圧縮サブブロックラインの第２部分と、前記第２圧縮サブブロックラインの第
２部分と、を含むラインデータを記憶可能なレジスタを備え、
前記メモリにおいて、前記第１圧縮サブブロックライン及び前記第２圧縮サブブロック
ラインを記憶可能な容量を有する、記憶領域を画定する先頭アドレス及び終端アドレスを
決定し、
前記先頭アドレスを第１書込アドレスとして決定し、
前記終端アドレスを第２書込アドレスとして決定し、
前記第１書込アドレスを始点とする領域に、前記第１圧縮サブブロックラインの第１部
分を書き込み、
前記第１圧縮サブブロックラインの第２部分を、前記レジスタに書き込み、
前記第２書込アドレスを始点とする領域に、前記第２圧縮サブブロックラインの第１部
分を書き込み、
前記第２圧縮サブブロックラインの第２部分を、前記レジスタに書き込み、
前記レジスタに記憶された前記第１圧縮サブブロックラインの第２部分と、前記第２圧
縮サブブロックラインの第２部分と、を含む前記ラインデータを、前記第１圧縮サブブロ
ックラインの第１部分が記憶された領域に続く重複メモリラインに書き込む、ことを特徴
とする画像圧縮装置。
【請求項４】
データを記憶可能なメモリと、
複数の画像を含む元画像データを複数のブロックラインに分割し、各ブロックラインを
複数のサブブロックラインに分割し、前記サブブロックライン毎に前記元画像データを圧
縮し、複数の圧縮サブブロックラインを生成する、圧縮部と、
前記サブブロックラインの数と、前記元画像データの元画像データサイズと、画像圧縮
率と、に基づいて、前記圧縮サブブロックライン毎に前記メモリの書込アドレスを決定す
る、書込アドレス決定部と、
前記複数の圧縮サブブロックラインを、各圧縮サブブロックラインに対応する前記書込
アドレスに書き込む、メモリ制御部と、を備え、
前記複数の圧縮サブブロックラインをは、前記ブロックラインの先頭画素を含む第１圧
縮サブブロックラインと、前記第１圧縮サブブロックラインに続く第２圧縮サブブロック
ラインと、を含み、
前記メモリ制御部は、
前記メモリにおいて、前記第１圧縮サブブロックライン及び前記第２圧縮サブブロック
ラインを記憶可能な容量を有する、記憶領域を画定する先頭アドレス及び終端アドレスを
決定し、
前記先頭アドレスを第１書込アドレスとして決定し、
前記終端アドレスから、前記メモリの書込単位分だけ戻ったアドレスを、第２書込アド
レスとして決定し、
前記第１書込アドレスを始点とする第１書込み領域に前記第１圧縮サブブロックライン
を書き込み、
前記第２書込アドレスを始点とする第２書込領域に前記第２圧縮サブブロックラインを
アドレス増加方向に対して逆方向に書き込む、ことを特徴とする画像圧縮システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、画像圧縮装置及び画像処理システムに関する。
【背景技術】
【０００２】
従来、元の画像データのデータサイズに対する圧縮された画像データのデータサイズの比率（以下「圧縮率」という）を保証するために、圧縮単位であるブロックラインを、ブロックラインより小さいブロックに分割し、ブロック毎に符号量が変わるように符号量を制御する圧縮伸長アルゴリズムが知られている。
【０００３】
このような圧縮伸張アルゴリズムでは、ブロックラインが大きいほど、符号量の制御の自由度が高くなり、結果として、圧縮率も高くなる。しかしながら、ブロックラインの一部のみを読み出すことができないので、伸張すべきデータがブロックラインの一部であっても、伸張すべきデータを含むブロックラインの全体を読み出す必要がある。従って、従来技術には、メモリから伸張すべきデータを読み出す場合に、ブロックラインの大きさに応じてバンド幅及びレイテンシが増加する、という問題がある。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１０−２２６５３２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
本発明が解決しようとする課題は、ブロックラインの大きさに依らず、メモリから伸張すべきデータを読み出すときのバンド幅及びレイテンシを低減することである。
【課題を解決するための手段】
【０００６】
本発明の実施形態の画像圧縮装置は、圧縮画像データをメモリに書き込む。画像圧縮装置は、圧縮部と、書込アドレス決定部と、メモリ制御部と、を備える。圧縮部は、複数の画素を含む元画像データを複数のブロックラインに分割し、各ブロックラインを複数のサブブロックラインに分割し、サブブロックライン毎に元画像データを圧縮し、複数の圧縮サブブロックラインを生成する。書込アドレス決定部は、サブブロックラインの数と、元画像データの元画像データサイズと、画像圧縮率と、に基づいて、圧縮サブブロックライン毎にメモリの書込アドレスを決定する。メモリ制御部は、複数の圧縮サブブロックラインを、各圧縮サブブロックラインに対応する書込アドレスに書き込む。
【図面の簡単な説明】
【０００７】
【図１】本実施形態の画像処理システム１のブロック図。
【図２】本実施形態の画像圧縮装置１０のブロック図。
【図３】第１実施形態の圧縮部１２の動作の説明図。
【図４】第１実施形態の圧縮部１２の動作の説明図。
【図５】第１実施形態の書込アドレス決定部１４の動作の説明図。
【図６】第１実施形態の書込アドレス決定部１４の動作の説明図。
【図７】第１実施形態のメモリ制御部１６の動作の説明図。
【図８】第１実施形態の変形例の圧縮部１２の動作の説明図。
【図９】第２実施形態の書込アドレス決定部１４の動作の説明図。
【図１０】第２実施形態の書込アドレス決定部１４の動作の説明図。
【図１１】第２実施形態のメモリ制御部１６の動作の第１例の説明図。
【図１２】第２実施形態のメモリ制御部１６の動作の第２例の説明図。
【図１３】第３実施形態のメモリ制御部１６の動作の第１例の説明図。
【図１４】第３実施形態のメモリ制御部１６の動作の第２例の説明図。
【発明を実施するための形態】
【０００８】
本実施形態について、図面を参照して説明する。
【０００９】
本実施形態の画像処理システム１の構成について説明する。図１は、本実施形態の画像処理システム１のブロック図である。画像処理システム１は、画像圧縮装置１０と、メモリ２０と、画像伸張装置３０と、を備える。画像圧縮装置１０は、元画像データＩＭＧｏを圧縮し、圧縮画像データＩＭＧｃをメモリ２０に書き込むように構成される。メモリ２０は、圧縮画像データＩＭＧｃを記憶可能に構成される。メモリ２０は、例えばＤＲＡＭ（Ｄｙｎａｍｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）である。画像伸張装置３０は、メモリ２０に記憶された圧縮画像データＩＭＧｃを伸張し、伸張画像データＩＭＧｄを生成するように構成される。伸張画像データＩＭＧｄは、例えばディスプレイ（図示せず）に出力される。これにより、元画像データＩＭＧｏに対応する画像がディスプレイに表示される。
【００１０】
本実施形態の画像圧縮装置１０の構成について説明する。図２は、本実施形態の画像圧縮装置１０のブロック図である。画像圧縮装置１０は、圧縮部１２と、書込アドレス決定部１４と、メモリ制御部１６と、を備える。
【００１１】
圧縮部１２は、Ｉ個の画素ＰＸ（ｉ：ｉ＝１〜Ｉ）を含む元画像データＩＭＧｏと、元画像データＩＭＧｏに適用される画像圧縮率Ｐと、を入力し、元画像データＩＭＧｏをＮ（Ｎは２以上の整数）個のブロックラインＢＬ（ｎ：ｎ＝２〜Ｎ）に分割する。さらに、各ブロックラインＢＬ（ｎ）をＭ（Ｍは２以上の整数）個のサブブロックラインＳＢＬ（ｍ：ｍ＝１〜Ｍ）に分割し、各サブブロックラインＳＢＬ（ｍ）をサブブロックライン圧縮率Ｐ（ｍ）で圧縮し、圧縮サブブロックラインＳＢＬｃ（ｍ）をメモリ制御部１６に出力する。また、圧縮部１２は、元画像データＩＭＧｏから得られる圧縮パラメータ（ブロックライン番号ｎ、サブブロックライン番号ｍ、サブブロックラインの数Ｍ、元画像データサイズＳｉｍｇｏ）と、画像圧縮率Ｐと、を書込アドレス決定部１４に出力する。
【００１２】
このとき、圧縮部１２は、式１の条件を満たすように、サブブロックライン圧縮率Ｐ（ｍ）を決定する。即ち、Ｍ個のサブブロックラインＳＢＬ（ｍ）を異なるサブブロックライン圧縮率Ｐ（ｍ）で圧縮することにより得られる圧縮サブブロックラインサイズＳｂｌ（ｍ）の総和が、元画像データＩＭＧｏを画像圧縮率Ｐで圧縮することにより得られるデータのデータサイズ以下となるように、サブブロックラインＳＢＬ（ｍ）毎のサブブロックライン圧縮率Ｐ（ｍ）が決められる。
【数１】
0005597175.tif 000002
【００１３】
書込アドレス決定部１４は、圧縮パラメータ（ブロックライン番号ｎ、サブブロックライン番号ｍ、サブブロックラインの数Ｍ、元画像データサイズＳｉｍｇｏ）と、画像圧縮率Ｐと、を入力し、書込アドレスＡＤＤｗ（ｍ）をメモリ制御部１６に出力する。
【００１４】
メモリ制御部１６は、圧縮サブブロックラインＳＢＬｃ（ｍ）及び書込アドレスＡＤＤｗ（ｍ）を入力し、メモリ２０の書込アドレスＡＤＤｗ（ｍ）に圧縮サブブロックラインＳＢＬｃ（ｍ）を格納する。Ｍ個の圧縮サブブロックラインＳＢＬｃ（１）〜ＳＢＬｃ（ｍ）が、圧縮画像データＩＭＧｃに対応する。
【００１５】
（第１実施形態）
図３及び図４は、第１実施形態の圧縮部１２の動作の説明図である。圧縮部１２は、元画像データＩＭＧｏを、Ｎ個のブロックラインＢＬ（ｎ）に分割する。例えば、Ｎ＝８の場合、圧縮部１２は、８×８個の画素ＰＸから構成される元画像データＩＭＧｏを、Ｘ方向に８画素且つＹ方向に１画素の８個のブロックラインＢＬ（１）〜ＢＬ（８）に分割する（図３（Ａ））。
【００１６】
また、圧縮部１２は、各ブロックラインＢＬ（ｎ）を、Ｍ個のサブブロックラインＳＢＬ（ｍ）に分割する。例えば、Ｍ＝４の場合、圧縮部１２は、１×８個の画素ＰＸから構成されるブロックラインＢＬ（ｎ）を、Ｘ方向に２画素の４個のサブブロックラインＳＢＬ（１）〜ＳＢＬ（４）に分割する（図３（Ｂ））。
【００１７】
また、圧縮部１２は、各サブブロックラインＳＢＬ（ｍ）を圧縮する。具体的には、圧縮部１２は、各サブブロックラインＳＢＬ（ｍ）に対して、先頭画素ＰＸ（１）を独立に（即ち、如何なる画素も参照せずに）符号化し、（ｉ＋１）番目の画素ＰＸ（ｉ＋１）を、（ｉ）番目の画素ＰＸ（ｉ）（即ち、直前の隣接画素）を参照して符号化し、圧縮サブブロックラインＳＢＬｃ（ｍ）を生成する。例えば、圧縮部１２は、サブブロックラインＳＢＬ（ｍ）の先頭画素ＰＸ（１）を独立に符号化する（図４（Ａ））。次いで、圧縮部１２は、サブブロックラインＳＢＬ（ｍ）の２番目の画素ＰＸ（２）を、直前の隣接画素ＰＸ（１）を参照して符号化する（図４（Ｂ））。これにより、独立に符号化された先頭画素ＰＸ（１）と、直前の隣接画素ＰＸ（１）を参照して符号化された画素ＰＸ（２）と、から構成される圧縮サブブロックラインＳＢＬｃ（ｍ）が得られる（図４（Ｃ））。
【００１８】
図５及び図６は、第１実施形態の書込アドレス決定部１４の動作の説明図である。書込アドレス決定部１４は、ブロックライン番号を用いてメモリ２０のメモリ空間内の記憶領域Ａを画定する先頭アドレスＡＤＤｈ及び終端アドレスＡＤＤｅを決定する（図５（Ａ））。記憶領域Ａは、１ブロックラインの圧縮された元画像データを記憶する。書込アドレス決定部１４は、式２を用いて、元画像データＩＭＧｏのサイズＳｉｍｇｏと、ブロック分割数Ｍと、画像圧縮率Ｐより、サブブロックラインサイズＳｂｌを計算する。また、書込アドレス決定部１４は、式３を用いて、サブブロックラインサイズＳｂｌと、サブブロックラインの数Ｍより、終端アドレスＡＤＤｅを計算する。
Sbl = (Simgo * P) *1/M  …（式２）
ADDe = ADDh + M * Sbl  …（式３）
【００１９】
次いで、書込アドレス決定部１４は、記憶領域Ａの先頭アドレスＡＤＤｈを、圧縮サブブロックラインＳＢＬｃ（１）を書き込むべき書込アドレスＡＤＤｗ（１）として決定する（図５（Ｂ））。また、書込アドレス決定部１４は、書込アドレスＡＤＤｗ（１）から１ブロックラインサイズＳｂｌだけ隔てたアドレスを、圧縮サブブロックラインＳＢＬｃ（２）を書き込むべき書込アドレスＡＤＤｗ（２）として決定する（図５（Ｃ））。即ち、書込アドレス決定部１４は、式４を用いて、書込アドレスＡＤＤｗ（ｍ）を計算する。これにより、Ｍ＝４の場合には、記憶領域Ａが、メモリ２０のアドレス空間において小さいアドレスから大きいアドレスの方向（方向ＳＬ）に向かって、４個の書込領域ＷＡ（１）〜ＷＡ（４）に分割される（図６）。その結果、ｍ番目の圧縮サブブロックラインＳＢＬｃを書き込むべき書込アドレスＡＤＤｗ（ｍ）が一意に決まる。
ADDw(m) = ADDh + (m - 1) * Sbl  …（式４）
【００２０】
図７は、第１実施形態のメモリ制御部１６の動作の説明図である。はじめに、メモリ制御部１６は、圧縮サブブロックラインＳＢＬｃ（１）を、書込アドレスＡＤＤｗ（１）を始点とする書込領域ＷＡ（１）に、メモリ空間において水平方向（Ｈ方向）及び垂直方向（Ｖ方向）の順方向に書き込む（図７（Ａ））。
【００２１】
次いで、メモリ制御部１６は、圧縮サブブロックラインＳＢＬｃ（２）〜ＳＢＬｃ（４）を、それぞれ、書込アドレスＡＤＤｗ（２）〜ＡＤＤｗ（４）を始点とする書込領域ＷＡ（２）〜ＷＡ（４）に、メモリ空間においてＨ方向及びＶ方向の順方向に書き込む（図７（Ｂ）〜（Ｄ））。これにより、書込領域ＷＡ（１）〜ＷＡ（４）に、元画像データＩＭＧｏに対応する圧縮サブブロックラインＳＢＬｃ（１）〜ＳＢＬｃ（４）が記憶される（図７（Ｅ））。
【００２２】
第１実施形態によれば、サブブロックラインＳＢＬの数Ｍと、元画像データＩＭＧｏの元画像データサイズと、画像圧縮率Ｐと、に基づいて、圧縮サブブロックラインＳＢＬｃ（ｍ）毎にメモリ２０の書込アドレスＡＤＤｗ（ｍ）を決定し、複数の圧縮サブブロックラインＳＢＬｃを、各圧縮サブブロックラインＳＢＬｃ（ｍ）に対応する書込アドレスＡＤＤｗ（ｍ）に書き込む。その結果、各書込アドレスＡＤＤｗ（ｍ）に記憶された各圧縮サブブロックラインＳＢＬｃ（ｍ）を個別に読み出すことが可能となる。これにより、例えば、圧縮サブブロックラインＳＢＬｃ（２）のみを伸張する場合に、画像伸張装置３０は、圧縮サブブロックラインＳＢＬｃ（１）を読み出すことなく、圧縮サブブロックラインＳＢＬｃ（２）のみを読み出すことができる。このことは、画像伸張装置３０が圧縮サブブロックラインＳＢＬｃ（ｍ）を読み出すときに使用するバスのバンド幅と、画像伸張装置４０が圧縮サブブロックラインＳＢＬｃ（ｍ）を伸張するときのサイクル数と、が、１／Ｍに減縮することを意味する。即ち、第１実施形態によれば、ブロックラインＢＬの大きさに依らず、メモリ２０から伸張すべきデータ（圧縮サブブロックラインＳＢＬｃ（ｍ））を読み出すときのバンド幅及びレイテンシを低減することができる。
【００２３】
図８は、第１実施形態の変形例の圧縮部１２の動作の説明図である。１ブロックラインは、Ｙ方向に複数画素を含む。圧縮部１２は、図３（Ａ）に代えて例えば図８（Ａ）に示すように、Ｘ方向に８画素且つＹ方向に２画素の４個のブロックラインＢＬ（１）〜ＢＬ（４）に分割しても良い。この場合には、圧縮部１２は、図３（Ｂ）に代えて図８（Ｂ）に示すように、各ブロックラインＢＬ（ｎ）を、Ｘ方向に２画素且つＹ方向に２画素の４個のサブブロックラインＳＢＬ（１）〜ＳＢＬ（４）に分割しても良い。
【００２４】
第１実施形態の変形例によれば、ブロックラインＢＬの形状に依らず、メモリ２０から伸張すべきデータ（圧縮サブブロックラインＳＢＬｃ（ｍ））を読み出すときのバンド幅及びレイテンシを低減することができる。
【００２５】
（第２実施形態）
第２実施形態について説明する。第２実施形態では、２つの前提条件（第１前提条件及び第２前提条件）が成立する場合に、２つの書込領域ＷＡ（１）及びＷＡ（２）に、元画像データＩＭＧｏに対応する２個の圧縮サブブロックラインＳＢＬｃ（１）及びＳＢＬｃ（２）を書き込む例について説明する。なお、第１実施形態と同様の説明は省略する。
【００２６】
第１前提条件は、圧縮サブブロックラインＳＢＬｃ（１）のサイズは１つの書込領域より大きく、且つ、圧縮サブブロックラインＳＢＬｃ（２）のサイズは１つの書込領域より小さい、というものである。第２前提条件は、圧縮サブブロックラインＳＢＬｃ（１）及びＳＢＬｃ（２）が、１つの書込アドレスＡＤＤｗで画定されるメモリライン上で重複しない、というものである。第１前提条件及び第２前提条件が成立するか否かは、圧縮部１２が用いる圧縮アルゴリズムによって決まる。
【００２７】
図９及び図１０は、第２実施形態の書込アドレス決定部１４の動作の説明図である。書込アドレス決定部１４は、第１実施形態と同様に、メモリ２０のメモリ空間内の記憶領域Ａを画定する先頭アドレスＡＤＤｈ及び終端アドレスＡＤＤｅを決定する（図９（Ａ））。次いで、書込アドレス決定部１４は、第１実施形態と同様に、書込アドレスＡＤＤｗ（１）及びＡＤＤｗ（２）を決定する（図９（Ｂ）及び（Ｃ））。これにより、記憶領域Ａが、２つの書込領域ＷＡ（１）及びＷＡ（２）に分割される（図１０）。
【００２８】
図１１は、第２実施形態のメモリ制御部１６の動作の第１例の説明図である。第１例では、圧縮サブブロックラインＳＢＬｃ（１）が、書込領域ＷＡ（１）の全体と、書込領域ＷＡ（１）に続く書込領域ＷＡ（２）の一部と、に書き込まれる。はじめに、メモリ制御部１６は、圧縮サブブロックラインＳＢＬｃ（１）を、書込アドレスＡＤＤｗ（１）を始点とする領域（即ち、書込領域ＷＡ（１）の全体及び書込領域ＷＡ（２）の一部）に、メモリ空間においてＨ方向及びＶ方向の順方向に書き込む（図１１（Ａ））。
【００２９】
次いで、メモリ制御部１６は、式５を用いて、終端アドレスＡＤＤｅと、メモリ２０の書込単位ＷＵより、書込アドレスＡＤＤｗ´を計算する。書込アドレスＡＤＤｗ´は、終端アドレスＡＤＤｅからメモリ２０の書込単位ＷＵ（例えば、３２ビット）の分だけ戻ったアドレスである。次に、メモリ制御部１６は、圧縮サブブロックラインＳＢＬｃ（２）を、書込アドレスＡＤＤｗ´を始点とする領域（即ち、書込領域ＷＡ（２）のうち、圧縮サブブロックラインの残留部分ＳＢＬｃ（１）´が記憶されていない部分）に、メモリ空間においてＨ方向の順方向、且つ、Ｖ方向の逆方向に書き込む（図１１（Ｂ））。これにより、書込領域ＷＡ（１）及びＷＡ（２）に、元画像データＩＭＧｏに対応する圧縮サブブロックラインＳＢＬｃ（１）及びＳＢＬｃ（２）が記憶される（図１１（Ｃ））。
ADDw’ = ADDe - WU  …（式５）
【００３０】
第２実施形態の第１例によれば、第１書込アドレスＡＤＤｗ（１）（＝ＡＤＤｈ）を始点とする領域に第１圧縮サブブロックラインＳＢＬｃ（１）を書き込み、終端アドレスＡＤＤｅからメモリ２０の書込単位分だけ戻った第２書込アドレスＡＤＤｗ´を始点とする領域に第２圧縮サブブロックラインＳＢＬｃ（２）を書き込む。これにより、第１実施形態に比べて、メモリ２０の使用領域を低減することができる。
【００３１】
図１２は、第２実施形態のメモリ制御部１６の動作の第２例の説明図である。第２例では、圧縮サブブロックラインＳＢＬｃ（１）の一部が、第２書込領域ＷＡ（２）の下端から書き込まれる。はじめに、メモリ制御部１６は、圧縮サブブロックラインの第１部分ＳＢＬｃ（１−１）を、書込アドレスＡＤＤｗ（１）を始点とする書込領域ＷＡ（１）に、メモリ空間においてＨ方向及びＶ方向の順方向に書き込む（図１２（Ａ））。
【００３２】
次いで、メモリ制御部１６は、式５を用いて、終端アドレスＡＤＤｅと、メモリ２０の書込単位ＷＵよりアドレスＡＤＤｗ´を計算する。また、メモリ制御部１６は、圧縮サブブロックラインの第２部分（即ち、書込領域ＷＡ（１）に書き込まれていない部分）ＳＢＬｃ（１−２）を、書込アドレスＡＤＤｗ´を始点とする領域（即ち、書込領域ＷＡ（２）の一部）に、メモリ空間においてＨ方向の順方向、且つ、Ｖ方向の逆方向に書き込む（図１２（Ｂ））。
【００３３】
次いで、メモリ制御部１６は、圧縮サブブロックラインＳＢＬｃ（２）を、書込アドレスＡＤＤｗ（２）を始点とする書込領域ＷＡ（２）のうち、圧縮サブブロックラインの第２部分ＳＢＬｃ（１−２）が記憶されていない部分に、メモリ空間においてＨ方向及びＶ方向の順方向に書き込む（図１２（Ｃ））。これにより、書込領域ＷＡ（１）及びＷＡ（２）に、元画像データＩＭＧｏに対応する圧縮サブブロックラインＳＢＬｃ（１）、並びにＳＢＬｃ（２）が記憶される（図１２（Ｄ））。
【００３４】
第２実施形態の第２例によれば、第１書込アドレスＡＤＤｗ（１）（＝ＡＤＤｈ）を始点とする第１書込領域ＷＡ（１）に、第１圧縮サブブロックラインの第１部分ＳＢＬｃ（１−１）を書き込み、終端アドレスＡＤＤｅからメモリ２０の書込単位ＷＵ分だけ戻った第３書込アドレスＡＤＤｗ´を始点として第２書込領域ＷＡ（２）に第１圧縮サブブロックラインの第２部分ＳＢＬｃ（１−２）を書き込み、第２書込アドレスＡＤＤｗ（２）を始点として第２書込領域ＷＡ（２）に第２圧縮サブブロックラインＳＢＬｃ（２）を書き込む。これにより、第１圧縮サブブロックラインＳＢＬｃ（１）のサイズが第１書込領域ＷＡ（１）の容量より大きくても、第１実施形態に比べて、メモリ２０の使用領域を低減することができる。
【００３５】
なお、第２実施形態では、圧縮サブブロックラインサイズＳｂｌ（１）（即ち、圧縮サブブロックラインＳＢＬｃ（１）のサイズ）が、圧縮サブブロックラインサイズＳｂｌ（２）（即ち、圧縮サブブロックラインＳＢＬｃ（１）に続く圧縮サブブロックラインＳＢＬｃ（２）のサイズ）より大きい場合について説明したが、第２実施形態は、圧縮サブブロックラインサイズＳｂｌ（１）が圧縮サブブロックラインサイズＳｂｌ（２）より小さい場合にも適用可能である。
【００３６】
即ち、第２実施形態では、メモリ制御部１６は、圧縮サブブロックラインＳＢＬｃ（１）の少なくとも一部を第１書込領域ＷＡ（１）に書き込み、圧縮サブブロックラインＳＢＬｃ（２）の少なくとも一部を第２書込領域ＷＡ（２）に書き込む。そして、圧縮サブブロックラインサイズＳｂｌ（１）が第１書込領域ＷＡ（１）のサイズより大きい場合には、メモリ制御部１６は、第１書込領域ＷＡ（１）に記憶されていない圧縮サブブロックラインＳＢＬｃ（１）の残留部分を、第２書込領域ＷＡ（２）に書き込む。一方、圧縮サブブロックラインサイズＳｂｌ（２）が第２書込領域ＷＡ（２）のサイズより大きい場合には、メモリ制御部１６は、第２書込領域ＷＡ（２）に記憶されていない圧縮サブブロックラインの残留部分を、第１書込領域ＷＡ（１）に書き込む。
【００３７】
（第３実施形態）
第３実施形態について説明する。第３実施形態の画像圧縮装置は、メモリ２０の書込単位ＷＵ（例えば、１メモリライン）分のデータを記憶可能なレジスタＲＥＧを有する。第３実施形態では、第１前提条件及び第２前提条件が成立する場合に、２つの書込領域ＷＡ（１）及びＷＡ（２）に、元画像データＩＭＧｏに対応する２個の圧縮サブブロックラインＳＢＬｃ（１）及びＳＢＬｃ（２）を書き込む例について説明する。なお、第１実施形態及び第２実施形態と同様の説明は省略する。
【００３８】
第１前提条件は、第２実施形態と同様である。第２前提条件は、圧縮サブブロックラインＳＢＬｃ（１）の一部と圧縮サブブロックラインＳＢＬｃ（２）の一部とが、先頭アドレスＡＤＤｄｌｈで画定されるメモリライン上で重複する可能性がある、というものである。第１前提条件及び第２前提条件が成立するか否かは、圧縮部１２が用いる圧縮アルゴリズムによって決まる。
【００３９】
書込アドレス決定部１４は、第２実施形態と同様に動作する（図９（Ａ）〜（Ｃ））。これにより、記憶領域Ａが、２つの書込領域ＷＡ（１）及びＷＡ（２）に分割される（図１０）。
【００４０】
図１３は、第３実施形態のメモリ制御部１６の動作の第１例の説明図である。はじめに、メモリ制御部１６は、圧縮サブブロックラインＳＢＬｃ（１）の第１部分ＳＢＬｃ（１−１）及び第２部分ＳＢＬｃ（１−２）を、書込アドレスＡＤＤｗ（１）を始点とする領域（即ち、書込領域ＷＡ（１）の全体及び書込領域ＷＡ（２）の一部）に、メモリ２０のメモリ空間においてＨ方向及びＶ方向の順方向に書き込む（図１３（Ａ））。圧縮サブブロックラインＳＢＬｃ（１）の第２部分（１−２）のサイズは、メモリ２０の書込単位ＷＵより小さい。以下、圧縮サブブロックラインＳＢＬｃ（１）の第２部分（１−２）が書き込まれる書込領域ＷＡ（２）の一部を、「重複メモリラインＤＬ」という。
【００４１】
次いで、メモリ制御部１６は、圧縮サブブロックラインＳＢＬｃ（２）の第１部分ＳＢＬｃ（２−１）を、終端アドレスＡＤＤｅを始点として、書込領域ＷＡ（２）のうちの重複メモリラインＤＬを除く領域に、メモリ空間においてＨ方向及びＶ方向の逆方向に書き込む（図１３（Ｂ））。また、メモリ制御部１６は、圧縮サブブロックラインＳＢＬｃ（２）の第２部分ＳＢＬｃ（２−２）（即ち、重複メモリラインＤＬに書き込まれるべき部分）を、メモリ制御部１６内のレジスタＲＥＧの終端アドレスＡＤＤｒｅｇｅを始点とする領域に、レジスタＲＥＧのレジスタ空間においてＨ方向の逆方向に書き込む。
【００４２】
次いで、メモリ制御部１６は、重複メモリラインＤＬに記憶された圧縮サブブロックラインＳＢＬｃ（１）の第２部分ＳＢＬｃ（１−２）を、レジスタＲＥＧに転送する。即ち、メモリ制御部１６は、圧縮サブブロックラインＳＢＬｃ（１）の第２部分ＳＢＬｃ（１−２）を、レジスタＲＥＧの先頭アドレスＡＤＤｒｅｇｈを始点とする領域に、レジスタ空間においてＨ方向に順方向に書き込む。これにより、レジスタＲＥＧには、圧縮サブブロックラインＳＢＬｃ（１）の第２部分ＳＢＬｃ（１−２）及び圧縮サブブロックラインＳＢＬｃ（２）の第２部分ＳＢＬｃ（２−２）を含む、１ライン分のラインデータが記憶される。また、メモリ制御部１６は、メモリ２０から圧縮サブブロックラインＳＢＬｃ（１）の第２部分ＳＢＬｃ（１−２）を削除する（図１３（Ｃ））。
【００４３】
次いで、メモリ制御部１６は、レジスタＲＥＧに記憶されたラインデータ（第２部分ＳＢＬｃ（１−２）及びＳＢＬｃ（２−２））を、重複メモリラインＤＬの先頭アドレスＡＤＤｄｌｈを始点とする領域に、メモリ空間においてＨ方向の順方向に書き込む（図１３（Ｄ））。また、メモリ制御部１６は、第２部分ＳＢＬｃ（１−２）及びＳＢＬｃ（２−２）を、レジスタＲＥＧから削除する。これにより、書込領域ＷＡ（１）及びＷＡ（２）に、元画像データＩＭＧｏに対応する圧縮サブブロックラインＳＢＬｃ（１）の第１部分ＳＢＬｃ（１−１）及び第２部分ＳＢＬｃ（１−２）、並びに圧縮サブブロックラインＳＢＬｃ（２）の第１部分ＳＢＬｃ（２−１）及び第２部分ＳＢＬｃ（２−２）が記憶される（図１３（Ｅ））。
【００４４】
第３実施形態の第１例によれば、重複メモリラインＤＬに書き込まれた第１圧縮サブブロックラインＳＢＬｃ（１）の第２部分ＳＢＬｃ（１−２）及び第２圧縮サブブロックラインＳＢＬｃ（２）の第２部分ＳＢＬｃ（２−２）を含むラインデータを、いったんレジスタＲＥＧに書き込んだ後に、レジスタＲＥＧに記憶されたラインデータを、重複メモリラインＤＬに書き込む。これにより、第１圧縮サブブロックラインＳＢＬｃ（１）の第２部分ＳＢＬｃ（１−２）と第２圧縮サブブロックラインＳＢＬｃ（２）の第２部分ＳＢＬｃ（２−２）とが、１つの重複メモリラインＤＬに書き込まれる場合であっても、第１実施形態に比べて、メモリ２０の使用領域を低減することができる。
【００４５】
図１４は、第３実施形態のメモリ制御部１６の動作の第２例の説明図である。はじめに、メモリ制御部１６は、圧縮サブブロックラインＳＢＬｃ（１）の第１部分ＳＢＬｃ（１−１）を、書込アドレスＡＤＤｗ（１）を始点とする領域（即ち、書込領域ＷＡ（１）の全体及び書込領域ＷＡ（２）の一部）に、メモリ空間においてＨ方向及びＶ方向の順方向に書き込む（図１４（Ａ））。また、メモリ制御部１６は、圧縮サブブロックラインＳＢＬｃ（１）の第２部分（１−２）を、レジスタＲＥＧの先頭アドレスＡＤＤｒｅｇｈを始点とする領域に、レジスタ空間においてＨ方向の順方向に書き込む。圧縮サブブロックラインＳＢＬｃ（１）の第２部分（１−２）は、メモリ２０の書込単位ＷＵより小さいデータである。
【００４６】
次いで、メモリ制御部１６は、圧縮サブブロックラインＳＢＬｃ（２）の第１部分（２−１）を、終端アドレスＡＤＤｅを始点として、書込領域ＷＡ（２）のうちの重複メモリラインＤＬを除く領域に、メモリ空間においてＨ方向及びＶ方向の逆方向に書き込む（図１４（Ｂ））。また、メモリ制御部１６は、圧縮サブブロックラインＳＢＬｃ（２）の第２部分（２−２）を、メモリ制御部１６内のレジスタＲＥＧの終端アドレスＡＤＤｒｅｇｅを始点とする領域に、レジスタ空間においてＨ方向の逆方向に書き込む。圧縮サブブロックラインＳＢＬｃ（２）の第２部分（２−２）のサイズは、メモリ２０の書込単位ＷＵより小さい。これにより、レジスタＲＥＧには、圧縮サブブロックラインＳＢＬｃ（１）の第２部分ＳＢＬｃ（１−２）及び圧縮サブブロックラインＳＢＬｃ（２）の第２部分ＳＢＬｃ（２−２）を含む、１ライン分のラインデータが記憶される。
【００４７】
次いで、メモリ制御部１６は、レジスタＲＥＧに記憶されたラインデータ（第２部分ＳＢＬｃ（１−２）及びＳＢＬｃ（２−２））を、重複メモリラインＤＬの先頭アドレスＡＤＤｄｌｈを始点とする領域に、メモリ空間においてＨ方向の順方向に書き込む（図１４（Ｃ））。また、メモリ制御部１６は、第２部分ＳＢＬｃ（１−２）及びＳＢＬｃ（２−２）を、レジスタＲＥＧから削除する。これにより、書込領域ＷＡ（１）及びＷＡ（２）に、元画像データＩＭＧｏに対応する、圧縮サブブロックラインＳＢＬｃ（１）の第１部分（１−１）及び第２部分（１−２）、並びに、圧縮サブブロックラインＳＢＬｃ（２）の第１部分（２−１）及び第２部分（２−２）が記憶される（図１４（Ｄ））。
【００４８】
第３実施形態の第２例によれば、第１圧縮サブブロックラインＳＢＬｃ（１）の第２部分ＳＢＬｃ（１−２）及び第２圧縮サブブロックラインＳＢＬｃ（２）の第２部分ＳＢＬｃ（２−２）を含むラインデータを、いったんレジスタＲＥＧに書き込んだ後に、レジスタＲＥＧに記憶されたラインデータを、重複メモリラインＤＬに書き込む。これにより、第３実施形態の第１例に比べて、メモリ制御部１６がメモリ２０に圧縮サブブロックラインＳＢＬｃ（ｍ）を書き込むのに要するサイクル数を低減することができる。
【００４９】
なお、第３実施形態では、圧縮サブブロックラインサイズＳｂｌ（１）が、圧縮サブブロックラインサイズＳｂｌ（２）より大きい場合について説明したが、第３実施形態は、圧縮サブブロックラインサイズＳｂｌ（１）が圧縮サブブロックラインサイズＳｂｌ（２）より小さい場合にも適用可能である。
【００５０】
本実施形態に係る画像圧縮装置１０の少なくとも一部は、ハードウェアで構成しても良いし、ソフトウェアで構成しても良い。ソフトウェアで構成する場合には、画像圧縮装置１０の少なくとも一部の機能を実現するプログラムをフレキシブルディスクやＣＤ−ＲＯＭ等の記録媒体に収納し、コンピュータに読み込ませて実行させても良い。記録媒体は、磁気ディスクや光ディスク等の着脱可能なものに限定されず、ハードディスク装置やメモリなどの固定型の記録媒体でも良い。
【００５１】
また、本実施形態に係る画像圧縮装置１０の少なくとも一部の機能を実現するプログラムを、インターネット等の通信回線（無線通信も含む）を介して頒布しても良い。さらに、同プログラムを暗号化したり、変調をかけたり、圧縮した状態で、インターネット等の有線回線や無線回線を介して、あるいは記録媒体に収納して頒布しても良い。
【００５２】
なお、本発明は、上述した実施形態に限定されるものではなく、その要旨を逸脱しない範囲で構成要素を変形して具体化される。また、上述した実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明が形成可能である。例えば、上述した実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。
【符号の説明】
【００５３】
１  画像処理システム
１０  画像圧縮装置
１２  圧縮部
１４  書込アドレス決定部
１６  メモリ制御部
２０  メモリ
３０  画像伸張装置
【図１】
0005597175.tif 000003
【図２】
0005597175.tif 000004
【図３】
0005597175.tif 000005
【図４】
0005597175.tif 000006
【図５】
0005597175.tif 000007
【図６】
0005597175.tif 000008
【図７−１】
0005597175.tif 000009
【図７−２】
0005597175.tif 000010
【図７−３】
0005597175.tif 000011
【図８】
0005597175.tif 000012
【図９】
0005597175.tif 000013
【図１０】
0005597175.tif 000014
【図１１−１】
0005597175.tif 000015
【図１１−２】
0005597175.tif 000016
【図１２−１】
0005597175.tif 000017
【図１２−２】
0005597175.tif 000018
【図１３−１】
0005597175.tif 000019
【図１３−２】
0005597175.tif 000020
【図１３−３】
0005597175.tif 000021
【図１４−１】
0005597175.tif 000022
【図１４−２】
0005597175.tif 000023