(第1実施形態)
以下、画像読取装置の第1実施形態について図面を参照して説明する。
図1に示すように、本実施形態の画像読取装置11は、側面視が略台形形状を有する本体12と、画像読取対象である原稿14が載置(セット)される原稿サポート13とを備える。本体12には、排出口12Bの下側にスタッカー15が前後方向にスライド可能な状態で収納されている。
原稿サポート13は、本体12の後側上方へ斜めに延出することで複数枚の原稿14を載置可能な平面状の載置面13Aを有する。原稿サポート13には、原稿14が搬送される搬送方向Y1と交差(特に直交)する幅方向Xにスライド可能な一対のエッジガイド13Bが設けられている。載置面13A上に積載された原稿14は、一対のエッジガイド13Bに挟まれることで、給送口12Aに対して幅方向Xに位置決めされる。また、原稿サポート13の載置面13Aには、スライド式の補助サポート部13Cが出退可能に設けられている。載置面13A上に積載された原稿14は、スライド式の補助サポート部13Cと当接することで給送口12Aに対して搬送方向Y1に位置決めされる。なお、幅方向Xが、画像読取装置11が原稿14を読み取るときの主走査方向、搬送方向Y1と反対の方向が副走査方向Yとなる。以下では、主走査方向Xともいう。
原稿サポート13に載置された原稿14は、本体12の上部に開口する給送口12Aから本体12内へ1枚ずつ給送される。給送された原稿14は、本体12内を所定の搬送経路29(図2参照)に沿って搬送され、その搬送途中の読取領域SAで画像が読み取られた後、本体12の前側下部に開口する排出口12Bから排出される。
本体12の前面部12Cには、電源ボタン20が設けられている。本体12の前面部12Cには、所定の画像を表示領域23に表示する例えば液晶パネル等の表示部22が設けられている。表示部22には、メニューや選択項目、画像読取装置11の動作状況などの情報が表示される。表示部22には、ユーザーの触接操作を検知可能な例えばタッチパネル等の操作部21が設けられている。操作部21は、画像読取装置11に指示を与えるときにユーザーの触接操作に応じて必要な情報を入力するように構成される。
図2に示すように、本体12は、本体部18と、本体部18の前端部を中心に回動可能に連結されたカバー部19とを備える。本体12は、本体部18とカバー部19との間において給送口12Aから排出口12Bに至るまで延びる搬送経路29(搬送通路)を有する。
本体12内には、原稿14を搬送する搬送機構30が備えられている。搬送機構30は、原稿サポート13上に積載(セット)された原稿14を1枚ずつ本体12内へ案内しつつ給送する給送部30Aと、給送した原稿14を搬送経路29に沿って読取領域SAを通るように搬送する搬送部31と、搬送部31による搬送途中で画像が読み取られた後の原稿14を排出する排出部32とを有している。搬送機構30は、原稿サポート13上に積載された複数枚の原稿14を、読取領域SAを通るように搬送経路29に沿って1枚ずつ順番に搬送する自動原稿送り機能を有している。
給送部30Aは、本体12内の搬送経路29の上流端位置に、給送ガイド30Bと対向する1つの給送ローラー33(ピックアップローラー)を備えている。給送部30Aは、原稿サポート13上に積載された複数枚の原稿14を1枚ずつ給送口12Aから給送ガイド30Bに沿って給送する。
搬送部31は、給送ローラー33よりも搬送方向Y1の下流側の位置に配置された給送ローラー対34と、搬送方向Y1において読取領域SAよりも上流側の位置に配置された搬送ローラー対35とを備えている。給送ローラー対34は、駆動ローラー34Aと分離ローラー34B(リタードローラー)とにより構成される。搬送ローラー対35は、駆動ローラー35Aと従動ローラー35Bとにより構成される。
排出部32は、搬送方向Y1に読取領域SAよりも下流側の位置に配置された排出ローラー対36を備えている。排出ローラー対36は、駆動ローラー36Aと従動ローラー36Bとにより構成される。なお、排出ローラー対36は、搬送ローラー対35と共に原稿14の読取り中の搬送も担う。
このように、搬送方向Y1の上流側から順に、給送ローラー33、給送ローラー対34、搬送ローラー対35及び排出ローラー対36がそれぞれ配置され、それぞれ幅方向Xに間隔を隔てて一対ずつ配置されている。
給送系の複数のローラー33,34Aは、これらの動力源である給送モーター37の動力により回転駆動する。原稿サポート13に積載された複数枚の原稿14は、給送ローラー33により最下位のものから1枚ずつ順番に給送口12Aから本体12内へ給送される。このように、給送部30A(ローラー33,34A等)は、給送モーター37を動力源として駆動する。
また、給送系の分離ローラー34B及び搬送系の駆動ローラー35A,36Aは、その動力源である搬送モーター38の動力により回転駆動する。給送ローラー33により本体12内へ給送された原稿14は、読取領域SAに搬送された後に、排出口12Bから排出される。このように、搬送部31(搬送ローラー対34等)と排出部32(排出ローラー対36等)とは、搬送モーター38を共通の動力源として駆動する。
また、駆動ローラー35A,36Aは、原稿14を読み取るときに同じ搬送速度(読取速度)で原稿14を搬送するように回転駆動する。各従動ローラー35B,36Bは、それぞれが対をなす駆動ローラー35A,36Aの回転により連れ回りする。
また、本体12内には、複数のローラー対34~36のうち搬送系の1つの駆動ローラーの回転を検出可能なエンコーダー44(例えばロータリーエンコーダー)が設けられている。エンコーダー44は、駆動ローラーの回転量に比例する数のパルスを含む検出信号を制御部50(コントローラー)に出力する。よって、制御部50は、エンコーダー44の検出信号に基づき、搬送中の原稿14の位置(搬送位置)の把握及び搬送速度の把握を行うことができる。
また、一対の給送ローラー33の間には、原稿サポート13にセットされた原稿14の有無を検知する原稿センサー45が配置されている。原稿センサー45は、例えばレバーを有する接触式センサーであり、原稿サポート13に原稿14がセットされると、そのセットされた原稿14がレバーを押すことでONする。
また、搬送方向Y1に搬送ローラー対35のニップ点よりもやや下流側の位置には、原稿14の有無を検出可能な原稿有無センサー46が配置されている。原稿有無センサー46は、例えばレバー(接触子)を有する接触式センサーである。原稿有無センサー46は、原稿14の先端がレバーを押すことで原稿14を検知してONし、その原稿14の後端が通り過ぎてレバーが押されなくなると、原稿14を検知しなくなってOFFする。よって、制御部50は、原稿有無センサー46の検知信号(ON/OFF)に基づき、原稿14の先端が搬送ローラー対35を通過したこと、及び原稿14の後端が搬送ローラー対35を通過したことを検知する。原稿有無センサー46が原稿14の先端と後端とを検知した検知結果は、後述する読取部40(40A,40B)の読取動作の開始と終了のタイミングを決める制御に用いられる。また、原稿有無センサー46は、原稿14の先端と後端とを検知可能であるため、原稿14の先端が検知されてから後端が検知されるまでの原稿14の搬送距離に基づいて原稿14の搬送方向Y1における長さ、つまりその長さから決まる原稿サイズを検出することもできる。なお、原稿有無センサー46は、光学式センサー等の非接触センサーとしてもよい。
画像読取装置11の本体12内には、原稿14を読み取る読取部40が設けられている。読取部40は、搬送方向Y1における搬送ローラー対35と排出ローラー対36との間の位置において搬送経路29を挟む両側に一対設けられている。本実施形態において、一対の読取部40は、搬送経路29に沿って搬送される原稿14の表面(下面)を読み取る第1読取部40Aと、搬送経路29に沿って搬送される原稿14の裏面(上面)を読み取る第2読取部40Bとからなり、搬送方向Y1に互いに少しずれた位置に配置されているが、一方の読取部を備えない構成であってもよい。
一対の読取部40は、読取領域SAに光を照射することにより搬送中の原稿14に光を照射可能な光源41と、原稿14から画像を読み取ることができるイメージセンサー42とにより構成されている。通常読取モードでは、第1読取部40Aだけが読取動作を行い原稿14の表面が読み取られ、両面読取モードでは、第1読取部40Aと第2読取部40Bとが共に読取動作を行い原稿14の両面(表裏面)が読み取られる。
光源41は、例えばLEDや蛍光ランプ等により構成される。イメージセンサー42は、光源41から照射された光が原稿14で反射した反射光を受光し、受光した光を電気信号に変換して受光量に応じた値の画素信号を出力する。このように、イメージセンサー42は、画像を読み取るセンサーである。イメージセンサー42は、例えばリニアイメージセンサーである。画像読取装置11は、カラースキャンとモノクロスキャン(グレースケールスキャン)とが可能である。なお、以下では、光源41及びイメージセンサー42を、第1読取部40A側のものを指して、第1光源41A及び第1イメージセンサー42Aと記し、第2読取部40B側のものを指して、第2光源41B及び第2イメージセンサー42Bと記す場合がある。
イメージセンサー42は、複数の光電変換素子を主走査方向Xに沿って一列に配置した、例えばコンタクト型イメージセンサーである。さらにイメージセンサー42は、具体的にはCMOS(Complementary Metal Oxide Semiconductor)イメージセンサーである。イメージセンサー42は、各光電変換素子が受光した光を光電変換して受光量に応じた値の画素信号を出力する。
例えば、両面読取の場合、原稿14の表面は第1イメージセンサー42Aにより読み取られ、原稿14の裏面は第2イメージセンサー42Bにより読み取られる。また、片面読取の場合、原稿14の表面が第1イメージセンサー42Aにより読み取られる。イメージセンサー42A,42Bは、画像読取装置11が読取可能な最大の原稿サイズよりも広い領域を読取領域とする。すなわち、読取部40を構成するイメージセンサー42A,42Bは、主走査方向Xに最大サイズの原稿14の幅よりも少し長い範囲を読取範囲とする。
さらに、イメージセンサー42と搬送経路29を挟んで対向する位置には、色基準板43が配置されている。色基準板43は、読取部40の読取対象範囲のうち、主走査方向Xに原稿14の搬送領域よりも広い領域に亘って配置されている。このため、色基準板43は、原稿14の背景として読み取られる背景板の機能も有する。色基準板43は、最大サイズの原稿14の幅よりも主走査方向Xに少し広い範囲に亘って配置されている。つまり、色基準板43は、走査方向にイメージセンサー42A,42Bの読取範囲と対向する領域を少なくとも含む範囲に配置されている。このため、イメージセンサー42A,42Bは、原稿14が存在していない領域では色基準板43を読み取る。
また、色基準板43は、シェーディング補正用の白基準値を得るための部材であり、白色を呈する白基準板又はグレー(灰色)を呈するグレー基準板が用いられる。これにより、色基準板43が白基準画像として読み取られ、読み取られた白基準画像に基づいて白基準値が生成される。グレー基準板の場合は、原稿の背景(グレー背景)として読み取って原稿14の位置及び領域の検出にも用いられる。なお、原稿領域検出用のセンサーを別途設けた場合は、色基準板43は白基準板であることが好ましい。また、色基準板43は、板形状に限らず、輝度の基準となる白基準値を得るための基準部材であれば、形状及び色については問わない。
画像読取装置11は、制御部50を備えている。制御部50は、ユーザーが操作する操作部21(図1参照)からの操作信号又は後述するホスト装置100からの読取指示信号(読取指示)に基づいて原稿14から画像を読み取るジョブが入力されると、画像読取装置11を制御する。制御部50は、読取制御を行うときは、給送モーター37、搬送モーター38及び読取部40A,40Bを制御し、読取部40A,40Bによって原稿14から読み取られた画像に基づく画像データを処理する。
次に図3を参照して、画像読取装置11の電気的構成について説明する。
図3に示すように、画像読取装置11は、通信ケーブルを通じてホスト装置100と接続されている。ホスト装置100は、例えばパーソナルコンピューター(以下「PC」ともいう。)であり、その本体と電気的に接続された操作部101と表示部102とを備える。ホスト装置100は、スキャンドライバー用プログラムがインストールされることで、その内部にソフトウェアよりなるスキャンドライバー(図示略)を備える。スキャンドライバーは、画像読取装置11に対して原稿14の読取り指示等を行う機能を有する。スキャンドライバーは、ユーザーがホスト装置100の操作部101の操作で指定した読取条件情報および各種コマンドを含む読取指示情報(スキャンジョブデータ)を画像読取装置11に送信する。また、スキャンドライバーは、画像読取装置11から読取指示情報に従って読み取られた原稿14の画像を含む画像データを、読取指示情報の1つとして指定された形式のファイルとして受信する。なお、ホスト装置100は、PCに限らず、携帯情報端末(PDA(Personal Digital Assistants))、タブレットPC又はスマートフォン等のスマートデバイス等でもよい。
ユーザーにより操作部21又はホスト装置100の操作部101が操作されたときに、画像読取処理に関する設定条件が設定される。つまり、ユーザーの入力により設定条件が設定される。設定条件には、原稿サイズ、読取解像度、読取色、片面読取り・両面読取り等を含む読取条件と、読取データ(画像データ)の保存形式、転送方法及び保存先を含む保存条件とが含まれる。原稿サイズには、例えばA4サイズ、B5サイズなどがあり、読取解像度には、例えば300dpi/600dpiがあり、読取色には、モノクロ(グレースケール)/カラーがある。保存形式には、PDF形式、PDF/A形式、JPEG形式、GIF形式、TIFF形式等がある。また、転送方法には、ホスト装置100への転送及びメール転送があり、保存先に保存先のアドレスが指定される。
画像読取装置11は、これを統括的に制御する制御部50を内蔵している。制御部50は、マイクロプロセッサー等からなるコンピューター60を備える。コンピューター60は、RAM及び不揮発性メモリー等からなる記憶部61(メモリー)を備える。記憶部61は、読取制御の際に実行すべきプログラムPR等を記憶する。
また、制御部50は、ホスト装置100から各種のデータや信号を入力する入力インターフェイスからなる入力部62と、画像読取装置11が読み取った読取データをホスト装置100に出力する出力インターフェイスからなる出力部63とを備える。
さらに制御部50は、イメージセンサー42A,42Bに対して読出動作を含む各種の動作タイミングを規定するパルス信号を出力するタイミングジェネレーター64(以下「TG64」とも記す。)を備える。また、制御部50は、イメージセンサー42A,42Bから入力した画素信号をアナログ/デジタル変換(A/D変換)するアナログフロントエンド65(以下「AFE65」とも記す。)を備える。
記憶部61には、図22~図25にフローチャートで示された画像処理ルーチンを含むプログラムPRが記憶されている。また、記憶部61には、ユーザーによる操作部21の入力により設定条件情報が記憶される。コンピューター60は、プログラムPRの実行により内部に構成されるソフトウェアからなる機能部分として、主制御部70、搬送制御部71、読取制御部72及び画像処理部73を備える。主制御部70は、画像読取装置11を統括的に制御する。
搬送制御部71は、主制御部70の指示に従って給送モーター37及び搬送モーター38を駆動制御する。給送モーター37の駆動により給送ローラー33が回転することで、原稿サポート13にセットされた複数枚の原稿14が最下位のものから1枚ずつ順番に本体12内へ給送される。また、給送モーター37が駆動されることで給送ローラー対34を構成する一方の駆動ローラー34Aが回転駆動し、搬送モーター38が駆動されることで他方の分離ローラー34Bが回転駆動する。特に、搬送制御部71は、搬送経路29の途中の読取領域SAを読取解像度(例えば300/600dpi)に応じた読取速度で原稿14を搬送させるように給送モーター37及び搬送モーター38を駆動制御する。例えば読取解像度が相対的に低い(例えば300dpi)場合は原稿14が高速度で搬送され、読取解像度が相対的に高い(例えば600dpi)場合は原稿14が低速度で搬送される。
読取制御部72は、TG64を介して読取部40を制御し、読取部40に原稿14の画像を読み取らせる。特に、読取制御部72は、イメージセンサー42に対して読出動作を含む各種動作の動作タイミングを規定するパルス信号をTG64に出力し、不図示の光源駆動部を介して光源41の発光を制御し、光源41から読取領域SAに光を照射させる。
画像処理部73は、読取部40により読み取られた画像のデジタル信号がAFE65を介して入力されると、入力されたデジタル信号に基づく画像データを一時的に記憶し、記憶した画像データにシェーディング補正等の公知の補正処理を行い、原稿14の画像データを生成する。画像処理部73は、シェーディング補正の他にもガンマ補正等の各種補正を施して、補正済みの画像データを生成する。また、画像処理部73は、画像データを指定の形式のファイルに変換する形式変換処理を行う。指定可能な形式は、JPEG形式、PDF形式、TIF形式などが挙げられる。画像処理部73は、指定の形式に変換して生成したファイルを、出力部63を介して指定の送信先に送信する。画像読取装置11において、ユーザーが指定可能な送信先には、通信ケーブル(図示せず)を通じて接続されたホスト装置100、インターネット等のネットワークを介して接続されたサーバー装置(図示せず)、ファイルをメールに添付してメールアドレスで指定された端末装置などが挙げられる。なお、サーバー装置には、クラウドサーバー装置が含まれる。
また、本実施形態の画像処理部73は、読取データから、指定形式にファイルを生成するまでの過程で、読取データに対する所定の検出処理および所定の画像処理を行って、指定形式に変換される前の原稿の画像データを生成する。
本実施形態の画像処理部73は、第1読取部40Aが原稿14の表面を読み取った第1読取データSD1と、第2読取部40Bが原稿14の裏面P2を読み取った第2読取データSD2(いずれも図4を参照)に対して、所定の検出処理および所定の画像処理を行う。画像処理部73は、所定の検出処理として、エッジ検出処理および文字検出処理を行う。また、画像処理部73は、所定の画像処理として、傾き補正処理、切出処理および回転処理を行う。なお、以下、第1読取データSD1を表面の読取データSD1、第2読取データSD2を裏面の読取データSD2ともいう。
図3に示すように、画像処理部73は、エッジ検出処理部74、傾き補正処理部75、切出処理部76および回転処理部77を備える。
エッジ検出処理部74は、図4に示すように、表面の読取データSD1中の原稿の領域である原稿領域DA1のエッジEG1を検出するエッジ検出処理と、裏面の読取データSD2中の原稿の領域である原稿領域DA2のエッジEG2を検出するエッジ検出処理とを行う。
エッジ検出処理部74は、RGB形式の読取データSD1,SD2を解析し、読取部40A,40Bのイメージセンサー42A,42Bにより読み取られた読取データSD1,SD2において、原稿領域DA1,DA2が傾斜している傾き角を解析する。特に、エッジ検出処理部74は、RGB形式の読取データに基づいて、原稿領域DA1,DA2と、色基準板43の画像が読み取られた原稿領域DA1,DA2外の背景領域BA1,BA2とを判別し、判別結果に基づいて原稿領域DA1,DA2を検出する。
傾き補正処理部75は、原稿領域DAの傾きを補正する傾き補正処理を行う。詳しくは、傾き補正処理部75は、第1読取データSD1に対して原稿領域DA1の傾き角θを検出し、傾き角θの斜行(スキュー)を解消する方向に原稿領域DA1を傾動させる傾き補正処理を行う。また、傾き補正処理部75は、第2読取データSD2に対して原稿領域DA2の傾き角θを検出し、傾き角θの斜行(スキュー)を解消する方向に原稿領域DA2を傾動させる傾き補正処理を行う。
特に、傾き補正処理部75は、読取部40A,40Bにより原稿14の両面が読み取られた読取データSD1,SD2をそれぞれ解析し、読取データSD1,SD2中の原稿領域DA1,DA2が副走査方向Yに対して傾斜する傾き角θを検出する。そして、傾き補正処理部75は、原稿領域DA1,DA2の傾き角θ,-θなどの解析結果を取得する。そして、傾き補正処理部75は、原稿領域DA1,DA2の傾き角θが0°になる角度-θだけ原稿領域DA1,DA2をそれぞれ回転させる傾き補正処理を行う。傾き補正処理部75は、例えば、コンピューター60が備えるASICにより構成されてもよいし、傾き補正処理のプログラムを実行するCPUにより構成されてもよい。
ここで、原稿の表面P1を「第1面P1」、原稿の裏面P2を「第2面P2」とする。傾き補正処理部75は、次の処理を行う。傾き補正処理部75は、第1面のエッジ検出処理が成功した場合、第1面のエッジ検出結果に基づいて特定される傾き角で第1面の原稿領域DA1を傾動させる傾き補正処理を行う。また、傾き補正処理部75は、第2面のエッジ検出処理が成功した場合、第2面のエッジ検出結果に基づいて特定される傾き角で第2面の原稿領域DA2を傾動させる傾き補正処理を行う。
また、エッジ検出処理でエッジを検出できず、原稿領域DAの検出に失敗した面があると、原稿の表面と裏面との間の位置や傾きに関する関係を利用し、検出に成功した面のエッジ検出結果に基づいて、検出に失敗した面の原稿領域DAを特定する。このため、失敗した面の原稿領域DAの傾き補正処理が可能になる。
すなわち、傾き補正処理部75は、第1面のエッジ検出処理が失敗し、かつ第2面のエッジ検出処理が成功した場合、検出に成功した第2面のエッジ検出結果に基づいて特定される第1面の原稿領域DA1を、同じく特定される傾き角で傾動させる傾き補正処理を行う。さらに、傾き補正処理部75は、第1面のエッジ検出処理が成功し、かつ第2面のエッジ検出処理が失敗した場合、検出に成功した第1面のエッジ検出結果に基づいて特定される第2面の原稿領域DA2を、同じく特定される傾き角で傾動させる傾き補正処理を行う。
切出処理部76は、読取データSDから原稿領域DAを切り出す切出処理を行う。切出処理部76は、この切出処理によって原稿の画像データGDを生成する。詳しくは、切出処理部76は、表面の第1読取データSD1から原稿領域DA1を切り出して原稿表面の画像データGD1を生成する切出処理と、裏面の第2読取データSD2から原稿領域DA2を切り出して原稿裏面の画像データGD2を生成する切出処理とを行う。
ここで、原稿の表面P1を「第1面P1」、原稿の裏面P2を「第2面P2」とする。切出処理部76は、次の処理を行う。切出処理部76は、第1面のエッジ検出処理が成功した場合、第1面の原稿領域DA1を切り出して第1面の画像データを生成する切出処理を行う。また、切出処理部76は、第2面のエッジ検出処理が成功した場合、第2面の原稿領域DA2を切り出して第2面の画像データを生成する切出処理を行う。
また、切出処理部76は、第1面のエッジ検出処理が失敗し、かつ第2面のエッジ検出処理が成功した場合、検出に成功した第2面のエッジ検出結果に基づいて特定される原稿領域DA1を第1読取データSD1から切り出して第1面の画像データGD1を生成する切出処理を行う。さらに、切出処理部76は、第1面のエッジ検出処理が成功し、かつ第2面のエッジ検出処理が失敗した場合、検出に成功した第1面のエッジ検出処理の検出結果に基づいて特定される第2面の原稿領域DA2を第2読取データSD2から切り出して第2面の画像データGD2を生成する切出処理を行う。
回転処理部77は、原稿の画像データGDの向きを揃えるために画像データGDを回転させる回転処理を行う。詳しくは、回転処理部77は、原稿表面の画像データGD1の向きを揃えるための回転角度を決定し、決定した回転角度で表面の画像データGD1を回転させる回転処理を行う。また、回転処理部77は、原稿裏面の画像データGD2の向きを揃えるための回転角度を決定し、決定した回転角度で裏面の画像データGD2を回転させる回転処理を行う。
特に、回転処理部77は、画像データGD1,GD2を回転させる回転角度を、画像データGD1,GD2中に含まれる文字の向きを検出する文字検出結果に基づいて決定する。また、本実施形態の回転処理部77は、原稿の綴じ位置を示す情報である綴じ位置情報を取得する。綴じ位置情報の取得方法には2種類ある。1つは、綴じ位置にある綴じた跡を画像から検出する方法であり、他の1つは、ユーザーが操作部21,101の操作により綴じ位置情報を画像読取装置11の制御部50に与える方法である。前者の方法を採用する場合、回転処理部77は、綴じ位置検出処理を行う。また、後者の方法を採用する場合、例えば、「横綴じ」(図8、図9を参照)と「上綴じ」(図10、図11を参照)とを含む複数の綴じ方式の選択肢の中から1つを選択する方法が挙げられる。
画像処理部73は、記憶部61に記憶された図22~図25にフローチャートで示されるプログラムPRをコンピューター60が実行することで、制御部50内に主にソフトウェアよりなる機能部分として構成される。画像処理部73は、主にソフトウェアよりなるエッジ検出処理部74、傾き補正処理部75、切出処理部76および回転処理部77を備える。なお、エッジ検出処理部74、傾き補正処理部75および切出処理部のうち一部が、ASIC等の電子回路で構成されるハードウェアであってもよい。
本実施形態では、画像処理部73は、図22にフローチャートで示される第1画像処理と、図23~図25にフローチャートで示される第2画像処理とを行う。そして、エッジ検出処理部74、傾き補正処理部75および切出処理部76は、画像処理部73が第1画像処理を行うときに起動される。第1画像処理により、原稿表面の画像データGD1と原稿裏面の画像データGD2とが生成される。
また、回転処理部77は、画像処理部73が第2画像処理を行うときに起動される。画像処理部73は、原稿表面の画像データGD1と原稿裏面の画像データGD2とを文字検出処理で検出した文字の向きに基づいて適切な向きに揃えるために所定の回転角度で回転させる回転処理を行う。また、文字検出処理で文字を検出できなかった文字の検出に失敗した面があると、文字の検出に成功した面の文字検出結果と綴じ位置情報とに基づいて、文字の検出に失敗した面の画像データを回転させる回転処理に必要な回転角度を決定する。
ここで、原稿の表面P1と裏面P2とのうち一方の面を第1面、第1面と反対の面を第2面とする。例えば、表面P1を「第1面P1」、原稿の裏面P2を「第2面P2」とする。回転処理部77は、次の処理を行う。回転処理部77は、第1面の画像に対する文字検出処理が成功した場合、第1面の文字検出結果から特定される文字の向きに基づいて特定される回転角度で第1面の画像データGD1を回転させる回転処理を行う。また、回転処理部77は、第2面の画像に対する文字検出処理が成功した場合、第2面の文字検出結果から特定される文字の向きに基づいて特定される回転角度で第2面の画像データGD2を回転させる回転処理を行う。
また、回転処理部77は、第1面の画像に対する文字検出処理が失敗し、かつ第2面の画像に対する文字検出処理が成功した場合、検出に成功した第2面の画像に対する文字検出結果と綴じ位置情報とに基づいて特定される回転角度で第1面の画像データGD1を回転させる回転処理を行う。さらに、回転処理部77は、第1面の画像に対する文字検出処理が成功し、かつ第2面の画像に対する文字検出処理が失敗した場合、検出に成功した第1面の文字検出結果と綴じ位置情報とに基づいて特定される回転角度で第2面の画像データGD2を回転させる回転処理を行う。
画像処理部73は、回転処理まで終えた画像データGD1,GD2を、ユーザーが指定した形式のファイルに変換する。画像処理部73は、回転処理後の画像データGD1,GD2を、読取条件情報中の形式指定情報に応じた形式のファイルに変換する。形式指定情報は、JPEG形式、PDF形式、GIF形式などの予め用意された複数の形式のうちのいずれか一つが指定される。そして、画像処理部73は、指定された形式のファイルを、出力部63を介して指定された送信先に送信する。画像処理部73は、指定された形式のファイルに変換した画像データGD1,GD2を、例えば、ホスト装置100に送信する。
図4は、第1イメージセンサー42Aが原稿14の表面P1(図12参照)を読み取った表面の読取データSD1と、第2イメージセンサー42Bが原稿14の裏面P2(図12参照)を読み取った裏面の読取データSD2とを示す。図4では、原稿14が斜行(スキュー)した状態で読み取られた読取データSD1,SD2の例を示す。なお、本実施形態では、原稿14の表面P1が第1面に相当し、原稿14の裏面P2が第2面に相当する。
また、イメージセンサー42A,42Bは、原稿14の先端が、イメージセンサー42A,42Bの読取位置に到達する少し前のタイミングから読取りを開始するとともに、原稿14の後端が読取位置を通過した時よりも少し後のタイミングで読取りを終了する。このため、図4に示すように、表面の読取データSD1は、矩形の読取領域SA1内に原稿領域DA1を含むデータである。また、裏面の読取データSD2は、矩形の読取領域SA2内に原稿領域DA2を含むデータである。なお、原稿14の表面と裏面とを特に区別しない場合、単に、読取データSD、読取領域SA、原稿領域DAと記す。
まず、読取データSD1において原稿領域DA1のエッジEG1(辺)を検出する。すなわち、読取データSD1の原稿領域DA1以外の背景領域BA1は、色基準板43を読み取った画像部分である。色基準板43は、原稿14の媒体自体の色とは異なる無彩色を呈している。具体的には、色基準板43は、灰色を呈している。このため、通常は白色である原稿14の媒体(例えば用紙)との間に色の差または濃度の差に基づく境界線が現れる。エッジ検出処理部74は、原稿領域DA1と背景領域BA1との境界線を色差または濃度差に基づいて検出する。境界線から原稿領域DA1の辺が認識される。そして、原稿領域DA1の4辺が特定されることで、原稿領域DA1が特定される。同様に、裏面の読取データSD2において原稿領域DA2のエッジEG2(辺)を検出することにより、原稿領域DA2が特定される。原稿領域DA1,DA2が特定されると、原稿領域DA1,DA2の位置座標、サイズおよび傾き角θが求められる。傾き角θは、副走査方向Yに対する原稿領域DA1,DA2の傾き角θとして算出される。
ここで、図4に示すように、第1読取データSD1中の原稿領域DA1の傾き角θ=θ1、第2読取データSD2中の原稿領域DA2の傾き角θ=θ2とする。表面の原稿領域DA1の傾き角θ1と裏面の原稿領域DA2の傾き角θ2との間には、θ1=-θ2の関係がある。
ここで、原稿14に印刷された文字や絵の濃度が薄い場合、読取部40A,40Bは、自動で読取濃度を濃くする処理を行う。このため、原稿14の文字や絵が薄くかつ原稿14に皺がある場合、皺が濃く読み取られてしまう。この場合、読み取られた原稿14の皺が、原稿14の矩形の辺に交わるように存在すると、エッジ検出処理部74は、原稿領域DA1の境界線と皺とを区別できない。この結果、エッジ検出処理部74は、原稿14に多くの皺が存在する場合、皺が邪魔してエッジを正しく検出できず、原稿領域DAを特定できない。原稿領域DAが特定されないと、原稿領域DAの位置座標および傾き角θの算出が不能になる。このため、傾き補正エラー、切出しエラー、回転処理エラーが発生する。
これらの傾き補正処理、切出処理、回転処理は、原稿14の表面と裏面とで別々に行われる。本実施形態では、原稿14の表面と裏面のうち一方の面の原稿領域DAが特定できない場合、表面と裏面のうち原稿領域DAを特定できた側の面のエッジ検出結果に基づいて、原稿領域DAを特定できなかった面の原稿領域DAの位置座標および傾き角θを特定し、原稿領域DAを特定できなかった面の原稿領域DAの傾き補正処理および切出処理を行う。
ここで、原稿領域DAの位置座標および傾き角θは、傾き補正処理という所定の画像処理を行うために必要な画像処理変数の一例に相当する。そして、一方の面のエッジ検出処理に失敗した場合、エッジ検出できた他方の面の画像に対するエッジ検出処理結果から特定した原稿領域DAの位置座標および傾き角θの値に基づき、失敗した一方の面の画像に対する原稿領域DAの位置座標および傾き角θを特定する。また、原稿領域DAの位置座標は、切出処理という所定の画像処理を行うために必要な画像処理変数の一例に相当する。そして、一方の面のエッジ検出処理に失敗した場合、エッジ検出できた他方の面の画像に対するエッジ検出処理結果から特定した原稿領域DAの位置座標の値に基づき、一方の面の画像に対する原稿領域DAの位置座標の値に基づき切出処理を行う。なお、傾き角θを取得するために行われるエッジ検出処理は、傾き角検出処理の一例に相当する。また、原稿領域を取得するために行われるエッジ検出処理は、領域検出処理の一例に相当する。
図5に示すように、表面のエッジ検出処理が成功し、裏面のエッジ検出処理が失敗した場合、副走査方向Yの位置座標は同じにして頂点のX座標値を、原稿領域DA1の中心Oを通る副走査方向Yと平行な線に対して線対称な位置のX座標値として算出する。この計算を4つの頂点について行う。
ここで、原稿領域DA1の中心を座標上の原点とすると、次の関係が成り立つ。原稿の一面に対応する原稿領域DA1の4つの頂点A,B,C,Dの座標を(x1,y1),(x2,y2),(x3,y3),(x4,y4)とすると、原稿の他面(例えば裏面)の原稿領域DA2の4つの頂点E,F,G,Hの座標は、(-x1,y1),(-x2,y2),(-x3,y3),(-x4,y4)で示される。よって、一方の面でエッジを検出できていれば、他方の面でエッジを検出できなかったとしても、一方の面の原稿領域DA1の4つの頂点の座標値から他方の面の原稿領域DA2の4つの頂点の座標値を特定でき、4つの頂点の座標値から他方の面の原稿領域DA2を特定できる。また、傾き角θ1=-θ2の関係がある。こうしてエッジを検出できなかった他方の面の原稿領域DAの4つの頂点の座標値と傾き角θとが特定される。このため、エッジ検出に失敗した他方の面で原稿領域DAの傾き補正処理および切出処理が可能になる。なお、説明の便宜上、原稿領域DA1の中心Oを原点と仮定したが、原点はどこに設定しても4つの頂点の座標値は算出できる。なお、図5に示す一方の面の原稿領域DAの位置座標値から他方の面の原稿領域DAの位置座標値を算出する処理は、検出に失敗した一方の面(図5の例では裏面)の画像に対する画像処理変数の値を、検出に成功した他方の面(図5の例では表面)の画像に対する検出結果から特定した画像処理変数の値に基づいて特定する処理に相当する。
図6に示すように、読取データSD1,SD2に傾き補正処理が施された結果、原稿領域DA1,DA2が斜行のない向きに補正される。図6に示す読取データSD1,SD2から切出処理部76により原稿領域DA1,DA2が切り出され、画像データGD1,GD2が生成される。画像データGD1,GD2には、図8~図11に示すように、原稿に記載された文章などを構成する文字または文字列が含まれる。回転処理部77は、原稿領域DAに含まれる文字の向きを揃えるため、原稿の画像データGD1,GD2を回転させる回転処理を行う。このため、回転処理部77は、画像データGD1,GD2中の文字を検出する文字検出処理を行う。
<文字検出処理>
回転処理部77は、所定の検出処理として、文字を検出する文字検出処理を行う。回転処理部77は、所定の画像処理として、文字の検出結果に基づき画像データGD1,GD2を回転させる回転角度を決定し、その決定した回転角度で画像データGD1,GD2を回転させる回転処理を行う。文字検出処理に失敗した場合、その失敗した面の画像を回転させる回転角度を特定できなくなる。そのため、文字検出に成功した他方の面の検出結果から特定される文字の向きを示す値と綴じ位置情報とから特定される回転角度に基づいて、文字検出に失敗した一方の面の画像を回転させる回転角度を特定する。回転処理部77は、その特定した回転角度で、文字検出に失敗した面の画像を回転させる回転処理を行う。この回転角度は、画像データを回転させる回転処理という所定の画像処理を行うために必要な画像処理変数の一例に相当する。
詳しくは、記憶部61には、予め登録文字が記憶されている。登録文字は、例えば、数字、アルファベットのうち上下反転されても、その反転を識別可能な文字である。つまり、文字の上半分と下半分とが線対称の関係になくかつ右半分と左半分とが線対称の関係にない文字が登録文字として登録されている。
回転処理部77は、文字検出処理を行うとき、原稿14から読み取られた文字列の中から登録文字と一致する文字を検出する。回転処理部77は、例えば、パターンマッチング処理により登録文字の検出を行う。登録文字が検出されると、次にその検出された登録文字の向きを判定する。文字の向きが揃うように原稿領域DA1,DA2の向きを揃える。すなわち、回転処理部77は、切り出した原稿領域DA1,DA2に対して文字の向きを揃える回転処理を行う。
図8は、原稿14の表面を読み取った画像データGD1を示し、図9は、原稿14の裏面を読み取った画像データGD2を示す。図8、図9に示すように、原稿の画像データGD1,GD2に文字が記載されている。図8、図9に示す例では、文字としてアルファベットと数字が記載されている。回転処理部77は、原稿の文字のうちから登録文字を検出する文字検出処理を行う。回転処理部77は、登録文字を検出すると、その検出された登録文字の向きを検出する。ここで、コンピューター60により構成される回転処理部77は、文字の向きを、例えば2ビットの数値として扱う。文字の向きは、例えば90度ごとの4つの向きが規定され、それぞれ「00」「01」「10」「11」の値で示される。よって、文字検出処理の検出結果から特定される画像処理変数の値は、本例では、2ビットの値で示される。
<綴り位置検出処理>
本実施形態の回転処理部77は、原稿の画像データGD1,GD2に対して綴じ位置を検出する綴じ位置検出処理を行う。綴じ位置検出処理は、画像データGD1,GD2から原稿14の綴じ位置を検出する処理である。原稿14の綴じ位置の違いによる綴じ方式には、図8、図9に示す「横綴じ」と、図10、図11に示す「上綴じ」とがある。
例えば、印刷装置(図示略)により、綴じ方式を指定して印刷されると、原稿の指定された縁部に図8、図9に二点鎖線で示す綴じ代領域FAが設定され、その綴じ代領域FA以外の領域に文章等の文字列や絵などが印刷される。そして、ユーザーは、綴じ代領域FAに穴あけパンチ(パンチャー)やステープラー等の綴じ機器を用いて原稿14を綴じる。
綴じ方法には、原稿14の綴じ代にパンチ穴を空けて複数枚の原稿14をバイダー等に綴じる方法や、複数枚の原稿14の綴じ代を合わせた状態に重ね、ステープラーで綴じる方法などが挙げられる。このように綴じられた複数枚の原稿14をスキャンする場合がある。この場合、複数枚の原稿14には、綴じ代にパンチ穴が空いていたり、ステープラーの針の跡が付いていたりする。
原稿14を読み取って得られる読取画像には、ステープラーの針の跡やパンチ穴が識別可能に含まれる場合がある。図8、図9に示す例では、原稿の画像データGD1,GD2の綴じ代領域FAには、綴じ位置の検出対象としてパンチ穴等の綴じ跡が存在する。回転処理部77は、原稿の画像データGD1,GD2に基づいてパンチ穴または針跡を画像上で検出することで、原稿の画像データGD1,GD2における綴じ位置を検出する綴じ位置検出処理を行う。このように、本実施形態の回転処理部77は、文字検出処理および綴じ位置検出処理を行う。なお、綴じ位置検出処理に替え、あるいは綴じ位置検出処理に加え、綴じ位置の情報をユーザーが、画像読取装置11の操作部21の操作またはホスト装置100の操作部101の操作により画像読取装置11の制御部50またはホスト装置100に入力してもよい。綴じ位置の指定は、例えば、表示部22,102に表示された「横綴じ」と「上綴じ」を選択可能な選択欄で、スキャンする複数枚の原稿が「横綴じ」であるか「上綴じ」であるかを指定する。コンピューター60により構成される画像処理部73は、綴じ位置検出処理あるいは綴じ位置情報の入力を行う。綴じ位置情報は、本例では「横綴じ」と「上綴じ」との2つあり、例えば1ビットの値「0」「1」で示される。
図8、図9は、横綴じの原稿の両面を読み取って得られる画像を示す。図8は原稿の表面の画像であり、図9は原稿の裏面の画像である。図8、図9に示す横綴じ方式では、文字の向きが原稿の長辺と平行になり且つ文字の上部が一方の短辺を向いており、文字列の方向(書字方向)が原稿の短辺と平行になる。そして、綴じ代領域FAが、原稿の一方の長辺に沿った側縁部に確保される。原稿表面の綴じ代と原稿裏面の綴じ代は、綴じ代以外の領域、つまり文字列等が配置されている領域に対して互いに反対側に位置する。換言すると、図8、図9に示すように、「横綴じ」では、文字を読める向きに原稿を配置したとき、文字が配置される領域の横に綴じ代が位置し、綴じ代の位置が原稿の表裏で左右反対となる。
図10、図11に示す上綴じ方式では、文字の向きが原稿の短辺と平行になり且つ文字の上部が一方の長辺を向いており、文字列の方向が原稿の長辺と平行になる。そして、綴じ代領域FAが、原稿の一方の長辺に沿った側縁部に確保される。原稿表面の綴じ代と原稿裏面の綴じ代は、文字列等が配置されている領域に対して互いに反対側に位置する。換言すると、図10、図11に示すように、「上綴じ」では、文字を読める向きに原稿を配置したとき、文字の上に綴じ代が位置する。なお、文字の向きとは、文字を読める向きを指し、文字の上部が上側となる向きをいう。
次に、画像読取装置11の作用について説明する。
ユーザーは画像読取装置11の操作部21またはホスト装置100の操作部101の操作により画像読取装置11に対して読取条件を設定する。詳しくは、ユーザーは、画像読取装置11の原稿サポート13の載置面13Aに原稿14をセットした後、操作部21,101を操作して、読取解像度(600dpi/300dpi)、読取色(カラー/グレースケール)及び読取方法(片面読取/両面読取)を含む読取条件を選択する。このとき、原稿14の両面読取を希望するユーザーは、両面読取を指定する。そして、ユーザーは、操作部21,101を操作してスキャンの実行を指示する。スキャン指示は読取条件情報を含む。画像読取装置11は、スキャン指示を受け付けると、セットされた原稿の読取りを開始する。
制御部50内の搬送制御部71は、搬送機構30の駆動源であるモーター37,38を駆動制御して、載置面13Aにセットされた原稿14は最下層のものから順番に一枚ずつ給送される。
画像読取装置11は、搬送途中の原稿を読取位置で読取部40が読み取る。詳しくは、両面読取時は、第1イメージセンサー42Aが原稿14の表面P1を読み取り、第2イメージセンサー42Bが原稿14の裏面P2を読み取る。このとき、各イメージセンサー42A,42Bは、原稿14とその背景である色基準板43とを読み取る。
各イメージセンサー42A,42Bから出力される読取信号はAFE65を介して読取データとして画像処理部73に入力される。すなわち、図4に示すように、読取データSDは、矩形の読取領域SA内に原稿領域DAと背景領域BAとを含む。例えば、原稿を搬送するときにスキューが発生すると、図4に示すように原稿が搬送方向Y1に対して傾く。そのため、各イメージセンサー42A,42Bは傾いた原稿を読み取る。その結果、読取データSDの読取領域SAにおいて原稿領域DAは所定の角度で傾く。
ところで、原稿に皺があったり、原稿の地の色が色基準板の色と同系色であったりすると、読取データSDにおいて原稿領域DAと背景領域BAとの境界であるエッジを検出できない場合がある。エッジを検出できない場合、従来は、傾き補正処理、切出処理および回転処理ができない。本実施形態では、両面読取時に原稿の両面のうち一面のエッジが検出されなくても、その反対側の面でエッジが検出されれば、その面の傾き補正処理および切出処理を、検出できた側の面の傾き補正値に基づいて行う。
また、本実施形態では、所定の検出処理として、文字検出処理を行う。文字検出処理で文字を検出されなかった面では、その反対の面で文字を検出できた場合、検出できた面の検出結果に基づいて文字を検出できなかった面における文字の向きを推定し、推定した文字の向きに合わせた回転処理を行う。
この場合、本実施形態では、原稿の綴じ方式の情報を利用する。原稿の綴じ方式には、主に「横綴じ」と「上綴じ」とがある。所定の検出処理として、綴じ位置検出処理を行う。綴じ位置検出処理で綴じ跡を検出されなかった面では、その反対の面で綴じ跡を検出できた場合、検出できた面の検出結果に基づいて綴じ跡を検出できなかった面における綴じ方式を推定し、推定した綴じ方式に合わせた回転処理を行う。
次に、図22を参照して、第1画像処理ルーチンについて説明する。この第1画像処理ルーチンは、ユーザーが操作したホスト装置からスキャン指示を受け付けたときに、制御部50内のコンピューター60がプログラムPRを実行することで行われる。なお、ユーザーは、画像読取装置11の原稿サポート13の載置面13Aに原稿14をセットした後、ホスト装置100のマウス等の操作部101を操作して、読取解像度(600dpi/300dpi)、読取色(カラー/グレースケール)及び読取方法(片面読取/両面読取)を含む読取条件を選択後、スキャンの実行を指示する。このスキャンの実行の指示を受け付けると、制御部50(コンピューター60)は、図22に示す第1画像処理ルーチンを実行する。
制御部50は、コンピューター60に第1画像処理ルーチンを実行させる。この第1画像処理では、コンピューター60がプログラムを実行することで構成されるソフトウェアよりなる、エッジ検出処理部74、傾き補正処理部75および切出処理部76が所定のタイミングで起動される。この第1画像処理では、所定の検出処理として、エッジ検出処理を含み、所定の画像処理として、傾き補正処理および切出処理を含む。
まずステップS11では、制御部50は、原稿表面のエッジ検出処理を行う。詳しくは、エッジ検出処理部74がエッジ検出処理を行う。エッジ検出処理部74は、表面の読取データに対して、例えば2値化処理を施し、濃度差が所定の閾値を超えるエッジを検出する。原稿の領域は白色で背景は灰色なので、原稿と背景との境界線がエッジとして検出される。つまり、原稿の輪郭線がエッジとして検出される。原稿は長方形であり、4辺が少し切れていても、4辺の部分的な直線を延長した延長線の交点から原稿領域の4つの頂点を特定できる。このように原稿の輪郭線である4辺を特定可能なレベルでエッジが検出されれば、原稿表面のエッジが検出できたとする。また、原稿14に皺があったり、原稿14の地の色が色基準板43と同系色であったりすると、読取データSD1における原稿領域DA1の4辺を特定可能なレベルでエッジを検出できない場合がある。
ステップS12では、表面でエッジを検出できたか否かを判定する。表面でエッジを検出できればステップS13に進み、表面でエッジを検出できなければステップS16に進む。
ステップS13では、制御部50は、エッジ検出フラグF1を「1」にする(F1=1)。
また、ステップS16では、制御部50は、エッジ検出フラグF1を「0」にする(F1=0)。
ステップS14では、制御部50は、原稿表面の傾き補正処理を行う。詳しくは、傾き補正処理部75が傾き補正処理を行う。傾き補正処理部75は、表面の読取データSD1においてエッジを検出できた4つの辺で特定される原稿領域DA1の傾き角θを求め、この傾き角θを無くすための傾き補正値を算出する。この傾き補正値は、原稿14のスキューによる傾きを補正するための回転角度で示され、例えば、-45°<θ<45°を満たす範囲内の値である。そして、傾き補正処理部75は、傾き補正値を基に原稿領域DAを、例えば±45°未満の補正角度-θだけ回転させることで、原稿領域の傾きを補正する。その結果、図6に示すように、原稿領域DA1が傾きのない姿勢角に補正される。
ステップS15では、制御部50は、原稿表面の切出処理を行う。詳しくは、切出処理部76が、原稿表面の切出処理を行う。切出処理部76は、表面の読取データSD1で規定される読取領域SA1から、傾き補正後の原稿表面に相当する原稿領域DA1を切り出す。この切出処理の結果、原稿領域DA1が切り出され、図7に示す原稿表面の画像データGD1が取得される。
次のステップS17では、制御部50は、原稿裏面のエッジ検出処理を行う。詳しくは、エッジ検出処理部74は、原稿裏面の読取データSD2(図4参照)に対して、原稿表面の読取データSD1に対して行った処理と同様のエッジ検出処理を行う。このエッジ検出処理の結果、原稿裏面の輪郭線がエッジとして検出される。原稿の4辺が少し切れていても、4辺の部分的な直線を延長した延長線の交点から原稿領域の4つの頂点を特定できる。このように原稿の輪郭線である4辺を特定可能なレベルでエッジが検出されれば、原稿裏面のエッジが検出できたとする。また、前述の通り、原稿14に皺があったり、原稿14の地の色が色基準板43と同系色であったりすると、読取データSD2における原稿領域DA2の4辺を特定可能なレベルでエッジを検出できない場合がある。なお、本実施形態では、ステップS11およびステップS17の処理が、所定の検出処理を行う検出処理ステップ、画像の傾き角を検出する傾き角検出処理ステップ、原稿領域を検出する領域検出処理ステップの一例に相当する。
ステップS18では、制御部50は、裏面でエッジを検出できたか否かを判定する。裏面でエッジを検出できればステップS19に進み、裏面でエッジを検出できなければステップS24に進む。
ステップS19では、制御部50は、原稿裏面の傾き補正処理を行う。詳しくは、傾き補正処理部75は、裏面の読取データSD2に対して表面のときと同様の傾き補正処理を行う。傾き補正処理部75は、裏面の読取データSD2においてエッジを検出できた4つの辺で特定される原稿領域DA2の傾きを求め、この傾きを無くことが可能な傾き補正値を算出する。そして、傾き補正処理部75は、傾き補正値を基に原稿領域DA2を、例えば±45°未満の補正角度-θだけ回転させることで、原稿領域DA2の傾きを補正する。その結果、図6に示すように、原稿領域DA2が傾きのない姿勢角に補正される。
ステップS20では、制御部50は、原稿裏面の切出処理を行う。詳しくは、切出処理部76が、原稿裏面の切出処理を行う。切出処理部76は、裏面の読取データSD2で規定される読取領域SA2から、傾き補正後の原稿裏面に相当する原稿領域DA2を切り出す。この切出処理の結果、原稿領域DA2が切り出され、図7に示す原稿裏面の画像データGD2が取得される。
ステップS21では、制御部50は、エッジ検出フラグF1=0であるか否かを判定する。F1=0であればステップS22に進み、F1=0でなければ当該ルーチンを終了する。
ステップS22では、制御部50は、裏面補正値を基に原稿表面の傾き補正処理を行う。つまり、原稿表面のエッジを検出できなかった場合(F1=0)、エッジ検出ができた反対の面である裏面の傾き補正値を用いて原稿表面の傾き補正処理を行う。ここで、図5に示すように、原稿がスキューした場合、副走査方向Yに対して所定角度で傾斜した原稿を表面からと裏面からとで読み取るので、副走査方向Yに対する傾き角θ1,θ2は同じで傾斜する方向が反対となる。つまり、θ1=-θ2の関係がある。この関係から、読取データSDにおいて、表面の原稿領域DA1の頂点の座標と、裏面の原稿領域DA2の頂点の座標とは、副走査方向Yの座標値が同じであり、主走査方向Xの座標値が、原稿の中心を通りかつ副走査方向Yと平行な仮想線に対して線対称な位置関係にある。
ここで、原稿領域DAの中心のX座標を原点とすると、次の関係が成り立つ。原稿の一面に対応する原稿領域DA1の4つの頂点の座標を(x1,y1),(x2,y2),(x3,y3),(x4,y4)とすると、原稿の他面に対応する4つの頂点の座標は、(-x1,y1),(-x2,y2),(-x3,y3),(-x4,y4)で示される。よって、一方の面でエッジを検出できていれば、他方の面でエッジを検出できなかったとしても、一方の面の原稿領域の4つの頂点の座標から他方の面の原稿領域の4つの頂点の座標を特定でき、4つの頂点の座標から他方の面の原稿領域DA1を特定できる。また、原稿の表面と裏面との傾き角の関係は、一方の傾き角θと他方の傾き角-θとの関係がある。こうしてエッジを検出できなかった表面の原稿領域DA1と傾き角θとが特定される。なお、説明の便宜上、原稿の中心のX座標を原点と仮定したが、原点はどこに設定しても4つの頂点の座標値は算出できる。
ステップS23では、制御部50は、原稿表面の切取処理を行う。詳しくは、切出処理部76は、表面の読取データSD1で規定される読取領域SA1から、傾き補正後の原稿表面に相当する原稿領域DA1を切り出す。この切出処理の結果、原稿領域DA1が切り出され、図7に示す原稿表面の画像データGD1が取得される。
一方、裏面でエッジを検出できなかった場合、ステップS24において、制御部50は、エッジ検出フラグF1=1であるか否かを判定する。F1=1であればステップS25に進み、F1=1でなければ当該ルーチンを終了する。
ステップS25では、表面補正値を基に原稿裏面の傾き補正処理を行う。つまり、原稿裏面のエッジを検出できなかった場合、エッジ検出ができた反対の面である表面の傾き補正値を用いて原稿裏面の傾き補正処理を行う。つまり、前述した図5に示す関係、すなわち、原稿の一面に対応する原稿領域DA1の4つの頂点の座標(x1,y1),(x2,y2),(x3,y3),(x4,y4)と、原稿の他面に対応する4つの頂点の座標(-x1,y1),(-x2,y2),(-x3,y3),(-x4,y4)との関係を用いる。よって、一方の面でエッジを検出できていれば、他方の面でエッジを検出できなかったとしても、一方の面の原稿領域の4つの頂点の座標から他方の面の原稿領域の4つの頂点の座標を特定し、その特定した4つの頂点の座標から他方の面の原稿領域DA2を特定する。また、表面の原稿領域DA1の傾き角θ1と裏面の原稿領域DA2の傾き角θ2との間には、θ1=-θ2の関係がある。こうしてエッジを検出できなかった裏面の原稿領域DA2と傾き角θとが特定される。
ステップS26では、制御部50は、裏面の切出処理を行う。詳しくは、切出処理部76は、裏面の読取データSD2で規定される読取領域SA2から、傾き補正後の原稿裏面に相当する原稿領域DA2を切り出す。この切出処理の結果、原稿領域DA2が切り出され、図7に示す原稿裏面の画像データGD2が取得される。
なお、本実施形態では、ステップS14,S15,S19,S20,S22,S23,S25,S26の処理が、所定の画像処理を行う画像処理ステップの一例に相当する。また、ステップS14,S19,S22,S25の処理が、傾き補正処理ステップの一例に相当する。さらに、ステップS15,S20,S23,S26の処理が、切出処理ステップの一例に相当する。
次に、図23を参照して、第2画像処理ルーチンについて説明する。
まずステップS31では、制御部50は、表面で文字を検出する文字検出処理を行う。制御部50は、予め記憶部61に記憶された所定の登録文字を用いて、例えば、表面の画像データGD1に対してパターンマッチング処理を行って、登録文字と類似度が閾値以上と高い文字を検出する。制御部50は、文字が検出されると、その検出された文字から文字の向きを認識する。
例えば、図8、図10に示す表面の画像データGD1の例では、登録文字と同じ文字としてアルファベット「A」および数字「2」が含まれる。このため、制御部50は、文字検出処理の結果、文字「A」と「2」を検出する。図8に示す横綴じの例では、文字「A」,「2」の向きは、文字が原稿の短辺が文字の上側に位置する向きに配置されている。また、図8に示すように、画像データGD1において綴じ跡PTが位置する原稿の綴じ位置は、原稿における文字に対して横に位置する横綴じである。横綴じの原稿では、文字の横側の側縁に綴じ代領域FAが位置し、綴じ代領域FA内にパンチ穴等の綴じ跡PTが位置している。
また、図10に示す上綴じの例では、文字「A」,「2」の向きは、文字が原稿の長辺が文字の上側に位置する向きに配置されている。また、図10に示すように、画像データGD1において綴じ跡PTが位置する原稿の綴じ位置は、原稿における文字に対して上に位置する上綴じである。上綴じの原稿では、文字の上側の側縁に綴じ代領域FAが位置し、綴じ代領域FA内にパンチ穴等の綴じ跡PTが位置している。
ステップS32では、制御部50は、表面で文字を検出できたか否かを判定する。表面で文字を検出すると、ステップS33において文字検出フラグF2を「1」とし、次のステップS34に進む。一方、表面で文字を検出できなかった場合は、ステップS35において文字検出フラグF2を「0」とし、ステップS36に進む。
ステップS34では、制御部50は、原稿表面の回転処理を行う。制御部50は、文字の向きが縦向きとなる回転角度を決定し、決定した回転角度で表面の画像データGD1を回転させる回転処理を行う。すなわち、回転処理の結果、表面の画像データGD1は図8に示す向きに配置される。
ここで、図12に示す横綴じ原稿14Aである場合、表面P1と裏面P2は、図12に示す関係にある。図12に示す横綴じ原稿14Aでは、文字は、象徴的にアルファベットで記載され、表面P1に「ABC」、裏面P2に「XYZ」が印刷されている。横綴じ原稿14Aを原稿サポート13の載置面13Aにセットする向きには、図13~図16に示す4通りある。これらの向きにセットされた横綴じ原稿14Aは、その下側に示す表面の画像データGD1の向きと、裏面の画像データGD2の向きで読み取られる。そのため、各画像データGD1,GD2の下側に記載された時計回り方向CWに所定の回転角度だけ回転させると、図8、図9および図13に示すように、画像データGD1,GD2は文字が正立する向きに配置される。なお、図13は、横綴じ原稿14Aの表面が正しい向きで読み取られる向きに、載置面13Aに横綴じ原稿14Aがセットされた例である。
ステップS36では、制御部50は、裏面の文字検出処理を行う。制御部50は、予め記憶部61に記憶された所定の登録文字を用いて、例えば、裏面の画像データGD2に対してパターンマッチング処理を行って、登録文字と類似度が閾値以上と高い文字を検出する。制御部50は、文字が検出されると、その検出された文字から文字の向きを認識する。
例えば、図9、図11に示す裏面の画像データGD2の例では、登録文字と同じ文字としてアルファベット「Y」および数字「7」が含まれる。このため、制御部50は、文字検出処理の結果、文字「Y」と「7」を検出する。図9に示す横綴じの例では、文字「Y」,「7」の向きは、文字が原稿の短辺が文字の上側に位置する向きに配置されている。なお、本実施形態では、ステップS31およびステップS36の処理が、所定の検出処理の一例に相当する。また、ステップS31およびステップS36の処理が、文字検出処理ステップの一例に相当する。
また、図9に示すように、画像データGD2において綴じ跡PTが位置する原稿の綴じ位置は、原稿における文字に対して横に位置する横綴じである。横綴じ原稿14Aでは、文字の横側の側縁に同図に二点鎖線で示す綴じ代領域FAが位置し、綴じ代領域FA内にパンチ穴等の綴じ跡PTが位置している。
また、図11に示す上綴じの例では、文字「Y」,「7」の向きは、文字が原稿の長辺が文字の上側に位置する向きに配置されている。また、図11に示すように、画像データGD2において綴じ跡PTが位置する原稿の綴じ位置が、原稿における文字に対して上に位置する上綴じである。上綴じ原稿14Bでは、文字の上方の側縁に同図に二点鎖線で示す綴じ代領域FAが位置し、綴じ代領域FA内にパンチ穴等の綴じ跡PTが位置している。
ステップS37では、制御部50は、裏面で文字を検出できたか否かを判定する。裏面で文字を検出すると、ステップS38に進む。一方、裏面で文字を検出できなかった場合、ステップS43に進む。
ステップS38では、制御部50は、原稿裏面の回転処理を行う。制御部50は、文字の向きが縦向きとなる回転角度を決定し、決定した回転角度で裏面の画像データGD2を回転させる回転処理を行う。すなわち、回転処理の結果、裏面の画像データGD2は図9に示す向きに配置される。
ここで、図17に示す上綴じ原稿14Bである場合、表面P1と裏面P2は、図17に示す関係にある。図17に示す上綴じ原稿14Bでは、文字は、象徴的にアルファベットで記載され、表面P1に「ABC」、裏面P2に「XYZ」が印刷されている。上綴じ原稿14Bを原稿サポート13の載置面13Aにセットする向きは、図18~図21に示す4通りある。これらの向きにセットされた上綴じ原稿14Bは、その下側に示す表面の画像データGD1の向きと、裏面の画像データGD2の向きで読み取られる。そのため、各画像データGD1,GD2の下側に記載された時計回り方向CWに所定の回転角度だけ回転させると、図10、図11に示すように、画像データGD1,GD2は文字が正立する向きに配置される。
次のステップS39では、制御部50は、文字検出フラグF2が「0」である(F2=0)か否かを判定する。F2=0であればステップS40に進み、F2=0でなければ当該ルーチンを終了する。
ステップS40では、制御部50は、横綴じであるか否かを判定する。制御部50は、綴じ情報に基づいて横綴じ(横綴じ原稿14A)であるか否かを判定する。本実施形態では、制御部50の回転処理部77が、画像データGD1,GD2に対して綴じ位置を検出する綴じ位置検出処理を行い、その綴じ位置検出結果に基づいて横綴じであるか否かを判定する。制御部50は、横綴じであればステップS41に進み、横綴じでなければ、つまり上綴じ(上綴じ原稿14B)であればステップS42に進む。
ステップS41では、制御部50は、表面の画像データGD1に対して横綴じ回転処理を行う。詳しくは、制御部50は、図24にフローチャートで示す横綴じ回転処理ルーチンを実行する。この横綴じ回転処理の詳細は後述する。
ステップS42では、制御部50は、表面の画像データGD1に対して上綴じ回転処理を行う。詳しくは、制御部50は、図25にフローチャートで示す上綴じ回転処理ルーチンを実行する。この上綴じ回転処理の詳細は後述する。
一方、ステップS37において裏面で文字を検出できず、ステップS43に進んだ場合、ステップS43において、制御部50は、文字検出フラグF2が「1」である(F2=1)か否かを判定する。F2=1であればステップS44に進み、F2=1でなければ当該ルーチンを終了する。
ステップS44では、制御部50は、横綴じであるか否かを判定する。制御部50は、綴じ情報に基づいて横綴じ(横綴じ原稿14A)であるか否かを判定する。本実施形態では、制御部50の回転処理部77が、画像データGD1,GD2に対して綴じ位置を検出する綴じ位置検出処理を行い、その綴じ位置検出結果に基づいて横綴じであるか否かを判定する。制御部50は、横綴じであればステップS45に進み、横綴じでなければ、つまり上綴じ(上綴じ原稿14B)であればステップS42に進む。
ステップS45では、制御部50は、裏面の画像データGD2に対して横綴じ回転処理を行う。詳しくは、制御部50は、図24にフローチャートで示す横綴じ回転処理ルーチンを実行する。この横綴じ回転処理の詳細は後述する。
ステップS46では、制御部50は、裏面の画像データGD2に対して上綴じ回転処理を行う。詳しくは、制御部50は、図25にフローチャートで示す上綴じ回転処理ルーチンを実行する。この上綴じ回転処理の詳細は後述する。なお、本実施形態では、ステップS34,S38,S41,S42,S45,S46の処理が、回転処理の一例に相当する。
次に、図24に示す横綴じ回転処理ルーチンと、図25に示す上綴じ回転処理ルーチンとについて説明する。図24に示す横綴じ回転処理ルーチンは、図23に示す画像処理ルーチンにおけるステップS41およびステップS45の各処理に相当する。また、図25に示す上綴じ回転処理ルーチンは、図23に示す画像処理ルーチンにおけるステップS42よびステップS46各処理に相当する。
ここで、横綴じ原稿14Aである場合、原稿サポート13の載置面13Aに原稿14Aをセットするときの原稿14Aの向きは、図13~図16に示す4通りある。そして、図13~図16に示すように、原稿14をセットする向き、つまり原稿14が搬送方向Y1に搬送される向きに応じて、その原稿14が読み取られて得られる表面の画像データGD1と、裏面の画像データGD2との回転処理で回転されるべき回転角度の組合せは一義的に決まる。つまり、原稿14Aの表面と裏面とのうち一方の面の回転角度が分かれば、綴じ位置情報からの「横綴じ」の情報から、他方の面の回転角度が一義的に決まる。
また、上綴じ原稿14Bである場合、原稿サポート13の載置面13Aに原稿14Bをセットするときの原稿14Bの向きは、図18~図21に示す4通りある。そして、図18~図21に示すように、原稿14Bをセットする向き、つまり原稿14Bが搬送方向Y1に搬送される向きに応じて、その原稿14Bが読み取られて得られる表面の画像データGD1と、裏面の画像データGD2との回転処理で回転されるべき回転角度の組合せは一義的に決まる。つまり、原稿14Bの表面と裏面とのうち一方の面の回転角度が分かれば、綴じ位置情報からの「上綴じ」の情報から、他方の面の回転角度が一義的に決まる。
まず、図24に示す横綴じ回転処理について、図13~図16を参照しながら説明する。
まず、ステップS51では、制御部50は、検出できた面の画像の回転角度は90度であるか否かを判定する。文字検出できた面の画像の回転角度が90度であればステップS52に進み、90度でなければステップS53に進む。
ステップS52では、制御部50は、文字を検出できなかった面の画像を270度回転させる。詳しくは、この回転処理は、回転処理部77が行う。図14に示すように、横綴じの場合、文字検出に成功した表面の画像データGD1の画像を回転させる回転角度が90度であるとき、文字検出に失敗した裏面の画像データGD2の画像を回転させる回転角度は270度になる。よって、回転処理部77は、裏面の画像データGD2を時計回り方向CWに270度回転させる。また、図16に示すように、横綴じの場合、文字検出に成功した裏面の画像データGD2の画像を回転させる回転角度が90度であるとき、文字検出に失敗した表面の画像データGD1の画像を回転させる回転角度は270度になる。よって、回転処理部77は、表面の画像データGD1を時計回り方向CWに270度回転させる。
ステップS53では、検出できた面の画像の回転角度は180度であるか否かを判定する。文字検出できた面の画像の回転角度が180度であれば、ステップS54に進み、180度でなければステップS55に進む。
ステップS54では、制御部50は、文字を検出できなかった面の画像を180度回転させる。図15に示すように、横綴じの場合、文字検出に成功した表面の画像データGD1の画像を回転させる回転角度が180度であるとき、文字検出に失敗した裏面の画像データGD2の画像を回転させる回転角度は180度になる。よって、回転処理部77は、表面の文字検出に失敗し、裏面の文字検出に成功した場合、表面の画像データGD1を180度回転させる。また、回転処理部77は、表面の文字検出に成功し、裏面の文字検出に失敗した場合、裏面の画像データGD2を180度回転させる。
ステップS55では、検出できた面の画像の回転角度は270度であるか否かを判定する。文字検出できた面の画像の回転角度が270度であればステップS56に進み、270度でなければ当該ルーチンを終了する。
ステップS56では、制御部50は、文字を検出できなかった面の画像を90度回転させる。図14に示すように、横綴じの場合、文字検出に成功した裏面の画像データGD2の画像を回転させる回転角度が270度であるとき、文字検出に失敗した表面の画像データGD1の画像を回転させる回転角度は90度になる。よって、回転処理部77は、表面の画像データGD1を時計回り方向CWに90度回転させる。また、図16に示すように、横綴じの場合、文字検出に成功した表面の画像データGD1の画像を回転させる回転角度が270度であるとき、文字検出に失敗した裏面の画像データGD2の画像を回転させる回転角度は90度になる。よって、回転処理部77は、裏面の画像データGD2を時計回り方向CWに90度回転させる。
なお、図13に示すように、横綴じの場合、文字検出できた面の画像の回転角度が0度であるとき、文字を検出できなかった面の画像の回転角度が0度になる。よって、制御部50は、文字検出できた面の画像を回転させない(回転角度=0度)場合、文字検出できなかった反対の面の画像を回転させる回転角度が0度なので、特に処理を行わない。
次に、図25に示す上綴じ回転処理について、図18~図21を参照しながら説明する。
まず、ステップS61では、制御部50は、検出できた面の画像の回転角度は90度であるか否かを判定する。文字検出できた面の画像の回転角度が90度であればステップS62に進み、90度でなければステップS63に進む。
ステップS62では、制御部50は、文字を検出できなかった面の画像を90度回転させる。詳しくは、この回転処理は、回転処理部77が行う。図21に示すように、上綴じの場合、文字検出に成功した表面の画像データGD1の画像を回転させる回転角度が90度であるとき、文字検出に失敗した裏面の画像データGD2の画像を回転させる回転角度は90度になる。よって、回転処理部77は、裏面の画像データGD2を時計回り方向CWに90度回転させる。また、文字検出に成功した裏面の画像データGD2を回転させる回転角度が90度であるとき、文字検出に失敗した表面の画像データGD1を回転させる回転角度は90度になる。よって、回転処理部77は、表面の画像データGD1を時計回り方向CWに90度回転させる。
ステップS63では、検出できた面の画像の回転角度は180度であるか否かを判定する。文字検出できた面の画像の回転角度が180度であれば、当該ルーチンを終了し、180度でなければステップS64に進む。
ステップS64では、検出できた面の画像の回転角度は270度であるか否かを判定する。文字検出できた面の画像の回転角度が270度であればステップS65に進み、270度でなければステップS66に進む。
ステップS65では、制御部50は、文字を検出できなかった面の画像を270度回転させる。図19に示すように、上綴じの場合、文字検出に成功した表面の画像データGD1の画像を回転させる回転角度が270度であるとき、文字検出に失敗した裏面の画像データGD2の画像を回転させる回転角度は270度になる。よって、回転処理部77は、裏面の画像データGD2を時計回り方向CWに270度回転させる。また、文字検出に成功した裏面の画像データGD2を回転させる回転角度が270度であるとき、文字検出に失敗した表面の画像データGD1を回転させる回転角度は270度になる。よって、回転処理部77は、表面の画像データGD1を時計回り方向CWに270度回転させる。
ステップS66では、制御部50は、文字を検出できなかった面の画像を180度回転させる。すなわち、文字検出できた面の画像の回転角度が90度でもなく(ステップS61で否定判定)、180度でもなく(ステップS63で否定判定)、270度でもない(ステップS64で否定判定)ときは、0度である。図18に示すように、上綴じの場合、文字検出に成功した表面の画像データGD1の画像を回転させる回転角度が0度であるとき、文字検出に失敗した裏面の画像データGD2の画像を回転させる回転角度は180度になる。よって、回転処理部77は、裏面の画像データGD2を180度回転させる。また、図20に示すように、上綴じの場合、文字検出に成功した裏面の画像データGD2の画像を回転させる回転角度が0度であるとき、文字検出に失敗した表面の画像データGD1の画像を回転させる回転角度は180度になる。よって、回転処理部77は、表面の画像データGD1を180度回転させる。
本実施形態によれば、以下に示す効果が得られる。
(1)画像読取装置11は、原稿を読み取って画像を取得する。画像読取装置11は、原稿14の第1面P1を読み取って第1の画像を取得する第1読取部40Aと、原稿14の第1面P1と反対の面である第2面P2を読み取って第2の画像を取得する第2読取部40Bと、第1の画像に対して所定の検出処理と、第2の画像に対して所定の検出処理とを行う制御部50とを備える。制御部50は、第1の画像に対して所定の検出処理が成功した場合、所定の検出処理の検出結果から特定した画像処理変数の値に基づき、第1の画像に所定の画像処理を行う。制御部50は、第2の画像に対して所定の検出処理が成功した場合、所定の検出処理の検出結果から特定した画像処理変数の値に基づき、第2の画像に所定の画像処理を行う。制御部50は、第1面P1と第2面P2とのうち一方の面の画像に対する所定の検出処理が失敗した場合、第1面P1と第2面P2とのうち成功した他方の面の画像に対する所定の検出処理の検出結果から特定した画像処理変数の値に基づいて一方の面の画像に対する画像処理変数の値を特定する。そして、制御部50は、その特定した画像処理変数の値に基づき一方の面の画像に所定の画像処理を行う。
よって、第1面P1と第2面P2とのうち一方の面の所定の検出処理が失敗した場合、第1面P1と第2面P2とのうち成功した他方の面の所定の検出処理の検出結果から特定した画像処理変数の値に基づき一方の面の画像に対する画像処理変数の値を特定し、特定した画像処理変数の値に基づいて一方の面の画像に所定の画像処理を行う。したがって、一方の面の所定の検出処理が失敗しても、適切に画像処理された両面の画像を取得することができる。
(2)所定の検出処理は、画像中の原稿領域DA1,DA2の傾き角θ1,θ2を検出する傾き角検出処理である。所定の画像処理は、原稿領域DA1,DA2の傾きを小さく補正する傾き補正処理である。制御部50は、第1面P1と第2面P2とのうち一方の面の画像に対する傾き角検出処理が失敗した場合、第1面P1と第2面P2とのうち成功した他方の面の画像に対する傾き角検出処理の検出結果から特定される傾き角に基づいて、一方の面の画像中の原稿領域DA1またはDA2の傾き角θ1またはθ2を特定する。そして、制御部50は、特定した傾き角θ1またはθ2に基づき一方の面の画像に傾き補正処理を行う。よって、一方の面の画像の傾き検出処理が失敗しても、原稿領域DA1,DA2が適切に傾き補正された両面の画像データGD1,GD2を取得することができる。
(3)所定の検出処理は、画像中の原稿領域DA1,DA2を検出する領域検出処理の一例であるエッジ検出処理である。所定の画像処理は、画像から原稿領域DA1,DA2を切り出す切出処理である。制御部50は、第1面P1と第2面P2のうち一方の面の画像に対する領域検出処理が失敗した場合、第1面P1と第2面P2のうち成功した他方の面の画像に対する領域検出処理の検出結果から特定される原稿領域の位置座標値に基づいて、画像処理変数の値として、一方の面の画像中の原稿領域DA1またはDA2の位置座標値を特定する。そして、制御部50は、特定した原稿領域の位置座標値に基づき一方の面の画像から原稿領域を切り出す切出処理を行う。よって、一方の面の画像の領域検出処理が失敗しても、適切な原稿領域DA1,DA2で切り出された両面の画像データGD1,GD2を取得することができる。
(4)所定の検出処理は、画像中の文字を検出する文字検出処理を含む。所定の画像処理は、検出した文字の向きから特定される回転角度に基づき画像を回転させる回転処理を含む。制御部50は、第1面P1と第2面P2のうち一方の面の画像中の文字を検出する文字検出処理が失敗した場合、第1面P1と第2面P2のうち成功した他方の面の画像中の文字を検出する文字検出処理の検出結果から特定される回転角度に基づいて、画像処理変数の値として、一方の面の画像中の文字の向きから特定される回転角度を特定する。そして、制御部50は、特定した文字の向きに応じた回転角度で一方の面の画像を回転させる回転処理を行う。よって、原稿14の片面で文字検出処理の検出が失敗しても、文字の向きに応じた適切な向きで両面の画像データGD1,GD2を取得できる。
(5)制御部50は、原稿14の綴じ位置に関する綴じ位置情報を取得する。制御部50は、第1面P1と第2面P2とのうち一方の面の画像中の文字を検出する文字検出処理が失敗した場合、第1面P1と第2面P2とのうち成功した他方の面の画像中の文字を検出する文字検出処理の検出結果と綴じ位置情報とに基づいて、画像処理変数の値として、一方の面の画像中の文字の向きから決まる回転角度を特定する。そして、制御部50は、特定した回転角度に基づいて一方の面の画像を回転させる回転処理を行う。よって、原稿14の第1面P1と第2面P2とのうち一方の面の画像中の文字を検出する文字検出処理が失敗しても、成功した他方の面の画像中の文字を検出する文字検出処理の検出結果と綴じ位置情報とに基づいて一方の面の画像中の文字の向きがより適切に特定できる。したがって、一方の面の画像に対する文字検出処理が失敗しても、文字の向きに応じたより適切な向きで両面の画像データGD1,GD2を取得することができる。
(6)制御部50は、所定の検出処理として、第1面P1と第2面P2とのうち少なくとも片面の画像に対して綴じ跡PTを検出する綴じ位置検出処理を行うことで、綴じ位置情報を取得する。よって、一方の面の画像に対する文字検出処理が失敗しても、綴じ位置情報の入力操作の手間を抑えつつ、文字の向きに応じたより適切な向きで両面の画像データGD1,GD2を取得することができる。
(7)画像読取方法は、原稿の第1面P1および第2面P2を読み取る読取ステップと、検出処理ステップと、画像処理ステップとを備える。検出処理ステップでは、原稿14の第1面P1を読み取った第1の画像に所定の検出処理を行うとともに、原稿14の第1面P1と反対の面である第2面P2を読み取った第2の画像に所定の検出処理を行う。画像処理ステップでは、第1の画像に対する所定の検出処理が成功した場合、所定の検出処理の検出結果から特定した画像処理変数の値に基づき、当該第1の画像に所定の画像処理を行うとともに、第2の画像に対する所定の検出処理が成功した場合、当該所定の検出処理の検出結果から特定した画像処理変数の値に基づき第2の画像に所定の画像処理を行う。また、画像処理ステップでは、第1面P1と第2面P2のうち一方の面の画像に対する所定の検出処理が失敗した場合、第1面P1と第2面P2のうち成功した他方の面の画像に対する所定の検出処理の検出結果から特定した画像処理変数の値に基づいて一方の面の画像に対する画像処理変数の値を特定し、特定した画像処理変数の値に基づき一方の面の画像に所定の画像処理を行う。よって、画像読取方法によれば、画像読取装置11と同様の効果が得られる。
(8)プログラムPRは、コンピューター60に、検出処理ステップと、画像処理ステップとを実行させる。検出処理ステップでは、原稿の第1面P1を読み取った第1の画像に所定の検出処理を行うとともに、当該原稿の第1面P1と反対の面である第2面P2を読み取った第2の画像に所定の検出処理を行う。画像処理ステップでは、第1の画像に対する所定の検出処理が成功した場合、所定の検出処理の検出結果から特定した画像処理変数の値に基づき、当該第1の画像に所定の画像処理を行うとともに、第2の画像に対する所定の検出処理が成功した場合、所定の検出処理の検出結果から特定した画像処理変数の値に基づき第2の画像に所定の画像処理を行う。また、画像処理ステップでは、第1面P1と第2面P2のうち一方の面の画像に対する所定の検出処理が失敗した場合、第1面P1と第2面P2のうち成功した他方の面の画像に対する所定の検出処理の検出結果から特定した画像処理変数の値に基づいて一方の面の画像に対する画像処理変数の値を特定し、特定した画像処理変数の値に基づき一方の面の画像に所定の画像処理を行う。よって、このプログラムPRをコンピューター60が実行することにより、画像読取装置11と同様の効果が得られる。
(第2実施形態)
次に、図26を参照して第2実施形態について説明する。この第2実施形態は、回転処理が、ホスト装置100に備えられた読取制御装置の一例としてのスキャンドライバーにより行われる点が、前記第1実施形態と異なる。その他の部分の構成については、基本的に第1実施形態と同様であるため、同様の構成については同じ符号を付してその説明は省略する。なお、図26では、画像読取装置11の操作系、表示系および搬送系の一部の構成を省略している。
図26に示すように、画像読取装置11は、画像処理部73内に、エッジ検出処理部74、傾き補正処理部75および切出処理部76を備える。また、ホスト装置100は、ソフトウェアよりなるスキャンドライバー110を備える。スキャンドライバー110は、回転処理部77を備える。本実施形態では、スキャンドライバー110が読取制御装置の一例に相当する。
画像読取装置11のエッジ検出処理部74がエッジ検出処理を行う。傾き補正処理部75は、エッジ検出結果に基づいて読取データSD1,SD2に傾き補正処理を行う。さらに、切出処理部76が読取データSD1,SD2からそれぞれ原稿領域DA1,DA2を切り出して画像データGD1,GD2を生成する切出処理を行う。画像読取装置11の制御部50は、図22にフローチャートで示される第1画像処理ルーチンを実行する。
ホスト装置100は、画像読取装置11から切出処理で得られた画像データGD1,GD2を受信する。そして、ホスト装置100内のスキャンドライバー110が画像データGD1,GD2に回転処理を行う。本実施形態のスキャンドライバー110は、制御部(図示略)を備え、制御部が図23~図25にフローチャートで示される第2画像処理ルーチンを実行する。
スキャンドライバー110の制御部は、画像読取装置11から受信した各画像データGD1,GD2に文字検出処理を含む所定の検出処理を行う。制御部は、所定の検出処理の結果、一方の面で検出に失敗しても、他方の面で検出に成功していれば、検出に成功した他方の面の検出結果(文字の向き)と綴じ位置情報とから特定される回転角度に基づいて、文字検出に失敗した一方の面の画像に対する回転角度を特定することができる。そのため、スキャンドライバー110の制御部は、原稿の両面の画像データGD1,GD2に所定の画像処理として回転処理を行うことができる。なお、スキャンドライバー110の制御部は、綴じ位置情報を、操作部21,101からの入力により取得してもよいし、綴じ位置検出処理を行ってその検出結果として取得してもよい。
よって、第2実施形態における画像読取システム10によれば、前記第1実施形態における画像読取装置11により得られる(1)~(7)の効果が同様に得られる他、以下の効果が得られる。
(9)画像読取システム10は、画像読取装置11と、画像読取装置11と有線又は無線で通信可能に接続される読取制御装置の一例としてのスキャンドライバー110とを備える。スキャンドライバー110は、所定の検出処理と所定の画像処理とのうち少なくとも所定の画像処理のうちの少なくとも一部の画像処理を、画像読取装置11に替わって行う画像処理部の一例としての回転処理部77を備える。よって、画像読取システム10を構成するスキャンドライバー110に所定の画像処理のうち少なくとも一部の回転処理を分担させるので、画像読取装置11の処理の負担を軽減できる。また、画像読取システム10によれば、原稿の両面のうち一方の面の画像に対する所定の検出処理が失敗しても、適切に画像処理された両面の画像を取得できる。
(第3実施形態)
次に、図27を参照して第3実施形態について説明する。この第3実施形態は、エッジ検出処理、傾き補正処理、切出処理および回転処理が、ホスト装置100に備えられた読取制御装置の一例としてのスキャンドライバー110により行われる点が、前記第1実施形態と異なる。その他の部分の構成については、基本的に第1実施形態と同様なので、第1実施形態と同じ構成については同じ符号を付してその説明は省略する。なお、図27では、画像読取装置11の操作系、表示系および搬送系の一部の構成を省略している。
図27に示すように、画像読取装置11は、画像処理部73を備える。本実施形態の画像処理部73は、エッジ検出処理、傾き補正処理、切出処理および回転処理は行わない。また、ホスト装置100は、ソフトウェアよりなるスキャンドライバー110を備える。スキャンドライバー110は、エッジ検出処理部74、傾き補正処理部75、切出処理部76および回転処理部77を備える。
ホスト装置100は、画像読取装置11から読取データSD1,SD2を受信する。そして、ホスト装置100内のスキャンドライバー110が、エッジ検出処理、傾き補正処理、切出処理及び回転処理を行う。詳しくは、スキャンドライバー110において、エッジ検出処理部74は、ホスト装置100が受信した読取データSD1,SD2に対してエッジ検出処理を行う。そして、傾き補正処理部75がエッジ検出結果に基づいて画像データGD1,GD2に傾き補正処理を行う。さらに、切出処理部76は読取データSD1,SD2から原稿領域DA1,DA2を切り出して画像データGD1,GD2を生成する切出処理を行う。
そして、本実施形態のスキャンドライバー110の制御部は、図22にフローチャートで示される第1画像処理ルーチンおよび図23~図25にフローチャートで示される第2画像処理ルーチンを実行する。よって、原稿14の両面を読取部40A,40Bが読み取って得た表面と裏面の各読取データSD1,SD2に所定の検出処理を行った結果、一方の面で検出に失敗しても、他方の面で検出に成功していれば、検出に成功した他方の面の検出結果から特定される画像処理変数の値(傾き角・位置座標値)に基づいて一方の面の画像処理変数の値を特定できる。そのため、スキャンドライバー110の制御部は、読取データSD1またはSD2に、その特定した画像処理変数の値に基づき所定の画像処理を行うことができる。また、原稿の画像データGD1,GD2に文字検出処理を行った結果、一方の面で文字検出に失敗しても、他方の面で文字検出に成功していれば、文字検出に成功した他方の面の文字検出結果と綴じ位置情報とに基づいて特定した回転角度に基づき、文字検出に失敗した一方の面の画像に対する回転角度を特定できる。そのため、スキャンドライバー110の制御部は、画像データGD1またはGD2に、その特定した回転角度に基づき所定の画像処理として回転処理を行うことができる。
よって、この第3実施形態における画像読取システム10によれば、前記第1実施形態における画像読取装置11により得られる(1)~(7)の効果が同様に得られる他、以下の効果が得られる。
(10)画像読取システム10は、画像読取装置11と、画像読取装置11と有線又は無線で通信可能に接続される読取制御装置の一例としてのスキャンドライバー110とを備える。スキャンドライバー110は、所定の検出処理と所定の画像処理とを、画像読取装置11に替わって行う画像処理部の一例としてのエッジ検出処理部74、傾き補正処理部75、切出処理部76および回転処理部77を備える。よって、画像読取システム10を構成するスキャンドライバー110が所定の検出処理と所定の画像処理を行うので、画像読取装置11の処理の負担を大幅に軽減できるうえ、一方の面の画像に対する所定の検出処理が失敗しても、適切に画像処理された両面の画像を取得できる。
なお、上記実施形態は以下に示す変更例のような形態に変更することもできる。さらに、上記実施形態および以下に示す変更例を適宜組み合わせたものを更なる変更例とすることもできるし、以下に示す変更例同士を適宜組み合わせたものを更なる変更例とすることもできる。
・回転処理部77は、文字検出処理で文字が検出されなかった場合、綴じ位置情報を用いず、文字が検出された面の文字検出結果から綴じ位置を推定してもよい。例えば、検出できた一方の面で文字の向きが文字の上側が原稿領域の短辺を向く向きであれば横綴じと推定し、その推定した綴じ位置情報と文字の向きとに基づき他方の面の画像を回転させる回転角度を特定する構成とする。また、検出できた一方の面で文字の向きが文字の上側が原稿領域の長辺を向く向きであれば上綴じと推定し、その推定した綴じ位置情報と文字の向きとに基づき他方の面の画像を回転させる回転角度を特定する構成とする。
・所定の検出処理は、傾き角θを検出する傾き角検出処理でもよい。傾き角に基づいて所定の画像処理として傾き補正処理を行ってもよい。また、所定の検出処理は、原稿領域の位置を検出する原稿位置検出処理でもよい。原稿位置検出処理で検出した原稿領域の位置に基づいて所定の画像処理として切出処理を行ってもよい。
・所定の検出処理は、エッジ検出処理、傾き角検出処理、領域検出処理、文字検出処理および綴じ位置検出処理のうち1つを含めば足りる。例えば、1つのみの場合、所定の検出処理が、エッジ検出処理である構成、傾き角検出処理である構成、領域検出処理である構成、文字検出処理である構成、および綴じ位置検出処理である構成でもよい。また、2つのみの場合、所定の検出処理が、エッジ検出処理および文字検出処理である構成、文字検出処理および綴じ位置検出処理である構成などでもよい。その他、所定の検出処理が、3つを含む構成や、4つを含む構成であってもよい。所定の検出処理が、上記4つ以外の他の検出処理を含む構成であってもよい。例えば、原稿領域の頂点を検出する頂点検出処理でもよい。
・所定の画像処理は、傾き補正処理、切出処理および回転処理のうち1つを含めば足りる。例えば、1つのみを含む場合、所定の画像処理が、傾き補正処理である構成、切出処理である構成、および回転処理である構成でもよい。また、2つのみ含む場合、所定の画像処理が、傾き補正処理および切出処理である構成、傾き補正処理および回転処理である構成、および切出処理および回転処理である構成でもよい。所定の画像処理が、上記3つ以外の他の画像処理を含む構成であってもよい。
・第1面と第2面のうちエッジ検出処理で失敗した一方の面の画像の傾き角を、エッジ検出処理で成功した他方の面の画像の傾き角から算出してもよい。また、エッジ検出処理で失敗した一方の面の画像の傾き角を求める場合、エッジ検出処理で成功した他方の面の画像中の原稿領域の位置座標値から、検出に失敗した一方の面の画像中の原稿領域の位置座標値を算出し、当該原稿領域の位置座標値から傾き角を算出してもよい。
・前記実施形態では、文字検出処理の検出結果から特定される文字の向きと綴じ位置情報とに基づき回転角度を特定したが、綴じ位置情報を用いず、文字検出処理の検出結果から特定される文字の向きから回転角度を特定してもよい。例えば、文字の向きが、読める向きとなる回転角度を特定する。また、文字検出処理を行わず、綴じ位置検出処理の検出結果から特定される綴じ位置情報に基づいて回転角度を特定してもよい。例えば、原稿が横綴じであることを前提として、検出された綴じ位置が表面であれば左、裏面であれば右に位置する向きに回転角度を特定してもよい。
・第2実施形態および第3実施形態において、画像読取装置11から画像データGD1,GD2又は読取データSD1,SD2を受信するPC又はスマートフォン等のホスト装置100にインストールされたスキャンドライバー110またはアプリケーションソフトウェアを実行するCPU(図示略)(以下、「スキャンドライバー110等」という。)が、表面/裏面を判断してもよい。スキャンドライバー110等は、例えば、GD1,GD2又は読取データSD1,SD2のうち奇数ページを表面、偶数ページを裏面として判断する。また、画像読取装置11がJPEG等の所定の形式でホスト装置100にデータ(ファイル)を送信する場合、JPEG等のファイル名に表面/裏面を識別できる文字または文字列を付与してもよい。さらに、JPEG等のファイルにおいて画像に影響を与えないエリアであるヘッダーまたはユーザーエリアに表面/裏面を識別できる、文字、文字列、これら以外の所定の情報を付与してもよい。また、画像読取装置11とホスト装置100との通信処理では、通常、定義されたコマンドが用いられるので、表面と裏面を定義したコマンドを追加してもよい。この場合、コマンドにおいて、表面/裏面という情報ではなく、2面ごとに表裏の一対であることを意味するコマンドで処理してもよい。これらの方法を採用することにより、画像データGD1,GD2又は読取データSD1,SD2を受信するホスト装置100のスキャンドライバー110等は、表面と裏面とを識別できる。
・前記実施形態では、原稿の表面と裏面とでエッジ検出処理の順番はどちらが先でもよい。
・前記実施形態では、原稿の表面と裏面とで傾き補正処理の順番はどちらが先でもよい。
・前記実施形態では、原稿の表面と裏面とで切出処理の順番はどちらが先でもよい。
・操作部21としては、タッチパネルに限らず、例えば操作ボタンなどであってもよい。
・搬送部31及び排出部32の動力源が共通であることに限定されず、搬送部31及び排出部32をそれぞれ別々の動力源で駆動してもよい。例えば搬送部31の動力源を搬送モーターとし、排出部32の動力源を排出モーターとする。
・イメージセンサーは、CMOSイメージセンサーに限定されず、例えばMOS(Metal Oxide Semiconductor)イメージセンサー、又はCCD(charge coupled device)イメージセンサーとしてもよい。
・イメージセンサー42は、リニアイメージセンサーに限定されず、エリアイメージセンサーでもよい。
・コンピューター60内の各機能部は、CPUにより実現することに限らず、例えば、ASIC(application specific integrated circuit)及びFPGA(field-programmable gate array)等の電子回路によりハードウェアで実現してもよく、ソフトウェアとハードウェアとの両方で実現してもよい。
・画像読取装置は、シートフィード型に限らず、フラットベッド型でもよい。フラットベッド型の画像読取装置である場合、本体内には副走査方向(X方向)に沿って移動可能なキャリッジを備え、キャリッジは、走査用モーターを動力源として移動し、キャリッジに設けられた光源及び読取部により、原稿台のガラス板上にセットされた原稿の画像を読み取る。この種のフラットベッド型の画像読取装置でも、原稿を自動で給送する自動原稿給送装置(オートシートフィーダー)が設けられたものであれば、上記実施形態を適用することができる。
・画像読取装置は、スキャナー機能に加え、印刷機能及びコピー機能を備えた複合機の一部でもよい。
・原稿の材質は紙に限定されず、樹脂製のフィルムやシート、織物、金属フィルムなどであってもよい。
以下、前記実施形態及び変更例から把握される技術思想を効果と共に記載する。
(A)画像読取装置は、原稿を読み取って画像を取得する画像読取装置であって、原稿の第1面を読み取って第1の画像を取得する第1読取部と、前記原稿の前記第1面と反対の面である第2面を読み取って第2の画像を取得する第2読取部と、前記第1の画像に対して所定の検出処理と、前記第2の画像に対して前記所定の検出処理とを行う制御部とを備え、前記制御部は、前記第1の画像に対して前記所定の検出処理が成功した場合、当該所定の検出処理の検出結果から特定した画像処理変数の値に基づき、前記第1の画像に所定の画像処理を行い、前記第2の画像に対して前記所定の検出処理が成功した場合、当該所定の検出処理の検出結果から特定した画像処理変数の値に基づき、前記第2の画像に所定の画像処理を行い、前記第1面と前記第2面とのうち一方の面の画像に対する前記所定の検出処理が失敗した場合、前記第1面と前記第2面とのうち成功した他方の面の画像に対する前記所定の検出処理の検出結果から特定した画像処理変数の値に基づいて前記一方の面の画像に対する画像処理変数の値を特定し、特定した当該画像処理変数の値に基づき前記一方の面の画像に所定の画像処理を行う。
この構成によれば、第1面と第2面とのうち一方の面の所定の検出処理が失敗した場合、第1面と第2面とのうち成功した他方の面の所定の検出処理の検出結果から特定した画像処理変数の値に基づき一方の面の画像に対する画像処理変数の値を特定し、特定した画像処理変数の値に基づいて一方の面の画像に所定の画像処理を行う。よって、原稿の両面を読み取った一方の面の画像に対する検出処理が失敗しても、適切に画像処理された両面の画像を取得できる。
(B)上記画像読取装置において、前記所定の検出処理は、前記画像中の原稿領域の傾き角を検出する傾き角検出処理であり、前記所定の画像処理は、前記原稿領域の傾きを小さく補正する傾き補正処理であり、前記制御部は、前記第1面と前記第2面とのうち一方の面の画像に対する前記傾き角検出処理が失敗した場合、前記第1面と前記第2面とのうち成功した他方の面の画像に対する前記傾き角検出処理の検出結果に基づいて前記一方の面の画像中の原稿領域の傾き角を特定し、特定した当該傾き角に基づき前記一方の面の画像に前記傾き補正処理を行ってもよい。
この構成によれば、第1面と第2面とのうち一方の面の画像の傾き検出処理が失敗した場合、第1面と第2面とのうち成功した他方の面の傾き検出処理の検出結果(傾き角)に基づき一方の面の画像中の原稿領域の傾き角を特定し、特定した当該傾き角に基づいて一方の面の画像に傾き補正処理を行う。よって、一方の面の画像の傾き検出処理が失敗しても、原稿領域が適切に傾き補正された両面の画像を取得できる。
(C)上記画像読取装置において、前記所定の検出処理は、前記画像中の原稿領域を検出する領域検出処理であり、前記所定の画像処理は、前記画像から前記原稿領域を切り出す切出処理であり、前記制御部は、前記第1面と前記第2面とのうち一方の面の画像に対する前記領域検出処理が失敗した場合、前記第1面と前記第2面とのうち成功した他方の面の画像に対する前記領域検出処理の検出結果に基づいて前記一方の面の画像中の原稿領域を特定し、特定した当該原稿領域を前記一方の面の画像から切り出す切出処理を行ってもよい。
この構成によれば、第1面と第2面とのうち一方の面の画像中の原稿領域を検出する領域検出処理が失敗した場合、第1面と第2面とのうち成功した他方の面の画像中の原稿領域を検出する領域検出処理の検出結果である原稿領域に基づき一方の面の画像中の原稿領域を特定し、特定した当該原稿領域を一方の面の画像から切り出す切出処理を行う。よって、一方の面の画像の領域検出処理が失敗しても、原稿領域が適切に切り出された両面の画像を取得できる。
(D)上記画像読取装置において、前記所定の検出処理は、前記画像中の文字を検出する文字検出処理を含み、前記所定の画像処理は、検出した前記文字の向きに基づく回転角度で前記画像を回転させる回転処理を含み、前記制御部は、前記第1面と前記第2面とのうち一方の面の画像に対する前記文字検出処理が失敗した場合、前記第1面と前記第2面とのうち成功した他方の面の画像に対する前記文字検出処理の検出結果に基づいて前記一方の面の画像中の文字の向きを特定し、特定した当該文字の向きに応じた回転角度で前記一方の面の画像を回転させる回転処理を行ってもよい。
この構成によれば、第1面と第2面とのうち一方の面の画像中の文字を検出できなくても、他方の面の画像中で検出された文字の向きに基づいて一方の面の画像中の文字の向きを特定し、その特定した文字の向きに応じた回転角度で一方の面の画像を回転させる回転処理が行われる。よって、原稿の片面で文字検出処理の検出が失敗しても、文字の向きに応じた適切な向きで両面の画像を取得できる。
(E)上記画像読取装置において、前記制御部は、前記原稿の綴じ位置に関する綴じ位置情報を取得し、前記制御部は、前記第1面と前記第2面とのうち一方の面の画像中の文字を検出する前記文字検出処理が失敗した場合、前記第1面と前記第2面とのうち成功した他方の面の画像中の文字を検出する前記文字検出処理の検出結果と前記綴じ位置情報とに基づいて前記一方の面の画像中の文字の向きを特定し、特定した当該文字の向きに応じた回転角度で前記一方の面の画像を回転させる回転処理を行ってもよい。
この構成によれば、制御部は、原稿の綴じ位置情報を取得する。原稿の第1面と第2面とのうち一方の面の画像中の文字を検出する文字検出処理が失敗しても、成功した他方の面の画像中の文字の向きと綴じ位置情報とに基づいて一方の面の画像中の文字の向きをより適切に特定できる。よって、より適切に特定された文字の向きに応じた回転角度で一方の面の画像を回転させることができる。したがって、一方の面の画像に対する文字検出処理が失敗しても、文字の向きに応じたより適切な向きで両面の画像を取得できる。
(F)上記画像読取装置において、前記制御部は、前記所定の検出処理として、前記第1面と前記第2面とのうち少なくとも片面の画像に対して綴じ跡を検出する綴じ位置検出処理を行うことで、前記綴じ位置情報を取得してもよい。
この構成によれば、原稿の両面のうち少なくとも片面の画像に対して綴じ跡を検出する綴じ位置検出処理が行われることで、綴じ位置情報が取得される。例えば、画像読取装置に綴じ位置情報を操作部の操作で入力する手間が不要である。したがって、原稿の片面で文字検出処理が失敗しても、入力操作の手間を抑えつつ、文字の向きに応じたより適切な向きで両面の画像を取得できる。
(G)画像読取システムは、上記画像読取装置と、前記画像読取装置と有線又は無線で通信可能に接続される読取制御装置とを備える画像読取システムであって、前記読取制御装置は、前記所定の検出処理と前記所定の画像処理とのうち少なくとも前記所定の画像処理のうちの少なくとも一部の画像処理を、前記画像読取装置に替わって行う画像処理部を備える。
この構成によれば、画像読取システムを構成する読取制御装置に所定の画像処理のうち少なくとも一部の画像処理を分担させるので、前記画像読取装置の処理の負担を軽減できるうえ、一方の面の画像に対する所定の検出処理が失敗しても、適切に画像処理された両面の画像を取得できる。
(H)画像読取方法は、原稿を読み取って画像を取得する画像読取方法であって、原稿の第1面および第2面を読み取る読取ステップと、原稿の第1面を読み取った第1の画像に所定の検出処理を行うとともに、当該原稿の前記第1面と反対の面である第2面を読み取った第2の画像に前記所定の検出処理を行う検出処理ステップと、前記第1の画像に対する所定の検出処理が成功した場合、当該所定の検出処理の検出結果から特定した画像処理変数の値に基づき、当該第1の画像に所定の画像処理を行うとともに、前記第2の画像に対する所定の検出処理が成功した場合、当該所定の検出処理の検出結果から特定した画像処理変数の値に基づき前記第2の画像に前記所定の画像処理を行い、前記第1面と前記第2面のうち一方の面の画像に対する前記所定の検出処理が失敗した場合、前記第1面と前記第2面のうち成功した他方の面の画像に対する前記所定の検出処理の検出結果から特定した画像処理変数の値に基づいて前記一方の面の画像に対する画像処理変数の値を特定し、特定した当該画像処理変数の値に基づき前記一方の面の画像に所定の画像処理を行う画像処理ステップとを備える。
この方法によれば、一方の面の画像に対する所定の検出処理が失敗しても、適切に画像処理された両面の画像を取得できる。
(I)プログラムは、原稿を読み取って画像を取得する処理を行うコンピューターにより実行されるプログラムであって、コンピューターに、原稿の第1面を読み取った第1の画像に所定の検出処理を行うとともに、当該原稿の前記第1面と反対の面である第2面を読み取った第2の画像に前記所定の検出処理を行う検出処理ステップと、前記第1の画像に対する所定の検出処理が成功した場合、当該所定の検出処理の検出結果から特定した画像処理変数の値に基づき、当該第1の画像に所定の画像処理を行うとともに、前記第2の画像に対する所定の検出処理が成功した場合、当該所定の検出処理の検出結果から特定した画像処理変数の値に基づき前記第2の画像に前記所定の画像処理を行い、前記第1面と前記第2面のうち一方の面の画像に対する前記所定の検出処理が失敗した場合、前記第1面と前記第2面のうち成功した他方の面の画像に対する前記所定の検出処理の検出結果から特定した画像処理変数の値に基づいて前記一方の面の画像に対する画像処理変数の値を特定し、特定した当該画像処理変数の値に基づき前記一方の面の画像に所定の画像処理を行う画像処理ステップとを実行させる。
このプログラムをコンピューターに実行させることにより、一方の面の画像に対する所定の検出処理が失敗しても、適切に画像処理された両面の画像を取得できる。