(57)【特許請求の範囲】
【請求項１】
画像データを格納する１個の画像メモリと、
原稿の表面及び裏面の一方の画像である第１の画像データを読み取る第１の画像読取部を備え、前記第１の画像データを前記画像メモリに所定の順で書き込む第１の画像入力部と、
前記第１の画像読取部と副走査方向において所定の距離だけ異なる位置に設けられ、前記原稿の表面及び裏面の他方の画像である第２の画像データを前記第１の画像データと並行して読み取る第２の画像読取部を備え、前記第２の画像データを前記画像メモリに所定の順で書き込む第２の画像入力部と、
前記画像メモリに書き込まれた画像データを所定の大きさのブロック単位で所定の順で読み出し、かつ、当該読み出された画像データを前記ブロックを主走査方向に所定の個数だけ並べたブロック列単位で前記第１又は第２の画像データとする画像読出部と、
前記画像読出部により読み出された前記第１及び第２の画像データの圧縮処理を行う画像圧縮処理部とを備え、
前記第１の画像入力部が、前記所定の距離に相当する数の前記ブロック列の分の前記第１の画像データであって、前記第２の画像データに先行して読み取られた前記第１の画像データを前記画像メモリに順で書き込み、この後、前記第１の画像入力部が、前記第１及び第２の画像データを前記ブロック列単位で交互に前記画像メモリに順で書き込み、この後、前記第２の画像入力部が、前記所定の距離に相当する数の前記ブロック列の分の前記第２の画像データを連続して前記画像メモリに順で書き込むことにより、前記第１及び第２の画像データを前記ブロック列単位で前記所定の距離に応じた所定の順で前記画像メモリに書き込み、
前記画像読出部が、前記画像メモリに書き込まれた前記第１及び第２の画像データを前記ブロック単位で読み出し、かつ、当該読み出された画像データを前記ブロック列単位で前記所定の距離に応じた所定の順で従って前記第１又は第２の画像データとし、
前記画像圧縮処理部が、前記画像読出部からの第２の画像データを前記ブロック単位で画像圧縮してこれらの圧縮データを生成し、前記ブロック列単位で当該最後のブロックの後に前記圧縮データを分離する識別子としてのリスタートマーカを挿入する
ことを特徴とする画像処理装置。
【請求項２】
前記画像読出部が、前記第１及び第２の画像データの各々についてその全データが前記画像メモリに格納される以前に、前記第１及び第２の画像データの各々の読み出しを開始する
ことを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記ブロック列の所定の個数は可変であり、前記第１及び第２の画像データの切り換えの順の指定も可変である
ことを特徴とする請求項１に記載の画像処理装置。
【請求項４】
前記画像圧縮はＪＰＥＧ圧縮であり、前記識別子はそのリスタートマーカである
ことを特徴とする請求項１に記載の画像処理装置。
【請求項５】
画像データを圧縮した圧縮データと、前記圧縮データを分離する識別子としてのリスタートマーカとを格納する画像ファイルを受信する画像処理制御部と、
前記圧縮データを伸張する画像伸張部とを備え、
前記画像データは、原稿の表面及び裏面の一方の画像である第１の画像データを読み取る第１の画像読取部、及び、前記第１の画像読取部と副走査方向において所定の距離だけ異なる位置に設けられ、前記原稿の表面及び裏面の他方の画像である第２の画像データを読み取る第２の画像読取部によって読み取られて、画像メモリに前記所定の距離に応じた所定の順で書き込まれ、当該画像メモリから所定の大きさのブロック単位で所定の順で読み出され、当該読み出された画像データを前記ブロックを主走査方向に所定の個数だけ並べたブロック列単位で前記第１又は第２の画像データとされたものであって、前記所定の距離に応じた所定の順での書き込みにおいて、前記所定の距離に相当する数の前記ブロック列の分の前記第１の画像データであって、前記第２の画像データに先行して読み取られた前記第１の画像データが前記画像メモリに順で書き込まれ、この後、前記第１及び第２の画像データが前記ブロック列単位で交互に前記画像メモリに順で書き込まれ、この後、前記所定の距離に相当する数の前記ブロック列の分の前記第２の画像データが連続して前記画像メモリに順で書き込まれたものであり、
前記圧縮データは、前記画像メモリに書き込まれた前記画像データを前記ブロック単位で読み出し、かつ、当該読み出された画像データを前記ブロック列単位で前記所定の距離に応じた所定の順で従って前記第１又は第２の画像データとし、前記画像読出部からの第２の画像データを前記ブロック単位で画像圧縮してこれらの圧縮データを生成したものであり、
前記識別子は、前記ブロック列単位で当該最後のブロックの後に挿入されたものであり、
前記画像処理制御部が、前記識別子に従って前記圧縮データを分離して、前記所定の距離に応じた所定の順で従って前記第１及び第２の画像データとした上で前記画像伸張部に送り、
前記画像伸張部が、分離された前記第１及び第２の画像データを、前記ブロック単位で伸張する
ことを特徴とする画像処理装置。
【請求項６】
第１の画像読取部により原稿の表面及び裏面の一方の画像である第１の画像データを読み取り、画像メモリに所定の順で書き込み、
前記第１の画像読取部と副走査方向において所定の距離だけ異なる位置に設けられた第２の画像読取部により前記原稿の表面及び裏面の他方の画像である第２の画像データを前記第１の画像データと並行して読み取り、前記画像メモリに所定の順で書き込み、
前記画像メモリに書き込まれた画像データを所定の大きさのブロック単位で所定の順で読み出し、かつ、当該読み出された画像データを前記ブロックを主走査方向に所定の個数だけ並べたブロック列単位で前記第１又は第２の画像データとし、
前記読み出された前記第１及び第２の画像データの圧縮処理を行う画像処理方法であって、
前記所定の距離に相当する数の前記ブロック列の分の前記第１の画像データであって、前記第２の画像データに先行して読み取られた前記第１の画像データを前記画像メモリに順で書き込み、この後、前記第１及び第２の画像データを前記ブロック列単位で交互に前記画像メモリに順で書き込み、この後、前記所定の距離に相当する数の前記ブロック列の分の前記第２の画像データを連続して前記画像メモリに順で書き込むことにより、前記第１及び第２の画像データを前記ブロック列単位で前記所定の距離に応じた所定の順で前記画像メモリに書き込み、
前記画像メモリに書き込まれた画像データを前記ブロック単位で読み出し、かつ、当該読み出された画像データを前記ブロック列単位で前記所定の距離に応じた所定の順で従って前記第１又は第２の画像データとし、
前記読み出された前記第１及び第２の画像データを前記ブロック単位で画像圧縮してこれらの圧縮データを生成し、前記ブロック列単位で当該最後のブロックの後に前記圧縮データを分離する識別子としてのリスタートマーカを挿入し、
前記圧縮データ及び識別子を格納する画像ファイルを受信し、
前記識別子に従って前記圧縮データを分離して、前記所定の距離に応じた所定の順で従って前記第１又は第２の画像データとし、
前記分離された前記第１又は第２の画像データを、前記ブロック単位で伸張する
ことを特徴とする画像処理方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、画像処理装置及び画像処理方法に関し、特に、並行して読み取られた複数系統の画像データを切り換えてＪＰＥＧ圧縮処理を行う画像処理装置及び画像処理方法に関する。
【０００２】
【従来の技術】
例えば、インターネット上でのフルカラーの画像データの転送は、通常、ＪＰＥＧ（Joint Photographic Experts Group）形式の画像ファイルを転送することにより行われる。そこで、原稿から読み取った画像データをＪＰＥＧ形式の画像データ（画像ファイル）に変換するために、当該画像データのＪＰＥＧ形式の画像データへのデータ圧縮処理（以下、ＪＰＥＧ圧縮処理と言う）を行う必要がある。
【０００３】
ＪＰＥＧ圧縮処理は、概略、周知のように、元の画像データ（原画像データ）を一旦画像メモリに格納した後、原画像データを読み出しつつ各々が８ピクセル×８ピクセルの複数のブロックに分割し、各ブロック毎にＤＣＴ（離散コサイン変換）及び量子化を行い、スキャン変換及びハフマン符号化を行うことにより行う。
【０００４】
【発明が解決しようとする課題】
スキャナ等の画像読取装置において、１枚の原稿の「表」及び「裏」の両面について、並行して（ほぼ同時に）読み取る場合がある。この場合、並行して読み取られて画像メモリ（又は、画像処理部）に入力される画像データは、表及び裏の２系統存在することになる。このように、画像データの入力が２系統（以上）存在する場合、そのＪＰＥＧ圧縮処理において以下のような問題を生じる。
【０００５】
入力される２系統の画像データをＪＰＥＧ圧縮処理するためには、通常、当該処理を行う演算回路が、当該入力される系統の数に応じて複数個必要となる。この場合、画像圧縮処理のための回路規模がＪＰＥＧ圧縮処理だけのために非常に大きくなり、コストの増大を招く。この問題は、３系統以上になると、更に顕著になる。
【０００６】
また、入力される画像データが２系統であっても、これを１個の演算回路でＪＰＥＧ圧縮処理することがある。この場合、第１の系統の画像データについてＪＰＥＧ圧縮処理を行っているとすると、ＪＰＥＧ圧縮処理を行っていない第２の系統の画像データは、全て画像メモリ上に格納しておく必要がある。このため、極めて大容量の画像メモリが必要となり、コストの増大を招く。また、ＪＰＥＧ圧縮処理の際には、第１の系統の画像データは入力された画像データを画像メモリを経由して演算回路で処理し、第２の系統の画像データは画像メモリから読み出して演算回路で処理することになる。このため、ＪＰＥＧ圧縮処理のための処理時間が極めて大きくなり、処理性能の低下を招く。この問題も、３系統以上になると、更に顕著になる。
【０００７】
本発明は、並行して読み取られた複数系統の画像データについて、少ない画像メモリで効率よく画像データの圧縮処理を行う画像処理装置を提供することを目的とする。
【０００８】
また、本発明は、並行して読み取られた複数系統の画像データを圧縮処理した画像データを、分離した後に伸張する画像処理装置を提供することを目的とする。
【０００９】
更に、本発明は、並行して読み取られた複数系統の画像データについて、少ない画像メモリで効率よく画像データの圧縮処理を行い、画像データを分離した後に伸張する画像処理方法を提供することを目的とする。
【００１０】
【課題を解決するための手段】
本発明の画像処理装置は、画像データを格納する１個の画像メモリと、原稿の表面及び裏面の一方の画像である第１の画像データを読み取る第１の画像読取部を備え、前記第１の画像データを前記画像メモリに所定の順で書き込む第１の画像入力部と、前記第１の画像読取部と副走査方向において所定の距離だけ異なる位置に設けられ、前記原稿の表面及び裏面の他方の画像である第２の画像データを前記第１の画像データと並行して読み取る第２の画像読取部を備え、前記第２の画像データを前記画像メモリに所定の順で書き込む第２の画像入力部と、前記画像メモリに書き込まれた画像データを所定の大きさのブロック単位で所定の順で読み出し、かつ、当該読み出された画像データを前記ブロックを主走査方向に所定の個数だけ並べたブロック列単位で前記第１又は第２の画像データとする画像読出部と、前記画像読出部により読み出された前記第１及び第２の画像データの圧縮処理を行う画像圧縮処理部とを備える。前記第１の画像入力部が、前記所定の距離に相当する数の前記ブロック列の分の前記第１の画像データであって、前記第２の画像データに先行して読み取られた前記第１の画像データを前記画像メモリに順で書き込み、この後、前記第１の画像入力部が、前記第１及び第２の画像データを前記ブロック列単位で交互に前記画像メモリに順で書き込み、この後、前記第２の画像入力部が、前記所定の距離に相当する数の前記ブロック列の分の前記第２の画像データを連続して前記画像メモリに順で書き込むことにより、前記第１及び第２の画像データを前記ブロック列単位で前記所定の距離に応じた所定の順で前記画像メモリに書き込む。前記画像読出部が、前記画像メモリに書き込まれた前記第１及び第２の画像データを前記ブロック単位で読み出し、かつ、当該読み出された画像データを前記ブロック列単位で前記所定の距離に応じた所定の順で従って前記第１又は第２の画像データとする。前記画像圧縮処理部が、前記画像読出部からの第２の画像データを前記ブロック単位で画像圧縮してこれらの圧縮データを生成し、前記ブロック列単位で当該最後のブロックの後に前記圧縮データを分離する識別子としてのリスタートマーカを挿入する。
【００１１】
本発明の画像処理装置によれば、第１及び第２の画像データを所定の距離だけ離れた第１及び第２の画像読取部により並行して読み取って画像メモリに書き込む。この時、前記所定の距離に基づいて定まる順で（所定の順で）、第１の画像データのブロック列が書き込まれ、この後、第１及び第２の画像データのブロック列が交互に書き込まれ、この後、所定の順で第２の画像データのブロック列が書き込まれる。従って、画像メモリに書き込まれたブロック列の順、及び、当該ブロック列が第１又は第２の画像データのいずれであるかは、予め定められている。そこで、当該書き込まれた画像データをブロック単位で読み出し、当該所定の順で従って、当該読み出された画像データをブロック列単位で前記第１又は第２の画像データとする。その上で、第１及び第２の画像データを前記ブロック単位で画像圧縮してこれらの圧縮データを生成し、ブロック列単位で識別子を挿入する。これにより、圧縮された第１及び第２の画像データの境界を知ることができ、圧縮された第１及び第２の画像データを容易に分離することができる。また、複数の画像データを１個の画像圧縮処理部で画像圧縮することができ、画像圧縮処理のための回路規模がＪＰＥＧ圧縮処理だけのために大きくなりコストの増大を招くことを回避することができる。また、複数の画像データの中の画像圧縮処理を行っていない画像データを、全て画像メモリ上に格納する必要がないので、大容量の画像メモリを必要とせずコストの増大を招くことを回避することができる。更に、画像圧縮処理の際には、複数の画像データの各々を、画像メモリを経由して画像圧縮処理部で画像圧縮処理するので、画像圧縮処理のための処理時間が長くならず、処理性能の低下を回避することができる。
【００１２】
本発明の画像処理装置は、画像データを圧縮した圧縮データと、前記圧縮データを分離する識別子としてのリスタートマーカとを格納する画像ファイルを受信する画像処理制御部と、前記圧縮データを伸張する画像伸張部とを備える。前記画像データは、原稿の表面及び裏面の一方の画像である第１の画像データを読み取る第１の画像読取部、及び、前記第１の画像読取部と副走査方向において所定の距離だけ異なる位置に設けられ、前記原稿の表面及び裏面の他方の画像である第２の画像データを読み取る第２の画像読取部によって読み取られて、画像メモリに前記所定の距離に応じた所定の順で書き込まれ、当該画像メモリから所定の大きさのブロック単位で所定の順で読み出され、当該読み出された画像データを前記ブロックを主走査方向に所定の個数だけ並べたブロック列単位で前記第１又は第２の画像データとされたものであって、前記所定の距離に応じた所定の順での書き込みにおいて、前記所定の距離に相当する数の前記ブロック列の分の前記第１の画像データであって、前記第２の画像データに先行して読み取られた前記第１の画像データが前記画像メモリに順で書き込まれ、この後、前記第１及び第２の画像データが前記ブロック列単位で交互に前記画像メモリに順で書き込まれ、この後、前記所定の距離に相当する数の前記ブロック列の分の前記第２の画像データが連続して前記画像メモリに順で書き込まれたものである。前記圧縮データは、前記画像メモリに書き込まれた前記画像データを前記ブロック単位で読み出し、かつ、当該読み出された画像データを前記ブロック列単位で前記所定の距離に応じた所定の順で従って前記第１又は第２の画像データとし、前記画像読出部からの第２の画像データを前記ブロック単位で画像圧縮してこれらの圧縮データを生成したものである。前記識別子は、前記ブロック列単位で当該最後のブロックの後に挿入されたものである。前記画像処理制御部が、前記識別子に従って前記圧縮データを分離して、前記所定の距離に応じた所定の順で従って前記第１及び第２の画像データとした上で前記画像伸張部に送る。前記画像伸張部が、分離された前記第１及び第２の画像データを、前記ブロック単位で伸張する。
【００１３】
本発明の画像処理装置によれば、前述のように、画像ファイルにおけるブロック列の順、及び、当該ブロック列が第１又は第２の画像データのいずれであるかは、予め定められている（所定の順である）。そこで、画像ファイルの圧縮データを識別子に従って分離することにより、所定の順で従って、圧縮された第１及び第２の画像データを容易に分離することができる。また、画像圧縮された画像データから、これを伸張することなく、識別子に従って複数の画像データを分離することができる。従って、画像圧縮された画像データを伸張してから分離するよりも処理時間を短くすることができ、処理性能の低下を回避することができる。
【００１４】
本発明の画像処理方法は、第１の画像読取部により原稿の表面及び裏面の一方の画像である第１の画像データを読み取り、画像メモリに所定の順で書き込み、前記第１の画像読取部と副走査方向において所定の距離だけ異なる位置に設けられた第２の画像読取部により前記原稿の表面及び裏面の他方の画像である第２の画像データを前記第１の画像データと並行して読み取り、前記画像メモリに所定の順で書き込み、前記画像メモリに書き込まれた画像データを所定の大きさのブロック単位で所定の順で読み出し、かつ、当該読み出された画像データを前記ブロックを主走査方向に所定の個数だけ並べたブロック列単位で前記第１又は第２の画像データとし、前記読み出された前記第１及び第２の画像データの圧縮処理を行う画像処理方法である。前記所定の距離に相当する数の前記ブロック列の分の前記第１の画像データであって、前記第２の画像データに先行して読み取られた前記第１の画像データを前記画像メモリに順で書き込み、この後、前記第１及び第２の画像データを前記ブロック列単位で交互に前記画像メモリに順で書き込み、この後、前記所定の距離に相当する数の前記ブロック列の分の前記第２の画像データを連続して前記画像メモリに順で書き込むことにより、前記第１及び第２の画像データを前記ブロック列単位で前記所定の距離に応じた所定の順で前記画像メモリに書き込む。前記画像メモリに書き込まれた画像データを前記ブロック単位で読み出し、かつ、当該読み出された画像データを前記ブロック列単位で前記所定の距離に応じた所定の順で従って前記第１又は第２の画像データとする。前記読み出された前記第１及び第２の画像データを前記ブロック単位で画像圧縮してこれらの圧縮データを生成し、前記ブロック列単位で当該最後のブロックの後に前記圧縮データを分離する識別子としてのリスタートマーカを挿入する。前記圧縮データ及び識別子を格納する画像ファイルを受信する。前記識別子に従って前記圧縮データを分離して、前記所定の距離に応じた所定の順で従って前記第１又は第２の画像データとする。前記分離された前記第１又は第２の画像データを、前記ブロック単位で伸張する。
【００１５】
本発明の画像処理方法によれば、前述のように、画像メモリに書き込まれたブロック列の順、及び、当該ブロック列が第１又は第２の画像データのいずれであるかは、予め定められているので、圧縮された第１及び第２の画像データの境界を知ることができる。また、前述のように、画像ファイルの圧縮データを識別子に従って分離することにより、所定の順で従って、圧縮された第１及び第２の画像データを容易に分離することができる。更に、前述のように、複数の画像データを１個の画像圧縮処理部で画像圧縮することができ、複数の画像データの中の画像圧縮処理を行っていない画像データを全て画像メモリ上に格納することができ、画像圧縮処理の際に複数の画像データの各々を画像メモリを経由して画像圧縮処理部で画像圧縮処理することができる。従って、画像圧縮処理のための回路規模や画像メモリの増大を回避し、画像圧縮処理のための処理時間が長くなることを回避することができる。更に、画像圧縮された画像データから識別子に従って複数の画像データを分離することができる。従って、画像圧縮された画像データを伸張してから分離するよりも処理時間を短くすることができる。
【００１６】
【発明の実施の形態】
図１は、画像処理システム構成図であり、本発明の画像処理装置を含む画像処理システムの構成を示す。
【００１７】
本発明の画像処理システムは、図１（Ａ）に示すように、本発明の画像処理装置であるスキャナ１、本発明の画像処理装置であるホストコンピュータ２、これらの間を接続するインタフェース３からなる。スキャナ１は、スキャナ以外に、コピー機のような画像読取装置やファクシミリ装置であってもよい。ホストコンピュータ２は、例えばサーバ、コピー機のような画像読取装置やファクシミリ装置であってもよい。スキャナ１は、並行して読み取った複数の画像データに基づいてそのＪＰＥＧ画像ファイル４を作成し、インタフェース３を介してホストコンピュータ２へ転送する。インタフェース３は、例えばＬＡＮ（Local Area Network）、ＷＡＮ（Wide Area Network ）、インターネットのようなネットワークであってもよい。ホストコンピュータ２は、受信したＪＰＥＧ画像ファイル４を複数の画像データごとに分離した上で伸張する。即ち、ホストコンピュータ２も画像処理装置である。
【００１８】
図２は、画像処理装置構成図であり、本発明の画像処理装置であるスキャナ１の構成を示す。この例において、スキャナ１は、並行して（ほぼ同時に）２個の画像データを読み取る第１及び第２画像入力部１１Ａ及び１１Ｂ、１個の画像メモリ１２、第１画像読出部１３、１個のＪＰＥＧ圧縮部１４、画像書込部１５、第２画像読出部１６を備える。第１画像読出部１３は、ブロック順次制御部１３１、入力切替制御部１３２を備える。ＪＰＥＧ圧縮部１４は、圧縮処理部１４１、リスタートマーカ挿入部１４２を備える。
【００１９】
第１及び第２画像入力部１１Ａ及び１１Ｂは、各々、ＣＣＤからなる画像読取部１１１Ａ及び１１１Ｂ（図３（Ａ）参照）、アナログ／デジタル変換部及び画像処理部（いずれも図示せず）からなり、周知の画像処理を行って得た画像データを画像メモリ１２に格納する。即ち、第１及び第２画像入力部１１Ａ及び１１Ｂは、各々が、画像読取部１１１Ａ及び１１１Ｂによって読み取った画像データをデジタル信号に変換して得た画像データ（デジタル信号）について、種々の補正処理を行い、必要に応じて２値化処理等を行い、最適化処理を行って画像データを形成し、これを画像メモリ１２に格納する。
【００２０】
この例では、原稿の表面及び裏面の画像を読み込む２系統の画像入力部１１Ａ及び１１Ｂが設けられる。従って、並行して読み取られ、１個の画像メモリ１２及び１個のＪＰＥＧ圧縮部１４に入力される画像データは、２系統（２個）存在する。この例において、図１（Ｂ）に示すように、第１画像入力部１１Ａは、その画像読取部１１１Ａにより例えば原稿１００の表面の画像Ａを読み取って、図３（Ａ）に示すように、その画像データ（表画像データ）Ａを画像メモリ１２に書き込む。第２画像入力部１１Ｂは、図１（Ｂ）に示すように、その画像読取部１１１Ｂにより例えば原稿１００の裏面の画像Ｂを読み取って、その画像データ（裏画像データ）Ｂを画像メモリ１２に書き込む。従って、この例では、画像メモリ１２は、並行して読み取られた２系統の画像データＡ及びＢを格納する。
【００２１】
画像読取部１１１Ａと１１１Ｂとは、その位置が、図３（Ａ）に示すように、副走査方向（矢印Ｙの方向）において、相互に距離ｄ（例えば１ｃｍ程度）だけずれている。これは、両者を副走査方向Ｙにおいて同一の位置に設けると、相互の光源からの光が原稿１００を透過してしまい、正確な画像データが得られないためである。なお、画像読取部１１１Ａと１１１Ｂとの上下の位置関係は、図３（Ａ）の場合の逆であってもよい。この例では、副走査方向Ｙにおいて先行する画像読取部１１１に符号Ａを付して示し、画像読取部１１１Ａを備える画像入力部１１を第１画像入力部１１Ａとし、その読み取る面を表面とする（これらの逆であってもよい）。
【００２２】
ここで、周知のように、ＪＰＥＧ圧縮処理は、画像データを８ピクセル×８ピクセルのブロックに分割して、各ブロック毎にＪＰＥＧ圧縮を行うものである。これを、この例における原稿１００及び画像メモリ１２に当てはめてみると、図４に示すようになる。
【００２３】
１個の画像データは、１ページ分の画像データからなる。従って、表ページ及び裏ページの２ページ分の画像データが、並行して読み取られる。１ページ分の画像データは、各々、ＪＰＥＧのブロック（８×８）を、主走査方向Ｘに例えば５００個（実際は、これよりもやや多い）並べ、副走査方向Ｙに例えばｎ個（例えば数千個）並べたデータであるとする。主走査方向Ｘにおけるブロックの列において、その先頭から順に、Ｂ１乃至Ｂ５００の番号を付して表すこととする。距離ｄは、図示の便宜のために、例えば４ブロック即ち３２ピクセル（実際は、約１ｃｍであるのでこれよりも相当多い）分に相当する距離であるとする。主走査方向Ｘにおけるブロックの列を、表又は裏の区別とその順に＃１〜＃ｎの番号とを付して、「表＃１」のように表すこととする。従って、この場合、１個のブロック列表＃１等は、各々、先頭から順に、ブロックＢ１乃至Ｂ５００からなり、１個の画像データ即ち１ページ分の画像データは、各々、先頭から順に、表＃１〜表＃ｎ又は裏＃１〜裏＃ｎのｎ個のブロック列からなる。
【００２４】
その読み取りにおいて、１ページ分の画像データは、各々、画像読取部１１１Ａと１１１Ｂにより、先頭から順に、１列（ピクセル列）分のデータが主走査方向Ｘに読み取られ、これを副走査方向Ｙにおいて、各ピクセル列について繰り返す。そして、読み取られた画像データは、画像入力部１１Ａ及び１１Ｂにより、画像メモリ１２において、そのまま、１ピクセル列分のデータが方向Ｘに（１列又は複数列に）書き込まれ、これを方向Ｙにおいて繰り返す。
【００２５】
そして、画像データは、図３（Ｂ）に示すように、副走査方向Ｙにおいて、原稿１００の表面がその裏面に距離ｄに相当するブロック列表＃１〜表＃４だけ先行して読み取られ、表面のブロック列表＃５以下及び裏面のブロック列裏＃１以下の画像データが並行して読み取られ、最後に距離ｄに相当するブロック列裏＃（ｎ−３）〜裏＃ｎが読み取られ、これらの順で画像メモリ１２に書き込まれる。しかし、実際には、画像メモリ１２は１個であり、画像入力部１１Ａ及び１１Ｂにより、図３（Ｃ）に示すように、その先頭から順に、先行して読み取られたブロック列表＃１〜表＃４が書き込まれ、次にブロック列表＃５、裏＃１、表＃６、裏＃２、・・・以下が交互に書き込まれ、最後にブロック列裏＃（ｎ−３）〜裏＃ｎが書き込まれる。
【００２６】
一方、その読み出しにおいて、ＪＰＥＧ圧縮部１４におけるＪＰＥＧ圧縮のために、画像メモリ１２からブロック単位で画像データを読み出さなければならない。ところが、１ページ分の画像データは、各々、先頭から順に、１個のピクセル列分のデータが主走査方向Ｘに画像メモリ１２から読み出され、これを副走査方向Ｙにおいて、各ピクセル列について繰り返す。そこで、第１画像読出部１３において、読み出された画像データを、以下のように、ＪＰＥＧ圧縮ができるような形式とした上で、ＪＰＥＧ圧縮部１４に入力する。
【００２７】
第１画像読出部１３は、画像メモリ１２から画像データを読み出し、これをＪＰＥＧ圧縮部１４に入力する時、ブロック順次制御部１３１により、画像メモリ１２から２個（表及び裏）の画像データを所定の大きさのブロック単位で読み出す。ブロックの大きさは、ＪＰＥＧ圧縮ができるように、８ピクセル×８ピクセルとされる。実際には、ブロック順次制御部１３１は、その時点の読み出しの先頭位置から１ピクセル列づつ８列読み出して保持し、この８列のピクセル列の各々の先頭から８画素（ピクセル）づつ読み出して、１個のブロックとし、これを繰り返す。ブロックの大きさは可変とされる。例えば、１６×１６、１６×８等であってもよい。
【００２８】
そして、第１画像読出部１３は、入力切替制御部１３２により、２個の画像データＡ及びＢの各々について、その所定のブロックを所定の個数だけ読み出した後に、複数の画像データを指定された順に切り換える。前述のように、読み出し対象は、各々、１ページ分の画像データであるので、所定の個数は当該ページの主走査方向Ｘの幅に相当する個数である。従って、この例では、５００個である。この所定の個数は可変とされる。例えば、ブロックの大きさが１６×１６であれば、２５０個とされる。また、所定の個数は当該ページの主走査方向Ｘの幅以外の個数であってもよい。複数の画像データの切り換えの順の指定も可変である。この例では、ブロック列は、表＃１〜表＃４、表＃５、裏＃１、表＃６、裏＃２、・・・、裏＃（ｎ−３）〜裏＃ｎの順であるので、このように切り換えることが指定される。
【００２９】
第１画像読出部１３は、以上の動作を繰り返すことにより、並行して読み取られた２個の画像データＡ及びＢを読み出すが、各々の画像データについてその全データが画像メモリ１２に格納される以前に、２個の画像データＡ及びＢの各々の読み出しを開始する。例えば、表の画像データＡ及び裏の画像データＢを合わせて数１００ブロック列が格納されたら、第１画像読出部１３が先頭からの読み出しを開始する。読み出しの開始は、第１画像読出部１３が所定のタイミングとなるように定める。以上により、図３（Ｃ）に示すように、第１画像読出部１３が、ブロック列表＃１〜表＃４を読み出し、次にブロック列表＃５、裏＃１、表＃６、裏＃２、・・・以下を交互に読み出し、最後にブロック列裏＃（ｎ−３）〜裏＃ｎを読み出し、ＪＰＥＧ圧縮部１４に入力する。従って、表の画像データＡ及び裏の画像データＢとが混在して、ＪＰＥＧ圧縮部１４に入力される。
【００３０】
ＪＰＥＧ圧縮部１４は、第１画像読出部１３から入力された画像データについて、これをＪＰＥＧ圧縮して、リスタートマーカを挿入した上で、画像書込部１５に出力する。即ち、ＪＰＥＧ圧縮部１４が、圧縮処理部１４１により、図３（Ｄ）に示すように、第１画像読出部１３が８ピクセル×８ピクセルのブロックＢ単位で読み出した表裏２系統の画像データを、当該ブロックＢ単位で画像圧縮する。即ち、各ブロック毎にＤＣＴ（離散コサイン変換）及び量子化を行い、スキャン変換及びハフマン符号化を行う。そして、ＪＰＥＧ圧縮部１４は、表裏の画像データＡ及びＢの各々について、そのブロックＢを所定の個数である５００個だけ画像圧縮した後に、リスタートマーカ挿入部１４２により、その最後のブロックＢ５００の圧縮データの後に識別子としてのリスタートマーカＲＭを挿入する。従って、リスタートマーカＲＭは、１個のブロック列毎に、その圧縮データの最後尾に（又は次のブロック列との間に）付加される。この例では、ブロック列表＃１（の圧縮データ）、ＲＭ、表＃２、ＲＭ、表＃３、・・・、裏＃ｎ、ＲＭとされる。従って、表ページの画像データＡの圧縮データと裏ページの画像データＢの圧縮データとが混在している。なお、ＪＰＥＧ画像ファイル４の先頭にはヘッダが付加される。
【００３１】
画像書込部１５は、ＪＰＥＧ圧縮部１４によりＪＰＥＧ圧縮され出力された画像データを、画像メモリ１２の空き領域に書き込む。例えば、当該ブロック列を読み出した元の領域に書き込む。
【００３２】
第２画像読出部１６は、画像メモリ１２から画像データを読み出し、これをインタフェース３を介してホストコンピュータ２にデータ転送する。この画像データは、ＪＰＥＧ圧縮された画像データである。即ち、ＪＰＥＧ画像ファイル４である。ＪＰＥＧ画像ファイル４は、図１（Ｂ）に示すように、表裏の画像を１個のファイルとして作成される。即ち、この場合、画像データＡ及びＢを一体とする１個のＪＰＥＧ画像ファイル４を作成する。ホストコンピュータ２は、受信した１個のＪＰＥＧ画像ファイル４を、伸張する前に、２個の画像データＡ及びＢに分離した上で、画像データＡ及びＢを各々伸張して、復元画像データＡ及びＢを得る。
【００３３】
図５（Ａ）は、ホストコンピュータ構成図であり、本発明の画像処理装置であるホストコンピュータ２の構成を示す。この例において、ホストコンピュータ２は、スキャナドライバ２１、ＪＰＥＧ伸張部２３、メモリ２４を備える。スキャナドライバ２１は、分離処理部２２を備える。
【００３４】
スキャナドライバ２１は、スキャナ１を制御してこれとの間での通信を行って、スキャナ１からＪＰＥＧ圧縮された画像データを格納するＪＰＥＧ画像ファイル４を受信する。スキャナドライバ２１は、受信したＪＰＥＧ画像ファイル４を分離処理部２２に渡す。
【００３５】
分離処理部２２は、前述のリスタートマーカＲＭを含むＪＰＥＧ画像ファイル４を、伸張することなく（伸張に先立って）、リスタートマーカＲＭを検出して、これに従って、表及び裏の各々の画像データＡ及びＢに分離する。従って、ホストコンピュータ２は、図５（Ａ）に点線で示すように、スキャナドライバ２１で受信した画像データをＪＰＥＧ伸張部２３に入力するためのバッファ（メモリ）を備える必要がない。分離処理部２２は、分離した画像データをＪＰＥＧ伸張部２３に送る。
【００３６】
ＪＰＥＧ伸張部２３は、ＪＰＥＧ画像ファイル４の画像圧縮された画像データが分離されたデータを伸張して、メモリ（画像メモリ）２４に格納する。ＪＰＥＧ圧縮された画像データは、ブロック単位で伸張される。これにより、伸張された表ページの画像データ２４１と裏ページの画像データ２４２が得られる。
【００３７】
前述のように、スキャナドライバ２１が受信したＪＰＥＧ画像ファイル４は、表裏の２個の画像データＡ及びＢをＪＰＥＧ圧縮したデータが混在するものである。しかし、実際には、本発明に従って、ＪＰＥＧ画像ファイル４は、リスタートマーカＲＭを含む。そこで、分離処理部２２において、図３（Ｄ）に示す処理と逆の処理を行う。即ち、分離処理部２２は、ＪＰＥＧ画像ファイル４の先頭から順にリスタートマーカＲＭを検出して、当該検出したリスタートマーカＲＭまでの圧縮データ（ブロック列）を、所定の画像データとして分離する。この例では、前述のように、ＪＰＥＧ画像ファイル４は、先頭から順に、ブロック列表＃１（の圧縮データ）、ＲＭ、表＃２、ＲＭ、表＃３、・・・、裏＃ｎ、ＲＭのデータ列である。そこで、最初のリスタートマーカＲＭを検出すると、それまでのブロック列を表＃１として分離し、リスタートマーカＲＭを削除した上で、ＪＰＥＧ伸張部２３に入力する。４個目までのリスタートマーカＲＭを検出すると、表＃２、表＃３、表＃４として分離しＪＰＥＧ伸張部２３に入力する。５個目及び６個目のリスタートマーカＲＭを検出すると、各々、表＃５及び裏＃１とし、交互に表ページの（第５のブロック列の）画像データ及び裏ページの（第１のブロック列の）画像データとして分離しＪＰＥＧ伸張部２３に入力する。
【００３８】
なお、従来は、表裏の２個の画像データＡ及びＢをＪＰＥＧ圧縮したデータが混在する場合、どの部分が表ページの画像データでありどの部分が裏ページの画像データであるかは、ＪＰＥＧ画像ファイル４の全体を伸張してみなければ判らなかった。従って、前記画像データをＪＰＥＧ伸張部２３に入力するためのバッファ（メモリ）を備えなければならず、その容量は、ＪＰＥＧ画像ファイル４の全体を格納できる大きなものでなければならなかった。
【００３９】
また、スキャナ１からの画像入力の際に、ホストコンピュータ２において必ずしも画像の伸張が本来必要でない場合がある。例えば、大量のページの画像データの入力において、ＪＰＥＧ画像ファイルを分離するだけにして、そのままファイリングする場合等である。この場合、本発明によれば、分離のため（だけ）に画像の伸張処理を行う必要がないので、非常に高速の画像処理が可能となる。なお、従来は、伸張しなければ画像を分離できなかったので、本来ファイリングするのみであれば画像の伸張は不要であるのにもかかわらず、やむを得ず画像の伸張を行っていた。
【００４０】
図６及び図７は、画像処理説明図であり、本発明のスキャナ１からホストコンピュータ２へのＪＰＥＧ画像ファイル４の転送と、これを受信したホストコンピュータ２におけるその伸張について示す。
【００４１】
図６において、スキャナ１の第１画像読出部１３は、画像メモリ１２に格納された２個の画像データＡ及びＢを、入力切替制御部１３２の制御に従って、表＃１ブロック列から所定の順に読み出す。この時、ブロック順次制御部１３１が、表＃１ブロック列を構成するブロックＢ１〜Ｂ５００の画像データを、ブロックＢ１、Ｂ２、・・・の順で読み出し、ＪＰＥＧ圧縮部１４に送出する。５００個のブロックＢ１〜Ｂ５００の画像データを読み出した時点で、入力切替制御部１３２が、読み出す画像データを表＃１ブロック列から表＃２ブロック列に切り換える。
【００４２】
ＪＰＥＧ圧縮部１４は、その圧縮処理部１４１において、入力された表＃１ブロック列を構成するブロックＢ１〜Ｂ５００の画像データを、ブロックＢ１、Ｂ２、・・・の順で、各ブロック毎にＪＰＥＧ圧縮処理を行う。そして、リスタートマーカ挿入部１４２が、最後のブロックＢ５００の後ろにリスタートマーカＲＭ（斜線で示す、以下同じ）を付加する。このＪＰＥＧ圧縮されたブロックＢ１〜Ｂ５００が、リスタートマーカと共に、画像書込部１５を介して画像メモリ１２に再度書き込まれる。
【００４３】
第１画像読出部１３（のブロック順次制御部１３１）は、前記切替に従って、表＃２ブロック列を構成するブロックＢ１〜Ｂ５００の画像データを、前述と同様に読み出し、その後、読み出す画像データを切り換える。ＪＰＥＧ圧縮部１４は、表＃２ブロック列のブロックＢ１〜Ｂ５００の画像データについてＪＰＥＧ圧縮処理を行い、その最後尾にリスタートマーカＲＭを付加して画像メモリ１２に書き込まむ。以下、同様にして、図６に示すように、表＃３、表＃４、表＃５、裏＃１、表＃６、裏＃２、・・・の各ブロック列の順で、読み出され、ＪＰＥＧ圧縮され、再書き込みされる。
【００４４】
更に、同様にして処理が進行し、図７において、表＃ｎ−１、裏＃ｎ−５、表＃ｎ、裏＃ｎ−４、裏＃ｎ−３、裏＃ｎ−２、裏＃ｎ−１、裏＃ｎの各ブロック列の順で、読み出され、ＪＰＥＧ圧縮され、再書き込みされる。これらの圧縮データは、この後、読み出されて１個のＪＰＥＧ画像ファイル４としてホストコンピュータ２に送信される。
【００４５】
一方、ホストコンピュータ２のスキャナドライバ２１は、受信したＪＰＥＧ画像ファイル４をその受信の順に分離処理部２２に送る。分離処理部２２は、ＪＰＥＧ画像ファイル４を先頭から調べてリスタートマーカＲＭを検出すると、当該検出したリスタートマーカＲＭまでの圧縮データを表＃１ブロック列として分離し、リスタートマーカＲＭを削除した上で、ＪＰＥＧ伸張部２３に入力する。ＪＰＥＧ伸張部２３は、これを表＃１ブロック列（表ページの画像データＡの先頭のブロック列）として伸張する。
【００４６】
この後、分離処理部２２は、次のリスタートマーカＲＭを検出すると、当該検出したリスタートマーカＲＭまでの圧縮データを表＃２ブロック列として分離し、リスタートマーカＲＭを削除し、ＪＰＥＧ伸張部２３に入力する。ＪＰＥＧ伸張部２３は、これを表＃２ブロック列として伸張する。以下、同様にして、図６に示すように、表＃３、表＃４、表＃５、裏＃１、表＃６、裏＃２、・・・の各ブロック列の順で、圧縮データが分離され伸張される。
【００４７】
更に、同様にして処理が進行し、図７において、表＃ｎ−１、裏＃ｎ−５、表＃ｎ、裏＃ｎ−４、裏＃ｎ−３、裏＃ｎ−２、裏＃ｎ−１、裏＃ｎの各ブロック列の順で、圧縮データが分離され伸張される。
【００４８】
以上、本発明をその実施の態様に従って説明したが、本発明はその主旨に従って、種々の変形が可能である。
【００４９】
例えば、ＪＰＥＧ圧縮処理の対象とされる並行して読み取られた画像データが３系統（３個）以上あってもよい。また、複数の画像データの並行した読取は、２個（又はそれ以上）の数の画像入力部を設けることなく、ＪＰＥＧ圧縮部１４よりも高速動作可能な１個の画像入力部を設けてこれを切り換えることにより、複数の画像データを事実上並行して読み取るようにしてもよい。また、画像データは、フルカラーの画像データであっても、モノクロの画像データであっても、２値の画像データであってもよい。更に、ＪＰＥＧ圧縮処理以外の他の画像圧縮処理であっても、同様に適用することができる。
【００５０】
【発明の効果】
以上説明したように、本発明によれば、画像処理装置において、並行して読み取られた複数の画像データを所定の個数のブロックを読み出す毎に複数の画像データを指定された順に切り換えて読み出して画像圧縮する。これにより、複数の画像データを１個の画像圧縮処理部で画像圧縮することができ、画像圧縮処理のための回路規模が大きくなることを回避することができる。また、複数の画像データの中の画像圧縮処理を行っていない画像データを全て画像メモリ上に格納する必要がないので、大容量の画像メモリを不要とすることができる。更に、画像圧縮処理の際には複数の画像データの各々を画像メモリを経由して画像圧縮処理部で画像圧縮処理するので、画像圧縮処理のための処理時間を短くすることができる。
【００５１】
また、本発明によれば、画像処理装置において、画像圧縮された画像データは、並行して読み取られた複数の画像データを所定の個数のブロック毎に画像圧縮すると共に、識別子を挿入したデータである。これにより、画像圧縮された画像データから、識別子に従って複数の画像データを分離することができるので、画像圧縮された画像データを伸張してから分離するよりも処理時間を短くすることができる。
【００５２】
また、本発明によれば、画像処理方法において、並行して読み取られた複数の画像データを所定の個数のブロックを読み出す毎に複数の画像データを指定された順に切り換えて読み出して画像圧縮すると共に、識別子を挿入する。これにより、前述のように、複数の画像データを１個の画像圧縮処理部で画像圧縮することができ、複数の画像データの中の画像圧縮処理を行っていない画像データを全て画像メモリ上に格納することができ、画像圧縮処理の際に複数の画像データの各々を画像メモリを経由して画像圧縮処理することができる。従って、画像圧縮処理のための回路規模や画像メモリの増大を回避することができる。更に、画像圧縮された画像データから識別子に従って複数の画像データを分離することができるので、画像圧縮された画像データを伸張してから分離するよりも処理時間を短くすることができる。
【図面の簡単な説明】
【図１】画像処理システム構成図である。
【図２】スキャナ（画像処理装置）構成図である。
【図３】画像処理説明図である。
【図４】画像処理説明図である。
【図５】ホストコンピュータ（画像処理装置）構成図である。
【図６】画像処理説明図である。
【図７】画像処理説明図である。
【符号の説明】
１    スキャナ（画像処理装置）
２    ホストコンピュータ（画像処理装置）
４    ＪＰＥＧ画像ファイル
１２    画像メモリ
１３    第１画像読出部
１４    ＪＰＥＧ圧縮部
１３１    ブロック順次制御部
１３２    入力切替制御部
１４１    圧縮処理部
１４２    リスタートマーカ挿入部
【図１】
0003984094.tif 000002
【図２】
0003984094.tif 000003
【図３】
0003984094.tif 000004
【図４】
0003984094.tif 000005
【図５】
0003984094.tif 000006
【図６】
0003984094.tif 000007
【図７】
0003984094.tif 000008