(57)【要約】【課題】画素データをメモリから画像圧縮装置に転送するＤＭＡ装置と、画像圧縮装置と、圧縮コードを画像圧縮装置からメモリに転送するＤＭＡ装置のそれぞれの処理単位が固定されず、不要な圧縮ヘッダ情報が含まれず、メモリを効率的に利用できる画像処理装置を提供する。【解決手段】原稿を読み取り画素データを入力する原稿読取部２と、入力された画素データを記憶するメモリ３と、画素データを圧縮して圧縮コードを出力する画像圧縮装置８と、メモリ３から画像圧縮装置８へ画素データのＤＭＡ転送を行うＤＭＡコントローラＡ７と、圧縮コードをメモリ３に格納するため画像圧縮装置８からメモリ３へＤＭＡ転送を行うＤＭＡコントローラＢ９とからなる画像処理装置において、画像圧縮装置８と、ＤＭＡコントローラＡ７と、ＤＭＡコントローラＢ９はそれぞれ処理するデータ単位が独立して制御される。【選択図】      図１
2004208094.tif 000002
【特許請求の範囲】
【請求項１】
画素データを入力する入力手段と、入力された画素データを記憶する記憶手段と、前記画素データを圧縮して圧縮コードを出力する圧縮装置と、前記記憶手段から前記圧縮装置へ前記画素データのＤＭＡ転送を行う第１のＤＭＡ装置と、前記圧縮コードを前記記憶手段に格納するため前記圧縮装置から前記記憶手段へＤＭＡ転送を行う第２のＤＭＡ装置とからなる画像処理装置において、
前記圧縮装置と、前記第１のＤＭＡ装置と、前記第２のＤＭＡ装置はそれぞれ処理するデータ単位が独立して制御されることを特徴とする画像処理装置。
【請求項２】
前記記憶手段は、前記画素データが入力される第１の記憶装置と、前記圧縮コードが格納される第２の記憶装置とからなることを特徴とする請求項１記載の画像処理装置。
【請求項３】
前記第１の記憶装置は、画素データの一部を一時記憶しながら出力するＦＩＦＯ方式のバッファメモリであることを特徴とする請求項２記載の画像処理装置。
【請求項４】
前記圧縮装置が処理するデータ単位は画像１ページ単位で、前記第１のＤＭＡ装置が処理するデータ単位は前記画像１ページを１つ以上に分割したバンド単位であり、前記第２のＤＭＡ装置が処理するデータ単位は任意の単位で行うことを特徴とする請求項１乃至請求項３のいずれかに記載の画像処理装置。
【請求項５】
前記圧縮装置が処理するデータ単位は画像１ページ単位で、前記第１のＤＭＡ装置が処理するデータ単位は前記画像１ページを複数に分割したバンド単位であり、前記第２のＤＭＡ装置が処理するデータ単位は前記記憶手段の連続した空き領域に応じた単位で行うことを特徴とする請求項１記載の画像処理装置。
【請求項６】
前記第２のＤＭＡ装置が処理するデータの先頭のデータ単位に圧縮情報に関するヘッダが付加され、前記画像１ページを構成する他のデータ単位にはヘッダが付加されないことを特徴とする請求項４または請求項５に記載の画像処理装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、画像データを圧縮して取り扱う画像形成装置に用いられる画像処理装置に関し、特に具体的には圧縮装置と画像データの転送にＤＭＡ装置を用いる画像処理装置に関する。
【０００２】
【従来の技術】
画像形成装置では、取り扱う画像の高解像度化と高階調化、更には４色を基本色としたフルカラー化にともない、画像の画素データは膨大になっており、大量の画素データの記憶領域と伝送の効率化が必要になっている。このため、読込んだ画素データを画像圧縮装置を用いて一旦圧縮後、一時的に圧縮コードの形式で記憶装置に格納し、また、記憶装置と圧縮装置との間のデータ転送には、ＣＰＵによる転送制御を介さないでＤＭＡ装置を用いて直接データを転送することが行われている。
【０００３】
このようなＤＭＡ装置を用いて転送する場合、通常、画像はページ単位で扱われるため、ページ単位で転送が行われる。例えば、メモリに格納された１ページの画素データを、ＤＭＡ装置を介して画像圧縮装置に転送すると、画像圧縮装置は受け取った画素データを逐次圧縮して、ページ単位の圧縮コードとして再度メモリに格納する。
【０００４】
このような処理方法では、圧縮前の画素データは膨大な量のデータであり、このデータを連続してメモリから画像圧縮装置に転送するため、たとえＤＭＡ装置を使用したとしても、画像処理装置のデータバスを長時間占有することになる。また、この画素データを圧縮した圧縮コードを画像圧縮装置からメモリに格納するときにも同様にデータバスを長時間占有することになる。
【０００５】
このため、大きな画素データを処理するときには、データを複数のバンド単位に分割したバンドデータとして取り扱い、メモリからバンド単位で画像圧縮装置に転送し、画像圧縮装置は、そのデータを受け取り逐次圧縮コードに圧縮して、所定のバンド単位の圧縮コードをメモリに格納する。このようにすると、ページ単位より小さいデータ単位で転送処理を行えるため、転送時にデータバスを長時間連続して占有することがなくなり、ほかのデータや制御データの転送に滞りがなくなる。
【０００６】
特許文献１では、圧縮または非圧縮の画素データを、ＤＭＡ装置を介してバンド単位で転送し、エラーを回避する方法について説明している。
【０００７】
【特許文献１】
特開２００１−２６１５１号公報
【０００８】
【発明が解決しようとする課題】
しかし、ページ単位で画素データを転送する方法では、前述したようにデータバスなどの転送経路を長時間占有する問題が発生し、更には、１ページ分の画素データは圧縮後であっても、格納するためには多量の連続したメモリ領域を必要とし、メモリの利用効率が低下する問題が発生する。
【０００９】
また、上記特許文献１に説明されているように、１ページ分の画素データを複数のバンド単位として転送を行う場合、画像圧縮装置からの圧縮コードをバンド単位でメモリに格納する際、利用している画像圧縮形式のヘッダ情報が各バンドデータに書き込まれ、通常１つで済むヘッダ情報が各バンドに含まれてメモリに格納されるため、メモリ領域を無駄に使用してしまう問題がある。
【００１０】
さらに、上記のようにページ単位或いはバンド単位に画素データを取り扱う画像処理装置では、記憶装置から画像圧縮装置へ画素データを転送するＤＭＡ装置と、画像圧縮装置と、画像圧縮装置からメモリに圧縮コードを転送するＤＭＡ装置の制御単位が同じであるため、上記の無駄なヘッダ情報の問題とともに、バンドのデータ量に応じた連続したメモリの空き領域が必要になるという問題もある。
【００１１】
本発明は、斯かる実状に鑑みなされたものであり、画素データをメモリから画像圧縮装置に転送するＤＭＡ装置と、画像圧縮装置と、圧縮コードを画像圧縮装置からメモリに転送するＤＭＡ装置のそれぞれの処理単位が固定されず、不要な圧縮ヘッダ情報が含まれず、メモリを効率的に利用できる画像処理装置を提供することを目的とするものである。
【００１２】
【課題を解決するための手段】
上記目的を達成するために、本発明では、画素データを入力する入力手段と、入力された画素データを記憶する記憶手段と、画素データを圧縮して圧縮コードを出力する圧縮装置と、記憶手段から圧縮装置へ画素データのＤＭＡ転送を行う第１のＤＭＡ装置と、圧縮コードを記憶手段に格納するため圧縮装置から記憶手段へＤＭＡ転送を行う第２のＤＭＡ装置とからなる画像処理装置において、圧縮装置と、第１のＤＭＡ装置と、第２のＤＭＡ装置はそれぞれ処理するデータ単位が独立して制御される構成である。
【００１３】
前記記憶手段は、画素データが入力される第１の記憶装置と、圧縮コードが格納される第２の記憶装置とからなる。
【００１４】
または、前記第１の記憶装置は、画素データの一部を一時記憶しながら出力するＦＩＦＯ方式のバッファメモリである。
【００１５】
更に、本発明では、前記圧縮装置が処理するデータ単位は画像１ページ単位で、前記第１のＤＭＡ装置が処理するデータ単位は画像１ページを１つ以上に分割したバンド単位であり、前記第２のＤＭＡ装置が処理するデータ単位は任意の単位で行うように構成される。
【００１６】
或いは、前記圧縮装置が処理するデータ単位は画像１ページ単位で、前記第１のＤＭＡ装置が処理するデータ単位は前記画像１ページを複数に分割したバンド単位であり、前記第２のＤＭＡ装置が処理するデータ単位は前記記憶手段の連続した空き領域に応じた単位で行うように構成される。
【００１７】
更に、本発明では、前記第２のＤＭＡ装置が処理するデータの先頭のデータ単位に圧縮情報に関するヘッダが付加され、前記画像１ページを構成する他のデータ単位にはヘッダが付加されない構成とする。
【００１８】
【発明の実施の形態】
以下、本発明の詳細を添付図に基づいて説明する。図１は本発明に係る画像処理装置を含むスキャナ装置のブロック図である。
【００１９】
図１において、スキャナ装置１は、原稿読取部２と、読み取った画像を画素データとして格納するメモリ３と、各構成要素を制御するＣＰＵ４と、外部に接続されたパソコンなどの情報処理装置６とのインタフェースをとるＩ／Ｆ５と、メモリに格納された画素データを圧縮する画像圧縮装置８に直接転送する制御を行うＤＭＡコントローラＡ７と、画像圧縮装置８から圧縮された圧縮コードを直接メモリに転送する制御を行うＤＭＡコントローラＢ９と、スキャナ装置１の操作のたの入力指示や表示出力が行われる操作部１０と、原稿読取部２とメモリ３とＣＰＵ４とＤＭＡコントローラＡ７と画像圧縮装置８とＤＭＡコントローラＢ９との間のデータあるいは制御信号を伝送するバス１１とから構成される。また、上記のうち、画像処理装置１２を構成する要素は図１において破線で示される部分である。
【００２０】
前記原稿読取部２は、さらに図外の要素として、原稿を置く原稿台と、その原稿を照明する光源と、原稿から反射する画像情報を集光するレンズと、レンズにより集光された画像情報をデジタル画素データに変換するＣＣＤなどから構成され、原稿を読み取り後、例えば１画素を２５６階調のグレースケールデータ或いはそれぞれ２５６階調のＲＧＢ（レッド、グリーン、ブルー）の画素データとしてメモリ３に格納する。
【００２１】
前記メモリ３は、大量の画素データを格納するため集積度が高い、例えばＤＲＡＭやＳＤＲＡＭなどが使用される。また前記Ｉ／Ｆ５は、ＣＰＵ４と外部の情報処理装置６とのインタフェース部であり、ＲＳ２３２ＣやＵＳＢなどのシリアルインタフェース、パラレルインタフェース、或いはＬＡＮなどのネットワークインタフェースを備えている。
【００２２】
ＤＭＡコントローラＡ７は、ＣＰＵ４から転送に必要な情報、例えば転送開始するメモリアドレスや、転送終了のメモリアドレス或いは転送サイズなどの制御情報を受け取り、その制御情報に従ってメモリ３に格納されている画素データを設定されたサイズだけ、ＣＰＵ４を介さずバス１１を使用して画像圧縮装置８に転送する。設定されたサイズの画素データの転送が終了するとその旨をＣＰＵ４に通知する。
【００２３】
前記画像圧縮装置８は、入力される画素データを順次圧縮し、圧縮コードを生成するとＣＰＵ４に通知する。画像圧縮装置で圧縮する形式は、読み込み画像の種類に応じて使い分けることが可能で、例えば２値の場合はＪＢＩＧ、カラーではＪＰＥＧなどを用いることができる。尚、本実施形態ではＪＰＥＧを用いた例を説明する。
【００２４】
また、ＤＭＡコントローラＢ９は、ＣＰＵ４から転送に必要な情報、例えば転送開始するメモリアドレスや、転送終了のメモリアドレス或いは転送サイズなどの制御情報を受け取り、その制御情報に従って画像圧縮装置から圧縮コードをメモリ３に設定されたサイズだけ、ＣＰＵ４を介さずバス１１を使用して転送する。設定されたサイズの圧縮コードの転送が終了するとその旨をＣＰＵ４に通知する。
【００２５】
操作部１０は、入力のための操作キーや表示のための表示部などから構成され、スキャナ装置１に対して読み取りの指示や、読み取り後圧縮した圧縮コードを情報処理装置６に転送するなどの指示が行える。
【００２６】
以上説明したデータの転送にかかわる動作を図２を参照して、さらに具体的に説明する。図２は、本実施例の画像処理装置のデータ転送に係るタイミングチャートで、（ａ）はＤＭＡコントローラＡ７が処理する全てのバンドが同じサイズの場合、（ｂ）はＤＭＡコントローラＡ７が処理するバンドが異なるサイズの場合である。
【００２７】
操作部１０からの指示により、原稿読取部２で読み取られた原稿の画像データは、メモリ３に画素データとして一旦格納される。この状態で、ＣＰＵ４はメモリ３の空き領域を監視し、ＤＭＡコントローラＡ７を起動するとともに、ＤＭＡコントローラＡ７に対して、画像圧縮装置８に転送を開始する画素データを格納するメモリ３の開始アドレスと終了アドレス（または転送サイズ）をバンド１のデータ転送情報として設定する。ＤＭＡコントローラＡ７は画像圧縮装置８にバンド１のデータをメモリ３の上記開始アドレスから転送し、終了アドレス（または転送サイズ）に至ると、ＣＰＵへ転送終了の通知を行う。その後、ＣＰＵ４は、メモリ３に格納されている次の画素データをバンド２のデータとして同様な処理を行い、最後のバンド４のデータの転送が終了するまで同様な処理を行う。
【００２８】
上記したメモリ３から画像圧縮装置８への転送の際、１ページ分の画素データはバンド単位に分割されるが、図２（ａ）では全てのバンドのデータサイズが同じ場合を示し、図２（ｂ）では、各バンドのデータサイズが、例えば、転送状態が発生する都度、画像圧縮装置８の処理状況や画素データのメモリ３での格納状況などに応じて任意に設定される場合を示す。
【００２９】
ＣＰＵ４がＤＭＡコントローラＡ７を設定すると同時に、画像圧縮装置８も起動しているので、メモリ３から画像圧縮装置８にバンド単位で転送された画素データは、画像圧縮装置８に取り込まれると圧縮が開始され、その後は画素データ入力と並行して圧縮処理が継続されて、バンド４の画素データの圧縮が終了すると１ページ分の画像の圧縮処理が完了する。
【００３０】
画像圧縮装置８によりバンド１の画素データの圧縮が開始されるのとほぼ同時に、圧縮された画像の圧縮コードがＤＭＡコントローラＢ９を介してメモリ３の空き領域に戻されることになる。このため、ＣＰＵ４は画像圧縮装置８を起動する時にＤＭＡコントローラＢ９も起動しており、メモリ３の空き領域に応じて、圧縮コードをメモリ３に戻すために、メモリ３の開始アドレスと終了アドレス（または転送サイズ）をＤＭＡコントローラＢ９に対して設定する。この設定はＤＭＡコントローラＡ７に対する設定とは独立して行われるため、両方のＤＭＡコントローラが独立して並行に処理を分担する。
【００３１】
こうして、図２（ａ）と（ｂ）に示す圧縮コード１がメモリ３に転送され、その転送が終了すると、ＤＭＡコントローラＢ９はＣＰＵ４に転送の終了を通知する。すると、ＣＰＵ４は再度メモリ３の空き領域に応じて次の圧縮コード、すなわち、図２（ａ）と（ｂ）の圧縮コード２をメモリ３に戻すためメモリ３の開始アドレスと終了アドレスをＤＭＡコントローラＢ９に対して設定し、圧縮コード２の転送が開始される。同様にして、圧縮コード３の転送が終了すると、画像１ページ分の圧縮処理が完了し、１ページ分の圧縮コードがメモリ３に記憶される。その後、ＣＰＵ４は情報処理装置６や操作部１０からの指示に応じて、メモリ３に格納された圧縮コードをＩ／Ｆ５を介して情報処理装置６に送信する。
【００３２】
図３は、図２を参照して説明した画素データとそれを圧縮した圧縮コードの関係を示し、図３（ａ）は図２（ａ）に、図３（ｂ）は図２（ｂ）に対応する。画素データ１ページ分を任意に設定された複数のバンドに分割し、メモリ３の空き領域に応じて任意に分割格納された圧縮コードを示している。このようにして、画像圧縮装置８の圧縮単位と、ＤＭＡコントローラＡ７とＤＭＡコントローラＢ９の転送単位とをそれぞれ独立して任意の単位に設定して制御しつつ、画像圧縮装置８による圧縮単位を１ページの単位に設定すれば、下記する効果を得ることができる。
【００３３】
例えば、ＪＰＥＧ方式による圧縮では、ヘッダと呼ばれる圧縮コードの属性や量子化テーブル、ホフマン符号化テーブルなどの情報が圧縮コードの先頭に付加される。図４は、圧縮コードに含まれるヘッダ情報を示し、（ａ）は圧縮をバンドごとに行う従来例の場合、（ｂ）は本実施例の場合を示す。この場合、比較のために従来例も本実施例も、同じ圧縮コードＡ〜Ｃが生成されてメモリに格納されるものとする。
【００３４】
図４（ａ）では、画像圧縮装置による圧縮が、圧縮コードＡ〜Ｃに対応する画素データのバンドごとに行われるため、圧縮コードＡには圧縮コードＡ用のヘッダが、圧縮コードＢには圧縮コードＢ用のヘッダが、圧縮コードＣには圧縮コードＣ用のヘッダがそれぞれ付加される。図４（ｂ）の本実施例では、圧縮コードＡ〜Ｃを通した内容に対するヘッダ１つが、圧縮コードＡの先頭に付加されるのみである。このため、圧縮コードを格納するメモリの大きさと転送時間が、図４（ｂ）に示す差分Δの分だけ節約できる。通常、１つのヘッダは数百バイト〜１Ｋバイトの大きさがあり、従来例は１ページの画素データを図４（ａ）に示した例より、さらに細かいバンドに分割することが一般的であるので、本実施例はより大きなメモリを節約することができる。
【００３５】
図５は、１ページ単位に圧縮してメモリに格納する単位がそれぞれ１ページの場合の従来例と本実施例とのメモリの格納状況を比較した図である。１ページ単位に圧縮して格納する方式では、前記したように複数のヘッダが付加されることはないが、１ページの圧縮コードに対応したメモリの連続した空き領域を確保することが困難な場合がある。これに反して、本実施例では、圧縮は１ページを単位として行いながらも、メモリ３の空き領域に格納できるようＤＭＡコントローラＢ９を制御して、分割格納するため図５に示すように、それぞれの圧縮コード１〜３はメモリ３の空き領域に問題なく格納することが可能になる。
【００３６】
なお、本実施形態では原稿読取部２で原稿を読み取った画素データを一旦格納する記憶手段と、画像圧縮装置８で圧縮された圧縮コードを格納する記憶手段をメモリ３で共用する構成としたが、画素データと圧縮コードをそれぞれ情報処理装置６などで処理する場合は、メモリの管理を容易にするために、それぞれ個別のメモリにすることもできる。
【００３７】
また、読み取った画素データは取り扱わず、圧縮コードのみ情報処理装置６が必要とする場合は、読み取った画素データをメモリ３に一旦格納せず、ＦＩＦＯ方式で構成されるバッファメモリを介して画像圧縮装置８に転送することもできる。この場合、メモリ３はスキャナ装置１の制御と圧縮コードを格納するために使用される。
【００３８】
本実施形態では、スキャナ装置１で読み取った画素データの圧縮処理を例にあげて説明したが、装置の形態や用途に限定されるものではなく、画素データを圧縮する処理に係わる他の装置や機能や回路に適用できることはいうまでもない。
【００３９】
【発明の効果】
本発明では、圧縮装置と、第１のＤＭＡ装置と、第２のＤＭＡ装置が処理するデータ単位が独立して制御される構成であるため、圧縮コードを効率よくメモリに格納することができるという効果を奏する。
【００４０】
更に画素データが入力されるメモリと圧縮コードが格納されるメモリとを異なるメモリとすることでメモリ管理の効率化を図ることが可能になる。
【００４１】
または、画素データの一部を一時記憶しながら出力するＦＩＦＯ方式のバッファメモリを使用することにより、必要なメモリの容量を低減することが可能になる。
【００４２】
前記圧縮装置が処理するデータ単位は画像１ページ単位で、第１のＤＭＡ装置が処理するデータ単位は前記画像１ページを複数に分割したバンド単位であり、第２のＤＭＡ装置が処理するデータ単位はメモリの連続した空き領域に応じた単位で行うように構成することも可能で、メモリの空き領域を効率よく利用することができる。
【００４３】
更に、本発明では、第２のＤＭＡ装置が処理するデータの先頭のデータ単位に圧縮情報に関するヘッダが付加され、画像１ページを構成する他のデータ単位にはヘッダが付加されないため、無駄なメモリの消費をおさえ、１ページ分の圧縮コードにつなぎ合わせるために余分なヘッダを取り除く処理を省くことができる。
【図面の簡単な説明】
【図１】本発明に係る画像処理装置を含むスキャナ装置のブロック図である。
【図２】本実施例の画像処理装置のデータ転送に係るタイミングチャートで、（ａ）はＤＭＡコントローラＡ７が処理する全てのバンドが同じサイズの場合、（ｂ）はＤＭＡコントローラＡ７が処理するバンドが異なるサイズの場合である。
【図３】図２を参照して説明した画素データとそれを圧縮した圧縮コードの関係を示し、（ａ）は図２（ａ）に、（ｂ）は図２（ｂ）に対応する。
【図４】圧縮コードに含まれるヘッダ情報を示し、（ａ）は圧縮をバンドごとに行う従来例の場合、（ｂ）は本実施例の場合を示す。
【図５】１ページ単位に圧縮してメモリに格納する従来例と本実施例とのメモリの格納状況を比較した図である。
【符号の説明】
１    スキャナ装置
２    原稿読取部
３    メモリ
４    ＣＰＵ
５    Ｉ／Ｆ
６    情報処理装置
７    ＤＭＡコントローラＡ
８    画像圧縮装置
９    ＤＭＡコントローラＢ
１０  操作部
１１  バス
１２  画像処理装置
【図１】
2004208094.tif 000003
【図２】
2004208094.tif 000004
【図３】
2004208094.tif 000005
【図４】
2004208094.tif 000006
【図５】
2004208094.tif 000007