(57)【要約】【課題】第１の画像と第２の画像との合成位置を決定する精度の低下を抑制する。【解決手段】第１の画像内の基準領域の画像が第２の画像内の対応領域の画像と同じ位置に配置されるように第１の画像と第２の画像とが合成された合成画像を表す合成画像データを生成する。判定領域が、画素値のバラツキが大きいことを示す第１バラツキ条件を満たす場合には、類似度が基準以上である１つの特定の候補領域が見つかるまで、他の候補領域の選択と、他の候補領域に関する類似度の算出と、を実行し、類似度が基準以上である特定の候補領域を、対応領域として決定する。判定領域が第１バラツキ条件を満たさない場合には、複数の候補領域の選択と複数の候補領域に関する複数の類似度の算出とを実行し、類似度が基準以上である２以上の候補領域のうち、類似度が最も高い特定の候補領域を対応領域として決定する。【選択図】  図７
2015228592.tif 000002
【特許請求の範囲】
【請求項１】
画像処理装置であって、
第１の画像を表す第１の画像データと、第２の画像を表す第２の画像データと、を取得する取得部と、
前記第２の画像内の探索領域の中から前記第２の画像内の一部の領域である候補領域を選択して、前記第１の画像内の一部の領域である基準領域と、前記第２の画像内の選択された前記候補領域と、の間の類似度を算出することによって、前記類似度が基準以上である特定の候補領域を、前記基準領域に対応する対応領域として決定する決定部と、
前記第１の画像データと前記第２の画像データとを用いて、前記基準領域の画像が前記対応領域の画像と同じ位置に配置されるように前記第１の画像と前記第２の画像とが合成された合成画像を表す合成画像データを生成する生成部と、
を備え、
（Ａ）前記探索領域および前記基準領域を含む特定領域のうちの判定領域が、画素値のバラツキが大きいことを示す第１バラツキ条件を満たす第１の場合には、
前記決定部は、
前記類似度が前記基準以上である１つの前記特定の候補領域が見つかるまで、他の候補領域の選択と、前記他の候補領域に関する前記類似度の算出と、を実行し、
前記類似度が前記基準以上である前記特定の候補領域を、前記対応領域として決定し、
（Ｂ）前記判定領域が前記第１バラツキ条件を満たさない第２の場合には、
前記決定部は、
複数の前記候補領域の選択と、前記複数の候補領域に関する複数の前記類似度の算出と、を実行し、
前記類似度が前記基準以上である２以上の候補領域のうち、前記類似度が最も高い前記特定の候補領域を前記対応領域として決定する、
画像処理装置。
【請求項２】
請求項１に記載の画像処理装置であって、
前記判定領域は、前記基準領域を含む、画像処理装置。
【請求項３】
請求項１または２に記載の画像処理装置であって、
前記第１バラツキ条件は、前記探索領域の少なくとも一部の領域の内の画素値のバラツキと、前記基準領域の内の画素値のバラツキと、を用いる条件である、画像処理装置。
【請求項４】
請求項１から３のいずれか１項に記載の画像処理装置であって、
前記第２の場合に、前記決定部は、
前記類似度が前記基準以上である候補領域が見つかった場合に、前記見つかった候補領域の前記類似度よりも高い類似度を有する前記特定の候補領域が見つかるまで、他の候補領域の選択と、前記他の候補領域に関する前記類似度の算出と、を実行し、
前記特定の候補領域を前記対応領域として決定する、
画像処理装置。
【請求項５】
請求項１から４のいずれか１項に記載の画像処理装置であって、
前記第２の画像の矩形状の輪郭を形成する４本の辺のうちの前記第１の画像に接合される辺を接合辺とし、
前記探索領域のうち前記接合辺から最も遠い部分と前記接合辺との間の距離を探索距離とし、
前記類似度が前記基準以上である候補領域が見つかるよりも先に前記候補領域として選択された領域のうち前記接合辺から最も遠い部分と前記接合辺との間の距離を処理済距離とする場合に、
前記決定部は、前記探索距離が、前記処理済距離よりも大きく、かつ、前記処理済距離の３倍以下となるように、前記探索領域を修正する、画像処理装置。
【請求項６】
請求項１から５のいずれか１項に記載の画像処理装置であって、
前記決定部は、前記第２の場合に、
前記類似度が前記基準以上である候補領域が見つかり、かつ、前記探索領域のうちの未だ前記候補領域として選択されていない領域である未処理領域が、画素値のバラツキが大きいことを示す第２バラツキ条件を満たす場合には、前記未処理領域の中からは候補領域を選択せずに、
前記類似度が前記基準以上である候補領域が見つかり、かつ、前記未処理領域が前記第２バラツキ条件を満たさない場合には、前記未処理領域の中からの他の候補領域の選択と、前記他の候補領域に関する前記類似度の算出と、を実行する、
画像処理装置。
【請求項７】
請求項１から６のいずれか１項に記載の画像処理装置であって、
前記類似度の前記基準を第１基準とする場合に、
前記決定部は、
前記第１の場合には、前記対応領域として、前記第１基準以上の前記類似度を有する候補領域を決定し、
前記第２の場合には、前記対応領域として、前記第１基準よりも高い第２基準以上の前記類似度を有する候補領域を決定する、
画像処理装置。
【請求項８】
コンピュータプログラムであって、
第１の画像を表す第１の画像データと、第２の画像を表す第２の画像データと、を取得する取得機能と、
前記第２の画像内の探索領域の中から前記第２の画像内の一部の領域である候補領域を選択して、前記第１の画像内の一部の領域である基準領域と、前記第２の画像内の選択された前記候補領域と、の間の類似度を算出することによって、前記類似度が基準以上である特定の候補領域を、前記基準領域に対応する対応領域として決定する決定機能と、
前記第１の画像データと前記第２の画像データとを用いて、前記基準領域の画像が前記対応領域の画像と同じ位置に配置されるように前記第１の画像と前記第２の画像とが合成された合成画像を表す合成画像データを生成する生成機能と、
をコンピュータに実現させ、
（Ａ）前記探索領域および前記基準領域を含む特定領域のうちの判定領域が、画素値のバラツキが大きいことを示す第１バラツキ条件を満たす第１の場合には、
前記決定機能は、
前記類似度が前記基準以上である１つの前記特定の候補領域が見つかるまで、他の候補領域の選択と、前記他の候補領域に関する前記類似度の算出と、を実行し、
前記類似度が前記基準以上である前記特定の候補領域を、前記対応領域として決定し、
（Ｂ）前記判定領域が前記第１バラツキ条件を満たさない第２の場合には、
前記決定機能は、
複数の前記候補領域の選択と、前記複数の候補領域に関する複数の前記類似度の算出と、を実行し、
前記類似度が前記基準以上である２以上の候補領域のうち、前記類似度が最も高い前記特定の候補領域を前記対応領域として決定する、
コンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、第１の画像と第２の画像とが合成された画像を表す合成画像データを生成する技術に関する。
【背景技術】
【０００２】
第１の画像と第２の画像とが合成された画像を表す合成画像データを生成する技術が知られている。例えば、特許文献１に開示された技術では、一度には読み取れない大きさの原稿を、スキャナを用いて２回に分けて読み取ることによって、第１の画像を表すスキャンデータと、第２の画像を表すスキャンデータと、が取得される。そして、２個のスキャンデータを用いて、第１の画像と第２の画像とが合成された画像を表す出力画像データが生成される。第１の画像と第２の画像とを合成する位置は、パターンマッチングを用いて決定される。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開平４−２９００６６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、上記技術では、２個のスキャンデータによって表される画像がどのような画像であっても、同じ画像処理によって、第１の画像と第２の画像とが合成される。この結果、第１の画像と第２の画像との合成位置を決定する精度が低下する可能性があった。
【０００５】
本発明の主な利点は、第１の画像と第２の画像とが合成された合成画像を表す合成画像データを生成する際に、第１の画像と第２の画像との合成位置を決定する精度の低下を抑制することである。
【課題を解決するための手段】
【０００６】
本発明は、上述の課題の少なくとも一部を解決するためになされたものであり、以下の適用例として実現することが可能である。
【０００７】
［適用例１］画像処理装置であって、第１の画像を表す第１の画像データと、第２の画像を表す第２の画像データと、を取得する取得部と、前記第２の画像内の探索領域の中から前記第２の画像内の一部の領域である候補領域を選択して、前記第１の画像内の一部の領域である基準領域と、前記第２の画像内の選択された前記候補領域と、の間の類似度を算出することによって、前記類似度が基準以上である特定の候補領域を、前記基準領域に対応する対応領域として決定する決定部と、前記第１の画像データと前記第２の画像データとを用いて、前記基準領域の画像が前記対応領域の画像と同じ位置に配置されるように前記第１の画像と前記第２の画像とが合成された合成画像を表す合成画像データを生成する生成部と、を備え、（Ａ）前記探索領域および前記基準領域を含む特定領域のうちの判定領域が、画素値のバラツキが大きいことを示す第１バラツキ条件を満たす第１の場合には、前記決定部は、前記類似度が前記基準以上である１つの前記特定の候補領域が見つかるまで、他の候補領域の選択と、前記他の候補領域に関する前記類似度の算出と、を実行し、前記類似度が前記基準以上である前記特定の候補領域を、前記対応領域として決定し、（Ｂ）前記判定領域が前記第１バラツキ条件を満たさない第２の場合には、前記決定部は、複数の前記候補領域の選択と、前記複数の候補領域に関する複数の前記類似度の算出と、を実行し、前記類似度が前記基準以上である２以上の候補領域のうち、前記類似度が最も高い前記特定の候補領域を前記対応領域として決定する、画像処理装置。
【０００８】
この構成によれば、判定領域が第１バラツキ条件を満たさない場合には、類似度が基準以上である複数の候補領域のうち類似度が最も高い候補領域が対応領域として決定されるので、合成画像における第１の画像と第２の画像との合成位置を決定する精度の低下を抑制することができる。
【０００９】
なお、本発明は、種々の形態で実現することが可能であり、例えば、画像処理方法および画像処理装置、それらの方法または装置の機能を実現するためのコンピュータプログラム、そのコンピュータプログラムを記録した記録媒体（例えば、一時的ではない記録媒体）、等の形態で実現することができる。
【図面の簡単な説明】
【００１０】
【図１】実施例における画像処理システムの構成を示すブロック図である。
【図２】画像処理システム１０００の動作を示すシーケンス図である。
【図３】原稿の一例を示す図である。
【図４】ＵＩ画面の一例を示す図である。
【図５】スキャン画像の一例を示す図である。
【図６】合成画像３０の一例を示す図である。
【図７】対応領域決定処理の一例のフローチャートである。
【図８】第１バラツキ条件の判定の概略図である。
【図９】バラツキ画素と非バラツキ画素とを説明する図である。
【図１０】候補領域について説明する図である。
【図１１】第１バラツキ条件を満たさない原稿の一例を示す図である。
【図１２】スキャン画像の一例を示す図である。
【図１３】候補領域の例を示す説明図である。
【図１４】第１バラツキ条件の判定処理の別の実施例の概略図である。
【図１５】第１バラツキ条件の判定処理の別の実施例のフローチャートである。
【図１６】第１バラツキ条件の判定処理の別の実施例のフローチャートである。
【図１７】対応領域決定処理の別の実施例のフローチャートの一部と概略図である。
【図１８】対応領域決定処理の別の実施例のフローチャートの一部である。
【発明を実施するための形態】
【００１１】
Ａ．第１実施例：
Ａ−１：画像処理システム１０００の構成
図１は、実施例における画像処理システムの構成を示すブロック図である。画像処理システム１０００は、画像処理装置としてのサーバ４００と、複合機２００と、を備えている。サーバ４００は、インターネット７０に接続されており、複合機２００は、ＬＡＮ（Local Area Network）８０を介して、インターネット７０に接続されている。この結果、サーバ４００と複合機２００は、ＬＡＮ８０とインターネット７０とを介して、通信可能である。また、ＬＡＮ８０には、複合機２００のユーザのパーソナルコンピュータ５００が接続されていても良い。
【００１２】
サーバ４００は、ＣＰＵ４１０と、ＤＲＡＭなどの揮発性記憶装置４２０と、ハードディスクドライブやフラッシュメモリなどの不揮発性記憶装置４３０と、インターネット７０などのネットワークに接続するためのインタフェースを含む通信部４８０と、を備えている。揮発性記憶装置４２０には、ＣＰＵ４１０が処理を行う際に生成される種々の中間データを一時的に格納するバッファ領域４２１が設けられている。不揮発性記憶装置４３０には、コンピュータプログラム４３１と、ＵＩデータ群４３３と、が格納されている。
【００１３】
コンピュータプログラム４３１、および、ＵＩデータ群４３３は、例えば、サーバ４００の管理者によって、インターネット７０を介してサーバ４００にアップロードされることにより、サーバ４００にインストールされる。または、コンピュータプログラム４３１、および、ＵＩデータ群４３３は、例えば、ＤＶＤ−ＲＯＭなどに格納された形態で提供され、サーバ４００の管理者によって、サーバ４００にインストールされても良い。ＣＰＵ４１０は、コンピュータプログラム４３１を実行することにより、後述する画像処理を実現する。
【００１４】
複合機２００は、ＣＰＵ２１０と、ＤＲＡＭなどの揮発性記憶装置２２０と、フラッシュメモリやハードディスクドライブなどの不揮発性記憶装置２３０と、プリンタ部２４０と、スキャナ部２５０と、タッチパネルやボタンなどの操作部２６０と、液晶ディスプレイなどの表示部２７０と、外部機器と通信を行う通信部２８０と、を備えている。例えば、通信部２８０は、ＬＡＮ８０などのネットワークに接続するためのインタフェースや、外部記憶装置（例えば、ＵＳＢメモリ）と接続するためのインタフェースを含んでいる。
【００１５】
揮発性記憶装置２２０には、ＣＰＵ２１０が処理を行う際に生成される種々のデータを一時的に格納するバッファ領域２２１が設けられている。不揮発性記憶装置２３０には、制御プログラム２３１が格納されている。
【００１６】
プリンタ部２４０は、インクジェット方式やレーザー方式などの印刷方式を用いて印刷を実行する。スキャナ部２５０は、光電変換素子（例えば、ＣＣＤ、ＣＭＯＳ）を用いて光学的に原稿を読み取ることによってカラー画像やグレー画像を表すスキャンデータを生成する。スキャナ部２５０は、例えば、いわゆるフラットベッド式の原稿台を備えている。なお、原稿台の長手方向のサイズは、ＩＳＯ（International Organization for Standardizationの略称）２１６で定められている紙の寸法を規定するＡ４サイズの長手方向の長さである２９７ｍｍより少しだけ（例えば、数センチ）長いサイズである。そして、原稿台の短手方向のサイズは、ＡＮＳＩ／ＡＳＭＥ（American National Standards Institute／American Society of Mechanical Engineersの略称）Ｙ１４．１で定められている紙の寸法を規定するレターサイズの短手方向の長さである２１５．９ｍｍより少しだけ（例えば、数センチ）長いサイズである。本実施例では、１回で読み取ることができる原稿の最大サイズは、Ａ４サイズより大きくＡ３サイズ（ＩＳＯで定められている紙の寸法）より小さいサイズである。具体的には、スキャナ部２５０は、長手方向の長さがＡ４サイズの長手方向の長さより少しだけ長く、かつ、短手方向の長さがレターサイズの短手方向の長さより少しだけ長い原稿を読み取り、当該原稿のサイズの画像を表す画像データを生成する。このために、後述するように、Ａ３サイズの原稿の長手方向の中央付近が重複するように、Ａ３サイズの原稿を２回に分けて読み取ることができる。
【００１７】
ＣＰＵ２１０は、制御プログラム２３１を実行することにより、複合機２００の制御を実行する。例えば、ＣＰＵ２１０は、プリンタ部２４０やスキャナ部２５０を制御して、コピー処理、印刷処理、スキャン処理などを実行する。さらに、ＣＰＵ２１０は、サーバ４００にアクセスして、サーバ４００が提供するサービスを利用するサービス利用処理を、実行することができる。
【００１８】
Ａ−２：画像処理システム１０００の動作
図２は、画像処理システム１０００の動作を示すシーケンス図である。このシーケンス図の処理は、複合機２００が、サーバ４００が提供する画像生成サービスの利用指示を、ユーザから受け付けた場合に開始される。この画像生成サービスは、詳細は後述するが、複数個のスキャンデータによって表される複数個のスキャン画像を合成するサービスである。複数個のスキャンデータは、詳細は後述するが、例えば、１回で読み取り可能なサイズより大きなサイズの原稿を、複数回に分けて読み取ることによって生成される。以下、図中では、処理を示す符号として、文字「Ｓ」と、文字「Ｓ」に続く数字と、を組み合わせた符号を用いる。
【００１９】
処理が開始されると、Ｓ５では、複合機２００のＣＰＵ２１０は、サービス開始要求を、サーバ４００に対して送信する。サーバ４００のＣＰＵ４１０は、サービス開始要求を受信すると、ＵＩデータ群４３３（図１）から画像生成サービスの提供に必要なＵＩデータを選択し、該ＵＩデータを複合機２００に対して送信する（Ｓ１０）。ＵＩデータは、具体的には、ユーザインタフェース画面（以下、ＵＩ画面）を表す画面データと、制御データと、を含む。この制御データは、例えば、ＵＩ画面を利用して複合機２００が所定の処理（具体的には、後述するＳ１５のスキャン処理）を行うために必要な各種のデータを含む。例えば、制御データは、ＵＩ画面（例えば、後述する図４）を介して受け付けたユーザの指示に基づいて、複合機２００が実行すべき処理（例えば、サーバ４００へのスキャンデータの送信）を行うために必要な情報（例えば、スキャンデータの送信先アドレス）を含む。
【００２０】
Ｓ１５では、ＣＰＵ２１０は、受信したＵＩデータに基づいて、複数個のスキャンデータを生成するスキャン処理を実行する。本実施例のスキャン処理では、ＣＰＵ２１０は、ユーザが用意した原稿を２回に分けて読み取ることによって、２個のスキャンデータを生成する。本実施例のスキャンデータは、ＲＧＢの各成分の値（例えば、０〜２５５の２５６階調の値）を画素ごとに含むＲＧＢ画像データである。
【００２１】
図３は、本実施例で用いられる原稿の一例を示す図である。図３の原稿１０のサイズは、スキャナ部２５０が１回で読み取り可能なサイズ（本実施例では、Ａ４サイズより少し大きなサイズ）の約２倍のサイズ（本実施例では、Ａ３サイズ）である。
【００２２】
図４は、ＵＩ画面の一例を示す図である。先ず、ＣＰＵ２１０は、図４のＵＩ画面ＵＧ１を表示部２７０に表示する。例えば、ＵＩ画面ＵＧ１は、原稿台への原稿１０の適切な設置を促すメッセージＭＳ１と、スキャンボタンＳＢと、キャンセルボタンＣＢと、を含んでいる。ユーザは、ＵＩ画面ＵＧ１に従って、原稿１０の左側の約半分の領域１０Ｌ（図３）を読み取ることができるように、原稿１０を原稿台に設置し、スキャンボタンＳＢを押下する。スキャンボタンＳＢの押下に応じて、ＣＰＵ２１０は、スキャナ部２５０を制御して原稿を読み取ることによって、左側スキャンデータを生成する。
【００２３】
図５は、スキャン画像の一例を示す図である。図５（Ａ）には、左側スキャンデータによって表される左側スキャン画像２０Ｌが示されている。左側スキャン画像２０Ｌは、原稿１０の左側の約半分の領域１０Ｌ（図３）を示す左側原稿画像ＨＩＬと、余白ＷＢＬと、を含んでいる。
【００２４】
次に、ＣＰＵ２１０は、所定のＵＩ画面（図示省略）を表示部２７０に表示する。このＵＩ画面は、ＵＩ画面ＵＧ１と同様に、原稿台への原稿１０の適切な設置を促すメッセージと、スキャンボタンと、キャンセルボタンと、を含んでいる。ユーザは、ＵＩ画面に従って、原稿１０の右側の約半分の領域１０Ｒ（図３）を読み取ることができるように、原稿１０を原稿台に設置し、スキャンボタンを押下する。ＣＰＵ２１０は、スキャンボタンの押下に応じて、スキャナ部２５０を制御して原稿を読み取ることによって、右側スキャンデータを生成する。
【００２５】
図５（Ｂ）には、右側スキャンデータによって表される右側スキャン画像２０Ｒが示されている。右側スキャン画像２０Ｒは、原稿１０の右側の約半分の領域１０Ｒ（図３）を示す右側原稿画像ＨＩＲと、余白ＷＢＲと、を含んでいる。
【００２６】
ここで、図３の原稿１０の横方向の中央部ＣＡを表す画像は、左側スキャン画像２０Ｌの右端に沿った領域と、右側スキャン画像２０Ｒの左端に沿った領域と、の両方に含まれている。すなわち、図５にハッチングで示すように、左側スキャン画像２０Ｌは、原稿１０の中央部ＣＡを表す画像ＣＩＬを含み、右側スキャン画像２０Ｒは、原稿１０の中央部ＣＡを表す画像ＣＩＲを含んでいる。これは、例えば、ＵＩ画面や複合機２００の説明書などによって、原稿１０の中央部ＣＡが、右側スキャンデータの生成時と左側スキャンデータの生成時との両方で読み取られるように、原稿１０を原稿台に設置するように、ユーザに指示することによって、実現される。なお、左側スキャン画像２０Ｌ内の画像ＣＩＬと、右側スキャン画像２０Ｒ内の画像ＣＩＲとは、ともに原稿１０の中央部ＣＡを表しているが、ユーザによって原稿台に設置された原稿１０の位置、スキャナ部２５０の光電変換素子の特性などによって、面積や色などに多少の差は、生じ得る。
【００２７】
図２のＳ２０では、ＣＰＵ２１０は、右側スキャン画像２０Ｒを表す右側スキャンデータと、左側スキャン画像２０Ｌを表す左側スキャンデータと、をサーバ４００に対して送信する。この結果、Ｓ２５にて、サーバ４００のＣＰＵ４１０は、右側スキャンデータと、左側スキャンデータと、取得して、バッファ領域４２１に格納する。
【００２８】
Ｓ３５では、ＣＰＵ４１０は、対応領域決定処理を実行する。対応領域決定処理は、右側スキャン画像２０Ｒ（図５（Ｂ））内の一部の領域である基準領域ＲＡ１に対応する左側スキャン画像２０Ｌ（図５（Ａ））内の対応領域ＣＰを決定する処理である。本実施例では、基準領域ＲＡ１は、右側スキャン画像２０Ｒ内の予め決められた領域である。基準領域ＲＡ１に対応する対応領域ＣＰは、次のように定義できる。右側スキャン画像２０Ｒ内の基準領域ＲＡ１内に表されている原稿１０の一部分を特定部分画像ＳＰＴ（図３）とする。基準領域ＲＡ１に対応する対応領域ＣＰは、左側スキャン画像２０Ｌにおいて、原稿１０の特定部分画像ＳＰＴを表す領域である。対応領域ＣＰは、左側スキャン画像２０Ｌ内の探索領域内から決定される。後述するように、対応領域ＣＰとしては、基準領域ＲＡ１の画像に類似する画像を表す領域が、採用される。なお、対応領域決定処理の詳細は、後述する。
【００２９】
Ｓ４０では、ＣＰＵ４１０は、合成処理を実行する。合成処理では、右側スキャンデータと左側スキャンデータとを用いて、右側スキャン画像２０Ｒ内の右側原稿画像ＨＩＲと、左側スキャン画像２０Ｌ内の左側原稿画像ＨＩＬとが合成された合成画像を表す合成画像データが生成される。
【００３０】
図６は、合成画像の一例を示す図である。図６の合成画像３０において、右側原稿画像ＨＩＲと左側原稿画像ＨＩＬとは、右側原稿画像ＨＩＲ内の基準領域ＲＡ１と、左側原稿画像ＨＩＬ内の対応領域ＣＰとが、同じ位置に配置されるように、合成される。合成画像３０において、右側原稿画像ＨＩＲと左側原稿画像ＨＩＬとが互いに重なり合う領域内の画素の値には、例えば、右側原稿画像ＨＩＲ（右側スキャン画像２０Ｒ）内の画素の値が優先的に採用される。これによって、右側原稿画像ＨＩＲと左側原稿画像ＨＩＬとが合成されて、図３の原稿１０を表す合成画像３０が生成される。なお、ＣＰＵ４１０は、合成画像３０の輪郭形状が矩形状になるように縁の一部を削除するトリミング処理を行ってもよい。
【００３１】
なお、後述する対応領域決定処理において、基準領域ＲＡ１に対応する対応領域ＣＰを決定できなかった場合には、所定の処理が実行される。例えば、機械的に、左側スキャン画像２０Ｌの右端の辺と、右側スキャン画像２０Ｒの左端の辺とが、接するように、２個のスキャン画像が合成された合成画像を表す合成画像データが生成される（図示省略）。
【００３２】
図２のＳ４５では、ＣＰＵ４１０は、生成された合成画像データを複合機２００に対して送信する。複合機２００のＣＰＵ２１０は、合成画像データを受信すると、受信した合成画像データを不揮発性記憶装置２３０に格納するとともに、ユーザに合成画像データを受信したことを通知する。ユーザは、合成画像データを、任意の用途に利用可能である。例えば、複合機２００は、ユーザの指示に基づいて、合成画像データを用いて、合成画像３０を印刷することができる。
【００３３】
以上説明した画像処理システム１０００によれば、一の原稿１０（図３）からそれぞれ別の領域を読み取ることによって得られる複数個の画像データ（具体的には、右側スキャンデータと左側スキャンデータ）を用いて、一の原稿１０を表す合成画像データを生成することができる。
【００３４】
次に、図２のＳ３５の対応領域決定処理について説明する。図７は、対応領域決定処理の一例のフローチャートである。Ｓ１１０では、ＣＰＵ４１０は、第１バラツキ条件が満たされるか否かを判定する。図８は、第１バラツキ条件の判定の概略図である。図８の左部には、左側スキャン画像２０Ｌと、左側スキャン画像２０Ｌ中の探索領域ＳＡ１と、が示されている。また、図中には、右方向を正方向とするＸ軸と、下方向を正方向とするＹ軸とが示されている。Ｘ軸は、左側スキャン画像２０Ｌの右端の辺Ｓｒに垂直な横方向に延びる軸を示し、Ｙ軸は、左側スキャン画像２０Ｌの右端の辺Ｓｒに平行な縦方向に延びる軸を示している。以下、Ｘ軸の方向を、Ｘ方向とも呼び、Ｙ軸の方向を、Ｙ方向とも呼ぶ。
【００３５】
本実施例では、ＣＰＵ４１０は、探索領域ＳＡ１の画像を用いて、第１バラツキ条件が満たされるか否かを判定する。本実施例では、探索領域ＳＡ１は、対応領域ＣＰを探索するための探索領域の初期領域であり、左側スキャン画像２０Ｌ中の予め決められた領域である（初期探索領域ＳＡ１とも呼ぶ）。本実施例では、初期探索領域ＳＡ１は、左側スキャン画像２０Ｌの右端の辺Ｓｒに沿った矩形領域であり、辺Ｓｒに垂直な方向の幅は、所定幅Ｗ１である。この辺Ｓｒは、左側スキャン画像２０Ｌの矩形状の輪郭を形成する４本の辺のうちの右側スキャン画像２０Ｒに接合される辺Ｓｒである（接合辺Ｓｒとも呼ぶ）。図５（Ａ）に示すように、初期探索領域ＳＡ１は、原稿１０（図３）の中央部ＣＡを表す画像ＣＩＬの少なくとも一部を含むように、構成されている。
【００３６】
図８の右側には、処理領域ＰＡが示されている。ＣＰＵ４１０は、探索領域ＳＡ１中の後述するバラツキ領域を、処理領域ＰＡを用いて探索する。処理領域ＰＡは、矩形領域である。処理領域ＰＡのＸ方向の幅は、探索領域ＳＡ１のＸ方向の幅Ｗ１と同じである。処理領域ＰＡのＹ方向の長さは、基準領域ＲＡ１（図５（Ｂ））のＹ方向の長さと同じである。このような処理領域ＰＡを用いることによって、バラツキ領域を適切に探索でき、そして、処理速度が長くなることを抑制できる。ＣＰＵ４１０は、処理領域ＰＡが探索領域ＳＡ１からはみ出ないように、処理領域ＰＡの位置を、探索領域ＳＡ１の上端から下端まで１画素ずつ移動させる。そして、ＣＰＵ４１０は、処理領域ＰＡの各位置において、処理領域ＰＡの画像を解析してバラツキ画素の割合を算出する。
【００３７】
図９は、バラツキ画素と非バラツキ画素とを説明する図である。ＣＰＵ４１０は、処理領域ＰＡ内の複数個の画素を１個ずつ注目画素ＴＰとして選択して、注目画素ＴＰを中心とする横３画素×縦３画素分の領域ＦＬ内の画素を用いて、注目画素ＴＰのバラツキ値Ｖを算出する。まず、図９の式に示すように、ＣＰＵ４１０は、注目画素ＴＰのＲＧＢの値（Ｒ０、Ｇ０、Ｂ０）と、周囲の８個の画素のＲＧＢの値（Ｒｎ、Ｇｎ、Ｂｎ）のそれぞれと、の差分ΔＶｎを算出する。ｎは、注目画素ＴＰの周囲の８個の画素を識別する１〜８までの番号であり、図９の領域ＦＬ内の各画素に付された番号である。ＣＰＵ４１０は、図９に式で示すように、算出された８個の差分ΔＶｎの合計値を、注目画素ＴＰのバラツキ値Ｖとして算出する。注目画素ＴＰのバラツキ値Ｖが、所定の閾値Ｖｔｈ以上である場合には、注目画素ＴＰは、バラツキ画素に分類され、所定の閾値Ｖｔｈ未満である場合には、注目画素ＴＰは、非バラツキ画素に分類される。
【００３８】
ＣＰＵ４１０は、処理領域ＰＡの画素数に対するバラツキ画素の数の割合（バラツキ画素割合と呼ぶ）が所定の閾値ＴＨｘ（例えば、５０％）を超えるまで、処理領域ＰＡの移動とバラツキ画素割合の算出とを繰り返す。処理領域ＰＡの画像におけるバラツキ画素割合が所定の閾値ＴＨｘを超える場合、ＣＰＵ４１０は、処理領域ＰＡがバラツキ領域であると判定する。図８中では、初期探索領域ＳＡ１内のバラツキ領域に、ハッチングが付されている。処理領域ＰＡがバラツキ領域であると判定された場合、ＣＰＵ４１０は、バラツキ領域のＹ方向側に隣接する位置に処理領域ＰＡを移動させ、Ｙ方向に向かって新たなバラツキ領域を探索する。このように、ＣＰＵ４１０は、探索領域ＳＡ１の全体からバラツキ領域を探索する。なお、処理領域ＰＡのＹ方向の長さは探索領域ＳＡ１のＹ方向の長さよりも短い。このように、探索領域ＳＡ１よりも小さい処理領域ＰＡを用いることによって、探索領域ＳＡ１内のバラツキ領域を、適切に探索できる。
【００３９】
ＣＰＵ４１０は、初期探索領域ＳＡ１の画素数に対するバラツキ領域の画素数の割合であるバラツキ領域割合が、所定の第１バラツキ基準値（例えば、５０％）未満である場合には、第１バラツキ条件が満たされないと判定する。第１バラツキ条件が満たされないことは、探索領域ＳＡ１の画像が、画像によって表される対象物の色や形状等の変化に乏しい画像であることを示している。この場合、左側スキャン画像２０Ｌにおいて、特定部分画像ＳＰＴ（図３）を表す領域以外にも、基準領域ＲＡ１の画像に類似する画像を表す領域が存在する可能性が高い。一方、バラツキ領域割合が第１バラツキ基準値以上である場合には、ＣＰＵ４１０は、第１バラツキ条件が満たされると判定する。第１バラツキ条件が満たされることは、探索領域ＳＡ１の画像が、画像によって表される対象物の色や形状等の変化に富む画像であることを示している。この場合、左側スキャン画像２０Ｌにおいて、特定部分画像ＳＰＴ（図３）を表す領域以外に、基準領域ＲＡ１の画像に類似する画像を表す領域が存在する可能性が低い。第１バラツキ条件の判定結果は、後述するＳ１５０で利用される。なお、図５（Ａ）、図８の左側スキャン画像２０Ｌが処理される場合には、第１バラツキ条件が満たされることとして、説明を行う。また、図８の実施例では、第１バラツキ条件の判定に用いられる判定領域は、探索領域ＳＡ１である。
【００４０】
図７のＳ１２０では、ＣＰＵ４１０は、探索領域ＳＡ１（図５（Ａ））から候補領域を選択する。図１０は、探索領域ＳＡ１から選択され得る候補領域について説明する図である。候補領域の形状およびサイズは、基準領域ＲＡ１（図５（Ｂ））に応じて決定される。まず、基準領域ＲＡ１と同じ形状およびサイズを有する枠ＮＰが、探索領域ＳＡ１の少なくとも一部と重なるように、探索領域ＳＡ１に対して配置される。そして、枠ＮＰ内の領域のうち、探索領域ＳＡ１と重なる領域が候補領域として特定される。
【００４１】
図１０（Ａ）の枠ＮＰａは、最も右側かつ上側に配置される枠である。この枠ＮＰａの左上の画素Ｐａの座標を（ｋ、１）とする。なお、画素Ｐａの座標（ｋ、１）は、対応領域決定処理の説明の便宜のために用いる座標である。後述する画素Ｐｂ〜Ｐｄの座標についても同様である。画素Ｐａの横方向（Ｘ軸方向）の位置は、探索領域ＳＡ１の右端の画素の横方向の位置と同じである。画素Ｐａの縦方向（Ｙ軸方向）の位置は、探索領域ＳＡ１の上端の画素より所定長（具体的には、５０〜１００画素分の長さ）だけ上方に位置している。したがって、図１０（Ａ）においてハッチングで示すように、枠ＮＰａ内の領域のうち、左端の１本の画素のライン上に位置する複数個の画素の下側の一部分の領域が、探索領域ＳＡ１と重なっている。
【００４２】
図１０（Ｂ）の枠ＮＰｂは、最も右側かつ下側に配置される枠である。この枠ＮＰｂの左上の画素Ｐｂの座標を（ｋ、ｍ）とする。画素Ｐｂの横方向の位置は、探索領域ＳＡ１の右端の画素の横方向の位置と同じである。画素Ｐｂの縦方向の位置は、探索領域ＳＡ１の下端の画素より所定長だけ上方に位置している。したがって、図１０（Ｂ）においてハッチングで示すように、枠ＮＰｂ内の領域のうち、左端の１本の画素のライン上に位置する複数個の画素の上側の一部分の領域が、探索領域ＳＡ１と重なっている。
【００４３】
図１０（Ｃ）の枠ＮＰｃは、最も左側かつ上側に配置される枠である。この枠ＮＰｃの左上の画素Ｐｃの座標を（１、１）とする。画素Ｐｃの横方向の位置は、探索領域ＳＡ１の左端の画素の横方向の位置と同じである。画素Ｐｃの縦方向の位置は、探索領域ＳＡ１の上端の画素より所定長だけ上方に位置している。したがって、図１０（Ｃ）においてハッチングで示すように、枠ＮＰｃ内の領域のうち、下側の一部分の領域が探索領域ＳＡ１と重なっている。
【００４４】
図１０（Ｄ）の枠ＮＰｄは、最も左側かつ下側に配置される枠である。この枠ＮＰｄの左上の画素Ｐｄの座標を（１、ｍ）とする。画素Ｐｄの横方向の位置は、探索領域ＳＡ１の左端の画素の横方向の位置と同じである。画素Ｐｃの縦方向の位置は、探索領域ＳＡ１の下端の画素より所定長だけ上方に位置している。したがって、図１０（Ｄ）においてハッチングで示すように、枠ＮＰｃ内の領域のうち、上側の一部分の領域が探索領域ＳＡ１と重なっている。
【００４５】
候補領域を特定するために配置される枠ＮＰの左上の画素の座標は、（ｐ、ｑ）で表される（ｋ×ｍ）個の座標の中から、順次に選択される。ここで、ｐは、１以上ｋ以下の任意の整数であり、ｑは、１以上ｍ以下の任意の整数である。したがって、探索領域ＳＡ１には、（ｋ×ｍ）個の枠ＮＰが配置可能である。換言すれば、探索領域ＳＡ１内には、（ｋ×ｍ）個の候補領域が特定可能である。
【００４６】
後述するように、探索領域ＳＡ１からは、複数の候補領域が選択され得る。探索領域ＳＡ１内の（ｋ×ｍ）個の候補領域の選択順は、図１０（Ａ）〜図１０（Ｃ）に矢印で示す通りである。（ｋ×ｍ）個の枠ＮＰの中から、右上の端の枠ＮＰａ（図１０（Ａ））が最初に選択される。その後、１画素ずつ下方向に位置がずれた枠ＮＰが、順次に選択される。そして、右下の端の枠ＮＰｂ（図１０（Ｂ））が選択されると、右上の端の枠ＮＰａの位置から１画素だけ左方向にずれた枠ＮＰが選択される。その後は、再び１画素ずつ下方向に位置がずれた枠ＮＰが、順次に選択される。最後に選択される枠ＮＰは、左下の端の枠ＮＰｄ（図１０（Ｄ））である。
【００４７】
このように、本実施例では、ＣＰＵ４１０は、探索領域ＳＡ１の右端、すなわち、左側スキャン画像２０Ｌ（図５（Ａ））のうちの右側スキャン画像２０Ｒに接合される辺Ｓｒに近い位置から、辺Ｓｒから遠い位置に向かって、候補領域の選択を進行する。
【００４８】
図７のＳ１２０では、ＣＰＵ４１０は、処理対象の１個の候補領域（注目候補領域と呼ぶ）を選択する。Ｓ１３０では、ＣＰＵ４１０は、注目候補領域と基準領域ＲＡ１との間の類似度を算出する。本実施例では、類似度は、注目候補領域内の画素の総数Ｎｔに対する類似画素数ＳＣの割合である（ＳＣ／Ｎｔ）。注目候補領域内の類似画素は、基準領域ＲＡ１内の対応する画素に対する画素値の差ΔＶＰが小さい画素である。注目候補領域内の注目画素に対応する基準領域ＲＡ１内の画素は、注目候補領域内の画像と基準領域ＲＡ１内の画像とを、注目候補領域を特定する際に用いた枠ＮＰと、基準領域ＲＡ１の外縁とが一致するように重ねた場合に、注目画素と重なる基準領域ＲＡ１内の画素である。差ΔＶＰについては、以下の通りである。差ΔＶＰを算出すべき２個の画素のＲＧＢの値を、（Ｒ１、Ｇ１、Ｂ１）と（Ｒ２、Ｇ２、Ｂ２）とする。差ΔＶＰは、３種類の成分値間の差分の絶対値の和で表される。すなわち、差ΔＶＰは、（Ｒ１−Ｒ２）の絶対値と、（Ｇ１−Ｇ２）の絶対値と、（Ｂ１−Ｂ２）の絶対値と、の合計値で表される。差ΔＶＰが所定の基準値ＴＨ１以下である画素が、類似画素である。以上のように算出される類似度（ＳＣ／Ｎｔ）が大きいほど、基準領域ＲＡ１と、注目候補領域とは、類似している。
【００４９】
Ｓ１４０では、ＣＰＵ４１０は、類似度（ＳＣ／Ｎｔ）が、所定の閾値ＴＨ２以上であるか否かを判定する。類似度が閾値ＴＨ２以上であることは、注目候補領域が基準領域ＲＡ１に類似していることを示している。
【００５０】
類似度が閾値ＴＨ２未満である場合（Ｓ１４０：Ｎｏ）、すなわち、注目候補領域が基準領域ＲＡ１に類似していない場合、Ｓ１７０で、ＣＰＵ４１０は、探索領域に含まれる全ての候補領域の処理が完了したか否かを判定する。未処理の候補領域が残っている場合（Ｓ１７０：Ｎｏ）、Ｓ１８０で、ＣＰＵ４１０は、探索領域から新たな（他の）注目候補領域を選択する。そして、ＣＰＵ４１０は、Ｓ１３０に移行し、新たな注目候補領域の処理を実行する。
【００５１】
類似度が閾値ＴＨ２以上である場合（Ｓ１４０：Ｙｅｓ）、Ｓ１４５で、ＣＰＵ４１０は、注目候補領域を特定する情報を、基準領域ＲＡ１に類似する候補領域（類似候補領域と呼ぶ）を特定する情報として、記憶装置（例えば、揮発性記憶装置４２０、または、不揮発性記憶装置４３０）に格納する。類似候補領域を特定する情報（類似候補領域情報と呼ぶ）としては、例えば、候補領域の枠の左上の隅の画素の位置と候補領域の枠の横方向の幅と縦方向の高さとを表す情報を、採用可能である。
【００５２】
Ｓ１５０では、ＣＰＵ４１０は、第１バラツキ条件（Ｓ１１０）が満たされるか否かを確認する。第１バラツキ条件が満たされる場合（Ｓ１５０：Ｙｅｓ）、Ｓ２００で、ＣＰＵ４１０は、Ｓ１４５で記憶された類似候補領域を、基準領域ＲＡ１に対応する対応領域として決定する。例えば、図５（Ａ）の領域ＣＰが、基準領域ＲＡ１に対応する対応領域として決定される。Ｓ２１０で、ＣＰＵ４１０は、接合フラグを「オン」に設定し、そして、図７の処理を終了する。図２のＳ４０では、接合フラグが「オン」である場合、ＣＰＵ４１０は、図６で説明したように、基準領域ＲＡ１と対応領域ＣＰとが同じ位置に配置されるように、右側原稿画像ＨＩＲと左側原稿画像ＨＩＬとを合成する。
【００５３】
このように、初期探索領域ＳＡ１から基準領域ＲＡ１に類似する類似候補領域が探索される。そして、第１バラツキ条件が満たされる場合には、１つの類似候補領域が見つかるまで、他の候補領域の選択と選択された候補領域の類似度の算出とが実行される。そして、最初に見つかった類似候補領域が、基準領域ＲＡ１に対応する対応領域ＣＰとして決定される。上述したように、第１バラツキ条件が満たされる場合には、探索領域ＳＡ１の画像が対象物の色や形状等の変化に富む画像であるので、最初に見つかった類似候補領域が、特定部分画像ＳＰＴ（図３）を表す領域である可能性が高い。従って、ＣＰＵ４１０は、最初に見つかった類似候補領域を対応領域ＣＰとして用いることによって、適切な合成画像３０（図６）を表す合成画像データを生成可能である。
【００５４】
次に、第１バラツキ条件が満たされない場合について、説明する。図１１は、第１バラツキ条件を満たさない原稿の一例を示す図である。図３の原稿１０との差異は、図１１の原稿１０ｘでは、中央部ＣＡｘの画像が対象物の色や形状等の変化に乏しい画像である点だけである。原稿１０ｘの他の構成は、図３の原稿１０の構成と、同じである。図１２は、スキャン画像の一例を示す図である。図１２（Ａ）は、左側スキャンデータによって表される左側スキャン画像２０ｘＬを示している。左側スキャン画像２０ｘＬは、図１１の原稿１０ｘの左側の約半分の領域１０ｘＬを示す左側原稿画像ＨＩｘＬと、余白ＷＢｘＬと、を含んでいる。図１２（Ｂ）は、右側スキャンデータによって表される右側スキャン画像２０ｘＲを示している。右側スキャン画像２０ｘＲは、図１１の原稿１０ｘの右側の約半分の領域１０ｘＲを示す右側原稿画像ＨＩｘＲと、余白ＷＢｘＲと、を含んでいる。右側スキャン画像２０ｘＲ内の基準領域ＲＡ１は、右側スキャン画像２０ｘＲ内の予め決められた領域であり、図５（Ｂ）の基準領域ＲＡ１と同じ領域である。図１１の原稿１０ｘ内の特定部分画像ＳＰＴｘは、図１２（Ｂ）の右側スキャン画像２０ｘＲの基準領域ＲＡ１内の画像と同じ画像を表す部分である。
【００５５】
図１３は、左側スキャン画像２０ｘＬから選択される候補領域の例を示す説明図である。ここで、第１候補領域ＳＣ１が、最初に見つかった類似候補領域であることとして、説明を行う。この第１候補領域ＳＣ１は、図１１の特定部分画像ＳＰＴｘを表す領域ではないが、第１候補領域ＳＣ１の類似度は、閾値ＴＨ２以上である。第１バラツキ条件が満たされない場合、中央部ＣＡｘの画像が対象物の色や形状等の変化に乏しい画像であるので、特定部分画像ＳＰＴｘを表す領域とは異なる領域（例えば、特定部分画像ＳＰＴｘの近くの領域）の類似度が、閾値ＴＨ２以上であり得る。
【００５６】
第１候補領域ＳＣ１が注目候補領域である場合、ＣＰＵ４１０は、図７のＳ１４０で、類似度が閾値ＴＨ２以上であると判定し、Ｓ１４５で、注目候補領域（ここでは、第１候補領域ＳＣ１）を特定する情報を、類似候補領域情報として記憶装置に格納し、Ｓ１５０で、第１バラツキ条件が満たされないことを確認する。Ｓ１６０では、ＣＰＵ４１０は、最初に見つかった類似候補領域に応じて探索領域を修正する。
【００５７】
図１３には、初期の探索領域ＳＡ１と、修正済の探索領域ＳＡ２とが、示されている。修正済の探索領域ＳＡ２は、図７のＳ１６０で、第１候補領域ＳＣ１に応じて修正された領域である。図中の辺Ｓｒｘは、左側スキャン画像２０ｘＬの矩形状の輪郭を形成する４本の辺のうちの右側スキャン画像２０ｘＲに接合される辺Ｓｒｘである（接合辺Ｓｒｘとも呼ぶ）。ハッチングが付された領域Ａ１は、第１候補領域ＳＣ１が注目候補領域として選択されるよりも先に候補領域として選択済みの領域である（処理済領域Ａ１と呼ぶ）。処理済領域Ａ１内の部分ＰＦ１は、接合辺Ｓｒｘから最も遠い部分である（最遠部分ＰＦ１と呼ぶ）。本実施例では、最も遠い部分ＰＦ１は、第１候補領域ＳＣ１の左端である。距離ｗは、処理済領域Ａ１のうちの最遠部分ＰＦ１と接合辺Ｓｒｘとの間の距離である。接合辺Ｓｒｘからの距離が処理済距離ｗ以下である領域の大部分が、処理済領域Ａ１である（以下、距離ｗを、処理済距離ｗとも呼ぶ）。なお、左側スキャン画像２０ｘＬ上の距離は、例えば、画素数で表される。
【００５８】
ＣＰＵ４１０は、図１０で説明したように、接合辺Ｓｒｘに近い位置から、接合辺Ｓｒｘに遠い位置に向かって、候補領域の選択を進行する。また、ＣＰＵ４１０は、接合辺Ｓｒｘからの距離が処理済距離ｗの２倍である直線ＢＬ２と、接合辺Ｓｒｘとで挟まれる領域ＳＡ２を、修正済の探索領域ＳＡ２として採用する。直線ＢＬ２は、接合辺Ｓｒｘと平行な直線である。特定部分画像ＳＰＴｘ（図１１）を表す領域は、最初に見つかった類似候補領域（ここでは、第１候補領域ＳＣ１）の近傍に存在すると推定される。従って、処理済距離ｗの２倍程度の距離の範囲を新たな探索領域として採用することによって、特定部分画像ＳＰＴｘ（図１１）を表す領域を探索可能と推定される。なお、図１３の例に示すように、修正済探索領域ＳＡ２は、初期の探索領域ＳＡ１よりも小さくなり得る。この代わりに、修正済探索領域ＳＡ２が、初期の探索領域ＳＡ１よりも大きくなる場合もある。以後、探索領域として、修正済の探索領域ＳＡ２が用いられる。なお、図７のＳ１６０は、最初の類似候補領域が見つかった場合に、１回だけ実行される。
【００５９】
図７のＳ１７０で、ＣＰＵ４１０は、探索領域（ここでは、修正済探索領域ＳＡ２）に含まれる全ての候補領域の処理が完了したか否かを判定する。未処理の候補領域が残っている場合（Ｓ１７０：Ｎｏ）、Ｓ１８０で、ＣＰＵ４１０は、探索領域から新たな注目候補領域を選択する。新たな注目候補領域の選択は、図１０で説明した手順と同じ手順に従って、行われる。そして、ＣＰＵ４１０は、Ｓ１３０に移行し、新たな注目候補領域の処理を実行する。図１３の例では、第１候補領域ＳＣ１に加えて、図１１の特定部分画像ＳＰＴｘを表す第２候補領域ＳＣ２が、類似候補領域である。
【００６０】
探索領域（ここでは、修正済探索領域ＳＡ２）内の全ての候補領域の処理が完了した場合（Ｓ１７０：Ｙｅｓ）、Ｓ１８５で、ＣＰＵ４１０は、記憶装置の類似候補領域情報を参照して、少なくとも１つの類似候補領域が見つかったか否かを判定する。少なくとも１つの類似候補領域が見つかった場合（Ｓ１８５：Ｙｅｓ）、Ｓ１９０で、ＣＰＵ４１０は、見つかった少なくとも１つの類似候補領域の中から最も類似度の高い候補領域を、対応領域ＣＰｘとして決定する。図１３の例では、第２候補領域ＳＣ２の類似度は、第１候補領域ＳＣ１の類似度よりも高い。従って、第２候補領域ＳＣ２が、対応領域ＣＰｘとして決定される。Ｓ２１０で、ＣＰＵ４１０は、接合フラグを「オン」に設定し、そして、図７の処理を終了する。図２のＳ４０では、基準領域ＲＡ１と対応領域ＣＰｘとが同じ位置に配置されるように、右側スキャン画像２０ｘＲ内の右側原稿画像ＨＩｘＲと左側スキャン画像２０ｘＬ内の左側原稿画像ＨＩｘＬとが合成された合成画像（図示省略）を表す合成画像データが生成される。
【００６１】
このように、第１バラツキ条件が満たされない場合には、ＣＰＵ４１０は、修正済探索領域ＳＡ２から類似度が所定の閾値ＴＨ２以上である類似候補領域を探索する（通常は、複数の（２以上の）類似候補領域が見つかる）。例えば、図１３の例では、第１候補領域ＳＣ１と第２候補領域ＳＣ２が、類似候補領域である。そして、ＣＰＵ４１０は、類似度が閾値ＴＨ２以上である複数の候補領域のうちの類似度が最も高い候補領域を、対応領域として決定する（図１３の例では、第２候補領域ＳＣ２が対応領域ＣＰｘとして決定される）。従って、左側原稿画像ＨＩｘＬと右側原稿画像ＨＩｘＲとの合成位置を決定する精度の低下を抑制できる。
【００６２】
また、図１３で説明したように、第１バラツキ条件が満たされない場合、ＣＰＵ４１０は、探索領域のうちの接合辺Ｓｒｘから最も遠い部分と接合辺Ｓｒｘとの間の距離である探索距離が、処理済距離ｗの２倍となるように、探索領域を修正する（修正済探索領域ＳＡ２）。このように、左側スキャン画像２０ｘＬに適した修正済探索領域ＳＡ２が用いられるので、左側原稿画像ＨＩｘＬと右側原稿画像ＨＩｘＲとの合成位置を決定する精度の低下を抑制できる。
【００６３】
また、図７のＳ２００で説明したように、第１バラツキ条件が満たされる場合には、最初に見つかった類似候補領域が、基準領域ＲＡ１に対応する対応領域ＣＰとして決定される。すなわち、対応領域ＣＰとしては、所定の閾値ＴＨ２以上の類似度を有する候補領域が、採用される。一方、図７のＳ１９０で説明したように、第１バラツキ条件が満たされない場合には、複数の類似候補領域の中から最も類似度の高い候補領域が、対応領域ＣＰｘとして決定される。従って、対応領域ＣＰｘとして決定される候補領域の類似度は、複数の類似候補領域の類似度のうちの最も低い類似度（最低候補類似度と呼ぶ）以上である。すなわち、対応領域ＣＰｘとしては、最低候補類似度（通常は、所定の閾値ＴＨ２よりも高い）以上の類似度を有する候補領域が、採用される。このように、第１バラツキ条件が満たされる場合と満たされない場合との間で、類似度の実質的な基準が異なっている。この結果、種々の画像を処理する場合に、左側原稿画像と右側原稿画像との合成位置を決定する精度の低下を抑制できる。
【００６４】
なお、類似候補領域が見つからない場合（Ｓ１８５：Ｎｏ）、Ｓ２４０で、ＣＰＵ４１０は、接合フラグを「オフ」に設定して、図７の処理を終了する。図２のＳ４０では、接合フラグが「オフ」である場合、上述したように、ＣＰＵ４１０は、対応領域ＣＰを決定できない場合のための所定の処理を実行する。
【００６５】
Ｂ．第２実施例：
図１４は、第１バラツキ条件の判定処理（図７：Ｓ１１０）の別の実施例の概略図である。図８の判定処理との差異は、図１４の第２実施例の処理領域ＰＡ２のＹ方向の長さが１画素分の長さである点だけである。処理領域ＰＡ２のＸ方向の幅は、探索領域ＳＡ１の幅Ｗ１と同じである。第１バラツキ条件の判定以外の処理は、図２、図７の実施例と同じである。また、画像処理に用いられる画像処理システムは、図１に示す画像処理システム１０００と同じである。
【００６６】
第２実施例の第１バラツキ条件の判定の処理は、図８の処理の処理領域ＰＡを処理領域ＰＡ２に置換して得られる処理と同じである。すなわち、ＣＰＵ４１０は、処理領域ＰＡ２（図１４）が探索領域ＳＡ１からはみ出ないように、処理領域ＰＡ２の位置を、探索領域ＳＡ１の上端から下端まで１画素ずつ移動させる。そして、ＣＰＵ４１０は、処理領域ＰＡ２の各位置において、処理領域ＰＡ２の画像を解析してバラツキ画素の割合を算出する。そして、ＣＰＵ４１０は、探索領域ＳＡ１内のバラツキ領域を特定する。ＣＰＵ４１０は、初期探索領域ＳＡ１の画素数に対するバラツキ領域の画素数の割合であるバラツキ領域割合が、第１バラツキ基準値（例えば、５０％）未満である場合には、第１バラツキ条件が満たされないと判定する。一方、バラツキ領域割合が第１バラツキ基準値以上である場合には、ＣＰＵ４１０は、第１バラツキ条件が満たされると判定する。
【００６７】
このように、第２実施例では、ＣＰＵ４１０は、バラツキ領域を、図８の処理領域ＰＡよりも小さい処理領域ＰＡ２を用いて特定するので、第１バラツキ条件が満たされるか否かの判定を適切に実行できる。なお、処理領域としては、図８の処理領域ＰＡと図１４の処理領域ＰＡ２とのいずれとも異なる領域を採用可能である。例えば、基準領域ＲＡ１と同じ大きさと形状の領域を、処理領域として採用してもよい。この場合の第１バラツキ条件の判定処理としては、例えば、以下の処理を採用可能である。ＣＰＵ４１０は、処理領域を、図１０で説明した枠と同様に、１画素ずつ移動させる。そして、ＣＰＵ４１０は、処理領域の各位置において、処理領域の画像を解析してバラツキ画素の割合を算出する。 そして、ＣＰＵ４１０は、探索領域ＳＡ１内のバラツキ領域を特定し、第１バラツキ条件が満たされるか否かを判定する。
【００６８】
Ｃ．第３実施例：
図１５は、第１バラツキ条件の判定処理（図７：Ｓ１１０）の別の実施例のフローチャートである。図８の判定処理とは異なり、図１５の実施例では、探索領域ＳＡ１と基準領域ＲＡ１との両方が用いられる。第１バラツキ条件の判定以外の処理は、図２、図７の実施例と同じである。また、画像処理に用いられる画像処理システムは、図１に示す画像処理システム１０００と同じである。
【００６９】
Ｓ３００では、ＣＰＵ４１０は、基準領域ＲＡ１（図５（Ｂ））の画像を解析して基準領域ＲＡ１内のバラツキ画素の割合を算出する。バラツキ画素の特定方法は、図９で説明した方法と同じである。基準領域ＲＡ１のバラツキ画素の割合が所定の第１バラツキ基準値（例えば、５０％）以上である場合（Ｓ３００：Ｙｅｓ）、Ｓ３３０で、ＣＰＵ４１０は、第１バラツキ条件が満たされると判定し、図１５の処理を終了する。
【００７０】
基準領域ＲＡ１のバラツキ画素の割合が所定の第１バラツキ基準値未満である場合（Ｓ３００：Ｎｏ）、Ｓ３１０で、ＣＰＵ４１０は、初期の探索領域ＳＡ１の画像を解析してバラツキ領域割合を算出する。バラツキ領域割合の算出方法は、図７のＳ１１０での算出方法と同じである。探索領域ＳＡ１のバラツキ領域割合が第１バラツキ基準値以上である場合（Ｓ３１０：Ｙｅｓ）、Ｓ３３０で、ＣＰＵ４１０は、第１バラツキ条件が満たされると判定し、図１５の処理を終了する。
【００７１】
基準領域ＲＡ１のバラツキ画素の割合が第１バラツキ基準値未満であり、かつ、探索領域ＳＡ１のバラツキ領域割合が第１バラツキ基準値未満である場合（Ｓ３００：Ｎｏ、Ｓ３１０：Ｎｏ）、Ｓ３２０で、ＣＰＵ４１０は、第１バラツキ条件が満たされないと判定し、図１５の処理を終了する。
【００７２】
このように、第３実施例の第１バラツキ条件の判定処理では、第１バラツキ条件の判定に用いられる判定領域が、探索領域ＳＡ１と基準領域ＲＡ１とを含んでいる。従って、探索領域ＳＡ１内の画素値のバラツキと基準領域ＲＡ１内の画素値のバラツキとに適した対応領域が決定されるので、左側原稿画像と右側原稿画像との合成位置を決定する精度の低下を抑制できる。例えば、基準領域ＲＡ１のバラツキ画素の割合が第１バラツキ基準値以上である場合には、基準領域ＲＡ１の画像が、対象物の色や形状等の変化に富む画像であるので、基準領域ＲＡ１とは異なる画像を表す領域が、誤って、対応領域として決定される可能性が小さい。従って、第１バラツキ条件が満たされると判定することによって、画像処理の負担を軽減しつつ、合成位置を決定する精度の低下を抑制できる。また、探索領域ＳＡ１のバラツキ領域割合が第１バラツキ基準値以上である場合には、探索領域ＳＡ１の画像が、対象物の色や形状等の変化に富む画像であるので、基準領域ＲＡ１とは異なる画像を表す領域が、誤って、対応領域として決定される可能性が小さい。従って、第１バラツキ条件が満たされると判定することによって、画像処理の負担を軽減しつつ、合成位置を決定する精度の低下を抑制できる。
【００７３】
Ｄ．第４実施例：
図１６は、第１バラツキ条件の判定処理（図７：Ｓ１１０）の別の実施例のフローチャートである。図１５の判定処理との差異は、基準領域ＲＡ１のバラツキ画素の割合の条件と、探索領域ＳＡ１のバラツキ領域割合の条件と、の組合せが異なる点だけである。
【００７４】
具体的には、第４実施例では、基準領域ＲＡ１のバラツキ画素の割合が第１バラツキ基準値以上であり（Ｓ４００：Ｙｅｓ）、かつ、探索領域ＳＡ１のバラツキ領域割合が第１バラツキ基準値以上である（Ｓ４１０：Ｙｅｓ）場合、Ｓ４２０で、ＣＰＵ４１０は、第１バラツキ条件が満たされると判定し、図１６の処理を終了する。基準領域ＲＡ１のバラツキ画素の割合が第１バラツキ基準値未満である場合と（Ｓ４００：Ｎｏ）、探索領域ＳＡ１のバラツキ領域割合が第１バラツキ基準値未満である場合（Ｓ４１０：Ｎｏ）とには、Ｓ４３０で、ＣＰＵ４１０は、第１バラツキ条件が満たされないと判定し、図１６の処理を終了する。
【００７５】
このように、第４実施例の第１バラツキ条件の判定処理では、第１バラツキ条件の判定に用いられる判定領域が、探索領域ＳＡ１と基準領域ＲＡ１とを含んでいる。従って、探索領域ＳＡ１内の画素値のバラツキと基準領域ＲＡ１内の画素値のバラツキとに適した対応領域が決定されるので、左側原稿画像と右側原稿画像との合成位置を決定する精度の低下を抑制できる。
【００７６】
なお、図１６の実施例では、図１５の実施例と比べて、第１バラツキ条件が満たされないと判定される可能性が高い。従って、図１６の実施例では、対応領域の決定に、複数の類似候補領域が用いられる可能性が高い。この結果、左側原稿画像と右側原稿画像との合成位置を決定する精度の低下を抑制できる。
【００７７】
一方、図１５の実施例では、図１６の実施例と比べて、第１バラツキ条件が満たされると判定される可能性が高い。従って、図１５の実施例では、対応領域として、最初に見つかった類似候補領域が採用される可能性が高い。この結果、画像処理の負担を軽減できる。
【００７８】
Ｅ．第５実施例：
図１７（Ａ）は、対応領域決定処理の別の実施例のフローチャートの一部であり、図１７（Ｂ）は、処理の概略図である。図１７（Ａ）には、図７に示すフローチャートに追加されるＳ１５５が示されている。図７の対応領域決定処理との差異は、Ｓ１５５が追加される点だけである。追加されたＳ１５５の処理以外の処理は、図２、図７の実施例と同じである。また、画像処理に用いられる画像処理システムは、図１に示す画像処理システム１０００と同じである。
【００７９】
第１バラツキ条件が満たされない場合（図７：Ｓ１５０：Ｎｏ）、ＣＰＵ４１０は、図１７（Ａ）のＳ１５５で、未処理領域のバラツキ画素の割合を算出する。図１７（Ｂ）には、左側スキャン画像２０ｘＬ（図１２（Ａ））の一部が示されている。ここで、第１候補領域ＳＣ１が注目候補領域であり、第１候補領域ＳＣ１の類似度が閾値ＴＨ２以上であり（Ｓ１４０：Ｙｅｓ）、第１バラツキ条件が満たされない（Ｓ１５０：Ｎｏ）こととする。図中のハッチングが付された領域ＵＰＡは、探索領域ＳＡ１のうち、未だ候補領域として選択されていない領域である（未処理領域ＵＰＡと呼ぶ）。ＣＰＵ４１０は、Ｓ１５５で、未処理領域ＵＰＡの画像を解析して未処理領域ＵＰＡにおけるバラツキ画素の割合を算出する。そして、ＣＰＵ４１０は、未処理領域ＵＰＡが、バラツキ画素の割合が所定の第２バラツキ基準値（例えば、５０％）以上であるという第２バラツキ条件を満たすか否かを判定する。未処理領域ＵＰＡが第２バラツキ条件を満たさない場合（Ｓ１５５：Ｎｏ）、ＣＰＵ４１０は、図７のＳ１６０に移行する。そして、ＣＰＵ４１０は、Ｓ１８０で、未処理領域ＵＰＡから新たな候補領域を選択して、選択した候補領域の処理を実行する。未処理領域ＵＰＡが第２バラツキ条件を満たす場合（Ｓ１５５：Ｙｅｓ）、ＣＰＵ４１０は、未処理領域ＵＰＡからは新たな候補領域を選択せずに、図７のＳ１９０で、見つかった１以上の類似候補領域の中から最も類似度の高い候補領域を、対応領域として決定する。
【００８０】
以上のように、第５実施例では、未処理領域ＵＰＡの画素値のバラツキが第２バラツキ基準値と比べて小さい場合には、未処理領域ＵＰＡから類似候補領域が追加され得るので、左側原稿画像と右側原稿画像との合成位置を決定する精度の低下を抑制できる。また、未処理領域ＵＰＡの画素値のバラツキが第２バラツキ基準値以上である場合には、未処理領域ＵＰＡからは類似候補領域が見つからない可能性が高い。そこで、第５実施例では、ＣＰＵ４１０は、未処理領域ＵＰＡから新たな候補領域を選択せずに、見つかった１以上の類似候補領域の中から最も類似度の高い候補領域を、対応領域として決定する。従って、画像処理の負担を軽減しつつ、合成位置の決定の精度の低下を抑制できる。なお、第２バラツキ基準値は、第１バラツキ基準値と異なっていても良い。
【００８１】
なお、図１７（Ａ）のＳ１５５は、図７のＳ１６０の後に実行されてもよい。すなわち、未処理領域ＵＰＡとしては、修正済探索領域（例えば、図１３の修正済探索領域ＳＡ２）のうちの未処理の領域が用いられても良い。
【００８２】
Ｆ．第６実施例：
図１８は、対応領域決定処理の別の実施例のフローチャートの一部である。図中には、図７に示すフローチャートに追加されるＳ１６２、Ｓ１６５、Ｓ１６７が示されている。図７の対応領域決定処理との差異は、Ｓ１６２、Ｓ１６５、Ｓ１６７が追加される点だけである。追加されたＳ１６２、Ｓ１６５、Ｓ１６７の処理以外の処理は、図２、図７の実施例と同じである。また、画像処理に用いられる画像処理システムは、図１に示す画像処理システム１０００と同じである。
【００８３】
第１バラツキ条件が満たされない場合（Ｓ１５０：Ｎｏ）、ＣＰＵ４１０は、Ｓ１６０で、最初に見つかった類似候補領域に応じて探索領域を修正し、Ｓ１６２で、類似度の閾値を、所定の閾値ＴＨ２から、最初に見つかった類似候補領域の類似度に、増大させる。例えば、図１３の左側スキャン画像２０ｘＬの第１候補領域ＳＣ１が最初に見つかった類似候補領域である場合、類似度の閾値は、第１候補領域ＳＣ１の類似度に、増大される。これにより、次にＳ１４０（図７）が実行される場合には、類似度の基準として、閾値ＴＨ２に代えて増大済閾値が用いられる。なお、Ｓ１６０、Ｓ１６２は、最初の類似候補領域が見つかった場合に、１回だけ実行される。また、Ｓ１６０が、Ｓ１６２よりも後に実行されてもよい。
【００８４】
Ｓ１６５では、ＣＰＵ４１０は、注目候補領域の類似度が増大済閾値を超えているか否かを判定する。注目候補領域の類似度が増大済閾値を超えていない場合（Ｓ１６５：Ｎｏ）、処理は、Ｓ１７０に移行する。なお、Ｓ１６２が実行された後の最初のＳ１６５では、注目候補領域の類似度は増大済閾値を超えていない。
【００８５】
注目候補領域の類似度が増大済閾値を超えている場合（Ｓ１６５：Ｙｅｓ）、注目候補領域は、最初に見つかった類似候補領域の類似度よりも高い類似度を有する類似候補領域である（高類似候補領域と呼ぶ）。例えば、図１３の左側スキャン画像２０ｘＬの例では、第２候補領域ＳＣ２が、高類似候補領域であり得る。注目候補領域が高類似候補領域である場合、Ｓ１６７で、ＣＰＵ４１０は、注目候補領域（すなわち、高類似候補領域）を、対応領域として決定する。そして、処理は、Ｓ２１０に移行する。
【００８６】
以上のように、第６実施例では、類似度が閾値ＴＨ２以上である類似候補領域（例えば、第１候補領域ＳＣ１）が見つかった場合に、見つかった類似候補領域の類似度よりも高い類似度を有する高類似候補領域（例えば、第２候補領域ＳＣ２）が見つかるまで、他の候補領域の選択と選択された候補領域の類似度の算出とが実行される。そして、高類似候補領域（例えば、第２候補領域ＳＣ２）が対応領域として決定される。このように、第１バラツキ条件が満たされない場合に、最初に見つかった類似候補領域よりも類似度が高い高類似候補領域が対応領域として用いられるので、合成位置の決定の精度の低下を抑制できる。また、図１８の実施例では、１つの高類似候補領域が見つかった場合に、新たな候補領域が選択されずに、対応領域が決定される。従って、２以上の高類似候補領域が選択される場合と比べて、画像処理の負担を軽減できる。
【００８７】
Ｇ．変形例：
（１）図１３の実施例において、修正済の探索領域の探索距離としては、処理済距離ｗの２倍に代えて他の値を採用可能である。適切な対応領域を決定するためには、例えば、修正済の探索領域の探索距離が、処理済距離ｗよりも大きく、かつ、処理済距離ｗの３倍以下となるように、探索領域を修正することが好ましい。
【００８８】
（２）図７のＳ１１０、Ｓ１５０で用いられる第１バラツキ条件としては、上記の条件に代えて他の種々の条件を採用可能である。例えば、ＣＰＵ４１０は、探索領域ＳＡ１の画像に拘わらず、基準領域ＲＡ１内のバラツキ画素の割合が第１バラツキ基準値以上である場合に、第１バラツキ条件が満たされると判定してもよい。また、バラツキ画素と非バラツキ画素とを区別する方法としては、図９で説明した方法に代えて、他の種々の方法を採用可能である。例えば、差分ΔＶｎとして、輝度値の差分の絶対値を採用してもよい。輝度値は、予め決められた算出式（例えば、ＲＧＢの３個の成分値から、ＹＣｂＣｒ色空間の輝度成分であるＹ成分を算出する算出式）を用いて、算出可能である。一般的には、第１バラツキ条件としては、画素値のバラツキが大きいことを示す種々の条件を採用可能である。また、第１バラツキ条件の判定に用いられる判定領域としては、探索領域および基準領域を含む特定領域のうちの少なくとも一部の領域を採用可能である。例えば、探索領域ＳＡ１の一部分（例えば、探索領域ＳＡ１のうちの辺Ｓｒに近い半分の部分）が、判定領域として採用されてもよい。また、図１７の実施例の第２バラツキ条件としても、同様に、画素値のバラツキが大きいことを示す種々の条件を採用可能である。
【００８９】
（３）基準領域ＲＡ１は、所定の領域ではなく、可変領域であってもよい。例えば、ＣＰＵ４１０は、基準領域が配置される画像（例えば、右側スキャン画像）の解析結果に応じて、基準領域を決定してもよい。
【００９０】
（４）初期の探索領域は、所定の領域ではなく、可変領域であってもよい。例えば、ＣＰＵ４１０は、探索領域が配置される画像（例えば、左側スキャン画像）の解析結果に応じて、初期の探索領域を決定してもよい。
【００９１】
（５）候補領域が基準領域に類似しているか否かを判定するための基準（例えば、閾値ＴＨ２）は、所定の値ではなく、可変値であってもよい。例えば、ＣＰＵ４１０は、第１バラツキ条件の判定領域内のバラツキ画素の割合が高いほど類似度の基準として高い値を採用してもよい。
【００９２】
（６）基準領域と候補領域との間の類似度としては、上記実施例で説明した類似度に代えて、基準領域と候補領域との間の類似の度合いを表す他の種々の指標を採用可能である。例えば、候補領域内の注目画素と、注目画素に対応する基準領域内の画素と、の間の輝度値の差分の絶対値が所定の基準値以下である注目画素を、類似画素として採用可能である。そして、候補領域の画素数Ｎｔに対する類似画素の数の割合を、類似度として採用可能である。
【００９３】
（７）対応領域決定処理としては、上記各実施例の処理に代えて、他の種々の処理を採用可能である。例えば、上記各実施例において、図７のＳ１６０を省略してもよい。図１５のＳ３００とＳ３１０との間で、バラツキ基準値が異なっていても良い。図１６のＳ４００とＳ４１０との間でバラツキ基準値が異なっていても良い。また、図１４、図１５、図１６、図１７、図１８の実施例から任意に選択された複数の実施例を組み合わせてもよい（ただし、図１５の実施例と図１６の実施例との両方を含む組合せを除く）。
【００９４】
（８）２個のスキャンデータによって表される２個の画像を、第１の画像と、第２の画像とする。上記実施例では、第１の画像（具体的には、右側スキャン画像２０Ｒ）の左端近傍と、第２の画像（具体的には、左側スキャン画像２０Ｌ）の右端近傍と、が接合されるように、合成画像が生成されている。これに代えて、例えば、２個のスキャンデータの生成に用いられる一つの原稿に応じて、第１の画像の右端近傍と、第２の画像の左端近傍とが、接合されるように、合成画像が生成されてもよい。あるいは、第１の画像の下端近傍と、第２の画像の上端近傍とが、接合されるように、合成画像が生成されても良く、第１の画像の上端近傍と、第２の画像の下端近傍と、が接合されるように、合成画像が生成されてもよい。
【００９５】
そして、このような第１の画像と第２の画像との接合の態様は、予め決められていても良いし、上述した４個の接合の態様の全てについて、それぞれ、対応領域を決定しても良い。後者の場合には、基準領域と対応領域との類似度が最も高い接合の態様で、第１の画像と第２の画像とが接合された合成画像を表す合成画像データが生成されてもよい。
【００９６】
なお、４個の接合の態様の間で、基準領域と初期の探索領域が異なることが好ましい。例えば、第１の画像の下端近傍と第２の画像の上端近傍とが接合される場合には、例えば、第１の画像の下端近傍に基準領域が配置され、第２の画像の上端近傍に、探索領域が配置される。一般的には、一方の画像のうちの接合される部分に基準領域が配置され、他方の画像のうちの接合される部分に探索領域が配置されることが好ましい。
【００９７】
（９）上記実施例では、合成画像データの生成に用いられる２個のスキャンデータは、１つの原稿を読み取って得られる右側スキャンデータと左側スキャンデータである。これに代えて、２個のスキャンデータは、２個の原稿をそれぞれ読み取って得られる２個のスキャンデータであっても良い。
【００９８】
（１０）上記実施例では、合成画像データの生成に用いられる２個の画像データは、複合機２００のスキャナ部２５０によって原稿が読み取られることによって生成される２個のスキャンデータである。これに代えて、２個の画像データは、デジタルカメラによって原稿を撮影することによって生成される２個の画像データであってもよい。
【００９９】
（１１）上記実施例では、２個の画像データを用いて２個の画像が合成された合成画像を表す合成画像データが生成されている。これに限らず、任意の個数の画像データを用いて合成画像データが生成されても良い。例えば、４個の画像データを用いて、４個の画像が合成された合成画像を表す合成画像データが生成されてもよい。
【０１００】
（１２）上記実施例においてサーバ４００のＣＰＵ４１０によって実行される処理（例えば、図２のＳ２５〜Ｓ４０の処理）は、例えば、複合機２００のＣＰＵ２１０によって実行されても良い。この場合には、サーバ４００は不要であり、複合機２００が単体で図２の処理を実行すればよい。また、サーバ４００のＣＰＵ４１０によって実行される処理は、複合機２００に接続されたパーソナルコンピュータ５００（図１）のＣＰＵ（図示省略）によって実行されても良い。例えば、パーソナルコンピュータ５００のＣＰＵは、パーソナルコンピュータ５００にインストールされたスキャナドライバプログラムを実行することによって、これらの処理を実行しても良い。また、サーバ４００は、図１の実施例のように１つの計算機で構成されても良く、複数個の計算機を含む計算システムによって構成されていても良い。
【０１０１】
上記各実施例において、ハードウェアによって実現されていた構成の一部をソフトウェアに置き換えるようにしてもよく、逆に、ソフトウェアによって実現されていた構成の一部あるいは全部をハードウェアに置き換えるようにしてもよい。
【０１０２】
また、本発明の機能の一部または全部がコンピュータプログラムで実現される場合には、そのプログラムは、コンピュータ読み取り可能な記録媒体（例えば、一時的ではない記録媒体）に格納された形で提供することができる。プログラムは、提供時と同一または異なる記録媒体（コンピュータ読み取り可能な記録媒体）に格納された状態で、使用され得る。「コンピュータ読み取り可能な記録媒体」は、メモリーカードやＣＤ−ＲＯＭのような携帯型の記録媒体に限らず、各種ＲＯＭ等のコンピュータ内の内部記憶装置や、ハードディスクドライブ等のコンピュータに接続されている外部記憶装置も含んでいる。
【０１０３】
以上、実施例、変形例に基づき本発明について説明してきたが、上記した発明の実施の形態は、本発明の理解を容易にするためのものであり、本発明を限定するものではない。本発明は、その趣旨並びに特許請求の範囲を逸脱することなく、変更、改良され得ると共に、本発明にはその等価物が含まれる。
【符号の説明】
【０１０４】
１０、１０ｘ...原稿、１０Ｌ、１０ｘＬ、１０Ｒ、１０ｘＲ...領域、２０Ｌ、２０ｘＬ...左側スキャン画像、２０Ｒ、２０ｘＲ...右側スキャン画像、３０...合成画像、７０...インターネット、２００...複合機、２１０...ＣＰＵ、２２０...揮発性記憶装置、２２１...バッファ領域、２３０...不揮発性記憶装置、２３１...制御プログラム、２４０...プリンタ部、２５０...スキャナ部、２６０...操作部、２７０...表示部、２８０...通信部、４００...サーバ、４１０...ＣＰＵ、４２０...揮発性記憶装置、４２１...バッファ領域、４３０...不揮発性記憶装置、４３１...コンピュータプログラム、４８０...通信部、５００...パーソナルコンピュータ、１０００...画像処理システム、ＨＩＬ、ＨＩｘＬ...左側原稿画像、ＨＩＲ、ＨＩｘＲ...右側原稿画像、ＷＢＬ、ＷＢｘＬ、ＷＢＲ、ＷＢｘＲ...余白、ＳＰＴ、ＳＰＴｘ...特定部分画像、ｗ...処理済距離、Ｗ１...所定幅、Ａ１...処理済領域、ＣＡ、ＣＡｘ...中央部、ＰＡ、ＰＡ２...処理領域、ＳＢ...スキャンボタン、ＣＢ...キャンセルボタン、ＣＰ、ＣＰｘ...対応領域、ＴＰ...注目画素、Ｐａ、Ｐｂ、Ｐｃ、Ｐｄ...画素、Ｓｒ、Ｓｒｘ...辺（接合辺）、ＳＡ１...初期探索領域、ＳＡ２...修正済探索領域、ＲＡ１...基準領域、ＳＣ１...第１候補領域、ＳＣ２...第２候補領域、ＰＦ１...最遠部分、ＢＬ２...直線、ＭＳ１...メッセージ、ＵＰＡ...未処理領域、ＣＩＬ、ＣＩＲ...画像、ＮＰ、ＮＰａ、ＮＰｂ、ＮＰｃ、ＮＰｄ...枠
【図１】
2015228592.tif 000003
【図２】
2015228592.tif 000004
【図３】
2015228592.tif 000005
【図４】
2015228592.tif 000006
【図５】
2015228592.tif 000007
【図６】
2015228592.tif 000008
【図７】
2015228592.tif 000009
【図８】
2015228592.tif 000010
【図９】
2015228592.tif 000011
【図１０】
2015228592.tif 000012
【図１１】
2015228592.tif 000013
【図１２】
2015228592.tif 000014
【図１３】
2015228592.tif 000015
【図１４】
2015228592.tif 000016
【図１５】
2015228592.tif 000017
【図１６】
2015228592.tif 000018
【図１７】
2015228592.tif 000019
【図１８】
2015228592.tif 000020