JP7031346B2 - 制御プログラム及び画像処理装置 - Google Patents
制御プログラム及び画像処理装置 Download PDFInfo
- Publication number
- JP7031346B2 JP7031346B2 JP2018023825A JP2018023825A JP7031346B2 JP 7031346 B2 JP7031346 B2 JP 7031346B2 JP 2018023825 A JP2018023825 A JP 2018023825A JP 2018023825 A JP2018023825 A JP 2018023825A JP 7031346 B2 JP7031346 B2 JP 7031346B2
- Authority
- JP
- Japan
- Prior art keywords
- processing
- scan data
- scan
- instruction
- execution means
- 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.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N1/00—Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
- H04N1/00127—Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture
- H04N1/00326—Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture with a data reading, recognizing or recording apparatus, e.g. with a bar-code apparatus
- H04N1/00328—Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture with a data reading, recognizing or recording apparatus, e.g. with a bar-code apparatus with an apparatus processing optically-read information
- H04N1/00331—Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture with a data reading, recognizing or recording apparatus, e.g. with a bar-code apparatus with an apparatus processing optically-read information with an apparatus performing optical character recognition
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N1/00—Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
- H04N1/387—Composing, repositioning or otherwise geometrically modifying originals
- H04N1/3877—Image rotation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N1/00—Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
- H04N1/387—Composing, repositioning or otherwise geometrically modifying originals
- H04N1/393—Enlarging or reducing
- H04N1/3935—Enlarging or reducing with modification of image resolution, i.e. determining the values of picture elements at new relative positions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N1/00—Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
- H04N1/40—Picture signal circuits
- H04N1/40087—Multi-toning, i.e. converting a continuous-tone signal for reproduction with more than two discrete brightnesses or optical densities, e.g. dots of grey and black inks on white paper
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- Discrete Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Character Input (AREA)
- Facsimile Image Signal Circuits (AREA)
- Facsimiles In General (AREA)
Description
本発明は、文字認識処理を実行可能な画像処理装置のコンピュータが読み取り可能な制御プログラム等に関する。
スキャンデータに基づいて文字認識処理を行う技術が知られている。下記特許文献に記載の技術では、文字認識の精度を向上させるべく、プリスキャンを実行し、プリスキャンで読み取られたスキャンデータに基づいて文字認識処理が実行される。そして、プリスキャン実行後に、本スキャンを実行し、本スキャンで読み取られたスキャンデータに、出力用の画像処理が実行される。
上記特許文献に記載の技術では、文字認識処理が実行される際に、必ずプリスキャンを行う必要があり、効率が悪かった。そこで、本願は、効率よく文字認識処理を行うことを課題とする。
上記課題を解決するために、実施例に開示する制御プログラムは、操作部と、記憶部とを備える画像処理装置のコンピュータが読み取り可能な制御プログラムであって、前記コンピュータを、前記操作部を介して、スキャン処理の設定値を受け付ける受付手段と、前記受付手段が受け付けた設定値が、疑似中間調のスキャンデータの作成を要求するものであり、かつ、文字認識処理の処理結果を利用する所定の処理の実行を要求するものである場合に、多値のスキャンデータの作成を指示するスキャン指示を出力する第1指示出力手段と、前記第1指示出力手段によるスキャン指示の出力に応じて取得した多値のスキャンデータを、前記記憶部に記憶させる記憶制御手段と、前記記憶制御手段により記憶された多値のスキャンデータに基づいて、文字認識処理を実行する第1処理実行手段と、前記第1処理実行手段による処理が実行された後に、前記記憶制御手段により記憶された多値のスキャンデータを、疑似中間調のスキャンデータに変換する変換手段と、前記第1処理実行手段による文字認識処理の処理結果を利用して、前記所定の処理を実行する第2処理実行手段と、前記受付手段が受け付けた設定値が、疑似中間調と異なる種類のスキャンデータの作成を要求するものであり、かつ、前記所定の処理の実行を要求するものである場合に、前記受付手段が受け付けた設定値に従ったスキャンデータの作成を指示するスキャン指示を出力する第2指示出力手段と、前記第2指示出力手段によるスキャン指示の出力に応じて取得したスキャンデータに基づいて、文字認識処理を実行する第3処理実行手段と、前記第3処理実行手段による文字認識処理の処理結果を利用して、前記所定の処理を実行する第4処理実行手段と、前記変換手段による変換と、前記第2処理実行手段による処理の実行とが行われたスキャンデータ、又は、前記第4処理実行手段による処理の実行が行われたスキャンデータを出力するデータ出力手段と、して機能させることを特徴とする。
上記課題を解決するために、実施例に開示する制御プログラムは、操作部と、記憶部とを備える画像処理装置のコンピュータが読み取り可能な制御プログラムであって、前記コンピュータを、前記操作部を介して、スキャン処理の設定値を受け付ける受付手段と、前記受付手段が受け付けた設定値が、予め設定された設定解像度未満のスキャンデータの作成を要求するものであり、かつ、文字認識処理の処理結果を利用する所定の処理の実行を要求するものである場合に、前記設定解像度以上のスキャンデータの作成を指示するスキャン指示を出力する第1指示出力手段と、前記第1指示出力手段によるスキャン指示の出力に応じて取得した前記設定解像度以上のスキャンデータを、前記記憶部に記憶させる記憶制御手段と、前記記憶制御手段により記憶された前記設定解像度以上のスキャンデータに基づいて、文字認識処理を実行する第1処理実行手段と、前記第1処理実行手段による処理が実行された後に、前記記憶制御手段により記憶された前記設定解像度以上のスキャンデータを、前記受付手段が受け付けた設定値に従った解像度のスキャンデータに変換する変換手段と、前記第1処理実行手段による文字認識処理の処理結果を利用して、前記所定の処理を実行する第2処理実行手段と、前記受付手段が受け付けた設定値が、前記設定解像度以上のスキャンデータの作成を要求するものであり、かつ、前記所定の処理の実行を要求するものである場合に、前記受付手段が受け付けた設定値に従ったスキャンデータの作成を指示するスキャン指示を出力する第2指示出力手段と、前記第2指示出力手段によるスキャン指示の出力に応じて取得したスキャンデータに基づいて、文字認識処理を実行する第3処理実行手段と、前記第3処理実行手段による文字認識処理の処理結果を利用して、前記所定の処理を実行する第4処理実行手段と、前記変換手段による変換と、前記第2処理実行手段による処理の実行とが行われたスキャンデータ、又は、前記第4処理実行手段による処理の実行が行われたスキャンデータを出力するデータ出力手段と、して機能させることを特徴とする。
上記課題を解決するために、実施例に開示する画像処理装置は、操作部と、記憶部と、制御部と、を備える画像処理装置であって、前記制御部を、前記操作部を介して、スキャン処理の設定値を受け付ける受付手段と、前記受付手段が受け付けた設定値が、疑似中間調のスキャンデータの作成を要求するものであり、かつ、文字認識処理の処理結果を利用する所定の処理の実行を要求するものである場合に、多値のスキャンデータの作成を指示するスキャン指示を出力する第1指示出力手段と、前記第1指示出力手段によるスキャン指示の出力に応じて取得した多値のスキャンデータを、前記記憶部に記憶させる記憶制御手段と、前記記憶制御手段により記憶された多値のスキャンデータに基づいて、文字認識処理を実行する第1処理実行手段と、前記第1処理実行手段による処理が実行された後に、前記記憶制御手段により記憶された多値のスキャンデータを、疑似中間調のスキャンデータに変換する変換手段と、前記第1処理実行手段による文字認識処理の処理結果を利用して、前記所定の処理を実行する第2処理実行手段と、前記受付手段が受け付けた設定値が、疑似中間調と異なる種類のスキャンデータの作成を要求するものであり、かつ、前記所定の処理の実行を要求するものである場合に、前記受付手段が受け付けた設定値に従ったスキャンデータの作成を指示するスキャン指示を出力する第2指示出力手段と、前記第2指示出力手段によるスキャン指示の出力に応じて取得したスキャンデータに基づいて、文字認識処理を実行する第3処理実行手段と、前記第3処理実行手段による文字認識処理の処理結果を利用して、前記所定の処理を実行する第4処理実行手段と、前記変換手段による変換と、前記第2処理実行手段による処理の実行とが行われたスキャンデータ、又は、前記第4処理実行手段による処理の実行が行われたスキャンデータを出力するデータ出力手段と、して機能させることを特徴とする。
上記課題を解決するために、実施例に開示する画像処理装置は、操作部と、記憶部と、制御部と、を備える画像処理装置であって、前記制御部を、前記操作部を介して、スキャン処理の設定値を受け付ける受付手段と、前記受付手段が受け付けた設定値が、予め設定された設定解像度未満のスキャンデータの作成を要求するものであり、かつ、文字認識処理の処理結果を利用する所定の処理の実行を要求するものである場合に、前記設定解像度以上のスキャンデータの作成を指示するスキャン指示を出力する第1指示出力手段と、前記第1指示出力手段によるスキャン指示の出力に応じて取得した前記設定解像度以上のスキャンデータを、前記記憶部に記憶させる記憶制御手段と、前記記憶制御手段により記憶された前記設定解像度以上のスキャンデータに基づいて、文字認識処理を実行する第1処理実行手段と、前記第1処理実行手段による処理が実行された後に、前記記憶制御手段により記憶された前記設定解像度以上のスキャンデータを、前記受付手段が受け付けた設定値に従った解像度のスキャンデータに変換する変換手段と、前記第1処理実行手段による文字認識処理の処理結果を利用して、前記所定の処理を実行する第2処理実行手段と、前記受付手段が受け付けた設定値が、前記設定解像度以上のスキャンデータの作成を要求するものであり、かつ、前記所定の処理の実行を要求するものである場合に、前記受付手段が受け付けた設定値に従ったスキャンデータの作成を指示するスキャン指示を出力する第2指示出力手段と、前記第2指示出力手段によるスキャン指示の出力に応じて取得したスキャンデータに基づいて、文字認識処理を実行する第3処理実行手段と、前記第3処理実行手段による文字認識処理の処理結果を利用して、前記所定の処理を実行する第4処理実行手段と、前記変換手段による変換と、前記第2処理実行手段による処理の実行とが行われたスキャンデータ、又は、前記第4処理実行手段による処理の実行が行われたスキャンデータを出力するデータ出力手段と、して機能させることを特徴とする。
実施例に開示する制御プログラム及び画像処理装置において、疑似中間調でのスキャンデータの作成が要求され、文字認識処理を用いた所定の処理の実行が要求されている場合に、多値のスキャンデータの作成を指示し、作成された多値のスキャンデータに基づいて文字認識処理が実行される。続いて、文字認識処理の処理結果を利用して、所定の処理が実行される。そして、文字認識処理が実行された後に、多値のスキャンデータが、疑似中間調のスキャンデータに変換される。これにより、文字認識処理が実行される際に、プリスキャンを行うことなく、効率よく文字認識処理を行うことができる。
また、設定解像度A未満のスキャンデータの作成が要求され、文字認識処理を用いた所定の処理の実行が要求されている場合に、少なくとも設定解像度A以上である解像度Bのスキャンデータの作成を指示し、作成された解像度Bのスキャンデータに基づいて文字認識処理が実行される。続いて、文字認識処理の処理結果を利用して、所定の処理が実行される。そして、文字認識処理が実行された後に、解像度Bのスキャンデータが、設定解像度A未満のスキャンデータに変換される。これにより、文字認識処理が実行される際に、プリスキャンを行うことなく、効率よく文字認識処理を行うことができる。
<スキャンシステムの構成>
図1に、本願に係る実施形態として例示されるスキャンシステム1のブロック図を示す。スキャンシステム1は、PC(本発明の画像処理装置の一例)10、スキャナ50を備える。
図1に、本願に係る実施形態として例示されるスキャンシステム1のブロック図を示す。スキャンシステム1は、PC(本発明の画像処理装置の一例)10、スキャナ50を備える。
PC10は、CPU(コンピュータ及び制御部の一例)12、メモリ14、LCD16、入力I/F(操作部の一例)18、ネットワークI/F20を主に備えている。これらの構成要素は、バス22を介して互いに通信可能とされている。
PC10は、スキャナ50と、ネットワークI/F20及びネットワーク52を通じて通信可能となっている。通信の方式としては、例えば、有線LAN、USB、Wi-Fi(登録商標)やBluetooth(登録商標)を採用できる。なお、スキャナ50は、PC10との間で各種の情報や指示信号を送受信し、PC10による制御に基づいて、スキャンデータを作成する。
CPU12は、メモリ14内のスキャナドライバ(制御プログラムの一例)30、アプリケーション32に従って処理を実行する。スキャナドライバ30は、スキャナ50のデバイスドライバであり、スキャナ50の作動を制御する。また、アプリケーション32は、例えば、スキャナ50により作成されたスキャンデータに対して、任意の画像処理を実行するためのプログラムであり、具体的には、Adobe Photoshop(登録商標)などの画像編集ソフトである。ちなみに、スキャナドライバ30及び、アプリケーション32は、例えば、TWAIN規格に従ったプログラムである。
なお、以下の説明では、スキャナドライバ30等を実行するCPU12のことを、単にプログラム名でも記載する場合がある。例えば、「スキャナドライバ30が」という記載は、「スキャナドライバ30を実行するCPU12が」ということを意味する場合がある。
また、メモリ14は、データ記憶領域(記憶部の一例)34を備える。データ記憶領域34は、スキャナドライバ30等の実行に必要なデータなどを記憶する領域である。なお、メモリ14は、RAM、ROM、フラッシュメモリ、HDD、CPU12が備えるバッファなどが組み合わされて構成されている。
メモリ14は、コンピュータが読み取り可能なストレージ媒体であってもよい。コンピュータが読み取り可能なストレージ媒体とは、non-transitoryな媒体である。non-transitoryな媒体には、上記の例の他に、CD-ROM、DVD-ROM等の記録媒体も含まれる。また、non-transitoryな媒体は、tangibleな媒体でもある。一方、インターネット上のサーバなどからダウンロードされるプログラムを搬送する電気信号は、コンピュータが読み取り可能な媒体の一種であるコンピュータが読み取り可能な信号媒体であるが、non-transitoryなコンピュータが読み取り可能なストレージ媒体には含まれない。
LCD16は、PC10の各種機能を表示する。入力I/F18は、キーボード,マウス等を含み、ユーザ操作を入力するためのインタフェースである。
<スキャンシステムの作動>
本明細書でのスキャンシステム1の作動の説明において、基本的に、プログラムに記述された命令に従ったCPU12の処理を示す。すなわち、以下の説明における「判断」「抽出」「選択」「算出」「決定」「特定」「取得」「受付」「制御」「設定」等の処理は、CPU12の処理を表している。CPU12による処理は、OS36を介したハードウェア制御も含む。なお、「取得」は要求を必須とはしない概念で用いる。すなわち、CPU12が要求することなくデータを受信するという処理も、「CPU12がデータを取得する」という概念に含まれる。また、本明細書中の「データ」とは、コンピュータに読取可能なビット列で表される。そして、実質的な意味内容が同じでフォーマットが異なるデータは、同一のデータとして扱われるものとする。本明細書中の「情報」についても同様である。また、「命令」「応答」「要求」等の処理は、「命令」「応答」「要求」等を示す情報を通信することにより行われる。また、「命令」「応答」「要求」等の文言を、「命令」「応答」「要求」等を示す情報そのものという意味で記載してもよい。
本明細書でのスキャンシステム1の作動の説明において、基本的に、プログラムに記述された命令に従ったCPU12の処理を示す。すなわち、以下の説明における「判断」「抽出」「選択」「算出」「決定」「特定」「取得」「受付」「制御」「設定」等の処理は、CPU12の処理を表している。CPU12による処理は、OS36を介したハードウェア制御も含む。なお、「取得」は要求を必須とはしない概念で用いる。すなわち、CPU12が要求することなくデータを受信するという処理も、「CPU12がデータを取得する」という概念に含まれる。また、本明細書中の「データ」とは、コンピュータに読取可能なビット列で表される。そして、実質的な意味内容が同じでフォーマットが異なるデータは、同一のデータとして扱われるものとする。本明細書中の「情報」についても同様である。また、「命令」「応答」「要求」等の処理は、「命令」「応答」「要求」等を示す情報を通信することにより行われる。また、「命令」「応答」「要求」等の文言を、「命令」「応答」「要求」等を示す情報そのものという意味で記載してもよい。
スキャンシステム1では、通常、PC10において、入力I/F18を介して、スキャン処理の設定値が入力され、入力された設定値に従ったスキャン指示が、スキャナ50に送信されることで、スキャナ50により、ユーザの意図に従ったスキャン処理が実行される。ここで、設定されるスキャン処理の設定値として、原稿サイズに関する設定値、スキャンデータの色のスケールに関する設定値、スキャンデータの解像度に関する設定値、原稿向き自動補正に関する設定値、スキャン面に関する設定値などがある。
原稿サイズに関する設定値は、処理対象の原稿サイズを指定する値であり、A3,A4等の通常のカット紙の用紙サイズである。スキャンデータの色のスケールに関する設定値は、ビットマップ画像データにおける1ピクセルに対して設定可能な色数を示す値であり、24bit(166777216色)のカラースケール,8bit(256色)のグレースケール,1bit(2色:白と黒)のモノクロスケールである。さらに、色のスケールに関する設定値として、白と黒の2色のみを用いるが,画素の数や,画素の集まり具合を制御して階調を表す疑似中間調の色スケールも採用されている。疑似中間調の色スケールの方式としては、ディザ法,濃度パターン法など、種々の方式があるが、ここでは、Error Diffusion法(以下、「ED法」と記載する)が採用されている。
スキャンデータの解像度に関する設定値は、スキャン処理時の読取精度を指定する値であり、300dpi,500dpi等である。原稿向き自動補正に関する設定値は、スキャンデータに基づく画像の向きを文字認識処理(以下、「OCR処理」と記載する)により特定し、特定された画像の向きに応じて、画像の天地が正常となるように、原稿の読み取りにより形成されたスキャンデータに基づく画像の向きを自動で補正する処理(以下、「原稿向き自動補正処理」と記載する)の実行の有無を指定する値であり、ONとOFFとがある。また、スキャン面に関する設定値は、原稿の片面のみをスキャンするか、両面をスキャンするかを設定する値であり、両面スキャンと片面スキャンとがある。
そして、ユーザ操作により、入力I/F18を介して、各種設定値が入力されると、スキャナドライバ30が、入力された各種設定値を受け付け、受け付けた各種設定値に応じたスキャン指示を、スキャナ50に送信する。この際、設定されたスキャン処理の設定値に応じて、原稿向き自動補正処理を適切に実行できない場合がある。
具体的に、まず、ユーザ設定により、色のスケールに関する設定値がカラースケールに設定され、原稿向き自動補正に関する設定値がONに設定されている場合について、図2を用いて説明する。ユーザ設定により、色のスケールに関する設定値がカラースケールに設定され、原稿向き自動補正に関する設定値がONに設定されると、スキャナドライバ30は、カラースケールでのスキャン処理の実行指示をスキャナ50に送信する。これにより、スキャナ50は、カラースケールでのスキャン処理を実行し、カラースケールでのスキャンデータD1を作成する。そして、スキャナ50は、作成したスキャンデータD1をPC10に送信する(S10)。
なお、図では、スキャナ50により作成されたスキャンデータD1を示す原稿の図柄が上下方向に180度引っくり返った状態で記されているが、これは、原稿が上下方向に180度引っくり返った状態でスキャンされたことを示している。つまり、上下方向に180度引っくり返った状態でスキャンされた原稿のスキャンデータD1が、スキャナ50からPC10に送信されている。そして、PC10において、スキャナドライバ30が、スキャンデータD1を受信すると、そのスキャンデータD1をデータ記憶領域34に記憶する。
次に、スキャナドライバ30は、スキャンデータD1に基づいてOCR処理を実行する(S12)。OCR処理は、既存の技術であるため詳細は省略するが、生成したヒストグラムに基づいて画像データを2値化し、2値化した画像データに基づく画像に含まれる文字を認識するための処理である。このため、OCR処理の実行により、スキャンデータに基づく画像に含まれる文字の向きを検知することができる。そこで、スキャナドライバ30は、OCR処理の処理結果に基づいて、スキャンデータに基づく画像に含まれる文字の向きに関する情報(以下、「文字向き情報」と記載する)を取得する(S14)。
なお、S12で実行されるOCR処理の対象は、カラースケールのスキャンデータであり、カラースケールのスキャンデータの1画素毎の色調は区別し易いため、カラースケールのスキャンデータを対象とするOCR処理は、好適に実行される。つまり、スキャナドライバ30は、カラースケールのスキャンデータに基づいて、文字向き情報を適切に取得することができる。また、カラースケールのスキャンデータだけでなく、グレースケール、および、モノクロスケールのスキャンデータにおいても、1画素毎の色調は区別し易いため、スキャナドライバ30は、OCR処理を好適に実行し、文字向き情報を適切に取得することができる。
そして、スキャナドライバ30は、文字向き情報を取得すると、取得した文字向き情報を利用して、スキャンデータに基づく画像の回転処理を実行する(S16)。つまり、例えば、文字向き情報が、スキャンデータに基づく画像に含まれる文字の向きが正常な状態から上下方向に180度回転していることを示している場合に、スキャンデータに基づく画像を上下方向に180度回転させる処理を行う。これにより、上下方向に反転していない画像のスキャンデータが得られる。そして、スキャナドライバ30は、上下方向に反転していない画像のスキャンデータを、アプリケーション32に出力する(S18)。これにより、アプリケーション32において、正しい姿勢の画像に対して、編集処理などを行うことができる。
また、ユーザ設定により、色のスケールに関する設定値がED法に設定され、原稿向き自動補正に関する設定値がONに設定されている場合の従来技術について、図3を用いて説明する。ユーザ設定により、色のスケールに関する設定値がED法に設定され、原稿向き自動補正に関する設定値がONに設定されると、スキャナドライバ30は、ED法でのスキャン処理の実行指示をスキャナ50に送信する。これにより、スキャナ50は、ED法でのスキャン処理を実行し、ED法でのスキャンデータD1を作成する。そして、スキャナ50は、作成したスキャンデータD1をPC10に送信する(S20)。
PC10では、スキャナドライバ30が、スキャンデータD1を受信し、そのスキャンデータD1をデータ記憶領域34に記憶する。そして、スキャナドライバ30は、スキャンデータD1に基づいてOCR処理を実行する(S22)。ただし、S22で実行されるOCR処理の対象は、ED法のスキャンデータであり、ED法のスキャンデータに基づく画像では、画素の数や,画素の集まり具合を制御して階調的に表されるため、1画素毎の色調が区別し難く、ED法のスキャンデータを対象とするOCR処理は、好適に実行することができない。このため、スキャナドライバ30は、文字向き情報を取得することができず、スキャンデータに基づく画像の回転処理を行うことができない。その結果、スキャナドライバ30は、回転処理の施していないスキャンデータ、つまり、上下方向に反転した状態の画像のスキャンデータを、アプリケーション32に出力せざるを得ない(S24)。
このようなことに鑑みて、本実施形態では、ユーザ設定により、色のスケールに関する設定値がED法に設定され、原稿向き自動補正に関する設定値がONに設定されると、スキャナドライバ30は、グレースケールでのスキャン処理の実行指示をスキャナ50に送信する。つまり、ユーザがED法でのスキャン処理を設定しているにも拘らず、スキャナドライバ30は、グレースケールでのスキャン処理の実行指示をスキャナ50に送信する。これにより、スキャナ50は、グレースケールでのスキャン処理を実行し、図4に示すように、グレースケールでのスキャンデータD1を作成する。そして、スキャナ50は、作成したスキャンデータD1をPC10に送信する(S30)。
PC10では、スキャナドライバ30が、スキャンデータD1を受信し、そのスキャンデータD1をデータ記憶領域34に記憶する。そして、スキャナドライバ30は、スキャンデータD1に基づいてOCR処理を実行する(S32)。このS32で実行されるOCR処理の対象は、グレースケールのスキャンデータD1であるため、好適にOCR処理が実行され、スキャナドライバ30は、OCR処理の処理結果に基づいて、文字向き情報を適切に取得する(S34)。
なお、本スキャン処理において、ユーザがED法でのスキャン処理を設定しているにも拘らず、スキャナドライバ30は、グレースケールでのスキャン処理の実行指示をスキャナ50に送信しており、グレースケールのスキャンデータD1が作成されている。このため、スキャナドライバ30は、グレースケールのスキャンデータD1を、ED法のスキャンデータD1に変換するスケール変換処理を実行する(S36)。これにより、ユーザ指定の色のスケール、つまり、ED法のスキャンデータD1が生成される。
そして、スキャナドライバ30は、S34で取得した文字向き情報を利用して、S36で作成したED法のスキャンデータに基づく画像の回転処理を実行する(S38)。これにより、上下方向に反転していない画像のスキャンデータが得られる。そして、スキャナドライバ30は、上下方向に反転していない画像のスキャンデータを、アプリケーション32に出力する(S40)。これにより、アプリケーション32において、正しい姿勢の画像に対して、編集処理などを行うことができる。なお、回転処理が実行される前に、グレースケールのスキャンデータをED法のスキャンデータに変換することで、メモリ容量を抑制した状態で、回転処理を実行することができる。
このように、ユーザ設定により、色のスケールに関する設定値がED法に設定され、原稿向き自動補正に関する設定値がONに設定されている場合に、スキャナドライバ30が、グレースケールでのスキャン処理の実行指示をスキャナ50に送信することで、適切なOCR処理の実行を担保し、原稿向き自動補正処理を好適に行うことが可能となる。また、OCR処理が実行された後に、グレースケールのスキャンデータを、ED法のスキャンデータに変換することで、ユーザの望むスケールのスキャンデータを提供することができる。さらに言えば、スケール変換処理と回転処理との実行順を適切化することで、メモリ容量の抑制を図ることも可能となる。
なお、上記説明では、色のスケールに関する設定値がED法に設定されているにも拘わらず、適切なOCR処理の実行を担保するべく、スキャナドライバ30が、グレースケールでのスキャン指示をスキャナ50に送信しているが、カラースケールでのスキャン指示をスキャナ50に送信することでも、同様の効果を奏することが可能である。ただし、スキャナドライバ30は、カラースケールでのスキャン指示をスキャナ50に送信するよりも、グレースケールでのスキャン指示をスキャナ50に送信することで、データ記憶領域34のメモリ容量の抑制を図ることが可能となる。なお、スキャナドライバ30が、カラースケールでのスキャン指示をスキャナ50に送信した場合において、スキャナドライバ30は、スケール変換処理において、カラースケールのスキャンデータをED法のスキャンデータに変換する必要がある。
また、ユーザ設定により、色のスケールに関する設定値がED法に設定され、原稿向き自動補正に関する設定値がONに設定されている場合において、上述したように、スキャナドライバ30は、グレースケールでのスキャン指示の送信,OCR処理の実行等を行うが、スキャン面に関する設定値に応じて、僅かに制御手法が変更される。
具体的には、スキャン面に関する設定値が片面スキャンに設定されている場合において、スキャナドライバ30は、図4を用いて説明した制御手法に従って処理を実行する。一方、スキャン面に関する設定値が両面スキャンに設定されている場合において、スキャナドライバ30は、原稿の一方の面に対して、グレースケールでのスキャン処理の実行指示を、原稿の他方の面に対して、設定値に従ったスケール、つまり、ED法でのスキャン処理の実行指示を、スキャナ50に送信する。これにより、スキャナ50は、原稿の一方の面に対して、グレースケールでのスキャン処理を実行し、原稿の他方の面に対して、ED法でのスキャン処理を実行する。そして、スキャナ50は、原稿の一方の面のグレースケールのスキャンデータD1と、原稿の他方の面のED法のスキャンデータD1とを作成し、PC10に送信する。
PC10では、スキャナドライバ30が、原稿の一方の面のスキャンデータD1と他方の面のスキャンデータD1とを受信し、データ記憶領域34に記憶する。そして、スキャナドライバ30は、原稿の一方の面のスキャンデータに対してのみOCR処理を実行する。つまり、グレースケールのスキャンデータに対してOCR処理を実行し、ED法のスキャンデータに対してOCR処理を実行しない。これにより、スキャナドライバ30は、原稿の一方の面の画像に含まれる文字の文字向き情報を取得する。
続いて、スキャナドライバ30は、原稿の一方の面のスキャンデータの色スケールを、設定値に応じた色スケールに変換する。つまり、スキャナドライバ30は、原稿の一方の面のグレースケールのスキャンデータを、ED法のスキャンデータに変換するスケール変換処理を実行する。なお、原稿の他方の面のスキャンデータは、ユーザ設定に応じたED法のスキャンデータであるため、スケール変換処理は実行されない。
そして、スキャナドライバ30は、原稿の一方の面のスキャンデータに基づいて取得された文字向き情報を利用して、原稿の一方の面のスキャンデータに基づく画像の回転処理を実行する。これにより、原稿の一方の面のスキャンデータとして、上下方向に反転していない画像のスキャンデータが得られる。また、スキャナドライバ30は、原稿の一方の面のスキャンデータに基づいて取得された文字向き情報を利用して、原稿の他方の面のスキャンデータに基づく画像の回転処理を実行する。これは、原稿の一方の面の画像が、例えば、上下方向に180度反転した画像である場合に、原稿の他方の面の画像も、当然、上下方向に180度反転した画像となるためである。これにより、原稿の他方の面のスキャンデータとして、上下方向に反転していない画像のスキャンデータも得られる。そして、スキャナドライバ30は、上下方向に反転していない原稿の一方の面の画像のスキャンデータと、上下方向に反転していない原稿の他方の面の画像のスキャンデータとを、アプリケーション32に出力する。
このように、スキャン面に関する設定値が両面スキャンに設定されている場合において、原稿の一方の面に対してのみ、色スケールの設定値と異なるグレースケールでのスキャン指示を送信することで、原稿の他方の面に対するOCR処理及びスケール変換処理を実行することなく、原稿の両面の向きを適切に補正することが可能となる。これにより、処理時間の短縮,処理負担の軽減などを図ることが可能となる。
なお、ユーザ設定により、色のスケールに関する設定値が、ED法以外のもの、つまり、カラースケール,グレースケール,モノクロスケールの何れかに設定され、原稿向き自動補正に関する設定値がONに設定されている場合には、上述したように、好適にOCR処理を実行し、OCR処理の処理結果を利用して適切に回転処理を実行することができるため、図2を用いて説明したように、スキャナドライバ30は、ユーザ設定に従った色スケールでのスキャン指示を、スキャナ50に送信すればよい。そして、スキャナドライバ30は、OCR処理および、回転処理を実行すればよい。つまり、スキャナドライバ30は、ユーザ設定に従った色スケールでのスキャン指示を、スキャナ50に送信するため、スケール変換処理を行う必要はない。
また、ユーザ設定により、原稿向き自動補正に関する設定値がOFFに設定されている場合には、OCR処理は実行されないため、スキャンデータの色スケールを考慮する必要はない。このため、原稿向き自動補正に関する設定値がOFFに設定されている場合において、色のスケールに関する設定値が、カラースケール,グレースケール,モノクロスケール,ED法の何れかに設定されていても、スキャナドライバ30は、設定値に従った色スケールでのスキャン指示をスキャナ50に送信する。そして、スキャナドライバ30は、スキャンデータをスキャナ50から受信すると、従来通りの処理を実行すればよい。
<スキャナドライバの処理>
上述したPC10からスキャナ50へのスキャン指示の送信,および、スキャン指示の送信に応じて取得されたスキャンデータに対する各種処理の実行は、CPU12においてスキャナドライバ30が実行されることによって行われる。以下に、図5乃至図7を用いて、スキャナドライバ30のフローが実行される際の処理を説明する。本処理は、スキャナドライバ30が起動し、スキャン処理の設定に関するユーザ操作が入力された後に、繰り返し実行される処理である。
上述したPC10からスキャナ50へのスキャン指示の送信,および、スキャン指示の送信に応じて取得されたスキャンデータに対する各種処理の実行は、CPU12においてスキャナドライバ30が実行されることによって行われる。以下に、図5乃至図7を用いて、スキャナドライバ30のフローが実行される際の処理を説明する。本処理は、スキャナドライバ30が起動し、スキャン処理の設定に関するユーザ操作が入力された後に、繰り返し実行される処理である。
まず、スキャナドライバ30は、原稿向き自動補正に関する設定値がONに設定されているか否かを判断する(S100:図5参照)。この際、原稿向き自動補正に関する設定値がOFFに設定されている場合(S100:NO)に、従来処理と同じ処理が実行される(S102)。そして、本フローが終了する。一方、原稿向き自動補正に関する設定値がONに設定されている場合(S100:YES)に、スキャナドライバ30は、色のスケールに関する設定値がED法に設定されているか否かを判断する(S104)。
この際、色のスケールに関する設定値がED法に設定されていない場合(S104:NO)に、スキャナドライバ30は、色のスケールに関する設定値に従ったスキャン指示をスキャナ50に送信する(S106)。次に、スキャナドライバ30は、スキャン指示に応じてスキャン処理が実行されたスキャナ50からスキャンデータを取得し(S108)、取得したスキャンデータを、データ記憶領域34に記憶する(S110)。
続いて、スキャナドライバ30は、データ記憶領域34に記憶したスキャンデータに基づいてOCR処理を実行する(S112)。そして、スキャナドライバ30は、OCR処理の処理結果に基づいて、文字向き情報を取得する(S114)。次に、スキャナドライバ30は、取得した文字向き情報を利用して回転処理を実行する(S116)。そして、スキャナドライバ30は、回転処理を実行したスキャンデータをアプリケーション32に出力する(S118)。これにより、本フローが終了する。
また、S104で色のスケールに関する設定値がED法に設定されている場合(S104:YES)に、スキャナドライバ30は、スキャン面に関する設定値が両面スキャンに設定されているか否かを判断する(S120)。この際、スキャン面に関する設定値が片面スキャンに設定されている場合(S120:NO)に、片面スキャン処理実行サブルーチンが実行される(S122)。
片面スキャン処理実行サブルーチンでは、スキャナドライバ30は、グレースケールでのスキャン指示をスキャナ50に送信する(S150:図6参照)。次に、スキャナドライバ30は、スキャン指示に応じてスキャン処理が実行されたスキャナ50からスキャンデータを取得し(S152)、取得したスキャンデータを、データ記憶領域34に記憶する(S154)。
続いて、スキャナドライバ30は、データ記憶領域34に記憶したスキャンデータに基づいてOCR処理を実行する(S156)。そして、スキャナドライバ30は、OCR処理の処理結果に基づいて、文字向き情報を取得する(S158)。次に、スキャナドライバ30は、グレースケールのスキャンデータをED法のスキャンデータに変換する(S160)。続いて、スキャナドライバ30は、文字向き情報を利用して回転処理を実行する(S162)。そして、スキャナドライバ30は、回転処理を実行したスキャンデータをアプリケーション32に出力する(S164)。これにより、片面スキャン処理実行サブルーチンが終了し、本フローも終了する。
また、S120(図5参照)でスキャン面に関する設定値が両面スキャンに設定されている場合(S120:YES)に、両面スキャン処理実行サブルーチンが実行される(S124)。両面スキャン処理実行サブルーチンでは、スキャナドライバ30は、原稿の一方の面に対してグレースケールでのスキャン指示を、原稿の他方の面に対してED法でのスキャン指示をスキャナ50に送信する(S180:図7参照)。次に、スキャナドライバ30は、スキャン指示に応じてスキャン処理を実行したスキャナ50からスキャンデータを取得し(S182)、取得したスキャンデータを、データ記憶領域34に記憶する(S184)。
続いて、スキャナドライバ30は、原稿の一方の面のスキャンデータに基づいてOCR処理を実行する(S186)。そして、スキャナドライバ30は、OCR処理の処理結果に基づいて、文字向き情報を取得する(S188)。次に、スキャナドライバ30は、原稿の一方の面のグレースケールのスキャンデータをED法のスキャンデータに変換する(S190)。続いて、スキャナドライバ30は、文字向き情報を利用して、原稿の一方の面のスキャンデータと他方の面のスキャンデータとに基づいて回転処理を実行する(S192)。そして、スキャナドライバ30は、回転処理を実行した原稿の一方の面のスキャンデータと他方の面のスキャンデータとをアプリケーション32に出力する(S194)。これにより、両面スキャン処理実行サブルーチンが終了し、本フローも終了する。
<第2実施形態>
第1実施形態のスキャンシステム1では、ED法のスキャンデータに対してOCR処理を適切に実行することができないことを考慮して、ユーザがED法でのスキャン処理を設定しているにも拘らず、グレースケールでのスキャン処理の実行指示がスキャナ50に送信される。しかしながら、ED法のスキャンデータだけでなく、解像度の低いスキャンデータに対しても、適切にOCR処理を実行できない虞がある。これは、解像度の低いスキャンデータでは、単位面積当たりの画素数が少なく、画像が粗くなり、画像に含まれる文字を認識し難いためである。このため、第2実施形態のスキャンシステム1では、解像度の低いスキャンデータに対してOCR処理を適切に実行することができないことを考慮して、ユーザが解像度の低いスキャン処理を設定しているにも拘らず、解像度の高いスキャン処理の実行指示がスキャナ50に送信される。
第1実施形態のスキャンシステム1では、ED法のスキャンデータに対してOCR処理を適切に実行することができないことを考慮して、ユーザがED法でのスキャン処理を設定しているにも拘らず、グレースケールでのスキャン処理の実行指示がスキャナ50に送信される。しかしながら、ED法のスキャンデータだけでなく、解像度の低いスキャンデータに対しても、適切にOCR処理を実行できない虞がある。これは、解像度の低いスキャンデータでは、単位面積当たりの画素数が少なく、画像が粗くなり、画像に含まれる文字を認識し難いためである。このため、第2実施形態のスキャンシステム1では、解像度の低いスキャンデータに対してOCR処理を適切に実行することができないことを考慮して、ユーザが解像度の低いスキャン処理を設定しているにも拘らず、解像度の高いスキャン処理の実行指示がスキャナ50に送信される。
具体的には、ユーザ設定により、解像度に関する設定値が、予め設定された設定解像度A未満に設定され、原稿向き自動補正に関する設定値がONに設定されている場合に、スキャナドライバ30は、少なくとも設定解像度A以上の所定の解像度Bのスキャン処理の実行指示をスキャナ50に送信する。これにより、スキャナ50は、解像度Bでのスキャン処理を実行し、作成した解像度BのスキャンデータD1をPC10に送信する。
PC10では、スキャナドライバ30が、スキャンデータD1を受信し、そのスキャンデータD1をデータ記憶領域34に記憶する。そして、スキャナドライバ30は、スキャンデータD1に基づいてOCR処理を実行する。この際、スキャンデータD1の解像度は設定解像度Aより大きなBとされているため、好適にOCR処理が実行され、スキャナドライバ30は、OCR処理の処理結果に基づいて、文字向き情報を適切に取得する。
なお、本スキャン処理において、ユーザが設定解像度A未満のスキャン処理を設定しているにも拘らず、スキャナドライバ30は、解像度Bのスキャン処理の実行指示をスキャナ50に送信しており、解像度BのスキャンデータD1が作成されている。このため、スキャナドライバ30は、解像度BのスキャンデータD1を、ユーザ操作により指定されている解像度のスキャンデータD1に変換する解像度変換処理を実行する。これにより、ユーザ指定の解像度のスキャンデータD1が生成される。
そして、スキャナドライバ30は、OCR処理により取得した文字向き情報を利用して、ユーザ指定の解像度のスキャンデータに基づく画像の回転処理を実行する。これにより、上下方向に反転していない画像のスキャンデータが得られる。そして、スキャナドライバ30は、上下方向に反転していない画像のスキャンデータを、アプリケーション32に出力する。このように、ユーザ設定により、設定解像度A未満のスキャン処理が設定され、原稿向き自動補正に関する設定値がONに設定されている場合に、スキャナドライバ30が、解像度Bのスキャン処理の実行指示をスキャナ50に送信することで、適切なOCR処理の実行を担保し、原稿向き自動補正処理を好適に行うことが可能となる。また、OCR処理が実行された後に、解像度Bのスキャンデータを、ユーザ指定の解像度のスキャンデータに変換することで、ユーザの望む解像度のスキャンデータを提供することができる。
また、ユーザ設定により、設定解像度A未満のスキャン処理が設定され、原稿向き自動補正に関する設定値がONに設定されている場合において、上述したように、スキャナドライバ30は、解像度Bのスキャン指示の送信,OCR処理の実行等を行うが、スキャン面に関する設定値に応じて、僅かに制御手法が変更される。
具体的には、スキャン面に関する設定値が片面スキャンに設定されている場合において、スキャナドライバ30は、上記手法に従って処理を実行する。一方、スキャン面に関する設定値が両面スキャンに設定されている場合において、スキャナドライバ30は、原稿の一方の面に対して、解像度Bのスキャン処理の実行指示を、原稿の他方の面に対して、設定値に従った解像度のスキャン処理の実行指示を、スキャナ50に送信する。これにより、スキャナ50は、原稿の一方の面に対して、解像度Bのスキャン処理を実行し、原稿の他方の面に対して、設定解像度A未満のスキャン処理を実行する。そして、スキャナ50は、原稿の一方の面の解像度BのスキャンデータD1と、原稿の他方の面の設定解像度A未満のスキャンデータD1とを作成し、PC10に送信する。
PC10では、スキャナドライバ30が、原稿の一方の面のスキャンデータD1と他方の面のスキャンデータD1とを受信し、データ記憶領域34に記憶する。そして、スキャナドライバ30は、原稿の一方の面のスキャンデータに対してのみOCR処理を実行する。つまり、解像度Bのスキャンデータに対してOCR処理を実行し、設定解像度A未満のスキャンデータに対してOCR処理を実行しない。これにより、スキャナドライバ30は、原稿の一方の面の画像に含まれる文字の文字向き情報を取得する。
続いて、スキャナドライバ30は、原稿の一方の面のスキャンデータの解像度を、設定値に応じた解像度に変換する。そして、スキャナドライバ30は、原稿の一方の面のスキャンデータに基づいて取得された文字向き情報を利用して、原稿の一方の面のスキャンデータに基づく画像の回転処理を実行する。これにより、原稿の一方の面のスキャンデータとして、上下方向に反転していない画像のスキャンデータが得られる。また、スキャナドライバ30は、原稿の一方の面のスキャンデータに基づいて取得された文字向き情報を利用して、原稿の他方の面のスキャンデータに基づく画像の回転処理を実行する。これにより、原稿の他方の面のスキャンデータとして、上下方向に反転していない画像のスキャンデータも得られる。そして、スキャナドライバ30は、上下方向に反転していない原稿の一方の面の画像のスキャンデータと、上下方向に反転していない原稿の他方の面の画像のスキャンデータとを、アプリケーション32に出力する。
このように、スキャン面に関する設定値が両面スキャンに設定されている場合において、原稿の一方の面に対してのみ、設定値と異なる解像度のスキャン指示を送信することで、原稿の他方の面に対するOCR処理及び解像度変換処理を実行することなく、原稿の両面の向きを適切に補正することが可能となる。これにより、処理時間の短縮,処理負担の軽減などを図ることが可能となる。
なお、ユーザ設定により、設定解像度A以上のスキャン処理が設定され、原稿向き自動補正に関する設定値がONに設定されている場合には、上述したように、好適にOCR処理を実行し、OCR処理の処理結果を利用して適切に回転処理を実行することができる。このため、スキャナドライバ30は、ユーザ設定に従った解像度のスキャン指示を、スキャナ50に送信すればよい。そして、スキャナドライバ30は、OCR処理および、回転処理を実行すればよい。つまり、スキャナドライバ30は、ユーザ設定に従った解像度のスキャン指示を、スキャナ50に送信するため、解像度変換処理を行う必要はない。
また、第2実施形態でのスキャン処理は、CPU12においてスキャナドライバ30が実行されることによって行われる。以下に、図8乃至図10を用いて、スキャナドライバ30のフローが実行される際の処理を説明する。
まず、スキャナドライバ30は、原稿向き自動補正に関する設定値がONに設定されているか否かを判断する(S200:図8参照)。この際、原稿向き自動補正に関する設定値がOFFに設定されている場合(S200:NO)に、従来処理と同じ処理が実行される(S202)。そして、本フローが終了する。一方、原稿向き自動補正に関する設定値がONに設定されている場合(S200:YES)に、スキャナドライバ30は、設定解像度A未満のスキャン処理が設定されているか否かを判断する(S204)。
この際、設定解像度A未満のスキャン処理が設定されていない場合(S204:NO)に、スキャナドライバ30は、設定値に従った解像度のスキャン指示をスキャナ50に送信する(S206)。次に、スキャナドライバ30は、スキャン指示に応じてスキャン処理を実行したスキャナ50からスキャンデータを取得し(S208)、取得したスキャンデータを、データ記憶領域34に記憶する(S210)。
続いて、スキャナドライバ30は、データ記憶領域34に記憶したスキャンデータに基づいてOCR処理を実行する(S212)。そして、スキャナドライバ30は、OCR処理の処理結果に基づいて、文字向き情報を取得する(S214)。次に、スキャナドライバ30は、取得した文字向き情報を利用して回転処理を実行する(S216)。そして、スキャナドライバ30は、回転処理を実行したスキャンデータをアプリケーション32に出力する(S218)。これにより、本フローが終了する。
また、S204で設定解像度A以上のスキャン処理が設定されている場合(S204:YES)に、スキャナドライバ30は、スキャン面に関する設定値が両面スキャンに設定されているか否かを判断する(S220)。この際、スキャン面に関する設定値が片面スキャンに設定されている場合(S220:NO)に、片面スキャン処理実行サブルーチンが実行される(S222)。
片面スキャン処理実行サブルーチンでは、スキャナドライバ30は、解像度Bのスキャン指示をスキャナ50に送信する(S250:図9参照)。次に、スキャナドライバ30は、スキャン指示に応じてスキャン処理を実行したスキャナ50からスキャンデータを取得し(S252)、取得したスキャンデータを、データ記憶領域34に記憶する(S254)。
続いて、スキャナドライバ30は、データ記憶領域34に記憶したスキャンデータに基づいてOCR処理を実行する(S256)。そして、スキャナドライバ30は、OCR処理の処理結果に基づいて、文字向き情報を取得する(S258)。次に、スキャナドライバ30は、解像度Bのスキャンデータを設定値に従った解像度のスキャンデータに変換する(S260)。続いて、スキャナドライバ30は、文字向き情報を利用して回転処理を実行する(S262)。そして、スキャナドライバ30は、回転処理を実行したスキャンデータをアプリケーション32に出力する(S264)。これにより、片面スキャン処理実行サブルーチンが終了し、本フローも終了する。
また、S220(図8参照)でスキャン面に関する設定値が両面スキャンに設定されている場合(S220:YES)に、両面スキャン処理実行サブルーチンが実行される(S224)。両面スキャン処理実行サブルーチンでは、スキャナドライバ30は、原稿の一方の面に対して解像度Bのスキャン指示を、原稿の他方の面に対して設定値に従った解像度のスャン指示をスキャナ50に送信する(S280:図10参照)。次に、スキャナドライバ30は、スキャン指示に応じてスキャン処理を実行したスキャナ50からスキャンデータを取得し(S282)、取得したスキャンデータを、データ記憶領域34に記憶する(S284)。
続いて、スキャナドライバ30は、原稿の一方の面のスキャンデータに基づいてOCR処理を実行する(S286)。そして、スキャナドライバ30は、OCR処理の処理結果に基づいて、文字向き情報を取得する(S288)。次に、スキャナドライバ30は、原稿の一方の面の解像度Bのスキャンデータを設定値に従った解像度のスキャンデータに変換する(S290)。続いて、スキャナドライバ30は、文字向き情報を利用して、原稿の一方の面のスキャンデータと他方の面のスキャンデータとに基づいて回転処理を実行する(S292)。そして、スキャナドライバ30は、回転処理を実行した原稿の一方の面のスキャンデータと他方の面のスキャンデータとをアプリケーション32に出力する(S294)。これにより、両面スキャン処理実行サブルーチンが終了し、本フローも終了する。
なお、S106を実行するCPU12は、第2指示出力手段の一例である。S112を実行するCPU12は、第3処理実行手段の一例である。S116を実行するCPU12は、第4処理実行手段の一例である。S154、S184を実行するCPU12は、記憶制御手段の一例である。S118、S164、S194を実行するCPU12は、データ出力手段の一例である。S156、S186を実行するCPU12は、第1処理実行手段の一例である。S158を実行するCPU12は、第1取得手段の一例である。S188を実行するCPU12は、第2取得手段の一例である。S160、S190を実行するCPU12は、変換手段の一例である。S162、S192を実行するCPU12は、第2処理実行手段の一例である。S206を実行するCPU12は、第2指示出力手段の一例である。S212を実行するCPU12は、第3処理実行手段の一例である。S216を実行するCPU12は、第4処理実行手段の一例である。S254、S284を実行するCPU12は、記憶制御手段の一例である。S218、S264、S294を実行するCPU12は、データ出力手段の一例である。S256、S286を実行するCPU12は、第1処理実行手段の一例である。S258を実行するCPU12は、第1取得手段の一例である。S288を実行するCPU12は、第2取得手段の一例である。S260、S290を実行するCPU12は、変換手段の一例である。S262、S292を実行するCPU12は、第2処理実行手段の一例である。
また、本発明は、上記実施形態に限定されるものではなく、当業者の知識に基づいて種々の変更、改良を施した種々の態様で実施することが可能である。具体的には、例えば、上記実施形態では、PC10においてスキャン処理の設定値を受け付け、PC10がスキャナ50にスキャン指示を出力しているが、スキャナ50においてスキャン処理の設定値を受け付け、スキャナ50のスキャン指示に従ってスキャナ50がスキャン処理を実行してもよい。
また、上記実施形態では、CPU12によって図5乃至図10に示す処理が実行される例を説明したが、これら処理は、CPU12に限らず、ASICや他の論理集積回路により実行されてもよいし、これら処理が、CPU等やASIC、他の論理集積回路が協働することにより実行されてもよい。
10:PC、12:CPU、18:入力I/F、30:スキャナドライバ、50:スキャナ
Claims (7)
- 操作部と、記憶部とを備える画像処理装置のコンピュータが読み取り可能な制御プログラムであって、
前記コンピュータを、
前記操作部を介して、スキャン処理の設定値を受け付ける受付手段と、
前記受付手段が受け付けた設定値が、疑似中間調のスキャンデータの作成を要求するものであり、かつ、文字認識処理の処理結果を利用する所定の処理の実行を要求するものである場合に、多値のスキャンデータの作成を指示するスキャン指示を出力する第1指示出力手段と、
前記第1指示出力手段によるスキャン指示の出力に応じて取得した多値のスキャンデータを、前記記憶部に記憶させる記憶制御手段と、
前記記憶制御手段により記憶された多値のスキャンデータに基づいて、文字認識処理を実行する第1処理実行手段と、
前記第1処理実行手段による処理が実行された後に、前記記憶制御手段により記憶された多値のスキャンデータを、疑似中間調のスキャンデータに変換する変換手段と、
前記第1処理実行手段による文字認識処理の処理結果を利用して、前記所定の処理を実行する第2処理実行手段と、
前記受付手段が受け付けた設定値が、疑似中間調と異なる種類のスキャンデータの作成を要求するものであり、かつ、前記所定の処理の実行を要求するものである場合に、前記受付手段が受け付けた設定値に従ったスキャンデータの作成を指示するスキャン指示を出力する第2指示出力手段と、
前記第2指示出力手段によるスキャン指示の出力に応じて取得したスキャンデータに基づいて、文字認識処理を実行する第3処理実行手段と、
前記第3処理実行手段による文字認識処理の処理結果を利用して、前記所定の処理を実行する第4処理実行手段と、
前記変換手段による変換と、前記第2処理実行手段による処理の実行とが行われたスキャンデータ、又は、前記第4処理実行手段による処理の実行が行われたスキャンデータを出力するデータ出力手段と、
して機能させることを特徴とする制御プログラム。 - 前記第1指示出力手段は、
多値のスキャンデータとして、グレースケールのスキャンデータの作成を指示することを特徴とする請求項1に記載の制御プログラム。 - 操作部と、記憶部とを備える画像処理装置のコンピュータが読み取り可能な制御プログラムであって、
前記コンピュータを、
前記操作部を介して、スキャン処理の設定値を受け付ける受付手段と、
前記受付手段が受け付けた設定値が、予め設定された設定解像度未満のスキャンデータの作成を要求するものであり、かつ、文字認識処理の処理結果を利用する所定の処理の実行を要求するものである場合に、前記設定解像度以上のスキャンデータの作成を指示するスキャン指示を出力する第1指示出力手段と、
前記第1指示出力手段によるスキャン指示の出力に応じて取得した前記設定解像度以上のスキャンデータを、前記記憶部に記憶させる記憶制御手段と、
前記記憶制御手段により記憶された前記設定解像度以上のスキャンデータに基づいて、文字認識処理を実行する第1処理実行手段と、
前記第1処理実行手段による処理が実行された後に、前記記憶制御手段により記憶された前記設定解像度以上のスキャンデータを、前記受付手段が受け付けた設定値に従った解像度のスキャンデータに変換する変換手段と、
前記第1処理実行手段による文字認識処理の処理結果を利用して、前記所定の処理を実行する第2処理実行手段と、
前記受付手段が受け付けた設定値が、前記設定解像度以上のスキャンデータの作成を要求するものであり、かつ、前記所定の処理の実行を要求するものである場合に、前記受付手段が受け付けた設定値に従ったスキャンデータの作成を指示するスキャン指示を出力する第2指示出力手段と、
前記第2指示出力手段によるスキャン指示の出力に応じて取得したスキャンデータに基づいて、文字認識処理を実行する第3処理実行手段と、
前記第3処理実行手段による文字認識処理の処理結果を利用して、前記所定の処理を実行する第4処理実行手段と、
前記変換手段による変換と、前記第2処理実行手段による処理の実行とが行われたスキャンデータ、又は、前記第4処理実行手段による処理の実行が行われたスキャンデータを出力するデータ出力手段と、
して機能させることを特徴とする制御プログラム。 - 前記コンピュータを、
前記第1処理実行手段による文字認識処理の処理結果として、文字の向きを取得する第1取得手段と、
前記第3処理実行手段による文字認識処理の処理結果として、文字の向きを取得する第2取得手段と、
して機能させ、
前記第2処理実行手段は、
前記第1取得手段により取得された文字向きに基づいて、スキャンデータに基づく画像を回転させる回転処理を、前記所定の処理として実行し、
前記第4処理実行手段は、
前記第2取得手段により取得された文字向きに基づいて、スキャンデータに基づく画像を回転させる回転処理を、前記所定の処理として実行することを特徴とする請求項1乃至3の何れか1項に記載の制御プログラム。 - 前記第1指示出力手段は、
前記受付手段が受け付けた設定値が、さらに、原稿の両面のスキャン処理を要求するものである場合に、前記原稿の第1面に対して、多値のスキャンデータ又は前記設定解像度以上のスキャンデータの作成を指示するスキャン指示を出力し、前記原稿の第2面に対して、前記受付手段が受け付けた設定値に従ったスキャンデータの作成を指示するスキャン指示を出力し、
前記第1処理実行手段と前記第1取得手段と前記変換手段とは、
前記原稿の第1面のスキャンデータに対して各処理を実行し、
前記第2処理実行手段は、
前記第1取得手段により取得された文字向きに基づいて、前記原稿の第1面のスキャンデータに基づく画像と、前記原稿の第2面のスキャンデータに基づく画像とを回転させる回転処理を、前記所定の処理として実行することを特徴とする請求項4に記載の制御プログラム。 - 操作部と、
記憶部と、
制御部と、
を備える画像処理装置であって、
前記制御部を、
前記操作部を介して、スキャン処理の設定値を受け付ける受付手段と、
前記受付手段が受け付けた設定値が、疑似中間調のスキャンデータの作成を要求するものであり、かつ、文字認識処理の処理結果を利用する所定の処理の実行を要求するものである場合に、多値のスキャンデータの作成を指示するスキャン指示を出力する第1指示出力手段と、
前記第1指示出力手段によるスキャン指示の出力に応じて取得した多値のスキャンデータを、前記記憶部に記憶させる記憶制御手段と、
前記記憶制御手段により記憶された多値のスキャンデータに基づいて、文字認識処理を実行する第1処理実行手段と、
前記第1処理実行手段による処理が実行された後に、前記記憶制御手段により記憶された多値のスキャンデータを、疑似中間調のスキャンデータに変換する変換手段と、
前記第1処理実行手段による文字認識処理の処理結果を利用して、前記所定の処理を実行する第2処理実行手段と、
前記受付手段が受け付けた設定値が、疑似中間調と異なる種類のスキャンデータの作成を要求するものであり、かつ、前記所定の処理の実行を要求するものである場合に、前記受付手段が受け付けた設定値に従ったスキャンデータの作成を指示するスキャン指示を出力する第2指示出力手段と、
前記第2指示出力手段によるスキャン指示の出力に応じて取得したスキャンデータに基づいて、文字認識処理を実行する第3処理実行手段と、
前記第3処理実行手段による文字認識処理の処理結果を利用して、前記所定の処理を実行する第4処理実行手段と、
前記変換手段による変換と、前記第2処理実行手段による処理の実行とが行われたスキャンデータ、又は、前記第4処理実行手段による処理の実行が行われたスキャンデータを出力するデータ出力手段と、
して機能させることを特徴とする画像処理装置。 - 操作部と、
記憶部と、
制御部と、
を備える画像処理装置であって、
前記制御部を、
前記操作部を介して、スキャン処理の設定値を受け付ける受付手段と、
前記受付手段が受け付けた設定値が、予め設定された設定解像度未満のスキャンデータの作成を要求するものであり、かつ、文字認識処理の処理結果を利用する所定の処理の実行を要求するものである場合に、前記設定解像度以上のスキャンデータの作成を指示するスキャン指示を出力する第1指示出力手段と、
前記第1指示出力手段によるスキャン指示の出力に応じて取得した前記設定解像度以上のスキャンデータを、前記記憶部に記憶させる記憶制御手段と、
前記記憶制御手段により記憶された前記設定解像度以上のスキャンデータに基づいて、文字認識処理を実行する第1処理実行手段と、
前記第1処理実行手段による処理が実行された後に、前記記憶制御手段により記憶された前記設定解像度以上のスキャンデータを、前記受付手段が受け付けた設定値に従った解像度のスキャンデータに変換する変換手段と、
前記第1処理実行手段による文字認識処理の処理結果を利用して、前記所定の処理を実行する第2処理実行手段と、
前記受付手段が受け付けた設定値が、前記設定解像度以上のスキャンデータの作成を要求するものであり、かつ、前記所定の処理の実行を要求するものである場合に、前記受付手段が受け付けた設定値に従ったスキャンデータの作成を指示するスキャン指示を出力する第2指示出力手段と、
前記第2指示出力手段によるスキャン指示の出力に応じて取得したスキャンデータに基づいて、文字認識処理を実行する第3処理実行手段と、
前記第3処理実行手段による文字認識処理の処理結果を利用して、前記所定の処理を実行する第4処理実行手段と、
前記変換手段による変換と、前記第2処理実行手段による処理の実行とが行われたスキャンデータ、又は、前記第4処理実行手段による処理の実行が行われたスキャンデータを出力するデータ出力手段と、
して機能させることを特徴とする画像処理装置。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018023825A JP7031346B2 (ja) | 2018-02-14 | 2018-02-14 | 制御プログラム及び画像処理装置 |
US16/261,964 US10805481B2 (en) | 2018-02-14 | 2019-01-30 | Image processing apparatus receiving setting values for scan process and outputting scan data |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018023825A JP7031346B2 (ja) | 2018-02-14 | 2018-02-14 | 制御プログラム及び画像処理装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2019139619A JP2019139619A (ja) | 2019-08-22 |
JP7031346B2 true JP7031346B2 (ja) | 2022-03-08 |
Family
ID=67541245
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2018023825A Active JP7031346B2 (ja) | 2018-02-14 | 2018-02-14 | 制御プログラム及び画像処理装置 |
Country Status (2)
Country | Link |
---|---|
US (1) | US10805481B2 (ja) |
JP (1) | JP7031346B2 (ja) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004234261A (ja) | 2003-01-29 | 2004-08-19 | Ricoh Co Ltd | 画像読取装置 |
JP2017152957A (ja) | 2016-02-25 | 2017-08-31 | ブラザー工業株式会社 | 画像処理装置、コンピュータプログラム、および、システム |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000022945A (ja) | 1998-07-01 | 2000-01-21 | Canon Inc | 画像処理装置及び画像処理方法 |
WO2004015984A1 (ja) * | 2002-08-08 | 2004-02-19 | Ricoh Company, Limited | 画像データ処理装置、画像データ処理方法、プログラム、記録媒体および画像読取装置 |
JP4134303B2 (ja) * | 2002-08-08 | 2008-08-20 | 株式会社リコー | 画像データ処理装置、画像データ処理方法、ならびにプログラム及び記録媒体 |
JP5121595B2 (ja) * | 2008-06-10 | 2013-01-16 | キヤノン株式会社 | 画像処理装置、画像処理装置の制御方法、記憶媒体及びプログラム |
JP6769136B2 (ja) * | 2016-06-28 | 2020-10-14 | ブラザー工業株式会社 | プログラム及び携帯端末 |
JP6740752B2 (ja) * | 2016-06-30 | 2020-08-19 | ブラザー工業株式会社 | 読取制御プログラム、情報処理装置および画像読取システム |
-
2018
- 2018-02-14 JP JP2018023825A patent/JP7031346B2/ja active Active
-
2019
- 2019-01-30 US US16/261,964 patent/US10805481B2/en active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004234261A (ja) | 2003-01-29 | 2004-08-19 | Ricoh Co Ltd | 画像読取装置 |
JP2017152957A (ja) | 2016-02-25 | 2017-08-31 | ブラザー工業株式会社 | 画像処理装置、コンピュータプログラム、および、システム |
Also Published As
Publication number | Publication date |
---|---|
JP2019139619A (ja) | 2019-08-22 |
US10805481B2 (en) | 2020-10-13 |
US20190253571A1 (en) | 2019-08-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5220828B2 (ja) | 画像処理装置、画像形成装置、画像読取装置、画像処理方法、プログラム及び記録媒体 | |
JP7005314B2 (ja) | 画像処理装置、画像処理方法、及びプログラム | |
JP2018074497A (ja) | 画像処理装置、画像処理方法およびプログラム | |
JP7031346B2 (ja) | 制御プログラム及び画像処理装置 | |
JP2020067959A (ja) | 画像処理装置、その制御方法及びプログラム | |
JP4442651B2 (ja) | 画像処理装置およびプログラム | |
JP4559303B2 (ja) | 画像処理装置、画像処理方法および画像処理用プログラム | |
US20230196711A1 (en) | Image forming apparatus, image forming method, and non-transitory computer-readable recording medium | |
KR101037457B1 (ko) | 화상 처리 장치, 화상 처리 방법, 및 기억 매체 | |
JP6882043B2 (ja) | 画像処理装置、プログラム及び画像処理方法 | |
JP5873400B2 (ja) | 画像処理装置 | |
JP7031366B2 (ja) | 制御プログラム及び画像処理装置 | |
JP2000013600A (ja) | 画像処理装置及びその方法 | |
JP2009260923A (ja) | 画像処理装置、画像処理方法、および画像処理プログラム | |
JP6985943B2 (ja) | 画像処理装置及びその制御方法とプログラム | |
JP2004282344A (ja) | 画像処理方法 | |
JP7185451B2 (ja) | 画像処理装置と画像処理方法、及びプログラム | |
US10440224B2 (en) | Transmitting command for scanner to generate scan data and processing data to determine size of original | |
JP5090969B2 (ja) | 画像処理装置 | |
JP2006033643A (ja) | 画像処理装置、画像形成装置、画像処理方法及びコンピュータプログラム | |
JP5018739B2 (ja) | 画像処理装置、画像処理方法及び画像処理プログラム | |
JP2006081123A (ja) | 画像情報装置及び画像転送方法 | |
JP2022141319A (ja) | 画像処理装置、画像処理装置の制御方法、及びプログラム | |
JP2023157146A (ja) | プリンタ、及びプログラム | |
JP6413783B2 (ja) | 印刷指示装置、印刷システムおよびプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20210115 |
|
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: 20220125 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20220207 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7031346 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |