(57)【要約】【課題】  イメージが格納されるバンドメモリを２つ保持できない場合にも対応できる、他バンドを参照するタイプの圧縮方式を提供する。【解決手段】  矩形領域を複数の帯状の画像領域に分割して画像を符号化する方式で、且つ、任意の画素を符号化する際にその近傍にある画素から予測を行うことにより符号化する方式であり、前記帯状の画像領域を格納可能なメモリ手段と、メモリ手段を複数供給できるメモリ供給手段と、メモリ供給手段から供給されたメモリ手段を返却するメモリ返却手段と、前メモリ供給手段から供給された上記メモリ手段に符号化する帯状の画像を出力するメモリ出力手段と、任意の画素を符号化する際に参照する画素の位置を少なくとも一つ供給する参照位置供給手段を備え、上記帯状のイメージ内に存在する画素を符号化する際に、参照位置供給手段により供給される少なくとも一つの相対位置を参照することにより符号化を行う。【選択図】  図１
2006246017.tif 000002
【特許請求の範囲】
【請求項１】
矩形領域を複数の帯状の画像領域に分割して画像を符号化する方式で、且つ、任意の画素を符号化する際にその近傍にある画素から予測を行うことにより符号化する方式であり、前記帯状の画像領域を格納可能なメモリ手段と、上記メモリ手段を複数供給できるメモリ供給手段と、上記メモリ供給手段から供給されたメモリ手段を返却するメモリ返却手段と、前記メモリ供給手段から供給された上記メモリ手段に符号化する帯状の画像を出力するメモリ出力手段と、上記任意の画素を符号化する際に参照する画素の位置を少なくとも一つ供給する参照位置供給手段を備え、上記帯状のイメージ内に存在する画素を符号化する際に、上記参照位置供給手段により供給される少なくとも一つの相対位置を参照することにより符号化を行うことを特徴とする符号化方式。
【請求項２】
請求項１記載の符号化方式で、上記参照位置供給手段は、帯状のイメージ領域を圧縮する時点の、前記メモリ供給手段から供給され前記メモリ返却手段に返却されていない前記メモリ手段の個数、もしくは容量、もしくはその両方を参照することで参照位置を計算することを特徴とする符号化方式。
【請求項３】
請求項１記載の符号化方式で、上記符号化方式で符号化する画像は、各々異なるスクリーン角を持つ複数色の周期的な色成分信号からなることを特徴とする符号化方式。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像符号化装置に関するものであり、特に画像処理装置に搭載される、入力された画像を複数の帯状の領域に分割して画像を符号化する画像符号化方式に関する。
【背景技術】
【０００２】
従来、画像を出力して印刷する画像出力装置はその出力解像度に応じた解像度のビットマップメモリを用意する必要があった。一方近年の印刷装置では高解像度の出力が求められるようになり、ビットマップメモリの容量も必然的に増加する傾向にある。そのため画像処理装置に搭載されるメモリのコストが問題になる。
【０００３】
このため、画像全体に対応するビットマップを複数の帯状の領域（バンド）に分割して処理を行い、そのバンドを圧縮してメモリに保持することでメモリ容量の削減を図る技術が採り入れられている。
【０００４】
一方画像圧縮技術として、予測符号化の技術がよく知られている。予測符号化技術は、既に分かっている周囲の画素値から注目画素の予測値を求め、その予測値からの誤差を符号化する。
【０００５】
しかし、上述したバンド単位で圧縮を施す場合で、予測符号化のような周辺画素を参照する符号化技術を採り入れた場合には、必然的に参照する画素をメモリに保持する必要がある。
【０００６】
この課題を解決するためには、（１）一般的に予測符号化のように周辺画素を参照する符号化方式では、参照する画素は圧縮する画素の直前（数ライン上や数画素左）にしていることが多いので、バンド画像が保持されるバッファを２つ用意して、２つのバッファに対して交互にラスタライズを行ってから圧縮を施すことで、圧縮されるバンドに含まれる画素を圧縮する際に参照される可能性がある画素を常にメモリに保持する方法と、（２）参照する画素がメモリ上に存在しない場合には、予め参照する画素が含まれたバンド画像を伸張する方法が考えられている。
【０００７】
又、従来例としては、例えば特許文献１と特許文献２をあげることが出来る。
【特許文献１】特開平１１−１６４１５０号公報
【特許文献２】特開２０００−３３５０２１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
しかしながら、上述した従来の技術では、バンドバッファを少なくとも２つ用意する必要がある。このためには２つのバンドバッファを（ａ）予め固定的に割り当てる方式と、（ｂ）動的に確保する方法がある。（ａ）ではバンドバッファをその他の用途として利用することができないためメモリの使用効率が低下し、（ｂ）では常にバンドメモリが確保できる保障がないため、バンドメモリが獲得できるまで圧縮処理が行えないため、処理速度が低下する問題がある。更にまた（２）の場合には、バンド画像を伸張するので処理時間が増大する問題がある。
【課題を解決するための手段】
【０００９】
上述した課題を解決するために、本発明の請求項１記載の符号化方式は、矩形領域を複数の帯状の画像領域に分割して画像を符号化する方式で、且つ、符号化する画素と該圧縮する画素から相対的な位置で表される少なくとも一つの参照画素を始点とした画素値の並びを比較することにより、その比較結果もしくは符号化する画素の画素値を符号化する方式であり、前記帯状の画像領域を格納可能なメモリ手段と、上記メモリ手段を複数供給できるメモリ供給手段と、上記メモリ供給手段から供給されたメモリ手段を返却するメモリ返却手段と、前記メモリ供給手段から供給された上記メモリ手段に符号化する帯状の画像を出力するメモリ出力手段と、上記参照する画素の相対位置を少なくとも一つ供給する参照位置供給手段を備え、帯状のイメージ内に存在する画素を符号化する際に、上記参照位置供給手段により供給される少なくとも一つの相対位置を参照することにより符号化を行うことを特徴とする。
【００１０】
また、本発明の請求項２記載の符号化方式は、請求項１記載の符号化方式で、上記参照位置供給手段は、帯状のイメージ領域を圧縮する時点の、前記メモリ供給手段から供給され前記メモリ返却手段に返却されていない前記メモリ手段の個数、もしくは容量、もしくはその両方を参照することで参照位置を計算することを特徴とする。
【００１１】
また、本発明の請求項３記載の符号化方式は、請求項１記載の符号化方式で、上記符号化方式で符号化する画像は、各々異なるスクリーン角を持つ少なくとも一つの周期的な色成分信号からなることを特徴とする。
【発明の効果】
【００１２】
本発明によって、例えば予測符号化のように周辺画素を参照して画像を圧縮する符号化方式で、参照する位置をシステムのメモリ使用状況に応じて変更することが可能となり、高速で大容量のメモリを必要としない符号化を行うことができる。
【発明を実施するための最良の形態】
【００１３】
以下添付図面を参照して本発明の好適な実施例を詳細に説明する。
【実施例１】
【００１４】
図１は本発明の代表的な実施例であるレーザプリンタに組み込まれる印刷制御部の構成を示すブロック図である。このレーザプリンタでは紙面一枚相当の画像データを展開するビットマップメモリを持たず、紙面を複数の矩形領域（バンド）に分割したビットマップを描画し、該ビットマップにディザ処理を施し、該ディザ処理された画像を圧縮して格納し、バンド単位で画像を復号化してレーザプリンタへのデータ転送を実行できる。なお本実施例では、紙面一枚相当の画像データを６つの矩形領域に分割して処理を行うものとする。
【００１５】
図１において、１０１は印刷制御部、１０２はプリンタに印刷データを供給するホストコンピュータ、１０３はホストから供給される印刷データを図示しない受信バッファに蓄えるインターフェース、１０４はインターフェース１０３で受信バッファに蓄えられた印刷データに基づきバンド単位でディザ画像を生成する画像生成部、１０５は画像生成部１０４で生成されたディザ画像を後述する方式で符号化する画像符号化部、１０６は画像符号化部で後述する方式で符号化された符号化データを復号する画像復号化部、１０７は画像復号化部で復号された画像をプリンタに供給する画像出力部、１０８は後述する制御手段に従って印刷制御部１０１を制御を行うＣＰＵ、１０９は上記制御手段実行のためのプログラム等が格納されるＲＯＭ，１１０は後述する手段でメモリの供給及び返却を行うメモリ管理部、１１１はメモリ管理部１１０で管理されるＲＡＭ、１１２は後述する符号化方式で必要なパラメータを供給する参照位置供給部、１１３は印刷制御部１０１の画像出力部１０７から供給された画像を紙面に出力するプリンタである。
【００１６】
本実施例では、画像生成部１０４、画像符号化部１０５、画像出力部１０７はそれぞれメモリ管理部１１０と接続され、メモリ管理部１１０はそれぞれ接続されたブロックからの要求に従い、ＲＡＭ１１１から要求されたメモリを獲得し、要求されたブロックに該メモリを供給する。また、メモリ管理部１１０は各ブロックに分配したメモリの返却要求を受付け、その場合にはＲＡＭ１１１にメモリを解放する。メモリ管理部１１０にて獲得されたメモリはそれぞれのブロックで入出力を行うことができる。
【００１７】
画像符号化部１０５は、考えうる最低の圧縮率で圧縮された場合に備え、実際に使用するメモリより大きいサイズのメモリを要求する。このため、実際に出力する圧縮コードのサイズが要求したメモリサイズより小さくなることがあり得る。このためメモリ管理部１１０は、供給したメモリの一部を返却する機構も備える。
【００１８】
上述のように画像符号化部１０５は、ディザ画像を入力源として符号化処理を行う。ディザ画像は、高解像度の画像信号では近接する画素間での信号の変化が小さいため、任意の画素を該画素の近隣の画素から予測することが可能である。ここで任意の画素を予測する際に参照する近隣の画素を参照点と表現する。ディザ画像は符号化の一部としての入出力系の機構、特にディザマトリクスの２次元的配置に多く依存するため、ディザマトリクスの２次元的配置から予測の際の参照点を決定することで良好な予測を行うことができる。
【００１９】
すなわちディザマトリクスをＬ×Ｌの配列として、更にマトリクス配置が図２（ａ）に示すように副走査方向にＫドット分移動しているとすれば、かかるマトリクスサイズＬと移動量Ｋを用いて図２（ｂ）の点Ａ０（ｘ、ｙ）に対し点Ａ０’（ｘ＋Ｌ、ｙ−Ｋ）を予測する際の参照点とし、この参照点で予測した画素信号Ｓｅと、実際の予測画素Ｓｒの信号との誤差信号を符号化することにより良好な圧縮率を得ることができる。
【００２０】
以下具体例をあげて説明を行う。
【００２１】
図３のディザマトリクスによりディザ処理をした画像は図４のようになることが統計的に多い。そのため図３の画素ａ０を予測する場合には、画素ａ０’の位置を参照点として画素ａ０と画素ａ０’の誤差信号をもとめる。この場合参照画素の位置は予測する画素からの相対位置で（０，４）とベクトル表現できる。以下このベクトルを第１の参照ベクトルと呼ぶ。このように求めた誤差信号列はエントロピーが低いので、例えばランレングス符号化により符号化することで良好な圧縮率で符号化することができる。
【００２２】
一方、図３に示すように、画素ａ０は画素ａ１’’でも予測することが可能である。この場合の第２の参照ベクトルは（４，０）となる。このように参照ベクトルはディザマトリクスの２次元的配列により複数選択することができる。このため本実施例では、２つの参照ベクトルから画素を予測し、誤差信号が小さい方を採用して符号化することにより更に圧縮率を高めている。
【００２３】
また一般にディザマトリクスは色信号毎に異なる。しかし色毎に参照位置を示すベクトルを用意することにより、上述した方法と同一の方法で予測することができる。
【００２４】
上述のように符号化された信号は、上記メモリ管理部１１０から供給されたメモリに圧縮コードとして格納される。
【００２５】
画像復号化部１０６は、画像符号化部１０５が出力した圧縮コードを上述した符号化の逆の操作を行うことにより復号する。すなわち、任意の画素信号を参照画素から予測し、更に例えばランレングス符号化された誤差信号を復号し、上記予測した画素信号と誤差信号から実際の画素信号を求める。
【００２６】
上述した符号化方式の参照ベクトルはディザマトリクスから求めることが可能である。しかしながら、例えば図５のように参照ベクトル１がバンドの境界をまたぐ場合で、且つ参照ベクトル１が指し示す画素がメモリ上に存在しない場合、参照ベクトル１によって予測を行うことができない。この場合でも参照ベクトル２により予測を行うことは可能であるが、上述のように選択肢が２つある場合に比べ予測が外れる可能性が大きい、即ち圧縮率が悪化する可能性がある。
【００２７】
ところでディザマトリクスは一般的にスクリーン角と呼ばれるディザ模様の繰り返し単位の配列方向を持つ。図３のスクリーン角は４５度であるため、任意の画素信号はスクリーン角の方向の画素と同じ信号を持つ可能性が大きい。そこで図６に示すように、画素ａ０のスクリーン角方向にある画素ａ０’’’を新たに参照画素とすることにより画素信号の予測が行える。すなわちバンドの先頭画素における参照ベクトルが指し示す画素がメモリ上にない場合には、新たに第３の参照ベクトルをスクリーン角から算出して置き換えることで、圧縮率の低下を抑えることができる。
【００２８】
参照位置供給部１１２はこれらの参照ベクトルを画像符号化部１０５に供給する。すなわち、参照ベクトルが指し示す画像が既にメモリ上に存在するか否かを判断して供給する参照ベクトルを切り替える。ここで、参照ベクトルの切替はバンド単位で行われることに留意すること。
【００２９】
なお、バンド画像の高さは、第１の参照ベクトルのｙ方向成分よりも大きくする必要がある。しかし通常バンド画像の高さはディザマトリクスの整数倍にすることが多いので、特に注意する必要はない。
【００３０】
画像出力部１０７は画像復号化部１０６で復号化された画像をプリンタ１１３に伝送する。なお、画像出力部１０７は後述するバンドメモリに相当するメモリを２つ所有する。本実施例では、接続されるプリンタはレーザービームプリンタとしているため、画像の伝送は絶え間なく行う必要がある。このため、２つのバンドメモリの一方にバンド画像を復号化し、該バンド画像をプリンタに伝送すると同時に、もう一方のバンドメモリに続くバンド画像を復号化する。
【００３１】
プリンタへの画像伝送は紙の物理的搬送と同期しておこなわれるため、復号化処理と比較すると時間がかかる処理である。そのため、バンド画像の復号化処理は、バンド画像の転送処理が終了するまでに終えることができる。プリンタへの画像転送が終了すると、画像復号化部１０６は画像転送が終了したバンドメモリに画像を復号化する。それと同時にもう一方のバンドメモリに復号された画像をプリンタに伝送する。この処理を繰り返すことにより紙面全体の画像をプリンタに絶え間なく供給することが可能になる。
【００３２】
続いて、図７により、メモリ管理部１１０の動作に注目して印刷制御部１０１の制御手段について説明する。
【００３３】
インターフェース１０２はホストコンピュータから伝送される画像データを受信バッファに格納する。ここで画像データとは、例えばＰＤＬ（Ｐａｇｅ  Ｄｉｓｃｒｉｐｔｏｒ  Ｌａｎｇｕａｇｅ）で記述されたデータである。続いて画像生成部１０４は、メモリ管理部１１０に対してバンド画像を格納するためのメモリを要求する。メモリ管理部１１０はＲＡＭ１１１より要求されたメモリのサイズを割り当て、そのメモリを画像生成部１０４に供給する。画像生成部１０４は上記受信バッファに格納された画像データを解釈することにより供給されたメモリにディザ画像（バンド画像１）を書き込む。続いて画像符号化部１０５は上記バンド画像１の圧縮コードを格納するためのメモリをメモリ管理部１１０に要求する。ここで画像符号化部１０５が要求するメモリのサイズは、画像符号化部で最低の圧縮率で圧縮された場合のコードサイズと等しい。この時点でＲＡＭ１１１は図７の７０２のように、バンド画像１用のメモリとバンド画像１の圧縮コード用のメモリを割り当てている。続いて画像符号化部１０５は上記バンド画像１を前述した手段により圧縮するが、このとき参照位置供給部１１２は、バンド画像１の先頭の画素において、参照ベクトルが指し示す参照位置の画素がメモリ上にないので、上述したスクリーン角から求まる第３の参照ベクトルと、上述したバンドをまたがない第２の参照ベクトル（すなわち図５の参照ベクトル２）を画像符号化部１０５に供給する。
【００３４】
ここで画像符号化部１０５は、供給されたメモリの最後尾のアドレスから符号化データを書き込むが詳細については割愛する。バンド画像１の符号化が全て終了すると、画像符号化部１０５はヘッダ情報を供給されたメモリに書き込む。ここでヘッダ情報には、前のバンドを参照しないで符号化を行ったか否かのフラグを含む。すなわちここでは前のバンドを参照しないで符号化を行ったフラグを記入する。つづいて画像符号化部１０５は余ったメモリをメモリ管理１１０に返却する。この時点でＲＡＭ１１１は図７の７０３のようになる。以上でバンド画像１の処理は終了する。
【００３５】
つづいて、画像生成部１１０は続くバンド画像（バンド画像２）を描画するためにメモリ管理部１１０にバンド画像２を格納するメモリを要求する。そして上述した方法と同様の手段で、バンド画像２を供給されたメモリに書き込む。続いて、上記同様に、画像符号化部１０５はメモリ管理部１１０に対してバンド画像２の符号化データを書き込むメモリを要求する。この時点でＲＡＭ１１１は図７の７０４のようになる。つづいて画像符号化部１０５はバンド画像２を符号化するが、このとき参照位置供給部１１２は、バンド画像２の先頭画素において参照ベクトルが指し示す参照位置の画素がメモリ上に存在するので、上述したバンドをまたぐ第１の参照ベクトルと第２の参照ベクトルを供給する。この参照ベクトルを用いて画像符号化部１０５はバンド画像２を符号化し、ヘッダ情報に前のバンドを参照して符号化を行ったフラグを記入してバンド画像２の圧縮コード２を上記同様にメモリに格納する。この時点でＲＡＭ１１１は図７の７０５のようになる。
【００３６】
現時点までに画像生成部１１０はメモリ管理部から２つのメモリを供給されたが、返却はしていないことに留意すること。以下、これら画像生成部１１０で確保した２つのメモリをそれぞれ、第１のバンドメモリと第２のバンドメモリと呼ぶ。
【００３７】
続いて続くバンド画像（バンド画像３）を処理するが、このときバンド画像３を描画するためのメモリとして、第１のバンドメモリを利用する。前述したように、参照ベクトルのｙ成分はバンド画像の高さよりも大きくなることはない。従ってバンド画像２の符号化処理を終了した時点でバンド画像１をメモリに保持しておく必要はなくなる。このため第１のバンドメモリにバンド画像３を書き込んでも問題がない。更にこのように既に確保したバンド画像を描画するメモリを交互に利用することで、メモリの解放、確保の手間を無くして高速に処理が行えるという利点もある。こうして第１のバンド画像に書き込まれたバンド画像３は上述したバンド画像２と同様の手法で符号化され、メモリに格納される。このときＲＡＭ１１１は図７の７０６のようになる。
【００３８】
続いて、バンド画像４、５をバンド画像３と同様の手順で符号化する。このときにバンド画像を描画するメモリは、それぞれ第２のバンドメモリ、第１のバンドメモリになる。
【００３９】
バンド画像５の符号化処理が終わった時点でＲＡＭ１１１は図７の７０７のようになる。
【００４０】
続いて続くバンド画像（バンド画像６）を第１のバンドメモリに描画する。そして画像符号化部１０５は圧縮コードを格納するメモリをメモリ管理部１１０に要求するが、図７の７０７に示すようにＲＡＭ１１１には要求されたメモリを確保できない場合がある。このような場合には、画像生成部１１０は第２のバンドメモリを解放して、ＲＡＭ１１１の空き領域を増やす。そして再度画像符号化部１０５はメモリ管理部１１０に圧縮コードを格納するメモリを要求する。このときＲＡＭ１１１は図７の７０８のようになる。
【００４１】
続いて画像符号化部はバンドメモリ６を符号化するが、このときバンドメモリ６の先頭画素での参照ベクトルが指し示す画素がメモリ上に存在しないことになる。そのため参照位置供給部１１２は上述したスクリーン角から求まる第３の参照ベクトルと、上述したバンドをまたがない第２の参照ベクトル（すなわち図５の参照ベクトル２）を画像符号化部１０５に供給する。そのため出力される圧縮コードのヘッダ情報には、前バンドを参照せずに符号化を行ったフラグが記入されることになる。以下の処理は上述した方法と同様のため割愛する。
【００４２】
本実施例では紙面１枚に相当する画像を６つに分割して処理を行うので、以上の処理を持って全ての画像が圧縮されたことになる。このときのＲＡＭ１１１は図中７０９のようになる。
【００４３】
続いて画像復号化部１０６は上述のようにＲＡＭ１１１に格納された圧縮コードを復号化して画像出力部１０７に伝送する。上述したように画像出力部１０７は、前述したバンドメモリに相当するメモリを固定的に２つ持つ。そのため圧縮コードのヘッダ情報に関わらず、伸張処理を行うことが可能である。圧縮コードのヘッダ情報は、復号化時に利用する参照ベクトルを決定するために利用される。バンド画像を復号化しつつ、プリンタ１１３に画像を伝送する方法については既に説明したので省略する。
【００４４】
以上の処理を持って、ホストコンピュータから伝送された画像データをプリンタに伝送する制御手段は終了する。
【００４５】
本実施例では、第１のバンドメモリに描画した後に圧縮コードを格納するメモリを要求して確保できなかった場合を説明しているが、第２のバンドメモリに描画した後で圧縮コードを格納するメモリが確保できなかった場合でも、第１のバンドメモリを解放してもよい。
【００４６】
更にまた、本実施例では紙面１枚相当の画像を６つに分割しているが、分割する数は他の数でもよい。
【００４７】
更にまた、本実施例ではディザマトリクスを４×４としているが、それ以外のサイズでもよい。この場合には第１の参照ベクトルと第２の参照ベクトルと、またディザマトリクスのスクリーン角によっては第３の参照ベクトルの取りうる値が異っても本発明を適用することができる。
【００４８】
更にまた、本実施例では参照ベクトルの数を２つとし、そのうち一つの参照ベクトルを切り替える方式について説明しているが、参照ベクトルの数Ｉと切り替える参照ベクトルの数Ｊで、Ｊ≦Ｉならば、本発明を適用できることは言うまでもない。
【図面の簡単な説明】
【００４９】
【図１】本発明の１実施例を説明するためのブロック図である。
【図２】ディザマトリクスの２次元配置の一例を示す図である。
【図３】本発明の１実施例で使用するディザマトリクスの例である。
【図４】図３のディザマトリクスを使用した場合に出力される可能性が高いディザ画像である。
【図５】本発明の符号化方式で利用する参照ベクトルを説明する図である。
【図６】本発明の符号化方式で、スクリーン角から参照ベクトルを算出す手順を説明するための図である。
【図７】本発明の１実施例でのメモリの使用推移を示す図である。
【符号の説明】
【００５０】
１０２  ホストコンピュータ
１０３  入力インターフェース
１０４  画像生成部
１０５  画像符号化部
１０６  画像復号化部
１０７  画像出力部
１０８  ＣＰＵ
１０９  ＲＯＭ
１１０  メモリ管理部
１１１  ＲＡＭ
１１２  参照位置供給部
１１３  レーザービームプリンタ
【図１】
2006246017.tif 000003
【図２】
2006246017.tif 000004
【図３】
2006246017.tif 000005
【図４】
2006246017.tif 000006
【図５】
2006246017.tif 000007
【図６】
2006246017.tif 000008
【図７】
2006246017.tif 000009