JPH08102965A - 画像符号化装置 - Google Patents
画像符号化装置Info
- Publication number
- JPH08102965A JPH08102965A JP23810994A JP23810994A JPH08102965A JP H08102965 A JPH08102965 A JP H08102965A JP 23810994 A JP23810994 A JP 23810994A JP 23810994 A JP23810994 A JP 23810994A JP H08102965 A JPH08102965 A JP H08102965A
- Authority
- JP
- Japan
- Prior art keywords
- data
- image
- color difference
- compression
- motion vector
- 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.)
- Granted
Links
Landscapes
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Image Processing (AREA)
- Color Television Systems (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
(57)【要約】
【構成】 入力画像データを分割したブロックの輝度デ
ータと色差データの複数組からなるマクロブロック毎に
サーチ側とリファレンス側のピクセル毎の誤差値を輝度
データと色差データとから求め、当該誤差値を合計した
合計誤差値が最小となる動きベクトルを検出する動き検
出器41及び動きベクトル発生回路34と、求めた動き
ベクトルに基づいて適応的に画像データの圧縮方法を選
択する圧縮方法選択回路32と、選択した圧縮方法に従
って入力画像データに所定の圧縮符号化処理を施す差分
器12から可変長符号化回路17及びローカルデコーダ
とを有する。 【効果】 効率の良い画像圧縮が可能で、全体的に画質
を向上させることができると共に、コストの低減も可能
となる。
ータと色差データの複数組からなるマクロブロック毎に
サーチ側とリファレンス側のピクセル毎の誤差値を輝度
データと色差データとから求め、当該誤差値を合計した
合計誤差値が最小となる動きベクトルを検出する動き検
出器41及び動きベクトル発生回路34と、求めた動き
ベクトルに基づいて適応的に画像データの圧縮方法を選
択する圧縮方法選択回路32と、選択した圧縮方法に従
って入力画像データに所定の圧縮符号化処理を施す差分
器12から可変長符号化回路17及びローカルデコーダ
とを有する。 【効果】 効率の良い画像圧縮が可能で、全体的に画質
を向上させることができると共に、コストの低減も可能
となる。
Description
【0001】
【産業上の利用分野】本発明は、例えば画像を圧縮符号
化する場合に用いて好適な画像符号化装置に関する。
化する場合に用いて好適な画像符号化装置に関する。
【0002】
【従来の技術】従来の例えば画像を圧縮符号化する場合
に用いて好適な画像符号化装置の構成例を図6に示す。
この図6の画像符号化装置において、入力端子1には、
図7に示すように、 輝度成分(Y) 352(H)×240(V)×30フレーム クロマ成分(Cb) 174(H)×120(V)×30フレーム クロマ成分(Cr) 174(H)×120(V)×30フレーム のピクセル数にディジタル化された画像データが供給さ
れる。
に用いて好適な画像符号化装置の構成例を図6に示す。
この図6の画像符号化装置において、入力端子1には、
図7に示すように、 輝度成分(Y) 352(H)×240(V)×30フレーム クロマ成分(Cb) 174(H)×120(V)×30フレーム クロマ成分(Cr) 174(H)×120(V)×30フレーム のピクセル数にディジタル化された画像データが供給さ
れる。
【0003】上記入力端子1に供給された入力画像デー
タは、当該入力画像データを一時的に蓄えて然るべき順
番に入れ替えるためのフレームメモリ10を介して、動
き検出器20とブロック分割器11に送られる。当該ブ
ロック分割器11は、フレームメモリ10から供給され
たそれぞれのフレームを、図8に示すように、輝度成分
(Y) ,クロマ成分(Cr),(Cb) それぞれを8×8ピクセル
のブロックに分割する。なお、輝度成分(Y) の4つのブ
ロック(Y0,Y1,Y2,Y3)と1つのクロマ成分(Cb)のブロッ
クと、1つのクロマ成分(Cr)のブロックからなる合計6
つのブロック(Y0,Y1,Y2,Y3,Cb,Cr) は、マクロブロック
(MB)と呼ばれている。なお、マクロブロックを構成する
輝度画素(ルミナンスピクセル)とクロマ画素(クロミ
ナンスピクセル)との関係は、図9に示すようになって
いる。
タは、当該入力画像データを一時的に蓄えて然るべき順
番に入れ替えるためのフレームメモリ10を介して、動
き検出器20とブロック分割器11に送られる。当該ブ
ロック分割器11は、フレームメモリ10から供給され
たそれぞれのフレームを、図8に示すように、輝度成分
(Y) ,クロマ成分(Cr),(Cb) それぞれを8×8ピクセル
のブロックに分割する。なお、輝度成分(Y) の4つのブ
ロック(Y0,Y1,Y2,Y3)と1つのクロマ成分(Cb)のブロッ
クと、1つのクロマ成分(Cr)のブロックからなる合計6
つのブロック(Y0,Y1,Y2,Y3,Cb,Cr) は、マクロブロック
(MB)と呼ばれている。なお、マクロブロックを構成する
輝度画素(ルミナンスピクセル)とクロマ画素(クロミ
ナンスピクセル)との関係は、図9に示すようになって
いる。
【0004】このブロック分割器11からのマクロブロ
ック単位のデータは差分器12に送られる。この差分器
12では、ブロック分割器11からのデータと後述する
フレーム間予測画像データとの差分をとり、その出力を
後述するフレーム間予測符号化がなされるフレームのデ
ータとして切換スイッチ13の被切換端子bに送る。ま
た、当該切換スイッチ13の被切換端子aには、上記ブ
ロック分割器11からのデータが後述するフレーム内符
号化がなされるフレームのデータとして供給される。
ック単位のデータは差分器12に送られる。この差分器
12では、ブロック分割器11からのデータと後述する
フレーム間予測画像データとの差分をとり、その出力を
後述するフレーム間予測符号化がなされるフレームのデ
ータとして切換スイッチ13の被切換端子bに送る。ま
た、当該切換スイッチ13の被切換端子aには、上記ブ
ロック分割器11からのデータが後述するフレーム内符
号化がなされるフレームのデータとして供給される。
【0005】上記切換スイッチ13を介したブロック単
位のデータはDCT回路14によって離散コサイン変換
(DCT)処理され、そのDCT係数が量子化器15に
送られる。当該量子化器15では、所定の量子化ステッ
プ幅で上記DCT出力を量子化し、この量子化した係数
がジグザグスキャン回路16に送られる。当該ジグザグ
スキャン回路16では、上記量子化係数を図10に示す
ようにいわゆるジグザグスキャンによって並べ換え、そ
の出力を可変長符号化回路17に送る。この可変長符号
化回路17では、上記ジグザグスキャン回路16の出力
データを可変長符号化(VLC)し、その出力を出力バ
ッファ18に送ると共に、当該可変長符号化処理により
発生した符号量を示す情報を、量子化ステップ制御器1
9に送る。量子化ステップ制御器19は、可変長符号化
回路17からの符号量を示す情報に基づいて量子化器1
5の量子化ステップ幅を制御する。また、上記出力バッ
ファ18から出力されたデータは圧縮符号化がなされた
符号化出力として出力端子2から出力される。
位のデータはDCT回路14によって離散コサイン変換
(DCT)処理され、そのDCT係数が量子化器15に
送られる。当該量子化器15では、所定の量子化ステッ
プ幅で上記DCT出力を量子化し、この量子化した係数
がジグザグスキャン回路16に送られる。当該ジグザグ
スキャン回路16では、上記量子化係数を図10に示す
ようにいわゆるジグザグスキャンによって並べ換え、そ
の出力を可変長符号化回路17に送る。この可変長符号
化回路17では、上記ジグザグスキャン回路16の出力
データを可変長符号化(VLC)し、その出力を出力バ
ッファ18に送ると共に、当該可変長符号化処理により
発生した符号量を示す情報を、量子化ステップ制御器1
9に送る。量子化ステップ制御器19は、可変長符号化
回路17からの符号量を示す情報に基づいて量子化器1
5の量子化ステップ幅を制御する。また、上記出力バッ
ファ18から出力されたデータは圧縮符号化がなされた
符号化出力として出力端子2から出力される。
【0006】また、上記量子化器15からの出力は、逆
量子化器27によって逆量子化され、さらに逆DCT回
路26によって逆DCT処理される。当該逆DCT回路
26の出力は、加算器25に送られる。この加算器25
には、フレーム間予測符号化のフレームのときにオンと
なる切換スイッチ24を介した動き補償器21からのフ
レーム間予測画像データも供給され、当該データと上記
逆DCT回路26の出力データとの加算が行われる。こ
の加算器25の出力データは、フレームメモリ22に一
時的に蓄えられた後、動き補償器21に送られる。
量子化器27によって逆量子化され、さらに逆DCT回
路26によって逆DCT処理される。当該逆DCT回路
26の出力は、加算器25に送られる。この加算器25
には、フレーム間予測符号化のフレームのときにオンと
なる切換スイッチ24を介した動き補償器21からのフ
レーム間予測画像データも供給され、当該データと上記
逆DCT回路26の出力データとの加算が行われる。こ
の加算器25の出力データは、フレームメモリ22に一
時的に蓄えられた後、動き補償器21に送られる。
【0007】当該動き補償器21は、上記動き検出器2
0によって検出された動きベクトルに基づいて動き補償
を行い、これによって得たフレーム間予測画像データを
出力する。以下、上記図6の従来の画像符号化装置の具
体的な動作について詳細に説明する。ここで、説明のた
めに以下のように各フレームの呼び名を定義する。
0によって検出された動きベクトルに基づいて動き補償
を行い、これによって得たフレーム間予測画像データを
出力する。以下、上記図6の従来の画像符号化装置の具
体的な動作について詳細に説明する。ここで、説明のた
めに以下のように各フレームの呼び名を定義する。
【0008】先ず、表示順にフレームを並べたとき、そ
れぞれを I0,B1,B2,P3,B4,B5,P6,B7,B
8,I9,B10,B11,B12,・・・・・ と呼ぶこととする。これらのフレームのうち、I,P,
Bは、後に説明するが、圧縮方法の種類を示し、これら
I,P,Bの次の数字は、単純に表示順を示している。
れぞれを I0,B1,B2,P3,B4,B5,P6,B7,B
8,I9,B10,B11,B12,・・・・・ と呼ぶこととする。これらのフレームのうち、I,P,
Bは、後に説明するが、圧縮方法の種類を示し、これら
I,P,Bの次の数字は、単純に表示順を示している。
【0009】カラー動画像符号化方式の国際標準化作業
グループであるいわゆるMPEG(Moving Picture Exp
ert Group)のうちMPEG1では、この様な画像を圧縮
するために、以下のようにすることが規定されている。
先ず、I0の画像を圧縮する。次に、P3の画像を圧縮
するのだが、P3そのものを圧縮するのではなく、P3
とI0の画像との差分データを圧縮する。
グループであるいわゆるMPEG(Moving Picture Exp
ert Group)のうちMPEG1では、この様な画像を圧縮
するために、以下のようにすることが規定されている。
先ず、I0の画像を圧縮する。次に、P3の画像を圧縮
するのだが、P3そのものを圧縮するのではなく、P3
とI0の画像との差分データを圧縮する。
【0010】その次に、B1の画像を圧縮するのだが、
B1そのものを圧縮するのではなく、B1とI0或い
は、B1とP3との差分データ或いはI0とP3の平均
値との差分(いずれか情報の少ない方)を圧縮する。そ
の次に、B2の画像を圧縮するのだが、B2そのものを
圧縮するのではなく、B2とI0或いは、B2とP3と
の差分データ或いはI0とP3の平均値との差分(どち
らか情報の少ない方を選んで)を圧縮する。
B1そのものを圧縮するのではなく、B1とI0或い
は、B1とP3との差分データ或いはI0とP3の平均
値との差分(いずれか情報の少ない方)を圧縮する。そ
の次に、B2の画像を圧縮するのだが、B2そのものを
圧縮するのではなく、B2とI0或いは、B2とP3と
の差分データ或いはI0とP3の平均値との差分(どち
らか情報の少ない方を選んで)を圧縮する。
【0011】次に、P6の画像を圧縮するのだが、P6
そのものを圧縮するのではなく、P6とP3の画像との
差分データを圧縮する。上述したような処理を順番に並
べて表すと、 となる。このようにエンコード順は、 I0,P3,B1,B2,P6,B4,B5,P9,B
7,B8,I9,P12,B10,B11,・・・・ のように、表示順とは順番が入れ替わる。圧縮後のデー
タ(符号化データ)はこの順番に並ぶことになる。
そのものを圧縮するのではなく、P6とP3の画像との
差分データを圧縮する。上述したような処理を順番に並
べて表すと、 となる。このようにエンコード順は、 I0,P3,B1,B2,P6,B4,B5,P9,B
7,B8,I9,P12,B10,B11,・・・・ のように、表示順とは順番が入れ替わる。圧縮後のデー
タ(符号化データ)はこの順番に並ぶことになる。
【0012】以下、上述したことを図6の構成の動作と
共にさらに詳しく述べる。1枚目の画像(すなわちI
0)のエンコードでは、先ず、上記フレームメモリ10
から1枚目に圧縮すべき画像のデータが、ブロック分割
器11によってブロック化される。このブロック分割器
11からは、前記Y0,Y1,Y2,Y3,Cb,Cr
の順にブロック毎のデータが出力され、被切換端子a側
に切り換えられた切換スイッチ13を介してDCT回路
14に送られる。このDCT回路14では、それぞれの
ブロックについて縦横2次元の離散コサイン変換処理を
行う。これにより、時間軸であったデータが周波数軸に
変換される。
共にさらに詳しく述べる。1枚目の画像(すなわちI
0)のエンコードでは、先ず、上記フレームメモリ10
から1枚目に圧縮すべき画像のデータが、ブロック分割
器11によってブロック化される。このブロック分割器
11からは、前記Y0,Y1,Y2,Y3,Cb,Cr
の順にブロック毎のデータが出力され、被切換端子a側
に切り換えられた切換スイッチ13を介してDCT回路
14に送られる。このDCT回路14では、それぞれの
ブロックについて縦横2次元の離散コサイン変換処理を
行う。これにより、時間軸であったデータが周波数軸に
変換される。
【0013】このDCT回路14からのDCT係数は、
量子化器15に送られ、当該量子化器15で所定の量子
化ステップ幅で量子化される。その後、ジグザグスキャ
ン回路16によって図10のようにジグザグ順に並べ変
えられる。このようにジグザグ順に並べると、後ろへ行
くほど、その係数は周波数成分の高い係数となるから、
一般的に係数の値は後ろの方が小さくなる傾向にある。
したがって、ある値Sで量子化すると、後ろへ行くほ
ど、その結果は0になる頻度が増し、結果的に高域の成
分が切り落とされることになる。
量子化器15に送られ、当該量子化器15で所定の量子
化ステップ幅で量子化される。その後、ジグザグスキャ
ン回路16によって図10のようにジグザグ順に並べ変
えられる。このようにジグザグ順に並べると、後ろへ行
くほど、その係数は周波数成分の高い係数となるから、
一般的に係数の値は後ろの方が小さくなる傾向にある。
したがって、ある値Sで量子化すると、後ろへ行くほ
ど、その結果は0になる頻度が増し、結果的に高域の成
分が切り落とされることになる。
【0014】その後、この量子化後の係数は、可変長符
号化(VLC)回路17へ送られ、ここでいわゆるハフ
マンコーディングが施される。この結果得られる圧縮さ
れたビットストリームは、出力バッファ18に一旦蓄え
られた後、一定のビットレートで送出される。当該出力
バッファ18は、不規則に発生するビットストリームを
一定のビットレートで送出できるようにするための緩衝
のためのメモリである。
号化(VLC)回路17へ送られ、ここでいわゆるハフ
マンコーディングが施される。この結果得られる圧縮さ
れたビットストリームは、出力バッファ18に一旦蓄え
られた後、一定のビットレートで送出される。当該出力
バッファ18は、不規則に発生するビットストリームを
一定のビットレートで送出できるようにするための緩衝
のためのメモリである。
【0015】以上の様に1枚の画像だけ単独で圧縮する
ことをフレーム内(イントラ:Intra )符号化と言い、
この画像をIピクチャと呼ぶ。したがって、デコーダが
上記のIピクチャのビットストリームを受信した場合
は、以上に述べたことを逆にたどり、1枚目の画像を完
成させる。次に、2枚目の画像(すなわちP3)のエン
コードでは、以下のようになされる。
ことをフレーム内(イントラ:Intra )符号化と言い、
この画像をIピクチャと呼ぶ。したがって、デコーダが
上記のIピクチャのビットストリームを受信した場合
は、以上に述べたことを逆にたどり、1枚目の画像を完
成させる。次に、2枚目の画像(すなわちP3)のエン
コードでは、以下のようになされる。
【0016】すなわち、この2枚目以降もIピクチャと
して圧縮してビットストリームを作っても良いが圧縮率
を上げるには、連続する画像の内容には相関があること
を利用して、以下の様な方法で圧縮する。先ず、動き検
出器20では、2枚目の画像を構成するマクロブロック
毎に、1枚目の画像(I0)の中からそれに良く似たパ
ターンを捜し出し、それを動きベクトルという(x,
y)の相対位置の座標として表現する。
して圧縮してビットストリームを作っても良いが圧縮率
を上げるには、連続する画像の内容には相関があること
を利用して、以下の様な方法で圧縮する。先ず、動き検
出器20では、2枚目の画像を構成するマクロブロック
毎に、1枚目の画像(I0)の中からそれに良く似たパ
ターンを捜し出し、それを動きベクトルという(x,
y)の相対位置の座標として表現する。
【0017】また、2枚目の画像ではそれぞれのブロッ
クを、上記Iピクチャの場合のようにそのままDCT回
路14に送るのではなく、そのブロック毎の動きベクト
ルに従って一枚目の画像から引っ張ってきたブロックと
の差分のデータ(差分器12による差分データ)を、D
CT回路14へ送るようにする。なお、動きベクトルの
検出方法としては、ISO/IEC 11172-2 annex D.
6.2 に詳細に述べられているためここでは省略する。
クを、上記Iピクチャの場合のようにそのままDCT回
路14に送るのではなく、そのブロック毎の動きベクト
ルに従って一枚目の画像から引っ張ってきたブロックと
の差分のデータ(差分器12による差分データ)を、D
CT回路14へ送るようにする。なお、動きベクトルの
検出方法としては、ISO/IEC 11172-2 annex D.
6.2 に詳細に述べられているためここでは省略する。
【0018】ここで、例えば上記動きベクトルによって
示された一枚目の画像のパターンと、これから圧縮しよ
うとするブロックのパターンとの間で、相関が非常に強
くなっていれば、その差分データは非常に小さくなり、
したがって、上記フレーム内(イントラ)符号化で圧縮
するよりも、上記動きベクトルと上記差分データとを符
号化した方が、圧縮後のデータ量は小さくなる。
示された一枚目の画像のパターンと、これから圧縮しよ
うとするブロックのパターンとの間で、相関が非常に強
くなっていれば、その差分データは非常に小さくなり、
したがって、上記フレーム内(イントラ)符号化で圧縮
するよりも、上記動きベクトルと上記差分データとを符
号化した方が、圧縮後のデータ量は小さくなる。
【0019】このような圧縮方法を、フレーム間(イン
ター:Inter)予測符号化と呼んでいる。ただし、常に差
分データが少なくなるわけではなく、絵柄(画像内容)
によっては、差分を取るよりも、上記フレーム内符号化
で圧縮した方が、圧縮率が上がる場合がある。このよう
な場合は、上記フレーム内符号化で圧縮する。フレーム
間予測符号化にするか、フレーム内符号化にするかは、
マクロブロック毎に異なる。
ター:Inter)予測符号化と呼んでいる。ただし、常に差
分データが少なくなるわけではなく、絵柄(画像内容)
によっては、差分を取るよりも、上記フレーム内符号化
で圧縮した方が、圧縮率が上がる場合がある。このよう
な場合は、上記フレーム内符号化で圧縮する。フレーム
間予測符号化にするか、フレーム内符号化にするかは、
マクロブロック毎に異なる。
【0020】以上のことを図6の画像符号化装置(エン
コーダ)に即して説明すると、先ず、フレーム間予測符
号化を行うためには、エンコーダ側でたえずデコーダ側
で作られる画像と同じ画像を作って置く必要がある。そ
のためにエンコーダ内には、デコーダと同じ回路が存在
する。その回路をローカルデコーダ(局部復号器)と呼
ぶ。図6の逆量子化器27と逆DCT回路26と加算器
25とフレームメモリ22と動き補償器21が当該ロー
カルデコーダに対応し、フレームメモリ22内に記憶さ
れる画像のことをローカルデコーデッドピクチャ(Loca
l decoded picture)又はローカルデコーデッドデータ(L
ocal decoded data)と呼ぶ。これに対して、圧縮前の画
像のデータは、オリジナルピクチャ(Original picture)
又はオリジナルデータ(Original data) と呼ぶ。
コーダ)に即して説明すると、先ず、フレーム間予測符
号化を行うためには、エンコーダ側でたえずデコーダ側
で作られる画像と同じ画像を作って置く必要がある。そ
のためにエンコーダ内には、デコーダと同じ回路が存在
する。その回路をローカルデコーダ(局部復号器)と呼
ぶ。図6の逆量子化器27と逆DCT回路26と加算器
25とフレームメモリ22と動き補償器21が当該ロー
カルデコーダに対応し、フレームメモリ22内に記憶さ
れる画像のことをローカルデコーデッドピクチャ(Loca
l decoded picture)又はローカルデコーデッドデータ(L
ocal decoded data)と呼ぶ。これに対して、圧縮前の画
像のデータは、オリジナルピクチャ(Original picture)
又はオリジナルデータ(Original data) と呼ぶ。
【0021】なお、前述した1枚目のIピクチャの圧縮
時にも、上記ローカルデコーダを通して復号化された1
枚目の画像が、上記フレームメモリ22内に格納され
る。ここで、注意すべきことは、このローカルデコーダ
によって得られる画像は、圧縮前の画像ではなく、圧縮
後復元した画像であり、圧縮による画質劣化のある、デ
コーダが復号化する画像とまったく同じ画像であるとい
うことである。
時にも、上記ローカルデコーダを通して復号化された1
枚目の画像が、上記フレームメモリ22内に格納され
る。ここで、注意すべきことは、このローカルデコーダ
によって得られる画像は、圧縮前の画像ではなく、圧縮
後復元した画像であり、圧縮による画質劣化のある、デ
コーダが復号化する画像とまったく同じ画像であるとい
うことである。
【0022】このような状態のエンコーダに2枚目の画
像(P3)のデータ(Original data)が入ってくるわけ
だが(この段階ですでに、動きベクトルは検出済でなけ
ればならない)、データはブロック毎に動きベクトルを
持ち、このベクトルが動き補償器(MC:Motion Compensa
tion)21に与えられる。当該動き補償回路21は、そ
の動きベクトルの示すローカルデコーデッドピクチャ上
のデータ(動き補償データ:MC data:1マクロブロッ
ク)を上記フレーム間予測画像データとして出力する。
像(P3)のデータ(Original data)が入ってくるわけ
だが(この段階ですでに、動きベクトルは検出済でなけ
ればならない)、データはブロック毎に動きベクトルを
持ち、このベクトルが動き補償器(MC:Motion Compensa
tion)21に与えられる。当該動き補償回路21は、そ
の動きベクトルの示すローカルデコーデッドピクチャ上
のデータ(動き補償データ:MC data:1マクロブロッ
ク)を上記フレーム間予測画像データとして出力する。
【0023】上記2枚目のオリジナルデータとこの動き
補償データ(フレーム間予測画像データ)のピクセル毎
の、差分器12による差分データが、上記DCT回路1
4に入力される。それからの後の圧縮方法は、基本的に
Iピクチャと同じである。上述のような圧縮方法によっ
て圧縮する画像をPピクチャ(Predicted picture)と呼
ぶ。
補償データ(フレーム間予測画像データ)のピクセル毎
の、差分器12による差分データが、上記DCT回路1
4に入力される。それからの後の圧縮方法は、基本的に
Iピクチャと同じである。上述のような圧縮方法によっ
て圧縮する画像をPピクチャ(Predicted picture)と呼
ぶ。
【0024】さらに詳しく説明すると、Pピクチャにお
いてすべてのマクロブロックがフレーム間予測符号化で
圧縮するとは限らず、フレーム内符号化で圧縮する方が
効率が良いと判断されるときは、そのマクロブロックは
当該フレーム内符号化で符号化を行う。すなわち、Pピ
クチャにおいても、マクロブロック毎に、フレーム内符
号化によるか(このマクロブロックをイントラマクロブ
ロックと呼ぶ)、又はフレーム間予測符号化によるか
(このマクロブロックをインターマクロブロックと呼
ぶ)のどちらかを選択して圧縮を行う。
いてすべてのマクロブロックがフレーム間予測符号化で
圧縮するとは限らず、フレーム内符号化で圧縮する方が
効率が良いと判断されるときは、そのマクロブロックは
当該フレーム内符号化で符号化を行う。すなわち、Pピ
クチャにおいても、マクロブロック毎に、フレーム内符
号化によるか(このマクロブロックをイントラマクロブ
ロックと呼ぶ)、又はフレーム間予測符号化によるか
(このマクロブロックをインターマクロブロックと呼
ぶ)のどちらかを選択して圧縮を行う。
【0025】上述のように、上記ローカルデコーダで
は、量子化器15の出力が、逆量子化器27で逆量子化
され、さらに逆DCT回路26で逆DCT処理された
後、エンコード時に動き補償データ(MC data )と足さ
れ最終的なローカルデコーデッドピクチャとなる。次
に、3枚目の画像(すなわちB1)のエンコードでは、
以下のようになされる。
は、量子化器15の出力が、逆量子化器27で逆量子化
され、さらに逆DCT回路26で逆DCT処理された
後、エンコード時に動き補償データ(MC data )と足さ
れ最終的なローカルデコーデッドピクチャとなる。次
に、3枚目の画像(すなわちB1)のエンコードでは、
以下のようになされる。
【0026】上記3枚目の画像(B1)のエンコードで
は、I0,P3の2枚の画像それぞれに対する動きベク
トルを探索する。ここで、I0に対する動きベクトルを
フォワードベクトル(forward Vector)MVf(x,y) と
呼び、P3に対する動きベクトルをバックワードベクト
ル(Backward Vector)MVb(x,y) と呼ぶ。この3枚目
の画像についても差分データを圧縮するわけであるが、
どのデータを圧縮するのかが、問題である。この場合も
一番情報量が少なくなるものとの差分を取れば良い。こ
のときの圧縮方法の選択肢としては、 (1)フォワードベクトルMVf(x,y) の示すI0上の
データとの差分 (2)バックワードベクトルMVb(x,y) の示すP3上
のデータとの差分 (3)フォワードベクトルMVf(x,y) の示すI0上の
データとバックワードベクトルMVb(x,y) の示すP3
上のデータの平均値との差分 (4)差分データは使わない(フレーム内符号化) の4つである。マクロブロック毎にこの4種類の圧縮方
法から一つが選択される。上記圧縮方法の選択肢のうち
の(1),(2),(3)の場合は、それぞれの動きベ
クトルも動き補償器21に送られ、差分器21ではその
動き補償データとの差分をとり、これがDCT回路14
に送られる。上記圧縮方法の選択肢のうちの(4)の場
合は、そのままのデータがDCT回路14へ送られる。
は、I0,P3の2枚の画像それぞれに対する動きベク
トルを探索する。ここで、I0に対する動きベクトルを
フォワードベクトル(forward Vector)MVf(x,y) と
呼び、P3に対する動きベクトルをバックワードベクト
ル(Backward Vector)MVb(x,y) と呼ぶ。この3枚目
の画像についても差分データを圧縮するわけであるが、
どのデータを圧縮するのかが、問題である。この場合も
一番情報量が少なくなるものとの差分を取れば良い。こ
のときの圧縮方法の選択肢としては、 (1)フォワードベクトルMVf(x,y) の示すI0上の
データとの差分 (2)バックワードベクトルMVb(x,y) の示すP3上
のデータとの差分 (3)フォワードベクトルMVf(x,y) の示すI0上の
データとバックワードベクトルMVb(x,y) の示すP3
上のデータの平均値との差分 (4)差分データは使わない(フレーム内符号化) の4つである。マクロブロック毎にこの4種類の圧縮方
法から一つが選択される。上記圧縮方法の選択肢のうち
の(1),(2),(3)の場合は、それぞれの動きベ
クトルも動き補償器21に送られ、差分器21ではその
動き補償データとの差分をとり、これがDCT回路14
に送られる。上記圧縮方法の選択肢のうちの(4)の場
合は、そのままのデータがDCT回路14へ送られる。
【0027】上述した1枚目、2枚目のエンコードの処
理の結果、ローカルデコーデッドピクチャを格納するフ
レームメモリ22には、I0,P3の2枚のピクチャ
が、復元されているのでこのようなことが可能である。
次に、4枚目の画像(すなわちB2)のエンコードで
は、以下のようになされる。
理の結果、ローカルデコーデッドピクチャを格納するフ
レームメモリ22には、I0,P3の2枚のピクチャ
が、復元されているのでこのようなことが可能である。
次に、4枚目の画像(すなわちB2)のエンコードで
は、以下のようになされる。
【0028】上記4枚目の画像(B2)のエンコードで
は、上述した3枚目(B1)のエンコード方法のところ
の説明文で、B1をB2に置き換えたこと以外は、上記
3枚目のエンコードと同じ方法で圧縮する。次に、5枚
目の画像(すなわちP6)のエンコードでは、以下のよ
うになされる。
は、上述した3枚目(B1)のエンコード方法のところ
の説明文で、B1をB2に置き換えたこと以外は、上記
3枚目のエンコードと同じ方法で圧縮する。次に、5枚
目の画像(すなわちP6)のエンコードでは、以下のよ
うになされる。
【0029】上記5枚目の画像(P6)のエンコードで
は、上述した2枚目(P3)のエンコード方法のところ
の説明文で、P3をP6に、I0をP3に置き換えただ
けで、他は同じ説明となる。6枚目以降は、上述の繰り
返しとなるので説明は省略する。また、MPEGにおい
ては、GOP(Group Of Picture)と呼ばれるものが規
定されている。
は、上述した2枚目(P3)のエンコード方法のところ
の説明文で、P3をP6に、I0をP3に置き換えただ
けで、他は同じ説明となる。6枚目以降は、上述の繰り
返しとなるので説明は省略する。また、MPEGにおい
ては、GOP(Group Of Picture)と呼ばれるものが規
定されている。
【0030】すなわち、何枚かのピクチャの集まりがグ
ループオブピクチャ(GOP)と呼ばれており、当該G
OPは符号化データ(圧縮後のデータ)上で見て連続し
た画像の集まりでなくてはならないものである。また、
GOPはランダムアクセスを考慮したもので、そのため
には符号化データ上で見てGOPの最初に来るピクチャ
は上記Iピクチャである必要がある。さらに、表示順
(ディスプレイ順)でGOPの最後は、I又はPピクチ
ャでなくてはならない。
ループオブピクチャ(GOP)と呼ばれており、当該G
OPは符号化データ(圧縮後のデータ)上で見て連続し
た画像の集まりでなくてはならないものである。また、
GOPはランダムアクセスを考慮したもので、そのため
には符号化データ上で見てGOPの最初に来るピクチャ
は上記Iピクチャである必要がある。さらに、表示順
(ディスプレイ順)でGOPの最後は、I又はPピクチ
ャでなくてはならない。
【0031】図11には、最初が4枚のピクチャからな
るGOPで、それ以降が6枚のピクチャからなるGOP
となる例を挙げる。なお、図11のAはディスプレイ順
を示し、図11のBは符号化データ順を示している。こ
の図11において、GOP2に注目すると、B4,B5
はP3,I6から形成されるため、例えばランダムアク
セスでI6にアクセスされると、P3が無いため、B
4,B5は正しく復号化できない。このようにGOP内
だけで正しく復号化できないGOPは、クローズドGO
P(Closed GOP)でないという。
るGOPで、それ以降が6枚のピクチャからなるGOP
となる例を挙げる。なお、図11のAはディスプレイ順
を示し、図11のBは符号化データ順を示している。こ
の図11において、GOP2に注目すると、B4,B5
はP3,I6から形成されるため、例えばランダムアク
セスでI6にアクセスされると、P3が無いため、B
4,B5は正しく復号化できない。このようにGOP内
だけで正しく復号化できないGOPは、クローズドGO
P(Closed GOP)でないという。
【0032】これに対し、もしB4,B5がI6だけし
か参照していないとしならば、例えばランダムアクセス
でI6にアクセスしても、P3は必要ないため、これら
B4,B5は正しく復号化できることになる。このよう
にGOP内だけの情報で、完全に復号化できるGOPを
クローズドGOP(Closed GOP)と呼ぶ。以上のような
圧縮方法の選択の中から一番効率の良い方法で圧縮する
わけであるが、その結果発生する符号化データ(Coded
data)の量は、入力画像にも依存し、実際に圧縮してみ
ないと判らない。
か参照していないとしならば、例えばランダムアクセス
でI6にアクセスしても、P3は必要ないため、これら
B4,B5は正しく復号化できることになる。このよう
にGOP内だけの情報で、完全に復号化できるGOPを
クローズドGOP(Closed GOP)と呼ぶ。以上のような
圧縮方法の選択の中から一番効率の良い方法で圧縮する
わけであるが、その結果発生する符号化データ(Coded
data)の量は、入力画像にも依存し、実際に圧縮してみ
ないと判らない。
【0033】しかし、圧縮後のデータのビットレートを
一定にするためにコントロールすることも必要である。
当該コントロールを行うためのパラメータは、量子化器
15に与える前記符号量を表す情報としての量子化ステ
ップ(又は量子化スケール:Q-scale )である。同じ圧
縮方法でも、上記量子化ステップを大きくすれば発生ビ
ット量は減り、小さくすれば増える。
一定にするためにコントロールすることも必要である。
当該コントロールを行うためのパラメータは、量子化器
15に与える前記符号量を表す情報としての量子化ステ
ップ(又は量子化スケール:Q-scale )である。同じ圧
縮方法でも、上記量子化ステップを大きくすれば発生ビ
ット量は減り、小さくすれば増える。
【0034】この量子化ステップの値は、次のようにし
て制御する。エンコーダには、圧縮後のデータを一定の
ビットレートにするために、出力に緩衝バッファ(出力
バッファ18)が設けられており、これによって画像毎
のある程度のデータ発生量の差は吸収できるようになさ
れている。しかし、定められたビットレートを超えるよ
うなデータの発生が続けば、出力バッファ18の残量が
増加し、ついにはオーバーフローを起こすことになる。
逆にビットレートを下回るデータの発生が続けば出力バ
ッファ18の残量は減少し、最後にはアンダーフローを
引き起こすことになる。
て制御する。エンコーダには、圧縮後のデータを一定の
ビットレートにするために、出力に緩衝バッファ(出力
バッファ18)が設けられており、これによって画像毎
のある程度のデータ発生量の差は吸収できるようになさ
れている。しかし、定められたビットレートを超えるよ
うなデータの発生が続けば、出力バッファ18の残量が
増加し、ついにはオーバーフローを起こすことになる。
逆にビットレートを下回るデータの発生が続けば出力バ
ッファ18の残量は減少し、最後にはアンダーフローを
引き起こすことになる。
【0035】したがって、エンコーダは、出力バッファ
18の残量をフィードバックすることにより、前記量子
化ステップ制御器19が量子化器15の量子化ステップ
をコントロールし、ここで出力バッファ18の残量が少
なくなればあまり圧縮しないように量子化ステップを小
さくなるよう制御し、出力バッファ18の残量が多くな
れば圧縮率を高くするように量子化ステップを大きくす
るようにコントロールを行うようにしている。
18の残量をフィードバックすることにより、前記量子
化ステップ制御器19が量子化器15の量子化ステップ
をコントロールし、ここで出力バッファ18の残量が少
なくなればあまり圧縮しないように量子化ステップを小
さくなるよう制御し、出力バッファ18の残量が多くな
れば圧縮率を高くするように量子化ステップを大きくす
るようにコントロールを行うようにしている。
【0036】また、前述した圧縮方法(前記フレーム内
符号化やフレーム間予測符号化)によって発生する符号
化データ量の範囲には、大きな差がある。特にフレーム
内符号化方式で圧縮をすると大量のデータが発生するた
め、出力バッフファ18の空き容量が小さい場合には量
子化ステップサイズを大きくしなければならず、場合に
よっては量子化ステップサイズを最大にしてもバッファ
18のオーバーフローを招くかもしれない。よしんばバ
ッファ18に収まったとしても量子化ステップが大きけ
ればフレーム内符号化の画像は後のフレーム間予測符号
化の画質に影響するので、フレーム内符号化での圧縮を
行う前には出力バッファ18に十分な空き容量が必要で
ある。
符号化やフレーム間予測符号化)によって発生する符号
化データ量の範囲には、大きな差がある。特にフレーム
内符号化方式で圧縮をすると大量のデータが発生するた
め、出力バッフファ18の空き容量が小さい場合には量
子化ステップサイズを大きくしなければならず、場合に
よっては量子化ステップサイズを最大にしてもバッファ
18のオーバーフローを招くかもしれない。よしんばバ
ッファ18に収まったとしても量子化ステップが大きけ
ればフレーム内符号化の画像は後のフレーム間予測符号
化の画質に影響するので、フレーム内符号化での圧縮を
行う前には出力バッファ18に十分な空き容量が必要で
ある。
【0037】したがって、予め定められた順序の圧縮方
法を決めておき、フレーム内符号化の前には十分な出力
バッファ18の空き容量を確保するように、量子化ステ
ップ制御器19は量子化ステップサイズのフィードバッ
クコントロールを行うようにしている。以上のようにし
て一定レートの符号化データに抑えることが可能とな
る。
法を決めておき、フレーム内符号化の前には十分な出力
バッファ18の空き容量を確保するように、量子化ステ
ップ制御器19は量子化ステップサイズのフィードバッ
クコントロールを行うようにしている。以上のようにし
て一定レートの符号化データに抑えることが可能とな
る。
【0038】
【発明が解決しようとする課題】ところで、上述した従
来の方法では、以下の理由により高画質を得られないこ
とが欠点となっている。すなわち、入力画像は様々であ
り、例えば、輝度データは殆ど空間的に変化がなく色差
データだけが変化している画像や、時間的に輝度データ
は殆ど変化がなく色差データだけが変化している画像が
存在する。
来の方法では、以下の理由により高画質を得られないこ
とが欠点となっている。すなわち、入力画像は様々であ
り、例えば、輝度データは殆ど空間的に変化がなく色差
データだけが変化している画像や、時間的に輝度データ
は殆ど変化がなく色差データだけが変化している画像が
存在する。
【0039】このような入力画像に対して従来の技術で
処理を行なった場合には、以下のような問題がある。動
きベクトルの検出においては、サーチ側とリファレンス
側のピクセル毎の誤差値が、輝度データだけに限って最
小となるような動きベクトルを検出しても輝度データは
殆ど変化がないため、色差データも含めて誤差値が最小
となるような圧縮を行う上で有利でしかも高画質になる
と思われる動きベクトルは検出できない。
処理を行なった場合には、以下のような問題がある。動
きベクトルの検出においては、サーチ側とリファレンス
側のピクセル毎の誤差値が、輝度データだけに限って最
小となるような動きベクトルを検出しても輝度データは
殆ど変化がないため、色差データも含めて誤差値が最小
となるような圧縮を行う上で有利でしかも高画質になる
と思われる動きベクトルは検出できない。
【0040】また、マクロブロック毎にフレーム内符号
化/フレーム間予測符号化の判定を行う場合でも、色差
データを画像評価の指標として収集していなければ、輝
度データだけの誤差値は小さく、したがって、例えば時
間的に輝度データはほとんど変化しないで色差データが
大きく変化する画像があった場合は、正しくはフレーム
内符号化と判定すべきであるがフレーム間予測符号化と
判定してしまうことがある。
化/フレーム間予測符号化の判定を行う場合でも、色差
データを画像評価の指標として収集していなければ、輝
度データだけの誤差値は小さく、したがって、例えば時
間的に輝度データはほとんど変化しないで色差データが
大きく変化する画像があった場合は、正しくはフレーム
内符号化と判定すべきであるがフレーム間予測符号化と
判定してしまうことがある。
【0041】さらに、従来の方法では、MPEG1の場
合で画像データの中(マクロブロックを構成する前記6
つのブロック(Y0,Y1,Y2,Y3,Cb,Cr) の中)で2/6を占
める色差データ(ブロック(Cb,Cr))を、画像評価の指標
として全く収集していないため、色差データの状況が全
く推定できない。このため、色差データの状況によって
圧縮後のデータ量が予測を外れることがあった。
合で画像データの中(マクロブロックを構成する前記6
つのブロック(Y0,Y1,Y2,Y3,Cb,Cr) の中)で2/6を占
める色差データ(ブロック(Cb,Cr))を、画像評価の指標
として全く収集していないため、色差データの状況が全
く推定できない。このため、色差データの状況によって
圧縮後のデータ量が予測を外れることがあった。
【0042】また、圧縮後の画像データは全体として一
定レートに制御されるものであるため、例えば画像のあ
る部分で圧縮後のデータ量の予測が外れ、例えば当該あ
る部分に多くのデータ量を使用した場合には、それ以外
のいずれかの部分に対する使用可能なデータ量が少なく
なってしまい、結果としてその部分では画質が劣化して
しまうことになる。
定レートに制御されるものであるため、例えば画像のあ
る部分で圧縮後のデータ量の予測が外れ、例えば当該あ
る部分に多くのデータ量を使用した場合には、それ以外
のいずれかの部分に対する使用可能なデータ量が少なく
なってしまい、結果としてその部分では画質が劣化して
しまうことになる。
【0043】さらに、色素データ1ブロックは、データ
量的には全体の1/6と少ないが、面積的にはこの色差
データ1ブロックが輝度データ4ブロックに相当するた
め、色差データの視覚的影響は大きくなる。しかし、各
ブロックを単に合計しただけでは、その影響の大きさが
反映されないため、圧縮後の画像の色差データに劣化が
目だっていた。
量的には全体の1/6と少ないが、面積的にはこの色差
データ1ブロックが輝度データ4ブロックに相当するた
め、色差データの視覚的影響は大きくなる。しかし、各
ブロックを単に合計しただけでは、その影響の大きさが
反映されないため、圧縮後の画像の色差データに劣化が
目だっていた。
【0044】そこで、本発明は、上述のような実情に鑑
みて提案されたものであり、効率の良い画像圧縮が可能
で、全体的に画質を向上させることができると共に、コ
ストの低減も可能な画像符号化装置を提供することを目
的とするものである。
みて提案されたものであり、効率の良い画像圧縮が可能
で、全体的に画質を向上させることができると共に、コ
ストの低減も可能な画像符号化装置を提供することを目
的とするものである。
【0045】
【課題を解決するための手段】本発明は上述した目的を
達成するために提案されたものであり、入力画像データ
を複数のブロックに分割し、分割したブロックの輝度デ
ータと色差データの複数組からなるマクロブロック毎
に、サーチ側とリファレンス側のピクセル毎の誤差値を
輝度データと色差データとから求め、当該誤差値を合計
した合計誤差値が最小となる動きベクトルを検出する動
きベクトル検出手段と、上記動きベクトル検出手段によ
って得られた動きベクトルに基づいて、適応的に画像デ
ータの圧縮方法を選択する圧縮方法選択手段と、上記圧
縮方法選択手段により選択された圧縮方法に従って上記
入力画像データに所定の圧縮符号化処理を施す圧縮符号
化処理手段とを有することを特徴とするものである。
達成するために提案されたものであり、入力画像データ
を複数のブロックに分割し、分割したブロックの輝度デ
ータと色差データの複数組からなるマクロブロック毎
に、サーチ側とリファレンス側のピクセル毎の誤差値を
輝度データと色差データとから求め、当該誤差値を合計
した合計誤差値が最小となる動きベクトルを検出する動
きベクトル検出手段と、上記動きベクトル検出手段によ
って得られた動きベクトルに基づいて、適応的に画像デ
ータの圧縮方法を選択する圧縮方法選択手段と、上記圧
縮方法選択手段により選択された圧縮方法に従って上記
入力画像データに所定の圧縮符号化処理を施す圧縮符号
化処理手段とを有することを特徴とするものである。
【0046】ここで、上記動きベクトル検出手段は、輝
度データのブロックと色差データのブロックの面積に応
じて上記合計誤差値の計算に重み付けを行ったり、輝度
データと色差データの重視する度合いに応じて上記合計
誤差値の計算に重み付けを行うことができる。また、上
記動きベクトル検出手段は、輝度データの誤差値が最小
となる動きベクトルを使用して切り出したサーチ側とリ
ファレンス側のピクセル毎の色差データの誤差値を求め
ることができる。
度データのブロックと色差データのブロックの面積に応
じて上記合計誤差値の計算に重み付けを行ったり、輝度
データと色差データの重視する度合いに応じて上記合計
誤差値の計算に重み付けを行うことができる。また、上
記動きベクトル検出手段は、輝度データの誤差値が最小
となる動きベクトルを使用して切り出したサーチ側とリ
ファレンス側のピクセル毎の色差データの誤差値を求め
ることができる。
【0047】さらに、上記圧縮方法選択手段は、上記ブ
ロック毎の輝度データと色差データの複雑さをマクロブ
ロック単位に集計した第1の集計値と、上記動きベクト
ルに基づく予測データと入力画像データとの誤差値をマ
クロブロック単位に集計した第2の集計値とを用いて、
マクロブロック毎の圧縮方法を選択する。また、本発明
の画像符号化装置は、上記各ブロック毎に輝度データと
色差データとを用いて画像情報を評価する画像情報評価
手段をも設けることができ、このとき上記圧縮符号化処
理手段は、上記画像情報評価手段からの評価値に基づい
て、圧縮符号化のビット割当を行う。また、上記画像情
報評価手段は、輝度データのブロックと色差データのブ
ロックの面積に応じて上記評価に重み付けを行ったり、
輝度データと色差データの重視する度合いに応じて上記
評価に重み付けを行うものとすることができる。
ロック毎の輝度データと色差データの複雑さをマクロブ
ロック単位に集計した第1の集計値と、上記動きベクト
ルに基づく予測データと入力画像データとの誤差値をマ
クロブロック単位に集計した第2の集計値とを用いて、
マクロブロック毎の圧縮方法を選択する。また、本発明
の画像符号化装置は、上記各ブロック毎に輝度データと
色差データとを用いて画像情報を評価する画像情報評価
手段をも設けることができ、このとき上記圧縮符号化処
理手段は、上記画像情報評価手段からの評価値に基づい
て、圧縮符号化のビット割当を行う。また、上記画像情
報評価手段は、輝度データのブロックと色差データのブ
ロックの面積に応じて上記評価に重み付けを行ったり、
輝度データと色差データの重視する度合いに応じて上記
評価に重み付けを行うものとすることができる。
【0048】
【作用】本発明によれば、輝度データのみならず色差デ
ータからも誤差値を求めており、これら輝度データと色
差データから求めた誤差値の合計誤差値から動きベクト
ルを検出しており、空間的に輝度が変化せずに色差だけ
に特徴がある入力画像でも効率的に圧縮するための動き
ベクトルを検出している。
ータからも誤差値を求めており、これら輝度データと色
差データから求めた誤差値の合計誤差値から動きベクト
ルを検出しており、空間的に輝度が変化せずに色差だけ
に特徴がある入力画像でも効率的に圧縮するための動き
ベクトルを検出している。
【0049】また、動きベクトル検出手段は、輝度デー
タのブロックと色差データのブロックの面積若しくは輝
度データと色差データの重視する度合いに応じて合計誤
差値の計算に重み付けを行うことで、色差データ部を重
視した色差部分の誤差の少ない動きベクトルを検出して
いる。また、動きベクトル検出手段は、輝度データの誤
差値が最小となる動きベクトルを使用して切り出したサ
ーチ側とリファレンス側のピクセル毎の色差データの誤
差値を求めることで、色差データのための誤差値の計算
を容易にし、計算コストを低減している。
タのブロックと色差データのブロックの面積若しくは輝
度データと色差データの重視する度合いに応じて合計誤
差値の計算に重み付けを行うことで、色差データ部を重
視した色差部分の誤差の少ない動きベクトルを検出して
いる。また、動きベクトル検出手段は、輝度データの誤
差値が最小となる動きベクトルを使用して切り出したサ
ーチ側とリファレンス側のピクセル毎の色差データの誤
差値を求めることで、色差データのための誤差値の計算
を容易にし、計算コストを低減している。
【0050】次に、圧縮方法選択手段は、ブロック毎の
輝度データと色差データの複雑さをマクロブロック単位
に集計した第1の集計値と、動きベクトルに基づく予測
データと入力画像データとの誤差値をマクロブロック単
位に集計した第2の集計値とを用いることで、輝度デー
タのみならず色差データも考慮した圧縮方法の選択を行
い、さらに、面積や重視する度合いに応じて色差データ
を重視した圧縮方法の選択を行うようにしている。
輝度データと色差データの複雑さをマクロブロック単位
に集計した第1の集計値と、動きベクトルに基づく予測
データと入力画像データとの誤差値をマクロブロック単
位に集計した第2の集計値とを用いることで、輝度デー
タのみならず色差データも考慮した圧縮方法の選択を行
い、さらに、面積や重視する度合いに応じて色差データ
を重視した圧縮方法の選択を行うようにしている。
【0051】また、本発明の画像符号化装置によれば、
画像情報を評価する画像情報評価手段をも設け、ここで
各ブロック毎に輝度データと色差データとを用いて画像
情報を評価することで、輝度データのみならず色差デー
タも考慮した画面内の画像情報を評価でき、さらにこの
ときの圧縮符号化処理手段は、その評価値に基づいて、
圧縮符号化のビット割当を行うことができる。また、こ
の画像情報評価手段でも、面積若しくは輝度データと色
差データの重視する度合いに応じて評価に重み付けを行
うことで、色差データ部を重視した評価が行える。
画像情報を評価する画像情報評価手段をも設け、ここで
各ブロック毎に輝度データと色差データとを用いて画像
情報を評価することで、輝度データのみならず色差デー
タも考慮した画面内の画像情報を評価でき、さらにこの
ときの圧縮符号化処理手段は、その評価値に基づいて、
圧縮符号化のビット割当を行うことができる。また、こ
の画像情報評価手段でも、面積若しくは輝度データと色
差データの重視する度合いに応じて評価に重み付けを行
うことで、色差データ部を重視した評価が行える。
【0052】
【実施例】以下、図面を参照し、本発明の実施例につい
て詳述する。図1には本発明実施例の画像符号化装置の
概略構成を示す。なお、この図1において、前述した図
6と同じの構成については同一の指示符号を付してその
説明については省略する。
て詳述する。図1には本発明実施例の画像符号化装置の
概略構成を示す。なお、この図1において、前述した図
6と同じの構成については同一の指示符号を付してその
説明については省略する。
【0053】この図1の構成において、前記図6の構成
に追加された構成要素は画像情報評価回路50とシーン
チェンジ検出回路31と圧縮方法選択回路32と動きベ
クトル発生回路34であり、また、フレームメモリ40
と動き検出器41及び量子化ステップ制御器33が変更
されている。すなわち、本発明実施例の画像符号化装置
は、入力画像データを前記図7及び図8のように複数の
ブロックに分割し、分割したブロックの輝度データと色
差データの複数組からなるマクロブロック毎に、サーチ
側とリファレンス側のピクセル毎の誤差値を輝度データ
と色差データとから求め、当該誤差値を合計した合計誤
差値が最小となる動きベクトルを検出する動きベクトル
検出手段としての動き検出器41及び動きベクトル発生
回路34と、上記動きベクトル検出手段によって得られ
た動きベクトルに基づいて、適応的に画像データの圧縮
方法(フレーム内符号化/フレーム間(前方,後方,両
方向)予測符号化)を選択する圧縮方法選択回路32
と、上記圧縮方法選択回路32により選択された圧縮方
法に従って上記入力画像データに所定の圧縮符号化処理
を施す圧縮符号化処理手段としての差分器12から可変
長符号化回路17及びローカルデコーダとを有すること
を特徴とするものである。
に追加された構成要素は画像情報評価回路50とシーン
チェンジ検出回路31と圧縮方法選択回路32と動きベ
クトル発生回路34であり、また、フレームメモリ40
と動き検出器41及び量子化ステップ制御器33が変更
されている。すなわち、本発明実施例の画像符号化装置
は、入力画像データを前記図7及び図8のように複数の
ブロックに分割し、分割したブロックの輝度データと色
差データの複数組からなるマクロブロック毎に、サーチ
側とリファレンス側のピクセル毎の誤差値を輝度データ
と色差データとから求め、当該誤差値を合計した合計誤
差値が最小となる動きベクトルを検出する動きベクトル
検出手段としての動き検出器41及び動きベクトル発生
回路34と、上記動きベクトル検出手段によって得られ
た動きベクトルに基づいて、適応的に画像データの圧縮
方法(フレーム内符号化/フレーム間(前方,後方,両
方向)予測符号化)を選択する圧縮方法選択回路32
と、上記圧縮方法選択回路32により選択された圧縮方
法に従って上記入力画像データに所定の圧縮符号化処理
を施す圧縮符号化処理手段としての差分器12から可変
長符号化回路17及びローカルデコーダとを有すること
を特徴とするものである。
【0054】先ず、入力端子1から入力された入力画像
データは、フレームメモリ40に蓄えられる。このフレ
ームメモリ40は、図6のフレームメモリ10とは異な
り、所定数のフレームを蓄積できるものである。このと
きの蓄積する所定数のフレームとしては、多過ぎるとフ
レームメモリ40が大規模になってしまうので好ましく
ない。上記所定数として効率的な容量は、ビットレート
と出力バッファ18の容量、フレーム内符号化の圧縮方
式の画像同士の間隔(ほとんどの場合GOPの長さとい
っても差し支えない)に大きく依存するものである。こ
れは圧縮方法及び圧縮率の違いから生ずる圧縮データの
大きさのむらを出力バッファ18によって吸収し定ビッ
トレートにすることができる範囲が上記条件によって制
約されるからである。
データは、フレームメモリ40に蓄えられる。このフレ
ームメモリ40は、図6のフレームメモリ10とは異な
り、所定数のフレームを蓄積できるものである。このと
きの蓄積する所定数のフレームとしては、多過ぎるとフ
レームメモリ40が大規模になってしまうので好ましく
ない。上記所定数として効率的な容量は、ビットレート
と出力バッファ18の容量、フレーム内符号化の圧縮方
式の画像同士の間隔(ほとんどの場合GOPの長さとい
っても差し支えない)に大きく依存するものである。こ
れは圧縮方法及び圧縮率の違いから生ずる圧縮データの
大きさのむらを出力バッファ18によって吸収し定ビッ
トレートにすることができる範囲が上記条件によって制
約されるからである。
【0055】ここで、一般的にフレーム内符号化方式で
圧縮することは定期的に行われる(これがGOPになる
ことが多い)ものであり、フレーム内符号化の圧縮方式
は圧縮後のデータ量が他の方式に比べてかなり大きいた
め、フレーム内符号化による圧縮画像同士(或いはGO
P)の間隔で情報量を調べ、データ量の配分をするのは
一つの合理的な方法である。
圧縮することは定期的に行われる(これがGOPになる
ことが多い)ものであり、フレーム内符号化の圧縮方式
は圧縮後のデータ量が他の方式に比べてかなり大きいた
め、フレーム内符号化による圧縮画像同士(或いはGO
P)の間隔で情報量を調べ、データ量の配分をするのは
一つの合理的な方法である。
【0056】しかし、本実施例の方式では、後述するシ
ーンチェンジ等によって前後の画像の相関が著しく低く
なった場合にも、フレーム内符号化方式で圧縮するよう
にしている。その場合、定期的に行うはずである近傍の
フレーム内符号化によって圧縮を行う画像は、定ビット
レート或いは均質な画質の維持が困難になるため、フレ
ーム内符号化による圧縮である必然性を失い、フレーム
内符号化で圧縮することを取り止める必要がでてくる。
ーンチェンジ等によって前後の画像の相関が著しく低く
なった場合にも、フレーム内符号化方式で圧縮するよう
にしている。その場合、定期的に行うはずである近傍の
フレーム内符号化によって圧縮を行う画像は、定ビット
レート或いは均質な画質の維持が困難になるため、フレ
ーム内符号化による圧縮である必然性を失い、フレーム
内符号化で圧縮することを取り止める必要がでてくる。
【0057】したがって、フレーム内符号化による圧縮
を行う周期の2倍程度を上記フレームメモリ40の長さ
(上記所定数)とすることが適当である。もちろん、上
記フレーム数は一例であり、これに限定されることはな
く様々な条件に合わせて変更することは可能である。上
記フレームメモリ40に蓄積された画像データは、適
宜、画像情報評価回路50に送られる。
を行う周期の2倍程度を上記フレームメモリ40の長さ
(上記所定数)とすることが適当である。もちろん、上
記フレーム数は一例であり、これに限定されることはな
く様々な条件に合わせて変更することは可能である。上
記フレームメモリ40に蓄積された画像データは、適
宜、画像情報評価回路50に送られる。
【0058】ここで、当該画像情報評価回路50は、大
別して2通りのパラメータを算出するものである。第1
のパラメータは、フレーム内符号化で圧縮を行った場合
の圧縮後のデータ量を予測することが可能なように、そ
の画像自身の情報量を示すものである。この第1のパラ
メータとしては、例えば、フレームメモリ40から供給
された画像データに対して、DCT処理をブロック毎に
行い、そのDCT係数の和や統計をとったものとした
り、また、それでは規模が大きくなる場合には、平均自
乗誤差のブロック毎の和を求めたものとする。いずれに
しても、当該画像情報評価回路50では、画像の情報量
を表し、圧縮後のデーター量を類推するに足るパラメー
タを算出する。ここで、本実施例の画像情報評価回路5
0では、輝度データと色差データとから、圧縮後のデー
タ量を類推するのに足るパラメータを求めている。
別して2通りのパラメータを算出するものである。第1
のパラメータは、フレーム内符号化で圧縮を行った場合
の圧縮後のデータ量を予測することが可能なように、そ
の画像自身の情報量を示すものである。この第1のパラ
メータとしては、例えば、フレームメモリ40から供給
された画像データに対して、DCT処理をブロック毎に
行い、そのDCT係数の和や統計をとったものとした
り、また、それでは規模が大きくなる場合には、平均自
乗誤差のブロック毎の和を求めたものとする。いずれに
しても、当該画像情報評価回路50では、画像の情報量
を表し、圧縮後のデーター量を類推するに足るパラメー
タを算出する。ここで、本実施例の画像情報評価回路5
0では、輝度データと色差データとから、圧縮後のデー
タ量を類推するのに足るパラメータを求めている。
【0059】第2のパラメータは、フレーム間予測符号
化で圧縮を行った場合の圧縮後のデータ量を予測するこ
とが可能な、画像の差分情報量を示すものである。この
場合のパラメータとしては、例えば、フレームメモリ4
0に格納された画像と動き補償後の画像との差分値の絶
対値のブロック内の和を用いる。このパラメータ算出の
際には、一般的な動きベクトル検出回路(動き検出器4
1及び動きベクトル発生回路34)で得られる動きベク
トルが検出された最小誤差を利用することができる。こ
の場合も、輝度データと色差データとから圧縮後のデー
タ量を類推するパラメータを求める。
化で圧縮を行った場合の圧縮後のデータ量を予測するこ
とが可能な、画像の差分情報量を示すものである。この
場合のパラメータとしては、例えば、フレームメモリ4
0に格納された画像と動き補償後の画像との差分値の絶
対値のブロック内の和を用いる。このパラメータ算出の
際には、一般的な動きベクトル検出回路(動き検出器4
1及び動きベクトル発生回路34)で得られる動きベク
トルが検出された最小誤差を利用することができる。こ
の場合も、輝度データと色差データとから圧縮後のデー
タ量を類推するパラメータを求める。
【0060】このときのフレーム間予測符号化による圧
縮後のデータ量の類推(予測)のためのパラメータとし
ては、一般的な輝度情報だけの動きベクトル検出回路
(動き検出器41及び動きベクトル発生回路34)で得
られる動きベクトル及びその動きベクトルが検出された
輝度情報だけで求めた最小誤差に加えて、本実施例では
その動きベクトルが検出された色差情報だけで求めた最
小誤差を新たに用いるようにする。
縮後のデータ量の類推(予測)のためのパラメータとし
ては、一般的な輝度情報だけの動きベクトル検出回路
(動き検出器41及び動きベクトル発生回路34)で得
られる動きベクトル及びその動きベクトルが検出された
輝度情報だけで求めた最小誤差に加えて、本実施例では
その動きベクトルが検出された色差情報だけで求めた最
小誤差を新たに用いるようにする。
【0061】すなわち、本実施例装置において、動き検
出器41及び動きベクトル発生回路34では、リファレ
ンス側のマクロブロックの輝度ピクセル(16×16ピ
クセル)とサーチ側の輝度ピクセル(16×16ピクセ
ル)との誤差の絶対値和(AD)の合計値ADyと、同
様に色差ピクセル(8×8×2ピクセル)同士の誤差の
絶対値和(AD)の合計値ADcが生成され、これらの
合計値が最小となる動きベクトルが検出される。
出器41及び動きベクトル発生回路34では、リファレ
ンス側のマクロブロックの輝度ピクセル(16×16ピ
クセル)とサーチ側の輝度ピクセル(16×16ピクセ
ル)との誤差の絶対値和(AD)の合計値ADyと、同
様に色差ピクセル(8×8×2ピクセル)同士の誤差の
絶対値和(AD)の合計値ADcが生成され、これらの
合計値が最小となる動きベクトルが検出される。
【0062】また、本実施例装置では、上記動きベクト
ル検出に際し、輝度データと色差データのブロックの面
積(ピクセル数に対応する面積)や、輝度データと色差
データの重視する度合いに応じて、上記合計誤差値の計
算に重み付けを行うことも可能である。なお、上記マク
ロブロック毎の色差データまで含めた動き検出について
は、後述する図3〜図5のフローチャートにて詳細に説
明する。
ル検出に際し、輝度データと色差データのブロックの面
積(ピクセル数に対応する面積)や、輝度データと色差
データの重視する度合いに応じて、上記合計誤差値の計
算に重み付けを行うことも可能である。なお、上記マク
ロブロック毎の色差データまで含めた動き検出について
は、後述する図3〜図5のフローチャートにて詳細に説
明する。
【0063】本実施例装置では、このようにして求めた
輝度情報からの最小誤差と色差情報からの最小誤差を用
いて、そのマクロブロックの誤差とし、当該マクロブロ
ックの誤差を用いて後述する圧縮方法選択回路32で圧
縮方法の判定を行なう。すなわち、上記画像情報評価回
路50では、マクロブロック毎に圧縮方式(フレーム内
符号化/フレーム間予測符号化)を判定するための情報
として、輝度データと色差データそれぞれに後述する誤
差の平均絶対値和(輝度データの誤差の平均絶対値和M
ADyと色差データの誤差の平均絶対値和MADc)
と、それぞれの誤差の絶対値和(輝度データの誤差の絶
対値和ADyと色差データの誤差の絶対値和ADc)を
測定し、圧縮方法選択回路32では、フレーム内符号化
で圧縮したほうが高画質でより少ないビット量で圧縮で
きるのか、それともフレーム間予測符号化で圧縮したほ
うが良いかを、これら求められた誤差の平均絶対値和
(MAD),誤差の絶対値和(AD)を使用して推定を
行なう。また、フレーム間予測符号化の中でも、前方,
後方,両方向をどの方向で圧縮したほうがよいかを前
方,後方の誤差の絶対値和を用いて行う。このように、
誤差の平均絶対値和(MAD),誤差の絶対値和(A
D)は、輝度データのみならず色差データも収集してあ
るのでフレーム内符号化/フレーム間予測符号化の判定
を誤ることなく、効率的に圧縮できるようになる。
輝度情報からの最小誤差と色差情報からの最小誤差を用
いて、そのマクロブロックの誤差とし、当該マクロブロ
ックの誤差を用いて後述する圧縮方法選択回路32で圧
縮方法の判定を行なう。すなわち、上記画像情報評価回
路50では、マクロブロック毎に圧縮方式(フレーム内
符号化/フレーム間予測符号化)を判定するための情報
として、輝度データと色差データそれぞれに後述する誤
差の平均絶対値和(輝度データの誤差の平均絶対値和M
ADyと色差データの誤差の平均絶対値和MADc)
と、それぞれの誤差の絶対値和(輝度データの誤差の絶
対値和ADyと色差データの誤差の絶対値和ADc)を
測定し、圧縮方法選択回路32では、フレーム内符号化
で圧縮したほうが高画質でより少ないビット量で圧縮で
きるのか、それともフレーム間予測符号化で圧縮したほ
うが良いかを、これら求められた誤差の平均絶対値和
(MAD),誤差の絶対値和(AD)を使用して推定を
行なう。また、フレーム間予測符号化の中でも、前方,
後方,両方向をどの方向で圧縮したほうがよいかを前
方,後方の誤差の絶対値和を用いて行う。このように、
誤差の平均絶対値和(MAD),誤差の絶対値和(A
D)は、輝度データのみならず色差データも収集してあ
るのでフレーム内符号化/フレーム間予測符号化の判定
を誤ることなく、効率的に圧縮できるようになる。
【0064】また、本実施例では、輝度データと色差デ
ータから入力画像の平坦度を求めており、後述する量子
化ステップ制御器33においてそれぞれパラメータを収
集し、より精度の高い平坦度を求め、マクロブロック毎
の量子化ステップを決定するようにしている。上記画像
情報評価回路50によって、上述したようにして算出さ
れた画像情報の評価値(パラメータ)は、次に説明する
シーンチェンジ検出回路31と、圧縮方法選択回路32
と、量子化ステップ制御器33とに送られる。
ータから入力画像の平坦度を求めており、後述する量子
化ステップ制御器33においてそれぞれパラメータを収
集し、より精度の高い平坦度を求め、マクロブロック毎
の量子化ステップを決定するようにしている。上記画像
情報評価回路50によって、上述したようにして算出さ
れた画像情報の評価値(パラメータ)は、次に説明する
シーンチェンジ検出回路31と、圧縮方法選択回路32
と、量子化ステップ制御器33とに送られる。
【0065】また、画像情報評価回路50からは、後述
する圧縮方法選択回路32においてGOPの長さを決定
する際に画像のカウントを行うため、その圧縮方法選択
回路32に対して画像情報も送られる。次に、シーンチ
ェンジ検出回路31は、入力画像のシーンチェンジを後
述するように動き検出で得たパラメータを用いて検出す
る。
する圧縮方法選択回路32においてGOPの長さを決定
する際に画像のカウントを行うため、その圧縮方法選択
回路32に対して画像情報も送られる。次に、シーンチ
ェンジ検出回路31は、入力画像のシーンチェンジを後
述するように動き検出で得たパラメータを用いて検出す
る。
【0066】ここで、当該シーンチェンジ検出回路31
においてシーンチェンジを検出する目的は、フレーム間
予測符号化かフレーム内符号化のいずれかの圧縮方式を
決定するための判断材料にすることが主である。なぜな
ら、前後で相関の極めて低い画像では、フレーム間予測
符号化で圧縮するよりもフレーム内符号化で圧縮する方
が効率良く圧縮できるからである。また、圧縮後のデー
タも大きなものとなるため、データ量配分や出力バッフ
ァマネジメントの観点からもシーンチェンジを把握する
ことは重要である。
においてシーンチェンジを検出する目的は、フレーム間
予測符号化かフレーム内符号化のいずれかの圧縮方式を
決定するための判断材料にすることが主である。なぜな
ら、前後で相関の極めて低い画像では、フレーム間予測
符号化で圧縮するよりもフレーム内符号化で圧縮する方
が効率良く圧縮できるからである。また、圧縮後のデー
タも大きなものとなるため、データ量配分や出力バッフ
ァマネジメントの観点からもシーンチェンジを把握する
ことは重要である。
【0067】上述のようなシーンチェンジは前後の画像
で相関が著しく損なわれる所に存在するものであるた
め、当該シーンチェンジ部分は、例えば、前後の画像に
ついてそれぞれ例えば動きベクトル補償後の画像との差
分値を求め、それぞれこの差分値の画像全体での総和を
求めて、さらに当該前後の画像での上記総和の比を求め
るなどして検出できる。
で相関が著しく損なわれる所に存在するものであるた
め、当該シーンチェンジ部分は、例えば、前後の画像に
ついてそれぞれ例えば動きベクトル補償後の画像との差
分値を求め、それぞれこの差分値の画像全体での総和を
求めて、さらに当該前後の画像での上記総和の比を求め
るなどして検出できる。
【0068】このようなことから、本実施例のシーンチ
ェンジ検出回路31では、上記画像情報評価回路50の
出力を用いてシーンチェンジを検出するようにしてい
る。すなわち、上記画像情報評価回路50は、前述のよ
うに動き補償後の画像の差分値のブロック内の和を第2
のパラメータとして出力するため、当該シーンチェンジ
検出回路31では、当該差分値のブロック内の和を用い
て、上述のシーンチェンジ検出のための演算を行うこと
ができる。
ェンジ検出回路31では、上記画像情報評価回路50の
出力を用いてシーンチェンジを検出するようにしてい
る。すなわち、上記画像情報評価回路50は、前述のよ
うに動き補償後の画像の差分値のブロック内の和を第2
のパラメータとして出力するため、当該シーンチェンジ
検出回路31では、当該差分値のブロック内の和を用い
て、上述のシーンチェンジ検出のための演算を行うこと
ができる。
【0069】次に、圧縮方法選択回路32について説明
する。当該圧縮方法選択回路32は、上記シーンチェン
ジ検出回路31からのシーンチェンジ検出出力を用いて
フレーム内符号化/フレーム間予測符号化(P,Bピク
チャ)のいずれの圧縮方式で圧縮を行うのかを選択す
る。また、当該圧縮方法選択回路32では、上記画像情
報評価回路50によって得られるマクロブロック毎の輝
度情報及び色差情報から求めたパラメータに基づいて、
マクロブロック毎のフレーム内符号化/フレーム間予測
符号化の各圧縮方法によって発生するデータの予想量
(発生予想量)を比較し、より発生予想量の少なくなる
圧縮方法をマクロブロック毎に選択するようにしてい
る。
する。当該圧縮方法選択回路32は、上記シーンチェン
ジ検出回路31からのシーンチェンジ検出出力を用いて
フレーム内符号化/フレーム間予測符号化(P,Bピク
チャ)のいずれの圧縮方式で圧縮を行うのかを選択す
る。また、当該圧縮方法選択回路32では、上記画像情
報評価回路50によって得られるマクロブロック毎の輝
度情報及び色差情報から求めたパラメータに基づいて、
マクロブロック毎のフレーム内符号化/フレーム間予測
符号化の各圧縮方法によって発生するデータの予想量
(発生予想量)を比較し、より発生予想量の少なくなる
圧縮方法をマクロブロック毎に選択するようにしてい
る。
【0070】また、フレーム内符号化方式による圧縮画
像は少なくともGOPの最初になければならない。さら
に、GOPはランダムアクセスを考慮してある程度の間
隔となされているので、必然的にIピクチャは当該間隔
で定期的に発生するものであり、また、本実施例ではシ
ーンチェンジ等によっても発生するものである。このよ
うなことから、当該圧縮方法選択回路32では、上記画
像情報評価回路50からの画像情報のカウントを行うと
共に、上記シーンチェンジ検出回路31からのシーンチ
ェンジ検出出力が当該圧縮方法選択回路32に加えられ
る。これにより当該圧縮方法選択回路32では、上記画
像のカウント値から定期的なフレーム内符号化を選択す
ると共にシーンチェンジ検出時にもフレーム内符号化を
選択(すなわちGOPの間隔を決定する)し、それら以
外ではフレーム間予測符号化を選択するようにしてい
る。
像は少なくともGOPの最初になければならない。さら
に、GOPはランダムアクセスを考慮してある程度の間
隔となされているので、必然的にIピクチャは当該間隔
で定期的に発生するものであり、また、本実施例ではシ
ーンチェンジ等によっても発生するものである。このよ
うなことから、当該圧縮方法選択回路32では、上記画
像情報評価回路50からの画像情報のカウントを行うと
共に、上記シーンチェンジ検出回路31からのシーンチ
ェンジ検出出力が当該圧縮方法選択回路32に加えられ
る。これにより当該圧縮方法選択回路32では、上記画
像のカウント値から定期的なフレーム内符号化を選択す
ると共にシーンチェンジ検出時にもフレーム内符号化を
選択(すなわちGOPの間隔を決定する)し、それら以
外ではフレーム間予測符号化を選択するようにしてい
る。
【0071】この圧縮方法選択回路32は、上記圧縮方
法の選択に応じて前記切換スイッチ13と24の切換制
御を行うと共に、その選択結果を示す情報を量子化ステ
ップ制御器33に送る。また、上記量子化ステップ制御
器33は、前記画像情報評価回路50からの評価値(パ
ラメータ)から画像の情報量、さらにはシーンチェンジ
のように前後の画像の相関が極めて低くなる所を知ると
共に、圧縮方法選択回路32からの選択結果を示す情報
からフレーム内符号化かフレーム間予測符号化のいずれ
が選択された画像であるかも知ることができる。
法の選択に応じて前記切換スイッチ13と24の切換制
御を行うと共に、その選択結果を示す情報を量子化ステ
ップ制御器33に送る。また、上記量子化ステップ制御
器33は、前記画像情報評価回路50からの評価値(パ
ラメータ)から画像の情報量、さらにはシーンチェンジ
のように前後の画像の相関が極めて低くなる所を知ると
共に、圧縮方法選択回路32からの選択結果を示す情報
からフレーム内符号化かフレーム間予測符号化のいずれ
が選択された画像であるかも知ることができる。
【0072】したがって、当該量子化ステップ制御器3
3においては、出力バッファ18の残量のみをフィード
バックする従来の量子化ステップ制御に比べて、入力画
像の急激な情報量変化に追随できることになり、また、
画像の情報量の変化に応じて適切な量子化ステップ制御
が可能で、さらに、フレーム内符号化/フレーム間予測
符号化の圧縮方法に応じて適切な量子化ステップ制御も
可能となる。
3においては、出力バッファ18の残量のみをフィード
バックする従来の量子化ステップ制御に比べて、入力画
像の急激な情報量変化に追随できることになり、また、
画像の情報量の変化に応じて適切な量子化ステップ制御
が可能で、さらに、フレーム内符号化/フレーム間予測
符号化の圧縮方法に応じて適切な量子化ステップ制御も
可能となる。
【0073】次に本実施例の構成における処理の流れ
を、図2のフローチャートに沿って説明する。先ず、ス
テップS1では、入力端子1に入力された画像データが
順次フレームメモリ40へ格納される。ここで、先に述
べたようにIピクチャの頻度や間隔の決定が画質に影響
を及ぼすので、これに関係して符号化に先だってGOP
を決めておく必要があり、また、レートコントロール
(量子化ステップ制御によるビットレートのコントロー
ル)をするために符号化に先だって1GOP分の画像に
ついての情報を収集しなければならない。このように、
次々と入力されてくる画像データに対してその間に分析
を行い、符号化するまでの十分な遅延時間を稼ぐため、
大量のフレームメモリ40を用いる。
を、図2のフローチャートに沿って説明する。先ず、ス
テップS1では、入力端子1に入力された画像データが
順次フレームメモリ40へ格納される。ここで、先に述
べたようにIピクチャの頻度や間隔の決定が画質に影響
を及ぼすので、これに関係して符号化に先だってGOP
を決めておく必要があり、また、レートコントロール
(量子化ステップ制御によるビットレートのコントロー
ル)をするために符号化に先だって1GOP分の画像に
ついての情報を収集しなければならない。このように、
次々と入力されてくる画像データに対してその間に分析
を行い、符号化するまでの十分な遅延時間を稼ぐため、
大量のフレームメモリ40を用いる。
【0074】次に、ステップS2では、動き検出器20
において、フレーム間予測符号化で圧縮するために必要
な動きベクトルを検出する。すなわち、このステップS
2では、予め定められたスケジュールでフレームメモリ
40中の各画像データをPピクチャ或いはBピクチャと
して圧縮符号化できるように、動き検出(モーションエ
スティメーション)を行う。
において、フレーム間予測符号化で圧縮するために必要
な動きベクトルを検出する。すなわち、このステップS
2では、予め定められたスケジュールでフレームメモリ
40中の各画像データをPピクチャ或いはBピクチャと
して圧縮符号化できるように、動き検出(モーションエ
スティメーション)を行う。
【0075】ここで、動き検出を行う画像については、
Iピクチャを規定しない。それはどの画像データがIピ
クチャになるのかこの時点では確定していないからであ
り、またIピクチャは動き補償を必要としないため、後
にどの画像データでもIピクチャにすることが可能だか
らである。上記画像情報評価回路50は、上記動き検出
をする際に用いられる最小歪み(Minimum Distortion)
或いは誤差の絶対値和(AD:Absolute Difference )
と呼ばれるものを符号化に用いるパラメータの一つ(第
2のパラメータ)として読み出し格納する。なお、差分
の自乗和或いはより簡略化して差分の和をパラメータと
することも可能である。
Iピクチャを規定しない。それはどの画像データがIピ
クチャになるのかこの時点では確定していないからであ
り、またIピクチャは動き補償を必要としないため、後
にどの画像データでもIピクチャにすることが可能だか
らである。上記画像情報評価回路50は、上記動き検出
をする際に用いられる最小歪み(Minimum Distortion)
或いは誤差の絶対値和(AD:Absolute Difference )
と呼ばれるものを符号化に用いるパラメータの一つ(第
2のパラメータ)として読み出し格納する。なお、差分
の自乗和或いはより簡略化して差分の和をパラメータと
することも可能である。
【0076】ここで、上記誤差の絶対値和(AD)は、
リファレンス側の画像を8×8ピクセルのブロックに分
割し、輝度データ8×8×4ピクセルと色差データ8×
8×2ピクセルのマクロブロック(MB)に対し、動き
検出を行なった際に求めた動きベクトルで切りだされる
サーチ側のマクロブロックとの各画素同士の差の絶対値
和で、以下の式(1) で求めることができる。
リファレンス側の画像を8×8ピクセルのブロックに分
割し、輝度データ8×8×4ピクセルと色差データ8×
8×2ピクセルのマクロブロック(MB)に対し、動き
検出を行なった際に求めた動きベクトルで切りだされる
サーチ側のマクロブロックとの各画素同士の差の絶対値
和で、以下の式(1) で求めることができる。
【0077】
【数1】
【0078】これをさらにマクロブロック内のブロック
について集計したものを用いてマクロブロックの誤差の
絶対値和(AD)とする。このパラメータはシーンチェ
ンジの判定やフレーム間予測符号化で圧縮する場合の画
像の相関も考慮した情報量の推定に用いるものである。
このパラメータはまた、後述するようにマクロブロック
タイプを決定するために使われる。
について集計したものを用いてマクロブロックの誤差の
絶対値和(AD)とする。このパラメータはシーンチェ
ンジの判定やフレーム間予測符号化で圧縮する場合の画
像の相関も考慮した情報量の推定に用いるものである。
このパラメータはまた、後述するようにマクロブロック
タイプを決定するために使われる。
【0079】画像の情報量を推定するパラメータSAD
は、式(2) のように、一つの画像内の上記誤差の絶対値
和(AD)を合計したものである。 SAD=ΣAD (2) もちろん、上記誤差の絶対値和(AD)以外に最小歪み
(Minimum Distortion)を用いてもよい。
は、式(2) のように、一つの画像内の上記誤差の絶対値
和(AD)を合計したものである。 SAD=ΣAD (2) もちろん、上記誤差の絶対値和(AD)以外に最小歪み
(Minimum Distortion)を用いてもよい。
【0080】次に、画像情報評価回路50では、ステッ
プS3のように、上記動き検出で得られたパラメータ以
外に、誤差の平均絶対値和(MAD:Mean Absolute Di
fference)、アクティビティ(Activity)を各画像毎に
評価する。上記誤差の平均絶対値和(MAD)はIピク
チャの情報量を推定するためのパラメータで、下記の式
(3) によって8×8画素のブロック毎に求め、必要に応
じてマクロブロック或いは画面で集計を行う。このパラ
メータはまた、マクロブロックタイプを決定するために
使われる。
プS3のように、上記動き検出で得られたパラメータ以
外に、誤差の平均絶対値和(MAD:Mean Absolute Di
fference)、アクティビティ(Activity)を各画像毎に
評価する。上記誤差の平均絶対値和(MAD)はIピク
チャの情報量を推定するためのパラメータで、下記の式
(3) によって8×8画素のブロック毎に求め、必要に応
じてマクロブロック或いは画面で集計を行う。このパラ
メータはまた、マクロブロックタイプを決定するために
使われる。
【0081】
【数2】
【0082】これをさらに、式(4) のように、マクロブ
ロック内のブロックについて合計したものを用いてマク
ロブロックの判定に用いる。 MAD=Σ blockMAD (4) またさらに、式(5) のように、マクロブロックの値を一
つの画像内で合計してその値を、その画像の(Iピクチ
ャとしての)情報量を表すパラメータSMADとする。
ロック内のブロックについて合計したものを用いてマク
ロブロックの判定に用いる。 MAD=Σ blockMAD (4) またさらに、式(5) のように、マクロブロックの値を一
つの画像内で合計してその値を、その画像の(Iピクチ
ャとしての)情報量を表すパラメータSMADとする。
【0083】SMAD=ΣMAD (5) また、上記アクティビティは、一つの画面の中でそのマ
クロブロックの画像の状態に応じてよりきめ細かに量子
化ステップを制御することによって画質を維持しながら
より圧縮効率を高めるために、その画像の状態を定量化
するためのパラメータである。
クロブロックの画像の状態に応じてよりきめ細かに量子
化ステップを制御することによって画質を維持しながら
より圧縮効率を高めるために、その画像の状態を定量化
するためのパラメータである。
【0084】例えば一つのブロック内で画像が画素のレ
ベル変化の少ない平坦な部分では量子化による歪みが目
立ち易く、量子化ステップを小さくしてやるべきで、逆
にレベル変化が多い複雑なパターンのブロックでは量子
化歪みは目立ち難く、情報量も多いので量子化ステップ
を大きくするべきである。そこで、例えばブロックの平
坦度を表すパラメータをこのアクティビティとして用い
るようにしている。
ベル変化の少ない平坦な部分では量子化による歪みが目
立ち易く、量子化ステップを小さくしてやるべきで、逆
にレベル変化が多い複雑なパターンのブロックでは量子
化歪みは目立ち難く、情報量も多いので量子化ステップ
を大きくするべきである。そこで、例えばブロックの平
坦度を表すパラメータをこのアクティビティとして用い
るようにしている。
【0085】次に、ステップS4では、上記シーンチェ
ンジ検出回路31でシーンチェンジの検出を行う。この
シーンチェンジ検出回路31でのシーンチェンジ検出
は、動き検出器41で得られた上記パラメータADを使
って、シーンチェンジを検出する。ここで、シーンチェ
ンジ検出回路31におけるシーンチェンジ検出では、上
記誤差の絶対値和(AD)を1画面分合計した合計値
(SAD)を使い、過去の誤差の絶対値和(AD)の値
から検出しようとしている現在の誤差の絶対値和(A
D)の値が、ある比率以上に大きくなった場合をシーン
チェンジとして検出する。
ンジ検出回路31でシーンチェンジの検出を行う。この
シーンチェンジ検出回路31でのシーンチェンジ検出
は、動き検出器41で得られた上記パラメータADを使
って、シーンチェンジを検出する。ここで、シーンチェ
ンジ検出回路31におけるシーンチェンジ検出では、上
記誤差の絶対値和(AD)を1画面分合計した合計値
(SAD)を使い、過去の誤差の絶対値和(AD)の値
から検出しようとしている現在の誤差の絶対値和(A
D)の値が、ある比率以上に大きくなった場合をシーン
チェンジとして検出する。
【0086】すなわち、このシーンチェンジ検出方法で
は、例えば、あるフレームから前方向の動きベクトルの
検出を行ったときにマクロブロック毎の誤差の絶対値和
を1画面分(1フレーム分)合計した値(合計値(SAD)
)と、過去のフレームで同様に前方向の動きベクトル
検出を行ったときにマクロブロック毎の誤差の絶対値和
を1画面分(1フレーム分)合計した値(合計値(prev
_SAD)との比(SAD /prev_SAD)が、ある閾値(Thresh)
を越えた場合は当該フレームがシーンチェンジであると
判定する。ただし、このシーンチェンジ検出方法の場
合、誤差の絶対値の合計値(SAD) が、ある閾値(min_SA
D)と比べて異常に小さい場合には、直前の誤差の絶対値
の上記合計値(prev _SAD)を更新しないようにする。ま
た、シーンチェンジであると判定された場合は、直前の
上記合計値(prev _SAD)を更新しないようにする。
は、例えば、あるフレームから前方向の動きベクトルの
検出を行ったときにマクロブロック毎の誤差の絶対値和
を1画面分(1フレーム分)合計した値(合計値(SAD)
)と、過去のフレームで同様に前方向の動きベクトル
検出を行ったときにマクロブロック毎の誤差の絶対値和
を1画面分(1フレーム分)合計した値(合計値(prev
_SAD)との比(SAD /prev_SAD)が、ある閾値(Thresh)
を越えた場合は当該フレームがシーンチェンジであると
判定する。ただし、このシーンチェンジ検出方法の場
合、誤差の絶対値の合計値(SAD) が、ある閾値(min_SA
D)と比べて異常に小さい場合には、直前の誤差の絶対値
の上記合計値(prev _SAD)を更新しないようにする。ま
た、シーンチェンジであると判定された場合は、直前の
上記合計値(prev _SAD)を更新しないようにする。
【0087】次のステップS5では、GOP長の決定を
行い、ステップS6では圧縮方法の選択(ピクチャタイ
プの決定)とを行う。ここでは、すでに述べたように、
符号化に際してランダムアクセス性を考慮して適当なフ
レーム数毎にGOPを区切る。このとき少なくともGO
Pの符号順で最初のピクチャはIピクチャでなければな
らないからピクチャの数をカウントし定期的にピクチャ
タイプをIピクチャにする。
行い、ステップS6では圧縮方法の選択(ピクチャタイ
プの決定)とを行う。ここでは、すでに述べたように、
符号化に際してランダムアクセス性を考慮して適当なフ
レーム数毎にGOPを区切る。このとき少なくともGO
Pの符号順で最初のピクチャはIピクチャでなければな
らないからピクチャの数をカウントし定期的にピクチャ
タイプをIピクチャにする。
【0088】一方、上記シーンチェンジによって前後の
ピクチャで相関が低くなった場合、これも先に述べたよ
うにIピクチャで圧縮符号化すると効率が良い。しかし
ながら、Iピクチャは圧縮率が低いため、低ビットレー
トにおいては頻繁に現れると画質の低下を招く。したが
ってシーンチェンジが検出された場合、Iピクチャ同士
の間隔を適度に保つよう適応的にGOPの長さを決め
る。
ピクチャで相関が低くなった場合、これも先に述べたよ
うにIピクチャで圧縮符号化すると効率が良い。しかし
ながら、Iピクチャは圧縮率が低いため、低ビットレー
トにおいては頻繁に現れると画質の低下を招く。したが
ってシーンチェンジが検出された場合、Iピクチャ同士
の間隔を適度に保つよう適応的にGOPの長さを決め
る。
【0089】次に、圧縮方法選択回路32は、ステップ
S7においてマクロブロックタイプの判定を行う。すな
わち、圧縮方法選択回路32では、当該ステップS7に
おいてマクロブロック毎の圧縮方法とマクロブロックタ
イプとを決める。前述のように既に求めた上記誤差の平
均絶対値和(MAD)と誤差の絶対値和(AD)は、そ
れぞれフレーム内符号化/フレーム間予測符号化で圧縮
したときの圧縮後のデータ量に関係するので、この2つ
のパラメータを比較すればフレーム内符号化/フレーム
間予測符号化のどちらのマクロブロックタイプがより少
ないデータ量になるか判定できる。
S7においてマクロブロックタイプの判定を行う。すな
わち、圧縮方法選択回路32では、当該ステップS7に
おいてマクロブロック毎の圧縮方法とマクロブロックタ
イプとを決める。前述のように既に求めた上記誤差の平
均絶対値和(MAD)と誤差の絶対値和(AD)は、そ
れぞれフレーム内符号化/フレーム間予測符号化で圧縮
したときの圧縮後のデータ量に関係するので、この2つ
のパラメータを比較すればフレーム内符号化/フレーム
間予測符号化のどちらのマクロブロックタイプがより少
ないデータ量になるか判定できる。
【0090】次のステップS8では、量子化ステップ制
御器33において、レートコントロールのためのビット
配分を行う。各ピクチャ毎の圧縮符号化された後のデー
タサイズは、その符号化方式や元々の画像データが持つ
情報量、前後の相関などによって大きく変動する。平均
的な画質を保つようにするならばことさらである。
御器33において、レートコントロールのためのビット
配分を行う。各ピクチャ毎の圧縮符号化された後のデー
タサイズは、その符号化方式や元々の画像データが持つ
情報量、前後の相関などによって大きく変動する。平均
的な画質を保つようにするならばことさらである。
【0091】各ピクチャ毎の圧縮符号化された後のデー
タサイズのむらは出力バッファ18によってある程度吸
収されるが、平均的には一定のビットレートにしなけれ
ばならない。したがって、ある区間を定めればその間の
ピクチャのトータルの圧縮後のデータ量が決まる。そこ
で、既に決定しているピクチャタイプと、予め調べてお
いた画像の情報量パラメータとを用いて各ピクチャ毎に
圧縮後のデータ量、すなわち各ピクチャが使用可能なビ
ットの量を決める。
タサイズのむらは出力バッファ18によってある程度吸
収されるが、平均的には一定のビットレートにしなけれ
ばならない。したがって、ある区間を定めればその間の
ピクチャのトータルの圧縮後のデータ量が決まる。そこ
で、既に決定しているピクチャタイプと、予め調べてお
いた画像の情報量パラメータとを用いて各ピクチャ毎に
圧縮後のデータ量、すなわち各ピクチャが使用可能なビ
ットの量を決める。
【0092】このとき、例えば情報量の少ない画像やB
ピクチャには少なく、情報量の多い画像やIピクチャに
は多くする。これをビット配分と呼ぶ。これによって画
質のばらつきを抑え、なおかつ一定レートに保つことが
容易になる。本実施例ではGOPをビット配分の区間と
して、次の式(6) ,式(7) のようにビット配分を行う。 Total Bit Count =(Bit Rate [bit/s]× Number Of Picture In GOP [picture ])/(Picture Rate [picture/s]) [bit] (6) Available Bits=(Total Bit Count ×ターゲットの画像情報量パラメータ)/ 画像情報量パラメータのGOP合計値) [bit] (7) なお、この式(7) で使用している情報量パラメータは、
先に述べたパラメータSMAD,SADを用い、これに
圧縮するピクチャタイプ別の乗数をかけたものである。
また、上記乗数は各ピクチャタイプ間のパラメータと画
質との関係を調整するものである。
ピクチャには少なく、情報量の多い画像やIピクチャに
は多くする。これをビット配分と呼ぶ。これによって画
質のばらつきを抑え、なおかつ一定レートに保つことが
容易になる。本実施例ではGOPをビット配分の区間と
して、次の式(6) ,式(7) のようにビット配分を行う。 Total Bit Count =(Bit Rate [bit/s]× Number Of Picture In GOP [picture ])/(Picture Rate [picture/s]) [bit] (6) Available Bits=(Total Bit Count ×ターゲットの画像情報量パラメータ)/ 画像情報量パラメータのGOP合計値) [bit] (7) なお、この式(7) で使用している情報量パラメータは、
先に述べたパラメータSMAD,SADを用い、これに
圧縮するピクチャタイプ別の乗数をかけたものである。
また、上記乗数は各ピクチャタイプ間のパラメータと画
質との関係を調整するものである。
【0093】なお、上記式(7) の上記画像情報量パラメ
ータのGOP合計値は、式(8) に示すようにして求め
る。 画像情報量パラメータのGOP合計値=Ki×ΣSMAD+Kp
×ΣSADp+Kb×ΣSADb SADp: PピクチャのSAD SADb: BピクチャのSAD (8) 上記量子化ステップ制御器33においては、次のステッ
プS9,ステップS10で基本量子化ステップの決定及
び画面内の量子化ステップの制御を行う。
ータのGOP合計値は、式(8) に示すようにして求め
る。 画像情報量パラメータのGOP合計値=Ki×ΣSMAD+Kp
×ΣSADp+Kb×ΣSADb SADp: PピクチャのSAD SADb: BピクチャのSAD (8) 上記量子化ステップ制御器33においては、次のステッ
プS9,ステップS10で基本量子化ステップの決定及
び画面内の量子化ステップの制御を行う。
【0094】すなわち、上述のようにしてピクチャタイ
プが決まり、マクロブロックタイプが決まれば、上記画
像情報評価回路50によって求めた情報量パラメータと
量子化ステップとから量子化後のデータサイズをある程
度予測できる。したがって、情報量パラメータと量子化
後のデータ量が決まっていれば、量子化ステップを逆算
することができる。このようにして求めた量子化ステッ
プを、そのピクチャの基本量子化ステップとする。
プが決まり、マクロブロックタイプが決まれば、上記画
像情報評価回路50によって求めた情報量パラメータと
量子化ステップとから量子化後のデータサイズをある程
度予測できる。したがって、情報量パラメータと量子化
後のデータ量が決まっていれば、量子化ステップを逆算
することができる。このようにして求めた量子化ステッ
プを、そのピクチャの基本量子化ステップとする。
【0095】量子化ステップ制御器33では、上述のよ
うに画面内の量子化ステップを各ブロック毎になるべく
画質を高く、かつ、圧縮効率も高くするように制御す
る。この制御は、上記アクティビティやマクロブロック
タイプなどの情報を基に基本量子化ステップを制御する
ことで実現する。次のステップS11では、可変長符号
化回路17において符号化を行う。
うに画面内の量子化ステップを各ブロック毎になるべく
画質を高く、かつ、圧縮効率も高くするように制御す
る。この制御は、上記アクティビティやマクロブロック
タイプなどの情報を基に基本量子化ステップを制御する
ことで実現する。次のステップS11では、可変長符号
化回路17において符号化を行う。
【0096】ここまでで圧縮符号化の全てのパラメータ
が決まっているので、これ以後は、MPEGの規則にし
たがって圧縮符号化する。最後に、ステップS12で
は、前述した各パラメータの更新を行う。ここで、画像
情報量と基本量子化ステップ、圧縮後のデータ量の関係
は、圧縮する画像に依存する。したがって、その関係を
表す式に用いるパラメータ、予測パラメータを圧縮後の
実際のデータ量をフィードバックしてやることにより学
習させ、予測の精度を向上させている。
が決まっているので、これ以後は、MPEGの規則にし
たがって圧縮符号化する。最後に、ステップS12で
は、前述した各パラメータの更新を行う。ここで、画像
情報量と基本量子化ステップ、圧縮後のデータ量の関係
は、圧縮する画像に依存する。したがって、その関係を
表す式に用いるパラメータ、予測パラメータを圧縮後の
実際のデータ量をフィードバックしてやることにより学
習させ、予測の精度を向上させている。
【0097】次に、図3のフローチャートを用いてマク
ロブロック毎の色差まで含めた動き検出について説明す
る。この図3において、ステップS301では動きベク
トル検出のサーチ時の座標(X,Y)を変数(-search_
X)、変数(-search_Y)とおき、次のステップS302で
は誤差の絶対値和(AD)を関数(MAXINT)とする。
ロブロック毎の色差まで含めた動き検出について説明す
る。この図3において、ステップS301では動きベク
トル検出のサーチ時の座標(X,Y)を変数(-search_
X)、変数(-search_Y)とおき、次のステップS302で
は誤差の絶対値和(AD)を関数(MAXINT)とする。
【0098】ステップS303では、サーチ側の地点
(X,Y)のマクロブロック輝度データを切り出し、ス
テップS304ではリファレンス側のマクロブロック輝
度データとピクセル毎の差分値の絶対値和(誤差の絶対
値和AD)を求め、これをerrYとする。ステップS
305では、サーチ側の地点(X,Y)のマクロブロッ
ク色差データを切り出し、ステップS306では、リフ
ァレンス側のマクロブロック色差データとピクセル毎の
差分値の絶対値和(誤差の絶対値和AD)を求め、これ
をerrCとする。
(X,Y)のマクロブロック輝度データを切り出し、ス
テップS304ではリファレンス側のマクロブロック輝
度データとピクセル毎の差分値の絶対値和(誤差の絶対
値和AD)を求め、これをerrYとする。ステップS
305では、サーチ側の地点(X,Y)のマクロブロッ
ク色差データを切り出し、ステップS306では、リフ
ァレンス側のマクロブロック色差データとピクセル毎の
差分値の絶対値和(誤差の絶対値和AD)を求め、これ
をerrCとする。
【0099】次のステップS307では、輝度データの
重み付けの定数Kyと、色差データの重み付けの定数K
cと、上記マクロブロック輝度データにおける差分値の
絶対値和errYと、上記マクロブロック色差データに
おける差分値の絶対値和errCとから、式(9) に示す
ように、 Ky*errY+Kc*errC (9) を求め、これをerrとする。なお、上記輝度データの
重み付けの定数Kyは例えば1に、また、色差データの
重み付けの定数Kcは例えば1.5に設定することがで
きる。
重み付けの定数Kyと、色差データの重み付けの定数K
cと、上記マクロブロック輝度データにおける差分値の
絶対値和errYと、上記マクロブロック色差データに
おける差分値の絶対値和errCとから、式(9) に示す
ように、 Ky*errY+Kc*errC (9) を求め、これをerrとする。なお、上記輝度データの
重み付けの定数Kyは例えば1に、また、色差データの
重み付けの定数Kcは例えば1.5に設定することがで
きる。
【0100】次のステップS308では、絶対値和AD
と上記のように求めたerrとから、AD>errか否
かの判定を行う。この判定において、AD>errであ
ると判定した場合にはステップS309に進み、それ以
外と判定した場合にはステップS310に進む。ステッ
プS309では、上記ステップS303〜S307同様
に、マクロブロック輝度データにおける絶対値和ADy
をerrYとし、マクロブロック色差データにおける絶
対値和ADcをerrCとし、絶対値和ADをerrと
し、さらに動きベクトルの座標(vec_X, vec_Y)を
(X,Y)とした後、ステップS310に進む。
と上記のように求めたerrとから、AD>errか否
かの判定を行う。この判定において、AD>errであ
ると判定した場合にはステップS309に進み、それ以
外と判定した場合にはステップS310に進む。ステッ
プS309では、上記ステップS303〜S307同様
に、マクロブロック輝度データにおける絶対値和ADy
をerrYとし、マクロブロック色差データにおける絶
対値和ADcをerrCとし、絶対値和ADをerrと
し、さらに動きベクトルの座標(vec_X, vec_Y)を
(X,Y)とした後、ステップS310に進む。
【0101】このステップS310ではXを増加させ、
次のステップS311では、X≧search_X か否かの判
定を行う。このステップS311でノーと判定した場合
にはステップS303に戻り、イエスと判定した場合に
はステップS312に進む。ステップS312では、X
を-search _X とし、さらにYを増加させる。その後、
ステップS313では、Y≧search_Y か否かの判定を
行う。このステップS313でノーと判定した場合には
ステップS303に戻り、イエスと判定した場合には処
理を終了する。
次のステップS311では、X≧search_X か否かの判
定を行う。このステップS311でノーと判定した場合
にはステップS303に戻り、イエスと判定した場合に
はステップS312に進む。ステップS312では、X
を-search _X とし、さらにYを増加させる。その後、
ステップS313では、Y≧search_Y か否かの判定を
行う。このステップS313でノーと判定した場合には
ステップS303に戻り、イエスと判定した場合には処
理を終了する。
【0102】次に、図4のフローチャートを用いて動き
検出時に輝度データだけの誤差しか求めていないときの
色差データ誤差の計算方法について説明する。この図4
において、ステップS321では、動きベクトル(X,
Y)を変数(Vec_X)、変数(Vec_Y)とおく。このVec _
X 、Vec _Y は、輝度データだけで求めたものである。
検出時に輝度データだけの誤差しか求めていないときの
色差データ誤差の計算方法について説明する。この図4
において、ステップS321では、動きベクトル(X,
Y)を変数(Vec_X)、変数(Vec_Y)とおく。このVec _
X 、Vec _Y は、輝度データだけで求めたものである。
【0103】次のステップS322では、サーチ側の地
点(X,Y)のマクロブロック色差データを切り出す。
ステップS323では、リファレンス側のマクロブロッ
ク色差データとピクセル毎の差分値の絶対値和を求め、
これをADcとする。次のステップS324では、輝度
データの重み付けの定数Kyと、色差データの重み付け
の定数Kcと、上記マクロブロックの輝度データにおけ
る差分値の絶対値和ADyと、上記マクロブロック輝度
データにおける差分値の絶対値和ADcとから、式(10)
に示すように、 Ky*ady+Kc*ADc (10) を求め、これをADとする。
点(X,Y)のマクロブロック色差データを切り出す。
ステップS323では、リファレンス側のマクロブロッ
ク色差データとピクセル毎の差分値の絶対値和を求め、
これをADcとする。次のステップS324では、輝度
データの重み付けの定数Kyと、色差データの重み付け
の定数Kcと、上記マクロブロックの輝度データにおけ
る差分値の絶対値和ADyと、上記マクロブロック輝度
データにおける差分値の絶対値和ADcとから、式(10)
に示すように、 Ky*ady+Kc*ADc (10) を求め、これをADとする。
【0104】次に、図5のフローチャートを用いて色差
データも考慮したマクロブロックタイプ判定の方法につ
いて説明する。この図5において、ステップS331で
は、色差データも含んだ誤差の絶対値和ADと、色差デ
ータも含んだ誤差の平均絶対値和MADを求める。次の
ステップS332では、マクロブロックタイプ判定式に
従来の誤差の平均絶対値和MADと誤差の絶対値和AD
の代わりに、色差データを含んだ誤差の平均絶対値和M
ADと誤差の絶対値和ADを使い、判定を行う。
データも考慮したマクロブロックタイプ判定の方法につ
いて説明する。この図5において、ステップS331で
は、色差データも含んだ誤差の絶対値和ADと、色差デ
ータも含んだ誤差の平均絶対値和MADを求める。次の
ステップS332では、マクロブロックタイプ判定式に
従来の誤差の平均絶対値和MADと誤差の絶対値和AD
の代わりに、色差データを含んだ誤差の平均絶対値和M
ADと誤差の絶対値和ADを使い、判定を行う。
【0105】上述したように、本発明実施例の画像符号
化装置においては、動き検出器41と動きベクトル発生
回路34で輝度データのみならず色差データの誤差値も
計算して動きベクトルを検出(若しくは輝度データから
動きベクトルを検出した後に色差データの誤差値を計
算)することで、空間的に輝度が変化せずに色差だけに
特徴がある入力画像でも効率的に圧縮可能となってい
る。
化装置においては、動き検出器41と動きベクトル発生
回路34で輝度データのみならず色差データの誤差値も
計算して動きベクトルを検出(若しくは輝度データから
動きベクトルを検出した後に色差データの誤差値を計
算)することで、空間的に輝度が変化せずに色差だけに
特徴がある入力画像でも効率的に圧縮可能となってい
る。
【0106】また、本実施例装置においては、誤差の平
均絶対値和(MAD)や誤差の絶対値和(AD)を使用
し、圧縮後のデータ量の推測を行なっており、したがっ
て、推測のためのデータが圧縮後のデータ量との相関が
高く精度良くなれば、必要なところにデータ量を割り当
てることができ、効率良く圧縮できることができる。さ
らに、動きベクトル検出,マクロブロックの判定、画像
情報評価を行う時に、色差データと輝度データのピクセ
ル数と対応する面積や情報としてどちらを重視するか等
に応じて重み付け係数をかけて調整するようにしている
ため、よりよい圧縮画像を得ることが可能となる。
均絶対値和(MAD)や誤差の絶対値和(AD)を使用
し、圧縮後のデータ量の推測を行なっており、したがっ
て、推測のためのデータが圧縮後のデータ量との相関が
高く精度良くなれば、必要なところにデータ量を割り当
てることができ、効率良く圧縮できることができる。さ
らに、動きベクトル検出,マクロブロックの判定、画像
情報評価を行う時に、色差データと輝度データのピクセ
ル数と対応する面積や情報としてどちらを重視するか等
に応じて重み付け係数をかけて調整するようにしている
ため、よりよい圧縮画像を得ることが可能となる。
【0107】
【発明の効果】本発明の画像符号化装置においては、輝
度データのみならず色差データからも誤差値を求めてお
り、これら輝度データと色差データから求めた誤差値の
合計誤差値から動きベクトルを検出することで、空間的
に輝度が変化せずに色差だけに特徴がある入力画像でも
効率的に圧縮するための動きベクトルを検出でき、した
がって、効率の良い画像圧縮が可能である。
度データのみならず色差データからも誤差値を求めてお
り、これら輝度データと色差データから求めた誤差値の
合計誤差値から動きベクトルを検出することで、空間的
に輝度が変化せずに色差だけに特徴がある入力画像でも
効率的に圧縮するための動きベクトルを検出でき、した
がって、効率の良い画像圧縮が可能である。
【0108】また、動きベクトル検出手段は、輝度デー
タのブロックと色差データのブロックの面積若しくは輝
度データと色差データの重視する度合いに応じて合計誤
差値の計算に重み付けを行うことで、色差データ部を重
視した色差部分の誤差の少ない動きベクトルを検出で
き、したがって、効率の良い画像圧縮が可能である。ま
た、動きベクトル検出手段は、輝度データの誤差値が最
小となる動きベクトルを使用して切り出したサーチ側と
リファレンス側のピクセル毎の色差データの誤差値を求
めることで、色差データのための誤差値の計算を容易に
している。
タのブロックと色差データのブロックの面積若しくは輝
度データと色差データの重視する度合いに応じて合計誤
差値の計算に重み付けを行うことで、色差データ部を重
視した色差部分の誤差の少ない動きベクトルを検出で
き、したがって、効率の良い画像圧縮が可能である。ま
た、動きベクトル検出手段は、輝度データの誤差値が最
小となる動きベクトルを使用して切り出したサーチ側と
リファレンス側のピクセル毎の色差データの誤差値を求
めることで、色差データのための誤差値の計算を容易に
している。
【0109】次に、圧縮方法選択手段は、ブロック毎の
輝度データと色差データの複雑さをマクロブロック単位
に集計した第1の集計値と、動きベクトルに基づく予測
データと入力画像データとの誤差値をマクロブロック単
位に集計した第2の集計値とを用いることで、輝度デー
タのみならず色差データも考慮した圧縮方法の選択を行
うようにしているため、圧縮方法の選択ミスが減少し効
率の良い高画質な画像圧縮が可能となる。さらに、この
ときも面積や重視する度合いに応じて色差データを重視
した圧縮方法の選択を行うことで、さらに圧縮方法の選
択ミスが減少し効率の良い画像圧縮が可能である。
輝度データと色差データの複雑さをマクロブロック単位
に集計した第1の集計値と、動きベクトルに基づく予測
データと入力画像データとの誤差値をマクロブロック単
位に集計した第2の集計値とを用いることで、輝度デー
タのみならず色差データも考慮した圧縮方法の選択を行
うようにしているため、圧縮方法の選択ミスが減少し効
率の良い高画質な画像圧縮が可能となる。さらに、この
ときも面積や重視する度合いに応じて色差データを重視
した圧縮方法の選択を行うことで、さらに圧縮方法の選
択ミスが減少し効率の良い画像圧縮が可能である。
【0110】また、本発明の画像符号化装置において
は、画像情報を評価する画像情報評価手段をも設け、こ
こで各ブロック毎に輝度データと色差データとを用いて
画像情報を評価することで、輝度データのみならず色差
データも考慮した画面内の画像情報(例えば平坦度等)
を精度良く評価でき、効率の良い高画質な画像圧縮が可
能となる。さらにこのときの圧縮符号化処理手段は、そ
の評価値に基づいて、圧縮符号化のビット割当を行うこ
とで、必要なところにデータ量を割り当てることがで
き、効率良く圧縮できることが可能である。また、画像
情報評価手段でも、面積若しくは輝度データと色差デー
タの重視する度合いに応じて評価に重み付けを行うこと
で、色差データ部を重視した評価が行える。
は、画像情報を評価する画像情報評価手段をも設け、こ
こで各ブロック毎に輝度データと色差データとを用いて
画像情報を評価することで、輝度データのみならず色差
データも考慮した画面内の画像情報(例えば平坦度等)
を精度良く評価でき、効率の良い高画質な画像圧縮が可
能となる。さらにこのときの圧縮符号化処理手段は、そ
の評価値に基づいて、圧縮符号化のビット割当を行うこ
とで、必要なところにデータ量を割り当てることがで
き、効率良く圧縮できることが可能である。また、画像
情報評価手段でも、面積若しくは輝度データと色差デー
タの重視する度合いに応じて評価に重み付けを行うこと
で、色差データ部を重視した評価が行える。
【図1】本発明実施例の画像符号化装置の概略構成を示
すブロック回路図である。
すブロック回路図である。
【図2】本実施例装置の動作を説明するためのフローチ
ャートである。
ャートである。
【図3】マクロブロック毎の色差まで含めた動き検出の
フローチャートである。
フローチャートである。
【図4】動き検出時に輝度データだけの誤差しか求めて
いないときの色差データの誤差の計算方法のフローチャ
ートである。
いないときの色差データの誤差の計算方法のフローチャ
ートである。
【図5】色差データも考慮したマクロブロックタイプの
判定のフローチャートである。
判定のフローチャートである。
【図6】従来の画像符号化装置の概略構成を示すブロッ
ク回路図である。
ク回路図である。
【図7】画像の解像度と構成について説明するための図
である。
である。
【図8】マクロブロックとブロックについて説明するた
めの図である。
めの図である。
【図9】ルミナンスピクセルとクロミナンスピクセルの
配置について説明するための図である。
配置について説明するための図である。
【図10】ジグザグスキャンについて説明するための図
である。
である。
【図11】GOPの一例について説明するための図であ
る。
る。
10,22 フレームメモリ 11 ブロック分割器 12 差分器 13,24 スイッチ 14 DCT回路 15 量子化器 16 ジグザグスキャン回路 17 可変長符号化回路 18 出力バッファ 21 動き補償器 25 加算器 26 逆DCT回路 27 逆量子化器 31 シーンチェンジ検出回路 32 圧縮方法選択回路 33 量子化ステップ制御器 34 動きベクトル発生回路 41 動き検出器 50 画像情報評価回路
───────────────────────────────────────────────────── フロントページの続き (51)Int.Cl.6 識別記号 庁内整理番号 FI 技術表示箇所 H04N 7/32
Claims (8)
- 【請求項1】 入力画像データを複数のブロックに分割
し、分割したブロックの輝度データと色差データの複数
組からなるマクロブロック毎に、サーチ側とリファレン
ス側のピクセル毎の誤差値を輝度データと色差データと
から求め、当該誤差値を合計した合計誤差値が最小とな
る動きベクトルを検出する動きベクトル検出手段と、 上記動きベクトル検出手段によって得られた動きベクト
ルに基づいて、適応的に画像データの圧縮方法を選択す
る圧縮方法選択手段と、 上記圧縮方法選択手段により選択された圧縮方法に従っ
て上記入力画像データに所定の圧縮符号化処理を施す圧
縮符号化処理手段とを有することを特徴とする画像符号
化装置。 - 【請求項2】 上記動きベクトル検出手段は、輝度デー
タのブロックと色差データのブロックの面積に応じて、
上記合計誤差値の計算に重み付けを行うことを特徴とす
る請求項1記載の画像符号化装置。 - 【請求項3】 上記動きベクトル検出手段は、輝度デー
タと色差データの重視する度合いに応じて、上記合計誤
差値の計算に重み付けを行うことを特徴とする請求項1
記載の画像符号化装置。 - 【請求項4】 上記動きベクトル検出手段は、輝度デー
タの誤差値が最小となる動きベクトルを使用して切り出
したサーチ側とリファレンス側のピクセル毎の色差デー
タの誤差値を求めることを特徴とする請求項1から請求
項3のうちのいずれか1項に記載の画像符号化装置。 - 【請求項5】 上記圧縮方法選択手段は、上記ブロック
毎の輝度データと色差データの複雑さをマクロブロック
単位に集計した第1の集計値と、上記動きベクトルに基
づく予測データと入力画像データとの誤差値をマクロブ
ロック単位に集計した第2の集計値とを用いて、マクロ
ブロック毎の圧縮方法を選択することを特徴とする請求
項1から請求項4のうちいずれか1項に記載の画像符号
化装置。 - 【請求項6】 上記各ブロック毎に輝度データと色差デ
ータとを用いて画像情報を評価する画像情報評価手段を
設け、 上記圧縮符号化処理手段は、上記画像情報評価手段から
の評価値に基づいて、圧縮符号化のビット割当を行うこ
とを特徴とする請求項1から請求項5のうちいずれか1
項に記載の画像符号化装置。 - 【請求項7】 上記画像情報評価手段は、輝度データの
ブロックと色差データのブロックの面積に応じて、上記
評価に重み付けを行うことを特徴とする請求項6記載の
画像符号化装置。 - 【請求項8】 上記画像情報評価手段は、輝度データと
色差データの重視する度合いに応じて、上記評価に重み
付けを行うことを特徴とする請求項6記載の画像符号化
装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP23810994A JP3480067B2 (ja) | 1994-09-30 | 1994-09-30 | 画像符号化装置及び方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP23810994A JP3480067B2 (ja) | 1994-09-30 | 1994-09-30 | 画像符号化装置及び方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH08102965A true JPH08102965A (ja) | 1996-04-16 |
JP3480067B2 JP3480067B2 (ja) | 2003-12-15 |
Family
ID=17025315
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP23810994A Expired - Fee Related JP3480067B2 (ja) | 1994-09-30 | 1994-09-30 | 画像符号化装置及び方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3480067B2 (ja) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH10229558A (ja) * | 1997-02-14 | 1998-08-25 | Denso Corp | 動画像情報の符号化装置 |
KR100364312B1 (ko) * | 1996-10-31 | 2002-12-18 | 닛뽕빅터 가부시키가이샤 | 블록간예측부호화복호화장치및그방법 |
JP2006246474A (ja) | 2005-02-28 | 2006-09-14 | Samsung Electronics Co Ltd | カラー成分間の単一符号化モードを利用して予測映像を生成する方法、およびその装置と、該単一符号化モードを利用して映像およびビデオを符号化/復号化する方法およびその装置 |
JP2006340033A (ja) * | 2005-06-02 | 2006-12-14 | Sony Corp | 映像信号処理方法および映像信号処理装置 |
JP2006340032A (ja) * | 2005-06-02 | 2006-12-14 | Sony Corp | 映像信号処理方法および映像信号処理装置 |
JP2007116558A (ja) * | 2005-10-21 | 2007-05-10 | Matsushita Electric Ind Co Ltd | 動画像符号化装置 |
EP1835763A2 (en) | 2006-03-15 | 2007-09-19 | Fujitsu Limited | Video coding apparatus |
JP2010103864A (ja) * | 2008-10-24 | 2010-05-06 | Canon Inc | 動画像符号化装置及び動画像符号化方法 |
-
1994
- 1994-09-30 JP JP23810994A patent/JP3480067B2/ja not_active Expired - Fee Related
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100364312B1 (ko) * | 1996-10-31 | 2002-12-18 | 닛뽕빅터 가부시키가이샤 | 블록간예측부호화복호화장치및그방법 |
JPH10229558A (ja) * | 1997-02-14 | 1998-08-25 | Denso Corp | 動画像情報の符号化装置 |
JP2006246474A (ja) | 2005-02-28 | 2006-09-14 | Samsung Electronics Co Ltd | カラー成分間の単一符号化モードを利用して予測映像を生成する方法、およびその装置と、該単一符号化モードを利用して映像およびビデオを符号化/復号化する方法およびその装置 |
JP4556774B2 (ja) * | 2005-06-02 | 2010-10-06 | ソニー株式会社 | 映像信号処理方法 |
JP2006340032A (ja) * | 2005-06-02 | 2006-12-14 | Sony Corp | 映像信号処理方法および映像信号処理装置 |
JP2006340033A (ja) * | 2005-06-02 | 2006-12-14 | Sony Corp | 映像信号処理方法および映像信号処理装置 |
JP4556773B2 (ja) * | 2005-06-02 | 2010-10-06 | ソニー株式会社 | 映像信号処理方法 |
JP2007116558A (ja) * | 2005-10-21 | 2007-05-10 | Matsushita Electric Ind Co Ltd | 動画像符号化装置 |
JP4593437B2 (ja) * | 2005-10-21 | 2010-12-08 | パナソニック株式会社 | 動画像符号化装置 |
EP1835763A2 (en) | 2006-03-15 | 2007-09-19 | Fujitsu Limited | Video coding apparatus |
JP2007251453A (ja) * | 2006-03-15 | 2007-09-27 | Fujitsu Ltd | 動画像符号化装置及びプログラム |
US8059713B2 (en) | 2006-03-15 | 2011-11-15 | Fujitsu Limited | Video coding apparatus |
JP2010103864A (ja) * | 2008-10-24 | 2010-05-06 | Canon Inc | 動画像符号化装置及び動画像符号化方法 |
Also Published As
Publication number | Publication date |
---|---|
JP3480067B2 (ja) | 2003-12-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3954656B2 (ja) | 画像符号化装置及び方法 | |
US9258567B2 (en) | Method and system for using motion prediction to equalize video quality across intra-coded frames | |
US8036267B2 (en) | Rate control for video coder employing adaptive linear regression bits modeling | |
US8559501B2 (en) | Method and apparatus for adaptively determining a bit budget for encoding video pictures | |
US7869503B2 (en) | Rate and quality controller for H.264/AVC video coder and scene analyzer therefor | |
JP3755155B2 (ja) | 画像符号化装置 | |
US20050175093A1 (en) | Target bitrate estimator, picture activity and buffer management in rate control for video coder | |
US20060239347A1 (en) | Method and system for scene change detection in a video encoder | |
JPH0898185A (ja) | 画像符号化装置 | |
US8189667B2 (en) | Moving picture encoding apparatus | |
KR19990036646A (ko) | 비디오 프레임 시퀀스 인코딩 시스템 및 그 방법, 컴퓨터 프로그램 제품 | |
JPH0974565A (ja) | 映像信号符号化システム用コントローラ | |
JPH0865678A (ja) | 動画像符号化方式 | |
US20060256856A1 (en) | Method and system for testing rate control in a video encoder | |
US7986731B2 (en) | H.264/AVC coder incorporating rate and quality controller | |
US6697430B1 (en) | MPEG encoder | |
JPH09200761A (ja) | 映像信号符号化システム用コントローラ | |
JP3480067B2 (ja) | 画像符号化装置及び方法 | |
JP2006135557A (ja) | 動画像符号化装置 | |
JP3450384B2 (ja) | 動画像符号化装置 | |
JP3173369B2 (ja) | 画像圧縮符号化装置 | |
US7133448B2 (en) | Method and apparatus for rate control in moving picture video compression | |
JP2001238215A (ja) | 動画像符号化装置及びその方法 | |
JP3812269B2 (ja) | 動画像符号化装置及びその方法 | |
JP3888533B2 (ja) | 画像特徴に応じた画像符号化装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20030909 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20081010 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20091010 Year of fee payment: 6 |
|
LAPS | Cancellation because of no payment of annual fees |