(57)【要約】【課題】撮像された動画の角度を補正して再生することができる動画再生装置を提供する。【解決手段】動画再生装置が、取得した動画のフレーム毎に、当該フレームに撮影されている画像の水平方向または鉛直方向を基準とした角度を検出する角度検出部と、角度検出部が検出したフレーム毎の角度に基づいて、取得した動画のフレームに撮影されている画像をフレーム毎に回転させて動画として出力する変換部と、を有する。【選択図】図１
2010147637.tif 000002
【特許請求の範囲】
【請求項１】
取得した動画のフレーム毎に、当該フレームに撮影されている画像の水平方向または鉛直方向を基準とした角度を検出する角度検出部と、
前記角度検出部が検出したフレーム毎の角度に基づいて、前記取得した動画のフレームに撮影されている画像をフレーム毎に回転させて動画として出力する変換部と、
を有することを特徴とする動画再生装置。
【請求項２】
請求項１に記載の動画再生装置において、
前記角度検出部は、
前記動画を取得する場合に、当該動画のフレームとともに、当該フレームに撮影されている画像が撮影された場合の前記角度を示す角度情報を取得し、当該取得した角度情報に基づいて前記角度を検出する、
ことを特徴とする動画再生装置。
【請求項３】
請求項１または請求項２に記載の動画再生装置において、
前記角度検出部が、
前記フレームに撮影されている画像を二次元フーリエ変換したスペクトルの成分に基づいて、前記角度を検出する、
ことを特徴とする動画再生装置。
【請求項４】
請求項１から請求項３のいずれかに記載の動画再生装置において、
前記角度検出部が、
前記フレームに撮影されている画像の色成分に基づいて、当該フレームに撮影されている画像に含まれている空が撮像されている領域を検出し、前記フレームに撮影されている画像における前記検出した空が撮像されている領域の位置に基づいて、前記角度を検出する、
ことを特徴とする動画再生装置。
【請求項５】
請求項１から請求項４のいずれかに記載の動画再生装置において、
前記変換部が、
前記角度検出部が検出したフレーム毎の角度に基づいて、前記取得した動画のフレームに撮影されている画像を回転させた場合に、当該回転により当該フレームの画像に欠損が生じる領域を、当該回転させたフレームよりも前となるフレームまたは後となるフレームに撮影されている画像に基づいて補間する、
ことを特徴とする動画再生装置。
【請求項６】
請求項５に記載の動画再生装置において、
前記変換部が、
前記回転させたフレームよりも前となるフレームまたは後となるフレームに撮影されている画像に基づいて補間する場合に、
前記前となるフレームまたは後となるフレームに撮影されている画像の中から、前記回転させたフレームについて前記角度検出部が検出した角度に対して相補的となる角度を有するフレームに撮影されている画像を選択し、
前記選択したフレームに撮影されている画像に基づいて、前記回転によりフレームの画像に欠損が生じる領域を補間する、
ことを特徴とする動画再生装置。
【請求項７】
請求項１から請求項６に記載の動画再生装置において、
前記変換部が、
前記角度検出部が検出したフレーム毎の角度の変化値が予め定められた値よりも大きいフレームを削除し、当該削除したフレームの前後となるフレームをつなぎ合わせて動画として出力する、
ことを特徴とする動画再生装置。
【請求項８】
取得した動画のフレーム毎に、当該フレームに撮影されている画像の水平方向または鉛直方向を基準とした角度を検出する角度検出手順と、
前記角度検出手順で検出したフレーム毎の角度に基づいて、前記取得した動画のフレームに撮影されている画像をフレーム毎に回転させて動画として出力する変換手順と、
を有することを特徴とする動画再生方法。
【請求項９】
動画再生装置としてのコンピュータに、
取得した動画のフレーム毎に、当該フレームに撮影されている画像の水平方向または鉛直方向を基準とした角度を検出する角度検出手順と、
前記角度検出手順で検出したフレーム毎の角度に基づいて、前記取得した動画のフレームに撮影されている画像をフレーム毎に回転させて動画として出力する変換手順と、
を実行させるための動画再生プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、動画再生装置、動画再生方法、および、動画再生プログラムに関する。
【背景技術】
【０００２】
従来、縦横混在して撮影した静止画を連続的に閲覧する際、自動的に画像を回転させるデジタルカメラが知られている（特許文献１参照）。
【特許文献１】特開２００５−２５２７９７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
ところで、近年、デジタルカメラについて、静止画のみならず、動画を撮影することが望まれている。しかしながら、デジタルカメラを用いて手持ちで動画を撮影する場合、デジタルカメラの角度を一定とすることは難しい。ここでいう角度とは、たとえば、水平方向または鉛直方向に対する角度である。
【０００４】
このようにデジタルカメラの角度を一定とすることができないで撮影された動画を再生する場合には、この動画には角度の変動が生じている。そのため、この動画を見た人は画面酔いする可能性がある。また、デジタルカメラは、縦位置から横位置、または、横位置から縦位置などに、撮影位置を変更しつつ、動画が撮影される場合もある。このように撮影位置が変更される場合においても、撮影された動画の角度には変動が生じる。よって、この動画を見た人は画面酔いする可能性がある。
【０００５】
このような画面酔いする可能性があるという問題に対して、従来のデジタルカメラでは、静止画のみを対象としており、また、縦方向と横方向との角度の回転しかないため、撮像された動画の角度を補正して再生することはできない、という問題があった。
【０００６】
本発明は、このような事情に鑑みてなされたもので、その目的は、撮像された動画の角度を補正して再生することができる動画再生装置、動画再生方法、および、動画再生プログラムを提供することにある。
【課題を解決するための手段】
【０００７】
この発明は上述した課題を解決するためになされたもので、取得した動画のフレーム毎に、当該フレームに撮影されている画像の水平方向または鉛直方向を基準とした角度を検出する角度検出部と、前記角度検出部が検出したフレーム毎の角度に基づいて、前記取得した動画のフレームに撮影されている画像をフレーム毎に回転させて動画として出力する変換部と、を有することを特徴とする動画再生装置である。
【発明の効果】
【０００８】
この発明によれば、動画再生装置が、取得した動画のフレーム毎に、当該フレームに撮影されている画像の水平方向または鉛直方向を基準とした角度を検出し、この検出したフレーム毎の角度に基づいて、取得した動画のフレームに撮影されている画像をフレーム毎に回転させて動画として出力することができる。
【０００９】
このようにして、撮像された動画の角度を補正して再生することができるために、角度を一定とすることができないで撮影された動画を再生する場合であっても、また、撮影中に撮影位置を変更して撮影された動画を再生する場合であっても、再生する画像の角度は一定となる。よって、この動画を見た人が画面酔いする可能性を減じる効果を奏する。
【発明を実施するための最良の形態】
【００１０】
以下、図面を参照して、本発明の実施の形態について説明する。図１は、この発明の一実施形態による動画再生装置１の構成を示す概略ブロック図である。この図１を用いて、動画再生装置１の構成を説明する。また、各構成で実行される一例としての処理について、図２と図３とを用いつつ説明する。
【００１１】
動画再生装置１は、角度検出部２と、変換部３とを、有している。また、動画再生装置１は、周辺装置として、動画記憶部４と、動画出力部５と、を有している。
【００１２】
動画記憶部４には、動画が予め記憶されている。たとえば、この動画記憶部４には、図２（１）から図２（３）に示すような、複数の画像が連続する動画が予め記憶されている。ここでは、空と地面、および、建物と人とが、動画として撮影されているものとして説明する。なお、この動画においては、たとえば、図２（１）の横位置、すなわち、水平位置からの撮影から、図２（３）の縦位置、すなわち、鉛直位置からの撮影に、回転されて撮影されている。この場合には、図２（２）が、回転において回転している画像となり、たとえば、画面酔いする可能性を高める画像である。
【００１３】
なお、この動画の記録方式は、たとえば、Ｍｏｔｉｏｎ  ＪＰＥＧ（Motion Joint Photographic Experts Group）であてもよいし、ＭＰＥＧ（Moving Picture Experts Group）であってもよいし、他の動画形式であってもよい。ここでは、それぞれのフレームは、１枚の画像となっているものとして説明する。
【００１４】
動画再生装置１は、動画記憶部４に記憶されている動画を読み出して、読み出した動画における画像の角度をフレーム毎に変換した後、この変換した動画を動画出力部５に出力する。動画出力部５は、たとえば、表示装置または記憶部である。たとえば、動画出力部５が表示装置である場合には、動画再生装置１は、変換した動画を、表示装置である動画出力部５に表示させる。また、動画出力部５が記憶装置である場合には、動画再生装置１は、変換した動画を、記憶装置である動画出力部５に記憶させる。
【００１５】
角度検出部２は、動画記憶部４から読み出して取得した動画のフレーム毎に、当該フレームに撮影されている画像の水平方向または鉛直方向を基準とした角度を検出する。
【００１６】
たとえば、この角度検出部２は、動画を取得する場合に、当該動画のフレームとともに、当該フレームに撮影されている画像が撮影された場合の角度を示す角度情報を取得し、当該取得した角度情報に基づいて角度を検出する。この場合には、動画記憶部４には、たとえば、動画のフレームと、当該フレームに撮影されている画像が撮影された場合の角度を示す角度情報とが、関連付けられて予め記憶されている。たとえば、水準器を有している撮像装置により動画が撮影された場合に、この水準器により検出された角度情報が、動画とともに動画記憶部４に記憶される。
【００１７】
また、角度検出部２は、フレームに撮影されている画像を二次元フーリエ変換したスペクトルの成分に基づいて、角度を検出する。たとえば、図２（１）から図２（３）に示すように、建物などの人工物を撮影した場合には、人工物は鉛直方向に設置された柱、窓または柵などを有していることが多いため、人工物を撮影した画像には、鉛直方向の画像成分が多い。また、建物などは窓などを有しているために、建物の画像には水平な成分も多い。また、自然物であっても、樹木は鉛直上向きに生長しているため、その成分としては、垂直成分が多い。
【００１８】
よって、画像について、鉛直成分または水平成分に基づいて、鉛直方向または水平方向からの角度を検出することができる。そのため、角度検出部２は、フレームに撮影されている画像を二次元フーリエ変換したスペクトルの成分に基づいて、角度を検出することができる。このようにして角度を検出する場合には、動画そのものから画像の角度を検出するため、水準器を有していない撮像装置によりより動画が撮影された場合であっても、画像の角度を検出することができる。なお、この二次元フーリエ変換は、連続二次元フーリエ変換であってもよいし、演算速度を早くするために離散二次元フーリエ変換を用いてもよい。
【００１９】
なお、動画が記録される場合には、動画の容量を減じるために、ＭＰＥＧなどの動画形式で保存される。このような動画形式においては、格子状の画像に対して離散コサイン変換が行われていることがある。この離散コサイン変換も、上述した二次元フーリエ変換と同様の変換である。よって、ＭＰＥＧなどの動画形式で保存され、すなわち、二次元フーリエ変換と同様の方式で動画が記録されている場合には、角度検出部２は、画像に対して新たに二次元フーリエ変換を演算すること無しに、動画が保存される場合の動画形式による変換に基づいて、角度を検出することも可能である。この場合、角度検出部２では、新たに二次元フーリエ変換の演算を行わなくてよいため、演算を減じることができる。
【００２０】
また、角度検出部２は、フレームに撮影されている画像の色成分に基づいて、当該フレームに撮影されている画像に含まれている空が撮像されている領域を検出し、フレームに撮影されている画像における検出した空が撮像されている領域の位置に基づいて、角度を検出する。たとえば、図２（１）から図２（３）に示すように、動画には、空が撮影されることがある。この場合、空は鉛直方向の上側にあるため、画像における検出した空が撮像されている領域の位置により、画像の上方向を検出することが可能である。このようにして角度を検出する場合でも、動画そのものから画像の角度を検出するため、水準器を有していない撮像装置によりより動画が撮影された場合であっても、画像の角度を検出することができる。
【００２１】
変換部３は、角度検出部２が検出したフレーム毎の角度に基づいて、取得した動画のフレームに撮影されている画像をフレーム毎に回転させて動画として、動画出力部５に出力する。
【００２２】
たとえば、変換部３は、この場合は、図２（２）のフレームに撮影されている画像を、図３（２）に示すように回転させて、出力する。そのため、たとえば、変換部３により出力される動画は、図３（１）から図３（３）に示すようになる。
【００２３】
また、変換部３は、角度検出部２が検出したフレーム毎の角度に基づいて、取得した動画のフレームに撮影されている画像を回転させた場合に、当該回転により当該フレームの画像に欠損が生じる領域を、当該回転させたフレームよりも前となるフレームまたは後となるフレームに撮影されている画像に基づいて補間する。
【００２４】
たとえば、画像を単に回転させた場合には、図３（２）の符号Ａ１からＡ４に示すように、画像の４隅に、画像が表示されない領域、すなわち、欠損が生じる領域が生じる可能性がある。この場合、たとえば、図２（１）または図３（１）には、この欠損が生じる領域を補間できる画像が含まれている。そのため、変換部３は、図２（１）または図３（１）に基づいて、欠損が生じる領域を補間する。これにより、画像が表示されない領域がなく、全体として、見やすい画像となる。
【００２５】
また、変換部３は、回転させたフレームよりも前となるフレームまたは後となるフレームに撮影されている画像に基づいて補間する場合に、前となるフレームまたは後となるフレームに撮影されている画像の中から、回転させたフレームについて角度検出部２が検出した角度に対して相補的となる角度を有するフレームに撮影されている画像を選択し、選択したフレームに撮影されている画像に基づいて、回転によりフレームの画像に欠損が生じる領域を補間する。なお、この前となるフレームとは、複数の前となるフレームであってもよく、また、この後となるフレームとは、複数の後となるフレームであってもよい。
【００２６】
たとえば、上述したように、図３（２）の符号Ａ１からＡ４に示すような４隅を補間する場合、この場合には、図３（２）の前または後のフレームとなる図３（１）または図３（３）に基づいて、補間することができる。この場合、変換部３は、図３（２）の角度と、図３（１）と図３（３）との角度とを比較して、図３（１）と図３（３）との中から、補間に適した画像を選択する。この場合、変換部３は、図３（２）を水平方向となるように回転させているため、角度が水平方向に近い図３（１）を、補間に用いる画像として選択している。
【００２７】
ここで、変換部３は、たとえば、回転させたフレームに撮影されている画像に対して検出した角度に対して、この角度と水平方向に対して逆の角度となる画像が含まれているフレームを、前となるフレームまたは後となるフレームに撮影されている画像の中から、選択する。この水平方向に対して逆の角度とは、たとえば、検出した角度が２０度の場合、−２０度である。
【００２８】
また、変換部３は、前となるフレームまたは後となるフレームに撮影されている画像の中から、パターンマッチングにより、回転させたフレームと似ている画像を含むフレームを選択し、当該選択したフレームに含まれている画像に基づいて、回転によりフレームの画像に欠損が生じる領域を補間する。
【００２９】
また、変換部３は、角度検出部２が検出したフレーム毎の角度の変化値が予め定められた値よりも大きいフレームを削除し、当該削除したフレームの前後となるフレームをつなぎ合わせて動画として出力する。この削除するフレームとは、複数のフレームであってもよい。
【００３０】
なお、変換部３は、削除したフレームの前後となるフレームをつなぎ合わせる場合に、削除したフレームの前となるフレームから、削除したフレームの後となるフレームに、徐々に変化するようにして、つなぎ合わせてもよい。また、変換部３は、削除したフレームの前後となるフレームをつなぎ合わせる場合に、削除したフレームの前となるフレームから、削除したフレームの後となるフレームに、予め定められた画像、たとえば、削除された場合の画像を挿入するようにして、つなぎ合わせてもよい。
【００３１】
このように、フレーム毎の角度の変化値が予め定められた値よりも大きいフレーム、すなわち、角度の変化が激しいフレームを、削除しておく。これにより、この動画を見た場合には、角度の変化が少ない。よって、画面酔いとなる可能性を低減することができる。
【００３２】
次に、図４を用いて、撮像装置が、図１の動画再生装置１を有する場合の構成について説明する。動画再生装置１は、撮像素子１０、撮像素子制御部１１、画像処理部１２、
内部メモリ１３、ＣＰＵ（Central Processing Unit）１４、顔検出部１５、水平センサ部１６、外部メモリ１７、アフィン変換部１８、ビデオコーデック部１９、画面用画像出力部２０、表示装置２１、画面角度制御部２２、および、画面角度制御用モータ２３を有する。
【００３３】
なお、図１の動画記憶部４が図４の外部メモリ１７に対応し、図１の動画出力部５が図４の表示装置２１および画面角度制御部２２に対応する。また、図１の変換部３が図４のアフィン変換部１８に対応する。また、図１で説明した角度検出部２（または水準器）が、図４の水平センサ部１６（および、ＣＰＵ１４）に対応する。
【００３４】
撮像素子１０は、レンズなどを介してから入力された光を電気信号に変換する。撮像素子制御部１１は、撮像素子１０が変換した電気信号を、アナログデジタル変換して、１フレーム分のデジタル画像信号として画像処理部１２に出力する。
【００３５】
画像処理部１２は、撮像素子制御部１１からの１フレーム分のデジタル画像信号に対して、各種の画像処理（色補間処理、階調変換処理、輪郭強調処理、ホワイトバランス調整など）を施す。内部メモリ１３は、画像処理部１２による画像処理の前工程や後工程で画像のデータを一時的に記憶する。
【００３６】
ビデオコーデック部１９は、画像処理部１２が画像処理した１フレーム分のデジタル画像信号を、予め定められている動画形式にエンコードして、動画に変換する。たとえば、ビデオコーデック部１９は、変換した動画を、外部メモリ１７に記憶させる。または、ビデオコーデック部１９は、変換した動画を、画面用画像出力部２０を介して表示装置２１に表示させる。また、ビデオコーデック部１９は、エンコードされている動画を、デコードする。
【００３７】
顔検出部１５は、画像処理部１２が画像処理した１フレーム分のデジタル画像信号に対して、または、ビデオコーデック部１９が外部メモリ１７に記録されている動画をデコードした画像に対して、人物の顔を検出し、当該検出した顔の画像のフレーム全体の画像における角度を、検出した顔の上下方向を示す情報（顔上下方向情報）として検出する。
【００３８】
水平センサ部１６は、画像処理部１２が画像処理した１フレーム分のデジタル画像信号に対して、または、ビデオコーデック部１９が外部メモリ１７に記録されている動画をデコードした画像に対して、すなわち、当該動画のフレーム毎に、当該フレームに撮影されている画像の水平方向または鉛直方向を基準とした角度を検出する。なお、水平センサ部１６は、上述した角度検出部２と同様に、この角度を検出する。
【００３９】
表示装置２１は、撮像装置が有する表示装置であり、たとえば、液晶表示装置である。画面用画像出力部２０は、表示装置２１に静止画または動画を表示する制御をする装置である。
【００４０】
画面角度制御部２２は、撮像装置の外部にある表示機の表示画面を回転させる制御をする。なお、画面角度制御部２２は、画面角度制御用モータ２３を制御することにより、表示機の表示画面を回転させる。なお、この画面角度制御用モータ２３は、撮像装置が有していてもよいし、表示機が有していてもよい。
【００４１】
アフィン変換部１８は、上述した変換部３と同様に、検出したフレーム毎の角度に基づいて、取得した動画のフレームに撮影されている画像をフレーム毎に回転させて動画として、出力する。たとえば、アフィン変換部１８は、回転させた動画を、画面用画像出力部２０を介して表示装置２１に表示させる。
【００４２】
また、アフィン変換部１８は、上述した変換部３と同様に、検出したフレーム毎の角度に基づいて、取得した動画のフレームに撮影されている画像をフレーム毎に回転させるのと同様に、画面角度制御部２２を介して画面角度制御用モータ２３を制御して、表示機の表示画面を回転させる。
【００４３】
ＣＰＵ１４は、撮像装置の全体で実行される処理を制御する。たとえば、ＣＰＵ１４は、撮像装置が有する撮像素子制御部１１、画像処理部１２、内部メモリ１３、顔検出部１５、水平センサ部１６、外部メモリ１７、アフィン変換部１８、ビデオコーデック部１９、画面用画像出力部２０、表示装置２１、画面角度制御部２２、および、画面角度制御用モータ２３を、制御する。
【００４４】
次に、図５から図１６を用いて、図４を用いて説明した撮像装置の一例としての動作について説明する。
【００４５】
まず、図５から図８を用いて、保存（すなわち、記録または録画）の場合の動作について説明する。最初に、図５を用いて、動画撮影中にカメラの水平に対する傾きを各フレームに付加して保存する場合の動作について説明する。
【００４６】
動画撮影が開始されると、ＣＰＵ１４が、レリーズボタンがＯＮであるか否かを判定する（ステップＳ５１）。このステップＳ５１の判定結果が、レリーズボタンがＯＮでない場合には、ＣＰＵ１４は、動画撮影を終了する。
【００４７】
一方、ステップＳ５１の判定結果が、レリーズボタンがＯＮである場合には、ＣＰＵ１４は、撮像素子１０、撮像素子制御部１１、画像処理部１２、内部メモリ１３、および、ビデオコーデック部１９を用いて、動画撮影の処理を実行する（ステップＳ５２）。
【００４８】
次に、ＣＰＵ１４は、水平センサ部１６から水平センサ情報を取得する（ステップＳ５３）。次に、ＣＰＵ１４は、外部メモリ１７に、ビデオコーデック部１９を用いて、水平センサ情報と共に動画を保存する処理を実行する（ステップＳ５４）。以降、ステップＳ５１からの処理が繰り返される。上述した図５の動作により、水平センサ情報と共に動画が外部メモリ１７に保存される。
【００４９】
次に、図６用いて、動画撮影中に顔検出を行って顔の上下の向きを各フレームに付加して保存する場合の動作について説明する。
動画撮影が開始されると、ＣＰＵ１４が、レリーズボタンがＯＮであるか否かを判定する（ステップＳ６１）。このステップＳ６１の判定結果が、レリーズボタンがＯＮでない場合には、ＣＰＵ１４は、動画撮影を終了する。
【００５０】
一方、ステップＳ６１の判定結果が、レリーズボタンがＯＮである場合には、ＣＰＵ１４は、撮像素子１０、撮像素子制御部１１、画像処理部１２、内部メモリ１３、および、ビデオコーデック部１９を用いて、動画撮影の処理を実行する（ステップＳ６２）。
【００５１】
次に、ＣＰＵ１４は、顔検出部１５から、検出した顔の上下方向を示す情報（顔上下方向情報）を取得する（ステップＳ６３）。次に、ＣＰＵ１４は、外部メモリ１７に、取得した顔上下方向情報と共に動画を保存する処理を実行する（ステップＳ６４）。以降、ステップＳ６１からの処理が繰り返される。上述した図６の動作により、顔の上下方向を示す情報と共に動画が外部メモリ１７に保存される。
【００５２】
次に、図７を用いて、動画撮影中にカメラの水平に対する傾きを吸収するように回転して保存する場合の動作について説明する。
動画撮影が開始されると、ＣＰＵ１４が、レリーズボタンがＯＮであるか否かを判定する（ステップＳ７１）。このステップＳ７１の判定結果が、レリーズボタンがＯＮでない場合には、ＣＰＵ１４は、動画撮影を終了する。
【００５３】
一方、ステップＳ７１の判定結果が、レリーズボタンがＯＮである場合には、ＣＰＵ１４は、撮像素子１０、撮像素子制御部１１、画像処理部１２、内部メモリ１３、および、ビデオコーデック部１９を用いて、動画撮影の処理を実行する（ステップＳ７２）。この動画撮影の処理において、画面用画像出力部２０は、撮影している動画を、表示装置２１に表示している。
【００５４】
次に、ＣＰＵ１４は、顔検出部１５から水平センサ情報を取得する（ステップＳ７３）。次に、アフィン変換部１８が、水平センサ情報からカメラの傾き分だけ画像を回転した後、ＣＰＵ１４が、外部メモリ１７に、ビデオコーデック部１９を用いて、動画保存処理を実行する（ステップＳ７４）。以降、ステップＳ７１からの処理が繰り返される。
【００５５】
上述した図７の動作により、カメラの水平に対する傾きを吸収した動画を保存することができる。そのため、再生する段階では、保存された画像を単に再生するのみで、カメラの水平に対する傾きを吸収した動画を再生することができる。
【００５６】
次に、図８を用いて、動画撮影中に顔検出を行って顔の上下の向きが一定となるように回転して保存する場合の動作について説明する。
【００５７】
動画撮影が開始されると、ＣＰＵ１４が、レリーズボタンがＯＮであるか否かを判定する（ステップＳ８１）。このステップＳ８１の判定結果が、レリーズボタンがＯＮでない場合には、ＣＰＵ１４は、動画撮影を終了する。
【００５８】
一方、ステップＳ８１の判定結果が、レリーズボタンがＯＮである場合には、ＣＰＵ１４は、撮像素子１０、撮像素子制御部１１、画像処理部１２、内部メモリ１３、および、ビデオコーデック部１９を用いて、動画撮影の処理を実行する（ステップＳ８２）。
【００５９】
次に、ＣＰＵ１４は、顔検出部１５から、検出した顔の上下方向を示す情報（顔上下方向情報）を取得する（ステップＳ８３）。次に、ＣＰＵ１４は、取得した顔上下方向情報に基づいて、顔上下方向が画面に対して一定になるように画像を回転して、外部メモリ１７に、動画を保存する処理を実行する（ステップＳ８４）。以降、ステップＳ８１からの処理が繰り返される。
【００６０】
上述した図８の動作により、動画撮影中に顔検出を行って顔の上下の向きが一定となるように回転して保存される。そのため、再生する段階では、保存された画像を単に再生するのみで、顔の上下の向きが一定となるように回転された動画を再生することができる。
【００６１】
次に、図９から図１４を用いて、再生の場合の動作について説明する。
【００６２】
最初に図９を用いて、再生時に表示画面の枠に対して水平を取るようにして表示画像を回転させて表示する場合の動作について説明する。なお、ここでは、上述した図５の動作により、外部メモリ１７には、水平センサ情報と共に動画が保存されているものとして説明する。
【００６３】
まず、ＣＰＵ１４は、最終フレームを表示完了したか否かを判定する（ステップＳ９１）。このステップＳ９１の判定結果が、最終フレームを表示完了した場合には、ＣＰＵ１４は、動画再生を終了する。
【００６４】
一方、ステップＳ９１の判定結果が、最終フレームを表示完了していない場合には、ＣＰＵ１４は、外部メモリ１７に記憶されている動画をビデオコーデック部１９によりデコードして再生する（ステップＳ９２）。
【００６５】
なお、このステップＳ９２において再生する場合に、当該動画と共に記憶されている水平センサ情報に基づいて、アフィン変換部１８は、表示画面を回転させる。すなわち、フレームの水平情報を基に、アフィン変換部１８は、表示画面の枠に対して水平を取るようにして画像を回転させる。以降、ステップＳ９１からの処理が繰り返される。
【００６６】
上述した図９の動作により、再生時に表示画面の枠に対して水平を取るようにして表示画像を回転させて表示することができる。
【００６７】
次に、図１０を用いて、再生時に表示画面の枠に対して顔の上下の向きが一定となるように表示画像を回転させて表示する場合の動作について説明する。なお、ここでは、上述した図６の動作により、外部メモリ１７には、顔の上下方向を示す情報と共に動画が保存されているものとして説明する。
【００６８】
まず、ＣＰＵ１４は、最終フレームを表示完了したか否かを判定する（ステップＳ１０１）。このステップＳ１０１の判定結果が、最終フレームを表示完了した場合には、ＣＰＵ１４は、動画再生を終了する。
【００６９】
一方、ステップＳ１０１の判定結果が、最終フレームを表示完了していない場合には、ＣＰＵ１４は、外部メモリ１７に記憶されている動画をビデオコーデック部１９によりデコードして再生する（ステップＳ１０２）。
【００７０】
なお、このステップＳ１０２において再生する場合に、当該動画と共に記憶されている顔の上下方向を示す情報に基づいて、アフィン変換部１８は、表示画面を回転させる。すなわち、アフィン変換部１８は、顔の上下の向きが表示画面の枠に対して一定になるように、表示画像を回転させて表示する。以降、ステップＳ１０１からの処理が繰り返される。
【００７１】
上述した図１０の動作により、再生時に、表示画面の枠に対して顔の上下の向きが一定となるように表示画像を回転させて表示することができる。
【００７２】
次に、図１１を用いて、再生時に表示機の水平情報を取得して、地面に対して水平を取るようにして表示画面を回転させて表示する場合の動作について説明する。なお、ここでは、上述した図５の動作により、外部メモリ１７には、水平センサ情報と共に動画が保存されているものとして説明する。
【００７３】
まず、ＣＰＵ１４は、最終フレームを表示完了したか否かを判定する（ステップＳ１１１）。このステップＳ１１１の判定結果が、最終フレームを表示完了した場合には、ＣＰＵ１４は、動画再生を終了する。
【００７４】
一方、ステップＳ１１１の判定結果が、最終フレームを表示完了していない場合には、ＣＰＵ１４は、水平センサ部１６により水平センサ情報を取得する（ステップＳ１１２）。次に、ＣＰＵ１４は、外部メモリ１７に記憶されている動画をビデオコーデック部１９によりデコードして再生する（ステップＳ１１３）。
【００７５】
なお、このステップＳ１１３において再生する場合に、当該動画と共に記憶されている水平センサ情報と、水平センサ部１６により取得した水平センサ情報とに基づいて、アフィン変換部１８は、地面に対して水平を取るよう画像を回転させて表示する。以降、ステップＳ１１１からの処理が繰り返される。
【００７６】
上述した図１１の動作により、再生時に、表示機の水平情報を取得して、地面に対して水平を取るようにして表示画面を回転させて表示することができる。
【００７７】
次に、図１２を用いて、再生時に表示機の水平情報を取得して、地面に対して顔の上下の向きが一定となるように表示画像を回転させて表示する場合の動作について説明する。なお、ここでは、上述した図６の動作により、外部メモリ１７には、顔の上下方向を示す情報と共に動画が保存されているものとして説明する。
【００７８】
まず、ＣＰＵ１４は、最終フレームを表示完了したか否かを判定する（ステップＳ１２１）。このステップＳ１２１の判定結果が、最終フレームを表示完了した場合には、ＣＰＵ１４は、動画再生を終了する。
【００７９】
一方、ステップＳ１２１の判定結果が、最終フレームを表示完了していない場合には、ＣＰＵ１４は、水平センサ部１６により水平センサ情報を取得する（ステップＳ１２２）。次に、ＣＰＵ１４は、外部メモリ１７に記憶されている動画をビデオコーデック部１９によりデコードして再生する（ステップＳ１２３）。
【００８０】
なお、このステップＳ１２３において再生する場合に、当該動画と共に記憶されている顔の上下方向を示す情報と、水平センサ部１６により取得した水平センサ情報とに基づいて、アフィン変換部１８は、地面に対して顔の上下の向きが一定となるように表示画像を回転させて表示する。以降、ステップＳ１２１からの処理が繰り返される。
【００８１】
上述した図１２の動作により、再生時に、表示機の水平情報を取得して、地面に対して顔の上下の向きが一定となるように表示画像を回転させて表示することができる。
【００８２】
次に、図１３を用いて、再生時に撮影時の傾きと同様に表示画面を傾ける場合の動作について説明する。なお、ここでは、上述した図５の動作により、外部メモリ１７には、水平センサ情報と共に動画が保存されているものとして説明する。
【００８３】
まず、ＣＰＵ１４は、最終フレームを表示完了したか否かを判定する（ステップＳ１３１）。このステップＳ１３１の判定結果が、最終フレームを表示完了した場合には、ＣＰＵ１４は、動画再生を終了する。
【００８４】
一方、ステップＳ１３１の判定結果が、最終フレームを表示完了していない場合には、ＣＰＵ１４は、表示機から、当該表示機の水平センサ情報を取得する（ステップＳ１３２）。この表示機の水平センサ情報とは、表示機の回転する表示画面の水平位置からの角度を示す情報である。次に、ＣＰＵ１４は、外部メモリ１７に記憶されている動画をビデオコーデック部１９によりデコードして再生する（ステップＳ１３３とＳ１３４）。
【００８５】
なお、このステップステップＳ１３３とＳ１３４とにおいて動画を再生する場合に、表示機から取得した水平センサ情報と、動画と共に外部メモリ１７から読み出した水平センサ情報とに基づいて、撮影時にカメラの傾きと同様になるように、画面角度制御部２２は画面角度制御用モータ２３を用いて、表示機の表示画面を回転させる（ステップＳ１３３参照）。そして、ＣＰＵ１４は、回転させた表示機の表示画面に、動画の画面表示をする（ステップＳ１３４参照）。以降、ステップＳ１３１からの処理が繰り返される。
【００８６】
上述した図１２の動作により、再生時に撮影時の傾きと同様に表示画面を傾けて再生することができる。
【００８７】
次に、図１４を用いて、再生時に地面に対して顔の上下の向きが一定となるように表示画面を傾ける場合の動作について説明する。なお、ここでは、上述した図６の動作により、外部メモリ１７には、顔の上下方向を示す情報と共に動画が保存されているものとして説明する。
【００８８】
まず、ＣＰＵ１４は、最終フレームを表示完了したか否かを判定する（ステップＳ１４１）。このステップＳ１４１の判定結果が、最終フレームを表示完了した場合には、ＣＰＵ１４は、動画再生を終了する。
【００８９】
一方、ステップＳ１４１の判定結果が、最終フレームを表示完了していない場合には、ＣＰＵ１４は、表示機から、当該表示機の水平センサ情報を取得する（ステップＳ１４２）。次に、ＣＰＵ１４は、外部メモリ１７に記憶されている動画をビデオコーデック部１９によりデコードして再生する（ステップＳ１４３とＳ１４４）。
【００９０】
なお、このステップステップＳ１４３とＳ１４４とにおいて動画を再生する場合に、表示機から取得した水平センサ情報と、動画と共に外部メモリ１７から読み出した顔の上下方向を示す情報とに基づいて、地面に対して顔の上下の向きが一定となるように、画面角度制御部２２は画面角度制御用モータ２３を用いて、表示画面を回転させる（ステップＳ１４３参照）。そして、ＣＰＵ１４は、動画の画面表示をする（ステップＳ１４４参照）。以降、ステップＳ１４１からの処理が繰り返される。
【００９１】
上述した図１４の動作により、再生時に、地面に対して顔の上下の向きが一定となるように表示画面を傾けて再生することができる。
【００９２】
次に、図１５を用いて、アスペクト比のズレから生じる空き部分を前後のフレームから補間する場合の動作について説明する。
まず、ＣＰＵ１４は、先頭フレームを注目フレームとする（ステップＳ１５１）。次に、ＣＰＵ１４は、全てのフレームの処理が完了したか否かを判定する（ステップＳ１５２）。
【００９３】
このステップＳ１５２の判定結果が、全てのフレームの処理が完了した場合には、ＣＰＵ１４は、動画の空き領域補間の処理を終了する。
【００９４】
一方、ステップＳ１５２の判定結果が、全てのフレームの処理が完了していない場合には、ＣＰＵ１４は、アフィン変換部１８を用いて、注目フレームの水平情報を基に、表示画面の枠に対して水平を取るように回転させる（ステップＳ１５３）。
【００９５】
次に、ＣＰＵ１４は、回転させた注目フレームと注目フレームの前後となるフレーム（前後フレーム）でパターンマッチングを行い、似ている画像を検索する（ステップＳ１５４）。次に、ＣＰＵ１４は、検索して似ている画像から注目フレームの空いている部分を補える箇所を探し、画像合成を行う（ステップＳ１５５）。
【００９６】
次に、ＣＰＵ１４は、画像合成を行った画像を、注目フレームとして更新する（ステップＳ１５６）。次に、ＣＰＵ１４は、次のフレームを注目フレームとして、ステップＳ１５２からの処理を繰り返す。
【００９７】
上述した図１５の動作により、アスペクト比のズレから生じる空き部分を前後のフレームから補間することができる。
【００９８】
次に、図１６を用いて、傾きが急激に変化しているフレームをシーンの切れ目と判断して、傾きの安定している区間を繋ぎ合わせて動画として編集する場合の動作について説明する。すなわち、傾きの変化を前フレームとの差で見る場合について、説明する。
【００９９】
まず、ＣＰＵ１４は、先頭フレームを注目フレームとする（ステップＳ１６１）。このＳ１６１で、ＣＰＵ１４は、変数Ｍ＝０および変数Ｎ＝０とする。次に、ＣＰＵ１４は、全てのフレームの処理が完了したか否かを判定する（ステップＳ１６２）。
【０１００】
このステップＳ１６２の判定結果が、全てのフレームの処理が完了した場合には、ＣＰＵ１４は、Ｍ個のシーンをつなぎ合わせて一つの動画に編集して（ステップＳ１６３）、傾きの安定している区間のつなぎ合わせをする処理を終了する。
【０１０１】
一方、ステップＳ１６２の判定結果が、全てのフレームの処理が完了していない場合には、ＣＰＵ１４は、注目フレームと前フレームとの傾きが大きいか否かを判定する（ステップＳ１６４）。
【０１０２】
このステップＳ１６４の判定結果が、注目フレームと前フレームとの傾きが大きい場合には、ＣＰＵ１４は、変数Ｎ＝０として（ステップＳ１６５）、処理を後述するステップＳ１７０に進める。
【０１０３】
一方、ステップＳ１６４の判定結果が、注目フレームと前フレームとの傾きが大きくない場合には、ＣＰＵ１４は、変数Ｎの値が０であるか否か（Ｎ＝０？）を判定する（ステップＳ１６６）。
【０１０４】
このステップＳ１６６の判定結果が、変数Ｎの値が０である場合には、ＣＰＵ１４は、変数Ｍの値に１を加算した値を、変数Ｎの値として（Ｎ＝Ｍ＋１）（ステップＳ１６７）、処理を、後述するステップＳ１６８に進める。
【０１０５】
一方、ステップＳ１６６の判定結果が、変数Ｎの値が０でない場合には、ＣＰＵ１４は、Ｎフレーム目としてシーンＭに注目フレームを追加する（ステップＳ１６８）。次に、ＣＰＵ１４は、変数Ｍの値に１を加算した値を、変数Ｎの値とする（Ｎ＝Ｍ＋１）（ステップＳ１６９）。次に、ＣＰＵ１４は、注目フレームを次フレームに更新する（ステップＳ１７０）。以降、ステップＳ１６２からの処理が繰り返される。
【０１０６】
上述した図１４の動作により、傾きが急激に変化しているフレームをシーンの切れ目と判断して、傾きの安定している区間を繋ぎ合わせて動画として編集することができる。
【０１０７】
以上、図１から図３を用いて説明した動画再生装置１、および、図４から図１６を用いて説明した動画再生装置１を有する撮像装置により、次のような作用と効果が生じる。まず、水平センサや顔検出により表示する際に、固定するべき方向を取得して、動画撮影中に各フレームにその情報を付加しておく。その付加された情報から、再生側では、水平位置、または、被写体の角度が変化しないように、表示画面を回転させて表示する。よって、動画撮影中に横位置から縦位置に変化させるなど、カメラを回転させながら撮影しても、撮影の際には水平のとれた画像を見ることができ、画面酔いなどの発生を減じることができる。
【０１０８】
また、画像を回転して保存あるいは表示すると、表示画面の外枠に画像データがない空き領域が生じる可能性があるが、この場合でも、前後フレームから空き領域を補間することができる。さらに、撮影中の角度の変化を１つのシーンの区切りとして判断することで、角度の安定しているシーンをつなぎ合わせた動画を生成することもできる。
【０１０９】
以上説明したように、本実形態によれば、撮像された動画の角度を補正して再生することができる。そのため、動画撮影中にカメラの角度を変化させて撮影した場合であっても、再生画面を見て画面酔いするようなことを減じることができる。
【０１１０】
なお、図１の動画記憶部４は、ハードディスク装置や光磁気ディスク装置、フラッシュメモリ等の不揮発性のメモリや、ＣＤ−ＲＯＭ等の読み出しのみが可能な記憶媒体、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）のような揮発性のメモリ、あるいはこれらの組み合わせにより構成されるものとする。
【０１１１】
なお、図１の角度検出部２または変換部３は、専用のハードウェアにより実現されるものであってもよく、また、この角度検出部２または変換部３はメモリおよびＣＰＵ（中央演算装置）により構成され、角度検出部２または変換部３の機能を実現するためのプログラムをメモリにロードして実行することによりその機能を実現させるものであってもよい。
【０１１２】
また、図１における角度検出部２または変換部３の機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより角度検出部２または変換部３による処理を行ってもよい。なお、ここでいう「コンピュータシステム」とは、ＯＳや周辺機器等のハードウェアを含むものとする。
【０１１３】
また、「コンピュータシステム」は、ＷＷＷシステムを利用している場合であれば、ホームページ提供環境（あるいは表示環境）も含むものとする。
また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ＲＯＭ、ＣＤ−ＲＯＭ等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間の間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含むものとする。また上記プログラムは、前述した機能の一部を実現するためのものであっても良く、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであっても良い。
【０１１４】
以上、この発明の実施形態を図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。
【図面の簡単な説明】
【０１１５】
【図１】この発明の一実施形態による動画再生装置の構成を示すブロック図である。
【図２】一例としての撮像した動画のフレームに含まれている画像を示すフレーム図である。
【図３】一例としての再生する動画のフレームに含まれている画像を示すフレーム図である。
【図４】この発明の一実施形態による動画撮影装置の構成を示すブロック図である。
【図５】図４の動画撮影装置の動作を示すフローチャートその１である。
【図６】図４の動画撮影装置の動作を示すフローチャートその２である。
【図７】図４の動画撮影装置の動作を示すフローチャートその３である。
【図８】図４の動画撮影装置の動作を示すフローチャートその４である。
【図９】図４の動画撮影装置の動作を示すフローチャートその５である。
【図１０】図４の動画撮影装置の動作を示すフローチャートその６である。
【図１１】図４の動画撮影装置の動作を示すフローチャートその７である。
【図１２】図４の動画撮影装置の動作を示すフローチャートその８である。
【図１３】図４の動画撮影装置の動作を示すフローチャートその９である。
【図１４】図４の動画撮影装置の動作を示すフローチャートその１０である。
【図１５】図４の動画撮影装置の動作を示すフローチャートその１１である。
【図１６】図４の動画撮影装置の動作を示すフローチャートその１２である。
【符号の説明】
【０１１６】
１…動画再生装置、２…角度検出部、３…変換部、４…動画記憶部、５…動画出力部、１０…撮像素子、１１…撮像素子制御部、１２…画像処理部、１３…内部メモリ、１４…ＣＰＵ、１５…顔検出部、１６…水平センサ部、１７…外部メモリ、１８…アフィン変換部、１９…ビデオコーデック部、２０…画面用画像出力部、２１…表示装置、２２…画面角度制御部、２３…画面角度制御用モータ
【図１】
2010147637.tif 000003
【図２】
2010147637.tif 000004
【図３】
2010147637.tif 000005
【図４】
2010147637.tif 000006
【図５】
2010147637.tif 000007
【図６】
2010147637.tif 000008
【図７】
2010147637.tif 000009
【図８】
2010147637.tif 000010
【図９】
2010147637.tif 000011
【図１０】
2010147637.tif 000012
【図１１】
2010147637.tif 000013
【図１２】
2010147637.tif 000014
【図１３】
2010147637.tif 000015
【図１４】
2010147637.tif 000016
【図１５】
2010147637.tif 000017
【図１６】
2010147637.tif 000018