(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6684229
(24)【登録日】2020年3月31日
(45)【発行日】2020年4月22日
(54)【発明の名称】ウェーブレット変換行列に適応可能な高精度化及び量子化方法
(51)【国際特許分類】
H04N 19/63 20140101AFI20200413BHJP
H04N 1/41 20060101ALI20200413BHJP
H03M 7/30 20060101ALI20200413BHJP
【FI】
H04N19/63
H04N1/41
H03M7/30 A
【請求項の数】26
【全頁数】17
(21)【出願番号】特願2016-571084(P2016-571084)
(86)(22)【出願日】2015年7月9日
(65)【公表番号】特表2017-525185(P2017-525185A)
(43)【公表日】2017年8月31日
(86)【国際出願番号】FR2015000141
(87)【国際公開番号】WO2015185810
(87)【国際公開日】20151210
【審査請求日】2018年7月2日
(31)【優先権主張番号】14/01280
(32)【優先日】2014年6月4日
(33)【優先権主張国】FR
(73)【特許権者】
【識別番号】516106748
【氏名又は名称】コリン,ジャン−クロード
(74)【代理人】
【識別番号】110002398
【氏名又は名称】特許業務法人小倉特許事務所
(72)【発明者】
【氏名】ジェルヴェ,タン マルク−エリック
(72)【発明者】
【氏名】ルベ,ブルノ
(72)【発明者】
【氏名】ベッソー,ニコラス
(72)【発明者】
【氏名】ギミオ,イヴ
(72)【発明者】
【氏名】プティフィス,ミカエル
(72)【発明者】
【氏名】ローク,セバスティアン
【審査官】
岩井 健二
(56)【参考文献】
【文献】
特表2011−508497(JP,A)
【文献】
特開2011−061527(JP,A)
【文献】
特開2008−017393(JP,A)
【文献】
特開2002−058026(JP,A)
【文献】
特開2000−201353(JP,A)
【文献】
Chang-Hoon Son et al.,Low complexity embedded compression algorithm for reduction of memory size and bandwidth requirements in the JPEG2000 encoder,IEEE Transactions on Consumer Electronics,IEEE,2010年11月,Vol.56, No.4,pp.2421 - 2429
【文献】
Jie Guo et al.,Efficient VLSI architecture of JPEG2000 encoder,2013 6th International Congress on Image and Signal Processing (CISP),IEEE,2013年12月,pp.192-197
(58)【調査した分野】(Int.Cl.,DB名)
H04N 19/00 − 19/98
H04N 1/41 − 1/419
H03M 7/30 − 7/50
(57)【特許請求の範囲】
【請求項1】
原行列(X)の形式で表される画像の成分のエントロピーを減少するためのステップを含む,ディジタル画像を圧縮するための方法であって,
前記原行列を近似行列(LL)と詳細行列(LH,HH,HL)に分解された変換行列(T)へ変換するウェーブレット変換を使用するステップを含み,
量子化係数は,前記詳細行列の各々についての各詳細行列に対応し,
前記ウェーブレット変換は,1以上である小数点以下の第1の桁数(D)(D≧1)まで含めた固定小数点の数値を使用して計算され,各ウェーブレットレベルについての前記詳細行列の各々に対応する前記量子化係数の少なくとも1つは,1より大きく,
後続するウェーブレットレベルの詳細行列の各々の量子化係数の各々が1の場合,前記固定小数点の数値でのウェーブレットレベルの処理の最後に,前記近似行列の数値が整数値に変換され,また,それ以外の場合には,固定小数点の数値で保持されることを特徴とする方法。
【請求項2】
前記ウェーブレットレベルの各々における前記詳細行列の量子化係数の各々は,以前のウェーブレットレベルの等価な行列の係数以下であるが,常に1以上であることを特徴とする請求項1記載の方法。
【請求項3】
前記固定小数点の数値での前記ウェーブレットレベルの処理の終了時に,前記詳細行列の数値は,該詳細行列に関連する前記量子化係数に従って量子化されると共に,整数値に変換されて,演算で使用された固定小数点の数値の,小数点以下の数値が除外されることを特徴とする請求項1又は2記載の方法。
【請求項4】
使用される量子化器は,同一のスカラー量子化器であり,量子化される数値に拘わらず,前記各詳細行列に対して固有であることを特徴とする請求項3記載の方法。
【請求項5】
第1のウェーブレットレベルの前記詳細行列の量子化係数の少なくとも1つが1より大きい場合,前記原行列(X)の全ての数値は,第1のウェーブレットレベルの計算の前に,前記固定小数点の数値に変換されることを特徴とする請求項1乃至4何れか1項記載の方法。
【請求項6】
処理される前記原行列が,比色変換の結果として前記第1の桁数(D)より高い精度を有する固定小数点の数値となるときには,前記第1の桁数を取得するために,固定小数点の数値は,桁数を減少させて取得することを特徴とする請求項5記載の方法。
【請求項7】
前記変換行列(T)から復元行列(XR)又は中間復元行列を計算するために,前記変換行列(T)の逆ウェーブレット変換を含み,前記逆ウェーブレット変換の計算は,1以上である小数点以下の第2の桁数まで含めた固定小数点の数値を使用して行われ,各逆ウェーブレットレベルについての各詳細行列の各々に対応する量子化係数の少なくとも1つは,1より大きいことを特徴とする請求項1乃至6何れか1項記載の方法。
【請求項8】
固定小数点の数値で処理される前記逆ウェーブレット変換中,該逆ウェーブレット変換が適用される前記変換行列(T)の数値は,前記変換行列(T)の数値が初期状態で整数値の場合,前記固定小数点の数値に変換されることを特徴とする請求項7記載の方法。
【請求項9】
固定小数点の数値で処理される逆ウェーブレットレベルの逆ウェーブレット変換中,前記詳細行列の数値は固定小数点の数値に変換され,該逆ウェーブレット変換の前に逆量子化されることを特徴とする請求項7又は8記載の方法。
【請求項10】
前記復元行列(XR)は,利用可能な全ての前記逆ウェーブレットレベルで,逆ウェーブレット変換,逆量子化,及び整数値と小数点以下の前記第2の桁数まで含めた前記固定小数点の数値との変換により取得されることを特徴とする請求項7乃至9何れか1項記載の方法。
【請求項11】
第1のウェーブレットレベルが固定小数点の数値で処理された場合,取得される復元行列(XR)の数値は,小数点以下の前記第2の桁数と等しい桁数を含む精度を有する固定小数点の数値であることを特徴とする請求項7乃至10何れか1項記載の方法。
【請求項12】
前記復元行列(XR)に対する後続の処理のために,前記復元行列の数値の各々は,整数値に変換されることを特徴とする請求項11記載の方法。
【請求項13】
前記中間復元行列は,利用可能な逆ウェーブレットレベルの総数未満のレベル数で,逆ウェーブレット変換,逆量子化及び整数値と小数点以下の前記第2の桁数まで含めた前記固定小数点の数値間の変換により取得されることを特徴とする請求項7乃至9何れか1項記載の方法。
【請求項14】
生成された最後の逆ウェーブレット変換に対応する逆ウェーブレットレベルが固定小数点の数値で処理された場合,取得された中間復元行列の数値は,小数点以下の前記第2の桁数に等しい桁数を含んでいる精度を有する前記固定小数点の数値であることを特徴とする請求項7,8,9又は13記載の方法。
【請求項15】
前記中間復元行列の処理に続いて,前記復元行列の数値の各々は,整数値に変換されることを特徴とする請求項14記載の方法。
【請求項16】
全ての圧縮データが利用可能でない場合,全てのデータが利用可能な逆ウェーブレットレベルに対応するレベル数を有する中間復元行列が使用されることを特徴とする請求項13乃至15何れか1項記載の方法。
【請求項17】
前記復元行列(XR)より低解像度への適用に対応するために,最小レベル数の逆ウェーブレット変換で得た中間復元行列を使用することで,少なくとも前記低解像度の達成を可能にすることを特徴とする請求項13乃至16何れか記載の方法。
【請求項18】
逆ウェーブレット変換に続いて前記逆ウェーブレット変換に使用する桁数より大きい桁数の固定小数点の数値で逆比色変換が行われるとき,復元行列の値は直接,変換精度を有する固定小数点の数値に変換されることを特徴とする請求項7乃至17何れか1項記載の方法。
【請求項19】
前記ウェーブレット変換における固定小数点の計算を実行するために,前記原行列(X)の各数値が,前記第1の桁数(D),左方向にシフトされることを特徴とする請求項1乃至18何れか1項記載の方法。
【請求項20】
前記ウェーブレット変換における固定小数点の数値による計算を行うために,前記原行列(X)の各数値は,2を基数とする10の前記第1の桁数(D)乗である(10D)2が乗算されることを特徴とする請求項1乃至18何れか1項記載の方法。
【請求項21】
前記ウェーブレット変換における固定小数点の数値による計算が終了すると,近似行列及び詳細行列の各数値は,前記第1の桁数(D)右へシフトされることを特徴とする請求項1乃至20いずれか1項記載の方法。
【請求項22】
前記ウェーブレット変換における固定小数点の数値による計算が終了すると,近似行列及び詳細行列の各数値は,2を基数とする10の前記第1の桁数(D)のマイナス乗である(10-D)2が乗算されることを特徴とする請求項1乃至20何れか1項記載の方法。
【請求項23】
前記第1の桁数(D)及び第2の桁数が,同一であることを特徴とする請求項7乃至22何れか1項記載の方法。
【請求項24】
前記原行列(X)は,少なくとも部分的に画像を表すことを特徴とする請求項1乃至23何れか1項記載の方法。
【請求項25】
前記原行列(X)は,画像のY,Cb及びCrの1つを表すことを特徴とする請求項1乃至24何れか1項記載の方法。
【請求項26】
前記ウェーブレット変換が,リフティングスキームを有するCohen-Daubechies-Feauveau(CDF)5/3変換であることを特徴とする請求項1乃至25何れか1項記載の方法。
【発明の詳細な説明】
【0001】
本発明は,行列の符号化の分野に関するもので,特に,ディジタルファイル形式の画像又はビデオ媒体の符号化に適用可能である。更に,詳細には,以下に定義するようなシャノンの数式により定義されたこれらのファイルのエントロピーの減少方法に関する。
【0002】
シャノンエントロピーは信号中に存在する情報の「量」を定義しており,それ故,算術符号化又はハフマン符号化のような二値符号化技術により,この信号を符号化するのに必要とされるビットの量の正確な情報を与える。より反復的及び定期的に信号中の値が分布する程,この信号のエントロピーは減少する。エントロピーを計算するための一般的な数式は,以下の通りである。
ここで,P
iは各符号の出現確率を示している。
【0003】
この結果から導かれるディジタルファイルの重さ(ビット数)の減少方法は,そのエントロピーを減少させることである。
【0004】
ウェーブレット変換はディジタルファイルの重さを減少させるために使用される。これは,特に,JPEG2000のように,或るディジタル画像の圧縮フォーマットの形に組み入れられる。
【0005】
行列のウェーブレット変換は,この行列を近似行列又はL行列と呼ばれる行列と詳細行列又はH行列と呼ばれる行列とに分割することを含む。これらの行列の各々は,原行列の略半分の値を含む。近似L行列は原行列の「縮小イメージ」に対応し,詳細H行列は行列のサイズを減少させるために除去された詳細部分に対応する。
【0006】
二次元ウェーブレット変換のコンテキストでは,ウェーブレット変換を水平方向又は垂直方向に用いることが可能である。通常,変換は,L型の近似行列及びH型の詳細行列を取得するために一方向(例えば垂直)に実行され,次いで,各L及びH行列で異なる方向(例えば水平方向)に実行される。近似L行列に第2の変換を適用することにより,近似LL行列及び詳細LH行列が生成される。詳細H行列に第2の変換を適用することにより,2つの詳細HL及びHH行列が生成される。以下では,ウェーブレットレベルは,上述の説明のように,1つの近似行列LLと3つの詳細行列HL,LH,及びHHを取得するための両方向での連続的な変換の適用を意味する。
【0007】
画像を二次元で圧縮するためにウェーブレットを使用する際,通常,最後のレベルで,エントロピーを減少させるために,詳細LH,HL,及びHH行列は量子化されるが,一方で新たなウェーブレットのレベルがLL行列に適用できる。従って,連続する近似LL行列に必要とされるレベルの数だけ適用できる。
【0008】
JPEG2000はまた,デッドゾーンスカラー量子化を使用する。幾つかのウェーブレット変換はロスレスであるが,各ウェーブレットのレベルに量子化を適用することは,最初は圧縮の際に,次いで圧縮されたディジタルファイルを復元する際に,連続したレベルを経る際に丸め誤差の蓄積を招く。この丸めの問題は,レベルに関連して詳細LH,HL,及びHH行列が量子化されるときにのみ引き起こされる。
【0009】
従って,本発明の目的は,ウェーブレット変換を使用する間のディジタルファイルの圧縮での丸め誤差を減少するための方法を提供することである。
【0010】
本明細書では,演算は二進法の数値で行われるように設計されているが,説明を簡単にするために,別段の説明がない限り,数値は10を基数にして記載している。2を基数として数値を記載する場合,そのように明確に表示しており,よって,2を基数とする1000は(1000)
2として示されることになる。
【0011】
原行列のエントロピーを減少するための本発明による方法は,
前記原行列を
近似行列(LL)と詳細行列(LH,HH,HL)に分解された変換行列へ変換するウェーブレット変換を使用するステップを含み,
量子化係数は,
前記詳細行列の各々についての各詳細行列に対応し,
前記ウェーブレット変換は,1以上である小数点以下の第1の桁数まで含めた固定
小数点の数値を使用して計算され,少なくとも各ウェーブレットレベルについての前記詳細行列の前記量子化係数の少なくとも1つは,1より大きいことを特徴とする。
【0012】
好ましくは,前記ウェーブレットレベルの各々における詳細行列の量子化係数は,以前のレベルの等価な行列の係数以下である。好ましくは,それはまた,同一のスカラー量子化器であり,即ち除算される値が何であっても,各行列に対して固有である。
【0013】
前記固定小数点
の数値での前記ウェーブレットレベルの処理の終了時に,前記詳細行列の数値は,該詳細行列の前記量子化係数に従って量子化され得ると共に,整数値に変換されて,固定小数点
の数値での演算で使用された
,小数点以下の桁が
除外される。固定小数点でのウェーブレットレベルの処理の最後に,新しいウェーブレットレベルが近似行列に適用された場合,後続するウェーブレットレベルの詳細行列の各々の量子化係数の各々が1の場合は,前記近似行列の数値が整数値に変換さ
れ,また,
それ以外の場合には,固定小数点の数値で保持される。最後の
ウェーブレットレベルが固定小数点
の数値で処理される場合,最後の
ウェーブレットレベルの終わりに,最後の近似LL行列は
前記整数値に変換される。
【0014】
第1の
ウェーブレットレベルの詳細行列の量子化係数の少なくとも1つが1より大きい場合,原行列の全ての数値は,第1のウェーブレッ
トレベルの計算の前に,前記固定小数点の数値に変換される。
【0015】
処理される原行列が,比色変換の結果として前記第1の桁数より高い精度を有する固定小数点の数値となるときには,前記第1の桁数を取得するために,固定小数点の数値は,好ましくは桁数を減少させて取得する。
【0016】
前記変換行列から復元行列を計算するために,前記変換行列の逆ウェーブレット変換を含み,前記逆ウェーブレット変換の計算は,1以上であ
る小数点以下の第2の桁数まで含めた固定
小数点の数値を使用して行われ,各逆ウェーブレットレベルについての各詳細行列の量子化係数の少なくとも1つは,1より大きい。
【0017】
固定小数点
の数値で処理される
前記逆ウェーブレッ
ト変換中,前記詳細行列の数値は固定小数点の数値に変換され,逆ウェーブレット変換の前に逆量子化され得る。同様に,この
逆ウェーブレットレベルの近似行列が整数の場合,
該逆ウェーブレッ
トレベルが行われる前に,固定小数点
の数値に変換されることになり,これは,続く
逆ウェーブレットレベルで使用される復元近似行列を与えることになる。
【0018】
有利には,前記復元行列は,利用可能な全ての
前記逆ウェーブレットレベルで,逆ウェーブレット変換,逆量子化,及び整数
値と固定小数点
の数値との変換により取得される。
【0019】
有利には,前記中間復元行列は,利用可能な
前記逆ウェーブレットレベルの
総数未満のレベ
ル数で,逆ウェーブレット変換,逆量子化及び整数
値と固定小数点
の数値間の変換により取得され得る。実施された最後の逆ウェーブレット変換に対応する
逆ウェーブレットレベルが固定小数点の数値で処理された場合,取得された中間復元行列の数値は,好ましくは,小数点以下の前記第2の桁数に等しい桁数を含んでいる精度を有する前記固定小数点の数値である。前記中間復元行列の処理に続いて,前記復元行列の数値の各々は,整数値に変換され得る。
【0020】
全ての圧縮データが利用可能でない場合,全てのデータが利用可能な
逆ウェーブレットレベルに対応するレベ
ル数を有する中間復元行列が使用される。同様に,前記復元行列より低い解像度への適用に対応するために,最小レベル数値の中間復元行列を使用することで,少なくとも前記低解像度の達成を可能にすることができる。
【0021】
第1の
逆ウェーブレットレベルが固定小数点の数
値で処理された場合,取得される復元行列の数
値は,小数点以下第2の桁数に等しい桁数を含んでいる精度を有する固定小数点の数
値となり得る。
【0022】
このように復元された行列のそれに続く処理のために,前記復元行列の値の各々は,整数値に変換できる。逆ウェーブレット変換は,逆ウェーブレット変換に使用する桁数より大きい桁数の固定小数点の数
値で逆カラーメトリック変換に続けることができる。
【0023】
固定小数点の数値による計算を実行するために
,原行列(X)の値の各々を
前記第1の桁数(D)分,左にシフトすることが可能である。或いは,原行列(X)の各数値
には,2を基数と
する10の
前記第1の桁数(D
)乗
である(10
D)
2を乗算可能である。
【0024】
固定小数点の数値による計算が終了すると,好ましく
は近似行列の各数値は,
前記第1の桁数(D)分右へシフトされ,又は各行列の各数値は,2を基数と
する10の
前記第1の桁数(D)の
マイナス乗
である(10
-D)
2が乗算される。
【0025】
変換行列から復元された行列として原行列を復元するために,好ましくは,逆ウェーブレット変換は,固定小数点で小数点以下少なくとも1の第2の桁数を使用し,少なくとも各ウェーブレットレベルで1より大きい量子化係数を有する少なくとも1つの詳細行列を有する。
【0026】
原行列は,少なくとも部分的に画像を表し,例えば,画像のY,Cb及びCrの1つを表してもよい。好ましくは,ウェーブレット変換の計算に先立ち,YCbCr変換の結果により生じた第1の桁数Dが保持される。
【0027】
有益なことに,YCrCb変換は,桁数Dより大きい精度で行うことができる。この場合,データの精度は,桁数Dが減じられるため,減少される。
【0028】
前記ウェーブレット変換が,リフティングスキームを有するCohen-Daubechies-Feauveau(CDF)5/3変換であり得る。
【図面の簡単な説明】
【0029】
なし
【0030】
本発明の幾つかの実施形態を,添付図面を参照して以下に説明するが,この例に限定されるものではない。
【0031】
図1は,8行に各8画素が配置された64画素の行列を形成する白黒の原画像の例を示す。
【0032】
図2Aは,
図1に示した画像の行列を示す。この図において,各セルは画素の輝度のリテラル値を含み,行列中のセルの位置が示されている。
【0033】
図2Bは,各セルが原画像に対応する画素の輝度を表す0から255までの原数値を含む同様の原行列Xを示す。
【0034】
図2B,
図3B,
図4B,
図5B,
図6B,
図7B,
図8B,
図9B,
図10B,
図11B,
図12B,
図13B,及び
図14Bは,従来の技術の方法の説明であり,
図2C,
図3C,
図4C,
図5C,
図6C,
図7C,
図8C,
図9C,図,10C,
図11C,
図12C,
図13C,
図14C,及び
図15Cは,本発明に係る方法の説明である。
【0035】
図3A及び
図3Bは,それぞれ,第1のウェーブレットレベルの計算を行う第1のステップの終了時における部分行列のリテラル値及び数値を示し,従来技術の方法で
図2Bの行列の値に垂直ウェーブレット変換を適用したものである。
【0036】
図4A及び
図4Bは,それぞれ,第1のウェーブレットレベルの計算を行う第2のステップ中に取得されたリテラル値及び数値の部分行列を示し,これは,従来技術の方法で
図3Bの各部分行列の数値に水平ウェーブレット変換を適用したものである。
【0037】
図5B及び
図6Bは,従来技術の方法で第2のウェーブレットレベルの計算中に,垂直ウェーブレット変換を行い,次いで,水平ウェーブレット変換を行った後に,それぞれ取得された部分行列を示す。
【0038】
図7Bは,部分行列の量子化を示し,従って,従来の技術による変換の最後における全ての部分行列を表す。
【0039】
図8Bは,原行列と同じサイズの行列中に,従来技術により変換され及び量子化された値を結合させたものを示す。
【0040】
図2Cは,本発明の方法において
図2Bの行列の値を左シフトする事前ステップを示す。
【0041】
図3A及び
図3Cは,それぞれ,第1のウェーブレットレベルを計算する第1のステップ中に取得されたリテラル値及び数値の部分行列を示し,本発明の方法により
図2Bに示される原行列Xの数値に垂直ウェーブレット変換を適用したものである。
【0042】
図4A及び
図4Cは,それぞれ,第1のウェーブレットレベルを計算する第2のステップ中に取得されたリテラル値及び数値の部分行列を示し,本発明の方法により
図3Cに示される部分行列L1及びH1の数値に水平ウェーブレット変換を適用したものである。
【0043】
図5C及び
図6Cは,それぞれ,本発明の方法による第2のウェーブレットレベルの計算中に,垂直ウェーブレット変換からなる第1のステップの後に取得された部分行列,及び水平ウェーブレット変換からなる第2のステップの後に取得された部分行列を示す。
【0044】
図7Cは,変換された部分行列の量子化を示し,従って,本発明の方法による変換の最後における全ての部分行列を表す。
【0045】
図8Cは,原行列と同じサイズの行列中に,本発明の方法で変換され及び量子化された値を結合させたものを示す。
【0046】
図10B,
図11B,
図12B,及び
図13Bは,XRZ行列の復元のための各種のステップを示し,
図1の画像の画素の復元された輝度を示している。
【0047】
図10C,
図11C,
図12C,
図13C,及び
図14Cは,XR行列の復元のための各種のステップを示し,
図1の画像の画素の復元された輝度を示している。
【0048】
図14B及び
図15Cは,それぞれ,従来技術及び本発明の方法における誤差の行列を示し,そのそれぞれのセルは,復元された値と対応する原値との誤差を示す。
【0049】
本発明に係る方法の記述は,ディジタル画像の圧縮の分野に対するものである。このため,
図1は,8行8列の画像行列に対応する原白黒画像を示している。
【0050】
図2Aは,原画像の画素の明るさの値を表すX行列を示しており,水平ラインi(以下,行)と垂直ラインj(以下,列)との交点で配置された行列の各セルは,原画像において同様の行i及び同様の列jで,そこに位置する画素の輝度を表すリテラル値x
ijを含んでいる。
【0051】
図2Bは,各リテラル値が原画像1についての対応する数値により置き換えられた同様のX行列が示されている。これらの値は,8ビットの符号なしの整数,即ち0から255で符号化されている。この例によると,最も暗い画素の値はx
28=25であり,最も明るいのはx
17=224である。エントロピー計算式を適用すると,この行列から5.625のエントロピーが得られる。
【0052】
以下の例で使用されるウェーブレット変換は,リフティングスキームを有するCohen-Daubechies-Feauveau(CDF)5/3変換である。これは,JPEG2000で使用されるウェーブレット,即ちロスレスCDF5/3及びロッシーCDF9/7と異なり,隣接の値の数を介してのみ詳細部及びそれに関連する除数が使用される。
【0053】
CDF5/3ウェーブレットはY行列に適用でき,その値は上述のように索引付けされている。
【0054】
垂直ウェーブレットのステップは,以下の式により取得される。
詳細行列の計算:
h
m,n=y
2m,n−[y
2m-1,n+y
2m+1,n]/2
いずれのmも1とYの高さの半分との間にあり,いずれのnもYの幅である。例えば,H1Z行列は,原行列Xから取得される(
図3B参照)。
近似行列の計算:
l
mn=y
2m-1,n+[h
m-1,n+h
m,n]/4
mはYの高さの半分以下であり,仮にYの高さが奇数であれば+1したものであり,いずれのnもYの幅である。この例によれば,L1Z行列が原行列X及びH1Z行列から取得される(
図3B参照)。
【0055】
水平ウェーブレットのステップは,以下の式により取得される。
詳細行列の計算:
h
m,n=y
m,2n−[y
m,2n-1+y
m,2n+1]/2
いずれのnも1とYの幅の半分との間であり,いずれのmもYの幅である。この例によれば,HH1ZがH1Zから取得される。そして,LH1ZはL1Zからである。
近似行列の計算:
l
mn=y
m,2n-1+[h
m,n-1+h
m,n]/4
nはYの幅の半分以下であり,仮にYの幅が奇数なら+1したものであり,いずれのmもYの高さである。この例によれば,HL1ZがH1Z及びHH1Z行列から取得され,LL1ZがL1Z及びLH1Zから取得される。
【0056】
各値は,計算の最後にルーチン的に整数に丸められる。以下の例では,丸めに以下のルールが適用される。上述の丸めルールによれば,0.5は1に丸められ,−0.5は−1に丸められる。よって,2.49は2に,2.5は3に,2.3は2に丸められることになる。
【0057】
行列の端での行及び列の計算を可能にするために,それ自身では処理されないが,他への処理を可能にするような仮想値が以下のルールに従って付加される。
−行列の各々及び復元行列の各々の真上及び真左に位置する仮想値はゼロである。従って,
図3Bに示される詳細行列H1Zは,仮想値H1Z
01=0又はH1Z
08=0をその中に有することになる。同様に,
図12Bに示される復元詳細行列H1RZは,仮想値H1RZ
01=0又はH1RZ
08=0をその中に有することになり,詳細行列LH1Zは仮想値LH1Z
10=0又はLH1Z
40=0,復元詳細行列LH1RZは仮想値LH1RZ
10=0又はLH1RZ
40=0をその中に有することになる。
−行列の各々及び復元行列の各々の真右及び真下に位置する仮想値は,それぞれ,2セル左及び2セル上に位置する値と等しい。従って,X中にx
91=x
71の仮想値があり,L1Z中にL1Z
19=L1Z
17の仮想値があり,L1RZの中にL1RZ
19=L1RZ
17の仮想値があり,LL1Zの中にLL1Z
15=LL1Z
13の仮想値があり,及びLL1RZ中にLL1RZ
51=LL1RZ
31の仮想値がある。
【0058】
図示の例では,ウェーブレットレベルNで生成された各部分行列に対してそれぞれ量子化除数Qが適用されており,各々の除数は,この例では,同一レベルの詳細行列の各々で同一としている。
−第1のレベルN=N−1については,Q=Q1=Q
LH1=Q
HL1=Q
HH1=4
−第2のレベルN=N−2=2については,Q=Q2=Q
LH2=Q
HL2=Q
HH2=2
【0059】
図3B及び
図4Bは,従来技術の方法に従った量子化除算を適用する前の,原行列Xに対する第1のウェーブレットレベルの適用例を示している。
【0060】
このため,原行列Xに垂直ウェーブレットを適用することにより,
図3Bに示される部分行列L1Z及びH1Zが取得され,これは
図3A及び
図3Bに示すように,各々H画素の4列からなる。
【0061】
従って,第1番目の2つの行の第1番目の画素x
11及びx
21の変換は,以下の計算式に従って行われる。
詳細部分行列H1Zの対応する値:
H1Z
11=x
21−(x
11+x
31)/2=121−(116+110)/2=8
近似部分行列L1Zの対応する値:
L1Z
11=x
11+(H1Z
01+H1Z
11)/4=116+(0+8)/4=118
【0062】
それに続く2つの行の第1番目の画素x
31及びx
41の変換は,以下の計算式に従って行われる。
部分行列H1Zの対応する値:
H1Z
21=x
41−(x
31+x
51)/2=115−(110+126)/2=−3
部分行列L1Zの対応する値:
L1Z
21=x
31+(H1Z
11+H1Z
21)/4=110+(8+(−3))/4=111
【0063】
次に,水平ウェーブレットが部分行列L1Z及びH1Zの各々に適用されるので,
図4Bに示されるようなものがそれぞれ取得される。
−部分行列L1Zについて,2つの新たな部分行列LL1Z及びLH1Z;
−部分行列H1Zについて,2つの新たな部分行列HL1Z及びHH1Z。
【0064】
図5Bは,前に取得された部分行列LL1Zへの第2のレベルN2のウェーブレットの第1のステップの適用の結果が示されており,その結果は,2つの部分行列L2Z及びH2Zである。
図6Bは,行列L2Z及びH2Zへの第2のレベルのウェーブレットの第2のステップの適用の結果が示されており,その結果は,
図6Bでの部分行列LL2Z,LH2Z,HL2Z,及びHH2Zである。
【0065】
1つのレベルを再び行うことも,行列LL2Zを保持することも,又はそれを量子化することも可能である。
【0066】
ここでは,第3のレベルのウェーブレットは適用せず,行列LL2Zを同一のまま保持することを選択する。
【0067】
従って,部分行列LL2Zは,新たなウェーブレットに左右されずに,同一の値を有する行列LL2QZの形式で蓄積されるように保持されることになる。
【0068】
次に,それぞれの量子化が各レベルに対して適用される。このため,部分行列LH1Z,HL1Z及びHH1Zの各々の値を第1のレベルN1の除数Q1に等しい量子化除数Q
LH1,Q
HL1,及びQ
HH1でそれぞれ除算し,上述のルールに従って丸めを施すことにより,量子化された部分行列LH1QZ,HL1QZ,及びHH1QZが取得される。同様に,部分行列LH2Z,HL2Z,及びHH2Zの各々の値を,第2のレベルN2の除数Q2に等しい量子化除数Q2
LH2,Q
HL2,及びQ
HH2でそれぞれ除算し,上述のルールに従って丸めを施すことにより,量子化された部分行列LH2QZ,HL2QZ,及びHH2QZが取得される。これら全ての量子化行列は,
図7Bに示される。
【0069】
従来技術の方法による行列Xの変換TZは,原行列Xの値を部分行列LL2QZ,LH2QZ,HL2QZ,HH2QZ,LH1QZ,HL1QZ,及びHH1QZの値に変換することにより取得される。これらの新たな値は,特定の場所に蓄積できる。これらは,また,同じサイズの行列を形成するために,行列Xの値に置換できる。
図8Bは,そのような値の置換の例が示されている。
【0070】
この変換行列では原行列に比べて異なる値の数が削減されており,これは各々の出現確立を増加させることを可能にする。従って,新たな行列の前述した数式で示されるシャノンエントロピーは,原行列より低く,それは4.641である。
【0071】
次に,本発明に係る方法を記述する。
本発明に係る方法は,ウェーブレット変換の計算中,小数点以下のD桁(二進法の表記で)を保持すること,即ち2のマイナスD乗を保持することを含む。この計算をより高速で行うために,これを浮動小数点で実行するよりも,むしろ,これは固定小数点で実行される。このようにすると,原行列Xの各数値とシフト係数2
D,即ち(10
D)
2との乗算が可能になる。これは,二進表記の数値をD桁左にシフトすることでも可能である。次にこのようにして取得されて増加した整数の部分だけが保持され,よって,演算される数値は,2のマイナスD乗を表す最後のD桁の整数と,原数値の整数部分を表す他の桁との数となる。
【0072】
この説明の例では,3つの桁数が保持される。行列XDの増加した数値が
図2Cに示されている。従って,行列XDの各数値XD
ijは,原行列Xの数値X
ijより8倍大きい:
XD
ij=8×X
ij
従って,コンピュータの計算で使用される二進法の値は,(1000)
2倍されたことになり,即ちシフト係数は8に等しい。
【0073】
変換行列TZを取得するための従前に使用されているのと同様の変換により,増加された行列XDから,先ず第1に,垂直ウェーブレットにより,
図3Cに示される部分行列L1及びH1が取得され,それから,
図4Cに示される水平部分行列LL1,LH1,HL1及びHH1が取得される。次に,部分行列LL1に対するウェーブレットの第2の適用により,先ず第1に垂直ウェーブレットにより,
図5Cに示される部分行列L2及びH2が取得され,それから,水平ウェーブレット変換により,
図6Cに示される水平部分行列LL2,LH2,HL2,及びHH2が取得される。
【0074】
次にそれぞれの量子化が各レベルに対して適用され,取得された数値が8で除算される。代わりに,それぞれの量子化除数で割り算した後に取得された二進法の数値を右に3桁分シフトすることも可能である。
【0075】
従って,部分行列LH1,HL1,及びHH1の数値の各々を,これらの量子化除数Q
LH1,Q
HL1及びQ
HH1の8倍,即ち各行列に対して8×Q1で除算し,上述のルールに従って丸めを施すことで,
図7Cに示されるような量子化された部分行列LH1Q,HL1Q,及びHH1Qが取得される。同様に,部分行列LH2,HL2,及びHH2の数値の各々を,これらの量子化除数Q
LH2,Q
HL2及びQ
HH2の8倍,即ち各行列に対して8×Q2で除算し,上述のルールに従って丸めを施すことで,
図7Cに示されるような,量子化された部分行列LH2Q,HL2Q,及びHH2Qが取得される。最終的には,行列LL2の数値を8で除算し,上述のルールに従って丸めを施すことにより,行列LL2を完全に再変換し,
図7Cに示されるような部分行列LL2Qが取得される。これらの全ての変換行列は,
図7Cに示される。
【0076】
本発明に係る方法による行列の変換Tは,原行列Xの数値を,部分行列LL2Q,LH2Q,HL2Q,HH2Q,LH1Q,HL1Q,及びHH1Qの数値に変換することにより取得される。これらの新たな数値は,特定の場所に蓄積できる。これらは,また,同じサイズの行列を形成するために,行列Xの数値に置換できる。
図8Cは,そのような数値の置換の例が示されている。
【0077】
この変換行列では原行列に比べて異なる値の数が削減されており,これは,シャノンエントロピーを減少することを可能にする。前述の与えられた数式によれば,新たに変換された行列のシャノンエントロピーは,4.520である。
【0078】
次に,復元ステップ即ち画像の復元のバージョンを表す復元行列XRの取得のプロセスについて,先ず本発明の方法に従って説明し,次に従来技術の方法に従って説明する。
【0079】
最初に,それぞれの量子化係数をその数値に乗算し,ウェーブレット変換中と同様の精度レベルを得るために,それから8を乗算することで,量子化された詳細行列から逆量子化された詳細行列が計算される。従って,
図9Cに示される部分行列が取得される。
−LL2Rについては,その数値は,部分行列LL2Qの数値に8を乗算したものと等しい;
−LH2R,HL2R,及びHH2Rについては,その数値は,それぞれ,部分行列LH2Q,HL2Q,及びHH2Qを,8×Q
LH2,8×Q
HL2,及び8×Q
HH2,つまり8×Q2,即ち単純に16で乗算したものと等しく,レベル2の各々の量子化除数はQ2に等しく,即ち2である;
−LH1R,HL1R,及びHH1Rについては,その数値は,それぞれ,部分行列LH1Q,HL1Q,及びHH1Qに,8×Q
LH1,8×Q
HL1,及び8×Q
HH1,つまり8×Q1,即ち単純に32を乗算したものと等しく,レベル1の各々の量子化除数はQ1に等しく,即ち4である。
【0080】
次に,
図11Cに示される部分行列LL1Rを取得するために,レベル2の逆ウェーブレットが部分行列LL2R,LH2R,HL2R,及びHH2Rに適用される。
【0081】
次に,
図13Cに示される行列LL0Rを取得するために,レベル1の逆ウェーブレットが部分行列LL1R,LH1R,HL1R,及びHH1Rに適用され,この行列の数値LL0R
ijは,上述のルールに従って丸められる。
【0082】
次に,行列LL0Rの数値LL0R
ijの各々は8で除算され,又は対応する二進法の数値は右に3桁シフトされ,そして,このようにして取得されたXR
ijの数値の各々は上述のルールに従って丸められる。このようにして
図14Cに示されるような数値XY
ijの復元行列XRが取得される。XR
ijの各数値は,本発明による方法で復元された原画像の復元画像の画素の輝度を表している。
【0083】
図15Cに示す行列Eの各数値E
ijは,復元行列XRの数値XR
ijと,原行列の数値X
ijとの間の相違を表している。この例では,これらの相違の平均は,約0.78である。
【0084】
逆ウェーブレット変換レベルを部分的にだけ行うことで,画像を部分的にのみ復元することも可能である。例えば,中間復元行列を使用することで,1/4の画像のみ復元することが可能である。そのような4×4のサイズの行列は,
図11Cに示す行列LL1Rの数値LL1R
ijの各々を8で除算するか,又は二進法の数値を3桁右にシフトすることで取得できる。このように取得される中間復元行列は,縮小された復元画像に対応する。
【0085】
この段階的な展開の可能性は,スケーラビリティとして言及され,全てのデータが利用可能でないような場合の画像に関する着想を可能にする。これは,重たい画像ファイルをダウンロードする間,画像の到着が完了する前,最終的に完全に利用可能なレベルに画像を展開するまでの間,有益に利用できる。
【0086】
これは,また,例えばギャラリーで画像を表示する際に,必要とされる解像度にだけ画像を展開することを可能にする。部分的な展開は,不必要な展開を回避することで,資源の節約が図れる。
【0087】
次に従来技術の方法での変換行列TZからの画像の復元のステップについて説明する。
【0088】
最初に,その数値にそれぞれの量子化係数を乗算することで,量子化された詳細行列から逆量子化された詳細行列が計算される。このようにして,
図9Bに示される部分行列が取得される。
−LL2RZについては,その数値は,部分行列LL2QZの数値に等しい,この行列は,ウェーブレットレベルにより変更されていない;
−LH2RZ,HL2RZ,及びHH2RZについては,その数値は,それぞれ,部分行列LH2QZ,HL2QZ,及びHH2QZに,これらの量子化除数Q
LH2,Q
HL2,及びQ
HH2を乗算したものに等しく,ここで各行列のQ2は2であり,レベル2の量子化除数Q2は2に等しい;
−LH1RZ,HL1RZ,及びHH1RZについては,その数値は,それぞれ,部分行列LH1QZ,HL1QZ,及びHH1QZに,これらの量子化除数Q
LH1,Q
HL1,及びQ
HH1を乗算したものに等しく,ここで各行列のQ1は4であり,レベル1の各量子化除数Q1は4に等しい。
【0089】
次に,水平の逆ウェーブレット変換の最後に,
図10Bに示される部分行列L2RZ及びH2RZを取得し,次いで,垂直の逆ウェーブレット変換の最後に,
図11Bに示される部分行列L2RZ及びH2RZ,部分行列LL1Rを取得するために,レベル2の逆ウェーブレットが部分行列LL2RZ,LH2RZ,HL2RZ,及びHH2RZに適用される。
【0090】
次に,水平の逆ウェーブレット変換の最後に,
図12Bに示される部分行列L1RZ及びH1RZを取得し,次いで,垂直の逆ウェーブレット変換の最後に,
図13Bに示される部分行列L1RZ及びH1RZ,復元行列XRZを取得するために,レベル1の逆ウェーブレットが部分行列LL1RZ,LH1RZ,HL1RZ,及びHH1RZに適用され,この行列の数値XRZ
ijは,上述のルールに従って丸められる。XRZ
ijの各数値は,従来の技術の方法で復元された原画像の復元画像の画素の輝度を表している。
【0091】
図14Bに示す行列EZの各数値EZ
ijは,復元行列XRZの数値XRZ
ijと,原行列Xの数値X
ijとの間の誤差を表している。この例では,これらの誤差の平均は約1.56である。従って,この例では,従来技術の方法で取得された誤差は,本発明による方法で取得された誤差(0.78)の約2倍であることがわかる。
【0092】
同時に,本発明による変換行列Tのエントロピー(4.520)は,従来の技術による変換行列TZのエントロピー(4.641)より僅かに小さく,また,原行列のエントロピー(5.625)より著しく小さい。
【0093】
従って,本発明に係る方法は,従来技術で使用されるエントロピー減少方法に比べて,より正確な行列の数値の復元値を取得しつつ,行列のエントロピーを減少させることができる。
【0094】
当然,本発明は,先に説明した例に限定されるものではない。よって,白黒画像の例は,RGB画像のR,G,又はB成分の表現にも適用できる。RGB画像の各成分Y,Cb又はCrは,YCbCr変換を受けており,特に,輝度要素Yは,上述の例の白黒画像と同じ方法で処理できる。このことから,CMYK空間から生じた成分であれ,又はRGB成分から取得されるいずれの比色変換(transformation colorimetrique)成分であれ,画像の如何なる成分についてもロスを伴い又は伴うことなく,より一般的に表現できる。
【0095】
更に,もし,ウェーブレットが各レベルで最初に全て垂直に適用されたとしても,各レベルで最初に水平に適用され,次いで垂直に適用されたとしても,適用可能である。
【0096】
付加的な桁数,即ち固定小数点計算で使用される2のマイナスの巾数は,変換Tの数値T
ijの計算でのものと,変換したものから数値XR
ijを復元するのに使用されるものとで,異なっていても良い。
【0097】
好ましくは,桁の数は,ウェーブレットレベルが大きくなれば,より大きい数となる。
【0098】
上述の説明では,詳細行列の数値の各々は,量子化とシフト係数による除算を同時に行った。これに対して,量子化は,シフト係数による除算と同時に行わないようにできる。更に,量子化及び/又はシフト係数による除算は,対応する部分行列が取得される毎に各時間で行うことができる。
【0099】
上述の例では,計算精度は,整数値である入力データの精度より優れている。入力データの精度が計算精度より優れている場合,特に,もし,これらがウェーブレットの計算の精度より優れた計算精度を有する比色変換の結果から生じた場合,行列XDは,2の負の巾数を増加するよりもむしろ減少することにより取得される。
【0100】
同様に,展開では,例えば比色変換で,もし,データが出力で逆ウェーブレット変換の精度より優れた精度で処理されなければならない場合,それに続く変換の精度と同じになるように,データの精度を直接的に増加しても良い。
【0101】
当然,本発明は,1又はそれ以上の次数の行列に適用できる。この場合,ウェーブレットレベルは,各次元の各々の一連の変換で取得される。