(57)【要約】      （修正有）【課題】走査方式の変換とメモリアクセスに使用するメモリのメモリ容量を低減する画像処理装置を提供する。【解決手段】画像処理装置において、圧縮部は、画像処理が行われる第一の画像データ及び当該第一の画像データを圧縮処理した第二の画像データを保持する圧縮部共有バッファ１０３１と、圧縮部共有バッファ１０３１から第一の画像データを取得し、前記画像処理のときと異なる走査方式で圧縮処理を実行して第二の画像データを生成する圧縮処理部１０３２と、圧縮部共有バッファ１０３１への第一及び第二の画像データの書き込み及び読み出しを制御する圧縮制御部１０３３とを有する。圧縮制御部１０３３は、第一の画像データを所定のタイミングで圧縮部共有バッファ１０３１から読み出して圧縮処理部１０３２に出力することで、圧縮部共有バッファ１０３１にて第一及び第二の画像データが上書きされないよう制御する。【選択図】図２
2020195038.tif 000002
【特許請求の範囲】
【請求項１】
画像処理が行われる第一の画像データ及び当該第一の画像データを圧縮処理した第二の画像データを保持する第一のメモリと、
前記第一のメモリから前記第一の画像データを取得し、前記画像処理のときと異なる走査方式で圧縮処理を実行して第二の画像データを生成する生成手段と、
前記第一のメモリへの前記第一及び第二の画像データの書き込み及び読み出しを制御する制御手段と、
を有し、
前記制御手段は、前記第一の画像データを所定のタイミングで前記第一のメモリから読み出して前記生成手段に出力することで、前記第一のメモリにて前記第一及び第二の画像データが上書きされないよう制御する
ことを特徴とする画像処理装置。
【請求項２】
前記第二の画像データは、前記第一の画像データを縦および横の少なくとも何れかが複数画素の画素群で構成されるブロック単位で圧縮処理を実行して生成したデータであり、
前記第一のメモリは、幅方向にて前記画素群の横の画素数と同じ画素数以上の画素のデータを書き込み可能であり、高さ方向にて前記画素群の縦の画素数と同じ画素数の画素のデータを書き込み可能である領域を有し、
前記制御手段は、前記画素群の横および縦の画素数と同じ画素数の画素のデータが前記第一のメモリの領域に書き込まれたタイミングで、前記第一のメモリから前記第一の画像データを前記ブロック単位で読み出して前記生成手段へ出力する
ことを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記制御手段は、前記第一の画像データを所定数の画素のデータずつ前記第一のメモリの１つの領域に順番に書き込む
ことを特徴とする請求項２に記載の画像処理装置。
【請求項４】
前記第一のメモリは、
前記画素群の横の画素数と同じ画素数の画素のデータを書き込み可能な一時バッファと、
高さ方向にて、前記一時バッファと合わせて、前記画素群の縦の画素数と同じ画素数の画素のデータを書き込み可能であり、
幅方向にて、前記画素群の横の画素数以上の画素数の画素のデータを書き込み可能であるメモリ空間とを有し、
前記制御手段は、前記一時バッファに、前記画素群の横の画素数と同じ画素数の画素のデータを書き込まれたタイミングで、前記第一のメモリから前記第一の画像データを前記ブロック単位で読み出して前記生成手段へ出力する
ことを特徴とする請求項３に記載の画像処理装置。
【請求項５】
前記制御手段は、前記第一のメモリに書き込まれた前記第一の画像データの画素の座標を（Ｘ，Ｙ）とし、前記Ｙが前記画素群の縦の画素数の定数倍である、又は前記第一の画像データの最終ラインであり、かつ、前記Ｘが前記画素群の横の画素数の定数倍である、又は前記第一の画像データの最終画素であるときに、前記第一のメモリに書き込まれた前記第一の画像データの画素の座標（Ｘ，Ｙ）を終点とした、前記画素群の横および縦の画素数と同じ画素数の画素のデータを前記第一のメモリから読み出して前記生成手段へ出力する
ことを特徴とする請求項４に記載の画像処理装置。
【請求項６】
前記制御手段は、前記第一のメモリから読み出して前記生成手段へ前記第一の画像データを出力してから前記第二の画像データの生成に要する時間経過後に、前記生成手段で生成した前記第二の画像データを前記第一のメモリへ書き込む
ことを特徴とする請求項２から５の何れか一項に記載の画像処理装置。
【請求項７】
前記制御手段は、前記第一のメモリにおける、前記画素群の横の画素数と同じ画素数の画素のデータが書き込まれる領域と同じ大きさの領域に分割して前記第二の画像データを書きこむ、ことを特徴とする請求項６に記載の画像処理装置。
【請求項８】
前記制御手段は、前記第二の画像データを前記第一のメモリの最終ラインへ書き込む
ことを特徴とする請求項６または７に記載の画像処理装置。
【請求項９】
前記第二の画像データを保持する第二のメモリと、
前記制御手段の指示により、前記第一のメモリから読み出した前記第二の画像データを前記第二のメモリに書き込むことで、前記第二の画像データを転送する転送手段と、を備え、
前記制御手段は、前記転送手段によって前記第二の画像データを所定のタイミングで前記第一のメモリから読み出して前記第二のメモリに出力する
ことを特徴とする請求項１から８の何れか一項に記載の画像処理装置。
【請求項１０】
前記制御手段は、前記第一のメモリの１ラインへの前記第二の画像データの書込み期間中に、前記転送手段によって前記第二の画像データを前記第一のメモリから読み出して前記第二のメモリに出力する
ことを特徴とする請求項９に記載の画像処理装置。
【請求項１１】
画像処理のときと異なる走査方式で処理された第一の画像データ及び当該第一の画像データを伸長処理して、前記画像処理が行われる第二の画像データを保持する第一のメモリと、
前記第一のメモリから前記第一の画像データを取得し、伸長処理を実行して前記第二の画像データを生成する生成手段と、
前記第一のメモリへの前記第一及び第二の画像データの書き込み及び読み出しを制御する制御手段と、
を有し、
前記制御手段は、前記第一の画像データを所定のタイミングで前記第一のメモリから読み出して前記生成手段に出力することで、前記第一のメモリにて前記第一及び第二の画像データが上書きされないよう制御する
ことを特徴とする画像処理装置。
【請求項１２】
前記第二の画像データは、前記第一の画像データに対し伸長処理を実行して生成した、縦および横の少なくとも何れかが複数画素の画素群で構成されるブロック単位のデータであり、
前記第一のメモリは、幅方向にて前記画素群の横の画素数と同じ画素数以上の画素のデータを書き込み可能であり、高さ方向にて前記画素群の縦の画素数と同じ画素数の画素のデータを書き込み可能である領域を有し、
前記制御手段は、前記画像処理装置へ入力された入力画像データの幅の画素数と同じ画素数のデータが書き込まれたタイミングで、前記第一のメモリから前記第一の画像データを読み出して前記生成手段へ出力する
ことを特徴とする請求項１１に記載の画像処理装置。
【請求項１３】
前記制御手段は、前記画素群に対応する大きさの前記第一の画像データを前記第一のメモリから読み出して前記生成手段へ出力する
ことを特徴とする請求項１２に記載の画像処理装置。
【請求項１４】
前記制御手段は、前記第一のメモリから読み出して前記生成手段へ前記第一の画像データを出力してから前記第二の画像データの生成に要する時間経過後に、前記生成手段で生成した前記第二の画像データを前記第一のメモリへ書き込む
ことを特徴とする請求項１２または１３に記載の画像処理装置。
【請求項１５】
前記制御手段は、前記第一のメモリにおける、前記画素群の横および縦の画素数と同じ画素数の画素のデータが書き込まれる領域と同じ大きさの領域に前記第二の画像データを書きこむ、ことを特徴とする請求項１４に記載の画像処理装置。
【請求項１６】
前記第二の画像データに対して前記画像処理を行う画像処理手段を有し、
前記制御手段は、前記第二の画像データを所定数の画素のデータずつ前記第一のメモリから読み出して前記画像処理手段へ出力する
ことを特徴とする請求項１２から１５の何れか一項に記載の画像処理装置。
【請求項１７】
前記第一のメモリは、
前記画素群の横の画素数と同じ画素数の画素のデータを書き込み可能な一時バッファと、
高さ方向にて、前記一時バッファと合わせて、前記画素群の縦の画素数と同じ画素数の画素のデータを書き込み可能であり、
幅方向にて、前記画素群の横の画素数以上の画素数の画素のデータを書き込み可能であるメモリ空間とを有し、
前記制御手段は、前記一時バッファに、前記画素群の横の画素数と同じ画素数の画素のデータを書き込まれたタイミングで、前記第一のメモリから前記第二の画像データの画素のデータを読み出して前記画像処理手段へ出力する
ことを特徴とする請求項１６に記載の画像処理装置。
【請求項１８】
前記第一の画像データを保持する第二のメモリと、
前記制御手段の指示により、前記第二のメモリから読み出した前記第一の画像データを前記第一のメモリに書き込むことで、前記第一の画像データを転送する転送手段と、を備え、
前記制御手段は、前記転送手段によって前記第一の画像データを所定のタイミングで前記第二のメモリから読み出して前記第一のメモリに出力する
ことを特徴とする請求項１７に記載の画像処理装置。
【請求項１９】
前記制御手段は、前記画像処理装置への入力画像データの水平方向の画素数を前記第一のメモリの高さ方向の画素数で除算して得た数の画素を超えて前記画像処理手段へ出力したタイミングで、前記転送手段によって前記第一の画像データを前記第二のメモリから読み出して前記第一のメモリに出力する
ことを特徴とする請求項１８に記載の画像処理装置。
【請求項２０】
前記制御手段は、前記第一のメモリの１ラインの領域への前記第一の画像データの書込み期間中に、前記第一のメモリから前記第一の画像データを読み出して前記生成手段に出力する
ことを特徴とする請求項１８または１９に記載の画像処理装置。
【請求項２１】
前記制御手段は、前記第一の画像データを前記第一のメモリの上位ラインへ書き込む
ことを特徴とする請求項１８から２０の何れか一項に記載の画像処理装置。
【請求項２２】
画像処理が行われる第一の画像データ及び当該第一の画像データを圧縮処理した第二の画像データを第一のメモリに保持する保持ステップと、
前記第一のメモリから前記第一の画像データを取得し、前記画像処理のときと異なる走査方式で圧縮処理を実行して第二の画像データを生成する生成ステップと、
前記第一のメモリへの前記第一及び第二の画像データの書き込み及び読み出しを制御する制御ステップと、
を有し、
前記制御ステップでは、前記第一の画像データを所定のタイミングで前記第一のメモリから読み出すことで、前記第一のメモリにて前記第一及び第二の画像データが上書きされないよう制御する
ことを特徴とする画像処理方法。
【請求項２３】
画像処理のときと異なる走査方式で扱われる第一の画像データ及び当該第一の画像データを伸長処理して、前記画像処理が行われる第二の画像データを第一のメモリに保持する保持ステップと、
前記第一のメモリから前記第一の画像データを取得し、伸長処理を実行して前記第二の画像データを生成する生成ステップと、
前記第一のメモリへの前記第一及び第二の画像データの書き込み及び読み出しを制御する制御ステップと、
を有し、
前記制御ステップでは、前記第一の画像データを所定のタイミングで前記第一のメモリから読み出すことで、前記第一のメモリにて前記第一及び第二の画像データが上書きされないよう制御する
ことを特徴とする画像処理方法。
【請求項２４】
コンピュータを、請求項１から１０の何れか一項に記載の画像処理装置の各手段として機能させるためのプログラム。
【請求項２５】
コンピュータを、請求項１１から２１の何れか一項に記載の画像処理装置の各手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置、画像処理方法、およびプログラムに関し、特に、メモリ帯域平準化時のメモリ容量削減手法に関する。
【背景技術】
【０００２】
テレビやプロジェクタなどの画像処理装置において、入力映像の高解像度化が進んでおり、例えば、４Ｋ２Ｋ（水平４，０９６×垂直２，１６０など）や８Ｋ４Ｋ（水平７，６８０×垂直４，３２０など）といった、高解像度規格に対応した機器がある。これに伴い、入力映像のフレームメモリへの格納に要するメモリ帯域は、４Ｋ２ＫではＦｕｌｌ−ＨＤ（水平１，９２０×垂直１，０８０）の約４倍、８Ｋ４Ｋでは約１６倍に増大している。また、高フレームレート表示や超解像処理などの複数フレームを参照する画像処理、画像処理で扱う画素のビット数の増加により、必要となるメモリ帯域はますます増大している。
【０００３】
フレームメモリに画像を格納する際に画像を圧縮し、フレームメモリから圧縮画像を読み出しする際に伸長することで転送量を削減するメモリ帯域削減手法がある。特許文献１には、入力画像をブロック単位に分割し圧縮した圧縮データをフレームメモリに格納し、フレームメモリから圧縮データを読出し伸長してブロック単位の画像データを復元している。そして、復元したブロック単位の画像データに対し、画像処理を実施する技術が記載されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１５−１２２５８４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
特許文献１の技術では、画像処理時に画像データを１画素ずつ処理するのに対して、圧縮処理時に画像データを複数画素×複数画素で構成されるブロック単位で処理している。画像処理時と圧縮処理時とで走査方式が異なり、圧縮処理時に、画像処理時の走査方式から圧縮処理時の走査方式への変換を実施している。また、特許文献１の技術では、圧縮処理時と同様、伸長処理時に圧縮処理時の走査方式から画像処理時の走査方式への変換を実施している。使用するメモリのメモリ容量の低減に対する要望が高まっているが、特許文献１の技術では、このような要望に応えられない可能性があった。すなわち、特許文献１の技術では、走査方式変換用のメモリと、圧縮処理後の画像データをフレームメモリに格納する際のメモリアクセスを平準化するためのメモリとを個別に有する構成となっている。そのため、特許文献１の技術では、使用するメモリのメモリ容量の低減を十分に果たせない可能性があった。上述の課題は、圧縮処理時のみならず、伸長処理時にも同様に起きる。
【０００６】
本発明は、走査方式の変換とメモリアクセスに使用するメモリのメモリ容量を低減することを目的とする。
【課題を解決するための手段】
【０００７】
本発明の一態様に係る画像処理装置は、画像処理が行われる第一の画像データ及び当該第一の画像データを圧縮処理した第二の画像データを保持する第一のメモリと、前記第一のメモリから前記第一の画像データを取得し、前記画像処理のときと異なる走査方式で圧縮処理を実行して第二の画像データを生成する生成手段と、前記第一のメモリへの前記第一及び第二の画像データの書き込み及び読み出しを制御する制御手段と、を有し、前記制御手段は、前記第一の画像データを所定のタイミングで前記第一のメモリから読み出して前記生成手段に出力することで、前記第一のメモリにて前記第一及び第二の画像データが上書きされないよう制御することを特徴とする。
【発明の効果】
【０００８】
本発明によれば、走査方式の変換とメモリアクセスに使用するメモリのメモリ容量を低減することができる。
【図面の簡単な説明】
【０００９】
【図１】画像処理装置の概略構成例を示すブロック図
【図２】圧縮部のブロック図
【図３】圧縮部共有バッファの状態例を示す図
【図４】圧縮部共有バッファの状態例を示す図
【図５】伸長部のブロック図
【図６】伸長部共有バッファの状態例を示す図
【図７】伸長部共有バッファの状態例を示す図
【図８】伸長部共有バッファの状態例を示す図
【発明を実施するための形態】
【００１０】
本発明の説明に先立ち、ブロックスキャンで圧縮処理を実施する際の、画像入力時から画像圧縮時への方式変換と圧縮処理について説明する。
【００１１】
一例として、幅Ｗｉｎの画像をラスタースキャンで画像処理し、幅Ｂｗ×高さＢｈ（Ｂｗ、Ｂｈは自然数）のブロックスキャンで圧縮処理を実施する際の、方式変換と圧縮処理を説明する。圧縮部が十分なスループットを持ち、圧縮に必要な画素群を１サイクルで入力する構成の場合、方式変換バッファはＷｉｎ×（Ｂｈ−１）分のラインの画素を蓄積した後、ＢｈラインのＢｗ×１画素分の画素が入力された時点で圧縮部にブロック画像を出力する。また、以後ＢｈラインのＢｗサイクル毎に圧縮処理を実行する。よって、方式変換バッファは［Ｗｉｎ×（Ｂｈ−１）＋Ｂｗ×１］画素を蓄積できる必要がある。このバッファ構成の場合、Ｂｈの定数倍期間に圧縮処理が集中実行され、圧縮結果をメモリに転送する。その結果、メモリアクセスはＮ×Ｂｈ（Ｎは自然数）ラインが入力されている期間に集中し、それ以外の期間ではメモリアクセスが発行されないため、転送時のピーク帯域が高いという課題がある。この課題を回避する為に、一般に以下の２つの手法が考えられる。
【００１２】
第一の手法として、特許文献１に示される通り、圧縮部とメモリ転送部間にバッファを配し、転送を分散させるよう転送タイミングを制御する手法が挙げられる。上記バッファに圧縮部から集中出力される圧縮結果を蓄積し、平均的にメモリへの転送を発行させる。これにより、Ｂｈの定数倍期間のメモリアクセスの集中を排し、ピーク帯域を下げることが可能となる。一方で、メモリアクセスを平均化するためのバッファが増加する課題がある。
【００１３】
第二の手法として、圧縮処理を平均的に実施する手法が挙げられる。この手法では、Ｗｉｎ×Ｂｈ期間内で平均的に圧縮処理を実施するよう、走査変換バッファから圧縮部への出力を分散実施する。これにより、圧縮部から平均的に圧縮結果が出力され、メモリアクセスの集中を排すことが可能となる。一方で、スループットを保つためには方式変換に要するバッファをダブルバッファ構成にして書込み側と読出し側とを切り替える構成とする必要があり、特許文献１の手法と比較してバッファ容量がさらに増大する課題がある。
【００１４】
以下、本発明を実施するための形態について図面を用いて説明する。ただし、この実施形態に記載されている構成要素はあくまで例示であり、本発明の範囲をそれらに限定する趣旨のものではない。また、実施形態で説明されている構成要素の組み合わせのすべてが、課題を解決するための手段に必須のものとは限らず、種々の変形及び変更が可能である。
【００１５】
＜実施形態＞
●映像処理回路の構成
以下、本実施形態に係る画像処理装置を構成する映像処理回路の構成に関して説明する。図１は、本実施形態の映像処理回路１０の概略構成例を示すブロック図である。映像処理回路（画像処理装置）１０は、入力部１０１、画像処理部１０２Ａ、１０２Ｂ、圧縮部１０３Ａ、１０３Ｂ、伸長部１０４Ａ、１０４Ｂ、バス１０５、メモリ１０６、出力部１０８を有する。圧縮部１０３Ａ、１０３Ｂは、バス１０５へデータを出力可能にバス１０５と接続されている。伸長部１０４Ａ、１０４Ｂは、バス１０５からデータを入力可能にバス１０５と接続されている。メモリ１０６は、データを入出力可能にバス１０５と接続されている。映像処理回路１０に入力された映像信号は、まず入力部１０１に入力される。
【００１６】
入力部１０１は、例えば映像再生装置や撮像装置などの映像処理回路１０の外部の機器から入力された映像信号を受け付ける映像インターフェイスである。映像インターフェイスは、例えば、ＤＶＩやＨＤＭＩ（登録商標）、Ｄ−ｓｕｂなどである。ＤＶＩは、Ｄｉｇｉｔａｌ  Ｖｉｓｕａｌ  Ｉｎｔｅｒｆａｃｅの略である。ＨＤＭＩは、Ｈｉｇｈ−Ｄｅｆｉｎｉｔｉｏｎ  Ｍｕｌｔｉｍｅｄｉａ  Ｉｎｔｅｒｆａｃｅの略である。Ｄ−ｓｕｂは、Ｄ−ｓｕｂｍｉｎｉａｔｕｒｅの略である。入力部１０１は、映像信号から抽出した画像信号が示す画像を画像処理部１０２Ａに出力する。入力部１０１は、映像信号から抽出した同期信号を同期制御部１０７へ出力する。また、入力部１０１は、インターネットなどのネットワークを介して送信されるＭＰＥＧ（Ｍｏｖｉｎｇ  Ｐｉｃｔｕｒｅ  Ｅｘｐｅｒｔｓ  Ｇｒｏｕｐ）などの圧縮データを受けてデコードし、映像を構成する複数フレームの画像を出力する構成としてもよい。もしくは、入力部１０１は、ＤＶＤなどの記録メディアの映像を読出し、映像を構成する複数フレームの画像を出力する構成としてもよい。ここでは、入力部１０１の出力走査方式をラスタースキャンとして説明する。
【００１７】
画像処理部１０２Ａ、１０２Ｂは、入力部１０１から入力された画像に対し、メモリ１０６を用いる所定の画像処理を実施する。画像処理としては、例えば、ＩＰ（Ｉｎｔｅｒｌａｃｅ−Ｐｒｏｇｒｅｓｓｉｖｅ）変換や解像度変換、フレームレート変換、幾何変形処理、オーバードライブなどの処理が挙げられる。
【００１８】
画像処理部１０２Ａ、１０２Ｂは、メモリ１０６に格納する画像を圧縮部１０３に出力する。また、画像処理部１０２Ａ、１０２Ｂは、メモリ１０６から読出した画像を伸長部１０４から受取り、画像処理を実施した後、画像処理後の画像を出力部１０８に出力する。
【００１９】
映像処理装置１０では、複数種のメモリ１０６を使用する画像処理部を搭載することが多いため、図１には、画像処理部１０２Ａと１０２Ｂの２つの画像処理を搭載した例を図示している。例えば、入力映像がＦｕｌｌ−ＨＤ  ６０ｉ（ｉはインターレースを示す）であり、出力映像がＦｕｌｌ−ＨＤ  １２０ｐ（ｐはプログレッシブを示す）である映像処理装置を構成するとする。このような映像が映像処理装置１０に対して入出力する場合、画像処理部１０２Ａで、インターレース信号をプログレッシブ信号に変換するＩＰ変換処理を実施し、画像処理部１０２Ｂでフレームレートを変換する処理を実施する。このような処理を映像処理装置１０で実施する場合、同期制御部１０７は、画像処理部１０２Ａに６０Ｈｚの垂直同期信号を提供し、画像処理部１０２Ｂには１２０Ｈｚの垂直同期信号を提供する。画像処理部１０２Ａ、１０２Ｂはそれぞれ、同期信号に従いメモリ１０６から圧縮データの読出しを実行する。
【００２０】
画像処理部１０２Ａは、入力された画像に対してメモリ１０６を用いた前述の画像処理を実施し、処理結果を画像処理部１０２Ｂへ出力する。画像処理部１０２Ｂは、画像処理部１０２Ａから入力された画像処理部１０２Ａの処理結果に対してメモリ１０６を用いた前述の画像処理を実施し、処理結果を出力部１０８に出力する。
【００２１】
画像処理部１０２Ａ、１０２Ｂは、実施する処理によっては複数フレームの画像を参照する画像処理を実施することがある。例えば、画像処理部１０２がフレームレート変換を実施する場合、フレームＦｎ、Ｆｎ＋１の２枚を参照し、中間のＦｎ＋０．５を生成する。この中間のＦｎ＋０．５を生成する場合、伸長部１０４Ａ、１０４Ｂをそれぞれ対応する画像処理部１０２Ａ、１０２Ｂとバス１０５の間にて複数接続し、複数フレームの画像を読出す構成とし、画像処理を実施するよう構成することも可能である。
【００２２】
圧縮部１０３Ａ、１０３Ｂは、画像処理部１０２Ａ、１０２Ｂから入力される画像データに対し、所定の方式にて圧縮処理を実施し、バス１０５を介して圧縮結果をメモリ１０６に格納する。圧縮部１０３Ａ、１０３Ｂの圧縮方式は、上述した入力部１０１の出力走査方式と異なる。例えば、圧縮部１０３への画像データの入力がラスタースキャンである場合、圧縮部１０３Ａ、１０３Ｂは、例えばＪＰＥＧ（Ｊｏｉｎｔ  Ｐｈｏｔｏｇｒａｐｈｉｃ  Ｅｘｐｅｒｔｓ  Ｇｒｏｕｐ）等のブロック圧縮方式を用いることが可能である。圧縮方式に関しては、可逆圧縮、非可逆圧縮の何れの手法を用いてもよい。また、可変長圧縮、固定長圧縮の何れの手法を用いてもよい。
【００２３】
メモリ１０６は、画像処理部１０２Ａ、１０２Ｂで使用する圧縮画像を一時保持するフレームメモリである。メモリ１０６として、例えばＤＲＡＭ（Ｄｙｎａｍｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）などの各種メモリを用いることができる。
【００２４】
伸長部１０４Ａ、１０４Ｂは、メモリ１０６内の圧縮画像を読出し、圧縮部１０３で用いた圧縮手法の逆変換処理を実施し、画像処理部１０２Ａ、１０２Ｂの処理時の走査に変換し画像処理部１０２Ａ、１０２Ｂへ出力する。メモリ１０６からの読出し処理は、同期制御部１０７の同期信号に従い生成される画像処理部１０２Ａ、１０２Ｂの読出し要求に応じて実施される。
【００２５】
同期制御部１０７は、入力信号（入力された映像信号）の同期信号を取得し、画像処理部１０２Ａ、１０２Ｂの読出し処理タイミングを制御する同期信号を生成し、生成した同期信号を画像処理部１０２Ａ、１０２Ｂに出力する。同期制御部１０７は、画像処理部１０２Ａ、１０２Ｂが処理するフレームレートに従い、同期信号を生成し、画像処理部１０２Ａ、１０２Ｂの動作タイミングを制御する。入力映像と出力映像がフレームロックの関係にある場合、同期制御部１０７は、入力信号を基準に同期信号を生成する。フレームロック動作を実施しない場合、同期制御部１０７は、出力部１０８の出力映像に含まれる出力同期信号を基準に同期信号を生成することもできる。
【００２６】
出力部１０８は、画像処理部１０２Ａ、１０２Ｂから出力された処理結果である複数フレームの画像で構成される映像を所定のフォーマットに変換し、フォーマット変換後の映像を映像処理装置１０の外部へ出力する。例えば、映像処理装置１０が液晶テレビである場合、出力部１０８が液晶パネルを駆動する信号に変換した後、映像を表示する。もしくは、出力部１０８は、映像処理装置１０がＤＶＤプレイヤー等の再生装置の場合、ＨＤＭＩ等の映像インターフェイスから映像を出力する構成とすることもできる。
【００２７】
●圧縮部の構成と動作
次に、上述した圧縮部１０３Ａ、１０３Ｂに対応する圧縮部１０３の構成と動作に関して説明する。図２は、圧縮部１０３の構成例を示すブロック図である。圧縮部１０３は、圧縮部共有バッファ１０３１、圧縮処理部１０３２、圧縮制御部１０３３を有する。圧縮部共有バッファ１０３１と圧縮処理部１０３２は、画像（データ）を互いに入出力可能に接続している。圧縮制御部１０３３は、圧縮部共有バッファ１０３１に制御信号を送出可能に圧縮部共有バッファ１０３１と接続している。
【００２８】
圧縮部共有バッファ１０３１は、ＳＲＡＭなどのメモリによって構成され、圧縮部１０３内のデータを一時的に保管するための場所として使用される。圧縮部共有バッファ１０３１は、以下の２つの目的で使用される。１つの目的は、画像処理部１０２の出力画像を圧縮処理部１０３２の走査方式に変換するためのバッファとして使用することである。すなわち、圧縮部共有バッファ１０３１は、画像処理部１０２Ａ、１０２Ｂによる画像処理のときと異なる走査方式に変換するためのバッファとして使用される。
【００２９】
もう１つは、圧縮処理部１０３２の圧縮処理による圧縮結果である圧縮データをメモリ１０６に転送する際、圧縮データを一時的に保管するバッファとして使用する。圧縮部共有バッファ１０３１は、詳細につき後述する通り、同一アドレスのバッファが上記２つの異なる用途で共有する形で使用される。圧縮部共有バッファ１０３１では、１画素のデータが１つのアドレス空間に格納される。なお、圧縮部共有バッファ１０３１の１つのアドレス空間に格納されるデータは、１画素のデータに限定されず、２画素のデータなどの所定数の画素のデータとしてもよい。圧縮データにおける１つの圧縮ブロックのデータは、複数のアドレス空間に分割して格納される。圧縮部共有バッファ１０３１は、幅方向にて後述の画素群の横の画素数と同じ画素数以上の画素のデータを可能であり、高さ方向にて後述の画素群の縦の画素数と同じ画素数の画素のデータを書き込み可能である領域を有する。圧縮部共有バッファ１０３１は、メモリ空間と一時バッファを備える。圧縮部共有バッファ１０３１のメモリ空間は、幅ＭＷ×高さ（Ｂｈ−１）（ＭＷはバッファの幅を示す。Ｂｈは後述する圧縮ブロックの高さを示す。）の画素のデータを格納可能な領域を有する。また、圧縮部共有バッファ１０３１の一時バッファは、（Ｂｗ−１）画素（Ｂｗは後述する圧縮ブロックの幅を示す。）のデータを格納可能な領域を有する。すなわち、圧縮部共有バッファ１０３１は、画素群の画素数と同じ画素数の画素のデータを書き込み可能な一時バッファを有する。圧縮部共有バッファ１０３１は、高さ方向にて一時バッファと合わせて、前記画素群の縦方向の画素数と同じ画素数の画素のデータを書き込み可能であり、幅方向にて前記画素群の横方向の画素数以上の画素数の画素のデータを書き込み可能なメモリ空間を有する。
【００３０】
圧縮処理部１０３２は、圧縮部共有バッファ１０３１で圧縮処理部１０３２の走査方式に変換した画像データを受け、所定の処理時間で圧縮処理を実施した後、圧縮部共有バッファ１０３１へ圧縮データを出力する。本実施形態では、圧縮処理は、横Ｂｗ画素×縦Ｂｈ画素の矩形単位で実施する処理として説明する。また、圧縮処理は、固定長圧縮、かつ固定レイテンシで処理するとし、入力された画像データのデータ量が１／Ｎ（Ｎ＞０）となる圧縮データを圧縮処理開始からＴｅｎｃ時間後に出力するとして説明する。すなわち、Ｔｅｎｃは、入力された画像データに対し圧縮処理を実施して、画像データのデータ量が１／Ｎとなる圧縮データの生成に要する時間（圧縮処理時間）を示している。
【００３１】
圧縮制御部１０３３は、以下に示す制御Ａから制御Ｄの制御を実施する。制御Ａでは、圧縮部共有バッファ１０３１へ画像処理部１０２の出力結果を書き込む入力書込み制御を実施する。制御Ｂでは、圧縮部共有バッファ１０３１に書き込まれた画像を圧縮処理部１０３２の走査方式に変換するよう読み出し圧縮処理部１０３２へ出力する圧縮読出し制御を実施する。制御Ｃでは、圧縮処理部１０３２による圧縮結果を圧縮部共有バッファ１０３１へ出力して圧縮部共有バッファ１０３１に書き込む圧縮書込み制御を実施する。制御Ｄでは、圧縮部共有バッファ１０３１からメモリ１０６へ圧縮処理部１０３２による圧縮結果を転送するための圧縮部共有バッファ１０３１内の、圧縮処理部１０３２による圧縮結果を読み出す読出し制御（以下、メモリ転送制御ともいう）を実施する。
【００３２】
圧縮制御部１０３３は、同期制御部１０７が作成し、画像処理部１０２を介して入力される同期信号に従い圧縮部１０３に入力される画像の画素（以下、入力画素ともいう）の位置（座標）を計測するカウンタ（不図示）を内部に備える。圧縮制御部１０３３は、カウンタで計測したカウント値に基づき入力画素の座標を特定する。制御Ａから制御Ｄの処理は、カウント値に基づき特定された入力画素の座標を示す座標情報を基準に実施される。以下、制御Ａから制御Ｄの詳細を説明する。
【００３３】
制御Ａでは、同期信号を基にした、カウンタで計測したカウント値に基づき特定された入力画素の座標を示す入力画素の座標情報に応じ、圧縮部共有バッファ１０３１へ格納するアドレスが導出される。ここで、圧縮部共有バッファ１０３１が取り扱う最大画像幅をＭＷ、入力された画像データの画素の座標を（Ｘ，Ｙ）とし、１つのアドレス空間に１画素のデータを保管するとする。圧縮部共有バッファ１０３１のメモリ空間に１画素のデータを保管する場合、すなわち、１画素のデータのＹ座標がＹ％Ｂｈ≠（Ｂｈ−１）である場合、圧縮制御部１０３３は、次の処理を実行する。すなわち、圧縮制御部１０３３は、［（Ｙ％Ｂｈ）×ＭＷ＋Ｘ］を用いて圧縮部共有バッファ１０３１の書込みアドレスを導出する（％は剰余算）。また、圧縮部共有バッファ１０３１の一時バッファに１画素のデータを保管する場合、すなわち、１画素のデータのＹ座標およびＸ座標がＹ％Ｂｈ＝（Ｂｈ−１）かつＸ％Ｂｗ≠（Ｂｗ−１）である場合、圧縮制御部１０３３は、次の処理を実行する。すなわち、圧縮制御部１０３３は、圧縮部共有バッファ１０３１の一時バッファに画像データの画素を格納する。
【００３４】
制御Ｂは、入力画素の座標（Ｘ，Ｙ）が次の３つの条件の何れかに該当する場合、圧縮部共有バッファ１０３１の所定位置の矩形領域の画像データを読出し、読出した矩形領域の画像データを圧縮処理部１０３２へ出力する制御である。所定位置の矩形領域の画像データは、幅Ｂｗ×高さＢｈ画素であって、始点（起点）が座標（Ｘ−Ｂｗ＋１，Ｙ−Ｂｈ＋１）であり、終点が座標（Ｘ，Ｙ）となる矩形領域の画像データである。読出し条件１は、入力画素の座標（Ｘ，Ｙ）がＸ％Ｂｗ＝（Ｂｗ−１）かつＹ％Ｂｈ＝（Ｂｈ−１）である。読出し条件２は、入力画素の座標（Ｘ，Ｙ）がＸ％Ｂｗ＝（Ｂｗ−１）かつＹ＝（Ｈｉｎ−１）（Ｈｉｎは入力画像の垂直解像度）である。読出し条件３は、入力画素の座標（Ｘ，Ｙ）がＸ＝（Ｗｉｎ−１）（Ｗｉｎは入力画像の水平解像度）かつＹ＝（Ｈｉｎ−１）である。すなわち、Ｙ＝圧縮ブロックの高さＢｈの定数倍、又は入力画像データの最終ラインの画像データが入力された際、Ｘ＝圧縮ブロックの幅Ｂｗの定数倍、又は最終画素が入力された時点で、次の処理を実施する。入力画素に対応する位置の、圧縮部共有バッファ１０３１内の画像データを矩形で読出し、読み出した矩形の画像データを圧縮処理部１０３２へ出力する。
【００３５】
制御Ｃは、圧縮処理部１０３２から出力される圧縮データの圧縮部共有バッファ１０３１への書込みを行う制御である。圧縮処理部１０３２は、圧縮部共有バッファ１０３１で圧縮処理部１０３２の走査方式に変換した画像データの入力からＴｅｎｃ時間後に、圧縮処理部１０３２による入力画像データの圧縮結果（圧縮データ）を出力する。矩形の画像データの圧縮処理部１０３２への入力は制御Ｂで実施されるため、制御Ｂにより圧縮処理部１０３２へ画像データを出力した時点からＴｅｎｃ時間後、制御Ｃは圧縮部共有バッファ１０３１への圧縮データの書込みアドレスを出力する。圧縮データは、圧縮部共有バッファ１０３１のアドレス（Ｂｈ−２）×ＭＷからアドレス［（Ｂｈ−２）×ＭＷ＋Ｂｗ−１］までの範囲に分割されて圧縮部共有バッファ１０３１に書込まれる。すなわち、圧縮制御部１０３３は、圧縮部共有バッファ１０３１から読み出して圧縮処理部１０３２へ入力画像を出力してから圧縮画像の生成に要する時間経過後に、圧縮処理部１０３２で生成した圧縮画像を圧縮部共有バッファ１０３１へ書き込む。
【００３６】
制御Ｄでは、圧縮制御部１０３３の指示により、制御Ｃの処理で圧縮部共有バッファ１０３１に書き込まれた圧縮データを読み出し、読み出した圧縮データをメモリ１０６へ転送する制御が行われる。制御Ｄでは、メモリ帯域のピークを作らないようにするため、１ラインの入力期間にＷｉｎ／Ｂｈ画素幅の圧縮データのみをメモリ１０６に転送するよう、圧縮部共有バッファ１０３１からの圧縮データの読出し制御が実施される。また、制御Ｄでは、制御Ａの書込み処理によってメモリ１０６への転送前のデータが上書きされないよう、動作（転送処理）が制御される。以上が圧縮制御部１０３３の基本動作である。
【００３７】
次に、圧縮部１０３が実施する圧縮処理の動作の詳細について、図３、４を用いて説明する。図３（ａ）〜（ｇ）は、圧縮部共有バッファ１０３１の状態例を示す図である。図４（ｈ）〜（ｎ）は、圧縮部共有バッファ１０３１の状態例を示す図である。図４（ｈ）には、図３（ｇ）に示される状態に続く状態が示される。本実施形態では、説明の簡単化のため、圧縮ブロックの幅Ｂｗ＝４とし、圧縮ブロックの高さＢｈ＝４とし、圧縮処理に要する時間Ｔｅｎｃ＝８として図示している。また、入力画像の幅Ｗｉｎ＝バッファ幅ＢＷ（すなわち、バッファで扱える最大画像幅）＝４０９６とし、圧縮率Ｎ＝４として説明する。図３および図４では、圧縮部共有バッファ１０３１のアドレスと使用状況を示し、凡例に示す通り、白：空き、斜線：非圧縮画像（圧縮前の入力画像）あり、黒：圧縮データありの状態を示すものとする。また、図３（ａ）〜（ｇ）および図４（ｈ）、（ｉ）、（ｎ）にて、圧縮部共有バッファ１０３１の４行目の領域は、一時バッファを示すものとする。
【００３８】
非圧縮画像は、１画素を１アドレス領域に格納するよう動作する。圧縮データは、１圧縮ブロック単位でＢｗ×Ｂｈ×１／Ｎサイズのデータとして出力される。よって、図４では、１ブロックあたり４画素分の領域（４アドレス領域）を用いて圧縮データを格納する。
【００３９】
図３（ａ）は、圧縮処理を開始する前であって、非圧縮画像が入力される前の圧縮部共有バッファ１０３１の状態を示す図である。圧縮部共有バッファ１０３１に非圧縮画像が入力される前にあっては、圧縮部共有バッファ１０３１内の全ての領域（アドレス空間）が空き状態である。
【００４０】
図３（ｂ）は、圧縮部共有バッファ１０３１に非圧縮画像が５画素分入力された状態を示す図である。圧縮部共有バッファ１０３１に非圧縮画像が５画素分入力されると、圧縮部共有バッファ１０３１は、圧縮制御部１０３３の制御Ａで指定したアドレスに従い、指定アドレスに入力画素が格納された状態となる。すなわち、画像の１画素目（０，０）から５画素目（４，０）までが圧縮部共有バッファ１０３１に入力され、圧縮部共有バッファ１０３１内のアドレス０からアドレス４までの領域に入力画像の各画素が順番に格納された状態となる。
【００４１】
図３（ｃ）は、圧縮部共有バッファ１０３１に非圧縮画像が圧縮ブロック高（Ｂｈ−１）ライン分入力された状態を示す図である。圧縮制御部１０３３の制御Ａで画像の５画素分の入力が繰り返され、圧縮ブロック高（Ｂｈ−１）ライン分の画像が入力されると、圧縮制御部１０３３の制御Ａで指定したアドレスに従い、指定アドレスに入力画素が格納された状態となる。すなわち、（０，０）から（Ｗｉｎ−１，Ｂｈ−２）の画素が圧縮部共有バッファ１０３１に入力された状態となる。本実施形態では、上述の通り、入力画像の幅Ｗｉｎ＝４０９６であり、圧縮ブロックの高さＢｈ＝４であるため、（０，０）から（４０９５，２）の画素が入力された状態となる。
【００４２】
図３（ｄ）から図３（ｇ）および図４（ｈ）から図４（ｊ）は、非圧縮画像における、Ｙ＝（Ｂｈ−１）ラインの画像が入力される際の圧縮部共有バッファ１０３１の動作を説明する図である。圧縮処理部１０３２は、Ｂｗ画素×Ｂｈ画素のブロック単位で圧縮処理を実行する。すなわち、圧縮処理部１０３２は、画像処理が行われる入力画像を縦および横の少なくとも何れかが複数画素の画素群で構成されるブロック単位で圧縮処理を実行して圧縮画像を生成する。そのため、画素（Ｂｗ−１，Ｂｈ−１）が圧縮部共有バッファ１０３１に入力されるまで入力画素を圧縮処理部１０３２に出力できない。よって、図３（ｄ）に示すように、（０，Ｂｈ−１）から（Ｂｗ−２，Ｂｈ−１）の画素を圧縮部共有バッファ１０３１内の一時バッファに蓄積することになる。
【００４３】
次のサイクルで、非圧縮画像の画素（Ｂｗ−１，Ｂｈ−１）が入力されると、圧縮処理に要する矩形領域の画素（Ｂｗ画素×Ｂｈ画素のブロック）が入力された状態となり当該矩形領域の画素を圧縮処理部１０３２へ出力可能となる。従って、圧縮部共有バッファ１０３１は、圧縮制御部１０３３の制御Ｂに従い、圧縮部共有バッファ１０３１内の座標（０，０）から（Ｂｈ−１、Ｂｗ−１）の矩形領域の画素を圧縮処理部１０３２へ出力する。その結果、図３（ｅ）に示すように、圧縮処理部１０３２へ出力する前に画素が格納されていた圧縮部共有バッファ１０３１における矩形領域が空き状態となる。
【００４４】
図３（ｆ）は、圧縮部共有バッファ１０３１に座標（２×Ｂｗ−２，Ｂｈ−１）の画素が入力されたときの圧縮部共有バッファ１０３１の状態を示す図である。圧縮部共有バッファ１０３１は、Ｘ座標がＢｗ以降であって座標（Ｂｗ，０）から座標（Ｗｉｎ−１，Ｂｈ−２）の画素がメモリに格納され、座標（Ｂｗ，Ｂｈ−１）から座標（２×Ｂｗ−２，Ｂｈ−１）の画素が一時バッファに格納された状態となる。
【００４５】
図３（ｇ）は、図３（ｆ）の状態に続く次のサイクルで、非圧縮画像の画素（２×Ｂｗ−１，Ｂｈ−１）を一時バッファに格納し、矩形領域の画素を圧縮処理部１０３２へ出力した、圧縮部共有バッファ１０３１の状態を示す図である。非圧縮画像の画素が入力されて圧縮部共有バッファ１０３１に所定の矩形状に格納されると、圧縮部共有バッファ１０３１は、圧縮制御部１０３３の制御Ｂに従い、２つ目の圧縮ブロックとして矩形領域の画素を圧縮処理部１０３２へ出力する。矩形領域の画素は、座標（Ｂｗ，０）から座標（２×Ｂｗ−１，Ｂｈ−１）で囲まれる領域である。その結果、図３（ｇ）に示すように、圧縮処理部１０３２へ出力する前に画素が格納されていた圧縮部共有バッファ１０３１における矩形領域が空き状態となる。
【００４６】
図４（ｈ）は、座標（Ｂｗ−１＋Ｔｅｎｃ，Ｂｈ−１）の画素が入力された時刻の圧縮部共有バッファ１０３１の状態を示す図である。この時刻では、図３（ｅ）にて圧縮処理部１０３２に出力されたブロック画像（矩形領域の画素）の圧縮データが、圧縮処理に要する時間Ｔｅｎｃ後に圧縮処理部１０３２から出力されて、圧縮部共有バッファ１０３１に入力される。圧縮部共有バッファ１０３１は、圧縮制御部１０３３の制御Ｃに従い、次の処理を実行する。圧縮部共有バッファ１０３１は、圧縮部共有バッファ１０３１の最終ラインの領域の先頭であるアドレス［（Ｂｈ−２）×ＢＷ］からアドレス［（Ｂｈ−２）×ＢＷ＋Ｂｗ−１］の領域に、入力されたブロック画像（矩形領域の画素）の圧縮データを格納する。本実施形態では、４画素×４画素を１／４に圧縮するため、圧縮後のデータサイズは４画素分のデータサイズと一致することになる。よって、図４（ｈ）に示すように、圧縮部共有バッファ１０３１は、１番目の圧縮ブロックの圧縮データをアドレス［（Ｂｈ−２）×ＢＷ］からアドレス［（Ｂｈ−２）×ＢＷ＋３］の領域に４等分して格納する。
【００４７】
また、制御Ｃの圧縮書込み制御による処理と並行して、制御Ａの入力書込み制御による処理、制御Ｂの圧縮読出し制御による処理も実施される。
【００４８】
以後同様に、圧縮部共有バッファ１０３１内に圧縮処理部１０３２の圧縮処理に要する入力画像が蓄積された時点で、次の処理を実施する。すなわち、矩形領域の画素の圧縮処理部１０３２への出力、圧縮データの圧縮部共有バッファ１０３１の最終ラインの領域への書込みを繰り返すことになる。
【００４９】
図４（ｉ）は、制御Ｃによる処理で矩形領域（０，０）から（Ｗｉｎ／Ｂｈ−１，Ｂｈ−１）の圧縮データを圧縮部共有バッファ１０３１に蓄積した状態を示す図である。圧縮制御部１０３３は、制御Ｃの処理でＸ＝Ｗｉｎ／Ｂｈの圧縮結果を圧縮部共有バッファ１０３１の最終ラインに書込んだ後、制御Ｄの処理で圧縮部共有バッファ１０３１内の圧縮結果を読出し、メモリ１０６への転送を開始する。前述の通り、制御Ｄは、Ｙ＝（Ｂｈ−１）ラインの入力期間中に座標（０，０）から座標（Ｗｉｎ／Ｂｈ−１，Ｂｈ−１）の圧縮データを転送すると、転送を一時停止する。
【００５０】
メモリ１０６への転送は、ＤＲＡＭのペナルティによる転送効率の低下を防ぐため、適切な転送長にて連続発行するよう制御してもよい。
【００５１】
図４（ｊ）は、座標（０，０）から座標（Ｗｉｎ−１，Ｂｈ−１）の圧縮処理が完了し、制御Ｃによる圧縮書込み処理が完了したときの圧縮部共有バッファ１０３１の状態を示す図である。圧縮部共有バッファ１０３１は、座標（Ｗｉｎ／Ｂｈ，０）から座標（Ｗｉｎ−１，Ｂｈ−１）の圧縮データが残る状態となる。
【００５２】
図４（ｋ）は、非圧縮画像における、次のラインＹ＝Ｂｈの画像の入力が開始され、座標（０，Ｂｈ）の画素が入力されたときの圧縮部共有バッファ１０３１の状態を示す図である。圧縮部共有バッファ１０３１は、圧縮制御部１０３３の制御Ａに従い、圧縮部共有バッファ１０３１に入力された画素を圧縮部共有バッファ１０３１のアドレス０に格納する。その後、同様に入力画素の格納を繰り返すことになる。
【００５３】
座標（Ｗｉｎ／Ｂｈ，Ｂｈ）の画素が圧縮部共有バッファ１０３１に入力されると、圧縮制御部１０３３は制御Ｄを動作させ、次の処理を実行する。すなわち、圧縮制御部１０３３は、圧縮部共有バッファ１０３１内の座標（Ｗｉｎ／Ｂｈ，０）から座標（２×Ｗｉｎ／Ｂｈ−１，Ｂｈ−１）の圧縮データをメモリ１０６に転送する。
【００５４】
図４（ｌ）は、圧縮部共有バッファ１０３１に座標（Ｗｉｎ−１，Ｂｈ）の画素が入力された状態を示す図である。圧縮部共有バッファ１０３１は、アドレス０からアドレス（ＢＷ−１）までの領域に入力画像の座標（０，Ｂｈ）から座標（Ｗｉｎ−１，Ｂｈ）までの画素が格納された状態となる。また、圧縮部共有バッファ１０３１は、アドレス［（Ｂｈ−２）×ＢＷ＋２×Ｗｉｎ／Ｂｈ］からアドレス［（Ｂｈ−１）×ＢＷ−１］までの領域に、座標（２×Ｗｉｎ／Ｂｈ，０）から座標（Ｗｉｎ−１，Ｂｈ−１）までの圧縮データが残る状態となる。
【００５５】
非圧縮画像の次のラインＹ＝（Ｂｈ＋１）の画像入力時の処理に関しても、図４（ｋ）、（ｌ）と同様、圧縮部共有バッファ１０３１は入力画像の画素が圧縮部共有バッファのアドレスＢＷからアドレス（２×ＢＷ−１）の領域に書き込まれた状態となる。また、圧縮部共有バッファ１０３１は、座標（２×Ｗｉｎ／Ｂｈ，０）から座標（３×Ｗｉｎ／Ｂｈ−１，Ｂｈ−１）の圧縮データが読み出され、読み出された圧縮データがメモリ１０６に転送された状態となる。
【００５６】
図４（ｍ）は、座標（Ｗｉｎ−１，Ｂｈ＋１）の画素が入力されたときの圧縮部共有バッファ１０３１の状態を示す図である。
【００５７】
非圧縮画像の次のラインＹ＝（２Ｂｈ−２）（本実施形態例ではＹ＝Ｂｈ＋２となる）の画像入力時の処理に関しても、図４（ｋ）、（ｌ）と同様、制御Ａにより、圧縮部共有バッファ１０３１は、所定のアドレスに入力画像の画素が書き込まれた状態となる。すなわち、圧縮部共有バッファ１０３１は、アドレス［（Ｂｈ−２）×ＢＷ］からアドレス［（Ｂｈ−１）×ＢＷ−１］に入力画像の画素が書き込まれた状態となる。また、制御Ｄにより、圧縮部共有バッファ１０３１は、座標（（Ｂｈ−１）×Ｗｉｎ／Ｂｈ，０）から座標（Ｗｉｎ−１，Ｂｈ−１）の圧縮データが読み出され、読み出された圧縮デーがメモリ１０６に転送された状態となる。非圧縮画像のラインＹ＝（２Ｂｈ−２）の画像入力時の処理において、制御Ｄおよび制御Ａによって、一部重複するアドレスのデータの読み出し処理と書き込み処理が実施される。制御Ｄは、制御Ａが圧縮部共有バッファ１０３１に書き込むデータで上書きされないよう、圧縮部共有バッファ１０３１への入力画像の書込みより前に圧縮部共有バッファ１０３１内の圧縮データをメモリ１０６に出力する。
【００５８】
上記処理の結果、圧縮部共有バッファ１０３１への座標（Ｗｉｎ−１，２×Ｂｈ−２）の画素の入力が完了すると、図４（ｎ）に示す通り、２Ｂｈ−２ラインの画像が圧縮部共有バッファ１０３１に格納された状態となる。これは、図３（ｃ）に示す圧縮部共有バッファ１０３１の使用状況と同じ状態である。すなわち、以後、前述の処理を繰り返すことにより、入力画像全体を圧縮し、メモリ１０６に格納することが可能である。
【００５９】
上記処理では、圧縮ブロック高Ｂｈの圧縮ブロックの転送期間内に、入力画像の圧縮結果を１ライン当たりＷｉｎ／Ｂｈ画素幅ずつ均等にメモリ１０６に転送される。これにより、ピーク帯域が平準化される。また、転送期間を分散させるためのバッファを走査変換バッファと共有した圧縮部共有バッファ１０３１に設け好適に制御することで、バッファの増加が抑えられる。
【００６０】
●伸長部の構成と動作
次に、上述した伸長部１０４Ａ、１０４Ｂに対応する伸長部１０４の構成と動作について説明する。図５は、伸長部１０４の構成例を示すブロック図である。伸長部１０４は、伸長部共有バッファ１０４１、伸長処理部１０４２、伸長制御部１０４３を有する。伸長部共有バッファ１０４１と伸長処理部１０４２は、画像（データ）を互いに入出力可能に接続している。伸長制御部１０４３は、伸長部共有バッファ１０４１に制御信号を送出可能に伸長部共有バッファ１０４１と接続している。
【００６１】
伸長部共有バッファ１０４１は、ＳＲＡＭなどのメモリによって構成され、伸長部１０４内のデータを一時的に保管するための場所として使用される。伸長部共有バッファ１０４１は、以下の２つの目的で使用される。１つの目的は、メモリ１０６から読出した圧縮データを伸長処理部１０４２に出力するまで一時的に保管するバッファとして使用することである。すなわち、伸長部共有バッファ１０４１は、画像処理部１０２Ａ、１０２Ｂによる画像処理のときと異なる走査方式に変換するためのバッファとして使用される。もう１つの目的は、伸長処理部１０４２で伸長した出力画像を画像処理部１０２の走査方式に変換するためのバッファとして使用することである。伸長部共有バッファ１０４１は、詳細につき後述する通り、同一アドレスのバッファが上記２つの異なる用途で共有する形で使用される。伸長部共有バッファ１０４１では、伸長後の画像の１画素のデータが１つのアドレス空間に格納される。すなわち、伸長部共有バッファ１０４１では、１画素のデータが１つのアドレス空間に格納される。なお、伸長部共有バッファ１０４１の１つのアドレス空間に格納されるデータは、１画素のデータに限定されず、２画素のデータなどの所定数の画素のデータとしてもよい。圧縮データにおける１つの圧縮ブロックのデータは、複数のアドレス空間に分割して格納される。伸長部共有バッファ１０４１は、幅方向にて後述の画素群の横の画素数と同じ画素数以上の画素のデータを可能であり、高さ方向にて後述の画素群の縦の画素数と同じ画素数の画素のデータを書き込み可能である領域を有する。伸長部共有バッファ１０４１は、メモリ空間と一時バッファとを備える。伸長部共有バッファ１０４１のメモリ空間は、幅ＢＷ×高さ（Ｂｈ−１）（ＢＷはバッファの幅を示す。Ｂｈは圧縮ブロックの高さを示す。）の画素を格納可能な領域を有する。また、伸長部共有バッファ１０４１の一時バッファは、（Ｂｗ−１）画素（Ｂｗは圧縮ブロックの幅を示す。）のデータを格納可能な領域を有する。すなわち、伸長部共有バッファ１０４１は、画素群の画素数と同じ画素数の画素のデータを書き込み可能な一時バッファを有する。伸長部共有バッファ１０４１は、高さ方向にて一時バッファと合わせて、前記画素群の縦方向の画素数と同じ画素数の画素のデータを書き込み可能であり、幅方向にて前記画素群の横方向の画素数以上の画素数の画素のデータを書き込み可能なメモリ空間を有する。
【００６２】
伸長処理部１０４２は、伸長部共有バッファ１０４１に格納された圧縮データを受け、所定の処理時間で伸長処理を実施した後、伸長部共有バッファ１０４１へ伸長した出力画像を出力する。伸長処理部１０４２は、圧縮処理部１０３２で実施する圧縮処理の逆変換を実施するため、伸長処理後の出力画像は、幅Ｂｗ×高さＢｈ画素の矩形単位で出力される。すなわち、本実施形態では、伸長処理は、幅Ｂｗ×高さＢｈ画素の矩形単位の画像データに伸長する処理として説明する。また、伸長に要する時間をＴｄｅｃと定義する。すなわち、Ｔｄｅｃは、入力された圧縮データに対し伸長処理を実施して、圧縮データのデータ量がＮ（Ｎ＞０）倍となる画像データの生成に要する時間（伸長時間）を示している。
【００６３】
伸長制御部１０４３は、以下に示す制御Ｅから制御Ｈの制御を実施する。制御Ｅでは、メモリ１０６から伸長部共有バッファ１０４１へ圧縮データを転送するための、メモリから圧縮データを読み出し、伸長部共有バッファ１０４１へ書込む書込み制御（以下、メモリ転送制御ともいう）を実施する。制御Ｆでは、伸長部共有バッファ１０４１内の圧縮データを読出し伸長処理部１０４２へ出力する圧縮読出し制御を実施する。制御Ｇでは、伸長処理部１０４２による伸長結果（矩形の出力画像）を伸長部共有バッファ１０４１へ出力して伸長部共有バッファ１０４１に伸長書込み制御を実施する。制御Ｈでは、伸長部共有バッファ１０４１に書き込まれた出力画像を画像処理部１０２の走査方式に変換するよう読み出し画像処理部１０２へ出力する出力読出し制御を実施する。
【００６４】
伸長制御部１０４３は、同期制御部１０７が生成し、画像処理部１０２を介して入力される同期信号に従い伸長部１０４に入力される画像の画素（以下、入力画素ともいう）の位置（座標）を計測するカウンタ（不図示）を内部に備える。伸長制御部１０４３は、カウンタで計測したカウント値に基づき入力画素の座標を特定する。制御Ｅから制御Ｈの処理は、上記座標情報を基準に実施される。以下、制御Ｅから制御Ｈの詳細を説明する。
【００６５】
制御Ｅは、伸長制御部１０４３の指示により、同期信号を基にしたカウンタの値を基に、メモリ１０６から圧縮データを読み出し、読み出した圧縮データを伸長部共有バッファ１０４１へ転送する制御が行われる。読出しに際し、読出し時のメモリアクセスを分散させる目的で、同期信号の１ライン期間に読出すデータ量はＷｉｎ／Ｂｈ画素幅分の圧縮データとする。制御Ｅでは、読出した圧縮データを伸長部共有バッファ１０４１に格納するためのアドレス情報が出力される。書込みアドレスは、０からＷｉｎ×Ｂｈ／Ｎの範囲に圧縮データを分割し格納する。圧縮データのサイズは前述の通りＢｗ×Ｂｈ／Ｎ画素分であるため、本実施形態では１圧縮データを４画素分の領域に分割して格納する。
【００６６】
制御Ｆでは、伸長部共有バッファ１０４１から圧縮データを読出し、読出した圧縮データを伸長処理部１０４２へ出力する処理が実施される。制御Ｆは、制御Ｅによりアドレス（Ｂｈ−１）×Ｗｉｎ／ＢｈからアドレスＷｉｎの画素の圧縮データの伸長部共有バッファ１０４１への読出しを開始すると、圧縮データの伸長部共有バッファ１０４１から伸長処理部１０４２への読出し処理を開始する。制御Ｆでは、１圧縮ブロックの読出しがＢｗサイクル毎に実施され、Ｂｗサイクル毎の１圧縮ブロックの読出しによって、１ライン期間に伸長部共有バッファ１０４１内の全ての圧縮データの読出しが実施される。
【００６７】
制御Ｇは、伸長処理部１０４２から出力される矩形の出力画像を伸長部共有バッファ１０４１へ格納する（書込みを行う）制御である。出力される矩形の出力画像の０ライン目の画素のうち、原点画素は伸長部１０４から出力され、残りの画素は伸長部共有バッファ１０４１内の一時バッファに格納される。１ライン目以降の画素は、後述の通り、伸長部共有バッファ１０４１内のメモリ空間に格納するようアドレスを発行する。制御Ｇは、制御Ｅによる処理で伸長部共有バッファ１０４１に書込んだ圧縮データが制御Ｆによる処理で読出されるまで当該アドレスのデータを上書きしないよう制御する。
【００６８】
制御Ｈは、制御Ｇによる処理で伸長部共有バッファ１０４１に書き込まれた画素を読み出し、読み出したデータを伸長部１０４から画像処理部１０２へ出力する制御である。出力する際、制御Ｇによって伸長した出力画像の書込み処理を実施している期間は、伸長部１０４内の、伸長部共有バッファ１０４１の一時バッファに格納された画素を１サイクルに１画素ずつ、ラスタースキャンで出力するよう制御する。制御Ｇによる書込み処理が実施されない期間は、伸長部共有バッファ１０４１のメモリ空間に格納された出力画像をアドレス０から有効領域を連続読出しすることで、ラスタースキャンの画像として出力する。以上が伸長制御部１０４３の基本動作である。
【００６９】
次に、伸長部１０４が実施する伸長処理の動作の詳細について、図６、図７および図８を用いて説明する。図６（ａ）〜（ｇ）は、伸長部共有バッファ１０４１の状態例を示す図である。図７（ｈ）〜（ｎ）は、伸長部共有バッファ１０４１の状態例を示す図である。図７（ｈ）には、図６（ｇ）に示される状態に続く状態が示される。図８（ｏ）〜（ｓ）は、図７（ｎ）に示される状態に続く状態であって、伸長部共有バッファ１０４１の状態例を示す図である。図８（ｏ）には、図７（ｎ）に示される状態に続く状態が示される。本実施形態では、伸長処理に要する時間Ｔｄｅｃ＝８として図示しており、それ以外のパラメータは、圧縮部１０３と同等でありその説明を省略する。図６〜図８では、伸長部共有バッファ１０４１のアドレスと使用状況を示し、凡例に示すとおり、白：空き、斜線：非圧縮画像（圧縮前の入力画像）あり、黒：圧縮データありの状態を示すものとする。また、図６（ａ）〜（ｇ）および図７（ｈ）〜（ｍ）にて、伸長部共有バッファ１０４１の１行目の領域は、一時バッファを示すものとする。
【００７０】
図６（ａ）は、伸長処理を開始する前であって、圧縮データが入力される前の伸長部共有バッファ１０４１の状態を示す図である。伸長部共有バッファ１０４１に圧縮データが入力される前にあっては、伸長部共有バッファ１０４１内の全ての領域（アドレス空間）が空き状態である。
【００７１】
図６（ｂ）は、圧縮データが１つの圧縮ブロック分（４つのアドレス分）入力された伸長部共有バッファ１０４１の状態を示す図である。メモリ１０６から読出し伸長部共有バッファ１０４１に圧縮データが１つの圧縮ブロック分（４つのアドレス分）入力されると、伸長部共有バッファ１０４１は、次の状態となる。伸長部共有バッファ１０４１は、伸長制御部１０４３の制御Ｅで指定されたアドレスに従い、指定アドレスに圧縮データが格納された状態となる。すなわち、圧縮データの最初の１つの圧縮ブロック分（４つのアドレス領域分）が伸長部共有バッファ１０４１に転送（入力）される。これにより、伸長部共有バッファ１０４１は、最初のデータを伸長部共有バッファ１０４１内のアドレス０からアドレス３までの領域に４分割して格納した状態となる。同様にして、１ライン期間にＷｉｎ／Ｂｈ幅分の圧縮データを伸長部共有バッファ１０４１内のメモリ空間に格納する。この１ライン期間の圧縮データの格納処理時にあっては、Ｗｉｎ／Ｂｈ幅分の圧縮データを伸長部共有バッファ１０４１内のメモリ空間に格納する毎に、メモリ１０６から伸長部共有バッファ１０４１への圧縮データの読出し処理が一旦停止される。圧縮データの読出し処理の停止期間にあっては、伸長部共有バッファ１０４１は、後述の図６（ｆ）、図６（ｇ）に示す圧縮データの圧縮読出し制御、後述の図７（ｈ）〜図７（ｋ）に示す出力画像の画素の出力読出し制御が行われる。これにより、伸長部共有バッファ１０４１の処理負荷が平滑化される。
【００７２】
図６（ｃ）は、１ライン期間にＷｉｎ／Ｂｈ幅分の圧縮データを伸長部共有バッファ１０４１のメモリ空間に格納した状態を示す図である。以上の処理の結果、１ライン期間後の伸長部共有バッファ１０４１は、図６（ｃ）に示すように、メモリ１０６から読出された、矩形領域（０，０）から（Ｗｉｎ／Ｂｈ−１，Ｂｈ−１）の画素の圧縮データが格納された状態となる。
【００７３】
伸長制御部１０４３は、２ライン目の入力を同期信号から受け取ると、制御Ｅによる処理を実施する。すなわち、伸長制御部１０４３は、メモリ１０６から（Ｗｉｎ／Ｂｈ×−１）から２×Ｗｉｎ／Ｂｈの画素の範囲の圧縮データを読出し、伸長部共有バッファ１０４１のアドレスＷｉｎ／Ｂｈからアドレス２×Ｗｉｎ／Ｂｈに格納する。図６（ｄ）は、２ライン期間にＷｉｎ／Ｂｈ幅分の圧縮データをメモリ空間に格納した伸長部共有バッファ１０４１の状態を示す図である。２ライン期間の処理が完了した結果、伸長部共有バッファ１０４１は、図６（ｄ）に示すような状態となる。すなわち、伸長部共有バッファ１０４１は、矩形領域（０，０）から（２×Ｗｉｎ／Ｂｈ−１，Ｂｈ−１）の画素の圧縮データがメモリ１０６から伸長部共有バッファ１０４１のメモリ空間に読出された状態となる。
【００７４】
伸長制御部１０４３は、（Ｂｈ−１）（本実施形態例ではＢｈ−１＝３）ライン目の入力を同期信号から受け取ると、制御Ｅによる処理を実施する。すなわち、伸長制御部１０４３は、メモリ１０６から［（Ｂｈ−２）×Ｗｉｎ／Ｂｈ−１］から（Ｂｈ−１）／Ｂｈ×Ｗｉｎの画素の範囲の圧縮データを読出し、伸長部共有バッファ１０４１のアドレス２×Ｗｉｎ／Ｂｈから３×Ｗｉｎ／Ｂｈに格納する。
【００７５】
図６（ｅ）は、（Ｂｈ−１）ライン期間にＷｉｎ／Ｂｈ幅分の圧縮データを伸長部共有バッファ１０４１のメモリ空間に格納した状態を示す図である。（Ｂｈ−１）ライン期間の処理が完了した結果、伸長部共有バッファ１０４１は、図６（ｅ）に示すように、メモリ１０６から読出された、矩形領域（０，０）から（（Ｂｈ−１）×Ｗｉｎ／Ｂｈ−１，Ｂｈ−１）の画素の圧縮データが格納された状態となる。
【００７６】
伸長制御部１０４３は、Ｂｈライン目の入力を同期信号から受け取ると、制御Ｅによる処理を実施する。伸長制御部１０４３は、メモリ１０６から［（Ｂｈ−１）×Ｗｉｎ／Ｂｈ−１］から（Ｗｉｎ−１）の画素の範囲の圧縮データを読出し、伸長部共有バッファ１０４１のアドレス（Ｂｈ−１）×Ｗｉｎ／Ｂｈからアドレス（Ｗｉｎ−１）に格納する処理を開始する。また、伸長制御部１０４３は、伸長処理部１０４２の伸長処理を開始するため、制御Ｆによる処理を実施する。すなわち、伸長制御部１０４３は、伸長部共有バッファ１０４１内の矩形領域（０，０）から（Ｂｗ−１，Ｂｈ−１）の画素の圧縮データを読出し、読出した圧縮データを伸長処理部１０４２へ出力する。
【００７７】
図６（ｆ）は、（０，０）から（Ｂｗ−１，Ｂｈ−１）の画素の圧縮データを伸長部共有バッファ１０４１から伸長処理部１０４２へ読出した状態を示す図である。制御Ｆによる読出し処理の結果、伸長部共有バッファ１０４１は、図６（ｆ）に示すように、アドレス０からアドレス（Ｂｗ×Ｂｈ／Ｎ−１）が空き領域となる。すなわち、伸長部共有バッファ１０４１は、アドレス０からアドレス３が空き領域となる。
【００７８】
同様にして、伸長制御部１０４３は、図６（ｆ）に示す状態からＢｗサイクル後、矩形領域（Ｂｗ，０）から（２×Ｂｗ−１，Ｂｈ−１）の画素の圧縮データを読出し、読出した画素の圧縮データを伸長処理部１０４２へ出力する制御Ｆを実施する。図６（ｇ）は、図６（ｆ）に示す状態からＢｗサイクル後、矩形領域（Ｂｗ，０）から（２×Ｂｗ−１，Ｂｈ−１）の画素の圧縮データを読出した伸長部共有バッファ１０４１の状態を示す図である。その結果、伸長部共有バッファ１０４１は、図６（ｇ）に示すように、アドレス０からアドレス（２Ｂｗ×Ｂｈ／Ｎ−１）が空き領域となる。すなわち、伸長部共有バッファ１０４１は、アドレス０からアドレス７が空き領域となる。
【００７９】
図６（ｆ）に示す、所定のサイズのデータが伸長部共有バッファ１０４１に格納された状態からＴｄｅｃサイクル後、伸長処理部１０４２は、伸長部共有バッファ１０４１から受け取った圧縮データのデコード処理（伸長処理）が完了する。すなわち、伸長処理部１０４２は、図６（ｆ）に示す、矩形領域（０，０）から（Ｂｗ−１，Ｂｈ−１）の画素の圧縮データのデコード処理がＴｄｅｃサイクルで完了する。そして、伸長処理部１０４２は、図６（ｆ）に示す、矩形領域（０，０）から（Ｂｗ−１，Ｂｈ−１）の画素の圧縮データをデコード処理して生成したブロック画像（以下、矩形画像ともいう）を伸長部共有バッファ１０４１に出力する。ここでは、Ｔｄｅｃ＝８、Ｂｗ＝４であるため、３つ目の圧縮ブロックの読出し時に（図７（ｈ）参照）、１つ目の圧縮ブロックの伸長結果であるブロック画像が出力される。すなわち、伸長制御部１０４３は、伸長部共有バッファ１０４１から読み出して伸長処理部１０４２へ圧縮画像を出力してから出力画像の生成に要する時間経過後に、伸長処理部１０４２で生成した出力画像を伸長部共有バッファ１０４１へ書き込む。
【００８０】
伸長制御部１０４３は、制御Ｇの処理により伸長結果の矩形画像のうち、左上に位置する画素を伸長部１０４より出力する。また、最上位ラインの残りの画素を、伸長部共有バッファ１０４１の一時バッファに格納し、２ライン目以降を図７（ｈ）に示すアドレスに従い伸長部共有バッファ１０４１のメモリ空間に格納する。例えば、本実施形態においては、座標（０，０）から座標（３，３）のデコード結果は以下の通り処理される。座標（０，０）の画素は伸長部１０４より画像処理部１０２Ａ，１０２Ｂへ出力される。座標（１，０）から座標（３，０）の画素は、伸長部共有バッファ１０４１の一時バッファに格納される。座標（０，１）から座標（３，１）の画素は、伸長部共有バッファ１０４１のメモリ空間におけるアドレス０からアドレス３に格納される。座標（０，２）から座標（３，２）の画素は、伸長部共有バッファ１０４１のメモリ空間におけるアドレス４０９６からアドレス４０９９に格納される。座標（０，３）から座標（３，３）の画素は、伸長部共有バッファ１０４１のメモリ空間におけるアドレス８１９２からアドレス８１９５に格納される。
【００８１】
図７（ｈ）は、図６（ｆ）に示す状態からＴｄｅｃサイクル後の状態であって、３つ目の圧縮ブロックを読出し、１つ目の圧縮ブロックの伸長結果の書込み、１つの画素の出力を行った伸長部共有バッファ１０４１の状態を示す図である。以上の結果、伸長部共有バッファ１０４１は、図７（ｈ）に示すように、画素の圧縮データと伸長した出力画像が混在する状態となる。
【００８２】
図７（ｉ）は、図７（ｈ）の状態から１サイクル後の伸長部共有バッファ１０４１の状態を示す図である。図７（ｊ）は、図７（ｉ）の状態から１サイクル後の伸長部共有バッファ１０４１の状態を示す図である。図７（ｋ）は、図７（ｊ）の状態から１サイクル後の伸長部共有バッファ１０４１の状態を示す図である。
【００８３】
図７（ｈ）の状態から（Ｂｗ−１）サイクル期間は、図７（ｉ）から図７（ｋ）に示すように、伸長制御部１０４３の制御Ｄによる処理に従い、伸長部共有バッファ１０４１の一時バッファ内の画像を１サイクルに１画素ずつ順番に出力する。すなわち、伸長部共有バッファ１０４１は、１サイクルに１画素ずつ座標（１，０）の画素、座標（２，０）・・・（Ｂｗ−１，０）の順に出力する。これにより、伸長部１０４の出力はラスタースキャンで出力されることになる。
【００８４】
図７（ｌ）は、図７（ｋ）の状態から１サイクル後の伸長部共有バッファ１０４１の状態を示す図である。伸長処理部１０４２から２つ目の圧縮データのデコード結果が出力され、図７（ｈ）と同様、左上の画素（一時バッファの1番目のアドレスの画素）の出力、並びに伸長部共有バッファ１０４１への書込み処理が、伸長制御部１０４３の制御Ｇに従い実施される。
【００８５】
上記伸長制御部１０４３の制御Ｆから制御Ｈによる処理を実施し、伸長部共有バッファ１０４１から圧縮データの読出し、出力画像の書込み、出力画像の出力を実施する。なお、圧縮データが伸長処理部１０４２へ読み出されることにより、伸長処理部１０４２は、読み出された圧縮データに対して伸長処理を実施する。図７（ｍ）は、矩形領域（（Ｂｈ−１）×Ｗｉｎ／Ｂｈ−１，０）から（Ｗｉｎ−１，Ｂｈ−１）の画素の圧縮データが格納された伸長部共有バッファ１０４１の状態を示す図である。また、前述の制御Ｅの処理によって読出された矩形領域（（Ｂｈ−１）×Ｗｉｎ／Ｂｈ−１，０）から（Ｗｉｎ−１，Ｂｈ−１）の画素の圧縮データは、図７（ｍ）に示すように、伸長部共有バッファ１０４１に格納される。この圧縮データを用いて制御Ｆから制御Ｇの処理によって伸長処理が実施され、制御Ｈによる処理によって伸長後の１ライン目の出力画像が伸長部１０４から伸長部１０４に対応する画像処理部１０２Ａ，１０２Ｂへ出力される。
【００８６】
図７（ｎ）は、出力画像における１ライン目の画素の出力が完了したときの伸長部共有バッファ１０４１の状態を示す図である。座標（０，０）から座標（Ｗｉｎ−１，０）の出力画像の伸長部１０４からの出力が完了し、伸長部共有バッファ１０４１のメモリ空間に座標（０，１）から座標（Ｗｉｎ，Ｂｈ−１）の画素の出力画像が格納された状態となる。
【００８７】
続いて、伸長制御部１０４３は、次のラインの同期信号を受け取ると、制御Ｈによる処理を実施する。すなわち、伸長制御部１０４３は、２ライン目の画像データの出力処理を実施する。図８（ｏ）は、伸長部共有バッファ１０４１のアドレス０からアドレス（Ｗｉｎ−１）までの画素を読出し、読出した画素を書込み、座標（０，１）の画素を出力した、伸長部共有バッファ１０４１の状態を示す図である。制御Ｈによる処理により、図８（ｏ）に示すように、伸長部共有バッファ１０４１のアドレス０からアドレス（Ｗｉｎ−１）までの画素を読出し、伸長部１０４より座標（０，１）から（Ｗｉｎ−１，１）の画素の出力を開始する。伸長制御部１０４３の制御Ｈによる出力処理がＷｉｎ／Ｂｈ画素を超えると、伸長制御部１０４３は制御Ｅの処理を開始し、メモリ１０６内の次の圧縮画像の伸長部共有バッファ１０４１への読出しが実施される。制御Ｅの処理では、図８（ｐ）に示すように、メモリ１０６内の（０，Ｂｈ）から（Ｂｗ−１，２×Ｂｈ−１）の画素の圧縮データの伸長部共有バッファ１０４１への読出しを実施する。そして、読み出した圧縮データを伸長部共有バッファ１０４１のアドレス０からアドレス（Ｗｉｎ／Ｂｈ−１）に格納する。伸長制御部１０４３は、映像処理装置１０への入力画像の水平方向の画素数を圧縮部共有バッファ１０３１の高さ方向の画素数で除算して得た数の画素を超えて画像処理部へ出力したタイミングで、次の処理を実行する。すなわち、伸長制御部１０４３による転送指示によって圧縮画像をメモリ１０６から読み出して圧縮部共有バッファ１０３１に出力する。
【００８８】
２ライン目の画像の出力完了後、伸長部共有バッファ１０４１は、図８（ｑ）に示すように、（０，２）から（Ｗｉｎ−１，Ｂｈ−１）の伸長した出力画像の画素の出力読出し制御が行われる。伸長部共有バッファ１０４１は、（０，Ｂｈ）から（Ｗｉｎ／Ｂｈ−１，２×Ｂｈ−１）の圧縮データが格納された状態となる。
【００８９】
３ライン目の画像出力時も、２ライン目の画像出力と同様に処理が実施される。３ライン目の画像の出力完了後、伸長部共有バッファ１０４１は、図８（ｒ）に示すように、（０，Ｂｈ−１）から（Ｗｉｎ−１，Ｂｈ−１）の伸長した出力画像の出力読出し制御が行われる。伸長部共有バッファ１０４１は、（０，Ｂｈ）から（２×Ｗｉｎ／Ｂｈ−１，２×Ｂｈ−１）の圧縮データが格納された状態となる。
【００９０】
Ｂｈライン目の画像出力時も、２、３ライン目の画像出力と同様に処理が実施される。図８（ｓ）は、Ｂｈライン目の出力が完了した時刻における伸長部共有バッファ１０４１の状態を示す図である。伸長部共有バッファ１０４１は、座標（０，Ｂｈ）から（（Ｂｈ−１）×Ｗｉｎ／Ｂｈ−１，Ｂｈ−１）の圧縮データが格納された状態となる。これは、図６（ｇ）における伸長部共有バッファ１０４１の使用状況と同じであるため、以後は同様の処理を画像の最後まで繰り返し実施することによって、伸長した画像をラスタースキャンで出力することが可能となる。
【００９１】
本実施形態においては、圧縮伸張処理を固定長圧縮であり、４画素×４画素を圧縮した圧縮データが非圧縮画像４画素と同等の場合を説明した。ここで、圧縮率Ｎ＝３であり、圧縮ブロックの幅と圧縮結果のデータサイズが一致しない場合、圧縮部共有バッファ１０３１、伸長部共有バッファ１０４１の圧縮データが格納される領域のデータ幅を拡張して対応する。非圧縮画像の１画素のデータサイズをＤとすると、非圧縮画像のみが格納される領域の１アドレスのデータサイズはＤとし、圧縮画像も格納される領域はＢｈ×Ｄ／Ｎとすることで、上述の実施形態と同様に対応することが可能である。
【００９２】
また、圧縮処理に可変長圧縮を用いる場合、圧縮率Ｎを最低圧縮率で導出することにより、同様に対応できる。圧縮データを分割する際には幅Ｂｗのアドレス内に前詰めして格納することで、対応できる。
【００９３】
従来の手法においては、圧縮前に走査変換を実施するためのバッファと、圧縮後にメモリに圧縮データを転送する前のバッファを個別に設ける構成となっている。また、伸長部においても、メモリから読出した圧縮データを保持するバッファと、出力画像の走査変換を行うバッファとを別個に設ける構成となっている。これに対し、本実施形態によれば、転送前、転送後の圧縮画像を保持するバッファを走査変換バッファと共有して削減するため、回路規模を削減することが可能となる。
【００９４】
［その他の実施形態］
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１以上のプロセッサがプログラムを読み出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【符号の説明】
【００９５】
１０            映像処理装置
１０２Ａ、１０２Ｂ  画像処理部
１０３          圧縮部
１０３１        圧縮部共有バッファ
１０３２        圧縮処理部
１０３３        圧縮制御部
【図１】
2020195038.tif 000003
【図２】
2020195038.tif 000004
【図３】
2020195038.tif 000005
【図４】
2020195038.tif 000006
【図５】
2020195038.tif 000007
【図６】
2020195038.tif 000008
【図７】
2020195038.tif 000009
【図８】
2020195038.tif 000010