(57)【要約】  撮影装置の動きを計測するセンサの精度が低い場合であっても、大きな映像揺れを高精度に補正するためのパラメータを算出する画像処理装置を提供する。画像処理装置は、センサ情報を用いてパラメータが所定範囲の値となるような制約条件を生成する制約条件生成部（１３０）と、制約条件に従ってパラメータを算出するパラメータ算出部（１４０）とを備え、制約条件生成部（１３０）は、センサ情報の特徴を示す特徴ベクトルを生成する特徴ベクトル生成部（１３１）と、特徴ベクトルと撮影装置の実際の動きとを予め機械学習することにより得られる、特徴ベクトルと撮影装置の動きとの関連付けに基づいて、特徴ベクトル生成部（１３１）により生成された特徴ベクトルから撮影装置の動きを識別する動き識別部（１３２等）とを含み、制約条件生成部（１３０）は、動き識別部（１３２等）により識別された撮影装置の動きの情報に応じて所定範囲を特定する。
2009072264.tif 000002
【特許請求の範囲】
【請求項１】
動きを検知するセンサを備える撮影装置により撮影された二以上の画像間の位置合わせを行うためのパラメータを算出する画像処理装置であって、
前記撮影装置により撮影された画像を取得する画像取得部と、
前記画像取得部により取得された画像が撮影された際の前記センサの出力信号であるセンサ情報を取得するセンサ情報取得部と、
前記センサ情報取得部により取得されたセンサ情報を用いて、前記パラメータが算出される際に前記パラメータが所定範囲の値となるような制約条件を生成する制約条件生成部と、
前記制約条件生成部により生成された制約条件に従って、前記画像取得部により取得された画像について前記パラメータを算出するパラメータ算出部とを備え、
前記制約条件生成部は、
前記センサ情報取得部により取得されたセンサ情報の特徴を示す特徴ベクトルを生成する特徴ベクトル生成部と、
前記特徴ベクトルと前記撮影装置の動きとの関連付けを利用して、前記特徴ベクトル生成部により生成された特徴ベクトルから前記撮影装置の動きを識別する動き識別部とを含み、
前記関連付けは、前記特徴ベクトルと前記撮影装置の実際の動きとが予め機械学習された結果得られる関連付けであり、
前記制約条件生成部は、前記動き識別部により識別された前記撮影装置の動きに応じて前記所定範囲を特定することにより、前記制約条件を生成する
画像処理装置。
【請求項２】
前記パラメータ算出部は、前記画像の傾き角度を前記パラメータとして算出する
請求項１に記載の画像処理装置。
【請求項３】
前記パラメータ算出部は、前記画像から絶対水平又は絶対垂直を示す要素の傾きを抽出することにより、前記画像の傾き角度を前記パラメータとして算出する
請求項２に記載の画像処理装置。
【請求項４】
前記制約条件生成部は、前記画像の傾き角度に対する重み付けを含む前記制約条件を生成し、
前記パラメータ算出部は、前記制約条件に含まれる重み付けを用いて前記画像の傾き角度に対する評価値を算出し、算出した評価値が最も高くなる前記画像の傾き角度を前記パラメータとして選択する
請求項３に記載の画像処理装置。
【請求項５】
前記画像取得部は、同一の被写体像を含み、かつ、異なる時刻に撮影された少なくとも二つの画像を取得し、
前記パラメータ算出部は、前記二つの画像に含まれる前記被写体像の相対的な移動量を前記パラメータとして算出する
請求項１に記載の画像処理装置。
【請求項６】
前記パラメータ算出部は、前記移動量を、前記二つの映像の少なくともいずれか一つを変形させるために利用するアフィン変換パラメータとして算出する
請求項５に記載の画像処理装置。
【請求項７】
前記制約条件生成部は、前記移動量に対する重み付けを含む前記制約条件を生成し、
前記パラメータ算出部は、前記制約条件に含まれる重み付けを用いて前記移動量に対する評価値を算出し、算出した評価値が最も高くなる前記移動量を前記パラメータとして選択する
請求項６に記載の画像処理装置。
【請求項８】
前記画像処理装置は、さらに、
前記パラメータ算出部により算出されたパラメータを用いて、前記画像の補正を行う画像補正部を備える
請求項１に記載の画像処理装置。
【請求項９】
前記センサ情報取得部は、角速度センサ、加速度センサ、及び方位センサのうち少なくともいずれか一つのセンサから前記センサ情報を取得する
請求項１に記載の画像処理装置。
【請求項１０】
前記動き識別部は、前記撮影装置の光軸と、前記光軸と直交し、かつ互いに直交する二つの軸とからなる、三つの軸のそれぞれの軸回りの回転運動及び三つの軸のそれぞれの軸方向の平行移動の少なくともいずれか一方の動きの向きを識別する
請求項１に記載の画像処理装置。
【請求項１１】
被写体を撮影する撮影装置であって、
光学系と、
撮像素子と、
前記撮影装置の動きを検知するセンサ部と、
請求項１に記載の画像処理装置とを備える
撮影装置。
【請求項１２】
さらに、
前記光学系又は前記撮像素子の少なくともいずれか一方を駆動する駆動部と、
前記パラメータ算出部により算出されたパラメータと、前記撮影部に固有の所定パラメータとに基づいて、前記撮影部の造影面上の動き量を算出し、算出した動き量を打ち消すように、前記光学系又は前記撮像素子の少なくともいずれか一方を前記駆動部に駆動させる駆動制御部とを備える
請求項１１に記載の撮影装置。
【請求項１３】
前記センサ部は、角速度センサ、加速度センサ、及び方位センサのうち少なくともいずれか一つのセンサにより構成される
請求項１１に記載の撮影装置。
【請求項１４】
画像を再生する再生装置であって、
請求項８に記載の画像処理装置と、
前記画像補正部により補正された画像を再生する再生部とを備える
再生装置。
【請求項１５】
動きを検知するセンサを備える撮影装置により撮影された二以上の画像間の位置合わせを行うためのパラメータを算出する方法であって、
前記撮影装置により撮影された画像を取得する画像取得ステップと、
前記画像取得ステップにおいて取得された画像が撮影された際の前記センサの出力信号であるセンサ情報を取得するセンサ情報取得ステップと、
前記センサ情報取得ステップにおいて取得されたセンサ情報を用いて、前記パラメータが算出される際に前記パラメータが所定範囲の値となるような制約条件を生成する制約条件生成ステップと、
前記制約条件生成ステップにおいて生成された制約条件に従って、前記画像取得ステップにおいて取得された画像について前記パラメータを算出するパラメータ算出ステップとを含み、
前記制約条件生成ステップは、
前記センサ情報取得ステップにおいて取得されたセンサ情報の特徴を示す特徴ベクトルを生成する特徴ベクトル生成ステップと、
前記特徴ベクトルと前記撮影装置の動きとの関連付けを利用して、前記特徴ベクトル生成ステップにおいて生成された特徴ベクトルから前記撮影装置の動きを識別する動き識別ステップとを含み、
前記関連付けは、前記特徴ベクトルと前記撮影装置の実際の動きとが予め機械学習された結果得られる関連付けであり、
前記制約条件生成ステップでは、前記動き識別ステップにおいて識別された前記撮影装置の動きに応じて前記所定範囲を特定することにより、前記制約条件を生成する
画像処理方法。
【請求項１６】
請求項１５に記載の画像処理方法に含まれる各ステップをコンピュータに実行させるためのプログラム。
【請求項１７】
動きを検知するセンサを備える撮影装置により撮影された二以上の画像間の位置合わせを行うためのパラメータを算出する集積回路であって、
前記撮影装置により撮影された画像を取得する画像取得部と、
前記画像取得部により取得された画像が撮影された際の前記センサの出力信号であるセンサ情報を取得するセンサ情報取得部と、
前記センサ情報取得部により取得されたセンサ情報を用いて、前記パラメータが算出される際に前記パラメータが所定範囲の値となるような制約条件を生成する制約条件生成部と、
前記制約条件生成部により生成された制約条件に従って、前記画像取得部により取得された画像について前記パラメータを算出するパラメータ算出部とを備え、
前記制約条件生成部は、
前記センサ情報取得部により取得されたセンサ情報の特徴を示す特徴ベクトルを生成する特徴ベクトル生成部と、
前記特徴ベクトルと前記撮影装置の動きとの関連付けを利用して、前記特徴ベクトル生成部により生成された特徴ベクトルから前記撮影装置の動きを識別する動き識別部とを含み、
前記関連付けは、前記特徴ベクトルと前記撮影装置の実際の動きとが予め機械学習された結果得られる関連付けであり、
前記制約条件生成部は、前記動き識別部により識別された前記撮影装置の動きに応じて前記所定範囲を特定することにより、前記制約条件を生成する
集積回路。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はカメラなどの撮影装置に関するものである。
【背景技術】
【０００２】
近年、カメラの小型化、軽量化が進み、撮影者は、カメラを手で保持した状態で映像を撮影することが一般的に行われるようになってきている。また、撮影者は、カメラを手で保持せずに眼鏡、衣服、帽子などに装着して映像を撮影すること、いわゆるハンズフリー撮影も行われるようになっている。このような眼鏡、衣服、帽子などに装着された小型カメラによる撮影では、従来の大型で重量のあるカメラを使用していたときには問題とならなかった課題が明らかになってきている。その課題の一つが、撮影された映像に存在する映像揺れである。この映像揺れは、撮影者による撮影の自由度が高い、小型かつ軽量なカメラほど顕著である。そこで、従来、映像揺れを抑制又は補正する技術の開発が行われてきた。【０００３】
従来の映像揺れを抑制又は補正する技術には、電子式揺れ補正方式、光学式揺れ補正方式などがある。そして、これら電子式揺れ補正方式、光学式揺れ補正方式などの中には、映像揺れを抑制又は補正する性能を向上されるために、加速度センサ、ジャイロセンサ、傾きセンサなどの各種センサを用いて撮影時に生じた揺れを検出できるようにしたものがある（例えば、特許文献１参照）。特許文献１に記載の手振れ補正装置は、カメラに装着された傾きセンサを用いて、揺れの傾向に関する情報を取得する。そして、この手振れ補正装置は、取得した揺れの傾向に関する情報を利用して、揺れ量及び揺れ方向の検出のための画像探索（マッチング）を行う。その結果、特許文献１に記載の手振れ補正装置は、揺れ量及び揺れ方向の検出のために要する計算量を削減することが可能となる。【０００４】
また、センサから得られた揺れ情報をより積極的に用いて、映像揺れを抑制する技術も提案されている（例えば、特許文献２参照）。特許文献２に記載の手振れ補正装置は、時系列で入力されるセンサデータを学習することにより、撮影される瞬間の揺れ振動を予測する。そして、この手振れ補正装置は、予測した揺れ振動の情報を用いて揺れ振動を打ち消すように揺れ補正レンズを駆動することにより、揺れを抑制する。その結果、特許文献２に記載の手振れ補正装置は、実際の手ブレ振動の特性（撮影者の癖、カメラ本体に装着された交換レンズの重量バランス等）に対応した揺れを抑制することが可能となる。
【特許文献１】特開２００６−３４３６５２号公報
【特許文献２】特開平７−２０５４７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、特許文献１及び特許文献２に記載の手振れ補正装置は、ともに、センサから安定した信号が取得できるような静的な撮影条件を想定して映像揺れを補正している。つまり、特許文献１及び特許文献２に記載の手振れ補正装置は、撮影者が小型軽量カメラを手に保持した状態あるいはハンズフリーカメラを装着した状態で移動しながら撮影を行うことを想定していない。ハンズフリー撮影では、撮影者はカメラを手で保持しないため撮影状態が不安定となる。また、加えて、ハンズフリー撮影では、歩行による振動がカメラに加わる。このような撮影状態において、小型で安価なセンサが用いられた場合には、慣性ノイズあるいは他軸感度といったノイズがセンサからの出力信号に重畳するため、センサからの出力信号の信頼度は著しく低下する。したがって、このようにセンサからの出力信号の信頼度が低い場合、従来の映像揺れを補正する技術では、センサからの出力信号を映像揺れの補正に利用することができないという課題を有していた。【０００６】
そこで、本発明は、上記従来の課題を解決するもので、撮影装置の動きを計測するセンサの精度が低い場合であっても、大きな映像揺れを高精度に補正するためのパラメータを算出することができる画像処理装置等を提供することを目的とする。
【課題を解決するための手段】
【０００７】
上記目的を達成するために、本発明に係る画像処理装置は、動きを検知するセンサを備える撮影装置により撮影された二以上の画像間の位置合わせを行うためのパラメータを算出する画像処理装置であって、前記撮影装置により撮影された画像を取得する画像取得部と、前記画像取得部により取得された画像が撮影された際の前記センサの出力信号であるセンサ情報を取得するセンサ情報取得部と、前記センサ情報取得部により取得されたセンサ情報を用いて、前記パラメータが算出される際に前記パラメータが所定範囲の値となるような制約条件を生成する制約条件生成部と、前記制約条件生成部により生成された制約条件に従って、前記画像取得部により取得された画像について前記パラメータを算出するパラメータ算出部とを備え、前記制約条件生成部は、前記センサ情報取得部により取得されたセンサ情報の特徴を示す特徴ベクトルを生成する特徴ベクトル生成部と、前記特徴ベクトルと前記撮影装置の動きとの関連付けを利用して、前記特徴ベクトル生成部により生成された特徴ベクトルから前記撮影装置の動きを識別する動き識別部とを含み、前記関連付けは、前記特徴ベクトルと前記撮影装置の実際の動きとが予め機械学習された結果得られる関連付けであり、前記制約条件生成部は、前記動き識別部により識別された前記撮影装置の動きに応じて前記所定範囲を特定することにより、前記制約条件を生成する。【０００８】
これにより、特徴ベクトルと撮影装置の実際の動きとが予め機械学習された関連付けの情報を利用して撮影装置の動きを識別することができるので、センサからの出力信号の信頼性が低い場合でも、高精度に撮影装置の動きを識別することが可能となる。そして、そのように識別した撮影装置の動きに基づいて生成された制約条件を用いて、パラメータを算出することができるので、画像間の位置合わせを行うためのパラメータを高精度に算出することが可能となる。
【発明の効果】
【０００９】
以上の説明から明らかなように、本発明に係る画像処理装置は、撮影装置の動きを計測するセンサの精度が低い場合であっても、大きな映像揺れを高精度に補正するためのパラメータを算出することができる。
【図面の簡単な説明】
【００１０】
【図１】図１は、本発明の実施の形態１に係る撮影装置の機能構成を示すブロック図である。
【図２】図２は、加速度センサ及び角速度センサの計測軸を示す図である。
【図３】図３は、実施の形態１に係る撮影装置が備える画像処理部１０３の動作を示すフローチャートである。
【図４】図４（ａ）及び（ｂ）は、ＡｄａＢｏｏｓｔについて説明するための図である。
【図５】図５は、傾きパラメータａについてのヒストグラムの一例を示す図である。
【図６】図６は、画像取得部により取得された映像データに含まれる画像の一例を示す図である。
【図７】図７は、画像取得部により取得された映像データに含まれる画像の一例を示す図である。
【図８】図８は、図７に示す画像を用いて作成された傾きパラメータａについてのヒストグラムの一例を示す図である。
【図９Ａ】図９Ａは、時刻ｔ−１に撮影された画像の一例を示す図である。
【図９Ｂ】図９Ｂは、時刻ｔに撮影された画像の一例を示す図である。
【図１０】図１０は、特徴点マッチングにより算出された平行移動量を説明するための図である。
【図１１Ａ】図１１Ａは、撮影装置により時刻ｔ−１に撮影された画像の一例を示す図である。
【図１１Ｂ】図１１Ｂは、撮影装置により時刻ｔに撮影された画像の一例を示す図である。
【図１２Ａ】図１２Ａは、図１１Ａに示した特徴点を抽出した図である。
【図１２Ｂ】図１２Ｂは、図１１Ｂに示した特徴点を抽出した図である。
【図１２Ｃ】図１２Ｃは、揺れ検出部が制約条件を利用しないで、図１２Ａにおいて白三角で示される特徴点についてテンプレートマッチングを行う場合の探索領域を示す図である。
【図１２Ｄ】図１２Ｄは、揺れ検出部が制約条件を利用して、図１２Ａにおいて白三角で示される特徴点についてテンプレートマッチングを行う場合の探索領域を示す図である。
【図１３】図１３は、画像補正部が図１１Ｂに示す画像に対して補正を行った結果の画像の一例を示す図である。
【図１４】図１４は、本発明の実施の形態２に係る撮影装置の機能構成を示すブロック図である。
【図１５】図１５は、第一角速度センサ及び第二角速度センサの計測軸の一例を示す図である。
【図１６】図１６は、本発明の実施の形態３に係る撮影装置の機能構成を示すブロック図である。
【図１７】図１７は、本発明の実施の形態４に係る撮影装置の機能構成を示すブロック図である。
【図１８】図１８は、ｒｏｌｌ方向の回転がないと識別された場合の傾きパラメータの解の探索範囲を説明するための図である。
【図１９】図１９は、本発明に係る集積回路の機能構成を示すブロック図である。
【図２０】図２０は、本発明に係る再生装置の機能構成を示すブロック図である。
【符号の説明】
【００１１】
１００、１０００、２０００、３０００  撮影装置
１０１  センサ部
１０２  撮影部
１０３  画像処理部
１１１  加速度センサ
１１２  角速度センサ
１２０  インタフェース部
１２１  センサ情報取得部
１２２  画像取得部
１３０  制約条件生成部
１３１  特徴ベクトル生成部
１３２  ｒｏｌｌ方向識別器
１３３  ｐｉｔｃｈ方向識別器
１３４  ｙａｗ方向識別器
１４０  パラメータ算出部
１４１  傾き角度検出部
１４２  揺れ検出部
１５０  画像補正部
５０１、５０２  人物像
５０３  移動ベクトル
５１０、５２０  矩形領域
５１１、５２１  領域
１００１  第一角速度センサ
１００２  第二角速度センサ
２００１  方位センサ
３００１  駆動制御部
３００２  駆動部
３００３  アクティブプリズム
３００４  レンズ
３００５  撮像素子
４０００  集積回路
５０００  再生装置
５００１  再生部
【発明を実施するための最良の形態】
【００１２】
以下、本発明の実施の形態について、図面を参照しながら説明する。【００１３】
（実施の形態１）
図１は本発明の実施の形態１に係る撮影装置１００の機能構成を示すブロック図である。図１に示すように、撮影装置１００は、センサ部１０１、撮影部１０２、及び画像処理部１０３を備える。【００１４】
センサ部１０１は、加速度センサ１１１と角速度センサ１１２とからなり、互いに直交する三つの軸方向（ｘ、ｙ、ｚ軸方向）の加速度とその三つの軸回り（ｒｏｌｌ、ｐｉｔｃｈ、ｙａｗ）の角速度とについて撮影装置１００自身の動きの計測を行う。そして、センサ部１０１は、その計測結果を画像処理部１０３に出力する。【００１５】
なお、本実施の形態では、説明の便宜のため、撮影装置１００のレンズの光軸とｚ軸とが一致するようにｘｙｚ座標系を設定する。また、図２に示すように、三つの軸回り（ｒｏｌｌ、ｐｉｔｃｈ、ｙａｗ）の角速度は、原点からみて各軸の時計回りを正の向きとし、反時計回りを負の向きとする。【００１６】
また、センサ部１０１は、加速度センサ１１１及び角速度センサ１１２からのアナログ出力信号をデジタル信号に変換する。つまり、センサ部１０１は、図示しないＡＤＣ（Analog to Digital Converter）を備え、デジタル信号を画像処理部１０３に出力する。なお、本実施の形態では、センサ部１０１がデジタル信号を出力する場合について説明するが、本発明に係る撮影装置は、このような撮影装置に限定されるものではない。例えば、画像処理部１０３がセンサ部１０１から出力されたアナログ信号をデジタル信号に変換してもよい。【００１７】
撮影部１０２は、レンズ、撮像素子等からなり、被写体を撮影する。そして、撮影部１０２は、被写体を撮影した画像を画像処理部１０３等に出力する。【００１８】
画像処理部１０３は、ＣＰＵ（Central Processing Unit）、メモリ等からなる処理部であり、インタフェース部１２０、制約条件生成部１３０、パラメータ算出部１４０、及び画像補正部１５０を備える。【００１９】
インタフェース部１２０は、センサ情報取得部１２１及び画像取得部１２２を備える。センサ情報取得部１２１は、画像取得部１２２により取得された映像データに含まれる二以上の画像のそれぞれが撮影された際のセンサ部１０１からの出力信号をセンサ情報として取得する。画像取得部１２２は、撮影部１０２により撮影された二以上の画像を含む映像データを取得する。【００２０】
制約条件生成部１３０は、特徴ベクトル生成部１３１並びにｒｏｌｌ方向識別器１３２、ｐｉｔｃｈ方向識別器１３３、及びｙａｗ方向識別器１３４を備える。制約条件生成部１３０は、センサ情報取得部１２１により取得されたセンサ情報を用いて、パラメータが算出される際にパラメータが所定範囲の値となるような制約条件を生成する。【００２１】
特徴ベクトル生成部１３１は、センサ情報取得部１２１により取得されたセンサ情報の特徴を示す特徴ベクトルを生成する。【００２２】
ｒｏｌｌ方向識別器１３２、ｐｉｔｃｈ方向識別器１３３、及びｙａｗ方向識別器１３４は、動き識別部の一例であり、特徴ベクトルと撮影装置１００の動きとの関連付けを利用して、特徴ベクトル生成部１３１により生成された特徴ベクトルから撮影装置１００の各軸回り（ｒｏｌｌ、ｐｉｔｃｈ、ｙａｗ）の動きの向きを識別する。ここで、撮影装置１００の各軸回りの動きの向きの識別には、どの向きにも動いていないことを識別することが含まれる。また、特徴ベクトルと撮影装置１００の動きとの関連付けは、特徴ベクトルと撮影装置１００の実際の動きとが予め機械学習された結果得られる関連付けである。ここで、機械学習とは、コンピュータが、複数のサンプルデータ集合を対象に解析を行い、そのデータから有用なルール、判断基準などを抽出することをいう。【００２３】
パラメータ算出部１４０は、傾き角度検出部１４１及び揺れ検出部１４２を備える。パラメータ算出部１４０は、画像取得部１２２により取得された映像データと、制約条件生成部１３０により生成された制約条件とを用いて、時間的に隣接する画像（以下、単に隣接画像という。）間の位置合わせを行うためのパラメータを算出する。【００２４】
傾き角度検出部１４１は、制約条件生成部１３０により生成された、解が所定範囲の値となるような制約条件に従って、画像から絶対水平又は絶対垂直を示す要素の傾きを抽出することにより、画像の傾き角度をパラメータとして算出する。【００２５】
揺れ検出部１４２は、制約条件生成部１３０により生成された、解が所定範囲の値となるような制約条件に従って、映像データに含まれる時間的に隣接する二つの画像間における被写体像の相対的な移動量をパラメータとして算出する。【００２６】
画像補正部１５０は、パラメータ算出部１４０により算出された、画像間の位置合わせを行うためのパラメータに基づいて、映像データに含まれる隣接フレーム間の画像の位置合わせを行う。【００２７】
次に、以上のように構成された本実施の形態に係る撮影装置１００の動作について説明する。【００２８】
図３は、本実施の形態に係る撮影装置１００が備える画像処理部１０３の動作を示すフローチャートである。【００２９】
まず、画像取得部１２２は、撮影部１０２により生成された映像データを取得する（ステップＳ１０１）。続いて、センサ情報取得部１２１は、センサ部１０１により映像データが撮影された際に測定されたセンサ情報を取得する（ステップＳ１０２）。具体的には、センサ情報取得部１２１は、加速度センサ１１１及び角速度センサ１１２により測定された、各軸方向（ｘ、ｙ、ｚ軸方向）の加速度及び各軸回り（ｒｏｌｌ、ｐｉｔｃｈ、ｙａｗ）の角速度を取得する（ステップＳ１０２）。【００３０】
次に、特徴ベクトル生成部１３１は、取得されたセンサ情報を用いて各種演算を行うことにより、センサ情報の特徴を示す特徴ベクトルを生成する（ステップＳ１０３）。そして、各回転方向の識別器（ｒｏｌｌ方向識別器１３２、ｐｉｔｃｈ方向識別器１３３、及びｙａｗ方向識別器１３４）は、特徴ベクトル生成部１３１により生成された特徴ベクトルから撮影装置１００の各回転方向の動きを識別する（ステップＳ１０４）。そして、制約条件生成部１３０は、各回転方向の識別器により識別された撮影装置１００の各回転方向の動きを用いて、パラメータ算出部１４０がパラメータを算出する際に解となるパラメータの値の範囲を制限する制約条件を生成する（ステップＳ１０５）。【００３１】
次に、傾き角度検出部１４１は、制約条件生成部１３０により生成された制約条件に従って、画像から絶対水平又は絶対垂直を示す要素の傾きを抽出することにより、画像の傾き角度をパラメータとして算出する（ステップＳ１０６）。そして、揺れ検出部１４２は、制約条件生成部１３０により生成された制約条件に従って、映像データに含まれる時間的に隣接する二つの画像間における被写体像の相対的な移動量をパラメータとして算出する（ステップＳ１０７）。【００３２】
最後に、画像補正部１５０は、傾き角度検出部１４１及び揺れ検出部１４２により算出されたパラメータを用いて、画像取得部１２２により取得された映像データを補正する（ステップＳ１０８）。【００３３】
以下、図３に示した各ステップにおける処理の詳細について説明する。まず、特徴ベクトル生成部１３１による処理（図３のステップＳ１０３）の詳細について説明する。【００３４】
特徴ベクトル生成部１３１は、センサ情報取得部１２１により取得されたセンサ情報（三軸方向の加速度及び角速度）を用いて、センサ情報の特徴を示す特徴ベクトルを生成する。具体的には、特徴ベクトル生成部１３１は、制約条件生成部１３０が備える図示しないバッファに時系列順に格納されたセンサ情報（センサ情報取得部１２１により取得されたセンサ情報）を読み出し、読み出したセンサ情報を用いて所定の演算を行う。例えば、特徴ベクトル生成部１３１は、同じ時刻ｔに加速度センサ１１１により計測された各軸方向の加速度の大きさを比較したり、時刻ｔ−１と時刻ｔとに角速度センサ１１２により計測されたｒｏｌｌの角速度の差分値を求めたりなどの演算を行う。そして、特徴ベクトル生成部１３１は、上記のような演算を行った結果を所定のルール（符号化ルール）に従って符号化した符号からなる特徴ベクトルを生成する。ここで、符号化ルールとは、例えば、ある演算を行った結果が正の値であれば１を、それ以外であれば−１を与えるというルールである。また、符号化ルールは、例えば、各センサ出力値間の値の大きさを比較した結果、最も大きい値を持つセンサ出力値に１を、それ以外のセンサ出力値すべてに−１を与えるというルールである。このように、特徴ベクトル生成部１３１は、バッファに格納されている各センサ出力値を用いて様々な演算を行い、演算結果の符号列である特徴ベクトルｘ（ｉ）を生成する。なお、本実施の形態に係る撮影装置１００における符号化ルールは、上記のルールに限定されるものではない。【００３５】
次に、各回転方向の識別器（ｒｏｌｌ方向識別器１３２、ｐｉｔｃｈ方向識別器１３３、及びｙａｗ方向識別器１３４）による処理（図３のステップＳ１０４）の詳細について説明する。【００３６】
各回転方向の識別器は、ＡｄａＢｏｏｓｔと呼ばれる機械学習の手法によって得られる強識別器により構成される。ここで、ＡｄａＢｏｏｓｔとは、ブースティング手法の一例であり、弱い性能を持った多数の識別器（弱識別器）を重み付けしながら組み合わせることにより、一つの高性能の識別器（強識別器）を構成する機械学習の手法である。【００３７】
図４（ａ）及び（ｂ）は、ＡｄａＢｏｏｓｔについて説明するための図である。図４（ａ）に示すように、ＡｄａＢｏｏｓｔでは、学習時において、まず、学習コンピュータが、特徴ベクトルｘ（ｉ）と、その特徴ベクトルｘ（ｉ）が得られたときの撮影装置１００の実際の動きｙ（ｉ）との組合せである複数の学習データを取得する。動きｙ（ｉ）は、ある回転軸の動きを正の向きに動いたときを「１」と、それ以外のときを「−１」と符号化されたものである。ここで、センサ情報を用いて生成された特徴ベクトルｘ（ｉ）と符号化された撮影装置１００の動きｙ（ｉ）とは何らかの関連があるはずである。そこで、学習コンピュータは、このように取得されたｘ（ｉ）とｙ（ｉ）との複数の組合せについて、単純な仮説（例えば、「特徴ベクトルｘの３番目の成分が１のときｙは１である」、など）を次々に修正しながら逐次仮説ごとの正解率を求める。そして、学習コンピュータは、最も正解率が高かった仮説を採用した識別器が弱識別器と決定する。なお、弱識別器の出力も、「１」、あるいは「−１」の値を持つ符号である。さらに、学習コンピュータは、決定済みの弱識別器が識別できなかった特徴を識別することに重きを置くような新たな弱識別器の決定を繰り返す。このような学習の結果、学習コンピュータは、複数の弱識別器と、各弱識別器の正答率に基づく各弱識別器の重みとからなる強識別器を生成する。【００３８】
図４（ｂ）に示すように、上記のような機械学習により生成された強識別器は、特徴ベクトルｘが入力された場合、まず各弱識別器の出力値を重み付け加算する。具体的には、ｉ番目の弱識別器の出力値がｚ（ｉ）、その出力値に対する重みがｗ（ｉ）である場合、強識別器は、下式（１）に基づいて、評価値Ｚを算出する。【００３９】
【数１】
2009072264.tif 000003
【００４０】
次に、強識別器は、このように算出された評価値Ｚを閾値と比較することにより、所定の回転軸について正の向きへの動きがあったかどうかを識別する。つまり、強識別器は、学習が終了した後は、センサ情報取得部１２１により取得されたセンサ情報から生成される特徴ベクトルｘと、学習コンピュータによって生成された重みｗ（ｉ）とから、所定の軸回りの回転方向の動きの有無を推定することが可能となる。【００４１】
各回転方向の識別器は、このように生成された強識別器により構成される。例えば、ｒｏｌｌ方向識別器１３２は、ｚ軸回りの正負それぞれの方向への動きの有無を識別する強識別器により構成される。この二つの強識別器がともに“動きなし”と識別した場合は、ｒｏｌｌ方向識別器１３２は、撮影装置１００がｒｏｌｌ方向へ動いていないと識別する。【００４２】
このように、例えば、撮影装置１００が製品として出荷される前に、予め工場等において学習コンピュータが学習データを用いて強識別器を生成することにより、撮影装置１００は、当該撮影装置１００の特徴に応じた各回転方向の識別器を備えることが可能となる。また、学習コンピュータは、センサ情報から生成された特徴ベクトルと撮影装置１００の実際の動きとを含む学習データを用いて、特徴ベクトルから撮影装置１００の動きを識別する強識別器を生成する。つまり、強識別器は、画像の動きではなく、撮影装置１００の動きを識別する。これにより、本実施の形態に係る各回転方向の識別器は、撮影された画像の特徴量等を学習データとして画像の動きを識別するよりも、より大きな揺れに対して高精度に動きを識別することが可能となる。【００４３】
なお、上記において、学習コンピュータが強識別器を生成していたが、撮影装置１００が学習データを用いて強識別器を生成してもよい。その場合、撮影装置１００は、学習コンピュータを備えることとなる。つまり、撮影装置１００は、学習データを取得する学習データ取得部と、学習データ取得部により取得された学習データを用いて、強識別器を生成する学習部とを備えることとなる。【００４４】
次に、制約条件生成部１３０による処理（図３のステップＳ１０５）の詳細について説明する。【００４５】
制約条件生成部１３０は、各回転方向の識別器（ｒｏｌｌ方向識別器１３１、ｐｉｔｃｈ方向識別器１３２及びｙａｗ方向識別器１３３）が識別した撮影装置１００の各回転方向の動きを用いて、パラメータ算出部１４０においてパラメータを算出するときにパラメータの値の範囲を制限する制約条件を生成する。なお、制約条件の具体例は後述する。【００４６】
次に、傾き角度検出部１４１による処理（図３のステップＳ１０６）の詳細について説明する。【００４７】
傾き角度検出部１４１は、映像データに含まれる各画像から垂直あるいは水平を表す線分の傾きを、Ｈｏｕｇｈ変換などを用いて抽出することにより、画像の絶対水平あるいは絶対垂直に対する傾き角度を算出する。【００４８】
一般的に、Ｈｏｕｇｈ変換では、抽出されたｘ−ｙ座標空間上の直線ｙ＝ａｘ＋ｂ（ただしａ、ｂは実数)を、ａ−ｂパラメータ空間においてｂ＝−ａｘ＋ｙと表現する。そして、ａ−ｂパラメータ空間上の点（ａ，ｂ）のうち、最も多くの直線が交わる点（ａ０，ｂ０）が、最も長い線分の直線パラメータとして抽出される。そこで、傾き角度検出部１４１は、パラメータａ、ｂのうち傾きパラメータａに注目し、交差する直線の数を評価値として傾きパラメータａについてのヒストグラムを作成する。そして、傾き角度検出部１４１は、評価値が最も高い傾きパラメータａを画像の代表的な線分の傾きとして抽出する。【００４９】
図５は、傾きパラメータａについてのヒストグラムの一例を示す図である。図５に示すヒストグラムの場合、傾き角度検出部１４１は、最も評価値が高いａ＝ａ０を画像の代表的な線分の傾き、つまり絶対水平あるいは絶対垂直を示す要素の傾きとして抽出する。ここで抽出された傾きを用いて、絶対水平あるいは絶対垂直のいずれかに対する画像の傾き角度が算出される。なお、傾き角度検出部１４１は、例えば、±４５度に対応する傾きを境にして、絶対値が４５度以上となる傾きの場合には絶対水平に対する傾き、絶対値が４５度未満となる傾きの場合には絶対垂直に対する傾きとみなして、画像の傾き角度を算出する。つまり、Ｗｏｒｌｄ座標系における鉛直方向を０度とした場合、４５度以上となる傾きのときには、傾き角度検出部１４１は、９０度からその傾きを減じた角度を絶対水平に対する傾き角度として算出する。一方、４５度未満となる傾きのときには、傾き角度検出部１４１は、その角度を絶対垂直に対する傾き角度として算出する。【００５０】
図６は、画像取得部１２２により取得された映像データに含まれる画像の一例を示す図である。図６に示す画像は、反時計回りに１５度傾いた画像である。この画像において、人物の後方に写っている建物の縦方向の輪郭線が最も長い線分である。したがって、傾き角度検出部１４１は、この輪郭線の傾きから、絶対垂直に対する傾き角度である１５度を算出する。なお、傾き角度検出部１４１が映像データに含まれる隣接画像間の回転量を算出する場合には、傾き角度検出部１４１は、例えば、時刻ｔ−１の画像の傾き角度と時刻ｔの傾き角度との差から回転量を算出することができる。【００５１】
上記のような傾き角度の算出において、傾き角度検出部１４１は制約条件生成部１３０により生成された制約条件を利用する。以下、傾き角度検出部１４１において利用される制約条件について説明する。【００５２】
撮影装置１００に生じたｒｏｌｌ方向の運動は、撮影装置１００の光軸回りの運動である。したがって、ｒｏｌｌ方向の運動が存在する状況において撮影が行われると、撮影装置１００のｒｏｌｌ方向の動きと反対向きへ傾いた画像が撮影される。したがって、ｒｏｌｌ方向識別器１３２がｒｏｌｌ方向の正の向きへの動きを識別した場合、制約条件生成部１３０は、傾き角度の値の範囲を負の角度に限定する制約条件を生成する。一方、ｒｏｌｌ方向識別器１３２がｒｏｌｌ方向の負の向きへの動きを識別した場合、制約条件生成部１３０は、傾き角度の値の範囲を正の角度に限定する制約条件を生成する。これにより、傾き角度検出部１４１は、傾き角度が負又は正となる傾きの範囲のみについて解を探索することにより、画像の傾きを抽出することができる。【００５３】
具体例について図面を用いて説明する。図７は、画像取得部１２２により取得された映像データに含まれる画像の一例を示す図である。図７に示す画像は、撮影装置１００がｒｏｌｌ方向の正の向き（時計回り）に回転した状態で撮影された画像であるため、反時計回りに回転した画像となっている。図８は、図７に示す画像を用いて作成された傾きパラメータａについてのヒストグラムの一例を示す図である。図８に示すヒストグラムにおいて、ａ０及びａ１の評価値がほぼ同じである。ここで、制約条件が無い場合、傾き角度検出部１４１は、最も評価値が高い傾きを絶対水平あるいは絶対垂直に対する傾きと抽出する。しかし、線分抽出処理を行う際の演算誤差などが存在することを考慮すると、評価値の差が微小な場合には、傾き角度検出部１４１が単純に最も評価値が高い傾きを抽出することは、誤った傾きを抽出する危険がある。そこで、画像の傾き角度が負となる範囲に傾きを限定する制約条件を用いることにより、傾き角度検出部１４１は、解の存在範囲を図８に示すヒストグラムのａ＞０の領域に限定する。このように制約条件を用いて解の範囲を限定することにより、傾き角度検出部１４１は、ａ１を絶対水平あるいは絶対垂直に対する傾きとして抽出する。つまり、傾き角度検出部１４１は、ａ０を絶対水平あるいは絶対垂直に対する傾きとして抽出しない。以上のように、傾き角度検出部１４１は、制約条件生成部１３０により生成された制約条件を用いて解の存在範囲を限定することにより、求められる解の精度を向上させることができる。また、傾き角度検出部１４１は、評価値の最大値を探索する際に、制約条件により限定された解の範囲のみを探索することにより、演算コストも抑制することが可能となる。【００５４】
次に、揺れ検出部１４２による処理（図３のステップＳ１０７）の詳細について説明する。【００５５】
揺れ検出部１４２は、隣接画像間に存在する動きを検出する処理部であり、主に平行移動量の検出を行う。具体的には、揺れ検出部１１８は、取得した映像データに含まれる隣接画像のそれぞれの特徴点を抽出する。そして、揺れ検出部１１８は、隣接画像間で抽出した特徴点のマッチングを行うことにより、特徴点の位置が合致するような平行移動量を求める。【００５６】
図９Ａ及び図９Ｂは、時刻ｔ−１と時刻ｔに撮影された画像間の平行移動量について説明するための図である。具体的には、図９Ａは、時刻ｔ−１に撮影された画像の一例を示す図である。また、図９Ｂは、時刻ｔに撮影された画像の一例を示す図である。【００５７】
最初に、揺れ検出部１４２は、時間的に隣接する二つの画像のそれぞれから特徴点を抽出する。特徴点の抽出の方法として様々な手法があるが、揺れ検出部１４２は、特に特徴点の抽出の方法を限定する必要はない。つまり、揺れ検出部１４２は、画像の輝度又は色の変化からエッジ又はコーナーを抽出する一般的な方法を用いて特徴点を抽出してもよいし、他の方法を用いて特徴点を抽出してもよい。ここでは、特徴点の抽出についての詳細な説明は割愛する。図９Ａ及び図９Ｂに記された白丸、白三角、及び白四角の記号のそれぞれは、揺れ検出部１４２により抽出された特徴点である。ここで、同じ形の記号は、二枚の画像間で対応する特徴点であることを示している。【００５８】
次に、揺れ検出部１４２は、特徴点マッチングを行う。具体的には、揺れ検出部１４２は、基準となる時刻ｔ−１の画像（基準画像）の各特徴点の周りにテンプレートを設定する。そして、揺れ検出部１４２は、時刻ｔの画像（参照画像）の各特徴点の周りにも同様にテンプレートを設定する。そして、揺れ検出部１４２は、すべての特徴点の組合せでテンプレートマッチングを行うことにより、基準画像と参照画像との間における特徴点の対応関係を決定する。具体的には、例えば、揺れ検出部１４２は、時刻ｔ−１の白三角の特徴点の周りのテンプレートは、時刻ｔの白丸及び白四角の特徴点の周りのテンプレートよりも時刻ｔの白三角の特徴点の周りのテンプレートとの相関が高いことを利用して、二つの画像間における特徴点の対応関係を決定する。そして、揺れ検出部１４２は、決定した特徴点の対応関係を用いて、基準画像と参照画像との間の平行移動量を算出する。【００５９】
図１０は、特徴点マッチングにより算出された平行移動量を説明するための図である。図１０では、時刻ｔ−１及び時刻ｔの画像における人物像の領域が重ねて表示されている。人物像５０１は、時刻ｔ−１に撮影された画像における人物像を示している。また、人物像５０２は、時刻ｔに撮影された画像における人物像を示している。なお、人物像５０１及び５０２は、それぞれの時刻に撮影された画像の撮影領域を一致させたときの画像である。移動ベクトル５０３は、白三角で示された特徴点の時刻ｔ−１から時刻ｔへの移動ベクトルである。ここで、移動ベクトルの水平方向及び垂直方向の成分がそれぞれΔｘ及びΔｙである場合、時刻ｔの画像全体を水平方向に−Δｘ、垂直方向に−Δｙだけ平行移動させることにより、二つの時刻ｔ−１及び時刻ｔの画像の特徴点を一致させることができる。上記のような方法により、揺れ検出部１４２により算出された平行移動量を用いて、二つの画像の揺れが補正される。【００６０】
上記のような平行移動量の算出において、本実施の形態に係る揺れ検出部１４２は、制約条件生成部１３０により生成された制約条件を利用する。以下、揺れ検出部１４２において利用される制約条件について、図面を用いて説明する。【００６１】
図１１Ａは、撮影装置１００により時刻ｔ−１に撮影された画像の一例を示す図である。また、図１１Ｂは、撮影装置１００により時刻ｔに取得された画像の一例を示す図である。図１１Ｂに示す破線で囲まれた領域は、図１１Ａに示す画像に対応する領域を示している。すなわち、図１１Ｂに示す画像は、図１１Ａに示す画像に対して撮影領域が右下に移動した画像である。図１１Ａ及び図１１Ｂに示す画像上にプロットされている白丸、白三角及び黒三角は、当該画像の特徴点である。図１１Ｂに示す特徴点は、撮影領域の移動に追従して、当該特徴点に対応する図１１Ａに示す特徴点よりも左上に移動している。【００６２】
図１２Ａ及び図１２Ｂは、図１１Ａ及び図１１Ｂに示した特徴点をそれぞれ抽出した図である。ここで、揺れ検出部１４２が、図１２Ａ及び図１２Ｂに示す特徴点を抽出した場合、前述のように、揺れ検出部１４２は、特徴点マッチングにより平行移動量の算出を行う。具体的には、揺れ検出部１４２は、図１２Ａにおいて白三角で示される特徴点が、図１２Ｂのどの特徴点と対応するのかをテンプレートマッチングなどの手法を用いて探索する。【００６３】
図１２Ｃは、揺れ検出部１４２が制約条件を利用しないで、図１２Ａにおいて白三角で示される特徴点についてテンプレートマッチングを行う場合の探索領域を示す図である。図１２Ｃに示すように、制約条件生成部１３０により生成された制約条件を利用しない場合、揺れ検出部１４２は、斜線領域内に含まれる特徴点（白丸、白三角及び黒三角）に対してマッチング処理を行う。すなわち、揺れ検出部１４２は、斜線領域外にある黒丸で示された特徴点に対してマッチング処理は行わない。ここで、斜線領域で示される探索領域は、図１２Ａにおいて白三角で示される特徴点の画像上の座標と同一の座標（図１２Ｂの破線白三角の位置）を中心とする矩形領域である。このとき、図１１Ａ及び図１１Ｂの画像に写っている鳥居の２本の足（ほぼ同じ構造を持つ）の部分に対応する特徴点群は、特徴点の配置が近似している。したがって、各特徴点の周りに設定されるテンプレートも近似する。その結果、揺れ検出部１４２は、テンプレートマッチングにより正しくない対応付けを行ってしまう可能性がある。すなわち、揺れ検出部１４２は、図１２Ａにおける白三角の特徴点と、図１２Ｃにおける黒三角の特徴点とが対応すると判断してしまう可能性がある。【００６４】
そこで、揺れ検出部１４２は、制約条件生成部１３０により生成された制約条件を利用して、テンプレートマッチングを行う。具体的には、制約条件生成部１３０は、撮影装置１００に生じたｐｉｃｔｈ方向及びｙａｗ方向の運動が、それぞれ画像の縦方向及び水平方向の平行移動として画像に反映されるという特性を利用して、テンプレートマッチングにおける探索領域を限定する制約条件を生成する。【００６５】
例えば、ｐｉｔｃｈ方向識別器１３３及びｙａｗ方向識別器１３４が、図１１Ｂに示す画像が撮影されたときのセンサ情報を用いて、ｐｉｔｃｈ方向が正の向き及びｙａｗ方向が負の向き（すなわち撮影装置の光軸の向きが右下を向いたことを意味する）と識別した場合、制約条件生成部１３０は、テンプレートマッチングによる参照画像の探索領域を、マッチングの対象となる基準画像の特徴点の座標と同一の座標よりも左上側の領域とする制約条件を生成する。具体的には、制約条件生成部１３０は、揺れ検出部１４２が図１２Ａ示す白三角に対応する特徴点を図１２Ｂに示す特徴点から探索する場合、図１２Ａに示す白三角の特徴点の座標よりも左上の領域を探索するように制約条件を生成する。【００６６】
すなわち、制約条件生成部１３０は、ｐｉｔｃｈ方向識別器１３３がｐｉｔｃｈ方向の正の向きへの動きを識別した場合は、基準画像の特徴点の座標と同一の座標よりも上側の領域内の特徴点をマッチングの対象とする制約条件を生成する。一方、制約条件生成部１３０は、ｐｉｔｃｈ方向識別器１３３がｐｉｔｃｈ方向の負の向きへの動きを識別した場合は、基準画像の特徴点の座標と同一の座標よりも下側の領域内の特徴点をマッチングの対象とする制約条件を生成する。【００６７】
また、制約条件生成部１３０は、ｙａｗ方向識別器１３４がｙａｗ方向の正の向きへの動きを識別した場合は、基準画像の特徴点の座標と同一の座標よりも右側の領域内の特徴点をマッチングの対象とする制約条件を生成する。一方、制約条件生成部１３０は、ｙａｗ方向識別器１３４がｙａｗ方向の負の向きへの動きを識別した場合は、基準画像の特徴点の座標と同一の座標よりも左側の領域内の特徴点をマッチングの対象とする制約条件を生成する。【００６８】
図１２Ｄは、揺れ検出部１４２が制約条件を利用して、図１２Ａにおいて白三角で示される特徴点についてテンプレートマッチングを行う場合の探索領域を示す図である。揺れ検出部１４２は、制約条件を用いることにより、図１２Ｄに示す斜線領域についてのみテンプレートマッチングを行う。その結果、揺れ検出部１４２は、図１２Ｄにおける黒三角で示す特徴点をテンプレートマッチングの対象としないので、図１２Ａの白三角に対応する特徴点を黒三角と誤って決定することがなくなる。つまり、揺れ検出部１４２は、制約条件を利用することにより、間違った対応付けを行う危険性を抑制できる。また、揺れ検出部１４２は、テンプレートマッチングを行う対象となる特徴点の数を少なくすることができるので、演算負荷を低減させることが可能となる。【００６９】
次に、画像補正部１５０による処理（図３のステップＳ１０８）の詳細について説明する。画像補正部１５０は、パラメータ算出部１４０により算出された傾き角度と平行移動量とを用いて、基準画像と参照画像との間の位置合わせを行う。以下、その詳細を説明する。【００７０】
傾き角度検出部１４１で算出された傾き角度をθ、揺れ検出部１４２で検出された移動ベクトルを（Δｘ，Δｙ）とする。この場合、時刻ｔの画像は、時刻ｔ−１の画像に対してθだけ回転している。また、時刻ｔの画像は、時刻ｔ−１の画像に対してΔｘだけ水平方向に、かつ、Δｙだけ垂直方向に平行移動している。したがって、画像補正部１５０は、時刻ｔの画像を−θ回転させるとともに、水平方向に−Δｘ、かつ、垂直方向に−Δｙだけ平行移動させることによって、時刻ｔの画像と時刻ｔ−１の画像との位置ずれを解消させることができる。画像補正部１５０は、アフィン変換を用いて、この位置合わせの処理を行う。具体的には、補正後の座標を（ｘ，ｙ）、補正前の座標を（ｘ０，ｙ０）、３行３列のアフィン行列をＲとする場合、画像補正部１５０は、下式（２）を用いて時刻ｔの画像を補正する。【００７１】
【数２】
2009072264.tif 000004
【００７２】
ここで、補正前の座標から算出される補正後の座標が画像の領域から逸脱している場合は、画像補正部１５０は、当該補正前の座標の画像情報を破棄する。また、補正後の座標を求めるために必要な補正前の座標が画像の領域から逸脱している場合は、画像補正部１５０は、当該補正後の座標の画像情報を得ることができない。そのため、画像補正部１５０により補正された後の画像には画像情報のない領域が存在する場合がある。【００７３】
図１３は、画像補正部１５０が図１１Ｂに示す画像に対して補正を行った結果の画像の一例を示す図である。矩形領域５１０は、補正前の画像の領域を示す。また、矩形領域５２０は、補正後の画像領域を示す。ここで、矩形領域５２０の左部と上部とに存在する領域５２１は、補正前の画像が画像情報を保持していない領域を示す。また、矩形領域５１０の右部と下部とに存在する領域５１１は、図１１Ｂに示す補正前の画像の画像領域のうち、位置合わせの際に画像情報が破棄される領域を示す。【００７４】
以上のように、実施の形態１に係る撮影装置１００は、時間的に隣接した画像の位置合わせを、撮影データに含まれる複数の画像に対して行うことにより、撮影装置１００に動きが加えられても映像データにその動きが反映されないように映像データを補正することが可能となる。【００７５】
また、撮影装置１００は、特性の異なる複数のセンサ（本実施の形態では、加速度センサと角速度センサ）を用いて、撮影装置１００の動きを識別することができるので、動きを識別する際のロバスト性を向上させることが可能となる。さらに、撮影装置１００は、ＡｄａＢｏｏｓｔ等の学習手法を用いて複数のセンサの振る舞い（すなわち特徴ベクトル）と実際の撮影装置１００の動きとの関連付けを予め行うことができるので、センサの出力値に他軸感度、慣性ノイズなどが重畳していても、安定して撮影装置１００の動きを識別することが可能となる。そして、撮影装置１００は、そのように識別した撮影装置１００の動きに基づいて生成した制約条件を用いてパラメータを算出することができるので、パラメータを精度良く算出することが可能となる。【００７６】
また、撮影装置１００は、画像の傾きをパラメータとして算出することができるので、映像揺れの主原因である回転成分の揺れを補正するためのパラメータを算出することが可能となる。【００７７】
（実施の形態２）
次に、本発明の実施の形態２に係る撮影装置について説明する。【００７８】
図１４は、本発明の実施の形態２に係る撮影装置１０００の機能構成を示すブロック図である。本実施の形態に係る撮影装置１０００は、センサ部１０１が二組の角速度センサを備える点が実施の形態１に係る撮影装置１００と異なる。なお、実施の形態１と同様の構成部に関しては、同一符号にて示し、説明を省略する。【００７９】
第一角速度センサ１００１及び第二角速度センサ１００２のそれぞれは、互いに直交する三軸回りの角速度を計測する角速度センサであり、撮影装置１０００の動きを計測するセンサである。ここで、第一角速度センサ１００１及び第二角速度センサ１００２は、計測軸が互いに異なるように撮影装置１０００に設置される。【００８０】
図１５は、第一角速度センサ１００１及び第二角速度センサ１００２の計測軸の一例を示す図である。第一角速度センサ１００１は、互いに直交するｘ１軸、ｙ１軸、及びｚ１軸のそれぞれの軸回りの角速度を検出する。一方、第二角速度センサ１００２は、互いに直交するｘ２軸、ｙ２軸、及びｚ３軸のそれぞれの軸回りの角速度を検出する。例えば、撮影装置１００に対して、ｚ１軸回りの回転運動のみが印加された場合、ｘ１軸及びｙ１軸の軸回りには回転運動が生じていない。したがって、第一角速度センサ１００１は、ｘ１軸及びｙ１軸の軸回りのセンサ情報として０（現実には他軸感度があるため何らかの出力が発生する）を出力する。しかし、ｚ１軸回りの運動はｘ２軸、ｙ２軸、及びｚ２軸のそれぞれの軸回りの運動に分解することができるため、第二角速度センサ１００２は、ｚ１軸回りの回転運動に対して、ｘ２軸、ｙ２軸、及びｚ２軸の軸回りのセンサ情報として０以外の値を出力する。すなわち、撮影装置１００は、ｚ１軸回りの回転運動に対して、別の視点から観測した情報を取得することが可能となる。【００８１】
以上のように、本実施の形態に係る撮影装置１０００は、実施の形態１に係る撮影装置１００と同様に、センサ部１０１により計測されたセンサ情報を用いて特徴ベクトルを生成する。そして、撮影装置１０００は、この特徴ベクトルを用いて、撮影装置１０００に加えられた運動の三軸回りの回転の向きを識別する。ここで、本実施の形態に係る撮影装置１０００は、図１５に示すように、計測軸が互いに異なる、第一角速度センサと第二角速度センサとを備えることによって、撮影装置１０００に加えられた運動を識別する際の情報の冗長度を増すことができる。このように、情報の冗長度を増やすことは、各回転方向の識別器の精度を向上されることにつながる。つまり、撮影装置１０００は、撮影装置１０００に加えられた運動を複数の異なった視点から観測することによって、パラメータを算出する際の制約条件の有効性、及びシステムの安定性を大きく向上させることが可能となる。【００８２】
なお、本実施の形態では、計測軸が互いに異なるように設置された二組の角速度センサを備える撮影装置１０００について説明したが、本発明に係る撮影装置は、このような角速度センサに限定されるものではない。すなわち、本発明に係る撮影装置は、設置場所、計測方向、応答周波数、及び感度特性（感度、感度偏差、感度ドリフト、他軸感度等）のうち少なくとも一つが互いに異なる複数組の角速度センサを備えればよい。【００８３】
例えば、撮影装置が設置場所の異なる二組の角速度センサ（例えば、一方が撮影装置の重心位置に設置され、他方は重心位置から離れた位置に設置された二組の角速度センサ、など）を備える場合、撮影装置に加えられた運動に対する、各角速度センサが設置された位置における慣性モーメントが異なる。したがって、各角速度センサの出力値が互いに異なる出力値となる。【００８４】
また、例えば、応答速度が互いに異なる二組の角速度センサを撮影装置が備える場合も、各角速度センサの出力値が互いに異なる出力値となる。なぜならば、一方の角速度センサは、瞬間的な（高い周波数の）動きを主として検出し、他方の角速度センサは、よりゆっくりとした（低い周波数の）動きを主として検出するからである。つまり、このような応答速度が互いに異なる二組の角速度センサを備える撮影装置は、撮影装置に加えられた一つの運動を、動作周波数の観点から別の視点で観測していることになる。【００８５】
上記のように、二組の角速度センサの設置場所又は応答速度が異なる場合も、撮影装置に加えられた運動を検出する際の冗長度の向上に寄与しているため、制約条件の有効性及びシステムの安定性向上に貢献することができる。【００８６】
なお、本実施の形態では、二組の角速度センサを備える撮影装置１０００について説明したが、本発明に係る撮影装置は角速度センサに限定されるものではない。本発明に係る撮影装置は、例えば、加速度センサ、方位センサなど撮影装置の動きを検出できるような複数組のセンサを備えればよい。つまり、本発明に係る撮影装置は、設置方法及びセンサ特性の少なくとも一方が互いに異なる複数組のセンサを利用することにより、本実施の形態に係る撮影装置１０００と同様の効果を得ることができる。【００８７】
（実施の形態３）
次に、本発明の実施の形態３に係る撮影装置について説明する。【００８８】
図１６は、本発明の実施の形態３に係る撮影装置２０００の機能構成を示すブロック図である。撮影装置２０００は、自動車の直進方向と撮影装置２０００の光軸方向とが一致した車載型の撮影装置である。つまり、撮影装置２０００は、撮影された映像データの回転ぶれ、すなわちｒｏｌｌ方向の移動成分は微小であり、その移動成分を時系列で平均化すると変化なしと近似できる。したがって、撮影装置２０００により撮影された画像に存在するのは平行移動のみと限定することができる。そこで、本実施の形態に係る撮影装置２０００は、ｒｏｌｌ方向識別器と傾き角度検出部とを備えない点が、実施の形態１に係る撮影装置１００と異なる。なお、実施の形態１と同様の構成部に関しては、同一符号にて示し、説明を省略する。【００８９】
方位センサ２００１は、方位を計測するセンサである。方位センサ２００１は、自動車の動きがほぼ平面上の動きのみに限定できることから、ｙａｗ方向を計測する角速度センサ１１２との情報の補完を行うために設置されたものである。【００９０】
実施の形態１と同様、このように設置されたセンサ部１０１から取得されるセンサ情報と撮影装置２０００の動き（自動車の動き）とを予め学習し、互いに関連付けておくことにより、センサ情報からｙａｗ方向の動きを識別することができる。その結果、パラメータ算出部１４０は、処理性能（演算量、精度）を向上させることが可能となる。【００９１】
なお、本実施の形態に係る撮影装置２０００は、さらに、自動車の車速センサとカーブ識別器とを備えてもよい。これにより、特徴ベクトル生成部１３１が車速センサ、方位センサ及び角速度センサのセンサ情報を用いて特徴ベクトルを生成することができる。そして、撮影装置２０００は、生成された特徴ベクトルと実際に自動車がカーブを曲がろうとしている状態を予め学習することにより、自動車がカーブを曲がろうとしている状態を識別するカーブ識別器を備えることも可能となる。自動車がカーブを曲がろうとしている場合は、撮影部１０２により撮影された映像データの横流れが大きくなるため、映像データに含まれる画像間の位置合わせを行う意味がなくなる。したがって、カーブ識別器が、自動車がカーブを曲がろうとしている状態を識別したときは、パラメータ算出部１４０及び画像補正部１５０は、パラメータの算出及び画像の位置合わせの処理を停止する。また、自動車がカーブを曲がり終わり、一定方向への進行が再び開始されたときには、位置合わせ処理もあわせて再開すればよい。このように、カーブ識別器は、パラメータ算出部１４０及び画像補正部１５０の処理の開始又は停止を指示するスイッチの役目を果たすことができる。【００９２】
このように、本実施の形態に係る撮影装置２０００は、パラメータ処理部１４０及び画像補正部１５０が処理を実行する条件を限定することにより、演算コストの更なる削減と、より状況に適応した映像揺れの補正を行うことが可能となる。【００９３】
（実施の形態４）
次に、本発明の実施の形態４に係る撮影装置について説明する。【００９４】
図１７は、本発明の実施の形態４に係る撮影装置３０００の機能構成を示すブロック図である。図１７に示すように、本実施の形態に係る撮影装置３０００は、撮影部１０２が駆動部３００２及びアクティブプリズム３００３を有する点と、画像補正部の代わりに駆動制御部３００１を備える点とが、実施の形態１に係る撮影装置１００と異なる。他の構成部については、実施の形態１の撮影装置１００と同様であるので、説明を省略する。【００９５】
駆動制御部３００１は、パラメータ算出部１４０により算出されたパラメータ（傾き角度及び移動ベクトル）を撮影部１０２に固有のパラメータを用いて所定の方式に従って三軸の回転量に変換する。変換された回転量は、実際に撮影装置３０００の造影面上に生じた回転量となる。したがって、駆動制御部３００１は、変換した回転量を打ち消すように、駆動部３００２にアクティブプリズム３００３を駆動させることにより、撮影装置３０００に発生した動きをキャンセルすることができる。【００９６】
駆動部３００２は、アクチュエータ等であり、アクティブプリズム３００３を駆動する。アクティブプリズム３００３は、光学系の一部であり、プリズムの角度を変更することにより、映像の揺れを補正することができるプリズムである。レンズ３００４は、光学系の一部であり、撮影部１０２に入射した光を撮像素子３００５の撮像面に結像する。撮像素子３００５は、例えば、ＣＣＤ（Charge Coupled Device）、ＣＭＯＳ（Complementary Metal Oxide Semiconductor）などの固体撮像素子であり、レンズ３００４からの光を電気信号に変換する。【００９７】
このように、パラメータ算出部１４０により算出されたパラメータを用いて、駆動制御部３００１が駆動部３００２にアクティブプリズム３００３を駆動させることにより、映像データに発生した映像揺れを補正することが可能となる。【００９８】
なお、本実施の形態に係る撮影装置３０００は、アクティブプリズム３００３を駆動することにより、映像揺れの補正を行ったが、本発明に係る撮影装置は、レンズ３００４又は撮像素子３００５を駆動することにより映像揺れを補正してもよい。具体的には、駆動制御部３００１が駆動部３００２に撮像素子３００５をシフト又は回転させることにより、映像揺れを補正することが可能となる。【００９９】
以上、本発明に係る撮影装置について、実施の形態に基づいて説明したが、本発明は、これらの実施の形態に限定されるものではない。本発明の趣旨を逸脱しない限り、当業者が思いつく各種変形を本実施の形態に施したもの、あるいは異なる実施の形態における構成要素を組み合わせて構築される形態も、本発明の範囲内に含まれる。【０１００】
例えば、上記実施の形態において、センサ部１０１は、三つの軸方向の加速度を計測する加速度センサ、及び三つの軸回りの角速度を計測する角速度センサを有していたが、これに方位センサなどの撮影装置の動きを計測できる他のセンサを組み合わせてもよい。また、センサは、目的となる軸に関する動きの計測が可能であれば、どのような設置方法であってもよい。すなわち、一軸に関する動きのみを計測するセンサが必要個数だけ設置されてもよいし、直交する三軸を計測するセンサが一つのパッケージとなった加速度センサ、角速度センサ等が設置されてもよい。【０１０１】
また、上記実施の形態では、撮影装置の光軸とセンサの計測軸の一つであるｚ軸とが一致する例について説明したが、識別したい撮影装置の動きの情報（実施の形態１では撮影装置におけるｒｏｌｌ、ｐｉｔｃｈ、及びｙａｗの三軸回りの回転方向）がベクトル解析などの手法を用いて取得できるのであれば、必ずしもセンサの計測軸と識別したい撮影装置の動きの軸とが一致していなくてもよい。【０１０２】
また、上記実施の形態において、特徴ベクトル生成部１３１は、公知の主成分分析などの手法を用いて、生成する特徴ベクトルの冗長度を増してもよい。また、特徴ベクトル生成部１３１は、周波数解析などを行うことにより得られる動きの周波数情報を特徴ベクトルとして生成してもよい。【０１０３】
また、上記実施の形態において、ＡｄａＢｏｏｓｔを用いて、センサ情報と撮影装置の動きの方向（回転の方向）を関連付けた各回転方向の識別器について説明したが、各回転方向の識別器は、必ずしもＡｄａＢｏｏｓｔ手法により構成される識別器に限定されるものではない。例えば、各回転方向の識別器は、ニューラルネットワークを用いて同様の学習が行われた識別器であってもよい。この場合、特徴ベクトルは必ずしも符号である必要はないので、特徴ベクトル生成部１３１は、ニューラルネットワークに適した特徴ベクトルを生成すればよい。【０１０４】
また、識別器は、回転方向を識別する識別器に限定されるものではない。例えば、識別器は、ｘ軸、ｙ軸、及びｚ軸方向の動きの向きを識別してもよい。【０１０５】
また、上記実施の形態において、制約条件生成部１３０は、各回転方向の識別器が正の向き又は負の向きに撮影装置が回転したことを識別した場合について制約条件を生成していたが、さらに、正の向き及び負の向きのいずれの向きにも回転していないと識別した場合にも制約条件を生成してもよい。例えば、制約条件生成部１３０は、ｒｏｌｌ方向識別器１３２によりｒｏｌｌ方向の回転がないと識別された場合は、予め定められた所定の探索幅ｓを用いて、±ｓの範囲を傾きパラメータの解の探索範囲として設定する制約条件を生成してもよい。この場合、傾き角度検出部１４１は、制約条件生成部１３０により設定された±ｓの範囲において、評価値が最大となる傾きパラメータを探索する。また、例えば、制約条件生成部１３０は、ｐｉｔｃｈ方向識別器１３３及びｙａｗ方向識別器１３４によりｐｉｔｃｈ方向及びｙａｗ方向の回転がないと識別された場合は、基準画像の特徴点の座標と同一の座標となる位置周りの適切な範囲の探索範囲として設定する制約条件を生成してもよい。これにより、パラメータ算出部１４０は、高精度にパラメータを算出することが可能となる。【０１０６】
図１８は、ｒｏｌｌ方向の回転がないと識別された場合の傾きパラメータの解の探索範囲を説明するための図である。図１８に示すように、傾き角度検出部１４１は、±ｓを解の探索範囲とする制約条件を利用することにより、評価値が最大であるａ＝ａ３ではなく、ａ＝ａ２を正しい傾き角度として算出することができる。【０１０７】
また、制約条件生成部１３０は、各回転方向の識別器による識別の誤りを補償するために、上記実施の形態よりも所定の幅だけ広げた範囲を探索範囲とする制約条件を生成してもよい。例えば、ｙａｗ方向の動きが“正の向き”と識別されたときに、制約条件生成部１３０は、厳密にａ≧０の範囲を探索範囲とするのではなく、ａ≧−ｓを探索範囲とする制約条件を生成する。一方、ｙａｗ方向の動きが“負の向き” と識別されたときには、制約条件生成部１３０は、ａ≦ｓを探索範囲とする制約条件を生成する。これにより、パラメータ算出部１４０は、各回転方向の識別器が、評価値Ｚを算出する際に混入する変動成分によって、各回転方向の動きを誤って識別した場合、あるいはセンサが検出できなかった小さく緩やかな動きがあった場合であっても、正しいパラメータを算出することが可能となる。つまり、制約条件生成部１３０がこのような補償処理を行うことで、パラメータ算出部１４０は、パラメータの算出精度をより高めることが可能となる。【０１０８】
また、上記実施の形態において、制約条件生成部１３０は、各回転方向の識別器により識別された撮影装置の動きに応じて、パラメータ算出部１４０がパラメータを算出する際にパラメータ値（解）の範囲を限定するための制約条件を生成していたが、本発明に係る撮影装置はこのような撮影装置に限定されるものではない。例えば、本発明に係る撮影装置は、各回転方向の識別器により識別された撮影装置の動きに応じて、パラメータに重み付けを行うための制約条件を生成してもよい。この場合、パラメータ算出部１４０は、制約条件に含まれる重み付けを用いて、解の候補となる値（候補値）に対して評価値を算出する。そして、パラメータ算出部１４０は、算出した評価値が最も高くなる候補値をパラメータとして算出する。【０１０９】
また、上記実施の形態において、揺れ検出部１４２は、特徴点マッチングにより平行移動量を算出していたが、特徴点マッチングに限定される必要はない。例えば、揺れ検出部１４２は、オプティカルフロー、パターンマッチングなど他のマッチング手法を用いて平行移動量を算出してもよい。【０１１０】
また、上記実施の形態において、揺れ検出部１４２は、平行移動量を算出していたが、回転と平行移動とを同時に扱うことができるマッチング手法を用いて、回転角度と平行移動量を同時に算出してもよい。例えば、揺れ検出部１４２は、画像を球面に投射し、その球面を原点を中心に回転させることでマッチングを行ってもよい。これにより、揺れ検出部１４２は、ｒｏｌｌ、ｐｉｔｃｈ、及びｙａｗの三軸回りのマッチングを同時に行うことが可能となる。そして、画像補正部１５０は、揺れ検出部１４２により算出されたｒｏｌｌ、ｐｉｔｃｈ、及びｙａｗのそれぞれの回転量だけ、球面に投射された画像を回転する。さらに、画像補正部１５０は、回転した画像を再び平面に逆投射することにより、回転と平行移動との両方を補正することが可能となる。【０１１１】
また、揺れ検出部１４２は、マッチング手法ではなく、ＰＯＣ（位相限定相関）法などの解析的手法を用いて平行移動量等を算出してもよい。この場合、ＰＯＣ法では回転と平行移動とを同時に扱うことができないため、傾き角度検出部１４１により算出された画像の傾き角度を用いて、揺れ検出部１４２が平行移動量を算出する前に画像から回転成分の揺れを除去しておくことが望ましい。【０１１２】
また、上記実施の形態において、パラメータ算出部１４０は、映像データに含まれる、時間的に隣接する画像間で位置合わせを行うためのパラメータを算出していたが、本発明に係る撮影装置は、必ずしも時間的に隣接する画像間についてパラメータを算出しなくともよい。例えば、パラメータ算出部１４０は、基準となる画像を予め決定し、決定した画像とその他の画像との間で位置合わせを行うためのパラメータを算出するようにしてもよい。【０１１３】
なお、本発明は、このような撮影装置として実現できるだけでなく、撮影装置に含まれ画像処理部が有する構成部を備える画像処理装置として実現することができる。また、このような画像処理装置に含まれる特徴的な構成部をステップとする画像処理方法として実現したり、そのような特徴的なステップをコンピュータに実行させるプログラムとして実現したりすることもできる。そして、そのようなプログラムは、ＣＤ−ＲＯＭ等の記録媒体及びインターネット等の伝送媒体を介して流通させることができるのは言うまでもない。【０１１４】
また、本発明は、画像処理装置の機能の全て又は一部を実現する集積回路（ＬＳＩ）として実現してもよい。例えば、図１９に示すように、集積回路４０００は、少なくともインタフェース部１２０、制約条件生成部１３０、及びパラメータ算出部１４０を備える。【０１１５】
また、本発明は、画像処理装置の機能の全て又は一部を実現する再生装置として実現してもよい。例えば、図２０に示すように、再生装置５０００は、画像処理部１０３と再生部５００１とを備える。再生部５００１は、画像補正部１５０により補正された映像データを再生する。
【産業上の利用可能性】
【０１１６】
本発明の撮影装置は、撮影装置に発生する動きに起因した画像の回転及び撮影領域の変動を補正する装置として有用であり、デジタルスチルカメラ、デジタルビデオカメラをはじめとする撮影装置のみならず、身体に装着してハンズフリー撮影を行うような小型の撮影装置に対しても適用可能である。
【図１】
2009072264.tif 000005
【図２】
2009072264.tif 000006
【図３】
2009072264.tif 000007
【図４】
2009072264.tif 000008
【図５】
2009072264.tif 000009
【図６】
2009072264.tif 000010
【図７】
2009072264.tif 000011
【図８】
2009072264.tif 000012
【図９Ａ】
2009072264.tif 000013
【図９Ｂ】
2009072264.tif 000014
【図１０】
2009072264.tif 000015
【図１１Ａ】
2009072264.tif 000016
【図１１Ｂ】
2009072264.tif 000017
【図１２Ａ】
2009072264.tif 000018
【図１２Ｂ】
2009072264.tif 000019
【図１２Ｃ】
2009072264.tif 000020
【図１２Ｄ】
2009072264.tif 000021
【図１３】
2009072264.tif 000022
【図１４】
2009072264.tif 000023
【図１５】
2009072264.tif 000024
【図１６】
2009072264.tif 000025
【図１７】
2009072264.tif 000026
【図１８】
2009072264.tif 000027
【図１９】
2009072264.tif 000028
【図２０】
2009072264.tif 000029
【手続補正書】
【提出日】平成22年5月26日(2010.5.26)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はカメラなどの撮影装置に関するものである。
【背景技術】
【０００２】
近年、カメラの小型化、軽量化が進み、撮影者は、カメラを手で保持した状態で映像を撮影することが一般的に行われるようになってきている。また、撮影者は、カメラを手で保持せずに眼鏡、衣服、帽子などに装着して映像を撮影すること、いわゆるハンズフリー撮影も行われるようになっている。このような眼鏡、衣服、帽子などに装着された小型カメラによる撮影では、従来の大型で重量のあるカメラを使用していたときには問題とならなかった課題が明らかになってきている。その課題の一つが、撮影された映像に存在する映像揺れである。この映像揺れは、撮影者による撮影の自由度が高い、小型かつ軽量なカメラほど顕著である。そこで、従来、映像揺れを抑制又は補正する技術の開発が行われてきた。
【０００３】
従来の映像揺れを抑制又は補正する技術には、電子式揺れ補正方式、光学式揺れ補正方式などがある。そして、これら電子式揺れ補正方式、光学式揺れ補正方式などの中には、映像揺れを抑制又は補正する性能を向上されるために、加速度センサ、ジャイロセンサ、傾きセンサなどの各種センサを用いて撮影時に生じた揺れを検出できるようにしたものがある（例えば、特許文献１参照）。特許文献１に記載の手振れ補正装置は、カメラに装着された傾きセンサを用いて、揺れの傾向に関する情報を取得する。そして、この手振れ補正装置は、取得した揺れの傾向に関する情報を利用して、揺れ量及び揺れ方向の検出のための画像探索（マッチング）を行う。その結果、特許文献１に記載の手振れ補正装置は、揺れ量及び揺れ方向の検出のために要する計算量を削減することが可能となる。
【０００４】
また、センサから得られた揺れ情報をより積極的に用いて、映像揺れを抑制する技術も提案されている（例えば、特許文献２参照）。特許文献２に記載の手振れ補正装置は、時系列で入力されるセンサデータを学習することにより、撮影される瞬間の揺れ振動を予測する。そして、この手振れ補正装置は、予測した揺れ振動の情報を用いて揺れ振動を打ち消すように揺れ補正レンズを駆動することにより、揺れを抑制する。その結果、特許文献２に記載の手振れ補正装置は、実際の手ブレ振動の特性（撮影者の癖、カメラ本体に装着された交換レンズの重量バランス等）に対応した揺れを抑制することが可能となる。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００６−３４３６５２号公報
【特許文献２】特開平７−２０５４７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、特許文献１及び特許文献２に記載の手振れ補正装置は、ともに、センサから安定した信号が取得できるような静的な撮影条件を想定して映像揺れを補正している。つまり、特許文献１及び特許文献２に記載の手振れ補正装置は、撮影者が小型軽量カメラを手に保持した状態あるいはハンズフリーカメラを装着した状態で移動しながら撮影を行うことを想定していない。ハンズフリー撮影では、撮影者はカメラを手で保持しないため撮影状態が不安定となる。また、加えて、ハンズフリー撮影では、歩行による振動がカメラに加わる。このような撮影状態において、小型で安価なセンサが用いられた場合には、慣性ノイズあるいは他軸感度といったノイズがセンサからの出力信号に重畳するため、センサからの出力信号の信頼度は著しく低下する。したがって、このようにセンサからの出力信号の信頼度が低い場合、従来の映像揺れを補正する技術では、センサからの出力信号を映像揺れの補正に利用することができないという課題を有していた。
【０００７】
そこで、本発明は、上記従来の課題を解決するもので、撮影装置の動きを計測するセンサの精度が低い場合であっても、大きな映像揺れを高精度に補正するためのパラメータを算出することができる画像処理装置等を提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記目的を達成するために、本発明に係る画像処理装置は、動きを検知するセンサを備える撮影装置により撮影された二以上の画像間の位置合わせを行うためのパラメータを算出する画像処理装置であって、前記撮影装置により撮影された画像を取得する画像取得部と、前記画像取得部により取得された画像が撮影された際の前記センサの出力信号であるセンサ情報を取得するセンサ情報取得部と、前記センサ情報取得部により取得されたセンサ情報を用いて、前記パラメータが算出される際に前記パラメータが所定範囲の値となるような制約条件を生成する制約条件生成部と、前記制約条件生成部により生成された制約条件に従って、前記画像取得部により取得された画像について前記パラメータを算出するパラメータ算出部とを備え、前記制約条件生成部は、前記センサ情報取得部により取得されたセンサ情報の特徴を示す特徴ベクトルを生成する特徴ベクトル生成部と、前記特徴ベクトルと前記撮影装置の動きとの関連付けを利用して、前記特徴ベクトル生成部により生成された特徴ベクトルから前記撮影装置の動きを識別する動き識別部とを含み、前記関連付けは、前記特徴ベクトルと前記撮影装置の実際の動きとが予め機械学習された結果得られる関連付けであり、前記制約条件生成部は、前記動き識別部により識別された前記撮影装置の動きに応じて前記所定範囲を特定することにより、前記制約条件を生成する。
【０００９】
これにより、特徴ベクトルと撮影装置の実際の動きとが予め機械学習された関連付けの情報を利用して撮影装置の動きを識別することができるので、センサからの出力信号の信頼性が低い場合でも、高精度に撮影装置の動きを識別することが可能となる。そして、そのように識別した撮影装置の動きに基づいて生成された制約条件を用いて、パラメータを算出することができるので、画像間の位置合わせを行うためのパラメータを高精度に算出することが可能となる。
【発明の効果】
【００１０】
以上の説明から明らかなように、本発明に係る画像処理装置は、撮影装置の動きを計測するセンサの精度が低い場合であっても、大きな映像揺れを高精度に補正するためのパラメータを算出することができる。
【図面の簡単な説明】
【００１１】
【図１】図１は、本発明の実施の形態１に係る撮影装置の機能構成を示すブロック図である。
【図２】図２は、加速度センサ及び角速度センサの計測軸を示す図である。
【図３】図３は、実施の形態１に係る撮影装置が備える画像処理部１０３の動作を示すフローチャートである。
【図４】図４（ａ）及び（ｂ）は、ＡｄａＢｏｏｓｔについて説明するための図である。
【図５】図５は、傾きパラメータａについてのヒストグラムの一例を示す図である。
【図６】図６は、画像取得部により取得された映像データに含まれる画像の一例を示す図である。
【図７】図７は、画像取得部により取得された映像データに含まれる画像の一例を示す図である。
【図８】図８は、図７に示す画像を用いて作成された傾きパラメータａについてのヒストグラムの一例を示す図である。
【図９Ａ】図９Ａは、時刻ｔ−１に撮影された画像の一例を示す図である。
【図９Ｂ】図９Ｂは、時刻ｔに撮影された画像の一例を示す図である。
【図１０】図１０は、特徴点マッチングにより算出された平行移動量を説明するための図である。
【図１１Ａ】図１１Ａは、撮影装置により時刻ｔ−１に撮影された画像の一例を示す図である。
【図１１Ｂ】図１１Ｂは、撮影装置により時刻ｔに撮影された画像の一例を示す図である。
【図１２Ａ】図１２Ａは、図１１Ａに示した特徴点を抽出した図である。
【図１２Ｂ】図１２Ｂは、図１１Ｂに示した特徴点を抽出した図である。
【図１２Ｃ】図１２Ｃは、揺れ検出部が制約条件を利用しないで、図１２Ａにおいて白三角で示される特徴点についてテンプレートマッチングを行う場合の探索領域を示す図である。
【図１２Ｄ】図１２Ｄは、揺れ検出部が制約条件を利用して、図１２Ａにおいて白三角で示される特徴点についてテンプレートマッチングを行う場合の探索領域を示す図である。
【図１３】図１３は、画像補正部が図１１Ｂに示す画像に対して補正を行った結果の画像の一例を示す図である。
【図１４】図１４は、本発明の実施の形態２に係る撮影装置の機能構成を示すブロック図である。
【図１５】図１５は、第一角速度センサ及び第二角速度センサの計測軸の一例を示す図である。
【図１６】図１６は、本発明の実施の形態３に係る撮影装置の機能構成を示すブロック図である。
【図１７】図１７は、本発明の実施の形態４に係る撮影装置の機能構成を示すブロック図である。
【図１８】図１８は、ｒｏｌｌ方向の回転がないと識別された場合の傾きパラメータの解の探索範囲を説明するための図である。
【図１９】図１９は、本発明に係る集積回路の機能構成を示すブロック図である。
【図２０】図２０は、本発明に係る再生装置の機能構成を示すブロック図である。
【発明を実施するための形態】
【００１２】
以下、本発明の実施の形態について、図面を参照しながら説明する。
【００１３】
（実施の形態１）
図１は本発明の実施の形態１に係る撮影装置１００の機能構成を示すブロック図である。図１に示すように、撮影装置１００は、センサ部１０１、撮影部１０２、及び画像処理部１０３を備える。
【００１４】
センサ部１０１は、加速度センサ１１１と角速度センサ１１２とからなり、互いに直交する三つの軸方向（ｘ、ｙ、ｚ軸方向）の加速度とその三つの軸回り（ｒｏｌｌ、ｐｉｔｃｈ、ｙａｗ）の角速度とについて撮影装置１００自身の動きの計測を行う。そして、センサ部１０１は、その計測結果を画像処理部１０３に出力する。
【００１５】
なお、本実施の形態では、説明の便宜のため、撮影装置１００のレンズの光軸とｚ軸とが一致するようにｘｙｚ座標系を設定する。また、図２に示すように、三つの軸回り（ｒｏｌｌ、ｐｉｔｃｈ、ｙａｗ）の角速度は、原点からみて各軸の時計回りを正の向きとし、反時計回りを負の向きとする。
【００１６】
また、センサ部１０１は、加速度センサ１１１及び角速度センサ１１２からのアナログ出力信号をデジタル信号に変換する。つまり、センサ部１０１は、図示しないＡＤＣ（Analog to Digital Converter）を備え、デジタル信号を画像処理部１０３に出力する。なお、本実施の形態では、センサ部１０１がデジタル信号を出力する場合について説明するが、本発明に係る撮影装置は、このような撮影装置に限定されるものではない。例えば、画像処理部１０３がセンサ部１０１から出力されたアナログ信号をデジタル信号に変換してもよい。
【００１７】
撮影部１０２は、レンズ、撮像素子等からなり、被写体を撮影する。そして、撮影部１０２は、被写体を撮影した画像を画像処理部１０３等に出力する。
【００１８】
画像処理部１０３は、ＣＰＵ（Central Processing Unit）、メモリ等からなる処理部であり、インタフェース部１２０、制約条件生成部１３０、パラメータ算出部１４０、及び画像補正部１５０を備える。
【００１９】
インタフェース部１２０は、センサ情報取得部１２１及び画像取得部１２２を備える。センサ情報取得部１２１は、画像取得部１２２により取得された映像データに含まれる二以上の画像のそれぞれが撮影された際のセンサ部１０１からの出力信号をセンサ情報として取得する。画像取得部１２２は、撮影部１０２により撮影された二以上の画像を含む映像データを取得する。
【００２０】
制約条件生成部１３０は、特徴ベクトル生成部１３１並びにｒｏｌｌ方向識別器１３２、ｐｉｔｃｈ方向識別器１３３、及びｙａｗ方向識別器１３４を備える。制約条件生成部１３０は、センサ情報取得部１２１により取得されたセンサ情報を用いて、パラメータが算出される際にパラメータが所定範囲の値となるような制約条件を生成する。
【００２１】
特徴ベクトル生成部１３１は、センサ情報取得部１２１により取得されたセンサ情報の特徴を示す特徴ベクトルを生成する。
【００２２】
ｒｏｌｌ方向識別器１３２、ｐｉｔｃｈ方向識別器１３３、及びｙａｗ方向識別器１３４は、動き識別部の一例であり、特徴ベクトルと撮影装置１００の動きとの関連付けを利用して、特徴ベクトル生成部１３１により生成された特徴ベクトルから撮影装置１００の各軸回り（ｒｏｌｌ、ｐｉｔｃｈ、ｙａｗ）の動きの向きを識別する。ここで、撮影装置１００の各軸回りの動きの向きの識別には、どの向きにも動いていないことを識別することが含まれる。また、特徴ベクトルと撮影装置１００の動きとの関連付けは、特徴ベクトルと撮影装置１００の実際の動きとが予め機械学習された結果得られる関連付けである。ここで、機械学習とは、コンピュータが、複数のサンプルデータ集合を対象に解析を行い、そのデータから有用なルール、判断基準などを抽出することをいう。
【００２３】
パラメータ算出部１４０は、傾き角度検出部１４１及び揺れ検出部１４２を備える。パラメータ算出部１４０は、画像取得部１２２により取得された映像データと、制約条件生成部１３０により生成された制約条件とを用いて、時間的に隣接する画像（以下、単に隣接画像という。）間の位置合わせを行うためのパラメータを算出する。
【００２４】
傾き角度検出部１４１は、制約条件生成部１３０により生成された、解が所定範囲の値となるような制約条件に従って、画像から絶対水平又は絶対垂直を示す要素の傾きを抽出することにより、画像の傾き角度をパラメータとして算出する。
【００２５】
揺れ検出部１４２は、制約条件生成部１３０により生成された、解が所定範囲の値となるような制約条件に従って、映像データに含まれる時間的に隣接する二つの画像間における被写体像の相対的な移動量をパラメータとして算出する。
【００２６】
画像補正部１５０は、パラメータ算出部１４０により算出された、画像間の位置合わせを行うためのパラメータに基づいて、映像データに含まれる隣接フレーム間の画像の位置合わせを行う。
【００２７】
次に、以上のように構成された本実施の形態に係る撮影装置１００の動作について説明する。
【００２８】
図３は、本実施の形態に係る撮影装置１００が備える画像処理部１０３の動作を示すフローチャートである。
【００２９】
まず、画像取得部１２２は、撮影部１０２により生成された映像データを取得する（ステップＳ１０１）。続いて、センサ情報取得部１２１は、センサ部１０１により映像データが撮影された際に測定されたセンサ情報を取得する（ステップＳ１０２）。具体的には、センサ情報取得部１２１は、加速度センサ１１１及び角速度センサ１１２により測定された、各軸方向（ｘ、ｙ、ｚ軸方向）の加速度及び各軸回り（ｒｏｌｌ、ｐｉｔｃｈ、ｙａｗ）の角速度を取得する（ステップＳ１０２）。
【００３０】
次に、特徴ベクトル生成部１３１は、取得されたセンサ情報を用いて各種演算を行うことにより、センサ情報の特徴を示す特徴ベクトルを生成する（ステップＳ１０３）。そして、各回転方向の識別器（ｒｏｌｌ方向識別器１３２、ｐｉｔｃｈ方向識別器１３３、及びｙａｗ方向識別器１３４）は、特徴ベクトル生成部１３１により生成された特徴ベクトルから撮影装置１００の各回転方向の動きを識別する（ステップＳ１０４）。そして、制約条件生成部１３０は、各回転方向の識別器により識別された撮影装置１００の各回転方向の動きを用いて、パラメータ算出部１４０がパラメータを算出する際に解となるパラメータの値の範囲を制限する制約条件を生成する（ステップＳ１０５）。
【００３１】
次に、傾き角度検出部１４１は、制約条件生成部１３０により生成された制約条件に従って、画像から絶対水平又は絶対垂直を示す要素の傾きを抽出することにより、画像の傾き角度をパラメータとして算出する（ステップＳ１０６）。そして、揺れ検出部１４２は、制約条件生成部１３０により生成された制約条件に従って、映像データに含まれる時間的に隣接する二つの画像間における被写体像の相対的な移動量をパラメータとして算出する（ステップＳ１０７）。
【００３２】
最後に、画像補正部１５０は、傾き角度検出部１４１及び揺れ検出部１４２により算出されたパラメータを用いて、画像取得部１２２により取得された映像データを補正する（ステップＳ１０８）。
【００３３】
以下、図３に示した各ステップにおける処理の詳細について説明する。まず、特徴ベクトル生成部１３１による処理（図３のステップＳ１０３）の詳細について説明する。
【００３４】
特徴ベクトル生成部１３１は、センサ情報取得部１２１により取得されたセンサ情報（三軸方向の加速度及び角速度）を用いて、センサ情報の特徴を示す特徴ベクトルを生成する。具体的には、特徴ベクトル生成部１３１は、制約条件生成部１３０が備える図示しないバッファに時系列順に格納されたセンサ情報（センサ情報取得部１２１により取得されたセンサ情報）を読み出し、読み出したセンサ情報を用いて所定の演算を行う。例えば、特徴ベクトル生成部１３１は、同じ時刻ｔに加速度センサ１１１により計測された各軸方向の加速度の大きさを比較したり、時刻ｔ−１と時刻ｔとに角速度センサ１１２により計測されたｒｏｌｌの角速度の差分値を求めたりなどの演算を行う。そして、特徴ベクトル生成部１３１は、上記のような演算を行った結果を所定のルール（符号化ルール）に従って符号化した符号からなる特徴ベクトルを生成する。ここで、符号化ルールとは、例えば、ある演算を行った結果が正の値であれば１を、それ以外であれば−１を与えるというルールである。また、符号化ルールは、例えば、各センサ出力値間の値の大きさを比較した結果、最も大きい値を持つセンサ出力値に１を、それ以外のセンサ出力値すべてに−１を与えるというルールである。このように、特徴ベクトル生成部１３１は、バッファに格納されている各センサ出力値を用いて様々な演算を行い、演算結果の符号列である特徴ベクトルｘ（ｉ）を生成する。なお、本実施の形態に係る撮影装置１００における符号化ルールは、上記のルールに限定されるものではない。
【００３５】
次に、各回転方向の識別器（ｒｏｌｌ方向識別器１３２、ｐｉｔｃｈ方向識別器１３３、及びｙａｗ方向識別器１３４）による処理（図３のステップＳ１０４）の詳細について説明する。
【００３６】
各回転方向の識別器は、ＡｄａＢｏｏｓｔと呼ばれる機械学習の手法によって得られる強識別器により構成される。ここで、ＡｄａＢｏｏｓｔとは、ブースティング手法の一例であり、弱い性能を持った多数の識別器（弱識別器）を重み付けしながら組み合わせることにより、一つの高性能の識別器（強識別器）を構成する機械学習の手法である。
【００３７】
図４（ａ）及び（ｂ）は、ＡｄａＢｏｏｓｔについて説明するための図である。図４（ａ）に示すように、ＡｄａＢｏｏｓｔでは、学習時において、まず、学習コンピュータが、特徴ベクトルｘ（ｉ）と、その特徴ベクトルｘ（ｉ）が得られたときの撮影装置１００の実際の動きｙ（ｉ）との組合せである複数の学習データを取得する。動きｙ（ｉ）は、ある回転軸の動きを正の向きに動いたときを「１」と、それ以外のときを「−１」と符号化されたものである。ここで、センサ情報を用いて生成された特徴ベクトルｘ（ｉ）と符号化された撮影装置１００の動きｙ（ｉ）とは何らかの関連があるはずである。そこで、学習コンピュータは、このように取得されたｘ（ｉ）とｙ（ｉ）との複数の組合せについて、単純な仮説（例えば、「特徴ベクトルｘの３番目の成分が１のときｙは１である」、など）を次々に修正しながら逐次仮説ごとの正解率を求める。そして、学習コンピュータは、最も正解率が高かった仮説を採用した識別器が弱識別器と決定する。なお、弱識別器の出力も、「１」、あるいは「−１」の値を持つ符号である。さらに、学習コンピュータは、決定済みの弱識別器が識別できなかった特徴を識別することに重きを置くような新たな弱識別器の決定を繰り返す。このような学習の結果、学習コンピュータは、複数の弱識別器と、各弱識別器の正答率に基づく各弱識別器の重みとからなる強識別器を生成する。
【００３８】
図４（ｂ）に示すように、上記のような機械学習により生成された強識別器は、特徴ベクトルｘが入力された場合、まず各弱識別器の出力値を重み付け加算する。具体的には、ｉ番目の弱識別器の出力値がｚ（ｉ）、その出力値に対する重みがｗ（ｉ）である場合、強識別器は、下式（１）に基づいて、評価値Ｚを算出する。
【００３９】
【数１】
2009072264.tif 000030
【００４０】
次に、強識別器は、このように算出された評価値Ｚを閾値と比較することにより、所定の回転軸について正の向きへの動きがあったかどうかを識別する。つまり、強識別器は、学習が終了した後は、センサ情報取得部１２１により取得されたセンサ情報から生成される特徴ベクトルｘと、学習コンピュータによって生成された重みｗ（ｉ）とから、所定の軸回りの回転方向の動きの有無を推定することが可能となる。
【００４１】
各回転方向の識別器は、このように生成された強識別器により構成される。例えば、ｒｏｌｌ方向識別器１３２は、ｚ軸回りの正負それぞれの方向への動きの有無を識別する強識別器により構成される。この二つの強識別器がともに“動きなし”と識別した場合は、ｒｏｌｌ方向識別器１３２は、撮影装置１００がｒｏｌｌ方向へ動いていないと識別する。
【００４２】
このように、例えば、撮影装置１００が製品として出荷される前に、予め工場等において学習コンピュータが学習データを用いて強識別器を生成することにより、撮影装置１００は、当該撮影装置１００の特徴に応じた各回転方向の識別器を備えることが可能となる。また、学習コンピュータは、センサ情報から生成された特徴ベクトルと撮影装置１００の実際の動きとを含む学習データを用いて、特徴ベクトルから撮影装置１００の動きを識別する強識別器を生成する。つまり、強識別器は、画像の動きではなく、撮影装置１００の動きを識別する。これにより、本実施の形態に係る各回転方向の識別器は、撮影された画像の特徴量等を学習データとして画像の動きを識別するよりも、より大きな揺れに対して高精度に動きを識別することが可能となる。
【００４３】
なお、上記において、学習コンピュータが強識別器を生成していたが、撮影装置１００が学習データを用いて強識別器を生成してもよい。その場合、撮影装置１００は、学習コンピュータを備えることとなる。つまり、撮影装置１００は、学習データを取得する学習データ取得部と、学習データ取得部により取得された学習データを用いて、強識別器を生成する学習部とを備えることとなる。
【００４４】
次に、制約条件生成部１３０による処理（図３のステップＳ１０５）の詳細について説明する。
【００４５】
制約条件生成部１３０は、各回転方向の識別器（ｒｏｌｌ方向識別器１３１、ｐｉｔｃｈ方向識別器１３２及びｙａｗ方向識別器１３３）が識別した撮影装置１００の各回転方向の動きを用いて、パラメータ算出部１４０においてパラメータを算出するときにパラメータの値の範囲を制限する制約条件を生成する。なお、制約条件の具体例は後述する。
【００４６】
次に、傾き角度検出部１４１による処理（図３のステップＳ１０６）の詳細について説明する。
【００４７】
傾き角度検出部１４１は、映像データに含まれる各画像から垂直あるいは水平を表す線分の傾きを、Ｈｏｕｇｈ変換などを用いて抽出することにより、画像の絶対水平あるいは絶対垂直に対する傾き角度を算出する。
【００４８】
一般的に、Ｈｏｕｇｈ変換では、抽出されたｘ−ｙ座標空間上の直線ｙ＝ａｘ＋ｂ（ただしａ、ｂは実数)を、ａ−ｂパラメータ空間においてｂ＝−ａｘ＋ｙと表現する。そして、ａ−ｂパラメータ空間上の点（ａ，ｂ）のうち、最も多くの直線が交わる点（ａ０，ｂ０）が、最も長い線分の直線パラメータとして抽出される。そこで、傾き角度検出部１４１は、パラメータａ、ｂのうち傾きパラメータａに注目し、交差する直線の数を評価値として傾きパラメータａについてのヒストグラムを作成する。そして、傾き角度検出部１４１は、評価値が最も高い傾きパラメータａを画像の代表的な線分の傾きとして抽出する。
【００４９】
図５は、傾きパラメータａについてのヒストグラムの一例を示す図である。図５に示すヒストグラムの場合、傾き角度検出部１４１は、最も評価値が高いａ＝ａ０を画像の代表的な線分の傾き、つまり絶対水平あるいは絶対垂直を示す要素の傾きとして抽出する。ここで抽出された傾きを用いて、絶対水平あるいは絶対垂直のいずれかに対する画像の傾き角度が算出される。なお、傾き角度検出部１４１は、例えば、±４５度に対応する傾きを境にして、絶対値が４５度以上となる傾きの場合には絶対水平に対する傾き、絶対値が４５度未満となる傾きの場合には絶対垂直に対する傾きとみなして、画像の傾き角度を算出する。つまり、Ｗｏｒｌｄ座標系における鉛直方向を０度とした場合、４５度以上となる傾きのときには、傾き角度検出部１４１は、９０度からその傾きを減じた角度を絶対水平に対する傾き角度として算出する。一方、４５度未満となる傾きのときには、傾き角度検出部１４１は、その角度を絶対垂直に対する傾き角度として算出する。
【００５０】
図６は、画像取得部１２２により取得された映像データに含まれる画像の一例を示す図である。図６に示す画像は、反時計回りに１５度傾いた画像である。この画像において、人物の後方に写っている建物の縦方向の輪郭線が最も長い線分である。したがって、傾き角度検出部１４１は、この輪郭線の傾きから、絶対垂直に対する傾き角度である１５度を算出する。なお、傾き角度検出部１４１が映像データに含まれる隣接画像間の回転量を算出する場合には、傾き角度検出部１４１は、例えば、時刻ｔ−１の画像の傾き角度と時刻ｔの傾き角度との差から回転量を算出することができる。
【００５１】
上記のような傾き角度の算出において、傾き角度検出部１４１は制約条件生成部１３０により生成された制約条件を利用する。以下、傾き角度検出部１４１において利用される制約条件について説明する。
【００５２】
撮影装置１００に生じたｒｏｌｌ方向の運動は、撮影装置１００の光軸回りの運動である。したがって、ｒｏｌｌ方向の運動が存在する状況において撮影が行われると、撮影装置１００のｒｏｌｌ方向の動きと反対向きへ傾いた画像が撮影される。したがって、ｒｏｌｌ方向識別器１３２がｒｏｌｌ方向の正の向きへの動きを識別した場合、制約条件生成部１３０は、傾き角度の値の範囲を負の角度に限定する制約条件を生成する。一方、ｒｏｌｌ方向識別器１３２がｒｏｌｌ方向の負の向きへの動きを識別した場合、制約条件生成部１３０は、傾き角度の値の範囲を正の角度に限定する制約条件を生成する。これにより、傾き角度検出部１４１は、傾き角度が負又は正となる傾きの範囲のみについて解を探索することにより、画像の傾きを抽出することができる。
【００５３】
具体例について図面を用いて説明する。図７は、画像取得部１２２により取得された映像データに含まれる画像の一例を示す図である。図７に示す画像は、撮影装置１００がｒｏｌｌ方向の正の向き（時計回り）に回転した状態で撮影された画像であるため、反時計回りに回転した画像となっている。図８は、図７に示す画像を用いて作成された傾きパラメータａについてのヒストグラムの一例を示す図である。図８に示すヒストグラムにおいて、ａ０及びａ１の評価値がほぼ同じである。ここで、制約条件が無い場合、傾き角度検出部１４１は、最も評価値が高い傾きを絶対水平あるいは絶対垂直に対する傾きと抽出する。しかし、線分抽出処理を行う際の演算誤差などが存在することを考慮すると、評価値の差が微小な場合には、傾き角度検出部１４１が単純に最も評価値が高い傾きを抽出することは、誤った傾きを抽出する危険がある。そこで、画像の傾き角度が負となる範囲に傾きを限定する制約条件を用いることにより、傾き角度検出部１４１は、解の存在範囲を図８に示すヒストグラムのａ＞０の領域に限定する。このように制約条件を用いて解の範囲を限定することにより、傾き角度検出部１４１は、ａ１を絶対水平あるいは絶対垂直に対する傾きとして抽出する。つまり、傾き角度検出部１４１は、ａ０を絶対水平あるいは絶対垂直に対する傾きとして抽出しない。以上のように、傾き角度検出部１４１は、制約条件生成部１３０により生成された制約条件を用いて解の存在範囲を限定することにより、求められる解の精度を向上させることができる。また、傾き角度検出部１４１は、評価値の最大値を探索する際に、制約条件により限定された解の範囲のみを探索することにより、演算コストも抑制することが可能となる。
【００５４】
次に、揺れ検出部１４２による処理（図３のステップＳ１０７）の詳細について説明する。
【００５５】
揺れ検出部１４２は、隣接画像間に存在する動きを検出する処理部であり、主に平行移動量の検出を行う。具体的には、揺れ検出部１１８は、取得した映像データに含まれる隣接画像のそれぞれの特徴点を抽出する。そして、揺れ検出部１１８は、隣接画像間で抽出した特徴点のマッチングを行うことにより、特徴点の位置が合致するような平行移動量を求める。
【００５６】
図９Ａ及び図９Ｂは、時刻ｔ−１と時刻ｔに撮影された画像間の平行移動量について説明するための図である。具体的には、図９Ａは、時刻ｔ−１に撮影された画像の一例を示す図である。また、図９Ｂは、時刻ｔに撮影された画像の一例を示す図である。
【００５７】
最初に、揺れ検出部１４２は、時間的に隣接する二つの画像のそれぞれから特徴点を抽出する。特徴点の抽出の方法として様々な手法があるが、揺れ検出部１４２は、特に特徴点の抽出の方法を限定する必要はない。つまり、揺れ検出部１４２は、画像の輝度又は色の変化からエッジ又はコーナーを抽出する一般的な方法を用いて特徴点を抽出してもよいし、他の方法を用いて特徴点を抽出してもよい。ここでは、特徴点の抽出についての詳細な説明は割愛する。図９Ａ及び図９Ｂに記された白丸、白三角、及び白四角の記号のそれぞれは、揺れ検出部１４２により抽出された特徴点である。ここで、同じ形の記号は、二枚の画像間で対応する特徴点であることを示している。
【００５８】
次に、揺れ検出部１４２は、特徴点マッチングを行う。具体的には、揺れ検出部１４２は、基準となる時刻ｔ−１の画像（基準画像）の各特徴点の周りにテンプレートを設定する。そして、揺れ検出部１４２は、時刻ｔの画像（参照画像）の各特徴点の周りにも同様にテンプレートを設定する。そして、揺れ検出部１４２は、すべての特徴点の組合せでテンプレートマッチングを行うことにより、基準画像と参照画像との間における特徴点の対応関係を決定する。具体的には、例えば、揺れ検出部１４２は、時刻ｔ−１の白三角の特徴点の周りのテンプレートは、時刻ｔの白丸及び白四角の特徴点の周りのテンプレートよりも時刻ｔの白三角の特徴点の周りのテンプレートとの相関が高いことを利用して、二つの画像間における特徴点の対応関係を決定する。そして、揺れ検出部１４２は、決定した特徴点の対応関係を用いて、基準画像と参照画像との間の平行移動量を算出する。
【００５９】
図１０は、特徴点マッチングにより算出された平行移動量を説明するための図である。図１０では、時刻ｔ−１及び時刻ｔの画像における人物像の領域が重ねて表示されている。人物像５０１は、時刻ｔ−１に撮影された画像における人物像を示している。また、人物像５０２は、時刻ｔに撮影された画像における人物像を示している。なお、人物像５０１及び５０２は、それぞれの時刻に撮影された画像の撮影領域を一致させたときの画像である。移動ベクトル５０３は、白三角で示された特徴点の時刻ｔ−１から時刻ｔへの移動ベクトルである。ここで、移動ベクトルの水平方向及び垂直方向の成分がそれぞれΔｘ及びΔｙである場合、時刻ｔの画像全体を水平方向に−Δｘ、垂直方向に−Δｙだけ平行移動させることにより、二つの時刻ｔ−１及び時刻ｔの画像の特徴点を一致させることができる。上記のような方法により、揺れ検出部１４２により算出された平行移動量を用いて、二つの画像の揺れが補正される。
【００６０】
上記のような平行移動量の算出において、本実施の形態に係る揺れ検出部１４２は、制約条件生成部１３０により生成された制約条件を利用する。以下、揺れ検出部１４２において利用される制約条件について、図面を用いて説明する。
【００６１】
図１１Ａは、撮影装置１００により時刻ｔ−１に撮影された画像の一例を示す図である。また、図１１Ｂは、撮影装置１００により時刻ｔに取得された画像の一例を示す図である。図１１Ｂに示す破線で囲まれた領域は、図１１Ａに示す画像に対応する領域を示している。すなわち、図１１Ｂに示す画像は、図１１Ａに示す画像に対して撮影領域が右下に移動した画像である。図１１Ａ及び図１１Ｂに示す画像上にプロットされている白丸、白三角及び黒三角は、当該画像の特徴点である。図１１Ｂに示す特徴点は、撮影領域の移動に追従して、当該特徴点に対応する図１１Ａに示す特徴点よりも左上に移動している。
【００６２】
図１２Ａ及び図１２Ｂは、図１１Ａ及び図１１Ｂに示した特徴点をそれぞれ抽出した図である。ここで、揺れ検出部１４２が、図１２Ａ及び図１２Ｂに示す特徴点を抽出した場合、前述のように、揺れ検出部１４２は、特徴点マッチングにより平行移動量の算出を行う。具体的には、揺れ検出部１４２は、図１２Ａにおいて白三角で示される特徴点が、図１２Ｂのどの特徴点と対応するのかをテンプレートマッチングなどの手法を用いて探索する。
【００６３】
図１２Ｃは、揺れ検出部１４２が制約条件を利用しないで、図１２Ａにおいて白三角で示される特徴点についてテンプレートマッチングを行う場合の探索領域を示す図である。図１２Ｃに示すように、制約条件生成部１３０により生成された制約条件を利用しない場合、揺れ検出部１４２は、斜線領域内に含まれる特徴点（白丸、白三角及び黒三角）に対してマッチング処理を行う。すなわち、揺れ検出部１４２は、斜線領域外にある黒丸で示された特徴点に対してマッチング処理は行わない。ここで、斜線領域で示される探索領域は、図１２Ａにおいて白三角で示される特徴点の画像上の座標と同一の座標（図１２Ｂの破線白三角の位置）を中心とする矩形領域である。このとき、図１１Ａ及び図１１Ｂの画像に写っている鳥居の２本の足（ほぼ同じ構造を持つ）の部分に対応する特徴点群は、特徴点の配置が近似している。したがって、各特徴点の周りに設定されるテンプレートも近似する。その結果、揺れ検出部１４２は、テンプレートマッチングにより正しくない対応付けを行ってしまう可能性がある。すなわち、揺れ検出部１４２は、図１２Ａにおける白三角の特徴点と、図１２Ｃにおける黒三角の特徴点とが対応すると判断してしまう可能性がある。
【００６４】
そこで、揺れ検出部１４２は、制約条件生成部１３０により生成された制約条件を利用して、テンプレートマッチングを行う。具体的には、制約条件生成部１３０は、撮影装置１００に生じたｐｉｃｔｈ方向及びｙａｗ方向の運動が、それぞれ画像の縦方向及び水平方向の平行移動として画像に反映されるという特性を利用して、テンプレートマッチングにおける探索領域を限定する制約条件を生成する。
【００６５】
例えば、ｐｉｔｃｈ方向識別器１３３及びｙａｗ方向識別器１３４が、図１１Ｂに示す画像が撮影されたときのセンサ情報を用いて、ｐｉｔｃｈ方向が正の向き及びｙａｗ方向が負の向き（すなわち撮影装置の光軸の向きが右下を向いたことを意味する）と識別した場合、制約条件生成部１３０は、テンプレートマッチングによる参照画像の探索領域を、マッチングの対象となる基準画像の特徴点の座標と同一の座標よりも左上側の領域とする制約条件を生成する。具体的には、制約条件生成部１３０は、揺れ検出部１４２が図１２Ａ示す白三角に対応する特徴点を図１２Ｂに示す特徴点から探索する場合、図１２Ａに示す白三角の特徴点の座標よりも左上の領域を探索するように制約条件を生成する。
【００６６】
すなわち、制約条件生成部１３０は、ｐｉｔｃｈ方向識別器１３３がｐｉｔｃｈ方向の正の向きへの動きを識別した場合は、基準画像の特徴点の座標と同一の座標よりも上側の領域内の特徴点をマッチングの対象とする制約条件を生成する。一方、制約条件生成部１３０は、ｐｉｔｃｈ方向識別器１３３がｐｉｔｃｈ方向の負の向きへの動きを識別した場合は、基準画像の特徴点の座標と同一の座標よりも下側の領域内の特徴点をマッチングの対象とする制約条件を生成する。
【００６７】
また、制約条件生成部１３０は、ｙａｗ方向識別器１３４がｙａｗ方向の正の向きへの動きを識別した場合は、基準画像の特徴点の座標と同一の座標よりも右側の領域内の特徴点をマッチングの対象とする制約条件を生成する。一方、制約条件生成部１３０は、ｙａｗ方向識別器１３４がｙａｗ方向の負の向きへの動きを識別した場合は、基準画像の特徴点の座標と同一の座標よりも左側の領域内の特徴点をマッチングの対象とする制約条件を生成する。
【００６８】
図１２Ｄは、揺れ検出部１４２が制約条件を利用して、図１２Ａにおいて白三角で示される特徴点についてテンプレートマッチングを行う場合の探索領域を示す図である。揺れ検出部１４２は、制約条件を用いることにより、図１２Ｄに示す斜線領域についてのみテンプレートマッチングを行う。その結果、揺れ検出部１４２は、図１２Ｄにおける黒三角で示す特徴点をテンプレートマッチングの対象としないので、図１２Ａの白三角に対応する特徴点を黒三角と誤って決定することがなくなる。つまり、揺れ検出部１４２は、制約条件を利用することにより、間違った対応付けを行う危険性を抑制できる。また、揺れ検出部１４２は、テンプレートマッチングを行う対象となる特徴点の数を少なくすることができるので、演算負荷を低減させることが可能となる。
【００６９】
次に、画像補正部１５０による処理（図３のステップＳ１０８）の詳細について説明する。画像補正部１５０は、パラメータ算出部１４０により算出された傾き角度と平行移動量とを用いて、基準画像と参照画像との間の位置合わせを行う。以下、その詳細を説明する。
【００７０】
傾き角度検出部１４１で算出された傾き角度をθ、揺れ検出部１４２で検出された移動ベクトルを（Δｘ，Δｙ）とする。この場合、時刻ｔの画像は、時刻ｔ−１の画像に対してθだけ回転している。また、時刻ｔの画像は、時刻ｔ−１の画像に対してΔｘだけ水平方向に、かつ、Δｙだけ垂直方向に平行移動している。したがって、画像補正部１５０は、時刻ｔの画像を−θ回転させるとともに、水平方向に−Δｘ、かつ、垂直方向に−Δｙだけ平行移動させることによって、時刻ｔの画像と時刻ｔ−１の画像との位置ずれを解消させることができる。画像補正部１５０は、アフィン変換を用いて、この位置合わせの処理を行う。具体的には、補正後の座標を（ｘ，ｙ）、補正前の座標を（ｘ０，ｙ０）、３行３列のアフィン行列をＲとする場合、画像補正部１５０は、下式（２）を用いて時刻ｔの画像を補正する。
【００７１】
【数２】
2009072264.tif 000031
【００７２】
ここで、補正前の座標から算出される補正後の座標が画像の領域から逸脱している場合は、画像補正部１５０は、当該補正前の座標の画像情報を破棄する。また、補正後の座標を求めるために必要な補正前の座標が画像の領域から逸脱している場合は、画像補正部１５０は、当該補正後の座標の画像情報を得ることができない。そのため、画像補正部１５０により補正された後の画像には画像情報のない領域が存在する場合がある。
【００７３】
図１３は、画像補正部１５０が図１１Ｂに示す画像に対して補正を行った結果の画像の一例を示す図である。矩形領域５１０は、補正前の画像の領域を示す。また、矩形領域５２０は、補正後の画像領域を示す。ここで、矩形領域５２０の左部と上部とに存在する領域５２１は、補正前の画像が画像情報を保持していない領域を示す。また、矩形領域５１０の右部と下部とに存在する領域５１１は、図１１Ｂに示す補正前の画像の画像領域のうち、位置合わせの際に画像情報が破棄される領域を示す。
【００７４】
以上のように、実施の形態１に係る撮影装置１００は、時間的に隣接した画像の位置合わせを、撮影データに含まれる複数の画像に対して行うことにより、撮影装置１００に動きが加えられても映像データにその動きが反映されないように映像データを補正することが可能となる。
【００７５】
また、撮影装置１００は、特性の異なる複数のセンサ（本実施の形態では、加速度センサと角速度センサ）を用いて、撮影装置１００の動きを識別することができるので、動きを識別する際のロバスト性を向上させることが可能となる。さらに、撮影装置１００は、ＡｄａＢｏｏｓｔ等の学習手法を用いて複数のセンサの振る舞い（すなわち特徴ベクトル）と実際の撮影装置１００の動きとの関連付けを予め行うことができるので、センサの出力値に他軸感度、慣性ノイズなどが重畳していても、安定して撮影装置１００の動きを識別することが可能となる。そして、撮影装置１００は、そのように識別した撮影装置１００の動きに基づいて生成した制約条件を用いてパラメータを算出することができるので、パラメータを精度良く算出することが可能となる。
【００７６】
また、撮影装置１００は、画像の傾きをパラメータとして算出することができるので、映像揺れの主原因である回転成分の揺れを補正するためのパラメータを算出することが可能となる。
【００７７】
（実施の形態２）
次に、本発明の実施の形態２に係る撮影装置について説明する。
【００７８】
図１４は、本発明の実施の形態２に係る撮影装置１０００の機能構成を示すブロック図である。本実施の形態に係る撮影装置１０００は、センサ部１０１が二組の角速度センサを備える点が実施の形態１に係る撮影装置１００と異なる。なお、実施の形態１と同様の構成部に関しては、同一符号にて示し、説明を省略する。
【００７９】
第一角速度センサ１００１及び第二角速度センサ１００２のそれぞれは、互いに直交する三軸回りの角速度を計測する角速度センサであり、撮影装置１０００の動きを計測するセンサである。ここで、第一角速度センサ１００１及び第二角速度センサ１００２は、計測軸が互いに異なるように撮影装置１０００に設置される。
【００８０】
図１５は、第一角速度センサ１００１及び第二角速度センサ１００２の計測軸の一例を示す図である。第一角速度センサ１００１は、互いに直交するｘ１軸、ｙ１軸、及びｚ１軸のそれぞれの軸回りの角速度を検出する。一方、第二角速度センサ１００２は、互いに直交するｘ２軸、ｙ２軸、及びｚ３軸のそれぞれの軸回りの角速度を検出する。例えば、撮影装置１００に対して、ｚ１軸回りの回転運動のみが印加された場合、ｘ１軸及びｙ１軸の軸回りには回転運動が生じていない。したがって、第一角速度センサ１００１は、ｘ１軸及びｙ１軸の軸回りのセンサ情報として０（現実には他軸感度があるため何らかの出力が発生する）を出力する。しかし、ｚ１軸回りの運動はｘ２軸、ｙ２軸、及びｚ２軸のそれぞれの軸回りの運動に分解することができるため、第二角速度センサ１００２は、ｚ１軸回りの回転運動に対して、ｘ２軸、ｙ２軸、及びｚ２軸の軸回りのセンサ情報として０以外の値を出力する。すなわち、撮影装置１００は、ｚ１軸回りの回転運動に対して、別の視点から観測した情報を取得することが可能となる。
【００８１】
以上のように、本実施の形態に係る撮影装置１０００は、実施の形態１に係る撮影装置１００と同様に、センサ部１０１により計測されたセンサ情報を用いて特徴ベクトルを生成する。そして、撮影装置１０００は、この特徴ベクトルを用いて、撮影装置１０００に加えられた運動の三軸回りの回転の向きを識別する。ここで、本実施の形態に係る撮影装置１０００は、図１５に示すように、計測軸が互いに異なる、第一角速度センサと第二角速度センサとを備えることによって、撮影装置１０００に加えられた運動を識別する際の情報の冗長度を増すことができる。このように、情報の冗長度を増やすことは、各回転方向の識別器の精度を向上されることにつながる。つまり、撮影装置１０００は、撮影装置１０００に加えられた運動を複数の異なった視点から観測することによって、パラメータを算出する際の制約条件の有効性、及びシステムの安定性を大きく向上させることが可能となる。
【００８２】
なお、本実施の形態では、計測軸が互いに異なるように設置された二組の角速度センサを備える撮影装置１０００について説明したが、本発明に係る撮影装置は、このような角速度センサに限定されるものではない。すなわち、本発明に係る撮影装置は、設置場所、計測方向、応答周波数、及び感度特性（感度、感度偏差、感度ドリフト、他軸感度等）のうち少なくとも一つが互いに異なる複数組の角速度センサを備えればよい。
【００８３】
例えば、撮影装置が設置場所の異なる二組の角速度センサ（例えば、一方が撮影装置の重心位置に設置され、他方は重心位置から離れた位置に設置された二組の角速度センサ、など）を備える場合、撮影装置に加えられた運動に対する、各角速度センサが設置された位置における慣性モーメントが異なる。したがって、各角速度センサの出力値が互いに異なる出力値となる。
【００８４】
また、例えば、応答速度が互いに異なる二組の角速度センサを撮影装置が備える場合も、各角速度センサの出力値が互いに異なる出力値となる。なぜならば、一方の角速度センサは、瞬間的な（高い周波数の）動きを主として検出し、他方の角速度センサは、よりゆっくりとした（低い周波数の）動きを主として検出するからである。つまり、このような応答速度が互いに異なる二組の角速度センサを備える撮影装置は、撮影装置に加えられた一つの運動を、動作周波数の観点から別の視点で観測していることになる。
【００８５】
上記のように、二組の角速度センサの設置場所又は応答速度が異なる場合も、撮影装置に加えられた運動を検出する際の冗長度の向上に寄与しているため、制約条件の有効性及びシステムの安定性向上に貢献することができる。
【００８６】
なお、本実施の形態では、二組の角速度センサを備える撮影装置１０００について説明したが、本発明に係る撮影装置は角速度センサに限定されるものではない。本発明に係る撮影装置は、例えば、加速度センサ、方位センサなど撮影装置の動きを検出できるような複数組のセンサを備えればよい。つまり、本発明に係る撮影装置は、設置方法及びセンサ特性の少なくとも一方が互いに異なる複数組のセンサを利用することにより、本実施の形態に係る撮影装置１０００と同様の効果を得ることができる。
【００８７】
（実施の形態３）
次に、本発明の実施の形態３に係る撮影装置について説明する。
【００８８】
図１６は、本発明の実施の形態３に係る撮影装置２０００の機能構成を示すブロック図である。撮影装置２０００は、自動車の直進方向と撮影装置２０００の光軸方向とが一致した車載型の撮影装置である。つまり、撮影装置２０００は、撮影された映像データの回転ぶれ、すなわちｒｏｌｌ方向の移動成分は微小であり、その移動成分を時系列で平均化すると変化なしと近似できる。したがって、撮影装置２０００により撮影された画像に存在するのは平行移動のみと限定することができる。そこで、本実施の形態に係る撮影装置２０００は、ｒｏｌｌ方向識別器と傾き角度検出部とを備えない点が、実施の形態１に係る撮影装置１００と異なる。なお、実施の形態１と同様の構成部に関しては、同一符号にて示し、説明を省略する。
【００８９】
方位センサ２００１は、方位を計測するセンサである。方位センサ２００１は、自動車の動きがほぼ平面上の動きのみに限定できることから、ｙａｗ方向を計測する角速度センサ１１２との情報の補完を行うために設置されたものである。
【００９０】
実施の形態１と同様、このように設置されたセンサ部１０１から取得されるセンサ情報と撮影装置２０００の動き（自動車の動き）とを予め学習し、互いに関連付けておくことにより、センサ情報からｙａｗ方向の動きを識別することができる。その結果、パラメータ算出部１４０は、処理性能（演算量、精度）を向上させることが可能となる。
【００９１】
なお、本実施の形態に係る撮影装置２０００は、さらに、自動車の車速センサとカーブ識別器とを備えてもよい。これにより、特徴ベクトル生成部１３１が車速センサ、方位センサ及び角速度センサのセンサ情報を用いて特徴ベクトルを生成することができる。そして、撮影装置２０００は、生成された特徴ベクトルと実際に自動車がカーブを曲がろうとしている状態を予め学習することにより、自動車がカーブを曲がろうとしている状態を識別するカーブ識別器を備えることも可能となる。自動車がカーブを曲がろうとしている場合は、撮影部１０２により撮影された映像データの横流れが大きくなるため、映像データに含まれる画像間の位置合わせを行う意味がなくなる。したがって、カーブ識別器が、自動車がカーブを曲がろうとしている状態を識別したときは、パラメータ算出部１４０及び画像補正部１５０は、パラメータの算出及び画像の位置合わせの処理を停止する。また、自動車がカーブを曲がり終わり、一定方向への進行が再び開始されたときには、位置合わせ処理もあわせて再開すればよい。このように、カーブ識別器は、パラメータ算出部１４０及び画像補正部１５０の処理の開始又は停止を指示するスイッチの役目を果たすことができる。
【００９２】
このように、本実施の形態に係る撮影装置２０００は、パラメータ処理部１４０及び画像補正部１５０が処理を実行する条件を限定することにより、演算コストの更なる削減と、より状況に適応した映像揺れの補正を行うことが可能となる。
【００９３】
（実施の形態４）
次に、本発明の実施の形態４に係る撮影装置について説明する。
【００９４】
図１７は、本発明の実施の形態４に係る撮影装置３０００の機能構成を示すブロック図である。図１７に示すように、本実施の形態に係る撮影装置３０００は、撮影部１０２が駆動部３００２及びアクティブプリズム３００３を有する点と、画像補正部の代わりに駆動制御部３００１を備える点とが、実施の形態１に係る撮影装置１００と異なる。他の構成部については、実施の形態１の撮影装置１００と同様であるので、説明を省略する。
【００９５】
駆動制御部３００１は、パラメータ算出部１４０により算出されたパラメータ（傾き角度及び移動ベクトル）を撮影部１０２に固有のパラメータを用いて所定の方式に従って三軸の回転量に変換する。変換された回転量は、実際に撮影装置３０００の造影面上に生じた回転量となる。したがって、駆動制御部３００１は、変換した回転量を打ち消すように、駆動部３００２にアクティブプリズム３００３を駆動させることにより、撮影装置３０００に発生した動きをキャンセルすることができる。
【００９６】
駆動部３００２は、アクチュエータ等であり、アクティブプリズム３００３を駆動する。アクティブプリズム３００３は、光学系の一部であり、プリズムの角度を変更することにより、映像の揺れを補正することができるプリズムである。レンズ３００４は、光学系の一部であり、撮影部１０２に入射した光を撮像素子３００５の撮像面に結像する。撮像素子３００５は、例えば、ＣＣＤ（Charge Coupled Device）、ＣＭＯＳ（Complementary Metal Oxide Semiconductor）などの固体撮像素子であり、レンズ３００４からの光を電気信号に変換する。
【００９７】
このように、パラメータ算出部１４０により算出されたパラメータを用いて、駆動制御部３００１が駆動部３００２にアクティブプリズム３００３を駆動させることにより、映像データに発生した映像揺れを補正することが可能となる。
【００９８】
なお、本実施の形態に係る撮影装置３０００は、アクティブプリズム３００３を駆動することにより、映像揺れの補正を行ったが、本発明に係る撮影装置は、レンズ３００４又は撮像素子３００５を駆動することにより映像揺れを補正してもよい。具体的には、駆動制御部３００１が駆動部３００２に撮像素子３００５をシフト又は回転させることにより、映像揺れを補正することが可能となる。
【００９９】
以上、本発明に係る撮影装置について、実施の形態に基づいて説明したが、本発明は、これらの実施の形態に限定されるものではない。本発明の趣旨を逸脱しない限り、当業者が思いつく各種変形を本実施の形態に施したもの、あるいは異なる実施の形態における構成要素を組み合わせて構築される形態も、本発明の範囲内に含まれる。
【０１００】
例えば、上記実施の形態において、センサ部１０１は、三つの軸方向の加速度を計測する加速度センサ、及び三つの軸回りの角速度を計測する角速度センサを有していたが、これに方位センサなどの撮影装置の動きを計測できる他のセンサを組み合わせてもよい。また、センサは、目的となる軸に関する動きの計測が可能であれば、どのような設置方法であってもよい。すなわち、一軸に関する動きのみを計測するセンサが必要個数だけ設置されてもよいし、直交する三軸を計測するセンサが一つのパッケージとなった加速度センサ、角速度センサ等が設置されてもよい。
【０１０１】
また、上記実施の形態では、撮影装置の光軸とセンサの計測軸の一つであるｚ軸とが一致する例について説明したが、識別したい撮影装置の動きの情報（実施の形態１では撮影装置におけるｒｏｌｌ、ｐｉｔｃｈ、及びｙａｗの三軸回りの回転方向）がベクトル解析などの手法を用いて取得できるのであれば、必ずしもセンサの計測軸と識別したい撮影装置の動きの軸とが一致していなくてもよい。
【０１０２】
また、上記実施の形態において、特徴ベクトル生成部１３１は、公知の主成分分析などの手法を用いて、生成する特徴ベクトルの冗長度を増してもよい。また、特徴ベクトル生成部１３１は、周波数解析などを行うことにより得られる動きの周波数情報を特徴ベクトルとして生成してもよい。
【０１０３】
また、上記実施の形態において、ＡｄａＢｏｏｓｔを用いて、センサ情報と撮影装置の動きの方向（回転の方向）を関連付けた各回転方向の識別器について説明したが、各回転方向の識別器は、必ずしもＡｄａＢｏｏｓｔ手法により構成される識別器に限定されるものではない。例えば、各回転方向の識別器は、ニューラルネットワークを用いて同様の学習が行われた識別器であってもよい。この場合、特徴ベクトルは必ずしも符号である必要はないので、特徴ベクトル生成部１３１は、ニューラルネットワークに適した特徴ベクトルを生成すればよい。
【０１０４】
また、識別器は、回転方向を識別する識別器に限定されるものではない。例えば、識別器は、ｘ軸、ｙ軸、及びｚ軸方向の動きの向きを識別してもよい。
【０１０５】
また、上記実施の形態において、制約条件生成部１３０は、各回転方向の識別器が正の向き又は負の向きに撮影装置が回転したことを識別した場合について制約条件を生成していたが、さらに、正の向き及び負の向きのいずれの向きにも回転していないと識別した場合にも制約条件を生成してもよい。例えば、制約条件生成部１３０は、ｒｏｌｌ方向識別器１３２によりｒｏｌｌ方向の回転がないと識別された場合は、予め定められた所定の探索幅ｓを用いて、±ｓの範囲を傾きパラメータの解の探索範囲として設定する制約条件を生成してもよい。この場合、傾き角度検出部１４１は、制約条件生成部１３０により設定された±ｓの範囲において、評価値が最大となる傾きパラメータを探索する。また、例えば、制約条件生成部１３０は、ｐｉｔｃｈ方向識別器１３３及びｙａｗ方向識別器１３４によりｐｉｔｃｈ方向及びｙａｗ方向の回転がないと識別された場合は、基準画像の特徴点の座標と同一の座標となる位置周りの適切な範囲の探索範囲として設定する制約条件を生成してもよい。これにより、パラメータ算出部１４０は、高精度にパラメータを算出することが可能となる。
【０１０６】
図１８は、ｒｏｌｌ方向の回転がないと識別された場合の傾きパラメータの解の探索範囲を説明するための図である。図１８に示すように、傾き角度検出部１４１は、±ｓを解の探索範囲とする制約条件を利用することにより、評価値が最大であるａ＝ａ３ではなく、ａ＝ａ２を正しい傾き角度として算出することができる。
【０１０７】
また、制約条件生成部１３０は、各回転方向の識別器による識別の誤りを補償するために、上記実施の形態よりも所定の幅だけ広げた範囲を探索範囲とする制約条件を生成してもよい。例えば、ｙａｗ方向の動きが“正の向き”と識別されたときに、制約条件生成部１３０は、厳密にａ≧０の範囲を探索範囲とするのではなく、ａ≧−ｓを探索範囲とする制約条件を生成する。一方、ｙａｗ方向の動きが“負の向き” と識別されたときには、制約条件生成部１３０は、ａ≦ｓを探索範囲とする制約条件を生成する。これにより、パラメータ算出部１４０は、各回転方向の識別器が、評価値Ｚを算出する際に混入する変動成分によって、各回転方向の動きを誤って識別した場合、あるいはセンサが検出できなかった小さく緩やかな動きがあった場合であっても、正しいパラメータを算出することが可能となる。つまり、制約条件生成部１３０がこのような補償処理を行うことで、パラメータ算出部１４０は、パラメータの算出精度をより高めることが可能となる。
【０１０８】
また、上記実施の形態において、制約条件生成部１３０は、各回転方向の識別器により識別された撮影装置の動きに応じて、パラメータ算出部１４０がパラメータを算出する際にパラメータ値（解）の範囲を限定するための制約条件を生成していたが、本発明に係る撮影装置はこのような撮影装置に限定されるものではない。例えば、本発明に係る撮影装置は、各回転方向の識別器により識別された撮影装置の動きに応じて、パラメータに重み付けを行うための制約条件を生成してもよい。この場合、パラメータ算出部１４０は、制約条件に含まれる重み付けを用いて、解の候補となる値（候補値）に対して評価値を算出する。そして、パラメータ算出部１４０は、算出した評価値が最も高くなる候補値をパラメータとして算出する。
【０１０９】
また、上記実施の形態において、揺れ検出部１４２は、特徴点マッチングにより平行移動量を算出していたが、特徴点マッチングに限定される必要はない。例えば、揺れ検出部１４２は、オプティカルフロー、パターンマッチングなど他のマッチング手法を用いて平行移動量を算出してもよい。
【０１１０】
また、上記実施の形態において、揺れ検出部１４２は、平行移動量を算出していたが、回転と平行移動とを同時に扱うことができるマッチング手法を用いて、回転角度と平行移動量を同時に算出してもよい。例えば、揺れ検出部１４２は、画像を球面に投射し、その球面を原点を中心に回転させることでマッチングを行ってもよい。これにより、揺れ検出部１４２は、ｒｏｌｌ、ｐｉｔｃｈ、及びｙａｗの三軸回りのマッチングを同時に行うことが可能となる。そして、画像補正部１５０は、揺れ検出部１４２により算出されたｒｏｌｌ、ｐｉｔｃｈ、及びｙａｗのそれぞれの回転量だけ、球面に投射された画像を回転する。さらに、画像補正部１５０は、回転した画像を再び平面に逆投射することにより、回転と平行移動との両方を補正することが可能となる。
【０１１１】
また、揺れ検出部１４２は、マッチング手法ではなく、ＰＯＣ（位相限定相関）法などの解析的手法を用いて平行移動量等を算出してもよい。この場合、ＰＯＣ法では回転と平行移動とを同時に扱うことができないため、傾き角度検出部１４１により算出された画像の傾き角度を用いて、揺れ検出部１４２が平行移動量を算出する前に画像から回転成分の揺れを除去しておくことが望ましい。
【０１１２】
また、上記実施の形態において、パラメータ算出部１４０は、映像データに含まれる、時間的に隣接する画像間で位置合わせを行うためのパラメータを算出していたが、本発明に係る撮影装置は、必ずしも時間的に隣接する画像間についてパラメータを算出しなくともよい。例えば、パラメータ算出部１４０は、基準となる画像を予め決定し、決定した画像とその他の画像との間で位置合わせを行うためのパラメータを算出するようにしてもよい。
【０１１３】
なお、本発明は、このような撮影装置として実現できるだけでなく、撮影装置に含まれ画像処理部が有する構成部を備える画像処理装置として実現することができる。また、このような画像処理装置に含まれる特徴的な構成部をステップとする画像処理方法として実現したり、そのような特徴的なステップをコンピュータに実行させるプログラムとして実現したりすることもできる。そして、そのようなプログラムは、ＣＤ−ＲＯＭ等の記録媒体及びインターネット等の伝送媒体を介して流通させることができるのは言うまでもない。
【０１１４】
また、本発明は、画像処理装置の機能の全て又は一部を実現する集積回路（ＬＳＩ）として実現してもよい。例えば、図１９に示すように、集積回路４０００は、少なくともインタフェース部１２０、制約条件生成部１３０、及びパラメータ算出部１４０を備える。
【０１１５】
また、本発明は、画像処理装置の機能の全て又は一部を実現する再生装置として実現してもよい。例えば、図２０に示すように、再生装置５０００は、画像処理部１０３と再生部５００１とを備える。再生部５００１は、画像補正部１５０により補正された映像データを再生する。
【産業上の利用可能性】
【０１１６】
本発明の撮影装置は、撮影装置に発生する動きに起因した画像の回転及び撮影領域の変動を補正する装置として有用であり、デジタルスチルカメラ、デジタルビデオカメラをはじめとする撮影装置のみならず、身体に装着してハンズフリー撮影を行うような小型の撮影装置に対しても適用可能である。
【符号の説明】
【０１１７】
１００、１０００、２０００、３０００  撮影装置
１０１  センサ部
１０２  撮影部
１０３  画像処理部
１１１  加速度センサ
１１２  角速度センサ
１２０  インタフェース部
１２１  センサ情報取得部
１２２  画像取得部
１３０  制約条件生成部
１３１  特徴ベクトル生成部
１３２  ｒｏｌｌ方向識別器
１３３  ｐｉｔｃｈ方向識別器
１３４  ｙａｗ方向識別器
１４０  パラメータ算出部
１４１  傾き角度検出部
１４２  揺れ検出部
１５０  画像補正部
５０１、５０２  人物像
５０３  移動ベクトル
５１０、５２０  矩形領域
５１１、５２１  領域
１００１  第一角速度センサ
１００２  第二角速度センサ
２００１  方位センサ
３００１  駆動制御部
３００２  駆動部
３００３  アクティブプリズム
３００４  レンズ
３００５  撮像素子
４０００  集積回路
５０００  再生装置
５００１  再生部
【手続補正２】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
動きを検知するセンサを備える撮影装置により撮影された二以上の画像間の位置合わせを行うためのパラメータを算出する画像処理装置であって、
前記撮影装置により撮影された画像を取得する画像取得部と、
前記画像取得部により取得された画像が撮影された際の前記センサの出力信号であるセンサ情報を取得するセンサ情報取得部と、
前記センサ情報取得部により取得されたセンサ情報を用いて、前記パラメータが算出される際に前記パラメータが所定範囲の値となるような制約条件を生成する制約条件生成部と、
前記制約条件生成部により生成された制約条件に従って、前記画像取得部により取得された画像について前記パラメータを算出するパラメータ算出部とを備え、
前記制約条件生成部は、
前記センサ情報取得部により取得されたセンサ情報の特徴を示す特徴ベクトルを生成する特徴ベクトル生成部と、
前記特徴ベクトルと前記撮影装置の動きとの関連付けを利用して、前記特徴ベクトル生成部により生成された特徴ベクトルから前記撮影装置の動きを識別する動き識別部とを含み、
前記関連付けは、前記特徴ベクトルと前記撮影装置の実際の動きとが予め機械学習された結果得られる関連付けであり、
前記制約条件生成部は、前記動き識別部により識別された前記撮影装置の動きに応じて前記所定範囲を特定することにより、前記制約条件を生成する
画像処理装置。
【請求項２】
前記パラメータ算出部は、前記画像の傾き角度を前記パラメータとして算出する
請求項１に記載の画像処理装置。
【請求項３】
前記パラメータ算出部は、前記画像から絶対水平又は絶対垂直を示す要素の傾きを抽出することにより、前記画像の傾き角度を前記パラメータとして算出する
請求項２に記載の画像処理装置。
【請求項４】
前記制約条件生成部は、前記画像の傾き角度に対する重み付けを含む前記制約条件を生成し、
前記パラメータ算出部は、前記制約条件に含まれる重み付けを用いて前記画像の傾き角度に対する評価値を算出し、算出した評価値が最も高くなる前記画像の傾き角度を前記パラメータとして選択する
請求項３に記載の画像処理装置。
【請求項５】
前記画像取得部は、同一の被写体像を含み、かつ、異なる時刻に撮影された少なくとも二つの画像を取得し、
前記パラメータ算出部は、前記二つの画像に含まれる前記被写体像の相対的な移動量を前記パラメータとして算出する
請求項１に記載の画像処理装置。
【請求項６】
前記パラメータ算出部は、前記移動量を、前記二つの映像の少なくともいずれか一つを変形させるために利用するアフィン変換パラメータとして算出する
請求項５に記載の画像処理装置。
【請求項７】
前記制約条件生成部は、前記移動量に対する重み付けを含む前記制約条件を生成し、
前記パラメータ算出部は、前記制約条件に含まれる重み付けを用いて前記移動量に対する評価値を算出し、算出した評価値が最も高くなる前記移動量を前記パラメータとして選択する
請求項６に記載の画像処理装置。
【請求項８】
前記画像処理装置は、さらに、
前記パラメータ算出部により算出されたパラメータを用いて、前記画像の補正を行う画像補正部を備える
請求項１に記載の画像処理装置。
【請求項９】
前記センサ情報取得部は、角速度センサ、加速度センサ、及び方位センサのうち少なくともいずれか一つのセンサから前記センサ情報を取得する
請求項１に記載の画像処理装置。
【請求項１０】
前記動き識別部は、前記撮影装置の光軸と、前記光軸と直交し、かつ互いに直交する二つの軸とからなる、三つの軸のそれぞれの軸回りの回転運動及び三つの軸のそれぞれの軸方向の平行移動の少なくともいずれか一方の動きの向きを識別する
請求項１に記載の画像処理装置。
【請求項１１】
被写体を撮影する撮影装置であって、
光学系と、
撮像素子と、
前記撮影装置の動きを検知するセンサ部と、
請求項１に記載の画像処理装置とを備える
撮影装置。
【請求項１２】
さらに、
前記光学系又は前記撮像素子の少なくともいずれか一方を駆動する駆動部と、
前記パラメータ算出部により算出されたパラメータと、前記撮影部に固有の所定パラメータとに基づいて、前記撮影部の造影面上の動き量を算出し、算出した動き量を打ち消すように、前記光学系又は前記撮像素子の少なくともいずれか一方を前記駆動部に駆動させる駆動制御部とを備える
請求項１１に記載の撮影装置。
【請求項１３】
前記センサ部は、角速度センサ、加速度センサ、及び方位センサのうち少なくともいずれか一つのセンサにより構成される
請求項１１に記載の撮影装置。
【請求項１４】
画像を再生する再生装置であって、
請求項８に記載の画像処理装置と、
前記画像補正部により補正された画像を再生する再生部とを備える
再生装置。
【請求項１５】
動きを検知するセンサを備える撮影装置により撮影された二以上の画像間の位置合わせを行うためのパラメータを算出する方法であって、
前記撮影装置により撮影された画像を取得する画像取得ステップと、
前記画像取得ステップにおいて取得された画像が撮影された際の前記センサの出力信号であるセンサ情報を取得するセンサ情報取得ステップと、
前記センサ情報取得ステップにおいて取得されたセンサ情報を用いて、前記パラメータが算出される際に前記パラメータが所定範囲の値となるような制約条件を生成する制約条件生成ステップと、
前記制約条件生成ステップにおいて生成された制約条件に従って、前記画像取得ステップにおいて取得された画像について前記パラメータを算出するパラメータ算出ステップとを含み、
前記制約条件生成ステップは、
前記センサ情報取得ステップにおいて取得されたセンサ情報の特徴を示す特徴ベクトルを生成する特徴ベクトル生成ステップと、
前記特徴ベクトルと前記撮影装置の動きとの関連付けを利用して、前記特徴ベクトル生成ステップにおいて生成された特徴ベクトルから前記撮影装置の動きを識別する動き識別ステップとを含み、
前記関連付けは、前記特徴ベクトルと前記撮影装置の実際の動きとが予め機械学習された結果得られる関連付けであり、
前記制約条件生成ステップでは、前記動き識別ステップにおいて識別された前記撮影装置の動きに応じて前記所定範囲を特定することにより、前記制約条件を生成する
画像処理方法。
【請求項１６】
請求項１５に記載の画像処理方法に含まれる各ステップをコンピュータに実行させるためのプログラム。
【請求項１７】
動きを検知するセンサを備える撮影装置により撮影された二以上の画像間の位置合わせを行うためのパラメータを算出する集積回路であって、
前記撮影装置により撮影された画像を取得する画像取得部と、
前記画像取得部により取得された画像が撮影された際の前記センサの出力信号であるセンサ情報を取得するセンサ情報取得部と、
前記センサ情報取得部により取得されたセンサ情報を用いて、前記パラメータが算出される際に前記パラメータが所定範囲の値となるような制約条件を生成する制約条件生成部と、
前記制約条件生成部により生成された制約条件に従って、前記画像取得部により取得された画像について前記パラメータを算出するパラメータ算出部とを備え、
前記制約条件生成部は、
前記センサ情報取得部により取得されたセンサ情報の特徴を示す特徴ベクトルを生成する特徴ベクトル生成部と、
前記特徴ベクトルと前記撮影装置の動きとの関連付けを利用して、前記特徴ベクトル生成部により生成された特徴ベクトルから前記撮影装置の動きを識別する動き識別部とを含み、
前記関連付けは、前記特徴ベクトルと前記撮影装置の実際の動きとが予め機械学習された結果得られる関連付けであり、
前記制約条件生成部は、前記動き識別部により識別された前記撮影装置の動きに応じて前記所定範囲を特定することにより、前記制約条件を生成する
集積回路。
【手続補正３】
【補正対象書類名】図面
【補正対象項目名】全図
【補正方法】変更
【補正の内容】
【図１】
2009072264.tif 000032
【図２】
2009072264.tif 000033
【図３】
2009072264.tif 000034
【図４】
2009072264.tif 000035
【図５】
2009072264.tif 000036
【図６】
2009072264.tif 000037
【図７】
2009072264.tif 000038
【図８】
2009072264.tif 000039
【図９Ａ】
2009072264.tif 000040
【図９Ｂ】
2009072264.tif 000041
【図１０】
2009072264.tif 000042
【図１１Ａ】
2009072264.tif 000043
【図１１Ｂ】
2009072264.tif 000044
【図１２Ａ】
2009072264.tif 000045
【図１２Ｂ】
2009072264.tif 000046
【図１２Ｃ】
2009072264.tif 000047
【図１２Ｄ】
2009072264.tif 000048
【図１３】
2009072264.tif 000049
【図１４】
2009072264.tif 000050
【図１５】
2009072264.tif 000051
【図１６】
2009072264.tif 000052
【図１７】
2009072264.tif 000053
【図１８】
2009072264.tif 000054
【図１９】
2009072264.tif 000055
【図２０】
2009072264.tif 000056
【国際調査報告】
2009072264.tif 000057
2009072264.tif 000058
2009072264.tif 000059
2009072264.tif 000060