説明

再生装置およびその制御方法、プログラム、並びに記憶媒体

【課題】手描きによる描画の過程を途中から再生する場合であっても再生開始位置以前の内容を反映して再現することができる記録再生技術の実現。
【解決手段】再生装置は、動画データを再生して表示部に表示する再生手段と、前記動画データを再生中に、前記表示部に表示されている動画の上にユーザが任意の手描き画像を描画可能な描画手段と、前記描画手段により描画された手描き画像データを、前記動画データの再生タイミングに同期させて記録する記録手段と、前記動画データの再生を、動画データの途中の任意の時点から開始させる指示手段と、前記指示手段により、前記動画データの再生が、前記手描き画像データと同期している途中の時点指示された場合に、前記動画データと関連付けて記録された前記手描き画像データを、前記指示手段により指示された時点より前に遡って読み出し、前記再生を開始する時点で表示される動画に重畳して前記表示部に表示するように制御する制御手段とを有する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、動画再生時に描画された画像を記録し、その描画された画像を動画と共に再生する記録再生技術に関する。
【背景技術】
【0002】
マウスやタッチパネルのようなポインティングデバイスを用いて、表示装置上に文字やイラスト等を手描きで描画することができる装置がある。また、文字やイラストなどを手描きで描画したとき、その手描き入力情報の座標データを時系列に記録しておき、再生時に座標データを順次読み出すことによって描画する過程を再現できる装置がある。
【0003】
例えば、特許文献1には、テープ状の記録媒体に動画と共に手描き入力情報の座標データを記録しておき、動画再生時に順次座標データを読み出して手描き入力情報を描画した過程を再現し、動画データに重畳して再生する装置が提案されている。
【0004】
通常、動画データを手描き入力情報と重畳して記録すると、手描き入力部分を除いた動画のみの再生ができなくり、また、動画撮影と同時に手描き入力情報を記録する必要があるが、上記特許文献1によれば、動画のみの再生や、動画を再生しながら手描き入力情報の描画過程を再現できる。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開平11−187348号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
しかしながら、上記特許文献1は、ランダムにアクセスができないテープ状の記録媒体を前提としているため、動画の途中から再生を開始する場合については考慮されていない。そのため、動画の途中から再生を開始したい場合、テープにおける再生開始位置以前に記録されている手描き入力情報の座標データは読み出しできないため、描画の過程を忠実に再現することはできない。
【0007】
本発明は、上記課題に鑑みてなされ、その目的は、動画を途中から再生する場合であっても、手描き入力情報の描画の過程を忠実に再現することができる記録再生技術を実現することである。
【課題を解決するための手段】
【0008】
上記課題を解決し、目的を達成するため、本発明の再生装置は、動画データを再生して表示部に表示する再生手段と、前記動画データを再生中に、前記表示部に表示されている動画の上にユーザが任意の手描き画像を描画可能な描画手段と、前記描画手段により描画された手描き画像データを、前記動画データの再生タイミングに同期させて記録する記録手段と、前記動画データの再生を、動画データの途中の任意の時点から開始させる指示手段と、前記指示手段により、前記動画データの再生が、前記手描き画像データと同期している途中の時点指示された場合に、前記動画データと関連付けて記録された前記手描き画像データを、前記指示手段により指示された時点より前に遡って読み出し、前記再生を開始する時点で表示される動画に重畳して前記表示部に表示するように制御する制御手段とを有する。
【発明の効果】
【0009】
本発明によれば、動画を途中から再生する場合であっても、手描き入力情報の描画の過程を忠実に再現することができる。
【図面の簡単な説明】
【0010】
【図1】本発明に係る実施形態のデジタルビデオカメラのブロック図。
【図2】実施形態1の座標テーブルを例示する図。
【図3】実施形態1の再生画面を例示する図。
【図4】実施形態1の再生制御を示すフローチャート。
【図5】実施形態2の座標テーブルを例示する図。
【図6】実施形態2の再生画面を例示する図。
【図7】実施形態2の記録制御を示すフローチャート。
【図8】実施形態2の再生制御を示すフローチャート。
【図9】ビットマップメモリの構成を例示する図。
【図10】早戻し再生時の再生画面を例示する図。
【発明を実施するための形態】
【0011】
以下に、本発明を実施するための形態について詳細に説明する。尚、以下に説明する実施の形態は、本発明を実現するための一例であり、本発明が適用される装置の構成や各種条件によって適宜修正又は変更されるべきものであり、本発明は以下の実施の形態に限定されるものではない。また、後述する各実施形態の一部を適宜組み合わせて構成しても良い。
【0012】
本実施形態では、本発明の撮像装置をデジタルビデオカメラ(以下、カメラ)に適用した実施形態について説明する。
【0013】
<撮像装置の構成>図1を参照して、本実施形態のカメラ100の構成について概説する。
【0014】
図1において、101は撮像部であり、フォーカスレンズを含む撮像レンズ、絞り、光学像を電気信号に変換するCCDもしくはCMOS素子、アナログ信号をデジタル信号に変換するA/D変換器を含む。
【0015】
102は画像処理部であり、撮像部101からの動画データ、または、メモリ制御部103からのデータに対し所定の画素補間、縮小といったリサイズ処理や色変換処理を行う。また、画像処理部102は、撮像した動画データを用いて所定の演算処理を行い、その演算結果に基づいてシステム制御部104が露光制御、測距制御を行う。これにより、AF(オートフォーカス)処理、AE(自動露出)処理が行われる。画像処理部102は更に、撮像した動画データを用いて所定の演算処理を行い、その演算結果に基づいてAWB(オートホワイトバランス)処理を行う。
【0016】
119はCODECであり、画像処理部102からの動画データをMPEG2やH.264等の動画圧縮方式でエンコードしたり、メモリ制御部103からのエンコード済み動画データをデコードしたりする。
【0017】
撮像部101から出力されるデータは、画像処理部102およびCODEC119およびメモリ制御部103を介して、メモリ105に書き込まれる。
【0018】
メモリ105は、撮像部101で生成され、CODEC119によってエンコードされた動画データや、表示部106に表示するための表示用の動画データを格納する。メモリ105は、所定時間の動画や音声と付随する手描き入力情報を格納するのに十分な記録容量を備えている。また、メモリ105はOSD表示用のビットマップメモリおよび画像表示用のビデオメモリを兼ねている。
【0019】
表示部106はLCDパネル等からなり、メモリ105から読み出した表示用の動画データに従って動画を表示する。撮像部101によってメモリ105に蓄積された動画データを表示部106に逐次転送して表示することで、電子ビューファインダ(スルー画像表示)として機能する。表示部106は更に、メモリ105のビットマップメモリに展開されたアイコンやタイムコード等のOSD(オンスクリーンディスプレイ)やタッチパネル112による手描き入力情報を動画に重畳して表示する機能も含む。
【0020】
不揮発性メモリ107は、電気的に消去・記録可能なメモリであり、例えばEEPROM等が用いられる。不揮発性メモリ107には、システム制御部104の動作用の定数、プログラム等が記録される。ここでいう、プログラムとは、後述するフローチャートを実行するためのプログラムのことである。
【0021】
システム制御部104は、マイクロコンピュータ等を備え、不揮発性メモリ107に記録されたプログラムに従い、カメラ100の各部の動作を制御し、後述する再生制御や記録制御を実現する。
【0022】
108はシステムメモリであり、RAMが用いられる。システムメモリ108には、システム制御部104の動作用の定数、変数、不揮発性メモリ107から読み出したプログラム等が展開される。また、システム制御部104はメモリ105や表示部106を制御することにより表示制御も行う。システムメモリ108はメモリ105と共通であってもよい。
【0023】
システムタイマー109は各種制御に用いる時間や、内蔵時計の時間を計測する計時部である。
【0024】
電源スイッチ115、モード切替ボタン110、トリガーボタン111、タッチパネル112はシステム制御部104に各種の動作指示を入力するための操作手段である。
【0025】
電源スイッチ115は、カメラ100への電源のオン、オフを切り替える。
【0026】
モード切替ボタン110は、システム制御部104の動作モードを切り替えるための、モード切替信号を発生する。システム制御部104は、モード切替信号により、動作モードを記録モード、再生モードのいずれかに切り替える。
【0027】
トリガーボタン111は、システム制御部104に対して、撮影開始または撮影終了を指示するための、トリガー信号を発生する。システム制御部104は、トリガー信号により、撮像部101、画像処理部102、CODEC119およびメモリ制御部103を介してメモリ105に保持されたエンコード済み動画データを記録媒体114に書き込むまでの一連の処理を開始または終了する。
【0028】
タッチパネル112は、表示部106に対する接触を検知可能であり、タッチパネル112と表示部106とは一体的に構成できる。例えば、タッチパネル112を光の透過率が表示部106の表示を妨げないように構成し、表示部106の表示面の上層に取り付ける。そして、タッチパネル112における入力座標と、表示部106上の表示座標とを対応付ける。これにより、あたかもユーザが表示部106に表示された画面を直接的に操作しているようなGUIを構成することができる。システム制御部104はタッチパネル112への以下の操作を検出できる。タッチパネルを指やペンで触れたこと(以下、タッチダウンと称する)。タッチパネルを指やペンで触れている状態であること(以下、タッチオンと称する)。タッチパネルを指やペンで触れたまま移動していること(以下、ムーブと称する)。タッチパネルへ触れていた指やペンを離したこと(以下、タッチアップと称する)。タッチパネルに何も触れていない状態(以下、タッチオフと称する)。これらの操作や、タッチパネルに指やペンが触れている位置座標はシステム制御部104に通知され、システム制御部104は通知された情報に基づいてタッチパネル上にどのような操作が行われたかを判定する。ムーブについてはタッチパネル上で移動する指やペンの移動方向についても、位置座標の変化に基づいて、タッチパネル上の垂直成分・水平成分毎に判定できる。またタッチパネル上をタッチダウンから一定のムーブを経てタッチアップをしたとき、ストロークを描いたこととする。タッチパネルは、抵抗膜方式や静電容量方式、表面弾性波方式、赤外線方式、電磁誘導方式、画像認識方式、光センサ方式等、様々な方式のタッチパネルのうちいずれの方式のものを用いても良い。
【0029】
118は、カメラ100を外部機器と接続するための外部(I/F)インターフェースであり、例えばUSBや赤外線や無線通信のI/Fが用いられる。外部I/F118にマウス等のポインティングデバイスを接続することで、これをタッチパネル112の代わりの入力手段として扱うこともできる。このときシステム制御部104は、外部I/F118に接続されたマウスの入力を受けて表示部106にポインタを表示する。さらに、マウスの移動やクリック信号を受けて、タッチパネル112によるタッチダウン、ムーブ、タッチアップ等の操作と同等の制御を行う。
【0030】
116は電源制御部であり、電池検出回路、DC−DCコンバータ、通電するブロックを切り替えるスイッチ回路等により構成され、電池の装着の有無、電池の種類、電池残量の検出を行う。また、電源制御部116は、その検出結果及びシステム制御部104の指示に基づいてDC−DCコンバータを制御し、必要な電圧を必要な期間、記録媒体114を含む各部へ供給する。
【0031】
117は電源部であり、アルカリ電池やリチウム電池等の一次電池やNiCd電池やNiMH電池、Li電池等の二次電池、ACアダプター等からなる。
【0032】
113はメモリカードやハードディスク等の記録媒体114とのインターフェースである。記録媒体114は、メモリカード等の記録媒体であり、半導体メモリや磁気ディスク等から構成される。
【0033】
記録媒体114には、メモリ105に格納されたエンコード済み動画データと付随する手描き入力情報がI/F113を介して記録される。また、記録媒体114は、自身に記録されているエンコード済み動画データと付随する手描き入力情報がI/F113を介して読み出される。記録媒体114はカメラ100に装着されるメモリカードやハードディスクドライブやディスクであってもよいし、カメラ100に内蔵されたフラッシュメモリやハードディスクドライブであってもよい。
【0034】
以下、図2乃至図8を参照して、本実施形態について説明する。
【0035】
[実施形態1]実施形態1では、画面上でユーザが任意の手描き入力情報を描画可能なカメラ100において、動画を途中から再生する際に、動画再生と同時に記録された手描き入力情報を忠実に再現する。
【0036】
図2の座標テーブルは、手描き入力情報の描画時に発生したイベントがシステム制御部104によって時系列に記録されると共に、再生時には手描き入力情報を再現するために参照される。
【0037】
この座標テーブルは、動画撮影時にエンコードされた動画データと共にシステム制御部104によって記録媒体114に記録され、再生時には記録媒体114からメモリ105に読み出され、システム制御部104が参照する。
【0038】
t列は、タッチオン状態であったときの動画のタイムコードである。イベントは時系列に記録されるため、t列のタイムコードは昇順に整列した状態になっている。
【0039】
x列は、t列のタイムコード時点にタッチオンされている位置を表すx座標であり、y列は同じくy座標である。x列およびy列が−となっている行は、タッチオン以外の特殊なイベントが発生したタイムコード時点であることを示している。
【0040】
attr列は、各行のイベントの属性情報を示している。例えば「clear」行は画面全体の手描き入力情報が消去されたことを表している。「pen A」および「pen B」はそれぞれ、タッチオンしたときのペン先設定を表している。これらの属性情報は、後述するボタン318および319の操作によって付与される。
【0041】
図2の座標テーブルにおけるエントリe2およびe3のように、同じタイムコードで複数の手描き座標データを記述することもできる。これは、例えば、動画撮影を開始する前に手描き入力情報を描画していたり、動画再生のポーズ中に手描き入力情報を描画していたりしたことを表している。
【0042】
以上のように、本実施形態では、動画データとは別に手描き入力情報の座標テーブルを作成し、動画データのタイムコードに関連付けて記録している。なお、手描き入力情報の座標テーブルは動画データの再生タイミングと同期できればよく、その手段はタイムコードである必要はない。例えば、記録時の日時情報に同期させてもよい。
【0043】
また、手描き入力情報の座標テーブルを作成せずに、動画データストリーム内に埋め込んで記録しても構わない。
【0044】
図3は、タッチパネル112への操作によって手描き入力情報を描画しながら動画撮影したときに表示部106に表示される画面と、途中から再生したときに表示部106に表示される画面を例示している。
【0045】
図3において、301a〜303aはそれぞれ、動画撮影開始後ある期間が経過したときに表示部106に表示される画面であり、画面301aから手描き入力情報の描画を開始し、画面302aを経由して、画面303aで描画を終了する過程を示している。
【0046】
各画面301a〜303aは、メモリ105のビットマップメモリに構成されている。図9はビットマップメモリの構成を示し、ビットマップメモリは、少なくとも3画面分の領域を備えている。
【0047】
901は手描き入力情報の内容のみを保持するメモリ領域であり、902は手描き入力情報以外のOSD表示要素を保持するメモリ領域である。903はメモリ領域901の手描き入力情報を、メモリ領域902のデータに重畳した重畳画像データを保持するメモリ領域である。システム制御部104により各メモリ領域901〜903へデータが展開される。メモリ領域903がメモリ制御部103を介して表示部106に読み出されて表示されることにより、各画面301a、302a、303aが表示される。
【0048】
図3に戻り、311はカメラ100が撮影状態にあることを表示するアイコンであり、312は撮影開始後の経過時間を表示するタイムコードである。
【0049】
318は手描き入力情報を描画するときのペン種別を変更するためのボタンであり、319は手描き入力情報を全消去するためのボタンである。
【0050】
315から始まる矩形の列は、撮影された動画データの各フレームを表しており、中に点がある矩形は、タッチパネル112によって座標が入力され、図2の座標テーブルにエントリが追加されたフレームであることを表している。点がある矩形が孤立している箇所は、画面に点が描画された場面であることを示しており、点がある矩形が連続している個所は、ムーブ操作によって画面に線が描画された場面であることを示している。
【0051】
ここで、図3のように撮影、記録された動画データを、画面302aの時点から再生を開始する場合を考える。
【0052】
302b、303bはそれぞれ、画面302aの時点から再生を開始するときに表示部106に表示される再生画面を例示している。
【0053】
313はカメラ100が再生状態にあることを表示するアイコンであり、314は動画データ全体中の再生位置を表示するタイムコードである。再生時の手描き入力情報およびアイコン313およびタイムコード314はそれぞれ、システム制御部104によってビットマップメモリに展開されたものである。
【0054】
317bは、再生開始位置以前の手描き入力情報、すなわち図3に破線矩形317aで示す範囲内の手描き入力情報を図2の座標テーブルからまとめて読み出し、ビットマップメモリに展開して再現された手描き入力情報である。
【0055】
316から始まる矩形の列は、再生すべき動画データの各フレームを表しており、中に点がある矩形は、図2の座標テーブルにエントリが存在するフレームであることを示している。画面302b以降のフレームでは、再生開始時点のタイムコードに対応する座標テーブルのエントリの手描き入力情報に従って、手描き入力情報が順次再現描画される。
【0056】
このように、再生開始位置以前に遡って手描き入力情報を読み出し描画することによって、画面302bには撮影中の画面302aと同一の画面メモが再現され、画面303bには撮影中の画面303aと同一の画面メモが再現される。
【0057】
なお、説明を簡単にするために、画面301a〜303aに撮影された動画データは図示していない。同様に、画面302bおよび303aには、記録媒体114から読み出された動画データは図示していない。実際には、図3の各画面に表示されるアイコンおよびタイムコードおよび手描き入力情報は、再生動画に重畳されて表示部106に表示される。
【0058】
図3は、動画再生と同時に手描き入力情報を描画する過程を記録することを前提としているが、動画撮影中に手描き入力情報を記録する構成としてもよい。この場合、画面301a〜303aは動画撮影開始後ある期間が経過したときに表示部106に表示される画面構成を示しているということができる。またアイコン311はカメラ100が撮影状態にあることを示すアイコンではなく、アイコン313と同様の再生状態にあることを示すアイコンとなる。
【0059】
<再生制御>次に、図4を参照して、本実施形態のカメラ100による動画データの再生制御について説明する。なお、図4の処理は、システム制御部104が不揮発性メモリ107に記録されたプログラムを読み出し、カメラ100の各部を制御することによって実現される。
【0060】
図4において、ステップS401では、システム制御部104は、カメラ100が再生モードであるか判定し、再生モードでなければ、電源スイッチ115およびモード切替ボタン110が操作され、再生モードになるまで待機する。
【0061】
ステップS402では、システム制御部104は、タッチパネル112への操作によって再生開始指示が入力されたか判定する。
【0062】
ステップS403では、システム制御部104は、再生する動画データの再生開始フレーム時間(タイムコード)Tを決定する。タイムコードTは、例えばステップS402でのタッチパネル112の操作手順によって決定される。
【0063】
ステップS404では、システム制御部104は、図2の座標テーブルにおいてタイムコードTに対応するエントリのポインタP(T)を取得する。座標テーブルにタイムコードTに一致するエントリが存在しない場合は、その次のエントリを指すポインタをP(T)とする。
【0064】
ステップS405では、システム制御部104は、ポインタP(T)が指すエントリのひとつ前のエントリを指すポインタpを取得する。
【0065】
ステップS406からステップS408では、システム制御部104は、タイムコードTからどこまで座標テーブルを遡ればよいかを決定する。後述するように、座標テーブルの遡る先は、本実施形態ではシーンの先頭もしくは手描き入力情報の全消去状態としている。さらに、例えば手描き入力情報の内容が描画後一定期間で消去されるような制御を行っている場合は、この一定期間だけ座標テーブルを遡れば、タイムコードTの時点の手描き入力情報を再現することができる。
【0066】
ステップS406では、システム制御部104は、ポインタpの指すエントリのタイムコードt(p)がシーンの先頭、すなわちタイムコード0:00:00:00であるかを判定する。シーンの先頭であれば、それ以前に座標データは存在しないため、ステップS409に移行し、すべての手描き入力情報の内容を再現することができる。また、シーンの途中であれば、ステップS407へ移行する。
【0067】
ステップS407では、システム制御部104は、ポインタpの指すエントリの属性値attr(p)に「clear」が記述されたエントリ、すなわちタイムコードt(p)が手描き入力情報が全消去された状態であるか判定する。「clear」であれば、ステップS409に移行し、ここを起点に描画処理を行えば、すべての手描き入力情報の内容を再現することができる。また、「clear」でなければ、ステップS408へ移行する。
【0068】
ステップS408では、システム制御部104は、ポインタpをひとつ前のエントリを指すように変更し、ステップS406へリターンする。
【0069】
ステップS409からステップS411では、システム制御部104は、タイムコードTより前の手描き入力情報の内容を再現する。
【0070】
ステップS409では、システム制御部104は、ポインタpが指すエントリの座標データとペン種別等の属性情報を読み出して、それに対応する手描き入力情報をビットマップメモリに展開する。
【0071】
ステップS410では、システム制御部104は、ポインタpをひとつ後のエントリを指すように変更する。
【0072】
ステップS411では、システム制御部104は、タイムコードt(p)がタイムコードTに到達したか判定し、到達したならば、ステップS412へ移行し、未到達ならばステップS409へリターンする。
【0073】
ステップS412では、システム制御部104は、動画データのタイムコードT時点からの再生を開始する。この動画データの再生は、システム制御部104が記録媒体114から読み出したタイムコードT時点の動画データフレームを、メモリ制御部103を介してCODEC119でデコードする。さらに画像処理部102、メモリ制御部103、メモリ105のビデオメモリを経由して表示部106に表示することで実現される。このとき表示部106には、ビットマップメモリに展開された手描き入力情報やアイコン等のOSD表示要素も動画データに重畳されて表示される。
【0074】
ステップS413からステップS417では、システム制御部104は、動画再生中に、タイムコードの進捗に合わせて手描き入力情報の内容を再現する。
【0075】
ステップS413では、システム制御部104は、再生中のタイムコードTがタイムコードt(p)に到達したか判定し、到達したならばステップS414に移行し、未到達ならばステップS416に移行する。
【0076】
ステップS414では、ステップS409と同様に、システム制御部104は、ポインタpが指すエントリの座標データとペン種別等の属性情報を読み出して、それに対応する手描き入力情報をビットマップメモリに展開する。
【0077】
ステップS415では、システム制御部104は、ポインタpをひとつ後のエントリを指すように変更する。
【0078】
ステップS416では、システム制御部104は、タイムコードTをインクリメントし、表示部106に表示された動画データフレームを更新する。
【0079】
ステップS417では、システム制御部104は、再生終了指示が入力されたか判定する。再生終了指示はタッチパネル112、モード切替ボタン110または電源スイッチ115の操作によって入力される。また、再生中の動画データが終端に到達したとき等、システム制御部104が状態を判断して再生終了指示を発行することもある。再生終了指示があれば本処理を終了し、そうでなければステップS413へリターンする。
【0080】
以上のように、本実施形態によれば、動画を途中から再生する際に、動画再生と同時に記録された手描き入力情報を、正しく再現することができる。
【0081】
なお、本実施形態では、手描き入力情報を動画の再生と同時に行っているが、動画再生と同時でなくてもよい。すなわち、手描き入力情報の描画過程だけを再生する場合においても、本発明は有効である。すなわち、手描き入力情報の描画過程をその途中から再生する場合にも正しく再現することができる。
【0082】
[実施形態2]次に、実施形態2として、動画を途中から再生する場合に、動画データに重畳されるべき手描き入力情報が極力少ない処理能力で正しく再現できるように、手描き入力情報を、動画データと共に記録する動作について説明する。なお、本実施形態は、図1と同様の構成を有するカメラにより実現される。
【0083】
図5は、図2の座標テーブルフォーマットにbmp列が追加されたものである。手描き入力情報の描画時に発生したイベントおよび状態がシステム制御部104によって時系列に記録されると共に、再生時には手描き入力情報を再現するために参照される。
【0084】
この座標テーブルは、動画撮影時にエンコードされた動画データと共にシステム制御部104によって記録媒体114に記録され、再生時には記録媒体114からメモリ105に読み出され、システム制御部104が参照する。
【0085】
t列およびx列およびy列およびattr列は、図2の座標テーブルと同等である。
【0086】
bmp列は、t列のタイムコード時点に表示部106に表示されている手描き入力情報を記録した手描き画像データへのファイルパスである。この手描き画像データも、システム制御部104によってビットマップメモリに展開されたデータから作成され、座標テーブルと共に記録媒体114に記録される。
【0087】
図6は、タッチパネル112への入力によってシステム制御部104が手描き入力情報を描画しながら動画撮影したときに表示部106に表示される画面と、途中から再生を開始したときに表示部106に表示される画面を例示している。なお、図3と同一の構成要素については同一の符号を付して説明を省略する。
【0088】
図6において、601、602、603、604はそれぞれ、動画撮影時にシステム制御部104がビットマップメモリのメモリ領域901に保持された手描き入力情報の内容を一定時間ごとに手描き画像データとして作成したデータである。これらの手描き画像データのファイル名は図5の座標テーブルに記述され、撮影時のタイムコードと関連付けされて記録媒体114に記録される。
【0089】
ここで、図6のように撮影、記録された動画データを、画面302aの時点から再生を開始する場合を考える。
【0090】
このとき、再生開始位置以前で直近の手描き入力情報、すなわち再生開始時点から手描き入力情報を取得可能な時点まで遡って、図6の手描き画像データ602が読み出され、ビットマップメモリに展開される。ここから、更に手描き入力情報に基づき描画を行うことで、再生開始時点での手描き入力情報が復元され、画面302bが表示部106に表示される。その後は図3と同様に、再生開始時点のタイムコードに対応する座標テーブルのエントリの座標データに従って、手描き入力情報が順次再現される。
【0091】
このように、再生開始位置以前で直近の手描き入力情報を読み出し、それ以降、再生開始時点から遡って手描き入力情報を読み出し描画することによって、画面302bには撮影時の画面302aと同一の画面メモが再現される。また、画面303bには撮影時の画面303aと同一の画面メモが再現される。
【0092】
図6では、動画撮影と同時に手描き入力情報を描画する過程を記録することを前提としているが、動画再生中に手描き入力情報を記録する構成としてもよい。この場合、画面301a〜303aは動画再生開始後ある期間が経過したときに表示部106に表示される画面構成を示しているということができる。またアイコン311はカメラ100が撮影状態にあることを示すアイコンではなく、アイコン313と同様の再生状態にあることを示すアイコンとなる。
【0093】
<記録制御>次に、図7を参照して、本実施形態のカメラ100による撮影時に手描き画像データを逐次記録する制御について説明する。なお、図7の処理は、システム制御部104が不揮発性メモリ107に記録されたプログラムを読み出し、カメラ100の各部を制御することによって実現される。
【0094】
図7において、ステップS701では、システム制御部104は、カメラ100が撮影モードであるか判定し、撮影モードでなければ、電源スイッチ115およびモード切替ボタン110が操作され、撮影モードになるまで待機する。
【0095】
ステップS702では、システム制御部104は、トリガーボタン111への操作によって撮影開始指示が入力されたか判定する。
【0096】
ステップS703では、システム制御部104は、図5のフォーマットの空の座標テーブルをメモリ105に新規作成する。
【0097】
ステップS704では、システム制御部104は、メモリ105にタイムコードTおよび座標テーブルのインデックスnおよびエントリ作成フラグflagの各変数を作成し、それぞれを0で初期化する。
【0098】
ステップS705では、システム制御部104は、タッチパネル112がタッチオン状態であるか判定し、タッチオン状態であるならばステップS706に移行し、タッチオフ状態であるならばステップS709に移行する。
【0099】
ステップS706では、システム制御部104は、タッチオンされている座標(x、y)をタッチパネル112から、ペン種別をメモリ105からそれぞれ取得する。ペン種別は、特に記載していないが、ボタン318に対するタッチダウンによって決定し、メモリ105にその設定状態が保存されている。
【0100】
ステップS707では、システム制御部104は、ステップS705のタッチオンが全消去ボタン319に対するタッチダウンであるか判定する。
【0101】
ステップS708では、システム制御部104は、ビットマップメモリを全て初期化し、手描き入力情報を全消去する。
【0102】
ステップS709では、システム制御部104は、ステップS706で取得した座標およびペン種別に従って、ビットマップメモリに手描き入力情報の一部を描画する。
【0103】
ステップS710では、システム制御部104は、ステップS715で座標テーブルにエントリを追加するためのフラグを設定する。
【0104】
ステップS711では、システム制御部104は、手描き入力情報を作成し記録する条件に合致しているか判定する。この条件は、例えばタイムコードTが定められた周期に到達したときとしてもよい。ただしこの場合は、タッチオフ状態では手描き入力情報の内容が変更されていないため、タッチオフ期間中は条件を満たさないとしてもよい。あるいは、タッチダウンまたはタッチアップが定められた回数行われたときとしてもよいし、座標テーブルにエントリが定められた数だけ追加されたときとしてもよい。あるいは、ステップS708等の処理によって手描き入力情報を全消去状態である場面では、この条件を満たさないとしてもよい。
【0105】
ところで、同時に記録している(あるいは再生している)動画は、CODEC119によって、多くの場合MEPG2やH.264等のフレーム間符号化技術を用いてエンコードされる(あるいはされている)。フレーム間符号化技術では、単体で複合化可能なIピクチャと、前後のピクチャの情報を参照して複合化されるPピクチャもしくはBピクチャの組み合わせによって符号化されている。ステップS711では、このIピクチャのタイミングでのみ条件を満たすとしてもよい。フレーム間符号化された動画データを途中から再生する場合、Iピクチャを起点に再生すると効率が良く、そのようにすることが多い。したがって、手描き入力情報も同じIピクチャのタイミングのものを保持しておいたほうが効率的なためである。
【0106】
ステップS711で条件に合致していればステップS712に移行し、合致していなければステップS714に移行する。
【0107】
ステップS712では、システム制御部104は、ビットマップメモリのメモリ領域901から手描き入力情報を読み出して画像データに変換し、記録媒体114に記録する。
【0108】
ステップS713では、システム制御部104は、ステップS715以降で座標テーブルにエントリを追加するためのフラグを設定する。
【0109】
ステップS714では、システム制御部104は、ステップS715以降で座標テーブルにエントリを追加するためのフラグが成立しているか判定する。ここでステップS710もしくはステップS713の処理を実行していれば、これが真となり、ステップS715へ移行し、偽であればステップS719へ移行する。
【0110】
ステップS715では、システム制御部104は、座標テーブルにエントリEnを追加する。
【0111】
ステップS716では、システム制御部104は、追加したエントリEnに対してメンバを記録する。タイムコードT、ステップS705でタッチオン状態であればタッチ座標xおよびy、属性情報attr、ステップS712で画像データを記録媒体114に記録していればそれを指すファイルパスbmp、がそれぞれ記録される。属性情報attrは、ステップS706で取得したペン種別、もしくはステップS708でビットマップメモリを全消去したことを表すフラグである。
【0112】
ステップS717では、システム制御部104は、エントリのインデックスnを加算する。
【0113】
ステップS718では、システム制御部104は、座標テーブルにエントリを追加するためのフラグを初期化する。
【0114】
ステップS719では、システム制御部104は、トリガーボタン111もしくはモード切替ボタン110もしくは電源スイッチ115の操作によって撮影終了指示が入力されたか判定する。ここで、撮影終了指示は、記録媒体114の残容量が規定を超えたとき等、システム制御部104自身が状態を判断して再生終了指示を発行することもある。
撮影終了指示がされたならばステップS720に移行し、そうでなければステップS721に移行する。
【0115】
ステップS720では、システム制御部104は、作成された座標テーブルを記録媒体114に記録する。
【0116】
ステップS721では、システム制御部104は、タイムコードTをインクリメントし、ステップS705へリターンする。
【0117】
<再生制御>次に、図8を参照して、図6のように動画再生を途中から開始したときの制御について説明する。なお、図8の処理は、システム制御部104が不揮発性メモリ107に記録されたプログラムを読み出し、カメラ100の各部を制御することによって実現される。また、図8において、図4と同等の処理ステップには同一のステップ番号を付して説明を省略する。
【0118】
図8において、ステップS407での判定が「clear」でない場合、ステップS801へ移行する。ステップS801では、システム制御部104は、図5の座標テーブル中にポインタpの指すエントリの画像データへのファイルパスbmp(p)が存在するか判定し、存在するならばステップS802へ移行し、存在しないならばステップS408へ移行する。
【0119】
ステップS802では、システム制御部104は、ファイルパスbmp(p)が指す画像データを記録媒体114から読み出して、ビットマップメモリのメモリ領域901へ展開する。この処理によって、タイムコードt(p)時点の手描き入力情報がビットマップメモリに展開される。
【0120】
ステップS410では、システム制御部104は、ポインタpをひとつ後のエントリを指すように変更する。ステップS409以降の処理は図4のフローチャートと同一である。
【0121】
上述した実施形態1では、動画再生を途中から開始する場合に手描き入力情報を再現するためには、シーンの先頭もしくは手描き画面が全消去された時点まで遡る必要があった。そのため、手描き入力情報を長時間にわたって描画し続けた場合には、その途中から再生するためには、大量のデータ処理が必要となり、処理負荷が大きくなる。
【0122】
これに対して、実施形態2では、手描き入力情報を、動画撮影時に逐次記録することができるので、動画再生時点から直近の手描き入力情報が記録された時点まで遡ればよい。よって、実施形態1に比べて、手描き入力情報を再現する際のデータ処理負荷を小さくすることができる。
【0123】
なお、本実施形態では、手描き入力情報の記録を動画撮影と同時に行っているが、動画撮影と同時でなくてもよい。すなわち、手描き入力情報の再現に必要なデータのみを記録する場合においても、本発明は有効である。その場合でも、手描き入力情報の描画過程だけを再生する際のデータ処理負荷を小さくすることができる。
【0124】
ところで、実施形態2によれば、手描き入力情報の描画過程を早送りもしくは早戻し再生する場合も、これを効率良く実現することができる。
【0125】
図10は、システム制御部104が図7の処理によって記録された手描き画像データと、それを早戻し再生したときの表示部106の表示画面を例示している。なお、早送り再生も以下の説明と同様の制御によって実現することができる。
【0126】
図10において、1001a、1002a、1003a、1004aはいずれも、システム制御部104が図7の処理によって一定時間ごとに記録媒体114に記録された手描き入力情報である。
【0127】
1001b、1002b、1003b、1004bはいずれも、早戻し再生時に表示部106に表示される画面を例示している。タイムコード0:00:35(秒)から0:00:20(秒)まで早戻しする際に、図示のように画面1001aから画面1004aまでの手描き画像データを順次読み出して表示することで、データ処理負荷を小さくしつつ早戻し再生を効率良く実現できる。
【0128】
また、手描き入力情報と同時に動画データを記録しており、それを早戻し再生する場合には、図10に示す間隔よりも狭い間隔で動画データを再生することが考えられる。例えば、タイムコード0:00:35(秒)から0:00:20(秒)までを1秒間隔で再生するときは、タイムコード0:00:35(秒)から0:00:31(秒)までは画面1001aを重畳し、タイムコード0:00:30(秒)から0:00:26(秒)までは画面1001bを重畳して再生すればよい。これにより、手描き入力情報の表示は厳密にはタイムコードと一致しないが、視覚的には違和感なく早戻し再生を行っているように見える。もちろん、ポーズもしくは通常再生に移行した後は、図7に従ってその時点の手描き入力情報を正しく再現することができる。
【0129】
[他の実施形態]本発明は、以下の処理を実行することによっても実現される。即ち上述した実施形態の機能を実現するソフトウェア(プログラム)をネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(又はCPUやMPU等)がプログラムコードを読み出して実行する処理である。この場合、そのプログラム、及び該プログラムを記憶した記憶媒体は本発明を構成することになる。

【特許請求の範囲】
【請求項1】
動画データを再生して表示部に表示する再生手段と、
前記動画データを再生中に、前記表示部に表示されている動画の上にユーザが任意の手描き画像を描画可能な描画手段と、
前記描画手段により描画された手描き画像データを、前記動画データの再生タイミングに同期させて記録する記録手段と、
前記動画データの再生を、動画データの途中の任意の時点から開始させる指示手段と、
前記指示手段により、前記動画データの再生が、前記手描き画像データと同期している途中の時点で指示された場合に、前記動画データと関連付けて記録された前記手描き画像データを、前記指示手段により指示された時点より前に遡って読み出し、前記再生を開始する時点で表示される動画に重畳して前記表示部に表示するように制御する制御手段とを有することを特徴とする再生装置。
【請求項2】
前記表示部へのタッチされた座標を検出する検出手段を更に有し、
前記手描き画像データは、前記検出手段で検出した座標データを含み、
前記記録手段は、検出した前記座標データを前記動画データの再生タイミングに同期させて記録することを特徴とする請求項1に記載の再生装置。
【請求項3】
前記記録手段は、前記手描き画像データの描画時に発生したイベントごとに、少なくとも、前記画面に対してタッチオンが検出されたときの動画のタイムコードと、前記タイムコードの時点にタッチオンされている位置を表す座標と、前記イベントごとの属性情報とを含む座標テーブルを記録し、
前記属性情報は、前記手描き画像が消去されたことを表す情報、またはタッチオンが検出されたときの前記操作手段としてのペン種別に関する情報を含むことを特徴とする請求項1または2に記載の再生装置。
【請求項4】
前記制御手段は、前記手描き画像が描画されていない時点または消去された時点まで遡って前記手描き画像データを読み出し、前記再生を開始する時点での動画データに重畳して表示するように前記表示手段を制御することを特徴とする請求項1ないし3のいずれか1項に記載の再生装置。
【請求項5】
前記制御手段は、前記再生を開始する位置から規定の時間だけ遡って前記手描き画像データを読み出し、前記再生を開始する時点での動画データに重畳して表示するように前記表示手段を制御することを特徴とする請求項1ないし4のいずれか1項に記載の再生装置。
【請求項6】
動画データを再生して表示部に表示する再生手段と、
前記動画データを再生中に、前記表示部に表示されている動画の上にユーザが任意の手描き画像を描画可能な描画手段と、
前記描画手段により描画された手描き画像データを、前記動画データの再生タイミングに同期させて記録する記録手段とを有する再生装置の制御方法であって、
前記動画データの再生を、動画データの途中の任意の時点から開始させる指示工程と、
前記指示工程により、前記動画データの再生が、前記手描き画像データと同期している途中の時点で指示された場合に、前記動画データと関連付けて記録された前記手描き画像データを、前記指示工程により指示された時点より前に遡って読み出し、前記再生を開始する時点で表示される動画に重畳して前記表示部に表示するように制御する制御工程とを有することを特徴とする制御方法。
【請求項7】
動画データを再生して表示部に表示する再生手段と、
前記動画データを再生中に、前記表示部に表示されている動画の上にユーザが任意の手描き画像を描画可能な描画手段と、
前記描画手段により描画された手描き画像データを、前記動画データの再生タイミングに同期させて記録する記録手段とを有する再生装置のコンピュータに読み込ませることによって、
前記動画データの再生を、動画データの途中の任意の時点から開始させる指示工程と、
前記指示工程により、前記動画データの再生が、前記手描き画像データと同期している途中の時点で指示された場合に、前記動画データと関連付けて記録された前記手描き画像データを、前記指示工程により指示された時点より前に遡って読み出し、前記再生を開始する時点での動画データに重畳して前記表示部に表示するように制御する制御工程とをコンピュータに実行させるプログラム。
【請求項8】
請求項7に記載のプログラムを格納することを特徴とする、コンピュータにより読み取り可能な記憶媒体。

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


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