(57)【要約】【課題】映像間のシフト量決定方法を提供する。【解決手段】第一映像の第一画素データ配列を第一特徴配列上に映し出し（map）、その次元数は第一画素データ配列の次元数より小さく、かつ、第二映像の第二画素データ配列を第二特徴配列上に映し出し、その次元数は第二映像データ配列の次元数より小さい。第一特徴配列と第二特徴配列を整列させ、この整列により、第一特徴配列と複数のシフトされた第二特徴配列の間の相似度が決定される。ここでは、相似度が最高の第二特徴配列のシフトが二つの映像間のシフト量として決定される。【選択図】図１
2012015982.tif 000002
【特許請求の範囲】
【請求項１】
映像間のシフト量決定方法であって、
第一映像の第一画素データ配列を少なくとも一つの第一特徴配列上に映し出す（map）方法であって、前記第一特徴配列の次元数は前記第一画素データ配列の次元数より小さい方法と、
第二映像の第二画素データ配列を少なくとも一つの第二特徴配列上に映し出す方法であって、前記第二特徴配列の次元数は前記第二画素データ配列の次元数より小さい方法と、
前記第一特徴配列と前記第二特徴配列を整列させ（align）、前記整列により、前記第一特徴配列と複数のシフトされた（shifted）前記第二特徴配列の間の相似度が決定される方法とを含み、
これらのシフトされた前記第二特徴配列はそれぞれ異なるシフトがなされ、また、相似度が最高の前記第二特徴配列のシフトが前記二つの映像間のシフト量として決定されることを特徴とする、映像間のシフト量決定方法。
【請求項２】
前記第一及び第二画素データ配列は二次元であり、かつ前記第一及び第二特徴配列は一次元であることを特徴とする、請求項１に記載の映像間のシフト量決定方法。
【請求項３】
少なくとも一つの前記第一特徴配列は第一水平特徴配列と第一垂直特徴配列を含み、かつ、少なくとも一つの前記第二特徴配列は第二水平特徴配列と第二垂直特徴配列を含むことを特徴とする、請求項２に記載の映像間のシフト量決定方法。
【請求項４】
前記第一水平特徴配列のそれぞれの要素（element）は前記第一画素データ配列の対応する行（column）の画素データに基づき映し出され、かつ前記第一垂直特徴配列のそれぞれの要素は前記第一画素データ配列の対応する列（row）の画素データに基づき映し出され、かつ第二水平特徴配列のそれぞれの要素は前記第二画素データ配列の対応する行（column）の画素データに基づき映し出され、かつ前記第二垂直特徴配列のそれぞれの要素は前記第二画素データ配列の対応する列（row）の画素データに基づき映し出されることを特徴とする、請求項３に記載の映像間のシフト量決定方法。
【請求項５】
前記第一水平特徴配列のそれぞれの要素は前記第一画素データ配列の対応する行の画素データの和であり、かつ前記第一垂直特徴配列のそれぞれの要素は前記第一画素データ配列の対応する列の画素データの和であり、かつ、前記第二水平特徴配列のそれぞれの要素は前記第二画素データ配列の対応する行の画素データの和であり、かつ前記第二垂直特徴配列のそれぞれの要素は前記第二画素データ配列の対応する列の画素データの和であることを特徴とする、請求項４に記載の映像間のシフト量決定方法。
【請求項６】
前記第一水平特徴配列のそれぞれの要素は前記第一画素データ配列の対応する行の画素データの積であり、かつ、前記第一垂直特徴配列のそれぞれの要素は前記第一画素データ配列の対応する列の画素データの積であり、かつ、第二水平特徴配列のそれぞれの要素は前記第二画素データ配列の対応する行の画素データの積であり、かつ、前記第二垂直特徴配列のそれぞれの要素は前記第二画素データ配列の対応する列の画素データの積であることを特徴とする、請求項４に記載の映像間のシフト量決定方法。
【請求項７】
前記第一特徴配列と前記第二特徴配列の相似度は前記第一特徴配列と前記第二特徴配列の対応する要素の絶対差の和（SAD）であることを特徴とする、請求項２に記載の映像間のシフト量決定方法。
【請求項８】
前記第一特徴配列と前記第二特徴配列の相似度は前記第一特徴配列と前記第二特徴配列の対応する要素の平方差の和（SSD）であることを特徴とする、請求項２に記載の映像間のシフト量決定方法。
【請求項９】
前記第一特徴配列の部分要素はその隣接する要素が内挿されることに基づき、求められることを特徴とする、請求項１に記載の映像間のシフト量決定方法。
【請求項１０】
前記シフトされた第二特徴配列はあらかじめ決められた範囲内において、シフトすることを特徴とする、請求項１に記載の映像間のシフト量決定方法。
【請求項１１】
前記最高相似度が常に所定値より低いとき、最大のシフトは前記二つの映像間のシフト量とみなすことを特徴とする、請求項１に記載の映像間のシフト量決定方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、デジタル映像処理に関し、より詳しくは、映像間のシフト量の決定方法に関する。
【背景技術】
【０００２】
画素数の絶え間ない向上と光学性能の複雑化に伴い、手ぶれ防止機能はカメラになくてはならない機能の一つとなり、特にミドル、ハイエンドクラスのカメラにとっては、必需であることが広く知られている。
【０００３】
手ぶれ防止機能は二つのステップに分けられる。第一のステップでは振動が発生した時の映像のシフト量が検知され、第二のステップではシフト量に基づき、対応する補修措置が取られる。振動量の決定を経て、例えば、絞りを調節したり、露光値（例えばISO値）を調節したり、カメラのパラメータが調節される。振動量を決定させるプロセスは、ビデオカメラにも用いられ、フレーム（frame）を移動させることにより、映像がぶれることを防ぐ。振動量あるいは、シフト量は例えば、姿勢制御装置のような、電子設備によって検知することも可能であるし、映像処理技術を使用することによっても、検知可能である。電子設備を使用するとコストはかなり高くなり、相対的に、映像処理技術を使用するとコストは比較的低く抑えられる。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、前述した従来の手ぶれ防止映像処理技術では、計算量がかなり多くなり、誤判断やノイズの影響を容易に受けてしまうといった問題があった。
【０００５】
本発明は、このような従来の問題に鑑みてなされたものである。
上記課題解決のため、本発明は、簡単で、コスト効率が高く、速い、映像間のシフト量の決定方法を提供することを主目的とする。
【課題を解決するための手段】
【０００６】
上述した課題を解決し、目的を達成するために、本発明に係る映像間のシフト量決定方法は、
第一映像の第一画素データ配列を少なくとも一つの第一特徴配列上に映し出し（map）、第一特徴配列の次元数は第一画素データ配列の次元数より小さい方法と、
第二映像の第二画素データ配列を少なくとも一つの第二特徴配列上に映し出し、第二特徴配列の次元数は第二画素データ配列の次元数より小さい方法と、
第一特徴配列と第二特徴配列を整列させ（align）、この整列により、第一特徴配列と複数のシフトされた（shifted）第二特徴配列の間の相似度が決定される方法とを含み、
ここでは、これらのシフトされた第二特徴配列はそれぞれ異なるシフトがなされ、また、相似度が最高の第二特徴配列のシフトが二つの映像間のシフト量として決定されることを特徴とする。
【図面の簡単な説明】
【０００７】
【図１】本発明の実施形態に係る映像間のシフト量決定方法を示すフローチャートである。
【図２】図１の映し出しステップを詳細に示すフローチャートである。
【図３】バーチャートを用いて、特徴Ｘ／Ｙ配列を示す。
【図４】第一特徴Ｘ配列及び複数のシフトされた第二特徴Ｘ配列を示す。
【発明を実施するための形態】
【０００８】
以下、図面を参照して本発明を実施するための形態について、詳細に説明する。なお、本発明は、以下に説明する実施形態に限定されるものではない。本発明の実施形態に係る映像間のシフト量決定方法は、図１の本発明の実施形態に係るフローチャートに示されている。本実施形態ではデジタルカメラ、デジタルカメラを有する携帯電話、ビデオカメラあるいは、他の撮影（imaging）装置などに適用される。例えば、決定された映像間のシフト量に基づき、デジタルカメラあるいはデジタルカメラを有する携帯電話によってキャプチャーされた映像のぶれが補修される。また、別の例では、決定された映像間のシフト量に基づき、ビデオカメラの隣接するフレームのぶれが補修される。
【０００９】
ステップ１０Ａと１０Ｂでは、それぞれ第一映像と第二映像とが受信される。この二つの映像はデジタルカメラや、デジタルカメラを有する携帯電話のプレビュー（preview）モード下の二つの隣接するフレームか、あるいは、ビデオカメラの録画された二つの隣接するフレームである。第一／第二映像は第一／第二画素データ配列を含む。本実施形態では、第一画素データ配列と第二画素データ配列は二次元（2D）とされているが、第一画素データ配列と第二画素データ配列の次元数は２以上である。
【００１０】
そして、ステップ１１Ａでは、第一映像の第一画素データ配列が一つか複数個の第一特徴（feature）配列に映し出され（map）、この次元数は第一画素データ配列の次元数より小さい。本実施形態では、第一画素データ配列は（一次元、1D）の第一水平（Ｘ）特徴配列及び、第一垂直（Ｙ）特徴配列へと映し出される。同様に、ステップ１１Ｂでは、第二映像の第二画素データ配列が一つか複数個の第二特徴配列に映し出され、この次元数は第二画素データ配列の次元数より小さい。本実施形態では、第二画素データ配列は（一次元、1D）の第二水平（Ｘ）特徴配列及び、第二垂直（Ｙ）特徴配列へと映し出される。本実施形態では二次元画素データ配列により、二つの一次元特徴配列へと映し出されるが、他の実施形態では、他の映し出しの方法を用いることも可能である。例えば、三次元映像を三つの二次元の特徴配列へと映し出すか、三つの一次元の特徴配列へと映し出すことも可能である。
【００１１】
図２は図１の映し出しのステップ（つまり、ステップ１１Ａあるいは１１Ｂ）を詳細に示すフローチャートである。ステップ１１０では、（2D）第一画素データ配列のそれぞれの行（column）に基づき、（1D）第一特徴Ｘ配列の対応する組み合わせの要素（element）が映し出される。例えば、一つの行内の画素データを足したものの和を特徴Ｘ配列の対応する要素とする。図３では、バーチャート（bar chart）を用いて、特徴Ｘ配列が示されている。別の実施形態では、一つの行内の画素データを掛けあわせた積が特徴Ｘ配列の対応する要素とされる。同様に、ステップ１１２では、（2D）第一画素データ配列のそれぞれの列（row）に基づき、(1D)第一特徴Ｙ配列の対応する組み合わせの要素が映し出される。例えば、一つの列内の画素データを足したものの和あるいは、掛けあわせた積を特徴Ｙ配列の対応する要素とし、図３のように示される。第二特徴Ｘ／Ｙ配列の組み合わせ要素もまたステップ１１０／１１２の方法に基づき、映し出される。
【００１２】
そして、ステップ１２Ａ（図１）では、（1D）第一特徴Ｘ配列と第二特徴Ｘ配列の整列（align）が行われる。本実施形態では、第一特徴Ｘ配列と複数のシフトされた（shifted）第二特徴Ｘ配列の間の相似度が決定され、これらシフトされた第二特徴Ｘ配列はそれぞれ異なるシフトがなされる。図４は第一特徴Ｘ配列とこれらシフトされた第二特徴Ｘ配列が示されている。本実施形態では、第一特徴Ｘ配列と（シフトされていない、あるいは、シフトされた）第二特徴Ｘ配列の間の相似度は第一特徴Ｘ配列と第二特徴Ｘ配列の対応する要素の絶対差の和（sum of absolute differences, SAD）である。第一特徴Ｘ配列（FeatureＸ1）と第二特徴Ｘ配列（FeatureＸ2）のＳＡＤは以下のように表示される。
2012015982.tif 000003
また、別の実施形態では、第一特徴Ｘ配列と（シフトされていない、あるいは、シフトされた）第二特徴Ｘ配列の間の相似度は第一特徴Ｘ配列と第二特徴Ｘ配列の対応する要素の平方差の和（sum of square differences, SSD）である。第一特徴Ｘ配列（FeatureＸ1）と第二特徴Ｘ配列（FeatureＸ2）のＳＳＤは以下のように表示される。
2012015982.tif 000004
同様に、ステップ１２Ｂ（図１）では、（1D）第一特徴Ｙ配列と第二特徴Ｙ配列の整列が行われる。本実施形態では、第一特徴Ｙ配列と複数のシフトされた第二特徴Ｙ配列の間の相似度は例えば、ＳＡＤあるいは、ＳＳＤによって決定される。
【００１３】
これにより、最高相似度（例えば、ＳＡＤあるいは、最小のＳＳＤ）を有する第二特徴Ｘ／Ｙ配列のシフト（shift）が二つの映像間のシフト量として決定される。図４に示されているように、第一特徴Ｘ配列と二画素シフトされた第二特徴Ｘ配列は最も相似しており、かつ、両者間のＳＡＤあるいは、ＳＳＤは最小値となる。
【００１４】
別の実施形態では、未処理のそれぞれの行は特徴Ｘへ映し出され、あるいは、未処理のそれ列は特徴Ｙへ映し出され、このため、処理スピードが加速される。未処理の行／列に対応する配列要素は、その隣接する要素が内挿されることによって、求められる。
【００１５】
別の実施形態では、第二特徴Ｘ／Ｙ配列のシフト範囲はあらかじめセットされたり、固定されたりせず、能動的に変化する。例えば、ＳＡＤあるいは、ＳＳＤの変化が不明確なとき、能動的にシフト範囲を増加させることが可能である。実施形態では、ＳＡＤあるいは、ＳＳＤが常にあらかじめセットされた値より大きいとき、最大のシフトは二つの映像間の最終シフト量とされる。
【００１６】
上述の実施形態は本発明の技術思想及び特徴を説明するためのものにすぎず、当該技術分野を熟知する者に本発明の内容を理解させると共にこれをもって実施させることを目的とし、本発明の特許請求の範囲を限定するものではない。従って、本発明の精神を逸脱せずに行う各種の同様の効果をもつ改良又は変更は、後述の請求項に含まれるものとする。
【符号の説明】
【００１７】
１０Ａ  第一映像を受信する
１１Ａ  第一映像を第一特徴Ｘ／Ｙへ映し出す
１２Ａ  特徴Ｘを整列させる
１０Ｂ  第二映像を受信する
１１Ｂ  第二映像を第二特徴Ｘ／Ｙへ映し出す
１２Ｂ  特徴Ｙを整列させる
１１０  映像行に基づき、特徴Ｘの要素を映し出す
１１２  映像列に基づき、特徴Ｙの要素を映し出す
【図１】
2012015982.tif 000005
【図２】
2012015982.tif 000006
【図３】
2012015982.tif 000007
【図４】
2012015982.tif 000008