(57)【要約】      （修正有）【課題】第１の画像と第２の画像との結合位置決定精度の低下を抑制する画像処理装置の提供。【解決手段】第１の画像と第２の画像を取得するＳ２５取得部と、第１の画像内の一部の領域である基準領域を決定するＳ３０基準領域決定部と、第２の画像内の一部の領域である探索領域を決定するＳ３５探索領域決定部と、基準領域内の複数個の対象画素と、探索領域内の複数個の対象画素と、の其々の成分値を修正するＳ４０修正部と、修正済みの複数個の対象画素を含む基準領域内の複数個の画素の成分値と、修正済みの複数個の対象画素を含む探索領域内の複数個の画素の成分値と、を用いて、基準領域に類似する探索領域内の類似領域を決定するＳ４５類似領域決定部と、第１の画像データと第２の画像データとを用いて、基準領域と類似領域とが重なるように、第１の画像と第２の画像とが結合された結合画像を表す結合画像データを生成するＳ５０生成部と、を備える。【選択図】図２
2015219791.tif 000002
【特許請求の範囲】
【請求項１】
画像処理装置であって、
第１の画像を表す第１の画像データと、第２の画像を表す第２の画像データと、を取得する取得部と、
前記第１の画像データを用いて、前記第１の画像内の一部の領域である基準領域を決定する基準領域決定部と、
前記第２の画像データを用いて、前記第２の画像内の一部の領域である探索領域を決定する探索領域決定部と、
対象画素と前記対象画素の周囲に配置されている複数個の周囲画素とを用いて、特定の表色系の成分を表す成分値であって前記対象画像の前記成分値を修正する修正部であって、前記基準領域内の複数個の前記対象画素と、前記探索領域内の複数個の前記対象画素と、のそれぞれの成分値を修正する、前記修正部と、
修正済みの複数個の前記対象画素を含む前記基準領域内の複数個の画素の成分値と、修正済みの複数個の前記対象画素を含む前記探索領域内の複数個の画素の成分値と、を用いて、前記基準領域に類似する前記探索領域内の類似領域を決定する類似領域決定部と、
前記第１の画像データと前記第２の画像データとを用いて、前記基準領域と前記類似領域とが重なるように、前記第１の画像と前記第２の画像とが結合された結合画像を表す結合画像データを生成する生成部と、
を備える画像処理装置。
【請求項２】
請求項１に記載の画像処理装置であって、
前記修正部は、前記対象画素の前記成分値を、前記対象画素の成分値と前記複数個の周囲画素のそれぞれの成分値とを用いて平滑化することで、前記対象画素の前記成分値を修正する、画像処理装置。
【請求項３】
請求項１または２に記載の画像処理装置であって、
前記修正部は、前記対象画素の成分値と前記複数個の周囲画素の成分値との平均値を修正後の前記対象画素の成分値として前記対象画素を修正する、画像処理装置。
【請求項４】
請求項１または２に記載の画像処理装置であって、
前記修正部は、前記対象画素の成分値と前記複数個の周囲画素の成分値とを値の順番に並べた場合に中央に位置する値を修正後の前記対象画素の成分値として前記対象画素を修正する、画像処理装置。
【請求項５】
請求項１〜４のいずれかに記載の画像処理装置であって、さらに、
前記第１の画像および前記第２の画像のうちの少なくとも一方の画像内のノイズのレベルを検出する検出部と、
１個の前記対象画素の成分値の修正に用いられる前記複数個の周囲画素の個数を、検出される前記ノイズのレベルが高いほど多くの個数に決定する個数決定部と、
を備える画像処理装置。
【請求項６】
請求項５に記載の画像処理装置であって、
前記第１の画像データおよび前記第２の画像データに含まれる複数個の画素の成分値は、それぞれ、特定の表色系の複数個の成分の成分値を含み、
前記検出部は、成分ごとに前記ノイズのレベルを検出し、
前記個数決定部は、成分ごとに、１個の前記対象画素の成分値の修正に用いられる前記複数個の周囲画素の個数を決定する、画像処理装置。
【請求項７】
請求項５または６に記載の画像処理装置であって、
前記第１の画像データおよび前記第２の画像データは、それぞれ、原稿を光学的に読み取ることによって得られ、
前記検出部は、第１の画像および前記第２の画像のうちの少なくとも一方の画像内の前記原稿を表す領域内の前記ノイズのレベルを検出する、画像処理装置。
【請求項８】
請求項５〜７のいずれかに記載の画像処理装置であって、
前記検出部は、前記第１の画像および前記第２の画像のうちの一方の画像内の前記ノイズのレベルを検出し、
前記個数決定部は、前記基準領域内の前記対象画素の成分値の修正に用いられる前記複数個の周囲画素の個数と、前記探索領域内の前記対象画素の成分値の修正に用いられる前記複数個の周囲画素と個数との両方を、前記第１の画像および前記第２の画像のうちの一方の画像内の前記ノイズのレベルに応じて決定する、画像処理装置。
【請求項９】
請求項１〜８のいずれかに記載の画像処理装置であって、さらに、
前記対象画素の周囲の複数個の候補画素の中から、前記対象画素の成分値を含む特定範囲内の成分値を有する画素を、前記対象画素の成分値の修正に用いられる前記複数個の周囲画素として決定する画素決定部を備える、画像処理装置。
【請求項１０】
請求項１〜９のいずれかに記載の画像処理装置であって、
前記基準領域決定部は、前記第１の画像内の複数個の画素の成分値のばらつきに基づいて、前記基準領域を決定する、画像処理装置。
【請求項１１】
請求項１〜１０のいずれかに記載の画像処理装置であって、
前記第１の画像データは、原稿の第１の領域を光学的に読み取ることによって得られる画像データであり、
前記第２の画像データは、前記原稿の第２の領域を光学的に読み取ることによって得られる画像データである、画像処理装置。
【請求項１２】
コンピュータプログラムあって、
第１の画像を表す第１の画像データと、第２の画像を表す第２の画像データと、を取得する取得機能と、
前記第１の画像データを用いて、前記第１の画像内の一部の領域である基準領域を決定する基準領域決定機能と、
前記第２の画像データを用いて、前記第２の画像内の一部の領域である探索領域を決定する探索領域決定機能と、
対象画素と前記対象画素の周囲に配置されている複数個の周囲画素とを用いて、特定の表色系の成分を表す成分値であって前記対象画像の前記成分値を修正する修正機能であって、前記基準領域内の複数個の前記対象画素と、前記探索領域内の複数個の前記対象画素と、のそれぞれの成分値を修正する、前記修正機能と、
修正済みの複数個の前記対象画素を含む前記基準領域内の複数個の画素の成分値と、修正済みの複数個の前記対象画素を含む前記探索領域内の複数個の画素の成分値と、を用いて、前記基準領域に類似する前記探索領域内の類似領域を決定する類似領域決定機能と、
前記第１の画像データと前記第２の画像データとを用いて、前記基準領域と前記類似領域とが重なるように、前記第１の画像と前記第２の画像とが結合された結合画像を表す結合画像データを生成する生成機能と、
をコンピュータに実現させるコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、第１の画像と第２の画像とが結合された画像を表す画像データを生成する技術に関する。
【背景技術】
【０００２】
第１の画像と第２の画像とが結合された画像を表す結合画像データを生成する技術が知られている。例えば、特許文献１に開示された技術では、一度には読み取れない大きさの原稿を、スキャナを用いて２回に分けて読み取ることによって、第１の画像を表すスキャンデータと、第２の画像を表すスキャンデータと、が取得される。そして、２個のスキャンデータを用いて、第１の画像と第２の画像とが結合された結合画像を表す結合画像データが生成される。第１の画像と第２の画像とを結合する位置は、パターンマッチングを用いて決定される。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開平４−２９００６６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、上記技術では、例えば、スキャンする際にスキャナのイメージセンサによる読取時のムラなどの様々な要因に起因して発生するノイズが、第１の画像や第２の画像内に含まれる場合について考慮されていなかった。この結果、第１の画像や第２の画像内に含まれるノイズに起因して、第１の画像と第２の画像との結合位置を決定する精度が低下する可能性があった。
【０００５】
本発明は、第１の画像と第２の画像とが結合された結合画像を表す結合画像データを生成する際に、第１の画像と第２の画像との結合位置を決定する精度の低下を抑制することを目的とする。
【課題を解決するための手段】
【０００６】
本発明は、上述の課題の少なくとも一部を解決するためになされたものであり、以下の適用例として実現することが可能である。
【０００７】
［適用例１］画像処理装置であって、第１の画像を表す第１の画像データと、第２の画像を表す第２の画像データと、を取得する取得部と、前記第１の画像データを用いて、前記第１の画像内の一部の領域である基準領域を決定する基準領域決定部と、前記第２の画像データを用いて、前記第２の画像内の一部の領域である探索領域を決定する探索領域決定部と、対象画素と前記対象画素の周囲に配置されている複数個の周囲画素とを用いて、特定の表色系の成分を表す成分値であって前記対象画像の前記成分値を修正する修正部であって、前記基準領域内の複数個の前記対象画素と、前記探索領域内の複数個の前記対象画素と、のそれぞれの成分値を修正する、前記修正部と、修正済みの複数個の前記対象画素を含む前記基準領域内の複数個の画素の成分値と、修正済みの複数個の前記対象画素を含む前記探索領域内の複数個の画素の成分値と、を用いて、前記基準領域に類似する前記探索領域内の類似領域を決定する類似領域決定部と、前記第１の画像データと前記第２の画像データとを用いて、前記基準領域と前記類似領域とが重なるように、前記第１の画像と前記第２の画像とが結合された結合画像を表す結合画像データを生成する生成部と、を備える画像処理装置。
【０００８】
上記構成によれば、対象画素と周囲の画素とを用いて修正済みの画素を含む基準領域内の複数個の画素の成分値と、対象画素と周囲の画素とを用いて修正済みの画素を含む探索領域内の複数個の画素の成分値と、を用いて、類似領域が決定される。この結果、類似領域が決定される際に、基準領域や探索領域に含まれるノイズの影響を低減し得る。従って、第１の画像と第２の画像との結合位置を決定する精度の低下を抑制することができる。
【０００９】
なお、本発明は、種々の形態で実現することが可能であり、例えば、画像読取装置、画像処理装置や画像読取装置の制御方法、これらの装置または方法を実現するためのコンピュータプ口グラム、そのコンピュータプログラムを記録した記録媒体、等の形態で実現することができる。
【図面の簡単な説明】
【００１０】
【図１】実施例における画像処理システムの構成を示すブロック図である。
【図２】画像処理システム１０００の動作を示すシーケンス図である。
【図３】本実施例で用いられる原稿の一例を示す図である。
【図４】ＵＩ画面の一例を示す図である。
【図５】スキャン画像の一例を示す図である。
【図６】結合画像３０の一例を示す図である。
【図７】基準領域決定処理のフローチャートである。
【図８】ばらつき画素と非ばらつき画素とを説明する図である。
【図９】平滑化処理のフローチャートである。
【図１０】ウインドウサイズ決定処理のフローチャートである。
【図１１】スキャン画像内のノイズについて説明する図である。
【図１２】画素値修正処理のフローチャートである。
【図１３】注目画素ＴＰａを中心に縦５画素×横５画素のウインドウＷｄが配置された様子を示す図である。
【図１４】類似領域決定処理のフローチャートである。
【発明を実施するための形態】
【００１１】
Ａ．実施例：
Ａ−１：画像処理システム１０００の構成
図１は、実施例における画像処理システムの構成を示すブロック図である。画像処理システム１０００は、画像処理装置としてのサーバ４００と、複合機２００と、を備えている。サーバ４００は、インターネット７０に接続されており、複合機２００は、ＬＡＮ（Local Area Networkの略称）８０を介して、インターネット７０に接続されている。この結果、サーバ４００と複合機２００は、ＬＡＮ８０とインターネット７０とを介して、通信可能である。また、ＬＡＮ８０には、複合機２００のユーザのパーソナルコンピュータ５００が接続されていても良い。
【００１２】
サーバ４００は、サーバ４００のコントローラの一例としてのＣＰＵ４１０と、ＤＲＡＭなどの揮発性記憶装置４２０と、ハードディスクドライブやフラッシュメモリなどの不揮発性記憶装置４３０と、インターネット７０などのネットワークに接続するためのインタフェースを含む通信部４８０と、を備えている。揮発性記憶装置４２０には、ＣＰＵ４１０が処理を行う際に生成される種々の中間データを一時的に格納するバッファ領域４２１が設けられている。不揮発性記憶装置４３０には、コンピュータプログラム４３１と、ＵＩデータ群４３３と、が格納されている。
【００１３】
コンピュータプログラム４３１、および、ＵＩデータ群４３３は、例えば、サーバ４００の管理者によって、インターネット７０を介してサーバ４００にアップロードされることにより、サーバ４００にインストールされる。または、コンピュータプログラム４３１、および、ＵＩデータ群４３３は、例えば、ＤＶＤ−ＲＯＭなどに格納された形態で提供され、サーバ４００の管理者によって、サーバ４００にインストールされても良い。ＣＰＵ４１０は、コンピュータプログラム４３１を実行することにより、後述する画像処理を実現する。
【００１４】
複合機２００は、複合機２００のコントローラの一例としてのＣＰＵ２１０と、ＤＲＡＭなどの揮発性記憶装置２２０と、フラッシュメモリやハードディスクドライブなどの不揮発性記憶装置２３０と、プリンタ部２４０と、スキャナ部２５０と、タッチパネルやボタンなどの操作部２６０と、液晶ディスプレイなどの表示部２７０と、外部機器と通信を行う通信部２８０と、を備えている。例えば、通信部２８０は、ＬＡＮ８０などのネットワークに接続するためのインタフェースや、ＵＳＢメモリなどの外部記憶装置と接続するためのインタフェースを含んでいる。
【００１５】
揮発性記憶装置２２０には、ＣＰＵ２１０が処理を行う際に生成される種々のデータを一時的に格納するバッファ領域２２１が設けられている。不揮発性記憶装置２３０には、制御プログラム２３１が格納されている。
【００１６】
プリンタ部２４０は、インクジェット方式やレーザー方式などの印刷方式を用いて印刷を実行する。スキャナ部２５０は、ＣＣＤやＣＭＯＳなどの光電変換素子を用いて光学的に原稿を読み取ることによってカラー画像やグレー画像を表すスキャンデータを生成する。スキャナ部２５０は、いわゆるフラットベッド式の原稿台を備えている。なお、原稿台の長手方向の長さは、ＩＳＯ（International Organization for Standardizationの略称）２１６で定められている紙の寸法を規定するＡ４サイズの長手方向の長さである２９７ｍｍより少しだけ（例えば、数センチ）長い。そして、原稿台の短手方向の長さは、ＡＮＳＩ／ＡＳＭＥ（American National Standards Institute／American Society of Mechanical Engineersの略称）Ｙ１４．１で定められている紙の寸法を規定するレターサイズの短手方向の長さである２１５．９ｍｍより少しだけ（例えば、数センチ）長い。すなわち、本実施例では、１回で読み取ることができる原稿の最大サイズは、Ａ４サイズより大きくＡ３サイズより小さいサイズである。なお、Ａ３サイズとは、ＩＳＯ２１６で定められている紙の寸法である。具体的には、スキャナ部２５０は、長手方向の長さがＡ４サイズの長手方向の長さより少しだけ長く、かつ、短手方向の長さがレターサイズの短手方向の長さより少しだけ長い領域を読み取り、当該領域の画像を表すスキャンデータを生成する。このために、後述するように、例えば、Ａ３サイズの原稿の長手方向の中央付近が重複するように、Ａ３サイズの原稿を２回に分けて読み取ることができる。
【００１７】
ＣＰＵ２１０は、制御プログラム２３１を実行することにより、複合機２００の制御を実行する。例えば、ＣＰＵ２１０は、プリンタ部２４０やスキャナ部２５０を制御して、コピー処理、印刷処理、スキャン処理などを実行する。さらに、ＣＰＵ２１０は、サーバ４００にアクセスして、サーバ４００が提供するサービスを利用するサービス利用処理を、実行することができる。
【００１８】
Ａ−２：画像処理システム１０００の動作
図２は、画像処理システム１０００の動作を示すシーケンス図である。このシーケンス図の処理は、複合機２００が、サーバ４００が提供する画像生成サービスの利用指示を、ユーザから受け付けた場合に開始される。この画像生成サービスは、詳細は後述するが、複数個のスキャンデータによって表される複数個のスキャン画像を結合するサービスである。複数個のスキャンデータは、詳細は後述するが、例えば、１回で読み取り可能なサイズより大きなサイズの原稿を、複数回に分けて読み取ることによって生成される。
【００１９】
処理が開始されると、Ｓ５では、複合機２００のＣＰＵ２１０は、サービス開始要求を、サーバ４００に対して送信する。サーバ４００のＣＰＵ４１０は、サービス開始要求を受信すると、図１に示されるＵＩデータ群４３３から画像生成サービスの提供に必要なＵＩデータを選択し、Ｓ１０にて、該ＵＩデータを複合機２００に対して送信する。ＵＩデータは、具体的には、ユーザインタフェース画面（以下、ＵＩ画面とも呼ぶ）を表す画面データと、制御データと、を含む。この制御データは、例えば、ＵＩ画面を利用して複合機２００が後述するＳ１５のスキャン処理などの所定の処理を行うために必要な各種のデータを含む。例えば、制御データは、ＵＩ画面（例えば、図４）を介して受け付けたユーザの指示に基づいて、サーバ４００へのスキャンデータの送信などの複合機２００が実行すべき処理を行うために必要な情報、例えば、スキャンデータの送信先アドレスなどを含む。
【００２０】
Ｓ１５では、ＣＰＵ２１０は、受信したＵＩデータに基づいて、複数個のスキャンデータを生成するスキャン処理を実行する。スキャン処理では、ＣＰＵ２１０は、ユーザが用意した原稿を２回に分けて読み取ることによって、２個のスキャンデータを生成する。本実施例のスキャンデータは、例えば、０〜２５５の２５６階調の値で表されるＲＧＢの各成分の成分値を画素ごとに含むＲＧＢ画像データである。
【００２１】
図３は、本実施例で用いられる原稿の一例を示す図である。図３の原稿１０のサイズは、スキャナ部２５０が１回で読み取り可能なサイズ（本実施例では、Ａ４サイズより少し大きなサイズ）の約２倍のサイズ（本実施例では、Ａ３サイズ）である。
【００２２】
図４は、ＵＩ画面の一例を示す図である。先ず、ＣＰＵ２１０は、図４のＵＩ画面ＵＧ１を表示部２７０に表示する。例えば、ＵＩ画面ＵＧ１は、原稿台への原稿１０の適切な設置を促すメッセージＭＳ１と、スキャンボタンＳＢと、キャンセルボタンＣＢと、を含んでいる。ユーザは、ＵＩ画面ＵＧ１に従って、図３に示される原稿１０の左側の約半分の領域１０Ｌを読み取ることができるように、原稿１０を原稿台に設置し、スキャンボタンＳＢを押下する。スキャンボタンＳＢの押下に応じて、ＣＰＵ２１０は、スキャナ部２５０を制御して原稿を読み取ることによって、左側スキャンデータを生成する。
【００２３】
図５は、スキャン画像の一例を示す図である。図５（Ａ）には、左側スキャンデータによって表される左側スキャン画像２０Ｌが示されている。左側スキャン画像２０Ｌは、原稿１０の左側の領域１０Ｌ（図３）を示す左側原稿画像ＨＩＬと、余白ＷＢＬと、を含んでいる。
【００２４】
次に、ＣＰＵ２１０は、所定のＵＩ画面（図示省略）を表示部２７０に表示する。このＵＩ画面は、ＵＩ画面ＵＧ１と同様に、原稿台への原稿１０の適切な設置を促すメッセージと、スキャンボタンと、キャンセルボタンと、を含んでいる。ユーザは、ＵＩ画面に従って、図３に示される原稿１０の右側の約半分の領域１０Ｒを読み取ることができるように、原稿１０を原稿台に設置し、スキャンボタンを押下する。ＣＰＵ２１０は、スキャンボタンの押下に応じて、スキャナ部２５０を制御して原稿を読み取ることによって、右側スキャンデータを生成する。
【００２５】
図５（Ｂ）には、右側スキャンデータによって表される右側スキャン画像２０Ｒが示されている。右側スキャン画像２０Ｒは、図３に示される原稿１０の右側の領域１０Ｒを示す右側原稿画像ＨＩＲと、余白ＷＢＲと、を含んでいる。
【００２６】
ここで、図３の原稿１０の横方向の中央部ＣＡを表す画像は、左側スキャン画像２０Ｌの右辺に沿った領域と、右側スキャン画像２０Ｒの左辺に沿った領域と、の両方に含まれている。すなわち、左側スキャン画像２０Ｌと右側スキャン画像２０Ｒは、ともに、原稿１０の中央部ＣＡを表す画像を含んでいる。これは、例えば、ＵＩ画面や複合機２００の説明書などによって、原稿１０の中央部ＣＡが、右側スキャンデータの生成時と左側スキャンデータの生成時との両方で読み取られるように、原稿１０を原稿台に設置するように、ユーザに指示することによって、実現される。なお、左側スキャン画像２０Ｌ内の中央部ＣＡを表す画像と、右側スキャン画像２０Ｒ内の中央部ＣＡを表す画像とは、類似しているが、ユーザによって原稿台に設置された原稿１０の位置、スキャナ部２５０の光電変換素子の特性などによって多少の差は生じ得るので、完全に一致しているわけではない。
【００２７】
図２のＳ２０では、ＣＰＵ２１０は、右側スキャン画像２０Ｒを表す右側スキャンデータと、左側スキャン画像２０Ｌを表す左側スキャンデータと、をサーバ４００に対して送信する。この結果、Ｓ２５にて、サーバ４００のＣＰＵ４１０は、右側スキャンデータと、左側スキャンデータと、取得して、バッファ領域４２１に格納する。
【００２８】
Ｓ３０では、ＣＰＵ４１０は、右側スキャンデータを用いて、基準領域決定処理を実行する。基準領域決定処理は、右側スキャンデータによって表される右側スキャン画像２０Ｒの一部の領域である、図５（Ｂ）に示される基準領域ＳＰを決定する処理である。なお、基準領域決定処理の詳細は、後述する。
【００２９】
Ｓ３５では、ＣＰＵ４１０は、左側スキャンデータによって表される左側スキャン画像２０Ｌ内に、図５（Ａ）に示される探索領域ＳＡを決定する。探索領域ＳＡは、予め定められた領域である。図５（Ａ）の探索領域ＳＡの縦方向の長さは、例えば、左側スキャン画像２０Ｌの縦方向の全長に等しい。探索領域ＳＡの左右方向の長さは、例えば、左側スキャン画像２０Ｌの左右方向の長さの２０％〜５０％である。探索領域ＳＡは、例えば、左側スキャン画像２０Ｌの右辺と、上辺の右側の部分と、下辺の右側の部分と、を含む領域である。
【００３０】
Ｓ４０では、ＣＰＵ４１０は、平滑化処理を実行する。平滑化処理は、右側スキャン画像２０Ｒ内の基準領域ＳＰ内の画像と、左側スキャン画像２０Ｌ内の探索領域ＳＡ内の画像と、に対して実行される。平滑化処理によって、基準領域ＳＰ内の画像内、および、探索領域ＳＡ内の画像内のノイズが低減される。平滑化処理の詳細は、後述する。
【００３１】
Ｓ４５では、ＣＰＵ４１０は、類似領域決定処理を実行する。類似領域決定処理は、右側スキャン画像２０Ｒ内の基準領域ＳＰに類似する類似領域ＣＰを、左側スキャン画像２０Ｌ内の探索領域ＳＡ内から決定する処理である。基準領域ＳＰに類似する類似領域ＣＰは、次のように定義できる。図５（Ｂ）に示される右側スキャン画像２０Ｒ内の基準領域ＳＰ内に表されている原稿１０の一部分を、図３に示される特定部分ＳＰＴとする。類似領域ＣＰは、左側スキャン画像２０Ｌにおいて、原稿１０の特定部分ＳＰＴを表す領域である。類似領域決定処理は、平滑化処理が実行された後の基準領域内の画像を表す画像データと、平滑化処理が実行された後の探索領域ＳＡ内の画像を表す画像データと、を用いて実行される。なお、類似領域決定処理の詳細は、後述する。
【００３２】
Ｓ５０では、ＣＰＵ４１０は、結合処理を実行する。結合処理では、右側スキャンデータと左側スキャンデータとを用いて、右側スキャン画像２０Ｒ内の右側原稿画像ＨＩＲと、左側スキャン画像２０Ｌ内の左側原稿画像ＨＩＬとが結合された結合画像３０を表す結合画像データが生成される。
【００３３】
図６は、結合画像３０の一例を示す図である。図６に示すように、結合画像３０において、右側原稿画像ＨＩＲと左側原稿画像ＨＩＬとは、右側原稿画像ＨＩＲ内の基準領域ＳＰと、左側原稿画像ＨＩＬ内の類似領域ＣＰと、が重なるように、結合される。結合画像３０において、右側原稿画像ＨＩＲと左側原稿画像ＨＩＬとが互いに重なり合う領域内の画素の成分値には、例えば、右側原稿画像ＨＩＲ（すなわち、右側スキャン画像２０Ｒ）内の画素の成分値が優先的に採用される。これによって、右側原稿画像ＨＩＲと左側原稿画像ＨＩＬとが結合されて、図３の原稿１０を表す結合画像３０が生成される。
【００３４】
なお、後述する類似領域決定処理において、基準領域ＳＰに類似する類似領域ＣＰを決定できなかった場合には、例えば、機械的に、左側スキャン画像２０Ｌの右端の辺と、右側スキャン画像２０Ｒの左端の辺と、が接するように、２個のスキャン画像が結合された結合画像を表す結合画像データが生成される（図示省略）。
【００３５】
図２のＳ５５では、ＣＰＵ４１０は、生成された結合画像データを複合機２００に対して送信する。複合機２００のＣＰＵ２１０は、結合画像データを受信すると、受信した結合画像データを不揮発性記憶装置２３０に格納するとともに、ユーザに結合画像データを受信したことを通知する。結合画像データは、ユーザの利用に供される。例えば、複合機２００は、ユーザの指示に基づいて、結合画像データを用いて、結合画像３０を印刷することができる。
【００３６】
以上説明した画像処理システム１０００によれば、図３に示される一の原稿１０からそれぞれ別の領域を読み取ることによって得られる複数個の画像データ、具体的には、右側スキャンデータと左側スキャンデータとを用いて、一の原稿１０を表す結合画像データを生成することができる。
【００３７】
Ａ−３．基準領域決定処理
次に、図２のＳ３０で示した基準領域決定処理を説明する。図７は、基準領域決定処理のフローチャートである。Ｓ１０５では、ＣＰＵ４１０は、右側スキャン画像２０Ｒ内に、配置範囲ＦＡを決定する。決定された配置範囲ＦＡの内側に、基準領域決定処理によって、基準領域ＳＰが決定される。配置範囲ＦＡは、図５（Ｂ）に示す予め定められた範囲に設定される。配置範囲ＦＡは、図５（Ｂ）に示すように、右側スキャン画像２０Ｒの左辺に沿って配置されている。配置範囲ＦＡは、右側スキャン画像２０Ｒ内において、原稿１０の中央部ＣＡを表す領域内に配置されることが好ましい。
【００３８】
Ｓ１１０では、ＣＰＵ４１０は、基準領域ＳＰのサイズおよび形状を決定する。本実施例では、基準領域ＳＰは、予め定められたサイズの矩形に決定される。具体的には、基準領域ＳＰの横方向のサイズは、例えば、５画素〜２０画素程度であり、基準領域ＳＰの縦方向のサイズは、右側スキャン画像２０Ｒの縦方向の画素数の１／４〜１／２程度である。
【００３９】
Ｓ１１５では、ＣＰＵ４１０は、配置範囲ＦＡ内の複数個の候補領域ＮＰＡのそれぞれのばらつき画素数ＶＣを算出する。図５（Ｂ）には、配置範囲ＦＡ内に、１個の候補領域ＮＰＡ１が図示されている。候補領域ＮＰＡ１のサイズおよび形状は、Ｓ１１０にて決定された基準領域ＳＰのサイズおよび形状と同じである。候補領域ＮＰＡ１のサイズおよび形状は、Ｓ１１０にて決定された基準領域ＳＰのサイズおよび形状と同じである。配置範囲ＦＡ内には、図５（Ｂ）の候補領域ＮＰＡ１を縦方向や横方向に１画素刻みで移動させることで、複数個の候補領域ＮＰＡが配置可能であることが解る。Ｓ１１５では、配置範囲ＦＡ内に配置可能な全ての候補領域ＮＰＡのそれぞれについて、候補領域ごとにばらつき画素数ＶＣが算出される。
【００４０】
一の候補領域ＮＰＡのばらつき画素数ＶＣの算出方法は、以下の通りである。先ず、ＣＰＵ４１０は、一の候補領域ＮＰＡ内の複数個の画素を、２種類の画素、すなわち、ばらつき画素と、非ばらつき画素と、に分類する。
【００４１】
図８は、ばらつき画素と非ばらつき画素とを説明する図である。ＣＰＵ４１０は、一の候補領域ＮＰＡ内の複数個の画素を１個ずつ注目画素ＴＰとして選択して、注目画素ＴＰがばらつき画素であるか非ばらつき画素であるかを判断する。具体的には、図８に示すように、ＣＰＵ４１０は、注目画素ＴＰを中心とする横３画素×３画素分の領域ＦＬ内の画素を用いて、当該判断を実行する。まず、図８の式に示すように、ＣＰＵ４１０は、注目画素ＴＰの成分値（Ｒ０、Ｇ０、Ｂ０）と、周囲の８個の画素の成分値（Ｒｎ、Ｇｎ、Ｂｎ）のそれぞれと、の差分ΔＶｎを算出する。ｎは、図８の領域ＦＬ内に示すように、注目画素の周囲の８個の画素を識別する１〜８までの番号である。ΔＶｎは、図８に式で示すように、３種類の成分値の差分の絶対値の和で表される。ＣＰＵ４１０は、図８に式で示すように、算出された８個の差分ΔＶｎの合計値を、注目画素ＴＰのばらつき値Ｖとして算出する。
【００４２】
注目画素ＴＰのばらつき値Ｖが、所定の閾値Ｖｔｈ以上である場合には、注目画素ＴＰは、ばらつき画素であると判断される。注目画素ＴＰのばらつき値Ｖが、所定の閾値Ｖｔｈ未満である場合には、注目画素ＴＰは、非ばらつき画素であると判断される。これによって、一の候補領域ＮＰＡ内の全ての画素が、ばらつき画素と非ばらつき画素とのいずれかに分類される。
【００４３】
ＣＰＵ４１０は、一の候補領域ＮＰＡ内のばらつき画素の個数を、当該一の候補領域のばらつき画素数ＶＣとして算出する。
【００４４】
全ての候補領域ＮＰＡについて、ばらつき画素数ＶＣが算出されると、Ｓ１２０では、ＣＰＵ４１０は、全ての候補領域ＮＰＡのうち、ばらつき画素数ＶＣが最大である１個の候補領域を、基準領域ＳＰとして決定する。図５（Ｂ）には、右側スキャン画像２０Ｒの配置範囲ＦＡ内に決定された基準領域ＳＰが図示されている。なお、右側スキャン画像２０Ｒ内の余白ＷＢＲは、ばらつきが少ない領域であるので、基準領域ＳＰは、余白ＷＢＲではなく、右側原稿画像ＨＩＲ内に決定される。
【００４５】
Ａ−４．平滑化処理
次に、図２のＳ４０の平滑化処理を説明する。図９は、平滑化処理のフローチャートである。Ｓ２００では、ＣＰＵ４１０は、画素の成分値の修正に用いられるウインドウサイズ（以下、使用ウインドウサイズとも呼ぶ）を決定するウインドウサイズ決定処理を実行する。なお、使用ウインドウサイズは、例えば、スキャン画像の解像度が縦３００ｄｐｉ×横３００ｄｐｉである場合には、縦３画素×横３画素、縦５画素×横５画素、縦７画素×横７画素縦、縦９画素×横９画素の４種類の正方形のウインドウサイズの中から決定される。すなわち、下限サイズは、縦３画素×横３画素であり、上限サイズは、縦９画素×横９画素である。スキャン画像の解像度が大きくなるほど、上限サイズを大きくすることが可能である。ウインドウサイズ決定処理は、図５（Ｂ）に示される右側スキャン画像２０Ｒを表す右側スキャンデータを用いて、実行される。なお、ウインドウサイズ決定処理は、図５（Ａ）に示される左側スキャン画像２０Ｌを表す左側スキャンデータを用いて、実行されても良い。ウインドウサイズ決定処理の詳細は後述する。
【００４６】
Ｓ２１０では、決定された使用ウインドウサイズを有するウインドウを用いて、右側スキャン画像２０Ｒの基準領域ＳＰ内の画像に対する画素値修正処理が実行される。Ｓ２２０では、決定された使用ウインドウサイズを有するウインドウを用いて、左側スキャン画像２０Ｌ内の探索領域ＳＡ内の画像に対する画素値修正処理が実行される。画素値修正処理は、処理対象の画像、すなわち、基準領域ＳＰ内の画像、および、探索領域ＳＡ内の画像に含まれるノイズを低減するように、処理対象の画像内の複数個の画素の成分値を修正する処理である。以上の説明から解るように、平滑化処理によって、類似領域決定処理に先だって、基準領域ＳＰ内の画像、および、探索領域ＳＡ内の画像のノイズが低減される。
【００４７】
次に、Ｓ２００のウインドウサイズ決定処理について説明する。図１０は、ウインドウサイズ決定処理のフローチャートである。Ｓ３００では、ＣＰＵ４１０は、右側スキャン画像２０Ｒ内の原稿領域を特定する。原稿領域は、右側スキャン画像２０Ｒ内の原稿１０の一部を表す領域である。具体的には、原稿領域は、図５（Ｂ）の右側スキャン画像２０Ｒ内の右側原稿画像ＨＩＲの領域であり、右側スキャン画像２０Ｒから余白ＷＢＲを除いた領域とも言うことができる。例えば、ＣＰＵ４１０は、公知のエッジ抽出フィルタを用いて、右側スキャン画像２０Ｒ内のエッジを検出する。この結果、右側スキャン画像２０Ｒ内には、右側原稿画像ＨＩＲの外縁を示すエッジや、右側原稿画像ＨＩＲ内のオブジェクトのエッジが検出される。右側スキャン画像２０Ｒ内の余白ＷＢＲには、エッジは検出されない。ＣＰＵ４１０は、例えば、右側スキャン画像２０Ｒ内に検出されたエッジを全て含む矩形領域を、原稿領域として特定する。なお、原稿領域の特定の手法は、一例であり、他の手法を用いて原稿領域が特定されても良い。
【００４８】
Ｓ３０５では、ＣＰＵ４１０は、ＲＧＢの３つのレイヤー、すなわち、Ｒレイヤー、Ｇレイヤー、Ｂレイヤーの中から、処理の対象とする１個の注目レイヤーを選択する。
【００４９】
Ｓ３１０では、ＣＰＵ４１０は、ウインドウサイズを下限サイズに設定する。下限サイズは、上述したように、本実施例では、縦３画素×横３画素のサイズである。
【００５０】
Ｓ３１５では、ＣＰＵ４１０は、Ｓ３００で特定された原稿領域内の端部にウインドウを設定する。例えば、図５（Ｂ）に示すように、先ず、原稿領域、すなわち、右側原稿画像ＨＩＲの領域の右上の角の座標を基準とした所定の位置に、最大のウインドウサイズの領域ＲＦＡ、すなわち、縦９画素×横９画素の領域ＲＦＡが設定される。そして、領域ＲＦＡの中心の画素を中心として、現在のウインドウサイズのウインドウが設定される。例えば、初回のＳ３１５では、下限サイズ、すなわち、縦３画素×横３画素のサイズのウインドウが領域ＲＦＡ内に設定される。
【００５１】
Ｓ３２０では、ＣＰＵ４１０は、設定されたウインドウ内の差分平均値ＡＶ（Ｍ）を算出する。差分平均値ＡＶ（Ｍ）は、例えば、注目レイヤーがＲレイヤーである場合には、換言すれば、注目する成分がＲ成分である場合には、以下の式（１）を用いて算出される。
【００５２】
【数１】
2015219791.tif 000003
【００５３】
ここで、Ｍは、設定されるウインドウ内に含まれる画素の総数である。Ｍは、本実施例では、設定されるウインドウのサイズに応じて、９、２５、４９、８１のいずれかの値を取る。例えば、設定されるウインドウのサイズが縦３画素×横３画素である場合には、Ｍ＝９である。Ｒａｖｅは、ウインドウ内のＭ個の画素のＲ成分の成分値の平均値である。ｍは、ウインドウ内のＭ個の画素を識別する１〜Ｍの番号である。Ｒｍは、ウインドウ内のｍ番目の画素のＲ成分の成分値である。差分累計値ＴＶ（Ｍ）は、Ｍ個のＲ成分の成分値（Ｒｍ）のそれぞれと平均値Ｒａｖｅとの差分の絶対値の合計である。差分平均値ＡＶ（Ｍ）は、差分累計値ＴＶ（Ｍ）を１画素あたりの値に正規化した値である。差分平均値ＡＶ（Ｍ）は、Ｍ個の画素を含むウインドウ内の画素の成分値のばらつきを示す値である、と言うことができる。
【００５４】
Ｓ３２５では、ＣＰＵ４１０は、差分平均値ＡＶ（Ｍ）は、収束条件を満たすか否かを判断する。収束条件は、例えば、差分平均値ＡＶ（Ｍ）と、１段階小さなウインドウサイズについて算出された差分平均値ＡＶ（Ｍ'）との差分（ＡＶ（Ｍ）−ＡＶ（Ｍ'））の絶対値が、閾値ＴＨ１以下である場合に、満たされる。例えば、設定されるウインドウサイズが縦３画素×横３画素でありＭ＝９である下限サイズである場合には、１段階小さなウインドウサイズについて算出された差分平均値ＡＶ（Ｍ'）が存在しないので、収束条件は満たされないと判断される。設定されるウインドウのサイズが縦５画素×横５画素でありＭ＝２５である場合には、差分平均値ＡＶ（２５）と、縦３画素×横３画素でありＭ＝９である１段階前のウインドウサイズについて算出された差分平均値ＡＶ（９）との差分（ＡＶ（２５）−ＡＶ（９））の絶対値が、閾値ＴＨ１以下である場合に、収束条件が満たされると判断される。なお、収束条件は、一例であり、これに限られない。収束条件は、（ＡＶ（Ｍ）−ＡＶ（Ｍ'））の絶対値が、閾値ＴＨ１以下であることが、複数回（例えば、２回）連続した場合に、満たされても良い。
【００５５】
収束条件が満たされた場合には（Ｓ３２５：ＹＥＳ）、Ｓ３３０にて、ＣＰＵ４１０は、現在のウインドウサイズより１段階小さなウインドウサイズを、使用ウインドウサイズとして決定する。
【００５６】
収束条件が満たされない場合には（Ｓ３２５：ＮＯ）、Ｓ３３５にて、ＣＰＵ４１０は、現在のウインドウサイズが上限サイズであるか否かを判断する。上述したように、本実施例では、上限サイズは、縦９画素×横９画素のサイズである。現在のウインドウサイズが上限サイズである場合には（Ｓ３３５：ＹＥＳ）、Ｓ３４０にて、ＣＰＵ４１０は、上限サイズを使用ウインドウサイズとして決定する。現在のウインドウサイズが上限サイズではない場合には（Ｓ３３５：ＮＯ）、Ｓ３４５にて、ＣＰＵ４１０は、現在のウインドウサイズを１段階拡大して、Ｓ３１５に戻る。
【００５７】
注目レイヤーについて使用ウインドウサイズが決定されると、Ｓ３５０にて、ＣＰＵ４１０は、全レイヤーを注目レイヤーとして選択したか否かを判断する。未選択のレイヤーがある場合には（Ｓ３５０：ＮＯ）、ＣＰＵ４１０は、Ｓ３０５に戻って、未選択レイヤーを注目レイヤーとして選択する。未選択のレイヤーがない場合には（Ｓ３５０：ＹＥＳ）、すなわち、全てのレイヤーについて使用ウインドウサイズが決定されると、ＣＰＵ４１０は、ウインドウサイズ決定処理を終了する。
【００５８】
図１１は、スキャン画像内のノイズについて説明する図である。右側スキャン画像２０Ｒや左側スキャン画像２０Ｌなどのスキャン画像の均一領域には、例えば、図１１（Ａ）や図１１（Ｂ）に概念的に示すようなノイズが存在し得る。ここで均一領域は、スキャン画像の作成に用いられた原稿において、観察者が見た場合に、単一色の領域であると認識する領域である。例えば、均一領域は、背景を表す領域や、オブジェクトの内部の実質的に単一色に印刷された領域を含む。このようなノイズは、紙の繊維などに起因する用紙のムラ、単一色に印刷された領域に含まれる微少なドットや干渉縞、スキャナのイメージセンサによる読取時のムラなどの様々な要因に起因して、発生し得る。このようなノイズは、例えば、図１１（Ａ）のように、比較的、ピーク高さのばらつきが少ないホワイトノイズを含み得る。また、例えば、図１１（Ｂ）のように、ホワイトノイズに加えて、ホワイトノイズよりピークの高いノイズを、周期的に、あるいは、不規則に、含み得る。例えば、ホワイトノイズは、イメージセンサによる読取時のムラに起因して発生し得る。また、ホワイトノイズよりピークの高いノイズは、用紙のムラに起因して発生し得る。
【００５９】
上述したウインドウサイズ決定処理において、図５（Ｂ）に示されるサンプリングされる領域ＲＦＡは、原稿領域内の端部の近傍に位置しているので、背景を表す均一領域である可能性が高い。この結果、ウインドウサイズ決定処理では、均一領域におけるノイズの特性を適切に評価して、ウインドウサイズを決定できる。
【００６０】
具体的には、図１１（Ａ）に示すように、領域ＲＦＡ内のノイズが、比較的ピーク高さのばらつきが小さい特性を有する場合には、ウインドウサイズが比較的小さい場合であっても比較的大きい場合であっても、差分平均値ＡＶ（Ｍ）は、比較的一定の値になる。したがって、図１１（Ａ）に示すノイズ特性である場合には、サンプリングに用いられるウインドウサイズが比較的小さい段階で、収束条件が満たされるので、比較的小さなウインドウが使用ウインドウサイズとして決定される。
【００６１】
一方、図１１（Ｂ）に示すように、領域ＲＦＡ内のノイズが、ピーク高さが比較的高いノイズを含む特性を有する場合には、ウインドウサイズが比較的小さな段階では、当該ピークの高いノイズがウインドウ内に含まれるか否かによって、差分平均値ＡＶ（Ｍ）が大きく変動する。したがって、図１１（Ｂ）に示すノイズ特性である場合には、サンプリングに用いられるウインドウサイズが比較的大きくされた段階で、収束条件が満たされるので、比較的大きなウインドウが使用ウインドウサイズとして決定される。
【００６２】
換言すれば、ノイズのレベルが高いほど、大きなウインドウサイズが、使用ウインドウサイズとして決定される。ピーク高さが比較的高いノイズが含まれる頻度が高いほど、また、当該ノイズのピーク高さが高いほど、ノイズのレベルが高いと言うことができる。
【００６３】
次に、Ｓ２１０およびＳ２２０の画素値修正処理について、説明する。Ｓ２１０の処理とＳ２２０の処理とは、処理対象の画像が異なる以外は、同じ処理である。画素値修正処理は、処理対象の画像内のノイズ、特に、均一領域内のノイズを低減すべく、処理対象の画像内の複数個の画素の成分値を修正する処理である。
【００６４】
図１２は、画素値修正処理のフローチャートである。Ｓ４００では、ＣＰＵ４１０は、修正画像用のメモリをバッファ領域４２１内に確保する。すなわち、基準領域ＳＰ内の画像、または、探索領域ＳＡ内の画像などの処理対象の画像と同じサイズの画像であって、全ての画素の成分値が初期値である画像をバッファ領域４２１内に準備する。全ての画素の成分値が初期値であるとは、例えば、全ての画素の成分値が（Ｒ、Ｇ、Ｂ）＝（０，０，０）であること、を意味する。
【００６５】
Ｓ４０５では、ＣＰＵ４１０は、ＲＧＢの３つのレイヤーの中から、処理の対象とするＲレイヤーなどの１個の注目レイヤーを選択する。Ｓ４１０では、ＣＰＵ４１０は、処理対象の画像内の１個の注目画素ＴＰａを選択する。Ｓ４１５では、ＣＰＵ４１０は、図１０のウインドウサイズ決定処理にて、注目レイヤーについて決定されたサイズのウインドウＷｄを、注目画素を中心として配置する。
【００６６】
図１３は、注目画素ＴＰａを中心に、縦５画素×横５画素のウインドウＷｄが配置された様子を示す図である。Ｓ４２０では、ＣＰＵ４１０は、注目画素ＴＰａの周囲に位置する複数個の候補画素の中から、使用すべき複数個の周囲画素を選択する。本実施例では、注目画素ＴＰａの成分値と、各候補画素の成分値と、の差分と、に基づいて、各候補画素について、使用すべき周囲画素として選択するか否かが判断される。例えば、Ｒ成分の差分は、注目画素ＴＰａのＲ成分の成分値Ｒｔｐと、候補画素のＲ成分の成分値Ｒｃｄと、を用いて、Ｒｃｄ−Ｒｔｐで求められる。具体的には、差分が、所定の閾値ＴＨ２未満である場合には、当該候補画素は、使用すべき周囲画素として選択される。そして、差分が、所定の閾値ＴＨ２以上である場合には、当該候補画素は、使用すべき周囲画素として選択されない。閾値ＴＨ２は、例えば、ＲＧＢの各成分値が０〜２５５までの２５６階調の値である場合には、例えば、５〜２０程度の値とされる。
【００６７】
図１３の例では、注目画素ＴＰａの周囲の複数個の候補画素は、ウインドウＷｄ内の２５個の画素のうち、注目画素ＴＰａを除いた２４個の画素である。ウインドウＷｄ内のハッチングされた画素は、注目画素ＴＰａとの差分が所定の閾値ＴＨ２以上である画素を示している。ウインドウＷｄ内のハッチングされていない画素は、注目画素ＴＰａとの差分が所定の閾値ＴＨ２未満である画素を示している。したがって、図１３の例では、２４個の候補画素のうち、ハッチングされていない１４個の画素が、使用すべき周囲画素として選択される。
【００６８】
Ｓ４２５では、ＣＰＵ４１０は、Ｒ成分の成分値Ｒｔｐなどの注目画素の成分値と、Ｒ成分の成分値Ｒａｒなどの選択された複数個の周囲画素の成分値と、を用いて、修正値を決定する。本実施例では、修正値には、注目画素の成分値と、複数個の周囲画素の成分値と、の平均値が用いられる。処理対象の画像内の注目画素に対応する修正画像内の対応注目画素の成分値、例えば、Ｒ成分の成分値Ｒｃｒは、初期値から修正値に置換される。対応注目画素は、例えば、処理対象の画像と修正画像とを重ねた場合に、処理対象内の注目画素と重なる修正画像内の画素であると、定義することができる。
【００６９】
Ｓ４３０では、ＣＰＵ４１０は、処理対象の画像内の全画素を注目画素として選択したか否かを判断する。未選択の画素がある場合には（Ｓ４３０：ＮＯ）、ＣＰＵ４１０は、Ｓ４１０に戻って、未選択の画素を注目画素として選択する。未選択の画素がない場合には（Ｓ４３０：ＹＥＳ）、すなわち、修正画像の注目レイヤーの全画素の成分値が決定された場合には、Ｓ４３５にて、ＣＰＵ４１０は、全レイヤーを注目レイヤーとして選択したか否かを判断する。未選択のレイヤーがある場合には（Ｓ４３５：ＮＯ）、ＣＰＵ４１０は、Ｓ４０５に戻って、未選択レイヤーを注目レイヤーとして選択する。未選択のレイヤーがない場合には（Ｓ４３５：ＹＥＳ）、すなわち、処理対象の画像の修正画像が完成すると、ＣＰＵ４１０は、画素値修正処理を終了する。図２のＳ２１０で生成される基準領域ＳＰ内の画像の修正画像を、修正済みの基準領域ＳＰとも呼び、Ｓ２２０で生成される探索領域ＳＡ内の画像の修正画像を、修正済みの探索領域ＳＡとも呼ぶ。
【００７０】
Ａ−５．類似領域決定処理
次に、図２のＳ４５で示した類似領域決定処理を説明する。図１４は、類似領域決定処理のフローチャートである。Ｓ５１０では、ＣＰＵ４１０は、画素値修正処理によって修正済みの図５（Ａ）に示される探索領域ＳＡ内に、１個の注目候補領域を特定する。
【００７１】
図５（Ａ）には、探索領域ＳＡ内に、１個の候補領域ＮＰＢ１が図示されている。１個の候補領域のサイズ形状およびサイズは、図７の基準領域決定処理によって右側スキャン画像２０Ｒ内に決定された図５（Ｂ）に示される基準領域ＳＰのサイズおよび形状と同じである。探索領域ＳＡ内には、図５（Ｂ）の候補領域ＮＰＢ１を縦方向や横方向に１画素刻みで移動させることで、複数個の候補領域ＮＰＢが配置可能であることが解る。Ｓ５１０では、探索領域ＳＡ内に配置可能な全ての候補領域ＮＰＢの中から１個の領域が所定の順序で注目候補領域として特定される。
【００７２】
１個の注目候補領域が特定されると、Ｓ５２０では、ＣＰＵ４１０は、修正済みの探索領域ＳＡ内の注目候補領域の類似度（ＳＣ／Ｎｔ）を算出する。注目候補領域の類似度（ＳＣ／Ｎｔ）は、注目候補領域と、修正済みの基準領域ＳＰとが類似している程度を示す指標値である。
【００７３】
類似度（ＳＣ／Ｎｔ）の算出方法は、以下のとおりである。先ず、ＣＰＵ４１０は、注目候補領域ＮＰＢ内の複数個の画素を１個ずつ注目画素として選択して、注目画素が、類似画素であるか非類似画素であるかを判断する。具体的には、ＣＰＵ４１０は、注目候補領域内の注目画素の成分値と、当該注目画素に対応する修正済みの基準領域ＳＰ内の画素の成分値と、の差ΔＶＰを算出する。注目画素に対応する基準領域ＳＰ内の画素は、注目候補領域内の画像と基準領域ＳＰ内の画像とを重ねた場合に、注目画素と重なる基準領域ＳＰ内の画素である。差ΔＶＰを算出すべき２個の画素の成分値を、（Ｒ１、Ｇ１、Ｂ１）と（Ｒ２、Ｇ２、Ｂ２）とする。差ΔＶＰは、３種類の成分値間の差分の絶対値の和で表される。すなわち、差ΔＶＰは、（Ｒ１−Ｒ２）の絶対値と、（Ｇ１−Ｇ２）の絶対値と、（Ｂ１−Ｂ２）の絶対値と、の合計値で表される。
【００７４】
ＣＰＵ４１０は、算出された差ΔＶＰが、所定の基準値ＴＨ３以下である場合には、注目画素が類似画素であると判断し、算出された差ΔＶＰが、所定の基準値ＴＨ３より大きい場合には、注目画素が非類似画素であると判断する。差ΔＶＰが、所定の基準値ＴＨ３以下である場合には、注目候補領域内の注目画素と、当該注目画素に対応する基準領域ＳＰ内の画素とは、類似する画素であると判断できるからである。
【００７５】
ＣＰＵ４１０は、注目候補領域内の類似画素の個数ＳＣを、注目候補領域内の画素の総数Ｎｔで除することによって、注目候補領域の類似度（ＳＣ／Ｎｔ）を算出する。類似度（ＳＣ／Ｎｔ）は、注目候補領域内の画素の総数Ｎｔに対する類似画素の個数ＳＣの割合である。類似度（ＳＣ／Ｎｔ）が大きいほど、基準領域ＳＰと、注目候補領域とは、類似している。
【００７６】
Ｓ５３０では、ＣＰＵ４１０は、類似度（ＳＣ／Ｎｔ）が、閾値ＴＨ４以上であるか否かを判断する。即ち、ＣＰＵ４１０は、現在の注目候補領域が基準領域ＳＰに類似しているか否かを判断する。
【００７７】
類似度（ＳＣ／Ｎｔ）が、閾値ＴＨ４以上である場合、即ち、現在の注目候補領域が基準領域ＳＰに類似していると判断する場合には（Ｓ５３０：ＹＥＳ）、Ｓ５４０において、ＣＰＵ４１０は、現在の注目候補領域を、基準領域ＳＰに類似する類似領域ＣＰとして決定して、類似領域決定処理を終了する。
【００７８】
類似度（ＳＣ／Ｎｔ）が、閾値ＴＨ４未満である場合には（Ｓ５３０：ＮＯ）、Ｓ５５０において、ＣＰＵ４１０は、修正済みの探索領域ＳＡ１内の全ての候補領域を注目候補領域として処理したか否かを判断する。未処理の候補領域がある場合には（Ｓ５５０：ＮＯ）、ＣＰＵ４１０は、Ｓ５１０に戻って、未処理の候補領域を注目候補領域として選択する。全ての候補領域が処理された場合には（Ｓ５５０：ＹＥＳ）、ＣＰＵ４１０は、基準領域ＳＰに対応する類似領域ＣＰを決定できないまま、類似領域決定処理を終了する。図５（Ａ）には、左側スキャン画像２０Ｌ内に、決定された類似領域ＣＰが図示されている。
【００７９】
以上説明した本実施例によれば、類似領域決定処理に先立って実行される図９の平滑化処理によって、基準領域ＳＰ内の複数個の画素と、探索領域ＳＡ内の複数個の画素と、のそれぞれの成分値が修正される。図１２のＳ４２５に示されるように、修正対象の対象画素の成分値は、対象画素の成分値と、対象画素の周囲に配置されている複数個の周囲画素の成分値と、を用いて、修正される。この結果、図１４の類似領域決定処理において、修正済みの画素を含む基準領域ＳＰ内の複数個の画素の成分値と、修正済みの画素を含む探索領域内の複数個の画素の成分値と、を用いて、類似領域ＣＰが決定される。この結果、類似領域ＣＰが決定される際に、基準領域ＳＰや探索領域ＳＡに含まれるノイズの影響を低減し得る。したがって、ノイズに起因する類似領域ＣＰを決定する精度の低下を抑制することができる。すなわち、左側スキャン画像２０Ｌと右側スキャン画像２０Ｒとの結合位置を決定する精度の低下を抑制することができる。
【００８０】
より具体的には、右側スキャン画像２０Ｒや左側スキャン画像２０Ｌ内の均一領域などに、図１１に示すようなノイズが含まれていると、例えば、基準領域ＳＰや探索領域ＳＡに含まれる均一領域などにもノイズが含まれ得る。この場合には、例えば、基準領域ＳＰ内のノイズのピークと、探索領域ＳＡ内のノイズのピークと、が一致するように、探索領域ＳＡ内の類似領域ＣＰが決定されてしまう可能性がある。そうすると、類似領域ＣＰの決定精度が低下する可能性がある。本実施例によれば、このような不都合が抑制される。
【００８１】
さらに、ＣＰＵ４１０は、図１２のＳ４２５に示されるように、対象画素の成分値と複数個の周囲画素の成分値との平均値を用いて、対象画素の成分値を修正する。したがって、基準領域ＳＰや探索領域ＳＡ内のノイズを適切に低減することができる。また、比較的短い処理時間で対象画素の成分値を修正することができる。例えば、平均値の算出の処理時間は、中央値（メディアン値とも呼ぶ）の算出の処理時間と比較して短い。
【００８２】
さらに、図１０のウインドウサイズ決定処理において、ＣＰＵ４１０は、図１０のＳ３１５とＳ３２０とに示されるように右側スキャン画像２０Ｒ内のノイズのレベルを検出する。そして、ＣＰＵ４１０は、図１０のＳ３２５とＳ３３０とに示されるようにノイズのレベルに応じて、使用ウインドウサイズ、すなわち、対象画素の成分値の修正に用いられる周囲画素の個数（厳密には、用いられる周囲画素の候補となる候補画素の個数）を決定している。ここで、使用ウインドウサイズは、差分平均値ＡＶ（Ｍ）が収束し難いほど、大きくされる。換言すれば、用いられる周囲画素の個数は、検出されるノイズのレベルが高いほど、多くの個数に決定される。この結果、ノイズのレベルに応じて適切な個数の周囲画素を用いて、基準領域ＳＰや探索領域ＳＡ内の画素の成分値が修正されるので、これらの領域内に含まれるノイズを適切に低減することができる。したがって、２個のスキャン画像２０Ｒ、２０Ｌの結合位置を決定する精度を向上することができる。
【００８３】
より詳しく説明する。ノイズのピーク高さが高いほど、また、高いピークのノイズの発生頻度が高いほど、ノイズを十分に低減するのに必要な使用ウインドウサイズを大きくなる、すなわち、用いるべき周囲画素の個数が多くなる。一方、使用ウインドウサイズを不必要に大きくすると、領域内のエッジなどの特徴部分が損なわれる可能性がある。エッジなどの特徴部分が基準領域ＳＰと一致するように、類似領域ＣＰを決定することで、類似領域ＣＰの決定の精度が高くなるので、エッジなどの特徴部分が損なわれることは、類似領域ＣＰの決定の精度の低下を招く可能性がある。上記実施例では、ノイズのレベルに応じて、ノイズを十分に低減するために過不足のない使用ウインドウサイズを決定することで、２個のスキャン画像２０Ｒ、２０Ｌの結合位置を決定する精度を向上することができる。
【００８４】
さらに、ＣＰＵ４１０は、図１０のＳ３０５とＳ３５０とに示されるようにＲＧＢの３個の成分について、成分ごとにノイズのレベルを検出し、成分ごとに使用ウインドウサイズを決定している。スキャンデータの生成に用いられるスキャナのイメージセンサなどの特性やばらつきによって、ノイズのレベルは、成分ごとに異なり得る。本実施例では、成分ごとに適切な使用ウインドウサイズが決定されるので、基準領域ＳＰや探索領域ＳＡ内に含まれるノイズを適切に低減するように、基準領域ＳＰや探索領域ＳＡ内の画素の成分値を修正することができる。
【００８５】
さらに、ＣＰＵ４１０は、ウインドウサイズ決定処理において、図１０のＳ３００にて、スキャン画像内の原稿領域を特定し、図１０のＳ３１５にて、スキャン画像内の原稿領域内のノイズのレベルを検出する。この結果、原稿１０に起因してスキャン画像に含まれるノイズのレベルに応じて、適切な使用ウインドウサイズが決定される。したがって、原稿に起因して基準領域ＳＰや探索領域ＳＡ内に含まれるノイズ、具体的には、紙の繊維による用紙のムラなどに起因するノイズを適切に低減するように、基準領域ＳＰや探索領域ＳＡ内の画素の成分値を修正することができる。
【００８６】
さらに、１個の右側スキャン画像２０Ｒ内のノイズのレベルを検出して、基準領域ＳＰ内の画像に対する画素値修正処理にて用いられる使用ウインドウサイズと、探索領域ＳＡ内の画像に対する画素値修正処理にて用いられる使用ウインドウサイズとの両方が決定される。すなわち、右側スキャン画像２０Ｒ内の画素をサンプリングして決定された使用ウインドウサイズは、基準領域ＳＰ内の画像に対する画素値修正処理と、探索領域ＳＡ内の画像に対する画素値修正処理と、の両方で共通して用いられる。２個のスキャン画像２０Ｒ、２０Ｌを表す２個のスキャンデータは、１個の原稿１０を１個のスキャナを用いて読み取ることによって生成される。したがって、２個のスキャン画像内のノイズ特性は、比較的近いと考えられる。このために、本実施例では、処理負荷の過度な増加を招くことなく、基準領域ＳＰ内の画像と探索領域ＳＡ内の画像に対する画素値修正処理で用いられる適切な使用ウインドウサイズを決定することができる。
【００８７】
さらに、図１２のＳ４２０に示されるように、ウインドウ内に含まれる複数個の候補画素の中から、対象画素の成分値を含む特定範囲内の値を有する画素、すなわち、対象画素の成分値との差分が閾値ＴＨ２以内である値を有する画素が、対象画素の成分値の修正に用いられる複数個の周囲画素として決定される。この結果、対象画素の修正によって、基準領域ＳＰや探索領域ＳＡに含まれるノイズの低減しつつ、これらの領域に含まれるエッジなどの特徴部分を損なわないように、対象画素の成分値を修正することができる。例えば、図１３の例では、注目画素ＴＰａは、注目画素ＴＰａとの差分が比較的大きいハッチングされた画素群と、注目画素ＴＰａとの差分が比較的小さいハッチングされていない画素群と、の間のエッジ部分に位置している。この場合に、注目画素ＴＰａの成分値は、ハッチングされていない画素群のみを用いて修正される。この結果、注目画素ＴＰａの修正によって、エッジが不明瞭になることが抑制されることが解る。したがって、基準領域ＳＰや探索領域ＳＡ内のエッジなどの特徴部分が損なわれることを抑制して、２個のスキャン画像２０Ｒ、２０Ｌの結合位置を決定する精度を向上することができる。
【００８８】
さらに、図７の基準領域決定処理において、ＣＰＵ４１０は、図７のＳ１１５とＳ１２０とにて、右側スキャン画像２０Ｒ内の複数個の画素の成分値のばらつきに基づいて、基準領域ＳＰを決定する。具体的には、画素の成分値のばらつきが最も大きくなるように、基準領域ＳＰが決定される。この結果、図１４の類似領域決定処理では、ばらつきに基づいて決定された基準領域ＳＰに基づいて、適切な類似領域ＣＰが精度良く決定される。
【００８９】
より具体的に説明すると、画素の成分値のばらつきが比較的小さい領域は、特徴が乏しい。このために、画素の成分値のばらつきが比較的小さい領域が基準領域ＳＰに決定されると、左側スキャン画像２０Ｌ内の類似領域ＣＰを精度良く決定することが困難になる可能性がある。例えば、左側スキャン画像２０Ｌ内の誤った領域が、類似領域ＣＰに決定されやすい。画素のばらつきが比較的小さい領域には、例えば、背景を示す領域や、オブジェクトの内部の色の変化が乏しい領域などが含まれる。
【００９０】
これに対して、画素の成分値のばらつきが比較的大きな領域は、エッジなどを比較的多く含むので、特徴的な部分を含む可能性が高い。このために、画素の成分値のばらつきが比較的大きな領域が基準領域ＳＰに決定されると、左側スキャン画像２０Ｌ内の類似領域ＣＰを容易に決定できる。換言すれば、ばらつきが比較的小さい領域を基準領域ＳＰとするよりも、ばらつきが比較的大きい基準領域ＳＰとするほうが、類似領域ＣＰを精度良く決定できる。
【００９１】
本実施例では、比較的エッジなどの特徴的な部分を多く含む基準領域ＳＰに含まれ得る比較的特徴が少ない部分のノイズを低減するので、エッジなどの特徴的な部分に基づいて、類似領域ＣＰを精度良く決定できる。
【００９２】
Ｂ．変形例
（１）上記実施例の図１２の画素値修正処理では、図１２のＳ４２５にて、修正値として、対象画素の成分値と複数個の周囲画素の成分値とを平均値が採用されている。これに代えて、修正値として、対象画素の成分値と複数個の周囲画素の成分値とを値の順番に並べた場合に中央に位置する値、すなわち、中央値（メディアン値とも呼ぶ）を採用しても良い。中央値を修正値として採用する場合には、ウインドウ内に含まれる全ての候補画素を、周囲画素として用いる場合であっても、基準領域ＳＰや探索領域ＳＡ内のエッジが損なわれることを抑制することができる。この結果、ウインドウ内に含まれる全ての候補画素を、周囲画素として用いる場合であっても、適切な類似領域ＣＰが精度良く決定される。なお、平均値を用いて対象画素の成分値を修正する処理と中央値を用いて対象画素の成分値を修正することとは、対象画素の成分値を、対象画素の成分値と複数個の周囲画素のそれぞれの成分値とを用いて平滑化する処理に含まれる。
【００９３】
（２）上記実施例では、スキャンデータのＲＧＢ表色系で表された画素の成分値を用いて、平滑化処理や類似領域決定処理が行われている。これに代えて、スキャンデータの表色系を他の特定の表色系に変換し、変換後の画素の成分値を用いて、平滑化処理や類似領域決定処理が行われても良い。特定の表色系は、例えば、ＹＣｂＣｒ表色系や、ＨＳＶ表色系であっても良い。さらに、特定の表色系は、例えば、グレー画像を表す画像データで用いられる表色系のように、濃度などを表す１種類の成分値のみを含む表色系であっても良い。使用される表色系に拘わらずに、図１０のウインドウサイズ決定処理では、例えば、使用ウインドウサイズは、使用される表色系の成分ごと（すなわち、レイヤーごと）に決定される。すなわち、修正対象の画素の成分値は、画素ごとの色を表す特定の表色系の成分を表す成分値であれば良い。
【００９４】
（３）上記実施例では、右側スキャン画像２０Ｒをサンプリングして決定された使用ウインドウサイズを、基準領域ＳＰ内の画像と探索領域ＳＡ内の画像に対する画素値修正処理の両方で共通して使用している。これに代えて、右側スキャン画像２０Ｒをサンプリングして決定された使用ウインドウサイズを用いて、基準領域ＳＰ内の画像に対する画素値修正処理が実行され、左側スキャン画像２０Ｌをサンプリングして決定された使用ウインドウサイズを用いて、探索領域ＳＡ内の画像に対する画素値修正処理が実行されても良い。また、上記実施例では、使用される表色系の成分ごと（すなわち、レイヤーごと）に使用ウインドウサイズが決定されているが、これに代えて、３個の成分で共通の使用ウインドウサイズが決定されても良い。また、使用ウインドウサイズは、スキャンデータ内のノイズのレベルに拘わらずに固定であっても良い。
【００９５】
（４）なお、上記実施例では、Ｓ２１０の画素値修正処理において、基準領域ＳＰ内の全ての画素の成分値を修正している。これに代えて、基準領域ＳＰ内の一部の複数個の画素を修正しても良い。例えば、ＣＰＵ４１０は、基準領域ＳＰ内のエッジを抽出して、基準領域ＳＰをエッジ量が基準値より多い特徴領域と、エッジ量が基準値より少ない均一領域と、に分離する。そして、ＣＰＵ４１０は、均一領域内の複数個の画素の成分値を修正し、特徴領域内の複数個の画素の成分値を修正しなくても良い。Ｓ２２０の画素値修正処理において、探索領域ＳＡ内の複数個の画素の成分値を修正する場合も同様である。
【００９６】
（５）また、上記実施例では、基準領域ＳＰは、スキャン画像２０Ｒ内の複数個の画素のばらつきに応じて決定されているが、これに代えて、スキャン画像２０Ｒ内の予め定められた位置に決定されても良い。また、探索領域ＳＡは、左側スキャン画像２０Ｌ内の予め定められた位置に決定されているが、ばらつきに応じて決定される基準領域ＳＰに応じた位置に決定されても良い。
【００９７】
（６）２個のスキャンデータによって表される２個の画像を、第１の画像と、第２の画像とする。上記実施例では、第１の画像としての右側スキャン画像２０Ｒの左辺近傍と、第２の画像としての左側スキャン画像２０Ｌの右辺近傍と、が結合されるように、結合画像が生成されている。これに代えて、例えば、２個のスキャンデータの生成に用いられる一つの原稿に応じて、第１の画像の右辺近傍と、第２の画像の左辺近傍とが、結合されるように、結合画像が生成されてもよい。あるいは、第１の画像の下辺近傍と、第２の画像の上辺近傍とが、結合されるように、結合画像が生成されても良く、第１の画像の上辺近傍と、第２の画像の下辺近傍と、が結合されるように、結合画像が生成されてもよい。
【００９８】
（７）上記実施例では、２個のスキャンデータを用いて、２個のスキャン画像が結合された結合画像を表す結合画像データが生成されている。これに限らず、任意の個数のスキャンデータを用いて結合画像データが生成されても良い。例えば、４個のスキャン画像データを用いて、４個のスキャン画像が結合された結合画像を表す結合画像データが生成されてもよい。
【００９９】
（８）上記実施例では、結合画像データの生成に用いられる２個の画像データは、複合機２００のスキャナ部２５０によって原稿が読み取られることによって生成される２個のスキャンデータである。これに代えて、２個の画像データは、デジタルカメラによって原稿の複数個の領域を撮影することによって、２個の画像データが生成されても良い。
【０１００】
（９）上記実施例では、結合画像データの生成に用いられる２個のスキャンデータは、１つの原稿１０を読み取って得られる右側スキャンデータと左側スキャンデータである。これに代えて、２個のスキャンデータは、２個の原稿をそれぞれ読み取って得られる２個のスキャンデータであっても良い。
【０１０１】
（１０）上記実施例においてサーバ４００のＣＰＵ４１０によって実行される処理（例えば、図２のＳ２５〜Ｓ４０の処理）は、例えば、複合機２００のＣＰＵ２１０によって実行されても良い。この場合には、サーバ４００は不要であり、複合機２００が単体で図２の処理を実行すればよい。また、サーバ４００のＣＰＵ４１０によって実行される処理は、複合機２００と接続されたパーソナルコンピュータ５００（図１）のＣＰＵ（図示省略）によって実行されても良い。例えば、パーソナルコンピュータ５００のＣＰＵは、パーソナルコンピュータ５００にインストールされたスキャナドライバプログラムを実行することによって、これらの処理を実行しても良い。また、サーバ４００は、本実施例のように１つの計算機で構成されても良く、複数個の計算機を含む計算システムによって構成されていても良い。
【０１０２】
（１１）上記実施例において、ハードウェアによって実現されていた構成の一部をソフトウェアに置き換えるようにしてもよく、逆に、ソフトウェアによって実現されていた構成の一部をハードウェアに置き換えるようにしてもよい。
【符号の説明】
【０１０３】
２００...複合機、２１０...ＣＰＵ、２２０...揮発性記憶装置、２２１...バッファ領域、２３０...不揮発性記憶装置、２３１...制御プログラム、２４０...プリンタ部、２５０...スキャナ部、２６０...操作部、２７０...表示部、２８０...通信部、４００...サーバ、４１０...ＣＰＵ、４２０...揮発性記憶装置、４２１...バッファ領域、４３０...不揮発性記憶装置、４３１...コンピュータプログラム、４３３...ＵＩデータ群、４８０...通信部、５００...パーソナルコンピュータ、１０００...画像処理システム
【図１】
2015219791.tif 000004
【図２】
2015219791.tif 000005
【図３】
2015219791.tif 000006
【図４】
2015219791.tif 000007
【図５】
2015219791.tif 000008
【図６】
2015219791.tif 000009
【図７】
2015219791.tif 000010
【図８】
2015219791.tif 000011
【図９】
2015219791.tif 000012
【図１０】
2015219791.tif 000013
【図１１】
2015219791.tif 000014
【図１２】
2015219791.tif 000015
【図１３】
2015219791.tif 000016
【図１４】
2015219791.tif 000017