(57)【特許請求の範囲】
【請求項１】
動画データを再生して表示部に表示する再生手段と、
前記動画データを再生中に、前記表示部に表示されている動画の上にユーザが任意の手描き画像を描画可能な描画手段と、
前記描画手段により描画された画像の手描きのプロセスを、前記動画データの再生タイミングに同期して再現するための手描き画像データをメモリに記録する記録手段と、
前記動画データの再生を、動画データの途中の任意の時点から開始させる指示手段と、
前記指示手段により、前記動画データの再生が、前記手描き画像の描画の途中の時点から開始するように指示された場合に、前記手描き画像が無い時点から、前記指示手段により指示された時点までのプロセスで描画された手描き画像を、前記再生を開始する時点で表示される動画に重畳して前記表示部に表示すると共に、前記動画データの再生に同期して前記描画された画像の手描きのプロセスを再現するように制御する制御手段とを有することを特徴とする再生装置。
【請求項２】
前記表示部へのタッチされた座標を検出する検出手段を更に有し、
前記手描き画像データは、前記検出手段で検出した座標データを含み、
前記記録手段は、検出した前記座標データを前記動画データの再生タイミングに同期させて記録することを特徴とする請求項１に記載の再生装置。
【請求項３】
前記記録手段は、前記手描き画像データの描画時に発生したイベントごとに、少なくとも、前記表示部に対してタッチオンが検出されたときの動画のタイムコードと、前記タイムコードの時点にタッチオンされている位置を表す座標と、前記イベントごとの属性情報とを含む座標テーブルを記録し、
前記属性情報は、前記手描き画像が消去されたことを表す情報、またはタッチオンが検出されたときの前記描画手段としてのペン種別に関する情報を含むことを特徴とする請求項１または２に記載の再生装置。
【請求項４】
前記制御手段は、前記再生を開始する位置から規定の時間だけ遡って、前記手描き画像を、前記再生を開始する時点で表示される動画に重畳して前記表示部に表示するように制御することを特徴とする請求項１ないし３のいずれか１項に記載の再生装置。
【請求項５】
動画データを再生して表示部に表示する再生手段と、
前記動画データを再生中に、前記表示部に表示されている動画の上にユーザが任意の手描き画像を描画可能な描画手段と、
前記描画手段により描画された画像の手描きのプロセスを、前記動画データの再生タイミングに同期して再現するための手描き画像データをメモリに記録する記録手段とを有する再生装置の制御方法であって、
前記動画データの再生を、動画データの途中の任意の時点から開始させる指示工程と、
前記指示工程により、前記動画データの再生が、前記手描き画像の描画の途中の時点から開始するように指示された場合に、前記手描き画像が無い時点から、前記指示工程により指示された時点までのプロセスで描画された手描き画像を、前記再生を開始する時点で表示される動画に重畳して前記表示部に表示すると共に、前記動画データの再生に同期して前記描画された画像の手描きのプロセスを再現するように制御する制御工程とを有することを特徴とする制御方法。
【請求項６】
動画データを再生して表示部に表示する再生手段と、
前記動画データを再生中に、前記表示部に表示されている動画の上にユーザが任意の手描き画像を描画可能な描画手段と、
前記描画手段により描画された画像の手描きのプロセスを、前記動画データの再生タイミングに同期して再現するための手描き画像データをメモリに記録する記録手段とを有する再生装置のコンピュータに読み込ませることによって、
前記動画データの再生を、動画データの途中の任意の時点から開始させる指示工程と、
前記指示工程により、前記動画データの再生が、前記手描き画像の描画の途中の時点から開始するように指示された場合に、前記手描き画像が無い時点から、前記指示工程により指示された時点までのプロセスで描画された手描き画像を、前記再生を開始する時点で表示される動画に重畳して前記表示部に表示すると共に、前記動画データの再生に同期して前記描画された画像の手描きのプロセスを再現するように制御する制御工程とをコンピュータに実行させるプログラム。
【請求項７】
請求項６に記載のプログラムを格納することを特徴とする、コンピュータにより読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、動画再生時に描画された画像を記録し、その描画された画像を動画と共に再生する記録再生技術に関する。
【背景技術】
【０００２】
マウスやタッチパネルのようなポインティングデバイスを用いて、表示装置上に文字やイラスト等を手描きで描画することができる装置がある。また、文字やイラストなどを手描きで描画したとき、その手描き入力情報の座標データを時系列に記録しておき、再生時に座標データを順次読み出すことによって描画する過程を再現できる装置がある。
【０００３】
例えば、特許文献１には、テープ状の記録媒体に動画と共に手描き入力情報の座標データを記録しておき、動画再生時に順次座標データを読み出して手描き入力情報を描画した過程を再現し、動画データに重畳して再生する装置が提案されている。
【０００４】
通常、動画データを手描き入力情報と重畳して記録すると、手描き入力部分を除いた動画のみの再生ができなくり、また、動画撮影と同時に手描き入力情報を記録する必要があるが、上記特許文献１によれば、動画のみの再生や、動画を再生しながら手描き入力情報の描画過程を再現できる。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開平１１−１８７３４８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、上記特許文献１は、ランダムにアクセスができないテープ状の記録媒体を前提としているため、動画の途中から再生を開始する場合については考慮されていない。そのため、動画の途中から再生を開始したい場合、テープにおける再生開始位置以前に記録されている手描き入力情報の座標データは読み出しできないため、描画の過程を忠実に再現することはできない。
【０００７】
本発明は、上記課題に鑑みてなされ、その目的は、動画を途中から再生する場合であっても、手描き入力情報の描画の過程を忠実に再現することができる記録再生技術を実現することである。
【課題を解決するための手段】
【０００８】
上記課題を解決し、目的を達成するため、本発明の再生装置は、動画データを再生して表示部に表示する再生手段と、前記動画データを再生中に、前記表示部に表示されている動画の上にユーザが任意の手描き画像を描画可能な描画手段と、前記描画手段により描画された画像の手描きのプロセスを、前記動画データの再生タイミングに同期して再現するための手描き画像データをメモリに記録する記録手段と、前記動画データの再生を、動画データの途中の任意の時点から開始させる指示手段と、前記指示手段により、前記動画データの再生が、前記手描き画像の描画の途中の時点から開始するように指示された場合に、前記手描き画像が無い時点から、前記指示手段により指示された時点までのプロセスで描画された手描き画像を、前記再生を開始する時点で表示される動画に重畳して前記表示部に表示すると共に、前記動画データの再生に同期して前記描画された画像の手描きのプロセスを再現するように制御する制御手段とを有する。
【発明の効果】
【０００９】
本発明によれば、動画を途中から再生する場合であっても、手描き入力情報の描画の過程を忠実に再現することができる。
【図面の簡単な説明】
【００１０】
【図１】本発明に係る実施形態のデジタルビデオカメラのブロック図。
【図２】実施形態１の座標テーブルを例示する図。
【図３】実施形態１の再生画面を例示する図。
【図４】実施形態１の再生制御を示すフローチャート。
【図５】実施形態２の座標テーブルを例示する図。
【図６】実施形態２の再生画面を例示する図。
【図７】実施形態２の記録制御を示すフローチャート。
【図８】実施形態２の再生制御を示すフローチャート。
【図９】ビットマップメモリの構成を例示する図。
【図１０】早戻し再生時の再生画面を例示する図。
【発明を実施するための形態】
【００１１】
以下に、本発明を実施するための形態について詳細に説明する。尚、以下に説明する実施の形態は、本発明を実現するための一例であり、本発明が適用される装置の構成や各種条件によって適宜修正又は変更されるべきものであり、本発明は以下の実施の形態に限定されるものではない。また、後述する各実施形態の一部を適宜組み合わせて構成しても良い。
【００１２】
本実施形態では、本発明の撮像装置をデジタルビデオカメラ（以下、カメラ）に適用した実施形態について説明する。
【００１３】
＜撮像装置の構成＞図１を参照して、本実施形態のカメラ１００の構成について概説する。
【００１４】
図１において、１０１は撮像部であり、フォーカスレンズを含む撮像レンズ、絞り、光学像を電気信号に変換するＣＣＤもしくはＣＭＯＳ素子、アナログ信号をデジタル信号に変換するＡ／Ｄ変換器を含む。
【００１５】
１０２は画像処理部であり、撮像部１０１からの動画データ、または、メモリ制御部１０３からのデータに対し所定の画素補間、縮小といったリサイズ処理や色変換処理を行う。また、画像処理部１０２は、撮像した動画データを用いて所定の演算処理を行い、その演算結果に基づいてシステム制御部１０４が露光制御、測距制御を行う。これにより、ＡＦ（オートフォーカス）処理、ＡＥ（自動露出）処理が行われる。画像処理部１０２は更に、撮像した動画データを用いて所定の演算処理を行い、その演算結果に基づいてＡＷＢ（オートホワイトバランス）処理を行う。
【００１６】
１１９はＣＯＤＥＣであり、画像処理部１０２からの動画データをＭＰＥＧ２やＨ．２６４等の動画圧縮方式でエンコードしたり、メモリ制御部１０３からのエンコード済み動画データをデコードしたりする。
【００１７】
撮像部１０１から出力されるデータは、画像処理部１０２およびＣＯＤＥＣ１１９およびメモリ制御部１０３を介して、メモリ１０５に書き込まれる。
【００１８】
メモリ１０５は、撮像部１０１で生成され、ＣＯＤＥＣ１１９によってエンコードされた動画データや、表示部１０６に表示するための表示用の動画データを格納する。メモリ１０５は、所定時間の動画や音声と付随する手描き入力情報を格納するのに十分な記録容量を備えている。また、メモリ１０５はＯＳＤ表示用のビットマップメモリおよび画像表示用のビデオメモリを兼ねている。
【００１９】
表示部１０６はＬＣＤパネル等からなり、メモリ１０５から読み出した表示用の動画データに従って動画を表示する。撮像部１０１によってメモリ１０５に蓄積された動画データを表示部１０６に逐次転送して表示することで、電子ビューファインダ（スルー画像表示）として機能する。表示部１０６は更に、メモリ１０５のビットマップメモリに展開されたアイコンやタイムコード等のＯＳＤ（オンスクリーンディスプレイ）やタッチパネル１１２による手描き入力情報を動画に重畳して表示する機能も含む。
【００２０】
不揮発性メモリ１０７は、電気的に消去・記録可能なメモリであり、例えばＥＥＰＲＯＭ等が用いられる。不揮発性メモリ１０７には、システム制御部１０４の動作用の定数、プログラム等が記録される。ここでいう、プログラムとは、後述するフローチャートを実行するためのプログラムのことである。
【００２１】
システム制御部１０４は、マイクロコンピュータ等を備え、不揮発性メモリ１０７に記録されたプログラムに従い、カメラ１００の各部の動作を制御し、後述する再生制御や記録制御を実現する。
【００２２】
１０８はシステムメモリであり、ＲＡＭが用いられる。システムメモリ１０８には、システム制御部１０４の動作用の定数、変数、不揮発性メモリ１０７から読み出したプログラム等が展開される。また、システム制御部１０４はメモリ１０５や表示部１０６を制御することにより表示制御も行う。システムメモリ１０８はメモリ１０５と共通であってもよい。
【００２３】
システムタイマー１０９は各種制御に用いる時間や、内蔵時計の時間を計測する計時部である。
【００２４】
電源スイッチ１１５、モード切替ボタン１１０、トリガーボタン１１１、タッチパネル１１２はシステム制御部１０４に各種の動作指示を入力するための操作手段である。
【００２５】
電源スイッチ１１５は、カメラ１００への電源のオン、オフを切り替える。
【００２６】
モード切替ボタン１１０は、システム制御部１０４の動作モードを切り替えるための、モード切替信号を発生する。システム制御部１０４は、モード切替信号により、動作モードを記録モード、再生モードのいずれかに切り替える。
【００２７】
トリガーボタン１１１は、システム制御部１０４に対して、撮影開始または撮影終了を指示するための、トリガー信号を発生する。システム制御部１０４は、トリガー信号により、撮像部１０１、画像処理部１０２、ＣＯＤＥＣ１１９およびメモリ制御部１０３を介してメモリ１０５に保持されたエンコード済み動画データを記録媒体１１４に書き込むまでの一連の処理を開始または終了する。
【００２８】
タッチパネル１１２は、表示部１０６に対する接触を検知可能であり、タッチパネル１１２と表示部１０６とは一体的に構成できる。例えば、タッチパネル１１２を光の透過率が表示部１０６の表示を妨げないように構成し、表示部１０６の表示面の上層に取り付ける。そして、タッチパネル１１２における入力座標と、表示部１０６上の表示座標とを対応付ける。これにより、あたかもユーザが表示部１０６に表示された画面を直接的に操作しているようなＧＵＩを構成することができる。システム制御部１０４はタッチパネル１１２への以下の操作を検出できる。タッチパネルを指やペンで触れたこと（以下、タッチダウンと称する）。タッチパネルを指やペンで触れている状態であること（以下、タッチオンと称する）。タッチパネルを指やペンで触れたまま移動していること（以下、ムーブと称する）。タッチパネルへ触れていた指やペンを離したこと（以下、タッチアップと称する）。タッチパネルに何も触れていない状態（以下、タッチオフと称する）。これらの操作や、タッチパネルに指やペンが触れている位置座標はシステム制御部１０４に通知され、システム制御部１０４は通知された情報に基づいてタッチパネル上にどのような操作が行われたかを判定する。ムーブについてはタッチパネル上で移動する指やペンの移動方向についても、位置座標の変化に基づいて、タッチパネル上の垂直成分・水平成分毎に判定できる。またタッチパネル上をタッチダウンから一定のムーブを経てタッチアップをしたとき、ストロークを描いたこととする。タッチパネルは、抵抗膜方式や静電容量方式、表面弾性波方式、赤外線方式、電磁誘導方式、画像認識方式、光センサ方式等、様々な方式のタッチパネルのうちいずれの方式のものを用いても良い。
【００２９】
１１８は、カメラ１００を外部機器と接続するための外部（Ｉ／Ｆ）インターフェースであり、例えばＵＳＢや赤外線や無線通信のＩ／Ｆが用いられる。外部Ｉ／Ｆ１１８にマウス等のポインティングデバイスを接続することで、これをタッチパネル１１２の代わりの入力手段として扱うこともできる。このときシステム制御部１０４は、外部Ｉ／Ｆ１１８に接続されたマウスの入力を受けて表示部１０６にポインタを表示する。さらに、マウスの移動やクリック信号を受けて、タッチパネル１１２によるタッチダウン、ムーブ、タッチアップ等の操作と同等の制御を行う。
【００３０】
１１６は電源制御部であり、電池検出回路、ＤＣ−ＤＣコンバータ、通電するブロックを切り替えるスイッチ回路等により構成され、電池の装着の有無、電池の種類、電池残量の検出を行う。また、電源制御部１１６は、その検出結果及びシステム制御部１０４の指示に基づいてＤＣ−ＤＣコンバータを制御し、必要な電圧を必要な期間、記録媒体１１４を含む各部へ供給する。
【００３１】
１１７は電源部であり、アルカリ電池やリチウム電池等の一次電池やＮｉＣｄ電池やＮｉＭＨ電池、Ｌｉ電池等の二次電池、ＡＣアダプター等からなる。
【００３２】
１１３はメモリカードやハードディスク等の記録媒体１１４とのインターフェースである。記録媒体１１４は、メモリカード等の記録媒体であり、半導体メモリや磁気ディスク等から構成される。
【００３３】
記録媒体１１４には、メモリ１０５に格納されたエンコード済み動画データと付随する手描き入力情報がＩ／Ｆ１１３を介して記録される。また、記録媒体１１４は、自身に記録されているエンコード済み動画データと付随する手描き入力情報がＩ／Ｆ１１３を介して読み出される。記録媒体１１４はカメラ１００に装着されるメモリカードやハードディスクドライブやディスクであってもよいし、カメラ１００に内蔵されたフラッシュメモリやハードディスクドライブであってもよい。
【００３４】
以下、図２乃至図８を参照して、本実施形態について説明する。
【００３５】
［実施形態１］実施形態１では、画面上でユーザが任意の手描き入力情報を描画可能なカメラ１００において、動画を途中から再生する際に、動画再生と同時に記録された手描き入力情報を忠実に再現する。
【００３６】
図２の座標テーブルは、手描き入力情報の描画時に発生したイベントがシステム制御部１０４によって時系列に記録されると共に、再生時には手描き入力情報を再現するために参照される。
【００３７】
この座標テーブルは、動画撮影時にエンコードされた動画データと共にシステム制御部１０４によって記録媒体１１４に記録され、再生時には記録媒体１１４からメモリ１０５に読み出され、システム制御部１０４が参照する。
【００３８】
ｔ列は、タッチオン状態であったときの動画のタイムコードである。イベントは時系列に記録されるため、ｔ列のタイムコードは昇順に整列した状態になっている。
【００３９】
ｘ列は、ｔ列のタイムコード時点にタッチオンされている位置を表すｘ座標であり、ｙ列は同じくｙ座標である。ｘ列およびｙ列が−となっている行は、タッチオン以外の特殊なイベントが発生したタイムコード時点であることを示している。
【００４０】
ａｔｔｒ列は、各行のイベントの属性情報を示している。例えば「ｃｌｅａｒ」行は画面全体の手描き入力情報が消去されたことを表している。「ｐｅｎ Ａ」および「ｐｅｎ Ｂ」はそれぞれ、タッチオンしたときのペン先設定を表している。これらの属性情報は、後述するボタン３１８および３１９の操作によって付与される。
【００４１】
図２の座標テーブルにおけるエントリｅ２およびｅ３のように、同じタイムコードで複数の手描き座標データを記述することもできる。これは、例えば、動画撮影を開始する前に手描き入力情報を描画していたり、動画再生のポーズ中に手描き入力情報を描画していたりしたことを表している。
【００４２】
以上のように、本実施形態では、動画データとは別に手描き入力情報の座標テーブルを作成し、動画データのタイムコードに関連付けて記録している。なお、手描き入力情報の座標テーブルは動画データの再生タイミングと同期できればよく、その手段はタイムコードである必要はない。例えば、記録時の日時情報に同期させてもよい。
【００４３】
また、手描き入力情報の座標テーブルを作成せずに、動画データストリーム内に埋め込んで記録しても構わない。
【００４４】
図３は、タッチパネル１１２への操作によって手描き入力情報を描画しながら動画撮影したときに表示部１０６に表示される画面と、途中から再生したときに表示部１０６に表示される画面を例示している。
【００４５】
図３において、３０１ａ〜３０３ａはそれぞれ、動画撮影開始後ある期間が経過したときに表示部１０６に表示される画面であり、画面３０１ａから手描き入力情報の描画を開始し、画面３０２ａを経由して、画面３０３ａで描画を終了する過程を示している。
【００４６】
各画面３０１ａ〜３０３ａは、メモリ１０５のビットマップメモリに構成されている。図９はビットマップメモリの構成を示し、ビットマップメモリは、少なくとも３画面分の領域を備えている。
【００４７】
９０１は手描き入力情報の内容のみを保持するメモリ領域であり、９０２は手描き入力情報以外のＯＳＤ表示要素を保持するメモリ領域である。９０３はメモリ領域９０１の手描き入力情報を、メモリ領域９０２のデータに重畳した重畳画像データを保持するメモリ領域である。システム制御部１０４により各メモリ領域９０１〜９０３へデータが展開される。メモリ領域９０３がメモリ制御部１０３を介して表示部１０６に読み出されて表示されることにより、各画面３０１ａ、３０２ａ、３０３ａが表示される。
【００４８】
図３に戻り、３１１はカメラ１００が撮影状態にあることを表示するアイコンであり、３１２は撮影開始後の経過時間を表示するタイムコードである。
【００４９】
３１８は手描き入力情報を描画するときのペン種別を変更するためのボタンであり、３１９は手描き入力情報を全消去するためのボタンである。
【００５０】
３１５から始まる矩形の列は、撮影された動画データの各フレームを表しており、中に点がある矩形は、タッチパネル１１２によって座標が入力され、図２の座標テーブルにエントリが追加されたフレームであることを表している。点がある矩形が孤立している箇所は、画面に点が描画された場面であることを示しており、点がある矩形が連続している個所は、ムーブ操作によって画面に線が描画された場面であることを示している。
【００５１】
ここで、図３のように撮影、記録された動画データを、画面３０２ａの時点から再生を開始する場合を考える。
【００５２】
３０２ｂ、３０３ｂはそれぞれ、画面３０２ａの時点から再生を開始するときに表示部１０６に表示される再生画面を例示している。
【００５３】
３１３はカメラ１００が再生状態にあることを表示するアイコンであり、３１４は動画データ全体中の再生位置を表示するタイムコードである。再生時の手描き入力情報およびアイコン３１３およびタイムコード３１４はそれぞれ、システム制御部１０４によってビットマップメモリに展開されたものである。
【００５４】
３１７ｂは、再生開始位置以前の手描き入力情報、すなわち図３に破線矩形３１７ａで示す範囲内の手描き入力情報を図２の座標テーブルからまとめて読み出し、ビットマップメモリに展開して再現された手描き入力情報である。
【００５５】
３１６から始まる矩形の列は、再生すべき動画データの各フレームを表しており、中に点がある矩形は、図２の座標テーブルにエントリが存在するフレームであることを示している。画面３０２ｂ以降のフレームでは、再生開始時点のタイムコードに対応する座標テーブルのエントリの手描き入力情報に従って、手描き入力情報が順次再現描画される。
【００５６】
このように、再生開始位置以前に遡って手描き入力情報を読み出し描画することによって、画面３０２ｂには撮影中の画面３０２ａと同一の画面メモが再現され、画面３０３ｂには撮影中の画面３０３ａと同一の画面メモが再現される。
【００５７】
なお、説明を簡単にするために、画面３０１ａ〜３０３ａに撮影された動画データは図示していない。同様に、画面３０２ｂおよび３０３ｂには、記録媒体１１４から読み出された動画データは図示していない。実際には、図３の各画面に表示されるアイコンおよびタイムコードおよび手描き入力情報は、再生動画に重畳されて表示部１０６に表示される。
【００５８】
図３は、動画再生と同時に手描き入力情報を描画する過程を記録することを前提としているが、動画撮影中に手描き入力情報を記録する構成としてもよい。この場合、画面３０１ａ〜３０３ａは動画撮影開始後ある期間が経過したときに表示部１０６に表示される画面構成を示しているということができる。またアイコン３１１はカメラ１００が撮影状態にあることを示すアイコンではなく、アイコン３１３と同様の再生状態にあることを示すアイコンとなる。
【００５９】
＜再生制御＞次に、図４を参照して、本実施形態のカメラ１００による動画データの再生制御について説明する。なお、図４の処理は、システム制御部１０４が不揮発性メモリ１０７に記録されたプログラムを読み出し、カメラ１００の各部を制御することによって実現される。
【００６０】
図４において、ステップＳ４０１では、システム制御部１０４は、カメラ１００が再生モードであるか判定し、再生モードでなければ、電源スイッチ１１５およびモード切替ボタン１１０が操作され、再生モードになるまで待機する。
【００６１】
ステップＳ４０２では、システム制御部１０４は、タッチパネル１１２への操作によって再生開始指示が入力されたか判定する。
【００６２】
ステップＳ４０３では、システム制御部１０４は、再生する動画データの再生開始フレーム時間（タイムコード）Ｔを決定する。タイムコードＴは、例えばステップＳ４０２でのタッチパネル１１２の操作手順によって決定される。
【００６３】
ステップＳ４０４では、システム制御部１０４は、図２の座標テーブルにおいてタイムコードＴに対応するエントリのポインタＰ（Ｔ）を取得する。座標テーブルにタイムコードＴに一致するエントリが存在しない場合は、その次のエントリを指すポインタをＰ（Ｔ）とする。
【００６４】
ステップＳ４０５では、システム制御部１０４は、ポインタＰ（Ｔ）が指すエントリのひとつ前のエントリを指すポインタｐを取得する。
【００６５】
ステップＳ４０６からステップＳ４０８では、システム制御部１０４は、タイムコードＴからどこまで座標テーブルを遡ればよいかを決定する。後述するように、座標テーブルの遡る先は、本実施形態ではシーンの先頭もしくは手描き入力情報の全消去状態としている。さらに、例えば手描き入力情報の内容が描画後一定期間で消去されるような制御を行っている場合は、この一定期間だけ座標テーブルを遡れば、タイムコードＴの時点の手描き入力情報を再現することができる。
【００６６】
ステップＳ４０６では、システム制御部１０４は、ポインタｐの指すエントリのタイムコードｔ（ｐ）がシーンの先頭、すなわちタイムコード０：００：００：００であるかを判定する。シーンの先頭であれば、それ以前に座標データは存在しないため、ステップＳ４０９に移行し、すべての手描き入力情報の内容を再現することができる。また、シーンの途中であれば、ステップＳ４０７へ移行する。
【００６７】
ステップＳ４０７では、システム制御部１０４は、ポインタｐの指すエントリの属性値ａｔｔｒ（ｐ）に「ｃｌｅａｒ」が記述されたエントリ、すなわちタイムコードｔ（ｐ）が手描き入力情報が全消去された状態であるか判定する。「ｃｌｅａｒ」であれば、ステップＳ４０９に移行し、ここを起点に描画処理を行えば、すべての手描き入力情報の内容を再現することができる。また、「ｃｌｅａｒ」でなければ、ステップＳ４０８へ移行する。
【００６８】
ステップＳ４０８では、システム制御部１０４は、ポインタｐをひとつ前のエントリを指すように変更し、ステップＳ４０６へリターンする。
【００６９】
ステップＳ４０９からステップＳ４１１では、システム制御部１０４は、タイムコードＴより前の手描き入力情報の内容を再現する。
【００７０】
ステップＳ４０９では、システム制御部１０４は、ポインタｐが指すエントリの座標データとペン種別等の属性情報を読み出して、それに対応する手描き入力情報をビットマップメモリに展開する。
【００７１】
ステップＳ４１０では、システム制御部１０４は、ポインタｐをひとつ後のエントリを指すように変更する。
【００７２】
ステップＳ４１１では、システム制御部１０４は、タイムコードｔ（ｐ）がタイムコードＴに到達したか判定し、到達したならば、ステップＳ４１２へ移行し、未到達ならばステップＳ４０９へリターンする。
【００７３】
ステップＳ４１２では、システム制御部１０４は、動画データのタイムコードＴ時点からの再生を開始する。この動画データの再生は、システム制御部１０４が記録媒体１１４から読み出したタイムコードＴ時点の動画データフレームを、メモリ制御部１０３を介してＣＯＤＥＣ１１９でデコードする。さらに画像処理部１０２、メモリ制御部１０３、メモリ１０５のビデオメモリを経由して表示部１０６に表示することで実現される。このとき表示部１０６には、ビットマップメモリに展開された手描き入力情報やアイコン等のＯＳＤ表示要素も動画データに重畳されて表示される。
【００７４】
ステップＳ４１３からステップＳ４１７では、システム制御部１０４は、動画再生中に、タイムコードの進捗に合わせて手描き入力情報の内容を再現する。
【００７５】
ステップＳ４１３では、システム制御部１０４は、再生中のタイムコードＴがタイムコードｔ（ｐ）に到達したか判定し、到達したならばステップＳ４１４に移行し、未到達ならばステップＳ４１６に移行する。
【００７６】
ステップＳ４１４では、ステップＳ４０９と同様に、システム制御部１０４は、ポインタｐが指すエントリの座標データとペン種別等の属性情報を読み出して、それに対応する手描き入力情報をビットマップメモリに展開する。
【００７７】
ステップＳ４１５では、システム制御部１０４は、ポインタｐをひとつ後のエントリを指すように変更する。
【００７８】
ステップＳ４１６では、システム制御部１０４は、タイムコードＴをインクリメントし、表示部１０６に表示された動画データフレームを更新する。
【００７９】
ステップＳ４１７では、システム制御部１０４は、再生終了指示が入力されたか判定する。再生終了指示はタッチパネル１１２、モード切替ボタン１１０または電源スイッチ１１５の操作によって入力される。また、再生中の動画データが終端に到達したとき等、システム制御部１０４が状態を判断して再生終了指示を発行することもある。再生終了指示があれば本処理を終了し、そうでなければステップＳ４１３へリターンする。
【００８０】
以上のように、本実施形態によれば、動画を途中から再生する際に、動画再生と同時に記録された手描き入力情報を、正しく再現することができる。
【００８１】
なお、本実施形態では、手描き入力情報を動画の再生と同時に行っているが、動画再生と同時でなくてもよい。すなわち、手描き入力情報の描画過程だけを再生する場合においても、本発明は有効である。すなわち、手描き入力情報の描画過程をその途中から再生する場合にも正しく再現することができる。
【００８２】
［実施形態２］次に、実施形態２として、動画を途中から再生する場合に、動画データに重畳されるべき手描き入力情報が極力少ない処理能力で正しく再現できるように、手描き入力情報を、動画データと共に記録する動作について説明する。なお、本実施形態は、図１と同様の構成を有するカメラにより実現される。
【００８３】
図５は、図２の座標テーブルフォーマットにｂｍｐ列が追加されたものである。手描き入力情報の描画時に発生したイベントおよび状態がシステム制御部１０４によって時系列に記録されると共に、再生時には手描き入力情報を再現するために参照される。
【００８４】
この座標テーブルは、動画撮影時にエンコードされた動画データと共にシステム制御部１０４によって記録媒体１１４に記録され、再生時には記録媒体１１４からメモリ１０５に読み出され、システム制御部１０４が参照する。
【００８５】
ｔ列およびｘ列およびｙ列およびａｔｔｒ列は、図２の座標テーブルと同等である。
【００８６】
ｂｍｐ列は、ｔ列のタイムコード時点に表示部１０６に表示されている手描き入力情報を記録した手描き画像データへのファイルパスである。この手描き画像データも、システム制御部１０４によってビットマップメモリに展開されたデータから作成され、座標テーブルと共に記録媒体１１４に記録される。
【００８７】
図６は、タッチパネル１１２への入力によってシステム制御部１０４が手描き入力情報を描画しながら動画撮影したときに表示部１０６に表示される画面と、途中から再生を開始したときに表示部１０６に表示される画面を例示している。なお、図３と同一の構成要素については同一の符号を付して説明を省略する。
【００８８】
図６において、６０１、６０２、６０３、６０４はそれぞれ、動画撮影時にシステム制御部１０４がビットマップメモリのメモリ領域９０１に保持された手描き入力情報の内容を一定時間ごとに手描き画像データとして作成したデータである。これらの手描き画像データのファイル名は図５の座標テーブルに記述され、撮影時のタイムコードと関連付けされて記録媒体１１４に記録される。
【００８９】
ここで、図６のように撮影、記録された動画データを、画面３０２ａの時点から再生を開始する場合を考える。
【００９０】
このとき、再生開始位置以前で直近の手描き入力情報、すなわち再生開始時点から手描き入力情報を取得可能な時点まで遡って、図６の手描き画像データ６０２が読み出され、ビットマップメモリに展開される。ここから、更に手描き入力情報に基づき描画を行うことで、再生開始時点での手描き入力情報が復元され、画面３０２ｂが表示部１０６に表示される。その後は図３と同様に、再生開始時点のタイムコードに対応する座標テーブルのエントリの座標データに従って、手描き入力情報が順次再現される。
【００９１】
このように、再生開始位置以前で直近の手描き入力情報を読み出し、それ以降、再生開始時点から遡って手描き入力情報を読み出し描画することによって、画面３０２ｂには撮影時の画面３０２ａと同一の画面メモが再現される。また、画面３０３ｂには撮影時の画面３０３ａと同一の画面メモが再現される。
【００９２】
図６では、動画撮影と同時に手描き入力情報を描画する過程を記録することを前提としているが、動画再生中に手描き入力情報を記録する構成としてもよい。この場合、画面３０１ａ〜３０３ａは動画再生開始後ある期間が経過したときに表示部１０６に表示される画面構成を示しているということができる。またアイコン３１１はカメラ１００が撮影状態にあることを示すアイコンではなく、アイコン３１３と同様の再生状態にあることを示すアイコンとなる。
【００９３】
＜記録制御＞次に、図７を参照して、本実施形態のカメラ１００による撮影時に手描き画像データを逐次記録する制御について説明する。なお、図７の処理は、システム制御部１０４が不揮発性メモリ１０７に記録されたプログラムを読み出し、カメラ１００の各部を制御することによって実現される。
【００９４】
図７において、ステップＳ７０１では、システム制御部１０４は、カメラ１００が撮影モードであるか判定し、撮影モードでなければ、電源スイッチ１１５およびモード切替ボタン１１０が操作され、撮影モードになるまで待機する。
【００９５】
ステップＳ７０２では、システム制御部１０４は、トリガーボタン１１１への操作によって撮影開始指示が入力されたか判定する。
【００９６】
ステップＳ７０３では、システム制御部１０４は、図５のフォーマットの空の座標テーブルをメモリ１０５に新規作成する。
【００９７】
ステップＳ７０４では、システム制御部１０４は、メモリ１０５にタイムコードＴおよび座標テーブルのインデックスｎおよびエントリ作成フラグｆｌａｇの各変数を作成し、それぞれを０で初期化する。
【００９８】
ステップＳ７０５では、システム制御部１０４は、タッチパネル１１２がタッチオン状態であるか判定し、タッチオン状態であるならばステップＳ７０６に移行し、タッチオフ状態であるならばステップＳ７０９に移行する。
【００９９】
ステップＳ７０６では、システム制御部１０４は、タッチオンされている座標（ｘ、ｙ）をタッチパネル１１２から、ペン種別をメモリ１０５からそれぞれ取得する。ペン種別は、特に記載していないが、ボタン３１８に対するタッチダウンによって決定し、メモリ１０５にその設定状態が保存されている。
【０１００】
ステップＳ７０７では、システム制御部１０４は、ステップＳ７０５のタッチオンが全消去ボタン３１９に対するタッチダウンであるか判定する。
【０１０１】
ステップＳ７０８では、システム制御部１０４は、ビットマップメモリを全て初期化し、手描き入力情報を全消去する。
【０１０２】
ステップＳ７０９では、システム制御部１０４は、ステップＳ７０６で取得した座標およびペン種別に従って、ビットマップメモリに手描き入力情報の一部を描画する。
【０１０３】
ステップＳ７１０では、システム制御部１０４は、ステップＳ７１５で座標テーブルにエントリを追加するためのフラグを設定する。
【０１０４】
ステップＳ７１１では、システム制御部１０４は、手描き入力情報を作成し記録する条件に合致しているか判定する。この条件は、例えばタイムコードＴが定められた周期に到達したときとしてもよい。ただしこの場合は、タッチオフ状態では手描き入力情報の内容が変更されていないため、タッチオフ期間中は条件を満たさないとしてもよい。あるいは、タッチダウンまたはタッチアップが定められた回数行われたときとしてもよいし、座標テーブルにエントリが定められた数だけ追加されたときとしてもよい。あるいは、ステップＳ７０８等の処理によって手描き入力情報を全消去状態である場面では、この条件を満たさないとしてもよい。
【０１０５】
ところで、同時に記録している（あるいは再生している）動画は、ＣＯＤＥＣ１１９によって、多くの場合ＭＰＥＧ２やＨ．２６４等のフレーム間符号化技術を用いてエンコードされる（あるいはされている）。フレーム間符号化技術では、単体で復号化可能なＩピクチャと、前後のピクチャの情報を参照して復号化されるＰピクチャもしくはＢピクチャの組み合わせによって符号化されている。ステップＳ７１１では、このＩピクチャのタイミングでのみ条件を満たすとしてもよい。フレーム間符号化された動画データを途中から再生する場合、Ｉピクチャを起点に再生すると効率が良く、そのようにすることが多い。したがって、手描き入力情報も同じＩピクチャのタイミングのものを保持しておいたほうが効率的なためである。
【０１０６】
ステップＳ７１１で条件に合致していればステップＳ７１２に移行し、合致していなければステップＳ７１４に移行する。
【０１０７】
ステップＳ７１２では、システム制御部１０４は、ビットマップメモリのメモリ領域９０１から手描き入力情報を読み出して画像データに変換し、記録媒体１１４に記録する。
【０１０８】
ステップＳ７１３では、システム制御部１０４は、ステップＳ７１５以降で座標テーブルにエントリを追加するためのフラグを設定する。
【０１０９】
ステップＳ７１４では、システム制御部１０４は、ステップＳ７１５以降で座標テーブルにエントリを追加するためのフラグが成立しているか判定する。ここでステップＳ７１０もしくはステップＳ７１３の処理を実行していれば、これが真となり、ステップＳ７１５へ移行し、偽であればステップＳ７１９へ移行する。
【０１１０】
ステップＳ７１５では、システム制御部１０４は、座標テーブルにエントリＥｎを追加する。
【０１１１】
ステップＳ７１６では、システム制御部１０４は、追加したエントリＥｎに対してメンバを記録する。タイムコードＴ、ステップＳ７０５でタッチオン状態であればタッチ座標ｘおよびｙ、属性情報ａｔｔｒ、ステップＳ７１２で画像データを記録媒体１１４に記録していればそれを指すファイルパスｂｍｐ、がそれぞれ記録される。属性情報ａｔｔｒは、ステップＳ７０６で取得したペン種別、もしくはステップＳ７０８でビットマップメモリを全消去したことを表すフラグである。
【０１１２】
ステップＳ７１７では、システム制御部１０４は、エントリのインデックスｎを加算する。
【０１１３】
ステップＳ７１８では、システム制御部１０４は、座標テーブルにエントリを追加するためのフラグを初期化する。
【０１１４】
ステップＳ７１９では、システム制御部１０４は、トリガーボタン１１１もしくはモード切替ボタン１１０もしくは電源スイッチ１１５の操作によって撮影終了指示が入力されたか判定する。ここで、撮影終了指示は、記録媒体１１４の残容量が規定を超えたとき等、システム制御部１０４自身が状態を判断して再生終了指示を発行することもある。
撮影終了指示がされたならばステップＳ７２０に移行し、そうでなければステップＳ７２１に移行する。
【０１１５】
ステップＳ７２０では、システム制御部１０４は、作成された座標テーブルを記録媒体１１４に記録する。
【０１１６】
ステップＳ７２１では、システム制御部１０４は、タイムコードＴをインクリメントし、ステップＳ７０５へリターンする。
【０１１７】
＜再生制御＞次に、図８を参照して、図６のように動画再生を途中から開始したときの制御について説明する。なお、図８の処理は、システム制御部１０４が不揮発性メモリ１０７に記録されたプログラムを読み出し、カメラ１００の各部を制御することによって実現される。また、図８において、図４と同等の処理ステップには同一のステップ番号を付して説明を省略する。
【０１１８】
図８において、ステップＳ４０７での判定が「ｃｌｅａｒ」でない場合、ステップＳ８０１へ移行する。ステップＳ８０１では、システム制御部１０４は、図５の座標テーブル中にポインタｐの指すエントリの画像データへのファイルパスｂｍｐ（ｐ）が存在するか判定し、存在するならばステップＳ８０２へ移行し、存在しないならばステップＳ４０８へ移行する。
【０１１９】
ステップＳ８０２では、システム制御部１０４は、ファイルパスｂｍｐ（ｐ）が指す画像データを記録媒体１１４から読み出して、ビットマップメモリのメモリ領域９０１へ展開する。この処理によって、タイムコードｔ（ｐ）時点の手描き入力情報がビットマップメモリに展開される。
【０１２０】
ステップＳ４１０では、システム制御部１０４は、ポインタｐをひとつ後のエントリを指すように変更する。ステップＳ４０９以降の処理は図４のフローチャートと同一である。
【０１２１】
上述した実施形態１では、動画再生を途中から開始する場合に手描き入力情報を再現するためには、シーンの先頭もしくは手描き画面が全消去された時点まで遡る必要があった。そのため、手描き入力情報を長時間にわたって描画し続けた場合には、その途中から再生するためには、大量のデータ処理が必要となり、処理負荷が大きくなる。
【０１２２】
これに対して、実施形態２では、手描き入力情報を、動画撮影時に逐次記録することができるので、動画再生時点から直近の手描き入力情報が記録された時点まで遡ればよい。よって、実施形態１に比べて、手描き入力情報を再現する際のデータ処理負荷を小さくすることができる。
【０１２３】
なお、本実施形態では、手描き入力情報の記録を動画撮影と同時に行っているが、動画撮影と同時でなくてもよい。すなわち、手描き入力情報の再現に必要なデータのみを記録する場合においても、本発明は有効である。その場合でも、手描き入力情報の描画過程だけを再生する際のデータ処理負荷を小さくすることができる。
【０１２４】
ところで、実施形態２によれば、手描き入力情報の描画過程を早送りもしくは早戻し再生する場合も、これを効率良く実現することができる。
【０１２５】
図１０は、システム制御部１０４が図７の処理によって記録された手描き画像データと、それを早戻し再生したときの表示部１０６の表示画面を例示している。なお、早送り再生も以下の説明と同様の制御によって実現することができる。
【０１２６】
図１０において、１００１ａ、１００２ａ、１００３ａ、１００４ａはいずれも、システム制御部１０４が図７の処理によって一定時間ごとに記録媒体１１４に記録された手描き入力情報である。
【０１２７】
１００１ｂ、１００２ｂ、１００３ｂ、１００４ｂはいずれも、早戻し再生時に表示部１０６に表示される画面を例示している。タイムコード０：００：３５（秒）から０：００：２０（秒）まで早戻しする際に、図示のように画面１００１ｂから画面１００４ｂまでの手描き画像データを順次読み出して表示することで、データ処理負荷を小さくしつつ早戻し再生を効率良く実現できる。
【０１２８】
また、手描き入力情報と同時に動画データを記録しており、それを早戻し再生する場合には、図１０に示す間隔よりも狭い間隔で動画データを再生することが考えられる。例えば、タイムコード０：００：３５（秒）から０：００：２０（秒）までを１秒間隔で再生するときは、タイムコード０：００：３５（秒）から０：００：３１（秒）までは画面１００１ｂを重畳し、タイムコード０：００：３０（秒）から０：００：２６（秒）までは画面１００２ｂを重畳して再生すればよい。これにより、手描き入力情報の表示は厳密にはタイムコードと一致しないが、視覚的には違和感なく早戻し再生を行っているように見える。もちろん、ポーズもしくは通常再生に移行した後は、図７に従ってその時点の手描き入力情報を正しく再現することができる。
【０１２９】
［他の実施形態］本発明は、以下の処理を実行することによっても実現される。即ち上述した実施形態の機能を実現するソフトウェア（プログラム）をネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（又はＣＰＵやＭＰＵ等）がプログラムコードを読み出して実行する処理である。この場合、そのプログラム、及び該プログラムを記憶した記憶媒体は本発明を構成することになる。
【図１】
0005869796.tif 000002
【図２】
0005869796.tif 000003
【図３】
0005869796.tif 000004
【図４】
0005869796.tif 000005
【図５】
0005869796.tif 000006
【図６】
0005869796.tif 000007
【図７】
0005869796.tif 000008
【図８】
0005869796.tif 000009
【図９】
0005869796.tif 000010
【図１０】
0005869796.tif 000011