JP2010041416A - 画像処理装置、画像処理方法、画像処理プログラム、及び、撮像装置 - Google Patents
画像処理装置、画像処理方法、画像処理プログラム、及び、撮像装置 Download PDFInfo
- Publication number
- JP2010041416A JP2010041416A JP2008202195A JP2008202195A JP2010041416A JP 2010041416 A JP2010041416 A JP 2010041416A JP 2008202195 A JP2008202195 A JP 2008202195A JP 2008202195 A JP2008202195 A JP 2008202195A JP 2010041416 A JP2010041416 A JP 2010041416A
- Authority
- JP
- Japan
- Prior art keywords
- motion vector
- image
- contribution
- lens
- reliability
- 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.)
- Withdrawn
Links
- 238000012545 processing Methods 0.000 title claims abstract description 122
- 238000003384 imaging method Methods 0.000 title claims abstract description 24
- 238000003672 processing method Methods 0.000 title claims description 6
- 239000013598 vector Substances 0.000 claims abstract description 407
- 238000005259 measurement Methods 0.000 claims abstract description 114
- 238000004364 calculation method Methods 0.000 claims abstract description 110
- 230000004075 alteration Effects 0.000 claims abstract description 103
- 230000010354 integration Effects 0.000 claims abstract description 23
- 238000012937 correction Methods 0.000 claims description 66
- 238000000034 method Methods 0.000 claims description 56
- 230000009466 transformation Effects 0.000 claims description 31
- 230000004048 modification Effects 0.000 claims description 19
- 238000012986 modification Methods 0.000 claims description 19
- 230000003287 optical effect Effects 0.000 claims description 8
- 230000008569 process Effects 0.000 description 24
- 238000013403 standard screening design Methods 0.000 description 19
- 230000000875 corresponding effect Effects 0.000 description 13
- PXFBZOLANLWPMH-UHFFFAOYSA-N 16-Epiaffinine Natural products C1C(C2=CC=CC=C2N2)=C2C(=O)CC2C(=CC)CN(C)C1C2CO PXFBZOLANLWPMH-UHFFFAOYSA-N 0.000 description 8
- 238000010586 diagram Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 4
- 241000226585 Antennaria plantaginifolia Species 0.000 description 2
- 230000002596 correlated effect Effects 0.000 description 2
- 238000000844 transformation Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
Landscapes
- Image Processing (AREA)
- Studio Devices (AREA)
Abstract
【課題】収差を有するレンズを備える撮像装置から得られた複数枚の画像に対して、精度の良い位置合わせを行う。
【解決手段】画像の変形により複数枚の画像の位置合わせ処理を行う画像処理装置は、動きベクトルを測定するための複数の測定領域を設定する領域設定部(103)と、前記複数の動きベクトル測定領域に対して算出された動きベクトルの信頼度を算出する信頼度算出部(105)と、前記複数枚の画像を撮影する撮影レンズのレンズ特性を取得するレンズ特性取得部(107)と、各動きベクトルを算出した動きベクトル測定領域の位置と前記レンズ特性とに基づいて、各動きベクトルの寄与度を算出する寄与度算出部(1061)と、前記信頼度と前記寄与度に応じて、前記複数の動きベクトル測定領域の動きベクトルを統合することにより、少なくとも一つの画像間動きベクトルを算出する統合演算処理部(1062)と、を備える。
【選択図】図2
【解決手段】画像の変形により複数枚の画像の位置合わせ処理を行う画像処理装置は、動きベクトルを測定するための複数の測定領域を設定する領域設定部(103)と、前記複数の動きベクトル測定領域に対して算出された動きベクトルの信頼度を算出する信頼度算出部(105)と、前記複数枚の画像を撮影する撮影レンズのレンズ特性を取得するレンズ特性取得部(107)と、各動きベクトルを算出した動きベクトル測定領域の位置と前記レンズ特性とに基づいて、各動きベクトルの寄与度を算出する寄与度算出部(1061)と、前記信頼度と前記寄与度に応じて、前記複数の動きベクトル測定領域の動きベクトルを統合することにより、少なくとも一つの画像間動きベクトルを算出する統合演算処理部(1062)と、を備える。
【選択図】図2
Description
複数枚の画像の位置合わせ(画像のブレの補正を含む)を行う画像処理装置、画像処理方法、画像処理プログラム、及び、撮像装置に関する。
従来、画像のブレ補正等において画像の動きベクトルを検出する手段として、ブロックマッチング法や相関演算に基づく相関法が知られている。
ブロックマッチング法では、入力された画像を、複数の適当な大きさのブロック(例えば8画素×8ライン)に分割する。このブロックの単位で、現在のフィールド(フレーム)と前のフィールドの一定範囲との画素値の差分が計算される。さらに、この差分に基づいて、現在のフィールドのあるブロックに対して相関の高い前のフィールドのブロックを探索する。そして、両ブロック間の相対的なズレが、ブロックの動きベクトルとなる。
ブロックマッチングでの相関の高いブロックの探索方法として、画素値の差分の二乗和である誤差二乗和SSD、画素値の差分の絶対値和である誤差絶対値和SADによって相関を評価することが行われる。SSD、SADが小さいほど相関が高いと評価する。SSDとSADは、それぞれ以下の数式(1)、(2)で表される。
ここで、pは、現在のフィールドのマッチングの基準ブロック領域I内の画素位置、qは、前のフィールドのマッチングの対象とするブロック領域I'内の画素位置(画素位置pに対応する位置)を示す。従って、p及びqは、2次元の値を持つ量であり、I、I'は、それぞれ、現在のフィールドと前のフィールドの2次元の領域を示す。p∈Iは、座標pが領域Iに含まれていること、q∈I'は、座標qが領域I'に含まれていることを示す。さらに、画素位置p、qの画素値をLp、Lqとする。
一方、相関演算に基づく相関法では、マッチングの基準ブロック領域Iおよび対象とするブロック領域I'のそれぞれに含まれる画素p∈Iおよび、q∈I'の平均値Ave(Lp)、Ave(Lq)を算出する。さらに、各ブロックに含まれる画素値とこの平均値の差分を以下の数式(3)により計算する。
続いて、正規化相互相関NCCを数式(4)により計算する。
正規化相互相関NCCの大きいブロックを相関の高いブロックと評価し、最も相関の高いブロックI'とIの間のズレを動きベクトルとする。
画像に含まれている被写体や撮影対象が静止している場合、個々の領域での動きと画像全体の動きは一致している。従って、この場合には、上記の相関演算を行うブロックは任意の固定位置に配置して、その動きベクトルを算出すれば良い。
なお、ノイズの影響により信頼性の高い動きベクトルが得られない場合や、ブロックが平坦部又はブロックに比べて大きい構造のエッジ部にかかっており信頼性の高い動きベクトルが得られない場合がある。このような場合を排除する為に、動きベクトルを算出する際の信頼性判定を行う技術が、例えば特許文献1や特許文献2に開示されている。
また、画像に含まれている被写体や撮影対象に複数の動きが含まれている場合は、例えばブレ補正を目的として、画像全体の動きベクトルを算出することが課題となる。特許文献3では、被写体を複数の領域に分割し、複数の領域のうちで動きベクトルの大きさや領域の大きさなどで重要な領域を選択し、その領域の動きベクトルを全体の動きベクトルとしている。
この場合、領域選択手段は、以下の(i)-(iv)のいずれかのような重要な領域を選択する。
(i)複数の領域のうち最も範囲が大きな領域
(ii)複数の領域のうち最も動きベクトルが小さな領域
(iii)複数の領域のうち前回選択した領域に重なる範囲が最も大きな領域
(iv)最も範囲が大きな領域と、最も動きベクトルが小さな領域と、前回選択した領域に重なる範囲が最も大きな領域のうちの何れかの領域
ところで、収差の大きいレンズを備える撮像装置に対して電子式ブレ補正等の位置合わせを行う場合に、画像の収差による変形量が画像内の位置ごとに異なるため問題となる。例えば、広角レンズ等では、画像の歪曲収差による変形量が像高毎に異なる。このため、収差の大きいレンズで撮影した複数枚の画像間では、画像間動きベクトル(補正ベクトル)を決定することが困難になる。これは、収差がない場合の像上での動きベクトルと、収差がある場合の像上での動きベクトルとの対応関係が、画像内の位置ごと(例えば、像高毎)に異なるためである。
(i)複数の領域のうち最も範囲が大きな領域
(ii)複数の領域のうち最も動きベクトルが小さな領域
(iii)複数の領域のうち前回選択した領域に重なる範囲が最も大きな領域
(iv)最も範囲が大きな領域と、最も動きベクトルが小さな領域と、前回選択した領域に重なる範囲が最も大きな領域のうちの何れかの領域
ところで、収差の大きいレンズを備える撮像装置に対して電子式ブレ補正等の位置合わせを行う場合に、画像の収差による変形量が画像内の位置ごとに異なるため問題となる。例えば、広角レンズ等では、画像の歪曲収差による変形量が像高毎に異なる。このため、収差の大きいレンズで撮影した複数枚の画像間では、画像間動きベクトル(補正ベクトル)を決定することが困難になる。これは、収差がない場合の像上での動きベクトルと、収差がある場合の像上での動きベクトルとの対応関係が、画像内の位置ごと(例えば、像高毎)に異なるためである。
例えば、図1(a)の樽型の歪曲収差の場合、像高の大きい領域では、画像間の動きベクトルは、収差がない場合より小さく見積もられる。一方、図1(b)の糸巻き型の歪曲収差の場合、逆に、画像間の動きベクトルは、収差がない場合より大きく見積もられる。
特許文献4では、歪曲収差に対する対策として、歪曲収差の補正を行った後の画像に対して、画像間の動きベクトルを決定して電子式ブレ補正を行うことを提案している。
特開平8−163573号公報
特許第3164121号公報
特開平8−251474号公報
特開2007−129587号公報
一方、電子ブレ補正に於いて、画像が2重化して見えないためには、画角の水平方向に対して1/1000程度の位置合わせの精度が要求される。即ち、水平方向で3000画素の解像度を持っていれば3画素程度の位置合わせの精度が必要になる。
しかし、特許文献4のように収差の補正を行った後の画像に対して画像間の動きベクトルを決定する場合、像の収差補正の精度が電子ブレ補正での要求精度より劣ると、画像間動きベクトルが正確に決定できない。このため、位置合わせやブレ補正が正確にできなくなる。
本発明では、収差を有するレンズを備える撮像装置から得られた複数枚の画像に対して、簡易に精度の良い位置合わせを行うことを目的とする。
本発明のある態様に係る画像処理装置は、少なくとも一つの画像間動きベクトルにより特徴付けられる画像の変形により複数枚の画像の位置合わせ処理を行う画像処理装置であって、動きベクトルを測定するための複数の動きベクトル測定領域を設定する動きベクトル測定領域設定部と、前記複数の動きベクトル測定領域の動きベクトルを算出する動きベクトル算出部と、前記算出された動きベクトルの信頼度を算出する動きベクトル信頼度算出部と、前記複数枚の画像を撮影する撮影レンズのレンズ特性を取得するレンズ特性取得部と、各動きベクトルを算出した動きベクトル測定領域の位置と前記レンズ特性とに基づいて、前記少なくとも一つの画像間動きベクトルの算出における各動きベクトルの寄与度を算出する寄与度算出部と、前記動きベクトルの前記信頼度と前記寄与度に応じて、前記複数の動きベクトル測定領域の動きベクトルを統合することにより、前記少なくとも一つの画像間動きベクトルを算出する統合演算処理部と、を備えることを特徴とする。
本発明の別の態様に係る画像処理方法は、少なくとも一つの画像間動きベクトルにより特徴付けられる画像の変形により複数枚の画像の位置合わせ処理を行う画像処理方法であって、動きベクトルを測定するための複数の動きベクトル測定領域を設定する動きベクトル測定領域設定ステップと、前記複数の動きベクトル測定領域の動きベクトルを算出する動きベクトル算出ステップと、前記算出された動きベクトルの信頼度を算出する動きベクトル信頼度算出ステップと、前記複数枚の画像を撮影する撮影レンズのレンズ特性を取得するレンズ特性取得ステップと、各動きベクトルを算出した動きベクトル測定領域の位置と前記レンズ特性とに基づいて、前記少なくとも一つの画像間動きベクトルの算出における各動きベクトルの寄与度を算出する寄与度算出ステップと、前記動きベクトルの前記信頼度と前記寄与度に応じて、前記複数の動きベクトル測定領域の動きベクトルを統合することにより、前記少なくとも一つの画像間動きベクトルを算出する統合演算処理ステップと、を備えることを特徴とする。
本発明のさらに別の態様に係る画像処理プログラムは、少なくとも一つの画像間動きベクトルにより特徴付けられる画像の変形により複数枚の画像の位置合わせ処理を行う画像処理プログラムであって、動きベクトルを測定するための複数の動きベクトル測定領域を設定する動きベクトル測定領域設定手順と、前記複数の動きベクトル測定領域の動きベクトルを算出する動きベクトル算出手順と、前記算出された動きベクトルの信頼度を算出する動きベクトル信頼度算出手順と、前記複数枚の画像を撮影する撮影レンズのレンズ特性を取得するレンズ特性取得手順と、各動きベクトルを算出した動きベクトル測定領域の位置と前記レンズ特性とに基づいて、前記少なくとも一つの画像間動きベクトルの算出における各動きベクトルの寄与度を算出する寄与度算出手順と、前記動きベクトルの前記信頼度と前記寄与度に応じて、前記複数の動きベクトル測定領域の動きベクトルを統合することにより、前記少なくとも一つの画像間動きベクトルを算出する統合演算処理手順と、を備えることを特徴とする。
本発明のさらに別の態様に係る撮像装置は、撮影レンズと、前記撮影レンズによって形成される光学像を電気信号に変換する撮像部とを有し、少なくとも一つの画像間動きベクトルにより特徴付けられる画像の変形により、前記撮像部から取得した複数枚の画像の位置合わせ処理を行う撮像装置であって、動きベクトルを測定するための複数の動きベクトル測定領域を設定する動きベクトル測定領域設定部と、前記複数の動きベクトル測定領域の動きベクトルを算出する動きベクトル算出部と、前記算出された動きベクトルの信頼度を算出する動きベクトル信頼度算出部と、前記撮影レンズのレンズ特性を取得するレンズ特性取得部と、各動きベクトルを算出した動きベクトル測定領域の位置と前記レンズ特性とに基づいて、前記少なくとも一つの画像間動きベクトルの算出における各動きベクトルの寄与度を算出する寄与度算出部と、前記動きベクトルの前記信頼度と前記寄与度に応じて、前記複数の動きベクトル測定領域の動きベクトルを統合することにより、前記少なくとも一つの画像間動きベクトルを算出する統合演算処理部と、を備えることを特徴とする。
これらの態様によれば、動きベクトル測定領域の位置とレンズ特性とに基づいて、画像間動きベクトルの算出における各動きベクトルの寄与度が算出される。このため、収差を考慮した寄与度が算出できる。例えば、レンズ特性により収差の絶対値の小さい画像内の位置を求め、その位置にある測定領域の動きベクトルの寄与度を大きくすることができる。また、動きベクトルの寄与度と信頼度に応じて、複数の動きベクトル測定領域の動きベクトルを統合することにより、画像間動きベクトルが的確に算出される。
このため、収差補正する前の段階でも、複数枚の画像に対し収差の影響を除去して、画像間動きベクトルを決定することができる。従って、収差補正を行った後の複数枚の画像に対して画像間動きベクトルを決定する場合より、的確に画像間動きベクトルを決定することができる場合がある。さらに、この的確な画像間動きベクトルに特徴付けられる画像の変形により、収差補正に精度がない場合でも、精度良い画像の位置合わせ処理が可能となる。
また、動きベクトルの算出の前に収差補正を必要としないので位置合わせ処理の構成の自由度が上がる。例えば、収差補正後に画像間動きベクトル算出を行うようなシーケンシャルな処理を必要とせず、収差補正と画像間動きベクトルの算出を並列処理することもできる。
本発明によれば、収差による画像の歪がある場合でも、画像間動きベクトルが的確に算出され、この画像間動きベクトルにより特徴付けられる画像の変形により複数枚の画像の位置合わせ処理が的確に行える。また、画像間動きベクトル算出の前に収差補正を必要としないので位置合わせ処理の構成の自由度が上がる。
[第一実施形態]
図2を参照して、第一実施形態に係る画像処理装置について説明する。なお、画像処理装置は、画像取得装置と一体化してデジタルカメラやデジタルビデオカメラ等の撮像装置(撮像用電子機器)を形成するものとして第一実施形態を説明する。しかし、本発明はこれに限定されることなく適用可能である。例えば、画像取得装置と画像処理装置をそれぞれ個別の装置として連携させて使用する構成でもよい。
図2を参照して、第一実施形態に係る画像処理装置について説明する。なお、画像処理装置は、画像取得装置と一体化してデジタルカメラやデジタルビデオカメラ等の撮像装置(撮像用電子機器)を形成するものとして第一実施形態を説明する。しかし、本発明はこれに限定されることなく適用可能である。例えば、画像取得装置と画像処理装置をそれぞれ個別の装置として連携させて使用する構成でもよい。
撮像装置1は、画像取得装置としての画像取得部2と、画像処理装置として画像処理部3から構成される。画像処理部3は、画像取得部2で撮像された複数枚の画像の位置合わせと加算処理を行う。
画像取得部2は、撮影レンズ部10と撮像部12とを有している。撮影レンズ部10は、複数枚の画像を撮影(又は撮像)する際に用いられる。撮影レンズ部10は、一つ以上のレンズ要素から構成され外部から取り込んだ光を結像する撮影レンズ(又は撮像レンズ)1100を有する。さらに、撮影レンズ部10は、この撮影レンズ1100に取り付けられたROM(読み出し専用メモリ)1101をレンズ特性データの記憶部として有している。撮像部12は、イメージャ(CCD)と、イメージャからの信号を処理する信号処理部からなる。撮像部12は、撮影レンズ1100により撮像部12に結像された光学像を電気信号に変換する。さらに、撮像部12は、この電気信号をデジタル信号に変換し画像データを生成する。この際、電気信号からオプチカルブラック(即ち、光強度ゼロ)の電気信号を差し引く等の処理を行う。
画像処理部(又は画像処理装置)3は、複数枚の画像を格納するフレームメモリ102と、基準画像に対して所定の動きベクトル測定領域を設定する動きベクトル測定領域設定部103とを有する。また、画像処理部3は、動きベクトル測定領域の動きベクトルを演算する動きベクトル算出部104と、動きベクトルの演算結果の信頼度を算出する動きベクトル信頼度算出部105も有する。
さらに、画像処理部3は、上記演算した動きベクトルに基づいて、画像間の動きベクトルの代表値を算出する動きベクトル統合処理部106と、この代表値に応じて画像の加算を行うフレーム加算部109とを有する。また、画像処理部3は、撮影レンズ1100の特性に関するレンズ特性データをROM1101から取得するレンズ特性取得部107と、このレンズ特性データに基づいて収差の補正を行う収差補正部108とを有する。
画像処理部3は、上記各部の制御を行うメインコントローラ100を有する。メインコントローラ100は、画像処理部3の各部の動作の制御を行うとともに、撮影レンズ1100の自動焦点(AF)調整制御やズーム動作の制御(倍率変更制御)を行う。メインコントローラ100は、例えばDSP(デジタルシグナルプロセッサ)などのCPU(中央演算処理装置)等から構成される。なお、図2において、点線はメインコントローラの制御信号、細線は動きベクトルや信頼度等のデータの流れ、太線は画像データの流れを表している。
以下、本明細書において、動きベクトル測定領域を「測定領域」と、動きベクトル測定領域設定部を「領域設定部」と、動きベクトル算出部を「ベクトル算出部」と呼ぶ。また、動きベクトル信頼度算出部を「信頼度算出部」と、動きベクトル統合処理部を「統合処理部」と、レンズ特性取得部を「特性取得部」と呼ぶ。さらに、画像間の動きベクトルの代表値を、単に、画像間動きベクトル、又は補正ベクトルと呼ぶことがある。
ここで、撮影レンズ部10に取り付けられたROM1101に記憶されているレンズ特性データについて説明しておく。レンズ特性データは、撮影レンズのレンズ特性に関するデータである。レンズ特性は、撮影レンズ1100の種類を識別するためのレンズ識別子(例えば、レンズ型名やシリアルナンバー)や、撮影レンズ1100の光学的特性を与えるレンズパラメータを含む。このレンズパラメータの例として、レンズ1100の焦点距離fや歪曲収差DT(%)が挙げられる。
歪曲収差DT(%)は、実像高Y’及び理想像高Yを用いて、以下の式(5)のように表せる。実像高Y’及び理想像高Yの関係は、式(6)のように表せる。そのため、歪曲収差に関する他のレンズパラメータの例として、式(7)のように、歪曲収差DT(%)を理想像高の二乗(Y2)で展開して多項式化した場合の係数a1、a2、a3も挙げられる。
なお、レンズ特性の例として、歪曲収差DT(%)を理想像高の二乗(Y2)で展開し多項式化した場合の係数a1、a2、a3を挙げたが、これに限られるものではない。歪曲収差DT(%)を理想像高Yで展開し多項式化した場合の係数もレンズ特性としてもよい。これにより、光軸がずれている場合など、光学系の歪曲収差が像の中心に関して対象でない場合も取り扱うことができる。
また、レンズパラメータを撮影レンズ1100の配置情報と対応させてROM1101が記憶することにより、特性取得部107は、撮影レンズの配置情報に応じて、レンズ特性を取得できる。このため、後述する寄与度算出部1061は、レンズの配置(レンズ位置)毎の収差データ(像の歪データ)を求めることもできる。例えば、撮影レンズ1100のズーム移動時や自動焦点調整時の像ズレも考慮した形で収差を求めることができる。
ここで、一例として、図3に、樽型の歪曲収差が存在する場合の像高と歪曲収差の関係を示しておく。図3では、像高0.5程度であれば、収差は2%程度である。2つの画像のズレが150画素程度でも、像高0.5程度では画像の収差補正をしなくても位置合わせの精度は3画素に収まる。従って、この2つの画像が2重化して見えない位置合わせができる。しかし、像高1では、収差は12%で、画像の収差補正をしない場合の位置合わせの精度は18画素となる。このため、このような像高にある測定領域の動きベクトルの影響を画像間動きベクトルの計算において排除する必要がある。
次に、図4を参照して、統合処理部106の構成の詳細を説明する。統合処理部106は、寄与度算出部1061と統合演算処理部1062とを備える。寄与度算出部1061は、位置関係算出部1060を含む。
位置関係算出部1060は、撮像された像の中心(x0,y0)と測定領域の重心(中心)位置Bi=(bxi,byi)に基づいて、測定領域の重心位置の像高Yi或いは像高の二乗Yi2等を算出する。ここで、像の中心とは、撮影レンズの光軸と撮像部12における画像平面との交点に相当する位置である。寄与度算出部1061では、画像間動きベクトルの算出における、i番目の測定領域の動きベクトルViの寄与度Kiを算出する。寄与度算出部1061は、像高Yiや像高の二乗Yi2から歪曲収差DTを求め、歪曲収差DTから寄与度Kiを計算する。統合演算処理部1062は、信頼度Si及び寄与度Kiに応じて、各測定領域に対して算出された動きベクトルViを統合することにより、唯一の画像間動きベクトルとして補正ベクトルVFrameを算出する。
次に、図5のフローチャートを参照して、画像処理部3が行う画像処理の手順について説明する。
ステップS10において、フレームメモリ102は、撮像部12から入力された複数枚の画像に関する画像データを一度格納する。
ステップS11において、領域設定部103は、基準画像に対して、動きベクトルを測定するための所定の測定領域1001を設定する。例えば、領域設定部103は、測定領域1001として、基準画像中にブロックを格子状に設定する(図9(a)参照)。
ステップS12において、ベクトル算出部104は、基準となる画像である基準画像(又は基準フレーム)と比較の対象となる画像である対象画像(又は対象フレーム)の間の動きベクトルを算出する。ベクトル算出部104は、基準画像の測定領域に対して、対象画像中の最も相関の高い領域の位置の相対的なズレを動きベクトルとして算出する。ここで、ベクトル算出部104は、フレームメモリ102に格納された基準画像と対象画像の画像データと、領域設定部103で設定された測定領域に関するデータを使用する。相関の高い領域を検出するために、誤差二乗和SSD、誤差絶対値和SAD、正規化相互相関NCC等の相関演算が用いられる。
ステップS13において、信頼度算出部105は、各測定領域1001について算出した動きベクトルの信頼度Si(i=1〜n)を演算する。信頼度Siは、ベクトル算出部104での動きベクトルの算出結果の正確さの程度を示す指標である。なお、動きベクトルの信頼度の詳細な算出方法は後述する。
ステップS14において、特性取得部107は、撮影レンズ1100のレンズ特性を記憶部としてのROM1101から取得する。レンズ特性は、寄与度の算出及び歪曲収差の補正に用いられる。なお、ここで、レンズの識別を、ROM1101に記憶されたレンズの識別情報(例えば、レンズ型名やシリアルナンバー)に基づいて行ってよい。
ステップS15において、統合処理部106は、各測定領域の動きベクトルのデータの統合を行って、画像間の動きベクトルの唯一の代表値としての補正ベクトルを算出する。この算出は、ベクトル算出部104で算出された動きベクトルのデータと、信頼度算出部105で算出された信頼度と、特性取得部107で取得したレンズ特性に基づいて為される。ここで、特許文献4に記載の従来技術と異なり、補正ベクトルは、歪曲収差の補正をする前の画像に対して求められているので、図2に示すように、収差補正と動きベクトル算出を並列化することができる。なお、動きベクトルの統合処理の詳細は、後述する。
ステップS16において、収差補正部108は、フレームメモリ102の画像データに対して歪曲収差の補正を行う。歪曲収差の補正は、式(6)又は(7)を用いて、実像高Y’を理想像高Yに変換することにより為される。なお、図5のフローチャートに示した順序に限られず、ステップS11−S15の動きベクトル算出及びベクトル統合処理と、ステップS16の収差補正を並列的に処理することができる。
ステップS17において、フレーム加算部109は、収差の補正を行った後の基準画像と対象画像を、算出した補正ベクトルに基づいて位置合わせしてフレーム加算処理を行う。このフレーム加算処理において、補正ベクトルに対応した量だけ対象画像を基準画像に対して相対的に平行移動させるシフト処理を行っている。シフト処理による位置合わせの後に、基準画像と対象画像の画素値が加算される。フレーム加算処理の後の合成画像を使用して、いわゆる超解像処理等を行うこともできる。
次に、上述のステップS13における動きベクトルの信頼度算出の詳細を説明する。
動きベクトルの信頼度の算出は、様々な方法が知られているが、ここでは、基準画像の測定領域とこれに対応する対象画像の画像領域との間の相関値に基づいて信頼度を算出する。相関値として、例えば、基準画像のブロックIi(測定領域)と、これに対応する対象画像のブロックIjに含まれる画素値の差分の二乗和SSDを用いる。この二乗和SSDは、以下の数式(8)で表される。
ここで、座標(bxi,byi)は、領域設定部103で設定された基準画像のi番目のブロックの中心位置(又は重心位置)を示し、ブロックの番号iの数nだけ用意されている。h,vは、それぞれ、ブロックの水平、垂直方向の大きさである。座標(bxj,byj)は、基準画像のブロックに対応する対象画像のj番目のブロック(対象ブロック)の中心位置を示し、ブロックマッチングの探索範囲に対応して用意されている。
i番目のブロックの二乗和SSD(i,j)は、対象ブロックの番号jによって種々の値をと
るが、i番目のブロックの動きベクトルの信頼度Siは、SSD(i,j)の最小値および平均値
との差分に基づいて求められる。例えば、信頼度Siは、SSD(i,j)の最小値および平均値との差分とすればよい。
るが、i番目のブロックの動きベクトルの信頼度Siは、SSD(i,j)の最小値および平均値
との差分に基づいて求められる。例えば、信頼度Siは、SSD(i,j)の最小値および平均値との差分とすればよい。
なお、相関値SSDの統計性に基づく信頼度は、領域の構造特徴と以下の概念で対応付けられる。(i)エッジ構造が鮮鋭な領域の場合に、その領域に対して算出された動きベクトルの信頼度が高く、結果として、SSDの最小値を示す対象画像のブロックの位置の誤差は少ない。SSDのヒストグラムをとった場合に、最小値を示す位置付近に小さなSSDが集中する。従って、SSDの最小値と平均値の差分が大きい。(ii)テクスチャや平坦な構造の場合、SSDのヒストグラムが平坦になり、結果としてSSDの最小値と平均値の差が小さく、信頼度は低い。(iii)繰り返し構造の場合、SSDの最小値と最大値を示す対象ブロックの位置が近く、SSDが小さい値を示す位置が分散している。結果として最小値と平均値の差が小さく、信頼度は低い。この様に、SSD(i,j)の最小値および平均値との差分に基づいて、i番目のブロックに対応した、信頼度の高い動きベクトルを選択する。
なお、信頼度に関して、各ブロックのエッジの量から信頼度を求めることもできる。
次に、図6のフローチャートを参照して、上述のステップS15の動きベクトル統合処理の詳細な手順を説明する。
ステップS21において、位置関係算出部1060は、式(9)の演算を行う。位置関係算出部1060は、像の中心位置(x0,y0)とブロック(測定領域)の中心位置Bi=(bxi,byi)から、像の中心とブロックの中心とのx軸及びy軸方向の間隔Rxi、Ryiを算出する。さらに、位置関係算出部1060は、間隔Rxi、Ryiから、i番目のブロックの中心の像高Yiの二乗Yi2等を算出する。
なお、位置関係算出部1060は、ブロックが設定された時にブロックの番号iごとに像高Yiを計算し、番号iと像高Yiとの関係を示す参照テーブルを画像処理部3のメモリに保存しておいても良い。この場合、寄与度算出部1061は、必要に応じて、この参照テーブルを参照して、ブロックの番号iから計算しておいた像高Yiを獲得できる。
ステップS22において、寄与度算出部1061は、特性取得部107で取得したレンズパラメータa1、a2、a3を読込む。寄与度算出部1061は、ステップS21で求めた像高の二乗Yi2から歪曲収差DT(%)を式(10)のように算出する。
なお、式(10)のように歪曲収差DT(%)をYi2の関数として得ることができる。
別法として、寄与度算出部1061は、像高Yと歪曲収差DTとの関係を与える参照テーブルを参照することにより、像高Yi(=(Rxi2+Ryi2)1/2)から歪曲収差DT(Yi)を取得してもよい。
ステップS23において、寄与度算出部1061は、図7に示すような歪曲収差DTと寄与度Kiの関数(関係)に基づいて、歪曲収差DTから寄与度Kiを計算する(Ki=Ki(DT))。図7のように、歪曲収差の絶対値|DT|が小さい測定領域で、寄与度Kiを大きくしたので、補正ベクトルVFrameが正確に算出できる。なお、歪曲収差の絶対値|DT|が像の中心に近いほど小さいので、寄与度Kiは、i番目の測定領域が像の中心(x0,y0)に近いほど高くなるように算出されている。
ステップS24において、統合演算処理部1062は、各測定領域に対して算出された動きベクトルViを、信頼度Siと寄与度Kiに応じて統合することにより、補正ベクトルVFrameを算出する。
図8は、上述のステップS24において、統合演算処理部1062が行う統合演算処理のフローチャートを示している。
ステップS31では、信頼度Siの閾値処理を行い、信頼度Siが閾値S_Thrより大きいか否か判断している。ステップS32では、信頼度Siが閾値S_Thrより大きい場合、閾値より大きい信頼度Siはそのままに維持し、最終的な信頼度STiをSiに設定する。ステップS33では、信頼度Siが閾値S_Thrより小さい場合、閾値以下の信頼度Siの動きベクトルの寄与を0とすべく、最終的な信頼度STiを0に設定する。このように補正ベクトルVframeの演算に用いられる最終的な信頼度STiを求めている。これにより、動きベクトルの統合結果が安定する、即ち正確な補正ベクトルが求められる。
ステップS34において、最終的な信頼度STi、寄与度Ki、i番目の測定領域の動きベクトルViから、補正ベクトルVFrameが算出される。具体的には、数式(11)のように、最終的な信頼度STiと寄与度Kiに応じて重み係数を設定して、動きベクトルViを重み付け加算(又は加重平均)することにより、補正ベクトルVFrameが算出される。
ここで、右辺の分母ΣSTiKiは正規化の係数である。重み係数(STi・Ki/ΣSTiKi)
が、最終的な信頼度STiと寄与度Kiの積に応じて設定されている。これにより、信頼度STiまたは寄与度Kiの両方を考慮して、適切な補正ベクトルVFrameが算出できる。さらに、信頼度と寄与度の一方が小さい測定領域の動きベクトルの影響を小さくするとともに、信頼度と寄与度の両方が大きい測定領域の動きベクトルの影響を大きくして、画像間動きベクトル(補正ベクトル)を的確に算出できる。
が、最終的な信頼度STiと寄与度Kiの積に応じて設定されている。これにより、信頼度STiまたは寄与度Kiの両方を考慮して、適切な補正ベクトルVFrameが算出できる。さらに、信頼度と寄与度の一方が小さい測定領域の動きベクトルの影響を小さくするとともに、信頼度と寄与度の両方が大きい測定領域の動きベクトルの影響を大きくして、画像間動きベクトル(補正ベクトル)を的確に算出できる。
このように、ステップS31−S34において、動きベクトルViが信頼度Siと寄与度Kiに基づいて重み付け加算され、補正ベクトルVFrameが算出される。なお、ステップS31−S33の処理を行わずに、最終的な信頼度STiの代わりに当初の信頼度Siを数式(11)において使用して、補正ベクトルVFrameを算出することもできる。
上記のように、像高(測定領域の位置)と歪曲収差に関するレンズ特性とに基づいて歪曲収差を算出し、算出された歪曲収差から寄与度を算出する。これにより、収差に応じて的確に寄与度を算出でき、さらに、この寄与度に応じて測定領域の動きベクトルを統合することにより、的確に画像間動きベクトル(補正ベクトル)を算出できる。
次に、第一実施形態の作用効果について、図9を参照して詳細に説明する。図9(a)は、動きベクトルを算出する測定領域(ブロック)1001の位置を表している。図9(b)は、歪曲収差DTの絶対値|DT|が小さい領域1202を示す。従って、この領域1202では、動きベクトルの算出の精度が高い。なお、歪曲収差を有する像面202のうち像高Yが小さい領域で、歪曲収差の絶対値|DT|が小さくなっている(図3参照)。図9(c)は、動きベクトルの算出精度が高い(即ち、歪曲収差DTの絶対値|DT|が小さい)領域1202内に位置する測定領域(ブロック)1203を示す。本実施形態では、歪曲収差の絶対値|DT|が小さい測定領域1203で、図7に示すように寄与度Kiが大きく設定される。このため、歪曲収差の絶対値|DT|が小さい測定領域の動きベクトルの影響を大きくし、絶対値|DT|が大きい測定領域の動きベクトルの影響を小さくして、補正ベクトルVFrameが正確に算出できる。
このように、収差補正する前の段階でも、複数枚の画像に対し収差の影響を除去して画像間動きベクトル(補正ベクトル)を正確に決定することができる。従って、収差補正が正確でない時に収差補正を行った後の画像に対して画像間動きベクトルを決定する場合より、的確に画像間動きベクトルを決定することができる。さらに、この的確な画像間動きベクトルに特徴付けられる画像の変形(ここでは平行移動)により、精度良い画像の位置合わせ処理が可能となる。
なお、第一実施形態は、収差の例として歪曲収差をとり挙げているが、歪曲収差以外の収差(像面歪曲等)でも第一実施形態が適応できることは明白である。例えば、像高Y(又は測定領域の位置)と収差DTの関係が分かれば、どのような収差に対しても図6のように収差を求められ、収差から寄与度Kiが算出できる。この寄与度に応じて、複数の測定領域の動きベクトルを統合することにより、画像間動きベクトルを算出できる。
また、レンズ1100のレンズパラメータは、撮影レンズに取り付けられたROM1101に記憶されている場合を説明した。しかし、画像処理部内のメモリにレンズパラメータを記憶しておき、レンズの種類を判別してからこのレンズの種類に応じて当該他のメモリからレンズパラメータを読み出す構成とすることもできる。
[第一実施形態の第一変形例]
上述の実施形態において、図6のフローチャートのようにベクトル統合処理(S15)を行ったが、第一実施形態の第一の変形例として、図10のフローチャートのようにベクトル統合処理を行ってもよい。
上述の実施形態において、図6のフローチャートのようにベクトル統合処理(S15)を行ったが、第一実施形態の第一の変形例として、図10のフローチャートのようにベクトル統合処理を行ってもよい。
図10のフローチャートを参照すると、ステップS41において、位置関係算出部1060は、像の中心と測定領域の中心間のx軸及びy軸方向の間隔(Rxi、Ryi)を算出する。さらに、寄与度Kiを式(12)の関数Ki=K(Rxi,Ryi,a1,a2,a3) から直接的に算出する。
ステップS42において、信頼度Siと寄与度Kiに応じて、動きベクトルViを重み付け加算することにより、補正ベクトルVFrameを算出する。
この変形例において、測定領域の位置と、収差に関するレンズパラメータとに基づいて、寄与度を算出することにより、収差を考慮した寄与度が算出できる。また、寄与度Kiを関数Ki=K(Rxi,Ryi,a1,a2,a3) から直接的に算出するため、算出ステップが少なくて済み、寄与度の算出が簡便に行える。
なお、第一の変形例は、収差の例として歪曲収差をとり挙げているが、収差が歪曲収差以外の収差(像面歪曲等)の場合でも適応できることは明白である。例えば、測定領域の位置と収差に関するレンズパラメータから、どのような収差であっても寄与度Kiが算出できる。この寄与度に応じて、複数の測定領域の動きベクトルを統合することにより、画像間動きベクトルを算出できる。さらに、この画像間動きベクトルに特徴付けられる画像の変形により、精度良い画像の位置合わせ処理が可能となる。
[第一実施形態の第二変形例]
上述の実施形態において、図6のフローチャートのようにベクトル統合処理(S15)を行ったが、第一実施形態の第二の変形例として、図11のフローチャートのようにベクトル統合処理を行ってもよい。
上述の実施形態において、図6のフローチャートのようにベクトル統合処理(S15)を行ったが、第一実施形態の第二の変形例として、図11のフローチャートのようにベクトル統合処理を行ってもよい。
ステップS51において、位置関係算出部1060は、像の中心と測定領域の中心間のx軸及びy軸方向の間隔(Rxi、Ryi)を算出する。さらに、ブロック中心の像高Yiを算出する。
ステップS52において、寄与度算出部1061は、下記の表1、表2のように、像高Yi毎に寄与度Kiを与える参照テーブルを参照して、像高Yiから寄与度Kiを計算する。参照テーブルは、画像処理部3のメモリにおいて、レンズ識別子から判定できるレンズの種類毎に定められ記憶されている。レンズ識別子は、特性取得部107により取得される。従って、寄与度算出部1061は、測定領域の位置と寄与度との関係から、撮影レンズの種類と測定領域の位置に応じて寄与度を算出できる。表1、表2のように、歪曲収差の絶対値|DT|が小さい測定領域の像高(測定領域の位置)で、寄与度Kiが大きく設定される。
データが存在しない像高に対しては、像高を内挿して寄与度Kiを得るようにしても良い。即ち、データのない像高に対して、存在するデータからの補間により寄与度Kiを得るようにしても良い。なお、表1、表2において、説明の便宜上、歪曲収差DTを示しているが、歪曲収差DTは省略できるものである。
なお、表1、表2から分かるように、同じ像高Yでも、寄与度Kiは、撮影レンズの焦点距離fが大きいほど大きくなる。撮影レンズの焦点距離fが大きいほど、歪曲収差DTの絶対値が小さくなることを考慮して寄与度Kiが設定されているためである。これにより、焦点距離fに応じて的確に寄与度Kiを算出し、正確に画像間動きベクトルを算出できる。
ステップS53において、統合演算処理部1062は、各測定領域に対して算出された動きベクトルViを、信頼度Siと寄与度Kiに応じて統合することにより、補正ベクトルVFrameを算出する。
この第二変形例では、画像内の位置と寄与度の関係を予め定めてさえおけば、歪曲収差を具体的に計算する必要はなく、簡便に寄与度が求められる。
なお、第二変形例は、収差の例として歪曲収差をとり挙げているが、収差は歪曲収差以外でも適応できることは明白である。例えば、表1、2のように、像高と寄与度の関係を収差に基づいて予め定めてさえおけば、像高(測定領域の位置)及びレンズの種類(レンズ特性)に対応して寄与度を算出できる。従って、歪曲収差以外の収差がある場合でも、測定領域の位置とレンズ特性とに基づいて、画像間動きベクトルの算出における各動きベクトルの寄与度を算出できる。この寄与度に応じて、複数の測定領域の動きベクトルを統合することにより、画像間動きベクトルを算出できる。
[第一実施形態の第三変形例]
次に、第一実施形態の第三変形例について、図12を参照して説明する。図2、図5においてフレーム加算の例を示したが、フレーム加算に代えて動画のブレ補正を行うこともできる。図12は、補正ベクトルに基づいて、基準画像に対する対象画像の位置合わせを行う動画ブレ補正を行う場合の構成図を示す。図12において、フレームブレ補正部110は、対象画像を、基準画像に対してブレが少なくなるように相対移動させて、図示しない表示装置又は記憶装置に対象画像データを転送する。
次に、第一実施形態の第三変形例について、図12を参照して説明する。図2、図5においてフレーム加算の例を示したが、フレーム加算に代えて動画のブレ補正を行うこともできる。図12は、補正ベクトルに基づいて、基準画像に対する対象画像の位置合わせを行う動画ブレ補正を行う場合の構成図を示す。図12において、フレームブレ補正部110は、対象画像を、基準画像に対してブレが少なくなるように相対移動させて、図示しない表示装置又は記憶装置に対象画像データを転送する。
なお、第三変形例は、収差が歪曲収差以外の場合でも、適応できることは明白である。
[第二実施形態]
次に、第二実施形態について、図13、図14を参照して説明する。第一実施形態では、動きベクトルの重み付け加算(数式(11))によって補正ベクトル(画像間動きベクトル)を求めたが、これと異なる方法で補正ベクトルを求める。他の構成は、第一実施形態と同様である。
次に、第二実施形態について、図13、図14を参照して説明する。第一実施形態では、動きベクトルの重み付け加算(数式(11))によって補正ベクトル(画像間動きベクトル)を求めたが、これと異なる方法で補正ベクトルを求める。他の構成は、第一実施形態と同様である。
第二実施形態では、動きベクトルVi=(xi,yi)をビン(階級)に分類することにより、度数分布(又はヒストグラム)を求める。度数分布における出現頻度(出現度数)が最も高いベクトルは、画像間の動きを代表する代表ベクトルであり、これを補正ベクトルとして採用する。なお、以下のように、出現頻度の計数において、信頼度STiと寄与度Kiが考慮されている。
図13のように、動きベクトルViに関するビンは二次元であり、ここではx軸方向の幅がbin_xで、y軸方向の幅がbin_yの正方形とする。図13に示すように、動きベクトルViの水平・垂直方向座標をxi,yiとして、xi,yiがs番目(s=0…N|(N=l×m))のビンに入った場合に、ビンの出現頻度を増加させる。別な言い方では、s番目のビンに入った動きベクトルVi は、s番目のビンに分類され、s番目のビンの中心(重心)ベクトルVbin_sに量子化される。
図14(a)のように、通常の度数分布では、動きベクトルVi がs番目のビンに入った場合に出現頻度を1だけ増加させるが、本実施形態では、信頼度STiと寄与度Kiが考慮されている。
図14(b)のように、動きベクトルViの信頼度STiのみを考慮する場合、動きベクトルVi がs番目のビンに入ると、そのビンの出現頻度を(STi×1)だけ増加させる。従って、図14(b)の縦軸は、あるビンに属する動きベクトルViの信頼度STiの合計(ΣSTi)を示す。なお、図14(b)では、信頼度STiを最大の信頼度で規格化して、STiを1以下としている。
図14(c)のように、動きベクトルViの信頼度STi及び寄与度Kiを考慮する場合、動きベクトルVi がs番目のビンに入ると、そのビンの出現頻度を(STi×Ki×1)だけ増加させる。従って、図14(c)の縦軸は、あるビンに属する動きベクトルViの信頼度STiと寄与度Kiの積の合計(ΣSTi・Ki)を示す。なお、信頼度STi及び寄与度Kiは、第一実施形態と同様に求めることができる。
第二実施形態では、信頼度の高い動きベクトルの出現頻度に基づき補正ベクトルを求める。図14(c)のように、動きベクトルViの出現頻度を信頼度STiと寄与度Kiの積(STi・Ki)として計数して求めた度数分布(ヒストグラム)を使用する。この度数分布において、最大の出現頻度を示すビンの中心ベクトルVbin_s(ここでは、Vbin_s(s=2))を補正ベクトルVFrameに設定する。つまり、同一のビンに分類される動きベクトルViに対する信頼度STiと寄与度Kiの積の合計(ΣSTi・Ki)が最大となる場合に、そのビンの中心ベクトルVbin_sを補正ベクトルVFrameとする。なお、上記において、中心ベクトルVbin_sは、ビン(階級)を代表するベクトル(階級値)の一例として示したもので、ビンを代表するベクトルを中心ベクトルVbin_s以外に設定してもよい。
このように、第二実施形態では、信頼度と寄与度の積の合計が最大となるような画像間動きベクトルが求められる。このため、信頼度または寄与度が低い動きベクトルViの影響を排除して、適切な画像間動きベクトルが算出される。
なお、第二実施形態は、収差が歪曲収差以外の場合でも、適応できることは明白である。
[第三実施形態]
次に、第三実施形態について、図15、図16を参照して説明する。第一実施形態と第二実施形態では、唯一の画像間ベクトルとしての補正ベクトルを算出した。そして、この補正ベクトルに対応した量だけ対象画像を基準画像に対して平行移動して、基準画像と対象画像を位置合わせした。つまり、第一実施形態と第二実施形態では、平行移動(水平移動・垂直移動)に係る変形パラメータのみを考慮して、対象画像を変形して位置合わせした。
次に、第三実施形態について、図15、図16を参照して説明する。第一実施形態と第二実施形態では、唯一の画像間ベクトルとしての補正ベクトルを算出した。そして、この補正ベクトルに対応した量だけ対象画像を基準画像に対して平行移動して、基準画像と対象画像を位置合わせした。つまり、第一実施形態と第二実施形態では、平行移動(水平移動・垂直移動)に係る変形パラメータのみを考慮して、対象画像を変形して位置合わせした。
しかし、第三実施形態では、複数個の画像間動きベクトルに基づいて平行移動以外の変形パラメータを算出し、平行移動以外の変形パラメータも考慮して画像を変形して位置合わせする。他の構成は、第二実施形態と同様である。
これにより、平行移動以外に画像間の変形として回転移動等も考慮でき、補正ベクトルに基づく平行移動のみで変形を行う場合より適切に基準画像と対象画像の位置合わせができる場合がある。なお、平行移動以外の変形パラメータは、互いに異なる複数の画像間ベクトルに基づいて求めることができる。
本実施形態では、射影変換により画像を変形して位置合わせを行う例を示す。以下の(A)−(C)に、この画像の変形を例示する。なお、(A)のユークリッド変換と(B)のアフィン変換は、変形パラメータの数は通常の射影変換の8つより少なくなっているが、射影変換の特殊な例であり射影変換の範疇に含まれるものである。
(A)3パラメータ:ユークリッド変換(水平移動、垂直移動、回転から合成される変換)
(B)6パラメータ:アフィン変換(水平移動、垂直移動、回転、拡大縮小、鏡映、せん断から合成される変換)
(C)8パラメータ:通常の射影変換
なお、これらは代表的なものであり、その他の変換を行っても良い。
(A)3パラメータ:ユークリッド変換(水平移動、垂直移動、回転から合成される変換)
(B)6パラメータ:アフィン変換(水平移動、垂直移動、回転、拡大縮小、鏡映、せん断から合成される変換)
(C)8パラメータ:通常の射影変換
なお、これらは代表的なものであり、その他の変換を行っても良い。
図15において、変形パラメータ算出部112は、複数の画像間動きベクトルに基づいて変形パラメータを算出する。フレーム加算部109は、算出した変形パラメータを用いて対象画像を変形して、基準画像に対して位置合わせを行う。
図16のフローチャートに第三実施形態の処理の流れを示す。ここで、ステップS60―S64の処理は、第一実施形態のステップS10―S14の処理と同じであり説明を省略する。
ステップS65において、各測定領域の動きベクトルに基づいて、画像間動きベクトル(画像間の動きベクトルの代表値)を複数個算出する。例えば、第二実施形態の図14(c)に示す度数分布において、信頼度STiと寄与度Kiの積の合計(ΣSTi・Ki)が大きい順に複数個のビンを選択する。次に、選択したビンを代表する中心ベクトルVbin_sを画像間動きベクトルとして算出する。例えば、4つの画像間動きベクトルを算出する場合には、図14(c)において、ビン番号2、3、4、5のビンの中心ベクトルVbin_sが、4つの画像間動きベクトルとなる。これにより、信頼度STiまたは寄与度Kiが大きい画像間動きベクトルを優先的に考慮して、適切な変形パラメータが算出できる。
ステップS66において、複数の画像間動きベクトルから、射影変換に関する変形パラメータを算出する。つまり、複数の画像間動きベクトルに特徴づけられる変形の変形パラメータが算出される。なお、変形パラメータの算出の詳細は、後述する。
ステップS67において、複数枚の画像に対して収差の補正が行われる。この処理は、前述の図5のステップS16の処理と同様である。なお、図16のフローチャートに示した順序に限られず、ステップS61−S66の動きベクトル算出及び変形パラメータ算出と、ステップS67の収差補正を並列的に処理することもできる。
ステップS68において、このようにして求められた変形パラメータに基づく変形を、基準画像に対して位置あわせを行う対象画像全体に行う。続いて、基準画像と対象画像が加算される。
以下に、変形パラメータの算出の詳細をアフィン変換による変形を例にして説明する。ここでは、変形パラメータを複数の画像間動きベクトルに基づいて最小二乗法で求める例を説明する。なお、ここで、複数の画像間動きベクトルの数は4つであるが、これに限定されるものではない。
まず、算出した4つの画像間動きベクトル(V1,V2,V3,V4)に対応する測定領域の中心位置に関して、その画像間動きベクトルにより移動する中心位置の始点と終点を以下のように設定する。なお、画像間動きベクトルに対応する測定領域とは、その画像間動きベクトルに量子化される動きベクトルが測定された測定領域のことである。
即ち、4つの画像間動きベクトル(V1,V2,V3,V4)は以下の数式(15)のようになる。
一方、アフィン変換の行列表記は以下の数式(16)のようになる。
上記の始点がアフィン変換により写像される終点
は、以下の数式(18)から求められる。
変形パラメータa,b,c,d,e,fの最適値は、以下の数式(19)のように最小二乗解で求める。
なお、上記では、アフィン変換の例を示したが、その他の射影変換でも同様に複数の画像間動きベクトルに基づいて最小二乗法で求められる。
また、上記では最小二乗法で求める例を示したが、以下のように最小数の画像間動きベクトルを用いて、方程式を解くことにより、変形パラメータを簡単に求めることもできる。
例えば、ユークリッド変換では、2つの画像間動きベクトル(即ち、2組の始点、終点)に基づいて、以下の数式(20)の方程式を解くことにより変形パラメータを求められる。
ここで、θは回転角度、cは水平移動の変形パラメータ、fは垂直移動の変形パラメータを示す。
また、アフィン変換では、3つの画像間動きベクトル(即ち、3組の始点、終点)に基づいて、以下の数式(21)の方程式を解くことにより変形パラメータ(a−f)を求められる。
このように、第三実施形態では、複数の互いに異なる画像間動きベクトルから平行移動以外の変形パラメータが算出できる。このため、平行移動以外の変形(回転等)を含む場合でも、この変形パラメータを用いた変形により複数の画像間の正確な位置合わせが可能になる。
また、射影変換の変形パラメータを求めるので、簡便に変形パラメータを求められる。最小二乗法を使用すれば、射影変換の変形パラメータを正確に求めることができる。さらに、射影変換が、6個以下の変形パラメータを有するアフィン変換等であれば、一般的な射影変換の変形パラメータの数(8個)より変形パラメータの数が減り、変形パラメータを求める演算処理が簡便になる。
なお、第三実施形態は、収差が歪曲収差以外の場合でも、適応できることは明白である。
[第三実施形態の変形例]
上記の第三実施形態では、射影変換により画像を変形して位置合わせを行う例を示した。しかし、いわゆる弾性マッチングを用いて画像を変形して位置合わせを行うこともできる。これにより平行移動に係る変形パラメータ以外のパラメータも考慮でき、平行移動のみで変形を行う場合より適切に基準画像と対象画像の位置合わせができる。
上記の第三実施形態では、射影変換により画像を変形して位置合わせを行う例を示した。しかし、いわゆる弾性マッチングを用いて画像を変形して位置合わせを行うこともできる。これにより平行移動に係る変形パラメータ以外のパラメータも考慮でき、平行移動のみで変形を行う場合より適切に基準画像と対象画像の位置合わせができる。
例えば、第二実施形態の図14(c)に示す度数分布において、信頼度STiと寄与度Kiの積の合計(ΣSTi・Ki)が大きい順に複数個のビンの中心ベクトルVbin_sを複数の画像間動きベクトルとして算出する。例えば、これらの複数の画像間動きベクトルによる変形を再現するように、弾性マッチングを行う。これにより、信頼度Siと寄与度Kiのいずれも大きい測定領域の動きベクトルの影響を大きくし、且つ弾性マッチングにより局所的な変形も考慮しつつ適切に基準画像と対象画像の位置合わせができる。
なお、この第三実施形態の変形例は、収差が歪曲収差以外の場合でも、適応可能であることは明白である。
[その他の実施形態]
上述した各実施形態の説明では、画像処理部(画像処理装置)が行う処理としてハードウェアによる処理を前提としていたが、このような構成に限定される必要はない。例えば、別途ソフトウェアにて処理する構成も可能である。この場合、画像処理部は、CPU、RAM等の主記憶装置、上記処理の全て或いは一部を実現させるためのプログラムが記憶されたコンピュータ読み取り可能な記憶媒体を備えている。ここでは、このプログラムを画像処理プログラムと呼ぶ。そして、CPUが上記記憶媒体に記憶されている画像処理プログラムを読み出して、情報の加工・演算処理を実行することにより、上述の画像処理部と同様の処理を実現させる。
上述した各実施形態の説明では、画像処理部(画像処理装置)が行う処理としてハードウェアによる処理を前提としていたが、このような構成に限定される必要はない。例えば、別途ソフトウェアにて処理する構成も可能である。この場合、画像処理部は、CPU、RAM等の主記憶装置、上記処理の全て或いは一部を実現させるためのプログラムが記憶されたコンピュータ読み取り可能な記憶媒体を備えている。ここでは、このプログラムを画像処理プログラムと呼ぶ。そして、CPUが上記記憶媒体に記憶されている画像処理プログラムを読み出して、情報の加工・演算処理を実行することにより、上述の画像処理部と同様の処理を実現させる。
ここで、コンピュータ読み取り可能な記録媒体とは、磁気ディスク、光磁気ディスク、CD−ROM、DVD−ROM、半導体メモリ等をいう。また、この画像処理プログラムを通信回線によってコンピュータに配信し、この配信を受けたコンピュータが当該画像処理プログラムを実行するようにしても良い。
本発明は上記の実施形態に限定されずに、その技術的な思想の範囲内において種々の変更がなしうることは明白である。
1 撮像装置
2 画像取得部(画像取得装置)
3 画像処理部(画像処理装置)
10 撮影レンズ部
12 撮像部
100 メインコントローラ
102 フレームメモリ
103 動きベクトル測定領域設定部(領域設定部)
104 動きベクトル算出部(ベクトル算出部)
105 動きベクトル信頼度算出部(信頼度算出部)
106 動きベクトル統合処理部(統合処理部)
107 レンズ特性取得部(特性取得部)
108 収差補正部
109 フレーム加算部
1060 位置関係算出部
1061 寄与度算出部
1062 統合演算処理部
2 画像取得部(画像取得装置)
3 画像処理部(画像処理装置)
10 撮影レンズ部
12 撮像部
100 メインコントローラ
102 フレームメモリ
103 動きベクトル測定領域設定部(領域設定部)
104 動きベクトル算出部(ベクトル算出部)
105 動きベクトル信頼度算出部(信頼度算出部)
106 動きベクトル統合処理部(統合処理部)
107 レンズ特性取得部(特性取得部)
108 収差補正部
109 フレーム加算部
1060 位置関係算出部
1061 寄与度算出部
1062 統合演算処理部
Claims (21)
- 少なくとも一つの画像間動きベクトルにより特徴付けられる画像の変形により複数枚の画像の位置合わせ処理を行う画像処理装置であって、
動きベクトルを測定するための複数の動きベクトル測定領域を設定する動きベクトル測定領域設定部と、
前記複数の動きベクトル測定領域の動きベクトルを算出する動きベクトル算出部と、
前記算出された動きベクトルの信頼度を算出する動きベクトル信頼度算出部と、
前記複数枚の画像を撮影する撮影レンズのレンズ特性を取得するレンズ特性取得部と、
各動きベクトルを算出した動きベクトル測定領域の位置と前記レンズ特性とに基づいて、前記少なくとも一つの画像間動きベクトルの算出における各動きベクトルの寄与度を算出する寄与度算出部と、
前記動きベクトルの前記信頼度と前記寄与度に応じて、前記複数の動きベクトル測定領域の動きベクトルを統合することにより、前記少なくとも一つの画像間動きベクトルを算出する統合演算処理部と、
を備えることを特徴とする画像処理装置。 - 前記画像処理装置は、前記画像の変形として唯一の画像間動きベクトルに基づく平行移動により、前記複数枚の画像の位置合わせ処理を行い、
前記統合演算処理部は、前記信頼度と前記寄与度に応じて重み係数を設定して、前記複数の動きベクトル測定領域の動きベクトルを前記重み係数に応じて重み付け加算することにより、前記唯一の画像間動きベクトルを算出することを特徴とする請求項1に記載の画像処理装置。 - 前記統合演算処理部は、前記動きベクトル信頼度算出部により算出された前記信頼度が閾値より小さい場合に当該信頼度をゼロに再設定することを特徴とする請求項2に記載の画像処理装置。
- 前記統合演算処理部は、i番目の動きベクトル測定領域に関する前記動きベクトルをVi、前記信頼度をSTi、前記寄与度をKiとして、i番目の動きベクトル測定領域の動きベクトルの前記重み係数を前記信頼度STiと前記寄与度Kiの積に基づいて計算し、
前記唯一の画像間動きベクトルVFrameを
- 前記画像処理装置は、前記画像の変形として唯一の画像間動きベクトルに基づく平行移動により、前記複数枚の画像の位置合わせ処理を行い、
前記統合演算処理部は、前記複数の動きベクトル測定領域の動きベクトルを階級に分類し、同一の階級に属する動きベクトルの前記信頼度と前記寄与度の積の合計が最大となる場合に、その階級を代表するベクトルを前記唯一の画像間動きベクトルとして設定することを特徴とする請求項1に記載の画像処理装置。 - 前記画像処理装置は、平行移動以外の変形を含む前記画像の変形により前記複数枚の画像の位置合わせ処理を行い、
前記統合演算処理部は、前記画像の変形を特徴付ける変形パラメータを求めるための複数の画像間動きベクトルを算出し、
前記画像処理装置は、前記複数の画像間動きベクトルから前記変形パラメータを算出する変形パラメータ算出部を備えることを特徴とする請求項1に記載の画像処理装置。 - 前記統合演算処理部は、前記複数の動きベクトル測定領域の動きベクトルを階級に分類し、同一の階級に属する動きベクトルの前記信頼度と前記寄与度の積の合計が大きい順に複数の階級を選択し、選択した前記複数の階級の各階級をそれぞれ代表するベクトルを前記複数の画像間動きベクトルとして設定することを特徴とする請求項6に記載の画像処理装置。
- 前記変形パラメータ算出部は、前記変形パラメータとして射影変換の変形パラメータを求めることを特徴とする請求項6に記載の画像処理装置。
- 前記レンズ特性取得部は、前記レンズ特性として、収差に関するレンズ特性を取得することを特徴とする請求項1に記載の画像処理装置。
- 前記寄与度算出部は、前記動きベクトル測定領域の位置と、前記収差に関するレンズ特性とに基づいて、前記寄与度を算出することを特徴とする請求項9に記載の画像処理装置。
- 前記寄与度算出部は、前記動きベクトル測定領域の位置としての像高と、前記収差としての歪曲収差に関するレンズ特性とに基づいて、前記歪曲収差を算出し、さらに、算出された前記歪曲収差から前記寄与度を算出することを特徴とする請求項10に記載の画像処理装置。
- 前記寄与度算出部は、前記歪曲収差の絶対値が小さいほど前記寄与度を大きく算出することを特徴とする請求項11に記載の画像処理装置。
- 前記レンズ特性取得部は、前記レンズ特性としての前記撮影レンズの種類を示す識別子を取得し、
前記寄与度算出部は、前記撮影レンズの種類毎に収差に基づいて定められた、前記動きベクトル測定領域の位置と前記寄与度との関係から、前記撮影レンズの種類と前記動きベクトル測定領域の位置に応じて前記寄与度を算出することを特徴とする請求項1に記載の画像処理装置。 - 前記寄与度算出部は、前記動きベクトル測定領域が前記収差の絶対値の小さい位置にあるほど、その動きベクトル測定領域の動きベクトルの前記寄与度を大きく算出することを特徴とする請求項13に記載の画像処理装置。
- 前記撮影レンズは、前記レンズ特性として、前記撮影レンズのレンズパラメータを、前記撮影レンズの配置情報と対応させて記憶する記憶部を有し、
前記レンズ特性取得部は、前記撮影レンズの配置情報に応じて、前記記憶部に記憶された前記レンズ特性を取得することを特徴とする請求項1に記載の画像処理装置。 - 前記画像処理装置は、前記複数枚の画像の前記収差を補正する収差補正部を備え、
前記統合演算処理部は、前記収差を補正する前の前記複数枚の画像に対して、前記少なくとも一つの画像間動きベクトルを算出することを特徴とする請求項9又は13に記載の画像処理装置。 - 前記複数枚の画像を位置合わせして加算する加算部を備えることを特徴とする請求項1に記載の画像処理装置。
- 前記少なくとも一つの画像間動きベクトルにより特徴付けられる画像の変形により前記複数枚の画像を位置合わせして、画像間のブレを補正するブレ補正部を備えることを特徴とする請求項1に記載の画像処理装置。
- 撮影レンズと、前記撮影レンズによって形成される光学像を電気信号に変換する撮像部とを有し、
少なくとも一つの画像間動きベクトルにより特徴付けられる画像の変形により、前記撮像部から取得した複数枚の画像の位置合わせ処理を行う撮像装置であって、
動きベクトルを測定するための複数の動きベクトル測定領域を設定する動きベクトル測定領域設定部と、
前記複数の動きベクトル測定領域の動きベクトルを算出する動きベクトル算出部と、
前記算出された動きベクトルの信頼度を算出する動きベクトル信頼度算出部と、
前記撮影レンズのレンズ特性を取得するレンズ特性取得部と、
各動きベクトルを算出した動きベクトル測定領域の位置と前記レンズ特性とに基づいて、前記少なくとも一つの画像間動きベクトルの算出における各動きベクトルの寄与度を算出する寄与度算出部と、
前記動きベクトルの前記信頼度と前記寄与度に応じて、前記複数の動きベクトル測定領域の動きベクトルを統合することにより、前記少なくとも一つの画像間動きベクトルを算出する統合演算処理部と、
を備えることを特徴とする撮像装置。 - 少なくとも一つの画像間動きベクトルにより特徴付けられる画像の変形により複数枚の画像の位置合わせ処理を行う画像処理方法であって、
動きベクトルを測定するための複数の動きベクトル測定領域を設定する動きベクトル測定領域設定ステップと、
前記複数の動きベクトル測定領域の動きベクトルを算出する動きベクトル算出ステップと、
前記算出された動きベクトルの信頼度を算出する動きベクトル信頼度算出ステップと、
前記複数枚の画像を撮影する撮影レンズのレンズ特性を取得するレンズ特性取得ステップと、
各動きベクトルを算出した動きベクトル測定領域の位置と前記レンズ特性とに基づいて、前記少なくとも一つの画像間動きベクトルの算出における各動きベクトルの寄与度を算出する寄与度算出ステップと、
前記動きベクトルの前記信頼度と前記寄与度に応じて、前記複数の動きベクトル測定領域の動きベクトルを統合することにより、前記少なくとも一つの画像間動きベクトルを算出する統合演算処理ステップと、
を備えることを特徴とする画像処理方法。 - 少なくとも一つの画像間動きベクトルにより特徴付けられる画像の変形により複数枚の画像の位置合わせ処理を行う画像処理プログラムであって、
動きベクトルを測定するための複数の動きベクトル測定領域を設定する動きベクトル測定領域設定手順と、
前記複数の動きベクトル測定領域の動きベクトルを算出する動きベクトル算出手順と、
前記算出された動きベクトルの信頼度を算出する動きベクトル信頼度算出手順と、
前記複数枚の画像を撮影する撮影レンズのレンズ特性を取得するレンズ特性取得手順と、
各動きベクトルを算出した動きベクトル測定領域の位置と前記レンズ特性とに基づいて、前記少なくとも一つの画像間動きベクトルの算出における各動きベクトルの寄与度を算出する寄与度算出手順と、
前記動きベクトルの前記信頼度と前記寄与度に応じて、前記複数の動きベクトル測定領域の動きベクトルを統合することにより、前記少なくとも一つの画像間動きベクトルを算出する統合演算処理手順と、
を備えることを特徴とする画像処理プログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008202195A JP2010041416A (ja) | 2008-08-05 | 2008-08-05 | 画像処理装置、画像処理方法、画像処理プログラム、及び、撮像装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008202195A JP2010041416A (ja) | 2008-08-05 | 2008-08-05 | 画像処理装置、画像処理方法、画像処理プログラム、及び、撮像装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2010041416A true JP2010041416A (ja) | 2010-02-18 |
Family
ID=42013480
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008202195A Withdrawn JP2010041416A (ja) | 2008-08-05 | 2008-08-05 | 画像処理装置、画像処理方法、画像処理プログラム、及び、撮像装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2010041416A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2018116239A (ja) * | 2017-01-20 | 2018-07-26 | キヤノン株式会社 | 像ブレ補正装置及びその制御方法、撮像装置、プログラム、記憶媒体 |
US10567658B2 (en) | 2016-03-28 | 2020-02-18 | Olympus Corporation | Image processing device, image processing method, image processing program |
-
2008
- 2008-08-05 JP JP2008202195A patent/JP2010041416A/ja not_active Withdrawn
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10567658B2 (en) | 2016-03-28 | 2020-02-18 | Olympus Corporation | Image processing device, image processing method, image processing program |
JP2018116239A (ja) * | 2017-01-20 | 2018-07-26 | キヤノン株式会社 | 像ブレ補正装置及びその制御方法、撮像装置、プログラム、記憶媒体 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5074322B2 (ja) | 画像処理装置、画像処理方法、画像処理プログラム、及び、撮像装置 | |
JP5075757B2 (ja) | 画像処理装置、画像処理プログラム、画像処理方法、および電子機器 | |
US20210281816A1 (en) | System and Methods for Calibration of an Array Camera | |
JP4095491B2 (ja) | 距離測定装置、距離測定方法、及び距離測定プログラム | |
JP6363863B2 (ja) | 情報処理装置および情報処理方法 | |
WO2014061372A1 (ja) | 画像処理装置、画像処理方法および画像処理プログラム | |
US8111877B2 (en) | Image processing device and storage medium storing image processing program | |
JP2009230537A (ja) | 画像処理装置、画像処理プログラム、画像処理方法、および、電子機器 | |
US9183634B2 (en) | Image processing apparatus and image processing method | |
CN112270719B (zh) | 相机标定方法、装置及*** | |
JP2015036841A (ja) | 画像処理装置、距離計測装置、撮像装置、画像処理方法 | |
JP2008298589A (ja) | 位置検出装置及び位置検出方法 | |
JP4198536B2 (ja) | 物体撮影装置、物体撮影方法及び物体撮影プログラム | |
JP2009301181A (ja) | 画像処理装置、画像処理プログラム、画像処理方法、および電子機器 | |
JP6153318B2 (ja) | 画像処理装置、画像処理方法、画像処理プログラム、および、記憶媒体 | |
JP5446285B2 (ja) | 画像処理装置及び画像処理方法 | |
US11438570B2 (en) | Data processing apparatus and data processing method for generation of calibration data for performing image processing | |
JP2009302731A (ja) | 画像処理装置、画像処理プログラム、画像処理方法、および電子機器 | |
JP2010041416A (ja) | 画像処理装置、画像処理方法、画像処理プログラム、及び、撮像装置 | |
US20090244275A1 (en) | Compound eye photographing apparatus, control method therefor, and program | |
JP5727969B2 (ja) | 位置推定装置、方法、及びプログラム | |
JP4789964B2 (ja) | 画像処理装置、画像処理プログラム、画像処理方法、および電子機器 | |
JP4996585B2 (ja) | 画像校正評価装置及び画像校正評価プログラム | |
JP6452414B2 (ja) | 画像処理装置、撮像装置、画像処理方法およびプログラム | |
JP2011171991A (ja) | 画像処理装置、電子機器、画像処理方法、および、画像処理プログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Application deemed to be withdrawn because no request for examination was validly filed |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20111101 |