JP3839942B2 - Multiple image generation method - Google Patents

Multiple image generation method Download PDF

Info

Publication number
JP3839942B2
JP3839942B2 JP33982497A JP33982497A JP3839942B2 JP 3839942 B2 JP3839942 B2 JP 3839942B2 JP 33982497 A JP33982497 A JP 33982497A JP 33982497 A JP33982497 A JP 33982497A JP 3839942 B2 JP3839942 B2 JP 3839942B2
Authority
JP
Japan
Prior art keywords
image
scanner
images
data
original image
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
JP33982497A
Other languages
Japanese (ja)
Other versions
JPH10210279A (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.)
HP Inc
Original Assignee
Hewlett Packard Co
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 Hewlett Packard Co filed Critical Hewlett Packard Co
Publication of JPH10210279A publication Critical patent/JPH10210279A/en
Application granted granted Critical
Publication of JP3839942B2 publication Critical patent/JP3839942B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/46Colour picture communication systems
    • H04N1/64Systems for the transmission or the storage of the colour picture signal; Details therefor, e.g. coding or decoding means therefor
    • H04N1/642Adapting to different types of images, e.g. characters, graphs, black and white image portions

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Image Input (AREA)
  • Editing Of Facsimile Originals (AREA)
  • Facsimile Image Signal Circuits (AREA)
  • Color Image Communication Systems (AREA)
  • Facsimile Scanning Arrangements (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、一般的には光学スキャナに関するもので、特に単一走査からカラーおよび白黒画像を含む複数の画像を取得する方法およびシステムに関するものである。
【0002】
【従来の技術】
光学スキャナは、画像を捕捉しデジタル化するために使用される。例えば、光学スキャナを使用して1枚の紙の上の印刷物の画像を捕捉することができる。デジタル化された画像は、次に電子的に記憶され、更に文字認識ソフトウェアを用いてテキストを生成するように処理されることもできる。大部分の光学スキャナは、照明および光学システムを使用して、オブジェクトを照射して、通常「走査行」と呼ばれる照射されたオブジェクトの小さい領域を光センサ・アレイ上へ集束させる。照明および光学部品に対してオブジェクトを移動させるか、あるいはオブジェクトに対して照明および光学部品を移動させるかいずれかによって、照射される走査行をオブジェクト全体にわたって掃くように移動させることによってオブジェクト全体の走査が実行される。
【0003】
典型的スキャナ光学システムは、照射される走査行の画像を光センサ・アレイ表面に集束させるためのレンズ部品を含む。特定の設計によっては、スキャナ光学システムは、また、複数のミラーを備えて、光線経路を折り曲げることによって光学システムを比較的小さい筐体内に実装することができるようにすることもある。
【0004】
種々のタイプの光センサ装置が光学スキャナで使用される可能性があるとはいえ、一般的に使用されるセンサは電荷結合素子(charge coupled device)すなわちCCDである。よく知られているように、CCDは、各々が光の露出に反応して電荷を収集または構築する多数の個別セルあるいはピクセルを含む。所与のセルまたはピクセルに蓄積される電荷の大きさは光露出の強度および持続時間に関係しているので、集束される画像上の明るいスポットおよび暗いスポットを検知するためCCDが使用される。典型的スキャナ・アプリケーションにおいては、CCDセルまたはピクセルの各々に構築される電荷が測定され、典型的スキャナで約5ミリ秒程の露出時間またはサンプリング間隔として知られる規則的間隔で放電される。荷電(すなわち画像データ)は露出時間の間にCCDセルに同時に収集されるので、CCDセルからの同時または並列的データを連続または逐次データストリームに変換するためアナログ・シフト・レジスタがCCDにおいて使用される。
【0005】
典型的アナログ・シフト・レジスタは、各々が個別セルに接続されている複数の電荷転送バケットを含む。露出時間の最後に、CCDセルの各々によって収集された電荷が同時に電荷転送バケットへ転送され、CCDセルは次の露出に備える。次に、各バケットの電荷が、CCDセルが次の走査行に対して露出されている間に、バケットからバケットへバケツ・リレーのように伝送される。次に、順に並べられたCCDセルからの電荷は、1つずつ、適切なアナログ/デジタル変換器によってデジタル信号に変換される。
【0006】
大部分の光学スキャナのアプリケーションにおいては、CCDの個別ピクセルの各々は線形アレイを形成するように、順に配列される。このように、CCDアレイにおける各ピクセルは、照射された走査行の関連ピクセル部分に対応する。線形光センサ・アレイにおける個別ピクセルは、一般的に、「横方向」、すなわちオブジェクトを横切って進む(照射された)走査行の移動方向に対し垂直な方向に配列される。従って、線形光センサ・アレイの各ピクセルは、横方向に測定される長さおよび走査方向に測定される幅を持つ。大部分のCCDアレイにおいて、ピクセルの長さおよび幅は等しく、典型的にはそれぞれ約8ミクロンである。
【0007】
横方向のサンプリング率は、CCDにおける個別セルの数の関数である。例えば、一般に広く使用されているCCD光センサ・アレイは、約600PPI(ピクセル/インチ)という横方向におけるサンプリング率を可能にするために十分な数の個別セルを含む。このようなサンプリング率は横方向における本来的サンプリング率と呼ばれる。
【0008】
走査方向のサンプリング率は、走査行移動速度とCCD露出時間の積(サンプリング間隔)に逆比例する。従って、走査方向のサンプリング率は、走査行移動速度またはCCD露出時間、あるいはその両者を減少させることによって増加させることができ、逆に、走査行移動速度またはCCD露出時間、あるいはその両者を増加させることによってサンプリング率を減少させることができる。所与の露出時間に関する「走査方向の最小サンプリング率」は、露出時に最大走査行移動速度で走査する時に達成されるサンプリング率である。例えば、毎秒3.33インチの走査行移動速度および約5ミリ秒の最大露出時間は、約600PPIという走査方向における最小サンプリング率を発生する。
【0009】
【発明が解決しようとする課題】
現在では、光学文字認識(OCR)は、正確な結果を得るため、300PPIサンプリング率を必要とする。このように、高解像度だが低ビット深度である300PPI4ビットグレー走査(8.5 X 11)は約4.2メガバイトである。精度の高いカラーは24ビット・カラーを必要とする。低解像度だが高ビット深度である150PPI24ビットカラー走査(8.5 X 11)は、約6.3メガバイトである。カラー画像およびOCRを必要とする書き込み文字両方を含むドキュメントの走査を行うためには、走査は、300PPI24ビット(8.5 X 11)でなければならず、これは、約25.24メガバイトのメモリに相当する。従って、テキストおよび画像を含むドキュメントの走査は多くのメモリを必要とする。しかし、コンピュータ上のソフトウェアは、カラー画像のサンプリングを約6.3メガバイトに下げ、カラー画像を放棄してテキストを取得する。このプロセスは、ソフトウェアで実行するには非常に遅く、また多量のメモリを不必要に消費する。代替方法としては、テキストまたはグラフィックスのいずれかを先ず走査し次に別の一方の走査を実行し、その後ドキュメントはソフトウェアによって再生成される。しかしながら、この代替方法も、多くのメモリを使用することに加えて非常に時間のかかるドキュメント走査方法である。
【0010】
従って、テキストおよびグラフィックスの両方を含むドキュメントを走査し、(現行では速度的に制約のある)スキャナからホスト・コンピュータへ送られるデータの総量を減少させ、ホスト・コンピュータのソフトウェアによって処理されるデータの総量を減少させることができるスキャナが必要とされている。
【0011】
【課題を解決するための手段】
本発明において、上記課題の解決は、複数画像スキャナにおいて達成される。該スキャナは、(例えばテキストおよびグラフィックスのような)複数のタイプの画像を含むドキュメントの単一走査を実行し、該スキャナからホスト・コンピュータへ同一画像の複数の描画(例えば1つの高解像度グレイスケール画像および1つの低解像度高ビット深度カラー画像)を送り、それによって、ホスト・コンピュータへ送られ処理されるデータの総量を大幅に減少させる。データ量の減少は、例えば、約25.24メガバイトが、(300PPIグレー画像(8.5 X 11)の4.2メガバイトおよび150PPI24ビット・カラー(8.5 X 11)の6.3メガバイトの合計である)約10.5メガバイトに減少する。すなわち2.4対1の減少である。
【0012】
本発明のスキャナは、例えば画像間の解像度比率が2であるとすれば高解像度グレー・データの2行および低解像度カラー・データの1行を行単位にインターリーブした形態で複数画像をホスト・コンピュータへ送る。本発明の利点は、ホスト・ソフトウェアが処理し保存すべき情報も、(スキャナ速度の制約を受ける)スキャナからホストへ送られるべき情報も、従来技術に比較して少ない。
【0013】
更に、本発明は、インターリーブされた画像データストリームを、ホスト・コンピュータによる走査および更なる処理に備えて個別画像に解析することができる機能を持つホスト・コンピュータ・ソフトウェアを含む。
【0014】
本発明は、スキャナを使用して1つの画像の複数描画を生成する方法を含む。該方法は、上記スキャナを使用して単一の走査を実行するステップ、および、上記単一走査によって取得された画像の複数の描画を上記スキャナが生成するステップを含む。単一走査によって取得された画像の複数の描画を生成する上記ステップは、少くとも1つのグレイスケール画像および少くとも1つのカラー画像を生成するサブステップを更に含み、更にこのサブステップは、少くとも1つの高解像度グレイスケール画像および少くとも1つの低解像度高ビット深度カラー画像を生成するサブステップを更に含む。上記スキャナが上記単一走査画像の上記複数描画を生成すると、上記スキャナは、上記単一走査画像から取得された上記画像の上記複数描出を更なる処理のためホスト・コンピュータへ送信する。
【0015】
本発明は、単一走査を基に1つの画像の複数の描画を生成する画像処理装置を備えるスキャナを含む。上記画像処理装置は、単一走査画像を該単一走査画像の複数描画に分割するプレスケーラを含む。上記プレスケーラは、また、上記単一走査画像を、上記単一走査画像の少くとも1つの白黒描画と上記単一走査画像の少なくと1つのカラー描画に分割する機能を含む。更に、上記プレスケーラは、少くとも1つの高解像度グレイスケール画像および1つの低解像度高ビット深度カラー画像に分割する機能を含む。
【0016】
【発明の実施の形態】
本発明は、単一の走査から2つのセットの走査データを同時に取得することができるスキャナを提供する。走査の区域が同一であるにもかかわらず、データ・タイプおよび解像度の観点から見たビュー(すなわち画像の様相)は変わる。例えば、ドキュメントの走査が実行される時、該スキャナの中の画像処理装置が、走査されたドキュメントから1つの高解像度グレイスケール画像および1つの低解像度24ビット・カラー画像を生成して、1つのデータストリームにインターリーブされる形態でその両方の描画をホスト・コンピュータに送る。次に,ホスト・コンピュータは、走査されたドキュメントの2つのビューを再作成するためその両方の描画を解析する。
【0017】
図1は、2画像スキャナに関するデータ経路のブロック図であって、点線部分100は画像処理装置によって実施されるスキャナ機能であり、点線部分102はホスト・コンピュータ機能である。本実施形態が白黒およびカラー画像を含む2画像スキャナではあるけれども、概念は複数画像に拡張することができる点は注意されるべきである。画像処理装置100は、図2および図3を参照しながら後述される機能上の細部を備えるASICの形態で実施される。ドキュメントが走査される時、CCDアレイ104またはその他の既知の光センサ装置は、赤データ信号106、青データ信号108および緑データ信号11Oを出力する。次に、これら3つのデータ信号は、画像プレプロセッサ112によって、カラー画像データ信号128および単色画像データ信号130に変換される。画像プレプロセッサ112は、カラー画像データ信号128をバッファ114のカラー・バッファ部分118に書き込み、単色画像データ信号130をバッファ114の単色バッファ部分116に書き込む。
【0018】
次に、画像ポストプロセッサ120が、カラー・バッファ118および単色バッファ116にある画像データを使用して、ホスト・コンピュータの指定に従って、スキャナによって走査された1つまたは2つのいずれかのビューのウィンドウを生成する。2つのビューが生成される場合、画像ポストプロセッサは、インターリーブされたデータストリーム136という形態でその2つのビューをホスト・コンピュータに送信する。
【0019】
ホスト・コンピュータが走査ウィンドウの2つのビューを受け取ると、データ解析機構122は、データストリーム136を解析してカラー画像124および単色画像126に分解する。この時点で、2つのビューはホスト・コンピュータで処理される準備ができる。この利点は、ホスト・ソフトウェアが処理し保存すべき情報も、(スキャナ速度の制約を受ける)スキャナからホストへ送られるべき情報も、従来技術に比較して少ない。
【0020】
I. 複数画像スキャナ
2画像スキャナは、1回の走査で完全なページ(テキストおよび図形/画像)情報をホスト・コンピュータに送るために必要とされるデータを減少させる。現行の光学文字認識は、正確な結果を得るためには300PPIサンプリング率を必要とする。カラーを忠実に表現するには、24ビット・カラー走査が必要である。これを実行するための典型的走査は、(8.5 X 11の場合)24ビット深度の300PPIであり、これは25.24メガバイトである。同じページの2つの描画、すなわち1つの高解像度グレイスケール画像および1つの低解像度24ビット・カラー画像をスキャナが送出することを可能とさせることによって、ホスト・ソフトウェアに送られそれによって処理されるデータの総量は大幅に減少する。300PPI4ビットのグレー画像(8.5 X 11)は約4.2メガバイト、150PPI24ビット・カラー(8.5 X 11)は6.3メガバイトで合計約10.5メガバイトであり、2.4対1のデータ減少である。
【0021】
本発明の複数画像スキャナは、上述の動作を非常に迅速に実行する画像処理装置を持つ。画像処理装置は、本明細書で記述される機能を持つ従来技術のフィールド・プログラム可能ゲートアレイまたはASICまたはその他の形態で実現することができる。複数画像スキャナの画像処理装置は、それぞれ詳細は後述される画像プレプロセッサ112、バッファ116および画像ポストプロセッサ120を備える。
【0022】
A. 画像プレプロセッサ
図2に示されるように、プレプロセッサ112は、CCD104から(赤106、緑108および青110からなる)RGB画像データを取り出し、その画像の1つの表現または2つの異なる表現のいずれかをバッファ114へ書き込む。可能な表現の1つはカラー画像であり、他方は、3つのカラー・チャネルから1つ(赤,緑または青)だけを選択することによって生成される単色画像である。2つの異なるバッファ画像は、同じy解像度を持つが、x解像度およびビット深度は異なる。各画像のビット深度は12ビットまたは8ビットのいずれかに選択することができ、またx解像度は、CCD解像度を1から63までの整数係数によって除した数値とすることができる。CCD解像度は、両方の画像に対して同一であり、300PPIまたは150PPIのいずれかである。例えば、画像プレプロセッサ112は、300PPI(y)×300PPI(x)8ビット単色(緑経路)データおよび300PPI(y)×100PPI(x)12ビット・カラー・データをバッファに書き込むようにプログラムすることができる。必ずしも両方の画像が生成されなくてもよい点に注意する必要がある。プレプロセッサは、カラー表現だけまたは単色表現だけ、あるいはその両方を生成するようにプログラムすることができる。本発明の画像プレプロセッサによって実行される4つの主要機構を図1および図2を参照して以下に記述する。
【0023】
1.A/D変換器
A/D変換器は、CCDアレイから300PPIまたは150PPIアナログRGB画像データを取り出して、各ピクセル毎に3つのカラー値すべてのうちの1つまたは3つのいずれかを10ビット・デジタル数へ変換する。これらのデジタル値は埋め込みビットを含む12ビットにされてダーク・クランプに送られる。
【0024】
2.ダーク・クランプ
ダーク・クランプは、当該行に関する平均ダーク電流を各ピクセル値から減ずる。次に、所望の走査ウィンドウの内側のピクセルが補正器に送られる。
【0025】
3.補正器
補正器は、不均一な照射およびCCD反応に起因したピクセル変動を削除する。補正されピクセル値は次にプレスケーラに送られる。
【0026】
4.プレスケーラ
プレスケーラは補正されたピクセル値を単色画像およびカラー画像に分割して、異なる整数係数によって各画像のx解像度を減少させ、1つまたは2つの生成画像をバッファへ書き込む。プレスケーラは補正器からの画像データを単色ストリームおよびカラー・ストリームに分割して、異なる整数係数によって各ストリームのx解像度を減少させ、1つまたは2つの生成画像をバッファへ保存する。これによって、画像データの各行によって消費されるバッファ空間量が最小限にとどめられる。この効果は特に2つのビューがホストによって要求される時顕著である。例えば、プレスケーラが備えられず、ホストが8.5インチ幅の操作ウィンドウの300PPI単色表現および100PPIカラー表現を求めるとすれば、画像の各行は、11.475KBのバッファ空間(8.5インチ300PPI3カラー/ピクセル1.5バイト/カラー)を消費する。しかし、プレスケーラを使用すれば、各行は、6.375KB(8.5インチ300PPI1カラー/ピクセル+8.5インチ100PPI3カラー/1.5バイト/カラー)を消費するにすぎない。
【0027】
プレスケーラは全12ビット・データまたは切り捨てを行った8ビット・データのいずれかをバッファに保存することができる点に注意する必要がある。データ幅は、各ストリーム毎に独立して指定できる。プレスケーラは、2つのデータストリームのx解像度を減少する際、単にピクセルを落とすのではなく、隣接するピクセルを一緒に平均する。これは、実質的には、より低い解像度で再サンプリングされる前に画像データをローパス・フィルタしているもので、エリアジングの減少に役立つ。プレスケーラは、1から63の整数係数によってx解像度を減じることができる。
【0028】
B. 画像ポストプロセッサ
画像ポストプロセッサは、バッファに保存された画像を使用して、ホストによって指定された走査ウィンドウの1つまたは2ついずれかのビューを生成する。各ビューは、カラー画像または単色画像から生成される。2つのビューは、同一画像あるいは異なる画像いずれからでも生成することができる。例えば、1つのビューをカラー画像から生成し別のビューを単色画像から生成することができるし、また、両方のビューをカラー画像から生成することができるし、また、両方のビューを単色画像から生成することもできる。2つのビューは異なるy解像度を持つことができるが、各ビューのy解像度は、バッファのy解像度を1から16の間の整数で除したものでなければならない。また、2つのビューのx解像度は異なるものとすることができるが、それらx解像度は、バッファにある画像のx解像度の1/4から2倍である。また、ビューの各々は、異なるマトリックス、階調マップ、データ・タイプ等々を持つことができる(後述するような制約はある)。
【0029】
2つのビューは、生成されると、y解像度の比率に従って、行単位でインターリーブされる形態で送出される。例えば、ビュー1のy解像度が300でビュー2のy解像度が150であれば、データはビュー1の画像データの2行が送られると、次にビュー2の1行が送られる(開始時点を除く)。以下の表1は、種々のy解像度比率の場合のインターリーブされるデータの例である。
【0030】
【表1】

Figure 0003839942
注:上記は単に典型的例にすぎない。その他1対9の比率まで実施可能である。
【0031】
本発明の画像ポストプロセッサによって実行される5つの主要機能を図1および図3を参照して以下に記述する。
1.行合併器
行合併器は、該当する画像(カラーまたは白黒)から1ないし9行を読み取り、いくつかの行を平均化して、マトリックス器へ送る。行合併器は、走査された画像の複数の描画を、ホスト・コンピュータに送られるべき1つのデータ・ストリームにインターリーブする。走査された画像の複数の描画を行毎にインターリーブすることによって、すべての描画が生成され、インターリーブされてホストへリアルタイムすなわち行毎に送られるので、スキャナは必ずしもすべての描画を保存しなくてもよい。
【0032】
行合併器は、カラー画像または単色画像から1かないし9行のデータを読み取り、行のいくつかを平均して、マトリックス器によって実行されなければならない計算処理の数を減少させる。加えて、行合併器は、追加の隣接行を平均することによって単純な形式のy解像度事前縮尺を提供することができる。例えば、行合併器は、バッファから9行を読み取り、各3隣接行を平均して3というファクタでy解像度を有効に減少させ、中心行対称のため残りの外側の2行を平均して、結果として生成した2行をマトリックス器へ送る。従って、この場合マトリックス器によって処理されなければならない行数を9から2へ減少させた。
【0033】
(Nをバッファから読みとられる9までの行数として)1からNまでのいかなる隣接行数も一緒に平均することができる。しかしながら、隣接行が平均された後結果として生成される行の数は、1、3、5、7または9であり、その左右対称行は、マトリックス器に渡される前に更に平均される。これは、隣接行が平均されない場合1、3、5、7または9のいずれかの中心行を使用することができることを意味する。しかし、2または3の隣接行が平均されるとすれば、1または3行の中心行だけを使用することができる。4ないし9の隣接行が平均されれば、1つの中心行だけを使用することができる。
【0034】
行は、各行の対応するピクセルを加算して1、2、4または8の縮尺係数で除することによって平均される。従って、1、2、4または8行を平均する時にのみ正確な平均が得られる。縮尺係数で除された加算行数が2を超える場合、行合併器は桁あふれする。従って、3、5、6、7または9行の平均が求められるとすれば、最も近い小さめの縮尺係数が使用されるべきであり、マトリックス係数は、行合併器において出される余剰「利得」を埋め合わせるように減少されなければならない。この規則に対する唯一の例外は、バッファから9行を読み取り、各隣接3行を平均し、次に中心行3を使用する場合である。この場合、行合併器は、9行を2行に減少する。これらの2行のうち1つ(すなわち中心に対応する行)は、バッファからの中央3行を加えることによって得られる。もう1つの行は、バッファからの外側6行を加えることによって得られる。しかし、行合併器から出力される行が2を越える数で乗じられないように、ただ1つの除数を選択することができるだけである。従って、この例では、4という除数が選択されなければならない。この例では行合併器の利得は3/4であるので、マトリックス器係数は、埋め合わせのため増加される必要があるかもしれない。
【0035】
使用されるべきバッファ画像(カラーまたは単色)、その画像から読み取られる行の数、平均される隣接行の数およびスケール係数は、生成されるべきビュー各々毎に独立して指定することができる。
【0036】
2.マトリックス器
マトリックス器は、各ピクセルの3つのカラーを混合して階調マップ器に行を送る前に単色または3色を生成する。
【0037】
3.階調マップ器
階調マップ器は、参照テーブルおよび補間を使用して、画像コントラストおよび強度を調整して、その後フォーマッタにデータを送る。出力されるピクセルは階調マップ器によって更に変換され、階調マップと呼ばれる移転曲線を含む参照テーブルを通過する。階調マップは、ガンマ補正の実行、コントラストおよび強度の調整、陰影の強化などを行うため使用される。
【0038】
4.フォーマッタ
フォーマッタは、指定されたデータ幅に納める前に、データを選択的にしきい値にかける。この段階は、また、圧縮エンジンに送る前に、必要に応じてデータを反転させることができる。
【0039】
5.圧縮エンジン
圧縮エンジンは、圧縮アルゴリズムを使用して、データをホストに送る前に、画像データ行を選択的に圧縮する。
【0040】
II. 単一走査ウィンドウから複数ビューの生成
本発明の複数画像スキャナは、単一走査から2つの画像を取得する能力を持つ。複数画像の走査コマンド言語(略してSCLと呼ぶ)の実施は、走査ウィンドウの概念をそのウィンドウの特定のビューと切り離す。SCLはスキャナのために使用されるコマンド言語であり、一般によく知られている。どのようなコマンド言語でも使用することができる点に留意する必要がある。しかし、本発明の好ましい実施形態においては、SCLは1つの走査ウィンドウから複数のビューを生成するために使用される。走査ウィンドウは、(xおよびy位置および範囲によって規定され)走査されるページの物理的領域である。走査ウィンドウのビューは、物理的領域の内側に含められ(解像度、データ・タイプ、ミラー、反転等々によって定義される)データである。ウィンドウおよびビューとは独立した(ADF使用、連番などの)スキャナ設定項目がある。ビューおよびウィンドウを分離する利点は、複数のビューの定義を複数のビューを含む複数のウィンドウに拡張することができる点である。本発明以外のいかなるスキャナも、複数画像能力または複数のビューの実施形態を備えていない。注意されるべき点ではあるが、複数のビューという本実施形態において、単一の走査を使用して同一ドキュメントの複数のビューを取得しているが、単一または複数の走査を使用して同一ドキュメントの複数のビューを取得するか否かは問題ではない。データが(単一または複数の走査から)どのように取得されようとも、重要なのは、1つ以上のビューというSCL実施形態によって異なるデータが同じ空間を表現することが可能にされている点である。
【0041】
本発明の1つの好ましい実施形態では、ヒューレット・パッカード社のスキャンジェット5p(ScanJet 5p)が利用され、データの2つのビューの同時取得が可能とされる。しかし、どのような製造業者のどのようなカラー・スキャナでも本発明を実施することができるように修正することができることは留意されるべきである。走査の区域が同じものであるが、2つのビューのデータ・タイプおよび解像度は変わることができる。2つのビューに対して設定される変数に関する制限は、SCLにおけるSetViewTypeマクロを用いて次の表2のように記述される。
【0042】
【表2】
Figure 0003839942
パラメータは次のように設定される。
Phase -- これがシーケンスの最初の伝送であるかどうかを示すフラグ。次の値のいずれかでなければならない。SL_FIRST or SL_SCAN:伝送における最初のバッファ,SL_ADF_SCAN:ADF伝送における最初のバッファ(現時点ではHP 1750AおよびHP5110Aによってのみサポートされている),SL_NEXT:各追加バッファ伝送;
PbufferView0 -- ビュー0データ・バッファへのポインタ;
LengthView0 -- ビュー0データ・バッファのサイズ;
pReceivedView0 -- ビュー0に関してスキャナから実際に送られるバイト数のポインタ;
pBufferView1 -- ビュー1データ・バッファへのポインタ;
LengthView1 -- ビュー1データ・バッファのサイズ;
pReceivedView1 -- ビュー1に関してスキャナから実際に送られるバイト数のポインタ;
【0043】
この関数は、スキャナの2つのビューモードをサポートしている点を除いて、SCLに関してよく知られているScan()関数に類似している。
【0044】
単一走査の2つのビューに関するデフォルト設定項目のいくつかを下記表3に示す。
【0045】
【表3】
Figure 0003839942
Figure 0003839942
【0046】
上記表3において、*は、そのパラメータが2つのビューに対して別々に設定されないことを示す。しかし、2つのビューに対して別々に設定することができるように修正することはできる。また、これらのパラメータ設定およびSCLコマンドは本発明の実施形態を反映しているが、本発明の単一走査概念に基づいて複数のビューを可能にするパラメータ設定またはSCLコマンドの可能な組合せにだけ限定するようには意図されていない。
【0047】
スキャナによってホスト・コンピュータへ送られるべきビューの数を選択する以下のコマンドが追加された。
コマンド:ビューの数選択
エスケープ・シーケンス:Esc*f#A
照会ID:10466 範囲:1-2
デフォルト:1
マクロ:SetNumberofViews(x)
送付コマンド:SendCommand(SL_NUM_OF_VIEWS, x)
但しxは1または2。
【0048】
このコマンドは、スキャナによって送られるビューの数を選択する。デフォルトは1である。本実施形態がサポートする値は、1=1つのビュー、2=2つのビュー、である。2つのビューが使用可能にされると、2つのビューに関するデータが、それらのY解像度に応じて行単位でインターリーブされて送られる。例えば、ビュー1のY解像度が300でビュー2のY解像度が150であれば、上述のように、(最初を除いて)ビュー1が2行送られると次にビュー2が1行送られるというように交互に伝送される。
【0049】
以下のようにビュー選択コマンドを使用して、動作させたい所望のビューに関してスキャナの設定を行うことができる。
コマンド:ビュー選択
エスケープ・シーケンス:Esc*f#B
照会ID:10467
範囲:0-1
デフォルト:0
マクロ:SetViewType(x)
送出コマンド:SendCommand(SL_VIEW_TYPE, x)
但し、xは、ビュー1に対しては0、ビュー2にに対しては1である。
【0050】
ビューは、スキャナ設定を選択する前に選択されなければならない。このコマンドは、後続のSCLコマンドまたは照会がどのビューを参照するかを選択する。サポートされる値は、0(ビュー1)および1(ビュー2)である。デフォルトはビュー1である。
【0051】
III. 複数画像走査データ解析方法
ホスト・コンピュータ・ソフトウェアは、スキャナによって送られたインターリーブされた複数画像データを解析する。本実施形態において、ソフトウェア・プログラムDualScanおよびそのサポート・モジュールは、複数画像データ形式の詳細の知識を持たないユーザがフォトショップ(Photo Shop)のようなプログラムで使用できるようにスキャナからの複数画像データを解析して周知のTIFFファイルに変換することを可能にする。DualScanはヒューレット・パッカード社から販売されているソフトウェア・プログラムである。画像の一方または両方が解析問題を一層複雑にする圧縮データを含む可能性がある。DualScanは、スキャナから受け取る(インターリーブされた)データストリームを解析することによって、ハードウェアとして複数画像機能を持つスキャナの使用を可能にする。本実施形態に記述される2つのビューではなく、複数のビュー・データの解析を含むようにDualScanを拡張することは当業者にとって容易であろう。
【0052】
図4は、2画像データストリームのブロック図であって、データストリーム136がスキャナ(図示されていない)から送られ、データストリーム解析機構122によって解析されてホスト・コンピュータ(図示されていない)上のビュー1データ(単色画像)126およびビュー2データ(カラー画像)124が生成される。データ・ストリーム解析機構の動作の詳細は図5に流れ図として示されている。
【0053】
初期的に、ステップ200において、画像の各々について解像度、圧縮状態および行バイト数がデータ解析機構によって照会される。次に、各ビューに関する画像比率がデータ解析機構によって計算される(ステップ202)。次に、ステップ204において、インターリーブされた画像データがデータ解析機構によってスキャナから受け取られる。ステップ206において、データ解析機構は、走査データの1行を適切な出力バッファにコピーする(必要に応じてそのデータを伸張する)。次に、データ解析機構は、ステップ202で計算した画像比率に基づいてビューを切り替える(ステップ210)。エラーが検出されずかつデータストリームの解析が完了していなければ(ステップ212)、データ解析機構はステップ204に戻り、更に解析すべきデータをスキャナから受け取る。エラーが検出されるかあるいはデータストリームの解析が完了してれば(ステップ212)、データ解析機構は、適切な措置を講ずる呼び出し元関数にこの状態を返す。エラー条件には、(1)出力バッファ容量不足、(2)スキャナからの不具合応答、(3)伸張エンジンおよびスキャナにデータなし、または(4)走査完了が含まれる。図5の処理ステップの詳細は、後述の付録Aに原始コードとして示されている。
【0054】
本明細書に記述されている実施形態は、2つの走査、2つのビューおよび2つのインターリーブされたデータストリームの解析を記述しているが、これらの概念は、複数の走査、複数のビューおよび複数のインターリーブされたデータストリームの解析に容易に拡張することができる点は留意されるべきである。
【0055】
本発明の上記記述は、例示の目的のために提示されたものであって、本発明を上述されたものに限定するように意図されてはいないし、上記実施形態の種々の修正および変形は可能である。例えば、データストリーム解析機構は、複数セットのデータを含むインターリーブされたデータストリームを解析する能力を有している。データストリームは、走査された画像データストリームである必要はない。また、同一ウィンドウの複数のビューのSCL実施形態は複数のビューがどのように取得されるかは関係ない。ビューが同一領域の複数の走査から取得される場合でも実施形態は同じである。上記実施形態は発明の原理およびその実際的応用を最もよく説明するため選択され記述されたものであって、これによって、当業者が、特定の使用に合致するように種々の実施形態および種々の修正の形態で本発明を利用することが可能であろう。
【0056】
【表4】
Figure 0003839942
Figure 0003839942
Figure 0003839942
Figure 0003839942
Figure 0003839942
Figure 0003839942
Figure 0003839942
Figure 0003839942
Figure 0003839942
Figure 0003839942
Figure 0003839942
【0057】
本発明には、例として次のような実施様態が含まれる。
(1)スキャナを使用して1つの画像の複数描画を生成する方法であって、上記スキャナを使用して上記画像の単一走査を実行するステップ(a)と、上記単一走査から上記画像の複数の描画を上記スキャナが生成するステップ(b)と、を含む画像の複数描画生成方法。
(2)上記ステップ(b)が、少くとも1つのグレイスケール画像および少くとも1つのカラー画像を生成するステップを含む、上記(1)に記載の画像の複数描画生成方法。
(3)上記ステップ(b)が、少くとも1つの高解像度グレイスケール画像および少くとも1つの低解像度高ビット・カラー画像を生成するステップを含む、上記(1)に記載の画像の複数描画生成方法。
(4)上記単一走査から生成された上記複数の描画をホスト・コンピュータでの更なる処理のため上記スキャナがホスト・コンピュータへ送信するステップ(c)を更に含む、上記(1)に記載の画像の複数描画生成方法。
【0058】
(5)単一走査から1つの画像の複数の描画を生成する画像処理装置を備えるスキャナ。
(6)上記画像処理装置が、上記単一走査画像を複数の描画に分割する機能を持つプレスケーラを含む、上記(5)に記載のスキャナ。
(7)上記プレスケーラが、上記単一走査画像の少くとも1つの単色描画および上記単一走査画像の少くとも1つのカラー描画に上記単一走査画像を分割する、上記(6)に記載のスキャナ。
(8)上記プレスケーラが、少くとも1つの高解像度グレースケール画像および少くとも低解像度高ビット・カラー画像に上記単一走査画像を分割する、上記(6)に記載のスキャナ。
【0059】
(9)1つの画像の複数の描画を生成する方法であって、スキャナを使用して上記画像の単一走査を実行するステップと、上記単一走査画像の複数の描画を表す複数のデータ信号を上記スキャナが生成するステップと、上記単一走査画像の複数の描画を表す上記複数のデータ信号をインターリーブすることによって単一のインターリーブされたデータストリームを上記スキャナが生成するステップと、を含む画像の複数描画生成方法。
(10)上記単一走査画像の複数の描画の更なる処理のため上記インターリーブされた単一データストリームをコンピュータへ上記スキャナが送信するステップを更に含む、上記(9)に記載の画像の複数描画生成方法。
【0060】
【発明の効果】
本発明に従うスキャナの利用によって、テキストとグラフィックスのような異なるタイプの画像を含むドキュメントの1回の走査から、例えば高解像度グレースケール画像と低解像度高ビット深度カラー画像という2つの描画画像を同時に出力することが可能となり、それによって、ホスト・コンピュータへ送られそこで処理されるデータの総量が大幅に減少する。
【図面の簡単な説明】
【図1】本発明に従った複数画像スキャナに関するデータ経路のブロック図である。
【図2】本発明に従った複数画像スキャナに関する画像プレプロセッサのデータ経路の一層詳細なブロック図である。
【図3】本発明に従った複数画像スキャナに関する画像ポストプロセッサのデータ経路の一層詳細なブロック図である。
【図4】本発明に従った複数画像スキャナからホスト・コンピュータへのデータ経路の一層詳細なブロック図である。
【図5】本発明に従って、複数セットのデータを含むデータストリームを解析する方法の流れ図である。
【符号の説明】
100 スキャナ
102 ホスト・コンピュータ
104 CCDアレイ
112 画像プレプロセッサ
114 バッファ
116 単色バッファ
118 カラー・バッファ
120 画像ポストプロセッサ
122 データ解析機構
124 カラー画像
126 単色画像
128 カラー画像信号
130 単色画像信号
136 データストリーム[0001]
BACKGROUND OF THE INVENTION
The present invention relates generally to optical scanners, and more particularly to a method and system for acquiring multiple images including color and black and white images from a single scan.
[0002]
[Prior art]
Optical scanners are used to capture and digitize images. For example, an optical scanner can be used to capture an image of a print on a piece of paper. The digitized image can then be stored electronically and further processed to generate text using character recognition software. Most optical scanners use illumination and optical systems to illuminate the object and focus a small area of the illuminated object, commonly referred to as a “scan row”, onto the photosensor array. Scan the entire object by moving the illuminated scan line across the object, either by moving the object relative to the illumination and optics, or by moving the illumination and optics relative to the object. Is executed.
[0003]
A typical scanner optical system includes a lens component for focusing an image of the illuminated scan row onto the surface of the photosensor array. Depending on the particular design, the scanner optical system may also include a plurality of mirrors to allow the optical system to be mounted in a relatively small housing by folding the beam path.
[0004]
A commonly used sensor is a charge coupled device or CCD, although various types of photosensor devices may be used in an optical scanner. As is well known, a CCD includes a number of individual cells or pixels, each collecting or building charge in response to light exposure. Since the amount of charge stored in a given cell or pixel is related to the intensity and duration of light exposure, a CCD is used to detect bright and dark spots on the focused image. In a typical scanner application, the charge built on each CCD cell or pixel is measured and discharged on a typical scanner at regular intervals known as exposure times or sampling intervals on the order of about 5 milliseconds. Since charge (i.e., image data) is collected simultaneously in the CCD cell during the exposure time, an analog shift register is used in the CCD to convert simultaneous or parallel data from the CCD cell into a continuous or sequential data stream. The
[0005]
A typical analog shift register includes a plurality of charge transfer buckets, each connected to an individual cell. At the end of the exposure time, the charge collected by each of the CCD cells is simultaneously transferred to the charge transfer bucket, and the CCD cell is ready for the next exposure. The charge in each bucket is then transmitted like a bucket relay from bucket to bucket while the CCD cells are exposed for the next scan row. The charge from the sequentially arranged CCD cells is then converted into digital signals one by one by an appropriate analog / digital converter.
[0006]
In most optical scanner applications, each individual pixel of the CCD is arranged in sequence to form a linear array. Thus, each pixel in the CCD array corresponds to the associated pixel portion of the illuminated scan row. The individual pixels in a linear photosensor array are generally arranged in a “lateral” direction, that is, perpendicular to the direction of movement of a scan row that travels (illuminated) across the object. Thus, each pixel of the linear photosensor array has a length measured in the lateral direction and a width measured in the scanning direction. In most CCD arrays, the length and width of the pixels are equal, typically about 8 microns each.
[0007]
The horizontal sampling rate is a function of the number of individual cells in the CCD. For example, a commonly used CCD photosensor array includes a sufficient number of individual cells to allow a lateral sampling rate of about 600 PPI (pixels / inch). Such a sampling rate is called the original sampling rate in the horizontal direction.
[0008]
The sampling rate in the scanning direction is inversely proportional to the product (sampling interval) of the scanning row moving speed and the CCD exposure time. Accordingly, the sampling rate in the scanning direction can be increased by decreasing the scanning row moving speed and / or the CCD exposure time, and conversely, increasing the scanning row moving speed and / or the CCD exposure time. Thus, the sampling rate can be reduced. The “minimum sampling rate in the scan direction” for a given exposure time is the sampling rate achieved when scanning at the maximum scan row moving speed during exposure. For example, a scan line travel speed of 3.33 inches per second and a maximum exposure time of about 5 milliseconds produces a minimum sampling rate in the scan direction of about 600 PPI.
[0009]
[Problems to be solved by the invention]
Currently, optical character recognition (OCR) requires a 300 PPI sampling rate to obtain accurate results. Thus, a high resolution but low bit depth 300 PPI 4 bit gray scan (8.5 x 11) is about 4.2 megabytes. High precision color requires 24 bit color. A low resolution but high bit depth 150 PPI 24 bit color scan (8.5 x 11) is about 6.3 megabytes. To scan a document containing both color images and written characters that require OCR, the scan must be 300 PPI 24 bits (8.5 X 11), which corresponds to approximately 25.24 megabytes of memory To do. Thus, scanning a document containing text and images requires a lot of memory. However, software on the computer reduces the sampling of the color image to about 6.3 megabytes and abandons the color image to obtain text. This process is very slow to run in software and unnecessarily consumes a large amount of memory. Alternatively, either text or graphics is first scanned and then another one is performed, after which the document is regenerated by software. However, this alternative method is also a very time consuming document scanning method in addition to using a lot of memory.
[0010]
Thus, data processed by host computer software can be scanned through documents containing both text and graphics, reducing the total amount of data sent from the scanner (currently speed limited) to the host computer. There is a need for a scanner that can reduce the total amount of.
[0011]
[Means for Solving the Problems]
In the present invention, the solution to the above problem is achieved in a multi-image scanner. The scanner performs a single scan of a document containing multiple types of images (such as text and graphics), and multiple renderings of the same image from the scanner to a host computer (such as one high-resolution gray). Scale image and one low resolution high bit depth color image), thereby greatly reducing the total amount of data sent to the host computer for processing. For example, the reduction in the amount of data is about 25.24 megabytes, which is the sum of 4.2 megabytes for 300 PPI gray images (8.5 x 11) and 6.3 megabytes for 150 PPI 24-bit color (8.5 x 11). Decrease to 10.5 megabytes. That is a 2.4 to 1 reduction.
[0012]
For example, if the resolution ratio between the images is 2, the scanner of the present invention can display a plurality of images in a form in which two rows of high-resolution gray data and one row of low-resolution color data are interleaved in units of rows. Send to. The advantages of the present invention are that there is less information to be processed and stored by the host software, and less information to be sent from the scanner to the host (which is limited by scanner speed) compared to the prior art.
[0013]
In addition, the present invention includes host computer software with the ability to analyze the interleaved image data stream into individual images for scanning and further processing by the host computer.
[0014]
The present invention includes a method for generating multiple drawings of an image using a scanner. The method includes performing a single scan using the scanner and generating a plurality of drawings of images acquired by the single scan. The above step of generating a plurality of renderings of an image acquired by a single scan further comprises a sub-step of generating at least one grayscale image and at least one color image, further comprising at least one sub-step. It further includes a sub-step of generating one high resolution grayscale image and at least one low resolution high bit depth color image. When the scanner generates the multiple representations of the single scan image, the scanner sends the multiple representations of the image obtained from the single scan image to a host computer for further processing.
[0015]
The present invention includes a scanner including an image processing apparatus that generates a plurality of drawings of one image based on a single scan. The image processing apparatus includes a prescaler that divides a single scan image into a plurality of drawings of the single scan image. The prescaler also includes a function of dividing the single scan image into at least one black and white drawing of the single scan image and at least one color drawing of the single scan image. Furthermore, the prescaler includes the ability to divide into at least one high resolution grayscale image and one low resolution high bit depth color image.
[0016]
DETAILED DESCRIPTION OF THE INVENTION
The present invention provides a scanner that can simultaneously acquire two sets of scan data from a single scan. Despite the same scanning area, the view (ie, the appearance of the image) from a data type and resolution perspective changes. For example, when a document scan is performed, an image processing device in the scanner generates one high-resolution grayscale image and one low-resolution 24-bit color image from the scanned document. Both drawings are sent to the host computer in a form interleaved with the data stream. The host computer then analyzes both drawings to recreate the two views of the scanned document.
[0017]
FIG. 1 is a block diagram of a data path relating to a two-image scanner. A dotted line portion 100 is a scanner function implemented by the image processing apparatus, and a dotted line portion 102 is a host computer function. It should be noted that although this embodiment is a two-image scanner including black and white and color images, the concept can be extended to multiple images. The image processing apparatus 100 is implemented in the form of an ASIC with functional details described below with reference to FIGS. When the document is scanned, the CCD array 104 or other known photosensor device outputs a red data signal 106, a blue data signal 108, and a green data signal 110. These three data signals are then converted by the image preprocessor 112 into a color image data signal 128 and a monochrome image data signal 130. The image preprocessor 112 writes the color image data signal 128 to the color buffer portion 118 of the buffer 114 and writes the single color image data signal 130 to the single color buffer portion 116 of the buffer 114.
[0018]
The image post processor 120 then uses the image data in the color buffer 118 and the monochrome buffer 116 to open either one or two views of the window scanned by the scanner, as specified by the host computer. Generate. If two views are generated, the image post processor sends the two views to the host computer in the form of an interleaved data stream 136.
[0019]
When the host computer receives two views of the scan window, the data analyzer 122 analyzes the data stream 136 and breaks it down into a color image 124 and a monochrome image 126. At this point, the two views are ready to be processed by the host computer. The advantage is that there is less information to be processed and stored by the host software and less information to be sent from the scanner to the host (which is limited by scanner speed) compared to the prior art.
[0020]
I. Multiple image scanner
The two-image scanner reduces the data required to send complete page (text and graphics / image) information to the host computer in a single scan. Current optical character recognition requires a 300 PPI sampling rate to obtain accurate results. 24-bit color scanning is required to faithfully represent color. A typical scan to do this is (in 8.5 x 11) 24 bits deep 300 PPI, which is 25.24 megabytes. Data sent to and processed by the host software by allowing the scanner to send two drawings of the same page, one high resolution grayscale image and one low resolution 24-bit color image The total amount of is greatly reduced. 300PPI 4-bit gray image (8.5 x 11) is about 4.2 megabytes, 150PPI 24-bit color (8.5 x 11) is 6.3 megabytes, totaling about 10.5 megabytes, a 2.4 to 1 data reduction. is there.
[0021]
The multi-image scanner of the present invention has an image processing apparatus that performs the above-described operation very quickly. The image processing apparatus may be implemented in a prior art field programmable gate array or ASIC or other form having the functionality described herein. Each of the image processing apparatuses of the multiple image scanner includes an image preprocessor 112, a buffer 116, and an image post processor 120, which will be described in detail later.
[0022]
A. Image preprocessor
As shown in FIG. 2, the preprocessor 112 retrieves RGB image data (consisting of red 106, green 108 and blue 110) from the CCD 104 and buffers either 114 one representation or two different representations of the image. Write to. One possible representation is a color image and the other is a monochromatic image generated by selecting only one (red, green or blue) from the three color channels. Two different buffer images have the same y resolution but different x resolution and bit depth. The bit depth of each image can be selected to be either 12 bits or 8 bits, and the x resolution can be a numerical value obtained by dividing the CCD resolution by an integer coefficient from 1 to 63. The CCD resolution is the same for both images and is either 300 PPI or 150 PPI. For example, the image preprocessor 112 is programmed to write 300 PPI (y) × 300 PPI (x) 8-bit single color (green path) data and 300 PPI (y) × 100 PPI (x) 12-bit color data to the buffer. Can do. Note that both images do not necessarily have to be generated. The preprocessor can be programmed to generate only a color representation, only a single color representation, or both. The four main mechanisms performed by the image preprocessor of the present invention are described below with reference to FIGS.
[0023]
1. A / D converter
The A / D converter takes 300 PPI or 150 PPI analog RGB image data from the CCD array and converts one or any three of all three color values to a 10-bit digital number for each pixel. These digital values are converted to 12 bits including embedded bits and sent to the dark clamp.
[0024]
2.Dark clamp
The dark clamp subtracts the average dark current for that row from each pixel value. The pixels inside the desired scan window are then sent to the corrector.
[0025]
3.Compensator
The corrector eliminates pixel variations due to non-uniform illumination and CCD response. The corrected pixel value is then sent to the prescaler.
[0026]
4. Prescaler
The prescaler splits the corrected pixel values into a single color image and a color image, reduces the x resolution of each image by different integer coefficients, and writes one or two generated images to the buffer. The prescaler splits the image data from the corrector into a single color stream and a color stream, reduces the x resolution of each stream by different integer coefficients, and stores one or two generated images in a buffer. This minimizes the amount of buffer space consumed by each row of image data. This effect is particularly noticeable when two views are requested by the host. For example, if a prescaler is not provided and the host seeks a 300 PPI single color representation and a 100 PPI color representation of an 8.5 inch wide operating window, each row of the image contains 11.475 KB of buffer space (8.5 inch 300 PPI 3 Color / pixel 1.5 bytes / color). However, with a prescaler, each row consumes only 6.375 KB (8.5 inches 300 PPI1 color / pixel + 8.5 inches 100 PPI3 color / 1.5 bytes / color).
[0027]
Note that the prescaler can store either all 12-bit data or truncated 8-bit data in a buffer. The data width can be specified independently for each stream. When reducing the x resolution of two data streams, the prescaler averages adjacent pixels together rather than simply dropping the pixels. This is essentially a low pass filter of the image data before it is resampled at a lower resolution, which helps reduce aliasing. The prescaler can reduce the x resolution by an integer factor from 1 to 63.
[0028]
B. Image post processor
The image post processor uses the image stored in the buffer to generate either one or two views of the scan window specified by the host. Each view is generated from a color image or a single color image. The two views can be generated from either the same image or different images. For example, one view can be generated from a color image and another view can be generated from a single color image, both views can be generated from a color image, and both views can be generated from a single color image. It can also be generated. The two views can have different y resolutions, but the y resolution of each view must be the buffer's y resolution divided by an integer between 1 and 16. Also, the x resolution of the two views can be different, but the x resolution is ¼ to twice the x resolution of the image in the buffer. Each view can also have a different matrix, tone map, data type, etc. (with restrictions as described below).
[0029]
When two views are generated, they are sent in a form that is interleaved row by row according to the y resolution ratio. For example, if the y resolution of view 1 is 300 and the y resolution of view 2 is 150, when two rows of image data of view 1 are sent, one row of view 2 is sent next (the start time is except). Table 1 below is an example of interleaved data for various y resolution ratios.
[0030]
[Table 1]
Figure 0003839942
Note: The above is only a typical example. Other ratios up to 1: 9 can be implemented.
[0031]
The five main functions performed by the image post processor of the present invention are described below with reference to FIGS.
1. Line merger
The row merger reads 1 to 9 rows from the appropriate image (color or black and white), averages several rows and sends them to the matrix device. The row merger interleaves multiple drawings of scanned images into a single data stream to be sent to the host computer. By interleaving multiple drawings of the scanned image line by line, all drawings are generated and interleaved and sent to the host in real time, ie line by line, so the scanner does not necessarily have to store all the drawings. Good.
[0032]
A row merger reads 1 or 9 rows of data from a color or monochrome image and averages some of the rows to reduce the number of computations that must be performed by the matrix unit. In addition, the row merger can provide a simple form of y-resolution prescale by averaging additional adjacent rows. For example, the row merger reads 9 rows from the buffer, averages each 3 adjacent rows to effectively reduce the y resolution by a factor of 3, and averages the remaining 2 outer rows for central row symmetry, The resulting two rows are sent to the matrix unit. Therefore, in this case the number of rows that must be processed by the matrix unit has been reduced from 9 to 2.
[0033]
Any number of adjacent lines from 1 to N can be averaged together (where N is the number of lines up to 9 read from the buffer). However, the number of resulting rows after the adjacent rows are averaged is 1, 3, 5, 7 or 9, and the symmetrical rows are further averaged before being passed to the matrix unit. This means that any central row of 1, 3, 5, 7 or 9 can be used if adjacent rows are not averaged. However, if two or three adjacent rows are averaged, only one or three central rows can be used. If 4 to 9 adjacent rows are averaged, only one central row can be used.
[0034]
The rows are averaged by adding the corresponding pixels in each row and dividing by a 1, 2, 4 or 8 scale factor. Thus, an accurate average is only obtained when averaging 1, 2, 4 or 8 rows. If the number of added rows divided by the scale factor exceeds 2, the row merger overflows. Thus, if the average of 3, 5, 6, 7 or 9 rows is to be determined, the closest smaller scale factor should be used, and the matrix factor will be the extra "gain" that is output at the row merger. Must be reduced to make up. The only exception to this rule is when 9 rows are read from the buffer, each adjacent 3 rows are averaged, and then the central row 3 is used. In this case, the row merger reduces 9 rows to 2 rows. One of these two rows (ie, the row corresponding to the center) is obtained by adding the middle 3 rows from the buffer. Another line is obtained by adding the outer 6 lines from the buffer. However, only one divisor can be selected so that the rows output from the row merger are not multiplied by more than two. Therefore, in this example, a divisor of 4 must be selected. Since the gain of the row merger is 3/4 in this example, the matrix unit coefficients may need to be increased to make up.
[0035]
The buffer image (color or single color) to be used, the number of rows read from that image, the number of adjacent rows to be averaged and the scale factor can be specified independently for each view to be generated.
[0036]
2.Matrix device
The matrix unit generates a single color or three colors before mixing the three colors of each pixel and sending the rows to the tone mapper.
[0037]
3.Tone mapper
The tone mapper uses a look-up table and interpolation to adjust the image contrast and intensity and then sends the data to the formatter. The output pixels are further transformed by a tone mapper and pass through a lookup table containing a transfer curve called a tone map. The tone map is used to perform gamma correction, adjust contrast and intensity, enhance shadows, and the like.
[0038]
4. Formatter
The formatter selectively thresholds the data before it fits into the specified data width. This stage can also invert the data as needed before sending it to the compression engine.
[0039]
5. Compression engine
The compression engine uses a compression algorithm to selectively compress the image data rows before sending the data to the host.
[0040]
II. Generate multiple views from a single scan window
The multi-image scanner of the present invention has the ability to acquire two images from a single scan. Implementation of a multiple image scan command language (referred to as SCL for short) separates the concept of a scan window from a particular view of that window. SCL is a command language used for scanners and is generally well known. Note that any command language can be used. However, in the preferred embodiment of the present invention, SCL is used to generate multiple views from a single scan window. The scan window is the physical area of the page being scanned (defined by x and y position and range). The view of the scan window is the data (defined by resolution, data type, mirror, inversion, etc.) contained inside the physical area. There are scanner setting items (ADF use, serial number, etc.) independent of the window and view. The advantage of separating views and windows is that the definition of multiple views can be extended to multiple windows containing multiple views. No scanner other than the present invention has multiple image capabilities or multiple view embodiments. It should be noted that in this embodiment of multiple views, a single scan is used to obtain multiple views of the same document, but single or multiple scans are used to obtain the same view. It doesn't matter whether you get multiple views of a document. Regardless of how data is acquired (from single or multiple scans), it is important that the SCL implementation of one or more views allows different data to represent the same space. .
[0041]
In one preferred embodiment of the present invention, Hewlett-Packard's ScanJet 5p is utilized to allow simultaneous acquisition of two views of data. However, it should be noted that any color scanner from any manufacturer can be modified to implement the present invention. Although the area of scan is the same, the data type and resolution of the two views can vary. The restrictions on the variables set for the two views are described in Table 2 below using the SetViewType macro in SCL.
[0042]
[Table 2]
Figure 0003839942
The parameters are set as follows:
Phase-A flag that indicates whether this is the first transmission of the sequence. Must be one of the following values: SL_FIRST or SL_SCAN: first buffer in transmission, SL_ADF_SCAN: first buffer in ADF transmission (currently supported only by HP 1750A and HP5110A), SL_NEXT: each additional buffer transmission;
PbufferView0-Pointer to the view 0 data buffer;
LengthView0-View 0 data buffer size;
pReceivedView0-Pointer to the number of bytes actually sent from the scanner for view 0;
pBufferView1-Pointer to the view 1 data buffer;
LengthView1-View 1 data buffer size;
pReceivedView1-Pointer to the number of bytes actually sent by the scanner for view 1;
[0043]
This function is similar to the well-known Scan () function for SCL, except that it supports two view modes of the scanner.
[0044]
Some of the default settings for the two views of a single scan are shown in Table 3 below.
[0045]
[Table 3]
Figure 0003839942
Figure 0003839942
[0046]
In Table 3 above, * indicates that the parameter is not set separately for the two views. However, it can be modified so that it can be set separately for the two views. Also, these parameter settings and SCL commands reflect embodiments of the present invention, but only for possible combinations of parameter settings or SCL commands that allow multiple views based on the single scan concept of the present invention. It is not intended to be limiting.
[0047]
Added the following commands to select the number of views to be sent by the scanner to the host computer.
Command: Select number of views
Escape sequence: Esc * f # A
Reference ID: 10466 Range: 1-2
Default: 1
Macro: SetNumberofViews (x)
Send command: SendCommand (SL_NUM_OF_VIEWS, x)
Where x is 1 or 2.
[0048]
This command selects the number of views sent by the scanner. The default is 1. The values supported by this embodiment are 1 = 1 view, 2 = 2 views. When two views are enabled, the data for the two views is sent interleaved row by row according to their Y resolution. For example, if the Y resolution of view 1 is 300 and the Y resolution of view 2 is 150, as described above, when view 1 is sent by two lines (except for the first), view 2 is sent by one line next. Are transmitted alternately.
[0049]
The view selection command can be used to set the scanner for the desired view to be operated as follows.
Command: Select view
Escape sequence: Esc * f # B
Reference ID: 10467
Range: 0-1
Default: 0
Macro: SetViewType (x)
Send command: SendCommand (SL_VIEW_TYPE, x)
However, x is 0 for view 1 and 1 for view 2.
[0050]
The view must be selected before selecting the scanner settings. This command selects which view the subsequent SCL command or query refers to. Supported values are 0 (view 1) and 1 (view 2). The default is view 1.
[0051]
III. Multiple image scanning data analysis method
The host computer software analyzes the interleaved multiple image data sent by the scanner. In this embodiment, the software program DualScan and its support module provide multiple image data from the scanner so that users who do not have detailed knowledge of multiple image data formats can use it in programs such as Photoshop. Can be converted into a known TIFF file. DualScan is a software program sold by Hewlett-Packard Company. One or both of the images may contain compressed data that further complicates the analysis problem. DualScan allows the use of a scanner with multiple image capabilities as hardware by analyzing the data stream received (interleaved) from the scanner. It would be easy for those skilled in the art to extend DualScan to include analysis of multiple view data rather than the two views described in this embodiment.
[0052]
FIG. 4 is a block diagram of a two-image data stream in which the data stream 136 is sent from a scanner (not shown) and analyzed by the data stream analysis mechanism 122 on a host computer (not shown). View 1 data (monochromatic image) 126 and view 2 data (color image) 124 are generated. Details of the operation of the data stream analysis mechanism are shown as a flow diagram in FIG.
[0053]
Initially, in step 200, the resolution, compression state, and row byte count are queried by the data analysis mechanism for each of the images. Next, the image ratio for each view is calculated by the data analysis mechanism (step 202). Next, in step 204, interleaved image data is received from the scanner by the data analysis mechanism. In step 206, the data analysis mechanism copies a line of scan data to the appropriate output buffer (decompresses that data as necessary). Next, the data analysis mechanism switches the view based on the image ratio calculated in step 202 (step 210). If no error is detected and the analysis of the data stream is not complete (step 212), the data analysis mechanism returns to step 204 to receive further data to be analyzed from the scanner. If an error is detected or the analysis of the data stream is complete (step 212), the data analysis mechanism returns this status to the calling function that takes appropriate action. Error conditions include (1) insufficient output buffer capacity, (2) failure response from the scanner, (3) no data in the decompression engine and scanner, or (4) scan complete. The details of the processing steps in FIG. 5 are shown as source codes in Appendix A described later.
[0054]
Although the embodiments described herein describe the analysis of two scans, two views, and two interleaved data streams, these concepts are based on multiple scans, multiple views, and multiple It should be noted that it can easily be extended to the analysis of the interleaved data stream.
[0055]
The above description of the present invention has been presented for purposes of illustration and is not intended to limit the present invention to that described above, and various modifications and variations of the above embodiments are not intended. Is possible. For example, a data stream analysis mechanism has the ability to analyze an interleaved data stream that includes multiple sets of data. The data stream need not be a scanned image data stream. Also, SCL embodiments of multiple views of the same window are irrelevant how multiple views are acquired. The embodiment is the same even if the view is acquired from multiple scans of the same region. The above embodiments have been selected and described in order to best explain the principles of the invention and its practical application, so that those skilled in the art will recognize various embodiments and various embodiments to suit a particular use. It will be possible to utilize the invention in a modified form.
[0056]
[Table 4]
Figure 0003839942
Figure 0003839942
Figure 0003839942
Figure 0003839942
Figure 0003839942
Figure 0003839942
Figure 0003839942
Figure 0003839942
Figure 0003839942
Figure 0003839942
Figure 0003839942
[0057]
The present invention includes the following embodiments as examples.
(1) A method of generating a plurality of drawings of one image using a scanner, the step (a) of executing a single scan of the image using the scanner, and the image from the single scan. A step (b) in which the scanner generates a plurality of drawings.
(2) The method according to (1), wherein the step (b) includes a step of generating at least one grayscale image and at least one color image.
(3) Generating multiple renderings of an image according to (1), wherein step (b) includes generating at least one high resolution grayscale image and at least one low resolution high bit color image. Method.
(4) The method according to (1), further including a step (c) in which the scanner transmits the plurality of drawings generated from the single scan to the host computer for further processing in the host computer. A method of generating multiple images.
[0058]
(5) A scanner including an image processing device that generates a plurality of drawings of one image from a single scan.
(6) The scanner according to (5), wherein the image processing device includes a prescaler having a function of dividing the single scanned image into a plurality of drawings.
(7) The prescaler divides the single scan image into at least one single color drawing of the single scan image and at least one color drawing of the single scan image. Scanner.
(8) The scanner according to (6), wherein the prescaler divides the single scan image into at least one high resolution grayscale image and at least low resolution high bit color image.
[0059]
(9) A method for generating a plurality of drawings of one image, the step of performing a single scan of the image using a scanner, and a plurality of data signals representing a plurality of drawings of the single scan image The scanner generating an image, and the scanner generating a single interleaved data stream by interleaving the plurality of data signals representing a plurality of renderings of the single scanned image. Multiple drawing generation method.
(10) Multiple rendering of an image according to (9), further comprising the step of the scanner sending the interleaved single data stream to a computer for further processing of multiple renderings of the single scanned image. Generation method.
[0060]
【The invention's effect】
By utilizing a scanner according to the present invention, two rendered images, eg, a high resolution grayscale image and a low resolution high bit depth color image, can be simultaneously obtained from a single scan of a document containing different types of images such as text and graphics. Output, thereby significantly reducing the total amount of data sent to and processed by the host computer.
[Brief description of the drawings]
FIG. 1 is a block diagram of a data path for a multiple image scanner according to the present invention.
FIG. 2 is a more detailed block diagram of the data path of the image preprocessor for a multiple image scanner according to the present invention.
FIG. 3 is a more detailed block diagram of the data path of the image post processor for a multiple image scanner according to the present invention.
FIG. 4 is a more detailed block diagram of a data path from a multiple image scanner to a host computer in accordance with the present invention.
FIG. 5 is a flow diagram of a method for analyzing a data stream including multiple sets of data in accordance with the present invention.
[Explanation of symbols]
100 scanner
102 Host computer
104 CCD array
112 Image preprocessor
114 buffers
116 monochrome buffer
118 color buffer
120 image post processor
122 Data analysis mechanism
124 color image
126 monochrome image
128 color image signal
130 Monochromatic image signal
136 Data stream

Claims (5)

スキャナを使用して原画像の複数の画像を生成する方法であって、
上記スキャナを使用して上記原画像の単一走査を実行するステップと、
上記スキャナが、上記単一走査で得られる上記原画像から2以上の画像を走査中に並行して生成するステップと、を有し、
前記画像は、少なくとも1つの高解像度グレイスケール画像および少なくとも1つの低解像度高ビット・カラー画像を含む、スキャナを使用して原画像の複数画像を生成する方法。
A method of generating multiple images of an original image using a scanner,
Performing a single scan of the original image using the scanner;
The scanner generates two or more images in parallel during scanning from the original image obtained by the single scanning,
A method for generating multiple images of an original image using a scanner, wherein the images include at least one high resolution grayscale image and at least one low resolution high bit color image.
更なる処理のために、上記スキャナが、上記単一走査から得られる上記原画像から生成された2以上の画像をホスト・コンピュータに送信するステップを更に含む、請求項1に記載のスキャナを使用して原画像の複数の画像を生成する方法。The scanner of claim 1, further comprising the step of sending the two or more images generated from the original image obtained from the single scan to a host computer for further processing. And generating a plurality of images of the original image. 単一走査で得られる原画像から2以上の画像を走査中に同時に生成するよう動作可能な画像処理装置と、
単一走査された原画像を2以上の画像に分割するよう動作可能なプレスケーラと、を有し、
前記画像は、少なくとも1つの高解像度グレイスケール画像および少なくとも1つの低解像度高ビット・カラー画像を含む、スキャナ。
An image processing device operable to simultaneously generate two or more images from an original image obtained in a single scan during scanning;
A prescaler operable to divide a single scanned original image into two or more images;
The scanner, wherein the image comprises at least one high resolution grayscale image and at least one low resolution high bit color image.
原画像の複数の画像を生成する方法であって、
スキャナを使用して上記原画像の単一走査を実行するステップと、
上記スキャナが、上記単一走査された原画像の2以上の画像を表す2以上のデータ信号を同時に生成するステップと、を有し、
前記画像は、少なくとも1つの高解像度グレイスケール画像および少なくとも1つの低解像度高ビット・カラー画像を含んでおり、
上記スキャナが、上記単一走査された原画像の2以上の画像を表す上記2以上のデータ信号をインターリーブし、単一のインターリーブされたデータストリームを生成するステップと、
を有する原画像の複数の画像を生成する方法。
A method of generating a plurality of images of an original image,
Performing a single scan of the original image using a scanner;
The scanner simultaneously generating two or more data signals representing two or more images of the single scanned original image;
The image includes at least one high resolution grayscale image and at least one low resolution high bit color image;
The scanner interleaves the two or more data signals representing two or more images of the single scanned original image to generate a single interleaved data stream;
A method for generating a plurality of images of an original image.
上記単一走査された原画像の2以上の画像の更なる処理のため、上記スキャナが、上記インターリーブされた単一データストリームをコンピュータに送信するステップを更に有する、請求項4に記載の原画像の複数の画像を生成する方法。  5. The original image of claim 4, further comprising the step of the scanner sending the interleaved single data stream to a computer for further processing of two or more images of the single scanned original image. To generate multiple images.
JP33982497A 1997-01-13 1997-12-10 Multiple image generation method Expired - Fee Related JP3839942B2 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US78514497A 1997-01-13 1997-01-13
US785,144 1997-01-13

Publications (2)

Publication Number Publication Date
JPH10210279A JPH10210279A (en) 1998-08-07
JP3839942B2 true JP3839942B2 (en) 2006-11-01

Family

ID=25134583

Family Applications (1)

Application Number Title Priority Date Filing Date
JP33982497A Expired - Fee Related JP3839942B2 (en) 1997-01-13 1997-12-10 Multiple image generation method

Country Status (4)

Country Link
JP (1) JP3839942B2 (en)
DE (1) DE19741359A1 (en)
GB (1) GB2321361B (en)
TW (1) TW366646B (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6542260B1 (en) 1997-01-13 2003-04-01 Hewlett-Packard Company Multiple image scanner
EP0989738A1 (en) * 1998-09-22 2000-03-29 Hewlett-Packard Company Document analysis method to detect BW/color areas and corresponding scanning device
US7502063B2 (en) 2004-08-09 2009-03-10 Aptina Imaging Corporation Camera with scalable resolution
FR2900018B1 (en) * 2006-04-12 2008-12-05 Sagem Comm SCANNER COMPRISING MEANS FOR DETERMINING THE NATURE OF THE SCANNED AREA, CORRESPONDING CONTROL METHOD

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04306970A (en) * 1991-04-04 1992-10-29 Canon Inc Method and device for processing picture
US5579130A (en) * 1991-07-05 1996-11-26 Canon Kabushiki Kaisha Image communication apparatus and method that paints a color corresponding to a pattern
JPH07327134A (en) * 1994-05-31 1995-12-12 Canon Inc Image processor and its method
US6389163B1 (en) * 1994-11-18 2002-05-14 Xerox Corporation Method and apparatus for automatic image segmentation using template matching filters

Also Published As

Publication number Publication date
GB2321361A (en) 1998-07-22
DE19741359A1 (en) 1998-07-23
GB9800570D0 (en) 1998-03-11
TW366646B (en) 1999-08-11
JPH10210279A (en) 1998-08-07
GB2321361B (en) 2001-07-25

Similar Documents

Publication Publication Date Title
US6542260B1 (en) Multiple image scanner
EP0239936B1 (en) A tresholding algorithm selection apparatus
JP3219403B2 (en) Image storage device
US5856832A (en) System and method for parsing multiple sets of data
JP3294793B2 (en) Single scan multiple view generation method
US7443546B2 (en) Method for generating a calibration curve
US7023591B2 (en) Image scanning apparatus, storage medium for storing controlling procedure of image scanning apparatus, and control program for image scanning apparatus
US5920407A (en) Method and apparatus for applying tonal correction to image data
JP3839942B2 (en) Multiple image generation method
CN1384658A (en) Photosensitive sensor unit for image scanner to improve its spectral accuracy and raise bit depth
JPH10200712A (en) Sweep speed variable-type picture scanner and scanning method
US5201014A (en) Method and apparatus for establishing threshold level in a binary mode document scanner
US6228125B1 (en) Image processing apparatus for parallel image processing and method therefor
EP0503042A1 (en) Scene balance calibration of digital scanner
JPH08251355A (en) Image reader
JPH0380668A (en) High quality of image scanner
JP3742511B2 (en) Image reading device
JP3302010B2 (en) Control method of electronic equipment
JP3640191B2 (en) Image processing device
KR100242025B1 (en) Apparatus and method for scanning color image using shading correction
JP2727455B2 (en) Image data processing device
JPH0810900B2 (en) Color image processor
JP3278146B2 (en) Color image processing apparatus and color image processing method
JPH04213967A (en) Method and apparatus for establishing threshold level of binary mode document scanner
Turner Digital imaging: an update

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20041129

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20041129

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20060616

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: 20060711

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20060804

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: 20090811

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20100811

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20110811

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20110811

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20120811

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees