JP2004208094A - 画像処理装置 - Google Patents
画像処理装置 Download PDFInfo
- Publication number
- JP2004208094A JP2004208094A JP2002375788A JP2002375788A JP2004208094A JP 2004208094 A JP2004208094 A JP 2004208094A JP 2002375788 A JP2002375788 A JP 2002375788A JP 2002375788 A JP2002375788 A JP 2002375788A JP 2004208094 A JP2004208094 A JP 2004208094A
- Authority
- JP
- Japan
- Prior art keywords
- data
- memory
- dma
- image
- compression
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Abstract
【課題】画素データをメモリから画像圧縮装置に転送するDMA装置と、画像圧縮装置と、圧縮コードを画像圧縮装置からメモリに転送するDMA装置のそれぞれの処理単位が固定されず、不要な圧縮ヘッダ情報が含まれず、メモリを効率的に利用できる画像処理装置を提供する。
【解決手段】原稿を読み取り画素データを入力する原稿読取部2と、入力された画素データを記憶するメモリ3と、画素データを圧縮して圧縮コードを出力する画像圧縮装置8と、メモリ3から画像圧縮装置8へ画素データのDMA転送を行うDMAコントローラA7と、圧縮コードをメモリ3に格納するため画像圧縮装置8からメモリ3へDMA転送を行うDMAコントローラB9とからなる画像処理装置において、画像圧縮装置8と、DMAコントローラA7と、DMAコントローラB9はそれぞれ処理するデータ単位が独立して制御される。
【選択図】 図1
【解決手段】原稿を読み取り画素データを入力する原稿読取部2と、入力された画素データを記憶するメモリ3と、画素データを圧縮して圧縮コードを出力する画像圧縮装置8と、メモリ3から画像圧縮装置8へ画素データのDMA転送を行うDMAコントローラA7と、圧縮コードをメモリ3に格納するため画像圧縮装置8からメモリ3へDMA転送を行うDMAコントローラB9とからなる画像処理装置において、画像圧縮装置8と、DMAコントローラA7と、DMAコントローラB9はそれぞれ処理するデータ単位が独立して制御される。
【選択図】 図1
Description
【0001】
【発明の属する技術分野】
本発明は、画像データを圧縮して取り扱う画像形成装置に用いられる画像処理装置に関し、特に具体的には圧縮装置と画像データの転送にDMA装置を用いる画像処理装置に関する。
【0002】
【従来の技術】
画像形成装置では、取り扱う画像の高解像度化と高階調化、更には4色を基本色としたフルカラー化にともない、画像の画素データは膨大になっており、大量の画素データの記憶領域と伝送の効率化が必要になっている。このため、読込んだ画素データを画像圧縮装置を用いて一旦圧縮後、一時的に圧縮コードの形式で記憶装置に格納し、また、記憶装置と圧縮装置との間のデータ転送には、CPUによる転送制御を介さないでDMA装置を用いて直接データを転送することが行われている。
【0003】
このようなDMA装置を用いて転送する場合、通常、画像はページ単位で扱われるため、ページ単位で転送が行われる。例えば、メモリに格納された1ページの画素データを、DMA装置を介して画像圧縮装置に転送すると、画像圧縮装置は受け取った画素データを逐次圧縮して、ページ単位の圧縮コードとして再度メモリに格納する。
【0004】
このような処理方法では、圧縮前の画素データは膨大な量のデータであり、このデータを連続してメモリから画像圧縮装置に転送するため、たとえDMA装置を使用したとしても、画像処理装置のデータバスを長時間占有することになる。また、この画素データを圧縮した圧縮コードを画像圧縮装置からメモリに格納するときにも同様にデータバスを長時間占有することになる。
【0005】
このため、大きな画素データを処理するときには、データを複数のバンド単位に分割したバンドデータとして取り扱い、メモリからバンド単位で画像圧縮装置に転送し、画像圧縮装置は、そのデータを受け取り逐次圧縮コードに圧縮して、所定のバンド単位の圧縮コードをメモリに格納する。このようにすると、ページ単位より小さいデータ単位で転送処理を行えるため、転送時にデータバスを長時間連続して占有することがなくなり、ほかのデータや制御データの転送に滞りがなくなる。
【0006】
特許文献1では、圧縮または非圧縮の画素データを、DMA装置を介してバンド単位で転送し、エラーを回避する方法について説明している。
【0007】
【特許文献1】
特開2001−26151号公報
【0008】
【発明が解決しようとする課題】
しかし、ページ単位で画素データを転送する方法では、前述したようにデータバスなどの転送経路を長時間占有する問題が発生し、更には、1ページ分の画素データは圧縮後であっても、格納するためには多量の連続したメモリ領域を必要とし、メモリの利用効率が低下する問題が発生する。
【0009】
また、上記特許文献1に説明されているように、1ページ分の画素データを複数のバンド単位として転送を行う場合、画像圧縮装置からの圧縮コードをバンド単位でメモリに格納する際、利用している画像圧縮形式のヘッダ情報が各バンドデータに書き込まれ、通常1つで済むヘッダ情報が各バンドに含まれてメモリに格納されるため、メモリ領域を無駄に使用してしまう問題がある。
【0010】
さらに、上記のようにページ単位或いはバンド単位に画素データを取り扱う画像処理装置では、記憶装置から画像圧縮装置へ画素データを転送するDMA装置と、画像圧縮装置と、画像圧縮装置からメモリに圧縮コードを転送するDMA装置の制御単位が同じであるため、上記の無駄なヘッダ情報の問題とともに、バンドのデータ量に応じた連続したメモリの空き領域が必要になるという問題もある。
【0011】
本発明は、斯かる実状に鑑みなされたものであり、画素データをメモリから画像圧縮装置に転送するDMA装置と、画像圧縮装置と、圧縮コードを画像圧縮装置からメモリに転送するDMA装置のそれぞれの処理単位が固定されず、不要な圧縮ヘッダ情報が含まれず、メモリを効率的に利用できる画像処理装置を提供することを目的とするものである。
【0012】
【課題を解決するための手段】
上記目的を達成するために、本発明では、画素データを入力する入力手段と、入力された画素データを記憶する記憶手段と、画素データを圧縮して圧縮コードを出力する圧縮装置と、記憶手段から圧縮装置へ画素データのDMA転送を行う第1のDMA装置と、圧縮コードを記憶手段に格納するため圧縮装置から記憶手段へDMA転送を行う第2のDMA装置とからなる画像処理装置において、圧縮装置と、第1のDMA装置と、第2のDMA装置はそれぞれ処理するデータ単位が独立して制御される構成である。
【0013】
前記記憶手段は、画素データが入力される第1の記憶装置と、圧縮コードが格納される第2の記憶装置とからなる。
【0014】
または、前記第1の記憶装置は、画素データの一部を一時記憶しながら出力するFIFO方式のバッファメモリである。
【0015】
更に、本発明では、前記圧縮装置が処理するデータ単位は画像1ページ単位で、前記第1のDMA装置が処理するデータ単位は画像1ページを1つ以上に分割したバンド単位であり、前記第2のDMA装置が処理するデータ単位は任意の単位で行うように構成される。
【0016】
或いは、前記圧縮装置が処理するデータ単位は画像1ページ単位で、前記第1のDMA装置が処理するデータ単位は前記画像1ページを複数に分割したバンド単位であり、前記第2のDMA装置が処理するデータ単位は前記記憶手段の連続した空き領域に応じた単位で行うように構成される。
【0017】
更に、本発明では、前記第2のDMA装置が処理するデータの先頭のデータ単位に圧縮情報に関するヘッダが付加され、前記画像1ページを構成する他のデータ単位にはヘッダが付加されない構成とする。
【0018】
【発明の実施の形態】
以下、本発明の詳細を添付図に基づいて説明する。図1は本発明に係る画像処理装置を含むスキャナ装置のブロック図である。
【0019】
図1において、スキャナ装置1は、原稿読取部2と、読み取った画像を画素データとして格納するメモリ3と、各構成要素を制御するCPU4と、外部に接続されたパソコンなどの情報処理装置6とのインタフェースをとるI/F5と、メモリに格納された画素データを圧縮する画像圧縮装置8に直接転送する制御を行うDMAコントローラA7と、画像圧縮装置8から圧縮された圧縮コードを直接メモリに転送する制御を行うDMAコントローラB9と、スキャナ装置1の操作のたの入力指示や表示出力が行われる操作部10と、原稿読取部2とメモリ3とCPU4とDMAコントローラA7と画像圧縮装置8とDMAコントローラB9との間のデータあるいは制御信号を伝送するバス11とから構成される。また、上記のうち、画像処理装置12を構成する要素は図1において破線で示される部分である。
【0020】
前記原稿読取部2は、さらに図外の要素として、原稿を置く原稿台と、その原稿を照明する光源と、原稿から反射する画像情報を集光するレンズと、レンズにより集光された画像情報をデジタル画素データに変換するCCDなどから構成され、原稿を読み取り後、例えば1画素を256階調のグレースケールデータ或いはそれぞれ256階調のRGB(レッド、グリーン、ブルー)の画素データとしてメモリ3に格納する。
【0021】
前記メモリ3は、大量の画素データを格納するため集積度が高い、例えばDRAMやSDRAMなどが使用される。また前記I/F5は、CPU4と外部の情報処理装置6とのインタフェース部であり、RS232CやUSBなどのシリアルインタフェース、パラレルインタフェース、或いはLANなどのネットワークインタフェースを備えている。
【0022】
DMAコントローラA7は、CPU4から転送に必要な情報、例えば転送開始するメモリアドレスや、転送終了のメモリアドレス或いは転送サイズなどの制御情報を受け取り、その制御情報に従ってメモリ3に格納されている画素データを設定されたサイズだけ、CPU4を介さずバス11を使用して画像圧縮装置8に転送する。設定されたサイズの画素データの転送が終了するとその旨をCPU4に通知する。
【0023】
前記画像圧縮装置8は、入力される画素データを順次圧縮し、圧縮コードを生成するとCPU4に通知する。画像圧縮装置で圧縮する形式は、読み込み画像の種類に応じて使い分けることが可能で、例えば2値の場合はJBIG、カラーではJPEGなどを用いることができる。尚、本実施形態ではJPEGを用いた例を説明する。
【0024】
また、DMAコントローラB9は、CPU4から転送に必要な情報、例えば転送開始するメモリアドレスや、転送終了のメモリアドレス或いは転送サイズなどの制御情報を受け取り、その制御情報に従って画像圧縮装置から圧縮コードをメモリ3に設定されたサイズだけ、CPU4を介さずバス11を使用して転送する。設定されたサイズの圧縮コードの転送が終了するとその旨をCPU4に通知する。
【0025】
操作部10は、入力のための操作キーや表示のための表示部などから構成され、スキャナ装置1に対して読み取りの指示や、読み取り後圧縮した圧縮コードを情報処理装置6に転送するなどの指示が行える。
【0026】
以上説明したデータの転送にかかわる動作を図2を参照して、さらに具体的に説明する。図2は、本実施例の画像処理装置のデータ転送に係るタイミングチャートで、(a)はDMAコントローラA7が処理する全てのバンドが同じサイズの場合、(b)はDMAコントローラA7が処理するバンドが異なるサイズの場合である。
【0027】
操作部10からの指示により、原稿読取部2で読み取られた原稿の画像データは、メモリ3に画素データとして一旦格納される。この状態で、CPU4はメモリ3の空き領域を監視し、DMAコントローラA7を起動するとともに、DMAコントローラA7に対して、画像圧縮装置8に転送を開始する画素データを格納するメモリ3の開始アドレスと終了アドレス(または転送サイズ)をバンド1のデータ転送情報として設定する。DMAコントローラA7は画像圧縮装置8にバンド1のデータをメモリ3の上記開始アドレスから転送し、終了アドレス(または転送サイズ)に至ると、CPUへ転送終了の通知を行う。その後、CPU4は、メモリ3に格納されている次の画素データをバンド2のデータとして同様な処理を行い、最後のバンド4のデータの転送が終了するまで同様な処理を行う。
【0028】
上記したメモリ3から画像圧縮装置8への転送の際、1ページ分の画素データはバンド単位に分割されるが、図2(a)では全てのバンドのデータサイズが同じ場合を示し、図2(b)では、各バンドのデータサイズが、例えば、転送状態が発生する都度、画像圧縮装置8の処理状況や画素データのメモリ3での格納状況などに応じて任意に設定される場合を示す。
【0029】
CPU4がDMAコントローラA7を設定すると同時に、画像圧縮装置8も起動しているので、メモリ3から画像圧縮装置8にバンド単位で転送された画素データは、画像圧縮装置8に取り込まれると圧縮が開始され、その後は画素データ入力と並行して圧縮処理が継続されて、バンド4の画素データの圧縮が終了すると1ページ分の画像の圧縮処理が完了する。
【0030】
画像圧縮装置8によりバンド1の画素データの圧縮が開始されるのとほぼ同時に、圧縮された画像の圧縮コードがDMAコントローラB9を介してメモリ3の空き領域に戻されることになる。このため、CPU4は画像圧縮装置8を起動する時にDMAコントローラB9も起動しており、メモリ3の空き領域に応じて、圧縮コードをメモリ3に戻すために、メモリ3の開始アドレスと終了アドレス(または転送サイズ)をDMAコントローラB9に対して設定する。この設定はDMAコントローラA7に対する設定とは独立して行われるため、両方のDMAコントローラが独立して並行に処理を分担する。
【0031】
こうして、図2(a)と(b)に示す圧縮コード1がメモリ3に転送され、その転送が終了すると、DMAコントローラB9はCPU4に転送の終了を通知する。すると、CPU4は再度メモリ3の空き領域に応じて次の圧縮コード、すなわち、図2(a)と(b)の圧縮コード2をメモリ3に戻すためメモリ3の開始アドレスと終了アドレスをDMAコントローラB9に対して設定し、圧縮コード2の転送が開始される。同様にして、圧縮コード3の転送が終了すると、画像1ページ分の圧縮処理が完了し、1ページ分の圧縮コードがメモリ3に記憶される。その後、CPU4は情報処理装置6や操作部10からの指示に応じて、メモリ3に格納された圧縮コードをI/F5を介して情報処理装置6に送信する。
【0032】
図3は、図2を参照して説明した画素データとそれを圧縮した圧縮コードの関係を示し、図3(a)は図2(a)に、図3(b)は図2(b)に対応する。画素データ1ページ分を任意に設定された複数のバンドに分割し、メモリ3の空き領域に応じて任意に分割格納された圧縮コードを示している。このようにして、画像圧縮装置8の圧縮単位と、DMAコントローラA7とDMAコントローラB9の転送単位とをそれぞれ独立して任意の単位に設定して制御しつつ、画像圧縮装置8による圧縮単位を1ページの単位に設定すれば、下記する効果を得ることができる。
【0033】
例えば、JPEG方式による圧縮では、ヘッダと呼ばれる圧縮コードの属性や量子化テーブル、ホフマン符号化テーブルなどの情報が圧縮コードの先頭に付加される。図4は、圧縮コードに含まれるヘッダ情報を示し、(a)は圧縮をバンドごとに行う従来例の場合、(b)は本実施例の場合を示す。この場合、比較のために従来例も本実施例も、同じ圧縮コードA〜Cが生成されてメモリに格納されるものとする。
【0034】
図4(a)では、画像圧縮装置による圧縮が、圧縮コードA〜Cに対応する画素データのバンドごとに行われるため、圧縮コードAには圧縮コードA用のヘッダが、圧縮コードBには圧縮コードB用のヘッダが、圧縮コードCには圧縮コードC用のヘッダがそれぞれ付加される。図4(b)の本実施例では、圧縮コードA〜Cを通した内容に対するヘッダ1つが、圧縮コードAの先頭に付加されるのみである。このため、圧縮コードを格納するメモリの大きさと転送時間が、図4(b)に示す差分Δの分だけ節約できる。通常、1つのヘッダは数百バイト〜1Kバイトの大きさがあり、従来例は1ページの画素データを図4(a)に示した例より、さらに細かいバンドに分割することが一般的であるので、本実施例はより大きなメモリを節約することができる。
【0035】
図5は、1ページ単位に圧縮してメモリに格納する単位がそれぞれ1ページの場合の従来例と本実施例とのメモリの格納状況を比較した図である。1ページ単位に圧縮して格納する方式では、前記したように複数のヘッダが付加されることはないが、1ページの圧縮コードに対応したメモリの連続した空き領域を確保することが困難な場合がある。これに反して、本実施例では、圧縮は1ページを単位として行いながらも、メモリ3の空き領域に格納できるようDMAコントローラB9を制御して、分割格納するため図5に示すように、それぞれの圧縮コード1〜3はメモリ3の空き領域に問題なく格納することが可能になる。
【0036】
なお、本実施形態では原稿読取部2で原稿を読み取った画素データを一旦格納する記憶手段と、画像圧縮装置8で圧縮された圧縮コードを格納する記憶手段をメモリ3で共用する構成としたが、画素データと圧縮コードをそれぞれ情報処理装置6などで処理する場合は、メモリの管理を容易にするために、それぞれ個別のメモリにすることもできる。
【0037】
また、読み取った画素データは取り扱わず、圧縮コードのみ情報処理装置6が必要とする場合は、読み取った画素データをメモリ3に一旦格納せず、FIFO方式で構成されるバッファメモリを介して画像圧縮装置8に転送することもできる。この場合、メモリ3はスキャナ装置1の制御と圧縮コードを格納するために使用される。
【0038】
本実施形態では、スキャナ装置1で読み取った画素データの圧縮処理を例にあげて説明したが、装置の形態や用途に限定されるものではなく、画素データを圧縮する処理に係わる他の装置や機能や回路に適用できることはいうまでもない。
【0039】
【発明の効果】
本発明では、圧縮装置と、第1のDMA装置と、第2のDMA装置が処理するデータ単位が独立して制御される構成であるため、圧縮コードを効率よくメモリに格納することができるという効果を奏する。
【0040】
更に画素データが入力されるメモリと圧縮コードが格納されるメモリとを異なるメモリとすることでメモリ管理の効率化を図ることが可能になる。
【0041】
または、画素データの一部を一時記憶しながら出力するFIFO方式のバッファメモリを使用することにより、必要なメモリの容量を低減することが可能になる。
【0042】
前記圧縮装置が処理するデータ単位は画像1ページ単位で、第1のDMA装置が処理するデータ単位は前記画像1ページを複数に分割したバンド単位であり、第2のDMA装置が処理するデータ単位はメモリの連続した空き領域に応じた単位で行うように構成することも可能で、メモリの空き領域を効率よく利用することができる。
【0043】
更に、本発明では、第2のDMA装置が処理するデータの先頭のデータ単位に圧縮情報に関するヘッダが付加され、画像1ページを構成する他のデータ単位にはヘッダが付加されないため、無駄なメモリの消費をおさえ、1ページ分の圧縮コードにつなぎ合わせるために余分なヘッダを取り除く処理を省くことができる。
【図面の簡単な説明】
【図1】本発明に係る画像処理装置を含むスキャナ装置のブロック図である。
【図2】本実施例の画像処理装置のデータ転送に係るタイミングチャートで、(a)はDMAコントローラA7が処理する全てのバンドが同じサイズの場合、(b)はDMAコントローラA7が処理するバンドが異なるサイズの場合である。
【図3】図2を参照して説明した画素データとそれを圧縮した圧縮コードの関係を示し、(a)は図2(a)に、(b)は図2(b)に対応する。
【図4】圧縮コードに含まれるヘッダ情報を示し、(a)は圧縮をバンドごとに行う従来例の場合、(b)は本実施例の場合を示す。
【図5】1ページ単位に圧縮してメモリに格納する従来例と本実施例とのメモリの格納状況を比較した図である。
【符号の説明】
1 スキャナ装置
2 原稿読取部
3 メモリ
4 CPU
5 I/F
6 情報処理装置
7 DMAコントローラA
8 画像圧縮装置
9 DMAコントローラB
10 操作部
11 バス
12 画像処理装置
【発明の属する技術分野】
本発明は、画像データを圧縮して取り扱う画像形成装置に用いられる画像処理装置に関し、特に具体的には圧縮装置と画像データの転送にDMA装置を用いる画像処理装置に関する。
【0002】
【従来の技術】
画像形成装置では、取り扱う画像の高解像度化と高階調化、更には4色を基本色としたフルカラー化にともない、画像の画素データは膨大になっており、大量の画素データの記憶領域と伝送の効率化が必要になっている。このため、読込んだ画素データを画像圧縮装置を用いて一旦圧縮後、一時的に圧縮コードの形式で記憶装置に格納し、また、記憶装置と圧縮装置との間のデータ転送には、CPUによる転送制御を介さないでDMA装置を用いて直接データを転送することが行われている。
【0003】
このようなDMA装置を用いて転送する場合、通常、画像はページ単位で扱われるため、ページ単位で転送が行われる。例えば、メモリに格納された1ページの画素データを、DMA装置を介して画像圧縮装置に転送すると、画像圧縮装置は受け取った画素データを逐次圧縮して、ページ単位の圧縮コードとして再度メモリに格納する。
【0004】
このような処理方法では、圧縮前の画素データは膨大な量のデータであり、このデータを連続してメモリから画像圧縮装置に転送するため、たとえDMA装置を使用したとしても、画像処理装置のデータバスを長時間占有することになる。また、この画素データを圧縮した圧縮コードを画像圧縮装置からメモリに格納するときにも同様にデータバスを長時間占有することになる。
【0005】
このため、大きな画素データを処理するときには、データを複数のバンド単位に分割したバンドデータとして取り扱い、メモリからバンド単位で画像圧縮装置に転送し、画像圧縮装置は、そのデータを受け取り逐次圧縮コードに圧縮して、所定のバンド単位の圧縮コードをメモリに格納する。このようにすると、ページ単位より小さいデータ単位で転送処理を行えるため、転送時にデータバスを長時間連続して占有することがなくなり、ほかのデータや制御データの転送に滞りがなくなる。
【0006】
特許文献1では、圧縮または非圧縮の画素データを、DMA装置を介してバンド単位で転送し、エラーを回避する方法について説明している。
【0007】
【特許文献1】
特開2001−26151号公報
【0008】
【発明が解決しようとする課題】
しかし、ページ単位で画素データを転送する方法では、前述したようにデータバスなどの転送経路を長時間占有する問題が発生し、更には、1ページ分の画素データは圧縮後であっても、格納するためには多量の連続したメモリ領域を必要とし、メモリの利用効率が低下する問題が発生する。
【0009】
また、上記特許文献1に説明されているように、1ページ分の画素データを複数のバンド単位として転送を行う場合、画像圧縮装置からの圧縮コードをバンド単位でメモリに格納する際、利用している画像圧縮形式のヘッダ情報が各バンドデータに書き込まれ、通常1つで済むヘッダ情報が各バンドに含まれてメモリに格納されるため、メモリ領域を無駄に使用してしまう問題がある。
【0010】
さらに、上記のようにページ単位或いはバンド単位に画素データを取り扱う画像処理装置では、記憶装置から画像圧縮装置へ画素データを転送するDMA装置と、画像圧縮装置と、画像圧縮装置からメモリに圧縮コードを転送するDMA装置の制御単位が同じであるため、上記の無駄なヘッダ情報の問題とともに、バンドのデータ量に応じた連続したメモリの空き領域が必要になるという問題もある。
【0011】
本発明は、斯かる実状に鑑みなされたものであり、画素データをメモリから画像圧縮装置に転送するDMA装置と、画像圧縮装置と、圧縮コードを画像圧縮装置からメモリに転送するDMA装置のそれぞれの処理単位が固定されず、不要な圧縮ヘッダ情報が含まれず、メモリを効率的に利用できる画像処理装置を提供することを目的とするものである。
【0012】
【課題を解決するための手段】
上記目的を達成するために、本発明では、画素データを入力する入力手段と、入力された画素データを記憶する記憶手段と、画素データを圧縮して圧縮コードを出力する圧縮装置と、記憶手段から圧縮装置へ画素データのDMA転送を行う第1のDMA装置と、圧縮コードを記憶手段に格納するため圧縮装置から記憶手段へDMA転送を行う第2のDMA装置とからなる画像処理装置において、圧縮装置と、第1のDMA装置と、第2のDMA装置はそれぞれ処理するデータ単位が独立して制御される構成である。
【0013】
前記記憶手段は、画素データが入力される第1の記憶装置と、圧縮コードが格納される第2の記憶装置とからなる。
【0014】
または、前記第1の記憶装置は、画素データの一部を一時記憶しながら出力するFIFO方式のバッファメモリである。
【0015】
更に、本発明では、前記圧縮装置が処理するデータ単位は画像1ページ単位で、前記第1のDMA装置が処理するデータ単位は画像1ページを1つ以上に分割したバンド単位であり、前記第2のDMA装置が処理するデータ単位は任意の単位で行うように構成される。
【0016】
或いは、前記圧縮装置が処理するデータ単位は画像1ページ単位で、前記第1のDMA装置が処理するデータ単位は前記画像1ページを複数に分割したバンド単位であり、前記第2のDMA装置が処理するデータ単位は前記記憶手段の連続した空き領域に応じた単位で行うように構成される。
【0017】
更に、本発明では、前記第2のDMA装置が処理するデータの先頭のデータ単位に圧縮情報に関するヘッダが付加され、前記画像1ページを構成する他のデータ単位にはヘッダが付加されない構成とする。
【0018】
【発明の実施の形態】
以下、本発明の詳細を添付図に基づいて説明する。図1は本発明に係る画像処理装置を含むスキャナ装置のブロック図である。
【0019】
図1において、スキャナ装置1は、原稿読取部2と、読み取った画像を画素データとして格納するメモリ3と、各構成要素を制御するCPU4と、外部に接続されたパソコンなどの情報処理装置6とのインタフェースをとるI/F5と、メモリに格納された画素データを圧縮する画像圧縮装置8に直接転送する制御を行うDMAコントローラA7と、画像圧縮装置8から圧縮された圧縮コードを直接メモリに転送する制御を行うDMAコントローラB9と、スキャナ装置1の操作のたの入力指示や表示出力が行われる操作部10と、原稿読取部2とメモリ3とCPU4とDMAコントローラA7と画像圧縮装置8とDMAコントローラB9との間のデータあるいは制御信号を伝送するバス11とから構成される。また、上記のうち、画像処理装置12を構成する要素は図1において破線で示される部分である。
【0020】
前記原稿読取部2は、さらに図外の要素として、原稿を置く原稿台と、その原稿を照明する光源と、原稿から反射する画像情報を集光するレンズと、レンズにより集光された画像情報をデジタル画素データに変換するCCDなどから構成され、原稿を読み取り後、例えば1画素を256階調のグレースケールデータ或いはそれぞれ256階調のRGB(レッド、グリーン、ブルー)の画素データとしてメモリ3に格納する。
【0021】
前記メモリ3は、大量の画素データを格納するため集積度が高い、例えばDRAMやSDRAMなどが使用される。また前記I/F5は、CPU4と外部の情報処理装置6とのインタフェース部であり、RS232CやUSBなどのシリアルインタフェース、パラレルインタフェース、或いはLANなどのネットワークインタフェースを備えている。
【0022】
DMAコントローラA7は、CPU4から転送に必要な情報、例えば転送開始するメモリアドレスや、転送終了のメモリアドレス或いは転送サイズなどの制御情報を受け取り、その制御情報に従ってメモリ3に格納されている画素データを設定されたサイズだけ、CPU4を介さずバス11を使用して画像圧縮装置8に転送する。設定されたサイズの画素データの転送が終了するとその旨をCPU4に通知する。
【0023】
前記画像圧縮装置8は、入力される画素データを順次圧縮し、圧縮コードを生成するとCPU4に通知する。画像圧縮装置で圧縮する形式は、読み込み画像の種類に応じて使い分けることが可能で、例えば2値の場合はJBIG、カラーではJPEGなどを用いることができる。尚、本実施形態ではJPEGを用いた例を説明する。
【0024】
また、DMAコントローラB9は、CPU4から転送に必要な情報、例えば転送開始するメモリアドレスや、転送終了のメモリアドレス或いは転送サイズなどの制御情報を受け取り、その制御情報に従って画像圧縮装置から圧縮コードをメモリ3に設定されたサイズだけ、CPU4を介さずバス11を使用して転送する。設定されたサイズの圧縮コードの転送が終了するとその旨をCPU4に通知する。
【0025】
操作部10は、入力のための操作キーや表示のための表示部などから構成され、スキャナ装置1に対して読み取りの指示や、読み取り後圧縮した圧縮コードを情報処理装置6に転送するなどの指示が行える。
【0026】
以上説明したデータの転送にかかわる動作を図2を参照して、さらに具体的に説明する。図2は、本実施例の画像処理装置のデータ転送に係るタイミングチャートで、(a)はDMAコントローラA7が処理する全てのバンドが同じサイズの場合、(b)はDMAコントローラA7が処理するバンドが異なるサイズの場合である。
【0027】
操作部10からの指示により、原稿読取部2で読み取られた原稿の画像データは、メモリ3に画素データとして一旦格納される。この状態で、CPU4はメモリ3の空き領域を監視し、DMAコントローラA7を起動するとともに、DMAコントローラA7に対して、画像圧縮装置8に転送を開始する画素データを格納するメモリ3の開始アドレスと終了アドレス(または転送サイズ)をバンド1のデータ転送情報として設定する。DMAコントローラA7は画像圧縮装置8にバンド1のデータをメモリ3の上記開始アドレスから転送し、終了アドレス(または転送サイズ)に至ると、CPUへ転送終了の通知を行う。その後、CPU4は、メモリ3に格納されている次の画素データをバンド2のデータとして同様な処理を行い、最後のバンド4のデータの転送が終了するまで同様な処理を行う。
【0028】
上記したメモリ3から画像圧縮装置8への転送の際、1ページ分の画素データはバンド単位に分割されるが、図2(a)では全てのバンドのデータサイズが同じ場合を示し、図2(b)では、各バンドのデータサイズが、例えば、転送状態が発生する都度、画像圧縮装置8の処理状況や画素データのメモリ3での格納状況などに応じて任意に設定される場合を示す。
【0029】
CPU4がDMAコントローラA7を設定すると同時に、画像圧縮装置8も起動しているので、メモリ3から画像圧縮装置8にバンド単位で転送された画素データは、画像圧縮装置8に取り込まれると圧縮が開始され、その後は画素データ入力と並行して圧縮処理が継続されて、バンド4の画素データの圧縮が終了すると1ページ分の画像の圧縮処理が完了する。
【0030】
画像圧縮装置8によりバンド1の画素データの圧縮が開始されるのとほぼ同時に、圧縮された画像の圧縮コードがDMAコントローラB9を介してメモリ3の空き領域に戻されることになる。このため、CPU4は画像圧縮装置8を起動する時にDMAコントローラB9も起動しており、メモリ3の空き領域に応じて、圧縮コードをメモリ3に戻すために、メモリ3の開始アドレスと終了アドレス(または転送サイズ)をDMAコントローラB9に対して設定する。この設定はDMAコントローラA7に対する設定とは独立して行われるため、両方のDMAコントローラが独立して並行に処理を分担する。
【0031】
こうして、図2(a)と(b)に示す圧縮コード1がメモリ3に転送され、その転送が終了すると、DMAコントローラB9はCPU4に転送の終了を通知する。すると、CPU4は再度メモリ3の空き領域に応じて次の圧縮コード、すなわち、図2(a)と(b)の圧縮コード2をメモリ3に戻すためメモリ3の開始アドレスと終了アドレスをDMAコントローラB9に対して設定し、圧縮コード2の転送が開始される。同様にして、圧縮コード3の転送が終了すると、画像1ページ分の圧縮処理が完了し、1ページ分の圧縮コードがメモリ3に記憶される。その後、CPU4は情報処理装置6や操作部10からの指示に応じて、メモリ3に格納された圧縮コードをI/F5を介して情報処理装置6に送信する。
【0032】
図3は、図2を参照して説明した画素データとそれを圧縮した圧縮コードの関係を示し、図3(a)は図2(a)に、図3(b)は図2(b)に対応する。画素データ1ページ分を任意に設定された複数のバンドに分割し、メモリ3の空き領域に応じて任意に分割格納された圧縮コードを示している。このようにして、画像圧縮装置8の圧縮単位と、DMAコントローラA7とDMAコントローラB9の転送単位とをそれぞれ独立して任意の単位に設定して制御しつつ、画像圧縮装置8による圧縮単位を1ページの単位に設定すれば、下記する効果を得ることができる。
【0033】
例えば、JPEG方式による圧縮では、ヘッダと呼ばれる圧縮コードの属性や量子化テーブル、ホフマン符号化テーブルなどの情報が圧縮コードの先頭に付加される。図4は、圧縮コードに含まれるヘッダ情報を示し、(a)は圧縮をバンドごとに行う従来例の場合、(b)は本実施例の場合を示す。この場合、比較のために従来例も本実施例も、同じ圧縮コードA〜Cが生成されてメモリに格納されるものとする。
【0034】
図4(a)では、画像圧縮装置による圧縮が、圧縮コードA〜Cに対応する画素データのバンドごとに行われるため、圧縮コードAには圧縮コードA用のヘッダが、圧縮コードBには圧縮コードB用のヘッダが、圧縮コードCには圧縮コードC用のヘッダがそれぞれ付加される。図4(b)の本実施例では、圧縮コードA〜Cを通した内容に対するヘッダ1つが、圧縮コードAの先頭に付加されるのみである。このため、圧縮コードを格納するメモリの大きさと転送時間が、図4(b)に示す差分Δの分だけ節約できる。通常、1つのヘッダは数百バイト〜1Kバイトの大きさがあり、従来例は1ページの画素データを図4(a)に示した例より、さらに細かいバンドに分割することが一般的であるので、本実施例はより大きなメモリを節約することができる。
【0035】
図5は、1ページ単位に圧縮してメモリに格納する単位がそれぞれ1ページの場合の従来例と本実施例とのメモリの格納状況を比較した図である。1ページ単位に圧縮して格納する方式では、前記したように複数のヘッダが付加されることはないが、1ページの圧縮コードに対応したメモリの連続した空き領域を確保することが困難な場合がある。これに反して、本実施例では、圧縮は1ページを単位として行いながらも、メモリ3の空き領域に格納できるようDMAコントローラB9を制御して、分割格納するため図5に示すように、それぞれの圧縮コード1〜3はメモリ3の空き領域に問題なく格納することが可能になる。
【0036】
なお、本実施形態では原稿読取部2で原稿を読み取った画素データを一旦格納する記憶手段と、画像圧縮装置8で圧縮された圧縮コードを格納する記憶手段をメモリ3で共用する構成としたが、画素データと圧縮コードをそれぞれ情報処理装置6などで処理する場合は、メモリの管理を容易にするために、それぞれ個別のメモリにすることもできる。
【0037】
また、読み取った画素データは取り扱わず、圧縮コードのみ情報処理装置6が必要とする場合は、読み取った画素データをメモリ3に一旦格納せず、FIFO方式で構成されるバッファメモリを介して画像圧縮装置8に転送することもできる。この場合、メモリ3はスキャナ装置1の制御と圧縮コードを格納するために使用される。
【0038】
本実施形態では、スキャナ装置1で読み取った画素データの圧縮処理を例にあげて説明したが、装置の形態や用途に限定されるものではなく、画素データを圧縮する処理に係わる他の装置や機能や回路に適用できることはいうまでもない。
【0039】
【発明の効果】
本発明では、圧縮装置と、第1のDMA装置と、第2のDMA装置が処理するデータ単位が独立して制御される構成であるため、圧縮コードを効率よくメモリに格納することができるという効果を奏する。
【0040】
更に画素データが入力されるメモリと圧縮コードが格納されるメモリとを異なるメモリとすることでメモリ管理の効率化を図ることが可能になる。
【0041】
または、画素データの一部を一時記憶しながら出力するFIFO方式のバッファメモリを使用することにより、必要なメモリの容量を低減することが可能になる。
【0042】
前記圧縮装置が処理するデータ単位は画像1ページ単位で、第1のDMA装置が処理するデータ単位は前記画像1ページを複数に分割したバンド単位であり、第2のDMA装置が処理するデータ単位はメモリの連続した空き領域に応じた単位で行うように構成することも可能で、メモリの空き領域を効率よく利用することができる。
【0043】
更に、本発明では、第2のDMA装置が処理するデータの先頭のデータ単位に圧縮情報に関するヘッダが付加され、画像1ページを構成する他のデータ単位にはヘッダが付加されないため、無駄なメモリの消費をおさえ、1ページ分の圧縮コードにつなぎ合わせるために余分なヘッダを取り除く処理を省くことができる。
【図面の簡単な説明】
【図1】本発明に係る画像処理装置を含むスキャナ装置のブロック図である。
【図2】本実施例の画像処理装置のデータ転送に係るタイミングチャートで、(a)はDMAコントローラA7が処理する全てのバンドが同じサイズの場合、(b)はDMAコントローラA7が処理するバンドが異なるサイズの場合である。
【図3】図2を参照して説明した画素データとそれを圧縮した圧縮コードの関係を示し、(a)は図2(a)に、(b)は図2(b)に対応する。
【図4】圧縮コードに含まれるヘッダ情報を示し、(a)は圧縮をバンドごとに行う従来例の場合、(b)は本実施例の場合を示す。
【図5】1ページ単位に圧縮してメモリに格納する従来例と本実施例とのメモリの格納状況を比較した図である。
【符号の説明】
1 スキャナ装置
2 原稿読取部
3 メモリ
4 CPU
5 I/F
6 情報処理装置
7 DMAコントローラA
8 画像圧縮装置
9 DMAコントローラB
10 操作部
11 バス
12 画像処理装置
Claims (6)
- 画素データを入力する入力手段と、入力された画素データを記憶する記憶手段と、前記画素データを圧縮して圧縮コードを出力する圧縮装置と、前記記憶手段から前記圧縮装置へ前記画素データのDMA転送を行う第1のDMA装置と、前記圧縮コードを前記記憶手段に格納するため前記圧縮装置から前記記憶手段へDMA転送を行う第2のDMA装置とからなる画像処理装置において、
前記圧縮装置と、前記第1のDMA装置と、前記第2のDMA装置はそれぞれ処理するデータ単位が独立して制御されることを特徴とする画像処理装置。 - 前記記憶手段は、前記画素データが入力される第1の記憶装置と、前記圧縮コードが格納される第2の記憶装置とからなることを特徴とする請求項1記載の画像処理装置。
- 前記第1の記憶装置は、画素データの一部を一時記憶しながら出力するFIFO方式のバッファメモリであることを特徴とする請求項2記載の画像処理装置。
- 前記圧縮装置が処理するデータ単位は画像1ページ単位で、前記第1のDMA装置が処理するデータ単位は前記画像1ページを1つ以上に分割したバンド単位であり、前記第2のDMA装置が処理するデータ単位は任意の単位で行うことを特徴とする請求項1乃至請求項3のいずれかに記載の画像処理装置。
- 前記圧縮装置が処理するデータ単位は画像1ページ単位で、前記第1のDMA装置が処理するデータ単位は前記画像1ページを複数に分割したバンド単位であり、前記第2のDMA装置が処理するデータ単位は前記記憶手段の連続した空き領域に応じた単位で行うことを特徴とする請求項1記載の画像処理装置。
- 前記第2のDMA装置が処理するデータの先頭のデータ単位に圧縮情報に関するヘッダが付加され、前記画像1ページを構成する他のデータ単位にはヘッダが付加されないことを特徴とする請求項4または請求項5に記載の画像処理装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002375788A JP2004208094A (ja) | 2002-12-26 | 2002-12-26 | 画像処理装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002375788A JP2004208094A (ja) | 2002-12-26 | 2002-12-26 | 画像処理装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004208094A true JP2004208094A (ja) | 2004-07-22 |
Family
ID=32813411
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002375788A Pending JP2004208094A (ja) | 2002-12-26 | 2002-12-26 | 画像処理装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2004208094A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8122164B2 (en) | 2008-09-26 | 2012-02-21 | Canon Kabushiki Kaisha | Information processing apparatus having first DMA controller and second DMA controller wherein selection circuit determines which DMA will perform data transfer based on higher data transfer performance |
-
2002
- 2002-12-26 JP JP2002375788A patent/JP2004208094A/ja active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8122164B2 (en) | 2008-09-26 | 2012-02-21 | Canon Kabushiki Kaisha | Information processing apparatus having first DMA controller and second DMA controller wherein selection circuit determines which DMA will perform data transfer based on higher data transfer performance |
US8392630B2 (en) | 2008-09-26 | 2013-03-05 | Canon Kabushiki Kaisha | Information processing apparatus having first DMA controller and second DMA controller wherein selection circuit determines which DMA will perform data transfer based on higher data transfer performance |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3732702B2 (ja) | 画像処理装置 | |
JP3789711B2 (ja) | 画像処理装置 | |
US7468803B2 (en) | Image processing apparatus and image processing method | |
JP3976353B2 (ja) | ディジタル・カメラ | |
US7983495B2 (en) | Image processing device and method | |
US20070065022A1 (en) | Image signal processing apparatus and method | |
JP2001113759A (ja) | 画像データ出力装置 | |
US7742199B2 (en) | System and method for compressing and rotating image data | |
JP4302661B2 (ja) | 画像処理システム | |
JP2004208094A (ja) | 画像処理装置 | |
JP2006203270A (ja) | 画像圧縮方法および画像圧縮装置 | |
US20050134877A1 (en) | Color image processing device and color image processing method | |
JP2002314763A (ja) | カラー複写機制御装置 | |
JP2005045458A (ja) | 画像圧縮方法、画像圧縮装置 | |
JP2008068547A (ja) | 画像形成装置 | |
JP2005159705A (ja) | 画像形成システム | |
JP4136573B2 (ja) | 画像処理方法、画像処理装置、プログラム及び記録媒体 | |
JP5205317B2 (ja) | 画像処理装置 | |
JP3997851B2 (ja) | 画像符号化装置および画像符号化プログラム | |
JP2004357154A (ja) | データ処理装置 | |
JP2006141001A (ja) | 電力消耗が減少した画像処理装置及び方法 | |
JP2006217007A (ja) | 圧縮伸長モジュールのインターフェース装置 | |
JPH09300743A (ja) | 画像出力装置及び画像出力方法 | |
JP2004253906A (ja) | 伸長装置 | |
JP2007251983A (ja) | 画像データ出力装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Effective date: 20070327 Free format text: JAPANESE INTERMEDIATE CODE: A131 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20070911 |