JP2006042360A - オフラインマルチビュービデオ圧縮のシステムおよび方法 - Google Patents

オフラインマルチビュービデオ圧縮のシステムおよび方法 Download PDF

Info

Publication number
JP2006042360A
JP2006042360A JP2005217365A JP2005217365A JP2006042360A JP 2006042360 A JP2006042360 A JP 2006042360A JP 2005217365 A JP2005217365 A JP 2005217365A JP 2005217365 A JP2005217365 A JP 2005217365A JP 2006042360 A JP2006042360 A JP 2006042360A
Authority
JP
Japan
Prior art keywords
block
frame
module
video
difference
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2005217365A
Other languages
English (en)
Other versions
JP4989051B2 (ja
Inventor
Hua Cai
カイ ホワ
Jianguang Lou
ルー チャンクワン
Jiang Li
リー チャン
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Corp
Original Assignee
Microsoft Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from US10/901,477 external-priority patent/US7671893B2/en
Application filed by Microsoft Corp filed Critical Microsoft Corp
Publication of JP2006042360A publication Critical patent/JP2006042360A/ja
Application granted granted Critical
Publication of JP4989051B2 publication Critical patent/JP4989051B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • H04N19/137Motion inside a coding unit, e.g. average field, frame or block difference
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/107Selection of coding mode or of prediction mode between spatial and temporal predictive coding, e.g. picture refresh
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/109Selection of coding mode or of prediction mode among a plurality of temporal predictive coding modes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • H04N19/159Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/597Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding specially adapted for multi-view video sequence encoding

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Image Processing (AREA)

Abstract

【課題】新しいタイプのビデオキャプチャシステム、ビデオフォーマット、ビデオ圧縮アルゴリズム、およびサービスを提示するインタラクティブマルチビュービデオを提供すること。
【解決手段】多数のビデオカメラを、様々な関連する位置および方向からイベントをキャプチャするために割り当てる。キャプチャされたビデオを、圧縮し、リアルタイムでサーバに送信する。計算の複雑さをさらに減らすために、このスタティックモードを使用するか否かの判断は、すべてのビューの間で共同して判定される。スタティックモードでは、用いられるマクロブロック(MB)が、伝統的なインターモードのようにコーディングされ、それに対応する基準イメージ(次のフレームで時間予測に使用される)は、その前に構築されたイメージから単純にコピーされる。
【選択図】図11A

Description

本発明は、新しいタイプのオンラインビデオ圧縮を含むインタラクティブマルチビュービデオのシステムおよび方法を対象とする。
現在一般に使用されているビデオの形は、シングルビュービデオである。これは、1つのビデオカメラから、またはシーケンシャル時間期間を使用して連結された複数のビデオクリップからキャプチャされた1つのビデオクリップからなる。どの瞬間にも、あるイベントの1つのビューだけがある。この種類のビデオの形は、テレビジョン(TV)、パーソナルコンピュータ(PC)、および他のデバイスで、ビデオストリーミング、放送、および通信に広く使用されている。
従来のマルチメディアサービス(伝統的なTV、ビデオオンデマンド、ビデオストリーミング、デジタルビデオディスク(DVD)など)をレビューする場合に、複数の制限が存在する。例えば、従来のマルチメディアサービスでは、どの瞬間にも1つのイベントに関する1つのビデオストリームだけがある。さらに、従来のマルチメディアサービスでは、どの瞬間でも、ビューイング方向が番組編集者によって選択されている。ユーザは、受動的な立場にあり、カメラアングルまたは視点を変更することができない。さらに、ユーザは、記録され、供給された物を見ることだけができ、ビューイングアングルを選択する能力を有しない。
伝統的なシングルビュービデオの拡張として、EyeVision[1]は、カーネギーメロン大学のコンピュータビジョン教授Takeo Kanadeによって協同開発されたスポーツ放送システムである。EyeVisionは、30台のカムコーダを使用して、Superbowl 2001のゲームを撮影した。30台のカムコーダからキャプチャされたビデオのすべてが、ビデオルーティングスイッチャに入力され、編集されたビデオが、TV視聴者に放送された。しかし、EyeVisionシステムは、ユーザがビューイング方向を選択し、カメラ制御を行使する能力なしで、1つの編集されたビデオをユーザに提供しただけである。EyeVisionシステムは、TV聴衆だけにサービスし、他のマルチメディアフォーマットで使用可能ではない。
EyeVisionの他に、もう1つのマルチメディアデバイスである3Dビデオレコーダが、自由視点(free−viewpoint)ビデオ[3]の記録および再生のために設計された。これは、まず2Dビデオをキャプチャし、その後、バックグラウンドからフォアグラウンドを抽出する。ソースコーディングを適用して、3Dフォアグラウンドオブジェクト(例えば、人間)を作成する。しかし、EyeVisionと同様に、3Dレコーダは、ユーザがカメラを制御することを許容しない。さらに、3Dビデオレコーダによって使用される処理は、バックグラウンドからのフォアグラウンドの分類を必要とし、これは、かなりの計算資産を必要とする。
マルチビュービデオの需要の高まりにつれて、標準化の努力が最近行われた[4][5]。MPEGコミュニティは、2001年12月以降、3DAV(3Dオーディオビジュアル)テクノロジに取り組んでいる。多数の非常に異なるアプリケーションおよびテクノロジが、用語3Dビデオに関して議論されてきた。これらのアプリケーションのどれもが、ユーザが動的でリアルなオーディオビデオシーン内でまたは実際にキャプチャされたイメージから再構成された3Dオブジェクトを含む動的シーン内で自分の視点および/または方向を選択する可能性を有するという意味でのインタラクティビティに焦点を合わせていない。アプリケーションシナリオに関して、マルチビュービデオが、最も不完全な要素、非効率的な要素、および入手不能な要素を有する最も困難なシナリオであることがわかっている。この領域は、近い将来に最大の標準化の努力を必要とする。さらに、標準化の労力は、インタラクティビティを扱ってこなかった。
したがって、必要な物は、所与の瞬間のビデオの多数のストリームを有し、ユーザがビューイング方向選択およびカメラ制御に参加できるようにする、ビデオを効率的にキャプチャし、見るシステムおよび方法である。このシステムおよび方法は、その較正において高い度合の精度を有し、効率的な圧縮技法を提供しなければならない。さらに、この圧縮技法は、様々なビューイング経験の披露を容易にしなければならない。最適には、このハードウェアは、比較的安価でなければならない。そのようなシステムは、見る聴衆が様々なビューイング経験に参加し、特殊効果を提供することを可能にしなければならない。さらに、このシステムおよび方法は、計算的に効率的でなければならず、大量のイメージデータおよびオーディオデータならびにユーザインタラクションを処理するのに堅牢でなければならない。
本明細書の残りで、大括弧の対に挟まれた符号によって示される様々な個々の文献に言及することに留意されたい。例えば、そのような文献は、「参考文献[1]」または単に「[1]」と示すことによって識別することができる。各指定子に対応する文献のリストは、詳細な説明セクションの末尾にある。
カメラの使用が一般的になり、コンピュータ処理能力がより強力になり、ネットワーク帯域幅がより広くなるにつれて、ユーザは、これらの利益を活用して、より豊かなマルチメディア経験を追求することを望む。さらに、外科のイベントまたはスポーツチャンピオンシップイベントなどの重要なイベントを、様々な視点およびアングルから包括的にキャプチャすることが非常に望ましい。
前に述べたシングルビュービデオの形に対する自然な拡張が、本発明のマルチビュービデオの形である。マルチビュービデオでは、あるイベントまたはイベントスペースの複数のビデオが、異なる視点およびアングルで同時にキャプチャされる。これらのマルチビュービデオが、圧縮され、伝送され、ストアされ、最終的にユーザに配布される。本発明のマルチビュービデオの重要な特徴の1つが、ユーザがビデオのキャプチャを制御でき、異なる方向からイベントを見るのを選択できることである。
新しいタイプのビデオキャプチャシステムは、ビデオカメラ、コントロールPC、サーバ、ネットワークコンポーネント、およびクライアントからなる。オーディオコンポーネントも、関連するオーディオのキャプチャに使用することができる。複数のカメラ、一実施形態では数十台または数百台のビデオカメラを、マスタスレーブ構成で、イベント場でイベントをキャプチャするために割り当てる。これらのカメラは、1つまたは複数のコントロールPCによって制御される。イベントスペースでのイベントを、これらのカメラによって、様々な視点および方向から同時にキャプチャする。その後、これらのキャプチャされたビデオを、リアルタイムで、コントロールPCで圧縮し、1つまたは複数のサーバに送信する。圧縮されたビデオを、リアルタイムでエンドユーザに配布するか、その間の空間相関および時間相関を利用することによってさらに圧縮することができる。
新規のオンライン圧縮プロシージャが、本発明のインタラクティブビデオのシステムおよび方法と共に使用されるが、従来の圧縮アルゴリズムを使用することができる。オンライン圧縮プロシージャは、リアルタイムマルチビュービデオキャプチャ用に設計されている。その出力は、オンラインサービスに直接に使用するか、将来の処理(例えば、オフライン圧縮および/または再生)のためにディスクに保存することができる。
普通のビデオコーディングと似て、本発明のオンライン圧縮アルゴリズムのフレームに、「I」フレームと「P」フレームの2タイプがある。各「I」フレームの圧縮は、そのフレームの相関だけに基づくが、「P」フレームの圧縮は、そのフレームと前のフレームの相関に基づく。
しかし、普通のスキームと本発明のインタラクティブマルチビュービデオシステムのオンライン圧縮の大きな相違は、予測コーディングをスピードアップするために導入された独自の「スタティック」モードにある。スタティックモードを見つけるためには、オリジナルイメージと基準イメージの間の差を計算する必要がある。計算の複雑さをさらに減らすために、このスタティックモードを使用するか否かの判断は、すべてのビューの間で共同して判定される。この共同判断では、あるビューのスタティック領域が、まず検出される。次に、隣接するビューとオーバーラップするその対応する領域が、スタティックになる可能性が高いと考えられる。最後に、非常に単純な検査を適用して、この判断を確認する。本発明の一実施形態では、ピクセルの非常に小さい部分だけが、オリジナルイメージと基準イメージの間の差を計算するのに使用される。スタティックモードでは、用いられるマクロブロック(MB)が、伝統的なインターモードのようにコーディングされ、それに対応する基準イメージ(次のフレームで時間予測に使用される)は、その前に構築されたイメージから単純にコピーされる。その結果、逆量子化、逆離散コサイン変換(DCT)、および動き補償のどれもが、このMBの基準イメージの作成に必要でなくなる。
新しいコーディングモードの他に、ジョイント動き推定(ME)も、MEの複雑さを減らすために適用される。この新しいMEでは、伝統的なMEが、まず、あるビューに適用される。次に、3D MVを、そのビューの見つかったMVに基づいて作成する。その後、3D MVを隣接するビューに射影して、それ自体のMVを予測する。予測されたMVに基づいて、これらのビューの検索範囲を減らし、したがって、複雑さを大幅に減らすことができる。
インタラクティブマルチビュービデオは、メディアストリーミング、放送、および通信に一般に使用されている現在のシングルビュービデオに対する自然な拡張である。インタラクティブマルチビュービデオは、テクノロジ開発およびカスタマ要求の傾向に合致する。インタラクティブマルチビュービデオは、メディアプレイヤ、メッセージングシステム、およびミーティングシステムなどの様々なマルチメディアアプリケーションに対する強い影響を有する可能性がある。
本発明のインタラクティブマルチビュービデオシステムは、多数の長所を有する。このシステムは、ビデオストリームの選択およびカメラの制御をユーザに与え、これによって、ユーザが、どの瞬間でもビューイング方向を選択できるようになる。従来のシステムと異なり、本発明のこのインタラクティブマルチビュービデオシステムに関して、フォアグラウンドオブジェクトとバックグラウンドオブジェクトの分類は不要である。さらに、このインタラクティブマルチビュービデオシステムによって、特殊効果の表現を容易にするより豊かな機能と共に、従来のビデオシステムより効率的なコーディングが採用されている。
上で述べた利益の他に、本発明の他の長所は、添付図面と共に解釈される場合に下の詳細な説明から明白になる。
本発明の特定の特徴、態様、および長所は、次の説明、添付請求項、および添付図面に関してよりよく理解される。
本発明の好ましい実施形態の以下の説明では、添付図面を参照するが、添付図面は、本明細書の一部を形成し、本発明を実践できる特定の実施形態を例として示す。他の実施形態を使用することができ、本発明の範囲から逸脱せずに、構造的変更を行えることを理解されたい。
1.0 例示的なオペレーティング環境
図1に、本発明を実施できる適切なコンピューティングシステム環境100の例を示す。コンピューティングシステム環境100は、適切なコンピューティング環境の1つの例にすぎず、本発明の使用または機能性の範囲に関する制限を提案することを意図された物ではない。また、コンピューティング環境100を、例示的なオペレーティング環境100に示されたコンポーネントのいずれかまたはその組合せに対する依存性または要件を有するものと解釈してはならない。
本発明は、多数の他の汎用のまたは特殊目的のコンピューティングシステム環境またはコンピューティングシステム構成と共に動作する。本発明と共に使用することができる周知のコンピューティングシステム、コンピューティング環境、および/またはコンピューティング構成の例に、パーソナルコンピュータ、サーバコンピュータ、ハンドヘルドデバイス、ラップトップデバイス、マルチプロセッサシステム、マイクロプロセッサベースのシステム、セットトップボックス、プログラマブルコンシューマエレクトロニクス、ネットワークPC、ミニコンピュータ、メインフレームコンピュータ、上記のシステムまたはデバイスのいずれかを含む分散コンピューティング環境、および類似物が含まれるが、これらに制限はされない。
本発明を、プログラムモジュールなど、コンピュータによって実行されるコンピュータ実行可能命令の全般的な文脈で説明することができる。一般に、プログラムモジュールに、特定のタスクを実行するか特定の抽象データ型を実装する、ルーチン、プログラム、オブジェクト、コンポーネント、データ構造などが含まれる。本発明は、通信ネットワークを介してリンクされたリモート処理デバイスによってタスクが実行される分散コンピューティング環境でも実践することができる。分散コンピューティング環境では、プログラムモジュールを、メモリストレージデバイスを含むローカルコンピュータ記憶媒体およびリモートコンピュータ記憶媒体の両方に置くことができる。
図1を参照すると、本発明を実施する例示的なシステムに、コンピュータ110の形の汎用コンピューティングデバイスが含まれる。コンピュータ110のコンポーネントに、処理ユニット120、システムメモリ130、およびシステムメモリを含む様々なシステムコンポーネントを処理ユニット120に結合するシステムバス121が含まれる。システムバス121は、メモリバス、メモリコントローラ、周辺バス、および様々なバスアーキテクチャのいずれかを使用するローカルバスを含む複数のタイプのバス構造のいずれかとすることができる。制限ではなく例として、そのようなアーキテクチャに、Industry Standard Architecture(ISA)バス、マイクロチャネルアーキテクチャ(MCA)バス、Enhanced ISA(EISA)バス、Video Electronics Standards Association(VESA)ローカルバス、およびメザニンバスとも称するPeripheral Component Interconnect(PCI)バスが含まれる。
コンピュータ110に、通常は、様々なコンピュータ可読媒体が含まれる。コンピュータ可読媒体は、コンピュータ110によってアクセスでき、揮発性媒体および不揮発性媒体、リムーバブル媒体およびノンリムーバブル媒体の両方を含む使用可能な媒体のいずれかとすることができる。制限ではなく例として、コンピュータ可読媒体に、コンピュータ記憶媒体および通信媒体を含めることができる。コンピュータ記憶媒体に、コンピュータ可読命令、データ構造、プログラムモジュール、または他のデータなどの情報をストアする任意の方法またはテクノロジで実施された、揮発性および不揮発性、リムーバブルおよびノンリムーバブルの両方の媒体が含まれる。コンピュータ記憶媒体に、RAM、ROM、EEPROM、フラッシュメモリ、および他のメモリテクノロジ、CD−ROM、デジタル多用途ディスク(DVD)、または他の光学ディスクストレージ、磁気カセット、磁気テープ、磁気ディスクストレージ、または他の磁気ストレージデバイス、あるいは所望の情報の保管に使用でき、コンピュータ110によってアクセスできる他のすべての媒体が含まれるが、これに制限はされない。通信媒体によって、通常は、搬送波または他のトランスポート機構などの変調されたデータ信号内でコンピュータ可読命令、データ構造、プログラムモジュール、または他のデータが実施され、通信媒体には、すべての情報配布媒体が含まれる。用語「変調されたデータ信号」は、信号内で情報を符号化する形でその特性の1つまたは複数を設定または変更された信号を意味する。制限ではなく例として、通信媒体に、有線ネットワークまたは直接配線接続などの有線媒体と、音響、RF、赤外線、および他の無線媒体などの無線媒体が含まれる。上記のいずれかの組合せも、コンピュータ可読媒体の範囲に含まれなければならない。
システムメモリ130に、読取専用メモリ(ROM)131およびランダムアクセスメモリ(RAM)132などの揮発性メモリおよび/または不揮発性メモリの形のコンピュータ記憶媒体が含まれる。起動中などにコンピュータ110内の要素の間での情報の転送を助ける基本ルーチンを含む基本入出力システム133(BIOS)が、通常はROM 131に保管される。RAM 132には、通常は、処理ユニット120から即座にアクセス可能、および/または処理ユニット120によって現在操作中のデータおよび/またはプログラムモジュールが含まれる。制限ではなく例として、図1に、オペレーティングシステム134、アプリケーションプログラム135、他のプログラムモジュール136、およびプログラムデータ137を示す。
コンピュータ110に、他のリムーバブル/ノンリムーバブル、揮発性/不揮発性のコンピュータ記憶媒体も含めることができる。例のみとして、図1に、ノンリムーバブル不揮発性磁気媒体から読み取るかこれに書き込むハードディスクドライブ141、リムーバブル不揮発性磁気ディスク152から読み取るかこれに書き込む磁気ディスクドライブ151、CD−ROMまたは他の光媒体などのリムーバブル不揮発性光ディスク156から読み取るかこれに書き込む光ディスクドライブ155を示す。例示的なオペレーティング環境で使用できる他のリムーバブル/ノンリムーバブル、揮発性/不揮発性のコンピュータ記憶媒体に、磁気テープカセット、フラッシュメモリカード、デジタル多用途ディスク、デジタルビデオテープ、ソリッドステートRAM、ソリッドステートROM、および類似物が含まれるが、これに制限はされない。ハードディスクドライブ141は、通常は、インターフェース140などのノンリムーバブルメモリインターフェースを介してシステムバス121に接続され、磁気ディスクドライブ151および光ディスクドライブ155は、通常、インターフェース150などのリムーバブルメモリインターフェースによってシステムバス121に接続される。
上で説明し、図1に示したドライブおよびそれに関連するコンピュータ記憶媒体は、コンピュータ可読命令、データ構造、プログラムモジュール、および他のデータのストレージをコンピュータ110に提供する。図1では、例えば、ハードドライブ141が、オペレーティングシステム144、アプリケーションプログラム145、他のプログラムモジュール146、およびプログラムデータ147を保管するものとして図示されている。これらのコンポーネントを、オペレーティングシステム134、アプリケーションプログラム135、他のプログラムモジュール136、およびプログラムデータ137と同一の物または異なる物のいずれかとすることができることに留意されたい。オペレーティングシステム144、アプリケーションプログラム145、他のプログラムモジュール146、およびプログラムデータ147は、最低限でも異なるコピーであることを示すために、異なる符号を与えられている。ユーザは、キーボード162および、一般にマウス、トラックボール、またはタッチパッドと称するポインティングデバイス161などの入力デバイスを介してコンピュータ110にコマンドおよび情報を入力することができる。他の入力デバイス(図示せず)に、マイクロホン、ジョイスティック、ゲームパッド、衛星パラボラアンテナ、スキャナ、または類似物を含めることができる。上記および他の入力デバイスは、しばしば、システムバス121に結合されたユーザ入力インターフェース160を介して処理ユニット120に接続されるが、パラレルポート、ゲームポート、またはuniversal serial bus(USB)などの他のインターフェースおよびバス構造によって接続することができる。モニタ191または他のタイプのディスプレイデバイスも、ビデオインターフェース190などのインターフェースを介してシステムバス121に接続される。モニタの他に、コンピュータに、スピーカ197およびプリンタ196など、出力周辺インターフェース195を介して接続できる他の周辺出力デバイスも含めることができる。本発明にとって特に重要なことに、イメージのシーケンス193をキャプチャすることができるカメラ192(デジタル/電子スチルカメラ、デジタル/電子ビデオカメラ、またはフィルム/写真スキャナ)も、パーソナルコンピュータ110への入力デバイスとして含めることができる。さらに、1つのカメラだけが図示されているが、複数のカメラを、パーソナルコンピュータ110への入力デバイスとして含めることができる。1つまたは複数のカメラからのイメージ193は、適当なカメラインターフェース194を介してコンピュータ110に入力される。このインターフェース194は、システムバス121に接続され、これによって、イメージをRAM 132またはコンピュータ110に関連する他のデータストレージデバイスの1つにルーティングし、ストアすることが可能になる。しかし、イメージデータを、カメラ192の使用を必要とせずに、前述のコンピュータ可読媒体のいずれかからコンピュータ110に入力することもできることに留意されたい。オーディオレコーダ198を、オーディオデータをキャプチャするためにオーディオインターフェースデバイス199を介してコンピュータに接続することもできる。
コンピュータ110は、リモートコンピュータ180などの1つまたは複数のリモートコンピュータへの論理接続を使用して、ネットワーク化された環境で動作することができる。リモートコンピュータ180は、パーソナルコンピュータ、サーバ、ルータ、ネットワークPC、ピアデバイス、または他の一般的なネットワークノードとすることができ、通常は、上でコンピュータ110に関して説明した要素の多くまたはすべてが含まれるが、図1には、メモリストレージデバイス181だけを示した。図1に示された論理接続に、ローカルエリアネットワーク(LAN)171および広域ネットワーク(WAN)173が含まれるが、他のネットワークも含めることができる。そのようなネットワーキング環境は、オフィス、会社全体のコンピュータネットワーク、イントラネット、およびインターネットでありふれたものである。
LANネットワーキング環境で使用される場合に、コンピュータ110は、ネットワークインターフェースまたはネットワークアダプタ170を介してLAN 171に接続される。WANネットワーキング環境で使用される場合に、コンピュータ110に、通常は、インターネットなどのWAN 173を介する通信を確立する、モデム172または他の手段が含まれる。モデム172は、内蔵または外付けとすることができるが、ユーザ入力インターフェース160または他の適当な手段を介してシステムバス121に接続することができる。ネットワーク化された環境では、コンピュータ110に関して図示されたプログラムモジュールまたはその一部を、リモートメモリストレージデバイスに保管することができる。制限ではなく例として、図1に、メモリデバイス181に常駐するものとしてリモートアプリケーションプログラム185を示す。図示のネットワーク接続が例示的であり、コンピュータの間の通信リンクを確立する他の手段を使用できることを諒解されたい。
例示的なオペレーティング環境を説明したので、この説明セクションの残りの部分は、本発明を実施するプログラムモジュールの説明に捧げられる。
2.0 インタラクティブマルチビュービデオのシステムおよび方法
本発明によるシステムおよび方法を、次のセクションで詳細に説明する。インタラクティブマルチビュービデオのシステムは、3つの主要な部分すなわち、キャプチャコンポーネント、サーバコンポーネント、およびクライアントコンポーネントからなる。
2.1.キャプチャコンポーネント
本発明のインタラクティブマルチビューカメラシステムのキャプチャコンポーネント202は、カメラ(例えば、ビデオカメラ)、レンズ、パンチルトヘッド、コントロールPC、および同期化ユニットからなる。図2からわかるように、本発明の一実施形態で、それぞれがそれ自体のパンチルトヘッド206aおよび206bならびにレンズ(例えば、ズームレンズ)208aおよび208bを有する2つのビデオカメラ204aおよび204bが、それぞれ1つのコントロールPC 210および1394ポート(図示せず)に接続されている。各カメラは、それ自体のID番号を有する。コントロールPC 210は、例えばRS232インターフェースを介して、パンチルトヘッド206およびレンズ208を制御することによって、カメラの視点およびアングルを変更することができる。同期化ユニット214は、1つまたは複数のコントロールPC 210に、好ましくはその1394ポートまたは他の適切な手段を介してリンクされる。このシステムのキャプチャコンポーネントに、ある位置でのすべてのオーディオを記録するオーディオ記録機器209も含めることができる。
同期化ユニット214は、すべてのカメラに同じ瞬間にトリガさせ、撮影させるのに使用される。したがって、コントロールPCは、カメラからのビデオを同時につかむ。これらのカメラのすべてから、1つがマスタカメラになるように選択され、残りはスレーブカメラと呼ばれる。マスタカメラは、カメラマンによって制御され、スレーブカメラは、マスタカメラと同一の関心ポイントをポイントするように駆動される。これは、いわゆるマスタスレーブトラッキングプロセスによって実現されている。通常、カメラマンは人である。しかし、いくつかの場合に、マスタカメラを、実際のカメラマンからのコマンドなしで、オブジェクトトラッキングアルゴリズムによって制御することができる。
制御コマンドは、マスタカメラのコントロールPCに入力される。パンチルトパラメータが、計算され、スレーブカメラのすべてを駆動するために他のコントロールPCに送信される。キャプチャされたビデオが、コントロールPCによって受け取られ、圧縮され、サーバに送信される。本発明の一実施形態では、各ビデオが、640×480のサイズと30フレーム毎秒のフレームレートでキャプチャされる。本発明の一実施形態で使用される詳細なオンライン圧縮プロシージャは、セクション3.1で提示する。
2.1.1 カメラ較正
マスタスレーブトラッキングの前に、カメラを較正しなければならない。組込みパラメータ、外来パラメータ、および手目関係を判定する較正プロセスが、本発明のマルチビュービデオシステムで使用される。このプロセスの全般的な流れ図を、図3に示す。まず、組込みカメラパラメータを計算し(処理アクション302)、次に、外来カメラパラメータを判定する(処理アクション304)。次に、手目パラメータを判定する(処理アクション306)。最後に、判定された組込みパラメータ、外来パラメータ、および手目パラメータを使用して、共通の座標系ですべてのカメラの外来パラメータを調整することによってカメラを較正する。マスタカメラのこれらのパラメータおよびパンチルトパラメータのすべてを与えられれば、スレーブカメラがマスタカメラと同一の関心ポイントをポイントするようにするスレーブカメラのパンチルトパラメータを、効率的に計算し、調整することができる。
組込みパラメータは、基本的なピンホールカメラモデルを使用して定義される。これは、カメラの組込み構造だけに依存する。これには、1イメージピクセルの幅に対する焦点距離の比、1イメージピクセルの高さに対する焦点距離の比、主点のx座標、および主点のy座標が含まれる。外来パラメータは、カメラの組込み構造に依存しない。これは、既知の世界基準フレームに関するカメラ基準フレームの位置および方位を定義する。これには、通常、回転行列および3D並進ベクトルが含まれる。手目関係パラメータには、そのパンチルトヘッドに関する各カメラの位置および方位が含まれる。
2つの較正方法すなわち、パターンベース較正およびパターンフリー較正が、本発明のマルチビューインタラクティブビデオのシステムおよび方法で採用されている。パターンベース較正は、基平面または他の適当な基準平面に置かれることが好ましい大きい較正パターンを使用することによって実現され、パターンフリー較正は、基平面によってもたらされる情報を活用する。この2つの方法を、下で詳細に説明する。
2.1.2 パターンベース較正
本発明の一実施形態では、その精度および単純さに起因して、プレーンベースアルゴリズム[2]を、組込みパラメータの較正に使用する。そのような較正は、組込みパラメータが非常にわずかに変化するので、数週間に1回だけ実行されなければならない。すべてのカメラの外来パラメータは、共通のワールド座標系で、好ましくはパターンプレーンの座標系で較正される。その後、各カメラの手目関係も、3パンチルト位置以内で、その外来パラメータから較正される。
パターンベース方法では、正確に既知のジオメトリを有するプレーナパターンのイメージを使用する。パターンベース較正を自動的にするために、本発明の一実施形態では、3種類の色(赤、緑、青)を使用してすべてのコーナーポイントの位置を符号化した、図4Bに示された特殊な較正パターンを設計した。自動プロシージャは、異なるパンチルトモーションを受けるカメラによってパターンのイメージをキャプチャし、その後、カラー符号化された位置に沿ってパターンのコーナーを検出するように設計された。
パターンベース較正の単純化された流れ図を、図4Aに示す。パターンは、そのコーナーおよび多分他の基準点を既知の位置に置かれた状態で、地面または他の適当な基準フレームに置かれる(処理アクション402)。次に、すべてのカメラが、較正パターンのイメージをキャプチャする(処理アクション404)。イメージから抽出された特徴点と、その座標が既知である基準パターン点との間の対応を見つけ、使用することによって、普通の技法を使用して外来カメラパラメータを正確に推定することができる(処理アクション406)。正確な較正を得るために、基準パターンは、正確に製造されなければならず、較正に使用されるイメージの大部分を占めなければならない。さらに、大規模なシステムでは、高い精度の大きい基準パターンをセットアップすることが、特殊な機器を必要とする、些細でない作業である。不便を避けるために、パターンフリー較正方法が開発されたが、これを下で説明する。
2.1.3 パターンフリー較正
2.1.3.1 パターンフリー較正プロシージャの概要
本発明の一実施形態で、自動パターンフリー較正ツールが使用されている。イメージ点とパターン点の間の対応を使用してカメラ外来パラメータを判定するパターンベース方法と対照的に、パターンフリー較正方法は、異なるカメラからのイメージ点の間の対応に基づく。図5に、本発明のインタラクティブマルチビュービデオシステムで使用されるパターンフリー較正プロシージャの全般的な流れ図を示す。第1に、処理アクション502に示されているように、マスタカメラとスレーブカメラの両方の各イメージ内の特徴点を抽出する。これらの特徴点を使用して、各イメージの特徴をマスタカメラのイメージにマッピングするイメージ間相同の集合を推定する(処理アクション504)。次に、処理アクション506および508に示されているように、外来パラメータの線形解を、好ましくは特異値分解(SVD)演算を使用して、これらの相同に基づいて入手することができる。SVDは、行列の固有値および固有ベクトルを見つけるのに使用できる、古典的な数学演算である。本発明で使用される方法では、SVDが、特徴点の相同の積行列およびその転置行列の固有値および対応する固有ベクトルを見つけるのに使用される。これらの得られた固有成分に基づいて、カメラの外来パラメータを、線形方程式の組に対する最小自乗解として推定することができる。この後に、処理アクション510に示されているように、外来カメラパラメータのバンドル調整を適用して、すべての特徴対応の再射影誤差の合計を最小にすることによって、これらを洗練する。推定された外来パラメータを使用することによって、マスタイメージ(例えば、マスタカメラによって撮影された)内の特徴をスレーブイメージ(例えば、スレーブカメラによって撮影された)に射影することができる。用語「再射影誤差」は、スレーブイメージに射影されたこれらの特徴と、マスタイメージの対応する特徴との間の誤差を指す。射影誤差の合計を使用することが、較正されたパラメータの精度を評価する便利な形である。本発明の一実施形態で、推定されたパラメータは、Levenberg−Marquardt(LM)法を使用して射影誤差を最小にすることによって洗練される。
2.1.3.2 相同推定
本発明のパターンフリー較正技法は、次のように、より具体的に説明することができる。ほとんどの環境で、通常は基平面である支配的な平面がある。複数のカメラがそのようなシナリオでセットアップされる場合に、カメラのそれぞれが、支配的平面などの共通の平面のイメージを形成する。例えば、異なる位置から基平面を見る2つのカメラ(一方はマスタカメラ、他方はスレーブカメラ)からの2つのイメージは、
Figure 2006042360
によって定義される3×3相同Hによってリンクされる。ここで、A1およびA2は、それぞれマスタカメラおよびスレーブカメラの組込み行列である。記号
Figure 2006042360
は、相同をあるスケールまでしか推定できないので、非0スケールまで等しいことを示す。Rおよびtは、マスタの基準座標フレームでのスレーブカメラの外来パラメータ(回転および並進)であり、nは、基平面の単位法線ベクトルである。
2つのイメージ(コリニアでない)の間の4つを超える点対応を与えられて、相同を推定できる様々な従来の技法がある。例えば、相同は、Direct Linear Transform(DLT)という名前の基本的なコンピュータビジョンアルゴリズムによって推定することができる。本発明の一実施形態は、Random Sample Consensus(RANSAC)技法を使用して、相同を推定する。この方法は、次の5つのステップからなる。
1.特徴点を検出する。一実施形態では、コーナー検出演算子を使用して、2つのイメージから特徴を検出する。
2.特徴点の周囲の輝度のイメージ間類似性を利用することによって、対応する特徴セットの仮説を得る。
3.RANSACアルゴリズムによって相同を初期化する。
4.Levenberg−Marquardtアルゴリズムによってすべての対応する特徴点での再射影誤差を最小にするために相同を洗練する。
5.推定された相同を使用して、より多くの対応する特徴対を見つける。ここで、ステップ4および5を複数回繰り返して、相同を改善する。
相同を得たならば、カメラ外来パラメータを、次のプロセスによって線形に推定することができる。
2.1.3.3 外来パラメータの判定
相同Hについて、
Figure 2006042360
をMによって表し、Mの固有ベクトルをvj(j=1,2,3)によって表す。Hの特性により、nに関する次の3つの式を確立することができる。
Figure 2006042360
ここで、bjおよびajは、2つの中間変数であり、|bj|およびajの値は、Mの固有値から導出することができる。これは、1つのイメージ間相同から、未知の符号を有するnの3つの式が得られることを意味する。マスタカメラを含むm+1台のカメラによってキャプチャされた平坦なシーンのm+1個のイメージがある場合に、マスタイメージから他のイメージへのm個の相同を推定することができる。その後、各Mからの固有値および固有ベクトルを、さらに判定することができる。これらに基づいて、上の制約が、3m個の線形方程式を作ることができる。これは、法線ベクトルnを推定する潜在的な形を提示する。実際には、初期化ステップによってnの初期値を得ることができ、その後、上の式の符号を判定することができる。これに基づいて、nをさらに推定することができる。本発明の一実施形態では、投票ベースの初期化ステップを採用して、bjの符号を判定する。というのは、1つの相同から2つの可能な解を得ることができるからである。
具体的に言うと、全体的なプロシージャは、次のように説明することができる。
ステップ1。イメージの獲得。特徴点を検出し、普通の方法を介してまたは上で説明したように相同Hを推定する。
ステップ2。標準SVD分解演算によってMTMの固有値および固有ベクトルを計算する。
ステップ3。投票方法によって法線ベクトルnの初期値を推定する。
ステップ4。式の符号を判定し、その後、ベクトルnを洗練する。
ステップ5。並進t(スケールまで)および回転Rを推定する。
ステップ6。すべての特徴対応の再射影誤差の合計を最小にすることによって外来カメラパラメータをバンドル調整する。
2.2.サーバコンポーネント
サーバは、インタラクティブマルチビュービデオシステムで最も強力なユニットである。サーバは、大量のビデオデータの伝送およびストレージを管理し、多数のクライアントにサービスを提供する。図2からわかるように、サーバ216は、2つのネットワーク218および220に接続されている。例えば広帯域ネットワークバックボーンなどのネットワーク218は、サーバ216とコントロールPC 210を接続し、その結果、圧縮ビデオをコントロールPC 210からサーバ216に配布できるようにするために採用される。本発明の一実施形態では、本発明のマルチビュービデオシステムが、1GBネットワークを使用して、サーバ216とすべてのコントロールPC 210を接続する。外部ネットワーク220(例えば、LAN、WAN、またはインターネット)は、サーバ216とクライアント222を接続するのに使用される。本発明の一実施形態では、クライアント222が、10/100MB以上のネットワークを介してサーバ216に接続される。本発明のもう1つの実施形態では、クライアント222が、インターネットを介してサーバ216に接続される。
2.2.1 マルチビュービデオフォーマット
サーバ216は、コントロールPC 210からビデオを受信し、これをマルチビュービデオまたはビデオビームの形で保存する。ビデオビームは、ビデオと、好ましくは同一のイベントまたはイベントスペースから同時にとられたオーディオストリームのセットからなる。本発明のインタラクティブマルチビュービデオのストレージスキームは、大量のビデオデータと、ビデオビームの効率的な検索とをサポートする。本発明の一実施形態で、インデックス構造が、検索を高速化するために作成される。本発明のマルチビュービデオは、大量のビデオビームをサポートし、同時にビームにアクセスする膨大な数のユーザをサポートすることができる。そのコア技法は、任意の瞬間のオーディオビットストリームおよびビデオビットストリームの検索を容易にするためにインデックスを使用することである。このインデックス構造の例を、図6Aおよび6Bに示す。図6Aは、ビデオビットストリーム602のフォーマットを示し、図6Bは、ビデオビットストリームに対応するオーディオビットストリーム604のフォーマットを示す。実際のビデオデータおよびオーディオデータは、インデックスファイルと共に、しばしば、サーバにストアされる。これらを、オフライン再生のためにクライアントでローカルにストアすることができる。例えば、ビデオビームを、DVDディスクにストアし、クライアント側でPCによって再生することができる。
マルチビュービデオのサイズは、非常に巨大になる可能性があるので、本発明の一実施形態では、64ビットポインタを使用して、圧縮されたマルチビュービデオフレームの開始点を表す。その一方で、32ビットポインタが、圧縮されたオーディオフレームの開始点を表すのに使用するのに十分である。さらに、ビデオビットストリームの突き止めの時間消費を減らし、ビデオインデックスファイルのサイズを減らすために、64ビットポインタを、32ビット上位アドレスポインタおよび32ビット下位アドレスポインタに分割する。フラグ(例えば、「bCross4G」と命名された)を使用して、上アドレスポインタに推移があるかどうかをシグナリングする。このフラグに「真」がセットされている場合に、下位アドレスを検査しなければならない。その場合に、現在の下位アドレスの値が、前の下位アドレスの値より小さい場合に、現在のポインタから始めて、残りのポインタについて上位アドレスを1つ増分しなければならない。
オーディオおよびビデオのインデックスは、異なるファイルに別々に保存される。ビデオインデックスファイルは、階層構造によって編成される。第1レイヤは、多数のフィールド606(例えば、「VideoIndexInfoHeader」フィールド)からなり、このそれぞれに、タイムスタンプ、ビデオインデックスデータのオフセット、32ビット上位アドレス、上位アドレスポインタに推移があるか否かを示すフラグ(例えば、「bCross4G」フラグ)、およびその瞬間に使用されていたカメラの台数が含まれる。第2レイヤに、図6Aに示された第1レイヤ608によってポイントされる、同一のタイムスタンプを有する詳細なビデオインデックスデータ610(例えば、「VideoIndex」フィールド)が含まれる。第2レイヤの各フィールドは、カメラID、そのフレームのコーディングタイプ、および32ビット下位アドレスポインタからなる。あるタイムスタンプの「VideoIndex」フィールドの個数が、「VideoIndexInfoHeader」フィールドの「byCameraNum」によって表されるカメラの総数と等しいことに留意されたい。また、異なるタイムスタンプのカメラの台数が、異なる場合があることに留意されたい。
ビデオインデックスの構造の例を、下に示す。
Figure 2006042360
オーディオインデックスファイル604も、階層構造によって編成されている。第1レイヤは、多数のフィールド614(例えば、「AudioIndexInfoHeader」)からなり、このフィールドのそれぞれに、タイムスタンプ、オーディオインデックスデータのオフセット、およびその瞬間のオーディオレコードの個数が含まれる。第2レイヤ616に、図6Bに示されているように、同一のタイムスタンプを有する詳細なオーディオインデックスデータ(例えば、「AudioIndex」フィールド)が含まれる。あるタイムスタンプの「AudioIndex」フィールドの個数が、「AudioIndexInfoHeader」フィールドの「byAudioNum」によって表されるオーディオストリームの総数と等しいことに留意されたい。また、異なるタイムスタンプのオーディオストリームの個数が、異なる可能性があることに留意されたい。
オーディオインデックスの構造の例を、下に示す。
Figure 2006042360
2.3 クライアントコンポーネント
受信されたビデオビームは、オンラインインタラクティブサービスに直接に使用するか、オフライン処理のためにディスクに保存することができる。本発明によるシステムおよび方法の一実施形態の文脈で、オンラインは、見られるビデオビームがリアルタイムでキャプチャされることを意味する。オフラインは、ビデオビームが取り込まれ、記憶媒体にストアされていることを意味する。オフライン再生には、2つのタイプがある。1つは、例えばビデオオンデマンド(VOD)で行われているように、ビデオビームが、サーバにストアされ、クライアントが、ストリーミングプロセスによってそれを再生することである。このモードでは、サーバは、ストリーミングサーバとして働く。したがって、このタイプのオフライン再生を、「ストリーミングサービス」と称する。オフライン再生のもう1つのタイプは、ビデオビームがローカルディスクまたは別の場所にストアされる場合に発生する。このモードでは、クライアントが、サーバの助けなしでそのビデオビームを再生することができる。
オンラインインタラクティブサービスについて、サービスは、クライアントからのユーザコマンドに応答する。本発明の1つの例示的な実施形態でサポートされるコマンドに、VCRなどの通常のメディアプレイヤの普通のコマンドに加えて、スイッチ、スイープ、フリーズおよび回転、ならびに、ヒストリレビューが含まれる。ユーザコマンドに従って、サーバは、キャプチャされたビデオからビデオストリームを生成し、クライアントに送信する。本発明の一実施形態に、1つのクライアントについて2つの通信チャネルがある。1つは、レイテンシを減らすためにオーディオ/ビデオデータを送信するのに使用されるユーザデータグラムプロトコル(UDP)であり、もう1つは、正しさを保証するためにキャプチャするカメラを制御するコマンドおよび制御データを送信するのに使用される伝送制御プロトコル(TCP)である。オフライン処理に関して、ビデオビームは、データ量をさらに減らすためにトランスコーディングされる。詳細なオフライン圧縮プロシージャは、セクション3.2で提示する。クライアントコンポーネントの詳細を、下で述べる。
2.3.1 オンラインサービス
オンラインサービスでは、クライアントが、LAN、WAN、およびインターネットでサーバにリモート接続することができる。クライアントとサーバの間の接続が確立されたならば、ユーザは、通常のメディアプレイヤのように普通のコマンドにクライアント部分でサブスクライブし、インタラクティブマルチビューと同様に、独自コマンド(例えば、スイッチ、スイープ、フリーズおよび回転、ならびにヒストリレビュー)を発行する能力にもサブスクライブする。
クライアントは、コマンドをサーバに送信する。ユーザのコマンドに応答して、サーバは、ユーザのコマンドに従って、期待されたビデオを生成し、各クライアントに送信する。一言でいえば、ユーザは、マルチビュービデオをインタラクティブに再生することができる。いくつかの場合に、ユーザは、カメラIDおよびパンチルト値などのパラメータをクライアントに入力することもできる。クライアントは、これらのパラメータをサーバに送信し、その後、コントロールPCに送信して、キャプチャするカメラを制御する。
2.3.2 オフラインサービス
オフライン再生では、クライアントが、ローカルディスクまたは別の場所にストアされたマルチビュービデオビームを直接にオープンし、再生することができる。通常のビデオプレイヤの普通の効果(例えば、再生、早送り、巻き戻し、一時停止、停止など)の他に、ユーザは、例えば、異なるビデオストリームの間での切り替え、スイープ効果、ならびにフリーズおよび回転効果などの変わった特殊効果を経験することができる。これらの特殊効果の短い説明を、下で提供する。
ストリーミングモードでは、クライアントが、オンラインモードと同様に、LAN、WAN、およびインターネットを介してサーバにリモート接続することができる。このモードでは、サーバコンポーネントが、クライアントの接続およびビデオビームを管理するストリーミングサーバとして働き、ユーザは、コマンドをサーバにサブスクライブして、ビデオビームから所望のコンテンツを選択し、異なるビデオ効果(例えば、スイッチ、スイープ、フリーズおよび回転、ヒストリレビュー、ならびにスクリプト)を見ることができる。このモードは、現在のビデオオンデマンド(VoD)システムの拡張である。ストリーミングサービスとオンラインサービスの主要な相違は、ストリーミングモードで、ビデオビームがキャプチャされ、サーバコンポーネントでストアされており、リアルタイムでキャプチャされていないことである。ストリーミングサービスは、下にリストしたユーザコマンドのすべてをサポートする。
スイッチ効果:スイッチ効果は、ビデオが時間的に連続しているあいだに、あるカメラ視点と別のカメラ視点の間で切り替えることを伴う。これには、所望の視点を提供する異なるカメラからのビデオストリームにアクセスすることが含まれる。1つの例が、ユーザが、シーケンス内で第2カメラの視点から第5カメラの視点に切り替えることである。
スイープ効果:スイープ効果は、時間が動いている間に隣接するカメラのビューを通って掃引することが含まれる。これによって、ユーザが異なる視点からイベントを見ることが可能になる。1つの例が、合計8つの視点があると仮定して、ユーザが、第1視点から開始し、第2視点、第3視点から第8視点まで継続的に切り替え、その後、第8視点で見ることである。
フリーズおよび回転効果:フリーズおよび回転効果では、時間が凍結され、カメラ視点が、所与の点の回りで回転する。1つの例が、合計8つの視点があると仮定して、ユーザが、第1視点から開始し、第2視点、第3視点から第8視点まで前後に継続的に切り替えることである。
ヒストリ効果:ヒストリ効果では、ユーザが、前に見たまたは前に作成されたビデオシーケンスを再生することができる。
スクリプト:ユーザは、オンデマンドで再生できるビューおよび特殊効果のセットのスクリプトも作成することができる。ユーザは、このスクリプトを他のユーザに送ることもでき、このユーザは、スクリプトがアクティブ化された場合に、同一のスクリプト化されたビデオシーケンスを観察する。
スイープ効果、スイッチ効果、ならびにフリーズおよび回転効果は、オンラインモードでも使用可能とすることができる。
3.0 圧縮プロシージャ
オンラインおよびオフラインの両方の圧縮プロシージャを、本発明のインタラクティブマルチビュービデオのシステムおよび方法と共に使用することができる。オンライン圧縮プロシージャは、リアルタイムマルチビュービデオキャプチャ用に設計されている。その出力は、オンラインサービスに直接に使用するか、将来の処理(例えば、将来のオフライン圧縮または将来の再生)のためにディスクに保存することができる。オフライン圧縮プロシージャは、事前に符号化されたビットストリームをさらに効率的に圧縮するために、トランスコーディングプロセスで採用されている。その後に、出力ビットストリームが、ストレージおよびオフラインサービスのためにディスクに保存される。
特定の新規のオフラインおよびオンラインの圧縮プロシージャを、下のセクションで説明するが、本発明のシステムおよび方法が、これらのタイプの圧縮に制限されないことに留意されたい。普通の圧縮アルゴリズムも使用することができる。
3.1 オンライン圧縮
一般に、普通のシングルビュービデオコーディングに似て、本発明のインタラクティブマルチビュービデオシステムの一実施形態で使用されるオンライン圧縮では、ビデオの各ビューを、IPPPフレームのフォーマットでコーディングすることができる。
背景として、通常のビデオ圧縮は、2つの基本的な圧縮技法すなわち、インターフレーム(Pフレーム)圧縮およびイントラフレーム(Iフレーム)圧縮を使用する。インターフレーム圧縮は、フレーム間の圧縮であり、連続する絵の間のデータ冗長性(例えば、時間的冗長性)を最小にするように設計されている。イントラフレーム圧縮は、個々のフレーム内で行われ、各絵のデータの重複(例えば、空間的冗長性)を最小にするように設計されている。普通のビデオコーディングでは、イントラピクチャフレームは、本質的に、ソースイメージをJPEGフォーマット(多少の差はある)で符号化する。通常、ピクセルのブロックが、離散コサイン変換(DCT)を受け、マクロブロックごとの基礎で量子化される。イントラピクチャフレームは、他のフレームに依存せず、ランダムアクセスの「ジャンプイン」点として使用される。予測フレーム(Pフレーム)とも称するインターフレームは、前のIフレームまたはPフレームを利用して、現在のフレームの内容を「予測」し、次に、予測と実際のフレーム内容の間の差を圧縮する。予測は、類似するピクセルを含む、前のフレーム内の現在のマクロブロックの位置に近い領域を見つけることを試みることによって行われる。前の予測された領域を現在のマクロブロックに移動する(通常は1/2ピクセル精度)動きベクトルを計算する。動きベクトルは、動きがない場合に正当にヌルベクトルにすることができ、これは、もちろん、非常に効率的に符号化される。予測されたピクセルと実際の値の間の差を計算し、DCT変換し、係数を量子化する(IフレームDCT係数より粗く)。十分に似たピクセルのグループを前のフレームで見つけることができない場合には、Pフレームは、単純に、Iフレームであるかのようにマクロブロックを空間符号化する。
普通のビデオコーディングと似て、本発明のオンライン圧縮アルゴリズムのフレームに、「I」フレームと「P」フレームの2タイプがある。各「I」フレームの圧縮は、そのフレームの相関だけに基づくが、「P」フレームの圧縮は、そのフレームと前のフレームの相関に基づく。基本的に言って、「P」フレームの圧縮効率は、「I」フレームの圧縮効率よりはるかに高い。「I」フレームは、効率的な圧縮を与えることができないが、エラーに対して非常に堅牢である。さらに、各「I」フレームは、他のフレームに依存しないので、簡単にアクセスすることができる。これは、通常のビデオエンコーダが、フレームを周期的に「I」フレームとして圧縮する理由である。
しかし、普通のスキームと本発明のインタラクティブマルチビュービデオシステムのオンライン圧縮の大きな相違は、予測コーディングをスピードアップするために導入された独自の「スタティック」モードにある。スタティックモードを見つけるためには、オリジナルイメージと基準イメージの間の差を計算する必要がある。計算の複雑さをさらに減らすために、このスタティックモードを使用するか否かの判断は、すべてのビューの間で共同して判定される。この共同判断では、あるビューのスタティック領域が、まず検出される。次に、隣接するビューとオーバーラップするその対応する領域が、スタティックになる可能性が高いと考えられる。最後に、非常に単純な検査を適用して、この判断を確認する(本発明の一実施形態では、ピクセルの非常に小さい部分だけが、オリジナルイメージと基準イメージの間の差を計算するのに使用される)。スタティックモードでは、用いられるマクロブロック(MB)が、伝統的なインターモードのようにコーディングされ、それに対応する基準イメージ(次のフレームで時間予測に使用される)は、その前に構築されたイメージから単純にコピーされる。その結果、逆量子化、逆DCT、および動き補償のどれもが、このMBの基準イメージの作成に必要でなくなる。
新しいコーディングモードの他に、ジョイント動き推定(ME)も、MEの複雑さを減らすために適用される。この新しいMEでは、伝統的なMEが、まず、あるビューに適用される。次に、3D MVを、そのビューの見つかったMVに基づいて作成する。その後、3D MVを隣接するビューに射影して、それ自体のMVを予測する。予測されたMVに基づいて、これらのビューの検索範囲を減らし、したがって、複雑さを大幅に減らすことができる。例えば、普通のシングルビュービデオコーディングでは、エンコーダは、通常、あるマクロブロックの動きベクトルを見つけるために、32×32領域内を検索しなければならない。しかし、本発明によるシステムおよび方法のマルチビュービデオコーディングでは、3D動きが入手され、あるビューに射影されたならば、そのビューの検索範囲を狭める(例えば、8×8ピクセルに)ことができ、したがって、そのビューの動きベクトルを見つける計算が、大幅に減る。その一方で、これは、異なるビューの動きベクトルが相関することも暗示する。したがって、これらの動きベクトルを、さらに圧縮することができる。本発明の一実施形態では、真の動きベクトルVと、他のビューから得られた予測されたベクトル
Figure 2006042360
の間の差だけが符号化される。
1つのカメラに関する本発明のオンライン符号化スキームの全般的な例示的な流れ図を、図7に示す。この例では、システムが、それぞれが毎秒30フレームでキャプチャする3台のカメラを有すると仮定する。したがって、フレームサイズは640×480ピクセルである。したがって、毎秒3×30フレームを圧縮する必要がある。単一のカメラによってキャプチャされたフレームの圧縮を、まず考慮し、次に、複数ビデオの場合を述べる。
図7からわかるように、処理アクション702は、フレームを符号化する時に、まず、フレームのタイプに無関係に、フレームをブロック、好ましくはマクロブロック(MB)に分割する。MBのサイズは、16×16ピクセルである、すなわち、上の例では、1フレームあたり640×480/16/16個のMBが得られる。次に、各フレームを、事前に決定されたコーディングタイプに従って圧縮する。各「I」フレームについて、すべてのMBを、イントラモード(処理アクション704、708)を用いてコーディングするが、「P」フレームについて、各MBを符号化する時に3つのコーディングモードを選択することができる。モード判断は、MBベースである。言い換えると、「P」フレームの異なるMBは、異なるコーディングモードを有することができる。使用すべきモードを判定するために、エンコーダは、まず、各MBの動き推定動作を実行して、現在のフレームとその前のフレームの類似性を計算する(処理アクション710)。差が非常に大きい(そのMBにほとんど相関がないことを示す)場合に、イントラモードを選択する(処理アクション712および714)。差が非常に小さい場合には、「スタティック」モードを選択する(処理アクション716および718)。残りの場合に関して、「インター」モードを選択する(処理アクション720)。これが、1つのビデオストリームだけからの入力に関するモード判断である。
下は、オンライン圧縮に関する3つの符号化モードの説明である。図11A、11B、および11Cに、上で説明したモード(それぞれインターモード、イントラモード、およびスタティックモード)の符号化アーキテクチャを示す。
1)イントラモード:図8からわかるように、各MBの係数を、まず変換モジュールまたは「T」モジュールによって変換して、空間相関を除去する(処理アクション802)。その後、変換された係数を「Q」モジュールによって量子化する(処理アクション804)(量子化処理の単純な例は、次の通りである:2つの係数、67および16を有し、量子化レベルが64であると仮定する。量子化の後に、第1の係数は64になり、第2の係数は0になる。量子化の目的が、係数の不確実性を除去し、その結果、簡単にコーディングできるようにすることであることがわかる。もちろん、情報の一部が、量子化の後に失われる)。量子化された係数を符号化する(例えば、「エントロピコーディング」モジュールを使用することによって)(処理アクション806)。最後に、圧縮されたビットストリームを得る(処理アクション808)。その一方で、次のフレームがPフレームである場合には、次のフレームのために基準イメージを更新することも必要である。これは、逆量子化モジュール(「Q-1」)および逆変換モジュール(「T-1」)によって達成される(処理アクション810)。その後、得られた結果をフレームバッファに保存する。
2)インターモード:図9からわかるように、現在のMBおよび前の基準フレームを、まず入力する(処理アクション902)。次に、「フレームバッファ」に保存された前の基準フレームに対して「動き推定」を実行して、現在のMBの最も類似する領域を見つける(処理アクション904)(動き推定プロセスが、通常、図7に示されたモード判断処理によって現在のMBに対して実行され、したがって、ここでもう一度行う必要がないことに留意されたい)。その後、処理アクション906に示されているように、動き補償(MC)モジュールによって動き補償動作を適用して、見つかった領域を「フレームバッファ」からコピーする。この時に、2つのMBが得られ、一方はオリジナルフレームからのMB、他方は「MC」モジュールからのMBである。この2つのMBは、似ているが、その間にまだ多少の差がある。残差と称するその差を、「T」モジュールによって変換し、「Q」モジュールによって量子化する(処理アクション908および910)。最後に、量子化結果を「エントロピコーディング」モジュールによってコーディングする(処理アクション912)。次のフレームのために基準イメージを更新する必要もある。これは、逆量子化モジュール(「Q-1」および逆変換モジュール(「T-1」)(処理アクション914および916に示されているように)と、その後、これらのアクションの結果として回復された残差を動き補償された結果に加算すること(処理アクション918)によって達成される。その後、エンコーダは、デコーダと同一の基準イメージを有する。
3)スタティックモード:スタティックモードは、本発明のシステムおよび方法によって使用される新しいモードである。その最初の部分は、インターモードの最初の部分に非常に似ている。しかし、大きな相違が第2の部分すなわち、基準フレームの作成にある。この新しいモードでは、新しい基準が、前の基準からコピーされるが、以前のインターモードでは、逆量子化、逆変換、および残差加算が必要である。その結果、膨大な量の計算を節約することができる。スタティックモード処理の流れ図を、図10に示す。図10からわかるように、現在のMBおよび前の基準フレームを、まず入力する(処理アクション1002)。次に、「フレームバッファ」に保存された前の基準フレームに対して「動き推定」処理を実行して、現在のMBの最も類似する領域を見つける(処理アクション1004)(動き推定プロセスが、通常、図7に示されたモード判断処理によって現在のMBに対して実行されることに留意されたい。したがって、ここでもう一度行う必要はない)。その後、処理アクション1006に示されているように、「MC」モジュール(すなわち、動き補償)を適用して、見つかった領域を「フレームバッファ」からコピーする。この時に、2つのMBが得られ、一方はオリジナルフレームからのMB、他方は「MC」モジュールからのMBである。この2つのMBの間の差を、「T」モジュールによって変換し、「Q」モジュールによって量子化する(処理アクション1008および1010)。最後に、量子化結果を「エントロピコーディング」モジュールによってコーディングする(処理アクション1012)。新しい基準フレームに関して、これは、動き補償されたMBをコピーすることによって簡単に得られる(処理アクション1014)。このスタティックモードで、MBが、実際にスタティック(静的)である必要はなく、動きを含めることができることを指摘することが重要である。さらに、MBをインターモードまたはスタティックモードのどちらとしてコーディングするかを判定するモード判断閾値が非常に大きくなる場合に、インターモードMBのほとんどがスタティックモードとしてコーディングされるようになる。その場合に、複雑さを大幅に減らすことができると同時に、性能が少しだけ犠牲になる。本発明の一実施形態では、上のモード判断閾値が、複雑さと性能の間の適当なトレードオフを達成するように制御される。
復号化プロセスは、符号化プロセスの逆である。例えば、圧縮されたビットストリームが、まずエントロピデコーダに入力されて、量子化された係数が獲得される(各MBのコーディングモードなどの他の必要な情報と共に)。MBごとに、そのコーディングモードに従って、量子化された係数が、逆量子化、逆変換などを行われる。
では、複数のカメラがある場合のモード判断についてはどうであろうか。3つのカメラに戻り、図12Aおよび12Bを参照する。第1カメラからのビデオは、前に示したものと正確に同一の形でモード判断を実行される(処理アクション1202〜1222)。その後、エピポーラ幾何学およびイメージ領域の類似性を使用して、第1カメラと残りの2つのカメラの間の対応を確立することを試みる(処理アクション1224)。この対応に基づいて、第2のカメラおよび第3のカメラのコーディングモードを推定する(処理アクション1226)。推定は、必ず正しいとは限らないので、ここで見つかったコーディングモードおよび動きベクトルは、洗練される必要があり、この洗練は、より少ない計算コストを有する第2モード判断プロセス(処理アクション1228)によって達成される。次に、見つかったコーディングモードに基づいて各MBをコーディングする(処理アクション1230)。シングルビューのモード判断に似て、この第2判断プロセスも、オリジナルMBと動き補償されたMBの間の差を計算する。しかし、ピクセルの小さい部分の差だけを計算する。その結果、複雑さの多くが減らされる。
マルチビューの場合に、各ビューが、シングルビューの場合と同一の形で独立に復号化される。MVが隣接ビューから予測される場合に、隣接ビューのMVをまず復号化しなければならない。
3.2 オフライン圧縮
オフライン圧縮を使用して、ビデオデータストリームを圧縮するか、さらに圧縮することができる。図13および14からわかるように、オフライン圧縮の主要なアイデアは、すべてのビューを3Dマッピングに分解することであり、この3Dマッピングは、3D環境内の特徴点のグループからなる。図13からわかるように、処理アクション1302では、各特徴点を、その3D座標(x,y,z)および対応する色成分(Y,U,V)によって表す。作成されたマッピングは、各ビューのすべてのピクセルを再構成することができる特徴点の最小限の集合である。DCTおよびDWTなどの変換ベースの分解と異なって、この種の分解は、マルチビュービデオのデコリレートに関する最も効率的な分解である。明らかに、ビューの数が増えた場合に、新しい特徴点(すなわち、新しい情報)だけを記録する必要があり、他の特徴点は、既存マッピングから見つけることができる。
3Dマッピング作成の後に、処理アクション1304に示されているように、得られた特徴点を変換して、それらの間の相関をさらに分解する。変換された結果を量子化し、「ベースレイヤ」ビットストリームとして符号化する(処理アクション1306および1308)。逆量子化された特徴点を、各ビューにマッピングし戻して、予測されたビューイメージを形成する(処理アクション1310)。予測されたイメージは、オリジナルイメージに近いが、これらの間にはまだ多少の差がある。処理アクション1312および1314に示されているように、その差を、各ビューイメージの「エンハンスメントレイヤ」として独立に符号化する(エンハンスメントレイヤビットストリームをスケーラブルな形で符号化して、ネットワーク適合能力を改善することができる)。さらに、この2種類のレイヤを符号化する時に、時間相関をさらに使用することができる。これは、時間領域で、マッピング情報およびエンハンスメント残差の静的部分が不変であるからである。移動する部分について、まだ、3D動き構造によって圧縮することができる。
オフライン圧縮の例示的なコーディングアーキテクチャを、図14に示す。これには、3Dマッピング作成モジュール1402、変換モジュール1404、量子化モジュール1406、逆変換モジュール1408、逆量子化モジュール1410、逆マッピングモジュール1412、およびエントロピ符号化モジュール1414、ならびにビューバッファ1416が含まれる。提示を単純にするために、この例では2つのビューだけを検討する。第i時刻にキャプチャされたビューについて、すべてのビューイメージおよびカメラの位置が、「3Dマッピング作成」モジュールに入力されて、特徴点集合Miが抽出される。次に、前に再構成された特徴点集合
Figure 2006042360
からマッピング情報Miを予測して、時間相関を除去する。予測された残差
Figure 2006042360
を変換し、量子化する(ここでは、DCT変換、離散ウェーブレット変換(DWT)変換、または他の変換を採用することができる)。最後に、エントロピコーディングを適用して、ベースレイヤビットストリームを生成する。再構成されたマッピング情報
Figure 2006042360
を、カメラの位置と共に「逆マッピング」モジュールに入力する。その後、各ビューの予測されたイメージを獲得する。予測されたイメージとオリジナルイメージの間の差を、時間予測によってさらにデコリレートする。残差を変換し、量子化する(ここではDCTまたはDWTのいずれかあるいは他の変換を採用することができる)。最後に、エントロピコーディングを適用して、エンハンスメントレイヤビットストリームを生成する(この例では、ビューごとに1ビットストリームの、2つのエンハンスメントレイヤビットストリームが作られる)。
復号化プロセスは、次の通りである。あるビューの再構成が望まれると仮定する。ベースレイヤを、まず、エントロピ復号化、逆量子化、逆変換など(例えば、そのレイヤのコーディングプロセスの逆)を介して復号化する。その後に、そのビューのエンハンスメントレイヤを、エントロピ復号化、逆量子化、逆変換などを介して復号化する。最後に、得られた共通の特徴点(ベースレイヤからの)を、そのビューに逆マッピングする。獲得されたイメージおよび復号化されたエンハンスメントレイヤ結果が、そのビューの再構成されたイメージを形成する。
本発明の前述の説明は、例示および説明のために提示された物である。網羅的であること、または本発明を開示された正確な形に制限することは、意図されていない。多数の修正形態および変形形態が、上の教示に鑑みて可能である。本発明の範囲が、この詳細な説明によって制限されるのではなく、請求項によって制限されることが意図されている。
Figure 2006042360
本発明を実施する例示的なシステムを構成する汎用コンピューティングデバイスを示す図である。 本発明によるインタラクティブマルチビュービデオシステムを示す単純化されたブロック図である。 本発明のインタラクティブマルチビュービデオシステムで使用される較正プロシージャ全体を示す単純化された流れ図である。 本発明のインタラクティブマルチビュービデオシステムで使用されるパターンベース較正を示す流れ図である。 本発明によるシステムおよび方法の一実施形態で使用される例示的な較正パターンを示すイメージを示す図である。 本発明のインタラクティブマルチビュービデオシステムで使用されるパターンフリー較正を示す流れ図である。 本発明のインタラクティブマルチビュービデオシステムで使用されるビデオインデックステーブルを示す図である。 本発明のインタラクティブマルチビュービデオシステムで使用されるオーディオインデックステーブルを示す図である。 本発明の一実施形態の1つのカメラに関するオンライン圧縮スキームを示す流れ図である。 本発明の一実施形態のイントラモード符号化を示す流れ図である。 本発明の一実施形態のインターモード符号化を示す流れ図である。 本発明の一実施形態のスタティックモード符号化を示す流れ図である。 本発明の一実施形態の符号化アーキテクチャすなわち、インターモードの概略を示す図である。 本発明の一実施形態の符号化アーキテクチャすなわち、イントラモードの概略を示す図である。 本発明の一実施形態の符号化アーキテクチャすなわち、スタティックモードの概略を示す図である。 複数のカメラのビットストリームを符号化する符号化ロジックを示す流れ図である。 複数のカメラのビットストリームを符号化する符号化ロジックを示す流れ図である。 本発明の一実施形態のオフライン圧縮スキームを示す流れ図である。 本発明の一実施形態のオフライン圧縮システムを示すアーキテクチャである。
符号の説明
130 システムメモリ
134 オペレーティングシステム
135 アプリケーションプログラム
136 他のプログラムモジュール
137 プログラムデータ
198 オーディオレコーダ
120 処理ユニット
199 オーディオインターフェース
194 カメラインターフェース
190 ビデオインターフェース
195 出力周辺インターフェース
192 カメラ
191 モニタ
196 プリンタ
197 スピーカ
121 システムバス
140 ノンリムーバブル不揮発性メモリインターフェース
150 リムーバブル不揮発性メモリインターフェース
160 ユーザ入力インターフェース
170 ネットワークインターフェース
171 ローカルエリアネットワーク
144 オペレーティングシステム
145 アプリケーションプログラム
146 他のプログラムモジュール
147 プログラムデータ
161 マウス
162 キーボード
172 モデム
173 広域ネットワーク
180 リモートコンピュータ
185 リモートアプリケーションプログラム

Claims (20)

  1. ビデオ信号を符号化するシステムであって、
    汎用コンピューティングデバイスと、
    前記汎用コンピューティングデバイスによって実行可能なプログラムモジュールを含むコンピュータプログラムと
    を含み、前記コンピューティングデバイスは、前記コンピュータプログラムの前記プログラムモジュールによって、
    ビデオフレームを入力し、
    前記フレームをブロックに分割し、
    前記ビデオフレームがイントラフレームまたはインターフレームのどちらであるかを判定し、
    前記フレームタイプがイントラフレームである場合に、前記フレームのすべてのブロックをイントラブロックモードでコーディングし、
    前記フレームタイプがインターフレームである場合に、前記フレームの前記ブロックのそれぞれのコーディングのために、イントラブロック、インターブロック、またはスタティックブロックのコーディングモードの中で選択し、
    選択されたモードで各ブロックをコーディングする
    ように指示されることを特徴とするシステム。
  2. 各ブロックは、16×16ピクセルのマクロブロック(MB)であることを特徴とする請求項1に記載のシステム。
  3. 前記フレームの前記ブロックのそれぞれのコーディングのために、イントラブロック、インターブロック、またはスタティックブロックのコーディングモードを選択する前記プログラムモジュールは、
    入力フレーム内の各ブロックの前の入力フレームとの差を判定するために、ブロックごとに動き推定動作を実行するサブモジュールと、
    前記差が非常に大きい場合に、前記ブロックをコーディングするのに前記イントラブロックコーディングモードを選択するサブモジュールと、
    前記差が非常に小さい場合に、前記ブロックをコーディングするのに前記スタティックブロックコーディングモードを選択するサブモジュールと、
    前記差が非常に大きくも非常に小さくもない場合に、前記ブロックをコーディングするのに前記インターブロックコーディングモードを選択するサブモジュールと
    を含むことを特徴とする請求項1に記載のシステム。
  4. 前記差が非常に大きいかどうかを判定する前記サブモジュール、前記差が非常に小さいかどうかを判定する前記サブモジュール、または前記差が非常に大きくも非常に小さくもないかどうかを判定する前記サブモジュールは、閾値の組を使用することを特徴とする請求項1に記載のシステム。
  5. イントラフレームのコーディングモードを選択する前記プログラムモジュールは、
    各ブロックの空間相関を除去するために、各ブロックを表す係数を変換するサブモジュールと、
    前記変換された係数を量子化するサブモジュールと、
    前記量子化された変換された係数を符号化するサブモジュールと、
    前記変換された量子化された係数を逆量子化するサブモジュールと、
    更新された基準フレームを入手するために、前記逆量子化された係数を逆変換するサブモジュールと
    を含むことを特徴とする請求項1に記載のシステム。
  6. 各ブロックを表す係数を変換する前記サブモジュールは、変換モジュールを使用することを特徴とする請求項5に記載のシステム。
  7. 前記変換された係数を量子化する前記サブモジュールは、量子化モジュールを使用することを特徴とする請求項5に記載のシステム。
  8. 前記量子化された変換された係数を符号化する前記サブモジュールは、エントロピ符号化モジュールを使用することを特徴とする請求項5に記載のシステム。
  9. インターブロックのコーディングモードを選択する前記サブモジュールは、
    前記フレームおよびストアされた基準フレームのブロックを入力するモジュールと、
    入力された前記フレームの前記ブロック内の最も似た領域を見つけるために、前記ストアされた基準フレームに対して動き推定処理を実行するモジュールと、
    動き補償動作から得られる第2ブロックを得るために、見つかった前記最も似た領域をコピーするために、前記入力フレームの前記ブロック内の前記最も似た領域に前記動き補償動作を適用するモジュールと、
    前記入力ブロックと前記動き補償動作から得られた前記第2ブロックとの間の差を判定するモジュールと、
    前記差を変換するモジュールと、
    前記差を量子化するモジュールと、
    前記差をコーディングするモジュールと、
    前記入力ブロックと前記動き補償動作から得られた前記第2ブロックとの間の前記差を逆量子化するモジュールと、
    前記入力ブロックと前記動き補償動作から得られた前記第2ブロックとの間の前記差を逆変換するモジュールと、
    更新された基準フレームを得るために、前記動き補償動作から得られた前記第2ブロックに前記逆量子化され逆変換された差を加算するモジュールと
    を含むことを特徴とする請求項3に記載のシステム。
  10. 前記更新された基準フレームをフレームバッファに保存するモジュールをさらに含むことを特徴とする請求項9に記載のシステム。
  11. スタティックのコーディングモードを選択する前記プログラムサブモジュールは、
    前記フレームおよびストアされた基準フレームのブロックを入力するモジュールと、
    入力された前記フレームの前記ブロック内の最も似た領域を見つけるために、前記ストアされた基準フレームに対して動き推定処理を実行するモジュールと、
    動き補償動作から得られる第2ブロックを得るために、見つかった前記最も似た領域をコピーするために、前記入力フレームの前記ブロック内の前記最も似た領域に前記動き補償動作を適用するモジュールと、
    前記入力ブロックと前記動き補償動作から得られた前記第2ブロックとの間の差を判定するモジュールと、
    前記差を変換するモジュールと、
    前記差を量子化するモジュールと、
    前記差をコーディングするモジュールと、
    前記動き補償動作から得られた前記第2ブロックをコピーし、更新された基準フレームとしてこれを保存するモジュールと
    を含むことを特徴とする請求項3に記載のシステム。
  12. 前記ビデオ信号は、リアルタイムでコーディングされることを特徴とする請求項1に記載のシステム。
  13. 複数のカメラからのビデオ信号を符号化するコンピュータ実施された処理であって、
    第1カメラからのビデオについて、
    ビデオフレームを入力する処理アクションと、
    前記フレームをブロックに分割する処理アクションと、
    前記ビデオフレームがイントラフレームまたはインターフレームのどちらであるかを判定する処理アクションと、
    前記フレームタイプがイントラフレームである場合に、前記フレーム内のすべてのブロックをイントラブロックモードでコーディングする処理アクションと、
    前記フレームタイプがインターフレームである場合に、前記フレームの前記ブロックのそれぞれのコーディングのためにイントラブロック、インターブロック、またはスタティックブロックのコーディングモードの中で選択する処理アクションと、
    1つまたは複数の後続カメラからのビデオについて、
    前記第1カメラからの前記ビデオと1つまたは複数の後続カメラからの前記ビデオとの間の対応を確立する処理アクションと、
    前記対応に基づいて前記1つまたは複数の後続カメラのコーディングモードを推定する処理アクションと
    を含むことを特徴とするコンピュータ実施された処理。
  14. 前記対応に基づいて前記1つまたは複数の後続カメラのコーディングモードを推定する前記処理アクションは、
    第1ビュー内のスタティック領域を判定することと、
    前記第1ビュー内の前記スタティック領域に対応する隣接ビュー内の領域をスタティックとみなすことと、
    前記隣接ビュー内の前記領域の小さい部分が実際にスタティックであるかどうかを判定するために、前記隣接ビュー内の前記領域の前記小さい部分の検査を実行することと
    を含むことを特徴とする請求項13に記載のコンピュータ実施された処理。
  15. 汎用コンピューティングデバイスと、
    前記汎用コンピューティングデバイスによって実行可能なプログラムモジュールを含むコンピュータプログラムと
    を含み、前記コンピューティングデバイスは、前記コンピュータプログラムの前記プログラムモジュールによって、
    圧縮されたビデオフレームを入力し、
    前記圧縮されたビデオフレームを表す量子化された係数を獲得するために、前記圧縮されたビデオフレームをエントロピ復号化し、
    前記ビデオフレームをブロックに分割し、
    前記圧縮解除されたビデオフレームがイントラフレームまたはインターフレームのどちらであるかを判定し、
    前記フレームタイプがイントラフレームである場合に、前記フレーム内のすべてのブロックをイントラブロックモードで復号化し、
    前記フレームタイプがインターフレームである場合に、前記フレームの前記ブロックのそれぞれを復号化するために、イントラブロック、インターブロック、またはスタティックブロックの復号化モードの中で選択し、
    前記選択されたモードで各ブロックを復号化する
    ように指示されることを特徴とするビデオ信号を復号化するシステム。
  16. 前記フレームの前記ブロックのそれぞれを復号化するために、イントラブロック、インターブロック、またはスタティックブロックの復号化モードを選択する前記プログラムモジュールは、
    前記入力フレーム内の各ブロックの前の入力フレームとの差を判定するために、ブロックごとに動き推定動作を実行するサブモジュールと、
    前記差が非常に大きい場合に、前記ブロックを復号化するために前記イントラブロック復号化を選択するサブモジュールと、
    前記差が非常に小さい場合に、前記ブロックを復号化するために前記スタティックロック復号化を選択するサブモジュールと、
    前記差が非常に大きくも非常に小さくもない場合に、前記ブロックを復号化するために前記インターブロック復号化を選択するサブモジュールと
    を含むことを特徴とする請求項15に記載のシステム。
  17. イントラブロックモードですべてのブロックを復号化する前記プログラムモジュールは、
    前記量子化された係数を逆量子化することと、
    前記復号化されたビデオフレームを得るために、前記逆量子化された係数を逆変換することと
    を含むことを特徴とする請求項15に記載のシステム。
  18. インターブロックモードですべてのブロックを復号化する前記プログラムモジュールは、
    前記量子化された係数を逆量子化することと、
    前記逆量子化された係数を逆変換することと
    復号化されたビデオフレームを得るために、基準フレームの係数に前記逆変換された逆量子化された係数を加算することと
    を含むことを特徴とする請求項15に記載のシステム。
  19. スタティックモードですべてのブロックを復号化する前記プログラムモジュールは、
    前記量子化された係数を逆量子化することと、
    前記逆量子化された係数を逆変換することと
    復号化されたビデオフレームを得るために、基準フレームの係数に前記逆変換された逆量子化された係数を加算することと
    を含むことを特徴とする請求項15に記載のシステム。
  20. 同一イベントの異なるカメラ視点からの複数のビデオフレームは、入力され、前記ビデオフレームのどれを最初に復号化しなければならないかを判定するために、動きベクトル(MV)動作は使用されることを特徴とする請求項15に記載のシステム。
JP2005217365A 2004-07-27 2005-07-27 オフラインマルチビュービデオ圧縮のシステムおよび方法 Expired - Fee Related JP4989051B2 (ja)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US10/901,477 US7671893B2 (en) 2004-07-27 2004-07-27 System and method for interactive multi-view video
US10/901,477 2004-07-27
US10/922,743 US20060023787A1 (en) 2004-07-27 2004-08-19 System and method for on-line multi-view video compression
US10/922,743 2004-08-19

Publications (2)

Publication Number Publication Date
JP2006042360A true JP2006042360A (ja) 2006-02-09
JP4989051B2 JP4989051B2 (ja) 2012-08-01

Family

ID=35355304

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005217365A Expired - Fee Related JP4989051B2 (ja) 2004-07-27 2005-07-27 オフラインマルチビュービデオ圧縮のシステムおよび方法

Country Status (3)

Country Link
US (1) US20060023787A1 (ja)
EP (1) EP1622390A3 (ja)
JP (1) JP4989051B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008211417A (ja) * 2007-02-26 2008-09-11 Fujitsu Ltd 多視点動画像伝送システム
JP2010098537A (ja) * 2008-10-16 2010-04-30 Fujitsu Ltd トランスコード装置およびトランスコード方法

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100779875B1 (ko) * 2005-01-14 2007-11-27 주식회사 휴맥스 다-시점 코딩을 위한 참조 프레임 순서 설정 방법 및 그방법을 기록한 기록매체
JP2008005112A (ja) * 2006-06-21 2008-01-10 Matsushita Electric Ind Co Ltd ストリームエンコーダ及びストリームデコーダ
KR101460362B1 (ko) 2007-06-25 2014-11-14 삼성전자주식회사 다시점 비디오 코딩에서 휘도 보상 방법 및 장치
KR20080114482A (ko) * 2007-06-26 2008-12-31 삼성전자주식회사 다시점 비디오 코딩에서 휘도 보상 방법 및 장치
KR101594048B1 (ko) * 2009-11-09 2016-02-15 삼성전자주식회사 카메라들의 협력을 이용하여 3차원 이미지를 생성하는 방법 및 상기 방법을 위한 장치
JP5549476B2 (ja) * 2010-08-24 2014-07-16 ソニー株式会社 画像処理装置と画像処理方法
US9552597B2 (en) * 2012-02-17 2017-01-24 Ebay Inc. Electronic commerce file system
US20170201558A1 (en) * 2016-01-11 2017-07-13 Hanwha Techwin Co., Ltd. Method of managing a network and image obtaining apparatus
US10341650B2 (en) * 2016-04-15 2019-07-02 Ati Technologies Ulc Efficient streaming of virtual reality content
US10212428B2 (en) * 2017-01-11 2019-02-19 Microsoft Technology Licensing, Llc Reprojecting holographic video to enhance streaming bandwidth/quality
US20190268601A1 (en) * 2018-02-26 2019-08-29 Microsoft Technology Licensing, Llc Efficient streaming video for static video content
US11132819B2 (en) * 2018-12-13 2021-09-28 Konkuk University Industrial Cooperation Corp Method and apparatus for decoding multi-view video information
CN110896464B (zh) * 2019-11-19 2022-03-04 北京奇艺世纪科技有限公司 一种音频数据生成方法、装置、系统及控制器

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63121372A (ja) * 1986-11-10 1988-05-25 Kokusai Denshin Denwa Co Ltd <Kdd> 動画像信号のハイブリツド符号化方式
JPH05206959A (ja) * 1992-01-27 1993-08-13 Nippon Telegr & Teleph Corp <Ntt> フレーム間差分信号変化検出通信方法
JPH09261653A (ja) * 1996-03-18 1997-10-03 Sharp Corp 多視点画像符号化装置
JPH09331528A (ja) * 1996-06-11 1997-12-22 Hitachi Ltd 画像符号化機能付復号装置

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4821119A (en) * 1988-05-04 1989-04-11 Bell Communications Research, Inc. Method and apparatus for low bit-rate interframe video coding
US5179441A (en) * 1991-12-18 1993-01-12 The United States Of America As Represented By The Administrator Of The National Aeronautics And Space Administration Near real-time stereo vision system
JP2677775B2 (ja) * 1994-04-14 1997-11-17 株式会社東芝 再生装置
CA2168327C (en) * 1995-01-30 2000-04-11 Shinichi Kikuchi A recording medium on which a data containing navigation data is recorded, a method and apparatus for reproducing a data according to navigationdata, a method and apparatus for recording a data containing navigation data on a recording medium.
US5619256A (en) * 1995-05-26 1997-04-08 Lucent Technologies Inc. Digital 3D/stereoscopic video compression technique utilizing disparity and motion compensated predictions
US5796434A (en) * 1996-06-07 1998-08-18 Lsi Logic Corporation System and method for performing motion estimation in the DCT domain with improved efficiency
US6055274A (en) * 1997-12-30 2000-04-25 Intel Corporation Method and apparatus for compressing multi-view video
EP2261915A3 (en) * 1998-02-23 2011-03-09 Kabushiki Kaisha Toshiba Information storage medium, information playback method and apparatus and information recording method
US7796162B2 (en) * 2000-10-26 2010-09-14 Front Row Technologies, Llc Providing multiple synchronized camera views for broadcast from a live venue activity to remote viewers
US20030210329A1 (en) * 2001-11-08 2003-11-13 Aagaard Kenneth Joseph Video system and methods for operating a video system
JP3793100B2 (ja) * 2002-02-14 2006-07-05 キヤノン株式会社 情報処理方法、装置および記録媒体
WO2004001752A1 (en) * 2002-06-24 2003-12-31 Lg Electronics Inc. Recording medium having data structure for managing reproduction of multiple title video data recorded thereon and recording and reproducing methods and apparatuses
JP3880495B2 (ja) * 2002-09-25 2007-02-14 キヤノン株式会社 撮像装置の制御方法及び画像配信装置
KR100534207B1 (ko) * 2002-12-09 2005-12-08 삼성전자주식회사 비디오 부호화기의 움직임 추정기 및 그 방법
KR100561394B1 (ko) * 2002-12-30 2006-03-16 삼성전자주식회사 영상 부호화 시 부호화 모드 결정 및 관리 장치와 그 방법
KR100556848B1 (ko) * 2003-05-13 2006-03-10 엘지전자 주식회사 디지털 워터마킹을 이용한 동영상 부호화/복호화 장치 및방법

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63121372A (ja) * 1986-11-10 1988-05-25 Kokusai Denshin Denwa Co Ltd <Kdd> 動画像信号のハイブリツド符号化方式
JPH05206959A (ja) * 1992-01-27 1993-08-13 Nippon Telegr & Teleph Corp <Ntt> フレーム間差分信号変化検出通信方法
JPH09261653A (ja) * 1996-03-18 1997-10-03 Sharp Corp 多視点画像符号化装置
JPH09331528A (ja) * 1996-06-11 1997-12-22 Hitachi Ltd 画像符号化機能付復号装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008211417A (ja) * 2007-02-26 2008-09-11 Fujitsu Ltd 多視点動画像伝送システム
JP2010098537A (ja) * 2008-10-16 2010-04-30 Fujitsu Ltd トランスコード装置およびトランスコード方法

Also Published As

Publication number Publication date
JP4989051B2 (ja) 2012-08-01
EP1622390A3 (en) 2012-10-17
EP1622390A2 (en) 2006-02-01
US20060023787A1 (en) 2006-02-02

Similar Documents

Publication Publication Date Title
JP4955234B2 (ja) インタラクティブマルチビュービデオのシステムおよび方法
JP4975985B2 (ja) マルチビュービデオフォーマット
JP4965092B2 (ja) パターンを利用せずに画像間ホモグラフィによって複数のカメラを校正するためのシステムおよび方法
JP4989051B2 (ja) オフラインマルチビュービデオ圧縮のシステムおよび方法
JP2006081161A (ja) オフラインマルチビュービデオ圧縮のシステムおよび方法
EP1622381A2 (en) A system and method for client services for interactive multi-view video
US10567464B2 (en) Video compression with adaptive view-dependent lighting removal
US10419737B2 (en) Data structures and delivery methods for expediting virtual reality playback
Lou et al. A real-time interactive multi-view video system
EP1779662B1 (en) Method and device for motion estimation and compensation for panorama image
JPH10271511A (ja) 画像符号化装置と画像復号化装置
CN110612553A (zh) 对球面视频数据进行编码
JP7217226B2 (ja) グローバルな回転における動き補償画像を符号化する方法、デバイス及びストリーム
US20220053222A1 (en) Apparatus and method for generating an image data stream
Chan et al. The plenoptic videos: capturing, rendering and compression
JP2000285260A (ja) 多視点画像の符号化方法及び任意視点画像の生成方法
JPH11161800A (ja) 多視点画像符号化/復号化装置および多視点画像符号化/復号化方法ならびに三次元物体の画像符号化/復号化装置
Kum et al. Intra-stream encoding for multiple depth streams
Fecker et al. Complexity evaluation of random access to coded multi-view video data
Müller et al. Video Data Processing: Best pictures on all channels
Kum et al. Reference stream selection for multiple depth stream encoding
JP2000232659A (ja) 多視点における動画像の処理方法
Verlani et al. Parametric Proxy-Based Compression of Multiple Depth Movies of Humans
Salehi Doolabi Cubic-Panorama Image Dataset Analysis for Storage and Transmission
Shum et al. Compression of Dynamic Image-based Representations

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080728

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110428

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110510

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110810

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20111202

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120301

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20120330

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120427

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150511

Year of fee payment: 3

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees