JP3923315B2 - Data compression device - Google Patents

Data compression device Download PDF

Info

Publication number
JP3923315B2
JP3923315B2 JP2002001035A JP2002001035A JP3923315B2 JP 3923315 B2 JP3923315 B2 JP 3923315B2 JP 2002001035 A JP2002001035 A JP 2002001035A JP 2002001035 A JP2002001035 A JP 2002001035A JP 3923315 B2 JP3923315 B2 JP 3923315B2
Authority
JP
Japan
Prior art keywords
data
unit
image
line
line data
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.)
Expired - Fee Related
Application number
JP2002001035A
Other languages
Japanese (ja)
Other versions
JP2003204435A (en
Inventor
広隆 千葉
嗣男 野田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2002001035A priority Critical patent/JP3923315B2/en
Publication of JP2003204435A publication Critical patent/JP2003204435A/en
Application granted granted Critical
Publication of JP3923315B2 publication Critical patent/JP3923315B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Description

【0001】
【発明の属する技術分野】
イメ−ジスキャナ等の画像読取装置によって読み取られた画像データの圧縮に好適なデータ圧縮装置に関する。
【0002】
【従来の技術】
一般に、写真や絵などの原稿を画像として読み取る装置としてイメ−ジスキャナが用いられる。このイメ−ジスキャナは、原稿の読み取り方式によって、フラットベッド型、シ−トフィード型(自動給紙型)、及びハンディ型の3種類のタイプに大別される。フラットベッド型及びシ−トフィード型は、いずれも、原稿を装置にセットすることで装置が自身の制御可能な速度で画像を読み取る。フラットベッド型は原稿を平らな台に置いて読み取り、シ−トフィード型は原稿をローラで送りながら読み取る。これらに対し、ハンディ型は原稿の上をユーザが手動で移動させることに読み取る。
【0003】
これらのスキャナは、いずれも、原稿に光を照射して、その反射光の明度(濃淡)をCCD(Charge Coupled Device)やCIS(Constant Image Sensor)などで読み取るようになっている。これらのスキャナの読み取り単位は、原稿を横方向に細かく分割したライン単位である。そのため、CCDやCISも細かいセンサが一直線に並んだものを使用する。
【0004】
図12は、ハンディ型スキャナの一例の外観図である。
同図に示すスキャナ100は、PCカード140を介してパーソナルコンピュータ等の情報処理装置(不図示)に接続する形態のものである。
【0005】
スキャナ100は、スキャナ部110、ケ−ブル120、コネクタ部130及びPCカード140を備えている。スキャナ部110は略直方体または円筒の形状をしており、その長手方向の一方の側面は画像読み取り面111aとなっており、この面111aは画像読み取り時に原稿用紙(不図示)と接触する面であり、画像読取部112と移動量検出部113が設けられている。
【0006】
画像読取部112は、光学的に原稿用紙上の画像を読み取るものであり、原稿用紙に対して光を照射する光源(例えば、発行ダイオードと冷陰極管等)と、原稿用紙からの反射光を受光し、これを画像データに変換する受光素子(CCDやCIS等)と、該反射光を該受光素子に入光させるための鏡(CCDの場合)やレンズ(CISの場合)等から構成されている。
【0007】
移動量検出部113は、画像読み取り時における画像読取部112の原稿用紙上での移動量を検出するものである。移動量検出部113は、回転ローラ(不図示)及びその回転ローラに付設されたロータリエンコーダ(不図示)等から構成される。該回転ローラは、その一部が画像読み取り面111aから突出されて回転自在に設けられており、原稿用紙上に画像読み取り面111aを当接させてスキャナ部110を移動させると、回転ローラが原稿用紙と接触ながらスキャナ部110の移動に伴って回転するようになっている。ロータリエンコーダは、この回転ローラの回転量が所定量になる毎に移動量検出パルス信号を出力する。このように、原稿用紙上に画像読み取り面111aを当接させながらスキャナ部110を移動させると、原稿用紙に対する画像読取部112の相対的な移動量がロータリエンコーダによって検出される。
【0008】
また、スキャナ部110の画像読み取り面111aと対向する面には開始中断指示部114が設けられている。この開始中断指示部114は、例えば、押しボタン形式のスイッチとなっており押下する毎にオン/オフするようになっており、最初に押下するとオンとなりスキャナ100が起動され原稿の読み取りが開始可能となる。
【0009】
また、スキャナ部110の底面にはPCカード140用のコネクタ部130が接続されたケーブル120が付設されている。PCカード140は、情報処理装置(不図示)のPCカ−ド用スロッットに挿入されるカード型のスロットであり、一方の側面(第1の側面)には該ケーブル120が接続されたコネクタ部130が接続される第1のインタフェース140aが設けられ、該第1の側面と対向する他方の側面には情報処理装置とPCカード用スロット内で接続される第2のインタフェース140bが設けられている。又、PCカード140内には後述する読取制御部が設けられている。
【0010】
画像読取部112は、該読取制御部から一定周期Tで入力される駆動信号をトリガとして、原稿用紙の1ライン分の画像を順次読み込み、これを画像データとして読取制御部に出力する。画像読取部112は、上記一定周期T内で1ライン分の画像データを処理するようになっている。
【0011】
上記構成のハンディ型スキャナ100においては、画像読取部112によって読み取った画像データを情報処理装置に確実に転送するために、情報処理装置とハンディ型スキャナ100間のデータ転送速度に応じてPCカード140内の読取制御部内に画像保持部を設けている。
【0012】
ところで、上記ハンディ型スキャナ100においては、原稿用紙の画像を読み取る際、ユーザが手動でスキャナ部110を移動するため、しばしば、上記一定周期Tよりも速くスキャナ部110を移動させる場合が生じうる。このような場合には、上記一定周期T内に画像読取部112が原稿の2ライン以上を移動することになり、画像読取部112は最初のライン以外の画像データを処理することはできない。このため、原稿の画像の読み取りにおいて部分的に1ライン以上の画像抜けが発生してしまう。このような場合には、情報処理装置側で最終的に生成される画像がその走査方向に縮んでしまうという不具合が生じる。
【0013】
そこで、この問題を解決するための発明(従来発明1)が、特開2000−349984号公報として出願されている。この公報には、移動量検出部によって検出されたスキャナ部の移動量に応じて画像データを生成する画像データ生成部を備えた画像読取装置が開示されており、ユーザのスキャナ部の移動操作がデータ処理部における駆動信号の周期よりも速くなった場合に、その移動量に応じてかかる部分の画像データをコピーすることにより、スキャナ部の移動速度の影響を受けずに走査方向に縮みのない画像を得ることができる技術が開示されている。
【0014】
また、画像読取装置(ハンディ型スキャナ100)の主走査方向の高解像度化に画像読取装置のI/F(PCカード140の第2のインタフェース140b)と情報処理装置間のデータ転送速度が追いつかない場合には、読取制御部内に画像読取部112が読み取った全画像データを一時的に保持するバッファを設ける必要があるが、高解像度に伴ってバッファの容量が増大し、画像読取装置の製造コストが増大する。
【0015】
そこで、本出願人は、このような問題を解決する発明として、特許出願番号2001−91084号の発明(従来発明2)を先に出願した。この従来発明2の画像読取装置の機能構成を示すブロック図を図13に、その動作タイムチャートを図14に示す。尚、便宜上、図13において、画像読取システム、画像読取装置及びいくつかの機能ブロックの符号を特許出願番号2001−91084号の図面と異なったものとしている。符号を変更した機能ブロック及び装置の符号は以下の通りである。尚、( )内の符号は出願図面の符号である。
【0016】
100(1)・・・・・画像読取装置
150(10)・・・・データ処理装置
141(31)・・・・読取制御部
142(102)・・・画像信号処理部
143(33)・・・・I/F部
151(101)・・・転送データ生成部
152(102)・・・データ圧縮部
153(103)・・・転送状態検出部
154(104)・・・切替部
200(40)・・・・情報処理装置
300(100)・・・画像読取システム
この従来発明2においては、画像読取装置100はスキャナ部110とデータ処理部150とから構成されている。スキャナ部110は、画像読取部112と移動量検出部113から構成されている。また、データ処理部150は、画像信号処理部142、読取制御部141及びI/F部143から構成されている。また、読取制御部141は、転送データ生成部151、データ圧縮部152、転送状態検出部153及び切替部154から構成されている。
【0017】
画像読取部112は、読取制御部114から一定周期T(T1,T2,・・・T9)で入力される駆動信号S2(図14(b)参照)をトリがとして、原稿用紙における1ライン分の画像を順次読み込み、これを画像データD1(D1−1,D1−2,・・・D1−9)として画像信号処理部142に出力する(図14(c)参照)。この画像データD1は、原稿用紙の1ライン分のアナログデータである。画像信号処理部142は、入力される画像データD1を二値化画像データD2(D2−1,D2−2,・・・,D2−3)に変換して転送データ生成部151に出力する(図14(d)参照)。
【0018】
移動量検出部113は、回転ローラが一定角度回転する毎にパルス状の移動量検出パルス信号S1(S1−1,S1−2,・・・,S1−9)を転送データ生成部151に出力する(図14(a)参照)。転送データ生成部151は、スキャナ部110の移動量検出部113から移動量検出パルス信号S1が入力されるつどに(図14(e)参照)、画像信号処理部142から入力される二値化画像データD2と移動量M(前記駆動周期T内に移動量検出部113から入力される移動量検出パルス信号S1の個数)とからなる転送データD3を切替部154に出力する(図14(f)参照)。この転送データD3は、不図示の格納部に一時的に格納されるようになっている。
【0019】
データ圧縮部152は、転送データ生成部151によって生成され、該格納部に格納された転送データD3について、連続する複数の転送データD3毎に、特定の転送データD3以外の転送データD3を間引くと共に、該間引かれた転送データD3に含まれる移動量Mを上記特定の転送データD3に含まれる移動量Mに加算して、上記特定の転送データD3に含まれる画像データと該加算された移動量Mとから成る圧縮データD4(D4−1,D4−2)を生成し、それを切替部154に出力する(図14(g)参照)。
【0020】
転送状態検出部153は、前記ラインバッファにおける単位時間あたりの入力速度及び出力速度を測定することにより、I/F部143の転送速度を検出し、その検出結果を切替部154に出力する。
【0021】
切替部154は、転送状態検出部153によって検出された該検出結果に応じて、転送データ生成部151によって生成された転送デーD3またはデータ圧縮部152によって生成された圧縮データD4のいずれか一方をI/F部143に出力する。この場合、前記ラインバッファにおける入力/出力速度が予め設定された速度よりも遅い場合には転送速度が遅いと判断して、データ圧縮部152によって生成された圧縮データD4をI/F部143に出力する(圧縮転送モード)。一方、前記検出結果において前記ラインバッファにおける入力/出力速度が予め設定された速度以上である場合には転送速度が速いと判断して、転送データ生成部151によって生成された転送データD3をI/F部143に送信する(通常転送モード)。
【0022】
情報処理装置200は、I/F部143から転送データD3または圧縮データD4を受信すると、それらの画像データに付加されている移動量Mを取得し、その画像データが移動量Mと同数となるようにこの画像データを(M−1)回複写することによりラインが欠けていない画像を復元する。
【0023】
図14は、図14(f)に示された前記通常転送モードで転送される転送データD3を情報処理装置200側で復元する方法を説明する図である。
図15(a)に示された二値化画像データD2(D2−1,D2−2,・・・,D2−7)とそれら各二値化画像データD2に対応する移動量Mは、転送データ生成部151により同図(b)に示す二値化画像データ(A−1,A−2,A−4,A−7)とそれら各二値化画像データに対応する移動量Mとで構成される4個の転送データD3−1.D3−2,D3−3及びD3−4に変換される。
【0024】
情報処理装置200は、I/F部143から転送されてくるそれら4個の転送データD3を、上記復元方法により、同図(c)に示すように6ラインの復元画像データB(B−1,B−2,・・・,B−6)に復元する。この場合は、転送データD3−2の二値化画像データA−2(2ライン目の二値化画像データ)を2回コピーして、3ライン目の復元画像像データB−3と4ライン目の復元画像データB−4を復元する。
【0025】
次に、図16は図14(g)に示された圧縮転送モードで転送される圧縮データD4を情報処理装置200側で復元する方法を説明する図である。同図において,(a)及び(b)は上述した図15(a)及び(b)と同一なのでそれらの説明は省略する。圧縮転送モードにおいては、図16(c)に示された2個の圧縮データD4−1,D−2が情報処理装置200に転送される。圧縮データD4−1は二値化画像データA−1と移動量“4”から構成され、圧縮データD4−2は二値化画像データA−2と移動量“2”から構成される。情報処理装置200は、これら2個の圧縮データD4−1,D4−2を受信すると、それらの圧縮データに含まれる二値化画像データ(A−1,A−2)を、同じくそれらの圧縮データに含まれる移動量M(“4”、“2”)の値に応じて、図16(d)に示すように復元する。
【0026】
すなわち、この場合は、1ライン目の二値化画像データA−1を3個コピーすることにより2〜4ライン目の二値化画像データ(B−2〜B−4)を復元し、4ライン目の二値化画像データA−4を1個コピーすることにより6ライン目の二値化画像データB−6を復元する。
【0027】
このように、従来発明2においては、画像読取装置側でI/F部143のデータ転送速度と所定の単位時間当たりに生成される転送データD3の量とを比較しながら通常転送モードと圧縮転送モードの2つのモードを切替えて転送データD3または圧縮データD4のいずれか一方を転送することにより、小容量のラインバッファで復元側で縮みのない2次元画像データを復元できるように読み取った画像データの転送を行っていた(ラインデータ間引きによるデータ転送速度向上方式)。
【0028】
【発明が解決しようとする課題】
上述したように、従来発明2では、1または複数ラインの画像データを間引くことにより空間解像度情報を欠落させてデータ圧縮を行い、発生する転送データD3の量にI/F部143のデータ転送速度の能力が追いつかない場合には、圧縮転送モードに切り替え、該データ圧縮によって生成された圧縮データD4を情報処理装置200に転送していた(図14(g)参照)。ここで、空間解像度情報とは、2次元空間画像を構成する画素の解像度のことである。
【0029】
しかしながら、従来発明2の方法では、人間が目視して読み込んだ画像データを確認する場合には問題が無かったが、例えば、図17(a)に示すような2次元コード400をスキャナ100による読み取り対象とした場合、ラインデータが間引かれることにより空間解像度情報が一部欠落するため、復元側では上記白黒の点を正しく解読することができなくなり、2次元コードの解読率が低下してしまい、復元に支障をきたすという問題が生じる。
【0030】
該2次元コードには、図17(b)に示す画像データやURL(Uniform Resource Locator)、MIDI(Musical Instrumental Digital Interface)データ等の各種マルチメディアデータ等の情報、さらには、テキストデータ等が白と黒の点として印刷されている。
【0031】
このように、従来発明2の方法は、2次元コード等のような空間解像度情報を一部欠落して転送すると復元側で元データの復元に支障をきたすようなコードのデータ圧縮には不適当であった。
【0032】
本発明は、画像読取装置に読み取られた画像やコード等のデータを空間解像度情報を保存しながら圧縮可能なデータ圧縮装置を提供することを目的とする。
【0033】
【課題を解決するための手段】
本発明のデータ圧縮装置は、原稿の画像をライン単位で読み取る画像読取手段により読み取られたラインデータを圧縮するデータ圧縮装置を前提とする。
【0034】
本発明のデータ圧縮装置は、ディジタル化された該ラインデータを入力し、該ラインデ ータの各画素の有効ビットがレベル方向に削減された中間ラインデータを生成する第1の画像データ生成手段と、該中間ラインデータの各画素から有効ビット以外のビットを削除して、有効ビットのみから成る画素がパッキングされた出力ラインデータを生成する第2の画像データ生成手段と、前記画像読取手段の移動量を示す信号を入力し、その信号から前記画像読取手段の移動速度を検出し、その移動速度と前記画像読取手段の駆動速度を比較して、前記移動速度が前記駆動速度よりも速いと評価した場合には、前記第1の画像データ生成手段及び前記第2の画像データ生成手段に前記有効ビット数を通知する移動速度評価手段を備える。そして、 前記第1の画像データ生成手段と前記第2の画像データ生成手段は、前記移動速度評価手段により、前記移動速度が前記駆動速度よりも速いと評価された場合にのみ、それぞれ、前記中間ラインデータと前記出力ラインデータの生成を行う。
【0035】
本発明のデータ圧縮装置によれば、画像読取手段の移動速度(ライン走査速度)と駆動転速度(画像読取手段のラインデータ読み取り速度)を比較し、移動速度が駆動速度よりも速いときのみ、有効ビット数を決定・通知し、その有効ビット数に基づいて、各画素の有効ビットがレベル方向に削減された中間ラインデータを作成する。そして、その中間ラインデータから、有効ビットのみから成る画素がパッキングされた出力ラインデータを生成する。したがって、ユーザの画像読み取り手段の移動操作速度が該画像読取手段の駆動速度よりも速い場合でも、ラインデータを、空間解像度情報を保存しながら圧縮・出力できる。このため、2次元コードをスキャンしながら読み取る場合でも、2次元コードの白黒の点を正しく解読できるようになり、2次元コードの解読率を向上できる。
【0036】
【発明の実施の形態】
以下、図面を参照しながら、本発明の実施形態を説明する。
図1は、本発明のデータ圧縮・復元方法の実施形態の原理を全体的に説明する図である。同図は、4ラインの入力ライン画像データ(入力ラインデータ)DI(DI−1,DI−2,DI−3,DI−4)を圧縮・復元する場合の例である。入力ラインデータDIの各画素のビット数(画素有効ビット)はN(例えば、N=8)とする(同図(a)参照)。
【0037】
まず、これら4ラインの入力ラインデータDIの各画素のレベル変換を行い、各画素の有効ビット数をNビット(例えば、N=8)からIビット(例えば、I=4)に削減し中間ラインデータDM(DM−1,DM−2,DM−3,DM−4)を生成する(同図(b)参照)。
【0038】
本発明では、画素の値(階調値等のレベル等)を示すビット列の中で有効なビット数Iを「レベル情報」と定義する。また、これらIビットのビット列を画素有効ビットIと定義する。さらに、画素値を示すビット列のMSB(Most Significant Bit) からLSB(Least Significant Bit)への方向をレベル方向と定義する。また、さらに、画素有効ビットIのビット数を変換する操作をレベル変換と定義する。本発明の画像データ圧縮においては、「レベル方向のビット数を削減するために、画素有効ビットNを画素有効ビットI(I<N)に変換するレベル変換が行われる。尚、後述するデータ復元の場合にはI≦Nとするレベル変換が施される。
【0039】
次に、パッキング変換を行い、中間ラインデータDM(DM−1,DM−2,DM−3,DM−4)から出力ラインデータ(圧縮ラインデータ)DO(DO−1,DO−2,DO−3,DO−4)を生成する(同図(c)参照)。
【0040】
このパッキング変換は、中間ラインデータDMの画素について、その画素有効ビットI以外のビットを削除することにより、該画素の値を画素有効ビットIで表現し、画素有効ビットIのみからなる画素を画素の配列順(ラインデータの主走査方向)にパッキングする操作である。
【0041】
このパッキング変換により、中間ラインデータDMから出力ラインデータDOが生成される。入力ラインデータDIの画素有効ビットN(N=8),中間ラインデータの画素有効ビットI(I=4)の場合は、パッキング変換により、入力ラインデータDIはデータ量が1/2の出力ラインデータに圧縮される。
【0042】
該出力ラインデータDOは、レベル情報(画素有効ビットIのビット数,すなわち,I=4)と共に情報処理装置等の復元装置に転送され、該復元装置により復元ラインデータB(B−1,B−2,B−3,B−4)に復元される(同図(d)参照)。この復元により生成される該復元ラインデータBの画素の有効ビットMは8ビットであり、前記入力ラインデータDIの画素の画素有効ビットIと同様である。したがって、両データのデータ長は同じである。
【0043】
このように、本実施形態のデータ圧縮方法においては、入力ラインデータDIを圧縮する際、画素のレベル変換と該レベル変換により削減された画素のビット数に応じてパッキング単位を切り替える。このように、画素のレベル情報のレベル方向の圧縮により入力ラインデータDIを圧縮することで、入力ラインデータDIをその空間解像度情報を保存したまま圧縮することができる。したがって、2次元コード等のように、空間解像度情報の欠落が復元に支障をきたすデータの圧縮に好適である。
【0044】
図2は、本発明の実施形態のデータ圧縮・復元方法の原理を、入力ラインデータDI,中間ラインデータDM,出力ラインデータDO,及び復元ラインデータBの画素に着目して説明する図である。同図は、入力ラインデータの画素有効ビットNのビット数が8ビット(N=8)、レベル変換された中間ラインデータDMの画素有効ビットIのビット数が4ビット(I=8)、出力ラインデータDOの画素有効ビットMのビット数が(M=8、1)の場合の例を示している。
【0045】
図2には,2つの画素PI(PI−1,PI−2)に対して、レベル変換及びパッキング変換を順次施す圧縮処理と、該圧縮処理により生成される圧縮ラインデータの転送(以上が圧縮側での処理)、及びその圧縮ラインデータに対してアンパッキング変換及びレベル変換を順次施す該圧縮ラインデータの復元処理が示されている。また、同図には、2種類のデータ復元方法が示されている。
【0046】
まず、画像データの圧縮方法について説明する。圧縮においては、まず、入力ラインデータDIの1画素目の画素PI−1と2画素目の画素PI−2(同図(a)参照)について、上位4ビットを下位方向に4ビットシフトした後、下位4ビットに“0”を設定するレベル変換を行う(同図(b)参照)。この場合、画素有効ビットIのビット数(レベル情報)Iは“4”である。また、これらの画素PI−1,PI−2は、図1(b)の中間ラインデータDMの画素である。
【0047】
次に、該画素PI−1,PI−2から下位4ビットを削除し、該画素PI−1と該画素PI−2の上位4ビットをパッキングするパッキング変換を施して8ビットの圧縮ラインデータ(パッキングデータ)DPを生成する(図2(c)参照)。このような圧縮方法により、入力ラインデータDIが、データ量が1/2の出力ラインデータ(圧縮ラインデータ)DPに変換される(図1(c)参照)。そして、この圧縮ラインデータDPは、復元装置側に転送される(図2(d)、(g)参照)。
【0048】
ホストマシンは、該圧縮ラインデータDPを受信すると。それに対してアンパッキング変換及びレベル変換を施し、ラインデータを復元する。ここでは、まず、復元ラインデータBの画素有効ビットMの画素を,入力ラインデータDIの画素の画素有効ビットMと同一のビット数Mに復元する画像データ復元方法の第一実施例について、図2(d)〜(f)を参照しながら説明する。
【0049】
まず、同図(d)に示すように、圧縮ラインデータDPに対してアンパッキング変換を施す。このアンパッキング変換においては、前記レベル情報(この場合、I=4ビット)を基に前記パッキング変換と逆の変換を行い、圧縮側で同図(b)に示すレベル変換により得られた1画素目のデータ(レベル変換データ)PL−1と2画素目のデータ(レベル変換データ)PL−2を復元する(同図(e)参照)。
【0050】
続いて、同図(e)に示すように、該復元された1画素目のデータPL−1と2画素目のデータPL−2に対してレベル変換を施し、Mビット(画素有効ビットM)の1画素目の復元画素データPLR−1,2画素目の復元画像データPLR−2を生成する(同図(f)参照)。同図(e)に示すレベル変換処理においては、画素データPL−1、PL−2の右4ビット(下位4ビット)を上位方向に4ビットシフトして、下位4ビットに“0”を設定して、同図(f)に示す8ビット(M=8)の画素データPLR−1,PLR−2を生成している。
【0051】
この第1の実施例の画像データ復元方法では、復元画素データPLR(PLR−1,PLR−2)の値が入力ラインデータデータDIの同一画素データPI(PI−1、PI−2)の値と同じビット数(同じレベル)で表現されるように復元する。これにより、階調画像等を復元(生成)できる。
【0052】
次に、画像データ復元方法の第2の実施例を図2(g)〜(i)を参照しながら説明する。この実施例では2値の画素データを復元(生成)する。
まず、同図(g)に示す圧縮ラインデータDPを前記第一の実施例と同様な方法によりアンパッキング変換して、1画素目のデータPL−1と2画素目のデータPL−2を復元する(同図(h)参照)。続いて、同図(h)に示すように、これら2つの画素データPL−1,PL−2に対して2値化処理を行い、1画素目を“1”、2画素目を“0”とする。そして、これら二値化された2つの1ビット(M=1)の画素データを8ビットの復元画像データPLR’の1ビット目と2ビット目に設定する(同図(i)参照)。この2値化処理においては2進数の値“1000”(=8)を閾値とする量子化処理を行う。
【0053】
このように、第2の実施例の画像データ復元方法では、多値画像データであった入力ラインデータDIの画素を画素有効ビットM(M=1)の2値画像データに復元する。ところで、上記第1及び第2の画像データ復元方法におけるアンパッキング変換及びレベル変換においては、いずれも、画像データ圧縮におけるレベル変換で生成された中間ラインデータの画素有効ビットIのビット数(I=4ビットのレベル情報)を参考にする。
【0054】
図3は、本発明のデータ圧縮装置の第1の実施形態を含む画像読取装置のシステム構成を示すブロック図である。
同図に示す画像読取装置1は、読取制御部3とセンサ部40とで構成されている。センサ部40はイメ−ジ情報を光信号として読み取り、それを電気的信号に変換して、該イメ−ジ情報の画像データを出力するイメ−ジセンサである。
【0055】
データ処理部3は、データ圧縮部10、画像信号処理部20及びI/F部(データ転送部)30を備える。画像信号処理部20とI/F部30は、それぞれ、前述した図13の画像信号処理部142、I/F部143と同様な機能を有するものであり、ここでは詳しい説明は省略する。
【0056】
データ圧縮部10は本発明のデータ圧縮装置の第1の実施形態であり、レベル変換画像データ生成部11とパッキングデータ生成部12を備える。レベル変換画像データ生成部12は、画像信号処理部20から入力されるラインデータに対して前述した図2(b)に示すレベル変換処理を施し、該レベル変換処理により得られた画素有効ビットIの画素データから構成される中間ラインデータをパッキングデータ生成部12に出力する。パッキングデータ生成部12は、該中間ラインデータDIに対して前述した図2(c)に示すパッキング変換を施し、圧縮ラインデータDOを生成する。I/F部30は、パッキングデータ生成部12から入力される該圧縮ラインデータDOを情報処理装置(不図示)に転送する。
【0057】
図4は、本発明のデータ圧縮装置の第2の実施形態を含む画像読取装置のシステム構成を示すブロック図である。尚、同図において前述した図13に示す画像読取装置100が備える構成要素とほぼ同様の機能を備える構成要素については同一の名称を付けている。また、信号についても同等の機能を有する信号については同一の符号を付記している。
【0058】
同図に示す画像読取装置2は、スキャナ部60とデータ処理部50で構成される。スキャナ部60は、画像読取部61と移動量検出部62を備える。該画像読取部61と該移動量検出部62は、前述した図13の画像読取部112と移動量検出113と同様であり、ここでは詳しい説明は省略する。
【0059】
データ処理部50は、画像信号処理部52、読取制御部52及びI/F部(データ転送部)53を備える。画像信号処理部52とI/F部53、それぞれ、上述した図3の画像信号処理部20とI/F部30と同様の機能を有する。
【0060】
読取制御部52は本発明のデータ圧縮装置の第2の実施形態であり、レベル変換画像データ生成部52a、パッキングデータ生成部52b、データ速度検出部52c、転送速度評価部52d及び移動量評価部52eを備える。この読取制御部52は、本発明のデータ圧縮装置の第2の実施形態であり、データ圧縮以外に、データ処理部50全体の読取制御と情報処理装置65へ送信する転送データ(圧縮ラインデータ)をI/F部53へ出力する機能を備える。
【0061】
データ転送速度検出部52cは、I/F部53の転送速度(データ転送速度)を検出し、その検出結果tvを転送速度評価部52dに通知する。データ転送速度検出部52cは、例えば、I/F部30から情報処理装置65に単位時間当たりに転送されるデータ量を監視し、その監視結果からI/F部53のデータ転送速度を算出してI/F部53のデータ転送速度を検出する。また、データ転送速度検出部52cは該方法以外に、例えば、I/F部53の仕様として予め規定されているデータ転送速度をI/F部53等から取得し、それをI/F部53のデータ転送速度とみなす。実際の動作環境においては、I/F部53と情報処理装置65間の転送速度(データ転送速度)は、情報処理装置65の状態等により変動するので、前者の方法でI/F部53のデータ転送速度を検出するのが好ましい。
【0062】
転送速度評価部52dは、例えば、画像読取部61の駆動周期(駆動周波数 )と画像読取部61の1ライン当たりの解像度を基に、画像読取部61により読み取られるラインデータの上記単位時間当たりの量(データ発生速度S)を算出する。転送速度評価部52dは、該データ発生速度Sと前記I/F部53のデータ転送速度とを比較し、前記データ転送速度の方が前記該データ発生速度Sよりも遅いか判断する。そして、転送速度評価部52dは、前記データ転送速度の方が前記データ発生速度Sよりも遅いと評価した場合には、レベル変換画像データ生成部52aが画像信号処理部51で生成される画像データ(画素有効ビットNのラインデータ)D2にレベル変換処理を施す際に最適な前記画素有効ビットIのビット数I(レベル情報)を決定し、それをレベル変換画像データ生成部52a及びパッキングデータ生成部52bに通知する。また、このとき、転送速度評価部52dは、レベル変換画像データ生成部52aとパッキングデータ生成部52bに対して、ぞれぞれ、レベル変換及びパッキング変換の指示も通知する。尚、これらの指示の通知は、前記画素有効ビットIのビット数に関する情報の通知で代用するようにしてもよい。
【0063】
画像読取部61の駆動速度が速い場合や画像読取部61の1ライン当たりの解像度(ライン解像度)が高い場合には、画像読取部61に読み取られる単位時間値当たりのラインデータの数(データ量)は大きくなる。このため、前記データ発生速度Sは大きくなる。例えば、ライン解像度が高いまたは駆動速度が速い画像読取部を備えたフラットベッド型スキャナ等では、前記データ発生速度Sは速くなる。このため、データ転送速度の遅いI/F部53では、そのようなフラットベッド型スキャナのデータ発生速度Sに追随可能なデータ転送を実行できなくなる場合がありえる。本実施形態では、このような場合を想定して転送速度評価部52dが前記データ発生速度SとI/F部53のデータ転送速度との比較を行い、画像信号処理部51で生成されるラインデータD2のデータ圧縮が必要か否かを判断する。そして、転送速度評価部52dは、該データ圧縮が必要と判断すると、レベル変換画像データ生成部52a及びパッキングデータ生成部52bに動作を指示してそれらにラインデータD2の圧縮を実行させ、I/F部53が情報処理装置65に転送すべきデータ量を削減する。
【0064】
レベル変換画像データ生成部52aは、転送速度評価部52dからレベル変換指示と共に前記画素有効ビットIのビット数I(レベル情報)等の情報を通知されると、前述した図2(b)に示す方法等により画像信号処理部51から受け取るラインデータD2(図1(a)の入力ラインデータDIに相当)に対してレベル変換処理を施す。そして、レベル変換画像データ生成部52aは、該レベル変換処理により得られた中間ラインデータDM(図1(b)参照)をパッキングデータ生成部52bに出力する。ところで、レベル変換画像データ生成部52aは、内部にラインバッファ57を有しており、画像信号処理部51から入力されるラインデータD2をそれに一時的に保存しておく。
【0065】
パッキングデータ生成部52bは、転送速度評価部52dからパッキング変換の指示を受け取り、その後、レベル変換画像データ生成部52aから前記中間ラインデータDMを受け取ると、転送速度評価部52dから通知された画素有効ビットIのビット数I(レベル情報)を基にして前述した図2(c)に示す方法により前記中間ラインデータDMに対してパッキング変換を施し、出力ラインデータDOを生成する。そして、その出力ラインデータDOにレベル情報(画素有効ビットIのビット数I)を付加して出力ラインデータ(圧縮データ)DO(図1(c)参照)を生成し、それをI/F部53に出力する。I/F部53は、該圧縮データDOを情報処理装置65に転送する。
【0066】
また、読取制御部52は、転送速度評価部52dの評価以外に移動量評価部52eの評価結果に基づいて、上記と同様にレベル変換画像データ生成部52a及びパッキングデータ生成部52bにより、画像信号処理部51で生成されるラインデータD2の圧縮を行う。
【0067】
移動量評価部(移動速度評価部)52eは、移動量検出部62から入力される移動量検出パルス信号S1を基に画像読取部61の移動速度を算出する。すなわち、例えば、移動量検出パルス信号S1のパルス(エンコーダパルス)の入力時間間隔を測定して、その時間間隔と1パルス当たりの画像読取部61の移動量から前記移動速度を算出する。この移動速度は、ユーザがスキャナ部60を原稿上で移動させる速度に該当する。
【0068】
また、移動量評価部52eは、画像読取部61の駆動周期から画像読取部61の駆動速度を求める。この、駆動速度は駆動信号S2のパルス発生周期を基に求めてもよいし、画像読取部61の仕様で規定されている駆動周期から求めてもよい。そして、移動量評価部52eは、画像読取部61の駆動速度よりも画像読取部61の移動速度が速いと評価した場合は、その速度差に応じてレベル変換画像データ生成部52aがレベル変換する際に使用すべき画素有効ビットIのビット数I(レベル情報)を決定し、それをレベル変換画像データ生成部52a及びパッキングデータ生成部52bに通知する。また、移動量評価部52eは、レベル変換画像データ生成部52a及びパッキングデータ生成部52bに対して、それぞれ、レベル変換及びパッキング変換の実行を指示する。この指示は、前記レベル情報の通知で代用してもよい。また、本実施形態においては、移動量評価部52eに、移動量検出パルス信号S1から画像読取部61の駆動速度を検出する機能をもたせているが、この機能を有する移動速度検出部を読取制御部52内に移動量評価部52eとは独立に別に設け、移動量評価部52eは(該移動速度検出部で検出される)移動速度と駆動速度の比較・評価のみを行うような構成にしてもよい。
【0069】
レベル変換画像データ生成部52aとパッキングデータ生成部52bは、移動量評価部52eから上記動作実行指示を通知されると、転送速度評価部52dから同様の通知を受けときと場合と同様の処理を実行する。これにより、レベル変換画像データ生成部52a内のラインバッファ57に格納されているラインデータD2に対して、レベル変換画像データ生成部52a及びパッキングデータ生成部52bにより、それぞれ、レベル変換及びパッキング変換を順次施され、最終的に、パッキングデータ生成部52bにより圧縮データ(出力ラインデータ)DOが生成される。この圧縮データDOは、パッキングデータ生成部52bからI/F部53に出力され、I/F部53を介して情報処理装置65に転送される。
【0070】
画像読取部61の移動速度が画像読取部61の駆動速度を超える事態は、ユーザがハンディ型スキャナで原稿の画像を読み取る際に、そのスキャナ部60を画像読取部61の駆動速度よりも高速に移動させた場合に生じる。このような場合には、画像読取部61の駆動周期内に移動量検出部62から複数の移動量検出パルス信号S1が出力される。このとき、レベル変換画像データ生成部52aは、ラインデータの欠落を防止するために、ラインバッファ57内に格納されている該駆動周期の最初に読み取られたラインデータを移動量検出パルス信号S1の数(エンコーダパルス数)だけ複写し、エンコーダパルス数と同数のラインデータを生成する。このため、単位時間当たりに発生する画像データの量は増加し、I/F部53が単位時間当たりに情報処理装置65に転送すべきデータ量(I/F部53が情報処理装置65に正常にデータ転送を行うために必要とされるI/F部53のデータ転送速度)は増大することになる。通常、I/F部53は、スキャナ部60の画像読取部61が駆動周期内に1ラインのデータを読み取る場合に対応可能なデータ転送速度を有するものが使用されるため、上記のように、画像読取部61の移動速度が画像読取部61の駆動速度を超えると、I/F部53が情報処理装置65に転送すべきデータ量がI/F部53のデータ転送能力を超えてしまう。本実施形態では、このような事態を防止するために、移動量評価部52eを設け、画像信号処理部51においてI/F部53のデータ転送速度を超える量のラインデータが生成される場合には、レベル変換及びパッキング変換によるデータ圧縮を行うようにしている。
【0071】
ところで、読取制御部52は、移動量検出部62からの移動量検出パルス信号S1の入力をトリガとして、割り込み処理により、レベル変換画像データ生成部52a内のラインバッファ57に格納されている画像データD2の上記一連のデータ転送処理を開始するようになっている。
【0072】
図5及び図6は、パッキングデータ生成部52bによって生成される転送データのフォーマットの例を示す図である。
図5に示す転送データ70は、ヘッダ情報71とnラインの転送ラインデータ72(72−1、72−2、72−3、・・・・、72−n)から構成されている。ヘッダ情報71は、レベル情報71a,パッキング情報71b及びライン情報A71cから成る。このヘッダ情報71は転送ラインデータ72に先立って、情報処理装置65に転送される。
【0073】
転送ラインデータ72は、レベル変換画像データ生成部52a及びパッキングデータ生成部52bによって圧縮されたラインデータ(圧縮ラインデータ)またはそれらによって圧縮が施されていないラインデータ(非圧縮ラインデータ)を含み、その先頭には、例えば、転送ラインデータ72に含まれるラインデータが圧縮ラインデータまたは非圧縮ラインデータのいずれかを識別するための情報等が設定される。また、例えば、前記レベル情報(画素有効ビットI(圧縮ラインデータの場合)または画素有効ビットN(非圧縮ラインデータのビット数))が付加される。
【0074】
レベル情報71aは、前記非圧縮ラインデータの画素有効ビットNのビット数N及び前記圧縮ラインデータの画素有効ビットIのビット数Iを示す情報である。但し、前記圧縮ラインデータの画素有効ビットIのビット数Iを示す情報は、画像信号処理部51によって生成されたラインデータD2をレベル変換する際の画素有効ビットIが一定の場合にのみ設定される(I/F部82のデータ転送速度の状態に応じて、前記画素有効ビットIは変更される場合があるからである)。ヘッダ情報71にこのレベル情報71aが設定される場合には、圧縮ラインデータを含む転送ラインデータ72の先頭には、それが該圧縮ラインデータを含むことを示す識別情報のみを付加するようにしてもよい(該圧縮ラインデータのレベル情報の付加は不要)。
【0075】
パッキング情報71bはパッキング変換の種別を示す情報であり、パッキングの形態を示す。本発明においては、パッキング変換は図2(c)に示される方法に限定されるものではなく、スキャナ部60により読み取られるデータの種類(2次元コード、階調画像及びカラ−画像等)や画素有効ビットIのビット数I等に応じて、それぞれに最適なパッキング変換を適用する。パッキング情報71bは、これら複数のパッキング変換の種別を、復元側で認識可能にするための情報である。復元側では、パッキング情報71bを基にアンパッキング変換を正しく行うことができる。
【0076】
ライン情報A71cは、転送ラインデータ72に関する情報であり、例えば、転送ラインデータ72に含まれる非圧縮ラインデータ及び圧縮ラインデータの画素の総数などが設定される。また、定型サイズの原稿用紙等のように予め読み取る画像のサイズが判明している場合には、転送ラインデータ72の総数等も設定される。
【0077】
図6の転送データ75は、ヘッダ情報76、nラインの転送ラインデータ77(77−1、77−2、77−3、・・・、77−n)及びENDコード78から成る。ヘッダ情報76は、レベル情報76a、パッキング情報76b及びライン情報B76cから成る。
【0078】
転送データ75が、前記転送データ70と異なる点は、ENDコード78を有していること、及びライン情報B76cがライン情報A71cと異なりラインデータ77の総数を含まないことである。その他は、同様であり、転送ラインデータ77は上記転送ラインデータ72と同様な構成をとりうる。
【0079】
尚、図5及び図6に示す転送データ70、75は、あくまでも実施例の一部であり、本発明で生成される転送データには上記以外のフォーマットも含まれる。例えば、図1(c)に模式的に示すように、各転送ラインデータは、出力ラインデータDO(圧縮ラインデータまたは非圧縮ラインデータ)と、それにレベル情報(画素有効ビットIまたは画素有効ビットNのビット数)が付加された構成としてもよい。
【0080】
このように、本発明では、転送データとして、各出力ラインデータDOとその画素のレベル情報は必須であるが、その他の情報は必ずしも必須ではない。このレベル情報は、画素有効ビットIのビット数Iに限定されるものではなく、画像信号処理部51によって生成されたラインデータD2(画素有効ビットN)を前記レベル情報変換部81bによりレベル変換して圧縮ラインデータ(画素有効ビットI)を生成する際に削減される画素有効ビットのビット数(=N−I)であってもよい。また、例えば、ラインデータの総数は、必ずしも必須ではない。復元側では、復元すべきラインデータが無くなった(送られてこない)時点で転送データの復元を終了してもよいし、ラインデータが転送されてくる毎にそれを復元するようにしてもよいからである。
【0081】
次に、図3に示す読取制御部52の動作の各種実施例を、図7〜図9を参照しながら説明する。図7及び図8は、いずれも、画像読取装置2のスキャナ部60が予めサイズが指定された原稿用紙から画像を読み取る場合に対応した読取制御部52の動作を説明するフローチャートである。また、図9は、ユーザがハンディ型スキャナのスキャナ部60の操作スイッチをオン/オフして、原稿用紙の一部から画像を読み取る操作を行う場合のような不定型なスキャナ部60の操作に対応する読取制御部52の動作を説明するフローチャートである。
【0082】
まず、図7のフローチャートから説明する。このフローチャートの処理は、図5のフォーマットの転送データ70を生成する読取制御部52の動作を説明するフローチャートである。この処理においては、設定LINEと読込LINEの2つのレジスタを使用する(これらのレジスタは、図8のフローチャートでも使用する)。設定LINEは、スキャナ部60が読み取る原稿用紙のサイズと画像読取部61のライン解像度等から求まる読み込みライン数nが設定されるレジスタである。読込LINEは、スキャナ部60に読み取られた実際のライン数が設定されるレジスタである。
【0083】
まず、設定LINEに“n”を設定する(SA1)。次に、転送データ70のヘッダ情報71を作成し、それをI/F部53に出力する(SA2)。続いて、設定LINEの値と読込LINEの値が等しいか調べ、スキャナ部60が読み取った画像の全ラインについて処理が終了したか判別する(SA3)。両LINEに設定された値が等しくなければ、移動量検出部62からエンコーダパルス(移動量検出パルス信号S1のパルス)の入力があるか判別する(SA4)。エンコーダパルスの入力がなければ、ステップSA3に戻る。
【0084】
一方、ステップSA4でエンコーダパルスの入力があれば、レベル変換画像データ生成部52aのラインバッファ57に格納されているラインデータD2をステップSA4で検出したエンコーダパルスの数だけ生成する(SA5)。ハンディ型スキャナの場合には、画像読取部61の駆動周期内に、ユーザがスキャナ部60を2ライン以上移動させる場合も生じうるので、このような場合にはラインデータの欠落を防止するため、駆動周期の最初に読み取られたラインデータD2をエンコーダパルスの数だけコピーする。尚、ラインデータを複数コピーせずに、前記従来発明2のように、1個のラインデータD2とエンコーダパルス数(移動量データM)の組を生成するようにしてもよい(図15(c)の転送データD3−2参照)。
【0085】
次に、読込LINEの値をステップSA4で検出したエンコーダパルスの数だけインクリメントし(SA6)、転送速度評価部52dの評価結果を基にI/F部53の転送速度(データ転送速度)が前記データ発生速度Sより小さい(遅い)か判別する(SA7)。そして、I/F部53の転送速度が前記データ発生速度Sよりも小さければ、レベル変換画像データ生成部52aとパッキングデータ生成部52bにより、ステップSA5で生成したラインデータに対してレベル削減(レベル変換)処理とパッキング処理(パッキング変換)を順次施して該ラインデータを圧縮し、該圧縮により得られた圧縮ラインデータを基に、転送ラインデータを生成し、それをI/F部53に出力する(SA9)。そして、その後、ステップSA3に戻る。
【0086】
一方、ステップSA7で、I/F部53の転送速度が前記データ発生速度S以上であれば、次に、移動量評価部52eの評価結果を基にスキャナ部60の画像読取部61の移動速度が画像読取部61の駆動速度よりも大きい(速い)か判別する(SA8)。そして、画像読取部61の移動速度が画像読取部61の駆動速度よりも大きい場合にはステップSA9に移り、ステップSA9においてレベル変換画像データ生成部52a及びパッキングデータ生成部52bによりレベル変換(レベル削減)処理及びパッキング処理(パッキング変換)を行って圧縮ラインデータを生成し、それを基に転送ラインデータを生成し、それをI/F部53に出力し(SA9)、ステップSA3に戻る。
【0087】
また、ステップSA8において、移動量評価部52eにより画像読取部61の移動速度が画像読取部61の駆動速度以下であると判別すると、画像信号処理部51により生成されたラインデータを基に転送ラインデータを生成し、それをI/F部52に出力し(SA10)、ステップSA3に戻る。
【0088】
そして、ステップSA3で、読込LINEの値と設定LINEの値が同じになったと判別するまで、ステップSA3〜SA10の処理を繰り返し、ステップSA3で、読込LINEの値と設定LINEの値が同じになったと判別すると処理を終了する。
【0089】
このように、読取制御部52は、転送速度評価部52dまたは移動量評価部52eの評価結果に応じて、情報処理装置65に転送すべきラインデータの発生量(データ発生速度S)がI/F部53のデータ転送能力(データ転送速度)を超えると判断した場合にのみ、該ラインデータに対してレベル変換及びパッキング変換を施し、該ラインデータを圧縮する。したがって、画像信号処理部51で生成されたラインデータD2は、必要なときのみ圧縮される。このため、転送データ70のラインデータ72には、圧縮されたデータと圧縮されないデータ(画像信号処理部51で生成されたラインデータD2)が混在する場合がある。
【0090】
次に、図8は、図6のフォーマットの転送データ75を生成する読取制御部52の動作を説明するフローチャートである。図8において、図7のステップと同一のステップには同じステップ記号を付与しており、それらのステップの説明は省略する。図8のフローチャートが図7のフローチャートと異なる点は、ステップSA3で読込LINEの値と設定LINEの値が同じになったと判別した後、ENDコードをI/F部82に出力して(SA11)、処理を終了する点である。
【0091】
次に、ユーザがハンディ型スキャナにより原稿用紙の一部などから画像を読み取る場合の読取制御部52の動作を、図9のフローチャートを参照しながら説明する。本フローチャートは、画像読取部61のスキャナ部60に設けられた画像読取部61の動作の開始・終了を指示する操作スイッチ(不図示)がONに設定され、スキャナによる画像の読み取りが開始された時点からの読取制御部52の動作を示している。
【0092】
まず、読込LINEに“0”を設定する初期化を行う(SA21)。これは、ユーザがハンディ型スキャナにより原稿用紙の一部などの画像を読み取る場合には、該画像の読み込みライン数は、実際に、ユーザがスキャナを操作しないと判明しないからである。
【0093】
次に、転送データのヘッダ情報を作成し、それをI/F部82に出力する(SA22)。この処理においては、主に前記パッキング情報のみが設定されたヘッダ情報を作成する。
【0094】
続いて、スキャナ部60に設けられた画像読取部61の動作の開始・終了を指示する操作スイッチがOFFであるか判別する(SA23)。そして、該操作スイッチがOFFでなければ、移動量検出パルス信号S1(エンコーダパルス)が入力されたか判断し(SA24)、エンコーダパルスの入力がなければステップSA23に戻る。
【0095】
一方、エンコーダパルスの入力があれば、レベル変換画像データ生成部52aのラインバッファ57に格納されているラインデータD2をエンコーダパルス数だけ生成する(SA25)。そして、読込LINEの値を該エンコーダパルス数だけインクリメントする(SA26)。また、このステップSA28において、転送データ70のヘッダ情報71のライン情報71cにステップSA25で設定された読込LINEの値を復元ライン数として設定する。尚、この復元ライン数の設定は、ステップSA23でスキャナの操作スイッチがOFFに設定されたと判別した後に行うようにしてもよい。
【0096】
次に、転送速度評価部52dの評価結果を基に、I/F部53の転送速度がデータ発生速度Sよりも遅いか判別する(SA29)。そして、I/F部53の転送速度がデータ発生速度Sより遅ければ(小さければ)、ステップSA25で生成したラインデータに対して、レベル変換画像データ生成部52a及びパッキングデータ生成部52bにより、レベル削減(レベル変換)及びパッキング処理(パッキング変換)を施し、転送ラインデータを作成し、それをI/F部53に出力し(SA29)、ステップSA23に戻る。
【0097】
ステップSA27においてI/F部53の転送速度がデータ発生速度S以上であれば、続いて、スキャナ部60の画像読取部61の移動速度が画像読取部61の駆動速度よりも速い(大きい)か判別する(SA28)。そして、該移動速度が該駆動速度よりも速ければ、ステップSA29においてステップSA25で生成されたラインデータに対してレベル削減及びパッキング処理を施し、これら一連の処理によって圧縮ラインデータを生成して、それを基に転送ラインデータを生成し、それをI/F部82に出力し(SA29)、ステップSA23に戻る。
【0098】
一方、ステップSA28において、スキャナ部60の画像読取部61の移動速度が画像読取部61の駆動速度以下であれば、画像信号処理部51で生成されたラインデータD2を基に転送データを生成し、それをI/F部53に出力し、ステップSA23に戻る。
【0099】
ステップSA23〜SA30の処理は、ステップSA23においてスキャナの操作スイッチがOFFになったと判別されるまで繰り返され、ステップSA23でスキャナの操作スイッチがOFFになったと判別されると、処理を終了する。
【0100】
図10は、図3の画像読取装置1から受信する圧縮データを復元するデータ復元装置を備えた情報処理装置65の本発明に係わる要部のシステム構成を示すブロック図である。
【0101】
情報処理装置65は、データ復元部81とI/F部82を備えている。I/F部82は、画像読取装置1のI/F部30から送信されてくる圧縮データを受信するインタフェースである。I/F部82は、受信した圧縮データを、例えば、ライン単位でデータ復元部81に出力する。
【0102】
データ復元部81は、アンパッキング処理部81aとレベル情報変換部81bを備える。アンパッキング処理部81aは、I/F部82から入力される圧縮データ(圧縮ラインデータ)に対してアンパッキング処理を施し、画像読取装置1のパッキングデータ生成部12がパッキング変換を実施する前の画素有効ビットIのラインデータ(中間ラインデータ)DMを復元し(図1(b)参照)、それをレベル情報変換部81bに出力する。この中間ラインデータDMの各画素の画素有効ビットNのビット数は、画像読取装置1のセンサ部40で読み取られた入力ラインデータDIと同様にNビットである(図1(a)参照)。
【0103】
レベル情報変換部81bは、アンパッキング処理部81aから入力されるラインデータDMに対してレベル変換を施し、情報処理装置65で必要とする画素有効ビットM(1≦M≦N)のラインデータを生成(復元)する(図2(f)、(i)参照)。
【0104】
アンパッキング処理部81aとレベル情報変換部81bは、I/F部82により受信される圧縮データをライン単位で復元し、最終的に全てのラインデータを復元する。アンパッキング処理部81a及びレベル情報変換部81bによって復元されたラインデータで構成される画像データは、画像データ格納部90に格納される。画像データ格納部90は、磁気ディスク、光磁気ディスク、または半導体メモリ等である。
【0105】
図10は、図9のデータ復元部81の動作を説明するフローチャートである。 データ復元部81は、I/F部82が受信した圧縮データ(圧縮ラインデータ)をI/F部82から入力し、それを、内部のラインバッファ(不図示)に格納する。このラインバッファには、I/F部82によって受信される圧縮ラインデータが一時的に保持される。
【0106】
アンパッキング処理部81aは、前記ラインバッファから圧縮ラインデータ(ライン画像データ)を読み込む(SB1)。このステップSB1では、圧縮ラインデータの読み込みが終了したかも判別する。前記ラインバッファに読み込むべき圧縮ラインデータが無い場合には、圧縮ラインデータの読み込みが終了したと判別する。
【0107】
ステップSB1で、圧縮ラインデータを読み込んだ場合には、それに対してアンパッキング処理部81aによりアンパッキング処理を施し、中間ラインデータDMを生成する(SB2)。次に、レベル情報変換部81bにより、該中間ラインデータDMに対してレベル変換を施し、出力ラインデータを復元・出力し(SB3)、ステップSB1に戻る。
【0108】
ステップSB1〜SB3の処理は、ステップSB1で圧縮ラインデータの読み込みが終了したと判別されるまで繰り返され、最終的に、画像読取装置1のセンサ部40に読み取られた入力ラインデータDIと同数のラインデータで構成される出力画像データが復元される。また、この復元された出力画像データの各ラインデータの画素数はセンサ部40により読み取られた入力画像データの各ラインデータの画素数と同じである。換言するならば、入力画像データと出力画像データの空間解像度情報は同一であり、データ復元部81は、画像読取装置1により圧縮された画像データを空間解像度情報を保存したまま復元する。
【0109】
上述したデータ圧縮部10、読取制御部52及びデータ復元部81の各機能は、コンピュータ(CPU等)がプログラムを実行することにより実現することができる。すなわち、レベル変換画像データ生成部11、52a、パッキングデータ生成部12、52b、データ速度検出部52c、転送速度評価部52d、移動量評価部52e、アンパッキング処理部81a及びレベル情報変換部81bの各機能をコンピュータに実行させるプログラムを、該コンピュータに実行させることで実現できる。
【0110】
そして、上記プログラムをコンピュータ読み取り可能な記録媒体(例えば、CD−ROM,CD−R,CD−RW,DVD,DVD−R,DVD−RW,フロッピーディスク、メモリカード等)に記録することにより、上記プログラムの保存、頒布等を容易に行うことができる。また、上記プログラムを、インターネットや広域LAN等のネットワークに接続されたサーバ等の情報処理装置に保存し、該ネットワークに接続可能なパーソナルコンピュータ等の機器から上記プログラムを該ネットワークを介して取得するような頒布形態も可能である。
【0111】
(付記1) 原稿の画像をライン単位で読み取る画像読取手段により読み取られたラインデータを圧縮するデータ圧縮装置であって、
ディジタル化された該ラインデータを入力し、該ラインデータの各画素の有効ビットがレベル方向に削減された中間ラインデータを生成する第1の画像データ生成手段と、
該中間ラインデータの各画素から有効ビット以外のビットを削除して、有効ビットのみから成る画素がパッキングされた出力ラインデータを生成する第2の画像データ生成手段と、
を備えることを特徴とするデータ圧縮装置。
【0112】
(付記2) 前記出力ラインデータには、その各画素の有効ビット数を示すレベル情報が付加されていることを特徴とする付記1記載のデータ圧縮装置。
(付記3) さらに、
前記出力画像データを転送するインタフェースのデータ転送速度を検出するデータ転送速度検出手段と、
前記画像読取手段により単位時間当たりに読み取られるデータの発生量を示すデータ発生速度と、該データ転送速度検出手段によって検出されたデータ転送速度とを比較し、該データ転送速度が前記データ量送速度よりも遅いと評価した場合には、前記第1の画像データ生成手段に前記有効ビット数を通知する転送速度評価手段を備え、
前記第1の画像データ生成手段と前記第2の画像データ生成手段は、前記転送速度評価手段により、前記データ転送速度が前記データ発生速度よりも遅いと評価された場合にのみ、それぞれ、前記中間ラインデータと前記出力ラインデータの生成を行うことを特徴とする付記1記載のデータ圧縮装置。
【0113】
(付記4) 前記転送速度評価手段により、前記データ転送速度が前記データ量送速度以上であると評価された場合には、前記ディジタル化されたラインデータを、そのまま出力することを特徴とする付記3記載のデータ圧縮装置。
【0114】
(付記5) 前記出力ラインデータには、その各画素の有効ビット数を示すレベル情報が付加されていることを特徴とする付記3または付記4記載のデータ圧縮装置。
【0115】
(付記6) さらに、
前記画像読取手段の移動量を示す信号を入力し、その信号から前記画像読取装置の移動速度を検出し、その移動速度と前記画像読取手段の駆動速度を比較して、前記移動速度が前記駆動速度よりも速いと評価した場合には、前記第1の画像データ生成手段及び前記第2の画像データ生成手段に前記有効ビット数を通知する移動速度評価手段を備え、
前記第1の画像データ生成手段と前記第2の画像データ生成手段は、前記移動速度評価手段により、前記移動速度が前記駆動速度よりも速いと評価された場合にのみ、それぞれ、前記中間ラインデータと前記出力ラインデータの生成を行うことを特徴とする付記1記載のデータ圧縮装置。
【0116】
(付記7) 前記移動量評価手段により、前記移動速度が前記駆動速度以下であると評価された場合には、前記ディジタル化されたラインデータを、そのまま出力することを特徴とする付記6記載のデータ圧縮装置。
【0117】
(付記8) 前記出力ラインデータには、その各画素の有効ビット数を示すレベル情報が付加されていることを特徴とする付記6または7記載のデータ圧縮装置。
【0118】
(付記9) 原稿の画像をライン単位で読み取る画像読取手段により読み取られたラインデータを圧縮するデータ圧縮方法であって、
ディジタル化された該ラインデータを入力し、該ラインデータの各画素の有効ビットがレベル方向に削減された中間ラインデータを生成するステップと、
該中間画像データの各画素から有効ビット以外のビットを削除して、有効ビットのみから成る画素がパッキングされた出力ラインデータを生成する出力ラインデータ生成ステップを、
備えることを特徴とするデータ圧縮方法。
【0119】
(付記10) 前記出力ラインデータには、その各画素の有効ビット数を示すレベル情報が付加されていることを特徴とする付記9記載のデータ圧縮方法。
(付記11) さらに、
前記出力画像データを転送するインタフェースのデータ転送速度を検出するデータ転送速度検出ステップと、
前記画像読取手段により単位時間当たりに読み取られるデータの発生量を示すデータ発生速度と、該データ転送速度検出ステップによって検出されたデータ転送速度とを比較し、該データ転送速度が前記データ量送速度よりも遅いと評価した場合には、前記中間ラインデータ生成ステップで使用される前記有効ビット数を求めるデータ転送速度評価ステップを備え、
前記中間ラインデータ生成ステップと前記出力ラインデータ生成ステップは、前記データ転送速度評価ステップにおいて、前記データ転送速度が前記データ発生速度よりも遅いと評価された場合にのみ実行されることを特徴とする付記9記載のデータ圧縮方法。
【0120】
(付記12) 前記転送速度評価手ステップにおいて、前記データ転送速度が前記データ量送速度以上であると評価された場合には、前記ディジタル化されたラインデータを、そのまま出力することを特徴とする付記11記載のデータ圧縮方法。
【0121】
(付記13) 前記出力ラインデータには、その各画素の有効ビット数を示すレベル情報が付加されていることを特徴とする付記11または付記12記載のデータ圧縮方法。
【0122】
(付記14) さらに、
前記画像読取手段の移動量を示す信号を入力し、その信号から前記画像読取装置の移動速度を検出し、その移動速度と前記画像読取手段の駆動速度を比較して、前記移動速度が前記駆動速度よりも速いと評価した場合には、前記中間ラインデータ生成ステップ及び前記出力ラインデータ生成ステップで使用される前記有効ビット数を求める移動速度評価ステップを備え、
前記中間ラインデータ生成ステップと前記出力ラインデータ生成ステップは、前記移動速度評価ステップにおいて、前記移動速度が前記駆動速度よりも速いと評価された場合にのみ実行されることを特徴とする付記11記載のデータ圧縮方法。
【0123】
(付記15) 前記移動量評価ステップにおいて、前記移動速度が前記駆動速度以下であると評価された場合には、前記ディジタル化されたラインデータを、そのまま出力することを特徴とする付記14記載のデータ圧縮方法。
【0124】
(付記16) 前記出力ラインデータには、その各画素の有効ビット数を示すレベル情報が付加されていることを特徴とする付記14または15記載のデータ圧縮方法。
【0125】
(付記17) 原稿の画像をライン単位で読み取る画像読取手段により読み取られたラインデータを圧縮する処理をコンピュータに実行させるプログラムを記録したコンピュータが読み取り可能な記録媒体であって、
ディジタル化された該ラインデータを入力し、該ラインデータの各画素の有効ビットがレベル方向に削減された中間ラインデータを生成するステップと、
該中間ラインデータの各画素から有効ビット以外のビットを削除して、有効ビットのみから成る画素がパッキングされた出力ラインデータを生成する出力ラインデータ生成ステップを、
備える処理を前記コンピュータに実行させるプログラムを記録したコンピュータが読み取り可能な記録媒体。
【0126】
(付記18) 前記出力ラインデータには、その各画素の有効ビット数を示すレベル情報が付加されていることを特徴とする付記17記載のコンピュータが読み取り可能な記録媒体。
【0127】
(付記19) 前記プログラムは、
前記コンピュータに、さらに、
前記出力画像データを転送するインタフェースのデータ転送速度を検出するステップの処理と、
前記画像読取手段により単位時間当たりに読み取られるデータの発生量を示すデータ発生速度と、該データ転送速度検出手段によって検出されたデータ転送速度とを比較し、該データ転送速度が前記データ量送速度よりも遅いと評価した場合には、前記中間ラインデータ生成ステップで使用される前記有効ビット数を求めるデータ転送速度評価ステップの処理を実行させると共に、
前記中間ラインデータ生成ステップの処理と前記出力ラインデータ生成ステップの処理は、前記データ転送速度評価ステップの処理において、前記データ転送速度が前記データ発生速度よりも遅いと評価された場合にのみ実行させることを特徴とする付記17記載のコンピュータが読み取り可能な記録媒体。
【0128】
(付記20) 前記プログラムは、
前記転送速度評価手ステップにおいて、前記データ転送速度が前記データ量送速度以上であると評価された場合には、前記ディジタル化されたラインデータを、そのまま出力する処理を前記コンピュータに実行させることを特徴とする付記18記載のコンピュータが読み取り可能な記録媒体。
【0129】
(付記21) 前記出力ラインデータには、その各画素の有効ビット数を示すレベル情報が付加されていることを特徴とする付記19または付記20記載のコンピュータが読み取り可能な記録媒体。
【0130】
(付記22) 前記プログラムは、
前記コンピュータに、さらに、
前記画像読取手段の移動量を示す信号を入力し、その信号から前記画像読取装置の移動速度を検出し、その移動速度と前記画像読取手段の駆動速度を比較して、前記移動速度が前記駆動速度よりも速いと評価した場合には、前記中間ラインデータ生成ステップで使用される前記有効ビット数を求める移動速度評価ステップの処理を実行させると共に、
前記中間ラインデータ生成ステップの処理と前記出力ラインデータ生成ステップの処理は、前記移動速度評価ステップの処理において、前記移動速度が前記駆動速度よりも速いと評価された場合にのみ実行させることを特徴とする付記17記載のコンピュータが読み取り可能な記録媒体。
【0131】
(付記23) 前記プログラムは、
前記移動量評価ステップにおいて、前記移動速度が前記駆動速度以下であると評価された場合には、前記ディジタル化されたラインデータを、そのまま出力する処理を前記コンピュータに実行させることを特徴とする付記22記載のコンピュータが読み取り可能な記録媒体。
【0132】
(付記24) 前記出力ラインデータには、その各画素の有効ビット数を示すレベル情報が付加されていることを特徴とする付記22または23記載のコンピュータが読み取り可能な記録媒体。
【0133】
(付記25) 原稿の画像をライン単位で読み取る画像読取手段により読み取られたラインデータを圧縮する処理をコンピュータに実行させるプログラムであって、
ディジタル化された該ラインデータを入力し、該ラインデータの各画素の有効ビットがレベル方向に削減された中間ラインデータを生成するステップと、
該中間ラインデータの各画素から有効ビット以外のビットを削除して、有効ビットのみから成る画素がパッキングされた出力ラインデータを生成する出力ラインデータ生成ステップを、
備える処理を前記コンピュータに実行させるプログラム。
【0134】
(付記26) 前記出力ラインデータには、その各画素の有効ビット数を示すレベル情報が付加されていることを特徴とする付記25記載のプログラム。
(付記27) 前記プログラムは、
前記コンピュータに、さらに、
前記出力画像データを転送するインタフェースのデータ転送速度を検出するステップの処理と、
前記画像読取手段により単位時間当たりに読み取られるデータの発生量を示すデータ発生速度と、該データ転送速度検出手段によって検出されたデータ転送速度とを比較し、該データ転送速度が前記データ量送速度よりも遅いと評価した場合には、前記中間ラインデータ生成ステップ及び前記出力ラインデータ生成ステップで使用される前記有効ビット数を求めるデータ転送速度評価ステップの処理を実行させると共に、
前記中間ラインデータ生成ステップの処理と前記出力ラインデータ生成ステップの処理は、前記データ転送速度評価ステップの処理において、前記データ転送速度が前記データ発生速度よりも遅いと評価された場合にのみ実行させることを特徴とする請求項25記載のプログラム。
【0135】
(付記28) 前記プログラムは、
前記転送速度評価手ステップにおいて、前記データ転送速度が前記データ量送速度以上であると評価された場合には、前記ディジタル化されたラインデータを、そのまま出力する処理を前記コンピュータに実行させることを特徴とする付記27記載のプログラム。
【0136】
(付記29) 前記出力ラインデータには、その各画素の有効ビット数を示すレベル情報が付加されていることを特徴とする付記27または付記28記載のプログラム。
【0137】
(付記30) 前記プログラムは、
前記コンピュータに、さらに、 前記画像読取手段の移動量を示す信号を入力し、その信号から前記画像読取装置の移動速度を検出し、その移動速度と前記画像読取手段の駆動速度を比較して、前記移動速度が前記駆動速度よりも速いと評価した場合には、前記中間ラインデータ生成ステップで使用される前記有効ビット数を求める移動速度評価ステップの処理を実行させると共に、
前記中間ラインデータ生成ステップの処理と前記出力ラインデータ生成ステップの処理は、前記移動速度評価ステップの処理において、前記移動速度が前記駆動速度よりも速いと評価された場合にのみ実行させることを特徴とする付記25記載のプログラム。
【0138】
(付記31) 前記プログラムは、
前記移動量評価ステップにおいて、前記移動速度が前記駆動速度以下であると評価された場合には、前記ディジタル化されたラインデータを、そのまま出力する処理を前記コンピュータに実行させることを特徴とする付記30記載のプログラム。
【0139】
(付記32) 前記出力ラインデータには、その各画素の有効ビット数を示すレベル情報が付加されていることを特徴とする付記30または31記載のプログラム。
【0140】
(付記33) 入力ラインデータに対して、該入力ラインデータの画素のビットをレベル方向に削減するレベル変換と、該レベル変換により削減された該画素のビット数に応じて該画素をパッキングするパッキング変換を施すことにより生成された圧縮ラインデータを復元するデータ復元装置であって、
前記圧縮ラインデータに対して、前記圧縮ラインデータの画素を前記レベル変換前の画素に戻すアンパッキング変換を施し、前記レベル変換前のラインデータを復元する復元手段と、
該復元手段により生成されたラインデータの画素のレベルを変換して、所定ビットの画素から成るラインデータを生成する生成手段と、
を備えることを特徴とするデータ復元装置。
【0141】
(付記34) 前記復元手段は、前記圧縮ラインデータに付加されている前記レベル変換によって削減されたビット数を示すレベル情報を基に前記アンパッキング変換を行うことを特徴とする付記33記載のデータ復元装置。
【0142】
(付記35) 入力ラインデータに対して、該入力ラインデータの画素のビットをレベル方向に削減するレベル変換と、該レベル変換により削減された該画素のビット数に応じて該画素をパッキングするパッキング変換を施すことにより生成された圧縮ラインデータを復元するデータ復元方法であって、
前記圧縮ラインデータに対して、前記圧縮ラインデータの画素を前記レベル変換前の画素に戻すアンパッキング変換を施し、前記レベル変換前のラインデータを復元する復元ステップと、
該復元ステップにより生成されたラインデータの画素のレベルを変換して、所定ビットの画素から成るラインデータを生成する生成ステップと、
を備えることを特徴とするデータ復元方法。
【0143】
(付記36) 前記復元ステップにおいて、前記圧縮ラインデータに付加されている前記レベル変換によって削減されたビット数を示すレベル情報を基に前記アンパッキング変換を行うことを特徴とする付記35記載のデータ復元方法。
【0144】
(付記37) 入力ラインデータに対して、該入力ラインデータの画素のビットをレベル方向に削減するレベル変換と、該レベル変換により削減された該画素のビット数に応じて該画素をパッキングするパッキング変換を施すことにより生成された圧縮ラインデータを復元する処理をコンピュータに実行されるプログラムを記録したコンピュータ読み取り可能な記録媒体であって、
前記圧縮ラインデータに対して、前記圧縮ラインデータの画素を前記レベル変換前の画素に戻すアンパッキング変換を施し、前記レベル変換前のラインデータを復元するステップと、
該復元手段により生成されたラインデータの画素のレベルを変換して、所定ビットの画素から成るラインデータを生成するステップを、
備える処理を前記コンピュータに実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体。
【0145】
(付記38) 前記プログラムは、
前記復元ステップにおいて、前記圧縮ラインデータに付加されている前記レベル変換によって削減されたビット数を示すレベル情報を基に前記アンパッキング変換を前記コンピュータに実行させることを特徴とする付記37記載のコンピュータが読み取り可能な記録媒体。
【0146】
(付記39) 入力ラインデータに対して、該入力ラインデータの画素のビットをレベル方向に削減するレベル変換と、該レベル変換により削減された該画素のビット数に応じて該画素をパッキングするパッキング変換を施すことにより生成された圧縮ラインデータを復元する処理をコンピュータに実行させるプログラムであって、
前記圧縮ラインデータに対して、前記圧縮ラインデータの画素を前記レベル変換前の画素に戻すアンパッキング変換を施し、前記レベル変換前のラインデータを復元する復元ステップと、
該復元ステップにより生成されたラインデータの画素のレベルを変換して、所定ビットの画素から成るラインデータを生成する生成ステップを、
備える処理を前記コンピュータに実行させるプログラム。
【0147】
(付記40) 前記プログラムは、
前記復元ステップにおいて、前記圧縮ラインデータに付加されている前記レベル変換によって削減されたビット数を示すレベル情報を基に前記アンパッキング変換を前記コンピュータに実行させることを特徴とする付記39記載のプログラム。
【0148】
【発明の効果】
以上、説明したように、本発明のデータ圧縮装置は、以下の効果ないし利点を有する。
【0149】
(1)本発明によるデータ圧縮においては、復元の際に空間解像度情報が保存されていることが重要なラインデータの圧縮に好適である。したがって、例えば、2次元コードの圧縮に適用した場合、復元側での2次元コードの解読率を向上させることが可能になる。
【0150】
(2)本発明によるデータ圧縮においては、画像読取部で読み取られるデータ(ラインデータ)の発生速度(データ発生速度)と、復元側に該データを転送するインタフェースの転送速度を、常時、比較して、圧縮が必要であると判断したときのみ該データを圧縮して前記インタフェースに出力するので、例えば、高解像度のラインセンサを備えたスキャナや駆動速度が高速なラインセンサを備えたスキャナ等のように前記データ発生速度が高速な画像読取装置に読み取られたデータの圧縮に好適である。また、本発明によるデータ圧縮においては、画像読取部で読み取られたラインデータを、圧縮が必要であると判断したときのみ圧縮して転送し、圧縮が不要であると判断したときにはそのまま転送するので、本発明によるデータ復元は、前記画像読取部で読み取られたデータ(ラインデータ)を、空間解像度情報を保存しつつ、より正確に復元することができる。
【0151】
(3)本発明によるデータ圧縮においては、画像読取部の駆動速度と移動速度の双方を、常時、比較して、圧縮が必要であると判断したときのみ、該画像読取部により読み取られたラインデータを上記方法により圧縮して出力するので、例えば、画像読取部がその駆動速度を超えて移動してしまうようなユーザ操作が行われた場合にのみ前記ラインデータを圧縮し、それ以外のユーザ操作時は該ラインデータを圧縮しないで出力するので、画像読取部の移動速度がユーザ操作に応じて変動するハンディ型スキャナ等に好適である。例えば、本発明のデータ圧縮装置またはプログラムをハンディ型スキャナに内蔵させることにより、ハンディ型スキャナによるラインデータの読み取り欠落を防止できる。また、このデータ圧縮においても、画像読取部で読み取られたラインデータを、圧縮が必要であると判断したときのみ圧縮して転送し、圧縮が不要であると判断したときにはそのまま転送するので、本発明によるデータ復元により、前記画像読取部で読み取られたデータ(ラインデータ)を、空間解像度情報を保存しつつ、より正確に復元することができる。
【図面の簡単な説明】
【図1】 (a)〜(d)は、本発明の実施形態のデータ圧縮・復元方法の原理を説明する図である。
【図2】 (a)〜(i)は、本発明の実施形態のデータ圧縮・復元方法の原理を、画素に着目してより詳細に説明する図である。
【図3】 本発明のデータ圧縮装置の第1の実施形態を含む画像読取装置のシステム構成を示すブロック図である。
【図4】 本発明のデータ圧縮装置の第2の実施形態を含む画像読取装置のシステム構成を示すブロック図である。
【図5】 図3及び図4の画像読取装置から送信される転送データのフォーマットの第1の形態を示す図である。
【図6】 図3及び図4の画像読取装置から送信される転送データのフォーマットの第2の形態を示す図である。
【図7】 図4の画像読取装置の動作の第1の実施例を説明するフローチャートである。
【図8】 図4の画像読取装置の動作の第2の実施例を説明するフローチャートである。
【図9】 図4の画像読取装置の動作の第3の実施例を説明するフローチャートである。
【図10】 本発明のデータ復元装置を含む情報処理装置の要部のシステム構成を示すブロック図である。
【図11】 図10のデータ復元装置の動作を説明するフローチャートである。
【図12】 ハンディ型スキャナのハードウェア構成の一例を示す外観図である。
【図13】 従来の画像読取システムのシステム構成を示すブロック図である。
【図14】 (a)〜(i)は、上記従来の画像読取システムの動作するタイムチャートである。
【図15】 (a)〜(c)は、上記従来の画像読取システムの通常転送モードで生成されるデータの転送・復元動作を説明する図である。
【図16】 (a)〜(d)は、上記従来の画像読取システムの圧縮転送モードで生成される圧縮データの転送・復元動作を説明する図である。
【図17】 (a)及び(b)は、2次元コードとそれを基に復元される画像を示す図である。
【符号の説明】
1、2 画像読取装置
3、50 データ処理部
10 データ圧縮部
11 レベル変換画像データ生成部
12 パッキングデータ生成部
20 画像信号処理部
30、53 I/F部(データ転送部)
40 センサ部
52 読取制御部(データ圧縮部)
52a レベル変換画像データ生成部
52b パッキングデータ生成部
52c データ速度検出部
52d 転送速度評価部
52e 移動量評価部
57 ラインバッファ
60 スキャナ部
61 画像読取部
62 移動量検出部
65 情報処理装置
70、75 転送データ
71、76 ヘッダ情報
71a、76a レベル情報
71b、76b パッキング情報
71c ライン情報A
76c ライン情報B
72、77 ラインデータ
78 ENDコード
81 データ復元部
81a アンパッキング処理部
81b レベル情報変換部
[0001]
BACKGROUND OF THE INVENTION
  The present invention relates to a data compression apparatus suitable for compressing image data read by an image reading apparatus such as an image scanner.
[0002]
[Prior art]
  In general, an image scanner is used as an apparatus for reading a document such as a photograph or a picture as an image. This image scanner is roughly classified into three types, ie, a flat bed type, a sheet feed type (automatic paper feed type), and a handy type, depending on a document reading method. In both the flat bed type and the sheet feed type, the apparatus reads an image at a speed that the apparatus can control by setting a document on the apparatus. The flat bed type reads an original placed on a flat table, and the sheet feed type reads the original while feeding it with a roller. On the other hand, the handy type reads when the user manually moves the document.
[0003]
  All of these scanners irradiate a document with light, and the brightness (shading) of the reflected light is calculated by a CCD (Charge Coupled Device) or CIS (Constant Image).Sensor) And so on. The reading unit of these scanners is a line unit obtained by finely dividing a document in the horizontal direction. For this reason, CCDs and CISs that use fine sensors arranged in a straight line are used.
[0004]
  FIG. 12 is an external view of an example of a handy scanner.
The scanner 100 shown in the figure is configured to be connected to an information processing apparatus (not shown) such as a personal computer via a PC card 140.
[0005]
  The scanner 100 includes a scanner unit 110, a cable 120, a connector unit 130, and a PC card 140. The scanner unit 110 has a substantially rectangular parallelepiped or cylindrical shape, and one side surface in the longitudinal direction is an image reading surface 111a, and this surface 111a is a surface that comes into contact with a document sheet (not shown) during image reading. In addition, an image reading unit 112 and a movement amount detection unit 113 are provided.
[0006]
  The image reading unit 112 optically reads an image on an original sheet, and emits light to the original sheet (for example, a light emitting diode and a cold cathode tube) and reflected light from the original sheet. It consists of a light receiving element (CCD, CIS, etc.) that receives light and converts it into image data, a mirror (in the case of CCD), a lens (in the case of CIS), etc. for making the reflected light incident on the light receiving element. ing.
[0007]
  The movement amount detection unit 113 detects the movement amount of the image reading unit 112 on the original paper at the time of image reading. The movement amount detection unit 113 includes a rotating roller (not shown) and a rotary encoder (not shown) attached to the rotating roller. A part of the rotating roller protrudes from the image reading surface 111a and is rotatably provided. When the scanner unit 110 is moved by bringing the image reading surface 111a into contact with the original paper, the rotating roller is moved to the original. The scanner unit 110 rotates with the movement of the scanner unit 110 while being in contact with the paper. The rotary encoder outputs a movement amount detection pulse signal every time the rotation amount of the rotating roller reaches a predetermined amount. As described above, when the scanner unit 110 is moved while the image reading surface 111a is brought into contact with the original paper, the amount of relative movement of the image reading unit 112 with respect to the original paper is detected by the rotary encoder.
[0008]
  A start / interruption instruction unit 114 is provided on the surface of the scanner unit 110 that faces the image reading surface 111a. This start / interrupt instruction unit 114 is, for example, a push button type switch that is turned on / off each time it is pressed. When it is first pressed, the switch is turned on and the scanner 100 is activated to start reading a document. It becomes.
[0009]
  A cable 120 to which a connector unit 130 for the PC card 140 is connected is attached to the bottom surface of the scanner unit 110. The PC card 140 is a card-type slot inserted into a PC card slot of an information processing apparatus (not shown), and a connector portion to which the cable 120 is connected on one side surface (first side surface). A first interface 140a to which the terminal 130 is connected is provided, and a second interface 140b to be connected to the information processing apparatus in the PC card slot is provided on the other side opposite to the first side. . The PC card 140 is provided with a reading control unit to be described later.
[0010]
  The image reading unit 112 sequentially reads an image for one line of a document sheet using a drive signal input from the reading control unit at a constant period T as a trigger, and outputs the image as image data to the reading control unit. The image reading unit 112 processes image data for one line within the fixed period T.
[0011]
  In the handy scanner 100 having the above-described configuration, the PC card 140 is used in accordance with the data transfer speed between the information processing apparatus and the handy scanner 100 in order to reliably transfer the image data read by the image reading unit 112 to the information processing apparatus. An image holding unit is provided in the reading control unit.
[0012]
  By the way, in the handy type scanner 100, when reading an image on an original paper, the user manually moves the scanner unit 110, and therefore, the scanner unit 110 may often be moved faster than the predetermined period T. In such a case, the image reading unit 112 moves two or more lines of the document within the fixed period T, and the image reading unit 112 cannot process image data other than the first line. For this reason, image reading of one line or more partially occurs when reading an image of a document. In such a case, there arises a problem that an image finally generated on the information processing apparatus side shrinks in the scanning direction.
[0013]
  Therefore, an invention for solving this problem (conventional invention 1) has been filed as Japanese Patent Application Laid-Open No. 2000-349984. This publication discloses an image reading apparatus including an image data generation unit that generates image data according to the movement amount of the scanner unit detected by the movement amount detection unit. When it becomes faster than the cycle of the drive signal in the data processing unit, the image data of the portion is copied according to the movement amount, so that there is no contraction in the scanning direction without being affected by the moving speed of the scanner unit. A technique capable of obtaining an image is disclosed.
[0014]
  In addition, the data transfer speed between the I / F of the image reading apparatus (second interface 140b of the PC card 140) and the information processing apparatus cannot keep up with the increase in resolution in the main scanning direction of the image reading apparatus (handy scanner 100). In this case, it is necessary to provide a buffer for temporarily holding all the image data read by the image reading unit 112 in the reading control unit. However, the capacity of the buffer increases with high resolution, and the manufacturing cost of the image reading apparatus is increased. Will increase.
[0015]
  Therefore, the present applicant has filed the invention of Patent Application No. 2001-91084 (conventional invention 2) as an invention to solve such problems. FIG. 13 is a block diagram showing the functional configuration of the image reading apparatus of the conventional invention 2, and FIG. 14 is an operation time chart thereof. For convenience, in FIG. 13, the reference numerals of the image reading system, the image reading apparatus, and some functional blocks are different from those in the patent application number 2001-91084. The functional blocks and device codes whose codes are changed are as follows. In addition, the code | symbol in () is a code | symbol of an application drawing.
[0016]
  100 (1) ... Image reading device
  150 (10) ... Data processing device
  141 (31)... Reading control unit
  142 (102): Image signal processing unit
  143 (33) ... I / F section
  151 (101): Transfer data generation unit
  152 (102): Data compression unit
  153 (103) ... transfer state detection unit
  154 (104) ... switching unit
  200 (40)... Information processing device
  300 (100) ... image reading system
  In the conventional invention 2, the image reading apparatus 100 includes a scanner unit 110 and a data processing unit 150. The scanner unit 110 includes an image reading unit 112 and a movement amount detection unit 113. The data processing unit 150 includes an image signal processing unit 142, a reading control unit 141, and an I / F unit 143. The reading control unit 141 includes a transfer data generation unit 151, a data compression unit 152, a transfer state detection unit 153, and a switching unit 154.
[0017]
  The image reading unit 112 uses the drive signal S2 (see FIG. 14B) input from the reading control unit 114 at a constant period T (T1, T2,... T9) as a trigger for one line on the original paper. Are sequentially read and output as image data D1 (D1-1, D1-2,... D1-9) to the image signal processing unit 142 (see FIG. 14C). The image data D1 is analog data for one line of original paper. The image signal processing unit 142 converts the input image data D1 into binarized image data D2 (D2-1, D2-2,..., D2-3) and outputs it to the transfer data generation unit 151 ( (Refer FIG.14 (d)).
[0018]
  The movement amount detection unit 113 outputs a pulse-like movement amount detection pulse signal S1 (S1-1, S1-2,..., S1-9) to the transfer data generation unit 151 every time the rotating roller rotates by a certain angle. (See FIG. 14A). The transfer data generation unit 151 performs binarization input from the image signal processing unit 142 each time the movement amount detection pulse signal S1 is input from the movement amount detection unit 113 of the scanner unit 110 (see FIG. 14E). Transfer data D3 including the image data D2 and the movement amount M (the number of movement amount detection pulse signals S1 input from the movement amount detection unit 113 within the driving period T) is output to the switching unit 154 (FIG. 14 (f )reference). The transfer data D3 is temporarily stored in a storage unit (not shown).
[0019]
  The data compression unit 152 thins out the transfer data D3 other than the specific transfer data D3 for each of a plurality of continuous transfer data D3 for the transfer data D3 generated by the transfer data generation unit 151 and stored in the storage unit. The movement amount M included in the thinned transfer data D3 is added to the movement amount M included in the specific transfer data D3, and the image data included in the specific transfer data D3 and the added movement Compressed data D4 (D4-1, D4-2) composed of the amount M is generated and output to the switching unit 154 (see FIG. 14 (g)).
[0020]
  The transfer state detection unit 153 detects the transfer rate of the I / F unit 143 by measuring the input speed and output speed per unit time in the line buffer, and outputs the detection result to the switching unit 154.
[0021]
  The switching unit 154 selects either the transfer data D3 generated by the transfer data generation unit 151 or the compressed data D4 generated by the data compression unit 152 according to the detection result detected by the transfer state detection unit 153. The data is output to the I / F unit 143. In this case, if the input / output speed in the line buffer is slower than a preset speed, it is determined that the transfer speed is slow, and the compressed data D4 generated by the data compression section 152 is sent to the I / F section 143. Output (compressed transfer mode). On the other hand, if the input / output speed in the line buffer is equal to or higher than a preset speed in the detection result, it is determined that the transfer speed is high, and the transfer data D3 generated by the transfer data generation unit 151 is converted to I / O. Transmit to the F unit 143 (normal transfer mode).
[0022]
  When the information processing apparatus 200 receives the transfer data D3 or the compressed data D4 from the I / F unit 143, the information processing apparatus 200 acquires the movement amount M added to the image data, and the number of the image data is the same as the movement amount M. As described above, by copying this image data (M-1) times, an image having no missing line is restored.
[0023]
  FIG. 14 is a diagram for explaining a method of restoring on the information processing apparatus 200 side the transfer data D3 transferred in the normal transfer mode shown in FIG.
  The binarized image data D2 (D2-1, D2-2,..., D2-7) shown in FIG. 15A and the movement amount M corresponding to each of the binarized image data D2 are transferred. By the data generation unit 151, the binarized image data (A-1, A-2, A-4, A-7) and the movement amount M corresponding to each of the binarized image data shown in FIG. Four pieces of transfer data D3-1. Converted to D3-2, D3-3, and D3-4.
[0024]
  The information processing apparatus 200 converts the four transfer data D3 transferred from the I / F unit 143 into six lines of restored image data B (B-1) as shown in FIG. , B-2,..., B-6). In this case, the binary image data A-2 (binarized image data on the second line) of the transfer data D3-2 is copied twice.do itThe restored image data B-3 for the third line and the restored image data B-4 for the fourth line are restored.
[0025]
  Next, FIG. 16 is a diagram for explaining a method for restoring on the information processing apparatus 200 side the compressed data D4 transferred in the compressed transfer mode shown in FIG. In this figure, (a) and (b) are the same as FIGS. 15 (a) and (b) described above, and therefore their explanation is omitted. In the compressed transfer mode, the two pieces of compressed data D4-1 and D-2 shown in FIG. 16C are transferred to the information processing apparatus 200. The compressed data D4-1 is composed of the binarized image data A-1 and the moving amount “4”, and the compressed data D4-2 is composed of the binarized image data A-2 and the moving amount “2”. When the information processing apparatus 200 receives these two pieces of compressed data D4-1 and D4-2, the information processing apparatus 200 also converts the binarized image data (A-1, A-2) included in the compressed data into the compressed data. According to the value of the movement amount M (“4”, “2”) included in the data, restoration is performed as shown in FIG.
[0026]
  That is, in this case, the binarized image data (B-2 to B-4) of the second to fourth lines are restored by copying three binarized image data A-1 of the first line, and 4 By copying one binarized image data A-4 of the line, the binarized image data B-6 of the sixth line is restored.
[0027]
  As described above, in the conventional invention 2, the image reading apparatus side compares the data transfer speed of the I / F unit 143 with the amount of transfer data D3 generated per predetermined unit time, and the normal transfer mode and the compressed transfer. Image data read so that two-dimensional image data without shrinkage can be restored on the restoration side by a small-capacity line buffer by switching between the two modes and transferring either transfer data D3 or compressed data D4 (The data transfer speed improvement method by thinning out the line data).
[0028]
[Problems to be solved by the invention]
  As described above, in the conventional invention 2, data compression is performed by skipping spatial resolution information by thinning out one or a plurality of lines of image data, and the data transfer rate of the I / F unit 143 is added to the amount of transfer data D3 generated. In the case where the ability cannot be caught up, the mode is switched to the compression transfer mode, and the compressed data D4 generated by the data compression is transferred to the information processing apparatus 200 (see FIG. 14G). Here, the spatial resolution information is the resolution of the pixels constituting the two-dimensional spatial image.
[0029]
  However, in the method of the second aspect of the invention, there is no problem when confirming the image data read by human eyes. For example, the two-dimensional code 400 as shown in FIG. In the case of the target, since the spatial resolution information is partially lost due to the thinning of the line data, the restoration side cannot correctly decode the black and white dots and the decoding rate of the two-dimensional code is lowered. The problem of disturbing the restoration occurs.
[0030]
  The two-dimensional code includes image data and URL (Uniform) shown in FIG.Resource Locator), various multimedia data such as MIDI (Musical Instrumental Digital Interface) data, and text data are printed as white and black dots.
[0031]
  As described above, the method according to the second aspect of the invention is not suitable for data compression of a code that causes a problem in restoring the original data on the restoration side if a part of the spatial resolution information such as a two-dimensional code is lost and transferred. Met.
[0032]
  SUMMARY OF THE INVENTION An object of the present invention is to provide a data compression device that can compress data such as images and codes read by an image reading device while preserving spatial resolution information.
[0033]
[Means for Solving the Problems]
  The data compression apparatus of the present invention is premised on a data compression apparatus that compresses line data read by an image reading unit that reads an image of a document line by line.
[0034]
  The data compression apparatus according to the present invention inputs the digitized line data and outputs the line data. First image data generating means for generating intermediate line data in which the effective bit of each pixel of the data is reduced in the level direction, and by deleting bits other than the effective bit from each pixel of the intermediate line data, A second image data generating means for generating output line data packed with pixels consisting of only a pixel and a signal indicating the amount of movement of the image reading means, and detecting the moving speed of the image reading means from the signal. When the moving speed is compared with the driving speed of the image reading means and it is determined that the moving speed is faster than the driving speed, the first image data generating means and the second image data generating A moving speed evaluating means for notifying the means of the number of effective bits. The first image data generation unit and the second image data generation unit are respectively configured so that the intermediate speed only when the movement speed evaluation unit evaluates that the movement speed is faster than the driving speed. Line data and the output line data are generated.
[0035]
  According to the data compression device of the present invention, the moving speed (line scanning speed) of the image reading means and the driving rotation speed (line data reading speed of the image reading means) are compared, and only when the moving speed is faster than the driving speed. The number of effective bits is determined and notified, and based on the number of effective bits, intermediate line data in which the effective bits of each pixel are reduced in the level direction is created. Then, output line data in which pixels consisting of only valid bits are packed is generated from the intermediate line data. Accordingly, even when the moving operation speed of the image reading means of the user is faster than the driving speed of the image reading means, the line data can be compressed and output while preserving the spatial resolution information. For this reason, even when the two-dimensional code is read while scanning, the black and white dots of the two-dimensional code can be correctly decoded, and the decoding rate of the two-dimensional code can be improved.
[0036]
DETAILED DESCRIPTION OF THE INVENTION
  Hereinafter, embodiments of the present invention will be described with reference to the drawings.
FIG. 1 is a diagram for generally explaining the principle of an embodiment of a data compression / decompression method of the present invention. The figure shows an example of compressing / decompressing four lines of input line image data (input line data) DI (DI-1, DI-2, DI-3, DI-4). The number of bits (pixel effective bits) of each pixel of the input line data DI is N (for example, N = 8) (see FIG. 5A).
[0037]
  First, the level conversion of each pixel of these four lines of input line data DI is performed, and the number of effective bits of each pixel is reduced from N bits (for example, N = 8) to I bits (for example, I = 4). Data DM (DM-1, DM-2, DM-3, DM-4) is generated (see (b) in the figure).
[0038]
  In the present invention, the number of effective bits I in a bit string indicating a pixel value (level such as a gradation value) is defined as “level information”. The bit string of these I bits is defined as a pixel effective bit I. Furthermore, the direction from the MSB (Most Significant Bit) to the LSB (Least Significant Bit) of the bit string indicating the pixel value is defined as the level direction. Further, an operation for converting the number of bits of the pixel effective bit I is defined as level conversion. In the image data compression according to the present invention, “in order to reduce the number of bits in the level direction, level conversion is performed in which the pixel effective bit N is converted to the pixel effective bit I (I <N). In this case, level conversion is performed so that I ≦ N.
[0039]
  Next, packing conversion is performed, and the output line data (compressed line data) DO (DO-1, DO-2, DO-) from the intermediate line data DM (DM-1, DM-2, DM-3, DM-4). 3, DO-4) is generated (see (c) in the figure).
[0040]
  In this packing conversion, by deleting bits other than the pixel effective bit I for the pixels of the intermediate line data DM, the value of the pixel is expressed by the pixel effective bit I, and a pixel consisting only of the pixel effective bit I is converted into a pixel. Is an operation of packing in the order of arrangement (in the main scanning direction of the line data).
[0041]
  By this packing conversion, output line data DO is generated from the intermediate line data DM. In the case of the pixel effective bit N (N = 8) of the input line data DI and the pixel effective bit I (I = 4) of the intermediate line data, the input line data DI is an output line whose data amount is ½ by packing conversion. Compressed into data.
[0042]
  The output line data DO is transferred to a restoration device such as an information processing device together with level information (the number of bits of the pixel effective bits I, that is, I = 4), and restored line data B (B-1, B) by the restoration device. -2, B-3, and B-4) (see FIG. 4D). The effective bit M of the pixel of the restored line data B generated by this restoration is 8 bits, which is the same as the pixel effective bit I of the pixel of the input line data DI. Therefore, the data length of both data is the same.
[0043]
  As described above, in the data compression method of the present embodiment, when the input line data DI is compressed, the packing unit is switched according to the pixel level conversion and the number of pixel bits reduced by the level conversion. In this way, by compressing the input line data DI by compressing the level information of the pixel in the level direction, the input line data DI can be compressed while maintaining the spatial resolution information. Therefore, it is suitable for compressing data such as a two-dimensional code, which lacks spatial resolution information that hinders restoration.
[0044]
  FIG. 2 is a diagram for explaining the principle of the data compression / decompression method according to the embodiment of the present invention, focusing on the pixels of the input line data DI, the intermediate line data DM, the output line data DO, and the decompression line data B. . The figure shows that the number of pixel effective bits N in the input line data is 8 bits (N = 8), the number of pixel effective bits I in the level-converted intermediate line data DM is 4 bits (I = 8), and output. An example is shown in which the number of pixel effective bits M of the line data DO is (M = 8, 1).
[0045]
  FIG. 2 shows a compression process in which level conversion and packing conversion are sequentially performed on two pixels PI (PI-1, PI-2), and transfer of compressed line data generated by the compression process (the above is compression). And the decompression process of the compressed line data that sequentially performs unpacking conversion and level conversion on the compressed line data. In the same figure, two types of data restoration methods are shown.
[0046]
  First, the image data compression method will be described. In compression, first, for the first pixel PI-1 and the second pixel PI-2 of the input line data DI (see FIG. 2A), the upper 4 bits are shifted by 4 bits in the lower direction. Then, level conversion is performed in which “0” is set in the lower 4 bits (see FIG. 5B). In this case, the number of bits (level information) I of the pixel effective bits I is “4”. Further, these pixels PI-1 and PI-2 are pixels of the intermediate line data DM in FIG.
[0047]
  Next, the lower 4 bits are deleted from the pixels PI-1 and PI-2, and packing conversion for packing the upper 4 bits of the pixel PI-1 and the pixel PI-2 is performed, so that 8-bit compressed line data ( Packing data) DP is generated (see FIG. 2C). By such a compression method, the input line data DI is converted into output line data (compressed line data) DP having a data amount of ½ (see FIG. 1C). Then, the compressed line data DP is transferred to the decompressing device (see FIGS. 2D and 2G).
[0048]
  When the host machine receives the compressed line data DP. Then, unpacking conversion and level conversion are performed to restore the line data. Here, first, a first embodiment of an image data restoration method for restoring the pixel of the pixel effective bit M of the restored line data B to the same number of bits M as the pixel effective bit M of the pixel of the input line data DI will be described with reference to FIG. This will be described with reference to 2 (d) to (f).
[0049]
  First, as shown in FIG. 4D, unpacking conversion is performed on the compressed line data DP. In this unpacking conversion, one pixel obtained by performing the conversion opposite to the packing conversion based on the level information (in this case, I = 4 bits) and performing the level conversion shown in FIG. The eye data (level conversion data) PL-1 and the second pixel data (level conversion data) PL-2 are restored (see (e) in the figure).
[0050]
  Subsequently, as shown in FIG. 5E, level conversion is performed on the restored data PL-1 of the first pixel and data PL-2 of the second pixel, and M bits (pixel effective bit M) are obtained. The restored pixel data PLR-1 for the first pixel and the restored image data PLR-2 for the second pixel are generated (see (f) in the figure). In the level conversion process shown in FIG. 5E, the right 4 bits (lower 4 bits) of the pixel data PL-1 and PL-2 are shifted by 4 bits in the upper direction, and “0” is set in the lower 4 bits. Then, 8-bit (M = 8) pixel data PLR-1 and PLR-2 shown in FIG.
[0051]
  In the image data restoration method of the first embodiment, the value of the restored pixel data PLR (PLR-1, PLR-2) is the value of the same pixel data PI (PI-1, PI-2) of the input line data data DI. To be represented by the same number of bits (at the same level). Thereby, a gradation image or the like can be restored (generated).
[0052]
  Next, a second embodiment of the image data restoration method will be described with reference to FIGS. In this embodiment, binary pixel data is restored (generated).
  First, the compressed line data DP shown in FIG. 5G is unpacked by the same method as in the first embodiment to restore the first pixel data PL-1 and the second pixel data PL-2. (See (h) in the figure). Subsequently, as shown in FIG. 5H, the two pixel data PL-1 and PL-2 are binarized, and the first pixel is “1” and the second pixel is “0”. And Then, the binarized two 1-bit (M = 1) pixel data is set to the first bit and the second bit of the 8-bit restored image data PLR '(see (i) in the figure). In this binarization process, a quantization process using a binary value “1000” (= 8) as a threshold value is performed.
[0053]
  As described above, in the image data restoration method of the second embodiment, the pixels of the input line data DI, which was multi-valued image data, are restored to binary image data of the pixel effective bit M (M = 1). Incidentally, in both the unpacking conversion and the level conversion in the first and second image data restoration methods, the number of pixel effective bits I of the intermediate line data generated by the level conversion in the image data compression (I = Refer to 4-bit level information).
[0054]
  FIG. 3 is a block diagram showing the system configuration of the image reading apparatus including the first embodiment of the data compression apparatus of the present invention.
  The image reading apparatus 1 shown in FIG. 1 includes a reading control unit 3 and a sensor unit 40. The sensor unit 40 is an image sensor that reads image information as an optical signal, converts it into an electrical signal, and outputs image data of the image information.
[0055]
  The data processing unit 3 includes a data compression unit 10, an image signal processing unit 20, and an I / F unit (data transfer unit) 30. The image signal processing unit 20 and the I / F unit 30 have the same functions as the image signal processing unit 142 and the I / F unit 143 in FIG. 13 described above, respectively, and detailed description thereof is omitted here.
[0056]
  The data compression unit 10 is a first embodiment of the data compression device of the present invention, and includes a level conversion image data generation unit 11 and a packing data generation unit 12. The level converted image data generation unit 12 performs the level conversion process shown in FIG. 2B on the line data input from the image signal processing unit 20, and the pixel effective bit I obtained by the level conversion process. The intermediate line data composed of the pixel data is output to the packing data generation unit 12. The packing data generation unit 12 performs the packing conversion shown in FIG. 2C on the intermediate line data DI to generate compressed line data DO. The I / F unit 30 transfers the compressed line data DO input from the packing data generation unit 12 to an information processing apparatus (not shown).
[0057]
  FIG. 4 is a block diagram showing a system configuration of an image reading apparatus including the second embodiment of the data compression apparatus of the present invention. In the figure, components having substantially the same functions as those of the image reading apparatus 100 shown in FIG. 13 are given the same names. In addition, signals having the same function are denoted by the same reference numerals.
[0058]
  The image reading apparatus 2 shown in FIG. 1 includes a scanner unit 60 and a data processing unit 50. The scanner unit 60 includes an image reading unit 61 and a movement amount detection unit 62. The image reading unit 61 and the movement amount detection unit 62 are the same as the image reading unit 112 and the movement amount detection 113 of FIG. 13 described above, and detailed description thereof is omitted here.
[0059]
  The data processing unit 50 includes an image signal processing unit 52, a reading control unit 52, and an I / F unit (data transfer unit) 53. The image signal processing unit 52 and the I / F unit 53 have the same functions as the image signal processing unit 20 and the I / F unit 30 of FIG. 3 described above, respectively.
[0060]
  The read control unit 52 is a second embodiment of the data compression apparatus of the present invention, and includes a level conversion image data generation unit 52a, a packing data generation unit 52b, a data rate detection unit 52c, a transfer rate evaluation unit 52d, and a movement amount evaluation unit. 52e. The reading control unit 52 is a second embodiment of the data compression apparatus of the present invention. In addition to data compression, the reading control of the entire data processing unit 50 and transfer data (compressed line data) to be transmitted to the information processing device 65 are provided. Is output to the I / F unit 53.
[0061]
  The data transfer rate detection unit 52c detects the transfer rate (data transfer rate) of the I / F unit 53, and notifies the transfer rate evaluation unit 52d of the detection result tv. For example, the data transfer rate detection unit 52c monitors the amount of data transferred per unit time from the I / F unit 30 to the information processing device 65, and calculates the data transfer rate of the I / F unit 53 from the monitoring result. The data transfer rate of the I / F unit 53 is detected. In addition to the above method, the data transfer rate detection unit 52c acquires, for example, a data transfer rate defined in advance as the specification of the I / F unit 53 from the I / F unit 53 and the like, and obtains the data transfer rate. Data transfer rate. In the actual operating environment, the transfer rate (data transfer rate) between the I / F unit 53 and the information processing device 65 varies depending on the state of the information processing device 65 and the like. It is preferable to detect the data transfer rate.
[0062]
  The transfer rate evaluation unit 52d, for example, based on the driving cycle (driving frequency) of the image reading unit 61 and the resolution per line of the image reading unit 61, the line data read by the image reading unit 61 per unit time described above. The amount (data generation speed S) is calculated. The transfer rate evaluation unit 52d compares the data generation rate S with the data transfer rate of the I / F unit 53, and determines whether the data transfer rate is slower than the data generation rate S. When the transfer rate evaluation unit 52d evaluates that the data transfer rate is slower than the data generation rate S, the level converted image data generation unit 52a generates image data generated by the image signal processing unit 51. (Line data of pixel effective bit N) The optimum bit number I (level information) of the pixel effective bit I when performing level conversion processing on D2 is determined, and this is used as the level conversion image data generation unit 52a and packing data generation This is notified to the unit 52b. At this time, the transfer rate evaluation unit 52d also notifies the level conversion image data generation unit 52a and the packing data generation unit 52b of level conversion and packing conversion instructions, respectively. The notification of these instructions may be substituted by notification of information regarding the number of bits of the pixel effective bit I.
[0063]
  When the driving speed of the image reading unit 61 is high or when the resolution per line (line resolution) of the image reading unit 61 is high, the number of line data per unit time value read by the image reading unit 61 (data amount) ) Will grow. For this reason, the data generation speed S increases. For example, in a flatbed scanner having an image reading unit with high line resolution or high driving speed, the data generation speed S is high. For this reason, the I / F unit 53 having a low data transfer speed may not be able to execute data transfer that can follow the data generation speed S of such a flatbed scanner. In the present embodiment, assuming such a case, the transfer rate evaluation unit 52d compares the data generation rate S with the data transfer rate of the I / F unit 53, and the line generated by the image signal processing unit 51. It is determined whether data compression of the data D2 is necessary. When the transfer rate evaluation unit 52d determines that the data compression is necessary, the transfer rate evaluation unit 52d instructs the level conversion image data generation unit 52a and the packing data generation unit 52b to perform the operation, and causes them to execute the compression of the line data D2. The amount of data that the F unit 53 should transfer to the information processing device 65 is reduced.
[0064]
  When the level conversion image data generation unit 52a is notified of information such as the number I (level information) of the pixel effective bits I together with the level conversion instruction from the transfer rate evaluation unit 52d, the level conversion image data generation unit 52a shown in FIG. A level conversion process is performed on the line data D2 (corresponding to the input line data DI in FIG. 1A) received from the image signal processing unit 51 by a method or the like. Then, the level converted image data generation unit 52a outputs the intermediate line data DM (see FIG. 1B) obtained by the level conversion process to the packing data generation unit 52b. Incidentally, the level converted image data generation unit 52a has a line buffer 57 therein, and temporarily stores the line data D2 input from the image signal processing unit 51 therein.
[0065]
  When the packing data generation unit 52b receives an instruction for packing conversion from the transfer rate evaluation unit 52d and then receives the intermediate line data DM from the level converted image data generation unit 52a, the pixel valid notified from the transfer rate evaluation unit 52d Based on the number of bits I (level information) of bit I, packing conversion is performed on the intermediate line data DM by the method shown in FIG. 2C described above to generate output line data DO. Then, output line data (compressed data) DO (see FIG. 1C) is generated by adding level information (the number of bits I of the pixel effective bits I) to the output line data DO, and this is output to the I / F unit. To 53. The I / F unit 53 transfers the compressed data DO to the information processing device 65.
[0066]
  In addition to the evaluation by the transfer speed evaluation unit 52d, the reading control unit 52 uses the level conversion image data generation unit 52a and the packing data generation unit 52b to generate an image signal based on the evaluation result of the movement amount evaluation unit 52e. The line data D2 generated by the processing unit 51 is compressed.
[0067]
  The movement amount evaluation unit (movement speed evaluation unit) 52e calculates the movement speed of the image reading unit 61 based on the movement amount detection pulse signal S1 input from the movement amount detection unit 62. That is, for example, the input time interval of the pulse (encoder pulse) of the movement amount detection pulse signal S1 is measured, and the movement speed is calculated from the time interval and the movement amount of the image reading unit 61 per pulse. This moving speed corresponds to the speed at which the user moves the scanner unit 60 on the document.
[0068]
  Further, the movement amount evaluation unit 52 e obtains the driving speed of the image reading unit 61 from the driving cycle of the image reading unit 61. This drive speed may be obtained based on the pulse generation cycle of the drive signal S2, or may be obtained from the drive cycle defined in the specification of the image reading unit 61. When the movement amount evaluation unit 52e evaluates that the movement speed of the image reading unit 61 is higher than the driving speed of the image reading unit 61, the level conversion image data generation unit 52a performs level conversion according to the speed difference. The number I (level information) of the pixel effective bits I to be used at this time is determined, and this is notified to the level converted image data generation unit 52a and the packing data generation unit 52b. In addition, the movement amount evaluation unit 52e instructs the level conversion image data generation unit 52a and the packing data generation unit 52b to execute level conversion and packing conversion, respectively. This instruction may be substituted by notification of the level information. In the present embodiment, the movement amount evaluation unit 52e has a function of detecting the drive speed of the image reading unit 61 from the movement amount detection pulse signal S1, but the movement speed detection unit having this function is read-controlled. The unit 52 is provided separately from the movement amount evaluation unit 52e, and the movement amount evaluation unit 52e is configured to only compare and evaluate the movement speed (detected by the movement speed detection unit) and the driving speed. Also good.
[0069]
  When the level conversion image data generation unit 52a and the packing data generation unit 52b are notified of the operation execution instruction from the movement amount evaluation unit 52e, they receive the same notification from the transfer rate evaluation unit 52d. Execute. Thereby, level conversion and packing conversion are performed on the line data D2 stored in the line buffer 57 in the level conversion image data generation unit 52a by the level conversion image data generation unit 52a and the packing data generation unit 52b, respectively. The packing data generation unit 52b finally generates compressed data (output line data) DO. The compressed data DO is output from the packing data generation unit 52 b to the I / F unit 53 and transferred to the information processing device 65 via the I / F unit 53.
[0070]
  The situation in which the moving speed of the image reading unit 61 exceeds the driving speed of the image reading unit 61 is that when the user reads an image of a document with a handy scanner, the scanner unit 60 is faster than the driving speed of the image reading unit 61. Occurs when moved. In such a case, a plurality of movement amount detection pulse signals S1 are output from the movement amount detection unit 62 within the drive cycle of the image reading unit 61. At this time, the level-converted image data generation unit 52a uses the movement amount detection pulse signal S1 of the line data read at the beginning of the driving cycle stored in the line buffer 57 in order to prevent the line data from being lost. As many line data as the number of encoder pulses are generated. For this reason, the amount of image data generated per unit time increases, and the amount of data that the I / F unit 53 should transfer to the information processing device 65 per unit time (the I / F unit 53 is normal to the information processing device 65). Therefore, the data transfer speed of the I / F unit 53 required for performing data transfer to the network increases. Normally, the I / F unit 53 has a data transfer rate that can be used when the image reading unit 61 of the scanner unit 60 reads one line of data within the driving cycle. When the moving speed of the image reading unit 61 exceeds the driving speed of the image reading unit 61, the amount of data that the I / F unit 53 should transfer to the information processing device 65 exceeds the data transfer capability of the I / F unit 53. In the present embodiment, in order to prevent such a situation, a movement amount evaluation unit 52e is provided, and the image signal processing unit 51 generates line data whose amount exceeds the data transfer rate of the I / F unit 53. Performs data compression by level conversion and packing conversion.
[0071]
  By the way, the reading control unit 52 uses the input of the movement amount detection pulse signal S1 from the movement amount detection unit 62 as a trigger, and the image data stored in the line buffer 57 in the level converted image data generation unit 52a by interruption processing. The series of data transfer processing of D2 is started.
[0072]
  5 and 6 are diagrams showing examples of the format of transfer data generated by the packing data generation unit 52b.
  The transfer data 70 shown in FIG. 5 includes header information 71 and n-line transfer line data 72 (72-1, 72-2, 72-3,..., 72-n). The header information 71 includes level information 71a, packing information 71b, and line information A71c. This header information 71 is transferred to the information processing device 65 prior to the transfer line data 72.
[0073]
  The transfer line data 72 includes line data (compressed line data) compressed by the level conversion image data generation unit 52a and the packing data generation unit 52b or line data not compressed by them (uncompressed line data). For example, information for identifying whether the line data included in the transfer line data 72 is compressed line data or non-compressed line data is set at the head. Further, for example, the level information (pixel effective bit I (in the case of compressed line data) or pixel effective bit N (number of bits of uncompressed line data)) is added.
[0074]
  The level information 71a is information indicating the bit number N of the pixel effective bits N of the uncompressed line data and the bit number I of the pixel effective bits I of the compressed line data. However, the information indicating the bit number I of the pixel effective bit I of the compressed line data is set only when the pixel effective bit I at the time of level conversion of the line data D2 generated by the image signal processing unit 51 is constant. (This is because the pixel valid bit I may be changed according to the data transfer rate of the I / F unit 82). When the level information 71a is set in the header information 71, only the identification information indicating that it includes the compressed line data is added to the head of the transfer line data 72 including the compressed line data. (Addition of level information of the compressed line data is unnecessary).
[0075]
  The packing information 71b is information indicating the type of packing conversion and indicates the form of packing. In the present invention, the packing conversion is not limited to the method shown in FIG. 2C, but the type of data (two-dimensional code, gradation image, color image, etc.) and pixels read by the scanner unit 60. The optimum packing conversion is applied to each of the effective bits I according to the number of bits I or the like. The packing information 71b is information for enabling the restoration side to recognize the plurality of types of packing conversion. On the restoration side, unpacking conversion can be correctly performed based on the packing information 71b.
[0076]
  The line information A71c includes transfer line data 72.RelatedFor example, the total number of non-compressed line data and compressed line data pixels included in the transfer line data 72 is set. In addition, when the size of an image to be read in advance is known, such as a standard-size document sheet, the total number of transfer line data 72 is also set.
[0077]
  The transfer data 75 in FIG. 6 includes header information 76, n-line transfer line data 77 (77-1, 77-2, 77-3,..., 77-n) and an END code 78. The header information 76 includes level information 76a, packing information 76b, and line information B76c.
[0078]
  The transfer data 75 is different from the transfer data 70 in that it has an END code 78 and that the line information B76c does not include the total number of line data 77 unlike the line information A71c. Others are the same, and the transfer line data 77 can have the same configuration as the transfer line data 72.
[0079]
  The transfer data 70 and 75 shown in FIGS. 5 and 6 are only part of the embodiment, and the transfer data generated by the present invention includes formats other than those described above. For example, as schematically shown in FIG. 1C, each transfer line data includes output line data DO (compressed line data or non-compressed line data) and level information (pixel effective bit I or pixel effective bit N). The number of bits) may be added.
[0080]
  As described above, in the present invention, the output line data DO and the level information of the pixel are essential as transfer data, but other information is not necessarily essential. This level information is not limited to the bit number I of the pixel effective bits I, and the level information conversion unit 81b converts the level of the line data D2 (pixel effective bits N) generated by the image signal processing unit 51. Thus, the number of pixel effective bits (= N−I) reduced when generating compressed line data (pixel effective bit I) may be used. For example, the total number of line data is not necessarily essential. On the restoration side, restoration of transfer data ends when there is no line data to be restored (not sent).do itAlternatively, it is possible to restore the line data every time it is transferred.
[0081]
  Next, various embodiments of the operation of the reading control unit 52 shown in FIG. 3 will be described with reference to FIGS. 7 and 8 are flowcharts for explaining the operation of the reading control unit 52 corresponding to the case where the scanner unit 60 of the image reading apparatus 2 reads an image from a document sheet whose size is specified in advance. FIG. 9 shows an irregular operation of the scanner unit 60 such as when the user turns on / off the operation switch of the scanner unit 60 of the handy scanner and reads an image from a part of the original paper. 7 is a flowchart for explaining the operation of the corresponding reading control unit 52.
[0082]
  First, the flowchart of FIG. 7 will be described. The processing in this flowchart is a flowchart for explaining the operation of the reading control unit 52 that generates the transfer data 70 in the format of FIG. In this process, two registers, a setting LINE and a reading LINE, are used (these registers are also used in the flowchart of FIG. 8). The setting LINE is a register in which the number n of read lines obtained from the size of the original paper read by the scanner unit 60 and the line resolution of the image reading unit 61 is set. The read LINE is a register in which the actual number of lines read by the scanner unit 60 is set.
[0083]
  First, “n” is set in the setting LINE (SA1). Next, the header information 71 of the transfer data 70 is created and output to the I / F unit 53 (SA2). Subsequently, it is checked whether the value of the setting LINE is equal to the value of the reading LINE, and it is determined whether the processing has been completed for all the lines of the image read by the scanner unit 60 (SA3). If the values set in both LINEs are not equal, it is determined whether or not an encoder pulse (pulse of the movement amount detection pulse signal S1) is input from the movement amount detector 62 (SA4). If no encoder pulse is input, the process returns to step SA3.
[0084]
  On the other hand, if an encoder pulse is input in step SA4, line data D2 stored in the line buffer 57 of the level converted image data generation unit 52a is generated for the number of encoder pulses detected in step SA4 (SA5). In the case of a hand-held scanner, the user may move the scanner unit 60 two or more lines within the drive cycle of the image reading unit 61. In such a case, in order to prevent the loss of line data, The line data D2 read at the beginning of the driving cycle is copied by the number of encoder pulses. Instead of copying a plurality of line data, a set of one line data D2 and the number of encoder pulses (movement amount data M) may be generated as in the conventional invention 2 (FIG. 15C). ) Transfer data D3-2).
[0085]
  Next, the value of the read LINE is incremented by the number of encoder pulses detected in step SA4 (SA6), and the transfer rate (data transfer rate) of the I / F unit 53 is determined based on the evaluation result of the transfer rate evaluation unit 52d. It is determined whether the data generation speed S is smaller (slower) (SA7). If the transfer rate of the I / F unit 53 is lower than the data generation rate S, the level conversion image data generation unit 52a and the packing data generation unit 52b reduce the level (level) for the line data generated in step SA5. Conversion) processing and packing processing (packing conversion) are sequentially performed to compress the line data, transfer line data is generated based on the compressed line data obtained by the compression, and is output to the I / F unit 53 (SA9). Then, the process returns to step SA3.
[0086]
  On the other hand, if the transfer rate of the I / F unit 53 is equal to or higher than the data generation rate S in step SA7, the moving speed of the image reading unit 61 of the scanner unit 60 is next based on the evaluation result of the moving amount evaluating unit 52e. Is larger (faster) than the drive speed of the image reading unit 61 (SA8). If the moving speed of the image reading unit 61 is higher than the driving speed of the image reading unit 61, the process proceeds to step SA9, where level conversion (level reduction) is performed by the level conversion image data generation unit 52a and the packing data generation unit 52b in step SA9. ) Processing and packing processing (packing conversion) are performed to generate compressed line data, transfer line data is generated based on the compressed line data, which is output to the I / F unit 53 (SA9), and the process returns to step SA3.
[0087]
  In step SA8, if the moving amount evaluation unit 52e determines that the moving speed of the image reading unit 61 is equal to or lower than the driving speed of the image reading unit 61, the transfer line is based on the line data generated by the image signal processing unit 51. Data is generated and output to the I / F unit 52 (SA10), and the process returns to step SA3.
[0088]
  Then, in step SA3, the processing in steps SA3 to SA10 is repeated until it is determined that the read LINE value and the set LINE value are the same. In step SA3, the read LINE value and the set LINE value become the same. If it is determined that the process has been completed, the process is terminated.
[0089]
  As described above, the reading control unit 52 determines that the generation amount of the line data (data generation rate S) to be transferred to the information processing device 65 is I / O according to the evaluation result of the transfer rate evaluation unit 52d or the movement amount evaluation unit 52e. Only when it is determined that the data transfer capability (data transfer rate) of the F unit 53 is exceeded, the line data is subjected to level conversion and packing conversion to compress the line data. Accordingly, the line data D2 generated by the image signal processing unit 51 is compressed only when necessary. For this reason, the line data 72 of the transfer data 70 may include both compressed data and uncompressed data (line data D2 generated by the image signal processing unit 51).
[0090]
  Next, FIG. 8 is a flowchart for explaining the operation of the reading control unit 52 that generates the transfer data 75 in the format of FIG. In FIG. 8, the same step symbols are assigned to the same steps as those in FIG. 7, and description of those steps is omitted. The flowchart of FIG. 8 differs from the flowchart of FIG. 7 in that it is determined in step SA3 that the value of the read LINE and the value of the set LINE are the same, and then the END code is output to the I / F unit 82 (SA11). The point is to end the processing.
[0091]
  Next, the operation of the reading control unit 52 when the user reads an image from a part of an original sheet with a handy scanner will be described with reference to the flowchart of FIG. In this flowchart, an operation switch (not shown) for instructing start / end of operation of the image reading unit 61 provided in the scanner unit 60 of the image reading unit 61 is set to ON, and reading of an image by the scanner is started. The operation of the reading control unit 52 from the time point is shown.
[0092]
  First, initialization for setting “0” to the read line is performed (SA21). This is because when the user reads an image such as a part of an original sheet with a handy scanner, the number of read lines of the image cannot be determined unless the user actually operates the scanner.
[0093]
  Next, header information of the transfer data is created and output to the I / F unit 82 (SA22). In this process, header information in which only the packing information is mainly set is created.
[0094]
  Subsequently, it is determined whether the operation switch for instructing the start / end of the operation of the image reading unit 61 provided in the scanner unit 60 is OFF (SA23). If the operation switch is not OFF, it is determined whether or not the movement amount detection pulse signal S1 (encoder pulse) has been input (SA24). If no encoder pulse has been input, the process returns to step SA23.
[0095]
  On the other hand, if there is an encoder pulse input, the line data D2 stored in the line buffer 57 of the level converted image data generation unit 52a is generated by the number of encoder pulses (SA25). Then, the value of the read LINE is incremented by the number of encoder pulses (SA26). In step SA28, the value of the read line set in step SA25 is set as the number of restored lines in the line information 71c of the header information 71 of the transfer data 70. The number of restored lines may be set after it is determined in step SA23 that the scanner operation switch is set to OFF.
[0096]
  Next, based on the evaluation result of the transfer rate evaluation unit 52d, it is determined whether the transfer rate of the I / F unit 53 is slower than the data generation rate S (SA29). If the transfer rate of the I / F unit 53 is slower than the data generation rate S (if it is smaller), the level converted image data generation unit 52a and the packing data generation unit 52b apply the level data to the line data generated in step SA25. Reduction (level conversion) and packing processing (packing conversion) are performed to create transfer line data, which is output to the I / F unit 53 (SA29), and the process returns to step SA23.
[0097]
  If the transfer rate of the I / F unit 53 is equal to or higher than the data generation rate S in step SA27, then, is the moving speed of the image reading unit 61 of the scanner unit 60 faster (larger) than the driving speed of the image reading unit 61? A determination is made (SA28). If the moving speed is faster than the driving speed, the line data generated in step SA25 is subjected to level reduction and packing processing in step SA29, and compressed line data is generated by these series of processing. The transfer line data is generated based on the data, and is output to the I / F unit 82 (SA29), and the process returns to step SA23.
[0098]
  On the other hand, if the moving speed of the image reading unit 61 of the scanner unit 60 is equal to or lower than the driving speed of the image reading unit 61 in step SA28, transfer data is generated based on the line data D2 generated by the image signal processing unit 51. Then, it is output to the I / F unit 53, and the process returns to step SA23.
[0099]
  The processes in steps SA23 to SA30 are repeated until it is determined in step SA23 that the scanner operation switch has been turned off. If it is determined in step SA23 that the scanner operation switch has been turned off, the process is terminated.
[0100]
  FIG. 10 is a block diagram showing a system configuration of a main part according to the present invention of an information processing apparatus 65 provided with a data decompression apparatus for decompressing compressed data received from the image reading apparatus 1 of FIG.
[0101]
  The information processing apparatus 65 includes a data restoration unit 81 and an I / F unit 82. The I / F unit 82 is an interface that receives compressed data transmitted from the I / F unit 30 of the image reading apparatus 1. The I / F unit 82 outputs the received compressed data to the data restoration unit 81 in units of lines, for example.
[0102]
  The data restoration unit 81 includes an unpacking processing unit 81a and a level information conversion unit 81b. The unpacking processing unit 81a performs unpacking processing on the compressed data (compressed line data) input from the I / F unit 82, and before the packing data generation unit 12 of the image reading apparatus 1 performs packing conversion. The line data (intermediate line data) DM of the pixel effective bit I is restored (see FIG. 1B) and is output to the level information conversion unit 81b. The number of pixel effective bits N of each pixel of the intermediate line data DM is N bits similarly to the input line data DI read by the sensor unit 40 of the image reading apparatus 1 (see FIG. 1A).
[0103]
  The level information conversion unit 81b performs level conversion on the line data DM input from the unpacking processing unit 81a, and converts the line data of the pixel effective bits M (1 ≦ M ≦ N) required by the information processing device 65. Generation (restoration) is performed (see FIGS. 2F and 2I).
[0104]
  The unpacking processing unit 81a and the level information conversion unit 81b restore the compressed data received by the I / F unit 82 in units of lines, and finally restore all line data. Image data composed of line data restored by the unpacking processing unit 81a and the level information conversion unit 81b is stored in the image data storage unit 90. The image data storage unit 90 is a magnetic disk, a magneto-optical disk, a semiconductor memory, or the like.
[0105]
  FIG. 10 is a flowchart for explaining the operation of the data restoration unit 81 of FIG. The data restoration unit 81 inputs the compressed data (compressed line data) received by the I / F unit 82 from the I / F unit 82 and stores it in an internal line buffer (not shown). In this line buffer, the compressed line data received by the I / F unit 82 is temporarily stored.
[0106]
  The unpacking processing unit 81a reads compressed line data (line image data) from the line buffer (SB1). In this step SB1, it is also determined whether the reading of the compressed line data has been completed. If there is no compressed line data to be read into the line buffer, it is determined that the reading of the compressed line data has been completed.
[0107]
  If the compressed line data is read in step SB1, the unpacking processing unit 81a performs unpacking processing on the compressed line data to generate intermediate line data DM (SB2). Next, the level information conversion unit 81b performs level conversion on the intermediate line data DM, restores and outputs the output line data (SB3), and returns to step SB1.
[0108]
  The processes in steps SB1 to SB3 are repeated until it is determined in step SB1 that the reading of the compressed line data has been completed, and finally the same number as the input line data DI read by the sensor unit 40 of the image reading apparatus 1. Output image data composed of line data is restored. Further, the number of pixels of each line data of the restored output image data is the same as the number of pixels of each line data of the input image data read by the sensor unit 40. In other words, the input image data and the output image data have the same spatial resolution information, and the data restoration unit 81 restores the image data compressed by the image reading device 1 while keeping the spatial resolution information.
[0109]
  The functions of the data compression unit 10, the reading control unit 52, and the data restoration unit 81 described above can be realized by a computer (CPU or the like) executing a program. SnowTheFunctions of level conversion image data generation units 11, 52a, packing data generation units 12, 52b, data rate detection unit 52c, transfer rate evaluation unit 52d, movement amount evaluation unit 52e, unpacking processing unit 81a, and level information conversion unit 81b Can be realized by causing the computer to execute a program for causing the computer to execute the program.
[0110]
  The program is recorded on a computer-readable recording medium (for example, CD-ROM, CD-R, CD-RW, DVD, DVD-R, DVD-RW, floppy disk, memory card, etc.), thereby Programs can be saved and distributed easily. Further, the program is stored in an information processing apparatus such as a server connected to a network such as the Internet or a wide area LAN, and the program is acquired from a device such as a personal computer connectable to the network via the network. Various distribution forms are also possible.
[0111]
    (Supplementary note 1) A data compression device for compressing line data read by an image reading means for reading an image of a document line by line,
  First image data generating means for inputting the digitized line data and generating intermediate line data in which the effective bits of each pixel of the line data are reduced in the level direction;
  Second image data generating means for generating output line data in which pixels other than valid bits are deleted from each pixel of the intermediate line data and pixels consisting of only valid bits are packed;
  A data compression apparatus comprising:
[0112]
    (Supplementary note 2) The data compression apparatus according to supplementary note 1, wherein level information indicating the number of effective bits of each pixel is added to the output line data.
    (Appendix 3)
  Data transfer rate detecting means for detecting the data transfer rate of the interface for transferring the output image data;
  The data generation rate indicating the amount of data read per unit time by the image reading unit is compared with the data transfer rate detected by the data transfer rate detection unit, and the data transfer rate is the data amount transfer rate. A transfer rate evaluation means for notifying the first image data generation means of the number of effective bits when it is evaluated that it is slower than
  The first image data generation unit and the second image data generation unit are respectively configured to perform the intermediate processing only when the transfer rate evaluation unit evaluates that the data transfer rate is slower than the data generation rate. The data compression apparatus according to appendix 1, wherein line data and the output line data are generated.
[0113]
    (Supplementary note 4) If the data rate is evaluated by the transfer rate evaluation means to be equal to or higher than the data amount transmission rate, the digitized line data is output as it is. 3. The data compression device according to 3.
[0114]
    (Supplementary note 5) The data compression apparatus according to supplementary note 3 or supplementary note 4, wherein level information indicating the number of effective bits of each pixel is added to the output line data.
[0115]
    (Appendix 6) Furthermore,
  A signal indicating the amount of movement of the image reading means is input, the moving speed of the image reading device is detected from the signal, the moving speed is compared with the driving speed of the image reading means, and the moving speed is determined as the driving speed. If it is evaluated that it is faster than the speed, it comprises a moving speed evaluation means for notifying the number of effective bits to the first image data generation means and the second image data generation means,
  The first image data generation unit and the second image data generation unit are respectively configured to output the intermediate line data only when the movement speed evaluation unit evaluates that the movement speed is higher than the driving speed. The data compression apparatus according to appendix 1, wherein the output line data is generated.
[0116]
    (Supplementary note 7) When the movement amount evaluation unit evaluates that the movement speed is less than or equal to the driving speed, the digitized line data is output as it is. Data compression device.
[0117]
    (Supplementary note 8) The data compression apparatus according to supplementary note 6 or 7, wherein level information indicating the number of effective bits of each pixel is added to the output line data.
[0118]
    (Supplementary Note 9) A data compression method for compressing line data read by an image reading unit that reads an image of a document line by line,
  Inputting the digitized line data and generating intermediate line data in which the effective bits of each pixel of the line data are reduced in the level direction;
  An output line data generation step of generating output line data in which pixels other than effective bits are deleted from each pixel of the intermediate image data and pixels consisting of only effective bits are packed,
  A data compression method comprising:
[0119]
    (Supplementary note 10) The data compression method according to supplementary note 9, wherein level information indicating the number of effective bits of each pixel is added to the output line data.
    (Appendix 11) Furthermore,
  A data transfer rate detecting step for detecting a data transfer rate of an interface for transferring the output image data;
  The data generation rate indicating the amount of data read per unit time by the image reading means is compared with the data transfer rate detected by the data transfer rate detection step, and the data transfer rate is the data amount transfer rate. A data rate evaluation step for obtaining the number of effective bits used in the intermediate line data generation step,
  The intermediate line data generation step and the output line data generation step are executed only when it is evaluated in the data transfer rate evaluation step that the data transfer rate is slower than the data generation rate. The data compression method according to appendix 9.
[0120]
    (Supplementary Note 12) In the step of evaluating the transfer rate, when the data transfer rate is evaluated to be equal to or higher than the data amount transfer rate, the digitized line data is output as it is. The data compression method according to appendix 11.
[0121]
    (Supplementary note 13) The data compression method according to supplementary note 11 or 12, wherein level information indicating the number of effective bits of each pixel is added to the output line data.
[0122]
    (Appendix 14) Furthermore,
  A signal indicating the amount of movement of the image reading means is input, the moving speed of the image reading device is detected from the signal, the moving speed is compared with the driving speed of the image reading means, and the moving speed is determined as the driving speed. If it is evaluated that it is faster than the speed, it comprises a moving speed evaluation step for obtaining the number of effective bits used in the intermediate line data generation step and the output line data generation step,
  The intermediate line data generation step and the output line data generation step are executed only when the movement speed evaluation step evaluates that the movement speed is faster than the driving speed. Data compression method.
[0123]
    (Supplementary note 15) The supplementary note 14, wherein, in the movement amount evaluation step, if the movement speed is evaluated to be equal to or less than the driving speed, the digitized line data is output as it is. Data compression method.
[0124]
    (Supplementary note 16) The data compression method according to supplementary note 14 or 15, wherein level information indicating the number of effective bits of each pixel is added to the output line data.
[0125]
    (Supplementary Note 17) A computer-readable recording medium that records a program for causing a computer to execute processing for compressing line data read by an image reading unit that reads an image of a document in line units,
  Inputting the digitized line data and generating intermediate line data in which the effective bits of each pixel of the line data are reduced in the level direction;
  An output line data generation step of generating output line data in which pixels other than valid bits are deleted from each pixel of the intermediate line data and pixels consisting of only valid bits are packed,
  A computer-readable recording medium having recorded thereon a program for causing the computer to execute the processing provided.
[0126]
    (Supplementary note 18) The computer-readable recording medium according to supplementary note 17, wherein level information indicating the number of effective bits of each pixel is added to the output line data.
[0127]
    (Supplementary note 19)
  In addition to the computer,
  Detecting a data transfer rate of an interface for transferring the output image data; and
  The data generation rate indicating the amount of data read per unit time by the image reading unit is compared with the data transfer rate detected by the data transfer rate detection unit, and the data transfer rate is the data amount transfer rate. If it is evaluated that the data rate is slower, the processing of the data transfer rate evaluation step for obtaining the number of effective bits used in the intermediate line data generation step is executed,
  The processing of the intermediate line data generation step and the processing of the output line data generation step are executed only when the data transfer rate is evaluated to be lower than the data generation rate in the data transfer rate evaluation step. The computer-readable recording medium according to appendix 17, wherein the recording medium is readable by a computer.
[0128]
    (Supplementary note 20)
  In the transfer rate evaluating step, if it is evaluated that the data transfer rate is equal to or higher than the data amount transfer rate, the computer is caused to execute a process of outputting the digitized line data as it is. The computer-readable recording medium according to appendix 18, wherein the recording medium is readable by the computer.
[0129]
    (Supplementary note 21) The computer-readable recording medium according to supplementary note 19 or 20, wherein level information indicating the number of effective bits of each pixel is added to the output line data.
[0130]
    (Appendix 22) The program is
  In addition to the computer,
  A signal indicating the amount of movement of the image reading means is input, the moving speed of the image reading device is detected from the signal, the moving speed is compared with the driving speed of the image reading means, and the moving speed is determined as the driving speed. When evaluating that it is faster than the speed, while performing the processing of the moving speed evaluation step for obtaining the number of effective bits used in the intermediate line data generation step,
  The process of the intermediate line data generation step and the process of the output line data generation step are executed only when the movement speed is evaluated to be higher than the driving speed in the movement speed evaluation step. A computer-readable recording medium according to appendix 17.
[0131]
    (Supplementary Note 23) The program is
  In the movement amount evaluation step, when it is evaluated that the movement speed is equal to or lower than the driving speed, the computer is caused to execute a process of outputting the digitized line data as it is. 22. A computer-readable recording medium according to 22.
[0132]
    (Supplementary note 24) The computer-readable recording medium according to supplementary note 22 or 23, wherein level information indicating the number of effective bits of each pixel is added to the output line data.
[0133]
    (Supplementary Note 25) A program for causing a computer to execute a process of compressing line data read by an image reading unit that reads an image of a document line by line.
  Inputting the digitized line data and generating intermediate line data in which the effective bits of each pixel of the line data are reduced in the level direction;
  An output line data generation step of generating output line data in which pixels other than valid bits are deleted from each pixel of the intermediate line data and pixels consisting of only valid bits are packed,
  A program for causing the computer to execute a process provided.
[0134]
    (Supplementary note 26) The program according to supplementary note 25, wherein level information indicating the number of effective bits of each pixel is added to the output line data.
    (Supplementary note 27) The program is
  In addition to the computer,
  Detecting a data transfer rate of an interface for transferring the output image data; and
  The data generation rate indicating the amount of data read per unit time by the image reading unit is compared with the data transfer rate detected by the data transfer rate detection unit, and the data transfer rate is the data amount transfer rate. If it is evaluated that it is slower, the processing of the data transfer rate evaluation step for obtaining the number of effective bits used in the intermediate line data generation step and the output line data generation step is executed,
  The processing of the intermediate line data generation step and the processing of the output line data generation step are executed only when the data transfer rate is evaluated to be lower than the data generation rate in the data transfer rate evaluation step. 26. The program according to claim 25.
[0135]
    (Appendix 28) The program is
  In the transfer rate evaluating step, if it is evaluated that the data transfer rate is equal to or higher than the data amount transfer rate, the computer is caused to execute a process of outputting the digitized line data as it is. The program according to appendix 27, which is characterized.
[0136]
    (Supplementary note 29) The program according to supplementary note 27 or supplementary note 28, wherein level information indicating the number of effective bits of each pixel is added to the output line data.
[0137]
    (Supplementary Note 30) The program is
  The computer further receives a signal indicating the amount of movement of the image reading means, detects the moving speed of the image reading device from the signal, compares the moving speed and the driving speed of the image reading means, When it is evaluated that the moving speed is faster than the driving speed, the moving speed evaluating step for obtaining the number of effective bits used in the intermediate line data generating step is executed,
  The process of the intermediate line data generation step and the process of the output line data generation step are executed only when the movement speed is evaluated to be higher than the driving speed in the movement speed evaluation step. The program according to appendix 25.
[0138]
    (Supplementary Note 31) The program is
  In the movement amount evaluation step, when it is evaluated that the movement speed is equal to or lower than the driving speed, the computer is caused to execute a process of outputting the digitized line data as it is. 30. The program according to 30.
[0139]
    (Supplementary note 32) The program according to supplementary note 30 or 31, wherein level information indicating the number of effective bits of each pixel is added to the output line data.
[0140]
    (Supplementary note 33) For input line data, level conversion for reducing the pixel bits of the input line data in the level direction, and packing for packing the pixels according to the number of bits of the pixels reduced by the level conversion A data restoration device for restoring compressed line data generated by performing conversion,
  A decompression unit that performs unpacking conversion on the compressed line data to return the pixels of the compressed line data to the pixels before the level conversion, and restores the line data before the level conversion;
  Generating means for converting the pixel level of the line data generated by the restoring means to generate line data composed of pixels of a predetermined bit;
  A data restoration device comprising:
[0141]
    (Supplementary note 34) The data according to supplementary note 33, wherein the restoration means performs the unpacking conversion based on level information indicating the number of bits reduced by the level conversion added to the compressed line data. Restore device.
[0142]
    (Supplementary Note 35) For input line data, level conversion for reducing the pixel bits of the input line data in the level direction, and packing for packing the pixels according to the number of bits of the pixels reduced by the level conversion A data restoration method for restoring compressed line data generated by performing conversion,
  A decompression step of performing unpacking conversion for returning the pixels of the compressed line data to the pixels before the level conversion with respect to the compressed line data, and restoring the line data before the level conversion;
  A generation step of converting the level of pixels of the line data generated by the restoration step to generate line data composed of pixels of predetermined bits;
  A data restoration method comprising:
[0143]
    (Supplementary note 36) The data according to supplementary note 35, wherein, in the decompression step, the unpacking conversion is performed based on level information indicating the number of bits reduced by the level conversion added to the compressed line data. Restoration method.
[0144]
    (Supplementary Note 37) For input line data, level conversion for reducing the pixel bits of the input line data in the level direction, and packing for packing the pixels according to the number of bits of the pixels reduced by the level conversion A computer-readable recording medium recording a program executed on a computer for restoring compressed line data generated by performing conversion,
  Subjecting the compressed line data to unpacking conversion for returning the pixels of the compressed line data to the pixels before the level conversion, and restoring the line data before the level conversion;
  Converting the level of pixels of the line data generated by the restoration means to generate line data composed of pixels of predetermined bits;
  A computer-readable recording medium having recorded thereon a program for causing the computer to execute the processing provided.
[0145]
    (Supplementary Note 38) The program is
  38. The computer according to claim 37, wherein in the restoration step, the computer performs the unpacking conversion based on level information indicating the number of bits reduced by the level conversion added to the compressed line data. Is a readable recording medium.
[0146]
    (Supplementary Note 39) Level conversion for reducing the number of bits of pixels of the input line data in the level direction with respect to input line data, and packing for packing the pixels according to the number of bits of the pixels reduced by the level conversion A program for causing a computer to execute processing for restoring compressed line data generated by performing conversion,
  A decompression step of performing unpacking conversion for returning the pixels of the compressed line data to the pixels before the level conversion with respect to the compressed line data, and restoring the line data before the level conversion;
  A generation step for converting the level of pixels of the line data generated by the restoration step to generate line data composed of pixels of predetermined bits,
  A program for causing the computer to execute a process provided.
[0147]
    (Appendix 40) The program is
  40. The program according to claim 39, wherein in the restoration step, the computer performs the unpacking conversion based on level information indicating the number of bits reduced by the level conversion added to the compressed line data. .
[0148]
【The invention's effect】
  As described above, the data compression apparatus of the present invention has the following effects or advantages.
[0149]
  (1) In the data compression according to the present invention, it is suitable for compression of line data in which it is important that the spatial resolution information is preserved at the time of restoration. Therefore, for example, when applied to compression of a two-dimensional code, the decoding rate of the two-dimensional code on the restoration side can be improved.
[0150]
  (2) In the data compression according to the present invention, the generation rate (data generation rate) of data (line data) read by the image reading unit is always compared with the transfer rate of the interface that transfers the data to the restoration side. Thus, only when it is determined that compression is necessary, the data is compressed and output to the interface. For example, a scanner equipped with a high-resolution line sensor, a scanner equipped with a high-speed line sensor, etc. Thus, it is suitable for compression of data read by the image reading apparatus having a high data generation speed. In the data compression according to the present invention, the line data read by the image reading unit is compressed and transferred only when it is determined that compression is necessary, and is transferred as it is when it is determined that compression is not necessary. The data restoration according to the present invention can restore the data (line data) read by the image reading unit more accurately while preserving the spatial resolution information.
[0151]
  (3) In the data compression according to the present invention, the line read by the image reading unit is only compared when both the driving speed and the moving speed of the image reading unit are constantly compared and it is determined that the compression is necessary. Since the data is compressed and output by the above method, for example, the line data is compressed only when a user operation that causes the image reading unit to move beyond its driving speed is performed, and other users Since the line data is output without being compressed during operation, it is suitable for a handy scanner or the like in which the moving speed of the image reading unit varies in accordance with a user operation. For example, by incorporating the data compression apparatus or program of the present invention in a handy scanner, it is possible to prevent line data from being read missing by the handy scanner. Also in this data compression, the line data read by the image reading unit is compressed and transferred only when it is determined that compression is necessary, and transferred when it is determined that compression is not necessary. By the data restoration according to the invention, the data (line data) read by the image reading unit can be restored more accurately while preserving the spatial resolution information.
[Brief description of the drawings]
FIGS. 1A to 1D are views for explaining the principle of a data compression / decompression method according to an embodiment of the present invention.
FIGS. 2A to 2I are diagrams for explaining in detail the principle of a data compression / decompression method according to an embodiment of the present invention, focusing on pixels.
FIG. 3 is a block diagram showing a system configuration of the image reading apparatus including the first embodiment of the data compression apparatus of the present invention.
FIG. 4 is a block diagram showing a system configuration of an image reading apparatus including a second embodiment of the data compression apparatus of the present invention.
FIG. 5 is a diagram illustrating a first form of a format of transfer data transmitted from the image reading apparatus of FIGS. 3 and 4;
6 is a diagram showing a second form of a format of transfer data transmitted from the image reading apparatus of FIGS. 3 and 4. FIG.
7 is a flowchart illustrating a first embodiment of the operation of the image reading apparatus in FIG.
FIG. 8 is a flowchart for explaining a second embodiment of the operation of the image reading apparatus of FIG.
FIG. 9 is a flowchart for explaining a third embodiment of the operation of the image reading apparatus of FIG. 4;
FIG. 10 is a block diagram showing a system configuration of a main part of an information processing apparatus including a data restoration apparatus according to the present invention.
11 is a flowchart for explaining the operation of the data restoration apparatus in FIG. 10;
FIG. 12 is an external view showing an example of a hardware configuration of a handy scanner.
FIG. 13 is a block diagram showing a system configuration of a conventional image reading system.
14A to 14I are time charts at which the conventional image reading system operates.
FIGS. 15A to 15C are diagrams for explaining a transfer / restoration operation of data generated in a normal transfer mode of the conventional image reading system.
FIGS. 16A to 16D are diagrams for explaining a transfer / restoration operation of compressed data generated in the compression transfer mode of the conventional image reading system.
FIGS. 17A and 17B are diagrams illustrating a two-dimensional code and an image restored based on the two-dimensional code. FIGS.
[Explanation of symbols]
  1, 2 Image reading device
  3, 50 Data processing section
  10 Data compression unit
      11 Level converted image data generator
      12 Packing data generator
  20 Image signal processor
  30, 53 I / F part (data transfer part)
  40 Sensor unit
  52 Reading control unit (data compression unit)
      52a Level conversion image data generation unit
      52b Packing data generator
      52c Data rate detector
      52d Transfer rate evaluation unit
      52e Movement amount evaluation part
      57 Line buffer
  60 Scanner unit
      61 Image reader
      62 Movement amount detection unit
  65 Information processing device
  70, 75 Transfer data
      71, 76 Header information
          71a, 76a Level information
          71b, 76b Packing information
          71c Line information A
          76c Line information B
      72, 77 line data
      78 END code
  81 Data restoration unit
      81a Unpacking processing part
      81b Level information converter

Claims (1)

原稿の画像をライン単位で読み取る画像読取手段により読み取られたラインデータを圧縮するデータ圧縮装置であって、
ディジタル化された該ラインデータを入力し、該ラインデータの各画素の有効ビットがレベル方向に削減された中間ラインデータを生成する第1の画像データ生成手段と、
該中間ラインデータの各画素から有効ビット以外のビットを削除して、有効ビットのみから成る画素がパッキングされた出力ラインデータを生成する第2の画像データ生成手段と、
前記画像読取手段の移動量を示す信号を入力し、その信号から前記画像読取手段の移動速度を検出し、その移動速度と前記画像読取手段の駆動速度を比較して、前記移動速度が前記駆動速度よりも速いと評価した場合には、前記第1の画像データ生成手段及び前記第2の画像データ生成手段に前記有効ビット数を通知する移動速度評価手段を備え、
前記第1の画像データ生成手段と前記第2の画像データ生成手段は、前記移動速度評価手段により、前記移動速度が前記駆動速度よりも速いと評価された場合にのみ、それぞれ、前記中間ラインデータと前記出力ラインデータの生成を行うことを特徴とするデータ圧縮装置。
A data compression device for compressing line data read by an image reading means for reading an image of a document line by line,
First image data generating means for inputting the digitized line data and generating intermediate line data in which the effective bits of each pixel of the line data are reduced in the level direction;
Second image data generating means for generating output line data in which pixels other than valid bits are deleted from each pixel of the intermediate line data and pixels consisting of only valid bits are packed;
A signal indicating the amount of movement of the image reading means is input, the moving speed of the image reading means is detected from the signal, the moving speed is compared with the driving speed of the image reading means, and the moving speed is determined as the driving speed. If it is evaluated that it is faster than the speed, it comprises a moving speed evaluating means for notifying the number of effective bits to the first image data generating means and the second image data generating means,
The first image data generation unit and the second image data generation unit are respectively configured to output the intermediate line data only when the movement speed evaluation unit evaluates that the movement speed is higher than the driving speed. And generating the output line data.
JP2002001035A 2002-01-08 2002-01-08 Data compression device Expired - Fee Related JP3923315B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002001035A JP3923315B2 (en) 2002-01-08 2002-01-08 Data compression device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002001035A JP3923315B2 (en) 2002-01-08 2002-01-08 Data compression device

Publications (2)

Publication Number Publication Date
JP2003204435A JP2003204435A (en) 2003-07-18
JP3923315B2 true JP3923315B2 (en) 2007-05-30

Family

ID=27641258

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002001035A Expired - Fee Related JP3923315B2 (en) 2002-01-08 2002-01-08 Data compression device

Country Status (1)

Country Link
JP (1) JP3923315B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7580151B2 (en) 2003-10-01 2009-08-25 Seiko Epson Corporation Image processing system and method, printing system
JP6823333B1 (en) * 2020-05-22 2021-02-03 株式会社Tvt Data transmitters, programs and systems

Also Published As

Publication number Publication date
JP2003204435A (en) 2003-07-18

Similar Documents

Publication Publication Date Title
US7123385B2 (en) Image processing apparatus
US7233702B2 (en) Image data compression apparatus for compressing both binary image data and multiple value image data
US20050276501A1 (en) Image decoding apparatus and its control method
JP5132517B2 (en) Image processing apparatus and image processing method
EP0564227B1 (en) Image encoding apparatus and method
US20050276500A1 (en) Image encoding apparatus, and image processing apparatus and its control method
CN102223463B (en) Multi-function printer
JP2002125090A (en) Communication equipment and communication method and storage medium and its program
GB2345603A (en) Apparatus and method for compressing huffman encoded data
EP0902398B1 (en) Method and system for compressing and decompressing binary representations of dithered images
JP3923315B2 (en) Data compression device
CN1395795A (en) Image recording apparatus and method, image reproducing apparatus and method, and recorded medium on which image processing program is recorded
US7561747B2 (en) Image data processing system and method
US7933039B2 (en) Apparatus, method, and computer program product for forming image
JP3085932B2 (en) Apparatus for generating predicted image using mask and apparatus for compressing, transmitting and restoring binary image using the same
JP2000307818A (en) Scanner and method for selecting scanner resolution
KR100750151B1 (en) Method and apparatus for transmitting of a fax data
KR19980065864A (en) How to create a thumbnail image on a digital still camera
JP4101526B2 (en) Image reading method, image reading apparatus, image reading system, image restoration method, and image reading program
JP4765655B2 (en) Image processing apparatus and image processing program
CN100483447C (en) Image scanning system possessing the function of selective compression and method thereof
JP2000307854A (en) Scanner, and method for switching scanner modes
JP3818238B2 (en) Image processing apparatus and image processing method
JP2006166221A (en) Control method of image processing apparatus
JP3750454B2 (en) Image data encoding apparatus, image data encoding method, recording medium, and image forming apparatus

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20041220

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060718

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060915

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060919

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20061121

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070122

A911 Transfer of reconsideration by examiner before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20070129

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20070220

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070221

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100302

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110302

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110302

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120302

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130302

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130302

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140302

Year of fee payment: 7

LAPS Cancellation because of no payment of annual fees