(57)【特許請求の範囲】
【請求項１】
計算処理システムのプロセッサが、
ａ．物品のビデオを前記物品の３次元モデルに登録し、
ｂ．前記ビデオを複数のビデオセグメントにセグメント化し、
ｃ．前記複数のビデオセグメントの各々と、前記ビデオセグメントに撮影された前記物品の前記３次元モデルにおける位置とを対応付け、
ｄ．前記物品の前記３次元モデルのビューを表示するグラフィカル・ユーザ・インタフェースを前記計算処理システムの表示装置上に生成し、
ｅ．ユーザによる前記物品の前記３次元モデルの表示されたビュー上の場所を選択するイベントの検出に応答して、選択された前記場所に対応付けられた前記ビデオセグメントを再生する、
ビデオ再生方法であって、
ｂにおいて、前記ビデオが、時間及びカメラ向きメタデータに少なくとも基づきセグメント化される、ビデオ再生方法。
【請求項２】
ａにおいて、前記ビデオが、前記ユーザにより指定された登録ポイントを使用して、前記物品の前記３次元モデルに登録される、請求項１に記載のビデオ再生方法。
【請求項３】
ａにおいて、前記ビデオが、前記ビデオと前記３次元モデルとが適合することにより、前記物品の前記３次元モデルに登録される、請求項１に記載のビデオ再生方法。
【請求項４】
プロセッサと、
表示装置と、
物品のビデオに関連して実行可能な命令セットを記憶するメモリと、
を備え、
前記命令セットが、
ａ．前記ビデオを前記物品の３次元モデルに登録するための命令と、
ｂ．前記ビデオを複数のビデオセグメントにセグメント化するための命令と、
ｃ．前記複数のビデオセグメントの各々と、前記ビデオセグメントに撮影された前記物品の前記３次元モデルにおける位置とを対応付けるための命令と、
ｄ．前記物品の前記３次元モデルのビューを表示するグラフィカル・ユーザ・インタフェースを前記表示装置に生成するための命令と、
ｅ．ユーザによる前記物品の前記３次元モデルの表示されたビュー上の場所を選択するイベントの検出に応答して、選択された前記場所に対応付けられた前記ビデオセグメントを再生するための命令と、
を含む、
計算処理システムであって、
ｂにおいて、前記ビデオが、時間及びカメラ向きメタデータに少なくとも基づきセグメント化される、計算処理システム。
【請求項５】
計算処理システムのプロセッサに、
ａ．物品のビデオを前記物品の３次元モデルに登録させ、
ｂ．前記ビデオを複数のビデオセグメントにセグメント化し、
ｃ．前記複数のビデオセグメントの各々と、前記ビデオセグメントに撮影された前記物品の前記３次元モデルにおける位置とを対応付けさせ、
ｄ．前記物品の前記３次元モデルのビューを表示するグラフィカル・ユーザ・インタフェースを前記計算処理システムの表示装置上に生成させ、
ｅ．ユーザによる前記物品の前記３次元モデルの表示されたビュー上の場所を選択するイベントの検出に応答して、選択された前記場所に対応付けられた前記ビデオセグメントを再生させる、
ビデオ再生プログラムであって、
ｂにおいて、前記ビデオが、時間及びカメラ向きメタデータに少なくとも基づきセグメント化される、ビデオ再生プログラム。
【請求項６】
ａにおいて、前記ビデオが、前記ユーザにより指定された登録ポイントを使用して、前記物品の前記３次元モデルに登録される、請求項５に記載のビデオ再生プログラム。
【請求項７】
ａにおいて、前記ビデオが、前記ビデオと前記３次元モデルとが適合することにより、前記物品の前記３次元モデルに登録される、請求項５に記載のビデオ再生プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
開示される実施形態は、一般にビデオコンテンツをナビゲートするための方法及びシステムに関し、より具体的にはビデオ用のナビゲーション可能な空間的オーバービューを作成及び使用するための方法及びシステムに関する。
【背景技術】
【０００２】
ビデオはナビゲートすることが困難であることが広く知られている。タイムラインが標準的なビデオナビゲーション制御手段であり、スライダ内のカーソルの場所をビデオ内の時間的位置にリンクする。前述のナビゲーション制御手段が提供する抽象化は、ユーザが、ビデオ内部の異なる時点に即座にジャンプし、かつビデオの中で自分が現在どの時点にいるかという認識を維持することが可能であることを含む、多くの理由のために有用である。しかしながら、多くの入門ビデオ及び教育用ビデオでは、ユーザがどこにいるかを知ることがまったく同じように重要であり得る。ユーザがビデオ内で対象を直接ナビゲートすることが可能になるある一定のインタフェースが存在するが、ユーザがタイムラインビデオ制御手段を使用して時間的にナビゲートすることができるのと同じ方法で、ユーザがビデオを空間的にナビゲートすることができるようになる抽象化に的を絞る解決策が存在しない。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】米国特許第８，２６１，２００号明細書
【特許文献２】米国特許第８，２８０，１５８号明細書
【発明の概要】
【発明が解決しようとする課題】
【０００４】
したがって、従来のビデオナビゲーション技法は、多くの入門ビデオ及び教育用ビデオと同様に、空間ナビゲーションの解決策がないために不十分であり、ユーザが時間的抽象化（すなわち、標準的なタイムラインインタフェース）ではなく、空間的抽象化を使用してビデオコンテンツをナビゲートすることがより望ましい。
【課題を解決するための手段】
【０００５】
本発明の第１の態様はビデオ再生方法であって、計算処理システムのプロセッサが、ａ．媒体に追加されるビデオのコンテンツを少なくとも１つのコンテンツクラスタにクラスタ化し、ｂ．前記ビデオを少なくとも１つのビデオセグメントにセグメント化し、ｃ．前記少なくとも１つのコンテンツクラスタを前記少なくとも１つのビデオセグメントにマッピングし、ｄ．クラスタ化された前記コンテンツを備えるオーバービュー画像の少なくとも部分を表示するグラフィカル・ユーザ・インタフェースを前記計算処理システムの表示装置上に生成し、ｅ．ユーザが前記オーバービュー画像上の前記少なくとも１つのコンテンツクラスタを選択するイベントの検出に応答して、選択された前記コンテンツクラスタに関連する前記ビデオセグメントを再生する。
【０００６】
本発明の第２の態様は、第１の態様のビデオ再生方法であって、前記プロセッサが、さらに、前記ビデオを使用して、少なくとも１つの媒体スクロールイベントを検出し、検出された前記少なくとも１つの媒体スクロールイベントを前記ビデオの少なくとも１つの時点と関連づける。
【０００７】
本発明の第３の態様は、第２の態様のビデオ再生方法であって、前記オーバービュー画像の表示された部分が、対応する媒体スクロールイベントに対応する。
【０００８】
本発明の第４の態様は、第３の態様のビデオ再生方法であって、前記プロセッサが、さらに、前記ユーザによる前記オーバービュー画像の表示された部分を選択するイベントの検出に応答して、前記対応する媒体スクロールイベントに関連する前記時点から前記ビデオを再生する。
【０００９】
本発明の第５の態様は、第２〜第４のいずれか態様のビデオ再生方法であって、前記オーバービュー画像が、検出された前記少なくとも１つの媒体スクロールイベントに関連する少なくとも１つのスクロール量に基づき前記ビデオの複数のフレームから作成される。
【００１０】
本発明の第６の態様は、第１〜第５のいずれか態様のビデオ再生方法であって、ａが、追加される前記コンテンツの部分を含む前記媒体上の空間領域を取り囲むバウンディングボックスの場所に基づき実施される。
【００１１】
本発明の第７の態様はビデオ再生方法であって、計算処理システムのプロセッサが、ａ．物品のビデオを前記物品の３次元モデルに登録し、ｂ．前記ビデオを複数のビデオセグメントにセグメント化し、ｃ．前記複数のビデオセグメントの各々を前記物品の前記３次元モデルに連携し、ｄ．前記物品の前記３次元モデルのビューを表示するグラフィカル・ユーザ・インタフェースを前記計算処理システムの表示装置上に生成し、ｅ．ユーザによる前記物品の前記３次元モデルの表示されたビュー上の場所を選択するイベントの検出に応答して、選択された前記場所に関連する前記ビデオセグメントを再生する。
【００１２】
本発明の第８の態様は、第７の態様のビデオ再生方法であって、ａにおいて、前記ビデオが、前記ユーザにより指定された登録ポイントを使用して、前記物品の前記３次元モデルに登録される。
【００１３】
本発明の第９の態様は、第７の態様のビデオ再生方法であって、ａにおいて、前記ビデオが、前記ビデオと前記３次元モデルとが適合することにより、前記物品の前記３次元モデルに登録される。
【００１４】
本発明の第１０の態様は、第７〜第９のいずれかの態様のビデオ再生方法であって、ｂにおいて、前記ビデオが、時間及びカメラ向きメタデータに少なくとも基づきセグメント化される。
【００１５】
本発明の第１１の態様は、第７〜第９のいずれかの態様のビデオ再生方法であって、ｂにおいて、前記ビデオが、時間及び前記ビデオのコンテンツに少なくとも基づきセグメント化される。
【００１６】
本発明の第１２の態様は計算処理システムであって、プロセッサと、表示装置と、物品のビデオに関連して実行可能な命令セットを記憶するメモリと、を備え、前記命令セットが、ａ．前記ビデオを前記物品の３次元モデルに登録するための命令と、ｂ．前記ビデオを複数のビデオセグメントにセグメント化するための命令と、ｃ．前記複数のビデオセグメントの各々を前記物品の前記３次元モデルと連携させるための命令と、ｄ．前記物品の前記３次元モデルのビューを表示するグラフィカル・ユーザ・インタフェースを前記表示装置に生成するための命令と、ｅ．ユーザによる前記物品の前記３次元モデルの表示されたビュー上の場所を選択するイベントの検出に応答して、選択された前記場所に関連する前記ビデオセグメントを再生するための命令と、を含む。
【００１７】
本発明に関連する追加の態様が、以下の説明で一部示され、説明から一部明らかになるであろう、または本発明の実施により習得されてもよい。本発明の態様が、要素及びさまざまな要素の組合せ及び態様を用いて実現及び達成されてもよく、態様が、特に以下の詳細な説明及び添付の特許請求の範囲で指摘されてもよい。
【００１８】
前述の説明及び以下の説明の両方が、単なる例示及び説明のためであり、特許請求される本発明または本発明の用途を制限することが決して意図されていないことを理解されたい。
【００１９】
本明細書に組み入れられ、かつ本明細書の一部を構成する添付図面は、本発明の実施形態を具体的に示し、本説明と共に本発明の技法の原理を説明し、例示するのに役立つ。
【発明の効果】
【００２０】
空間的抽象化を使用してビデオコンテンツをナビゲートすることができる。
【図面の簡単な説明】
【００２１】
【図１】ビデオ取得を実施し、かつビデオに対する空間的オーバービューを作成し、かつ作成された空間的オーバービューを使用してユーザがビデオ再生中にビデオをナビゲートすることを可能にするための、コンピュータ化されたシステムの例示的一実施形態を示した図である。
【図２】ビデオに対する空間的オーバービューを作成し、かつ作成された空間的オーバービューを使用してユーザがビデオ再生中にビデオをナビゲートすることを可能にするための、コンピュータ化されたデスクトップシステムの例示的一実施形態を示した図である。
【図３】いくつかの２次元コンテンツに対するオーバービューを生成するための計算処理方法の例示的一実施形態を示した図である。
【図４】オーバービュー画像を使用してビデオ内部をナビゲートするためのユーザインタフェースの例示的一実施形態を示した図である。
【図５】ビデオ取得アプリケーションのグラフィカル・ユーザ・インタフェースの例示的一実施形態を示した図である。
【図６】物品のビデオを取り込んで処理し、かつビデオナビゲーションのために使用可能なビデオオーバービューを生成するための方法の例示的一実施形態を示した図である。
【図７】物品の各側面に対応するビデオフレームを選択するための方法の例示的一実施形態を示した図である。
【図８】作成されたビデオオーバービューを使用してビデオをナビゲートするためのグラフィカル・ユーザ・インタフェースの例示的一実施形態を示した図である。
【図９】作成されたビデオオーバービューを使用してビデオをナビゲートするためのグラフィカル・ユーザ・インタフェースの別の例示的実施形態を示した図である。
【図１０】作成されたビデオオーバービューを使用してビデオをナビゲートするためのグラフィカル・ユーザ・インタフェースのさらに別の例示的実施形態を示した図である。
【図１１】オーバービュー画像が３次元立方体に貼り付けられたグラフィカル・ユーザ・インタフェースの例示的一実施形態を示した図である。
【図１２】対応する３次元モデルが利用可能であるときに物品のビデオを処理するための方法の例示的一実施形態を示した図である。
【図１３】ビデオ内に描かれた物品の３次元モデルに基づくオーバービューを使用して、ビデオをナビゲートするためのグラフィカル・ユーザ・インタフェースの例示的一実施形態を示した図である。
【図１４】ビデオ内に描かれた物品の３次元モデルに基づくオーバービューを使用して、ビデオをナビゲートするためのグラフィカル・ユーザ・インタフェースの別の例示的実施形態を示した図である。
【発明を実施するための形態】
【００２２】
以下の詳細な説明では、１つまたは複数の添付図面が参照され、添付図面では、同様の機能要素が同様の番号で指定される。前述の添付図面は、限定としてではなく例示として、本発明の原理に整合する特定の実施形態及び実装形態を示す。これらの実装形態は、当業者が本発明を実施することが可能になるように十分詳細に説明され、他の実装形態が利用されてもよいこと、及び本発明の範囲及び思想を逸脱することなくさまざまな要素の構造的変更及び／または置換が行われてもよいことを理解されたい。したがって、以下の詳細な説明は、限定される意味で解釈されるべきではない。追加で、説明されるような本発明のさまざまな実施形態が、汎用コンピュータ上で動作するソフトウェアの形態で、専用ハードウェアの形態で、またはソフトウェアとハードウェアとの組合せで実装されてもよい。
【００２３】
本発明の概念の一態様によれば、基になるコンテンツの表現を再構成し、かつオーバービュー内のポイントからビデオ内の特定のポイントにリンクすることにより、特定のタイプのビデオに対するオーバービューを生成するシステム及び方法が提供される。一実施形態では、コンテンツが電子ホワイトボードに関する教育用ビデオなど、２次元であるときに、２次元オーバービューが生成される。別の実施形態では、コンテンツが特定の３次元物品の使用法を例示する入門ビデオなど、３次元であるときに、３次元オーバービューが生成される。
【００２４】
１つまたは複数の実施形態では、異なるタイプの入門ビデオ及び教育用ビデオ用に３つの異なるタイプのナビゲーション可能オーバービューを作成する機構が提供される。２次元オーバービューは、スクリーンキャスト、ホワイトボードを使った講義、及び他の平坦なコンテンツで有用であるが、３次元オーバービューは、触知できる物品の実演に、より適合している。物品の３次元モデルが利用可能であるとき、及び利用可能ではないときに、２つの異なる手法が使用される。第１の手法では、モデルが利用可能であるとき、ビデオセグメントが３次元モデル上のビデオセグメントの対応するポイントに直接リンクされる。しかしながら、モデルが利用可能ではないとき、取り込まれたビデオからおおよそのオーバービューが特定のメタデータと共にまず作成される。
【００２５】
図１は、ビデオ取得を実施し、かつビデオの空間的オーバービューを作成し、かつ作成された空間的オーバービューを使用してユーザがビデオ再生中にビデオをナビゲートすることが可能になるための、計算処理システム１００の例示的一実施形態を示す。１つまたは複数の実施形態では、計算処理システム１００は、移動用計算処理装置、たとえばスマートフォン、携帯情報端末（ＰＤＡ）、またはタブレットコンピュータのフォームファクタの範囲内で実装されてもよく、これらの移動用計算処理装置のすべてが市販され、当業者によく知られている。代替の一実施形態では、計算処理システム１００は、ラップトップコンピュータまたはノートブックコンピュータに基づき実装されてもよい。さらに、代替の一実施形態では、計算処理システム１００は、電子書籍（またはｅ−ｂｏｏｋ）リーダなどのある一定の専用機能を備える電子デバイスの中に組み入れられた組込システムであってもよい。さらに代替の一実施形態では、計算処理システム１００は、同じく当業者によく知られている拡張現実感ヘッド・マウント・ディスプレイ（ＨＭＤ）・システムの一部として実装されてもよい。
【００２６】
計算処理システム１００は、計算処理システム１００のさまざまなハードウェア構成要素経由でまたはこれらの構成要素間で情報を伝達するためのデータバス１０４または相互接続機構もしくは通信機構と、情報を処理し他の計算及び制御のタスクを実施するための、データバス１０４と結合した中央処理装置（ＣＰＵまたは単にプロセッサ）１０１とを含んでもよい。計算処理システム１００はまた、さまざまな情報だけでなくプロセッサ１０１により実行される命令も記憶するための、データバス１０４に結合されたメモリ１１２、たとえばランダム・アクセス・メモリ（ＲＡＭ）または他のダイナミック記憶装置を含む。メモリ１１２はまた、永続的記憶装置、たとえば磁気ディスク、光ディスク、半導体フラッシュ・メモリ・デバイス、または他の不揮発性半導体記憶デバイスを含んでもよい。
【００２７】
１つまたは複数の実施形態では、メモリ１１２はまた、プロセッサ１０１による命令実行中、一時的変数、または他の中間情報を記憶するために使用されてもよい。任意選択で、計算処理システム１００は、プロセッサ１０１のための静的情報及び命令、たとえば計算処理システム１００の動作に必要なファームウェア、基本入出力システム（ＢＩＯＳ）だけでなく計算処理システム１００のさまざまな構成パラメータを記憶するために、データバス１０４に結合された読出専用メモリ（ＲＯＭまたはＥＰＲＯＭ）１０２または他の静的記憶装置をさらに含んでもよい。
【００２８】
１つまたは複数の実施形態では、計算処理システム１００は、計算処理システム１００のユーザにさまざまな情報を表示するための、同じくデータバス１０４に結合されてもよい表示装置１０９を組み入れてもよい。代替の一実施形態では、表示装置１０９は、グラフィックコントローラ及び／またはグラフィックプロセッサ（図示せず）に関連づけられてもよい。表示装置１０９は、たとえば両方とも当業者によく知られている薄膜トランジスタ（ＴＦＴ）技術または有機発光ダイオード（ＯＬＥＤ）技術を使用して製造された液晶表示装置（ＬＣＤ）として実装されてもよい。さまざまな実施形態では、表示装置１０９は、計算処理システム１００の残りの構成要素と共に同一の一般的な筐体の中に組み入れられてもよい。代替の一実施形態では、表示装置１０９はこのような筐体の外側に置かれてもよい。
【００２９】
１つまたは複数の実施形態では、表示装置１０９は、さまざまな対象上に情報を投影するように構成されたプロジェクタまたは小型プロジェクタ、たとえばユーザが装着する眼鏡の形態で実装されてもよい。１つまたは複数の実施形態では、表示装置１０９は、ユーザの頭部に搭載可能であるように構成されてもよい。この目的のために、表示装置１０９は適切な取付けハードウェア（図示せず）を備えてもよい。
【００３０】
１つまたは複数の実施形態では、計算処理システム１００は、データバス１０４に接続され、かつ当業者によく知られている、ＭＰＥＧ−３ファイルなどのさまざまな音声ファイル、またはＭＰＥＧ−４などのさまざまなビデオファイルの音声トラックを再生するように構成された音声再生装置１２５をさらに組み入れてもよい。この目的のために、計算処理システム１００はまた、波形プロセッサもしくはサウンドプロセッサまたは類似のデバイス（図示せず）を組み入れてもよい。
【００３１】
１つまたは複数の実施形態では、計算処理システム１００は、１つまたは複数の入力デバイス、たとえばユーザの触覚コマンドを受け取るためのタッチスクリーンインタフェース１１０、さまざまな対象の静止画及びビデオを取り込むためのカメラ１１１、キーボード１０６、を組み入れてもよい。タッチスクリーンインタフェース１１０、カメラ１１１、キーボード１０６のすべては、情報をプロセッサ１０１に伝達するために、データバス１０４に結合されてもよい。情報は、画像及びビデオだけでなくユーザコマンド選択を含むがこれらに限定されない。代替の一実施形態では、入力デバイスは、ユーザにより行われたコマンド選択を計算処理システム１００に示すために使用されてもよい、ユーザの目の動きを追跡するためのシステム（図示せず）を含んでもよい。
【００３２】
１つまたは複数の実施形態では、計算処理システム１００は、計算処理システム１００の現在の地理的位置及び空間的向きに関するデータを、データバス１０４を介してプロセッサ１０１に供給するように構成された位置／向きモジュール１０３を追加で含んでもよい。地理的位置情報は、たとえば全地球測位システム（ＧＰＳ）技術ならびに／または近傍のセル電話基地局及び／もしくはＷｉ−Ｆｉホットスポットにより提供される情報を使用することなどによる他の測位技法を使用して、位置／向きモジュール１０３により得られてもよい。向き情報は、重力を含む、３軸すべてでの加速度測定値を使用して得られてもよい。１つまたは複数の実施形態では、位置／向きモジュール１０３により提供される向きメタデータが連続的に記録され、データストレージ１２２に記憶される。
【００３３】
１つまたは複数の実施形態では、計算処理システム１００は、データバス１０４に結合されたネットワークインタフェース１０５などの通信インタフェースを追加で含んでもよい。ネットワークインタフェース１０５は、Ｗｉ−Ｆｉインタフェース１０７及びセルラ・ネットワーク（ＧＳＭ（登録商標）またはＣＤＭＡ）・アダプタ１０８のうちの少なくとも１つを使用して、計算処理システム１００とインターネット１２４との間の接続を確立するように構成されてもよい。ネットワークインタフェース１０５は、計算処理システム１００とインターネット１２４との間の双方向データ通信を提供するように構成されてもよい。Ｗｉ−Ｆｉインタフェース１０７は、当業者によく知られている、８０２．１１ａ、８０２．１１ｂ、８０２．１１ｇ、及び／または８０２．１１ｎのプロトコルだけでなくブルートゥース(登録商標）プロコトルに準拠して動作してもよい。例示的一実装形態では、Ｗｉ−Ｆｉインタフェース１０７及びセルラ・ネットワーク（ＧＳＭ（登録商標）またはＣＤＭＡ）・アダプタ１０８は、さまざまなタイプの情報を表すデジタル・データ・ストリームを搬送する電気信号または電磁信号を送信及び受信する。
【００３４】
１つまたは複数の実施形態では、インターネット１２４は、一般的には１つまたは複数のサブネットワークを通して他のネットワーク資源へのデータ通信を提供する。したがって、計算処理システム１００は、インターネット１２４上のどこかに位置するさまざまなネットワーク資源に、たとえば遠隔メディアサーバ、ウェブサーバ、他のコンテンツサーバだけでなく、他のネットワークデータ記憶資源にもアクセスすることができる。１つまたは複数の実施形態では、計算処理システム１００は、ネットワークインタフェース１０５を用いて、インターネット１２４を含むさまざまな１つまたは複数のネットワークを通して、メッセージ、メディア、及びアプリケーション・プログラム・コードを含む他のデータを送信及び受信するように構成される。インターネットの例では、計算処理システム１００がネットワーククライアントの役割を果たすとき、計算処理システム１００上で実行されるアプリケーションプログラムのためのコードまたはデータを要求してもよい。同様に、計算処理システム１００は、さまざまなデータまたはコンピュータコードを他のネットワーク資源に送信してもよい。
【００３５】
１つまたは複数の実施形態では、本明細書で説明される機能は、メモリ１１２内に含まれる１つまたは複数の命令の１つまたは複数のシーケンスをプロセッサ１０１が実行することに応答して、計算処理システム１００により実装される。このような命令は、他のコンピュータ可読媒体からメモリ１１２の中に読み込まれてもよい。メモリ１１２内に含まれる命令のシーケンスを実行することにより、本明細書で説明されるさまざまな処理ステップをプロセッサ１０１が実施する。代替実施形態では、本発明の実施形態を実装するために、ソフトウェア命令の代わりに、またはソフトウェア命令と組み合わせて、配線により接続された回路が使用されてもよい。したがって、本発明の実施形態は、ハードウェア回路とソフトウェアとの任意の特定の組合せに限定されない。
【００３６】
「コンピュータ可読媒体」という用語は、本明細書で使用されるとき、実行するためにプロセッサ１０１に命令を提供することに関与する任意の媒体を指す。コンピュータ可読媒体は、本明細書で説明される方法及び／または技法のいずれかを実装するための命令を担持することができる機械可読媒体のほんの一例である。このような媒体は、不揮発性媒体及び揮発性媒体を含むがこれらに限定されない、多くの形態をとってもよい。
【００３７】
非一時的なコンピュータ可読媒体の一般的な形態が、たとえばフロッピー（登録商標）ディスク、フレキシブルディスク、ハードディスク、磁気テープ、もしくは他の何らかの磁気媒体、ＣＤ−ＲＯＭ、他の何らかの光学媒体、パンチカード、紙テープ、孔のパターンを有する他の何らかの物理的媒体、ＲＡＭ、ＰＲＯＭ、ＥＰＲＯＭ、フラッシュＥＰＲＯＭ、フラッシュドライブ、メモリカード、他の何らかのメモリチップもしくはカートリッジ、またはコンピュータが読み取ることができる他の何らかの媒体を含む。さまざまな形のコンピュータ可読媒体が、実行するために、プロセッサ１０１に１つまたは複数の命令の１つまたは複数のシーケンスを搬送することを伴ってもよい。たとえば、命令は、最初に遠隔コンピュータから磁気ディスクで搬送されてもよい。あるいは、遠隔コンピュータが命令を自分のダイナミックメモリの中にロードし、インターネット１２４上で命令を送信することができる。具体的には、コンピュータ命令が、当技術分野でよく知られているさまざまなネットワークデータ通信プロトコルを使用して、インターネット１２４を介して前述の遠隔コンピュータから、計算処理システム１００のメモリ１１２の中にダウンロードされてもよい。
【００３８】
１つまたは複数の実施形態では、計算処理システム１００のメモリ１１２は、以下のソフトウェアプログラム、アプリケーション、またはモジュールのいずれかを記憶してもよい。
【００３９】
１．オペレーティング・システム（ＯＳ）１１３。オペレーティング・システム（ＯＳ）１１３は、基本システムサービスを実装し、かつ計算処理システム１００のさまざまなハードウェア構成要素を管理するための携帯用オペレーティング・システムであってもよい。オペレーティング・システム１１３の例示的実施形態は当業者にはよく知られており、任意の現在既知の、または今後開発される携帯用オペレーティング・システムを含んでもよい。
【００４０】
２．アプリケーション１１４。アプリケーション１１４は、たとえば計算処理システム１００のプロセッサ１０１により実行されるソフトウェアアプリケーションのセットを含んでもよく、計算処理システム１００に、ある一定の所定の機能を実施させる、たとえばカメラ１１１を使用してデジタル画像を取り込ませる、または表示装置１０９及び／もしくは音声再生デバイス（図示せず）を使用してメディアファイルを再生させる。１つまたは複数の実施形態では、アプリケーション１１４は、以下で説明される、本発明のビデオ取得アプリケーション１１５及び本発明のビデオ再生アプリケーション１１９を含んでもよい。
【００４１】
３．データストレージ１２２。データストレージ１２２は、たとえば、本発明のビデオ取得アプリケーション１１５により生成されたビデオファイル（たとえば、ビデオ及びメタデータ記憶装置１２３に記憶される。）だけでなく、インターネット１２４上で計算処理システム１００により受信された他のデータも記憶するために使用されてもよい。
【００４２】
１つまたは複数の実施形態では、本発明のビデオ取得アプリケーション１１５は、計算処理システム１００の表示装置１０９上に本発明のグラフィカル・ユーザ・インタフェースを生成するように構成されたグラフィカル・ユーザ・インタフェース生成モジュール１１６を組み入れる。本発明のビデオ取得アプリケーション１１５は、ビデオコンテンツを記録するためのビデオ取得モジュール１１７と、基になるコンテンツの表現を再構成し、かつオーバービュー内のポイントからビデオ内の特定のポイントにリンクすることにより、取り込まれたビデオに対するオーバービューを生成するビデオ処理モジュール１１８とをさらに含んでもよい。
【００４３】
１つまたは複数の実施形態では、本発明のビデオ再生アプリケーション１１９は、計算処理システム１００の表示装置１０９上に、新規のビデオナビゲーション機能をユーザに提供する本発明のグラフィカル・ユーザ・インタフェースを生成するように構成されたグラフィカル・ユーザ・インタフェース生成モジュール１２０を含んでもよい。追加で提供されてもよいのが、グラフィカル・ユーザ・インタフェース生成モジュール１２０により生成されたグラフィカル・ユーザ・インタフェースとユーザとの対話に応答して、ビデオ再生を実施するように構成されたビデオ・ナビゲーション・モジュール１２１である。本発明のビデオ取得アプリケーション１１５及びビデオ再生アプリケーション１１９の前述のモジュールの動作が、以下で詳細に説明される。
【００４４】
１つまたは複数の実施形態では、本発明のビデオ取得アプリケーション１１５を使用して記憶されたビデオが、計算処理システム１００のビデオ処理モジュール１１８内でローカルに処理される。しかしながら、当業者には理解されるように、ローカルのビデオ処理は、計算処理システム１００で利用可能ではない場合がある、かなりのビデオ処理能力を要求することがある。したがって、代替の一実施形態では、取り込まれたビデオコンテンツが、解析のために遠隔コンピュータシステムに、たとえば、例示的一実施形態が図２に示されているデスクトップ計算処理システム２００に送信されてもよい。
【００４５】
１つまたは複数の実施形態では、デスクトップ計算処理システム２００はデータバス２０４を組み入れてもよく、データバス２０４は、図１に示される計算処理システム１００のデータバス１０４と実質的に同様であってもよく、データバス１０４と実質的に同様の機能を実施してもよい。さまざまな実施形態では、データバス２０４は、データバス１０４と同一のまたは異なる相互接続及び／または通信のプロトコルを使用してもよい。デスクトップ計算処理システム２００の構成要素がデスクトッププラットフォーム構成で導入されることを除き、デスクトップ計算処理システム２００の１つまたは複数のプロセッサ（ＣＰＵ）２０１、ネットワークインタフェース２０５、ＥＰＲＯＭ／ファームウェア記憶装置２０２、表示装置２０９、及びキーボード２０６が、同様に、計算処理システム１００のそれぞれのプロセッサ１０１、ネットワークインタフェース１０５、ＥＰＲＯＭ／ファームウェア記憶装置１０２、表示装置１０９、及びキーボード１０６と実質的に同様であってもよい。さまざまな実装形態では、１つまたは複数のプロセッサ２０１は、プロセッサ１０１と比較して実質的に高い処理能力を有してもよい。
【００４６】
入力デバイス２０６（キーボード）に加えて、デスクトップ計算処理システム２００は、方向情報及びコマンド選択をプロセッサ２０１に伝達し、かつ表示装置２０９上でのカーソルの動きを制御するためのポインティングデバイス（カーソル制御デバイス）２１０、たとえばマウス、トラックボール、またはカーソル方向キーを追加で含んでもよい。この入力デバイスは、一般的にはデバイスが平面内の位置を指定することができるようになる、２つの軸、すなわち第１の軸（たとえばｘ）及び第２の軸（たとえばｙ）での２つの自由度を有する。
【００４７】
デスクトップ計算処理システム２００のＬＡＮ／ＩＳＤＮアダプタ２０７が、たとえば、サービス統合デジタル網（ＩＳＤＮ）カードまたはモデムを使用して、インターネット・サービス・プロバイダのハードウェア（図示せず）を使用してインターネット１２４とインタフェースで接続される対応するタイプの電話回線にデータ通信接続を提供するように実装されてもよい。別の例として、ＬＡＮ／ＩＳＤＮアダプタ２０７は、データ通信接続を互換性のあるＬＡＮ及びインターネット１２４に提供するローカル・エリア・ネットワーク・インタフェース・カード（ＬＡＮ  ＮＩＣ）であってもよい。さまざまなメディアファイルを記憶するために、デスクトップ計算処理システム２００は、記憶装置制御手段２０３を用いてデータバス２０４に接続されたメディア記憶装置２０８を備えてもよい。
【００４８】
１つまたは複数の実施形態では、デスクトップ計算処理システム２００のメモリ２１２は、以下のソフトウェアプログラム、アプリケーション、またはモジュールのいずれかを記憶してもよい。
【００４９】
１．デスクトップ・オペレーティング・システム（ＯＳ）２１３。デスクトップ・オペレーティング・システム（ＯＳ）２１３は、基本システムサービスを実装し、かつデスクトップ計算処理システム２００のさまざまなハードウェア構成要素を管理するためのオペレーティング・システムであってもよい。デスクトップ・オペレーティング・システム２１３の例示的実施形態はすべて当業者によく知られており、任意の現在既知の、または今後開発されるオペレーティング・システムを含んでもよい。
【００５０】
２．ネットワーク通信モジュール２１４。ネットワーク通信モジュール２１４は、たとえば、ＬＡＮ／ＩＳＤＮアダプタ２０７と協力して動作するネットワークインタフェース２０５を使用して、デスクトップ計算処理システム２００と、計算処理システム１００などの、インターネット１２４のさまざまなネットワークエンティティとの間でネットワーキング接続を確立するために使用される１つまたは複数のネットワーク・プロトコル・スタックを組み入れてもよい。
【００５１】
３．デスクトップアプリケーション２１５。デスクトップアプリケーション２１５は、たとえば、デスクトップ計算処理システム２００にある一定の所定の機能またはタスクを実施させる、デスクトップ計算処理システム２００の１つまたは複数のプロセッサ２０１により実行される１組のソフトウェアアプリケーションを含んでもよい。１つまたは複数の実施形態では、デスクトップアプリケーション２１５は、基になるコンテンツの表現を再構成し、かつオーバービュー内のポイントからビデオ内の特定のポイントにリンクすることにより、取り込まれたビデオに対するオーバービューを生成するためのビデオ処理モジュール２１７を組み入れる本発明のビデオ処理アプリケーション２１６を含んでもよく、ビデオ処理モジュール２１７は、計算処理システム１００の前述のビデオ処理モジュール１１８と実質的に同様に動作してもよい。さらに、システム１００の前述のビデオ再生アプリケーション１１９と実質的に同様なビデオ再生アプリケーション２１８が、同じくメモリ２１２内に導入されてもよい。
【００５２】
１つまたは複数の実施形態では、本発明のビデオ再生アプリケーション２１８は、ユーザに新規なビデオナビゲーション機能を提供する、本発明のグラフィカル・ユーザ・インタフェースを、デスクトップ計算処理システム２００の表示装置２０９上に生成するように構成されたグラフィカル・ユーザ・インタフェース生成モジュール２１９を含んでもよい。追加で提供されてもよいのが、グラフィカル・ユーザ・インタフェース生成モジュール２１９により生成されたグラフィカル・ユーザ・インタフェースとユーザとの対話に応答して、ビデオ再生を実施するように構成されたビデオ・ナビゲーション・モジュール２２０である。ユーザは、前述のユーザインタフェースを使用して、キーボード２０６及びポインティングデバイス２１０を用いてビデオをナビゲートしてもよい。本発明のビデオ処理アプリケーション２１６及びビデオ再生アプリケーション２１８の前述のモジュールの動作は、ビデオ取得アプリケーション１１５及びビデオ再生アプリケーション１１９のそれぞれのモジュールの動作と実質的に同様であり、以下で詳細に説明される。
【００５３】
４．データストレージ２２１。データストレージ２２１は、たとえば取り込まれたビデオコンテンツ（ビデオ及びメタデータストレージ２２２）だけでなく、ユーザ及び／またはアプリケーションの他のデータも記憶するために使用されてもよい。
【００５４】
１つまたは複数の実施形態では、本発明のビデオ処理アプリケーション２１６は、ネットワークインタフェース２０５を用いて、インターネット１２４を介して、図１に示される計算処理システム１００により取り込まれたビデオを受信するように構成されてもよい。受信されたビデオは、ビデオ処理モジュール２１７を使用して処理され、表示装置２０９を使用してユーザに示されてもよく、グラフィカル・ユーザ・インタフェースがユーザインタフェース生成モジュール２１９により生成される。
【００５５】
次に、計算処理システム１００及びデスクトップ計算処理システム２００に導入されたさまざまなソフトウェアモジュールの動作が、詳細に説明される。当業者に理解されているように、ビデオがコンテンツの漸進的蓄積を取り込むシナリオがいくつかある。卓越した例が、当業者によく知られているＫｈａｎ  Ａｃａｄｅｍｙシリーズからのビデオである。これらの教育ビデオでは、講演者が電子インクを使ってコンテンツを追加したとき、カメラが電子ホワイトボードに焦点を合わせる。ビデオのコース全体にわたって、ボードが埋められるまで、注釈が追加される。その後、講演者は任意選択でボードの、マークをつけられていない領域までスクロールして、注釈付きコンテンツを追加し続ける。
【００５６】
この種類のコンテンツには、コンテンツの時間の長さと空間的大きさとの間に固有の関係が存在することに留意されたい。ビデオの自然時間のセグメント化が、注釈が追加されたときにこれらの注釈を識別する。これは、各注釈（及びビデオフレーム内の各注釈の空間的場所）が、ビデオの時間セグメントと関連づけられることを意味する。このようなコンテンツについては、ユーザが、注釈に基づく空間インデックスを使用して、ビデオを時間的にナビゲートできるようになるのが自然である。したがって、１つまたは複数の実施形態では、完全な１組の注釈を表示し、かつ関連するビデオコンテンツをナビゲートするために使用可能なオーバービュー画像を生成するためのシステム及び方法が提供される。
【００５７】
ある一定の２次元コンテンツに対するオーバービューを生成する計算処理方法３００の例示的一実施形態が図３に示されている。まず、ステップ３０１で、スライド変化イベントが検出される。１つまたは複数の実施形態では、注釈が完了したときなど、大きな変化の時点として、スライド変化が検出される。１つまたは複数の実施形態では、スライド変化は、たとえば特許文献１及び特許文献２で説明されている、よく知られている方法を使用して検出される。
【００５８】
１つまたは複数の実施形態では、注釈が追加されていることを示す、ビデオフレーム内の変化を検出するために、単純な画素ごとの差分がまず適用される。第２のステップは、変動のないコンテンツに対して時間的閾値を適用することである。当業者により理解されるように、ビデオフレームが所定の時間、変動のないままであるとき、注釈が完了した可能性が高い。したがって、アルゴリズムが、変化の期間と、それに続くビデオフレーム安定の最小（少なくとも数秒の長さの）期間をまず検出することにより、ビデオ内のセグメントを識別する。
【００５９】
１つまたは複数の実施形態では、新しい注釈イベントの検出後、方法は、最後の変動のないビデオフレーム（新しい注釈前）と現在の安定したフレーム（注釈後）の画素ごとの閾値処理により作成された差分画像に関連した構成要素を使用して、空間解析を適用する。これにより、アルゴリズムが、新しい注釈を含む空間領域の輪郭を描くバウンディングボックスを識別することが可能になる。
【００６０】
ステップ３０１で検出された各スライド変化イベントに対して、ステップ３０２で、本発明の方法３００は、コンテンツ・スクロール・イベント回数及びこれらのスクロールの個々のスクロールオフセットを検出する。ステップ３０１で識別されたバウンディングボックスの幅が、スクロール検出のための頼りになるキューである。バウンディングボックスの幅がビデオの幅に近づくとき（すなわち、フレーム幅に依存する閾値を超える）、方法はスクロールイベントを記録する。スクロールイベントの前後のフレームを位置合わせさせることにより、スクロールの量が検出される。１つまたは複数の実施形態では、この検出は、高い画素強度エントロピを有する列のサブセットをまず選択することにより効果的に行われる。このような列は、ある範囲の色を有し、連携のために、より頼りになる。その後、ビデオ・スクロール・イベントの前後で、ビデオフレームの対応する列の間の１次元（１Ｄ）相関が計算され、それぞれの列に対して最大相関を生み出す移動が記録される。個々の列の推定された移動量のセットの多数決としてスクロール量が報告される。代替的に、この処理は、スクロール量推定の際にさまざまな信頼基準を生み出して、半自動処理または手動補正を支援することができる。
【００６１】
ステップ３０６を参照すると、方法３００は、次いで、スライド更新を単一画像にスティッチする。スクロールの量に対する推定値を考慮すれば、ステップ３０６で、処理は、（表示される注釈付きコンテンツを最大にするために）検出されたスクロールイベントの直前に収集されたフレームを組み合わせて、完全なオーバービュー画像を作成する。一般に、オーバービュー画像の高さはビデオフレームの高さより高いが、オーバービュー画像の幅はビデオフレームの幅と同一であることに留意されたい。ステップ３０３を参照すると、方法３００では、別個の処理が、スクロールイベント間で行われたコンテンツ更新をクラスタ化する。一実施形態では、ステップ３０２で検出されたスクロール回数が、ビデオの粗いナビゲーション制御手段を提供するが、図４に関連して以下で説明されるように、ステップ３０３で検出されたコンテンツクラスタが、よりきめ細かいナビゲーション制御手段を提供する。
【００６２】
１つまたは複数の実施形態では、スクロールイベントの間に追加されたテキストのバウンディングボックスが、オーバービュー画像のナビゲーションを拡張するように処理される。一例では、検出された変化のバウンディングボックスのセットの階層的クラスタ化が、ユーザがビデオの中にジャンプすることができる時点の数（細分性）を柔軟に調節するために使用される。時間によりグループ化することが最も自然な手法である。しかしながら、クラスタ化の中に空間情報（バウンディングボックスの場所）を組み入れることは可能な拡張である。これは、コンテンツが「左から右へ」または「上から下へ」など、一貫した手法で追加されるときに役立つ。一実施形態では、図４に示されるように、ユーザが本発明のユーザインタフェース内に示される注釈をタップするとき、注釈バウンディングボックスのクラスタに対応するビデオセグメントが再生される。
【００６３】
クラスタがこのように識別された後、ステップ３０４で、クラスタの場所がビデオのシーク時間にマッピングされ、その結果、ユーザが選択した特定のクラスタが、特定の時間的ビデオセグメントに変換される。最後に、ステップ３０５を参照すると、ステップ３０６で生成されたオーバービュー画像も、ステップ３０４で生成されたマッピングも、ビデオ内部をナビゲートするためのユーザインタフェースを提供する際に使用される。
【００６４】
図４は、前述のオーバービュー画像４０１を使用してビデオ内部をナビゲートするためのユーザインタフェース４００の例示的動作を示す。上述のように、オーバービュー画像４０１は、標準的ビデオフレームの高さより高い。１つまたは複数の実施形態では、生成されたユーザインタフェース４００により、ユーザが、図４に示されるスクロール位置４０２及び４０３に対応する、ステップ３０２で検出されたスクロールイベントの間でオーバービュー画像４０１をスクロールすることが可能になる。一実施形態では、本発明のユーザインタフェース４００により、ユーザが、タッチスクリーンインタフェース１１０またはポインティングデバイス２１０をそれぞれ用いて、本発明のグラフィカル・ユーザ・インタフェース生成モジュール１２０または２１９により検出されてもよい一般的な垂直スワイプ対話を使用して、オーバービュー画像４０１をナビゲート（スクロール）することが可能になってもよい。
【００６５】
ユーザのスクロール選択に基づき、ユーザインタフェース４００は、スクロールイベント前のビデオフレーム４０４、またはスクロールイベント後の、より後のビデオフレーム４０５及びその後の注釈追加を示す。図４から理解することができるように、示されるビデオフレーム４０４は、オーバービュー画像４０１の上の方の（時間的により前の）部分４０２に対応するが、ビデオフレーム４０５は、オーバービュー画像４０１の下の方の（時間的により後の）部分４０３に対応する。１つまたは複数の実施形態では、本発明のビデオ・ナビゲーション・モジュール１２１は、ユーザがフレーム４０４内部のクラスタ４０８などの特定のビデオフレーム内部のクラスタを選択したときにイベントを検出するように構成される。ユーザによるこのようなクラスタ選択を検出すると、ビデオ・ナビゲーション・モジュール１２１は、選択されたクラスタ内部に注釈が追加されたビデオセグメント４０６を再生するように構成される。前述のセグメントの開始時間が、図３の処理ステップ３０４で生成されたマッピングに基づき決定される。一実施形態では、セグメントはスクロールイベント間のビデオの部分を含んでもよい。
【００６６】
１つまたは複数の実施形態では、ユーザが１本の指でスクリーンをタップしたとき、システムが、選択されたスクロールイベント時間にビデオをナビゲートし、スクリーン４０４または４０５をオーバービュー画像４０１の部分で隠し、４０７で参照されるように、ビデオを再生し始める。ユーザは、スクリーンを２本の指で同時にタップすることにより、オーバービュー画像に戻ることができる。
【００６７】
図３に示される方法３００の実施形態はまた、スライドストリームを電子インクでオーバーレイするビデオに適用することができることに留意されたい。この場合、図３に示されるスライド変化検出ステップ３０１が、新しいスライドを識別する。このデータは、たとえば前述の特許文献１で説明されるプロジェクタベースのビデオストリームと類似し、この場合も、検出された画素レベルの変化に主に依存して、関連するキーフレーム選択技法を使用することができる。当業者により理解されるように、スクロールは、このクラスのビデオでは珍しい。しかしながら、より拡張された期間に対して単一スライドを示すことができる。このような場合、本明細書で説明されるインクストロークのクラスタ化及びバウンディングボックス検出の追加が、前述のように役立つ可能性がある。
【００６８】
したがって、グラフィカル・ユーザ・インタフェース生成モジュール１２０及び２１９により生成される本発明のグラフィカル・ユーザ・インタフェースの一実施形態が、すべての別個のスライドをユーザに表示してもよく、スライドは、すべて注釈付きで示される。このようなインタフェースは、ビデオの個々のセグメントへの階層的な非線形アクセスをユーザに提供してもよい。１つまたは複数の実施形態によれば、ユーザは、本発明のユーザインタフェースにより検出された、関心のあるスライドセグメントをまず指し示すことができる。このスライドセグメントに対するオーバービューサムネイル上に示された注釈を再度選択することにより、ユーザは、注釈が追加されたサブセグメントにナビゲートし、かつ対応するビデオセグメントを再生させることが可能になる。
【００６９】
上述の技法は、電子インクを使用して、電子ホワイトボードまたは他の何らかの特定のタイプのコンテンツもしくは媒体に追加された注釈または他のコンテンツのビデオ用のナビゲーション可能なオーバービューを作成することに限定されないことに同じく留意されたい。任意の媒体に追加される任意のコンテンツに対しても、実質的に同一技法が使用されてもよい。
【００７０】
１つまたは複数の実施形態では、前述のオーバービュー画像が、３次元物品のビデオ用に同じく生成される。しかしながら、この場合、上述の実施形態のように、物品の平坦なマップを単に作ることでは十分ではない。したがって、１つまたは複数の実施形態では、３次元物品に対して、物品の異なる側面を表すビデオフレームを後で選択するために、カメラ１１１により記録されるビデオと同時に、位置／向きモジュール１０３によりカメラ向き情報が取り込まれる。「向き」という用語は、本明細書で使用されるとき、全地球的コンパス方位だけでなくカメラの傾きも意味する。これらの２つの向きパラメータは、ビデオ記録中に同時に記録され、データストレージ１２２に記憶され、その後、物品の所与の側面に対応するビデオフレームの位置を特定するために使用される。
【００７１】
追加で、物品自体が任意の方向に向けられてもよいので、１つまたは複数の実施形態では、ユーザは、記録された向きを傾きなしの物品の前面にマッピングする向き登録ポイントを提供するよう要求される（たとえば、物品が鉛直の状態で撮影された真向いからの（ｓｔｒａｉｇｈｔ−ｏｎ）写真）。図５は、計算処理システム１００の表示装置１０９上に表示されたビデオ取得アプリケーション１１５のグラフィカル・ユーザ・インタフェース５００の例示的一実施形態を示す。インタフェース５００は、前述のカメラ１１１のファインダとして機能する、カメラ１１１からのリアル・タイム・ビデオ５０２を示すライブビデオ部分５０１を備える。追加で提供されるのが、ユーザがアクティブ化して、物品の前面の真向いからの写真にマークをつけることができる前面マークボタン５０３である。アプリケーション１１５のビデオ取得モジュール１１７は、ビデオだけでなく、カメラの向き、及び物品の前面の真向いからの写真のユーザ指定を含む関連するメタデータも同時に記録するように構成される。記録された情報は、データストレージ１２２のビデオ及びメタデータストレージ１２３に記憶される。
【００７２】
図６は、物品のビデオを取り込んで処理し、かつビデオナビゲーションに使用可能なビデオオーバービューを生成するための方法６００の例示的一実施形態を示す。まず、ステップ６０１で、ビデオ、及び向き情報を含む関係するメタデータが取り込まれる。ステップ６０２で、たとえばユーザインタフェース５００の前述のボタン５０３を使用して、物品の前面ビューのユーザ指定が検出される。任意選択で、ステップ６０３で、取り込まれたビデオ及び関連するメタデータが、処理するために、計算処理システム１００からデスクトップ計算処理システム２００に転送されてもよい。
【００７３】
ステップ６０４で、カメラ１１１の向きが物品の６つの側面の各々の１つの上におおよそ存在する時間範囲が選択される。ステップ６０９で、ビデオ処理モジュール１１８または２１７が、記録されたビデオから物品の側面近傍の６つのビデオフレームを選択する。選択されたビデオフレームは、傾きなしの調節されたカメラコンパス方位０°、９０°、１８０°、及び２７０°、ならびに傾き９０°での１つのビデオフレーム及び傾き２７０°での１つのビデオフレームに対応してもよい。１つまたは複数の実施形態では、取り込まれたビデオの中で前述のコンパス方位に対応するフレームが利用できない場合、ビデオ処理モジュール１１８または２１７は、この物品側面を単にスキップするように構成される。１つまたは複数の実施形態では、ビデオ処理モジュール１１８または２１７は、単純なシャープネス尺度を利用して、特定の物品側面と適合する向きでフレームをフィルタ処理する。複数のフレームが特定の側面と適合し、かつ十分シャープである場合、ユーザが記録するビデオが、クローズアップを撮る前にオーバービュー写真をまず撮る可能性が高いという仮定で、最も前のフレームが選択される。
【００７４】
その後、ステップ６０５を参照すると、方法６００は、時間及び向きに関して近い、取り込まれたビデオのフレームをクラスタ化し、それに従ってビデオをセグメント化する。１つまたは複数の実施形態では、カメラの向きと前述の向き登録ポイントとの差の絶対値を閾値処理することにより、ビデオがセグメント化される。追加でまたは代わりに、ステップ６１０を参照すると、当業者によく知られているコンテンツマッチング技法を使用して、ビデオがコンテンツに基づきセグメント化されてもよい。１つまたは複数の実施形態では、コンテンツに基づくビデオのセグメント化が、画像解析または画像マッチング技法を使用して実施される。たとえば、一実施形態では、画像処理モジュール１１８及び２１７が、ビデオ内の各ビデオフレームに対する画像特徴を、たとえば当業者によく知られているスケール不変特徴変換（ＳＩＦＴ：ｓｃａｌｅ−ｉｎｖａｒｉａｎｔ  ｆｅａｔｕｒｅ  ｔｒａｎｓｆｏｒｍ）の画像特徴を抽出するように構成される。抽出された画像特徴は、その後、ステップ６０９で選択されたビデオフレームの画像特徴と比較される。適合する画像特徴の数により決定される、類似するビデオフレームが、セグメント化ステップ中に同一セグメントに含まれる。代替の一実施形態では、類似するコンテンツを有するフレームのセグメントを見つけ出すために、ステップ６０９で選択されたフレームを使用せずに、ビデオフレームが互いに比較されてもよい。得られたビデオセグメントは、ステップ６０６で得られたビデオフレームにマッピングされ、フレームだけでなくマッピングされたビデオセグメントも、ビデオナビゲーションのためにユーザインタフェースに送信される。１つまたは複数の実施形態では、ステップ６０８を参照すると、選択されたフレーム内部の特定の場所にビデオのサブセグメントをマッピングするために、画像またはコンテンツ・マッチング・アルゴリズムが追加で使用される。よりきめ細かいビデオナビゲーションのために、選択されたフレーム内部をユーザがクリックすることができるようになるように、これらのビデオフレームサブ領域ならびにリンクされたビデオサブセグメントに関する情報が、ステップ６０７で生成されたユーザインタフェースに同じく送信される。
【００７５】
ステップ６０９で実施される、物品の各側面に対するフレームを選択する方法が、図７に関連して示される。グラフ７０１を参照すると、カメラのコンパス方位が、時間７０３及び角度７０２の関数としてビデオと一緒に記録される。グラフ７０４を参照すると、ユーザが物品の前面ビューを指定した後、コンパス角度が物品中心の角度に変換される。次いで、ビデオがこれらの角度に基づき、物品のそれぞれ示された側面に対応して垂直の角度軸７０５上に０°、９０°、及び１８０°のマークをつけてセグメント化される。各セグメント内部では、「真向い」方向からの向きの偏差が、角度７０８及び時間７０３の関数としてグラフ７０７により示される。選択されたフレーム（キーフレーム）位置７１３、７１４、及び７１５が、画質７１１の尺度７１０（シャープネス尺度など）を一緒に最大化し、かつ同時に、各カメラ１１１の向きに対する「真向い」からの偏差７０７を最小にすることにより見つけ出される。これは、この向きに対する代表的な画像となるように、特定向きに対応する画質が最もよい画像（たとえば、最も鮮明なビデオフレーム）を選択するように実施される。１つまたは複数の実施形態では、キーフレーム７１３、７１４、及び７１５が、当業者によく知られている２変数（画質及び「真向い」からの偏差）の関数に対する最適化技法を使用して決定される。たとえば、臨界点でのこのような関数の局所的最大値及び局所的最小値を見つけ出すことにより、最適化が実施されてもよい。１つまたは複数の実施形態では、キーフレーム位置７１３、７１４、及び７１５が、反復技法を使用して決定されてもよい。
【００７６】
図７に示される例が、物品の右側からのビューを除外し、かつ生成されたオーバービューに右側のビューが含まれないことに留意されたい。明確にするために、この図は、最上部及び底部からのビューの選択を示さないが、これらのビューは、コンパス方位角の代わりに垂直傾斜角を使用して同様に選択される。
【００７７】
図８は、作成されたビデオオーバービューを使用してビデオをナビゲートするためのグラフィカル・ユーザ・インタフェース８００の例示的一実施形態を示す。ユーザインタフェース８００の示される実施形態は、ビデオ再生部分８０１、時間ナビゲーション部分８０２、及びオーバービュー部分８０３を含む。オーバービュー部分８０３は、図６に示される方法６００のステップ６０９で選択された、物品の側面の１つに対応する代表的ビデオフレーム８０４を表示する。オーバービュー部分８０３はまた、他の物品側面に対応するフレームを選択するための制御手段８０５、８０６、及び８０７を組み入れる。オーバービュー部分８０３内に現在表示されている、物品側面８０４に対応するビデオのセグメントが、着色されたセグメント８１１を使用して、時間ナビゲーション部分８０２のビデオタイムライン８１２内にマークをつけられる。これらのビデオセグメントは、ビデオ制御手段８０８及び８０９を使用して、ビデオ再生部分８０１内で自動的にまたはユーザにより手動で再生されてもよい。具体的には、一実施形態では、ユーザにより特定の物品側面に対応するフレームが選択されると、適切なビデオセグメントが自動的に再生されてもよい。物品の他の側面に対応するビデオセグメントが、異なる色のセグメント８１０を使用して、タイムライン８１２上にマークをつけられる。
【００７８】
図９は、作成されたビデオオーバービューを使用してビデオをナビゲートするためのグラフィカル・ユーザ・インタフェース９００の別の例示的実施形態を示す。この図では、オーバービュー部分８０３が、物品の異なる側面に対応するフレーム９０４を表示する。表示された物品側面にリンクされたビデオセグメントが、着色されたセグメント９１０を使って、ビデオタイムライン８１２上にマークをつけられる。同様に、図１０に示される実施形態１０００では、物品の上側に対応するビデオフレームが、オーバービュー部分８０３に示される。表示された物品側面にリンクされたビデオセグメントが、着色されたセグメント１０１０を使って、ビデオタイムライン８１２上にマークをつけられる。オーバービュー部分８０３内に表示された、物品の側面の画像が、物品のビデオから得られたビデオフレームである必要は必ずしもないことに留意されたい。適切なビデオセグメントにマッピングされることができる、物品の他の何らかの画像が、ビデオナビゲーションのために同様に使用されてもよい。
【００７９】
図１１は、タッチスクリーンインタフェース１１０またはポインティングデバイス２１０を使用して、ユーザが直接操作することができる３次元立方体の中にオーバービュー画像１１０４が張り付けられたグラフィカル・ユーザ・インタフェース１１００の例示的一実施形態を示す。現在の視野角を使用して決定されてもよい、立方体の１つの特定の側面を主に示すために、立方体がユーザによりオーバービュー部分８０３内に位置決めされたとき、示された側面に対応する１つまたは複数のビデオセグメントが、ビデオタイムライン８１２内に適切にマークをつけられる。
【００８０】
上記の説明は、オーバービューがソースビデオ自体から生成された場合と関係があった。しかしながら、いくつかの事例では、記録された物品の３次元（３Ｄ）モデルが利用可能であることがある。たとえば、このようなモデルは、サードパーティのデータベースから利用可能であってもよい。また、さまざまな実施形態では、物品の３次元モデルが、複数の整理されていない部分的３次元物品モデルを組み合わせることにより生成されてもよい。したがって、本明細書で説明される本発明の技法は、利用される３次元物品モデルの任意の特定のタイプ、またはこのようなモデルが作成された手法に限定されない。
【００８１】
図１２は、対応する３次元モデル１２０５が利用可能であるときに物品のビデオを処理する方法の例示的一実施形態１２００を示す。まず、ステップ１２０１で、物品のビデオ、及び任意選択でカメラ向きメタデータが取り込まれる。任意選択で、ステップ１２０２で、取り込まれたビデオ及びメタデータが、処理するために、計算処理システム１００からデスクトップ計算処理システム２００に送信されてもよい。その後、ステップ１２０３で、ビデオが、対応する物品の３次元モデルに登録（リンク）される。一実施形態では、提供された３次元モデルにビデオをリンクするために、上記で説明されるように、ビデオ処理モジュール１１８及び２１７が向きメタデータを使用する。この実施形態では、ユーザは、登録ポイントを提供するために、たとえば図５に示される前面マーク（ｍａｒｋ  ｆｒｏｎｔ）ボタン５０３を使用して、ビデオ記録中に物品の前面にマークをつけるように求められる。次いで、画像処理モジュール１１８及び２１７が、物品の、マークされた前面側写真と一緒にカメラ向き情報を使用して、ビデオを３次元モデルと連携させる。代替の一実施形態では、ビデオ処理モジュール１１８及び２１７は、当業者によく知られている画像マッチング技法を利用して、取り込まれたビデオ内のポイントに３次元モデル上の単一ポイントをリンクし、カメラ向き情報を使用して、ビデオからモデルへの連携を達成する。さらなる代替実施形態では、画像処理モジュール１１８及び２１７は、画像（コンテンツ）マッチングだけを使用して、どんなカメラ向きメタデータも使用せずに、ビデオと３次元モデルをリンクしてもよい。
【００８２】
上述の実施形態では、ステップ１２０４を参照すると、その後、時間及び向きメタデータを使用して、上述のようにビデオがセグメント化される。ステップ１２０６で、得られたビデオセグメントがモデルと連携される。次いで、これらのビデオセグメントを、ステップ１２０７で生成されたユーザインタフェースに向き／時間の対として直接送信することができる。１つまたは複数の実施形態では、グラフィカル・ユーザ・インタフェースが対話型オーバービューモデルの現在の視野角に基づき見ることができるビューをフィルタ処理し、図８〜図１１に示される実施形態で使用される手法に類似する手法で、対応するビデオセグメントにマークをつける。
【００８３】
１つまたは複数の実施形態では、ステップ１２０８及び１２０９を参照すると、ビデオセグメントをモデル上によりきめ細かく配置するために、画像処理モジュール１１８及び２１７が、代わりにセグメントに対する画像（コンテンツ）マッチング、及びモデルへのセグメントのリンクに依存してもよい。たとえば、画像処理モジュール１１８及び２１７は、当業者によく知られている方法を使用して、利用可能な３次元モデルに対してビデオ全体をマッチングさせようと試みることができる。あるいは、画像処理モジュール１１８及び２１７は、外観または動きの特徴に基づき、ビデオを非常に類似するセグメントにセグメント化し、次いで、実質的に上述のように、各セグメントからの代表的な画像を３次元モデルと連携させることができる。いずれの場合も、図１３に関連して示されるように、グラフィカル・ユーザ・インタフェースがセグメント全体のポーズをモデル上にポイントとして直接描くことができるので、セグメント化が可視化を固定する方法を提供する。たとえば、１つまたは複数の実施形態では、適合した画像の中心、または適合した画像の平均中心が、３次元オーバービューモデル上に提示され、適切なセグメントにリンクされる。
【００８４】
図１３は、ビデオ内に描かれた物品の３次元モデルに基づくオーバービューを使用してビデオをナビゲートするためのグラフィカル・ユーザ・インタフェース１３００の例示的一実施形態を示す。グラフィカル・ユーザ・インタフェース１３００は、ビデオ再生部分１３０１、制御手段１３０９及び１３１０を備える時間ナビゲーション部分１３０２、ならびにオーバービュー部分１３０３を組み入れる。オーバービュー部分１３０３は、ビデオ再生部分１３０１内に描かれた物品の３次元モデル１３０４に関するビューを表示する。個々のビデオセグメントにリンクされた、３次元モデル１３０４上の特定の場所が、着色された、ユーザ選択可能なドット１３０５、１３０６、及び１３０７でマークをつけられる。ユーザが、マークされたドットを選択したとき、対応するビデオセグメントがビデオ再生部分１３０１内で再生される。再生部分１３０１内で現在再生されているビデオに対応するユーザ選択可能なドットが（図１３ではドット１３０５がユーザにより選択され、対応するビデオセグメントが再生されている）、残りのドット（１３０６、１３０７）と異なる色でマークをつけられてもよい。
【００８５】
図１４は、ビデオ内に描かれた物品の３次元モデルに基づくオーバービューを使用してビデオをナビゲートするためのグラフィカル・ユーザ・インタフェース１４００の別の例示的実施形態を示す。インタフェース１４００のオーバービュー部分１３０３が、ユーザにより回転させられた３次元モデル１４０４を描く。モデルがこのように回転させられたとき、ユーザ選択可能な着色されたドット１４０５、１４０６、及び１４０７でモデル上にマークをつけられた、他の利用可能なマッピングされたビデオセグメントのビューが見えてくる。再生部分１３０１内で現在再生されているビデオに対応するユーザ選択可能なドット（図１４ではドット１４０５がユーザにより選択され、対応するビデオセグメントが再生されている）が、残りのドット（１４０６及び１４０７）と異なる色でマークをつけられてもよい。
【００８６】
当業者により理解されるように、本明細書で説明される技法は、任意の２次元または３次元の物品及び／または物品モデルに関連して使用されてもよい。２次元物品の場合、物品の２つの側面（前面及び背面）だけに対応するビデオフレーム及び関連するマッピングされたビデオセグメントが、ビデオナビゲーションのために使用されてもよい。
【００８７】
最後に、本明細書で説明される処理及び技法が、任意の特定の装置に固有に関連づけられているのではなく、構成要素の任意の適切な組合せにより実装されてもよいことを理解されたい。さらに、本明細書で説明される教示に従って、さまざまなタイプの汎用デバイスが使用されてもよい。また、専用装置を構築して、本明細書で説明される方法ステップを実施することが有利となることがある。制限するのではなく例示することをすべての点で意図した特定の例に関連して本発明が説明された。当業者は、ハードウェア、ソフトウェア、及びファームウェアの多くの異なる組合せが、本発明を実施するのに適していることを理解されよう。たとえば、説明されるソフトウェアが多種多様なプログラミング言語またはスクリプト言語で、たとえばアセンブラ、Ｃ／Ｃ＋＋、Ｏｂｊｅｃｔｉｖｅ−Ｃ、ｐｅｒｌ、シェル、ＰＨＰ、Ｊａｖａ（登録商標）だけでなく任意の現在よく知られている、または今後開発されるプログラミング言語またはスクリプト言語で実装されてもよい。
【００８８】
さらに、本明細書で説明される本発明の明細及び実践の考察から、本発明の他の実装形態が当業者には明らかであろう。説明される実施形態のさまざまな態様及び／または構成要素が、ビデオ用のナビゲーション可能な空間的オーバービューを生成及び使用するためのシステム及び方法で、単独でまたは任意の組合せで使用されてもよい。実施例は、例示としてだけ考慮されることを意図しており、本発明の真の範囲及び思想は、特許請求の範囲により示される。
【符号の説明】
【００８９】
１０１、２０１  ＣＰＵ
１１０  タッチスクリーンインタフェース
１１１  カメラ
２０６  キーボード
１０９、２０９  表示装置
２１０  ポインティングデバイス
１１２、２１２  メモリ
【図１】
0006493471.tif 000002
【図２】
0006493471.tif 000003
【図３】
0006493471.tif 000004
【図４】
0006493471.tif 000005
【図５】
0006493471.tif 000006
【図６】
0006493471.tif 000007
【図７】
0006493471.tif 000008
【図８】
0006493471.tif 000009
【図９】
0006493471.tif 000010
【図１０】
0006493471.tif 000011
【図１１】
0006493471.tif 000012
【図１２】
0006493471.tif 000013
【図１３】
0006493471.tif 000014
【図１４】
0006493471.tif 000015