説明

画像処理装置および方法、並びにプログラム

【課題】より簡単に高品位なループ動画像を得ることができるようにする。
【解決手段】ループ動画像の素材となる複数フレームの連写画像が入力されると、動く被写体を含む動きセグメント、または動きのない被写体を含む静止セグメントを含む、複数のセグメントに連写画像が分割される。そして、連写画像の動きセグメントの領域の画像がループ動画像化されて、セグメントループ動画像が生成される。また、連写画像の静止セグメントの領域の画像が切り出されて、静止画像であるセグメント画像が生成される。さらに、これらのセグメントループ動画像とセグメント画像とが結合されて、1つのループ動画像とされる。本発明は、画像処理装置に適用することができる。

【発明の詳細な説明】
【技術分野】
【0001】
本技術は画像処理装置および方法、並びにプログラムに関し、特に、より簡単に高品位なループ動画像を得ることができるようにした画像処理装置および方法、並びにプログラムに関する。
【背景技術】
【0002】
従来、入力ビデオ映像を用いてループ動画像を生成する技術が知られている(例えば、非特許文献1参照)。ループ動画像とは、動画像の所定の区間や、複数の静止画像が繰り返し再生される画像である。
【0003】
例えば、ループ動画像の生成時には、動画像の所定区間の開始端のフレームと終了端のフレームが時間的に連続していない場合でも、フレーム間の画像の差異による継ぎ目が視覚的に目立たなくなるように、動画像の所定区間が加工される。
【0004】
そのため、ループ動画像を繰り返し再生すると、ループ動画像の開始端と終了端がはっきりとは分からなくなるため、あたかも無限長の動画像が提示されているかのように感じさせることができる。ループ動画像は、CG(Computer Graphics)のテクスチャ素材や背景動画像など、多くのアプリケーションプログラムにおいて有用である。
【0005】
このようなループ動画像は、基本的に以下のようにして生成される。すなわち、まず入力された複数のフレームからなる動画像から、時間の離れた類似度の高い2つのフレームが選択され、それらのフレームを開始端および終了端とする区間が抽出されてループ動画像とされる。
【0006】
ここで、ループ動画像の再生時には、動画像から抽出された区間の終了端と開始端とが連続して再生されるようにされる。したがって、ループ動画像とされた動画像の区間の開始端と終了端のフレームの画像が類似しているほど、ループ動画像の再生時に、それらのフレームの画像を滑らかに連結することができることになる。例えば、ループ動画像とされる動画像の区間の開始端と終了端の連結をより滑らかなものとするために、動画像におけるそれらの開始端と終了端の近傍のフレームの画像同士をブレンドして、ループ動画像のフレームの画像とするクロスフェード処理なども行われる。
【先行技術文献】
【非特許文献】
【0007】
【非特許文献1】Arno Schodl, Richard Szeliski, David H. Salesin, and Irfan Essa.「Video textures」. Proceedings of SIGGRAPH 2000, pages 489-498, July 2000.
【発明の概要】
【発明が解決しようとする課題】
【0008】
ところが、ループ動画像の素材となるビデオ映像(動画像)によっては、ループ動画像の開始端と終了端とがうまくつながらず、処理結果が大きく破綻してしまうことがある。具体的には、例えばビデオ映像内に複数の動被写体があり、それらの被写体が同時にうまくつながるタイミング(フレーム)がなかったり、そもそも2つの類似するフレームがビデオ映像内になかったりする場合があった。
【0009】
このような不適切なビデオ映像を素材としてループ動画像を生成すると、ループ動画像の開始端と終了端のフレームの画像が破綻してしまったり、再生時に開始端と終了端が滑らかにつながらなかったりする。そのような場合、ユーザは、素材となるビデオ映像の撮影をやり直したり、ループ動画像の生成に用いられるパラメータを手動で変更したりして、所望のループ動画像が得られるように対応しなければならなかった。
【0010】
本技術は、このような状況に鑑みてなされたものであり、より簡単に高品位なループ動画像を得ることができるようにするものである。
【課題を解決するための手段】
【0011】
本技術の第1の側面の画像処理装置は、異なる時刻に撮影された複数の撮影画像に基づいて、前記撮影画像をいくつかのセグメントに分割するセグメント計算部と、前記複数の前記撮影画像のうちの連続するいくつかの前記撮影画像から、動きのある被写体が含まれる前記セグメントである動きセグメントの画像を切り出し、前記動きセグメントの画像に基づいて、ループ動画像として再生可能な画像を生成するループ動画像生成部とを備える。
【0012】
前記ループ動画像を、連続する複数の前記動きセグメントの画像のうち、類似度の高い2つの画像の間にある画像が順番に繰り返し表示される動画像とすることができる。
【0013】
画像処理装置には、前記複数の前記撮影画像のうちのいくつかの前記撮影画像から、動きのない被写体が含まれる前記セグメントである静止セグメントの画像を切り出して、前記静止セグメントの画像に基づいて、1つの静止画像であるセグメント画像を生成するセグメント画像生成部をさらに設けることができる。
【0014】
画像処理装置には、前記ループ動画像として再生可能な画像と前記セグメント画像とを結合して、1つのループ動画像を生成するセグメント結合処理部をさらに設けることができる。
【0015】
前記セグメント画像生成部には、いくつかの前記静止セグメントの画像を重ね合わせることで、前記セグメント画像を生成させることができる。
【0016】
前記ループ動画像生成部には、連続する複数の前記動きセグメントの画像のうち、類似度の高い2つの画像がある場合、前記類似度の高い2つの画像を含む、連続する複数の前記動きセグメントの画像に基づいて、前記ループ動画像として再生可能な画像を生成させることができる。
【0017】
前記ループ動画像生成部には、連続する複数の前記動きセグメントの画像のうち、類似度の高い2つの画像がない場合、1つの前記動きセグメントの画像に基づいて、1つの静止画像であるセグメント画像を生成させることができる。
【0018】
画像処理装置には、前記撮影画像よりも解像度の高い高解像度画像から、動きのない被写体が含まれる前記セグメントである静止セグメントに対応する領域の画像を切り出し、前記静止セグメントに対応する領域の画像に基づいて、1つの静止画像であるセグメント画像を生成するセグメント画像生成部をさらに設け、前記ループ動画像生成部には、前記高解像度画像と同じ解像度に変換された前記撮影画像に基づいて、前記ループ動画像として再生可能な画像を生成させることができる。
【0019】
画像処理装置には、撮影モードを切り替えるための操作部をさらに設け、前記操作部に対する操作により、前記撮影モードとして所定のモードが選択された場合、前記撮影画像および前記高解像度画像が撮影されるようにすることができる。
【0020】
前記高解像度画像の撮影前に、前記複数の前記撮影画像が撮影されるようにし、画像処理装置には、前記複数の前記撮影画像における前記動きセグメントの画像のうち、類似度の高い2つの画像があるか否かを判定し、その判定結果を出力する通知部をさらに設けることができる。
【0021】
前記類似度の高い2つの画像があると判定された場合、前記高解像度画像が撮影され、前記ループ動画像として再生可能な画像、および前記セグメント画像が生成されるようにすることができる。
【0022】
本技術の第1の側面の画像処理方法またはプログラムは、異なる時刻に撮影された複数の撮影画像に基づいて、前記撮影画像をいくつかのセグメントに分割し、前記複数の前記撮影画像のうちの連続するいくつかの前記撮影画像から、動きのある被写体が含まれる前記セグメントである動きセグメントの画像を切り出し、前記動きセグメントの画像に基づいて、ループ動画像として再生可能な画像を生成するステップを含む。
【0023】
本技術の第1の側面においては、異なる時刻に撮影された複数の撮影画像に基づいて、前記撮影画像がいくつかのセグメントに分割され、前記複数の前記撮影画像のうちの連続するいくつかの前記撮影画像から、動きのある被写体が含まれる前記セグメントである動きセグメントの画像が切り出され、前記動きセグメントの画像に基づいて、ループ動画像として再生可能な画像が生成される。
【0024】
本技術の第2の側面の画像処理装置は、異なる時刻に撮影された複数の撮影画像のなかに類似度の高い2つの前記撮影画像があるか否かを判定し、その判定結果を出力する通知部と、前記複数の前記撮影画像のうち、類似度の高い2つの前記撮影画像を含む、連続する複数の前記撮影画像に基づいて、ループ動画像として再生可能な画像を生成するループ動画像生成部とを備える。
【0025】
本技術の第2の側面の画像処理方法は、異なる時刻に撮影された複数の撮影画像のなかに類似度の高い2つの前記撮影画像があるか否かを判定し、その判定結果を出力し、前記複数の前記撮影画像のうち、類似度の高い2つの前記撮影画像を含む、連続する複数の前記撮影画像に基づいて、ループ動画像として再生可能な画像を生成するステップを含む。
【0026】
本技術の第2の側面においては、異なる時刻に撮影された複数の撮影画像のなかに類似度の高い2つの前記撮影画像があるか否かが判定され、その判定結果が出力され、前記複数の前記撮影画像のうち、類似度の高い2つの前記撮影画像を含む、連続する複数の前記撮影画像に基づいて、ループ動画像として再生可能な画像が生成される。
【発明の効果】
【0027】
本技術の第1の側面および第2の側面によれば、より簡単に高品位なループ動画像を得ることができる。
【図面の簡単な説明】
【0028】
【図1】ループ動画像の生成について説明する図である。
【図2】画像の類似度合いの比較について説明する図である。
【図3】本技術を適用したループ動画像の生成について説明する図である。
【図4】画像処理装置の構成例を示す図である。
【図5】ループ動画像生成処理を説明するフローチャートである。
【図6】画像処理装置の他の構成例を示す図である。
【図7】撮影装置の構成例を示す図である。
【図8】画像処理部の構成例を示す図である。
【図9】撮影処理を説明するフローチャートである。
【図10】ループ動画像生成処理を説明するフローチャートである。
【図11】画像処理部の他の構成例を示す図である。
【図12】ループ動画像生成処理を説明するフローチャートである。
【図13】コンピュータの構成例を示す図である。
【発明を実施するための形態】
【0029】
以下、図面を参照して、本技術を適用した実施の形態について説明する。
【0030】
〈第1の実施の形態〉
[ループ動画像の生成手法について]
まず、ループ動画像の生成手法の概要について説明する。例えば、図1に示すように、ループ動画像の素材として、複数フレームからなる動画像MP11が入力され、この動画像MP11の所定の区間を切り出してループ動画像を生成する場合を考える。なお、図1において、横方向は時間を示しており、図中、1つの四角形は1つのフレームの画像を表している。
【0031】
ループ動画像を生成するにあたり、まず素材となる動画像MP11から、時間的に離れた位置にある、最も類似度が高いフレームのペアが検出される。この例では、動画像MP11を構成するフレームのうち、フレームiと、そのフレームiよりも時間的に後にあるフレームjが最も類似度の高いフレームペアとして検出される。このようにしてフレームのペアが検出されると、動画像MP11のフレームiからフレームjまでの区間が切り出される。
【0032】
一般的に、動画像内で類似度の高いフレームのペアが検出されても、それらのフレームの画像が完全に一致することはない。そのため、検出された2つのフレームを開始端および終了端とする区間を繰り返し再生すると、ユーザには、終了端から開始端への遷移(継ぎ目)が明らかに分かってしまう。
【0033】
そこで、動画像MP11から切り出された区間の開始端近傍のフレームの画像と、終了端近傍のフレームの画像とが加工されて、ループ動画像LM11とされる。
【0034】
すなわち、動画像MP11から切り出された区間の開始端のフレームiの画像と、終了端のフレームjの画像とがブレンドされて、その結果得られた画像が、ループ動画像LM11の開始端のフレームi’の画像とされる。つまり、フレームiの画像とフレームjの画像との同じ位置にある画素が、所定の重みにより重み付き加算されて、それらの画素と同じ位置にあるフレームi’の画像の画素とされる。
【0035】
また、フレームiの1つ後のフレーム(i+1)と、フレームjの1つ後のフレーム(j+1)とが所定の重みによりブレンドされて、フレームi’の1つ後のフレーム(i+1)’とされる。さらに、フレーム(i+1)の1つ後のフレーム(i+2)と、フレーム(j+1)の1つ後のフレーム(j+2)とが所定の重みによりブレンドされて、フレーム(i+1)’の1つ後のフレーム(i+2)’とされる。
【0036】
同様に、フレームjの1つ前のフレーム(j−1)と、フレームiの1つ前のフレーム(i−1)とが所定の重みによりブレンドされて、ループ動画像LM11の終了端のフレーム(j−1)’とされる。また、フレーム(j−1)の1つ前のフレーム(j−2)と、フレーム(i−1)の1つ前のフレーム(i−2)とが所定の重みによりブレンドされて、フレーム(j−1)’の1つ前のフレーム(j−2)’とされる。
【0037】
ここで、動画像MP11から切り出された区間の開始端近傍に対するブレンド処理では、開始端よりも後にあるフレームほど、開始端側のフレームの画像に乗算される重みが大きくなる。つまり、ブレンドにより得られる画像に対する、開始端側のフレームの画像の寄与率が大きくなる。逆に、動画像MP11から切り出された区間の終了端近傍に対するブレンド処理では、終了端よりも前にあるフレームほど、終了端側のフレームの画像に乗算される重みが大きくなる。
【0038】
このように、フレームの位置に応じて、ブレンド処理に用いられる重み(ブレンド率)を徐々に変化させていくことで、動画像の継ぎ目の顕在化を軽減させる手法は、クロスフェードと呼ばれている。
【0039】
以上の処理で得られたループ動画像LM11の再生時には、開始端のフレームi’から順番に、フレーム(i+1)’,フレーム(i+2)’・・・と再生されていく。そして、終端のフレーム(j−1)’が再生されると、その後、再びフレームi’に戻り、各フレームが繰り返し再生される。
【0040】
このように、動画像MP11から切り出した区間の開始端および終了端に対し、それぞれ開始端近傍のフレームと終了端近傍のフレームを用いたブレンド処理を行うことで、ループ動画像LM11の開始端と終了端のフレームを滑らかにつなげることができる。すなわち、動画像MP11の時間的に離れた位置のフレームiとフレーム(j−1)の画像間の差異が視覚的に顕在化しないようにすることができる。
【0041】
なお、動画像MP11から切り出した区間を構成するフレームのうち、その区間の開始端および終了端から時間的に遠い位置にある中央付近のフレームについては、それらのフレームの画像が、そのままループ動画像LM11を構成するフレームの画像とされる。
【0042】
[類似度の高いフレームペアの検出方法について]
また、ループ動画像の生成時に、素材となる動画像の最も類似度が高いフレームのペアが検出されるが、このようなフレームのペアの検出では、例えば画像同士が比較されて類似度が計算され、計算により得られた類似度に基づいて、最適なペアが決定される。
【0043】
具体的には、画像同士の類似度として、画像の各画素の差分絶対値和などが利用される。すなわち、2つの画像の同じ位置にある各画素について、それらの画素の輝度値の差分の絶対値が求められ、各画素の差分の絶対値の総和が差分絶対値和(SAD(Sum of Absolute Difference))とされる。
【0044】
画像同士が類似しているほど、差分絶対値和は小さくなるので、最も差分絶対値和が小さくなるフレームのペアをループ動画像の開始端および終了端とすれば、ループ動画像の開始端と終了端での視覚的な差異は少なくなるはずである。
【0045】
しかしながら、2つの画像同士の差分絶対値和による評価では、それらの画像上における被写体の時間方向の動きは考慮されない。具体的には、例えば画像上で時計の振り子が左右に振れている場合、特定のフレームのみに注目しても、振り子が左側から振れてきたのか、右側から振れてきたのかを特定することはできない。
【0046】
そのため、2つの画像同士の差分絶対値和のみから、ループ動画像の開始端および終了端とするフレームのペアを検出すると、ループ動画像の再生時に、終了端のフレームから開始端のフレームに遷移するときに、被写体の動きが不連続になってしまうことがある。
【0047】
そこで、例えば図2に示すように、連続する複数のフレームからなる区間同士を比較すれば、ループ動画像の開始端および終了端とするのに、より適切なフレームのペアを検出することができるようになる。
【0048】
なお、図2において、図1における場合と対応する部分には同一の符号を付してあり、その説明は適宜省略する。また、図中、動画像MP11内の四角形は1つのフレームを表しており、その四角形内の文字はフレームを特定する文字となっている。
【0049】
例えば、動画像MP11から類似する2つのフレームのペアを検出する場合に、フレームiとフレームjとが互いに類似しているかが評価されるとする。この場合、フレームiを中心とする7つの連続するフレーム(i−3)乃至フレーム(i+3)と、フレームjを中心とする7つの連続するフレーム(j−3)乃至フレーム(j+3)とが比較される。
【0050】
具体的には、図中、中央に示すように、フレーム(i+k)の画像と、フレーム(j+k)の画像との差分絶対値和(但し、k=-3,-2,-1,0,1,2,3)が求められ、それらの差分絶対値和が重みG11により重み付き加算されて、積算SAD値が求められる。つまり、各差分絶対値和に重みG11が付けられて積算され、積算SAD値とされる。
【0051】
図2の例では、重みG11は、フレームiに近いフレームが用いられて算出された差分絶対値和に乗算される重みほど、より大きくなる正規分布重みとなっている。
【0052】
このようにして求めた積算SAD値は、複数の連続するフレームからなる区間同士を比較したときに、各被写体の位置や動きが類似するほど小さくなる。つまり、区間同士の類似の度合いが高いほど、積算SAD値は小さくなる。したがって、動画像MP11において、最も積算SAD値が小さくなるフレームのペアが、ループ動画像の開始端および終了端とするのに最も適したフレームのペアということができる。
【0053】
このように、複数の連続するフレームについて積算SAD値を求めることで、連続する複数のフレームからなる区間同士の類似の度合いを評価することができる。この場合、積算SAD値が小さいほど、より類似の度合いが高いことになる。
【0054】
なお、動画像MP11において、連続する何フレームからなる区間同士を比較し、それらの区間の積算SAD値を求めるかは、フレーム長を単位とするパラメータ(以下、積算タップ長Lsadとも称する)として指定されるようにしてもよい。そのような場合、例えばユーザにより積算タップ長Lsadが指定されると、積算タップ長Lsadに示される数の連続するフレームの区間について積算SAD値が算出される。
【0055】
また、積算SAD値が最小となるフレームペアを検出する場合、時間的に近いフレーム同士では画像の変化が少ないため、積算SAD値が小さくなる。そのため、過度に短い周期のループ動画像が生成されてしまうことを防止するには、比較されるフレーム(区間)同士が最低限離れていなければならない距離を定め、その距離よりもフレーム間の距離が短いフレームペアを候補から除外する必要がある。
【0056】
この場合、例えばユーザにより、比較されるフレーム同士の最低限の距離を示すパラメータ(以下、最短周期長Lminとも称する)が指定される。すると、動画像MP11において、最短周期長Lminにより示される距離以上離れているフレームの各ペアについて積算SAD値が求められ、それらのペアのうち、積算SAD値が最小となるペアのフレームが、ループ動画像に用いられる区間の開始端および終了端とされる。
【0057】
なお、最短周期長Lminは、入力パラメータとしてプログラムに対して指定されてもよいし、素材となる動画像MP11の全長に対する割合としてプログラムにより算出されるようにしてもよい。
【0058】
[画像の位置合わせについて]
また、ループ動画像の生成時には、必要に応じて素材となる画像の位置合わせが行なわれる。一般的に、ユーザが手持ちでカメラによるビデオ撮影を行なうと、手ぶれが発生する可能性が高い。こうしたカメラ姿勢の動きは、撮影により得られた動画像を視聴する際に不快なだけでなく、ループ動画像の生成時に差分絶対値和などの画像間の類似度を計算する場合にも悪影響となる。
【0059】
そのため、撮影時における手ぶれ等のカメラの動きを補正する位置合わせ処理を、撮影された画像に対して行い、位置合わせ処理された画像を用いてループ動画像を生成すれば、より高品位なループ動画像を得ることができる。つまり、素材となる画像に対して位置合わせ処理を行えば、三脚を用いてカメラを固定した状態で撮影したような、ぶれのない動画像を得ることができる。
【0060】
このような位置合わせ処理では、1つの画像(以下、基準画像と称する)を基準として、別の画像(以下、処理対象画像と称する)が射影変換され、基準画像と処理対象画像上の被写体の位置合わせが行なわれる。例えば基準画像は、ループ動画像の素材となる動画像の先頭フレームの画像であってもよいし、任意のフレームの画像であってもよい。
【0061】
また、位置合わせに必要な射影変換行列は、基準画像と処理対象画像のそれぞれについて、特徴点の抽出を行い、基準画像上の特徴点に対して、処理対象画像上の特徴点が適合するような変換行列を算出することで得られる。
【0062】
さらに、特徴点は、視点が変化しても再現性のある点とされる。すなわち、特徴点の位置と特徴量が求められて、それらの位置と特徴量の情報から特徴点間の対応関係が計算され、2つのフレームの位置関係が求められる。このような位置合わせに適した特徴点には、例えばSIFT(Scale Invariant Feature Transform)特徴点などがある。
【0063】
次に、位置合わせ処理に用いられる射影変換行列の具体的な算出手法の一例について説明する。まず、基本画像と処理対象画像から、SIFT特徴点などの特徴点が抽出される。そして、処理対象画像上の特徴点が、基本画像上のどの特徴点に対応するかが、特徴量間のユークリッド距離により求められる。
【0064】
さらに、RANSAC(Random Sample Consensus)法により、処理対象画像上の特徴点と、その特徴点に対応する基本画像上の特徴点とからなる特徴点ペアがいくつか選択され、これらのペアを構成する特徴点間の位置の変換に最も適合する変換行列が求められる。そして、このようにして得られた変換行列が、位置合わせ処理に用いられる射影変換行列とされる。このようなRANSAC法によれば、特徴点の位置や対応関係に誤りが含まれていても、その誤りが除去されて正しい変換行列が得られる。
【0065】
なお、RANSAC法やSIFT特徴点の算出の詳細は、例えば「Brown, M. and Lowe, D. G. 2003. "Recognising Panoramas.",In Proceedings of the Ninth IEEE international Conference on Computer Vision-Volume 2 (October 13 - 16, 2003). ICCV. IEEE Computer Society, Washington,DC, 1218.」などに記載されている。
【0066】
また、位置合わせ処理に用いられる変換行列の種類としては、射影変換行列が用いられるのが一般的であるが、変形自由度の異なるアフィン変換行列や剛体変換行列などが用いられるようにしてもよい。
【0067】
射影変換行列によって処理対象画像を変形させて、変形後の処理対象画像と基準画像を重ね合わせると、基準画像の端や角部分には処理対象画像と重ならない部分がある。そのため、射影変換後の全ての処理対象画像と基準画像とを重ね合わせたときに、全ての画像の画素が重なる有効な領域のみを残して出力するクロップ処理が行われるようにしてもよい。
【0068】
すなわち、射影変換された全ての処理対象画像と基準画像を重ね合わせて、それらの処理対象画像と基準画像の画素のうち、他の画像と重ならない画素の領域があれば、その画素の領域が無効領域とされる。そして、そのような無効領域を除く、全ての処理対象画像と基準画像の画素が重なる領域からなる有効領域内において、面積が最大となる矩形の領域が求められ、その結果得られた矩形領域がクロップ領域とされる。
【0069】
このようにしてクロップ領域が求められると、射影変換された動画像を構成する各フレームの画像のクロップ領域が切り出されて、それらの切り出された各フレームの画像からなる動画像が、ループ動画像の素材となる最終的な動画像とされる。
【0070】
なお、クロップ処理には、クロップ後の画像が小さくなるという欠点がある。そこで、素材となる動画像の解像度が低下しないように、クロップ処理は行わず、射影変換後の画像に対して、射影変換前の画像と重ならない領域の各画素の画素値として、白または黒の色の画素値を割り当てたり、基準画像の同位置の画素の画素値を割り当てたりしてもよい。
【0071】
[本技術を適用したループ動画像について]
ループ動画像の生成には、以上において説明した技術が適宜用いられる。次に、本技術を適用して生成されるループ動画像について説明する。なお、以下においては、ループ動画像の素材となる画像を連写画像と呼ぶこととする。
【0072】
いま、図3に示すように、複数の連写画像からなる連写画像群CP11がループ動画像の素材として入力されたとする。
【0073】
ここで、連写画像群CP11は、被写体が同じである時間的に連続して撮影された画像であれば、どのような画像であってもよい。例えば、連写画像群CP11は、連写画像を1フレームの画像とする動画像であってもよいし、連続して撮影された各時刻の静止画像からなる静止画像群であってもよい。
【0074】
このような連写画像群CP11が入力されると、各連写画像は、動きのある被写体が含まれているセグメント、または動きのない静止した被写体が含まれるセグメントの少なくとも何れかからなる複数のセグメントに分割される。
【0075】
図3の例では、連写画像群CP11を構成する各連写画像は、空間方向にセグメントSG1乃至セグメントSG4の4つのセグメントに分割されている。例えば、セグメントSG1は、静止した被写体が含まれるセグメント(以下、静止セグメントとも称する)であり、セグメントSG2乃至セグメントSG4は、動きのある被写体が含まれているセグメント(以下、動きセグメントとも称する)である。
【0076】
連写画像がいくつかのセグメントに分割されると、それらのセグメントごとに、連写画像上のセグメントの領域が表示される静止画像(以下、セグメント画像と称する)またはループ動画像(以下、セグメントループ動画像と称する)が生成される。そして、それらの各セグメントのセグメント画像とセグメントループ動画像が結合されて、最終的な1つのループ動画像とされる。
【0077】
具体的には、まず静止セグメントであるセグメントSG1について、連写画像群CP11を構成する複数の連写画像のうちの1または複数の連写画像が選択され、選択された連写画像から1つのセグメント画像SGP11が生成される。例えば、連写画像群CP11の最初の数フレームの連写画像における、セグメントSG1の領域の画像が重ね合わされて、セグメント画像SGP11とされる。
【0078】
静止セグメントでは被写体の動きは殆どないので、ループ動画像の再生時に、静止画像であるセグメント画像SGP11を継続して表示すれば、連写画像に特別な処理を施すことなく、ループ動画像の終了端から開始端への遷移を滑らかにすることができる。
【0079】
次に、動きセグメントであるセグメントSG2について、連写画像群CP11を構成する各連写画像上のセグメントSG2の領域の画像に基づいて、それらの画像がループ動画像の生成に適しているかが判定される。すなわち、それらの画像群のなかに、ループ動画像の生成に適した類似度の高い画像のペアがあるか否かが判定される。
【0080】
図3の例では、連写画像のセグメントSG2の領域の画像は、ループ動画像の生成に適していると判定され、これらの画像からループ動画像が生成され、セグメントSG2のセグメントループ動画像SGM11とされる。
【0081】
同様に、動きセグメントであるセグメントSG3について、連写画像群CP11を構成する各連写画像上のセグメントSG3の領域の画像が、ループ動画像の生成に適しているかが判定される。この例では、連写画像のセグメントSG3の領域の画像は、ループ動画像の生成に適していないと判定され、連写画像群CP11を構成する連写画像におけるセグメントSG3の領域の画像から、1つのセグメント画像SGP12が生成される。例えば、連写画像群CP11の最初のフレームの連写画像における、セグメントSG3の領域の画像が、そのままセグメント画像SGP12とされる。
【0082】
セグメントSG3は動きセグメントであるが、このセグメントSG3の領域は、ループ動画像化に適しておらず、高品位なセグメントループ動画像を得ることができない。そこで、このようなセグメントSG3に対しては、静止セグメントと同様に、静止画像であるセグメント画像を生成し、ループ動画像の再生時に、このセグメント画像が継続して表示されるようにすることで、ループ動画像の破綻を防止することができる。
【0083】
さらに、動きセグメントであるセグメントSG4について、連写画像群CP11を構成する各連写画像上のセグメントSG4の領域の画像が、ループ動画像の生成に適しているか否かが判定される。図3の例では、連写画像のセグメントSG4の領域の画像は、ループ動画像の生成に適していると判定され、これらの画像からループ動画像が生成され、セグメントSG4のセグメントループ動画像SGM12とされる。
【0084】
そして、連写画像の各セグメントについて得られたセグメント画像SGP11およびセグメント画像SGP12と、セグメントループ動画像SGM11およびセグメントループ動画像SGM12とが結合されて、最終的なループ動画像とされる。
【0085】
例えば、最終的なループ動画像の所定のフレームの画像LPF11は、各セグメントのセグメント画像、またはセグメントループ動画像の対応するフレームの画像を、それらのセグメントの位置と同じ位置に配置して結合することにより得られる。
【0086】
すなわち、画像LPF11のフレームに対応する、セグメントループ動画像SGM11のフレームの画像が画像SGF11であり、画像LPF11のフレームに対応する、セグメントループ動画像SGM12のフレームの画像が画像SGF12であるとする。
【0087】
この場合、セグメント画像SGP11、画像SGF11、セグメント画像SGP12、および画像SGF12が、それぞれ画像LPF11上におけるセグメントSG1乃至セグメントSG4の各位置に配置され、それらの画像が結合されて画像LPF11とされる。
【0088】
以上のように、被写体の動きに応じて連写画像をいくつかのセグメントに分割し、セグメントごとに生成したセグメント画像とセグメントループ動画像を結合してループ動画像とすることで、連写画像の内容に応じた高品位なループ動画像を簡単に得ることができる。このようにして得られたループ動画像によれば、静止した被写体の部分は高画質で完全に静止させてより写真らしく提示し、動きのある被写体の部分はその動きを強調して、写真の一部が動いているかのように感じさせることができる。
【0089】
[画像処理装置の構成例]
また、複数の連写画像を入力とし、図3を参照して説明したループ動画像を生成する画像処理装置は、例えば図4に示すように構成される。図4は、本技術を適用した画像処理装置の一実施の形態の構成例を示す図である。
【0090】
画像処理装置11は、画像メモリ21、位置合わせ部22、セグメント計算部23、三次元NR(Noise Reduction)部24、ループ動画像計算部25、およびセグメント結合処理部26から構成される。
【0091】
画像メモリ21は、供給された連写画像を一時的に記録するとともに、記録している連写画像を必要に応じて出力する。また、画像メモリ21は、セグメント結合処理部26から供給されたループ動画像を一時的に記録し、図示せぬ後段の表示部等に出力する。
【0092】
位置合わせ部22は、画像メモリ21に記録されている連写画像を読み出して、読み出した連写画像に対して位置合わせ処理を行い、位置合わせされた連写画像を画像メモリ21に供給して記録させる。このようにして位置合わせが行なわれた連写画像は、画像メモリ21に一時的に記録された後、セグメント計算部23乃至ループ動画像計算部25に供給される。
【0093】
セグメント計算部23は、画像メモリ21から供給された連写画像を複数のセグメントに分割し、連写画像上における各セグメントの位置を特定するセグメントマップを生成する。セグメント計算部23は、生成したセグメントマップを、三次元NR部24乃至セグメント結合処理部26に供給する。
【0094】
三次元NR部24は、画像メモリ21からの連写画像と、セグメント計算部23からのセグメントマップとに基づいて、連写画像上の各静止セグメントについてセグメント画像を生成し、セグメント結合処理部26に供給する。
【0095】
ループ動画像計算部25は、画像メモリ21からの連写画像と、セグメント計算部23からのセグメントマップとに基づいて、連写画像上の各動きセグメントについて、セグメント画像またはセグメントループ動画像を生成し、セグメント結合処理部26に供給する。
【0096】
セグメント結合処理部26は、セグメント計算部23からのセグメントマップに基づいて、三次元NR部24およびループ動画像計算部25から供給された各セグメントのセグメント画像とセグメントループ動画像を結合し、ループ動画像を生成する。セグメント結合処理部26は、生成したループ動画像を画像メモリ21に供給して記録させる。
【0097】
[ループ動画像生成処理の説明]
ところで、画像処理装置11に連写画像が供給され、ループ動画像の生成が指示されると、画像処理装置11はループ動画像生成処理を行って、ループ動画像を生成し、出力する。以下、図5のフローチャートを参照して、画像処理装置11によるループ動画像生成処理について説明する。
【0098】
ステップS11において、画像メモリ21は、外部から送信されてきた複数の連写画像を受信して、一時的に記録する。
【0099】
ステップS12において、位置合わせ部22は、画像メモリ21から連写画像を読み出して位置合わせ処理を行い、位置合わせされた連写画像を画像メモリ21に供給して記録させる。
【0100】
例えば、位置合わせ処理として、上述した射影変換が行なわれる。すなわち、位置合わせ部22は、各連写画像から特徴点を抽出するとともに、複数の連写画像の何れかを基準画像とし、他の連写画像を処理対象画像として、処理対象画像ごとにRANSAC法などにより射影変換行列を求める。そして、位置合わせ部22は、求めた射影変換行列により、連写画像上の同じ被写体が重なるように処理対象画像を射影変換することで、連写画像の位置合わせを行なう。このとき、必要に応じて射影変換された連写画像に対してクロップ処理が行われる。
【0101】
このようにして位置合わせが行なわれた連写画像は、画像メモリ21に記録された後、セグメント計算部23乃至ループ動画像計算部25に供給される。
【0102】
ステップS13において、セグメント計算部23は、画像メモリ21から供給された連写画像に対してセグメンテーションを行い、連写画像をいくつかのセグメントに分割する。そして、セグメント計算部23は、セグメンテーションにより得られたセグメントマップを、三次元NR部24乃至セグメント結合処理部26に供給する。
【0103】
例えば、セグメント計算部23は、複数の連写画像の同じ位置にある画素について、それらの画素の輝度値の分散値を求める。そして、セグメント計算部23は、求められた分散値と所定の閾値τとを比較して、分散値が閾値τ以上である場合、その分散値を求めた画素を、動きのある画素とする。つまり、動きのある被写体が表示される動き画素とされる。逆に、セグメント計算部23は、分散値が閾値τ未満である場合、その分散値を求めた画素を、動きのない静止画素とする。
【0104】
連写画像上の所定の画素に、動きのない静止した被写体が継続して表示される場合、その画素の輝度値の時間方向の変化は少ないはずである。つまり、各時刻の連写画像における同じ画素の輝度値は、ばらつきが少なく殆ど同じ値となるため、それらの画素の輝度値の分散値は小さくなるはずである。そこで、セグメント計算部23は、任意のスカラ値を閾値τとして、連写画像上の画素のうち、輝度値の分散値が閾値τ未満である画素を、静止画素とし、分散値が閾値τ以上である画素を、動き画素とする。
【0105】
セグメント計算部23は、連写画像上の各画素について、動き画素か、静止画素かを特定すると、その特定結果に基づいて、動きのある被写体の領域を示すビットマップ画像を生成する。ここで、ビットマップ画像の画素の画素値は、その画素と同じ位置にある連写画像の画素が動き画素である場合に「1」とされ、その画素と同じ位置にある連写画像の画素が静止画素である場合に「0」とされる。
【0106】
したがって、ビットマップ画像上において、画素値が「1」である画素からなる領域、つまり互いに隣接する画素の画素値が「1」である領域は、その領域と同じ位置にある連写画像の領域が、動きのある被写体が表示される領域であることを示している。以下、ビットマップ画像上において、画素値が「1」である画素からなる領域を動き領域とも称し、画素値が「0」である画素からなる領域を静止領域とも称することとする。
【0107】
ビットマップ画像の生成にあたり、連写画像の各画素の輝度値の分散値を単純に閾値処理すると、ビットマップ画像上に面積の小さい動き領域や静止領域がノイズのように散在してしまうことになる。
【0108】
そこで、セグメント計算部23は、ビットマップ画像上の面積の小さい動き領域や静止領域を孤立点として、ビットマップ画像に対して、モルフォロジカルフィルタ等の孤立点除去フィルタを用いたフィルタ処理を施し、ビットマップ画像上の画素を連結処理する。つまり、ビットマップ画像上から孤立点が除去される。
【0109】
孤立点除去フィルタを用いたフィルタ処理では、ビットマップ画像の動き領域や静止領域に対する膨張,収縮処理が行われる。例えば、ビットマップ画像上の動き領域が外側に1画素分だけ広げられたり、1画素分だけ内側に狭められたりする。これにより、動き領域や静止領域といった図形に空いた微小な穴や突起部分が除去され、安定したセグメンテーションが可能となる。なお、動き領域や静止領域に対して、何画素分の膨張,収縮処理をどのような順番で行うかは、任意に定めることができる。
【0110】
セグメント計算部23は、ビットマップ画像にフィルタ処理を施すと、ビットマップ画像上の画素値が「1」からなる動き領域を動きセグメントとし、画素値が「0」からなる静止領域を静止セグメントとする。したがって、1つのセグメントを構成する画素は、空間方向に連続して並ぶ同じ画素値を有する画素となる。
【0111】
また、セグメント計算部23は、ビットマップ画像上の各セグメントに対して、セグメントを特定するラベル(ID)を付与し、各セグメントにラベルが付与されたビットマップ画像を、セグメントマップとする。これにより、例えば、図3のセグメントSG1乃至セグメントSG4のそれぞれに対してラベルが付与される。
【0112】
なお、セグメント計算部23によりセグメンテーションが行なわれるのではなく、インタラクティブなツールが利用されて、ユーザにより手動で連写画像のセグメントが指定されるようにしてもよい。また、他のプログラムで生成されたセグメントマップが供給されるようにしてもよい。
【0113】
セグメントマップが生成されると、セグメントマップが三次元NR部24乃至セグメント結合処理部26に供給され、処理はステップS13からステップS14へと進む。
【0114】
ステップS14において、三次元NR部24は、画像メモリ21からの連写画像と、セグメント計算部23からのセグメントマップとに基づいて、連写画像上の各静止セグメントに対する三次元NR処理を行い、セグメント画像を生成する。
【0115】
例えば、三次元NR部24は、セグメントマップから、連写画像上の各静止セグメントの領域を特定する。そして、三次元NR部24は、いくつかの連写画像の静止セグメントの領域の画像の平均画像を生成し、得られた平均画像をセグメント画像とする。すなわち、いくつかの連写画像の静止セグメント内の同じ位置にある画素の画素値の平均値が、その画素と同じ位置にあるセグメント画像の画素の画素値とされる。三次元NR部24は、生成した各静止セグメントのセグメント画像を、セグメント結合処理部26に供給する。
【0116】
なお、複数の連写画像のうち、どの連写画像を三次元NR処理に用いるかは、どのようにして定めてもよい。例えば、静止セグメント全体で輝度変化の少ない、連続する所定数のフレームが選択されて、それらの選択されたフレームの連写画像からセグメント画像が生成されるようにしてもよい。また、全てのフレームの連写画像が用いられてセグメント画像が生成されてもよい。
【0117】
このように、連写画像の静止セグメントの領域を時間方向に重ね合わせることで、連写画像からノイズを除去し、高品位なセグメント画像を得ることができる。
【0118】
一般的な連写画像では、被写体が静止しているように見えても、かすかな動きが残ることが普通であり、このような領域についてループ動画像を生成しても、そのループ動画像の再生時に、わずかな被写体の動きやノイズが知覚されてしまう。
【0119】
そこで、静止セグメントでは、セグメントの領域をループ動画像化せずに、三次元NR処理によりセグメント画像を生成し、ループ動画像の再生時に、継続して同じセグメント画像を表示し続けることで、高品位なループ動画像を提示することができる。これにより、ループ動画像の再生時に、静止セグメントの領域において、ノイズを低減させ、被写体の動きを完全に静止させることができるようになり、静止画像の一部が動いているように見せる演出効果を強調することができる。
【0120】
ステップS15において、ループ動画像計算部25は、セグメント計算部23からのセグメントマップと、画像メモリ21からの連写画像とに基づいて、動きセグメントごとに積算SAD値を算出する。
【0121】
例えば、ループ動画像計算部25は、複数の連写画像のフレームのうち、最短周期長Lminに示されるフレーム数以上離れた任意の2つのフレームを処理対象のフレームとして選択する。そして、ループ動画像計算部25は、選択された処理対象のフレームを中心とする、積算タップ長Lsadに示される数の連続するフレームの区間について、図2を参照して説明した計算を行い、積算SAD値を求める。なお、積算SAD値の算出時においては、連写画像上の処理対象となっているセグメントの領域内の画素のみが用いられて、差分絶対値和が算出される。
【0122】
ループ動画像計算部25は、処理対象とするフレームのペアを変化させながら、各フレームのペアについて積算SAD値を算出し、算出された積算SAD値が最小となるフレームのペアを、セグメントループ動画像の開始端および終了端のフレームの候補とする。
【0123】
このようにして、各動きセグメントの積算SAD値が算出されると、ループ動画像計算部25は、それらの動きセグメントのうち、積算SAD値が最小値となる動きセグメントを選択する。そして、ループ動画像計算部25は、選択された動きセグメントの積算SAD値算出時に処理対象とされたフレームのペア間のフレーム数を、これから得ようとするループ動画像の全体の周期(以下、繰り返し周期と称する)とする。つまり、繰り返し周期とされたフレーム数が、ループ動画像を構成する全フレームの数である。
【0124】
また、選択された動きセグメントについてのフレームのペアが、その動きセグメントのセグメントループ動画像における開始端および終了端とされる。
【0125】
さらに、ループ動画像計算部25は、ループ動画像の繰り返し周期の長さが求まると、選択された動きセグメント以外の他の動きセグメントについて、積算SAD値を再度計算する。すなわち、各動きセグメントについて、積算SAD値が最小となる、繰り返し周期の長さだけ離れているフレームのペアが検出され、検出されたフレームのペアが、セグメントループ動画像の開始端および終了端のフレームとされる。
【0126】
このように、各動きセグメントについて、同じフレーム数だけ離れたフレームのペアを、セグメントループ動画像の開始端および終了端とすることで、各セグメントループ動画像の全体の周期を同じ長さにすることができる。しかも、セグメントループ動画像の開始端と終了端を、各動きセグメントで異なるフレーム(タイミング)とすることができるので、動きセグメントごとに終了端から開始端への遷移時に、視覚的な変化が最も小さいフレームを開始端および終了端とすることができる。これにより、より高品位なセグメントループ動画像を得ることができる。
【0127】
なお、各セグメントループ動画像の周期が異なっている場合でも、それらのセグメントループ動画像を、1つのループ動画像として同時に再生できる装置にループ動画像が出力されるときには、積算SAD値の再計算は行なわれない。このような場合には、ループ動画像を再生する装置には、セグメント画像と、周期の異なる複数のセグメントループ動画像とを結合しながら提示する機能が必要となる。
【0128】
また、セグメントごとに異なる周期のセグメントループ動画像が生成され、それらの周期の異なるセグメントループ動画像からループ動画像が生成される場合、各セグメントループ動画像の周期を合わせるように再生速度が調整されてからループ動画像が出力されてもよい。そのような場合、例えば、セグメントごとの周期のうち最長の周期を全体の基準周期とし、それよりも短い周期を持つセグメントループ動画像について再生速度調整を行って、基準周期と一致するようにすればよい。
【0129】
再生速度の調整は、単純に周期の短いセグメントループ動画像のうちいくつかのフレーム画像については複数回連続して表示するようにして調整してもよい。より厳密な結果を得るには新たに追加したい時間位置のフレーム画像を、その時間位置の前後に存在する2つのフレーム画像を使って、滑らかに動きが連結できるように生成すればよい。
【0130】
以上のように、ループ動画像として、少なくとも以下の3つの場合が考えられる。すなわち、全てのセグメントループ動画像の周期が同じとなるように、ループ動画像を生成する場合、いくつかのセグメントループ動画像の周期が異なるループ動画像を生成する場合、およびいくつかの周期の異なるセグメントループ動画像から、再生速度の調整により、全体として1つの周期をもつループ動画像を生成する場合が考えられる。
【0131】
ここで、セグメントループ動画像の周期が異なるループ動画像が生成された場合には、ループ動画像の再生側において、異なる周期のセグメントループ動画像を同時に再生する機能が必要となる。また、再生速度の調整を行なう場合には、上述したように、フレーム画像の挿入等により各セグメントループ動画像の周期調整が行なわれる。
【0132】
各動きセグメントの積算SAD値と、セグメントループ動画像の開始端および終了端となるフレームペアが求められると、処理はステップS15からステップS16に進む。
【0133】
ステップS16において、ループ動画像計算部25は、セグメントマップに基づいて、1または複数の動きセグメントのなかから、1つの動きセグメントを処理対象の動きセグメントとして選択する。
【0134】
ステップS17において、ループ動画像計算部25は、処理対象の動きセグメントは、ループ動画像化が可能であるか否かを判定する。例えば、処理対象の動きセグメントの積算SAD値が、所定の閾値以下である場合、ループ動画像化が可能であると判定される。
【0135】
ステップS17において、ループ動画像化が可能であると判定された場合、ステップS18において、ループ動画像計算部25は、連写画像に基づいて、処理対象の動きセグメントのセグメントループ動画像を生成する。
【0136】
例えば、ループ動画像計算部25は、動きセグメントの積算SAD値の算出時に処理対象とされた2つのフレームを、それぞれ開始端および終了端とする区間について、その区間の各フレームの連写画像から、動きセグメントの領域の画像を切り出す。そして、ループ動画像計算部25は、切り出した画像に対して、上述したクロスフェード処理を施すことで、セグメントループ動画像を生成し、セグメント結合処理部26に供給する。
【0137】
このようにして生成されたセグメントループ動画像は、複数の連続するフレームの連写画像上の動きセグメントの画像のうち、類似度が高い2つの画像の間にある画像が順番に繰り返し表示される動画像となる。
【0138】
このようにクロスフェード処理を行ってセグメントループ動画像を生成すれば、セグメントループ動画像の終了端から開始端への遷移時における継ぎ目の顕在化を軽減させることができる。しかしながら、クロスフェード処理では、連写画像(動きセグメントの画像)の絵柄の異なる部分では、半透明に複数の連写画像の被写体が混ざり合ってしまうため、継ぎ目が目立ってしまう場合がある。
【0139】
そこで、異なるフレームの連写画像をより高品位にブレンドするために、画素単位で最適な遷移タイミングが求められるグラフカット法により、セグメントループ動画像が生成されるようにしてもよい。
【0140】
2つの画像の一部を重ね合わせて繋ぎ合わせる場合、グラフカット法では、重ね合わされた2つの画像の重複部分について、それらの2つの画像のうちの何れの画像の画素を採用すれば、画像の繋ぎ合わせによる視覚的な不連続性が小さくなるかが求められる。つまり、各画像における画素値の連続性と、2つの画像間における画素値の連続性とが考慮されて、最適な継ぎ目が算出され、その継ぎ目で2つの画像が接続される。
【0141】
これに対して、複数フレームの画像の全ての領域が重なるように、それらの複数の画像を重ね合わせてグラフカット法により繋ぎ合わせる場合、基本的には2つの画像の一部を重ね合わせる場合と同様の処理が行われる。この場合、複数の画像を繋ぎ合わせる継ぎ目は、線ではなく面となる。すなわち、各画像における画素値の連続性と、複数の画像間における画素値の連続性とが考慮されて、各画像の同じ位置にある画素のうちの1つの画素が、画像の継ぎ目となる面上の画素とされる。
【0142】
したがって、連続するフレームの動きセグメントの画像からなる区間について、グラフカット法によりセグメントループ動画像を生成する場合、その区間の開始端近傍のフレームの画像と、終了端近傍のフレームの画像とに基づいて、画像のブレンドが行なわれる。すなわち、処理対象となっている区間の開始端近傍のいくつかのフレームと、その区間の終了端近傍のいくつかのフレームとからなる区間をブレンド区間と呼ぶこととする。
【0143】
この場合、ブレンド区間に含まれる各フレームの動きセグメントの画像に基づいて、3次元の継ぎ目の面が求められ、その面に基づいて動きセグメントの画像がブレンド処理され、新たな動きセグメントの画像が生成される。そして、このようにして生成された新たな動きセグメントの画像が、処理対象の区間の開始端または終了端のフレームの動きセグメントの画像とされる。
【0144】
なお、グラフカット法による画像のブレンドについては、例えば「Vivek Kwatra , Arno Schodl , Irfan Essa , Greg Turk and AaronBobick, "Graphcut Textures: Image and Video Synthesis Using Graph Cuts" Toappear in Proc. ACM Transactions on Graphics, SIGGRAPH 2003」などに詳細に記載されている。
【0145】
また、セグメントループ動画像の生成時に、いくつかの連写画像における動きセグメントの領域の画像をブレンドする方法として、クロスフェードやグラフカット法の他、ランダムディゾルブなどが用いられてもよい。
【0146】
ステップS18の処理が行われて、セグメントループ動画像が生成されると、その後、処理はステップS20へと進む。
【0147】
また、ステップS17において、処理対象の動きセグメントのループ動画像化が可能でないと判定された場合、ステップS19において、ループ動画像計算部25は、連写画像に基づいて、処理対象の動きセグメントのセグメント画像を生成する。
【0148】
例えばループ動画像計算部25は、所定のフレームの連写画像における処理対象の動きセグメントの領域の画像を切り出して、切り出した画像をそのままセグメント画像とする。
【0149】
動きセグメントについて求めた積算SAD値が大きい場合、その動きセグメントの領域の画像群を、小さい視覚的差異で繰り返し再生することは困難である。そのため、そのような動きセグメントについては、ループ動画像の再生時に静止画像であるセグメント画像が継続して提示され、ループ動画像が視覚的に不連続となってしまうことが防止される。
【0150】
なお、セグメント画像が切り出される連写画像のフレームは、連写画像の先頭のフレームや、中間の位置にあるフレームなど、どのようなフレームであってもよい。
【0151】
また、このような動きセグメントのセグメント画像を生成するときに、三次元NR処理を行うことも考えられる。しかしながら、動きセグメントでは、被写体の動きが大きいため、前後のフレームで画像の内容(絵柄)が大きく異なり、ノイズ成分を正しく抽出することが困難である。したがって、動きセグメントに対しては、三次元NR処理が行われないようにすることが好ましい。
【0152】
このようにして、動きセグメントのセグメント画像が生成されると、ループ動画像計算部25は、生成したセグメント画像をセグメント結合処理部26に供給し、処理はステップS20に進む。
【0153】
ステップS18においてセグメントループ動画像が生成されたか、またはステップS19において、セグメント画像が生成されると、ステップS20において、ループ動画像計算部25は、全ての動きセグメントを処理したか否かを判定する。
【0154】
ステップS20において、まだ全ての動きセグメントを処理対象として処理していないと判定された場合、処理はステップS16に戻り、上述した処理が繰り返される。
【0155】
一方、ステップS20において、全ての動きセグメントを処理したと判定された場合、処理はステップS21に進む。
【0156】
ステップS21において、セグメント結合処理部26は、セグメント計算部23から供給されたセグメントマップに基づいて、セグメント結合処理を行い、ループ動画像を生成する。すなわち、セグメント結合処理部26は、三次元NR部24およびループ動画像計算部25から供給されたセグメント画像およびセグメントループ動画像を結合し、1つのループ動画像を生成する。
【0157】
例えば、図3を参照して説明したように、各セグメントのセグメント画像、およびセグメントループ動画像の対応するフレームの画像が複製されて、それらのセグメントと同じ位置に配置されて結合され、ループ動画像の1フレーム分の画像とされる。
【0158】
セグメント結合処理部26は、ループ動画像を生成すると、生成したループ動画像を画像メモリ21に供給して記録させ、ループ動画像生成処理は終了する。このようにして画像メモリ21に記録されたループ動画像は、その後、図示せぬ表示部等に供給される。
【0159】
なお、以上においては、ループ動画像が生成されて出力されると説明したが、各セグメントの画像が結合されずに個別に画像メモリ21に記録され、出力されるようにしてもよい。そのような場合、セグメント結合処理部26は、各セグメントのセグメント画像およびセグメントループ動画像を結合せずに、そのまま画像メモリ21に記録させる。
【0160】
この場合、各セグメントのセグメントループ動画像の周期は、必ずしも同じである必要はなく、各セグメントループ動画像の周期が異なる場合には、上述したように、ステップS15において積算SAD値の再計算は行なわれない。
【0161】
このように、各セグメントのセグメント画像とセグメントループ動画像が対応付けられて画像メモリ21に記録される場合、例えば、後段の装置では、これらのセグメント画像とセグメントループ動画像が結合されながら、ループ動画像として再生される。また、各セグメントループ動画像が個別に1つの動画像として再生されるようにしてもよい。
【0162】
さらに、以上においては、動きセグメントのセグメントループ動画像が生成されると説明したが、ループ動画像を再生するための動きセグメントの画像は、ループ動画像として再生可能な画像であれば、どのような形式の画像であってもよい。例えば、連続する複数フレームの連写画像上における動きセグメントの領域の画像が切り出され、それらの動きセグメントの画像からなる画像群が、ループ動画像を再生するための動きセグメントの画像として出力されてもよい。この場合、動きセグメントの画像群を構成する各画像を順番に繰り返し表示すれば、それらの画像群を、1つのループ動画像として再生可能である。
【0163】
以上のようにして、画像処理装置11は、連写画像をいくつかのセグメントに分割し、セグメントごとにセグメント画像またはセグメントループ動画像を生成する。そして、画像処理装置11は、これらのセグメント画像とセグメントループ動画像を結合して、1つのループ動画像を生成する。
【0164】
このように、セグメントごとにセグメント画像またはセグメントループ動画像を生成することで、連写画像に複雑な動きをする被写体が複数含まれている場合でも、セグメントごとに、そのセグメントに適した高品位な画像を生成することができる。これにより、より簡単に高品位なループ動画像を得ることができる。
【0165】
例えばセグメント分割を行なわずにループ動画像を生成する場合、連写画像に単一の動きではなく、複数の異なる動きの被写体が含まれていると、各被写体の動きを勘案した折衷案的なループ動画像が生成されてしまい、望ましいループ動画像を得ることができない。
【0166】
これに対して、連写画像上の輝度変化や被写体の動きに応じて連写画像をセグメントに分割し、処理が施される単位を小分けにすることで、結果として最終的に得られるループ動画像の品質を向上させることができる。例えば、セグメントごとに、セグメントループ動画像の最適な遷移タイミングを設定したり、各セグメントループ動画像に異なる繰り返し周期を与えたりすることができる。また、静止セグメントについては、処理を間引くことができるだけでなく、三次元NR処理により、高画質なセグメント画像を得ることができる。
【0167】
〈変形例1〉
[画像処理装置の構成例]
なお、以上においては、生成されたループ動画像が画像処理装置11から出力されると説明したが、ループ動画像が画像処理装置11において再生されるようにしてもよい。
【0168】
そのような場合、画像処理装置11は、例えば、図6に示すように構成される。なお、図6において、図4における場合と対応する部分には同一の符号を付してあり、その説明は適宜省略する。
【0169】
図6の画像処理装置11は、図4の画像処理装置11の構成に、さらに表示制御部51および表示部52が設けられている点で図4の画像処理装置11と異なり、他の構成は同じとなっている。
【0170】
表示制御部51は、画像メモリ21からループ動画像を読み出して、表示部52に供給し、ループ動画像を表示させる。表示部52は、表示制御部51の制御にしたがって、表示制御部51から供給されたループ動画像を表示する。
【0171】
〈第2の実施の形態〉
[撮影装置の構成例]
また、以上においては連写画像が入力されるとループ動画像が生成される例について説明したが、連写画像が入力されると、その連写画像を素材として高品位なループ動画像の生成が可能か否かが判定され、必要に応じてその判定結果が表示されるようにしてもよい。
【0172】
例えば、ユーザがカメラを被写体に向けて構えている段階で得られるプレビュー画像が連写画像とされ、シャッタ押下により撮影される画像が高解像度静止画像とされるものとする。この場合、連写画像から高品位なループ動画像が生成できないと判定されたときには、その旨のエラー通知が表示される。
【0173】
また、連写画像から高品位なループ動画像が生成できると判定されたときには、シャッタが押下されると、高解像度静止画像が撮影されるとともに、ループ動画像が生成される。これにより、一度のシャッタ操作で、ループ動画像の撮影ができるだけでなく、プレビュー段階で、ループ動画像が生成可能かをユーザに通知することができる。
【0174】
このような場合、撮影装置は、例えば図7に示すように構成される。
【0175】
撮影装置81は、例えばカメラなどかならなり、ユーザの操作に応じて静止画像や動画像を撮影する。撮影装置81では、CPU(Central Processing Unit)91、メモリ92、撮像素子93、ディスプレイコントローラ94、入力インターフェース95、外部機器インターフェース96、およびDSP(Digital Signal Processor)97がバス98を介して相互に接続されている。
【0176】
CPU91は、ユーザの操作に応じて、撮影装置81全体の動作を制御する。例えば、モードダイアル99が操作され、撮影モードが指定されると、モードダイアル99に対する操作に応じた信号が、モードダイアル99から入力インターフェース95を介してCPU91に供給される。すると、CPU91は、モードダイアル99からの信号に応じた撮影モードで、撮影処理を制御する。
【0177】
例えば、撮影モードとして、高解像度静止画像を撮影する通常撮影モードと、ループ動画像を撮影するループ動画像撮影モードとが選択可能とされる。
【0178】
また、シャッタ100が操作されると、CPU91は、入力インターフェース95を介してシャッタ100から供給された信号に応じて、撮像素子93に画像を撮影させる。撮像素子93は、例えばCCD(Charge Coupled Devices)などからなり、レンズ101を介して被写体から入射してきた光を受光して光電変換することで、画像を撮影する。撮像素子93により撮影された画像は、メモリ92に供給されて一時的に保持された後、必要に応じてDSP97により画像処理が施され、外部機器インターフェース96を介して記録部102に供給されたり、ディスプレイコントローラ94を介して表示部103に供給されたりする。
【0179】
記録部102は、外部機器インターフェース96から供給された画像等のデータを記録する。表示部103は、ディスプレイコントローラ94から供給された画像を表示する。
【0180】
[画像処理部の機能的構成例]
次に、図7のCPU91およびDSP97がプログラムを実行することで実現される画像処理部の構成例について説明する。図8は、画像処理部の機能的な構成例を示す図である。なお、図8において、図4における場合と対応する部分には同一の符号を付してあり、その説明は適宜省略する。
【0181】
画像処理部131は、画像メモリ21、位置合わせ部22、セグメント計算部23、ループ動画像計算部25、セグメント結合処理部26、およびエラー通知部141から構成される。
【0182】
画像メモリ21には、撮影装置81によりプレビュー画像として撮影された、低解像度の連写画像と、撮影装置81により撮影された高解像度の高解像度静止画像とが記録される。また、画像メモリ21には、セグメント結合処理部26により生成されたループ動画像も記録される。
【0183】
セグメント結合処理部26は、セグメント計算部23からのセグメントマップに基づいて、ループ動画像計算部25からのセグメントループ動画像およびセグメント画像と、画像メモリ21からの高解像度静止画像とから、ループ動画像を生成する。
【0184】
エラー通知部141は、ループ動画像計算部25から供給された連写画像の各動きセグメントの積算SAD値に基づいて、連写画像のループ動画像化が可能か否かを判定し、その判定結果を出力する。
【0185】
[撮影処理の説明]
次に、撮影装置81により行なわれる撮影処理について説明する。ユーザにより撮影装置81が操作され、画像の撮影開始が指示されると、撮影装置81は撮影処理を開始して、ユーザの操作に応じて画像を撮影する。以下、図9のフローチャートを参照して、撮影装置81による撮影処理について説明する。
【0186】
ステップS51において、CPU91は、モードダイアル99から供給される信号に基づいて、通常撮影モードが選択されているか否かを判定する。
【0187】
ステップS51において通常撮影モードが選択されていると判定された場合、ステップS52において、撮影装置81は、ユーザによるシャッタ100の操作に応じて、高解像度静止画像を撮影し、撮影処理は終了する。
【0188】
すなわち、撮像素子93は、レンズ101から入射した光を光電変換して高解像度静止画像を撮影し、メモリ92に記録させる。メモリ92に記録された高解像度静止画像は、必要に応じてDSP97により処理されて、記録部102に供給され、記録される。
【0189】
これに対して、ステップS51において、通常撮影モードが選択されていないと判定された場合、つまりループ動画像撮影モードが選択されている場合、処理はステップS53に進む。
【0190】
ステップS53において、撮影装置81はループ動画像生成処理を行なって、撮影処理は終了する。なお。ループ動画像生成処理では、ループ動画像の撮影が行なわれる。
【0191】
[ループ動画像生成処理の説明]
次に、図10のフローチャートを参照して、図9のステップS53の処理に対応するループ動画像生成処理について説明する。
【0192】
ステップS81において、撮影装置81は、プレビュー撮影を開始する。すなわち、撮像素子93は、CPU91の指示にしたがって、レンズ101から入射した光を光電変換し、その結果得られた連写画像を表示部103および画像メモリ21に供給する。撮像素子93では、所定の時間間隔で各フレームの連写画像が撮影されていく。
【0193】
画像メモリ21は、撮像素子93から供給された連写画像を一時的に記録する。また、表示部103は、ディスプレイコントローラ94を介して撮像素子93から供給された連写画像を表示する。これにより、ユーザは、表示部103に表示されたプレビュー画像としての連写画像を見ながら、これから撮影しようとするループ動画像の画角や構図を決めることができる。
【0194】
ステップS82において、位置合わせ部22は、画像メモリ21から連写画像を読み出して位置合わせ処理を行い、位置合わせされた連写画像を画像メモリ21に供給して記録させる。ステップS82では、図5のステップS12と同様の処理が行なわれる。
【0195】
すなわち、例えば、RANSAC法などにより射影変換行列が求められ、求められた射影変換行列により処理対象画像とされた連写画像が射影変換されて、連写画像の位置合わせが行なわれる。このようにして位置合わせが行なわれた連写画像は、画像メモリ21に記録された後、セグメント計算部23およびループ動画像計算部25に供給される。
【0196】
ステップS83において、セグメント計算部23は、画像メモリ21から供給された連写画像に対してセグメンテーションを行い、連写画像をいくつかのセグメントに分割する。そして、セグメント計算部23は、セグメンテーションにより得られたセグメントマップを、ループ動画像計算部25に供給する。
【0197】
ステップS84において、ループ動画像計算部25は、画像メモリ21からの連写画像と、セグメント計算部23からのセグメントマップとに基づいて、動きセグメントごとに積算SAD値を算出する。
【0198】
例えば、ループ動画像計算部25は、複数の連写画像のフレームのうち、最短周期長Lminに示されるフレーム数以上離れた任意の2つのフレームを、処理対象のフレームとする。そして、ループ動画像計算部25は、処理対象のフレームを中心とする、積算タップ長Lsadに示される数の連続するフレームの区間について、積算SAD値を求める。なお、積算SAD値の算出時においては、連写画像上の処理対象となっている動きセグメントの領域内の画素のみが用いられて、差分絶対値和が算出される。
【0199】
ループ動画像計算部25は、処理対象とするフレームのペアを変化させながら、各フレームのペアについて積算SAD値を算出し、算出された積算SAD値の最小値を、処理対象となっている動きセグメントの積算SAD値とする。ループ動画像計算部25は、このようにして求めた各動きセグメントの積算SAD値を、エラー通知部141に供給する。
【0200】
ステップS85において、エラー通知部141は、ループ動画像計算部25から供給された各動きセグメントの積算SAD値に基づいて、連写画像のループ動画像化が可能であるか否かを判定する。例えば、エラー通知部141は、各動きセグメントの積算SAD値のうちの最も小さい積算SAD値が、予め定められた所定の閾値以下である場合、ループ動画像化が可能であると判定する。
【0201】
ステップS85において、ループ動画像化が可能でないと判定された場合、ステップS86において、エラー通知部141は、エラー通知を行なう。例えば、エラー通知部141は、連写画像のループ動画像化ができない旨の情報、つまりループ動画像が撮影できない旨の情報を生成し、生成した情報を表示部103に供給して表示させる。
【0202】
これにより、ユーザは、連写画像として撮影された被写体が、ループ動画像の撮影には適していないことを知ることができる。したがって、ユーザは、被写体を変えたり、画角を変えたりして所望のループ動画像が撮影できるように対応することができる。
【0203】
エラー通知が行なわれると、その後、処理はステップS86からステップS82に戻り、上述した処理が繰り返される。すなわち、新たに撮影された複数フレームの連写画像に基づいて、その連写画像のループ動画像化が可能であるかが判定される。
【0204】
なお、ユーザへのエラー通知は、文字メッセージや図形を表示部103に表示させることで行なわれてもよいし、音声により行なわれるようにしてもよい。
【0205】
また、ステップS85において、ループ動画像化が可能であると判定された場合、ステップS87において、撮像素子93は、高解像度静止画像を撮影する。すなわち、ユーザによりシャッタ100が押下されると、CPU91は撮像素子93に対して、高解像度静止画像の撮影を指示する。
【0206】
撮像素子93は、CPU91の指示に応じて、レンズ101から入射した光を光電変換し、その結果得られた高解像度静止画像を画像メモリ21に供給する。ここで、高解像度静止画像は、連写画像よりも解像度が高い、つまり画素数の多い静止画像である。
【0207】
なお、ステップS85において、ループ動画像化が可能であると判定された場合に、エラー通知部141が、表示部103にループ動画像の撮影(生成)が可能である旨の表示をさせるようにしてもよい。この表示は、例えば文字メッセージとされてもよいし、特定の図形や記号などとされてもよい。また、ループ動画像の撮影が可能である旨の音声が出力されるようにしてもよい。
【0208】
ステップS88において、位置合わせ部22は、画像メモリ21から高解像度静止画像と連写画像を読み出して、位置合わせ処理を行なう。
【0209】
例えば、位置合わせ部22は、ステップS85でループ動画像化が可能と判定された、複数フレームの位置合わせ前の連写画像と、ステップS87で撮影された高解像度静止画像とを画像メモリ21から読み出す。
【0210】
そして、位置合わせ部22は、連写画像を高解像度静止画像と同じ大きさ(解像度)にアップサンプリングして、高解像度静止画像を基準画像とし、アップサンプリング後の連写画像を処理対象画像として、連写画像の位置合わせを行なう。すなわち、RANSAC法などにより射影変換行列が求められ、連写画像が射影変換行列により射影変換される。
【0211】
このようにして位置合わせが行なわれた連写画像は、画像メモリ21に記録された後、セグメント計算部23およびループ動画像計算部25に供給される。また、画像メモリ21に記録されている高解像度静止画像は、セグメント結合処理部26に供給される。
【0212】
ステップS89において、セグメント計算部23は、画像メモリ21から供給された連写画像に対してセグメンテーションを行い、連写画像をいくつかのセグメントに分割する。そして、セグメント計算部23は、セグメンテーションにより得られたセグメントマップを、ループ動画像計算部25およびセグメント結合処理部26に供給する。
【0213】
ステップS90において、セグメント結合処理部26は、セグメント計算部23からのセグメントマップと、画像メモリ21からの高解像度静止画像とに基づいて、各静止セグメントのセグメント画像を生成する。例えば、セグメント結合処理部26は、高解像度静止画像における静止セグメントの領域の画像を切り出して、切り出した画像をそのまま静止セグメントのセグメント画像とする。
【0214】
ステップS90の処理が行なわれると、その後、ステップS91乃至ステップS96の処理が行なわれるが、これらの処理は図5のステップS15乃至ステップS20の処理と同様であるので、その説明は省略する。ステップS91乃至ステップS96では、各動きセグメントのセグメント画像またはセグメントループ動画像が生成されて、ループ動画像計算部25からセグメント結合処理部26に供給される。
【0215】
但し、ステップS91乃至ステップS96では、高解像度静止画像と同じ解像度に変換(アップサンプリング)された連写画像が用いられて、セグメント画像およびセグメントループ動画像の生成が行なわれる。
【0216】
ステップS96において、全ての動きセグメントを処理したと判定された場合、処理はステップS97に進む。
【0217】
ステップS97において、セグメント結合処理部26は、セグメント計算部23から供給されたセグメントマップに基づいて、セグメント結合処理を行い、ループ動画像を生成する。すなわち、セグメント結合処理部26は、ステップS90の処理で生成したセグメント画像と、ループ動画像計算部25から供給されたセグメント画像およびセグメントループ動画像とを結合し、1つのループ動画像を生成する。
【0218】
例えば、図3を参照して説明したように、各セグメントのセグメント画像、およびセグメントループ動画像の対応するフレームの画像が複製されて、それらのセグメントと同じ位置に配置されて結合され、ループ動画像の1フレーム分の画像とされる。
【0219】
セグメント結合処理部26は、ループ動画像を生成すると、生成したループ動画像を画像メモリ21に供給して記録させる。そして、ループ動画像生成処理は終了し、その後、処理は図9のステップS53に戻り、撮影処理も終了する。
【0220】
このようにして画像メモリ21に記録されたループ動画像は、その後、記録部102に供給されて記録されたり、表示部103に供給されて表示されたりする。なお、各セグメントの画像が結合されずに個別に画像メモリ21に記録され、出力されるようにしてもよい。
【0221】
以上のようにして、撮影装置81は、連写画像が入力された段階で、連写画像がループ動画像化に適しているかを判定し、連写画像がループ動画像化に適していない場合には、ループ動画像化できない旨をユーザに対して提示する。これにより、ユーザは、プレビュー撮影の段階で、ループ動画像の撮影ができないことを知ることができ、直ちに撮影をやり直すことができる。したがって、ユーザは、適切にループ動画像の撮影をすることができ、より簡単に高品位なループ動画像を得ることができるようになる。
【0222】
また、撮影装置81では、セグメントごとにセグメント画像またはセグメントループ動画像が生成されるので、連写画像に複雑な動きをする被写体が複数含まれている場合でも、セグメントごとに、そのセグメントに適した高品位な画像を生成することができる。これにより、より高品位なループ動画像を得ることができる。
【0223】
〈変形例2〉
[画像処理部の構成例]
なお、以上においては、連写画像をセグメントに分割してループ動画像を生成する場合に、連写画像がループ動画像化に適していないとき、その旨をユーザに通知すると説明したが、連写画像がセグメント分割されない場合にも、ユーザに対して、そのような通知がされるようにしてもよい。
【0224】
そのような場合、撮影装置81のCPU91およびDSP97がプログラムを実行することで実現される画像処理部は、例えば図11に示す構成とされる。なお、図11において、図8における場合と対応する部分には同一の符号を付してあり、その説明は適宜省略する。
【0225】
画像処理部171は、画像メモリ21、位置合わせ部22、ループ動画像計算部25、およびエラー通知部141から構成される。
【0226】
画像メモリ21には、撮影装置81により撮影された連写画像と、ループ動画像計算部25により生成されたループ動画像が記録される。ループ動画像計算部25は、画像メモリ21から供給された連写画像に基づいて、ループ動画像を生成する。
【0227】
[ループ動画像生成処理の説明]
次に、図12のフローチャートを参照して、画像処理部が図11に示す構成とされる場合に行なわれる処理について説明する。この場合、撮影装置81により、図9のフローチャートを参照して説明した撮影処理が行なわれる。但し、この場合、ステップS53の処理では、連写画像がセグメント分割されずにループ動画像の生成が行なわれる。
【0228】
以下、図12のフローチャートを参照して、連写画像がセグメント分割されずにループ動画像が生成される場合における、ステップS53の処理に対応するループ動画像生成処理について説明する。
【0229】
ステップS121において、撮影装置81は撮影を開始する。すなわち、撮像素子93は、CPU91の指示にしたがって、レンズ101から入射した光を光電変換し、その結果得られた連写画像を表示部103および画像メモリ21に供給する。撮像素子93では、所定の時間間隔で各フレームの連写画像が撮影されていく。
【0230】
ステップS122において、位置合わせ部22は、画像メモリ21から連写画像を読み出して位置合わせ処理を行い、位置合わせされた連写画像を画像メモリ21に供給して記録させる。ステップS122では、図10のステップS82と同様の処理が行なわれる。位置合わせが行なわれた連写画像は、画像メモリ21に記録された後、ループ動画像計算部25に供給される。
【0231】
ステップS123において、ループ動画像計算部25は、画像メモリ21からの連写画像に基づいて、連写画像の積算SAD値を算出する。
【0232】
例えば、ループ動画像計算部25は、複数の連写画像のフレームのうち、最短周期長Lminに示されるフレーム数以上離れた任意の2つのフレームを処理対象のフレームとする。そして、ループ動画像計算部25は、処理対象のフレームを中心とする、積算タップ長Lsadに示される数の連続するフレームの区間について、積算SAD値を求める。なお、積算SAD値の算出時には、連写画像全体の画素が用いられて、差分絶対値和が算出される。
【0233】
ループ動画像計算部25は、処理対象とするフレームのペアを変化させながら、各フレームのペアについて積算SAD値を算出し、算出された積算SAD値の最小値を、連写画像の積算SAD値とする。ループ動画像計算部25は、このようにして求めた連写画像の積算SAD値を、エラー通知部141に供給する。
【0234】
ステップS124において、エラー通知部141は、ループ動画像計算部25から供給された連写画像の積算SAD値に基づいて、連写画像のループ動画像化が可能であるか否かを判定する。例えば、エラー通知部141は、連写画像の積算SAD値が、予め定められた所定の閾値以下である場合、ループ動画像化が可能であると判定する。
【0235】
ステップS124において、ループ動画像化が可能でないと判定された場合、ステップS125において、エラー通知部141は、エラー通知を行なう。例えば、エラー通知部141は、連写画像のループ動画像化ができない旨の情報を表示部103に供給して表示させる。
【0236】
エラー通知が行なわれると、その後、処理はステップS125からステップS122に戻り、上述した処理が繰り返される。すなわち、新たに撮影された複数フレームの連写画像に基づいて、その連写画像のループ動画像化が可能であるかが判定される。
【0237】
また、ステップS124において、ループ動画像化が可能であると判定された場合、ステップS126において、ループ動画像計算部25は、連写画像に基づいて、連写画像のループ動画像を生成する。
【0238】
例えば、ループ動画像計算部25は、ステップS123の処理で算出した積算SAD値が最小となるときのフレームのペアを処理対象のフレームとして、それらの2つのフレームを、それぞれ開始端および終了端とする区間の連写画像を抽出する。そして、ループ動画像計算部25は、抽出した区間の連写画像に対して、上述したクロスフェード処理、グラフカット法による処理、ランダムディゾルブなどを行なってループ動画像を生成し、画像メモリ21に供給する。
【0239】
このようにして得られたループ動画像は、連写画像がセグメントに分割されずに、連写画像全体がループ化されて得られたループ動画像である。ループ動画像計算部25は、ループ動画像を生成すると、生成したループ動画像を画像メモリ21に供給して記録させる。そしてループ動画像生成処理は終了し、その後、処理は図9のステップS53に戻り、撮影処理も終了する。
【0240】
以上のようにして、撮影装置81は、連写画像がループ動画像化に適していない場合には、ループ動画像化できない旨をユーザに対して提示する。これにより、ユーザは、直ちに撮影をやり直すことができる。したがって、適切にループ動画像の撮影をすることができ、より簡単に高品位なループ動画像を得ることができるようになる。
【0241】
また、図5のフローチャートを参照して説明したように、連写画像のみが用いられて各セグメントのセグメント画像とセグメントループ動画像から、ループ動画像を生成する場合にも、連写画像の撮影時に、連写画像をループ動画像化可能か否か判定してもよい。そのような場合においても、連写画像がループ動画像化可能か否かの判定結果が、適宜出力される。
【0242】
上述した一連の処理は、ハードウェアにより実行することもできるし、ソフトウェアにより実行することもできる。一連の処理をソフトウェアにより実行する場合には、そのソフトウェアを構成するプログラムが、専用のハードウェアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどに、プログラム記録媒体からインストールされる。
【0243】
図13は、上述した一連の処理をプログラムにより実行するコンピュータのハードウェアの構成例を示すブロック図である。
【0244】
コンピュータにおいて、CPU501,ROM(Read Only Memory)502,RAM(Random Access Memory)503は、バス504により相互に接続されている。
【0245】
バス504には、さらに、入出力インターフェース505が接続されている。入出力インターフェース505には、キーボード、マウス、マイクロホンなどよりなる入力部506、ディスプレイ、スピーカなどよりなる出力部507、ハードディスクや不揮発性のメモリなどよりなる記録部508、ネットワークインターフェースなどよりなる通信部509、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリなどのリムーバブルメディア511を駆動するドライブ510が接続されている。
【0246】
以上のように構成されるコンピュータでは、CPU501が、例えば、記録部508に記録されているプログラムを、入出力インターフェース505及びバス504を介して、RAM503にロードして実行することにより、上述した一連の処理が行われる。
【0247】
コンピュータ(CPU501)が実行するプログラムは、例えば、磁気ディスク(フレキシブルディスクを含む)、光ディスク(CD-ROM(Compact Disc-Read Only Memory),DVD(Digital Versatile Disc)等)、光磁気ディスク、もしくは半導体メモリなどよりなるパッケージメディアであるリムーバブルメディア511に記録して、あるいは、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の伝送媒体を介して提供される。
【0248】
そして、プログラムは、リムーバブルメディア511をドライブ510に装着することにより、入出力インターフェース505を介して、記録部508にインストールすることができる。また、プログラムは、有線または無線の伝送媒体を介して、通信部509で受信し、記録部508にインストールすることができる。その他、プログラムは、ROM502や記録部508に、あらかじめインストールしておくことができる。
【0249】
なお、コンピュータが実行するプログラムは、本明細書で説明する順序に沿って時系列に処理が行われるプログラムであっても良いし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで処理が行われるプログラムであっても良い。
【0250】
また、本技術の実施の形態は、上述した実施の形態に限定されるものではなく、本技術の要旨を逸脱しない範囲において種々の変更が可能である。
【符号の説明】
【0251】
11 画像処理装置, 22 位置合わせ部, 23 セグメント計算部, 24 三次元NR部, 25 ループ動画像計算部, 26 セグメント処理結合部, 81 撮影装置, 99 モードダイアル, 141 エラー通知部

【特許請求の範囲】
【請求項1】
異なる時刻に撮影された複数の撮影画像に基づいて、前記撮影画像をいくつかのセグメントに分割するセグメント計算部と、
前記複数の前記撮影画像のうちの連続するいくつかの前記撮影画像から、動きのある被写体が含まれる前記セグメントである動きセグメントの画像を切り出し、前記動きセグメントの画像に基づいて、ループ動画像として再生可能な画像を生成するループ動画像生成部と
を備える画像処理装置。
【請求項2】
前記ループ動画像は、連続する複数の前記動きセグメントの画像のうち、類似度の高い2つの画像の間にある画像が順番に繰り返し表示される動画像である
請求項1に記載の画像処理装置。
【請求項3】
前記複数の前記撮影画像のうちのいくつかの前記撮影画像から、動きのない被写体が含まれる前記セグメントである静止セグメントの画像を切り出して、前記静止セグメントの画像に基づいて、1つの静止画像であるセグメント画像を生成するセグメント画像生成部をさらに備える
請求項1に記載の画像処理装置。
【請求項4】
前記ループ動画像として再生可能な画像と前記セグメント画像とを結合して、1つのループ動画像を生成するセグメント結合処理部をさらに備える
請求項3に記載の画像処理装置。
【請求項5】
前記セグメント画像生成部は、いくつかの前記静止セグメントの画像を重ね合わせることで、前記セグメント画像を生成する
請求項3に記載の画像処理装置。
【請求項6】
前記ループ動画像生成部は、連続する複数の前記動きセグメントの画像のうち、類似度の高い2つの画像がある場合、前記類似度の高い2つの画像を含む、連続する複数の前記動きセグメントの画像に基づいて、前記ループ動画像として再生可能な画像を生成する
請求項1に記載の画像処理装置。
【請求項7】
前記ループ動画像生成部は、連続する複数の前記動きセグメントの画像のうち、類似度の高い2つの画像がない場合、1つの前記動きセグメントの画像に基づいて、1つの静止画像であるセグメント画像を生成する
請求項6に記載の画像処理装置。
【請求項8】
前記撮影画像よりも解像度の高い高解像度画像から、動きのない被写体が含まれる前記セグメントである静止セグメントに対応する領域の画像を切り出し、前記静止セグメントに対応する領域の画像に基づいて、1つの静止画像であるセグメント画像を生成するセグメント画像生成部をさらに備え、
前記ループ動画像生成部は、前記高解像度画像と同じ解像度に変換された前記撮影画像に基づいて、前記ループ動画像として再生可能な画像を生成する
請求項1に記載の画像処理装置。
【請求項9】
撮影モードを切り替えるための操作部をさらに備え、
前記操作部に対する操作により、前記撮影モードとして所定のモードが選択された場合、前記撮影画像および前記高解像度画像が撮影される
請求項8に記載の画像処理装置。
【請求項10】
前記高解像度画像の撮影前に、前記複数の前記撮影画像が撮影され、
前記複数の前記撮影画像における前記動きセグメントの画像のうち、類似度の高い2つの画像があるか否かを判定し、その判定結果を出力する通知部をさらに備える
請求項9に記載の画像処理装置。
【請求項11】
前記類似度の高い2つの画像があると判定された場合、前記高解像度画像が撮影され、前記ループ動画像として再生可能な画像、および前記セグメント画像が生成される
請求項10に記載の画像処理装置。
【請求項12】
異なる時刻に撮影された複数の撮影画像に基づいて、前記撮影画像をいくつかのセグメントに分割するセグメント計算部と、
前記複数の前記撮影画像のうちの連続するいくつかの前記撮影画像から、動きのある被写体が含まれる前記セグメントである動きセグメントの画像を切り出し、前記動きセグメントの画像に基づいて、ループ動画像として再生可能な画像を生成するループ動画像生成部と
を備える画像処理装置の画像処理方法であって、
前記セグメント計算部が、前記撮影画像を前記セグメントに分割し、
前記ループ動画像生成部が、前記ループ動画像として再生可能な画像を生成する
ステップを含む画像処理方法。
【請求項13】
異なる時刻に撮影された複数の撮影画像に基づいて、前記撮影画像をいくつかのセグメントに分割し、
前記複数の前記撮影画像のうちの連続するいくつかの前記撮影画像から、動きのある被写体が含まれる前記セグメントである動きセグメントの画像を切り出し、前記動きセグメントの画像に基づいて、ループ動画像として再生可能な画像を生成する
ステップを含む処理をコンピュータに実行させるプログラム。
【請求項14】
異なる時刻に撮影された複数の撮影画像のなかに類似度の高い2つの前記撮影画像があるか否かを判定し、その判定結果を出力する通知部と、
前記複数の前記撮影画像のうち、類似度の高い2つの前記撮影画像を含む、連続する複数の前記撮影画像に基づいて、ループ動画像として再生可能な画像を生成するループ動画像生成部と
を備える画像処理装置。
【請求項15】
異なる時刻に撮影された複数の撮影画像のなかに類似度の高い2つの前記撮影画像があるか否かを判定し、その判定結果を出力する通知部と、
前記複数の前記撮影画像のうち、類似度の高い2つの前記撮影画像を含む、連続する複数の前記撮影画像に基づいて、ループ動画像として再生可能な画像を生成するループ動画像生成部と
を備える画像処理装置の画像処理方法であって、
前記通知部が、前記判定結果を出力し、
前記ループ動画像生成部が、前記ループ動画像として再生可能な画像を生成する
ステップを含む画像処理方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate


【公開番号】特開2012−199613(P2012−199613A)
【公開日】平成24年10月18日(2012.10.18)
【国際特許分類】
【出願番号】特願2011−60651(P2011−60651)
【出願日】平成23年3月18日(2011.3.18)
【出願人】(000002185)ソニー株式会社 (34,172)
【Fターム(参考)】