(57)【要約】【課題】ネットワークを利用してストリーミング映像に含まれるシーン及び当該シーンに付されたアノテーション情報を検索・閲覧可能とする。【解決手段】ストリーミングサーバに登録されたストリーミング映像について、各ストリーミング映像に含まれる任意のイベントに関し少なくとも映像ＩＤと当該映像における開始時間・終了時間とイベント内容とを登録した検索テーブルを有する検索サーバを備える。この検索サーバはユーザ端末からの要求に応じて条件に合致する映像シーンを検索し、少なくとも当該シーンに係る映像ＩＤと開始時間・終了時間とを含むシーン情報をユーザ端末に送信する。ユーザ端末がいずれかのシーン情報を指定して映像配信要求を行うと、その映像のその時間幅がストリーミング配信される。また、任意のシーンについて別途作成されたコーチング等の付加情報が関連づけられており、シーン閲覧に際しこの付加情報も享受できるようにする。【選択図】  図１
2007142750.tif 000002
【特許請求の範囲】
【請求項１】
映像ストリーミングサーバに登録された１以上のストリーミング映像について、各ストリーミング映像に含まれる任意のイベントに関し少なくとも映像ＩＤと当該映像における開始時間・終了時間とイベント内容とが登録された検索テーブルと、ユーザ端末からの検索要求に応じて前記検索テーブルを参照して条件に合致する映像シーンを検索し、少なくとも当該シーンに係る映像ＩＤと開始時間・終了時間とを含むシーン情報をユーザ端末に送信する検索処理手段とを備え、ユーザ端末がいずれかのシーン情報を指定して映像配信要求を行うことにより、ユーザが所望するシーンをストリーミング閲覧可能としたことを特徴とする映像閲覧システム。
【請求項２】
請求項１に記載の映像閲覧システムにおいて、前記検索処理手段は、前記検索要求に含まれるキーワードが完全一致又は部分一致するイベントを検索する機能と、検索抽出された２以上のイベントの時間幅が重複又は連続する映像シーンを検索する機能と、これらの条件をさらにａｎｄ又はｏｒ検索する機能とを備え、前記検索要求に応じて条件に合致する映像シーンを特定することを特徴とする映像閲覧システム。
【請求項３】
請求項１又は２に記載の映像閲覧システムにおいて、前記検索処理手段が、検索テーブルにおいて検索した映像シーンと同じ映像ＩＤであって時間幅が重複するイベントのイベント内容をすべて抽出し、当該映像シーンのイベント内容として前記シーン情報に含めることを特徴とする映像閲覧システム。
【請求項４】
請求項１乃至３のいずれかに記載の映像閲覧システムがさらに、任意のイベントについて線画・音声・文字・ＵＲＬ情報のいずれか１以上を含む付加情報が登録される付加情報格納手段を備えるとともに、各付加情報に係る映像ＩＤと時間情報とアクセスパスとが前記検索テーブルに登録されており、前記検索処理手段が前記映像シーンの検索に加え、検索した映像シーンと映像ＩＤが同じで映像時間が重複する付加情報を検索し、そのアクセスパスを前記シーン情報に含めることにより、ユーザが所望するシーンとともに当該シーンに付された付加情報を取得可能としたことを特徴とする映像閲覧システム。
【請求項５】
請求項１乃至４のいずれかに記載の映像閲覧システムがさらに、前記映像ストリーミングサーバからユーザ端末への映像ストリーミング配信を中継する１以上のリレーゲート手段と、各ストリーミング映像の映像ＩＤ及びＵＲＬとこの映像を担当するリレーゲート手段へのアクセスパスとが登録された映像管理テーブルと、前記ユーザ端末から映像ＩＤを含む映像配信要求を受けた場合に前記映像管理テーブルを参照して要求映像に対応するリレーゲート手段へのアクセスパスをユーザ端末に返信するマスタサーバとを備え、前記リレーゲート手段は前記ユーザ端末からアクセスを受けると当該ユーザ端末の識別情報を前記マスタサーバに送信し、これを受けて前記マスタサーバは前記映像管理テーブルを参照して前記ストリーミング映像のＵＲＬを前記リレーゲート手段に送信し、これにより前記リレーゲート手段が前記ストリーミング映像の中継を実行することを特徴とする映像閲覧システム。
【請求項６】
請求項５に記載の映像閲覧システムにおいて、前記映像管理テーブルには各映像について閲覧が許可されたユーザ及び／又はユーザグループのリストが登録されているとともに、前記マスタサーバは前記ユーザ端末から映像配信要求を受けた場合に当該ユーザ及び／又は当該ユーザが属するユーザグループがこの映像の閲覧を許可されているかを確認することを特徴とする映像閲覧システム。
【請求項７】
請求項１乃至６に記載の映像閲覧システムがさらに、ユーザごとのユーザＩＤ及びパスワードを登録するユーザ管理テーブルと、前記マスタサーバ等から問い合わせを受けた場合に前記ユーザ管理テーブルを参照してユーザ認証を行いその結果を返信するユーザ認証処理手段とを備えることを特徴とする映像閲覧システム。
【請求項８】
請求項５に記載の映像閲覧システムにおいて、前記映像管理テーブルに前記ストリーミング映像の元映像であるダウンロード用ファイルのアクセスパスが登録されており、前記マスタサーバがユーザ端末からダウンロード要求を受けた場合に所定条件の下に前記ダウンロード用ファイルへのアクセスパスを前記ユーザ端末に通知することを特徴とする映像閲覧システム。
【請求項９】
請求項１乃至８のいずれかに記載の映像閲覧システムに用いられ、前記検索テーブルの登録内容を定義するイベント入力端末であって、前記ストリーミング映像を再生する映像再生部と、当該映像に含まれるイベントの内容を定義するイベント内容定義部と、前記ストリーミング映像における各イベントの開始時間及び終了時間を定義するイベント時間定義部とを備え、ユーザの操作又は自動処理により映像ＩＤと、開始時間及び終了時間と、イベント内容とを含むイベント情報を作成することを特徴とするイベント入力端末。
【請求項１０】
請求項９に記載のイベント入力端末で動作するプログラムであって、前記ストリーミング映像を再生するステップと、ユーザの入力操作があった場合又は前記ストリーミング映像又は音声が所定条件を満たす場合にイベントを認識して予め設定された内容のイベント情報を定義するステップと、これと同時にストリーミング映像におけるイベント発生時を定義してこれらの情報を映像ＩＤとともにＸＭＬ形式のイベント情報として作成するステップと、をコンピュータに実行させることを特徴とするプログラム。
【請求項１１】
請求項４に記載の映像閲覧システムに用いられ、前記付加情報を作成するためのコンピュータ端末であって、前記ストリーミング映像を再生及び一時停止する映像表示部と、少なくとも文字・線画・音声・ＵＲＬ情報のいずれか１以上を入力可能な付加情報入力部とを備え、一時停止されたストリーミング映像画面上に仮想レイヤを作成し、当該仮想レイヤの画面定義情報として前記入力された文字・線画・音声・ＵＲＬへのリンクを定義してＸＭＬ形式の付加情報を作成することを特徴とする付加情報入力端末。
【請求項１２】
請求項１１の付加情報入力端末で動作するプログラムであって、前記ストリーミング映像を再生するステップと、ユーザからの入力操作があった場合にストリーミング映像を一時停止するステップと、ユーザから文字・線画・音声・ＵＲＬ情報いずれかの入力情報を取得して前記一時停止した映像画面上に仮想レイヤを作成し、当該仮想レイヤの画面定義情報として前記入力情報を含むＸＭＬ形式の付加情報を作成するステップと、をコンピュータに実行させることを特徴とするプログラム。
【請求項１３】
請求項１乃至８のいずれかに記載のユーザ端末であって、ユーザの所望する映像シーンの検索条件を設定する検索条件設定部と、前記検索処理手段からのシーン情報をリスト表示するシーン情報表示部と、ユーザが選択したシーンのストリーミング映像を再生する映像再生部とを備え、前記検索条件設定部はユーザが直接入力又は選択した検索パラメータ又はその組み合わせを前記検索処理手段に送信し、前記シーン情報表示部は検索結果として表示したいずれかのシーン情報がユーザに選択された場合に当該シーン情報が含む映像ＩＤと、開始時間及び終了時間と、予め取得しているユーザ識別情報及びパスワードとを前記マスタサーバに送信して映像配信要求を行うことを特徴とするユーザ端末。
【請求項１４】
請求項１３に記載のユーザ端末で動作するプログラムであって、ユーザに選択可能に提示あるいは直接入力により検索パラメータ又はその組み合わせを取得して前記検索処理手段に送るステップと、前記検索処理手段からのシーン情報を選択可能に表示するステップと、ユーザに選択されたシーン情報に含まれる映像ＩＤと、開始時間及び終了時間と、予め取得しているユーザ識別情報及びパスワードとを前記マスタサーバに送信して映像配信を要求するステップとをコンピュータに実行させることを特徴とするプログラム。
【請求項１５】
請求項１４に記載のプログラムがさらに、前記ユーザに選択されたシーン情報が前記付加情報のアクセスパスを含んでいる場合に当該付加情報を取得してユーザに選択可能に提示するステップと、ユーザによりいずれかの付加情報が選択された場合、映像シーンの再生時に前記付加情報が示す時刻が到来したら前記ストリーミング映像を一時停止させ、前記付加情報に定義された文字・線画・音声等の情報を再生画面上に表示するステップとをコンピュータに実行させることを特徴とするプログラム。
【請求項１６】
請求項１３又は１４に記載のプログラムがさらに、予め１以上のパラメータ及び所定の処理手順を組み合わせて作成された検索条件ファイルを読み込んで、当該ファイルに定義されたパラメータをユーザに提示しユーザに選択入力あるいは直接入力されたパラメータを用いて検索要求を作成あるいは別の検索条件ファイルを取得するステップをコンピュータに実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、インターネットを介した映像閲覧システムに関し、特に、映像を用いたスポーツのコーチング及び習熟に有用な映像閲覧システムに関する。
【背景技術】
【０００２】
スポーツの習熟、競技力向上やコーチングにおいて体の動かし方を直感的に把握するために、映像は非常に重要である。また、スポーツファンの人間であれば、好きな選手の名シーンを好きなときに見返したいと思うこともある。近年ではインターネット上の検索エンジンで映像検索技術が実用化され、ユーザが映像を検索できるようになっている。
【０００３】
また、例えば特許文献１では、指導を受ける受講者のビデオ映像を用いて体の動かし方を指導したり、手本となる指導者の映像と受講者の映像を並べて表示して、正しいフォームやタイミングを受講者に理解できるようにすることが提案されている。また、特許文献２には、指導者の模範的演技を図形や文字・音声で表示してウィークポイントの是正に役立たせようとすることが提案されている。
【特許文献１】特開平７−１４４０３８号公報
【特許文献２】特開２００２−１１１３２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、世の中には様々なスポーツ映像が存在し、これらがそれぞれ管理者により任意のファイル名で管理されているため、見たい映像を探し出すには困難が伴うことが多い。特に、例えば見たい映像が試合中の１シーンであるような場合にはこれを特定して検索するのは非常に困難である。一方、スポーツ指導者やその受講者等のユーザが自ら撮影した、あるいはインターネットを介して取得した映像をすべて自己のコンピュータに保存するには膨大な記憶容量が必要となりあまり現実的でない。また、例えばスポーツの指導現場では指導者が映像を受講者に見せながら音声や図示等を加えながら説明していくことが多いが、このコーチング情報を後に他人が利用できるようになれば広く競技力の向上につながると考えられる。また、例えば同じスポーツ映像を用いて複数の指導者が別途コーチングを行うこともあり、同じ映像について異なるまたは好みの指導者のコーチング情報を入手できるとすれば便宜となる。
【０００５】
本発明はこのような課題を解決するため、競技団体、スポーツクラブ、大学等さらには広く一般ユーザまで好適に利用可能なシステムを構築することを目的とし、ひいては国際競技力の向上に寄与することを目的とする。
【課題を解決するための手段】
【０００６】
この目的を達成すべく、本発明の映像閲覧システムは、映像ストリーミングサーバに登録された１以上のストリーミング映像について、各ストリーミング映像に含まれる任意のイベントに関し少なくとも映像ＩＤと当該映像における開始時間・終了時間とイベント内容とが登録された検索テーブルと、ユーザ端末からの検索要求に応じて前記検索テーブルを参照して条件に合致する映像シーンを検索し、少なくとも当該シーンに係る映像ＩＤと開始時間・終了時間とを含むシーン情報を作成してユーザ端末に送信する検索処理手段とを備え、ユーザ端末がいずれかのシーン情報を指定して映像配信要求を行うことにより、ユーザが所望するシーンをストリーミング閲覧可能としたことを最も主要な特徴とする。
【０００７】
前記検索処理手段は、前記検索要求に含まれるキーワードが完全一致又は部分一致するイベントを検索する機能と、検索抽出された２以上のイベントの時間幅が重複又は連続する映像シーンを検索する機能と、これらの条件をさらにａｎｄ又はｏｒ検索する機能とを備え、前記検索要求に応じて条件に合致する映像シーンを特定することが有効である。
【０００８】
前記検索処理手段が、検索テーブルにおいて検索した映像シーンと同じ映像ＩＤであって時間幅が重複するイベントのイベント内容をすべて抽出し、当該映像シーンのイベント内容として前記シーン情報に含めることが有効である。
【０００９】
本発明の映像閲覧システムがさらに、任意のイベントについて線画・音声・文字のいずれか１以上を含む付加情報が登録される付加情報格納手段を備えるとともに、各付加情報に係る映像ＩＤと時間情報とアクセスパスとが前記検索テーブルに登録されており、前記検索処理手段が前記映像シーンの検索に加え、検索した映像シーンと映像ＩＤが同じで映像時間が重複する付加情報を検索し、そのアクセスパスを前記シーン情報に含めることにより、ユーザが所望するシーンとともに当該シーンに付された付加情報を取得可能としたことが有効である。
【００１０】
さらに、前記映像ストリーミングサーバからユーザ端末への映像ストリーミング配信を中継する１以上のリレーゲート手段と、各ストリーミング映像の映像ＩＤ及びＵＲＬとこの映像を担当するリレーゲート手段へのアクセスパスとが登録された映像管理テーブルと、前記ユーザ端末から映像ＩＤを含む映像配信要求を受けた場合に前記映像管理テーブルを参照して要求映像に対応するリレーゲート手段へのアクセスパスをユーザ端末に返信するマスタサーバとを備え、前記リレーゲート手段は前記ユーザ端末からアクセスを受けると当該ユーザ端末の識別情報を前記マスタサーバに送信し、これを受けて前記マスタサーバは前記映像管理テーブルを参照して前記ストリーミング映像のＵＲＬを前記リレーゲート手段に送信し、これにより前記リレーゲート手段が前記ストリーミング映像の中継を実行することが有効である。
【００１１】
前記映像管理テーブルには各映像について閲覧が許可されたユーザ及び／又はユーザグループのリストが登録されているとともに、前記マスタサーバは前記ユーザ端末から映像配信要求を受けた場合に当該ユーザ及び／又は当該ユーザが属するユーザグループがこの映像の閲覧を許可されているかを確認することが有効である。
【００１２】
さらに、ユーザごとのユーザＩＤ及びパスワードを登録するユーザ管理テーブルと、前記マスタサーバ等から問い合わせを受けた場合に前記ユーザ管理テーブルを参照してユーザ認証を行いその結果を返信するユーザ認証処理手段とを備えることが有効である。
【００１３】
前記映像管理テーブルに前記ストリーミング映像の元映像であるダウンロード用ファイルのアクセスパスが登録されており、前記マスタサーバがユーザ端末からダウンロード要求を受けた場合に所定条件の下に前記ダウンロード用ファイルへのアクセスパスを前記ユーザ端末に通知することが有効である。
【００１４】
また本発明は、上記の映像閲覧システムに用いられ、前記検索テーブルの登録内容を定義するイベント入力端末であって、前記ストリーミング映像を再生する映像再生部と、当該映像に含まれるイベントの内容を定義するイベント内容定義部と、前記ストリーミング映像における各イベントの開始時間及び終了時間を定義するイベント時間定義部とを備え、ユーザの操作又は自動処理により映像ＩＤと、開始時間及び終了時間と、イベント内容とを含むイベント情報を作成することを特徴とするイベント入力端末に関する。
【００１５】
また本発明は、このイベント入力端末で動作するプログラムであって、前記ストリーミング映像を再生するステップと、ユーザの入力操作があった場合又は前記ストリーミング映像又は音声が所定条件を満たす場合にイベントを認識して予め設定された内容のイベント情報を定義するステップと、これと同時にストリーミング映像におけるイベント発生時を定義してこれらの情報を映像ＩＤとともにＸＭＬ形式のイベント情報として作成するステップと、をコンピュータに実行させることを特徴とするプログラムに関する。
【００１６】
また本発明は、上記の映像閲覧システムに用いられ、前記付加情報を作成するためのコンピュータ端末であって、前記ストリーミング映像を再生及び一時停止する映像表示部と、少なくとも文字・線画・音声のいずれか１以上を入力可能な付加情報入力部とを備え、一時停止されたストリーミング映像画面上に仮想レイヤを作成し、当該仮想レイヤの画面定義情報として前記入力された文字・線画・音声を定義してＸＭＬ形式の付加情報を作成することを特徴とする付加情報入力端末に関する。
【００１７】
また本発明は、この付加情報入力端末で動作するプログラムであって、前記ストリーミング映像を再生するステップと、ユーザからの入力操作があった場合にストリーミング映像を一時停止するステップと、ユーザから文字・線画・音声いずれかの入力情報を取得して前記一時停止した映像画面上に仮想レイヤを作成し、当該仮想レイヤの画面定義情報として前記入力情報を含むＸＭＬ形式の付加情報を作成するステップと、をコンピュータに実行させることを特徴とするプログラムに関する。
【００１８】
さらに本発明は、上記システムに用いるユーザ端末であって、ユーザの所望する映像シーンの検索条件を設定する検索条件設定部と、前記検索処理手段からのシーン情報をリスト表示するシーン情報表示部と、ユーザが選択したシーンのストリーミング映像を再生する映像再生部とを備え、前記検索条件設定部はユーザが直接入力又は選択した検索パラメータ又はその組み合わせを前記検索処理手段に送信し、前記シーン情報表示部は検索結果として表示したいずれかのシーン情報がユーザに選択された場合に当該シーン情報が含む映像ＩＤと、開始時間及び終了時間と、予め取得しているユーザ識別情報及びパスワードとを前記マスタサーバに送信して映像配信要求を行うことを特徴とするユーザ端末に関する。
【００１９】
また本発明は、このユーザ端末で動作するプログラムであって、ユーザに選択可能に提示あるいは直接入力により検索パラメータ又はその組み合わせを取得して前記検索処理手段に送るステップと、前記検索処理手段からのシーン情報を選択可能に表示するステップと、ユーザに選択されたシーン情報に含まれる映像ＩＤと、開始時間及び終了時間と、予め取得しているユーザ識別情報及びパスワードとを前記マスタサーバに送信して映像配信を要求するステップとをコンピュータに実行させることを特徴とするプログラムに関する。
【００２０】
このプログラムがさらに、前記ユーザに選択されたシーン情報が付加情報のアクセスパスを含んでいる場合に当該付加情報を取得してユーザに選択可能に提示するステップと、ユーザによりいずれかの付加情報が選択された場合、映像シーンの再生時に前記付加情報が示す時刻が到来したら前記ストリーミング映像を一時停止させ、前記付加情報に定義された文字・線画・音声等の情報を再生画面上に表示するステップとをコンピュータに実行させることが有効である。
【００２１】
このプログラムがさらに、予め１以上のパラメータ及び所定の処理手順を組み合わせて作成された検索条件ファイルを読み込んで、当該ファイルに定義されたパラメータをユーザに提示しユーザに選択入力あるいは直接入力されたパラメータを用いて検索要求を作成あるいは別の検索条件ファイルを取得するステップをコンピュータに実行させることが有効である。
【発明の効果】
【００２２】
本発明のシステムでは、システムで扱うストリーミング映像を任意のイベント群として把握し、各イベントにイベント内容を付して検索可能とすることにより、ストリーミング映像全体ではなく当該映像に含まれるユーザ所望のシーンを検索・閲覧できるようにしている。情報量が乏しい映像全体の情報からではなく、多数のイベント毎に付された情報から検索可能であるためユーザが所望の映像シーンを検索し易くなる。また、１つのストリーミング映像ファイルから多数の映像シーンを抽出して閲覧・配信可能であるため、多数の映像ファイルを個別に扱う場合に比して処理負担の低減と記憶資源の節約を達成することができる。
【００２３】
また、検索処理手段（検索サーバ）が行う映像シーンの検索を、完全一致又は部分一致検索、検索された２以上のイベントの時間幅が重複又は連続する場合を検索、これらの条件をさらにａｎｄ又はｏｒ検索することにより、後に詳述するように、前述のイベントの枠を越えてユーザが所望するシーンを検索することができる。すなわち本発明でのシーン検索によれば、検索結果として提示されるシーンが１つのイベントの一部のみであったり、２つ以上のイベントをまとめたものであったりする。ユーザはこのようにして希望するシーンを検索・閲覧することができる。
【００２４】
また、検索処理手段がユーザ端末に提示するシーン情報には、この映像シーンと同じ映像ＩＤであって時間幅が重複するイベントすべてのイベント内容を含めることにより、ユーザが検索結果のうちどのシーンを閲覧するかの判断材料が多くなり好適となる。
【００２５】
また、本願システムでは任意の映像に付されたコーチングやデータなどの付加情報（アノテーション情報）が別途存在し、ユーザが映像シーンとともにこの付加情報を取得して享受できるようにしている。これによりユーザがシーン閲覧とともにコーチング情報を得て、競技力の向上を図ることができる。
【００２６】
また、本発明のシステムでは各ストリーミング映像の情報を映像管理テーブルで一元管理し、各映像への案内をマスタサーバが担当するようにしたため、ストリーミング映像をネットワーク上の任意の場所に登録することができ、ストリーミングサーバの負荷分散やシステムの拡張性向上を図ることができる。また、ストリーミングサーバの前段にリレーゲートを設けこれを介してストリーミング配信を行うようにして、映像閲覧のセキュリティを高度に維持しつつ、ユーザの余計な認証の手間を軽減するようにしている。
【００２７】
さらに、本願システムでは映像管理テーブルで各映像の閲覧を許可するユーザ／グループを管理し、映像配信要求の際にユーザ又はグループを確認して映像閲覧の許可／不許可を判断することにより、ストリーミング映像を所望のユーザ／グループにのみ閲覧させることができ、安全性と利便性を向上することができる。
【００２８】
また、各ユーザをユーザＩＤおよびパスワードで管理し、システム利用の際にユーザ認証処理手段が認証を行うことにより、制限されたユーザにシステム利用及び映像閲覧を許可するようにしてセキュリティ性及び利便性を向上することができる。
【００２９】
さらに、ストリーミング映像の元映像をダウンロードサーバに登録して、希望するユーザが所定の手順でダウンロードできるように構成すると、例えば他の研究機関等が画質の良い映像を繰り返し利用したい場合等に便宜となる。
【００３０】
また本発明にかかるイベント入力端末またはそのプログラム（イベントエディタ）はオペレータが映像を見ながらイベント時間及び内容を定義する機能を備え、これによりシステム側で各映像を多数のイベント群として把握することができ、ユーザが希望するシーンを検索・閲覧することが可能となる。
【００３１】
また本発明にかかる付加情報入力端末（アノテーション端末）またはそのプログラムによれば、オペレータが映像を見ながら適宜の瞬間にコーチング等の付加情報（アノテーション情報）を作成することができるため、以降に他のユーザが映像とともにこの付加情報を閲覧・享受することができる。
【００３２】
また本発明にかかるユーザ端末またはそのプログラム（ビューワ）は、ユーザの所望するシーンの検索を補助して上述した検索処理手段に検索要求を行い、返信されるシーン情報（実施例におけるscenebit）を選択可能に提示し、ユーザが選択したシーン情報に定義されたシーンを取得して再生するため、ユーザはこれを用いて自らが希望するシーンを検索して閲覧することができる。
【００３３】
また、このプログラムは検索処理手段からのシーン情報（scenebit）が付加情報（アノテーション情報）を含む場合にユーザに提示し、選択された付加情報を取得してストリーミング再生時に画面上に仮想レイヤとして表示するようにしたため、ユーザは映像閲覧に際しシーンに付されたアノテーション情報を享受することができる。
【００３４】
また、このプログラムが予め用意された検索条件ファイル（実施例におけるsceneQuery）を読み込んで、ここに定義されたパラメータを提示し実行することにより、ユーザが所望シーンを検索する際の労力を軽減することができる。
【発明を実施するための最良の形態】
【００３５】
本発明を実施するための最良の実施形態について図面を参照しながら以下に詳細に説明する。
【００３６】
図１は、本願にかかる映像閲覧システムの全体構成を示すイメージ図である。図に示すように、本発明の映像閲覧システムではマスタサーバ１０、検索サーバ２０、映像ストリーミングサーバ３０、イベントサーバ４０、アノテーションサーバ５０、ダウンロードサーバ６０、ユーザ管理サーバ７０、イベント入力端末８０、アノテーション入力端末９０、クライアント端末１００、ゲートウェイ端末であるリレーゲート１１０がインターネット等の広域ネットワーク１に接続されている。
【００３７】
本発明にかかる映像閲覧システムは、映像ストリーミングサーバ３０に登録されたストリーミング映像を任意のイベント群として把握し、各ユーザ端末８０、９０、１００でユーザが所望するシーンを閲覧可能とするとともに、当該映像シーンに関連づけられたコーチング等の付加情報（本願明細書中、アノテーション情報と称す。）を映像に重ねて出力可能とし、さらに、これらのイベントまたはアノテーション情報をユーザ端末から容易に検索、閲覧できるようにするものである。
【００３８】
各種サーバ１０〜７０は、インターネット１に接続された例えばワークステーションサーバであり、予めインストールされたプログラム制御により動作し、インターネット１を介してウェブサービスを提供する。また、マスタサーバ１０、検索サーバ２０、イベントサーバ４０、アノテーションサーバ５０等はインターネット１上にウェブサイトを公開し入力情報を取得するウェブサーバとしての機能も有している。ここで、図に示す各種サーバは本発明の動作を実現する機能群ごとに設けているが、他の実施例では１のサーバが図１に示す他の１以上のサーバの機能を兼ねてもよい。これに対しイベント入力端末８０、アノテーション入力端末９０、クライアント端末１００は例えばスポーツの指導者や受講者といったユーザや、システム上に映像や後述するイベント情報を登録しようとする者が使用するコンピュータ端末であり、少なくともインターネットサイトを閲覧するウェブブラウザの他、必要に応じて後述する映像ビューワ１０１、イベントエディタ８１、アノテーションエディタ９１等のプログラムが搭載される。実際にはこれらのプログラムはそれぞれ機能モジュールとして１または２つのプログラムにまとめられていてもよい。
【００３９】
各サーバまたは端末の保有する情報や機能、処理手順について以下に個別に説明する。
（１）ユーザ管理サーバ７０
ユーザ管理サーバ７０は、本発明のシステムを利用するユーザ情報を管理するサーバである。このユーザ管理サーバ７０は、各ユーザの情報を管理するとともに、ユーザからアクセスを受けた各サーバからの問い合わせに対して、ユーザ名とパスワードが正しいか否かを返答する。本実施例におけるユーザ管理サーバ７０は少なくとも、ユーザ管理テーブル７１とグループ管理テーブル７２の２つのテーブルを管理している。ユーザ管理テーブル７１の一例を図２に示す。本図に示すように、ユーザ管理テーブル７１はユーザ毎に、ユーザＩＤ；ユーザ名；フルネーム；パスワード；クリエータ；グループリスト；ロールの登録欄を備えている。ユーザＩＤは本システムでユーザ毎に付与される固有のＩＤである。ユーザ名はシステム上で用いるユーザ名であって、本実施例ではユーザのメールアドレスが用いられる。クリエータ欄には当該ユーザをシステムに登録した者のユーザＩＤが登録される。グループリストは当該ユーザが所属するグループのＩＤリストであり、ユーザは必ず１以上のグループに属するものとする。ロールは本システムにおけるユーザごとの権限を示しており、本実施例ではスーパーユーザ／マネージャ／一般ユーザのいずれかが登録される。スーパーユーザとはシステム管理者に該当し、管理テーブル７１，７２の全権を有する。すなわち、新しいグループを作成したり、作成したグループのマネージャを設定したり、ユーザの所属グループを変更したりすることができる。マネージャはグループ毎に１以上設定され、当該グループに属するユーザを作成したり、削除したり、更新したりすることができる。一般ユーザは自己のユーザ名、フルネーム、パスワードの変更のみ許される。この他、ゲストユーザの概念を導入してもよく、この場合は例えば特別なユーザ／グループＩＤ（例えば”１”）が割り当てられる。これらの権限は予めユーザ管理サーバ７０に登録されている。
【００４０】
図３にグループ管理テーブル７２の一例を示す。本図に示すように、グループ管理テーブル７２は、グループＩＤ；グループ名；マネージャリストの欄を備えている。グループＩＤは各グループに付与される固有のＩＤであり、グループ名は当該グループを表す任意の名前、マネージャリストは当該グループに設定されたマネージャのＩＤリストである。ユーザ管理サーバ７０はウェブページとして作成されたログイン画面その他各種の登録／変更画面ファイルを備えており、ユーザからのアクセスを受けて認証した後、各ユーザに許可された権限の範囲内で情報の登録および変更を行う。
【００４１】
具体的に説明すると、任意のユーザ端末からアクセス要求を受けると、ユーザ管理サーバ７０は予め用意されたログイン画面をユーザ端末に送信する。この画面にはユーザ名（メールアドレス）とパスワードの入力欄が設けられており、ユーザがこれらを入力してユーザ管理サーバ７０に送信すると、ユーザ管理サーバ７０はユーザ管理テーブル７１を参照し、登録されているユーザ名とパスワードが、今回受信したユーザ名とパスワードと合致するかを判断する。この認証が成功したら、サーバ７０はロール欄を参照してこのユーザの権限を確認し、権限に応じた登録／変更画面をユーザ端末に提示する。各ユーザの権限は上述のように予め定められており、各ユーザはこの権限の範囲内で管理テーブル７１，７２の情報の登録／変更／削除について入力しサーバ７０に送信すると、サーバ７０は要求に従いテーブル７１または７２の情報を更新する。本実施例ではグループの概念を採用しており、これにより例えば特定のスポーツ団体の構成員や大学の生徒を１つのグループとして、マネージャ権限を付与されたユーザが当該グループに属する人間全員にシステムを利用可能とする等の運用が可能である。また、ユーザ管理サーバ７０は、他のサーバから問い合わせを受けた場合に、問い合わせに含まれるユーザ名とパスワードから当該ユーザの認証を行い、その成否および当該ユーザのユーザＩＤ、所属グループ等を問い合わせ元サーバに返信する。ここで設定されているユーザＩＤ、グループＩＤ等の情報は、本システムの利用可否の他、各映像ファイルの閲覧を個別に許可／不許可とするのに用いられる。
【００４２】
（２）マスタサーバ１０
マスタサーバ１０は、本発明に係る映像閲覧システムの中核をなすサーバコンピュータであり、映像管理テーブル１１と、アクセスログテーブル１３と、不正アクセスログテーブル１４とを備えている。このマスタサーバ１０はプログラムで動作することにより、システムに登録される映像ファイル毎にその詳細情報を管理し、ユーザ端末から要求があった場合にその認証およびストリーミング映像への案内を行い、さらにユーザ端末からのアクセスログを管理する。
【００４３】
マスタサーバ１０が管理する映像管理テーブル１１の一例を図４に示す。本図に示すように、映像管理テーブル１１には、システムに登録される映像ファイル毎に、映像ＩＤ；リレーゲートアドレス；ストリーミング映像のＵＲＬ；映像type；ＤＬ（ダウンロード）元映像アドレス；ＤＬサーバアドレス；映像title；date（作成日）；description（内容）；place（作成場所）；owner；AuthWriteUser；AuthReadUser；AuthWriteGroup；AuthReadGroup；AuthDLUser；AuthDLGroup；アクセス可否フラグ、等の情報が登録される。これら要素の内容は以下の通りである。
【００４４】
「映像ＩＤ」：登録される映像毎に付与される固有のＩＤであり、本願システムの映像はすべてこの映像ＩＤを以て管理される。
「リレーゲートアドレス」：この映像が登録されたストリーミングサーバ３０からユーザ端末へストリーミング送信を中継するリレーゲート３５のアドレスである。後に詳細に説明するが、本実施例では各ストリーミングサーバに統一した認証方法を提供するとともに不用意にユーザにストリーミングファイルをダウンロードされるのを回避すべく、リレーゲート３５を介在させてユーザ端末から直接ストリーミングサーバ３０の映像ファイルへアクセスするのを防止している。
「ストリーミング映像のＵＲＬ」：この映像が実際に登録されているストリーミングサーバ３０の映像アドレスである。
「ＤＬ元映像アドレス」：ストリーミング映像の元となるオリジナル映像へアクセスするためのアドレスである。
「ＤＬサーバアドレス」：ダウンロードを管理するサーバのアドレスである。
「type」：この映像の形式である。例えば映像はウィンドウズメディア（wm9）、リアルプレイヤー（real）、クイックタイム（qts）の形式（いずれも商標名）で用意される。ただし、本発明のシステムで扱う映像はこれらに限定されるものではない。
「date」：この映像が作成された日付が登録される。
「description」：映像の内容を簡単に記述したものである。
「place」：この映像を作成した場所が登録される。
「owner」：この映像を登録した者のＩＤが登録される。
「AuthReadUser」：この映像の閲覧を許可するユーザＩＤのリストが登録される。
「AuthReadGroup」：この映像の閲覧を許可するグループＩＤのリストが登録される。
「AuthWriteUser」：この映像に対して後述するイベント情報またはアノテーション情報を登録できるユーザＩＤのリストである。
「AuthWriteGroup」：この映像に対してイベント情報またはアノテーション情報を登録できるグループＩＤのリストである。
「AuthDLUser」：この映像のダウンロードを許可するユーザＩＤのリストである。
「AuthDLGroup」：この映像のダウンロードを許可するグループＩＤのリストである。
「アクセス可否フラグ」：この映像へのアクセス全般の許可／不許可を示すフラグであり、フラグがfalseになるとこの映像が消去されたものとして扱われる。
【００４５】
上記のうちdate, description, place等は必ずしも必須の要素ではない。また、本実施例では映像のストリーミング閲覧の他、ユーザの必要に応じて映像をダウンロードできるようにするため上記のダウンロード関連情報を管理するが、ダウンロード機能が不要であれば上記のうちDL元映像アドレス；ＤＬサーバアドレス；AuthDLUser；AuthDLGroup等は不要となる。
【００４６】
アクセスログ１３には、各端末８０〜１００からのアクセスを受けた場合にそのアクセス元および処理内容等が登録される。これはシステムの管理者が利用状況を管理したり各映像のアクセスランキングを作成したりするのに用いられる。また、マスタサーバ１０は後述するように、ユーザ端末をストリーミング映像に案内する際にユーザ端末の情報をログに記録しておき、その後にリレーゲート１１０からの問い合わせの際に照合して、ストリーミング映像のセキュリティ性を向上させている。不正アクセスログ１４は、マスタサーバ１０への不正アクセスがあった場合にアクセス元やその内容が登録されるテーブルであり、必要に応じて記録された不正アクセス元からの今後のアクセスを禁止する等の目的で用いることができる。
【００４７】
マスタサーバ１０の主となる機能は、各映像の情報の管理と、クライアント端末１００等からの要求に対するストリーミング映像への案内である。以下に、映像情報の登録について説明する。システムに映像を登録したい者は、まず自己の保有する映像のストリーミングファイルを作成し、任意の映像ストリーミングサーバ３０に登録する。この場合、映像ストリーミングサーバ３０は映像のオーナー（映像を登録する者）が任意に決めてもよく、また本願システムで用意されたストリーミングサーバを用いてもよい。映像オーナーが決める場合、例えば自己が利用しているインターネットプロバイダが提供しているストリーミングサーバを用いたり、映像オーナー自身や任意の会社で構築・運営しているサーバを用いたりすることができる。映像をストリーミングデータで扱うのは、映像閲覧に際しクライアント端末に映像ファイルを格納するディスクスペースを必要とせず、クライアント端末にファイルが残らないので著作権等の管理が容易であり、またＲＴＳＰプロトコル等でクライアント側から映像配信に関する命令を送ることができる等の理由である。本実施例において、映像オーナーはオリジナルの映像データ（例えばAVI, mpeg形式が想定される）をストリーミング形式（例えばwm9, real, qts形式）に変換し、これをストリーミングサーバ３０に登録するとともに、必要に応じてオリジナル映像データをダウンロードサーバ６０に登録する。この場合のダウンロードサーバも、ストリーミングサーバと同じく映像オーナーが任意のサーバを用いることができる。この時点で映像オーナーは自己が登録したストリーミング映像およびオリジナル映像へのアクセスパスの情報を有しているものとする。その後、映像オーナーはアップロードした映像の情報を、ウェブサイトを介してマスタサーバ１０に登録する。なお、映像オーナーがオリジナル映像を他人にダウンロードさせることを希望しない場合は、オリジナル映像はサーバ６０に登録する必要はない。
【００４８】
マスタサーバ１０にはウェブページとしてログイン画面の他、図４で説明した各種情報の入力画面が用意されており、映像オーナーが自己のＰＣ端末からマスタサーバ１０にアクセスすると、認証処理を経てから入力画面が表示される。この認証処理では、ユーザによりログイン画面に入力されたユーザ名（メールアドレス）およびパスワードをマスタサーバ１０が受信すると、マスタサーバ１０は即座に受信したユーザ名とパスワードをユーザ管理サーバ７０に転送する。これを受けたユーザ管理サーバ７０はユーザ管理テーブル７１を参照し、ユーザ名をキーにパスワードが合致するかを判定し、その結果をマスタサーバ１０に返信する。これらの通信はいずれも高度なセキュリティ性を有するＳＳＬ通信を用いて行うようにする。このようにしてユーザ認証が成功したら、マスタサーバ１０は各種情報の入力画面をユーザ端末に提示する。この画面上で映像オーナーは、ストリーミングファイルのＵＲＬと、typeと、（もしあれば）ＤＬ元映像アドレスおよびＤＬサーバアドレスと、映像tytleと、作成日と、内容と、作成場所等を入力する。また、このストリーミング映像の閲覧を許可するユーザ／グループ名と、この映像に後述するイベント／アノテーション情報の付加を許可するユーザ／グループ名と、この映像のダウンロードを許可するユーザ／グループ名とを入力する。これらのユーザ／グループ名は直接入力する構成であってもよいし、予めマスタサーバ１０がユーザ管理サーバ７０からユーザ／グループ名のリストを取得してユーザに提示し、ユーザがリスト内から選択指定できるような構成であってもよい。また、閲覧可能ユーザ等を定めるのに際し、ユーザ端末からユーザ管理サーバ７０にユーザ名からその所属グループ等を問い合わせできるように構成されていてもよい。映像オーナーはこれらの情報を入力して、送信ボタン押下等の手段によりマスタサーバ１０に入力情報を送信する。
【００４９】
情報入力画面への入力情報がマスタサーバ１０へ送信されると、マスタサーバ１０は、これらの情報を検査した後、図４に示す映像管理テーブル７１に必要な情報を登録する。この際、マスタサーバ１０は映像毎に一意の映像ＩＤを付与するとともに、この映像のストリーミングをサービスするリレーゲート１１０を任意に設定し、それぞれ映像管理テーブルの映像ＩＤ；リレーゲートアドレス欄に登録する。また、テーブル７１のowner欄にはログイン手続で得たユーザ名または認証手続きでユーザ管理サーバ７０から得たＩＤを登録する。このようにしてマスタサーバ１０が映像情報を登録した後、この映像に付与した映像ＩＤを映像オーナーのユーザ端末に提示する。
【００５０】
これと同時に、マスタサーバ１０は映像管理テーブル１１の登録情報のうちtitleとdescriptionの内容を検索サーバ２０に送信する。検索サーバ２０については後に詳細に説明するが、この説明はname/valueの形式をとっており、これらが映像全体を示すイベント情報として検索サーバ２０に登録される。
【００５１】
次に、マスタサーバ１０によるストリーミング映像への案内処理について説明する。マスタサーバ１０はユーザ端末（図１においてクライアント端末１００の他、イベント入力端末８０やアノテーション入力端末９０を含む）から映像ＩＤを特定した映像リクエストを受けると、このリクエスト情報に含まれるユーザ名とパスワードをユーザ管理サーバ７０に転送して認証をとるとともに、当該ユーザのユーザＩＤおよびグループＩＤを問い合わせる。次に、マスタサーバ１０はリクエストで指定された映像ＩＤをキーとして自身で管理する映像管理テーブル１１を参照し、該当するレコードの"AuthReadUser"、"AuthReadGroup"を抽出し、ここで閲覧が許可されているユーザ／グループにリクエスト元ユーザが含まれるか否かを判定する。ここで当該ユーザに閲覧が許可されている場合、マスタサーバ１０はユニークなキー（文字列）を作成し、映像ＩＤ、ユーザ名、ユーザ端末のＩＰアドレス、キー作成時の情報をアクセスログ１３に保存する。また、このキーと、映像管理テーブル１１に登録されている当該映像のリレーゲートアドレスとを含むURL_Keyを作成し、リクエスト元のユーザ端末に返信する。このURL_Keyは適切な方法で暗号化して送信され、これによってユーザの要求する映像を扱うリレーゲートアドレスがユーザ端末に返信される。
【００５２】
後に詳細に説明するが、URL_Keyに基づきユーザ端末が指定されたリレーゲート１１０にアクセスすると、リレーゲート１１０からマスタサーバ１０に問い合わせが発信される。この問い合わせには、映像ＩＤ、ユーザ名、ユーザ端末のＩＰアドレスが含まれている。マスタサーバ１０は問い合わせを受けると、先ほど登録したアクセスログ１３を参照してユーザ名とＩＰアドレスを照合し、また先ほどのキー作成時から所定期間内（例えば数秒以内）であるかを判定する。ユーザ名とＩＰアドレスが一致し且つ所定期間内である場合、マスタサーバ１０は映像管理テーブル１１を参照し、映像ＩＤをキーにこの映像が実際に保存されているＵＲＬを抽出し、リレーゲート１１０に返信する。また、アクセスログ１３に一度アクセスがあったことを記録する。これによりリレーゲート１１０がストリーミング映像を中継し、ユーザ端末でストリーミング映像を閲覧することが可能となる。なお、リレーゲート１１０を介してストリーミング配信を行うことにより、２度の認証を行って映像閲覧許可のセキュリティを確実に保つことができ、またストリーミング映像の保管場所が直接ユーザ端末に分からないようにしてストリーミング映像の不正ダウンロードを防止することができる。さらに、この方法によればストリーミングサーバの仕様に拘わらずユーザに対する認証処理を統一した方法で実施することが可能になるため、例えば映像オーナーがストリーミングサーバを任意に定めた場合であってもユーザはマスタサーバ１０に対する認証が成功すれば映像を閲覧することが可能となる。なお、マスタサーバ１０はURL_Keyを作成してから所定期間経過後は不正アクセスとみなしてストリーミング映像の閲覧を許可しないようにする。
【００５３】
（３）イベント入力端末８０
イベント入力端末８０は、システムに登録されたストリーミング映像について、任意のイベントの時間情報とその内容を表すデータ（本願書類中、「イベント情報」と称す。）をシステムに登録するためのコンピュータ端末であり、イベント情報を作成するためのプログラム（本願書類中、「イベントエディタ」と称す。）８１を備えている。このイベントエディタ８１は、少なくともストリーミング映像の再生機能を備えており、その他にプログラムモジュールとしてのイベント時間定義部と、イベント内容定義部とを備えている。イベントエディタ８１の画面例を図５に示す。本図に示すように、イベントエディタ８１の画面にはストリーミング再生部８１ａと、イベント内容定義部８２と、イベント時間定義部８３とが設けられている。ストリーミング再生部８１ａはストリーミング映像の再生、停止、早送り、巻き戻し、コマ送り等の機能を備えるプログラムモジュールであり、公知のストリーミングプログラムをモジュールとして取り込むことにより実現される。
【００５４】
イベント情報は許可されたユーザであれば登録することができるが、最初はストリーミング映像の登録者が自身でイベント情報を登録することが想定される。イベント情報を作成するには、まず作成対象となるストリーミング映像をイベントエディタ８１で再生する必要がある。イベントエディタ８１には初期設定時にユーザ（この場合は映像オーナー）のユーザ名およびパスワードが登録されるものとする。映像オーナーはストリーミング映像の登録時に付与された映像ＩＤをイベントエディタ８１で指定してリクエストを実行すると、イベントエディタ８１から映像ＩＤ、ユーザ名、パスワード、ユーザ端末のＩＰアドレス等を含むリクエストがマスタサーバ１０に送信される。これによってマスタサーバ１０が上述の処理を行い、リレーゲートアドレスを含むURL_Keyを返信する。イベントエディタ８１は即時にURL_Keyに含まれるＵＲＬを用いてリレーゲート１１０へ再接続し、リレーゲート１１０を介してストリーミング映像をイベントエディタ８１で閲覧することができる。ここまでの処理は後述するクライアント端末１００で動作するビューワ１０１と同様である。
【００５５】
イベントエディタ８１において、イベント内容定義部８２はイベント内容を定義する機能を有し、本実施例ではボタン形式として表示される。本実施例においてイベント内容は（name, value）という形式を採用しており、「何々は、何々である」という形で登録される。この形式によると定義がシンプルとなり、データベースへの登録や検索に好適である。一例としては、ユーザがメニューリスト（図示せず）からイベントボタンの作成を指示すると、nameとvalueの入力欄のあるウィンドウが表示され、ここに入力したvalueの値を持つボタンが新規に作成される。具体的には（name：技名，value：背負い投げ）という値を入力すると、「背負い投げ」ボタンが作成される。これが図５で「イベント１」「イベント２」として図示するイベントボタン８５である。イベントボタンは複数あってもよく、設定されるイベント内容はストリーミング映像にかかるスポーツで共通性を持つ定義となることが望ましいが、イベント情報は検索のために付する情報であり、必要以上にその内容を細かくする必要はない。具体的に柔道の試合を想定すると、大外刈りのシーンをイベント登録する場合には（name：技名，value：大外刈り）となり、審判が判定を出したときのシーンを登録する場合には（name：審判，value：判定）となる。
【００５６】
イベント時間定義部８３は、ストリーミング映像における各イベントの開始時間（ts）と終了時間（te）を取得するモジュールである。本実施例のイベントエディタ８１では、ストリーミング映像が流れている状態で任意のイベントボタンがクリックされると、ストリーミング映像における前後の所定期間をそのイベント期間として把握し、その開始時と終了時を取得する。具体的には、映像が流れている状態においてイベント（技名，背負い投げ）ボタンをクリックすると、イベントエディタ８１はその時点でのストリーミング映像の現在時刻を取得し、ここから５秒引いた時刻を開始時間（ts）とし、その時点から５秒足した時刻を終了時間（te）とする。このようにしてイベント内容と開始／終了時とが設定された各イベントは、図５において個々のイベント表示バー８４として表示される。図５に示すように、イベント時間定義部８３において各イベント内容が行ごとに表示され、その横に映像再生時刻に対応する列が設けられており、各イベント作成時にそれぞれイベント表示バー８４が作成される。本図に示されるように、例えば１つの柔道の試合でも技有りや有効など審判の判定が複数回出るように、１つの映像において同じイベントが複数回発生することもあり、これらはそれぞれ同じイベント内容で当該映像における開始時と終了時が異なる別個のイベントとして把握される。この実施例によれば、例えば映像を見ながら背負い投げが始まったと思ったらユーザが「背負い投げ」ボタンを１回押すことにより、この背負い投げが始まる数秒前から１０秒間のシーンを１イベントとして定義することができる。
【００５７】
なお、イベントの開始／終了時刻の取得方法は上記の他に様々な方法が考えられ、そのいずれを採用しても構わない。上記具体例ではボタン押下時の５秒前と５秒後をイベント開始時／終了時としているが、この秒数はイベントボタン８５の作成時にパラメータとしてユーザ側で設定可能とする。また、映像再生時にイベントボタンを１回クリックするとその時点をイベント開始時（ts）と把握し、再度クリックするとイベント終了時（te）と把握するように設定してもよい。また、図５に示す実施例ではイベント時間定義部８３に各イベントを時間軸に対応させて視覚的に表示するとともに、この画面上でイベント表示バー８４の左右いずれかの端部をマウスで左右にドラッグすることによりイベント開始時刻または終了時刻を変更できるように構成している。また、任意のイベント表示バー８４を指定してメニューバー等で編集コマンドを指示すると編集画面が表示され、この画面上で開始時刻や終了時刻を変更できるようにしてもよい。あるいは、任意のイベント表示バー８４を選択反転させると画面上にその開始／終了時刻が表示され、ここにユーザが数値を入力して修正できるようにしてもよい。
【００５８】
このようにして１つの映像につき複数のイベント情報を作成することができる。ユーザが一通りイベントを作成し転送ファイル作成コマンドを実行指定すると、イベントエディタ８１は各イベント情報を１つのＸＭＬファイルにまとめ、イベント入力端末８０のローカルファイルに保存する。ＸＭＬはＨＴＭＬの後継言語として設計されたもので、拡張性に富み、柔軟にデータ構造に対応した表現が作れるので好適である。なお、イベントエディタ８１には初期設定時に利用者のユーザ名が登録されており、作成されるＸＭＬファイルにはイベント作成者の情報が含められる。
【００５９】
（４）イベントサーバ４０
イベントサーバ４０は、イベント入力端末８０で作成されたイベント情報を検査し、検索サーバ２０に登録するウェブサーバであり、プログラムにより動作する。このサーバは単体であっても複数あってもよく、また検索サーバ２０がイベントサーバ４０を兼ねてもよい。イベントサーバ４０はウェブページとしてのログイン画面と、イベント情報のアップロード画面等を備えており、イベント入力端末８０からのアクセスを受けるとログイン画面を提示し、ユーザの認証を行う。この認証も前述と同様に、ログイン画面にてユーザ名とパスワードをＳＳＬ通信で取得して、ユーザ管理サーバ７０に転送して認証をとるとともに、当該ユーザのユーザＩＤ・グループＩＤを問い合わせる。認証が成功するとアップロード画面を提示して、イベント情報のアップロードを受け付ける。イベント情報（ＸＭＬ形式）を受信したら、イベントサーバ７０は自己の記憶領域内に保存してイベント情報を解析し、データを検査するとともに、このユーザがストリーミング映像にイベント情報を登録できるユーザか否かをマスタサーバ１０に問い合わせる。すなわち、認証処理の過程で得られた当該ユーザのユーザＩＤ・グループＩＤと、イベント情報に含まれている映像ＩＤをマスタサーバ１０に送信し、返事を待つ。マスタサーバ１０は映像ＩＤをキーにこの映像にイベント情報を付加できる者、すなわち"AuthWriteUser"、"AuthWriteGroup"の欄を参照し、ここにユーザのＩＤが登録されているかを判断し、その結果をイベントサーバ７０に返答する。ユーザがイベント情報を登録できる者である場合、イベントサーバ７０はイベント情報を検索サーバ２０に送信して検索データベースへの登録を指示する。また、イベントサーバ７０は受信したイベント情報をログ保存し、後にイベント情報の統計等に利用できるようにする。
【００６０】
（５）アノテーション入力端末９０
アノテーション入力端末９０は、ストリーミング映像の任意の時点において指導者のコーチングや競技データ等の有用な情報を付加するためのユーザのコンピュータ端末であり、アノテーションエディタ９１が搭載されている。アノテーションエディタ９１はこれ自身で独立したプログラムであってもよいが、後述するビューワ１０１等のプログラムと一体的に１つのユーザプログラムをなすモジュールとして構成されていてもよい。アノテーションエディタ９１の画面例を図６に示す。本図に示すように、アノテーションエディタ９１はストリーミング再生部９２と、アノテーション入力部９３とを備えている。ストリーミング再生部９２はイベントエディタ８１におけるストリーミング再生部８１ａと同様に、ストリーミング映像を再生、停止、早送り、巻き戻し、コマ送り等の機能を備えるプログラムモジュールであり、公知のストリーミングプログラムをモジュールとして取り込むことにより実現される。
【００６１】
アノテーション情報を作成するには、まず作成対象となるストリーミング映像をアノテーションエディタ９１で再生する。ストリーミング映像は上述のイベントエディタ８１と同様の方法で取り寄せることができ、ストリーミング再生画面にて再生される。そして、アノテーション作成ユーザがストリーミング映像のアノテーションを付けたい時点で「Edit」ボタン９６を押下すると、エディタ９１がこれを検知してストリーミング映像を一時停止させるとともに、ストリーミング映像の停止画面上に透明な仮想レイヤを作成する。アノテーションはこの仮想レイヤの画面情報として記述あるいは定義されることになる。
【００６２】
アノテーション入力部９３は、少なくとも簡単な線図を描ける作画ツール群９３ａと、テキストや音声の他に有用な情報やコマンドを挿入できるその他ツール群９３ｂとを備えている。図６に示すように、作画ツール群９３ａは直線、矢印、曲線、円、四角、ふき出し等のボタンを備えており、ユーザが任意のボタンを押下して映像画面上でマウス操作することにより仮想レイヤ上に線図を作画することができる。この処理は公知の作画ソフトの機能を用いることにより実現される。また、その他ツール群９３ｂのテキスト入力ボタン９４ａを押下してから画面上の任意の箇所をクリックするとそこにテキスト入力欄が表示され、アノテーション入力端末９０のキーボード等から文字を入力することができる。作画ペンの色や太さ、テキスト文字のフォントや色等も設定可能である。また、音声入力ボタン９４ｂを押下して画面上の任意の箇所をクリックするとそこにスピーカのマークが表示され、さらにこれをクリックすると録音ボタンや停止ボタンを備える録音画面が表示され、これを操作することによりアノテーション入力端末９０に接続されたマイク（図示せず）により音声を録音することができる。また、ＵＲＬ入力ボタン９４ｃを押下して画面上をクリックするとそこにＵＲＬを挿入することができる。また、他のボタンでは画面上に他から持ってきた図面や動画ファイルを貼り付けられるようにしてもよい。
【００６３】
アノテーションエディタ９１は入力されたコマンドおよびパラメータを取得し、映像画面上に作成した仮想レイヤを１つのＸＭＬ画面としてこれらの情報を定義していく。この場合、音声データや別途貼付されたファイルは当該ＸＭＬ画面にリンクされた別ファイルとして保存する。例えば図６に示す画面例では、柔道の試合映像において一方の選手を円で囲むとともに矢印を付けてテキスト「手の動きに注目」と表示し、さらに音声ボタンを設けて例えば「ここで引き手をとって相手をコントロールしている」等の音声が登録される。アノテーション入力ユーザが一通りアノテーションの入力を終了してＯＫボタン９５をクリックすると、アノテーションエディタ９１はアノテーション入力端末９０のローカルフォルダにＸＭＬ形式のアノテーション情報と、必要に応じて音声ファイル等の添付ファイルを保存する。ここで作成されるＸＭＬデータには、予めエディタ９１に登録されているアノテーション作成者のユーザ名と、対象となるストリーミング映像の映像ＩＤと、当該映像におけるアノテーション挿入時が含められる。本実施例の場合はストリーミング映像を一時停止させてアノテーション情報を付すためこの時刻は任意の瞬間であってもよいが、実際の映像では１つの動きでも時間幅があるため、アノテーションの時刻もある程度の時間幅を設けてその開始時と終了時が設定される。より具体的には、アノテーションエディタ９１はeditボタン９６が押下された映像時刻を取得し、この時刻の数秒前（例えば２秒前）を開始時間（ts）とするとともに、この時刻の数秒後（例えば２秒後）を終了時間（te）に設定する。このようにアノテーション情報にも時間幅を持たせることにより、後述する検索処理でのヒット率を高めてより適切な情報提供を行うことができる。なお、１つの映像においてアノテーションは時間差を設けて複数作成されてもよく、この場合は各アノテーションの時間（ts, te）とその内容とを含む複数のアノテーション情報が１つのＸＭＬファイルにまとめて登録される。このようにして作成されたアノテーション情報は、以下の手続によりウェブサイトを介してアノテーションサーバ５０に登録される。
【００６４】
（６）アノテーションサーバ５０
アノテーションサーバ５０は、アノテーション入力端末９０で作成されたアノテーション情報を登録するウェブサーバであり、プログラムにより動作する。このサーバは単体であっても複数あってもよく、また他のサーバがアノテーションサーバ５０を兼ねてもよい。アノテーションサーバ５０はウェブページとしてのログイン画面と、アノテーション情報のアップロード画面等を備えており、アノテーション入力端末５０からのアクセスを受けるとログイン画面を提示し、ユーザの認証を行う。この認証も前述のマスタサーバ１０やイベントサーバ４０と同様に、ログイン画面にてユーザのメールアドレスとパスワードをＳＳＬ通信で取得して、ユーザ管理サーバ７０に転送するとともにユーザＩＤと所属グループＩＤを問い合わせる。この返信により認証が成功するとアノテーション入力端末９０にアップロード画面を提示して、アノテーション情報のアップロードを受け付ける。アノテーション情報（ＸＭＬファイル及び必要に応じて音声ファイル等）を受信したら、アノテーションサーバ９０は受信ファイルのウィルスチェック等を検査するとともに、ユーザＩＤとＸＭＬファイルに含まれる映像ＩＤをマスタサーバ１０に送り、このユーザがこのストリーミング映像にアノテーション情報を登録できるユーザか否かを問い合わせる。マスタサーバ１０は映像ＩＤをキーにこの映像にイベント／アノテーション情報を付加できる者、すなわち"AuthWriteUser"、"AuthWriteGroup"の欄を参照し、ここにユーザ／グループＩＤが登録されているかを判断し、その結果をアノテーションサーバ５０に返答する。
【００６５】
アノテーションサーバ５０は、ユーザが映像にアノテーションを登録可能なユーザである場合、受信したアノテーション情報をインターネットアクセス可能な状態で自サーバの記憶領域に登録する。このとき、アノテーションＸＭＬファイルが複数のアノテーションを含んでいる場合、アノテーションサーバ５０はＸＭＬファイルを個々のアノテーション情報に分解して自サーバ内に登録する。各アノテーションは映像ＩＤ，時間（ts, te），内容を備えるＸＭＬファイルとしてサーバ５０に蓄積される。また、アノテーション情報が音声ファイル等の添付ファイルを含む場合、アノテーションサーバ５０は添付ファイルも保存するとともにアノテーションＸＭＬファイルにそのアクセスパス（ＵＲＬ）をリンクさせて保存する。これと同時に、アノテーションサーバ５０は検索用の情報を抽出して検索サーバ２０に送信する。この情報には、アノテーション情報である旨と；このアノテーション情報へのアクセス用アドレス（アノテーションサーバ５０上のＵＲＬ）と；このアノテーション情報が対象とする映像ＩＤと；映像におけるアノテーション情報の開始時間（ts）と；終了時間（te）と；ユーザ名またはユーザＩＤと；アノテーション情報にテキスト文書が含まれる場合は当該テキスト情報と；が含まれる。
【００６６】
（６）検索サーバ２０
検索サーバ２０は、インターネット上で検索サービスを提供するサーバコンピュータであり、プログラムにより動作し、マスタサーバ１０、イベントサーバ４０、アノテーションサーバ５０から検索情報を受け付けて検索テーブルに登録するとともに、後述する処理によりユーザの所望のシーンまたはアノテーションを検索するものである。図７は、検索サーバ２０が備える検索テーブル２１の構成を示す図である。本図に示すように、検索テーブル２１は、name；value；映像ＩＤ；ts（開始時間）；te（終了時間）；ユーザＩＤの欄を備えている。検索サーバ２０は、マスタサーバ１０やイベントサーバ４０からイベント情報を受け取り、そこに含まれるイベント情報を分解して検索テーブル２１に個別に登録する。ここでユーザＩＤはイベント情報やアノテーション情報を作成したユーザのＩＤが登録される。図７の例で示すように、本実施例では、映像終了まで続くイベント情報のte（終了時）は99:99:99として扱っている。
【００６７】
なお、最初に映像オーナーがマスタサーバ１０に映像情報を登録した際、マスタサーバは図４に示す映像管理テーブル１１の登録情報のうち、titleとdescriptionの内容を抽出して、映像ＩＤとともに検索サーバ２０に送信する。検索サーバ２０はこれを受け取ると、nameが title（またはdescription）で、valueがその内容、開始時間ts: 00:00:00、終了時間te: 99:99:99のレコードを検索テーブル２１に登録する。これにより映像全体についての内容が検索テーブルに登録される。
【００６８】
一方、図７のテーブル下側に示すように、検索サーバ２０は、アノテーションサーバ５０からアノテーション検索情報を受け取った場合、name欄にはアノテーション情報である旨「annotation」、value欄にはアノテーション情報のＵＲＬを入れてレコードを１つ作成する。また、当該アノテーション情報がテキスト内容を含む場合、テキストごとにレコードを別途作成し、nameにはアノテーションテキストである旨「annotation_text」、value欄には当該テキストの内容を登録する。このようにして、アノテーションがテキスト情報を含む場合は映像ＩＤ、ts、teが同一のレコードが２つ以上作成される。このようにして、検索サーバ２０の検索テーブル２１にはイベントとアノテーションの検索情報が多数登録されることになる。検索テーブル２１において各レコードはＩＤ等で管理される必要はなく、また順番に並んでいる必要もない。
【００６９】
検索サーバ２０は、ユーザ端末からパラメータとコマンドを組み合わせた検索文字列を受信し、これに従って検索テーブル２１への検索を行い、後述するscenebitを作成してユーザ端末に返信する。この検索処理はウェブサービスで行われる。以下、具体的に検索サーバ２０の検索処理について説明する。
【００７０】
図８は、図７に示す検索テーブル２１の登録情報を視覚的に示したイメージ図である。上述のように、１つのストリーミング映像２００を対象として複数のイベント情報が登録されている。本図にはストリーミング映像１つ分のみを示すが、実際にはシステムに登録される各ストリーミング映像についてこのようなイベント情報が多数登録される。検索テーブル２１において各イベント情報は（ts, te, name, value, user）の値を持っており、ストリーミング映像２００の時間軸に対して図８のような配置で存在している。図８では、nameとvalueが同じイベントをそれぞれ同じ列に配置し同じイベント名（イベント１〜３）で表示している。また、本図にはアノテーション情報も同様に示されており、同じ人物が作成したアノテーションを同じ列にしてアノテーション１，アノテーション２のように示している。同じ映像に対して複数の人間がアノテーションを作成する場合もあり、これらが同時に示されている。
【００７１】
検索サーバ２０は、基本的にexact； match； anytext； sequence； includeといったコマンドをand、or、または括弧で組み合わせた検索文をユーザ端末から受け取り、これに従って検索テーブル２１の検索を行う。ここで、「exact」はイベントのnameおよびvalueの値が完全一致するもの、「match」はnameが一致しvalueが部分一致するもの、「anytext」はnameに拘わらずvalueが部分一致するものを検索するコマンドである。これらのコマンドにより検索テーブル２１に登録されているイベントそのものを検索することができる。
【００７２】
「sequence」および「include」は前段で行われた検索集合または括弧で括られた検索コマンドの結果に対して実行されるコマンドであり、「sequence」は同じ映像においてあるイベントに連続して次のイベントが発生した場合を検索し、「include」は同じ映像においてあるイベントの時間内に含まれるイベントを検索する。「sequence」コマンドでは後のイベントの開始時間が先のイベント開始時間より後であってその終了時間の所定期間内（例えば５秒以内）であり、且つ後のイベントの終了時間が先のイベントより後である場合を検索し、先のイベントの開始時間と後のイベントの終了時間をこのシーンの（ts, te）として出力する。「include」はあるイベントの開始時間と終了時間が他のイベントの開始時間−終了時間にそっくり含まれる場合を検索し、短い方のイベント時間をこのシーンの（ts, te）として出力する。
【００７３】
上述の処理を図８のイメージに当てはめて説明する。図９はexact、match、anytextコマンドによる検索を示すイメージ図である。例えばイベント３の（name, value）に該当する情報を指定してこれらいずれかのコマンドを実行したとする。検索サーバ２０は検索テーブル２１を参照し、（name, value）が完全一致または部分一致（コマンドにより変化する）するレコードを検索する。その結果、図９（ａ）に示すストリーミング映像２００においてイベント３に対応した３つのシーンＳＣ１〜ＳＣ３がヒットする。各シーンＳＣ１〜ＳＣ３は当該映像２００において飛び飛びに発生している。検索条件がこれ以外にない場合、検索サーバ２０は３つの検索結果情報を作成する。この検索結果情報を、本願書類において便宜上「scenebit」と称す。scenebitもＸＭＬファイルとして作成される。
【００７４】
図９（ｂ）を用いてscenebitの内容を説明する。まず図９（ａ）に示すシーンＳＣ１に関するscenebitＳＣ１には、ストリーミング映像２００の映像ＩＤ；ＳＣ１の開始時間（ts1）；ＳＣ１の終了時間（te1）が基本情報として含められる。次に、検索サーバ２０はこの基本情報（映像ＩＤ，ts，te）をキーとして再び検索テーブル２１を参照し、映像ＩＤが一致し、且つその開始時間または終了時間がts1からts2の間にあるイベント情報のイベント内容をすべて抽出する。これと同様に、映像ＩＤが一致し、且つその時間幅がts1からts2の間に重複するアノテーション情報のＵＲＬをすべて抽出し、これらの情報をscenebitＳＢ１に含める。これを図９で説明すると、図９（ａ）においてＳＣ１の時間帯に重複するイベント１の要素２０１、イベント２の要素２０２、イベント３の要素２０３、アノテーション１の要素２０４、アノテーション２の要素２０５のイベント内容（name, value）およびアノテーションＵＲＬが抽出され、図９（ｂ）に示すようにscenebitＳＢ１に含められる。このように他のイベント情報のイベント内容をscenebitに含めるのは、これらのイベント内容は少なからずその映像のそのシーンの内容を示すものであるため、ユーザにとってこのscenebitがどのようなシーンを示すかを把握する有用な見出しとなるからである。また、アノテーションのＵＲＬを含めるのは、この映像のこのシーンにはアノテーションが付されていることをユーザに示すとともに、ユーザ端末からアノテーション情報を取得可能とするためである。同様に、この映像の時間ts2−te2に関するシーンＳＣ２のscenebitＳＢ２には、図９（ｂ）に示すようにイベント１の要素２０６、イベント２の要素２０７、イベント３の要素２０８、アノテーション１の要素２０９のイベント内容およびアノテーションＵＲＬが含められる。また、時間ts3−te3に関するシーンＳＣ３のscenebitＳＢ３には、要素２１０〜２１４のイベント内容およびアノテーションＵＲＬが含められる。
【００７５】
上述のようなコマンドを組み合わせて検索することにより、例えば試合名と選手名とでａｎｄ検索したり、さらに柔道の場合に技名「背負い投げ」があった直後に審判が「一本」と判定したシーンを検索したりすることができる。ここで特筆すべきは、検索サーバ２０が生成するscenebitに示されるシーンの時間幅は、検索テーブル２１に登録されたイベントごとの時間幅に拘束されない点である。すなわち、図１０に「sequence」コマンドを用いてイベント２の後に連続してイベント３が発生したシーンの検索例を示すように、この検索結果のシーンＳＣ４の時間幅はイベント２の要素２０２の開始時間（ts4）からイベント３の要素２０３の終了時間（te4）までとなるが、もともとこのシーン自体は１つのイベントとして検索テーブル２１に登録されているものではない。このように、本願システムでは映像を任意の”イベント”群として把握する一方、ユーザの指定するコマンドやパラメータに応じて、各”イベント”の枠を越えてユーザが所望する”シーン”を案内することが可能である。
【００７６】
また、検索パラメータにアノテーション情報を指定することが可能である。アノテーション情報は、これを作成したユーザ名または画面上に書かれたテキスト情報から検索可能である。図７に示すマスタサーバ１０の検索テーブル２１において、アノテーション情報にはユーザＩＤが登録され、またテキスト情報がある場合には別途アノテーションテキスト用のレコードが作成されている。検索サーバ２０は、検索パラメータとして（annotation_text, 任意の文字列）が指定された場合、検索テーブルにおいてnameがannotation_textで、valueが前記文字列のレコードを検索する。また、検索サーバ２０は検索パラメータとして（user, 任意のＩＤ又は名前）が指定された場合、検索テーブル２１のuser欄を検索対象とし、指定されたＩＤ又は名前が条件に合致するレコードを検索する。この場合、検索サーバ２０はユーザ名とユーザＩＤの対象テーブルを有するものとし、これは定期的に検索サーバ２０がユーザ管理サーバ７０からユーザ管理テーブル７１のデータ内容を取得することにより実現することができる。以上のようにしてアノテーションを付した人物を指定して映像シーンの検索を行うことができる。また、他のパラメータとａｎｄ検索する場合に検索パラメータとして（annotation, any）が指定された場合、検索サーバ２０が検索テーブル２１の（name, value）欄に（annotation, 任意のＵＲＬ）が登録されているものを抽出するようにして、アノテーションが付されているシーンのみを検索するように構成してもよい。このようにして検索サーバ２０はユーザ端末（端末８０，９０，１００）から検索要求を受け、scenebitをＸＭＬファイルとして作成してユーザ端末に返信する。なお、検索条件に合致するものがなければその旨をユーザ端末に返信する。
【００７７】
（７）クライアント端末１００
クライアント端末１００は広くユーザが利用するコンピュータ端末であり、ビューワプログラム１０１が動作する。ビューワ１０１はこれ自身で独立したプログラムであってもよいが、上述のアノテーションエディタ９１等と一体的に１つのユーザプログラムをなすモジュールとして構成されていてもよい。図１１と図１２は、ビューワ１０１の画面例を示す図であり、図１１が検索画面の実施例、図１２が閲覧画面の実施例である。これらの検索画面と閲覧画面は画面上のタブ１０２をクリックすることにより切り替わる。
【００７８】
図１１に示すように、検索画面は、検索条件指定部１０３と、検索結果表示部１０４とを備えている。検索条件指定部１０３は検索テキストバー１０５を備えており、ここに上述した検索コマンドやパラメータを組み合わせてなる検索文が表示される。ここにユーザは自身で検索文を直接入力して検索要求することが可能である。しかしながらユーザが検索文を自ら作成するには知識と熟練が必要となるため、本実施例ではsceneQueryなる概念を導入してユーザの入力補助を達成している。このsceneQueryの詳細は後述する。ユーザが自ら検索文を検索テキストバー１０５に入力するか、sceneQueryの補助を受けて検索文を作成して検索ボタンを押下すると、検索文が検索サーバ２０に送信される。検索サーバ２０は上述のように検索テーブル２１への検索を行い、ゼロ乃至複数のscenebitをクライアント端末１００に返信する。ビューワ１０１は受信したscenebitを検索結果表示部１０４にリスト表示する。この場合、scenebit１つが１行に表示される。
【００７９】
本実施例における検索結果表示部１０４は、映像ＩＤ；開始時間；上映時間；タイトル；選手名：その他の表示欄を備えている。ビューワ１０１は受信したscenebitを解析し、含まれる映像ＩＤと開始時間（ts）を該当欄に表示する。また、scenebitに含まれる終了時間（te）から開始時間（ts）を減算して得た値を上映時間欄に表示する。タイトル；選手名；その他の欄は、scenebitに含まれる各イベント情報から抽出されたイベント内容（name, value）の値が表示される。通常はストリーミング映像全体について内容を表すタイトルがイベント情報として検索テーブル２１に登録されており、ビューワ１０１はこのイベント内容（title, ○○○）を抽出してその内容をタイトル欄に表示する。同様にして、選手名のイベント内容があれば選手名欄に表示し、その他に存在するイベント内容をその他欄に表示する。このようにして、ビューワ１０１の検索結果表示欄１０４にはゼロ乃至複数のscenebitが表示され、各scenebitは複数のイベント内容を表示する。
【００８０】
クライアント端末１００のユーザは表示されたイベント内容を見て、閲覧を希望するscenebitを選択する。上述したように、１つのシーンであっても複数のイベント内容が表示されるためユーザの選択に便宜となる。ユーザがいずれかのscenebitをダブルクリック等で指定すると、ビューワ１０１は当該scenebitに含まれる映像ＩＤと、ビューワ１０１に予め登録されているユーザ名とパスワードとをマスタサーバ１０に送信し映像リクエストを実行する。この送信情報にはクライアント端末１００のＩＰアドレスも含められる。
【００８１】
前述のように、マスタサーバ１０はこのリクエストを受けると、ユーザ名とパスワードをユーザ管理サーバ７０に転送して認証をとるとともに、このユーザのユーザＩＤおよびグループＩＤを問い合わせる。その後、マスタサーバ１０は映像管理テーブル１１を参照して当該ユーザが要求にかかるストリーミング映像を見る権利を有するかをチェックする。すなわち、要求にかかる映像ＩＤのレコードを参照し、ここに登録されているAuthReadUserとAuthReadGroupに、リクエスト元ユーザのユーザＩＤまたはグループＩＤが含まれているかを確認する。なお、AuthReadUser欄にゲストユーザを示す”１”が登録されている場合は何人も閲覧可能として扱われる。映像閲覧が許可された場合、マスタサーバ１０はリレーゲートアドレスを含むURL_Keyを作成してクライアント端末１００に返信するとともに、アクセスログ１３に現在時刻とともに記録する。
【００８２】
クライアント端末１００のビューワ１０１はURL_Keyを受信すると、これに含まれるリレーゲートアドレス（ＵＲＬ）に即座に接続要求を実施する。この送信情報にはクライアント端末１００のＩＰアドレスと、前記選択したscenebitで特定される映像ＩＤ、開始時間ts、終了時間teとが含まれる。リレーゲート１１０は接続要求を受けると、これに含まれる映像ＩＤとＩＰアドレスをマスタサーバ１０に送信し、返事を待つ。マスタサーバ１０ではリレーゲート１１０からの情報に基づきアクセスログ１３を参照して映像ＩＤおよびＩＰアドレスを照合し、またクライアント端末１００からの映像リクエストから所定期間以内であるかを確認する。すべてが問題なければ、マスタサーバ１０は映像管理テーブル１１にあるストリーミング映像のＵＲＬをリレーゲート１１０に返信する。これを受けたリレーゲート１１０はストリーミングサーバにアクセスし、該当するストリーミング映像における指定された開始時間tsから終了時間teまでのストリーミング配信を要求する。これによりユーザが所望するシーンのストリーミング映像がリレーゲート１１０を介してクライアント端末１００に配信可能となる。
【００８３】
これに並行して、クライアント端末１００のビューワ１０１は、図１１に示す検索画面から図１２に示す閲覧画面に切り換える。また、ユーザが選択したscenebitにアノテーションＵＲＬが含まれている場合、当該ＵＲＬにアクセスしてアノテーション情報をダウンロードする。このとき、アノテーション情報にＸＭＬファイル以外の添付ファイルが存在する場合でも、ビューワ１０１はこの時点ではＸＭＬファイルのみをダウンロードする。ＸＭＬファイル自体はデータサイズが小さいため、複数のアノテーション情報が存在する場合でも迅速にダウンロードを完了することができる。そして、ビューワ１０１はダウンロードしたアノテーション情報を閲覧画面上でユーザに選択可能に表示する。図１２に示すように、閲覧画面は、ストリーミング映像再生部１０６と、アノテーションリスト表示部１０７と、scenebitリスト表示部１０８とを備えている。ストリーミング映像再生部１０６は公知のストリーミング映像閲覧ソフトをモジュールとして組み込んだものであり、映像の再生、スロー再生、早送り、巻き戻し、コマ送り等が可能である。また音声出力機能を有し、クライアント端末１００のスピーカ等を用いて音声を出力する。アノテーションリスト表示部１０７は、ダウンロードしたアノテーションＸＭＬファイルの情報をリスト表示する部分であり、各行の左端にチェックボックス１０７ａが設けられている。この表示部１０７にはアノテーション情報に含まれる作成者名やテキスト情報等が表示される。好適には、アノテーション情報の作成時にタイトル情報を入力できるように構成し、アノテーションリスト１０７にタイトル情報を表示するようにする。
【００８４】
ユーザは、表示されたアノテーションリストのなかに希望するアノテーションがある場合、チェックボックス１０７ａにチェックしてから、ストリーミング映像の再生ボタンを押下する。ビューワ１０１はチェックされたアノテーション情報を読み込んでから、ストリーミングを再生する。アノテーション情報は当該映像におけるアノテーション挿入時の指定を含んでおり、ビューワ１０１はこの時刻となったらストリーミング映像を一時停止して、アノテーションの内容を映像画面に重ねた仮想レイヤとして表示する。これにより、一時停止された映像画面上に、アノテーション作成者が描いた線画やテキストが表示され、また音声ファイルや別の添付ファイルがある場合には当該ファイルのアイコンが画面上に表示される。このアイコンをユーザがクリックすると、ビューワ１０１はアノテーションサーバ５０に再びアクセスして当該ファイルをダウンロードし、ユーザに対して出力する。すなわち音声ファイルの場合は再生し、テキストファイル等の場合は別のウィンドウを立ち上げて内容を表示する。ユーザがこれらの情報を確認して再び再生ボタンを押すと、ビューワ１０１はこのアノテーション情報を消去し、再びストリーミング映像を再生する。他にもアノテーション情報が指定されている場合はその映像時刻になるとアノテーションが挿入され、このようにしてユーザは所望のシーンを閲覧して、所望のアノテーション情報を享受することができる。なお、アノテーション情報の出力はアノテーションエディタ９１に対応する描画ソフトや音声再生機能等をビューワ１０１に組み込むことにより達成される。また、ストリーミング映像再生部１０６は音声出力機能を有しており、映像音声やアノテーションの音声がクライアント端末１００のスピーカ（図示せず）から出力される。
【００８５】
図１１に戻り、sceneQueryについて説明する。sceneQueryは、予め検索条件となる１以上のパラメータまたはその組み合わせを備えて構成されるＸＭＬファイルであり、ユーザに検索条件となる他のパラメータの入力を促すか選択可能に提示し、入力あるいは選択されたパラメータによって検索文の作成や別のsceneQueryファイルのダウンロード等の動作を規定するものである。このsceneQueryは、予め各種の競技団体や映像提供者等により作成され、例えば当該団体のホームページ等で無償配布されることが想定される。ユーザはsceneQueryを適宜ダウンロードして利用できるものとする。このようにダウンロードしたsceneQueryはユーザ端末において所定のローカルフォルダに保存され、ビューワ１０１の起動時に読み込まれて利用可能な状態となる。
【００８６】
図１１の実施例では、検索条件指定部１０３がクエリーリスト欄１０３ａと、パラメータ指定欄１０３ｂとを備えている。クエリーリスト欄１０３ａにはビューワ１０１が読み込んだsceneQueryがリスト表示され、ユーザがいずれかをクリックすることによりそのsceneQueryに設定された選択／入力バーがパラメータ指定欄１０３ｂに表示される。図１１の例では、sceneQuery「柔道技検索」を指定すると、「技のタイプ」選択欄として例えば「立ち技，寝技，投げ技」のプルダウンメニューが表示され、またさらに細分した技名の選択欄が表示される。このsceneQueryには予めタイトル「柔道技検索」と、技のタイプ「立ち技，寝技，投げ技」のパラメータと、それぞれの技タイプについてさらに複数の選択肢が予め登録されており、いずれかの技タイプがユーザによって選択された場合に当該技タイプに属する技名が選択欄に表示されるよう設定されている。ユーザが例えば技タイプ「投げ技」、技名「背負い投げ」を選択すると、ビューワ１０１はこのsceneQueryの記述に従い、"search match (競技名，柔道) and match (技タイプ，投げ技) and match (技名，背負い投げ)"のような検索文を作成し、クエリー欄１０５に表示する。この例では"search"が検索要求、"match"がコマンド名、これに続く括弧内が（name, value）の組み合わせであり、これらをandで繋げて検索文を作成している。この場合にsceneQueryには予め（競技名，柔道）等のパラメータが登録されており、ユーザがsceneQuery「柔道技検索」を選択した時点でこのパラメータを用いることが確定する。
【００８７】
なお、パラメータ選択の部分はユーザが直接入力するテキストバーとしてもよく、この場合はユーザが入力したテキストがそのまま検索文に転載されるよう設定される。さらに、複数のパラメータを選択可能に表示する場合において、各選択肢に対応するＵＲＬを予めsceneQueryに登録しておき、選択されたパラメータに応じて新たなsceneQueryをダウンロードするようsceneQueryおよびビューワ１０１を構成してもよい。具体的には、例えば予め最も広範な選択肢として競技名を選択指定するsceneQueryのみ最初にビューワ１０１に組み込んでおき、ユーザに選択された競技名に対応するＵＲＬにアクセスして次に大会名を選択するsceneQueryを読み込み、次にこのsceneQueryでの選択内容に応じて選手名を選択するsceneQueryをダウンロードし、さらに・・・と続けてウェブ上に用意されたsceneQueryを次々と利用していくことができる。このように構成すると、継続して開催されるようなスポーツ大会で必然的に増えていく選手名や技名等をsceneQueryを提供する競技団体等が随時反映させることができ、ユーザは常に最新情報を反映させたsceneQueryを利用して最新映像を検索することが可能となる。
【００８８】
sceneQueryはＸＭＬファイルとしてユーザが所定のローカルフォルダに保存することができ、ビューワ１０１はこれを読み込んでクエリーリスト欄１０６に表示する。また、検索サーバ２０から検索結果として送信されるscenebitもＸＭＬファイルのまま所定のローカルフォルダに保存することができ、ビューワ１０１はこれを読み込んで図１０に示すお気に入りシーン集の欄１０９に表示する。ユーザは気に入ったシーンのscenebitをここに登録して繰り返し閲覧することができる。なお、お気に入りシーン集１０９に登録されたscenebitを閲覧する手順とビューワ１０１の処理は、検索結果表示欄１０４に表示されたscenebitを閲覧する処理と同じである。また、ユーザは任意のscenebitをファイルとして自由に扱うことができ、例えば電子メールに添付して他のユーザに送信したりすることが可能である。
【００８９】
（８）リレーゲート１１０
リレーゲート１１０はネットワーク上に１以上配設されプログラム動作するサーバコンピュータであり、上記説明したようにユーザ端末８０，９０，１００からアクセスを受けてマスタサーバ１０と照合してから、ストリーミング映像をユーザ端末に中継する。リレーゲート１１０は映像ストリーミングサーバ３０や他のサーバが兼ねてもよい。リレーゲート１１０は、ユーザ端末８０，９０，１００から映像ＩＤ，ts，te，ＩＰアドレスを含む配信要求を受けると、映像ＩＤとＩＰアドレスの情報をマスタサーバ１０に転送し、認証結果を待つ。マスタサーバ１０で認証が成功すると実際のストリーミング映像へのアクセスパスがリレーゲート１１０に送信される。リレーゲート１１０はこのＵＲＬにアクセスし、ストリーミング映像における開始時間（ts）と終了時間（te）を指定して映像配信要求を行う。ストリーミングサーバ３０はこの条件に従い映像シーンをリレーゲート１１０にストリーミング送信し、これがリレーゲート１１０を介してユーザ端末に配信される。ここで、リレーゲート１１０はユーザ端末からのアクセス毎にランダムなＵＲＬを作成して映像アドレスとしてユーザ端末に通知し、これによりユーザ端末で実際のストリーミング映像に直接アクセスされないようにする。
【００９０】
なお、このリレーゲート１１０は、各ストリーミングサーバ３０の前段に１つづつ設置されていてもよく、また１つのリレーゲートが複数のストリーミングサーバ３０のストリーミング配信を担当するようにしてもよい。また、リレーゲート１１０は上記動作を実行するプログラムを各ストリーミングサーバ３０に組み込むことにより実現することもできる。
【００９１】
（９）映像ストリーミングサーバ３０
映像ストリーミングサーバ３０は実際のストリーミング映像が登録されるサーバであり、上記のとおり映像のオーナー（映像を登録する者）が任意に決めてもよく、また本願システムで用意されたストリーミングサーバを用いてもよい。映像ストリーミングサーバ３０はリレーゲートからストリーミング映像のＵＲＬと、当該映像における開始時間（ts）および終了時間（te）とを含むストリーミング配信要求を受けると、そのＵＲＬに登録されたストリーミング映像のts−teで規定されるシーンを抽出してストリーミング配信する。ストリーミング配信自体は公知技術であり詳細な説明は省略する。
【００９２】
（１０）ダウンロードサーバ６０
ダウンロードサーバ６０はストリーミング映像の元映像（AVI，mpeg等が想定される）が登録されるサーバであり、映像ストリーミングサーバ３０と同様にユーザが任意に選択したサーバを用いることができる。ダウンロードサーバ６０は必須の構成ではないが、例えば研究機関で画質の良い映像を繰り返し利用するために元映像自体を取得する必要がある場合等に、制限されたユーザまたはグループに元映像をダウンロード可能とするために設けられる。ダウンロードサーバ３０に元映像を登録した映像オーナーは、前述の手順によりマスタサーバ１０にそのＵＲＬとダウンロードサーバアドレスとを登録する。
【００９３】
元映像のダウンロードを希望するユーザは、例えばユーザ端末のビューワ１０１のメニュー項目からダウンロードコマンドを実行する（図示せず）。ビューワ１０１はこれを受けて映像ＩＤと、初期設定でビューワ１０１に登録されたユーザ名およびパスワードとをマスタサーバ１０に送信してダウンロード要求を行う。マスタサーバ１０はユーザ名およびパスワードをユーザ管理サーバ７０に転送して認証をとるとともにこのユーザのユーザＩＤおよびグループＩＤとを問い合わせる。この返信を受けたマスタサーバ１０は、映像管理テーブル１１を参照して当該ユーザがこの映像をダウンロード可能なユーザかを確認する。すなわち、映像ＩＤを基にレコードを調べ、AuthDLUserまたはAuthDLGroup欄にこのユーザのユーザ／グループＩＤが登録されているかを確認する。ユーザのＩＤが登録されている場合、マスタサーバ１０はストリーミング映像への案内処理とほぼ同様にして、ユニークなキー（文字列）を作成し、映像ＩＤ、ユーザ端末のＩＰアドレス、キー作成時とともにアクセスログ１３に保存する。また、このキーと、映像管理テーブル１１に登録されている当該映像のＤＬサーバアドレスと、映像ＩＤとを含むダウンロード用のURL_Keyを作成し、リクエスト元のユーザ端末に返信する。このURL_Keyは適切な方法で暗号化して送信され、これによってユーザの要求する元映像のダウンロードを扱うサーバのアドレスがユーザ端末に返信される。
【００９４】
ダウンロード用のURL_Keyを受信したユーザ端末のビューワ１０１（場合によってはイベントエディタ８１またはアノテーションエディタ９１）は、即座にURL_Keyに示されるＤＬサーバアドレスにアクセス先を切り換え、映像要求を行う。これを受けたダウンロードサーバ６０は当該ユーザ端末のＩＰアドレスと映像ＩＤとをマスタサーバ１０に送信する。マスタサーバ１０は問い合わせを受けると、先ほど登録したアクセスログ１３を参照してユーザ端末のＩＰアドレスを照合し、また先ほどのキー作成時から所定期間（例えば数秒以内に設定される）内であるかを判定する。ユーザＩＤとＩＰアドレスが一致し且つ所定期間内である場合、マスタサーバ１０は映像管理テーブル１１を参照し、映像ＩＤをキーにこの元映像が実際に保存されているＤＬ元映像アドレスを抽出し、ダウンロードサーバ６０に返信する。また、アクセスログ１３にアクセスログを記録する。これによりダウンロードサーバ６０は元映像を抽出し、ユーザ端末に送信する。このようにダウンロードサーバ６０が上述したリレーゲート１１０とほぼ同様の処理を行うことによって、ユーザ端末から元映像をダウンロードすることが可能となる。
【００９５】
以上に本発明のシステムを構成する各サーバおよびユーザ端末の処理について詳細に説明したが、本願発明の技術的範囲は上記実施例に限定されるものではなく、様々な変更や拡張を適用することができる。上述したように各サーバおよび端末の機能は他のサーバまたは端末が兼ねるよう構成してもよいし、別のサーバ等を用意してさらに機能を分散してもよい。また、上記実施例はスポーツ映像の閲覧システムについて説明しているが、本発明の閲覧システムはスポーツ映像以外にもあらゆるジャンルの映像に適用することが可能である。例えば科学分野の実験映像を本願システムで管理し、広く実験映像シーンの参照・閲覧に役立てることができる。また、例えば医療における手術の映像を本願システムで管理し、医師の技術力向上のために閲覧可能としてもよい。このような場合にも他人がアノテーションを付したり、それを他人が閲覧できたりすると非常に便宜となる。また、テレビ放送局が自局で放送した番組をストリーミング映像として登録し、制限されたユーザの所望するシーンを閲覧可能とするようにしてもよい。このようにジャンルの異なる映像であっても本願システムに適用することができる。
【００９６】
さらに、上記実施例ではイベント情報がイベント入力端末８０のオペレータによる作業により登録されるようにしているが、この作業の一部をイベントエディタ８１またはイベントサーバ４０等が自動処理により行う構成とすることができる。すなわち、イベントエディタ８１やイベントサーバ４０が映像または音声の自動解析を行ってイベント情報を作成するよう構成する。例えば、スポーツの試合では観客の歓声が上がると音声が大きくなるため、イベントエディタ８１等が任意の映像を自動再生し、音声が閾値を超えた部分を１つのイベントとして順次登録していくことによりイベント情報を自動作成することができる。また、イベントエディタ８１等が映像再生中に流れる音声を自動解析し、特定の単語が出現した場合を当該単語に関連するイベント情報として登録するように構成してもよい。具体的には、例えば柔道の試合において「一本！」といった音声を自動検出して、（name, value）が（判定，一本）というイベント情報を作成し、試合中に「一本」の判定が行われたシーンについてのイベント情報を作成することができる。また、例えばサッカーの試合の映像中に実況アナウンサーが発声する「ゴーール！」といった音声を検出してゴールシーンのイベントを自動生成するようなことができる。なお、音声解析処理や音量検知処理については公知技術であるため詳細な説明は省略する。
【００９７】
また、上記実施例ではクライアント端末１００のビューワ１０１側で検索文を作成し、検索サーバ２０に送信する方法を採用しているが、これは例えば検索サーバ２０または他に用意したウェブサーバに検索エンジンを搭載し、ウェブ上でシーン検索を行えるようにしてもよい。その他、各種機能の実現方法は上記実施例のものに限らず、添付の特許請求の範囲を越えない限りにおいて変更を施すことができる。
【産業上の利用可能性】
【００９８】
本発明の映像閲覧システムはスポーツ業界のみならず、映像を用いる各種業界で利用することができる。また、各種サーバの運営等はネットワーク情報処理産業で利用することができる。
【図面の簡単な説明】
【００９９】
【図１】本発明の映像閲覧システムの全体構成を示す概略図である。
【図２】ユーザ管理サーバ７０のユーザ管理テーブル７１の構成例を示す図である。
【図３】ユーザ管理サーバ７０のグループ管理テーブル７２の構成例を示す図である。
【図４】マスタサーバ１０の映像管理テーブル１１の構成例を示す図である。
【図５】イベント入力端末８０のイベントエディタ８１の画面例を示す図である。
【図６】アノテーション入力端末９０のアノテーションエディタ９１の画面例を示す図である。
【図７】検索サーバ２０の検索テーブル２１の構成例を示す図である。
【図８】検索サーバ２０の検索処理のイメージを説明するための図である。
【図９】検索サーバ２０の検索処理のイメージを説明するための図である。
【図１０】検索サーバ２０の検索処理のイメージを説明するための図である。
【図１１】クライアント端末１００のビューワ１０１の検索画面例を示す図である。
【図１２】クライアント端末１００のビューワ１０１の閲覧画面例を示す図である。
【符号の説明】
【０１００】
１      通信ネットワーク
１０    マスタサーバ
１１    映像管理テーブル
２０    検索サーバ
２１    検索テーブル
３０    映像ストリーミングサーバ
４０    イベントサーバ
５０    アノテーションサーバ
６０    ダウンロードサーバ
７０    ユーザ管理サーバ
７１    ユーザ管理テーブル
７２    グループ管理テーブル
８０    イベント入力端末
８１    イベントエディタ
９０    アノテーション入力端末
９１    アノテーションエディタ
１００  クライアント端末
１０１  ビューワ
１１０  リレーゲート
【図１】
2007142750.tif 000003
【図２】
2007142750.tif 000004
【図３】
2007142750.tif 000005
【図４】
2007142750.tif 000006
【図５】
2007142750.tif 000007
【図６】
2007142750.tif 000008
【図７】
2007142750.tif 000009
【図８】
2007142750.tif 000010
【図９】
2007142750.tif 000011
【図１０】
2007142750.tif 000012
【図１１】
2007142750.tif 000013
【図１２】
2007142750.tif 000014