JPH0799659A - 非消耗的動き予測法 - Google Patents

非消耗的動き予測法

Info

Publication number
JPH0799659A
JPH0799659A JP6124245A JP12424594A JPH0799659A JP H0799659 A JPH0799659 A JP H0799659A JP 6124245 A JP6124245 A JP 6124245A JP 12424594 A JP12424594 A JP 12424594A JP H0799659 A JPH0799659 A JP H0799659A
Authority
JP
Japan
Prior art keywords
image
block
data
accelerator
motion prediction
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.)
Withdrawn
Application number
JP6124245A
Other languages
English (en)
Inventor
Michael Keith
キース マイケル
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.)
Intel Corp
Original Assignee
Intel 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
Application filed by Intel Corp filed Critical Intel Corp
Publication of JPH0799659A publication Critical patent/JPH0799659A/ja
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/14Fourier, Walsh or analogous domain transformations, e.g. Laplace, Hilbert, Karhunen-Loeve, transforms
    • G06F17/147Discrete orthonormal transforms, e.g. discrete cosine transform, discrete sine transform, and variations therefrom, e.g. modified discrete cosine transform, integer transforms approximating the discrete cosine transform
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • 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/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/80Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
    • H04N19/82Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation involving filtering within a prediction loop
    • 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/86Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving reduction of coding artifacts, e.g. of blockiness
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/14Picture signal circuitry for video frequency region
    • H04N5/144Movement detection
    • H04N5/145Movement estimation
    • 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/13Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/91Entropy coding, e.g. variable length coding [VLC] or arithmetic coding

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Computational Mathematics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Algebra (AREA)
  • Discrete Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

(57)【要約】 【目的】 画像処理装置で画像信号の圧縮復元の高能率
化をはかる。 【構成】 試験画像と複数の候補画像を有するシステム
で動き予測を実行する方法を提供する。候補画像が選択
され、試験画像と候補画像の差が決定される。画像の動
きはこの差により予測され、決定は動き予測プロセスで
の期間によりなされる。候補画像の選択、差の決定、動
き予測は期間決定によって繰り返される。期間決定は時
間間隔の決定かあるいはマシンサイクル数の決定でよ
い。本装置はこれらの操作が繰り返される試験画像と候
補画像との間の誤差を繰り返し減少させるのに適合して
いる。誤差の減少が停止し、増加しだすと最良の適合得
られたと見なす。初めにタイムアウトが起こらない限
り、 繰り返し操作により最適適合を決定する。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は画像処理の分野に関し、
特に画像信号の圧縮と復元に関する。
【0002】
【従来の技術】画像の圧縮及び復元を行なう装置におい
てはループフィルタリングを行なうことはよく知られい
る。例えば、予想される8×8ブロック内の画素に動作
する二次元空間フィルタを用いることが知られている。
このフィルタは二つの1次元関数、即ち水平及び垂直の
関数に分離可能である。水平及び垂直の両関数はタグの
一つがブロックの外部に外れるブロックの端部を除いて
1/4 、1/2 及び1/4 の係数をもった非巡回形である。こ
のような場合は一次元フィルタは0、1、0を係数をも
つように変更される。二次元フィルタ出力部で8ビット
の整数値に丸めることによっても計算上の十分な精度が
保たれる。
【0003】更にこれらの装置においては量子化が行な
われることがよく知られている。代表的な装置におい
て、量子化の数は内部ブロック符号化されたDC係数に対
しては1であり、他の全ての係数に対しては31である。
マクロブロック内で同一の量子化が内部ブロック符号化
されたDC係数を除いて全ての係数に対して用いられてい
る。内部ブロック符号化されたDC係数は名目上、8のス
テップ幅で直線的に量子化された変換値であり無効領域
はない。他の31の量子化の各々もまた名目上直線的であ
るが、0に近い中央無効領域があり、2から62の範囲内
にある偶数値のステップ幅をもっている。これらの装置
においては変換された係数の最大ダイナミック範囲は小
さな量子化ステップでは表わせない。
【0004】符号器と復号器のループで計算上オーバフ
ローを生ずる変換された係数振幅の量子化歪を防ぐため
クリッピング関数がしばしば挿入される。クリッピング
関数は符号化プロセスで補正されるごとく予想値と予想
誤差を加算して求められる再構築された画像に適用され
る。クリッパーは0以下か、255 以上の値となる画素に
対してこれらを0と255 とするよう動作する。
【0005】この方法で量子化された値は下記の方法で
逆量子化される。内部ブロック符号化されたDC係数以外
の全ての係数に対し、再構築レベルREC は-2048 と2047
との範囲内にあり、下記の式の結果をクリッピングする
ことにより与えられる。
【0006】
【数1】 REC = QUANT*(2*LEVEL+1) ; LEVEL > 0 QUANT = "odd" REC = QUANT*(2*LEVEL-1) ; LEVEL < 0 QUANT = "odd" REC = QUANT*(2*LEVEL+1)-1 ; LEVEL > 0 QUANT = "even" REC = QUANT*(2*LEVEL-1)+1 ; LEVEL < 0 QUANT = "even" REC = 0; LEVEL = 0
【0007】以上の式でQUANT は1から31の範囲にを
る。これらの再構築レベルは、2047と-2048 を除いてLE
VEL の符号に関して対称である。
【0008】内部ブロック符号化されたブロックの場
合、第1の係数は公称ステップ幅8で無効領域なしに直
線的に量子化された変換DC値である。その結果得た値は
8ビットで表わされる。公称黒ブロックは0001 0000 で
表わされ、また公称白ブロックは1110 1011 で表わされ
る。コード0000 0000 と1000 0000 は使用されない。10
24なる再構築レベルはコード1111 1111 として表わされ
る。最後の0でない1の後の係数は送信されない。
【0009】
【発明が解決しょうとする課題】上記のこのような装置
ではハードウエアとソフトウエアの両方の順/逆離散形
コサイン変換を備えることが知られている。この目的の
達成にハードウエアを準備すると、同時に一方の変換し
か実行できないため集積回路上の空間の無駄使いが多
い。このようにチップ上で使用されていない変換回路に
よって常に空間が占有されている。
【0010】これらの離散形コサイン変換を実行するの
には多くの乗算器と加算器を使用する。例えば8点高速
離散形コサイン変換を1クロックサイクルで実行するに
は12個の乗算器と29個の加算器を必要とすることが知ら
れている。同じ変換を数クロックサイクルで実行する場
合にはハードウエアは少なくてよいことも知られてい
る。これら異なる変換器は使用目的により使い分ける。
例えば、多くの高品質画像の用途には高速を必要とし、
変換ハードウエアに多大の空間が用意される。また他の
用途、例えば画像を使っての会議では高速は要求されな
い、このときはハードウエアの効率的使用が好ましい。
【0011】
【課題を解決するための手段】試験画像と複数の候補画
像を有するシステムで動き予測(motion estimation)を
実行する方法を提供する。候補画像が選択され、試験画
像と候補画像の差が決定される。本発明の装置では、画
像の動きはこの差により予測され、決定は動き予測プロ
セスでの期間によりなされる。候補画像の選択、差の決
定、動き予測は期間決定によって繰り返される。期間決
定は時間間隔の決定かあるいはマシンサイクル数の決定
でよい。本装置はこれらの操作が繰り返される試験画像
と候補画像との間の誤差を繰り返し減少させるのに適合
している。本発明の装置は誤差の減少が停止し、増加し
だすと最良の適合得られたと見なす。初めにタイムアウ
トが起こらない限り、 繰り返し操作により最適適合を決
定する。
【0012】
【実施例】図1に圧縮/復元・加速器120 を含む遠隔画
像処理装置100 を示す。アドレスバス116 とデータバス
118 を含む遠隔画像処理装置100 は、ホスト処理装置の
バスを使用することなくマルチメディア表示装置の部品
の相互接続を容易に実施可能とする。例えば撮像カメラ
127 の映像データはライン129 を経由して画像処理装置
100 において受信され、画像捕捉器128 により捕捉、デ
ィジタル化、サンプリング、計量される。画像捕捉器12
8 よりの信号は、装置の出力回路132 を経由して画像併
合ロジックに伝送される。これらの全ての動作は、ホス
ト処理装置のバス、あるいは工業標準(ISA) バス、例え
ば遠隔処理装置100 とホストコンピュータとをバス138
を経由して接続するバス140 を使用せずに遠隔画像処理
装置100 によって行なわれる。装置100 は撮像カメラ12
7 のような画像データ源とバス140 との間のインタフエ
ィスの役を果たすので、装置100 は遠隔画像インタフエ
ィス装置として見なしてもよい。
【0013】画像処理装置100 の内部においてディジタ
ル画像処理部112 はソフトウエア処理を担当し、一方加
速器120 はハードウエアの処理を担当する。核ゲート配
列(NGA) 121 は要求されるメモリとのインタフエイス機
能を果たす。例えばVRAMエミュレーション部124 は、捕
捉器128 に対するDRAMのごとき役割を核ゲート配列121
で行なわせる。従って画像処理装置100 は核ゲート配列
121 に支援されたメモリ配列に制約される。
【0014】遠隔画像処理装置100 の典型的形態として
は16M byteまでのアドレス空間をサポート可能である。
このアドレス空間の初めの15M byteまではDRAMのため留
保され、例えばDRAMインタフエイス122 を介して核ゲー
ト配列121 とインタフエイスをとっているDRAM114 用に
留保されている。画像処理装置100 のメモリ空間の上位
1M byteはアドレスバス116 とデータバス118 に接続さ
れた多くの装置間の通信用に留保されている。圧縮/復
元・加速器120 はメモリ空間の上位1M byteの通信領域
の初めの128K byte を占有する。
【0015】圧縮/復元・加速器120 は利用出来る128K
byte のアドレス空間の全てをデコードすることは要求
されない、その理由はその領域は内部レジスタ構成の要
求に対して十分余裕があるからである。加速器120 は遠
隔画像処理装置100 の内部におけるバス処理の開始点で
あり、あるいは目標点でもある。加速器120 は動作を開
始するとメモリより32ビットの語を取り込む。加速器12
0 が目標点となると、全てのスカラーアクセスあるいは
その領域内のアドレスに対し応答する。
【0016】遠隔画像処理装置100 のバス構造は、バス
利用の仲裁にはデイジーチェーン(daisy chain )優先
方式を使用できる。この方式では圧縮/復元・加速器12
0 は核ゲート配列121 を通じてバス116 、118 へのアク
セスを要求する。好ましき実施例においては加速器120
は最低位のプライオリティを持っているのでデイジーチ
ェーンでは最後に接続される。このように加速器120 よ
り始動したバーストは他の機器からのバーストによって
取り消される。他の機器によるこの種の取り消しは、核
ゲート配列121 により制御されている表示装置がデータ
の表示を要求した場合によく発生する。このような状況
のときは圧縮/復元・加速器120 は次のサイクルの開始
まではバス116 、118 の使用を放棄しなければならな
い。加速器120 は後でバス116 、118 アクセスを要求
し、通常の仲裁プロセスでアクセスを得た後、最後にア
クセスしたアドレスから中断したバーストを再開する。
【0017】次に図2に本発明の遠隔画像処理装置100
内の圧縮/復元・加速器120 を更に詳しくブロック図で
示す、ここでは資源を分割する構成でなく連続せるパイ
プライン構成となっている。圧縮/復元・加速器120 は
内部的に発生させたディジタル制御信号によって選択的
に符号化モードか復号化モードで動作可能である。これ
らの二つのモードは、画像処理装置100 内のデータバス
118 経由して送られてくるデータに対して行なわれる多
くの符号化動作及び復号化動作を実行し加速するのに有
効に働く。このことは画像の実時間処理に必要とする画
像データ処理スピードを得るのに役立つ。
【0018】遠隔画像処理装置100 のデータバス118 を
経由して送られてきたデータは圧縮/復元・加速器120
の加速器バスインタフエイス200 に受信される。加速器
120内の全てのRAM の読み出し及び書き込みは加速器バ
スインタフエイス200 を経由して行なわれる。加速器12
0 が符号化モードで動作しているとき、加速器バスイン
タフエイス200 より受信された前の画像ブロックまたは
基準フレームは、ループフイルタメモリ206 あるいは前
ブロックメモリ206 に蓄えられる。このデータはフレー
ム差ブロック220 に加える前に選択性ループフイルタ21
0 をイネーブルにすることによりフイルタリングを行な
う選択性ループフイルタ210 に加える。実施例では選択
性ループフイルタ210 は、分離せる読み出し書き込みポ
ート、3段アダー、フィードバックを備えた小さいRAM
により構成される。
【0019】加速器120 の通常動作時、データは絶えず
ループ・フイルタメモリ206 に供給され、また絶えずフ
イルタメモリ206 より読み出される。このように加速器
バスインタフエイス200 からフレーム差ブロック220 に
向けてデータの一定の流れがある。選択性ループフイル
タ210 はループフイルタ制御ライン214 により制御選択
される。ループフイルタ制御ライン214 を通じて制御信
号を加えることによりイネーブル状態とする加速器120
の選択性ループフイルタ210 は、8×8画素ブロックの
内部で適用される2次元1-2-1 フイルタでよい。圧縮/
復元・加速器120 の好ましき実施例においてループフイ
ルタ210 のフイルタ係数は表1に示される。
【0020】
【表1】 1 2 1 2 4 2 1 2 1
【0021】選択性ループフイルタ210 はループフイル
タメモリ206 に蓄積された画像の多様な領域に適用され
る。これらの領域は表2に示す。ループフイルタ210 内
でフイルタされた画像の8×8画素ブロックの外側の縦
列、横列は角の部分を除いて一方向のみフイルタされた
ものである。この一方向のみのフイルタリングを受けた
画素の位置は表2では数値1で示される。画素ブロック
の角の画素は選択性ループフイルタ210 の影響を受けな
い。これは表2では数値0で示す。ブロック内部の残り
の画素は両方向にフイルタリングされる。二方向にフイ
ルタリングされた画素は表2では数値2で示す。
【0022】
【表2】 0 1 1 1 1 1 1 0 1 2 2 2 2 2 2 1 1 2 2 2 2 2 2 1 1 2 2 2 2 2 2 1 1 2 2 2 2 2 2 1 1 2 2 2 2 2 2 1 1 2 2 2 2 2 2 1 0 1 1 1 1 1 1 0
【0023】ループフイルタメモリ206 の基準フレーム
データは、選択性ループフイルタ210 でフイルタリング
されるか、あるいはされないかに関わらず基準フレーム
ライン209 を通ってフレーム差ブロック220 に加えられ
る。圧縮/復元・加速器120が動き予測符号化を実行す
るとき、フレーム差ブロック220 においてフレーム減算
が行なわれる。フレーム差ブロック220 の減算は基準フ
レームライン209 の情報を現フレームライン205 上の現
フレーム情報より差し引くこにより行なわれる。基準フ
レームライン209 のデータと現フレームライン205 のデ
ータの差はフレーム差ブロック220 の出力端に符号化用
として現われる。現フレームラインの情報はバスインタ
フエイス200 より現フレームメモリ204 とライン202 を
経由して受け取られる。フレーム差ブロック220 での上
記フレーム減算は、その結果得られる画像値を負の255
と正の255 との間にある符号を持った数値に収斂させ
る。
【0024】フレーム差ブロック220 の出力は変換マル
チプレクサ224 でライン205 からの直接の情報とともに
多重化される。変換マルチプレクサ224 はマルチプレク
サ制御ライン225 により制御される。制御ライン225 の
状態は、処理されている画像ブロックがブロック内の符
号化かまたは動き予測符号化かによって定まることが判
る。変換マルチプレクサ224 の出力は、圧縮/復元・加
速器120 内の選択性離散形コサイン変換ブロック230 で
実行される順方向(フォワード)離散形コサイン変換操
作により符号化される。選択性離散形コサイン変換ブロ
ック230 、換言すれば可変離散形コサイン変換ブロック
230 は順方向あるいは逆方向の何れかのコサイン変換を
実行する。実行されるコサイン変換は符号化/復号化制
御ライン226 及び順/逆変換制御ライン228 から選択性
変換ブロック230 に加わる制御信号によって定まる。
【0025】選択性離散形コサイン変換ブロック230 か
らの変換されたデータは次いでジグザグ量子化ブロック
238 に加えられ、通常のジグザグ順序による量子化が実
行される。ジグザグ順序による量子化は、先ずデータを
ジグザグ順序に配列し次いで量子化ブロック238 に配列
されたデータを読み込むのに比べてデータの中間蓄積を
不要にすることが理解されよう。ブロック238 でのこの
ジグザグ量子化は、量子化されたデータのマトリックス
よりデータを索引順序に従い読み出すことで実行され
る。これにより加速器120 において真のパイプライン制
御が可能となる。
【0026】本発明の圧縮/復元・加速器120 の量子化
ブロック238 における量子化基本式は下記のごとくにな
る、
【0027】
【数2】 value = d/(2 x Q) 式(1)
【0028】ここでvalue は量子化ブロック238 からの
量子化出力ライン216 に現われる量子化された値であ
り、d は選択性変換ブロック230 より量子化ブロック23
8 に印加される入力であり、Q は量子化の乗数である。
加速器120 は、表を参照し次の式で与えられる8ビット
値R を用意することにより式(1) の割算動作も可能であ
る。
【0029】
【数3】R = 256/(2 x Q)
【0030】この場合圧縮/復元・加速器120 は次の動
作を実行する、
【0031】
【数4】value = (d x R) >> 8
【0032】もし係数がDC項でありまたブロックが内部
ブロックの符号化であれば、
【0033】
【数5】value = 255 (d = 1024のとき) 上記以外は value = d >>3.
【0034】ジグザグ量子化ブロック238 からの量子化
出力データは、量子化出力ライン216 を経て通常のラン
レングス符号化を実行するため圧縮/復元・加速器120
に備えられたランレングス符号化ブロック246 に加えら
れる、ここで通常のランレングス/データ値の対データ
が得られる。ランレングス符号化ブロック246 のランレ
ングス/データ値(run/value )出力は符号化出力ライ
ン242 を経てrun/value 蓄積バッファ248 に加えられ
る。run/value 蓄積バッファ248 から加速器120の外部
にある装置にrun/value 対データを伝送するときは加速
器バスインタフエイス200 を経由して行なわれる。
【0035】圧縮/復元・加速器120 で符号化処理中は
量子化ブロック238 からの量子化データは量子化出力ラ
イン216 を経由して逆量子化マルチプレクサ218 にも加
えられ、そこから更にジグザグ逆量子化ブロック222 に
加えられる。このように量子化ブロック238 と逆量子化
ブロック222 は加速器120 内で量子化ライン216 で直接
接続されている。この直接結合は量子化の後直ちに逆量
子化が可能となりランレングス符号化とランレングス復
号化の遅延を除去することが出来る。即ち、加速器120
に入力した画素は同時に符号化と復号化が可能である。
【0036】量子化ブロック238 でジグザグ符号化され
たライン216 のデータは、ジグザグ符号化以前の順序を
再び確立する機能をもつジグザグ逆量子化ブロック222
に加えられる。これにより通常再配列されたデータを保
持するため必要な中間蓄積部を不要とする。このように
して選択性離散形コサイン変換ブロック230 で符号化さ
れ、量子化ブロック238 でジグザグ符号化と量子化され
たデータは、加速器120 の符号化処理の最中に直ちに量
子化出力ライン216 を経て逆量子化ブロック222 によっ
て逆量子化される。これは中間にジグザグ及びランレン
グスの符号化あるいは復号化なしに実行可能で、またこ
れに関連してメモリへの蓄積も必要としない。
【0037】逆量子化ブロック222 の逆量子化動作には
下記の式(2) を用いることが出来る、
【0038】
【数6】 d = Q x (2 x value + sign (value)) 式(2) d = d - sign (d) (d が偶数のとき)
【0039】この式においてvalue は量子化ブロック23
8 からマルチプレクサ入力ライン216 を経て、またはマ
ルチプレクサ入力ライン211 を経て逆量子化ブロック22
2 に加えられる量子化入力データであり、Q は以前説明
せる量子化の乗数であり、またd は逆量子化ブロック22
2 の出力ライン223 に現われる逆量子化された結果を示
す。
【0040】変換係数がDC項に該当し、また逆量子化ブ
ロック222 内で逆量子化されたブロックがブロック内コ
ーディングであるときは逆量子化の式は(3) に示す。ブ
ロック内コーディングの決定は処理ブロック112 で行な
われ、INTRA 制御ライン225を経由して逆量子化ブロッ
ク222 に伝達される。
【0041】
【数7】d = 1024 (value が235 のとき) それ以外では d = 8 x value 式(3)
【0042】逆量子化ブロック222 で逆量子化されたデ
ータは選択性離散形コサイン変換ブロック230 に逆量子
化出力ライン223 を経由して加えられる。前に述べたご
とく選択性変換ブロック230 は受信信号に対し、変換制
御ライン228 に応じて順方向あるいは逆方向の離散形コ
サイン変換を選択的に実行可能である。選択性変換ブロ
ック230 によって反ジグザグ逆量子化ブロック222 より
受信せるデータに対して逆離散形変換が実行される。
【0043】この操作によって得られた逆変換された信
号はフレーム加算ブロック235 に加えられる、フレーム
加算ブロック235 は同時に基準フレームライン209 の基
準フレームデータを受信している。フレーム加算ブロッ
ク235 はフレーム差ブロック220 により符号化プロセス
時に減算されたライン209 上の値を基準フレームデータ
に加算する。フレーム加算ブロック235 でのフレーム加
算は0と正の235 との間の値で、その出力は飽和する。
フレーム加算ブロック235 の出力は復号ブロック蓄積バ
ッファ240 に蓄積される。このように加速器120 におい
て符号化され、復号化されるデータは復号ブロック蓄積
バッファ240 より加速器バスインタフエイス200 を経て
送信される。このように加速器120 は符号化モードで動
作中でもバッファ248 に符号化された信号と、バッファ
240 には符号化せる信号の復号信号を同時に用意するこ
とが出来る。これにより本装置100 では符号化されたデ
ータを遠隔装置受信して復号化したときの誤差を測るこ
とが可能である。
【0044】フレーム差ブロック220 とフレーム加算ブ
ロック235 は加速器120 においては同一の回路の変形し
たものであることは理解されるであろう。加算/減算ブ
ロック235 、220 は制御ライン226 、228 の制御のもと
で選択的に用意される、その理由はこれらブロックは同
時に活性化することはなく、また加算か減算の回路素子
としてそれぞれ変形する時間を与えるだけの機能をもっ
ている。
【0045】符号化/復号化モード制御ライン228 が圧
縮/復元・加速器120 に復号化モードで動作させると、
復号化すべきデータは遠隔画像処理装置100 のデータバ
ス118 から加速器バスインタフエイス200 に受け取られ
る。バスインタフエイス200で復号化すべきこのデータ
はその前に離散的コサイン変換され、ジグザグ符号化さ
れ、ランレングス符号化されたものである。従ってデー
タは加速器120 内のランレングス復号ブロック208 に加
えられる。復号ブロック208 のランレングス復号化せる
出力データは復号器出力ライン211 と逆量子化マルチプ
レクサ218 を経て逆量子化ブロック222 に加えられ、こ
こで前に述べたごとくジグザグ符号化された影響を取り
消すよう再配列される。逆量子化マルチプレクサ218 の
制御は順/逆・変換制御ライン228 のみで行なう、その
理由は逆量子化ブロック222 は順方向変換時には量子化
ブロックの出力ライン216 のデータのみを受け取り、逆
方向の変換時には復号器208 の出力のみを受け取るから
である。
【0046】加速器120 のジグザグ動作及び反ジグザグ
動作を実行するにはブロック222 、238 は変換係数の横
列方向の順序をそれぞれ空間周波数の増加する順序に入
れ換える。係数をこの異なった順序に再配列することは
ランレングス符号化にとって有効なる前処理になる、そ
れは類似の空間周波数の係数を共に分類するのに役立
つ。データを加速器120 の量子化ブロック238 に加える
のに使用される係数の走査順序は表3に示す。表ではジ
グザグのパターンは上部左より下部右に進行する。ラン
レングス符号化ブロック246 の符号化プロセスは一群の
対値(run/value対)を一連の数値とする単純な圧縮で
ある。ランレングスは数値を含めないで数え上げること
により計算される。
【0047】
【表3】
【0048】ランレングス復号ブロック208 よりランレ
ングスの復号されたデータはマルチプレクサ入力ライン
211 と逆量子化マルチプレクサ218 を経由して逆量子化
ブロック222 に加えられ、ここで逆量子化される。前に
述べたごとく逆量子化マルチプレクサ218 は順/逆変換
制御ライン228 の制御のもとにある。逆量子化ブロック
222 により逆量子化されたデータは選択性離散形コサイ
ン変換ブロック230 に加えられる。逆量子化/量子化・
ブロック222 、238 は符号化/復号化制御ライン226 の
制御のもとにブロック222 では逆量子化の動作をするよ
うに形成されている。
【0049】逆量子化マルチプレクサ218 の制御は、選
択性変換ブロック230 に適用するにあたって圧縮/復元
・加速器120 が復号化モードで動作している時はマルチ
プレクサ入力ライン211 を選択し、加速器120 が符号化
モードで動作している時は量子化出力ライン216 を選択
するように制御されている。このように逆量子化マルチ
プレクサ218 は復号化モードの時はバスインタフエイス
200 からの外部で符号化されたデータを選択する、それ
以外の時は内部的に符号化されたデータを選択する。マ
ルチプレクサ218 のこのような選択は順/逆・制御ライ
ン228 により制御される。
【0050】圧縮/復元・加速器120 はパイプラインア
ーキテクチャであり、これは二つの平行なう通路、即ち
一つは符号化用、一つは復号化用の通路に分割出来る。
符号化用通路では以前の画像と現時点の画像をそれぞれ
バッファ204 、206 に受信する。二つの画像の差はフレ
ーム差ブロック220 を通って選択性離散形コサイン変換
ブロック230 に加えられる。符号化動作のこの部分の期
間は離散形コサイン変換ブロック230 は順方向変換モー
ドで動作している。加速器120 のこの符号化通路の他の
部分にはブロック238 、246 を含む。これらは変換デバ
イス230 より変換されたデータを受け取り、更に符号化
動作を行い、符号化されたデータをバッファ248 に蓄積
する。
【0051】圧縮/復元・加速器120 が復号化モードで
動作している時、パイプラインアーキテクチャの平行な
他の通路が使用される。この平行なる他の通路はランレ
ングス復号化と逆量子化のためのブロック208 、222 を
含む。逆量子化されたデータは復号化通路がアクティブ
である場合、逆変換モードで動作する離散的コサインブ
ロック230 に加えられる。逆変換データはフレーム加算
されバッファ240 に蓄えられる。
【0052】最後に、前に述べたごとく符号化モードに
おいてはデータを一つの通路から他の通路に加えること
が出来ることが理解されるであろう。この動作は圧縮・
復元された画像を得るため符号化用の平行通路にある量
子化出力ライン216 上の量子化されたデータを逆量子化
ブロック222 に加える時に起こる。このように加速器12
0 ではブロック238 はブロック222 と殆ど直接結合して
いる。例えば、ブロック222 、238 は加速器120 内の物
理的に同一のメモリブロック上で動作する、ただブロッ
ク222 はブロック238 に対して僅か数画素分遅延して動
作している。
【0053】次いで図3、図4について説明する、ここ
では本発明の圧縮/復元・加速器120 と物理的なバッフ
ァメモリ350 、352 、354 におけるデータの符号化を行
なう場合のデータの流れを示している。符号化データフ
ロー300 において、装置100で伝送するデータ量を出来
るだけ少なくするため、現在画像ブロック302 のデータ
は符号化法を決定する動き予測ブロック112aに加えられ
る。このためには場合によっては一つのフレームから次
のフレームまでの変位を予測し、この変位のみを伝送す
るのが効率的であるのが理解されるであろう。これを動
き予測符号化とする。しかし、フレーム間に大きな変位
がある時、変位を送るのは効率的ではない、ブロックは
それ自身について符号化される。これをブロック内符号
化と呼ぶ。この決定は、換言すればループフイルタ210
を適用するかどうかはソフトウェア符号化決定ブロック
112aでなされる。
【0054】このように動き予測ブロック112a内で現在
画像ブロック302 はブロック内符号化を行なうべきか、
動き予測符号化を行なうべきかの決定が行なわれる。次
いで処理はライン312 を経て圧縮/復元・加速器120 に
進む。動き予測法が実行される場合、符号化されるブロ
ックのポインタをメモリ114 内にある符号化入力循環形
バッファ322 に蓄える。このように符号化データフロー
300 では画像データでなくポインタが符号化循環形バッ
ファ322 に駐在し、データフロー300 はゆるやかに結合
したシステムを表わす。符号化入力循環形バッファ322
内で現在画像ブロック326 のポインタが蓄えられ、現在
画像ブロック326 は圧縮/復元・加速器120 で動き予測
符号化を適用される。
【0055】加速器120 内のフレーム差ブロック220 は
前のブロックと現在画像ブロック326 のデータを受け取
る。前に説明せるごとく差はフレーム差ブロック220 で
決定する。符号化データフロー300 内のフレーム差ブロ
ック220 からのデータは順方向離散形コサイン変換ブロ
ック230aを用いて順方向離散形コサイン変換が実行され
る。順方向離散形コサイン変換ブロック230aの機能は、
選択性変換ブロック230 が変換制御ライン228 により順
方向動作と決定したとき選択性離散形コサイン変換ブロ
ック230 によって実行される。
【0056】順方向離散形コサイン変換ブロック230aか
らのデータは、前に説明せるごとく通常のジグザグ順序
で量子化するブロック238 に受信され、そこで量子化さ
れる。ブロック238 からの量子化されたデータは量子化
出力ライン216'を通ってランレングス符号化ブロック24
6 に加えられランレングス符号化される。符号化ブロッ
ク246 でのランレングス符号化はこの分野の専門家には
よく知られている通常のランレングス/データ値(run/
value )の対を与える。ランレングス符号化ブロック24
6 からのrun/value 対はライン330 を通って符号化出力
循環形バッファ332 に加わる。
【0057】符号化出力循環形バッファ332 のデータは
可変長符号器112b加えられ圧縮ビット流338 を発生す
る。バッファ332 はメモリ114 内に設けてもよいし、ま
た画像プロセッサ112 は可変長符号器112bの動作をする
ためにメモリ114 のrun/value対を読み込んでもよいこ
とは理解されるであろう。このように動き予測ブロック
112aの動き予測の決定と、可変長符号器112bの可変長符
号化は共に装置100 の画像プロセッサ112 で実行しても
よい。この目的に適合した画像プロセッサとしてはInte
l Corporation 製の82750PB がある。
【0058】動き予測ブロック112aと可変長符号器112b
の動作はこの画像プロセッサを用いて実行さることが理
解されるであろう。符号化データフロー300 の機能は下
記のように区分される、(1) 動き予測とHuffman 符号化
を含むソフトウェアは画像プロセッサ112 によって実行
する、(2) 残りの機能、特に計算上非常に厳しい機能は
加速器120 内にハードワイヤの回路として組み込む。プ
ロセッサ112 と加速器120 これらの区分された機能は遠
隔画像処理装置100 内では同期がとられている。
【0059】量子化ブロック238 からの量子化されたデ
ータは量子化出力ライン216 を経て逆量子化ブロック22
2 に加えられる。圧縮/復元・加速器120 内でこのよう
な方法で送付されたデータはランレングス符号化ブロッ
ク246 でのランレングス符号化とランレングス復号器20
8 でのランレングス復号化の両方をバイパスしたことに
なる。このように圧縮復元された画像を得るため符号化
されたデータを復号するプロセスは、ランレングス符号
化とランレングス復号化を行なうときに含まれる付加的
なメモリの読み込み及びメモリ書き込みなしに実行出来
る。ごれらの節約は実時間計算において大いに役立つ。
ランレングスブロック208 、246 の動作は無駄な操作で
なく、またこれらの動き予測ブロック112aの動き予測復
号決定に対する寄与は無視してよいことはこの分野の専
門家であれば理解できるであろう。
【0060】逆方向(インバース)離散形コサイン変換
ブロック230bは逆量子化ブロック222 より逆量子化され
たデータに逆変換を行なう。符号化データフロー300 で
は逆離散形コサイン変換ブロック230bの動作は、変換ブ
ロック230 が変換制御ライン228 の制御のもとに逆モー
ドで動作している時、選択性離散形コサイン変換ブロッ
ク230 で行なわれる。圧縮/復元・加速器120 が符号化
モードの間は、符号化データフロー300 で示すごとく選
択性変換ブロック230 は順方向/逆方向変換制御ライン
228 の制御のもとに順方向、逆方向の両方の離散的コサ
イン変換機能を行なう。
【0061】逆方向(インバース)離散形コサイン変換
ブロック230bからの復号信号はフレーム加算ブロック23
5 に加えられる、更にそこからライン328 を経由して現
在画像/圧縮復元画像ブロック302 に加えられる。加速
器120 の符号化データフロー300 において符号化及び復
号化の結果得られたライン328 の信号は、ブロック112a
での動き予測符号化を決定するため必要な前画像ブロッ
ク314 にある前画像と比較されるための画像を表わす。
符号化データフロー300 の便利で好都合な特徴としては
現在画像326 がライン328 よりの復号された画像で上書
きされることである、この際これらの画像を蓄積する別
々のバッファを必要としない。このように圧縮復元され
た画像の部分と現在の画像が、二つのブロック302 、32
6 の機能を同時に実行する同一のメモリブロック内に存
在する。
【0062】ブロック302 、326 の動作は物理的なバッ
ファメモリ350 、352 、354 を参照することにより更に
よく了解される。遠隔画像処理装置100 の動作している
間は、カメラ127 よりのディジタル化された画像データ
は最初物理的バッファメモリ352 に蓄積され、一方前の
画像は物理的バッファメモリ352 に蓄積される。物理的
バッファメモリ354 は現画像の一部356 と現画像が圧縮
復元画像で上書されつつある部分358とを蓄積してい
る。
【0063】全てのディジタル化された画像がバッファ
メモリ350 に蓄積され、また全ての圧縮復元された画像
が物理的メモリ354 に蓄積された時、物理的メモリ350
にあるディジタルデータは圧縮復元データ362 で上書き
される現画像360 として使用される。物理的メモリ354
の圧縮復元データはブロック112aでの動き予測のため前
画像として利用される。新しいディジタルデータは物理
的メモリ352 に蓄積される。このプロセスは物理的メモ
リ354 でも継続して行なわれ、次の新しいディジタルデ
ータを集める。このような方法で物理的メモリ4ブロッ
ク、というよりもむしろ3ブロックがこれらの符号化デ
ータフロー300 でのこれらの動作に使用されている。
【0064】次ぎに図5に符号化データフロー300 で必
要とする符号化入力循環形バッファ322 に蓄積されたデ
ータブロックを制御するための符号化入力バッファデー
タ構造400 を示す。符号化入力バッファデータ構造400
では制御語402 が用意されている。動き予測ブロック11
2aが画像をどのような方法で符号化するかを決める時、
制御語402 内の1ビットを用いて、そのブロックがブロ
ック内符号化されるか、あるいは動き補償形の符号化か
を示すようにする。各データブロックに関係した他のパ
ラメータもデータ構造400 の制御語402 内に蓄積され
る。制御語402 に蓄積される情報の他の一例として選択
性ループフイルタ210 がイネーブルされているか、され
ていないかという情報がある。更にブロック222 、238
での量子化/逆量子化に用いる5ビットのQ 値も符号化
入力バッファデータ構造400 の制御語402 に蓄積しても
よい。
【0065】符号化入力バッファデータ構造400 は更に
初期画像ブロック・アドレスポインタ404 を含んでい
る。初期画像ブロック・アドレスポインタ404 は現在画
像ブロック326 内のデータブロックの最初の位置を示し
ている。初期画像ブロック・アドレスポインタ404 は、
更に圧縮復元画像は現画像を上書きするので画像ブロッ
ク302 、326 が同一の物理的メモリにある場合には現在
/圧縮復元・画像ブロック302 を指示する。このように
符号化された画像は現画像と同一の初期画像である。ポ
インタ404 はブロック302 の画像はまだ符号化されてい
ないので可変長のデータでなく固定長のデータを指して
いることが理解されるであろう。前画像ブロック・アド
レスポインタ406 はブロック314 の前画像の位置を示
す。
【0066】図6は符号化データフロー300 内の符号化
出力循環形バッファ322 での符号化出力バッファデータ
構造500 を示す。圧縮/復元・加速器120 の好ましき実
施例においては2対の入力run/value (ランレングス/
データ値)データ、例えば対501 、503 は入力循環形バ
ッファ322 内の32ビットの2重語、例えば502 、504に
蓄積される。入力循環形バッファ322 の2重語506 は1
で満たされ、これはrun/value 対のリストの終わりを示
している。もしバッファデータ構造500 のリストでのru
n/value 対の数が奇数であると、1語はrun/value 対を
蓄積するのに使用され残りの1語は1で満たされてリス
トの終わりを示す。
【0067】図7は本発明の装置で圧縮/復元・加速器
120 を使用したときの復号化データフロー600 を示す。
圧縮されたビット流601 は復号化データフロー600 で受
信され圧縮の復元が行なわれる。圧縮ビット流601 は本
発明の符号化データフロー300 で用意された圧縮ビット
流338 と同様なビット流である。可変長復号は受信した
ビット流338 に対し可変長復号器112cによって行なわれ
る。復号化データフロー600 の可変長復号器112cと符号
化データフロー300 の可変長符号器112aは、画像処理装
置100 内の1個の2目的符号化・復号化装置、例えばプ
ロセッサブロック112 により行なわれる。可変長復号器
602 で復元されたデータは復号化データフロー600 の復
号化入力循環形バッファ606 に納められる。
【0068】フレーム差ブロック220 、順方向離散形コ
サイン変換230a、量子化ブロック246 とランレングス符
号器246 は、圧縮/復元・加速器120 が復号化モードで
動作しているときこれらは使用されない。復号化データ
フロー600 に示すごとく加速器120 は復号化モードで動
作しているとき復号化するデータを復号化入力循環形バ
ッファ606 より受け取る。加速器120 のランレングス復
号器208 は循環形バッファ606 からのデータを受け取
る。加速器120 ではランレングス復号器208 で復元され
たデータは逆量子化ブロック222 に加えられて逆量子化
される。このデータは逆量子化ブロック222 において、
符号化されたデータを加速器120 に送信する外部ジグザ
グ符号器によってジグザグ符号化されたデータを元の順
序に並び換えるられる。
【0069】ブロック222 で逆量子化されたデータは逆
方向離散形コサイン変換ブロック230bにおいて逆方向離
散形コサイン変換が実行される。復号化データフロー60
0 における逆方向離散形コサイン変換ブロック230bの動
作は、選択性変換ブロック230 が変換制御ライン228 に
より決まる逆モードである場合、選択性変換ブロック23
0 により実施される。
【0070】前画像ブロック604 のデータはライン203
により圧縮/復元・加速器120 に入力される。受信され
た前画像ブロック604 のデータは加速器120 内の前ブロ
ックメモリ206 に蓄積される。選択性ループフイルタ21
0 がフイルタ制御ライン214の制御もとにイネーブルさ
れると、前ブロックメモリ206 にある画像はフイルタさ
れてフレーム加算ブロック234 に加えられる。もし選択
性ループフイルタ210がイネーブルされていないと前ブ
ロックメモリ206 の画像は直接フレーム加算ブロック23
4 に加えられる。前画像ブロックメモリ206 より受け取
った前画像ブロック604 のデータと、逆量子化され変換
された現画像データはフレーム加算ブロック234 で加算
され、その出力は復号画像ブロック608 に蓄積される。
【0071】復号化データフロー600 の復号化入力循環
バッファ606 における復号化入力循環バッファデータ構
造700 を示す。復号化入力循環バッファ606 のデータ
は、バッファ606 に送信する前にハフマン(Huffman )
符号化が実行されているときは、可変長データであるこ
とは理解されるであろう。復号化入力データ構造700
は、量子化/逆量子化でのQ 値、更に選択性ループフイ
ルタ210 がイネーブルされているか、されていないかの
情報を蓄積するのに用いる制御語702 を含んでいる。更
に制御語702 は復号化データフロー600 によって復号化
された画像ブロックは内部符号化ブロックか、あるいは
動き補償形ブロックかに関する情報を含んでいる。デー
タ構造700 の現画像ブロックアドレス704 は現画像の開
始点を示し、前画像ブロック706 は前画像を指す。
【0072】更に、データ構造700 の好ましき実施例と
しては2対のrun/valure、例えば710 、712 が2重語、
例えば語708 、714 のそれぞれに蓄積される。循環バッ
ファ606 の2重語716 は1で満たされてrun/valure対の
リストの終わりを示す。run/valure対の数が奇数の場合
2重語716 の1語はrun/valure対を蓄積するのに使用さ
れ、残りの1語は1で満たされリストの終わりを指示す
る。
【0073】動き予測符号化決定ブロック112aは符号化
データフロー300 の動き予測プロセスを実行する。更に
ブロック112 は局部画像の可変長符号化と遠隔圧縮され
たビット流601 可変長復号化を実行する。このようにブ
ロック112aの機能は汎用の画像プロセッサ112 により実
行される。本発明の圧縮/復元・加速器120 は符号化デ
ータフロー300 と復号化データフロー600 の残りの全て
の機能を実行する。
【0074】遠隔画像処理装置100 の画像プロセッサ11
2 と加速器120 は互いに殆ど独立して動作すにる。しか
しながらこれらは動作を行なうとき、例えば多くの循環
形バッファへのアクセスするときメモリの共通領域を利
用する傾向がある。遠隔画像処理装置100 の作業負荷は
画像プロセッサ112 と圧縮/復元・加速器120 とに分割
されるが、この分割によって各種のデータフロー例えば
300 、600 の同期化に対して要求される負担を最少にし
ている。しかしながら画像処理装置100 内でのある程度
の競合の可能性は避けられない。このよう状況にあるの
で、画像処理装置100 内で画像処理プロセッサ112 と加
速器120 との競合に起因するバッファのオーバフローと
かアンダフローを回避するメモリの管理法があるべきで
ある。
【0075】遠隔画像処理装置100 において同期のため
の高価につく微細調整を少なくするため、ポインタ結合
方式が符号化データフロー300 と復号化データフロー60
0 におけるrun/value データの記録、読出に使用されて
いる。この方式を実行するため符号化同期と複合化同期
の二つが圧縮/復元・加速器120 を含む遠隔画像処理装
置100 において用意されている。
【0076】図8、図10に入力循環バッファ同期フロー
800 と出力循環バッファ同期フロー900 を、循環バッフ
ァ同期フロー800 、900 に使用される各種バッファポイ
ンタと共に示す。入力/出力循環バッファ同期フロー80
0 、900 に従って、遠隔画像インタフェイス装置100 の
画像プロセッサ112 は遠隔画像処理装置100 のバッファ
322 、332 へのアクセス同期を管理している。符号化デ
ータフロー300 での符号化処理の期間、圧縮/復元・加
速器120 は符号化入力循環形バッファ322 より圧縮され
ていない画像データのブロックリストを読み込む。前に
述べたごとく、加速器120 はまた圧縮されたデータをru
n/value 対の形式で符号化データフロー300 の符号化出
力循環形バッファ332 に書き込む。加速器120 の循環バ
ッファ322 、332 をもつ物理的メモリへのアクセスは競
合を避けるため同期化しなければならい。
【0077】従って競合を避けるため画像プロセッサ11
2 と圧縮/復元・加速器120 においてリセットあるいは
他の初期化が起こった時、入力バッファポインタの中の
1対のポインタを先ず相互に等しくなるようにセット
し、次いで出力バッファポインタの第2の1対のポイン
タを相互に等しくなるようにセットする。加速器120 が
入力循環形バッファ322 の読出しを始める次の位置を示
す加速器INRPTRポインタ804bは、現入力リスト812 の終
端位置804 の後の次の位置を示す加速器INEPTRポインタ
804cに等しくなるようセットする。
【0078】圧縮/復元・加速器120 は二つの出力バッ
ファポインタを互いに等しくなるようセットする。加速
器120 が出力循環形バッファ322 に書き込みを始める次
の位置を示す加速器OTWPTRポインタ830cは現出力リスト
の終端位置の後の位置を示す加速器OTEPTRポインタ830e
に等しくなるようセットする。
【0079】このように現入力リストの始めと終わりが
互いに等しくなる、また現出力リストの始めと終わりも
等しくなる。これは処理が動かなくなったことを意味す
る。従って、符号化データフロー300 での圧縮/復元・
加速器120 による処理は中断される。しかしながら、遠
隔画像処理装置100 のバス処理においては加速部120は
目標となっているので、加速部120 のバスインタフエイ
ス200 は動作を継続する。しかしこのような中断状態で
は加速部120 は新たに処理を開始する事はない。
【0080】上記のようにバッファポインタの対が互い
に等しくなるようにセットされた後で画像プロセッサ11
2 は符号化入力循環形バッファ322 と符号化出力循環形
バッファ332 の領域を定義する。これらのバッファは圧
縮/復元・加速器120 において数字をメモリに書き込む
ことでメモリ上に位置付けされる一連のポインタを設定
することにより定義される。これらのポインタは符号化
入力循環形バッファ322 の開始アドレス803 の後の位置
と、終了アドレスの後の位置をそれぞれ示す加速器INCS
TRポインタ804aと加速器INCENDポインタ804dが含まれ
る。更に加速器ポインタとしてOTCSTR 840a 、OTCEND 8
40d が画像プロセッサ112 によりセットされる。
【0081】画像プロセッサ112 は、加速器120 とブロ
ック112 は循環形バッファ322 が何処から始まり何処で
終わるか、また現リストは何処で終わるかについて合致
するように加速器ポインタ804a、c 、d とプロセッサの
ポインタ820a、c 、d とを等しくなるように設定しなけ
ればならないことが了解されるであろう。例えば画像プ
ロセッサ112 が1ブロックのデータかあるいは複数のブ
ロックのデータを書き込み、また自身の書込みポインタ
820eを次に増加させる方法で更新した後、加速器ポイン
タINCEND 804d を更新する。
【0082】プロセッサポインタINWPTR 820e はバッフ
ァ322 内の位置806 を示す。位置806 は画像プロセッサ
112 が書き込む位置であり、圧縮/復元・加速器120 内
にはこれに対応するポインタはない、その理由は加速器
120 はバッファ322 に書き込みを行なわないからであ
る。加速器のINRPTR 804b と画像プロセッサ112 内のプ
ロセッサINRPTR 820b は加速器120 が入力循環形バッフ
ァ322 を読み出す位置を示し、従って互いに異なったも
のである。
【0083】次いでプロセッサブロック112 は動き予測
と画素の各ブロックを符号化データフロー300 に従って
前に述べた決定法でブロック分類を開始する。次いで画
像プロセッサ112 は外部で蓄積されている画像データの
各ブロックに関するポインタをINWPTRポインタ820eによ
り指定されたアドレスより入力循環形バッファ322 に書
き込む。
【0084】遠隔のビット流601 を複号する場合は、圧
縮/復元・加速器120 は復号化入力循環形バッファ606
からの入力データを読み取り、再構築されたデータを複
合化画像ブロック608 のようなフレームメモリに書き込
む。リセットを含む初期条件では加速器120 は二つの入
力バッファポインタを互いに等しく設定する。加速器12
0 が入力循環形バッファ606 を読みだしている位置を示
す加速器のポインタINRPTR 804b は、現入力リストの終
りを示す加速器INEPTRポインタ804cに等しくなるよう設
定される。
【0085】画像プロセッサ112 は符号化入力循環形バ
ッファ606 と符号化出力循環形バッファ608 の領域の定
義を、数字をメモリに書き込む(スカラー・メモリ・ラ
イト)動作でメモリ上に位置付けされる一連のポインタ
を圧縮/復元・加速器120 上に設定することにより実施
する。画像プロセッサ112 が加速器120 に書き込むのは
この時だけである。これらのポインタには符号化入力循
環形バッファ322 の開始及び終了をそれぞれ示すINCSTR
ポインタ804aとINCENDポインタ804dを含んでいる。画像
プロセッサ112 は圧縮されたデータに可変長複合処理を
開始し、循環形バッファ領域にrun/value ブロックデー
タを書き込む。
【0086】バッファ領域に充分なるデータが書き込ま
れるとプロセッサ112 は圧縮/復元・加速器120 内、及
びプロセッサ112 内の両INEPTRポインタ804c、820cを更
新する。INEPTRポインタ804c、820cはバッファ領域のデ
ータの最後の位置に続く位置を示している。一般的に同
期フロー800 、900 のフローポインタは読み出し書き込
みの後増加させる、従って読み出し書き込みの次の位置
を示す。圧縮/復元・加速器120 は、加速器INRPTRポイ
ンタ804bにプログラムされた位置にあるデータの取り込
みを開始し、加速器INEPTRポインタ804cにプログラムさ
れた位置まで取り込みを続ける(但し加速器INEPTRポイ
ンタ804cにプログラムされた位置は含まない)。INRPTR
ポインタ804bとINEPTRポインタ804cが等しいとき、圧縮
/復元・加速器120 は処理を停止する。
【0087】INRPTRポインタ804bが加速器INCENDポイン
タ804dにプログラムされたアドレスに到達したとき、IN
RPTRポインタ804bはINCSTRポインタ804aに循環して戻っ
て来る。画像プロセッサ112 は両INEPTRポインタ804c、
820cを維持する責めを負っている。圧縮/復元・加速器
120 はINRPTRポインタ804bを維持する責めを負ってい
る。圧縮/復元・加速器120 の中において、画像プロセ
ッサ112 はINRPTRポインタ820bのコピーを加速器INRPTR
ポインタ804bを読み出すことにより更新する。
【0088】画像プロセッサ112 は、更にデータを書き
込み加速器INEPTRポインタ804cを更新することにより、
追加のブロックを入力循環形バッファ322 に書き込む。
画像プロセッサ112 がこのデータを書き込む時、加速器
INRPTRポインタ804cが同時に読まれる。これは画像プロ
セッサ112 が循環形バッファの領域を上書きするのを防
止するのに必要である。これは、読み出し書き込みポイ
ンタが同一である時、循環形バッファに対する装置の書
き込みを不可能とする条件を表わしている。出力循環形
バッファ332 に出力している間、加速器120 のポインタ
を更新するのは画像プロセッサ112 の責任である。加速
器120 はそれ自身の終端ポインタと書き込みポインタを
更新し、画像プロセッサ112 は更新されたデータを読ま
なければならない。
【0089】図11、図12に本発明の順方向離散形コサイ
ン変換計算フロー1000と逆方向離散形コサイン変換1100
をそれぞれ示す。離散形コサイン変換計算フロー1000、
1100はそれぞれデータフロー300、600 での変換ブロック
230a、b で実行される。更に離散形コサイン変換計算フ
ロー1000、1100 は順/逆変換制御ライン228 の制御のも
とに選択性変換ブロック230 でも実行出来る。
【0090】符号化データフロー300 の変換ブロック23
0aにより実行され、あるいは圧縮/復元・加速器120 の
選択的離散形コサイン変換ブロック230 により実行され
る順方向離散形コサイン変換計算フロー1000の動作は式
(4) に表わされる。
【0091】
【数8】 [Φ]=[C][X] 式(4)
【0092】式(4) においてマトリックス[X]は変換
ブロック230 、あるいは変換ブロック230aに適用される
入力データマトリックスであり、[C]は離散形コサイ
ン変換マトリックスであり、[Φ]は、変換ブロック23
0 による変換出力ライン236に適用される変換された出
力マトリックスである。
【0093】変換ブロック230 により実行されるか、あ
るいは変換制御ライン228 による制御のもとに選択性離
散的コサイン変換ブロック230 で実行れれる離散的コサ
イン変換逆方向離散形コサイン変換1100は、式(5) で表
わされる。
【0094】
【数9】[X]=[C]T [Φ]
【0095】式(5) において、マトリックス[Φ]は変
換入力ライン223 を経て受信した変換された入力マトリ
ックスであり、マトリックス[X]は変換出力ラインに
適用される出力マトリックスであり、マトリックス
[C]T は逆方向離散形コサイン変換マトリックスであ
る。
【0096】離散形コサイン変換マトリックス[C]の
各係数Cm は下記のように表わされる。
【0097】
【数10】
【0098】式(6) においてN は変換計算フロー1000、
1100において実施した離散形コサイン変換の次数を示
す。m とn は離散形コサイン変換マトリックス[C]の
それぞれ横列、縦列のインデックスであり、0, 1, 2,・・
・・, N なる値をとる。定数Km2は横列インデックスm が0
のとき1/が√2 値であり、m が0 でないときは1 なる
値をとる。
【0099】離散的コサイン変換の次数N が8のとき、
式(6) を解くことにより下記の離散形コサイン変換係数
Cm を得る。
【0100】
【数11】
【0101】このような条件で式(4) の離散形コサイン
変換マトリックス[C]は次のように表わされる。
【0102】
【数12】
【0103】入力データマトリックス[X]の各データ
に対して8回の乗算/加算を必要とすることが理解され
るであろう。従って、1次元離散形コサイン変換に対し
て64×8=512 回の乗算/加算を必要とする。2次元離散
形コサイン変換に対しては、1024回の乗算/加算を必要
とする。
【0104】式(4) 、(5) の順/逆方向離散形コサイン
変換実行するのにいくつかの公知の高速アルゴリズムが
ある。これらの公知の技術のどれかを使って8点離散形
コサイン変換を12回の乗算と29回の加算で実行可能であ
る。合計で192 回の乗算と464 回の加算が必要である
が、これでこれらの変換操作は簡易化される。このよう
なアルゴリズムは並列操作に極めて好都合である。
【0105】本発明の順方向離散形コサイン変換フロー
1000は式(4) で表わされる変換を更に高速、且つ高能率
に実施する高速順方向離散的コサイン変換である。順方
向離散形コサイン変換計算フロー1000において次数N は
8とする。この分野の専門家であれば容易に理解できる
ことであるが、順方向変換フロー1000における変換操作
は変換ブロック230aについて高速順方向変換を実施する
ことになる。選択性変換ブロック230 が符号化モードの
とき選択性離散形コサイン変換ブロック230 により実行
される。高速順変換は次のごとく表わされる。
【0106】
【数13】
【0107】サブマトリックス[CA ]、[CB ]の各
要素は、この分野の専門家には公知のsparse matrix fa
ctorization 技術を用いて離散形コサイン変換マトリッ
クスから得られる。式(8) の係数は下記に示す。
【0108】
【数14】 A = cos π/4 E = cos 3π/16 B = cos π/8 F = sin 3π/16 C = sin π/8 G = sin π/16 D = cos π/16
【0109】ベクトル[X' ]、[X" ]、あるいはサ
ブマトリックス[X' ]、[X" ]の要素は、マトリッ
クス[X]の高次データ点とマトリックス[X]の低次
データ点をそれぞれ加算、減算することにより形成され
る。
【0110】選択性離散形コサイン変換ブロック230 で
実行される変換計算フロー1000は、式(4) 、(8) で示さ
れる、入力データマトリックス[X]を受信し、順方向
離散形コサイン変換マトリックス[C]を入力データマ
トリックス[X]に適用して順方向変換マトリックス
[Φ]を求めるのに有効である。これらの計算を行なう
のに、入力語X の低次データ点X0-X3 は選択されてサブ
語を形成する。これらのデータ点はビット幅は特に制約
されない。このサブ語のデータ点は循環入力レジスタ10
06に格納される。同様に入力語の高次データ点X4-X7 は
選択されて他のサブ語を形成する。このサブ語のデータ
点は循環入力レジスタ1032に格納される。
【0111】データ点X0-X3 は継続して加算ノード1008
と減算ノード1036に加えられると共にレジスタ出力ライ
ン1004のループを経由して循環レジスタ1006の入力に加
えられる。同様にデータ点X4-X7 は継続して加算ノード
1008と減算ノード1036に加えられると共にレジスタ出力
ライン1030のループを経由して循環レジスタ1032の入力
に加えられる。
【0112】これらのデータ点のそれぞれの提示タイミ
ングは、この分野の専門家であれば理解されるごとく、
式(8) のサブマトリックス[X' ]の各要素、即ち加算
結果X0+X7 、X1+X6 、X2+X5 、X3+X4 が加算ノード1008
の出力に得られるよう制御さている。同様に式(8) のサ
ブマトリックス[X" ]の各要素、即ち減算結果X0-X7
、X1-X6 、X2-X5 、X3-X4 が減算ノード1036の出力に
得られるよう制御さている。レジスタ出力ライン1004、
1030とノード1008、1036は共同して入力データ点の一連
の対データに対しバタフライ加算器のごとく動作する。
通常の加算器では二つの入力が加わり、二つの出力、即
ち入力の和の出力と差の出力が得られる。フロー1000で
はこれらの入力は入力循環バッファ1006、1032を通って
サブマトリックス[X' ]、[X" ]の値を作る。ノー
ド1008、1036の出力は引続き変換計算フロー1000内の乗
算ノード1014、1040に加えられる。
【0113】サブマトリックス[CA ]の係数は、式
(8) によってノード1014で乗算を行なうため、加算ノー
ド1008より乗算ノード1014に送られたサブマトリックス
[X']に加えられる。サブマトリックス[CA ]の係
数は係数レジスタ1010を経て乗算ノード1014に加えられ
る。乗算ノード1014で得られたマトリックス部分積の項
は次いで変換計算フロー1000の加算ノード1016に加えら
れる。
【0114】同様に、サブマトリックス[CB ]の係数
は、式(8) によってノード1040で乗算を行なうため、減
算ノード1036より乗算ノード1040に送られたサブマトリ
ックス[X" ]に加えられる。サブマトリックス[CB
]の係数は係数レジスタ1042を経て乗算ノード1040に
加えられる。乗算ノード1040で得られたマトリックス部
分積の項は次いで変換計算フロー1000の加算ノード1044
に加えられる。
【0115】順方向離散形コサイン変換計算フロー1000
では、加算ノード1016、1044で得られた和はそれぞれレ
ジスタブロック1018、1046に加えられる。レジスタブロ
ック1018、1046の出力はそれぞれレジスタ出力ライン10
20、1047を通って加算ノード1016、1044に加えられる、
その際遅延項をそのときノード1016、1044で受信した項
と加算する。これによって変換計算フロー1000は式(8)
のマトリックス計算操作で要求されている部分積項の加
算が可能となる。
【0116】選択性離散形コサイン変換ブロック230 を
用いて実行される順方向変換計算フロー1000において、
レジスタブロック1018、1046の出力はそれぞれレジスタ
ブロック1024、1050に加えられる。レジスタ出力ライン
1026に現われるレジスタブロック1024の出力は、式(8)
の偶数ナンバーの変換されたデータ点φ6 、φ4 、φ2
、φ0 であることは理解されるであろう。更にレジス
タ出力ライン1052に現れるレジスタブロック1050の出力
は、式(8) の奇数ナンバーの変換されたデータ点φ7 、
φ5 、φ32、φ1 であることは理解されるであろう。レ
ジスタ出力ライン1026、1052はフロー出力マルチプレク
サ1054に加えられて、合成され、順序を再配列し順フロ
ー出力ライン236 に出力される。計算フロー1000のシス
テムと方法を用いた順方向離散形コサイン変換では、変
換された出力信号を従来の公知の技術よりも数クロック
サイクル分速く出力する。
【0117】計算フロー1000のこの変換方法では単独の
乗算器1014、1040を循環バッファ1006、1032の出力に適
用してもよい、これはデータがループライン1004、1030
を経て一端から他の一端に循環しているからである。デ
ータは、バッファ1006、1032からの出力データ点のそれ
ぞれ1対に対して一度だけ循環バッファ1006、1030を経
由して循環しなければならないことは理解されるであろ
う。
【0118】同様に本発明の逆方向離散形コサイン変換
計算フロー1100では変換次数N が8の高速逆離散形コサ
イン変換を実行する。この分野の専門家には理解される
であろうが、逆変換計算フロー1100で実行される変換
は、選択性離散形コサイン変換ブロック230 が復号モー
ドであるとき実行される変換形式である。逆方向離散形
コサイン変換マトリックス[C]T は数式では下記のご
とく表わされる。
【0119】
【数15】
【0120】ここでサブマトリックス[CA ]T 、[C
B ]T はsparse matrix factorization 技術により離散
形コサイン変換マトリックスより得られる。
【0121】選択性離散形コサイン変換ブロック230 の
計算フロー1100は、逆方向変換マトリックス[Φ]を受
信し、逆方向離散形コサイン変換マトリックス[C]T
を適用して出力データマトリックス[X]を得るのに有
効である。計算フロー1100は式(4) 、(9) 示されている
変換をもっと高速に実施するに適した変形である。これ
らの操作を行なうには変換されたマトリックス[Φ]の
偶数ナンバーの変換データ点φ0 、φ2 、φ4 、φ6 は
循環入力レジスタ1106に置かれ、奇数ナンバーの変換さ
れたデータ点φ1 、φ3 、φ5 、φ7 は循環入力レジス
タ1132に格納する。
【0122】循環入力レジスタ1106に置かれた偶数の変
換されたデータ点φ0 、φ2 、φ4、φ6 は順番に乗算
ノード1114に加えられ、これらは同時に循環入力レジス
タ1106の入力にレジスタ出力ライン1104を経て加えられ
る。循環入力レジスタ1132に置かれた奇数の変換された
データ点φ1 、φ3 、φ5 、φ7 は順番に乗算ノード11
40に加えられ、これらは同時に循環入力レジスタ1130入
力にレジスタ出力ライン1130を経て加えられる。
【0123】循環入力レジスタ1106から乗算ノード1114
に加えられた値は式(8) により乗算ノード1114内でサブ
マトリックス[CA ]T の係数と乗算される。サブマト
リックス[CA ]T の係数は係数レジスタ1110により乗
算ノード1114に加えられる。乗算ノード1114により作ら
れた積は次いで加算ノード1116に加えられる。
【0124】同様に循環入力レジスタ1132から乗算ノー
ド1140に加えられた値は式(8) により乗算ノード1140内
でサブマトリックス[CB ]T の係数と乗算される。サ
ブマトリックス[CB ]T の係数は係数レジスタ1142に
より乗算ノード1140に加えられる。乗算ノード1140によ
り作られた積は次いで加算ノード1144に加えられる。
【0125】逆方向離散形コサイン変換計算フロー1100
では加算ノード1116、1144で形成された和はそれぞれレ
ジスタブロック1118、1146加えられる。レジスタブロッ
ク1118、1146の出力はレジスタ出力ライン1120、1147を
経て加算ノード1116、1144に返して加算する。この方法
で式(9) の多様なる部分積項が変換計算フロー1100内で
用意される。
【0126】レジスタブロック1118、1146の出力は更に
加算ノード1122と減算ノード1148の両者にレジスタ出力
ライン1120、1147を経て加えられる。このようにして式
(9)のマトリックス計算で要求される部分積項の結合が
実行される。選択性離散形コサイン変換ブロック230 に
より実行される逆変換計算フロー1100においては、加算
ノード1122と減算ノード1148の出力はそれぞれレジスタ
ブロック1124、1150に加えられる。
【0127】レジスタ出力ライン1126に現われるレジス
タブロック1124の出力は式(9) の低次ビットX0、X1、X
2、X3を含むことが理解されるであろう。更にレジスタ
出力ライン1152に現われるレジスタブロック1150の出力
は式(9) の高次ビットX4、X5、X6、X7を含むことが理解
されるであろう。ライン1126、1152の値は出力マルチプ
レクサ1154に加えられ、多重化され再整理され出力ライ
ン234 を通ってフレーム加算ブロック235 に加えられ
る。
【0128】図13に圧縮/復元・加速器120 の選択性離
散形コサイン変換ブロック230 のブロック図を示す。選
択性離散形コサイン変換ブロック230 は、順方向離散形
コサイン変換計算フロー1000と逆方向離散形コサイン変
換計算フロー1100の両方を変換制御ライン228 からの制
御信号のもとずき効率的に実行する。
【0129】圧縮/復元・加速器120 が符号化データフ
ロー300 の動作を実行するとき選択性変換ブロック230
は順方向変換ブロック230aと逆方向変換ブロック230bの
動作を行なう。どちらの変換動作をするかはマルチプレ
クサ224 のデータが符号化されつつあるか、あるいは逆
量子化器222 のデータが復号化されつつあるかによる。
マルチプレクサ224 のデータに対する処理が順方向離散
形コサイン変換計算フロー1000として表わされる。逆ブ
ロック230aに関連した符号化データフロー300の動作を
遂行しているとき圧縮/復元・加速器120 は符号化デー
タ流と、その符号化データ流を復号した画像表示の両者
を用意する。加速器120 が復号化データフロー600 の動
作をしているとき選択性離散形コサイン変換ブロック23
0 は逆計算フロー1100に示されている逆変換ブロック23
0bの動作を行なっている。これらの選択性順/逆変換動
作は既に述べたごとく変換制御ライン228 を通して選択
性変換ブロック230 に与える信号によって決定する。
【0130】選択性離散形コサイン変換ブロック230 の
中においてはブロックメモリ1242よりのデータはデータ
バス1238を通って入力データバッファ/シフタ1212に加
えられる。入力データバッファ/シフタ1212は、順方向
変換で入力循環レジスタ1006、1032に関して述べたごと
くあるいは逆方向変換で入力循環バッファ1106、1132に
関して述べたごとく、入力データを再配列し順序を整え
る役を行なう。この入力データの再配列と順序整理は、
選択性離散形コサイン変換ブロック230 によって順方向
変換が実行されるか逆方向変換が実行されるかによっ
て、式(8) の入力マトリックス[X' ]、[X" ]かあ
るいは式(9) の入力マトリックス[Φ' ]、[Φ" ]が
求められる。
【0131】入力データバッファ/シフタ1212で正しい
順序となったデータはライン1214を通ってマルチプレク
サ1208、1234に加わる。マルチプレクサ1208、1234は変
換制御ライン228 に制御されていて、前に述べたごとく
選択性変換ブロック230 の符号化か復号化のモードが選
択されている。変換制御ライン228 の信号は制御ロジッ
ク1240により定まる。この分野の専門家には理解される
ことであるが、制御ロジック1240は、プロセッサブロッ
ク112 の決定に従って、圧縮/復元・加速器120 の動作
モードを表わすロジックレベルを出力する。
【0132】選択性変換ブロック230 が逆モードにある
とき、変換制御ライン228 はアレイ入力マルチプレクサ
1208にマルチプレクサライン1214のデータを選択し、ラ
イン1214のデータをマルチプライヤ/蓄積器アレイ1210
に加えるよう制御する。バッファ/シフタ1212よりの入
力データは、選択性変換ブロック230 が復号化モードの
とき、大部分マルチプレクサ/蓄積器アレイ1210に直接
加えられる。逆方向計算フロー1100で説明せるごとく、
アレイ1210は式(9) の動作を実行出来るように係数レジ
スタ1204よりマトリックス[CA ]T 、[CB ]T の係
数がアレイ1210に加えられる。出力データバッファ1230
の変換されたデータはバス1238を通ってブロックメモリ
1242に送られる。
【0133】選択性離散形コサイン変換ブロック230 が
符号化モードのとき、アレイ入力マルチプレクサ1208で
選択されマルチプライヤ/蓄積器アレイ1210に加えられ
るデータは、マルチプレクサ入力ライン1214のデータで
はなく、マルチプレクサ入力ライン1220上のデータであ
る。マルチプレクサ入力ライン1220上のデータはバタフ
ライ加算器1218、即ち加算/減算器1218の出力である。
バタフライ加算器はその入力に(1) 入力データバッファ
/シフタ1212よりのデータか、あるいは(2) マルチプラ
イヤ/蓄積器アレイ1210の出力を受け取る。二つのデー
タ流のどちらがバタフライ加算器1218に加わるかは変換
制御ライン228 の制御のもとにマルチプレクサ1234によ
り決定される。
【0134】既に加算ノード1008と減算ノード1036につ
いて説明せるごとく、変換係数の乗算の前に選択性変換
ブロック230 によって入力データに実行される動作は、
選択性変換ブロック230 が順方向のモードであるとき、
選択性変換ブロック230 内で実行される。上記の動作は
加算ノード1016、1044でのレジスタ出力ライン1020、10
47で形成される帰還ループの動作も実行する。
【0135】バタフライ加算器1218の計算動作はバッフ
ァ/シフタ1212に設けられている入力データ点に直接加
えられてよいことがわかる。別の方法として加算器1218
は入力がアレイ1210の変換係数によって操作された後
で、バッファ/シフタ1212に設けられている入力データ
点に加えられてよい。このどちらが選ばれるかは選択性
変換ブロック230 が第1の離散形コサイン変換を実行す
るモードにあるか、あるいはその逆のモードにあるかに
より定まる。何れのモードにあるにせよ変換ブロック23
0 内の全ての機能素子が使用され、無駄な部品はない。
【0136】変換ブロック230 内の同一の部品素子、例
えば、レジスタ1006はレジスタ1106として動作する、ま
たレジスタ1032はレジスタ1132として動作する。これら
のレジスタは一緒になってバッファ1212を形成する。同
様に変換ブロック230 内の同一の部品素子、例えば、加
算器1008は加算器レジスタ1122として動作する、また減
算器1036は減算器1148として動作する。これらの計算素
子は共同してバタフライ加算器1218として働く。同様に
係数マトリックス[CA ]、[CA ]T はハードとして
は同一の回路でよい、これは単に変換ブロック230 のモ
ードに応じてアクセス法が変っただけである。
【0137】選択性変換ブロック230 は順方向あるいは
逆方向離散的コサイン変換を実行するのに2個の乗算器
と4個の加算器を必要とする。これらの変換のいずれも
が16クロックサイクル内に変換ブロック230 により実行
される。この時間は更に2個の乗算器を用意して各バッ
ファ1106、1132の出力、あるいは各バッファ1006、1032
の出力を操作させることにより半分にすることが出来
る。しかしその結果変換回路の大きさは2倍になる。
【0138】図14に踏出し(stepping)方向図1300を示
す。踏出し方向図1300では中心位置Pcとこれを囲んで4
個の方向P1-P4 と、更に複数の踏出し方向1302-1316 を
示す。踏出し方向1302-1316 は遠隔画像処理装置100 が
表示をしている間、位置Pc、P1-P4 が一つのフレームよ
り他のフレームに動く方向を表わす。例えば、踏出し方
向図1300において位置Pc、P1-P4 があるフレームより次
のフレームに真上に動くとき、踏出し方向1302はその変
位を表わす。もし位置Pc、P1-P4 が右に動くときその動
きは踏出し方向1306で表わされる。踏出し方向1304は、
踏出し方向図1300で位置が右上方向に動くとき、位置P
c、P1-P4 の動きを示す。踏出し方向図1300では8個の
異なる方向を踏出し方向1302-1316 で示す。
【0139】図15−図17は動き予測法1400のフローチャ
ートを示す。更に動き予測法1400の他の実施例を動き予
測法1440で示す。動き予測法1400、1440の機能はある定
められた時間内に目標の領域に達する最適の方法を見つ
けることにある。動き予測法1400、1440は動きベクトル
図1300の位置Pc、P1-P4 があるフレームから次のフレー
ムに動きするときどの踏出し方向1302-1316 が最適であ
るかを決めるのに適用される。両動き予測法1400、1440
は本発明の遠隔画像処理装置100 での符号化データフロ
ー300 に用いられることが理解されるであろう。
【0140】動き予測法1400の動作は、現フレームの中
心位置Pcまたは位置P1が前フレームの中心位置によりよ
く適合しているか決定する判定1402で始まる。これを決
定するには、予測法1400でテストされる他の候補位置の
それぞれでも同様であるが、符号化データフロー300 の
好ましき実施例では16×16の画素ブロックの256 画素値
の比較を必要とする。もし位置P1が中心位置Pcよりも適
合するのであれば、動き予測法1400ではブロック1404で
示す最適水平位置Phが位置P1と決定される。
【0141】もし位置P1が中心位置Pcよりも適合しない
のであれば、位置P2が現フレームの中心位置Pcよりも前
フレーム中心位置の方がより適合しているかを判断する
決定を判定1406で行なう。もし位置P2が中心位置Pcより
も適合するのであれば、最適水平位置Phはブロック1408
で示す位置P2に等しいとされる。もし位置P1も位置P2も
共に中心位置Pcよりも適合しないとなると、中心位置Pc
はブロック1410で示す最適水平位置Phとして選択され
る。このように動き予測法1400の動作は点1411に到達す
ると、現フレームの三つの水平位置Pc、P1、P2のうちど
れが中心位置から最大の改善がなされたかを決定したこ
とになる。最適の水平位置Phは最適適合と決定した一つ
である。
【0142】動き予測法1400おいては次いで位置P3が中
心位置Pcよりもより適合しているかの判断を判定1412で
行なう。もし位置P3がより適合していると、これがブロ
ック1414で示す最適垂直位置Pvとして選ばれる。もし位
置P3が中心位置Pcよりも適合しないとなると、位置P4が
中心位置Pcよりも適合するかどうかの判断を判定1416で
行なう。判定1416で決まったごとく位置P4がより適合し
ていると、これがブロック1418に示す最適垂直位置Pvと
して選ばれる。判定1416において位置P3も位置P4も中心
位置Pcよりも適合しないとなると、判定1412におけるご
とく、ブロック1420で中心位置Pcが最適垂直位置Pvとし
て選択される。このように動き予測法1400の動作が点14
21に到達すると最適垂直位置Pvは中心位置Pc、位置P3、
位置P4の何れかに等しいとされる。動き予測法1400の動
作は改頁のコネクタ1422を経て次の頁のコネクタ1423に
移る。
【0143】動き予測法1400の実行はブロック1424に到
達すると、動き予測法1400では踏出し方向1302-1316 が
決定れさる。踏出し方向1302-1316 は最適水平適合が位
置Pc、P1、P2のいずれであるかをブロック1404、1408、
1410で決定することにより定まる最適水平位置Phに基づ
き行なわれる。更に踏出し方向1302-1316 は最適垂直適
合が位置Pc、P3、P4のいずれであるかをブロック1414、
1418、1420で決定することにより定まる最適垂直位置Pv
に基づき行なわれる。
【0144】例えば、もし動き予測法1400において、判
定1402で選択された最適水平位置Phが位置P1であり、ブ
ロック1420で決まった最適垂直位置Pvが中心位置Pcであ
るとするとブロック1424での踏出し方向1302-1316 は踏
出し方向1314となる。結果として左方向の水平の動きと
なり垂直の動きは含まない。もし例えば判定1402で位置
P1が選ばれ、判定1426でP4が最適垂直位置Pvとして選ば
れると、踏出し方向1312がブロック1424で決定する。こ
の結果水平の動きより左下方の動きとなる。
【0145】動き予測法1400で中心位置Pcが共に最適水
平位置Phと最適垂直位置Pvと決まると、あるフレームか
ら次のフレームへの最良の適合は動きなしで達成される
ことが理解されるであろう。これはフレームからフレー
ムへ位置Pc、P1-P4 の動きのないことを示す。このよう
に動き予測法1400では、8種類の踏出し方向1302-1316
が定義されているが9種類の可能なる結果が得られる。
踏出し方向1302-1316の選択は最適垂直位置Pvと再適水
平位置Phを用いて表4に示す。
【0146】
【表4】 Pv Ph 動きベクトル Pc Pc N/A Pc P1 1314 Pc P2 1306 P3 Pc 1302 P3 P1 1316 P3 P2 1304 P4 Pc 1310 P4 P1 1312 P4 P2 1308
【0147】動き予測法1400のブロック1424で踏出し方
向1302-1316 が決定すると、動き予測法1400はブロック
1426で踏出し方向1302-1316 での移動となる。ブロック
1426で示された移動がフレームからフレームへの最小2
乗誤差の改善をもたらすかどうかの決定をブロック1428
で行なう。もし改善が得られるならば最小2乗誤差が最
小となり最良の適合が得られたとして決定される。判定
1428に示すごとく最良の適合が見つかったならば、動き
予測法1400の処理はライン1429を通って終端1432に進
む。この時点で動き予測法1400は適合をとるべき画像と
再構築された画像との間の最小誤差が得られたことにな
る。
【0148】ブロック1424で決した踏出し方向1302-131
6 への移動が、例えば最小2乗誤差決定で示したごと
く、フレーム間整合を改善をもたらすならば、動き予測
法1400が既にタイムアウトしているか決定する判定1430
を行なう。判定1430でのタイムアウトの時間は、定めら
れたプロセッサのサイクル数か、あるいは画像処理装置
100 の動作するある定められた時間にもとずいて決め
る。この定められたプロセッササイクル数とは画像プロ
セッサ112 があるフレームの画像と他のフレーム画像と
の間に最適の整合を探すのに割当られているサイクル数
である。この定められた時間で動き予測法1400は反復し
て最良の整合に近付く。
【0149】もしタイムアウトの前に最良の整合が得ら
れると、前に述べたごとく動き予測法1400の実行は終了
する。もし整合がなお改善されているのにタイムアウト
が起こると、動き予測法1400の繰り返しは許されずに予
測法1400の実行は終端に進む。このように動き予測法14
00はタイムアウトの起こるまでに限り最良の整合を求め
ることを継続する。判定1430でのタイムアウトの時間は
画像プロセッサ112 がどの程度多忙であるかによって流
動的に調整されることが理解されるであろう。更にまた
判定1430のタイムアウトのテストは他の如何なる動き予
測法、あるいは最適整合を見つける他の方法あるいは装
置でも実行可能であることは理解れるであろう。多様な
相関関数を最大あるいは最小にする多くの異なった方法
も利用できる。
【0150】判定1428、1430でフレーム間の整合がなお
改善されまた最適の整合を求める時間があるときは、動
き予測法1400の実行は改頁となるコネクタ1434を経由し
て別頁のコネクタ1401に進む。コネクタ1401から動き予
測法1400では既に述べたごとく判定1402、1406で再び最
適水平整合Phを、また判定1412、1416で最適垂直整合Pv
を求める。判定1402、1406、1412、1416で最適水平、垂
直整合が決定すると、新しい踏出し方向1302-1316 がブ
ロック1424で決定し、新しい踏出し方向1302-1316 で示
された方向の移動が改善をもたらすかどうかの決定がな
される。
【0151】既に述べたように動き予測法1440は動き予
測法1400の他の実施例である。この動き予測法1400の変
形では実行は改頁のコネクタ1422より別頁で方法1440を
説明するコネクタ1442に進む。動き予測法1440の実行が
コネクタ1442に進むと、判定1444で中心位置Pcが水平及
び垂直両方向で最適整合を生じるか決定を行なう。
【0152】判定1444での決定が肯定的であると、如何
なる動きベクトル1302-1316 も改善をもたらさないこと
を意味する。この場合動き予測法1400ではそれ以上の追
跡は行なわない。しかしながら動き予測法1400は他の未
定の局部的最小よりも悪い整合である局部的最小誤差を
見つける可能性はある。従って動き予測法1440の実施例
ではランダムな点がブロック1448で選ばれる。動き予測
法1400はこのランダムな点から開始することで適用され
る。
【0153】ブロック1448でランダムな点が選定される
と、実施例1440の実行は改頁コネクタ1449を経て別頁の
動き予測法1400のコネクタ1429に進む。ここでブロック
1448で選ばれたランダム点への移動が判定1428での改善
をもたらすかが決定される。
【0154】動き予測法1400の流れを表5に示す。表5
において実行順序としてはタイムアウトのチェックから
手順の出発点に戻って改善が認められなくなるまで踏出
し方向を求める操作を続ける。
【0155】
【表5】 スタート P1で試行 もしP1がPcより悪いときP2を試行 P3で試行 もしP3がPcより悪いときP4を試行 踏出し方向をP1、P2、Pc より最適を選択: P3、P4、Pcより最適を選択して決定 タイムアウトをチエックしつつ改善が認められなくなる
まで踏出し方向決定のステップを継続 スタートに戻る
【0156】図18に改善された逆量子化法1500を示す。
改善逆量子化法1500は本発明の遠隔画像処理装置100 で
用いられる圧縮/復元・加速器120 の逆量子化ブロック
222内での動作部分である。逆量子化法1500は、2回の
減算と1回の乗算操作により逆量子化マクチプレクサ21
8 から受け取ったデータに逆量子化を行い、逆量子化さ
れたデータを選択性離散形コサイン変換ブロック230 に
加えるものである。このように改善逆量子化法1500の操
作は通常の少なくとも2回の加算と1回の乗算を必要と
する逆量子化器よりも動作が速い。この逆量子化でのス
ピード改善は逆量子化法1500の減算は通常の逆量子化法
の加算よりもはるかに速く実行出来ることによる。
【0157】改善形逆量子化法1500は式(2) において
value ≠0 と仮定している、これは逆量子化法1500では
入力0は合法的でないことによる。逆量子化法1500は更
に、次の仮定を行なっている。
【0158】
【数16】1 ≦ Q ≦ 31 -127 ≦ value ≦ +127
【0159】逆量子化法1500の計算を進めるために逆量
子化式(2) は下記のごとく書き換える。
【0160】
【数17】 Q :偶数 d = Q*(2*value + sign(value)) - sign(value) 式(10) Q : 奇数 d = Q*(2*value + sign(value))
【0161】式(10)より明かに、この式によって逆量子
化を実行するシステムの乗算器への二つの入力は(a): Q
と(b): 2*value + sign(value)である。この分野の専門
家であれば理解できることであるが、式(10)での乗算器
入力 2*value + sign(value)は-255と+255の間にあるべ
きである。更に入力値は valueが偶数のとき、式(11)に
表わされることは注目されるべきである。更にまた 2*v
alueは偶数であり、2*value +1は奇数であるべきことは
理解されるであろう。
【0162】
【数18】
【0163】式(10)の乗算 Q*(2*value + sign(value))
の結果は式(12)で示す。
【0164】
【数19】
【0165】このように8ビットの入力であるvalue は
逆量子化バス1502を経て逆量子化システム1500により受
信され、条件付き減算器1506に加えられる。入力バス15
02のvalue のサイン(sign)ビットは減算器のサインビッ
ト入力1510に加えられる。条件付き減算器1506は、サイ
ンビット入力1510で受信した入力サインビットによって
入力バス1502から受信した値を減算するか、あるいは変
更せずそのまま通過させる。条件付き減算器1506は減算
した結果か、あるいは直接そのままを出力バス1514に加
える。
【0166】逆量子化器1500の計算フローの点1518にお
いて、条件付き減算器1506の8ビット出力は1ビット右
側に位置をシフトさせる。値1が9ビット値の最下位ビ
ットに挿入される。この操作は逆量子化式(11)の計算結
果を与えることは理解されるであろう。逆量子化器1500
好ましき実施例では点1518に関連する操作を実行するの
に特別なるシフト回路を必要としない。むしろ逆量子化
器1500の好ましき実施例では、単に減算器1514からの8
ビット出力を、乗算器1526の入力部1524において次の高
次ビットに接続するのみでこの結果が得られる。入力値
の最下位ビットはがっちりとハード的に接続されてい
る。
【0167】乗算器1526は乗算入力1522から量子化因子
Q を受け取ると共に乗算入力1524より条件付き減算器15
06のシフトされた出力を受け取る。これらの二つの入力
は乗算器1526で乗算され、逆量子化式(12)でmultout と
して表わされる14ビットの出力を生成する。この値は乗
算器出力1530に現われる。
【0168】逆量子化器1500の点1534では乗算器1526で
生成された数量を左側に位置を一つシフトさせて式(12)
に出てくるmultout/2 を生成する。この値は入力バス15
38を通って条件付き減算器1546に加えられる。条件付き
減算器1546は、入力バス1502で受け取ったのと同様にva
lue の反転したサインビットをサインビット入力1542で
受け取る。条件付き減算器1546は、value の反転サイン
ビットに応じて入力バス1538で受け取った数量を減算す
るか、あるいは変更を加えずそのまま通過させる。条件
付き減算操作による13ビットの結果は減算器1546の出力
バス1550に用意される。ハードウエァ的に結線されて1
なる数値が出力バス1550の点1554にて信号に加えられ
る。14ビットの結果はブロック1558に加えられ、ここで
クリップされまた0値入力、内部ブロックDC符号化等の
特殊な場合の処理が行なわれる。
【0169】図19はバスインタフエイス200 に関連した
多くのメモリとその制御部の詳細を表わす。バスインタ
フエイス200 は4個のバッファメモリ204 、206 、240
、248 を含む。バッファメモリ204 、206 、240 、248
はバス116 、118 を通って、圧縮/復元・加速器120
で処理されるべき入力データ、また遠隔画像処理装置10
0 内の他の装置に書き込まれる圧縮/復元・加速器120
で処理された結果データを一時的にバッファする。
【0170】ループフイルタメモリ206 は加速器120 の
符号化、復号化のため選択性ループフイルタ210 が非動
作の時でも前画像ブロックを蓄積する。メモリ206 はル
ープフイルタ210 で実行された動作の中間結果を蓄積す
るのにも利用される。従って画素データの8ビットに加
えて選択性ループフイルタ210 で要求される2小数ビッ
トを収容するためメモリ206 は10ビットの幅を持ってい
る。画像が最初ループフイルタメモリ206 に蓄積される
とき、ループフイルタメモリ206 の各位置の上位8ビッ
トに各画素が収容される。下位2ビットは0とセットさ
れる。
【0171】ループフイルタメモリ206 は2個の入力ポ
ートをもっている、一つは読み出しポート1604であり、
一つは書き込みポート1602である。データはデータライ
ン203 を通って書き込みポート1602に加わる、またデー
タはポート1604からデータライン207 をに読み出され
る。ループフイルタメモリ206 の書き込みポート1602は
二つのデータソースをもっている。ソースの一つは、新
しい画像が圧縮/復元・加速器120 に入力されるときバ
スインタフエイス200 それ自体である。他のソースは、
中間フィルタ結果が発生したとき、選択性ループフイル
タ210 である。ループフイルタメモリ210 は、ループフ
イルタメモリ206 内に書き込む位置アドレスを用意す
る。ループフイルタメモリ206 はバスインタフエイス20
0 から画像データを受け取る間にそれ自身の書き込みア
ドレスを増加させる。ループフイルタメモリ206 の読み
出しは非同期である。
【0172】現画像メモリ204 は二つの異なる機能に対
する入力バッファとしての働きをする。圧縮/復元・加
速器120 の復号化モードのときは、画像メモリ204 はラ
ンレングス復号器208 により復号された到来run/value
対を蓄積する。符号化プロセスのときは、符号化される
現画像ブロックは画像メモリ204 に蓄積される。
【0173】加速器120 の好ましき実施例では、画像メ
モリ204 は一つの物理的書き込み/読み出しポートをも
っている。読み出しポートは画像メモリ204 に供給さる
二つのアドレスの一つを用いる。画像メモリ204 に使用
される一つのアドレスは、復号化のデータを選択するた
め、復号化の間にランレングス復号器208 により用意さ
れる。他のアドレスは加速器120 の符号化モードの間は
バスインタフエイス200 により用意される。画像メモリ
204 の出力データは1バイト形式、16ビット形式でライ
ン205 に出力される。
【0174】加速器120 の復号化モードのときランレン
グス復号器208 では64個のrun/value 対が復号化され
る。ブロックコードの終端に更に31個の16ビットのrun/
value対の容量がある。もし32個あるいはそれ以上のrun
/value 対がブロック内に起こると、ランレングス復号
器208 は追加データが供給されている期間は休止する。
この動作は、ランレングス復号器208 が第33番目の語を
要求したとき画像メモリ204 の主張による中止信号で達
成される、その際アドレスは30より0となる。
【0175】復号画像メモリ240 は、圧縮/復元・加速
器120 の外部に接続されたメモリに、例えばメモリ114
に、書き込まれた復号された画像ブロックを蓄積する。
加速器120 が符号化モードにある時、このデータは現在
画像/圧縮復元画像ブロック302 に蓄積される圧縮復元
画像を表わす。復号画像メモリ240 はフレーム加算器23
5 により一度に1バイト供給される一つのポートを備え
ている。加速器120 が処理ブロック112 による動き予測
実行するため遠隔画像処理装置100 のデータバスに圧縮
復元データを書き込むとき、メモリ240 の一つのポート
より一回4バイトがバスインタフエイス200 に読み込ま
れる。画像メモリ240 の内部アドレスの増加指標は外部
よりリセットされる。
【0176】ジグザグメモリ248 はジグザグ/量子化ブ
ロック238 とランレングス符号化ブロック246 と共同で
作成されたrun/value 対を蓄積する。run/value 対は遠
隔画像処理装置100 のデータバスに書き込むためバスイ
ンタフエイス200 によりジグザグメモリ248 から読み出
される。メモリ248 はそれ自身のアドレス増加指標を含
んでいる。
【0177】バスインタフエイス200 はこれと関連する
他の素子、即ちメモリ204 、206 、240 、248 等活性化
する全体制御ブロック260 を備えている。全体制御ブロ
ック260 によって活性化される素子の動作は、所定のク
ロックサイクル数以内に実行される。全体制御ブロック
260 はこれらの素子に対して制御状態の終了が決定する
クロックサイクル数を数えている。外部バスインタフエ
イスの活動はマスター制御ブロック262 を通してバスイ
ンタフエイス200 から受信した処理終了信号により追跡
されている。この処理終了信号に加えて全体制御ブロッ
ク260 によりマスター制御ブロック262 から受信される
クロック入力は圧縮/復元・加速器120のシステムリセ
ット、及び中断制御信号が含まれる。中断制御信号が受
信されると全体制御ブロック260 のクロックは保留され
る。
【0178】図20に圧縮/復元・加速器120 の選択的加
算/減算部1700のブロック図を示す。選択的加算/減算
部1700は加速器120 のフレーム差ブロック220 とフレー
ム加算ブロック235 の両方の機能を選択的に行なうもの
である。これらの動作は制御ライン226 、228 の制御の
もとに加速器120 が符号化モードで動作しているか、復
号化モードで動作しているかで選択される、更に加速器
120 が符号化モードのときは、符号化されたデータが送
信のためか、あるいは圧縮/復元画像を得る復号のため
準備されるものであるかにより選択される。
【0179】前に述べたごとくフレーム差ブロック220
とフレーム加算ブロック235 は圧縮/復元・加速器120
内で数種類の機能を果たす。フレーム差ブロック220 は
選択性離散形コサイン変換器230 に動き予測データを符
号化するためにマルチプレクサ224 を経て供給する。フ
レーム加算ブロック235 は、加算器120 の符号化モード
のとき圧縮復元データ画像データを発生し、これを復号
画像メモリ240 に加える。加速器120 の復号化モードの
ときブロック220 、235 は現画像を現在画像/圧縮復元
画像ブロック302 に再構築する。更にブロック220 、23
5 は飽和関数を用いて計算でオーバフローを生ずる変換
係数の量子化歪を防止する。
【0180】加速器120 の好ましき実施例ではフレーム
差ブロック220 とフレーム加算ブロック235 は一つのハ
ードウエアに結合される。これは加算器120 のフレーム
加算とフレーム減算の機能は同時に実行されないから可
能となるのである。フレーム加算/減算部1700は加算器
120 の符号化と復号化モードの両方に使用される。符号
化モードでは処理ブロック112 に対し次のデータブロッ
クを如何に符号化すべきか決定するため受信装置により
見た画像を再構築することが必要である。内部ブロック
に対しては、圧縮復元された画像は、離散形的コサイン
変換、量子化、逆量子化の後受信装置により受信された
前ブロックメモリと符号化された差に加えることにより
得られる。この加算はフレーム加算ハードウエアにより
なされる。
【0181】加速器120 の復号化モードでは内部ブロッ
クの画像の再構築は前予測画素ブロックに復号画像デー
タまたは差データとを加算することにより行なわれる。
内部ブロックにはフレーム加算とフレーム減算は要求さ
れない、これは前画像には関連がないからである。
【0182】符号化データフロー300 と復号化データフ
ロー600 において計算上のオーバフローを生ずる変換係
数振幅の量子化歪を防ぐため、選択的加算/減算部1700
ではクリッピングあるいは飽和関数が含まれる。圧縮/
復元・加速器120 の符号化モードにおいて、飽和関数
を、予測と予測誤差を加えることにより形成された再構
築された画像に加える。その結果は0と255 との間で飽
和する。
【0183】資源を最高に活用し、効率を上げるため復
号化モードでのフレーム加算と符号化モードでの減算
は、ループフイルタ210 の水平フイルタサイクルかある
いは第2フイルタサイクルで同時に行なう。ループフイ
ルタ210 の水平サイクルは8×8の画像ブロックを横列
方向にスキャンするので、加算または減算される現ブロ
ックデータも横方向に取り出す。全体制御ブロック260
は、水平方向の行路は現画像データが準備されるまでは
始まらないことを保証する。
【0184】図21は、選択性ループフイルタ210 とこれ
の更に詳細なるブロック図を表わすループフイルタ状態
図1800を示す。選択性ループフイルタ状態図1800は、圧
縮/復元・加速器120 が符号化データフロー300 に記述
せるごとく符号化モードで動作しているとき、選択性ル
ープフイルタ210 の状態を示す。
【0185】選択性ループフイルタ210 は前に述べたご
とく予測される画像の8×8ブロックに作用する2次元
低域パス空間フイルタである。フイルタ210 は、選択性
変換器230 の離散形コサイン変換と符号化ブロック246
のランレングス符号化の間は、より良好な圧縮比を得る
ため画像データを平滑化し高周波成分を減少させる。圧
縮比の改善は高周波分を除去することにより解像度ある
いは像の鮮鋭度を犠牲にする。選択性ループフイルタ21
0 は制御ライン214 を用いて符号化あるいは復号化して
いるときイネイブル(enable )状態でも非イネイブル状
態でもよい。
【0186】選択性ループフイルタ210 のフイルタリン
グ動作において、画素の値は隣接画素の値と平均をとる
ことにより調整される。前に表1で示したごとく隣接の
画素には異なるウエイトが割り当てられる。フイルタさ
れる画素は中心に位置し、表1では強調している表示し
ている、また平均化では9個の画素中で最も高いウエイ
トが与えられる。
【0187】選択性ループフイルタ210 のごときループ
フイルタを2次元に同時に適用するのは困難である。し
かしフイルタリング動作は対称的であり、準備するのが
容易な二つの1次元プロセスに分離可能である。好まし
き実施例では2次元フイルタリングプロセスは、1次元
水平関数と1次元垂直非巡回形関数に分離される。各1
次元関数の係数として1/4 、1/2 、1/4 が使用される。
一点あるいは複数の点がブロック外になるブロック端で
はただ一つの1次元フイルタリングが適用される。フイ
ルタリングは4個の隅の画素には適用されない。
【0188】選択性ループフイルタ210 のフイルタリン
グを実行するとき、予測される画素の8×8予測画素ブ
ロックは8ビットデータの8行、8列の2次元配列に編
成される。このデータはループフイルタメモリ206 で8
×8の10ビットブロックとして蓄積される。前に述べた
ごとく中間フイルタリング工程で要求される解像度を維
持するには、ループフイルタメモリ206 では画素当り10
ビットを必要とする。ループフイルタ210 は8列に対し
てそれぞれ1次元垂直フイルタリングを実行する。この
垂直フイルタリングの中間結果はループフイルタメモリ
206 に再び蓄積され、そこから原始データが読み出され
る。読み出し、書き込みアドレスはアドレス発生器264
により発生する。
【0189】垂直フイルタサイクルが終わると選択性ル
ープフイルタ210 は2次元配列を行毎に水平フイルタプ
ロセスを実行するようにスキャンする。この結果は12ビ
ットの精度の値の流れとなるがこれは丸められて8ビッ
トとなる。この結果はバックしてループフイルタメモリ
206 に書き込まれるとともに、直接に選択的加算/減算
部1700に加えられる。第2のあるいは水平行程の出力と
同時に、データは現画像メモリ204 から読み出される。
メモリ204 に対する読み出しアドレスはループフイルタ
210 に対する書き込みアドレスと同一である。8ビット
の値の二つの流れは選択的加算/減算部1700に送られ
る。
【0190】選択性ループフイルタ210 はループフイル
タメモリ206 が一杯になったときフイルタリングプロセ
スを開始する。この時以前はループフイルタ210 はルー
プフイルタ状態図1800でアイドル状態1828にある。選択
性ループフイルタ210 は新しいループフイルタサイクル
を始めるため初期化されると常にリセット/アイドル状
態となる。状態1828ではアドレスカウンタは0にセット
され、水平/垂直フイルタ状態は垂直にセットされる。
【0191】フイルタリングのプロセスが始まると、通
路1832を経て垂直フイルタ状態1844に入る。ループフイ
ルタ210 の最初の行程、即ち垂直の行程は画素値の8×
8入力マトリックスをその上端よりスタートして下端に
進むようにスキャンする。この垂直スキャンはマトリッ
クスの0,0 と位置付けられる左上部角より開始する。3
個のバッファレジスタ1902、1904、1906はフイルタ加算
器1908の前の入力画素を蓄積するのに用いられる。第1
のレジスタ1902と第2のレジスタ1904が一杯になるとル
ープフイルタ210 の処理が始まり、部分的に処理された
値はデータライン209 を通ってループフイルタメモリ20
6 にバックして書き込まれる。垂直状態1844の終わりで
はループフイルタメモリ206 は64個の10ビット中間値で
満たされる。各中間値の下の2ビットは、ループフイル
タ210 の次の行程のため精度を維持する部分ビットであ
る。
【0192】ループフイルタメモリ206 の垂直行程が完
了すると、選択性ループフイルタ210 は休止し、全体制
御ブロック260 からの制御信号を待つ。このときリセッ
トが発生するとループフイルタ210 はリセットパス1840
を経てアイドル/リセット状態1828に入る。この間リセ
ットが発生しない場合、水平フイルタサイクルを始める
制御信号が次の条件のとき全体制御ブロック260 により
用意される、即ち(1)フレームメモリ204 が一杯であ
る、(2) 選択性変換器230 がフレーム加算/減算部1700
よりのデータ受信準備を完了、(3) 垂直行程サイクル完
了の時。
【0193】全体制御ブロック260 よりの制御信号が選
択性ループフイルタ210 により受信されると、ループフ
イルタ状態図1800はパス1846を経て水平フイルタ状態18
52に入る。選択性ループフイルタ210 の水平行程では、
ループフイルタメモリ206 の中間ループ結果のマトリッ
クスは左より右へ水平方向に読み出される。前に垂直方
向の行程で説明せるごとく、データはバックしてループ
フイルタメモリ206 に書き込まれる。データはまた同時
に、圧縮/復元・加速器120 が符号化モードで動作して
いるとき、フレーム差ブロック220 あるいは選択的加算
/減算部1700に送られる。
【0194】水平フイルタリングが完了あるいはリセッ
トが発生したとき、ループフイルタ210 は通路1856を通
ってループフイルタ状態図1800のアイドル状態1828に戻
る。選択性ループフイルタ210 は次の条件になるまでは
リセット/アイドル状態1828で留まる、即ち(1) 垂直制
御信号がループフイルタ210 に通路1832を通って状態18
28を抜け出るよう命令しているか、あるいは、(2) 全体
制御ブロック260 内のロジックが通路1820を通って状態
1828を脱出するよう指示するフイルタバイパスする命令
を解読するまで。全ての他の信号はリセット/アイドル
状態1828にあるループフイルタ210 では無視される。
【0195】ループフイルタ状態図1800においてフイル
タバイパス状態1808では如何なるフイルタリングも選択
性ループフイルタ210 では実行されない。ループフイル
タ210 がバイパス状態1808にあると、加算器1908は非動
作となる。アドレス発生器264 はフレーム加算/減算部
1700に選択性離散形コサイン変換器230 、または復号画
像メモリ240 に書き込ませるアドレスを発生する。デー
タはループフイルタメモリ206 と現画像メモリ204 より
読み出され、選択性変換ブロック230 に加えられる。ア
イドル状態1828より通路1820を経てバイパス状態に入
る。選択性ループフイルタ210 は、リセットが発生する
かそれがブロックの終端に達すると、バイパス状態1808
を脱出する。
【0196】ループフイルタ210 のアドレス発生器2002
はループフイルタメモリ206 と現画像メモリをアクセス
するに必要なアドレスを発生する。アドレスは順次に発
生し、00H より3fH の範囲にある。アドレス発生器には
主要なる3機能がある。アドレス発生器2000の第1の機
能はループフイルタ210 の水平行程アドレスを発生す
る。発生器2002は水平行程で00H より3fH 番地まで順次
上昇するアドレスを発生する。加算器1900で角あるいは
側部のアドレスが処理されると加算器1900の出力は無視
され、その代わりレジスタ1904の内容がコピーされる。
発生したアドレスはループフイルタメモリ206 からの読
み出し、また現画像メモリの読み出しに使用される。
【0197】アドレス発生器2002の他の機能はループフ
イルタ210 に垂直行路のアドレスを発生することであ
る。このモードでループフイルタ210 の8×8マトリッ
クスの上から下へのスキャンを行なうには、発生したア
ドレスの上位3ビットを下位ビットに交換する。画素マ
トリックスの角の、上部、あるいは下部の横列アドレス
が加算器1908で処理される時は、この交換はマルチプレ
クサ2004を用いて実行される。これが起こるときは、加
算器1908の出力は無視され代わりにREG2の中味がコピー
される。アドレスはループフイルタメモリ206 から読み
出しに用いられ、またバックしてループフイルタメモリ
206 に書き込むためにも用いられる。この行程の間は現
画像メモリはアクセスされない。
【0198】アドレス発生器2002の他の機能は選択性ル
ープフイルタ210 が加速器120 内でバイパスされると
き、ループフイルタメモリ206 の読み出しアドレスを発
生することである。これが起こると加算器1900は非活動
となり、発生したアドレスはループフイルタメモリ206
と現画像メモリ204 の読み出しに使用される。データは
非活動の加算器1908を通ってフレーム加算/減算部1700
に送られる。発生したアドレスは全て左から右への水平
読み出しモードである。
【0199】角、上部横列、あるいは下部横列が処理さ
れるとき、カウンタ2002の出力をバス2003を用いてそれ
ぞれ3ビットの2組に分割する決定がなされる。バス20
03はマルチプレクサ2004に加えられる。要約すると選択
性フイルタ310 のアドレス発生器2000は6ビットカウン
タ2002と二つのレジスタ2006、2008とバイト交換マルチ
プレクサ2004を含む。アドレスレジスタは、フイルタの
入力データが読み出されるループフイルタメモリ206 の
アドレス、中間のフイルタされた結果が蓄積されるアド
レスを発生する。それはまた現画像メモリから読み出す
アドレス、選択性離散形コサイン変換器230 に書き込む
アドレス、また復号画像メモリに書き込むアドレスを発
生する。ループフイルタ210 の垂直行程の間に、マルチ
プレクサ2004ではアドレスの上部3ビットが下位3ビッ
トと交換される。これによってループフイルタ210 で処
理された8×8画素マトリックスの左から右への読み出
しの代わりに、上から下への読み出しが可能になる。
【0200】加算部2000は3入力12ビット加算器1908を
含む。12ビット3入力の他に加算器1908は1出力をもっ
ている。加算器1908の入力の二つはレジスタ1902、1906
の出力と直接結ばれている、加算器1908第3の入力はレ
ジスタ1904のものである。レジスタ1904は現在処理され
ている画素を含んでいる。レジスタ1902、1904、1906は
標準の10ビットレジスタである。第1の行程ではそれは
8ビットであるが更に2ビット加えられる。レジスタ1
とレジスタ3の出力は直接加算器1908に行く。レジスタ
2の出力は2倍する操作を経て加算器1908に行く。乗算
操作は1ビットだけずらすことにより行なわれる。
【0201】処理される画素がフイルタリングを必要と
しない角/側画素であれば加算器1908の出力は無視さ
れ、レジスタ1904の内容は直接ループフイルタメモリ20
6 に書き込まれる。書き込むか、バイパスするかの決定
はアドレス発生器2000の出力にあるロジックによりなさ
れる。これは選択性ループフイルタ210 が状態図1800で
フイルタバイパス状態のとき発生する。
【0202】纏めると、選択性ループフイルタ210 の加
算部1900は3個のレジスタと、2個の2入力12ビット加
算器の直列を含んでいる。フイルタ210 への3個の連続
せる入力はレジスタ1902、1904、1906で形成されるパイ
プラインに列をなしている。加算回路1908はレジスタ19
02、1906に対しては単純加算、レジスタ1904には2重加
算を行なうことによる1次元フイルタ処理を実行する。
ループフイルタ210 の第1の行程または垂直行程の間、
3個の8ビットの値が先ず読み出され、10ビットの和が
ループフイルタメモリ206 にバックして書き込まれる。
ループフイルタ210 の第2の、或は水平の行程では10ビ
ットの値がループフイルタメモリ206 より読み出され、
加算され12ビットの値を得る。この結果はフレーム加算
/減算部1700に送る前に8ビットに丸める。分数部分の
値は1/2 に丸められる。
【0203】コントローラ213 は他の機器からの多様な
入力を処理し、それらを復号して加算部1900とアドレス
発生器200 に対する制御を用意する責任を負っている。
例えばコントローラ213 は制御信号をアドレス発生器20
00に送りカウントを始める。それはまた加算器1908を活
性化しまた非活性化する。
【0204】コントローラにより受信された制御信号に
より、コントローラ213 はループフイルタ210 をバイパ
スモードにする。フイルタ210 はそれにより、フレーム
加算/減算部1700に対するアドレス発生器として動作す
る。
【0205】選択性ループフイルタ210 のループフイル
タコントローラ213 は図示されていない状態を示すマシ
ン、またその他のロジックを含む。コントローラ213 の
状態マシンは多くのフイルタと読み出し/書き込みプロ
セスを順に実行する。
【0206】本発明の性格を説明するため記述し図示し
た実施例において、クレームに表現された本発明の原理
と範囲より外れることなく、多くの変更が可能であるこ
とは当分野の専門家には理解されるであろう。
【図面の簡単な説明】
【図1】本発明のデジタル画像信号の圧縮、復元を加速
するためのシステムと方法を含む画像処理装置のブロッ
ク図である。
【図2】本発明の画像信号の圧縮、復元を加速するため
のシステムと方法のパイプラインアーキテクチャのブロ
ック図である。
【図3】デイジタル画像信号を符号化するとき、図2の
システムと方法でのデータの流れを示すブロック図と、
この目的に使用されるメモリを示す図である。
【図4】デイジタル画像信号を符号化するとき、図2の
システムと方法でのデータの流れを示すブロック図と、
この目的に使用されるメモリを示す図である。
【図5】図3および図4の符号化データフローの入力循
環バッファのデータ構造を示すブロック図である。
【図6】図3および図4の符号化データフローの出力循
環バッファのデータ構造を示すブロック図である。
【図7】デイジタル画像信号を復号化するとき、図2の
システムと方法でのデータの流れを示すブロック図であ
る。
【図8】図7の復号化データフローの入力循環バッファ
のデータ構造を示すブロック図である。
【図9】図2のシステムと方法で動き予測の同期化と符
号化プロセスでのデータフローのブロック図と、これに
関係したバッファポインタを示す図である。
【図10】図2のシステムと方法で同期化と復号化プロ
セスでのデータフローのブロック図と、これに関係した
バッファポインタを示す図である。
【図11】図3及び図4のシステムの符号化部分の順方
向離散形コサイン変換計算フローのブロック図である。
【図12】図3及び図4のシステムの復号化部分の逆方
向離散形コサイン変換計算フローのブロック図である。
【図13】図11の順方向離散形コサイン変換、あるい
は図12の逆離散形コサイン変換を選択的に実行する装
置のブロック図を示す。
【図14】図15乃至図17のフローチャートで表わさ
れる動き予測法で選択される位置の配置を示す図であ
る。
【図15】図3及び図4のデータフローを用いる動き予
測法のフローチャートを示す図である。
【図16】図3及び図4のデータフローを用いる動き予
測法のフローチャートを示す図である。
【図17】図3及び図4のデータフローを用いる動き予
測法のフローチャートを示す図である。
【図18】図2のシステムで使用される逆量子化装置の
ブロック図である。
【図19】図2のシステムのパイプライン構造でバスイ
ンタフエィスに関連する多くのメモリと制御部の詳細ブ
ロック図示す。
【図20】図2のパイプライン構造に適したフレーム加
算/減算の詳細図を示す。
【図21】図2の選択性ループフイルタの動作の状態図
を示す。
【図22】図2の選択性ループフイルタの加算器の詳細
ブロック図である。
【図23】図2のループフイルタのアドレス部を示す詳
細図である。

Claims (16)

    【特許請求の範囲】
  1. 【請求項1】 試験画像、複数の候補画像、画像間の差
    を決定する差決定手段、及び期間決定手段を有する画像
    処理装置において、 (a) 上記複数の候補画像のなかの1候補画像を選択す
    る工程、 (b) 上記試験画像と上記選択候補画像はの差を決定す
    る工程、 (c) 上記工程(b) により画像の動きを予測する工程、 (d) 上記期間決定手段により期間を決定する工程、 (e) 上記の期間決定工程(d) に応じて工程(c) を繰り
    返す工程、とを含むことを特徴とする画像動き予測法。
  2. 【請求項2】 工程(c) を繰り返すことにより決定せる
    誤差が減少することを特徴とする請求項1の画像動き予
    測法。
  3. 【請求項3】 該工程は (e) 工程(c) を繰り返しにより該誤差が減少するか否
    を決定する工程、 (f) 工程(e) に応じて工程(c) を繰り返す工程、とを
    更に含むことを特徴とする請求項2の画像動き予測法。
  4. 【請求項4】 上記工程(e) に応じて該複数の候補画像
    より1候補画像を選択するのは無差別であることを特徴
    とする請求項3の画像動き予測法。
  5. 【請求項5】 該決定された期間は所定の期間と比較す
    る工程を含むことを特徴とする請求項1の画像動き予測
    法。
  6. 【請求項6】 該所定の期間は所定の時間間隔であるこ
    とを特徴とする請求項5の画像動き予測法。
  7. 【請求項7】 該画像処理装置は画像処理のシステムサ
    イクルを含み該所定の期間との比較は上記画像処理のシ
    ステムサイクルの所定のサイクル数と比較する工程であ
    ることを特徴とする請求項5の画像動き予測法。
  8. 【請求項8】 該所定の時間間隔は変更されることを特
    徴とする請求項5の画像動き予測法。
  9. 【請求項9】 該所定の期間は該画像処理装置の利用に
    応じて変更されることを特徴とする請求項8の画像動き
    予測法。
  10. 【請求項10】 該工程(b) で決定した差に応じて動きベ
    クトルを決定する工程を含むことを特徴とする請求項1
    の画像動き予測法。
  11. 【請求項11】 該工程(a) の候補画像は該動きベクトル
    に応じて選択することを特徴とする請求項10の画像動き
    予測法。
  12. 【請求項12】 該工程(b) は複数の差を決定し、該動き
    ベクトルはこの複数の差により決定することを特徴とす
    る請求項10の画像動き予測法。
  13. 【請求項13】 該工程(a) の候補画像は、所定の出発点
    画像位置をもつ中心画像より第1と第2の相対変位を持
    っている画像を選択することを特徴とする請求項1の画
    像動き予測法。
  14. 【請求項14】 工程として更に (g) 該中心画像よりの前記第1の変位をもつ該候補画
    像の相対誤差を決定する工程、 (h) 該中心画像よりの前記第2の変位をもつ該候補画
    像の相対誤差を決定する工程、 を含むことを特徴とする請求項13の画像動き予測法。
  15. 【請求項15】 工程として更に、上記工程(g) 、(h) に
    応じて該候補画像を選択する工程を含むことを特徴とす
    る請求項14の画像動き予測法。
  16. 【請求項16】 該第1、第2の相対変位はそれぞれ互い
    に垂直であることを特徴とする請求項13の画像動き予測
    法。
JP6124245A 1993-05-13 1994-05-13 非消耗的動き予測法 Withdrawn JPH0799659A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US061717 1993-05-13
US08/061,717 US5329318A (en) 1993-05-13 1993-05-13 Method for optimizing image motion estimation

Publications (1)

Publication Number Publication Date
JPH0799659A true JPH0799659A (ja) 1995-04-11

Family

ID=22037652

Family Applications (1)

Application Number Title Priority Date Filing Date
JP6124245A Withdrawn JPH0799659A (ja) 1993-05-13 1994-05-13 非消耗的動き予測法

Country Status (4)

Country Link
US (1) US5329318A (ja)
EP (1) EP0624984A3 (ja)
JP (1) JPH0799659A (ja)
CA (1) CA2123437A1 (ja)

Families Citing this family (74)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5548665A (en) * 1992-09-09 1996-08-20 Matsushita Electric Industrial Co., Ltd. Vector correlation detecting circuit
US5426462A (en) * 1993-05-13 1995-06-20 Intel Corporation Apparatus for encoding signals using a configurable transform circuit
JP2636674B2 (ja) * 1993-05-25 1997-07-30 日本電気株式会社 動画像の動きベクトル検出装置
US5446839A (en) * 1993-05-26 1995-08-29 Intel Corporation Method for controlling dataflow between a plurality of circular buffers
US5684534A (en) * 1993-05-26 1997-11-04 Intel Corporation Task-splitting dual-processor system for motion estimation processing
US5469208A (en) * 1993-05-26 1995-11-21 Intel Corporation Dequantization using decrements and multiply
US5471412A (en) * 1993-10-27 1995-11-28 Winbond Electronic Corp. Recycling and parallel processing method and apparatus for performing discrete cosine transform and its inverse
US5434808A (en) * 1993-10-29 1995-07-18 Nec Electronics, Inc. Highly parallel discrete cosine transform engine
US5539663A (en) * 1993-11-24 1996-07-23 Intel Corporation Process, apparatus and system for encoding and decoding video signals using temporal filtering
US5532940A (en) * 1993-11-24 1996-07-02 Intel Corporation Process, apparatus and system for selecting quantization levels for encoding video signals
US5515296A (en) * 1993-11-24 1996-05-07 Intel Corporation Scan path for encoding and decoding two-dimensional signals
US5539662A (en) * 1993-11-24 1996-07-23 Intel Corporation Process, apparatus and system for transforming signals using strength-reduced transforms
KR0155784B1 (ko) 1993-12-16 1998-12-15 김광호 영상데이타의 적응형 가변장 부호화/복호화방법
US5467131A (en) * 1993-12-30 1995-11-14 Hewlett-Packard Company Method and apparatus for fast digital signal decoding
KR0178231B1 (ko) * 1995-08-10 1999-05-01 배순훈 계층적인 움직임 추정 기법을 이용하는 움직임 벡터 검출 방법 및 장치
US5627601A (en) * 1994-11-30 1997-05-06 National Semiconductor Corporation Motion estimation with bit rate criterion
US5644361A (en) * 1994-11-30 1997-07-01 National Semiconductor Corporation Subsampled frame storage technique for reduced memory size
US5550595A (en) * 1994-12-16 1996-08-27 Intel Corporation Apparatus and method for motion estimation with enhanced camera interface
US6020926A (en) * 1994-12-30 2000-02-01 Intel Corporation Motion estimation block matching speedup
US5691775A (en) * 1995-03-30 1997-11-25 Intel Corporation Reduction of motion estimation artifacts
US5903313A (en) * 1995-04-18 1999-05-11 Advanced Micro Devices, Inc. Method and apparatus for adaptively performing motion compensation in a video processing apparatus
US5953457A (en) * 1995-04-18 1999-09-14 Advanced Micro Devices, Inc. Method and apparatus for improved video decompression by prescaling of pixel and error terms to merging
WO1996033575A1 (en) * 1995-04-18 1996-10-24 Advanced Micro Devices, Inc. Video decoder using block oriented data structures
US5818969A (en) * 1995-05-12 1998-10-06 Intel Corporation Intelligent start for motion estimation search
US5757668A (en) * 1995-05-24 1998-05-26 Motorola Inc. Device, method and digital video encoder of complexity scalable block-matching motion estimation utilizing adaptive threshold termination
US5818967A (en) * 1995-06-12 1998-10-06 S3, Incorporated Video decoder engine
US5703966A (en) * 1995-06-27 1997-12-30 Intel Corporation Block selection using motion estimation error
GB2305047A (en) * 1995-09-01 1997-03-26 Motorola Inc Inverse DCT image processing
US5886744A (en) * 1995-09-08 1999-03-23 Intel Corporation Method and apparatus for filtering jitter from motion estimation video data
US5682209A (en) * 1995-11-13 1997-10-28 Tektronix, Inc. Motion estimation using limited-time early exit with prequalification matrices and a predicted search center
US5706054A (en) * 1995-12-01 1998-01-06 Intel Corporation Method and apparatus for adjusting video data to limit the effects of automatic focusing control on motion estimation video coders
EP0778698B1 (en) * 1995-12-06 2001-09-12 THOMSON multimedia Method and apparatus for fine motion estimation in digital video pictures
KR100196838B1 (ko) * 1995-12-23 1999-06-15 전주범 블럭벌 상관 관계에 의한 부호화 장치
US6044066A (en) 1996-05-13 2000-03-28 Adtran, Inc. ISDN terminal equipment-resident mechanism for automatically determining service profile identifiers (SPIDS) for subdivided area code
US5715241A (en) * 1996-05-13 1998-02-03 Adtran, Inc. ISDN terminal equipment-resident mechanism for determining service profile identifiers and associated telecommunication switch protocol
JPH10105672A (ja) * 1996-09-27 1998-04-24 Nec Corp コンピュータ及びそれに使用する演算機能付きメモリ集積回路
DE19746214A1 (de) * 1997-10-21 1999-04-22 Bosch Gmbh Robert Verfahren zur bewegungskompensierenden Prädiktion von Bewegtbildfolgen
US6246671B1 (en) 1998-03-17 2001-06-12 Adtran, Inc. ISDN terminal adapter-resident mechanism for automatically determining telecommunication switch type and generating associated service profile identifiers
JP3372864B2 (ja) * 1998-04-01 2003-02-04 日本電気株式会社 動画像伸長装置及び方法
US7046734B2 (en) * 1998-04-02 2006-05-16 Intel Corporation Method and apparatus for performing real-time data encoding
US6904174B1 (en) 1998-12-11 2005-06-07 Intel Corporation Simplified predictive video encoder
US6408029B1 (en) 1998-04-02 2002-06-18 Intel Corporation Method and apparatus for simplifying real-time data encoding
US6490324B1 (en) 1998-12-08 2002-12-03 Stmicroelectronics, Inc. System, method and apparatus for a variable output video decoder
US6414996B1 (en) * 1998-12-08 2002-07-02 Stmicroelectronics, Inc. System, method and apparatus for an instruction driven digital video processor
US7844167B1 (en) 1998-12-08 2010-11-30 Stmicroelectronics, Inc. System and apparatus for digital audio/video decoder splitting signal into component data streams for rendering at least two video signals
SG82613A1 (en) * 1999-05-21 2001-08-21 Inst Of Microelectronics Dynamic load-balancing between two processing means for real-time video encoding
US7649943B2 (en) * 2000-04-21 2010-01-19 Microsoft Corporation Interface and related methods facilitating motion compensation in media processing
US7634011B2 (en) * 2000-04-21 2009-12-15 Microsoft Corporation Application program interface (API) facilitating decoder control of accelerator resources
US6891893B2 (en) * 2000-04-21 2005-05-10 Microsoft Corp. Extensible multimedia application program interface and related methods
US6940912B2 (en) * 2000-04-21 2005-09-06 Microsoft Corporation Dynamically adaptive multimedia application program interface and related methods
US6876703B2 (en) * 2000-05-11 2005-04-05 Ub Video Inc. Method and apparatus for video coding
US20020118743A1 (en) * 2001-02-28 2002-08-29 Hong Jiang Method, apparatus and system for multiple-layer scalable video coding
US6931063B2 (en) * 2001-03-26 2005-08-16 Sharp Laboratories Of America, Inc. Method and apparatus for controlling loop filtering or post filtering in block based motion compensationed video coding
CN1968411A (zh) * 2001-09-12 2007-05-23 松下电器产业株式会社 图像解码方法
US7257312B2 (en) * 2001-10-23 2007-08-14 Thomson Licensing Fast motion trick mode using dummy predictive pictures
US7007031B2 (en) * 2002-04-01 2006-02-28 Broadcom Corporation Memory system for video decoding system
KR100575578B1 (ko) * 2003-11-13 2006-05-03 한국전자통신연구원 이동 단말 장치에서의 움직임 검출 방법
US7925120B2 (en) * 2005-11-14 2011-04-12 Mediatek Inc. Methods of image processing with reduced memory requirements for video encoder and decoder
US8295343B2 (en) * 2005-11-18 2012-10-23 Apple Inc. Video bit rate control method
US8780997B2 (en) 2005-11-18 2014-07-15 Apple Inc. Regulation of decode-side processing based on perceptual masking
US8233535B2 (en) 2005-11-18 2012-07-31 Apple Inc. Region-based processing of predicted pixels
US8031777B2 (en) 2005-11-18 2011-10-04 Apple Inc. Multipass video encoding and rate control using subsampling of frames
US20070116117A1 (en) * 2005-11-18 2007-05-24 Apple Computer, Inc. Controlling buffer states in video compression coding to enable editing and distributed encoding
US8145970B2 (en) * 2007-09-06 2012-03-27 Broadcom Corporation Data puncturing ensuring orthogonality within communication systems
US8892853B2 (en) * 2010-06-10 2014-11-18 Mobileye Technologies Limited Hardware to support looping code in an image processing system
US9268025B2 (en) * 2012-08-09 2016-02-23 Massachusetts Institute Of Technology Fast transform based offset determination
US9430268B2 (en) 2014-05-02 2016-08-30 Cavium, Inc. Systems and methods for supporting migration of virtual machines accessing remote storage devices over network via NVMe controllers
US20150317176A1 (en) * 2014-05-02 2015-11-05 Cavium, Inc. Systems and methods for enabling value added services for extensible storage devices over a network via nvme controller
US9294567B2 (en) 2014-05-02 2016-03-22 Cavium, Inc. Systems and methods for enabling access to extensible storage devices over a network as local storage via NVME controller
US9529773B2 (en) 2014-05-02 2016-12-27 Cavium, Inc. Systems and methods for enabling access to extensible remote storage over a network as local storage via a logical storage controller
US10516892B2 (en) 2015-09-28 2019-12-24 Cybrook Inc. Initial bandwidth estimation for real-time video transmission
US10756997B2 (en) 2015-09-28 2020-08-25 Cybrook Inc. Bandwidth adjustment for real-time video transmission
US10506257B2 (en) 2015-09-28 2019-12-10 Cybrook Inc. Method and system of video processing with back channel message management
US10506283B2 (en) 2015-11-18 2019-12-10 Cybrook Inc. Video decoding and rendering using combined jitter and frame buffer

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63149973A (ja) * 1986-12-12 1988-06-22 Mitsubishi Electric Corp 動画像符号化伝送装置
US5237405A (en) * 1990-05-21 1993-08-17 Matsushita Electric Industrial Co., Ltd. Image motion vector detecting device and swing correcting device
US5151784A (en) * 1991-04-30 1992-09-29 At&T Bell Laboratories Multiple frame motion estimation
US5198901A (en) * 1991-09-23 1993-03-30 Matsushita Electric Corporation Of America Derivation and use of motion vectors in a differential pulse code modulation system

Also Published As

Publication number Publication date
EP0624984A2 (en) 1994-11-17
US5329318A (en) 1994-07-12
EP0624984A3 (en) 1996-07-31
CA2123437A1 (en) 1994-11-14

Similar Documents

Publication Publication Date Title
JPH0799659A (ja) 非消耗的動き予測法
USRE48845E1 (en) Video decoding system supporting multiple standards
US5386233A (en) Method for efficient memory use
US5684534A (en) Task-splitting dual-processor system for motion estimation processing
US5774206A (en) Process for controlling an MPEG decoder
US5812791A (en) Multiple sequence MPEG decoder
US7006698B2 (en) Method and apparatus for compressing a video image
JP4425561B2 (ja) イメージおよびビデオ符号化のための2−d変換
US6292589B1 (en) Method for choosing rate control parameters in motion-compensated transform-based picture coding scheme using non-parametric technique
US5995080A (en) Method and apparatus for interleaving and de-interleaving YUV pixel data
US5446839A (en) Method for controlling dataflow between a plurality of circular buffers
US6026217A (en) Method and apparatus for eliminating the transpose buffer during a decomposed forward or inverse 2-dimensional discrete cosine transform through operand decomposition storage and retrieval
US5410352A (en) Image data compressing apparatus
US5825680A (en) Method and apparatus for performing fast division
US5469208A (en) Dequantization using decrements and multiply
JPH08275160A (ja) 離散余弦変換方法
JPH08280007A (ja) プロセッサ及び転送方法
US5528528A (en) Method, apparatus, and system for transforming signals
JP3615241B2 (ja) ビデオデータデコーダのアーキテクチャ
US5592399A (en) Pipelined video encoder architecture
JPH08275149A (ja) データ符号化方法
US7076105B2 (en) Circuit and method for performing a two-dimensional transform during the processing of an image
JPH07240844A (ja) 画像データ処理装置および画像データ処理方法
US7330595B2 (en) System and method for video data compression
US5426462A (en) Apparatus for encoding signals using a configurable transform circuit

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20010731