JP6152818B2 - 画像処理装置およびコンピュータプログラム - Google Patents

画像処理装置およびコンピュータプログラム Download PDF

Info

Publication number
JP6152818B2
JP6152818B2 JP2014073949A JP2014073949A JP6152818B2 JP 6152818 B2 JP6152818 B2 JP 6152818B2 JP 2014073949 A JP2014073949 A JP 2014073949A JP 2014073949 A JP2014073949 A JP 2014073949A JP 6152818 B2 JP6152818 B2 JP 6152818B2
Authority
JP
Japan
Prior art keywords
image
area
unit
region
variation
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2014073949A
Other languages
English (en)
Other versions
JP2015198277A (ja
Inventor
卓也 嶋橋
卓也 嶋橋
長谷川 智彦
智彦 長谷川
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Brother Industries Ltd
Original Assignee
Brother Industries Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Brother Industries Ltd filed Critical Brother Industries Ltd
Priority to JP2014073949A priority Critical patent/JP6152818B2/ja
Priority to US14/664,994 priority patent/US9747715B2/en
Publication of JP2015198277A publication Critical patent/JP2015198277A/ja
Application granted granted Critical
Publication of JP6152818B2 publication Critical patent/JP6152818B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/40Document-oriented image-based pattern recognition
    • G06V30/42Document-oriented image-based pattern recognition based on the type of document
    • G06V30/422Technical drawings; Geographical maps
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/60Editing figures and text; Combining figures or text
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/40Scaling of whole images or parts thereof, e.g. expanding or contracting
    • G06T3/4038Image mosaicing, e.g. composing plane images from plane sub-images
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/10Image acquisition
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/10Image acquisition
    • G06V10/16Image acquisition using multiple overlapping images; Image stitching

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Artificial Intelligence (AREA)
  • Signal Processing (AREA)
  • Editing Of Facsimile Originals (AREA)
  • Image Processing (AREA)

Description

本発明は、第1の画像と第2の画像とが合成された画像を表す合成画像データを生成する技術に関する。
第1の画像と第2の画像とが合成された画像を表す合成画像データを生成する技術が知られている。例えば、特許文献1に開示された技術では、一度には読み取れない大きさの原稿を、スキャナを用いて2回に分けて読み取ることによって、第1の画像を表すスキャンデータと、第2の画像を表すスキャンデータと、が取得される。そして、2個のスキャンデータを用いて、第1の画像と第2の画像とが合成された画像を表す出力画像データが生成される。第1の画像と第2の画像とを合成する位置は、パターンマッチングを用いて決定される。
特開平4−290066号公報 特開2001−325588号公報 特開昭61−204716号公報 特開2003−23530号公報
しかしながら、上記技術では、第1の画像と第2の画像とは、常に同じ画像処理によって、合成される。すなわち、従来では、画像処理について十分に考慮されておらず、第1の画像と第2の画像とを適切に合成することが困難な場合があった。
本発明は、第1の画像と第2の画像とが合成された合成画像を表す合成画像データを生成する際に、第1の画像と第2の画像とを適切に合成する技術を提供することを目的とする。
本発明は、上述の課題の少なくとも一部を解決するためになされたものであり、以下の適用例として実現することが可能である。
[適用例1]画像処理装置であって、第1の画像を表す第1の画像データと、第2の画像を表す第2の画像データと、を取得する取得部と、前記第1の画像内の一部の領域である基準領域を決定する基準領域決定部と、前記第1の画像内の前記基準領域と、前記第2の画像内の複数個の候補領域と、の間の複数個の類似度を算出する算出部と、前記複数個の類似度に基づいて、前記複数個の候補領域のうちの1個の候補領域を前記基準領域に対応する対応領域として決定する対応領域決定部と、前記第1の画像データと前記第2の画像データとを用いて、前記基準領域と前記対応領域とが重なるように、前記第1の画像と前記第2の画像とが合成された合成画像を表す合成画像データを生成する生成部と、を備え、前記基準領域決定部は、前記第1の画像内の複数個の画素の値のばらつきに基づいて、前記基準領域のサイズを決定する、画像処理装置。
上記構成によれば、第1の画像内の複数個の画素の値のばらつきに基づいて、基準領域のサイズを適切に決定することができる。したがって、第1の画像と第2の画像とを適切に合成することができる。
[適用例2]適用例1に記載の画像処理装置であって、前記基準領域決定部は、前記第1の画像内の複数個の画素の値のばらつきが小さいほど、前記基準領域のサイズを大きくする、画像処理装置。
こうすれば、第1の画像内の複数個の画素の値のばらつきが小さい場合でも、基準領域のサイズを大きくすることによって、第1の画像と第2の画像とを合成する位置を決定する精度を向上することができる。
[適用例3]適用例1または2に記載の画像処理装置であって、前記基準領域決定部は、前記第1の画像内の複数個の画素の値のばらつきに基づいて、前記基準領域の位置を決定する、画像処理装置。
こうすれば、基準領域の位置を適切に決定することができるので、第1の画像と第2の画像とを適切に合成することができる。
[適用例4]適用例3に記載の画像処理装置であって、前記基準領域決定部は、前記第1の画像の複数個の部分画像のそれぞれについて、画像内の複数個の画素の値のばらつきを示す値を算出し、前記複数個の部分画像のうち、前記ばらつきを示す値が最も大きい部分画像の領域を、前記基準領域として決定する、画像処理装置。
こうすれば、第1の画像内の複数個の画素の値のばらつきに基づいて、基準領域の位置をより適切に決定することができる。
[適用例5]適用例1〜3に記載の画像処理装置であって、前記基準領域決定部は、前記第1の画像内の複数個の画素の値のばらつきに基づいて、前記基準領域の形状を決定する、画像処理装置。
こうすれば、基準領域の形状を適切に決定することができるので、第1の画像と第2の画像とを適切に合成することができる。
[適用例6] 画像処理装置であって、第1の画像を表す第1の画像データと、第2の画像を表す第2の画像データと、を取得する取得部と、前記第1の画像内の一部の領域である基準領域を決定する基準領域決定部と、前記第1の画像内の前記基準領域と、前記第2の画像内の複数個の候補領域と、の間の複数個の類似度を算出する算出部と、前記複数個の類似度に基づいて、前記複数個の候補領域のうちの1個の候補領域を前記基準領域に対応する対応領域として決定する対応領域決定部と、前記第1の画像データと前記第2の画像データとを用いて、前記基準領域と前記対応領域とが重なるように、前記第1の画像と前記第2の画像とが合成された合成画像を表す合成画像データを生成する生成部と、を備え、前記基準領域決定部は、前記第1の画像の複数個の部分画像のそれぞれについて、画像内の複数個の画素の値のばらつきを示す値を算出し、前記複数個の部分画像のうち、前記ばらつきを示す値が最も大きい部分画像の領域を、前記基準領域として決定する、画像処理装置。
上記構成によれば、第1の画像内の複数個の画素の値のばらつきに基づいて、基準領域の位置を適切に決定する。したがって、第1の画像と第2の画像とを適切に合成することができる。
[適用例7]適用例3、4、6のいずれかに記載の画像処理装置であって、前記基準領域決定部は、特定の色を有する部分が比較的小さい領域を、前記特定の色を有する部分が比較的大きい領域より優先的に、前記基準領域として決定する、画像処理装置。
基準領域に含まれ得る特定の色(例えば、白)を有する部分は、第1の画像と第2の画像との合成位置を決定する精度を低下させる場合がある。こうすれば、特定の色を有する部分が比較的小さい領域を、優先的に基準領域として決定するので、第1の画像と第2の画像との合成位置を決定する精度を向上できる。
[適用例8]画像処理装置であって、第1の画像を表す第1の画像データと、第2の画像を表す第2の画像データと、を取得する取得部と、前記第1の画像内の一部の領域である基準領域を決定する基準領域決定部と、前記第1の画像内の前記基準領域と、前記第2の画像内の複数個の候補領域と、の間の複数個の類似度を算出する算出部と、前記複数個の類似度に基づいて、前記複数個の候補領域のうちの1個の候補領域を前記基準領域に対応する対応領域として決定する対応領域決定部と、前記第1の画像データと前記第2の画像データとを用いて、前記基準領域と前記対応領域とが重なるように、前記第1の画像と前記第2の画像とが合成された合成画像を表す合成画像データを生成する生成部と、を備え、前記基準領域決定部は、前記第1の画像内の複数個の画素の値のばらつきに基づいて、前記基準領域の形状を決定する、画像処理装置。
上記構成によれば、第1の画像内の複数個の画素の値のばらつきに基づいて、基準領域の形状を決定する。この結果、例えば、基準領域内の画素の値のばらつきに応じて、基準領域の形状を適切に決定し得る。したがって、基準領域に対応する対応領域を適切に決定し得るので、第1の画像と第2の画像とを適切に合成することができる。
[適用例9]適用例1〜8のいずれかに記載の画像処理装置であって、前記基準領域決定部は、前記第1の画像内に複数個の単位領域を設定し、複数個の前記単位領域のそれぞれについて、領域内の画素の値のばらつきを示す値を算出し、前記ばらつきを示す値に基づいて、複数個の前記単位領域の中から、前記ばらつきを示す値が閾値以上の1個以上の前記単位領域を選択し、選択された1個以上の前記単位領域を用いて、前記基準領域を決定する、画像処理装置。
こうすれば、第1の画像内に設定される複数個の単位領域に基づいて、基準領域を適切に決定することができる。
[適用例10]適用例9に記載の画像処理装置であって、前記基準領域決定部は、選択された1個以上の前記単位領域を用いて、前記基準領域の形状、サイズ、位置のうち少なくとも一つを決定する、画像処理装置。
こうすれば、第1の画像内に設定される複数個の単位領域に基づいて、基準領域の形状、サイズ、位置のうち少なくとも一つを適切に決定することができる。
[適用例11]適用例9または10に記載の画像処理装置であって、前記基準領域決定部は、選択された1個以上の前記単位領域に外接する領域を前記基準領域として決定する、画像処理装置。
こうすれば、第1の画像内に設定される複数個の単位領域に基づいて、基準領域を適切に決定することができる。
[適用例12]適用例9または10に記載の画像処理装置であって、前記基準領域決定部は、選択された1個以上の前記単位領域に内接する領域を前記基準領域として決定する、画像処理装置。
こうすれば、第1の画像内に設定される複数個の単位領域に基づいて、基準領域を適切に決定することができる。
[適用例13]適用例9または10に記載の画像処理装置であって、前記基準領域決定部は、選択された1個以上の前記単位領域の全体のサイズが基準サイズ以上である場合に、選択された1個以上の前記単位領域に内接する領域を前記基準領域として決定し、選択された1個以上の前記単位領域の全体のサイズが基準サイズ未満である場合に、選択された1個以上の前記単位領域に外接する領域を前記基準領域として決定する、画像処理装置。
こうすれば、1個以上の単位領域の全体のサイズに応じて、適切な基準領域を決定することができる。
[適用例14]適用例9または10に記載の画像処理装置であって、前記基準領域決定部は、選択された1個以上の前記単位領域内の画素の値のばらつきが小さいほど、前記基準領域のサイズを大きくする、画像処理装置。
基準領域内の画素の値のばらつきが小さいと、第1の画像と第2の画像との合成位置を決定する精度が低下する可能性がある。こうすれば、単位領域内の画素の値のばらつきが小さいほど基準領域のサイズを大きくすることによって、第1の画像と第2の画像との合成位置を決定する精度を向上できる。
[適用例15]適用例14に記載の画像処理装置であって、前記基準領域決定部は、選択された1個以上の前記単位領域内の複数個の画素のうち、周囲の画素との値の差が最大である特定の画素を決定し、前記特定の画素を中心とした特定の範囲内の画素の値のばらつきに応じて、前記基準領域のサイズを決定し、前記特定の画素を中心とし、決定されたサイズを有する領域を、前記基準領域として決定する、画像処理装置。
こうすれば、適切な位置とサイズを有する基準領域を決定することができるので、第1の画像と第2の画像との合成位置を決定する精度を向上できる。
[適用例16]適用例9〜14のいずれかに記載の画像処理装置であって、前記基準領域決定部は、前記第1の画像内に設定される複数個の単位領域を、領域内の画素の値のばらつきが閾値以上である複数個の第1種の単位領域と、領域内の画素の値のばらつきが閾値未満である複数個の第2種の単位領域とに、分類し、前記複数個の第1種の単位領域の中から、互いに近接する1個以上の前記単位領域を選択する、画像処理装置。
こうすれば、複数個の単位領域の中から、1個以上の単位領域を適切に選択することができる。
[適用例17]適用例16に記載の画像処理装置であって、前記基準領域決定部は、前記第1の画像内において、前記第1種の単位領域の密度が最も高い密集領域を特定し、前記複数個の第1種の単位領域の中から選択される互いに近接する1個以上の前記単位領域は、前記密集領域内の前記第1種の単位領域を含む、画像処理装置。
こうすれば、基準領域の決定に用いられる単位領域を適切に決定することができる。
[適用例18]適用例1〜17のいずれかに記載の画像処理装置であって、前記第1の画像内の前記基準領域と、前記第2の画像内の前記複数個の候補領域のそれぞれとは、互いに等しいサイズおよび形状を有する、画像処理装置。
なお、本発明は、種々の形態で実現することが可能であり、例えば、画像処理装置の制御方法、これらの装置または方法を実現するためのコンピュータプ口グラム、そのコンピュータプログラムを記録した記録媒体、等の形態で実現することができる。
第1実施例における画像処理システムの構成を示すブロック図である。 画像処理システム1000の動作を示すフローチャートである。 本実施例で用いられる原稿10の一例を示す図である。 UI画面の一例を示す図である。 スキャン画像の一例を示す図である。 基準領域決定処理のフローチャートである。 配置範囲SA1内の複数個の部分画像について説明する図である。 ばらつき画素と非ばらつき画素とを説明する図である。 対応領域決定処理のフローチャートである。 探索領域SA2内の複数個の候補領域について説明する図である。 合成画像31の一例を示す図である。 第2実施例の基準領域決定処理のフローチャートである。 第2実施例の基準領域決定処理の説明図である。 基準領域配置処理のフローチャートである。 ばらつき領域VAに基づく基準領域SPの一例を示す図である。 第3実施例の基準領域配置処理のフローチャートである。 第3実施例の基準領域配置処理の説明図である。
A.第1実施例:
A−1:画像処理システム1000の構成
図1は、第1実施例における画像処理システムの構成を示すブロック図である。画像処理システム1000は、画像処理装置としてのサーバ400と、複合機200と、を備えている。サーバ400は、インターネット70に接続されており、複合機200は、LAN(Local Area Network)80を介して、インターネット70に接続されている。この結果、サーバ400と複合機200は、LAN80とインターネット70とを介して、通信可能である。また、LAN80には、複合機200のユーザのパーソナルコンピュータ500が接続されていても良い。
サーバ400は、CPU410と、DRAMなどの揮発性記憶装置420と、ハードディスクドライブやフラッシュメモリなどの不揮発性記憶装置430と、インターネット70などのネットワークに接続するためのインタフェースを含む通信部480と、を備えている。揮発性記憶装置420には、CPU410が処理を行う際に生成される種々の中間データを一時的に格納するバッファ領域421が設けられている。不揮発性記憶装置430には、コンピュータプログラム431と、UIデータ群433と、が格納されている。
コンピュータプログラム431、および、UIデータ群433は、例えば、サーバ400の管理者によって、インターネット70を介してサーバ400にアップロードされることによって、サーバ400にインストールされる。または、コンピュータプログラム431、および、UIデータ群433は、例えば、DVD−ROMなどに格納された形態で提供され、サーバ400の管理者によって、サーバ400にインストールされても良い。CPU410は、コンピュータプログラム431を実行することにより、後述する画像処理を実現する。
複合機200は、CPU210と、DRAMなどの揮発性記憶装置220と、フラッシュメモリやハードディスクドライブなどの不揮発性記憶装置230と、プリンタ部240と、スキャナ部250と、タッチパネルやボタンなどの操作部260と、液晶ディスプレイなどの表示部270と、外部機器と通信を行う通信部280と、を備えている。例えば、通信部280は、LAN80などのネットワークに接続するためのインタフェースや、外部記憶装置(例えば、USBメモリ)と接続するためのインタフェースを含んでいる。
揮発性記憶装置220には、CPU210が処理を行う際に生成される種々のデータを一時的に格納するバッファ領域221が設けられている。不揮発性記憶装置230には、制御プログラム231が格納されている。
プリンタ部240は、インクジェット方式やレーザー方式などの印刷方式を用いて印刷を実行する。スキャナ部250は、光電変換素子(例えば、CCD、CMOS)を用いて光学的に原稿を読み取ることによってスキャンデータを生成する。スキャナ部250は、いわゆるフラットベッド式の原稿台を備えており、本実施例では、1回で読み取ることができる原稿の最大サイズは、A4より大きくA3より小さいサイズである。具体的には、スキャナ部250は、長手方向の長さがA4と同じであり、かつ、短手方向の長さがA4より少しだけ(例えば、数センチ)長いサイズの原稿を読み取ることができる。このために、後述するように、A3サイズの原稿の長手方向の中央付近が重複するように、A3サイズの原稿を2回に分けて読み取ることができる。
CPU210は、制御プログラム231を実行することにより、複合機200の制御を実行する。例えば、CPU210は、プリンタ部240やスキャナ部250を制御して、コピー処理、印刷処理、スキャン処理などを実行する。さらに、CPU210は、サーバ400にアクセスして、サーバ400が提供するサービスを利用するサービス利用処理を、実行することができる。
A−2:画像処理システム1000の動作
図2は、画像処理システム1000の動作を示すフローチャートである。このフローチャートの処理は、複合機200が、サーバ400が提供する画像生成サービスの利用指示を、ユーザから受け付けた場合に開始される。この画像生成サービスは、詳細は後述するが、複数個のスキャンデータによって表される複数個のスキャン画像を合成するサービスである。複数個のスキャンデータは、詳細は後述するが、例えば、1回で読み取り可能なサイズより大きなサイズの原稿を、複数回に分けて読み取ることによって生成される。
処理が開始されると、S5では、複合機200のCPU210は、サービス開始要求を、サーバ400に対して送信する。サーバ400のCPU410は、サービス開始要求を受信すると、UIデータ群433(図1)から画像生成サービスの提供に必要なUIデータを選択し、該UIデータを複合機200に対して送信する(S10)。UIデータは、具体的には、ユーザインタフェース画面(以下、UI画面)を表す画面データと、制御データと、を含む。この制御データは、例えば、UI画面を利用して複合機200が所定の処理(具体的には、後述するS15のスキャン処理)を行うために必要な各種のデータを含む。例えば、制御データは、UI画面(例えば、図4)を介して受け付けたユーザの指示に基づいて、複合機200が実行すべき処理(例えば、サーバ400へのスキャンデータの送信)を行うために必要な情報(例えば、スキャンデータの送信先アドレス)を含む。
S15では、CPU210は、受信したUIデータに基づいて、複数個のスキャンデータを生成するスキャン処理を実行する。スキャン処理では、CPU210は、ユーザが用意した原稿を2回に分けて読み取ることによって、2個のスキャンデータを生成する。本実施例のスキャンデータは、RGBの各成分の値(例えば、0〜255の256階調の値)を画素ごとに含むRGB画像データである。
図3は、本実施例で用いられる原稿の一例を示す図である。図3の原稿10のサイズは、スキャナ部250が1回で読み取り可能なサイズ(本実施例では、A4サイズより少し大きなサイズ)の約2倍のサイズ(本実施例では、A3サイズ)である。
図4は、UI画面の一例を示す図である。先ず、CPU210は、図4のUI画面UG1を表示部270に表示する。例えば、UI画面UG1は、原稿台への原稿10の適切な設置を促すメッセージMS1と、スキャンボタンSBと、キャンセルボタンCBと、を含んでいる。ユーザは、UI画面UG1に従って、原稿10の左側の約半分の領域10L(図3)を読み取ることができるように、原稿10を原稿台に設置し、スキャンボタンSBを押下する。スキャンボタンSBの押下に応じて、CPU210は、スキャナ部250を制御して原稿を読み取ることによって、左側スキャンデータを生成する。
図5は、スキャン画像の一例を示す図である。図5(A)には、左側スキャンデータによって表される左側スキャン画像20Lが示されている。左側スキャン画像20Lは、原稿10の左側の約半分の領域10L(図3)を示す左側原稿画像HILと、余白WBLと、を含んでいる。
次に、CPU210は、所定のUI画面(図示省略)を表示部270に表示する。このUI画面は、UI画面UG1と同様に、原稿台への原稿10の適切な設置を促すメッセージと、スキャンボタンと、キャンセルボタンと、を含んでいる。ユーザは、UI画面に従って、原稿10の右側の約半分の領域10R(図3)を読み取ることができるように、原稿10を原稿台に設置し、スキャンボタンを押下する。CPU210は、スキャンボタンの押下に応じて、スキャナ部250を制御して原稿を読み取ることによって、右側スキャンデータを生成する。
図5(B)には、右側スキャンデータによって表される右側スキャン画像20Rが示されている。右側スキャン画像20Rは、原稿10の右側の約半分の領域10R(図3)を示す右側原稿画像HIRと、余白WBRと、を含んでいる。
ここで、図3の原稿10の横方向の中央部CAを表す画像は、左側スキャン画像20Lの右辺に沿った領域と、右側スキャン画像20Rの左辺に沿った領域と、の両方に含まれている。すなわち、図5にハッチングで示すように、左側スキャン画像20Lは、原稿10の中央部CAを表す画像CILを含み、右側スキャン画像20Rは、原稿10の中央部CAを表す画像CIRを含んでいる。これは、例えば、UI画面や説明書などによって、原稿10の中央部CAが、右側スキャンデータの生成時と左側スキャンデータの生成時との両方で読み取られるように、原稿10を原稿台に設置するように、ユーザに指示することによって、実現される。なお、左側スキャン画像20L内の画像CILと、右側スキャン画像20R内の画像CIRとは、ともに原稿10の部分CIAを表しているが、ユーザの操作などにおって、面積や色などに多少の差は、生じ得る。
図2のS20では、CPU210は、右側スキャン画像20Rを表す右側スキャンデータと、左側スキャン画像20Lを表す左側スキャンデータと、をサーバ400に対して送信する。この結果、S25にて、サーバ400のCPU410は、右側スキャンデータと、左側スキャンデータと、取得して、バッファ領域421に格納する。
S30では、CPU410は、右側スキャンデータを用いて、基準領域決定処理を実行する。基準領域決定処理は、右側スキャンデータによって表される右側スキャン画像20Rの一部の領域である基準領域SPを決定する処理である。
図6は、基準領域決定処理のフローチャートである。S105では、CPU410は、右側スキャン画像20R内に、配置範囲SA1を決定する。決定された配置範囲SA1の内側に、基準領域決定処理によって、基準領域SPが決定される。配置範囲SA1の位置、形状、サイズ(すなわち、縦方向および横方向の画素数)は、予め定められている。
具体的には、配置範囲SA1は、図5(B)に示すように、右側スキャン画像20Rの4つの辺のうち、原稿10の中央部CAを表す画像CIRに沿った辺、本実施例では、右側スキャン画像20Rの左辺に沿って配置される。
配置範囲SA1の横方向の長さ(すなわち、短手方向の長さ)は、右側スキャン画像20Rにおいて、原稿10の中央部CAを表す画像CIRの横方向の幅より狭いことが好ましい。配置範囲SA1の横方向の長さは、例えば、30画素〜200画素程度であり、右側スキャン画像20Rの横方向の長さの1%〜5%程度である。
配置範囲SA1の縦方向の長さ(すなわち、長手方向の長さ)は、右側スキャン画像20Rの縦方向の長さと等しい。すなわち、配置範囲SA1は、実際には、図5(B)に示すより、縦方向の長さが長い形状を有している。
なお、本実施例では、配置範囲SA1は、右側スキャン画像20Rの左辺と、上辺の左側の部分と、下辺の左側の部分と、を含んでいるが、右側スキャン画像20Rの左辺と上辺と下辺との間に所定のマージン(例えば、20画素分のマージン)を確保して、配置されても良い。スキャン画像20Rの端部は、原稿の端部の影などが写るなどの理由から、内側の部分と比較してノイズを含みやすい。マージンを確保すれば、配置範囲SA1内に、当該ノイズの多い領域が基準領域に含まれることを避けることができる。
S110では、CPU410は、基準領域SPのサイズを決定する。本実施例では、基準領域SPのサイズは、予め定められた値に決定される。具体的には、基準領域SPは、基準領域SPの横方向のサイズは、例えば、5画素〜20画素程度であり、基準領域SPの縦方向のサイズは、右側スキャン画像20Rの縦方向の画素数の1/4〜1/2程度である。
S115では、CPU410は、配置範囲SA1内の複数個の部分画像の中から、1個の注目部分画像を選択する。図7は、配置範囲SA1内の複数個の部分画像について説明する図である。説明のために、図7の配置範囲SA1内の画素の座標を、右方向を正方向とするX1軸と下方向を正方向とするY1軸とを有し、配置範囲SA1の左上の画素を(1、1)とする2次元座標系を用いて表す。
部分画像のサイズおよび形状は、S110にて決定された基準領域SPと同じである。
配置範囲SA1の上辺および左辺と、上辺および左辺が一致する部分画像PI1の右上の左上の画素P1の座標を(1、1)とする。配置範囲SA1の下辺および左辺と、下辺および左辺が一致する部分画像PI2の左上の画素P2の座標を(1、t)とする(tは自然数)。配置範囲SA1の上辺および右辺と、上辺および右辺が一致する部分画像PI3の左上の画素P3の座標を(s、1)とする(sは自然数)。配置範囲SA1の下辺および右辺と、下辺および右辺が一致する部分画像PI4の左上の画素P4の座標を(s、t)とする。
左上の画素が座標(a、b)に位置する(s×t)個の部分画像が、注目部分画像として選択される選択対象である。ここで、aは、1以上s以下の任意の整数であり、bは、1以上t以下の任意の整数である。
図7に矢印で示すように、これらの(s×t)個の部分画像の中から、左上の端の部分画像PI1が最初の注目部分画像として選択される。そして、1画素ずつ下方向に位置がずれた部分画像が、順次に選択される。そして、左下の端の部分画像PI2が選択されると、左上の端の部分画像PI1の位置から1画素だけ右方向にずれた部分画像が選択される。その後は、再び1画素ずつ下方向に位置がずれた部分画像が、順次に選択される。最後に選択される部分画像は、右下の端の部分画像PI4である。
1個の注目部分画像が選択されると、S120では、CPU410は、注目部分画像のばらつき画素数VCを算出する。
ばらつき画素数VCの算出方法は、以下の通りである。先ず、CPU410は、注目部分画像内の複数個の画素を、2種類の画素、すなわち、ばらつき画素と、非ばらつき画素と、に分類する。
図8は、ばらつき画素と非ばらつき画素とを説明する図である。CPU410は、注目部分画像内の複数個の画素を1個ずつ注目画素TPとして選択して、注目画素TPがばらつき画素であるか非ばらつき画素であるかを判断する。具体的には、図8に示すように、CPU410は、注目画素TPを中心とする横3画素×3画素分の領域FL内の画素を用いて、当該判断を実行する。まず、図8の式に示すように、CPU410は、注目画素TPの値(R0、B0、B0)と、周囲の8個の画素の値(Rn、Gn、Bn)のそれぞれと、の差分ΔVnを算出する。nは、注目画素の周囲の8個の画素を識別する1〜8までの番号であり、図8の領域FL内の各画素に付された番号である。ΔVnは、図8に式で示すように、3種類の成分値の差分の絶対値の和で表される。すなわち、ΔVnは、(Rn−R0)の絶対値と、(Gn−G0)の絶対値と、(Bn−B0)の絶対値と、の合計値で表される。CPU410は、図8に式で示すように、算出された8個の差分ΔVnの合計値を、注目画素TPのばらつき値Vとして算出する。
注目画素TPのばらつき値Vが、所定の閾値Vth以上である場合には、注目画素TPは、ばらつき画素であると判断される。注目画素TPのばらつき値Vが、所定の閾値Vth未満である場合には、注目画素TPは、非ばらつき画素であると判断される。これによって、注目部分画像内の全ての画素が、ばらつき画素と非ばらつき画素とのいずれかに分類される。以上の説明から解るように、ばらつき画素は、周囲の複数個の画素との値の差が基準以上の画素である、と言うことができる。非ばらつき画素は、周囲の複数個の画素との値の差が基準未満の画素である、と言うことができる。
CPU410は、注目部分画像内のばらつき画素の個数を、注目部分画像のばらつき画素数VCとして算出する。ばらつき画素数VCは、注目部分画像内の複数個の画素の値のばらつきを示す値と言うことができる。
S125では、CPU410は、注目部分画像のばらつき画素数VCと、記憶値VCmと、を比較する。記憶値VCmは、処理済みの部分画像のばらつき画素数VCのうちの最大値である。記憶値VCmの初期値は、0である。
注目部分画像のばらつき画素数VCが、記憶値VCmより大きい場合には(S130:YES)、S135において、CPU410は、注目部分画像のばらつき画素数VCを、新たな記憶値VCmとして記憶する。そして、S140において、CPU410は、注目部分画像の左上の画素の座標P(X1、Y1)を、最大のばらつきを有する部分画像を示す情報として記憶する。注目部分画像のばらつき画素数VCが、記憶値VCm以下である場合には(S130:NO)、CPU410は、S135、S140をスキップして、S145に処理を進める。
S145では、CPU410は、配置範囲SA1内の全ての部分画像(図7)を注目部分画像として処理したか否かを判断する。未処理の部分画像がある場合には(S145:NO)、CPU410は、S115に戻って、未処理の部分画像を注目部分画像として選択する。全ての部分画像が処理された場合には(S145:YES)、S150において、CPU410は、上述したS140にて部分画像の座標P(X1、Y1)が記憶されているか否かを判断する。ここで、配置範囲SA1内にばらつき画素が1個もない場合以外は、S140にて部分画像の座標P(X1、Y1)が記憶されるので、部分画像の座標P(X1、Y1)が記憶されないケースは、ほとんどない。
部分画像の座標P(X1、Y1)が記憶されている場合には(S150:YES)、S160において、CPU410は、記憶された座標P(X1、Y1)によって特定される部分画像の領域を、基準領域SPとして決定する。部分画像の座標P(X1、Y1)が記憶されていない場合には(S150:NO)、S155において、CPU410は、デフォルトの領域を、基準領域SPとして決定する。デフォルトの領域は、例えば、座標P(X1、Y1)=(1、1)によって特定される部分画像の領域である。基準領域SPが決定されると、基準領域決定処理は終了される。
以上の説明から解るように、本実施例の基準領域決定処理では、配置範囲SA1内の複数個の部分画像のうち、最大のばらつき画素数VCを有する部分画像の領域が、基準領域SPとして決定される。図5(B)には、右側スキャン画像20Rの配置範囲SA1内に決定されたSPが図示されている。
基準領域決定処理が終了されると、図2のS35では、CPU410は、対応領域決定処理を実行する。対応領域決定処理は、右側スキャン画像20R内の基準領域SPに対応する左側スキャン画像20L内の対応領域CPを決定する処理である。基準領域SPに対応する対応領域CPは、次のように定義できる。右側スキャン画像20R内の基準領域SP内に表されている原稿10の一部分を特定部分SPT(図3)とする。基準領域SPに対応する対応領域CPは、左側スキャン画像20Lにおいて、原稿10の特定部分SPTを表す領域である。
図9は、対応領域決定処理のフローチャートである。S205では、CPU410は、左側スキャン画像20L内に探索領域SA2を決定する。図5(A)の左側スキャン画像20L内には、探索領域SA2が示されている。探索領域SA2は、予め定められた領域である。探索領域SA2の縦方向の長さは、左側スキャン画像20Lの縦方向の全長に等しい。探索領域SA2の左右方向の長さは、例えば、左側スキャン画像20Lの左右方向の長さの20%〜50%である。探索領域SA2は、左側スキャン画像20Lの右辺と、上辺の右側の部分と、下辺の右側の部分と、を含む領域である。
S210では、CPU410は、探索領域SA2内に配置可能な複数個の候補領域の中から、1個の注目候補領域を選択する。図10は、探索領域SA2内に配置可能な複数個の候補領域について説明する図である。説明のために、図10の探索領域SA2内の画素の座標を、左方向を正方向とするX2軸と下方向を正方向とするY2軸とを有し、探索領域SA2の右上の画素を(1、1)とする2次元座標系を用いて表す。
候補領域の形状およびサイズは、図6の基準領域決定処理によって右側スキャン画像20R内に決定された基準領域SP(図5(B))の形状およびサイズと同じである。
探索領域SA2の上辺および右辺と、上辺および右辺が一致する候補領域NPaの右上の点Paの座標を(1、1)とする。探索領域SA2の下辺および右辺と、下辺および右辺が一致する候補領域NPbの右上の点Pbの座標を(1、m)とする(mは自然数)。探索領域SA2の上辺および左辺と、上辺および左辺が一致する候補領域NPcの右上の点Pcの座標を(k、1)とする(kは自然数)。探索領域SA2の下辺および左辺と、下辺および左辺が一致する候補領域NPdの右上の点Pdの座標を(k、m)とする。
候補領域の右上の点は、(p、q)で表される(k×m)個の座標のうち、任意の座標に位置することができる。ここで、pは、1以上k以下の任意の整数であり、qは、1以上m以下の任意の整数である。したがって、探索領域SA2内には、(k×m)個の候補領域が設定可能である。
図10に矢印で示すように、これらの(k×m)個の候補領域の中から、右上の端の候補領域NPaが最初の注目候補領域として選択される。そして、1画素ずつ下方向に位置がずれた候補領域が、順次に選択される。そして、右下の端の候補領域NPbが選択されると、右上の端の候補領域NPaの位置から1画素だけ左方向にずれた候補領域が選択される。その後は、再び1画素ずつ下方向に位置がずれた候補領域が、順次に選択される。最後に選択される候補領域は、左下の端の候補領域NPdである。
1個の注目候補領域が選択されると、S215では、CPU410は、右側スキャン画像20R内の基準領域SP(図5(B))内の全ての画素のうち、1個の画素を注目画素として選択する。
S220では、CPU410は、基準領域SP内の注目画素の値と、当該注目画素に対応する注目候補領域内の画素の値と、の差ΔVPを算出する。差ΔVPを算出すべき2個の画素の値を、(R1、G1、B1)と(R2、G2、B2)とする。差ΔVPは、3種類の成分値間の差分の絶対値の和で表される。すなわち、差ΔVPは、(R1−R2)の絶対値と、(G1−G2)の絶対値と、(B1−B2)の絶対値と、の合計値で表される。これに代えて、差ΔVPには、(R1、G1、B1)と(R2、G2、B2)とのユークリッド距離が用いられても良い。
続くS225では、CPU410は、算出された差ΔVPが、所定の基準値TH1以下であるか否かを判断する。差ΔVPが、所定の基準値TH1以下である場合には(S225:YES)、S230において、CPU410は、類似画素数SCをカウントアップする。差ΔVPが、所定の基準値TH1以下である場合には、基準領域SP内の注目画素と、当該注目画素に対応する注目候補領域内の画素とは、類似する画素であると判断できるからである。
差ΔVPが、所定の基準値TH1より大きい場合には(S225:NO)、CPU410は、S230をスキップして、処理をS235に進める。
S235では、CPU410は、基準領域SP内の全ての画素を注目画素として処理したか否かを判断する。未処理の画素がある場合には(S235:NO)、CPU410は、S215に戻って、未処理の画素を注目画素として選択する。全ての画素が処理された場合には(S235:YES)、CPU410は、S240に処理を進める。
S240では、CPU410は、基準領域SPと、注目候補領域と、の類似度(SC/Nt)を算出する。類似度(SC/Nt)は、基準領域SP内の画素の総数Ntに対する類似画素数SCの割合である。類似度(SC/Nt)が大きいほど、基準領域SPと、注目候補領域とは、類似している。
S245では、CPU410は、類似度(SC/Nt)が、閾値TH2以上であるか否かを判断する。
類似度(SC/Nt)が、閾値TH2以上である場合には(S245:YES)、S250において、CPU410は、現在の注目候補領域を、基準領域SPに対応する対応領域CPとして決定して、対応領域決定処理を終了する。
類似度(SC/Nt)が、閾値TH2未満である場合には(S245:NO)、S255において、CPU410は、探索領域SA2内の全ての候補領域(図10)を注目候補領域として処理したか否かを判断する。未処理の候補領域がある場合には(S255:NO)、CPU410は、S260において、類似画素数SCを初期化したうえで、S210に戻って、未処理の候補領域を注目候補領域として選択する。全ての候補領域が処理された場合には(S255:YES)、CPU410は、基準領域SPに対応する対応領域CPを決定できないまま、対応領域決定処理を終了する。
図5(A)には、左側スキャン画像20Lの探索領域SA2内に、決定された対応領域CPが図示されている。
対応領域決定処理が終了すると、図2のS40では、CPU410は、合成処理を実行する。合成処理は、右側スキャンデータと左側スキャンデータとを用いて、右側スキャン画像20R内の右側原稿画像HIRと、左側スキャン画像20L内の左側原稿画像HILとが合成された合成画像30を表す合成画像データが生成される。
図11は、合成画像31の一例を示す図である。図11に示すように、合成画像30において、右側原稿画像HIRと左側原稿画像HILとは、右側原稿画像HIR内の基準領域SPと、左側原稿画像HIL内の対応領域CPと、が重なるように、合成される。合成画像30において、右側原稿画像HIRと左側原稿画像HILとが互いに重なり合う領域内の画素の値には、例えば、右側原稿画像HIR(右側スキャン画像20R)内の画素の値が優先的に採用される。これによって、右側原稿画像HIRと左側原稿画像HILとが合成されて、図3の原稿10を表す合成画像30が生成される。
なお、図9の対応領域決定処理において、基準領域SPに対応する対応領域CPを決定できなかった場合には(図9のS255:YES)、例えば、機械的に、左側スキャン画像20Lの右端の辺と、右側スキャン画像20Rの左端の辺と、が接するように、2個のスキャン画像が合成された合成画像を表す合成画像データが生成される(図示省略)。
図2のS45では、CPU410は、生成された合成画像データを複合機200に対して送信する。複合機200のCPU210は、合成画像データを受信すると、受信した合成画像データを不揮発性記憶装置230に格納するとともに、ユーザに合成画像データを受信したことを通知する。合成画像データは、ユーザの利用に供される。ユーザは、例えば、複合機200に、これらの合成画像データを用いて、合成画像30を印刷させることができる。
以上説明した上記第1実施例によれば、右側スキャン画像20R内の複数個の画素の値のばらつきに基づいて、右側スキャン画像20R内における基準領域SPの位置が決定される(図2のS30、図6)。この結果、右側スキャン画像20R内における基準領域SPの位置が適切に決定されるので、右側スキャン画像20Rと、左側スキャン画像20Lと、を適切に合成することができる。
より詳しく説明する。画素のばらつきが比較的小さい領域は、特徴が乏しい。このために、当該領域が基準領域SPに決定されると、左側スキャン画像20L内の対応領域CPを決定することが困難になる可能性がある。例えば、左側スキャン画像20L内の誤った領域が、対応領域CPに決定されやすい。画素のばらつきが比較的小さい領域には、例えば、背景を示す領域や、オブジェクトの内部の色の変化が乏しい領域などが含まれる。
これに対して、ばらつきが比較的大きな領域は、エッジなどを比較的多く含むので、特徴的な部分を含む可能性が高い。このために、当該領域が基準領域SPに決定されると、左側スキャン画像20L内の対応領域CPを正しく決定できる可能性が高くなる。換言すれば、ばらつきが比較的小さい領域を基準にするよりも、ばらつきが比較的大きい領域を基準にするほうが、対応領域CPに対応する対応領域CPを精度良く決定できる。
上記第1実施例によれば、右側スキャン画像20内の複数個の部分画像(具体的には、図7の(s×t)個の部分画像)のそれぞれについて、画像内の複数個の画素の値のばらつきを示す値(具体的いは、ばらつき画素数VC)が算出される(図6のS120)。そして、複数個の部分画像のうち、ばらつきを示す値が最も大きい部分画像の領域が、基準領域SPとして決定される(図6のS130〜S140、S160)。この結果、内部の画素の値のばらつきが最も大きな領域を、基準領域SPとして用いることによって、基準領域SPに対応する対応領域CPを精度良く決定することができる。したがって、右側スキャン画像20Rと左側スキャン画像20Lとを合成する場合において、右側スキャン画像20R内の右側原稿画像HIRと、左側スキャン画像20L内の左側原稿画像HILと、を合成する位置を決定する精度(以下、単に合成精度とも呼ぶ)を向上することができる。
B.第2実施例
第2実施例は、基準領域決定処理の内容が、第1実施例の基準領域決定処理とは異なる。第2実施例のその他の点は、第1実施例と同じである。図12は、第2実施例の基準領域決定処理のフローチャートである。図13は、第2実施例の基準領域決定処理の説明図である。
図12のS305では、図6のS105と同様に、CPU410は、右側スキャン画像20R内に、配置範囲SA1を決定する。
S310では、CPU410は、配置範囲SA1に配置する単位領域のサイズを決定する。本実施例では、単位領域のサイズは、予め定められた値に決定される。単位領域のサイズは、第1実施例の基準領域SPのサイズより小さい。具体的には、1個の単位領域の横方向のサイズは、例えば、1〜2画素程度であり、1個の単位領域の縦方向のサイズは、右側スキャン画像20Rの縦方向の画素数の1/6〜1/3程度である。
S315では、CPU410は、配置範囲SA1内の複数個の単位領域の中から、1個の注目単位領域を選択する。図13(A)には、配置範囲SA1内の複数個の単位領域が示されている。説明のために、図7と同様に、配置範囲SA1内の画素の座標を、右方向を正方向とするX1軸と下方向を正方向とするY1軸とを有し、配置範囲SA1の左上の画素を(1、1)とする2次元座標系を用いて表す。
配置範囲SA1の上辺および左辺と、上辺および左辺が一致する単位領域UAaの右上の左上の画素UPaの座標を(1、1)とする。配置範囲SA1の下辺および左辺と、下辺および左辺が一致する単位領域UAbの左上の画素UPbの座標を(1、w)とする(wは自然数)。配置範囲SA1の上辺および右辺と、上辺および右辺が一致する単位領域UAcの左上の画素UPcの座標を(v、1)とする(vは自然数)。配置範囲SA1の下辺および右辺と、下辺および右辺が一致する単位領域UAdの左上の画素UPdの座標を(v、w)とする。
左上の画素が座標(e、f)に位置する(v×w)個の単位領域が、注目部単位領域として選択される選択対象である。ここで、eは、1以上v以下の任意の整数であり、fは、1以上w以下の任意の整数である。
図13に矢印で示すように、これらの(v×w)個の単位領域の中から、左上の端の単位領域UAaが最初の注目単位領域として選択される。そして、1画素ずつ下方向に位置がずれた単位領域が、順次に選択される。そして、左下の端の単位領域UAbが選択されると、左上の端の単位領域UAaの位置から1画素だけ右方向にずれた部分画像が選択される。その後は、再び1画素ずつ下方向に位置がずれた部分画像が、順次に選択される。最後に選択される部分画像は、右下の端の単位領域UAdである。
1個の注目単位領域が選択されると、S320では、CPU410は、注目単位領域のばらつき画素数VCuを算出する。具体的には、CPU410は、第1実施例の注目部分画像のばらつき画素数VCの算出(図6のS120)と同様の方法で、注目単位領域のばらつき画素数VCuを算出する。すなわち、CPU410は、注目単位領域内の複数個の画素をばらつき画素と非ばらつき画素とに分類し、注目単位領域内のばらつき画素の個数を、ばらつき画素数VCuとして算出する。ばらつき画素数VCuは、注目単位領域内の複数個の画素の値のばらつきを示す値と言うことができる。
S325では、CPU410は、注目単位領域のばらつき画素数VCuと、所定の閾値VCthと、を比較する。ばらつき画素数VCuが所定の閾値Ch以上である単位領域は、内部の画素の値のばらつきが比較的大きい単位領域であり、ばらつき単位領域とも呼ぶ。ばらつき画素数VCuが所定の閾値Ch未満である単位領域は、内部の画素の値のばらつきが比較的小さい単位領域であり、非ばらつき単位領域とも呼ぶ。
注目単位領域のばらつき画素数VCuが、閾値VCth以上である場合には(S330:YES)、S335において、CPU410は、注目単位領域の左上の画素の座標UP(X1、Y1)を、ばらつき単位領域を示す情報として記憶する。注目単位領域のばらつき画素数VCuが、閾値VCth未満である場合には(S330:NO)、CPU410は、S335をスキップして、S340に処理を進める。
S340では、CPU410は、配置範囲SA1内の全ての単位領域(図13(A))を注目単位領域として処理したか否かを判断する。未処理の単位画像がある場合には(S340:NO)、CPU410は、S315に戻って、未処理の単位領域を注目単位領域として選択する。全ての単位領域が処理された場合には(S340:YES)、S345において、CPU410は、上述したS335にて1個以上の単位領域の座標P(X1、Y1)が記憶されているか否かを判断する。ここで、配置範囲SA1内にばらつき単位領域が1個もない場合以外は、S335にて単位領域の座標UP(X1、Y1)が記憶されるので、単位領域の座標UP(X1、Y1)が記憶されないケースは、ほとんどない。
単位領域の座標UP(X1、Y1)が記憶されていない場合には(S345:NO)、S350において、CPU410は、デフォルトの領域を、基準領域SPとして決定する。デフォルトの領域は、例えば、第1実施例の図6のS155で用いられるデフォルトの領域と同じである。単位領域の座標UP(X1、Y1)が記憶されている場合には(S345:YES)、S355において、CPU410は、基準領域配置処理を実行する。
図14は、基準領域配置処理のフローチャートである。先ず、図14の基準領域配置処理が開始される時点で、配置範囲SA1内には、複数個のばらつき単位領域が特定されている(図13(B))。図13(B)において、黒い丸は、特定されたばらつき単位領域の左上の画素(領域特定画素とも呼ぶ)の位置を示している。
S405では、CPU410は、特定された複数個のばらつき単位領域の中から、近接ばらつき単位領域群を選択する。近接ばらつき単位領域群は、互いに近接している1個以上のばらつき単位領域を含む。具体的には、CPU410は、所定の大きさの判定枠JH(図13(B))を用いて配置範囲SA1内を走査して、内部に含まれる領域特定画素の個数が最大である判定枠JHの位置を決定する。判定枠JHのサイズは、例えば、第1実施例の基準領域SPのサイズと同じである。
図13(B)には、内部に含まれる領域特定画素の個数が最大である判定枠JHが示されている。図13(B)に示す判定枠JHには、5個の領域特定画素UP1〜UP5が含まれている。CPU410は、さらに、これらの5個の領域特定画素UP1〜UP5との距離が、基準距離Dthより近い領域特定画素を特定する。図13(B)の例では、領域特定画素UP1〜UP5との距離が、基準距離Dthより近い2個の領域特定画素P6、P7が特定される。この結果、図13(B)の例では、7個の領域特定画素UP1〜UP7に対応する7個のばらつき単位領域が、近接ばらつき単位領域群として選択される。換言すれば、ばらつき単位領域の密度が最も高い密集領域が、判定枠JHを用いて特定される。近接ばらつき単位領域群は、特定された密集領域内に含まれる1個以上のばらつき単位領域を含むと言うことができる。このようにして、基準領域SPの決定に用いられる近接ばらつき単位領域群が適切に決定される。
S410では、CPU410は、近接ばらつき単位領域群によって規定される領域VA(以下、ばらつき領域VAとも呼ぶ)内の画素数PCを算出する。図13(C)には、近接ばらつき単位領域群によって規定されるばらつき領域VAの一例を示す図である。ばらつき領域VAは、近接ばらつき単位領域群に含まれる1個以上のばらつき単位領域のうちの少なくとも一個の単位領域に含まれる複数個の画素によって構成される。
S415〜S440では、CPU410は、算出された画素数PCと、3個の画素数閾値PCth1〜PCth3と、を比較することによって、基準領域SPを決定する。3個の画素数閾値PCth1〜PCth3の大小関係は、PCth1<PCth2<PCth3である。
先ず、S415では、CPU410は、画素数PCが、第1の画素数閾値PCth1未満であるか否かを判断する。画素数PCが、第1の画素数閾値PCth1未満である場合には(S415:YES)、S430において、CPU410は、デフォルトのサイズの領域を、基準領域SPとして決定する。この場合は、ばらつき領域VAが過度に小さいので、ばらつき領域VAの外接矩形を基準領域SPにすると、基準領域SPが過度に小さくなってしまう。デフォルトのサイズの基準領域SPは、第1実施例の基準領域SP(図5(B))と同じサイズである。例えば、ばらつき領域VAの重心位置を中心とするデフォルトサイズの領域が、基準領域SPとして決定される。
画素数PCが、第1の画素数閾値PCth1より大きい場合には(S415:NO)、S420において、CPU410は、画素数PCが、第2の画素数閾値PCth2未満であるか否かを判断する。画素数PCが、第2の画素数閾値PCth2未満である場合には(S420:YES)、S440において、CPU410は、ばらつき領域VAの外接矩形を、基準領域SPとして決定する。この場合は、ばらつき領域VAの外接矩形程度のサイズが、適切な基準領域SPのサイズだからである。
図15は、ばらつき領域VAに基づいて決定される基準領域SPの一例を示す図である。図15(A)には、特定のばらつき領域VA1の外接矩形が、特定の基準領域SP1として決定される例が示されている。このように、ばらつき領域VAの外接矩形を基準領域SPとすれば、内部の画素の値のばらつきが大きくなるように、適切な形状の基準領域SPを決定することができる。
画素数PCが、第2の画素数閾値PCth2より大きい場合には(S420:NO)、S425において、CPU410は、画素数PCが、第3の画素数閾値PCth3未満であるか否かを判断する。画素数PCが、第3の画素数閾値PCth3未満である場合には(S425:YES)、S435において、CPU410は、ばらつき領域VAの内接矩形を、基準領域SPとして決定する。この場合は、ばらつき領域VAの内接矩形程度のサイズが、適切な基準領域SPのサイズだからである。
図15(B)には、特定のばらつき領域VA2の内接矩形が、特定の基準領域SP2として決定される例が示されている。このように、ばらつき領域VA2の内接矩形を基準領域SPとすれば、内部の画素の値のばらつきが大きくなるように、適切な形状の基準領域SPを決定することができる。
画素数PCが、第3の画素数閾値PCth3より大きい場合には(S425:NO)、S430において、CPU410は、デフォルトのサイズの領域を、基準領域SPとして決定する。この場合は、ばらつき領域VAが過度に大きいので、ばらつき領域VAの内接矩形を基準領域SPにすると、基準領域SPが過度に大きくなってしまう。例えば、ばらつき領域VAの重心位置を中心とするデフォルトサイズの領域が、基準領域SPとして決定される。
以上説明した上記第2実施例によれば、第1実施例と同様に、右側スキャン画像20R内の複数個の画素の値のばらつきに基づいて、右側スキャン画像20R内における基準領域SPの位置が決定される。具体的には、基準領域SPの位置は、ばらつき単位領域に基づいて決定されている(図14のS405など)。この結果、右側スキャン画像20R内における基準領域SPの位置が適切に決定されるので、右側スキャン画像20Rと、左側スキャン画像20Lと、を適切に合成することができる。
さらに、上記第2実施例によれば、右側スキャン画像20R内の複数個の画素の値のばらつきに基づいて、基準領域SPの形状を決定する。この結果、例えば、基準領域SP内の画素の値のばらつきに応じて、基準領域の形状を適切に決定し得る。したがって、基準領域SPに対応する対応領域CPが適切に決定されるので、右側スキャン画像20Rと、左側スキャン画像20Lと、を適切に合成することができる。
より詳しく説明する。右側スキャン画像20内に複数個の単位領域が設定され(図13(A))、複数個の単位領域のそれぞれについて、領域内の画素の値のばらつきを示す値(具体的には、ばらつき画素数VCu)が算出される(図12のS320)。そして、ばらつきを示す値に基づいて、複数個の単位領域の中から、ばらつきを示す値が閾値VCth以上の1個以上のばらつき単位領域(具体的には、近接ばらつき単位領域群)が選択される(図14のS405)。選択された1個以上のばらつき単位領域を用いて、基準領域SPが決定される(図14のS430〜S440)。この結果、1個以上のばらつき単位領域に基づいて、基準領域SPの形状や位置が適切に決定される。この結果、基準領域SP内の画素の値のばらつきが過度に小さくなってしまうことが抑制される。この結果、右側スキャン画像20Rと左側スキャン画像20Lとを合成する場合において、合成精度を向上することができる。
例えば、選択された1個以上のばらつき単位領域、すなわち、ばらつき領域VA(図13(C))に外接する領域が基準領域SPとして決定される(図15(A))。あるいは、ばらつき領域VA(図13(C))に内接する領域が基準領域SPとして決定される(図15(B))。この結果、基準領域SPが適切に決定されるので、右側スキャン画像20Rと左側スキャン画像20Lとを合成する場合において、合成精度を向上することができる。
より具体的には、選択された1個以上のばらつき単位領域の全体のサイズ(すなわち、ばらつき領域VAの画素数PC)が、基準のサイズ(すなわち、第2の画素数閾値PCth2)未満である場合に(S420:YES)、ばらつき領域VAに外接する領域が基準領域SPとして決定される(S440)。そして、選択された1個以上のばらつき単位領域の全体のサイズが基準サイズ以上である場合に(S420:NO)、ばらつき領域VAに外接する領域が基準領域SPとして決定される(S435)。この結果、ばらつき領域VAの全体のサイズに応じて、適切な基準領域SPが決定される。
さらに、配置範囲SA1内に設定される複数個の単位領域は、ばらつきが閾値以上である複数個の第1種の単位領域(具体的には、ばらつき単位領域)と、ばらつきが閾値未満である複数個の第2種の単位領域(具体的には、ばらつき単位領域以外の単位領域)とに、分類される(S320〜S335、図13(B))。そして、複数個の第1種の単位領域の中から、互いに近接する1個以上のばらつき単位領域(すなわち、近接ばらつき単位領域群)が選択される(図14のS405)。したがって、複数個の単位領域の中から、基準領域SPを決定するための適切な単位領域を選択することができる。
C.第3実施例
第3実施例は、基準領域配置処理の内容が、第2実施例の基準領域配置処理(図14)とは異なる。第3実施例のその他の点は、第2実施例と同じである。図16は、第3実施例の基準領域配置処理のフローチャートである。図17は、第3実施例の基準領域配置処理の説明図である。
図16のS505では、図14のS405と同様に、CPU410は、特定された複数個のばらつき単位領域の中から、近接ばらつき単位領域群を選択する。S510では、CPU410は、近接ばらつき単位領域群によって規定されるばらつき領域VA内の最大ばらつき画素MXPを特定する。最大ばらつき画素は、ばらつき領域VA内の複数個の画素のうち、最大のばらつき値V(図8)を有する画素である。図17には、ばらつき領域VA内の画素MXPが図示されている。
S515では、CPU410は、最大ばらつき画素MXPの周囲のばらつきの程度を示すばらつき評価値Varを算出する。ばらつき評価値Varは、例えば、最大ばらつき画素MXPを中心とした縦5画素×横5画素の範囲FL(図16)内の25個の画素のばらつき値Vの平均値である。
S520〜S540では、CPU410は、算出されたばらつき評価値Varと、2個のばらつき閾値Vth1、Vth2と、を比較することによって、基準領域SPのサイズを決定する。2個のばらつき閾値Vth1、Vth2の大小関係は、Vth1<Vth2である。
先ず、S520において、CPU410は、ばらつき評価値Varが、第1のばらつき閾値Vth1未満であるか否かを判断する。ばらつき評価値Varが、第1のばらつき閾値Vth1未満である場合には(S520:YES)、S540において、CPU410は、大サイズの領域を基準領域SPとして決定する。図17には、大サイズの基準領域SPLの一例が示されている。この基準領域SPLの横方向の長さは、5画素であり、縦方向のサイズは、右側スキャン画像20Rの縦方向の長さの約3/4である。
ばらつき評価値Varが、第1のばらつき閾値Vth1より大きい場合には(S520:NO)、S525において、CPU410は、ばらつき評価値Varが、第2のばらつき閾値Vth2未満であるか否かを判断する。ばらつき評価値Varが、第2のばらつき閾値Vth2未満である場合には(S525:YES)、S535において、CPU410は、中サイズの領域を基準領域SPとして決定する。図17には、中サイズの基準領域SPMの一例が示されている。この基準領域SPMの横方向の長さは、3画素であり、縦方向のサイズは、右側スキャン画像20Rの縦方向の長さの約1/2である。
ばらつき評価値Varが、第2のばらつき閾値Vth2より大きい場合には(S525:NO)、S530において、CPU410は、小サイズの領域を基準領域SPとして決定する。図17には、小サイズの基準領域SPSの一例が示されている。この基準領域SPSの横方向の長さは、1画素であり、縦方向のサイズは、右側スキャン画像20Rの縦方向の長さの約1/4である。
なお、各サイズの基準領域SPS〜SPMは、図17に示すように、最大ばらつき画素MXPを中心として配置される。
以上説明した第3実施例によれば、右側スキャン画像20R内の複数個の画素の値のばらつきに基づいて、基準領域SPのサイズが決定される(図16のS520〜S550)。この結果、例えば、基準領域SP内の画素の値のばらつきに応じて、基準領域SPのサイズを適切に決定し得る。したがって、基準領域SPに対応する対応領域CPが適切に決定されるので、右側スキャン画像20Rと、左側スキャン画像20Lと、を適切に合成することができる。
具体的には、右側スキャン画像20R内の複数個の画素の値のばらつきが小さいほど、基準領域SPのサイズが大きくされる。すなわち、近接ばらつき単位領域群によって規定されるばらつき領域VA内の画素の値のばらつきが小さいほど、基準領域のサイズが大きくされる。基準領域SP内の画素の値のばらつきが小さいと、右側スキャン画像20Rと左側スキャン画像20Lとの合成位置を決定する精度が低下する可能性がある。上記第3実施例では、右側スキャン画像20R内の複数個の画素の値のばらつきが小さい場合でも、基準領域SPのサイズを大きくすることによって、右側スキャン画像20Rと左側スキャン画像20Lとを合成する位置を決定する精度(合成精度)を向上することができる。
さらに、詳しくは、ばらつき領域VA内複数個の画素のうち、周囲の画素との値の差が最大である特定の画素(具体的には、図17の最大ばらつき画素MXP)が特定される(図16のS510)。そして、当該特定の画素を中心とした特定の範囲内(具体的には、図17の最大ばらつき画素MXPを中心とした縦5画素×横5画素の範囲内)の画素の値のばらつき(具体的には、ばらつき評価値Var)に応じて、基準領域SPのサイズが決定される(図16のS520〜S540)。そして、当該特定の画素を中心とし、決定されたサイズを有する領域が、基準領域SPとして決定される。この結果、適切な位置とサイズを有する基準領域SPが決定されるので、右側スキャン画像20Rと左側スキャン画像20Lとを合成する位置を決定する精度(合成精度)を向上することができる。
D.変形例
(1)上記第1実施例において、特定の色(例えば、白)を有する部分が比較的小さい領域を、特定の色を有する部分が比較的大きい領域より優先的に、基準領域SPとして決定することが好ましい。
より具体的には、第1実施例の基準領域決定処理(図6)では、配置範囲SA1内の複数個の部分画像のうち、ばらつき画素数VCが最大である部分画像の領域が基準領域SPとして決定されている。これに代えて、変形例(1)では、例えば、CPU410は、配置範囲SA1内の複数個の部分画像のうち、ばらつき画素数VCが所定の閾値以上である1個以上の部分画像を選択する。そして、CPU410は、選択された1個以上の部分画像のそれぞれについて、特定の色を有する画素の個数を算出する。そして、CPU410は、選択された1個以上の部分画像のうち、特定の色を有する画素の個数が最小である部分画像を特定する。そして、CPU410は、特定された部分画像の領域を基準領域SPとして決定する。特定の色を有する画素は、例えば、画素の値(R、G、B)が、245≦R、かつ、245≦G、かつ、245≦Bを満たす画素である。
基準領域に含まれ得る特定の色(例えば、白)を有する部分は、右側スキャン画像20Rと左側スキャン画像20Lとの合成位置を決定する精度を低下させる場合がある。例えば、白を有する部分は、背景である場合が多く、なんら特徴を有さない部分である可能性が高い。このような部分を基準領域SPとして参照しても、対応する対応領域CPを精度良く決定することは困難である。変形例(1)では、特定の色を有する部分が比較的小さい領域を、優先的に基準領域SPとして決定するので、右側スキャン画像20Rと左側スキャン画像20Lとの合成位置を決定する精度を向上できる。
なお、特定の色は、白に限られない。例えば、特定の色は、薄い黄色であっても良い。薄い黄色は、色値に差があっても視覚的には差が目立ち難い場合がある。このために、薄い黄色の色値の差は、画像の特徴を表していない可能性がある。したがって、薄い黄色の部分を基準領域SPとして参照しても、対応する対応領域CPを精度良く決定することは困難である場合があるからである。
(2)上記第3実施例では、大サイズ、中サイズ、小サイズの基準領域SPL、SPM、SPSは、ばらつき領域VA内の最大ばらつき画素MXPを中心として配置される。これに限らず、これらの基準領域SPL、SPM、SPSが配置される位置は、ばらつき領域VAと重なる他の位置であっても良い。
(3)上記各実施例は、適宜に組み合わされても良い。例えば、第1実施例の基準領域決定処理(図6)によって、基準領域SPを決定した後に、決定された基準領域SPのサイズを第3実施例の手法で調整しても良い。例えば、CPU410は、第1実施例の基準領域決定処理によって決定された基準領域SP内に含まれる画素のうちの最大ばらつき画素MXPを特定し、その後に、図16のS515〜S540の処理を実行することによって、基準領域SPのサイズを調整しても良い。
(4)上記各実施例では、2個のスキャンデータを用いて、2個のスキャン画像が合成された合成画像を表す合成画像データが生成されている。これに限らず、任意の個数のスキャンデータを用いて合成画像データが生成されても良い。例えば、4個のスキャン画像データを用いて、4個のスキャン画像が合成された合成画像を表す合成画像データが生成されてもよい。
(3)上記第1実施例の基準領域決定処理(図6)では、部分画像内の複数個の画素の値のばらつきを示す値として、ばらつき画素数VCが用いられている(図6のS120)。これに代えて、部分画像内の複数個の画素の値のばらつきを示す値には、例えば、部分画像内の複数個の画素の値の分散σ、標準偏差σ、エッジ量が用いられても良い。第2実施例の基準領域決定処理(図12)における単位領域内の複数個の画素の値のばらつきを示す値についても同様である。
(4)上記第2実施例および第3実施例にて特定されるばらつき領域VA(図13(C)、図17)は、必ずしも連続した複数個の画素によって構成された1個の領域であるとは限らず、分離した複数個の領域を含んでも良い。
(5)上記各実施例の対応領域決定処理(図9)において、基準領域SPに対応する対応領域CPを決定するアルゴリズムは、一例であり、他のアルゴリズムが採用されても良い。例えば、CPU410は、基準領域SP内の各参照画素の値と、当該参照画素に対応する注目候補領域内の画素の値と、の差ΔVPを、基準領域SP内の全ての参照画素について合計した値VPtotalを算出しても良い。そして、探索領域SA2内に配置可能な複数個の候補領域のうち、当該合計値VPtotalが最小である候補領域が、対応領域CPとして決定されても良い。いずれの場合であっても、右側スキャン画像20R内の基準領域SPと、左側スキャン画像20L内の複数個の候補領域のそれぞれとは、互いに等しいサイズおよび形状を有することが好ましい。
(6)上各記実施例では、合成画像データの生成に用いられる2個の画像データは、複合機200のスキャナ部250によって原稿が読み取られることによって生成される2個のスキャンデータである。これに代えて、2個の画像データは、デジタルカメラによって原稿の複数個の領域を撮影することによって、2個の画像データが生成されても良い。
(7)上記各実施例においてサーバ400のCPU410によって実行される処理(例えば、図2のS25〜S40の処理)は、例えば、複合機200のCPU210によって実行されても良い。この場合には、サーバ400は不要であり、複合機200が単体で図2の処理を実行すればよい。また、サーバ400のCPU410によって実行される処理は、複合機200と接続されたパーソナルコンピュータ500(図1)のCPU(図示省略)によって実行されても良い。例えば、パーソナルコンピュータ500のCPUは、パーソナルコンピュータ500にインストールされたスキャナドライバプログラムを実行することによって、これらの処理を実行しても良い。また、サーバ400は、本実施例のように1つの計算機で構成されても良く、複数個の計算機を含む計算システムによって構成されていても良い。
(8)上記各実施例において、ハードウェアによって実現されていた構成の一部をソフトウェアに置き換えるようにしてもよく、逆に、ソフトウェアによって実現されていた構成の一部をハードウェアに置き換えるようにしてもよい。
200...複合機、210...CPU、220...揮発性記憶装置、221...バッファ領域、230...不揮発性記憶装置、231...制御プログラム、240...プリンタ部、250...スキャナ部、260...操作部、270...表示部、280...通信部、400...サーバ、410...CPU、420...揮発性記憶装置、421...バッファ領域、430...不揮発性記憶装置、431...コンピュータプログラム、433...UIデータ群、480...通信部、500...パーソナルコンピュータ、1000...画像処理システム

Claims (14)

  1. 画像処理装置であって、
    第1の画像を表す第1の画像データと、第2の画像を表す第2の画像データと、を取得する取得部と、
    前記第1の画像内の一部の領域である基準領域を決定する基準領域決定部と、
    前記第1の画像内の前記基準領域と、前記第2の画像内の複数個の候補領域と、の間の複数個の類似度を算出する算出部と、
    前記複数個の類似度に基づいて、前記複数個の候補領域のうちの1個の候補領域を前記基準領域に対応する対応領域として決定する対応領域決定部と、
    前記第1の画像データと前記第2の画像データとを用いて、前記基準領域と前記対応領域とが重なるように、前記第1の画像と前記第2の画像とが合成された合成画像を表す合成画像データを生成する生成部と、
    を備え、
    前記基準領域決定部は、前記第1の画像内の複数個の画素の値のばらつきに基づいて、前記基準領域の位置を決定し、
    前記第1の画像は、第1の領域と、特定の色を有する部分が前記第1の領域よりも小さな第2の領域と、を含み、
    前記基準領域決定部は、前記第2の領域を、前記第1の領域より優先的に、前記基準領域として決定する、画像処理装置。
  2. 請求項1に記載の画像処理装置であって、
    前記基準領域決定部は、
    前記第1の画像の複数個の領域のそれぞれについて、領域内の複数個の画素の値のばらつきを示す値を算出し、
    前記複数個の領域のうち、前記ばらつきを示す値が閾値以上である2個以上の領域を決定し、
    前記2個以上の領域は、前記第1の領域と、前記第2の領域と、を含み、
    前記基準領域決定部は、前記第2の領域を、前記第1の領域より優先的に、前記基準領域として決定する、画像処理装置
  3. 画像処理装置であって、
    第1の画像を表す第1の画像データと、第2の画像を表す第2の画像データと、を取得する取得部と、
    前記第1の画像内の一部の領域である基準領域を決定する基準領域決定部と、
    前記第1の画像内の前記基準領域と、前記第2の画像内の複数個の候補領域と、の間の複数個の類似度を算出する算出部と、
    前記複数個の類似度に基づいて、前記複数個の候補領域のうちの1個の候補領域を前記基準領域に対応する対応領域として決定する対応領域決定部と、
    前記第1の画像データと前記第2の画像データとを用いて、前記基準領域と前記対応領域とが重なるように、前記第1の画像と前記第2の画像とが合成された合成画像を表す合成画像データを生成する生成部と、
    を備え、
    前記基準領域決定部は、
    前記第1の画像内に複数個の単位領域を設定し、
    複数個の前記単位領域のそれぞれについて、領域内の画素の値のばらつきを示す値を算出し、
    前記ばらつきを示す値に基づいて、複数個の前記単位領域の中から、前記ばらつきを示す値が閾値以上の1個以上の前記単位領域を選択し、
    選択された1個以上の前記単位領域を用いて、前記基準領域を決定する、画像処理装置。
  4. 請求項3に記載の画像処理装置であって、
    前記基準領域決定部は、選択された1個以上の前記単位領域を用いて、前記基準領域の形状、サイズ、位置のうち少なくとも一つを決定する、画像処理装置。
  5. 請求項3または4に記載の画像処理装置であって、
    前記基準領域決定部は、選択された1個以上の前記単位領域に外接する領域を前記基準領域として決定する、画像処理装置。
  6. 請求項3または4に記載の画像処理装置であって、
    前記基準領域決定部は、選択された1個以上の前記単位領域に内接する領域を前記基準領域として決定する、画像処理装置。
  7. 請求項3または4に記載の画像処理装置であって、
    前記基準領域決定部は、
    選択された1個以上の前記単位領域の全体のサイズが基準サイズ以上である場合に、選択された1個以上の前記単位領域に内接する領域を前記基準領域として決定し、
    選択された1個以上の前記単位領域の全体のサイズが基準サイズ未満である場合に、選択された1個以上の前記単位領域に外接する領域を前記基準領域として決定する、画像処理装置。
  8. 請求項3または4に記載の画像処理装置であって、
    前記基準領域決定部は、選択された1個以上の前記単位領域内の画素の値のばらつきが小さいほど、前記基準領域のサイズを大きくする、画像処理装置。
  9. 請求項に記載の画像処理装置であって、
    前記基準領域決定部は、
    選択された1個以上の前記単位領域内の複数個の画素のうち、周囲の画素との値の差が最大である特定の画素を決定し、
    前記特定の画素を中心とした特定の範囲内の画素の値のばらつきに応じて、前記基準領域のサイズを決定し、
    前記特定の画素を中心とし、決定されたサイズを有する領域を、前記基準領域として決定する、画像処理装置。
  10. 請求項のいずれかに記載の画像処理装置であって、
    前記基準領域決定部は、
    前記第1の画像内に設定される複数個の単位領域を、領域内の画素の値のばらつきが前記閾値以上である複数個の第1種の単位領域と、領域内の画素の値のばらつきが前記閾値未満である複数個の第2種の単位領域とに、分類し、
    前記複数個の第1種の単位領域の中から、互いに近接する1個以上の前記単位領域を選択する、画像処理装置。
  11. 請求項1に記載の画像処理装置であって、
    前記基準領域決定部は、
    前記第1の画像内において、前記第1種の単位領域の密度が最も高い密集領域を特定し、
    前記複数個の第1種の単位領域の中から選択される互いに近接する1個以上の前記単位領域は、前記密集領域内の前記第1種の単位領域を含む、画像処理装置。
  12. 請求項1〜1のいずれかに記載の画像処理装置であって、
    前記第1の画像内の前記基準領域と、前記第2の画像内の前記複数個の候補領域のそれぞれとは、互いに等しいサイズおよび形状を有する、画像処理装置。
  13. コンピュータプログラムであって、
    第1の画像を表す第1の画像データと、第2の画像を表す第2の画像データと、を取得する取得機能と、
    前記第1の画像内の一部の領域である基準領域を決定する基準領域決定機能と、
    前記第1の画像内の前記基準領域と、前記第2の画像内の複数個の候補領域と、の間の複数個の類似度を算出する算出機能と、
    前記複数個の類似度に基づいて、前記複数個の候補領域のうちの1個の候補領域を前記基準領域に対応する対応領域として決定する対応領域決定機能と、
    前記第1の画像データと前記第2の画像データとを用いて、前記基準領域と前記対応領域とが重なるように、前記第1の画像と前記第2の画像とが合成された合成画像を表す合成画像データを生成する生成機能と、
    をコンピュータに実現させ、
    前記基準領域決定機能は、前記第1の画像内の複数個の画素の値のばらつきに基づいて、前記基準領域の位置を決定し、
    前記第1の画像は、第1の領域と、特定の色を有する部分が前記第1の領域よりも小さな第2の領域と、を含み、
    前記基準領域決定機能は、前記第2の領域を、前記第1の領域より優先的に、前記基準領域として決定する、コンピュータプログラム。
  14. コンピュータプログラムであって、
    第1の画像を表す第1の画像データと、第2の画像を表す第2の画像データと、を取得する取得機能と、
    前記第1の画像内の一部の領域である基準領域を決定する基準領域決定機能と、
    前記第1の画像内の前記基準領域と、前記第2の画像内の複数個の候補領域と、の間の複数個の類似度を算出する算出機能と、
    前記複数個の類似度に基づいて、前記複数個の候補領域のうちの1個の候補領域を前記基準領域に対応する対応領域として決定する対応領域決定機能と、
    前記第1の画像データと前記第2の画像データとを用いて、前記基準領域と前記対応領域とが重なるように、前記第1の画像と前記第2の画像とが合成された合成画像を表す合成画像データを生成する生成機能と、
    をコンピュータに実現させ、
    前記基準領域決定機能は、
    前記第1の画像内に複数個の単位領域を設定し、
    複数個の前記単位領域のそれぞれについて、領域内の画素の値のばらつきを示す値を算出し、
    前記ばらつきを示す値に基づいて、複数個の前記単位領域の中から、前記ばらつきを示す値が閾値以上の1個以上の前記単位領域を選択し、
    選択された1個以上の前記単位領域を用いて、前記基準領域を決定する、コンピュータプログラム。
JP2014073949A 2014-03-31 2014-03-31 画像処理装置およびコンピュータプログラム Active JP6152818B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2014073949A JP6152818B2 (ja) 2014-03-31 2014-03-31 画像処理装置およびコンピュータプログラム
US14/664,994 US9747715B2 (en) 2014-03-31 2015-03-23 Image processing apparatus for generating combined image data by determining reference region

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014073949A JP6152818B2 (ja) 2014-03-31 2014-03-31 画像処理装置およびコンピュータプログラム

Publications (2)

Publication Number Publication Date
JP2015198277A JP2015198277A (ja) 2015-11-09
JP6152818B2 true JP6152818B2 (ja) 2017-06-28

Family

ID=54190849

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014073949A Active JP6152818B2 (ja) 2014-03-31 2014-03-31 画像処理装置およびコンピュータプログラム

Country Status (2)

Country Link
US (1) US9747715B2 (ja)
JP (1) JP6152818B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016143970A (ja) * 2015-01-30 2016-08-08 株式会社リコー 画像処理装置、画像処理システム、画像処理プログラム
CN116245835B (zh) * 2023-02-13 2023-12-01 数坤科技股份有限公司 图像检测方法、装置、电子设备和存储介质

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0668700B2 (ja) 1985-03-08 1994-08-31 株式会社デイスコ キーパターン自動設定手段を備えた自動精密位置合せ装置
JPH04290066A (ja) 1991-03-18 1992-10-14 Canon Inc 画像形成装置
US5465163A (en) 1991-03-18 1995-11-07 Canon Kabushiki Kaisha Image processing method and apparatus for processing oversized original images and for synthesizing multiple images
JP2883265B2 (ja) * 1993-09-24 1999-04-19 キヤノン株式会社 画像処理装置
JPH1091765A (ja) * 1996-09-10 1998-04-10 Canon Inc 画像合成装置及びその方法
US6215914B1 (en) * 1997-06-24 2001-04-10 Sharp Kabushiki Kaisha Picture processing apparatus
JP2001325588A (ja) 2000-05-17 2001-11-22 Sharp Corp 画像処理装置および画像処理方法
JP2002208005A (ja) * 2001-01-12 2002-07-26 Minolta Co Ltd 画像処理装置、画像処理方法、画像処理プログラムおよび画像処理プログラムを記録したコンピュータ読み取り可能な記録媒体
JP4256083B2 (ja) 2001-07-09 2009-04-22 パナソニック株式会社 画像処理装置
JP3747183B2 (ja) * 2002-04-18 2006-02-22 キヤノン株式会社 画像処理装置及び画像処理方法
JP4340842B2 (ja) * 2003-01-31 2009-10-07 富士ゼロックス株式会社 画像処理方法および画像処理装置、画像処理プログラム、記憶媒体
TWI260913B (en) * 2005-04-29 2006-08-21 Avision Inc Multi-stage scanning method for increasing scanning speed and enhancing image quality
JP2009136421A (ja) * 2007-12-05 2009-06-25 Toshiba Corp X線診断装置及びx線画像処理方法及び記憶媒体

Also Published As

Publication number Publication date
JP2015198277A (ja) 2015-11-09
US9747715B2 (en) 2017-08-29
US20150278637A1 (en) 2015-10-01

Similar Documents

Publication Publication Date Title
KR101627194B1 (ko) 화상형성장치 및 이미지 모자이크 생성 방법
JP6781406B2 (ja) 画像処理装置、および、コンピュータプログラム
JP6344064B2 (ja) 画像処理装置およびコンピュータプログラム
JP6152818B2 (ja) 画像処理装置およびコンピュータプログラム
JP2023030811A (ja) 情報処理装置、抽出処理装置、画像処理システム、情報処理装置の制御方法、及びプログラム
JP6331817B2 (ja) 画像処理装置、画像処理方法、およびプログラム
JP6108220B2 (ja) 画像処理装置、画像処理プログラム
JP6256206B2 (ja) 画像処理装置、および、コンピュータプログラム
US9894244B2 (en) Image processing system and image processing method that perform correction of shifting bitmap data in a sub-scanning direction to cancel bending of and electro-photographic laser scanning line
JP6330458B2 (ja) 画像処理装置およびコンピュータプログラム
JP6398812B2 (ja) 画像処理装置、および、コンピュータプログラム
JP6409460B2 (ja) 画像処理装置、および、コンピュータプログラム
JP4561433B2 (ja) 画像読み取り装置
JP6149782B2 (ja) 画像処理装置およびコンピュータプログラム
JP6314633B2 (ja) 画像処理装置およびコンピュータプログラム
JP2016092672A (ja) 画像処理装置、および、コンピュータプログラム
JP6394060B2 (ja) 画像処理装置およびコンピュータプログラム
JP2016178367A (ja) 画像処理装置、および、コンピュータプログラム
JP6427960B2 (ja) 画像処理装置
JP6372397B2 (ja) 画像処理装置、および、コンピュータプログラム
JP6841254B2 (ja) 画像処理装置、および、コンピュータプログラム
JP6260144B2 (ja) 画像処理装置およびコンピュータプログラム
US20100067066A1 (en) Outlining method for properly representing curved line and straight line, and image compression method using the same
JP2016032259A (ja) 画像処理装置
JP6172010B2 (ja) 画像処理装置およびプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160324

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170130

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170214

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170417

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20170502

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170515

R150 Certificate of patent or registration of utility model

Ref document number: 6152818

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150