説明

符号化装置及び方法、復号装置及び方法、並びにプログラム

【課題】良好な品質の復号結果を得る。
【解決手段】ブロック化部61は、画像を複数のブロックにブロック化し、線形予測器64及び67は、注目画素の画素値以上の値と画素値以下の値の2つの基準値を取得し、基準値差分器68は、2つの基準値どうしの差である基準値差分を算出し、画素値差分器70は、注目画素の画素値と、注目画素の画素値以下の基準値との差分である画素値差分を算出し、量子化器71は、画素値差分を、基準値差分に基づいて量子化し、ブロック代表値算出部62及び65は、基準値を求めるための所定の演算に用いる代表値であって、代表値を用いた所定の演算により求められる基準値と注目画素の画素値との差分を最小化する代表値をブロック毎に求め、出力部72は、量子化器71による量子化結果、及び代表値を、画像の符号化結果として出力する。本発明は、例えば符号化装置に適用できる。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、符号化装置及び方法、復号装置及び方法、並びにプログラムに関し、特に、例えば、量子化誤差を小にすることにより、人間にとって良好な品質の復号結果を得るようにした符号化装置及び方法、復号装置及び方法、並びにプログラムに関する。
【背景技術】
【0002】
例えば、画像の圧縮方法については、種々の方法が提案されているが、そのうちの1つに、ADRC(Adaptive Dynamic Range Coding)がある(例えば、特許文献1を参照)。
【0003】
図1を参照して、従来のADRCについて説明する。
【0004】
図1は、横軸を位置(x,y)とするとともに、縦軸を画素値として、あるブロックを構成する画素を示している。
【0005】
従来のADRCにおいては、画像が複数のブロックにブロック化され、ブロック内の画素の画素値の最大値MAXと最小値MINとが検出される。そして、最大値MAXと最小値MINとの差DR=MAX-MINを、ブロックの局所的なダイナミックレンジとし、このダイナミックレンジDRに基づいて、ブロック内の画素の画素値がnビットに再量子化される(但し、nは、元の画素値のビット数よりも小さい値)。
【0006】
即ち、ADRCでは、ブロックの各画素値px,yから、最小値MINが減算され、その減算値(px,y-MIN)が、ダイナミックレンジDRに基づく量子化間隔(ある量子化値から次の量子化値までの間隔)Δ=DR/2nで除算される。そして、その除算の結果得られる除算値(px,y-MIN)/Δ(但し、小数点以下切捨て)が、画素値px,yのADRC結果としてのコード(ADRCコード)とされる。
【0007】
【特許文献1】特開昭61−144989号公報
【発明の開示】
【発明が解決しようとする課題】
【0008】
従来のADRCでは、ブロック内の画素値すべてが、図1に示されるように、共通のダイナミックレンジDRに基づいて量子化されるため、即ち、同一の量子化間隔Δ=DR/2nで量子化されるため、最大値MAXと最小値MINとの差が大であるブロックほど、ADRCによる量子化誤差が大となる。
【0009】
本発明は、このような状況に鑑みてなされたものであり、量子化誤差を小にすることにより、人間にとって良好な品質の復号結果を得ることができるようにするものである。
【課題を解決するための手段】
【0010】
本発明の第1の側面の符号化装置、又はプログラムは、画像を符号化する符号化装置、画像を符号化する符号化装置として、コンピュータを機能させるプログラムであり、前記画像を複数のブロックにブロック化するブロック化手段と、前記ブロックの各画素を注目画素として、前記注目画素の画素値以上の値と、前記注目画素の画素値以下の値の2つの基準値を取得する基準値取得手段と、2つの前記基準値どうしの差である基準値差分を算出する基準値差分算出手段と、前記注目画素の画素値と、前記基準値との差分である画素値差分を算出する画素値差分算出手段と、前記画素値差分を、前記基準値差分に基づいて量子化する量子化手段と、前記基準値を求めるための所定の演算に用いる演算パラメータであって、前記演算パラメータを用いた前記所定の演算により求められる前記基準値と前記注目画素の画素値との差分を最小化する前記演算パラメータを求める演算パラメータ算出手段と、前記量子化手段による量子化結果、及び前記演算パラメータを、前記画像の符号化結果として出力する出力手段とを備える符号化装置、又は符号化装置として、コンピュータを機能させるプログラムである。
【0011】
前記所定の演算が、固定の係数と、前記ブロックを代表する代表値とを用いた線形演算であるとき、前記演算パラメータ算出手段では、前記代表値を、前記演算パラメータとして求めることができる。
【0012】
2つの前記基準値のうちの、前記注目画素の画素値以下の基準値を第1の基準値とするとともに、前記注目画素の画素値以上の基準値を第2の基準値とするとき、前記演算パラメータ算出手段では、前記第1の基準値を求めるのに用いられる第1の代表値と、前記第2の基準値を求めるのに用いられる第2の代表値とを、前記ブロック毎に求め、前記基準値取得手段では、前記固定の係数と前記第1の代表値とを用いて、前記第1の基準値を求めるとともに、前記固定の係数と前記第2の代表値とを用いて、前記第2の基準値を求めることにより、前記第1及び第2の基準値を取得することができる。
【0013】
前記所定の演算が、所定の係数と、前記ブロックを代表する代表値としての、前記ブロックの画素値の最大値又は最小値とを用いた線形演算であるとき、前記演算パラメータ算出手段では、前記所定の係数を、前記演算パラメータとして求めることができる。
【0014】
2つの前記基準値のうちの、前記注目画素の画素値以下の基準値を第1の基準値とするとともに、前記注目画素の画素値以上の基準値を第2の基準値とし、かつ、前記ブロックの画素値の最小値を第1の代表値とするとともに、前記ブロックの画素値の最大値を第2の代表値とするとき、前記演算パラメータ算出手段では、前記第1の基準値を求めるのに前記第1の代表値とともに用いられる第1の係数と、前記第2の基準値を求めるのに前記第2の代表値とともに用いられる第2の係数とを求め、前記基準値取得手段では、前記第1の係数と前記第1の代表値とを用いて、前記第1の基準値を求めるとともに、前記第2の係数と前記第2の代表値とを用いて、前記第2の基準値を求めることにより、前記第1及び第2の基準値を取得することができる。
【0015】
本発明の第1の側面の符号化方法は、画像を符号化する符号化装置の符号化方法であり、前記画像を複数のブロックにブロック化し、前記ブロックの各画素を注目画素として、前記注目画素の画素値以上の値と、前記注目画素の画素値以下の値の2つの基準値を取得し、2つの前記基準値どうしの差である基準値差分を算出し、前記注目画素の画素値と、前記基準値との差分である画素値差分を算出し、前記画素値差分を、前記基準値差分に基づいて量子化し、前記基準値を求めるための所定の演算に用いる演算パラメータであって、前記演算パラメータを用いた前記所定の演算により求められる前記基準値と前記注目画素の画素値との差分を最小化する前記演算パラメータを求め、前記画素値差分の量子化結果、及び前記演算パラメータを、前記画像の符号化結果として出力するステップを含む。
【0016】
本発明の第1の側面においては、前記画像が複数のブロックにブロック化され、前記ブロックの各画素を注目画素として、前記注目画素の画素値以上の値と、前記注目画素の画素値以下の値の2つの基準値が取得され、2つの前記基準値どうしの差である基準値差分が算出され、前記注目画素の画素値と、前記基準値との差分である画素値差分が算出され、前記画素値差分が、前記基準値差分に基づいて量子化され、前記基準値を求めるための所定の演算に用いる演算パラメータであって、前記演算パラメータを用いた前記所定の演算により求められる前記基準値と前記注目画素の画素値との差分を最小化する前記演算パラメータが求められ、前記画素値差分の量子化結果、及び前記演算パラメータが、前記画像の符号化結果として出力される。
【0017】
本発明の第2の側面の復号装置、又はプログラムは、画像を符号化した符号化データを復号する復号装置、又は画像を符号化した符号化データを復号する復号装置として、コンピュータを機能させるプログラムであり、前記符号化データは、前記画像をブロック化して得られるブロックの各画素を注目画素として、前記注目画素の画素値以上の値と、前記注目画素の画素値以下の値の2つの基準値どうしの差である基準値差分を算出し、前記注目画素の画素値と、前記基準値との差分である画素値差分を算出し、前記画素値差分を、前記基準値差分に基づいて量子化し、前記基準値を求めるための所定の演算に用いる演算パラメータであって、前記演算パラメータを用いた前記所定の演算により求められる前記基準値と前記注目画素の画素値との差分を最小化する前記演算パラメータを求めることにより得られる前記画素値差分の量子化結果、及び前記演算パラメータを含み、前記演算パラメータを用いて前記所定の演算を行うことにより、2つの前記基準値を取得する基準値取得手段と、2つの前記基準値どうしの差である前記基準値差分を取得する基準値差分取得手段と、前記基準値差分に基づいて、前記量子化結果を逆量子化することにより、前記画素値差分を求める逆量子化手段と、前記画素値差分と、前記基準値とを加算する加算手段とを備える復号装置、又は復号装置として、コンピュータを機能させるプログラムである。
【0018】
前記演算パラメータが、前記ブロックを代表する代表値であるとき、前記基準値取得手段では、前記所定の演算として、固定の係数と、前記代表値とを用いた線形演算を行うことにより、前記基準値を取得することができる。
【0019】
2つの前記基準値のうちの、前記注目画素の画素値以下の基準値を第1の基準値とするとともに、前記注目画素の画素値以上の基準値を第2の基準値とし、前記演算パラメータが、前記ブロック毎に求められた、前記第1の基準値を求めるのに用いられる第1の代表値と、前記第2の基準値を求めるのに用いられる第2の代表値であるとき、前記基準値取得手段では、前記固定の係数と前記第1の代表値とを用いて、前記第1の基準値を求めるとともに、前記固定の係数と前記第2の代表値とを用いて、前記第2の基準値を求めることにより、前記第1及び第2の基準値を取得することができる。
【0020】
前記演算パラメータが、所定の係数であるとき、前記基準値取得手段では、前記所定の演算として、前記所定の係数と、前記ブロックを代表する代表値としての、前記ブロックの画素値の最小値又は最大値とを用いた線形演算を行うことにより、前記基準値を取得することができる。
【0021】
2つの前記基準値のうちの、前記注目画素の画素値以下の基準値を第1の基準値とするとともに、前記注目画素の画素値以上の基準値を第2の基準値とし、かつ、前記ブロックの画素値の最小値を第1の代表値とするとともに、前記ブロックの画素値の最大値を第2の代表値とし、前記演算パラメータが、前記第1の基準値を求めるのに前記第1の代表値とともに用いられる第1の係数と、前記第2の基準値を求めるのに前記第2の代表値とともに用いられる第2の係数であるとき、前記基準値取得手段では、前記第1の係数と前記第1の代表値とを用いて、前記第1の基準値を求めるとともに、前記第2の係数と前記第2の代表値とを用いて、前記第2の基準値を求めることにより、前記第1及び第2の基準値を取得することができる。
【0022】
本発明の第2の側面の復号方法は、画像を符号化した符号化データを復号する復号装置の復号方法であり、前記符号化データは、前記画像をブロック化して得られるブロックの各画素を注目画素として、前記注目画素の画素値以上の値と、前記注目画素の画素値以下の値の2つの基準値どうしの差である基準値差分を算出し、前記注目画素の画素値と前記基準値との差分である画素値差分を算出し、前記画素値差分を、前記基準値差分に基づいて量子化し、前記基準値を求めるための所定の演算に用いる演算パラメータであって、前記演算パラメータを用いた前記所定の演算により求められる前記基準値と前記注目画素の画素値との差分を最小化する前記演算パラメータを求めることにより得られる前記画素値差分の量子化結果、及び前記演算パラメータを含み、前記演算パラメータを用いて前記所定の演算を行うことにより、前記基準値を取得し、2つの前記基準値どうしの差である前記基準値差分を取得し、前記基準値差分に基づいて、前記量子化結果を逆量子化することにより、前記画素値差分を求め、前記画素値差分と、前記基準値とを加算するステップを含む。
【0023】
本発明の第2の側面においては、前記演算パラメータを用いて前記所定の演算が行われることにより、前記基準値が取得され、2つの前記基準値どうしの差である前記基準値差分が取得される。そして、前記基準値差分に基づいて、前記量子化結果が逆量子化されることにより、前記画素値差分が求められ、前記画素値差分と、前記基準値とが加算される。
【発明の効果】
【0024】
本発明によれば、量子化誤差を小にすることにより、人間にとって良好な品質の復号結果を得ることができる。
【発明を実施するための最良の形態】
【0025】
以下に本発明の実施の形態を説明するが、本発明の構成要件と、明細書又は図面に記載の実施の形態との対応関係を例示すると、次のようになる。この記載は、本発明をサポートする実施の形態が、明細書又は図面に記載されていることを確認するためのものである。従って、明細書又は図面中には記載されているが、本発明の構成要件に対応する実施の形態として、ここには記載されていない実施の形態があったとしても、そのことは、その実施の形態が、その構成要件に対応するものではないことを意味するものではない。逆に、実施の形態が構成要件に対応するものとしてここに記載されていたとしても、そのことは、その実施の形態が、その構成要件以外の構成要件には対応しないものであることを意味するものでもない。
【0026】
本発明の第1の側面の復号装置、又はプログラムは、
画像を符号化する符号化装置(例えば、図3の符号化装置31)、又は画像を符号化する符号化装置として、コンピュータを機能させるプログラムであり、
前記画像を複数のブロックにブロック化するブロック化手段(例えば、図3のブロック化部61)と、
前記ブロックの各画素を注目画素として、前記注目画素の画素値以上の値と、前記注目画素の画素値以下の値の2つの基準値を取得する基準値取得手段(例えば、図3の線形予測器64や67)と、
2つの前記基準値どうしの差である基準値差分を算出する基準値差分算出手段(例えば、図3の基準値差分器68)と、
前記注目画素の画素値と、前記基準値との差分である画素値差分を算出する画素値差分算出手段(例えば、図3の画素値差分器70)と、
前記画素値差分を、前記基準値差分に基づいて量子化する量子化手段(例えば、図3の量子化器71)と、
前記基準値を求めるための所定の演算に用いる演算パラメータであって、前記演算パラメータを用いた前記所定の演算により求められる前記基準値と前記注目画素の画素値との差分を最小化する前記演算パラメータを求める演算パラメータ算出手段(例えば、図3のブロック代表値算出部62や65)と、
前記量子化手段による量子化結果、及び前記演算パラメータを、前記画像の符号化結果として出力する出力手段(例えば、図3の出力部72)と
を備える符号化装置、又は符号化装置として、コンピュータを機能させるプログラムである。
【0027】
2つの前記基準値のうちの、前記注目画素の画素値以下の基準値を第1の基準値(例えば、図3の基準値bx,y)とするとともに、前記注目画素の画素値以上の基準値を第2の基準値(例えば、図3の基準値tx,y)とするとき、
前記演算パラメータ算出手段(例えば、図3のブロック代表値算出部62や65)では、前記第1の基準値を求めるのに用いられる第1の代表値(例えば、図3の代表値B)と、前記第2の基準値を求めるのに用いられる第2の代表値(例えば、図3の代表値T)とを、前記ブロック毎に求め、
前記基準値取得手段(例えば、図3の線形予測器64や67)では、前記固定の係数(例えば、図3の係数ωb)と前記第1の代表値とを用いて、前記第1の基準値を求めるとともに、前記固定の係数(例えば、図3の係数ωt)と前記第2の代表値とを用いて、前記第2の基準値を求めることにより、前記第1及び第2の基準値を取得することができる。
【0028】
2つの前記基準値のうちの、前記注目画素の画素値以下の基準値を第1の基準値(例えば、図10の基準値bx,y)とするとともに、前記注目画素の画素値以上の基準値を第2の基準値(例えば、図10の基準値tx,y)とし、
かつ、前記ブロックの画素値の最小値を第1の代表値(例えば、図10の代表値B)とするとともに、前記ブロックの画素値の最大値を第2の代表値(例えば、図10の代表値T)とするとき、
前記演算パラメータ算出手段(例えば、図10の係数算出部152や155)では、前記第1の基準値を求めるのに前記第1の代表値とともに用いられる第1の係数(例えば、図10の係数ωb)と、前記第2の基準値を求めるのに前記第2の代表値とともに用いられる第2の係数(例えば、図10の係数ωt)とを求め、
前記基準値取得手段(例えば、図10の線形予測器153や156)では、前記第1の係数と前記第1の代表値とを用いて、前記第1の基準値を求めるとともに、前記第2の係数と前記第2の代表値とを用いて、前記第2の基準値を求めることにより、前記第1及び第2の基準値を取得することができる。
【0029】
本発明の第1の側面の符号化方法は、
画像を符号化する符号化装置(例えば、図3の符号化装置31)の符号化方法であり、
前記画像を複数のブロックにブロック化し(例えば、図6のステップS31)、
前記ブロックの各画素を注目画素として、前記注目画素の画素値以上の値と、前記注目画素の画素値以下の値の2つの基準値を取得し(例えば、図6のステップS34やステップS35)、
2つの前記基準値どうしの差である基準値差分を算出し(例えば、図6のステップS36)、
前記注目画素の画素値と、前記基準値との差分である画素値差分を算出し(例えば、図6のステップS38)、
前記画素値差分を、前記基準値差分に基づいて量子化し(例えば、図6のステップS39)、
前記基準値を求めるための所定の演算に用いる演算パラメータであって、前記演算パラメータを用いた前記所定の演算により求められる前記基準値と前記注目画素の画素値との差分を最小化する前記演算パラメータを求め(例えば、図6のステップS32やステップS33)、
前記画素値差分の量子化結果、及び前記演算パラメータを、前記画像の符号化結果として出力する(例えば、図6のステップS40)
ステップを含む。
【0030】
本発明の第2の側面の復号装置、又はプログラムは、
画像を符号化した符号化データを復号する復号装置(例えば、図7の復号装置32)、又は画像を符号化した符号化データを復号する復号装置として、コンピュータを機能させるプログラムであり、
前記符号化データは、
前記画像をブロック化して得られるブロックの各画素を注目画素として、前記注目画素の画素値以上の値と、前記注目画素の画素値以下の値の2つの基準値どうしの差である基準値差分を算出し、
前記注目画素の画素値と、前記基準値との差分である画素値差分を算出し、
前記画素値差分を、前記基準値差分に基づいて量子化し、
前記基準値を求めるための所定の演算に用いる演算パラメータであって、前記演算パラメータを用いた前記所定の演算により求められる前記基準値と前記注目画素の画素値との差分を最小化する前記演算パラメータを求める
ことにより得られる前記画素値差分の量子化結果、及び前記演算パラメータを含み、
前記演算パラメータを用いて前記所定の演算を行うことにより、2つの前記基準値を取得する基準値取得手段(例えば、図7の線形予測器103や105)と、
2つの前記基準値どうしの差である前記基準値差分を取得する基準値差分取得手段(例えば、図7の基準値差分器106)と、
前記基準値差分に基づいて、前記量子化結果を逆量子化することにより、前記画素値差分を求める逆量子化手段(例えば、図7の逆量子化器108)と、
前記画素値差分と、前記基準値とを加算する加算手段(例えば、図7の加算器109)と
を備える復号装置、又は復号装置として、コンピュータを機能させるプログラムである。
【0031】
2つの前記基準値のうちの、前記注目画素の画素値以下の基準値を第1の基準値(例えば、図7の基準値bx,y)とするとともに、前記注目画素の画素値以上の基準値を第2の基準値(例えば、図7の基準値tx,y)とするとき、
前記演算パラメータは、前記ブロック毎に求められた、前記第1の基準値を求めるのに用いられる第1の代表値(例えば、図7の代表値B)と、前記第2の基準値を求めるのに用いられる第2の代表値(例えば、図7の代表値T)であり、
前記基準値取得手段(例えば、図7の線形予測器103や105)では、前記固定の係数(例えば、図7の係数ωb)と前記第1の代表値とを用いて、前記第1の基準値を求めるとともに、前記固定の係数(例えば、図7の係数ωt)と前記第2の代表値とを用いて、前記第2の基準値を求めることにより、前記第1及び第2の基準値を取得することができる。
【0032】
2つの前記基準値のうちの、前記注目画素の画素値以下の基準値を第1の基準値(例えば、図12の基準値bx,y)とするとともに、前記注目画素の画素値以上の基準値を第2の基準値(例えば、図12の基準値tx,y)とし、
かつ、前記ブロックの画素値の最小値を第1の代表値(例えば、図12の代表値B)とするとともに、前記ブロックの画素値の最大値を第2の代表値(例えば、図12の代表値T)とするとき、
前記演算パラメータは、前記第1の基準値を求めるのに前記第1の代表値とともに用いられる第1の係数(例えば、図12の係数ωb)と、前記第2の基準値を求めるのに前記第2の代表値とともに用いられる第2の係数(例えば、図12の係数ωt)であり、
前記基準値取得手段(例えば、図12の線形予測器192や193)では、前記第1の係数と前記第1の代表値とを用いて、前記第1の基準値を求めるとともに、前記第2の係数と前記第2の代表値とを用いて、前記第2の基準値を求めることにより、前記第1及び第2の基準値を取得することができる。
【0033】
本発明の第2の側面の復号方法は、
画像を符号化した符号化データを復号する復号装置(例えば、図7の復号装置32)の復号方法であり、
前記符号化データは、
前記画像をブロック化して得られるブロックの各画素を注目画素として、前記注目画素の画素値以上の値と、前記注目画素の画素値以下の値の2つの基準値どうしの差である基準値差分を算出し、
前記注目画素の画素値と前記基準値との差分である画素値差分を算出し、
前記画素値差分を、前記基準値差分に基づいて量子化し、
前記基準値を求めるための所定の演算に用いる演算パラメータであって、前記演算パラメータを用いた前記所定の演算により求められる前記基準値と前記注目画素の画素値との差分を最小化する前記演算パラメータを求める
ことにより得られる前記画素値差分の量子化結果、及び前記演算パラメータを含み、
前記演算パラメータを用いて前記所定の演算を行うことにより、前記基準値を取得し(例えば、図8のステップS62やステップS63)、
2つの前記基準値どうしの差である前記基準値差分を取得し(例えば、図8のステップS64)、
前記基準値差分に基づいて、前記量子化結果を逆量子化することにより、前記画素値差分を求め(例えば、図8のステップS66)、
前記画素値差分と、前記基準値とを加算する(例えば、図8のステップS67)
ステップを含む。
【0034】
次に、図面を参照して、本発明の実施の形態について説明する。
【0035】
図2は、本発明を適用した画像伝送システムの一実施の形態の構成例を示している。
【0036】
図2の画像伝送システム1は、符号化装置31及び復号装置32により構成される。
【0037】
伝送すべき画像データは、符号化装置31に供給されるようになっており、符号化装置31は、そこに供給される画像データを、(再)量子化することにより符号化する。
【0038】
符号化装置31が画像データを符号化することにより得られる符号化データは、例えば、半導体メモリ、光磁気ディスク、磁気ディスク、光ディスク、磁気テープ、相変化ディスク等でなる記録媒体33に記録されるか、例えば、地上波、衛星回線、CATV(Cable Television)網、インターネット、公衆回線などでなる伝送媒体34を介して伝送される。
【0039】
復号装置32は、記録媒体33又は伝送媒体34を介して提供される符号化データを受信して、逆量子化することにより復号する。この復号により得られた復号画像データは、例えば、図示せぬモニタに供給されて表示される。
【0040】
図3は、図2の符号化装置31の第1の構成例を示すブロック図である。
【0041】
図3の符号化装置31は、ブロック化部61、ブロック代表値算出部62、記憶部63、メモリ64aを内蔵する線形予測器64、ブロック代表値算出部65、記憶部66、メモリ67aを内蔵する線形予測器67、基準値差分器68、量子化間隔算出部69、画素値差分器70、量子化器71及び出力部72により構成される。
【0042】
ブロック化部61には、符号化対象である画像データが、例えば、1フレーム(又はフィールド)単位で供給される。ブロック化部61は、そこに供給された1フレーム(の画像データ)を注目フレームとして、注目フレームを、所定の画素数で構成される複数のブロックに分割するブロック化を行い、ブロック代表値算出部62,65及び画素値差分器70に供給する。
【0043】
ブロック代表値算出部62は、ブロック化部61からのブロックと、記憶部63に記憶されている第1の係数ωbとに基づいて、注目フレームの各ブロックを代表する第1の代表値Bを、ブロック毎に算出し、線形予測器64及び出力部72に供給する。
【0044】
記憶部63は、各ブロックの各画素を注目画素として、注目画素の画素値px,y以下の第1の基準値bx,yを求めるのに、第1の代表値Bとともに用いられる第1の係数ωbとして、固定の係数ωbを記憶する。
【0045】
ここで、画素値px,yは、注目フレームの、左からx番目の、上からy番目の位置にある画素の画素値を表す。
【0046】
また、固定の係数ωbとしては、例えば、画像を拡大するための、画素(画素値)の線形補間に用いられる係数等を採用することができる。
【0047】
線形予測器64は、ブロック代表値算出部62から供給されるブロック毎の第1の代表値Bを、内蔵するメモリ64aに記憶する。
【0048】
線形予測器64は、メモリ64aに記憶される第1の代表値Bと、記憶部63に記憶されている第1の係数ωbとを用いた線形演算を行うことにより、注目画素の画素値px,y以下の第1の基準値bx,yを求め、基準値差分器68及び画素値差分器70に供給する。
【0049】
ブロック代表値算出部65は、ブロック化部61からのブロックと、記憶部66に記憶されている第2の係数ωtとに基づいて、注目フレームの各ブロックを代表する第2の代表値Tを、ブロック毎に算出し、線形予測器67及び出力部72に供給する。
【0050】
記憶部66は、注目画素の画素値px,y以上の第2の基準値tx,yを求めるのに、第2の代表値Tとともに用いられる第2の係数ωtとして、固定の係数ωtを記憶する。
【0051】
なお、固定の係数ωtとしては、例えば、画像を拡大するための、画素の線形補間に用いられる係数等を採用することができる。
【0052】
線形予測器67は、ブロック代表値算出部65から供給されるブロック毎の第2の代表値Tを、内蔵するメモリ67aに記憶する。
【0053】
線形予測器67は、メモリ67aに記憶される第2の代表値Tと、記憶部66に記憶されている第2の係数ωtとを用いた線形演算を行うことにより、注目画素の画素値px,y以上の第2の基準値tx,yを求め、基準値差分器68に供給する。
【0054】
基準値差分器68は、線形予測器67からの第2の基準値tx,yと、線形予測器64からの第1の基準値bx,yとの差分である基準値差分Dx,y(=tx,y―bx,y)を算出し、量子化間隔算出部69に供給する。
【0055】
量子化間隔算出部69は、基準値差分器68から供給された基準値差分Dx,yに基づいて、注目画素の画素値px,yを量子化するための量子化間隔(量子化ステップ)Δx,yを算出し、量子化器71に供給する。なお、量子化間隔算出部69には、図示せぬ回路より、例えば、ユーザの操作や、復号画像データに要求される画質(S/N(Signal to Noise ratio))等に応じて、量子化後の画像データに割り当てるべき量子化ビット数(1画素を表現するためのビット数)nが供給されるようになされており、量子化間隔Δx,yは、式Δx,y=Dx,y/2nにしたがって算出される。
【0056】
画素値差分器70は、ブロック化部61からのブロックの各画素を注目画素として、注目画素の画素値px,yと、線形予測器64から供給される注目画素の第1の基準値bx,yとの差分である画素値差分dx,y(=px,y−bx,y)を算出し、量子化器71に供給する。
【0057】
量子化器71は、画素値差分器70からの画素値差分dx,yを、量子化間隔算出部69からの量子化間隔Δx,yにしたがって量子化し、その量子化により得られる量子化データQx,y(=dx,yx,y)を、出力部72に供給する。
【0058】
出力部72は、量子化器71からの量子化データQx,yとともに、ブロック代表値算出部62からの注目フレームのブロックすべての第1の代表値B、及びブロック代表値算出部65からの注目フレームのブロックすべての第2の代表値Tを多重化し、注目フレームの符号化データとして出力する。
【0059】
図4は、図3の線形予測器64が、線形演算(線形一次予測)により、注目画素について、第1の基準値bx,yを求める処理を説明する図である。
【0060】
即ち、図4は、注目フレームを構成するブロックのうちの、縦×横が3×3個の9つのブロック90乃至98を示している。
【0061】
いま、図4のブロック90乃至98のうちの、ブロック94のある画素が注目画素となっているとすると、線形予測器64は、例えば、式(1)の線形演算により、注目画素の第1の基準値bx,yを算出する。
【0062】
【数1】

【0063】
但し、式(1)において、Biは、注目画素のブロック94を中心とする3×3のブロック90乃至98のうちの、ラスタスキャン順で、i+1番目のブロックの第1の代表値であり、ωbm,iは、第1の係数ωbのうちの、ブロックを構成する画素の中でラスタスキャン順でm番目の画素#mが注目画素である場合に、第1の代表値Biと乗算される係数を示している。
【0064】
また、式(1)において、tapは、第1の基準値bx,yを求めるのに用いられる第1の代表値Biの数から1を減算した値であり、図4の場合には、8(=9−1)である。本実施の形態においては、第1の係数ωbとしては、9個の第1の代表値B0乃至B8とそれぞれ乗算される9個の第1の係数ωbm,0bm,1,・・・,ωbm,8が、ブロックを構成する画素#m毎に用意されている。
【0065】
ブロックすべての第1の代表値Bは、例えば、整数計画問題の解として、ブロック代表値算出部62により算出される。
【0066】
即ち、例えば、第1の代表値Bは、上述の式(1)及び以下の式(2)を制約条件とし、以下の式(3)に示す関数を目的関数とするときの整数計画問題の解として得られる。
【0067】
【数2】

【0068】
【数3】

【0069】
ここで、式(2)は、注目フレームのすべての位置(x,y)の画素について、第1の基準値bx,yが、画素値px,y以下の値であることを表す。
【0070】
また、式(3)は、注目フレームのすべての位置(x,y)の画素について、画素値px,yと第1の基準値bx,yとの差分px,y―bx,yを最小化することを表す。
【0071】
従って、ブロック代表値算出部62では、第1の基準値bx,yを求めるための式(1)の線形演算に用いられる第1の代表値Bであって、注目フレームのすべての画素についての画素値px,yと第1の基準値bx,yとの差分px,y−bx,yの総和を最小化する第1の代表値Bが求められる。
【0072】
線形予測器67及びブロック代表値算出部65でも、上述の線形予測器64及びブロック代表値算出部62と同様にして、第2の基準値tx,y及び第2の代表値Tが、それぞれ求められる。
【0073】
いま、図4のブロック90乃至98のうちの、ブロック94のある画素が注目画素となっているとすると、線形予測器67は、例えば、式(4)の線形演算により、注目画素の第2の基準値tx,yを算出する。
【0074】
【数4】

【0075】
但し、式(4)において、Tiは、注目画素のブロック94を中心とする3×3のブロック90乃至98のうちの、ラスタスキャン順で、i+1番目のブロックの第2の代表値であり、ωtm,iは、第2の係数ωtのうちの、ブロックを構成する画素の中でラスタスキャン順でm番目の画素#mが注目画素である場合に、第2の代表値Tiと乗算される係数を示している。
【0076】
また、式(4)において、tapは、第2の基準値tx,yを求めるのに用いられる第2の代表値Tiの数から1を減算した値であり、図4の場合には、8(=9−1)である。本実施の形態においては、第2の係数ωtとしては、9個の第2の代表値T0乃至T8とそれぞれ乗算される9個の第2の係数ωtm,0tm,1,・・・,ωtm,8が、ブロックを構成する画素#m毎に用意されている。
【0077】
ブロックすべての第2の代表値Tは、例えば、整数計画問題の解として、ブロック代表値算出部65により算出される。
【0078】
即ち、例えば、第2の代表値Tは、上述の式(4)及び以下の式(5)を制約条件とし、以下の式(6)に示す関数を目的関数とするときの整数計画問題の解として得られる。
【0079】
【数5】

【0080】
【数6】

【0081】
ここで、式(5)は、注目フレームのすべての位置(x,y)の画素について、第2の基準値tx,yが、画素値px,y以上の値であることを表す。
【0082】
また、式(6)は、注目フレームのすべての位置(x,y)の画素について、第2の基準値tx,yと画素値px,yとの差分tx,y―px,yを最小化することを表す。
【0083】
従って、ブロック代表値算出部65では、第2の基準値tx,yを求めるための式(4)の線形演算に用いられる第2の代表値Tであって、注目フレームのすべての画素についての画素値px,yと第2の基準値tx,yとの差分tx,y−px,yの総和を最小化する第2の代表値Tが求められる。
【0084】
ここで、基準値差分器68で求められる、第2の基準値tx,yと第1の基準値bx,yとの差分である基準値差分Dx,y=tx,y-bx,yは、式(7)に示すように、画素値px,yと第1の基準値bx,yとの差分px,y-bx,yと、第2の基準値tx,yと画素値px,yとの差分tx,y-px,yとの和で表される。
【0085】
【数7】

【0086】
従って、式(3)に示すように、画素値px,yと第1の基準値bx,yとの差分px,y-bx,yを最小化する第1の代表値Bから求められる第1の基準値bx,y、及び、式(6)に示すように、第2の基準値tx,yと画素値px,yとの差分tx,y-px,yを最小化する第2の代表値Tから求められる第2の基準値tx,yによれば、それらの第1の基準値bx,y及び第2の基準値tx,yから求められる基準値差分Dx,yの総和が、式(8)に示すように最小になる。
【0087】
【数8】

【0088】
ここで、以上のように、画素値px,yと第1の基準値bx,yとの差分px,y-bx,yを最小化する(第1の代表値Bから求められる)、画素値px,y以下の値の第1の基準値bx,yを、以下、適宜、最適化された第1の基準値bx,yともいう。同様に、第2の基準値tx,yと画素値px,yとの差分tx,y-px,yを最小化する(第2の代表値Tから求められる)、画素値px,y以上の値の第2の基準値tx,yを、以下、適宜、最適化された第2の基準値tx,yともいう。
【0089】
図5は、最適化された第1の基準値bx,y及び第2の基準値tx,yを示す図である。
【0090】
図5において、横軸は、画素の位置(x,y)を表し、縦軸は、画素値を表す。
【0091】
従来のADRCでは、第1の基準値bx,yとしては、ブロックの画素値の最小値MINが採用され、第2の基準値tx,yとしては、ブロックの画素値の最大値MAXが採用されて、第1の基準値bx,y及び第2の基準値tx,yは、いずれも、ブロックの各画素について一定の値であったが、図3の符号化装置31で行われる符号化では、第1の基準値bx,y及び第2の基準値tx,yは、ブロックの画素毎に異なり、その結果、基準値差分Dx,yも、ブロックの画素毎に異なる。
【0092】
そして、上述したように、第1の基準値bx,yは、画素値px,yと第1の基準値bx,yとの差分px,y-bx,yを最小化する、画素値px,y以下の値であり、第2の基準値tx,yは、第2の基準値tx,yと画素値px,yとの差分tx,y-px,yを最小化する、画素値px,y以上の値であるから、そのような第1の基準値bx,y及び第2の基準値tx,yから求められる基準値差分Dx,yは、ブロックの画素値の最小値MINと最大値MAXから求められる、従来のADRCのダイナミックレンジDRに比較して小さくなる。
【0093】
従って、そのような基準値差分Dx,yから求められる量子化間隔Δx,yも、従来のADRCの場合よりも小さくなり、その結果、量子化誤差を低減することができる。
【0094】
さらに、画素値差分dx,yが求められるときに画素値px,yから減算される第1の基準値bx,yは、画素値px,yと第1の基準値bx,yとの差分px,y-bx,yを最小化する値、つまり、画素値px,yに(ブロックの画素値の最小値)より近い値であるから、その点からも、従来のADRCの場合よりも、量子化誤差を低減することができる。
【0095】
次に、図6のフローチャートを参照して、図3の符号化装置31が行う符号化処理を説明する。
【0096】
ステップS31において、ブロック化部61は、そこに供給された1フレーム(の画像データ)を注目フレームとして、注目フレームを複数のブロックにブロック化する。そして、ブロック化部61は、注目フレームのブロックを、ブロック代表値算出部62,65及び画素値差分器70に供給して、処理は、ステップS31からステップS32に進む。
【0097】
ステップS32において、ブロック代表値算出部62は、ブロック化部61からの、注目フレームを構成する各ブロックについて、記憶部63に記憶されている第1の係数ωbを用い、式(1)乃至式(3)を満たす第1の代表値Bを算出し、線形予測器64及び出力部72に供給して、処理は、ステップS33に進む。
【0098】
ステップS33において、ブロック代表値算出部65は、ブロック化部61からの、注目フレームを構成する各ブロックについて、記憶部66に記憶されている第2の係数ωtを用い、式(4)乃至式(6)を満たす第2の代表値Tを算出し、線形予測器67及び出力部72に供給して、処理は、ステップS34に進む。
【0099】
ステップS34において、線形予測器64は、ブロック代表値算出部62から供給された注目フレームのブロックすべての第1の代表値Bを、内蔵するメモリ64aに記憶する。
【0100】
また、ステップS34において、線形予測器64は、注目フレームのブロックを、順次、注目ブロックとするとともに、注目ブロックの各画素を、順次、注目画素とし、メモリ64aに記憶されている、注目ブロック及びその周辺のブロックの第1の代表値Biと、記憶部63に記憶されている第1の係数ωbとを用いて、式(1)の線形演算を行い、その線形演算により得られた注目画素の第1の基準値bx,yを、基準値差分器68及び画素値差分器70に供給して、処理は、ステップS35に進む。
【0101】
ステップS35において、線形予測器67は、ブロック代表値算出部65から供給された注目フレームのブロックすべての第2の代表値Tを、内蔵するメモリ67aに記憶する。
【0102】
また、ステップS35において、線形予測器67は、メモリ67aに記憶されている、注目ブロック及びその周辺のブロックの第2の代表値Tiと、記憶部66に記憶されている第2の係数ωtとを用いて、式(4)の線形演算を行い、その線形演算により得られた注目画素の第2の基準値tx,yを、基準値差分器68に供給して、処理は、ステップS36に進む。
【0103】
ステップS36において、基準値差分器68は、注目画素について、線形予測器67からの第2の基準値tx,yと、線形予測器64からの第1の基準値bx,yとの差分である基準値差分Dx,yを算出し、量子化間隔算出部69に供給して、処理は、ステップS37に進む。
【0104】
ステップS37において、量子化間隔算出部69は、基準値差分器68から供給される基準値差分Dx,yに基づいて、注目画素の画素値px,yを量子化するための量子化間隔Δx,yを算出し、量子化器71に供給して、処理は、ステップS38に進む。
【0105】
ステップS38において、画素値差分器70は、ブロック化部61からのブロックのうちの注目ブロックの注目画素の画素値px,yと、線形予測器64から供給された注目画素の第1の基準値bx,yとの差分である画素値差分dx,yを算出し、量子化器71に供給して、処理は、ステップS39に進む。
【0106】
ステップS39において、量子化器71は、画素値差分器70からの画素値差分dx,yを、量子化間隔算出部69からの量子化間隔Δx,yにしたがって量子化し、その量子化により得られた量子化データQx,y(=dx,yx,y)を、出力部72に供給する。
【0107】
そして、注目フレームのすべての画素を注目画素として、ステップS34乃至ステップS39の処理が行われ、注目フレームのすべての画素について、量子化データQx,yが得られると、処理は、ステップS39からステップS40に進む。
【0108】
ステップS40では、出力部72は、量子化器71からの注目フレームのすべての画素の量子化データQx,yとともに、ブロック代表値算出部62からの注目フレームのブロック毎の第1の代表値B、及びブロック代表値算出部65からのブロック毎の第2の代表値Tを多重化することにより、注目フレームの符号化データを構成して出力し、処理は、ステップS41に進む。
【0109】
ステップS41において、線形予測器64は、符号化対象とすべき画像データすべてに対する処理が終了したか否かを判定する。
【0110】
ステップS41において、符号化対象とすべき画像データすべてに対する処理が終了していないと判定された場合、処理は、ステップS31に戻り、ブロック化部61は、そこに供給される新たな1フレームを、新たに、注目フレームとして、以下、同様の処理を繰り返す。
【0111】
一方、ステップS41において、符号化対象とすべき画像データすべてに対する処理が終了したと判定された場合、符号化処理は終了する。
【0112】
図6の符号化処理によれば、上述の式(3)に示すように、差分px,y−bx,yの総和を最小にする第1の代表値Bが求められるとともに、上述の式(6)に示すように、差分tx,y−px,yの総和を最小にする第2の代表値Tが求められる。従って、上述の式(7)に示す基準値差分Dx,yを小とすることができ、基準値差分Dx,yの大きさに比例する量子化間隔Δx,yの大きさを小にすることができる。
【0113】
その結果、量子化誤差を小にすることができる。
【0114】
さらに、図6の符号化処理では、画素値差分器70において、画素値px,yとの差分が求められる第1の基準値bx,yとして、画素値px,yと第1の基準値bx,yとの差分px,y―bx,yを最小化する第1の基準値bx,y、つまり、画素値px,yに、より近い値の第1の基準値bx,yが求められるので、量子化誤差をより小にすることができる。
【0115】
また、従来のADRCでは、画素値を量子化して得られる量子化データの他、ブロック毎の最小値MIN、最大値MAX、及びダイナミックレンジDRのうちの2つが、ブロックを符号化した符号化データとなるのに対して、図6の符号化処理では、画素値を量子化して得られる量子化データの他、ブロック毎の第1の代表値B及び第2の代表値Tが、ブロックを符号化した符号化データとなる。
【0116】
従って、図6の符号化処理によれば、従来のADRCと比較して、符号化データのデータ量を増加させずに、量子化誤差を低減することができる。
【0117】
図7は、図2の復号装置32の第1の構成例を示すブロック図である。
【0118】
図2の復号装置32は、入力部101、記憶部102、メモリ103aを内蔵する線形予測器103、記憶部104、メモリ105aを内蔵する線形予測器105、基準値差分器106、量子化間隔算出部107、逆量子化器108、加算器109及びタイリング部110により構成される。
【0119】
入力部101には、例えば、記録媒体33又は伝送媒体34(図2)を介して、図3の符号化装置31が出力した、第1の代表値B、第2の代表値T、及び量子化データQx,yを含む符号化データが、例えば1フレーム単位で入力(供給)される。
【0120】
入力部101は、そこに入力された1フレーム分の符号化データを注目フレームの符号化データとして、その符号化データを、注目フレームのブロックすべての第1の代表値B、注目フレームのブロックすべての第2の代表値T、及び注目フレームの各画素の量子化データQx,yに分解し、第2の代表値Tを線形予測器103に入力し、第1の代表値Bを線形予測器105に入力するとともに、量子化データQx,yを逆量子化器108に入力する。
【0121】
記憶部102は、図3の記憶部66が記憶している第2の係数ωtと同一の第2の係数ωtを記憶している。
【0122】
線形予測器103は、入力部101から供給される、注目フレームのブロックすべての第2の代表値Tを、内蔵するメモリ103aに記憶する。
【0123】
線形予測器103は、メモリ103aに記憶されている第2の代表値Tと、記憶部102に記憶されている第2の係数ωtとを用いて、図3の線形予測器67と同様の処理を行うことにより、図3の線形予測器67が出力する第2の基準値tx,yと同一の第2の基準値tx,yを求め、基準値差分器106に供給する。
【0124】
記憶部104は、図3の記憶部63に記憶されている第1の係数ωbと同一の第1の係数ωbを記憶している。
【0125】
線形予測器105は、入力部101から供給される、注目フレームのブロックすべての第1の代表値Bを、内蔵するメモリ105aに記憶する。
【0126】
線形予測器105は、メモリ105aに記憶されている第1の代表値Bと、記憶部104に記憶されている第1の係数ωbとを用いて、図3の線形予測器64と同様の処理を行うことにより、図3の線形予測器64が出力する第1の基準値bx,yと同一の第1の基準値bx,yを求め、基準値差分器106及び加算器109に供給する。
【0127】
基準値差分器106は、図3の基準値差分器68と同様に、線形予測器103からの第2の基準値tx,yと、線形予測器105からの第1の基準値bx,yとの基準値差分Dx,yを算出し、量子化間隔算出部107に供給する。
【0128】
量子化間隔算出部107は、図3の量子化間隔算出部69と同様に、基準値差分器106から供給された基準値差分Dx,yに基づいて、入力部101から逆量子化器108に供給される量子化データQx,yを逆量子化するための量子化間隔Δx,yを算出し、逆量子化器108に供給する。なお、量子化間隔算出部107には、図示せぬ回路より、図3の量子化間隔算出部69に供給されるのと同一の量子化ビット数nが供給されるようになされており、量子化間隔Δx,yは、式Δx,y=Dx,y/2nにしたがって算出される。
【0129】
逆量子化器108は、入力部101からの量子化データQx,yを、量子化間隔算出部107からの量子化間隔Δx,yにしたがって逆量子化し、その逆量子化により得られた画素値差分dx,y(=px,y−bx,y)を、加算器109に供給する。
【0130】
加算器109は、線形予測器105からの第1の基準値bx,yと、逆量子化器108からの画素値差分dx,yとを加算し、その加算により得られた加算値px,yを、復号結果として、タイリング部110に供給する。
【0131】
タイリング部110は、加算器109からの注目フレームの各画素の復号結果としての加算値px,yをタイリングすることにより、注目フレームの復号画像データを生成し、図示せぬモニタに出力する。
【0132】
次に、図8のフローチャートを参照して、図7の復号装置32が行う復号処理を説明する。
【0133】
ステップS61において、入力部101は、そこに入力された1フレーム分の符号化データを注目フレームの符号化データとして、その注目フレームの符号化データを、第1の代表値B、第2の代表値T、及び量子化データQx,yに分解し、注目フレームのブロックすべての第2の代表値Tを線形予測器103に入力し、注目フレームのブロックすべての第1の代表値Bを線形予測器105に入力するとともに、注目フレームの各画素の量子化データQx,yを逆量子化器108に入力して、処理は、ステップS62に進む。
【0134】
ステップS62において、線形予測器105は、入力部101から供給された注目フレームのブロックすべての第1の代表値Bを、内蔵するメモリ105aに記憶する。
【0135】
また、ステップS62において、線形予測器105は、注目フレームの画素を、順次、注目画素とし、メモリ105aに記憶されている第1の代表値Bと、記憶部104に記憶されている第1の係数ωbとを用いて、図3の線形予測器64と同様の処理を行うことにより、図3の線形予測器64が出力する第1の基準値bx,yと同一の第1の基準値bx,yを求め、基準値差分器106及び加算器109に供給して、処理は、ステップS63に進む。
【0136】
ステップS63において、線形予測器103は、入力部101から供給された注目フレームのブロックすべての第2の代表値Tを、内蔵するメモリ103aに記憶する。
【0137】
また、ステップS63において、線形予測器103は、メモリ103aに記憶されている第2の代表値Tと、記憶部102に記憶されている第2の係数ωtとを用いて、図3の線形予測器67と同様の処理を行うことにより、図3の線形予測器67が出力する第2の基準値tx,yと同一の第2の基準値tx,yを求め、基準値差分器106に供給して、処理は、ステップS64に進む。
【0138】
ステップS64において、基準値差分器106は、図3の基準値差分器68と同様に、注目画素について、線形予測器103からの第2の基準値tx,yと、線形予測器105からの第1の基準値bx,yとの基準値差分Dx,yを算出し、量子化間隔算出部107に供給して、処理は、ステップS65に進む。
【0139】
ステップS65において、量子化間隔算出部107は、図3の量子化間隔算出部69と同様に、基準値差分器106から供給された基準値差分Dx,yに基づいて、入力部101から逆量子化器108に供給される、注目画素の量子化データQx,yを逆量子化するための量子化間隔Δx,yを算出し、逆量子化器108に供給して、処理は、ステップS66に進む。
【0140】
ステップS66において、逆量子化器108は、入力部101から供給された、注目画素の量子化データQx,yを、量子化間隔算出部107から供給される量子化間隔Δx,yにしたがって逆量子化し、その逆量子化により得られた注目画素の画素値差分dx,yを、加算器109に供給して、処理は、ステップS67に進む。
【0141】
ステップS67において、加算器109は、線形予測器105からの注目画素の第1の基準値bx,yと、逆量子化器108からの注目画素の画素値差分dx,yとを加算し、その加算により得られた加算値px,yを、注目画素の復号結果として、タイリング部110に供給する。
【0142】
そして、注目フレームのすべての画素を注目画素として、ステップS62乃至ステップS67の処理が行われ、注目フレームのすべての画素について、復号結果としての加算値px,yが得られると、処理は、ステップS67からステップS68に進む。
【0143】
ステップS68では、タイリング部110は、加算器109からの注目フレームのすべての画素の復号結果としての加算値px,yをタイリングすることにより、注目フレームの復号画像データを構成し、図示せぬモニタに出力して、処理は、ステップS69に進む。
【0144】
ステップS69において、線形予測器105は、復号対象とすべき符号化データすべてに対する処理が終了したか否かを判定する。
【0145】
ステップS69において、復号対象とすべき符号化データすべてに対する処理が終了していないと判定された場合、処理は、ステップS61に戻り、入力部101は、そこに入力される新たな1フレーム分の符号化データを、新たな注目フレームの符号化データとして、以下、同様の処理を繰り返す。
【0146】
一方、ステップS69において、復号対象とすべき符号化データすべてに対する処理が終了したと判定された場合、復号処理は終了する。
【0147】
図8の復号処理では、図3の符号化装置31により最小化された基準値差分Dx,yに基づいて量子化間隔Δx,yが算出されるため、基準値差分Dx,yの大きさに比例する量子化間隔Δx,yの大きさを小にすることができる。従って、逆量子化による量子化誤差を小とすることができるため、復号画像データのS/Nを向上させることができ、グラデーション部分等の見た目が良好な復号画像データを得ることができる。
【0148】
図9は、シミュレーションによって得られた復号画像データのS/Nと圧縮率との関係を示している。
【0149】
なお、図9において、横軸は、圧縮率(=[符号化データのデータ量]/[元の画像データのデータ量])を表し、縦軸は、復号画像データのS/Nを表している。
【0150】
図9において、実線は、図3の符号化装置31により、画像を所定の圧縮率で圧縮した符号化データを、図7の復号装置32により復号して得られた復号画像データのS/Nを示している。また、点線は、従来のADRCにより、画像を所定の圧縮率で圧縮し符号化データを復号して得られた復号画像データのS/Nを示している。
【0151】
図9から、圧縮率にかかわらず、図7の復号装置32による復号画像データのS/Nが、従来のADRCの復号による復号画像データのS/Nと比較して向上していることが分かる。
【0152】
図10は、図2の符号化装置31の第2の構成例を示すブロック図である。
【0153】
なお、図中、図3の場合に対応する部分については同一の符号を付してあり、以下、その説明は、適宜省略する。
【0154】
即ち、図10の符号化装置31は、ブロック代表値算出部62乃至線形予測器67及び出力部72それぞれに代えて、ブロック最小値検出部151、係数算出部152、メモリ153aを内蔵する線形予測器153、ブロック最大値検出部154、係数算出部155、メモリ156aを内蔵する線形予測器156及び出力部157が設けられている他は、図3の場合と同様に構成される。
【0155】
ブロック最小値検出部151には、ブロック化部61から、注目フレームのブロックが供給される。ブロック最小値検出部151は、ブロック化部61からの注目フレームのブロックを、順次、注目ブロックとして、注目ブロックの画素値の最小値を検出し、ブロックの第1の代表値Bとして、係数算出部152、線形予測器153及び出力部157に供給する。
【0156】
係数算出部152は、ブロック最大値検出部151から供給された注目フレームのブロックすべての第1の代表値Bに基づいて、第1の基準値bx,yを求めるのに第1の代表値Bとともに用いられる第1の係数ωbを算出し、線形予測器153及び出力部157に供給する。
【0157】
即ち、図3では、ブロック代表値算出部62において、式(1)の第1の代表値Biを未知の値とするとともに、第1の係数ωbm,iを既知の値として、式(1)乃至式(3)を満たす第1の代表値Biを求めたが、図10では、係数算出部152において、式(1)の第1の代表値Biとして、既知の値であるブロックの最小値を採用するとともに、第1の係数ωbm,iを未知の値として、式(1)乃至式(3)を満たす第1の係数ωbm,iが、注目フレームのブロックの画素#m毎に求められる。
【0158】
線形予測器153は、ブロック最小値検出部151から供給される注目フレームのブロックすべての第1の代表値Bと、係数算出部152から供給される注目フレームのブロックの画素毎の第1の係数ωbとを内蔵するメモリ153aに記憶する。
【0159】
線形予測器153は、メモリ153aに記憶されている第1の代表値Bと、メモリ153aに記憶されている第1の係数ωbとを用いて、式(1)の線形演算を行い、その線形演算により得られる注目画素の画素値px,y以下の第1の基準値bx,yを、基準値差分器68及び画素値差分器70に供給する。
【0160】
ブロック最大値検出部154には、ブロック化部61から、注目フレームのブロックが供給される。ブロック最大値検出部154は、ブロック化部61からの注目フレームのブロックを、順次、注目ブロックとして、注目ブロックの画素値の最大値を検出し、ブロックの第2の代表値Tとして、係数算出部155、線形予測器156及び出力部157に供給する。
【0161】
係数算出部155は、ブロック最大値検出部154から供給された注目フレームのブロックすべての第2の代表値Tに基づいて、第2の基準値tx,yを求めるのに第2の代表値Tとともに用いられる第2の係数ωtを算出し、線形予測器156及び出力部157に供給する。
【0162】
即ち、図3では、ブロック代表値算出部65において、式(4)の第2の代表値Tiを未知の値とするとともに、第2の係数ωtm,iを既知の値として、式(4)乃至式(6)を満たす第2の代表値Tiを求めたが、図10では、係数算出部155において、式(4)の第2の代表値Tiとして、既知の値であるブロックの最大値を採用するとともに、第2の係数ωtm,iを未知の値として、式(4)乃至式(6)を満たす第2の係数ωtm,iが、注目フレームのブロックの画素#m毎に求められる。
【0163】
線形予測器156は、ブロック最大値検出部154から供給される注目フレームのブロックすべての第2の代表値Tと、係数算出部155から供給される注目フレームのブロックの画素毎の第2の係数ωtと内蔵するメモリ156aに記憶する。
【0164】
線形予測器156は、メモリ156aに記憶されている第2の代表値Tと、メモリ156aに記憶されている第2の係数ωtとを用いて、式(4)の線形演算を行い、その線形演算により得られる注目画素の画素値px,y以上の第2の基準値tx,yを、基準値差分器68に供給する。
【0165】
出力部157には、量子化器71から、注目フレームの各画素の量子化データQx,yが供給される。
【0166】
出力部157は、量子化器71からの注目フレームの各画素の量子化データQx,y、ブロック最小値検出部151からの注目フレームの各ブロックの最小値である第1の代表値B、ブロック最大値検出部154からの注目フレームの各ブロックの最大値である第2の代表値T、係数算出部152からの、注目フレームのブロックの画素毎に求められた第1の係数ωb、及び係数算出部155からの、注目フレームのブロックの画素毎に求められた第2の係数ωtを多重化し、注目フレームの符号化データとして出力する。
【0167】
次に、図11のフローチャートを参照して、図10の符号化装置31が行う符号化処理を説明する。
【0168】
ステップS91において、図6のステップS31と同様の処理を行い、処理は、ステップS92に進み、ブロック最小値検出部151は、ブロック化部61からの注目フレームのブロックを、順次、注目ブロックとして、注目ブロックの画素値の最小値を検出し、ブロックの第1の代表値Bとして、係数算出部152、線形予測器153及び出力部157に供給して、処理は、ステップS93に進む。
【0169】
ステップS93において、係数算出部152は、ブロック最大値検出部151から供給された注目フレームのブロックすべての第1の代表値Bに基づいて、第1の基準値bx,yを求めるのに第1の代表値Bとともに用いられる第1の係数ωbを算出し、線形予測器153及び出力部157に供給して、処理は、ステップS94に進む。
【0170】
ステップS94において、ブロック最大値検出部154は、ブロック化部61からの注目フレームのブロックを、順次、注目ブロックとして、注目ブロックの画素値の最大値を検出し、ブロックの第2の代表値Tとして、係数算出部155、線形予測器156及び出力部157に供給して、処理は、ステップS95に進む。
【0171】
ステップS95において、係数算出部155は、ブロック最大値検出部154から注目フレームのブロックすべての第2の代表値Tに基づいて、第2の基準値tx,yを求めるのに第2の代表値Tとともに用いられる第2の係数ωtを算出し、線形予測器156及び出力部157に供給して、処理は、ステップS96に進む。
【0172】
ステップS96において、線形予測器153は、注目フレームのブロックを、順次、注目ブロックとするとともに、注目ブロックの各画素を、順次、注目画素とし、ブロック最小値検出部151から供給される注目フレームのブロックすべての第1の代表値Bと、係数算出部152から供給されるブロックの画素毎の第1の係数ωbとを内蔵するメモリ153aに記憶する。
【0173】
また、ステップS96において、線形予測器153は、メモリ153aに記憶されている第1の代表値Bと、メモリ153aに記憶されている第1の係数ωbとを用いて、式(1)の線形演算を行い、その線形演算により得られる注目画素の画素値px,y以下の第1の基準値bx,yを、基準値差分器68及び画素値差分器70に供給して、処理は、ステップS97に進む。
【0174】
ステップS97において、線形予測器156は、ブロック最大値検出部154から供給される注目フレームのブロックすべての第2の代表値Tと、係数算出部155から供給されるブロックの画素毎の第2の係数ωtと内蔵するメモリ156aに記憶する。
【0175】
また、ステップS97において、線形予測器156は、メモリ156aに記憶されている第2の代表値Tと、メモリ156aに記憶されている第2の係数ωtとを用いて、式(4)の線形演算を行い、その線形演算により得られる注目画素の画素値px,y以上の第2の基準値tx,yを、基準値差分器68に供給する。
【0176】
ステップS97の処理の終了後、処理は、ステップS98に進み、ステップS98乃至ステップS101では、図6のステップS36乃至ステップS39の処理と同様の処理が行われる。
【0177】
そして、注目フレームのすべての画素を注目画素として、ステップS96乃至ステップS101の処理が行われ、注目フレームのすべての画素について、量子化データQx,yが得られると、処理は、ステップS101からステップS102に進む。
【0178】
ステップS102では、出力部157は、量子化器71からの注目フレームの各画素の量子化データQx,y、ブロック最小値検出部151からの注目フレームの各ブロックの最小値である第1の代表値B、ブロック最大値検出部154からの注目フレームの各ブロックの最大値である第2の代表値T、係数算出部152からの、注目フレームのブロックの画素毎に求められた第1の係数ωb、及び係数算出部155からの、注目フレームのブロックの画素毎に求められた第2の係数ωtを多重化することにより、注目フレームの符号化データを構成して出力する。
【0179】
ステップS102の処理の終了後、処理は、ステップS103に進み、線形予測器153は、符号化対象とすべき画像データすべてに対する処理が終了したか否かを判定する。
【0180】
ステップS103において、符号化対象とすべき画像データすべてに対する処理が終了していないと判定された場合、処理は、ステップS91に戻り、ブロック化部61は、そこに供給される新たな1フレームを、新たに、注目フレームとして、以下、同様の処理を繰り返す。
【0181】
一方、ステップS103において、符号化対象とすべき画像データすべてに対する処理が終了したと判定された場合、符号化処理は終了する。
【0182】
図11の符号化処理によれば、上述の式(3)に示すように、差分px,y−bx,yの総和を最小にする第1の係数ωbが求められるとともに、上述の式(6)に示すように、差分tx,y−px,yの総和を最小にする第2の係数ωtが求められる。従って、上述の式(7)に示す基準値差分Dx,yを小とすることができるため、基準値差分Dx,yの大きさに比例する量子化間隔Δの大きさを小にすることができる。
【0183】
その結果、量子化誤差を小にすることができる。
【0184】
さらに、図11の符号化処理では、画素値差分器70において、画素値px,yとの差分が求められる第1の基準値bx,yとして、画素値px,yと第1の基準値bx,yとの差分px,y―bx,yを最小化する第1の基準値bx,y、つまり、画素値px,yに、より近い値の第1の基準値bx,yが求められるので、量子化誤差をより小にすることができる。
【0185】
図12は、図2の復号装置32の第2の構成例を示すブロック図である。
【0186】
なお、図中、図7の場合に対応する部分については同一の符号を付してあり、以下、その説明は、適宜省略する。
【0187】
即ち、図12の復号装置32は、入力部101、記憶部102及び線形予測器103、並びに記憶部104及び線形予測器105に代えて、入力部191、メモリ192aを内蔵する線形予測器192、及びメモリ193aを内蔵する線形予測器193が、それぞれ設けられている他は、図7の場合と同様に構成される。
【0188】
入力部191には、例えば、記録媒体33又は伝送媒体34を介して、図10の符号化装置31が出力した、第1の代表値B、第2の代表値T、第1の係数ωb、第2の係数ωt、及び量子化データQx,yを含む符号化データが、例えば1フレーム単位で入力される。
【0189】
入力部191は、そこに入力された1フレーム分の符号化データを、注目フレームの符号化データとして、その符号化データを、注目フレームのブロック毎の第1の代表値B及び第2の代表値T、注目フレームのブロックの画素毎の第1の係数ωb及び第2の係数ωt、並びに、注目フレームの各画素の量子化データQx,yに分解し、第2の代表値T及び第2の係数ωtを線形予測器192に入力し、第1の代表値B及び第1の係数ωbを線形予測器193に入力するとともに、量子化データQx,yを逆量子化器108に入力する。
【0190】
線形予測器192は、入力部191から供給された注目フレームのブロックすべての第2の代表値Tと注目フレームのブロックの画素毎の第2の係数ωtとを、内蔵するメモリ192aに記憶する。
【0191】
線形予測器192は、メモリ192aに記憶されている第2の代表値Tと第2の係数ωtとを用いて、図10の線形予測器156と同様の処理を行うことにより、図10の線形予測器156が出力する第2の基準値tx,yと同一の第2の基準値tx,yを求め、基準値差分器106に供給する。
【0192】
線形予測器193は、入力部191から供給された注目フレームのブロックすべての第1の代表値Bと注目フレームのブロックの画素毎の第1の係数ωbとを、内蔵するメモリ193aに記憶する。
【0193】
線形予測器193は、メモリ193aに記憶されている第1の代表値Bと第1の係数ωbとを用いて、図10の線形予測器153と同様の処理を行うことにより、図10の線形予測器153が出力する第1の基準値bx,yと同一の第1の基準値bx,yを求め、基準値差分器106及び加算器109に供給する。
【0194】
次に、図13のフローチャートを参照して、図12の復号装置32が行う復号処理を説明する。
【0195】
ステップS121において、入力部191は、そこに入力された1フレーム分の符号化データを、注目フレームの符号化データとして、その符号化データを、注目フレームのブロック毎の第1の代表値B及び第2の代表値T、注目フレームのブロックの画素毎の第1の係数ωb及び第2の係数ωt、並びに、注目フレームの各画素の量子化データQx,yに分解し、第2の代表値T及び第2の係数ωtを線形予測器192に入力し、第1の代表値B及び第1の係数ωbを線形予測器193に入力するとともに、量子化データQx,yを逆量子化器108に入力して、処理は、ステップS122に進む。
【0196】
ステップS122において、線形予測器193は、入力部191から供給された注目フレームのブロックすべての第1の代表値Bと注目フレームのブロックの画素毎の第1の係数ωbとを、内蔵するメモリ193aに記憶する。
【0197】
また、ステップS122において、線形予測器193は、注目フレームの画素を、順次、注目画素とし、メモリ193aに記憶されている第1の代表値Bと第1の係数ωbとを用いて、図10の線形予測器153と同様の処理を行うことにより、図10の線形予測器153が出力する第1の基準値bx,yと同一の第1の基準値bx,yを求め、基準値差分器106及び加算器109に供給して、処理は、ステップS123に進む。
【0198】
ステップS123において、線形予測器192は、入力部191から供給された注目フレームのブロックすべての第2の代表値Tと注目フレームのブロックの画素毎の第2の係数ωtとを、内蔵するメモリ192aに記憶する。
【0199】
また、ステップS123において、線形予測器192は、メモリ192aに記憶されている第2の代表値Tと第2の係数ωtとを用いて、図10の線形予測器156と同様の処理を行うことにより、図10の線形予測器156が出力する第2の基準値tx,yと同一の第2の基準値tx,yを求め、基準値差分器106に供給して、処理は、ステップS124に進み、ステップS124乃至ステップS128において、図8のステップS64乃至ステップS68と同様の処理を行う。
【0200】
ステップS128の処理の終了後、処理は、ステップS129に進み、線形予測器193は、復号対象とすべき符号化データすべてに対する処理が終了したか否かを判定する。
【0201】
ステップS129において、復号対象とすべき符号化データすべてに対する処理が終了していないと判定された場合、処理は、ステップS121に戻り、入力部191は、そこに入力される新たな1フレーム分の符号化データを、新たな注目フレームの符号化データとして、以下、同様の処理を繰り返す。
【0202】
一方、ステップS129において、復号対象とすべき符号化データすべてに対する処理が終了したと判定された場合、復号処理は終了する。
【0203】
図13の復号処理では、図10の符号化装置31により最小化された基準値差分Dx,yに基づいて量子化間隔Δx,yが算出されるため、基準値差分Dx,yの大きさに比例する量子化間隔Δx,yの大きさを小にすることができる。従って、逆量子化による量子化誤差を小とすることができるため、復号画像データのS/Nを向上させることができ、グラデーション部分等の見た目が良好な復号画像データを得ることができる。
【0204】
図3の符号化装置31では、固定の係数ωb(ωt)と、変数である代表値B(T)とを用いて基準値bx,y(tx,y)を算出し、図10の符号化装置31では、変数である係数ωbと、固定の代表値としての、ブロック内の画素値の最小値(最大値)とを用いて基準値bx,yを算出することとしたが、図14に示すように、これ以外の手法によっても、基準値bx,yを算出することができる。
【0205】
図14は、基準値bx,y(tx,y)を算出する4つの手法を示している。
【0206】
基準値bx,yの算出の手法としては(基準値bx,yの算出についても同様)、式(1)の第1の係数ωbm,i及び第1の代表値Biのうちの、第1の係数ωbm,iを固定値とし、第1の代表値Biを変数として、変数である第1の代表値Biを求めてから、第1の係数ωbm,i及び第1の代表値Biを用いて第1の基準値bx,yを算出する手法(1)、第1の係数ωbm,iを変数とし、第1の代表値Biを固定値として、変数である第1の係数ωbm,iを求めてから、第1の係数ωbm,i及び第1の代表値Biを用いて第1の基準値bx,yを算出する手法(2)、第1の係数ωbm,i及び第1の代表値Biの両方を変数として、変数である第1の係数ωbm,i及び第1の代表値Biを求めてから、第1の係数ωbm,i及び第1の代表値Biを用いて第1の基準値bx,yを算出する手法(3a)、並びに、第1の係数ωbm,i及び第1の代表値Biの両方を固定値として、その固定値である第1の係数ωbm,i及び第1の代表値Biを用いて第1の基準値bx,yを算出する手法(3b)がある。
【0207】
図3の符号化装置31では、手法(1)により第1の基準値bx,yが算出され、図10の符号化装置31では、手法(2)により第1の基準値bx,yが算出される。
【0208】
なお、手法(3a)は、手法(1)及び手法(2)を組み合わせることにより実現される。具体的には、手法(3a)では、まず、手法(2)において、第1の係数ωbm,iを変数とし、第1の代表値Biを固定値として、変数である第1の係数ωbm,iを求め、その後、手法(1)において、第1の係数ωbm,iを、手法(2)で求めた値に固定し、第1の代表値Biを変数として、変数である第1の代表値Biを求めた上で、手法(2)により算出された第1の係数ωbm,iと、手法(1)により算出された代表値Biとを用いて、第1の基準値bx,yが算出される。
【0209】
また、上述の実施の形態では、第1の基準値bx,yの最適化(画素値px,yと第1の基準値bx,yとの差分px,y-bx,yを最小化する、画素値px,y以下の値の第1の基準値bx,yを求めること)を行うとともに、第2の基準値tx,yの最適化(第2の基準値tx,yと画素値px,yとの差分tx,y-px,yを最小化する、画素値px,y以上の値の第2の基準値tx,yを求めること)を行うようにしたが、図15及び図16に示すように、最適化は、第1の基準値bx,yと第2の基準値tx,yのうちのいずれか一方だけ行い、他方は、固定値を採用することが可能である。
【0210】
即ち、図15は、第2の基準値tx,yを固定値として、第1の基準値bx,yを最適化した場合を示している。
【0211】
また、図16は、第1の基準値bx,yを固定値として、第2の基準値tx,yを最適化した場合を示している。
【0212】
ここで、図15及び図16において、横軸は、ブロックの画素の位置(x,y)を表し、縦軸は、画素の画素値を表す。
【0213】
また、図15では、固定値の第2の基準値tx,yとして、ブロックの画素値の最大値が採用されており、図16では、固定値の第1の基準値bx,yとして、ブロックの画素値の最小値が採用されている。
【0214】
なお、第1の基準値bx,y及び第2の基準値tx,yが最適化されている場合というのは、第1の基準値bx,y及び基準値差分Dx,y、又は第2の基準値tx,y及び基準値差分Dx,yが最適化されているということもできる。
【0215】
上述した符号化装置31が行う符号化処理(図6及び図11)、及び復号装置32が行う復号処理(図8及び図13)は、専用のハードウエアにより実行させることもできるし、ソフトウエアにより実行させることもできる。上述した符号化処理及び復号処理をソフトウエアにより実行させる場合には、そのソフトウエアを構成するプログラムが、いわゆる組み込み型のコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のコンピュータ等に、プログラム格納媒体からインストールされる。
【0216】
図17は、上述した符号化処理及び復号処理をプログラムにより実行するコンピュータの構成例を示すブロック図である。
【0217】
CPU(Central Processing Unit)901は、ROM(Read Only Memory)902、または記憶部908に記憶されているプログラムに従って各種の処理を実行する。RAM(Random Access Memory)903には、CPU901が実行するプログラムやデータ等が適宜記憶される。これらのCPU901、ROM902、およびRAM903は、バス904により相互に接続されている。
【0218】
CPU901にはまた、バス904を介して入出力インタフェース905が接続されている。入出力インタフェース905には、キーボード、マウス、マイクロホン等よりなる入力部906、モニタ、スピーカ等よりなる出力部907が接続されている。CPU901は、入力部906から入力される指令に対応して各種の処理を実行する。そして、CPU901は、処理の結果を出力部907に出力する。
【0219】
入出力インタフェース905に接続されている記憶部908は、例えばハードディスクからなり、CPU901が実行するプログラムや各種のデータを記憶する。通信部909は、インターネットやローカルエリアネットワーク等のネットワークを介して外部の装置と通信する。
【0220】
入出力インタフェース905に接続されているドライブ910は、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリ等のリムーバブルメディア911が装着されたとき、それらを駆動し、そこに記録されているプログラムやデータ等を取得する。取得されたプログラムやデータは、必要に応じて記憶部908に転送され、記憶される。
【0221】
コンピュータにインストールされ、コンピュータによって実行可能な状態とされるプログラムを格納するプログラム記録媒体は、図17に示すように、磁気ディスク(フレキシブルディスクを含む)、光ディスク(CD-ROM(Compact Disc-Read Only Memory),DVD(Digital Versatile Disc)を含む)、光磁気ディスク、もしくは半導体メモリ等よりなるパッケージメディアであるリムーバブルメディア911、または、プログラムが一時的もしくは永続的に格納されるROM902や、記憶部908を構成するハードディスク等により構成される。プログラム記録媒体へのプログラムの格納は、必要に応じてルータ、モデム等のインタフェースである通信部909を介して、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の通信媒体を利用して行われる。
【0222】
なお、本明細書において、プログラム記録媒体に格納されるプログラムを記述するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
【0223】
また、本明細書において、システムとは、複数の装置により構成される装置全体を表すものである。
【0224】
さらに、本実施の形態では、第1の基準値bx,yを求める式(1)の線形演算に、注目画素のブロックを中心とする3×3個の9ブロックそれぞれの9個の第1の代表値B0乃至B8(図4)と9個の第1の係数ωbm,0乃至ωbm,8を用いることとしたが、第1の基準値bx,yを求めるのに用いる第1の代表値及び第1の係数の個数は、9個に限定されるものではない。
【0225】
即ち、第1の基準値bx,yは、例えば、注目画素のブロックと、その上下左右のそれぞれに隣接するブロックとの合計5ブロックそれぞれの5個の第1の代表値と5個の第1の係数とを用いて求めること等が可能である。第2の基準値tx,yについても同様である。
【0226】
さらに、本実施の形態では、1フレームの画素すべてについて、画素値px,yと第1の基準値bx,yとの差分px,y―bx,yを最小化する第1の基準値bx,yを求めることとしたが、第1の基準値bx,yとしては、例えば、1フレームを構成する一部のブロックの画素すべてや、複数フレームの画素すべてについて、画素値px,yと第1の基準値bx,yとの差分px,y―bx,yを最小化する値を求めることが可能である。第2の基準値tx,yについても同様である。
【0227】
また、本実施の形態では、画素値px,yと第1の基準値bx,yとの差分px,y―bx,yを、画素値差分dx,yとして求め、その画素値差分dx,yを量子化するようにしたが、画素値差分dx,yとしては、画素値px,yと第2の基準値tx,yとの差分px,y―tx,yを採用することができる。この場合、逆量子化によって得られる画素値差分dx,yには、第1の基準値bx,yではなく、第2の基準値tx,yが加算される。
【0228】
以上のように、符号化装置31では、画像をブロック化して得られるブロックの各画素を注目画素として、注目画素の画素値px,y以上の値と、注目画素の画素値px,y以下の値の2つの基準値である第1の基準値bx,yと第2の基準値tx,yとの差である基準値差分Dx,y=tx,y-bx,yを算出し、注目画素の画素値px,yと第1の基準値bx,yとの差分である画素値差分dx,y=px,y-bx,yを算出し、画素値差分dx,yを、基準値差分Dx,yに基づいて量子化し、第1の基準値bx,yを求めるための式(1)の線形演算に用いる演算パラメータとしての第1の代表値B、又は第1の係数ωbであって、演算パラメータを用いた式(1)の線形演算により求められる注目画素の画素値px,yと第1の基準値bx,yとの差分px,y-bx,yを最小化する演算パラメータを求める(第2の基準値tx,yを求めるための式(4)の線形演算に用いる演算パラメータとしての第2の代表値T、又は第2の係数ωtであって、演算パラメータを用いた式(4)の線形演算により求められる第2の基準値tx,yと注目画素の画素値px,yとの差分tx,y-px,yを最小化する演算パラメータを求める)ので、量子化誤差を小にし、S/Nの良い復号画像データを得ることができる。
【0229】
なお、本実施の形態は、上述した実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能である。
【図面の簡単な説明】
【0230】
【図1】従来のADRCを説明する図である。
【図2】本発明を適用した画像伝送システムの一実施の形態の構成例を示すブロック図である。
【図3】図2の符号化装置31の第1の構成例を示すブロック図である。
【図4】第1の基準値bx,yの求め方を説明する図である。
【図5】基準値差分Dx,yの総和が最小となるように、最適化された第1の基準値bx,y及び第2の基準値tx,yを示す図である。
【図6】図3の符号化装置31が行う符号化処理を説明するフローチャートである。
【図7】図2の復号装置32の第1の構成例を示すブロック図である。
【図8】図7の復号装置32が行う復号処理を説明するフローチャートである。
【図9】復号画像データのS/Nを示す図である。
【図10】図2の符号化装置31の第2の構成例を示すブロック図である。
【図11】図10の符号化装置31が行う符号化処理を説明する図である。
【図12】図2の復号装置32の第2の構成例を示すブロック図である。
【図13】図12の復号装置32が行う復号処理を説明するフローチャートである。
【図14】第1の基準値bx,y及び第2の基準値tx,yを算出する4つの手法を示す図である。
【図15】固定の第2の基準値tx,yと最適化された第1の基準値bx,yとを示す図である。
【図16】固定の第1の基準値bx,yと最適化された第2の基準値tx,yとを示す図である。
【図17】コンピュータの構成例を示すブロック図である。
【符号の説明】
【0231】
1 画像伝送システム, 31 符号化装置, 32 復号装置, 61 ブロック化部, 62 ブロック代表値算出部, 63 記憶部, 64 線形予測器, 65 ブロック代表値算出部, 66 記憶部, 67 線形予測器, 68 基準値差分器, 69 量子化間隔算出部, 70 画素値差分器, 71 量子化器, 72 出力部, 101 入力部, 102 記憶部, 103 線形予測器, 104 記憶部, 105 線形予測器, 106 基準値差分器, 107 量子化間隔算出部, 108 逆量子化器, 109 加算器, 110 タイリング部, 151 ブロック最小値検出部, 152 係数算出部, 153 線形予測器, 154 ブロック最大値検出部, 155 係数算出部, 156 線形予測器, 157 出力部, 191 入力部, 192,193 線形予測器

【特許請求の範囲】
【請求項1】
画像を符号化する符号化装置において、
前記画像を複数のブロックにブロック化するブロック化手段と、
前記ブロックの各画素を注目画素として、前記注目画素の画素値以上の値と、前記注目画素の画素値以下の値の2つの基準値を取得する基準値取得手段と、
2つの前記基準値どうしの差である基準値差分を算出する基準値差分算出手段と、
前記注目画素の画素値と、前記基準値との差分である画素値差分を算出する画素値差分算出手段と、
前記画素値差分を、前記基準値差分に基づいて量子化する量子化手段と、
前記基準値を求めるための所定の演算に用いる演算パラメータであって、前記演算パラメータを用いた前記所定の演算により求められる前記基準値と前記注目画素の画素値との差分を最小化する前記演算パラメータを求める演算パラメータ算出手段と、
前記量子化手段による量子化結果、及び前記演算パラメータを、前記画像の符号化結果として出力する出力手段と
を備える符号化装置。
【請求項2】
前記所定の演算は、固定の係数と、前記ブロックを代表する代表値とを用いた線形演算であり、
前記演算パラメータ算出手段は、前記代表値を、前記演算パラメータとして求める
請求項1に記載の符号化装置。
【請求項3】
2つの前記基準値のうちの、前記注目画素の画素値以下の基準値を第1の基準値とするとともに、前記注目画素の画素値以上の基準値を第2の基準値とするとき、
前記演算パラメータ算出手段は、前記第1の基準値を求めるのに用いられる第1の代表値と、前記第2の基準値を求めるのに用いられる第2の代表値とを、前記ブロック毎に求め、
前記基準値取得手段は、前記固定の係数と前記第1の代表値とを用いて、前記第1の基準値を求めるとともに、前記固定の係数と前記第2の代表値とを用いて、前記第2の基準値を求めることにより、前記第1及び第2の基準値を取得する
請求項2に記載の符号化装置。
【請求項4】
前記所定の演算は、所定の係数と、前記ブロックを代表する代表値としての、前記ブロックの画素値の最大値又は最小値とを用いた線形演算であり、
前記演算パラメータ算出手段は、前記所定の係数を、前記演算パラメータとして求める
請求項1に記載の符号化装置。
【請求項5】
2つの前記基準値のうちの、前記注目画素の画素値以下の基準値を第1の基準値とするとともに、前記注目画素の画素値以上の基準値を第2の基準値とし、
かつ、前記ブロックの画素値の最小値を第1の代表値とするとともに、前記ブロックの画素値の最大値を第2の代表値とするとき、
前記演算パラメータ算出手段は、前記第1の基準値を求めるのに前記第1の代表値とともに用いられる第1の係数と、前記第2の基準値を求めるのに前記第2の代表値とともに用いられる第2の係数とを求め、
前記基準値取得手段は、前記第1の係数と前記第1の代表値とを用いて、前記第1の基準値を求めるとともに、前記第2の係数と前記第2の代表値とを用いて、前記第2の基準値を求めることにより、前記第1及び第2の基準値を取得する
請求項4に記載の符号化装置。
【請求項6】
画像を符号化する符号化装置の符号化方法において、
前記画像を複数のブロックにブロック化し、
前記ブロックの各画素を注目画素として、前記注目画素の画素値以上の値と、前記注目画素の画素値以下の値の2つの基準値を取得し、
2つの前記基準値どうしの差である基準値差分を算出し、
前記注目画素の画素値と、前記基準値との差分である画素値差分を算出し、
前記画素値差分を、前記基準値差分に基づいて量子化し、
前記基準値を求めるための所定の演算に用いる演算パラメータであって、前記演算パラメータを用いた前記所定の演算により求められる前記基準値と前記注目画素の画素値との差分を最小化する前記演算パラメータを求め、
前記画素値差分の量子化結果、及び前記演算パラメータを、前記画像の符号化結果として出力する
ステップを含む符号化方法。
【請求項7】
画像を符号化する符号化装置として、コンピュータを機能させるプログラムにおいて、
前記画像を複数のブロックにブロック化するブロック化手段と、
前記ブロックの各画素を注目画素として、前記注目画素の画素値以上の値と、前記注目画素の画素値以下の値の2つの基準値を取得する基準値取得手段と、
2つの前記基準値どうしの差である基準値差分を算出する基準値差分算出手段と、
前記注目画素の画素値と、前記基準値との差分である画素値差分を算出する画素値差分算出手段と、
前記画素値差分を、前記基準値差分に基づいて量子化する量子化手段と、
前記基準値を求めるための所定の演算に用いる演算パラメータであって、前記演算パラメータを用いた前記所定の演算により求められる前記基準値と前記注目画素の画素値との差分を最小化する前記演算パラメータを求める演算パラメータ算出手段と、
前記量子化手段による量子化結果、及び前記演算パラメータを、前記画像の符号化結果として出力する出力手段と
して、コンピュータを機能させるプログラム。
【請求項8】
画像を符号化した符号化データを復号する復号装置において、
前記符号化データは、
前記画像をブロック化して得られるブロックの各画素を注目画素として、前記注目画素の画素値以上の値と、前記注目画素の画素値以下の値の2つの基準値どうしの差である基準値差分を算出し、
前記注目画素の画素値と、前記基準値との差分である画素値差分を算出し、
前記画素値差分を、前記基準値差分に基づいて量子化し、
前記基準値を求めるための所定の演算に用いる演算パラメータであって、前記演算パラメータを用いた前記所定の演算により求められる前記基準値と前記注目画素の画素値との差分を最小化する前記演算パラメータを求める
ことにより得られる前記画素値差分の量子化結果、及び前記演算パラメータを含み、
前記演算パラメータを用いて前記所定の演算を行うことにより、2つの前記基準値を取得する基準値取得手段と、
2つの前記基準値どうしの差である前記基準値差分を取得する基準値差分取得手段と、
前記基準値差分に基づいて、前記量子化結果を逆量子化することにより、前記画素値差分を求める逆量子化手段と、
前記画素値差分と、前記基準値とを加算する加算手段と
を備える復号装置。
【請求項9】
前記演算パラメータは、前記ブロックを代表する代表値であり、
前記基準値取得手段は、前記所定の演算として、固定の係数と、前記代表値とを用いた線形演算を行うことにより、前記基準値を取得する
請求項8に記載の復号装置。
【請求項10】
2つの前記基準値のうちの、前記注目画素の画素値以下の基準値を第1の基準値とするとともに、前記注目画素の画素値以上の基準値を第2の基準値とするとき、
前記演算パラメータは、前記ブロック毎に求められた、前記第1の基準値を求めるのに用いられる第1の代表値と、前記第2の基準値を求めるのに用いられる第2の代表値であり、
前記基準値取得手段は、前記固定の係数と前記第1の代表値とを用いて、前記第1の基準値を求めるとともに、前記固定の係数と前記第2の代表値とを用いて、前記第2の基準値を求めることにより、前記第1及び第2の基準値を取得する
請求項9に記載の復号装置。
【請求項11】
前記演算パラメータは、所定の係数であり、
前記基準値取得手段は、前記所定の演算として、前記所定の係数と、前記ブロックを代表する代表値としての、前記ブロックの画素値の最小値又は最大値とを用いた線形演算を行うことにより、前記基準値を取得する
請求項8に記載の復号装置。
【請求項12】
2つの前記基準値のうちの、前記注目画素の画素値以下の基準値を第1の基準値とするとともに、前記注目画素の画素値以上の基準値を第2の基準値とし、
かつ、前記ブロックの画素値の最小値を第1の代表値とするとともに、前記ブロックの画素値の最大値を第2の代表値とするとき、
前記演算パラメータは、前記第1の基準値を求めるのに前記第1の代表値とともに用いられる第1の係数と、前記第2の基準値を求めるのに前記第2の代表値とともに用いられる第2の係数であり、
前記基準値取得手段は、前記第1の係数と前記第1の代表値とを用いて、前記第1の基準値を求めるとともに、前記第2の係数と前記第2の代表値とを用いて、前記第2の基準値を求めることにより、前記第1及び第2の基準値を取得する
請求項11に記載の復号装置。
【請求項13】
画像を符号化した符号化データを復号する復号装置の復号方法において、
前記符号化データは、
前記画像をブロック化して得られるブロックの各画素を注目画素として、前記注目画素の画素値以上の値と、前記注目画素の画素値以下の値の2つの基準値どうしの差である基準値差分を算出し、
前記注目画素の画素値と前記基準値との差分である画素値差分を算出し、
前記画素値差分を、前記基準値差分に基づいて量子化し、
前記基準値を求めるための所定の演算に用いる演算パラメータであって、前記演算パラメータを用いた前記所定の演算により求められる前記基準値と前記注目画素の画素値との差分を最小化する前記演算パラメータを求める
ことにより得られる前記画素値差分の量子化結果、及び前記演算パラメータを含み、
前記演算パラメータを用いて前記所定の演算を行うことにより、前記基準値を取得し、
2つの前記基準値どうしの差である前記基準値差分を取得し、
前記基準値差分に基づいて、前記量子化結果を逆量子化することにより、前記画素値差分を求め、
前記画素値差分と、前記基準値とを加算する
ステップを含む復号方法。
【請求項14】
画像を符号化した符号化データを復号する復号装置として、コンピュータを機能させるプログラムにおいて、
前記符号化データは、
前記画像をブロック化して得られるブロックの各画素を注目画素として、前記注目画素の画素値以上の値と、前記注目画素の画素値以下の値の2つの基準値どうしの差である基準値差分を算出し、
前記注目画素の画素値と前記基準値との差分である画素値差分を算出し、
前記画素値差分を、前記基準値差分に基づいて量子化し、
前記基準値を求めるための所定の演算に用いる演算パラメータであって、前記演算パラメータを用いた前記所定の演算により求められる前記基準値と前記注目画素の画素値との差分を最小化する前記演算パラメータを求める
ことにより得られる前記画素値差分の量子化結果、及び前記演算パラメータを含み、
前記演算パラメータを用いて前記所定の演算を行うことにより、前記基準値を取得する基準値取得手段と、
2つの前記基準値どうしの差である前記基準値差分を取得する基準値差分取得手段と、
前記基準値差分に基づいて、前記量子化結果を逆量子化することにより、前記画素値差分を求める逆量子化手段と、
前記画素値差分と、前記基準値とを加算する加算手段と
して、コンピュータを機能させるプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate


【公開番号】特開2009−65421(P2009−65421A)
【公開日】平成21年3月26日(2009.3.26)
【国際特許分類】
【出願番号】特願2007−231128(P2007−231128)
【出願日】平成19年9月6日(2007.9.6)
【出願人】(000002185)ソニー株式会社 (34,172)
【Fターム(参考)】