JP6874606B2 - Control programs, information processing equipment, and scanning systems - Google Patents

Control programs, information processing equipment, and scanning systems Download PDF

Info

Publication number
JP6874606B2
JP6874606B2 JP2017166934A JP2017166934A JP6874606B2 JP 6874606 B2 JP6874606 B2 JP 6874606B2 JP 2017166934 A JP2017166934 A JP 2017166934A JP 2017166934 A JP2017166934 A JP 2017166934A JP 6874606 B2 JP6874606 B2 JP 6874606B2
Authority
JP
Japan
Prior art keywords
image processing
scan data
processing
executed
executing
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
Application number
JP2017166934A
Other languages
Japanese (ja)
Other versions
JP2019047253A (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.)
Brother Industries Ltd
Original Assignee
Brother Industries Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Brother Industries Ltd filed Critical Brother Industries Ltd
Priority to JP2017166934A priority Critical patent/JP6874606B2/en
Publication of JP2019047253A publication Critical patent/JP2019047253A/en
Application granted granted Critical
Publication of JP6874606B2 publication Critical patent/JP6874606B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Facsimiles In General (AREA)

Description

本発明は、原稿から読み取ったスキャンデータを処理する制御プログラム等に関する。 The present invention relates to a control program or the like that processes scan data read from a document.

下記特許文献には、原稿を読み取ってスキャンデータを作成するスキャナ装置と、該スキャナ装置からスキャンデータを取得して所定の画像処理を施す画像処理サーバと、を有する画像処理システムについて記載されている。画像処理サーバは、スキャンデータに含まれるバーコードデータを検出する。画像処理サーバは、バーコードデータの検出前に、黒強調や白強調を行うためのパラメータに基づいて階調変換を行う。 The following patent documents describe an image processing system having a scanner device that reads a document and creates scan data, and an image processing server that acquires scan data from the scanner device and performs predetermined image processing. .. The image processing server detects the barcode data included in the scan data. The image processing server performs gradation conversion based on parameters for black enhancement and white enhancement before detecting barcode data.

特開2011−96095号公報Japanese Unexamined Patent Publication No. 2011-96095

上記特許文献に記載の技術によれば、バーコードデータの検出前に階調変換を行うことで、バーコードデータの検出精度を向上させることが可能である。しかしながら、スキャンデータに対して実行可能な処理には、様々な種類があり、バーコードデータの検出処理前に実行すべき処理や、逆に、検出処理前に実行すべきでない処理もある。そこで、各種の処理の実行タイミングを設定することで、バーコードデータの検出処理を適切に実行することを課題とする。 According to the technique described in the above patent document, it is possible to improve the detection accuracy of the barcode data by performing the gradation conversion before the detection of the barcode data. However, there are various types of processes that can be executed for scan data, and some processes should be executed before the barcode data detection process, and conversely, some processes should not be executed before the detection process. Therefore, it is an object to appropriately execute the barcode data detection process by setting the execution timing of various processes.

上記課題を解決するために、実施例に開示する制御プログラムは、ユーザインタフェースを備えた情報処理装置のコンピュータが読み取り可能な制御プログラムであって、前記コンピュータを、前記ユーザインタフェースを介して第1操作入力を受け付ける第1受付手段と、前記第1受付手段が受け付けた前記第1操作入力に基づいて、複数の画像処理のうちから、対象画像処理を特定する第1特定手段と、スキャンデータを取得する第1取得手段と、前記第1取得手段により取得された前記スキャンデータに、第1画像処理を実行する第1実行手段として機能させ、前記第1画像処理は、前記複数の画像処理のうち、予め定められた第1群の画像処理であり、前記コンピュータを、前記第1実行手段により前記第1画像処理が実行された前記スキャンデータから、バーコードを示す画像データであるバーコードデータを検出する検出手段と、前記第1取得手段により取得された前記スキャンデータに基づいて、第2画像処理を実行する第2実行手段として機能させ、前記第2画像処理は、前記第1特定手段が特定した前記対象画像処理に含まれる画像処理であり、前記コンピュータを、前記検出手段により検出された前記バーコードデータと、前記第2実行手段により前記第2画像処理が実行された前記スキャンデータとを出力する出力手段と、して機能させることを特徴とする。 In order to solve the above problems, the control program disclosed in the embodiment is a control program that can be read by a computer of an information processing apparatus provided with a user interface, and the computer is first operated via the user interface. Based on the first receiving means that accepts the input and the first operation input received by the first receiving means, the first specific means for specifying the target image processing and the scan data are acquired from the plurality of image processes. The first acquisition means and the scan data acquired by the first acquisition means are made to function as the first execution means for executing the first image processing, and the first image processing is performed among the plurality of image processes. , The first group of image processing determined in advance, and the computer is used to obtain bar code data, which is image data indicating a bar code, from the scan data in which the first image processing is executed by the first executing means. Based on the detection means to be detected and the scan data acquired by the first acquisition means, it functions as a second execution means for executing the second image processing, and the second image processing is performed by the first specific means. The image processing included in the specified target image processing, the bar code data detected by the detection means and the scan data in which the second image processing is executed by the second execution means on the computer. It is characterized in that it functions as an output means for outputting.

実施例に開示の制御プログラムにより、複数の画像処理のうち、予め設定された第1群の画像処理をバーコードデータの検出処理前に実行する。このため、第1群の画像処理として、バーコードデータの検出精度を上げる処理など、検出処理に有益な処理を事前に実行することができる。 According to the control program disclosed in the embodiment, the preset first group of image processing among the plurality of image processing is executed before the barcode data detection processing. Therefore, as the image processing of the first group, it is possible to execute in advance processing useful for the detection processing, such as a processing for improving the detection accuracy of the barcode data.

スキャンシステム1のブロック図である。It is a block diagram of the scan system 1. 画像の読み取りの作動状態を示すシーケンス図である。It is a sequence diagram which shows the operation state of image reading. 画像の読み取りの作動状態を示すシーケンス図である。It is a sequence diagram which shows the operation state of image reading. 画像の読み取りの処理の流れを示す図である。It is a figure which shows the flow of the process of reading an image. バーコードの検出を設定するための設定画面81を示す図である。It is a figure which shows the setting screen 81 for setting the bar code detection. 画像処理を選択する選択画面91を示す図である。It is a figure which shows the selection screen 91 which selects image processing. 検出精度として「早い」を設定した場合のドライバ画像処理モジュール28Eによる画像処理を示すフローチャートである。It is a flowchart which shows the image processing by the driver image processing module 28E when "fast" is set as a detection accuracy. 検出精度として「高精度」を設定した場合のドライバ画像処理モジュール28Eによる画像処理を示すフローチャートである。It is a flowchart which shows the image processing by the driver image processing module 28E when "high accuracy" is set as a detection accuracy. 検出精度として「普通」を設定した場合のドライバ画像処理モジュール28Eによる画像処理を示すフローチャートである。It is a flowchart which shows the image processing by the driver image processing module 28E when "normal" is set as a detection accuracy.

<スキャンシステムの構成>
図1に、本願に係る実施形態として例示されるスキャンシステム1のブロック図を示す。スキャンシステム1は、PC(本発明の情報処理装置の一例)10、スキャナ(本発明の情報処理装置の一例)50、ルータ56を備える。
<Scan system configuration>
FIG. 1 shows a block diagram of a scan system 1 exemplified as an embodiment according to the present application. The scan system 1 includes a PC (an example of the information processing device of the present invention) 10, a scanner (an example of the information processing device of the present invention) 50, and a router 56.

PC10は、CPU(本発明のコンピュータ及びコントローラの一例)12、メモリ14、LCD(本発明のユーザインタフェースの一例)16、入力インタフェース(本発明のユーザインタフェースの一例)18、ネットワークインタフェース20を主に備えている。これらの構成要素は、バス22を介して互いに通信可能とされている。なお、「インタフェース」は、「I/F」と記載しても良い。 The PC 10 mainly includes a CPU (an example of a computer and a controller of the present invention) 12, a memory 14, an LCD (an example of the user interface of the present invention) 16, an input interface (an example of the user interface of the present invention) 18, and a network interface 20. I have. These components are made communicable with each other via the bus 22. The "interface" may be described as "I / F".

CPU12は、メモリ14内のアプリケーションプログラム26、スキャナドライバ(本発明の制御プログラムの一例)28、オペレーティングシステム(以下、「OS」と略す)32に従って処理を実行する。アプリケーションプログラム26は、例えば、スキャナ50でスキャンされたスキャンデータD1に対して、公知のOCR技術で利用される文字認識処理を実行するためのプログラムであり、具体的には、Adobe Photoshop(登録商標)などの画像編集ソフトである。 The CPU 12 executes processing according to the application program 26 in the memory 14, the scanner driver (an example of the control program of the present invention) 28, and the operating system (hereinafter abbreviated as “OS”) 32. The application program 26 is, for example, a program for executing character recognition processing used in a known OCR technique on the scan data D1 scanned by the scanner 50. Specifically, the application program 26 is a registered trademark of Adobe Photoshop. ) And other image editing software.

また、スキャナドライバ28は、スキャナ50のデバイスドライバであり、スキャナ50の作動を制御する。スキャナドライバ28は、DSM28A、ドライバメイン処理モジュール28B、ドライバUIモジュール28D、ドライバ画像処理モジュール28Eを有している。DSM28Aは、データソースマネージャーであり、TWAIN規格に準拠した通信を行うスキャナドライバ28において、アプリケーションプログラム26とのデータの入出力を行うインタフェースとして機能するプログラムである。なお、上記したスキャナドライバ28の構成は一例であり、スキャナドライバ28の種類等に応じて適宜変更される。例えば、スキャナドライバ28がTWAIN規格以外(例えば、WIA規格)のドライバである場合、スキャナドライバ28は、DSM28Aを備えなくとも良い。この場合、後述するDSM28Aが行う処理は、OS32が代わりに実行しても良い。 Further, the scanner driver 28 is a device driver of the scanner 50 and controls the operation of the scanner 50. The scanner driver 28 includes a DSM 28A, a driver main processing module 28B, a driver UI module 28D, and a driver image processing module 28E. The DSM 28A is a data source manager, and is a program that functions as an interface for inputting / outputting data to / from the application program 26 in the scanner driver 28 that performs communication conforming to the TWAIN standard. The configuration of the scanner driver 28 described above is an example, and is appropriately changed according to the type of the scanner driver 28 and the like. For example, when the scanner driver 28 is a driver other than the TWAIN standard (for example, the WIA standard), the scanner driver 28 does not have to include the DSM 28A. In this case, the processing performed by the DSM 28A, which will be described later, may be executed by the OS 32 instead.

ドライバメイン処理モジュール28B、ドライバUIモジュール28D、ドライバ画像処理モジュール28Eは、スキャナドライバ28に含まれる処理モジュールであり、各種の処理を実行する。ドライバメイン処理モジュール28Bは、スキャナ50とのデータの送受信や、スキャナ50に対する命令を実行する。ドライバUIモジュール28Dは、設定画面の表示等を行う。ドライバ画像処理モジュール28Eは、スキャンデータD1に対する画像処理を実行する。 The driver main processing module 28B, the driver UI module 28D, and the driver image processing module 28E are processing modules included in the scanner driver 28, and execute various processes. The driver main processing module 28B transmits / receives data to / from the scanner 50 and executes instructions to the scanner 50. The driver UI module 28D displays a setting screen and the like. The driver image processing module 28E executes image processing on the scan data D1.

また、OS32は、アプリケーションプログラム26、スキャナドライバ28に利用される基本的な機能を提供するプログラムである。なお、以下の説明では、アプリケーションプログラム26等を実行するCPU12のことを、単にプログラム名でも記載する場合がある。例えば、「アプリケーションプログラム26が」という記載は、「アプリケーションプログラム26を実行するCPU12が」ということを意味する場合がある。 The OS 32 is a program that provides basic functions used by the application program 26 and the scanner driver 28. In the following description, the CPU 12 that executes the application program 26 and the like may be simply described by the program name. For example, the description "application program 26" may mean "the CPU 12 that executes the application program 26".

また、メモリ14は、データ記憶領域34を備える。データ記憶領域34は、アプリケーションプログラム26等の実行に必要なデータなどを記憶する領域である。なお、メモリ14は、RAM、ROM、フラッシュメモリ、HDDの略)、CPU12が備えるバッファなどが組み合わされて構成されている。 Further, the memory 14 includes a data storage area 34. The data storage area 34 is an area for storing data and the like necessary for executing the application program 26 and the like. The memory 14 is configured by combining a RAM, a ROM, a flash memory, an abbreviation for HDD), a buffer included in the CPU 12, and the like.

メモリ14は、コンピュータが読み取り可能なストレージ媒体であってもよい。コンピュータが読み取り可能なストレージ媒体とは、non−transitoryな媒体である。non−transitoryな媒体には、上記の例の他に、CD−ROM、DVD−ROM等の記録媒体も含まれる。また、non−transitoryな媒体は、tangibleな媒体でもある。一方、インターネット上のサーバなどからダウンロードされるプログラムを搬送する電気信号は、コンピュータが読み取り可能な媒体の一種であるコンピュータが読み取り可能な信号媒体であるが、non−transitoryなコンピュータが読み取り可能なストレージ媒体には含まれない。後述するスキャナ50のメモリ54についても同様である。 The memory 14 may be a computer-readable storage medium. A computer-readable storage medium is a non-transitory medium. In addition to the above examples, the non-transitory medium also includes a recording medium such as a CD-ROM or a DVD-ROM. The non-transitory medium is also a tangible medium. On the other hand, the electric signal that carries a program downloaded from a server on the Internet is a computer-readable signal medium, which is a kind of computer-readable medium, but is a storage that can be read by a non-transitory computer. Not included in the medium. The same applies to the memory 54 of the scanner 50, which will be described later.

LCD16は、PC10の各種機能を表示する。入力I/F18は、キーボード,マウス等を含み、ユーザ操作を入力するためのインタフェースである。ネットワークI/F20は、ルータ56を介して、スキャナ50のネットワークインタフェース51に接続されている。これにより、PC10はスキャナ50との間で情報の送受信を行う。 The LCD 16 displays various functions of the PC 10. The input I / F18 includes a keyboard, a mouse, and the like, and is an interface for inputting user operations. The network I / F 20 is connected to the network interface 51 of the scanner 50 via the router 56. As a result, the PC 10 transmits / receives information to / from the scanner 50.

スキャナ50は、原稿に印刷された画像などを読み取ってスキャンデータD1を生成する装置であり、上記したネットワークI/F51の他に、CPU52、メモリ54、読取インタフェース55、入力インタフェース57、LCD58等を備えている。これらの構成要素は、バス59を介して互いに通信可能とされている。 The scanner 50 is a device that reads an image printed on a document and generates scan data D1. In addition to the network I / F51 described above, the scanner 50 includes a CPU 52, a memory 54, a reading interface 55, an input interface 57, an LCD 58, and the like. I have. These components are made communicable with each other via the bus 59.

CPU52は、メモリ54内のプログラム61に従って処理を実行する。メモリ54は、RAM、ROMなどが組み合わされて構成されている。また、メモリ54は、データ記憶領域54Aを備える。データ記憶領域54Aは、プログラム61の実行に必要なデータなどを記憶する領域である。 The CPU 52 executes the process according to the program 61 in the memory 54. The memory 54 is configured by combining RAM, ROM, and the like. Further, the memory 54 includes a data storage area 54A. The data storage area 54A is an area for storing data and the like necessary for executing the program 61.

プログラム61は、スキャナ50を統括的に制御するプログラムであり、デバイスメイン処理モジュール65、デバイス画像処理モジュール66を有する。スキャナ50は、PC10によって制御され、読み取ったスキャンデータD1をPC10へ送信する。CPU52は、デバイスメイン処理モジュール65やデバイス画像処理モジュール66に従って、スキャンデータD1の生成処理やスキャンデータD1に対する画像処理を実行する。デバイスメイン処理モジュール65やデバイス画像処理モジュール66の詳細については後述する。読取I/F55は、例えば、CCDやCISなどの画像を読み取るデバイスである。入力I/F57は、液晶ディスプレイや各種スイッチ等を含み、ユーザ操作を入力するためのインタフェースである。LCD58は、スキャナ50の各種機能を表示する。 The program 61 is a program that controls the scanner 50 in an integrated manner, and includes a device main processing module 65 and a device image processing module 66. The scanner 50 is controlled by the PC 10 and transmits the read scan data D1 to the PC 10. The CPU 52 executes the generation processing of the scan data D1 and the image processing on the scan data D1 according to the device main processing module 65 and the device image processing module 66. Details of the device main processing module 65 and the device image processing module 66 will be described later. The reading I / F55 is, for example, a device that reads an image such as a CCD or CIS. The input I / F 57 includes a liquid crystal display, various switches, and the like, and is an interface for inputting user operations. The LCD 58 displays various functions of the scanner 50.

<画像の読み取りの作動シーケンス>
次に、ユーザがPC10を操作してスキャナ50によって画像の読み取りを行った場合のスキャンシステム1の作動シーケンスについて説明する。図2、図3は、画像読み取りの作動シーケンスの一例を示している。
<Image reading operation sequence>
Next, the operation sequence of the scanning system 1 when the user operates the PC 10 to read the image by the scanner 50 will be described. 2 and 3 show an example of an operation sequence of image reading.

本明細書のシーケンスチャートは、基本的に、プログラムに記述された命令に従ったCPU12、52の処理を示す。すなわち、以下の説明における「判断」、「抽出」、「選択」、「算出」、「決定」、「特定」、「取得」、「受付」、「制御」「設定」等の処理は、CPU12、52の処理を表している。CPU12による処理は、OS32を介したハードウェア制御も含む。なお、「取得」は要求を必須とはしない概念で用いる。すなわち、CPU12が要求することなくデータを受信するという処理も、「CPU12がデータを取得する」という概念に含まれる。また、本明細書中の「データ」とは、コンピュータに読取可能なビット列で表される。そして、実質的な意味内容が同じでフォーマットが異なるデータは、同一のデータとして扱われるものとする。本明細書中の「情報」についても同様である。また、「命令」「応答」「要求」等の処理は、「命令」「応答」「要求」等を示す情報を通信することにより行われる。また、「命令」「応答」「要求」等の文言を、「命令」「応答」「要求」等を示す情報そのものという意味で記載してもよい。 The sequence chart of the present specification basically shows the processing of the CPUs 12 and 52 according to the instructions described in the program. That is, the processes such as "judgment", "extraction", "selection", "calculation", "decision", "specification", "acquisition", "acceptance", "control", and "setting" in the following description are performed by the CPU12. , 52 represents the process. The processing by the CPU 12 also includes hardware control via the OS 32. Note that "acquisition" is used in a concept that does not require a request. That is, the process of receiving the data without the CPU 12 requesting is also included in the concept of "the CPU 12 acquires the data". Further, the "data" in the present specification is represented by a bit string that can be read by a computer. Then, data having the same substantial meaning and contents but different formats are treated as the same data. The same applies to "information" in the present specification. Further, processing such as "command", "response", and "request" is performed by communicating information indicating "command", "response", "request", and the like. In addition, words such as "command", "response", and "request" may be described in the sense of information itself indicating "command", "response", "request", and the like.

まず、PC10の入力インタフェース18を介した操作入力に従って、アプリケーションプログラム26が起動する(S101)。アプリケーションプログラム26は、スキャナドライバ28のDSM28Aを介してドライバメイン処理モジュール28Bに対しスキャナ50との接続を命令する(S103,S105)。ドライバメイン処理モジュール28Bは、ルータ56を介してスキャナ50への接続要求を送信する(S107)。 First, the application program 26 is started according to the operation input via the input interface 18 of the PC 10 (S101). The application program 26 instructs the driver main processing module 28B to connect to the scanner 50 via the DSM 28A of the scanner driver 28 (S103, S105). The driver main processing module 28B transmits a connection request to the scanner 50 via the router 56 (S107).

スキャナ50のデバイスメイン処理モジュール65は、PC10のドライバメイン処理モジュール28Bから接続要求を受信すると、接続を確立するための応答をする(S109)。これにより、PC10とスキャナ50との通信が確立される。ドライバメイン処理モジュール28Bは、デバイスメイン処理モジュール65との通信が確立すると、デバイスメイン処理モジュール65に対してデバイス能力値の要求を送信する(S111)。 When the device main processing module 65 of the scanner 50 receives the connection request from the driver main processing module 28B of the PC 10, it responds to establish the connection (S109). As a result, communication between the PC 10 and the scanner 50 is established. When the communication with the device main processing module 65 is established, the driver main processing module 28B transmits a request for the device capacity value to the device main processing module 65 (S111).

ここでいうデバイス能力値は、スキャナ50で実行可能な複数の処理の各々を示す値であり、例えば、原稿サイズに関する能力値である。原稿サイズに関する情報は、スキャナ50で読み取り可能な原稿サイズに関する情報及び、読取対象の原稿サイズをユーザ操作により指定することなく、当該原稿のサイズを自動的に検知する処理(以下、「原稿検知処理」と記載する)を実行可能であるかを示す情報である。 The device capacity value referred to here is a value indicating each of a plurality of processes that can be executed by the scanner 50, and is, for example, a capacity value related to the document size. The information on the original size is a process of automatically detecting the size of the original without specifying the information on the original size that can be read by the scanner 50 and the size of the original to be read by the user operation (hereinafter, "original detection process"). It is information indicating whether or not it is feasible.

また、例えば、デバイス能力値は、スキャナが作成可能なスキャンデータの色のスケールに関する能力値を含んでよい。色のスケールは、例えば、ビットマップ画像データにおける1ピクセルに対して設定可能な色数を示す値であり、24bit(166777216色)のカラースケール,8bit(256色)のグレースケール,1bit(2色:白と黒)のモノクロスケール等である。色のスケールのことを色深度ともいう。そして、色のスケールに関する能力値は、スキャナが作成するスキャンデータの色のスケールを示すパラメータとして設定可能な値を示す情報、スキャナがスキャン原稿に含まれる色数を自動的に検知する処理(以下、「スケール検知処理」と記載する)(本発明の特性情報取得処理の一例)を実行可能であるかを示す情報、及び、検知した色数に適した色のスケールを自動的に決定する処理を実行可能であるかを示す情報を含んでよい。 Also, for example, the device ability score may include an ability score relating to the color scale of the scan data that the scanner can create. The color scale is, for example, a value indicating the number of colors that can be set for one pixel in the bitmap image data, and is a color scale of 24 bits (166777216 colors), a gray scale of 8 bits (256 colors), and 1 bit (2 colors). : White and black) monochrome scale, etc. The color scale is also called color depth. The ability value related to the color scale is information indicating a value that can be set as a parameter indicating the color scale of the scan data created by the scanner, and a process in which the scanner automatically detects the number of colors contained in the scanned document (hereinafter,). , Described as "scale detection process") (an example of the characteristic information acquisition process of the present invention), and a process for automatically determining a color scale suitable for the number of detected colors. May contain information indicating whether is feasible.

また、例えば、デバイス能力値は、白原稿の検知処理に関する能力値を含んでよい。原稿が読み取られる際に、白紙の原稿、つまり、白原稿が読み取られる場合がある。白原稿の検知処理に関する能力値は、原稿の読み取りにより作成されたスキャンデータが、白原稿のスキャンデータを含むか否かを検知する処理(以下、「白紙検知処理」と記載する)(本発明の特性情報取得処理の一例)を実行可能であるかを示す情報を含んでよい。なお、スキャナ50は、原稿検知処理,スケール検知処理,白紙検知処理の何れも実行可能である。 Further, for example, the device ability value may include the ability value related to the detection process of the white document. When the original is read, a blank original, that is, a white original may be read. The ability value related to the white document detection process is a process of detecting whether or not the scan data created by scanning the document contains the scan data of the white document (hereinafter, referred to as "blank page detection process") (the present invention). Information indicating whether or not the characteristic information acquisition process) can be executed may be included. The scanner 50 can execute any of the document detection process, the scale detection process, and the blank page detection process.

デバイスメイン処理モジュール65は、ドライバメイン処理モジュール28Bからデバイス能力値の要求を受信すると、自身のデバイス能力値を示す値を送信する(S113)。ドライバメイン処理モジュール28Bは、デバイスメイン処理モジュール65からデバイス能力値を受信すると、スキャナドライバ28のドライバUIモジュール28Dに対して設定画面の表示を命令する(S115)。この設定画面は、デバイスメイン処理モジュール65から受信したデバイス能力値に基づいて表示されるものであり、画像の読み取りにおいてスキャナ50で実行可能な処理に対する設定を受け付けるものである。 When the device main processing module 65 receives the request for the device capacity value from the driver main processing module 28B, the device main processing module 65 transmits a value indicating its own device capacity value (S113). When the driver main processing module 28B receives the device capability value from the device main processing module 65, the driver main processing module 28B instructs the driver UI module 28D of the scanner driver 28 to display the setting screen (S115). This setting screen is displayed based on the device capability value received from the device main processing module 65, and accepts settings for processing that can be executed by the scanner 50 in reading an image.

具体的には、原稿検知処理を実行するか否かを指示する設定操作、及び、原稿サイズを指示する設定操作に従ってパラメータを受け付けるための設定画面が、原稿サイズに関する能力値に基づいて表示される。また、スケール検知処理を実行するか否かを指示する設定操作、及び、色のスケールを指示する設定操作に従ってパラメータを受け付けるための設定画面が、色のスケールに関する能力値に基づいて表示される。また、白紙検知処理を実行するか否かを指示する設定操作に従ってパラメータを受け付けるための設定画面が、白原稿の検知処理に関する能力値に基づいて表示される。 Specifically, a setting operation for instructing whether or not to execute the document detection process and a setting screen for accepting parameters according to the setting operation for instructing the document size are displayed based on the ability value related to the document size. .. In addition, a setting operation for instructing whether or not to execute the scale detection process and a setting screen for accepting parameters according to the setting operation for instructing the color scale are displayed based on the ability value related to the color scale. In addition, a setting screen for accepting parameters according to a setting operation for instructing whether or not to execute the blank page detection process is displayed based on the ability value related to the white document detection process.

ドライバUIモジュール28Dは、ドライバメイン処理モジュール28Bからの命令に応じて、PC10のLCD16に設定画面を表示する(S117)。ドライバUIモジュール28Dは、表示された設定画面の「OK」ボタンが操作されると、「OK」ボタンが操作されるまでの、ユーザによる、入力インタフェース18を介した設定操作に従って、画像の読み取りにおける設定値(以下、「スキャンパラメータ」という場合がある)(本発明の設定パラメータの一例)をメモリ14に記憶させる(本発明の受付手段の一例)。CPU12が設定操作に従ってパラメータをメモリ14に記憶することを「パラメータを受け付ける」もしくは「パラメータを設定する」と記載してもよい。LCD16に表示された設定画面のボタンを押下する操作は、設定操作の一例である。スキャンパラメータは設定操作によって直接的に指示されるパラメータであってもよい。例えば、解像度「600dpi」を指示する設定操作に従って、解像度「600dpi」というパラメータをメモリ14に記憶させてもよい。スキャンパラメータは、設定操作によって間接的に指示されるパラメータであってもよい。例えば、「高品質」を指示する設定操作に従って、解像度「600dpi」というパラメータをメモリ14に記憶させてもよい。また、後述するように、スキャンパラメータを受け付ける方法は、LCD16に表示した設定画面を用いた方法に限らず、例えば、スキャンパラメータを記載した設定ファイルを読み込む方法でも良い。 The driver UI module 28D displays a setting screen on the LCD 16 of the PC 10 in response to a command from the driver main processing module 28B (S117). When the "OK" button on the displayed setting screen is operated, the driver UI module 28D reads an image according to a setting operation by the user via the input interface 18 until the "OK" button is operated. The set value (hereinafter, may be referred to as “scan parameter”) (an example of the setting parameter of the present invention) is stored in the memory 14 (an example of the receiving means of the present invention). The fact that the CPU 12 stores the parameters in the memory 14 according to the setting operation may be described as "accepting the parameters" or "setting the parameters". The operation of pressing the button on the setting screen displayed on the LCD 16 is an example of the setting operation. The scan parameter may be a parameter directly instructed by the setting operation. For example, the parameter of the resolution "600 dpi" may be stored in the memory 14 according to the setting operation for instructing the resolution "600 dpi". The scan parameter may be a parameter indirectly instructed by the setting operation. For example, a parameter having a resolution of "600 dpi" may be stored in the memory 14 according to a setting operation instructing "high quality". Further, as will be described later, the method of accepting scan parameters is not limited to the method using the setting screen displayed on the LCD 16, and for example, a method of reading a setting file in which scan parameters are described may be used.

なお、スキャンパラメータは、原稿サイズに関するパラメータとして、原稿検知処理の実行の有無を示すパラメータ,ユーザ操作により原稿サイズが設定された場合に設定された原稿サイズを示すパラメータを含む。また、スキャンパラメータは、色のスケールに関するパラメータとして、スケール検知処理の実行の有無を示すパラメータ,ユーザ操作により色のスケールが設定された場合に設定された色のスケールを示すパラメータを含む。また、スキャンパラメータは、白原稿の検知処理に関するパラメータとして、白紙検知処理の実行の有無を示すパラメータを含む。また、スキャンパラメータは、原稿に印刷等されたバーコードに関するパラメータとして、スキャンデータD1からバーコードを検出するか否かを示すパラメータ、ユーザが実行してほしい画像処理の種類を示すパラメータなどを含む。 The scan parameters include, as parameters related to the document size, a parameter indicating whether or not the document detection process is executed, and a parameter indicating the document size set when the document size is set by the user operation. Further, the scan parameters include, as parameters related to the color scale, a parameter indicating whether or not the scale detection process is executed, and a parameter indicating the color scale set when the color scale is set by the user operation. Further, the scan parameter includes a parameter indicating whether or not the blank page detection process is executed as a parameter related to the white document detection process. Further, the scan parameters include, as parameters related to the barcode printed on the original, a parameter indicating whether or not the barcode is detected from the scan data D1, a parameter indicating the type of image processing desired to be executed by the user, and the like. ..

そして、ドライバUIモジュール28Dは、パラメータの受け付けを終了すると、受け付けたスキャンパラメータをドライバメイン処理モジュール28Bに出力し、ドライバメイン処理モジュール28Bに対してスキャンパラメータの記憶を命令する(S121)。ドライバメイン処理モジュール28Bは、ドライバUIモジュール28Dから受信したスキャンパラメータを、例えば、メモリ14のデータ記憶領域34に記憶する。 Then, when the driver UI module 28D finishes accepting the parameters, the driver UI module 28D outputs the received scan parameters to the driver main processing module 28B, and instructs the driver main processing module 28B to store the scan parameters (S121). The driver main processing module 28B stores the scan parameters received from the driver UI module 28D in, for example, the data storage area 34 of the memory 14.

次に、ドライバUIモジュール28Dは、ユーザからスキャンの開始命令を受け付ける(S123)。ドライバUIモジュール28Dは、例えば、上記したS117で表示した設定画面に対して、ユーザからスキャンを開始することを示す操作を受け付けると、ドライバメイン処理モジュール28Bへスキャンの開始命令を出力する(S125)。 Next, the driver UI module 28D receives a scan start command from the user (S123). For example, when the driver UI module 28D receives an operation indicating that the scan is to be started from the user on the setting screen displayed in S117 described above, the driver UI module 28D outputs a scan start command to the driver main processing module 28B (S125). ..

ドライバメイン処理モジュール28Bは、ドライバUIモジュール28Dからスキャン開始命令を受け取ると、まず、上記したS121で記憶したスキャンパラメータ、即ち、設定画面において受け付けたスキャンパラメータを、デバイスメイン処理モジュール65へ送信する(S127)。この際、ドライバメイン処理モジュール28Bは、例えば、ユーザから受け付けたスキャンパラメータのうち、スキャナ50側で実行する処理に係わるスキャンパラメータをデバイスメイン処理モジュール65へ送信する。 When the driver main processing module 28B receives the scan start command from the driver UI module 28D, the driver main processing module 28B first transmits the scan parameters stored in S121 described above, that is, the scan parameters received on the setting screen to the device main processing module 65 ( S127). At this time, the driver main processing module 28B transmits, for example, the scan parameters related to the processing executed on the scanner 50 side among the scan parameters received from the user to the device main processing module 65.

次に、ドライバメイン処理モジュール28Bは、デバイスメイン処理モジュール65へスキャンの開始命令を送信する(S129)。デバイスメイン処理モジュール65は、S129においてドライバメイン処理モジュール28Bからスキャンの開始命令を受信すると、読取I/F55を駆動して原稿の画像を読み取る処理を実行する(S131)。 Next, the driver main processing module 28B transmits a scan start command to the device main processing module 65 (S129). When the device main processing module 65 receives the scan start command from the driver main processing module 28B in S129, the device main processing module 65 drives the reading I / F 55 to execute a process of reading the image of the original (S131).

デバイスメイン処理モジュール65は、読取I/Fが原稿を読み取って出力したデータに基づいて作成されたスキャンデータD1に対する画像処理をデバイス画像処理モジュール66へ命令する(S133)。デバイスメイン処理モジュール65は、読み取ったスキャンデータD1と、S127で受信したスキャンパラメータとを、デバイス画像処理モジュール66へ出力する(S133)。デバイス画像処理モジュール66は、受け取ったスキャンパラメータに基づいてスキャンデータD1に対する画像処理を実行する(S134)。デバイス画像処理モジュール66は、画像処理後のスキャンデータD1をデバイスメイン処理モジュール65へ出力する(S135)。 The device main processing module 65 instructs the device image processing module 66 to perform image processing on the scan data D1 created based on the data output by the scanning I / F reading the original (S133). The device main processing module 65 outputs the read scan data D1 and the scan parameters received in S127 to the device image processing module 66 (S133). The device image processing module 66 executes image processing on the scan data D1 based on the received scan parameters (S134). The device image processing module 66 outputs the scan data D1 after image processing to the device main processing module 65 (S135).

デバイスメイン処理モジュール65は、デバイス画像処理モジュール66によって画像処理が終了したスキャンデータD1を、ドライバメイン処理モジュール28Bへ送信する(S137)。デバイスメイン処理モジュール65は、例えば、デバイス画像処理モジュール66から1ライン分のスキャンデータD1を受け取ると、受け取ったスキャンデータD1をドライバメイン処理モジュール28Bに送信する。即ち、デバイスメイン処理モジュール65は、1ラインの画像処理が完了するごとにスキャンデータD1を送信する。なお、デバイスメイン処理モジュール65は、1ラインごとにスキャンデータD1を送信する構成に限らない。例えば、デバイスメイン処理モジュール65は、1枚の原稿の画像処理が終了するごとにスキャンデータD1を送信しても良い。あるいは、デバイスメイン処理モジュール65は、全ての原稿の画像を読み取った後に、まとめてスキャンデータD1を送信しても良い。 The device main processing module 65 transmits the scan data D1 whose image processing has been completed by the device image processing module 66 to the driver main processing module 28B (S137). When the device main processing module 65 receives the scan data D1 for one line from the device image processing module 66, for example, the device main processing module 65 transmits the received scan data D1 to the driver main processing module 28B. That is, the device main processing module 65 transmits scan data D1 every time one line of image processing is completed. The device main processing module 65 is not limited to a configuration in which scan data D1 is transmitted for each line. For example, the device main processing module 65 may transmit scan data D1 every time the image processing of one original is completed. Alternatively, the device main processing module 65 may collectively transmit the scan data D1 after reading the images of all the originals.

また、デバイスメイン処理モジュール65は、ドライバメイン処理モジュール28Bへ送信するスキャンデータD1を圧縮処理し、データ量を削減しても良い。この場合、例えば、ドライバメイン処理モジュール28Bは、デバイスメイン処理モジュール65から受信した圧縮されたスキャンデータD1を解凍し、解凍したスキャンデータD1をその後の処理に用いる。 Further, the device main processing module 65 may compress the scan data D1 to be transmitted to the driver main processing module 28B to reduce the amount of data. In this case, for example, the driver main processing module 28B decompresses the compressed scan data D1 received from the device main processing module 65, and the decompressed scan data D1 is used for the subsequent processing.

次に、図3に示すように、ドライバメイン処理モジュール28Bは、スキャナドライバ28のモジュールであるドライバ画像処理モジュール28Eに対してスキャンデータD1の画像処理を命令する(S139)。ドライバメイン処理モジュール28Bは、図2のS137でデバイスメイン処理モジュール65から受信したスキャンデータD1を、ドライバ画像処理モジュール28Eに出力する(S139)。また、ドライバメイン処理モジュール28Bは、図2のS121で記憶したスキャンパラメータをドライバ画像処理モジュール28Eへ出力する(S139)。この際、ドライバメイン処理モジュール28Bは、設定画面で受け付けたスキャンパラメータのうち、PC10側の画像処理に係わるスキャンパラメータをドライバ画像処理モジュール28Eへ出力する。 Next, as shown in FIG. 3, the driver main processing module 28B instructs the driver image processing module 28E, which is a module of the scanner driver 28, to process the image of the scan data D1 (S139). The driver main processing module 28B outputs the scan data D1 received from the device main processing module 65 in S137 of FIG. 2 to the driver image processing module 28E (S139). Further, the driver main processing module 28B outputs the scan parameters stored in S121 of FIG. 2 to the driver image processing module 28E (S139). At this time, the driver main processing module 28B outputs the scan parameters related to the image processing on the PC10 side to the driver image processing module 28E among the scan parameters received on the setting screen.

ドライバ画像処理モジュール28Eは、ドライバメイン処理モジュール28Bから受け取ったスキャンパラメータに基づいてスキャンデータD1を画像処理し(S141)、処理後のスキャンデータD1をドライバメイン処理モジュール28Bへ出力する(S143)。また、ドライバ画像処理モジュール28Eは、スキャンパラメータとして、バーコードを検出することを示すパラメータが設定されていた場合、スキャンデータD1の画像処理において、バーコードの検出処理を実行する。ドライバ画像処理モジュール28Eは、検出したバーコードに係わるバーコード情報をドライバメイン処理モジュール28Bへ出力する。ここでいうバーコード情報とは、例えば、検出したバーコードが示す文字の情報、その文字数、スキャンデータD1に含まれるバーコードの数、バーコードの種類である。また、バーコード情報は、例えば、原稿においてバーコードを印刷した方向を示す角度である。より具体的には、1次元バーコードであれば、例えば、バーが並ぶ方向と、画像を読み取る主走査方向とがなす角度(0度、90度など)である。また、ドライバ画像処理モジュール28Eは、スキャンデータD1からバーコードを検出できなかった場合、例えば、検出できなかったことを示す値を設定したバーコード情報を、ドライバメイン処理モジュール28Bに出力する(S143)。 The driver image processing module 28E image-processes the scan data D1 based on the scan parameters received from the driver main processing module 28B (S141), and outputs the processed scan data D1 to the driver main processing module 28B (S143). Further, the driver image processing module 28E executes the barcode detection process in the image processing of the scan data D1 when a parameter indicating that the barcode is detected is set as the scan parameter. The driver image processing module 28E outputs the barcode information related to the detected barcode to the driver main processing module 28B. The barcode information referred to here is, for example, information on characters indicated by the detected barcode, the number of characters, the number of barcodes included in the scan data D1, and the type of barcode. Further, the barcode information is, for example, an angle indicating the direction in which the barcode is printed in the original document. More specifically, in the case of a one-dimensional barcode, for example, it is an angle (0 degree, 90 degree, etc.) formed by the direction in which the bars are lined up and the main scanning direction in which the image is read. When the driver image processing module 28E cannot detect the barcode from the scan data D1, for example, the driver image processing module 28E outputs the barcode information set with a value indicating that the barcode could not be detected to the driver main processing module 28B (S143). ).

一方で、アプリケーションプログラム26は、ドライバメイン処理モジュール28Bへ定期的なスキャンデータD1の問い合わせを実行する(S145)。アプリケーションプログラム26は、例えば、図2のS125においてドライバUIモジュール28Dからドライバメイン処理モジュール28Bに対してスキャンの開始命令が出力された後、ドライバメイン処理モジュール28Bへ定期的にスキャンデータD1を問い合わせる(S145)。アプリケーションプログラム26は、S145において、スキャナ50から受信したスキャンデータD1の転送準備が完了したか否かをドライバメイン処理モジュール28Bに定期的に問い合わせる。なお、アプリケーションプログラム26は、ドライバメイン処理モジュール28Bに対して定期的な問い合わせを実行せず、ドライバメイン処理モジュール28BからスキャンデータD1が出力されるまで待機する構成でも良い。 On the other hand, the application program 26 executes a periodic inquiry of the scan data D1 to the driver main processing module 28B (S145). For example, in S125 of FIG. 2, the application program 26 periodically inquires of the driver main processing module 28B for scan data D1 after the driver UI module 28D outputs a scan start command to the driver main processing module 28B (. S145). The application program 26 periodically inquires the driver main processing module 28B whether or not the transfer preparation of the scan data D1 received from the scanner 50 is completed in S145. The application program 26 may be configured to wait until the scan data D1 is output from the driver main processing module 28B without executing a periodic inquiry to the driver main processing module 28B.

アプリケーションプログラム26は、S145の問い合わせに対応する応答をドライバメイン処理モジュール28Bから受け取ると(S147)、ドライバメイン処理モジュール28Bに対してスキャンデータD1の出力を命令する(S149)。ドライバメイン処理モジュール28Bは、アプリケーションプログラム26からスキャンデータD1の出力命令を受け取ると、スキャンデータD1をアプリケーションプログラム26へ出力する(S151)。 When the application program 26 receives the response corresponding to the inquiry in S145 from the driver main processing module 28B (S147), the application program 26 instructs the driver main processing module 28B to output the scan data D1 (S149). When the driver main processing module 28B receives the output command of the scan data D1 from the application program 26, the driver main processing module 28B outputs the scan data D1 to the application program 26 (S151).

次に、アプリケーションプログラム26は、スキャンデータD1をドライバUIモジュール28Dから受け取ると、スキャンデータD1に係わるバーコード情報をドライバ画像処理モジュール28Eに問い合わせる(S153)。従って、本実施形態のアプリケーションプログラム26は、原稿にバーコードが含まれているか否かに係わらず、ドライバ画像処理モジュール28Eに対してバーコード情報を問い合わせる。なお、アプリケーションプログラム26は、ドライバメイン処理モジュール28Bに対してバーコード情報を問い合わせず、ドライバメイン処理モジュール28Bからバーコード情報を受け取った場合のみ、バーコード情報を処理する構成でも良い。 Next, when the application program 26 receives the scan data D1 from the driver UI module 28D, the application program 26 inquires the driver image processing module 28E about the barcode information related to the scan data D1 (S153). Therefore, the application program 26 of the present embodiment inquires the driver image processing module 28E for the barcode information regardless of whether or not the original contains the barcode. The application program 26 may be configured to process the barcode information only when the driver main processing module 28B does not inquire about the barcode information and receives the barcode information from the driver main processing module 28B.

ドライバメイン処理モジュール28Bは、アプリケーションプログラム26からバーコード情報の問い合わせを受け取ると、アプリケーションプログラム26に対してバーコード情報を出力する(S155)。ドライバメイン処理モジュール28Bは、ドライバ画像処理モジュール28Eによってバーコードを検出できた場合、バーコードの文字数などをバーコード情報としてアプリケーションプログラム26へ出力する。また、ドライバメイン処理モジュール28Bは、ドライバ画像処理モジュール28Eによってバーコードを検出できなかった場合、そのことを示す値を設定したバーコード情報をアプリケーションプログラム26に出力する。 When the driver main processing module 28B receives an inquiry for barcode information from the application program 26, the driver main processing module 28B outputs the barcode information to the application program 26 (S155). When the driver image processing module 28E can detect the barcode, the driver main processing module 28B outputs the number of characters of the barcode and the like as barcode information to the application program 26. Further, when the driver image processing module 28E cannot detect the barcode, the driver main processing module 28B outputs the barcode information in which the value indicating that is set to the application program 26.

アプリケーションプログラム26は、ドライバメイン処理モジュール28Bから受け取ったスキャンデータD1及びバーコード情報を用いた所定の処理を実行する(S157)。ここでいう所定の処理とは、例えば、ユーザから要求された処理であり、スキャンデータD1を印刷する処理である。あるいは、アプリケーションプログラム26は、スキャンデータD1をPC10(メモリ14)へ記憶する処理、スキャンデータD1をLCD16へ表示する処理、スキャンデータD1の画像処理、他のアプリケーションプログラムにスキャンデータD1を転送する処理、サーバにスキャンデータD1を転送する処理などを実行しても良い。また、アプリケーションプログラム26は、バーコードの文字情報の表示、バーコードが示すデータの記憶先(フォルダパスやURL)へのアクセス、記憶先のデータの表示などを実行しても良い。 The application program 26 executes a predetermined process using the scan data D1 and the barcode information received from the driver main processing module 28B (S157). The predetermined process referred to here is, for example, a process requested by the user and is a process for printing the scan data D1. Alternatively, the application program 26 has a process of storing the scan data D1 in the PC 10 (memory 14), a process of displaying the scan data D1 on the LCD 16, an image process of the scan data D1, and a process of transferring the scan data D1 to another application program. , The process of transferring the scan data D1 to the server may be executed. Further, the application program 26 may execute display of character information of the barcode, access to the storage destination (folder path or URL) of the data indicated by the barcode, display of the storage destination data, and the like.

アプリケーションプログラム26は、S157の処理を完了させると、DSM28Aを介して、ドライバメイン処理モジュール28Bへ切断命令を出力する(S159、S161)。アプリケーションプログラム26は、DSM28Aを介してドライバメイン処理モジュール28Bに対し、デバイスメイン処理モジュール65(スキャナ50)との通信の接続を切断するように命令する(S159、S161)。ドライバメイン処理モジュール28Bは、アプリケーションプログラム26からの命令に応じて、デバイスメイン処理モジュール65との通信を切断する(S163)。このようにして、スキャンシステム1は、PC10のアプリケーションプログラム26の制御に基づいたスキャナ50による画像の読み取り処理を終了する。 When the processing of S157 is completed, the application program 26 outputs a disconnection instruction to the driver main processing module 28B via the DSM 28A (S159, S161). The application program 26 instructs the driver main processing module 28B via the DSM 28A to disconnect the communication with the device main processing module 65 (scanner 50) (S159, S161). The driver main processing module 28B disconnects communication with the device main processing module 65 in response to an instruction from the application program 26 (S163). In this way, the scanning system 1 ends the image reading process by the scanner 50 based on the control of the application program 26 of the PC 10.

<画像の読み取り処理について>
次に、上記した作動シーケンスにおける画像の読み取り処理の一例について説明する。本実施形態のスキャンシステム1は、様々なサイズの原稿の画像を読み取ることが可能となっている。スキャンシステム1は、上記したスキャンパラメータとして、原稿サイズの自動検知を実行することを示すパラメータが設定された場合、PC10側において原稿サイズの検知処理を実行する。スキャンシステム1は、大きさの異なる原稿について、その原稿のサイズよりも大きな画像をスキャナ50でスキャンデータD1として生成し、PC10においてそのスキャンデータD1から原稿の画像を切り出す処理を行う。
<About image reading process>
Next, an example of the image reading process in the above-mentioned operation sequence will be described. The scanning system 1 of the present embodiment can read images of documents of various sizes. When the scan parameter 1 indicates that the document size is automatically detected, the scan system 1 executes the document size detection process on the PC10 side. The scanning system 1 generates an image larger than the size of the document as scan data D1 by the scanner 50 for documents having different sizes, and performs a process of cutting out the image of the document from the scan data D1 on the PC 10.

詳述すると、図4は、画像の読み取り処理の一例を示している。図4に示す例では、スキャンパラメータには、原稿サイズを自動で検知し、原稿の画像を自動で抽出することを示すパラメータが設定されている。また、スキャンパラメータには、読み取り原稿の色を自動検知することを示すパラメータが設定されている。また、スキャンパラメータには、白紙検知を実行することを示すパラメータが設定されている。また、以下の説明では、スキャナ50の読み取り可能な原稿サイズのうち、最大のサイズがA4サイズであり、実際に読み取りを行う原稿のサイズがハガキサイズである場合について説明する。この場合、スキャナ50は、A4サイズよりも小さいハガキサイズの原稿を、読み取り可能な最大のサイズであるA4サイズの原稿として画像の読み取りを実行する。 More specifically, FIG. 4 shows an example of an image reading process. In the example shown in FIG. 4, the scan parameter is set to a parameter indicating that the original size is automatically detected and the original image is automatically extracted. Further, in the scan parameter, a parameter indicating that the color of the scanned document is automatically detected is set. In addition, a parameter indicating that blank page detection is executed is set in the scan parameter. Further, in the following description, a case where the maximum size of the document size that can be read by the scanner 50 is A4 size and the size of the document that is actually read is a postcard size will be described. In this case, the scanner 50 scans an image of a postcard size document smaller than the A4 size as an A4 size document which is the maximum size that can be read.

まず、スキャナ50は、図4に示すように、ハガキサイズの原稿の原稿スキャンデータ71を、A4サイズのスキャンデータD1として読み取る。スキャナ50は、原稿スキャンデータ71の外縁の外側に外側スキャンデータ73を付加したスキャンデータD1を生成する。この外側スキャンデータ73は、A4サイズとして足りない部分に対応しており、例えば、スキャナ50の原稿を読み取る読み取り台において、原稿を背面側から抑える原稿カバーを読み取った画像である。例えば、原稿カバーの内側(原稿側)には、グレー色が塗られている。この場合、スキャナ50は、原稿の背景色であるグレー色を、原稿スキャンデータ71の周囲の外側スキャンデータ73として読み取り、原稿スキャンデータ71の外周に付加する。 First, as shown in FIG. 4, the scanner 50 reads the document scan data 71 of the postcard-sized document as the A4 size scan data D1. The scanner 50 generates scan data D1 in which the outer scan data 73 is added to the outside of the outer edge of the original scan data 71. The outer scan data 73 corresponds to a portion that is insufficient as A4 size, and is, for example, an image obtained by scanning a document cover that holds the document from the back side on a scanning table that reads the document of the scanner 50. For example, the inside of the document cover (on the document side) is painted gray. In this case, the scanner 50 reads the gray color, which is the background color of the document, as the outer scan data 73 around the document scan data 71, and adds the gray color to the outer periphery of the document scan data 71.

スキャナ50は、原稿スキャンデータ71に外側スキャンデータ73を付加したスキャンデータD1を、PC10へ送信する。この送信処理は、図2に示すS137に対応する。PC10側では、上記したようにドライバ画像処理モジュール28EによってスキャンデータD1に対する画像処理を行う(図3のS141)。本実施形態のスキャナ50は、PC10側で原稿サイズを検知する場合、即ち、外側スキャンデータ73を原稿スキャンデータ71に付加したスキャンデータD1をPC10へ送信する場合、色のスケールの最も大きい24bitカラーのスキャンデータD1をPC10へ送信する。これにより、PC10側の原稿を検知する原稿検知処理(S201)において、色の識別によって外側スキャンデータ73を容易に検知することができる。また、後述するスケール変換処理(S207)において、色要素の数を適切に削減して最適化することができる。換言すれば、本実施形態のスキャンシステム1では、仮に、スキャンパラメータの色のスケールの設定としてモノクロが設定された場合であっても、原稿サイズを自動検知する設定であれば、PC10からスキャナ50へ24bitカラーのスキャンデータD1を要求することとなる。なお、スキャナ50からPC10へ送信するスキャンデータD1は、24bitカラーのスキャンデータD1に限らない。例えば、PC10側で8ビットのグレースケールのスキャンデータD1に基づいて、外側スキャンデータ73を検知可能であれば、スキャナ50からPC10へグレースケールのスキャンデータD1を送信しても良い。 The scanner 50 transmits the scan data D1 in which the outer scan data 73 is added to the document scan data 71 to the PC 10. This transmission process corresponds to S137 shown in FIG. On the PC10 side, the driver image processing module 28E performs image processing on the scan data D1 as described above (S141 in FIG. 3). When the scanner 50 of the present embodiment detects the document size on the PC10 side, that is, when the scan data D1 in which the outer scan data 73 is added to the document scan data 71 is transmitted to the PC10, the 24-bit color having the largest color scale is used. Scan data D1 is transmitted to PC10. As a result, in the document detection process (S201) for detecting the document on the PC10 side, the outer scan data 73 can be easily detected by color identification. Further, in the scale conversion process (S207) described later, the number of color elements can be appropriately reduced and optimized. In other words, in the scan system 1 of the present embodiment, even if monochrome is set as the color scale setting of the scan parameter, if the setting is to automatically detect the document size, the scanner 50 is set from the PC 10. The 24-bit color scan data D1 is requested. The scan data D1 transmitted from the scanner 50 to the PC 10 is not limited to the 24-bit color scan data D1. For example, if the outer scan data 73 can be detected based on the 8-bit grayscale scan data D1 on the PC10 side, the grayscale scan data D1 may be transmitted from the scanner 50 to the PC10.

まず、ドライバ画像処理モジュール28Eは、図3のS141の画像処理として、スキャンデータD1から原稿スキャンデータ71を検知する原稿検知処理を実行する(図4に示すS201)。ドライバ画像処理モジュール28Eは、外側スキャンデータ73の色(例えば、グレー色)に基づいてスキャンデータD1の画像を処理し、スキャンデータD1に含まれる外側スキャンデータ73を検知する。外側スキャンデータ73の色は、例えば、上記した図2におけるスキャナ50のデバイス能力値の取得処理(S111、S113)において、デバイスメイン処理モジュール65からドライバメイン処理モジュール28Bへ送信される。ドライバ画像処理モジュール28Eは、例えば、この取得処理で得た外側スキャンデータ73の色に該当し、且つスキャンデータD1の外周部分に配置された画像を、外側スキャンデータ73の画像として検知する。ドライバ画像処理モジュール28Eは、スキャンデータD1のうち検知した外側スキャンデータ73を除く部分を、原稿スキャンデータ71として抽出する画像処理を行う。尚、画像データを抽出する画像処理のことを、画像データを切り取る画像処理ともいう。 First, the driver image processing module 28E executes a document detection process for detecting the document scan data 71 from the scan data D1 as the image process of S141 in FIG. 3 (S201 shown in FIG. 4). The driver image processing module 28E processes the image of the scan data D1 based on the color (for example, gray color) of the outer scan data 73, and detects the outer scan data 73 included in the scan data D1. The color of the outer scan data 73 is transmitted from the device main processing module 65 to the driver main processing module 28B in, for example, the acquisition processing (S111, S113) of the device capability value of the scanner 50 in FIG. 2 described above. The driver image processing module 28E detects, for example, an image corresponding to the color of the outer scan data 73 obtained in this acquisition process and arranged on the outer peripheral portion of the scan data D1 as an image of the outer scan data 73. The driver image processing module 28E performs image processing for extracting the portion of the scan data D1 excluding the detected outer scan data 73 as the original scan data 71. The image processing for extracting image data is also referred to as image processing for cutting out image data.

次に、ドライバ画像処理モジュール28Eは、S201で抽出した原稿スキャンデータ71、即ち、画像を読み取った原稿に対して、白紙原稿に基づくスキャンデータであるか否かを判断する白紙検知処理を実行する(S203)。ドライバ画像処理モジュール28Eは、例えば、抽出した原稿スキャンデータ71が全て白色である場合、白紙の原稿であると検知する。なお、ドライバ画像処理モジュール28Eは、S203で白紙を検知した場合、ドライバメイン処理モジュール28Bやアプリケーションプログラム26を介してユーザへ白紙を検知したことを示す通知をしても良い。あるいは、ドライバ画像処理モジュール28Eは、S203で白紙を検知した場合、スキャンデータD1の中から白紙に該当する原稿スキャンデータ71のみを除去し、白紙以外の原稿スキャンデータ71を処理後のスキャンデータD1としてドライバメイン処理モジュール28Bへ出力しても良い。 Next, the driver image processing module 28E executes a blank page detection process for determining whether or not the document scan data 71 extracted in S201, that is, the document whose image has been read, is scan data based on a blank document. (S203). For example, when the extracted document scan data 71 is all white, the driver image processing module 28E detects that the document is a blank document. When the driver image processing module 28E detects a blank page in S203, the driver image processing module 28E may notify the user via the driver main processing module 28B or the application program 26 that the blank page has been detected. Alternatively, when the driver image processing module 28E detects a blank sheet in S203, the driver image processing module 28E removes only the original scan data 71 corresponding to the blank sheet from the scan data D1 and processes the original scan data 71 other than the blank sheet, and then scan data D1. May be output to the driver main processing module 28B.

次に、ドライバ画像処理モジュール28Eは、S201で抽出した原稿スキャンデータ71に含まれる色要素の数、即ち、色のスケールを検知する(S205)。色のスケールの検知方法としては、公知の画像処理方法を用いることができる。ドライバ画像処理モジュール28Eは、例えば、原稿スキャンデータ71に含まれる色要素の数に基づいて、原稿スキャンデータ71が、24bitのカラー画像、8bitのグレースケール画像、あるいはモノクロ画像のいずれの色のスケールの画像であるかを判断する。 Next, the driver image processing module 28E detects the number of color elements included in the document scan data 71 extracted in S201, that is, the color scale (S205). As a color scale detection method, a known image processing method can be used. In the driver image processing module 28E, for example, based on the number of color elements included in the document scan data 71, the document scan data 71 has a scale of any color of a 24-bit color image, an 8-bit grayscale image, or a monochrome image. Judge whether it is an image of.

次に、ドライバ画像処理モジュール28Eは、S205で検知した色のスケールに基づいて、原稿スキャンデータ71の色のスケールを変換するスケール変換処理を実行する(S207)。例えば、ドライバ画像処理モジュール28Eは、S205において、原稿スキャンデータ71の色のスケールがモノクロである、即ち、原稿スキャンデータ71に白色と黒色しか含まれていないことを検知すると、S207においてカラーの原稿スキャンデータ71をモノクロの原稿スキャンデータ71Aに変換する。これにより、スキャナ50から受信したカラーの原稿スキャンデータ71を最適な色のスケールに変換し色要素の数を削減することで、原稿スキャンデータ71のデータ量を削減することができる。ドライバ画像処理モジュール28Eは、色のスケールを変換した原稿スキャンデータ71Aを出力する。この出力処理は、上記した図3のS143の処理に対応する。従って、ドライバ画像処理モジュール28Eは、色のスケールを変換した原稿スキャンデータ71Aを、画像処理後のスキャンデータD1としてドライバ画像処理モジュール28Eに出力する(S143)。 Next, the driver image processing module 28E executes a scale conversion process for converting the color scale of the document scan data 71 based on the color scale detected in S205 (S207). For example, when the driver image processing module 28E detects in S205 that the color scale of the document scan data 71 is monochrome, that is, the document scan data 71 contains only white and black, the driver image processing module 28E detects in S207 that the color document contains only white and black. The scan data 71 is converted into monochrome document scan data 71A. As a result, the amount of data of the document scan data 71 can be reduced by converting the color document scan data 71 received from the scanner 50 to the optimum color scale and reducing the number of color elements. The driver image processing module 28E outputs the document scan data 71A having the color scale converted. This output process corresponds to the process of S143 in FIG. 3 described above. Therefore, the driver image processing module 28E outputs the original scan data 71A having the color scale converted to the driver image processing module 28E as the scan data D1 after the image processing (S143).

ここで、スキャナ50側で原稿サイズの検知を実行する場合について説明する。スキャナ50は、例えば、原稿の主走査方向の長さを、読取I/F55の画像データに基づいて検知する。また、スキャナ50は、例えば、原稿の副走査方向の長さを、物理的な用紙センサによって検知する。原稿の主走査方向の長さのことを原稿の幅ともいう。原稿の主走査方向の長さのことを原稿の高さともいう。ここでいう物理的な用紙センサとは、例えば、ローラ型のセンサであり、画像の読み取り時に原稿の上を副走査方向へと回転しながら移動し、原稿の端部の段差に基づいて原稿の高さを検知するものである。このような用紙センサによる原稿サイズの検知では、センサの検知精度によっては数ミリ程度の誤差が生じる虞がある。これに対し、本実施形態のスキャンシステム1では、PC10側の画像処理によって原稿サイズを検知し、原稿スキャンデータ71を抽出することで原稿スキャンデータ71を精度良く抽出できる。 Here, a case where the document size is detected on the scanner 50 side will be described. The scanner 50 detects, for example, the length of the document in the main scanning direction based on the image data of the scanning I / F 55. Further, the scanner 50 detects, for example, the length of the document in the sub-scanning direction by a physical paper sensor. The length of the original in the main scanning direction is also called the width of the original. The length of the original in the main scanning direction is also called the height of the original. The physical paper sensor referred to here is, for example, a roller type sensor, which moves while rotating on the document in the sub-scanning direction when reading an image, and is based on a step at the edge of the document. It detects the height. In the detection of the document size by such a paper sensor, an error of about several millimeters may occur depending on the detection accuracy of the sensor. On the other hand, in the scan system 1 of the present embodiment, the document size is detected by image processing on the PC10 side and the document scan data 71 is extracted, so that the document scan data 71 can be extracted with high accuracy.

また、原稿の原稿スキャンデータ71に外側スキャンデータ73を付加した場合、外側スキャンデータ73を付加したスキャンデータD1に対して白紙検知処理(S203)やスケール検知処理(S205)を実行すると、精度良く白紙検知等を実行できない虞がある。これは、例えば、外側スキャンデータ73としてグレー色を付加すると、仮に、原稿スキャンデータ71が白紙であったとしても、スキャンデータD1には、白色を示す原稿スキャンデータ71)とグレー色を示す外側スキャンデータ73の2色が含まれることとなる。その結果、白紙検知処理において、スキャンデータD1にグレー色が含まれるため、白紙であることを精度良く検知できなくなる虞がある。また、スケール検知処理において、グレー色を示すデータが原稿スキャンデータ71に含まれると検知してしまうなど、原稿の色のスケールを精度良く検知できなくなる虞がある。これに対し、本実施形態のスキャンシステム1では、原稿検知処理(S201)によって外側スキャンデータ73を取り除いた原稿スキャンデータ71を用いて、白紙検知処理(S203)やスケール検知処理(S205)を実行する。これにより、白紙検知や色のスケールの検知の検知精度を向上することができる。 Further, when the outer scan data 73 is added to the original scan data 71 of the original, if the blank page detection process (S203) or the scale detection process (S205) is executed on the scan data D1 to which the outer scan data 73 is added, the accuracy is high. There is a risk that blank page detection etc. cannot be executed. For example, when a gray color is added as the outer scan data 73, even if the original scan data 71 is blank, the scan data D1 has the original scan data 71) showing white and the outer side showing gray color. Two colors of the scan data 73 will be included. As a result, in the blank paper detection process, the scan data D1 contains a gray color, so that it may not be possible to accurately detect the blank paper. Further, in the scale detection process, if the data indicating the gray color is included in the document scan data 71, it may be detected, and the scale of the color of the document may not be detected accurately. On the other hand, in the scan system 1 of the present embodiment, the blank page detection process (S203) and the scale detection process (S205) are executed using the document scan data 71 from which the outer scan data 73 has been removed by the document detection process (S201). To do. This makes it possible to improve the detection accuracy of blank paper detection and color scale detection.

尚、上記した図4に示す例では、PC10側で原稿サイズの検知や原稿スキャンデータ71の抽出を実行したが、例えば、スキャンパラメータとして原稿サイズを設定された場合には、PC10側で原稿検知処理を実行する必要がなくなる。この場合、白紙検知処理(S203)やスケール検知処理(S205)をスキャナ50側で実行しても良い。これにより、ユーザによってスキャンパラメータに指定された原稿サイズに基づいて画像処理を実行し、PC10側での不要な原稿検知処理を実行しないことで、読み取り処理の高速化を図ることができる。 In the example shown in FIG. 4 above, the document size is detected and the document scan data 71 is extracted on the PC10 side. For example, when the document size is set as a scan parameter, the document is detected on the PC10 side. There is no need to execute processing. In this case, the blank page detection process (S203) or the scale detection process (S205) may be executed on the scanner 50 side. As a result, the image processing is executed based on the document size specified by the user in the scan parameter, and the unnecessary document detection process on the PC10 side is not executed, so that the scanning process can be speeded up.

<バーコードデータの検出処理>
次に、上記した作動シーケンスにおいて、バーコードが印刷された原稿をスキャンした場合の作動について説明する。本実施形態のスキャナドライバ28は、例えば、アプリケーションプログラム26からの要求に応じて、原稿に印刷されたバーコードやバーコードに係わる文字列をスキャンデータD1から検出し、検出したバーコードなどをアプリケーションプログラム26へ出力する。また、本実施形態のスキャナドライバ28は、ユーザによって設定された検知精度に応じて、バーコードの検出前に実行する画像処理(本発明の第1画像処理の一例)を変更する。この検出前の画像処理は、バーコードの検出処理に有益な処理(本発明の第1群の画像処理の一例)である。なお、本願におけるバーコードとは、バーで構成された1次元コードだけでなく、QRコード(登録商標)のような2次元コードを含む概念である。
<Barcode data detection processing>
Next, in the above-mentioned operation sequence, the operation when the document on which the barcode is printed is scanned will be described. The scanner driver 28 of the present embodiment detects, for example, a barcode printed on a manuscript or a character string related to the barcode from the scan data D1 in response to a request from the application program 26, and applies the detected barcode or the like. Output to program 26. Further, the scanner driver 28 of the present embodiment changes the image processing (an example of the first image processing of the present invention) to be executed before the detection of the barcode according to the detection accuracy set by the user. This pre-detection image processing is a useful process for barcode detection processing (an example of the image processing of the first group of the present invention). The bar code in the present application is a concept including not only a one-dimensional code composed of bars but also a two-dimensional code such as a QR code (registered trademark).

詳述すると、スキャナドライバ28のドライバUIモジュール28Dは、図2のS117において、バーコードの検出の有無を確認するための設定画面を表示させる。図5は、設定画面の一例を示している。ドライバUIモジュール28Dは、S117においてスキャンパラメータを受け付けるために表示する画面の1つとして、図5に示す設定画面81をLCD16に表示させる。 More specifically, the driver UI module 28D of the scanner driver 28 displays a setting screen for confirming the presence / absence of barcode detection in S117 of FIG. FIG. 5 shows an example of the setting screen. The driver UI module 28D causes the LCD 16 to display the setting screen 81 shown in FIG. 5 as one of the screens to be displayed in order to receive the scan parameters in S117.

図5に示すように、設定画面81の最上部には、バーコードの読み取りを実行するか否かを設定するためのチェックボックス83が表示されている。ユーザは、例えば、入力I/F18のマウスを操作して、チェックボックス83にチェックを入れることで、バーコードの読み取りの実行を設定する。図5は、チェックボックス83にチェックが入った状態を示している。 As shown in FIG. 5, a check box 83 for setting whether or not to execute barcode reading is displayed at the top of the setting screen 81. The user sets the execution of barcode reading by, for example, operating the mouse of the input I / F18 and checking the check box 83. FIG. 5 shows a state in which the check box 83 is checked.

また、チェックボックス83の下には、バーコードの種類を指定するチェックボックス84が表示されている。チェックボックス84には、UPC−Aなどのバーコードの種類ごとにチェックボックスが表示されている。ユーザは、チェックボックス84にチェックを入れることで、検出すべきバーコードの種類を設定できる。 Further, below the check box 83, a check box 84 for specifying the type of barcode is displayed. In the check box 84, check boxes are displayed for each type of barcode such as UPC-A. The user can set the type of barcode to be detected by checking the check box 84.

チェックボックス84の下には、バーコードを検出する範囲を設定するための入力ボックス85が表示されている。ユーザは、入力ボックス85を設定することで、スキャンデータD1の全範囲からバーコードを検出すべきか、あるいはスキャンデータD1の指定範囲からバーコードを検出すべきかを設定できる。指定範囲の欄には、スキャンデータD1の上端や左端から起点となる位置までの距離(XY座標)、その起点となる位置からの横幅、高さを、数値で指定可能となっている。また入力した数値の単位として、センチやインチを、単位の欄に指定可能となっている。これにより、スキャンデータD1における特定の領域を指定することが可能となっている。 Below the check box 84, an input box 85 for setting a range for detecting a barcode is displayed. By setting the input box 85, the user can set whether to detect the barcode from the entire range of the scan data D1 or to detect the barcode from the specified range of the scan data D1. In the designated range column, the distance (XY coordinates) from the upper end or the left end of the scan data D1 to the starting point, the width and height from the starting point can be specified numerically. In addition, centimeters and inches can be specified in the unit field as the unit of the entered numerical value. This makes it possible to specify a specific area in the scan data D1.

また、入力ボックス85の下には、バーコードの検出精度を設定する設定欄86が表示されている。設定欄86には、検出精度を選択するための選択矢印87が表示されている。ユーザは、選択矢印87を移動させることで、例えば、検出精度として、「早い」、「普通」、「高精度」のいずれかを設定する。図5に示す状態では、選択矢印87は、「早い」の下に表示されており、検出精度として「早い」が選択された状態となっている。なお、検出精度が「早い」とは、高精度の場合に比べてバーコードの検出精度を低くし、画像処理の結果を早く出力する設定である。 Further, below the input box 85, a setting field 86 for setting the bar code detection accuracy is displayed. In the setting field 86, a selection arrow 87 for selecting the detection accuracy is displayed. By moving the selection arrow 87, the user sets, for example, one of "fast", "normal", and "high accuracy" as the detection accuracy. In the state shown in FIG. 5, the selection arrow 87 is displayed under “fast”, and “fast” is selected as the detection accuracy. Note that the detection accuracy of "fast" is a setting in which the bar code detection accuracy is lowered as compared with the case of high accuracy, and the result of image processing is output earlier.

また、設定欄86の下には、決定ボタン88が表示されている。また、チェックボックス84の下で、入力ボックス85の右には、画像処理選択画面ボタン89が表示されている。ドライバUIモジュール28Dは、ユーザによって画像処理選択画面ボタン89を選択されると、図6に示す選択画面91をLCD16に表示させる。なお、図5に示す設定画面81は、一例であり、設定可能なスキャンパラメータに応じて適宜変更される。例えば、検出精度は、3種類に限らず、2種類、あるいは4種類以上でも良い。 Further, a decision button 88 is displayed below the setting field 86. Further, below the check box 84, an image processing selection screen button 89 is displayed on the right side of the input box 85. When the image processing selection screen button 89 is selected by the user, the driver UI module 28D causes the LCD 16 to display the selection screen 91 shown in FIG. The setting screen 81 shown in FIG. 5 is an example, and is appropriately changed according to the scan parameters that can be set. For example, the detection accuracy is not limited to three types, and may be two types or four or more types.

図6に示すように、選択画面91には、第1群画像処理95と、第2群画像処理96とを含む実行可能画像処理97(本発明の複数の画像処理の一例)が表示されている。この実行可能画像処理97は、ドライバ画像処理モジュール28Eによって実行可能な画像処理である。実行可能画像処理97の各画像処理の左側には、チェックボックス93が表示されている。ユーザは、チェックボックス93のいずれかにチェックを入れことで、実行したい画像処理を設定できる。 As shown in FIG. 6, the selection screen 91 displays an executable image processing 97 (an example of a plurality of image processings of the present invention) including the first group image processing 95 and the second group image processing 96. There is. The executable image processing 97 is an image processing that can be executed by the driver image processing module 28E. A check box 93 is displayed on the left side of each image process of the executable image process 97. The user can set the image processing to be executed by checking one of the check boxes 93.

第1群画像処理95には、パンチ穴除去処理からモノクロ化レベル調整処理までが含まれる。第1群画像処理95は、バーコードの検出処理に有益な処理であり、バーコードの検出精度を高めることが可能な処理として予め定められた画像処理である。パンチ穴除去処理は、スキャンデータD1に含まれる画像のうち、パンチ穴に相当する画像を、スキャンデータD1から除去する処理である。これにより、バーコードの検出に不要なパンチ穴の画像を除去できるため、バーコードの検出精度を向上させることができる。 The first group image processing 95 includes punch hole removal processing and monochrome level adjustment processing. The first group image processing 95 is a process useful for the bar code detection process, and is a predetermined image process as a process capable of improving the bar code detection accuracy. The punch hole removal process is a process of removing an image corresponding to a punch hole from the scan data D1 among the images included in the scan data D1. As a result, an image of punch holes unnecessary for detecting the barcode can be removed, so that the accuracy of detecting the barcode can be improved.

地色除去処理は、例えば、スキャンする原稿の色(地色)がカラーである場合に、そのカラー色(地色)を白色に変換する処理である。これにより、バーコードの色合いが地色に近い場合に、バーコードの回りを白色に変換することで、バーコードの検出精度を向上させることができる。また、裏移り色除去処理は、例えば、原稿の裏側に印刷された画像が表側に移って画像として認識される場合に、その裏移りしている色を除去する処理である。これにより、裏移りした色とバーコードとが重なってしまう場合に、裏移りした色を除去することで、バーコードの検出精度を向上させることができる。 The ground color removal process is, for example, a process of converting a color (ground color) of a document to be scanned into white when the color (ground color) of the document to be scanned is a color. As a result, when the hue of the barcode is close to the ground color, the area around the barcode is converted to white, so that the detection accuracy of the barcode can be improved. Further, the set-off color removing process is, for example, a process of removing the set-off color when an image printed on the back side of a document moves to the front side and is recognized as an image. As a result, when the set-off color and the barcode overlap, the barcode detection accuracy can be improved by removing the set-off color.

カラートーン調整処理は、スキャンデータD1の色合い、明るさやコントラストを調整する処理である。これにより、スキャンデータD1の色合いなどを統一することで、バーコードの検出精度を向上させることができる。 The color tone adjustment process is a process for adjusting the hue, brightness, and contrast of the scan data D1. As a result, the barcode detection accuracy can be improved by unifying the hue and the like of the scan data D1.

カラードロップアウト処理は、例えば、スキャンする原稿には印刷されているが、スキャンデータD1としては読み取りたくない所望の図形等を消去する処理である。例えば、画像の読み取りをするときに所望の枠線を消したい場合、その枠線を特定の色(例えば、赤色)で描く。そして、カラードロップアウト処理でこの特定の色を除去することで、枠線(所望の図形等)を除去することができる。これにより、所望の図形等、即ち、バーコードの検出には不要な図形等を消した状態のスキャンデータD1を生成することができ、バーコードの検出精度を向上させることができる。 The color dropout process is, for example, a process of erasing a desired figure or the like that is printed on a document to be scanned but is not desired to be read as scan data D1. For example, if you want to erase a desired border when reading an image, draw the border in a specific color (eg, red). Then, by removing this specific color by the color dropout process, the border (desired figure or the like) can be removed. As a result, the scan data D1 in a state in which the desired figure or the like, that is, the figure or the like unnecessary for detecting the barcode is erased, can be generated, and the detection accuracy of the barcode can be improved.

エッジ強調処理は、文字や線などのエッジを検出し、文字などの輪郭を明確化する処理である。これにより、文字や線などの輪郭がはっきりするため、バーコードの検出精度を向上させることができる。 The edge enhancement process is a process of detecting an edge such as a character or a line and clarifying the outline of the character or the like. As a result, the contours of characters and lines become clear, so that the bar code detection accuracy can be improved.

モノクロ化レベル調整処理は、白色と黒色の色合いや明るさなどを調整する処理である。モノクロ化レベル調整処理では、例えば、カラーの画像をモノクロとしてスキャンした際に、スキャンデータD1の各部分の色を、予め設定された閾値に基づいて、白色として認識すべきか、黒色として認識すべきかを判定する。そして、判定結果に基づいて、スキャンデータD1の各部分の色合いなどを調整する。この場合にも、スキャンデータD1の色合いなどを統一することで、バーコードの検出精度を向上させることができる。 The monochrome level adjustment process is a process for adjusting the hue and brightness of white and black. In the monochrome conversion level adjustment process, for example, when a color image is scanned as monochrome, whether the color of each part of the scan data D1 should be recognized as white or black based on a preset threshold value. To judge. Then, based on the determination result, the hue and the like of each part of the scan data D1 are adjusted. Also in this case, the barcode detection accuracy can be improved by unifying the hue and the like of the scan data D1.

上記した第1群画像処理95は、スキャンデータD1の色のスケールによっては実行できない、あるいは実行する必要がないものがある。このため、ドライバUIモジュール28Dは、スキャンパラメータとして設定された色のスケールに基づいて、有効なチェックボックス93、即ち、ユーザによってチェック可能なチェックボックス93を変更する。ドライバUIモジュール28Dは、スキャンパラメータとしてカラースケールが設定された場合、例えば、パンチ穴除去処理、地色・裏移り色除去処理、カラートーン調整処理、カラードロップアウト処理、エッジ強調処理のチェックボックス93を有効にする。また、ドライバUIモジュール28Dは、スキャンパラメータとしてグレースケールが設定された場合、例えば、カラートーン調整処理、エッジ強調処理のチェックボックス93を有効にする。また、ドライバUIモジュール28Dは、スキャンパラメータとしてモノクロスケールが設定された場合、例えば、エッジ強調処理、モノクロ化レベル調整処理のチェックボックス93を有効にする。これにより、ユーザは、カラースケールに応じて実行可能な画像処理を考えることなく、実行可能な画像処理の中から所望の画像処理を選択できる。 The first group image processing 95 described above may not be executed or may not be executed depending on the color scale of the scan data D1. Therefore, the driver UI module 28D changes the valid check box 93, that is, the check box 93 that can be checked by the user, based on the color scale set as the scan parameter. When the color scale is set as a scan parameter, the driver UI module 28D has check boxes 93 for, for example, punch hole removal processing, background color / set-off color removal processing, color tone adjustment processing, color dropout processing, and edge enhancement processing. To enable. Further, when the gray scale is set as the scan parameter, the driver UI module 28D enables, for example, the check box 93 of the color tone adjustment process and the edge enhancement process. Further, when the monochrome scale is set as the scan parameter, the driver UI module 28D enables, for example, the check box 93 of the edge enhancement process and the monochrome level adjustment process. As a result, the user can select a desired image processing from the feasible image processing without considering the image processing that can be performed according to the color scale.

なお、上記した第1群画像処理95の種類は、一例であり、他の画像処理でも良い。例えば、カラースケールとして誤差拡散グレーのスケールを含める場合、第1群画像処理95は、誤差拡散グレーの画像を対象に、バーコードの検出に有益となる処理を含でも良い。ここでいう誤差拡散グレーとは、例えば、誤差拡散法により白色と黒色を用いてグレーを擬似的に表現した1bit疑似グレーである。この場合、例えば、誤差拡散グレーの濃淡調整処理として、1bit疑似グレーのスキャンデータD1に対して、色合いや明るさなどを調整する処理が可能となる。そして、誤差拡散グレーのスキャンデータD1の色合いなどを統一することで、バーコードの検出精度を向上させることができる。 The type of the first group image processing 95 described above is an example, and other image processing may be used. For example, when the error diffusion gray scale is included as the color scale, the first group image processing 95 may include processing that is useful for detecting a barcode on the error diffusion gray image. The error diffusion gray referred to here is, for example, a 1-bit pseudo gray in which gray is pseudo-expressed using white and black by the error diffusion method. In this case, for example, as the shading adjustment process of the error diffusion gray, it is possible to adjust the hue, brightness, and the like with respect to the scan data D1 of the 1-bit pseudo-gray. Then, by unifying the hue of the scan data D1 of the error diffusion gray, it is possible to improve the detection accuracy of the barcode.

また、第2群画像処理96は、文字補正処理から罫線除去処理までが含まれる。第2群画像処理96は、バーコードの検出処理に有益となる可能性が低い、バーコードの検出処理に影響を与えない、あるいは、バーコードの検出処理に不利益となる処理である。文字補正処理は、例えば、スキャンデータD1に含まれる文字を太くする補正や、かすれている文字の色を濃くする補正を行う処理である。また、ノイズ除去処理は、スキャンデータD1に含まれる画像のうち、元々の原稿の画像以外のノイズを除去する処理である。罫線除去処理は、OCR処理で不要な罫線を除去する処理である。これらの第2群画像処理96は、スキャンデータD1に含まれるバーコードデータを、変更、削除等する可能性がある。このため、後述するように、バーコードの検出処理の後に実行することが好ましい。 Further, the second group image processing 96 includes from character correction processing to ruled line removal processing. The second group image processing 96 is a process that is unlikely to be useful for the bar code detection process, does not affect the bar code detection process, or is disadvantageous to the bar code detection process. The character correction process is, for example, a process of correcting to thicken the characters included in the scan data D1 or to darken the color of the faint characters. The noise removal process is a process for removing noise other than the original original image among the images included in the scan data D1. The ruled line removing process is a process of removing unnecessary ruled lines by the OCR process. These second group image processing 96 may change, delete, or the like the barcode data included in the scan data D1. Therefore, as will be described later, it is preferable to execute the barcode after the barcode detection process.

また、図6の下部には、決定ボタン98が表示されている。ドライバUIモジュール28Dは、ユーザによって決定ボタン98を選択されると、選択画面91の表示をなくし、図5に示す設定画面81を表示させる。そして、ドライバUIモジュール28Dは、ユーザによって設定画面81の決定ボタン88を選択されると、図5の設定画面81及び図6の選択画面91で設定されたスキャンパラメータを、図2のS121においてドライバメイン処理モジュール28Bへ出力する(本発明の第1受付手段、第1特定手段の一例)。これにより、図3のS141において、ドライバ画像処理モジュール28Eは、ドライバメイン処理モジュール28Bを介してドライバUIモジュール28Dから受け取ったスキャンパラメータ、即ち、ユーザが設定画面81及び選択画面91で設定したスキャンパラメータに基づいて、バーコードの検出処理を実行する。 Further, a decision button 98 is displayed at the lower part of FIG. When the enter button 98 is selected by the user, the driver UI module 28D eliminates the display of the selection screen 91 and displays the setting screen 81 shown in FIG. Then, when the user selects the decision button 88 on the setting screen 81, the driver UI module 28D sets the scan parameters set on the setting screen 81 in FIG. 5 and the selection screen 91 in FIG. 6 as a driver in S121 in FIG. Output to the main processing module 28B (an example of the first receiving means and the first specific means of the present invention). As a result, in S141 of FIG. 3, the driver image processing module 28E receives scan parameters from the driver UI module 28D via the driver main processing module 28B, that is, scan parameters set by the user on the setting screen 81 and the selection screen 91. The barcode detection process is executed based on.

<検出精度として「早い」が設定された場合>
次に、図5に示す設定欄86の検出精度として「早い」が設定された場合の画像処理の流れについて説明する。図7は、ドライバ画像処理モジュール28Eによる画像処理の一例を示している。図7の処理は、図3のS141の画像処理に対応する。以下の説明では、一例として、カラーのスキャンデータD1を対象に、画像処理を行う場合について説明する。なお、ドライバ画像処理モジュール28Eは、例えば、スキャンデータD1に複数の原稿のデータが含まれている場合、1枚の原稿のデータごとに図7に示す処理を実行する。
<When "fast" is set as the detection accuracy>
Next, the flow of image processing when "fast" is set as the detection accuracy of the setting field 86 shown in FIG. 5 will be described. FIG. 7 shows an example of image processing by the driver image processing module 28E. The processing of FIG. 7 corresponds to the image processing of S141 of FIG. In the following description, as an example, a case where image processing is performed on the color scan data D1 will be described. The driver image processing module 28E, for example, when the scan data D1 contains data of a plurality of originals, executes the process shown in FIG. 7 for each data of one original.

検出精度として「早い」が設定された場合、ドライバ画像処理モジュール28Eは、ユーザによってチェックボックス93(図6参照)で選択された実行可能画像処理97(本発明の対象画像処理の一例)のうち、バーコードの検出に有益な第1群画像処理95に含まれるものを、バーコードの検出処理(S219)の前に第1画像処理として実行する(S215)。また、ドライバ画像処理モジュール28Eは、ユーザによって選択された実行可能画像処理97のうち、第2群画像処理96に含まれるものを、バーコードの検出処理(S219)の後に第2画像処理として実行する(S229)。 When "fast" is set as the detection accuracy, the driver image processing module 28E is among the executable image processing 97 (an example of the target image processing of the present invention) selected by the user in the check box 93 (see FIG. 6). , What is included in the first group image processing 95, which is useful for bar code detection, is executed as the first image processing before the bar code detection processing (S219) (S215). Further, the driver image processing module 28E executes the executable image processing 97 selected by the user, which is included in the second group image processing 96, as the second image processing after the barcode detection processing (S219). (S229).

詳述すると、まず、ドライバ画像処理モジュール28Eは、図7のS211において、図4のS201と同様に、原稿検知処理を実行し、スキャンデータD1から原稿スキャンデータ71を検出する。次に、ドライバ画像処理モジュール28Eは、図4のS203,S205と同様に、白紙検知処理、スケール検知処理を実行する(S213)。なお、仮にS213の白紙検知処理において、原稿スキャンデータ71が白紙原稿のデータであった場合、ドライバ画像処理モジュール28Eは、画像処理中の原稿スキャンデータ71を破棄し、次のページの原稿スキャンデータ71に対してS211からの処理を実行する。 More specifically, first, in S211 of FIG. 7, the driver image processing module 28E executes the document detection process in the same manner as in S201 of FIG. 4, and detects the document scan data 71 from the scan data D1. Next, the driver image processing module 28E executes the blank page detection process and the scale detection process in the same manner as in S203 and S205 of FIG. 4 (S213). If the original scan data 71 is blank original data in the blank paper detection process of S213, the driver image processing module 28E discards the original scan data 71 during image processing and the original scan data on the next page. The process from S211 is executed for 71.

次に、ドライバ画像処理モジュール28Eは、S215において、S213の画像処理を実行した原稿スキャンデータ71を対象に、第1画像処理を実行する。上記したように、ドライバ画像処理モジュール28Eは、S215において、ユーザによって選択された実行可能画像処理97のうち、バーコードの検出に有益な第1群画像処理95に含まれるものを実行する。これにより、後述するS219におけるバーコードの検出処理の検出精度を向上することができる。また、ユーザは、選択した画像処理がバーコードの検出処理に与える影響や、選択した画像処理を実行すべきタイミングを考える必要がなく、所望の実行可能画像処理97を任意に選択できる。 Next, the driver image processing module 28E executes the first image processing on the document scan data 71 that has executed the image processing of S213 in S215. As described above, in S215, the driver image processing module 28E executes the executable image processing 97 selected by the user, which is included in the first group image processing 95 useful for detecting the barcode. As a result, the detection accuracy of the barcode detection process in S219, which will be described later, can be improved. Further, the user does not need to consider the influence of the selected image processing on the barcode detection processing and the timing at which the selected image processing should be executed, and can arbitrarily select the desired feasible image processing 97.

次に、ドライバ画像処理モジュール28Eは、第1画像処理を実行した原稿スキャンデータ71をメモリ14(図1参照)に記憶する(S216)。これは、次の二値化処理において原稿スキャンデータ71のスケールを変更するためである。 Next, the driver image processing module 28E stores the document scan data 71 that has executed the first image processing in the memory 14 (see FIG. 1) (S216). This is to change the scale of the document scan data 71 in the next binarization process.

次に、ドライバ画像処理モジュール28Eは、S216で記憶した原稿スキャンデータ71をメモリ14から読み出して二値化処理を実行する(S217)。ドライバ画像処理モジュール28Eは、カラーの原稿スキャンデータ71を、白色及び黒色の2色に2値化する。これにより、カラー画像をモノクロ画像に変換することで、バーコードの検出精度を向上させることができる。 Next, the driver image processing module 28E reads the document scan data 71 stored in S216 from the memory 14 and executes the binarization process (S217). The driver image processing module 28E binarizes the color document scan data 71 into two colors, white and black. As a result, the barcode detection accuracy can be improved by converting the color image into a monochrome image.

次に、ドライバ画像処理モジュール28Eは、S217で二値化した原稿スキャンデータ71からバーコードを検出する処理を実行する(S219)。ドライバ画像処理モジュール28Eは、例えば、原稿スキャンデータ71からバーコードを示す画像データであるバーコードデータを検出し、そのバーコードデータから上記したバーコード情報(バーコードの文字情報など)を検出する。バーコードデータの検出方法は、例えば、バーコードの所定規格に準拠したバーの集合(配列)や、スタートキャラクタなどが原稿スキャンデータ71に含まれているか否かについて、パターンマッチング技術等を用いて判断する方法でもよい。また、2次元コードのバーコードデータの検出方法は、例えば、所定のファインダパターンが原稿スキャンデータ71に含まれているか否かについて、パターンマッチング技術等を用いて判断する方法でもよい。また、ドライバ画像処理モジュール28Eは、上記した図5に示すチェックボックス84において、バーコードの種類を選択された場合、その選択された種類のバーコードのみを検出する処理を実行する。また、例えば、図5のチェックボックス83をチェックされ、チェックボックス84をチェックされなかった場合、ドライバ画像処理モジュール28Eは、全ての種類のバーコードの検出を試みる。 Next, the driver image processing module 28E executes a process of detecting a barcode from the document scan data 71 binarized in S217 (S219). The driver image processing module 28E detects, for example, bar code data which is image data indicating a bar code from the document scan data 71, and detects the above-mentioned bar code information (bar code character information, etc.) from the bar code data. .. The barcode data detection method uses, for example, a pattern matching technique or the like to determine whether or not a set (arrangement) of bars conforming to a predetermined standard of barcode and a start character are included in the document scan data 71. It may be a method of judgment. Further, the method for detecting the bar code data of the two-dimensional code may be, for example, a method of determining whether or not a predetermined finder pattern is included in the document scan data 71 by using a pattern matching technique or the like. Further, when the barcode type is selected in the check box 84 shown in FIG. 5 described above, the driver image processing module 28E executes a process of detecting only the selected type of barcode. Further, for example, when the check box 83 of FIG. 5 is checked and the check box 84 is not checked, the driver image processing module 28E attempts to detect all types of barcodes.

次に、ドライバ画像処理モジュール28Eは、S219において正常にバーコードを検出できたか否かを判断する(S221)。例えば、ドライバ画像処理モジュール28Eは、上記したパターンマッチングの処理において、所望のパターンと一致する画像を検出できた場合に、正常にバーコードを検出できたと判断する。ドライバ画像処理モジュール28Eは、正常にバーコードを検出できたことに応じて(S221:YES)、検出したバーコード情報をメモリ14に記憶する(S227)。 Next, the driver image processing module 28E determines whether or not the barcode can be normally detected in S219 (S221). For example, the driver image processing module 28E determines that the barcode can be detected normally when the image matching the desired pattern can be detected in the pattern matching process described above. The driver image processing module 28E stores the detected barcode information in the memory 14 according to the fact that the barcode can be detected normally (S221: YES) (S227).

次に、ドライバ画像処理モジュール28Eは、S216で記憶した原稿スキャンデータ71、即ち、二値化処理(S217)によってモノクロ化する前の原稿スキャンデータ71をメモリ14から読み出し、第2画像処理を実行する(S229)。上記したように、ドライバ画像処理モジュール28Eは、S229において、ユーザに選択された実行可能画像処理97のうち、第2群画像処理96に含まれるものを実行する。これにより、仮に、バーコードの検出処理に影響を与える画像処理(文字補正処理など)がユーザに選択された場合であっても、その選択された画像処理をバーコードの検出処理後に実行することで、検出精度の低下を抑制できる。例えば、仮に、アプリケーションプログラム26のOCR処理の精度を上げるために、ユーザが文字補正処理やノイズ除去処理を選択したとしても、それらの処理がバーコードの検出処理後に実行される。これにより、ユーザは、選択する画像処理がバーコードの検出処理に与える影響を考える必要がなく、所望の実行可能画像処理97を任意に選択できる。 Next, the driver image processing module 28E reads the document scan data 71 stored in S216, that is, the document scan data 71 before monochrome conversion by the binarization process (S217) from the memory 14, and executes the second image process. (S229). As described above, in S229, the driver image processing module 28E executes the executable image processing 97 selected by the user, which is included in the second group image processing 96. As a result, even if an image process (character correction process, etc.) that affects the barcode detection process is selected by the user, the selected image process is executed after the barcode detection process. Therefore, it is possible to suppress a decrease in detection accuracy. For example, even if the user selects character correction processing or noise removal processing in order to improve the accuracy of the OCR processing of the application program 26, those processings are executed after the barcode detection processing. As a result, the user does not need to consider the influence of the selected image processing on the barcode detection processing, and can arbitrarily select the desired executable image processing 97.

次に、ドライバ画像処理モジュール28Eは、図4に示すスケール変換処理と同様に、上記したS213で検出した色のスケールに基づいて、第2画像処理後の原稿スキャンデータ71を対象にスケール変換処理を実行する(S231)。次に、ドライバ画像処理モジュール28Eは、スケール変換処理を実行した原稿スキャンデータ71を対象として、その他の処理を実行する(S233)。ここでいうその他の処理とは、原稿スキャンデータ71に対して実行することで有益な処理であり、例えば、ユーザによる選択を受け付けずに強制的に実行する処理である。その他の処理としては、例えば、原稿後端自動検知処理、原稿ふち補正処理、向き自動判別処理がある。原稿後端自動検知処理は、例えば、スキャンパラメータとしてA4サイズを指定されたにも係わらず、A4サイズに比べて小さい原稿が読み込まれた場合、原稿スキャンデータ71をA4のサイズにするように、原稿の後端の足りない部分に白色の画像を追加する処理である。原稿ふち補正処理は、原稿スキャンデータ71に含まれる原稿(ページ)の外周を、所定の色(白色や黒色)で塗りつぶす処理である。向き自動判別処理は、原稿スキャンデータ71の原稿の向きを検出する処理である。 Next, the driver image processing module 28E performs scale conversion processing on the original scan data 71 after the second image processing based on the color scale detected in S213 described above, similarly to the scale conversion processing shown in FIG. Is executed (S231). Next, the driver image processing module 28E executes other processing on the document scan data 71 that has been subjected to the scale conversion processing (S233). The other processing referred to here is a processing that is useful to be executed on the document scan data 71, and is, for example, a processing that is forcibly executed without accepting the selection by the user. Other processes include, for example, document rear edge automatic detection process, document edge correction process, and orientation automatic determination process. For example, in the document rear edge automatic detection process, when a document smaller than A4 size is read even though A4 size is specified as a scan parameter, the document scan data 71 is set to A4 size. This is a process of adding a white image to the missing part at the rear end of the document. The document edge correction process is a process of filling the outer periphery of the document (page) included in the document scan data 71 with a predetermined color (white or black). The orientation automatic determination process is a process for detecting the orientation of the document in the document scan data 71.

ドライバ画像処理モジュール28Eは、S233を実行し図7の処理を終了させると、その他の画像処理が終了した原稿スキャンデータ71と、S219で検出したバーコード情報を、ドライバメイン処理モジュール28Bへ出力する。この処理は、図3のS143の処理に対応する。上記したように、ドライバメイン処理モジュール28Bは、アプリケーションプログラム26からバーコード情報の問い合わせを受け取ると、アプリケーションプログラム26に対してバーコード情報を出力する(図3のS155)。そして、アプリケーションプログラム26は、ドライバメイン処理モジュール28Bから受け取ったスキャンデータD1及びバーコード情報を用いた所定の処理を実行する(S157)。これにより、アプリケーションプログラム26は、高い検出精度で検出されたバーコード情報を取得でき、所定の処理(バーコードが示すデータの記憶先へのアクセなど)を精度良く実行できる。 When the driver image processing module 28E executes S233 and ends the processing of FIG. 7, the driver image processing module 28E outputs the document scan data 71 for which other image processing has been completed and the barcode information detected in S219 to the driver main processing module 28B. .. This process corresponds to the process of S143 in FIG. As described above, when the driver main processing module 28B receives the inquiry of the barcode information from the application program 26, the driver main processing module 28B outputs the barcode information to the application program 26 (S155 in FIG. 3). Then, the application program 26 executes a predetermined process using the scan data D1 and the barcode information received from the driver main processing module 28B (S157). As a result, the application program 26 can acquire the bar code information detected with high detection accuracy, and can accurately execute a predetermined process (access to the storage destination of the data indicated by the bar code, etc.).

一方で、ドライバ画像処理モジュール28Eは、図7のS221において、正常にバーコードを検出できなかった場合(S221:NO)、ループL1を3回連続して実行したか否かを判断する(S223)。ここでいうループL1とは、図7に破線で示すように、S217、S219、S221、S223、S225を繰り返し実行する処理である。ループL1の詳細は後述する。 On the other hand, when the bar code cannot be detected normally in S221 of FIG. 7 (S221: NO), the driver image processing module 28E determines whether or not the loop L1 is executed three times in succession (S223). ). The loop L1 referred to here is a process of repeatedly executing S217, S219, S221, S223, and S225, as shown by a broken line in FIG. 7. The details of the loop L1 will be described later.

ドライバ画像処理モジュール28Eは、ループL1を3回連続で実行していないと判断した場合(S223:NO)、S217の二値化処理で用いるパラメータ(以下、二値化パラメータという)を調整する(S225)。ドライバ画像処理モジュール28Eは、例えば、S217の二値化処理において白色か黒色かを判断するための基準となる二値化パラメータ(色のビット値など)を変更する(S225)。ドライバ画像処理モジュール28Eは、S225で二値化パラメータを調整した後、S217において、改めてメモリ14から読み出した原稿スキャンデータ71を対象に、調整後の二値化パラメータに基づいて二値化処理を実行する。これにより、バーコードの検出精度の向上が期待できる。ドライバ画像処理モジュール28Eは、S217、S219の処理を再度実行し、S221の判断処理を実行する。即ち、S223のループL1を判断する処理は、バーコード検出処理が3回連続して失敗されるまで繰り返し実行される。 When it is determined that the loop L1 is not executed three times in a row (S223: NO), the driver image processing module 28E adjusts a parameter (hereinafter referred to as a binarization parameter) used in the binarization process of S217 (hereinafter referred to as a binarization parameter). S225). The driver image processing module 28E changes, for example, a binarization parameter (such as a color bit value) that serves as a reference for determining whether the product is white or black in the binarization process of S217 (S225). The driver image processing module 28E adjusts the binarization parameter in S225, and then performs the binarization process in S217 based on the adjusted binarization parameter for the document scan data 71 read from the memory 14 again. Execute. As a result, improvement in barcode detection accuracy can be expected. The driver image processing module 28E re-executes the processes of S217 and S219, and executes the determination process of S221. That is, the process of determining the loop L1 of S223 is repeatedly executed until the bar code detection process fails three times in a row.

ドライバ画像処理モジュール28Eは、ループL1を3回連続で実行した、即ち、バーコードの検出処理に3回失敗したと判断した場合(S223:YES)、S227以降の処理を実行する。この場合、ドライバ画像処理モジュール28Eは、バーコード情報として、検出できなかったことを示す設定をする(S227)。 When the driver image processing module 28E determines that the loop L1 is executed three times in a row, that is, the bar code detection process has failed three times (S223: YES), the driver image processing module 28E executes the processes after S227. In this case, the driver image processing module 28E sets the bar code information to indicate that it could not be detected (S227).

なお、図7に示す処理の内容や順番は、一例であり、適宜変更可能である。例えば、ドライバ画像処理モジュール28Eは、S217の二値化処理や、それに関連するS223,S225の処理を実行しなくとも良い。この場合、ドライバ画像処理モジュール28Eは、バーコードの検出の判断(S221)を一回だけ実行することとなる。 The contents and order of the processes shown in FIG. 7 are examples and can be changed as appropriate. For example, the driver image processing module 28E does not have to execute the binarization process of S217 and the related processes of S223 and S225. In this case, the driver image processing module 28E executes the determination of barcode detection (S221) only once.

また、図7に示す例では、図6の選択画面91においてユーザが個別に選択した実行可能画像処理97を対象として、バーコードの検出処理の前に実行すべきか否かを判断した。しかしながら、例えば、ドライバ画像処理モジュール28Eは、ユーザが選択した処理に含まれる画像処理を対象として、バーコードの検出処理の前に実行すべきか否かを判断しても良い。例えば、アプリケーションプログラム26においてユーザがOCR処理の精度を選択し、その選択結果に応じて実行する画像処理が自動的に決定される場合、ドライバ画像処理モジュール28Eは、その自動的に決定された画像処理群に含まれる画像処理を対象に、バーコードの検出処理の前に実行すべきか否かを判断してもよい。 Further, in the example shown in FIG. 7, it was determined whether or not the executable image processing 97 individually selected by the user on the selection screen 91 of FIG. 6 should be executed before the barcode detection processing. However, for example, the driver image processing module 28E may determine whether or not the image processing included in the processing selected by the user should be executed before the barcode detection processing. For example, when the user selects the accuracy of OCR processing in the application program 26 and the image processing to be executed is automatically determined according to the selection result, the driver image processing module 28E uses the automatically determined image. For the image processing included in the processing group, it may be determined whether or not the image processing should be executed before the barcode detection processing.

また、上記した例では、カラーの原稿スキャンデータ71を対象に画像処理を行う場合について説明したが、他のカラースケールの原稿スキャンデータ71を対象に画像処理を実行する場合は、第1画像処理(S215)の内容を適宜変更しても良い。例えば、モノクロスケールの原稿スキャンデータ71の場合には、第1画像処理として、エッジ強調処理、モノクロ化レベル調整処理を実行しても良い。 Further, in the above example, the case where the image processing is performed on the color document scan data 71 has been described, but when the image processing is performed on the document scan data 71 of another color scale, the first image processing is performed. The content of (S215) may be changed as appropriate. For example, in the case of monochrome scale document scan data 71, edge enhancement processing and monochrome level adjustment processing may be executed as the first image processing.

また、スキャンパラメータとしてモノクロスケールが設定された場合、ユーザは、モノクロスケールの原稿スキャンデータ71の出力を望んでいる。この場合、二値化処理後(モノクロ化後)の原稿スキャンデータ71を、そのままS229以降の処理に用いて、出力データとして用いることが可能となる。これにより、第2画像処理を開始する前に、S216で記憶した二値化処理(S217)前の原稿スキャンデータ71をメモリ14から読み出す必要がなくなり、二値化処理(S217)及びバーコード検出処理(S221)を実行した後の原稿スキャンデータ71を用いて、第2画像処理を迅速に開始できる。 Further, when the monochrome scale is set as the scan parameter, the user wants to output the monochrome scale document scan data 71. In this case, the document scan data 71 after the binarization process (after monochrome conversion) can be used as it is for the processing after S229 and can be used as output data. As a result, it is not necessary to read the original scan data 71 before the binarization process (S217) stored in S216 from the memory 14 before starting the second image processing, and the binarization process (S217) and the barcode detection The second image processing can be started quickly by using the document scan data 71 after the processing (S221) is executed.

<検出精度として「高精度」が設定された場合>
次に、図5に示す設定欄86の検出精度として「高精度」が設定された場合の画像処理の流れについて、図8を用いて説明する。なお、以下の説明では、上記した図7と同様の内容については、同一符号を付し、その説明を適宜省略する。
<When "high accuracy" is set as the detection accuracy>
Next, the flow of image processing when "high accuracy" is set as the detection accuracy of the setting field 86 shown in FIG. 5 will be described with reference to FIG. In the following description, the same contents as those in FIG. 7 will be designated by the same reference numerals, and the description thereof will be omitted as appropriate.

検出精度として「高精度」が設定された場合、ドライバ画像処理モジュール28Eは、ユーザの選択内容に係わらず、バーコードの検出に有益な第1群画像処理95の全て(ただし、カラースケールに応じて実行可能な処理)を、バーコードの検出処理(S219)の前に第1画像処理として実行する(図8のS243)。また、ドライバ画像処理モジュール28Eは、ユーザによって選択された実行可能画像処理97の全てを、バーコードの検出処理(S219)の後に第2画像処理として実行する(S245)。 When "high accuracy" is set as the detection accuracy, the driver image processing module 28E uses all of the first group image processing 95 useful for detecting barcodes (however, depending on the color scale) regardless of the user's selection. Is executed as the first image processing before the barcode detection processing (S219) (S243 in FIG. 8). Further, the driver image processing module 28E executes all of the executable image processing 97 selected by the user as the second image processing after the barcode detection processing (S219) (S245).

詳述すると、まず、ドライバ画像処理モジュール28Eは、図8のS211の原稿検知処理、S213の白紙検知処・スケール検知処理を実行する。次に、ドライバ画像処理モジュール28Eは、S213の画像処理を実行した原稿スキャンデータ71をメモリ14に記憶する(S241)。 More specifically, first, the driver image processing module 28E executes the document detection process of S211 in FIG. 8 and the blank page detection process / scale detection process of S213. Next, the driver image processing module 28E stores the document scan data 71 that has executed the image processing of S213 in the memory 14 (S241).

次に、ドライバ画像処理モジュール28Eは、S243において、メモリ14に記憶したスケール検知処理後の原稿スキャンデータ71を読み出し、読み出した原稿スキャンデータ71を対象に、第1画像処理を実行する。上記したように、ドライバ画像処理モジュール28Eは、S243において、第1群画像処理95の全てを実行する。例えば、スキャンパラメータとして24bitのカラースケールが設定されていた場合、ドライバ画像処理モジュール28Eは、第1画像処理として、パンチ穴除去処理、地色・裏移り色除去処理、カラートーン調整処理、カラードロップアウト処理、エッジ強調処理を全て実行する。これにより、ユーザによって高精度が選択された場合に、その要望に応えてバーコードの検出精度をより確実に向上することができる。 Next, in S243, the driver image processing module 28E reads out the document scan data 71 after the scale detection process stored in the memory 14, and executes the first image processing on the read document scan data 71. As described above, the driver image processing module 28E executes all of the first group image processing 95 in S243. For example, when a 24-bit color scale is set as a scan parameter, the driver image processing module 28E performs punch hole removal processing, background color / set-off color removal processing, color tone adjustment processing, and color drop as the first image processing. Executes all out processing and edge enhancement processing. As a result, when high accuracy is selected by the user, the barcode detection accuracy can be more reliably improved in response to the request.

次に、ドライバ画像処理モジュール28Eは、S243の第1画像処理を実行した原稿スキャンデータ71を対象に二値化処理を実行し(S217)、二値化した原稿スキャンデータ71からバーコードを検出する(S219)。ドライバ画像処理モジュール28Eは、S219において正常にバーコードを検出できたか否かを判断する(S221)。ドライバ画像処理モジュール28Eは、正常にバーコードを検出できたことに応じて(S221:YES)、検出したバーコードに係わるバーコード情報をメモリ14に記憶する(S227)。 Next, the driver image processing module 28E executes binarization processing on the original scan data 71 that has executed the first image processing of S243 (S217), and detects a barcode from the binarized original scan data 71. (S219). The driver image processing module 28E determines whether or not the barcode can be normally detected in S219 (S221). The driver image processing module 28E stores the barcode information related to the detected barcode in the memory 14 according to the fact that the barcode can be detected normally (S221: YES) (S227).

次に、ドライバ画像処理モジュール28Eは、S241で記憶した、即ち、第1画像処理(S217)前の原稿スキャンデータ71をメモリ14から読み出し、第2画像処理を実行する(S245)。上記したように、ドライバ画像処理モジュール28Eは、ユーザによって選択された実行可能画像処理97の全てを実行する(S245)。これにより、バーコードの検出処理に影響を与える画像処理をバーコードの検出処理後に実行することで、検出精度の低下を抑制することができる。従って、ユーザの選択に係わらず、上記したS243の第1画像処理で実行可能な第1群画像処理95のすべてを実行する。その一方で、出力する原稿スキャンデータ71に対しては、S245の第2画像処理において、ユーザによって選択された実行可能画像処理97を実行する。そして、ドライバ画像処理モジュール28Eは、第2画像処理後の原稿スキャンデータ71を対象にスケール変換処理(S231)を実行し、スケール変換処理を実行した原稿スキャンデータ71を対象にその他の処理を実行する(S233)。 Next, the driver image processing module 28E reads the document scan data 71 stored in S241, that is, before the first image processing (S217) from the memory 14, and executes the second image processing (S245). As described above, the driver image processing module 28E executes all of the executable image processing 97 selected by the user (S245). As a result, it is possible to suppress a decrease in detection accuracy by executing image processing that affects the barcode detection process after the barcode detection process. Therefore, regardless of the user's selection, all of the first group image processing 95 that can be executed in the first image processing of S243 described above is executed. On the other hand, the output document scan data 71 is subjected to the executable image processing 97 selected by the user in the second image processing of S245. Then, the driver image processing module 28E executes the scale conversion process (S231) on the document scan data 71 after the second image processing, and executes other processing on the document scan data 71 on which the scale conversion process has been executed. (S233).

一方で、ドライバ画像処理モジュール28Eは、S221において、正常にバーコードを検出できなかった場合(S221:NO)、ループL1を5回連続して実行したか否かを判断する(S223)。ここでいうループL1とは、図8に示すS217、S219、S221、S223、S225を繰り返し実行する処理である。ドライバ画像処理モジュール28Eは、ループL1を5回連続で実行していないと判断した場合(S223:YES)、二値化パラメータを調整し(S225)、S217以降の処理を実行する。従って、高精度の場合、ドライバ画像処理モジュール28Eは、バーコード検出処理を5回連続して失敗するまで繰り返し実行する。これにより、図7に示す「早い」を設定された場合に比べて、二値化パラメータの調整処理の回数を多くする。その結果、二値化パラメータの調整によってバーコードを検出する可能性が高くなる。 On the other hand, when the driver image processing module 28E cannot normally detect the barcode in S221 (S221: NO), the driver image processing module 28E determines whether or not the loop L1 has been executed five times in succession (S223). The loop L1 referred to here is a process of repeatedly executing S217, S219, S221, S223, and S225 shown in FIG. When it is determined that the loop L1 is not executed five times in a row (S223: YES), the driver image processing module 28E adjusts the binarization parameter (S225) and executes the processing after S217. Therefore, in the case of high accuracy, the driver image processing module 28E repeatedly executes the barcode detection process five times in a row until it fails. As a result, the number of times of the binarization parameter adjustment process is increased as compared with the case where “fast” is set as shown in FIG. As a result, it is more likely that the barcode will be detected by adjusting the binarization parameters.

また、ドライバ画像処理モジュール28Eは、ループL1を5回連続で実行したと判断した場合(S223:NO)、ループL2を3回実行したか否かを判断する(S247)。ここでいうループL2とは、図8に示すS243、S217、S219、S221、S223、S247、S249を繰り返し実行する処理である。ドライバ画像処理モジュール28Eは、ループL2を3回実行していないと判断した場合(S247:YES)、S243で実行するカラートーン調整処理のパラメータ(以下、トーン調整パラメータという)を調整する(S249)。ドライバ画像処理モジュール28Eは、S249でトーン調整パラメータを調整した後、S243(第1画像処理)以降の処理を実行する。ドライバ画像処理モジュール28Eは、S243において、改めてメモリ14から読み出した原稿スキャンデータ71を対象に、調整後のトーン調整パラメータに基づいてカラートーン調整処理を実行する。また、ドライバ画像処理モジュール28Eは、第1群画像処理95に含まれる他の画像処理(パンチ穴除去処理など)を実行する。 Further, when the driver image processing module 28E determines that the loop L1 has been executed five times in a row (S223: NO), the driver image processing module 28E determines whether or not the loop L2 has been executed three times (S247). The loop L2 referred to here is a process of repeatedly executing S243, S217, S219, S221, S223, S247, and S249 shown in FIG. When the driver image processing module 28E determines that the loop L2 has not been executed three times (S247: YES), the driver image processing module 28E adjusts the parameters of the color tone adjustment processing executed in S243 (hereinafter referred to as tone adjustment parameters) (S249). .. The driver image processing module 28E executes the processing after S243 (first image processing) after adjusting the tone adjustment parameter in S249. In S243, the driver image processing module 28E executes color tone adjustment processing based on the adjusted tone adjustment parameters for the document scan data 71 read from the memory 14 again. Further, the driver image processing module 28E executes other image processing (punching hole removing processing, etc.) included in the first group image processing 95.

本実施形態のドライバ画像処理モジュール28Eは、S249におけるパラメータ調整を最大で3回実行する。ドライバ画像処理モジュール28Eは、例えば、1回目のS249の処理として、コントラストを大きくするトーン調整パラメータを設定する。これにより、S243のカラートーン調整処理においてバーコードを他の画像に比べて浮き出させて、バーコードの検出精度を向上できる。また、ドライバ画像処理モジュール28Eは、例えば、2回目のS249の処理として、コントラストを小さくするトーン調整パラメータを設定する。これにより、S243のカラートーン調整処理においてバーコード以外の不要な文字等をぼかして、バーコードの検出精度を向上できる。また、ドライバ画像処理モジュール28Eは、例えば、3回目のS249の処理として、ハイライトを小さくするトーン調整パラメータを設定する。これにより、S243のカラートーン調整処理においてバーコード以外の不要な文字等を白飛びさせて、バーコードの検出精度を向上できる。なお、S249のトーン調整パラメータの調整は、上記した内容に限定されない。また、上記したループL1を実行する回数やループL2を実行する回数は、一例であり、適宜変更可能である。 The driver image processing module 28E of the present embodiment executes the parameter adjustment in S249 up to three times. The driver image processing module 28E sets, for example, a tone adjustment parameter for increasing the contrast as the first processing of S249. As a result, in the color tone adjustment process of S243, the barcode can be made to stand out as compared with other images, and the detection accuracy of the barcode can be improved. Further, the driver image processing module 28E sets a tone adjustment parameter for reducing the contrast, for example, as the second processing of S249. As a result, in the color tone adjustment process of S243, unnecessary characters other than the barcode can be blurred to improve the detection accuracy of the barcode. Further, the driver image processing module 28E sets a tone adjustment parameter for reducing the highlight as, for example, the third processing of S249. As a result, in the color tone adjustment process of S243, unnecessary characters other than the barcode are overexposed, and the detection accuracy of the barcode can be improved. The adjustment of the tone adjustment parameter of S249 is not limited to the above contents. Further, the number of times the loop L1 is executed and the number of times the loop L2 is executed are examples, and can be changed as appropriate.

また、ドライバ画像処理モジュール28Eは、S247において、ループL2を3回実行したと判断した場合(S249:NO)、S227以降の処理を実行する。従って、ドライバ画像処理モジュール28Eは、S243から再度実行する処理(ループL2)を3回実行してもバーコードを検知できない場合(S219を合計で15回実行した場合)、バーコード情報として検出できなかったことを示す設定をする(S227)。 Further, when the driver image processing module 28E determines in S247 that the loop L2 has been executed three times (S249: NO), the driver image processing module 28E executes the processing after S227. Therefore, the driver image processing module 28E can detect the barcode as the barcode information when the barcode cannot be detected even if the process (loop L2) to be executed again from S243 is executed three times (when S219 is executed 15 times in total). Make a setting indicating that there was no such thing (S227).

<検出精度として「普通」が選択された場合>
次に、図5に示す設定欄86の検出精度として「普通」が設定された場合の画像処理の流れについて、図9を用いて説明する。なお、以下の説明では、上記した図8と同様の内容については、同一符号を付し、その説明を適宜省略する。
<When "normal" is selected as the detection accuracy>
Next, the flow of image processing when "normal" is set as the detection accuracy of the setting field 86 shown in FIG. 5 will be described with reference to FIG. In the following description, the same contents as those in FIG. 8 described above are designated by the same reference numerals, and the description thereof will be omitted as appropriate.

図9に示すように、検出精度として「普通」が設定された場合、ドライバ画像処理モジュール28Eは、図8におけるS247及びS249を実行しない。詳述すると、ドライバ画像処理モジュール28Eは、S223において、ループL1を5回連続で実行したと判断した場合(S223:NO)、S227以降の処理を実行する。即ち、検出精度として「普通」が設定された場合、ドライバ画像処理モジュール28Eは、二値化パラメータを5回調整するものの、トーン調整パラメータの調整は実行しない。これにより、図7に示す検出精度が「早い」場合に比べてバーコードの検出精度の向上が期待できる。また、バーコードが検出できない場合に、図8に示す「高精度」に比べて処理を迅速に終了できる。 As shown in FIG. 9, when “normal” is set as the detection accuracy, the driver image processing module 28E does not execute S247 and S249 in FIG. More specifically, when the driver image processing module 28E determines in S223 that the loop L1 has been executed five times in a row (S223: NO), the driver image processing module 28E executes the processing after S227. That is, when "normal" is set as the detection accuracy, the driver image processing module 28E adjusts the binarization parameter five times, but does not adjust the tone adjustment parameter. As a result, improvement in barcode detection accuracy can be expected as compared with the case where the detection accuracy shown in FIG. 7 is “fast”. Further, when the barcode cannot be detected, the process can be completed more quickly than the "high accuracy" shown in FIG.

上記したように、本実施形態のドライバ画像処理モジュール28Eでは、実行可能画像処理97(複数の画像処理の一例)のうち、予め設定された第1群画像処理95(第1群の画像処理)をバーコードの検出処理(S219)の前に実行する。このため、第1群画像処理95として、バーコードデータの検出精度を上げる処理など、検出処理に有益な処理を事前に実行することができる。これにより、各種の処理の実行タイミングを設定することで、バーコードデータの検出処理を適切に実行できる。 As described above, in the driver image processing module 28E of the present embodiment, among the executable image processing 97 (an example of a plurality of image processing), the preset first group image processing 95 (first group image processing). Is executed before the bar code detection process (S219). Therefore, as the first group image processing 95, processing useful for the detection processing, such as a processing for improving the detection accuracy of the barcode data, can be executed in advance. As a result, the barcode data detection process can be appropriately executed by setting the execution timing of various processes.

因みに、LCD16、入力I/F18は、ユーザインタフェースの一例である。PC10は、情報処理装置の一例である。スキャナドライバ28は、制御プログラムの一例である。ドライバメイン処理モジュール28Bは、第1取得手段、出力手段の一例である。ドライバUIモジュール28Dは、第1受付手段、第1特定手段、第2特定手段の一例である。ドライバ画像処理モジュール28Eは、第1実行手段、検出手段、第2実行手段、出力手段の一例である。 Incidentally, the LCD 16 and the input I / F 18 are examples of the user interface. The PC 10 is an example of an information processing device. The scanner driver 28 is an example of a control program. The driver main processing module 28B is an example of the first acquisition means and the output means. The driver UI module 28D is an example of the first receiving means, the first specifying means, and the second specifying means. The driver image processing module 28E is an example of a first execution means, a detection means, a second execution means, and an output means.

<実施例の効果>
上記した実施形態によれば、以下の効果を奏する。
<Effect of Examples>
According to the above-described embodiment, the following effects are obtained.

前記第1実行手段は、前記第1画像処理として、前記対象画像処理に含まれ、且つ前記第1群の画像処理に含まれる処理を実行し、前記第2実行手段は、前記第2画像処理として、前記対象画像処理に含まれ、且つ前記第1群の画像処理とは異なる処理を実行する。これにより、第1操作入力に基づいて特定された対象画像処理に含まれ、且つバーコードデータの検出処理に有益な処理を、第1画像処理として事前に実行することができる。 The first executing means executes the processing included in the target image processing and included in the image processing of the first group as the first image processing, and the second executing means performs the second image processing. As a result, processing that is included in the target image processing and is different from the image processing of the first group is executed. Thereby, the processing included in the target image processing specified based on the first operation input and useful for the barcode data detection processing can be executed in advance as the first image processing.

前記第2実行手段は、前記第1実行手段により前記第1画像処理が実行された前記スキャンデータに、前記第2画像処理を実行する。これにより、第2実行手段は、第1実行手段の処理結果を利用して、処理の効率化、高速化を図ることができる。 The second execution means executes the second image processing on the scan data in which the first image processing is executed by the first execution means. As a result, the second executing means can improve the efficiency and speed of the processing by utilizing the processing result of the first executing means.

前記第1実行手段は、前記第1画像処理として、前記第1群の画像処理のうち実行可能な処理の全てを実行し、前記第2実行手段は、前記第2画像処理として、前記対象画像処理の全てを実行する。これにより、第1操作入力の内容に係わらず、バーコードデータの検出処理に有益な全ての処理を、第1画像処理として実行することで、バーコードの検出精度の向上などを確実に図ることができる。 The first executing means executes all of the feasible processing among the image processing of the first group as the first image processing, and the second executing means performs the target image as the second image processing. Perform all processing. As a result, regardless of the content of the first operation input, all the processing useful for the barcode data detection processing is executed as the first image processing, thereby surely improving the barcode detection accuracy and the like. Can be done.

前記第2実行手段は、前記第1取得手段により取得された前記スキャンデータに、前記第2画像処理を実行する。これにより、第2実行手段は、第1実行手段によって第1画像処理が実行される前のスキャンデータを用いる。このため、第2実行手段は、第1実行手段による第1画像処理の影響を受けずに、第2画像処理を実行できる。 The second execution means executes the second image processing on the scan data acquired by the first acquisition means. As a result, the second execution means uses the scan data before the first image processing is executed by the first execution means. Therefore, the second execution means can execute the second image processing without being affected by the first image processing by the first execution means.

前記第1画像処理は、前記検出手段による前記バーコードデータを検出する処理の精度を上げる処理である。これにより、バーコードの検出処理の前に、第1画像処理を実行することで、バーコードの検出精度を向上できる。 The first image processing is a processing for improving the accuracy of the processing for detecting the barcode data by the detecting means. As a result, the barcode detection accuracy can be improved by executing the first image processing before the barcode detection processing.

前記第1実行手段は、前記第1画像処理として、パンチ穴除去処理、地色・裏移り色除去処理、カラートーン調整処理、カラードロップアウト処理、エッジ強調処理、モノクロ化レベル調整処理、誤差拡散グレー濃淡調整処理のうち、少なくとも1つの処理を実行し、前記第2実行手段は、前記第2画像処理として、文字補正処理、ノイズ除去処理、及び罫線除去処理のうち、少なくとも1つの処理を実行する。これにより、バーコードの検出処理に有益な処理を第1画像処理として、バーコードの検出処理に影響を与える虞がある処理を第2画像処理として適切に設定できる。 The first execution means, as the first image processing, includes punch hole removal processing, background color / set-off color removal processing, color tone adjustment processing, color dropout processing, edge enhancement processing, monochrome level adjustment processing, and error diffusion. At least one of the gray shading adjustment processes is executed, and the second execution means executes at least one of the character correction process, the noise removal process, and the ruled line removal process as the second image process. To do. Thereby, the processing useful for the barcode detection processing can be appropriately set as the first image processing, and the processing that may affect the barcode detection processing can be appropriately set as the second image processing.

当該制御プログラムは、アプリケーションプログラムにより前記スキャンデータを処理する命令を受け付け、前記出力手段は、前記検出手段により検出された前記バーコードデータと、前記第2実行手段により前記第2画像処理が実行された前記スキャンデータとを、前記アプリケーションプログラムに出力する。これにより、バーコードデータを必要とするアプリケーションプログラムに対し、バーコードを精度良く検出して出力できる。 The control program receives an instruction to process the scan data by the application program, and the output means executes the bar code data detected by the detection means and the second image processing by the second execution means. The scan data is output to the application program. As a result, the barcode can be detected and output with high accuracy for the application program that requires the barcode data.

前記コンピュータを、前記検出手段による前記バーコードデータの検出において要求される検出精度を特定する第2特定手段として機能させ、前記第1実行手段は、前記第2特定手段により特定した前記検出精度が高いことに応じて、前記第1取得手段により取得された前記スキャンデータに、前記第1群の画像処理のうち実行可能な処理の全てを実行し、前記第2特定手段により取得した前記検出精度が低いことに応じて、前記第1取得手段により取得された前記スキャンデータに、前記対象画像処理に含まれ、且つ前記第1群の画像処理に含まれる処理を実行する。これにより、要求される検出精度が高い場合、バーコードの検出処理に有益な処理を全て実行し、検出精度を高めることができる。また、要求される検出精度が低い場合、対象画像処理に含まれる処理のみを実行し、処理結果を迅速に出力できる。従って、要求される検出精度に応じた適切な処理が実行できる。 The computer is made to function as a second specific means for specifying the detection accuracy required for detecting the barcode data by the detection means, and the first execution means has the detection accuracy specified by the second specific means. Depending on the higher value, the scan data acquired by the first acquisition means is subjected to all of the feasible processing of the image processing of the first group, and the detection accuracy acquired by the second specific means. The scan data acquired by the first acquisition means is included in the target image processing and is included in the image processing of the first group according to the low value. As a result, when the required detection accuracy is high, all the processes useful for the barcode detection process can be executed and the detection accuracy can be improved. Further, when the required detection accuracy is low, only the processing included in the target image processing can be executed, and the processing result can be output quickly. Therefore, appropriate processing can be executed according to the required detection accuracy.

また、本発明は、上記実施形態に限定されるものではなく、当業者の知識に基づいて種々の変更、改良を施した種々の態様で実施することが可能である。
具体的には、例えば、上記実施形態では、PC10のスキャナドライバ28が、第1画像処理などを実行したが、スキャナ50のプログラム61が第1画像処理などを実行しても良い。この場合、スキャナ50は、本願の情報処理装置の一例である。また、プログラム61は、本願の制御プログラムの一例である。
また、上記実施形態では、CPU12によってPC10側の処理が実行される例を説明したが、これに限らない。PC10は、図7に示す第1画像処理などを、CPU12に限らず、ASICや他の論理集積回路により実行しても良いし、CPU等やASIC、他の論理集積回路を協働させて実行しても良い。
また、本願のコントローラは、PC10のCPU12だけに限らず、スキャナ50のCPU52でも良く、あるいは、CPU12とCPU52とを協働させて処理する構成でも良い。
Further, the present invention is not limited to the above-described embodiment, and can be implemented in various embodiments with various modifications and improvements based on the knowledge of those skilled in the art.
Specifically, for example, in the above embodiment, the scanner driver 28 of the PC 10 executes the first image processing and the like, but the program 61 of the scanner 50 may execute the first image processing and the like. In this case, the scanner 50 is an example of the information processing device of the present application. The program 61 is an example of the control program of the present application.
Further, in the above embodiment, an example in which the processing on the PC 10 side is executed by the CPU 12 has been described, but the present invention is not limited to this. The PC 10 may execute the first image processing shown in FIG. 7 not only by the CPU 12 but also by an ASIC or another logical integrated circuit, or may execute the first image processing or the like in cooperation with the CPU or the like, the ASIC, or another logical integrated circuit. You may.
Further, the controller of the present application is not limited to the CPU 12 of the PC 10, but may be the CPU 52 of the scanner 50, or may be configured to process the CPU 12 and the CPU 52 in cooperation with each other.

1 スキャンシステム、10 PC、16 LCD、18 入力I/F、28 スキャナドライバ、28B ドライバメイン処理モジュール、28D ドライバUIモジュール、28E ドライバ画像処理モジュール 1 Scan system, 10 PC, 16 LCD, 18 input I / F, 28 scanner driver, 28B driver main processing module, 28D driver UI module, 28E driver image processing module

Claims (12)

ユーザインタフェースを備えた情報処理装置のコンピュータが読み取り可能な制御プログラムであって、
前記コンピュータを、
前記ユーザインタフェースを介して第1操作入力を受け付ける第1受付手段と、
前記第1受付手段が受け付けた前記第1操作入力に基づいて、複数の画像処理のうちから、対象画像処理を特定する第1特定手段と、
スキャンデータを取得する第1取得手段と、
前記第1取得手段により取得された前記スキャンデータに、第1画像処理を実行する第1実行手段として機能させ、前記第1画像処理は、前記複数の画像処理のうち、予め定められた第1群の画像処理であり、
前記コンピュータを、
前記第1実行手段により前記第1画像処理が実行された前記スキャンデータから、バーコードを示す画像データであるバーコードデータを検出する検出手段と、
前記第1取得手段により取得された前記スキャンデータに基づいて、第2画像処理を実行する第2実行手段として機能させ、前記第2画像処理は、前記第1特定手段が特定した前記対象画像処理に含まれる画像処理であり、
前記コンピュータを、
前記検出手段により検出された前記バーコードデータと、前記第2実行手段により前記第2画像処理が実行された前記スキャンデータとを出力する出力手段と、
して機能させ
前記第2実行手段は、
前記第1実行手段により前記第1画像処理が実行された前記スキャンデータに、前記第2画像処理を実行することを特徴とする制御プログラム。
A computer-readable control program for an information processing device equipped with a user interface.
The computer
A first receiving means for receiving a first operation input via the user interface,
Based on the first operation input received by the first receiving means, the first specifying means for specifying the target image processing from the plurality of image processing and the first specifying means.
The first acquisition method for acquiring scan data and
The scan data acquired by the first acquisition means is made to function as a first execution means for executing the first image processing, and the first image processing is a predetermined first of the plurality of image processes. Image processing of groups,
The computer
A detection means for detecting bar code data, which is image data indicating a bar code, from the scan data in which the first image processing is executed by the first execution means.
Based on the scan data acquired by the first acquisition means, the second image processing is made to function as a second execution means for executing the second image processing, and the second image processing is the target image processing specified by the first specific means. Image processing included in
The computer
An output means for outputting the barcode data detected by the detection means and the scan data for which the second image processing has been executed by the second execution means.
And it is made to function,
The second executing means is
Wherein the scan data to which the first image processing is executed by the first execution means, a control program which is characterized that you execute the second image processing.
ユーザインタフェースを備えた情報処理装置のコンピュータが読み取り可能な制御プログラムであって、 A computer-readable control program for an information processing device equipped with a user interface.
前記コンピュータを、 The computer
前記ユーザインタフェースを介して第1操作入力を受け付ける第1受付手段と、 A first receiving means for receiving a first operation input via the user interface,
前記第1受付手段が受け付けた前記第1操作入力に基づいて、複数の画像処理のうちから、対象画像処理を特定する第1特定手段と、 Based on the first operation input received by the first receiving means, the first specifying means for specifying the target image processing from the plurality of image processing and the first specifying means.
スキャンデータを取得する第1取得手段と、 The first acquisition method for acquiring scan data and
前記第1取得手段により取得された前記スキャンデータに、第1画像処理を実行する第1実行手段として機能させ、前記第1画像処理は、前記複数の画像処理のうち、予め定められた第1群の画像処理であり、 The scan data acquired by the first acquisition means is made to function as a first execution means for executing the first image processing, and the first image processing is a predetermined first of the plurality of image processes. Image processing of groups,
前記コンピュータを、 The computer
前記第1実行手段により前記第1画像処理が実行された前記スキャンデータから、バーコードを示す画像データであるバーコードデータを検出する検出手段と、 A detection means for detecting bar code data, which is image data indicating a bar code, from the scan data in which the first image processing is executed by the first execution means.
前記第1取得手段により取得された前記スキャンデータに基づいて、第2画像処理を実行する第2実行手段として機能させ、前記第2画像処理は、前記第1特定手段が特定した前記対象画像処理に含まれる画像処理であり、 Based on the scan data acquired by the first acquisition means, the second image processing is made to function as a second execution means for executing the second image processing, and the second image processing is the target image processing specified by the first specific means. Image processing included in
前記コンピュータを、 The computer
前記検出手段により検出された前記バーコードデータと、前記第2実行手段により前記第2画像処理が実行された前記スキャンデータとを出力する出力手段と、 An output means for outputting the barcode data detected by the detection means and the scan data for which the second image processing has been executed by the second execution means.
して機能させ、 To make it work
前記第1実行手段は、 The first executing means is
前記第1画像処理として、パンチ穴除去処理、地色・裏移り色除去処理、カラートーン調整処理、カラードロップアウト処理、エッジ強調処理、モノクロ化レベル調整処理、誤差拡散グレー濃淡調整処理のうち、少なくとも1つの処理を実行し、 Among the first image processing, punch hole removal processing, background color / set-off color removal processing, color tone adjustment processing, color dropout processing, edge enhancement processing, monochrome level adjustment processing, and error diffusion gray shading adjustment processing. Perform at least one process
前記第2実行手段は、 The second executing means is
前記第2画像処理として、文字補正処理、ノイズ除去処理、及び罫線除去処理のうち、少なくとも1つの処理を実行することを特徴とする制御プログラム。 A control program characterized in that at least one of character correction processing, noise removal processing, and ruled line removal processing is executed as the second image processing.
ユーザインタフェースを備えた情報処理装置のコンピュータが読み取り可能な制御プログラムであって、 A computer-readable control program for an information processing device equipped with a user interface.
前記コンピュータを、 The computer
前記ユーザインタフェースを介して第1操作入力を受け付ける第1受付手段と、 A first receiving means for receiving a first operation input via the user interface,
前記第1受付手段が受け付けた前記第1操作入力に基づいて、複数の画像処理のうちから、対象画像処理を特定する第1特定手段と、 Based on the first operation input received by the first receiving means, the first specifying means for specifying the target image processing from the plurality of image processing and the first specifying means.
スキャンデータを取得する第1取得手段と、 The first acquisition method for acquiring scan data and
前記第1取得手段により取得された前記スキャンデータに、第1画像処理を実行する第1実行手段として機能させ、前記第1画像処理は、前記複数の画像処理のうち、予め定められた第1群の画像処理であり、 The scan data acquired by the first acquisition means is made to function as a first execution means for executing the first image processing, and the first image processing is a predetermined first of the plurality of image processes. Image processing of groups,
前記コンピュータを、 The computer
前記第1実行手段により前記第1画像処理が実行された前記スキャンデータから、バーコードを示す画像データであるバーコードデータを検出する検出手段と、 A detection means for detecting bar code data, which is image data indicating a bar code, from the scan data in which the first image processing is executed by the first execution means.
前記第1取得手段により取得された前記スキャンデータに基づいて、第2画像処理を実行する第2実行手段として機能させ、前記第2画像処理は、前記第1特定手段が特定した前記対象画像処理に含まれる画像処理であり、 Based on the scan data acquired by the first acquisition means, the second image processing is made to function as a second execution means for executing the second image processing, and the second image processing is the target image processing specified by the first specific means. Image processing included in
前記コンピュータを、 The computer
前記検出手段により検出された前記バーコードデータと、前記第2実行手段により前記第2画像処理が実行された前記スキャンデータとを出力する出力手段と、 An output means for outputting the barcode data detected by the detection means and the scan data for which the second image processing has been executed by the second execution means.
して機能させ、 To make it work
当該制御プログラムは、アプリケーションプログラムにより前記スキャンデータを処理する命令を受け付け、 The control program receives an instruction to process the scan data by the application program, and receives the instruction to process the scan data.
前記出力手段は、前記検出手段により検出された前記バーコードデータと、前記第2実行手段により前記第2画像処理が実行された前記スキャンデータとを、前記アプリケーションプログラムに出力することを特徴とする制御プログラム。 The output means is characterized in that the bar code data detected by the detection means and the scan data in which the second image processing is executed by the second execution means are output to the application program. Control program.
ユーザインタフェースを備えた情報処理装置のコンピュータが読み取り可能な制御プログラムであって、 A computer-readable control program for an information processing device equipped with a user interface.
前記コンピュータを、 The computer
前記ユーザインタフェースを介して第1操作入力を受け付ける第1受付手段と、 A first receiving means for receiving a first operation input via the user interface,
前記第1受付手段が受け付けた前記第1操作入力に基づいて、複数の画像処理のうちから、対象画像処理を特定する第1特定手段と、 Based on the first operation input received by the first receiving means, the first specifying means for specifying the target image processing from the plurality of image processing and the first specifying means.
スキャンデータを取得する第1取得手段と、 The first acquisition method for acquiring scan data and
前記第1取得手段により取得された前記スキャンデータに、第1画像処理を実行する第1実行手段として機能させ、前記第1画像処理は、前記複数の画像処理のうち、予め定められた第1群の画像処理であり、 The scan data acquired by the first acquisition means is made to function as a first execution means for executing the first image processing, and the first image processing is a predetermined first of the plurality of image processes. Image processing of groups,
前記コンピュータを、 The computer
前記第1実行手段により前記第1画像処理が実行された前記スキャンデータから、バーコードを示す画像データであるバーコードデータを検出する検出手段と、 A detection means for detecting bar code data, which is image data indicating a bar code, from the scan data in which the first image processing is executed by the first execution means.
前記第1取得手段により取得された前記スキャンデータに基づいて、第2画像処理を実行する第2実行手段として機能させ、前記第2画像処理は、前記第1特定手段が特定した前記対象画像処理に含まれる画像処理であり、 Based on the scan data acquired by the first acquisition means, the second image processing is made to function as a second execution means for executing the second image processing, and the second image processing is the target image processing specified by the first specific means. Image processing included in
前記コンピュータを、 The computer
前記検出手段により検出された前記バーコードデータと、前記第2実行手段により前記第2画像処理が実行された前記スキャンデータとを出力する出力手段と、 An output means for outputting the barcode data detected by the detection means and the scan data for which the second image processing has been executed by the second execution means.
前記検出手段による前記バーコードデータの検出において要求される検出精度を特定する第2特定手段として機能させ、 It functions as a second specific means for specifying the detection accuracy required for detecting the barcode data by the detection means.
前記第1実行手段は、 The first executing means is
前記第2特定手段により特定した前記検出精度が高いことに応じて、前記第1取得手段により取得された前記スキャンデータに、前記第1群の画像処理のうち実行可能な処理の全てを実行し、 According to the high detection accuracy specified by the second specific means, all the feasible processing among the image processing of the first group is executed on the scan data acquired by the first acquisition means. ,
前記第2特定手段により取得した前記検出精度が低いことに応じて、前記第1取得手段により取得された前記スキャンデータに、前記対象画像処理に含まれ、且つ前記第1群の画像処理に含まれる処理を実行することを特徴とする制御プログラム。 The scan data acquired by the first acquisition means is included in the target image processing and is included in the image processing of the first group according to the low detection accuracy acquired by the second specific means. A control program characterized by executing the processing that is performed.
ユーザインタフェースと、 User interface and
コントローラと、 With the controller
を備える情報処理装置であって、It is an information processing device equipped with
前記コントローラは、 The controller
前記ユーザインタフェースを介して第1操作入力を受け付ける第1受付手段と、 A first receiving means for receiving a first operation input via the user interface,
前記第1受付手段が受け付けた前記第1操作入力に基づいて、複数の画像処理のうちから、対象画像処理を特定する第1特定手段と、 Based on the first operation input received by the first receiving means, the first specifying means for specifying the target image processing from the plurality of image processing and the first specifying means.
スキャンデータを取得する第1取得手段と、 The first acquisition method for acquiring scan data and
前記第1取得手段により取得された前記スキャンデータに、第1画像処理を実行する第1実行手段と、を有し、前記第1画像処理は、前記複数の画像処理のうち、予め定められた第1群の画像処理であり、 The scan data acquired by the first acquisition means includes a first execution means for executing the first image processing, and the first image processing is predetermined among the plurality of image processes. This is the first group of image processing.
前記コントローラは、 The controller
前記第1実行手段により前記第1画像処理が実行された前記スキャンデータから、バーコードを示す画像データであるバーコードデータを検出する検出手段と、 A detection means for detecting bar code data, which is image data indicating a bar code, from the scan data in which the first image processing is executed by the first execution means.
前記第1取得手段により取得された前記スキャンデータに基づいて、第2画像処理を実行する第2実行手段と、を有し、前記第2画像処理は、前記第1特定手段が特定した前記対象画像処理に含まれる画像処理であり、 It has a second execution means for executing a second image processing based on the scan data acquired by the first acquisition means, and the second image processing is the target specified by the first specific means. Image processing included in image processing
前記コントローラは、 The controller
前記検出手段により検出された前記バーコードデータと、前記第2実行手段により前記第2画像処理が実行された前記スキャンデータとを出力する出力手段を、 An output means for outputting the bar code data detected by the detection means and the scan data in which the second image processing is executed by the second execution means.
有し、 Have
前記第2実行手段は、 The second executing means is
前記第1実行手段により前記第1画像処理が実行された前記スキャンデータに、前記第2画像処理を実行することを特徴とする情報処理装置。 An information processing apparatus characterized in that the second image processing is executed on the scan data on which the first image processing is executed by the first execution means.
ユーザインタフェースと、 User interface and
コントローラと、 With the controller
を備える情報処理装置であって、It is an information processing device equipped with
前記コントローラは、 The controller
前記ユーザインタフェースを介して第1操作入力を受け付ける第1受付手段と、 A first receiving means for receiving a first operation input via the user interface,
前記第1受付手段が受け付けた前記第1操作入力に基づいて、複数の画像処理のうちから、対象画像処理を特定する第1特定手段と、 Based on the first operation input received by the first receiving means, the first specifying means for specifying the target image processing from the plurality of image processing and the first specifying means.
スキャンデータを取得する第1取得手段と、 The first acquisition method for acquiring scan data and
前記第1取得手段により取得された前記スキャンデータに、第1画像処理を実行する第1実行手段と、を有し、前記第1画像処理は、前記複数の画像処理のうち、予め定められた第1群の画像処理であり、 The scan data acquired by the first acquisition means includes a first execution means for executing the first image processing, and the first image processing is predetermined among the plurality of image processes. This is the first group of image processing.
前記コントローラは、 The controller
前記第1実行手段により前記第1画像処理が実行された前記スキャンデータから、バーコードを示す画像データであるバーコードデータを検出する検出手段と、 A detection means for detecting bar code data, which is image data indicating a bar code, from the scan data in which the first image processing is executed by the first execution means.
前記第1取得手段により取得された前記スキャンデータに基づいて、第2画像処理を実行する第2実行手段と、を有し、前記第2画像処理は、前記第1特定手段が特定した前記対象画像処理に含まれる画像処理であり、 It has a second execution means for executing a second image processing based on the scan data acquired by the first acquisition means, and the second image processing is the target specified by the first specific means. Image processing included in image processing
前記コントローラは、 The controller
前記検出手段により検出された前記バーコードデータと、前記第2実行手段により前記第2画像処理が実行された前記スキャンデータとを出力する出力手段を、 An output means for outputting the bar code data detected by the detection means and the scan data in which the second image processing is executed by the second execution means.
有し、 Have
前記第1実行手段は、 The first executing means is
前記第1画像処理として、パンチ穴除去処理、地色・裏移り色除去処理、カラートーン調整処理、カラードロップアウト処理、エッジ強調処理、モノクロ化レベル調整処理、誤差拡散グレー濃淡調整処理のうち、少なくとも1つの処理を実行し、 Among the first image processing, punch hole removal processing, background color / set-off color removal processing, color tone adjustment processing, color dropout processing, edge enhancement processing, monochrome level adjustment processing, and error diffusion gray shading adjustment processing. Perform at least one process
前記第2実行手段は、 The second executing means is
前記第2画像処理として、文字補正処理、ノイズ除去処理、及び罫線除去処理のうち、少なくとも1つの処理を実行することを特徴とする情報処理装置。 An information processing apparatus characterized in that at least one of character correction processing, noise removal processing, and ruled line removal processing is executed as the second image processing.
ユーザインタフェースと、 User interface and
コントローラと、 With the controller
を備える情報処理装置であって、It is an information processing device equipped with
前記コントローラは、 The controller
前記ユーザインタフェースを介して第1操作入力を受け付ける第1受付手段と、 A first receiving means for receiving a first operation input via the user interface,
前記第1受付手段が受け付けた前記第1操作入力に基づいて、複数の画像処理のうちから、対象画像処理を特定する第1特定手段と、 Based on the first operation input received by the first receiving means, the first specifying means for specifying the target image processing from the plurality of image processing and the first specifying means.
スキャンデータを取得する第1取得手段と、 The first acquisition method for acquiring scan data and
前記第1取得手段により取得された前記スキャンデータに、第1画像処理を実行する第1実行手段と、を有し、前記第1画像処理は、前記複数の画像処理のうち、予め定められた第1群の画像処理であり、 The scan data acquired by the first acquisition means includes a first execution means for executing the first image processing, and the first image processing is predetermined among the plurality of image processes. This is the first group of image processing.
前記コントローラは、 The controller
前記第1実行手段により前記第1画像処理が実行された前記スキャンデータから、バーコードを示す画像データであるバーコードデータを検出する検出手段と、 A detection means for detecting bar code data, which is image data indicating a bar code, from the scan data in which the first image processing is executed by the first execution means.
前記第1取得手段により取得された前記スキャンデータに基づいて、第2画像処理を実行する第2実行手段と、を有し、前記第2画像処理は、前記第1特定手段が特定した前記対象画像処理に含まれる画像処理であり、 It has a second execution means for executing a second image processing based on the scan data acquired by the first acquisition means, and the second image processing is the target specified by the first specific means. Image processing included in image processing
前記コントローラは、 The controller
前記検出手段により検出された前記バーコードデータと、前記第2実行手段により前記第2画像処理が実行された前記スキャンデータとを出力する出力手段を、 An output means for outputting the bar code data detected by the detection means and the scan data in which the second image processing is executed by the second execution means.
有し、 Have
当該情報処理装置は、アプリケーションプログラムにより前記スキャンデータを処理する命令を受け付け、 The information processing device receives an instruction to process the scan data by an application program, and receives an instruction to process the scan data.
前記出力手段は、前記検出手段により検出された前記バーコードデータと、前記第2実行手段により前記第2画像処理が実行された前記スキャンデータとを、前記アプリケーションプログラムに出力することを特徴とする情報処理装置。 The output means is characterized in that the bar code data detected by the detection means and the scan data in which the second image processing is executed by the second execution means are output to the application program. Information processing device.
ユーザインタフェースと、 User interface and
コントローラと、 With the controller
を備える情報処理装置であって、It is an information processing device equipped with
前記コントローラは、 The controller
前記ユーザインタフェースを介して第1操作入力を受け付ける第1受付手段と、 A first receiving means for receiving a first operation input via the user interface,
前記第1受付手段が受け付けた前記第1操作入力に基づいて、複数の画像処理のうちから、対象画像処理を特定する第1特定手段と、 Based on the first operation input received by the first receiving means, the first specifying means for specifying the target image processing from the plurality of image processing and the first specifying means.
スキャンデータを取得する第1取得手段と、 The first acquisition method for acquiring scan data and
前記第1取得手段により取得された前記スキャンデータに、第1画像処理を実行する第1実行手段と、を有し、前記第1画像処理は、前記複数の画像処理のうち、予め定められた第1群の画像処理であり、 The scan data acquired by the first acquisition means includes a first execution means for executing the first image processing, and the first image processing is predetermined among the plurality of image processes. This is the first group of image processing.
前記コントローラは、 The controller
前記第1実行手段により前記第1画像処理が実行された前記スキャンデータから、バーコードを示す画像データであるバーコードデータを検出する検出手段と、 A detection means for detecting bar code data, which is image data indicating a bar code, from the scan data in which the first image processing is executed by the first execution means.
前記第1取得手段により取得された前記スキャンデータに基づいて、第2画像処理を実行する第2実行手段と、を有し、前記第2画像処理は、前記第1特定手段が特定した前記対象画像処理に含まれる画像処理であり、 It has a second execution means for executing a second image processing based on the scan data acquired by the first acquisition means, and the second image processing is the target specified by the first specific means. Image processing included in image processing
前記コントローラは、 The controller
前記検出手段により検出された前記バーコードデータと、前記第2実行手段により前記第2画像処理が実行された前記スキャンデータとを出力する出力手段と、 An output means for outputting the barcode data detected by the detection means and the scan data for which the second image processing has been executed by the second execution means.
前記検出手段による前記バーコードデータの検出において要求される検出精度を特定する第2特定手段と、 A second specific means for specifying the detection accuracy required for detecting the barcode data by the detection means, and
を有し、 Have,
前記第1実行手段は、 The first executing means is
前記第2特定手段により特定した前記検出精度が高いことに応じて、前記第1取得手段により取得された前記スキャンデータに、前記第1群の画像処理のうち実行可能な処理の全てを実行し、 According to the high detection accuracy specified by the second specific means, all the feasible processing among the image processing of the first group is executed on the scan data acquired by the first acquisition means. ,
前記第2特定手段により取得した前記検出精度が低いことに応じて、前記第1取得手段により取得された前記スキャンデータに、前記対象画像処理に含まれ、且つ前記第1群の画像処理に含まれる処理を実行することを特徴とする情報処理装置。 The scan data acquired by the first acquisition means is included in the target image processing and is included in the image processing of the first group according to the low detection accuracy acquired by the second specific means. An information processing device characterized by executing a process to be processed.
スキャナと、 With a scanner
情報処理装置と、 Information processing device and
を備えるスキャンシステムであって、 It is a scanning system equipped with
前記スキャンシステムに含まれるコントローラは、 The controller included in the scanning system is
ユーザインタフェースを介して第1操作入力を受け付ける第1受付手段と、 A first reception means that accepts the first operation input via the user interface,
前記第1受付手段が受け付けた前記第1操作入力に基づいて、複数の画像処理のうちから、対象画像処理を特定する第1特定手段と、 Based on the first operation input received by the first receiving means, the first specifying means for specifying the target image processing from the plurality of image processing and the first specifying means.
スキャンデータを取得する第1取得手段と、 The first acquisition method for acquiring scan data and
前記第1取得手段により取得された前記スキャンデータに、第1画像処理を実行する第1実行手段と、を有し、前記第1画像処理は、前記複数の画像処理のうち、予め定められた第1群の画像処理であり、 The scan data acquired by the first acquisition means includes a first execution means for executing the first image processing, and the first image processing is predetermined among the plurality of image processes. This is the first group of image processing.
前記コントローラは、 The controller
前記第1実行手段により前記第1画像処理が実行された前記スキャンデータから、バーコードを示す画像データであるバーコードデータを検出する検出手段と、 A detection means for detecting bar code data, which is image data indicating a bar code, from the scan data in which the first image processing is executed by the first execution means.
前記第1取得手段により取得された前記スキャンデータに基づいて、第2画像処理を実行する第2実行手段と、を有し、前記第2画像処理は、前記第1特定手段が特定した前記対象画像処理に含まれる画像処理であり、 It has a second execution means for executing a second image processing based on the scan data acquired by the first acquisition means, and the second image processing is the target specified by the first specific means. Image processing included in image processing
前記コントローラは、 The controller
前記検出手段により検出された前記バーコードデータと、前記第2実行手段により前記第2画像処理が実行された前記スキャンデータとを出力する出力手段を、 An output means for outputting the bar code data detected by the detection means and the scan data in which the second image processing is executed by the second execution means.
有し、 Have
前記第2実行手段は、 The second executing means is
前記第1実行手段により前記第1画像処理が実行された前記スキャンデータに、前記第2画像処理を実行することを特徴とするスキャンシステム。 A scanning system characterized in that the second image processing is executed on the scan data on which the first image processing is executed by the first executing means.
スキャナと、 With a scanner
情報処理装置と、 Information processing device and
を備えるスキャンシステムであって、 It is a scanning system equipped with
前記スキャンシステムに含まれるコントローラは、 The controller included in the scanning system is
ユーザインタフェースを介して第1操作入力を受け付ける第1受付手段と、 A first reception means that accepts the first operation input via the user interface,
前記第1受付手段が受け付けた前記第1操作入力に基づいて、複数の画像処理のうちから、対象画像処理を特定する第1特定手段と、 Based on the first operation input received by the first receiving means, the first specifying means for specifying the target image processing from the plurality of image processing and the first specifying means.
スキャンデータを取得する第1取得手段と、 The first acquisition method for acquiring scan data and
前記第1取得手段により取得された前記スキャンデータに、第1画像処理を実行する第1実行手段と、を有し、前記第1画像処理は、前記複数の画像処理のうち、予め定められた第1群の画像処理であり、 The scan data acquired by the first acquisition means includes a first execution means for executing the first image processing, and the first image processing is predetermined among the plurality of image processes. This is the first group of image processing.
前記コントローラは、 The controller
前記第1実行手段により前記第1画像処理が実行された前記スキャンデータから、バーコードを示す画像データであるバーコードデータを検出する検出手段と、 A detection means for detecting bar code data, which is image data indicating a bar code, from the scan data in which the first image processing is executed by the first execution means.
前記第1取得手段により取得された前記スキャンデータに基づいて、第2画像処理を実行する第2実行手段と、を有し、前記第2画像処理は、前記第1特定手段が特定した前記対象画像処理に含まれる画像処理であり、 It has a second execution means for executing a second image processing based on the scan data acquired by the first acquisition means, and the second image processing is the target specified by the first specific means. Image processing included in image processing
前記コントローラは、 The controller
前記検出手段により検出された前記バーコードデータと、前記第2実行手段により前記第2画像処理が実行された前記スキャンデータとを出力する出力手段を、 An output means for outputting the bar code data detected by the detection means and the scan data in which the second image processing is executed by the second execution means.
有し、 Have
前記第1実行手段は、 The first executing means is
前記第1画像処理として、パンチ穴除去処理、地色・裏移り色除去処理、カラートーン調整処理、カラードロップアウト処理、エッジ強調処理、モノクロ化レベル調整処理、誤差拡散グレー濃淡調整処理のうち、少なくとも1つの処理を実行し、 Among the first image processing, punch hole removal processing, background color / set-off color removal processing, color tone adjustment processing, color dropout processing, edge enhancement processing, monochrome level adjustment processing, and error diffusion gray shading adjustment processing. Perform at least one process
前記第2実行手段は、 The second executing means is
前記第2画像処理として、文字補正処理、ノイズ除去処理、及び罫線除去処理のうち、少なくとも1つの処理を実行することを特徴とするスキャンシステム。 A scanning system characterized in that at least one of character correction processing, noise removal processing, and ruled line removal processing is executed as the second image processing.
スキャナと、 With a scanner
情報処理装置と、 Information processing device and
を備えるスキャンシステムであって、 It is a scanning system equipped with
前記スキャンシステムに含まれるコントローラは、 The controller included in the scanning system is
ユーザインタフェースを介して第1操作入力を受け付ける第1受付手段と、 A first reception means that accepts the first operation input via the user interface,
前記第1受付手段が受け付けた前記第1操作入力に基づいて、複数の画像処理のうちから、対象画像処理を特定する第1特定手段と、 Based on the first operation input received by the first receiving means, the first specifying means for specifying the target image processing from the plurality of image processing and the first specifying means.
スキャンデータを取得する第1取得手段と、 The first acquisition method for acquiring scan data and
前記第1取得手段により取得された前記スキャンデータに、第1画像処理を実行する第1実行手段と、を有し、前記第1画像処理は、前記複数の画像処理のうち、予め定められた第1群の画像処理であり、 The scan data acquired by the first acquisition means includes a first execution means for executing the first image processing, and the first image processing is predetermined among the plurality of image processes. This is the first group of image processing.
前記コントローラは、 The controller
前記第1実行手段により前記第1画像処理が実行された前記スキャンデータから、バーコードを示す画像データであるバーコードデータを検出する検出手段と、 A detection means for detecting bar code data, which is image data indicating a bar code, from the scan data in which the first image processing is executed by the first execution means.
前記第1取得手段により取得された前記スキャンデータに基づいて、第2画像処理を実行する第2実行手段と、を有し、前記第2画像処理は、前記第1特定手段が特定した前記対象画像処理に含まれる画像処理であり、 It has a second execution means for executing a second image processing based on the scan data acquired by the first acquisition means, and the second image processing is the target specified by the first specific means. Image processing included in image processing
前記コントローラは、 The controller
前記検出手段により検出された前記バーコードデータと、前記第2実行手段により前記第2画像処理が実行された前記スキャンデータとを出力する出力手段を、 An output means for outputting the bar code data detected by the detection means and the scan data in which the second image processing is executed by the second execution means.
有し、 Have
当該コントローラは、アプリケーションプログラムにより前記スキャンデータを処理する命令を受け付け、 The controller receives an instruction to process the scan data by an application program and receives an instruction to process the scan data.
前記出力手段は、前記検出手段により検出された前記バーコードデータと、前記第2実行手段により前記第2画像処理が実行された前記スキャンデータとを、前記アプリケーションプログラムに出力することを特徴とするスキャンシステム。 The output means is characterized in that the bar code data detected by the detection means and the scan data in which the second image processing is executed by the second execution means are output to the application program. Scan system.
スキャナと、 With a scanner
情報処理装置と、 Information processing device and
を備えるスキャンシステムであって、 It is a scanning system equipped with
前記スキャンシステムに含まれるコントローラは、 The controller included in the scanning system is
ユーザインタフェースを介して第1操作入力を受け付ける第1受付手段と、 A first reception means that accepts the first operation input via the user interface,
前記第1受付手段が受け付けた前記第1操作入力に基づいて、複数の画像処理のうちから、対象画像処理を特定する第1特定手段と、 Based on the first operation input received by the first receiving means, the first specifying means for specifying the target image processing from the plurality of image processing and the first specifying means.
スキャンデータを取得する第1取得手段と、 The first acquisition method for acquiring scan data and
前記第1取得手段により取得された前記スキャンデータに、第1画像処理を実行する第1実行手段と、を有し、前記第1画像処理は、前記複数の画像処理のうち、予め定められた第1群の画像処理であり、 The scan data acquired by the first acquisition means includes a first execution means for executing the first image processing, and the first image processing is predetermined among the plurality of image processes. This is the first group of image processing.
前記コントローラは、 The controller
前記第1実行手段により前記第1画像処理が実行された前記スキャンデータから、バーコードを示す画像データであるバーコードデータを検出する検出手段と、 A detection means for detecting bar code data, which is image data indicating a bar code, from the scan data in which the first image processing is executed by the first execution means.
前記第1取得手段により取得された前記スキャンデータに基づいて、第2画像処理を実行する第2実行手段と、を有し、前記第2画像処理は、前記第1特定手段が特定した前記対象画像処理に含まれる画像処理であり、 It has a second execution means for executing a second image processing based on the scan data acquired by the first acquisition means, and the second image processing is the target specified by the first specific means. Image processing included in image processing
前記コントローラは、 The controller
前記検出手段により検出された前記バーコードデータと、前記第2実行手段により前記第2画像処理が実行された前記スキャンデータとを出力する出力手段と、 An output means for outputting the barcode data detected by the detection means and the scan data for which the second image processing has been executed by the second execution means.
前記検出手段による前記バーコードデータの検出において要求される検出精度を特定する第2特定手段と、 A second specific means for specifying the detection accuracy required for detecting the barcode data by the detection means, and
を有し、 Have,
前記第1実行手段は、 The first executing means is
前記第2特定手段により特定した前記検出精度が高いことに応じて、前記第1取得手段により取得された前記スキャンデータに、前記第1群の画像処理のうち実行可能な処理の全てを実行し、 According to the high detection accuracy specified by the second specific means, all the feasible processing among the image processing of the first group is executed on the scan data acquired by the first acquisition means. ,
前記第2特定手段により取得した前記検出精度が低いことに応じて、前記第1取得手段により取得された前記スキャンデータに、前記対象画像処理に含まれ、且つ前記第1群の画像処理に含まれる処理を実行することを特徴とするスキャンシステム。 The scan data acquired by the first acquisition means is included in the target image processing and is included in the image processing of the first group according to the low detection accuracy acquired by the second specific means. A scanning system characterized by performing the processing that is performed.
JP2017166934A 2017-08-31 2017-08-31 Control programs, information processing equipment, and scanning systems Active JP6874606B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017166934A JP6874606B2 (en) 2017-08-31 2017-08-31 Control programs, information processing equipment, and scanning systems

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017166934A JP6874606B2 (en) 2017-08-31 2017-08-31 Control programs, information processing equipment, and scanning systems

Publications (2)

Publication Number Publication Date
JP2019047253A JP2019047253A (en) 2019-03-22
JP6874606B2 true JP6874606B2 (en) 2021-05-19

Family

ID=65814892

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017166934A Active JP6874606B2 (en) 2017-08-31 2017-08-31 Control programs, information processing equipment, and scanning systems

Country Status (1)

Country Link
JP (1) JP6874606B2 (en)

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000293619A (en) * 1999-04-12 2000-10-20 Canon Electronics Inc Image input device and image input method
JP2006244160A (en) * 2005-03-03 2006-09-14 Toshiba Tec Corp Device and method for processing image
JP2007172471A (en) * 2005-12-26 2007-07-05 Canon Inc Scanner driver and control method for scanner driver
JP4277866B2 (en) * 2006-03-29 2009-06-10 セイコーエプソン株式会社 Backlight image determination apparatus, backlight image determination method, backlight image determination program, backlight image correction apparatus, backlight image correction method, image reading apparatus, image reading method, and printing apparatus
JP4978460B2 (en) * 2007-12-25 2012-07-18 富士ゼロックス株式会社 Bar code recognition apparatus and program
JP5262869B2 (en) * 2009-03-12 2013-08-14 株式会社リコー Image processing system, image processing server, MFP, and image processing method
JP2016178630A (en) * 2015-03-19 2016-10-06 株式会社リコー Information processing device, program and system

Also Published As

Publication number Publication date
JP2019047253A (en) 2019-03-22

Similar Documents

Publication Publication Date Title
US9485368B2 (en) Electronic document generation apparatus, recording medium, and electronic document generation system
JP2007080178A (en) Image processing apparatus
US9386186B2 (en) Image processing apparatus and image processing method performing detection of inclination of original in read image in accordance with direction of fiber
JP6762722B2 (en) Information processing equipment, control methods, and programs
KR20110026385A (en) Image reader, image read method, image display controller, image display control method, image processing system and computer program
US20150146224A1 (en) Image processing apparatus and image processing method
JP6870541B2 (en) Control program and information processing device
US10791247B2 (en) Data processing apparatus with URL risk assessment, data output method and non-transitory computer-readable recording medium encoded with data output program
JP6175905B2 (en) Information processing apparatus, information processing method, system, and program
JP6879131B2 (en) Scan system, information processing device, and scanner driver
JP6397183B2 (en) Image processing apparatus, method, and program
JP2020067959A (en) Image processing apparatus, and control method and program thereof
JP6874606B2 (en) Control programs, information processing equipment, and scanning systems
JP2018018361A (en) Data processor and computer program
US10356276B2 (en) Image processing apparatus, image forming apparatus, and computer readable medium
JP6859903B2 (en) Scanner driver, information processing device, and scanning system
JP7180363B2 (en) Control program, information processing device, and scanning system
JP7159825B2 (en) Control program, information processing device, and scanning system
JP2016175263A (en) Device, program and method
US9521290B2 (en) Image processing apparatus, image forming apparatus, image processing method, and non-transitory computer readable medium for detecting difference between images
JP6485051B2 (en) Image processing system, image processing apparatus, and program
JP5992956B2 (en) Image processing device
JP2008263275A (en) Image read system, and control method of image read system
JP5550309B2 (en) Image processing apparatus and display control method
JP7009750B2 (en) Image forming device, tint block area determination method and tint block area determination program by the device

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200324

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20201210

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20201222

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210219

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210405

R150 Certificate of patent or registration of utility model

Ref document number: 6874606

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150