図面 (/)

技術 時間的なスケーラビリティのために2方向予測されたフレームを組み立てるための方法及び装置

出願人 クゥアルコム・インコーポレイテッド
発明者 ビジャヤラクシュミ・アール.・ラビーンドランゴードン・ケント・ウォーカー
出願日 2011年3月9日 (9年8ヶ月経過) 出願番号 2011-051696
公開日 2011年8月11日 (9年3ヶ月経過) 公開番号 2011-155671
状態 特許登録済
技術分野 TV信号の圧縮,符号化方式
主要キーワード 外部周辺デバイス 適合領域 境界端 適合部分 外部記憶素子 下位セット 下位構成要素 移動パス
関連する未来課題
重要な関連分野

この項目の情報は公開日時点(2011年8月11日)のものです。
また、この項目は機械的に抽出しているため、正しく解析できていない場合があります

図面 (11)

課題

時間的なスケーラビリティのために2方向予測されたフレームを組み立てる。

解決手段

巡目において第1のフレームから第1の参照フレーム部分の位置を見つけること、メモリ中に第1の参照フレーム部分を記憶すること、2巡目において第2のフレームから第2の参照フレーム部分の位置を見つけること、そして2方向に予測された部分を形成するために第1の参照フレーム部分及び第2の参照フレーム部分を統合すること、を含む。同様に、同時にただ1つの参照フレームから参照フレーム部分の位置を見つけることが可能でありそして各マクロブロックに対して限られた数の区分デコードすることが可能な動き補償コーデックによってデコードされるように2つの参照フレームから予測された2方向画像エンコーディングを制限する。

概要

背景

インターネット及びワイアレス通信爆発的な成長及び非常な成功のために、同様にマルチメディアサービスに対する増加している要求のために、インターネット及び移動体チャネルワイアレス・チャネルを介して媒体ストリーミングすることが、非常に大きな注目を集めている。ハイブリッド・インターネット・プロトコル(IP:Internet Protocol)ネットワークにおいて、ビデオは、サーバによって提供され、そして1又はそれより多くのクライアントストリームされることが可能である。有線通信手段は、電話回線ISDNケーブル、xDSL、光ファイバ、LAN(local area network:ローカルエリア・ネットワーク)、WAN(wide area network:広域ネットワーク)及びその他を含む。送信モードは、ユニキャスト又はマルチキャストのいずれかであることが可能である。PDA(personal digital assistant:パーソナルディジタルアシスタント)、ラップトップデスクトップセットトップボックス、TV、HDTV(high-definition television:高品位テレビ)、移動体電話機及びその他を含む、多様なクライアント・デバイスは、同じコンテントに対して同時に異なる帯域幅ビットストリームを必要とする。回線帯域幅は、(9.6kbpsから100Mbps又はそれ以上に)時間とともに急速に変化することがあり、そしてサーバの反応よりも早いことがある。

ハイブリッドIPネットワークと同様なものは、移動体通信/ワイアレス通信である。移動体チャネル/ワイアレス・チャネルを介したマルチメディア・コンテントの輸送は、下記の理由のために非常に難しい、これらのチャネルが、マルチパスフェーディングシャドーイングシンボル間干渉、及びノイズ妨害のような効果のために頻繁に著しく害されるためである。移動性及び競合するトラフィックのような複数の他の理由が、同様に、帯域幅変化及び損失を生じさせる。チャネル・ノイズ及びサービスされるユーザの数のような複数の要因が、チャネル環境時間変化する特性を決定する。環境状態に加えて、地理的な位置のために、同様に移動体が移動することのために、宛て先ネットワークが、第2世代セルラ・ネットワーク、第3世代セルラ・ネットワークからブロードバンド・データのみのネットワークに変化することがあり得る。移動中でさえも、全てのこれらの変動は、マルチメディア・コンテントのために適応レート調節を要求する。それゆえ、ハイブリッド有線/ワイアレス・ネットワークを介してのビデオの良好な送信は、効率的なコーディングを必要とし、同様に変化するネットワーク状態デバイス特性、及びユーザの好みへの適応性を必要とし、他方でしかも損失に対して弾力的であることを必要とする。

異なるユーザの要求を満たすためにそしてチャネル変化適応するために、ビットストリームの複数の独立したバージョンを発生させることが可能であり、各々は、送信帯域幅、ユーザ・ディスプレイ及び演算能力に基づいて制約の1つのクラスを満足させる。しかし、これは、サーバの記憶容量又はネットワークの容量に関して効率的でない。スケーラブル・コーディングにおいて、そこでは、ハイエンド・ユーザを適応させる1つのマクロ−ビットストリームがサーバにおいて創出され、ロー−エンド・アプリケーションのためのビットストリームは、マクロ−ビットストリームの下位セットとして埋め込まれる。その意味で、1つのビットストリームは、部分ビットストリームを選択的に送信することによって多様なアプリケーション環境適合されることが可能である。スケーラブル・コーディングによって提供される別の1つの利点は、エラーの傾向があるチャネル上でエラーに強いビデオ送信に対してである。エラー防護及びエラー隠匿(error concealment)は、容易に取り扱われることが可能である。より信頼性のある送信チャネル又はより良いエラー防護は、最も重要な情報を含んでいるベースレイヤビットに適用されることが可能である。

MPEG−1,MPEG−2,MPEG−4(総括してMPEG−xと呼ぶ)、H.261,H.262,H263,及びH.264(総括してH.26xと呼ぶ)のようなハイブリッド・コーダにおける空間的スケーラビリティ、時間的スケーラビリティ、及び信号対ノイズ比(SNR:signal to noise ratio)スケーラビリティがある。ハイブリッド・コーディングにおいて、時間的な冗長性は、動き補償予測MCP:motion-compensated prediction)によって除去される。ビデオは、一般的に、一連の画像のグループ(GOP:group of picture)に分割される、ここで、各GOPは、内部コード化されたフレーム(intra-coded frame)(I)で始まり、前方予測されたフレーム(P)及び2方向予測されたフレーム(B)の配列が続く。P−フレーム及びB−フレームの両者は、相互フレーム(inter-coded frame)である。Bフレームは、大部分のMPEGのようなコーダにおける時間的なスケーラビリティに対してキーである。しかしながら、MPEG−4単純プロフィール(Simple profile)及びH.264ベースライン・プロフィール(Baseline Profile)のような複数のプロフィールは、Bフレームをサポートしない。

MPEG−4において、プロフィール及びレベルは、特定のビットストリームをデコードするために必要とされるデコーダの能力に基づくシンタックス(syntax:構文)の下位セット及びシメンティクス(semantics:意味)を規定する手段を提供する。プロフィールは、全体のビットストリーム・シンタックスの下位セットとして定義される。レベルは、ビットストリーム内パラメータに課せられた制約の定義されたセットである。いずれかの与えられたプロフィールに関して、レベルは、一般に、デコーダの処理負荷及びメモリ能力に対応する。そこで、プロフィール及びレベルは、ビットストリームの制約を規定し、そしてそれゆえビットストリームをデコードする能力についての制限を定める。もし、デコーダがそのレベルにおいてそのプロフィールによって規定されように全てのシンタックス・エレメントの全ての許される値を適切にデコードすることが可能であるならば、一般に、デコーダは、与えられたレベルで与えられたプロフィールにしたがうように見なされるべきである。

近年のマイクロプロセッサチップセット進化発展、又は拡散は、ソフトウェアファームウェア及びハードウェアに対する変更を最小に保ちつつ要求が満足されることが可能な場合に、効率的な方式で実現されることが可能である。上で説明したように、MPEG−4単純プロフィール及びH.264ベースライン・プロフィールは、時間的なスケーラビリティに関してBフレームをサポートしない。したがって、これらのプロフィールに適合するように開発されたチップセットは、Bフレームをサポートしないことがある。より高いレートのマルチメディアの人気の増大そして要求の増加とともに、そしてより高いレートのマルチメディアをサポートするネットワークの増加とともに、MPEG−4単純プロフィール又はH.264ベースライン・プロフィールからBフレームを用いて時間的なスケーラビリティを提供するプロフィールへの有効な拡散パスが、必要とされる。MPEG−4規格は、ISO/IEC14496−2に記載されている。H.264規格は、[ISO/IEC14496−10]に記載されている。

概要

時間的なスケーラビリティのために2方向予測されたフレームを組み立てる。1巡目において第1のフレームから第1の参照フレーム部分の位置を見つけること、メモリ中に第1の参照フレーム部分を記憶すること、2巡目において第2のフレームから第2の参照フレーム部分の位置を見つけること、そして2方向に予測された部分を形成するために第1の参照フレーム部分及び第2の参照フレーム部分を統合すること、を含む。同様に、同時にただ1つの参照フレームから参照フレーム部分の位置を見つけることが可能でありそして各マクロブロックに対して限られた数の区分をデコードすることが可能な動き補償コーデックによってデコードされるように2つの参照フレームから予測された2方向画像エンコーディングを制限する。

目的

MPEG−4において、プロフィール及びレベルは、特定のビットストリームをデコードするために必要とされるデコーダの能力に基づくシンタックス(syntax:構文)の下位セット及びシメンティクス(semantics:意味)を規定する手段を提供する

効果

実績

技術文献被引用数
0件
牽制数
0件

この技術が所属する分野

(分野番号表示ON)※整理標準化データをもとに当社作成

ライセンス契約や譲渡などの可能性がある特許掲載中! 開放特許随時追加・更新中 詳しくはこちら

請求項1

同時にただ1つの参照フレームから参照フレーム部分の位置を見つけることが可能な動き補償コーデックを用いて2方向画像デコードするための方法、該方法は下記を具備する:1巡目において第1の参照フレームから第1の参照フレーム部分の位置を見つけること;メモリ中に該第1の参照フレーム部分を記憶すること;2巡目において第2の参照フレームから第2の参照フレーム部分の位置を見つけること;及び2方向に予測された部分を形成するために該第1の参照フレーム部分及び該第2の参照フレーム部分を統合すること。

請求項2

請求項1の方法、該方法は下記をさらに具備する:ワイアレスネットワークを介して、該第1の参照フレーム及び該第2の参照フレームを表しているエンコードされたデータを受信すること;及び該ワイアレス・ネットワークを介して該第1の参照フレーム部分及び該第2の参照フレーム部分の該位置を識別するエンコードされたデータを受信すること。

請求項3

請求項1の方法、該方法は下記をさらに具備する:該1巡目において該第1の参照フレームのピクセルを補間すること;及び該2巡目において該第2の参照フレームのピクセルを補間すること。

請求項4

請求項3の方法、該方法は下記をさらに具備する:該1巡目において該第1の参照フレームの境界端パッドすること;及び該2巡目において該第2の参照フレームの境界端をパッドすること。

請求項5

請求項1の方法、該方法は下記をさらに具備する:運動ベクトルを用いて該参照フレーム部分の位置を見つけること。

請求項6

請求項1の方法、該方法は下記をさらに具備する:該2方向に予測された部分に残留エラーを加えること。

請求項7

請求項1の方法、該方法は下記をさらに具備する:該2方向に予測された部分を表示すること。

請求項8

請求項1の方法、該方法は下記をさらに具備する:該1巡目及び該2巡目を連続して実行すること。

請求項9

請求項1の方法、該方法は下記をさらに具備する:時間的なスケーリングを実行するために2つの参照フレームから予測された2方向画像のデコーディングを省略することを決定すること。

請求項10

請求項2の方法、該方法は下記をさらに具備する:スケーラブルビデオコード化されたビットストリームベースレイヤ中のマルチメディア・データの第1の相互コード化された部分をエンコードすること;該スケーラブル・ビデオのコード化されたビットストリームのエンハンスメント・レイヤ中のマルチメディア・データの第2の2方向部分をエンコードすること、ここにおいて、該マルチメディア・データは該第1の参照フレームを表しているデータ、該第2の参照フレームを表しているデータ、及び該第1の参照フレーム部分及び該第2の参照フレーム部分の該位置を識別するデータを具備する;及び該ワイアレス・ネットワークを介して該マルチメディア・データを送信すること。

請求項11

同時にただ1つの参照フレームから参照フレーム部分の位置を見つけることが可能な動き補償コーデックを用いて2方向画像をデコードするための装置、該装置は下記を具備する:1巡目において第1の参照フレームから第1の参照フレーム部分の位置を見つけるための手段;メモリ中に該第1の参照フレーム部分を記憶するための手段;2巡目において第2の参照フレームから第2の参照フレーム部分の位置を見つけるための手段;及び2方向に予測された部分を形成するために該第1の参照フレーム部分及び該第2の参照フレーム部分を統合するための手段。

請求項12

請求項11の装置、該装置は下記をさらに具備する:ワイアレス・ネットワークを介して、該第1の参照フレーム及び該第2の参照フレームを表しているエンコードされたデータを受信するための手段;及び該ワイアレス・ネットワークを介して該第1の参照フレーム部分及び該第2の参照フレーム部分の該位置を識別するエンコードされたデータを受信するための手段。

請求項13

請求項11の装置、該装置は下記をさらに具備する:該1巡目において該第1の参照フレームのピクセルを補間するための手段;及び該2巡目において該第2の参照フレームのピクセルを補間するための手段。

請求項14

請求項13の装置、該装置は下記をさらに具備する:該1巡目において該第1の参照フレームの境界端をパッドするための手段;及び該2巡目において該第2の参照フレームの境界端をパッドするための手段。

請求項15

請求項11の装置、該装置は下記をさらに具備する:運動ベクトルを用いて該参照フレーム部分の位置を見つけるための手段。

請求項16

請求項11の装置、該装置は下記をさらに具備する:該2方向に予測された部分に残留エラーを加えるための手段。

請求項17

請求項11の装置、該装置は下記をさらに具備する:該2方向に予測された部分を表示するための手段。

請求項18

請求項11の装置、該装置は下記をさらに具備する:該1巡目及び該2巡目を連続して実行するための手段。

請求項19

請求項11の装置、該装置は下記をさらに具備する:時間的なスケーリングを実行するために2つの参照フレームから予測された2方向画像の該デコーディングを省略することを決定するための手段。

請求項20

同時にただ1つの参照フレームから参照フレーム部分の位置を見つけることが可能な動き補償コーデックを用いて2方向画像をデコードするための電子デバイス、該電子デバイスは、1巡目において第1の参照フレームから第1の参照フレーム部分の位置を見つけるため、メモリ中に該第1の参照フレーム部分を記憶するため、2巡目において第2の参照フレームから第2の参照フレーム部分の位置を見つけるため、そして2方向に予測された部分を形成するために該第1の参照フレーム部分及び該第2の参照フレーム部分を統合するために、構成される。

請求項21

請求項20の電子デバイス、該電子デバイスは、ワイアレス・ネットワークを介して、該第1の参照フレーム及び該第2の参照フレームを表しているエンコードされたデータを受信するため、そして該ワイアレス・ネットワークを介して該第1の参照フレーム部分及び該第2の参照フレーム部分の該位置を識別するエンコードされたデータを受信するために、さらに構成される。

請求項22

請求項20の電子デバイス、該電子デバイスは、該1巡目において該第1の参照フレームのピクセルを補間するため、そして該2巡目において該第2の参照フレームのピクセルを補間するために、さらに構成される。

請求項23

請求項22の電子デバイス、該電子デバイスは、該1巡目において該第1の参照フレームの境界端をパッドするため、そして該2巡目において該第2の参照フレームの境界端をパッドするために、さらに構成される。

請求項24

請求項20の電子デバイス、該電子デバイスは、運動ベクトルを用いて該参照フレーム部分の位置を見つけるために、さらに構成される。

請求項25

請求項20の電子デバイス、該電子デバイスは、該2方向に予測された部分に残留エラーを加えるために、さらに構成される。

請求項26

請求項20の電子デバイス、該電子デバイスは、該2方向に予測された部分を表示するために、さらに構成される。

請求項27

請求項20の電子デバイス、該電子デバイスは、該1巡目及び該2巡目を連続して実行するために、さらに構成される。

請求項28

請求項20の電子デバイス、該電子デバイスは、時間的なスケーリングを実行するために2つの参照フレームから予測された2方向画像の該デコーディングを省略することを決定するために、さらに構成される。

請求項29

同時にただ1つの参照フレームから参照フレーム部分の位置を見つけることが可能な動き補償コーデックを用いて2方向画像をデコードするための方法をコンピュータに実行させるための命令を有するコンピュータ読み取り可能な媒体、該方法は下記を具備する:1巡目において第1の参照フレームから第1の参照フレーム部分の位置を見つけること;メモリ中に該第1の参照フレーム部分を記憶すること;2巡目において第2の参照フレームから第2の参照フレーム部分の位置を見つけること;及び2方向に予測された部分を形成するために該第1の参照フレーム部分及び該第2の参照フレーム部分を統合すること。

請求項30

同時にただ1つの参照フレームから参照フレーム部分の位置を見つけることが可能でありそして各マクロブロックに対して限られた数の区分をデコードすることが可能な動き補償コーデックによってデコードされるように2つの参照フレームから予測された2方向画像をエンコードするための方法、該方法は下記を具備する:該2方向画像のマクロブロックを複数の部分マクロブロックに区分すること;該部分マクロブロックの各々に対して該2つの参照フレームの各々の中の予測された領域の位置を見つけること;及び該動き補償コーデックがデコードすることが可能な区分の該限られた数の半分よりも多くない数に該部分マクロブロックの数を制限すること。

請求項31

同時にただ1つの参照フレームから参照フレーム部分の位置を見つけることが可能でありそして各マクロブロックに対して限られた数の区分をデコードすることが可能な動き補償コーデックによってデコードされるように2つの参照フレームから予測された2方向画像をエンコードするための装置、該装置は下記を具備する:該2方向画像のマクロブロックを複数の部分マクロブロックに区分するための手段;該部分マクロブロックの各々に対して該2つの参照フレームの各々の中の予測された領域の位置を見つけるための手段;及び該動き補償コーデックがデコードすることが可能な区分の該限られた数の半分よりも多くない数に該部分マクロブロックの数を制限するための手段。

請求項32

同時にただ1つの参照フレームから参照フレーム部分の位置を見つけることが可能でありそして各マクロブロックに対して限られた数の区分をデコードすることが可能な動き補償コーデックによってデコードされるように2つの参照フレームから予測された2方向画像をエンコードするための電子デバイス、該電子デバイスは、該2方向画像のマクロブロックを複数の部分マクロブロックに区分するために、該部分マクロブロックの各々に対して該2つの参照フレームの各々の中の予測された領域の位置を見つけるために、及び該動き補償コーデックがデコードすることが可能な区分の該限られた数の半分よりも多くない数に該部分マクロブロックの数を制限するために、構成される。

請求項33

同時にただ1つの参照フレームから参照フレーム部分の位置を見つけることが可能でありそして各マクロブロックに対して限られた数の区分をデコードすることが可能な動き補償コーデックによってデコードされるように2つの参照フレームから予測された2方向画像をエンコードするための方法をコンピュータに実行させるための命令を有するコンピュータ読み取り可能な媒体、該方法は下記を具備する:該2方向画像のマクロブロックを複数の部分マクロブロックに区分すること;該部分マクロブロックの各々に対して該2つの参照フレームの各々の中の予測された領域の位置を見つけること;及び該動き補償コーデックがデコードすることが可能な区分の該限られた数の半分よりも多くない数に該部分マクロブロックの数を制限すること。

技術分野

0001

特許に関する本出願は、米国特許仮出願番号第60/568,142号、名称“B−フレーム及びスケーラビリティを与えるための方法及び装置”、2004年5月4日出願、に優先権を主張し、そして本出願の譲受人に譲渡され、それによって本明細書中引用により明示的に取り込まれている。

0002

本発明は、エンハンスメントレイヤ・フレームの組み立てのためにベース・レイヤ・モジュールの効率的な再使用でスケーラブル(scalable)・ビデオ・データをエンコードしそしてデコードするための方法及び装置に関する。

背景技術

0003

インターネット及びワイアレス通信爆発的な成長及び非常な成功のために、同様にマルチメディアサービスに対する増加している要求のために、インターネット及び移動体チャネルワイアレス・チャネルを介して媒体ストリーミングすることが、非常に大きな注目を集めている。ハイブリッド・インターネット・プロトコル(IP:Internet Protocol)ネットワークにおいて、ビデオは、サーバによって提供され、そして1又はそれより多くのクライアントストリームされることが可能である。有線通信手段は、電話回線ISDNケーブル、xDSL、光ファイバ、LAN(local area network:ローカルエリア・ネットワーク)、WAN(wide area network:広域ネットワーク)及びその他を含む。送信モードは、ユニキャスト又はマルチキャストのいずれかであることが可能である。PDA(personal digital assistant:パーソナルディジタルアシスタント)、ラップトップデスクトップセットトップボックス、TV、HDTV(high-definition television:高品位テレビ)、移動体電話機及びその他を含む、多様なクライアント・デバイスは、同じコンテントに対して同時に異なる帯域幅ビットストリームを必要とする。回線帯域幅は、(9.6kbpsから100Mbps又はそれ以上に)時間とともに急速に変化することがあり、そしてサーバの反応よりも早いことがある。

0004

ハイブリッドIPネットワークと同様なものは、移動体通信/ワイアレス通信である。移動体チャネル/ワイアレス・チャネルを介したマルチメディア・コンテントの輸送は、下記の理由のために非常に難しい、これらのチャネルが、マルチパスフェーディングシャドーイングシンボル間干渉、及びノイズ妨害のような効果のために頻繁に著しく害されるためである。移動性及び競合するトラフィックのような複数の他の理由が、同様に、帯域幅変化及び損失を生じさせる。チャネル・ノイズ及びサービスされるユーザの数のような複数の要因が、チャネル環境時間変化する特性を決定する。環境状態に加えて、地理的な位置のために、同様に移動体が移動することのために、宛て先ネットワークが、第2世代セルラ・ネットワーク、第3世代セルラ・ネットワークからブロードバンド・データのみのネットワークに変化することがあり得る。移動中でさえも、全てのこれらの変動は、マルチメディア・コンテントのために適応レート調節を要求する。それゆえ、ハイブリッド有線/ワイアレス・ネットワークを介してのビデオの良好な送信は、効率的なコーディングを必要とし、同様に変化するネットワーク状態デバイス特性、及びユーザの好みへの適応性を必要とし、他方でしかも損失に対して弾力的であることを必要とする。

0005

異なるユーザの要求を満たすためにそしてチャネル変化適応するために、ビットストリームの複数の独立したバージョンを発生させることが可能であり、各々は、送信帯域幅、ユーザ・ディスプレイ及び演算能力に基づいて制約の1つのクラスを満足させる。しかし、これは、サーバの記憶容量又はネットワークの容量に関して効率的でない。スケーラブル・コーディングにおいて、そこでは、ハイエンド・ユーザを適応させる1つのマクロ−ビットストリームがサーバにおいて創出され、ロー−エンド・アプリケーションのためのビットストリームは、マクロ−ビットストリームの下位セットとして埋め込まれる。その意味で、1つのビットストリームは、部分ビットストリームを選択的に送信することによって多様なアプリケーション環境適合されることが可能である。スケーラブル・コーディングによって提供される別の1つの利点は、エラーの傾向があるチャネル上でエラーに強いビデオ送信に対してである。エラー防護及びエラー隠匿(error concealment)は、容易に取り扱われることが可能である。より信頼性のある送信チャネル又はより良いエラー防護は、最も重要な情報を含んでいるベース・レイヤ・ビットに適用されることが可能である。

0006

MPEG−1,MPEG−2,MPEG−4(総括してMPEG−xと呼ぶ)、H.261,H.262,H263,及びH.264(総括してH.26xと呼ぶ)のようなハイブリッド・コーダにおける空間的スケーラビリティ、時間的スケーラビリティ、及び信号対ノイズ比(SNR:signal to noise ratio)スケーラビリティがある。ハイブリッド・コーディングにおいて、時間的な冗長性は、動き補償予測MCP:motion-compensated prediction)によって除去される。ビデオは、一般的に、一連の画像のグループ(GOP:group of picture)に分割される、ここで、各GOPは、内部コード化されたフレーム(intra-coded frame)(I)で始まり、前方予測されたフレーム(P)及び2方向予測されたフレーム(B)の配列が続く。P−フレーム及びB−フレームの両者は、相互フレーム(inter-coded frame)である。Bフレームは、大部分のMPEGのようなコーダにおける時間的なスケーラビリティに対してキーである。しかしながら、MPEG−4単純プロフィール(Simple profile)及びH.264ベースライン・プロフィール(Baseline Profile)のような複数のプロフィールは、Bフレームをサポートしない。

0007

MPEG−4において、プロフィール及びレベルは、特定のビットストリームをデコードするために必要とされるデコーダの能力に基づくシンタックス(syntax:構文)の下位セット及びシメンティクス(semantics:意味)を規定する手段を提供する。プロフィールは、全体のビットストリーム・シンタックスの下位セットとして定義される。レベルは、ビットストリーム内パラメータに課せられた制約の定義されたセットである。いずれかの与えられたプロフィールに関して、レベルは、一般に、デコーダの処理負荷及びメモリ能力に対応する。そこで、プロフィール及びレベルは、ビットストリームの制約を規定し、そしてそれゆえビットストリームをデコードする能力についての制限を定める。もし、デコーダがそのレベルにおいてそのプロフィールによって規定されように全てのシンタックス・エレメントの全ての許される値を適切にデコードすることが可能であるならば、一般に、デコーダは、与えられたレベルで与えられたプロフィールにしたがうように見なされるべきである。

0008

近年のマイクロプロセッサチップセット進化発展、又は拡散は、ソフトウェアファームウェア及びハードウェアに対する変更を最小に保ちつつ要求が満足されることが可能な場合に、効率的な方式で実現されることが可能である。上で説明したように、MPEG−4単純プロフィール及びH.264ベースライン・プロフィールは、時間的なスケーラビリティに関してBフレームをサポートしない。したがって、これらのプロフィールに適合するように開発されたチップセットは、Bフレームをサポートしないことがある。より高いレートのマルチメディアの人気の増大そして要求の増加とともに、そしてより高いレートのマルチメディアをサポートするネットワークの増加とともに、MPEG−4単純プロフィール又はH.264ベースライン・プロフィールからBフレームを用いて時間的なスケーラビリティを提供するプロフィールへの有効な拡散パスが、必要とされる。MPEG−4規格は、ISO/IEC14496−2に記載されている。H.264規格は、[ISO/IEC14496−10]に記載されている。

先行技術

0009

ISO/IEC14496−2
ISO/IEC14496−10

0010

したがって、本明細書中に開示された複数の実施形態は、ベース・レイヤのソフトウェア、ファームウェア及びハードウェアへの最小の変更で、ベース・レイヤの非時間的スケーリング設計に基づいて、2方向予測を介して、スケーラブル・ビデオのコード化されたデータを提供するための方法及び装置を提供する。

0011

動き補償された2方向予測の使用を通してビデオ・ストリームのスケーラブル・コーディングを可能にするビデオ・エンコーディング・システム及びビデオ・デコーディング・システムが、記載される。2方向予測された領域の組み立てのためにベース・レイヤの非時間的なスケーリング・モジュールの効果的な設計及び使用は、エンハンスメント(enhancement)レイヤ・コーディングを提供するための効果的な移動パス(migration path)を使用可能にする。ベース・レイヤの非時間的なスケーリング・モジュールは、連続して2方向参照領域の各々をデコードすることによって、そしてその後2方向予測された領域を計算するために結果を統合することによって、2方向予測された領域をデコードするために使用される。

図面の簡単な説明

0012

図1は、ストリーミング画像をエンコードするためそしてデコードするための一般的な通信システムのブロック図である。
図2Aは、従来のMPEG−4単純プロフィール・データ・ストリームを説明する図である。
図2Bは、時間的なスケーラビリティを可能にする従来のエンコードされたデータ・ストリームを説明する図である。
図3は、MPEG−4におけるPフレーム組み立てプロセスの一例の説明図である。
図4は、MPEG−4におけるBフレーム組み立てプロセスの一例の説明図である。
図5は、H.264におけるPフレーム組み立てプロセスの一例の説明図である。
図6は、時間的なスケーラビリティを含んでいるデコーディング・プロセスの一例を説明するフローチャートである。
図7は、ベース・レイヤIフレーム組み立て及びPフレーム組み立てのための動き補償コーデック・プロセスの一例を説明するフローチャートである。
図8は、エンハンスメント・レイヤBフレーム組み立てのための動き補償コーデック・プロセスの一例を説明するフローチャートである。
図9は、動き補償における使用のためのハーフピクセル補間の一例の説明図である。

実施例

0013

ベース・レイヤのソフトウェア、ファームウェア及びハードウェアへの最小の変更で、ベース・レイヤの非スケーラブル・コーディング設計に基づいて、2方向予測を介して、スケーラブル・ビデオのコード化されたデータを提供するための方法、装置及びシステムが、記載される。ベース・レイヤ動き補償コーデックは、前方予測された(forward predicted)Pフレーム又は後方予測された(backward predicted)Pフレームを組み立てることができる。同様に、ベース・レイヤ動き補償コーデックは、ソフトウェア、ファームウェア及びハードウェアへの最小の変更で修正されることが可能であり、前方予測された/後方予測された(すなわち、2方向)Bフレームを組み立てる。Pフレームをデコードするために使用した同じ構成要素は、複数の参照物を用いてBフレームをデコードするために連続して利用されることが可能である。Pフレームは、ベース・レイヤ中に含まれることが可能であり、他方でBフレームは、スケーラブル・ビデオのコード化されたビットストリームのエンハンスメント・レイヤ中に含まれることが可能である。

0014

下記の記載において、具体的な詳細が、複数の例の完全な理解を提供するために与えられる。しかしながら、複数の例が、これらの具体的な詳細なしで実行されることができることは、当業者によって理解される。例えば、電気的な構成要素は、不必要な詳細で複数の例を不明確にしないためにブロック図で示されることがある。別の事例において、そのような構成要素、他の構造及び技術が、複数の例をさらに説明するために詳細に示されることがある。

0015

複数の例が、フローチャート、フロー図、構造図、又はブロック図として図示されるプロセスとして記載されることができることに同様に注意する。フローチャートが連続したプロセスとして動作を記載することができるけれども、多くの動作は、並行して又は同時に実行されることが可能であり、そしてプロセスは、繰り返されることが可能である。その上、動作の順序は、並べ替えられることができる。プロセスは、その動作が完了した時に終了される。プロセスは、方法、機能、手順、サブルーチンサブプログラム、等に対応することができる。プロセスが機能に対応する場合、その終了は、呼び出し機能又は主機能に機能が戻ることに対応する。

0016

MPEG−x及びH.26xとして知られる2つのビデオ・コーディング規格は、データ処理技術及び操作技術(本明細書中ではハイブリッド・コーディングとして呼ばれる)を記載する。これは、固定長ソース・コーディング技術又は可変長ソース・コーディング技術を使用してビデオ情報オーディオ情報、及びその他の情報の圧縮及び配信に好適である。特に、上に引用された規格類、及びその他のハイブリッド・コーディング規格類及び技術は、例示的に、(例えば、ラン長コーディング、ハフマン・コーディング及びその他のような)フレーム内コーディング(intra-frame coding)技術及び(例えば、前方予測コーディング及び後方予測コーディング、動き補償及びその他のような)フレーム間コーディング(inter-frame coding)技術を使用してビデオ情報を圧縮する。具体的に、ビデオ処理システムケースでは、ハイブリッド・ビデオ・コーディング・システムは、フレーム内動き補償エンコーディング及び/又はフレーム間動き補償エンコーディングを用いてビデオ・フレームの予測ベースの圧縮エンコーディングによって特徴付けられる
フレーム内コーディングは、いかなる他の画像を参照することなく画像(フィールド又はフレーム)をエンコードすることを呼ぶ、しかし、内部コード化された(intra-coded)画像は、別の画像に対する参照として使用されることが可能である。用語フレーム内、内部コード化されたフレーム及びIフレームは、本出願全体を通して使用される内部コーディングを用いて形成されるビデオ−オブジェクトの全ての例である。

0017

フレーム間コーディング、又は予測コーディングは、別の1つの画像を参照して画像(フィールド又はフレーム)をエンコードすることを呼ぶ。内部コード化された画像と比較して、相互コード化された(inter-coded)画像又は予測された画像は、非常に効率的にコード化されることができる。本出願全体を通して使用される相互コード化された画像の例は、予測されたフレーム(前方予測又は後方予測のいずれかであり、しかもPフレームとも呼ばれる)、及び2方向予測されたフレーム(同様にBフレームと呼ばれる)である。相互コーディングに関する他の用語は、ハイ−パス・コーディング、残余コーディング、動き補償補間、及び当業者に周知であるその他のものを含む。

0018

スケーラブル・コーディングとして知られる技術は、(Pフレーム又はBフレームのような)内部コード化された画像及び異なる相互コード化された画像を、例えば、ベース・レイヤ及びエンハンスメント・レイヤのようなビットストリーム中の異なるレイヤに分割することが可能である。スケーラブル・コーディングは、ダイナミック・チャネルにおいて有用である、そこではスケーラブル・ビットストリームが、ネットワーク帯域幅内の変動に見合うように適合されることが可能である。エラーの起き易いチャネルにおいて、スケーラブル・コーディングは、ベース・レイヤ及びエンハンスメント・レイヤの同等でないエラー防護を通して強さを付加することが可能である。より良いエラー防護は、より重要なレイヤに適用されることが可能である。

0019

図1は、ストリーミング画像をエンコードするためそしてデコードするための一般的な通信システムのブロック図である。システム100は、エンコーダ・デバイス105及びデコーダ・デバイス110を含む。エンコーダ・デバイス105は、内部エンコーディング素子115、予測エンコーディング素子120、時間的なスケーラビリティ素子125、メモリ素子130、及び通信素子175を含む。これらのエレメントは、単体素子であり得る、若しくは1又はそれより多くのマイクロプロセッサ又はディジタル・シグナルプロセッサ(DSP:digital signal processor)により含まれることができる。エンコーダ・デバイス105は、通信素子175内に含まれる通信論理回路を使用して外部ソース135からデータを受信することが可能である。外部ソース135は、例えば、外部メモリ、インターネット、ライブの又はディレー・ビデオ及び/又はオーディオフィードであることができ、そしてデータを受信することは、有線通信及び/又はワイアレス通信を含むことが可能である。外部ソース135内に含まれるデータは、エンコードされていない状態又はエンコードされた状態であることが可能である。内部エンコーディング素子115は、フレーム(スライスマクロブロック及び部分マクロブロック)の内部コード化された部分をエンコードするために使用される。予測エンコーディング素子120は、前方予測、後方予測及び2方向予測を含む、フレームの予測された部分をエンコードするために使用される。

0020

エンコーダ・デバイス105は、エンコーディングのために生データ又はエンコードされたデータをアクセスできる。エンコードされたデータは、時間的なスケーラビリティを与えるために2方向予測されたフレームのようなエンハンスメント・レイヤ部分で既にエンコードされた部分を置き換えるためにアクセスされることが可能である。エンコードされたデータ(内部コード化されたデータ又は相互コード化されたデータのいずれか)をアクセスする場合、内部エンコーディング素子115及び予測エンコーディング素子120内に含まれる論理回路は、エンコードされたデータをデコードし、結果として再組み立てされた生データを生じる。この再組み立てされた生データ、すなわちアクセスされた生データは、その後、時間的なスケーラビリティのためにBフレームを含んでいるエンハンスメント・レイヤ及び/又は低優先度データを与えるような方法でエンコードされることが可能である。

0021

時間的なスケーラビリティ素子125は、論理回路を含み、これはどのビデオ・データの部分が内部エンコーディング素子115によって内部コード化されるべきであるかを決定するため、そしてどの部分が予測エンコーディング素子120によって相互コード化されるべきであるかを決定するために使用される。時間的なスケーラビリティ素子125は、しかもどのビデオの部分が低優先度でありそしてエンハンスメント・レイヤ内に置かれるべきであるかを決定するため、そしてどの部分が高優先度でありそしてベース・レイヤ内に置かれるべきであるかを決定するための論理回路を含む。時間的なスケーラビリティ素子125は、オーバーヘッド情報をエンコードし、オーバーヘッド情報は、例えば、マクロブロック・マップのような内部コード化された部分のマップ及び相互コード化された部分のマップを含むことが可能であり、ここでマクロブロック(又は部分マクロブロック)は内部コード化される又は相互コード化されるように識別され(同様に、どのタイプの相互コーディングが、例えば、前方、後方又は2方向を含んでいるかを識別し)、そしてフレームの相互コード化された部分がどれに対して参照にされるかを識別する。エンコーディングの後で、エンコードされたフレームは、メモリ素子130又は外部メモリ内に記憶される。外部メモリは、外部ソース135内部に含まれることが可能である、又は別のメモリ素子(図示されず)であることが可能である。

0022

通信素子175は、ネットワーク140とともにデータ送信(Tx:transmission)のために使用される論理回路を含む。ネットワーク140は、電話システム、ケーブル・システム、及び光ファイバ・システムのような有線システム、又はワイアレス・システムの一部であることが可能である。ワイアレスのケースでは、通信システム、ネットワーク140は、下記のシステムの一部を備えることが可能である。例えば、コード分割多元アクセス(CDMA:code division multiple access又はCDMA2000、又はこれらの変形、同様なCDMA2000 1x、CDMA2000 1x−EVDO)通信システム、又は代わりに、システムは、周波数分割多元アクセス(FDMA:frequency division multiple access)システム、時分割多元アクセス(TDMA:time division multiple access)システム、例えば、GSM登録商標)/GPRS(General Packet Radio Service:汎用パケット無線サービス)/EDGE(enhanced data GSM environment:拡張データGSM環境)、又はサービス産業のためのTETRA(Terrestrial Trunked Radio:地上中継無線移動体電話技術、ワイドバンド・コード分割多元アクセス(WCDMA:wideband code division multiple access)OFDM(Orthogonal Frequency Division Multiplexing:直交周波数分割多重化)又はOFDMA(Orthogonal Frequency Division Multiple Access:直交周波数分割多元アクセス)システム、802.xxシステム、又は一般に複数の技術の組み合わせを採用するいずれかのワイアレス通信システムである。エンコードされたフレームは、ネットワーク140を介して送信(Tx)される。エンコーダ・デバイス105によって実行されるエンコーディング・プロセスは、以下にさらに十分に説明される。

0023

デコーダ・デバイス110は、エンコーダ・デバイス105に対して相補的な構成要素を含み、内部デコーディング素子145、予測デコーディング素子150、時間的なスケーラビリティ素子155、メモリ素子160及び通信素子180を含む。デコーダ・デバイス110は、ネットワーク140を介して送信されたエンコードされたデータ又は外部記憶装置165からのエンコードされたデータを受信する。通信素子180は、ネットワーク140とともにエンコードされたデータを受信(Rx:receive)するために使用される論理回路を含み、同様に、外部記憶装置165からエンコードされたデータを受信するための論理回路を含む。外部記憶装置165は、例えば、外付けRAM又はROM、若しくは遠隔サーバであり得る。内部デコーディング素子145は、内部コード化されたデータをデコードするために使用される。予測デコーディング素子150は、相互コード化されたデータをデコードするために使用される。予測デコーディング素子は、(前方予測された又は後方予測された)両方のPフレーム同様にBフレームをデコードする。Pフレームをデコードするために使用される同じ下位構成要素は、複数の参照物を用いてBフレームをデコードするために連続して利用されることが可能である。Bフレームに関する複数の参照物は、前方参照フレーム及び後方参照フレーム中にあることがある、両方とも同じ参照フレーム中にあることがある、両方とも別々の前方参照フレームの中にあることがある又は両方とも後方参照フレームの中にあることがある。

0024

時間的なスケーラビリティ素子155は、オーバーヘッド情報をデコードするために使用する論理回路を含み、上で検討されたマクロブロック・マップを含み、そして内部デコーディング素子145及び予測デコーディング素子150が適切な方法で適切なマクロブロックをデコードすることが可能であるようにこの情報を変換する。情報の変換は、Bフレーム(又はスライス又は複数の参照物から予測されるフレームの別の部分)のデコーディングのために2回連続して予測デコーディング素子の下位構成要素の使用を可能にすることを含むことができる。時間的なスケーラビリティ素子155は、同様に2方向予測されたフレーム及び/又は低優先度ビデオ・データを含んでいるエンハンスメント・レイヤ・データのデコーディングを省略するために使用する論理回路を含む。例えば、もしエンハンスメント・レイヤ・データが受信されない若しくは悪いSNRで又は不十分なSNRで受信されるのであれば、そして/又はもしデコーダ・デバイスにおいて処理能力が不十分であるならば、エンハンスメント・レイヤ・データのデコーディングは、省略されることが可能である。デコーディングの後で、デコードされたフレームは、ディスプレイ素子170を用いて表示されることが可能である、若しくは内部メモリ160又は外部記憶装置165に記憶されることが可能である。ディスプレイ素子170は、デコーディング・デバイスの統合された一部であることがあり、それはディスプレイ・スクリーンを含んでいるビデオ・ディスプレイ・ハードウェア及び論理回路のような部品を含む、又は外部周辺デバイスであり得る。デコーダ・デバイス110によって実行されたデコーディング・プロセスは、下記にさらに十分に説明される。

0025

典型的なMPEGデコーダにおいて、予測コード化されたピクセル・ブロック(すなわち、1又はそれより多くの運動ベクトル及び残余エラー成分を備えるブロック)は、参照フレームに関してデコードされる(ここで、内部フレーム又は別の1つの予測されたフレームが、参照フレームとして機能することが可能である)。図2Aは、従来のMPEG−4単純プロフィール・データ・ストリームを説明する図であり、これは、GOPに対するフレーム依存性を図示する。GOP10は、最初のIフレーム12、引き続く複数の前方予測されたPフレーム14からなる。前のIフレーム又はPフレームへのPフレームの依存性は、システム(MPEG−4単純プロフィール及びH.264ベースライン・プロフィールに適合するもののようなシステム)に与えられた時間的なスケーラビリティを制限することが可能であり、それは前方予測されたフレームだけをサポートできる。Pフレーム14のいずれかを削除することは、他のPフレームをデコードする際に致命的になることがある情報の損失を結果として生じることがある。Pフレームの削除は、結果として、例えば、ビデオ・ジター又は次のIフレーム16、これは次のGOPの開始をマークする、までデコーダがデコーディングを続けることを不可能にすることになる。

0026

スケーラブル・ビデオ・コーディング・システムのエンハンスメント・レイヤ内の2方向予測されたデータの使用は、上に説明されたようにダイナミック・チャネルにおいて有用であり得る。図2Bは、時間的なスケーラビリティを可能にする従来のエンコードされたデータ・ストリームを説明する図であり、これは、GOPのフレーム依存性を図示する。GOP20は、Iフレーム22A、前方予測されたPフレーム24、及び2方向予測されたBフレーム26からなる。各Bフレームは、前方運動ベクトル後方運動ベクトル及びIフレーム22A又は前方予測されたPフレーム24(後方予測されたPフレームが、同様に使用されることができるが、この例では示されない)を参照した残余エラーを統合することが可能である。Iフレーム22Bは、次のGOPの開始をマークする。図2Bに示されたように、1つのBフレーム26だけが、Iフレーム22AとPフレーム24との間に、又は2つのPフレーム24の間に含まれる。複数のBフレームが、複数の参照フレームの間に挿入されることが可能であり、時間的なスケーラビリティにおけるより大きな柔軟性を許容する。どの別のフレームも参照フレームとしてBフレームをあてにしないので、別のフレームのデコーディングに関する情報の損失なしにBフレーム26を削除できる。Bフレーム26のこの特性は、Bフレーム26がビットストリームの中に挿入されることを許容でき、そこではBフレーム26は、チャネル状態帯域幅制限電池電力、同様に別の考慮すべき事柄を適応させるためにエンコーダ、トランスコーダ、又はデコーダの選択で削除されることが可能である。例えば、もし、複数の参照フレームの間に3個のBフレームがあるならば、3個のBフレームの全てを削除でき、そして4分の3だけフレーム・レートを削減できる、又は中央のBフレームをそのままにすることができ、そして他の2個を削除できて半分にフレーム・レートを削減する。データ・レートは、それにしたがって減少し得る。

0027

Pフレーム(又はいずれかの相互コード化されたセクション)は、現在の画像内の1つの領域と参照画像内の最適合予測領域との間の時間的な冗長性を活用することが可能である。現在の領域と最適合参照予測領域との間の差は、残余エラー(又は予測エラー)として知られている。参照フレーム内の最適合予測領域の位置は、運動ベクトルにエンコードされることが可能である。図3は、例えば、MPEG−4におけるPフレーム組み立てプロセスの一例の説明図である。プロセス300は、5×5のマクロブロックからなる現在の画像305を含む、ここでこの例におけるマクロブロックの数は任意である。1つのマクロブロックは、16×16のピクセルからなる。ピクセルは、1個の8ビットのルミナンス値(Y)と2個の8ビットのクロミナンス値(CrとCb)によって定義されることが可能である。MPEGにおいて、Y,Cr及びCb成分は、4:2:0フォーマットで記憶されることが可能である、ここでCr及びCb成分は、X方向及びY方向に2だけダウンサンプル(down-sample)される、又は削減される。それゆえ、各マクロブロックは、256のY成分、64のCr成分及び64のCb成分からなるはずである。現在の画像305のマクロブロック315は、現在の画像305とは異なる時点において参照画像310から予測される。検索は、最適合マクロブロック320の位置を探すために参照画像310内で行われ、最適合マクロブロック320は、エンコードされる現在のマクロブロック315にY,Cr及びCb値に関して最も近い。最適合マクロブロック320を検索する方法は、当業者に公知であり、a)現在のマクロブロック315と参照画像310マクロブロックとの間のSAD(sum of absolute pixel difference:ピクセル差異の絶対値の和)を最小にする、b)SSD(sum of squared pixel difference:ピクセル差異の二乗和)を最小にする、及びc)レート歪の点で最小コスト、及びその他を含む。参照画像310内の最適合マクロブロック320の位置は、運動ベクトル325内でエンコードされる。参照画像310は、デコーダが現在の画像305の組み立ての前に再組み立てされるPフレーム又はIフレームであり得る。最適合マクロブロック320は、現在のマクロブロック315から差し引かれ(Y,Cr及びCg成分の各々に関する差が計算され)結果として残留エラー330を生ずる。残留エラー330は、2D離散型余弦変換(DCT:Discrete Cosine Transform)を用いてエンコードされ、そしてそれから量子化される340。量子化340は、例えば、高頻度係数により少ないビットを割り当て、一方で低頻度の係数により多くのビットを割り当てることによって、空間的な圧縮を与えることにより実行されることが可能である。情報を識別する参照画像310及び運動ベクトル325とともに、残留エラー330の量子化された係数は、現在のマクロブロック315を表しているエンコードされた情報である。エンコードされた情報は、今後の使用のためにメモリ中に記憶されることが可能である、又は、例えば、エラー訂正又は画像強調の目的のために手を加えられることが可能である、又はネットワーク345を介して送信されることが可能である。

0028

エンコードされた運動ベクトル325とともに、残留エラー330のエンコードされ量子化された係数は、引き続く動き推定及び圧縮のための参照フレームの一部として使用するためにエンコーダにおいて現在のマクロブロック315を再組み立てするために使用されることが可能である。エンコーダは、このPフレーム再組み立てのためにデコーダの手順をエミュレートすることが可能である。デコーダのエミュレーションは、同じ参照画像にエンコーダ及びデコーダの両方が働くことに結果としてなる。さらなる相互コーディングのためにエンコーダにおいて実行されるか、又はデコーダにおいて実行されるかに拘らず、再組み立てプロセスが、ここに提示される。Pフレームの再組み立ては、参照フレーム(又は参照されようとしている画像の一部又はフレームの一部)が再組み立てされた後で、開始されることが可能である。エンコードされ量子化された係数は、逆量子化され350、そしてそれから逆DCT,すなわちIDCT355が実行され、デコードされた又は再組み立てされた残留エラー360に結果としてなる。エンコードされた運動ベクトル325は、既に再組み立てされた参照画像310中で既に再組み立てされた最適合マクロブロック365の位置を見つけるために使用される。再組み立てされた残留エラー360は、それから再組み立てされた最適合マクロブロック365に加えられ、再組み立てされたマクロブロック370を形成する。再組み立てされたマクロブロック370は、メモリ中に記憶されることが可能であり、独立して又は別の再組み立てされたマクロブロックを用いて画像中に表示されることが可能であり、又は、画像強調のためにさらに処理されることが可能である。

0029

Bフレーム(又は2方向予測を用いてコード化されたいずれかの部分)は、現在の画像内のある領域と前の画像内の最適合予測領域及び次の画像内の最適合予測領域との間の時間的な重なりを活用できる。次の最適合予測領域及び後方最適合予測領域は、統合されて、統合された2方向予測領域を形成する。現在の画像領域と最適合統合2方向予測領域との間の差異は、残留エラー(又は予測エラー)である。次の参照画像内の最適合予測領域の位置及び前の参照画像内の最適合予測領域の位置は、2つの運動ベクトルにエンコードされることが可能である。

0030

図4は、例えば、MPEG−4におけるBフレーム組み立てプロセスの一例の説明図である。プロセス400は、5×5のマクロブロックからなる現在の画像405を含む、ここでこの例におけるマクロブロックの数は任意である。現在の画像405のマクロブロック415をエンコードすることは、現在の画像405よりも前の時点における前の参照画像410を参照して、そして次の時点における次の参照画像475を参照して行われる。検索は、エンコードされる現在のマクロブロック415に最も近い最適合マクロブロック420の位置を探すために前の参照画像410内で行われる。最適合マクロブロック420の位置は、運動ベクトル425にエンコードされる。前の参照画像410は、デコーダが現在の画像405の組み立ての前に再組み立てするIフレーム又はPフレームであり得る。検索は、現在のマクロブロック415に最も近い最適合マクロブロック480の位置を探すために次の参照画像475内で行われる。最適合マクロブロック480の位置は、運動ベクトル485にエンコードされる。次の参照画像475は、デコーダが現在の画像405の組み立ての前に再組み立てするIフレーム又はPフレームであり得る。最適合マクロブロック420及び最適合マクロブロック480は、平均されて、統合された2方向のマクロブロックを形成する、これは現在のマクロブロック415から差し引かれて結果として残留エラー430を生じる。

0031

最適合マクロブロックを統合する別の方法が、以下に説明される。残留エラー430は、例えば、DCT435(他の2D変換は、アダマール変換又はH.264にあるような整数変換を含む)を用いてエンコードされ、そしてそれから量子化される440。情報を識別する参照画像及び運動ベクトル425と485とともに、残留エラー430の量子化された係数は、現在のマクロブロック415を表しているエンコードされた情報である。エンコードされた情報は、今後の使用のためにメモリ中に記憶されることが可能である、又は、例えば、エラー訂正又は画像強調の目的のために手を加えられることが可能である、又はネットワーク445を介して送信されることが可能である。

0032

Bフレームが参照フレームとして使用されないので、その時間的なスケーリング特性を保持させるために、Bフレームに関するマクロブロック再組み立ては、エンコーダにおいて必要とされないことがあり得る。デコーダにおいて、Bフレーム・セクションの再組み立ては、前の参照フレーム(又は参照されようとしている画像の一部又はフレームの一部)及び次の参照フレーム(又は参照されようとしている画像の一部又はフレームの一部)の両方が再組み立てされた後で、開始されることが可能である。エンコードされ量子化された係数は、逆量子化され450、そしてそれから2D DCT455が実行され、デコードされた又は再組み立てされた残留エラー460を結果として生ずる。エンコードされた運動ベクトル425及び485は、既に再組み立てされた参照画像410中で既に再組み立てされた最適合マクロブロック465の位置を見つけるために使用され、そして次の参照フレーム475中で既に再組み立てされた最適合前方マクロブロック490の位置を見つけるために使用される。再組み立てされた最適合マクロブロック465及び490は、平均されて、統合された2方向マクロブロックを形成する。再組み立てされた残留エラー460は、それから統合された2方向マクロブロックに加えられて、再組み立てされたマクロブロック470を形成する。再組み立てされたマクロブロック470は、メモリ中に記憶されることが可能であり、独立して又は別の再組み立てされたマクロブロックを用いて1つの画像に表示されることが可能であり、又は、画像強調のためにさらに処理されることが可能である。

0033

H.264は、上に説明されたPフレーム組み立て及びBフレーム組み立てのMPEG−4の例に複数のオプションを提供する。図5は、H.264におけるPフレーム組み立てプロセスの一例の説明図である。プロセス500は、5×5のマクロブロックからなる現在の画像505を含む、ここでこの例におけるマクロブロックの数は任意である。現在の画像505のマクロブロック515は、現在の画像505とは異なる時点における参照画像510から予測される。マクロブロックは、より小さな部分マクロブロック・セクションに分割されることが可能であり(例えば、4個の部分マクロブロックがこの例では描かれているが、H.264は、4×4のピクセルまでの小さな部分マクロブロック分割を許容する。それ故、1つのマクロブロックに対して16個の運動ベクトルが存在することがある)、そして各部分マクロブロック・セクションは、時間的な冗長性のために別々に活用されることが可能である。検索は、各部分マクロブロックに対する最適合部分マクロブロックの位置を探すために参照画像510内で行われ、エンコードされる現在のマクロブロック515に最も近い複合最適合マクロブロック520を結果として生ずる。参照画像内の最適合マクロブロックの位置は、4個の運動ベクトル525a−525dにエンコードされる。参照画像510は、デコーダが現在の画像505の組み立ての前に再組み立てをするIフレーム又はPフレームであり得る。複合最適合マクロブロック505は、現在のマクロブロック515から差し引かれて、結果として残留エラー530を生じる。残留エラー530は、MPEG−4において使用されるDCTとはわずかに異なる前方2D変換535を用いてエンコードされることが可能であり、そしてその後、量子化される540ことが可能である。残留エラー530の量子化された係数、運動ベクトル525a−525d、及び情報を識別する参照フレームは、現在のマクロブロック515を表しているエンコードされた情報である。エンコードされた情報は、今後の使用のためにメモリ中に記憶されることが可能であり、又は、例えば、エラー訂正又は画像強調の目的のために手を加えられることが可能であり、又はネットワーク545を介して送信されることが可能である。

0034

エンコードされ量子化された係数、運動ベクトル、重み及び残留エラーは、しかも、引き続く動き推定及び動き補償に対して参照フレームの一部として使用するためにエンコーダにおいて現在のマクロブロックを再組み立てするために使用されることが可能である。エンコーダは、このPフレーム再組み立てのためにデコーダの手順をエミュレートすることが可能である。デコーダのエミュレーションは、エンコーダとデコーダの両方が同じ参照画像に作用することに結果としてなる。さらなる相互コーディングのためにエンコーダにおいて行われるか又はデコーダにおいて行われるか拘らず再組み立てプロセスが、ここに示される。Pフレームの再組み立ては、参照フレーム(又は参照されようとしている画像の一部又はフレームの一部)が再組み立てされた後で、開始されることが可能である。エンコードされ量子化された係数は、逆量子化され550、そしてそれから2D逆変換555が実行され、デコードされた又は再組み立てされた残留エラー560を結果として生じる。エンコードされた運動ベクトル525a−525dは、デコードされ、そして再組み立てされた最適合複合マクロブロック565を構成する既に再組み立てされた最適合部分マクロブロックの位置を見つけるために使用される。再組み立てされた残留エラー460は、それから再組み立てされた最適合複合マクロブロック560に加えられ、再組み立てされたマクロブロック570を形成する。デブロッキングフィルタ575は、同様に、例えば、マクロブロック又は部分マクロブロックの端に沿ったピクセル強調のためのエンコーディング・プロセス又はデコーディング・プロセスの一部として使用されることが可能である。再組み立てされたマクロブロックは、メモリ中に記憶されることが可能であり、独立して又は別の再組み立てされたマクロブロックを用いて画像中に表示されることが可能であり、又は、画像強調のためにさらに処理されることが可能である。H.264におけるBフレーム組み立てが、同様に類似の方法を使用して複数の部分マクロブロックを利用することが可能であることを、当業者は、理解する。

0035

H.264のケースでは、Bフレーム組み立ては、スライス・レベル(スライスは、通常マクロブロックの連続的なグループである)又は画像レベルで行われることが可能であり、ここでは、Bフレーム内の異なるスライス又は画像は、4×4のピクセル・ブロックまでに内部コード化される又は相互コード化されるかのいずれかであり得る。H.264は、しかも、直接モード2方向予測を提供する。直接モードでは、前方運動ベクトル及び後方運動ベクトルは、2個の参照フレームのうちの1つの同時に置かれたマクロブロック内で使用される運動ベクトルから導き出される。直接モードでは、前方運動ベクトルと後方運動ベクトルの導出は、後方及び前方参照フレームと現在のBフレーム又は画像との間の時間的な距離に基づいている。直接モードは、同様に、図3の例において示されたように平均することの代わりに、参照マクロブロックのY,Cr及びCb成分の重み付けを可能にする。重み付けは、同様に、後方及び前方参照フレームと現在のBフレーム又は画像との間の時間的な距離に基づいている。その上、Bフレーム組み立ては、図3に図示されたように平均マクロブロックの代わりに、前方最適合マクロブロック又は後方最適合マクロブロックのいずれか一方だけに基づいて残留エラーを算出できる。

0036

図6は、時間的なスケーラビリティを含んでいるデコーディング・プロセスの一例を説明するフローチャートである。プロセス600は、図1のデコーダ・デバイス110のようなデバイスによって実行される。エンコードされたビデオ・データは、図1のネットワーク140のようなネットワークを介してデコーダ・デバイスによって受信される、又は図1外部記憶構成素子165のような外部記憶装置から受信される、ステップ605。エンコードされたデータは、上に説明されたようにベース・レイヤ・データ及びエンハンスメント・レイヤ・データを含む。図1の通信素子180のような、受信する手段は、ステップ605を実行することが可能である。デコーダ・デバイスは、Iフレーム及びPフレームの両方を含むことが可能なベース・レイヤ・データをデコードする。図1の内部デコーディング素子145及び予測デコーディング素子150のような、デコードする手段は、ステップ610を実行することが可能である。デコーダ・デバイスは、エンハンスメント・レイヤ・データをデコードするか否かを決定する、ステップ615。エンハンスメント・レイヤをデコードしない理由は、例えば、エンハンスメント・レイヤ・データが受信されない若しくは悪いSNRで又は不十分なSNRで受信されること、及び/又はデコーダ・デバイスにおける処理能力が不十分である場合、を含む。判断ブロック615は、任意のレベルに行われることが可能であり、フレーム全体、スライス、マクロブロック及びより小さな部分を含む任意のサイズの部分のデコーディングを省略する。ステップ615の判断がエンハンスメント・レイヤをデコードする場合には、デコーダ・デバイスは、Iフレーム、Pフレーム及びBフレームを含んでいるエンハンスメント・レイヤ・データをデコードする、ステップ620。図1の時間的なスケーラビリティ素子155のような、決定する手段は、ステップ615を実行することが可能である。図1の内部デコーディング素子145及び予測デコーディング素子150のような、デコードする手段は、ステップ620を実行することが可能である。デコーダがデコードすると選択したベース・レイヤ・データ及びエンハンスメント・レイヤ・データの全てがデコードされた後で、デコーダは、デコードされたビデオをメモリ中に記憶することが可能である又はビデオを表示することが可能である、ステップ625。図1外部記憶素子165又はメモリ素子160のような、記憶する手段は、ステップ625の記憶部分を実行することが可能である。図1のディスプレイ素子170のような、表示する手段は、ステップ625の表示部分を実行することが可能である。

0037

図7は、図6のステップ610において実行されるような、ベース・レイヤIフレーム組み立て及びPフレーム組み立てのための動き補償コーデック・プロセスの一例を説明するフローチャートである。スケーラブル・ビデオのコード化されたビットストリームのベース・レイヤは、高優先度のデータを含むことが可能である。ある低ビット・レートの遠隔デバイスは、ベース・レイヤ処理能力だけを有することがある。デコーダ・プロセス700は、ネットワークを介して又はメモリからエンコードされ量子化され内部コード化されたビデオ・データを受信することによってIフレームをデコードすることを開始する、ステップ725。図1の通信素子180のような、受信する手段は、ステップ725を実行することが可能である。量子化され内部コード化されたビデオ・データは、逆量子化される、ステップ730。データは、その後、逆変換され、ステップ735、結果としてデコードされたIフレームを生ずる。デコードされたIフレーム、すなわち、I−VOP(I−VOPは内部コード化されたビデオ・オブジェクト面(Video Object Plane)を表す)は、そのようにして表示されるように及び/又はメモリ中に記憶されるように準備される、ステップ750。デコーダは、同様に、Iフレームを参照する次のPフレームをデコードするためにメモリの中にデコードされ出力されたI−VOPを記憶することが可能である。

0038

Pフレーム・デコーディングは、Pフレームがそのフレームから予測される参照フレームがデコードされた後でだけ開始されることが可能である。デコードされた参照VOPは、メモリからアクセスされる、ステップ705。VOPの境界端は、ピクセル補間の準備のためにゼロでパッドされる、ステップ710。ゼロでパッドすることは、複数のタップ・フィルタが十分な数のピクセルの存在しない複数の境界領域ピクセル間で正しく補間することを可能にする。パッドされたVOPピクセルは、補間される、ステップ715。ピクセル補間は、動き補償のためにより良く適合する参照領域を実現するために使用される。ピクセル補間は、以下により詳細に説明される。ピクセルが補間された後で、コーデックは、エンコードされた運動ベクトルを用いて補間されたピクセル内部で最適合参照マクロブロック(又は任意の大きさのセクション)の位置を見つける、ステップ720。全ての相互コード化されたマクロブロックが運動ベクトルを用いて位置を見つけられ、そして参照フレームから部分的に再組み立てされた後で、部分的に再組み立てされたPフレームは、メモリ中に記憶される、ステップ755。Iフレームについての上記の説明と同様に、Pフレームの残留エラー部分の量子化されたDCT係数は、ネットワークを介して又はメモリから受信される、ステップ725。残留エラーは逆量子化され、ステップ730、そして逆変換される、ステップ735。デコードされた残留エラーは、部分的に再組み立てされ記憶されたPフレームに加えられ、ステップ740、結果としてデコードされ出力されたP−VOPを生じる。デコードされたP−VOPは、メモリ内に記憶されることが可能である及び/又は表示されることが可能である、ステップ750。

0039

プロセス700は、図6のステップ620におけるようにエンハンスメント・レイヤのIフレーム及びPフレームをデコードするために上に説明されたように同様な方法で使用される。しかしながら、ステップ620においてエンハンスメント・レイヤのBフレームをデコードすることは、2つの参照フレームを利用する、例えば、1つの前のIフレーム又はPフレーム及び1つの次のIフレーム又はPフレームである。図8は、図7において示されたベース・レイヤ・プロセスを実行するために使用されたベース・レイヤ動き補償コーデックの構成要素を利用するエンハンスメント・レイヤのBフレーム組み立てプロセスの一例のフローチャートである。この具体例の実施形態は、ベース・レイヤ構成要素へのほんのわずかな変更で又は変更なしに、そして少量の追加のソフトウェア、ファームウェア又はハードウェアの変更で、2方向画像すなわちBフレームの組み立ての目的のために、ベース・レイヤ構成要素を再使用する。Bフレーム組み立ては、第1のデコードされたVOP1をアクセスすることによって開始する、ステップ805。VOP1の境界端は、ゼロでパッドされる、ステップ810。パッドされたVOP1のピクセルは、補間される、ステップ815。エンコードされた運動ベクトルは、VOP1内で最適合領域の位置を見つけるために使用される、ステップ820。VOP1は、普遍性を失うことなく後方に置かれた参照フレームであると仮定されることが可能である。VOP1からの最適合マクロブロックは、第2のVOP最適合マクロブロックと統合するためにメモリ中に記憶される、ステップ855。ステップ855は、未修正のベース・レイヤ・コーデックが必要としないVOP1の最適合領域を記憶するための第2のメモリ・バッファを必要とすることがある。ステップ805,810,815及び820は、VOP2に対して繰り返される。メモリ中に記憶された第2のフレームをアクセスすることを可能にすることは、ベース・レイヤ・コーデックが必要としなかったメモリの第2の領域を必要とすることがある。パディング及びピクセルを補間するために使用した同じベース・レイヤ・モジュールは、VOP2に対して再使用される。

0040

モジュールを再使用することは、任意のある時刻において1つのモジュールだけが利用可能であるので、エンコーディング/デコーディング・プロセスにおける遅延を付加することがあるが、遅延が許容可能である場合に、コスト節約は、より大きな利益であり得る。VOP2からの最適合マクロブロックは、その後追加され、ステップ860、他方で、しかも、VOP1の記憶された最適合マクロブロックに丸め制御のために“1”を追加して、結果として統合された最適合マクロブロックを生じる。統合された最適合マクロブロックは、ピクセル値を平均するために2で割り算される(1の右ビット・シフトとして示される)、ステップ865。平均され統合された最適合マクロブロックは、その後、メモリ中に記憶される、ステップ845。ステップ805,810,815,820,855,860,865及び845は、部分的に再組み立てされたB−VOP全体が完了するまで続けられることが可能である。上に説明されたベース・レイヤのP−VOP再組み立てを用いると、B−VOPに対する残留エラーは、ネットワークを介して又はメモリから受信され、ステップ830において逆量子化され、そしてステップ835において逆変換される。残留エラーは、その後記憶された部分的に再組み立てされたB−VOPに加算されて、ステップ840、結果としてデコードされたB−VOPを生じる。デコードされたB−VOPは、その後メモリ中に記憶される又は表示される、ステップ850。

0041

図8は、1巡目において次から次へと実行されるステップ805,810,815及び820を示し、そしてそれからステップの全体のセットが、2巡目に連続して繰り返される。当業者が理解するように、複数の処理のスレッドが、プロセッサにおいて同時に生じることが可能である。多重処理スレッドを用いて、動き補償モジュールのような1つのモジュールは、第1の参照フレーム又はそれからのブロックに作用していることが可能であり、他方で、逆量子化モジュール及び逆変換モジュールのような別の1つのモジュールは、第2の参照フレーム又はそれからのブロックを処理している。一旦、モジュールが自身の動作を完了すると、モジュールはフレーム又はブロックを切り替える、その結果、動き補償モジュールは、第2の参照フレーム上で動作し、そして逆量子化モジュール及び逆変換モジュールは、次の参照フレームを処理している。このタイプの多重スレッド処理は、モジュールを再使用することによって引き起こされる演算上の遅延を削減することが可能である。

0042

2方向に予測された部分をデコードするためにベース・レイヤのデコーディング素子の再使用は、ある種の制限を要求することがある。Pフレームに関して、(H.264の4×4のピクセル区分に対してマクロブロック当り最大16までの)運動ベクトルの1セット及び1つの参照画像インデックスは、これらの複数の素子間で伝達される。Bフレームに関して、同じインターフェースを使用するために、エンコーディングは、マクロブロック当り(各々が2個の運動ベクトルを有する)8区分に制限される。シミュレーションは、Bフレームの16個の4×4のピクセル区分が無視できる発生確率で生じ、そして、ビット・レート及び品質への影響は、そのような制限のために感知されない。しかも、8区分にエンコーディングを制限することは、4×4のブロック区分を取り扱うことが不可能であることを意味しない。制限は、マクロブロック当りの運動ベクトルの数にだけである。例えば、4個の4×4のブロックと3個の8×8のピクセル・ブロックに区分されたマクロブロックは、正当な組み合わせである。あるいは、エンコーディングを制限するために、デコーダは、H.264によって提供されるモードを利用することが可能であり、そこでは4個の4×4のブロックのグループは、統合されて、1個の8×8のブロックを形成し、そして(4×4のブロックの)4個の運動ベクトルの内の1つが、統合された8×8のピクセル・ブロックに対する運動ベクトルとして使用される。

0043

動き補償コーデックは、(複数の)プロセッサの演算上の能力が十分である場合に、パディング、部分的なピクセル補間および最適合領域の位置検索を連続して実行することが可能である。特に、Bフレームをデコードすることの演算上の負荷(特に、全体のフレームに対する動き補償に費やされるサイクル数)がPフレームに対するものよりも少ないことを、シミュレーションは示している。それゆえ、パディング、補間及び最適合領域の位置検索が連続して生じる場合であっても、フレームは、1秒当り30フレーム以上まで(1フレームは[1/(fpsでのフレーム・レート)]秒のうちにデコードされなければならない)再生フレーム・レートを満足させように今まで通りデコードされることが可能である。

0044

ピクセル補間は、動き補償された予測コーディングの出来栄えを向上させるために使用されることが可能である。図9は、動き補償における使用のためのハーフ−ピクセル補間の一例の説明図である。示された例は、ハーフ−ピクセル補間であり、そこでは1つの補間されたピクセルが複数の元々の整数ピクセルの間に配置される。整数ピクセル910は、大文字の“A”から“I”まで名前を付けられた円として図示され、補間されたピクセル又はハーフ・ピクセル920は、小文字の“a”から“o”まで名前を付けられた四角として図示される。ハーフ・ピクセル補間は、例えば、重み[0.5,0.5]を用いる2−タップFIRフィルタのような、双一次フィルタを用いて実行されることが可能である。例えば、補間されたピクセル922は、整数ピクセル912と整数ピクセル914との平均として計算されることが可能であり、補間されたピクセル924は、整数ピクセル912と整数ピクセル916との平均であることが可能であり、そして補間されたピクセル926は、2個の補間されたピクセル(例えば、922と928又は924と930)の平均であることが可能である。ルミナンス(Y)成分及びクロミナンス(Cr及びCb)成分の両者は、この方式で補間されることが可能である。ピクセル補間の別の様式が、種々の規格によってサポートされている。H.264は、1/4ピクセル補間、同様に、1/8ピクセル補間をサポートする。当業者は、これらの別のピクセル補間方法を理解するはずであり、これらは本明細書中ではさらに詳細には論じられない。

0045

上に記載された方法及び装置の複数の例は、下記を含む。

0046

同時にただ1つの参照フレームから参照フレーム部分の位置を見つけることが可能な動き補償コーデックを用いて2方向画像をデコードするための方法であって:1巡目において第1の参照フレームから第1の参照フレーム部分の位置を見つけること、メモリ中に該第1の参照フレーム部分を記憶すること、2巡目において第2の参照フレームから第2の参照フレーム部分の位置を見つけること、及び2方向に予測された部分を形成するために該第1の参照フレーム部分及び該第2の参照フレーム部分を統合すること、を具備する。

0047

同時にただ1つの参照フレームから参照フレーム部分の位置を見つけることが可能な動き補償コーデックを用いて2方向画像をデコードするための装置であって:1巡目において第1の参照フレームから第1の参照フレーム部分の位置を見つけるための手段、メモリ中に該第1の参照フレーム部分を記憶するための手段、2巡目において第2の参照フレームから第2の参照フレーム部分の位置を見つけるための手段、及び2方向に予測された部分を形成するために該第1の参照フレーム部分及び該第2の参照フレーム部分を統合するための手段、を具備する。

0048

同時にただ1つの参照フレームから参照フレーム部分の位置を見つけることが可能な動き補償コーデックを用いて2方向画像をデコードするための電子デバイスであって、該電子デバイスは、1巡目において第1の参照フレームから第1の参照フレーム部分の位置を見つけるため、メモリ中に該第1の参照フレーム部分を記憶するため、2巡目において第2の参照フレームから第2の参照フレーム部分の位置を見つけるため、そして2方向に予測された部分を形成するために該第1の参照フレーム部分及び該第2の参照フレーム部分を統合するために、構成される。

0049

同時にただ1つの参照フレームから参照フレーム部分の位置を見つけることが可能な動き補償コーデックを用いて2方向画像をデコードするための方法をコンピュータに実行させるための命令を有するコンピュータ読み取り可能な媒体であって:1巡目において第1の参照フレームから第1の参照フレーム部分の位置を見つけること、メモリ中に該第1の参照フレーム部分を記憶すること、2巡目において第2の参照フレームから第2の参照フレーム部分の位置を見つけること、及び2方向に予測された部分を形成するために該第1の参照フレーム部分及び該第2の参照フレーム部分を統合すること、を具備する。

0050

同時にただ1つの参照フレームから参照フレーム部分の位置を見つけることが可能でありそして各マクロブロックに対して限られた数の区分をデコードすることが可能な動き補償コーデックによってデコードされるように2つの参照フレームから予測された2方向画像をエンコードするための方法であって:該2方向画像のマクロブロックを複数の部分マクロブロックに区分すること、該部分マクロブロックの各々に対して該2つの参照フレームの各々の中の予測された領域の位置を見つけること、及び該動き補償コーデックがデコードすることが可能な区分の該限られた数の半分よりも多くない数に該部分マクロブロックの数を制限すること、を具備する。

0051

同時にただ1つの参照フレームから参照フレーム部分の位置を見つけることが可能でありそして各マクロブロックに対して限られた数の区分をデコードすることが可能な動き補償コーデックによってデコードされるように2つの参照フレームから予測された2方向画像をエンコードするための装置であって:該2方向画像のマクロブロックを複数の部分マクロブロックに区分するための手段、該部分マクロブロックの各々に対して該2つの参照フレームの各々の中の予測された領域の位置を見つけるための手段、及び該動き補償コーデックがデコードすることが可能な区分の該限られた数の半分よりも多くない数に該部分マクロブロックの数を制限するための手段、を具備する。

0052

同時にただ1つの参照フレームから参照フレーム部分の位置を見つけることが可能でありそして各マクロブロックに対して限られた数の区分をデコードすることが可能な動き補償コーデックによってデコードされるように2つの参照フレームから予測された2方向画像をエンコードするための電子デバイスであって、該電子デバイスは、該2方向画像のマクロブロックを複数の部分マクロブロックに区分するために、該部分マクロブロックの各々に対して該2つの参照フレームの各々の中の予測された領域の位置を見つけるために、及び該動き補償コーデックがデコードすることが可能な区分の該限られた数の半分よりも多くない数に該部分マクロブロックの数を制限するために、構成される。

0053

同時にただ1つの参照フレームから参照フレーム部分の位置を見つけることが可能でありそして各マクロブロックに対して限られた数の区分をデコードすることが可能な動き補償コーデックによってデコードされるように2つの参照フレームから予測された2方向画像をエンコードするための方法をコンピュータに実行させるための命令を有するコンピュータ読み取り可能な媒体であって:該2方向画像のマクロブロックを複数の部分マクロブロックに区分すること、該部分マクロブロックの各々に対して該2つの参照フレームの各々の中の予測された領域の位置を見つけること、及び該動き補償コーデックがデコードすることが可能な区分の該限られた数の半分よりも多くない数に該部分マクロブロックの数を制限すること、を具備する。

0054

情報及び信号が、多様な異なる技術及び技法のいずれかを使用して表わされることができることを、当業者は、理解する。例えば、上記の説明の全体を通して参照されることができる、データ、指示、命令、情報、信号、ビット、シンボル、及びチップは、電圧電流電磁波、磁場又は磁力粒子光場又は光粒子、若しくはこれらの任意の組み合わせによって表わされることができる。

0055

本明細書中に開示された例に関連して説明された各種の例示的な論理ブロック、モジュール、回路、及びアルゴリズムのステップが、電子ハードウェア、コンピュータ・ソフトウェア、若しくは両者の組み合わせとして与えられることができることを、当業者は、さらに価値を認めるはずである。ハードウェア及びソフトウェアのこの互換性を明確に説明するために、各種の例示的な複数の構成要素、ブロック、モジュール、回路、及びステップが、それらの機能性の面から一般的に上記に説明されてきている。そのような機能性が、ハードウェア又はソフトウェアとして与えられるかどうかは、固有のアプリケーション及びシステム全体に課せられた設計の制約に依存する。知識のある者は、述べられた機能性を各々の固有のアプリケーションに対して違ったやり方で実行することができる。しかし、そのような実行の判断は、開示された方法の範囲からの逸脱を生じさせるとして説明されるべきではない。

0056

本明細書中に開示された例に関連して述べられた、各種の例示的な論理ブロック、モジュール、及び回路は、汎用プロセッサディジタル信号プロセッサ(DSP:digital signal processor)、用途特定集積回路ASIC:application specific integrated circuit)、フィールド・プログラマブルゲートアレイFPGA:field programmable gate array)若しくはその他のプログラマブル論理デバイスディスクリートゲート論理素子又はトランジスタ論理素子、ディスクリート・ハードウェア素子、若しくは本明細書中に説明された機能を実行するために設計されたこれらのいずれかの組み合わせで、与えられる又は実行されることができる。汎用プロセッサは、マイクロプロセッサであり得るが、しかし代わりに、プロセッサは、いずれかの従来型のプロセッサ、コントローラマイクロコントローラ、又はステートマシン(state machine)であり得る。プロセッサは、演算デバイスの組み合わせとして与えられることができる。例えば、DSPとマイクロプロセッサの組み合わせ、複数のマイクロプロセッサの組み合わせ、DSPコアとともに1又はそれより多くのマイクロプロセッサの組み合わせ、若しくはいずれかの他のそのような構成の組み合わせであることができる。

0057

本明細書中に開示された例に関連して説明された方法のステップ又はアルゴリズムのステップは、ハードウェアにおいて、プロセッサにより実行されるソフトウェア・モジュールにおいて、又は両者の組み合わせにおいて直接実現されることができる。ソフトウェア・モジュールは、RAMメモリフラッシュ・メモリ、ROMメモリEPROMメモリ、EEPROMメモリレジスタハードディスク、脱着可能なディスク、CD−ROM、若しくは、この技術において公知の他のいずれかの記憶媒体の中に常駐できる。ある具体例の記憶媒体は、プロセッサが記憶媒体から情報を読み出し、そこに情報を書き込めるようにプロセッサと接続される。あるいは、記憶媒体は、プロセッサに集積されることができる。プロセッサ及び記憶媒体は、用途特定集積回路(ASIC)中に常駐できる。ASICは、ワイアレス・モデム中に常駐できる。あるいは、プロセッサ及び記憶媒体は、ワイアレス・モデム内に単体素子として常駐できる。

0058

開示された例のこれまでの説明は、本技術に知識のあるいかなる者でも、開示された方法及び装置を作成し、使用することを可能にするために提供される。これらの例への各種の変形は、当業者に容易に明白にされるであろう。そして、本明細書中に規定された原理は、開示された方法及び装置の精神又は範囲から逸脱することなく、その他の例に適用されることができる。

0059

このようにして、ベース・レイヤのソフトウェア、ファームウェア及びハードウェアに対して最小の変更でベース・レイヤの非スケーラブル・コーディング設計に基づいて、2方向予測を介して、スケーラブル・ビデオのコード化されたデータを提供する方法,装置及びシステムが、記載されてきている。

0060

本明細書中に開示された実施形態に関連して述べられた、各種の例示的な、論理素子、論理ブロック、モジュール、及び回路は、汎用プロセッサ、ディジタル信号プロセッサ(DSP)、用途特定集積回路(ASIC)、フィールド・プログラマブル・ゲートアレイ(FPGA)若しくはその他のプログラマブル・ロジック・デバイス、ディスクリート・ゲート論理素子又はトランジスタ論理素子、ディスクリート・ハードウェア素子、若しくは本明細書中に説明された機能を実行するために設計されたこれらのいずれかの組み合わせで、与えられる又は実行されることができる。汎用プロセッサは、マイクロプロセッサであり得るが、しかし代わりに、プロセッサは、いずれかの従来型のプロセッサ、コントローラ、マイクロコントローラ、又はステート・マシンであり得る。プロセッサは、演算デバイスの組み合わせとして与えられることができる。例えば、DSPとマイクロプロセッサの組み合わせ、複数のマイクロプロセッサの組み合わせ、DSPコアとともに1又はそれ以上のマイクロプロセッサの組み合わせ、若しくはいずれかの他のそのような構成の組み合わせであることができる。

0061

本明細書中に開示された実施形態に関連して説明された方法のステップ又はアルゴリズムのステップは、ハードウェアにおいて、プロセッサにより実行されるソフトウェア・モジュールにおいて、又は2つの組み合わせにおいて直接実現されることができる。ソフトウェア・モジュールは、RAMメモリ、フラッシュ・メモリ、ROMメモリ、EPROMメモリ、EEPROMメモリ、レジスタ、ハード・ディスク、脱着可能なディスク、CD−ROM、若しくは、この技術において公知の他のいずれかの記憶媒体の中に常駐できる。ある具体例の記憶媒体は、プロセッサが記憶媒体から情報を読み出し、そこに情報を書き込めるようにプロセッサに接続される。あるいは、記憶媒体は、プロセッサに集積されることができる。プロセッサ及び記憶媒体は、ASIC中に常駐できる。ASICは、ユーザ端末中に常駐できる。あるいは、プロセッサ及び記憶媒体は、ユーザ端末中に単体素子として常駐できる。

0062

開示された実施形態のこれまでの説明は、本技術に知識のあるいかなる者でも、本発明を作成し、使用することを可能にするために提供される。これらの実施形態への各種の変形は、当業者に容易に明白にされるであろう。そして、本明細書中に規定された一般的な原理は、本発明の精神又は範囲から逸脱することなく、その他の実施形態、例えば、即時メッセージ通信サービス、又はいずれかの一般的なワイアレス・データ通信アプリケーション、に適用されることができる。それゆえ、本発明は、本明細書中に示された実施形態に制限することを意図したものではなく、本明細書中に開示した原理及び新規な機能と整合する最も広い範囲に適用されるものである。用語“具体例の”は、“例、事例、又は実例として働くこと”を意味するように本明細書中ではもっぱら使用される。“具体例の“として本明細書中に記載されたいずれかの実施形態が、その他の実施形態に対して好ましい又は優位であるとして解釈される必要はない。

0063

100…通信システム,10、20…GOP,12、22…Iフレーム,14、24…Pフレーム,26…Bフレーム,305…現在の画像,310…参照画像,315…現在のマクロブロック,320…最適合マクロブロック,325…運動ベクトル,330…残留エラー,340…量子化,345…ネットワーク,350…逆量子化,360…再組み立てされた残留エラー,365…再組み立てされた最適合マクロブロック,370…再組み立てされたマクロブロック,405…現在の画像,410…参照画像,415…現在のマクロブロック,420…最適合マクロブロック,425…運動ベクトル,430…残留エラー,440…量子化,445…ネットワーク,450…逆量子化,460…再組み立てされた残留エラー,465…再組み立てされた最適合マクロブロック,470…再組み立てされたマクロブロック,475…次の参照画像,480…最適合マクロブロック,485…運動ベクトル,490…最適合前方マクロブロック。

ページトップへ

この技術を出願した法人

この技術を発明した人物

ページトップへ

関連する挑戦したい社会課題

関連する公募課題

該当するデータがありません

ページトップへ

技術視点だけで見ていませんか?

この技術の活用可能性がある分野

分野別動向を把握したい方- 事業化視点で見る -

(分野番号表示ON)※整理標準化データをもとに当社作成

ページトップへ

おススメ サービス

おススメ astavisionコンテンツ

新着 最近 公開された関連が強い技術

この 技術と関連性が強い技術

関連性が強い 技術一覧

この 技術と関連性が強い人物

関連性が強い人物一覧

この 技術と関連する社会課題

関連する挑戦したい社会課題一覧

この 技術と関連する公募課題

該当するデータがありません

astavision 新着記事

サイト情報について

本サービスは、国が公開している情報(公開特許公報、特許整理標準化データ等)を元に構成されています。出典元のデータには一部間違いやノイズがあり、情報の正確さについては保証致しかねます。また一時的に、各データの収録範囲や更新周期によって、一部の情報が正しく表示されないことがございます。当サイトの情報を元にした諸問題、不利益等について当方は何ら責任を負いかねることを予めご承知おきのほど宜しくお願い申し上げます。

主たる情報の出典

特許情報…特許整理標準化データ(XML編)、公開特許公報、特許公報、審決公報、Patent Map Guidance System データ