(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-07-22
(45)【発行日】2022-08-01
(54)【発明の名称】画像処理装置、画像処理方法および画像処理プログラム
(51)【国際特許分類】
G06T 7/223 20170101AFI20220725BHJP
G06T 7/30 20170101ALI20220725BHJP
【FI】
G06T7/223
G06T7/30
(21)【出願番号】P 2020565065
(86)(22)【出願日】2019-01-09
(86)【国際出願番号】 JP2019000311
(87)【国際公開番号】W WO2020144760
(87)【国際公開日】2020-07-16
【審査請求日】2021-06-29
(73)【特許権者】
【識別番号】000000376
【氏名又は名称】オリンパス株式会社
(74)【代理人】
【識別番号】100118913
【氏名又は名称】上田 邦生
(74)【代理人】
【識別番号】100142789
【氏名又は名称】柳 順一郎
(74)【代理人】
【識別番号】100201466
【氏名又は名称】竹内 邦彦
(72)【発明者】
【氏名】梶村 康祐
(72)【発明者】
【氏名】岡澤 淳郎
【審査官】佐田 宏史
(56)【参考文献】
【文献】特開2007-257287(JP,A)
【文献】特開2016-126576(JP,A)
【文献】特開2010-193058(JP,A)
【文献】国際公開第2018/221224(WO,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G06T 1/00,7/00-7/90
H04N 5/232
(57)【特許請求の範囲】
【請求項1】
時系列に取得された複数の画像から選択された基準画像および参照画像に対して離散的な複数の測定領域を設定し、各該測定領域における動きベクトルを算出する動きベクトル算出部と、
前記基準画像に対して注目領域を設定する注目領域設定部と、
前記動きベクトル算出部により算出された複数の前記動きベクトルから、前記注目領域設定部により設定された前記注目領域内の前記動きベクトルを選択する動きベクトル選択部と、
該動きベクトル選択部により選択された前記動きベクトルを用いて前記注目領域の動きを表す射影変換行列を推定する行列推定部と、
該行列推定部により推定された前記射影変換行列と、前記動きベクトル算出部により算出された複数の前記動きベクトルとに基づいて、前記射影変換行列の誤差を評価する行列評価部とを備え、
前記注目領域設定部が、第1の注目領域に基づいて推定された前記射影変換行列の前記行列評価部における評価結果に基づいて、前記第1の注目領域よりも広げた第2の注目領域を設定する画像処理装置。
【請求項2】
前記行列評価部が、
複数の前記測定領域それぞれの位置座標に対して前記射影変換行列を適用した結果と前記動きベクトルとの誤差を算出する誤差算出部と、
該誤差算出部により算出された前記誤差が所定の閾値以上であるか否かを前記測定領域ごとに判定する誤差判定部とを備える請求項1に記載の画像処理装置。
【請求項3】
前記行列評価部が、
前記誤差判定部による判定結果に基づいて行列推定モードを選択する行列推定モード選択部を備える請求項2に記載の画像処理装置。
【請求項4】
前記行列推定モード選択部が、
前記誤差判定部による判定結果に基づいて前記注目領域を再設定して前記射影変換行列を推定し直す第1モードか、前記行列推定部により推定された前記射影変換行列とは異なる少なくとも1以上の他の射影変換行列を推定する第2モードかを選択する請求項3に記載の画像処理装置。
【請求項5】
前記注目領域設定部が、前記注目領域を再設定するとき、時系列に取得された前記画像の撮影情報に基づいて広げる領域の大きさを決定する請求項1から請求項4のいずれかに記載の画像処理装置。
【請求項6】
前記画像の撮影情報が絞り値であり、
前記注目領域設定部は、前記絞り値が大きいほど、広げる領域の大きさを大きくする請求項5に記載の画像処理装置。
【請求項7】
前記画像の撮影情報が被写体までの距離であり、
前記注目領域設定部は、前記距離が大きいほど、広げる領域の大きさを大きくする請求項5に記載の画像処理装置。
【請求項8】
前記動きベクトル選択部が、
前記動きベクトルの信頼度をさらに算出し、算出された前記信頼度に対する閾値を設定する動きベクトル信頼度閾値設定部と、
前記動きベクトルの前記測定領域が前記注目領域内であり、かつ、前記動きベクトルの前記信頼度が閾値以上である前記動きベクトルのみを抽出する動きベクトル抽出部とを備える請求項1から請求項7のいずれかに記載の画像処理装置。
【請求項9】
前記行列推定部が、
前記動きベクトルの位置座標の分布を解析した結果に基づいて前記注目領域を4分割し、分割された4つの領域から行列推定に用いる前記動きベクトルを決定する請求項1から請求項8のいずれかに記載の画像処理装置。
【請求項10】
前記注目領域設定部が、
ユーザが設定した領域を前記注目領域として設定する請求項1から請求項9のいずれかに記載の画像処理装置。
【請求項11】
前記注目領域設定部が、
時系列に取得された前記画像の合焦位置の少なくとも一部を含む領域を前記注目領域として設定する請求項1から請求項9のいずれかに記載の画像処理装置。
【請求項12】
前記行列推定部により推定された前記射影変換行列を用いて、前記基準画像と前記参照画像とを位置合わせして合成する画像合成部を備える請求項1から請求項11のいずれかに記載の画像処理装置。
【請求項13】
プロセッサが、
時系列に取得された複数の画像から選択された基準画像および参照画像に対して離散的な複数の測定領域を設定し、各該測定領域における動きベクトルを算出し、
前記基準画像に対して注目領域を設定し、
算出された複数の前記動きベクトルから、設定された前記注目領域内の前記動きベクトルを選択し、
選択された該動きベクトルを用いて前記注目領域の動きを表す射影変換行列を推定し、
推定された該射影変換行列と、算出された複数の前記動きベクトルとに基づいて、前記射影変換行列を評価し、
評価結果に基づいて、設定された前記注目領域よりも広げたあらたな注目領域を再設定する画像処理方法。
【請求項14】
時系列に取得された複数の画像から選択された基準画像および参照画像に対して離散的な複数の測定領域を設定し、各該測定領域における動きベクトルを算出するステップと、
前記基準画像に対して注目領域を設定するステップと、
算出された複数の前記動きベクトルから、設定された前記注目領域内の前記動きベクトルを選択するステップと、
選択された前記動きベクトルを用いて前記注目領域の動きを表す射影変換行列を推定するステップと、
推定された前記射影変換行列と、算出された複数の前記動きベクトルとに基づいて、前記射影変換行列を評価するステップと、
評価結果に基づいて、設定された前記注目領域よりも広げたあらたな注目領域を再設定するステップとを実行する画像処理プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像処理装置、画像処理方法および画像処理プログラムに関するものである。
【背景技術】
【0002】
複数枚の画像を位置合わせする技術として、位置ずれ量を射影変換行列によってモデル化する手法がある。これは、複数枚の撮像画像の中から任意に選択された基準画像および参照画像に対して、オプティカルフローあるいは特徴点マッチング等により特徴的な領域の画像間における位置ずれ量を求め、位置ずれ量の情報を用いて画像全体の幾何学的な変化を推定することにより、各画素位置の位置合わせ量を算出するものである。
【0003】
射影変換行列を用いた位置ずれ量の算出は、奥行きのある被写体が含まれなければ、画像全体のどの方向にどれだけ移動したかを正しく算出できる。しかしながら、近距離平面と遠距離平面とが混在する奥行きのある被写体の場合には、撮像装置から被写体までの距離に応じて撮像面上での画像間の位置ずれ量が異なる。
【0004】
被写体距離が近い物体ほど撮像面上での位置ずれ量は大きく、被写体距離が遠いほど撮像面上での位置ずれ量は小さくなる。そのため、距離平面ごとに適切な射影変換行列を推定する必要がある。領域ごとに適切な射影変換行列を適用できない場合には、正しい位置合わせができず、位置合わせ誤差によるアーティファクトが発生する。
【0005】
適切な位置合わせを行うために、画像全体の動き推定を行うための動きベクトルの選択規則を設定する技術が知られている(例えば、特許文献1参照。)。また、主要被写体領域の情報を利用して動きベクトルの重みづけを行うことにより主要被写体を適切に位置合わせする技術も知られている(例えば、特許文献2参照。)。
【先行技術文献】
【特許文献】
【0006】
【文献】特開平9-212649号公報
【文献】特開2009-188837号公報
【発明の概要】
【発明が解決しようとする課題】
【0007】
しかしながら、特許文献1の技術では、画像全体から動きベクトルを選択するので、被写体によらず、画像全体の動き推定を行うため、主要被写体と背景被写体の間の奥行き差が大きい場合には主要被写体と背景被写体の両方を適切に位置合わせすることができず、主要被写体と背景被写体のいずれか、もしくは、どちらも位置ずれが生ずるリスクがある。
【0008】
また、特許文献2の技術では、奥行き差がない平面的な被写体である場合に、画像全体を主要被写体領域として認識できなければ問題が発生する。すなわち、画像の一部が主要被写体領域であると認識されてしまうと、その領域の動きベクトルを重要視して優先的に位置合わせが行われるため、主要被写体領域から空間的に離れた領域における位置合わせ精度が低下して位置ずれが発生するという問題がある。そのため、画像全体を適切に位置合わせするには主要被写体の認識精度を向上する必要があり、動き推定の前処理における処理コストが大きくなるという不都合がある。
【0009】
本発明は、主要被写体と背景被写体との奥行き差の大小にかかわらず、それぞれの被写体に適した方法で位置合わせを正しく行うことができる画像処理装置、画像処理方法および画像処理プログラムを提供することを目的としている。
【課題を解決するための手段】
【0010】
本発明の一態様は、時系列に取得された複数の画像から選択された基準画像および参照画像に対して離散的な複数の測定領域を設定し、各該測定領域における動きベクトルを算出する動きベクトル算出部と、前記基準画像に対して注目領域を設定する注目領域設定部と、前記動きベクトル算出部により算出された複数の前記動きベクトルから、前記注目領域設定部により設定された前記注目領域内の前記動きベクトルを選択する動きベクトル選択部と、該動きベクトル選択部により選択された前記動きベクトルを用いて前記注目領域の動きを表す射影変換行列を推定する行列推定部と、該行列推定部により推定された前記射影変換行列と、前記動きベクトル算出部により算出された複数の前記動きベクトルとに基づいて、前記射影変換行列の誤差を評価する行列評価部とを備え、前記注目領域設定部が、第1の注目領域に基づいて推定された前記射影変換行列の前記行列評価部における評価結果に基づいて、前記第1の注目領域よりも広げた第2の注目領域を設定する画像処理装置である。
【0011】
本態様によれば、時系列に取得された複数の画像から選択された基準画像と参照画像について、動きベクトル算出部により離散的な複数の測定領域が設定され、各測定領域における動きベクトルが算出され、注目領域設定部により基準画像に対して第1の注目領域が設定される。そして、動きベクトル選択部において、算出された複数の動きベクトルを用いて、第1の注目領域内の動きベクトルが選択され、行列推定部により、選択された動きベクトルを用いて射影変換行列が推定される。推定された射影変換行列の誤差が、行列評価部において、動きベクトルに基づいて評価される。
【0012】
この場合において、第1の注目領域に基づいて推定された射影変換行列の評価結果に基づいて第1の注目領域よりも広げた第2の注目領域が設定され、設定された第2の注目領域を用いて動きベクトルの選択、射影変換行列の推定が行われる。すなわち、第1の注目領域で推定された射影変換行列よりも、領域を広げた第2の注目領域で推定された射影変換行列の方が、画像の周辺の動きを考慮したものとなるので、推定された射影変換行列を用いて画像の周辺まで位置ずれの少ない合成画像を生成することができる。
【0013】
上記態様においては、前記行列評価部が、複数の前記測定領域それぞれの位置座標に対して前記射影変換行列を適用した結果と前記動きベクトルとの誤差を算出する誤差算出部と、該誤差算出部により算出された前記誤差が所定の閾値以上であるか否かを前記測定領域ごとに判定する誤差判定部とを備えていてもよい。
この構成により、行列評価部により射影変換行列の誤差を容易に評価することができる。
【0014】
また、上記態様においては、前記行列評価部が、前記誤差判定部による判定結果に基づいて行列推定モードを選択する行列推定モード選択部を備えていてもよい。
この構成により、被写体における奥行きの有無に合わせて、適正な行列推定モードを切り替えて適用することができる。
【0015】
また、上記態様においては、前記行列推定モード選択部が、前記誤差判定部による判定結果に基づいて前記注目領域を再設定して前記射影変換行列を推定し直す第1モードか、前記行列推定部により推定された前記射影変換行列とは異なる少なくとも1以上の他の射影変換行列を推定する第2モードかを選択してもよい。
この構成により、奥行きが少ない平面的な被写体を撮影した画像については、第1モードにより注目領域を再設定して射影変換行列を推定し、奥行きの大きな被写体を撮影した画像については、第2モードにより領域ごとに異なる射影変換行列を適用して、領域ごとに適正な位置合わせを行うことができる。
【0016】
また、上記態様においては、前記注目領域設定部が、前記注目領域を再設定するとき、時系列に取得された前記画像の撮影情報に基づいて広げる領域の大きさを決定してもよい。
この構成により、画像の撮影情報に基づいて簡易に注目領域を適正に広げることができる。
【0017】
また、上記態様においては、前記画像の撮影情報が絞り値であり、前記注目領域設定部は、前記絞り値が大きいほど、広げる領域の大きさを大きくしてもよい。
この構成により、絞り値が大きいほど画像の隅々まで合焦しているため、より広い注目領域を用いて推定された射影変換行列により、画像の周辺まで位置ずれの少ない合成画像を生成することができる。
【0018】
また、上記態様においては、前記画像の撮影情報が被写体までの距離であり、前記注目領域設定部は、前記距離が大きいほど、広げる領域の大きさを大きくしてもよい。
この構成により、被写体までの距離が大きいほど画像間の動き量自体が小さくなるため、より広い注目領域を用いて推定された射影変換行列により、画像の周辺まで位置ずれの少ない合成画像を生成することができる。
【0019】
また、上記態様においては、前記動きベクトル選択部が、前記動きベクトルの信頼度をさらに算出し、算出された前記信頼度に対する閾値を設定する動きベクトル信頼度閾値設定部と、前記動きベクトルの前記測定領域が前記注目領域内であり、かつ、前記動きベクトルの前記信頼度が閾値以上である前記動きベクトルのみを抽出する動きベクトル抽出部とを備えていてもよい。
【0020】
動きベクトルの信頼度は、例えば、測定領域が低コントラストである場合、あるいは高周波の縞模様である場合等、サブピクセル精度での動き推定が失敗しそうなときに小さくなる。
この構成により、動きベクトルの信頼度が閾値以上であり、正しい動きが推定できたと考えられる測定領域の動きベクトルのみが抽出されるので、位置ずれの少ない合成画像を生成することができる。
【0021】
また、上記態様においては、前記行列推定部が、前記動きベクトルの位置座標の分布を解析した結果に基づいて前記注目領域を4分割し、分割された4つの領域から行列推定に用いる前記動きベクトルを決定してもよい。
この構成により、注目領域内全体を適切に位置合わせする射影変換行列を推定することができる。
【0022】
また、上記態様においては、前記注目領域設定部が、ユーザが設定した領域を前記注目領域として設定してもよい。
また、上記態様においては、前記注目領域設定部が、時系列に取得された前記画像の合焦位置の少なくとも一部を含む領域を前記注目領域として設定してもよい。
また、上記態様においては、前記行列推定部により推定された前記射影変換行列を用いて、前記基準画像と前記参照画像とを位置合わせして合成する画像合成部を備えていてもよい。
【0023】
また、本発明の他の態様は、プロセッサが、時系列に取得された複数の画像から選択された基準画像および参照画像に対して離散的な複数の測定領域を設定し、各該測定領域における動きベクトルを算出し、前記基準画像に対して注目領域を設定し、算出された複数の前記動きベクトルから、設定された前記注目領域内の前記動きベクトルを選択し、選択された該動きベクトルを用いて前記注目領域の動きを表す射影変換行列を推定し、推定された該射影変換行列と、算出された複数の前記動きベクトルとに基づいて、前記射影変換行列を評価し、評価結果に基づいて、設定された前記注目領域よりも広げたあらたな注目領域を再設定する画像処理方法である。
【0024】
また、本発明の他の態様は、時系列に取得された複数の画像から選択された基準画像および参照画像に対して離散的な複数の測定領域を設定し、各該測定領域における動きベクトルを算出するステップと、前記基準画像に対して注目領域を設定するステップと、算出された複数の前記動きベクトルから、設定された前記注目領域内の前記動きベクトルを選択するステップと、選択された前記動きベクトルを用いて前記注目領域の動きを表す射影変換行列を推定するステップと、推定された前記射影変換行列と、算出された複数の前記動きベクトルとに基づいて、前記射影変換行列を評価するステップと、評価結果に基づいて、設定された前記注目領域よりも広げたあらたな注目領域を再設定するステップとを実行する画像処理プログラムである。
【発明の効果】
【0025】
本発明によれば、主要被写体と背景被写体との奥行き差の大小にかかわらず、それぞれの被写体に適した方法で位置合わせを正しく行うことができるという効果を奏する。
【図面の簡単な説明】
【0026】
【
図1】本発明の一実施形態に係る画像処理装置を備える撮像装置を示すブロック図である。
【
図2】
図1の撮像装置の画像取得部により取得された基準画像の一例を示す図である。
【
図3】
図1の撮像装置の画像取得部により取得された参照画像の一例を示す図である。
【
図4】
図2の基準画像および
図3の参照画像に設定される測定領域の一例を示す図である。
【
図5】
図2の基準画像に
図4の測定領域および測定領域ごとに算出された動きベクトルを重ねて示す図である。
【
図6】
図2の基準画像に設定された第1の注目領域の一例を示す図である。
【
図7】
図1の撮像装置の動きベクトル選択部を示すブロック図である。
【
図9】
図1の撮像装置の行列評価部を示すブロック図である。
【
図10】
図1の撮像装置の行列推定モード選択部を示すブロック図である。
【
図11】
図6の第1の注目領域に対して設定された第2の注目領域の一例を示す図である。
【
図12】
図6の第1の注目領域に対して設定された第2の注目領域の他の例を示す図である。
【
図13】
図10の行列推定モード選択部により第2モードが選択された場合の2つの射影変換行列をそれぞれ適用する領域の一例を示す図である。
【
図14】
図5と同様の動きベクトルに信頼度を重畳して示す図である。
【
図16】
図15の信頼度の高い動きベクトルのみを抽出し、重心位置および注目領域を4つに分割する分割線を重ねて示す図である。
【発明を実施するための形態】
【0027】
本発明の一実施形態に係る画像処理装置1について、図面を参照して以下に説明する。
本実施形態に係る画像処理装置1は、
図1に示されるように、撮像装置100に備えられている。撮像装置100は、被写体の画像を時系列に複数取得する画像取得部110を備えている。画像取得部110はカメラである。
【0028】
画像処理装置1は、フレームメモリ2、動きベクトル算出部3、注目領域設定部4、動きベクトル選択部5、行列推定部6、行列評価部7、行列推定モード選択部8および画像合成部9を備えている。画像処理装置1は、プロセッサおよびメモリにより構成されている。
【0029】
フレームメモリ2は、画像取得部110により取得された画像等を逐次記憶する。
動きベクトル算出部3は、フレームメモリ2に記憶された画像内から、
図2に示される基準画像P1と、
図3に示される参照画像P2とを選択し、選択された基準画像P1および参照画像P2に対して離散的な複数の測定領域A1を設定して、各設定領域における動きベクトルを算出する。
【0030】
動きベクトル算出部3は、例えば、
図4に示されるように、基準画像P1および参照画像P2において、32×32画素を1つの測定領域A1として複数の離散的な領域を設定し、ブロックマッチング法等の公知の手法を用いて、
図5に示されるように、画像上の水平方向と垂直方向の動きベクトル値を取得する。さらに、動きベクトル算出部3は、評価値の分布から等角直線フィッティングあるいはパラボラフィッティングを用いてサブピクセル精度の動き情報を推定する。
【0031】
注目領域設定部4は、フレームメモリ2に記憶されている画像P1,P2に対して注目領域A2を設定する。
図6に示されるように、注目領域設定部4は、第1の注目領域(注目領域)A2を設定し、後述する行列評価部7における評価結果に基づいて第1の注目領域A2よりも大きさを広げた第2の注目領域(注目領域)A3を再設定する。
【0032】
第1の注目領域A2の設定方法としては、例えば、基準画像P1取得時の合焦位置を利用すればよい。基準画像P1取得時に
図6に示されるようにオートフォーカス(AF)エリアを設定して撮影されたとき、AFエリアを含む領域を第1の注目領域A2として設定する。第1の注目領域A2はAFエリアの少なくとも一部を含む位置および大きさに設定されればよい。なお、第1の注目領域A2は、ユーザが任意に設定してもよい。
【0033】
動きベクトル選択部5は、
図7に示されるように、動きベクトル信頼度閾値設定部51と、動きベクトル抽出部52とを備えている。動きベクトル信頼度閾値設定部51は、動きベクトルの信頼度の閾値を設定する。動きベクトルの信頼度は、例えば、測定領域A1が低コントラストである場合、あるいは、高周波の縞模様である場合など、サブピクセル精度での動き推定が失敗しそうな場合に小さくなる。
【0034】
動きベクトル抽出部52は、動きベクトル信頼度閾値設定部51により設定された閾値を用いて、正しい動きが推定できたと考えられる測定領域A1の動きベクトルであり、かつ、注目領域A2内に存在する動きベクトルのみを抽出する。
【0035】
あるシーンにおいて、
図2に示される1枚目に撮影された画像を基準画像P1とし、
図3に示される2枚目に撮影された画像を参照画像P2としたときに、2枚の画像P1、P2間で算出された動きベクトルの一例を
図5に示す。
動きベクトル抽出部52により、
図8に破線で示される第1の注目領域A2内の動きベクトルが抽出される。
【0036】
行列推定部6は、動きベクトル選択部5において選択された動きベクトルから射影変換行列を算出する。射影変換行列は、4点の動きベクトル情報、すなわち、動きベクトルの測定領域の位置座標(x_n,y_n)とその位置における動きベクトル(mvx_n,mvy_n)(n=1,2,3,4)とがあれば推定できる。多数の動きベクトルがある場合には、例えば、公知のRANSACアルゴリズム等を用いて最適な射影変換行列を推定することができる。
【0037】
行列評価部7は、
図9に示されるように、誤差算出部71、誤差閾値設定部72および誤差判定部73を備えている。
誤差算出部71は、測定領域A1それぞれの位置座標に対して射影変換行列を適用した結果と、動きベクトルとの誤差を算出する、動きベクトルが算出された基準画像P1上の測定領域A1の座標位置(x,y)、推定された射影変換行列H1を数1とすると、射影変換後の座標位置(x´,y´)は数2となる。
【0038】
【0039】
また、座標位置(x,y)における動きベクトルを(mvx,mvy)とすると、射影変換行列H1の誤差eは数3となる。
【数3】
【0040】
誤差判定部73は、誤差閾値設定部72により設定された閾値e_THと誤差算出部71により算出された誤差eとを比較する。誤差eが閾値e_TH未満である場合には、推定された射影変換行列H1によって適切に位置合わせ可能な測定領域A1であると判断する。誤差eが閾値e_TH以上である場合には、推定された射影変換行列H1で画像の位置合わせを行うと位置ずれが生ずる可能性があるため不適切な射影変換行列であると判断する。基準画像P1中の動きベクトルの測定領域A1の全ての位置座標に対して誤差を評価する。
【0041】
行列推定モード選択部8は、行列評価部7による評価結果に基づいて行列推定モードを選択する。行列推定モード選択部8は、
図10に示されるように、モード切替閾値設定部81とモード選択部82とを備え、行列評価部7において誤差が判定された画面全体の動きベクトルの数に対して、位置合わせに適切と判定された動きベクトルの数(インライア数)の割合に基づいて行列推定モードを選択する。
【0042】
モード切替のための閾値modeTHは予め設定されており、例えば、modeTH=0.8(80%)である。この場合には、インライア数が80%以上であれば第1モード、80%未満であれば第2モードのように切り替える。第1モードは注目領域A3を再設定して射影変換行列を推定し直すモードであり、第2モードは第1の射影変換行列とは異なる少なくとも1つ以上の射影変換行列を推定するモードである。
【0043】
具体的には、モード選択部82により第1モードが選択された場合には、被写体に奥行きがなく平面的であると考えられるので、基準画像P1全体を適切に位置合わせするために、注目領域設定部4により注目領域A3を再設定する。再設定の例としては、
図11に示されるように、最初の第1の注目領域A2よりも領域サイズを広げた第2の注目領域A3を設定する。そして、設定された第2の注目領域A3を用いて第2の射影変換行列H2が推定される。
【0044】
これによれば、第1の注目領域A2で射影変換行列H1を推定する場合よりも基準画像P1の周辺の動きベクトルを用いて射影変換行列H2を推定することができ、基準画像P1の周辺の動きを考慮した射影変換行列が求まり易くなる。
画像合成部9は、再設定された第2の注目領域A3を用いて推定された第2の射影変換行列H2を用いて、フレームメモリ2に記憶されている基準画像P1と参照画像P2とを合成する。これにより、画像の周辺まで位置ずれの少ない合成画像を生成することができる。
【0045】
なお、第2の注目領域A3の設定方法は、
図12に示されるように、全体画像を第2の注目領域A3として再設定してもよい。これにより、さらに画像周辺の動きを考慮した適切な射影変換行列H2を算出することができる。
【0046】
また、その他の設定方法として、撮影された画像P1,P2の撮影情報に基づいて広げる領域の大きさを決めることにしてもよい。
例えば、画像を撮影した際の絞り値が大きいほど、領域を大きく広げることが考えられる。被写体が平面的である場合には、絞り値が大きいほど画像の隅々まで合焦しており、画像P1,P2間の動きベクトルも精度よく推定されると考えられるため、第2の注目領域A3の大きさを大きくする。逆に、絞り値が小さいほど、平面的な被写体であっても画像周辺のピントが甘くなり、動きベクトルの推定精度が低下する可能性があるため、第2の注目領域A3の大きさを小さくする。
【0047】
また、画像P1,P2の撮影時の被写体距離が遠いほど第2の注目領域A3の大きさを広げてもよい。被写体の距離が遠いほど画像P1,P2間の動き量自体が小さくなるため、小さな注目領域A3では画像の微小な回転成分がうまく推定できない可能性がある。そこで、被写体の距離が遠いほど画像P1,P2全体に近い大きさの領域を第2の注目領域A3に設定することにより、適切な射影変換行列H2を推定することができる。また、レンズの焦点距離が短いほど第2の注目領域A3を広げることにしてもよい。
【0048】
また、行列推定モード選択部8により第2モードが選択された場合には、推定した射影変換行列H1では適切に位置合わせできない領域が多いことになるので、誤差が閾値以上であった複数の測定領域A1の動きベクトルを用いて異なる射影変換行列H2を推定する。
例えば、
図13に示されるように、第1の注目領域A2から算出された射影変換行列H1を用いて行列評価部7により射影変換行列H1を評価した結果、誤差が閾値未満であった測定領域A1が太線枠で囲まれた領域、誤差が閾値以上であった測定領域A1が網掛け領域となった場合に、網掛け領域を用いて別の射影変換行列H2を求める。
【0049】
これにより、画像合成部9においては、2つの射影変換行列H1,H2を用いて画素ごと、もしくは領域ごとに適切な射影変換行列H1,H2を選択しながら位置合わせを行うことができるという利点がある。
【0050】
なお、第2モードが選択された場合には、異なる射影変換行列を1つだけ算出して射影変換行列の推定を終了してもよいし、異なる射影変換行列を2つ以上算出してもよい。算出手順としては、行列推定部6により射影変換行列H2が求められ、行列評価部7における射影変換行列H2の評価の結果、誤差が閾値以上である割合が閾値hTHより大きい場合には3つめの射影変換行列H3を求める。誤差が閾値以上である割合が閾値hTH未満となった時点で行列の推定処理を終了すればよい。
【0051】
画像合成部9は、算出された1以上の射影変換行列を用いて基準画像P1と参照画像P2とを位置合わせして合成する。このようにすることで、n個の射影変換行列を用いて画素ごと、もしくは領域ごとに適切な射影変換行列を選択しながら位置合わせを行うことができる。画像合成部9において合成された合成画像はフレームメモリ2に記憶される。
【0052】
なお、行列推定部6においては、以下の方法により行列推定を行う際に用いる動きベクトルを決定してもよい。
すなわち、動きベクトル選択部5において、信頼性が高くかつ第1の注目領域A2内の動きベクトルが抽出された後に、行列推定部6において、抽出された動きベクトルの重心位置座標を算出する。そして、算出された重心位置を中心として第1の注目領域A2を4つに分割し、分割された4つの領域のそれぞれから行列推定に用いる動きベクトルを決定する。
【0053】
例えば、
図14に示される測定領域A1において、画像P1,P2間の動きベクトルが算出された場合に、動きベクトルの信頼性が高い測定領域A1を実線で、動きベクトルの信頼性が低い測定領域A1を破線で示す。また、
図14において、第1の注目領域A2を一転鎖線で囲まれた領域とする。
【0054】
この場合、動きベクトルの信頼性が高く、かつ、第1の注目領域A2内の動きベクトルは、
図15に示されるように抽出される。
また、これらの抽出された動きベクトルの重心位置Gを算出すると、
図16の通りとなる。
【0055】
算出された重心位置Gを中心として、重心位置Gを通過する水平線および水平線に直交する垂直線により領域を4つに分割し、分割された各領域から、任意の動きベクトルを1つずつ選ぶ。そして、選ばれた4つの動きベクトルを用いて、RANSACアルゴリズム等により射影変換行列を求める。これにより、第1の注目領域A2内全体を適切に位置合わせする射影変換行列を推定することができる。
【0056】
なお、信頼性の高いベクトルの重心座標を用いて4分割する方法に代えて、単純に第1の注目領域A2の中心座標を用いて4分割してもよい。また、第2の注目領域A3を設定する場合にも本手法を適用することができ、特に、画像P1,P2全体を第2の注目領域A3として設定した場合には、画像P1,P2の4隅あるいは4隅に近い領域に位置する動きベクトルをそれぞれ用いて行列推定を行うことができ、画像P1,P2全体を適切に位置合わせする射影変換行列を推定することができる。
【0057】
また、本発明においては、合成画像の解像度について特に限定するものではなく、撮影により取得された画像と同じ解像度の合成画像を生成してもよいし、撮影により取得された画像よりも解像度の高い合成画像を生成してもよい。撮影により取得された画像P1,P2に対して水平方向および垂直方向にそれぞれ2倍の解像度を有する高解像度画像を合成する場合には、画素毎にサブピクセル精度で位置合わせすればよい。
【符号の説明】
【0058】
1 画像処理装置
3 動きベクトル算出部
4 注目領域設定部
5 動きベクトル選択部
6 行列推定部
7 行列評価部
8 行列推定モード選択部
9 画像合成部
51 動きベクトル信頼度閾値設定部
52 動きベクトル抽出部
71 誤差算出部
73 誤差判定部
A1 測定領域
A2 第1の注目領域(注目領域)
A3 第2の注目領域(注目領域)
H1,H2,H3 射影変換行列
P1 基準画像(画像)
P2 参照画像(画像)