(57)【要約】【課題】画像読取部を見開き原稿の右端から原稿が存在しない領域まで余分に移動させることを防止可能な画像読取装置、及び画像読取プログラムを提供することができる。【解決手段】画像読取装置１は、原稿台２と、読取部４と、駆動部５と、エッジ画像生成部１０３と、制御部９０と、を備える。制御部９０は、読取処理（Ｓ３〜Ｓ７）と、エッジ判断処理（Ｓ２０１及びＳ２０５〜Ｓ２０９）と、濃度判断処理（Ｓ３０１、及びＳ３０４〜Ｓ３０６）と、濃度判断処理により、濃度判断対象範囲の全画素数に対応する割合が第３閾値以上であると判断した場合、駆動部に読取部を停止させる移動停止処理（Ｓ２１５）と、を実行する。【選択図】        図７
2019050466.tif 000002
【特許請求の範囲】
【請求項１】
原稿を支持する原稿台と、
主走査方向に原稿のライン画像を読み取る読取部と、
前記主走査方向と直交する副走査方向に、読取開始位置から読取終了位置に向けて前記読取部を移動させる駆動部と、
前記読取部によって読み取られた前記ライン画像に係る画像データにエッジ強調処理を行い、エッジ画像データを生成するエッジ画像生成部と、
制御部と、を備え、
前記制御部は、
前記駆動部に前記副走査方向の前記読取開始位置から前記読取終了位置に向けて前記読取部を移動させながら、前記読取部に前記ライン画像を読み取らせる読取処理と、
前記エッジ画像生成部により生成された前記エッジ画像データから、前記副走査方向に複数の画素および前記主走査方向に複数の画素からなるエッジ判断対象範囲のエッジ画素値を取得し、取得した前記エッジ判断対象範囲の前記エッジ画素値について、前記副走査方向に沿った前記複数の画素に係る前記エッジ画素値のいずれかが第１閾値以上であるか否かの判断を、前記主走査方向に沿った前記複数の画素毎に行うエッジ判断処理と、
前記エッジ判断処理により、前記主走査方向に沿った前記複数の画素全てにおいて、前記副走査方向に沿った前記複数の画素に係る前記エッジ画素値のいずれかが第１閾値以上であると判断した場合、前記画像データのうち前記エッジ判断対象範囲に対応する位置よりも前記副走査方向において前記読取終了位置に近い画像データから、前記副走査方向に複数の画素および前記主走査方向に複数の画素からなる濃度判断対象範囲の画素値を取得し、取得した前記濃度判断対象範囲の前記画素値について、前記画素値の取り得る最小値及び最大値を除いて第２閾値以下である画素値となる前記濃度判断対象範囲の全画素数に対応する割合が第３閾値以上であるか否かの判断を行う濃度判断処理と、
前記濃度判断処理により、前記割合が前記第３閾値以上であると判断した場合、前記駆動部に前記副走査方向に移動している前記読取部を停止させる移動停止処理と、
を実行する、画像読取装置。
【請求項２】
請求項１に記載の画像読取装置において、
前記制御部は、
前記エッジ判断処理により、前記主走査方向に沿った前記複数の画素のうち少なくとも１つ以上の画素において、前記副走査方向に沿った前記複数の画素全てにそれぞれ係る全ての前記エッジ画素値が第１閾値未満であると判断した場合、前記エッジ判断対象範囲から前記副走査方向の前記読取終了位置に向かって所定数の画素まで離れたエッジ判断対象範囲を新たなエッジ判断対象範囲として前記エッジ判断処理を再度実行するエッジ判断制御処理と、
前記濃度判断処理により、前記割合が前記第３閾値未満であると判断した場合、前記エッジ判断対象範囲に対応する位置から前記副走査方向の前記読取終了位置に向かって所定数の画素まで離れた位置を新たなエッジ判断対象範囲に対応する位置として前記濃度判断処理を再度実行する濃度判断制御処理と、を実行する、画像読取装置。
【請求項３】
請求項２に記載の画像読取装置において、
前記制御部は、
前記読取処理の開始後、前記エッジ画像データにおける前記原稿の先端エッジまたは側端エッジを検出することにより前記原稿の主走査原稿幅および前記原稿の主走査原稿傾きを決定する原稿決定処理を実行し、
前記エッジ判断対象範囲は、
前記制御部により前記主走査原稿幅に基づいて決められる前記主走査方向に複数の画素および前記主走査原稿幅と前記主走査原稿傾きとに基づいて決められる前記副走査方向に複数の画素からなる範囲であり、
前記新たなエッジ判断対象範囲は、
前記エッジ判断対象範囲から前記副走査方向の前記読取終了位置に向かって１つの画素まで離れたエッジ判断対象範囲である、画像読取装置。
【請求項４】
請求項２に記載の画像読取装置において、
前記濃度判断対象範囲は、
前記副走査方向の前記読取終了位置に向かう方向の前記原稿の側端部の前記原稿台に対する傾きおよび前記読取部の焦点深度に基づいて予め決められた前記副走査方向に複数の画素および前記主走査方向に複数の画素からなる範囲である、画像読取装置。
【請求項５】
請求項４に記載の画像読取装置において、
前記エッジ判断対象範囲は、
前記エッジ解析画像データにおいて、前記主走査方向の１つの画素データである特定画素データを基準として、当該特定画素データから前記移動方向に前記エッジ副走査幅の範囲まで含まれる画素データで構成されたエッジ判断対象ブロックを１つの単位として、前記特定画素データから前記主走査原稿幅の範囲の画素データの数だけ前記主走査方向に沿って構成された複数の前記エッジ判断対象ブロックからなる範囲であり、
前記エッジ判断処理は、
前記エッジ判断対象ブロック毎に、前記エッジ画素データをそれぞれ取得し、前記取得されたエッジ画素データが、前記エッジ判断対象ブロック毎に前記第１閾値以上存在するか否かを全てのエッジ判断対象ブロックに対して判断し、
前記エッジ判断制御処理は、
前記エッジ判断処理の結果、前記全てのエッジ判断対象ブロックのうち、１つのエッジ判断対象ブロックにおいて、前記取得されたエッジ画素データが、前記第１閾値以上存在しないと判断した場合、前記特定画素データを前記移動方向に所定数の画素データだけ離れた画素データを新たな特定画素データとして前記エッジ判断処理を再度実行する、画像読取装置。
【請求項６】
請求項２に記載の画像読取装置において、
前記読取部は、
前記主走査方向のライン毎に原稿の画像を読み取り、
前記エッジ画像生成部は、
前記主走査方向のライン毎に、前記解析画像データに対してエッジ強調処理を行い、前記主走査方向のライン毎に、画素単位で各画素の画素値が所定の閾値以上となる画素をエッジ画素としてエッジ画像データを生成し、
前記主走査方向のライン数をカウントするラインカウンタを備え、
前記制御部は、
前記原稿決定処理によって決定された主走査原稿幅に基づいて、前記主走査方向の特定ラインのライン数を決定する特定ライン決定処理と、
前記ラインカウンタによってカウントされた前記主走査方向のライン数が前記特定ラインのライン数と等しいか否かを判断するライン数判断処理と、を実行し、
前記ライン数判断処理の結果、前記カウントされた主走査方向のライン数が前記特定ラインのライン数と等しいと判断した場合、前記特定ラインにおける特定画素を基準として前記エッジ取得判断処理を実行する、画像読取装置。
【請求項７】
請求項６に記載の画像読取装置において、
画像データを所定の出力範囲で出力する画像出力部を備え、
前記制御部は、
前記読取終了処理の実行後、前記ラインカウンタによってカウントされた読取終了ラインのライン数を記憶する読取終了ライン記憶処理と、前記エッジ画像データにおいて前記原稿の後端エッジを検出する後端エッジ検出処理と、前記検出された原稿の後端エッジおよび前記読取終了ラインのライン数に基づいて、前記後端エッジのライン数を決定する後端ライン決定処理と、前記後端エッジに基づいて、前記読取部によって読み取られた画像データを抽出する画像抽出処理と、前記主走査原稿幅に基づいて、前記出力範囲を決定する出力範囲決定処理と、前記特定ラインおよび前記後端エッジのライン数に基づいて、前記抽出された読取画像データを、前記決定された出力範囲内に配置する画像出力処理と、を実行する、画像読取装置。
【請求項８】
原稿を支持する原稿台と、主走査方向に原稿のライン画像を読み取る読取部と、前記主走査方向と直交する副走査方向に、読取開始位置から読取終了位置に向けて前記読取部を移動させる駆動部と、前記読取部によって読み取られた前記ライン画像に係る画像データにエッジ強調処理を行い、エッジ画像データを生成するエッジ画像生成部と、を備える画像読取装置の制御部が、実行する画像読取プログラムであって、
前記駆動部に前記副走査方向の前記読取開始位置から前記読取終了位置に向けて前記読取部を移動させながら、前記読取部に前記ライン画像を読み取らせる読取処理と、
前記エッジ画像生成部により生成された前記エッジ画像データから、前記副走査方向に複数の画素および前記主走査方向に複数の画素からなるエッジ判断対象範囲のエッジ画素値を取得し、取得した前記エッジ判断対象範囲の前記エッジ画素値について、前記副走査方向に沿った前記複数の画素に係る前記エッジ画素値のいずれかが第１閾値以上であるか否かの判断を、前記主走査方向に沿った前記複数の画素毎に行うエッジ判断処理と、
前記エッジ判断処理により、前記主走査方向に沿った前記複数の画素全てにおいて、前記副走査方向に沿った前記複数の画素に係る前記エッジ画素値のいずれかが第１閾値以上であると判断した場合、前記画像データのうち前記エッジ判断対象範囲に対応する位置よりも前記副走査方向において前記読取終了位置に近い画像データから、前記副走査方向に複数の画素および前記主走査方向に複数の画素からなる濃度判断対象範囲の画素値を取得し、取得した前記濃度判断対象範囲の前記画素値について、前記画素値の取り得る最小値及び最大値を除いて第２閾値以下である画素値となる前記濃度判断対象範囲の全画素数に対応する割合が第３閾値以上であるか否かの判断を行う濃度判断処理と、
前記濃度判断処理により、前記割合が前記第３閾値以上であると判断した場合、前記駆動部に前記副走査方向に移動している前記読取部を停止させる移動停止処理と、
を実行する画像読取プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像読取装置、及び画像読取プログラムに関する。
【背景技術】
【０００２】
従来、特許文献１に記載の通り、コンタクトガラスの下方に設けられた複数の光学センサの検出結果に基づいて、コンタクトガラス上に載置された原稿の用紙長さを検出し、画像読取部への入射光に基づいて原稿の用紙幅を検出し、検出された用紙長さ及び用紙幅の原稿サイズの画像データを、画像読取部に読み取らせる画像読取装置が知られている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１４−３００７８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
特許文献１に記載された画像読取装置において、見開き原稿の各頁の画像をそれぞれ読み取り、各頁の画像データを管理する使い方が考えられる。
【０００５】
特許文献１に記載された画像読取装置において、コンタクトガラス上に見開き原稿を載置する場合、見開き原稿の中綴じ部が撓み、コンタクトガラス上に接する見開き原稿の左頁の左端から右頁の右端までの用紙長さ（左端から右端までの用紙長さ）は本来の用紙長さより短くなる。
【０００６】
上記画像読取装置において、ユーザが、見開き原稿を、見開き原稿の中綴じ部が主走査方向と平行となる向きに載置した場合、上記画像読取装置は、本来の用紙長さより長い定形サイズの用紙長さとして検出する。上記画像読取装置は、見開き原稿の画像を読み取るために、画像読取部を、原稿の左端から定形サイズの用紙長さまで副走査方向に移動させながら画像を読み取ることになり、画像読取部を原稿の右端において原稿が存在しない領域まで余分に移動させてしまう問題が発生する。
【０００７】
本発明は、上述した問題点を解決するためになされたものであり、画像読取部を見開き原稿の右端から原稿が存在しない領域まで余分に移動させることを防止可能な画像読取装置、及び画像読取プログラムを提供することができる。
【課題を解決するための手段】
【０００８】
上記目的を達成するために、請求項１に記載の発明態様では、画像読取装置は、原稿を支持する原稿台と、主走査方向に原稿のライン画像を読み取る読取部と、前記主走査方向と直交する副走査方向に、読取開始位置から読取終了位置に向けて前記読取部を移動させる駆動部と、前記読取部によって読み取られた前記ライン画像に係る画像データにエッジ強調処理を行い、エッジ画像データを生成するエッジ画像生成部と、制御部と、を備え、前記制御部は、前記駆動部に前記副走査方向の前記読取開始位置から前記読取終了位置に向けて前記読取部を移動させながら、前記読取部に前記ライン画像を読み取らせる読取処理と、前記エッジ画像生成部により生成された前記エッジ画像データから、前記副走査方向に複数の画素および前記主走査方向に複数の画素からなるエッジ判断対象範囲のエッジ画素値を取得し、取得した前記エッジ判断対象範囲の前記エッジ画素値について、前記副走査方向に沿った前記複数の画素に係る前記エッジ画素値のいずれかが第１閾値以上であるか否かの判断を、前記主走査方向に沿った前記複数の画素毎に行うエッジ判断処理と、前記エッジ判断処理により、前記主走査方向に沿った前記複数の画素全てにおいて、前記副走査方向に沿った前記複数の画素に係る前記エッジ画素値のいずれかが第１閾値以上であると判断した場合、前記画像データのうち前記エッジ判断対象範囲に対応する位置よりも前記副走査方向において前記読取終了位置に近い画像データから、前記副走査方向に複数の画素および前記主走査方向に複数の画素からなる濃度判断対象範囲の画素値を取得し、取得した前記濃度判断対象範囲の前記画素値について、前記画素値の取り得る最小値及び最大値を除いて第２閾値以下である画素値となる前記濃度判断対象範囲の全画素数に対応する割合が第３閾値以上であるか否かの判断を行う濃度判断処理と、前記濃度判断処理により、前記割合が前記第３閾値以上であると判断した場合、前記駆動部に前記副走査方向に移動している前記読取部を停止させる移動停止処理と、を実行する。
【０００９】
本発明態様によれば、原稿トレイに支持された原稿を自動的に搬送して読み取る画像読取装置において、制御部が移動停止処理を実行することにより、画像読取部を見開き原稿の右端から見開き原稿が存在しない領域まで余分に移動させることを防止可能である。
【００１０】
請求項２に記載の具体的態様では、制御部は、前記エッジ判断処理により、前記主走査方向に沿った前記複数の画素のうち少なくとも１つ以上の画素において、前記副走査方向に沿った前記複数の画素全てにそれぞれ係る全ての前記エッジ画素値が第１閾値未満であると判断した場合、前記エッジ判断対象範囲から前記副走査方向の前記読取終了位置に向かって所定数の画素まで離れたエッジ判断対象範囲を新たなエッジ判断対象範囲として前記エッジ判断処理を再度実行するエッジ判断制御処理と、前記濃度判断処理により、前記割合が前記第３閾値未満であると判断した場合、前記エッジ判断対象範囲に対応する位置から前記副走査方向の前記読取終了位置に向かって所定数の画素まで離れた位置を新たなエッジ判断対象範囲に対応する位置として前記濃度判断処理を再度実行する濃度判断制御処理と、を実行する。
【００１１】
制御部が、エッジ判断制御処理および濃度判断制御処理を実行することにより、例えば、先回のエッジ判断処理の結果、主走査方向に沿った複数の画素のうち少なくとも１つ以上の画素において、副走査方向に沿った複数の画素全てにそれぞれ係る全てのエッジ画素値が第１閾値未満であると判断した場合、または先回の濃度判断処理の結果、濃度判断対象範囲の画素値について、画素値の取り得る最小値及び最大値を除いて第２閾値以下である画素値となる濃度判断対象範囲の全画素数に対応する割合が第３閾値未満である場合であっても、移動停止処理の実行を可能にする。
【００１２】
請求項３に記載の具体的態様では、制御部は、前記読取処理の開始後、前記エッジ画像データにおける前記原稿の先端エッジまたは側端エッジを検出することにより前記原稿の主走査原稿幅および前記原稿の主走査原稿傾きを決定する原稿決定処理を実行し、前記エッジ判断対象範囲は、前記制御部により前記主走査原稿幅に基づいて決められる前記主走査方向に複数の画素および前記主走査原稿幅と前記主走査原稿傾きとに基づいて決められる前記副走査方向に複数の画素からなる範囲であり、前記新たなエッジ判断対象範囲は、前記エッジ判断対象範囲から前記副走査方向の前記読取終了位置に向かって１つの画素まで離れたエッジ判断対象範囲である。
【００１３】
制御部が原稿決定処理を実行し、エッジ判断対象範囲を主走査原稿幅に基づいて決められる主走査方向に複数の画素および主走査原稿幅と、主走査原稿傾きと、に基づいて決められる副走査方向に複数の画素からなる範囲とし、新たなエッジ判断対象範囲をエッジ判断対象範囲から副走査方向の読取終了位置に向かって１つの画素まで離れたエッジ判断対象範囲とすることにより、原稿が主走査方向に対して傾いた場合であっても、主走査方向に沿った複数の画素全てにおいて、副走査方向に沿った複数の画素に係るエッジ画素値のいずれかが第１閾値以上となるので、エッジ取得判断処理における判断精度を向上することができる。
【００１４】
請求項４に記載の具体的態様では、画像読取装置において、前記濃度判断対象範囲は、前記副走査方向の前記読取終了位置に向かう方向の前記原稿の側端部の前記原稿台に対する傾きおよび前記読取部の焦点深度に基づいて予め決められた前記副走査方向に複数の画素および前記主走査方向に複数の画素からなる範囲である。
【００１５】
濃度判断対象範囲が、原稿の側端部の原稿台に対する傾きおよび読取部の焦点深度に基づいて予め決められた副走査方向に複数の画素および主走査方向に複数の画素からなる範囲とすることにより、濃度判断対象範囲において、画素値の取り得る最小値及び最大値を除いて第２閾値以下である画素値となる画素数を増やし、濃度判断制御処理を実行することなく、濃度判断対象範囲の全画素数に対応する割合を第３閾値以上となる可能性を高め、移動停止処理を早期に実行する可能性を高めることができる。
【００１６】
請求項５に記載の具体的態様では、画像読取装置において、前記エッジ判断対象範囲は、前記エッジ解析画像データにおいて、前記主走査方向の１つの画素データである特定画素データを基準として、当該特定画素データから前記移動方向に前記エッジ副走査幅の範囲まで含まれる画素データで構成されたエッジ判断対象ブロックを１つの単位として、前記特定画素データから前記主走査原稿幅の範囲の画素データの数だけ前記主走査方向に沿って構成された複数の前記エッジ判断対象ブロックからなる範囲であり、前記エッジ判断処理は、前記エッジ判断対象ブロック毎に、前記エッジ画素データをそれぞれ取得し、前記取得されたエッジ画素データが、前記エッジ判断対象ブロック毎に前記第１閾値以上存在するか否かを全てのエッジ判断対象ブロックに対して判断し、前記エッジ判断制御処理は、前記エッジ判断処理の結果、前記全てのエッジ判断対象ブロックのうち、１つのエッジ判断対象ブロックにおいて、前記取得されたエッジ画素データが、前記第１閾値以上存在しないと判断した場合、前記特定画素データを前記移動方向に所定数の画素データだけ離れた画素データを新たな特定画素データとして前記エッジ判断処理を再度実行する。
【００１７】
制御部が、全てのエッジ判断対象ブロックで、各エッジ判断対象ブロックにエッジ画素データが第１閾値以上存在しないと判断した後、新たな特定画素データを基準としてエッジ判断処理を実行する場合より、早期に読取制御処理の実行後、エッジ判断処理を実行することができる。
【００１８】
請求項６に記載の具体的態様では、画像読取装置において、前記読取部は、前記主走査方向のライン毎に原稿の画像を読み取り、前記エッジ画像生成部は、前記主走査方向のライン毎に、前記解析画像データに対してエッジ強調処理を行い、前記主走査方向のライン毎に、画素単位で各画素の画素値が所定の閾値以上となる画素をエッジ画素としてエッジ画像データを生成し、前記主走査方向のライン数をカウントするラインカウンタを備え、前記制御部は、前記原稿決定処理によって決定された主走査原稿幅に基づいて、前記主走査方向の特定ラインのライン数を決定する特定ライン決定処理と、前記ラインカウンタによってカウントされた前記主走査方向のライン数が前記特定ラインのライン数と等しいか否かを判断するライン数判断処理と、を実行し、前記ライン数判断処理の結果、前記カウントされた主走査方向のライン数が前記特定ラインのライン数と等しいと判断した場合、前記特定ラインにおける特定画素を基準として前記エッジ取得判断処理を実行する。
【００１９】
制御部が、ライン数判断処理を実行することにより、原稿に記載された情報によってエッジ取得判断処理で生じる誤判断を防止することができる。
【００２０】
請求項７に記載の具体的態様では、画像読取装置は、画像データを所定の出力範囲で出力する画像出力部を備え、前記制御部は、前記読取終了処理の実行後、前記ラインカウンタによってカウントされた読取終了ラインのライン数を記憶する読取終了ライン記憶処理と、前記エッジ画像データにおいて前記原稿の後端エッジを検出する後端エッジ検出処理と、前記検出された原稿の後端エッジおよび前記読取終了ラインのライン数に基づいて、前記後端エッジのライン数を決定する後端ライン決定処理と、前記後端エッジに基づいて、前記読取部によって読み取られた画像データを抽出する画像抽出処理と、前記主走査原稿幅に基づいて、前記出力範囲を決定する出力範囲決定処理と、前記特定ラインおよび前記後端エッジのライン数に基づいて、前記抽出された読取画像データを、前記決定された出力範囲内に配置する画像出力処理と、を実行する。
【００２１】
制御部が、画像出力処理を実行することにより、読取画像を出力範囲における主走査方向の中心に配置することができる。
【００２２】
請求項８に記載の発明態様では、画像読取プログラムは、原稿を支持する原稿台と、主走査方向に原稿のライン画像を読み取る読取部と、前記主走査方向と直交する副走査方向に、読取開始位置から読取終了位置に向けて前記読取部を移動させる駆動部と、前記読取部によって読み取られた前記ライン画像に係る画像データにエッジ強調処理を行い、エッジ画像データを生成するエッジ画像生成部と、を備える画像読取装置の制御部が、実行する画像読取プログラムであって、前記駆動部に前記副走査方向の前記読取開始位置から前記読取終了位置に向けて前記読取部を移動させながら、前記読取部に前記ライン画像を読み取らせる読取処理と、前記エッジ画像生成部により生成された前記エッジ画像データから、前記副走査方向に複数の画素および前記主走査方向に複数の画素からなるエッジ判断対象範囲のエッジ画素値を取得し、取得した前記エッジ判断対象範囲の前記エッジ画素値について、前記副走査方向に沿った前記複数の画素に係る前記エッジ画素値のいずれかが第１閾値以上であるか否かの判断を、前記主走査方向に沿った前記複数の画素毎に行うエッジ判断処理と、前記エッジ判断処理により、前記主走査方向に沿った前記複数の画素全てにおいて、前記副走査方向に沿った前記複数の画素に係る前記エッジ画素値のいずれかが第１閾値以上であると判断した場合、前記画像データのうち前記エッジ判断対象範囲に対応する位置よりも前記副走査方向において前記読取終了位置に近い画像データから、前記副走査方向に複数の画素および前記主走査方向に複数の画素からなる濃度判断対象範囲の画素値を取得し、取得した前記濃度判断対象範囲の前記画素値について、前記画素値の取り得る最小値及び最大値を除いて第２閾値以下である画素値となる前記濃度判断対象範囲の全画素数に対応する割合が第３閾値以上であるか否かの判断を行う濃度判断処理と、前記濃度判断処理により、前記割合が前記第３閾値以上であると判断した場合、前記駆動部に前記副走査方向に移動している前記読取部を停止させる移動停止処理と、
を実行する画像読取プログラム。
【００２３】
本発明態様によれば、原稿トレイに支持された原稿を自動的に搬送して読み取る画像読取装置の制御部が実行する画像読取プログラムにおいて、送信制御処理を実行することにより、特定原稿以外の原稿の読取画像がユーザの意図しない画像送信先へ送信されることを防止可能である。
【発明の効果】
【００２４】
本発明によれば、画像読取部を見開き原稿の右端から見開き原稿が存在しない領域まで余分に移動させることを防止可能な画像読取装置、及び画像読取プログラムを提供することができる。
【図面の簡単な説明】
【００２５】
【図１】本実施形態の複合機１の概略断面図である。
【図２】図２（Ａ）は、本実施形態の複合機１の上面図である。図２（Ｂ）は、本実施形態の複合機１の原稿載置面２ａに載置された見開き原稿ＢＫの左端部ＢＬＡを前後方向から見た俯瞰図である。
【図３】図３（Ａ）は、本実施形態の複合機１の電気的構成を概略的に示すブロック図である。図３（Ｂ）は、本実施形態の複合機１が備える画像処理部９４の電気的構成を概略的に示すブロック図である。
【図４】本実施形態の複合機１による判断開始ライン決定処理で用いられるテーブルを示す図である。
【図５】本実施形態の複合機１によるメイン処理を示すフローチャートである。
【図６】本実施形態の複合機１による原稿決定処理を示すフローチャートである。
【図７】本実施形態の複合機１による読取終了判断処理を示すフローチャートである。
【図８】本実施形態の複合機１による読取終了判断処理のサブルーチン処理を示すフローチャートである。
【図９】本実施形態の複合機１による画像出力処理を示すフローチャートである。
【図１０】図１０（Ａ）は、本実施形態の原稿決定処理が実行されるエッジ画像データを概略的に説明する図である。図１０（Ｂ）は、本実施形態の複合機１の原稿載置面２ａに載置された見開き原稿ＢＫの右端部ＢＲＡを前後方向から見た俯瞰図である。図１０（Ｃ）は、本実施形態の複合機１によって取得されたエッジ画素値及び濃度画素値に対する副走査方向のライン数の関係を示す説明図である。
【図１１】図１１は、本実施形態の複合機１によって実行される読取終了判断処理を概略的に説明する図である。
【図１２】図１２は、本実施形態の複合機１によって実行される画像出力処理を概略的に説明する図である。
【発明を実施するための形態】
【００２６】
以下、本発明を具体化した実施例について図面を参照しつつ説明する。
【００２７】
＜実施形態＞
以下、本実施形態の複合機１は、本発明の複合機の具体的態様の一例である。まず、図１及び図２を参照しつつ、複合機１の構成について説明する。図１及び図２において、前後、左右及び上下の各方向を表示する。図２に示す各方向は、全て図１に示す各方向に対応させて表示する。また、図９に示す各方向についても、全て図１に示す各方向に対応させて表示する。
【００２８】
［複合機の外観構成］
複合機１は、図１に示すように、プラテンガラス２、カバー部３、読取部４、及び駆動部５などを備えている。プラテンガラス２は、複合機１の直方体形状の筐体１１の上部に形成された開口１１ａを、筐体１１の内側から閉塞している。プラテンガラス２の上面において、開口１１ａから露出している部分は、読取対象の見開き原稿ＢＫが載置される原稿載置面２ａを構成する。カバー部３は、その一端部が筐体１１の上面に回動可能に支持されており、原稿載置面２ａを覆う閉位置（図１の破線で示す位置）と原稿載置面２ａを露出させる開位置（図１の実線で示す位置）とを取り得る。なお、図２（Ａ）は、カバー部３が開位置にある状態で複合機１を上方から見たときの読取部４の位置を示すものであり、原稿載置面２ａの上方に位置するカバー部３と駆動部５の図示は省略している。
【００２９】
見開き原稿ＢＫは、図２（Ａ）に示すように、見開き中央の中心線ＣＬ（一点鎖線）を基準として、左方に左頁ＢＫＬ、右方に右頁ＢＫＲを有する。左頁ＢＫＬは、左方の頁端部に左端部ＢＬＡ（左頁ＢＫＬの二点鎖線で囲まれた範囲）を有し、右頁ＢＫＲは、右方の頁端部に右端部ＢＲＡ（右頁ＢＫＲの二点鎖線で囲まれた範囲）を有する。具体的には、左端部ＢＬＡは、図２（Ｂ）に示すように、原稿載置面２ａ上に接する左頁ＢＫＬの１頁目から上方に積み上がった最終頁目までの左方の頁端部（左頁ＢＫＬの二点鎖線で囲まれた範囲）である。右端部ＢＲＡは、左端部ＢＬＡと同様に、原稿載置面２ａ上に接する右頁ＢＫＲの１頁目から上方に積み上がった最終頁までの右方の頁端部（図２（Ｂ）において図示省略）である。
【００３０】
図１及び図２（Ａ）に示すように、原稿載置面２ａ上の左後方に筐体１１の開口１１ａによって構成された位置合わせ壁部１１ｂを設ける。位置合わせ壁部１１ｂの左後方の端点は、図２（Ａ）に示す見開き原稿ＢＫの位置合わせ点Ｐである。ユーザは、原稿載置面２ａ上に見開き原稿ＢＫを載置する際に、原稿載置面２ａの上面に接する見開き原稿ＢＫの見開き頁の左後方端部を位置合わせ壁部１１ｂに突き当てることで、原稿載置面２ａ上の見開き原稿ＢＫの位置合わせをすることができる。本実施形態では、図２（Ｂ）に示すように、ユーザが、左頁ＢＫＬの１頁目の左後方端部を位置あわせ点Ｐに合わせることで、見開き原稿ＢＫが位置合わせされて載置されているものとする。
【００３１】
読取部４及び駆動部５は、図１に示すように、筐体１１の内部に配置されている。読取部４は、ＣＩＳ（Ｃｏｎｔａｃｔ  Ｉｍａｇｅ  Ｓｅｎｓｏｒ）４４、及びキャリッジ４７で構成される。ＣＩＳ４４は、イメージセンサ４１、光源４３、及びロッドレンズアレイ４５で構成され、キャリッジ４７に搭載されている。なお、図２（Ａ）に示す読取部４においては、イメージセンサ４１のみを図示している。イメージセンサ４１は、図示しない複数の受光素子が図２（Ａ）に示す主走査方向（図２（Ａ）の前後方向）に配列されたリニアイメージセンサである。光源４３は、発光ダイオードなどで構成されており、プラテンガラス２に向けて光を出射する。ロッドレンズアレイ４５は、光源４３から出射され被照射物により反射された光線をイメージセンサ４１の各受光素子（図示せず）に結像させる。これにより、被照射物の画像が主走査方向に１ライン分読み取られる。
【００３２】
駆動部５は、図１に示すように、読取部４を主走査方向と直交する副走査方向（図１の左右方向）に移動させるものである。駆動部５は、正逆回転可能なモータ５９によって駆動される駆動プーリ５１と、従動プーリ５３と、駆動プーリ５１及び従動プーリ５３に架け渡されたエンドレスのベルト５５などで構成されている。駆動プーリ５１は、筐体１１の内部における副走査方向の一端側に配置され、一方で、従動プーリ５３は、筐体１１の内部における副走査方向の他端側に配置されている。ベルト５５には、キャリッジ４７が取り付けられており、駆動プーリ５１（モータ５９）の回転によりベルト５５が移動することでキャリッジ４７に搭載されたＣＩＳ４４が副走査方向に往復移動できるように構成されている。
【００３３】
プラテンガラス２の左方には、図１に示す調整基準板１３が配置されている。この調整基準板１３は、副走査方向に並べられる白テープ１３ａ及び黒テープ１３ｂから構成されている。読取部４によって、白テープ１３ａ及び黒テープ１３ｂの画像は読み取られ、その画像データに対応する白画素から黒画素へ変化する位置、または黒画素から白画素へ変化する位置が、図１及び図２（Ａ）に示す読取部４の待機位置ＨＰである。待機位置ＨＰは、読取部４の副走査方向移動における基準位置となる。ＣＰＵ９０（図３参照）は、複合機１に電源が投入された後、駆動部５によって読取部４を待機位置ＨＰに待機させる。さらに、ＣＰＵ９０は、後述する読取処理を実行する前に、読取部４に白テープ１３ａの画像を読み取らせ、シェーディング補正で使用する白基準データの取得等の補正処理（以下、読取前補正処理と称す）を実行する。
【００３４】
ＣＰＵ９０は、後述する読取処理において、図１及び図２（Ａ）に示す読取開始位置ＰＳの位置で読取部４の光源４３を点灯開始させる。ＣＰＵ９０は、読取部４を、読取開始位置ＰＳから読取終了位置ＰＥへ副走査方向に移動させながら、主走査方向に１ラインずつ画像を読み取る。以下に、読取開始位置ＰＳ、読取終了位置ＰＥについて説明する。
【００３５】
読取開始位置ＰＳは、図１及び図２（Ａ）に示すように、読取部４が原稿載置面２ａの左端に対向する位置である。読取終了位置ＰＥは、図１及び図２（Ａ）に示すように、読取部４が原稿載置面２ａの右端に対向する位置である。なお、読取終了位置ＰＥは、操作部７からユーザによって入力された見開き原稿ＢＫの定形サイズ（Ａ５判等の定形サイズ）に基づいて、ＣＰＵ９０が決定してもよい。
【００３６】
複合機１の筐体１１の前面には、液晶や有機ＥＬ等の表示部６、及びスタートキー、ストップキー、テンキー等の各種のボタンによって構成される操作部７が設けられている（図３（Ａ）参照）。この表示部６及び操作部７により、複合機１の動作状況の表示やユーザによる操作の入力が可能となっている。なお、表示部６及び操作部７は、表示部６による表示機能、及び操作部７による入力機能を兼ね備えたタッチパネルであってもよい。後述する図３（Ａ）に示す画像形成部１０については、図示を省略する。
【００３７】
［複合機の電気的構成］
本実施形態の複合機１の電気的構成について説明する。複合機１は、図３（Ａ）に示すように、ＣＰＵ（Ｃｅｎｔｒａｌ Ｐｒｏｃｅｓｓｉｎｇ Ｕｎｉｔ）９０、ＲＯＭ（Ｒｅａｄ Ｏｎｌｙ Ｍｅｍｏｒｙ）９２、ＲＡＭ（Ｒａｎｄｏｍ Ａｃｃｅｓｓ Ｍｅｍｏｒｙ）９３、画像処理部９４、読取部４、及び駆動部５を構成の一部として備える。これらの構成要素は、バス９を介して、表示部６、操作部７、及び画像形成部１０に接続される。
【００３８】
ＣＰＵ９０は、ＲＯＭ９２に記憶された制御プログラムに従って、複合機１の各部の制御を行う。ＲＯＭ９２には、後述する読取処理等の複合機１の各種動作を実行するためのプログラムを記憶する。
【００３９】
ＲＯＭ９２は、後述する読取処理における読取解像度、及びモノクロ読取（Ｇｒｅｅｎ１色）またはカラー読取（ＲＧＢ３色）等の読取設定に関する情報を記憶する。読取解像度は、６００ｄｐｉ、及び１２００ｄｐｉのうちいずれかの読取解像度である。また、ＲＯＭ９２は、待機位置ＨＰを基準として読取部４が読取開始位置ＰＳ及び読取終了位置ＰＥまで移動するために必要な移動量を表すデータを記憶する。なお、読取設定は、操作部７からユーザによって入力された設定に基づいて、ＣＰＵ９０が決定してもよい。読取部４を構成するＣＩＳ４４の主走査方向における解像度は、ＣＰＵ９０からの指示によって、６００ｄｐｉ、及び１２００ｄｐｉのうち、いずれかの解像度に切替可能である。
【００４０】
また、ＲＯＭ９２は、図４に示すように、見開き原稿の定形サイズを示すテーブルを記憶する。本実施形態では、見開き原稿の定形サイズを示すテーブルは、Ａ６判、Ａ５判、及びＢ５判毎に、図２（Ａ）に示す１頁分の長辺幅ＬＷ及び１頁分の短辺幅ＳＷを示すデータで構成されたテーブルとする。上記テーブルを構成するデータは、具体的には、Ａ６判に対して、１頁分の長辺幅ＬＷとして１４８ｍｍ、１頁分の短辺幅ＳＷとして１０５ｍｍにそれぞれ対応する画素数とする。Ａ５判に対して、１頁分の長辺幅ＬＷとして２１０ｍｍ、１頁分の短辺幅ＳＷとして１４８ｍｍにそれぞれ対応する画素数とする。Ｂ５判に対して、１頁分の長辺幅ＬＷとして２５７ｍｍ、１頁分の短辺幅ＳＷとして１８２ｍｍにそれぞれ対応する画素数とする。本実施形態では、図４に示すように、Ａ６判、Ａ５判、及びＢ５判毎に、１頁分の長辺幅ＬＷ及び１頁分の短辺幅ＳＷをそれぞれ３００ｄｐｉの解像度における画素数とするテーブルとしてＲＯＭ９２に記憶する。
【００４１】
画像処理部９４は、画像処理専用のハード回路であり、図３（Ｂ）に示すように、画像加工処理部１００、解像度変換部１０１、色変換部１０２、エッジ画像生成部１０３、及びカウンタ１０４を含んで構成されている。
【００４２】
画像加工処理部１００は、読取部４によって読み取られたＲＧＢ各色それぞれのラインデータに各種の画像加工処理を施し、ＲＡＭ９３に記憶する。画像加工処理は、例えば、画像データを９０度等の所定角度に回転する回転処理や、画像データから所定範囲の画像を抽出する画像抽出処理等である。
【００４３】
解像度変換部１０１は、読取部４によって読み取られたＲＧＢ各色それぞれのラインデータに対し、公知の間引き処理により、３００ｄｐｉの低解像度に変換する。解像度変換部１０１は、例えば、ＲＧＢ各色それぞれのラインデータにおける先頭画素から最終画素までの全画素について設定された複数の間引き画素を間引く処理により、６００ｄｐｉまたは１２００ｄｐｉのラインデータから３００ｄｐｉのラインデータへ変換する。解像度変換部１０１は、低解像度に変換したＲＧＢ各色それぞれのライン画像データを後述する濃度判断処理で判断するための濃度画像データとしてそれぞれＲＡＭ９３に記憶する。
【００４４】
色変換部１０２は、解像度変換部１０１によって低解像度に変換されたＲＧＢ各色それぞれのラインデータに対し、ＹＣｂＣｒ変換やＹＩＱ変換等の色変換処理を実行し、色ごとの輝度値や色差値などを示す色変換後データを生成する。
【００４５】
エッジ画像生成部１０３は、色変換部１０２によって生成された色変換後データに対し、各種のエッジ強調処理を実行し、エッジ画像データを生成可能である。本実施形態では、エッジ画像生成部１０３は、公知の差分フィルタであるラプラシアンフィルタを用いるエッジ強調処理を実行するものとする。具体的には、エッジ画像生成部１０３は、色変換後データに対して、ラプラシアンフィルタ係数を適用して各画素のエッジ強度値を算出する。エッジ画像生成部１０３は、各画素の算出したエッジ強度値が予め定められたエッジ強度閾値以上であれば、「１」とし、エッジ強度閾値未満であれば、「０」としてエッジ強度値からエッジ画素値に置き換えてエッジ画像データを生成し、ＲＡＭ９３に記憶する。エッジ強度閾値は、例えば色変換後データに対応する画像上の線画像部分（例えば文字）の画素のエッジ強度値を「１」のエッジ画素値としてデータを置き換えできる程度の値である。
【００４６】
ラインカウンタ１０４は、エッジ画像生成部１０３からＲＡＭ９３へ出力されるエッジ画像データのライン数をカウントする。ラインカウンタ１０４のカウント開始、カウント終了、及びカウントリセットは、ＣＰＵ９０からの指示により実行される。
【００４７】
駆動部５は、駆動制御部５４、ドライバ５２、及びモータ５９を含んで構成されている。駆動制御部５４は、ＰＷＭによってドライバ５２へパルス制御信号を送信してモータ５９を回転させるためのハードウェアである。また、駆動制御部５４は、ドライバ５２へモータ５９の正回転または逆回転を制御する信号を送信し、モータ５９の回転方向を変えられるように構成されている。ドライバ５２は、駆動制御部５４から入力されるパルス制御信号及びモータ回転方向の制御信号に従って、モータ５９の各相の巻線に流す電流のタイミング及び各相の巻線に流す電流の順序を制御可能となるように構成されたハードウェアである。モータ５９は、本実施形態では、ステッピングモータである。
【００４８】
パルスカウンタ９５は、駆動制御部５４が１パルスのパルス制御信号を送信する度に送信パルス数を１カウントする。ＣＰＵ９０が、駆動制御部５４にモータ５９の回転開始を指示すると、パルスカウンタ９５を初期化し、駆動制御部５４の送信パルス数のカウントを開始する。ＣＰＵ９０が、駆動制御部５４にモータ５９の回転停止を指示すると、パルスカウンタ９５は、駆動制御部５４の送信パルス数のカウントを終了する。
【００４９】
モータ５９は、駆動部５の駆動制御部５４が１パルス制御信号をドライバ５２へ送信する毎に、所定の回転角度分だけ回転する。モータ５９の回転量は、駆動制御部５４が送信するパルス数によって決まる。駆動制御部５４の送信パルス数と、読取部４の副走査方向への移動量との関係は、予め決められており、駆動制御部５４の送信パルス数から読取部４の副走査方向の移動量を算出するためのデータがＲＯＭ９２に記憶されている。本実施形態では、送信パルス数１パルスあたり、６００ｄｐｉの１ライン分（２５．４ｍｍ／６００＝０．０４２ｍｍ）に相当する移動量である。ＲＯＭ９２には、パルスカウンタ９５によってカウントされる送信パルス数１パルスあたり、読取部４が６００ｄｐｉの１ライン移動することを表す送信パルス数当たりの移動量データが記憶されている。なお、モータ５９は、本実施形態では、ステッピングモータであるが、この構成に限定されない。モータ５９をエンコーダ付きのＤＣモータにして、パルスカウンタ９５がエンコーダによるパルス信号の信号数をカウントするような構成にしてもよい。
【００５０】
ＣＰＵ９０は、モータ５９の回転開始の指示において、駆動制御部５４に、ドライバ５２へ送信させる送信パルス周波数及び送信パルス数を設定する。駆動制御部５４は、送信パルス周波数及び送信パルス数の設定に従って、パルス制御信号を送信することで、モータ５９の回転速度及び回転数が制御される。ＣＰＵ９０は、駆動制御部５４に、モータ５９の正回転または逆回転の回転方向を設定する。駆動制御部５４は、回転方向の設定に従って、正回転または逆回転に対応する制御信号をドライバ５２へ送信することで、モータ５９の回転方向が制御される。ＣＰＵ９０は、モータ５９の回転停止の指示において、駆動制御部５４の上記送信パルス数等の設定をクリアする。
【００５１】
ＲＡＭ９３は、各種制御プログラムが読み出される作業領域、制御部９の制御処理によって算出された算出結果、及び読取部４によって読み取られた画像データを一時的に記憶する記憶領域として利用される。
【００５２】
画像形成部１０は、インクジェット方式又は電子写真方式等により記録紙に画像を形成する。
【００５３】
［本実施形態の複合機の動作］
本実施形態では、ユーザが、見開き原稿ＢＫの画像を記録紙にコピーしたい場合、図２（Ａ）に示すように、複合機１の原稿載置面２ａ上に、見開き原稿ＢＫを載置する。複合機１は、図１０（Ｂ）に示すように、見開き原稿ＢＫの定形サイズに基づいて決定したライン数ＮＳＷより副走査方向の読取開始位置ＰＳに近い側の読取終了ライン数ＬＥで、読取部４を停止させることができる。
【００５４】
複合機１は、メイン処理と、原稿決定処理と、読取終了判断処理と、画像出力処理とを主に実行する。図５に示すメイン処理中のＳ１〜Ｓ９の処理、図６に示す原稿決定処理中のＳ１００〜Ｓ１０７の処理、図７に示す読取終了判断処理のＳ２００〜Ｓ２１８の処理及び図８に示すサブルーチン処理中のＳ３００〜Ｓ３０６の処理、及び図９に示す画像出力処理中のＳ４００〜Ｓ４１２の処理は、第１ＣＰＵ９０が実行する処理である。
【００５５】
［メイン処理］
本実施形態の複合機１におけるメイン処理について、図５のフローチャートを参照して説明する。複合機１の操作部７によってスタートキーが押下されると、ＣＰＵ９０により、図５に示すメイン処理が実行される。ＣＰＵ９０は、正回転開始を駆動部５に指示し、モータ５９を正回転させて、読取部４を待機位置ＨＰから読取開始位置ＰＳへ移動させる（Ｓ１）。
【００５６】
ＣＰＵ９０は、パルスカウンタ９５によって送信パルス数を取得することで、読取部４の副走査方向の移動量を算出し、読取部４が、図１及び図２に示す読取開始位置ＰＳに位置するか否かを判断する（Ｓ２）。読取部４が読取開始位置ＰＳに位置しないと判断した場合（Ｓ２：ＮＯ）、ＣＰＵ９０は、Ｓ２の判断処理を繰り返す。読取部４が読取開始位置ＰＳに位置すると判断した場合（Ｓ２：ＹＥＳ）、ＣＰＵ９０は、読取部４に画像の読み取りを開始させる（Ｓ３）。
【００５７】
ＣＰＵ９０は、後述する原稿決定処理によって、見開き原稿ＢＫの主走査方向の幅である原稿幅に対応する画素数（以降、原稿幅画素数Ｍと称す）及び主走査方向に対する原稿傾きθｋを決定する（Ｓ４）。ＣＰＵ９０は、後述する読取終了判断処理の実行を開始するライン数である判断開始ライン数ＬＳＷを、原稿幅画素数Ｍ、原稿傾きθｋ及び見開き原稿の定形サイズを示すテーブルに基いて決定する（Ｓ５）。具体的には、ＣＰＵ９０は、図１０（Ａ）に示すように、後述する原稿決定処理によって検出された原稿幅画素数Ｍに原稿傾きθｋによるｃｏｓθｋを乗算して、見開き原稿ＢＫの１頁分の長辺幅に対応する画素数ＬＷを算出し、ＲＯＭ９２に記憶された見開き原稿の定形サイズを示すテーブルに基づいて、１頁分の短辺幅に対応する画素数ＳＷを決定する。ＣＰＵ９０は、１頁分の短辺幅に対応する画素数ＳＷを２倍し、画素数ＳＷの２倍の画素数に対して見開き原稿ＢＫの左端部ＢＬＡの左端から読取開始位置ＰＳまでの画素数ΔＳＷを減算し、画素数ＮＳＷを算出する。ＣＰＵ９０は、図２（Ａ）に示すように、画素数ＮＳＷから見開き原稿ＢＫの右端部ＢＲＡの短辺幅に対応する画素数ＲＳＷを減算した画素数ＬＳＷを算出する。ＣＰＵ９０は、画素数ＬＳＷを、判断開始ライン数として決定し、ＲＡＭ９３に記憶する。ＣＰＵ９０は、後述するＳ３０５の処理において、算出した画素数ＮＳＷを利用するため、画素数ＮＳＷをＲＡＭ９３に記憶する。なお、ＣＰＵ９０は、画素数ΔＳＷを、実験で事前に確認した画素数でＲＯＭ９２に記憶する構成であってもよい。もしくは、ＣＰＵ９０は、公知技術で見開き中央の中心線ＣＬを、見開き原稿ＢＫの綴じ部の濃度によって検出し、画素数ＳＷに対して読取開始位置ＰＳから見開き中央の中心線ＣＬまでのライン数で減算し、画素数ΔＳＷを算出してＲＡＭ９３に記憶する構成であってもよい。
【００５８】
ＣＰＵ９０は、ラインカウンタ１０４によって読取部４が読取開始位置ＰＳから現在位置へ移動するまでにカウントされたライン数Ｌｇを取得し、取得したライン数Ｌｇが判断開始ライン数ＬＳＷ以上であるか否かを判断する（Ｓ６）。取得したライン数Ｌｇが判断開始ライン数ＬＳＷ以上ではないと判断した場合（Ｓ６：ＮＯ）、ＣＰＵ９０は、Ｓ６の判断処理を繰り返す。
【００５９】
取得したライン数Ｌｇが判断開始ライン数ＬＳＷ以上であると判断した場合（Ｓ６：ＹＥＳ）、ＣＰＵ９０は、後述する読取終了判断処理を実行する（Ｓ７）。ＣＰＵ９０は、逆回転開始を駆動部５に指示し、モータ５９を逆回転させて、読取部４を後述する読取終了ラインＬＥに対応する位置から待機位置ＨＰへ移動させる（Ｓ８）。ＣＰＵ９０は、後述する画像出力処理を実行する（Ｓ９）。
【００６０】
［原稿決定処理］
本実施形態の複合機１は、図６のフローチャートに示す原稿決定処理によって、図１０（Ａ）に示す見開き原稿ＢＫの左頁ＢＫＬに対応する左頁画像ＧＬの原稿幅画素数Ｍ及び原稿傾きθｋを決定する。
【００６１】
複合機１における原稿決定処理について、図６のフローチャートを参照して説明する。ＣＰＵ９０は、検索変数ｉを初期化して、ＲＡＭ９３に記憶する（Ｓ１００）。ＣＰＵ９０は、ＲＡＭ９３に記憶されたエッジ画像データにおいて、検索変数ｉに対応する検索開始点を始点として、見開き原稿ＢＫの左頁ＢＫＬの側端エッジ点を検索開始する（Ｓ１０１）。ＣＰＵ９０は、検索した側端エッジ点の位置情報をＲＡＭ９３に記憶する（Ｓ１０２）。ＣＰＵ９０は、検索変数ｉが検索終了変数Ｎ以上であるか否かを判断する（Ｓ１０３）。検索変数ｉが検索終了変数Ｎ以上ではないと判断した場合（Ｓ１０３：ＮＯ）、ＣＰＵ９０は、検索変数ｉに１を加算して検索変数ｉに代入し（Ｓ１０７）、Ｓ１０１以降の処理を繰り返す。
【００６２】
具体的には、図１０（Ａ）を参照して説明する。図１０（Ａ）において、原稿決定処理を視覚的に説明するために、ＲＡＭ９３に記憶されたエッジ画像データにおいて「１」のデータを実線で示したエッジ画像のうち、見開き原稿ＢＫの左頁ＢＫＬに対応する画像ＧＬのみを含む先端エッジ画像ＥＧ１を示す図である。説明簡略化のため、エッジ画像データにおける見開き原稿ＢＫに記載された原稿情報は図示を省略する。図１０（Ａ）において、先端エッジ画像ＥＧ１の外周を一点鎖線で示す。図１０（Ａ）において、複数の点線矢印は、各検索開始点ＳＲ（０）、ＳＲ（１）・・・ＳＲ（Ｎ）、及びＳＬ（０）、ＳＬ（１）、・・・ＳＬ（Ｎ）からの検索方向を示す。ＣＰＵ９０は、図１０（Ａ）に示すように、ＲＡＭ９３に記憶された先端エッジ画像ＥＧ１の側端点である検索変数ｉ＝０に対応する検索開始点ＳＬ（０）及びＳＲ（０）をそれぞれ左頁画像ＧＬの側端エッジ点の検索開始点とする（Ｓ１０１）。ＣＰＵ９０は、主走査方向に沿って、それぞれの検索開始点から離れる方向に検索点を移動させながら、左頁画像ＧＬの境界線となる側端エッジ点Ｄを検索する（Ｓ１０１）。ＣＰＵ９０は、検索した側端エッジ点Ｄの先端エッジ画像ＥＧ１における位置情報をＲＡＭ９３に記憶する（Ｓ１０２）。ＣＰＵ９０は、先端エッジ画像ＥＧ１における検索変数ｉ＝０に対応する読取開始位置ＰＳから副走査方向の読取終了位置ＰＥに近づく方向に所定距離の分だけ離れた検索終了変数Ｎに対応する位置までの左頁画像ＧＬの側端エッジ点をそれぞれ検索する。上記所定距離及び検索変数Ｎの数値は、実験で事前に原稿幅画素数Ｍ及び原稿傾きθｋを精度良く決定可能な数値として決定し、ＲＯＭ９２に記憶しておくものとする。ＣＰＵ９０は、検索変数ｉが検索終了変数Ｎ以上ではないと判断した場合（Ｓ１０３：ＮＯ）、Ｓ１０７の処理によって、図１０（Ａ）に示すように、検索開始点ＳＬ（０）及びＳＲ（０）から副走査方向の読取終了位置ＰＥに近づく方向に所定間隔離れた検索変数ｉ＝１に対応する検索開始点ＳＬ（１）及びＳＲ（１）を始点としてＳ１０１以降の処理を繰り返す。本実施形態では、上記所定距離を３０ｍｍとする。検索変数Ｎは、原稿決定処理の精度に関わる変数であり、実験によって決定され、決定された検索変数Ｎは、ＲＯＭ９２に記憶されるものとする。上記所定間隔は、上記所定距離に検索変数Ｎの数値を除算することで自動的に決まる間隔である。
【００６３】
検索変数ｉが検索終了変数Ｎ以上であると判断した場合（Ｓ１０３：ＹＥＳ）、ＣＰＵ９０は、検索した側端エッジ点に対して公知技術である最小二乗法による直線式をそれぞれ算出する（Ｓ１０４）。ＣＰＵ９０は、算出した直線式による直線のうち、平行となる２つの直線の間の主走査方向と平行な間隔を見開き原稿ＢＫの原稿幅画素数Ｍとして決定する（Ｓ１０５）。ＣＰＵ９０は、公知技術である余弦定理を利用して算出した左頁画像ＧＬの主走査方向に対する傾きθｋを、見開き原稿ＢＫの主走査方向に対する原稿傾きθｋとして決定する（Ｓ１０６）。
【００６４】
具体的には、ＣＰＵ９０は、図１０（Ａ）に示す検索変数ｉ＝０・・・Ｎに対応するそれぞれの側端エッジ点に対する最小二乗法により、直線ＡＢ、直線ＢＣ、直線ＣＤ、及び直線ＤＡの直線式をそれぞれ算出する（Ｓ１０４）。ＣＰＵ９０は、互いに平行となる２つの直線ＡＢ及び直線ＣＤの間の主走査方向と平行な間隔Ｍを算出し、算出した間隔Ｍを見開き原稿ＢＫの原稿幅画素数Ｍとして決定する（Ｓ１０５）。ＣＰＵ９０は、余弦定理を利用して、図１０（Ａ）に示す直線ＡＤ、直線ＡＥ、及び直線ＥＤのそれぞれの線分の間隔に基づいて、ｃｏｓθｋを算出し、θｋを見開き原稿ＢＫの主走査方向に対する原稿傾きθｋとして決定する（Ｓ１０６）。
【００６５】
［読取終了判断処理］
本実施形態の複合機１は、図７及び図８のフローチャートに示す読取終了判断処理によって、エッジ画像データ及び濃度画像データにおけるそれぞれの画素値と閾値を比較することで読取終了を判断し、読取部４による画像の読取を終了させ、モータ５９の回転を停止させる。
【００６６】
複合機１における読取終了判断処理について、図７及び図８のフローチャートを参照して説明する。ＣＰＵ９０は、図７に示すように、エッジ検出フラグをオフして、ＲＡＭ９３に記憶し、エッジ検出フラグを初期化する（Ｓ２００）。ＣＰＵ９０は、副走査変数ｎを初期化して、ＲＡＭ９３に記憶する（Ｓ２０１）。ＣＰＵ９０は、ラインカウンタ１０４によってカウントされたライン数を基準ライン数Ｌｋとして取得する（Ｓ２０２）。ＣＰＵ９０は、ラインカウンタ１０４によってカウントされたライン数Ｌｇを取得し、取得したライン数Ｌｇが基準ライン数Ｌｋに所定ライン数ＬＮを加算したライン数（Ｌｋ＋ＬＮ）以上であるか否かを判断する（Ｓ２０３）。取得したライン数Ｌｇがライン数（Ｌｋ＋ＬＮ）以上ではないと判断した場合（Ｓ２０３：ＮＯ）、ＣＰＵ９０は、Ｓ２０３の判断処理を繰り返す。具体的には、所定ライン数ＬＮは、後述するエッジ判断対象ブロックの副走査エッジ判断画素数Ｎ１及び濃度判断対象範囲の副走査方向の画素数である副走査濃度判断画素数Ｎ２以上となるライン数としてＲＯＭ９２に記憶されているものとする。
【００６７】
取得したライン数Ｌｇがライン数（Ｌｋ＋ＬＮ）以上であると判断した場合（Ｓ２０３：ＹＥＳ）、ＣＰＵ９０は、ＲＡＭ９３に記憶されたエッジ検出フラグがオフであるか否かを判断する（Ｓ２０４）。エッジ検出フラグがオフではないと判断した場合（Ｓ２０４：ＮＯ）、ＣＰＵ９０は、図８に示す後述する濃度判断処理におけるＳ３０１以降の処理を実行する。エッジ検出フラグがオフであると判断した場合（Ｓ２０４：ＹＥＳ）、ＣＰＵ９０は、主走査変数ｍを初期化して、ＲＡＭ９３に記憶する（Ｓ２０５）。ＣＰＵ９０は、図１１（Ａ）に示すように、ＲＡＭ９３に記憶されたエッジ画像データ１１０においてエッジ判断対象ブロックである画素Ｐ（ｍ，ｎ）から副走査方向の読取終了位置ＰＥに向かう方向に沿って副走査エッジ判断画素数Ｎ１の分だけ離れた画素Ｐ（ｍ，ｎ＋Ｎ１）までのエッジ画素値を取得する（Ｓ２０６）。ＣＰＵ９０は、取得した画素Ｐ（ｍ，ｎ）から画素Ｐ（ｍ，ｎ＋Ｎ１）までのエッジ画素値がそれぞれエッジ閾値Ｅｈ以上となるか否かを判断する（Ｓ２０７）。取得した画素Ｐ（ｍ，ｎ）から画素Ｐ（ｍ，ｎ＋Ｎ１）までのエッジ画素値がそれぞれエッジ閾値Ｅｈ以上ではないと判断した場合（Ｓ２０７：ＮＯ）、ＣＰＵ９０は、副走査変数ｎに副走査エッジ判断画素数Ｎ１を加えた変数（ｎ＋Ｎ１）が所定ライン数ＬＮ以上であるか否かを判断する（Ｓ２１７）。変数（ｎ＋Ｎ１）が所定ライン数ＬＮ以上ではないと判断した場合（Ｓ２１７：ＮＯ）、ＣＰＵ９０は、主走査変数ｍを初期化し、副走査変数ｎに所定の定数ｎｓを加算した変数（ｎ＋ｎｓ）を、副走査変数ｎに代入し（Ｓ２１８）、Ｓ２０６以降の処理を繰り返す。変数（ｎ＋Ｎ１）が所定ライン数ＬＮ以上であると判断した場合（Ｓ２１７：ＹＥＳ）、ＣＰＵ９０は、Ｓ２０２以降の処理を繰り返す。
【００６８】
取得した画素Ｐ（ｍ，ｎ）から画素Ｐ（ｍ，ｎ＋Ｎ１）までのエッジ画素値がそれぞれエッジ閾値Ｅｈ以上であると判断した場合（Ｓ２０７：ＹＥＳ）、ＣＰＵ９０は、主走査変数ｍが原稿幅画素数Ｍ以上であるか否かを判断する（Ｓ２０８）。主走査変数ｍが原稿幅画素数Ｍ以上ではないと判断した場合（Ｓ２０８：ＮＯ）、ＣＰＵ９０は、主走査変数ｍに１を加算して主走査変数ｍに代入し（Ｓ２１６）、Ｓ２０６以降の処理を繰り返す。主走査変数ｍが原稿幅画素数Ｍ以上であると判断した場合（Ｓ２０８：ＹＥＳ）、ＣＰＵ９０は、エッジ検出フラグをオンにする（Ｓ２０９）。ＣＰＵ９０は、ラインカウンタ１０４によってカウントしたライン数を後端エッジライン数ＥＥとしてＲＡＭ９３に記憶する（Ｓ２１０）。
【００６９】
具体的には、副走査エッジ判断画素数Ｎ１＝４、所定の定数ｎｓ＝１、エッジ閾値Ｅｈ＝１、原稿幅画素数Ｍ＝２４８０、及び所定ライン数ＬＮ＝３２である場合について、図１１（Ａ）及び図１１（Ｂ）を参照して説明する。ＣＰＵ９０は、図１１（Ａ）に示すエッジ画像データ１１０における画素Ｐ（０，０）〜画素Ｐ（０，４）のエッジ画素値をそれぞれ取得する（Ｓ２０６）。ＣＰＵ９０は、画素Ｐ（０，０）〜画素Ｐ（０，４）のエッジ画素値（＝０）は、それぞれエッジ閾値Ｅｈ（＝１）以上ではないと判断する（Ｓ２０７：ＮＯ）。ＣＰＵ９０は、変数（ｎ＋Ｎ１）（＝４）が所定ライン数ＬＮ（＝３２）以上ではないと判断し（Ｓ２１７：ＮＯ）、ＣＰＵ９０は、主走査変数ｍを初期化し、副走査変数ｎ（＝０）に１を加算してｎに代入する（Ｓ２１８）。ＣＰＵ９０は、図１１（Ｂ）に示すエッジ画像データ１１０における画素Ｐ（０，１）〜画素Ｐ（０，５）のエッジ画素値をそれぞれ取得する（Ｓ２０６）。ＣＰＵ９０は、画素Ｐ（０，５）のエッジ画素値（＝１）が、エッジ閾値Ｅｈ（＝１）以上であると判断する（Ｓ２０７：ＹＥＳ）。ＣＰＵ９０は、主走査変数ｍ（＝０）が、原稿幅画素数Ｍ（＝２４８０）以上ではないと判断し（Ｓ２０８：ＮＯ）、主走査変数ｍ（＝０）に１を加算して主走査変数ｍに代入し（Ｓ２１６）、図１１（Ｂ）に示すエッジ画像データ１１０における画素Ｐ（１，１）〜画素Ｐ（１，５）のエッジ画素値をそれぞれ取得する（Ｓ２０６）。ＣＰＵ９０は、画素Ｐ（１，５）のエッジ画素値が１であるため、画素Ｐ（０，５）と同様に、エッジ閾値Ｅｈ（＝１）以上であると判断し（Ｓ２０７：ＹＥＳ）、Ｓ２０８、Ｓ２１６、及びＳ２０６以降の処理を、主走査変数ｍが原稿幅画素数Ｍである２４８０と等しくなるまで繰り返す。なお、エッジ閾値Ｅｈは０より大きく、１以下である所定の数値である。エッジ閾値Ｅｈは、事前に実験で確認して決定し、ＲＯＭ９２に記憶するものとする。
【００７０】
ＣＰＵ９０は、Ｓ２０９の処理を実行後、ＲＡＭ９３に記憶されたＲ色の濃度画像データに対して、後述する濃度判断処理を実行し（Ｓ２１１）、同様に、ＲＡＭ９３に記憶されたＧ色の濃度画像データ及びＢ色の濃度画像データに対して、後述する濃度判断処理をそれぞれ実行する。（Ｓ２１２、Ｓ２１３）。ＣＰＵ９０は、読取部４に画像の読み取りを終了させ（Ｓ２１４）、駆動部５にモータ５９の回転を停止させる（Ｓ２１５）。
【００７１】
複合機１における読取終了判断処理のサブルーチン処理である濃度判断処理について、図８のフローチャートを参照して説明する。ＣＰＵ９０は、主走査変数ｍを初期化し、副走査変数ｎを副走査基準変数Ｎｋに代入する（Ｓ３００）。ＣＰＵ９０は、濃度判断対象範囲として、濃度画像データにおいて、画素Ｐ（ｍ，ｎ）から副走査方向の読取終了位置ＰＥに向かう方向に沿って副走査濃度判断画素数Ｎ２の分だけ離れ、かつ、原稿幅画素数Ｍの分だけ離れた画素Ｐ（Ｍ，ｎ＋Ｎ２）までの範囲の濃度画素値を取得する（Ｓ３０１）。ＣＰＵ９０は、濃度画像データにおいて、画素Ｐ（ｍ，ｎ）から画素Ｐ（Ｍ，ｎ＋Ｎ２）までの範囲の全体の画素数に対して、灰色濃度閾値Ｇｈ以下となる濃度画素値の割合が割合閾値Ｗｈ以上であるか否かを判断する（Ｓ３０２）。
【００７２】
全体の画素数に対して、灰色濃度閾値Ｇｈ以下となる濃度画素値の割合が割合閾値Ｗｈ以上ではないと判断した場合（Ｓ３０２：ＮＯ）、ＣＰＵ９０は、副走査変数ｎに副走査濃度判断画素数Ｎ２を加えた変数（ｎ＋Ｎ２）が所定ライン数ＬＮ以上であるか否かを判断する（Ｓ３０４）。変数（ｎ＋Ｎ２）が所定ライン数ＬＮ以上ではないと判断した場合（Ｓ３０４：ＮＯ）、ＣＰＵ９０は、副走査変数ｎに所定の定数ｎｓを加算した変数（ｎ＋ｎｓ）を、副走査変数ｎに代入し（Ｓ３０６）、Ｓ３０１以降の処理を繰り返す。変数（ｎ＋Ｎ２）が所定ライン数ＬＮ以上であると判断した場合（Ｓ３０４：ＹＥＳ）、ＣＰＵ９０は、ラインカウンタ１０４によってカウントされたライン数Ｌｇを取得し、取得したライン数Ｌｇが、ＲＡＭ９３に記憶された画素数ＮＳＷ以上であるか否かを判断する（Ｓ３０５）。取得したライン数Ｌｇが、ＲＡＭ９３に記憶された画素数ＮＳＷ以上ではないと判断した場合（Ｓ３０５：ＮＯ）、ＣＰＵ９０は、図７に示すＳ２０２以降の処理を繰り返す。取得したライン数Ｌｇが、ＲＡＭ９３に記憶された画素数ＮＳＷ以上であると判断した場合（Ｓ３０５：ＹＥＳ）、ＣＰＵ９０は、図７に示すＳ２１４以降の処理を実行する。全体の画素数に対して、灰色濃度閾値Ｇｈ以下となる濃度画素値の割合が割合閾値Ｗｈ以上であると判断した場合（Ｓ３０２：ＹＥＳ）、ＣＰＵ９０は、副走査変数ｎに副走査基準変数Ｎｋを代入し（Ｓ３０３）、濃度判断処理を終了する。
【００７３】
具体的には、副走査濃度判断画素数Ｎ２＝３、原稿幅画素数Ｍ＝２４８０、所定の定数ｎｓ＝１、灰色濃度閾値Ｇｈ＝１８０、割合閾値Ｗｈ＝３０％、及び所定ライン数ＬＮ＝３２である場合であって、かつ、ＣＰＵ９０が、副走査変数ｎ＝ｎ＋１でＳ２０７（ＹＥＳ）、Ｓ２０８（ＹＥＳ）、Ｓ２０９、及びＳ２１０の処理を実行した場合について、図１１（Ｃ）及び図１１（Ｄ）を参照して説明する。ＣＰＵ９０は、図１１（Ｃ）に示すＲ色の濃度画像データ１１１における画素Ｐ（０，ｎ＋１）と、画素Ｐ（０，ｎ＋１）から副走査方向の読取終了位置ＰＥに向かう方向に沿って副走査濃度判断画素数Ｎ２の分だけ離れた画素Ｐ（０，ｎ＋４）と、主走査方向に原稿幅画素数Ｍ（＝２４８０）の分だけ離れた画素Ｐ（２４８０，ｎ＋１）と、画素Ｐ（２４８０，ｎ＋４）とで囲まれた濃度判断対象範囲における濃度画素値をそれぞれ取得する（Ｓ３０１）。ＣＰＵ９０は、濃度判断対象範囲である画素Ｐ（０，ｎ＋１）〜画素Ｐ（２４８０，ｎ＋４）の濃度画素値は、最小値でも１９０であるため、灰色濃度閾値Ｇｈ（＝１８０）以下である濃度画素値の割合は０％であるため、割合閾値Ｗｈ（＝３０％）以上ではないと判断する（Ｓ３０２：ＮＯ）。ＣＰＵ９０は、変数（ｎ＋１＋Ｎ２）（＝４）が所定ライン数ＬＮ（＝３２）以上ではないと判断し（Ｓ３０４：ＮＯ）、ＣＰＵ９０は、副走査変数ｎ（＝ｎ＋１）に１を加算してｎに代入する（Ｓ３０６）。ＣＰＵ９０は、図１１（Ｄ）に示すＲ色の濃度画像データ１１１における濃度判断対象範囲である画素Ｐ（０，ｎ＋２）〜画素Ｐ（２４８０，ｎ＋５）の濃度画素値をそれぞれ取得する（Ｓ３０１）。ＣＰＵ９０は、濃度判断対象範囲である画素Ｐ（０，ｎ＋２）〜画素Ｐ（２４８０，ｎ＋５）の濃度画素値は最小値が１８０であり、灰色濃度閾値Ｇｈ（＝１８０）以下である濃度画素値の割合は３３％であるため、割合閾値Ｗｈ（＝３０％）以上であると判断する（Ｓ３０２：ＹＥＳ）。ＣＰＵ９０は、Ｓ３０３の処理を実行後、上記と同様に、Ｇ色及びＢ色の濃度画像データについても濃度判断処理を実行し（Ｓ２１２及びＳ２１３）、Ｓ２１４及びＳ２１５の処理を実行する。
【００７４】
灰色濃度閾値Ｇｈについて、読取部４が、図１０（Ｂ）に示す副走査方向の右方へ移動しながら見開き原稿ＢＫの右頁ＢＫＲ及び右頁ＢＫＲの右端部ＢＲＡの画像を読み取る場合を例に挙げて、図１０（Ｂ）及び図１０（Ｃ）を参照して説明する。図１０（Ｂ）に示すように、読取部４と右端部ＢＲＡとの上下方向距離Ｗｚが、読取部４の焦点深度以上となることにより、読取部４で読み取られた画像の濃度画素値は灰色の濃度画素値となる。灰色濃度閾値Ｇｈは、図１０（Ｃ）に示すように、後端エッジライン数ＥＥより副走査方向のライン数ＮＳＷ（Ｓ５の処理で算出したライン数ＮＳＷ）に向かう方向における画素値の中で最大値ＢＫＧ（ｍａｘ）及び最小値ＢＫＧ（ｍｉｎ）を除いた画素値のうちのいずれかの画素値である。灰色濃度閾値Ｇｈを図１０（Ｃ）示すように設定して、ＣＰＵ９０が上記読取終了判断処理を実行することにより、従来、見開き原稿ＢＫの定形サイズに基づいて算出したライン数ＮＳＷの位置よりも副走査方向の読取開始位置に近いライン数である読取終了ライン数ＬＥで読取部４の画像の読み取りを終了し、モータ５９を停止させることができる。割合閾値Ｗｈは、１％以上の所定の閾値であり、実験で事前に確認して決定し、ＲＯＭ９２に記憶しておくものとする。
【００７５】
［画像出力処理］
本実施形態の複合機１が実行する画像出力処理について、図９のフローチャート及び図１２（Ａ）を参照して説明する。図１２（Ａ）において、図１０（Ａ）と同様に、視覚的に説明するために、ＲＡＭ９３に記憶されたエッジ画像データにおいて「１」のデータを実線で示したエッジ画像のうち、見開き原稿ＢＫの右頁ＢＫＲに対応する画像ＧＲのみを含む後端エッジ画像ＥＧ２を示す図である。説明簡略化のため、エッジ画像データにおける見開き原稿ＢＫに記載された原稿情報は図示を省略する。図１２（Ａ）において、後端エッジ画像ＥＧ２の外周を一点鎖線で示す。図１２（Ａ）において、複数の点線矢印は、各検索開始点ＳＰ（０）、ＳＰ（１）・・・ＳＰ（Ｎ）からの後端エッジ点の検索方向を示す。図９のフローチャートに示す画像出力処理によって、図１２（Ａ）に示す後端エッジ画像ＥＧ２において、見開き原稿ＢＫの右頁ＢＫＲに対応する右頁画像ＧＲの後端エッジ点を検出して、左頁画像ＧＬ及び右頁画像ＧＲの画像を抽出し、記録紙の中央に出力する。本実施形態では、説明簡略化のため、原稿の傾きθｋが０、またはＣＰＵ９０がＳ２１４の処理実行後で画像出力処理の実行前に、画像処理部９４によって読取画像ＧＡ及び後端エッジ画像ＥＧ２の原稿の傾きθｋを補正した場合について説明する。
【００７６】
複合機１における画像出力処理について、図９のフローチャートを参照して説明する。ＣＰＵ９０は、ラインカウンタ１０４によってカウントされたライン数を取得し、読取終了ライン数ＬＥとしてＲＡＭ９３に記憶する（Ｓ４００）。ＣＰＵ９０は、後端変数ｐを初期化して、ＲＡＭ９３に記憶する（Ｓ４０１）。ＣＰＵ９０は、ＲＡＭ９３に記憶されたエッジ画像データにおいて、後端変数ｐに対応する検索開始点を始点として、見開き原稿ＢＫの右頁ＢＫＲに対応する右頁画像ＧＲの後端エッジ点を検索開始する（Ｓ４０２）。ＣＰＵ９０は、読取終了ライン数ＬＥから後端エッジライン数ＥＥを減算したライン数までの画素数を検索したか否かを判断する（Ｓ４０３）。読取終了ライン数ＬＥから後端エッジライン数ＥＥを減算したライン数までの画素数を検索しなかったと判断した場合（Ｓ４０３：ＮＯ）、ＣＰＵ９０は、Ｓ４０３の判断処理を繰り返す。読取終了ライン数ＬＥから後端エッジライン数ＥＥを減算したライン数までの画素数を検索したと判断した場合（Ｓ４０３：ＹＥＳ）、ＣＰＵ９０は、検索した後端エッジ点の位置情報をＲＡＭ９３に記憶する（Ｓ４０４）。ＣＰＵ９０は、後端変数ｐが検索終了変数ＰＦ以上であるか否かを判断する（Ｓ４０５）。後端変数ｐが検索終了変数ＰＦ以上ではないと判断した場合（Ｓ４０５：ＮＯ）、ＣＰＵ９０は、後端変数ｐに１を加算して後端変数ｐに代入し（Ｓ４１２）、Ｓ４０３以降の処理を繰り返す。
【００７７】
具体的には、ＣＰＵ９０は、図１２（Ａ）に示すように、ＲＡＭ９３に記憶された後端エッジ画像ＥＧ２の読取終了ライン数ＬＥ上の後端点である後端変数ｐ＝０に対応する検索開始点ＳＰ（０）を右頁画像ＧＲの側端エッジ点の検索開始点とする（Ｓ４０２）。ＣＰＵ９０は、後端エッジ画像ＥＧ２において、副走査方向に沿って、読取開始位置ＰＳに近づく方向に検索点を移動させながら、エッジ点を検索する（Ｓ４０２）。ＣＰＵ９０は、読取終了ライン数ＬＥから後端エッジライン数ＥＥを減算したライン数まで検索点を移動させたと判断した場合（Ｓ４０３：ＹＥＳ）、検索した複数のエッジ点のうち、読取開始位置ＰＳに最も近いエッジ点の位置情報を、後端エッジ点ＥＰ（０）の位置情報としてＲＡＭ９３に記憶する（Ｓ４０４）。見開き原稿ＢＫの右端部ＢＲＡは、複数の頁端部で構成されているので、後端エッジ画像ＥＧ２のうち、右端部ＢＲＡに対応する画像ＧＲＡには、エッジ画素値が「１」であるエッジ画素が主走査方向に沿って複数存在する。Ｓ４０２の処理によって、エッジ点を検索していくと副走査方向に複数のエッジ点が検索されるため、読取開始位置ＰＳ及び後端エッジライン数ＥＥにおけるエッジ画素に最も近いエッジ点を後端エッジ点とする。ＣＰＵ９０は、後端変数ｐが検索終了変数ＰＦ以上ではないと判断した場合（Ｓ４０５：ＮＯ）、Ｓ４１２の処理によって、図１０（Ａ）に示すように、検索開始点ＳＰ（０）から主走査方向の検索開始点ＳＰ（０）から所定間隔離れた検索変数ｐ＝１に対応する検索開始点ＳＰ（１）を始点としてＳ４０３以降の処理を繰り返す。検索終了変数ＰＦは、原稿幅画素数Ｍに対応する数値である。上記所定間隔は、原稿幅画素数Ｍに検索変数ＰＦの数値を除算することで自動的に決まる間隔である。
【００７８】
後端変数ｐが検索終了変数ＰＦ以上であると判断した場合（Ｓ４０５：ＹＥＳ）、ＣＰＵ９０は、検索した後端エッジ点ＥＰ（０）、ＥＰ（１）・・・・ＥＰ（ＰＦ）に対して公知技術である最小二乗法による直線式を算出する（Ｓ４０６）。ＣＰＵ９０は、ＲＡＭ９３に記憶された後端エッジライン数ＥＥを、読取開始位置ＰＳから副走査方向の算出した直線式までの画素数としてＲＡＭ９３に記憶し直す（Ｓ４０７）。ＣＰＵ９０は、図１２（Ｂ）に示すように、画像処理部９４によって、ＲＡＭ９３に記憶された読取画像ＧＡから見開き原稿ＢＫに対応する画像ＧＫを画像抽出する（Ｓ４０８）。ＣＰＵ９０は、図１２（Ｃ）に示すように、画像処理部９４によって、出力範囲ＯＡにおいて、抽出した見開き原稿ＢＫに対応する画像ＧＫを、副走査方向の出力範囲ＯＡの右端ライン数ＳＥに近づく方向に、（ＳＥ−ＥＥ）／２だけ移動して画像配置し、ＲＡＭ９３に記憶する（Ｓ４０９）。ＣＰＵ９０は、画像形成部によって出力範囲ＯＡにおける画像データを記録紙に出力する（Ｓ４１０）。なお、出力範囲ＯＡは、定形サイズのうちのいずれかのサイズに対応する出力範囲としてＲＯＭ９２に記憶してもよいし、もしくは操作部７によって、ユーザから入力された定形サイズに対応する出力範囲であってもよい。
【００７９】
［作用効果］
本実施形態における複合機１は、見開き原稿ＢＫを支持するプラテンガラス２と、主走査方向に見開き原稿ＢＫのラインデータを読み取る読取部４と、副走査方向に、読取開始位置ＰＳから読取終了位置ＰＥに向けて読取部４を移動させる駆動部５と、読取部４によって読み取られたライン画像に係る画像データにエッジ強調処理を行い、エッジ画像データを生成するエッジ画像生成部１０３と、主走査方向のラインをカウントするラインカウンタ１０４と、画像データを所定の出力範囲ＯＡで出力する画像形成部１０と、ＣＰＵ９０と、を備えている。ＣＰＵ９０は、Ｓ３の処理によって、読取部４に見開き原稿ＢＫのラインデータを読み取らせ、Ｓ７の処理によって、読取部４による読取終了を判断し、Ｓ４０１〜Ｓ４０５の処理によって見開き原稿ＢＫの右頁ＢＫＲに対応する画像ＧＲの後端エッジを検出し、Ｓ４００、Ｓ４０６〜Ｓ４１０の処理によって、出力範囲ＯＡにおいて、見開き原稿ＢＫの画像ＧＫを、副走査方向に（ＳＥ−ＥＥ）／２だけ移動させて配置し、Ｓ４１１の処理によって、出力範囲ＯＡにおける画像を記録紙に出力する。
【００８０】
これにより、ユーザは、見開き原稿の画像の中心位置を記録紙の中心位置に合わせて、見開き原稿の画像を記録紙に画像形成することができる。
【００８１】
［実施形態と発明との対応関係］
複合機１が、本発明の画像読取装置の一例である。ＣＰＵ９０が、本発明の制御部の一例である。プラテンガラス２が、本発明の原稿台の一例である。Ｓ３〜Ｓ７が、本発明の読取処理の一例である。エッジ閾値Ｅｈが、本発明の第１閾値の一例である。Ｓ２０１及びＳ２０５〜Ｓ２０９が、本発明のエッジ判断処理の一例である。灰色濃度閾値Ｇｈが、本発明の第２閾値の一例である。割合閾値Ｗｈが、本発明の第３閾値の一例である。Ｓ２１１〜Ｓ２１３、及びＳ３００〜Ｓ３０３が、本発明の濃度判断処理の一例である。Ｓ２１５が、本発明の移動停止処理の一例である。Ｓ２０６、Ｓ２０７、及びＳ２１６〜Ｓ２１８が、本発明のエッジ判断制御処理の一例である。Ｓ３０１、及びＳ３０４〜Ｓ３０６が、本発明の濃度判断制御処理の一例である。原稿幅画素数Ｍが、本発明の主走査原稿幅の一例である。原稿傾きθｋが、本発明の主走査原稿傾きの一例である。Ｓ１００〜Ｓ１０７が、本発明の原稿決定処理の一例である。Ｓ５が、本発明の特定ライン決定処理の一例である。Ｓ６が、本発明のライン数判断処理の一例である。画像形成部１０が、本発明の画像出力部の一例である。Ｓ４００が、本発明の読取終了ライン記憶処理の一例である。Ｓ４０１〜Ｓ４０５、Ｓ４１２が、本発明の後端エッジ検出処理の一例である。Ｓ４０６及びＳ４０７が、本発明の後端ライン決定処理の一例である。Ｓ４０８が、本発明の画像抽出処理の一例である。Ｓ４０９が、本発明の画像出力範囲決定処理の一例である。Ｓ４１０が、本発明の画像出力処理の一例である。
【００８２】
［変形例］
本発明は上記記述及び図面によって説明した実施形態に限定されるものではなく、例えば、次のように本実施形態を変更してもよい。
【００８３】
（１）本実施形態では、エッジ判断対象範囲の主走査方向の画素数を、原稿幅エッジ画素数Ｍで構成しているが、この構成に限定されない。エッジ判断対象範囲の主走査方向の画素数を所定の複数の画素数で構成してもよい。また、本実施形態では、エッジ判断対象範囲の副走査方向の画素数を、所定の複数の画素数である副走査エッジ判断画素数Ｎ１で構成しているが、この構成に限定されない。Ｓ４の処理によって、決定された原稿幅画素数Ｍ及び原稿傾きθｋに基づいて、Ｍ×ｓｉｎθｋで表される副走査方向の画素数を、エッジ判断対象範囲の副走査方向の画素数とする構成であってもよい。
【００８４】
（２）実施形態では、エッジ判断対象範囲Ｐ（ｍ，ｎ）〜Ｐ（Ｍ，ｎ＋Ｎ１）を、エッジ判断対象ブロックに分割する構成としているが、この構成に限定されない。エッジ判断対象範囲Ｐ（ｍ，ｎ）〜Ｐ（Ｍ，ｎ＋Ｎ１）をエッジ判断対象ブロックに分割しない構成であってもよい。この場合、ＣＰＵ９０は、Ｓ２０６の処理において、エッジ判断対象範囲Ｐ（ｍ，ｎ）〜Ｐ（Ｍ，ｎ＋Ｎ１）におけるエッジ画素値を取得する。ＣＰＵ９０は、Ｓ２０７の処理において、Ｓ２０６の処理によって取得したエッジ画素値について、副走査方向に沿った複数のエッジ画素値のいずれかがエッジ閾値Ｅｈ以上であるか否かの判断を、エッジ判断対象範囲の主走査方向の複数の画素毎に行う。
【００８５】
（３）本実施形態では、濃度判断対象範囲の主走査方向の画素数を、原稿幅エッジ画素数Ｍで構成しているが、この構成に限定されない。濃度判断対象範囲の主走査方向の画素数を所定の複数の画素数で構成してもよい。また、本実施形態では、濃度判断対象範囲の副走査方向の画素数を、所定の複数の画素数である副走査濃度判断画素数Ｎ２で構成しているが、この構成に限定されない。図１０（Ｂ）に示す原稿載置面２ａに対するブック原稿ＢＫの右端部ＢＲＡの傾きθｗと、読取部４の焦点深度Ｗｋとに基づいて、Ｗｋ／ｔａｎθｗで算出される副走査方向の距離に対応する画素数を、副走査濃度判断画素数Ｎ２とする構成であってもよい。これにより、ＣＰＵ９０が、Ｓ２０７及びＳ２０８の処理によって、エッジ検出フラグがオンとなった後（Ｓ２０７：ＹＥＳ、Ｓ２０８：ＹＥＳ、Ｓ２０９）、濃度判断対象範囲に灰色濃度閾値以下となる画素数の割合が、割合閾値以上となる確率を高め、ＣＰＵ９０は、Ｓ２１４及びＳ２１５の処理を早期に実行することが可能となる。
【００８６】
（４）本実施形態では、画像処理部９４に解像度変換部１０１が含まれる構成としているが、この構成に限定されない。読取部４によって読み取られたＲＧＢ各色それぞれのラインデータを解像度変換部１０１に接続することなく、色変換部１０２に接続するとともに、濃度画像データとしてＲＡＭ９３に出力して記憶する構成であってもよい。
【００８７】
（５）本実施形態では、濃度判断対象範囲において、灰色濃度閾値以下である濃度画素値となる濃度判断対象範囲の全画素数に対する割合を、灰色濃度閾値以下である濃度画素値に対して濃度判断対象範囲の全画素数を除算して算出する構成としたが、この構成に限定されない。灰色濃度閾値以下の濃度画素値となる濃度判断対象範囲の全画素数に対する割合を、灰色濃度閾値以下である濃度画素値となる濃度画素数とする構成であってもよい。
【００８８】
（６）本実施形態では、所定の変数ｎｓを１とする構成としているが、この構成に限定されない。所定の変数ｎｓを、２以上で、かつ、所定ライン数ＬＮ未満である数値とする構成であってもよい。
【００８９】
（７）本実施形態では、図５に示すＳ５及びＳ６の処理を実行する構成としたが、この構成に限定されない。ＣＰＵ９０は、Ｓ４の処理を実行後、Ｓ７の処理を実行する構成であってもよい。
【００９０】
（８）本実施形態では、Ｓ５の処理において、ＣＰＵ９０は、画素数２ＳＷから見開き原稿ＢＫの右端部ＢＲＡの短辺幅に対応する画素数ＲＳＷを減算した画素数ＬＳＷを算出し、画素数ＬＳＷを、判断開始ライン数として決定する構成としたが、この構成に限定されない。画素数２ＳＷから見開き原稿ＢＫの右端部ＢＲＡの短辺幅に対応する画素数ＲＳＷを減算し、さらに所定の画素数を減算して画素数ＬＳＷを算出し、判断開始ライン数として決定する構成であってもよい。所定の画素数は、判断開始ライン数ＬＳＷを、見開き原稿ＢＫの右端部ＢＲＡより副走査方向の読取開始位置ＰＳに近づけるための画素数である。所定の画素数は、Ｓ４の処理によって、決定された原稿幅画素数Ｍ及び原稿傾きθｋに基づいて、Ｍ×ｓｉｎθｋで表される副走査方向の画素数としてもよい。これにより、見開き原稿ＢＫが、主走査方向に対して原稿傾きθｋだけ傾いていた場合であっても、エッジ閾値Ｅｈ以上となるエッジ画素値の検出精度を向上させることができる。
【００９１】
（９）本実施形態では、解像度変換部１０１の後段で、かつ色変換部１０２の手前でＲＧＢ各色それぞれのライン画像データを濃度画像データとしてそれぞれＲＡＭ９３に記憶する構成としたが、この構成に限定されない。色変換部１０２の後段で、かつエッジ画像生成部１０３の手前で、各画素の輝度値のデータを濃度画像データとしてＲＡＭ９３に記憶する構成であってもよい。この場合、ＣＰＵ９０は、Ｓ２１１の処理を各画素の輝度値のデータで構成された濃度画像データに対して実行し、Ｓ２１２及びＳ２１３の処理を実行しなくてもよい。
【００９２】
（１０）本実施形態では、Ｓ２１４の処理を実行する構成としたが、これに限定されない。ＣＰＵ９０は、Ｓ２１３の処理を実行後、Ｓ２１４の処理を実行することなく、Ｓ２１５の処理を実行する構成であってもよい。この場合、ＣＰＵ９０は、Ｓ８の処理を実行後、Ｓ２１４の処理を実行し、Ｓ２１４の処理の実行後、Ｓ９の処理を実行する。
【符号の説明】
【００９３】
２…プラテンガラス、４…読取部、５…駆動部、１０３…エッジ画像生成部、
９０…ＣＰＵ、１…複合機
【図１】
2019050466.tif 000003
【図２】
2019050466.tif 000004
【図３】
2019050466.tif 000005
【図４】
2019050466.tif 000006
【図５】
2019050466.tif 000007
【図６】
2019050466.tif 000008
【図７】
2019050466.tif 000009
【図８】
2019050466.tif 000010
【図９】
2019050466.tif 000011
【図１０】
2019050466.tif 000012
【図１１】
2019050466.tif 000013
【図１２】
2019050466.tif 000014