<実施例1>
以下、本発明の実施例1について説明する。図1は、本実施例に係る情報処理装置100の構成例を示すブロック図である。情報処理装置100としては、画像再生装置(ハードディスクレコーダ、ブルーレイレコーダ、ブルーレイプレーヤ、等)、PC(パーソナルコンピュータ)、携帯端末(スマートフォン、タブレットデバイス、携帯型のメディアプレーヤ、等)、画像表示装置(液晶表示装置、有機EL表示装置、プラズマ表示装置、
MEMSシャッター方式ディスプレイ装置、等)、サーバ、等を使用することができる。
情報処理装置100は、CPU(Central Processing Unit)101、RAM(Random Access Memory)102、ROM(Read Only Memory)103、操作部104、表示部105、通信部106、二次記憶部107、及び、バス108を有する。
CPU101は、CPU101に入力された信号、後述のプログラム、等に従って種々の処理を行うことにより、情報処理装置100の動作を制御する制御部である。なお、制御部として、1つのハードウェアが使用されてもよいし、複数のハードウェアが使用されてもよい。複数のハードウェアが処理を分担して実行することにより、情報処理装置100の動作が制御されてもよい。
RAM102は、種々のデータを一時的に記憶する記憶部である。RAM102は、例えば、CPU101の処理のために使用される。ROM103は、種々のデータを非一時的に記憶する記憶部である。ROM103は、例えば、情報処理装置100で使用される種々のプログラム(情報処理装置100の起動プログラム(BIOS)など)を記憶する。情報処理装置100の起動時に、CPU101は、起動プログラムをROM103から読み出し、読み出した起動プログラムをRAM102に書き込む。そして、CPU101は、RAM102に書き込まれた起動プログラムを実行する。
操作部104は、情報処理装置100に対するユーザ操作を受け付ける。操作部104は、ユーザ操作に応じた操作信号をCPU101に出力する。そして、CPU101は、操作信号に応じた処理を行う。即ち、CPU101は、情報処理装置100に対するユーザ操作に応じた処理を行う。操作部104として、例えば、物理的なボタン、タッチパネル、キーボード、マウス、等の入力デバイスを使用することができる。また、操作部104として、情報処理装置100とは別体の入力デバイスを使用することもできる。情報処理装置100とは別体の入力デバイスとして、例えば、キーボード、マウス、リモコン、等を使用することができる。情報処理装置100は、入力デバイスを用いたユーザ操作に応じた電気信号を受信する機能を有していればよい。
表示部105は、画面に画像を表示する。表示部105は、画像データに基づく画像の表示、対話的な操作のためのグラフィック画像(GUI(Graphical User
Interface)画像;文字、アイコン、等)の表示、等を行う。表示部105として、例えば、液晶表示パネル、有機EL表示パネル、プラズマ表示パネル、MEMSシャッター方式表示パネル、等を使用することができる。表示部105は、タッチパネルを備えたタッチモニタであってもよいし、そうでなくてもよい。なお、表示部105として、情報処理装置100とは別体の画像表示装置が使用されてもよい。情報処理装置100は、表示部105の表示を制御する機能を有していればよい。
通信部106は、情報処理装置100を外部装置に接続し、情報処理装置100と外部装置の間の通信(制御コマンド、画像データ、等のデータの送受信)を行う。なお、通信部106は、USB(Universal Serial Bus)ケーブルなどのケーブルを用いて情報処理装置100を外部装置に接続してもよい。通信部106は、無線LANなどを用いて情報処理装置100を外部装置に無線で接続してもよい。情報処理装置100は、外部装置に直接接続されてもよいし、インターネットなどのネットワーク、サーバ、等を介して外部装置に接続されてもよい。
二次記憶部107は、種々のデータを記憶可能な記憶部である。例えば、二次記憶部107には、情報処理装置100の制御プログラム(情報処理装置100で動作するアプリ
ケーションのプログラムなど)が記録される。ユーザが制御部プログラムの実行を指示すると、CPU101は、制御プログラムを二次記憶部107から読み出し、読み出した制御プログラムをRAM102に書き込む。そして、CPU101は、RAM102に書き込まれた制御プログラムを実行する。二次記憶部107としては、半導体メモリ(メモリカード)、磁気ディスク(ハードディスク)、光ディスク(CD、DVD、ブルーレイディスク)、等を使用することができる。なお、二次記憶部107は、情報処理装置100に対して着脱可能な記憶部であってもよいし、情報処理装置100に内蔵された記憶部であってもよい。情報処理装置100は、二次記憶部107にアクセスし、二次記憶部107に対するデータの読み書き、二次記憶部107が記憶しているデータの削除、等を行う機能を有していればよい。
バス108は、CPU101、RAM102、ROM103、操作部104、表示部105、及び、通信部106の間のデータの送受信に使用される。
ユーザは、デジタルビデオカメラなどの撮影装置(不図示)を使用して、各フレームの画像データがRAWデータであるRAW動画(第1の動画)を撮影する。その後、情報処理装置100を撮影装置に接続する指示をユーザが行うと、CPU101は、二次記憶部107から通信プログラムを読み出し、読み出した通信プログラムをRAM102に書き込む。そして、CPU101は、RAM102に書き込まれた通信プログラムを実行する。それにより、以下の処理が行われる。
まず、情報処理装置100と撮影装置の間の接続が確立する。次に、CPU101は、通信部106を介して撮影装置に、RAW動画(RAW動画データ)の送信を指示する。それにより、撮影装置から情報処理装置100へRAW動画が送信される。そして、CPU101は、撮影装置から送信されたRAW動画を、通信部106を介して受信し、受信したRAW動画を、動画ファイルとして二次記憶部107に記録する。
なお、第1の動画は、撮影によって得られた動画に限られない。例えば、第1の動画は、放送用コンテンツ(放送番組、CM(コマーシャルメッセージ)、等)の動画であってもよいし、CG(コンピュータグラフィック)動画であってもよいし、アニメーションの動画であってもよい。また、第1の動画はRAW動画に限られない。例えば、第1の動画は、現像処理が施された後の動画であってもよい。
図2は、RAW動画のファイル構成例を示す図である。RAW動画の動画ファイル201は、動画ヘッダ部202とフレーム部203を有する。動画ファイル201は、RAW動画のフレーム数と同じ数のフレーム部203を有する。動画ヘッダ部202には、動画ファイル201全体のデータサイズ、RAW動画のフレームレート、等が記録されている。1つのフレーム部203には、RAW動画の1つのフレームに関するデータが記録されている。なお、動画ヘッダ部202に、RAW動画の所定のフレーム(最初のフレーム、最後のフレーム、等)の撮影日時、RAW動画の撮影に用いた撮影装置の情報(撮影装置のメーカー名、撮影装置のモデル名、等)、等が記録されてもよい。
フレーム部203は、フレームヘッダ部204とRAWデータ部205を有する。フレームヘッダ部204には、フレームの撮影日時、フレームの撮影に用いた撮影装置の情報(撮影装置のメーカー名、撮影装置のモデル名、等)、フレームの撮影に用いた撮影パラメータ(シャッタースピード、F値、等)、フレームを識別する識別情報(フレームID)、等が記録されている。RAWデータ部205には、RAWデータが記録されている。また、フレームヘッダ部204には、RAWデータを現像して得られた画像(画像データ)206が記録されている。画像206のデータフォーマットは特に限定されないが、本実施例では、画像206として、JPEG形式の画像が記録されているものとする。以後
、画像206を「内蔵JPEG画像」と記載する。
図3は、情報処理装置100で動作する処理アプリケーションのウィンドウ(GUI画像)301の一例を示す。CPU101が処理アプリケーションを実行することにより、ウィンドウ301が表示部105に表示される。CPU101は、処理アプリケーションを実行することにより、RAW動画の少なくとも一部のシーンに対する処理を行うことができる。具体的には、CPU101は、ユーザによって指定されたシーンである指定シーンを動画から選択する。そして、CPU101は、指定シーンに対応するRAW動画のシーンである対応シーンに対する処理を行う。本実施例では、RAW動画から指定シーンが選択される。そのため、指定シーンは対応シーンと一致する。そして、対応シーンに対する処理として、対応シーンの画像である対応画像をRAW動画から生成する生成処理が行われる。本実施例では、生成処理は現像処理を含む。そのため、対応画像として、現像処理後の画像が得られる。また、指定シーンのフレーム数は特に限定されないが、本実施例では、指定シーンとして1つのフレームが選択される。そのため、上述した生成処理により、1枚の静止画が得られる。対応画像のデータフォーマットは特に限定されないが、本実施例では、対応画像として、JPEG形式の静止画が得られるとする。以後、対応画像を「対応JPEG画像」と記載する。
ウィンドウ301には、選択画像302、サムネイルリスト303、スクロールバー304、前ボタン305、後ボタン306、パラメータ調整部307、及び、現像ボタン308が配置されている。サムネイルリスト303では、RAW動画の複数のフレームのサムネイル画像が、時系列順に左から右へ並べられている。CPU101は、サムネイルリスト303において中央に配置されているフレームを選択し、選択したフレームの画像を選択画像302として表示する制御を行う。ユーザがスクロールバー304を動かすと、CPU101は、サムネイルリスト303として並べられた複数のサムネイル画像を左右にスクロールする。その結果、サムネイル画像や選択画像302として表示されるフレームが変更される。また、ユーザが前ボタン305を押下すると、CPU101は、選択画像302のフレームを1つ前のフレームに変更する。同様に、ユーザが後ボタン306を押下すると、CPU101は、選択画像302のフレームを1つ後のフレームに変更する。また、ユーザがパラメータ調整部307を操作すると、CPU101は、現像処理に使用するパラメータ(現像パラメータ)を変更する。現像パラメータの種類は限定されないが、図3の例では、明るさ、コントラスト、及び、シャープネスを個別に調整することができる。そして、ユーザが現像ボタン308を押下すると、CPU101は、選択画像302のフレームを指定シーンとして選択し、選択したフレーム(指定シーン)のRAWデータに対し、現在設定されている現像パラメータを用いた現像処理を施す。その結果、対応JPEG画像が得られる。そして、CPU101は、対応JPEG画像を、二次記憶部107に記録する。
なお、処理アプリケーションのGUI画像は上記GUI画像に限られないし、対応シーンに対する処理は上記処理に限られない。例えば、対応シーンに対する処理として、対応シーンの特徴を示す特徴情報をRAW動画から生成する処理が行われてもよい。特徴情報は、例えば、対応シーンの明るさに関する情報、対応シーンの色に関する情報、対応シーンにおける画像の動きの大きさに関する情報、対応シーンに存在する物体に関する情報、等である。対応シーンに対する処理として、現像処理が行われずに、対応シーンの画像をRAW動画から抽出する処理が行われてもよい。その場合、対応画像として、現像処理前の画像(RAW動画と同じデータフォーマットの画像)が得られる。
次に、本実施例に係る処理アプリケーションの動作について、図4(A)のフローチャートを用いて説明する。図4(A)のフローチャートは、例えば、処理アプリケーションが起動したタイミングで開始される。
まず、S401にて、CPU101は、RAW動画の最初のフレームを選択表示フレームとして選択する。選択表示フレームは、選択画像302として表示されるフレームである。次に、S402にて、CUP101は、選択画像表示処理を行う。それにより、S401で選択された選択表示フレームの画像が選択画像302として表示されるように、ウィンドウ301が更新される。選択画像表示処理の詳細は図4(B)を用いて後述するが、本実施例では、選択画像表示処理において、簡易現像処理が行われる。簡易現像処理は、時間を要する一部の工程(ノイズリダクションなど)を省略した現像処理である。そして、S403にて、CPU101は、ユーザ操作を待つ。ユーザ操作が行われるまでS403の処理が繰り返され、ユーザ操作が行われるとS404に処理が進められる。
S404にて、CPU101は、S403において行われたユーザ操作が前ボタン305の押下、後ボタン306の押下、及び、現像ボタン308の押下のどれであるかを判断する。前ボタン305が押下された場合にはS405に処理が進められ、後ボタン306が押下された場合にはS408に処理が進められ、現像ボタン308が押下された場合にはS411に処理が進められる。
S405にて、CPU101は、選択表示フレームがRAW動画の最初のフレームであるか否かを判断する。選択表示フレームがRAW動画の最初のフレームである場合には、S403に処理が戻される。選択表示フレームがRAW動画の最初のフレームでない場合には、S406に処理が進められる。S406にて、CPU101は、1つ前のフレームに選択表示フレームを更新する。S406の次に、S407にて、CUP101は、選択画像表示処理を行う。それにより、S406で選択された選択表示フレーム(更新後の選択表示フレーム)の画像が選択画像302として表示されるように、ウィンドウ301が更新される。そして、S407からS403へ処理が戻される。
S408にて、CPU101は、選択表示フレームがRAW動画の最後のフレームであるか否かを判断する。選択表示フレームがRAW動画の最後のフレームである場合には、S403に処理が戻される。選択表示フレームがRAW動画の最後のフレームでない場合には、S409に処理が進められる。S409にて、CPU101は、1つ後のフレームに選択表示フレームを更新する。S409の次に、S410にて、CUP101は、選択画像表示処理を行う。それにより、S409で選択された選択表示フレーム(更新後の選択表示フレーム)の画像が選択画像302として表示されるように、ウィンドウ301が更新される。そして、S410からS403へ処理が戻される。
S411にて、CPU101は、選択表示フレームを指定シーン(対応シーン)のフレームとして選択し、選択表示フレームのRAWデータに本現像処理を施す。本現像処理は、全ての工程を含む現像処理である。次に、S412にて、CPU101は、データフォーマットをJPEG形式に変換するフォーマット変換処理をS411の現像処理結果に施すことにより、対応JPEG画像を生成する。そして、S413にて、CPU101は、S412において生成された対応JPEG画像を、静止画ファイルとして二次記憶部107に記録する。次に、S414にて、CPU101は、S411において選択された指定シーンを示す第1のシーン情報を二次記憶部107に記録する。具体的には、CPU101は、二次記憶部107に記録されたデータベースに、第1のシーン情報を追加する(データベースの更新)。そして、S403に処理が戻される。データベースには、情報処理装置100で動作する任意のアプリケーションからアクセスすることができる。
次に、選択画像表示処理(S402、S407、及び、S410)の詳細について、図4(B)のフローチャートを用いて説明する。まず、S451にて、CPU101は、選択表示フレームのデータを図2の動画ファイル201などから取得する。具体的には、選
択表示フレームの内蔵JPEG画像がフレームヘッダ部204から取得され、選択表示フレームのRAWデータがRAWデータ部205から取得される。次に、S452にて、CPU101は、S451において取得された内蔵JPEG画像に選択画像302を更新する。そして、S453にて、CPU101は、スクロールバー304を更新する。次に、S454にて、CPU101は、サムネイルリスト303を更新する。そして、S455にて、CPU101は、現在設定されている現像パラメータを取得する。次に、S456にて、CPU101は、S455において取得された現像パラメータを用いた簡易現像処理を、S451において取得されたRAWデータに施す。そして、S457にて、CPU101は、内蔵JPEG画像から簡易現像処理の結果に、選択画像302を更新する。なお、S453とS454の処理は、S407とS410の選択画像表示処理で行われ、S402の選択画像表示処理では行われない。
図5は、S414で使用したデータベースのスキーマ構成例を示す。本実施例に係るデータベースは、S411の本現像処理が施されたフレームについて、現像マーカーID501、フレームID502、及び、JPEGファイルパス503の組み合わせを、第1のシーン情報として含む。現像マーカーIDは、後述する現像マーカーを識別する識別情報である。現像マーカーID501の値は、例えば、他の現像マーカーID501の値と重複しないように自動的に決定される。フレームID502は、本現像処理が施されたフレームを識別する識別情報である。JPEGファイルパス503は、対応JPEG画像(本現像処理が施された後の画像)の保存先を示すファイルパスである。本現像処理が行われる度に、現像マーカーID501、フレームID502、及び、JPEGファイルパス503の組み合わせが追加される。
図6は、情報処理装置100で動作する再生アプリケーションのウィンドウ(GUI画像)601の一例を示す。CPU101が再生アプリケーションを実行することにより、ウィンドウ601が表示部105に表示される。CPU101は、再生アプリケーションを実行することにより、RAW動画を再生する再生制御を行うことができる。また、動画を再生する再生制御の実行時に、CPU101は、第1のシーン情報によって示されたシーンに対応する当該動画のシーンを示す第2のシーン情報を表示する第1の表示制御をさらに行う。
ウィンドウ601には、RAW動画602、トグルボタン603、スライダーバー604、及び、現像マーカー605〜607が配置されている。ユーザがトグルボタン603を押下する度に、CPU101は、RAW動画602の状態を再生状態と停止状態の間で切り替える。スライダーバー604は、RAW動画602のスライダーバーであり、現在再生されているフレームがRAW動画のどのフレームであるかを示す。3つの現像マーカー605〜607のそれぞれは、第2のシーン情報であり、スライダーバー604と協同して対応シーンを示す。具体的には、三角形の現像マーカーの頂点(スライダーバー604側の頂点)により、対応シーンのフレームに対応する位置(スライダーバー604内の位置)が示されている。現像マーカー605〜607が表示されることにより、RAW動画602のどのフレームが本現像処理を行ったことのあるフレームであるかを、ユーザが容易に把握することができる。その結果、情報処理装置100の利便性を向上したり、作業の効率化を図ったりすることができる。
なお、再生アプリケーションのGUI画像は上記GUI画像に限られないし、第2のシーン情報はマーカー(現像マーカー)に限られない。例えば、第2のシーン情報として、対応シーンの時間位置を示すタイムコードが表示されてもよい。
本実施例に係るマーカー表示処理(現像マーカーを表示する処理;第1の表示制御)について、図7のフローチャートを用いて説明する。図7のフローチャートは、例えば、再
生アプリケーションが起動したタイミングで開始される。
まず、S701にて、CPU101は、データベースからフレームIDのリストを取得する。本実施例では、フレームIDのリストだけでなく、現像マーカーIDのリストも取得される。そして、CPU101は、S701において取得されたリストの最初のフレームIDから最後のフレームIDまで、フレームIDを順に選択しながら、S702の処理を繰り返し行う。S702にて、CPU101は、選択したフレームIDに対応する位置に現像マーカーを表示する制御を行う。それにより、選択されたフレームIDに対応するフレームが、表示された現像マーカーによって示される。本実施例では、CPU101は、表示した現像マーカーに対して、選択したフレームIDに対応する現像マーカーIDを関連付ける。S701において取得された全てのフレームIDについてS702の処理が行われると、S703の処理が行われる。S703にて、CPU101は、ユーザからの指示に応じた再生制御を行う。例えば、S703にて、再生位置の変更、再生の開始、再生の停止、等が行われる。S703の処理は、従来の動画再生アプリケーションで行われる処理と同様であるため、その詳細な説明は省略する。
図8は、ユーザが現像マーカーを指定した場合に表示されるウィンドウ(GUI画像)802の一例を示す。ユーザが現像マーカーを指定すると、CPU101は、ウィンドウ802を表示部105に表示する第2の表示制御を行う。また、CPU101は、ユーザが移動させることのできるカーソルを表示部105に表示する表示制御をさらに行う。この表示制御は、例えば、情報処理装置100の起動時に行われる。図8では、上記カーソルとして、マウス操作に応じて移動するマウスカーソル801が示されている。例えば、ユーザがマウスカーソル801を現像マーカーの位置に移動させてマウスをクリックすると、当該現像マーカーが指定され、ウィンドウ802が表示される。ウィンドウ802には、指定された現像マーカーに対応するフレームの対応JPEG画像803が配置されている。この機能により、ユーザは、任意のタイミングで、かつて現像したことがあるフレームの対応JPEG画像を確認することができる。その結果、情報処理装置100の利便性をより向上したり、作業のさらなる効率化を図ったりすることができる。ウィンドウ802に配置されたボタン804をユーザが押下すると、CPU101は、ウィンドウ802を閉じる(消去する)処理を行う。
本実施例に係るJPEG表示処理(対応JPEG画像を表示する処理;第2の表示制御)について、図9のフローチャートを用いて説明する。図9のフローチャートは、例えば、図6のウィンドウ601が表示されたタイミングで開始される。まず、S901にて、現像マーカーがユーザによって指定されたか否かを、CPU101が判断する。現像マーカーが指定されるまでS901の処理が繰り返され、現像マーカーが指定されるとS902に処理が進められる。S902にて、CPU101は、指定された現像マーカーに関連付けられている現像マーカーIDを取得する。そして、S903にて、CPU101は、S902において取得した現像マーカーIDに対応するJPEGファイルパスを、データベースから取得する。次に、S904にて、CPU101は、S903において取得したJPEGファイルパスによって示された場所に保存されている対応JPEG画像を取得し、取得した対応JPEG画像を表示部105に表示する制御を行う。その後、S901に処理が戻される。
なお、現像マーカーが指定された場合に行われる処理は、対応JPEG画像を表示する処理に限られない。例えば、現像マーカーが指定された場合に、CPU101は、指定された現像マーカーに対応するシーン(フレーム)から動画を再生する制御を行ってもよい。
以上述べたように、本実施例によれば、指定シーン(対応シーン)を示す第1のシーン
情報が記録される。そして、動画を再生する再生制御の実行時に、第1のシーン情報によって示されたシーンに対応する当該動画のシーンを示す第2のシーン情報が表示される。それにより、動画の再生時に有益な情報をユーザに提供することができ、ひいては装置の利便性を向上したり、作業の効率化を図ったりすることができる。
<実施例2>
以下、本発明の実施例2について説明する。なお、以下では、実施例1と異なる構成や処理について詳しく説明し、実施例1と同様の構成や処理についての説明は省略する。
実施例1では、第1の動画であるRAW動画から指定シーンを選択し、且つ、RAW動画を再生する再生制御を行う例を説明した。しかしながら、第1の動画は、RAW動画のように非圧縮の動画であったり、データ圧縮率が低い動画であったりする。そのため、第1の動画のデータサイズは大きく、第1の動画を用いた処理の負荷も大きい。したがって、実施例1の処理をスムーズに行うためには、高スペックの情報処理装置が必要となる。
そこで、本実施例では、第1の動画をデータ圧縮した第2の動画を予め生成し、予め生成した第2の動画を第1の動画の代わりに使用する。第2の動画のデータフォーマットは特に限定されないが、本実施例では、第2の動画として、MP4形式の動画であるMP4動画を使用する。この場合、第2の動画は、「第1の動画と同内容であり、且つ、第1の動画とデータフォーマットが異なる動画」とも言える。第2の動画は、例えば、画像サイズ(画像解像度)、フレームレート、取り得る階調値の範囲、等の少なくともいずれかが第1の動画よりも低い動画である。第1の動画と第2の動画の差異は、データフォーマットの差異のみであってもよい。上述したように、第2の動画は、第1の動画をデータ圧縮した動画である。そのため、第2の動画のデータサイズは第1の動画のデータサイズよりも小さく、第2の動画を用いた処理の負荷は第1の動画を用いた処理の負荷よりも小さい。例えば、MP4動画のフレームのデコード処理は、RAWデータの現像処理よりも処理負荷が小さい。したがって、第1の動画の代わりに第2の動画を用いることにより、比較的低スペックの情報処理装置で、指定シーンの選択、再生制御、等をスムーズに行うことができる。
図10を用いて、RAW動画からMP4動画を生成する方法について説明する。MP4動画の生成は情報処理装置100とは異なる装置(例えば、RAW動画の撮影を行う撮影装置)で行われてもよいが、本実施例では、情報処理装置100がMP4動画の生成を行うものとする。図10の符号1001は、撮影装置が撮影を行うことによって生成されたRAW動画を示す。RAW動画1001の画像サイズやフレームレートは特に限定されないが、図10の例では、RAW動画1001の画像サイズ(水平方向の画素数×垂直方向の画素数)は4000×2000であり、RAW動画1001のフレームレートは60fpsである。
実施例1と同様の方法で、RAW動画1001が、動画ファイルとして二次記憶部107に記録される。但し、本実施例では、RAW動画1001が二次記憶部107に記録される際に、CPU101は、RAW動画1001から、RAW動画1001と同内容のMP4動画1002を生成し、MP4動画1002を、動画ファイルとして二次記憶部107にさらに記録する。MP4動画1002の画像サイズやフレームレートは特に限定されないが、図10の例では、MP4動画1002の画像サイズは2000×1000であり、MP4動画1002のフレームレートは30fpsである。
ここで、MP4動画1002のデータフォーマットは、RAW動画1001のデータフォーマットと異なる。MP4動画1002の画像サイズも、RAW動画1001の画像サイズと異なる。そして、MP4動画1002のフレームレートも、RAW動画1001の
フレームレートと異なる。そのため、MP4動画1002を生成するためには、RAW動画1001のデータフォーマット、画像サイズ、及び、フレームレートを変換する必要がある。RAW動画をMP4動画に変換する動画変換処理の一例を、図11のフローチャートを用いて説明する。
まず、S1101にて、CPU101は、変数m=1を設定する。変数mは、「MP4動画のフレームID」とも言える。次に、S1102にて、CPU101は、MP4動画のm番目のフレームに対応するRAW動画のフレームの番号nを、式1を用いて算出する。式1において、「INT()」は()内の値の小数点以下を切り捨てる関数であり、「FR_RAW」はRAW動画のフレームレートであり、「FR_MP4」はMP4動画のフレームレートである。変数m=1の場合には、番号n=1が算出される。この算出結果は、例えば、「MP4動画1002の1番目のフレーム1003に対応するRAW動画1001のフレームが、RAW動画1001の1番目のフレーム1004である」ということを意味する。変数nは、「RAW動画のフレームID」とも言える。
n=INT((m−1)×(FR_RAW/FR_MP4))+1
・・・(式1)
そして、S1103にて、CPU101は、n番目のフレームがRAW動画に存在するか否かを判断する。n番目のフレームがRAW動画に存在しない場合には、本フローチャートが終了される。n番目のフレームがRAW動画に存在する場合には、S1104に処理が進められる。
S1104にて、CPU101は、RAW動画のn番目のフレームに対し現像処理を施す。次に、S1105にて、CPU101は、S1104の処理結果に、画像サイズを4000×2000から2000×1000に変換する解像度変換処理を施す。解像度変換処理は、従来の処理と同様であるため、その詳細な説明は省略する。そして、S1106にて、CPU101は、S1105の処理結果に、データフォーマットをMP4形式に変換するエンコード処理を施す。本実施例では、IフレームとPフレームが交互に存在するMP4動画が生成されるように、エンコード処理が行われる。Iフレームは、フレーム間予測を用いずに符号化されたフレームである。Pフレームは、前方向予測のみを用いて符号化されたフレームであり、例えば、ひとつ前のフレームを参照して生成されたフレームである。次に、S1107にて、CPU101は、S1106の処理結果を、MP4動画のm番目のフレームの画像データとして、MP4動画の動画ファイルに記録する。そして、S1108にて、CPU101は、変数mの値を1だけ増やす。その後、S1102に戻され、S1103で「n番目のフレームがRAW動画に存在しない」と判断されるまで、S1102〜S1108の処理が繰り返される。
なお、IフレームとPフレームが交互に存在するMP4動画を生成する例を説明したが、MP4動画はこれに限られない。例えば、Bフレームを含むMP4動画が生成されてもよい。Bフレームは、前方向予測、後方向予測、及び、両方向予測のいずれかを用いて符号化されたフレームである。ここで、Iフレーム、Pフレーム、及び、Bフレームを含むMP4動画を生成する場合を考える。この場合には、MP4動画の最初のフレームから順番に各フレームが生成されないことがある。この場合には、最初にIフレームが生成され、その後にPフレームとBフレームが生成されるように、エンコード順序(複数のフレームにそれぞれ対応する複数のエンコード処理の順番)が調整される。エンコード処理は、従来の処理と同様であるため、その詳細な説明は省略する。
本実施例でも、処理アプリケーションを用いて、RAW動画から指定シーンが選択され
、指定シーン(対応シーン)に対して現像処理が施される。処理アプリケーションのGUI画像は、実施例1(図3)と同じである。本実施例に係る処理アプリケーションの動作について、図12のフローチャートを用いて説明する。図12のフローチャートは、例えば、処理アプリケーションが起動したタイミングで開始される。
S1201〜S1210の処理は、図4(A)のS401〜S410の処理と同じである。S1204にて「現像ボタン308が押下された」と判断された場合には、S1211に処理が進められる。S1211にて、CPU101は、選択表示フレームに対応するMP4動画のフレームを、式1を用いて検出する。その後、S1212〜S1215の処理が行われる。S1212〜S1215の処理は、図4(A)のS411〜S414の処理と同じである。
なお、RAW動画のシーンが指定シーンとして選択される例を説明したが、MP4動画のシーンが指定シーンとして選択されてもよい。それにより、情報処理装置100の処理負荷を低減することができる。具体的には、S1202、S1207、及び、S1201において簡易現像処理の代わりにデコード処理が行われればよいため、情報処理装置100の処理負荷を低減することができる。MP4動画のシーンを指定シーンとして選択する場合には、S1201、S1206、及び、S1209において、MP動画のフレームが選択表示フレームとして選択される。そして、S1211にて、MP動画のフレームである選択表示フレームが指定シーンのフレームとして選択され、式1を用いて、選択表示フレームに対応するRAW動画のフレームが対応シーンのフレームとして検出される。その後、S1212にて、対応シーンに対する本現像処理が行われる。
図13は、本実施例に係るデータベースのスキーマ構成例を示す。実施例1と同様に、本実施例に係るデータベースは、S1212の本現像処理が施されたフレームの第1のシーン情報を含む。本実施例に係るデータベースは、現像マーカーID1301、RAWフレームID1302、MP4フレームID1303、及び、JPEGファイルパス1304の組み合わせを、第1のシーン情報として含む。現像マーカーID1301は図5の現像マーカーID501と同じである。RAWフレームID1302は、RAW動画のフレームIDであり、フレームID502と同じである。MP4フレームID1303は、MP4動画のフレームIDである。MP4フレームID1303は、S1211で算出される。JPEGファイルパス1304は、JPEGファイルパス503と同じである。なお、式1を用いれば、RAWフレームID1302とMP4フレームID1303との間でフレームIDを変換することができる。そのため、データベースには、RAWフレームID1302とMP4フレームID1303との少なくとも一方が含まれていればよい。
本実施例では、再生アプリケーションを用いて、MP4動画を再生する再生制御が行われる。再生制御によってMP4動画が再生されることにより、RAW動画が再生される場合に比べ処理負荷を低減することができる。再生アプリケーションのGUI画像は、実施例1(図6)と同じである。本実施例でも、再生制御の実行時に第1の表示制御がさらに行われる。本実施例に係るマーカー表示処理(第1の表示制御)について、図14のフローチャートを用いて説明する。図14のフローチャートは、例えば、再生アプリケーションが起動したタイミングで開始される。
まず、S1401にて、CPU101は、データベースからMP4フレームIDのリストを取得する。そして、CPU101は、S1401において取得されたリストの最初のMP4フレームIDから最後のMP4フレームIDまで、MP4フレームIDを順に選択しながら、S1402の処理を繰り返し行う。S1402にて、CPU101は、選択したMP4フレームIDに対応する位置に現像マーカーを表示する制御を行う。それにより、選択されたMP4フレームIDに対応するフレームが、表示された現像マーカーによっ
て示される。S1401において取得された全てのMP4フレームIDについてS1402の処理が行われると、S1403の処理が行われる。S1403にて、CPU101は、ユーザからの指示に応じた再生制御を行う。例えば、S1403にて、再生位置の変更、再生の開始、再生の停止、等が行われる。S1403の処理は、従来の動画再生アプリケーションで行われる処理と同様であるため、その詳細な説明は省略する。
なお、再生制御として、RAW動画を再生する再生制御が行われてもよい。その場合には、実施例1(図7)と同じマーカー表示処理が行われる。指定シーンの選択と再生制御との少なくとも一方でMP4動画が使用されれば、情報処理装置100の処理負荷を低減することができる。
以上述べたように、本実施例によれば、指定シーンと対応シーンの少なくとも一方を示す第1のシーン情報が記録される。そして、動画を再生する再生制御の実行時に、第1のシーン情報によって示されたシーンに対応する当該動画のシーンを示す第2のシーン情報が表示される。それにより、動画の再生時に有益な情報をユーザに提供することができ、ひいては装置の利便性を向上したり、作業の効率化を図ったりすることができる。さらに、本実施例では、第1の動画の代わりに第2の動画が適宜使用される。それにより、情報処理装置の処理負荷を低減することができる。
<実施例3>
以下、本発明の実施例3について説明する。なお、以下では、実施例1と異なる構成や処理について詳しく説明し、実施例1と同様の構成や処理についての説明は省略する。実施例1では、形態が同じ複数の第2のシーン情報(現像マーカー)が表示される例を説明した。しかしながら、複数の対応シーンの間で、処理(対応画像を生成する生成処理)の内容が異なることがある。そこで、本実施例では、生成処理に応じた形態で現像マーカーを表示する。それにより、ユーザは、生成処理を行ったことのあるフレームだけでなく、行われた生成処理の内容をも容易に把握することができる。
本実施例では、現像マーカーの形態として現像マーカーの形状を使用する例を説明する。なお、現像マーカーの形態は現像マーカーの形状に限られない。現像マーカーの形態として、形、色、明るさ、画像サイズ、点滅パターン、等のうちの1つ以上を使用することができる。また、第2のシーン情報としてテキスト画像を使用する場合には、第2のシーン情報の形態として、フォント、文字サイズ、等を使用することもできる。
「生成処理に応じた形態で現像マーカーを表示する処理」として、例えば、以下の処理が行われる。
処理1:生成処理の方法(本現像処理、簡易現像処理、等)に応じた形態で現像マーカーを表示する処理
処理2:生成処理で使用されたパラメータ(現像パラメータ;明るさ、コントラスト、シャープネス、色の濃さ、等)に応じた形態で現像マーカーを表示する処理
処理3:対応画像のデータフォーマットに応じた形態で現像マーカーを表示する処理
処理4:対応画像の画像サイズに応じた形態で現像マーカーを表示する処理
処理5:対応画像の色空間に応じた形態で現像マーカーを表示する処理
処理6:対応画像の画質に応じた形態で現像マーカーを表示する処理
なお、「生成処理に応じた形態で現像マーカーを表示する処理」は上記処理に限られない。例えば、生成処理の方法、生成処理で使用されたパラメータ、対応画像のデータフォーマット、対応画像の画像サイズ、対応画像の色空間、及び、対応画像の画質のうちの2
つ以上の組み合わせに応じた形態で現像マーカーが表示されてもよい。
図15は、情報処理装置100で動作する処理アプリケーションのウィンドウ(GUI画像)301の一例を示す。図15では、ユーザ操作により、パラメータ調整部307が配置されたタブからタブ1501へ、表示されるタブが切り替えられている。タブ1501には、対応画像のデータフォーマットの入力欄1502と、対応画像の画像サイズの入力欄1503とが存在する。ユーザが入力欄1502を操作すると、CPU101は、ユーザ操作に応じたデータフォーマットを、対応画像のデータフォーマットとして選択する。本実施例では、CPU101は、JPEG形式またはTIFF形式を、対応画像のデータフォーマットとして選択する。そして、ユーザが入力欄1503を操作すると、CPU101は、ユーザ操作に応じた画像サイズを、対応画像の画像サイズとして選択する。本実施例では、CPU101は、1024×512、2048×1024、及び、4096×2048のいずれかを、対応画像の画像サイズとして選択する。
本実施例に係る処理アプリケーションの動作は、実施例1(図4(A))と同じである。但し、本実施例では、図4(A)のS411とS412の処理により、入力欄1502を用いて設定されたデータフォーマットを有し、且つ、入力欄1503を用いて設定された画像サイズを有する対応画像が生成される。S413の処理により、生成された対応画像が記録される。そして、S414の処理により、S411において選択された指定シーンだけでなく、生成処理(S411とS412の処理)をさらに示す第1のシーン情報が二次記憶部107に記録される。なお、生成処理の方法が変更可能である場合には、S411において本現像処理とは異なる現像処理(簡易現像処理など)が行われることがある。
図16は、本実施例に係るデータベースのスキーマ構成例を示す。図16は、上述した処理3または処理4を行うためのデータベースを示す。実施例1と同様に、本実施例に係るデータベースは、S411の現像処理が施されたフレームの第1のシーン情報を含む。本実施例に係るデータベースは、現像マーカーID1601、フレームID1602、フォーマットID1603、サイズID1604、及び、ファイルパス1605の組み合わせを、第1のシーン情報として含む。現像マーカーID1601は図5の現像マーカーID501と同じである。フレームID1602は、RAW動画のフレームIDであり、フレームID502と同じである。ファイルパス1605は、対応画像の保存先を示すファイルパスである。
フォーマットID1603は、対応画像のデータフォーマットを示す情報である。フォーマットID1603を用いて生成処理が示されることにより、上述した処理3が実現可能となる。図16の例では、対応画像のデータフォーマットがJPEG形式の場合に、フォーマットID1603として「1」が使用され、対応画像のデータフォーマットがTIFF形式の場合に、フォーマットID1603として「2」が使用される。
サイズID1604は、対応画像の画像サイズを示す情報である。サイズID1604を用いて生成処理が示されることにより、上述した処理4が実現可能となる。図16の例では、対応画像の画像サイズが1024×512の場合に、サイズID1604として「1」が使用され、対応画像の画像サイズが2048×1024の場合に、サイズID1604として「2」が使用される。そして、対応画像の画像サイズが4096×2048の場合に、サイズID1604として「3」が使用される。
なお、上述した処理1を行うためには、第1のシーン情報において、生成処理の方法を示す情報を用いて生成処理が示されていればよい。処理2を行うためには、第1のシーン情報において、生成処理で使用されたパラメータを示す情報を用いて生成処理が示されて
いればよい。処理5を行うためには、第1のシーン情報において、対応画像の色空間を示す情報を用いて生成処理が示されていればよい。処理6を行うためには、第1のシーン情報において、対応画像の画質を示す情報を用いて生成処理が示されていればよい。
図17は、情報処理装置100で動作する再生アプリケーションのウィンドウ(GUI画像)1701の一例を示す。図6のウィンドウ601と比較して、ウィンドウ1701には、ボタン1702がさらに配置されている。ユーザがボタン1702を操作すると、CPU101は、メニュー1703を表示する処理を行う。メニュー1703には、「種別なし」、「現像種別」、「パラメータ種別」、「フォーマット種別」、「サイズ種別」、「色空間種別」、及び、「画質種別」の7つの項目が存在する。「種別なし」がユーザによって指定されると、CPU101は、実施例1と同様に、現像マーカーの形態が固定であるマーカー表示処理(第1の表示制御)を行う。「現像種別」がユーザによって指定されると、CPU101は、マーカー表示処理として、上述した処理1を行う。「パラメータ種別」がユーザによって指定されると、CPU101は、マーカー表示処理として処理2を行う。「フォーマット種別」がユーザによって指定されると、CPU101は、マーカー表示処理として処理3を行う。「サイズ種別」がユーザによって指定されると、CPU101は、マーカー表示処理として処理4を行う。「色空間種別」がユーザによって指定されると、CPU101は、マーカー表示処理として処理5を行う。そして、「画質種別」がユーザによって指定されると、CPU101は、マーカー表示処理として処理6を行う。
左側のウィンドウ1701は、「現像種別」が指定された場合のウィンドウである。そのため、左側のウィンドウ1701では、三角形の現像マーカー1705〜1707が配置されている。ここで、符号1704に示すように「フォーマット種別」が指定されると、左側のウィンドウ1701から右側のウィンドウ1701へウィンドウが変更される。具体的には、現像マーカー1705〜1707が現像マーカー1708〜1710に変更される。三角形の現像マーカー1708,1710は、対応画像のデータフォーマットがJPEG形式であることを示し、菱形の現像マーカー1709は、対応画像のデータフォーマットがTIFF形式であることを示す。
本実施例に係るマーカー表示処理(第1の表示制御)について、図18のフローチャートを用いて説明する。図18は、対応画像のデータフォーマットに応じた形態で現像マーカーを表示する処理3を示す。図18のフローチャートは、例えば、再生アプリケーションが起動したタイミングで開始される。
まず、S1801にて、CPU101は、データベースからフレームIDのリストを取得する。そして、CPU101は、S1801において取得されたリストの最初のフレームIDから最後のフレームIDまで、フレームIDを順に選択しながら、S1802〜S1805の処理を繰り返し行う。S1802にて、CPU101は、選択したフレームIDに対応するフォーマットIDを、データベースから取得する。次に、S1803にて、CPU101は、S1802において取得されたフォーマットIDが「1」であるか「2」であるかを判断する。この処理は、「対応画像のデータフォーマットを判断する処理」とも言える。フォーマットIDが「1」である場合にはS1804に処理が進められ、フォーマットIDが「2」である場合にはS1805に処理が進められる。S1804にて、CPU101は、選択したフレームIDに対応する位置に三角形の現像マーカーを表示する制御を行う。S1805にて、CPU101は、選択したフレームIDに対応する位置に菱形の現像マーカーを表示する制御を行う。S1801において取得された全てのフレームIDについてS1802〜S1805の処理が行われると、S1806の処理が行われる。S1806にて、CPU101は、ユーザからの指示に応じた再生制御を行う。例えば、S1806にて、再生位置の変更、再生の開始、再生の停止、等が行われる。S
1806の処理は、従来の動画再生アプリケーションで行われる処理と同様であるため、その詳細な説明は省略する。
以上述べたように、本実施例によれば、対応シーンに対する処理に応じた形態で第2のシーン情報が表示される。実施例1と同様の効果だけでなく、対応シーンに対する処理の内容をユーザが容易に把握することができるという効果をさらに得ることができる。
ところで、図19(A)の領域1901で示すように、複数の現像マーカーが重なり合って表示されることがある。このような表示は非常に見づらい。そのため、複数の現像マーカーが重なり合わないように表示されることが好ましい。例えば、図19(B)に示すように、複数の現像マーカーの集中度合いが閾値以上である領域内(領域1901内)にマウスカーソルが移動した場合に、画像1902を表示する第3の表示制御がCPU101によってさらに行われることが好ましい。画像1902は、スライダーバーの少なくとも一部を拡大した拡大スライダーバーと、領域1901内の上記複数の現像マーカーとを含む。これにより、複数の現像マーカーを見易くすることができ、ユーザは、現像マーカーの確認、現像マーカーの指定、等をより容易に行うことができる。なお、表示部105がタッチパネルを備えるとき、ユーザが指を使って表示部105に接触することで位置を指定するようにしてもよい。この場合、マウスカーソルの位置の代わりにユーザが接触した位置が用いられる。
なお、集中度合いと比較される上記閾値は、情報処理装置100や再生アプリケーションのメーカーによって予め定められた固定値であってもよいし、ユーザが変更可能な値であってもよいし、情報処理装置100によって決定された値であってもよい。また、第4表示制御が行われる。
<実施例4>
以下、本発明の実施例4について説明する。なお、以下では、実施例1と異なる構成や処理について詳しく説明し、実施例1と同様の構成や処理についての説明は省略する。
本実施例では、情報処理装置100の利便性をさらに向上することができる例を説明する。本実施例に係る情報処理装置100は、RAW動画に基づいて、RAW動画の一部のシーンの動画であり、且つ、対応シーン(指定シーンに対応するRAW動画のシーン)を含む動画であるダイジェスト動画を生成する。また、本実施例に係る情報処理装置100は、RAW動画を再生する再生制御として、対応シーンとその周辺のシーンを、それら以外のシーンの再生速度と異なる再生速度で再生する再生制御を行う。具体的には、本実施例に係る情報処理装置100は、対応シーンとその周辺のシーンを、それら以外のシーンの再生速度よりも遅い再生速度で再生する再生制御を行う。指定シーンは、ユーザが注目したいシーンである可能性が高い。そのため、上述した機能により、情報処理装置100の利便性をさらに向上することができる。具体的には、ユーザが指定シーンを容易に確認できるようになったり、ユーザが指定シーンを詳細に確認できるようになったりする。
なお、ユーザが省きたいシーンが、指定シーンとして選択されることもある。そのため、対応シーンとその周辺のシーンを、それら以外のシーンの再生速度よりも速い再生速度で再生する再生制御が行われてもよい。そのような機能によれば、ユーザが省きたいシーンが指定シーンとして選択された場合における情報処理装置100の利便性を向上することができる。
なお、MP4動画に基づいて、MP4動画の一部のシーンの動画であり、且つ、指定シーンや対応シーンに対応するMP4動画のシーンを含む動画が、ダイジェスト動画として生成されてもよい。RAW動画であるダイジェスト動画が生成された後に、ダイジェスト
動画のデータフォーマットがMP4形式に変換されてもよい。また、MP4動画を再生する再生制御として、指定シーンや対応シーンに対応するシーンとその周辺のシーンを、それら以外のシーンの再生速度と異なる再生速度で再生する再生制御が行われてもよい。
指定シーンに対応するシーンがダイジェスト動画に含まれていれば、ダイジェスト動画に含まれるシーンは特に限定されない。本実施例では、CPU101は、現像マーカーで示されたフレーム(対応シーン)とその周辺のフレーム(対応シーンの周辺のシーン)を含むシーンを動画から抽出する処理を、各現像マーカーについて行う。そして、CPU101は、抽出した複数のシーンを結合することにより、ダイジェスト動画を生成する。図20を用いて、本実施例に係るダイジェスト動画について説明する。
本実施例では、RAW動画2001から、RAW動画2001の総時間よりも短いL秒のダイジェスト動画2010が生成される。本実施例では、ダイジェスト動画を生成する機能を再生アプリケーションが有しており、再生アプリケーションの起動時にダイジェスト動画が自動的に生成される。図20では、4つの現像マーカーにそれぞれ対応する4つの三角形2002〜2005が示されている。三角形2002〜2005は、現像マーカーと同様に、対応シーンのフレームを示す。図20の例では、4つの三角形2002〜2005にそれぞれ対応する4つの動画(部分動画)2006〜2009が抽出される。本実施例では、以下の式2を用いて時間tが算出される。式2において、「N」は、現像マーカーの数である。その後、抽出された4つの部分動画を結合することにより、ダイジェスト動画2010が生成される。
t=L/N ・・・(式2)
なお、各部分動画の時間tは特に限定されない。複数の部分動画の間で時間tが異なっていてもよい。また、ダイジェスト動画を生成するダイジェスト動画生成アプリケーションが用意されていてもよい。また、ダイジェスト動画は、ユーザからの指示に応じて生成されてもよい。
本実施例に係るダイジェスト動画生成処理(ダイジェスト動画を生成する処理)について、図21のフローチャートを用いて説明する。まず、S2101にて、CPU101は、変数Nに現像マーカー(対応シーン)の数を設定する。次に、S2102にて、CPU101は、変数Nが0より大きいか否かを判断する。変数Nが0である場合には、本フローチャートが終了され、変数Nが0より大きい場合には、S2103に処理が進められる。S2103にて、CPU101は、ダイジェスト動画の時間Lを設定する。情報処理装置100、再生アプリケーション、ダイジェスト動画生成アプリケーション、等のメーカーによって予め定められた時間が時間Lとして設定されてもよいし、ユーザによって指示された時間が時間Lとして設定されてもよい。次に、S2104にて、CPU101は、変数tにL/Nを代入する。そして、CPU101は、変数nを1からNまで1ずつ増やしながら、S2105とS2106の処理を繰り返し行う。S2105にて、CPU101は、n番目の現像マーカーによって示されたフレームを含む時間tの部分動画を、RAW動画から抽出する。次に、S2106にて、CPU101は、S2106において抽出された部分動画をダイジェスト動画にマージする。変数n=NについてS2105とS2106の処理が行われた後、本フローチャートが終了される。
なお、S2105において、n番目の現像マーカーによって示されたフレームからの動画が部分動画として抽出されてもよいし、当該フレームまでの動画が部分動画として抽出されてもよい。n番目の現像マーカーによって示されたフレームと、その前後両方のフレームとを含む動画が、部分動画として抽出されてもよい。n番目の現像マーカーによって
示されたフレームを中心のフレームである動画が、部分動画として抽出されてもよい。部分動画において、n番目の現像マーカーによって示されたフレームは、中心のフレームでなくてもよい。動画を抽出する処理は、従来技術と同様であるため、その詳細な説明は省略する。
指定シーンに対応するシーンがスロー再生シーン(他のシーンに比べ遅い再生速度で再生されるシーン)に含まれていれば、スロー再生シーンは特に限定されない。本実施例では、CPU101は、現像マーカーで示されたフレーム(対応シーン)の前後それぞれT/2秒の範囲においてスロー再生(通常再生の再生速度よりも遅い再生速度での再生)を行い、それ以外の範囲において通常再生を行う。Tの値は、情報処理装置100や再生アプリケーションのメーカーによって予めされたられた固定値であってもよいし、ユーザによって指示された値であってもよい。本実施例に係る再生制御について、図22(A)のフローチャートを用いて説明する。
まず、S2201にて、CPU101は、変数MにRAW動画の総フレーム数を設定する。そして、S2202にて、CPU101は、変数Nに現像マーカー(対応シーン)の数を設定する。次に、S2203にて、CPU101は、変数Tを設定する。そして、CPU101は、変数mを1からMまで1ずつ増やしながら、S2204〜S2206の処理を繰り返し行う。S2204にて、CPU101は、現像マーカーで示されたフレーム(対応シーン)の前後それぞれT/2秒の範囲であるスロー再生シーンに、m番目のフレームが含まれているか否かを判断する。m番目のフレームがスロー再生シーンに含まれていない場合には、S2204からS2205へ処理が進められる。S2205にて、CPU101は、m番目のフレームを通常再生する制御を行う。m番目のフレームがスロー再生シーンに含まれている場合には、S2204からS2206へ処理が進められる。S2206にて、CPU101は、m番目のフレームをスロー再生する制御を行う。RAW動画の全てのフレームについてS2204〜S2206の処理が行われた後、本フローチャートが終了される。なお、現像マーカーで示されたフレームとその周辺のフレームが通常再生され、それ以外のフレームが高速再生(通常再生の再生速度よりも速い再生速度での再生)されてもよい。
次に、本実施例に係る再生シーン判断処理(S2204の処理)について、図22(B)を用いて説明する。まず、CPU101は、変数nを1からNまで1ずつ増やしながら、S2251の処理を繰り返し行う。S2251にて、CPU101は、n番目のスロー再生シーン(n番目の現像マーカーで示されたフレームの前後それぞれT/2秒の範囲)に、m番目のフレームが含まれているか否かを判断する。n番目のスロー再生シーンにm番目のフレームが含まれていると判断されるか、変数n=NについてS2251の処理が行われるまで、変数nが1ずつ増やされながら、S2251の処理が繰り返される。全てのスロー再生シーンにm番目のフレームが含まれていないと判断された場合には、S2252に処理が進められる。「全てのスロー再生シーンにm番目のフレームが含まれていないと判断された場合」とは、「全てのn(1〜N)について、n番目のスロー再生シーンにm番目のフレームが含まれていないと判断された場合」のことである。n番目のスロー再生シーンにm番目のフレームが含まれていると判断された場合には、S2253に処理が進められる。S2252にて、CPU101は、再生シーン判断処理の結果を「NO」と決定する。S2253にて、CPU101は、再生シーン判断処理の結果を「YES」と決定する。S2252またはS2253の処理の後、本フローチャートが終了される。
以上述べたように、本実施例によれば、動画の一部のシーンの動画であり、且つ、指定シーンや対応シーンに対応するシーンを含む動画であるダイジェスト動画が生成される。また、指定シーンや対応シーンに対応するシーンとその周辺のシーンを、それら以外のシーンの再生速度と異なる再生速度で再生する再生制御が行われる。それにより、実施例1
と同様の効果だけでなく、情報処理装置の利便性をさらに向上することができるという効果も得ることができる。
<実施例5>
以下、本発明の実施例5について説明する。なお、以下では、実施例1と異なる構成や処理について詳しく説明し、実施例1と同様の構成や処理についての説明は省略する。実施例1〜4では、1フレームのシーンが指定シーンとして選択され、1枚の静止画が対応画像として生成される例を説明した。本実施例では、複数のフレームを含むシーンが指定シーンとして選択され、対応画像として動画が生成される例を説明する。対応画像のデータフォーマットは特に限定されないが、本実施例では、対応画像として、MP4形式の動画が得られるとする。以後、対応画像を「対応MP4動画」と記載する。
図23は、本実施例に係る処理アプリケーションのウィンドウ(GUI画像)2301の一例を示す。ウィンドウ2301には、選択画像2302、サムネイルリスト2303、スクロールバー2304、前ボタン2305、後ボタン2306、始点画像2307、始点設定ボタン2308、終点画像2309、終点設定ボタン2310、及び、保存ボタン2311が配置されている。選択画像2302は図3の選択画像302と、サムネイルリスト2303はサムネイルリスト303と、スクロールバー2304はスクロールバー304と、前ボタン2305は前ボタン305と、後ボタン2306は後ボタン306と同じである。
ユーザが始点設定ボタン2308を押下すると、CPU101は、始点設定ボタン2308が押下されたタイミングにおける選択画像2302のフレームを、指定シーンの最初のフレームとして選択する。そして、CPU101は、選択したフレームの画像を始点画像2307として表示する制御を行う。始点設定ボタン2308が押下される度に、指定シーンの最初のフレームと、始点画像2307とが更新される。
ユーザが終点設定ボタン2310を押下すると、CPU101は、終点設定ボタン2310が押下されたタイミングにおける選択画像2302のフレームを、指定シーンの最後のフレームとして選択する。そして、CPU101は、選択したフレームの画像を終点画像2309として表示する制御を行う。終点設定ボタン2310が押下される度に、指定シーンの最後のフレームと、終点画像2309とが更新される。
ユーザが保存ボタン2311を押下すると、CPU101は、始点画像2307のフレームから終点画像2309のフレームまでのシーンを、指定シーンとして選択する。そしてし、CPU101は、選択した指定シーン(対応シーン)の動画をRAW動画から抽出し、抽出した動画を、MP4動画である対応MP4動画に変換する。その後、CPU101は、得られた対応MP4動画を、二次記憶部107に記録する。
なお、処理アプリケーションのGUI画像は上記GUI画像に限られないし、対応シーンに対する処理は上記処理に限られない。例えば、指定シーンの最初のフレームと、指定シーンの最後のフレームとをユーザが指定するためのボタンと、指定シーンの時間をユーザが指定するための入力欄とが、始点設定ボタン2308と終点設定ボタン2310の代わりに使用されてもよい。
次に、本実施例に係る処理アプリケーションの動作について、図24のフローチャートを用いて説明する。図24のフローチャートは、例えば、処理アプリケーションが起動したタイミングで開始される。
S2401〜S2410の処理は、図4(A)のS401〜S410の処理と同じであ
る。但し、S2404にて、CPU101は、S2403のユーザ操作が前ボタン2305の押下、後ボタン2306の押下、始点設定ボタン2308の押下、終点設定ボタン2310の押下、及び、保存ボタン2311の押下のどれであるかを判断する。始点設定ボタン2308が押下された場合にはS2411に処理が進められ、終点設定ボタン2310が押下された場合にはS2414に処理が進められ、保存ボタン2311が押下された場合にはS2417に処理が進められる。
S2411にて、CPU101は、選択表示フレームのRAWデータに簡易現像処理を施す。次に、S2412にて、CPU101は、S2411の簡易現像処理の結果を始点画像2307として表示する制御を行う。そして、S2413にて、CPU101は、選択表示フレームのフレームIDを、始点IDとして記憶する。その後、S2403に処理が戻される。
S2414にて、CPU101は、選択表示フレームのRAWデータに簡易現像処理を施す。次に、S2415にて、CPU101は、S2414の簡易現像処理の結果を終点画像2309として表示する制御を行う。そして、S2416にて、CPU101は、選択表示フレームのフレームIDを、終点IDとして記憶する。その後、S2403に処理が戻される。
S2417にて、CPU101は、S2413において記憶した始点IDのフレームから、S2416において記憶した終点IDのフレームまでのシーンの動画(フレーム群)を、RAW動画から抽出する。次に、S2418にて、CPU101は、S2417において抽出した動画(RAW動画)を、MP4動画である対応MP4動画に変換する。RAW動画をMP4動画へ変換する変換処理は現像処理を含む。そして、S2419にて、CPU101は、S2418において生成された対応MP4動画を、動画ファイルとして二次記憶部107に記録する。次に、S2420にて、CPU101は、S2413において記憶した始点IDのフレームから、S2416において記憶した終点IDのフレームまでのシーンを示す第1のシーン情報を、二次記憶部107に記録する。具体的には、CPU101は、二次記憶部107に記録されたデータベースに、第1のシーン情報を追加する(データベースの更新)。そして、S2403に処理が戻される。データベースには、情報処理装置100で動作する任意のアプリケーションからアクセスすることができる。
図25は、本実施例に係るデータベースのスキーマ構成例を示す。本実施例に係るデータベースは、S2418の変換処理(現像処理を含む変換処理)が施されたシーンの第1のシーン情報を含む。本実施例に係るデータベースは、現像マーカーID2501、始点ID2502、終点ID2503、及び、MP4ファイルパス2504の組み合わせを、第1のシーン情報として含む。現像マーカーID2501は図5の現像マーカーID501と同じである。始点ID2502は、S2418の変換処理が施されたシーンの最初のフレームを識別するフレームIDであり、S2413において記憶されたフレームIDである。終点ID2503は、S2418の変換処理が施されたシーンの最後のフレームを識別するフレームIDであり、S2416において記憶されたフレームIDである。MP4ファイルパス2504は、対応MP4動画の保存先を示すファイルパスである。なお、第1のシーン情報において、始点ID2502と終点ID2503の一方と、シーンの時間(フレーム数など)とによって、シーンが示されていてもよい。
図26は、情報処理装置100で動作する再生アプリケーションのウィンドウ(GUI画像)の一例を示す。本実施例では、1つの現像マーカー(第2のシーン情報)として、始点ID2502に対応するフレームを示す始点マーカー2601と、終点ID2503に対応するフレームを示す終点マーカー2602とからなるマーカーペアが表示される。マーカーペアが表示されることにより、RAW動画のどのシーンがMP4動画への変換を
行ったことのあるシーンであるかを、ユーザが容易に把握することができる。その結果、情報処理装置100の利便性を向上したり、作業の効率化を図ったりすることができる。
なお、再生アプリケーションのGUI画像は上記GUI画像に限られないし、第2のシーン情報は上記マーカーペアに限られない。例えば、第2のシーン情報として、始点ID2502に対応するフレームのタイムコードと、終点ID2503に対応するフレームのタイムコードとが表示されてもよい。始点ID2502に対応するフレームから終点ID2503に対応するフレームまでのシーンに対応する部分の色や明るさが他の部分と異なるスクロールバーが、第2のシーン情報として表示されてもよい。
以上述べたように、本実施例によれば、複数のフレームを含む指定シーン(対応シーン)を示す第1のシーン情報が記録される。そして、動画を再生する再生制御の実行時に、第1のシーン情報によって示されたシーンに対応する当該動画のシーンを示す第2のシーン情報が表示される。それにより、動画の再生時に有益な情報をユーザに提供することができ、ひいては装置の利便性を向上したり、作業の効率化を図ったりすることができる。
<その他の実施例>
本発明は、上述の実施例の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。プロセッサーとしては、例えば、CPUやMPUを用いることができる。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施例の機能を実現することになり、プログラムコード自体及びそのプログラムコードを記憶した記憶媒体が本発明を構成することになる。
プログラムコードを記憶する記憶媒体としては、例えば、フレキシブルディスク、ハードディスク、光磁気ディスク、CD−ROM、CD−R、CD−RW、DVD−ROM、DVD−RAM、DVD_RW、DVD+RW、磁気テープ、不揮発性のメモリカード、ROM、等を用いることができる。
また、上述のプログラムコードの指示に基づき、装置上で稼動しているOS(基本システムやオペレーティングシステム)などが処理の一部又は全部を行い、その処理によって前述した実施例の機能が実現される構成も、本発明に含まれる。
さらに、記憶媒体から読み出されたプログラムコードが、装置に挿入された機能拡張ボードや装置に接続された機能拡張ユニットに備わるメモリに書込まれ、前述した実施例の機能が実現される構成も、本発明に含まれる。このとき、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPU等が処理の一部又は全部を行う。