JP4081727B2 - Image encoding apparatus, image encoding method, recording apparatus, and recording method - Google Patents
Image encoding apparatus, image encoding method, recording apparatus, and recording method Download PDFInfo
- Publication number
- JP4081727B2 JP4081727B2 JP03878397A JP3878397A JP4081727B2 JP 4081727 B2 JP4081727 B2 JP 4081727B2 JP 03878397 A JP03878397 A JP 03878397A JP 3878397 A JP3878397 A JP 3878397A JP 4081727 B2 JP4081727 B2 JP 4081727B2
- Authority
- JP
- Japan
- Prior art keywords
- code amount
- quantization matrix
- quantization
- quantizing
- orthogonal transform
- 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
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression Of Band Width Or Redundancy In Fax (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Description
【0001】
【発明の属する技術分野】
本発明は、画像符号化装置および画像符号化方法、並びに記録装置および記録方法に関し、特に、復号画像の画質を均一にすることができるようにする画像符号化装置および画像符号化方法、並びに記録装置および記録方法に関する。
【0002】
【従来の技術】
例えば、MPEG(Moving Picture Experts Group)符号化などに代表されるDCT(Discrete Cosine Transform)を用いた画像符号化方式(画像圧縮方式)では、一般的に、画像をDCT処理して得られるDCT係数に、人間の視覚特性上の空間周波数ごとの量子化感度の違いを利用した重み付けをして量子化が行われ、これにより圧縮率を高めるようになされている。即ち、高次のDCT係数は、復号画像を見たときの見た目の画質にあまり影響しないため、低次のDCT係数に比較して、粗く量子化が行われるような重み付けがされる。
【0003】
MPEGでは、上述のような重み付けを行うための手段として、JPEG(Joint Photographic coding Experts Group)から継承された量子化マトリクスが用意されている。量子化マトリクスは、DCT処理の単位である8×8画素のブロックに対応する8×8の係数が並んだマトリクス(matrix)で、その係数は、符号化に際して自由に変更することができるようになされている。
【0004】
量子化マトリクスによる重み付けとは、DCT係数を、量子化マトリクスを構成する係数のうちの、そのDCT係数に対応する位置にあるもので除算することを意味するが、実際には、DCT係数が、量子化マトリクスの係数と量子化ステップとを乗算した乗算値で量子化されるので、即ち、DCT係数の重み付けと量子化とは同時に行われるので、量子化マトリクスは、人間の視覚特性に対応した量子化を行うための量子化ステップと考えることもできる。
【0005】
量子化マトリクスによれば、上述のように、人間の視覚特性に利用した効率的な量子化を実現することができ、その係数は、一般に、そのような観点から設定されるが、量子化ステップは、一般に、例えば、発生符号量が所定の目標符号量と一致するように制御するレートコントロールと、画像のアクティビティ(activity)(活性度)により変化する復号画像の画質(見た目の画質)の均一化とを実現する量子化インデックスに対応して設定される。
【0006】
MPEGでは、量子化インデックスと量子化ステップとの対応関係として、線形なものと非線形なものとの2種類が規定されている。即ち、MPEGでは、量子化インデックスとして、1乃至31の整数値が規定されており、線形な対応関係によれば、量子化ステップには、量子化インデックスの2倍の値が対応付けられている。従って、量子化ステップは、量子化インデックスに対応して一意的に決まり、量子化インデックスが1,2,・・・,31のとき、量子化ステップは、2,4,・・・,62となる。非線形な対応関係でも、同様に、量子化インデックスと量子化ステップとが所定の非線形な関数によって1対1に対応付けられている。
【0007】
なお、非線形な対応関係においては、量子化インデックスが小さい範囲では、量子化ステップを細かく変化させることができるように、また、量子化インデックスが大きい範囲では、量子化ステップを大きく変化させることができるように、量子化インデックスと量子化ステップとが対応付けられている。
【0008】
また、線形または非線形のうちのいずれの対応関係を用いて量子化を行ったかはQスケールタイプと呼ばれる変数によって表され、デコーダ側では、このQスケールタイプを参照することで、量子化インデックスと量子化ステップとの対応関係が認識される。
【0009】
ところで、例えば、DVD(Digigal Versatile Disc)や、ビデオCD(Compact Disc)などのオーサリングにあたっては、現在、画像の圧縮符号化方法としてMPEG方式が採用されているが、このようなオーサリングなどの画像の記録、あるいは伝送を行う際には、少ない符号量で、良好な画質の復号画像を得ることができるように、画像を圧縮符号化することが要求される。
【0010】
そこで、例えば、オーサリングでは、画像をDCT処理して得られるDCT係数を、固定の量子化ステップで量子化し、画像の複雑さ(難しさ)としての、例えば発生符号量などを測定する1パス目の処理と、その1パス目の処理によって得られる発生符号量などに基づいて、所定の目標符号量を設定し、その目標符号量に、発生符号量が一致するように量子化ステップを適応的に変化させ、画像を可変レート符号化する2パス目の処理とを行う、いわゆる2パスエンコーディングが、一般に行われる。
【0011】
2パスエンコーディングによれば、画像の複雑さに無関係に一定の符号量が割り当てられることにより、複雑な部分が極端に粗く量子化されるようなことを防止することができる。即ち、1パス目の処理の結果に基づき、2パス目の処理において、平坦な画像には少ない符号量を、複雑な画像には多くの符号量を、それぞれ目標符号量として割り当てることにより、量子化ステップの変化が、所定の狭い範囲に収まるようにし、その結果、画像全体にわたって、極端に粗い量子化がされるような部分が生じないようにすることができる。
【0012】
【発明が解決しようとする課題】
ところで、量子化ステップが、上述のように所定の狭い範囲で変化する場合においては、その変化前後の量子化ステップの比率が小さい方が望ましい。
【0013】
即ち、いま、説明を簡単にするために、量子化インデックスと量子化ステップとの対応関係として、線形なものを使用するとすると、上述したように、量子化ステップは、量子化インデックスの2倍の値に設定される。この場合において、量子化インデックスが、例えば、1から2に変化するときと、30から31に変化するときとを考えてみる。
【0014】
まず、量子化インデックスが、1から2に変化する場合、量子化ステップは2から4に変化するので、変化前後の量子化ステップの比率([変化後の量子化ステップ]/[変化前の量子化ステップ])は、2(=(4−2)/2)倍となる。一方、量子化インデックスが、30から31に変化する場合、量子化ステップは60から62に変化するので、変化前後の量子化ステップの比率は、約1.033(≒62/60)倍となる。
【0015】
MPEGにおいては、量子化ステップは、マクロブロック単位で変化させることができるので、隣接するマクロブロックにおける量子化ステップが大きい比率で変化すると、発生符号量に大きな差が生じるだけでなく、その復号画像の画質にも大きな差が生じる。従って、量子化インデックスが小さい値を変化する場合においては、その1段階の変化が、復号画像の画質に大きな影響を及ぼし、1フレームを構成するマクロブロックの間で、そのような画質の差が生じると、視聴者に違和感を感じさせることになる。
【0016】
本発明は、このような状況に鑑みてなされたものであり、量子化ステップの変化前後の比率が小さくなるようにし、これにより、復号画像の画質の均一化を図ることができるようにするものである。
【0017】
【課題を解決するための手段】
請求項1に記載の画像符号化装置、および請求項3に記載の画像符号化方法は、直交変換係数を固定の量子化ステップで量子化することによって得られる符号の量である発生符号量をGOP単位で出力し、出力された発生符号量に基づいて、画像を符号化する際の目標符号量をGOP単位で算出し、目標符号量を発生符号量で除算した除算値である、発生符号量と目標符号量との比の大きさが所定の閾値以上でない場合、直交変換係数を量子化する際の量子化マトリクスを、デフォルトの量子化マトリクスに設定し、比の大きさが所定の閾値以上である場合、直交変換係数を量子化する際の量子化インデックスが大になるように、直交変換係数を量子化する際の量子化マトリクスを、デフォルトの量子化マトリクスより係数が小の量子化マトリクスに設定し、設定された量子化マトリクスを用いて、目標符号量に対応した量子化インデックスで直交変換係数を量子化する。
請求項4に記載の画像符号化装置、および請求項5に記載の画像符号化方法は、直交変換係数を固定の量子化ステップで量子化することによって得られる符号の量である発生符号量をピクチャ単位で出力し、出力された発生符号量に基づいて、画像を符号化する際の目標符号量をピクチャ単位で算出し、目標符号量を発生符号量で除算した除算値である、発生符号量と目標符号量との比の大きさが所定の閾値以上でない場合、直交変換係数を量子化する際の量子化マトリクスを、デフォルトの量子化マトリクスに設定し、比の大きさが所定の閾値以上である場合、直交変換係数を量子化する際の量子化インデックスが大になるように、直交変換係数を量子化する際の量子化マトリクスを、デフォルトの量子化マトリクスより係数が小の量子化マトリクスに設定し、設定された量子化マトリクスを用いて、目標符号量に対応した量子化インデックスで直交変換係数を量子化する。
請求項6に記載の画像符号化装置、および請求項7に記載の画像符号化方法は、直交変換係数を固定の量子化ステップで量子化することにより得られるGOP単位の符号の量である発生符号量から算出されるGOP単位の目標符号量を、発生符号量で除算した除算値である、発生符号量と目標符号量との比の大きさが所定の閾値以上でない場合、直交変換係数を量子化する際の量子化マトリクスを、デフォルトの量子化マトリクスに設定し、比の大きさが所定の閾値以上である場合、直交変換係数を量子化する際の量子化インデックスが大になるように、直交変換係数を量子化する際の量子化マトリクスを、デフォルトの量子化マトリクスより係数が小の量子化マトリクスに設定し、設定された量子化マトリクスを用いて、目標符号量に対応した量子化インデックスで直交変換係数を量子化する。
【0018】
請求項8に記載の画像符号化装置、および請求項9に記載の画像符号化方法は、直交変換係数を固定の量子化ステップで量子化することにより得られるピクチャ単位の符号の量である発生符号量から算出されるピクチャ単位の目標符号量を、発生符号量で除算した除算値である、発生符号量と目標符号量との比の大きさが所定の閾値以上でない場合、直交変換係数を量子化する際の量子化マトリクスを、デフォルトの量子化マトリクスに設定し、比の大きさが所定の閾値以上である場合、直交変換係数を量子化する際の量子化インデックスが大になるように、直交変換係数を量子化する際の量子化マトリクスを、デフォルトの量子化マトリクスより係数が小の量子化マトリクスに設定し、設定された量子化マトリクスを用いて、目標符号量に対応した量子化インデックスで直交変換係数を量子化する。
請求項10に記載の記録装置、および請求項11に記載の記録方法は、直交変換係数を固定の量子化ステップで量子化することによって得られる符号の量である発生符号量をGOP単位で出力し、出力された発生符号量に基づいて、画像を符号化する際の目標符号量をGOP単位で算出し、目標符号量を発生符号量で除算した除算値である、発生符号量と目標符号量との比の大きさが所定の閾値以上でない場合、直交変換係数を量子化する際の量子化マトリクスを、デフォルトの量子化マトリクスに設定し、比の大きさが所定の閾値以上である場合、直交変換係数を量子化する際の量子化インデックスが大になるように、直交変換係数を量子化する際の量子化マトリクスを、デフォルトの量子化マトリクスより係数が小の量子化マトリクスに設定し、設定された量子化マトリクスを用いて、目標符号量に対応した量子化インデックスで直交変換係数を量子化し、量子化された量子化値を符号化して記録媒体に記録する。
請求項12に記載の記録装置、および請求項13に記載の記録方法は、直交変換係数を固定の量子化ステップで量子化することによって得られる符号の量である発生符号量をピクチャ単位で出力し、出力された発生符号量に基づいて、画像を符号化する際の目標符号量をピクチャ単位で算出し、目標符号量を発生符号量で除算した除算値である、発生符号量と目標符号量との比の大きさが所定の閾値以上でない場合、直交変換係数を量子化する際の量子化マトリクスを、デフォルトの量子化マトリクスに設定し、比の大きさが所定の閾値以上である場合、直交変換係数を量子化する際の量子化インデックスが大になるように、直交変換係数を量子化する際の量子化マトリクスを、デフォルトの量子化マトリクスより係数が小の量子化マトリクスに設定し、設定された量子化マトリクスを用いて、目標符号量に対応した量子化インデックスで直交変換係数を量子化し、量子化された量子化値を符号化して記録媒体に記録する。
【0019】
請求項14に記載の記録装置、および請求項15に記載の記録方法は、直交変換係数を固定の量子化ステップで量子化することにより得られるGOP単位の符号の量である発生符号量から算出されるGOP単位の目標符号量を、発生符号量で除算した除算値である、発生符号量と目標符号量との比の大きさが所定の閾値以上でない場合、直交変換係数を量子化する際の量子化マトリクスを、デフォルトの量子化マトリクスに設定し、比の大きさが所定の閾値以上である場合、直交変換係数を量子化する際の量子化インデックスが大になるように、直交変換係数を量子化する際の量子化マトリクスを、デフォルトの量子化マトリクスより係数が小の量子化マトリクスに設定し、設定された量子化マトリクスを用いて、目標符号量に対応した量子化インデックスで直交変換係数を量子化し、量子化された量子化値を符号化して記録媒体に記録する。
請求項16に記載の記録装置、および請求項17に記載の記録方法は、直交変換係数を固定の量子化ステップで量子化することにより得られるピクチャ単位の符号の量である発生符号量から算出されるピクチャ単位の目標符号量を、発生符号量で除算した除算値である、発生符号量と目標符号量との比の大きさが所定の閾値以上でない場合、直交変換係数を量子化する際の量子化マトリクスを、デフォルトの量子化マトリクスに設定し、比の大きさが所定の閾値以上である場合、直交変換係数を量子化する際の量子化インデックスが大になるように、直交変換係数を量子化する際の量子化マトリクスを、デフォルトの量子化マトリクスより係数が小の量子化マトリクスに設定し、設定された量子化マトリクスを用いて、目標符号量に対応した量子化インデックスで直交変換係数を量子化し、量子化された量子化値を符号化して記録媒体に記録する。
【0020】
請求項1に記載の画像符号化装置、および請求項3に記載の画像符号化方法においては、直交変換係数を固定の量子化ステップで量子化することによって得られる符号の量である発生符号量がGOP単位で出力され、出力された発生符号量に基づいて、画像を符号化する際の目標符号量がGOP単位で算出され、目標符号量を発生符号量で除算した除算値である、発生符号量と目標符号量との比の大きさが所定の閾値以上でない場合、直交変換係数を量子化する際の量子化マトリクスが、デフォルトの量子化マトリクスに設定され、比の大きさが所定の閾値以上である場合、直交変換係数を量子化する際の量子化インデックスが大になるように、直交変換係数を量子化する際の量子化マトリクスが、デフォルトの量子化マトリクスより係数が小の量子化マトリクスに設定され、設定された量子化マトリクスを用いて、目標符号量に対応した量子化インデックスで直交変換係数が量子化される。
請求項4に記載の画像符号化装置、および請求項5に記載の画像符号化方法においては、直交変換係数を固定の量子化ステップで量子化することによって得られる符号の量である発生符号量がピクチャ単位で出力され、出力された発生符号量に基づいて、画像を符号化する際の目標符号量がピクチャ単位で算出され、目標符号量を発生符号量で除算した除算値である、発生符号量と目標符号量との比の大きさが所定の閾値以上でない場合、直交変換係数を量子化する際の量子化マトリクスが、デフォルトの量子化マトリクスに設定され、比の大きさが所定の閾値以上である場合、直交変換係数を量子化する際の量子化インデックスが大になるように、直交変換係数を量子化する際の量子化マトリクスが、デフォルトの量子化マトリクスより係数が小の量子化マトリクスに設定され、設定された量子化マトリクスを用いて、目標符号量に対応した量子化インデックスで直交変換係数が量子化される。
請求項6に記載の画像符号化装置、および請求項7に記載の画像符号化方法においては、直交変換係数を固定の量子化ステップで量子化することにより得られるGOP単位の符号の量である発生符号量から算出されるGOP単位の目標符号量を、発生符号量で除算した除算値である、発生符号量と目標符号量との比の大きさが所定の閾値以上でない場合、直交変換係数を量子化する際の量子化マトリクスが、デフォルトの量子化マトリクスに設定され、比の大きさが所定の閾値以上である場合、直交変換係数を量子化する際の量子化インデックスが大になるように、直交変換係数を量子化する際の量子化マトリクスが、デフォルトの量子化マトリクスより係数が小の量子化マトリクスに設定され、設定された量子化マトリクスを用いて、目標符号量に対応した量子化インデックスで直交変換係数が量子化される。
【0021】
請求項8に記載の画像符号化装置、および請求項9に記載の画像符号化方法においては、直交変換係数を固定の量子化ステップで量子化することにより得られるピクチャ単位の符号の量である発生符号量から算出されるピクチャ単位の目標符号量を、発生符号量で除算した除算値である、発生符号量と目標符号量との比の大きさが所定の閾値以上でない場合、直交変換係数を量子化する際の量子化マトリクスが、デフォルトの量子化マトリクスに設定され、比の大きさが所定の閾値以上である場合、直交変換係数を量子化する際の量子化インデックスが大になるように、直交変換係数を量子化する際の量子化マトリクスが、デフォルトの量子化マトリクスより係数が小の量子化マトリクスに設定され、設定された量子化マトリクスを用いて、目標符号量に対応した量子化インデックスで直交変換係数が量子化される。
請求項10に記載の記録装置、および請求項11に記載の記録方法においては、直交変換係数を固定の量子化ステップで量子化することによって得られる符号の量である発生符号量がGOP単位で出力され、出力された発生符号量に基づいて、画像を符号化する際の目標符号量がGOP単位で算出され、目標符号量を発生符号量で除算した除算値である、発生符号量と目標符号量との比の大きさが所定の閾値以上でない場合、直交変換係数を量子化する際の量子化マトリクスが、デフォルトの量子化マトリクスに設定され、比の大きさが所定の閾値以上である場合、直交変換係数を量子化する際の量子化インデックスが大になるように、直交変換係数を量子化する際の量子化マトリクスが、デフォルトの量子化マトリクスより係数が小の量子化マトリクスに設定され、設定された量子化マトリクスを用いて、目標符号量に対応した量子化インデックスで直交変換係数が量子化され、量子化された量子化値が符号化されて記録媒体に記録される。
請求項12に記載の記録装置、および請求項13に記載の記録方法においては、直交変換係数を固定の量子化ステップで量子化することによって得られる符号の量である発生符号量がピクチャ単位で出力され、出力された発生符号量に基づいて、画像を符号化する際の目標符号量がピクチャ単位で算出され、目標符号量を発生符号量で除算した除算値である、発生符号量と目標符号量との比の大きさが所定の閾値以上でない場合、直交変換係数を量子化する際の量子化マトリクスが、デフォルトの量子化マトリクスに設定され、比の大きさが所定の閾値以上である場合、直交変換係数を量子化する際の量子化インデックスが大になるように、直交変換係数を量子化する際の量子化マトリクスが、デフォルトの量子化マトリクスより係数が小の量子化マトリクスに設定され、設定された量子化マトリクスを用いて、目標符号量に対応した量子化インデックスで直交変換係数が量子化され、量子化された量子化値が符号化されて記録媒体に記録される。
【0022】
請求項14に記載の記録装置、および請求項15に記載の記録方法においては、直交変換係数を固定の量子化ステップで量子化することにより得られるGOP単位の符号の量である発生符号量から算出されるGOP単位の目標符号量を、発生符号量で除算した除算値である、発生符号量と目標符号量との比の大きさが所定の閾値以上でない場合、直交変換係数を量子化する際の量子化マトリクスが、デフォルトの量子化マトリクスに設定され、比の大きさが所定の閾値以上である場合、直交変換係数を量子化する際の量子化インデックスが大になるように、直交変換係数を量子化する際の量子化マトリクスが、デフォルトの量子化マトリクスより係数が小の量子化マトリクスに設定され、設定された量子化マトリクスを用いて、目標符号量に対応した量子化インデックスで直交変換係数が量子化され、量子化された量子化値が符号化されて記録媒体に記録される。
請求項16に記載の記録装置、および請求項17に記載の記録方法においては、直交変換係数を固定の量子化ステップで量子化することにより得られるピクチャ単位の符号の量である発生符号量から算出されるピクチャ単位の目標符号量を、発生符号量で除算した除算値である、発生符号量と目標符号量との比の大きさが所定の閾値以上でない場合、直交変換係数を量子化する際の量子化マトリクスが、デフォルトの量子化マトリクスに設定され、比の大きさが所定の閾値以上である場合、直交変換係数を量子化する際の量子化インデックスが大になるように、直交変換係数を量子化する際の量子化マトリクスが、デフォルトの量子化マトリクスより係数が小の量子化マトリクスに設定され、設定された量子化マトリクスを用いて、目標符号量に対応した量子化インデックスで直交変換係数が量子化され、量子化された量子化値が符号化されて記録媒体に記録される。
【0023】
【発明の実施の形態】
図1は、本発明の画像符号化装置の一実施の形態の構成を示している。
【0024】
この画像符号化装置は、いわゆる2パスエンコーディングによって、画像をMPEG方式などにより可変レートで符号化するようになっており、例えば、DVD(Digital Versatile Disc)や、ビデオCD(Compact Disc)などのオーサリングシステムその他に適用することができるようになっている。
【0025】
符号化すべき画像データは、エンコーダ1に入力されるようになされおり、エンコーダ1は、画像データを、少なくともDCT係数などの直交変換係数に直交変換し、その直交変換係数を量子化することにより符号化するようになされている。
【0026】
即ち、1パス目では、エンコーダ1は、画像データを、固定の量子化ステップで量子化することにより符号化し、その結果得られる符号化データの発生符号量(あるいは、発生符号量に対応する情報としての、例えば、画像データの符号化難易度(difficulty)など)を、外部コンピュータ2に出力する。外部コンピュータ2は、エンコーダ1からの発生符号量に基づいて、例えば、1GOP(Group Of Picture)や1画面(1フレームまたは1フィールド)ごとの目標符号量を設定する。
【0027】
そして、2パス目では、外部コンピュータ2は、設定した目標符号量を、エンコーダ1に供給し、エンコーダ1は、この目標符号量に、発生符号量が一致するように量子化ステップを設定しながら、画像データの符号化を行う。なお、量子化ステップは、目標符号量の他、過去の発生符号量や、デコーダ側に想定されるVBV(Video Buffering Verifier)バッファにおけるデータの蓄積量、画像の複雑さなどにも基づいて設定される。
【0028】
2パス目の符号化によって得られた符号化データは、例えば、光ディスクや、光磁気ディスク、磁気テープその他でなる記録媒体3に記録され、あるいは、例えば、地上波、衛星回線、CATV網、インターネットその他でなる伝送路4を介して伝送される。
【0029】
次に、図2は、図1のエンコーダ1の構成例を示している。
【0030】
図2では、エンコーダ1において、画像がMPEG符号化されるようになされている。
【0031】
即ち、符号化すべき画像データは、画像並び替え回路11に供給される。画像並び替え回路11は、入力された画像データのフレーム(またはフィールド)の並びを、必要に応じて替えて、走査変換/マクロブロック化回路12に出力する。即ち、各フレームの画像データは、Iピクチャ、Pピクチャ、またはBピクチャのうちのいずれかとして処理されるが、例えば、Bピクチャの処理に、それより時間的に後のIピクチャやPピクチャが必要な場合があり、このようなIピクチャやPピクチャは、Bピクチャより先に処理する必要がある。そこで、画像並び替え回路11では、時間的に後のフレームを先に処理することができるように、フレームの並びを替えるようになされている。
【0032】
なお、シーケンシャルに入力される各フレームの画像を、I,P,Bピクチャのいずれのピクチャとして処理するかは、予め定められている。
【0033】
画像並び替え回路11において並び替えられた画像データは、走査変換/マクロブロック化回路12に出力され、そこでは、画像データの走査変換およびマクロブロック化が行われ、その結果得られるマクロブロックが、演算器13、動き検出回路23、およびアクティビティ検出回路24に出力される。
【0034】
動きベクトル検出回路23は、走査変換/マクロブロック化回路12から供給されるマクロブロックの動きベクトルを検出する。
【0035】
即ち、動きベクトル検出回路23は、予め定められた所定の参照フレームを参照し、その参照フレームと、走査変換/マクロブロック化回路12からのマクロブロックとをパターンマッチング(ブロックマッチング)することにより、そのマクロブロックの動きベクトルを検出する。
【0036】
ここで、MPEGにおいては、画像の予測モードには、イントラ符号化(フレーム内符号化)、前方予測符号化、後方予測符号化、両方向予測符号化(前方、後方、および両方向の3つの予測符号化は、イントラ符号化に対して、インター符号化または非イントラ符号化と呼ばれる)の4種類があり、Iピクチャはイントラ符号化され、Pピクチャはイントラ符号化または前方予測符号化され、Bピクチャはイントラ符号化、前方予測符号化、後方予測符号化、または両方法予測符号化される。
【0037】
即ち、動きベクトル検出回路23は、Iピクチャについては、予測モードとしてイントラ符号化モードを設定する。この場合、動きベクトル検出回路23では、動きベクトルの検出は行われない。
【0038】
また、動きベクトル検出回路23は、Pピクチャについては、前方予測を行い、その動きベクトルを検出する。さらに、動きベクトル検出回路23は、前方予測を行うことにより生じる予測誤差と、符号化対象のマクロブロック(Pピクチャのマクロブロック)の、例えば分散とを比較し、マクロブロックの分散の方が予測誤差より小さい場合、予測モードとしてイントラ符号化モードを設定する。また、動きベクトル検出回路23は、前方予測を行うことにより生じる予測誤差の方が小さければ、予測モードとして前方予測符号化モードを設定し、検出した動きベクトルを、動き補償回路22に出力する。
【0039】
さらに、動きベクトル検出回路23は、Bピクチャについては、前方予測、後方予測、および両方向予測を行い、それぞれの動きベクトルを検出する。そして、動きベクトル検出回路23は、前方予測、後方予測、および両方向予測についての予測誤差の中の最小のもの(以下、適宜、最小予測誤差という)を検出し、その最小予測誤差と、符号化対象のマクロブロック(Bピクチャのマクロブロック)の、例えば分散とを比較する。その比較の結果、マクロブロックの分散の方が最小予測誤差より小さい場合、動きベクトル検出回路23は、予測モードとしてイントラ符号化モードを設定する。また、動きベクトル検出回路23は、最小予測誤差の方が小さければ、予測モードとして、その最小予測誤差が得られた予測モードを設定し、対応する動きベクトルを、動き補償回路22に出力する。
【0040】
動き補償回路22は、動きベクトルを受信すると、その動きベクトルにしたがって、フレームメモリ21に記憶されている、符号化され、既に局所復号化された画像データを読み出し、これを、予測画像として、演算器13および20に供給する。
【0041】
演算器13は、走査変換/マクロブロック化回路12からのマクロブロックと、動き補償回路22からの予測画像との差分を演算する。この差分値は、DCT回路14(直交変換手段)に供給される。
【0042】
なお、動きベクトル検出回路23において、予測モードとしてイントラ符号化モードが設定された場合、動き補償回路22は、予測画像を出力しない。この場合、演算器13(演算器20も同様)は、特に処理を行わず、走査変換/マクロブロック化回路12からのマクロブロックを、そのままDCT回路14に出力する。
【0043】
DCT回路14では、演算器13の出力に対して、DCT処理が施され、その結果得られるDCT係数が、量子化回路15(量子化手段)(重み付け手段)に供給される。量子化回路15では、量子化インデックス決定回路25からの量子化マトリクスにしたがって、DCT回路14からのDCT係数に重み付けがなされ、その重み付け後のDCT係数が、同じく量子化インデックス決定回路25からの量子化インデックスに対応する量子化ステップ(量子化スケール)で量子化される。即ち、量子化回路15では、量子化インデックス決定回路25からの量子化インデックスに対応して量子化ステップが設定され、その量子化ステップに、量子化インデックス決定回路25からの量子化マトリクスの係数をかけたもので、DCT回路14からのDCT係数が量子化される。この量子化されたDCT係数(以下、適宜、量子化値という)は、VLC器16に供給される。
【0044】
VLC器16では、量子化回路15より供給される量子化値が、例えばハフマン符号などの可変長符号に変換され、バッファ17に出力される。バッファ17は、VLC器16からのデータを一時蓄積し、そのデータ量を平滑化して出力する。なお、バッファ17におけるデータ蓄積量は、発生符号量として、外部コンピュータ2(図1)と量子化インデックス決定回路25に供給されるようになされている。
【0045】
一方、量子化回路15が出力する量子化値は、VLC器16だけでなく、逆量子化回路18にも供給されるようになされている。逆量子化回路18では、量子化回路15からの量子化値が、量子化回路15で用いられた量子化ステップおよび量子化マトリクスにしたがって逆量子化され、これによりDCT係数に変換される。このDCT係数は、逆DCT回路19に供給される。逆DCT回路19では、DCT係数が逆DCT処理され、演算器20に供給される。
【0046】
演算器20には、逆DCT回路19の出力の他、上述したように、動き補償回路22から、演算器13に供給されている予測画像と同一のデータが供給されており、演算器20は、逆DCT回路19からの信号(予測残差)と、動き補償回路22からの予測画像とを加算することで、元の画像を、局所復号する(但し、予測モードがイントラ符号化である場合には、逆DCT回路19の出力は、演算器20をスルーして、フレームメモリ21に供給される)。なお、この復号画像は、受信側において得られる復号画像と同一のものである。
【0047】
演算器20において得られた復号画像(局所復号画像)は、フレームメモリ21に供給されて記憶され、その後、インター符号化(前方予測符号化、後方予測符号化、または両方向予測符号化)される画像に対する参照画像(参照フレーム)として用いられる。
【0048】
一方、アクティビティ検出回路24では、マクロブロックの複雑さを表す指標として、例えば、そのアクティビティ(activity)が検出され、量子化インデックス決定回路25に供給される。量子化インデックス決定回路25には、外部コンピュータ2から目標符号量が、バッファ17から発生符号量が、アクティビティ検出回路24からアクティビティが、それぞれ供給されるようになされている。そして、量子化インデックス決定回路25は、これらの目標符号量、発生符号量、およびアクティビティに基づいて、適応的に量子化インデックスを決定し、即ち、例えば、発生符号量が目標符号量に一致するような量子化インデックスであって、アクティビティに対応した画質の復号画像が得られるようなものを決定し、量子化回路15に供給する。
【0049】
さらに、量子化インデックス決定回路25には、外部コンピュータ2から、使用する量子化マトリクスを指示する指示信号が供給されるようになされており、量子化インデックス決定回路25は、この指示信号にしたがって、使用する量子化マトリクスを決定する。即ち、外部コンピュータ2は、後述するようにして、使用する量子化マトリクスを決定し、その量子化マトリクスに対応する指示信号を、量子化インデックス決定回路25に出力するようになされており、量子化インデックス決定回路25は、外部コンピュータ2からの指示信号にしたがって、使用する量子化マトリクスを決定し、量子化回路15に出力する。
【0050】
これにより、量子化回路15では、上述したように、量子化インデックス決定回路25からの量子化マトリクスまたは量子化インデックスに対応する量子化ステップで、DCT係数に対する重み付けまたは量子化がそれぞれ行われる。
【0051】
なお、量子化インデックス決定回路25は、1パス目は、固定の量子化インデックスを出力するようになされており、これにより、量子化回路15では、固定の量子化ステップで量子化が行われる。そして、2パス目において、量子化インデックス決定回路25は、上述したように、バッファ17からの発生符号量、アクティビティ検出回路24からのアクティビティ、さらには、外部コンピュータ2からの目標符号量に基づいて、適応的に量子化インデックスを設定するようになされており、これにより、量子化回路15では、そのように適応的に設定された量子化インデックスに対応する量子化ステップで量子化が行われる。
【0052】
次に、図1の画像符号化装置における量子化処理の詳細について説明する。
【0053】
例えば、MPEG符号化を行う場合においては、図2のエンコーダ1における量子化回路15では、まず、DCT係数(但し、DCT係数のうちのAC成分についてのみ)が16倍される。そして、その16倍されたDCT係数が、量子化ステップと、量子化マトリクスのうちのDCT係数に対応する位置にある係数とを除数として除算され、その除算結果を、例えば四捨五入した値が、量子化値として出力される。
【0054】
図3は、MPEGにおけるデフォルトの量子化マトリクスを示している。なお、同図(A)または(B)は、イントラ符号化またはインター符号化が行われる場合のデフォルトの量子化マトリクスをそれぞれ示している。
【0055】
量子化マトリクスの係数は、イントラ符号化におけるDC係数を除いて、16を基準とした、それ以上の値になっている。これは、上述したように、量子化が、DCT係数を16倍した後に行われるためである。従って、量子化マトリクスの係数は、必ずしも16以上である必要はないが、16未満の値とした場合に、量子化ステップが1や2などのように極端に小さな値であるときには、量子化値が元のDCT係数よりも大きな値となることがあり、また、この場合に量子化値の精度が向上するわけでもないので、通常は、16以上の値とされる。
【0056】
なお、MPEGでは、イントラ符号化におけるDC係数についての量子化マトリクスの係数は8(固定値)とすることが規定されている。
【0057】
いま、図3に示したデフォルトの量子化マトリクスを使用して、2パス目の処理を行った場合に、発生符号量および目標符号量、アクティビティなどの観点から、量子化インデックスが、例えば、3乃至9の範囲の値が設定されて量子化が行われるとする。なお、以下では、説明を簡単にするために、量子化インデックスと量子化ステップとの対応関係として線形なものを考える。従って、上述の場合、量子化ステップは、6,8,・・・,18のうちのいずれかが設定される。
【0058】
この場合において、図4に示すように、量子化マトリクスを、図3に示した量子化マトリクスの係数(但し、上述した理由から、イントラ符号化におけるDC係数に対応する位置の係数は除く)を2で除算して整数に丸めたものに変更すると(図4(A)または図4(B)が、それぞれ図3(A)または図3(B)に対応している)、その変更前と同一の発生符号量を得るためには、量子化インデックスは、量子化マトリクスの変更前における量子化インデックスの2倍にする必要がある。即ち、量子化回路15では、DCT係数が、量子化マトリクスの係数と、量子化インデックスに対応する量子化ステップとの両方で除算されるから、量子化マトリクスの係数を1/2倍にした場合、同一の符号量を得るために、量子化インデックスとしては、元の2倍の値の範囲を設定する必要がある。
【0059】
従って、本来ならば、上述のように、量子化インデックスが3乃至9の範囲の値が設定されて量子化が行われる場合において、量子化マトリクスの係数を1/2倍にすると、量子化インデックスは、元の値の2倍の範囲である6乃至18の範囲の値が設定され、その結果、量子化ステップとしては、12,14,・・・,36のうちのいずれかが設定されることになる。
【0060】
ここで、量子化マトリクスの変更前と変更後とにおける量子化インデックスを比較してみると、量子化マトリクスの変更前では、3乃至9の7値しか使用することができなかった量子化インデックスが、量子化マトリクスの変更後には、6乃至18の13値を使用することができることになる。
【0061】
従って、量子化マトリクスを、上述のように2で除算(1/2倍)して、その係数を小さな値に変更することにより、使用する量子化インデックスの範囲を、大きな値の広い範囲に変更することができ、これにより、量子化インデックスが変化した場合の、その変化前後の比率を小さくすることができる。その結果、量子化インデックスを、その値から見て、細かく、かつ広い範囲で変化させることができることになる。
【0062】
図1の画像符号化装置では、以上のようにして、量子化インデックス、ひいては、量子化ステップを、小さい比率で細かく変化させ、これにより、その1段階の変化が、復号画像の画質に及ぼす影響を小さくし、復号画像の画質の均一化を図るようになされている。
【0063】
なお、上述の場合においては、量子化マトリクスの係数を2で除算するようにしたが、この係数を除算する除数は2に限定されるものではなく、3や4その他の1より大きい実数を用いることが可能である。
【0064】
次に、量子化マトリクスを、常時、上述のように2などで除算(1/2倍など)して、その係数を小さな値に変更し、使用する量子化インデックスの範囲を、大きな値の範囲に変更した場合、非常に複雑な画像が入力されたり、また、低ビットレートに圧縮を行うときなどは、量子化インデックスとして、その上限値を越えた値が必要になることがある。
【0065】
即ち、例えば、図3に示したデフォルトの量子化マトリクスを使用して、2パス目の処理を行った場合に、発生符号量および目標符号量、アクティビティなどの観点から、量子化インデックスが、例えば、8乃至24の範囲の値が設定されて量子化が行われるとする。この場合において、上述したように、量子化マトリクスの係数を1/2倍すると、量子化インデックスとしては、8乃至24の範囲の2倍の範囲である16乃至48の範囲が必要となる。
【0066】
MPEGでは、量子化インデックスの上限値は、前述のように31であり、この場合、量子化インデックスとして、その上限値を越えた値が必要になる。
【0067】
しかしながら、上限値を越えた量子化インデックスは設定することができないから、そのような量子化インデックスが必要な場合であっても、量子化インデックスの上限値に対応する量子化ステップ(MPEGでは、前述したように62)で量子化が行われる。従って、この場合、目標符号量よりも極端に大きな符号量が発生することになる。
【0068】
ところで、量子化インデックスとして、例えば、上述のように8乃至24の範囲などの、比較的大きな値を含む範囲が使用される場合においては、量子化マトリクスを変更して、使用可能な量子化インデックスの値を、さらに大きな値にしなくても、復号画像の均一性はある程度保たれる。
【0069】
従って、量子化マトリクスの変更は、常時行う必要はなく、量子化マトリクスをそのまま用いた場合における量子化インデックスの使用可能な範囲の値に対応して行えば良い。
【0070】
ここで、量子化マトリクスをそのまま用いた場合における量子化インデックスの使用可能な範囲(使用される量子化インデックスの範囲)の正確な値は、符号化が終了しないと分からない。即ち、例えば、2パスエンコーディングが行われる場合においては、1パス目の処理で、固定の量子化ステップで量子化が行われ、その処理結果に基づいて目標符号量が求められ、2パス目の処理で、発生符号量が目標符号量に一致するように、適応的に量子化ステップが変化されるから、使用される量子化ステップの範囲、即ち、使用される量子化インデックスの範囲の正確な値は、2パス目の処理が終了して、初めて認識することができる。
【0071】
従って、2パス目の処理により、使用される量子化インデックスの範囲を、正確に求め、その範囲が、小さな値の範囲である場合には、量子化マトリクスを変更して、再度符号化を行うようにする必要があるが、これでは、処理に時間を要することになる。
【0072】
そこで、1パス目の処理に基づき、例えば、次のようにして、使用される量子化インデックスを予測し、その予測結果に対応して、量子化マトリクスを変更するかどうかを決定するようにすることができる。
【0073】
即ち、1パス目の処理では、上述したように、固定の量子化インデックス(量子化ステップ)で量子化が行われ、その結果得られる符号量その他に基づいて、2パス目における目標符号量が決定される。
【0074】
そこで、まず、例えば、1GOPや、1本の映画などのような所定の時間ごとに、1パス目の処理で得られた発生符号量の総和Gと、その発生符号量に基づいて決定された目標符号量の総和Tを求め、それらの比r=T/Gを判定する。
【0075】
この目標符号量の総和Tと発生符号量の総和Gとの比rは、所定の時間における量子化インデックスの平均的な値が、1パス目の処理における固定の量子化インデックス(例えば、8など)と等しければ1になり、また、その平均的な値が固定の量子化インデックスよりも大きい場合または小さい場合は、それぞれ、1より小さくまたは大きくなる。
【0076】
即ち、実際の発生符号量を目標符号量に一致させるために、2パス目の処理では、1パス目の処理で得られた目標符号量の総和Tが発生符号量の総和Gより大であれば、固定の量子化インデックスより小さな量子化インデックスが設定されることが予想され、その逆に、1パス目の処理で得られた目標符号量の総和Tが発生符号量の総和Gより小であれば、固定の量子化インデックスより大きな量子化インデックスが設定されることが予想される。
【0077】
従って、目標符号量の総和Tと発生符号量の総和Gとの比rによって、2パス目の処理における量子化インデックスの、固定の量子化インデックスを基準とした値を予測することができるので、この比rに対応して、量子化マトリクスを変更するかどうかを決定すれば良い。
【0078】
以上のようにして符号化を行う場合の図1の画像符号化装置の処理について、図5のフローチャートを参照して、さらに説明する。
【0079】
まず最初に、ステップS1において、エンコーダ1は、1パス目の処理を行う。即ち、エンコーダ1は、固定の量子化インデックスで量子化を行い、その結果得られる符号化データの発生符号量、さらには、例えばDCT係数のDC成分、画像のアクティビティ、その他の目標符号量を決定するのに必要な情報(統計量)を、外部コンピュータ2に出力する。
【0080】
外部コンピュータ2は、エンコーダ1から各種の情報を受信すると、ステップS2において、その情報に基づいて、2パス目の処理により得られる符号化データの目標符号量を算出する。そして、外部コンピュータ2は、ステップS3において、所定の時間単位における目標符号量の総和Tと発生符号量(1パス目の処理の発生符号量)の総和Gとの比rを求め、ステップS4に進み、その比rの値を判定する。
【0081】
ステップS4において、比rが、例えば、0.5より小さいと判定された場合、即ち、2パス目の処理における量子化インデックスの値が大であると予測される場合、ステップS5に進み、外部コンピュータ2は、例えばデフォルトの量子化マトリクスをそのまま使用することを指示する指示信号を、エンコーダ1の量子化インデックス決定回路25に供給し、ステップS8に進む。
【0082】
また、ステップS4において、比rが、例えば、0.5以上であり、かつ2より小さいと判定された場合、即ち、2パス目の処理における量子化インデックスの値が中であると予測される場合、ステップS6に進み、外部コンピュータ2は、例えば、デフォルトの量子化マトリクスの係数を1/2倍したもの(以下、適宜、ハーフ量子化マトリクスという)を使用することを指示する指示信号を、エンコーダ1の量子化インデックス決定回路25に供給し、ステップS8に進む。
【0083】
さらに、ステップS4において、比rが、例えば、2以上であると判定された場合、即ち、2パス目の処理における量子化インデックスの値が小であると予測される場合、ステップS6に進み、外部コンピュータ2は、例えば、デフォルトの量子化マトリクスの係数を1/4倍したもの(以下、適宜、クオータ量子化マトリクスという)を使用することを指示する指示信号を、エンコーダ1の量子化インデックス決定回路25に供給し、ステップS8に進む。
【0084】
ステップS8では、エンコーダ1の量子化インデックス決定回路25において、外部コンピュータ2からの指示信号にしたがった量子化マトリクス(ここでは、デフォルトの量子化マトリクス、ハーフ量子化マトリクス、またはクオータ量子化マトリクスのうちのいずれか)が設定され、さらに目標符号量に対応した量子化インデックスが設定され、量子化回路15に供給される。これにより、量子化回路15では、量子化インデックス決定回路25からの量子化マトリクスと量子化インデックスにしたがって、DCT係数が量子化される。
【0085】
なお、ステップS4乃至S8の処理は、ステップS3において、比rが求められる時間ごとに繰り返し行われる。即ち、ステップS3において、例えば、1GOPごとに目標符号量の総和Tと発生符号量の総和Gとの比rが求められる場合には、ステップS4乃至S8の処理は、その比が求められるGOP単位で繰り返される。
【0086】
以上のように、量子化ステップの変化前後の比率が小さくなるように、DCT係数に対する重み付けを行う量子化マトリクスの係数を変更し、これにより、量子化ステップを、その値に対して細かく変化させることができるようにしたので、従来のように、量子化インデックスと量子化ステップとの対応関係として線形なものと非線形なものとのいずれかしか選択することができない場合に比較して、いわばきめ細かい変化が可能な量子化ステップでの量子化を行うことができる。そして、その結果、復号画像の画質の均一化を図ることが可能となり、視聴者が復号画像を視聴したときの主観的な画質を大幅に向上させることができる。
【0087】
また、量子化ステップを細かく変化させることができる結果、発生符号量を、より柔軟に調整して目標符号量に近づけることができるようになり、例えば、MPEG符号化を行う際にデコーダ側に想定されるVBVバッファのデータ蓄積量を管理するために、目標符号量に対して見積もるマージンを小さくすることができる。即ち、VBVバッファのアンダーフローを防止するために、目標符号量を、本来見積もるべき値より、それほど大きなマージンをみて設定する必要がなくなり、その結果、複雑な画像に対しては、従来よりも多い符号量を目標符号量として割り当てることが可能となるので、そのような画像についての復号画像の画質を向上させることが可能となる。
【0088】
さらに、2パスエンコーディングを行う場合においては、1パス目の処理結果から、2パス目における量子化インデックスを予測し、その予測結果に基づいて、量子化マトリクスを変更するようにしたので、上限値を越えた量子化インデックスが必要となることを防止することが可能となる。即ち、上限値を越えない範囲で、量子化インデックスを変化させることが可能となる。
【0089】
以上、本発明を、2パスエンコーディングを行う画像符号化装置に適用した場合について説明したが、本発明は、その他、1回の処理で符号化を行う場合にも適用可能である。
【0090】
なお、本実施の形態では、量子化インデックスと量子化ステップとが線形な対応関係にあるとしたが、本発明は、これらが非線形な対応関係にある場合にも適用することができる。但し、量子化インデックスと量子化ステップとが非線形な対応関係にある場合、量子化マトリクスの係数を小さな値に変更しても、量子化ステップが、その変更前より細かく変化するとは限らない(量子化インデックスは細かく変化するようになるが、量子化ステップは、量子化インデックスと非線形に対応付けられているため、量子化インデックスと同様に細かく変化するとは限らない)。しかしながら、この場合でも、量子化マトリクスの係数を小さな値にすることで、量子化ステップは大きな値にはなるので、量子化ステップの変化前後の比率は小さくなり、その結果、量子化インデックスと量子化ステップとが線形な対応関係にある場合と同様に、画質の均一化を図ることができる。
【0091】
また、本実施の形態では、外部コンピュータ2からエンコーダ1に目標符号量を送信し、エンコーダ1において量子化インデックスを決定するようにしたが、量子化インデックスは、外部コンピュータ2において決定し、エンコーダ1に送信するようにすることも可能である。
【0092】
さらに、本実施の形態では、外部コンピュータ2において、使用する量子化マトリクスを決定するようにしたが、この決定処理は、エンコーダ1において行うようにすることも可能である。
【0093】
また、本実施の形態では、MPEGで規定されているデフォルトの量子化マトリクスを用いるようにしたが、本発明は、その他の量子化マトリクスを使用する場合にも適用することが可能である。即ち、例えば、図6は、TM5(Test Model 5(Test Model Editing Commitee: "Test Model 5", ISO/IEC JTC/SC29/WG11/N0400(Apr.1993)))で提案されている量子化マトリクスを示しており、イントラ符号化の際に使用される量子化マトリクス(図6(A))だけでなく、インター符号化の際に使用される量子化マトリクス(図6(B))にも傾斜が付されているが(これに対して、図3に示したMPEGのデフォルトの量子化マトリクスでは、イントラ符号化の際に使用されるもののみに傾斜が付されており、インター符号化の際に使用されるものには傾斜が付されていない)、このような量子化マトリクスについても、本発明は適用可能である。つまり、本発明は、量子化マトリクスにおける係数の傾斜の有無、さらには、その傾斜の付し方に関係なく適用することができる。
【0094】
さらに、本実施の形態においては、量子化回路15において、DCT回路14が出力するDCT係数を量子化するようにしたが、本発明は、DCT係数以外の直交変換係数を量子化する場合にも適用可能である。
【0095】
【発明の効果】
請求項1に記載の画像符号化装置および請求項3に記載の画像符号化方法によれば、直交変換係数を固定の量子化ステップで量子化することによって得られる符号の量である発生符号量がGOP単位で出力され、出力された発生符号量に基づいて、画像を符号化する際の目標符号量がGOP単位で算出され、目標符号量を発生符号量で除算した除算値である、発生符号量と目標符号量との比の大きさが所定の閾値以上でない場合、直交変換係数を量子化する際の量子化マトリクスが、デフォルトの量子化マトリクスに設定され、比の大きさが所定の閾値以上である場合、直交変換係数を量子化する際の量子化インデックスが大になるように、直交変換係数を量子化する際の量子化マトリクスが、デフォルトの量子化マトリクスより係数が小の量子化マトリクスに設定され、設定された量子化マトリクスを用いて、目標符号量に対応した量子化インデックスで直交変換係数が量子化される。その結果、復号画像の画質の均一化を図ることが可能となる。
請求項4に記載の画像符号化装置および請求項5に記載の画像符号化方法によれば、直交変換係数を固定の量子化ステップで量子化することによって得られる符号の量である発生符号量がピクチャ単位で出力され、出力された発生符号量に基づいて、画像を符号化する際の目標符号量がピクチャ単位で算出され、目標符号量を発生符号量で除算した除算値である、発生符号量と目標符号量との比の大きさが所定の閾値以上でない場合、直交変換係数を量子化する際の量子化マトリクスが、デフォルトの量子化マトリクスに設定され、比の大きさが所定の閾値以上である場合、直交変換係数を量子化する際の量子化インデックスが大になるように、直交変換係数を量子化する際の量子化マトリクスが、デフォルトの量子化マトリクスより係数が小の量子化マトリクスに設定され、設定された量子化マトリクスを用いて、目標符号量に対応した量子化インデックスで直交変換係数が量子化される。その結果、復号画像の画質の均一化を図ることが可能となる。
請求項6に記載の画像符号化装置および請求項7に記載の画像符号化方法によれば、直交変換係数を固定の量子化ステップで量子化することにより得られるGOP単位の符号の量である発生符号量から算出されるGOP単位の目標符号量を、発生符号量で除算した除算値である、発生符号量と目標符号量との比の大きさが所定の閾値以上でない場合、直交変換係数を量子化する際の量子化マトリクスが、デフォルトの量子化マトリクスに設定され、比の大きさが所定の閾値以上である場合、直交変換係数を量子化する際の量子化インデックスが大になるように、直交変換係数を量子化する際の量子化マトリクスが、デフォルトの量子化マトリクスより係数が小の量子化マトリクスに設定され、設定された量子化マトリクスを用いて、目標符号量に対応した量子化インデックスで直交変換係数が量子化される。その結果、復号画像の画質の均一化を図ることが可能となる。
請求項8に記載の画像符号化装置および請求項9に記載の画像符号化方法によれば、直交変換係数を固定の量子化ステップで量子化することにより得られるピクチャ単位の符号の量である発生符号量から算出されるピクチャ単位の目標符号量を、発生符号量で除算した除算値である、発生符号量と目標符号量との比の大きさが所定の閾値以上でない場合、直交変換係数を量子化する際の量子化マトリクスが、デフォルトの量子化マトリクスに設定され、比の大きさが所定の閾値以上である場合、直交変換係数を量子化する際の量子化インデックスが大になるように、直交変換係数を量子化する際の量子化マトリクスが、デフォルトの量子化マトリクスより係数が小の量子化マトリクスに設定され、設定された量子化マトリクスを用いて、目標符号量に対応した量子化インデックスで直交変換係数が量子化される。その結果、復号画像の画質の均一化を図ることが可能となる。
【0096】
請求項10に記載の記録装置および請求項11に記載の記録方法によれば、直交変換係数を固定の量子化ステップで量子化することによって得られる符号の量である発生符号量がGOP単位で出力され、出力された発生符号量に基づいて、画像を符号化する際の目標符号量がGOP単位で算出され、目標符号量を発生符号量で除算した除算値である、発生符号量と目標符号量との比の大きさが所定の閾値以上でない場合、直交変換係数を量子化する際の量子化マトリクスが、デフォルトの量子化マトリクスに設定され、比の大きさが所定の閾値以上である場合、直交変換係数を量子化する際の量子化インデックスが大になるように、直交変換係数を量子化する際の量子化マトリクスが、デフォルトの量子化マトリクスより係数が小の量子化マトリクスに設定され、設定された量子化マトリクスを用いて、目標符号量に対応した量子化インデックスで直交変換係数が量子化され、量子化された量子化値が符号化されて記録媒体に記録される。その結果、復号画像の画質の均一化を図ることが可能となる。
請求項12に記載の記録装置および請求項13に記載の記録方法によれば、直交変換係数を固定の量子化ステップで量子化することによって得られる符号の量である発生符号量がピクチャ単位で出力され、出力された発生符号量に基づいて、画像を符号化する際の目標符号量がピクチャ単位で算出され、目標符号量を発生符号量で除算した除算値である、発生符号量と目標符号量との比の大きさが所定の閾値以上でない場合、直交変換係数を量子化する際の量子化マトリクスが、デフォルトの量子化マトリクスに設定され、比の大きさが所定の閾値以上である場合、直交変換係数を量子化する際の量子化インデックスが大になるように、直交変換係数を量子化する際の量子化マトリクスが、デフォルトの量子化マトリクスより係数が小の量子化マトリクスに設定され、設定された量子化マトリクスを用いて、目標符号量に対応した量子化インデックスで直交変換係数が量子化され、量子化された量子化値が符号化されて記録媒体に記録される。その結果、復号画像の画質の均一化を図ることが可能となる。
請求項14に記載の記録装置および請求項15に記載の記録方法によれば、直交変換係数を固定の量子化ステップで量子化することにより得られるGOP単位の符号の量である発生符号量から算出されるGOP単位の目標符号量を、発生符号量で除算した除算値である、発生符号量と目標符号量との比の大きさが所定の閾値以上でない場合、直交変換係数を量子化する際の量子化マトリクスが、デフォルトの量子化マトリクスに設定され、比の大きさが所定の閾値以上である場合、直交変換係数を量子化する際の量子化インデックスが大になるように、直交変換係数を量子化する際の量子化マトリクスが、デフォルトの量子化マトリクスより係数が小の量子化マトリクスに設定され、設定された量子化マトリクスを用いて、目標符号量に対応した量子化インデックスで直交変換係数が量子化され、量子化された量子化値が符号化されて記録媒体に記録される。その結果、復号画像の画質の均一化を図ることが可能となる。
請求項16に記載の記録装置および請求項17に記載の記録方法によれば、直交変換係数を固定の量子化ステップで量子化することにより得られるピクチャ単位の符号の量である発生符号量から算出されるピクチャ単位の目標符号量を、発生符号量で除算した除算値である、発生符号量と目標符号量との比の大きさが所定の閾値以上でない場合、直交変換係数を量子化する際の量子化マトリクスが、デフォルトの量子化マトリクスに設定され、比の大きさが所定の閾値以上である場合、直交変換係数を量子化する際の量子化インデックスが大になるように、直交変換係数を量子化する際の量子化マトリクスが、デフォルトの量子化マトリクスより係数が小の量子化マトリクスに設定され、設定された量子化マトリクスを用いて、目標符号量に対応した量子化インデックスで直交変換係数が量子化され、量子化された量子化値が符号化されて記録媒体に記録される。その結果、復号画像の画質の均一化を図ることが可能となる。
【図面の簡単な説明】
【図1】本発明の画像符号化装置の一実施の形態の構成例を示すブロック図である。
【図2】図1のエンコーダ1の構成例を示すブロック図である。
【図3】MPEGで規定されているデフォルトの量子化マトリクスを示す図である。
【図4】図3の量子化マトリクスの係数を2で除算し、さらに整数に丸めたものを示す図である。
【図5】図1の画像符号化装置の処理を説明するためのフローチャートである。
【図6】TM5で規定されている量子化マトリクスを示す図である。
【符号の説明】
1 エンコーダ, 2 外部コンピュータ, 3 記録媒体, 4 伝送路,11 画像並び替え回路, 12 走査変換/マクロブロック化回路, 13演算器, 14 DCT回路(直交変換手段), 15 量子化回路(量子化手段)(重み付け手段), 16 VLC回路, 17 バッファ, 18 逆量子化回路, 19 逆DCT回路, 20 演算器, 21 フレームメモリ, 22 動き補償回路, 23 動き検出回路, 24 アクティビティ検出回路, 25 量子化インデックス決定回路[0001]
BACKGROUND OF THE INVENTION
The present invention provides image coding apparatus And image coding Method , And Recording device and Recording method In particular, image coding that enables the image quality of decoded images to be uniform apparatus And image coding Method , And Recording device and Recording method About.
[0002]
[Prior art]
For example, in an image coding method (image compression method) using DCT (Discrete Cosine Transform) represented by MPEG (Moving Picture Experts Group) coding or the like, generally, a DCT coefficient obtained by DCT processing of an image Further, quantization is performed by weighting using a difference in quantization sensitivity for each spatial frequency in human visual characteristics, thereby increasing the compression rate. That is, since the higher-order DCT coefficients do not significantly affect the image quality when the decoded image is viewed, weighting is performed so that the quantization is coarser than the lower-order DCT coefficients.
[0003]
In MPEG, a quantization matrix inherited from JPEG (Joint Photographic coding Experts Group) is prepared as means for performing weighting as described above. The quantization matrix is a matrix in which 8 × 8 coefficients corresponding to a block of 8 × 8 pixels, which is a unit of DCT processing, are arranged, and the coefficients can be freely changed during encoding. Has been made.
[0004]
The weighting by the quantization matrix means that the DCT coefficient is divided by the coefficient corresponding to the DCT coefficient among the coefficients constituting the quantization matrix. Since quantization is performed with a multiplication value obtained by multiplying the coefficient of the quantization matrix and the quantization step, that is, weighting of the DCT coefficient and quantization are performed at the same time, the quantization matrix corresponds to human visual characteristics. It can also be considered as a quantization step for performing quantization.
[0005]
According to the quantization matrix, as described above, efficient quantization using human visual characteristics can be realized, and the coefficient is generally set from such a viewpoint, but the quantization step In general, for example, rate control for controlling the generated code amount to match a predetermined target code amount, and the image quality (appearance image quality) of the decoded image that varies depending on the activity (activity) of the image Is set corresponding to the quantization index that realizes the conversion.
[0006]
In MPEG, two types of correspondence between a linear index and a non-linear one are defined as a correspondence relationship between a quantization index and a quantization step. That is, in MPEG, an integer value of 1 to 31 is defined as a quantization index, and according to a linear correspondence relationship, a value twice the quantization index is associated with the quantization step. . Therefore, the quantization step is uniquely determined corresponding to the quantization index. When the quantization index is 1, 2,..., 31, the quantization step is 2, 4,. Become. Similarly, in the non-linear correspondence, the quantization index and the quantization step are associated one-to-one with a predetermined non-linear function.
[0007]
In the nonlinear correspondence, the quantization step can be changed finely in the range where the quantization index is small, and the quantization step can be changed greatly in the range where the quantization index is large. As described above, the quantization index and the quantization step are associated with each other.
[0008]
Whether the quantization is performed using linear or non-linear correspondence is represented by a variable called a Q scale type. By referring to the Q scale type, the decoder side refers to the quantization index and the quantum. The correspondence relationship with the conversion step is recognized.
[0009]
By the way, for example, in the authoring of a DVD (Digigal Versatile Disc) or a video CD (Compact Disc), the MPEG system is currently employed as an image compression encoding method. When recording or transmitting, it is required to compress and encode an image so that a decoded image with good image quality can be obtained with a small code amount.
[0010]
Thus, for example, in authoring, a DCT coefficient obtained by DCT processing of an image is quantized at a fixed quantization step, and the generated code amount, for example, is measured as the complexity (difficulty) of the image. And a predetermined target code amount based on the generated code amount obtained by the first pass process, and the quantization step is adaptive so that the generated code amount matches the target code amount. In general, so-called two-pass encoding is performed, in which the second-pass processing of changing the image to variable rate encoding is performed.
[0011]
According to the two-pass encoding, it is possible to prevent a complicated portion from being extremely coarsely quantized by assigning a constant code amount regardless of the complexity of the image. That is, based on the result of the first pass processing, in the second pass processing, a small code amount is assigned to a flat image and a large code amount is assigned to a complex image as a target code amount. It is possible to make the change in the quantization step fall within a predetermined narrow range, and as a result, it is possible to prevent a portion that is extremely coarsely quantized from occurring over the entire image.
[0012]
[Problems to be solved by the invention]
By the way, when the quantization step changes within a predetermined narrow range as described above, it is desirable that the ratio of the quantization step before and after the change is small.
[0013]
That is, for simplicity of explanation, if a linear relationship is used as the correspondence relationship between the quantization index and the quantization step, as described above, the quantization step is twice the quantization index. Set to a value. In this case, consider when the quantization index changes from 1 to 2, for example, and from 30 to 31.
[0014]
First, when the quantization index changes from 1 to 2, since the quantization step changes from 2 to 4, the ratio of the quantization steps before and after the change ([quantization step after change] / [quantization before change) Step)) is 2 (= (4-2) / 2) times. On the other hand, when the quantization index changes from 30 to 31, the quantization step changes from 60 to 62. Therefore, the ratio of the quantization step before and after the change is approximately 1.033 (≈62 / 60) times. .
[0015]
In MPEG, the quantization step can be changed in units of macroblocks. Therefore, if the quantization steps in adjacent macroblocks change at a large ratio, not only a large difference occurs in the generated code amount, but also the decoded image. There is a big difference in image quality. Therefore, when the quantization index changes to a small value, the one-stage change greatly affects the image quality of the decoded image, and such a difference in image quality between macroblocks constituting one frame. If this happens, it will make the viewer feel uncomfortable.
[0016]
The present invention has been made in view of such a situation, and makes it possible to reduce the ratio before and after the change of the quantization step, thereby achieving uniform image quality of the decoded image. It is.
[0017]
[Means for Solving the Problems]
The image encoding device according to claim 1, and Claim 3 In the image coding method described in the above, the generated code amount, which is the amount of code obtained by quantizing the orthogonal transform coefficient in a fixed quantization step, is output in GOP units, and based on the generated generated code amount The target code amount for encoding an image is calculated in GOP units, and the ratio of the generated code amount to the target code amount, which is a division value obtained by dividing the target code amount by the generated code amount, is a predetermined threshold value. more than If not, if the quantization matrix when quantizing the orthogonal transform coefficient is set to the default quantization matrix, and the magnitude of the ratio is equal to or greater than a predetermined threshold, To increase the quantization index when quantizing the orthogonal transform coefficient, Set the quantization matrix for quantizing orthogonal transform coefficients to a quantization matrix with smaller coefficients than the default quantization matrix. The orthogonal transform coefficient is quantized using a quantization index corresponding to the target code amount using the set quantization matrix.
Claim 4 An image encoding device according to claim 1, and
Claim 6 An image encoding device according to claim 1, and
[0018]
Claim 10 A recording device according to claim 1, and
Claim 12 A recording device according to claim 1, and
[0019]
Claim 14 A recording device according to claim 1, and
Claim 16 A recording device according to claim 1, and
[0020]
The image encoding device according to claim 1, and Claim 3 In the image coding method described in the above, the generated code amount, which is the amount of code obtained by quantizing the orthogonal transform coefficient in a fixed quantization step, is output in GOP units, and based on the generated generated code amount Thus, the target code amount for encoding an image is calculated in GOP units, and the magnitude of the ratio between the generated code amount and the target code amount, which is a division value obtained by dividing the target code amount by the generated code amount, is a predetermined value. Above threshold Otherwise, the quantization matrix when quantizing the orthogonal transform coefficient is set to a default quantization matrix, and the magnitude of the ratio is equal to or greater than a predetermined threshold, To increase the quantization index when quantizing the orthogonal transform coefficient, The quantization matrix used to quantize the orthogonal transform coefficients is set to a quantization matrix with a smaller coefficient than the default quantization matrix. The orthogonal transform coefficient is quantized with a quantization index corresponding to the target code amount using the set quantization matrix.
Claim 4 An image encoding device according to claim 1, and
Claim 6 An image encoding device according to claim 1, and
[0021]
Claim 10 A recording device according to claim 1, and
Claim 12 A recording device according to claim 1, and
[0022]
Claim 14 A recording device according to claim 1, and
Claim 16 A recording device according to claim 1, and
[0023]
DETAILED DESCRIPTION OF THE INVENTION
FIG. 1 shows the configuration of an embodiment of an image encoding apparatus according to the present invention.
[0024]
This image encoding apparatus encodes an image at a variable rate by the MPEG method or the like by so-called two-pass encoding. t al Versatile Disc), video CD (Compact Disc), and other authoring systems.
[0025]
The image data to be encoded is input to the encoder 1, and the encoder 1 performs orthogonal transform on the image data to at least an orthogonal transform coefficient such as a DCT coefficient, and encodes the orthogonal transform coefficient by quantizing the orthogonal transform coefficient. It is made to become.
[0026]
That is, in the first pass, the encoder 1 encodes the image data by quantizing it in a fixed quantization step, and the generated code amount of the encoded data obtained as a result (or information corresponding to the generated code amount). For example, the encoding difficulty (difficulty) of the image data) is output to the
[0027]
In the second pass, the
[0028]
The encoded data obtained by the second pass encoding is recorded on the recording medium 3 such as an optical disk, a magneto-optical disk, a magnetic tape, or the like, or, for example, terrestrial, satellite line, CATV network, Internet It is transmitted via the other transmission path 4.
[0029]
Next, FIG. 2 shows a configuration example of the encoder 1 of FIG.
[0030]
In FIG. 2, an image is MPEG-encoded in the encoder 1.
[0031]
That is, the image data to be encoded is supplied to the
[0032]
Note that it is determined in advance whether the image of each frame that is sequentially input is processed as an I, P, or B picture.
[0033]
The image data rearranged in the
[0034]
The motion
[0035]
That is, the motion
[0036]
Here, in MPEG, the image prediction modes include intra coding (intraframe coding), forward prediction coding, backward prediction coding, bidirectional prediction coding (three prediction codes in the forward, backward, and bidirectional directions). Encoding is called inter encoding or non-intra encoding), I picture is intra encoded, P picture is intra encoded or forward predictive encoded, B picture Are intra-coded, forward-predictive coded, backward-predicted coded, or both-way predictive coded.
[0037]
That is, the motion
[0038]
The motion
[0039]
Further, the motion
[0040]
When the
[0041]
The
[0042]
In the motion
[0043]
In the
[0044]
In the
[0045]
On the other hand, the quantization value output from the
[0046]
In addition to the output of the
[0047]
The decoded image (local decoded image) obtained by the
[0048]
On the other hand, in the
[0049]
Further, the quantization
[0050]
Thereby, in the
[0051]
The quantization
[0052]
Next, the details of the quantization process in the image encoding device of FIG. 1 will be described.
[0053]
For example, in the case of performing MPEG encoding, in the
[0054]
FIG. 3 shows a default quantization matrix in MPEG. Note that FIG. 4A or FIG. 4B respectively show default quantization matrices when intra coding or inter coding is performed.
[0055]
The coefficient of the quantization matrix is a value larger than 16 with reference to 16 except for the DC coefficient in the intra coding. This is because the quantization is performed after multiplying the DCT coefficient by 16 as described above. Therefore, the coefficient of the quantization matrix does not necessarily need to be 16 or more. However, when the quantization step is an extremely small value such as 1 or 2 when the value is less than 16, the quantization value May be larger than the original DCT coefficient, and in this case, the accuracy of the quantized value does not improve, so the value is usually 16 or more.
[0056]
In MPEG, it is stipulated that the coefficient of the quantization matrix for the DC coefficient in intra coding is 8 (fixed value).
[0057]
Now, when the second pass processing is performed using the default quantization matrix shown in FIG. 3, the quantization index is, for example, 3 from the viewpoint of the generated code amount, the target code amount, the activity, and the like. It is assumed that quantization is performed with values in the range of 9 to 9. In the following, in order to simplify the description, a linear relationship is considered as the correspondence between the quantization index and the quantization step. Therefore, in the above-described case, any of 6, 8,..., 18 is set as the quantization step.
[0058]
In this case, as shown in FIG. 4, the quantization matrix is changed to the coefficients of the quantization matrix shown in FIG. 3 (however, for the reason described above, the coefficient at the position corresponding to the DC coefficient in the intra coding is excluded). When divided into two and rounded to an integer (FIG. 4 (A) or FIG. 4 (B) corresponds to FIG. 3 (A) or FIG. 3 (B), respectively), In order to obtain the same generated code amount, the quantization index needs to be twice that before the change of the quantization matrix. That is, in the
[0059]
Therefore, if the quantization index is set to a value in the range of 3 to 9 and quantization is performed as described above, the quantization index is increased by a factor of 1/2. Is set to a value in the range of 6 to 18, which is twice the range of the original value. As a result, any of 12, 14,..., 36 is set as the quantization step. It will be.
[0060]
Here, when comparing the quantization index before and after the change of the quantization matrix, the quantization index that can only use 7 values of 3 to 9 before the change of the quantization matrix is found. After changing the quantization matrix, 13 values of 6 to 18 can be used.
[0061]
Therefore, by dividing the quantization matrix by 2 (1/2 times) as described above and changing the coefficient to a small value, the range of quantization indexes to be used is changed to a wide range of large values. Thus, when the quantization index changes, the ratio before and after the change can be reduced. As a result, the quantization index can be changed in a fine and wide range as seen from the value.
[0062]
In the image encoding apparatus of FIG. 1, as described above, the quantization index, and hence the quantization step, are finely changed at a small ratio, and thereby the effect of the one-stage change on the image quality of the decoded image. Is made small, and the image quality of the decoded image is made uniform.
[0063]
In the above case, the coefficient of the quantization matrix is divided by 2. However, the divisor for dividing this coefficient is not limited to 2, and 3, 4 or other real numbers larger than 1 are used. It is possible.
[0064]
Next, the quantization matrix is always divided by 2 (such as 1/2) as described above, the coefficient is changed to a small value, and the quantization index range to be used is changed to a large value range. When a very complicated image is input or when compression is performed at a low bit rate, a value exceeding the upper limit may be required as a quantization index.
[0065]
That is, for example, when the second pass processing is performed using the default quantization matrix shown in FIG. 3, the quantization index is, for example, from the viewpoint of the generated code amount, the target code amount, the activity, and the like. , 8 to 24 are set, and quantization is performed. In this case, as described above, when the coefficient of the quantization matrix is multiplied by ½, the quantization index requires a range of 16 to 48, which is twice the range of 8 to 24.
[0066]
In MPEG, the upper limit value of the quantization index is 31, as described above. In this case, a value exceeding the upper limit value is required as the quantization index.
[0067]
However, since a quantization index exceeding the upper limit value cannot be set, even if such a quantization index is necessary, a quantization step corresponding to the upper limit value of the quantization index (in MPEG, the above-described quantization index is used). As described above, quantization is performed in 62). Accordingly, in this case, a code amount extremely larger than the target code amount is generated.
[0068]
By the way, when a range including a relatively large value, such as the range of 8 to 24 as described above, is used as the quantization index, the quantization index can be changed by changing the quantization matrix. Even if the value of is not made larger, the uniformity of the decoded image is maintained to some extent.
[0069]
Therefore, it is not necessary to change the quantization matrix at all times, and it may be performed corresponding to the value in the usable range of the quantization index when the quantization matrix is used as it is.
[0070]
Here, when the quantization matrix is used as it is, an accurate value of the usable range of the quantization index (the range of the used quantization index) is not known unless the encoding is completed. That is, for example, when two-pass encoding is performed, quantization is performed in a fixed quantization step in the first pass processing, and the target code amount is obtained based on the processing result, and the second pass encoding is performed. Since the quantization step is adaptively changed so that the generated code amount matches the target code amount in the process, the range of the used quantization step, that is, the accurate range of the used quantization index is accurately determined. The value can be recognized only after the processing of the second pass is completed.
[0071]
Accordingly, the range of the quantization index to be used is accurately obtained by the processing of the second pass, and when the range is a small value range, the quantization matrix is changed and encoding is performed again. However, this requires time for processing.
[0072]
Therefore, based on the processing of the first pass, for example, the quantization index to be used is predicted as follows, and it is determined whether to change the quantization matrix corresponding to the prediction result. be able to.
[0073]
That is, in the first pass processing, as described above, quantization is performed with a fixed quantization index (quantization step), and the target code amount in the second pass is determined based on the code amount and the like obtained as a result. It is determined.
[0074]
Therefore, for example, for each predetermined time such as 1 GOP or one movie, the sum is determined based on the total amount G of the generated code amount obtained by the first pass processing and the generated code amount. A total sum T of target code amounts is obtained, and the ratio r = T / G is determined.
[0075]
The ratio r between the total T of the target code amount and the total sum G of the generated code amount is such that the average value of the quantization index at a predetermined time is a fixed quantization index (for example, 8 or the like) in the first pass processing. ), It is 1, and when the average value is larger or smaller than the fixed quantization index, it is smaller or larger than 1, respectively.
[0076]
That is, in order to make the actual generated code amount coincide with the target code amount, the total T of the target code amounts obtained by the first pass process is larger than the total G of generated code amounts in the second pass process. For example, a smaller quantization index than the fixed quantization index is expected to be set, and conversely, the target code amount total T obtained in the first pass processing is smaller than the generated code amount total G. If there is, it is expected that a quantization index larger than the fixed quantization index is set.
[0077]
Accordingly, since the ratio r between the total T of the target code amount and the total sum G of the generated code amount can predict the value of the quantization index in the second pass process based on the fixed quantization index, Corresponding to this ratio r, it may be determined whether or not to change the quantization matrix.
[0078]
The processing of the image encoding device in FIG. 1 when encoding is performed as described above will be further described with reference to the flowchart in FIG.
[0079]
First, in step S1, the encoder 1 performs the first pass process. That is, the encoder 1 performs quantization with a fixed quantization index, and determines the generated code amount of the encoded data obtained as a result, and further, for example, the DC component of the DCT coefficient, the image activity, and other target code amounts. Information (statistics) necessary for this is output to the
[0080]
When the
[0081]
In step S4, when it is determined that the ratio r is smaller than 0.5, for example, when the value of the quantization index in the second pass process is predicted to be large, the process proceeds to step S5, and the external For example, the
[0082]
In Step S4, when it is determined that the ratio r is, for example, 0.5 or more and smaller than 2, that is, the quantization index value in the second pass process is predicted to be medium. In this case, the process proceeds to step S6, and the
[0083]
Furthermore, when it is determined in step S4 that the ratio r is, for example, 2 or more, that is, when the value of the quantization index in the second pass process is predicted to be small, the process proceeds to step S6. The
[0084]
In step S8, in the quantization
[0085]
Note that the processes in steps S4 to S8 are repeated every time the ratio r is obtained in step S3. That is, in step S3, for example, when the ratio r between the total T of the target code amount and the total sum G of the generated code amount is obtained for each GOP, the processing of steps S4 to S8 is performed in units of GOPs for which the ratio is obtained Is repeated.
[0086]
As described above, the coefficient of the quantization matrix for performing weighting on the DCT coefficient is changed so that the ratio before and after the change of the quantization step becomes small, and thereby the quantization step is changed finely with respect to the value. Compared to the case where only the linear or non-linear correspondence can be selected as the correspondence between the quantization index and the quantization step as in the conventional case, It is possible to perform quantization in a quantization step that can be changed. As a result, the image quality of the decoded image can be made uniform, and the subjective image quality when the viewer views the decoded image can be greatly improved.
[0087]
Further, as a result of finely changing the quantization step, the generated code amount can be adjusted more flexibly to approach the target code amount. For example, it is assumed on the decoder side when performing MPEG encoding. In order to manage the amount of data stored in the VBV buffer, the margin estimated for the target code amount can be reduced. In other words, in order to prevent underflow of the VBV buffer, it is not necessary to set the target code amount with a margin that is much larger than the value that should be estimated, and as a result, for a complex image, it is larger than before. Since the code amount can be assigned as the target code amount, the image quality of the decoded image for such an image can be improved.
[0088]
Further, in the case of performing two-pass encoding, the quantization index in the second pass is predicted from the processing result of the first pass, and the quantization matrix is changed based on the prediction result. It is possible to prevent the need for a quantization index exceeding. That is, it is possible to change the quantization index within a range not exceeding the upper limit value.
[0089]
The case where the present invention is applied to an image encoding apparatus that performs two-pass encoding has been described above, but the present invention can also be applied to a case where encoding is performed by a single process.
[0090]
In the present embodiment, the quantization index and the quantization step are in a linear correspondence relationship, but the present invention can also be applied to a case in which they have a nonlinear correspondence relationship. However, when the quantization index and the quantization step have a nonlinear correspondence, even if the coefficient of the quantization matrix is changed to a small value, the quantization step does not always change more finely than before the change (quantum The quantization index changes finely, but since the quantization step is associated with the quantization index nonlinearly, it does not always change finely like the quantization index). However, even in this case, if the coefficient of the quantization matrix is made small, the quantization step becomes large, so the ratio before and after the change of the quantization step becomes small. As a result, the quantization index and the quantum As in the case where the conversion step has a linear correspondence, the image quality can be made uniform.
[0091]
Further, in the present embodiment, the target code amount is transmitted from the
[0092]
Furthermore, in the present embodiment, the quantization matrix to be used is determined in the
[0093]
In this embodiment, the default quantization matrix defined by MPEG is used. However, the present invention can also be applied to the case where other quantization matrices are used. That is, for example, FIG. 6 shows a quantization matrix proposed in TM5 (Test Model 5 (Test Model Editing Commitee: “
[0094]
Furthermore, in the present embodiment, the
[0095]
【The invention's effect】
The image encoding device according to claim 1 and Claim 3 According to the image coding method described in the above, the generated code amount that is the amount of code obtained by quantizing the orthogonal transform coefficient in the fixed quantization step is output in GOP units, and the generated generated code amount is Based on this, the target code amount for encoding an image is calculated in GOP units, and the ratio of the generated code amount to the target code amount, which is a division value obtained by dividing the target code amount by the generated code amount, is predetermined. Over the threshold of Otherwise, the quantization matrix when quantizing the orthogonal transform coefficient is set to a default quantization matrix, and the magnitude of the ratio is equal to or greater than a predetermined threshold, To increase the quantization index when quantizing the orthogonal transform coefficient, The quantization matrix used to quantize the orthogonal transform coefficients is set to a quantization matrix with a smaller coefficient than the default quantization matrix. The orthogonal transform coefficient is quantized with a quantization index corresponding to the target code amount using the set quantization matrix. As a result, the image quality of the decoded image can be made uniform.
Claim 4 An image encoding device according to claim 1 and
Claim 6 An image encoding device according to claim 1 and
[0096]
[Brief description of the drawings]
FIG. 1 is a block diagram illustrating a configuration example of an embodiment of an image encoding device according to the present invention.
FIG. 2 is a block diagram illustrating a configuration example of an encoder 1 in FIG.
FIG. 3 is a diagram illustrating a default quantization matrix defined by MPEG.
4 is a diagram illustrating a result of dividing the coefficient of the quantization matrix of FIG. 3 by 2 and rounding it to an integer. FIG.
FIG. 5 is a flowchart for explaining processing of the image encoding device in FIG. 1;
FIG. 6 is a diagram illustrating a quantization matrix defined by TM5.
[Explanation of symbols]
DESCRIPTION OF SYMBOLS 1 Encoder, 2 External computer, 3 Recording medium, 4 Transmission path, 11 Image rearrangement circuit, 12 Scan conversion / macroblock formation circuit, 13 Calculator, 14 DCT circuit (orthogonal transformation means), 15 Quantization circuit (Quantization) Means) (weighting means), 16 VLC circuit, 17 buffer, 18 inverse quantization circuit, 19 inverse DCT circuit, 20 arithmetic unit, 21 frame memory, 22 motion compensation circuit, 23 motion detection circuit, 24 activity detection circuit, 25 quantum Index determination circuit
Claims (17)
前記直交変換係数を固定の量子化ステップで量子化することによって得られる符号の量である発生符号量をGOP(Group of picture)単位で出力する発生符号量出力手段と、
前記発生符号量出力手段により出力された前記発生符号量に基づいて、前記画像を符号化する際の目標符号量をGOP単位で算出する目標符号量算出手段と、
前記目標符号量を前記発生符号量で除算した除算値である、前記発生符号量と前記目標符号量との比の大きさが所定の閾値以上でない場合、前記直交変換係数を量子化する際の量子化マトリクスを、デフォルトの量子化マトリクスに設定し、前記比の大きさが前記所定の閾値以上である場合、前記直交変換係数を量子化する際の量子化インデックスが大になるように、前記直交変換係数を量子化する際の量子化マトリクスを、前記デフォルトの量子化マトリクスより係数が小の量子化マトリクスに設定する量子化マトリクス設定手段と、
前記量子化マトリクス設定手段により設定された前記量子化マトリクスを用いて、前記目標符号量に対応した量子化インデックスで前記直交変換係数を量子化する量子化手段と
を備える画像符号化装置。In an image encoding device that encodes the image by quantizing orthogonal transform coefficients obtained by orthogonal transform of the image,
Generated code amount output means for outputting a generated code amount, which is a code amount obtained by quantizing the orthogonal transform coefficient in a fixed quantization step, in GOP (Group of picture) units;
Based on the generated code amount output by the generated code amount output means, target code amount calculating means for calculating a target code amount for encoding the image in GOP units;
When the value of the ratio between the generated code amount and the target code amount, which is a division value obtained by dividing the target code amount by the generated code amount, is not equal to or greater than a predetermined threshold, When the quantization matrix is set to a default quantization matrix and the magnitude of the ratio is equal to or greater than the predetermined threshold, the quantization index when quantizing the orthogonal transform coefficient is increased. A quantization matrix setting means for setting a quantization matrix when quantizing the orthogonal transform coefficient to a quantization matrix having a smaller coefficient than the default quantization matrix;
An image coding apparatus comprising: quantization means for quantizing the orthogonal transform coefficient with a quantization index corresponding to the target code amount using the quantization matrix set by the quantization matrix setting means.
請求項1に記載の画像符号化装置。The quantization matrix setting means sets a half quantization matrix obtained by multiplying a coefficient of the default quantization matrix by 1/2 when the ratio is larger than the predetermined threshold and smaller than another threshold, If the ratio is greater than or equal to the other threshold, a quarter quantization matrix is set by multiplying the coefficient of the default quantization matrix by 1/4.
The image encoding device according to claim 1 .
前記直交変換係数を固定の量子化ステップで量子化することによって得られる符号の量である発生符号量をGOP単位で出力し、
出力された前記発生符号量に基づいて、前記画像を符号化する際の目標符号量をGOP単位で算出し、
前記目標符号量を前記発生符号量で除算した除算値である、前記発生符号量と前記目標符号量との比の大きさが所定の閾値以上でない場合、前記直交変換係数を量子化する際の量子化マトリクスを、デフォルトの量子化マトリクスに設定し、前記比の大きさが前記所定の閾値以上である場合、前記直交変換係数を量子化する際の量子化インデックスが大になるように、前記直交変換係数を量子化する際の量子化マトリクスを、前記デフォルトの量子化マトリクスより係数が小の量子化マトリクスに設定し、
設定された前記量子化マトリクスを用いて、前記目標符号量に対応した量子化インデックスで前記直交変換係数を量子化する
ステップを含む画像符号化方法。In an image encoding method for encoding the image by quantizing an orthogonal transform coefficient obtained by orthogonally transforming the image,
A generated code amount, which is a code amount obtained by quantizing the orthogonal transform coefficient in a fixed quantization step, is output in GOP units,
Based on the output generated code amount, a target code amount for encoding the image is calculated in GOP units,
When the value of the ratio between the generated code amount and the target code amount, which is a division value obtained by dividing the target code amount by the generated code amount, is not equal to or greater than a predetermined threshold, When the quantization matrix is set to a default quantization matrix and the magnitude of the ratio is equal to or greater than the predetermined threshold, the quantization index when quantizing the orthogonal transform coefficient is increased. The quantization matrix when quantizing the orthogonal transform coefficient is set to a quantization matrix having a smaller coefficient than the default quantization matrix,
An image coding method including a step of quantizing the orthogonal transform coefficient with a quantization index corresponding to the target code amount using the set quantization matrix.
前記直交変換係数を固定の量子化ステップで量子化することによって得られる符号の量である発生符号量をピクチャ単位で出力する発生符号量出力手段と、
前記発生符号量出力手段により出力された前記発生符号量に基づいて、前記画像を符号化する際の目標符号量をピクチャ単位で算出する目標符号量算出手段と、
前記目標符号量を前記発生符号量で除算した除算値である、前記発生符号量と前記目標符号量との比の大きさが所定の閾値以上でない場合、前記直交変換係数を量子化する際の量子化マトリクスを、デフォルトの量子化マトリクスに設定し、前記比の大きさが前記所定の閾値以上である場合、前記直交変換係数を量子化する際の量子化インデックスが大になるように、前記直交変換係数を量子化する際の量子化マトリクスを、前記デフォルトの量子化マトリクスより係数が小の量子化マトリクスに設定する量子化マトリクス設定手段と、
前記量子化マトリクス設定手段により設定された前記量子化マトリクスを用いて、前記目標符号量に対応した量子化インデックスで前記直交変換係数を量子化する量子化手段と
を備える画像符号化装置。In an image encoding device that encodes the image by quantizing orthogonal transform coefficients obtained by orthogonal transform of the image,
Generated code amount output means for outputting a generated code amount, which is a code amount obtained by quantizing the orthogonal transform coefficient in a fixed quantization step, in units of pictures;
Based on the generated code amount output by the generated code amount output means, target code amount calculating means for calculating a target code amount for encoding the image in units of pictures;
When the value of the ratio between the generated code amount and the target code amount, which is a division value obtained by dividing the target code amount by the generated code amount, is not equal to or greater than a predetermined threshold, When the quantization matrix is set to a default quantization matrix and the magnitude of the ratio is equal to or greater than the predetermined threshold, the quantization index when quantizing the orthogonal transform coefficient is increased. A quantization matrix setting means for setting a quantization matrix when quantizing the orthogonal transform coefficient to a quantization matrix having a smaller coefficient than the default quantization matrix;
An image coding apparatus comprising: quantization means for quantizing the orthogonal transform coefficient with a quantization index corresponding to the target code amount using the quantization matrix set by the quantization matrix setting means.
前記直交変換係数を固定の量子化ステップで量子化することによって得られる符号の量である発生符号量をピクチャ単位で出力し、
出力された前記発生符号量に基づいて、前記画像を符号化する際の目標符号量をピクチャ単位で算出し、
前記目標符号量を前記発生符号量で除算した除算値である、前記発生符号量と前記目標符号量との比の大きさが所定の閾値以上でない場合、前記直交変換係数を量子化する際の量子化マトリクスを、デフォルトの量子化マトリクスに設定し、前記比の大きさが前記所定の閾値以上である場合、前記直交変換係数を量子化する際の量子化インデックスが大になるように、前記直交変換係数を量子化する際の量子化マトリクスを、前記デフォルトの量子化マトリクスより係数が小の量子化マトリクスに設定し、
設定された前記量子化マトリクスを用いて、前記目標符号量に対応した量子化インデックスで前記直交変換係数を量子化する
ステップを含む画像符号化方法。In an image encoding method for encoding the image by quantizing an orthogonal transform coefficient obtained by orthogonally transforming the image,
A generated code amount, which is a code amount obtained by quantizing the orthogonal transform coefficient in a fixed quantization step, is output in units of pictures,
Based on the generated generated code amount, a target code amount for encoding the image is calculated in units of pictures,
When the value of the ratio between the generated code amount and the target code amount, which is a division value obtained by dividing the target code amount by the generated code amount, is not equal to or greater than a predetermined threshold, When the quantization matrix is set to a default quantization matrix and the magnitude of the ratio is equal to or greater than the predetermined threshold, the quantization index when quantizing the orthogonal transform coefficient is increased. The quantization matrix when quantizing the orthogonal transform coefficient is set to a quantization matrix having a smaller coefficient than the default quantization matrix,
An image coding method including a step of quantizing the orthogonal transform coefficient with a quantization index corresponding to the target code amount using the set quantization matrix.
前記直交変換係数を固定の量子化ステップで量子化することにより得られるGOP単位の符号の量である発生符号量から算出されるGOP単位の目標符号量を、前記発生符号量で除算した除算値である、前記発生符号量と前記目標符号量との比の大きさが所定の閾値以上でない場合、前記直交変換係数を量子化する際の量子化マトリクスを、デフォルトの量子化マトリクスに設定し、前記比の大きさが前記所定の閾値以上である場合、前記直交変換係数を量子化する際の量子化インデックスが大になるように、前記直交変換係数を量子化する際の量子化マトリクスを、前記デフォルトの量子化マトリクスより係数が小の量子化マトリクスに設定する量子化マトリクス設定手段と、
前記量子化マトリクス設定手段により設定された前記量子化マトリクスを用いて、前記目標符号量に対応した量子化インデックスで前記直交変換係数を量子化する量子化手段と
を備える画像符号化装置。In an image encoding device that encodes the image by quantizing orthogonal transform coefficients obtained by orthogonal transform of the image,
A division value obtained by dividing the target code amount in GOP calculated from the generated code amount that is the amount of code in GOP units obtained by quantizing the orthogonal transform coefficient in a fixed quantization step by the generated code amount. When the magnitude of the ratio between the generated code amount and the target code amount is not equal to or greater than a predetermined threshold, a quantization matrix used when quantizing the orthogonal transform coefficient is set as a default quantization matrix, When the magnitude of the ratio is equal to or greater than the predetermined threshold, a quantization matrix for quantizing the orthogonal transform coefficient is set so that a quantization index for quantizing the orthogonal transform coefficient becomes large. A quantization matrix setting means for setting a quantization matrix having a smaller coefficient than the default quantization matrix;
An image coding apparatus comprising: quantization means for quantizing the orthogonal transform coefficient with a quantization index corresponding to the target code amount using the quantization matrix set by the quantization matrix setting means.
前記直交変換係数を固定の量子化ステップで量子化することにより得られるGOP単位の符号の量である発生符号量から算出されるGOP単位の目標符号量を、前記発生符号量で除算した除算値である、前記発生符号量と前記目標符号量との比の大きさが所定の閾値以上でない場合、前記直交変換係数を量子化する際の量子化マトリクスを、デフォルトの量子化マトリクスに設定し、前記比の大きさが前記所定の閾値以上である場合、前記直交変換係数を量子化する際の量子化インデックスが大になるように、前記直交変換係数を量子化する際の量子化マトリクスを、前記デフォルトの量子化マトリクスより係数が小の量子化マトリクスに設定し、
設定された前記量子化マトリクスを用いて、前記目標符号量に対応した量子化インデックスで前記直交変換係数を量子化する
ステップを含む画像符号化方法。In an image encoding method for encoding the image by quantizing an orthogonal transform coefficient obtained by orthogonally transforming the image,
A division value obtained by dividing the target code amount in GOP calculated from the generated code amount that is the amount of code in GOP units obtained by quantizing the orthogonal transform coefficient in a fixed quantization step by the generated code amount. When the magnitude of the ratio between the generated code amount and the target code amount is not equal to or greater than a predetermined threshold, a quantization matrix used when quantizing the orthogonal transform coefficient is set as a default quantization matrix, When the magnitude of the ratio is equal to or greater than the predetermined threshold, a quantization matrix for quantizing the orthogonal transform coefficient is set so that a quantization index for quantizing the orthogonal transform coefficient becomes large. Set to a quantization matrix with a smaller coefficient than the default quantization matrix,
An image coding method including a step of quantizing the orthogonal transform coefficient with a quantization index corresponding to the target code amount using the set quantization matrix.
前記直交変換係数を固定の量子化ステップで量子化することにより得られるピクチャ単位の符号の量である発生符号量から算出されるピクチャ単位の目標符号量を、前記発生符号量で除算した除算値である、前記発生符号量と前記目標符号量との比の大きさが所定の閾値以上でない場合、前記直交変換係数を量子化する際の量子化マトリクスを、デフォルトの量子化マトリクスに設定し、前記比の大きさが前記所定の閾値以上である場合、前記直交変換係数を量子化する際の量子化インデックスが大になるように、前記直交変換係数を量子化する際の量子化マトリクスを、前記デフォルトの量子化マトリクスより係数が小の量子化マトリクスに設定する量子化マトリクス設定手段と、
前記量子化マトリクス設定手段により設定された前記量子化マトリクスを用いて、前記目標符号量に対応した量子化インデックスで前記直交変換係数を量子化する量子化手段と
を備える画像符号化装置。In an image encoding device that encodes the image by quantizing orthogonal transform coefficients obtained by orthogonal transform of the image,
A division value obtained by dividing a target code amount in units of pictures calculated from a generated code amount that is the amount of codes in units of pictures obtained by quantizing the orthogonal transform coefficient in a fixed quantization step by the generated code amount When the magnitude of the ratio between the generated code amount and the target code amount is not equal to or greater than a predetermined threshold, a quantization matrix used when quantizing the orthogonal transform coefficient is set as a default quantization matrix, When the magnitude of the ratio is equal to or greater than the predetermined threshold, a quantization matrix for quantizing the orthogonal transform coefficient is set so that a quantization index for quantizing the orthogonal transform coefficient becomes large. Quantization matrix setting means for setting a quantization matrix having a smaller coefficient than the default quantization matrix;
An image coding apparatus comprising: quantization means for quantizing the orthogonal transform coefficient with a quantization index corresponding to the target code amount using the quantization matrix set by the quantization matrix setting means.
前記直交変換係数を固定の量子化ステップで量子化することにより得られるピクチャ単位の符号の量である発生符号量から算出されるピクチャ単位の目標符号量を、前記発生符号量で除算した除算値である、前記発生符号量と前記目標符号量との比の大きさが所定の閾値以上でない場合、前記直交変換係数を量子化する際の量子化マトリクスを、デフォルトの量子化マトリクスに設定し、前記比の大きさが前記所定の閾値以上である場合、前記直交変換係数を量子化する際の量子化インデックスが大になるように、前記直交変換係数を量子化する際の量子化マトリクスを、前記デフォルトの量子化マトリクスより係数が小の量子化マトリクスに設定し、
設定された前記量子化マトリクスを用いて、前記目標符号量に対応した量子化インデックスで前記直交変換係数を量子化する
ステップを含む画像符号化方法。In an image encoding method for encoding the image by quantizing an orthogonal transform coefficient obtained by orthogonally transforming the image,
A division value obtained by dividing a target code amount in units of pictures calculated from a generated code amount that is the amount of codes in units of pictures obtained by quantizing the orthogonal transform coefficient in a fixed quantization step by the generated code amount When the magnitude of the ratio between the generated code amount and the target code amount is not equal to or greater than a predetermined threshold, a quantization matrix for quantizing the orthogonal transform coefficient is set as a default quantization matrix, When the magnitude of the ratio is equal to or greater than the predetermined threshold, a quantization matrix for quantizing the orthogonal transform coefficient is set so that a quantization index for quantizing the orthogonal transform coefficient becomes large. Set to a quantization matrix with a smaller coefficient than the default quantization matrix,
An image coding method including a step of quantizing the orthogonal transform coefficient with a quantization index corresponding to the target code amount using the set quantization matrix.
前記直交変換係数を固定の量子化ステップで量子化することによって得られる符号の量である発生符号量をGOP単位で出力する発生符号量出力手段と、
前記発生符号量出力手段により出力された前記発生符号量に基づいて、前記画像を符号化する際の目標符号量をGOP単位で算出する目標符号量算出手段と、
前記目標符号量を前記発生符号量で除算した除算値である、前記発生符号量と前記目標符号量との比の大きさが所定の閾値以上でない場合、前記直交変換係数を量子化する際の量子化マトリクスを、デフォルトの量子化マトリクスに設定し、前記比の大きさが前記所定の閾値以上である場合、前記直交変換係数を量子化する際の量子化インデックスが大になるように、前記直交変換係数を量子化する際の量子化マトリクスを、前記デフォルトの量子化マトリクスより係数が小の量子化マトリクスに設定する量子化マトリクス設定手段と、
前記量子化マトリクス設定手段により設定された前記量子化マトリクスを用いて、前記目標符号量に対応した量子化インデックスで前記直交変換係数を量子化する量子化手段と、
前記量子化手段により量子化された量子化値を符号化して前記記録媒体に記録する記録手段と
を備える記録装置。In a recording apparatus for recording the image encoded by quantizing the orthogonal transform coefficient obtained by orthogonal transform of the image on a recording medium,
Generated code amount output means for outputting a generated code amount, which is the amount of code obtained by quantizing the orthogonal transform coefficient in a fixed quantization step, in GOP units;
Based on the generated code amount output by the generated code amount output means, target code amount calculating means for calculating a target code amount for encoding the image in GOP units;
When the value of the ratio between the generated code amount and the target code amount, which is a division value obtained by dividing the target code amount by the generated code amount, is not equal to or greater than a predetermined threshold, When the quantization matrix is set to a default quantization matrix and the magnitude of the ratio is equal to or greater than the predetermined threshold, the quantization index when quantizing the orthogonal transform coefficient is increased. A quantization matrix setting means for setting a quantization matrix when quantizing the orthogonal transform coefficient to a quantization matrix having a smaller coefficient than the default quantization matrix;
Quantizing means for quantizing the orthogonal transform coefficient with a quantization index corresponding to the target code amount using the quantization matrix set by the quantization matrix setting means;
A recording apparatus comprising: a recording unit that encodes the quantization value quantized by the quantization unit and records the encoded value on the recording medium.
前記直交変換係数を固定の量子化ステップで量子化することによって得られる符号の量である発生符号量をGOP単位で出力し、
出力された前記発生符号量に基づいて、前記画像を符号化する際の目標符号量をGOP単位で算出し、
前記目標符号量を前記発生符号量で除算した除算値である、前記発生符号量と前記目標符号量との比の大きさが所定の閾値以上でない場合、前記直交変換係数を量子化する際の量子化マトリクスを、デフォルトの量子化マトリクスに設定し、前記比の大きさが前記所定の閾値以上である場合、前記直交変換係数を量子化する際の量子化インデックスが大になるように、前記直交変換係数を量子化する際の量子化マトリクスを、前記デフォルトの量子化マトリクスより係数が小の量子化マトリクスに設定し、
設定された前記量子化マトリクスを用いて、前記目標符号量に対応した量子化インデックスで前記直交変換係数を量子化し、
量子化された量子化値を符号化して前記記録媒体に記録する
ステップを含む記録方法。In a recording method for recording the image encoded by quantizing an orthogonal transformation coefficient obtained by orthogonal transformation of an image on a recording medium,
A generated code amount, which is a code amount obtained by quantizing the orthogonal transform coefficient in a fixed quantization step, is output in GOP units,
Based on the output generated code amount, a target code amount for encoding the image is calculated in GOP units,
When the value of the ratio between the generated code amount and the target code amount, which is a division value obtained by dividing the target code amount by the generated code amount, is not equal to or greater than a predetermined threshold, When the quantization matrix is set to a default quantization matrix and the magnitude of the ratio is equal to or greater than the predetermined threshold, the quantization index when quantizing the orthogonal transform coefficient is increased. The quantization matrix when quantizing the orthogonal transform coefficient is set to a quantization matrix having a smaller coefficient than the default quantization matrix,
Using the set quantization matrix, the orthogonal transform coefficient is quantized with a quantization index corresponding to the target code amount,
A recording method comprising: encoding a quantized quantized value and recording the encoded value on the recording medium.
前記直交変換係数を固定の量子化ステップで量子化することによって得られる符号の量である発生符号量をピクチャ単位で出力する発生符号量出力手段と、
前記発生符号量出力手段により出力された前記発生符号量に基づいて、前記画像を符号化する際の目標符号量をピクチャ単位で算出する目標符号量算出手段と、
前記目標符号量を前記発生符号量で除算した除算値である、前記発生符号量と前記目標符号量との比の大きさが所定の閾値以上でない場合、前記直交変換係数を量子化する際の量子化マトリクスを、デフォルトの量子化マトリクスに設定し、前記比の大きさが前記所定の閾値以上である場合、前記直交変換係数を量子化する際の量子化インデックスが大になるように、前記直交変換係数を量子化する際の量子化マトリクスを、前記デフォルトの量子化マトリクスより係数が小の量子化マトリクスに設定する量子化マトリクス設定手段と、
前記量子化マトリクス設定手段により設定された前記量子化マトリクスを用いて、前記目標符号量に対応した量子化インデックスで前記直交変換係数を量子化する量子化手段と、
前記量子化手段により量子化された量子化値を符号化して前記記録媒体に記録する記録手段と
を備える記録装置。In a recording apparatus for recording the image encoded by quantizing the orthogonal transform coefficient obtained by orthogonal transform of the image on a recording medium,
Generated code amount output means for outputting a generated code amount, which is a code amount obtained by quantizing the orthogonal transform coefficient in a fixed quantization step, in units of pictures;
Based on the generated code amount output by the generated code amount output means, target code amount calculating means for calculating a target code amount for encoding the image in units of pictures;
When the value of the ratio between the generated code amount and the target code amount, which is a division value obtained by dividing the target code amount by the generated code amount, is not equal to or greater than a predetermined threshold, When the quantization matrix is set to a default quantization matrix and the magnitude of the ratio is equal to or greater than the predetermined threshold, the quantization index when quantizing the orthogonal transform coefficient is increased. A quantization matrix setting means for setting a quantization matrix when quantizing the orthogonal transform coefficient to a quantization matrix having a smaller coefficient than the default quantization matrix;
Quantizing means for quantizing the orthogonal transform coefficient with a quantization index corresponding to the target code amount using the quantization matrix set by the quantization matrix setting means;
A recording apparatus comprising: a recording unit that encodes the quantization value quantized by the quantization unit and records the encoded value on the recording medium.
前記直交変換係数を固定の量子化ステップで量子化することによって得られる符号の量である発生符号量をピクチャ単位で出力し、
出力された前記発生符号量に基づいて、前記画像を符号化する際の目標符号量をピクチャ単位で算出し、
前記目標符号量を前記発生符号量で除算した除算値である、前記発生符号量と前記目標符号量との比の大きさが所定の閾値以上でない場合、前記直交変換係数を量子化する際の量子化マトリクスを、デフォルトの量子化マトリクスに設定し、前記比の大きさが前記所定の閾値以上である場合、前記直交変換係数を量子化する際の量子化インデックスが大になるように、前記直交変換係数を量子化する際の量子化マトリクスを、前記デフォルトの量子化マトリクスより係数が小の量子化マトリクスに設定し、
設定された前記量子化マトリクスを用いて、前記目標符号量に対応した量子化インデックスで前記直交変換係数を量子化し、
量子化された量子化値を符号化して前記記録媒体に記録する
ステップを含む記録方法。In a recording method for recording the image encoded by quantizing an orthogonal transformation coefficient obtained by orthogonal transformation of an image on a recording medium,
A generated code amount, which is a code amount obtained by quantizing the orthogonal transform coefficient in a fixed quantization step, is output in units of pictures,
Based on the generated generated code amount, a target code amount for encoding the image is calculated in units of pictures,
When the value of the ratio between the generated code amount and the target code amount, which is a division value obtained by dividing the target code amount by the generated code amount, is not equal to or greater than a predetermined threshold, When the quantization matrix is set to a default quantization matrix and the magnitude of the ratio is equal to or greater than the predetermined threshold, the quantization index when quantizing the orthogonal transform coefficient is increased. The quantization matrix when quantizing the orthogonal transform coefficient is set to a quantization matrix having a smaller coefficient than the default quantization matrix,
Using the set quantization matrix, the orthogonal transform coefficient is quantized with a quantization index corresponding to the target code amount,
A recording method comprising: encoding a quantized quantized value and recording the encoded value on the recording medium.
前記直交変換係数を固定の量子化ステップで量子化することにより得られるGOP単位の符号の量である発生符号量から算出されるGOP単位の目標符号量を、前記発生符号量で除算した除算値である、前記発生符号量と前記目標符号量との比の大きさが所定の閾値以上でない場合、前記直交変換係数を量子化する際の量子化マトリクスを、デフォルトの量子化マトリクスに設定し、前記比の大きさが前記所定の閾値以上である場合、前記直交変換係数を量子化する際の量子化インデックスが大になるように、前記直交変換係数を量子化する際の量子化マトリクスを、前記デフォルトの量子化マトリクスより係数が小の量子化マトリクスに設定する量子化マトリクス設定手段と、
前記量子化マトリクス設定手段により設定された前記量子化マトリクスを用いて、前記目標符号量に対応した量子化インデックスで前記直交変換係数を量子化する量子化手段と、
前記量子化手段により量子化された量子化値を符号化して前記記録媒体に記録する記録手段と
を備える記録装置。In a recording apparatus for recording the image encoded by quantizing the orthogonal transform coefficient obtained by orthogonal transform of the image on a recording medium,
A division value obtained by dividing the target code amount in GOP calculated from the generated code amount that is the amount of code in GOP units obtained by quantizing the orthogonal transform coefficient in a fixed quantization step by the generated code amount. When the magnitude of the ratio between the generated code amount and the target code amount is not equal to or greater than a predetermined threshold, a quantization matrix used when quantizing the orthogonal transform coefficient is set as a default quantization matrix, When the magnitude of the ratio is equal to or greater than the predetermined threshold, a quantization matrix for quantizing the orthogonal transform coefficient is set so that a quantization index for quantizing the orthogonal transform coefficient becomes large. A quantization matrix setting means for setting a quantization matrix having a smaller coefficient than the default quantization matrix;
Quantizing means for quantizing the orthogonal transform coefficient with a quantization index corresponding to the target code amount using the quantization matrix set by the quantization matrix setting means;
A recording apparatus comprising: a recording unit that encodes the quantization value quantized by the quantization unit and records the encoded value on the recording medium.
前記直交変換係数を固定の量子化ステップで量子化することにより得られるGOP単位の符号の量である発生符号量から算出されるGOP単位の目標符号量を、前記発生符号量で除算した除算値である、前記発生符号量と前記目標符号量との比の大きさが所定の閾値以上でない場合、前記直交変換係数を量子化する際の量子化マトリクスを、デフォルトの量子化マトリクスに設定し、前記比の大きさが前記所定の閾値以上である場合、前記直交変換係数を量子化する際の量子化インデックスが大になるように、前記直交変換係数を量子化する際の量子化マトリクスを、前記デフォルトの量子化マトリクスより係数が小の量子化マトリクスに設定し、
設定された前記量子化マトリクスを用いて、前記目標符号量に対応した量子化インデックスで前記直交変換係数を量子化し、
量子化された量子化値を符号化して前記記録媒体に記録する
ステップを含む記録方法。In a recording method for recording the image encoded by quantizing an orthogonal transformation coefficient obtained by orthogonal transformation of an image on a recording medium,
A division value obtained by dividing the target code amount in GOP calculated from the generated code amount that is the amount of code in GOP units obtained by quantizing the orthogonal transform coefficient in a fixed quantization step by the generated code amount. When the magnitude of the ratio between the generated code amount and the target code amount is not equal to or greater than a predetermined threshold, a quantization matrix used when quantizing the orthogonal transform coefficient is set as a default quantization matrix, When the magnitude of the ratio is equal to or greater than the predetermined threshold, a quantization matrix for quantizing the orthogonal transform coefficient is set so that a quantization index for quantizing the orthogonal transform coefficient becomes large. Set to a quantization matrix with a smaller coefficient than the default quantization matrix,
Using the set quantization matrix, the orthogonal transform coefficient is quantized with a quantization index corresponding to the target code amount,
A recording method comprising: encoding a quantized quantized value and recording the encoded value on the recording medium.
前記直交変換係数を固定の量子化ステップで量子化することにより得られるピクチャ単位の符号の量である発生符号量から算出されるピクチャ単位の目標符号量を、前記発生符号量で除算した除算値である、前記発生符号量と前記目標符号量との比の大きさが所定の閾値以上でない場合、前記直交変換係数を量子化する際の量子化マトリクスを、デフォルトの量子化マトリクスに設定し、前記比の大きさが前記所定の閾値以上である場合、前記直交変換係数を量子化する際の量子化インデックスが大になるように、前記直交変換係数を量子化する際の量子化マトリクスを、前記デフォルトの量子化マトリクスより係数が小の量子化マトリクスに設定する量子化マトリクス設定手段と、
前記量子化マトリクス設定手段により設定された前記量子化マトリクスを用いて、前記目標符号量に対応した量子化インデックスで前記直交変換係数を量子化する量子化手段と、
前記量子化手段により量子化された量子化値を符号化して前記記録媒体に記録する記録手段と
を備える記録装置。In a recording apparatus for recording the image encoded by quantizing the orthogonal transform coefficient obtained by orthogonal transform of the image on a recording medium,
A division value obtained by dividing a target code amount in units of pictures calculated from a generated code amount that is the amount of codes in units of pictures obtained by quantizing the orthogonal transform coefficient in a fixed quantization step by the generated code amount When the magnitude of the ratio between the generated code amount and the target code amount is not equal to or greater than a predetermined threshold, a quantization matrix used when quantizing the orthogonal transform coefficient is set as a default quantization matrix, When the magnitude of the ratio is equal to or greater than the predetermined threshold, a quantization matrix for quantizing the orthogonal transform coefficient is set so that a quantization index for quantizing the orthogonal transform coefficient becomes large. Quantization matrix setting means for setting a quantization matrix having a smaller coefficient than the default quantization matrix;
Quantizing means for quantizing the orthogonal transform coefficient with a quantization index corresponding to the target code amount using the quantization matrix set by the quantization matrix setting means;
A recording apparatus comprising: a recording unit that encodes the quantization value quantized by the quantization unit and records the encoded value on the recording medium.
前記直交変換係数を固定の量子化ステップで量子化することにより得られるピクチャ単位の符号の量である発生符号量から算出されるピクチャ単位の目標符号量を、前記発生符号量で除算した除算値である、前記発生符号量と前記目標符号量との比の大きさが所定の閾値以上でない場合、前記直交変換係数を量子化する際の量子化マトリクスを、デフォルトの量子化マトリクスに設定し、前記比の大きさが前記所定の閾値以上である場合、前記直交変換係数を量子化する際の量子化インデックスが大になるように、前記直交変換係数を量子化する際の量子化マトリクスを、前記デフォルトの量子化マトリクスより係数が小の量子化マトリクスに設定し、
設定された前記量子化マトリクスを用いて、前記目標符号量に対応した量子化インデックスで前記直交変換係数を量子化し、
量子化された量子化値を符号化して前記記録媒体に記録する
ステップを含む記録方法。In a recording method for recording the image encoded by quantizing an orthogonal transformation coefficient obtained by orthogonal transformation of an image on a recording medium,
A division value obtained by dividing a target code amount in units of pictures calculated from a generated code amount that is the amount of codes in units of pictures obtained by quantizing the orthogonal transform coefficient in a fixed quantization step by the generated code amount When the magnitude of the ratio between the generated code amount and the target code amount is not equal to or greater than a predetermined threshold, a quantization matrix for quantizing the orthogonal transform coefficient is set as a default quantization matrix, When the magnitude of the ratio is equal to or greater than the predetermined threshold, a quantization matrix for quantizing the orthogonal transform coefficient is set so that a quantization index for quantizing the orthogonal transform coefficient becomes large. Set to a quantization matrix with a smaller coefficient than the default quantization matrix,
Using the set quantization matrix, the orthogonal transform coefficient is quantized with a quantization index corresponding to the target code amount,
A recording method comprising: encoding a quantized quantized value and recording the encoded value on the recording medium.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP03878397A JP4081727B2 (en) | 1997-02-24 | 1997-02-24 | Image encoding apparatus, image encoding method, recording apparatus, and recording method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP03878397A JP4081727B2 (en) | 1997-02-24 | 1997-02-24 | Image encoding apparatus, image encoding method, recording apparatus, and recording method |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH10243397A JPH10243397A (en) | 1998-09-11 |
JP4081727B2 true JP4081727B2 (en) | 2008-04-30 |
Family
ID=12534903
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP03878397A Expired - Fee Related JP4081727B2 (en) | 1997-02-24 | 1997-02-24 | Image encoding apparatus, image encoding method, recording apparatus, and recording method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4081727B2 (en) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4769392B2 (en) * | 2001-09-25 | 2011-09-07 | キヤノン株式会社 | Signal processing device |
KR100584552B1 (en) | 2003-01-14 | 2006-05-30 | 삼성전자주식회사 | Method for encoding and decoding video and apparatus thereof |
CN101107862B (en) * | 2005-03-14 | 2010-05-26 | 松下电器产业株式会社 | Encoding device and dynamic image recording system having the encoding device |
JP4986147B2 (en) * | 2007-07-23 | 2012-07-25 | 富士ゼロックス株式会社 | Information processing apparatus and program |
JP2010288166A (en) * | 2009-06-15 | 2010-12-24 | Panasonic Corp | Moving picture encoder, broadcast wave recorder, and program |
JP2011029956A (en) * | 2009-07-27 | 2011-02-10 | Sony Corp | Image encoding device and image encoding method |
JP5251774B2 (en) * | 2009-07-27 | 2013-07-31 | ソニー株式会社 | Image coding apparatus and image coding method |
WO2011024222A1 (en) * | 2009-08-27 | 2011-03-03 | 株式会社 東芝 | Device, method, and program for coding image |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3496886B2 (en) * | 1992-09-10 | 2004-02-16 | ソニー株式会社 | Image encoding device, image encoding method, image decoding device, and image decoding method |
JPH0818967A (en) * | 1994-06-27 | 1996-01-19 | Matsushita Electric Ind Co Ltd | Image data compression device |
JP3707118B2 (en) * | 1995-04-28 | 2005-10-19 | ソニー株式会社 | Image coding method and apparatus |
-
1997
- 1997-02-24 JP JP03878397A patent/JP4081727B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JPH10243397A (en) | 1998-09-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6192081B1 (en) | Apparatus and method for selecting a coding mode in a block-based coding system | |
JP4361613B2 (en) | Variable bit rate video encoding method and corresponding video encoding apparatus | |
KR100756596B1 (en) | Video data encoder and video data encoding method | |
US7301999B2 (en) | Quantization method and system for video MPEG applications and computer program product therefor | |
US7881373B2 (en) | Video data compression apparatus and method of same | |
US6037987A (en) | Apparatus and method for selecting a rate and distortion based coding mode for a coding system | |
JP2963416B2 (en) | Video encoding method and apparatus for controlling bit generation amount using quantization activity | |
US7154949B2 (en) | Picture coding device and method, picture transmitting device and method and recording medium | |
US20060269156A1 (en) | Image processing apparatus and method, recording medium, and program | |
US20090097546A1 (en) | System and method for enhanced video communication using real-time scene-change detection for control of moving-picture encoding data rate | |
US20050157785A1 (en) | Video signal quantizing apparatus and method thereof | |
JP2002209215A (en) | Code quantity control device and method, and image information conversion device and method | |
JP4081727B2 (en) | Image encoding apparatus, image encoding method, recording apparatus, and recording method | |
EP0857393B1 (en) | Apparatus and method for selecting a coding mode in a block-based coding system | |
EP0520789B1 (en) | Video coder and coding method | |
JPH11275577A (en) | Video signal coding method and system | |
JP3858520B2 (en) | Video encoding apparatus and method | |
JP2001148852A (en) | Image information converter and image information conversion method | |
JP3934772B2 (en) | Variable transfer rate encoding method and apparatus | |
JPH10224786A (en) | Image coder, image coding method, image transmitter, image transmission method and recording medium | |
JP3765129B2 (en) | Encoding apparatus and encoding method | |
JP3922581B2 (en) | Variable transfer rate encoding method and apparatus | |
JP3765130B2 (en) | Encoding apparatus and encoding method | |
JPH11196423A (en) | Device and method for picture processing and presentation medium | |
JP4619463B2 (en) | Image coding apparatus and method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20051013 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20051209 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20061011 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20061113 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070919 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20071011 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20071204 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20071220 |
|
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: 20080118 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20080131 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110222 Year of fee payment: 3 |
|
LAPS | Cancellation because of no payment of annual fees |