図1は、本発明の第1実施形態に係る動画生成システム10を適用したカラオケシステム1の全体的な構成を示している。カラオケシステム1は、本発明の動画生成システム10を用いることで、カラオケ楽曲を歌うユーザUが登場する合成動画を生成して大型ディスプレイ2に表示し、ユーザUには、多様な動きを行う3人のバックダンサー15a〜15cを前にして歌う状況を擬似的に体験可能にすると共に、周囲のユーザには、歌うユーザUのパフォーマンスを楽しめるようにして、カラオケの新たな楽しさを歌う人、見る人の両方に提供できることが特徴になっている。
第1実施形態のカラオケシステム1は、ユーザUを撮影した被写体画像を取り込むために、クロマキー法を採用しており、カラオケの楽曲を歌うユーザUが位置する場所の背部及び周囲に、青色の壁部材6を設けている。なお、カラオケシステム1は、歌うユーザUが歌詞及び自身の撮影画像等を確認するためのサブディスプレイ4を、壁部材6に対向するよう配置している。また、カラオケシステム1は、カラオケ楽曲の配信を行うカラオケ楽曲サーバ5をネットワークNWを通じて動画生成システム10に接続し、さらに生成した合成動画及びユーザUの歌唱を、周囲のユーザが確認できるように大型ディスプレイ2及び左右スピーカ3a、3bを設けている。
カラオケシステム1に適用された本実施形態の動画生成システム10は図1中、波線で囲まれた範囲に該当し、カメラ装置11、クロマキー装置20、3D動画生成装置30、分配装置40、カラオケ装置41、記憶装置44、及び3D動画配信サーバ45を含んでいる。なお、動画生成システム10において、必須となるのはカメラ装置11、クロマキー装置20、及び3D動画生成装置30であり、その他の部分(分配装置40、カラオケ装置41等)は適用対象のサービスの種類に応じてオプション的に追加される周辺装置に該当する。
よって、第1実施形態の動画生成システム10は、カラオケシステム1に適用されることから、分配装置40及びカラオケ装置41を有し、さらに、生成した合成動画を記憶媒体(DVD)に記憶可能にすると共に、ネットワークNWを通じて配信可能にするため、記憶装置44及び3D動画配信サーバ45を設けている。以下、動画生成システム10が有する各装置11、20等について、追加した周辺装置(分配装置40及びカラオケ装置41等)から説明する。
分配装置40は、クロマキー装置20で生成された合成動画を分配して複数の分配先へ送る処理を行うものである。具体的には、第3ビデオ線V3でクロマキー装置20から受け取る合成動画を、第4ビデオ線V4を通じて大型ディスプレイ2へ送ると共に、第5ビデオ線V5を通じてカラオケ装置41へ送る処理を行う。
図2は、カラオケ装置41の内部構成を示すブロック図である。カラオケ装置41は内部バス41iを介して、各種制御を行う制御部41a、通信処理部41b、カラオケ楽曲処理部41c、楽曲再生処理部41d、メモリ部41e、テロップ合成部41f、入出力インタフェース41g、及び赤外光受光部41hを接続した構成にしている。
通信処理部41bは楽曲取得手段に相当し、ネットワークNWを介してカラオケ楽曲サーバ5と繋がっており、制御部41aの制御指示に基づきカラオケ楽曲サーバ5へユーザが指定するカラオケ楽曲の要求信号を送信する。カラオケ楽曲サーバ5は、要求信号の受信に伴って指定されたカラオケ楽曲を送信するようになっており、通信処理部41bは、カラオケ楽曲サーバ5から送信されたカラオケ楽曲を受信して取得する。なお、カラオケ楽曲サーバ5が配信するカラオケ楽曲は、音楽に関する楽曲データに、歌詞を表す文字データ(テロップ)が付帯されたものになっている。
さらに、本実施形態では、通信処理部41bは、後述する音声合成部42aでカラオケ楽曲とユーザ音声が合成された合成音の音ファイル及びテロップ合成部41fでテロップが合成された合成動画の動画ファイルをメモリ部41eから読み出して、両者を関連づけて3D動画配信サーバ45へネットワークNWを通じてアップロード(送信)する処理も行う。このようなアップロード処理は、制御部41aの制御指示に基づいて行われており、アップロードされる際には、日付、及びカラオケが行われた場所の情報(例えば、カラオケ店の名称)等が付加されたファイル形式で送信される。
また、カラオケ楽曲処理部41cは、通信処理部41bで取得されたカラオケ楽曲を、楽曲データと、文字データに分離して、楽曲データを楽曲再生処理部41dに送ると共に、文字データをテロップ合成部41fに送る処理を行う。
楽曲再生処理部41dは楽曲再生手段に相当し、楽曲データの再生処理を順次行って再生した楽曲音を音声合成部42aに送る。音声合成部42aには、第1音声ケーブルA1が繋がったマイク音声入力部42bが受け付けるカラオケ楽曲を歌うユーザUのユーザ音声も送られており、音声合成部42aは、再生された楽曲音とユーザ音声を合成する処理を行い、合成音を増幅部42cへ送ると共に、第2音声ケーブルA2を通じて記憶装置44へも送るようにしている。さらに、音声合成部42aは合成音を、アップロード用の音ファイルにしてメモリ部41eへ送る処理も行っている。なお、増幅部42cは、合成音を増幅して第3音声ケーブルA3を通じて左右スピーカ3a、3bから出力する。
一方、テロップ合成部41fは文字合成手段に相当し、動画入力部42dと接続されている。動画入力部42は第5ビデオ線V5を通じて、後述するクロマキー装置20で生成された合成動画を取得しており、取得した合成動画をテロップ合成部41fへ送る処理を行う。よって、テロップ合成部41fは送られた合成動画を受け取ると、その合成動画にカラオケ楽曲のテロップを合成する処理を行い、テロップを合成した合成動画(図16参照)を動画インタフェース部42eへ送る。なお、テロップ合成部41fも、合成処理を行った合成動画を、アップロード用の動画ファイルとしてメモリ部41eに送る処理を行う。
また、動画インタフェース部42eは表示処理手段に相当し、受け取った合成動画を表示用のデータ(データ信号及び走査信号)に変換して、所定のタイミングで第6ビデオ線V6を通じてサブディスプレイ4へ送る処理を行う。動画インタフェース部42eでの上述した表示処理のタイミングは制御部41aにより、楽曲再生処理部41dにおける再生処理と同期が取られており、楽曲の再生状況に合ったタイミングで、図16に示すようなカラオケ楽曲のテロップ付きの合成動画が表示されるように表示処理が行われる。なお、動画インタフェース部42eは、音声合成部41aが第2音声ケーブルA2を通じて音データを記憶装置44へ送るタイミングに合わせて、合成動画の動画データを、第7ビデオ線V7を通じて記憶装置44へ送る処理も行っている。
メモリ部41eは、アップロード用となる音ファイル及び動画ファイルを関連付けて一時的に記憶している。また、入出力インタフェース41gは、ネットワークケーブルL1を通じて後述する3D動画生成装置30と接続されている。入出力インタフェース41gは、制御部41aの制御に基づき楽曲再生処理部41dで再生処理を開始すると、再生開始信号を3D動画生成装置30へ送ると共に、再生処理を終了すると、再生終了信号を3D動画生成装置30へ送る処理を行う。
赤外光受光部41hは、ユーザが操作するリモコン装置43から発せられる操作指示を含む赤外光を受光するものであり、受光した赤外光に含まれる操作指示を内部バス40iを通じて制御部41aへ送る処理を行う。制御部41aは、受け取った操作指示に従って上述した各部41b、41c等の制御を行っている。
また、図1に示す記憶装置44は記憶媒体であるDVDに、生成された合成動画の記憶処理を行う記憶処理手段に相当し、具体的には第7ビデオ線V7を通じてカラオケ装置41からテロップが合成された合成動画を受け取ると共に、第2音声ケーブルA2を通じてカラオケ装置41からカラオケ楽曲音とユーザ音声の合成音を受け取っている。記憶装置44は、受け取った合成動画及び合成音を記憶処理部44aでDVDに書き込む処理(記憶する処理)を行っており、合成動画等が記憶されたDVDを、ユーザはカラオケに伴うサービス品目(サービスメニュー)の一つとして有償で入手できる。
図3は、3D動画配信サーバ45の主要な内部構成を示すブロック図である。3D動画配信サーバ45は、クロマキー装置20で生成された合成動画をネットワークNWを通じて広く配信可能にするものであり、図4に示すようなウェブページ47を有するウェブサイトをネットワーク上に設けている。3D動画配信サーバ45は、MPU45a、通信インタフェース45b、RAM45c、ROM45d、及びハードディスク装置45eを内部バス45iで接続している。
通信インタフェース45bは、ネットワークNWと接続されており、各種信号及びデータファイルの送受信を行い、本実施形態ではカラオケ装置41からアップロードされる合成動画及び音声のファイル(動画ファイル及び音ファイル)を受信して、ハードディスク装置45eに記憶されたコンテンツデータベース46へ送る処理を行う。また、通信インタフェース45bは、ネットワークNWを通じてウェブサイトへアクセスしてきたアクセス元へMPU45aの制御によりウェブページ47のページデータを送信すると共に、コンテンツの要求信号(動画要求信号)の受信、コンテンツ(動画ファイル及び音ファイル)の配信等もMPU45aの制御に基づき行う。
RAM45cはMPU45aの処理に従うデータ及びフォルダ等を一時的に記憶し、ROM45dはMPU45aが行う基本的な処理内容を規定したプログラム等を予め記憶する。ハードディスク装置45eは、サーバの基本的な処理を規定したサーバプログラム45f、コンテンツの配信処理を規定した配信プログラム45g、ウェブページ用のページデータ45h、及びアップロードされた動画ファイル及び音ファイルを格納したコンテンツデータベース46を記憶している。
配信プログラム45gは、コンテンツ配信に係るMPU45aの制御処理の内容を規定したものであり、ウェブサイトのアクセス元の端末に図4のサイトページ47を表示させる処理を行う。なお、サイトページ47は、コンテンツデータベース46に格納されているコンテンツを、コンテンツの作成日付及びコンテンツが作成されたカラオケ店を表記して選択可能にした選択欄47a、選択欄47aで選択した状態のコンテンツの配信を決定する決定ボタン47b、及び選択した状態のコンテンツをキャンセルするキャンセルボタン47cを有する。決定ボタン47bがアクセス元の端末で選択されると、選択状態のコンテンツを要求する動画要求信号が、3D動画配信サーバ45へ送信されるようになっている。
そのため、配信プログラム45gは、3D動画配信サーバ45の通信インタフェース45bで動画要求信号を受信すると、選択されたコンテンツ(動画ファイル及び音ファイル)をコンテンツデータベース46から読み出して、アクセス元の端末へ通信インタフェース45bから送信することを規定している。
次に、動画生成システム10において必須となるカメラ装置11、クロマキー装置20、及び3D動画生成装置30を説明する。カメラ装置11は、被写体としてカラオケ楽曲を歌うユーザUを、所定のフレームレートでビデオ撮影する撮影手段に相当し、撮影した映像は第1ビデオ線V1によりクロマキー装置20へ順次送っている。
図5は、クロマキー装置20の内部構成を示すブロック図である。クロマキー装置20は、第1入力部21、第2入力部22、被写体画像抽出部23、合成部24、及び出力部25を有する。第1入力部21は第1ビデオ線V1が接続されており、カメラ装置11から送られる撮影映像が入力される。また、第2入力部22は第2ビデオ線V2が接続されており、3D動画生成装置30で生成された3D動画(図14(b)参照)が入力される。被写体画像抽出部23は画像抽出手段に相当し、第1入力部21に入力された撮影映像中に含まれるユーザUの画像(被写体画像)のみをクロマキー法により抽出する処理を行い、抽出した被写体画像(図14(a)参照)を合成部24へ送る。
合成部24は合成動画生成手段に相当し、被写体画像抽出部23から送られる被写体画像を、第2入力部22で入力された3D動画に合成して合成動画(図1の大型ディスプレイ2に表示された内容)を随時生成するものである。なお、合成部24は、図14(a)に示すように撮影映像W(図中、波線で示す)から抽出された被写体画像Hを、撮影映像Wの映像枠の下辺Waと、3D動画生成装置30で生成された図14(b)に示す3D動画Gの動画枠の下辺Gaが一致するように合成する処理を行って、図15(a)(b)に示すような合成動画のフレーム画像G1、G2等を生成する。また、出力部25は第3ビデオ線V3が接続されており、合成部24で生成された合成動画を第3ビデオ線V3を通じて分配装置40へ随時出力する処理を行っている。
図6は、3D動画生成装置30(動画生成手段に相当)の内部構成を示すブロック図である。本実施形態の3D動画生成装置30は汎用のパーソナルコンピュータを適用している。3D動画生成装置30は、モーションキャプチャ技術により得られた動体のモーションデータ(姿勢情報に相当)を動画フレームごとに含んだ動画データDと、動体を見る位置を規定した視点情報を複数格納した視点テーブルTを予め記憶しており、これら動画データD及び視点テーブルTに基づき、動体に対する視点位置がランダムに変更する3D動画(図14(b)参照)を生成する。
3D動画生成装置30は、コンピュータ本体30aの内部において、各種制御処理を行う制御部31(プロセッサ)に、RAM32、ROM33、動画出力インタフェース34、入出力インタフェース35、及びハードディスク装置36を内部バス30bで接続している。RAM32は制御部31の処理に従うデータ及びフォルダ等を一時的に記憶し、ROM33は制御部31が行う基本的な処理内容を規定したプログラム等を予め記憶する。動画出力インタフェース34は第2ビデオ線V2が接続されており、生成した3D動画をクロマキー装置20へ随時送る処理を行う。入出力インタフェース35はネットワークケーブルL1が接続されており、カラオケ装置41から送られる再生開始信号、再生終了信号等を受け付けている。
ハードディスク装置36は、各種プログラム及びデータ等を記憶し、本実施形態ではプログラムとして、コンピュータ本体30aを作動させる上でベースとなる処理を規定したシステムプログラム37、3D動画の生成に係る処理を規定した動画生成プログラム38、動画データD、及び視点テーブルT等を記憶している。
ハードディスク装置36に記憶される動画データDは、動体として3体の三次元的なバックダンサー(バックダンサー画像)を含む動画コンテンツであり、実際のダンサーにマーカを付してモーションキャプチャ技術により得た三次元座標系における実際のダンサーの姿勢を、マーカの座標及び角度等で単位時間(動画フレーム)ごとに規定して作成されたモーションデータを含む内容になっている。このような動画データDは、3D動画の生成時に視点テーブルTに含まれる視点情報に基づき動体を見る位置(視点)を規定することで、その視点から3体のバックダンサーを見た状態の姿勢で3D動画が生成されるようになっている。なお、本実施形態の動画データDは、3体のバックダンサーに関する三次元座標系の姿勢情報に加えて、ステージ背景画像となる背景情報(三次元座標系でのステージ背景画像の位置を規定したもの)も含んでいる。
図7は3D動画の生成に係る状態のイメージを概略的に示したものである。図中、X軸、Y軸、Z軸で構成されるXYZ座標系における3体のバックダンサー15a〜15c、及び4個のステージ背景16a〜16d(ハート型のモチーフ画像)は、動画データDに基づくものであり、図中、多数存在するカメラ17A、17B等は視点テーブルTが規定する三次元座標XYZにおける動体を見る位置を表したものである。なお、各カメラ17A、17B等ごとに、XYZ座標系とは相違するカメラ系座標であるUVW座標系が設けてあり、本実施形態の各カメラ17A、17Bは、撮像方向(視点方向)に一致するV軸を中央に位置するバックダンサー15bに向けている。これら複数のカメラ17A、17B等の中から1つを選択することで、XYZ座標系での動体(バックダンサー15a〜15c)を見る位置が定まり、その定まったカメラで撮影した内容になるように3D動画が生成される。なお、図7で示されたカメラの数及び位置は一例であり、仕様に応じてカメラの数及び位置は適宜設定できる。
図8は、視点テーブルTの中身を示している。視点テーブルTはカメラ(第1カメラ17A〜第nカメラ17N)ごとにXYZ座標における座標値を規定したものになっており、テーブル中のカメラの種類(及び座標値)が視点情報に該当する。
なお、動体データDに含まれる動体(バックダンサー)ついて少し説明すると、図9(a)は三次元コンピュータグラフィックス技術により作成される3体の中の1体のバックダンサー15a(バックダンサー画像)を示し、バックダンサー画像は図9(b)に示すように、人体の骨に相当するボーンBと云う棒状のリンク部材を連結したものに、人体の皮膚に相当するスキンを被せて作成される。さらに、図9(b)に示すボーンBの各所に付された点P1〜P17が、実際のダンサーに付されたマーカ位置に相当し、これら各点P1〜P17ごとにモーションデータの値が存在する。なお、図9(b)に示す各点P1〜P17の位置及び個数は一例であり、実際のダンサーに付すマーカの位置及び個数に応じて適宜変更できる。
図10は、動画データDに含まれる動画フレーム(単位時間)ごとに生成される三次元的な状態が特定されたバックダンサーを含む3D動画における各フレームのイメージを示す図である。3D動画は、時刻t1、t2、t3・・・における動画フレームf1、f2、f3・・・により構成されており、各動画フレームf1、f2、f3等に応じた画像を順次生成することで、各動画フレームf1、f2、f3等に含まれるバックダンサー15a〜15cが動く動画を得られる。なお、本実施形態の動画データDは、1秒当たりの動画フレーム数を60個(60フレーム/秒)にしているが、この数値はあくまで一例であり、モーションデータを取得する際のフレーム数の範囲であれば、要求される動画品質に応じて適宜増減できる。また、図10では、動画データDに含まれるステージ背景画像の図示は省略している。
図11は、動画データDに含まれる時刻t1、t2における第1動画フレームf1、第2動画フレームf2中の1つのバックダンサー15aに対するモーションデータM1a、M2aの中身を概略的に示したものである。モーションデータM1a、M2aは、図9(b)に示す各点P1〜P17ごとに、図7に示すXYZ座標系におけるX軸、Y軸、Z軸のそれぞれに対する回転角度、及び座標値を有する。このような動画フレームごとのモーションデータに基づいて、図10に示す各動画フレームに含まれるバックダンサー15a〜15cの姿勢が特定された画像が生成される。なお、図10の画像は、中央のバックダンサー15bを正面から見た状態で視点が特定されたものになっている。また、図11では、残りのバックダンサー15b、15c及びステージ背景16a〜16dに係るモーションデータの図示を省略しているが、動画データDは、これらのモーションデータも勿論含んでいる。
次に、動画生成プログラム38が規定する処理内容について説明する。動画生成プログラム38は、制御部31が行う制御処理内容を規定しており、カラオケ装置41からの再生開始信号の入力に伴い、視点テーブルTからランダムにカメラを選択する処理を行う。具体的には、N個のカメラを視点テーブルTが含んでいるとすると、1/Nの確率でいずれか1つのカメラに対応する番号を発生する乱数発生処理を行い、発生した乱数の数値に対応するカメラを選択する処理を行う。例えば、乱数発生処理で「2」が生じると、図8の視点テーブルTから第2カメラ17Bを制御部31が選択することになる。
また、動画生成プログラム38は、選択されたカメラの視点で3D動画を生成することを規定している。なお、本実施形態の動画生成プログラム38は、このようなカメラ選択処理を8秒ごとに行うようにしており、3D動画の生成及びカメラ選択処理はカラオケ装置41からの再生終了信号の入力に伴って終わらせるようにしている。
図12は、3D動画生成装置30における動画生成プログラム38に基づく処理の流れを整理した第1フローチャートである。以下、この第1フローチャートに従って3D動画生成装置30の処理手順を説明する。先ず、3D動画生成装置30は、カラオケ装置41からの再生開始信号を受け取ったか否かを判断する(S1)。再生開始信号を受け取っていない場合(S1:NO)、3D動画生成装置30は処理待ちとなる。また、再生開始信号を受け取った場合(S1:YES)、3D動画生成装置30は複数のカメラの中から一つのカメラをランダムに選択する処理を行い(S2)、視点テーブルTを参照して、選択したカメラの視点で3D動画の生成処理を行う(S3)。それから、3D動画生成装置30は、8秒が経過したか否かを判断し(S4)、8秒が経過していない場合(S4:NO)、3D動画生成の処理段階(S3)へ戻り、以降、8秒が経過するまで所定のフレームレートで3体のバックダンサーが所定の動作を行う3D動画の生成を行う。
また、8秒が経過した場合(S4:YES)、3D動画生成装置30は、再生終了信号をカラオケ装置41から受け取ったか否かを判断し(S5)、再生終了信号を受け取っていない場合(S5:NO)、カメラ選択処理の段階(S2)へ戻り、新たなカメラの選択処理を行うことになる。この新たなカメラの選択により自動的に3D動画の視点が変更される。以降、再生終了信号を受け取るまでS2〜S5の段階を繰り返し、再生終了信号を受け取った場合(S5:YES)、3D動画生成装置30は、処理を終了する。
図13は、3D動画における視点の変更状態を表したタイムチャートである。3D動画生成装置30が、上述したようなカメラの選択処理を行うので、本実施形態ではカラオケ楽曲の再生開始から8秒ごとにカメラが切り替わる。それにより、本発明では、図14(b)に示す3D動画Gのアングル以外に、各バックダンサー15a〜15c及びステージ背景16a〜16dの三次元的な画像を見る位置が8秒ごと切り替わる3D画像が3D動画生成装置30で生成される。
また、最終的にはクロマキー装置20での合成処理により、図15(a)(b)に示すように、被写体画像Hの背後に位置する3体のバックダンサー15a〜15c、及びステージ背景16a〜16dの三次元的な画像を見るアングルが様々に切り替わる合成画像のフレーム画像G1、G2を得ることができる。このようなフレーム画像G1、G2により構成される合成画像は、大型ディスプレイ2に表示されるため、カラオケ楽曲を歌うユーザUの周囲にいるユーザも大型ディスプレイ2の表示内容を見て楽しむことができ、歌うユーザUと一緒に楽しめる一体感を演出できる。なお、図15(a)は、図7において、正面の第6カメラ17Fが選択された場合のものであり、図15(b)は左側の第2カメラ17Bが選択された場合のものである。
さらに、図16は、サブディスプレイ4で表示されるテロップ19が合成された合成動画のフレーム画像G10を示している。この合成動画のフレーム画像G10は、カラオケ楽曲を歌うユーザUが見ることになる。そのためユーザUは、通常のカラオケ画面に加えて自身が登場するため、楽曲に合わせた振りを確認できると共に、リアルに多様な動きを行うバックダンサー15a〜15cとステージ背景16a〜16dにより、擬似的にステージ上で熱唱している雰囲気を味わえる。さらに、バックダンサー15a〜15cとステージ背景16a〜16dを見る位置及びアングルがランダムに切り替わるため、ユーザUはテレビ番組における本物のカメラワークにようにダイナミックな構図の変化を毎回楽しむことができる。
さらにまた、本発明のカラオケシステム1では、図16に示すような合成動画を記憶装置44でDVDに記憶できると共に、3D動画配信サーバ45よりネットワーク配信可能にしているので、生成したコンテンツ(合成動画)の二次的な利用も容易に行えるようにしている。その結果、本発明のカラオケシステム1は、今までにない新たな楽しさをユーザに与えられると共に、カラオケを歌うことで生成されたコンテンツの提供もスムーズに展開することができ、カラオケサービスを行う事業体にとって新たな収益源の確保にも役立てることができ、さらに、カラオケサービス以外にも結婚式の二次会、同窓会等の各種イベント、また、新人歌手を発掘するためのオーディション等にも本発明を活用できる。
なお、第1実施形態のカラオケシステム1及び動画生成システム10は、上述した内容に限定されるものではなく、種種の変形例の適用が可能である。たとえば、カラオケ楽曲の取得方法は、図1に示すようにネットワークNWを通じてカラオケ楽曲サーバ5から取得する以外にも、カラオケ装置41に、多数のカラオケ楽曲を記憶した記憶媒体(DVD、ハードディスク装置等)の読取部を設け、この読取部でユーザが指定したカラオケ楽曲を記憶媒体から読み取ることで、カラオケ装置41がカラオケ楽曲を取得するようにしてもよい。
また、カラオケ楽曲を歌うユーザUも大型ディスプレイ2の表示を確認できるときは、サブディスプレイ4を省略してもよく、このときは、分配装置40を省略できると共に、大型ディスプレイ2にはテロップを合成した合成動画を表示するようにカラオケ装置41からの出力動画を表示することが好適である。また、仕様を簡略化する場合は、記憶装置44及び3D動画配信サーバ45を省略してもよい。さらに、動画生成システム10をカラオケシステム1に適用しない場合は、カラオケ装置41も省略して動画のみに処理を絞った仕様にしてもよい。
さらにまた、3D動画生成装置30でランダムにカメラを選択する時間間隔は、8秒に限定されるものではなく(図12のステップS4参照)、他の時間を適用することも可能である。さらに、カメラを選択する間隔の時間もランダムに変化させることも可能であり、例えば、最初の時間間隔は3秒、2番目の時間間隔は10秒、3番目の時間間隔を7秒と云うように不規則な時間間隔にして、時間的にもランダムに視点が変化する動画内容にしてもよい。なお、この場合は、カメラ選択の処理後に時間間隔を決定する処理が必要となり、決定する時間は例えば1秒から15秒の範囲の各秒が1/15の確率で当たるように乱数を発生させて時間を決定する。
また、動体に相当するバックダンサー15a〜15cは3体以外に適宜増減可能であり、さらに、バックダンサー以外にも動物、アニメのキャラクタ等の様々な形態を動体として適用してもよい。さらにまた、ステージ背景は別の形態のものを適用することが可能であり、画像内容の簡略化を図るときは省略することも勿論可能である。また、合成処理に用いる方法は、クロマキー法以外にも、他の方法を適用してもよい。
図17は、第1実施形態の変形例の処理に用いられるカラオケ楽曲のデータ構造を概略的に示したものである。このカラオケ楽曲は、楽曲データの最初(時刻0)から最後(時刻Tn)までにおいて、所定の時間間隔(例えば、8秒ごと)で、選択するカメラを指定する情報が楽曲進行順に付帯されたものになっている。なお、このようなデータ構造のカラオケ楽曲は、カラオケ楽曲の作成者側で、3D動画生成装置30で生成される際のアングルを決めることができるため、カラオケ楽曲の作成者側がカラオケ楽曲の際に表示される動画内容のアングルをコントロールできるメリットがある。また、この変形例では上述したデータ構造のカラオケ楽曲を、図1に示すカラオケ楽曲サーバ5から配信できる構成にして、カラオケ装置41で取得できるようにする。
さらに、この変形例では、カラオケ装置41は、カラオケ楽曲の再生処理を行う際、付帯するカメラの情報をカメラ指定信号として3D動画生成装置30へ、楽曲の再生処理に合わせて送る処理を行う。例えば、カラオケ装置41は、図17に示すデータ構造のカラオケ楽曲の再生処理を行う場合、楽曲の再生開始時に、再生開始信号及び第4カメラを指定するカメラ指定信号を3D動画生成装置30へ送り、再生開始からt10秒経過後に第6カメラを指定するカメラ指定信号を3D動画生成装置30へ送り、再生開始からt11秒経過後に第3カメラを指定するカメラ指定信号を3D動画生成装置30へ送る。
また、図18は、図17に示す変形例のカラオケ楽曲を用いる場合の3D動画生成装置30が行う処理手順を示す第2フローチャートである。この第2フローチャートに従って変形例の3D動画生成装置30が行う3D動画の生成処理を説明する。先ず、3D動画生成装置30は、カラオケ装置41からの再生開始信号を受け取ったか否かを判断し(S10)、再生開始信号を受け取っていない場合(S10:NO)、処理待ちとなり、再生開始信号を受け取った場合(S10:YES)、次にカメラ指定信号をカラオケ装置41から受け取ったか否かを判断する。
カメラ指定信号を受け取っていない場合(S11:NO)、3D動画生成装置30は、処理待ちとなり、カメラ指定信号を受け取った場合(S11:YES)、受け取ったカメラ指定信号が指定するカメラを選択する処理を行い(S12)、選択したカメラの視点で3D動画の生成処理を行う(S13)。それから、3D動画生成装置30は、新たなカメラ指定信号を受け取ったか否かを判断し(S14)、新たなカメラ指定信号を受け取った場合(S14:YES)、カメラ選択段階(S12)へ戻り、新たなカメラ指定信号が指定するカメラを選択する。
また、新たなカメラ指定信号を受け取っていない場合(S14:NO)、再生終了信号をカラオケ装置41から受け取ったか否かを判断し(S15)、再生終了信号を受け取っていない場合(S15:NO)、3D動画生成の段階(S13)へ戻り、カメラを変更することなく3D動画の生成処理を行う。また、再生終了信号を受け取った場合(S15:YES)、3D動画生成装置30は、処理を終了する。
このように図17に示すカラオケ楽曲に基づく変形例では、3D動画生成装置30において、視点を決めるカメラをランダムに選択する処理が不要となり、処理負担の低減を図れる。また、カラオケ楽曲の作成側は表示する合成動画中に含まれる3D動画部分(バックダンサーの画像及び背景の画像等)の視点を指定できるため、作成側の意図に沿った動画コンテンツの生成を実現できる。
図19は、本発明の第2実施形態に係る動画生成システム50の主要部を示すブロック図である。第2実施形態の動画生成システム50は、カメラ装置51で撮影された映像中における被写体画像の位置に応じて、3D動画の視点情報を切り替えることを特徴にしている。そのため、カメラ装置51の第1ビデオ線V1の一方の端を二股に分岐して第1分岐線V1aをクロマキー装置60に接続すると共に、第2分岐線V1bを、3D動画生成装置70に新たに設けた動画入力インタフェース77に接続して、3D動画生成装置70が撮影映像を取得して、撮影映像中に含まれる被写体画像の位置を検出する処理を行えるようにしている。なお、カメラ装置51は、図1に示す第1実施形態と同様に所定の撮像方向を向いた状態で固定されている。
第2実施形態の3D動画生成装置70は、ハードディスク装置76に記憶される動画生成プログラム79に被写体画像の位置検出の処理を含ませており、制御部71は動画生成プログラム79が規定する内容に基づいて被写体画像の位置検出処理を行う。
図20(a)は、3D動画生成装置70の制御部71が行う被写体画像の位置検出処理を説明する図である。制御部71は、動画入力インタフェース77で、カメラ装置51の撮影映像W1を取得すると、取得した撮影映像W1の全範囲を格子状に区分けして計12個のブロックB1〜B12を形成する。それから、制御部71は各ブロックB1〜B12中において、被写体画像Hが占有する領域が最も大きいブロックを特定し、その特定したブロックを被写体画像Hの検出した位置(検出位置)に決定する。なお、図20(a)では、被写体画像Hの占める領域が最も大きいブロックB11が被写体画像Hの検出位置になる。
また、図20(b)は、第2実施形態の3D動画生成装置70が、ハードディスク装置76に新たに記憶する位置対応テーブル80の中身を示している。位置対応テーブル80は、区分けされた撮影映像W1のブロックB1〜B12ごとに、複数種類のカメラを予め対応付けた内容になっている。なお、位置対応テーブル80の対応付けは、被写体画像Hが占有するブロックの位置に対して、動体(バックダンサー)及び背景の画像が重複せずに見やすくなることを考慮して決められている。例えば、被写体画像Hが右側(又は右下)のブロックを占有する場合、その逆側となる左側、又は対角的に反対方向となる左上側のカメラが対応付けられており、さらに、被写体画像Hが左側(又は左下)のブロックを占有する場合、その逆側となる右側、又は対角的に反対方向となる右上側のカメラが対応付けられている。
ハードディスク装置76が記憶する動画生成プログラム79は、図20(b)の位置対応テーブル80を用いて、視点を定めるカメラを選択する処理を規定している。詳しくは、動画生成プログラム79は、上述した被写体画像Hの検出処理により一つのブロックを特定すると、その特定したブロックに対応するカメラ(視点情報)を位置対応テーブル80から選択する処理を制御部71が行うことを規定している。それから、動画生成プログラム79は、選択したカメラの位置(XYZ座標系の位置)を視点テーブルT(図8参照)に基づき制御部71が特定し、3D動画の生成処理を行うことを規定している。
第2実施形態の3D動画生成装置70における他の部分(RAM72、ROM73、動画出力インタフェース74、入出力インタフェース75等)及びハードディスク装置76に記憶されるシステムプログラム78、動画データD、視点テーブルTは、第1実施形態と同等である。また、第2実施形態の動画生成システム50のカメラ装置51及びクロマキー装置60も第1実施形態と同等であるため説明を省略する。さらに、第2実施形態の動画生成システム50も、図1に示すようなカラオケシステム1に採用され、カラオケ楽曲を歌うユーザUが合成された合成動画の生成を行っている。なお、カラオケシステム1に含まれる動画生成システム50以外の分配装置40、カラオケ装置41等も第1実施形態と同等であるため、説明を省略すると共に、第2実施形態でも第1実施形態と同等の符号を用いて以下の説明を行う。
図21は、第2実施形態の3D動画生成装置70における3D動画の生成処理を示す第3フローチャートである。先ず、3D動画生成装置70は、カラオケ装置41からの再生開始信号を受け取ったか否かを判断し(S20)、再生開始信号を受け取っていない場合(S20:NO)、処理待ちとなり、再生開始信号を受け取った場合(S20:YES)、次にカメラ装置51から送られる撮影映像の入力があるか否かを判断する(S21)。
撮影映像の入力がない場合(S21:NO)、3D動画生成装置70は、撮影映像の入力待ちとなり、撮影映像の入力があった場合(S21:YES)、図20(a)に示すような被写体画像Hの位置検出処理を行い(S22)、検出した位置に応じたカメラの選択処理を位置対応テーブル80を利用して行い(S23)、選択したカメラの視点で3D動画の生成処理を行う(S24)。それから、3D動画生成装置70は、再生終了信号をカラオケ装置41から受け取ったか否かを判断し(S25)、再生終了信号を受け取っていない場合(S25:NO)、撮影映像の入力判断処理の段階(S21)へ戻り、処理を継続する。また、再生終了信号を受け取った場合(S25:YES)、3D動画生成装置70は、処理を終了する。
このように第2実施形態の3D動画生成装置70は、撮影映像中の被写体画像の位置に応じて視点を変更した3D動画を生成するので、最終的にクロマキー装置60において生成される合成動画のフレーム画像G20、G21等は、図22(a)(b)に示すように、被写体画像Hの位置が変わるごとに、バックダンサー15a〜15c及びステージ背景16a〜16dの画像を見る方向が変化する内容になる。
即ち、図22(a)では、ユーザUの移動により被写体画像Hが、フレーム画像G20において左側に位置するので、左側と反対側になる右側のカメラを視点にして、右端のバックダンサー15cが大きくなるように視点変更が行われている。一方、図22(b)では、ユーザUの移動により被写体画像Hが、フレーム画像G21において右側に位置するので、右側と反対側になる左側のカメラに視点にして、左端のバックダンサー15aが大きくなるように視点変更が行われている。そのため、カラオケ楽曲を歌うユーザUは、撮影を行うカメラ装置51に対する位置を移動することで、バックダンサー15a〜15c及びステージ背景16a〜16dの画像の視点が切り替わるようになり、歌いながら位置を変えることよる視覚的な楽しさを味わえる。
なお、第2実施形態でも、第1実施形態で述べた各種変形例の適用が可能である。また、図23(a)(b)は、第2実施形態特有の変形例の処理内容を示している。この変形例では、カメラ装置51で撮影された映像中における被写体画像の動作に応じて、3D動画の視点情報を切り替えることを特徴にしている。そのため、変形例の3D動画生成装置70は、ハードディスク装置76に記憶される動画生成プログラム79に撮影された被写体の動作を検出する処理を含ませており、制御部71は動画生成プログラム79が規定する内容に基づいて被写体の動作検出を行う。
被写体の動作検出は、カメラ装置51から順次送られる撮影映像の時間的に前後する映像フレームの差分を取ることで行う。例えば、図23(a)は、時刻t20での撮影映像W10の内容、図23(b)は時刻t20に続く時刻t21での撮影映像W11の内容を示し、動画生成プログラム79の規定に基づき制御部71は、各撮影映像W10、W11を区分けした各ブロックB1〜B12で、被写体画像Hが位置するブロックを検出する。
そして、制御部71は、検出した被写体画像Hが位置するブロックの中で、時刻t20の撮影映像W10では位置しないが、時刻t21の撮影映像W11では被写体Hが位置するブロックがあるか否かを、各ブロックごとの差分で判断し、そのようなブロックがあるときは、被写体に動作があったと判定する。例えば、図23(a)(b)の場合では、図23(a)の第6ブロックB6に被写体画像Hは位置しないが、図23(b)の第6ブロックB6では被写体画像H(ユーザUの右手)が位置するため、動作の有ったブロックとして第6ブロックB6が特定され、被写体に動作があったと判定される。
図24は、動作検出に係る変形例で使用される動作対応テーブル85の中身を示しており、動作対応テーブル85は変形例の3D動画生成装置70が、ハードディスク装置76に新たに記憶するものである。動作対応テーブル85は、動作のあったブロックB1〜B12ごとに、複数種類のカメラ(視点情報に相当)を予め対応付けた内容になっている。なお、動作対応テーブル85の対応付けは、動作のあったブロックの位置に対して、動体(バックダンサー)及び背景の画像が重複せずに見やすくなることを考慮して決められているが、動作に連動するようにカメラの対応付けを行ってもよい。例えば、現在の被写体Hが位置するブロックより右側のブロックが被写体Hの動作により新たに検出されれば、使用中のカメラより右側に位置するカメラを対応付けるようにしてもよく、また、被写体Hが位置するブロックより左側のブロックが新たに検出されれば、使用中のカメラより左側のカメラを対応付けるようにしてもよい。なお、上述した各ブロックB1〜B12が本発明では内容的に、検出対象の被写体の動作に該当したものになっている。
また、ハードディスク装置76に記憶される変形例の動画生成プログラム79は、動作検出に基づき、図24の動作対応テーブル85を用いて、視点を定めるカメラを選択する処理を規定している。詳しくは、動画生成プログラム79は上述した動作の検出処理により、動作のあったブロックを特定し、その特定したブロックに対応するカメラ(視点情報)を動作対応テーブル85から選択する処理を規定する。
図25は、上述した動作検出に係る変形例の3D動画生成装置70が行う処理内容を示す第4フローチャートである。先ず、3D動画生成装置70は、カラオケ装置41から再生開始信号の受け取りの判断処理(S30)、及びカメラ装置51から送られる撮影映像の入力の判断処理(S31)を、図21に示す第3フローチャートと同様に行う。
そして、カメラ装置51からの撮影映像の入力があった場合(S31:YES)、3D動画生成装置70は、図23(a)(b)に示すような被写体の動作検出処理を行い(S32)、動作による変化があったか否かを判断する(S33)。変化があったと判断した場合(S33:YES)、3D動画生成装置70は、動作のあったブロックに対応するカメラの選択処理を、動作対応テーブル85を用いて行う(S34)。また、変化が無いと判断した場合(S33:NO)、被写体画像Hが占有するブロックに応じたカメラの選択処理を、図20(b)の位置対応テーブル80を用いて行う(S35)。
それから、3D動画生成装置70は、選択したカメラの視点で3D動画の生成処理を行う(S36)。そして、3D動画生成装置70は、再生終了信号をカラオケ装置41から受け取ったか否かを判断し(S37)、再生終了信号を受け取っていない場合(S37:NO)、撮影映像の入力判断処理の段階(S31)へ戻り、処理を継続する。また、再生終了信号を受け取った場合(S37:YES)、3D動画生成装置70は、処理を終了する。
このように第2実施形態の変形例の3D動画生成装置70は、被写体の動作に応じて視点を変更した3D動画を生成するので、最終的にクロマキー装置60において生成される合成動画もカラオケ楽曲を歌うユーザUの動作に応じて、バックダンサー15a〜15c及びステージ背景16a〜16dの画像を見る方向が切り替わる。そのため、カラオケ楽曲を歌うユーザUは、歌っている途中に振りの動作を行うことで、合成動画中のバックダンサー15a〜15c及びステージ背景16a〜16dの画像の視点が変化するので、振りの動作に対する楽しみを得られると共に、各ユーザは積極的に様々な振りの動作を行って画像の視点を変えて、合成動画を見るユーザを楽しませることもできる。なお、図25中の第4フローチャートは、動作検出に係る処理と、位置検出に係る処理を組み合わせた内容にしているが(S34、S35)、動作検出に係る処理のみを行って、動作による変化が無い場合は(S33:NO)、固定の視点(デフォルトの視点)を選択するようにしてもよい。