説明

映像情報交換方法、サーバ装置、及びクライアント装置

【課題】クライアント側の映像を使って、コメント等の映像情報をクライアント間で交換する。
【解決手段】サーバ映像を蓄積するサーバ装置と、サーバ映像に対応するクライアント映像を蓄積する複数のクライアント装置とが接続されたシステムにおいて、サーバ装置が、第1のクライアント装置のクライアント映像の映像時間とサーバ映像における対応する映像の時間との差であるオフセット値を求め、それを第1のクライアント装置に送信し、第1のクライアント装置は、クライアント映像再生中における映像情報入力の時間とオフセット値とから、サーバ映像における映像情報の時間位置を算出し、サーバ装置に送信し、サーバ装置が、当該映像情報と時間位置をサーバ映像と対応付けて蓄積する。第2のクライアント装置は、サーバ装置から映像情報と時間位置を受信し、自装置のオフセット値を用いて映像情報を正しい時間位置に表示する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、映像を蓄積する複数のクライアントのうちのあるクライアントにおいて、映像再生中にある映像部分でユーザにより入力されたコメントを、他のクライアントでもその映像部分のコメントとして参照することを、映像の送受信を行うことなく可能とする技術に関するものである。
【背景技術】
【0002】
従来技術において、映像に関するユーザ入力コメントを交換する方法については、サーバ側の映像データに関連付けられたコメントを各クライアントで閲覧できるようにする手法がほとんどである。
【0003】
従来技術の例としては、「映像コンテンツ視聴者情報提供システム及び方法と、視聴者情報提供装置、プログラム及びプログラムの記録媒体」(特許文献1)があるが、この例でも映像データはサーバ側に存在し、それを利用している。
【特許文献1】特許第3622710号
【発明の開示】
【発明が解決しようとする課題】
【0004】
上記の従来技術においては、以下のような問題がある。
(1)サーバ側の映像配信によって、映像に関するコメントである映像情報を交換する方式では、映像配信および映像区間毎のコメント送信によるサーバの負荷が大きくなる。
(2)映像区間は、サーバ側で一意に定義されているため、映像とコメントの同期再生の区間についてのクライアント側でのカスタマイズは困難である。
【0005】
なお、現状において、クライアント側で映像を大量に蓄積でき、映像の構造化を行えるようになっているが、クライアント側で構造化された映像データを使って、コメント等の映像情報を交換する従来技術は存在しない。
【0006】
本発明は、上記の点に鑑みてなされたものであり、上記の問題を解決し、クライアント側の映像を使って、映像に関するコメントである映像情報をクライアント間で交換する技術を提供することを目的とする。
【課題を解決するための手段】
【0007】
上記の課題は、サーバ映像を蓄積するサーバ装置と、サーバ映像に対応するクライアント映像を蓄積する複数のクライアント装置とがネットワークを介して接続されたシステムにおける映像情報交換方法であって、第1のクライアント装置が、自装置が蓄積するクライアント映像に対応するサーバ映像の識別情報と、そのクライアント映像において予め定められた映像区間毎の開始時間と画像特徴量の組を含む情報をサーバ装置に送信するステップと、サーバ装置が、前記画像特徴量と、サーバ映像のフレーム毎の画像特徴量を用いることにより、第1のクライアント装置から受信した映像区間の開始時間毎に、映像区間の開始時間に対応するサーバ映像のフレームを検出し、そのフレームの時間と当該映像区間の開始時間との差をオフセット値として求め、それを第1のクライアント装置に送信するステップと、第1のクライアント装置が、クライアント映像を再生中にユーザからの映像情報の入力を受け、その映像情報入力の時間と、その時間に対応する映像区間のオフセット値とから、当該クライアント映像に対応するサーバ映像における当該映像情報の時間位置を算出し、その時間位置と映像情報を含む情報をサーバ装置に送信し、サーバ装置が、当該映像情報と時間位置をサーバ映像と対応付けて蓄積するステップと、第2のクライアント装置が、自装置のクライアント映像の再生を行う際に、そのクライアント映像に対応するサーバ映像に対応付けてサーバ装置に蓄積されている映像情報と時間位置とを含む情報をサーバ装置から受信し、第2のクライアント装置が保持するオフセット値と当該時間位置とを用いて、第1のクライアント装置で映像情報が入力された場面に対応する場面で、当該映像情報を表示するステップとを有することを特徴とする映像情報交換方法により解決される。
【0008】
また、本発明は、サーバ映像を蓄積するサーバ装置と、サーバ映像に対応するクライアント映像を蓄積する複数のクライアント装置とがネットワークを介して接続されたシステムにおいて使用されるサーバ装置であって、クライアント装置から、そのクライアント装置が蓄積するクライアント映像に対応するサーバ映像の識別情報と、クライアント映像において予め定められた映像区間毎の開始時間と画像特徴量の組を含む情報を受信する手段と、前記画像特徴量と、サーバ映像のフレーム毎の画像特徴量を用いることにより、クライアント装置から受信した映像区間の開始時間毎に、映像区間の開始時間に対応するサーバ映像のフレームを検出し、そのフレームの時間と当該映像区間の開始時間との差をオフセット値として求め、それをクライアント装置に送信する手段と、クライアント装置から、当該クライアント装置におけるクライアント映像再生中に入力された映像情報と、オフセット値を用いて求められたその映像情報のサーバ映像における時間位置とを含む情報を受信し、その映像情報と時間位置をサーバ映像と対応付けて蓄積する手段とを有することを特徴とするサーバ装置として構成することもできる。
【0009】
また、本発明は、サーバ映像を蓄積するサーバ装置と、サーバ映像に対応するクライアント映像を蓄積する複数のクライアント装置とがネットワークを介して接続されたシステムにおけるクライアント装置であって、自装置が蓄積するクライアント映像に対応するサーバ映像の識別情報と、そのクライアント映像において予め定められた映像区間毎の開始時間と画像特徴量の組を含む情報をサーバ装置に送信する手段と、クライアント映像の映像区間の開始時間と、これに対応するサーバ映像のフレームの時間との差であるオフセット値をサーバ装置から受信し、映像区間毎に蓄積する手段と、クライアント映像を再生中にユーザからの映像情報の入力を受け、その映像情報入力の時間と、その時間に対応する映像区間のオフセット値とから、当該クライアント映像に対応するサーバ映像における当該映像情報の時間位置を算出し、その時間位置と映像情報を含む情報をサーバ装置に送信する手段と、クライアント映像の再生を行う際に、そのクライアント映像に対応するサーバ映像に対応付けてサーバ装置に蓄積されている他のクライアント装置の映像情報と時間位置とを含む情報をサーバ装置から受信し、自装置が蓄積するオフセット値と当該時間位置とを用いて、受信した映像情報が他のクライアント装置で入力された場面に対応する場面で、当該映像情報を表示する手段とを有することを特徴とするクライアント装置として構成することもできる。
【発明の効果】
【0010】
本発明によれば、クライアント側の映像を使って、映像に関するコメントである映像情報をクライアント間で交換することが可能となる。
【0011】
また、映像情報の交換にあたり、サーバ側の映像配信を行わないので、サーバの負荷が大きくなるという問題は解消される。また、映像区間は各クライアントで任意に設定できるので、映像とコメントの同期再生の区間についてのクライアント側でのカスタマイズは困難であるという問題も解消される。
【発明を実施するための最良の形態】
【0012】
以下、図面を用いて本発明の実施の形態を説明する。まず、本実施の形態の概要を説明し、その後に装置構成、及び各処理について詳細に説明する。
【0013】
(概要)
本実施の形態の技術は、クライアントに蓄積された映像を再生しているときに、ユーザが所望する時点でコメント書き込みを行い、そのコメントを、他のクライアントにおいて当該映像の当該時点に対応する映像区間のコメントとして参照することを、映像の配信を行うことなく可能とする技術である。
【0014】
本実施の形態では、コメントを付ける対象として、例えば録画したTV映像を想定している。この場合、映像は例えば次のように録画される。
(CM区間)(番組開始)(番組内容)(CM区間)(番組内容)...(番組終了)(CM区間)
上記の各CM区間の有無や長さ等は地域等によって異なることから、複数のクライアントが同じ番組を録画したとしても、録画された映像において、映像の開始から番組の同じシーンが現れるまでの時間はクライアント毎に異なることになる。
【0015】
従って、あるクライアントにおいてユーザが所望する映像時間にコメントを付与し、そのコメントを他のクライアントにおいて対応する映像部分の映像区間のコメントとして参照するためには、上記の時間の相違を解消する必要がある。このために本実施の形態ではサーバ、クライアントが次のような処理を行う。
【0016】
まず、サーバ、クライアントがそれぞれ蓄積する同内容の映像において、カットの画像特徴量等を用いることにより、クライアントの映像のシーンの開始時点と、対応するサーバ映像のフレームとの時間差(オフセット値)を、シーン毎に求めておき、各クライアントに登録しておく。
【0017】
そして、図1の例において、クライアントAにおいてユーザが映像の所望の時間Tでコメントを入力すると、クライアントAはオフセット値を用いてTをサーバ側の時間T+Aに変換し、そのコメントと時間をサーバに送り、サーバはそのコメントを時間T+Aとともに登録する。クライアントBがそのコメントを参照する場合、クライアントBは、サーバ側の時間T+AとクライアントBのオフセット値Bを用いて、そのコメントのクライアントBにおける時間T+A−Bを求め、その時間に対応するクライアントBの映像区間(シーン)でそのコメントを表示する。このような処理によって、上記の時間の相違を解消している。
【0018】
(システム構成)
次に、図2を参照して本実施の形態におけるシステム構成を説明する。
【0019】
図2に示すように本実施の形態のシステムはコメント管理サーバ装置1(以下、サーバと呼ぶ)と映像コメント同期再生クライアント装置2(以下、クライアントと呼ぶ)とが通信網40を介して接続された構成をとっている。このシステムでの動作の一例を図3のフローチャートを参照して説明する。
【0020】
サーバ1において、映像と関連したコメントを管理するための前処理として、指定された映像ファイルに対して各フレーム画像の画像特徴量を求めることなどにより映像登録を行い、映像に関する情報を映像DBに蓄積しておく(ステップ1)。
【0021】
また、クライアント2では、前処理として、自装置に蓄積されている映像にIDを付与することなどにより映像を映像DBに登録する映像収集処理を行うとともに(ステップ2)、映像のカットの開始時間、終了時間、画像特徴量を検出することを含む映像インデックス処理を行い、処理結果を映像インデックスDBに蓄積しておく(ステップ3)。
【0022】
上記の準備が整った状態で、クライアント2とサーバ1の処理により、サーバ1に登録された映像とクライアントが蓄積する映像の中で内容的に一致する映像を選択する処理を行う(ステップ4)。また、当該映像に関し、サーバ1に登録された映像とクライアント2が蓄積する映像の間で、同じシーンの時間的なずれを示すオフセット値をサーバ1が算出し(ステップ5)、クライアント2がそのオフセット値を受信し、映像インデックスDBに蓄積する。
【0023】
その後、クライアント2から、特定の映像に関するコメント取得要求がサーバ1に対して送られ、サーバ1は、他のクライアントから受信することにより保持している当該映像に関するコメントをクライアント2に送信し、クライアント2はそのコメントを登録する(ステップ6)。そして、クライアント2では、上記のオフセット値を用いることにより、コメントに対応する映像区間において当該コメントを表示しながら映像の再生を行う(ステップ7)。また、映像再生において、コメントを入力することにより、サーバではオフセット値により変換されたコメント入力時間とコメントの登録を行う(ステップ8)。
【0024】
(システム詳細構成について)
次に、上記のような動作を行うシステムの詳細構成について、図4を参照して説明する。
【0025】
サーバ1は、コメント・画像特徴量管理モジュール6、クライアント管理モジュール3、映像オフセット計算モジュール4、データ送受信モジュール5、コメント・画像特徴量管理DB13、映像DB14を有している。
【0026】
コメント・画像特徴量管理モジュール6は、登録された映像の全フレームの画像特徴量を検出する画像特徴量検出・蓄積手段、クライアント2から送信された映像時間情報と対応付けられたユーザ入力コメントを登録する入力コメント受信・蓄積手段、指定映像の全コメント、更新コメントを抽出するコメント抽出手段を有する。また、クライアント管理モジュール3は、クライアントを識別するための手段を有している。
【0027】
映像オフセット計算モジュール4は、クライアント2から受信した、ある映像データのシーン毎の場面変化点(カットともいう)毎の画像特徴量と、自装置が保持する当該映像データに対応する映像データの全フレーム画像特徴量とを比較し、場面変化点の時間と、対応するフレームの時間とのずれであるオフセット値を計算する映像シーンオフセット値計算手段を有する。また、データ送受信モジュール5は、クライアント2からのデータ受信およびクライアント2へのデータ送信を行う手段を有する。
【0028】
また、コメント・画像特徴量DB13は、コメント・画像特徴量管理モジュール6で処理されたコメントや画像特徴量を保持し、映像DB14は、コメントの交換を許すための映像の情報を保持する。
【0029】
クライアント2は、映像収集モジュール21、映像インデクシングモジュール22、シーン管理モジュール23、コメント管理モジュール24、データ送受信モジュール25、映像コメント同期再生モジュール26、映像DB31、映像インデックス情報DB32、コメントDB33を有する。
【0030】
映像収集モジュール21は、自装置に保存された映像データを収集する映像データ収集手段を有する。映像インデクシングモジュール22は、映像データの場面変化点を検出する場面変化点検出手段、変化点における画像および画像列の色情報および動き情報の特徴量を検出し、蓄積する画像特徴量検出・蓄積手段を有する。シーン管理モジュール23は、映像インデクシングモジュール22で映像構造化された情報をシーン情報として映像インデックス情報DB32へ登録する映像構造情報蓄積手段を有する。
【0031】
また、コメント管理モジュール24は、ユーザによって映像シーンに対応づけて入力されたコメントを送受信モジュールに転送したり、サーバ1から受信した全コメントまたは更新コメントをコメントDB33へ登録したりするコメント受信・蓄積手段を有する。送受信モジュール25は、サーバとの情報の送受信を行う。映像コメント同期再生モジュール26は、映像シーンに関連付けたコメントを映像再生と同期して切り替え表示を行う映像コメント同期再生手段を有する。また、クライアント2は、クライアント映像指定手段、l、コメント入力・送信手段等も有している。
【0032】
映像DB31は映像の属性情報を管理するものである。また、映像インデックス情報DB32は、映像構造化された場面変化点、場面変化点における画像特徴量などを管理し、コメントDB33は、映像シーンと関連付けられたコメントを管理する。
【0033】
また、クライアント2は、ユーザの操作手段として、映像掲示板参加操作手段、映像再生手段、親コメント登録操作手段、子コメント登録操作手段等も有している。
【0034】
サーバ1とクライアント2の各々は、CPUや記憶装置等を備えたコンピュータに、本実施の形態で説明する処理を実行するためのプログラムを搭載することにより実現可能である。当該プログラムは、CD-ROM、メモリ等の記録媒体に記録したものをコンピュータにインストールすることとしてもよいし、ネットワークを介してダウンロードすることとしてもよい。
【0035】
[処理の詳細について]
以下、概ね図3に示したフローチャートに沿って、各処理を詳細に説明する。
【0036】
(サーバでの映像登録処理)
まず、図5を参照してサーバによる映像登録処理(図3のステップ1)について説明する。
【0037】
ステップ101にて、映像ファイルと映像キーワードファイルが外部から指定されると、ユニークな映像IDを新たに作成し、その映像IDにて指定映像ファイルパス、映像キーワードファイルパスを映像DBに登録する。ステップ102にて、該当映像ファイルを読み込み、映像ファイルサイズを取得し、映像ファイルサイズを映像DBに登録する。
【0038】
そして、ステップ103にて、読み込んだ映像ファイルの各フレーム画像を抽出し、各フレーム画像の画像特徴量を計算し、画像特徴量ファイルに書き込み、その保存先を総画像特徴量ファイルパスとして、映像DBに登録する。当該映像の総時間も同時に取得し、映像総時間を映像DBに登録することで、映像DBの登録が完了する。なお、本実施の形態における画像特徴量を計算方法については後述する。
【0039】
映像DBの一例を図6に示す。図6に示すように、映像DBにはサーバ側の映像を一意に特定する映像ID(サーバ映像ID)、映像のコメントを管理する対象となる映像ファイルの映像ファイルパスである映像ファイル名、対象映像のファイルサイズ、サーバ側の映像の各フレームの画像特徴量を保持した総画像特徴量ファイルへのパス、映像キーワードファイルへのパス(中身は映像に関連するキーワード(電子番組表の情報やフリーのキーワードなど、キーワードの検索レベルで利用できるものとする)、当該映像の再生総時間を持つ。
【0040】
(クライアントでの映像収集処理、インデクシング処理)
次に、クライアントでの映像収集処理、インデクシング処理について説明する。
【0041】
まず、図7に示す映像収集モジュール処理フローを参照してクライアントでの映像収集処理について説明する。クライアントでの映像収集処理では、ステップ201で探索可能なディレクトリを検出する間、ステップ211から215の処理を繰り返す。
【0042】
ステップ211では、対象ディレクトリに存在する設定された映像ファイル拡張子と一致するファイルを抽出する。ステップ212では、見つかったファイルの作成日時が前回探索日時より進んでいるか判定する。ステップ212での判定がYESならば、ステップ213では、映像DBに対して、映像IDを新たに追加し、映像ファイル名、ファイルサイズ、ファイル作成日時、更新日時、ステータス(1:インデクシング処理待ち)を登録する。
【0043】
ステップ212で判定がNoである場合、ステップ214で、そのファイルの更新日は、前回ディレクトリ探索開始時間より進んでいるかを判定する。ステップ214の判定結果がYesの場合、対象ファイルが、映像DB内に存在し、対象となる映像IDと関連付けられた、映像ファイル名、ファイルサイズ、ファイル作成日時、更新日時、ステータス(1:インデクシング処理待ち)のデータをアップデートする。
【0044】
ステップ214で判定結果がNoの場合、ステップ211で抽出したファイルが存在する限りステップ212の処理を行う。ステップ211で抽出したファイルが存在しなくなった場合、ステップ221の処理に移行する。ステップ221の処理は、前回映像収集モジュールが利用されて以降に映像ファイルが削除された場合の処理であり、映像DBに存在しているが、対象ディレクトリに映像ファイルが存在しないものを抽出する。ステップ222において、ステップ221でそのようなものが見つかっている間は、映像DBの対象映像IDのものに対して、ステータス4(削除待ち)を設定する処理を繰り返す。繰り返しが全て完了すると処理が終了する。
【0045】
上記の処理の結果作成される映像DBの内容例を図8に示す。図8に示すように、映像DBには、クライアントの映像を一意に決める映像ID、その映像ファイルへのパスである映像ファイル名、ファイルサイズ、ファイル作成日、更新日などの属性値、映像収集、インデクシング処理で利用するステータス、後述の映像候補検索時に利用可能なキーワードファイル(中身は映像に関連するキーワード(電子番組表の情報やフリーのキーワードなど、キーワードの検索レベルで利用できるものとする)のパスなどを持つ。
【0046】
次に、図9に示す処理フローを参照して、クライアントにおけるインデクシング処理を説明する。
【0047】
ステップ301で、まず映像DBから、ステータスが1(インデクシング処理待ち)の映像IDを抽出する。抽出された映像ID分ステップ311からステップ313の処理を繰り返す。
【0048】
ステップ311では、抽出した映像IDと一致する映像データファイルを映像DBで検索する。検索結果のデータを用いて、ステップ312では、場面変化点の検出を映像インデクシングモジュールに依頼する。映像インデクシングモジュールにおいて場面変化点を検出する方法自体は「符号化映像カット検出方法」(特許第3377678号)、「符号化インタレース映像カット検出方法および装置」(特許第3377679号)などの技術を利用可能である。
【0049】
ステップ312において、映像インデクシングモジュールは、インデクシング処理結果である特徴種類(カットなど)、その検出開始時間、終了時間を映像インデックスDBに登録する。また、当該映像IDの映像の総再生時間を抽出し、その結果を、クライアントのコメントDBにおけるクライアント映像総時間に登録し、映像DBにおける対象映像IDの映像のステータスを2(画像特徴量処理待ち)にする。
【0050】
そして、ステップ313で、ステップ312の処理結果の各特徴種類の開始時間のデータを全て取得し、その時間のフレーム画像を映像から抽出し、その画像特徴量を計算し、その結果をファイルとして保存する。更に、そのフレーム画像からサムネイルを作成する。そして、これらの結果である画像特徴量ファイルのパス、及びサムネイルファイルのパスを映像インデックスDBに登録する。その後、映像DBのステータスを3(インデクシング完了)にする。なお、画像特徴量の算出方法についてはサーバの場合と同様に後述する。また、画像特徴量ファイルについては、シーン(の開始時間)単位の画像特徴量を記録したシーン画像特徴量ファイルとしてもよい。
【0051】
図10に、上記の処理の結果得られる映像インデックス情報DBの内容例を示す。
【0052】
図10に示すとおり、クライアントの映像を一意に決める映像ID、映像インデクシング処理での場面変化点の映像再生順に現れる場面変化点の番号を入れる特徴ID、場面変化点(カット)の開始時間、次の変化点である終了時間、開始時間の場面変化点での画像特徴量を出力した画像特徴量ファイルパス、映像シーンオフセット値登録処理結果である開始点オフセット(サーバにおける同一内容の映像の中の同特徴量の開始点と、クライアントでの開始点との間の時間差)などを持つ。なお、映像シーンオフセット値登録処理については後述する。また、開始点オフセットについては、(1つ又は複数のカット間映像からなる)シーンの開始点毎に設定されるので、開始点オフセットが設定されない特徴IDも存在する。
【0053】
(映像再生画面表示までのサーバ/クライアント間の処理)
次に、クライアントのユーザがコメントを参照したいと考える映像を選択してから、その映像の表示が開始されるまでの処理を図11のシーケンスチャートを参照して説明する。この処理の中で、クライアント映像とサーバ映像の対応付け、及び、クライアント映像とサーバ映像間での時間的ずれを補正するための映像シーンオフセットの設定がおこなわれる。
【0054】
まず、ステップ11_S1において、サーバがコメントを管理している映像に対応するサーバ映像IDと、キーワードファイルのセットをクライアントに送信する。そのセットをクライアントが受信し、ステップ11_C1で、クライアントはサーバ映像一覧表示を行う。ここでは、サーバの映像IDおよびその映像の内容が分かるための情報を表示する。映像の内容が分かるための情報として、ここではキーワードファイルを挙げているが、サムネイルなどの情報などを含めてもよい。
【0055】
次のステップ11_C2で、ユーザが所望のサーバ映像を選択することで、サーバにサーバ映像IDが送付される。サーバ側ではステップ11_S2で、受信したサーバ映像IDに対応するサーバ映像の映像特徴情報を検索し、送信する。
【0056】
クライアント側では、ステップ11_C3で、サーバ映像ID、キーワードファイル、総画像特徴量ファイルを受信し、そのキーワードファイルの中の情報を使って、図8のクライアントの映像DBの映像キーワードファイルパスで管理するファイルを全文検索することで一致するキーワードファイルを持つクライアントの映像IDの候補を検出し、提示する。サーバ映像IDに対応するクライアントの映像IDを検出する方法としては、上記の方法の他、総画像特徴量ファイルの各フレームの特徴量と類似する変化点(カット)を持つ映像IDの候補を見つける方法、あるいは、これら方法の両方を利用する方法等がある。
【0057】
ステップ11_C4で、その候補から最も一致する映像を自動的に選択するか、あるいは一致する映像をユーザが自ら選択することで、サーバ側とクライアント側とで内容的に一致する映像を選択する。
【0058】
選択した結果、サーバ映像IDとそれに対応するクライアント側の映像IDが得られる。その映像IDを用い、図10に示す映像インデックスDBからシーン映像時間とシーン画像特徴量ファイルのセットとクライアント映像総時間を得ることができ、それらの情報をサーバに送信する。なお、このとき、予め定義したシーンの情報(シーンの開始/終了時間等)を用いる。
【0059】
ステップ11_S3において、サーバは、クライアントから送付された情報から映像シーンオフセット計算を行う。この映像シーンオフセット計算により、クライアント側映像の特徴ID毎に、その特徴IDの時間と、その特徴IDに対応する特徴を持つサーバ側のフレームの時間との差が映像シーンオフセット値として求められる。この計算方法については後述する。
【0060】
ステップ11_S4において、サーバは、サーバ映像ID,映像ID、計算結果の映像シーンオフセット値をクライアントに送信する。ステップ11_C5において、クライアントは、映像シーンオフセット値を、該当するシーンの開始点の特徴IDと対応付けて映像インデックスDBの開始点オフセットとして登録する。
【0061】
最後に映像再生画面を表示することで、次のコメント取得および映像コメント同期再生の準備が完了する(ステップ11_C6)。
【0062】
なお、図11に示した処理では、サーバの映像一覧に基づき、ステップ11_C4におけるクライアント映像選択で、サーバとクライアントで内容が一致する映像を選択しているが、逆にクライアント内の映像一覧を表示し、映像IDからシーン映像時間および画像特徴量セットと映像のキーワードファイルをサーバに送り、サーバ側でキーワードファイルによる検索や、画像特徴量での検索を行うことで、サーバ側の一致する映像の候補を挙げ、その後にサーバ側の映像を選択することで、クライアントとサーバで内容的に一致する映像を選択することとしてもよい。
【0063】
(コメント取得処理)
次に、上記の処理が済んだ後のコメント取得処理について説明する。コメント取得処理を説明する前に、当該処理において使用されるコメントDBについて説明する。
【0064】
図12に、クライアント側のコメントDBの内容例を示す。(a)に示す映像情報として、クライアントの映像を一意に特定する映像ID、この映像に対応するサーバの映像を一意に特定するサーバ映像ID、当該映像の最初の変化点のオフセット値である開始点オフセット、コメントを最終的に取得した日時を保持する最終コメント取得時間、クライアントの対象映像の総時間を保持するクライアント映像総時間、サーバの対応映像の総時間であるサーバ映像総時間などを持つ。シーン情報((b)に示す)として、クライアント映像を一意に特定する映像ID、シーンID、開始特徴ID、終了特徴ID、開始特徴IDに対応する映像時間である開始時間、終了特徴IDに対応する映像時間である終了時間を持つ。これらの情報は、映像インデクシングモジュールのインデクシング後に設定可能である。
【0065】
映像情報、シーン情報と関連付けて管理するコメントとしては2種類ある。対象の映像シーンに対して、最初の話題として入力されるコメントである親コメントと、親コメントに返信する形でコメントされるタイプの子コメントの2種類である。(c)に示す親コメント情報として、クライアントの映像を一意に特定する映像ID、シーンID、親コメントを一意に特定する親コメントID、その親コメントが対象映像のどの映像再生位置に関連付けられるかのコメント時間、実際に入力されたコメントを保持するコメント、およびそのコメントが付与された日時であるコメント日時を持つ。また、(d)に示すように、子コメント情報として、クライアント映像を一意に特定する映像ID、シーンID、関連付けられる親コメント、子コメントを一意に特定する子コメントID、実際に入力されたコメントを保持するコメント、子コメントが付与された日時であるコメント日時を持つ。
【0066】
図13に、サーバ側で管理される映像時間情報と関連付けられたコメント情報を蓄積するコメントDBの内容例を示す。図13(a)に示すように、コメントの送受信を行うクライアントの情報として、クライアントかつ映像単位に返信先やオフセット設定したかどうかを管理しておくため、クライアントを一意に特定するクライアントID、クライアントへの情報の返し先になるクライアントIP、サーバ映像を一意に特定するサーバ映像ID、そのクライアントが、対応するサーバ映像IDのオフセットについて計算したかどうかの可否などを持つ。
【0067】
対象映像毎の親コメントを管理するための親コメント情報として、(b)に示すように、サーバ映像を一意に特定するサーバ映像ID、クライアント及び映像毎に親コメントを一意に特定する親コメントID、その親コメントがサーバ対象映像のどの映像再生位置に関連付けられるかのコメント時間、実際に入力されたコメントを保持するコメント、およびそのコメントが付与された日時であるコメント日時を持つ。また、(c)に示す子コメント情報として、サーバ映像を一意に特定するサーバ映像ID、関連付けられる親コメント、子コメントを一意に特定する子コメントID、実際に入力されたコメントを保持するコメント、子コメントが付与された日時であるコメント日時を持つ。
【0068】
次に、図14に示すコメント取得処理シーケンスを参照して、クライアント側でのコメント取得処理を説明する。図11の処理が終了した状態下で、まずステップ14_C1で、クライアントは、対象映像のサーバ映像ID、最終コメント取得時間を送信する。その映像に対して初めて取得を要求する場合は、最終コメント取得時間が空で送信される。
【0069】
ステップ14_S1で、サーバは、その送信されたサーバ映像IDに基づき、図13に示すコメントDBの情報から最終コメント取得時間以降のものを検索し、サーバ映像ID、親コメントと対象映像時間(コメント時間)のセット、親コメントID+子コメントのセットをクライアントに送信する。最終コメント取得時間が空の場合は、対応する全コメントを送信することとなる。
【0070】
ステップ14_C2では、親コメントのサーバ映像での映像時間(コメント時間のこと、以下、対象映像時間という)をクライアントの映像での対応する映像時間に変換する処理を行う。
【0071】
まず受信したデータのサーバ映像IDに対応する映像IDを検出する。そして、その映像IDにおける一の特徴IDの開始点オフセットを対象映像時間から減算し、減算後の対象映像時間が含まれ(シーンの開始時間<=減算後の対象映像時間<=シーンの終了時間を満たす)、なおかつ、上記一の特徴IDを開始点に持つシーンを見つける処理を、そのようなシーンが見つかるまで、開始点オフセットを持つ各特徴IDについて行う。そして、そのようなシーンが見つかった際に使用した“減算後の対象映像時間”が、クライアントにおけるその親コメントのコメント時間(その映像の開始からの時間)である。
【0072】
これを繰り返すことで、全親コメントの時間変換処理が完了する。最後に親コメントをクライアントのコメントDBに登録し、それと関連付けて子コメントを登録することでサーバからのコメントの取得が完了する。
【0073】
(映像コメント同期再生処理)
次に、図15を参照して、映像コメント同期再生処理について説明する。なお、この処理を実行する映像コメント同期再生モジュールで保持するデータの項目を図16に示す。
【0074】
図15のステップ401にて、映像コメント再生処理の初期化を行う。より詳細には、コメントDBの該当する映像IDに関するシーン情報(図12(b))を読み込み、また、図16に示すモジュールで保持する現再生シーン番号がセットされていない場合は、現再生シーン番号を0にセットし、現再生時間を0にセットする。
【0075】
ステップ402において、再生開始が指示されると、ステップ403にて現再生シーン番号をインクリメントする。ステップ404にて、映像再生が最後かをチェックしている。終了していない場合は、ステップ405にて、現再生シーンの開始時間と終了時間の間の親コメントとその親コメントと関連付いた子コメントをコメントDBから取得し、映像コメント同期再生のコメント領域に表示する。ステップ406、407において、一定間隔でシーンが切り替わったかチェックして切り替わった場合はステップ403に戻り、繰り返す。つまり、ステップ406において、現再生時間に再生時間をセットし、それが現再生シーン番号のシーン情報の終了時間と一致したか、または終了時間を過ぎたかをチェックし、Noであればステップ407にて一定期間(次のチェックタイミング)までそのまま映像再生し、コメント表示を保ち、ステップ406でYesであれば現再生シーン番号をインクリメントする。
【0076】
このステップ406、407では一定間隔でシーン切り替わりをチェックしているが、映像データにシーン切り替えポイントを予め設定でき、再生中に検知できる場合や映像プレーヤが設定された映像再生ポイントを再生中に検知できる場合は、その機能で切り替えポイントを検知し、ステップ403−405の処理を繰り返してもよい。
【0077】
最後のシーンの再生が終わったら、ステップ408にて、現再生時間=0、現再生シーン番号=0にリセットする。
【0078】
この映像同期再生を実現するクライアントでの画面例を図17に示す。またコメント領域の切り替えるタイミングであるコメントDBのシーン情報(図12(b))の設定は、予めクライアント利用者が、図18のように各シーンの開始点を設定することで設定可能であり、それを図12(b)のシーン情報に反映することで実現できる。
【0079】
(コメント入力、送信、更新処理)
次に、図19のシーケンス図を参照して、コメント入力、送信、その結果を反映するためのコメントDBの更新処理について説明する。
【0080】
まずステップ19_C1にて、コメント入力ボタンクリックにてコメント入力を開始する。ステップ19_C2にて、映像停止し、ステップ19_C3にて、コメント入力画面表示を行うことで、コメント入力できる準備ができる。
【0081】
ステップ19_C4にて、コメント入力に対応する映像時間をサーバの対象映像の映像時間に変換する。親コメントの場合は、図16に示す映像コメント同期再生モジュールで保持する現再生時間情報を取得し、子コメントの場合は対応付けられた親コメントのコメント時間をコメントDBから取得する。そして、その対象映像時間が含まれる(シーン開始時間<=対象映像時間<=シーン終了時間を満たす)シーンを見つけ、そのシーンの開始特徴IDの開始点オフセットを取得する。この開始点オフセットを対象映像時間の値に加算することでサーバの映像におけるこの親コメントと対応する映像時間を計算することができる。
【0082】
ステップ19_C5にて、サーバ映像ID、対象となる映像時間、最終コメント取得時間、親コメントまたは子コメントと親コメントIDのセットをサーバに送信する。ステップ19_S1にて、サーバは、受信したコメントに親コメントID、子コメントIDを新たに付与して、サーバのコメントDBに登録する。次にステップ19_S2にて、図14のステップ14_S1と同様の処理、ステップ19_C6にて、図14のステップ14_C2と同様の処理、ステップ19_C7で図14のステップ14_C3と同様の処理を行うことで、クライアント側のコメントも同時に更新される。
【0083】
(画像特徴量計算、映像シーンオフセット計算について)
次に、これまでに説明した処理の中で用いられる画像特徴量計算、映像シーンオフセット計算の具体的な方法例について説明する。なお、本発明を実施するにあたって、画像特徴量計算の方法は以下で説明する方法に限定されるわけではなく、色の微妙な差を補完できる画像特徴量計算方法であれば他の方法を使用することもできる。
【0084】
まず、図20を参照して画像特徴量計算について説明する。この画像特徴量計算は、サーバ、クライアントで共通である。本実施の形態では、色画像特徴を全体に対する比率で計算する方法を用いている。この方法を用いることにより、サーバ映像とクライアント映像が同一の画面サイズでない場合でも、その相違を吸収できる。但し画像ヒストグラムを使って、画面サイズを同等のものに正規化して、比較する方法を用いてもよい。
【0085】
まずステップ501にて、対象画像の映像ID、フレーム時間、対象画像自体および対象画像からiフレーム分の対象映像IDのフレーム画像の読み込みを行う。クライアントの場合は、対象画像はカットでの画像であり、サーバでは各フレーム画像が対象となる。そしてiフレーム分対象映像から余分に抽出し、読み込みを行う。ステップ1502で、対象画像およびiフレーム分のフレーム画像からMotion History Imageを作成する。Motion History Imageは、次式で求められる。
H(x,y,t)=τ (D(x,y,t)=1の場合)(D(x,y,t)はモーションの領域を示す)
=max(0,H(x,y,t-1)-1) (その他)
このMotion History Imageでは最近動いたものほど輝度が高くなるようになり、動きを一枚の画像で表現できる。
【0086】
ステップ503にて、まず対象画像に対して、各色をカウントする変数M[i](1…n)を準備し(256色ではn=256)、全て0をセットする。対象画像のピクセルを順に読み込み、各ピクセルの色kを取得し、変数M[k]の値を1増やす。それを全ピクセルに対して行う。
ステップ504にて、全てのM[i](i=1..n)の和を各M[i]で割ることで、各色特徴毎に占める割合が計算でき、M[i]が0以外の結果のセットを対象画像の画像特徴量として保持する。ステップ505、506では、Motion History Imageに対して、ステップ503、504と同様の処理を行い、それぞれの結果値をまとめて返す。
結果の簡単な具体例を図21(a)に示す。また、画像特徴量計算の結果、サーバ側の総画像特徴量ファイルに記述されるデータ例を図21(b)に示し、クライアント側の画像特徴量ファイルに記述されるデータ例を図21(c)に示す。なお、本実施の形態では、画像特徴量に関し、色の特徴量の値ではなく、割合で表現している(赤0.8,青0.2等)。同じ内容の画像であれば画像間でサイズが異なっていても、この割合は近い値になる。よって、キャプチャーカードや環境の違いにより録画した映像間でのサイズが異なっていても、映像間での同じ箇所を特定できる。
【0087】
次に、図22を参照して映像シーンオフセット計算について説明する。なお、この映像シーンオフセット計算は、図11に示すステップ11_S3において、サーバが、サーバ映像ID、シーン映像時間、シーン画像特徴量ファイル等を受信した後に行う処理である。
【0088】
ステップ601にて、クライアントから送信された映像ID、シーン映像時間+画像特徴量の組を全て読み込み、画像特徴量の総数Nを求める。また処理カウンタを0にセットする。また、シーン間の時間間隔データを保持する。なお、シーン映像時間とは、そのシーンの開始時間(映像の開始からの時間)である。
【0089】
ステップ602にて、処理カウンタをインクリメントする。ステップ603にて、処理カウンタと総数Nを比較することで処理カウンタ<=総数Nであるかどうかをチェックし、シーンの終わりまできたかをチェックする。ステップ604にて、処理カウンタと一致する特徴IDのシーン映像時間の画像特徴量を読み込む。
【0090】
また、ステップ605にて、対象のサーバ映像IDに対応する映像DBの中の総画像特徴量ファイルパスを取得し、その総画像特徴量ファイルを読み込み、前の処理で読み込んだ画像特徴量との距離を全て計算し、対象画像およびMotion History Imageの場合の2つの距離の和で一番小さいものが閥値Kより小さい場合には、サーバ映像IDのそのフレーム時間を取得する。閾値Kより大きい場合は、不一致と見なす。ここで、閥値Kを用いるのは、サーバ側とクライアント側で録画している場所などで違うCMが混在する場合や、映像の始めと終わりなどで双方に同じシーンが存在しない場合が考えられ、それらを対応づけしないためである。
【0091】
ここで2つの画像特徴量の距離について説明する。本実施の形態では”The Earth Mover’s Distance as a Metric for Image Retrieval” (International Journal of Computer Vision, Vol.40, No.2 pp.99-121, 2000)のEMDという方法を用いる。ここでは、M個の色を持つ画像特徴量A={(a1,Wa1), (a2,Wa2),…(am,Wam)}とn個の色を持つ画像特徴量B={(b1,Wb1),(b2,Wb2),…,(bn,Wbn)}の距離として、あるaiの色とbjの色の距離をdij=d(ai,qj)=||ai-bj||〜2とする。AからBへ状態を遷移させる輸送するという考えと同一となる。Aを供給地、Bを需要地として、dijを単位輸送コストに対応づけて、AからBへのフローF=|fij|を決定する以下の輸送問題として捉える。
その輸送結果のWORK(A,B)=Σ(i=1,.,m) Σ(j=1,.,n)dij fijを最小化する問題と捉える。
その制約条件として、以下の条件がある。
fij>=0 (1<=i<=m,1<=j<=n)
Σ(j=1,..,n)fij<=Wai,
Σ(i=1,..,m)fij<=Wbi,
Σ(i=1,..,m)Σ(j=1,..,n)fij=min(Σ(i=1,..,m)Wai, Σ(j=1,..,n)Wbi)
WORK(A,B)は総輸送コストを表すため、最羅的な距離は、
WORK(A,B)/Σ(i=1,..,m)Z(j=1,..,n)fij
で計算できる。
ステップ605で、対象となっているクライアントの特徴IDのカットに対応するサーバ映像のフレームが決定し、そのフレームの時間(サーバの映像の開始からの時間)が取得できたため、そのフレーム時間から特徴IDの映像時間(開始時間)を減算し、オフセット値を求める。ステップ602−605を繰り返すことで、シーンを構成する全特徴IDにおけるオフセット値を求め、最後にステップ606にて返却する。
【0092】
クライアント側の映像を使って、コメント交換する際に各クライアントの同一内容の映像の総再生時間の差などが問題となってくる。本実施の形態で説明した技術では、サーバの映像とクライアントの映像の映像位置の対応付けにより、クライアント間の対応付けも行えることとなる。
【0093】
また、各クライアントが使用する機器(キャプチャボード等)の相違等により、映像の色の微妙な差が生じるが、上記のように場面変化点での画像の色と動きによる画像特徴量を組み合わせて使うことで、サーバ、クライアント間の同じ内容の映像においての色の微妙な差を動きの特徴量と組み合わせることで補完している。つまり、色に微妙な差があっても、同一のカットを識別することが可能になる。またサーバ、クライアント間の同じ内容の映像においての映像の長さの差は、各場面変化点におけるオフセット値を持つことで、同一内容のポイントを合わせることができることにより解決できる。
【0094】
なお、本発明は、上記の実施の形態に限定されることなく、特許請求の範囲内において、種々変更・応用が可能である。
【図面の簡単な説明】
【0095】
【図1】本発明の実施の形態の概要を説明するための図である。
【図2】本発明の実施の形態のシステム構成図である。
【図3】本発明の実施の形態における処理の流れを示すフローチャートである。
【図4】各装置の構成を示す図である。
【図5】サーバにおける映像登録処理を示すフローチャートである。
【図6】サーバの映像DBの内容例である。
【図7】クライアントにおける映像収集処理を示すフローチャートである。
【図8】クライアントの映像DBの内容例である。
【図9】クライアントの映像インデクシング処理を示すフローチャートである。
【図10】クライアントの映像インデックス情報DBの内容例である。
【図11】映像再生画面表示までのサーバ・クライアント間の処理シーケンスである。
【図12】クライアントのコメントDBの内容例である。
【図13】サーバのコメントDBの内容例である。
【図14】クライアントによるコメント取得のための処理シーケンスである。
【図15】映像コメント同期再生処理を示すフローチャートである。
【図16】クライアントの映像コメント同期再生モジュールで保持するデータの内容例である。
【図17】映像同期再生を実現するクライアントでの画面例である。
【図18】シーン情報の設定を示す図である。
【図19】コメント入力、送信、更新処理を示すシーケンスチャートである。
【図20】画像特徴量計算処理を示すフローチャートである。
【図21】画像特徴量データの例を示す図である。
【図22】映像シーンオフセット計算処理を示すフローチャートである。
【符号の説明】
【0096】
1 サーバ
3 クライアント管理モジュール
4 映像オフセット計算モジュール
5 データ送受信モジュール
6 コメント・画像特徴量管理モジュール
13 コメント・画像特徴量管理DB
14 映像DB
2 クライアント
21 映像収集モジュール
22 映像インデクシングモジュール
23 シーン管理モジュール
24 コメント管理モジュール
25 データ送受信モジュール
26 映像コメント同期再生モジュール
31 映像DB
32 映像インデックス情報DB
33 コメントDB

【特許請求の範囲】
【請求項1】
サーバ映像を蓄積するサーバ装置と、サーバ映像に対応するクライアント映像を蓄積する複数のクライアント装置とがネットワークを介して接続されたシステムにおける映像情報交換方法であって、
第1のクライアント装置が、自装置が蓄積するクライアント映像に対応するサーバ映像の識別情報と、そのクライアント映像において予め定められた映像区間毎の開始時間と画像特徴量の組を含む情報をサーバ装置に送信するステップと、
サーバ装置が、前記画像特徴量と、サーバ映像のフレーム毎の画像特徴量を用いることにより、第1のクライアント装置から受信した映像区間の開始時間毎に、映像区間の開始時間に対応するサーバ映像のフレームを検出し、そのフレームの時間と当該映像区間の開始時間との差をオフセット値として求め、それを第1のクライアント装置に送信するステップと、
第1のクライアント装置が、クライアント映像を再生中にユーザからの映像情報の入力を受け、その映像情報入力の時間と、その時間に対応する映像区間のオフセット値とから、当該クライアント映像に対応するサーバ映像における当該映像情報の時間位置を算出し、その時間位置と映像情報を含む情報をサーバ装置に送信し、サーバ装置が、当該映像情報と時間位置をサーバ映像と対応付けて蓄積するステップと、
第2のクライアント装置が、自装置のクライアント映像の再生を行う際に、そのクライアント映像に対応するサーバ映像に対応付けてサーバ装置に蓄積されている映像情報と時間位置とを含む情報をサーバ装置から受信し、第2のクライアント装置が保持するオフセット値と当該時間位置とを用いて、第1のクライアント装置で映像情報が入力された場面に対応する場面で、当該映像情報を表示するステップと
を有することを特徴とする映像情報交換方法。
【請求項2】
前記画像特徴量は、色の特徴と動きの特徴を含む特徴量である請求項1に記載の映像情報交換方法。
【請求項3】
サーバ装置が、ユーザにより選択されたサーバ映像のキーワードを含む特徴情報を第1のクライアント装置に送信するステップと、
第1のクライアント装置が、サーバ映像のキーワードとクライアント映像のキーワードを用いる方法、及び画像特徴量を用いる方法のうちのいずれか1つ又は両方の方法を用いることにより、選択されたサーバ映像に対応するクライアント映像の候補を検出するステップと
を有することを特徴とする請求項1に記載の映像情報交換方法。
【請求項4】
サーバ映像を蓄積するサーバ装置と、サーバ映像に対応するクライアント映像を蓄積する複数のクライアント装置とがネットワークを介して接続されたシステムにおいて使用されるサーバ装置であって、
クライアント装置から、そのクライアント装置が蓄積するクライアント映像に対応するサーバ映像の識別情報と、クライアント映像において予め定められた映像区間毎の開始時間と画像特徴量の組を含む情報を受信する手段と、
前記画像特徴量と、サーバ映像のフレーム毎の画像特徴量を用いることにより、クライアント装置から受信した映像区間の開始時間毎に、映像区間の開始時間に対応するサーバ映像のフレームを検出し、そのフレームの時間と当該映像区間の開始時間との差をオフセット値として求め、それをクライアント装置に送信する手段と、
クライアント装置から、当該クライアント装置におけるクライアント映像再生中に入力された映像情報と、オフセット値を用いて求められたその映像情報のサーバ映像における時間位置とを含む情報を受信し、その映像情報と時間位置をサーバ映像と対応付けて蓄積する手段と
を有することを特徴とするサーバ装置。
【請求項5】
前記画像特徴量は、色の特徴と動きの特徴を含む特徴量である請求項4に記載のサーバ装置。
【請求項6】
サーバ映像を蓄積するサーバ装置と、サーバ映像に対応するクライアント映像を蓄積する複数のクライアント装置とがネットワークを介して接続されたシステムにおけるクライアント装置であって、
自装置が蓄積するクライアント映像に対応するサーバ映像の識別情報と、そのクライアント映像において予め定められた映像区間毎の開始時間と画像特徴量の組を含む情報をサーバ装置に送信する手段と、
クライアント映像の映像区間の開始時間と、これに対応するサーバ映像のフレームの時間との差であるオフセット値をサーバ装置から受信し、映像区間毎に蓄積する手段と、
クライアント映像を再生中にユーザからの映像情報の入力を受け、その映像情報入力の時間と、その時間に対応する映像区間のオフセット値とから、当該クライアント映像に対応するサーバ映像における当該映像情報の時間位置を算出し、その時間位置と映像情報を含む情報をサーバ装置に送信する手段と、
クライアント映像の再生を行う際に、そのクライアント映像に対応するサーバ映像に対応付けてサーバ装置に蓄積されている他のクライアント装置の映像情報と時間位置とを含む情報をサーバ装置から受信し、自装置が蓄積するオフセット値と当該時間位置とを用いて、受信した映像情報が他のクライアント装置で入力された場面に対応する場面で、当該映像情報を表示する手段と
を有することを特徴とするクライアント装置。
【請求項7】
前記画像特徴量は、色の特徴と動きの特徴を含む特徴量である請求項6に記載のクライアント装置。

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

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate

【図21】
image rotate

【図22】
image rotate


【公開番号】特開2007−318688(P2007−318688A)
【公開日】平成19年12月6日(2007.12.6)
【国際特許分類】
【出願番号】特願2006−148891(P2006−148891)
【出願日】平成18年5月29日(2006.5.29)
【出願人】(000004226)日本電信電話株式会社 (13,992)
【Fターム(参考)】