(58)【調査した分野】(Int.Cl.,DB名)
前記白紙判定部は、(a)前記主走査方向投影画像内に前記所定長以上のランが所定数以上存在せず、前記副走査方向投影画像内に前記所定長以上のランが前記所定数以上存在する場合、当該原稿が、横罫線を有する白紙原稿であると判定し、(b)前記副走査方向投影画像内に前記所定長以上のランが前記所定数以上存在せず、前記主走査方向投影画像内に前記所定長以上のランが前記所定数以上存在する場合、当該原稿が、縦罫線を有する白紙原稿であると判定し、
前記所定数は、1以上の数であって、設定データに基づいて指定されること、
を特徴とする請求項2または請求項3記載の画像読取装置。
【発明を実施するための形態】
【0010】
以下、図に基づいて本発明の実施の形態を説明する。
【0012】
図1は、本発明の実施の形態に係る画像読取装置の構成を示すブロック図である。
図1に示す画像読取装置は、画像読取部1、前処理部2、投影画像生成部3、および白紙判定部4を備える。
【0013】
画像読取部1は、原稿台に載置された原稿または自動原稿送り装置に搬送させた原稿から原稿画像を光学的に読み取り、原稿画像の画像データを出力する。なお、画像データは、カラー画像データであって、RGBデータであるが、CMYデータでもよい。また、画像データは、(グレイスケールまたは2値の)モノクロ画像データであってもよい。
【0014】
前処理部2は、原稿画像から2値化画像である入力画像を生成する。例えば、カラー画像データが画像読取部1により出力される場合、まず、原稿画像から色成分を除去した輝度画像が生成され、その輝度画像の画素値を反転したもの(例えば8ビット画素値xの場合には画素値が(255−x)に反転される)を2値化して入力画像が生成される。例えば、グレイスケールのモノクロ画像データが画像読取部1により出力される場合、その画像データに基づくグレイスケールのモノクロ画像を2値化して入力画像が生成される。例えば、2値化されたモノクロ画像データが画像読取部1により出力される場合、その画像データに基づく2値化画像が入力画像として使用される。
【0015】
投影画像生成部3は、(a)その入力画像において主走査方向の各注目画素位置における、副走査方向に沿って所定画素数以上連続する副走査方向のランの検出を試み、検出した副走査方向のランを主走査方向に沿って投影して1次元の主走査方向投影画像(副走査方向に沿った1次元画像)を生成し、(b)その入力画像において副走査方向の各注目画素位置における、主走査方向に沿って所定画素数以上連続する主走査方向のランの検出を試み、検出した主走査方向のランを副走査方向に沿って投影して1次元の副走査方向投影画像(主走査方向に沿った1次元画像)を生成する。
【0016】
ここで、この「所定画素数」は、原稿内の罫線の太さ(画素数)の上限値に設定される。
【0017】
なお、主走査方向投影画像の生成、および副走査方向投影画像の生成は、シーケンシャルに行ってもよいし、並行して行うようにしてもよい。主走査方向投影画像の生成および副走査方向投影画像の生成をシーケンシャルに行う場合の順番は、いずれを先に行うようにしてもよい。
【0018】
白紙判定部4は、少なくとも主走査方向投影画像のラン数(0以上)および副走査方向投影画像のラン数(0以上)に基づいて、当該原稿が白紙原稿であると判定する。
【0019】
実施の形態1では、白紙判定部4は、(a)主走査方向投影画像内にラン(つまり、投影されたラン)が存在せず、副走査方向投影画像内にランが存在する場合、当該原稿が、横罫線を有する白紙原稿であると判定し、(b)副走査方向投影画像内にランが存在せず、主走査方向投影画像内にランが存在する場合、当該原稿が、縦罫線を有する白紙原稿であると判定する。なお、複数の投影されたランの一部または全部が互いに重なった場合には、1つのランとされる。
【0020】
また、実施の形態1において、白紙判定部4は、(a)主走査方向投影画像内に所定数以上のランが存在せず、副走査方向投影画像内に所定数以上のランが存在する場合、当該原稿が、横罫線を有する白紙原稿であると判定し、(b)副走査方向投影画像内に所定数以上のランが存在せず、主走査方向投影画像内に所定数以上のランが存在する場合、当該原稿が、縦罫線を有する白紙原稿であると判定するようにしてもよい。なお、ここで、「所定数」は、1以上の数であって、設定データに基づいて指定される。
【0021】
この場合、例えば、罫線以外のオブジェクトがないような原稿であっても、ゴミや汚れなどに起因する少数の主走査方向投影画像および/または副走査方向投影画像が生成されることがある。そのような場合でも、当該原稿が白紙原稿であると正確に判定される。
【0022】
なお、前処理部2、投影画像生成部3、および白紙判定部4は、例えば、CPU(Central Processing Unit)、ROM(Read Only Memory)、RAM(Random Access Memory)などを有するコンピューターでプログラムを実行することにより実現されたり、ASIC(Application Specific Integrated Circuit)で実現されたりする。
【0023】
次に、上記画像読取装置の動作について説明する。
図2は、
図1に示す画像読取装置の動作を説明するフローチャートである。
【0024】
まず、画像読取部1が、原稿台に載置された原稿または自動原稿送り装置に搬送させた原稿から原稿画像を光学的に読み取り、原稿画像の画像データ(ここでは、RGB画像データ)を前処理部2へ出力する(ステップS1)。このとき、原稿が横罫線または縦罫線を含んでいた場合、原稿上では、横罫線または縦罫線が原稿シートの辺に平行であったとしても、原稿画像内では、罫線の画像が傾斜している可能性がある。
【0025】
前処理部2は、その画像データに基づくRGBカラー画像を輝度画像へ変換し(ステップS2)、その輝度画像を2値化画像(入力画像)へ変換する(ステップS3)。
【0026】
そして、投影画像生成部3は、その入力画像に基づいて、1次元の主走査方向投影画像および1次元の副走査方向投影画像の生成を行う(ステップS4)。
【0027】
ここで、この投影画像生成処理(ステップS4)の一例について説明する。
図3および
図4は、
図2における投影画像生成処理(ステップS4)の一例について説明するフローチャートである。なお、
図3および
図4に示す例では、入力画像内の画素値を1回走査して主走査方向投影画像および副走査方向投影画像を生成しているが、入力画像内の画素値を2回走査して主走査方向投影画像および副走査方向投影画像を別々に生成するようにしてもよい。
【0028】
投影画像生成部3は、1つの主走査方向カウンターおよび入力画像の主走査方向の画素数(幅)と同数の副走査方向カウンターを設定し、それらのカウンター値をゼロにリセットする(ステップS11)。
【0029】
なお、主走査方向カウンターは、副走査方向における注目画素位置Psにおいて、主走査方向に連続する濃度ありの画素(つまりランの画素数)をカウントするカウンターである。副走査方向カウンターは、主走査方向の各画素位置に割り当てられ、主走査方向のある画素位置に割り当てられた主走査方向カウンターは、主走査方向のその画素位置において副走査方向に連続する濃度ありの画素(つまりランの画素数)をカウントするカウンターである。
【0030】
そして、投影画像生成部3は、副走査方向の注目画素位置を先頭から順番に選択し(ステップS12)、また、主走査方向の注目画素位置を先頭から順番に選択する(ステップS13)。
【0031】
そして、投影画像生成部3は、現時点の主走査方向の注目画素位置および副走査方向の注目画素位置の画素を注目画素とし、入力画像の注目画素が濃度ありか否かを判定する(ステップS14)。
【0032】
入力画像の注目画素が濃度ありの場合、投影画像生成部3は、主走査方向の現時点の注目画素位置に対応する副走査方向カウンターの値を1だけ増加するとともに(ステップS15)、主走査方向カウンターの値を1だけ増加する(ステップS16)。
【0033】
一方、入力画像の注目画素が濃度ありではない場合、まず、投影画像生成部3は、主走査方向の注目画素位置に対応する副走査方向カウンターの値Csが所定閾値Th以上であるか否かを判定し(ステップS17)、副走査方向カウンターの値Csが所定閾値Th以上である場合には、主走査方向投影画像に対してランを投影する(ステップS18)。具体的には、このとき、投影画像生成部3は、主走査方向投影画像において、副走査方向の現時点の注目画素位置Psの1つ前の画素位置(Ps−1)から画素位置(Ps−Cs)までの区間の画素値を「濃度あり」に対応する値(例えば1)にセットする。なお、主走査方向投影画像は、1次元の2値画像であり、ここでは、主走査方向投影画像の各画素の初期値は「濃度なし」に対応する値(例えば0)にセットされている。
【0034】
すなわち、注目画素が濃度なしであり、かつ、副走査方向カウンターの値Csがゼロでなければ、副走査方向のランの終端が検出されたことになるため、そのランの長さが所定画素数(閾値Th)以上であれば、そのランが投影される。したがって、その際、注目画素が濃度なしであっても、副走査方向カウンターの値CsがTh未満であれば、ランは投影されない。
【0035】
入力画像の注目画素が濃度ありではない場合、さらに、投影画像生成部3は、主走査方向カウンターの値Cpが所定閾値Th以上であるか否かを判定し(ステップS19)、主走査方向カウンターの値Cpが所定閾値Th以上である場合には、副走査方向投影画像に対してランを投影する(ステップS20)。具体的には、このとき、投影画像生成部3は、副走査方向投影画像において、主走査方向の現時点の注目画素位置Ppの1つ前の画素位置(Pp−1)から画素位置(Pp−Cp)までの区間の画素値を「濃度あり」に対応する値(例えば1)にセットする。なお、副走査方向投影画像は、1次元の2値画像であり、ここでは、副走査方向投影画像の各画素の初期値は「濃度なし」に対応する値(例えば0)にセットされている。
【0036】
すなわち、注目画素が濃度なしであり、かつ、主走査方向カウンターの値Cpがゼロでなければ、主走査方向のランの終端が検出されたことになるため、そのランの長さが所定画素数(閾値Th)以上であれば、そのランが投影される。したがって、その際、注目画素が濃度なしであっても、主走査方向カウンターの値CpがTh未満であれば、ランは投影されない。
【0037】
その後、投影画像生成部3は、主走査方向カウンターの値Cpおよび主走査方向の現時点の注目画素位置の副走査方向カウンターの値Csを、ゼロにリセットする(ステップS21)。
【0038】
そして、投影画像生成部3は、注目画素が主走査方向の終端画素であるか否かを判定し(ステップS22)、注目画素が主走査方向の終端画素でなければ、ステップS13に戻り、主走査方向における次の注目画素位置を選択し、次の注目画素について、同様の処理を実行する。
【0039】
一方、注目画素が主走査方向の終端画素である場合には、投影画像生成部3は、主走査方向カウンターの値Cpが所定閾値Th以上であるか否かを判定し(ステップS23)、主走査方向カウンターの値Cpが所定閾値Th以上である場合には、ステップS20と同様にして、副走査方向投影画像に対してランを投影する(ステップS24)。なお、主走査方向カウンターの値Cpが所定閾値Th未満である場合には、ランは投影されない。
【0040】
その後、投影画像生成部3は、主走査方向カウンターの値Cpをゼロにリセットし(ステップS25)、主走査方向の注目画素位置を先頭へリセットする(ステップS26)。
【0041】
そして、投影画像生成部3は、注目画素が副走査方向の終端画素(つまり、入力画像の最後の画素)であるか否かを判定し(ステップS27)、注目画素が副走査方向の終端画素でなければ、ステップS12に戻り、副走査方向における次の注目画素位置を選択し、次の注目画素について、同様の処理を実行する。
【0042】
一方、注目画素が副走査方向の終端画素である場合には、投影画像生成部3は、主走査方向の注目画素位置を先頭から順番に選択し(ステップS28)、主走査方向の現時点の注目画素位置に対応する副走査方向カウンターの値Csが所定閾値Th以上であるか否かを判定し(ステップS29)、その副走査方向カウンターの値Csが所定閾値Th以上であるときには、ステップS18と同様にして、主走査方向投影画像に対してランを投影する(ステップS30)。
【0043】
そして、投影画像生成部3は、主走査方向の注目画素が主走査方向の終端画素であるか否かを判定し(ステップS31)、注目画素が主走査方向の終端画素でなければ、ステップS28に戻り、主走査方向における次の注目画素位置を選択し、次の注目画素について、同様の処理を実行する。一方、注目画素が主走査方向の終端画素である場合には、投影画像生成処理(ステップS4)が終了する。
【0044】
図2に戻り、投影画像生成処理(ステップS4)が終了すると、白紙判定部4は、上述のようにして、主走査方向投影画像内のラン数および副走査方向投影画像のラン数などに基づいて、当該原稿が白紙原稿であると判定する(ステップS5)。
【0045】
図5は、入力画像に文字オブジェクトが含まれる場合の主走査方向投影画像および副走査方向投影画像の一例を示す図である。
図6は、入力画像が傾斜しておらずかつ入力画像に文字オブジェクトが含まれていない場合の主走査方向投影画像および副走査方向投影画像の一例を示す図である。
図7は、入力画像が傾斜しており入力画像に文字オブジェクトが含まれていない場合の主走査方向投影画像および副走査方向投影画像の一例を示す図である。
【0046】
例えば
図5に示すように、入力画像に横罫線および文字オブジェクトが含まれている場合には、主走査方向投影画像および副走査方向投影画像の両方にランが現れるため、当該原稿は白紙原稿ではないと判定される。
【0047】
例えば
図6に示すように、入力画像に横罫線のみが含まれている場合には、副走査方向投影画像にはランが現れるが、主走査方向投影画像にはランが現れるため、当該原稿は、横罫線を有する白紙原稿であると判定される。
【0048】
そして、例えば
図7に示すように、入力画像に、傾斜した横罫線のみが含まれている場合にも、
図6と同様に、副走査方向投影画像にはランが現れるが、主走査方向投影画像にはランが現れるため、当該原稿は、横罫線を有する白紙原稿であると判定される。
【0049】
その後、白紙判定部による判定結果に基づいて、(例えば白紙原稿についてはコピーの印刷をスキップするなど)後段の処理が実行される。
【0050】
以上のように、上記実施の形態1によれば、画像読取部1は、原稿から原稿画像を光学的に読み取り、前処理部2は、その原稿画像から2値化画像である入力画像を生成する。投影画像生成部3は、(a)その入力画像において主走査方向の各注目画素位置における、副走査方向に沿って所定画素数以上連続する副走査方向のランの検出を試み、検出した副走査方向のランを主走査方向に沿って投影して1次元の主走査方向投影画像を生成し、(b)その入力画像において副走査方向の各注目画素位置における、主走査方向に沿って所定画素数以上連続する主走査方向のランの検出を試み、検出した主走査方向のランを副走査方向に沿って投影して1次元の副走査方向投影画像を生成する。そして、白紙判定部4は、少なくとも主走査方向投影画像のラン数および副走査方向投影画像のラン数に基づいて、当該原稿が白紙原稿であると判定する。
【0051】
これにより、入力画像内では罫線が傾斜していても、罫線以外のオブジェクト(文字など)が存在するか否かを判別することができる。
【0053】
実施の形態2に係る画像読取装置では、白紙判定部4は、(a)上述の主走査方向投影画像内に所定長以上のランが存在せず、上述の副走査方向投影画像内に所定長以上のランが存在する場合、当該原稿が、横罫線を有する白紙原稿であると判定し、(b)上述の副走査方向投影画像内に所定長以上のランが存在せず、上述の主走査方向投影画像内に所定長以上のランが存在する場合、当該原稿が、縦罫線を有する白紙原稿であると判定する。
【0054】
このとき、この「所定長」は、例えば、原稿の文字サイズの最小値に設定される。これにより、例えばゴミや汚れに起因する、最小文字サイズ未満のランが、白紙原稿の判定の際に除外される。
【0055】
また、実施の形態2において、白紙判定部4は、(a)主走査方向投影画像内に所定長以上のランが所定数以上存在せず、副走査方向投影画像内に所定長以上のランが所定数以上存在する場合、当該原稿が、横罫線を有する白紙原稿であると判定し、(b)副走査方向投影画像内に所定長以上のランが所定数以上存在せず、主走査方向投影画像内に所定長以上のランが所定数以上存在する場合、当該原稿が、縦罫線を有する白紙原稿であると判定するようにしてもよい。その場合、この「所定数」は、実施の形態1と同様に、1以上の数であって、設定データに基づいて指定される。
【0056】
なお、実施の形態2に係る画像読取装置のその他の構成および動作については実施の形態1に係る画像読取装置と同様であるので、その説明を省略する。
【0057】
なお、上述の実施の形態に対する様々な変更および修正については、当業者には明らかである。そのような変更および修正は、その主題の趣旨および範囲から離れることなく、かつ、意図された利点を弱めることなく行われてもよい。つまり、そのような変更および修正が請求の範囲に含まれることを意図している。
【0058】
例えば、上記実施の形態1において、白紙判定部4は、(a)上述の主走査方向投影画像内にランが存在せず、かつ、上述の副走査方向投影画像内にランが存在しない場合、当該原稿が、罫線を有さない白紙原稿であると判定するようにしてもよい。
【0059】
また、上記実施の形態2において、白紙判定部4は、(a)上述の主走査方向投影画像内に所定長以上のランが存在せず、かつ、上述の副走査方向投影画像内に所定長以上のランが存在しない場合、当該原稿が、罫線を有さない白紙原稿であると判定するようにしてもよい。
【0060】
なお、上記実施の形態1,2において、「白紙原稿」とは、白色な原稿ということではなく、罫線以外の有意な画像オブジェクト(文字、図形、写真など)を含まない原稿のことをいう。