JP3101691B2 - 二次元動画像の連続するピクセルを表わすデータ信号を処理するための方法および回路 - Google Patents

二次元動画像の連続するピクセルを表わすデータ信号を処理するための方法および回路

Info

Publication number
JP3101691B2
JP3101691B2 JP01292109A JP29210989A JP3101691B2 JP 3101691 B2 JP3101691 B2 JP 3101691B2 JP 01292109 A JP01292109 A JP 01292109A JP 29210989 A JP29210989 A JP 29210989A JP 3101691 B2 JP3101691 B2 JP 3101691B2
Authority
JP
Japan
Prior art keywords
block
image
pixels
pixel
columns
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.)
Expired - Lifetime
Application number
JP01292109A
Other languages
English (en)
Other versions
JPH02213291A (ja
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 JPH02213291A publication Critical patent/JPH02213291A/ja
Application granted granted Critical
Publication of JP3101691B2 publication Critical patent/JP3101691B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/223Analysis of motion using block-matching
    • G06T7/231Analysis of motion using block-matching using full search

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Image Processing (AREA)
  • Image Analysis (AREA)

Description

【発明の詳細な説明】 発明の背景 発明の分野 この発明は、動画像を表わす2次元信号に対する、伝
送または格納されるデータ量を削減するための処理に関
する。この発明はテレビ電話およびテレビ会議のよう
な、たとえば電話線を介した毎秒64キロビット程度とい
う低いデータ速度でも、許容できる画質で伝送すること
が問題となる分野に関する。
先行技術 必要なデータ速度を削減するためのさまざまな提案が
なされてきた。これら提案のうちいくつかは、画像内の
空間的相関を使用する。考慮すべき技術のうちでは、ル
ープを符号化するための離散コサイン変換が特に興味あ
るものであると思われる。
また、連続する画像内での時間的相関を用いることも
提案されている。通常使用される解決法は、連続する画
像ピクセルをそれぞれ表わす信号を伝送するのではな
く、現在の画像信号と、問題となる画像点(ピクセル)
における信号の推定値である予測値との間の差分を用い
る。
特に、先行するフレーム内において同一のピクセルを
表わす信号の値が、現在の画像内のそのピクセルの予測
値として使用されてきている。しかしこのイメージ間符
号化方法は、画像内のかなりの部分が同時に移動してい
ることもあり得るという事実を考慮していない。
より効果的な方法は、動きを考慮したものであり、す
なわち画像内の異なる部分の動きを評価することを意味
する。最も興味ある動き予測法は、いわゆるブロックマ
ッチング方式である。画像は予め定められたサイズを有
するブロックに分割される。現在の画像の各ブロックに
対して、先行する画像内の、そのブロックを包含した窓
内で最も類似しているブロックが探索される。各ブロッ
クに対して、この最も類似しているブロックを現在の画
像の当該ブロックに対応づけるような動きベクトルが計
算され、デコーダに転送される。そのような動きベクタ
を評価するための装置がヨーロッパ特許第0 181 215
号に記載されている。
たとえば、現在の画像の、8×8のブロックの中で、
23×23ピクセルの窓内で最も近いブロックを探索するこ
とができる。
一見するとこの場合に必要とされるコンピューティン
グパワー、すなわちCIF(Common Intermediate Format:
共通中間フォーマット)画像に対して1.6×109回の演算
に対応するコンピューティングパワーは、非常に複雑な
回路を必要とし、したがってそうした解決法は受け入れ
られないものであるかのように思われる。
発明の要約 この発明の目的は、リアルタイム計算に対して許容で
きる複雑さを得ることを実現し、それを可能とするよう
な画像処理方法および回路を提供することである。
この目的のために、ここに提供される方法は、画像
が、各々が画像の高さの整数分の1に等しいような予め
定められた高さを有する帯状帯のスキャンによって列ご
とに得られたピクセルによって最初に表現されることを
条件とする。画像は、各々がMピクセルのN列を含んだ
ブロックに分割される。Mは帯状帯の高さ方向の画素数
の何倍か、恐らく1倍に等しい数であり、Nは画像当り
の列の数の整数分の1である。現在の画像のブロックの
各々に対して、前記ブロックを、直前の画像のH画素か
らなるL列のサーチ窓内の、同一サイズの可能なブロッ
クの各々と比較することによって、全体的な最小の歪み
が決定される。このサーチ窓は現在のイメージのブロッ
クを含む。この計算はM×Nサイクル内で、すなわち現
在の画像のブロックを走査するために要するのに必要な
時間と正確に同じ時間で、各サイクルの間の並列計算に
よって、現在のブロックの所与のピクセルと、先行する
画像内のサーチ窓内のブロックのオフセットまたは動き
に基づき、そのピクセルに対応すると思われるピクセル
の各々との間で計算される部分的な歪みのすべてについ
て行なわれる。その後現在の画像のブロックに対して最
も小さな歪みを有する、先行する画像内のブロックの1
つが、典型的にはまず行比較、次に列比較により決定さ
れる。
本願発明の方法および回路は、利用可能な伝送帯域と
の互換性を保つために信号圧縮を必要とする、高品位テ
レビジョン(HDTV)に提供することができる。本願発明
の方法または回路によって各ブロックに対して得られた
動きベクトルは、伝送されないフレーム(またはフィー
ルド)を近似的に整形するための補助データとして伝送
できる。
本願発明が提供する回路は、2次元動画像信号をブロ
ック処理するための回路であって、各画像を列ごとのス
キャンによって得られたピクセルで表わし、当該画像を
M行N列のブロックに分割するための手段を含み、ここ
でMおよびNは画像内の行および列の数の整数分の1で
あり、この回路はさらに、現在の画像内のあるブロック
と、先行する画像のH行L列を有するサーチ窓内の、同
一サイズを有する各ブロックとの間の最もよい一致を決
定するための手段を含む。この回路の重要な特徴の1つ
は、現在のブロックのピクセルが各々順に計算経路のす
べてに分配され、一方でサーチ窓内のピクセルが循環し
回路内の固定位置で部分和が形成されるという点であ
る。特に、この回路は各々が(L−N+1)個のプロセ
ッサ(サーチ窓内で可能な限りのオフセットと同じ数の
プロセッサ)を有する(H−M+1)行のマトリクスを
含み、各プロセッサは特定のオフセットまたは変位に対
応する歪みを計算する。この回路はさらに、以下を含
む。
すべてのプロセッサに対して、同一サイクル内におい
て、現在のイメージのブロックの同一ピクセルを表わす
データ(たとえば輝度または色信号)を分配し、あるサ
イクルから次のサイクルに移るときに、あるピクセルに
関するデータを、そのブロックの他のピクセルに関する
データで置換することをM×Nサイクルが実行されるま
で行なうための手段と、 連続するサイクルの間に、各プロセッサに対して、そ
のサイクルの間で分配されたブロックのピクセルに対し
常に同じオフセットを有するサーチ窓内のピクセルを表
わすデータを与えるための手段と、プロセッサの各々は
あるピクセルに対する歪みを計算し、これらサイクルの
間にこのブロックのすべてのピクセルに対する部分歪み
を累積し、累積値を格納するよう構成されており、およ
び この累積値の間の比較により、現在の画像のブロック
と最もよく一致する、サーチ窓内のブロックを判定する
ための手段。
本願発明は、この発明を限定する例として与えられる
ものではない、特定の実施例に関する以下の記載を読め
ばよりよく理解できるであろう。以下の記載は添付の図
面を参照する。
好ましい実施例 本願発明の特定の実施例を記載する前に、ブロックご
とのマッチングにより動きを予測する原理を想起するこ
とが有用である。
処理されるべき画像は複数個のブロックに分割され
る。これらブロックは各々M×Nというサイズを有す
る。Mは行数を、Nは行内のピクセル数を表わす。現在
の画像の各ブロックに対して、これと最も高い相関を有
するブロック、すなわち最も類似しているブロックが、
先行する画像(または別のより前に画像)内で探索され
る。このとき探索範囲は、サイズH×Lの窓内に限定さ
れる。このために、現在の画像のブロックM×Nを、窓
H×L内の同一サイズのブロックの1つに対応づけさせ
るような可能な変位、これを<>(i,j)ベクトルとし
て表わすが、これに関連した歪み関数が計算される。そ
して最も小さな歪みを導くような変位が決定される。
歪み関数は2引数関数である。最も重要なのは相関関
数である。しかしこれは計算する上で複雑であり、通常
は計算をあまりに複雑なものにするおそれがある。した
がってより簡単な歪みD(i,j)関数で以下の形のもの
を用いる。
通常は、関数d(x,y)=x−yまたはd(x,y)=
(x−y)が使用される。以下ではd(x,y)=x−
yの場合のみ考える。現在の画像のブロックに最も近い
サーチウィンドウ内のブロックとしては、Dが最小とな
るものが選ばれる。
第1図において、M=N=2である。すなわち現在の
画像の各ブロックは4ピクセルx0,0,…,x1,1を含む。
H=L=4である。すなわち各サーチ窓は16ピクセルy
0,0,…,y3,3を含む。この場合(H−M+1)(L−N
+1)=9個の歪みが計算され、各歪みの計算ではN×
M個の絶対値計算およびN×M回の累積演算が行なわ
れ、そのブロックで2NM(H+M+1)(L−N+1)
回の演算が行なわれることに対応する。リアルタイムで
は、あるブロックは各点ずつN×Mサイクルで伝送され
るので、したがって計算回路は各サイクルにつき2(H
−M+1)(L−N+1)回の演算を実行することが可
能であること、すなわちブロックのM×Nというサイズ
ではなく、サーチ窓内で、このブロックに対応する可能
な限りの変位の数のみに依存するコンピューティングパ
ワーが必要とされる。
本願発明は特に、計算モードの選択をなす上でこの属
性を用いている。本願発明によれば、窓内のブロックM
×Nの可能な変位のすべてに対応する計算は並列に行な
われる。計算サイクルの数は、そしてそれのみが、ブロ
ックのサイズに依存する。
テレビジョン画像を伝送するために従来はラスタスキ
ャンが用いられてきており、より一般的には画像が点ご
とに分析されてきた。各ラインの全体が順にスキャンさ
れ、2本のライン間にはラインのブランキング期間が設
けられている。本願発明の方法はこれとは異なるスキャ
ン方法が用いており、それは「列ごとのブロックスキャ
ン」とでも呼ぶべきものである。この方法は計算回路の
アーキテクチャを非常に簡略化する。
第2図はそうしたスキャンの第1の例を示しており、
ブロックサイズがMだけであるという条件を利用してい
る。画像は連続する帯状帯によってスキャンされる。こ
の帯状帯の高さは画像の高さの整数分の1であり、ブロ
ックの高さと等しい。
後者のような選択を行なっている理由は以下のとおり
である。もし、高さM(Mは偶数のラインを示す)のブ
ロックにつき、帯状帯の高さP=M/2が選択され、H=2
Mとすれば、現在の画像内のブロックと、現在のブロッ
クの上および下の先行する画像の窓の「周囲」とにおい
て比較されるべき点が、このタイプの走査により、より
直接的に利用可能となるためである。
画像のデジタル表現を、第3図のスキャンシーケンス
に従って配列されるピクセルとして提供するための装置
についての記載は必要ない。なぜならばそれは、連続す
るピクセルをデジタル化する従来のラスタスキャン装置
と、アドレス指定可能な画像メモリと、要求されている
走査方法に従ってメモリから読出を行なうための手段と
を含んでいればよいからである。
第3図は前述したものよりもさらに有利な、列ごとの
ブロックスキャンの修正したものを示す。しかし一方の
スキャン方法から他のスキャン方法への変換は、ブロッ
クの1列を含むのに十分な容量を有するレジスタを用い
ることによって非常に簡単な方法で達成できる。画像の
ラインごとの伝送が従来のラスタスキャンにより行なわ
れるものとすれば、いわゆる画像処理の前に、画像のP
ラインに等しい容量を持つメモリを用いて入力変換を行
なうことができる。ここでPはブロックスキャンのため
の帯状帯の高さである。
本願発明を明確にするために、本願発明の方法を実現
するための説明を最初に、ブロック(この場合カーネ
ル)および窓が第1図に示されるような種類である場合
に限定して行なう。この方法を一般化するのは直ちに可
能であって、計算経路の数はいずれの場合にも可能な限
りのシフトまたはオフセットの数と等しく、この方法の
各ブロックに対する基本的シーケンスのサイクル数はい
ずれの場合にも、Nの値にかかわらず2Mに等しく、この
基本シーケンスはM×Nサイクルの実行が完了するのに
必要な数だけ繰返される。
第4A図〜第4D図はそれぞれ計算サイクル0、1、2お
よび3を示す。各サイクルの間、4つの計算が同時に実
行される。この計算はすべての可能な関連づけについて
の部分積を、しかし一時には係数x0,0、x0,1
1,0、x1,1のうち1つのみについてであり、かつ窓内
のすべての適切なピクセルについて行なわれる(第1
図)。各サイクルにおいて、すべての経路は係数xm,n
(m∈{0,1}およびn∈{0,1})を受け、すべての経
路は並列に動作し、各々は9つのグローバルな歪みの部
分項d(xm,n,ym+i,n+j)を計算するが、これら項
は部分歪みを計算する、xm,nを必要とする9つの計算
に対応する項である。
この場合サーチ窓のピクセルに対して必要となる演算
は、シフト演算のみとなる(M=N=2の場合には、上
方向に1ポジション、下方向に1ポジション、および左
方向に1ポジション)。算術演算は積和のみに限定され
る。そして、窓のピクセルを定義するデータを得るため
に、入力に対して複雑な操作をする必要がないこと、こ
の好ましい結果がスキャン方法の性質によって得られる
ということがわかるであろう。
第4A図〜第4D図に示される例では、4サイクルの間に
実行される演算は以下のとおりである。
サイクル0(第4A図) ピクセルx0,0を表わすデータ(たとえば輝度)が互
いに並列な関係にある計算経路のすべてに与えられる。
これら計算経路はいずれもプロセッサにより実現され
る。計算経路の各々はその計算経路に関連したポジショ
ン(i,j)(ただし0≦i≦3および0≦j≦3)に関
連した項d(x0,0,yi,j)を計算しストアする。
第4A図の左手部分は、同時に現われる、ピクセルy
0,0、…、y2,2およびピクセルx0,0の間のそれぞれの
歪みに対応する。
サイクル1(第4B図) サイクル1の間に、4つの項d(x1,0,y1+i,j)が
並列に計算される。このためには計算経路の各々は、サ
イクル0の間に使用された、サーチ窓内のピクセルのす
ぐ下に位置するピクセルを表わすデータを受取らなけれ
ばならない。すなわちサーチ窓内のすべてのピクセル
を、9つの可能性に対応する歪みを計算する前に、矢印
f1で示されるように上方向に1ポジションシフトするこ
とが必要である。
この同じサイクル1の間に、オフセットに対応する部
分歪みがサイクル0での部分歪みに和演算によって加算
され、これは第4B図の左手部分に示されているとおりで
ある。
サイクル2(第4C図) サイクル2は、ピクセルX1,1に対するすべての歪み
の積を計算することに対応する。したがって各プロセッ
サは項d(x1,1,y1+i,1+j)のうちの1つを計算す
る。この目的のためにサーチ窓内のすべての点は、部分
歪みが計算される前に1ポジションだけ左方向(矢印f
2)にシフトされ、それ以前の歪みとの和がとられる
(第4C図の左部分)。
サイクル3(第4D図) サイクル3の間には、サイクル2と同一の計算が、た
だしx0,1に対して行なわれ、そのためサーチ窓内のす
べての点を、1ポジションだけ下方向に(矢印f3)シフ
トすることが必要である。計算された各部分歪みは、可
能なオフセットの各々に対する、対応する部分または中
間結果に加算される。その結果9つの可能なオフセット
の各々に対応するブロック全体に対するグローバルな歪
みが得られる。
この結果、9つの歪みのうちの最小のものと、現在の
画像のブロックを、歪みが最小となるような先行する画
像内のブロックに対応するようにさせるシフトを規定す
るベクトルとを決定することができる。
第4A図〜第4D図に示す操作は、3×3のプロセッサの
マトリクス配列と、複数個のレジスタとを含む回路を用
いることにより効果的に実行できる。このプロセッサの
各々は計算経路を形成し、サーチ窓の1ピクセルを表わ
すデータと、オフセットに対応する計算結果の歪みとを
ストアすることが可能である。レジスタは各サイクルの
間に得られた窓内のピクセルをストアするためのもので
ある。これらはこのサイクルでの計算には用いられない
が次の計算サイクルで用いられる。
第4A図〜第4D図においてハッチングした部分が、必要
とされるプロセッサを表わすものと考えれば、初期化期
間を除くデータ転送が以下のように行なわれることがわ
かるであろう。
サイクル0の始めには、データy0,0,0〜y0,2,2は既
にその前の一連のサイクルによりプロセッサ内で利用可
能となっている。x0,0,0はすべてのプロセッサに分配
される。y0,0,3およびy0,2,3はマトリクス配列の入力
に与えられ入力レジスタにストアされる。
サイクル1の始めにおいて、データx0,1,0がすべて
のプロセッサに分配される。データy0,1,3およびy3,3
は入力レジスタに格納される。これら入力レジスタはこ
の結果サーチ窓の次の列のすべてを含むことになる。す
なわちサーチ窓内の次の列のすべてのピクセルが含まれ
る。プロセッサの内容yは上方向に1ポジションだけシ
フトされる(矢印f1)。
サイクル2の間に、データx0,1,1がすべてのプロセ
ッサに分配され、サーチ窓のピクセルは左方向に1ポジ
ションだけシフトされる(矢印f2)。同時にデータy
0,1,4およびy3,4が対応する入力レジスタに格納され
る。
最後に、サイクル3の間に、データx0,0,1が分配さ
れ窓が下方向にシフトされると(矢印f3)、データy
0,0,4およびy0,2,4が導入される。このようにして画像
の次のブロックに対応する一連のシーケンスを開始する
のに必要なデータyが利用可能となる。
Dの最小値は2つのフェーズで計算される。
(1) 第1フェーズでは、格納された歪みがマトリク
スの辺方向にずらされ、1列の演算子に供給される。あ
る演算子は、ライン歪みの中の最小値を計算するために
割当てられる。
まず最初に、シフトが左方向に行なわれることが仮定
される。これは第4A図に示されたケースに対応する。
第1のサイクルでは、各演算子はブロックM×Nの水
平方向の可能なオフセットのうち最も左のものに対応す
る歪みを受ける。すなわちこの場合のオフセットは図示
されたように−1左方向である。
各演算子は歪みDと、それと関連したxに沿ったオフ
セットとをストアする。
第2のサイクルでは各演算子は次の歪みを受け、それ
を格納されている歪みと比較する。新たな歪みの方が小
さい場合には演算子はそれをそれに関連するオフセッ
ト、すなわちその前のサイクルのオフセットに1を加算
したものとともにストアする。オフセットを決定するに
はカウンタで十分である。
同じ演算が、可能な歪みのすべてが1列の演算子に与
えられるまで繰返される。この結果各演算子は各列の歪
みのうちで最小値と、それに関連するオフセットとを含
むことになる。
(2) 第2フェーズは演算子にストアされているすべ
ての歪みの中の最小値を決定することを含む。この演算
は先行する演算に直接続く。
第5図に、最小値とそれぞれのベクトルがどのように
して決定されるかをよりよく理解するための例を示す。
この図ではステップ「ゼロ」は、既に説明し第4A図〜第
4D図に示された方法によって得られた、歪みのマトリク
スの決定からなる。最小の歪みが1に等しくポジション
(0,−1)に対応するものであることがわかる。上述し
た第1フェーズは第5図のステップ1、2および3に対
応する。第2フェーズ、すなわち最小値の探索はステッ
プ4、5および6により形成される。
上述した方法を実現する可能な回路について以下説明
する。ここではその原理を第3図に示した、修正された
列ごとのスキャンによるスキャン方法を採用するものと
仮定する。さらに、ブロックはサイズM×Nを有し、サ
ーチ窓はサイズH×Lを有するものと仮定する。M/H以
上である整数(好ましくはM/Hのすぐ上の数である)は
Kとする。
第4A図〜第4D図に示すように、サーチ窓内の列全体の
点の値が、そのブロックのある列を処理するための時間
の間に供給されなければならない。N=2およびH=4
として、サーチ窓のブロックに対してはK=2入力が必
要である。
第6図および第7図に示された例はK=3に対応し、
これはたとえば8×8ブロックおよび23×23サーチ窓に
対応する。
この場合動き予測モジュール10はその入力12に、現在
の画像のピクセルの値xを受ける。現在の画像の帯状帯
Bによって規定されるブロック(第7図)を処理するた
めには、先行する画像の帯状帯A、BおよびCの画素が
予測モジュール10に対して利用可能でなければならな
い。そのため予測モジュール10の3入力14、16および18
はそれぞれ先行する画像の、ブロックBの帯状帯のすぐ
下のブロックCの帯状帯の画像信号、ブロックの1つの
帯状帯を格納するのに必要な容量を有する遅延線20を介
して得られた、先行する画像内のブロックBの帯状帯
(現在の画像の帯状帯Bと同じ位置の、帯状帯)の、先
行する画像の信号、および最後に、先行する画像の、ブ
ロックBの帯状帯のすぐ上のブロックAの帯状帯の信号
であって、遅延線20と同じ遅延線22を介して得られた信
号をそれぞれ受ける。要約すると、入力12および16は1
画像に相当する時間的オフセットを持った同じピクセル
に対応し、入力14および16はブロックの1つの帯状帯に
対応する時間的オフセットを持った同じピクセルに対応
する。
帯状帯Bにより規定されるブロックが処理された後、
現在の画像内のブロックCおよびDの帯状帯の処理が始
まる。このとき、先行する画像のブロックの帯状帯
B′、C′およびDのピクセルがモジュール10に与えら
れる(第7図)。
動き予測モジュール10のコアは、各々が(L−N+
1)個のプロセッサを有する(H−M+1)ラインのマ
トリクス配列により形成される。各プロセッサは歪みを
計算するためのものである。マトリクス配列内で各プロ
セッサにより占められる位置は、歪みが計算されるべ
き、サーチ窓内のブロックのオフセットに対応する。
モジュール10のプロセッサの各々は、d(X,Y)が差
分の絶対値である場合には、第8図に概略を示したとお
りに構成することができる。Xはすべてのプロセッサに
ついて共通であり、共通入力から与えられる。Yは各プ
ロセッサに特有の局部的データである。プロセッサは、
歪み計算回路24、入力レジスタ32および出力レジスタ34
を含んでいるものと考えることができる。
計算回路24は共通データXおよび局部データYを受け
る加算器26を含む。この加算器は|X−Y|を決定すること
を可能とするXORゲート27に関連づけられ、XORゲート27
は加算器28およびレジスタ30により形成される累算器の
入力の1つにその値を与える。加算器の2番目の入力は
レジスタ30の出力から値をフィードバックされる。加算
器の出力および|X−Y|はそれぞれレジスタ30の2つの入
力に与えられ、レジスタ30の部分的歪みを合計する。レ
ジスタの出力を加算器28の入力に再入力することによ
り、すべての計算サイクルが終了するときにレジスタ30
の出力にDが現われる。初期化入力T0は、各ブロック処
理演算の終了後に累積器をクリア可能にする。
入力レジスタ32は、マトリクス配列内の上方に配置さ
れたプロセッサ、下方に配置されたプロセッサ、または
右側に配置されたプロセッサから発生される新たなデー
タYの再生を可能とする。そのため入力レジスタ32は3
つのデータ入力36および選択入力38を有する。
出力レジスタ34は、計算回路24の、加算器28およびレ
ジスタ30により形成される累算器に含まれている歪み
(累算器の初期化サイクルの間に、信号T0に応答して転
送が生ずる)、または今考慮しているプロセッサの右側
に存在しているプロセッサ24の出力レジスタの内容のい
ずれかをストアする。そのためにレジスタ34は歪みDを
受ける入力と、右側に位置するプロセッサのレジスタの
内容を受ける入力40と、同期信号T0を受ける制御入力と
を有する。
特に、8ビット符号化されたデータを用いることが可
能であり、その場合には累算器の構成要素は16ビットワ
ードを処理できるようにされ、オーバーフローなしで25
6の部分歪みを合計できる。
第9図に示される動き予測モジュール10は、(L−N
+1)×(H−M+1)個のプロセッサのマトリクス配
列に加えて、新たなレジスタの2つのグループ44および
46を含む。これら新たなレジスタは、垂直方向のシフト
が生ずるときに、プロセッサのマトリクス配列の外とな
る窓のピクセルを受けるためのものである。したがって
各々が(L−M+1)個の3入力レジスタを有する(H
−M)個のラインであって、プロセッサのマトリクス配
列の入力レジスタ32と同様に形成されたものを設けるこ
とが必要となる。
第9図においてこれらレジスタはプロセッサの上に
(H−M)ラインのレジスタと、プロセッサの下に(H
−M)ラインのレジスタという形にグループ化されてい
る。必要とされるレジスタに関してより好ましい他の解
決法が第10図に示される。ここでは、厳密に必要とされ
る数だけのレジスタのみ(ハッチングによって示されて
いる)が使用され、プロセッサマトリクス配列42からの
フィードバックを受けている。しかしこの解決法では、
プロセッサマトリクスアレイについてより大きな透過性
が必要となる。
最後に、このモジュールは、上で考慮したシフトおよ
びオフセットの場合には、プロセッサのマトリクス配列
の右側に設けられた汎用入力レジスタ47と、プログラム
マトリクスアレイの左側に設けられた、最小値を決定す
るためのユニット48とを含む。
汎用入力レジスタはレジスタ32と同様に動作し、ユニ
ット48は第8図と同様の構成で、ただし第5図に示され
ている機能を充足するように構成される。
上記した処理回路の種々の構成要素を所定のシーケン
スで動作させるのは非常に簡単である。なぜなら、4つ
の同期信号のみで十分だからであり、これらは直接に、
またはローカルクロック信号(図示せず)により供給さ
れる、回路の汎用クロック信号と組合わせて用いられ
る。
第11図は最上段に示したクロック信号に対する、4つ
の信号の時間的配分を示している。
リセット信号RSTは計算プロセスの開始を示す。この
信号は、先行するブロックについて既に実行済みの計算
結果の転送を生じさせる。したがってこれは第8図に示
す信号T0,0と等価である。
水平方向の左シフト信号S−HORは、窓のピクセル全
体の水平左方向へのシフトを制御し、この例のサイクル
0および2の間に、シフトを生じさせる。この信号はし
たがって新たな列の処理の開始を示し、その列の第1ピ
クセルの処理と同期している。
垂直上方向シフト信号S−UPは、ある列内で残ってい
る、上から下までの一連のM−1個のピクセルに対応す
る計算を実行するのに必要なM−1サイクルの間に必要
とされるシフトを生じさせる。
垂直下方向シフト信号S−DOWNは、列の下から上まで
に対して同じ役割を果たす。
窓の点に対する上方向シフトの信号S−UPおよび下方
向シフトのための信号S−DOWNは交互に生じ、各々がM
−1個のサイクルの間続く。
したがって基本的な2M個のサイクルのシーケンスは、
S−HORによって起動される水平方向の1シフトサイク
ルと、その後にS−UPによって可能化されるM−1個の
サイクルの上方向のシフトと、S−HORによって可能化
される、水平方向のシフトサイクルと、S−DOWNによっ
て可能化されるM−1個のサイクルの下方向のシフトと
を、この順で含む。
本願発明は従来のCMOSテクノロジーを用いて実現する
ことができる。垂直方向および水平方向に−8ピクセル
から+7ピクセルまでの最大変位、すなわち最大で256
の変位に対応するピクセルレートで動作する動き予測回
路について、トランジスタ数は390,000個となる。この
数を削減するために、いくつかの歪み計算で同じプロセ
ッサを時分割で動作させ、さらに内部動作周波数を逓倍
することも可能である。
たとえば仮に同一のプロセッサが複数の歪み計算を行
なうものとすれば、そのプロセッサの内部タイミングク
ロック周波数はNで逓倍されなければならず、第8図の
ダイヤグラムは第12図のものとなる。
この技術は、現在のCMOSテクノロジーで可能な最大動
作周波数が、多くの応用分野で必要とされるピクセルレ
ートよりも遥かに高いので有望である。
たとえば動作周波数とピクセルレートとの比が2/1で
ある場合、上記した回路内のトランジスタ数を240,000
にまで削減することができる。
【図面の簡単な説明】
第1図は4つの現在の画像ピクセルのブロックと、関連
するサーチ窓とを示す図である。 第2図は本願発明を実現するために使用できる「列ごと
の」ブロックスキャンを示す図である。 第3図は第2図と同様に、第1図に示す方法の変形例を
形成する「列ごとの」ブロックスキャン方法を示す図で
あり、本願発明を実現するために特に適合した方法を示
す図である。 第4A図〜第4D図は、サーチ窓内での最適なブロックマッ
チングを探索するシーケンスを示す、連続するサイクル
を示す図である。 第5図は最小値の計算例を示す図である。 第6図は必要な信号を動き予測回路に与えるために遅延
線を用いる方法を示す図である。 第7図はH=3Mの場合の、サーチ窓をスキャンする可能
な方法の1つを示す図である。 第8図は計算マトリクスを形成する基本となるプロセッ
サを示すブロック図である。 第9図は本願発明に従った装置の一般的構成を示す図で
ある。 第10図は上記構成の可能な変形例を示す図である。 第11図は本願発明の装置の主要なシーケンス信号のタイ
ミング図である。 第12図は第8図と同様に、プロセッサを時分割で動作さ
せる変形構成例を示す図である。 図において10は動き予測モジュール、24は歪み計算回
路、32は入力レジスタ、34は出力レジスタ、26は加算
器、27はXORゲート、28は加算器、38は選択入力、40は
入力、42はプロセッサマトリクス配列、47はレジスタ、
48は最小値決定ユニットである。
───────────────────────────────────────────────────── フロントページの続き (56)参考文献 特開 昭61−60092(JP,A) 国際公開89/8891(WO,A1) (58)調査した分野(Int.Cl.7,DB名) H04N 7/24 - 7/68

Claims (10)

    (57)【特許請求の範囲】
  1. 【請求項1】2次元動画像の連続する画像のピクセルを
    表わすデータ信号を処理するための方法であって、 (a) 前記画像の各々を、前記画像の高さの整数分の
    1に等しい高さを各々が有する連続する水平方向の帯状
    帯で、列ごとにスキャンするステップを含み、それによ
    って行および列に配置されたピクセルとして前記画像の
    表現が得られ、各帯状帯は共通の予め定められた個数の
    行を含み、 (b) 前記画像を、相互に隣接するピクセルブロック
    に分割するステップを含み、各前記ブロックはN個の相
    互に隣接する列を有し、前記列の各々はM個のピクセル
    を有し、MおよびNは予め定められた整数であり、Mは
    一帯状帯の1本の列内のピクセル数の倍数であり、Nは
    画像あたりの列数の整数分の1であり、 (c) 現在の画像のブロックの各々に対して順に、そ
    れぞれのブロックを、先行する画像内のH個のピクセル
    のL個の列からなるサーチ窓内の、同一サイズの複数個
    のブロックの各々と比較するステップを含み、Lおよび
    Hはそれぞれ、MおよびNよりも大きな予め定められた
    整数であり、前記窓は前記現在の画像の前記ブロックを
    含み、前記計算はM*Nサイクル、すなわち現在の画像
    のブロックをスキャンするために要する時間内で、各サ
    イクルにおいて、現在のブロックの各ピクセルと、先行
    する画像のサーチ窓内のブロックの、可能なオフセット
    のすべてにおいて、前記ピクセルに対応するピクセルの
    各々との間の部分的歪みのすべてに対して並列計算によ
    って行なわれ、 (d) 先行する画像のブロックのうちいずれのブロッ
    クが現在の画像のブロックに対して最小の歪みを有する
    かを、まず行ごとの比較により、次に列ごとの比較によ
    り決定するステップとを含む、方法。
  2. 【請求項2】各ピクセルの歪みが、現在の画像内の前記
    ピクセルを表わすデータと、当該ピクセルと比較され
    る、先行する画像内のピクセルを表わすデータとの間の
    差分の絶対値によって定義される、請求項1に記載の方
    法。
  3. 【請求項3】各ピクセルの歪みが、現在の画像内の前記
    ピクセルを表わすデータと、当該ピクセルと比較される
    先行する画像内の、当該ピクセルに対応する特徴点を表
    わすデータとの間の差分の二乗として定義される、請求
    項1に記載の方法。
  4. 【請求項4】前記帯状帯の前記列の各々は、H=2Mとし
    てMまたはM/2個のピクセルを有する、請求項1に記載
    の方法。
  5. 【請求項5】2次元動画像の、連続する画像を表わすデ
    ータ信号をブロック処理するための回路であって、 (a) 各画像を列ごとのスキャンによって得られたピ
    クセルとして表わし、当該画像をM行N列のブロックに
    分割して表現するための表現手段を含み、MおよびNは
    前記画像の各々内の行および列の数の整数分の1であ
    り、 (b) 現在の画像の第1のブロックと、先行する画像
    内の、H行L列を有するサーチ窓内の、同一サイズの各
    ブロックとの間での最もよい一致を決定するための計算
    手段を含み、前記計算手段は、現在のブロックのピクセ
    ルを順に複数個の計算経路の全てに分配するように構成
    され、同時に、前記サーチ窓内のピクセルは前記経路の
    間を循環するようにされ、前記計算手段内の固定位置に
    おいて、歪みを合計するための手段を含む、回路。
  6. 【請求項6】2次元動画像の連続する画像を表わすデー
    タ信号をブロック処理するための回路であって、 (a) 各画像を、列ごとのスキャンにより得られたピ
    クセルとして表現し、前記画像をM行N列のブロックに
    分割して表現するための表現手段を含み、MおよびNは
    前記画像の行および列の数の整数分の1であり、 (b) 現在の画像内の前記ブロックの各々と、直前の
    先行する画像内のH行L列を有するサーチ窓内の、同一
    サイズを有する各ブロックとの間での最もよい一致を決
    定するための手段を含み、HおよびLは、それぞれMお
    よびNより大きな予め定められた整数であり、前記第2
    の手段は、 (b1) 各々が(L−N+1)個のプロセッサを有する
    (H−M+1)行のマトリクスを含み、各プロセッサは
    特定のオフセットすなわち変位に対応する歪みを計算
    し、 (b2) 前記プロセッサのすべてに対して、同一の計算
    サイクルの間に、現在の画像の前記ブロックの所与のピ
    クセルを表わすデータ信号を分配し、1サイクルから次
    のサイクルに移るときに、あるピクセルに関するデータ
    を、現在のブロックの他のピクセルに関連するデータに
    置換することを、M×Nサイクルが実行されるまで行な
    うための第1の手段と、 (b3) 連続するサイクルの間に、各プロセッサに対し
    て当該サイクル内で分配された現在のブロックのピクセ
    ルに対して常に同一オフセットを有するサーチ窓内のピ
    クセルを表わすデータを与えるための第2の手段と、を
    含み、 前記プロセッサの各々は、前記サイクルの間に、前記ブ
    ロックのすべてのピクセルに対する部分的歪みを累積
    し、累積された値をストアするよう構成され、 (c) 前記累積された値の間の比較によって、前記サ
    ーチ窓内のブロックであって、現在の画像のブロックと
    最もよく一致するブロックを決定するための比較手段と
    を含む、回路。
  7. 【請求項7】前記第2の手段が、前記行列内の先行する
    画像のすべてのピクセルを、M×Nサイクルの後に、各
    プロセッサがある予め定められたオフセットに対するす
    べての部分的歪みを累積するような経路に沿って同時に
    移動させるよう構成されている、請求項6に記載の回
    路。
  8. 【請求項8】前記最もよい一致を決定するための比較手
    段は、1列の演算と、行方向に可能な限りの数のオフセ
    ット数だけのサイクル内で前記演算子を動作させ、行方
    向のオフセットのうちのどの1つが最小の歪みに対応す
    るものであるかを判定し、それぞれのオフセットを表わ
    すベクトルを格納するための手段と、列方向に可能な限
    りのオフセットの数だけのサイクル内で動作し、それぞ
    れのオフセットを表わすベクトルのうちでどの1つが最
    も小さな可能な歪みに対応するものであるかを判定する
    ための手段とを含む、請求項6に記載の回路。
  9. 【請求項9】前記プロセッサの各々は、歪み計算回路
    と、入力レジスタと、出力レジスタとを含み、前記出力
    レジスタは最もよい一致を決定することが可能なように
    相互接続されている、請求項8に記載の回路。
  10. 【請求項10】前記計算回路は部分歪み計算機と、加算
    累算器手段とを含む、請求項9に記載の回路。
JP01292109A 1988-11-09 1989-11-09 二次元動画像の連続するピクセルを表わすデータ信号を処理するための方法および回路 Expired - Lifetime JP3101691B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR8814639A FR2638924B1 (fr) 1988-11-09 1988-11-09 Procede et circuit de traitement par bloc de signal bidimensionnel d'images animees
FR8814639 1988-11-09

Publications (2)

Publication Number Publication Date
JPH02213291A JPH02213291A (ja) 1990-08-24
JP3101691B2 true JP3101691B2 (ja) 2000-10-23

Family

ID=9371725

Family Applications (1)

Application Number Title Priority Date Filing Date
JP01292109A Expired - Lifetime JP3101691B2 (ja) 1988-11-09 1989-11-09 二次元動画像の連続するピクセルを表わすデータ信号を処理するための方法および回路

Country Status (6)

Country Link
US (1) US5099325A (ja)
EP (1) EP0369854B1 (ja)
JP (1) JP3101691B2 (ja)
DE (1) DE68924043T2 (ja)
ES (1) ES2077587T3 (ja)
FR (1) FR2638924B1 (ja)

Families Citing this family (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2209446B (en) * 1987-09-02 1992-09-30 Canon Kk Automatic focusing device
JP2738136B2 (ja) * 1990-07-20 1998-04-08 松下電器産業株式会社 ブロック化装置
GB2246488B (en) * 1990-07-24 1994-04-20 Sony Corp Motion dependant video signal processing
EP0497586A3 (en) * 1991-01-31 1994-05-18 Sony Corp Motion detection circuit
US5200820A (en) * 1991-04-26 1993-04-06 Bell Communications Research, Inc. Block-matching motion estimator for video coder
US5210605A (en) * 1991-06-11 1993-05-11 Trustees Of Princeton University Method and apparatus for determining motion vectors for image sequences
DE69229146T2 (de) * 1991-06-25 1999-10-28 Canon Kk Verfahren und Vorrichtung zur Detektion eines Bewegungsvektors sowie Kodierungsverfahren und Vorrichtung zur Anwendung eines solchen Verfahrens und Vorrichtung
US5430886A (en) * 1992-06-15 1995-07-04 Furtek; Frederick C. Method and apparatus for motion estimation
KR0160618B1 (ko) * 1992-10-27 1999-01-15 윤종용 실시간 움직임 추정장치 및 그 방법
US5793428A (en) * 1993-06-16 1998-08-11 Intel Corporation Self-encoded deltas for digital video data transmission
US5398068A (en) * 1993-09-02 1995-03-14 Trustees Of Princeton University Method and apparatus for determining motion vectors for image sequences
KR970003102B1 (ko) * 1993-09-17 1997-03-14 대우전자 주식회사 영상 복호기에서의 하프 픽셀 움직임 보상 회로
US5659364A (en) * 1993-12-24 1997-08-19 Matsushita Electric Industrial Co., Ltd. Motion vector detection circuit
JP3252936B2 (ja) * 1993-12-24 2002-02-04 シャープ株式会社 映像情報フォーマット制御装置
FR2719398B1 (fr) * 1994-04-27 1996-07-19 Sgs Thomson Microelectronics Dispositif et procédé d'adressage d'une mémoire cache d'un circuit de compression d'images mobiles.
FR2723796B1 (fr) * 1994-08-19 1996-11-29 Thomson Consumer Electronics Dispositif d'estimation de mouvement
EP0702485A3 (en) * 1994-09-19 1997-05-28 Graphics Communication Lab Motion estimation device
JP3686695B2 (ja) * 1994-10-20 2005-08-24 オリンパス株式会社 画像処理装置
JP3089165B2 (ja) * 1994-11-10 2000-09-18 株式会社グラフィックス・コミュニケーション・ラボラトリーズ 動きベクトル探索装置
KR100208375B1 (ko) * 1995-12-27 1999-07-15 윤종용 동화상 부호화 방법 및 장치
JPH114434A (ja) * 1997-06-13 1999-01-06 Sanyo Electric Co Ltd データ伸長方法
US6118901A (en) * 1997-10-31 2000-09-12 National Science Council Array architecture with data-rings for 3-step hierarchical search block matching algorithm
US6430317B1 (en) * 1997-12-31 2002-08-06 Sarnoff Corporation Method and apparatus for estimating motion using block features obtained from an M-ary pyramid
US6097851A (en) * 1998-03-31 2000-08-01 Agilent Technologies Low latency correlation
US6868123B2 (en) * 2001-12-07 2005-03-15 Motorola, Inc. Programmable motion estimation module with vector array unit
CN101300849B (zh) * 2005-11-01 2011-07-06 三叉微系统(远东)有限公司 数据处理系统

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61113377A (ja) * 1984-11-07 1986-05-31 Sony Corp テレビジヨン信号の動き検出装置
DE3689796T2 (de) * 1985-01-16 1994-08-04 Mitsubishi Denki K.K., Tokio/Tokyo Videokodierungsvorrichtung.
DE3721074A1 (de) * 1986-12-24 1988-07-07 Licentia Gmbh Schaltungsanordnung zur verschiebungsvektorsuche in der digitalen bildanalyse
US4897720A (en) * 1988-03-14 1990-01-30 Bell Communications Research, Inc. Circuit implementation of block matching algorithm

Also Published As

Publication number Publication date
EP0369854A1 (fr) 1990-05-23
FR2638924B1 (fr) 1991-01-25
DE68924043T2 (de) 1996-04-25
ES2077587T3 (es) 1995-12-01
EP0369854B1 (fr) 1995-08-30
DE68924043D1 (de) 1995-10-05
FR2638924A1 (fr) 1990-05-11
JPH02213291A (ja) 1990-08-24
US5099325A (en) 1992-03-24

Similar Documents

Publication Publication Date Title
JP3101691B2 (ja) 二次元動画像の連続するピクセルを表わすデータ信号を処理するための方法および回路
KR100203913B1 (ko) 모션 벡터 생성기
US5276513A (en) Implementation architecture for performing hierarchical motion analysis of video images in real time
US5134480A (en) Time-recursive deinterlace processing for television-type signals
US5210605A (en) Method and apparatus for determining motion vectors for image sequences
EP0873653B1 (en) Feature-based video compression method
US5398068A (en) Method and apparatus for determining motion vectors for image sequences
EP1016286B1 (en) Method for generating sprites for object-based coding systems using masks and rounding average
EP0888592B1 (en) Sprite coding and decoding
US5083202A (en) Motion detector for video signals including a novel line comparison processing scheme
JPH04294469A (ja) 相関装置
WO2001050770A2 (en) Methods and apparatus for motion estimation using neighboring macroblocks
US5604546A (en) Image signal processing circuit for performing motion estimation
US5459519A (en) Video images decoder architecture for implementing a 40 MS processing algorithm in high definition television
US5659364A (en) Motion vector detection circuit
Kappagantula et al. Motion compensated predictive coding
KR20020076196A (ko) 부호화된 비디오 신호들을 복호하고 동시에 포맷감소시키는 방법
US6931066B2 (en) Motion vector selection based on a preferred point
KR0175352B1 (ko) 8x8 블럭과 2개의 4x8 블럭을 처리하는 이산여현 변환회로
JP3698501B2 (ja) 動きベクトル検出装置
JP2983170B2 (ja) 動きベクトル探索方法および探索装置
US6560286B1 (en) Field frame motion design for digital video decoder
JP2868441B2 (ja) 動きベクトル探索方法および探索装置
JPH0785287A (ja) 予測符号化装置およびその復号装置
KR0174873B1 (ko) 이산 여현 변환기

Legal Events

Date Code Title Description
R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

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

Free format text: PAYMENT UNTIL: 20080825

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20090825

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20100825

Year of fee payment: 10

EXPY Cancellation because of completion of term
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100825

Year of fee payment: 10