【手続補正書】
【提出日】平成15年12月26日(2003.12.26)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【発明の名称】動画アンカー設定装置
【特許請求の範囲】
【請求項１】動画を構成する複数のフレームから一以上の基準フレームを指定し、該一以上の基準フレームの各々に対してアンカー情報を設定するアンカー情報設定手段と、
設定される前記アンカー情報に基づいて非基準フレームのアンカー情報を算出するアンカー推定手段と、を含む動画アンカー設定装置において、
算出された非基準フレームのアンカー情報に修正を加えるとともに、アンカー情報に修正が加えられた非基準フレームを基準フレームに変更するアンカー情報編集手段をさらに含み、
該アンカー情報編集手段によって非基準フレームのアンカー情報に修正が加えられた場合、前記アンカー推定手段は、爾後、修正後のアンカー情報と、前記アンカー情報設定手段によって設定されたアンカー情報と、に基づいて非基準フレームのアンカー情報を算出することを特徴とする動画アンカー設定装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、動画アンカー設定装置に関する。この発明は特に、動画を入力し、これに含まれるターゲット等にアンカーを設定するための装置に関する。
【０００２】
【従来の技術】
従来一般的なハイパーメディア装置における情報の検索は、主にテキストや静止画像に対して情報リンクのための論理単位を設定し、この論理単位に対して関連情報を予めリンクし、ユーザがこの論理単位をクリックしたときに前記関連情報が表示される形態をとっていた。しかし、例えば動画像の符号化および復号に関するＭＰＥＧに代表されるように、ここ数年、静止画像のみならず動画像を処理の対象にする各種技術が提案されている。動画像を扱うことにより、上記ハイパーメディア装置にも、ＣＡＩ、各種プレゼンテーション、電子カタログなど、コンテンツ作成の用途が開ける。動画像の編集は、従来放送局等ある程度限られた産業分野で利用されてきたが、今後はパーソナルコンピュータをベースとする個人用システムとして急速に普及していくものと考えられる。
【０００３】
特開平４−１６３５８９号公報には、動画について論理単位（その明細書ではノードと呼ぶ）を設定することの可能な画像処理装置が開示されている。この装置は、静止画像におけるノードの設定が単に表示範囲の指定のみで可能である点に対して、動画像では（１）表示範囲、（２）時間、の両面からそれぞれノードの有効継続期間とその領域範囲を指定すればよい点に着目し、これらの指定を可能とするものである。すなわち、（１）については、動画像に登場する被写体などを囲む領域をマウス等で指示することにより、その時間におけるノードの設定を行い、一方、（２）については、動画像の出力開始時刻からの経過時間によってそのノードの有効継続時間を指定する。従って、このノードは前記領域と前記経過時間の２つの内容によって一意的に定まり、各ノードに対して関連情報をリンクすることができる。リンクの後、実際に動画像を再生する際、ユーザがマウス等で画面上のある領域をクリックすれば、その位置と時刻によってノードが特定され、関連情報が表示される。
【０００４】
【発明が解決しようとする課題】
上記の装置では、論理単位の領域設定を手作業で行うことにしていた。しかし、当然ながら動画像には、静止画像と違って多数のフレームが存在し、被写体の位置や形状が刻々変化する。ＮＴＳＣ方式の場合、１秒間に３０枚のフレームが必要であるから、単純に計算しても、１秒の動画像を処理するとき１論理単位当たり３０回の設定作業が必要となる。例えば５分間のコンテンツを作成するとき、１フレームに５個の論理単位を設定するとすれば、設定回数は４５０００回に及ぶ。
【０００５】
本発明はこの課題に鑑みてなされたもので、その目的は、論理単位（本明細書ではアンカーと呼ぶ）の設定作業の省力化、簡易化を可能とする装置、より具体的には、フレームごとに行う必要のあったアンカー情報を自動算出または自動設定するアンカー設定装置の提供にある。
【０００６】
【課題を解決するための手段】
本発明の動画アンカー設定装置は、動画を構成する複数のフレームから一以上の基準フレームを指定し、該一以上の基準フレームの各々に対してアンカー情報を設定するアンカー情報設定手段と、設定される前記アンカー情報に基づいて非基準フレームのアンカー情報を算出するアンカー推定手段と、を含む動画アンカー設定装置において、算出された非基準フレームのアンカー情報に修正を加えるとともに、アンカー情報に修正が加えられた非基準フレームを基準フレームに変更するアンカー情報編集手段をさらに含み、該アンカー情報編集手段によって非基準フレームのアンカー情報に修正が加えられた場合、前記アンカー推定手段は、爾後、修正後のアンカー情報と、前記アンカー情報設定手段によって設定されたアンカー情報と、に基づいて非基準フレームのアンカー情報を算出することを特徴とする動画アンカー設定装置。
【０００７】
【発明の実施の形態】
以下、本発明の動画ハイパーメディア装置の好適な実施の形態を説明する。この装置には、本発明の動画アンカー設定装置が組み込まれている。本装置によれば、例えば水族館の水槽を写した動画を素材とし、泳いでいる任意の魚をクリックしたときに、その魚の名前、補足説明等を表示することのできる対話型のＣＡＩソフトを容易かつ効率的に作成することができる。以下の実施の形態で「ユーザ」とは、主にこうしたコンテンツの作成者をいうが、これは当然ながら、自ら撮影したビデオテープを個人的に編集する者などであってもよい。
【０００８】
実施の形態１．
この実施の形態では、ユーザが開始フレームと終了フレームを明示的に指定し、これら２枚のフレームを最初の基準フレームとしてアンカーを設定する。「フレーム」とは画像の表示単位であり、ＭＰＥＧでいうピクチャなどを含む。本装置は、基準フレームに対して設定されたアンカーから、補間計算によって他のフレームにおけるアンカー領域の位置、形状、色などのアンカー情報を自動的に算出する。「アンカー情報」とは、例えばアンカー領域の位置や形状、アンカー領域を明示的に表示するときはその色などをいう。なお、最初の基準フレームは１枚でも本発明は成立するが、その例は後述する。
【０００９】
本実施の形態の動画ハイパーメディア装置を含むシステム全体の構成は、アンカーおよびリンク設定処理を制御するパーソナルコンピュータ（以下、ＰＣ）と、このＰＣに動画を提供するビデオ再生装置である。ＰＣには、ビデオ再生装置から提供された画像を捕捉してデジタル化するビデオキャプチャボードが内蔵される。ビデオ再生装置は、通常の再生開始、停止、早送り、コマ送り等の他に、指定したフレームまたは時刻から再生を行うなどの機能がある。こうしたビデオ再生装置は放送業務等で広く使用されるものであるが、当然それに限る必要はない。ビデオ再生装置の各種機能の制御は、ＰＣ上に展開されるユーザインタフェイス（以下、ＵＩ）、例えば画面に表示される「再生ボタン」などを介して行われる。この場合、ユーザがそのボタンをクリックすれば、そのアクションが信号ケーブルを経由してＰＣからビデオ再生装置に伝送される。ビデオ再生装置自体は、動画ハイパーメディア装置の必須構成ではないが、ここではこれも含めたシステムとして説明する。図１は本実施の形態に係る動画ハイパーメディア装置を含むシステムの構成図である。
【００１０】
本装置は大別して、アンカー情報およびリンク情報に関するデータを操作するデータ操作部１、これらのデータを記憶するデータ記憶部２、これらのデータを意味のある形で表示する表示部３、ユーザ操作の受付と管理を行うユーザ操作部４、ビデオ再生装置５で再生された動画を入力する動画入力部６からなる。
【００１１】
（１）データ操作部１
ユーザからデータ操作部１への指示は、後述するＵＩによって行われる。すなわち、以下の内部構成はソフトウエアモジュールである。
【００１２】
フレーム決定部１０は開始フレームと終了フレームを決定する。本実施の形態では、ユーザが指定したフレームがそのまま開始フレームおよび終了フレームとなる。開始フレームと終了フレームの例は、前述の水族館の映像のうち、水槽を写しているシーンの先頭と末尾のフレームである。仮にシーンが水族館の入り口の映像に移れば、それ以降、魚にアンカーを設定する必要がないため、シーンの移行前に終了フレームを指定しておく。
【００１３】
アンカー設定部１１は、開始フレームと終了フレームの間で実際にアンカーを設定する。例えば、ある魚にアンカーを設定する場合、まず開始フレームにおいてその魚を囲む矩形をマウスによって表示させ、これをアンカー領域として登録する。このとき、動画は停止モードにある。つづいて終了フレームまで動画を進め、同じ魚を再度囲んでアンカー領域を登録する。開始フレームと終了フレームの間に魚は移動したり、方向を変えたりするため、通常はその位置も形状も変化する。開始フレームで登録されたアンカー領域の形状および位置と終了フレームで登録されたものの形状および位置は一般に一致しない。なお、アンカー設定部１１は、後述のアンカー修正の際に使用するアンカー情報編集部１１０と、文字列等テキストに対してアンカーを設定するテキストアンカー設定部１１１を含む。
【００１４】
アンカー推定部１２は、開始フレームと終了フレームに設定されたアンカー情報をもとに補間計算を行い、任意のフレーム（非基準フレーム）におけるアンカーの位置及び大きさの推定を行う。この処理は後に詳述する。
【００１５】
アンカー検索部１５は、アンカー情報のうちアンカーの動きの特徴、またはアンカーの識別情報をもとにアンカーの検索を行う。識別情報とは、そのアンカーを他のアンカーと識別する手がかりとなる情報をいい、例えばアンカーの名称、アンカーの設定対象、アンカー設定日時などがある。
【００１６】
ハイパーリンク設定部１３は、設定されたアンカーにハイパーリンクの設定を行い、設定に関するデータ構造をテーブルの形態で作成する。ハイパーリンク検索部１４は、設定されたリンク情報の検索を行う。上記の例の場合、魚のアンカーとその魚の名前を示すテキストデータ等がハイパーリンクによって関連づけられる。
【００１７】
（２）データ記憶部２
データ記憶部２は、データベースでもよいし、各種ファイル装置、メモリ装置でもよい。この部分は主にハードウエアである。
【００１８】
動画データ記憶部２０は、動画入力部でキャプチャされ、デジタル化された動画データを記憶する。アンカー情報記憶部２１、リンク情報記憶部２２はそれぞれ、設定されたアンカー情報、リンク情報を記憶する。
【００１９】
（３）表示部３
表示制御部３０は、ＵＩや編集中の動画など各種画像の表示を統括的に制御する表示系のシステムプログラム、ＶＧＡコントローラなどの表示回路、およびこのドライバを含む。この表示制御部３０はカーソル変更部３００を持つ。カーソル変更部３００は、カーソルがアンカー領域に入ったとき、カーソルの表示状態を変更する。表示制御部３０の出力データはＰＣのモニタ等の表示装置３１に与えられ、所期の表示が行われる。
【００２０】
（４）ユーザ操作部４
ユーザによるコマンド入力を可能とするもので、キーボード、マウス、各種ポインティングデバイス等のハードウエア、およびコマンドデスパッチャからなる。コマンドの例に、アンカーの設定、アンカー領域の修正、リンク、リンク検索などがある。
【００２１】
（５）動画入力部６
ビデオキャプチャボードに相当するハードウエアで、ＡＤコンバータとフレームメモリ（図示せず）を持ち、入力された動画をディジタル化する。この後、データを前記動画データ記憶部２０に提供する。
【００２２】
以上の構成をもとに、まずアンカー、リンクの設定の手順を説明し、後にアンカー設定のＵＩの様子を説明する。
【００２３】
［１］アンカーの設定
図２は本実施の形態によるアンカーの設定および修正手順を示すフローチャート、図３は設定されたアンカー情報のテーブルを示す図である。図２のごとく、まずハードウエア等に対する各種初期化処理を行い（Ｓ２１）、動画データ記憶部２０に記憶されている動画データの読み込み（Ｓ２２）を行う。読み込まれた動画データの先頭フレームは表示装置３１に、まず静止画像として表示される。
【００２４】
つぎに、その動画データに対してすでに設定されているアンカー情報をアンカー情報記憶部２１から読み込む（Ｓ２３）。アンカー情報が存在すれば、そのアンカー領域を実際に画面上に表示する（以降、アンカー領域が画面に表示されるモードを「アンカー表示モード」、表示されないモードを「アンカー非表示モード」という）。
【００２５】
つづいて、今回新たにアンカーを設定したい期間の開始フレームまで動画データを進め（Ｓ２４）、所望のフレームが現れたら、画面上の「開始フレーム」ボタンを押して開始フレームを登録する。この状態で、このフレームにおけるアンカー領域の設定待ち状態になり、ユーザは例えば別の魚を取り囲むようにマウスのクリックによって矩形領域を設ける。矩形領域が決まれば、その左上点（ｘ１，ｙ１）と右下点（ｘ２，ｙ２）の座標が取得され、これが開始フレームのフレーム番号（動画の先頭フレームからの通し番号）とともにその魚のアンカー情報として記録される（Ｓ２５）。
【００２６】
この後、再び動画データを進め、所望の終了フレームが現れたところで止めて（Ｓ２６）、同じ魚を取り囲むよう矩形領域を設ける。ここで終了フレームにおけるアンカーの設定が完了する（Ｓ２７）。図３の「ａｎｃｈｏｒ１」はこの魚を示すアンカーＩＤである。ここでは開始フレームと終了フレームのフレーム番号（それぞれフレーム１と１００）と、アンカー領域の座標情報がテーブルに格納されている。
【００２７】
こうして両端基準フレームにおけるアンカー情報が確定すれば、この間の第３のフレーム（非基準フレーム）の第３のアンカー情報を補間計算によって求める（Ｓ２８）。図４はアンカー情報の補間計算方法を示す図である。ここで、
・開始フレーム（時刻ｔ０）におけるアンカー情報をＡ（ｔ０）
・終了フレーム（時刻ｔ１）におけるアンカー情報をＡ（ｔ１）
・時刻ｔにおけるアンカー情報をＡ（ｔ）
・ｔ１−ｔ０＝Δｔ
とおけば、
1999328433.tif 000001
とかける。このＡとして、順次前記ｘ１、ｙ１、ｘ２、ｙ２を代入すれば任意の時刻におけるアンカー領域の外形が判明する。アンカー領域の重心座標を代入すればアンカー領域のおおまかな動きが判明する。Ａに色番号を代入すれば、アンカー領域の色の変化を追跡できる。これ以外にも、数値表現が可能な情報は同様に式１を用いた内分計算により、補間することができる。補間によって求められた非基準フレームのアンカー情報は、図３のテーブルの「ａｎｃｈｏｒ１」に追加していってもよいし、図３のテーブルはそのままとし、フレームの表示が指示されるたびにそのフレームについて式１の計算を逐次行ってもよい。本実施の形態では、以降、逐次計算を仮定する。
【００２８】
Ｓ２８が完了すると、実際にアンカー情報を表示して内容を確認する（Ｓ２９）。このとき、開始フレームに戻って動画データが再生され、各フレームでアンカー領域が矩形で表示される。この矩形領域は計算結果に従って連続的に移動していく。
【００２９】
「ａｎｃｈｏｒ１」の場合、魚が等速直線運動をすれば結果は極めて良好となるが、途中で泳ぐ方向を変更した場合には、中途のフレームで魚からアンカー領域がずれる。そこでアンカー情報を修正する（Ｓ３０）。ユーザはまず、ずれの大きなフレームまで動画データを進め、ここで画像を止める。次に、画面に表示されているアンカー領域の端部をクリックし、マウスによって領域の形状または位置を変更する。アンカー推定部１２は、こうして修正されたフレームを基準フレームに格上げし（以下、昇格して基準フレームになったものを「中間基準フレーム」ともよぶ）、このアンカー情報を図３のテーブルに追加する。図５は図３に中間基準フレームのアンカー情報を追加して得られるテーブルを示している。
【００３０】
一方、図６は中間基準フレームと両端基準フレームの３つのフレームをもとに補間計算を行う方法を示す図である。推定の対象である非基準フレームが開始フレームと中間基準フレームの間に存在すればそれらのフレーム間で補間計算を行い、非基準フレームが中間基準フレームと終了フレームの間に存在すればそれらのフレーム間で補間計算を行う（Ｓ２８）。以降、Ｓ２９による表示、Ｓ３０による再修正を経て、良好なアンカー情報が得られたときに（Ｓ３１のＹ）これを保存し（Ｓ３２）、アンカー設定処理を終える。Ｓ３０で別のフレームのアンカーが修正されれば、当然このフレームも中間基準フレームとなる。なお、Ｓ２５において同一フレームに２個以上のアンカーを設定するときは、設定順に装置内部でアンカーＩＤを自動的に変更しながら付与するとともに、これらのアンカー領域の矩形表示を異なる色で行う等の対処をなせばよい。
【００３１】
以上の手順によれば、以下の効果が得られる。
【００３２】
１．両端基準フレームにおけるアンカーの設定を行うだけで、その間に存在する多数のフレームに対する設定作業が不要となる。
【００３３】
２．補間計算でアンカーの位置にずれが生じた場合、このずれを確認することができる。従って、修正すべきフレームの認識が容易であり、一旦修正されたフレームは自動的に中間基準フレームに昇格されるため、ユーザは基準フレームにすべきかどうかなどに注意を払う必要がない。
【００３４】
３．例えば、アンカーが設定された魚が弧を描いて泳ぐような場合でも、両端基準フレームに加えて、高々数フレームで修正を行えば、十分に良好なアンカー情報を得ることができる。
【００３５】
以上が本実施の形態の動画ハイパーメディア装置のうち、特に動画アンカー設定装置の概要である。
【００３６】
［２］リンクの設定
つづいて、設定されたアンカーに対するリンクの設定を行う。図７は本実施の形態によるリンクの設定および検索手順を示すフローチャート、図８は設定されたリンク情報のテーブルを示す図である。
【００３７】
図７は、アンカーの設定とリンクの設定を全く独立して行う場合の処理手順を示しており、図２同様、まず各種初期化処理（Ｓ４０）、動画データの読み込み（Ｓ４１）を行う。つづいて、［１］で設定されたアンカー情報をアンカー情報記憶部２１から読み込む（Ｓ４２）とともに、すでに設定されているリンク情報をリンク情報記憶部２２から読み込む。
【００３８】
つぎに、両端基準フレームおよび中間基準フレームのアンカー情報をもとに他のフレームのアンカー情報を補間計算で求めながら（Ｓ４４）、動画の再生に合わせて連続的にアンカー情報の表示を行う（Ｓ４５）。この状態でユーザ操作部４においてユーザからの入力待ち状態となる（Ｓ４６）。
【００３９】
ここでユーザが、動画上またはその動画を一旦停止した上で、あるアンカー領域をクリックし、「リンク作成・変更」ボタンを押せば、そのアンカーに対してリンク情報の作成が行われる（Ｓ４７）。例えば、水槽内のある魚がクリックされると、その魚にリンクさせるべきテキスト、イメージ等の候補が画面に現れ、ユーザが選択したテキスト等がその魚のアンカー（より正確には、そのアンカーに含まれる魚というオブジェクト）にリンクされる。候補がない場合は、ユーザが自ら文字列を入力し、これをリンクすることも可能である。図８は、「ａｎｃｈｏｒ１」にテキスト形式の情報「ａｎｃｈｏｒ１．ｔｘｔ」、同様に「ａｎｃｈｏｒ２」のアンカーにビットマップイメージ「ａｎｃｈｏｒ２．ｂｍｐ」がリンクされた状態が示されている。こうしてリンク情報が確定すれば、リンクの内容をリンク情報記憶部２２に保存し、再度ユーザの入力待ちとなる。
【００４０】
一方、Ｓ４６においてユーザが「リンク検索」ボタンを押してアンカーを指定すれば、そのアンカーに対応するリンク情報が検索され、表示される（Ｓ４９）。図８の場合、例えばａｎｃｈｏｒ１の魚に対して、魚の名前や体長、特徴などが文字列で表示され、ａｎｃｈｏｒ２の魚については、その魚が実際に棲息している海の写真などが表示される。この表示によってリンク動作が確認できるため、ユーザはこの時点でコンテンツ作成を完了することができる。コンテンツは、例えばＣＤ−ＲＯＭのような記録媒体に保存することにより、商品化することもできる。商品として出荷する場合、一般的には、アンカー領域を表示しないアンカー非表示モードに変更しておく。
【００４１】
なお、ここではアンカーとリンクの設定を独立の処理として説明したが、例えばリンク設定中の画面に「アンカー設定に戻る」というボタンを設ければ、両者の行き来が自由になり、さらに編集が容易になる。
【００４２】
［３］アンカー設定のためのＵＩ
図９はアンカー設定のためのＵＩ画面例を示す図である。同図中、画像表示領域５０には、処理の対象となる動画が表示される。上欄の黒塗りのボタン群５２はビデオの再生、停止等を直接指示するオブジェクトボタンである。その隣には、画像表示領域に表示されたフレームに対してアンカー領域を設定するための矩形ボタン５４、同様に、表示されているフレームを開始フレームまたは終了フレームとして指定するための開始フレーム指定ボタン５６、終了フレーム指定ボタン５８が設けられている。同図では、１匹の魚に対してアンカー領域６０が設定されている。
【００４３】
画面中央右側には、設定または修正しようとするアンカーの名称、ＩＤ、開始フレーム番号、終了フレーム番号を示すアンカー関連ボックス群６２がある。画像表示領域５０の下には、現在表示中のフレームが含まれるシーンの番号と、そのフレームのそのシーンにおける通し番号を示すシーン関連ボックス群６４がある。さらにその下には、編集のために動画を微少量だけ進め、または戻すためのボックス６６がある。この右端のボタンを押せば動画は進み、左端を押せば戻る。現在表示しているフレームのそのシーンにおける位置は同ボックス６６のなかで、縦線７０で示されている。このボックスの下には、そのシーン中の開始フレームと終了フレームの位置を示すボックス６８がある。開始フレームと終了フレームの位置はそれぞれ二重縦線７２、７４によって示され、その間の中間基準フレームの位置が三角形の記号７６で示されている。
【００４４】
同図において、まずユーザはシーン番号を手がかりとして、アンカー設定を望むシーンの先頭までビデオテープを進める。この場合、例えば複数のシーンからなる水族館の映像のうち、シーン番号「５」の水槽の映像に進んでいる。ここでユーザは、ボックス６６の右端のボタンを押し、１フレームづつ動画を進めていく。アンカーを設定しようとする最初のフレームが現れれば、ユーザは開始フレーム指定ボタン５６を押し、これを登録する。このとき、ボックス６６の対応する個所に、開始フレームの位置を示す二重縦線７２が現れる。ここで矩形ボタン５４を押し、画像表示領域５０中、設定すべきアンカー領域の左上点と右下点をマウスでクリックする。これで開始フレームのアンカー設定が終わる。つづいて動画を進め、同様に終了フレームの登録とアンカー設定を行う。
【００４５】
両端基準フレームにおける設定が完了したことを検出すると、本装置のアンカー推定部１２は自動的にアンカー情報を式１に代入し、計算を開始する。ここでユーザが、例えば開始フレームまで戻って動画を１フレームづつ進めていくと、アンカー推定部１２は、現在表示中のフレームに対応する時刻を求め、この時刻に対応する推定結果をもとにアンカー領域を表示する。表示されたアンカー領域がずれていれば、ユーザは再度矩形ボタン５４を押し、領域の修正を行う。修正後、そのフレームに対応する個所に三角形の記号７６が現れる。このＵＩによれば、実際に動画データ上にアンカー情報を表示させるため、編集結果がリアルタイムで確認でき、また容易にその修正を行うことができる。
【００４６】
以上が本実施の形態の概要である。なお、本実施の形態については、以下の改良、変形等が考えられる。
【００４７】
（１）テキストアンカーの設定
図１のテキストアンカー設定部１１１によって行う。まず、画面上でテキストデータを編集してこれを動画上に重ね、アンカーを設定する。通常のアンカー設定との違いは、再生された画像の一部領域を指定するのではなく、作成したテキストを一旦画像に乗せ、しかる後にこのテキストを囲むようにアンカー領域を設定する点にある。従来、例えばビデオ映像にアノテーションを直接入れる方法が一般的だったが、その場合は後でアノテーションを削除するなど、再編集の際に不都合である。本実施の形態はこれを解消する。
【００４８】
テキストアンカーが設定されたとき、そのアンカー情報もアンカー情報テーブルに記憶される。ただし、図３に示すテーブルにおいて、「フレーム」の個所が「テキスト」となり、その欄にテキスト名が入る。
【００４９】
テキストアンカーについても関連情報のリンクが可能である。例えば図９の水槽のシーンに対して「南海の魚たち」というテキストを貼り付け、このテキストに対して「南の海には鮮やかな色の魚がたくさんいます…」というようなテキストをリンクさせることができる。
【００５０】
（２）カーソルの表示状態の変更
図１のカーソル変更部３００によって行う。この機能は特に、アンカー非表示モード、例えばコンテンツが市場で使用されるときに有用である。この機能のため、カーソル変更部３００は、カーソルの位置を常時取得する位置取得プログラムと、取得された位置がいずれかのアンカー領域に含まれるかどうかを判定する判定プログラムと、カーソルがあるアンカー領域に入ったとき、カーソルの表示状態をどのように変更するか決定し、その決定に従って実際にカーソルの形状等を変更する変更プログラムを持つ。
【００５１】
カーソルの変更については、アンカーごとに変更内容を変えない場合と変える場合がある。前者の場合、例えば通常は＋記号であるカーソルを◎に変更したり、カーソルの輝度を高める方法がある。この態様によれば、特に、ターゲットの動きや形の変化が速く、アンカー領域の変化が激しいときに利益がある。
【００５２】
一方、後者の場合は、前記変更プログラムから、カーソルが入ったアンカー領域のアンカーＩＤを検索し、これをそのままカーソルの代わりにカーソルの位置に表示することが考えられる。例えば、カーソルがある魚のアンカー領域に入ったとき、このカーソルを「鮫」などのように、そのアンカーのターゲットの内容を示せばよい。この態様によれば、ユーザはわざわざ魚をクリックするまでもなく、その魚の名前を知ることができる。
【００５３】
（３）中間基準フレームの明示的な指定
本実施の形態では、最初に両端基準フレームのみを決めることにしたが、ターゲットの動きが不規則な場合など、修正の必要が予想できる場合もある。その場合は、当初から開始フレーム、終了フレーム以外のフレームでもアンカー領域の指定を受け付けるものとする。例えば図９のＵＩにおいて、開始フレーム指定ボタン５６、終了フレーム指定ボタン５８に加え、中間フレーム指定ボタンを設けて対応する。このフレームは当初より基準フレームとして利用されるため、補間計算が図６の状態から開始されると考えればよい。
【００５４】
（４）矩形以外のアンカー領域
アンカー領域を矩形に限る必要はない。例えば円または楕円の場合、長径、短径および中心の３点の座標によって領域を指定すればよい。多角形なら各頂点の座標でよい。ターゲットの外周自体をアンカー領域とした場合は、外周上の一点の座標と、その点から表現したチェーンコードにより、領域を特定することもできる。
【００５５】
（５）非線形補間の採用
本実施の形態では、最も単純に線形補間を利用したが、これは当然、非線形補間でもよい。補間に用いる式は、処理すべき動画の特徴に合わせて実験等によって決めることができる。
【００５６】
（６）開始、終了フレームの決定
本実施の形態ではこれらのフレームをユーザが明示的に指定したが、以下の方法もある。
【００５７】
１．ユーザは開始、終了フレームを意識することなく、単にフレームを指定してアンカーを設定する。指定されたフレームが基準フレームとなる。フレーム決定部１０は、ユーザがアンカーを設定したフレームのうちフレーム番号が最小のものを開始フレーム、最大のものを終了フレームと決める。この場合、図９の開始フレーム指定ボタン５６、終了フレーム指定ボタン５８が不要となる。
【００５８】
２．ユーザは１枚のフレームを指定し、これにアンカーを設定するとともに、アンカー設定の対象となったターゲットを指定する。このフレームが基準フレームとなる。フレーム決定部１０は、その基準フレームの前後のフレームを調べることにより、そのターゲットが出現するフレームと消失するフレームを検出し、これらをそれぞれ開始フレーム、終了フレームとする。
【００５９】
ターゲットの存否は、画像のマッチングをとることで判断する。つまり、基準フレームで指定されたターゲットをモデルとして前後のフレームに対してマッチング処理を行う。マッチングがとれる限り探索の対象フレームを前後に広げていく。最終的にマッチングがとれなくなれば開始、終了フレームが判明する。この方法によれば、当初設けるべき基準フレームが１枚でよい。
【００６０】
（７）アンカー領域の三次元表示
アンカー設定部１１に、設定されたアンカー領域を画面の縦横であるｘ、ｙ方向、および時間ｔ方向に展開して三次元表示する機能を設ける。これはアンカーの編集中に図４がそのまま画面に表示されると考えればよい。この表示の結果、ユーザはアンカーの全体的な把握を視覚的に行うことができる。
【００６１】
なお、この技術の応用として、三次元表示されたアンカー情報に対して直接編集可能としてもよい。例えば図４の中間基準フレームにおけるアンカー領域を画面上で左に移動すれば、図６のような表示がなされる。ユーザは編集の効果をリアルタイムに把握することができる。
【００６２】
（８）動画の断面表示
アンカー設定部１１に、開始フレームから終了フレームまでのアンカー領域の軌跡の横方向の断面図（図１０（ａ））および縦方向の断面図（図１０（ｂ））を作成し、これをアンカーの軌跡とともに表示する機能を付加する。
【００６３】
まず基準フレームのアンカー情報からアンカー領域の重心Ｇのｘ、ｙ座標を求める。図１０（ａ）の場合、重心からｘ軸に平行な直線をフレーム上に引く。隣接する基準フレーム間で、これらの直線を含む平面（図中斜線部）を設ける。つぎにこの平面で動画を切断する。得られた断面図をｘ−ｔ平面（図中点画部）に投影する。図１０（ｂ）の場合はｘとｙを入れ換えて同じ処理をする。アンカーの軌跡が正しく計算されているとき、すなわち非基準フレームにおけるアンカー情報の推定精度が十分に高いとき、２つの投影図にはアンカーの移動経路が現れるはずである。例えば、赤いボールをアンカー設定の対象とすれば、動画の断面に赤い筋状の移動経路が現れる。鉛筆を縦に割れば芯が直線状に現れるのと同じである。この移動経路が途中で切れたり太くなっていれば、その箇所におけるアンカーの位置を修正すればよい。
【００６４】
（９）アンカーのグループ化
アンカー情報編集部１１０に、別々に設定されたアンカー情報をグループ化し、仮想的にひとつのアンカーとして扱う機能を付加する。例えば、人物ＡがフレームＮ１〜Ｎ２とフレームＮ３〜Ｎ４では画面内に存在し、フレームＮ２〜Ｎ３では存在しないとき、フレームＮ１〜Ｎ２およびフレームＮ３〜Ｎ４における人物Ａに関するアンカーをひとつのものとして扱う。この結果、アンカー情報を設定したり修正する作業が軽減される。この他、同じフレームに登場する人物Ａと人物Ｂをグループ化することもできる。
【００６５】
（１０）アンカー情報の一覧表示
アンカー情報編集部１１０に、現在処理中の動画に対して設定されたアンカー情報の一覧表示機能を設ける。例えば動画のタイトル「ＡＱＵＡＲＩＵＭ」とともに、「ＦＩＳＨ１」「ＦＩＳＨ２」…などのアンカー名称を画面に一覧表示する。内容を確認したいアンカー名称をユーザが選択したとき、そのアンカーの開始フレームまで戻って動画を再生する構成としてもよい。
【００６６】
（１１）アンカーの検索
アンカー情報の検索ＵＩを設ける。検索したいアンカー情報の名称などの文字情報をキーワードとして入力すると、アンカー検索部１５がアンカー情報記憶部２１からそのキーワードを持つものを検索して表示する。その他、アンカー領域の動きを検索キーにしてもよい。例えば、右に動くオブジェクトを見つけたいとき、ユーザは検索ＵＩにおいて例えば「→」のボタンを押す。アンカー検索部１５は各アンカー領域の軌跡を計算し、右に移動するオブジェクトを含むアンカーを検索して表示する。
【００６７】
（１２）アンカー情報表示画像の一覧表示
アンカー情報編集部１１０に、開始フレームと終了フレームの間に含まれるフレーム（基準フレーム、非基準フレームのいずれでも可）と、アンカー設定部１１によって設定されたアンカー情報、またはアンカー推定部１２によって推定されたアンカー情報を重ね合わせてアンカー情報表示画像を作成し、時系列で一覧表示する機能を設ける。
【００６８】
例えば図１１に示すように、まず開始フレーム８１と終了フレーム８２を両端に配置し、フレーム間隔Δｔでフレームを選択する。つづいて、これらの各フレームにアンカー情報８０を重ねてアンカー情報表示画像を作成し、これらを表示時刻の早いほうから並べて表示する。この構成により、アンカー設定の適否を一目で見渡すことができる。このため図９のボックス６６による位置決定作業が省略でき、アンカーの修正が容易になる。なお、フレームは一定間隔で選択する必要はなく、例えば基準フレームのみを選択してもよい。また、表示されたアンカー情報表示画像において、アンカー領域をマウスでドラッグするなどして直接編集可能としてもよい。
【００６９】
（１３）アンカー情報の動画再生中の補正
図１２のごとく、アンカー情報編集部１１０に、動画を画面上に再生する動画再生部１１８と、表示中のフレームに関するアンカー情報を表示するアンカー情報表示部１２０と、動画再生中の一時刻または複数の時刻においてアンカー情報補正操作が行われた場合、各アンカー情報補正操作が行われた時刻に再生していたフレームを特定し、それらのフレームが非基準フレームであれば基準フレームに昇格させるとともに、それらのフレームにおけるアンカー情報を各アンカー情報補正操作に基づいて補正するアンカー情報補正部１１９を設ける。
【００７０】
この構成にて、まず動画再生部１１８により、図９の画像表示領域５０に動画を表示する。このとき同時に、アンカー情報表示部１２０により、表示中のフレームにおけるアンカー情報をアンカー領域６０として表示する。ユーザは、アンカー領域６０がターゲットとずれているフレームを見つけたとき、動画中のターゲットの中心をマウスでクリックする。このアクションにより、アンカー情報補正部１１９はクリックの行われた時刻に表示していたフレームを特定し、クリックされた点を中心とするアンカー情報を生成することにより、アンカー情報を補正する。新たに設定されるアンカー領域のサイズは、例えばもとのアンカー領域と同一でもよい。以降、このフレームは基準フレームとして扱われる。この構成によって、動画の再生中にターゲットの位置を逐次指定できるので、後に確認して修正する手間が省ける。
【００７１】
実施の形態２．
実施の形態１では、主に補間によってアンカー情報の自動計算を行い、修正を手作業で行った。本実施の形態では、動画の解析をもとに予めある程度の枚数のフレームを基準フレームとしてアンカーを自動設定し、これらの基準フレーム間に実施の形態１の補間方法を用いる。この態様の場合、実施の形態１の中間基準フレームに相当するフレームが最初から存在するため、手作業による修正の労力が軽減される。
【００７２】
図１３は本実施の形態に係る動画ハイパーメディア装置のアンカー設定部１１の構成図である。アンカー設定部１１以外の構成は図１同等である。
【００７３】
図１３において、アンカー自動設定部１１２は近接フレーム抽出部１１７をもつ。近接フレーム抽出部１１７は隣接する基準フレーム間において一定間隔で非基準フレームを抽出し、これらを基準フレームに昇格させる。アンカー自動設定部１１２はまた、動きベクトル利用設定部１１３、輪郭情報利用設定部１１４およびパターンマッチング利用設定部１１６を有する。これら３つの設定部は、本来いずれかひとつを実装すればよいが、本実施の形態ではすべてを実装し、状況に応じてそのうちひとつを選択する。
【００７４】
基準フレーム削除部１１５は、後述のように、アンカー自動設定部１１２によって設定された基準フレームのうち冗長なものを非基準フレームに戻す。以下、この構成による動作を説明する。
【００７５】
［１］動きベクトルの利用によるアンカーの自動設定
この処理の特徴は、一旦開始フレームから終了フレームまでブロックの動きベクトルを求め、しかる後、ターゲットの仮想的な移動経路と動きベクトルの一致度を判定することによってターゲットの位置推定の追跡精度を高める二段階の構成にある。
【００７６】
１．動きベクトルの取得
開始フレーム、終了フレームの時刻をそれぞれｔ０、ｔ１とする。これらの他に、近接フレーム抽出部１１７により、まず非基準フレームのいくつかを基準フレームに変更する。ここでは単純に５フレームおきに変更するものとし、以降簡単のため基準フレーム間の経過時間を１と正規化する。開始フレームから終了フレームまでの期間における特定アンカーの動きベクトルを求めるために、アンカーの重心付近の画像領域をブロックとして、ブロックマッチングを行う。なお、任意の時刻ｔに対応するフレームをフレーム（ｔ）と表記する。
【００７７】
図１４は本実施の形態における動きベクトルの取得手順を示すフローチャートである。同図のごとく、まず時刻カウンタｔをｔ０に設定する（Ｓ１００）。つぎに、開始フレームにおいて設定されたアンカーのうち、動きベクトルを取得すべきアンカーを指定する。動きベクトル利用設定部１１３は指定されたアンカーの重心を含む領域をブロックマッチングの際に使用するブロック（以下「アンカーブロック」という）として記憶する（Ｓ１０１）。つづいて、フレーム（ｔ）の画像データＩ（ｔ）と、フレーム（ｔ＋１）のＩ（ｔ＋１）を取得する（Ｓ１０２）。Ｉ（ｔ）はフレームに含まれる各画素の画素値ｐの集合データである。
【００７８】
この後、ブロックをフレーム（ｔ＋１）内で動かしながら、最適マッチングを探索する（Ｓ１０３）。ブロック自身の各画素値はＩ（ｔ）から判明するため、ブロックをフレーム（ｔ＋１）の任意の個所に配置し、重なり合う画素どうしで画素値の２乗誤差を計算し、これをブロック全域で積算する。ブロックを少しづつ移動させながらこの積算を行い、積算値が最小になる位置をもって、ブロックの移動先であると判断する。
【００７９】
移動先が判明すれば、フレーム（ｔ）におけるブロックからフレーム（ｔ＋１）におけるブロックへの移動量と移動方向が確定するため、これを動きベクトルＶ（ｔ）として取得する（Ｓ１０４）。ここで、ｔ＋１が終了フレームの時刻ｔ１に到達したかどうかを判定し（Ｓ１０５）、到達していなければｔをインクリメントして（Ｓ１０６）、動きベクトルを繰り返し取得する。ｔ＋１がｔ１に等しくなれば、いままで取得したＶ（ｔ）を保存した後（Ｓ１０７）、処理を終える。
【００８０】
図１５はｔ０＝０、ｔ１＝３とした場合に得られた動きベクトルＶ（０）〜Ｖ（２）の例を示す図である。同図に示すごとく、Ｖ（ｔ）は画面上の縦横で定まるｘ、ｙ、および時間方向で定まるｔにより、（ｘ，ｙ，ｔ）の３成分で表現することができる。
【００８１】
２．一致度の判定
動きベクトルの際に設けたブロックと同等の大きさのブロックによって各フレームを分割し、ターゲットが辿った可能性のある全経路を見い出す。図１６はそうした経路のうちの１つを示す図である。同図では、フレームが１６のブロックに分割され、開始フレームにおける経路の起点と、終了フレームにおける経路の終点が図１４のブロックと一致している。この条件下では、全経路は１６×１６通りとなる。つづいて、この経路（以下「仮想経路」という）の各区間に、図１６に示すベクトル（以下「経路ベクトル」という）ｖ（ｔ）を定義する。経路ベクトルはあるフレームから次のフレームまで仮想経路を辿るとき、その方向で決まる。ｖ（ｔ）も（ｘ，ｙ，ｔ）の３成分で記述される。
【００８２】
ここで、各区間においてＶ（ｔ）とｖ（ｔ）のなす角度をθｔとおき、内積を用いた次の式によってｆ（ｔ）＝ｃｏｓθｔを計算する。
【００８３】
ｆ（ｔ）＝ （ V(t) , v(t) ）／|V(t)|・|v(t)|   （式２）
図１７は図１６のｖ（ｔ）に対し、図１５のＶ（ｔ）を追加して表示した図で、θｔの意味を示している。式２のｆ（ｔ）が大きいほど、その区間における仮想経路と動きベクトルの一致度は高いが、ある区間で一致度が最大になっても、他の区間の一致度が非常に低ければ、全体としての一致度は低いとみる必要がある。そこで、各区間の一致度を加味しつつ、全体としての一致度を評価するために、次の評価式を導入する。
【００８４】
ｇ（ｔ）＝ｍａｘ｛ｆ（ｔ−１）＋ｇ（ｔ−１）｝ （式３）
式３を再帰的に計算していくことにより、常にその時刻まで最も一致度の高かった仮想経路が判明する。この計算を終了フレームまで行えば、全体を通して最も一致度の高い仮想経路が判明するため、この経路をもってターゲットの移動経路とみなす。後は、この移動経路と各基準フレームの交差する個所にその時刻におけるターゲットが存在するものとして、アンカーの自動設定を行う。設定されたアンカー情報は、図３に示すアンカー情報テーブルに追加していけばよい。なお、基準フレーム以外のフレームについては、実施の形態１同様の方法により、補間計算からアンカー情報を逐次計算して求めればよい。
【００８５】
［２］輪郭情報の利用によるアンカーの自動設定
アンカー自動設定の別の方法として、ターゲットの輪郭の移動をもとにターゲットの位置の推定を行う方法がある。輪郭情報利用設定部１１４では、図１４同様の繰り返し処理により、各フレームについて輪郭画像を生成する。輪郭画像は、輪郭線上が１その他が０となる２値化画像であり、画像にコンパス・グラディエント（Compass-gradient）型フィルタなどをかけることで生成可能である。輪郭画像が求まれば、以降、アンカーがターゲットと全く同じ移動をするものとしてアンカー情報の設定を行えばよい。
【００８６】
［３］マッチングを利用したアンカーの自動設定
アンカー自動設定のさらに別の方法として、図１８に示すパターンマッチングによるターゲットの位置の推定がある。この方法の場合も、まず近接フレーム抽出部１１７により、予めある程度の基準フレームを設ける。つぎに、開始フレーム１３０において設定されたアンカー領域１３２からパターンマッチング用のモデル１３４を作成し、隣接する基準フレーム１３６の中で最も一致度の高い領域１３８を求める。パターンマッチングの方法として、モデルの画像データをそのまま重ね合わせるテンプレートマッチング法と、画像から抽出された特徴点の位置関係をもとに重ね合わせを行う構造マッチング法などがある。パターンマッチングはモデルの近傍を中心に行う。
【００８７】
こうして２枚目の基準フレームで領域１３８が見い出されれば、この領域１３８を新しいモデルとして同様の処理を繰り返し、ターゲットを追跡していく。なお、ターゲットの動きや変形が激しい場合や基準フレームの設定間隔が広すぎるときには良好なマッチングがとれない場合もある。そのようなとき、近接フレーム抽出部１１７は基準フレームの間隔を狭めてさらに多くの基準フレームを設けたうえでマッチング処理をやりなおすものとする。
【００８８】
［４］不要な基準フレームの削除
上述の例では、５フレームごとに基準フレームを設けた。しかし、例えばターゲットが等速直線運動をするような場合、基準フレームは開始フレームと終了フレームだけで十分である。ターゲットが開始フレームから終了フレームまで、すべて等速直線運動をしていない場合であっても、そのような運動をしている期間については、その期間の両端の基準フレームだけがあればよい。基準フレームが減るたびに計算の負荷も軽くなる。［１］の場合、仮想経路が激減するため、特に効果的である。
【００８９】
この観点から、基準フレーム削除部１１５は不要な基準フレームの削除を行う。図１９〜２１は基準フレームを削除していく様子を示す図である。これらの図の横軸は時間、縦軸はフレーム上に設けられたｘ−ｙ座標の原点からの距離を示している。また、各図中の○は、アンカー領域を模式的に示すものである。削除は以下の手順による。
【００９０】
［図１９］
当初、基準フレームは両端基準フレームを含めて６個設けられている。ここで開始フレームのアンカーと終了フレームのアンカーを直線で結び、この直線と各アンカーの距離を計算する。距離が所定値以下になったアンカーがあれば、その時刻の基準フレームを削除する。同図では削除されるアンカーはなかったものとする。つぎに、直線から最も遠いアンカー（以下、最遠アンカーとよぶ）を見つける。ここでは、ｔ＝３のアンカーが最遠アンカーである。
【００９１】
［図２０］
前記の直線を消去し、開始フレームのアンカー、最遠アンカー、終了フレームのアンカーをこの順に折れ線で結び、再びこの折れ線と各アンカーの距離を求める。距離が前記所定値以下になったｔ＝４のアンカーが削除される。最遠アンカーはｔ＝２のアンカーに変更される。
【００９２】
［図２１］
新たな最遠アンカーを通るよう、折れ線を修正する。ここで、新たな折れ線との距離が前記所定値以下になったｔ＝１の基準フレームが削除される。これで処理が終了する。
【００９３】
この例では、２つの基準フレームが削除されたことになる。最初の基準フレームが多いときは、１．所定値以下の基準フレームの削除、２．最遠アンカーの探索、３．折れ線の修正、を繰り返せばよい。
【００９４】
以上が本実施の形態の概要である。なお、本実施の形態については以下のような改良または変形が考えられる。
【００９５】
（１）式２の変更
式２ではｆ（ｔ）＝ｃｏｓθｔを採用したが、当然これは別の関数でもよい。θｔと増減をともにする関数はｆ（ｔ）の候補になり得る。
【００９６】
（２）ブロックのとりかた
図１５では、アンカー領域の重心付近を含むようにブロックを決めたが、これは別の決め方でもよい。例えば、アンカー領域をそのままアンカーブロックとしてもよい。同様に図１６でも、ブロックの大きさと関係なくブロックを決めてもよい。
【００９７】
（３）上述［３］の別方法（その１）
上述のマッチングによるアンカー自動設定の別態様を挙げる。あるフレームの領域をモデルとして次々にマッチングをとっていく場合、誤差が積もって次第にターゲットから外れていくおそれがある。このため、近接フレームからのマッチングだけでなく、ある程度時間的に離れたフレームからのマッチング結果を加味して判断する。
【００９８】
図２２に示すように、ここでは時間距離の離れた基準フレームとして開始フレームと終了フレームを採用する。いま、アンカーの位置を特定すべき新たな基準フレーム４０４が時刻ｔ＋Δｔのものとする。一方、開始フレームのアンカー領域のモデルＡ４００、終了フレームのアンカー領域のモデルＢ４０１、時刻ｔの基準フレーム４０２のアンカー領域のモデルＣ４０３がすべて既知である。そこで、これら３枚の基準フレームと時刻ｔ＋Δｔの基準フレーム４０４との間でそれぞれマッチングをとる。このとき、すべてのマッチング結果が一致すれば、その領域の追跡結果は信頼できる。一方、マッチング結果が一致しない場合、例えば以下の方法でアンカー位置を決める。
【００９９】
１．３回のマッチングの結果時刻ｔ＋Δｔの基準フレーム４０４上に得られる３つの領域を重ね合わせ、重複部分の中心を中心とする、もとの領域と同一サイズのアンカー領域を作成する。
【０１００】
２．ひとつのモデルであるモデルＣ４０３について複数のマッチング結果を求め、マッチング結果の上位から順に、その領域内にモデルＡ４００、モデルＢ４０１のマッチング結果から得られる領域が含まれるか否かを判定していく。一定の割合以上で含まれる場合、マッチング結果から得られる領域どうしの重複部分の中心を中心とする、もとの領域と同一サイズのアンカー領域を作成する。
【０１０１】
なお、ここでは近接する基準フレームのほかに開始フレームおよび終了フレームを考慮したが、組合せには自由度がある。たとえば、近接する基準フレームおよび一定の時間距離だけ隔たった任意数の基準フレームを採用してもよい。
【０１０２】
（４）上述［３］の別方法（その２）
図２３のごとく、アンカー自動設定部１１２に自動設定信頼度判定部１３３と自動設定信頼度表示部１３１を設ける。自動設定信頼度判定部１３３は、最終フレームまで順方向でマッチングを行って得られたアンカー領域と、終了フレームで指定されているアンカー領域との重複の程度により、追跡の信頼度を判定する。例えば、重複部分の面積が７０％以上なら追跡結果は信頼でき、５０％以下なら信頼できないと判定する。自動設定信頼度表示部１３１は追跡の信頼度（信頼ができるか否か、またはその％）を表示する。
【０１０３】
例えば図２４に示すように、ターゲットの本来の軌跡１４０に対してマッチングによる追跡結果１４１が反れたとき、重複の程度が低いため、追跡は信頼できないと判定される。そこで、今度は終了フレームのアンカー領域をモデルにして逆方向に画像のマッチングをとり、ターゲットの位置を推定しなおす。この際、各基準フレームにおいて、先に順方向のマッチングで設定されたアンカー領域と今回の逆方向マッチングによって得られたアンカー領域を比較し、両者が所定の割合以上で重なっていれば追跡を終了する。このとき別の方法として、指定されたフレームで追跡を打ち切ってもよい。追跡を終了すべきフレームは、開始フレームおよび終了フレームからの距離の比などで決めてもよい。重複を判定する方法と追跡を終了すべきフレームを指定する方法を併用してもよい。
【０１０４】
以上、この方法によれば、追跡の途中で誤りが発生した場合でも、以降の追跡結果の悪化を回避することができ、最終的な修正作業が軽減される。また、重複の度合いを見て逆方向のマッチングを終了する場合、必要な部分だけが修正されるため、処理時間の短縮につながる。
【０１０５】
なお、信頼度が低い場合であっても、逆方向のマッチングを自動的に開始するのではなく、単に信頼度を表示するにとどめてもよい。その場合、ユーザは逆方向のマッチングを実行させてもよいし、自ら望む修正を施してもよい。いずれにせよ、自動設定信頼度表示部１３１によってユーザは追跡の良否を知ることができ、適切な対処が可能になる。
【０１０６】
（５）上述［３］の別方法（その３）
図１２の各構成、すなわち動画再生部１１８、アンカー情報表示部１２０、アンカー情報補正部１１９をアンカー自動設定部１１２の中に設ける。ここでは、動画再生部１１８は動画を構成する各フレームを時系列に従い、適当な時間間隔で表示する。アンカー情報補正部１１９は、動画再生中の任意の時刻にアンカー情報補正操作が行われたとき、その時刻に表示されていたフレームのアンカー情報を補正する。それとともに、そのフレームの直前の所定枚数または所定期間に表示されたフレームのアンカー自動設定結果を無効化する。
【０１０７】
この構成における動作を説明する。ここでは、動画像の再生に従い、開始フレームから逐次順方向でマッチングをとりながら表示していくとする。この動作の場合、既述のごとく、いったんマッチングが良好でなくなると、以降アンカー情報が次第に外れていくおそれがある。ユーザは、再生される動画像とアンカー情報を見ながら、アンカー領域がターゲットから外れたとき画面をクリックする。この時点で再生が停止する。ここで、たとえばユーザがターゲットの中心をクリックすれば、その点が中心になるようアンカー位置が修正される。以降のマッチングは修正されたアンカー情報をもとに行われるため、良好となる。
【０１０８】
この方法では、動画像の再生中にユーザが画面をクリックするため、アクションの遅延を考える必要がある。すなわち、アンカー領域がターゲットから外れたことを認識してクリックしたときには、すでに数フレームにわたってそうした現象が徐々に進行していたと考えられる。そこでアンカー情報補正部１１９は、アンカー情報が修正されたフレームの前に存在する所定の複数フレームについて自動設定されたアンカー情報を無効化する。
【０１０９】
図２５は、ターゲットの本来の軌跡とマッチングによって得られた追跡結果の関係、およびアンカー情報補正部１１９の動作を示す図である。同図の実線１５０はターゲットの軌跡と追跡結果が一致している間、破線１５１は、追跡結果が軌跡から外れている間を示している。同図のごとく、時刻ｔ０〜ｔ１は追跡結果が信頼できるが、時刻ｔ１で外れだす。ユーザはこのことに気付き、時刻ｔ２で画面をクリックする。この結果、時刻ｔ２〜ｔ３の間でまた正しい追跡が行われる。時刻ｔ１〜ｔ２は正しくない追跡結果が残るため、これが無効化される。無効化された部分については、同図のごとく、時刻ｔ１、ｔ２におけるアンカー情報を線形補間することにより、欠けた追跡結果を補うことができる。なお、アンカー情報を無効化するフレーム数は予め指定してもよいし、修正を行う時点で指定してもよい。
【０１１０】
実施の形態３．
実施の形態１、２の動画ハイパーメディア装置を応用し、以下の装置またはシステムを構築することができる。
【０１１１】
１．対話型ビデオ教材制作装置
本発明に係る動画ハイパーメディア装置はＣＡＩコンテンツの制作にも最適である。すなわち、本装置でビデオ教材にアンカーを設定し、必要な付加情報をリンクさせる。図２６はこの装置によって制作されたビデオ教材を示す図である。同図のごとく、アンカーＡに対して説明Ａ、アンカーＢに対して説明Ｂなどがリンクされている。生徒はビデオを再生しながら、より詳しい説明が欲しいオブジェクトを画面上でクリックする。クリックされたオブジェクトがアンカーＡに関連していれば、説明Ａが画面に表示される。
【０１１２】
２．対話型ビデオサーバシステム
本発明に係る動画ハイパーメディア装置はビデオサーバシステムにも最適である。図２７はこのビデオサーバシステムの構成図である。同図のごとく、このシステムは、図１の構成をほぼ分け合う形のサーバ２００とクライアント２５０からなる。
【０１１３】
サーバ２００は、動画とそのアンカー情報、およびアンカーにリンクされた関連データを記憶するデータ記憶部２０４、アンカー推定部２０６、任意のアンカーにリンクされた関連データを検索するハイパーリンク検索部２０８を備える。アンカー推定部２０６は非基準フレームにおけるアンカー情報を推定する。
【０１１４】
一方、クライアント２５０は、ユーザが動画中の対象をクリックしたとき、いずれのアンカー領域がクリックされたかを判定するアンカー判定部２５２を備える。
【０１１５】
この構成において、クライアント２５０でユーザが画面上のあるオブジェクトをクリックすると、アンカー判定部２５２がクリックされたアンカーを特定する。この情報はサーバ２００に送られる。サーバ２００のハイパーリンク検索部２０８はデータ記憶部２０４からそのアンカーにリンクされた関連データを検索し、これをクライアント２５０に送る。
【０１１６】
以上、このシステムによれば、動画データやアンカー情報をサーバ２００の側に一括して蓄積しておき、多数のユーザから必要な動画とそれにリンクされた情報を見ることができる。
【０１１７】
【発明の効果】
本発明の動画アンカー設定装置によれば、基準フレームのみに対してアンカー情報を設定することで非基準フレーム、すなわち基準フレーム以外のフレームのアンカー情報を推定することができるため、非基準フレームに対するアンカー情報の設定が不要となる。この結果、アンカー設定作業を省力化することができる。
【０１１８】
また、推定されたアンカー情報に修正を加えるアンカー情報編集手段を含むので、修正の結果、正確なアンカー情報を用いて、非基準フレームに関するアンカー情報の精度を高めることができる。
【図面の簡単な説明】
【図１】実施の形態１に係る動画ハイパーメディア装置を含むシステムの構成図である。
【図２】実施の形態１によるアンカーの設定および修正手順を示すフローチャートである。
【図３】実施の形態１で設定されたアンカー情報のテーブルを示す図である。
【図４】実施の形態１によるアンカー情報の補間計算方法を示す図である。
【図５】図３に中間基準フレームのアンカー情報を追加して得られるテーブルを示す図である。
【図６】実施の形態１において中間基準フレームと両端基準フレームの３つのフレームをもとに補間計算を行う方法を示す図である。
【図７】実施の形態１によるリンクの設定および検索手順を示すフローチャートである。
【図８】実施の形態１で設定されたリンク情報のテーブルを示す図である。
【図９】アンカー設定のためのＵＩ画面例を示す図である。
【図１０】図１０（ａ）は開始フレームから終了フレームまでのアンカー領域の軌跡の横方向の断面図、図１０（ｂ）は同様に縦方向の断面図である。
【図１１】実施の形態１において、アンカー情報編集部によって時系列に表示されたアンカー情報表示画像を示す図である。
【図１２】実施の形態１に係る動画ハイパーメディア装置のアンカー情報編集部の内部構成例を示す図である。
【図１３】実施の形態２に係る動画ハイパーメディア装置のアンカー設定部の構成図である。
【図１４】実施の形態２における動きベクトルの取得手順を示すフローチャートである。
【図１５】図１４においてｔ０＝０、ｔ１＝３とした場合に得られた動きベクトルＶ（０）〜Ｖ（２）の例を示す図である。
【図１６】アンカーが辿った可能性のある経路のうちの１つを示す図である。
【図１７】図１６のｖ（ｔ）に対し、図１５のＶ（ｔ）を追加して表示した図である。
【図１８】実施の形態２においてパターンマッチングに基づくアンカーの自動設定方法を示す図である。
【図１９】実施の形態２において基準フレームを削除していく様子を示す図である。
【図２０】実施の形態２において基準フレームを削除していく様子を示す図である。
【図２１】実施の形態２において基準フレームを削除していく様子を示す図である。
【図２２】実施の形態２で、近接する基準フレームのほかに、ある程度時間距離の離れた基準フレームを用いてマッチングをとる方法を示す図である。
【図２３】実施の形態２に係る動画ハイパーメディア装置のアンカー自動設定部の構成例を示す図である。
【図２４】図２３の構成による効果を説明するために、その構成がなければ生じる可能性のある、誤った追跡結果を示す図である。
【図２５】ターゲットの本来の軌跡とマッチングによって得られた追跡結果の関係、およびアンカー情報補正部の動作を示す図である。
【図２６】実施の形態３の対話型ビデオ教材制作装置の構成を示す図である。
【図２７】実施の形態３の対話型ビデオサーバシステムの構成を示す図である。
【符号の説明】
１  データ操作部、２  データ記憶部、３  表示部、４  ユーザ操作部、６  動画入力部、１０  フレーム決定部、１１  アンカー設定部、１２  アンカー推定部、１３  ハイパーリンク設定部、１４  ハイパーリンク検索部、１５  アンカー検索部、２０  動画データ記憶部、２１  アンカー情報記憶部、２２  リンク情報記憶部、３０  表示制御部、３１  表示装置、５０  画像表示領域、５２  ボタン群、５４  矩形ボタン、５６  開始フレーム指定ボタン、５８  終了フレーム指定ボタン、６０  アンカー領域、６２  アンカー関連ボックス群、６４  シーン関連ボックス群、６６，６８  ボックス、８０  アンカー情報、８１  開始フレーム、８２  終了フレーム、１１０  アンカー情報編集部、１１１  テキストアンカー設定部、１１２  アンカー自動設定部、１１３  動きベクトル利用設定部、１１４  輪郭情報利用設定部、１１５  基準フレーム削除部、１１６パターンマッチング利用設定部、１１７  近接フレーム抽出部、１１８  動画再生部、１１９  アンカー情報補正部、１２０  アンカー情報表示部、１３１  自動設定信頼度表示部、１３３  自動設定信頼度判定部、１４０  ターゲットの本来の軌跡、１４１  マッチングによる追跡結果、２００  サーバ、２０４  データ記憶部、２０６  アンカー推定部、２０８  ハイパーリンク検索部、２５０  クライアント、２５２  アンカー判定部、３００  カーソル変更部、４００  モデルＡ、４０１  モデルＢ、４０２  時刻ｔの基準フレーム、４０３  モデルＣ、４０４  時刻ｔ＋Δｔの基準フレーム。