JP3667105B2 - 動きベクトル検出方法及びその方法を実施する装置 - Google Patents
動きベクトル検出方法及びその方法を実施する装置 Download PDFInfo
- Publication number
- JP3667105B2 JP3667105B2 JP22994998A JP22994998A JP3667105B2 JP 3667105 B2 JP3667105 B2 JP 3667105B2 JP 22994998 A JP22994998 A JP 22994998A JP 22994998 A JP22994998 A JP 22994998A JP 3667105 B2 JP3667105 B2 JP 3667105B2
- Authority
- JP
- Japan
- Prior art keywords
- dimensional
- image
- block
- motion vector
- dct
- 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 - Fee Related
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/40—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video transcoding, i.e. partial or full decoding of a coded input stream followed by re-encoding of the decoded output stream
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Television Signal Processing For Recording (AREA)
- Image Analysis (AREA)
Description
【発明の属する技術分野】
本発明は、映像信号の圧縮符号化に用いる動きベクトルを検出する方法と、それを実施する装置に関し、特に、高速且つ高精度で動きベクトルを検出することを可能にするものである。
【0002】
【従来の技術】
近年、デジタル映像信号を扱う機器が増加し、また、それらの機器で扱うデジタル映像信号のデータ量を削減するための種々の圧縮符号化方式が定められている。
【0003】
そうした方式の一つであるMPEG1やMPEG2は、コンピュータで利用する映像信号に多く用いられている。この方式では、DCT(離散コサイン変換)によるフレーム内の空間的な冗長度の削減と、動き補償によるフレーム間の時間的な冗長度の削減とを組み合わせて、画像データが圧縮される。
【0004】
なお、MPEG1については「ISO/IEC 11172-2 "Information technology - Coding of moving pictures and associated audio for digital strage media at up to about 1,5Mbit/s - Part 2: Video"」、MPEG2については「ISO/IEC 13818-2 "Information technology - Generic coding of moving Pictures and associated audio information - Part 2: Video"」にその内容が詳しく説明されている。
【0005】
この動き補償による冗長度の削減は、現在のフレーム画像の対象ブロックを符号化する場合に、過去のフレーム画像から、そのブロックと最も相関度が大きいブロック(相関度最大ブロック)を探し出し、対象ブロック位置から相関度最大ブロック位置までの動きベクトルと、相関度最大ブロック及び対象ブロックの間の画像データの差分データとを求めて符号化することにより、データ量の削減を図るものである。MPEGでは、マクロブロック(2×2ブロック)の単位でこの動きベクトルの検出が行なわれる。
【0006】
この動き予測の処理における演算量は、符号化の演算量の相当部分を占めている。
【0007】
従来の符号化装置は、図7に示すように、非圧縮画像71から動きベクトルを検出する動きベクトル検出部72と、検出された動きベクトルを用いてMPEG方式の圧縮画像79を生成するエンコーダ部78とを備えており、動きベクトル検出部72は、非圧縮画像71からブロックを順番に読み出すブロック読出し手段74と、エンコーダ部78のデコード手段92でデコードされた予測画像を記憶するフレームメモリ75と、ブロック読出し手段74で読み出された対象ブロックとフレームメモリ75に記憶された予測画像とのマッチングを取り、動きベクトルを検出するマッチング手段76と、マッチング手段76で検出された動きベクトルをエンコーダ部78に出力する動きベクトル出力手段77と、ブロック読出し手段74及びマッチング手段76の動作を制御する動きベクトル検出部制御手段73とを具備し、また、エンコーダ部78は、非圧縮画像71及び動きベクトルから圧縮画像79を生成するエンコードカーネル91と、圧縮画像79をデコードしてフレームメモリ75に書き込むための予測画像を生成するデコード手段92とを具備している。
【0008】
この装置では、ブロック読出し手段74が、ベクトル検出部制御手段73の制御を受けて、非圧縮画像71から、図8に示す、現在フレーム81の対象ブロック82を順番に読み出し、読み出されたブロックがマッチング手段76に出力される。
【0009】
また、エンコーダ部78のデコード手段92は、エンコードカーネル91によりDCT、量子化された画像をデコードし、このデコードされた画像が予測画像としてフレームメモリ75に書き込まれる。
【0010】
現在フレーム81の対象ブロック82が入力したマッチング手段76は、フレームメモリ75に記憶されている予測画像83を読出し、動きベクトル検出部制御手段73によって範囲が指定された探索領域84の全域に渡って、探索領域84の画像データと対象ブロック82の画像データとのマッチングを取り、探索領域84の中から、対象ブロック82と最も相関度が大きい相関度最大ブロック85を検出し、対象ブロック82の位置から相関度最大ブロック85の位置までの方向及び長さを表す動きベクトル86を算出する。
【0011】
動きベクトル出力手段77は、マッチング手段76が求めた動きベクトル86をエンコーダ部78に出力する。
【0012】
エンコーダ部78は、この動きベクトルに基づいて、入力する非圧縮画像71から、フレームメモリ75に蓄えられている予測画像の相関度最大ブロック85と現在フレーム81の対象ブロック82との画像データの差分を算出する。そして、その差分データにDCT変換、量子化、可変長符号化を施し、動きベクトルなどの情報とともにMPEGデータ79を生成して出力する。
【0013】
この装置では、動きベクトルを検出するため、探索領域の全域に渡って全探索を実施しているが、この検出を高速化するために、高速化アルゴリズムを使用して、図9(a)に示すように、対象ブロックと探索領域とのマッチングを、探索領域の画素の1画素置きに実施したり、図9(b)に示すように、対象ブロックからサンプリングしたデータを用いて探索領域とのマッチングを取ったり、図9(c)に示すように、それらを組み合わせたり、探索領域の数画素置きにマッチングを実施するなど、図9(a)(b)の方法をアレンジした方法なども行なわれている。
【0014】
また、圧縮符号化方式には、この他、デジタルビデオカメラなどのデジタルビデオ機器向けの規格であるDV方式が知られている。このDV方式は、1996年に制定されたビデオカセットレコーダ向けの規格である、「Specifications of Consumer-Use Digital VCRs (HD Digital VCR Conference, 1996)」に準拠した規格であり、ブロック単位でDCT(離散コサイン変換)が施され、この処理によるフレーム内の空間的な冗長度の削減により、画像圧縮が図られている。
【0015】
DV方式で圧縮された映像データのフレーム当たりの符号量は、標準的なMPEG2方式の映像データの6倍程度に達する。そのため、ネットワークを通じて映像信号を伝送する場合には、MPEGデータの方が適している。しかし、DVデータは、フレームごとに独立しているため、フレーム単位のカット&ペーストなどの映像の編集が容易であり、また、符号量が多い分、画質が優れているという利点がある。
【0016】
そこで、本発明者等を含むグループでは、デジタルビデオカメラで撮影したDVデータの動画を編集し、映像信号の圧縮フォーマットをMPEG方式に変換して、パソコン端末などに配信するシステムを開発し、実用化している。
【0017】
このシステムでは、映像信号変換装置を用いてDVデータをMPEGデータに変換しているが、こうした変換では、一般的に、DV方式の映像データを復号して非圧縮のフレーム画像を生成し、次いで、非圧縮映像信号をMPEG方式で圧縮符号化する処理が行なわれる。
【0018】
このとき、動き予測の処理としては、図7の機構の下で、図8または図9で説明した各方法が行なわれている。
【0019】
【発明が解決しようとする課題】
しかし、全探索による動きベクトルの検出は、演算量が膨大になり、処理速度が遅いという問題点がある。
【0020】
また、高速化アルゴリズムの下に、探索領域や対象ブロックの画像データの一部を省略して行なう動きベクトルの検出は、解の精度が落ち、画質が低下するという問題点がある。
【0021】
これは、非圧縮画像では全ての画素が同じ重さの情報量を持つからであり、動きベクトルの検出に使用する画素を減らして演算量を削減した場合には、その分、動きベクトルの検出精度が低下し、画質の劣化が避けられない。即ち、検出精度と検出速度とはトレードオフの関係にある。
【0022】
本発明は、こうした従来の問題点を解決するものであり、高速且つ高精度で動きベクトルを検出することができる動きベクトル検出方法を提供し、その方法を実施する装置を提供することを目的としている。
【0023】
【課題を解決するための手段】
そこで、本発明の動きベクトル検出方法では、画像フレームのブロックごとにDCT変換されている映像信号のブロックから直流成分を含む1次元DCT画像を取り出し、この1次元DCT画像を逆変換して1次元非圧縮画像を生成する1次元非圧縮画像生成手順により、画像フレームの動き検出対象領域のブロックから、直流成分を含むx方向1次元DCT画像を取り出してx方向1次元非圧縮画像を生成するとともに、直流成分を含むy方向1次元DCT画像を取り出してy方向1次元非圧縮画像を生成し、動き検出対象領域のブロックのx方向1次元非圧縮画像と、探索領域のブロックから直流成分を含むx方向1次元DCT画像を取り出して1次元非圧縮画像生成手順で生成したx方向1次元非圧縮画像との相関度を算出し、探索領域に含まれるブロックの中から前記相関度が最も高いブロックを求め、動き検出対象領域のブロックの位置から探索領域で求めたブロックの位置までのx方向の変位を動きベクトルのx成分とし、動き検出対象領域のブロックのy方向1次元非圧縮画像と、探索領域のブロックから直流成分を含むy方向1次元DCT画像を取り出して1次元非圧縮画像生成手順で生成したy方向1次元非圧縮画像との相関度を算出し、探索領域に含まれるブロックの中から前記相関度が最も高いブロックを求め、動き検出対象領域のブロックの位置から探索領域で求めたブロックの位置までのy方向の変位を動きベクトルのy成分とし、このx成分とy成分とを合成して動きベクトルを定めるようにしている。
【0024】
この方法では、情報量が集中している部分の画像データを動きベクトルの検出に使用しているため、演算量の削減量が多いにも拘わらず、2次元画像による全探索と殆ど変わらない検出精度を得ることができる。
【0027】
また、本発明の動きベクトル検出装置では、画像フレームのブロックごとにDCT変換されている映像信号のブロックから、直流成分を含むx方向1次元DCT画像とy方向1次元DCT画像とを抽出するDCT成分抽出手段と、x方向1次元DCT画像を逆変換してx方向1次元非圧縮画像を生成するx方向1次元逆DCT手段と、y方向1次元DCT画像を逆変換してy方向1次元非圧縮画像を生成するy方向1次元逆DCT手段と、生成されたx方向1次元非圧縮画像を順番に記憶するx方向1次元画像フレームメモリと、 生成されたy方向1次元非圧縮画像を順番に記憶するy方向1次元画像フレームメモリと、 動き検出対象領域のブロックから生成されたx方向1次元非圧縮画像と探索領域のブロックから生成されたx方向1次元非圧縮画像との相関度を算出し、探索領域に含まれるブロックの中から相関度が最も高いブロックを求め、動き検出対象領域のブロックの位置から探索領域で求めたブロックの位置までのx方向の変位を動きベクトルのx成分とし、動き検出対象領域のブロックから生成されたy方向1次元非圧縮画像と探索領域のブロックから生成されたy方向1次元非圧縮画像との相関度を算出し、探索領域に含まれるブロックの中から相関度が最も高いブロックを求め、動き検出対象領域のブロックの位置から探索領域で求めたブロックの位置までのy方向の変位を動きベクトルのy成分とし、動きベクトルのx成分及びy成分を合成して動きベクトルを求めるマッチング手段とを設けている。
【0029】
この装置では、少ない演算量で、2次元画像による全探索と変わらない検出精度を得ることができる。
【0035】
【発明の実施の形態】
本発明の請求項1に記載の発明は、映像信号の圧縮符号化に用いる動きベクトルの検出方法において、画像フレームのブロックごとにDCT変換されている映像信号のブロックから直流成分を含む1次元DCT画像を取り出し、この1次元DCT画像を逆変換して1次元非圧縮画像を生成する1次元非圧縮画像生成手順により、画像フレームの動き検出対象領域のブロックから、直流成分を含むx方向1次元DCT画像を取り出してx方向1次元非圧縮画像を生成するとともに、直流成分を含むy方向1次元DCT画像を取り出してy方向1次元非圧縮画像を生成し、動き検出対象領域のブロックのx方向1次元非圧縮画像と、探索領域のブロックから直流成分を含むx方向1次元DCT画像を取り出して1次元非圧縮画像生成手順で生成したx方向1次元非圧縮画像との相関度を算出し、探索領域に含まれるブロックの中から前記相関度が最も高いブロックを求め、動き検出対象領域のブロックの位置から探索領域で求めたブロックの位置までのx方向の変位を動きベクトルのx成分とし、動き検出対象領域のブロックのy方向1次元非圧縮画像と、探索領域のブロックから直流成分を含むy方向1次元DCT画像を取り出して1次元非圧縮画像生成手順で生成したy方向1次元非圧縮画像との相関度を算出し、探索領域に含まれるブロックの中から前記相関度が最も高いブロックを求め、動き検出対象領域のブロックの位置から探索領域で求めたブロックの位置までのy方向の変位を動きベクトルのy成分とし、このx成分とy成分とを合成して動きベクトルを定めるようにしたものであり、情報量が集中している部分の画像データを選択して使用しているため、2次元画像による全探索と殆ど変わらない検出精度を得ながら、演算量を削減することができる。
【0037】
請求項2に記載の発明は、1次元非圧縮画像生成手順において、x方向nピクセル、y方向nピクセルのn×n行列(nは自然数)から成るブロックから、直流成分を含む1×mピクセル(mはn以下の自然数)のDCT係数を取り出し、逆変換してx方向1次元非圧縮画像を生成し、前記ブロックから直流成分を含むm×1ピクセルのDCT係数を取り出し、逆変換してy方向1次元非圧縮画像を生成するようにしたものであり、高速化に重点を置く場合に、こうした方法を取ることができる。
【0044】
請求項3に記載の発明は、探索領域のブロックから生成したx方向1次元非圧縮画像の各々から、それらの中間に位置するx方向1次元非圧縮画像を補間し、探索領域のブロックから生成したy方向1次元非圧縮画像の各々から、それらの中間に位置するy方向1次元非圧縮画像を補間し、補間したx方向1次元非圧縮画像及びy方向1次元非圧縮画像を対象に含めて相関度を算出するようにしたものであり、動き予測の精度を高め、高画質化を実現することができる。
【0045】
請求項4に記載の発明は、探索領域に含まれるブロックの中からx方向1次元非圧縮画像またはy方向1次元非圧縮画像の相関度が最も高いブロックを求めるとき、後から求めるブロックの探索領域上の探索範囲を、先に求めたブロックの周辺に限定するようにしたものであり、一方の成分の動きベクトル検出における検出結果を、他方の成分の検出の際に利用することにより、探索範囲を狭めることができ、高速に動きベクトルを求めることができる。
【0049】
請求項5に記載の発明は、映像信号の圧縮符号化に用いる動きベクトルを検出する動きベクトル検出装置において、画像フレームのブロックごとにDCT変換されている映像信号のブロックから、直流成分を含むx方向1次元DCT画像とy方向1次元DCT画像とを抽出するDCT成分抽出手段と、x方向1次元DCT画像を逆変換してx方向1次元非圧縮画像を生成するx方向1次元逆DCT手段と、y方向1次元DCT画像を逆変換してy方向1次元非圧縮画像を生成するy方向1次元逆DCT手段と、生成されたx方向1次元非圧縮画像を順番に記憶するx方向1次元画像フレームメモリと、生成されたy方向1次元非圧縮画像を順番に記憶するy方向1次元画像フレームメモリと、動き検出対象領域のブロックから生成されたx方向1次元非圧縮画像と探索領域のブロックから生成されたx方向1次元非圧縮画像との相関度を算出し、探索領域に含まれるブロックの中から相関度が最も高いブロックを求め、動き検出対象領域のブロックの位置から探索領域で求めたブロックの位置までのx方向の変位を動きベクトルのx成分とし、動き検出対象領域のブロックから生成されたy方向1次元非圧縮画像と探索領域のブロックから生成されたy方向1次元非圧縮画像との相関度を算出し、探索領域に含まれるブロックの中から相関度が最も高いブロックを求め、動き検出対象領域のブロックの位置から探索領域で求めたブロックの位置までのy方向の変位を動きベクトルのy成分とし、動きベクトルのx成分及びy成分を合成して動きベクトルを求めるマッチング手段とを設けたものであり、請求項2の方法を実施することができる。
【0056】
以下、本発明の実施の形態について、図面を用いて説明する。
【0057】
(第1の実施形態)
第1の実施形態の動きベクトル検出方法は、DV方式で符号化された映像信号をMPEG方式の映像信号に変換する映像信号変換装置の中で実施されている。この映像信号変換装置は、図2に示すように、入力するDVデータ21を保持する、フレームメモリから成る入力手段22と、DVデータを非圧縮の映像信号に復号するDVデコード部23と、ブロックごとにDCT変換されているDVデータを利用して動きベクトルを検出する動きベクトル検出部24と、検出された動きベクトルを用いて非圧縮映像信号をMPEGデータに符号化するエンコーダ部25と、符号化されたMPEGデータ27を出力する出力手段26とを備えている。
【0058】
また、動きベクトル検出部24は、図1に示すように、入力手段(フレームメモリ)22からDCTブロックを順番に読み出すDCTブロック読出し手段11と、各DCTブロックからx方向及びy方向の各1次元DCT画像を抽出するDCT成分抽出手段12と、y方向の1次元DCT画像に対して逆DCTを施すy方向1次元逆DCT手段13と、x方向の1次元DCT画像に対して逆DCTを施すx方向1次元逆DCT手段14と、デコードされたy方向の1次元画像を順番に記憶する1次元画像(y)フレームメモリ15と、デコードされたx方向の1次元画像を順番に記憶する1次元画像(x)フレームメモリ16と、デコードされた対象ブロックの1次元画像とそれに対応する過去フレームの探索領域の1次元画像とのマッチングを取り、動きベクトルを検出するマッチング手段17と、マッチング手段で求めた動きベクトルをエンコーダ部25に出力する動きベクトル出力手段18と、DCTブロック読出し手段11、DCT成分抽出手段12及びマッチング手段17の動作を制御する動きベクトル検出部制御手段19とを備えている。
【0059】
この映像信号変換装置の入力手段22には、各ブロックごとにDCT変換されているDV画像21が入力し、このDV画像は、入力手段22を介してDVデコード部23と動きベクトル検出部24とに入力する。DVデコード部23は、DV画像を非圧縮画像にデコードしてエンコーダ部25に送る。また、動きベクトル検出部24は、DV画像を用いて、後述する方法により動きベクトルを検出し、エンコーダ部25に送る。エンコーダ部25では、送られて来る非圧縮画像と動きベクトルとを用いてMPEGエンコードを行ない、出力手段26を介してMPEGストリームを出力する。
【0060】
動きベクトル検出部24は、次のような動作で動きベクトルを検出する。
【0061】
動きベクトル検出部制御手段19は、DCTブロック読出し手段11、DCT成分抽出手段12及びマッチング手段17の各々がフレーム中のどのブロックを処理しているかを把握し、各手段の動作を制御する。
【0062】
DCTブロック読出し手段11は、入力手段(フレームメモリ)22からDCTブロックを順番に読み出す。
【0063】
DCT成分抽出手段12は、図3に示すように、読み出された各DCTブロック31に対して、8×8の要素の内、第1行の要素だけが1でその他は0のマスク32を掛け、1×8ピクセルのDCT係数より成るx方向の1次元DCT画像を生成してx方向1次元逆DCT手段14に出力し、また、読み出された各DCTブロック31に対して、8×8の要素の内、第1列の要素だけが1でその他は0のマスク33を掛け、8×1ピクセルのDCT係数より成るy方向の1次元DCT画像を生成してy方向1次元逆DCT手段13に出力する。
【0064】
x方向1次元逆DCT手段14は、入力したx方向1次元DCT画像に対して、1次元逆DCTを施し、得られたx方向1次元画像34を1次元画像(x)フレームメモリ16に出力する。また、y方向1次元逆DCT手段13は、入力したy方向1次元DCT画像に対して、1次元逆DCTを施し、得られたy方向1次元画像35を1次元画像(y)フレームメモリ15に出力する。
【0065】
1次元画像フレームメモリ15、16は、デコードされた1次元画像を順番に記憶し、フレーム単位で蓄積する。この1次元画像フレームメモリ15、16は、過去数フレーム分の1次元画像を貯えることができる。
【0066】
マッチング手段17は、1次元画像(x)フレームメモリ16から、対象ブロックのx方向1次元画像と、それに対応する過去フレームの探索領域におけるx方向1次元画像とを読み出し、それらのマッチングを取る。このとき、MPEGではマクロブロック単位で動きベクトルが検出されるため、対象ブロックとして二ブロックを合わせた1×16のx方向1次元画像が読み出される。また、探索領域の範囲は動きベクトル検出部制御手段19から指示される。
【0067】
このマッチングで動きベクトルを検出する方法を図4に示している。
【0068】
現フレーム41のDCT画像に含まれる対象ブロック42のDCT係数からx方向1次元DCT画像が抽出され、これに1次元逆DCTが施され、こうして得られたx方向1次元非圧縮画像を、図4では45で表している。
【0069】
また、これまでに行なわれた同様の処理で得られたブロックごとのx方向1次元非圧縮画像は、1次元画像(x)フレームメモリ15にフレーム単位で纏められており、これが、DCT画像の過去フレーム43に対応するx方向1次元非圧縮画像となる。この内、探索領域のx方向1次元非圧縮画像を44で表している。
【0070】
マッチングは、対象ブロック42のx方向1次元非圧縮画像45を、探索領域のx方向1次元非圧縮画像44の各行の上を1ピクセル分ずつx方向に移動し、そのときの両者の間の画像データの差分(SAD:Sum of Absolute Difference)を演算することによって行なわれ、そのSADが最も小さい位置が検出される。
【0071】
いま、46の位置でSADが最小であったとすると、対象ブロック42のx方向1次元非圧縮画像45の位置から46の位置までのx方向成分が動きベクトルx成分47として検出される。
【0072】
マッチング手段17は、また、1次元画像(y)フレームメモリ15から、対象ブロックのy方向1次元画像と、それに対応する過去フレームの探索領域におけるy方向1次元画像とを読み出し、同じように、それらのマッチングを取り、動きベクトルy成分を求める。
【0073】
こうして求めた動きベクトルx成分と動きベクトルy成分とを合成したものが動きベクトルとなる。
【0074】
動きベクトル出力手段18は、マッチング手段17が求めた動きベクトルをエンコーダ部25に出力する。
【0075】
また、探索領域の1次元非圧縮画像については、補間画像を生成して加えることにより、動きベクトルの検出精度を高めることができる。例えば、x方向1次元非圧縮画像の場合では、図4に示すように、それぞれ、2本のx方向1次元非圧縮画像からその中間の補間画像48を生成して、探索領域のx方向1次元非圧縮画像44に加える。こうして、x方向1次元非圧縮画像をy方向に補間することにより、動きベクトルx成分を高精度に求めることができる。
【0076】
また、y方向についても同様であり、探索領域のy方向1次元非圧縮画像をx方向に補間することにより、動きベクトルy成分を高精度に求めることができる。
【0077】
また、先の説明では、DCT成分抽出手段12が、DCTブロックから、1×8ピクセルのDCT係数より成るx方向1次元DCT画像と、8×1ピクセルのDCT係数より成るy方向1次元DCT画像とを抽出しているが、高速検出の場合には、1×8、8×1の代わりに、1×6、6×1、あるいは1×4、4×1などを抽出するようにしてもよい。なお、DCT成分抽出手段12で抽出するサイズの指定は動きベクトル検出部制御手段19によって行なわれる。
【0078】
このように、この実施形態の動きベクトル検出では、DCT変換された映像信号から得られる1次元非圧縮画像を用いて動きベクトルを検出している。この動き予測では、2次元の領域から各方向の成分(1次元)を抽出して、動き探索を行なっているため、2次元の領域を使って行なう全探索と同じ精度を得ることができる。一方、この検出に要する演算量は、全探索に比べて、大幅に削減することができる。
【0079】
(第2の実施形態)
第2の実施形態では、粗い精度で、且つ高速度で動きベクトルを検出する動きベクトル検出方法と、それを実施する装置について説明する。この方法は、第1の実施形態と組み合わせることで、動きベクトルの検出を高速化することができる。ここでは、この装置が、図2の映像信号変換装置に組み込まれて使用される場合について説明する。
【0080】
この動きベクトル検出装置は、図5に示すように、入力手段(フレームメモリ)22からDCTブロックを順番に読み出すDCTブロック読出し手段51と、各DCTブロックから4×4ピクセルサイズの2次元DCT画像を抽出するDCT成分抽出手段52と、抽出された2次元DCT画像に4×4ピクセルサイズの逆DCTを施して非圧縮画像を生成する逆DCT手段53と、デコードされた非圧縮画像を順番に記憶する低解像度フレームメモリ54と、デコードされた対象ブロックの非圧縮画像とそれに対応する過去フレームの探索領域における非圧縮画像とのマッチングを取り、動きベクトルを検出するマッチング手段55と、マッチング手段55で求めた動きベクトルをエンコーダ部25に出力する動きベクトル出力手段56と、DCTブロック読出し手段51、DCT成分抽出手段52及びマッチング手段55の動作を制御する動きベクトル検出部制御手段57とを備えている。
【0081】
この装置の動きベクトル検出部制御手段57は、DCTブロック読出し手段51、DCT成分抽出手段52及びマッチング手段55の各々がフレーム中のどのブロックを処理しているかを把握し、各手段の動作を制御する。
【0082】
DCTブロック読出し手段51は、入力手段(フレームメモリ)22からDCTブロックを順番に読み出す。
【0083】
DCT成分抽出手段52は、読み出された各DCTブロックから4×4ピクセルサイズの2次元DCT画像を抽出して逆DCT手段53に出力し、逆DCT手段53は、入力した2次元DCT画像に逆DCTを施して、図6(a)に示すように、低解像度の非圧縮画像を生成する。
【0084】
この低解像度画像は、マッチング手段55と低解像度フレームメモリ54とに出力され、低解像度フレームメモリ54は、デコードされた低解像度画像を順番に記憶し、フレーム単位で蓄積する。この低解像度フレームメモリ54は、過去数フレーム分の低解像度画像を貯えることができる。
【0085】
マッチング手段55は、対象ブロックの低解像度画像が入力すると、それに対応する過去フレームの探索領域における低解像度画像を低解像度フレームメモリ54から読み出し、それらのマッチングを取る。
【0086】
このマッチングで動きベクトルを検出する方法を図6(b)に示している。
【0087】
現フレーム61のDCT画像に含まれる対象ブロック62のDCT係数から4×4ピクセルのDCT画像を抽出し、これに逆DCTを施して得られた低解像度非圧縮画像を64で表している。
【0088】
また、これまでに行なわれた同様の処理で得られたブロックごとの低解像度非圧縮画像が、低解像度フレームメモリ54にフレーム単位で纏められており、これが、DCT画像の過去フレーム63に対応する低解像度非圧縮画像となる。この内、探索領域の低解像度非圧縮画像を65で表している。
【0089】
マッチングは、対象ブロック62の低解像度画像64と、探索領域の各ブロックの低解像度画像との間で画像データのSADを演算することによって行なわれ、そのSADが最も小さい探索領域上の位置を求め、対象ブロック62の低解像度画像64の位置からSADが最小の探索領域上の位置に至る動きベクトル66が検出される。
【0090】
動きベクトル出力手段56は、マッチング手段55が求めた動きベクトルをエンコーダ部25に出力する。
【0091】
なお、先の説明では、DCT成分抽出手段52が4×4ピクセルサイズの2次元DCT画像を抽出する場合について説明したが、2×2の2次元DCT画像を抽出するようにしてもよい。
【0092】
このように、この動きベクトル検出では、DCT変換された映像信号から低周波成分のDCT画像だけを取り出して逆変換し、得られた非圧縮画像を用いて動きベクトルを検出している。そのため、マッチングの演算量が少なくて済み、全探索を行なう場合に比べて、凡そ1/32の時間で動きベクトルを検出することができる。
【0093】
しかし、この方法では、動きベクトルの方向や長さを、細かいステップで検出することができず、例えば4×4ピクセルのブロックを用いた場合では、全探索の2倍のステップ幅でしか動きベクトルを把握することができない。
【0094】
従って、この方法は、動きベクトルの探索領域を絞り込むために使用する方が相応しく、この方法で動きベクトルを検出して、動きベクトルの探索領域を限定し、次いで、限定した狭い範囲の探索領域に、全探索や、あるいは第1の実施形態で示した、精度の高い動きベクトル検出方法を適用して、最終的な動きベクトルを検出する。こうすることにより、全体として、精度の高い動きベクトル検出を短時間で実施することが可能となる。
【0095】
(第3の実施形態)
第3の実施形態では、第1の実施形態の方法を、演算量がさらに削減できるように改良した動きベクトル検出方法について説明する。
【0096】
この動きベクトル検出方法が、第1の実施形態と同じ映像信号変換装置(図2)の動きベクトル検出部(図1)において実施される場合について説明する。この方法では、マッチング手段17の動作が第1の実施形態と違っているが、その他の各部の動作は全て同じである。
【0097】
このマッチング手段17の動作を図10により説明する。
【0098】
マッチング手段17は、1次元画像(x)フレームメモリ16から、対象ブロックのx方向1次元画像と、それに対応する過去フレームの探索領域におけるx方向1次元画像とを読み出し、それらのマッチングを取る。このとき、MPEGではマクロブロック単位で動きベクトルが検出されるため、対象ブロックとして二ブロックを合わせた1×16のx方向1次元画像が読み出される。また、探索領域の範囲は動きベクトル検出部制御手段19から指示される。
【0099】
このマッチングで動きベクトルを検出する方法を図10に示している。
【0100】
現フレーム111のDCT画像に含まれる対象ブロック112のDCT係数からx方向1次元DCT画像が抽出され、これに1次元逆DCTが施され、こうして得られたx方向1次元非圧縮画像を、図10では115で表している。
【0101】
また、これまでに行なわれた同様の処理で得られたブロックごとのx方向1次元非圧縮画像は、1次元画像(x)フレームメモリ15にフレーム単位で纏められており、これが、DCT画像の過去フレーム113に対応するx方向1次元非圧縮画像となる。この内、探索領域のx方向1次元非圧縮画像を114で表している。
【0102】
同様に、現フレーム111のDCT画像に含まれる対象ブロック112のDCT係数からy方向1次元DCT画像が抽出され、これに1次元逆DCTが施され、こうして得られたy方向1次元非圧縮画像を、図10では119で表している。
【0103】
また、これまでに行なわれた同様の処理で得られたブロックごとのy方向1次元非圧縮画像は、1次元画像(y)フレームメモリ16にフレーム単位で纏められており、これが、DCT画像の過去フレーム113に対応するy方向1次元非圧縮画像となる。この内、探索領域のy方向1次元非圧縮画像を118で表している。
【0104】
マッチングは、まず、対象ブロック112のx方向1次元非圧縮画像115を、探索領域のx方向1次元非圧縮画像114の各行の上を1ピクセル分ずつx方向に移動し、そのときの両者の間の画像データのSADを演算することによって行なわれ、そのSADが最も小さい位置が検出される。ここまでの動作は第1の実施形態と同じである。
【0105】
いま、116の位置でSADが最小であったとすると、対象ブロック112のx方向1次元非圧縮画像115の位置から116の位置までのx方向成分が動きベクトルx成分117として検出される。そして、マッチング手段17は、116の位置(動きベクトルx成分117、y方向の行数)をマッチング手段17の内部のメモリに一旦格納する。
【0106】
マッチング手段17は、次に、1次元画像(y)フレームメモリ16から、対象ブロックのy方向1次元画像と、過去フレーム探索領域におけるy方向1次元画像とを読み出すが、このとき、探索領域のy方向1次元非圧縮画像118のすべてを読み出して探索領域とするのではなく、探索領域を探索範囲121に絞り込み、この探索範囲121に含まれるy方向1次元画像のみを1次元画像(y)フレームメモリ16から読み出す。
【0107】
この探索範囲121は、動きベクトルx成分検出の際に、マッチング手段17の内部のメモリに保持しておいた116の位置を中心としたある一定の大きさを持つ正方形である。
【0108】
動きベクトルy成分を検出するためのマッチングは、対象ブロック112のy方向1次元非圧縮画像119と探索範囲121内のy方向1次元画像との間でSADを計算することによって行なわれ、そのSADが最も小さい位置が検出される。
【0109】
いま、120の位置でSADが最小であったとすると、対象ブロック112のy方向1次元非圧縮画像119の位置から120の位置までのy方向成分が動きベクトルy成分122として検出される。
【0110】
こうして求めた動きベクトルx成分と動きベクトルy成分とを合成したものが動きベクトルとなる。
【0111】
動きベクトル出力手段18は、マッチング手段17が求めた動きベクトルをエンコーダ部25に出力する。
【0112】
なお、この実施形態では、動きベクトルのx成分を先に検出し、動きベクトルのy成分の検出の際に、x成分の検出結果を利用して探索範囲を狭めているが、この順序を逆にして、動きベクトルのy成分の検出を先に行ない、動きベクトルx成分の検出時に、y成分の検出結果を利用して探索範囲を限定するようにしても同じ効果が得られる。
【0113】
このように、この実施形態の動きベクトル検出では、第1の実施形態と同様に、2次元の領域から各方向の成分(1次元)を抽出して、動き探索を行なっているため、2次元の領域を使って行なう全探索と同じ精度を得ることができる。また、第1の実施形態と違って、動きベクトルの一方の成分を検出する際に得られる位置情報を、他方の成分の検出時に利用して探索範囲を限定しているため、動きベクトル検出に要する演算量を削減することができ、第1の実施形態に比べて高速で動きベクトルを検出することができる。
【0114】
(第4の実施の形態)
第4の実施形態の動きベクトル検出方法は、非圧縮のデジタル映像信号をMPEG方式の映像信号に符号化する場合に適用することができる。
【0115】
この方法を実施する映像符号化装置は、図11に示すように、入力する非圧縮画像131を保持する、フレームメモリから成る入力手段144と、動きベクトル検出を行なう動きベクトル検出部132と、検出された動きベクトルを用いて非圧縮画像信号131をMPEGデータに符号化するエンコーダ(符号化)部139と、予測画像を格納しておくフレームメモリ142と、符号化されたMPEGデータ143を出力する出力手段145とを備えている。
【0116】
また、動きベクトル検出部132は、入力手段(フレームメモリ)144から画像をブロック単位で順番に読み出すブロック読出し手段134と、各ブロックの各行または各列の画素値の和をすべての行または列に対して求めるアキュムレータアレイ135と、アキュムレータアレイ135で計算された1次元画素列を順番に記憶する1次元画像フレームメモリ136と、動き検索対象ブロックの1次元画像とそれに対応する過去フレームの探索領域の1次元画像とのマッチングを取り、動きベクトルを検出するマッチング手段137と、マッチング手段で求めた動きベクトルをエンコーダ部139に出力する動きベクトル出力手段138と、ブロック読み出し手段134及びマッチング手段137の動作を制御する動きベクトル検出部制御手段133とを備えている。
【0117】
この非圧縮画像131は、入力手段144を介してエンコーダ部139と動きベクトル検出部132とに入力する。動きベクトル検出部132は、後述する方法により動きベクトルを検出して、エンコーダ部139に送る。エンコーダ部139では、送られて来る非圧縮画像と動きベクトルとフレームメモリ142に記憶してある予測画像とを用いてMPEGエンコードを行ない、出力手段145を介してMPEGストリームを出力する。
【0118】
動きベクトル検出部132は、次のような動作で動きベクトルを検出する。
【0119】
動きベクトル検出部制御手段133は、ブロック読出し手段134及びマッチング手段137の各々がフレーム中のどのブロックを処理しているかを把握し、各手段の動作を制御する。ブロック読出し手段134は、入力手段(フレームメモリ)144から画像をブロック単位で順番に読み出し、アキュムレータアレイ135へブロックを送る。
【0120】
アキュムレータアレイ135は、図12に示すように、入力されたブロック151に対して、x方向及びy方向に沿ってブロック151内の画素値の和を求め、1次元画像152、153をそれぞれ求める。ブロックの最上行を0行とし、ブロックの最左行を0列としx,yの増加する方向に行、列の番号が増加するものとする。アキュムレータアレイ135内部にはブロック内の全画素を記憶できるレジスタとアキュムレーション後の1次元画像を記憶できるレジスタとを備えている。また、アキュムレータアレイ135は、映像信号の画素に割り当てられたビット幅を一度に加算できるアキュムレータをブロックの1辺に含まれる画素の数だけ有する。
【0121】
アキュムレータアレイ135は、x方向アキュムレーションの際、アキュムレータアレイ135の各アキュムレータがブロックの行を担当し、各行の画素の和を計算し、内部の1次元画像を保持しておくためのレジスタに結果を入れる。続いて、アキュムレータアレイ135は、y方向アキュムレーションの際、アキュムレータアレイ135の各アキュムレータがブロックの列を担当し、各列の画素の和を計算し先ほどと同様に、内部の1次元画像を保持しておくためのレジスタに結果を入れる。
【0122】
こうして、アキュムレータアレイ135は、1次元画像152及び153を得た後、1次元フレームメモリ136にそれらを書き込む。
【0123】
このアキュムレータアレイ135から出力される1次元画像152及び153は、第1の実施形態において1次元逆DCT手段によって得られる1次元画像と本質的に等価なものである。そのことを図13の式を用いて説明する。
【0124】
式(1)は1次元DCTを示す。ここで、fは画素値、Fは変換されたDCT係数、Nは変換する領域、uは1次元方向の位置を示す。また、C(w)は変換時の定数であり、式(2)に示すような値を持つ。
【0125】
式(3)は2次元DCTを示し、式(1)を2次元に拡張したものである。いま、DCT係数の0列目に着目する。DCT係数の0列目とは、式(3)でv=0としたものであり、式(4)のようになる。ただし、式(4)の3行目で式(5)の置き換えを行なっている。式(4)の4行目のG(u)はg(j)を1次元DCTしたものである。DCTにおける定数は本質的な意味を持たないのでここでは考えないことにすると、式(4)から、DCT係数0列目は、gを行方向に関して1次元DCTしたものであると言える。
【0126】
ここで、第1の実施形態のy方向1次元逆DCT手段13によって得られるy方向1次元画像35(図3)に注目すると、このy方向1次元画像35は、式(4)で示されるDCT係数0列目、即ち、F(u,0)を1次元逆DCTしたものである。F(u,0)を1次元逆DCTしたものは、まさにg(j)である。jはブロックの行を表すので、式(5)で表されるg(j)はブロック内の画素値の行ごとの和を取ったものである。
【0127】
以上のことから、第1の実施形態のy方向1次元逆DCT手段13によって得られるy方向1次元画像35とアキュムレータアレイ135が出力する1次元画像152とは本質的に等価であることが分かる。図13では、y方向に関して説明したが同様にしてx方向1次元画像も等価となる。
【0128】
1次元画像フレームメモリ136は、アキュムレータアレイ135から出力された1次元画像を順番に記憶し、フレーム単位で蓄積する。なお、この1次元画像フレームメモリ136は、x方向1次元画像及びy方向1次元画像の両方を蓄えるのに十分な容量を有する。
【0129】
マッチング手段137は、1次元画像フレームメモリ136から、対象ブロックのx方向1次元画像と、それに対応する過去フレームの探索領域におけるx方向1次元画像とを読み出し、それらのマッチングを取る。このとき、MPEGではマクロブロック単位で動きベクトルが検出されるため、対象ブロックとして二ブロックを合わせた1×16のx方向1次元画像が読み出される。また、探索領域の範囲は動きベクトル検出部制御手段133から指示される。
【0130】
このマッチングで動きベクトルのx方向成分を、図4に示す第1の実施形態の検出方法と同じ方法で検出する。同様に、マッチング手段137は、1次元画像フレームメモリ136から、対象ブロックのy方向1次元画像と、それに対応する過去フレームの探索領域におけるy方向1次元画像とを読み出し、それらのマッチングを取り、動きベクトルy方向成分を検出する。このとき、第3の実施形態の検出方法(図10)を採ることもできる。
【0131】
マッチング手段137は、こうして求めた動きベクトルx方向成分と動きベクトルy方向成分とを合成し、動きベクトルを得る。動きベクトル出力手段138は、マッチング手段137が求めた動きベクトルをエンコーダ部139に出力する。
【0132】
このように、この第4の実施形態の動きベクトル検出では、非圧縮映像信号から1次元画像を作成し、その1次元画像を用いて動きベクトルを検出している。この動き予測では、2次元の領域から各方向の代表成分(1次元)を作成して、動き探索を行なっているため、2次元の領域を使って行なう全探索と同じ精度を得ることができる。この第4の実施形態の動きベクトル検出部132のアキュムレータアレイ135が非圧縮画像から作成した1次元画像は、第1の実施形態の1次元逆DCT手段13、14によって得られる1次元画像と同じものであり、第4の実施形態の動きベクトル検出方法は、非圧縮映像の入力に対して、少ない演算量で高精度に動きベクトルを検出することを可能にする。
【0133】
(第5の実施形態)
第5の実施形態の動きベクトル検出方法は、非圧縮のデジタル映像信号をMPEG方式の映像信号に符号化する映像符号化装置に対して、より適合した動きベクトルを与えることができる。
【0134】
この動きベクトル検出では、非圧縮画像から第4の実施形態の方法を用いて対象ブロックの1次元画像を作成し、また、符号化の過程で作成されるDCT画像データから第1の実施形態の方法を用いて過去フレームの探索領域の1次元画像を作成し、これらの1次元画像により動きベクトルを検出している。
【0135】
この映像符号化装置は、図14に示すように、入力する非圧縮画像171を保持する、フレームメモリから成る入力手段184と、動きベクトル検出を行なう動きベクトル検出部172と、検出された動きベクトルを用いて非圧縮画像信号171をMPEGデータに符号化するエンコーダ部179と、予測画像を格納しておくフレームメモリ182と、符号化されたMPEGデータ183を出力する出力手段185とを備えている。
【0136】
エンコーダ部179は、非圧縮画像及び動きベクトルから圧縮画像を生成するエンコードカーネル180と、圧縮画像をデコードしてフレームメモリ182に書き込むための予測画像を生成するデコード手段181とを具備し、また、動きベクトル検出部172は、入力手段(フレームメモリ)184から画像をブロック単位で順番に読み出すブロック読出し手段174と、各ブロックの各行または各列の画素値の和をすべての行または列に対して求めるアキュムレータアレイ175と、エンコーダ部179より出力されるDCTブロックからx方向及びy方向の各1次元DCT画像を抽出するDCT成分抽出手段186と、1次元DCT画像に対して逆DCTを施す1次元逆DCT手段187と、デコードされた1次元画像を予測画像として1次元画像フレームメモリ176に書き込む予測画像生成手段188と、1次元予測画像を順番に記憶する1次元画像フレームメモリ176と、動き検索対象ブロックの1次元画像とそれに対応する過去フレームの探索領域の1次元予測画像とのマッチングを取り、動きベクトルを検出するマッチング手段177と、マッチング手段177で求めた動きベクトルをエンコーダ部179に出力する動きベクトル出力手段178と、ブロック読み出し手段174、マッチング手段177及び予測画像生成手段188の動作を制御する動きベクトル検出部制御手段173とを具備している。
【0137】
このブロック読出し手段174、アキュムレータアレイ175、マッチング手段177、1次元画像フレームメモリ176及び動きベクトル出力手段178は、第4の実施形態と同じものであり、DCT成分抽出手段186及び1次元逆DCT手段187は、第1の実施形態と同じものである。
【0138】
この非圧縮画像171は、入力手段184を介してエンコーダ部179と動きベクトル検出部172とに入力する。動きベクトル検出部172は、後述する方法により動きベクトルを検出し、エンコーダ部179に送る。エンコーダ部179では、エンコードカーネル180が送られて来る非圧縮画像と動きベクトルとフレームメモリ182に記憶してある予測画像とを用いてMPEGエンコードを行ない、出力手段185を介してMPEGストリームを出力する。
【0139】
まず、エンコーダ部179の動作について図15を用いて説明する。エンコーダ部179のエンコーダカーネル192は、減算器194、DCT手段195、量子化手段196、可変長符号化手段197、及び動き情報符号化手段198を備え、また、デコード手段193は、逆量子化手段199、逆DCT手段2000、及び加算器2001を備えている。また、図15の非圧縮画像190、フレームメモリ2002、動きベクトル検出部2003、及びMPEGストリーム2004は図14と同じものである。
【0140】
動きベクトル検出部2003は、非圧縮画像190のブロックに対して動き検出を行ない、動きベクトルが検出できたときは検出した動きベクトルをエンコーダカーネル192へ送る。図示していないエンコーダカーネル制御部は、動きベクトルがあるブロックに対しては減算器194及び加算器2001のステートをオンに、動きベクトルが無いブロックに対しては減算器194及び加算器2001のステートをオフにセットする。
【0141】
DCT手段195は、減算器194のステートがオンの時は、非圧縮画像ブロックと予測画像との差分を得る。また、減算器194のステートがオフの時は、非圧縮画像ブロックを得る。DCT手段195は、受け取ったブロックに対して二次元DCTを施し量子化手段196へ出力する。量子化手段196は、受け取ったDCTブロックに対して量子化を施し可変長符号化手段及び逆量子化手段199へ出力する。逆量子化手段199は受け取った量子化データを逆量子化し、逆DCT手段2000へ出力する。逆DCT手段2000は受け取ったDCTブロックに対して逆DCTを施し、加算器2001のステートがオンの時は、フレームメモリ2002から予測画像を読み出し、出力を加算した後、次のフレームの予測画像としてフレームメモリ2002の所定の位置へ書き込む。また、加算器2001のステートがオフの時は、逆DCT手段2000は出力をそのままフレームメモリ2002の所定の位置へ書き込む。
【0142】
デコード手段193は、動きベクトル検出部2003で予測画像による動きベクトル検出が行なえるように、逆量子化手段199の出力であるDCTブロックを動きベクトル検出手段2003に送る。また、それと同時に図示していないエンコーダカーネル制御部が、そのブロックに動きベクトルが存在するか否かという情報を動きベクトル検出手段2003に送る。
【0143】
動きベクトル検出部172は、次のような動作で動きベクトルを検出する。
【0144】
動きベクトル検出部制御手段173は、ブロック読出し手段174とマッチング手段177の各々がフレーム中のどのブロックを処理しているかを把握し、各手段の動作を制御する。また、動きベクトル検出部制御手段173は、エンコーダ部179から動きベクトルの存在情報を得て、予測画像生成手段188に通知する。
【0145】
ブロック読出し手段174は、入力手段(フレームメモリ)184から画像をブロック単位で順番に読み出し、アキュムレータアレイ175へブロックを送る。アキュムレータアレイ175は、入力されたブロックに対して、x方向及びy方向に沿ってブロック内の画素値の和を求め、1次元画像をそれぞれ求める。
【0146】
DCT成分抽出手段186は、デコード手段181からデコード中間データであるDCTブロックを受け取り、そのDCTブロックの最上行及び最左列のDCT成分を抽出し、1次元逆DCT手段187に出力する。1次元逆DCT手段187は、抽出された各々の1次元データに対して1次元逆DCTを施し予測画像生成手段188に出力する。予測画像生成手段188は、動きベクトル検出部制御手段173から通知された動きベクトル存在情報に基づき、もしそのブロックが動き補償されていれば、1次元画像フレームメモリ176から相当する1次元予測画像を読み出し、1次元逆DCT手段187の出力に足し合わせ、次のフレームの予測画像として1次元画像フレームメモリ176の所定の位置へ書き込む。また、もしそのブロックが動き補償されていなければ、予測画像生成手段188は、1次元逆DCT手段187の出力をそのまま1次元画像フレームメモリ176の所定の位置へ書き込む。なお、この1次元画像フレームメモリ176は、x方向1次元画像とy方向1次元画像の両方を数フレーム分、蓄えるのに十分な容量を有する。
【0147】
マッチング手段177は、1次元アキュムレータアレイ175によって求められた対象ブロックのx方向1次元画像と、1次元画像フレームメモリ176から読み出した対応する過去フレームの探索領域におけるx方向1次元予測画像とを用いてマッチングを取る。このとき、MPEGではマクロブロック単位で動きベクトルが検出されるため、対象ブロックとして二ブロックを合わせた1×16のx方向1次元画像が読み出される。また、探索領域の範囲は動きベクトル検出部制御手段173から指示される。
【0148】
このマッチングで動きベクトルのx方向成分を検出する方法は、図4に示す第1の実施形態の検出方法と同じである。同様に、マッチング手段177は、1次元アキュムレータアレイ175によって求められた対象ブロックのy方向1次元画像と、1次元画像フレームメモリ176から読み出した対応する過去フレームの探索領域におけるy方向1次元予測画像とを用いてマッチングを取り、動きベクトルy方向成分を検出する。このとき、第3の実施形態の方法を採っても良い。
【0149】
マッチング手段177は、こうして求めた動きベクトルx方向成分と動きベクトルy方向成分とを合成し、動きベクトルとする。動きベクトル出力手段178は、マッチング手段177が求めた動きベクトルをエンコーダ部179に出力する。
【0150】
このように、この実施形態の動きベクトル検出では、非圧縮映像信号から1次元画像を作成して、それを動きベクトル検出参照ブロックとし、また、MPEGエンコーダ部内のデコード手段のデコード中間データを用いて探索領域の1次元予測画像を作成し、両者のマッチングにより動きベクトルを検出している。
【0151】
この動き予測では、2次元の領域から各方向の代表成分(1次元)を作成して、動き探索を行なっているため、2次元の領域を使って行なう全探索と同じ精度を得ることができる。
【0152】
また、第4の実施形態では、動きベクトルの検出を行なう探索領域の1次元画像を原画像から求めているが、第5の実施形態の動きベクトル検出方法では、エンコーダ部内で圧縮データをデコードし、それを基に1次元予測画像を作成し、これを動き検出に用いているため、エンコーダ部でのブロック差分の画素値を小さく抑えることが可能となり、圧縮効率及び画質の向上が可能となる。
【0153】
また、第5の実施形態の動きベクトル検出方法では、1次元予測画像を作成するのに、エンコーダ部で作成された2次元予測画像を用いずに、エンコーダ部内のデコード手段のデコード中間データから直接計算している。そのため、大きな演算負荷を伴うこと無く、1次元予測画像を得ることができる。
【0154】
なお、この実施形態の動きベクトル検出部では、MPEGエンコーダ部内のデコード手段のデコード中間データを用いて探索領域の1次元予測画像を作成しているが、その代わりに、二次元の予測画像を記憶するフレームメモリ2003から、動きベクトル検出部2003がブロックを受け取り、アキュムレータアレイ175で探索領域の1次元予測画像を作成し、動きベクトルを検出するようにすることもできる。
【0155】
【発明の効果】
以上の説明から明らかなように、本発明の動きベクトル検出方法は、直交変換された映像信号のブロックから、情報量が集中している直流成分を含むx方向1次元DCT画像とy方向1次元DCT画像とを取り出して用いているため、演算量の削減量が多いにも拘わらず、2次元画像による全探索と変わらない検出精度を得ることができる。
【0158】
また、この検出方法において、動きベクトルの一方の成分を検出する際に得られる位置情報を、他方の成分の検出時に利用して探索範囲を限定することによって、動きベクトル検出に要する演算量をさらに削減することができる。
【0160】
また、本発明の動きベクトル検出装置は、検出速度及び検出精度が共に優れた動きベクトル検出方法を実施することができる。
【図面の簡単な説明】
【図1】第1の実施形態における動きベクトル検出装置の構成を示すブロック図、
【図2】第1の実施形態の動きベクトル検出装置が組み込まれた映像信号変換装置の構成を示すブロック図、
【図3】第1の実施形態の動きベクトル検出方法での1次元画像の生成方法を説明する説明図、
【図4】第1の実施形態の動きベクトル検出方法でのマッチング方法を説明する説明図、
【図5】第2の実施形態における動きベクトル検出装置の構成を示すブロック図、
【図6】第2の実施形態の動きベクトル検出方法でのマッチング方法を説明する説明図、
【図7】従来の符号化装置の構成を示すブロック図、
【図8】従来の一般的な動きベクトル検出方法を説明する説明図、
【図9】従来の動きベクトルの高速検出方法を説明する説明図、
【図10】第3の実施形態の動きベクトル検出方法でのマッチング方法を説明する説明図、
【図11】第4の実施形態の動きベクトル検出装置が組み込まれた映像信号変換装置の構成を示すブロック図、
【図12】第4の実施形態のアキュムレータアレイによる1次元画像の生成方法を説明する図、
【図13】第1の実施形態の1次元画像と第3の実施形態の1次元画像が等価であることを説明する図、
【図14】第5の実施形態の動きベクトル検出装置が組み込まれた映像信号変換装置の構成を示すブロック図、
【図15】第5の実施形態のエンコーダ部が組み込まれた映像信号変換装置の構成を示すブロック図である。
【符号の説明】
11、51 DCTブロック読出し手段
12、52、186 DCT成分抽出手段
13 y方向1次元逆DCT手段
14 x方向1次元逆DCT手段
15 1次元画像(y)フレームメモリ
16 1次元画像(x)フレームメモリ
17、55、76、137、177 マッチング手段
18、56、77、138、178 動きベクトル出力手段
19、57、73、133、173 動きベクトル検出部制御手段
21 DV圧縮画像
22、144、184 入力手段
23 DVデコーダ部
24、132、172、2003 動きベクトル検出部
25、78、139、179、191 エンコーダ部
26、145、185 出力手段
27、143、183、2004 MPEG圧縮画像
31 DCTブロック
32、33 マスク
34 x方向対象画像
35 y方向対象画像
41、61、11 現フレーム
42、62、112 対象ブロック
43、63、113 過去フレーム
44、114 探索領域のx方向1次元画像
45、115 対象ブロックのx方向1次元画像
46、116、120 相関度最大位置
47、117 動きベクトルx成分
48 補間画像
53 逆DCT手段
54 低解像度フレームメモリ
64 対象ブロックの低解像度画像
65 探索領域の低解像度画像
66、86 動きベクトル
71、131、171、190 非圧縮画像
72 動きベクトル検出部
74、134、174 ブロック読出し手段
75、142、182、2002 フレームメモリ
79 圧縮画像
81 現在フレーム
82 対象ブロック
83 過去フレーム
84 探索領域
85 相関度最大ブロック
91、140、 180、192 エンコードカーネル
92、141、181、193 デコード手段
119 対象ブロックのy方向1次元画像
121 探索範囲
122 動きベクトルx成分
135、175 アキュムレータアレイ
136、176 1次元画像フレームメモリ
151 ブロック
152 y方向1次元画像
153 x方向1次元画像
187 1次元逆DCT手段
188 予測画像生成手段
195 DCT手段
196 量子化手段
197 可変長符号化手段
198 動き情報符号化手段
199 逆量子化手段
2000 逆DCT手段
Claims (5)
- 映像信号の圧縮符号化に用いる動きベクトルの検出方法であって、
画像フレームのブロックごとにDCT変換されている映像信号のブロックから直流成分を含む1次元DCT画像を取り出し、前記1次元DCT画像を逆変換して1次元非圧縮画像を生成する1次元非圧縮画像生成手順により、画像フレームの動き検出対象領域のブロックから、直流成分を含むx方向1次元DCT画像を取り出してx方向1次元非圧縮画像を生成するとともに、直流成分を含むy方向1次元DCT画像を取り出してy方向1次元非圧縮画像を生成し、前記動き検出対象領域のブロックのx方向1次元非圧縮画像と、探索領域のブロックから直流成分を含むx方向1次元DCT画像を取り出して前記1次元非圧縮画像生成手順で生成したx方向1次元非圧縮画像との相関度を算出し、前記探索領域に含まれるブロックの中から前記相関度が最も高いブロックを求め、前記動き検出対象領域のブロックの位置から前記探索領域で求めたブロックの位置までのx方向の変位を動きベクトルのx成分とし、前記動き検出対象領域のブロックのy方向1次元非圧縮画像と、前記探索領域のブロックから直流成分を含むy方向1次元DCT画像を取り出して前記1次元非圧縮画像生成手順で生成したy方向1次元非圧縮画像との相関度を算出し、前記探索領域に含まれるブロックの中から前記相関度が最も高いブロックを求め、前記動き検出対象領域のブロックの位置から前記探索領域で求めたブロックの位置までのy方向の変位を動きベクトルのy成分とし、前記x成分と前記y成分とを合成して動きベクトルを定めることを特徴とする動きベクトル検出方法。 - 前記1次元非圧縮画像生成手順において、x方向nピクセル、y方向nピクセルのn×n行列(nは自然数)から成る前記ブロックから、直流成分を含む1×mピクセル(mはn以下の自然数)のDCT係数を取り出し、逆変換して前記x方向1次元非圧縮画像を生成し、前記ブロックから直流成分を含むm×1ピクセルのDCT係数を取り出し、逆変換して前記y方向1次元非圧縮画像を生成することを特徴とする請求項1記載の動きベクトル検出方法。
- 前記探索領域のブロックから生成した前記x方向1次元非圧縮画像の各々から、それらの中間に位置するx方向1次元非圧縮画像を補間し、前記探索領域のブロックから生成した前記y方向1次元非圧縮画像の各々から、それらの中間に位置するy方向1次元非圧縮画像を補間し、補間した前記x方向1次元非圧縮画像及びy方向1次元非圧縮画像を対象に含めて前記相関度を算出することを特徴とする請求項1記載の動きベクトル検出方法。
- 前記探索領域に含まれるブロックの中から前記x方向1次元非圧縮画像またはy方向1次元非圧縮画像の相関度が最も高いブロックを求めるとき、後から求めるブロックの探索領域上の探索範囲を、先に求めたブロックの周辺に限定することを特徴とする請求項1記載の動きベクトル検出方法。
- 映像信号の圧縮符号化に用いる動きベクトルを検出する動きベクトル検出装置において、
画像フレームのブロックごとにDCT変換されている映像信号のブロックから、直流成分を含むx方向1次元DCT画像とy方向1次元DCT画像とを抽出するDCT成分抽出手段と、
前記x方向1次元DCT画像を逆変換してx方向1次元非圧縮画像を生成するx方向1次元逆DCT手段と、
前記y方向1次元DCT画像を逆変換してy方向1次元非圧縮画像を生成するy方向1次元逆DCT手段と、
生成されたx方向1次元非圧縮画像を順番に記憶するx方向1次元画像フレームメモリと、
生成されたy方向1次元非圧縮画像を順番に記憶するy方向1次元画像フレームメモリと、
動き検出対象領域のブロックから生成されたx方向1次元非圧縮画像と探索領域のブロックから生成されたx方向1次元非圧縮画像との相関度を算出し、前記探索領域に含まれるブロックの中から前記相関度が最も高いブロックを求め、前記動き検出対象領域のブロックの位置から前記探索領域で求めたブロックの位置までのx方向の変位を動きベクトルのx成分とし、動き検出対象領域のブロックから生成されたy方向1次元非圧縮画像と探索領域のブロックから生成されたy方向1次元非圧縮画像との相関度を算出し、前記探索領域に含まれるブロックの中から前記相関度が最も高いブロックを求め、前記動き検出対象領域のブロックの位置から前記探索領域で求めたブロックの位置までのy方向の変位を動きベクトルのy成分とし、前記動きベクトルのx成分及びy成分を合成して動きベクトルを求めるマッチング手段とを備えることを特徴とする動きベクトル検出装置。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP22994998A JP3667105B2 (ja) | 1997-10-01 | 1998-08-03 | 動きベクトル検出方法及びその方法を実施する装置 |
EP19980118570 EP0907291A3 (en) | 1997-10-01 | 1998-10-01 | Motion vector detecting method and system and devices incorporating the same |
US09/164,333 US6925121B1 (en) | 1997-10-01 | 1998-10-01 | Motion vector detecting method and system and devices incorporating the same |
EP20040026452 EP1503598A1 (en) | 1997-10-01 | 1998-10-01 | Motion vector detecting method and system and devices incorporating the same |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP28316297 | 1997-10-01 | ||
JP9-283162 | 1997-10-01 | ||
JP22994998A JP3667105B2 (ja) | 1997-10-01 | 1998-08-03 | 動きベクトル検出方法及びその方法を実施する装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH11168731A JPH11168731A (ja) | 1999-06-22 |
JP3667105B2 true JP3667105B2 (ja) | 2005-07-06 |
Family
ID=26529076
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP22994998A Expired - Fee Related JP3667105B2 (ja) | 1997-10-01 | 1998-08-03 | 動きベクトル検出方法及びその方法を実施する装置 |
Country Status (3)
Country | Link |
---|---|
US (1) | US6925121B1 (ja) |
EP (2) | EP1503598A1 (ja) |
JP (1) | JP3667105B2 (ja) |
Families Citing this family (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1361541B1 (en) * | 2002-04-09 | 2011-06-22 | STMicroelectronics Srl | Process and device for global motion estimation in a sequence of images, for instance for optical mice |
US9225994B2 (en) * | 2005-03-14 | 2015-12-29 | British Telecommunications Public Limited Company | Global motion estimation using reduced frame lines |
JP4734679B2 (ja) * | 2006-03-14 | 2011-07-27 | 富士フイルム株式会社 | 画像処理装置、方法およびプログラム |
US8456515B2 (en) * | 2006-07-25 | 2013-06-04 | Qualcomm Incorporated | Stereo image and video directional mapping of offset |
US7835592B2 (en) * | 2006-10-17 | 2010-11-16 | Seiko Epson Corporation | Calibration technique for heads up display system |
US8200020B1 (en) * | 2011-11-28 | 2012-06-12 | Google Inc. | Robust image alignment using block sums |
US8446481B1 (en) | 2012-09-11 | 2013-05-21 | Google Inc. | Interleaved capture for high dynamic range image acquisition and synthesis |
US8866927B2 (en) | 2012-12-13 | 2014-10-21 | Google Inc. | Determining an image capture payload burst structure based on a metering image capture sweep |
US9087391B2 (en) | 2012-12-13 | 2015-07-21 | Google Inc. | Determining an image capture payload burst structure |
US8866928B2 (en) | 2012-12-18 | 2014-10-21 | Google Inc. | Determining exposure times using split paxels |
US9247152B2 (en) | 2012-12-20 | 2016-01-26 | Google Inc. | Determining image alignment failure |
US8995784B2 (en) | 2013-01-17 | 2015-03-31 | Google Inc. | Structure descriptors for image processing |
US9686537B2 (en) | 2013-02-05 | 2017-06-20 | Google Inc. | Noise models for image processing |
US9117134B1 (en) | 2013-03-19 | 2015-08-25 | Google Inc. | Image merging with blending |
US9066017B2 (en) | 2013-03-25 | 2015-06-23 | Google Inc. | Viewfinder display based on metering images |
US9077913B2 (en) | 2013-05-24 | 2015-07-07 | Google Inc. | Simulating high dynamic range imaging with virtual long-exposure images |
US9131201B1 (en) | 2013-05-24 | 2015-09-08 | Google Inc. | Color correcting virtual long exposures with true long exposures |
US9615012B2 (en) | 2013-09-30 | 2017-04-04 | Google Inc. | Using a second camera to adjust settings of first camera |
US10681388B2 (en) * | 2018-01-30 | 2020-06-09 | Google Llc | Compression of occupancy or indicator grids |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH03117991A (ja) * | 1989-09-29 | 1991-05-20 | Victor Co Of Japan Ltd | 動きベクトル符号化装置及び復号化装置 |
US5210605A (en) * | 1991-06-11 | 1993-05-11 | Trustees Of Princeton University | Method and apparatus for determining motion vectors for image sequences |
JPH06205388A (ja) * | 1992-12-28 | 1994-07-22 | Canon Inc | 画像符号化装置 |
JPH0799658A (ja) * | 1993-08-03 | 1995-04-11 | Sony Corp | 動きベクトル検出装置 |
EP0643538B1 (en) * | 1993-09-09 | 1999-03-17 | Sony Corporation | Motion vector detecting apparatus and method |
KR100366141B1 (ko) * | 1994-01-31 | 2003-03-03 | 소니 가부시끼 가이샤 | 화상대조방법및장치 |
JPH0865681A (ja) * | 1994-08-25 | 1996-03-08 | Sony Corp | 動きベクトル検出装置およびそれを使用した動き補償予測符号化システム |
US6002801A (en) * | 1995-04-18 | 1999-12-14 | Advanced Micro Devices, Inc. | Method and apparatus for improved video decompression by selection of IDCT method based on image characteristics |
JP3788823B2 (ja) * | 1995-10-27 | 2006-06-21 | 株式会社東芝 | 動画像符号化装置および動画像復号化装置 |
US5832120A (en) * | 1995-12-22 | 1998-11-03 | Cirrus Logic, Inc. | Universal MPEG decoder with scalable picture size |
JP3363039B2 (ja) * | 1996-08-29 | 2003-01-07 | ケイディーディーアイ株式会社 | 動画像内の移動物体検出装置 |
US6115070A (en) * | 1997-06-12 | 2000-09-05 | International Business Machines Corporation | System and method for DCT domain inverse motion compensation using shared information |
US6134270A (en) * | 1997-06-13 | 2000-10-17 | Sun Microsystems, Inc. | Scaled forward and inverse discrete cosine transform and video compression/decompression systems employing the same |
-
1998
- 1998-08-03 JP JP22994998A patent/JP3667105B2/ja not_active Expired - Fee Related
- 1998-10-01 EP EP20040026452 patent/EP1503598A1/en not_active Withdrawn
- 1998-10-01 US US09/164,333 patent/US6925121B1/en not_active Expired - Fee Related
- 1998-10-01 EP EP19980118570 patent/EP0907291A3/en not_active Ceased
Also Published As
Publication number | Publication date |
---|---|
EP0907291A2 (en) | 1999-04-07 |
EP0907291A3 (en) | 2002-03-27 |
JPH11168731A (ja) | 1999-06-22 |
EP1503598A1 (en) | 2005-02-02 |
US6925121B1 (en) | 2005-08-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3667105B2 (ja) | 動きベクトル検出方法及びその方法を実施する装置 | |
JP4863333B2 (ja) | 高分解能静止画像を創出するための方法及び装置 | |
US7483625B2 (en) | Picture recording apparatus and method thereof | |
JP3901287B2 (ja) | 映像信号変換装置、映像信号変換方法及び映像提供システム | |
US6628711B1 (en) | Method and apparatus for compensating for jitter in a digital video image | |
JP2002507339A (ja) | 非線形ピラミッドを用いた階層的な運動推定実行方法及び装置 | |
EP1386486B1 (en) | Detection and proper interpolation of interlaced moving areas for mpeg decoding with embedded resizing | |
JPH10191360A (ja) | 動き推定ベクトルを求める方法および動き推定ベクトルを用いて動画像データを圧縮する方法 | |
JP3681784B2 (ja) | 映像信号符号化装置 | |
KR100511810B1 (ko) | 화상 부호화 및 복호화 방법 및 장치 | |
JP3164056B2 (ja) | 動画像符号化復号化装置、動画像符号化復号化方法及び動画像符号記録媒体 | |
US6038345A (en) | Apparatus for encoding/decoding image data | |
JP4422629B2 (ja) | 動画像符号化装置、復号化装置、動画像記録装置および動画像再生装置 | |
JP2001145011A (ja) | 映像信号符号化装置 | |
JP4526529B2 (ja) | 階層画像を用いる映像信号変換装置 | |
JP3407727B2 (ja) | 記録媒体 | |
JPH0795590A (ja) | 映像信号処理装置、映像信号処理方法及び撮像装置 | |
JP3186406B2 (ja) | 画像合成符号化方法及び画像合成装置 | |
JPH10150665A (ja) | 予測画像の作成方法及び画像符号化方法及び画像符号化装置 | |
JP3251900B2 (ja) | 動画変換装置 | |
JP3407726B2 (ja) | 符号化方法、符号化装置、および、コンピュータ読み取り可能な記録媒体 | |
JPH06105299A (ja) | 動画像圧縮装置 | |
JP3410037B2 (ja) | 復号化方法、復号化装置、および、コンピュータ読み取り可能な記録媒体 | |
JP4513856B2 (ja) | ディジタル信号変換方法およびディジタル信号変換装置 | |
Chan et al. | Fast motion estimation algorithm for an MPEG video coder |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20040831 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20041029 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20041221 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050114 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20050121 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20050208 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050310 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20050405 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20050405 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080415 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090415 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100415 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110415 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120415 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130415 Year of fee payment: 8 |
|
LAPS | Cancellation because of no payment of annual fees |