動画に重畳アイテムを重畳させた場合、重畳アイテムが重畳された状態のフレーム画像がユーザーにとって最もその動画を印象づける代表画像となる可能性が高い。従って本発明では、動画に重畳アイテムを重畳させた状態のフレーム画像を動画の代表画像とするように制御する。特に、ベイビーモードのような専用の重畳アイテムがある撮影モードで撮影された動画については、専用の重畳アイテムが重畳されたフレームがその動画において最も印象の強いフレームである可能性が高い。例えばベイビーモード専用の重畳アイテムとして、年齢スタンプ、体重スタンプ、身長スタンプなどがある場合には、それらのスタンプを見ることで、生後どれぐらい経過した時点の赤ん坊の動画なのかを判別でき、動画の識別性が高くなる。従って本発明では、例えばベイビーモードで撮影された動画の代表画像は、ベイビーモード専用のスタンプが重畳されたフレームの画像となるように制御する。これによって、代表画像を見た際の動画の識別性を向上させることができる。
以下、図面を参照して本発明の好適な実施形態を説明する。
<実施例1>
実施例1では、1つの動画に対して1つの代表画像を登録する例を説明する。
図1(a)に、本実施形態の動画記録装置の概略構成ブロック図を示す。本実施形態では、動画記録装置の一例として、デジタルビデオカメラを挙げて説明する。CPU107は、プログラム・データ記憶部108からプログラムを読み込み、これに従ってビデオカメラ全体の動作を制御する演算装置である。読み込まれたプログラムは、CPU107に複数のタスクを並列に実行させるための機能を備える。具体的に、CPU107の制御により「モード制御タスク」、「カメラ制御タスク」、「レコーダ制御タスク」及び「表示制御タスク」が動作する。一時記憶部103の一部は、CPU107のワーク領域として機能し、下記の動画用フレームバッファ、OSD用フレームバッファを提供する。
カメラ部101は、アナログ映像信号を動画記録装置に入力するための機構を備える。具体的に、被写体からの光を結像させるためのレンズ、レンズよって結像された被写体像を光電変換する撮像素子、撮像素子を駆動する回路等を含む。映像処理部102は、カメラ部101から入力されたアナログ映像信号をデジタルの動画データに変換し、ノイズ除去などの所定の画像処理に基づく補正を行う。カメラ部101及び映像処理部102の動作は、CPU107が実行する「カメラ制御タスク」によって制御される。
エンコーダ・デコーダ部104は、映像処理部102からの動画データを符号化する。エンコーダ・デコーダ部104によって符号化された動画データは、一時記憶部103に一旦記憶されたのち、付随する管理データとともに動画記憶部105に記憶される。動画の再生時は逆に、動画記憶部105から読み出された符号化された動画データ(画像データ)が一時記憶部103を介してエンコーダ・デコーダ部104で復号化される。その後、再び一時記憶部103内の動画用フレームバッファに展開される。エンコーダ・デコーダ部104及び動画記憶部105の記憶制御は、CPU107が実行する「レコーダ制御タスク」によって制御される。
動画記憶部105から読み出された管理データは、OSD(On Screen Display)データ、すなわち、撮影画像や再生画像に重畳される文字表示やGUI(Graphical User Interface)用のデータの生成に利用される。そして、生成されたOSDデータは、一時記憶部103内のOSD用フレームバッファに描画される。動画用フレームバッファとOSD用フレームバッファの各内容は、表示制御部110で重畳されて、LCDパネル111とに表示される。操作キー106、タッチパネル109はいずれもユーザによる動作指示を受け付けるための操作部である。
図1(b)に、動画記録装置としてのデジタルビデオカメラの外観図を示す。ビデオカメラは、図1(a)のカメラ部101を有する本体部113と、ヒンジによって本体部113に回動可能に取り付けられたバリアングルLCD部112とを有する。LCDパネル111とタッチパネル109とは一体的に構成され、バリアングルLCD部112に配設される。例えば、光の透過率がLCDパネル111の表示を妨げないようにタッチパネル109を構成し、LCDパネル111の表示面の上層に取り付ける。そして、タッチパネル109における入力座標と、LCDパネル111上の表示座標とを対応付ける。これにより、あたかもユーザがLCDパネル111上に表示された画面を直接的に操作可能であるかのようなGUIを構成することができる。なお、タッチパネル109は、抵抗膜方式や静電容量方式、表面弾性波方式、赤外線方式、電磁誘導方式、画像認識方式、光センサ方式等、様々な方式のうちいずれの方式のものを用いても良い。
また、CPU107は、タッチパネル109に対する以下の操作及び状態を検出できる。
・タッチダウン:タッチパネル109を指やペンにより触れたこと
・タッチオン:タッチパネル109を指やペンにより触れている状態
・タッチムーブ:タッチパネル109を指やペンで触れたまま、指やペンを移動すること
・タッチアップ:タッチパネル109へ触れていた指やペンを離したこと
・タッチオフ:タッチパネル109に何も触れていない状態
これらの操作や、タッチパネル109上に指やペンが触れている位置座標は、CPU107に通知され、CPU107は通知された情報に基づいてタッチパネル109上にどのような操作が行なわれたかを判定する。
タッチムーブについては、タッチパネル109上で移動する指やペンの移動方向についても、位置座標の変化に基づいて、タッチパネル109上の垂直成分・水平成分毎に判定される。また、タッチパネル109上をタッチダウンから一定のタッチムーブを経てタッチアップをしたとき、「ストローク」を描いたと判定される。
素早くストロークを描く操作を「フリック」と呼ぶ。フリックは、タッチパネル109上に指を触れたままある程度の距離だけ素早く動かして、そのまま離すといった操作であり、言い換えればタッチパネル109上を指ではじくように素早くなぞる操作である。所定距離以上を、所定速度以上でタッチムーブしたことが検出され、そのままタッチアップが検出されるとフリックが行なわれたと判定される。また、所定距離以上を、所定速度未満でタッチムーブしたことが検出された場合は「ドラッグ」が行なわれたと判定される。
CPU107によって実行される上記モード制御タスクは、次のように動作する。すなわち、操作部(操作キー106、タッチパネル109)からの指示、他タスクからの要求、あるいはモード制御タスク自身が管理する内部状態の変化に従って、ビデオカメラ全体の動作状態を遷移させ、各タスクへイベントを通知する。
本実施形態における動画記録装置は、タッチ入力による描画モードにすることで、ユーザーがタッチ操作で描いた図形や文字等を記録映像(動画)に対して重畳することができる。タッチ入力による描画の種類としては、ペン、スタンプ、消しゴム、アニメーションなどがある。
また、本実施形態における動画記録装置は、動画の撮影モードの一種として、複数の撮影モードのうち、ベイビーモードという、赤ん坊または子供を撮影するための撮影モードにモード設定して撮影することができる。ベイビーモードには、例えばLCDパネル111に撮影モード選択画面が表示された状態で、ベイビーモードを示すアイコンがタッチされることで設定される。ベイビーモードに設定されると、ベイビーモードに設定された旨が一時記憶部103あるいはプログラム・データ記憶部108に記憶される。ベイビーモードに設定することで、赤ん坊を撮影するのに最適なカメラ設定に自動的に設定される。例えば、背景をぼかして人物を浮き立たせるような露出設定(絞り及びシャッター速度)としたり、ホワイトバランス設定を赤ん坊の肌を取るのに適した設定にする。また、寝ている赤ん坊を起こさないように、撮影開始時、撮影終了時、各種エラー時などの報知音や各種操作音をオフ(無音)に設定する。さらに、ベイビーモードで撮影された動画は、ベイビーモードに設定されて撮影された動画用のプレイリスト(ベイビーアルバムと称する)に撮影順で登録される。ベイビーアルバムは、ベイビーモードに設定された動画の再生に必要な情報(ファイル名や格納領域のリンク情報など)が記録された管理データであり、動画記憶部105に記録される。ベイビーアルバムを参照して、ベイビーアルバムに登録された複数の動画を順次再生することで、赤ん坊の成長を順を追って視聴する、といった使い方ができる。すなわち、ベイビーモードで撮影された複数の動画を、他のモードで撮影された動画とは別途にまとめて管理する。また、ベイビーモードに設定すると、タッチ入力による描画モードで入力可能なスタンプが追加され、ベイビーモード用のスタンプが利用可能となる。ベイビーモード用のスタンプには、年齢スタンプ、体重スタンプ、身長スタンプなどがある。
図2(a)〜図2(i)を用いて、撮影時(動画記録待機時及び動画記録中)においてLCDパネル111に表示される各画面の表示例を説明する。
図2(a)は、LCDパネル111に表示される撮影モードにおける撮影待機時の表示例である。LCDパネル111には、カメラ部101で撮像されているスルー画像201(ライブビュー画像とも称する。動画である。)が全画面表示されており、スルー画像201に存在する被写体の例として被写体207が写っている。画面の上部には、ビデオカメラ本体に関する情報である撮影時間情報203と録画状態アイコン204と残バッテリ情報205がOSDで表示されている。画面上にはさらに、いずれもタッチによる操作が可能であることを示すタッチボタンであるメニューボタン202、タッチ描画モード切り替えボタン206が、それぞれOSDで表示されている。これらOSDで表示される項目は撮像映像に重畳されて画面表示されるもので、「表示アイテム」と称する。この例では、撮影時間情報203、録画状態アイコン204、残バッテリ情報205及び上記したタッチボタン類が表示アイテムである。これら表示アイテムは、ユーザーに通知すべき情報をユーザーに示すための情報表示であって、動画記憶部105に記録される動画とともに記録されるものではない。なお動画記録中においても、タッチ描画モードに遷移する前であれば、撮影時間情報203の時間が進むことと、録画状態アイコン204が録画状態を示す表示形態になること以外は、概ね図2(a)と同様の表示をする。
図2(b)は、LCDパネル111に表示されるタッチ描画モード時の表示例である。LCDパネル111には、カメラ部101で撮像されたスルー画像201が全画面表示されており、スルー画像201に存在する被写体の例として被写体207が写っている。画面の上部には、ビデオカメラ本体の情報である録画状態アイコン204と残バッテリ情報205がOSDで表示されている。画面上には更に、タッチボタンであるタッチ描画種別選択ボタン211、アニメーション選択ボタン212、ベイビーモード用スタンプ選択ボタン213、タッチ描画モードを抜けて通常撮影モードへ遷移する閉じるボタン214が、それぞれOSDで表示されている。なお、ベイビーモード用スタンプ選択ボタン213は、撮影モードがベイビーモードに設定されているときのみ表示される。なおタッチ描画モードでの動画記録中においても、録画状態アイコン204が録画状態を示す表示形態になること以外は、概ね図2(b)と同様の表示をする。
図2(c)は、LCDパネル111での、タッチ描画モードで描画を行っている際の表示例である。LCDパネル111には、カメラ部101で撮像されたスルー画像201が全画面表示されており、スルー画像201に存在する被写体の例として被写体207が写っている。画面の左部には、タッチ操作によって描画された重畳記録文字221がOSDで表示されている。重畳記録文字221は、ユーザーのタッチ操作の軌跡に対して描画を行ったもので、カメラ部101で撮影された被写体ではない。この重畳記録文字221のような、タッチ操作によって入力された文字や図形、又はアニメーション入力は、前述した「表示アイテム」とは異なり、カメラ部101で撮影された被写体映像とともに動画記憶部105に記録される。そのため、重畳記録文字221は再生時に映像として表示されるが、メニューボタン202といった表示アイテムは再生時には表示されない。このような、撮影された被写体映像とともに記録される、撮影された被写体では無い描画物を重畳アイテムと称する。
重畳アイテムの記録の方法として以下の2通りが考えられるが、何れを採用しても良い。1つ目は、カメラ部101で撮影された被写体映像に対して重畳アイテムをCPU107の制御に基づいて重畳し、被写体映像に対して重畳アイテムが重畳(合成)済みの映像を動画ファイルの映像として動画記憶部105に記録するアイテム重畳方法である。2つ目は、カメラ部101で撮影され、映像処理部102から出力された被写体映像は、重畳アイテムが重畳されていない状態で動画ファイルの映像として動画記憶部105に記録する。そして、重畳アイテムを示すデータと、重畳アイテムを重畳すべき動画中の位置を示す時間データ(タイムコードなど)や座標データなどの重畳アイテム関連データを動画ファイルに関連づけて記録するアイテム重畳方法である。重畳アイテムを示すデータとしては、重畳アイテムの画像データ自体や、重畳アイテムの種別を示すIDデータなどがある。重畳アイテム関連データは動画ファイルのヘッダー情報(属性情報)として記録しても良いし、動画ファイルに関連付けられた別ファイルに記録しても良い。
図2(d)は、LCDパネル111に表示される、タッチ描画モードでベイビーモード用のスタンプを描画した際の表示例である。LCDパネル111には、カメラ部101で撮像されたスルー画像201が全画面表示されており、スルー画像201に存在する被写体の例として被写体207が写っている。画面上には、ベイビーモード専用のスタンプであり、「重畳アイテム」である年齢スタンプ231、体重スタンプ232、身長スタンプ233がOSDで表示されている。なお、年齢スタンプ231は、被写体の生後からの経過時間に関する情報を表すものであれば、年齢の他、出生後の日数、出生後の月数(月齢)、子供の学年などを表すものであっても良い。
図2(e)は、LCDパネル111に表示される、ペンとスタンプの種別を選択する画面の表示例である。図2(e)は、図2(b)において、タッチ描画種別選択ボタン211がタッチされると表示される。画面上には、画面のタイトルと前の画面に戻るボタン241がOSDで表示されている。また、ツール選択として、ペンの太さを示すペン先小ボタン242、ペン先大ボタン243とスタンプの種類の示すハートボタン244、星ボタン245と、消しゴムの種類を示す消しゴム小ボタン246、消しゴム大ボタン247がOSDで表示されている。さらに、ペンやスタンプの色を選択できる色選択ボタン248と「重畳アイテム」をすべて消去するクリアボタン249が表示されている。なお、ペンを選択したときは、描画をするためのタッチ操作として、タッチダウンした点からタッチアップするまで連続的に画面をなぞると、軌跡に沿って連続した線を描画することができる。また、スタンプを選択したときは、タッチダウンした位置を基準とした位置に選択したスタンプを描くことができる。ペン、スタンプによって描画されるのは重畳アイテムである。
図2(f)は、LCDパネル111に表示される色選択画面の表示例である。この画面で、ユーザーはペンやスタンプの色を選択することができる。なお、図2(f)は、図2(e)において、色選択ボタン248がタッチされると表示される。画面上には、戻るボタン241と画面タイトルと色ボタン251がOSDで表示されている。
図2(g)は、LCDパネル111に表示されるアニメーション選択画面の表示例である。この画面で、ユーザーはアニメーションの種類を選択することができる。なお、図2(g)は、図2(b)において、アニメーション選択ボタン212がタッチされると表示される。画面上には、戻るボタン241と画面タイトルとアニメーションボタン261がOSDで表示されている。アニメーションは、重畳アイテムである。
図2(h)は、LCDパネル111に表示されるベイビーモード用スタンプ選択画面の表示例である。この画面で、ユーザーはベイビーモード用スタンプの表示・非表示を選択することができる。なお、図2(h)は、図2(b)において、ベイビーモード用スタンプ選択ボタン213がタッチされると表示される。画面上には、戻るボタン241と画面タイトルと年齢スタンプの表示設定ボタン271、身長スタンプの表示設定ボタン272、体重スタンプの表示設定ボタン273が、スルー画像201に重畳してOSDで表示されている。なお、年齢スタンプの表示設定ボタン271、身長スタンプの表示設定ボタン272、体重スタンプの表示設定ボタン273を総称して「表示設定ボタン」と称する。各表示設定ボタンは透過して表示され、各表示設定ボタンの裏に半透過でスルー画像201が視認できるように表示されるものとする。また、各表示設定ボタンはトグルボタンであり、タッチするたびに各表示設定ボタンの示すスタンプのオンとオフが切り替わる。オンにするとボタン左端の矩形に色がつき、オンとなったスタンプが映像処理部102より出力された被写体映像に重畳される。オフにするとボタンの左端の矩形の色が消え、被写体映像に重畳されていたスタンプが消去される。また、各表示設定ボタンの右横には、各スタンプの表示内容を設定できる生年月日設定ボタン274、身長設定ボタン275、体重設定ボタン276がOSDで表示される。
図2(i)は、LCDパネル111に表示される生年月日設定画面の表示例である。この画面で、ユーザーは年齢スタンプの表示設定をすることができる。なお、図2(i)は、図2(h)において、生年月日設定ボタン274がタッチされると表示される。また、ユーザーが身長設定ボタン275、体重設定ボタン276をタッチした際も同様の画面へ遷移し、ユーザーは各スタンプで表示される値の設定を行うことができる。生年月日設定画面には、戻るボタン241と画面タイトルと生年月日の年表示領域281、月表示領域282、日表示領域283と値調整ボタン284がOSDで表示されている。値調整ボタン284により生年月日の値を増減する設定を行うことができ、ここでの設定に応じて、図2(d)の年齢スタンプ231の内容が変わる。より詳しくは、ここで設定された生年月日が不揮発性メモリであるプログラム・データ記憶部108に記録される。この生年月日と、デジタルビデオカメラが備える時計(不図示)より取得される撮影時の年月日との差分をCPU107が算出することより、撮影時の年齢、月齢、生後日数などを年齢スタンプ231の表示内容とする。
図3(a)〜図3(c)を参照して、タッチ入力による描画を行った際に本実施形態に対応する動画記録装置において記録される動画遷移の一例を説明する。
図3(a)は、重畳アイテムの種別としてのペンによる描画と、ベイビーモード専用ではない通常のスタンプ(星)の描画を行った後に年齢スタンプ231を描画した場合に記録される映像の変化を表した図である。フレーム301、フレーム302、フレーム303は、記録される動画のうち、あるタイミングのフレーム画像を表現しており、時系列に並んでいる。フレーム301はタッチ入力による描画前のフレーム画像である。フレーム302は重畳アイテムの種別としてのペンでのタッチ操作によって描画された重畳アイテム(「Hello!!」の文字列)と、ベイビーモード専用ではない通常のスタンプ(星)が被写体映像に重畳された場合のフレーム画像である。フレーム303は、図2(h)において、年齢スタンプの表示設定ボタン271をオンにしたことによって年齢スタンプが更に重畳されたフレーム画像である。
図3(b)は、体重スタンプ232を重畳させてから、ベイビーモード専用ではない通常のスタンプ(星)描画した場合に記録される映像の変化を表した図である。フレーム311、フレーム312、フレーム313は、記録される動画のうち、あるタイミングのフレーム画像を表現しており、時系列に並んでいる。フレーム311はタッチ操作による描画の前のフレーム画像である。フレーム312は体重スタンプの表示設定ボタン273をオンにしたことによって体重スタンプが重畳されたフレーム画像である。フレーム313はベイビーモード専用ではない通常のスタンプ(星)がさらに重畳されたフレーム画像である。
図3(c)は、ベイビーモード用スタンプの表示・非表示設定(表示設定ボタンのオン/オフ)を連続して行った場合に記録される映像の変化を表した図である。フレーム321、フレーム322、フレーム323、フレーム324、フレーム325は、記録される動画のうち、あるタイミングのフレーム画像を表現しており、時系列に並んでいる。フレーム321はタッチ操作による描画前のフレーム画像である。フレーム322は体重スタンプの表示設定ボタン273をオンにしたことによって体重スタンプが重畳されたフレーム画像である。フレーム323は、年齢スタンプの表示設定ボタン271をオンにしたことによって年齢スタンプが更に重畳されたフレーム画像である。フレーム324はさらに身長スタンプの表示設定ボタン272をオンにしたことによって身長スタンプが重畳されたフレーム画像である。フレーム325は、年齢スタンプ231の表示設定ボタン271と体重スタンプ232の表示設定ボタン273をオフとした場合のフレーム画像である。
本実施形態では、ベイビーモードで撮影された動画であれば、動画中においてベイビーモード用のスタンプ(年齢スタンプ231、体重スタンプ232、身長スタンプ233のいずれか)が最後に押された状態のフレームを代表画像とする。そのため、図3(a)の例であればフレーム303が代表画像となる。図3(b)の例であればフレーム312が代表画像となり(フレーム313となるようにしても良い)。図3(c)の例であればフレーム324が代表画像となる。
図4(a)、図4(b)に、図3(a)〜図3(c)の例で説明したように代表画像が決定された動画を含む、LCDパネル111での動画のインデックス表示(再生時の表示である)の表示例を示す。
図4(a)に、動画コンテンツの通常のインデックス画面のLCDパネル111での表示例を示す。サムネイル401〜404はそれぞれ動画ファイルの代表画像である。サムネイル401、404は、それぞれベイビーモード以外の撮影モードで撮影された動画1、動画4の代表画像であり、それぞれ動画1、動画4の先頭フレームが代表画像として表示される。一方、サムネイル402、403はそれぞれベイビーモードで撮影された動画2、動画3の代表画像であり、それぞれ動画2、動画3におけるベイビーモード用のスタンプが重畳されたフレームが代表画像として表示される。サムネイル402、403には、ベイビーモード用のスタンプが写っているため、ユーザーはサムネイル402、403を見て、ベイビーモードで撮影された動画を表していること、及び、赤ん坊のいつ頃を撮影した動画であるのかが識別しやすい。
図4(b)に、LCDパネル111における、ベイビーアルバムでの動画のインデックス表示の表示例を示す。ベイビーアルバムでは前述のように、ベイビーモードで撮影された動画のみが表示される。すなわち、サムネイル411〜413は、いずれもベイビーモードで撮影された動画ファイルの代表画像である。なお、サムネイル411は、図4(a)におけるサムネイル402と同じ動画2の代表画像である。サムネイル412は、図4(a)におけるサムネイル403と同じ動画3の代表画像である。ユーザーはサムネイル411〜413を見て、ベイビーモードで撮影された動画を表していること、及び、赤ん坊のいつ頃を撮影した動画であるのかが識別しやすい。また、赤ん坊の成長を時系列で一覧することができ、生後どのぐらい経った時点の赤ん坊の動画を視聴したいかという観点での選択がしやすい。
図5に、図3で前述したように動画の代表画像を決める場合の、動画記録処理のフローチャートを示す。この処理は、CPU107がプログラム・データ記憶部108から読み出して、プログラムを一時記憶部103をワークメモリとして実行することによって実現される。デジタルビデオカメラが動画撮影モードで起動され、操作キー106に含まれる撮影開始ボタンが押下されると図5の処理を開始する。
S501では、CPU107は、初期設定として、代表画像の候補を管理する番号Nに初期値0を代入して一時記憶部103に記録する。
S502では、CPU107は、一時記憶部103を参照し、現在の撮影モードがベイビーモードであるか否かを判定する。ベイビーモードであると判定するとS503に進み、そうでない場合はS504に進む。
S503では、CPU107は、前述のベイビーモード用の撮影設定に設定し、カメラ部101で撮影された動画の動画記憶部105への記録を開始する。なお、記録開始前の撮影待機状態で既に重畳アイテムが重畳されていた場合は、撮影された被写体画像に対して重畳アイテムを重畳して記録を開始するとともに、Nに1を代入し、動画記録開始時のタイムコードを一時記憶部103に記憶する。なお、ベイビーモードにおいては、撮影開始ボタンの押下から特定の時間前の分から動画記憶部105への動画の記録を開始してもよい。これは、撮影開始ボタンの押下による動画記録開始前の待機状態で、一時記憶部103に現在から所定時間前までの動画を常に記録して保持しておくことで実現できる。
S504では、CPU107は、ベイビーモード用の撮影設定ではない他の撮影設定(ベイビーモード用の撮影設定と同じになる項目もある)に設定し、カメラ部101で撮影された動画の動画記憶部105への記録を開始する。なお、記録開始前の撮影待機状態で既に重畳アイテムが重畳されていた場合は、撮影された被写体画像に対して重畳アイテムを重畳して記録を開始するとともに、Nに1を代入し、動画記録開始時のタイムコードを一時記憶部103に記憶する。
S505では、CPU107は、撮影開始ボタンが再度押下されるなどの、動画記録停止のイベントを取得したか否かを判定する。動画記録停止のイベントを取得したのであればS515に進み、そうでない場合はS506に進む。
S506では、CPU107は、一時記憶部103を参照し、現在の撮影モードがベイビーモードであるか否かを判定する。ベイビーモードであると判定するとS507に進み、そうでない場合はS511に進む。
S507では、CPU107は、ベイビーモード用のスタンプが押されたか否かを判定する。つまり、図2(h)でベイビーモード用スタンプ選択画面が表示された状態で、年齢スタンプの表示設定ボタン271、身長スタンプの表示設定ボタン272、体重スタンプの表示設定ボタン273の何れかがタッチされてオンとなったか否かの判定である。ベイビーモード用のスタンプが押されたと判定するとS508に進み、そうでない場合はS505に進む。
S508では、CPU107は、オンとなった重畳アイテム(ベイビーモード用のスタンプ)の描画処理を行う。すなわちスルー画像にベイビーモード用のスタンプを重畳し、また、カメラ部101で撮影された被写体画像の動画にベイビーモード用のスタンプを重畳した状態で記録する。なお、前述のように、カメラ部101で撮影された被写体画像の動画とベイビーモード用のスタンプを重畳せずに別々に記録して、関連付けを行う処理としても良い。なお、ベイビーモード用のスタンプがオンとなると、最初は前回スタンプを置いた位置に描画される。また、初期描画の際はデフォルトの位置に描画される。さらに、ユーザーはタッチムーブ操作によりスタンプの表示位置を変更することができる。
S509では、CPU107は、番号Nのインクリメントを行う。
S510では、CPU107は、N番目の代表画像候補として、現在のタイムコードを一時記憶部103に記録する。なお、本実施例では一時記憶部103(RAM上)に情報を展開する例を説明したが、独自管理リストを用意してタイムコードのリストを動画コンテンツとともに動画記憶部105に記憶してもよい。また、ベイビーモード用のスタンプが新たに押された場合(S507でYesとなる場合)に限らず、描画済みのベイビーモード用のスタンプの位置がタッチムーブによって移動された場合にもS509、S510の処理を行ってもよい。このようにすればベイビーモード用のスタンプの移動後のフレームで代表画像候補を更新できる。
一方S511では、CPU107は、重畳アイテムを変化させる指示があったか否かを判定する。ここではベイビーモードではないので、ベイビーモード専用ではない重畳アイテム(ペンや、星のスタンプ、アニメーションなど)を新たに描画するタッチ操作があったか否かの判定となる。重畳アイテムを新たに描画するタッチ操作があったと判定するとS512に進み、そうでない場合はS505に進む。
S512では、CPU107は、描画を指示された重畳アイテムの描画処理を行う。詳細はS508と同様である。
S513では、CPU107は、番号Nのインクリメントを行う。
S514では、CPU107は、N番目の代表画像候補として、現在のタイムコードを一時記憶部103に記録する。
一方、動画記録停止イベントがあった場合には、S515に進み、CPU107は動画記録を停止し、記録した動画の動画ファイルのクローズ処理を開始する。
S516では、CPU107は、一時記憶部103に記録された番号Nの現在の値(N番目)の代表画像候補のタイムコードが示すフレーム画像を、この撮影で撮影された動画の代表画像として登録する。登録の方法としては、以下のいずれでもよい。
・N番目のタイムコードが示すフレーム画像を動画データから抽出し、必要に応じてリサイズ、圧縮して静止画像データとして動画ファイルのヘッダ部に記録する。
・N番目のタイムコードが示す動画のフレーム画像を抽出し、必要に応じてリサイズ、圧縮して静止画像データとして動画ファイルに関連づけて他のファイルに記録する。
・N番目のタイムコード(あるいはそのタイムコードが示すフレーム画像を特定できる他の情報)を動画ファイルのヘッダ部に記録する。
・N番目のタイムコード(あるいはそのタイムコードが示すフレーム画像を特定できる他の情報)を動画ファイルに関連づけて該動画ファイルとは別に記録する。
以上説明した実施例1によれば、重畳アイテムの重畳状態の変化に応じて、代表画像の候補となるフレームを記録する。そして、ベイビーモード用のスタンプが重畳されたフレーム画像があるのであれば、ベイビーモード用のスタンプが重畳されたフレーム画像がその動画の代表画像として登録される。そのため、ベイビーモードで撮影されベイビーモード用のスタンプが押された動画を再生すると図4(a)や図4(b)で例示したような画面が表示される。これにより、ユーザーは動画の内容を把握するのに有益な情報(例えば、ベイビーモードで撮影されたことや、赤ん坊の成長具合など)を代表画像から識別することが可能となる。また、S511〜S514で説明したように、ベイビーモードでない場合には、その他の重畳アイテムが重畳されたフレーム画像を動画の代表画像とする。ベイビーモードでないにせよ、ユーザーがタッチ操作で重畳アイテムを描画した場合には、重畳アイテムが重畳されたフレームがその動画にとって印象深いシーンである可能性が高い。従って、ベイビーモードでない場合、その他の重畳アイテムが重畳されたフレーム画像を動画の代表画像とすることで、代表画像を見た際の動画の識別性を向上させることができる。なお、ベイビーモードであればその他の重畳アイテム(通常の重畳アイテム)よりも、ベイビーモード用の重畳アイテムの方がユーザーにとって印象深いものである可能性が高い。そのため、ベイビーモード用の重畳アイテムが重畳されたフレーム画像を、通常の重畳アイテムが重畳されたフレーム画像よりも優先して代表画像としている。
なお、上記実施形態では、N番目、すなわち最後に重畳アイテムが重畳された時点のフレーム動画を代表画像としたが、その他の代表画像候補のフレーム画像を代表画像としてもよい。例えば、N=1番目のタイムコードが示すフレーム画像を代表画像とすれば、最初にベイビーモード用のスタンプが押された時点のフレーム画像(図3(c)の例だとフレーム322)を代表画像とすることができる。
また、ベイビーモード用のスタンプが押されたかどうかをカウントする番号Nとは別途に、その他の重畳アイテムが描画されたかどうかをカウントする番号Mを保持し、番号Nが最大となった期間の中で番号Mが最大となったフレーム画像を代表画像としてもよい。このようにすることで、ベイビーモード用のスタンプが重畳されている期間の中でも、通常の重畳アイテムが最も多く重畳されたフレーム画像(図3(b)の例だとフレーム313)を代表画像とすることができる。
さらに、ベイビーモードの場合に番号Nに関連付けるタイムコードは、ベイビーモード用の重畳アイテムが押下されたタイミングに限るものでは無く、ベイビーモード用の重畳アイテムが重畳されている期間内であればよい。例えば、番号Nをインクリメントするタイミングを、ベイビーモード用の重畳アイテムがオフとされたタイミングとし、関連付けて一時記憶部103に記録するタイムコードを、ベイビーモード用の重畳アイテムがオフとされた直前のタイムコードとしても良い。
<実施例2>
実施例2では、1つの動画について、表示する状況に応じて複数の異なる代表画像のいずれかを表示する例を説明する。
図1〜図3で説明した本体構成、タッチ描画の操作、ベイビーモード時のスタンプ操作の動画遷移等は、実施実施例1と同様である。
図6に、実施例2での動画の代表画像の登録方法を用いた場合の、動画記録処理のフローチャートを示す。この処理は、CPU107がプログラム・データ記憶部108から読み出して、プログラムを一時記憶部103をワークメモリとして実行することによって実現される。デジタルビデオカメラが動画撮影モードで起動され、操作キー106に含まれる撮影開始ボタンが押下されると図6の処理を開始する。
S601〜S605の処理は、前述した図5のS501〜S505と同様の処理なので説明を省略する。
S606では、CPU107は、現在の撮影モードがベイビーモードであるか否かに関わらず、ベイビーモード用の重畳アイテムと通常の重畳アイテムを含めて、重畳アイテムを変化させる指示があったか否かを判定する。重畳アイテムを新たに描画するタッチ操作があったと判定するとS607に進み、そうでない場合はS605に進む。
S607では、CPU107は、描画を指示された重畳アイテムの描画処理を行う。
S608はで、CPU107は、番号Nのインクリメントを行う。
S609では、CPU107は、N番目の代表画像候補として、現在のタイムコードとともに、S607で行った描画での重畳アイテムの種別を関連付けて一時記憶部103に用意した独自管理リストに追記で記録する。独自管理リストには、Nの各番号における代表画像候補となるフレーム画像のタイムコードと、重畳アイテムの種類の情報が関連付けて記述されている。なお、独自管理リストは、一時記憶部103ではなくプログラム・データ記憶部108、あるいは動画記憶部105に容易するものとしても良い。
S610、S611の処理は、前述した図5のS515,S516の処理と同様なので説明を省略する。なお実施例2では、ベイビーモード用のスタンプが重畳された期間がある動画であっても、1枚登録される代表画像は必ずしもベイビーモード用のスタンプが重畳されたフレーム画像とはならない。
S612では、一時記憶部103に保持していた独自管理リストをプログラム・データ記憶部108、あるいは動画記憶部105に、S5610,S611で生成された動画ファイルと関連づけて記録する。関連づけて記録する方法としては、独自管理リスト自体をメタデータとして動画ファイル内に記録しても良いし、別ファイルとして動画ファイルに関連づけて記録しても良い。
図7に、実施例2での動画の動画の代表画像表示処理のフローチャートを示す。この処理は、CPU107がプログラム・データ記憶部108から読み出して、プログラムを一時記憶部103をワークメモリとして実行することによって実現される。デジタルビデオカメラが再生モードで起動され、動画の代表画像を表示する画面(例えば前述のインデックス画面)を表示する指示があり、ある動画の代表画像を表示する際に図7の処理を開始する。すなわち、各動画ファイル毎に図7の処理を行って代表画像を表示する。
S701では、CPU107は、現在代表画像を表示しようとしている画面が、ベイビーモード用のインデックス画面かどうかを判定する。ベイビーモード用にインデックス画面であればS702に進み、そうで内場合はS704に進む。
S702では、CPU107は、代表画像を表示しようとしている動画ファイルに関連づけられた独自管理リストを参照して、重畳アイテムの種類にベイビーモード用のスタンプがあるかどうかを判定する。ベイビーモード用のスタンプがある場合はS703に進み、独自管理リストにベイビーモード用のスタンプが無い場合、及び独自管理リストが関連づけられていない場合にはS704に進む。
S703では、CPU107は、独自管理リストに記録されている代表画像候補のうち、関連づけられた重畳アイテムの種別がベイビーモード用のスタンプである代表画像候補が示すタイムコードのフレーム画像を取得する。そして取得したフレーム画像をデコードして代表画像としてLCDパネル111に表示する。ベイビーモード用のスタンプが押された代表画像候補が複数有る場合には、実施例1で説明した理由と同様に、複数のベイビーモード用のスタンプが押された代表画像候補のうち、動画中で最後のものを代表画像とするのが好ましいが、これに限るものではない。
S704では、CPU107は、動画ファイルに代表画像が関連づけて記録されているか否かを判定する。前述した図6のS611で記録された代表画像があるか否かの判定である。動画ファイルに代表画像が関連づけて記録されている場合はS705に進み、そうでない場合はS706に進む。
S705では、CPU107は、動画ファイルに関連づけられた代表画像をデコードしてLCDパネル111に表示する。前述した図6の処理によって生成された動画ファイルであれば、代表画像は、その動画の中で最後になんらかの重畳アイテムが重畳されたフレーム画像となり、ユーザーにとって動画ファイルの識別性が高いものとなる。
一方、動画ファイルに、CPU107が取得できる代表画像が関連づけられて以内場合には、S706で、CPU107は、表示しようとしている動画ファイルに関連づけられた管理リスト参照する。そして、管理リストに記録された代表画像候補に、何らかの重畳アイテムの種類が関連づけられた候補があるか否かを判定する。何らかの重畳アイテムの種類が関連づけられた候補がある場合にはS707に進み、そうでない場合、すなわち重畳アイテムが関連づけられた代表画像候補がない、あるいは管理リスト自体が無い場合にはS708に進む。
S707では、CPU107は、重畳アイテムが重畳された代表画像候補が示すタイムコードに対応するフレーム画像をデコードして、代表画像としてLCDパネル111に表示する。重畳アイテムが重畳された代表画像候補が複数有る場合には最後のものとするのが好ましい。
S708では、CPU107は、撮影開始のタイムコードに対応するフレーム画像をデコードして、代表画像としてLCDパネル111に表示する。つまり、重畳アイテムがない場合は、記録開始時のフレームを代表画像とする。
図7の処理は、表示すべき代表画像の枚数分だけ繰り返し行う。
以上のように、独自管理リストの内容を参照して代表画像の表示を行うことで、図4(b)で説明したベイビーアルバムでのインデックス画面において、ベイビーモード用のスタンプが重畳されたフレーム画像を代表画像として表示をすることができる。
また、独自管理リストに重畳アイテムの種類が格納されているため、S701〜S703で判断する種類を変更することで、表示する画面に合わせた特定の種類の重畳アイテムが重畳されたフレーム画像を代表画像として表示することができる。例えば、ベイビーアルバムでのインデックス表示の表示モードの1つとして、「年齢スタンプビュー」を設けることを考える。この場合、S701の判定を、ベイビーアルバムでの「年齢スタンプビュー」であるか?の判定とする。また、S702の判定を、重畳アイテムの種類に年齢スタンプがあるか?の判定とする。そして、S703の処理として、独自管理リストに記録されている代表画像候補のうち、関連づけられた重畳アイテムの種別が年齢スタンプである代表画像候補が示すタイムコードのフレーム画像をデコードして代表画像としてLCDパネル111に表示する。このようにすることで、ベイビーモードで撮影された動画について、年齢スタンプが重畳されたフレーム画像に絞り込んだた一覧画面を表示することができる。
図8に、LCDパネル111に表示される年齢スタンプビューの表示例を示す。サムネイル801〜803は、前述した図4(b)で表示されるサムネイル411〜413と同じく、それぞれ動画2,動画3,動画5を表す代表画像である。しかし動画2,動画3について表示される代表画像は図4(b)の時とは異なり、年齢スタンプが押された状態のフレーム画像となっている。このように表示することで、ユーザーは年齢という同一の観点で複数の動画の代表画像を比較することができ、所望の動画を選択しやすくなる。
なお、図6のS608では、現在の撮影モードがベイビーモードであるか否かに関わらず、重畳アイテムを新たに描画するタッチ操作があった場合にNをインクリメントする例を説明したがこれに限るものではない。実施例1のように、現在の撮影モードがベイビーモードであるかどうかに応じて、ベイビーモードである場合にはベイビーモード用のスタンプが押された場合だけNをインクリメントするように制御しても良い。
以上説明した各実施例によれば、複数の重畳アイテムのうちでも、特にユーザーの印象が強いと考えられる特定の重畳アイテムが重畳されたフレーム画像を代表画像とするため、動画の代表画像によってより動画の内容を識別しやすくすることができる。
なお、実施例1と実施例2では、動画の撮影時の記録処理について説明したが、撮影時に限らず、動画の記録時に重畳アイテムを動画に重畳させることのできる動画記録時であれば、本発明を適用可能である。例えば、図5,図6の処理は、動画の変換記録時の重畳記録にも適用可能である。動画の変換記録時とは例えば、AVCHDで撮影した動画コンテンツをMP4の動画コンテンツに変換して記録する処理を開始し、その間にMP4の動画コンテンツに重畳アイテムを重畳する場合がある。なお,撮影モード中の制御ではないため、現在設定されている撮影モードに関わらず、変換中の動画がベイビーモードで撮影された動画である場合にベイビーモード用のスタンプが使用できるようになるものとする。そして、変換中の動画がベイビーモードで撮影された動画である場合に、代表画像候補をベイビーモード用のスタンプが押されたフレーム画像を優先するものとする。
上述の各実施例においては、ユーザーの印象が強いであろう重畳アイテムとして、ベイビーモードではベイビーモード用のスタンプを例にあげたが、これに限られるものではない。例えば、撮影モードとして旅行モードや風景モードがあった場合に、旅行モードや風景モード用のスタンプとして道標スタンプや地図スタンプ、ランドマークスタンプ等が考えられる。従ってデジタルビデオカメラの動作モードに応じて代表画像として優先すべき重畳アイテムの種別を変える。すなわち、撮影モードがベイビーモードではなく旅行モードあるいは風景モードであった場合には、旅行モードや風景モード用のスタンプが押されたフレーム画像を優先して代表画像にするように制御しても良い。
なお、CPU107の制御は1つのハードウェアが行ってもよいし、複数のハードウェアが処理を分担することで、装置全体の制御を行ってもよい。
また、本発明をその好適な実施形態に基づいて詳述してきたが、本発明はこれら特定の実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の様々な形態も本発明に含まれる。さらに、上述した各実施形態は本発明の一実施形態を示すものにすぎず、各実施形態を適宜組み合わせることも可能である。
また、上述した実施形態においては、本発明をデジタルビデオカメラに適用した場合を例にして説明したが、これはこの例に限定されず、動画を記録することのできるである動画記録装置であれば適用可能である。すなわち、本発明はパーソナルコンピュータやPDA、携帯電話端末、各種の動画レコーダーに適用可能である。。
(他の実施形態)
本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)をネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(又はCPUやMPU等)がプログラムコードを読み出して実行する処理である。この場合、そのプログラム、及び該プログラムを記憶した記憶媒体は本発明を構成することになる。