説明

映像編集装置およびその制御方法

【課題】 各種カットシーン内の映像の動きを音楽のリズムを合わせる作業を効率よく行う。
【解決手段】 映像信号と音楽信号を編集する映像編集装置であって、音楽信号のリズム点を検出するリズム点検出手段と、前記リズム点検出手段で検出した音楽信号のリズム点に基づいて、映像信号を時間方向に分割した分割領域を作成する分割領域作成手段と、前記分割領域作成手段で作成した分割領域毎に映像の動きを評価し、時間方向の変化において繰り返しの規則性がある部分の分割領域を検出する繰り返し検出手段とを備える。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、音楽のリズムに合うように映像を編集する技術に関するものである。
【背景技術】
【0002】
近年、家庭用デジタルビデオカメラの普及により、簡単にデジタル映像を撮影し、鑑賞することができるようになっている。例えば、撮影された映像に動きが無い部分が多いものを鑑賞する場合には退屈になることもある。そこで、撮影された映像を素材として、種々の映像編集を行うことが有効である。編集方法としては、素材のなかから好みのカットシーンを切り出し、種々の音楽を付与したりすることが知られている。
【0003】
このとき、映像の変化と音楽再生のタイミングを合わせるように編集を行うことが望ましい。この映像の変化にはカットシーンが切り替わるものと、カットシーン内の映像の動きによるものが考えられる。前者を音楽のリズムに合わせるためには、音楽のリズム点とカットシーンの開始時間が一致するようにカットシーンを配置すれば良い。後者を音楽のリズムに合わせるためには、音楽のリズムと映像の動きが合うカットシーンを素材から探し出して配置すれば良い。しかしながら、これら編集は手作業で行われるため編集者にとっては非常に手間がかかる。
【0004】
これに対して、映像の変化と音楽を合わせる作業を容易にする技術(特許文献1)が知られている。特許文献1では、素材映像の映像信号と音楽信号における遷移点を検出し、それぞれの遷移点が一致するように素材映像を切り出す。これにより、カットシーンの切り替わりによる映像の変化と音楽を合わせる作業が自動的に行われる。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開2003−259302号公報
【特許文献2】特公平07−013799号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
特許文献1による方法では、映像中の動きが音楽のリズムに合っているかどうかを判断することまではできず、各種カットシーン内の映像の動きを音楽のリズムを合わせることまではできない。
本発明は、上記従来例に鑑みてなされたものであり、各種カットシーン内の映像の動きを音楽のリズムを合わせる作業を効率よく行うことを主な目的とする。
【課題を解決するための手段】
【0007】
上記課題を解決するために、本発明の映像編集装置によれば、映像信号と音楽信号を編集する映像編集装置であって、音楽信号のリズム点を検出するリズム点検出手段と、前記リズム点検出手段で検出した音楽信号のリズム点に基づいて、映像信号を時間方向に分割した分割領域を作成する分割領域作成手段と、前記分割領域作成手段で作成した分割領域毎に映像の動きを評価し、時間方向の変化において繰り返しの規則性がある部分の分割領域を検出する繰り返し検出手段とを備える。
【発明の効果】
【0008】
本発明によれば、各種カットシーン内の映像の動きを音楽のリズムを合わせる作業を効率よく行うことができる。
【図面の簡単な説明】
【0009】
【図1】実施例におけるシステム構成を示す図
【図2】実施例における映像編集装置のGUIを示す図
【図3】カット作成処理の流れを示すフローチャート
【図4】音楽のリズム点のタイムライン上の配置を示す図
【図5】分割領域の格納例を示す図
【図6】動き周期領域の格納例を示す図
【図7】素材映像の分割領域作成処理の流れを示すフローチャート
【図8】分割領域の動き評価値を取得する処理を示すフローチャート
【図9】動き周期領域検出処理の流れを示すフローチャート
【発明を実施するための形態】
【0010】
以下、図面を用いて本発明を具体的に説明する。
【0011】
<実施例1>
図1は、本実施例を実現する画像処理システム(映像編集装置とも言う)の概略を示した図である。CPU101は、システム全体の動作をコントロールし、一次記憶102に格納されたプログラムの実行などを行う。一次記憶102は、主にメモリであり、二次記憶103に記憶されたプログラムなどを読み込んで格納する。二次記憶103は、例えばハードディスクなどの記録媒体がこれに該当する。一般に一次記憶の容量は二次記憶の容量より小さく、一次記憶に格納しきれないプログラムやデータなどは二次記憶に格納される。また、長時間記憶しなくてはならないデータなども二次記憶に格納される。本実施例では、実施形態の処理手順を実現するようなプログラムは二次記憶103に格納し、プログラム実行時に一次記憶102に読み込んで、CPU101が実行処理を行う。入力デバイス104とは例えば、マウスやキーボードなどがこれに該当する。出力デバイス105とは例えば、モニタやプリンタなどがこれに該当する。読込デバイス106は、公知のCCD素子などで構成されている撮像装置で撮像された映像を直接又は間接的に一次記憶装置や二次記憶装置へ読み込む。
【0012】
図2は、本実施例における映像編集装置のGUIの概要を示す図である。音楽選択画面201には、映像編集で利用可能な音楽の一覧を表示する。素材映像選択画面202には、映像編集で利用可能な素材映像の一覧を表示する。カット選択画面203には、映像編集で利用可能なカットシーンの一覧を表示する。ここで、カットシーンとは、素材映像中の任意の時間範囲を切り出したものであり、以下カットとも呼ぶ。タイムライン編集画面204には、編集後映像のタイムラインを表示する。タイムライン上に音楽やカットを配置し、それぞれの再生開始時間、再生時間を決定することで、映像編集を行う。タイムライン上への音楽の配置は、音楽選択画面201上のアイコンを、タイムライン上の任意の位置へドラッグアンドドロップすることで行う。タイムライン上へのカットの配置は、カット選択画面203上のアイコンを、タイムライン上の任意の位置へドラッグアンドドロップすることで行う。
【0013】
プレビュー画面205には、編集後映像のプレビューを表示する。プレビュー画面205をクリックすることで、タイムライン編集画面204のタイムライン上に配置された音楽,カットを再生する。レンダリングボタン206を押下すると、編集後映像を作成する。編集後映像は、タイムライン編集画面204のタイムライン上に配置された音楽やカットを一連の映像としてまとめたものとなる。編集後映像は、AVIやMPEGやH264など、公知の動画フォーマットのファイルで保存する。カット作成ボタン207は、音楽と素材映像をそれぞれ選択した状態でのみ有効となる。音楽の選択は、音楽選択画面201上のアイコンか、又はタイムライン編集画面204のタイムライン上に配置された音楽を指定することで行う。素材映像の選択は、素材映像選択画面202上のアイコンを指定することで行う。カット作成ボタン207を押下すると、選択された音楽のリズムと映像の動きが合う部分を、選択された素材映像から探し出し、カットを作成する。作成したカットは、カット選択画面203に追加される。カットの作成方法については、図3を用いて後述する。
【0014】
図3は、カット作成ボタン207を押下した際の、音楽のリズムと映像の動きが合う部分を素材映像から探し出してカットを作成する処理の流れを示すフローチャートである。
ステップS301では、選択された音楽のリズム点を検出する。なお、音楽のリズム点検出は、特開2008−275975などに開示されているような公知技術を用いて行う。検出されたリズム点は、図4に示すように、音楽のタイムライン上に等時間間隔に現れる点で表現できる。ステップS302では、素材映像を時間方向に分割する分割間隔を決定する。分割間隔の単位は秒である。分割間隔T(秒)は、ステップS301で検出したリズム点の連続する2点間の時間間隔をTとすると、次の式で求める。
【0015】
=T*n or T=T/n
ここで、nは任意の整数である。分割間隔TはTの整数倍又は整数分の1となる。分割間隔は複数パターンを用意しても良い。本実施例では、n=1であり、分割間隔の数は1つであるとする。なお、nの値をGUI上で設定させるなど、分割間隔決定をユーザが実施可能にしても良い。ステップS303では、繰り返し1を開始する。繰り返し1は、ステップS302で設定した分割間隔の全てのパターンで、ステップS304〜S312の処理を終えるまで続く。ステップS304では、素材映像を分割間隔毎に分割する際の開始点となるフレームを設定する。この分割開始点となるフレームを、分割開始フレームと呼ぶものとする。分割開始フレームの単位はフレームである。素材映像の再生速度がV(フレーム/秒),分割間隔がT(秒)である場合、分割開始フレームF(フレーム)は、0〜(V*T)の範囲で選択して設定する。分割開始フレームは複数パターンを用意しても良い。本実施例では、F=0であり、分割開始フレームの数は1つであるとする。なお、Fの値をGUI上で設定させるなど、分割開始点決定をユーザに実施させても良い。ステップS305では、繰り返し2を開始する。繰り返し2は、ステップS304で設定した分割開始フレームの全てのパターンで、ステップS306〜ステップS311の処理を終えるまで続く。ステップS306では、素材映像を分割開始フレームから分割間隔毎に分割し、素材映像の分割領域を作成する。分割領域の数Nは、素材映像の長さをTALL(秒)とすると、次のようになる。
【0016】
=((V*TALL)−F)/(V*T
分割領域は、素材映像のタイムライン上の数値で、領域の開始フレーム,終了フレームの一覧として格納する。分割領域の格納例を図5に示す。分割領域の作成方法は、図7を用いて後述する。ステップS307では、繰り返し3を開始する。繰り返し3は、ステップS306で作成した0〜N番目の分割領域の全てについて、ステップS308の処理を終えるまで続く。ステップS308では、素材映像の分割領域の映像の動きを評価し、動き評価値を取得する。動き評価値は、図5に示すように、分割領域に対応付けて保存する。動き評価値の取得方法は、図8を用いて後述する。ステップS309では、繰り返し3を終了する。ステップS310では、ステップS308で求めた動き評価値の時間的変化に繰り返しの規則性がある領域を検索する。ここで、素材映像中の、動き評価値の時間的変化に繰り返しの規則性がある領域を、動き周期領域と呼ぶものとする。動き周期領域は、素材映像のタイムライン上の数値で、領域の開始フレーム,終了フレームの一覧として格納する。動き周期領域の格納例を図6に示す。動き周期領域の検索方法は、図9を用いて後述する。ステップS311では、ステップS310で検索した動き周期領域を素材映像から切り出してカットを作成し、カット選択画面203に追加する。ステップS312では、繰り返し2を終了する。ステップS313では、繰り返し1を終了する。
【0017】
図7は、図3のステップS306の、素材映像の分割領域を作成する際の手順を示すフローチャートである。なお、下記で単位に「フレーム」を用いた場合、素材映像のタイムラインにおけるフレームを表すものとする。ステップS701では、変数iに0を代入する。ステップS702では、i番目の分割領域の開始フレームを設定する。分割領域の開始フレームFIN(フレーム)は、素材映像の再生速度V(フレーム/秒),分割開始フレームF(フレーム),分割間隔T(秒)から、次のように求める。
【0018】
IN=F+(V*T)*i
ステップS703では、i番目の分割領域の終了フレームを設定する。分割領域の終了フレームFOUT(フレーム)は、分割開始フレームF(フレーム),分割間隔T(秒)から、次のように求める。
【0019】
OUT=F+(V*T)*(i+1)−1
ステップS704では、ステップS702,S703で設定したi番目の分割領域の開始フレーム,終了フレームを、分割結果に追加する。分割結果は、例えば、図5に示す表のように保存される。ステップS705では、変数iに1を追加する。ステップS706では、変数iと分割領域の数N−1を比較する。i>N−1であれば、処理を終了する。それ以外であれば、ステップS702へ進む。
【0020】
図8は、図3のステップS308の、素材映像の分割領域毎の動き評価値を取得する際の手順を示すフローチャートである。本実施例では、素材映像の分割領域内の、連続する2フレーム間の、全画素値の差分の平均値を求める。これを分割領域内の全フレームで繰り返し、それぞれで求めた値を足し合わせた値を、分割領域の動き量とする。分割領域の動き量を閾値で1と0に分けたものを、分割領域の動き評価値とする。ここで、素材映像中の或るフレームにおける画像を、フレーム画像と呼ぶものとする。同一の素材映像中のフレーム画像は、全て、同一の幅W(ピクセル),高さH(ピクセル)を持つ画像データである。フレーム画像の各画素には、画像の左下を原点とし、右方向に+x,上方向に+yとなる座標系でアクセスできるものとする。この座標系において、P(i,j)は、kフレームのフレーム画像の、x=i,y=jの位置の画素値を表すものとする。本実施例では、画素毎のチャンネル数は1つであるとする。なお、チャンネル数が複数ある場合には、全チャンネルの値の平均値か、どれか1チャンネルの値を画素値としても良い。ステップS801では、素材映像中の分割領域の開始フレームFIN,終了フレームFOUTを取得する。ステップS802では、変数Mに0を代入する。ステップS803では、変数nに0を代入する。ステップS804では、変数jに0を代入する。ステップS805では、変数iに0を代入する。ステップS806では、(FIN+n)フレームのフレーム画像のx=i,y=jにおける画素値と、(FIN+n+1)フレームのフレーム画像のx=i,y=jにおける画素値との差分を求める。差分値Dは、次のように算出される。
【0021】
【数1】

【0022】
ステップS807では、変数MにD/(W*H)を加算する。ステップS808では、変数iに1を加算する。ステップS809では、変数iとW−1を比較する。i>W−1であれば、ステップS810へ進む。それ以外であれば、ステップS806へ進む。ステップS810では、変数jに1を加算する。ステップS811では、変数jとH−1を比較する。j>H−1であれば、ステップS812へ進む。それ以外であれば、ステップS805へ進む。ステップS812では、変数nに1を加算する。ステップS813では、(FIN+n+1)と(FOUT−1)の値を比較する。(FIN+n+1)>(FOUT−1)であれば、ステップS814へ進む。それ以外であれば、ステップS804へ進む。ステップS814では、変数Mと閾値Rの値を比較する。M>Rであれば、ステップS815へ進む。それ以外であれば、ステップS816へ進む。本実施例では、閾値Rは、50×(FOUT―FIN)として分割領域毎に定められた値であるものとする。なお、閾値Rは、他の値を使用しても良いし、GUI上でユーザに指定させるようにしても良い。ステップS815では、1を分割領域の動き評価値Eとする。ステップS816では、0を分割領域の動き評価値Eとする。なお、分割領域の動き量を求める方法は、上記に限るものではない。例えば、フレーム画像を9分割して、分割した領域毎に、上記と同様の方法で動き量を求め、最も大きい値の動き量を採用するようにしても良い。また、例えば、人物の顔等、特定のオブジェクトを認識し、特定のオブジェクトの移動量を動き量としても良い。また、分割領域の動き量を求める方法が変わる場合には、閾値Rも変化することは言うまでもない。
【0023】
図9は、図3のステップS310の、素材映像の動き評価値の時間的変化に繰り返しの規則性がある領域を検索する際の処理の流れを示すフローチャートである。ここで、素材映像のk番目の分割領域における動き評価値を、Eで表すものとする。また、素材映像の分割領域の数はNであるとする。また、下記で単位に「フレーム」を用いた場合、素材映像のタイムラインにおけるフレームを表すものとする。ステップS901では、繰り返し単位nを設定する。本実施例では、繰り返し単位nは2であるとする。なお、繰り返し単位nには他の値を使用しても良いし、GUI上でユーザに指定させるようにしても良い。ステップS902では、繰り返し回数rを設定する。本実施例では、繰り返し回数rは2であるとする。なお、繰り返し回数rには他の値を使用しても良いし、GUI上でユーザに指定させるようにしても良い。ステップS903では、変数sに0を代入する。ステップS904では、(s+n*r)と(N−1)の値を比較する。(s+n*r)≦(N−1)であれば、ステップS905へ進む。それ以外であれば、処理を終了する。ステップS905では、変数jに0を代入する。ステップS906では、変数iに0を代入する。ステップS907では、Es+iとEs+i+n*jの値を比較する。Es+iとEs+i+n*jの値が等しければ、ステップS908へ進む。それ以外であれば、ステップS913へ進む。ステップS908では、変数iに1を加算する。ステップS909では、変数iとn−1の値を比較する。i>n−1であれば、ステップS910へ進む。それ以外であれば、ステップS907へ進む。ステップS910では、変数jに1を加算する。ステップS911では、変数jとr−1の値を比較する。j>r−1であれば、ステップS912へ進む。それ以外であれば、ステップS906へ進む。ステップS912では、素材映像のs番目の分割映像の開始フレーム,(s+n*r)番目の分割映像の終了フレームを、それぞれ動き周期領域の開始フレーム,終了フレームとして、検索結果に追加する。ステップS913では、変数sに1を加算する。ステップS914では、(s+n*r)と(N−1)の値を比較する。(s+n*r)>(N−1)であれば、処理を終了する。それ以外であれば、ステップS905へ進む。
【0024】
以上のように、本実施例によれば、音楽のリズムを元に分割間隔を決定し、分割間隔で素材映像を等間隔に分割して分割領域を作成する。素材映像の分割領域毎に映像の動き評価値を求め、評価値の時間変化に繰り返しの規則性がある部分を、素材映像から検索する。これにより、音楽のリズムと映像の動きが合致する部分を、素材映像中から自動的に検索することが可能になり、映像の動きを音楽に合わせる作業にかかる映像編集者の手間を、大幅に削減することができる。
【0025】
<変形例>
なお、上述した各実施形態は、映像編集装置そのものあるいはその制御方法として実現されるが、更に以下の処理を実行することによっても実現される。即ち、上記実施形態の各工程や機能を実現するソフトウェア(コンピュータプログラム)を、ネットワークや記憶媒体を介してシステムに供給し、そのシステムのコンピュータ(またはCPU等)が上記プログラムを読み込んで実行する処理である。上記コンピュータプログラムや、それを記憶したコンピュータ可読記憶媒体も本発明の範疇に含まれる。

【特許請求の範囲】
【請求項1】
映像信号と音楽信号を編集する映像編集装置であって、
音楽信号のリズム点を検出するリズム点検出手段と、
前記リズム点検出手段で検出した音楽信号のリズム点に基づいて、映像信号を時間方向に分割した分割領域を作成する分割領域作成手段と、
前記分割領域作成手段で作成した分割領域毎に映像の動きを評価し、時間方向の変化において繰り返しの規則性がある部分の分割領域を検出する繰り返し検出手段とを備えることを特徴とする映像編集装置。
【請求項2】
コンピュータに読み込み込ませ実行させることで、前記コンピュータを請求項1に記載の映像編集装置として機能させるコンピュータプログラム。
【請求項3】
請求項2に記載のコンピュータプログラムを記憶したことを特徴とするコンピュータ可読記憶媒体。
【請求項4】
映像信号と音楽信号を編集する映像編集装置の制御方法であって、
音楽信号のリズム点を検出するリズム点検出工程と、
前記リズム点検出工程で検出した音楽信号のリズム点に基づいて、映像信号を時間方向に分割した分割領域を作成する分割領域作成工程と、
前記分割領域作成工程で作成した分割領域毎に映像の動きを評価し、時間方向の変化において繰り返しの規則性がある部分の分割領域を検出する繰り返し検出工程とを備えることを特徴とする制御方法。

【図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


【公開番号】特開2013−42215(P2013−42215A)
【公開日】平成25年2月28日(2013.2.28)
【国際特許分類】
【出願番号】特願2011−176049(P2011−176049)
【出願日】平成23年8月11日(2011.8.11)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】