JP5276957B2 - 動画像符号化方法及び装置 - Google Patents

動画像符号化方法及び装置 Download PDF

Info

Publication number
JP5276957B2
JP5276957B2 JP2008293447A JP2008293447A JP5276957B2 JP 5276957 B2 JP5276957 B2 JP 5276957B2 JP 2008293447 A JP2008293447 A JP 2008293447A JP 2008293447 A JP2008293447 A JP 2008293447A JP 5276957 B2 JP5276957 B2 JP 5276957B2
Authority
JP
Japan
Prior art keywords
value
code amount
sad
image
generated code
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
Application number
JP2008293447A
Other languages
English (en)
Other versions
JP2010124054A (ja
Inventor
宗明 山口
雅俊 近藤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Kokusai Electric Inc
Original Assignee
Hitachi Kokusai Electric Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Kokusai Electric Inc filed Critical Hitachi Kokusai Electric Inc
Priority to JP2008293447A priority Critical patent/JP5276957B2/ja
Publication of JP2010124054A publication Critical patent/JP2010124054A/ja
Application granted granted Critical
Publication of JP5276957B2 publication Critical patent/JP5276957B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、映像符号化方法及び装置に関わり、特に、発生符号量の予測に関する。
従来から知られている MPEG-2 形式や MPEG-4 形式等で代表される画像符号化技術では、画像情報が一般的に持つ特性、すなわち隣接画素間とフレーム間に高い相関を持つという特性を利用し、更に人間の視覚にとって変化を知覚しにくい高周波成分などの冗長な情報を削減している。これにより、広い伝送帯域(たとえば、HD-SDI では約 1.5 Gbps )にある入力映像を、低い伝送帯域(例えば、地上デジタル放送での約 15 Mbps )に適用させることができるようにしている。
近年では、ISO/MPEG( International Organization for Standardization / Moving Picture Experts Group )と ITU-T/VCEG(International Telecommunication Union - Telecommunication standardization sector / Video Coding Experts Group )の共同プロジェクトによって策定された H.264 / AVC 動画像符号化方式(以下、H.264 と称する)が、その優れた画質と優れた圧縮率性能によって、広く使用されるに至っている。
H.264 ではマクロブロックと呼ばれる 16 × 16 画素ブロック単位で符号化処理を行う。画面内あるいは画面間予測においては、16 × 16 画素や 4 × 4 画素、8 × 8 画素等にマクロブロックをブロック単位に分割し、各ブロック単位で予測処理を行い、予測画像との差分を DCT( Discrete Cosine Transform :離散コサイン変換)などの変換及び量子化処理を行った後に可変長符号化を行い、符号化を行うことが規定されている。
H.264 では、マクロブロックの画像の状態により発生符号量に違いが生じる。また、量子化を粗く施すことにより発生符号量を抑制することが可能である。しかしその際、画質が劣化するという副作用が生じる。そのため、与えられるビットレートを十分に使用し符号化を行うことが重要である。それ故、何らかの手段を用いて発生符号量を予測し、予測結果に基づいて量子化制御などを行い高画質かつ求められる符号量に調整することが行われる。
発生符号量の予測では、例えば、非特許文献1に記載のように、一般的に予測画像と対象マクロブロックの画像との各画素の差分値の絶対値和( Sum of Absolute Difference )以下、SAD と表記)を用いることが多い。図1にマクロブロック単位による、発生符号量と SAD 値の相関関係を示す分布の一例である。図1は、複数の異なる静止画像について、マクロブロック単位による発生符号量と SAD 値の関係をシミュレーションした結果に基づく模式図である。横軸が SAD 値、縦軸が発生符号量である。また、量子化値は固定である。
図1において、領域101内(網掛け部)に、発生符号量が分布している。この分布は、多少の違いはあるが、上に凸の曲線となっている。なお、網掛けは一様に配置されているが、実際の分布は、一様ではないことは言うまでもない。
非特許文献1では、上記図1に示すような、発生符号量予測値と SAD 値の相関関係をプロットし、最小二乗法近似を行い、2次関数にて近似すると記述されている。この場合、発生符号量予測値( bits )を近似するために、 SAD 値には、定数 a と b と c を用いた、式(1)の示すような関係となる。ここで、i は、0 〜 N−1 のいずれかのマクロブロックの SAD 値である( N は自然数、0<i<N )。
Figure 0005276957
宮地 悟史、滝嶋 康弘、羽鳥 好律"画像性質とバッファ制約を考慮したH.264レート制御方式"、平成17年、電子情報通信学会論文誌 D-II ,Vol.J88-D-II ,No.7 pp1114-1125( 2005 )
従来の技術では、発生符号量予測において予測精度の高いものの、演算量が非常に多い。マクロブロック( MB )単位で SAD 値を収集し、発生符号量予測を行うためには対象のマクロブロック数( MB 数)を N として、上述の式(1)に基づいた、式(2)の演算が必要となる。
Figure 0005276957
式(2)における係数は、Σ演算の外に出すことで、式(3)の演算式とすることができる。
Figure 0005276957
式(3)で示されるように、SAD 値の2乗をマクロブロック数回演算するため、発生符号量予測値( bits )を算出するための演算量は、非常に多い。
本発明の目的は、発生符号量予測値を算出するための演算量が少なく、かつ、高精度で実現する、動画像符号化方法及び動画像符号化装置を提供することにある。
上記の目的を達成するため、本発明は、発生符号量を予測するための演算式を、複数の一次式にて構成したものである。
好ましくは、上記発明の演算式を、1箇所以上が折れ曲がった一次式にて構成する。また好ましくは、量子化値によって異なる複数の演算式における折れ曲がりの位置を、同一の SAD 値に設ける。
さらに好ましくは、折曲がり箇所を1箇所とし、折れ曲がり位置の SAD 値より小さな SAD 値を有するマクロブロック数を M( M は自然数)とすると、発生符号量を予測するための演算式は、後述の式(4)のように示される。式(4)に示すように、折れ曲がりの位置(閾値)にてデータを分類し、SAD 値の平均値を用いることができ、式(2)若しくは式(3)と比較して、演算の回数を低減可能となる。
本発明の動画像符号化における符号化方法及び符号化装置によれば、発生符号量の予測を、高精度かつ低演算量にて実現することができる。
[実施例1]
図2から図7を用いて本発明における符号化装置の第1の実施例を説明する。なお、本書では、既に説明した図1を含め、以降の各図の説明において、共通な機能を有する構成要素には同一の参照番号を付し、説明を省略する。
図2によって、本発明の符号化時の処理モジュール構成を説明する。図2は、本発明の動画像符号化装置の一実施例の構成を示すブロック図である。201 は入力画像データ、202 は予測処理部、203 は変換・量子化部、204 は可変長符号化部、205 は逆量子化・逆変換部、206 はフレームメモリ、207 はビットストリームデータ、208 は発生符号化量予測部、209 は閾値のデータ、210 はビットレートを示すデータ、211 はマクロブロック分割部、212 は差分処理部、213 は加算処理部、214 は予測部 202 から出力される SAD 値のデータ、215 はマクロブロック数を示すデータ、216 は符号量を示すデータ、217 は量子化値のデータ(符号量予測値を示すデータ)である。図2の動画像符号化装置は、例えば、LSI( Large Scale Integrated circuit )内に構成される。図2は、例えば、H.264 形式で符号化する動画像符号化装置である。
図2において、入力画像データ 201 は、マクロブロック分割部 211 に入力される。マクロブロック分割部 211 は、入力画像データ 201 を、16 × 16 画素毎に分割して、予測部 202 と差分処理部 212 に出力する。予測処理部 202 は、入力された画像データについて、フレームメモリ 206 のデータを参照して予測処理を実行し、その結果、予測画像データが差分処理部 212 に出力される。差分処理部 212 は、マクロブロック分割部 211 から入力された入力画像データと予測画像との差分データを変換・量子化部 203 に出力する。
変換・量子化部 203 は、差分処理部 212 から入力されたデータを、例えば、直交変換等によって変換し、更に量子化して、逆量子化・逆変換部 205 及び可変長符号化部 204 に出力する。可変長符号化部 204 は、入力されたデータを可変長符号化して、ビットストリームデータ 207 として出力する。また、可変長符号化部 204 は、可変長符号化したデータの符号量を示すデータ 216 を発生符号化量予測部 208 に出力する。
一方、逆量子化・逆変換部 205 は、変換及び量子化されたデータを逆量子化しさらに逆変換して、加算処理部 213 に出力する。加算処理部 213 は、逆量子化・逆変換部 205 から入力されたデータと、予測処理部から入力された予測画像データとを加算して、フレームメモリ 206 に出力する。フレームメモリ 206 は、次段階での予測のために入力されたデータを格納する。
また予測処理部 202 は、予測実行時に、発生符号量の予測に必要なデータ、例えば、SAD 値のデータ 214 を発生符号量予測部 208 に出力する。
発生符号量予測部 208 は、マクロブロック数を示すデータ 215 、閾値のデータ 209 、ビットレートを示すデータ 210 、可変長符号化したデータの符号量を示すデータ 216 、及び、SAD 値のデータ 214 に基づき、各マクロブロックの量子化値を定め、その量子化値のデータ 217 を変換・量子化部 203 に出力する。なお、発生符号量を予測するためのマクロブロック数のデータ 215 は、例えば、1列以上のマクロブロックラインを対象領域(例えば水平画素数が 1920 画素の場合、1マクロブロックラインの対象領域では、マクロブロック数が120である。)とする場合から、複数のフレームを対象領域とする場合まで、任意の数で良い。
発生符号量予測部 208 について、詳細を図3に示す。
図3によって、本発明の動画像符号化装置の発生符号量予測部の一実施例を説明する。図3は、図2の発生符号量予測部 208 の詳細を説明した図である。301 は閾値制御部、302 は SAD 値比較部、303 は SAD 値蓄積制御部、305 は区分1の SAD 値蓄積部、306 は区分1の SAD 平均値算出部、307 は区分1の符号量予測値算出部、308 は区分2の SAD 値蓄積部、309 は区分2の SAD 平均値算出部、310 は区分2の符号量予測値算出部、311 は SAD 値/符号量対応テーブル、312 は比重加算部、304 は量子化値決定部である。
図3の発生符号量予測部 208 において、閾値制御部 301 は、発生符号量予測部 208 の外部より入力された閾値のデータ 209 を保持し、SAD 値比較部 302 の要求に応じて閾値のデータを出力する。SAD 値比較部 302 は、発生符号量予測部 208 の外部より入力された SAD 値と閾値制御部 301 から入手した閾値のデータを比較し、SAD 値が閾値より大きいか小さいかの情報を SAD 値と共に、SAD 値蓄積制御部 303 に出力する。
SAD 値蓄積制御部 303 は、以下の2つの動作を行う。第1の動作は、SAD 値比較部 302 より入力された SAD 値、及び SAD 値と閾値の比較情報に基づき、当該マクロブロックを区分1か区分2に分類する選択を行い、当該マクロブロックの SAD 値を選択された区分に出力する。例えば、区分1に分類された場合には、当該マクロブロックの SAD 値を区分1の SAD 値蓄積部に出力し、区分2に分類された場合には、当該マクロブロックの SAD 値を区分2の SAD 値蓄積部 308 に出力する。第2の動作は、発生符号量予測部 208 の外部より入力された対象マクロブロック数を示すデータ 215 を保持し、SAD 値の蓄積動作を行ったマクロブロック数がデータ 215 の値と同一になった時に、区分1の SAD 値蓄積部 305 と区分2の SAD 値蓄積部 308 に SAD の総和と対象となるマクロブロック数の出力を命じるコマンド、及び、量子化値決定部 304 に量子化値決定の実行を命じるコマンドを出力する。
区分1の SAD 値蓄積部 305 は、SAD 値蓄積制御部 303 より入力された SAD 値の総和の演算、及びマクロブロック数のカウントを実行する。そして、SAD 値蓄積制御部 303 の要求に応じて SAD 値の総和並びに対象のマクロブロック数のデータを SAD 平均値算出1部 306 に出力する。
区分1の SAD 平均値算出部 306 は、区分1の SAD 値蓄積部 305 より入力された SAD 値の総和の演算、及びマクロブロック数のデータから SAD の平均値を算出し、算出した平均値のデータを区分1の符号量予測値さんしゅつ部 307 に出力する。
区分1の符号量予測値算出部 307 は、区分1の SAD 平均値算出部 306 より入力された SAD の平均値のデータを保持し、量子化値決定部 304 の要求に応じて、SAD の平均値のデータと量子化値決定部 304 から入手した推測量子化値のデータ並びに SAD 値/符号量対応テーブル 311 からの情報に基づいて符号量予測値のデータと対象マクロブロック数のデータを比重加算部 312 に出力する。
区分2の SAD 値蓄積部 308 、区分2の SAD 平均値算出部 309 と区分2の符号量予測値算出部 310 は、区分1の SAD 値蓄積部 305 、区分1の SAD 平均値算出部 306 、区分1の符号量予測値算出部 307 それぞれと同様の動作を区分2のデータに対して実行する。
SAD 値/符号量対応テーブル 311 は、量子化値決定部 304 より入力された量子化値のデータに基づき、SAD 値から発生符号量を予測するための情報を、区分1の符号量予測値算出部 307 と区分2の符号量予測値算出部 310 に出力する。
比重加算部 312 は、区分1の符号量予測値算出部 307 と区分2の符号量予測値算出部 310 より入力されたそれぞれの発生符号量予測値のデータと、マクロブロック数のデータから比重加算を行い、比重加算された発生符号量予測値のデータを量子化値決定部 304 に出力する。
量子化値決定部 304 は、SAD 値蓄積制御部 303 より量子化値決定コマンドが入力された時に動作を開始し、推測量子化値を定める。そして、量子化値決定部 304 は、区分1の符号量予測値算出部 307部 、区分2の符号量予測値算出部 310 、SAD 値/符号量対応テーブル 311 それぞれに、定めた推測量子化値を出力すると、同時に、実行要求を出力する。
即ち、量子化値決定部 304 は、発生符号量予測部 208 の外部より入力されるビットレートを示すデータ 319 及び符号量を示すデータ 216 から、対象領域の発生符号量を決定し、比重加算部 312 から入手する発生符号量予測値のデータとの比較により、対象領域の平均量子化値を決定する。決定された量子化値 217 は、発生符号量予測部 208 の外部(図2参照)に出力される。
なお、図2及び図3において、マクロブロック数示すデータ 215 、しきい値のデータ 209 、及びビットレートを示すデータ 210 は、ディップスイッチでデータを保持しても良いし、LSI のレジスタ内に保持しても良い。
図4によって、発生符号量予測にて説明した区分1と区分2についてさらに説明する。図4は、本発明の一実施例のマクロブロック単位での SAD 値と発生符号量予測値の関係を示す図である。横軸が SAD 値、縦軸が発生符号量予測値である。また、量子化値は固定である。
図4の SAD 値に対する発生符号量予測値は、図1で示した分布から、区分1と区分2の2つの一次式となるように、直線近似を行った結果である。401 は特定の SAD 値、402-1 と 402-2 は近似式を示す直線である。
即ち、図4の実施例における発生符号量予測値は、特定の SAD 値 401 にて折れ曲がりを持つ直線にて近似を行う。本実施例では、折れ曲がり点の数を1点としている。このため、SAD 値 401 を境界として、SAD 値 401 より SAD 値が小さい領域を、直線 402-1 で近似し、その領域を区分1としている。また、SAD 値 401 を境界として、SAD 値 401 より SAD 値が大きい領域を、直線 402-2 で近似し、その領域を区分2としている。なお、図2及び図3における閾値のデータ 209 が、SAD 値 401 のデータに相当する。式(4)は、SAD 値に対する発生符号量予測値( bits )について、図4のように2つの一次式(直線 402-1 及び直線 402-2 ))で近似した場合の一実施例である。
図4及び式(4)は、発生符号量予測値と SAD 値の関係をプロットした図1に示す分布のデータから、例えば、最小二乗法近似を行い、1次関数にて近似したものである。この場合、発生符号量予測値( bits )と SAD には、定数 b0 、b1 、c0 、及び c1 を用いている。定数 b0 と b1 は、それぞれの直線の傾きで、定数 c0 と c1 は、それぞれの直線のY切片である。ここで、N は全てのマクロブロックの数、M は区分1内の SAD 値を有するマクロブロックの数、N−M は区分2内の SAD 値を有するマクロブロックの数、i は、0 〜 N−1 のいずれかのマクロブロックの SAD 値である( M 、及び N は自然数、0<i<N 、及び 0<i<M )。
Figure 0005276957
図5によって、発生符号量予測にて説明した区分1と区分2についてさらに説明する。図5は、本発明の一実施例で、量子化値をパラメータとした、マクロブロック単位での SAD 値と発生符号量予測値の関係を示す図である。横軸が SAD 値、縦軸が発生符号量予測値である。501 は特定の SAD 値(即ち、閾値)、502-1 及び 502-2 は、近似式を示す直線であり、直線502-1 は、区分1内( SAD 値が閾値以下)の発生符号量予測値を算出するための一次式、直線502-2 は、区分2内( SAD 値が閾値以上)の発生符号量予測値を算出するための一次式である。同様に、複数の異なる量子化値について、それぞれ区分1内の SAD 値によって発生符号量予測値を算出するための一次式を示す直線 503-1 、504-1、及び 505-1 、並びに、それぞれ区分2内の SAD 値によって発生符号量予測値を算出するための一次式を示す直線 503-2 、504-2、及び 505-2 を作成している。ここで、直線 502-1 と 502-2 で1つの量子化値の一次式を構成し、直線 503-1 と 503-2 、直線 504-1 と 504-2 、及び直線 505-1 と 505-2 でもそれぞれ1つの量子化値による一次式を構成している。
このように、図5の実施例では、異なる量子化値においても、区分1と区分2とに分類する特定の SAD 値(即ち、閾値)を同一としている。そのため、複数の量子化値をパラメータとして、発生符号量予測値を算出するために作成された一次式の組み合わせは、全て、同一の SAD 値で折れ曲がる複数の折れ線となる。これらの量子化値をパラメータとした、SAD 値に対応する発生符号量予測値は、テーブル化して図3の SAD 値/符号量対応テーブル 311 に格納される。また、その演算式のまま、として、図3の SAD 値/符号量対応テーブル 311 の替りに、演算処理を実行して発生符号量予測値を算出しても良い。
図5の実施例のように、量子化値の異なる複数の近似式を作成する場合に、特定の SAD 値(閾値)を同一の SAD 値に設けることによって、発生符号量予測値の算出に要する演算量が低減できる。
図6〜図8を用いて、本発明の発生符号化量予測部の一実施例の処理動作を説明する。図6は、本発明の一実施例の SAD 値の総和を演算する処理動作を説明するためのフローチャートである。図7は、本発明の一実施例の推定量子化値を定めたときの発生符号量予測処理動作を説明するためのフローチャートである。図8は、本発明の一実施例の平均量子化値の決定処理動作を説明するためのフローチャートである。図6〜図8の処理は、図3の発生符号化量予測部 208 が実行する。
図6を用いて、まず、SAD 値の総和を演算する処理動作について説明する。
最初に、ステップ 601 では、区分1の SAD 値蓄積メモリとマクロブロック( MB )数カウンタを初期化し、ステップ 602 では、区分2の SAD 値蓄積メモリとマクロブロック( MB )数カウンタを初期化する。なお、ステップ 601 とステップ 602 の処理の順番は、逆でも良いし、同時でも良い。
続いて、対象領域の MB を1つ選択し(ステップ 603 )、選択した MB の SAD 値を読み込む(ステップ 604 )。
続いて、ステップ 605 では、選択された MB の SAD 値と、設定された閾値との比較を行う。選択された MB の SAD 値が閾値未満の場合には、区分1を選択しステップ 606 の処理に移行する。閾値以上の場合には、区分2を選択しステップ 610 の処理に移行する。なお、この実施例では、閾値未満と以上とで、選択された MB の SAD 値を区分1か区分2かに選択したが、閾値以下を区分1とし、閾値超を区分2にしても良い。
ステップ 606 〜 609 では、区分1の MB 数カウンタを1増加し(ステップ 606 )、区分1の SAD 値蓄積メモリより総和値を読み込む(ステップ 607 )。そして、総和値に選択した MB の SAD 値を加算し(ステップ 608 )、結果を区分1のメモリに書き込みステップ 614 の処理に移行する(ステップ 609 )。
ステップ 610 〜 613 では、区分2の MB 数カウンタを1増加し(ステップ 610 )、区分2の SAD 値蓄積メモリより総和値を読み込む(ステップ 611 )。そして、総和値に選択した MB の SAD 値を加算し(ステップ 612 )、結果を区分1のメモリに書き込みステップ 614 の処理に移行する(ステップ 613 )。
ステップ 614 では、対象領域の処理の終了判定を行い、終了していない場合は、ステップ 603 に戻り、再度別の MB を選択し、ステップ 614 までの処理を繰り返す。また、対象領域の処理が終了したと判定した場合には、図6の処理を終了する。
次に、図7を用いて、推定量子化値を定めたときの発生符号量予測処理動作を説明する。まず、推定量子化値を選択し(ステップ 701 )、区分1の SAD 値の総和と区分1のマクロブロック数のデータにより SAD の平均値を算出する(ステップ 702 )。続いて、図5で説明した一次式(若しくは、SAD 値/符号量対応テーブル)を使用して、区分1の発生符号量予測値を算出する(ステップ 703 )。さらに、区分2の SAD 値の総和と区分2のマクロブロック数のデータとより SAD の平均値を算出する(ステップ 704 )。続いて、図5で説明した一次式(若しくは、SAD 値/符号量対応テーブル)を使用して、区分2の発生符号量予測値を算出する(ステップ 705 )。最後に、区分1の発生符号量予測値と区分2の発生符号量予測値を、それぞれの区分のマクロブロック数を用いて加重平均をして、発生符号量予測値とする(ステップ 706 )。
なお、ステップ 702 〜 703 の処理とステップ 704 〜 705 の処理の順番は、逆であっても良いし、同時に実行しても良い。
最後に、図8を用いて平均量子化値を決定する処理動作について説明する。
まず、ステップ 600 では、図6で説明した SAD 値の総和処理を実行する。
引き続いて、ステップ 700 では、図7で説明した推定量子化値を定めたときの発生符号量予測処理を実行する。
ステップ 801 では、上記ステップ 600 と 700 の処理の結果得られた発生符号量予測値と量子化値を保持する。そして、ステップ 802 では、実行すべき量子化値を満たしたかの判定を行い、満たしていない場合は、推定量子化値を定めたときの発生符号量予測処理(ステップ 700 )に戻る。また、満たしている場合は、ステップ 803 の処理に移行する。そして、ステップ 803 では、量子化値を出力し、平均量子化値の決定処理を終了する。
なお、図6〜図8実施例では、SAD 値を用いて発生符号量を予測したが、SAD 値である必要はない。例えば、各画素の差分値をアダマール変換した後に絶対値和をとった値でも良いし、アダマール変換に替わり DCT 変換(離散コサイン変換)を適用しても良い。
また、SAD 値と発生符号量予測値の関係で折れ曲がり点は1点としたが、2点以上であっても良い。
[実施例2]
実施例1では、本発明の動画像符号化処理を、ハードウェアにて実装した場合を示したが、実施例2では、プロセッサに実装した例について説明する。
実施例1で説明した、閾値制御部 301 、SAD 値比較部 302 、SAD 値蓄積制御部 303 、区分1の SAD 値蓄積部 305 、区分1の SAD 平均値算出部 306 、区分1の符号量予測値算出部 307 、区分2の SAD 値蓄積部 308 、区分2の SAD 平均値算出部 309 、区分2の符号量予測値算出部 310 、SAD 値/符号量対応テーブル 311 、比重加算部 312 、及び量子化値決定部 304 の処理を、本実施例2では、発生符号化量予測部内のプロセッサが、図示しないメモリ中に予め格納されたプログラムを実行することによって達成される。また、プログラム実行中の間のデータについても、図示しないメモリなどを用いて一時的に保存される。
図9を用いて、プロセッサに実装した際のデータのフローに関して説明する。図9は、本発明の一実施例のデータフローを示す図である。図9の処理は、特に断らない限り、発生符号化量予測部が実行する。901 は予測処理のプロセス、902 は SAD 値比較処理のプロセス、903 は区分1と区分2の SAD 値蓄積制御処理のプロセス、904 は区分1の SAD 平均値算出処理のプロセス、905 は区分2の SAD 平均値算出処理のプロセス、906 は区分1の符号量予測値算出処理のプロセス、907 は区分2の符号量予測値算出処理のプロセス、908 は比重加算処理のプロセス、909 は量子化値決定処理のプロセス、910 は量子化処理のプロセス、911 は可変長符号化処理のプロセス、912 〜 926 はメモリである。
図9において、まず、SAD 値の総和の演算時のデータフローを説明する。
予測処理のプロセス 901 では、予測部(図2参照)が出力する SAD 値のデータをメモリ 912 に書き込む。
次に、SAD 値比較処理のプロセス 902 では、メモリ 912 の SAD 値のデータとメモリ 913 の閾値のデータを読み出し、SAD 値が閾値未満であるか閾値以上であるかを判定し、判定結果を SAD 値比較結果メモリ 914 に書き込む。即ち、プロセス 902 では、メモリ 912 に書き込まれた SAD 値のデータが、区分1内のデータか区分2内のデータかに分類する判定を行う。
SAD 蓄積制御処理のプロセス 903 は、メモリ 912 に書き込まれた SAD 値のデータとメモリ 914 に書き込まれた SAD 値の比較結果を読み出し、当該データが区分1のデータであれば、区分1の SAD 値メモリ 915 を選択し、区分2のデータであれば、区分2の SAD 値メモリ 916 を選択して、データの内容を読み出し、SAD 値を加算後、書き戻す。同時に、区分1と区分2の MB 数 を格納するメモリ 923 からデータを読み込み、比較結果に基づいて、該当するどちらかの区分の MB 数を1増加後、書き戻す。なお、比較結果に基づいて、メモリ 923 内のどちらかの MB 数のデータを読み込み、1増加後格納しても良い。
プロセッサ上では上記プロセスが、必要なマクロブロック数と同数回、実行される。
SAD 値の総和の演算が終了後、量子化値の決定処理を行う。そのデータフローは以下の通りである。
SAD 平均値算出処理プロセス 904 では、区分1の SAD 値メモリ 915 のデータ内容と、メモリ 923 のデータである区分1と区分2の MB 数を読み込み、平均値を算出し、メモリ 917 に SAD 平均値を書き込む。
同様に、SAD 平均値算出プロセス 905 では、区分2の SAD 値メモリ 916 のデータ内容と、メモリ 923 のデータである区分1と区分2の MB 数を読み込み、平均値を算出し、メモリ 918 に SAD 平均値を書き込む。
区分1の符号量予測値算出処理のプロセス 906 では、メモリ 917 内の SAD 平均値のデータと、メモリ 919 内の推定量子化値のデータとに基づいて、メモリ 920 の SAD 値/符号量対応テーブルから、区分1における発生符号量として、区分1の発生符号量予測値メモリ 921 に書き込む。同様に、区分2の符号量予測値算出処理のプロセス 907では、メモリ 918 内の SAD 平均値のデータと、メモリ 919 内の推定量子化値とに基づいて、メモリ 920 の SAD 値/符号量対応テーブルから、区分2における発生符号量として、区分2の発生符号量予測値メモリ 922 に書き込む。
比重加算処理プロセス 908 では、メモリ 921 内の区分1の発生符号量予測値のデータと、メモリ 922 内の区分2の発生符号量予測値のデータと、メモリ 923 内の区分1と区分2の MB 数のデータを読み出し、区分1と区分2の MB 数のデータに基づいて、区分1の発生符号量予測値のデータと区分2の発生符号量予測値のデータとの比重加算を行い、比重加算された発生符号量予測値のデータを発生符号量予測値のメモリ 924 に書き込む。
量子化値決定処理プロセス 909 では、メモリ 919 内の推定量子化値のデータと、メモリ 924 内の発生符号量予測値のデータと、メモリ 926 内の発生符号量実測値のデータとを読み出し、量子化値を決定し、決定した量子化値のデータをメモリ 925 に書き込む。
メモリ 925 に書き込まれた量子化値は、量子化処理のプロセス 910 で読み出され、使用される。
その後、可変長符号化処理プロセス 911 では、可変長符号化部(図2参照)が、可変長符号化を行って、データを動画像符号化装置から出力する。
本実施例における処理動作のフローは、実施例1と同じとなる。
なお、本実施例では全ての実行をプロセッサ上で行ったが、一部はプロセッサ以外のハードウェアでも良い。また、実行は複数のプロセッサに分けられても良い。また、データは同一のメモリモジュール上に配置してあるが、異なるメモリモジュールに配置しても良い。
以上、本発明の内容をまとめると、請求項1〜請求項10の如く、
(1)本発明の動画像符号化方法は、入力画像信号に対して参照画像及び参照画像と該入力画像との間の差分を用いて符号化を行う動画像符号化方法において、評価値を用いて発生符号量の予測を行い、発生符号量を制御する動画像符号化方法であって、前記評価値を複数の区分に分け、該複数の区分毎に前記評価値に基づいて発生符号量の予測値を演算する演算式を設け、前記演算式を、前記複数の区分毎に前記評価値の一次式で近似するものである。
(2)上記(1)項において、好ましくは、前記評価値と前記発生符号量の予測値の関係は、量子化値によって異なる傾き並びにY切片を持つ複数の区分を有する一次式であって、前記異なる量子化値よって異なるそれぞれの一次式の、それぞれの区分を分ける評価値が、同一の値である。
(3)上記(1)項若しくは(2)項において、好ましくは、前記評価値は、前記入力画像と前記予測画像とをそれぞれ、1又は複数の画素ブロックに分割し、該画素ブロック毎の差分絶対値和である。
(4)上記(1)項若しくは(2)項において、好ましくは、前記評価値は、前記入力画像と前記予測画像とをそれぞれ、1又は複数の画素ブロックに分割し、該画素ブロック毎の差分値を変換し、該変換した差分値の絶対値和を取った値である。
(5)上記(4)項において、好ましくは、前記画素ブロック毎の差分値の変換は、アダマール変換である。
(6)上記(4)項において、好ましくは、前記画素ブロック毎の差分値の変換は、離散コサイン変換である。
(7)また、本発明の動画像符号化装置は、画像データを入力し、該画像データを所定の画素数のマクロブロックに分割するマクロブロック分割部と、前記マクロブロックに分割された画像データと加算処理部から出力されるデータの差分信号から予測画像を生成する予測処理部と、前記マクロブロックに分割された画像データと前記予測画像との差分信号を出力する差分処理部と、前記差分信号を変換し量子化する変換・量子化部と、前記変換された信号を符号化する符号化部と、前記変換された信号を逆量子化し逆変換する逆量子化・逆変換部と、前記量子化・逆直交変換部の出力と前記予測画像を加算する加算処理部とを有する動画像符号化装置において、さらに、前記予測処理部は、前記予測画像の生成時に、前記予測画像と前記マクロブロックに分割された画像データとの画素毎の差分値の絶対和を、評価値として出力し、前記評価値と、前記符号化部から出力される符号化したデータの符号量とから、前記マクロブロック分割部から出力される画像データの量子化値を算出し、害算出された量子化値に基づいて、前記変換・量子化部の量子化値を定める発生符号量予測部を有したものである。
(8)上記(7)項において、好ましくは、前記発生符号量予測部は、前記評価値に基づいて符号量予測値を算出するための対応テーブル、若しくは、演算処理部を備える。
(9)上記(8)項において、好ましくは、前記対応テーブル若しくは演算処理部は、前記評価値によって複数の区分に分割される閾値を具備し、該複数の区分それぞれについて前記評価値に基づく一次式を設け、該一次式によって、前記符号量予測値を算出する。
(10)上記(7)項乃至(9)項のいずれかの動画像符号化装置において、好ましくは、前記変換・量子化部は、前記差分信号を、アダマール変換若しくは離散コサイン変換する。
マクロブロック単位での、SAD と発生符号量の関係の一例を示す図。 本発明の動画像符号化装置の一実施例の構成を示すブロック図。 本発明の動画像符号化装置の一実施例の発生符号量予測部の詳細を示すブロック図。 本発明の一実施例のマクロブロック単位での、SAD と発生符号量の関係を示す図。 本発明の一実施例のマクロブロック単位での、SAD と発生符号量の関係を示す図。 本発明の一実施例の SAD 値の総和を演算する処理動作を説明するためのフローチャート。 本発明の一実施例の推定量子化値を定めたときの発生符号量予測処理動作を説明するためのフローチャート。 本発明の一実施例の平均量子化値の決定処理動作を説明するためのフローチャート。 本発明の一実施例のデータフローを示す図。
符号の説明
201:入力画像データ、 202:予測処理部、 203:変換・量子化部、 204:可変長符号化部、 205:逆量子化・逆変換部、 206:フレームメモリ、 207:ビットストリームデータ、 208:発生符号化量予測部、 209:閾値のデータ、 210:ビットレートを示すデータ、 211:マクロブロック分割部、 212:差分処理部、 213:加算処理部、 214:SAD 値のデータ、 215:マクロブロック数を示すデータ、 216:符号量を示すデータ、 217:量子化値のデータ、 301:閾値制御部、 302:SAD 値比較部、 303:SAD 値蓄積制御部、 304:量子化値決定部、 305:区分1の SAD 値蓄積部、 306:区分1の SAD 平均値算出部、 307:区分1の符号量予測値算出部、 308:区分2の SAD 値蓄積部、 309:区分2の SAD 平均値算出部、 310:区分2の符号量予測値算出部、 311:SAD 値/符号量対応テーブル、 312:比重加算部、 401:特定の SAD 値、 402-1、402-2:近似式を示す直線、 501:特定の SAD 値、 502-1、502-2、503-1、503-2、504-1、504-2、505-1、505-2:近似式を示す直線、 901:予測処理のプロセス、 902:SAD 値比較処理のプロセス、 903:SAD 値蓄積制御処理のプロセス、 904、905:SAD 平均値算出処理のプロセス、 906、907:符号量予測値算出処理のプロセス、 908:比重加算処理のプロセス、 909:量子化値決定処理のプロセス、 910:量子化処理のプロセス、 911:可変長符号化処理のプロセス、 912〜926:メモリ。

Claims (6)

  1. 入力画像信号に対して参照画像及び参照画像と該入力画像との間の差分を用いて符号化を行う動画像符号化方法において、
    マクロブロック毎に計算されるSAD値を用いて複数の量子化値に対応する発生符号量の予測を行い、複数の前記マクロブロックからなる対象領域の発生符号量を制御する動画像符号化方法であって、
    前記SAD値を複数の区分に分け、該複数の区分毎に前記SADの関数である演算式により発生符号量の予測値を演算し、
    前記演算式は、量子化値によって異なる傾き並びにY切片を持つ複数の区分を有する一次関数であって、それぞれの区分を分けるSAD値が各量子化値に対して同一であり、
    前記発生符号量の予測値は、複数の前記マクロブロックに亘って、SAD値を区分毎に総和し、該総和を対応する区分の前記傾きで比重加算し、更に前記Y切片を対応する区分のマクロブロックの数に応じて比重加算して、これらの合算により算出し、所定の条件をみたす前記発生符号量の予測値が算出された量子化値を選択して前記複数のマクロブロックを符号化することを特徴とする動画像符号化方法。
  2. 請求項1記載の動画像符号化方法において、
    前記1次関数は、前記量子化値をパラメータとしてテーブル化され、前記区分を分けるSAD値と共にSAD値/符号量対応テーブルに格納され、
    前記複数のマクロブロックは、1あるいは複数列のマクロブロックラインであることを特徴とする動画像符号化方法。
  3. 請求項1又は請求項2のいずれかに記載の動画像符号化方法において、
    前記入力画像と前記予測画像とをそれぞれ、複数の前記画素ブロックに分割し、
    前記SAD値は、対応する前記入力画像と前記予測画像の該画素ブロックの差分を変換し、該変換した差分の絶対値和を取った値であることを特徴とする動画像符号化方法。
  4. 請求項に記載の動画像符号化方法において、
    前記画素ブロック毎の差分値の変換は、アダマール変換であることを特徴とする動画像号化方法。
  5. 請求項に記載の動画像符号化方法において、
    前記画素ブロック毎の差分値の変換は、離散コサイン変換であることを特徴とする動画像号化方法。
  6. 入力された画像信号に対して参照画像及び参照画像と該入力画像との間の差分を用いて符号化を行う動画像符号化装置において、
    前記入力画像を所定の画素数のマクロブロックに分割するマクロブロック分割部と、前記マクロブロックに分割された画像データと加算処理部から出力されるデータの差分信号から予測画像を生成する予測処理部と、前記マクロブロックに分割された画像データと前記予測画像との差分信号を出力する差分処理部と、前記差分信号を変換し量子化する変換・量子化部と、前記変換された信号を符号化する符号化部と、前記変換された信号を逆量子化し逆変換する逆量子化・逆変換部と、前記量子化・逆直交変換部の出力と前記予測画像を加算する前記加算処理部と、次段階での予測のためのデータを格納するフレームメモリと、マクロブロック数を示すデータ、閾値のデータ及びビットレートを示すデータを入力しマクロブロック毎の画像を量子化するためのマクロブロックの量子化値を出力する発生符号量予測部とを有し、マクロブロック毎に計算されるSAD値を用いて複数の量子化値に対応する発生符号量の予測を行い、複数の前記マクロブロックからなる対象領域の発生符号量を制御する動画像符号化装置であって、
    前記予測処理部は、前記予測画像の生成時に、SAD値のデータ等の発生符号量の予測に必要なデータを出力し、
    前記発生符号量予測部は、前記SAD値を複数の区分に分け、該複数の区分毎に前記SAD値の関数である演算式により前記発生符号量の予測値を演算し、前記演算式は、量子化値によって異なる傾き並びにY切片を持つ複数の区分を有する一次関数であって、それぞれの区分を分けるSAD値が各量子化値に対して同一であり、前記発生符号量の予測値は、複数の前記マクロブロックに亘って、SAD値を区分毎に総和し、該総和を対応する区分の前記傾きで比重加算し、更に前記Y切片を対応する区分のマクロブロックの数に応じて比重加算して、これらの合算により算出し、所定の条件をみたす前記発生符号量の予測値が算出された量子化値を選択して前記複数のマクロブロックを符号化し、
    前記1次関数は、前記量子化値をパラメータとしてテーブル化され、前記区分を分けるSAD値と共にSAD値/符号量対応テーブルに格納され、前記複数のマクロブロックは、1あるいは複数列のマクロブロックラインであり、
    前記SAD値は、対応する前記入力画像と前記予測画像の該画素ブロックの差分値をアダマール変換または離散コサイン変換し、該変換した差分の絶対値和を取った値であることを特徴とする動画像符号化装置。
JP2008293447A 2008-11-17 2008-11-17 動画像符号化方法及び装置 Expired - Fee Related JP5276957B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008293447A JP5276957B2 (ja) 2008-11-17 2008-11-17 動画像符号化方法及び装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008293447A JP5276957B2 (ja) 2008-11-17 2008-11-17 動画像符号化方法及び装置

Publications (2)

Publication Number Publication Date
JP2010124054A JP2010124054A (ja) 2010-06-03
JP5276957B2 true JP5276957B2 (ja) 2013-08-28

Family

ID=42325021

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008293447A Expired - Fee Related JP5276957B2 (ja) 2008-11-17 2008-11-17 動画像符号化方法及び装置

Country Status (1)

Country Link
JP (1) JP5276957B2 (ja)

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3112035B2 (ja) * 1991-10-07 2000-11-27 株式会社日立製作所 動画像圧縮符号化装置及び方法
JPH07312752A (ja) * 1994-05-16 1995-11-28 Sony Corp 符号化装置
JP2005151152A (ja) * 2003-11-14 2005-06-09 Sony Corp データ処理装置およびその方法と符号化装置
JP2005203905A (ja) * 2004-01-13 2005-07-28 Sony Corp 画像符号化装置、画像符号化方法並びに画像符号化プログラム
JP4250638B2 (ja) * 2006-06-30 2009-04-08 株式会社東芝 動画像符号化装置及びその方法
JP4787100B2 (ja) * 2006-07-27 2011-10-05 パナソニック株式会社 画像符号化装置
JP2008219360A (ja) * 2007-03-02 2008-09-18 Toshiba Corp 予測符号化装置

Also Published As

Publication number Publication date
JP2010124054A (ja) 2010-06-03

Similar Documents

Publication Publication Date Title
US9609322B2 (en) Image encoding apparatus, image encoding method, image decoding apparatus, and image decoding method
US8244048B2 (en) Method and apparatus for image encoding and image decoding
JP5873536B2 (ja) 動き予測検索範囲及び拡張動きベクトルの範囲の動的選択
TW201830972A (zh) 用於視訊寫碼之低複雜度符號預測
US7856053B2 (en) Image coding control method and device
UA126919C2 (uk) Уточнення вектора руху для мультиреференсного прогнозування
JP2006140758A (ja) 動画像符号化方法、動画像符号化装置および動画像符号化プログラム
US20170099491A1 (en) Apparatus, method and non-transitory medium storing program for encoding moving picture
JP2005525027A (ja) 動き情報を用いてmpegトランスコーディングを行うシステム及び方法
EP2034742A2 (en) Video coding method and device
JP4037839B2 (ja) 画像符号化方法及び装置
JP2010010917A (ja) 動画像符号化装置、動画像復号装置、動画像符号化方法、及び動画像復号方法
JP5276957B2 (ja) 動画像符号化方法及び装置
JP6171584B2 (ja) 動画像符号化装置、動画像符号化方法、および動画像符号化プログラム
KR20130032807A (ko) 동영상 부호화 장치 및 방법
JP5887013B2 (ja) 画像復号化方法
KR101583870B1 (ko) 이미지 인코딩 시스템, 디코딩 시스템 및 그 제공방법
JP2018186419A (ja) トランスコーダ、トランスコード方法、及びトランスコードプログラム
JP2012120108A (ja) 補間画像生成装置及びプログラム、並びに、動画像復号装置及びプログラム
JP6700877B2 (ja) 画像復号装置、画像復号プログラム及びチップ
JP2022070176A (ja) 符号化装置及びプログラム
JP2004363932A (ja) ディジタル信号符号化の量子化ステップサイズ決定方法およびディジタル信号符号化装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110912

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120618

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120717

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120912

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: 20130423

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130520

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 5276957

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees