JP3983623B2 - 画像合成装置、画像合成方法、画像合成プログラム、および画像合成プログラムを記録した記録媒体 - Google Patents

画像合成装置、画像合成方法、画像合成プログラム、および画像合成プログラムを記録した記録媒体 Download PDF

Info

Publication number
JP3983623B2
JP3983623B2 JP2002233012A JP2002233012A JP3983623B2 JP 3983623 B2 JP3983623 B2 JP 3983623B2 JP 2002233012 A JP2002233012 A JP 2002233012A JP 2002233012 A JP2002233012 A JP 2002233012A JP 3983623 B2 JP3983623 B2 JP 3983623B2
Authority
JP
Japan
Prior art keywords
image
subject
overlap
background
area
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.)
Expired - Fee Related
Application number
JP2002233012A
Other languages
English (en)
Other versions
JP2004072677A (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.)
Sharp Corp
Original Assignee
Sharp Corp
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 Sharp Corp filed Critical Sharp Corp
Priority to JP2002233012A priority Critical patent/JP3983623B2/ja
Priority to CNB038216264A priority patent/CN100477745C/zh
Priority to AU2003246268A priority patent/AU2003246268A1/en
Priority to PCT/JP2003/008510 priority patent/WO2004015987A1/ja
Priority to US10/523,770 priority patent/US7623733B2/en
Publication of JP2004072677A publication Critical patent/JP2004072677A/ja
Application granted granted Critical
Publication of JP3983623B2 publication Critical patent/JP3983623B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Description

【0001】
【発明の属する技術分野】
本発明は、別々に撮影された複数の被写体を、同時に存在するかのように一枚の画像に合成し、またその際、被写体同士が重なりなく撮影/合成ができるように補助を行う装置および方法およびプログラムおよびプログラム媒体に関する。
【0002】
【従来の技術】
フィルムカメラやデジタルカメラで、例えば二人で並んで写真を撮る際、三脚を使ってセルフタイマーで撮影するか、通りがかりの人などに頼んで撮影してもらうしかない。
【0003】
しかし、三脚を持ち歩くのは大変であり、また、見ず知らずの他人に頼むのも気が引けるという問題がある。
【0004】
それに対して、特開2000−316125号公報(2000年11月14日公開)では、同一場所で撮影した複数枚の画像から被写体の領域を抽出し、被写体の画像を背景と合成したりしなかったりすることで、背景のみの画像や別の画像の被写体が同時に存在するかのような画像を合成することができる画像合成装置が開示されている。
【0005】
また、特開2001−333327号公報(2001年11月30日公開)では、撮影済みの参照画像中の指定された領域(被写体領域)を撮影中の画像に重ねてモニタ画面またはファインダ内に表示させることができると共に、被写体領域内の被写体を撮影中の画像に合成した合成画像の画像データを作成することができるデジタルカメラおよび画像処理方法が開示されている。
【0006】
【発明が解決しようとする課題】
しかし、これら従来技術では、大きく2つの問題が出てくる。
【0007】
1つ目の問題は、参照画像中の被写体領域を単に切り出して別の画像と重ね合わせるだけでは、被写体領域の指定が不正確な場合に(1)合成結果の被写体が欠けたり、(2)余計なものが合成されたり、(3)指定が正確であっても合成境界が微妙に不自然になったりするという点である。
【0008】
例えば、(1)の、実際の被写体領域より参照画像中で指定した被写体領域(以下、指定被写体領域と呼ぶ)が欠けている場合は、合成画像上でもその被写体は欠けているので、明らかに不自然となる。
【0009】
また、(2)の、実際の被写体領域より参照画像中の指定被写体領域が大きすぎる場合は、参照画像上での被写体周囲の背景も含んでしまっていることになる。上でいう「余計なもの」とは、この含んでしまっている背景部分のことである。特開2001−333327号公報で説明される合成方法では、参照画像と撮影画像を違う場所で撮影することもありえるので、指定被写体領域に含まれてしまっている背景画像(参照画像上の背景)と、合成画像上でのその周囲の背景(撮影画像上の背景)とは異なることがある。この場合、合成画像上では、指定被写体領域で背景が突然変わるため、不自然な合成画像となる。
【0010】
仮に、同じ場所、同じ背景でどちらも撮影されたとしても、特開2001−333327号公報で説明される合成方法では、参照画像中の指定被写体領域を撮影画像上の任意の位置に配置・合成できるので、指定被写体領域に含まれてしまっている背景画像(参照画像上の背景)と、撮影画像上での合成位置周囲の背景(撮影画像の背景)とが、同じ位置の背景とは限らず、同様に合成結果は不自然となる。
【0011】
特開2001−333327号公報のように、参照画像中の指定被写体領域に対し、ユーザーがタブレットなどを使ってその輪郭を指定する場合、人間が輪郭を判断しながら指定するので指定被写体領域の指定が大きく間違うことは少ないが、1、2画素ないし数画素程度の誤りが出てくる可能性はある。もし、1画素の単位で人手で正確に指定しようとすると、大変な労力が必要となる。
【0012】
また、(3)の、指定が正確であっても合成境界が微妙に不自然になる場合には、(1)、(2)のような指定被写体領域が画素単位で正確であったとしても、指定被写体領域の合成結果として、その輪郭の画素が撮影画像の背景と馴染まない場合をも含んでいる。
【0013】
これは、指定被写体領域の輪郭は、画素単位の指定では精度が充分でなく、実際は1画素よりももっと細かい単位でないと表現できないためである。すなわち、輪郭の画素は、本来は被写体部分が(0.X)画素分、背景部分が(1.0−0.X)画素分となっており、画素値としては、被写体部分の画素値と背景部分の画素値とが割合に応じて足された値、すなわち平均化された値となっている。
【0014】
このため、被写体部分と背景部分との割合は、平均化された画素値からは逆算できないので、結局、合成する時は画素単位で扱うしかない。その結果、合成画像の輪郭の画素値には、参照画像の背景の値が含まれてしまい、周囲の撮影画像の背景と馴染まなくなってしまう。
【0015】
以上の(1)〜(3)の問題は、特開2000−316125号公報に開示された合成方法によっても解決できない。同公報には、同一場所または互いに近くの場所で撮影した複数枚の画像を重ねる前に位置合わせを行うことが開示されている。
【0016】
しかしながら、例えば同じ背景を使って2人が交互にお互いを撮影する場合、カメラの向きの違いによって撮影される背景の位置が移動するだけではなく、カメラの傾きによる画像の回転や、撮影者と被写体との距離のずれによる画像の拡大縮小や、撮影者の背丈の違いによってカメラの仰角が変わることによる画像の歪みが発生する。
【0017】
このため、重ね合わせようとする画像の位置合わせを単に行うだけでは、上記(1)〜(3)の問題が解消されず、合成結果は不自然になってしまう。
【0018】
2つ目の問題は、参照画像中の被写体領域と、別の被写体の含まれる撮影画像とを合成することを目的に撮影を行おうとすると、撮影時の被写体の位置に気をつけないと、それぞれの画像中の被写体の領域が合成画像上で互いに重なってしまったり、どちらかの被写体が合成画像からはみ出てしまう場合が出てくるという点である。
【0019】
この問題に対して、特開2000−316125号公報には、撮影済みの画像を使った合成方法が主に説明されているだけであり、被写体同士の重なりや合成画像からのはみだしを防ぐ撮影方法などには触れられていない。
【0020】
また、特開2001−333327号公報の画像処理方法によれば、参照画像中の被写体領域(ユーザーがタブレットなどを使って輪郭を指定する)と撮影中の画像とを重ねて表示することができるので、合成する場合の参照画像中の被写体領域と撮影中の画像中の被写体領域とに関して、被写体同士が重なるかどうかや、被写体領域が合成画像からはみだすかどうかを、撮影時に知ることができる。被写体の重なりやはみだしがある場合は、被写体やカメラを動かすことで撮影中の画像中の被写体の位置を変更することができ、重なりやはみだしが起こらない画像を撮影・記録することができるようになる。
【0021】
しかし、被写体領域の認識処理や、被写体領域同士が重なっているかどうか、合成画像から被写体領域がはみだしているかどうかの判断処理など、高度な処理を人間自身がしなければならないという不便さがある。また、参照画像中の被写体の領域は手で指定しなければいけないという不便さもある。
【0022】
本発明の第1の目的は、合成結果が不自然とならないような合成を行う画像合成装置(画像合成方法)を提供することであり、第2の目的は、別々に撮影された複数の被写体を、同時に存在するかのように一枚の画像に合成する際、合成画像上で被写体同士の重なりが起きないように撮影を補助する画像合成装置(画像合成方法)を提供することである。
【0023】
【課題を解決するための手段】
本発明に係る画像合成装置は、上記の課題を解決するために、背景の画像である背景画像と、前記背景の少なくとも一部と第1の被写体を含む画像である第1被写体画像と、前記背景の少なくとも一部と第2の被写体を含む画像である第2被写体画像との間での、背景の相対的な移動量、回転量、拡大縮小率、歪補正量のいずれかもしくは組み合わせからなる補正量を算出する、あるいは算出して記録しておいた補正量を読み出す背景補正量算出手段と、背景画像、第1被写体画像、第2被写体画像のいずれかを基準画像とし、他の2画像を被写体以外の背景の少なくとも一部が重なるように、前記背景補正量算出手段から得られる補正量で補正し、基準画像と補正した他の1つあるいは2つの画像を重ねた画像を生成する重ね画像生成手段と、を有する。
【0024】
上記の構成において、「第1の被写体」、「第2の被写体」とは、合成を行おうとしている対象であり、一般には人物であることが多いが物などの場合もある。厳密には、「第1の被写体」は、背景画像と第1被写体画像との間で、背景部分が少なくとも一部重なるようにした時に、画素値が一致しない領域、すなわち変化がある領域は全て「第1の被写体の領域」となる可能性を持つ。したがって、背景画像は第1被写体画像との比較処理によって、「第1の被写体の領域」を抽出する目的で取得される。(なお、背景画像には、第1被写体画像および第2被写体画像の2画像間で、重なる背景部分が存在しない場合に、その存在しない背景部分を埋めるという目的で使われる場合もある。)
但し、背景部分で、風で木の葉が揺れたなどの小さな変化でも変化がある領域となってしまうので、小さな変化や小さな領域はある程度無視する方が、「第1の被写体の領域」を的確に抽出でき、より自然な重ね画像を得ることができる。「第2の被写体」についても同様である。
【0025】
なお、例えば被写体が人物の場合、被写体は必ずしも一人であるとは限らず、複数の人物をまとめて「第1の被写体」や「第2の被写体」とする場合もある。つまり、複数人であっても、合成の処理の単位としてまとめて扱うものは一つの「被写体」となる。なお、人物でなく、物であっても同様である。
【0026】
また、被写体は、必ずしも一つの領域であるとは限らず、複数の領域からなる場合もある。「第1」、「第2」は、異なるコマ画像として単に区別する為につけたものであり、撮影の順番などを表すものではなく、本質的な違いはない。また、例えば、人物が服や物などを持っていて、「第1、第2の被写体を含まない背景だけの画像」にそれらが現れないのならば、それらも被写体に含まれる。
【0027】
「第1被写体画像」、「第2被写体画像」は、上記の「第1の被写体」、「第2の被写体」を含む別々の画像であり、一般には、カメラなどでその被写体を撮影した画像である。但し、画像上に被写体のみしか写っておらず、背景画像と共通する背景部分が全く写っていない場合は、合成に適さないので、少なくとも一部は背景画像と共通する背景部分が写っている必要がある。また、通常は、第1被写体画像、第2被写体画像は、同じ背景を使って、すなわちカメラをあまり動かさないで撮影する場合が多い。
【0028】
なお、被写体を撮影するカメラは、画像を静止画として記録するスチルカメラである必要はなく、画像を動画として記録するビデオカメラであってもよい。ビデオカメラで静止画としての重ね画像を生成する場合、撮影した動画を構成する1フレームの画像を被写体画像として取り出し、合成に用いることになる。
【0029】
「背景」とは、風景から「第1の被写体」、「第2の被写体」を除いた部分である。
【0030】
「背景画像」とは、第1被写体画像、第2被写体画像のそれぞれの背景部分の画像が少なくとも一部含まれている画像であり、第1の被写体、第2の被写体は写っていないものである。通常は、第1被写体画像、第2被写体画像と同じ背景を使って、すなわちカメラをあまり動かさないで、第1の被写体、第2の被写体にカメラの前から外れてもらって撮影する場合が多い。
【0031】
「第1、第2の被写体以外の背景」とは、第1被写体画像、第2被写体画像から第1被写体の領域、第2被写体の領域を除いた残りの部分である。
【0032】
「移動量」は、基準画像と背景の少なくとも一部が重なる位置へ、他の画像を平行移動させる量だが、回転や拡大縮小の中心の対応点の移動量と言ってもよい。
【0033】
「歪補正量」とは、カメラやレンズの位置や方向が変わったことによる撮影画像の変化のうち、平行移動、回転、拡大縮小では補正できない残りの変化を補正する為の補正量である。例えば、高い建物を撮影した時に、上の方が遠近法の効果により同じ大きさであっても小さく写ってしまう「あおり」などとよばれる効果などを補正する場合などがこれに含まれる。
【0034】
「重ね画像生成手段」は、重ね画像を生成するが、必ずしも一つの画像データとして生成しなくてもよく、他の手段の画像データと合わせて合成したかのように見えるのでも構わない。例えば、表示手段上にある画像を表示する際、その画像に上書きする形で別の画像を一部表示すれば、見た目には2つの画像データから1つの合成画像データを生成し、その合成画像データを表示しているかのように見えるが、実際は、2つの画像データに基づく画像がそれぞれ存在するだけで、合成画像データは存在していない。
【0035】
背景補正量算出手段による補正量の算出には、例えば、ブロックマッチングなど、2つの画像間での部分的な位置の対応を算出する手法を採用することができる。これらの手法などを利用して、第1被写体画像、第2被写体画像、背景画像の中の2つの画像間での対応を求めれば、背景部分に一致するところがあれば、その部分の位置的な対応を算出することができる。被写体部分は他の画像中には存在しないので、その部分は間違った対応が得られる。背景部分の正しい対応と被写体部分の間違った対応の中から、統計的な手法を使うなどして背景部分の正しい対応だけを得る。残った正しい対応から、背景部分の相対的な移動量、回転量、拡大縮小率、歪補正量のいずれかもしくは組み合わせからなる補正量が算出できる。
【0036】
重ね画像生成手段は、背景補正量算出手段により算出された補正量に基づき、基準画像に合わせて他の2画像を背景部分が一致するように補正した画像を作る。求めた補正量は2つの画像間の関係を意味し、例えば、AとBの関係,BとCの関係がそれぞれわかれば、AとCの関係も分かるように、3つの画像のうちいずれを基準画像に選んでも、背景補正量算出手段により、その画像と他の2画像との関係は補正量として算出できる。
【0037】
そして、重ね画像生成手段によって、補正した1つあるいは2つの画像を基準画像に重ねた画像を生成する。画像の重ね方としては、3つの画像の位置的に対応する画素の画像データを、0〜1の範囲で比例配分した任意の比率で混合すればよい。例えば、背景画像の比率を0、第1被写体画像の比率を1、第2被写体画像の比率を0とすれば、その画素には、第1被写体画像の画像データのみが書き込まれる。また、3つの画像の混合比率を1:1:1とすれば、その画素には、3つの画像の画像データを均等に合成した画像データが書き込まれる。
【0038】
なお、混合比率をどう設定するかは、本発明にとって本質的ではなく、どのような重ね画像を表示ないし出力したいかというユーザーの目的次第である。
【0039】
以上の処理によって、本発明の重要な特徴として、第1の被写体と第2の被写体とを、背景部分を一致させた状態で一枚の画像上に合成することができる。
【0040】
なお、背景画像を基準画像とした場合には、補正した第1被写体画像および補正した第2被写体画像から抽出された少なくとも「第1の被写体の領域」および「第2の被写体の領域」が、背景画像に合成される。「第1の被写体の領域」および「第2の被写体の領域」以外の各背景部分については、前述のように、背景画像の対応する画素に所定の比率で合成してもよいし、全く合成しなくてもよい。
【0041】
また、第1被写体画像および第2被写体画像の一方を基準画像とした場合には、補正した背景画像との比較処理によって、補正した他方の被写体画像から抽出した被写体の領域を基準画像に合成するだけで、重ね画像を生成してもよいし、基準画像の背景部分に、背景画像の対応する画素を0〜1の間の適当な比率で合成してもよい。
【0042】
このように、基準画像と他の補正した画像を1つ重ねるか、あるいは2つ重ねるかについては、種々のヴァリエーションがある。
【0043】
以上のとおり、二つの画像間の背景のずれを補正して合成することができるので、これによって、被写体など明らかに異なる領域を除いた以外の部分(すなわち背景部分)は、どのように重ねても合成結果がほぼ一致し、合成結果が不自然とならないという効果が出てくる。例えば被写体領域だけを主に合成しようとした時、被写体領域の抽出や指定が多少不正確であっても、被写体領域の周りの背景部分が合成先の画像の部分とずれや歪みがないので、不正確な領域の内外が連続した風景として合成され、見た目の不自然さを軽減するという効果が出てくる。
【0044】
被写体領域の抽出が画素単位で正確であったとしても、課題の項で説明した通り、1画素より細かいレベルでの不自然さは従来技術の方法では出てしまうが、本発明では、背景部分を合わせてから合成しているので、輪郭の画素の周囲の画素は、同じ背景部分の位置の画素なので、合成してもほぼ自然なつながりとなる。このように、1画素より細かいレベルでの不自然さを防ぐ、あるいは軽減するという効果が出てくる。
【0045】
また、背景のずれを補正して合成するので、背景画像や第1/第2被写体画像の撮影時にカメラなどを三脚などで固定する必要がなく、手などで大体の方向を合わせておけばよく、撮影が簡単になるという効果が出てくる。
【0046】
また、背景画像を使わず、第1/第2被写体画像だけで処理する場合、第1被写体画像と第2被写体画像の背景部分に重なり(一致部分)がない場合、背景補正量算出手段で補正量を算出することができなくなってしまう。背景画像を使う場合、第1被写体画像と第2被写体画像の間では背景部分に重なりがなくても、背景画像と第1被写体画像の背景部分に重なりがあり、背景画像と第2被写体画像の背景部分に重なりがあれば、第1被写体画像と第2被写体画像の間の補正量を算出することができる。
【0047】
これにより、第1被写体画像の背景部分と第2被写体画像の背景部分の間の背景が抜けていても、その抜けている背景部分を背景画像の背景が埋めていれば、背景部分に重なりの無い第1被写体画像と第2被写体画像を、背景が繋がった状態で合成することができる効果が出てくる。
【0048】
また、背景画像を利用して、第1被写体画像と第2被写体画像の間の補正量を算出した後、背景画像、第1被写体画像および第2被写体画像のそれぞれから必要な背景部分を取り出して、互いの不足部分を補うことでつなげた背景の上に、第1被写体および第2被写体を合成した重ね画像を作成することができる。
【0049】
本発明に係る画像合成装置は、上記の課題を解決するために、被写体や風景を撮像する撮像手段を有し、背景画像、または第1被写体画像、または第2被写体画像は、前記撮像手段の出力に基づいて生成されてもよい
【0050】
上記の構成によれば、重ね画像を生成する画像合成装置が、撮像手段を具備することで、ユーザーが被写体や風景を撮影したその場で、重ね画像を生成することができるため、ユーザーにとっての利便性が向上する。また、重ね画像を生成した結果、もし被写体同士の重なりがあるなどの不都合があれば、その場で撮影し直すことができるという効果が出てくる。
【0051】
なお、撮像手段から得られる画像は、通常、画像合成装置に内蔵されているか否かを問わない主記憶や外部記憶などに記録し、シャッターボタンなどを利用して記録するタイミングをユーザーが指示する。そして、記録された画像を背景画像、または第1被写体画像、または第2被写体画像として、合成処理に利用することになる。
【0052】
本発明に係る画像合成装置は、上記の課題を解決するために、第1被写体画像と第2被写体画像のうち、先に撮影した方を基準画像としてもよい
【0053】
上記の構成において、例えば、第1被写体画像、第2被写体画像の順に撮影したとすると、第1被写体画像を基準画像する。背景画像はとりあえずどの順番でもよいとする。第1被写体画像を基準画像として、背景画像、第2被写体画像を補正する。この際、第1被写体画像(基準画像)と背景画像、第2被写体画像と背景画像の間で、背景部分の移動量などの補正量を背景補正量算出手段が算出する。重ね画像生成手段は、その補正量を使って補正を行い、第1被写体画像(基準画像)、補正された背景画像、補正された第2被写体画像の3つの画像を使って、合成画像を合成する。
【0054】
この時点で、被写体同士に重なりがあるなどの理由で撮影し直す場合には、第2被写体画像のみを撮影し直し、再度、合成画像を生成する。この際、第1被写体画像(基準画像)、補正された背景画像は、再作成する必要はないので、先に合成画像を作成した時のものをそのまま使うことができる。第2被写体画像は変わっているので、第1被写体画像を基準画像として、第2被写体画像を改めて補正する。これにより、補正された新たな第2被写体画像が生成される。第1被写体画像(基準画像)、補正された背景画像、新たに補正された第2被写体画像の3つの画像を使って、合成画像を合成する。
【0055】
撮影し直しを繰り返す場合は、上記の処理を繰り返せばよい。
【0056】
もし、後から撮影する第2被写体画像を基準画像とすると、合成に必要な画像は、補正された第1被写体画像、補正された背景画像、第2被写体画像(基準画像)の3つの画像となる。第2被写体画像を撮影し直すと、基準画像が変わるので、補正処理を全てやり直さなければいけなくなる。具体的には、補正された第1被写体画像、補正された背景画像を再度生成しなければいけなくなる。
【0057】
このように、第1被写体画像と第2被写体画像のうち、先に撮影した方を基準画像とすることで、撮影し直しを繰り返す場合に、処理量・処理時間を減らすことができるという効果が出てくる。
【0058】
なお、第1の被写体と第2の被写体を合成する場合、背景画像を基準画像とし、背景画像上に第1と第2の被写体の領域の画像を置いて合成するより、第1被写体画像上に第2の被写体の領域の画像を置いて合成する(あるいはその逆)方が、合成する領域が少なくて処理量・処理時間を減らすことができるという効果が出てくる。
【0059】
また、その場合、合成する領域が少なくなる分、合成結果が不自然となる可能性を減らすことができるという効果が出てくる。合成結果が不自然となる場合とは、例えば、被写体の領域を実際の被写体の輪郭より小さくしてしまうと、合成された被写体が欠けてしまうといったことや、前述した輪郭などが不自然となってしまう場合などのことである。
【0060】
本発明に係る画像合成装置は、上記の課題を解決するために、基準画像の直前あるいは直後の順で背景画像を撮影してもよい
【0061】
上記の構成において、例えば、背景画像、第1被写体画像、第2被写体画像の順、あるいは、第1被写体画像、背景画像、第2被写体画像の順に撮影した場合には、第1被写体画像を基準画像とする。これにより、もし、被写体同士の重なりなどで、第2被写体画像を撮影し直す場合でも、第2の被写体はまだその場にいる可能性が高いので、カメラや第2の被写体が動くなどして微調整して撮影し直すことが容易にできる。
【0062】
上記と異なり、例えば、第1被写体画像、第2被写体画像、背景画像の順に撮影される場合(第1被写体画像を基準画像とする)を考えてみると、第2被写体画像を撮影する時点では第2の被写体が背景の前に存在している状態だが、背景画像を撮影する時には第2の被写体に背景の前からどいてもらう必要がある。もし、被写体同士の重なりなどで、第2被写体画像を撮影し直すとすれば、第2の被写体はすでにどいてしまっているので、再度、背景の前に立ってもらわなければいけない問題がある。また、たとえ第2の被写体が少し右に動けば重なりが無くなることが分かっていたとしても、先に第2被写体画像を撮影したの時の位置がすぐには分からないので、少し右に動いた位置がどこなのかもすぐには分からない問題がある。
【0063】
このように、再度撮影し直す際の被写体や撮影者の微調整などの手間を減らし、重なりなどの不具合の少ない画像を撮影し易くなるという効果が出てくる。
【0064】
また、撮影し易くなる効果だけでなく、処理に関しても効果が出てくる。
【0065】
本発明の画像合成手法では、背景画像の撮影順に関係無く、結局3枚の画像が揃わなければ合成画像は作成できないのだが、合成画像を作成する際、補正画像の作成以外の処理も考えると、処理手順に違いが出てくる。
【0066】
最初の例の順番では、第2被写体画像を撮影する前に、背景画像を補正すること以外の処理として、例えば後で説明する第1の被写体の領域抽出などの処理も可能となる。抽出された領域は、合成や重なり検出などに使われる。高速連写をするのでもない限り、2枚目の画像を撮影してから3枚目の画像(第2被写体画像)を撮影するまでには、通常、多少の時間間隔があるので、これらの処理をする時間も充分にある。2枚目の画像を撮影した後に3枚目の画像(第2被写体画像)を撮影した時、合成や重なり検出などの処理に抽出された第1の被写体の領域などを即座に使うことができ、3枚目の画像(第2被写体画像)を撮影した後にかかる処理時間を少なくすることができる効果が出てくる。ユーザーからすれば、合成装置の反応が早くなるという効果となる。
【0067】
後の例の順番(背景画像が最後)の場合、背景画像が未取得であるため、第1の被写体の領域抽出などの処理は2枚目の画像を撮影した時点ではできず、3枚目の背景画像を撮影した後でしかできないので、3枚目の画像を撮影した後にかかる処理時間は大きくなってしまう。
【0068】
本発明に係る画像合成装置は、上記の課題を解決するために、前記重ね画像生成手段において、基準画像と補正した他の1つあるいは2つの画像とを、それぞれ所定の透過率で重ねてもよい
【0069】
ここで、「所定の透過率」は、固定された値でもよいし、領域に応じて変化させる値や、領域の境界付近で徐々に変化させる値などでもよい。
【0070】
前記重ね画像生成手段は、重ね画像の画素位置を決め、基準画像上の画素位置の画素値と補正した他の画像上の画素位置の画素値とを得て、その二つの画素値に所定の透過率をそれぞれ掛け合わせた値の合計を重ね画像の画素値とする。この処理を重ね画像の全ての画素位置で行う。
【0071】
また、透過率を画素位置によって変えれば、場所によって基準画像の割合を強くしたり、補正画像の割合を強くしたりできる。
【0072】
これを使って、例えば、補正された被写体画像中の被写体領域だけを基準画像に重ねる時、被写体領域内は不透明(すなわち補正画像中の被写体の画像そのまま)で重ね、被写体領域周辺は被写体領域から離れるに従い基準画像の割合が強くなるように重ねる。すると、被写体領域、すなわち抽出した被写体の輪郭が間違っていたとしても、その周辺の画素は、補正画像から基準画像に徐々に変わっているので、間違いが目立たなくなるという効果が出てくる。
【0073】
また、例えば被写体領域だけを半分の透過度で重ねる、などの合成表示をすることで、表示されている画像のどの部分が以前に撮影した合成対象部分で、どの部分が今撮影している被写体の画像なのかを、判別しやすくするという効果も出てくる。
【0074】
また、人間は、常識(画像理解)を使うことで、画像中の背景部分と被写体部分(輪郭)を区別する能力を通常、持っている。被写体領域を半分の透過度で重ねて表示しても、その能力は一般に有効である。
【0075】
従って、被写体領域を半分の透過度で重ねて表示することで、複数の被写体の領域が重なっている場合でも、それぞれの被写体の領域を前記能力で区別することができ、それらが合成画像上で位置的に重なっているかどうかを容易に判断することができる。
【0076】
第1被写体画像と第2被写体画像を左右に並べて見比べることでも重なりがあるかどうかを判断することは不可能ではないが、その際は、それぞれの画像中の被写体領域を前記能力で区別し、それぞれの画像の背景部分の重なりを考慮して、区別した被写体領域同士が重なるかどうかを頭の中で計算して判断しなければいけない。この一連の作業を頭の中だけで正確に行うことは、合成画像中の被写体領域を区別する先の方法と比べると、難しい。
【0077】
つまり、背景部分が重なるような位置合わせを機械に行わせることで、人間の高度な画像理解能力を使って、被写体領域同士が重なっているかどうかを判断し易い状況を作り出しているといえる。このように、被写体領域を半分の透過度で重ねて表示することで、被写体同士の重なりなどがある場合も、今撮影している被写体の位置を判別しやすくなるという効果も出てくる。
【0078】
なお、本請求項に記載した構成を、前記請求項に記載した各構成と、必要に応じて任意に組み合わせてもよい。
【0079】
本発明に係る画像合成装置は、上記の課題を解決するために、前記重ね画像生成手段において、基準画像と補正した他の1つあるいは2つの画像の間の差分画像中の差のある領域を、元の画素値と異なる画素値の画像として生成してもよい
【0080】
ここで、「差分画像」とは、二つの画像中の同じ位置の画素値を比較して、その差の値を画素値として作成する画像のことである。一般には、差の値は絶対値をとることが多い。
【0081】
「元の画素値と異なる画素値」とは、例えば、透過率を変えて半透明にしたり、画素値の明暗や色相などを逆にして反転表示させたり、赤や白、黒などの目立つ色にしたり、などを実現するような画素値である。また、領域の境界部分と内部とで、前述したように画素値を変えてみたり、境界部分を点線で囲ってみたり、点滅表示(時間的に画素値を変化させる)させてみたり、というような場合も含む。
【0082】
上記の構成によれば、基準画像と補正した他の画像との間で、同じ画素位置の画素値を得て、その差がある場合はその画素位置の重ね画像の画素値を他の領域とは異なる画素値とする。この処理を全ての画素位置で行うことで、差分部分の領域を元の画素値と異なる画素値の画像として生成することができる。
【0083】
これによって、二つの画像間で一致しない部分がユーザーに分かりやすくなるという効果が出てくる。例えば、第1や第2の被写体の領域は、基準画像上と補正画像上では、片方は被写体の画像、他方は背景の画像となるので、差分画像中の差のある領域として抽出される。抽出された領域を半透明にしたり、反転表示したり、目立つような色の画素値とすることで、被写体の領域がユーザーに分かりやすく、もし被写体同士に重なりなどがあれば、それも分かり易くなるという効果が出てくる。
【0084】
なお、本請求項に記載した構成を、前記請求項に記載した各構成と、必要に応じて任意に組み合わせてもよい。
【0085】
本発明に係る画像合成装置は、上記の課題を解決するために、基準画像と補正した他の1つあるいは2つの画像の間の差分画像中から、第1の被写体の領域と第2の被写体の領域を抽出する被写体領域抽出手段を有し、前記重ね画像生成手段において、基準画像と補正した他の1つあるいは2つの画像とを重ねる代わりに、基準画像と前記被写体領域抽出手段から得られる領域内の補正した他の1つあるいは2つの画像とを重ねることを特徴とする。
【0086】
ここで、「被写体の領域」とは、被写体が背景と分離される境界で区切られる領域である。例えば、人物が服や物などを持っていて、背景画像にそれらが現れないのならば、それらも被写体であり、被写体領域に含まれる。なお、被写体の領域は、必ずしも繋がった一塊の領域とは限らず、複数の領域に分かれていることもある。
【0087】
「前記被写体領域抽出手段から得られる領域内の・・・画像を重ねる」とは、その領域以外は何も画像を生成しないということではなく、それ以外の領域は基準画像などで埋めることを意味する。
【0088】
背景部分は一致するように補正しているのだから、差分として現れるのは主に被写体部分となる。従って、被写体領域抽出手段で、差分画像に含まれている被写体領域を抽出することができる。このとき、差分画像からノイズなどを除去する(例えば、差分の画素値が閾値以下のものを除く)などの処理を施すと、被写体領域をより正確に抽出することができる。
【0089】
重ね画像を生成する際、各画素位置の画素値を決めるが、その画素位置が被写体領域抽出手段から得られる被写体領域内の場合のみ、被写体の画像を重ねるようにする。
【0090】
これによって、基準画像上や補正された背景画像上に、補正された被写体画像中の被写体領域のみを合成することできるという効果が出てくる。あるいは、補正された被写体画像上や補正された背景画像上に、基準画像中の被写体領域のみを合成したり、補正された背景画像上に基準画像中の被写体領域と補正された被写体画像中の被写体領域を合成したり、基準画像としての背景画像上に補正された被写体画像中の被写体領域を合成したりするということもできる。
【0091】
また、被写体領域の透過率を変えるなどして合成するならば、どの領域を合成しようとしているかがユーザーに分かり易く、もし被写体同士に重なりなどがあれば、それもさらに分かり易くなるという効果が出てくる。さらに、それによって、重なりが起きないように撮影を補助することができるという効果が出てくる。
【0092】
なお、重なりがある場合は、被写体やカメラを動かすなどして、重なりの無い状態で撮影し直すのが良い訳だが、この場合の補助とは、例えば、重なりが起きるかどうかをユーザーに認識し易くすることや、どのくらい被写体やカメラを動かせば重なりが解消できそうかを、ユーザーが判断する材料(ここでは合成画像)を与えること、などになる。
【0093】
なお、背景画像を使わず、第1被写体画像と第2被写体画像だけで、背景補正量を算出してどちらかを補正し、差分画像を生成し、差分領域を求めることは、背景部分に適当量の重なりがあれば、可能である。その時、第1の被写体の領域と第2の被写体の領域に重なりが無ければ、差分領域は、第1の被写体の輪郭を持つ領域(ここでは説明の為、「第1領域」と呼ぶことにする)と、第2の被写体の輪郭を持つ領域(同様に「第2領域」と呼ぶことにする)との2つの独立した領域として求まる。
【0094】
この時、1つの被写体画像中で考えれば、第1領域と第2領域の、どちらかが被写体部分で、もう片方は背景部分であることは間違いない(ちなみに、差分領域の周囲は一致する背景部分)。例えば、第1被写体画像であれば、どちらかが第1の被写体部分で、もう片方は背景部分である。あるいは第1領域中で考えれば、第1被写体画像中の第1領域と、第2被写体画像中の第1領域との、どちらかが被写体部分で、もう片方は背景部分である。
【0095】
しかし、どちらが被写体部分で、どちらが背景部分であるかは、第1被写体画像および第2被写体画像だけから作成した差分画像を使っているだけでは判別できない。
【0096】
これに対し、背景画像を使う場合、どちらが被写体部分でどちらが背景部分であるかが簡単に判別できる効果が出てくる。例えば背景画像を基準画像とすると、背景画像と補正された第1被写体画像から求められる被写体領域は、第1領域だけとなる。この場合、当然、補正された第1被写体画像中の第1領域は、被写体部分であり、背景画像中の第1領域は背景部分である。第2被写体画像に関しても同様である。差分画像から第1領域と第2領域が同時に検出されることはないので、どちらが被写体部分でどちらが背景部分かはすぐに判別できる。
【0097】
このように、背景画像、第1被写体画像および第2被写体画像の3枚を用いると、第1の被写体の領域または第2の被写体の領域の抽出が容易になるという効果が出てくる。さらに、第1の被写体の領域または第2の被写体の領域をそれぞれ抽出できるので、各被写体に重なりがある場合に、どちらを優先して合成するか、すなわち重なり部分において、第1の被写体が第2の被写体の上になるように合成するか、下になるように合成するかを決めることができるという効果も出てくる。
【0098】
なお、本請求項に記載した構成を、前記請求項に記載した各構成と、必要に応じて任意に組み合わせてもよい。
【0099】
本発明に係る画像合成装置は、上記の課題を解決するために、前記被写体領域抽出手段から得られる第1の被写体の領域と第2の被写体の領域の重なりを検出する重なり検出手段を有することを特徴とする。
【0100】
上記の構成によれば、被写体領域抽出手段から第1の被写体の領域と第2の被写体の領域が得られるので、重なり検出手段が、ある画素位置について、第1の被写体の領域と第2の被写体の領域の両方に含まれる画素位置かどうかを調べることによって、両方に含まれる画素位置が存在する場合に、重なりがあると判断できる。
【0101】
その判断処理に好適な手法としては、例えば、それぞれの領域を被写体領域抽出手段または重なり検出手段が画像として生成し、被写体領域の画素の画素値を所定の値に設定する。そして、重なり検出手段が、各画素位置において、両方の画像の同じ画素位置の画素値が、設定した所定の値かどうかを判断すれば、重なりがあるかどうかを的確に判断できる。
【0102】
これによって、被写体同士が重なり合っている部分があるかどうかをユーザーが判別しやすくなるという効果が出てくる。それによって、重なりが起きないように撮影を補助する効果については、前述したものと同様である。
【0103】
本発明に係る画像合成装置は、上記の課題を解決するために、前記重なり検出手段において重なりが検出される時、重なりが存在することを、ユーザーあるいは被写体あるいは両方に警告する重なり警告手段を有してもよい
【0104】
ここで、「警告」には、表示手段などに文字や画像で警告することも含まれるし、ランプなどによる光やスピーカなどによる音声、バイブレータなどによる振動など、ユーザーや被写体が感知できる方法ならば何でも含まれる。
【0105】
これによって、被写体同士が重なり合っている場合に、重なり警告手段の動作によって警告されるので、ユーザーがそれに気づかずに撮影/記録したり合成処理したりということを防ぐことができ、さらに被写体にも位置調整等が必要であることを即時に知らせることができるという撮影補助の効果が出てくる。
【0106】
本発明に係る画像合成装置は、上記の課題を解決するために、前記重なり検出手段において重なりが検出されない時、重なりが存在しないことを、ユーザーあるいは被写体あるいは両方に通知するシャッターチャンス通知手段を有してもよい
【0107】
ここで、「通知」には、「警告」同様、ユーザーや被写体が感知できる方法ならば何でも含まれる。
【0108】
これによって、被写体同士が重なり合っていない時をユーザーが知ることができるので、撮影や撮影画像記録、合成のタイミングをそれに合わせて行えば、被写体同士が重ならずに合成することができるという撮影補助の効果が出てくる。
【0109】
また、被写体にも、シャッターチャンスであることを通知できるので、ポーズや視線などの備えを即座に行えるという撮影補助の効果も得られる。
【0110】
本発明に係る画像合成装置は、上記の課題を解決するために、被写体や風景を撮像する撮像手段を有し、前記重なり検出手段で重なりが検出されない時に、前記撮像手段から得られる画像を背景画像、または第1被写体画像、または第2被写体画像として記録する指示を生成する自動シャッター手段を有してもよい
【0111】
上記の構成において、撮影画像を背景画像や第1被写体画像、第2被写体画像として記録するというのは、例えば、主記憶や外部記憶に記録するなどで実現される。したがって、自動シャッター手段は、第1の被写体の領域と第2の被写体の領域とに重なりが無いという信号を重なり検出手段から入力したときに、主記憶や外部記憶に対する記録制御処理の指示を出力する。
【0112】
そして、背景補正量算出手段や重ね画像生成手段は、主記憶や外部記憶に記録されている画像を読み込むことで、背景画像や第1被写体画像、第2被写体画像を得ることができるようになる。
【0113】
なお、自動シャッター手段が自動的に指示を出しても、即座に画像が記録されるとは限らない。例えば、同時にシャッターボタンも押されているとか、自動記録モードになっているなどの状態でないと記録されないようにしてもよい。
【0114】
これによって、被写体同士が重なり合っていない時に自動的に撮影が行われるので、ユーザー自身が重なりがあるかどうかを判別してシャッターを押さなくても良いという撮影補助の効果が出てくる。
【0115】
本発明に係る画像合成装置は、上記の課題を解決するために、被写体や風景を撮像する撮像手段を有し、前記重なり検出手段で重なりが検出される時に、前記撮像手段から得られる画像を、背景画像、あるいは第1被写体画像、あるいは第2被写体画像として記録することを禁止する指示を生成する自動シャッター手段を有してもよい
【0116】
上記の構成によれば、自動シャッター手段は、重なり検出手段から重なりがあるという信号を得たら、撮像手段から得られる画像を主記憶や外部記憶などに記録することを禁止する指示を出力する。この結果、例えば、シャッターボタンが押されたとしても、撮像手段から得られる画像は記録されない。なお、この禁止処理は、自動禁止モードになっているなどの状態でないと行われないようにしてもよい。
【0117】
これによって、被写体同士が重なり合ってる時は撮影が行われないので、ユーザーが誤って重なりがある状態で撮影/記録してしまうことを防ぐ撮影補助の効果が出てくる。
【0118】
本発明に係る画像合成装置は、上記の課題を解決するために、前記重なり検出手段において、第1の被写体の領域と第2の被写体の領域が重なり合う重なり領域を抽出してもよい
【0119】
上記の構成によれば、重なり検出手段で、重なりがあるかどうか検出する際に、例えば先に説明した画像を使うなどして、重なり領域も同時に抽出できる。この抽出した重なり領域を利用して、被写体同士が重なり合っている部分がある場合に、どの部分が重なっているかを表示などで通知することができる。
【0120】
これにより、重なり領域をユーザーが判別しやすくなるという効果が出てくる。また、それによって、カメラや撮影中の被写体がどの方向、位置にどのくらい動けばよいかが判別しやすくなるという撮影補助の効果が出てくる。
【0121】
なお、背景画像を使わず、第1被写体画像と第2被写体画像だけで、背景補正量を算出してどちらかを補正し、差分画像を生成し、差分領域を求めることは、背景部分に適当量の重なりがあれば、可能である。その時、第1の被写体の領域と第2の被写体の領域に重なりが無ければ、差分領域は、第1領域と、第2領域との2つの独立した領域として求まる。しかし、重なりがある場合、第1領域と第2領域は独立せず、交じり合った1つの領域として抽出されてしまう。従って、第1被写体画像および第2被写体画像だけから重なっている領域を抽出することは難しい。
【0122】
これに対し、背景画像を使う場合は、例えば基準画像を背景画像に取るなどすれば、差分画像中には、第1領域か第2領域のどちらかしか存在せず、第1領域と第2領域は別個に抽出される。同時に抽出されることはない。従って、第1領域と第2領域が重なり合っていても、問題なく第1領域と第2領域を求めるこができる。従って、重なり領域も求めることができる。
【0123】
このように、背景画像も使うことで、被写体に重なりがあっても、重なり領域を求めることができる効果が出てくる。
【0124】
本発明に係る画像合成装置は、上記の課題を解決するために、前記重ね画像生成手段において、前記重なり検出手段が抽出した重なり領域を元の画素値と異なる画素値の画像として生成してもよい
【0125】
上記の構成によれば、重ね画像生成手段が重ね画像を生成する際、各画素位置の画素値を決めるが、その画素位置が重なり検出手段から得られる重なり領域内の場合(例えば、重なり領域を黒画像として生成した場合、重なり画像の画素位置の画素値が黒であると判定する処理が簡便)は、他の領域とは異なる画素値とする。特に、その領域の境界線や内部を赤などの目立つ色で描画したり、境界線を点滅表示させたり、半透明にして背景が透けるような画素値とすることが好ましい。
【0126】
これによって、重なり領域がユーザーや被写体に判別しやすくなるという撮影補助の効果が出てくる。
【0127】
本発明に係る画像合成装置は、上記の課題を解決するために、前記重なり検出手段で重なりが検出される場合、重なりを減らす第1の被写体または第2の被写体の位置あるいはその位置の方向を算出する重なり回避方法算出手段と、前記重なり回避方法算出手段から得られる第1の被写体または第2の被写体の位置あるいはその位置の方向を、ユーザーあるいは被写体あるいは両方に知らせる重なり回避方法通知手段と、を有してもよい
【0128】
ここで、被写体領域抽出手段から第1の被写体の領域と第2の被写体の領域の情報が得られ、それらの領域情報から重なり検出手段で重なりに関する情報が得られることは、既に説明したとおりである。
【0129】
従って、被写体の領域の位置を被写体領域抽出手段から得た位置と異なる位置にして、重なり検出手段で重なりがどのくらいあるかを調べれば、その位置に被写体が動いたときの重なり量が予測できる。被写体の領域の位置を色々な位置にしてみて、それぞれの重なり量を予測し、最も重なりが少ない位置や方向を重なりを減らす位置や方向としてユーザーや被写体に通知する。
【0130】
あるいは、もっと簡単に処理するのならば、一般に被写体間の距離が離れれば重なりは減るはずなのだから、得られた被写体領域から、被写体間の距離が離れる方向を計算することができる。
【0131】
得られた重なりが少なくなる位置や方向を、例えば表示で通知する場合、重ね画像を生成する際、各種合成処理を行った後に、矢印などを上書きして生成すればよい。
【0132】
これによって、重なりがある場合に、カメラや撮影中の被写体がどの方向、位置に動けばよいかがユーザーが判断しなくても済むという撮影補助の効果が出てくる。
【0133】
なお、重なりが少ない位置や方向を算出する被写体は、第1/第2の被写体のどちらでもよいが、先に撮影した被写体は、既にカメラの前から立ち退いており、後で撮影した被写体が、通常、カメラの前に立っていると考えられる。したがって、後で撮影した被写体について位置や方向を算出すれば、その算出結果に基づいて、重なりが少なくなる方向へ被写体が即座に移動すればよいので、使い勝手が良くなる。
【0134】
本発明に係る画像合成方法は、上記の課題を解決するために、背景の画像である背景画像と、前記背景の少なくとも一部と第1の被写体を含む画像である第1被写体画像と、前記背景の少なくとも一部と第2の被写体を含む画像である第2被写体画像との間での、背景の相対的な移動量、回転量、拡大縮小率、歪補正量のいずれかもしくは組み合わせからなる補正量を算出する、あるいは算出して記録しておいた補正量を読み出す背景補正量算出ステップと、背景画像、第1被写体画像、第2被写体画像のいずれかを基準画像とし、他の2画像を被写体以外の背景の少なくとも一部が重なるように、前記背景補正量算出ステップから得られる補正量で補正し、基準画像と補正した他の1つあるいは2つの画像を重ねた画像を生成する重ね画像生成ステップとを有する
【0135】
これによる種々の作用効果は、前述したとおりである。
【0136】
本発明に係る画像合成プログラムは、上記の課題を解決するために、上記画像合成装置が備える各手段として、コンピュータを機能させてもよい
【0137】
本発明に係る画像合成プログラムは、上記の課題を解決するために、上記画像合成方法が備える各ステップをコンピュータに実行させてもよい
【0138】
本発明に係る記録媒体は、上記の課題を解決するために、上記画像合成プログラムを記録してもよい
【0139】
これにより、上記記録媒体、またはネットワークを介して、一般的なコンピュータに画像合成プログラムをインストールすることによって、該コンピュータを用いて上記の画像合成方法を実現する、言い換えれば、該コンピュータを画像合成装置として機能させることができる。
【0140】
【発明の実施の形態】
以下、本発明の実施の形態を図面を参照して説明する。
【0141】
まず、言葉の定義について説明しておく。
【0142】
「第1の被写体」、「第2の被写体」とは、合成を行おうとしている対象であり、一般には人物であることが多いが物などの場合もある。厳密には、「第1の被写体」は、背景画像と第1被写体画像との間で、背景部分が少なくとも一部重なるようにした時に、画素値が一致しない領域、すなわち変化がある領域は全て「第1の被写体の領域」となる可能性を持つ。但し、背景部分で風で木の葉が揺れたなどの小さな変化でも変化がある領域となってしまうので、小さな変化や小さな領域はある程度無視する方が好ましい。「第2の被写体」についても同様である。
【0143】
なお、例えば被写体が人物の場合、被写体は必ずしも一人であるとは限らず、複数の人物をまとめて「第1の被写体」や「第2の被写体」とする場合もある。つまり、複数人であっても、合成の処理の単位としてまとめて扱うものは一つの「被写体」となる。
【0144】
なお、人物でなく、物であっても同様である。また、被写体は、必ずしも一つの領域であるとは限らず、複数の領域からなる場合もある。「第1」、「第2」は、異なるコマ画像として単に区別する為につけたものであり、撮影の順番などを表すものではなく、本質的な違いはない。また、例えば、人物が服や物などを持っていて、「第1、第2の被写体を含まない背景だけの画像」にそれらが現れないのならば、それらも被写体に含まれる。
【0145】
「第1被写体画像」、「第2被写体画像」は、上記の「第1の被写体」、「第2の被写体」を含む別々の画像であり、一般には、カメラなどでその被写体を別々に撮影した画像である。但し、画像上に被写体のみしか写っておらず、背景画像と共通する背景部分が全く写っていない場合は、その共通する背景部分を元にした位置合わせができないので、合成に適さない。したがって、少なくとも一部は(合成した被写体の周囲を自然にするために、より好ましくは、合成しようとする被写体の周囲において)背景画像と共通する背景部分が写っている必要がある。また、通常は、第1被写体画像、第2被写体画像は、同じ背景を使って、すなわちカメラをあまり動かさないで撮影する場合が多い。
【0146】
「背景部分」とは、風景から「第1の被写体」、「第2の被写体」を除いた部分である。
【0147】
「背景画像」とは、第1被写体画像、第2被写体画像のそれぞれの背景部分の画像が少なくとも一部含まれている画像であり、第1の被写体、第2の被写体は写っていないものである。通常は、第1被写体画像、第2被写体画像と同じ背景を使って、すなわちカメラをあまり動かさないで、第1の被写体、第2の被写体にカメラの前から外れてもらって撮影する場合が多い。
【0148】
なお、第1被写体画像および第2被写体画像には、背景画像と位置合わせできる程度に、背景画像と共通する背景部分をそれぞれ含んでいればよい。したがって、第1被写体画像および第2被写体画像の背景部分同士の関係は、完全一致の場合、部分一致の場合、完全不一致の場合のあらゆる場合を含む。
【0149】
「第1、第2の被写体以外の背景部分」とは、第1被写体画像、第2被写体画像から第1被写体領域、第2被写体領域を除いた残りの部分である。
【0150】
「移動量」は、平行移動させる量だが、回転や拡大縮小の中心の対応点の移動量と言ってもよい。
【0151】
「歪補正量」とは、カメラやレンズの位置や方向が変わったことによる撮影画像の変化のうち、平行移動、回転、拡大縮小では補正できない残りの変化を補正する為の補正量である。例えば、高い建物を撮影した時に、上の方が遠近法の効果により同じ大きさであっても小さく写ってしまう「あおり」などとよばれる効果などを補正する場合などがこれに含まれる。
【0152】
「重ね画像生成手段」は、重ね画像を生成するが、必ずしも一つの画像として生成しなくてもよく、他の手段と合わせて合成したかのように見えるのでも構わない。例えば、表示手段上にある画像を表示する際、その画像に上書きする形で別の画像を一部表示すれば、見た目には2つの画像から合成画像を生成し、その合成画像を表示しているかのように見えるが、実際は、2つの画像がそれぞれ存在するだけで、合成画像は存在していない。
【0153】
「画素値」とは、画素の値であり、一般に所定のビット数を使って表される。例えば、白黒二値の場合は1ビットで表現され、256階調のモノクロの場合、8ビット、赤、緑、青の各色256階調のカラーの場合、24ビットで表現される。カラーの場合、赤、緑、青の光の3原色に分解されて表現されることが多い。
【0154】
なお、似た言葉として、「濃度値」、「輝度値」などがある。これは目的によって使い分けているだけであり、「濃度値」は主に画素を印刷する場合、「輝度値」は主にディスプレイ上に表示する場合に使われるが、ここでは目的は限定していないので、「画素値」と表現することにする。
【0155】
「透過率」とは、複数の画素の画素値に所定の割合の値を掛けて、その和を新たな画素値とする処理において、掛ける「所定の割合の値」のことである。通常、0以上、1以下の値である。また、1つの新たな画素値で使われる各画素の透過率の和は1とする場合が多い。「透過率」でなく、「不透明度」と言う場合もある。「透明度」は1から「不透明度」を引いた値である。
【0156】
「所定の透過率」には、固定された値、領域に応じて変わる値、領域の境界付近で徐々に変わる値なども含まれる。
【0157】
「差分画像」とは、二つの画像中の同じ位置の画素値を比較して、その差の値を画素値として作成する画像のことである。一般には、差の値は絶対値をとることが多い。
【0158】
「元の画素値と異なる画素値」とは、例えば、透過率を変えて半透明にしたり、画素値の明暗や色相などを逆にして反転表示させたり、赤や白、黒などの目立つ色にしたり、などを実現するような画素値である。また、領域の境界部分と内部とで、上記のように画素値を変えてみたり、境界部分を点線で囲ってみたり、点滅表示(時間的に画素値を変化させる)させてみたり、というような場合も含む。
【0159】
「被写体の領域」とは、被写体が背景と分離される境界で区切られる領域である。例えば、第1被写体画像中で人物が服や物などを持っていて、背景画像にそれらが現れないのならば、それらも被写体であり、被写体の領域に含まれる。なお、被写体の領域は、必ずしも繋がった一塊の領域とは限らず、複数の領域に分かれていることもある。
【0160】
「前記被写体領域抽出手段から得られる領域のみを重ねる」とは、その領域以外は何も画像を生成しないということではなく、それ以外の領域は基準画像などで埋めることを意味する。
【0161】
「警告」には、表示手段などに文字や画像で警告することも含まれるし、ランプなどによる光やスピーカなどによる音声、バイブレータなどによる振動など、ユーザーや被写体が感知できる方法ならば何でも含まれる。
【0162】
「通知」は、「警告」同様、ユーザーや被写体が感知できる方法ならば何でも含まれる。
【0163】
「フレーム(枠)」とは、画像全体の矩形をさす。被写体が画像の端に一部かかっているような場合、フレーム(枠)にかかる、とか、フレーム(枠)から切れる、などと表現することもある。
【0164】
図1は、本発明の実施の一形態に係る画像合成方法を実施する画像合成装置を示す構成図である。
【0165】
すなわち、画像合成装置の要部を、第1被写体画像取得手段1、背景画像取得手段2、第2被写体画像取得手段3、背景補正量算出手段4、補正画像生成手段5、差分画像生成手段6、被写体領域抽出手段7、重なり検出手段8、重ね画像生成手段9、重ね画像表示手段10、重なり回避方法算出手段11、重なり回避方法通知手段12、重なり警告手段13、シャッターチャンス通知手段14、自動シャッター手段15、撮像手段16の主要な機能ブロックに展開して示すことができる。
【0166】
図2は、図1の各手段1〜16を具体的に実現する装置の構成例である。
【0167】
CPU(central processing unit)70は、背景補正量算出手段4、補正画像生成手段5、差分画像生成手段6、被写体領域抽出手段7、重なり検出手段8、重ね画像生成手段9、重ね画像表示手段10、重なり回避方法算出手段11、重なり回避方法通知手段12、重なり警告手段13、シャッターチャンス通知手段14、自動シャッター手段15として機能し、これら各手段1〜16の処理手順が記述されたプログラムを主記憶74、外部記憶75、通信デバイス77を介したネットワーク先などから得る。
【0168】
なお、第1被写体画像取得手段1、背景画像取得手段2、第2被写体画像取得手段3、撮像手段16についても、撮像素子や、撮像素子が出力する画像データの各種処理に対する内部制御などの為にCPUなどを使っている場合もある。
【0169】
また、CPU70は、CPU70を含めてバス79を通じ相互に接続されたディスプレイ71、撮像素子72、タブレット73、主記憶74、外部記憶75、シャッターボタン76、通信デバイス77、ランプ78、スピーカ80とデータのやりとりを行ないながら、処理を行なう。
【0170】
なお、データのやりとりは、バス79を介して行う以外にも、通信ケーブルや無線通信装置などデータを送受信できるものを介して行ってもよい。また、各手段1〜16の実現手段としては、CPUに限らず、DSP(digital signal processor)や処理手順が回路として組み込まれているロジック回路などを用いることもできる。
【0171】
ディスプレイ71は、通常はグラフィックカードなどと組み合わされて実現され、グラフィックカード上にVRAM(video random access memory)を有し、VRAM上のデータを表示信号に変換して、モニターなどのディスプレイ(表示/出力媒体)に送り、ディスプレイは表示信号を画像として表示する。
【0172】
撮像素子72は、風景等を撮影して画像信号を得るデバイスであり、通常、レンズなどの光学系部品と受光素子およびそれに付随する電子回路などからなる。ここでは、撮像素子72は、A/D変換器などを通して、デジタル画像データに変換する所まで含んでいるとし、バス79を通じて、第1被写体画像取得手段1、背景画像取得手段2、第2被写体画像取得手段3などに撮影した画像データを送るとする。撮像素子として一般的なデバイスとしては、例えば、CCD(charge coupled device)などがあるが、その他にも風景等を画像データとして得られるデバイスならば何でも良い。
【0173】
ユーザの指示を入力する手段として、タブレット73、シャッターボタン76などがあり、ユーザの指示はバス79を介して各手段1〜16に入力される。この他にも各種操作ボタン、マイクによる音声入力など、様々な入力手段が使用可能である。タブレット73は、ペンとペン位置を検出する検出機器からなる。シャッターボタン76は、メカニカルもしくは電子的なスイッチなどからなり、ユーザーがボタンを押すことで、通常は、撮像素子72で撮影された画像を主記憶74や外部記憶75などに記録したりする一連の処理を開始させるスタート信号を生成する。
【0174】
主記憶74は、通常はDRAM(dynamic random access memory)やフラッシュメモリなどのメモリデバイスで構成される。なお、CPU内部に含まれるメモリやレジスタなども一種の主記憶として解釈してもよい。
【0175】
外部記憶75は、HDD(hard disk drive)やPC(personal computer) カードなどの装脱着可能な記憶手段である。あるいはCPU70とネットワークを介して有線または無線で接続された他のネットワーク機器に取り付けられた主記憶や外部記憶を外部記憶75として用いることもできる。
【0176】
通信デバイス77は、ネットワークインターフェースカードなどにより実現され、無線や有線などにより接続された他のネットワーク機器とデータをやりとりする。
【0177】
スピーカ80は、バス79などを介して送られて来る音声データを音声信号として解釈し、音声として出力する。出力される音声は、単波長の単純な音の場合もあるし、音楽や人間の音声など複雑な場合もある。出力する音声が予め決まっている場合、送られて来るデータは音声信号ではなく、単なるオン、オフの動作制御信号だけという場合もある。
【0178】
次に、図1の各手段1〜16を各手段間のデータ授受の観点から説明する。
【0179】
なお、各手段間でのデータのやりとりは、特に注釈なく「**手段から得る」、「**手段へ送る(渡す)」という表現をしている時は、主にバス79を介してデータをやりとりしているとする。その際、直接各手段間でデータのやりとりをする場合もあれば、主記憶74や外部記憶75、通信デバイス77を介したネットワークなどを間に挟んでデータをやりとりする場合もある。
【0180】
第1被写体画像取得手段1は、例えば撮像素子72を含む撮像手段16、主記憶74、外部記憶75などで構成され、第1被写体画像を、撮像手段16、主記憶74、外部記憶75、通信デバイス77を介したネットワーク先などから得る。なお、第1被写体画像取得手段1は、撮像素子72や、撮像素子72が出力する画像データの各種処理に対する内部制御などの為にCPUなどを含む場合もある。
【0181】
撮像手段16を使う場合は、第1の被写体が含まれる現在の風景(第1被写体画像)を撮像素子72で撮影することになり、通常はシャッターボタン76などを押したタイミングなどで撮影し、撮影された画像は、主記憶74、外部記憶75、通信デバイス77を介したネットワーク先などに記録される。
【0182】
一方、第1被写体画像取得手段1が、主記憶74、外部記憶75、および/または通信デバイス77を介したネットワーク先などから第1被写体画像を得る場合は、既に撮影されて予め用意してある画像を読み出すことになる。なお、通信デバイス77を介したネットワーク先などにカメラがあり、ネットワークを通して撮影する場合もある。
【0183】
第1被写体画像は、背景補正量算出手段4、補正画像生成手段5、差分画像生成手段6、被写体領域抽出手段7、および/または重ね画像生成手段9などに送られる。
【0184】
背景画像取得手段2は、例えば撮像素子72を含む撮像手段16、主記憶74、および/または外部記憶75などで構成され、背景画像を、撮像手段16、主記憶74、外部記憶75、および/または通信デバイス77を介したネットワーク先などから得る。なお、背景画像取得手段2は、上記内部制御などの為にCPUなどを含む場合もある。画像の中身が違う以外は、画像の取得方法に関しては、第1被写体画像取得手段1と同様である。
【0185】
なお、背景画像は、背景補正量算出手段4、補正画像生成手段5、および/または差分画像生成手段6に送られる。
【0186】
第2被写体画像取得手段3は、例えば撮像素子72を含む撮像手段16、主記憶74、および/または外部記憶75などで構成され、第2の被写体が含まれる画像(第2被写体画像)を、撮像手段16、主記憶74、外部記憶75、および/または通信デバイス77を介したネットワーク先などから得る。なお、第2被写体画像取得手段3は、内部制御などの為にCPUなどを含む場合もある。画像の中身が違う以外は、画像の取得方法に関しては、第1被写体画像取得手段1と同様である。
【0187】
第2被写体画像は、背景補正量算出手段4、補正画像生成手段5、差分画像生成手段6、被写体領域抽出手段7、および/または重ね画像生成手段9などに送られる。
【0188】
背景補正量算出手段4としてのCPU70は、第1被写体画像、第2被写体画像、および背景画像中の被写体以外の背景の相対的な移動量、回転量、拡大縮小率、歪補正量のいずれかもしくは組み合わせからなる補正量を算出する。
【0189】
この場合、少なくとも一部共通する背景を持つ2つの画像同士で、一方を基準画像とし、その基準画像と他の画像との間の補正量が最低限求まればよい。残りの画像についても、前記基準画像または他の画像のどちらか、または双方と少なくとも一部共通する背景を持っていさえすれば、基準画像に対する補正量を最終的に算出することができる。
【0190】
なお、補正量は相対的なものなので、基準画像と他の画像との間の補正量を直接的でなく、間接的に計算で求めてもよい。例えば、第1被写体画像が基準画像の時、基準画像と第2被写体画像の間の補正量、基準画像と背景画像の間の補正量が直接得られなくても、基準画像と背景画像の間の補正量、第2被写体画像と背景画像の間の補正量を直接得られるならば、その2つの補正量から基準画像と第2被写体画像の間の補正量を計算で求めることも可能である。
【0191】
背景補正量算出手段4は、算出した補正量を補正画像生成手段5に送る。なお、予め算出しておいた補正量を背景補正量算出手段4が読み出す場合は、主記憶74、外部記憶75、および/または通信デバイス77を介したネットワーク先などから補正量を読み出すことになる。
【0192】
補正画像生成手段5としてのCPU70は、第1被写体画像、第2被写体画像、背景画像のいずれかを基準画像とし、他の2画像を被写体以外の背景の部分が重なるように背景補正量算出手段4から得られる補正量で補正した画像を生成し、差分画像生成手段6および重ね画像生成手段9へ送る。なお、予め生成しておいた補正画像を補正画像生成手段5が読み出す場合は、主記憶74、外部記憶75、および/または通信デバイス77を介したネットワーク先などから読み出すことになる。
【0193】
差分画像生成手段6としてのCPU70は、補正画像生成手段5で決めた基準画像と補正画像生成手段5から得られる補正した他の1つあるいは2つの画像の間の差分画像を生成して、生成した差分画像を被写体領域抽出手段7および重ね画像生成手段9へ送る。基準画像は、第1被写体画像、第2被写体画像、背景画像のいずれかである。
【0194】
被写体領域抽出手段7としてのCPU70は、差分画像生成手段6から得られる差分画像から第1、第2の被写体の領域を抽出して、抽出した領域を重なり検出手段8および重ね画像生成手段9へ送る。
【0195】
重なり検出手段8としてのCPU70は、被写体領域抽出手段7から得られる第1、第2の被写体の領域から第1、第2の被写体同士の重なりを検出して、重なりが存在するかどうかの情報と重なり領域の情報とを、重ね画像生成手段9、重なり回避方法算出手段11、重なり警告手段13、シャッターチャンス通知手段14および自動シャッター手段15に送る。
【0196】
重ね画像生成手段9としてのCPU70は、第1被写体画像取得手段1から得られる第1被写体画像、第2被写体画像取得手段3から得られる第2被写体画像、背景画像取得手段2から得られる背景画像、補正画像生成手段5から得られる補正画像を、全部あるいは一部重ねた画像を生成し、生成した画像を重ね画像表示手段10に送る。
【0197】
また、重ね画像生成手段9は、差分画像生成手段6から得られる差分画像中の差のある領域を、元の画素値と異なる画素値の画像として生成する場合もある。
【0198】
また、重ね画像生成手段9は、被写体領域抽出手段7から得られる第1の被写体と第2の被写体の領域のみを基準画像などに重ねる場
合もある。
【0199】
また、重ね画像生成手段9は、重なり検出手段8から得られる重なりの領域を、元の画素値と異なる画素値の画像として生成する場合もある。
【0200】
重ね画像表示手段10としてのCPU70は、重ね画像生成手段9から得られる重ね画像をディスプレイ71などに表示する。
【0201】
また、重ね画像表示手段10は、重なり回避方法通知手段12から得られる重なり回避方法の情報に応じて、重なり回避方法の表示を行う場合や、重なり警告手段13から得られる警告情報に応じて、警告表示を行う場合や、シャッターチャンス通知手段14から得られるシャッターチャンス情報に応じて、シャッターチャンスである旨の表示を行う場合や、自動シャッター手段15から得られるシャッター情報に応じて、自動シャッターが行われた旨の表示を行う場合もある。
【0202】
重なり回避方法算出手段11としてのCPU70は、重なり検出手段8から得られる重なりに関する情報から、第1と第2の被写体の重なりを減らす、あるいは無くすように、第1あるいは第2の被写体の位置あるいはその位置の方向を算出し、その算出した位置や方向を示す情報を重なり回避方法として重なり回避方法通知手段12へ渡す。位置や方向を求める被写体は、第1あるいは第2の被写体のどちらでも可能だが、現在撮影中の(あるいは最後に撮影した)被写体の方が利便性がよい。
【0203】
重なり回避方法通知手段12としてのCPU70は、重なり回避方法算出手段11から得られた上述の重なり回避方法を、ユーザーあるいは被写体あるいは両方に通知する。
【0204】
通知には、通知内容を文字などにして重ね画像表示手段10に送ってディスプレイ71に表示させたり、ランプ78を使って光で知らせたり、スピーカ80を使って音で知らせたりする種々の形態を採用できる。通知することができるのならば、それ以外のデバイスなどを使っても良い。
【0205】
重なり警告手段13としてのCPU70は、重なり検出手段8から得られる重なり情報から、重なりが存在する場合、ユーザーあるいは被写体あるいは両方に重なりがあることを通知する。通知方法に関しては、重なり回避方法通知手段12の説明と同様である。
【0206】
シャッターチャンス通知手段14としてのCPU70は、重なり検出手段8から得られる重なり情報から、重なりが存在しない場合、ユーザーあるいは被写体あるいは両方に重なりが無いことを通知する。通知方法に関しては、重なり回避方法通知手段12の説明と同様である。
【0207】
自動シャッター手段15としてのCPU70は、重なり検出手段8から得られる重なり情報から、重なりが存在しない場合、第2被写体画像取得手段3に対し、撮像手段16から得られる画像を主記憶74や外部記憶75などに記録するように自動的に指示を出す。
【0208】
ここでは、撮像手段16から得られる画像は、背景画像、第1被写体画像または第2被写体画像として主記憶74や外部記憶75などに最終的に記録、保存され、合成されるような使い方を主に想定している。最終的に記録、保存されるまでは、背景画像および第1被写体画像を撮像手段16から得て、得る毎に記録、保存するが、第2被写体画像は撮像手段16から得られても、すぐには保存されない。
【0209】
すなわち、撮像手段16から得た画像を第2被写体画像とする場合、その得られた第2被写体画像と保存されている背景画像および第1被写体画像とを使って、重なり検出や重なり回避などの処理を行い、重ね画像表示手段10などでの各種表示や警告、通知などの処理を行う、という一連の処理を繰り返す。そして、自動シャッター手段15により記録、保存を指示された時、第2被写体画像が最終的に記録、保存される。
【0210】
なお、自動シャッター手段15による撮影許可の指示が存在し、かつ、シャッターボタン76がユーザーにより押される場合に、第2被写体画像を記録、保存するようにしてもよい。
【0211】
また、自動シャッター手段15が、指示を出した結果、撮像画像が記録されたことをユーザーあるいは被写体あるいは両方に通知してもよい。通知方法に関しては、重なり回避方法通知手段12の説明と同様である。
【0212】
また、自動シャッター手段15としてのCPU70は、記録の指示を行うだけでなく、重なり検出手段8から得られる重なり情報から、重なりが存在する場合、第2被写体画像取得手段3に撮像手段16から得られる画像を主記憶74や外部記憶75などに記録するのを禁止するように自動的に指示を出す。この動作は、上述した自動記録する場合の逆となる。
【0213】
この場合、自動シャッター手段15による保存禁止の指示が存在する場合、シャッターボタン76がユーザーにより押されても、第2被写体画像は記録、保存されないことになる。
【0214】
撮像手段16は撮像素子72を主要構成要素として備え、撮像した風景などを画像データとして第1被写体画像取得手段1、第2被写体画像取得手段3および/または背景画像取得手段2に送る。
【0215】
図3(a)は、本発明に係る画像合成装置の背面からの外観例を示している。本体140上に表示部兼タブレット141、ランプ142、およびシャッターボタン143がある。
【0216】
表示部兼タブレット141は入出力装置(ディスプレイ71およびタブレット73等)および重ね画像表示手段10に相当する。表示部兼タブレット141上には、図3(a)のように、重ね画像生成手段9で生成された合成画像や重なり回避方法通知手段12、重なり警告手段13、シャッターチャンス通知手段14、自動シャッター手段15などからの通知/警告情報などが表示される。また、画像合成装置の各種設定メニューなどを表示して、タブレットを使って指やペンなどで設定を変更したりするのにも使われる。
【0217】
なお、各種設定などの操作手段として、タブレットだけでなく、ボタン類などがこの他にあってもよい。また、表示部兼タブレット141は、本体140に対する回転や分離などの方法を用いて、撮影者だけでなく、被写体側でも見られるようになっていてもよい。
【0218】
ランプ142は、重なり回避方法通知手段12、重なり警告手段13、シャッターチャンス通知手段14または自動シャッター手段15などからの通知や警告に使われたりする。
【0219】
シャッターボタン143は、第1被写体画像取得手段1、背景画像取得手段2または第2被写体画像取得手段3が、撮像手段16から撮影画像を取り込む/記録するタイミングを指示する為に主に使われる。
【0220】
また、この例では示していないが、内蔵スピーカなどを通知/警告手段として使ってもよい。
【0221】
図3(b)は、本発明に係る画像合成装置の前面からの外観例を示している。本体140前面にレンズ部144が存在する。レンズ部144は、撮像手段16の一部である。なお、図3(b)の例では示していないが、前面に被写体に情報(前記の通知や警告)を伝えられるように、表示部やランプ、スピーカなどがあってもよい。
【0222】
図4は、画像データのデータ構造例を説明する説明図である。画像データは画素データの2次元配列であり、「画素」は、属性として位置と画素値を持つ。ここでは画素値として光の3原色(赤、緑、青)に対応したR、G、Bの値を持つとする。図4の横に並んだR、G、Bの組で1画素のデータとなる。但し、色情報を持たないモノクロの輝度情報だけを持つ場合は、R、G、Bの代わりに輝度値を1画素のデータとして持つとする。
【0223】
位置はX−Y座標(x、y)で表す。図4では左上原点とし、右方向を+X方向、下方向を+Y方向とする。
【0224】
以降では説明の為、位置(x、y)の画素を「P(x、y)」と表すが、画素P(x、y)の画素値も「画素値P(x、y)」あるいは単に「P(x、y)」と表す場合もある。画素値がR、G、Bに分かれている場合、各色毎に計算は行うが、色に関する特別な処理でなければ、同じ計算処理をR、G、Bの値毎に行えばよい。従って、以降では共通した計算方法として「画素値P(x、y)」を使って説明する。
【0225】
図5は、本発明の実施の一形態に係る適応出力方法の一例を示すフローチャート図である。
【0226】
まずステップS1(以下、「ステップS」を「S」と略記する。)では、背景画像取得手段2が、背景画像を取得し、S2へ処理が進む。背景画像は、撮像手段16を使って撮影してもよいし、予め主記憶74、外部記憶75、通信デバイス77を介したネットワーク先などに用意してある画像を読み出してもよい。
【0227】
次に、S2では、第1被写体画像取得手段1が、上記背景画像と少なくとも一部共通する背景部分を持つ第1被写体画像を取得し、連結点P20(以下、「連結点P」を「P」と略記する)を経てS3へ処理が進む。第1被写体画像の取得方法は、背景画像と同様である。なお、S1とS2の処理の順番は逆でも良い。
【0228】
S3では、第2被写体画像取得手段3が、上記背景画像または第1被写体画像と少なくとも一部共通する背景部分を持つ第2被写体画像を取得し、P30を経てS4へ処理が進む。ここでの処理は後で図14を用いて詳しく説明するが、第2被写体画像の取得方法自体は、背景画像と同様である。
【0229】
S4では、背景補正量算出手段4が、第1被写体画像、第2被写体画像および背景画像から背景補正量を算出して、P40を経てS5へ処理が進む。第1被写体画像、第2被写体画像、背景画像はそれぞれ、第1被写体画像取得手段1(S2)、第2被写体画像取得手段3(S3)、背景画像取得手段2(S1)から得られる。
【0230】
なお、以降、第1被写体画像、第2被写体画像および背景画像を使う際、特にことわりの無い限り、これらの画像の取得元の手段/ステップはS4での取得元の手段/ステップと同じなので、以降はこれらの画像の取得元の手段/ステップの説明は省く。
【0231】
S4の処理の詳細は後で図15を用いて説明する。
【0232】
S5では、補正画像生成手段5が、背景補正量算出手段4から得た背景補正量を使って第1被写体画像、第2被写体画像および背景画像の内の基準画像以外の2つの画像を補正し、差分画像生成手段6が、補正画像生成手段5で補正された画像らと基準画像との間の相互の差分画像を生成して、P50を経てS6へ処理が進む。S5の処理の詳細は後で図17を用いて説明する。
【0233】
S6では、被写体領域抽出手段7が、差分画像生成手段6(S5)から得られる差分画像から、第1、第2の被写体の領域(以降、第1被写体領域、第2被写体領域と呼ぶ)を抽出して、P60を経てS7へ処理が進む。S6の処理の詳細は後で図19を用いて説明する。
【0234】
S7では、重なり検出手段8が、被写体領域抽出手段7(S6)から得られる第1、第2の被写体の領域から、それらの領域の重なりに関する情報を得て、P70を経てS8へ処理が進む。S7の処理の詳細は後で図を用いて説明する。
【0235】
S8では、重なり回避方法算出手段11、重なり回避方法通知手段12、重なり警告手段13、シャッターチャンス通知手段14、自動シャッター手段15のうちの一つ以上の手段が、重なり検出手段8(S7)から得られる重なりに関する情報に応じて様々な処理を行い、P80を経てS9へ処理が進む。S8の処理の詳細は後で図21から図24、図27を用いて説明する。
【0236】
S9では、重ね画像生成手段9が、第1被写体画像、第2被写体画像、背景画像、およびそれらの画像を補正画像生成手段5(S5)で補正した画像、被写体領域抽出手段7(S6)から得られる第1、第2の被写体の領域、重なり検出手段8(S8)から得られる第1、第2の被写体の重なりに関する情報などから、これら複数の画像を重ねる「重ね画像」を生成して、P90を経てS10へ処理が進む。S9の処理の詳細は後で図30を用いて説明する。
【0237】
S10では、重ね画像表示手段10が、重ね画像生成手段9(S9)から得られる重ね画像をディスプレイ71などに表示して、処理を終了する。
【0238】
これらS1からS10の処理で、第1被写体画像、第2被写体画像および背景画像を使って、第1の被写体と第2の被写体を1枚の画像上に合成し、また被写体同士の重なり具合に応じて様々な処理が行えるようになる。
【0239】
詳細な処理やその効果については、後で詳しく説明するとして、まず簡単な例で処理の概要を説明する。
【0240】
図6(a)はS1で得る背景画像の例である。建物とそれに通じる道路が背景の風景として写っており、被写体としての人物は存在しない。
【0241】
図7(a)はS2で得る第1被写体画像の例である。図6(a)の背景の手前、左側に第1の被写体たる人物(1)が立っている。分かりやすいように人物(1)の顔部分には「1」と記しておく。なお、今後、特にことわりなく「右側」「左側」といった場合、図上での「右側」「左側」という意味だとする。この方向は、撮影者/カメラから見た方向だと思えばよい。
【0242】
図8(a)はS3で得る第2被写体画像の例である。図6(a)の背景の手前、右側に第2の被写体たる人物(2)が立っている。分かりやすいように人物(2)の顔部分には「2」と記しておく。
【0243】
図6(c)は、図6(a)の背景画像と図7(a)の第1被写体画像との間で背景補正量を求め、第1被写体画像を基準画像として、背景画像を補正した画像である。同様に、図8(c)は、図7(a)の第1被写体画像と図8(a)の第2被写体画像との間で背景補正量を求め、第1被写体画像を基準画像として、第2被写体画像を補正した画像である。
【0244】
補正された画像は実線の枠で囲われた範囲であり、補正のされ方が分かるように、元の図6(a)の背景画像と図8(a)の第2被写体画像の範囲を、それぞれ図6(c)と図8(c)上に点線の枠で示してある。
【0245】
例えば、図6(a)の背景画像は、図7(a)の背景の少し右側の風景を撮影して得られている。このため、図6(a)の背景画像を図7(a)の背景と重なるように補正するには、図6(a)の少し左側の風景を選択する必要がある。従って、図6(c)は、図6(a)より少し左側の風景となるように補正されている。元の図6(a)の範囲は点線で示されている。図6(a)より左側の風景の画像は存在しないので、図6(c)では左端の点線から左の部分が空白となっている。逆に図6(a)の右端の部分は切り捨てられている。
【0246】
ここでは拡大縮小や回転などの補正はなく、単なる平行移動だけの補正結果になっている。すなわちS4で得られる背景補正量は、ここでは実線の枠と点線の枠のずれが示す平行移動量となる。
【0247】
図9(a)は、S5で、図7(a)の第1被写体画像と図6(c)の補正された背景画像との間で生成した差分画像である。同様に、図10(a)は、図8(c)の補正された第2被写体画像と図6(c)の補正された背景画像との間で生成した差分画像である。
【0248】
差分画像では差分量0の部分(すなわち、背景の一致部分)は黒い領域で示されている。差分がある部分は、被写体の領域内とノイズ部分であり、被写体の領域部分は背景画像と被写体部分の画像が重なり合った妙な画像になっている。(なお、補正によってどちらかの画像しか画素が存在しない領域(例えば図6(c)の左側または右側に位置する実線と点線の間の領域)は差分の対象からは外し、差分量は0としている)。
【0249】
図9(d)は、S6で、図9(a)から第1被写体領域を抽出した結果である。抽出処理の詳細については後で説明する。図中の黒い人物の形をした領域112が第1被写体領域である。同様に、図10(d)は、図10(a)から第2被写体領域を抽出した結果である。図中の黒い人物の形をした領域122が第2被写体領域である。
【0250】
S7で、図9(d)と図10(d)の被写体領域同士の重なりを検出するが、この例では重なりは無いので、重なりの図は省略する。
【0251】
S8の重なりに関する処理は様々な処理方法があるが、この例では重なりは検出されないので、ここでは説明を簡単にする為に特に処理は行わないことにしておく。
【0252】
図11(a)は、図10(d)の第2被写体領域に相当する部分の画像を図8(c)の補正された第2被写体画像から抜き出し、図7(a)の第1被写体画像に重ねて(上書きして)生成した画像である。これにより、図11(a)では、図7(a)と図8(a)の別々に写っていた被写体が同じ画像上に重なりなく並んでいる。重ね方に関しても、様々な処理方法があるので、後で詳しく説明する。図11(a)の画像が重ね画像表示手段10上に合成画像として表示される。
【0253】
これによって、別々に撮影された被写体を同時に撮影したかのような画像を合成できるようになる効果が出てくる。
【0254】
以上の説明により、処理の概要を一通り説明したが、S7で被写体領域同士で重なりがある場合のS8の処理例の概要について説明していないので、以降、簡単に触れておく。
【0255】
図20(a)は、図8(a)とは別の第2被写体画像の例である。図8(a)と比べると、第2の被写体が同一の背景に対して少し左に位置している。なお、背景画像、第1被写体画像は、図6(a)、図7(a)と同じものを使うとする。
【0256】
図20(b)は、第2被写体領域を示している。図中の領域130が第2被写体領域である。なお、第2被写体領域としての領域130は、前述と同じく、図7(a)の第1被写体画像と図20(a)の第2被写体画像との間で背景補正量を求め、第1被写体画像を基準画像として、第2被写体画像を補正し、その補正した画像と、図6(c)の補正された背景画像との間で生成した差分画像から抽出されている。
【0257】
図12は、S7で図9(d)の領域112と図20(b)の領域130とを用いて検出された、各被写体の重なり領域を示している。図12中の黒く塗りつぶされている領域131が重なっている領域であり、分かりやすいように第1被写体領域112と第2被写体領域130を点線で示してある。
【0258】
図13(a)は、S8で重なりがある場合にS9で生成される重ね画像の一例を示している。この場合、第1被写体画像に第2の被写体を重ねて上書きした結果、第1の被写体と第2の被写体とが重なる重なり領域131に相当する部分を目立つように表示している。すなわち、重なり領域131の元の画素値を変更し、例えば黒く塗りつぶす画素値としている。
【0259】
このように重なり領域131を目立たせた重ね画像を表示することで、第1の被写体と第2の被写体とが重なっていることが、ユーザーや被写体に分かりやすくなるという撮影補助の効果が出てくる。
【0260】
以上の説明により、S7で被写体領域同士で重なりがある場合のS8の処理例の概要について説明した。
【0261】
なお、これを典型的な利用シーン例で考えると、まず図6(a)のような背景画像をカメラ(画像合成装置)で撮影し、記録する。次に同じ背景で図7(a)のような第1の被写体を撮影し、記録する。最後に同じ背景で図8(a)のような第2の被写体を撮影する。
【0262】
なお、第1の被写体と第2の被写体の撮影は、第1の被写体と第2の被写体が交互に行うことで、第3者がいなくても二人だけでも撮影が可能である。背景画像の撮影は第1の被写体でも第2の被写体でもどちらが行っても良いが、次の撮影を考えると第2の被写体が撮影した方がスムーズに処理できる。同じ背景で撮影する為にはカメラは動かさない方が良いが、背景にあわせて補正するので、三脚などで固定までしなくても、手で大体同じ位置で同じ方向を向いて撮影すれば良い。なお、被写体の位置関係は図7(a)、図8(a)のような左右でなく、任意の位置関係でよい。
【0263】
そして、3つの画像を撮影した後、S4からS10の処理を行い、図11(a)や図13(a)のような表示(や後で説明する警告/通知など)を行う。
【0264】
もし、被写体が重なっているなどの表示や通知がある場合、再度、S1からS10の処理を繰り返してもよい。すなわち背景画像、第1被写体画像、第2被写体画像を撮影し、重ね画像を生成、表示などする。表示される処理結果に満足がいくまで何度でも繰り返せば良い。
【0265】
しかし、第2の被写体が位置を移動する場合などは、背景画像と第1の被写体画像は必ずしも撮りなおさなくてもよく、第2の被写体だけ取り直せば済むこともある。その場合は、S3からS10を繰り返せばよい。
【0266】
この場合、S3の第2被写体画像取得からS10の表示までを自動的に繰り返せば、すなわち第2被写体画像取得をシャッターボタンを押さずに動画を撮影するように連続的に取得し、処理、表示も含めて繰り返すようにすれば、カメラや第2の被写体の移動などに追従してリアルタイムに処理結果が確認できることになる。従って、第2の被写体の移動位置が適切かどうか(重なっていないかどうか)をリアルタイムに知ることができ、重なりが無い合成結果を得る為の第2の被写体の撮影が容易になるという利点が出てくる。
【0267】
なお、この繰り返し処理を開始するには、メニューなどから処理開始を選択するなどして、専用モードに入る必要がある。適切な移動位置になったらシャッターボタンを押すことで、第2被写体画像を決定して(記録し)、この繰り返し処理/専用モードを終了させればよい(終了といっても、最後の合成結果を得るS10までは処理を続けてもよい)。
【0268】
また、背景画像は良いが第1被写体画像が良く無い場合、例えば、背景の真中に第1の被写体が位置し、第2の被写体をどう配置しても第1の被写体に重なってしまうか、重ならないようにすると第2の被写体が重ね画像からフレームアウトしてしまうような場合、S2の第1被写体画像の取得からやり直しても良い。
【0269】
なお、ここでは第1被写体画像を基準画像として合成しているので、第1被写体画像を撮影し直すが、背景画像を基準画像にして、そこに第1被写体領域と第2被写体領域の画像を合成する場合は、第1被写体画像はそのままで背景画像を撮影し直すという方法もある。
【0270】
例えば、基準とする背景画像上に第1被写体を背景が合うように配置するとどうしても背景画像の真中に位置してしまう場合、第2の被写体をその周囲に重なりなく配置するスペースが無い場合がある。その場合、第1の被写体が真中でなく、端に寄った場所に配置されるように背景画像を撮影し直すことで、第2の被写体を配置する領域を空けることができるようになる効果が出てくる。
【0271】
以降では、上で説明した処理の詳細を説明する。
【0272】
図14は、図5のS3の処理、すなわち第2被写体画像を取得する処理の一方法を説明するフローチャート図である。
【0273】
P20を経たS3−1では、第2被写体画像取得手段3が、第2被写体画像を取得し、S3−2へ処理が進む。ここでの処理は、図5のS1の背景画像の取得と取得方法自体は同様である。
【0274】
S3−2では、同手段3が、自動シャッター手段15から画像を記録するように指示があるかどうかを判断し、指示があればS3−3へ進み、指示がなければP30へ処理が抜ける。
【0275】
S3−3では、同手段3が、S3−1で取得した第2被写体画像を主記憶74、外部記憶75などに記録して、P30へ処理が抜ける。
【0276】
以上のS3−1からS3−3の処理で、図5のS3の処理が行われる。
【0277】
なお、自動シャッター手段15以外であっても、撮影者によって手動でシャッターボタンが押されたり、セルフタイマーでシャッターが切られた場合などにも撮影画像を記録してもよいが、それはS1、S2、S3−1の処理に含まれるとする。
【0278】
図15は、図5のS4の処理、すなわち背景補正量を算出する処理の一方法を説明するフローチャート図である。
【0279】
背景補正量を算出する方法は色々考えられるが、ここではブロックマッチングを使った簡易的な手法について説明する。
【0280】
P30を経たS4−1では、背景補正量算出手段4が、背景画像をブロック領域に分割する。図6(b)は図6(a)の背景画像をブロック領域に分割した状態を説明する説明図である。点線で区切られた矩形が各ブロック領域である。左上のブロックを「B(1,1)」とし、その右が「B(1,2)」、下が「B(2,1)」というように表現することにする。図6(b)ではスペースの都合上、例えばB(1,1)のブロックではブロックの左上に「11」と記している。
【0281】
S4−2では、同手段4が、背景画像のブロックが、第1被写体画像、第2被写体画像上でマッチングする位置を求めて、S4−3へ処理が進む。「(ブロック)マッチング」とは、この場合、背景画像の各ブロックと最もブロック内の画像が似ているブロック領域を第1被写体画像、第2被写体画像上で探す処理である。
【0282】
説明の為、ブロックを定義する画像(ここでは背景画像)を「参照画像」と呼び、似ているブロックを探す相手の画像(ここでは第1被写体画像と第2被写体画像)を「探索画像」と呼び、参照画像上のブロックを「参照ブロック」、探索画像上のブロックを「探索ブロック」と呼ぶことにする。参照画像上の任意の点(x、y)の画素値をPr(x、y)、探索画像上の任意の点(x、y)の画素値をPs(x、y)とする。
【0283】
なお、参照画像は、背景画像に限らず、基準画像や、基準画像とは無関係に第1被写体画像、第2被写体画像のどちらかに決めても良いのだが、背景部分の補正量を求める為にブロックマッチングを行うので、最も背景部分が多い背景画像を参照画像に選んだ方が、探索画像中の背景画像部分とマッチングする確率が高くなる利点がある。
【0284】
例えば、第1被写体画像を参照画像とし、第2被写体画像を探索画像とする時、第2被写体画像上での背景部分(例えば図8(b)のB(4,2))が第1被写体画像上での被写体部分に相当する場合、対応するブロックを正しく求めることはできなくなってしまう。背景画像を参照画像とすれば、図8(b)のB(4,2)に対応するブロックは、背景画像では図6(b)のB(4,2)として存在する。
【0285】
今、参照ブロックが正方形で1辺の大きさがm画素だとする。すると参照ブロックB(i,j)の左上の画素の位置は、
(m×(i−1),m×(j−1))
となり、参照ブロックB(i,j)の左上から画素数にして(dx、dy)離れた画素値は、
Pr(m×(i−1)+dx、m×(j−1)+dy)
となる。
【0286】
探索ブロックの左上位置を(xs、ys)とした時、参照ブロックB(i,j)と探索ブロックの類似度S(xs、ys)は次の2式で求められる。
【0287】
D(xs、ys;dx、dy)=|Ps(xs+dx、ys+dy)−Pr(m×(i−1)+dx、m×(j−1)+dy|
m−1 m−1
S(xs、ys)=Σ Σ D(xs、ys;dx、dy)
dx=0 dy=0
D(xs、ys;dx、dy)は、参照ブロックと探索ブロックの左上から(dx、dy)離れたそれぞれの画素値の間の差の絶対値である。そして、S(xs、ys)は、その差の絶対値をブロック内の全画素について足したものである。
【0288】
もし、参照ブロックと探索ブロックが全く同じ画像である(対応する画素値が全て等しい)場合、S(xs、ys)は0となる。似ていない部分が増えると、すなわち画素値の差が大きくなると、S(xs、ys)は大きな値となっていく。従って、S(xs、ys)が小さいほど似たブロックということになる。
【0289】
S(xs、ys)は、探索ブロックの左上位置を(xs、ys)とした時の類似度なので、(xs、ys)を探索画像上で変えれば、それぞれの場所での類似度が得られる。全ての類似度の中で最小となる類似度の位置(xs、ys)をマッチングした位置とすればよい。マッチングした位置の探索ブロックを「マッチングブロック」と呼ぶ。
【0290】
図16は、このマッチングの様子を説明した図だが、図16(a)の画像を参照画像、図16(b)の画像を探索画像とし、画像の中身としてはカギ括弧型の線がそれぞれ少し位置がずれて存在しているとする。参照画像中の参照ブロック100は、カギ括弧型の線のちょうど角の部分に位置しているとする。探索画像中の探索ブロックとして、探索ブロック101、102、103があったとする。参照ブロック100と探索ブロック101、参照ブロック100と探索ブロック102、参照ブロック100と探索ブロック103でそれぞれ類似度を計算すると、探索ブロック101が最も小さな値となるので、探索ブロック101を参照ブロック100に対するマッチングブロックとすればよい。
【0291】
以上は一つの参照ブロックB(i,j)のマッチングについて説明したが、それぞれの参照ブロックについて、マッチングブロックを求めることができる。図6(b)の42個の参照ブロックそれぞれに対して、第1被写体画像、第2被写体画像のそれぞれで、マッチングブロックを探すとする。
【0292】
なお、マッチングブロックの類似度の求め方については、ここでは各画素値の差分の絶対値を使ったが、それ以外にも様々な方法があり、いずれの手法を使っても良い。
【0293】
例えば、相関係数を使う方法や周波数成分を使う方法などもあるし、各種高速化手法などもある。また、参照ブロックの位置や大きさなどの設定の仕方も色々考えられるが、ブロックマッチングの細かな改良方法は本発明の主旨ではないのでここでは省略する。
【0294】
なお、参照ブロックの大きさについては、あまり小さくしすぎるとブロック内にうまく特徴が捉えきれずマッチング結果の精度が悪くなるが、逆に大きくしすぎると被写体や画像のフレーム枠を含んでしまいマッチング結果の精度が悪くなったり、回転、拡大縮小などの変化に弱くなってしまうので、適当な大きさにすることが望ましい。
【0295】
次に、S4−3で、同手段4が、S4−2で求めたマッチングブロックの中から背景部分に相当する探索ブロックだけを抜き出して、S4−4へ処理が進む。
【0296】
S4−3で求めたマッチングブロックは、最も差分が少ない探索ブロックを選んだだけなので、同じ画像であることが保証されてはおらず、たまたま何かの模様などが似ているだけの場合もある。また、そもそも第1や第2の被写体の為、参照ブロックに相当する画像部分が存在しない場合もあるので、その場合はいいかげんな場所にマッチングブロックが設定されていることになる。
【0297】
そこで各マッチングブロックから、参照ブロックと同じ画像部分ではないと判断されるものを取り除くことが必要となる。残ったマッチングブロックは参照ブロックと同じ画像部分であると判断されたものなので、結果的に第1や第2の被写体を除いた背景部分だけが残ることになる。
【0298】
マッチングブロックの選別手法は色々考えられるが、ここでは最も単純な方法として、類似度S(xs、ys)を所定の閾値で判断することにする。すなわち、各マッチングブロックのS(xs、ys)が閾値を超えていたら、そのマッチングは不正確であるとして取り除くという手法である。S(xs、ys)は、ブロックの大きさに影響されるので、閾値はブロックの大きさを考慮して決めるのが望ましい。
【0299】
図7(b)は、図7(a)の第1被写体画像のS4−2のマッチング結果から、不正確なマッチングブロックを取り除いた結果である。正しいと判断されたマッチングブロックには、対応する参照ブロックと同じ番号が振ってある。同様に、図8(b)は図8(a)の第2被写体画像のS4−2のマッチング結果から、不正確なマッチングブロックを取り除いた結果である。これにより、被写体部分が含まれない、あるいはほとんど含まれない背景部分のマッチングブロックだけが残っているのが分かる。
【0300】
S4−4では、同手段4が、S4−3で得た背景部分のマッチングブロックから、第1被写体画像および第2被写体画像の背景補正量を求めて、P40へ処理が抜ける。
【0301】
背景補正量として、例えば回転量θ、拡大縮小量R、および/または平行移動量(Lx、Ly)を求めるのだが、計算方法は色々考えられる。ここでは2つのブロックを使った最も簡単な方法について説明する。
【0302】
なお、回転量、拡大縮小量、平行移動量以外の歪補正量は、よほど撮影時にカメラを動かすなどしない限り、使わなくても背景部分がほぼ重なり、差分画像でノイズが充分少ない補正ができる場合が多い。回転量、拡大縮小量、平行移動量以外の歪補正量を得るには、最低でも3点あるいは4点以上ブロックを使うことが必要であり、透視変換を考慮した計算が必要となるが、パノラマ画像の合成などでも使われている公知の手法(例えば、「共立出版:bit1994年11月号別冊『コンピュータ・サイエンス』」のP90など)なので、この処理の詳細についてはここでは省略する。
【0303】
まず、できるだけ互いの距離が離れているマッチングブロックを2つ選ぶ。なお、S4−3で残ったマッチングブロックが1つしか無いときは、以降の拡大縮小率、回転量を求める処理は省いて、対応する参照ブロックの位置との差分を平行移動量として求めればよい。S4−3で残ったマッチングブロックが1つも無かったら、背景画像、第1/第2被写体画像などを撮影し直した方が良いと思われるので、その旨の警告を出すなどするとよい。
【0304】
選び方は色々考えられるが、例えば、
1)マッチングブロック中の任意の2つを選び、その二つのブロックの中心位置間の距離を計算する、
2)1)の計算を全てのマッチングブロックの組み合わせで行う、
3)2)の中で最も距離が大きい組み合わせを背景補正量の算出に使う2つのブロックとして選ぶ、
という方法が考えられる。
【0305】
ここで、上記3)として挙げたように、互いの距離が最も離れているマッチングブロックを使う利点としては、拡大縮小率や回転量などを求める際の精度が良くなることがあげられる。マッチングブロックの位置は画素単位となるので、精度も画素単位となってしまう。例えば、横に50画素離れた位置で上に1画素分ずれた時の角度は、横に5画素離れた位置で上に0.1画素分ずれた時の角度と同じになる。しかし、0.1画素のずれはマッチングでは検出できない。従って、できるだけ離れたマッチングブロックを使った方が良い。
【0306】
2つのブロックを使っているのは、単に計算が簡単だからである。もっと多くのブロックを使って平均的な拡大縮小率や回転量などを求めるようにすると、誤差が減少する利点が出てくる。
【0307】
例えば図8(b)の例では、互いの距離が最も離れている2つのマッチングブロックは、ブロック15、61の組み合わせとなる。
【0308】
次に、選んだ2つのマッチングブロックの中心位置を、探索画像上の座標で表した(x1’、y1’)、(x2’、y2’)、それに対応する参照ブロックの中心位置を参照画像上の座標で表した(x1、y1)、(x2、y2)とする。
【0309】
まず、拡大縮小率について求める。
【0310】
マッチングブロックの中心間の距離Lmは、
Lm=((x2’― x1’)×(x2’― x1’)+(y2’―
y1’)×(y2’― y1’))1/2
参照ブロックの中心間の距離Lrは、
Lr=((x2― x1)×(x2― x1)+(y2― y1)×(y2―
y1))1/2
となり、拡大縮小率Rは、
R=Lr/Lm
で求められる。
【0311】
次に回転量について求める。
【0312】
マッチングブロックの中心を通る直線の傾きθmは、
θm=arctan((y2’― y1’)/(x2’― x1’))
(但し、x2’= x1’の時はθm=π/2)、
参照ブロックの中心を通る直線の傾きθrは、
θr=arctan((y2― y1)/(x2― x1))
(但し、x2= x1の時はθr=π/2)、
で求められる。なお、arctanは、tanの逆関数とする。
【0313】
これより、回転量θは、
θ=θr―θm
で求められる。
【0314】
最後に平行移動量であるが、これは対応するブロック同士の中心位置が等しくなればよいので、例えば、(x1’、y1’)と(x1、y1)が等しくなるようにすると、平行移動量(Lx、Ly)は、
(Lx、Ly)=(x1’― x1、y1’― y1)
となる。回転量と拡大縮小量は、どこを中心にしても良いので、ここでは平行移動で一致する点、すなわち対応するブロックの中心を回転中心、拡大縮小中心とすることにする。
【0315】
従って、探索画像中の任意の点(x’,y’)を補正された点(x”,y”)に変換する変換式は、
x”=R×(cosθ×(x’−x1’)−sinθ×(y’−y1’))
+x1
y”=R×(sinθ×(x’−x1’)+cosθ×(y’−y1’))
+y1
となる。回転量、拡大縮小量、平行移動量と述べたが、正確にはここでは、θ、R,(x1 、y1 )、(x1’、y1’)のパラメータを求めることになる。なお、補正量/変換式の表し方は、これに限定される訳ではなく、その他の表し方でもよい。
【0316】
この変換式は、探索画像上の点(x’,y’)を補正画像上の点(x”,y”)に変換するものだが、補正画像上の点(x”,y”)は、参照画像に(背景部分が)重なるようになるのだから、意味的には、探索画像から参照画像への(背景部分が重なるような)変換とみなせる。従って、この変換式を探索画像上の点(Xs,Ys)を参照画像上の点(Xr,Yr)への変換関数Fsr、
(Xr,Yr)=Fsr(Xs,Ys)
と表現することにする。
【0317】
なお、先の式は逆に補正された点(x”,y”)から探索画像中の任意の点(x’,y’)への変換式、
x’=(1/R)×(cosθ×(x”−x1)+sinθ×(y”−y1
))+x1’
y’=(1/R)×(sinθ×(x”−x1)−sinθ×(y”−y1
))+y1’
にも変形できる。これも変換関数Frsで表せば、
(Xs,Ys)=Frs(Xr,Yr)
となる。変換関数Frsは変換関数Fsrの逆変換関数とも言う。
【0318】
図6(a)、図7(a)、図8(a)の例では回転や拡大縮小はなく、単なる平行移動だけであるが、詳細は後で図6(c)、図8(c)で説明する。
【0319】
以上のS4−1からS4−4の処理で、図5のS4の背景補正量算出の処理が行われる。
【0320】
図17は、図5のS5の処理、すなわち背景画像および第2被写体画像の補正画像を生成し、第1被写体画像との差分画像を生成する処理の一方法を説明するフローチャート図である。
【0321】
S4で算出した補正量の説明では、背景画像と第1被写体画像、背景画像と第2被写体画像との間の補正量を算出した。
【0322】
変換式の形で書けば、背景画像上の点を(Xb,Yb)、第1被写体画像上の点を(X1,Y1)、第2被写体画像上の点を(X2,Y2)として、
(X1,Y1)=Fb1(Xb,Yb)
(Xb,Yb)=F1b(X1,Y1)
(X2,Y2)=Fb2(Xb,Yb)
(Xb,Yb)=F2b(X2,Y2)
が求まったことになる。但し、Fb1は、(Xb,Yb)から(X1,Y1)への変換関数、F1bはその逆変換関数、Fb2は、(Xb,Yb)から(X2,Y2)への変換関数、F2bはその逆変換関数である。
【0323】
3つの画像のうち2つの画像間の変換関数(補正量)を求めたので、3つの画像のうちのいずれの2画像も相互に変換可能ということになる。従って、補正を行う際、どの画像に合わせて補正を行うかが問題となる。ここでは後の処理の効率も考えて、第1被写体画像、すなわち第1/第2被写体画像の内、先に撮影した被写体画像を基準画像とし、それ以外の背景画像、第2被写体画像を第1被写体画像に背景部分が重なるように補正することにする。
【0324】
例えば、被写体同士に重なりがあるなどの理由で撮影し直す場合を考える。第1/第2被写体画像をこの順に撮影したとし、第1被写体画像を基準画像にしたとすると、被写体同士に重なりがある場合には、第2被写体画像を撮影し直すことになる。このとき、第1被写体画像と、第1被写体画像を基準画像として補正した背景画像とは、撮影し直す必要が無く、そのまま合成画像の作成に使うことができる。
【0325】
これに対し、後から撮影した第2被写体画像を基準画像とすると、被写体同士に重なりがある場合に、第2被写体画像を撮影し直すことになれば、当然、第2被写体画像を基準に補正した第1被写体画像および背景画像の補正処理が無駄となり、それぞれを再補正しなければならない。
【0326】
このように、第1被写体画像と第2被写体画像のうち、先に撮影した方を基準画像とすることで、撮影し直しを繰り返す場合に、処理量・処理時間を減らすことができるという効果が出てくる。
【0327】
第2被写体画像から第1被写体画像への変換関数F21は、上の変換式を組み合わせて、
(X1,Y1)=F21(X2,Y2)
=Fb1(F2b(X2,Y2))
となる。逆変換関数F12も同様の考え方で求められる。
【0328】
P40を経たS5−1では、補正画像生成手段5が、背景補正量算出手段4(S4)で得られる補正量を使って、背景画像を第1被写体画像に背景部分が重なるように補正した画像を生成し、S5−2へ処理が進む。なお、ここで生成される補正された背景画像を「補正背景画像」(図6(c)参照)と呼ぶことにする。
【0329】
補正には、変換関数Fb1あるいは逆変換関数F1bを使えばよい。一般に、きれいな変換画像を生成する為には、変換画像(ここでは補正背景画像)の画素位置に対応する元画像(ここでは背景画像)の画素位置を求め、その画素位置から変換画像の画素値を求める。この時、使用する変換関数はF1bになる。
【0330】
また、一般に求めた元画像の画素位置は整数値とはならないので、そのままでは求めた元画像の画素位置の画素値は求められない。そこで、通常は何らかの補間を行う。例えば最も一般的な手法として、求めた元画像の画素位置の周囲の整数値の画素位置の4画素から一次補間で求める手法がある。一次補間法に関しては、一般的な画像処理の本など(例えば、森北出版:安居院猛、中嶋正之共著「画像情報処理」のP54)に載っているので、ここでは詳しい説明を省略する。
【0331】
図6(c)は、図6(a)の背景画像と図7(a)の第1被写体画像とから、背景画像が第1被写体画像の背景部分に重なるように生成した補正背景画像の例である。この例での補正は平行移動だけである。補正の様子が分かるように、図6(a)の背景画像の範囲を点線で示してある。図6(a)の背景画像よりフレーム枠全体が少し左に移動している。
【0332】
補正の結果、対応する背景画像が存在しない部分が出てくる。例えば、図6(c)の左端の点線と実線の間の部分は、図6(a)の背景画像には存在しない部分なので、抜けている。これは、下の道路を示す水平線が左端までいかずに途切れているのでも分かる。その部分は、S5−2で説明するマスク画像を使って除外するので適当な画素値のままとしておいても問題はない。
【0333】
S5−2では、補正画像生成手段5が、補正背景画像のマスク画像を生成して、S5−3へ処理が進む。
【0334】
マスク画像は、補正画像を生成する際、補正画像上の各画素に対応するオリジナル画像上の画素位置が先に説明した式で求められるが、その画素位置がオリジナル画像の範囲に収まっているかどうかで判断して、収まっていればマスク部分として補正画像上の対応する画素の画素値を例えば0(黒)にし、収まっていなければ例えば255(白)にすればよい。マスク部分の画素値は0、255に限らず自由に決めてよいが、以降では、0(黒)、255(白)で説明する。
【0335】
図6(d)は、図6(c)のマスク画像の例である。実線のフレーム枠中の黒く塗りつぶされた範囲がマスク部分である。このマスク部分は、補正された画像中でオリジナルの画像(補正前の画像)が画素を持っている範囲を示している。従って、図6(d)では、対応する背景画像が存在しない左端部分がマスク部分とはなっておらず、白くなっている。
【0336】
S5−3では、差分画像生成手段6が、第1被写体画像と、補正画像生成手段5(S5−1)から得られる補正背景画像とそのマスク画像とを用いて、第1被写体画像と補正背景画像との差分画像を生成してS5−4へ処理が進む。なお、ここで生成される差分画像を「第1被写体差分画像」と呼ぶことにする。
【0337】
差分画像を生成するには、ある点(x、y)のマスク画像上の点の画素値が0かどうかを見る。0(黒)ならば補正背景画像上に補正された画素が存在するはずなので、差分画像上の点(x、y)の画素値Pd(x、y)は、
Pd(x、y)=|P1(x、y)−Pfb(x、y)|
より、第1被写体画像上の画素値P1(x、y)と補正背景画像上の画素値Pfb(x、y)の差の絶対値とする。
【0338】
ある点(x、y)のマスク画像上の点の画素値が0(黒)でないならば、
Pd(x、y)=0
とする。
【0339】
これらの処理を、点(x、y)を差分画像の左上から右下まですべての画素について繰り返せばよい。
【0340】
図9(a)は、図7(a)の第1被写体画像と図6(c)の補正背景画像、図6(d)のマスク画像から生成された第1被写体差分画像の例である。人物(1)の領域以外の所は背景が一致している、あるいはマスク範囲外として差分が0となり、主に人物(1)の領域内が、人物(1)の画像と背景の画像が交じり合ったような画像となっている。
【0341】
通常、S4での補正量の算出の誤差や、補正画像生成の補間処理などの誤差、背景部分の画像自体の撮影時間の差による微妙な変化などによって、人物(1)の領域以外にも小さな差分部分は出てくる。通常は数画素程度の大きさで、差もあまり大きくないことが多い。図9(a)でも人物(1)の領域の周辺に白い部分がいくつか出てきている。
【0342】
S5−4では、補正画像生成手段5が、背景補正量算出手段4(S4)で得られる補正量を使って、第2被写体画像を第1被写体画像に背景部分が重なるように補正した画像を生成し、S5−4へ処理が進む。補正には、変換関数F21あるいは逆変換関数F12を使えばよい。扱う画像や変換関数が異なる以外はS5−1の処理と同様である。なお、ここで生成される補正された第2被写体画像を「補正第2被写体画像」と呼ぶことにする。
【0343】
図8(c)は、図8(a)の第2被写体画像と図7(a)の第1被写体画像から生成した補正第2被写体画像の例である。この例での補正も平行移動だけである。補正の様子が分かるように、図8(a)の第2被写体画像の範囲を点線で示してある。図6(a)の背景画像よりフレーム枠全体が少し右下に移動している。
【0344】
なお、図18(a)は補正に回転が必要な場合の第2被写体画像の例である。背景画像、第1被写体画像は、図6(a)、図7(a)と同じとする。画面全体が図8(a)と比べて少し左回りに回転している。
【0345】
図18(b)は、図18(a)の第2被写体画像と図6(a)の背景画像でブロックマッチングを行った結果である。ブロックは回転などがあっても、回転量やブロックの大きさがそれほど大きくなければ、ブロック内での画像変化は少ないので、回転に追従して正確なマッチングがある程度可能である。
【0346】
図18(c)は、図18(b)のブロックマッチング結果をもとに背景補正量を算出し、補正した第2被写体画像である。図7(a)の第1被写体画像と背景部分が重なるようになり、回転が補正されているのが分かる。補正の様子がわかるように、図18(a)の画像枠を点線で示してある。
【0347】
S5−5では、補正画像生成手段5が、補正第2被写体画像のマスク画像を生成して、S5−6へ処理が進む。マスク画像の生成の仕方に関しては、S5−2と同様である。図8(d)は、図8(c)のマスク画像の例である。図18(b)の場合のマスク画像は図18(d)のようになる。
【0348】
なお、拡大縮小や回転の補正量がある場合でも、S5−4、S5−5で補正やマスク画像生成を行ってしまえば、後の処理は手順としては変わりないので、以降の説明では、第2被写体画像は図18(a)は使わず、図8(a)のものを使う。
【0349】
S5−6では、差分画像生成手段6が、補正画像生成手段5(S5−1)から得られる補正背景画像、補正画像生成手段5(S5−2)から得られる補正背景画像のマスク画像、補正画像生成手段5(S5−4)から得られる補正第2被写体画像、補正画像生成手段5(S5−5)から得られる補正第2被写体画像のマスク画像を用いて、補正第2被写体画像と補正背景画像との差分画像を生成してP50へ処理が抜ける。なお、ここで生成される差分画像を「第2被写体差分画像」(図10(a)参照)と呼ぶことにする。
【0350】
差分画像の生成の仕方に関しては、基本的にはS5−3と同様であるが、補正背景画像のマスク画像と補正第2被写体画像のマスク画像のある点(x、y)の画素値がどちらも0(黒)の時だけ画像の差分を取る点で、マスク画像の処理が少し異なる。
【0351】
図10(a)は、図6(c)の補正背景画像と図8(c)の補正第2被写体画像から生成された第2被写体差分画像の例である。第1被写体が第2被写体に変わっている以外は、図9(a)と同様の状態になっている。
【0352】
以上のS5−1からS5−6の処理で、図5のS5の差分画像生成の処理が行える。
【0353】
図19は、図5のS6の処理、すなわち被写体領域を抽出する処理の一方法を説明するフローチャート図である。
【0354】
P50を経たS6−1では、被写体領域抽出手段7が、差分画像生成手段6(S6)から得られる差分画像から、「ラベリング画像」(「ラベリング画像」の意味については後で説明する)を生成して、S6−2へ処理が進む。差分画像は、第1被写体差分画像と第2被写体差分画像の二つあるので、ラベリング画像もそれぞれ作成される。どちらもラベリング画像を生成する処理手順は一緒なので、以降では「差分画像」という言葉に「第1被写体差分画像」、「第2被写体差分画像」が含まれるとして説明する。
【0355】
まず準備として、差分画像から2値画像を生成する。2値画像の生成方法も色々考えられるが、例えば、差分画像中の各画素値を所定の閾値と比較して、閾値より大きければ黒、以下ならば白、などとしてやればよい。差分画像がR,G,Bの画素値からなる場合は、R,G,Bの画素値を足した値と閾値を比較すればよい。
【0356】
図9(b)は、図9(a)の第1被写体差分画像から生成した2値画像の例である。黒い領域が領域110から115の6つ存在し、大きな人型の領域112以外は小さな領域である。同様に、図10(b)は、図10(a)の第2被写体差分画像から生成した2値画像の例である。黒い領域が領域120から125の6つ存在し、大きな人型の領域122以外は小さな領域である。
【0357】
次に、生成した2値画像からラベリング画像を生成するが、一般に「ラベリング画像」とは、2値画像中の白画素同士あるいは黒画素同士が連結している塊を見つけ、その塊に番号(「ラベリング値」と以降、呼ぶ)を振っていく処理により生成される画像である。多くの場合、出力されるラベリング画像は多値のモノクロ画像であり、各塊の領域の画素値は全て振られたラベリング値になっている。
【0358】
なお、同じラベリング値を持つ画素の領域を「ラベル領域」と以降呼ぶことにする。連結している塊を見つけ、その塊にラベリング値を振っていく処理手順の詳細については、一般的な画像処理の本など(例えば、昭晃堂:昭和62年発行「画像処理ハンドブック」P318)に載っているので、ここでは省略し、処理結果例を示す。
【0359】
2値画像とラベリング画像とは、2値か多値の違いなので、ラベリング画像例は図9(b)と図10(b)で説明する。図9(b)の領域110から115の番号の後に「110(1)」などと括弧書きで番号がついているが、これが各領域のラベリング値である。図10(b)についても同様である。これ以外の領域はラベリング値0が振られているとする。
【0360】
なお、ラベリング画像図9(b)、図10(b)は、紙面上で多値画像を図示するのが難しいので2値画像のように示してあるが、実際はラベリング値による多値画像になっているので、表示する必要はないが実際に画像として表示した場合は図9(b)と図10(b)とは異なる見え方をする。
【0361】
S6−2では、被写体領域抽出手段7が、S6−1で得られるラベリング画像中の「ノイズ」的な領域を除去して、S6−3へ処理が進む。「ノイズ」とは目的のデータ以外の部分を一般に指し、ここでは人型の領域以外の領域を指す。
【0362】
ノイズ除去にも様々な方法があるが、簡単な方法として、例えばある閾値以下の面積のラベル領域は除くという方法がある。これには、まず各ラベル領域の面積を求める。面積を求めるには、全画素を走査し、ある特定のラベリング値を持つ画素がいくつ存在するか数えればよい。全ラベリング値について面積(画素数)を求めたら、それらの内、所定の閾値以下の面積(画素数)のラベル領域は除去する。除去処理は、具体的には、そのラベル領域をラベリング値0にしてしまうか、新たなラベリング画像を作成し、そこにノイズ以外のラベル領域をコピーする、でもよい。
【0363】
図9(c)は、図9(b)のラベリング画像からノイズ除去した結果である。人型の領域112以外はノイズとして除去されてしまっている。同様に、図10(c)は、図10(b)のラベリング画像からノイズ除去した結果である。人型の領域122以外はノイズとして除去されてしまっている。
【0364】
S6−3では、被写体領域抽出手段7が、S6−2で得られるノイズ除去されたラベリング画像から被写体の領域を抽出して、P60へ処理が抜ける。
【0365】
被写体の領域を画像処理だけで完全に正確に抽出することは一般に難しく、人間の知識や人工知能的な高度な処理が一般に必要とされる。領域を抽出する手法の1つである「スネーク」などもあるが、完璧ではない。しかし、重なり検出処理や合成処理に使える程度の領域を推定することはある程度できる。
【0366】
例えば、第1や第2の被写体の人数がプログラム中などに固定値または変数として設定されているならば、ノイズ除去されたラベリング画像中からラベル領域を面積が大きい順に人数分、抽出すれば良い。あるいは所定の閾値以上の面積をもつ領域を全て被写体領域などとしてもよい。
【0367】
また、完全自動化が難しいなら、どの領域が被写体領域であるかを、タブレットやマウスなどの入力手段を使ってユーザーに指定してもらう方法も考えられる。指定方法も、被写体領域の輪郭まで指定してもらう方法と、輪郭はラベリング画像の各ラベル領域の輪郭を使い、どのラベル領域が被写体領域であるかどうかを指定してもらう方法などが考えられる。
【0368】
ここでは、所定の閾値以上の面積をもつ領域を全て被写体領域とすることにするが、図9(c)や図10(c)では、既にノイズ除去の段階で大きな領域が一つになってしまっているので、処理結果図9(d)、図10(d)は、図9(c)、図10(c)と見た目は同じである。
【0369】
また、図9(b)や図10(b)ではたまたま人型の領域がうまく一つのラベル領域となっているが、画像によっては、一人の被写体であっても複数のラベル領域に分かれてしまうことがある。例えば、被写体領域中の真中辺りの画素が、背景と似たような色や明るさの画素の場合、差分画像中のその部分の画素値が小さいので、被写体領域の真中辺りが背景と認識されてしまい、被写体領域が上下や左右に分断されて抽出されてしまうことがある。その場合、後の被写体の重なり検出や合成処理などでうまく処理できない場合が出てくる可能性がある。
【0370】
そこで、ラベリング画像のラベル領域を膨張させて、距離的に近いラベル領域を同じラベル領域として統合してしまう処理を入れるという方法もある。さらに統合にスネークを利用する方法も考えられる。膨張やスネークの処理手順の詳細については、一般的な画像処理の本など(例えば、昭晃堂:昭和62年発行「画像処理ハンドブック」P320、またはKass A., et al.,”Snakes: Active Contour Models”,Int. J. Comput. Vision, pp.321−331(1988))に載っているので、ここでは省略する。
【0371】
また、距離的に近いラベル領域の統合に使わなくても、重なりがあることを見逃す危険性を減らすことに使う為に、抽出した被写体領域を一定量膨張させるという方法もある。
【0372】
なお、ここでは、膨張や統合は特に行わない処理例で説明している。
【0373】
以上のS6−1からS6−3の処理で、図5のS6の被写体領域抽出処理が行える。
【0374】
次に、図5のS7の処理の詳細の一例について説明する。
【0375】
S7では、重なり検出手段8が、被写体領域抽出手段7(S6)から得られる第1被写体領域、第2被写体領域について、両者の領域に重なりがあるかどうか検出し、重なりがある場合は重なる領域を抽出する。
【0376】
しかし、実際のところ、重なりがあるかどうかを検出するには、重なる領域を抽出し、重なる領域が存在するかどうかを検出するのが簡単なので、まずは重なる領域を抽出する。
【0377】
その手法として、ある画素の位置(x、y)が、第1被写体領域と第2被写体領域の両方に属しているかどうかを判断し、両方に属していればその画素値を例えば0(黒)、両方に属していなければ255(白)などとし、位置(x、y)を全画素位置について走査すれば、結果的に重なり画像が生成できる。
【0378】
ある画素の位置(x、y)が、第1被写体領域と第2被写体領域の両方に属しているかどうかを判断するには、S6から得られる第1被写体領域を含む画像と第2被写体領域を含む画像中の(x、y)位置の画素を見て、両方とも被写体領域の画素であるかどうか(例えば、先の例ではラベリング値0でなければ被写体領域の画素)で判断できる。
【0379】
生成される重なり画像中に0(黒)の画素値を持つ画素が存在するかどうかを見て、存在すれば重なりが存在し、無ければ重なりが存在しないことになる。
【0380】
なお、重なり検出手段8は、重なりに関する情報ということで、重なりがあるかないかだけでなく、重なっている領域についても出力する。つまり、生成した重なり画像も出力することになる。
【0381】
図9(c)、図10(c)の例では、重なりが無いので特に重なり画像は示していないが、この場合、重なり検出手段8は、重なりが無いと判断する。
【0382】
重なりがある例を、図20(a)の第2被写体画像で説明する。なお、背景画像、第1被写体画像は、図6(a)、図7(a)を使うとする。
【0383】
図20(b)は、図20(a)から生成した第2被写体領域画像である。第2被写体領域130は、図10(d)の領域122と比べると、少し左に寄っている。図20(b)と図9(d)の第1被写体領域画像から作られる重なり画像が、図12である。重なっている領域131は黒く塗りつぶされている。重なり具合が分かりやすいように、図12では第1被写体領域112と第2被写体領域130を点線で示している(実際の重なり画像中にはこの点線は存在しない)。図12の場合は、重なり検出手段8は、重なりがあると判断する。
【0384】
次に、図21は、図5のS8の処理、すなわち重なりに関する処理の一方法を説明するフローチャート図である。重なりに関する別の処理方法に関しては、後で図22、23、24、27を使って説明する。
【0385】
P70を経たS8−1では、重なり警告手段13が、重なり検出手段8(S7)から得られる情報に基づいて重なりがあるかどうかを判断し、重なりがある場合はS8A−2へ進み、無い場合はP80へ処理が抜ける。
【0386】
S8A−2では、重なり警告手段13が、第1の被写体と第2の被写体とに重なりがあることをユーザー(撮影者)あるいは被写体あるいはその両方に警告して、P80へ処理が抜ける。
【0387】
警告の通知の仕方としては色々考えられる。
【0388】
例えば、合成画像を利用して通知する場合、重なり領域を目立つように合成画像に重ねて表示すればよい。図13(a)、図13(b)はこれを説明する例である。二つの画像の違いは第1被写体(人物(1))の画像合成方法の違いだけである。
【0389】
図13(a)、図13(b)では、図12の重なり領域131が、合成画像上に重ねて表示されている。領域131の部分の画素値を変更して赤などの目立つ色で塗りつぶすとさらに良い。あるいは、領域131の領域やその輪郭等を点滅させて表示させても良い。
【0390】
図13(c)は、さらに文字で警告を行っている例である。図13(c)の上の方に合成画像に重ねて警告ウィンドウを出し、その中で「被写体が重なっています!」というメッセージを表示している。これも目立つような配色にしたり、点滅させたりしてもよい。
【0391】
これら合成画像に対する上書きは、重なり警告手段13の指示により、重ね画像生成手段9に対して行っても良いし、重ね画像表示手段10に対して行ってもよい。警告ウィンドウを点滅などさせる場合は元の合成画像を残しておく必要があるかもしれないので、重ね画像表示手段10に対して、例えば主記憶74または外部記憶75から警告ウィンドウのデータを間歇的に読み出して与える等して行った方がよい場合が多い。
【0392】
これらの警告表示を図3(a)のモニター141上に表示すれば、撮影しながら重なり状態を確認することができて、撮影に便利である。この時、撮影者は被写体(人物(2))に対して、「重なっているからもっと右の方に動いてくれ」などと、次に撮影した画像を第2被写体画像などとして使う場合に、重なり状態を解消するような指示を行うことができるという利点がある。
【0393】
なお、次に撮影した画像を第2被写体画像などとして使う場合とは、ユーザーがメニューやシャッターボタン143で第2被写体画像の記録(メモリ書き込み)を指示する場合か、先に説明したように、第2被写体画像を動画的に撮影し補正重ね画像をほぼリアルタイムに表示する繰り返し処理の専用モードになっている場合などが考えられる。
【0394】
また、図3(a)のモニター141は撮影者の方を向いているが、被写体の方にモニターを向けることができる装置ならば、重なり具合を被写体も確認することができ、撮影者に指示されなくても、被写体が自発的に重なりを解消するように動くこともできるようになる。モニター141とは別のモニターを用意して、それを被写体が見られるようにするのでもよい。
【0395】
また、先に専用モードとして説明したように図5のS3からS10の処理を繰り返すのならば、現在の重なり状態がほぼリアルタイムで分かるので、被写体の移動によって重なりが解消できたかどうかがほぼリアルタイムで分かり、撮影が便利で効率よくできる。図5のS3からS10の処理は、充分速いCPUやロジック回路などを使えば、それほど時間は必要ない。実使用上は、1秒に1回程度以上の速さの繰り返し処理を実現できれば、ほぼリアルタイムの表示と言って良い。
【0396】
なお、繰り返し処理の場合、第2被写体画像を更新しつづけるが、S5で差分画像を生成する際、基準画像を第1被写体画像にしたのは、繰り返し処理時に処理量を減らすことができる利点があるからである。つまり、第2被写体画像を基準画像にすると、背景補正量の計算や差分画像生成、被写体領域検出などの処理を第1被写体画像、背景画像も含めて全て行わなければいけないが、第1被写体画像を基準画像にすると、第1被写体画像と背景画像間での間の処理は1回で済み、第2被写体画像に関連する処理だけを繰り返し行えばよいことになる。
【0397】
また、重なり領域を合成画像に重ねて表示した結果、被写体同士の重なり具合と合成画像のフレーム枠との関係を見て、被写体がどう動いても重なりが生じたり、被写体がフレームアウトしてしまうと判断できれば、もう一度、第1被写体画像や背景画像の撮影からやり直した方が良いという判断を行うこともできるようになる。
【0398】
また、警告の通知の仕方として、図3(a)のランプ142を点燈あるいは点滅させることで知らせることもできる。警告なので、ランプの色は赤やオレンジなどの色にしておくと分かりやすい。ランプの点滅などは一般にモニター141に撮影者が注目していなくても気づきやすいという利点がある。
【0399】
また、図13(b)のような重なり領域を合成画像に重ねて表示せず、ランプだけで知らせてもよい。この場合、どのくらい重なっているかはすぐには分かりにくいが、重なりがあるかないかだけ分かれば、後は被写体が移動するなどして警告通知が無くなるかどうかを見ていれば重なりの無い合成画像を得るという目的は達せられるので、ランプだけでもよい。これにより、重なり部分を表示させる処理が省けるという利点が出てくる。
【0400】
なお、重なりの面積を数字や棒グラフなどでモニター141に表示したり、複数のランプの点燈制御や単独のランプの点滅間隔を重なりの面積によって変えたりするなどすると、重なり具合を別途知ることができてさらによい。
【0401】
また、図3(a)にはないが、モニター141とは別にファインダーのような画像を確認できる別の手段がある場合、そちらにモニター141と同じ警告通知を表示したり、ファインダー内部にランプを組み込んでおき、通知する方法も考えられる。
【0402】
また、図3(a)、図3(b)では示していないが、図2のスピーカ80を使って警告通知を行っても良い。重なりがある場合に警告ブザーを鳴らしたり、「重なっています」などの音声を出力したりなどして、警告通知を行う。この場合にもランプと同様の効果が期待できる。スピーカを使う場合、光と違って指向性があまりないので、一つのスピーカで撮影者も被写体も両方重なり状態を知ることができるという利点がある。
【0403】
以上のS8−1からS8A−2の処理で、図5のS8の重なりに関する処理が行える。
【0404】
図22は、図5のS8の処理、すなわち重なりに関する処理の別の一方法を説明するフローチャート図である。
【0405】
P70を経たS8−1では、シャッターチャンス通知手段14が、重なり検出手段8(S7)から得られる情報に基づいて重なりがあるかどうかを判断し、重なりがある場合はP80へ処理が抜け、無い場合はS8B−2へ処理が進む。
【0406】
S8B−2では、シャッターチャンス通知手段14が、第1の被写体と第2の被写体に重なりがないことをユーザー(撮影者)あるいは被写体あるいはその両方に通知して、P80へ処理が抜ける。
【0407】
この通知は、実際には、重なりが無いことを通知するというより、重なりがないことによる副次的な操作、具体的には第2の被写体を記録するシャッターチャンスであることを通知するような使われたかたが最も一般的である。その場合、その通知は、主に撮影者に対するものとなる。
【0408】
シャッターチャンスの通知方法に関しては、図21で説明したような方法がほぼそのまま使える。例えば、図13(c)のメッセージを「シャッターチャンスです!」などと変えるなどすればよい。なお、図13(c)の重なり部分は、この時は存在しないので、当然、表示も不要である。その他、ランプ、スピーカについても、色や出力する音の内容などは多少変わるが、通知手法としては同様に利用できる。
【0409】
シャッターチャンスであることが分かれば、撮影者はシャッターを切ることで重なりのない状態で撮影/記録することができ、また、被写体もシャッターを切られるかもしれない準備(例えば目線の方向や顔の表情など)を行うことができるという利点が出てくる。
【0410】
以上のS8−1からS8B−2の処理で、図5のS8の重なりに関する処理が行える。
【0411】
図23は、図5のS8の処理、すなわち重なりに関する処理のさらに別の一方法を説明するフローチャート図である。
【0412】
P70を経たS8−1では、自動シャッター手段15が、重なり検出手段8(S7)から得られる情報に基づいて重なりがあるかどうかを判断し、重なりがある場合はP80へ処理が抜け、無い場合はS8C−2へ処理が進む。
【0413】
S8C−2では、自動シャッター手段15が、シャッターボタンが押されているかどうかを判断し、押されていればS8C−3へ進み、押されていなければP80へ処理が抜ける。
【0414】
S8C−3では、自動シャッター手段15が、第2被写体画像の記録を第2被写体画像取得手段3へ指示して、P80へ処理が抜ける。第2被写体画像取得手段3は、指示に従い、撮影画像を主記憶74、外部記憶75などに記録する。
【0415】
これによって、被写体同士が重なっていない時にシャッターボタンが押されていれば、自動的に撮影画像を記録することができるようになるという効果が出てくる。同時に、誤って重なっている状態で撮影画像を記録してしまうことを防ぐ効果も出てくる。
【0416】
実際の使われ方としては、被写体の様子などを見て、今なら撮影画像を記録しても良いと思ったら撮影者がシャッターボタンを押すが、その時点で必ずしも記録される訳ではなく、重なりがある場合は記録されない。すなわち、自動シャッター手段15が、重なりがあると判断した場合には、撮影者がシャッターボタンを押しても第2被写体画像取得手段3による記録動作が行われないように、第2被写体画像の記録を禁止する。
【0417】
なお、記録されない場合は、その旨を表示やランプ、スピーカなどの通知手段で撮影者などに知らせた方が、シャッターを押したが撮影されていないことが分かってよい。
【0418】
そして、被写体が動くなどして、重なりがない状態になった時に、再度シャッターボタンが押されれば、今度は記録される。記録されたことが分かるように、表示やランプ、スピーカなどの通知手段で撮影者などに知らせるとよい。
【0419】
シャッターボタンを毎度押すのではなく、押しっぱなしにするならば、重なっている状態から重なりがなくなった瞬間に自動的に記録されることになる。但し、重なりがなくなった瞬間だとまだ被写体が静止しておらず撮影画像がぶれてしまったり、被写体が撮影される状態(被写体が他所を向いている時など)になっていない場合があるので、その場合は自動的に記録するまでに少し時間をあけると良い。
【0420】
以上のS8−1からS8C−3の処理で、図5のS8の重なりに関する処理が行える。
【0421】
図24は、図5のS8の処理、すなわち重なりに関する処理のさらに別の一方法を説明するフローチャート図である。
【0422】
P70を経たS8−1では、重なり回避方法算出手段11が、重なり検出手段8(S7)から得られる情報に基づいて重なりがあるかどうかを判断し、重なりがある場合はS8D−2へ進み、無い場合はP80へ処理が抜ける。
【0423】
S8D−2では、重なり回避方法算出手段11が、第1、第2被写体領域の重心位置をそれぞれ計算して、S8D−3へ処理が進む。重心位置とは、簡単に言えばその領域の中心位置であり、正確に言えば、重心位置からある画素までの距離と方向をベクトルし、全ての領域内の画素のベクトルの和が0となる状態である。重心位置の求め方についても、一般的な画像処理の本などに載っているので、ここでは割愛する。
【0424】
S8D−3では、重なり回避方法算出手段11が、S8D−2で求めた第1、第2被写体領域の重心位置から、第2の被写体が移動する方向について、両者の重心位置の間の距離が最も離れる方向(第1被写体領域の重心位置から第2被写体領域の重心位置へ向かう方向)を求めて、S8D−4へ処理が進む。
【0425】
例えば、S8D−2で得られた第1被写体領域の重心位置が(Xg1、Yg1)、第2被写体領域の重心位置が(Xg2、Yg2)の時、最も距離が離れる方向は、ベクトル形式で表現すれば
(Xg2−Xg1、Yg2−Yg1)
となる。
【0426】
但し、Xg2=Xg1、Yg2=Yg1の時は、第1の被写体と第2の被写体の重心位置が重なっているので、どの方向でもよい。
【0427】
図25は、図12の重なり状態で最も重心位置が離れる方向を求めた例である。第1被写体領域112の重心位置132と第2被写体領域130の重心位置133との間で最も重心位置が離れる方向は、重心位置132から重心位置133へ向かう矢印134が示す方向である。
【0428】
S8D−4では、重なり回避方法通知手段12が、S8D−3で求められる方向を、重なりを少なくする回避方法としてユーザーあるいは被写体あるいは両方に通知して、P80へ処理が抜ける。
【0429】
図26(a)は、回避方法をモニター141上で通知している状態を示す説明図である。S8D−3で図25のように右方向に第2の被写体が動いた方が重なりが少なくなることが求められたので、第2の被写体を右方向へ動かすことを示す矢印を合成画像に重ねて表示している。この矢印も、既に説明した重なり部分の表示のように、色や点滅などで目立つように表示した方が分かりやすくてよい。
【0430】
重なり状態を示すだけだと、どのように被写体が動いたら重なりが少なくなるかをすぐに判断しにくいが、被写体の移動方向を矢印などで示すことで、どのように動いたら良いかが非常に分かりやすくなるという利点が出てくる。
【0431】
なお、矢印の方向の角度θdは、S8D−3で求められる方向ベクトルより、
θd=arctan((Yg2−Yg1)/(Xg2−Xg1))、(0≠Xg2−Xg1)
θd=π/2、(0=Xg2−Xg1、0≦Yg2−Yg1)
θd=−π/2、(0=Xg2−Xg1、0>Yg2−Yg1)
で求められる。
【0432】
ここで表示する矢印は方向が重要なので、S8D−3で求めた方向ベクトルの大きさは無視してよい。但し、表示する矢印の長さに何か意味を持たせてもよい。例えば、被写体同士が重なっている面積が分かるのならば、矢印の長さや太さをその面積に比例させてもよい。重なりが大きいほど、矢印も長く(あるいは太く)なり、重なり具合が直感的に分かりやすくなる。また矢印が大きいので撮影者なども重なりを無くさないといけないという気になりやすいという効果が出てくる。
【0433】
なお、S8D−3で求められる方向はあらゆる方向を取れるが、被写体の動きを指示するのにそれほど正確な方向は必要無いので、求めたθdに最も近い方向を、上下左右の4方向、あるいは斜め方向も加えた8方向の中から選ぶなどしてもよい。
【0434】
4方向や8方向に絞った場合、言葉でも通知しやすくなるので、図26(a)の上のメッセージのように、「右方向に被写体が動いた方が、重なりが無くなります」と通知してもよい。また、これらのメッセージをスピーカで流してもよい。
【0435】
また、矢印やメッセージでなく、ランプを使って移動方向を通知してもよい。その場合、上下左右の4方向や8方向などの方向を示すことができるように複数の方向ランプが必要になる場合もある。例えば、モニター141の周囲に方向ランプを配置してもよい。
【0436】
また、これらの通知は重なり状態の通知などと同様、撮影者だけでなく、被写体に通知してもよい。その効果については、既に説明したものと同様である。
【0437】
なお、ここでは被写体の重心位置を利用したが、これ以外にも様々な方法が考えられる。例えば、被写体領域の画素値をX軸やY軸に投影して、各軸方向のどの辺に位置するかをおおまかに求める。投影結果から、重心位置や重なり範囲を求めることができるので、それらから、上下左右のどちらの方向に移動すればよいかを求めることもできる。上下方向と左右方向を組み合わせれば、斜め方向の移動方向を求めることもできる。
【0438】
以上のS8−1からS8D−4の処理で、図5のS8の重なりに関する処理が行える。
【0439】
図27は、図5のS8の処理、すなわち重なりに関する処理のさらに別の一方法を説明するフローチャート図である。
【0440】
P70を経たS8−1では、重なり回避方法算出手段11が、重なり検出手段8(S7)から得られる情報に基づいて重なりがあるかどうかを判断し、重なりがある場合はS8E−2へ進み、無い場合はP80へ処理が抜ける。
【0441】
S8E−2では、重なり回避方法算出手段11が、第2の被写体を各方向に動かした時の重なり量を予測して、S8E−3へ処理が進む。
【0442】
まず、現在、図12の第1被写体領域112、第2被写体領域130の状態であり、重なりあう領域は領域131であるとする。この状態から、第2被写体領域130を上下左右に所定量、動かしてみる。
【0443】
図28(a)は、点線で表示されている第2被写体領域130を左に動かして、黒く塗りつぶされている領域150に動かしてみた状態を説明する図である。同様に、図28(b)は右に動かしてみた状態、図28(c)は上に動かしてみた状態、図28(d)は下に動かしてみた状態を説明する図である。
【0444】
これらの移動した第2被写体領域と第1被写体領域の重なりを求めた重なり画像が、図29(a)から図29(d)である。重なりのある領域は黒く塗りつぶして示してある。移動した第2被写体領域と第1被写体領域は点線で示してある。
【0445】
図29(a)の重なり領域は、図12の重なり領域と比べて増えてしまっている。図29(b)の重なり領域は、無くなっている。図29(c)と図29(d)の重なり領域は、図12の重なり領域131とあまり変わらない。
【0446】
なお、ここでは4方向で重なり量を予想したが、必要とする精度や処理量などを考えて、それ以外の方向数にしてももちろん構わない。また、移動量も所定の値としていたが、これを1方向あたり、複数の値で重なり量を求めるという方法も考えられる。
【0447】
S8E−3では、重なり回避方法算出手段11が、S8E−2で得られた各方向に動かした時の重なり量の予測のうち、最も重なり量が少なくなる方向を抽出して、S8E−4へ処理が進む。
【0448】
なお、S8E−2で説明したような手法を用いて、各方向の移動量をいろいろ変えて重なり量を求める場合、それぞれ別個に考えて最も少ない重なりの方向や位置を選ぶ方法も考えられるし、その方向の全ての移動量の重なり量の和で比較したり、あるいは平均的な重なり量で比較したり、といった方法も考えられる。
【0449】
図29(a)から図29(d)の中で最も重なりが少ないのは図29(b)なので、第2の被写体を右方向に動かした方が(4方向のうちで)最も重なりが少なくなると予想される。
【0450】
S8E−4では、重なり回避方法通知手段12が、S8E−3で求められる方向を、重なりを少なくする回避方法としてユーザーあるいは被写体あるいは両方に通知して、P80へ処理が抜ける。
【0451】
ここの処理、通知方法については、S8D−4とほぼ同様である。例えば、図26(a)のような通知結果となる。
【0452】
S8D−4との違いを言えば、S8D−2からS8D−4の処理では方向しか求めていないが、S8E−2からS8E−4の処理では、第2の被写体の移動先を仮定して方向を決めているので、方向だけでなく、どの程度動けば良いのかを示すことも可能である。表示の仕方としては、例えば、移動方向を示す矢印の開始点と終了点を、第2の被写体の現在位置と、最小限の移動量で重なりが最も少なくなる位置とにすればよい。これにより、第2の被写体がどのくらい動けばよいかがはっきり分かるという効果が出てくる。
【0453】
また、矢印だけでなく、被写体の移動先の位置を直接示す方法もある。図26(b)は最小限の移動量で重なりが無くなる移動先を示した例である。移動先の第2の被写体を点線で示している。
【0454】
以上のS8−1からS8E−4の処理で、図5のS8の重なりに関する処理が行える。
【0455】
なお、図21〜27の処理は必ずしも排他的な処理ではなく、任意に組み合わせて処理することも可能である。組み合わせの例として、次のような利用シーンが可能となる。
【0456】
『被写体同士が重なっている時は「重なっています」と警告がなされ、この時にシャッターボタンを押しても撮影画像は記録されない。そして警告と一緒に、被写体がどちらの方向に動いたら良いかが図26(a)のように示される。それに従って被写体が動き、重なりがなくなったらシャッターチャンスランプが点燈する。シャッターチャンスランプが点燈している間にシャッターボタンを押したら撮影画像が記録される。』
次に、図30は、図5のS9の処理、すなわち重ね画像を生成する処理の一方法を説明するフローチャート図である。
【0457】
P80を経たS9−1では、重ね画像生成手段9が、生成する重ね画像の最初の画素位置をカレント画素に設定してS9−2へ処理が進む。最初の画素位置は、例えば左上などの隅から始まることが多い。
【0458】
なお、「画素位置」は、画像上の特定の位置を表し、左上隅を原点、右方向を+X軸、下方向を+Y軸としたX−Y座標系で表現されることが多い。画素位置は、画像を表すメモリ上のアドレスに対応し、画素値はそのアドレスのメモリの値である。
【0459】
S9−2では、重ね画像生成手段9が、カレント画素位置は存在するかどうかを判断し、存在するならばS9−3へ処理が進み、存在しないならばP90へ処理が抜ける。
【0460】
S9−3では、重ね画像生成手段9が、カレント画素位置が第1被写体領域内かどうかを判断し、第1被写体領域内ならばS9−4へ処理が進み、そうでないならばS9−5へ処理が進む。
【0461】
第1被写体領域内かどうかは、被写体領域抽出手段7(S6)から得られる第1被写体領域画像上でカレント画素位置の画素値が黒(0)かどうかで判断できる。
【0462】
なお、第1被写体領域であるかどうかで特に処理を変えない場合は、S9−3,S9−4は省いて、S9−2からS9−5へ進めばよい。
【0463】
S9−4では、重ね画像生成手段9が、設定に応じた画素値を計算して、重ね画像のカレント画素位置の画素値として書き込む。
【0464】
上記の設定とは、つまりどのような重ね画像を合成するかということである。例えば、図11(b)のように第1被写体を半透明で合成するのか、図11(a)のように不透明で第1被写体をそのまま上書きで合成するのか、などである。
【0465】
もし半透明で合成するのならば、第1被写体画像のカレント画素位置の画素値P1と補正画像生成手段5(S5)から得られる補正背景画像のカレント画素位置の画素値Pbを得て、所定の透過率A(0.0から1.0の間の値)で合成画素値(P1×A+Pb×(1−A))を求めればよい。そのまま上書きするのならば、透過率Aを1.0としてP1をそのまま書き込めばよい。
【0466】
S9−5では、重ね画像生成手段9が、S9−3でカレント画素位置が第1被写体領域内ではないと判断した場合に、カレント画素位置が第2被写体領域内かどうかを続いて判断し、第2被写体領域内ならばS9−6へ処理が進み、そうでないならばS9−7へ処理が進む。ここでの処理は、第1被写体領域が第2被写体領域に変わるだけで、S9−3と同様である。
【0467】
S9−6では、重ね画像生成手段9が、設定に応じた合成画素を生成して、重ね画像のカレント画素位置の画素値として書き込む。ここでの処理は、第1被写体領域(画像)が第2被写体領域(画像)に変わるだけで、S9−4と同様である。
【0468】
S9−7では、重ね画像生成手段9が、S9−5でカレント画素位置が第2被写体領域内ではないと判断した場合に、第1被写体画像のカレント画素位置の画素値を重ね画像のカレント画素位置の画素値として書き込む。すなわち、この場合のカレント画素位置は、第1被写体領域内でも第2被写体領域内でもないので、結局、背景部分に相当する。
【0469】
なお、ここでは背景部分の画像を第1被写体画像から取得しているが、補正背景画像から取得することも可能である。ただ、第1被写体領域と背景部分の境界部分が、補正背景画像を使うより第1被写体画像を使った方が自然な境界部分が得られるという利点がある。また、S6での第1、第2被写体領域の抽出が間違っていたとしても、境界が自然なので間違いが目立たないという効果も出てくる。
【0470】
S9−8では、重ね画像生成手段9が、カレント画素位置を次の画素位置に設定して、S9−2へ処理が戻る。
【0471】
以上のS9−1からS9−8の処理で、図5のS9の重ね画像生成に関する処理が行える。
【0472】
なお、上記の処理ではS9−4やS9−7で第1被写体画像や補正背景画像を処理しているが、生成する重ね画像にS9−1の前に最初に第1被写体画像または補正背景画像を全画素コピーしてしまい、その後、各画素位置の処理で第1被写体領域および/または第2被写体領域だけを処理する方法も考えられる。全画素コピーの方が処理手順は単純になるが、処理時間は若干増えるかもしれない。
【0473】
また、第1被写体領域と第2被写体領域とが重なったとしても、重ね画像の生成をそのまま許可する形態も考えられる。この場合には、図5のフローチャートにおいて、S7,S8が省略されるようにすれば、処理が簡単になる。ただし、前述どおり、重なり領域を目立たせる処理や、重なりがあることを警告する処理を実行しても構わない。
【0474】
重要なのは、本発明の画像合成方法では、第1被写体領域と第2被写体領域とを独立して抽出することができるので、第1被写体領域と第2被写体領域とが重なりを持った重ね画像を生成する場合に、第1被写体と第2被写体のどちらを優先して合成すればよいかを決めることができるということである。
【0475】
例えば、第1被写体を優先するように重ね画像生成手段9が設定されたとすると、図31に示すように、第1被写体と第2被写体との重なり領域において、第1被写体(人物(1))を第2被写体(人物(2))の上になるように重ねた重ね画像が得られる。図30のフローチャートで説明すると、S9−4で、重ね画像生成手段9が上記の透過率A、すなわち合成割合を1.0(100%)として、第1被写体画像の画素値P1をそのままカレント画素位置に書き込む処理が行われる。
【0476】
一方、第2被写体を優先するように重ね画像生成手段9が設定されたとすると、図32に示すように、第1被写体と第2被写体との重なり領域において、第1被写体(人物(1))を第2被写体(人物(2))の下になるように重ねた重ね画像が得られる。これを実現するには、図30のフローチャートでS9−3の処理とS9−5の処理とを入れ替えるのが簡単である。
【0477】
つまり、カレント画素位置が第2被写体領域内かどうかの判断を先に、重ね画像生成手段9が行うようにし、その結果、カレント画素位置が第2被写体領域内ならば、同様に第2被写体画像の合成割合を1.0として、第2被写体画像の画素値をそのままカレント画素位置に書き込む処理を行えばよい。
【0478】
なお、このような処理は、背景画像を使わずに、第1被写体画像と第2被写体画像だけで合成処理するやり方では不可能である。なぜなら、第1被写体画像と第2被写体画像だけでは、第1被写体領域と第2被写体領域とを独立して抽出することができず、一塊に統合された領域としてしか抽出できないからである。
【0479】
なお、ここでは合成画像の大きさを基準画像の大きさにしているが、これより小さくしたり、大きくしたりすることも可能である。例えば図6(c)や図8(c)で補正画像を生成する際、一部を切り捨ててしまっていたが、補正画像の大きさを大きくして切り捨てないようにすれば、合成画像を大きくする時のために、切り捨てずに残した画像を合成に使い、それによって背景を広げることも可能となる。いわゆるパノラマ画像合成のようなことが可能となる効果が出てくる。
【0480】
また、例えば、第1被写体画像と背景画像、第2被写体画像と背景画像の間では共通した背景部分を持っていて、第1被写体画像と第2被写体画像で共通した背景部分を持たない場合、合成画像では第1被写体と第2被写体の間の背景が存在しない場合も出てきてしまうかもしれないが、背景画像も使うことで、存在しない部分を埋める合成画像を生成できる効果も出てくる。この場合、例えば、第1被写体画像、背景画像、第2被写体画像の順で端がそれぞれ重なった長い合成画像が生成される(第1被写体画像と第2被写体画像とは、本発明の処理により、合成画像上では位置の重なりは無い)。
【0481】
図11(b)は、第1被写体領域だけを半透明に合成した重ね画像である。図11(c)は、第2被写体領域だけを半透明に合成した重ね画像である。図11(a)は、両方とも半透明にはせず、どちらも上書きして生成した重ね画像である。なお、図では示していないが、両方とも半透明にして合成する方法も考えられる。
【0482】
どの合成方法をとるかは目的によるので、ユーザーがそのときの目的に応じた合成方法を選択できるようにすれば良い。
【0483】
例えば、背景画像、第1被写体画像を既に撮影/記録してあり、第2被写体画像を重なり無く撮影しようとする段階では、第1の被写体の詳細な画像は必要なく、大体どの辺に存在し、重なりがあるかどうかが分かればよいのだから、半透明の合成で構わない。また、第2の被写体は、撮影する瞬間にどういう表情をしているとかの詳細が分からないとうまくシャッターが切れないので、半透明ではなく上書きで合成する方が良い。従って、図11(b)のような合成方法が向いている。
【0484】
また、合成する被写体の領域が分かった方が撮りやすいというユーザーにとっては、撮影中は両者を半透明で合成した方が良い場合や、第2の被写体だけを半透明にした方が良い場合もあるかもしれない。
【0485】
また、第2の被写体の撮影/記録が済んで、背景画像、第1被写体画像、第2被写体画像を使って、最終的な合成画像を合成したい場合は、半透明な被写体では困るので、どちらも上書きで合成する必要がある。従って、図11(a)のような合成方法が向いている。
【0486】
また、被写体領域取得手段7(S6)から得られる被写体領域が既に膨張されていれば、被写体だけでなく、その周囲の背景部分も一緒に合成してしまうが、既に補正画像生成手段5(S5)で背景部分は一致するように補正処理されているので、実際の被写体の輪郭の領域よりも多少、抽出する被写体領域が大きめになって背景部分まで含んでしまっていても、合成境界で不自然になることはないという効果が出てくる。
【0487】
なお、被写体領域を膨張させて処理するのであれば、合成境界をより自然に見せるように、外部も含めた被写体領域の合成境界付近、あるいは被写体領域内部だけの合成境界付近で、透明度を徐々に変化させて合成させるという方法もある。例えば、被写体領域の外部にいくに従って、背景部分の画像の割合を強くし、被写体領域の内部にいくに従って、被写体領域部分の画像の割合を強くする、といった具合である。
【0488】
これにより、たとえ合成境界付近で補正誤差による多少の背景のずれがあったとしても、不自然さを目立たなくすることができるという効果が出てくる。補正誤差でなく、そもそも被写体領域の抽出が間違っている場合や、撮影時間のずれなどに起因する背景部分の画像の変化(例えば、風で木が動いた、日が陰った、関係無い人が通った、など)があったとしても、同様に、不自然さを目立たなくすることができるという効果が出てくる。
【0489】
また、本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記憶媒体に格納されたプログラムコードを読み出し実行することによっても、達成されることは言うまでもない。
【0490】
この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【0491】
プログラムコードを供給するための記憶媒体としては、例えば、フロッピディスク,ハードディスク,光ディスク,光磁気ディスク,磁気テープ,不揮発性のメモリカード,等を用いることができる。
【0492】
また、上記プログラムコードは、通信ネットワークのような伝送媒体を介して、他のコンピュータシステムから画像合成装置の主記憶74または外部記憶75へダウンロードされるものであってもよい。
【0493】
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているOS(オペレーティングシステム)などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【0494】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【0495】
本発明を上記記憶媒体に適用する場合、その記憶媒体には、先に説明したフローチャートに対応するプログラムコードを格納することになる。
【0496】
本発明は上述した各実施形態に限らず、請求項に示した範囲で種々の変更が可能である。
【0497】
【発明の効果】
本発明に係る画像合成装置は、以上のように、背景の画像である背景画像と、前記背景の少なくとも一部と第1の被写体を含む画像である第1被写体画像と、前記背景の少なくとも一部と第2の被写体を含む画像である第2被写体画像との間での、背景の相対的な移動量、回転量、拡大縮小率、歪補正量のいずれかもしくは組み合わせからなる補正量を算出する、あるいは算出して記録しておいた補正量を読み出す背景補正量算出手段と、背景画像、第1被写体画像、第2被写体画像のいずれかを基準画像とし、他の2画像を被写体以外の背景の少なくとも一部が重なるように、前記背景補正量算出手段から得られる補正量で補正し、基準画像と補正した他の1つあるいは2つの画像を重ねた画像を生成する重ね画像生成手段と、を有する
【0498】
これにより、二つの画像間の背景のずれを補正して合成することができるので、被写体など明らかに異なる領域を除いた以外の部分(すなわち背景部分)は、どのように重ねても合成結果がほぼ一致し、合成結果が不自然とならないという効果が出てくる。例えば被写体領域だけを主に合成しようとした時、被写体領域の抽出や指定が多少不正確であっても、被写体領域の周りの背景部分が合成先の画像の部分とずれがないので、不正確な領域の内外が連続した風景として合成され、見た目の不自然さを軽減するという効果が出てくる。
【0499】
また、これにより、たとえ被写体領域の抽出が画素単位で正確であったとしても、課題の項で説明した通り、1画素より細かいレベルでの不自然さは従来技術の方法では出てしまうが、本発明では、背景部分を合わせてから合成しているので、輪郭の画素の周囲の画素は、同じ背景部分の位置の画素となり、合成してもほぼ自然なつながりとなる。このように、1画素より細かいレベルでの不自然さを防ぐ、あるいは軽減するという効果が出てくる。
【0500】
また、背景のずれを補正して合成するので、背景画像や第1/第2被写体画像の撮影時にカメラなどを三脚などで固定する必要がなく、手などで大体の方向を合わせておけばよく、撮影が簡単になるという効果が出てくる。
【0501】
さらに、第1被写体画像と第2被写体画像の間では背景部分に重なりがなくても、第1被写体画像と第2被写体画像の間の補正量を算出することができる。これにより、第1被写体画像の背景部分と第2被写体画像の背景部分の間の背景が抜けていても、その抜けている背景部分を背景画像の背景が埋めていれば、背景部分に重なりの無い第1被写体画像と第2被写体画像を、背景が繋がった状態で合成することができる効果が出てくる。
【0502】
さらに、背景画像、第1被写体画像および第2被写体画像のそれぞれから必要な背景部分を取り出して、互いの不足部分を補うことでつなげた背景の上に、第1被写体および第2被写体を合成した重ね画像を作成することもできる。
【0503】
本発明に係る画像合成装置は、以上のように、被写体や風景を撮像する撮像手段を有し、背景画像、または第1被写体画像、または第2被写体画像は、前記撮像手段の出力に基づいて生成されてもよい
【0504】
これによって、ユーザーが被写体や風景を撮影したその場で、重ね画像を生成することができるため、ユーザーにとっての利便性が向上する。また、重ね画像を生成した結果、もし被写体同士の重なりがあるなどの不都合があれば、その場で撮影し直すことができるという効果が出てくる。
【0505】
本発明に係る画像合成装置は、以上のように、第1被写体画像と第2被写体画像のうち、先に撮影した方を基準画像としてもよい
【0506】
このように、第1被写体画像と第2被写体画像のうち、先に撮影した方を基準画像とすることで、撮影し直しを繰り返す場合に、処理量・処理時間を減らすことができるという効果が出てくる。
【0507】
本発明に係る画像合成装置は、以上のように、基準画像の直前あるいは直後の順で背景画像を撮影してもよい
【0508】
これにより、再度撮影し直す際の被写体や撮影者の微調整などの手間を減らし、重なりなどの不具合の少ない画像を撮影し易くなるという効果が出てくる。また、撮影し易くなる効果だけでなく、重ね画像を効率よく生成することができ、ユーザーの使い勝手が向上する効果が出てくる。
【0509】
本発明に係る画像合成装置は、以上のように、前記重ね画像生成手段において、基準画像と補正した他の1つあるいは2つの画像とを、それぞれ所定の透過率で重ねてもよい
【0510】
これを使って、例えば、補正された被写体画像中の被写体領域だけを基準画像に重ねる時、被写体領域内は不透明(すなわち補正画像中の被写体の画像そのまま)で重ね、被写体領域周辺は被写体領域から離れるに従い基準画像の割合が強くなるように重ねる。すると、被写体領域、すなわち抽出した被写体の輪郭が間違っていたとしても、その周辺の画素は、補正画像から基準画像に徐々に変わっているので、間違いが目立たなくなるという効果が出てくる。
【0511】
また、例えば被写体領域だけを半分の透過度で重ねる、などの合成表示をすることで、表示されている画像のどの部分が以前に撮影した合成対象部分で、どの部分が今撮影している被写体の画像なのかを、判別しやすくするという効果も出てくる。それにより、被写体同士の重なりなどがある場合も、今撮影している被写体の位置を判別しやすくなるという効果も出てくる。
【0512】
本発明に係る画像合成装置は、以上のように、前記重ね画像生成手段において、基準画像と補正した他の1つあるいは2つの画像の間の差分画像中の差のある領域を、元の画素値と異なる画素値の画像として生成してもよい
【0513】
これによって、二つの画像間で一致しない部分がユーザーに分かりやすくなるという効果が出てくる。例えば、第1や第2の被写体の領域は、基準画像上と補正画像上では、片方は被写体の画像、他方は背景の画像となるので、差分画像中の差のある領域として抽出される。抽出された領域を半透明にしたり、反転表示したり、目立つような色の画素値とすることで、被写体の領域がユーザーに分かりやすく、もし被写体同士に重なりなどがあれば、それも分かり易くなるという効果が出てくる。
【0514】
本発明に係る画像合成装置は、以上のように、基準画像と補正した他の1つあるいは2つの画像の間の差分画像中から、第1の被写体の領域と第2の被写体の領域を抽出する被写体領域抽出手段を有し、前記重ね画像生成手段において、基準画像と補正した他の1つあるいは2つの画像とを重ねる代わりに、基準画像と前記被写体領域抽出手段から得られる領域内の補正した他の1つあるいは2つの画像とを重ねることを特徴とする。
【0515】
これによって、基準画像上や補正された背景画像上に、補正された被写体画像中の被写体領域のみを合成することできるという効果が出てくる。あるいは、補正された被写体画像上や補正された背景画像上に、基準画像中の被写体領域のみを合成したり、補正された背景画像上に基準画像中の被写体領域と補正された被写体画像中の被写体領域を合成したり、基準画像としての背景画像上に補正された被写体画像中の被写体領域を合成したりするということもできる。
【0516】
また、被写体領域の透過率を変えるなどして合成するならば、どの領域を合成しようとしているかがユーザーに分かり易く、もし被写体同士に重なりなどがあれば、それもさらに分かり易くなるという効果が出てくる。さらに、それによって、どうすれば重なりが起きないようになるかをユーザーが判断する材料を与える等、撮影を補助することができるという効果が出てくる。
【0517】
また、背景画像、第1被写体画像および第2被写体画像の3枚を用いると、第1の被写体の領域または第2の被写体の領域の抽出が容易になるという効果が出てくる。さらに、第1の被写体の領域または第2の被写体の領域をそれぞれ抽出できるので、各被写体に重なりがある場合に、どちらを優先して合成するか、すなわち重なり部分において、第1の被写体が第2の被写体の上になるように合成するか、下になるように合成するかを決めることができるという効果も出てくる。
【0518】
本発明に係る画像合成装置は、以上のように、前記被写体領域抽出手段から得られる第1の被写体の領域と第2の被写体の領域の重なりを検出する重なり検出手段を有することを特徴とする。
【0519】
これによって、被写体同士が重なり合っている部分があるかどうかをユーザーが判別しやすくなるという効果が出てくる。それによって、重なりが起きないように撮影を補助する効果については、前述したものと同様である。
【0520】
本発明に係る画像合成装置は、以上のように、前記重なり検出手段において重なりが検出される時、重なりが存在することを、ユーザーあるいは被写体あるいは両方に警告する重なり警告手段を有してもよい
【0521】
これによって、被写体同士が重なり合っている場合に、重なり警告手段の動作によって警告されるので、ユーザーがそれに気づかずに撮影/記録したり合成処理したりということを防ぐことができ、さらに被写体にも位置調整等が必要であることを即時に知らせることができるという撮影補助の効果が出てくる。
【0522】
本発明に係る画像合成装置は、以上のように、前記重なり検出手段において重なりが検出されない時、重なりが存在しないことを、ユーザーあるいは被写体あるいは両方に通知するシャッターチャンス通知手段を有してもよい
【0523】
これによって、被写体同士が重なり合っていない時をユーザーが知ることができるので、撮影や撮影画像記録、合成のタイミングをそれに合わせて行えば、被写体同士が重ならずに合成することができるという撮影補助の効果が出てくる。
【0524】
また、被写体にも、シャッターチャンスであることを通知できるので、ポーズや視線などの備えを即座に行えるという撮影補助の効果も得られる。
【0525】
本発明に係る画像合成装置は、以上のように、被写体や風景を撮像する撮像手段を有し、前記重なり検出手段で重なりが検出されない時に、前記撮像手段から得られる画像を背景画像、または第1被写体画像、または第2被写体画像として記録する指示を生成する自動シャッター手段を有してもよい
【0526】
これによって、被写体同士が重なり合っていない時に自動的に撮影が行われるので、ユーザー自身が重なりがあるかどうかを判別してシャッターを押さなくても良いという撮影補助の効果が出てくる。
【0527】
本発明に係る画像合成装置は、以上のように、被写体や風景を撮像する撮像手段を有し、前記重なり検出手段で重なりが検出される時に、前記撮像手段から得られる画像を、背景画像、あるいは第1被写体画像、あるいは第2被写体画像として記録することを禁止する指示を生成する自動シャッター手段を有してもよい
【0528】
これによって、被写体同士が重なり合ってる時は撮影が行われないので、ユーザーが誤って重なりがある状態で撮影/記録してしまうことを防ぐ撮影補助の効果が出てくる。
【0529】
本発明に係る画像合成装置は、以上のように、前記重なり検出手段において、第1の被写体の領域と第2の被写体の領域が重なり合う重なり領域を抽出してもよい
【0530】
これによって、被写体同士が重なり合っている部分があるとしたらどの部分が重なっているかを表示などで通知すれば、ユーザーが判別しやすくなるという効果が出てくる。また、それによって、カメラや撮影中の被写体がどの方向、位置にどのくらい動けばよいかが判別しやすくなるという撮影補助の効果が出てくる。
【0531】
本発明に係る画像合成装置は、以上のように、前記重ね画像生成手段において、前記重なり検出手段が抽出した重なり領域を元の画素値と異なる画素値の画像として生成してもよい
【0532】
これによって、重なり領域がユーザーや被写体に判別しやすくなるという撮影補助の効果が出てくる。
【0533】
本発明に係る画像合成装置は、以上のように、前記重なり検出手段で重なりが検出される場合、重なりを減らす第1の被写体または第2の被写体の位置あるいはその位置の方向を算出する重なり回避方法算出手段と、前記重なり回避方法算出手段から得られる第1の被写体または第2の被写体の位置あるいはその位置の方向を、ユーザーあるいは被写体あるいは両方に知らせる重なり回避方法通知手段と、を有してもよい
【0534】
これによって、重なりがある場合に、カメラや撮影中の被写体がどの方向、位置に動けばよいかがユーザーが判断しなくても済むという撮影補助の効果が出てくる。
【0535】
本発明に係る画像合成方法は、以上のように、背景の画像である背景画像と、前記背景の少なくとも一部と第1の被写体を含む画像である第1被写体画像と、前記背景の少なくとも一部と第2の被写体を含む画像である第2被写体画像との間での、背景の相対的な移動量、回転量、拡大縮小率、歪補正量のいずれかもしくは組み合わせからなる補正量を算出する、あるいは算出して記録しておいた補正量を読み出す背景補正量算出ステップと、背景画像、第1被写体画像、第2被写体画像のいずれかを基準画像とし、他の2画像を被写体以外の背景の少なくとも一部が重なるように、前記背景補正量算出ステップから得られる補正量で補正し、基準画像と補正した他の1つあるいは2つの画像を重ねた画像を生成する重ね画像生成ステップとを有する
【0536】
これによる種々の効果は、前述したとおりである。
【0537】
本発明に係る画像合成プログラムは、以上のように、上記画像合成装置が備える各手段として、コンピュータを機能させてもよい
【0538】
本発明に係る画像合成プログラムは、以上のように、上記画像合成方法が備える各ステップをコンピュータに実行させてもよい
【0539】
本発明に係る記録媒体は、以上のように、上記画像合成プログラムを記録してもよい
【0540】
これにより、上記記録媒体、またはネットワークを介して、一般的なコンピュータに合成画像生成表示プログラムをインストールすることによって、該コンピュータを用いて上記の画像合成方法を実現する、言い換えれば、該コンピュータを画像合成装置として機能させることができる。
【図面の簡単な説明】
【図1】 本発明の画像合成装置の機能的な構成を示すブロック図である。
【図2】 上記画像合成装置の各手段を具体的に実現する装置の構成例を説明するブロック図である。
【図3】 (a)は、上記画像合成装置の背面の外観例を示す模式的な斜視図であり、(b)は、上記画像合成装置の前面の外観例を示す模式的な斜視図である。
【図4】 画像データのデータ構造例を説明する説明図である。
【図5】 画像合成方法全体の流れを示すフローチャート図である。
【図6】 (a)は、背景画像の例を示す説明図、(b)は、上記背景画像中の参照ブロックの配置を説明する説明図、(c)は、上記背景画像を補正した補正背景画像を説明する説明図、(d)は、上記補正背景画像のマスク画像を説明する説明図である。
【図7】 (a)は、第1被写体画像の例を示す説明図、(b)は、上記第1被写体画像中の残ったマッチングブロックの配置を説明する説明図である。
【図8】 (a)は、第2被写体画像の例を示す説明図、(b)は、上記第2被写体画像中の残ったマッチングブロックの配置を説明する説明図、(c)は、上記第2被写体画像を補正した補正第2被写体画像を説明する説明図、(d)は、上記補正第2被写体画像のマスク画像を説明する説明図である。
【図9】 (a)は、第1被写体画像と補正背景画像の差分画像例を示す説明図、(b)は、上記差分画像から生成したラベル画像例を示す説明図、(c)は、上記ラベル画像からノイズ部分を除去したラベル画像例を示す説明図、(d)は、上記ラベル画像から第1被写体領域を抽出した第1被写体領域画像例を示す説明図である。
【図10】 (a)は、第2被写体画像と補正背景画像の差分画像例を示す説明図、(b)は、上記差分画像から生成したラベル画像例を示す説明図、(c)は、上記ラベル画像からノイズ部分を除去したラベル画像例を示す説明図、(d)は、上記ラベル画像から第2被写体領域を抽出した第2被写体領域画像例を示す説明図である。
【図11】 (a)は、図9(d)の第1被写体領域部分と図10(d)の第2被写体領域部分と背景部分を重ねて合成した重ね画像例を示す説明図、(b)は、第1被写体領域部分を半透明にして重ねて合成した重ね画像例を示す説明図、(c)は、第2被写体領域部分を半透明にして重ねて合成した重ね画像例を示す説明図である。
【図12】 図9(d)の第1被写体領域と図20(b)の第2被写体領域の重なり画像例を示す説明図である。
【図13】 (a)は、図9(d)の第1被写体領域部分と図20(b)の第2被写体領域部分と背景部分を重ねて合成し、重なり部分を目立つように表示させた重ね画像例を示す説明図、(b)は、上記第1被写体領域部分を半透明にして重ねて合成した重ね画像例を示す説明図、(c)は、重なりの警告メッセージを表示させた例を示す説明図である。
【図14】 第2被写体画像を取得する処理の一方法を説明するフローチャート図である。
【図15】 背景補正量を算出する処理の一方法を説明するフローチャート図である。
【図16】 (a)は、ブロックマッチングを説明する参照画像の例を示す説明図、(b)は、ブロックマッチングを説明する探索画像の例を示す説明図である。
【図17】 背景画像、第2被写体画像の補正画像を生成し、第1被写体画像との差分画像を生成する処理の一方法を説明するフローチャート図である。
【図18】 (a)は、回転している第2被写体画像の例を示す説明図、(b)は、上記第2被写体画像中の残ったマッチングブロックの配置を説明する説明図、(c)は、上記第2被写体画像を補正した補正第2被写体画像を説明する説明図、(d)は、補正第2被写体画像画像のマスク画像を説明する説明図である。
【図19】 被写体領域を抽出する処理の一方法を説明するフローチャート図である。
【図20】 (a)は、図7(a)の第1被写体と被写体領域同士が重なる第2被写体画像の例を示す説明図、(b)は、上記第2被写体画像から抽出した第2被写体領域画像の例を示す説明図である。
【図21】 被写体領域の重なりを警告する処理の一方法を説明するフローチャート図である。
【図22】 被写体領域に重なりが無い時に、シャッターチャンスを通知する処理の一方法を説明するフローチャート図である。
【図23】 被写体領域に重なりが無い時に、自動シャッターを行う処理の一方法を説明するフローチャート図である。
【図24】 被写体領域に重なりがある時に、重なりがなくなる方向を通知する処理の一方法を説明するフローチャート図である。
【図25】 被写体領域に重なりがなくなる方向を説明する説明図である。
【図26】 (a)は、被写体領域に重なりがある時に、重なりがなくなる方向を通知する例を説明する説明図、(b)は、被写体領域に重なりがある時に、重なりがなくなる位置と方向を通知する例を説明する説明図である。
【図27】 被写体領域に重なりがある時に、重なりがなくなる位置を通知する処理の一方法を説明するフローチャート図である。
【図28】 (a)〜(d)は、第2被写体領域を上下左右に動かした例をそれぞれ説明する説明図である。
【図29】 (a)〜(d)は、図9(d)の第1被写体領域と図28(a)〜(d)の各第2被写体領域との重なり領域を説明する説明図である。
【図30】 重なり画像を生成する処理の一方法を説明するフローチャート図である。
【図31】 第1の被写体を優先して重ね画像を生成した場合の表示例を示す説明図である。
【図32】 第2の被写体を優先して重ね画像を生成した場合の表示例を示す説明図である。
【符号の説明】
1 第1被写体画像取得手段
2 背景画像取得手段
3 第2被写体画像取得手段
4 背景補正量算出手段
5 補正画像生成手段
6 差分画像生成手段
7 被写体領域抽出手段
8 重なり検出手段
9 重ね画像生成手段
10 重ね画像表示手段
11 重なり回避方法算出手段
12 重なり回避方法通地位手段
13 重なり警告手段
14 シャッターチャンス通知手段
15 自動シャッター手段
16 撮像手段
74 主記憶(記録媒体)
75 外部記憶(記録媒体)
112 領域(第1被写体領域)
122 領域(第2被写体領域)
130 第2被写体領域
131 領域(重なり領域)
140 本体(画像合成装置)
141 表示部兼タブレット
143 シャッターボタン

Claims (16)

  1. 背景の画像である背景画像と、前記背景の少なくとも一部と第1の被写体を含む画像である第1被写体画像と、前記背景の少なくとも一部と第2の被写体を含む画像である第2被写体画像との間での、背景の相対的な移動量、回転量、拡大縮小率、歪補正量のいずれかもしくは組み合わせからなる補正量を算出する、あるいは算出して記録しておいた補正量を読み出す背景補正量算出手段と、
    背景画像、第1被写体画像、第2被写体画像のいずれかを基準画像とし、他の2画像を被写体以外の背景の少なくとも一部が重なるように、前記背景補正量算出手段から得られる補正量で補正し、基準画像と補正した他の1つあるいは2つの画像を重ねた画像を生成する重ね画像生成手段と、
    基準画像と補正した他の1つあるいは2つの画像の間の差分画像中から、第1の被写体の領域と第2の被写体の領域を抽出する被写体領域抽出手段と、
    前記被写体領域抽出手段から得られる第1の被写体の領域と第2の被写体の領域の重なりを検出する重なり検出手段とを有し、
    前記重ね画像生成手段において、基準画像と補正した他の1つあるいは2つの画像とを重ねる代わりに、基準画像と前記被写体領域抽出手段から得られる領域内の補正した他の1つあるいは2つの画像とを重ねる
    ことを特徴とする画像合成装置。
  2. 被写体や風景を撮像する撮像手段を有し、
    背景画像、または第1被写体画像、または第2被写体画像は、前記撮像手段の出力に基づいて生成され、
    第1被写体画像と第2被写体画像のうち、先に撮影した方を基準画像とする
    ことを特徴とする請求項に記載の画像合成装置。
  3. 基準画像の直前あるいは直後の順で背景画像を撮影する
    ことを特徴とする請求項に記載の画像合成装置。
  4. 前記重ね画像生成手段において、
    基準画像と補正した他の1つあるいは2つの画像とを、それぞれ所定の透過率で重ねる
    ことを特徴とする請求項1に記載の画像合成装置。
  5. 前記重ね画像生成手段において、基準画像と補正した他の1つあるいは2つの画像の間の差分画像中の差のある領域を、ユーザが識別できるように、元の画素値と異なる画素値に変更する
    ことを特徴とする請求項1に記載の画像合成装置。
  6. 前記第1の被写体または第2の被写体の撮像中に、前記重なり検出手段において重なりが検出される時、重なりが存在することを、ユーザーあるいは撮像中の第1の被写体または第2の被写体あるいは両方に警告する重なり警告手段
    を有することを特徴とする請求項に記載の画像合成装置。
  7. 前記第1の被写体または第2の被写体の撮像中に、前記重なり検出手段において重なりが検出されない時、重なりが存在しないことを、ユーザーあるいは撮像中の第1の被写体または第2の被写体あるいは両方に通知するシャッターチャンス通知手段
    を有することを特徴とする請求項に記載の画像合成装置。
  8. 被写体や風景を撮像する撮像手段を有し、
    前記重なり検出手段で重なりが検出されない時に、前記撮像手段から得られる画像を背景画像、または第1被写体画像、または第2被写体画像として記録する指示を生成する自動シャッター手段を有すること
    を特徴とする請求項に記載の画像合成装置。
  9. 被写体や風景を撮像する撮像手段を有し、
    前記重なり検出手段で重なりが検出される時に、前記撮像手段から得られる画像を、背景画像、あるいは第1被写体画像、あるいは第2被写体画像として記録することを禁止する指示を生成する自動シャッター手段を有すること
    を特徴とする請求項に記載の画像合成装置。
  10. 前記重なり検出手段において、第1の被写体の領域と第2の被写体の領域が重なり合う重なり領域を抽出する
    ことを特徴とする請求項に記載の画像合成装置。
  11. 前記重ね画像生成手段において、
    前記重なり検出手段が抽出した重なり領域を、ユーザが識別できるように、元の画素値と異なる画素値に変更することを特徴とする請求項10に記載の画像合成装置。
  12. 前記第1の被写体または第2の被写体の撮像中に、前記重なり検出手段で重なりが検出される場合、重なりを減らす第1の被写体または第2の被写体の位置あるいはその位置の方向を算出する重なり回避方法算出手段と、
    前記重なり回避方法算出手段から得られる第1の被写体または第2の被写体の位置あるいはその位置の方向を、ユーザーあるいは撮像中の第1の被写体または第2の被写体あるいは両方に知らせる重なり回避方法通知手段と、
    を有することを特徴とする請求項1から11のいずれか1項に記載の画像合成装置。
  13. 背景の画像である背景画像と、前記背景の少なくとも一部と第1の被写体を含む画像である第1被写体画像と、前記背景の少なくとも一部と第2の被写体を含む画像である第2被写体画像との間での、背景の相対的な移動量、回転量、拡大縮小率、歪補正量のいずれかもしくは組み合わせからなる補正量を算出する、あるいは算出して記録しておいた補正量を読み出す背景補正量算出ステップと、
    背景画像、第1被写体画像、第2被写体画像のいずれかを基準画像とし、他の2画像を被写体以外の背景の少なくとも一部が重なるように、前記背景補正量算出ステップから得られる補正量で補正し、基準画像と補正した他の1つあるいは2つの画像を重ねた画像を生成する重ね画像生成ステップと、
    基準画像と補正した他の1つあるいは2つの画像の間の差分画像中から、第1の被写体の領域と第2の被写体の領域を抽出する被写体領域抽出ステップと、
    前記被写体領域抽出手段から得られる第1の被写体の領域と第2の被写体の領域の重なりを検出する重なり検出ステップとを有し、
    前記重ね画像生成ステップにおいて、基準画像と補正した他の1つあるいは2つの画像とを重ねる代わりに、基準画像と前記被写体領域抽出ステップから得られる領域内の補正した他の1つあるいは2つの画像とを重ねる
    ことを特徴とする画像合成方法。
  14. 請求項1から12のいずれか1項に記載の画像合成装置が備える各手段として、コンピュータを機能させるための画像合成プログラム。
  15. 請求項13に記載の画像合成方法が備える各ステップを、コンピュータに実行させるための画像合成プログラム。
  16. 請求項14または15に記載の画像合成プログラムを記録したコンピュータ読み取り可能な記録媒体。
JP2002233012A 2002-08-09 2002-08-09 画像合成装置、画像合成方法、画像合成プログラム、および画像合成プログラムを記録した記録媒体 Expired - Fee Related JP3983623B2 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2002233012A JP3983623B2 (ja) 2002-08-09 2002-08-09 画像合成装置、画像合成方法、画像合成プログラム、および画像合成プログラムを記録した記録媒体
CNB038216264A CN100477745C (zh) 2002-08-09 2003-07-03 图像合成装置和图象合成方法
AU2003246268A AU2003246268A1 (en) 2002-08-09 2003-07-03 Image combination device, image combination method, image combination program, and recording medium containing the image combination program
PCT/JP2003/008510 WO2004015987A1 (ja) 2002-08-09 2003-07-03 画像合成装置、画像合成方法、画像合成プログラム、および画像合成プログラムを記録した記録媒体
US10/523,770 US7623733B2 (en) 2002-08-09 2003-07-03 Image combination device, image combination method, image combination program, and recording medium for combining images having at least partially same background

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002233012A JP3983623B2 (ja) 2002-08-09 2002-08-09 画像合成装置、画像合成方法、画像合成プログラム、および画像合成プログラムを記録した記録媒体

Publications (2)

Publication Number Publication Date
JP2004072677A JP2004072677A (ja) 2004-03-04
JP3983623B2 true JP3983623B2 (ja) 2007-09-26

Family

ID=32018253

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002233012A Expired - Fee Related JP3983623B2 (ja) 2002-08-09 2002-08-09 画像合成装置、画像合成方法、画像合成プログラム、および画像合成プログラムを記録した記録媒体

Country Status (1)

Country Link
JP (1) JP3983623B2 (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4732299B2 (ja) * 2006-10-25 2011-07-27 富士フイルム株式会社 特定被写体像の検出方法およびデジタルカメラ
JP4930297B2 (ja) * 2007-09-10 2012-05-16 株式会社ニコン 撮像装置
JP4803319B2 (ja) * 2008-12-16 2011-10-26 カシオ計算機株式会社 撮像装置、画像処理方法及びプログラム
JP4760973B2 (ja) * 2008-12-16 2011-08-31 カシオ計算機株式会社 撮像装置及び画像処理方法
JP5907660B2 (ja) * 2011-02-28 2016-04-26 オリンパス株式会社 撮像装置
JP6253030B2 (ja) * 2015-02-06 2017-12-27 パナソニックIpマネジメント株式会社 画像処理装置、撮像装置および画像処理方法
US10536633B2 (en) 2015-02-06 2020-01-14 Panasonic Intellectual Property Management Co., Ltd. Image processing device, imaging system and imaging apparatus including the same, and image processing method
JP2018078404A (ja) * 2016-11-08 2018-05-17 ソニーセミコンダクタソリューションズ株式会社 画像処理装置、画像処理方法、撮像システム、及び、画像処理プログラム

Also Published As

Publication number Publication date
JP2004072677A (ja) 2004-03-04

Similar Documents

Publication Publication Date Title
WO2004015987A1 (ja) 画像合成装置、画像合成方法、画像合成プログラム、および画像合成プログラムを記録した記録媒体
JP4363151B2 (ja) 撮影装置、その画像処理方法及びプログラム
JP3847753B2 (ja) 画像処理装置、画像処理方法、記録媒体、コンピュータプログラム、半導体デバイス
US6621938B1 (en) Image capture apparatus and method
JP5360450B2 (ja) 画像処理装置、画像処理方法及びコンピュータプログラム
JP3983624B2 (ja) 画像合成装置、画像合成方法、画像合成プログラム、および画像合成プログラムを記録した記録媒体
US20060204135A1 (en) Image output apparatus, image output method and image output program
CN110610531A (zh) 图像处理方法、图像处理装置和记录介质
JP4875887B2 (ja) 画像合成システム及び画像合成方法
JP3983623B2 (ja) 画像合成装置、画像合成方法、画像合成プログラム、および画像合成プログラムを記録した記録媒体
JP2010072813A (ja) 画像処理装置および画像処理プログラム
JP4689548B2 (ja) 画像処理装置、画像処理方法、記録媒体、コンピュータプログラム、半導体デバイス
KR101518696B1 (ko) 증강현실 컨텐츠의 생성 및 재생 시스템과, 이를 이용한 방법
JP6663491B2 (ja) 画像処理装置、画像処理プログラム、および記録媒体
JP4363153B2 (ja) 撮影装置、その画像処理方法及びプログラム
JP7011728B2 (ja) 画像データ出力装置、コンテンツ作成装置、コンテンツ再生装置、画像データ出力方法、コンテンツ作成方法、およびコンテンツ再生方法
JP2007166383A (ja) デジタルカメラ及び画像合成方法並びにプログラム
JP4458720B2 (ja) 画像入力装置およびプログラム
KR20210029905A (ko) 누끼 사진 촬영과 이를 이용한 합성사진 촬영 방법 및 컴퓨터 프로그램
JP5263989B2 (ja) 画像配信システムおよび画像配信方法と画像配信プログラム
JP5854333B2 (ja) 画像出力装置
JP2007019694A (ja) ディジタルカメラの撮影画像処理装置と撮影画像処理用コンピュータプログラム
WO2019163385A1 (ja) 画像処理装置、画像処理方法及びプログラム
JP4767331B2 (ja) 画像処理装置、画像処理方法、記録媒体、コンピュータプログラム、半導体デバイス
KR20200029120A (ko) 듀얼 카메라를 이용한 배경 제거 사진 촬영 방법 및 컴퓨터 프로그램

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20041112

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070410

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070611

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20070611

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: 20070703

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070704

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100713

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110713

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120713

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120713

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130713

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees