(57)【要約】【課題】読取画像内の原稿領域を精度良く特定する。【解決手段】画像処理装置は、原稿を光学的に読み取ることによって生成され、原稿を示す第１の画像と原稿以外の領域を示す第２の画像とを含む読取画像を示す読取画像データを取得する画像データ取得部と、特定条件を満たす複数個の画素を、複数個の第１の画素として特定し、特定条件を満たさない複数個の画素を、複数個の第２の画素として特定することによって、複数個の第１の画素と複数個の第２の画素と示す第１画像データを生成する第１画像生成部と、読取画像内の複数個のエッジ画素を示す第２画像データを生成する第２画像生成部と、少なくとも第１画像データと第２画像データとを用いて、読取画像内の原稿領域を特定する特定部と、を備える。特定条件は、特定輝度範囲内の輝度を有することを含み、特定輝度範囲は、第２の画像に対応する画素の輝度を含む範囲である。【選択図】  図４
2019016897.tif 000002
【特許請求の範囲】
【請求項１】
画像処理装置であって、
原稿を光学的に読み取ることによって生成される読取画像データを取得する画像データ取得部であって、前記読取画像データは、前記原稿を示す第１の画像と前記原稿以外の領域を示す第２の画像とを含む読取画像を示す、前記画像データ取得部と、
前記読取画像データを用いて、特定条件を満たす複数個の画素を、前記複数個の第１の画素として特定し、前記特定条件を満たさない複数個の画素を、前記複数個の第２の画素として特定することによって、前記複数個の第１の画素と前記複数個の第２の画素と示す第１画像データを生成する第１画像生成部であって、前記特定条件は、特定輝度範囲内の輝度を有することを含み、前記特定輝度範囲は、前記第２の画像に対応する画素の輝度を含む範囲である、前記第１画像生成部と、
前記読取画像データを用いて、前記読取画像内のエッジを示す複数個のエッジ画素を示す第２画像データを生成する第２画像生成部と、
少なくとも前記第１画像データと前記第２画像データとを用いて、前記読取画像内の前記原稿に対応する原稿領域を特定する特定部と、
を備える、画像処理装置。
【請求項２】
請求項１に記載の画像処理装置であって、
前記特定部は、
前記第１画像データを用いて特定される前記複数個の第２画素と、前記第２画像データを用いて特定される前記複数個のエッジ画素と、を含む特定画素群を示す合成画像データを生成し、
前記合成画像データを用いて、前記読取画像内の前記原稿領域を特定する、画像処理装置。
【請求項３】
請求項１または２に記載の画像処理装置であって、
前記第１画像生成部は、前記特定輝度範囲内の輝度を有し、かつ、前記第２の画像の彩度を含む特定彩度範囲内の彩度を有する複数個の画素を、前記複数個の第１の画素として特定し、前記特定輝度範囲外の輝度を有する複数個の画素と、前記特定彩度範囲外の彩度を有する複数個の画素と、を前記複数個の第２の画素として特定することによって、前記第１画像データを生成する、画像処理装置。
【請求項４】
請求項１〜３のいずれかに記載の画像処理装置であって、
前記第１画像生成部は、
第１の前記特定輝度範囲を用いて、前記複数個の第１の画素と前記複数個の第２の画素とを特定し、
前記第１の特定輝度範囲を用いて特定される前記複数個の第２の画素の個数が、基準以下であるか否かを判断し、
前記第１の特定輝度範囲を用いて特定される前記複数個の第２の画素の個数が、基準以下である場合には、前記第１の特定輝度範囲とは異なる第２の前記特定輝度範囲を用いて、前記複数個の第１の画素と前記複数個の第２の画素とを、再度特定することによって、前記第１画像データを生成する、画像処理装置。
【請求項５】
請求項１〜４のいずれかに記載の画像処理装置であって、さらに、
前記特定部は、
前記第１画像データと前記第２画像データを用いて、合成画像を示す合成画像データを生成し、
前記合成画像データを解析することによって、前記合成画像にて、前記原稿の縁を表す直線の候補である複数の候補直線を特定し、
前記複数の候補直線のうちの少なくとも一本の直線を用いて規定される前記原稿領域を特定する、画像処理装置。
【請求項６】
請求項１〜５のいずれかに記載の画像処理装置であって、
前記第１画像生成部は、
前記読取画像データを用いて、前記読取画像を縮小して得られる縮小画像を示す縮小画像データを生成し、
前記縮小画像データを用いて、前記第１画像データを生成する、画像処理装置。
【請求項７】
コンピュータプログラムであって、
原稿を光学的に読み取ることによって生成される読取画像データを取得する画像データ取得機能であって、前記読取画像データは、前記原稿を示す第１の画像と前記原稿以外の領域を示す第２の画像とを含む読取画像を示す、前記画像データ取得機能と、
前記読取画像データを用いて、特定条件を満たす複数個の画素を、前記複数個の第１の画素として特定し、前記特定条件を満たさない複数個の画素を、前記複数個の第２の画素として特定することによって、前記複数個の第１の画素と前記複数個の第２の画素と示す第１画像データを生成する第１画像生成機能であって、前記特定条件は、特定輝度範囲内の輝度を有することを含み、前記特定輝度範囲は、前記第２の画像に対応する画素の輝度を含む範囲である、前記第１画像生成機能と、
前記読取画像データを用いて、前記読取画像内のエッジを示す複数個のエッジ画素を示す第２画像データを生成する第２画像生成機能と、
少なくとも前記第１画像データと前記第２画像データとを用いて、前記読取画像内の前記原稿に対応する原稿領域を特定する特定機能と、
をコンピュータに実現させる、コンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本明細書は、読取画像内の原稿領域を特定するための画像処理に関する。
【背景技術】
【０００２】
従来から、スキャナなどの画像読取装置を用いて、原稿を含む読取画像（例えば、文書画像）を表す読取画像データが生成されている。例えば、特許文献１に開示されたコンピュータは、Ｒ、Ｇ、Ｂの３個のチャンネルを有するカラー文書画像から、既存のエッジ抽出方法を用いて、エッジ画像を取得する。コンピュータは、カラー文書画像から、Ｒ、Ｇ、Ｂの３個のチャンネルの値の差異が比較的小さな画素と、Ｒ、Ｇ、Ｂの３個の成分の値の差異が比較的大きな画素と、を示す二値化画像を取得する。コンピュータは、エッジ画像と、二値化画像と、を合併して得られる画像を用いて、カラー文書内の所定領域を特定する。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１６−１６７８１０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、上記技術では、例えば、所定領域外に対応する画素の色味と所定領域に対応する画素の色味とが比較的近い場合には精度良く所定領域を特定できない可能性があった。
【０００５】
本明細書は、読取画像内の原稿領域を精度良く特定できる技術を開示する。
【課題を解決するための手段】
【０００６】
本明細書に開示された技術は、上述の課題の少なくとも一部を解決するためになされたものであり、以下の適用例として実現することが可能である。
【０００７】
［適用例１］画像処理装置であって、原稿を光学的に読み取ることによって生成される読取画像データを取得する画像データ取得部であって、前記読取画像データは、前記原稿を示す第１の画像と前記原稿以外の領域を示す第２の画像とを含む読取画像を示す、前記画像データ取得部と、前記読取画像データを用いて、特定条件を満たす複数個の画素を、前記複数個の第１の画素として特定し、前記特定条件を満たさない複数個の画素を、前記複数個の第２の画素として特定することによって、前記複数個の第１の画素と前記複数個の第２の画素と示す第１画像データを生成する第１画像生成部であって、前記特定条件は、特定輝度範囲内の輝度を有することを含み、前記特定輝度範囲は、前記第２の画像に対応する画素の輝度を含む範囲である、前記第１画像生成部と、前記読取画像データを用いて、前記読取画像内のエッジを示す複数個のエッジ画素を示す第２画像データを生成する第２画像生成部と、少なくとも前記第１画像データと前記第２画像データとを用いて、前記読取画像内の前記原稿に対応する原稿領域を特定する特定部と、を備える、画像処理装置。
【０００８】
上記構成によれば、第２の画像内の複数個の画素の輝度を含む輝度の範囲である特定輝度範囲内の輝度を有することを含む特定条件を満たす複数個の第１画素と、特定条件を満たさない複数個の第２画素と、を示す第１画像データと、複数個のエッジ画素を示す第２画像データとを用いて、読取画像内の原稿領域を特定する。この結果、読取画像内の原稿領域の特定精度を向上できる。
【０００９】
なお、本明細書に開示される技術は、種々の形態で実現することが可能であり、例えば、複合機、スキャナ、プリンタ、画像処理方法、これら装置の機能または上記方法を実現するためのコンピュータプログラム、そのコンピュータプログラムを記録した記録媒体、等の形態で実現することができる。
【図面の簡単な説明】
【００１０】
【図１】画像処理システムの構成を示す図である。
【図２】本実施例の画像処理のフローチャートである。
【図３】画像処理で用いられる画像の一例を示す図である。
【図４】原稿画素特定処理のフローチャートである。
【図５】原稿画素特定処理で用いられる画像の一例を示す図である。
【図６】縮小画像ＭＩのヒストグラムの一例を示す図である。
【図７】探索範囲決定処理のフローチャートである。
【図８】探索範囲決定処理の説明図である。
【図９】輪郭特定処理のフローチャートである。
【図１０】輪郭特定処理の説明図である。
【図１１】原稿領域特定処理のフローチャートである。
【図１２】補修処理のフローチャートである。
【発明を実施するための形態】
【００１１】
Ａ．第１実施例：
Ａ−１．画像処理システムの構成
図１は、一実施例としての画像処理システムの構成を示す図である。この画像処理システムは、画像処理装置１００と、スキャナ４００と、を含んでいる。画像処理装置１００とスキャナ４００とは、ネットワークＮＴに接続されており、互いに通信可能である。
【００１２】
画像処理装置１００は、例えば、パーソナルコンピュータである（例えば、デスクトップコンピュータ、タブレットコンピュータ）。画像処理装置１００は、画像処理装置１００のコントローラとしてのＣＰＵ１１０と、揮発性記憶装置１２０と、不揮発性記憶装置１３０と、画像を表示する表示部１４０と、ユーザによる操作を受け入れる操作部１５０と、インタフェース１９０と、を有している。これらの要素は、バスを介して互いに接続されている。
【００１３】
ＣＰＵ１１０は、データ処理を行う演算装置（プロセッサ）である。揮発性記憶装置１２０は、例えば、ＤＲＡＭであり、不揮発性記憶装置１３０は、例えば、フラッシュメモリである。不揮発性記憶装置１３０は、プログラム１３２を格納している。ＣＰＵ１１０は、プログラム１３２を実行することによって、スキャナ４００に原稿を読み取らせて、読み取った原稿を表す出力画像データを生成する処理を実行する（詳細は後述）。プログラム１３２は、例えば、スキャナ４００を制御するためのスキャナドライバであってよい。ＣＰＵ１１０は、プログラム１３２の実行に利用される種々の中間データを、記憶装置（例えば、揮発性記憶装置１２０、不揮発性記憶装置１３０のいずれか）に、一時的に格納する。プログラム１３２は、例えば、スキャナ４００の製造者によって提供される。
【００１４】
表示部１４０は、画像を表示する装置であり、例えば、液晶ディスプレイである。これに代えて、ＬＥＤディスプレイ、有機ＥＬディスプレイなどの、画像を表示する他の種類の装置を採用してもよい。操作部１５０は、ユーザによる操作を受け取る装置であり、例えば、表示部１４０上に重ねて配置されたタッチパネルである。これに代えて、ボタン、レバーなどの、ユーザによって操作される他の種類の装置を採用してもよい。ユーザは、操作部１５０を操作することによって、種々の指示を画像処理装置１００に入力可能である。
【００１５】
インタフェース１９０は、他の装置と通信するためのインタフェースである（例えば、ＵＳＢインタフェース、有線ＬＡＮインタフェース、IEEE802.11の無線インタフェース）。本実施例では、インタフェース１９０は、有線または無線のネットワークインタフェースであり、ネットワークＮＴに接続されている。
【００１６】
図１には、スキャナ４００の斜視図が示されている。図中の第１方向Ｄｐ１と第２方向Ｄｐ２とは、水平な方向を示し、第３方向Ｄｐ３は、鉛直上方向を示している。第１方向Ｄｐ１と第２方向Ｄｐ２とは、互いに垂直である。また、第３方向Ｄｐ３を、上方向Ｄｐ３とも呼ぶ。
【００１７】
スキャナ４００は、いわゆるフラットベッド式の画像読取装置である。スキャナ４００は、本体部４９０と、本体部４９０の上方向Ｄｐ３側に開閉可能に取り付けられたカバー４５０と、を備えている。図１には、カバー４５０が上方向Ｄｐ３に向けて開けられた状態のスキャナ４００を示している。
【００１８】
本体部４９０は、制御部４１０と、原稿を光学的に読み取るイメージセンサ４２０と、イメージセンサ４２０を第１方向Ｄｐ１に平行に移動させる移動装置４３０と、原稿台４４０と、を備えている。
【００１９】
原稿台４４０は、本体部４９０（図１）の上方向Ｄｐ３側に、設けられている。原稿台４４０は、カバー４５０を上方向Ｄｐ３に向けて開くことによって、現れる。原稿台４４０は、第１方向Ｄｐ１に平行な２辺と第２方向Ｄｐ２に平行な２辺とで囲まれる略矩形状の台であり、透明板（例えば、ガラス板）を用いて構成されている。原稿台４４０の第３方向Ｄｐ３側の面は、読取対象の原稿が載置される載置面Ｕｓである。
【００２０】
イメージセンサ４２０は、原稿台４４０の下側（第３方向Ｄｐ３の反対側）、すなわち、原稿台４４０の下に配置されている。イメージセンサ４２０は、原稿を光学的に読み取る一次元イメージセンサであり、ＣＣＤやＣＭＯＳなどの複数の光電変換素子（単に、光学素子とも呼ぶ）が、第２方向Ｄｐ２に並んで配置された構成を有している。イメージセンサ４２０は、原稿台４４０上の原稿を、光学的に読み取ることによって、読み取った原稿を表す信号を出力する。
【００２１】
移動装置４３０は、動力源（例えば、電気モータ）を含んでいる。移動装置４３０は、該動力源を用いて、イメージセンサ４２０を、原稿台４４０の載置面Ｕｓに沿う方向（図１の第１方向Ｄｐ１と平行な方向）に移動させる。
【００２２】
制御部４１０は、例えば、データ処理を行うＣＰＵ４１１と、揮発性記憶装置４１２（例えば、ＤＲＡＭ）と、不揮発性記憶装置４１３（例えば、フラッシュメモリ）と、インタフェース４１９と、を含むコンピュータである。制御部４１０の各要素は、バスを介して互いに接続されている。不揮発性記憶装置４１３は、予め、プログラム４１４を格納している。ＣＰＵ４１１は、プログラム４１４を実行することによって、イメージセンサ４２０と移動装置４３０とを制御する。インタフェース４１９は、他の装置と通信するためのインタフェースである（例えば、ＵＳＢインタフェース、有線ＬＡＮインタフェース、IEEE802.11の無線インタフェース）。本実施例では、インタフェース４１９は、有線または無線のネットワークインタフェースであり、ネットワークＮＴに接続されている。
【００２３】
ＣＰＵ４１１は、移動装置４３０を制御して、イメージセンサ４２０を、原稿台４４０の第１方向Ｄｐ１とは反対方向側の端の位置から第１方向Ｄｐ１側の端の位置まで、原稿台４４０に沿って移動させる。ＣＰＵ４１１は、イメージセンサ４２０を移動させながら、イメージセンサ４２０を制御して、原稿台４４０に載置された原稿を光学的に読み取らせる。ＣＰＵ４１１は、イメージセンサ４２０から出力される信号に基づいて、読取画像を示す読取画像データを生成する。ＣＰＵ４１１は、生成した読取画像データを、画像処理装置１００へ送信する。
【００２４】
Ａ−２．画像処理の概要
図２は、本実施例の画像処理のフローチャートである。本実施例では、画像処理装置１００のＣＰＵ１１０は、スキャナドライバとして、画像処理を実行する。この画像処理では、スキャナ４００に原稿を読み取らせることによって読取画像データが取得され、取得された読取画像データを用いて、傾き補正や欠落の補修などがなされた補修済画像（後述）を表す補修済画像データが生成される。ユーザは、操作部１５０を操作することによって、画像処理の開始指示を入力する。ＣＰＵ１１０は、入力された開始指示に応じて、図２の処理を開始する。
【００２５】
Ｓ１０では、ＣＰＵ１１０は、読取画像データを取得する。具体的には、ＣＰＵ１１０は、原稿を読み取る指示を、スキャナ４００に送信する。スキャナ４００の制御部４１０のＣＰＵ４１１は、画像処理装置１００からの指示に応じて、原稿台４４０に載置された原稿を読み取ることによって、読取画像データを生成し、生成した読取画像データを、画像処理装置１００に送信する。ＣＰＵ１１０は、スキャナ４００から送信される読取画像データを取得する。読取画像データのデータ形式は、種々の形式であってよい。本実施例では、読取画像データは、複数個の画素のＲＧＢ値を含むＲＧＢ画像データ、あるいは、複数個の画素の輝度値を含むモノクロ画像データである。１個の画素のＲＧＢ値は、その画素の色を示し、例えば、赤（Ｒ）と緑（Ｇ）と青（Ｂ）との３個の成分値（以下、Ｒ値、Ｇ値、Ｂ値とも呼ぶ）を含んでいる。本実施例では、各成分値の階調数は、２５６階調である。輝度値は、その画素の輝度を、例えば、２５６階調の値で示す値である。
【００２６】
図３は、画像処理で用いられる画像の一例を示す図である。図３（Ａ）には、読取画像ＯＩの一例が示されている。読取画像ＯＩの形状は、矩形状である。
【００２７】
読取画像ＯＩは、矩形の原稿を読み取ることによって生成された画像である。読取画像ＯＩは、原稿を示す原稿画像Ａｄと、原稿画像Ａｄの外側画像Ａｂと、を含む。外側画像Ａｂは、原稿画像Ａｄの外側の原稿以外の領域を示す。外側画像Ａｂは、原稿画像Ａｄの外側の画像、すなわち、原稿画像Ａｄの外縁と、読取画像ＯＩの外縁（４辺）と、の間に位置する画像である。外側画像Ａｂは、本実施例では、カバー４５０の原稿台４４０と対向する対向面Ｂｓ（図１）を示している。本実施例では、対向面Ｂｓは、白よりも暗く、黒よりも明るいグレーで塗られている。このため、外側画像Ａｂは、グレーのほぼ単色の画像である。
【００２８】
原稿画像Ａｄの形状は、原稿の矩形の右上の角に対応する領域Ｄａと、左下の角に対応する領域Ｄｂと、が欠けた不完全な略矩形である。右上の領域Ｄａの欠けは、原稿の対応する部分が、原稿台４４０上の読取可能領域からはみ出した状態で、原稿の読み取りが行われたことに起因する。左下の領域Ｄｂの欠けは、原稿台４４０上において、原稿の対応する角が折り曲げられた状態で、原稿の読取が行われたことに起因する。また、原稿画像Ａｄの略矩形は、読取画像ＯＩの外形の矩形に対して、傾いている。この傾きは、原稿台４４０上において、原稿が傾いた状態で、原稿の読取が行われたことに起因する。
【００２９】
原稿画像Ａｄは、文字や描画などのオブジェクトＯｂ１、Ｏｂ２と、背景Ｂｇと、を含んでいる。背景Ｂｇは、原稿の地色の領域である。
【００３０】
Ｓ１５では、ＣＰＵ１１０は、読取画像データに対して、公知の縮小処理を実行して、縮小画像ＭＩを示す縮小画像データを生成する。例えば、縮小画像ＭＩは、縦１００ｄｐｉ（dot per inch）×横１００ｄｐｉ相当の画素数を有する。読取画像データの縦方向および横方向の解像度が、１００ｄｐｉ以下である場合には、Ｓ１５の処理は、省略される。図３（Ａ）は、縮小画像ＭＩを示す図である、とも言うことができる。
【００３１】
Ｓ２０では、ＣＰＵ１１０は、縮小画像データを用いて、原稿画素特定処理を実行する。原稿画素特定処理は、縮小画像ＭＩ内の原稿画像Ａｄを構成する複数個の原稿画素ＰＸａを特定して、原稿画素特定画像ＣＩを示す原稿画素特定画像データを生成する処理である。縮小画像ＭＩ内の各画素は、読取画像ＯＩの１個以上の画素と対応しているので、縮小画像ＭＩ内の原稿画素ＰＸａを特定することは、読取画像ＯＩ内の対応する原稿画素を特定することに等しい。縮小画像データを用いて、原稿領域特定処理（例えば、後述する単純二値画像データやエッジ二値画像データの生成）を行うので、例えば、読取画像データを用いる場合と比較して、処理する画素数を低減できる。したがって、原稿領域特定処理に要する処理時間やメモリ容量を低減できる。
【００３２】
図３（Ｂ）には、原稿画素特定画像ＣＩの一例が示されている。原稿画素特定画像ＣＩは、縮小画像ＭＩの複数個の画素と一対一で対応する複数個の画素で構成された画像である。原稿画素特定画像データは、二値データであり、原稿画素特定画像データの各画素の値は、縮小画像ＭＩの対応する画素が、原稿画素ＰＸａであるか、原稿画素ＰＸａ１とは異なる非原稿画素ＰＸｂであるかを示す。原稿画素特定処理の詳細は、後述する。図３（Ｂ）において、黒色で示す領域は、複数個の原稿画素ＰＸａが位置する領域であり、白色で示す領域は、非原稿画素ＰＸｂが位置する領域である。
【００３３】
Ｓ２５では、ＣＰＵ１１０は、原稿画素特定画像データを用いて、探索範囲決定処理を実行する。探索範囲決定処理は、原稿画素特定画像ＣＩ内にて、後述する輪郭特定処理で用いられる探索範囲ＳＡを決定する処理である。上述したように、原稿画素特定画像ＣＩと、読取画像ＯＩおよび縮小画像ＭＩとは、対応しているので、原稿画素特定画像ＣＩ内の探索範囲ＳＡを決定することは、読取画像ＯＩおよび縮小画像ＭＩにおいて対応する探索範囲を決定することに等しい。なお、縮小画像データを用いて生成される原稿画素特定画像データを用いて、探索範囲決定処理を行うので、例えば、読取画像データと同じ画素数の原稿特定画像データを用いる場合と比較して、処理する画素数を低減できる。したがって、探索範囲決定処理に要する処理時間やメモリ容量を低減できる。
【００３４】
図３（Ｂ）には、原稿画素特定画像ＣＩ内に決定された探索範囲ＳＡが図示されている。探索範囲ＳＡは、４個の端ＴＵ、ＴＢ、ＴＬ、ＴＲを有する矩形の範囲である。探索範囲決定処理の詳細は、後述する。
【００３５】
Ｓ３０では、ＣＰＵ１１０は、輪郭特定処理を実行する。輪郭特定処理は、決定された探索範囲ＳＡ内にて、複数個の原稿画素ＰＸａの中から、原稿画像の輪郭を構成する複数個の輪郭画素ＰＸｏを特定することによって、原稿画像Ａｄの輪郭を示す輪郭画像ＯＬＩを示す輪郭画像データを生成する処理である。
【００３６】
図３（Ｃ）には、輪郭画像ＯＬＩの一例が示されている。この例では、輪郭画像ＯＬＩ内に、６本の直線Ｌ１〜Ｌ６によって示される原稿画像Ａｄの輪郭を構成する複数個の輪郭画素ＰＸｏが特定されている。輪郭画像ＯＬＩは、縮小画像ＭＩの複数個の画素と一対一で対応する複数個の画素で構成された画像である。輪郭画像データは、二値データであり、輪郭画像データの各画素の値は、縮小画像ＭＩの対応する画素が、原稿構成画素であるか否かを示す。縮小画像ＭＩ内の各画素は、読取画像ＯＩの１個以上の画素と対応しているので、縮小画像ＭＩ内の輪郭画素ＰＸｏを特定することは、読取画像ＯＩ内の対応する輪郭画素を特定することに等しい。輪郭特定処理の詳細は、後述する。
【００３７】
Ｓ３５では、ＣＰＵ１１０は、輪郭画像データを用いて、原稿画像Ａｄに対応する原稿領域ＡＡを特定する処理である。図３（Ａ）に示すように、原稿領域ＡＡは、原稿画像Ａｄにおいて欠けている上述した領域Ｄａ、Ｄｂを補って得られる矩形の領域である。
【００３８】
Ｓ４０では、ＣＰＵ１１０は、原稿領域ＡＡの特定結果を用いて、読取画像データに対して補修処理を実行して、補修済画像ＲＩを示す補修済画像データを生成する。図３（Ｄ）には、補修済画像ＲＩの一例が示されている。この補修済画像ＲＩは、補修済みの原稿画像Ａｄｒと、補修済みの外側画像Ａｂｒと、を含んでいる。原稿画像Ａｄｒは、原稿領域ＡＡに対応する矩形を有し、補修済画像ＲＩの外形の矩形に対して傾いていない。また、原稿画像Ａｄｒの外側の外側画像Ａｂｒは、予め指定された指定色（例えば、白）で塗られている。補修処理の詳細は、後述する。
【００３９】
Ｓ４５では、ＣＰＵ１１０は、補修済画像データを出力する。本実施例では、ＣＰＵ１１０は、補修済画像データを、画像処理装置１００の内部の記憶装置（例えば、不揮発性記憶装置１３０）に格納する。これに代えて、ＣＰＵ１１０は、画像処理装置１００に接続された外部記憶装置（例えば、図示しないＵＳＢメモリ）に、補修済画像データを格納してもよい。また、ＣＰＵ１１０は、例えば、補修済画像データをプリンタに送信することによって、該プリンタに補修済画像ＲＩを印刷させる形態で、補修済画像データを出力しても良い。補修済画像データのデータ形式としては、任意の形式を採用可能である。本実施例では、ＣＰＵ１１０は、ＪＰＥＧ形式の補修済画像データを出力する。
【００４０】
以上説明した画像処理によれば、読取画像データを用いて、原稿を示す補修済画像ＲＩを示す補修済画像データが出力される。この結果、原稿を適切に示す画像データを、ユーザに提供できる。
【００４１】
Ａ−３．原稿画素特定処理
図２のＳ２０の原稿画素特定処理について説明する。原稿画素特定処理は、上述したように、図３（Ｂ）の原稿画素特定画像ＣＩを示す原稿画素特定画像データを生成する処理である。図４は、原稿画素特定処理のフローチャートである。図５は、原稿画素特定処理で用いられる画像の一例を示す図である。
【００４２】
図４のＳ１１０では、ＣＰＵ１１０は、縮小画像データがモノクロ画像データであるかカラー画像データであるかを判断する。例えば、モノクロ画像データは、１個の成分値（例えば、輝度）のみを含む画像データであり、カラー画像データは、複数個の成分値（例えば、Ｒ、Ｇ、Ｂ）を含む画像データである。上述したように、本実施例では、読取画像データは、カラー画像データであるＲＧＢ画像データと、モノクロ画像データと、のうちのいずれかであるので、縮小画像データも、これらのうちのいずれかである。縮小画像データが、モノクロ画像データである場合には（Ｓ１１０：ＹＥＳ）、Ｓ１２０にて、ＣＰＵ１１０は、輝度Ｙに基づいて、縮小画像データを二値化して、単純二値画像ＢＩを示す単純二値画像データを生成する。具体的には、ＣＰＵ１１０は、縮小画像ＭＩ内の複数個の画素のうち、特定輝度範囲ＹＲ内の輝度を有する複数個の画素を、複数個の第１画素ＰＸ１として特定する。ＣＰＵ１１０は、縮小画像ＭＩ内の複数個の画素のうち、特定輝度範囲ＹＲ外の輝度を有する複数個の画素を、複数個の第２画素ＰＸ２として特定する。なお、単純二値画像データでは、第１画素ＰＸ１の値は、「０」とされ、第２画素ＰＸ２の値は、「１」とされる。
【００４３】
特定輝度範囲ＹＲは、予め定められた輝度Ｙの範囲である。特定輝度範囲ＹＲは、カバー４５０の対向面Ｂｓ（図１）の色の輝度Ｙｂｓを中心とする範囲である。特定輝度範囲ＹＲは、（Ｙｂｓ−ΔＹ）≦Ｙ≦（Ｙｂｓ＋ΔＹ）を満たす輝度Ｙの範囲である。ΔＹは、例えば、輝度Ｙが０〜２５５の２５６階調で表される場合に、３２である。白（輝度２５５）および黒（輝度０）は、特定輝度範囲ＹＲ外である。
【００４４】
縮小画像データが、カラー画像データである場合には（Ｓ１１０：ＮＯ）、Ｓ１１５にて、ＣＰＵ１１０は、輝度Ｙと彩度Ｃとに基づいて、縮小画像データを二値化して、単純二値画像データを生成する。具体的には、ＣＰＵ１１０は、上述した特定輝度範囲ＹＲ内の輝度Ｙを有し、かつ、特定彩度範囲ＣＲ内の彩度Ｃを有する複数個の画素を、複数個の第１画素ＰＸ１として特定する。ＣＰＵ１１０は、特定輝度範囲ＹＲ外の輝度Ｙを有する複数個の画素と、特定彩度範囲ＣＲ外の彩度Ｃを有する複数個の画素を、複数個の第２画素ＰＸ２として特定する。この結果、特定輝度範囲ＹＲと特定彩度範囲ＣＲとを用いて、単純二値画像データを適切に生成できる。例えば、原稿画像Ａｄの背景Ｂｇの輝度と、カバー４５０の対向面Ｂｓの輝度Ｙｂｓと、が近似していても、原稿画像Ａｄの背景Ｂｇの彩度と、カバー４５０の対向面Ｂｓの彩度Ｃｂｓと、が十分に異なっていれば、原稿画像Ａｄと外側画像Ａｂとの境界が現れるような単純二値画像ＢＩを示す単純二値画像データが生成される。
【００４５】
特定彩度範囲ＣＲは、予め定められた彩度Ｃの範囲である。特定彩度範囲ＣＲは、カバー４５０の対向面Ｂｓの色の彩度Ｃｂｓを含む範囲である。本実施例では、対向面Ｂｓの色は、無彩色（彩度Ｃｂｓ＝０）であるので、特定彩度範囲ＣＲは、Ｃ≦Ｃｔｈを満たす彩度Ｃの範囲である。閾値Ｃｔｈは、例えば、彩度Ｃが０〜２５５の２５６階調で表される場合に、３２である。
【００４６】
図５（Ａ）には、単純二値画像ＢＩの一例として、単純二値画像ＢＩｓが示されている。図５（Ａ）にて、黒色で示す部分は、第１画素ＰＸ１で構成される部分であり、白色で示す部分は、第２画素ＰＸ２で構成される部分である。図５（Ａ）に示すように、縮小画像ＭＩの外側画像Ａｂを構成する画素は、特定輝度範囲ＹＲの輝度を有し、かつ、特定彩度範囲ＣＲ内の彩度を有する。このために、外側画像Ａｂを構成する画素は、第１画素ＰＸ１として特定される。このように、特定輝度範囲ＹＲは、外側画像Ａｂ内の複数個の画素の輝度（例えば、輝度Ｙｂｓ）を含む輝度Ｙの範囲であり、特定彩度範囲ＣＲは、外側画像Ａｂ内の複数個の画素の彩度（例えば、彩度Ｃｂｓ）を含む彩度Ｃの範囲である、と言うことができる。
【００４７】
原稿画像Ａｄは、カバー４５０の対向面Ｂｓの色と比較的大きく異なる色を有する部分を含み得る。縮小画像ＭＩの原稿画像Ａｄのうち、当該部分を構成する画素は、第２画素ＰＸ２として特定される。原稿画像Ａｄは、カバー４５０の対向面Ｂｓの色と近似する色を有する部分を含み得る。縮小画像ＭＩの原稿画像Ａｄのうち、当該部分を構成する画素は、第１画素ＰＸ１として特定される。
【００４８】
例えば、図５（Ａ）の単純二値画像ＢＩｓは、原稿画像Ａｄの背景Ｂｇの色が、カバー４５０の対向面Ｂｓの色と比較的大きく異なる場合の例である。この例では、縮小画像ＭＩ（図３（Ａ））のうち、背景Ｂｇの全体と、オブジェクトＯｂ１の全体と、オブジェクトＯｂ２の一部と、を構成する画素は、第２画素ＰＸ２として特定されている。そして、縮小画像ＭＩのうち、外側画像Ａｂの全体と、オブジェクトＯｂ２の他の一部と、を構成する画素は、第１画素ＰＸ１として特定されている。図５（Ａ）の例では、単純二値画像ＢＩｓに、原稿画像Ａｄと外側画像Ａｂとの境界が現れていることが解る。
【００４９】
図５（Ｂ）には、単純二値画像ＢＩの他の例として、単純二値画像ＢＩｍが示されている。この単純二値画像ＢＩｍは、原稿画像Ａｄの背景Ｂｇの色が、カバー４５０の対向面Ｂｓの色に近似している場合の例である。この例では、縮小画像ＭＩのうち、オブジェクトＯｂ１の全体と、オブジェクトＯｂ２の一部と、を構成する画素は、第２画素ＰＸ２として特定されている。そして、縮小画像ＭＩのうち、外側画像Ａｂの全体と、背景Ｂｇの全体と、オブジェクトＯｂ２の他の一部と、を構成する画素は、第１画素ＰＸ１として特定されている。図５（Ｂ）の例では、単純二値画像ＢＩｍに、原稿画像Ａｄと外側画像Ａｂとの境界が現れていないことが解る。
【００５０】
Ｓ１２５では、ＣＰＵ１１０は、第１画素ＰＸ１の個数Ｍ１と、第２画素ＰＸ２の個数Ｍ２と、をそれぞれ算出する。Ｓ１３０では、ＣＰＵ１１０は、第２画素ＰＸ２の個数Ｍ２が、第１画素ＰＸ１の個数Ｍ１よりも多いか否か、すなわち、（Ｍ１＜Ｍ２）が満たされるか否かを判断する。図５（Ａ）の単純二値画像ＢＩｓのように、原稿画像Ａｄと外側画像Ａｂとの境界が現れるような適切な二値化に成功する場合には、比較的多数の第２画素ＰＸ２が特定されるので、第２画素ＰＸ２の個数Ｍ２が、第１画素ＰＸ１の個数Ｍ１よりも多くなる。これに対して、図５（Ｂ）の単純二値画像ＢＩｍのように、原稿画像Ａｄと外側画像Ａｂとの境界が現れない場合、すなわち、適切な二値化に失敗する場合には、比較的少数の第２画素ＰＸ２しか特定されないので、第２画素ＰＸ２の個数Ｍ２が、第１画素ＰＸ１の個数Ｍ１以下になる。
【００５１】
第２画素ＰＸ２の個数Ｍ２が、第１画素ＰＸ１の個数Ｍ１よりも多い場合には（Ｓ１３０：ＹＥＳ）、ＣＰＵ１１０は、後述するＳ１３５〜Ｓ１４５の処理をスキップして、処理をＳ１５０に進める。第２画素ＰＸ２が、第１画素ＰＸ１以下である場合には（Ｓ１３０：ＮＯ）、ＣＰＵ１１０は、Ｓ１３５〜Ｓ１４５の処理を実行する。
【００５２】
Ｓ１３５では、ＣＰＵ１１０は、縮小画像ＭＩの各画素を、その画素の色（輝度および彩度）に応じて、複数個のクラスに分類することによって、縮小画像ＭＩの色の分布を示すヒストグラムを生成する。具体的には、輝度のヒストグラムと、彩度のヒストグラムと、がそれぞれ生成される。
【００５３】
図６は、縮小画像ＭＩのヒストグラムの一例を示す図である。図６（Ａ）の輝度のヒストグラムには、縮小画像ＭＩの外側画像Ａｂに対応する輝度Ｙｂｓのピークと、原稿画像Ａｄの背景Ｂｇに対応する輝度Ｙｍのピークと、が現れている。このヒストグラムは、原稿画像Ａｄの背景Ｂｇの色が、カバー４５０の対向面Ｂｓの色に近似している場合の例である。このために、このヒストグラムでは、外側画像Ａｂに対応する輝度Ｙｂｓのピークと、原稿画像Ａｄの背景Ｂｇに対応する輝度Ｙｍのピークと、が比較的近い。この結果、図６（Ａ）に示すように、予め定められた特定輝度範囲ＹＲを用いた二値化（Ｓ１１５、Ｓ１２０）では、適切に二値化することができず、例えば、図５（Ｂ）の単純二値画像ＢＩｍを示す単純二値画像データが生成される。
【００５４】
同様に、図６（Ｂ）の彩度のヒストグラムには、縮小画像ＭＩの外側画像Ａｂに対応する彩度Ｃｂｓのピークと、原稿画像Ａｄの背景Ｂｇに対応する彩度Ｃｍのピークと、が現れている。そして、このヒストグラムでは、外側画像Ａｂに対応する彩度Ｃｂｓのピークと、原稿画像Ａｄの背景Ｂｇに対応する彩度Ｃｍのピークと、が比較的近い。この結果、図６（Ｂ）に示すように、予め定められた特定彩度範囲ＣＲを用いた二値化（Ｓ１１５）では、適切に二値化することができない。
【００５５】
Ｓ１４０では、ＣＰＵ１１０は、これらのヒストグラムに基づいて、新たな二値化閾値、具体的には、新たな特定輝度範囲ＹＲａおよび特定彩度範囲ＣＲａを決定する。なお、縮小画像データが、モノクロ画像データである場合には、特定輝度範囲ＹＲａだけが決定される。
【００５６】
特定輝度範囲ＹＲａは、例えば、以下のように決定される。ＣＰＵ１１０は、図６（Ａ）のヒストグラムのピークを特定することで、原稿画像Ａｄの背景Ｂｇに対応する輝度Ｙｍを特定する。ＣＰＵ１１０は、輝度Ｙｂｓと輝度Ｙｍとの中央の値が、閾値Ｙｔｈとなるように、ＹｔｈおよびΔＹａを、以下の式（１）、（２）に従って決定する。
Ｙｔｈ＝｛（Ｙｂｓ＋Ｙｍ）／２））…（１）
ΔＹａ＝（Ｙｔｈ−Ｙｂｓ）…（２）
そして、ＣＰＵ１１０は、新たなΔＹａに基づいて、（Ｙｂｓ−ΔＹ）≦Ｙ≦（Ｙｂｓ＋ΔＹ）を満たす輝度Ｙの範囲を、新たな特定輝度範囲ＹＲａとして決定する。
【００５７】
特定彩度範囲ＣＲａは、例えば、以下のように決定される。ＣＰＵ１１０は、図６（Ｂ）のヒストグラムのピークを特定することで、原稿画像Ａｄの背景Ｂｇに対応する彩度Ｃｍを特定する。ＣＰＵ１１０は、彩度Ｃｂｓと彩度Ｃｍとの中央の値を、あらたな閾値Ｃｔｈａとして決定する。ＣＰＵ１１０は、Ｙ≦Ｃｔｈａを満たす彩度Ｃの範囲を、新たな特定彩度範囲ＣＲａとして決定する。
【００５８】
Ｓ１４５では、ＣＰＵ１１０は、決定された特定輝度範囲ＹＲａおよび特定彩度範囲ＣＲａを用いて、縮小画像データを二値化して、単純二値画像ＢＩを示す単純二値画像データを、再度、生成する。これにより、Ｓ１１５またはＳ１２０にて最初に生成される単純二値画像データによって示される単純二値画像ＢＩが、図５（Ｂ）に示す不適切な単純二値画像ＢＩｍである場合であっても、本ステップにて２回目に生成される単純二値画像データによって示される単純二値画像ＢＩは、図５（Ａ）に示す適切な単純二値画像ＢＩｓとなる可能性を高くすることができる。
【００５９】
Ｓ１５０では、ＣＰＵ１１０は、縮小画像データに対して、縮小画像ＭＩ内のエッジを抽出するエッジ抽出処理をして、エッジ抽出データを生成する。具体的には、ＣＰＵ１１０は、縮小画像データの各画素の値に、いわゆるソーベルフィルタ（Sobel filter）を適用して、エッジ強度Ｓｅを算出する。ＣＰＵ１１０は、これらのエッジ強度Ｓｅを、複数個の画素の値とするエッジ抽出データを生成する。
【００６０】
以下に、エッジ強度の算出式（３）を示す。式（３）の階調値Ｐ（ｘ，ｙ）は、スキャン画像ＳＩ内の特定の画素位置（ｘ，ｙ）の階調値を表している。位置ｘは、方向Ｄ１（縦方向）の画素位置を示し、位置ｙは、方向Ｄ２（横方向）の画素位置を示している。スキャン画像ＳＩ内の画素位置（ｘ，ｙ）におけるエッジ強度Ｓｅ（ｘ，ｙ）は、その画素位置（ｘ，ｙ）を中心とし隣り合う３行３列の９つの画素の値を用いて算出される。算出式の第１項および第２項は、９つの位置の画素の階調値に、対応する係数をそれぞれ乗じた値の和の絶対値である。第１項は、方向Ｄ１の階調値の微分（すなわち、横方向の微分）であり、第２項は、方向Ｄ２の階調値の微分（すなわち、縦方向の微分）である。算出されるエッジ強度Ｓｅ（ｘ，ｙ）は、０〜２５５の範囲の２５６階調の値に正規化される。
【００６１】
【数１】
2019016897.tif 000003
…（２）
【００６２】
生成されるエッジ抽出データによって示されるエッジ抽出画像では、縮小画像ＭＩにおけるエッジに対応する位置、例えば、図３（Ａ）の縮小画像ＭＩにおける原稿画像Ａｄと外側画像Ａｂとの境界に対応する画素や、オブジェクトＯｂ１、Ｏｂ２の輪郭に対応する画素の値が、他の位置の画素の値と比較して大きくなる。
【００６３】
Ｓ１５５では、ＣＰＵ１１０は、Ｓ１５０にて生成済みのエッジ抽出データを二値化して、エッジ二値画像ＥＩを示すエッジ二値画像データを生成する。例えば、ＣＰＵ１１０は、エッジ抽出データにおいて、画素の値（すなわち、エッジ強度）が閾値（例えば、１２８）以上である画素を、エッジ画素ＰＸｅとして特定し、画素の値が閾値未満である画素を、非エッジ画素ＰＸｎとして特定する。エッジ二値画像データでは、エッジ画素ＰＸｅの値は、「１」とされ、非エッジ画素ＰＸｎの値は、「０」とされる。
【００６４】
図５（Ｃ）には、エッジ二値画像ＥＩの一例が示されている。このエッジ二値画像ＥＩでは、縮小画像ＭＩにおける原稿画像Ａｄと外側画像Ａｂとの境界に対応する画素やオブジェクトＯｂ１、Ｏｂ２の輪郭に対応する画素が、エッジ画素ＰＸｅとして特定されていることが解る。なお、縮小画像ＭＩ内の各画素は、読取画像ＯＩの１個以上の画素と対応しているので、縮小画像ＭＩ内のエッジ画素ＰＸｅおよび非エッジ画素ＰＸｎを特定することは、読取画像ＯＩ内の対応するエッジ画素および非エッジ画素を特定することに等しい。
【００６５】
Ｓ１６０では、ＣＰＵ１１０は、２個の二値画像データ、すなわち、単純二値画像データとエッジ二値画像データとを合成して、上述した原稿画素特定画像ＣＩ（図３（Ｂ）、図５（Ｄ））を示す原稿画素特定画像データを生成する。具体的には、ＣＰＵ１１０は、単純二値画像データとエッジ二値画像データとの各画素の論理和を取ることによって、原稿画素特定画像データを生成する。この結果、単純二値画像データを用いて特定される複数個の第２画素ＰＸ２と、エッジ二値画像データを用いて特定される複数個のエッジ画素ＰＸｅと、を含む画素群であって、第２画素ＰＸ２ともエッジ画素ＰＸｅとも異なる画素を含まない画素群を、複数個の原稿画素ＰＸａとして特定する。第２画素ＰＸ２ともエッジ画素ＰＸｅとも異なる画素群は、複数個の非原稿画素ＰＸｂとして特定される。
【００６６】
以上の説明から解るように、本実施例の原稿画素特定処理では、読取画像データを用いて生成される縮小画像データを用いて、特定輝度範囲ＹＲ（または特定輝度範囲ＹＲａ）内の輝度を有することを含む特定条件を満たす複数個の画素が、複数個の第１画素ＰＸ１として特定され、特定条件を満たさない複数個の画素が、複数個の第２画素ＰＸ２として特定されることによって、単純二値画像データが生成される（図４のＳ１１０〜Ｓ１４５）。さらに、縮小画像データを用いて、エッジ画素ＰＸｅを示すエッジ二値画像データが生成される（図４のＳ１５０〜Ｓ１５５）。そして、本実施例の画像処理では、単純二値画像データとエッジ二値画像データとを用いて、読取画像ＯＩ内の原稿画像Ａｄに対応する原稿領域ＡＡ（図３（Ｃ））が特定される（図４のＳ１６０、図２のＳ２５〜Ｓ３５）。この結果、読取画像ＯＩ内の原稿領域ＡＡの特定精度を向上できる。
【００６７】
仮に、エッジ二値画像データだけを用いて、原稿領域ＡＡを特定しようとする場合を考える。エッジ二値画像データによって示されるエッジ二値画像ＥＩには、図５（Ｃ）に示すように、原稿画像Ａｄの輪郭を示す線を構成するエッジ画素ＰＸｅが特定される。しかしながら、エッジ二値画像ＥＩにおいて、原稿画像Ａｄの輪郭を示す線のような細線には、断線した部分が発生しやすい。すなわち、エッジ二値画像データを用いて特定される複数個のエッジ画素ＰＸｅには、原稿画像Ａｄの輪郭を構成する複数個の輪郭画素ＰＸｏ（図３（Ｃ））の一部が含まれない可能性がある。この場合には、図２のＳ３０の輪郭特定処理において、原稿画像Ａｄの一部の輪郭が特定できず、その結果、原稿領域ＡＡが適切に特定できない可能性がある。本実施例の原稿画素特定処理で生成される原稿画素特定画像ＣＩ（図５（Ｄ））では、原稿画像Ａｄの輪郭を示す細線だけでなく、その内側の原稿画像Ａｄの背景Ｂｇを構成する画素も、原稿画素ＰＸａとして特定される。したがって、本実施例では、エッジ二値画像データだけを用いて、原稿領域ＡＡを特定しようとする場合と比較して、精度良く原稿領域ＡＡを特定することができる。
【００６８】
仮に、単純二値画像データだけを用いて、原稿領域ＡＡを特定しようとする場合を考える。単純二値画像データによって示される単純二値画像ＢＩには、特に、原稿画像Ａｄの背景Ｂｇの色が、カバー４５０の対向面Ｂｓの色に近似している場合には、図５（Ｂ）に示す単純二値画像ＢＩｓのように、原稿画像Ａｄの輪郭を構成する複数個の輪郭画素ＰＸｏの一部または全部が、第２画素ＰＸ２として特定されない可能性がある。この場合には、図２のＳ３０の輪郭特定処理において、原稿画像Ａｄの一部の輪郭が特定できず、その結果、原稿領域ＡＡが適切に特定できない可能性がある。本実施例の原稿画素特定処理では、例えば、単純二値画像ＢＩにて、複数個の輪郭画素ＰＸｏの一部または全部が、第２画素ＰＸ２として特定されていなくても、エッジ二値画像ＥＩにて、複数個の輪郭画素ＰＸｏが、エッジ画素ＰＸｅとして特定されていれば、複数個の輪郭画素ＰＸｏは、原稿画素特定画像ＣＩにて特定される原稿画素ＰＸａに含まれる。したがって、本実施例では、単純二値画像データだけを用いて、原稿領域ＡＡを特定しようとする場合と比較して、精度良く原稿領域ＡＡを特定することができる。
【００６９】
より具体的には、上記原稿画素特定処理では、上述したように、単純二値画像データと、エッジ二値画像データと、の各画素の論理和を取ることによって、原稿画素特定画像データが生成される（図４のＳ１６０）。換言すれば、ＣＰＵ１１０は、複数個の第２画素ＰＸ２と、複数個のエッジ画素ＰＸｅと、を含む画素群を示す合成画像データを、原稿画素特定画像データとして生成する。この結果、原稿画素特定画像データを用いて、読取画像ＯＩ内の原稿領域ＡＡの特定精度をより向上できる。
【００７０】
さらに、上記原稿領域特定処理では、特定輝度範囲ＹＲを用いて特定される複数個の第２の画素の複数個の第２画素ＰＸ２の個数Ｍ２が、基準以下（具体的には、第１画素ＰＸ１の個数Ｍ１以下）である場合には（図４のＳ１３０：ＮＯ）、ＣＰＵ１１０は、特定輝度範囲ＹＲとは異なる特定輝度範囲ＹＲａを用いて、複数個の第１画素ＰＸ１と複数個の第２画素ＰＸ２とを、再度、特定することによって、単純二値画像データを、再度、生成する（図４のＳ１４５）。上述したように、第２画素ＰＸ２の個数Ｍ２が、基準以下である場合には、複数個の第１画素ＰＸ１と複数個の第２画素ＰＸ２とを適切に特定できていない可能性が高い（例えば、図５（Ｂ））。上記構成によれば、このような場合に、特定輝度範囲ＹＲａを用いて、複数個の第１画素ＰＸ１と複数個の第２画素ＰＸ２とが、再度特定されるので、単純二値画像データをより適切に生成できる。また、１回目は、予め定められた特定輝度範囲ＹＲを用いて、単純二値画像データが生成されるので、１回目の単純二値画像データが適切であると判断できる場合には、ヒストグラムを用いた特定輝度範囲ＹＲａの決定を行う必要がない。この結果、単純二値画像データの生成に要する処理時間を低減できる。
【００７１】
以上の説明から解るように、上記原稿画素特定処理における単純二値画像データは、第１画像データの例であり、エッジ二値画像データは、第２画像データの例であり、特定輝度範囲ＹＲは、第１の特定輝度範囲の例であり、特定輝度範囲ＹＲａは、第２の特定輝度範囲の例である。
【００７２】
Ａ−４．探索範囲決定処理
図２のＳ２５の探索範囲決定処理について説明する。探索範囲決定処理は、上述したように、原稿画素特定画像データを用いて、原稿画素特定画像ＣＩ内にて、探索範囲ＳＡ（図３（Ｂ））を決定する処理である。図７は、探索範囲決定処理のフローチャートである。図８は、探索範囲決定処理の説明図である。図８には、原稿画素特定画像ＣＩが示されている。図８では、図の見やすさのために、図５（Ｄ）にて黒で塗られている領域をハッチングで示している。
【００７３】
図７のＳ２０５では、ＣＰＵ１１０は、原稿画素特定画像ＣＩの外形の４個の辺に対応する４個の端、すなわち、上端ＵＥ、下端ＢＥ、左端ＬＥ、右端ＲＥから、１個の注目端を選択する。
【００７４】
Ｓ２１０では、ＣＰＵ１１０は、注目端から特定量ΔＷだけ離れた位置を、探索位置として設定する。例えば、図８の上端ＵＥが注目端である場合には、上端ＵＥから特定量ΔＷだけ離れた方向Ｄ１の位置、すなわち、図８のラインＰ１Ｕ上の位置が、探索位置に設定される。同様に、下端ＢＥが注目端である場合には、下端ＢＥから特定量ΔＷだけ離れた方向Ｄ１の位置、すなわち、ラインＰ１Ｂ上の位置が、探索位置に設定される。右端ＲＥ、左端ＬＥが注目端である場合には、それぞれ、下端ＢＥ、右端ＲＥ、左端ＬＥからΔＷだけ離れた方向Ｄ２の位置、すなわわち、ラインＰ１Ｂ、ＰＩＬ上の位置が、探索位置に設定される。特定量ΔＷは、予め設定された量であり、例えば、原稿における３ｍｍの長さに相当する画素数である。
【００７５】
Ｓ２１５では、ＣＰＵ１１０は、設定された探索位置に、注目端に沿う方向にＭ個以上連続する原稿画素ＰＸａが存在するか否かを判断する。Ｍは、２以上の整数であり、例えば、２０である。例えば、図８の上端ＵＥが注目端である場合には、探索位置であるラインＰ１Ｕ上に、Ｍ個以上の原稿画素ＰＸａが連続して並んでいるか否かが判断される。図８の例では、上端ＵＥが注目端である場合には、探索位置（ラインＰ１Ｕ上の位置）には、Ｍ個以上の原稿画素ＰＸａが並んでいると判断される。例えば、図８の左端ＬＥが注目端である場合には、探索位置であるラインＰ１Ｌ上に、Ｍ個以上の原稿画素ＰＸａが連続して並んでいるか否かが判断される。図８の例では、左端ＬＥが注目端である場合には、探索位置（ラインＰ１Ｌ上の位置）には、Ｍ個以上の原稿画素ＰＸａが並んでいないと判断される。
【００７６】
探索位置にＭ個以上連続する原稿画素ＰＸａが存在しない場合には（Ｓ２１５：ＮＯ）、ＣＰＵ１１０は、探索位置を、注目端から離れる方向に向かって１画素ずつずらしながら探索を行う。具体的には、注目端から離れる方向は、注目端と垂直な方向であって、かつ、注目端と向かい合う原稿画素特定画像ＣＩの他の端に向かう方向である。
【００７７】
具体的には、Ｓ２２０では、ＣＰＵ１１０は、探索位置を、現在の位置よりも１画素だけ注目端から離れた位置に設定する。Ｓ２２５では、ＣＰＵ１１０は、新たな探索位置に、注目端に沿う方向にＭ個以上連続する原稿画素ＰＸａが存在するか否かを判断する。探索位置にＭ個以上連続する原稿画素ＰＸａが存在しない場合には（Ｓ２２５：ＮＯ）、ＣＰＵ１１０は、Ｓ２２０に戻って、探索位置を、さらに、１画素だけ注目端から離れた位置に設定する。探索位置にＭ個以上連続する原稿画素ＰＸａが存在する場合には（Ｓ２２５：ＹＥＳ）、Ｓ２３０にて、ＣＰＵ１１０は、現在の探索位置を、注目端に対応する探索範囲ＳＡの端の位置として決定して、処理をＳ２６０に進める。
【００７８】
図８の例では、注目端が左端ＬＥである場合には、最初の探索位置は、ラインＰ１Ｌ上の位置である（Ｓ２１０、Ｓ２１５）。探索位置は、ラインＰ１Ｌ上の位置から１画素ずつ右方向（方向Ｄ２）にずらされて、探索が繰り返される（Ｓ２２０、Ｓ２２５）。例えば、図８のラインＰ２Ｌａ、Ｐ２Ｌｂ、Ｐ２Ｌｃ上の位置が、順次に、探索位置として設定される。そして、探索位置が、図８のラインＰ２Ｌｃであるときに、探索位置にＭ個以上連続する原稿画素ＰＸａが存在すると判断され（Ｓ２２５：ＹＥＳ）、ラインＰ２Ｌｃ上の位置が、探索範囲ＳＡの左端ＴＬの位置として決定される（Ｓ２３０）。
【００７９】
注目端が右端ＲＥである場合には、ラインＰ１Ｒ上の位置から、左方向（方向Ｄ２の反対方向）に、順次に探索が行われて、図８に示す探索範囲ＳＡの右端ＴＲの位置が決定される（Ｓ２１０〜Ｓ２３０）。
【００８０】
Ｓ２１５にて、探索位置にＭ個以上連続する原稿画素ＰＸａが存在する場合には（Ｓ２１５：ＹＥＳ）、ＣＰＵ１１０は、探索位置を、注目端に向かって１画素ずつずらしながら探索を行う。
【００８１】
具体的には、Ｓ２３５では、ＣＰＵ１１０は、探索位置を、現在の位置よりも１画素だけ注目端側の位置に設定する。Ｓ２４０では、ＣＰＵ１１０は、新たな探索位置に、注目端に沿う方向にＭ個以上連続する原稿画素ＰＸａが存在するか否かを判断する。探索位置にＭ個以上連続する原稿画素ＰＸａが存在しない場合には（Ｓ２４０：ＮＯ）、Ｓ２４５にて、ＣＰＵ１１０は、現在の探索位置より１画素だけ注目端から離れた位置を、注目端に対応する探索範囲ＳＡの端の位置として決定して、処理をＳ２６０に進める。
【００８２】
探索位置にＭ個以上連続する原稿画素ＰＸａが存在する場合には（Ｓ２４０：ＹＥＳ）、Ｓ２５０にて、ＣＰＵ１１０は、現在の探索位置が注目端の位置であるか否かを判断する。現在の探索位置が注目端の位置でない場合には（Ｓ２４０：ＮＯ）、ＣＰＵ１１０は、Ｓ２３５に戻って、探索位置を、さらに、１画素だけ注目端側の位置に設定する。現在の探索位置が注目端の位置である場合には（Ｓ２４０：ＹＥＳ）、Ｓ２５５にて、ＣＰＵ１１０は、注目端の位置を、注目端に対応する探索範囲ＳＡの端の位置として決定して、処理をＳ２６０に進める。
【００８３】
図８の例では、注目端が上端ＵＥである場合には、例えば、最初の探索位置は、ラインＰ１Ｕ上の位置である（Ｓ２１０、Ｓ２１５）。探索位置は、ラインＰ１Ｕ上の位置から１画素ずつ上方向に（方向Ｄ１の反対方向）にずらされて、探索が繰り返される（Ｓ２３５、Ｓ２４０、Ｓ２５０）。例えば、図８のラインＰ３Ｕａ、Ｐ３Ｕｂ、Ｐ３Ｕｃ上の位置が、順次に、探索位置として設定される。そして、探索位置が、図８のラインＰ３Ｕｃであるときに、ラインＰ３Ｕｃの位置は、上端ＵＥの位置であるので（Ｓ２５０：ＹＥＳ）、原稿画素特定画像ＣＩの上端ＵＥの位置が、探索範囲ＳＡの上端ＴＵの位置として決定される（Ｓ２５５）。
【００８４】
注目端が下端ＢＥである場合には、ラインＰ１Ｂ上の位置、ラインＰ３Ｂａ、Ｐ３Ｂｂ、Ｐ３Ｂｃ上の位置が、順次に探索位置とされて、探索が行われる（Ｓ２３５、Ｓ２４０、Ｓ２５０）。そして、探索位置が、図８に示す探索範囲ＳＡの下端ＴＢの位置よりも１画素だけ下側のラインＰ３Ｂｃであるときに、探索位置にＭ個以上連続する原稿画素ＰＸａが存在しないと判断され（Ｓ２４０：ＮＯ）、ラインＰ３Ｂｃよりも１画素だけ上側の位置が、探索範囲ＳＡの下端ＴＢとして決定される（Ｓ２４５）。
【００８５】
Ｓ２６０では、ＣＰＵ１１０は、全ての端ＵＥ、ＢＥ、ＬＥ、ＲＥを、注目端として処理したか否かを判断する。未処理の端がある場合には（Ｓ２６０：ＮＯ）、ＣＰＵ１１０は、Ｓ２０５に処理を戻す。全ての端が処理された場合には（Ｓ２６０：ＹＥＳ）、Ｓ２６５にて、ＣＰＵ１１０は、探索範囲ＳＡを規定する範囲情報を生成して、探索範囲決定処理を終了する。範囲情報は、例えば、原稿画素特定画像ＣＩの４個の端ＵＥ、ＢＥ、ＬＥ、ＲＥのそれぞれと、探索範囲ＳＡの対応する端ＴＵ、ＴＢ、ＴＬ、ＴＲと、の間の距離ＤＵ、ＤＢ、ＤＬ、ＤＲを示す情報である。
【００８６】
以上説明した本実施例の探索範囲決定処理では、例えば、注目端が左端ＬＥである場合には、左端ＬＥから特定量ΔＷだけ離れたラインＰ１Ｌ上の位置に、左端ＬＥに沿う方向に連続するＭ個の原稿画素ＰＸａが存在するか否かが判断される（Ｓ２１０、Ｓ２１５）。ラインＰ１Ｌ上の位置に複数個の原稿画素ＰＸａが存在しない場合に（Ｓ２１５：ＮＯ）、ラインＰ２Ｌａ〜Ｐ２Ｌｃ上の位置について、特定の端から離れる方向に向かって順次に、複数個の原稿画素ＰＸａが存在するか否かが判断される（Ｓ２２０）。そして、ラインＰ２Ｌｃ上の位置に複数個の原稿画素ＰＸａが存在すると判断される場合に（Ｓ２２５：ＹＥＳ）、ラインＰ２Ｌｃ上の位置に基づいて、左端ＬＥの端に対応する探索範囲ＳＡの左端ＴＬの位置が決定される（Ｓ２３０）。そして、本実施例の画像処理では、このように決定される探索範囲ＳＡ内にて、原稿画像Ａｄの輪郭を構成する複数個の輪郭画素ＰＸｏが特定される（図２のＳ３０）。
【００８７】
読取画像ＯＩの端部には、読取時に光の照射が不均一になりやすいこと等に起因して影が生じやすい。特に、スキャナ４００のようなフラットベッド式の読取装置では、ガラス製の原稿台４４０（プラテンガラスとも呼ぶ）の側端面部で光りが反射することや、原稿の原稿台４４０からの浮き上がりなどによって、原稿の端部に照射される光量が減少しやすいため、このような影が生じやすい。このような影が生じている部分では、読取画像ＯＩにおいて画素の濃度が高くなるので、当該部分には、原稿画素ＰＸａが存在しない場合であっても、誤って原稿画素ＰＸａが特定されてしまう場合がある。上記実施例の探索範囲決定処理によれば、上述したように、左端ＬＥから離れたラインＰ１Ｌ上の位置に、Ｍ個の原稿画素ＰＸａが存在するか否かが判断され（Ｓ２１０、Ｓ２１５）、ラインＰ１Ｌ上の位置にＭ個の原稿画素ＰＸａが存在しない場合に（Ｓ２１５：ＮＯ）、ラインＰ２Ｌａ〜Ｐ２Ｌｃ上の位置について、順次に、Ｍ個の原稿画素ＰＸａが存在するか否かが判断される（Ｓ２２０）。この結果、例えば、図３、図８の例のように、原稿画像Ａｄが、左端ＬＥから離れた位置にある場合には、探索範囲ＳＡの左端ＴＬは、読取画像ＯＩ（原稿画素特定画像ＣＩ）の左端ＬＥから離れた位置に決定される。そして、このように決定された探索範囲ＳＡ内にて、複数個の輪郭画素ＰＸｏが特定される。したがって、読取画像ＯＩの左端ＬＥの近傍に影が生じているために、左端ＬＥの近傍に、複数個の原稿画素ＰＸａが存在しないにも関わらずに、誤って複数個の原稿画素ＰＸａが存在すると判断された場合でも、原稿画像Ａｄの輪郭を精度良く特定することができる。
【００８８】
さらに、本実施例の探索範囲決定処理では、例えば、注目端が下端ＢＥである場合には、ラインＰ１Ｂ上の位置に、下端ＢＥに沿う方向に連続するＭ個の原稿画素ＰＸａが存在するか否かが判断される（Ｓ２１０、Ｓ２１５）。ラインＰ１Ｂ上の位置にＭ個の原稿画素ＰＸａが存在する場合に（Ｓ２１５：ＹＥＳ）、ラインＰ１Ｂ上の位置よりも下端ＢＥ側の複数個のラインＰ３Ｂａ〜Ｐ３Ｂｃ上の位置について、順次に、Ｍ個の原稿画素ＰＸａが存在するか否かが判断される（Ｓ２３５、Ｓ２４０、Ｓ２５０）。そして、複数個のラインＰ３Ｂａ〜Ｐ３Ｂｃ上の位置についての判断結果に基づいて、探索範囲ＳＡの下端ＴＢの位置が決定される（Ｓ２４５、Ｓ２５５）。したがって、図３、図８の例のように、ラインＰ１Ｂ上の位置よりも下端ＢＥ側に複数個の原稿画素ＰＸａが存在する場合であっても、適切な探索範囲ＳＡを規定できるので、原稿画像Ａｄの輪郭をより精度良く特定することができる。
【００８９】
さらに、本実施例の探索範囲決定処理では、例えば、注目端が下端ＢＥである場合には、複数個のラインＰ３Ｂａ〜Ｐ３Ｂｃ上の位置について、ラインＰ１Ｂ上の位置から下端ＢＥに向かって順次に、Ｍ個の原稿画素ＰＸａが存在するか否かが判断される（Ｓ２３５、Ｓ２４０、Ｓ２５０）。そして、ラインＰ３Ｂｃ上の位置にＭ個の原稿画素ＰＸａが存在しないと判断される場合に（Ｓ２４０：ＮＯ）、ラインＰ３Ｂｃ上の位置に基づいて、探索範囲ＳＡの下端ＴＢの位置が決定される。この結果、例えば、読取画像ＯＩの下端ＢＥに影が生じている場合であっても、下端ＢＥとラインＰ１Ｂ上の位置との間に、探索範囲ＳＡの下端ＢＥを適切に決定できる。したがって、原稿画像Ａｄの輪郭をさらに精度良く特定することができる。
【００９０】
さらに、本実施例の探索範囲決定処理では、読取画像ＯＩおよび原稿画素特定画像ＣＩの４個の辺に対応する４個の端ＵＥ、ＢＥ、ＬＥ、ＲＥのそれぞれを注目端として、Ｓ２１０〜Ｓ２５５の処理が実行されて、４個の辺に対応する探索範囲ＳＡの４個の端ＴＵ、ＴＢ、ＴＬ、ＴＲが決定される（Ｓ２０５、Ｓ２６０）。したがって、矩形の読取画像ＯＩに対して適切な探索範囲を規定できるので、矩形の読取画像ＯＩ内の原稿画像Ａｄの輪郭を精度良く特定することができる。
【００９１】
さらに、本実施例では、読取画像データは、フラットベッド式のスキャナ４００を用いて生成されるので、端部に影が生じやすい読取画像において、原稿画像Ａｄの輪郭を精度良く特定することができる。
【００９２】
さらに、本実施例では、読取画像データを用いて生成される原稿画素特定画像データを用いて、Ｓ２１０〜Ｓ２５５の処理が実行される。すなわち、原稿画素特定画像ＣＩ上にて探索範囲ＳＡを決定することによって、間接的に、原稿画素特定画像ＣＩ上の探索範囲に対応する読取画像ＯＩ上の範囲が、読取画像ＯＩ上の探索範囲として決定される。したがって、原稿画素特定画像データを生成することなく、読取画像ＯＩ上にて、直接的に、探索範囲を決定する場合と比較して、効率良く、探索範囲を決定できる。
【００９３】
以上の説明から解るように、上記探索範囲決定処理における原稿画素特定画像ＣＩ内のラインＰ１Ｕ、Ｐ１Ｂ、Ｐ１Ｒ、Ｐ１Ｌの位置に対応する読取画像ＯＩ内の位置は、第１の位置の例であり、原稿画素特定画像ＣＩ内のラインＰ２Ｌａ〜Ｐ２Ｌｃの位置に対応する読取画像ＯＩ内の位置は、第２の位置の例であり、原稿画素特定画像ＣＩ内のラインＰ３Ｕａ〜Ｐ３Ｕｃ、Ｐ３Ｂａ〜Ｐ３Ｂｃの位置に対応する読取画像ＯＩ内の位置は、第３の位置の例である。また、上記実施例における原稿画像Ａｄは、第１の画像の例であり、外側画像Ａｂは、第２の画像の例である。
【００９４】
Ａ−５．輪郭特定処理
図２のＳ３０の輪郭特定処理について説明する。輪郭特定処理は、上述したように、原稿画素特定画像データを用いて、探索範囲ＳＡ内にて、輪郭画素ＰＸｏを特定する処理である。図９は、輪郭特定処理のフローチャートである。図１０は、輪郭特定処理の説明図である。
【００９５】
図９のＳ３００では、ＣＰＵ１１０は、輪郭画像ＯＬＩを示す輪郭画像データの初期データを、揮発性記憶装置１２０内に準備する。初期データは、縮小画像ＭＩや原稿画素特定画像ＣＩと同じサイズの画像を示す二値画像データであり、全ての画素の値が、初期値として、「０」に設定されている。
【００９６】
Ｓ３０５では、ＣＰＵ１１０は、原稿画素特定画像ＣＩにおいて、探索範囲ＳＡの外形の４個の辺に対応する４個の端、すなわち、上端ＴＵ、下端ＴＢ、左端ＴＬ、右端ＴＲ（図１０）から、１個の注目端を選択する。Ｓ３０５では、ＣＰＵ１１０は、注目端上の複数個の画素の中から、１個の注目画素を選択する。
【００９７】
Ｓ３１５では、ＣＰＵ１１０は、注目画素を始点として、注目端から探索範囲ＳＡの内側に向かって探索して、最初に探索される原稿画素ＰＸａを特定する。探索範囲ＳＡの内側に向かう方向は、具体的には、注目端と垂直な方向であって、かつ、注目端とは向かい合う探索範囲ＳＡの他の端に向かう方向である。図１０に示すように、上端ＴＵ上に位置する画素ＰＸｔ１が注目画素である場合には、下側に向かって検索が行われ、最初に探索される原稿画素ＰＸａ１が特定される。同様にして、右端ＴＲ、下端ＴＢ、左端ＴＬ上にそれぞれ位置する画素ＰＸｔ２、ＰＸｔ３、ＰＸｔ４が注目画素である場合には、それぞれ、左側、上側、右側に向かって検索が行われ、最初に探索される原稿画素ＰＸａ２、ＰＸａ３、ＰＸａ４が特定される。
【００９８】
Ｓ３２０では、ＣＰＵ１１０は、特定された原稿画素ＰＸａを、輪郭画素ＰＸｏとして、輪郭画像データに記録する。具体的には、特定された原稿画素ＰＸａに対応する輪郭画像データにおける画素の値を「１」に変更する。
【００９９】
Ｓ３２５では、ＣＰＵ１１０は、注目端上の全ての画素を注目画素として処理したか否かを判断する。未処理の画素がある場合には（Ｓ３２５：ＮＯ）、ＣＰＵ１１０は、Ｓ３０５に処理を戻す。全ての画素が処理された場合（Ｓ３２５：ＹＥＳ）、ＣＰＵ１１０は、Ｓ３３０に処理を進める。
【０１００】
Ｓ３３５では、ＣＰＵ１１０は、全ての探索範囲ＳＡの端ＴＵ、ＴＢ、ＴＬ、ＴＲを、注目端として処理したか否かを判断する。未処理の端がある場合には（Ｓ３３５：ＮＯ）、ＣＰＵ１１０は、Ｓ３０５に処理を戻す。全ての端が処理された場合には（Ｓ３３５：ＹＥＳ）、ＣＰＵ１１０は、輪郭特定処理を終了する。輪郭特定処理によって、図３（Ｃ）に示す輪郭画像ＯＬＩを示す輪郭画像データが生成される。
【０１０１】
本実施例の輪郭特定処理によれば、探索範囲ＳＡの端から探索範囲ＳＡの内側に向かって原稿画素ＰＸａが探索され、最初に探索される特定の原稿画素ＰＸａ（例えば、ＰＸａ１〜ＰＸａ４）が、輪郭画素ＰＸｏとして特定される。したがって、探索範囲ＳＡ内において、原稿画像Ａｄの輪郭を、容易、かつ、適切に特定することができる。
【０１０２】
Ａ−６．原稿領域特定処理
図２のＳ３５の原稿領域特定処理について説明する。原稿領域特定処理は、上述したように、輪郭画像データを用いて、原稿画像Ａｄに対応する原稿領域ＡＡを特定する処理である。図１１は、原稿領域特定処理のフローチャートである。
【０１０３】
図１１のＳ３１０では、輪郭画像データを用いて、原稿の縁を示す直線の候補である複数個の候補直線を特定する。具体的には、輪郭画素ＰＸｏによって表される直線が、候補直線として採用される。候補直線を特定する方法としては、輪郭画素ＰＸｏを用いるハフ変換が用いられる。ハフ変換は、公知の処理であるので、その説明を省略する。ハフ変換の結果、図３（Ｃ）の例では、原稿画像Ａｄの輪郭を示す６本の候補直線Ｌ１〜Ｌ６が特定される。
【０１０４】
Ｓ３２０では、ＣＰＵ１１０は、６本の候補直線Ｌ１〜Ｌ６から、原稿の縁を示す直線を選択する。具体的には、ＣＰＵ１１０は、６本の候補直線Ｌ１〜Ｌ６から、輪郭画像ＯＬＩの外形の４個の端（辺）に位置する直線を除外する。例えば、図３（Ａ）の例では、輪郭画像ＯＬＩの上端に位置する候補直線Ｌ２が除外される。輪郭画像ＯＬＩの４個の端に位置する直線（例えば、Ｌ２）は、読取画像ＯＩの対応する端に位置している。このような直線Ｌ２は、図３（Ａ）に示すように、読取時において、読取可能領域からはみ出した原稿上の領域Ｄａに対応しており、原稿の縁を示していないと考えられる。ＣＰＵ１１０は、残りの候補直線Ｌ１、Ｌ３〜Ｌ６から、互いに平行な２本の直線の組を、２組抽出する。図３（Ａ）の例では、直線Ｌ３とＬ６の組と、直線Ｌ２とＬ４の組と、が抽出される。これらの４本の直線Ｌ２、Ｌ３、Ｌ４、Ｌ６が、原稿の縁を示す直線として選択される。
【０１０５】
Ｓ３３０では、ＣＰＵ１１０は、原稿の縁を示す直線群で形成される矩形の内部領域を原稿領域ＡＡとして特定する。具体的には、原稿の縁を示す４本の直線Ｌ２、Ｌ３、Ｌ４、Ｌ６の４個の交点ＣＰ１〜ＣＰ４を特定することで、該４個の交点ＣＰ１〜ＣＰ４によって定義される原稿領域ＡＡが特定される。
【０１０６】
以上の説明から解るように、本実施例の原稿領域特定処理では、原稿画素特定画像データを用いて生成された輪郭画像データを用いて、原稿画像Ａｄの輪郭のうち、原稿の縁を表す直線の候補である複数の候補直線Ｌ１〜Ｌ６が特定され（Ｓ３１０）、これらのうちの一部の直線Ｌ２、Ｌ３、Ｌ４、Ｌ６を用いて規定される原稿領域ＡＡが決定される（Ｓ３２０、Ｓ３３０）。したがって、原稿画素特定画像データに基づいて、具体的には、原稿画素特定画像データを用いて生成された輪郭画像データを用いて、特定済みの原稿画像Ａｄの輪郭から、適切な原稿領域ＡＡを特定することができる。
【０１０７】
Ａ−７．補修処理
図２のＳ４０の補修処理について説明する。補修処理は、上述したように、原稿領域ＡＡの特定結果を用いて、読取画像データに対して実行される処理である。図１２は、補修処理のフローチャートである。
【０１０８】
図１２のＳ４１０では、読取画像データに対して、原稿画像Ａｄの傾きを補正する傾き補正処理が実行される。具体的には、輪郭画像ＯＬＩにて特定された直線Ｌ３の輪郭画像ＯＬＩの縦方向に対する角度が算出される。そして、該角度分だけ読取画像ＯＩを回転させることによって、直線Ｌ３に対応する読取画像ＯＩ内の原稿画像Ａｄの輪郭線を、読取画像ＯＩの縦方向と平行にする回転処理が実行される。
【０１０９】
Ｓ４２０では、ＣＰＵ１１０は、傾き補正済みの読取画像ＯＩにおいて、原稿画像Ａｄの欠落部分を描画する。具体的には、傾き補正済みの読取画像ＯＩにおいて、輪郭画像ＯＬＩを用いて特定される原稿画像Ａｄの輪郭よりも外側であって、かつ、原稿領域ＡＡよりも内側の領域、具体的には、図３（Ａ）の領域Ｄａ、Ｄｂが特定される。傾き補正済みの読取画像ＯＩにおいて、領域Ｄａ、Ｄｂ内の複数個の画素の値が、原稿画像Ａｄの背景Ｂｇの色を示す値に置換される。背景Ｂｇの色を示す値には、例えば、輪郭画像ＯＬＩを用いて特定される原稿画像Ａｄの輪郭に沿い、かつ、原稿画像Ａｄ内に位置する複数個の画素の値の平均値が用いられる。
【０１１０】
Ｓ４３０では、ＣＰＵ１１０は、欠落部分が描画済の読取画像ＯＩにおいて、外側画像Ａｂの色を、指定色に変更する。具体的には、傾き補正済みの読取画像ＯＩにおいて、輪郭画像ＯＬＩを用いて特定される原稿画像Ａｄの輪郭の外側に位置する複数個の画素の値が、予め指定された色（例えば、白）を示す値に置換される。これによって、図３（Ｄ）の補修済画像ＲＩを示す補修済画像データが生成される。
【０１１１】
Ｂ．変形例：
（１）上記実施例では、単純二値画像データと、エッジ画像データと、の論理和を取ることによって、原稿画素特定画像データが生成される（図４のＳ１６０）。これに代えて、単純二値画像データと、エッジ画像データと、別の二値画像データと、の論理和を取ることによって、最終的な原稿画素特定画像データが生成されても良い。別の二値画像データには、例えば、読取画像データに含まれる各画素のＲ値を、所定の閾値で二値化して得られるＲ成分の二値画像データが用いられ得る。
【０１１２】
（２）上記実施例では、第２画素ＰＸ２の個数Ｍ２が、第１画素ＰＸ１の個数Ｍ１以下である場合に（図４のＳ１３０：ＮＯ）、単純二値画像データを、再度、生成している（図４のＳ１３５〜Ｓ１４５）。単純二値画像データの生成を再度行うか否かの判断基準は、これに限られない。例えば、第２画素ＰＸ２の個数Ｍ２が、縮小画像ＭＩの画素の総数の６０％以下である場合に、単純二値画像データを、再度、生成しても良い。
【０１１３】
（３）図４の原稿領域特定処理では、複数個の候補直線Ｌ１〜Ｌ６を用いて、原稿領域ＡＡを特定している（図１１のＳ３１０〜Ｓ３３０）が、これに限られない。例えば、原稿画像Ａｄの傾きが発生し難い場合などには、輪郭画像ＯＬＩ内に特定される複数個の輪郭画素ＰＸｏに対する外接矩形を、原稿領域ＡＡとして特定しても良い。
【０１１４】
（４）図２の画像処理のステップは、適宜、省略が可能である。例えば、図２のＳ１５の縮小画像データの生成は、省略されても良い。この場合には、Ｓ２０の原稿画素特定処理において、読取画像データを用いて、読取画像データと同じ画素数の単純二値画像データおよびエッジ二値画像データが生成される。
【０１１５】
（５）図４の原稿画素特定処理のステップは、適宜、省略が可能である。例えば、図４のＳ１１０およびＳ１１５は省略されても良い。この場合には、読取画像データが、モノクロ画像データであるかカラー画像データであるかに関わらずに、Ｓ１２０にて特定輝度範囲ＹＲだけを用いて、彩度を考慮することなく、単純二値画像データが生成される。
【０１１６】
また、図４のＳ１２５〜Ｓ１４５は、省略されても良い。この場合には、予め定められた特定輝度範囲ＹＲや特定彩度範囲ＣＲを用いて、Ｓ１１５またはＳ１２０にて生成される単純二値画像データが、最終的な単純二値画像データとして用いられても良い。また、図４のＳ１１０〜Ｓ１３０は、省略されても良い。この場合には、常に、Ｓ１３０〜Ｓ１４５が実行されて、ヒストグラムに基づく特定輝度範囲ＹＲａや特定彩度範囲ＣＲａを用いて、Ｓ１４５にて生成される単純二値画像データが、常に、最終的な単純二値画像データとして用いられても良い。
【０１１７】
（６）図７の探索範囲決定処理では、探索範囲ＳＡを規定する範囲情報として、原稿画素特定画像ＣＩの４個の端のそれぞれと、探索範囲ＳＡの対応する端と、の間の距離ＤＵ、ＤＢ、ＤＬ、ＤＲを示す情報が生成される（Ｓ２６５）。これに限らず、範囲情報は、例えば、矩形の探索範囲ＳＡの４個の角の座標情報であっても良いし、探索範囲ＳＡの上端および下端を示す縦方向の２個の座標と、左端および右端を示す横方向の２個の座標と、を示す情報であっても良い。
【０１１８】
（７）図７の探索範囲決定処理のステップは、適宜、省略が可能である。例えば、図７のＳ２３５〜Ｓ２５５の処理を省略して、ラインＰ１Ｕ、Ｐ１Ｂ、Ｐ１Ｌ、Ｐ１Ｒよりも注目端側の探索を行わなくても良い。ラインＰ１Ｕ、Ｐ１Ｂ、Ｐ１Ｌ、Ｐ１Ｒ上の位置に、連続するＭ個の原稿画素ＰＸａが存在する場合には（Ｓ２１５：ＹＥＳ）、注目端の位置を、注目端に対応する探索範囲ＳＡの端として決定しても良い。
【０１１９】
また、原稿画素特定画像ＣＩの４個の端の全てについて、Ｓ２１０〜Ｓ２５５の処理を行わなくても良い。例えば、スキャナ４００の構造などから影が生じやすい読取画像ＯＩの１以上３以下の端が解っている場合には、読取画像ＯＩの当該１以上３以下の端に対応する端について、Ｓ２１０〜Ｓ２５５の処理を行い、残りの端については、その端から内側に向かって、連続するＭ個の原稿画素ＰＸａが存在するか否かを探索しても良い。
【０１２０】
（８）図７の探索範囲決定処理では、ラインＰ１Ｕ、Ｐ１Ｂ、Ｐ１Ｌ、Ｐ１Ｒ上の位置に、連続するＭ個の原稿画素ＰＸａが存在する場合には（Ｓ２１５：ＹＥＳ）、ラインＰ１Ｕ、Ｐ１Ｂ、Ｐ１Ｌ、Ｐ１Ｒから注目端に向かって、順次に、連続するＭ個の原稿画素ＰＸａが存在するか否かを探索している（Ｓ２３５、Ｓ２４０、Ｓ２５０）。これに代えて、この場合には、注目端からラインＰ１Ｕ、Ｐ１Ｂ、Ｐ１Ｌ、Ｐ１Ｒに向かって、順次に、連続するＭ個の原稿画素ＰＸａが存在するか否かを探索しても良い。この場合には、連続するＭ個の原稿画素ＰＸａが存在する最初のライン上の位置が、探索範囲ＳＡの端の位置に決定される。
【０１２１】
（９）図７の探索範囲決定処理は、原稿画素特定画像データを用いて、原稿画素特定画像ＣＩを解析することによって、間接的に、読取画像ＯＩ上に探索範囲を決定している。これに代えて、原稿画素特定画像データを用いることなく、読取画像データまたは縮小画像データを直接解析することによって、探索範囲ＳＡを決定しても良い。例えば、読取画像ＯＩ上に、ラインＰ１Ｕ、Ｐ１Ｂ、Ｐ１Ｌ、Ｐ１Ｒに対応するラインを設定して、該ライン上に連続するＭ個の画素が存在するか否かを、読取画像データの画素の値を用いて決定しても良い。
【０１２２】
（１０）図９の輪郭特定処理とは異なる方法で、複数個の輪郭画素ＰＸｏが特定されても良い。例えば、探索範囲ＳＡの端上に位置する原稿画素ＰＸａを始点として、非原稿画素ＰＸｂと隣接する原稿画素ＰＸａを辿ることによって、複数個の輪郭画素ＰＸｏが特定されても良い。
【０１２３】
（１１）図１１の原稿領域特定処理は、適宜に変更可能である。例えば、候補直線を特定する処理（Ｓ３１０）は、ハフ変換を用いる処理に代えて、原稿の縁を表し得る直線を特定する他の種々の処理であってよい。例えば、ＣＰＵ１１０は、最小二乗法を用いて、複数の輪郭画素の配置を近似する候補直線を特定してもよい。また、Ｓ３２０では、互いに平行な直線の組に、代えて、互いに垂直な直線の組が、２組特定されても良い。また、最も長い１本の直線だけが原稿の縁を示す直線として特定されても良い。この場合には、例えば、該１本の直線を基準に、例えば、ユーザによって指定された用紙サイズに対応する大きさの矩形が原稿領域ＡＡとして特定されても良い。
【０１２４】
（１２）図１２の補修処理は、適宜に変更可能である。例えば、Ｓ４１０〜Ｓ４３０の３個のステップのうち、１個または２個のステップは省略されても良い。また、補修処理に代えて、原稿領域ＡＡの特定結果や、輪郭の特定結果は、他の画像処理、例えば、トリミング処理のために利用されても良い。
【０１２５】
（１３）図７の探索範囲決定処理は、省略されても良く、例えば、原稿画素特定画像ＣＩの全体を探索範囲として、図１０の輪郭特定処理が行われても良い。
【０１２６】
（１４）図１０の輪郭特定処理は省略されても良い。この場合には、例えば、原稿画素特定画像ＣＩを用いて、原稿領域ＡＡが特定されても良い。輪郭特定処理の後に、例えば、特定された原稿画像Ａｄの輪郭に沿って、画像をトリミングする処理や、原稿画像Ａｄの輪郭内の画像を補正する処理が行われても良い。例えば、原稿画像Ａｄの傾きが発生し難い場合などには、原稿画素特定画像ＣＩのうち、外縁の近傍で孤立した原稿画素ＰＸａをノイズとして除去した後に、原稿画素特定画像ＣＩ内に特定される複数個の原稿画素ＰＸａ１に対する外接矩形を、原稿領域ＡＡとして特定しても良い。
【０１２７】
（１５）原稿を光学的に読み取る装置は、図１で説明したスキャナ４００に代えて、原稿を光学的に読み取ることが可能な他の種々の装置であってよい。例えば、スキャナ４００は、原稿を搬送するための自動給紙装置（Auto Document Feeder）を備え、搬送される原稿を、停止したイメージセンサ４２０で読み取るタイプのスキャナであっても良い。また、画像処理装置１００のＣＰＵ１１０は、画像処理装置１００に接続されたスキャナ４００から、読取画像データを取得することに代えて、不揮発性記憶装置１３０や、画像処理装置１００に接続された図示しない外部記憶装置（例えば、ＵＳＢメモリ）に予め格納された読取画像データを取得してもよい。
【０１２８】
（１６）図２の画像処理は、パーソナルコンピュータとは異なる種類の装置によって実行されても良い。例えば、画像処理は、スキャナ（例えば、スキャナ４００）のＣＰＵ４１１によって実行されても良い。画像処理は、ネットワークに接続されたサーバ装置によって実行されても良い。画像処理は、ネットワークを介して互いに通信可能な複数の装置（例えば、コンピュータ）によって、一部ずつ分担して実行されても良い。この場合には、該複数の装置の全体が、画像処理装置に対応する。
【０１２９】
上記各実施例において、ハードウェアによって実現されていた構成の一部をソフトウェアに置き換えるようにしてもよく、逆に、ソフトウェアによって実現されていた構成の一部あるいは全部をハードウェアに置き換えるようにしてもよい。
【０１３０】
また、本発明の機能の一部または全部がコンピュータプログラムで実現される場合には、そのプログラムは、コンピュータ読み取り可能な記録媒体（例えば、一時的ではない記録媒体）に格納された形で提供することができる。プログラムは、提供時と同一または異なる記録媒体（コンピュータ読み取り可能な記録媒体）に格納された状態で、使用され得る。「コンピュータ読み取り可能な記録媒体」は、メモリーカードやＣＤ−ＲＯＭのような携帯型の記録媒体に限らず、各種ＲＯＭ等のコンピュータ内の内部記憶装置や、ハードディスクドライブ等のコンピュータに接続されている外部記憶装置も含み得る。
【０１３１】
以上、実施例、変形例に基づき本発明について説明してきたが、上記した発明の実施の形態は、本発明の理解を容易にするためのものであり、本発明を限定するものではない。本発明は、その趣旨並びに特許請求の範囲を逸脱することなく、変更、改良され得ると共に、本発明にはその等価物が含まれる。
【符号の説明】
【０１３２】
１００…画像処理装置、１１０…ＣＰＵ、１２０…揮発性記憶装置、１３０…不揮発性記憶装置、１３２…プログラム、１４０…表示部、１５０…操作部、１９０…インタフェース、２５５…輝度、４００…スキャナ、４１０…制御部、４１１…ＣＰＵ、４１２…揮発性記憶装置、４１３…不揮発性記憶装置、４１４…プログラム、４１９…インタフェース、４２０…イメージセンサ、４３０…移動装置、４４０…原稿台、４５０…カバー、４９０…本体部、ＳＡ…探索範囲、ＡＡ…原稿領域、ＥＩ…エッジ二値画像、ＳＩ…スキャン画像、ＯＩ…読取画像、ＭＩ…縮小画像、ＣＩ…原稿画素特定画像、ＲＩ…補修済画像、ＢＩ、ＢＩｍ、ＢＩｓ…単純二値画像、ＹＲ、ＹＲａ…特定輝度範囲、ＣＲ、ＣＲａ…特定彩度範囲、ＮＴ…ネットワーク、Ａｂ…外側画像、Ａｄ…原稿画像、ＰＸａ…原稿画素、ＰＸｂ…非原稿画素、ＰＸｅ…エッジ画素、ＰＸｎ…非エッジ画素、ＰＸｏ…輪郭画素
【図１】
2019016897.tif 000004
【図２】
2019016897.tif 000005
【図３】
2019016897.tif 000006
【図４】
2019016897.tif 000007
【図５】
2019016897.tif 000008
【図６】
2019016897.tif 000009
【図７】
2019016897.tif 000010
【図８】
2019016897.tif 000011
【図９】
2019016897.tif 000012
【図１０】
2019016897.tif 000013
【図１１】
2019016897.tif 000014
【図１２】
2019016897.tif 000015