TOP > 中国の大学の特許 > 北京大学の特許一覧 > 画像圧縮および伸張加速化のための方法 > 明細書

明細書 :画像圧縮および伸張加速化のための方法

発行国 日本国特許庁(JP)
公表番号 特表2008-527809 (P2008-527809A)
公報種別 特許公報(B2)
公表日 平成20年7月24日(2008.7.24)
特許番号 特許第4831547号 (P4831547)
登録日 平成23年9月30日(2011.9.30)
発行日 平成23年12月7日(2011.12.7)
発明の名称または考案の名称 画像圧縮および伸張加速化のための方法
国際特許分類 H04N   1/41        (2006.01)
H04N   7/30        (2006.01)
FI H04N 1/41 B
H04N 7/133 Z
請求項の数または発明の数 4
全頁数 15
出願番号 特願2007-549786 (P2007-549786)
出願日 平成17年12月23日(2005.12.23)
国際出願番号 PCT/CN2005/002292
国際公開番号 WO2006/072206
国際公開日 平成18年7月13日(2006.7.13)
優先権出願番号 200510000589.6
優先日 平成17年1月7日(2005.1.7)
優先権主張国 中華人民共和国(CN)
審査請求日 平成20年5月21日(2008.5.21)
特許権者または実用新案権者 【識別番号】507231932
【氏名又は名称】北大方正集▲団▼有限公司
【氏名又は名称】PEKING UNIVERSITY FOUNDER GROUP CO., LTD
【識別番号】507232456
【氏名又は名称】北京北大方正▲電▼子有限公司
【氏名又は名称】BEIJING FOUNDER ELECTRONICS CO., LTD.
【識別番号】507232478
【氏名又は名称】北京大学
【氏名又は名称】PEKING UNIVERSITY
発明者または考案者 【氏名】ワン ジィエン
個別代理人の代理人 【識別番号】100115624、【弁理士】、【氏名又は名称】濱中 淳宏
【識別番号】100129171、【弁理士】、【氏名又は名称】柿沼 健一
【識別番号】100077481、【弁理士】、【氏名又は名称】谷 義一
【識別番号】100088915、【弁理士】、【氏名又は名称】阿部 和夫
審査官 【審査官】堀井 啓明
参考文献・文献 特開2001-145107(JP,A)
特開2001-177729(JP,A)
特開平07-162861(JP,A)
特開2000-013596(JP,A)
特開2000-013612(JP,A)
調査した分野 H04N1/41-1/419
H04N7/12-7/137
特許請求の範囲 【請求項1】
画像データ圧縮のための方法であって、該方法は以下に列挙するステップ、すなわち、
インプット画像を事前処理するステップであって、該ステップは、オリジナル画像データを複数の画像データブロックに分割し、画像のピクセルを標準化し、色空間変換を実行することを含むステップ1と、
所与のデータブロックが圧縮加速化の要求条件を満たしているかどうかを判断するステップであって、要求条件を満たしていれば、ステップ3が実行され、満たしていなければ、ステップ4が実行され、1画像ブロック内の全ピクセル値が等しいとき要求条件が満たされるとしたステップ2と、
画像データブロックについて単純化DCTを実行して、ステップ5に進むステップ3と、
画像データブロックについてDCTを実行するステップ4と、
そのDCT後結果として得られたデータブロックを量子化するステップ5と、
データブロックのDC係数について一次元予測を実行するステップ6と、
データブロックのDC係数についてDCエントロピ符号化を実行するステップ7と、
データブロックのAC係数についてACエントロピ符号化を実行し、本方法を終了するステップ8と、
を含み、
前記ステップ2は、1つの画像データブロック内の複数の画像データを「ユニット」に結合し、データを1つひとつ比較するのではなく、前記ユニットの観点から比較を実行することによってさらに向上されていることを特徴とする画像データ圧縮のための方法
【請求項2】
請求項1に記載の画像データ圧縮のための方法において、要求条件が満たされている場合、DCTを実行するステップと量子化するステップは、単純化DCT-量子化プロセスを実行する1ステップにマージされ、DCエントロピ符号化を実行するステップとACエントロピ符号化を実行するステップは、単純化エントロピ符号化を形成するようにマージされ、圧縮加速化のワークフローにおいて、前記ステップ2乃至8は、
所与のデータブロックが圧縮加速化のための要求条件を満たしているかどうかを判断するステップであって、要求条件が満たされていれば、ステップ8’が実行され、満たされていなければ、ステップ3’が実行され、1画像ブロック内の全ピクセル値が等しいとき要求条件が満たされるとしたステップ2と、
画像データブロックについてDCTを実行するステップ3と、
そのDCT後結果として得られたデータブロックを量子化するステップ4と、
データブロックのDC係数について一次元予測を実行するステップ5と、
データブロックのDC係数についてDCエントロピ符号化を実行するステップ6と、
データブロックのAC係数についてACエントロピ符号化を実行し、本方法を終了するステップ7と、
単純化DCT-量子化プロセスを実行するステップ8と、
データブロックのDC係数について一次元予測を実行するステップ9と、
単純エントロピ符号化を実行し、本方法を終了するステップ10と、
に置き換えられることを特徴とする画像データ圧縮のための方法
【請求項3】
画像データ伸張のための方法であって、該方法は以下に列挙するステップ、すなわち、
圧縮された画像データブロックをインプットし、その画像データブロックについてDC係数のエントロピ復号化を実行するステップ1と、
AC係数のエントロピ復号化を実行するステップ2と、
画像データブロックのDC係数について一次元逆予測を実行するステップ3と、
量子化された画像データブロックについて逆量子化を実行するステップ4と、
所与の画像データブロックが復号化プロセス加速化のための第一要求条件を満たしているかどうかを判断し、要求条件を満たしていれば、ステップ6が実行され、満たしていなければ、ステップ7が実行され、前記所与の画像データブロック内の全AC係数がゼロに等しいことを第一要求条件としたステップ5と、
単純化DCTを実行し、そのあとステップ8が実行されるステップ6と、
DCTを実行するステップ7と、
画像データおよび伸張されたアウトプット画像データを事後処理するステップ8と、
を含み、
前記ステップ5は、1つの画像データブロック内の複数の画像データを「ユニット」に結合し、データを1つひとつ比較するのではなく、前記ユニットの観点から比較を実行することによってさらに向上されていることを特徴とする画像データ伸張のための方法
【請求項4】
請求項に記載の画像データ伸張のための方法において、画像データが伸張されるとき、加速化プロセスのスタートポイントは前に進められ、伸張加速化のための第二要求条件が満たされていれば、ACエントロピ復号化プロセスは省略され、逆量子化とDCTプロセスは共に単純化され、伸張加速化のためのワークフローにおいて、前記ステップ2乃至8は、
画像データブロックが伸張加速化プロセスのための第二要求条件を満たしているかどうかを判断し、第二要求条件を満たしていれば、ステップ7が実行され、満たしていなければ、ステップ3が実行され、第一符号化AC係数がブロックの終り(End of Block)などの、終了コードであることを第二要求条件としたステップ2と、
画像データブロック内のAC係数についてエントロピ復号化を実行するステップ3と、
画像データブロック内のDC係数について一次元逆予測を実行するステップ4と、
逆量子化を実行するステップ5と、
IDCTを実行し、そのIDCT完了後にステップ9に移るとしたステップ6と、
画像データブロック内のDC係数について一次元逆予測を実行するステップ7と、
単純IDCT-逆量子化プロセスを実行するステップ8と、
画像データを事後処理し、伸張された画像データをアウトプットするステップ9と、
に置き換えられることを特徴とする画像データ伸張のための方法
発明の詳細な説明 【技術分野】
【0001】
本発明はコンピュータによる画像処理およびデータ圧縮技術に関し、特に画像の圧縮と伸張を加速化するプロセスに関する。
【背景技術】
【0002】
JPEG(Joint Photographic Experts Group)は、画像蓄積とデジタルカメラの分野で広く使用されている静止画像圧縮フォーマットの国際標準の策定を担当する、国際標準化機構(International Standard Organization ISO)の下の委員会である。JPEGは、離散コサイン変換(discrete cosine transform DCT)と逆離散コサイン変換(inverse discrete cosine transform IDCT)に基づく画像の圧縮(compression)と伸張(decompression)に関する多数のプロセスを提案している。
【0003】
DCTに基づく画像圧縮の公知プロセスは、以下に列挙するステップからなっている。すなわち、
ステップ1は事前処理(pre-processing)ステップであり、そこでは画像データがインプットされる。このステップの目的は、インプットデータを後続ステップにマッチさせるように、つまり、望ましい圧縮結果が達成されるようにインプットデータを事前処理することである。このステップは、オリジナル画像データを複数の8x8ブロックに分割し、インプット画像のピクセルを標準化し、色空間変換(color space transformation)を実行すること、などを含んでいる。
【0004】
ステップ2では、DCTが実行される。このステップのインプットは、8x8画像データブロックであり、そこで、ピクセルのすべての値が標準化される。DCTの方程式は次の通りである。
【0005】
【数1】
JP0004831547B2_000002t.gif

【0006】
(x, y)は、DCT実行前のブロック内のポイントの座標を表している。ただし、(0,0)はブロックの左上隅のピクセルの座標であり、f(x, y)はDCT実行前の座標(x, y)におけるピクセルの値であり、(u, v)はDCT実行後のピクセルの座標であり、F(u, v)はDCT実行後の座標(u, v)におけるピクセルの値である。
【0007】
u, v = 0のとき、C(u), C(v)=1/sqrt(2)、ただし、sqrtは平方根計算を意味する。
【0008】
ステップ3では、量子化(quantization)が実行される。このステップのインプットは、DCT実行後のデータブロックと指定された量子化マトリックス(designated quantization matrix)である。この量子化マトリックス内のすべての要素は非ゼロの正の整数である。量子化マトリックスがQ(x, y)であると想定すると、量子化は次の方程式に従って行なわれる。
【0009】
【数2】
JP0004831547B2_000003t.gif

【0010】
ただし、x, y = 0, 1, 2,…7, [ ]は、結果が整数に丸められることを意味し、0.5を加えると、丸めが行ないやすくなる。
【0011】
ステップ4では、直流(Direct Current DC)係数の一次元予測が実行される。F(0, 0)はDC係数と呼ばれ、他の要素は交流(Alternating Current AC)係数として知られている。DC係数を処理するために、Pが先行画像ブロックのDC係数であると想定すると、そのDC係数は現DC係数の予測値でもあるので、予測の方程式を示すと、次の通りである。
【0012】
【数3】
JP0004831547B2_000004t.gif

【0013】
次の画像ブロックのDC係数の予測値は次のようになる。
【0014】
【数4】
JP0004831547B2_000005t.gif

【0015】
ステップ5では、DCエントロピ符号化(DC Entropy coding)が実行される。このステップのインプットは、ステップ4のアウトプットであるマトリックス内のDC係数である。図2の左上隅の黒の要素はDC係数を表している。
【0016】
ステップ6では、ACエントロピ符号化が実行され、このステップのインプットはステップ4のアウトプットマトリックス内のAC係数であり、そこでは、図2に示すように、AC係数は「ジグザグ」順に配列され、エントロピ符号化のためのランレングス符号化アナゴリズム(run-length encoding algorithm)が採用されている。データブロックの上左隅の黒い要素のほかに、図2の残りの要素はAC係数である。屈曲線は、AC係数がジグザグ状に符号化されることを示している。図3は、AC係数エントロピのランレングス符号化プロセスを示すフローチャートである。
【0017】
以下では、圧縮(compression)の逆である、IDCTに基づく伸張(decompression)について説明する。
ステップ1では、DC係数エントロピ復号化(decoding)が実行される。
ステップ2では、AC係数エントロピ復号化が実行される。
ステップ3では、DC係数の一次元逆予測(one dimensional inverse prediction)が次の方程式に従って実行される。
【0018】
【数5】
JP0004831547B2_000006t.gif

【0019】
ステップ4では、逆量子化プロセス(inverse quantization process)が次の方程式に従って実行される
【0020】
【数6】
JP0004831547B2_000007t.gif

【0021】
ステップ5では、IDCTが次の方程式に従って実行される。
【0022】
【数7】
JP0004831547B2_000008t.gif

【0023】
ステップ6は事後処理(post-processing)ステップであり、これは事前処理の逆である。
【0024】
図1は、DCTおよびIDCTに基づくJPEG圧縮/伸張プロセスを示すフローチャートである。JPEGの詳細は国際電信電話諮問委員会(International Telegraph and Telephone Consultative Committee CCITT)によって非特許文献1に公表されている。
【0025】

【非特許文献1】Information Technology-Digital Compression and Coding of Continuous-Tone Still Images-Requirement and Guideline」、CCITT Rec.T.81, 1992E
【発明の開示】
【発明が解決しようとする課題】
【0026】
現在、DCTに基づくJPEG圧縮プロセスは、満足し得る圧縮レートを提供する能力を備えている。さらに、圧縮画像が伸張されるとき、オリジナル画像と伸張画像との違いは視覚的に見つけにくくなっている。しかし、その処理速度は十分でない。DCTとIDCTの方程式から明らかであるように、計算には大量の負担が要求される。計算の作業負担を軽減するために多数の加速化プロセス(accelerated process)が提案されているが、これらの公知加速化プロセスは高解像度の画像を処理するには適用できない。また、処理速度は、JPEGアプリケーションにとっては依然として1つの大きな障害になっている。
【課題を解決するための手段】
【0027】
従来技術の欠点を解消するために、本発明の目的は、DCTおよびIDCTに基づくJPEG圧縮/伸張プロセスの処理速度を、画像の品質に影響を及ぼすことなく向上することである。
【0028】
上記目的を達成するために、本発明の一側面は、画像データ圧縮のためのプロセスであって、以下に列挙するステップ、すなわち、
インプット画像を事前処理するステップであって、該ステップは、オリジナル画像データを複数の画像データブロックに分割し、画像のピクセルを標準化し、色空間変換を実行することを含むステップ1と、
所与のデータブロックが圧縮加速化の要求条件を満たしているかどうかを判断するステップであって、要求条件を満たしていれば、ステップ3が実行され、満たしていなければ、ステップ4が実行され、1画像ブロック内の全ピクセル値が等しいとき要求条件が満たされるとしたステップ2と、
画像データブロックについて単純化DCTを実行して、ステップ5に進むステップ3と、
画像データブロックについてDCTを実行するステップ4と、
そのDCT後結果として得られたデータブロックを量子化するステップ5と、
データブロックのDC係数について一次元予測を実行するステップ6と、
データブロックのDC係数についてDCエントロピ符号化を実行するステップ7と、
データブロックのAC係数についてACエントロピ符号化を実行し、本プロセスを終了するステップ8と、
を含むことを特徴とする画像データ圧縮のためのプロセスを提供することである。
【0029】
さらに、圧縮プロセスを向上するために、上記ステップ2の判断は、一度に1つの画像データを比較するのではなく、複数の画像データを「ユニット」に結合して比較することによりさらに向上することを可能にしている。
【0030】
さらに、要求条件が満たされた場合は、DCTと量子化は単純DCT-量子化プロセスを形成するようにマージされ、DCエントロピ符号化とACエントロピ符号化は単純エントロピ符号化プロセスを形成するようにマージされ、圧縮加速化のための好ましいワークフローは以下に列挙するステップ、すなわち、
インプットされた画像を事前処理するステップ1と、
所与のデータブロックが要求条件を満たしているかどうかを判断するステップであって、要求条件が満たされていれば、ステップ8が実行され、満たされていなければ、ステップ4が実行され、1画像ブロック内の全ピクセル値が等しいとき要求条件が満たされるとしたステップ2と、
画像データブロックについてDCTを実行するステップ3と、
そのDCT後結果として得られたデータブロックを量子化するステップ4と、
データブロックのDC係数について一次元予測を実行するステップ5と、
データブロックのDC係数についてDCエントロピ符号化を実行するステップ6と、
データブロックのAC係数についてACエントロピ符号化を実行するステップ7と、
単純化DCT-量子化プロセスを実行するステップ8と、
データブロックのDC係数について一次元予測を実行するステップ9と、
単純エントロピ符号化を実行し、本プロセスを終了するステップ10と、
を含むことを特徴としている。
【0031】
また、本発明は画像データ伸張のためのプロセスも提供しており、該プロセスは以下に列挙するステップ、すなわち、
圧縮された画像データブロックをインプットし、その画像データブロックについてDC係数のエントロピ復号化を実行するステップ1と、
AC係数のエントロピ復号化を実行するステップ2と、
画像データブロックのDC係数について一次元逆予測を実行するステップ3と、
量子化された画像データブロックについて逆量子化を実行するステップ4と、
所与の画像データブロックが復号化プロセス加速化のための第一要求条件を満たしているかどうかを判断し、要求条件を満たしていれば、ステップ6が実行され、満たしていなければ、ステップ7が実行され、前記所与の画像データブロック内の全AC係数がゼロに等しいことが第一要求条件であるとしたステップ5と、
単純化DCTを実行し、そのあとステップ8が実行されるステップ6と、
DCTを実行するステップ7と、
画像データを事後処理し、伸張された画像データをアウトプットするステップ8と、
を含むことを特徴としている。
【0032】
さらに、伸張プロセスを向上するために、伸張プロセスにおけるステップ5は、複数の画像データを「ユニット」に結合し、データを1つひとつ比較するのではなく、前記ユニットの観点から比較を実行することによってさらに向上されていることを特徴としている。
【0033】
さらに、画像データが伸張されるとき、加速化プロセスのスタートポイントは前に進められ、伸張加速化の第二要求条件が満たされていれば、ACエントロピ復号化プロセスは省略され、逆量子化とDCTプロセスは共に単純化され、伸張加速化のための好ましいワークフローは以下に列挙するステップ、すなわち、
画像データブロック内のDC係数についてDCエントロピ復号化を実行するステップ1と、
画像データブロックが伸張加速化プロセスのための第二要求条件を満たしているかどうかを判断し、第二要求条件を満たしていれば、ステップ7が実行され、満たしていなければ、ステップ3が実行され、第一符号化AC係数がブロックの終り(End of Block)などの、終了コードであることを第二要求条件としたステップ2と、
画像データブロック内のAC係数についてエントロピ復号化を実行するステップ3と、
画像データブロック内のDC係数について一次元逆予測を実行するステップ4と、
逆量子化を実行するステップ5と、
IDCTを実行し、そのIDCT完了後にステップ9に移るとしたステップ6と、
画像データブロック内のDC係数について一次元逆予測を実行するステップ7と、
単純IDCT-逆量子化プロセスを実行するステップ8と、
画像データを事後処理し、伸張された画像データをアウトプットするステップ9と、
を含むことを特徴としている。
【発明の効果】
【0034】
本発明によれば、DCTとIDCTに基づくJPEG圧縮/伸張の処理速度を、画像の品質に影響を及ぼすことなく、およびプロセスの時間長さを増加することなく加速化することが可能である。
【発明を実施するための最良の形態】
【0035】
以下、本発明の実施形態と添付図面を参照して本発明について説明する。
【実施例】
【0036】
図4と図5は、DCTに基づく基本的JPEG圧縮加速化プロセスを示す図である。
【0037】
具体的に説明すると、ステップ1では、インプット画像が事前処理され、このステップは、インプット画像データを複数の画像データブロックに分割し、画像のピクセルの値を標準化し、色空間変換(color space transformation)を実行することを含んでいる。
【0038】
ステップ2では、所与の画像ブロックが圧縮加速化の要求条件を満たしているかどうかが判断される。要求条件を満たしていれば、本プロシージャはステップ3へ進み、そうでなければ、ステップ4へ進む。このステップのインプットは8x8画像データブロックである。そしてピクセルのすべての値は標準化されている。1画像ブロック内のピクセルのすべての値が等しいことを上記要求条件としている。JPEGでは、以下に示す擬似コードに従って8ビットと12ビットの両方のピクセル深さを処理することができる。
【0039】
8ビットのピクセル深さの場合:
【0040】
【数8】
JP0004831547B2_000009t.gif

【0041】
最悪のケースでは、上記では63回の比較が必要である。
【0042】
12ビットのピクセル深さの場合:
【0043】
【数9】
JP0004831547B2_000010t.gif

【0044】
上記において、fはデータストリームを表している。上記オペレーションでの最悪のケースでは、64回の繰り返し(iteration)と63回の比較(comparison)が行なわれる。戻り値“true”は要求条件が満たされたことを意味し、戻り値“false”は要求条件が満たされなかったことを意味する。
【0045】
ステップ3では、単純化DCTが実行され、変換完了後ステップ5へ進む。
【0046】
単純化DCTを実行するための方程式は以下に示すとおりである。f(x, y)がDCT実行前のマトリックス、F(x, y)がIDCT実行後のマトリックスであり、x, y = 0, 1, 2,..7であると想定すると、
【0047】
【数10】
JP0004831547B2_000011t.gif

【0048】
ステップ4では、「背景技術」の個所で述べたようにDCTが実行される。
ステップ5では、「背景技術」の個所で述べたように量子化プロセスが実行される。
ステップ6では、「背景技術」の個所で述べたようにDC係数について一次元予測が実行される。
ステップ7では、「背景技術」の個所で述べたようにDC係数エントロピ符号化が実行される。
ステップ8では、「背景技術」の個所で述べたようにAC係数エントロピ符号化が実行される。
【0049】
上記プロセスは図4に示されている。
【0050】
従来技術より良好な結果を達成するために、本実施形態のステップ2は、大きな「ユニット」を形成し、データを1つひとつ比較するのではなく、ユニットの観点から比較を行なうために複数のデータを結合するステップを、さらに含んでいる。
【0051】
ステップ2の圧縮加速化プロセスの要求条件に鑑みて、以下の擬似コードによると、判断が基本的プロセスよりも高速化されている。
【0052】
【数11】
JP0004831547B2_000012t.gif

【0053】
上記が基本的圧縮加速化プロセスのステップ2と同等であることは実証可能である。現在使用されている大部分の32ビットCPUでは、最悪のシナリオでも、必要とするのは1回の循環シフト演算と16回の比較だけである。最悪のケースでも、上記の時間消費は基本的プロセスのステップ2の消費時間の1/4である。64または128ビットのレジスタを装備したCPU(つまり、MMX装備のインテルCPUでは、上記の時間消費は基本的プロセスのステップ2と比較したとき、わずか1/8または1/16である。
【0054】
圧縮加速化の要求条件を満たしている条件では、最適化はDCTに限定されない。量子化を実行するステップとエントロピ符号化を実行するステップも、最適化が可能である。好ましい圧縮加速化プロセスは以下に示す通りである。
【0055】
ステップ1では、事前処理が行なわれ、これは「背景技術」の個所の事前処理ステップと同じように行なわれる。
【0056】
ステップ2では、所与の画像データブロックが圧縮加速化の要求条件を満たしているかどうかが判断される。要求条件を満たしていれば、本プロシージャはステップ8へ進み、満たしていなければステップ3へ進む。ここでは、圧縮加速化の前記要求条件は基本的プロセスのステップ2で述べた要求条件と同じである。要求条件を満たしているかどうかの判断は、改良されたステップ2と同じように上記ステップ2に従って行なうことができる。
【0057】
ステップ3では、「背景技術」の個所で述べたようにDCTが実行される。
ステップ4では、「背景技術」の個所で述べたたように量子化プロセスが実行される。
ステップ5では、「背景技術」の個所で述べたようにDC係数について一次元予測が実行される。
ステップ6では、「背景技術」の個所で述べたようにDC係数エントロピ符号化が実行される。
ステップ7では、「背景技術」の個所で述べたようにAC係数エントロピ符号化が実行される。
ステップ8では、単純化DCT-量子化プロセスが実行され、ここでは、Fはこのプロセス実行前のマトリックスであり、fは変換後のマトリックスを表し、Qは量子化マトリックスであることを想定している。
【0058】
【数12】
JP0004831547B2_000013t.gif
(8/Q(0,0))は実際には定数であるので、このステップは一度だけ実行される。
【0059】
ステップ9では、「背景技術」の個所で述べたようにDC係数について一次元予測が実行される。
ステップ10では、エントロピ符号化が単純化され、本プロシージャを終了する。ここでは、エントロピ符号化は、以下に示すように2回だけ実行される。
【0060】
【数13】
JP0004831547B2_000014t.gif

【0061】
図5は、圧縮プロセスを示す詳細図である。図5に示すように、同図の破線は、上記プロシージャが「背景技術」の個所で述べたように任意の適当な時点で本プロセスに戻ることが可能であることを示している。これは、本発明の圧縮加速化プロセスを変形したものと見られている。
【0062】
IDCTに基づくJPEG伸張プロセスについては、基本的伸張加速化プロセスは、以下に列挙するステップからなっている。すなわち、
ステップ1では、「背景技術」の個所で述べたようにDC係数符号化が実行される。
ステップ2では、「背景技術」の個所で述べたようにAC係数符号化が実行される。
ステップ3では、「背景技術」の個所で述べたように一次元DC係数逆予測が実行される。
ステップ4では、「背景技術」の個所で述べたように逆量子化が実行される。
ステップ5では、所与の画像ブロックが伸張加速化の第一要求条件を満たしているかどうかが判断される。要求条件を満たしていれば、本プロシージャはステップ6へ進み、満たしていなければ、ステップ7へ進み、そこでは、このステップのインプットはAC係数とDC係数を含む64ビットのデータブロックであり、インプットデータブロック内の全AC係数がゼロに等しいことを第一要求条件としている。以下に示したものは、伸張加速化の第一要求条件が満たされているかどうかを判断する擬似コードである。Fはインプットされたデータブロックであると想定すると、
【0063】
【数14】
JP0004831547B2_000015t.gif

【0064】
最悪のケースでは、上記擬似コードでは63回の繰り返し(iteration)が必要である。
【0065】
ステップ6では、単純化IDCTが実行されたあと、ステップ8へ進み、そこでの実行は次式に従って行なわれる。この式では、F(x)はIDCT実行前のマトリックスを表し、f(x,y)はIDCT実行後のマトリックスを表し、ただし、x, y = 0,1,2,...7であるものと想定している。
【0066】
【数15】
JP0004831547B2_000016t.gif

【0067】
ステップ7では、「背景技術」の個所で述べたようにIDCTが実行される。
ステップ8では、「背景技術」の個所で述べたように事後処理が実行される。
このプロセスの詳細は図4に示されている。
【0068】
従来技術よりも良好な結果を達成するために、本実施形態のステップ5は、より大きな「ユニット」を形成し、データを1つひとつ比較するのではなく、前記ユニットの比較を行なうように複数のデータを結合するステップをさらに含めると、向上することが可能である。
【0069】
本実施形態のステップ5(伸張加速化プロセスの第一要求条件)に鑑みて、以下に示す擬似コードによると、基本的プロセスよりも伸張を高速化することができる。
【0070】
【数16】
JP0004831547B2_000017t.gif

【0071】
上記が基本的圧縮加速化プロセスのステップ5と同等であることは実証可能である。現在使用されている大部分の32ビットCPUでは、最悪のケースでも、上記の時間消費は基本的プロセスの時間消費の1/2である。64ビットまたは128ビットのレジスタを装備するCPU(すなわち、MMX装備のインテルCPU)では、時間消費は基本的プロセスのステップ5と比較すると1/4または1/8になる。
【0072】
基本的伸張加速化プロセスのステップ5は、本発明によればすでに最適化されているが、基本的プロセスの他のステップも、伸張加速化の第二要求条件を満している条件において最適化することが可能である。
【0073】
好ましい伸張加速化プロセスを示すと、次の通りである。
【0074】
ステップ1では、「背景技術」の個所で述べたようにDC係数エントロピ復号化が実行される。
【0075】
ステップ2では、所与の画像データが伸張加速化の第二要求条件を満たしているかどうかが判断され、要求条件を満たしていれば、本プロシージャはステップ7へ進み、満たしていなければ、ステップ3へ進み、そこでは、第一AC係数エントロピ符号化が以下に示す擬似コードでブロックの終りフラグ(flag of end of the block)であることを第二要求条件としている。
【0076】
【数17】
JP0004831547B2_000018t.gif

【0077】
上記に示すように、第二要求条件が満たされたときは、AC係数エントロピ復号化は省かれることになる。
【0078】
ステップ3では、「背景技術」の個所で述べたようにAC係数エントロピ復号化が実行される。
【0079】
ステップ4では、「背景技術」の個所で述べたように一次元逆DC係数予測が実行される。
【0080】
ステップ5では、「背景技術」の個所で述べたように逆量子化が実行される。
【0081】
ステップ6では、「背景技術」の個所で述べたようにIDCTが実行され、そのあとステップ9へ進む。
【0082】
ステップ7では、「背景技術」の個所で述べたように一次元DC係数逆予測が実行される。
【0083】
ステップ8では、単純化IDCT-量子化プロセスが実行され、そこでは、Fは変換前のマトリックスを表し、fは変換後のマトリックスを表し、Qは量子化マトリックスを表しているものと想定すると、
【0084】
【数18】
JP0004831547B2_000019t.gif

【0085】
上記において、Q(0,0)は定数である。
【0086】
ステップ9では、「背景技術」の個所で述べたように事後処理が実行される。
【0087】
詳細は図5の伸張セクションに説明されている。図5に示すように、同図の破線は、このプロシージャが「背景技術」の個所で述べたように適当な時点で本プロセスに戻ることが可能であることを表している。これは、本発明の伸張加速化プロセスを変形したものと見られている。
【図面の簡単な説明】
【0088】
【図1】DCTとIDCTに基づく代表的なJPEG圧縮/伸張プロセスを示すフローチャートである。
【図2】ジグザク状のAC係数を示すレイアウト図である。
【図3】AC係数エントロピランレングス符号化を示すフローチャートである。
【図4】加速化JPEG圧縮/伸張プロセスを示すワークチャートである。
【図5】好適な加速化JPEG圧縮/伸張プロセスを示すフローチャートである。
図面
【図1】
0
【図2】
1
【図3】
2
【図4】
3
【図5】
4