(57)【要約】【課題】圧縮効率を低下させることなく、データ圧縮に必要な回路規模の増大や処理の複雑化を招くことなく、画像のエッジ検出を行うことができる画像処理方法を提供する。【解決手段】画像処理方法は、画像データを複数のブロック単位に分割し、分割した１ブロックの任意の１データを基準データとする。次に、ブロックのデータ間の差分データを算出し、算出した差分データから有効桁部分を抽出する。次に、基準データと有効桁部分とを合成し、有効桁部分の桁数から圧縮後の画像データのデータ長を算出する。そして、算出された前記データ長の変化に基づいて画像のエッジを検出する。【選択図】図１
2010273264.tif 000002
【特許請求の範囲】
【請求項１】
画像データを複数のブロックに分割する分割手段と、
該分割手段により分割されたブロックの任意の１データを基準データとする基準データ作成手段と、
前記ブロックのデータ間の差分データを算出する差分データ生成手段と、
前記差分データから有効桁部分を抽出する抽出手段と、
前記基準データと前記有効桁部分とを合成する合成手段と、
前記抽出手段によって抽出された有効桁部分の桁数から前記ブロックの圧縮後のデータ長を算出する算出手段と、
該算出手段によって算出された前記ブロックの圧縮後のデータ長の変化に基づいて画像のエッジを検出する検出手段と、を備える
ことを特徴とする画像処理装置。
【請求項２】
前記検出手段は、前記ブロックの圧縮後のデータ長に一定以上の変化がない場合に、圧縮後の画像データの変化に基づいて画像のエッジを検出する、
ことを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記差分データは、符号部分と絶対値部分とを有する、
ことを特徴とする請求項１又は２に記載の画像処理装置。
【請求項４】
前記合成手段は、前記ブロックの圧縮後のデータ長を表すデータと前記基準データの上位ビット部とを合成する第一の合成手段と、
前記差分データの符号部分のデータ列と前記基準データの下位ビット部における任意の１ビットのデータとを合成する第二の合成手段と、
前記有効桁部分における任意のビット位置のデータと前記基準データの下位ビット部における対応するビットのデータとを合成する第三の合成手段と、を備える、
ことを特徴とする請求項１〜３のいずれか一項に記載の画像処理装置。
【請求項５】
画像データを複数のブロックに分割する分割ステップと、
該分割ステップで分割されたブロックの任意の１データを基準データとする基準データ作成ステップと、
前記ブロックのデータ間の差分データを算出する差分データ生成ステップと、
前記差分データから有効桁部分を抽出する抽出ステップと、
前記基準データと前記有効桁部分とを合成する合成ステップと、
前記抽出ステップで抽出された有効桁部分の桁数から前記ブロックの圧縮後のデータ長を算出する算出ステップと、
該算出ステップで算出された前記ブロックの圧縮後のデータ長の変化に基づいて画像のエッジを検出する検出ステップと、を備える
ことを特徴とする画像処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、例えば、グラデーション系の画像を差分方式を応用して可変長符号化して圧縮し、圧縮した画像データから画像の枠を検出する手段を備える画像処理装置及び画像処理方法に関する。
【背景技術】
【０００２】
従来、通信回線等を介して画像データを高速かつ効率良く伝送するために、画像データに対する様々な圧縮方法が開発されてきた。例えば、ランレングス符号化を用いたランレングス圧縮方式は、同一のデータ要素が連続して出現する場合が多いとき、そのデータ要素と出現回数の組み合わせに注目して符号化する方式である。このランレングス圧縮方式は、文字が主体の画像であれば効率良く圧縮することができる。
【０００３】
また、ＪＰＥＧ（Ｊｏｉｎｔ  Ｐｈｏｔｏｇｒａｐｈｉｃ  Ｅｘｅｐｅｒｔｓ  Ｇｒｏｕｐ）方式は、カラー静止画を圧縮する際によく用いられる方式であり、最終的なエントロピー符号化にはハフマン符号化方式等を用いている。
【０００４】
一方、一つの画像を複数のブロックに分割して、各ブロック単位に画像情報の確率分布の集中度を表す統計量等を求め、統計量と設定値との大小比較によりコードブックを用いる可変長符号または固定長符号を選択する画像圧縮方式が提案されている（特許文献１）。
【０００５】
この提案では、二次差分ＤＰＣＭ（Ｄｉｆｆｅｒｅｎｔｉａｌ  Ｐｕｌｓｅ  Ｃｏｄｅ  Ｍｏｄｕｌａｔｉｏｎ）または二次差分可変標本密度符号化における二次差分を求めて、この二次差分を確率分布の集中度を表す統計量として用いることも開示されている。
【０００６】
また、それぞれの原画像データにおける差分値データの出現頻度を解析し、その差分値データに適した可変長符号化テーブルを生成し、それを用いて符号化を行う技術が開示されている（特許文献２）。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開昭６３−２８４９７４号公報
【特許文献２】特開平９−１１６７６５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
ハフマン符号化を用いた圧縮方式は、符号化テーブルが煩雑であると同時に、符号化する際のパターンマッチングを行うためにバレルシフタが必要になる等、複数の回路を必要とし、メモリやＡＳＩＣ等の増大を招いている。
【０００９】
上記特許文献１では、実現するための回路が多大であるために動作速度の低下や消費電流の増加等も問題である。これにより、小規模な回路やシステムにおいては、画像圧縮を導入できずにいる。
【００１０】
上記特許文献２では、可変長符号化を行う際に、ブロック内のデータの出現頻度から作成する可変長符号化テーブルを作成する等の作業が必要になり、これも回路規模の増大と処理の複雑化を引き起こすおそれがある。
【００１１】
上記特許文献１及び２の技術で圧縮したデータを用いて、画像から原稿部分のまわりの枠の部分を検出する枠（エッジ）検出を行う際には、圧縮したデータを一度伸長して処理しなければならないため、データ容量が大きくなり、これも回路の規模の増大と処理の複雑化を引き起こすおそれがある。
【００１２】
また、枠の内側の原稿部分の切り出しを行う際に圧縮したデータを一度伸長する場合、枠を検出した後に原稿部分の切り出しを行い、再度画像の圧縮を行う必要がある。これも回路の規模の増大と処理の複雑化を引き起こすおそれがある。
【００１３】
そこで、本発明は、データ圧縮に必要な回路規模の増大や処理の複雑化を招くことなく画像の圧縮が可能であり、画像のエッジ検出を圧縮したデータのままで短時間に効率よく行うことができる画像処理装置及び画像処理方法を提供することを目的とする。
【課題を解決するための手段】
【００１４】
上記目的を達成するために、本発明の画像処理装置は、画像データを複数のブロックに分割する分割手段と、該分割手段により分割されたブロックの任意の１データを基準データとする基準データ作成手段と、前記ブロックのデータ間の差分データを算出する差分データ生成手段と、前記差分データから有効桁部分を抽出する抽出手段と、前記基準データと前記有効桁部分とを合成する合成手段と、前記抽出手段によって抽出された有効桁部分の桁数から前記ブロックの圧縮後のデータ長を算出する算出手段と、前記算出手段によって算出された前記ブロックの圧縮後のデータ長の変化に基づいて画像のエッジを検出する検出手段と、を備えることを特徴とする。
【００１５】
本発明の画像処理方法は、画像データを複数のブロックに分割する分割ステップと、該分割ステップで分割されたブロックの任意の１データを基準データとする基準データ作成ステップと、前記ブロックのデータ間の差分データを算出する差分データ生成ステップと、前記差分データから有効桁部分を抽出する抽出ステップと、前記基準データと前記有効桁部分とを合成する合成ステップと、前記抽出ステップで抽出された有効桁部分の桁数から前記ブロックの圧縮後のデータ長を算出する算出ステップと、該算出ステップで算出された前記ブロックの圧縮後のデータ長の変化に基づいて画像のエッジを検出する検出ステップと、を備えることを特徴とする。
【発明の効果】
【００１６】
本発明によれば、回路規模の増大や処理の複雑化を招くことなく画像の圧縮を行い、圧縮した画像のデータ長と画像データから検出を行うことが可能となる。
【図面の簡単な説明】
【００１７】
【図１】本発明の実施形態の一例である画像処理装置におけるデータ圧縮処理の概要を示す図である。
【図２】ブロック長指示部の変換表の一例を示す図である。
【図３】同一のデータが連続する場合に、連続するデータを基準データとして、データ圧縮を行った際のデータ圧縮処理の概要を示す図である。
【図４】データ圧縮処理を選択的に実行するための処理の一例を示すフローチャート図である。
【図５】枠領域を含んだ画像データ示す図である。
【図６】枠領域が黒筋として画像データに残る理由を説明するための図である。
【図７】同じ濃度の画像の圧縮後データを示す図である。
【図８】同じ濃度の画像が連続している領域での圧縮後のデータ列を示す図である。
【図９】ブロック長指示部の変換表の一例を示す図である。
【図１０】枠を境にした基準データと同じ濃度の画像が原稿の読取画像領域内に連続しているときの画像を示す図である。
【図１１】枠を境にした基準データと同じ濃度の画像が原稿の読取画像領域内に連続している領域の圧縮後データを示す図である。
【図１２】圧縮した画像データを伸長することなく、画像データの枠を検出する処理を説明するためのフローチャート図である。
【発明を実施するための形態】
【００１８】
以下、本発明の実施形態の一例を図面を参照して説明する。
【００１９】
図１は、本発明の実施形態の一例である画像処理装置におけるデータ圧縮処理の概要を示す図である。
【００２０】
本実施形態の画像処理装置におけるデータ圧縮処理は、制御基板上のハードウェア回路で実行されるが、それに限定するものではない。
【００２１】
図１において、データ長Ｋの原画像データを複数個（Ｎ個）ずつのブロックに分割し、１ブロック内の任意の１データを基準データとする（基準データ作成手段）。本実施形態では、データブロックを構成するデータ数のＮを８個、各データのビットサイズを８ビットとする。
【００２２】
まず、圧縮前のデータブロックＡ０を構成するデータは、Ｄ０（＝７６ｈ），Ｄ１（＝７ｃｈ），Ｄ２（＝７ｅｈ），Ｄ３（＝８０ｈ），Ｄ４（＝７ｆｈ），Ｄ５（＝８４ｈ），Ｄ６（＝８９ｈ），Ｄ７（＝９０ｈ）とする。そして、本実施形態では、データブロックＡ０の最初のデータＤ０を基準データとする。基準データは任意に決めることが可能である。
【００２３】
次に、差分データＹｎを生成する（差分データ生成手段）。この差分データＹｎは、データブロックＡ０を構成するデータＤ０〜Ｄ７のうちの隣接するデータ間の差分であり、Ｙ０＝Ｄ１−Ｄ０、Ｙ１＝Ｄ２−Ｄ１、・・・、Ｙ６＝Ｄ７−Ｄ６となる。差分データを一般的な２値データの表現方法で表すと、図示のように、最上位ビットが符号部分となり、以下のビットが差分の絶対値（差分データの０〜６ビット目）となる。なお、本実施形態では、データとそれに隣接する直前のデータから差分データを求めているが、予め設定されたルールに基づくようにすれば、ブロック内のどのデータとの差分データを用いてもよい。
【００２４】
図示の１００は、差分データ部として、差分データＹ０〜Ｙ６を２値化した部分である。１０１に示す部分は、２値化された差分データＹ０〜Ｙ６においてビット値が「０」になる冗長データ部であり、図示した差分データでは、３ビット目から６ビット目までが冗長データ部となっている。１０２に示す部分は、２値化された差分データＹ０〜Ｙ６の有効絶対値部分を示している。１０３に示す部分は、差分データＹ０〜Ｙ６の符号部分である。
【００２５】
本実施形態において、差分データＹ０〜Ｙ６の有効値は、０〜２ビット目で表されている。これにより、データブロックＡ０における差分データＹ０〜Ｙ６の有効絶対値のデータ長は最大３ビットであることが判る。
【００２６】
以上のデータを用いて、第１の生成工程として、圧縮後の第１データを作成する（第一の合成手段）。
【００２７】
まず、差分データから有効桁部分が抽出される（抽出手段）。図示の１０４に示す部分は、圧縮後のデータのデータ長を指示するブロック長指示部である。このブロック長指示部１０４には、差分データ部の有効絶対値部分１０２の桁数が例えば３の場合、圧縮後のデータ長が５バイトとなることを表すデータが図２に示す変換表を用いて配置される。
【００２８】
即ち、Ｎ−１個の差分データにおける、符号部分を除いて絶対値化した差分データの最大データの有効桁部分のビットサイズをＬとした場合、例示したデータブロックＡ０における差分データＹ０〜Ｙ６の絶対値部分の有効桁部分が３ビットであるからＬ＝３となる。圧縮後データＢ０のデータ長Ｍは、Ｍ＝Ｌ＋２＝３＋２＝５バイトになる。
【００２９】
図２に示す変換表は、圧縮後データＢ０の第１データＣ０の下位ビットから始めて順次ビットデータを確認し、最初の「１」が配置されたビット位置が例えば３であればデータ長が５バイトであることを示している。
【００３０】
即ち、圧縮後のデータのデータ長Ｍ＝５バイトであれば、図２に示す変換表のデータ長５バイトを示す列データ「ｄ，ｄ，ｄ，ｄ，１，０，０，０」が用いられる。これにより、ブロック長指示部１０４は、「１０００ｂ」となる。
【００３１】
図２の変換表におけるｄで示す部分には、基準データＤ０の対応する上位ビット部のデータが分割配置される。本実施形態では、１０５に示す基準データの上位ビット部は、４ビットデータ「０１１１」に相当する。これにより、圧縮後データＢ０の第１データＣ０は、ブロック長指示部１０４と、基準データＤ０の上位ビット部１０５により構成され、「０１１１１０００ｂ」＝７８ｈとなる。
【００３２】
なお、本実施形態では、図２の変換表を用いて、第１データの下位ビットから上位ビットに対して順次ビットデータを確認し、最初の「１」が配置されたビット位置により圧縮後のデータ長を算出する方法を用いている（ブロック長算出）。しかし、これに限定されず、変換表に関して「０」，「１」のデータを入れ替えたり、対応ビットの表を変更してもよい。
【００３３】
次に、第２の生成工程において、圧縮後の第２データを作成する（第二の合成手段）。
【００３４】
圧縮後の第２データＣ１は、符号部分として、２値化された差分データＹ０〜Ｙ６の符号部分１０３と基準データＤ０の下位ビット部における任意の１ビットのデータ（ここで図示している例では３ビット目のデータ）を合成して作成される。
【００３５】
また、例えば、第２データＣ１の０ビット目に基準データＤ０の３ビット目が配置され、１ビット目には差分データＹ０の符号データビットが配置され、以降ｘビット目に差分データＹｘ−１の符号データビットが順次配置される。このようにしてデータを再配置すると、１０６に示す符号データ部になる。これにより、第２データＣ１は、「０００１００００ｂ」＝１０ｈとなる。
【００３６】
次に、第２の生成工程として、圧縮後の第３データＣ２（差分データの２ビット目）及び第３データＣ２以降の圧縮後の第４データＣ３（差分データの１ビット目）、第５データＣ４（差分データの０ビット目））のデータ列を作成する。
【００３７】
１０７に示す差分データ部には、差分データの絶対値部分の有効桁部分１０２が再配置される。圧縮後の第３データＣ２は、２値化された差分データＹ０〜Ｙ６の絶対値部分の有効桁部分１０２における任意の１ビットのデータと基準データにおける同位置の１ビットのデータとを合成して作成される。なお、任意の１ビットのデータと基準データにおける同位置の１ビットのデータとは、図示の例では２ビット目のデータとなる。
【００３８】
また、図示の例では、第３データＣ２の０ビット目に基準データＤ０の２ビット目が配置され、１ビット目には差分データＹ０の２ビット目が配置され、以降ｘビット目には差分データＹｘ−１の２ビット目が順次配置される。これにより、第３データＣ２は、「１１１０００１１ｂ」＝ｅ３ｈとなる。
【００３９】
第３データ以降の第４、第５データは、それぞれ基準データの１ビット目、０ビット目のデータと差分データの１ビット目、０ビット目のデータを用いて合成される（第三の合成手段）。これにより、第４データは「１０００１１１１ｂ」＝８ｆｈとなり、第５データは「１１１１００００ｂ」＝ｆ０ｈとなる。
【００４０】
図１では、データ配置を判りやすくするために、圧縮後のデータブロックにおける符号データ部１０６、差分データ部１０７、基準データの下位ビット部１０８は、表示文字が転倒表示されている。
【００４１】
以上のように、基準データを分割配置し、ブロック長指示部１０４、符号データ部１０６、基準データの下位ビット部１０８を組合せて圧縮後の合成データを合成する。これにより、差分データ中に含まれる冗長データ部１０１を容易に除外することができ、８バイトデータを５バイトデータにデータ圧縮することができる。
【００４２】
また、ハフマン符号化方式等と異なり、符号化テーブルを参照する必要も無く、簡単なハードウェア回路の構成で効果的なデータ圧縮が実現できることが判る。また、簡単なハードウェア構成で実現可能であることから、データの転送速度と同期することが可能であるような高速の圧縮速度で圧縮が可能になる。
【００４３】
本実施形態では、差分データを作成する際に、データが１→２５５と変化する場合には、差分値を＋２５４と判断せず、−２とする。また、０→２５５の場合、−１とする。この差分処理に関しては、特定データ長における２つのデータ間差分距離を表記する一般的手段である。これにより、８ビットデータ長では、２つのデータ間における差分データは、１ビットの符号と７ビットの差分データで表記することができる。本実施形態では、８ビットデータ長で、図１に示す差分データ部１０７の有効桁部分の最大サイズは、７ビット分になることが判る。
【００４４】
本実施形態では、シリアル出力されてくる画像データをそのまま圧縮処理している。しかしながら、スキャナ等のラインセンサを用いた画像読取装置では、出力されてきたデータを１ライン分バッファリングする。そして、このバッファリングしたデータと次ラインで出力されてきたデータとの同一画素における差分を取り、この差分データを用いて上述したデータ圧縮を行ってもよい。この差分法による前処理は圧縮前処理として一般的に知られた方法である。
【００４５】
本実施形態においても、データ圧縮処理を実行する際に、同一のデータが連続する場合には、連続するデータを基準データとして、当該基準データとその連続数を表すデータを用いたランレングス的圧縮方式に変更してデータ圧縮を行う。
【００４６】
図３は、同一のデータが連続する場合に、連続するデータを基準データとして、データ圧縮を行った際のデータ圧縮処理の概要を示す図である。
【００４７】
図３において、圧縮前データＫ０は、連続する２４個のデータＤ０，Ｄ１，・・・，Ｄ２３で構成され、いずれの値も同じ７６ｈとする。１１０は、圧縮前の基準データＤ０（＝７６ｈ）を２進数表示したものである。１１１は、圧縮前の基準データＤ０の上位データ部であり、１１２は、圧縮前データＤ０の最下位ビットデータである。
【００４８】
本実施形態におけるランレングス的圧縮方式では、圧縮後のデータブロックのデータ長が２バイトになるので、データを圧縮する際に、図２に示した変換表を用いて、圧縮後の第１データのブロック長指示部１１６として、０ビット目に「１」が配置される。そして、１１３に示す圧縮後データの第１データの１〜７ビット目に、基準データＤ０の上位ビット部１１１である１〜７ビット目が配置される。
【００４９】
次に、圧縮後の第２データの０ビット目である１１５には、基準データＤ０の最下位ビットデータ１１２が配置される。続いて、圧縮後の第２データの１〜７ビット目である１１４には、圧縮前データの連続数を表すデータが配置される。本実施形態では、連続する基準データが２４個であることから、「００１１０００ｂ」とする。これにより、特別なコマンドを発行すること無く、上述した圧縮処理を拡張する形でランレングス的圧縮方式に移行することができる。
【００５０】
本発明の圧縮処理を実施している途中でランレングス的圧縮方式に変更する判断基準として、データの連続数が１ブロック長以上となったことを用いるのが好適である。例えば、自然画像において、同一データが２〜３個程度連続するときは、画像の濃度がゆっくりと変化するグラデーション状態であり、数個のデータが同一値で連続した位置の前後のデータも大きな差分値を取らない緩慢な変化となる。このように緩慢な変化をするデータに対しては、２〜３個程度の同一データが連続した状態でランレングス的圧縮方式を用いるより、本実施形態での圧縮処理を使用しデータを圧縮する方が、圧縮率が向上する。
【００５１】
図４は、データ圧縮処理を選択的に実行するための処理の一例を示すフローチャート図である。
【００５２】
図４において、まず、１ブロック分のデータが圧縮される（ステップＳ１０１）。次に、基準データと同一のデータが連続するか否かが判断される（ステップＳ１０２）。基準データに続いて同一のデータが連続する場合は、基準データ以降のデータについて、連続した同一データの数が１ブロック長以上かが判断される（ステップＳ１０３）。１ブロック長以上の場合には、基準データ以降の同一の連続データに対して、第２の圧縮処理によりデータ圧縮が行われる（ステップＳ１０４）。
【００５３】
一方、ステップＳ１０３において、連続したデータの数が１ブロック長より小さい場合には、第１の圧縮処理によりデータ圧縮が行われる（ステップＳ１０５）。このように、特別なコマンドを用いること無く、簡易的にランレングス圧縮方式を利用して、データの変化が少ない領域での圧縮率を向上させることができる。
【００５４】
回路構成が複雑になってもよく、より圧縮率を向上させることを目標とする場合は、次の２つの圧縮を同時に実施する回路とし、両方の圧縮率を比較してより圧縮率の高い圧縮データを選択する構成にしてもよい。すなわち、一例として、２ブロックに渡り、３個以上の同一データが連続しているという条件や、１ブロック長以上のデータが連続しているという条件等で、第１の圧縮処理の圧縮結果と第２の圧縮処理の圧縮結果との比較を行う。そして、その圧縮率が高い方の圧縮結果を出力する回路構成としてもよい。
【００５５】
図５〜図１０は、前述の圧縮処理により圧縮されたデータから枠（エッジ）検出を行う、枠検出方法の概要を示す図である。
【００５６】
図５は、読取可能領域よりも小さな原稿を読取った際の読取画像の中に含まれる原稿画像と枠領域との画像を示す図である。図６は、データに枠領域が黒筋として表されることを示す図である。
【００５７】
図６では、原稿２０２を載せるガラス板２０１の一部に一様な反射率からなる白色シェーディング板２００を配置し、原稿の画像の読み取り前にシェーディング補正データの取得を行う。
【００５８】
図６において、原稿２０２を矢印２０３の方向に搬送すると、原稿２０２に対して光源２０６から光が斜めに照射されることで、原稿２０２の周縁部に影２０５が生じる。この影２０５は、原稿２０２の画像と共にラインセンサ２０４で読み取られると、画像データの周縁部に黒い筋として現れる。この黒い筋が、図５で示す枠の境界となり、枠の境界を基準とした外側領域が枠領域１１７となる。
【００５９】
図５で示す枠領域１１７ａにあって、圧縮前の連続した画像データブロックＫＯが８個のデータ（Ｋ０＝Ｄ０，Ｄ１，Ｄ２，…Ｄ７）で構成されているものとする。枠領域１１７ａでは、ほぼ同濃度の画像データとなるので、Ｄ０〜Ｄ７を例えばｆｆｈ付近の値で表すこととする。なお、この例では、枠領域１１７を略白色の領域と想定しているが、枠領域１１７を略黒色の領域とし、画像データが００ｈ付近を示す場合も同様の処理を行うものと考えてよい。図７の１２０の部分は、圧縮前の基準データを２進表示したものである。
【００６０】
これらの画像データを前述したランレングス的圧縮方式にて圧縮すると、圧縮後の画像データは、図７のＣ０のようになる。
【００６１】
図５の枠領域１１７ａは、同濃度の画像データであるため、圧縮後のデータ容量は２バイトになり、図２に示す変換表よりＤ０の０ビット目（図７の１２３）は、１となることが分かる。
【００６２】
ここでは、連続する８個のデータをランレングス的圧縮方式にて圧縮した場合を例示したが、９個以上の連続するデータをランレングス的圧縮することも可能である(最大１２７まで)。
【００６３】
図５に示す枠領域１１７のＡ−Ｂ間で上記圧縮処理を続けていくと、ラインセンサ２０４の特性等により読み取られた画像濃度は画素ごとに若干の変化があることも考えられ、画像圧縮データは、図８に示すように、２〜３バイト程度の圧縮データが連続した状態になることが多い。データ長指示部に注目すると、データ長部が短いデータが連続していることから高圧縮状態が続いていることが分かる。
【００６４】
図５の領域１１８ａを、枠領域１１７、原稿２０２の周縁部領域、及び原稿２０２の読み取られた原稿画像領域１１８で構成された画像データとする。領域１１８ａの圧縮前データを８個のデータＫ１で表すと、Ｋ１＝Ｄ８，Ｄ９，…Ｄ１５で構成される。
【００６５】
ここで、Ｄ８，Ｄ９，Ｄ１０を枠領域１１７の画像データとし、Ｄ１１を原稿２０２の周縁部の画像データとし、Ｄ１２，Ｄ１３，Ｄ１４，Ｄ１５を読取画像領域１１８の画像データとする。そして、それぞれの画像データを、例えばＤ８（＝ｆｂｈ），Ｄ９（＝ｆｅｈ），Ｄ１０（＝００ｈ），Ｄ１１（＝０２ｈ），Ｄ１２（＝４１ｈ），Ｄ１３（＝７３ｈ），Ｄ１４（＝７５ｈ），Ｄ１５（＝７８ｈ）とする。
【００６６】
図５の領域１１８ａを前述したランレングス的圧縮方式を併用して圧縮を行うと、図９に示すようになる。
【００６７】
図９から、画像圧縮範囲が枠領域１１７から原稿２０２の周縁部領域に変化すると、データ長指示部１２７に大きな変化が現れることが分かる。
【００６８】
これにより、圧縮した画像データにおいて、ライン先頭からデータ長の短い高圧縮状態が続いた後に、データ長が長い低圧縮状態へと変化した部分を枠として検出することができる。逆に、ライン後端から先頭方向に対して圧縮状態が変化した部分も枠として検出することができる。
【００６９】
また、枠領域１１７でラインセンサ２０４の特性により画素ごとに若干の濃度の差異があった場合でも、データ長から高圧縮状態と判断できるため、データ長が長い低圧縮状態へと変化した部分を枠として検出することができる。これらの枠検出方法では、圧縮された画像データのまま枠検出ができ、一度伸長して枠を検出し、再び画像を圧縮する必要がないため、ＣＰＵやメモリに大きな負荷をかけることなく最小限のデータ容量で枠を検出することが可能となる。
【００７０】
図１０は、枠領域から原稿画像領域に入った部分に均一な濃度の画像１２８が連続しているときの画像を示す図である。画像１２８のデータを７６ｈとした場合、領域１１８ａを前述したランレングス的圧縮方式を併用して圧縮を行うと、図１１に示すようになる。
【００７１】
図１１において、前述したデータ長算出方法により算出されたデータ長１３０に注目すると、枠を境にしても圧縮後におけるデータ長に差が生じていないことがわかる。これは読取画像領域１１８内で均一な濃度の画像１２８のデータ（７６ｈ）が連続しているからと考えられる。一方、枠領域１１７の画像データ１３１と読取画像領域１１８の画像データ１３２とに注目すると、圧縮画像データに大きな差が生じていることがわかる。
【００７２】
これにより、圧縮した画像データにおいてライン先頭から同じ圧縮データが続いた後に、データ長に変化がなくても圧縮データに大きめの変化があった部分を枠として検出することができる。逆に、ライン後端から先頭方向に対して圧縮データが大きめに変化した部分も枠として検出することができる。
【００７３】
画像データ長の違いにより枠の有無を検出できない場合には、圧縮後の画像データにおける基準データ部分の変化によって枠の有無を検出することが可能となる。これらの枠検出方法では、圧縮された画像データを一度伸長して枠を検出した後、再び画像データを圧縮する必要がないため、ＣＰＵやメモリに大きな負荷をかけることなく、最小限のデータ容量で枠を検出することが可能となる。
【００７４】
図１２は、前述したデータ圧縮処理により圧縮した画像データを伸長することなく、画像データの枠を検出する処理を説明するためのフローチャート図である。
【００７５】
図１２において、まず、図４で前述した第１の圧縮処理及び第２の圧縮処理を画像データの状態に応じて適用して、ブロックごとに画像データが圧縮される（ステップＳ１０６）。次に、略同一データが例えば連続した一定数のラインの先頭部又は末端部等に存在するかを判断する（ステップＳ１０７）。具体的には、データ長が２バイトの圧縮データが一定ライン数以上連続しているか否かを判断し、データ長が２バイトの圧縮データが一定ライン数以上連続していない場合は、ほとんどが第１の圧縮処理により圧縮されたと判断し、枠検出を行わず、本処理を終了する。一方、データ長が２バイトの圧縮データが一定ライン数以上連続している場合は、枠検出モードに進み（ステップＳ１０８）、圧縮データの一部分について圧縮データ長の変化を監視して、圧縮データ長に大きな変化があるか否かを判断する（ステップＳ１０９）。そして、圧縮データ長に大きな変化がある場合は、当該箇所を枠として検出する。一方、圧縮データ長に大きな変化がない場合は、圧縮後の第１データの基準データ部（濃度）に大きな変化があるかを監視して（ステップＳ１１０）、圧縮後の第１データの基準データ部に大きな変化がなかった場合は、当該一部分に枠はなかったとして処理を終了する。一方、圧縮後の第１データの基準データ部に大きな変化があった場合は、当該箇所を枠として検出し、処理を終了する。なお、本処理は、画像データ全体にわたるまで必要な回数行う。
【００７６】
このように、本実施形態では、ハードウェアの回路規模の増大や処理の複雑化を招くことなく画像の圧縮を行い、圧縮した画像のデータ長と画像データから枠の検出を行うことが可能となる。
【００７７】
なお、本発明は、上記実施形態に例示したものに限定されるものではなく、本発明の要旨を逸脱しない範囲において適宜変更可能である。
【００７８】
例えば、本発明の処理を画像読取装置と画像読取装置に接続されたホストＰＣ等の外部装置とで行ってもよい。この場合、画像読取装置と外部装置とを含むシステムが本発明の画像処理装置に相当し、例えば、画像読取装置で前述したデータ圧縮処理を行い、外部装置で前述した枠の検出処理を行うようにしてもよい。
【００７９】
また、本発明のデータ圧縮処理と枠検出処理は、ハードウェア回路で実現することが好適であるが、その一部またはすべてをソフトウェアで実現してもよい。
【００８０】
この場合、本発明の目的は、以下の処理を実行することによっても達成することができる。即ち、上述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）が記憶媒体に格納されたプログラムコードを読み出す処理である。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施の形態の機能を実現することになり、そのプログラムコード及び該プログラムコードを記憶した記憶媒体は本発明を構成することになる。
【００８１】
また、プログラムコードを供給するための記憶媒体としては、次のものを用いることができる。例えば、フロッピー（登録商標）ディスク、ハードディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷ、ＤＶＤ−ＲＯＭ、ＤＶＤ−ＲＡＭ、ＤＶＤ−ＲＷ、ＤＶＤ＋ＲＷ、磁気テープ、不揮発性のメモリカード、ＲＯＭ等である。または、プログラムコードをネットワークを介してダウンロードしてもよい。
【００８２】
また、コンピュータが読み出したプログラムコードを実行することにより、上記実施の形態の機能が実現される場合も本発明に含まれる。加えて、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているＯＳ（オペレーティングシステム）等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。
【００８３】
更に、前述した実施形態の機能が以下の処理によって実現される場合も本発明に含まれる。即ち、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれる。その後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵ等が実際の処理の一部または全部を行う場合である。
【００８４】
また、コンピュータが読み出したプログラムコードを実行することにより、前述した各実施の形態の機能が実現される場合も本発明に含まれる。加えて、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているＯＳなどが実際の処理の一部または全部を行い、その処理によって前述した実施の形態の機能が実現する場合も含まれる。この場合、上記プログラムは、該プログラムを記憶した記憶媒体から直接、またはインターネット、商用ネットワーク、若しくはローカルエリアネットワーク等に接続された不図示の他のコンピュータやデータベース等からダウンロードすることにより供給される。
【符号の説明】
【００８５】
１００  差分データ部
１０１  冗長データ部
１０２  差分データの絶対値部分の有効桁部分
１０３  符号部分
１０４  ブロック長指示部
１０５  基準データの上位ビット部
１０６  圧縮後の符号データ部
１０７  圧縮後の差分データ部
１０８  基準データの下位ビット部
１１０  圧縮前の基準データ
１１７  枠領域
１１８  原稿画像領域
【図１】
2010273264.tif 000003
【図２】
2010273264.tif 000004
【図３】
2010273264.tif 000005
【図４】
2010273264.tif 000006
【図５】
2010273264.tif 000007
【図６】
2010273264.tif 000008
【図７】
2010273264.tif 000009
【図８】
2010273264.tif 000010
【図９】
2010273264.tif 000011
【図１０】
2010273264.tif 000012
【図１１】
2010273264.tif 000013
【図１２】
2010273264.tif 000014