JP2002534920A - マクロブロックベース圧縮ビデオデータ中のヘッダ情報のロバストデコーディング方法および装置 - Google Patents

マクロブロックベース圧縮ビデオデータ中のヘッダ情報のロバストデコーディング方法および装置

Info

Publication number
JP2002534920A
JP2002534920A JP2000593025A JP2000593025A JP2002534920A JP 2002534920 A JP2002534920 A JP 2002534920A JP 2000593025 A JP2000593025 A JP 2000593025A JP 2000593025 A JP2000593025 A JP 2000593025A JP 2002534920 A JP2002534920 A JP 2002534920A
Authority
JP
Japan
Prior art keywords
sequence
packet
comparing
determining
codewords
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.)
Pending
Application number
JP2000593025A
Other languages
English (en)
Inventor
ジャンタオ ウェン
Original Assignee
パケットビデオ コーポレイション
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
Application filed by パケットビデオ コーポレイション filed Critical パケットビデオ コーポレイション
Publication of JP2002534920A publication Critical patent/JP2002534920A/ja
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • H04N19/89Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving methods or arrangements for detection of transmission errors at the decoder
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Theoretical Computer Science (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Error Detection And Correction (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)

Abstract

(57)【要約】 【課題】エラーが起きやすいチャネル上で送信されるエンコーディングされたビデオデータを含むパケットに含まれるエンコーディングされたパラメータデータをデコーディングする方法および装置を提供することを課題とする。 【解決手段】この方法は、エンコーディングされたパラメータデータのビット長Lを判定することを意図している。そして、所定の歪み計量に従って、コードワードの候補シーケンスがエンコーディングされたパラメータデータと比較される。歪み計量に関連する予め定められた基準に基づいて、最適化されたシーケンスが候補シーケンスから選択される。最適化されたシーケンスは全体的に、ビット長Lに相当するビット数を有し、エンコーディングされたビデオデータをデコーディングする際に使用可能である。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】
本発明は、圧縮デジタルデータの回復に関し、さらに詳しくは、エラーが起き
やすいチャネル(error-prone channels)上で送信されるマクロブロックベースの
エンコーディングされたデジタル信号内のヘッダ情報をデコーディングする装置
および方法に関する。
【0002】
【従来の技術】
最近、ビデオ電話通信(video telephony)、ビデオ会議および/またはマル
チメディアなどのアプリケーションにおけるフルモーションビデオに対する需要
は、コンピュータおよび関連システムでのモーションビデオに標準規格を導入す
ることを求めている。かかるアプリケーションは、たとえば、従来の通信ハード
ウエアを用いたデータ送信を容易にするために、動画や対応する音声を表すのに
必要とされるデータ量を、管理可能な長さで再生できる圧縮技術の開発を求めて
いる。
【0003】 可変長コード化(符号化)は、損失のないデータ圧縮に用いられることが多い
コード化技術である。この技術によれば、8x8ブロックの画素のビデオデータ
が、離散コサイン変換(「DCT」)係数に変換される。そして、DCT係数は
量子化係数(quantization factors)によって量子化される。量子化されたDC
T係数はハフマンエンコーディングされて(Huffman encoded)、ハフマンコー
ドワードを形成する。ビットストリームに含まれるビデオデータの係るエンコー
ディングは、既知のデータ統計に関する最小冗長可変長コード(minimum redund
ant variable-length code)を構成するために一般的に用いられる。
【0004】 送信または記憶のための動画ビデオ画像の圧縮に関するハフマンエンコーディ
ングを用いた一連の標準規格は、モーションピクチャエキスパーツグループ(「
MPEG」)という一連の標準規格として知られている。各MPEG規格は、モ
ーションビデオピクチャおよびオーディオの圧縮に関する国際規格である。MP
EG規格は、映画ビデオが、対応する高品質サウンドと共に圧縮されることを可
能にして、一コマ進め(single frame advance)、反転および静止フレームビデ
オなどの他の機能を提供する。
【0005】 MPEGビデオビットストリームのデコーディングおよび処理は、あらゆるM
PEGデコーディングシステムの性能に必須のものである。圧縮されたMPEG
ビデオビットストリームは、オーディオデータおよびビデオデータの再構成に必
要とされる様々なパラメータを含む。MPEGビットストリームは、2つのビッ
トストリームである、オーディオとビデオとに容易に分割できる。MPEGビデ
オビットストリームは、ビデオパラメータならびに実際の圧縮ビデオデータから
なる。
【0006】 広範に採用されているMPEGビデオ規格の2つのバージョンは、通常、MP
EG−1およびMPEG−2として知られている。一般的に、MPEG−2規格
はMPEG−1規格よりも高い解像度を有しており、4〜6Mbpsの速度での
同報送信(broadcast transmission)を可能にしている。
【0007】 MPEG−1およびMPEG−2規格に加えて、提案中のMPEG−4規格が
ISO/IECによって目下規格化されている。MPEG−4規格は、たとえば
、コンテンツベースの対話性や特定の無線アプリケーションを容易にすることを
意図している。
【0008】 これらの標準規格によって特定されたビデオコードは、ブロック動き補償(bl
ock motion-compensated)DCTを利用することにより、デジタルビデオシーケ
ンスの圧縮を提供している。DCT工程の最初のブロックマッチングステップに
おいては、アルゴリズムが2つの時間的に隣り合ったフレームの間で発生する動
きを予測して補償する。そして、これらのフレームは予測された動きについて補
償されて、異なった画像を形成するために比較される。2つの時間的に隣り合っ
たフレームの間の相違を得ることにより、全ての既存の時間的冗長(temporal r
edundancy)は排除される。そのまま残る唯一の情報は、動き予測および補償ア
ルゴリズムで補償できなかった新たな情報である。
【0009】 第2のステップでは、この新たな情報がDCTを用いて周波数ドメインに転換
される。DCTは、この新たな情報のエネルギーを数個の低周波数成分に圧縮す
る特性を有している。また、ビデオシーケンス圧縮は、エンコーディングされた
高周波数情報の量を制限することにより得られる。
【0010】 このアプローチによってビデオエンコーディングに提供される圧縮の大半は、
動き予測および補償アルゴリズムによって達成される。すなわち、輝度(intensi
ty)や色(色差)についての情報ではなく、ビデオシーケンスに存在する動きに
関する情報を送信することがより効率的であることが分かった。動き情報は、現
在の輝度フレーム内の特定のロケーションから以前の輝度フレームにおける同じ
ロケーションを指すベクトルを用いて表される。ブロックマッチングについては
、これらのロケーションは、マクロブロック(「MB」)と呼ばれる等しい大き
さの所定の重なり合わないブロックである。MBに含まれる全ての画素は、同じ
動きを行うものと仮定する。ビデオシーケンスの現在のフレーム内の特定のMB
と関連づけられた動きベクトルは、ベストマッチを求めて以前の時間的に隣り合
ったフレームにおける所定のサーチ領域にわたってサーチすることにより求めら
れる。動きベクトルは、現在のフレームにおけるMBの中央から、以前のフレー
ムにおいてベストマッチを提供するブロックの中央を指している。
【0011】 予測された動きベクトルを利用することにより、以前のフレームのコピーが各
ベクトルによって変更され、現在のフレームの予測を作る。この演算を動き補償
と呼ぶ。上記のように、各予測されたMBは現在のMBから控除されて、DCT
によって空間的周波数ドメインに転換される差分MBを作り出す。これらの空間
的周波数係数は量子化されてエントロピーエンコーディングされ(entropy enco
ded)、元のビデオシーケンスの補償をさらに提供する。動きベクトルは、差分
パルスコード変調(「DCPM」)とエントロピーエンコーディングを用いて圧
縮される。動きベクトルとDCT係数は、何れもデコーダに送信されて、そこで
逆演算が行われて、デコーディングされたビデオシーケンスが作り出される。こ
れらの標準規格によって特定されたビデオコードは、最も根本的な情報以外を除
去するには非常に効率的であるので、デコーダによって実効される再構成工程に
おけるあらゆるエラーは、誤って構成される映像の一部となる。
【0012】 記憶媒体および送信媒体の広い範囲にわたって画像およびビデオ情報のアクセ
スを可能にするために、特にMPEG4規格の能力におけるロバスト性を高め送
信エラーを調整するように、MPEG4規格を設計する努力がなされてきた。こ
の点に関して、MPEG4規格のエラー復元性(error resiliency)を強化する
ために、多数の異なったタイプのツールが開発されてきた。これらのツールは、
再同期化、データ復元(data recovery)およびエラー隠蔽に関連するものとして
特徴づけることができる。MPEG4規格の特定のエラー復元モードにおいては
、ビデオデータを送信するために、再同期化マーカーによって分離された固定長
のパケットが用いられる。各パケット内では、そのパケットのヘッダ情報が最初
のパケットセグメントに置かれて、実際のエンコーディングされたビデオデータ
が、そのパケットの残りの部分を占める。そのパケットのヘッダ部分に含まれる
情報は、そのパケットの最初のMBへのインデックス、量子化情報、色信号(ch
rominance)についてのマクロブロックタイプとコード化されたブロックパター
ン(「MCBPC」)とに関する情報および動き情報を含む。
【0013】 ヘッダ情報に存在するあらゆるエラーの検出、探索および補正は、デコーディ
ングされたビデオ情報が十分な品質であることを確実にするためにきわめて重要
である。これは、特にエラーが起きやすい環境で動作する無線通信システムの場
合に特に重要である。
【0014】
【発明が解決しようとする課題】
したがって、簡略に言えば、本発明は、エンコーディングされたビデオデータ
を含むパケットに含まれているエンコーディングされたパラメータデータをデコ
ーディングする方法および装置を提供することを課題とする。
【0015】
【課題を解決するための手段】
この方法にかかる発明は、エンコーディングされたパラメータデータのビット
長Lを判定することを意図している。そして、コードワードの候補シーケンスは
、所定の歪み計量(distortion metric)に従って、エンコーディングされたパラ
メータデータと比較される。歪み計量に関連する予め定義された基準に基づいて
、候補シーケンスから最適化されたシーケンスが選択される。最適化されたシー
ケンスは、ビット長Lに相当するビット数を集合的に有しており、エンコーディ
ングされたビデオデータをデコーディングする際に使用可能である。
【0016】 候補シーケンスの最初のものは、第1のコードワード仮説を選択して、その第
1のコードワード仮説と関連付けられたN−1個のコードワードの第1の条件付
きで最適なシーケンスを判定することにより生成されることが好ましい。そして
、他の候補シーケンスが、異なったコードワード仮説を選択して、それに関連づ
けられたN−1個のコードワードの条件付きで最適なシーケンスを判定すること
により生成される。
【0017】
【発明の実施の形態】
図1〜6を参照して、本発明をさらに詳細に説明する。図1は、本明細書中で
説明しているように動作するビデオデコーダ100を含むデータ送信システムの
ブロック図である。ビデオデコーダ100は、本発明のダイナミックソフトデコ
ーディング技術(dynamic soft decoding technique)を用いて受信されたビッ
トストリーム104に含まれるエンコーディングされたビデオパケットのパケッ
トヘッダデータをデコーディングするように機能する。図1に示されているよう
に、オーディオ/ビデオエンコーダ106によって生成された多重化オーディオ
ビデオビットストリーム105が送信チャネル108を介してビデオデコーダ1
00に提供される。送信チャネル108の信頼できない性質のために、エラーが
ビットストリーム105内に導入される。それによって、受信したビットストリ
ーム104の特定のビットが送信されたビットストリーム105における対応す
るビットと相違することになる。ビデオデコーダ100が単にハードデシジョン
ベースのデコーディングアルゴリズムを用いているのであれば、これらのエラー
は結果として得られ映像の視覚的品質に壊滅的な影響を持つことになるであろう
。かかる結果を回避するために、受信されたビットストリーム104の各パケッ
トのヘッダデータは、下記のようにデコーディングされる。
【0018】 ビデオデコーダ100は、エンコーディングされたオーディオ情報を受信され
たビットストリーム104に含まれるエンコーディングされたビデオ情報から分
離するデマルチプレクサ114を含む。エンコーディングされたオーディオビッ
トストリームは、オーディオデコーダ118に提供され、一方エンコーディング
されたビデオビットストリームは、ビデオビットストリームデコーダ120に提
供される。ビデオビットストリームデコーダ120でエンコーディングされたビ
デオ情報の各パケットのヘッダは、本発明に従ってデコーディングされる。ある
パケットのヘッダが一旦デコーディングされると、その結果得られるデコーディ
ングパラメータを用いて当該パケットに含まれるマクロブロック内のエンコーデ
ィングされたビデオ情報をデコーディングする。そして、デコーディングされた
ビデオデータは、従来の逆量子化器/逆DCTモジュール(inverse quantizer
and inverse DCT module)124に提供される。動き補償が実行されることが必
要なときには、差分ブロック(difference block)130で、動き補償モジュー
ル128によって逆DCTモジュール124の出力が変更されるように、コント
ローラ(図示せず)がスイッチ125を設定する。差分ブロック130によって
生成された動き補償ビデオビットストリームは、動き補償モジュール128に送
り返されて、標準ポストプロセッサユニット134に提供される。動き補償が必
要とされないときには、コントローラは、逆DCTモジュール124の出力がポ
ストプロセッサ134に直接提供されるようにスイッチ125を設定する。
【0019】 図2は、ビデオデコーダ100に提供されたビットストリーム104に含まれ
る典型的なエンコーディングされたビデオパケット140の略図化した表示を提
供する。典型的な実施態様では、エンコーダ106は再同期化マーカー142a
、142bをビットストリーム104内のほぼ均等に間隔を開けた(ビットに関
して)ロケーションに設ける。各再同期化マーカー142は、個々のビデオパケ
ットの開始を定める。エンコーダ106では、所定のビデオパケット内の連続す
るマクロブロックが当該パケットに含まれるビットの数が所定の閾値を超えるま
でエンコーディングされる。このとき、新たなビデオパケットが作成されて、次
のマクロブロックのエンコーディングの開始時に再同期化マーカーが挿入される
【0020】 ビデオパケット140はヘッダ情報144を含み、ヘッダ情報144は、再同
期化マーカー142aとデコーディング工程を再開するのに必要な他のパケット
制御情報146とからなる。パケット制御情報146は、動きマーカー148に
よってパケット140の残りの部分から分離され、この残りの部分はテクスチャ
情報150をエンコーディングされたマクロブロックの形式で含む。パケット制
御情報146は、パケット140内の第1のマクロブロックのロケーションへの
インデックス152と、絶対量子化情報154と、介在MCBPCパラメータ/
絶対動きベクトル情報(interleaved MCBPC parameter and absolute motion vec
tor information)156とを含む。量子化情報154は、インデックス152に
よって指定された第1のマクロブロックのロケーションで、差分デコーディング
工程が再開されることを可能にする。テクスチャ情報150とMCBPC/動き
情報156の分割は、何らかのテクスチャ情報150が失われた結果として生じ
てしまうであろうエラーを隠蔽するために、これらの情報が用いられることを可
能にする。
【0021】 発明の背景において述べたように、特定のマクロブロックと関連付けられた動
きベクトルを表すのに、差分エンコーディングが用いられる。各再同期化マーカ
ー142でのデコーダ100の再同期化時に、直前のビデオパケットと関連付け
られた動きベクトルの絶対値と他の情報(たとえば、量子化係数)の絶対値がヘ
ッダ情報144から抽出される。したがって、パケット140の直前のビデオパ
ケットが失われた場合には、パケット140の第1のマクロブロックに関する動
きベクトルの値と量子化係数の値は、直前のパケットに関するこれらのパラメー
タの絶対値と、第1のマクロブロックと関連づけられたこれらのパラメータに関
する差分値との合計を求めることにより得ることができる。
【0022】 図3は、エンコーディングされたビデオパケット140に含まれるヘッダ情報
のダイナミックソフトデコーディング方法の好適な実施形態の概略化されたフロ
ーチャートである。最初のステップ160において、再同期化マーカー142a
と142bのロケーションおよび動きマーカー148のロケーションが識別され
る。次に、ステップ164において、動きマーカー148のロケーションと再同
期化マーカー142aのロケーションとを比較することにより、ヘッダ情報14
4の長さ「L」(ビットでの)が判定される。そして、現在のパケットおよびそ
れに続くパケットにおける最初のMBへのインデックスを調べることにより、テ
クスチャ情報150をデコーディングする際に用いられるコードワードの数「N
」が判定される。ステップ166では、Lビットを含み、パケット140に関す
るデコーディングされたヘッダ情報に対応する「N」個のコードワードのシーケ
ンスが下記のダイナミックソフトデコーディング技術に従って求められる。
【0023】 本発明によれば、「L」ビットにわたる「N」個のコードワードへのヘッダ情
報144の最適なデコーディングは、D(N,L)によって表され、ここで、 D*(N,L) = D*(N-1,L-1H*(1))+H*(1) (1) H*(1) = arg mini=1, ...kD*(N-1,L-1H(1)) + Dist(MCBPC1=i) (2) であって、H(1)はD(N,L)によって定められたコードワードの最適
なシーケンス内の最初のコードワードであり、1H*(1)はH(1)内に含
まれるビットの数であり、Kは利用されるエンコーディングシステムにおけるコ
ードワードの数である。また、Dist(MCBPC1=i)は、i番目のコー
ドワードがビデオパケット140における最初のコードワードであると仮定した
ときの、ビットストリーム104と最も密接に調和するコードワードの連続との
間の距離すなわち歪みの計測値である。距離すなわち歪み計量(distance metric
)Dist(.)は、ハードデシジョンベースの計量(hard decision-based metric)
(たとえば、ハミング距離)とすることができ、あるいはビットストリームデコ
ーダ120にビットストリーム104内の特定のビットの信頼性に関する何らか
の表示が設けられている場合には、ソフトデシジョンベースの計量(soft decisi
on-based metric)とすることができる。かかる表示は、たとえば、チャネル品質
情報へアクセスできるチャネルデコーダによって提供することができる。最適な
デコーディング結果であるD(N,L)は、ビットストリーム104と比較さ
れたときに、予め定めた距離計量(ディスタンスメトリック/"distance metric"
)を最小にするビットパターンを定める利用可能なコードワードのシーケンスで
あるということになる。
【0024】 図4(a)〜図4(c)は、単純化された3コードワードデコーディングシス
テムのコンテキストにおいて、本発明に従ったパケットヘッダデータのダイナミ
ックソフトデコーディングの例を説明的に提供する。図4(d)は、単純化され
たエンコーディングシステムの3つのコードワード、{“A”=“0”,“B”
=“10”、“C”=“11”}を含むコードテーブルである。図4(a)は、
メッセージ「AC」(L=3,N=2)に対応する3ビットパケット「011」
を含む送信されたビットストリーム105を想定している。このパケットは、送
信チャネル108によってエラーを持ち込まれ、パケット「001」がデコーダ
100で受信されたときに受信されるものとも想定している(図4(b))。こ
の場合、従来のハードデシジョンでルックアップベースのデコーダは、「AA」
を出力し、その後パケットの終わりで1つの「1」に遭遇した時点でエラーを検
出する。図4(b)によって示されているように、1つの「1」は図4(b)の
コードテーブル内に含まれるコードワードではないので、かかるエラーは検出さ
れる。
【0025】 図4(c)は、上記例のコンテキストにおける本発明に係るダイナミックソフ
トデコーディング工程および対応する結果を説明的に表している。図4(c)に
おいて、楕円形状の閉じた曲線167は、それによって囲まれた矢印付き直線で
表される演算の中で選択が行われることを示している。細い矢印付き直線168
は、元の最適化問題D(N,L)の分解可能性を示している。D(N,L)
を判定する工程の間に行われるより低レベルの演算によって戻される最適な結果
は、太い方の矢印付き直線169によって表されている。
【0026】 図4(c)によって示されているように、式(1)および式(2)をこの例に
適用すると、次のようになる。 D*(N,L) = D*(2,3) = D*(1,3-1H*(1)) + H*(1) (3) H*(1) = arg mini=1,2,3D*(1,3-1H(1)) + Dist(codeward1=i) (4)
【0027】 式(4)の距離計量Dist(.)がハミング距離(すなわち、デコーディング
されて受信されたビットシーケンスにおける異なったビットの総数)であると仮
定すると、受信されたパケット「001」について、式(4)は次の結果を伴う
。 Min {D*(1,2) + 0, D*(1,1) + 1, D*(1,1) + 2} (5)
【0028】 ここで、式(5)はパケット内の最初のコードワードがそれぞれA、Bおよび
Cであると仮定したときに関係する最適化に対応する。式(5)における最初の
項に関しては、パケット「001」における最初の受信されたビットは「0」で
あるので、Dist(A)=0であり、図4(d)から、「A」の値も「0」で
ある。Dist(B)=1およびDist(C)=2に関する値は、同様に得る
ことができる。D(1,1)+1は明らかにD(1,1)+2未満であるの
で、式(5)は次の結果に相当する。 Min {D*(1,2) + 0, D*(1,1) + 1} (6)
【0029】 すなわち、式(5)の式(6)への換算は、そのパケットにおける最初のコー
ドワードが2ビットのコードワードであれば、それは「C」ではなく「B」であ
るべきことを示している。ビットストリームデコーダ120は、式(1)および
式(2)を用いて、受信されたパケット「001」における最後の2ビットにつ
いてD(1,2)およびD(1,1)を求めることにより、式(6)によっ
て提示された問題を分解するように動作する。受信したパケット「001」にお
ける最後の2ビットを図4(d)のコードテーブルと比較することにより、D (1,2)=1であることが明らかである(すなわち、受信されたパケット「0
01」における最後の2ビット「01」が2ビットコードワード「C」=「11
」であると仮定したときに、Dist(.)計量は縮小されて「1」に等しくな
る)。同じタイプの比較を行うと、D(1,1)=1となる(すなわち、受信
したパケット「001」における最後のビットは「1」の値を有し、図4(d)
のコードテーブルにおける唯一の1ビットコードワード「A」=0から離れた「
1」の距離である)。D(1,2)=1およびD(1,1)=1を式(6)
に挿入すると、次の式が得られる。 D*(2,3) = Min {D*(1,2) + 0, D*(1,1) + 1} = Min{1,2} (7)
【0030】 この例における最適デコーディング結果D(2,3)は、D(1,2)+
0に相当することになり、これは式(7)を最小化して値「1」となることが示
している。D(1,2)+0の項は、最初のコードワードが「A」であるとの
仮定の下で式(6)および式(7)で生じ、しかも式(7)は受信したパケット
における最後のコードワードが「C」であるときに最小化されるので、この例に
おける最適なデコーディング結果は「AC」である。
【0031】 図5は、本発明のダイナミックソフトデコーディング手順を実施するために設
けられた好適な再帰的ルーチン170を表すフローチャートである。図5におい
ては、図3における全ての演算が、ステップ166を除いて、受信されたパケッ
トヘッダ情報について行われているものと仮定している。すなわち、デコーディ
ングされたヘッダ情報に含まれるパケットヘッダ情報144のビット長Lおよび
コードワードNの数が、一旦、上記のように判定されると、図5の手順を用いて
最適なデコーディング結果D(currN = N,currL = L)を求め
る。
【0032】 図5を参照すると、ステップ180において、デコーディングされるパケット
の全体に対応する元の問題D(N,L)の解決に関連して、再帰的ルーチン1
70が(減らされたcurrNおよびcurrLとともに)最初に呼び出された
ときに、D(currN = N,currL = L)が既に得られているかど
うかが判定される。得られていれば、保存された結果D(currN = N,
currL = L)が返されて(ステップ184)、次に受信したビデオパケッ
トのヘッダ情報のデコーディングが開始される。得られていなければ、ステップ
186において、無限値にパラメータBestが設定され、ステップ188において
、利用可能なコードワードのテーブル(たとえば、図4(d)参照)からコード
ワードCが選択される。
【0033】 ステップ190において、適用可能な距離計量に従って、選択されたコードワ
ードCのビットと、受信されたパケットのヘッダ情報における最初のlビット
を比較することにより、差Dが計算される。このビット長lはステップ194
で記録され、選択されたコードワードCのビット長に対応する。コードワード
の数Nが1であれば(ステップ198)、一時的変数TmpDistには差D が割り当てられる(ステップ202)。コードワードの数Nが1に等しくなけれ
ば、TmpDistにはDi+D(currN−1,currL−1)の値が
割り当てられる(ステップ204)。この場合に、図5によって意図された方法
で、D(currN−1,currL−1)を評価するために、再帰的ルーチ
ン170が再度呼び出される(ステップ205)。この場合の呼び出されたルー
チン170が、一旦、D(currN−1,currL−1)を評価すると、
この評価には再帰的ルーチン170をさらに1回または2回呼び出すことが関係
することもあるが、TmpDistの対応する値が返される。そして、元々呼び
出されたルーチン170は、TmpDistについて返された値がBestの現在の
値よりも小さいかどうかを判定する(ステップ206)。そうであれば、Bes
tの値は、TmpDstの現在の値に設定され(ステップ208)、Cのイン
デックス「i」は、Cのビット長lと共に保存される(ステップ210)。
【0034】 図5によって示されているように、ステップ214において、ルーチン170
が、デコーディングされたシーケンスにおいて最初のコードワードとしてK個の
利用可能なコードワード(C,C,...,C)のそれぞれを用いて、D (N,L)を評価したかどうかを判定する。そうであれば、フラッグが立てら
れて、N個のコードワードの最適シーケンスと関連づけられた歪み値としてBe
stの値を返したときに、ルーチン170は終了する(ステップ216)。K個
全てのコードワードがCとして用いられていないのであれば、インデックスi
の値は1だけ増やされる(ステップ218)。そして、ステップ188において
、次のコードワードCを用いて処理を続ける。
【0035】 図6は、本発明のダイナミックソフトデコーディング手順を実施するために設
けられた好適な非再帰的ルーチン250を表すフローチャートである。図5のフ
ローチャートと同様に、ルーチン250に入ると、ステップ166を除いて、図
3の全ての演算が受信されたパケットヘッダ情報について行われたものとの仮定
がなされる。D(N,L)の判に関する非再帰的ルーチン250は、複数のス
タック要素を有するメモリスタックを用いて実行される。各スタック要素は、パ
ラメータ(currDist,currN,currL,currS)の対応す
る値を保持する3つの領域を含む。図6を参照してさらに説明するように、パラ
メータcurrDistは、特定のコードワードがシーケンスにおける最初のコ
ードワードとして選択されている部分的にデコーディングされたシーケンスにつ
いての適用可能な距離計量の累積値(accumulated value of the applicable dis
tance metric)を反映する。すなわち、currDistの値は、新たなコード
ワードが部分的にデコーディングされたシーケンスに付加される都度、適用可能
な距離計量に従って増加される。パラメータcurrNは、部分的にデコーディ
ングされたシーケンスに付加されるために残っている付加的なコードワードの数
を示し、パラメータcurrLは、かかる付加的なcurrN個のコードワード
をエンコーディングするために利用可能な残りのビット数を反映している。また
、パラメータcurrSは、currN個のコードワードがデコーディングされ
るために残った時点でデコーディングされたN−currN個のコードワード(
L−currLビットを消費する)の集合からなる。
【0036】 ルーチン250は非再帰的であるので、式D(N−n,L−l)の「中間的
」問題を解くために、(再帰的ルーチン170が行うようには)それ自体を呼び
出しはしない。むしろ、これらの中間的問題は、最終的な関心である式D(N
,L)の評価を容易にする方法で、スタックに保存される。この点に関して、ス
タックは、最終的な関心の問題、すなわち、(0,N,L,φ)(ここで、φは
空のストリングを示している)に対応する(currDist,currN,c
urrL,currS)パラメータが、最初にスタックに押し込められて最後に
スタックから弾き出されるように、「先入れ後出し」の方法でロードされる。こ
れは、最終的な関心の問題を、小さい中間的な問題のセット(それぞれ、異なっ
たコードワードをデコーディングされたシーケンスにおける最初のコードワード
と仮定する)に分解する意図を反映している。
【0037】 図6によって示されているように、初期化ステップ254において、パラメー
タ(0,N,L,φ)はスタックに押し込められて、パラメータBestには無限値
が割り当てられる。スタックが空ではないと判定されると(ステップ258)、
パラメータ(currDist,currN,currL,currS)はスタ
ックから弾き出されて(ステップ262)、下記のように用いられる。curr
Nがゼロに等しくなければ(ステップ264)、インデックス「i」の値は1に
設定され(ステップ268)、利用可能なコードワードのテーブルからコードワ
ードCが選択されて(ステップ270)、潜在的に最適なデコーディングされ
たシーケンスにおける最初のコードワードになる。
【0038】 そして、適用可能な距離計量に従って、選択されたコードワードCのビット
を、受信されたパケットのヘッダ情報における最初のlビットと比較すること
により(ここで、lは選択されたコードワードCのビット長である)、パラ
メータTmpDistに関する値が判定される(ステップ274)。このビット
長lもステップ274で記録される。ステップ275で、式currDist
+tmpDistの値が、currN=currN−1かつcurrL=c
urrL−lであるスタック内の何れかの他の要素E=(currDist ,currN,currL,currS)と関連づけられたcurrDi
stの値よりも小さいかどうかが判定される。CiをcurrSに付加した後
に(ステップ276)、パラメータ(currDist+TmpDist,cu
rrN−1,currl−l)がスタックに押し込まれる(ステップ278)
。ステップ280で、K個全ての利用可能なコードワードが、潜在的に最適なデ
コーディングされたシーケンスにおいて、最初のコードワードCとして使用さ
れたかどうか(すなわち、iがK未満かどうか)が判定される。使用されていな
ければ、インデックスiは1だけ増加され(ステップ282)、新たなコードワ
ードCが選択される(ステップ284)。そして、各利用可能なコードワード
(i=1,2,...,K)についてステップ274および278が反復さ
れ、その時点で、ルーチン250はステップ258に戻る。
【0039】 スタックが空ではないことが分かり(ステップ258)、currN=0であ
れば、currDistがパラメータBestの現在値未満であるかどうかが判
定される(ステップ294)。そうでなければ、ルーチン250はステップ25
8に戻る。そうであれば、パラメータBestの値はcurrDistに等しく
され、currSは現在の最適なデコーディング結果BestSとして保存され
て、処理はステップ258に戻る。ステップ258でスタックが空であることが
分かれば、最適なコードワードシーケンスBestSは、適用可能な距離計量の
関連付けられた値D(N,L)(パラメータBestによって表される)と共
に返されて、ルーチン250は終了する(ステップ262)。
【0040】 上記のアプリケーションは、主として、受信したビデオパケットに含まれるヘ
ッダ情報がデコーディングされてから、関連づけられたマクロブロックベースの
エンコーディングされたビデオ情報をデコーディングするために用いられるシス
テムのコンテキストで説明してきたが、当業者は、本発明の教示は他のパケット
形式のデコーディングに適用してもよいことを容易に理解できる。よって、出願
人は、このアプリケーションが、特許請求の範囲によって限定されることのみを
意図している。
【図面の簡単な説明】
【図1】 本発明のダイナミックソフトデコーディング技術に従って、パケットヘッダデ
ータをデコーディングするように作用するビデオデコーダのブロック図である。
【図2】 図1のビデオデコーダに提供されたビットストリームに含まれる典型的なエン
コーディングされたビデオパケットの略図化した表示である。
【図3】 エンコーディングされたビデオパケットに含まれるヘッダ情報のダイナミック
ソフトデコーディング方法の好適な実施形態の概略的なフローチャートである。
【図4】 図4aは、単純化されたエンコーディングシステムのコンテキストの中で、パ
ケットヘッダのダイナミックソフトデコーディングの例を説明的に示す図である
。図4bは、単純化されたエンコーディングシステムのコンテキストの中で、パ
ケットヘッダのダイナミックソフトデコーディングの例を説明的に示す図である
。図4cは、単純化されたエンコーディングシステムのコンテキストの中で、パ
ケットヘッダのダイナミックソフトデコーディングの例を説明的に示す図である
。図4dは、図4a〜図4cによって示された例において言及されている3つの
コードワードを含むコードテーブルである。
【図5】 本発明のダイナミックソフトデコーディング手順を実施するために設けられた
好適な再帰的ルーチンを表すフローチャートである。
【図6】 本発明のダイナミックソフトデコーディング手順を実施するために設けられた
好適な非再帰的ルーチンを表すフローチャートである。
───────────────────────────────────────────────────── フロントページの続き (72)発明者 ウェン ジャンタオ アメリカ合衆国 91106 カリフォルニア 州、パサデナ、イースト デル マー ボ ーレヴァルド 1127 アパートメント 418 Fターム(参考) 5C059 MA23 MC11 RB02 RB09 RC02 RF28 RF30 5J064 AA01 BA09 BA16 BB08 BB09 BC14 BC16 CA02 5J065 AA01 AB02 AC02 AE08 AF02 AH07 5K014 AA01 EA04 EA08 FA10

Claims (13)

    【特許請求の範囲】
  1. 【請求項1】 エンコーディングされたビデオデータを含むパケットに含ま
    れるエンコーディングされたパラメータデータをデコーディングする方法であっ
    て、 前記エンコーディングされたパラメータデータのビット長Lを判定するステッ
    プと、 歪み計量に従って、コードワードの候補シーケンスを前記エンコーディングさ
    れたパラメータデータと比較するステップと、 前記歪み計量に関連する予め定められた基準に基づいて、前記候補シーケンス
    から最適なシーケンスを選択するステップとを含むことを特徴とする前記方法。
  2. 【請求項2】 前記最適なシーケンスは、前記ビット長Lに相当するビット
    数を集合的に有しており、前記エンコーディングされたビデオデータをデコーデ
    ィングするのに使用可能であることを特徴とする請求項1に記載の方法。
  3. 【請求項3】 前記ビット長Lを判定する前記ステップは、前記パケット内
    に含まれる第1のマーカーと第2のマーカーとの間におけるビット数を計算する
    ステップを含み、前記比較するステップは、第1のコードワード仮定を選択して
    、前記第1のコードワード仮定と関連づけられたN−1個の前記コードワードの
    第1の条件付きで最適なシーケンスを判定するステップを含むことを特徴とする
    請求項1に記載の方法。
  4. 【請求項4】 前記比較するステップは、第2のコードワード仮定を選択し
    て、前記第2のコードワード仮定と関連づけられた、N−1個の前記コードワー
    ドの第2の条件付きで最適なシーケンスを判定するステップを含むことを特徴と
    する請求項3に記載の方法。
  5. 【請求項5】 前記比較するステップは、前記第1の条件付きで最適なシー
    ケンスと関連付けられた第1のエラーと、前記第2の条件付きで最適なシーケン
    スと関連付けられた第2のエラーとを判定するステップと、前記第1のエラーと
    前記第2のエラーとを比較するステップとを含むことを特徴とする請求項4に記
    載の方法。
  6. 【請求項6】 エンコーディングされたビデオデータを含むパケットに含ま
    れるエンコーディングされたパラメータデータをデコーディングする装置であっ
    て、 前記エンコーディングされたパラメータデータのビット長Lを判定する手段と
    、 歪み計量に従って、コードワードの候補シーケンスを前記エンコーディングさ
    れたパラメータデータと比較する手段と、 前記歪み計量に関連する予め定められた基準に基づいて、前記候補シーケンス
    から最適なシーケンスを選択する手段とを含むことを特徴とする前記装置。
  7. 【請求項7】 前記最適なシーケンスは全体的に、前記ビット長Lに相当す
    るビット数を有し、前記エンコーディングされたビデオデータをデコーディング
    するのに使用可能であり、前記ビット長Lを判定する前記手段は、前記パケット
    内に含まれる第1のマーカーおよび第2のマーカーの間におけるビット数を計算
    する手段を含むことを特徴とする請求項6に記載の装置。
  8. 【請求項8】 前記比較する手段は、第1のコードワード仮定を選択して、
    前記第1のコードワード仮定と関連づけられた、N−1個の前記コードワードの
    第1の条件付きで最適なシーケンスを判定する手段を含むことを特徴とする請求
    項6に記載の装置。
  9. 【請求項9】 前記比較する手段は、第2のコードワード仮定を選択して、
    前記第2のコードワード仮定と関連づけられた、N−1個の前記コードワードの
    第2の条件付きで最適なシーケンスを判定する手段を含むことを特徴とする請求
    項8に記載の装置。
  10. 【請求項10】 前記比較する手段は、前記第1の条件付きで最適なシーケ
    ンスと関連付けられた第1のエラーと、前記第2の条件付きで最適なシーケンス
    と関連付けられた第2のエラーとを判定する手段と、前記第1のエラーと前記第
    2のエラーとを比較する手段とを含むことを特徴とする請求項9に記載の装置。
  11. 【請求項11】 エンコーディングされたビデオデータのマクロブロックを
    含むパケットをデコーディングするデコーダにおいて、前記パケットはデコーデ
    ィングされたパラメータデータを含んでいるデコーダであって、 前記デコーディングされたパラメータデータのビット長Lを判定する手段と、 歪み計量に従って、コードワードの候補シーケンスを前記デコーディングされ
    たパラメータデータと比較する手段と、 前記歪み計量に関連する予め定められた基準に基づいて、前記候補シーケンス
    から最適なシーケンスを選択する手段と、 前記最適なシーケンスを用いて、エンコーディングされたビデオデータの前記
    マクロブロックをデコーディングするデコーディングユニットとを含むことを特
    徴とするデコーダ。
  12. 【請求項12】 前記最適なシーケンスは、前記ビット長Lに相当するビッ
    ト数を集合的に有しており、前記エンコーディングされたビデオデータの前記マ
    クロブロックをデコーディングするのに使用可能であり、前記ビット長Lを判定
    する前記手段は、前記パケットに含まれる第1のマーカーおよび第2のマーカー
    の間におけるビット数を計算する手段を含むことを特徴とする請求項11に記載
    のデコーダ。
  13. 【請求項13】 前記比較する手段は、第1のコードワード仮定を選択して
    、前記第1のコードワード仮定と関連づけられたN−1個の前記コードワードの
    第1の条件付きで最適なシーケンスを判定する手段を含むことを特徴とする請求
    項11に記載のデコーダ。
JP2000593025A 1999-01-07 2000-01-07 マクロブロックベース圧縮ビデオデータ中のヘッダ情報のロバストデコーディング方法および装置 Pending JP2002534920A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US09/226,227 US6356661B1 (en) 1999-01-07 1999-01-07 Method and device for robust decoding of header information in macroblock-based compressed video data
US09/226,227 1999-01-07
PCT/US2000/000373 WO2000041396A1 (en) 1999-01-07 2000-01-07 Method and device for robust decoding of header information in macroblock-based compressed video data

Publications (1)

Publication Number Publication Date
JP2002534920A true JP2002534920A (ja) 2002-10-15

Family

ID=22848076

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000593025A Pending JP2002534920A (ja) 1999-01-07 2000-01-07 マクロブロックベース圧縮ビデオデータ中のヘッダ情報のロバストデコーディング方法および装置

Country Status (6)

Country Link
US (1) US6356661B1 (ja)
EP (1) EP1142344A1 (ja)
JP (1) JP2002534920A (ja)
KR (1) KR20010108077A (ja)
CN (1) CN1342371A (ja)
WO (1) WO2000041396A1 (ja)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3593883B2 (ja) * 1998-05-15 2004-11-24 株式会社日立製作所 映像ストリーム送受信システム
US7010737B2 (en) * 1999-02-12 2006-03-07 Sony Corporation Method and apparatus for error data recovery
US7630721B2 (en) 2000-06-27 2009-12-08 Ortiz & Associates Consulting, Llc Systems, methods and apparatuses for brokering data between wireless devices and data rendering devices
US7812856B2 (en) 2000-10-26 2010-10-12 Front Row Technologies, Llc Providing multiple perspectives of a venue activity to electronic wireless hand held devices
KR100454501B1 (ko) * 2001-12-26 2004-10-28 브이케이 주식회사 영상신호를 부호화 또는 복호화하기 위한 예측 장치 및 방법
US20060007201A1 (en) * 2004-07-06 2006-01-12 Her-Ming Jong Image display controller with processing data protection
US9172952B2 (en) * 2012-06-25 2015-10-27 Cisco Technology, Inc. Method and system for analyzing video stream accuracy in a network environment
US10291262B2 (en) * 2015-04-08 2019-05-14 Telefonaktiebolaget Lm Ericsson (Publ) Decoding of messages with known or hypothesized difference
CN107810605A (zh) * 2015-04-30 2018-03-16 瑞典爱立信有限公司 消息解码

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5642437A (en) * 1992-02-22 1997-06-24 Texas Instruments Incorporated System decoder circuit with temporary bit storage and method of operation
US5729556A (en) * 1993-02-22 1998-03-17 Texas Instruments System decoder circuit with temporary bit storage and method of operation
JP3237974B2 (ja) 1993-09-20 2001-12-10 株式会社東芝 ディジタル信号復号装置
US5629958A (en) 1994-07-08 1997-05-13 Zenith Electronics Corporation Data frame structure and synchronization system for digital television signal
US5668925A (en) 1995-06-01 1997-09-16 Martin Marietta Corporation Low data rate speech encoder with mixed excitation
US5724369A (en) * 1995-10-26 1998-03-03 Motorola Inc. Method and device for concealment and containment of errors in a macroblock-based video codec
US5778191A (en) * 1995-10-26 1998-07-07 Motorola, Inc. Method and device for error control of a macroblock-based video compression technique
US5767799A (en) 1995-12-05 1998-06-16 Mitsubishi Semiconductor America, Inc. Low power high speed MPEG video variable length decoder
US5867221A (en) * 1996-03-29 1999-02-02 Interated Systems, Inc. Method and system for the fractal compression of data using an integrated circuit for discrete cosine transform compression/decompression
JP3823275B2 (ja) 1996-06-10 2006-09-20 富士通株式会社 動画像符号化装置
US6141453A (en) * 1998-02-11 2000-10-31 Motorola, Inc. Method, device and digital camera for error control and region of interest localization of a wavelet based image compression system

Also Published As

Publication number Publication date
CN1342371A (zh) 2002-03-27
US6356661B1 (en) 2002-03-12
KR20010108077A (ko) 2001-12-07
WO2000041396A1 (en) 2000-07-13
EP1142344A1 (en) 2001-10-10

Similar Documents

Publication Publication Date Title
JP5007012B2 (ja) ビデオ符号化方法
EP1811788A2 (en) Picture encoding method and apparatus and picture decoding method and apparatus
US20060062300A1 (en) Method and device for encoding/decoding video signals using base layer
JP2003533950A (ja) ビデオ符号化方法
JP2008537373A (ja) イントラスライス再同期点を使用した誤り回復方法および装置
CN101175213A (zh) 视频编码
US8199817B2 (en) Method for error concealment in decoding of moving picture and decoding apparatus using the same
US6847684B1 (en) Zero-block encoding
US6356661B1 (en) Method and device for robust decoding of header information in macroblock-based compressed video data
JP3415319B2 (ja) 動画像符号化装置及び動画像符号化方法
JP3262761B2 (ja) エラー許容モードビデオコデック方法及びその装置
JPH08251597A (ja) 動画像符号化/復号化装置
JP2002325259A (ja) 誤り補正に基づいてデジタル画像を符号化する方法
JP3756897B2 (ja) 動画像符号化装置及び動画像符号化方法
JPWO2003092302A1 (ja) 動画像伝送システム、動画像符号化装置、動画像復号化装置、及び動画像伝送プログラム
JP4302093B2 (ja) 動画像符号化装置及び動画像符号化方法
JP3474859B2 (ja) 動画像符号化装置及び動画像符号化方法
JP3756902B2 (ja) 動画像復号化装置及び動画像復号化方法
JP3756901B2 (ja) 動画像復号化装置及び動画像復号化方法
JP3756900B2 (ja) 動画像復号化装置及び動画像復号化方法
JP4302094B2 (ja) 動画像復号化装置及び動画像復号化方法
JP3756898B2 (ja) 動画像符号化装置及び動画像符号化方法
JP3756899B2 (ja) 動画像復号化装置及び動画像復号化方法
KR100213288B1 (ko) 에이치. 263 영상 비트 스트림에서의 에러 검출방법
JP3474862B2 (ja) 動画像復号化装置及び動画像復号化方法