【手続補正書】
【提出日】平成15年9月2日(2003.9.2)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【発明の名称】画像縮小サンプリング方法
【特許請求の範囲】
【請求項１】ＤＣＴすなわち離散コサイン変換に基づく圧縮方式に従って圧縮された圧縮領域中の画像情報を縮小サンプリングする方法であって、
圧縮ビットストリームを復号して複数のＮ×ＮのＤＣＴ型データ・ブロックを抽出するハフマン復号ステップと、
少なくとも１つのサンプリング・マトリックスに従って前記データ・ブロックのｎ個を処理して、単一のＮ×ＮのＤＣＴ型データ・ブロックを抽出するステップと、を含み、
前記ｎは所望の縮小サンプリング因数によって決定され、前記単一のデータ・ブロックは前記複数のＮ×ＮのＤＣＴ型データ・ブロックの平均を表す、画像縮小サンプリング方法。
【請求項２】前記処理ステップが、部分的に因数分解された演算子の使用を含む、請求項１に記載の画像縮小サンプリング方法。
【請求項３】ｘ１＝Ｓ−１Ｘ１、ｘ２＝Ｓ−１Ｘ２とし、ＳがＮ点ＤＣＴマトリックスであるとし、各々がx1およびx2の成分の平均である複数の成分からなるＮ×ＮベクトルｘのＤＣＴであるＸを、少なくとも２つの２次元ベクトルＸ１およびＸ２を基に、決定するステップを前記処理ステップが含む、請求項１に記載の画像縮小サンプリング方法。
【請求項４】Ｑ１およびＱ２はＮ×ＮのＤＣＴマトリックスであり、Ｕ１＝ＳＱ１Ｓ−１およびＵ２＝ＳＱ２Ｓ−１であり、因数Ｓは、Ｓ＝ＤＰＢ１Ｂ２ＭＡ１Ａ２Ａ３と表され、Ｄは固定的対角線マトリックスであり、Ｐは置換マトリックスであり、Ｂ１Ｂ２ＭＡ１Ａ２Ａ３はＮ×Ｎ固定マトリックスであり、ｉ＝１，２とした積Ｆｉ＝ＭＡ１Ａ２Ａ３ＱｌＡ３−１Ａ２−１Ａ１−１Ｍ−１が和Ｆ＋＝Ｆ１＋Ｆ２および差Ｆ−＝Ｆ１−Ｆ２を持つ疎のマトリックスであるとして、
前記決定ステップが、
【数１】
1997331532.tif 000001
という関係式に従って、因数２の一次元縮小サンプリングを実行するステップを含む、請求項３に記載の画像縮小サンプリング方法。
【請求項５】Ｑ１およびＱ２はＮ×ＮのＤＣＴマトリックスであり、Ｕ１＝ＳＱ１Ｓ−１およびＵ２＝ＳＱ２Ｓ−１であり、因数Ｓは、Ｓ＝ＤＰＢ１Ｂ２ＭＡ１Ａ２Ａ３と表され、Ｄは固定的対角線マトリックスであり、Ｐは置換マトリックスであり、Ｂ１Ｂ２ＭＡ１Ａ２Ａ３はＮ×Ｎ固定マトリックスであり、ｉ＝１，２とした積Ｆｉ＝ＭＡ１Ａ２Ａ３ＱｌＡ３−１Ａ２−１Ａ１−１Ｍ−１が和Ｆ＋＝Ｆ１＋Ｆ２および差Ｆ−＝Ｆ１−Ｆ２を持つ疎のマトリックスであるとして、
前記決定ステップが、
【数２】
1997331532.tif 000002
という関係式に従って、因数２の縮小サンプリングを実行するステップを含む、請求項３に記載の画像縮小サンプリング方法。
【請求項６】Ｑ１およびＱ２はＮ×ＮのＤＣＴマトリックスであり、Ｕ１＝ＳＱ１Ｓ−１およびＵ２＝ＳＱ２Ｓ−１であり、因数Ｓは、Ｓ＝ＤＰＢ１Ｂ２ＭＡ１Ａ２Ａ３と表され、Ｄは固定的対角線マトリックスであり、Ｐは置換マトリックスであり、Ｂ１Ｂ２ＭＡ１Ａ２Ａ３はＮ×Ｎ固定マトリックスであり、ｉ＝１，２とした積Ｆｉ＝ＭＡ１Ａ２Ａ３ＱｌＡ３−１Ａ２−１Ａ１−１Ｍ−１が和Ｆ＋＝Ｆ１＋Ｆ２および差Ｆ−＝Ｆ１−Ｆ２を持つ疎のマトリックスであるとして、
前記決定ステップが、
【数３】
1997331532.tif 000003
という関係式に従って、因数４の縮小サンプリングを実行するステップを含む、請求項３に記載の画像縮小サンプリング方法。
【請求項７】マトリックスＴ＝Ｔ１＋Ｔ２＋Ｔ３、Ｔ＋＝Ｔ１＋Ｔ３、Ｔ−＝（Ｔ１−Ｔ３）／２は疎であること、およびＤは固定的対角線マトリックスであり、Ｐは置換マトリックスであり、Ｂ１Ｂ２ＭＡ１Ａ２Ａ３はＮ×Ｎ固定マトリックスであるとしてＴ１Ｘ＋Ｔ２Ｙ＋Ｔ３Ｚ＝ＴＹ＋Ｔ＋（（Ｘ＋Ｚ）／２−Ｙ）＋Ｔ−（Ｘ−Ｚ）であることに基づいて、
前記決定ステップが、
【数４】
1997331532.tif 000004
という関係式に従って、因数３の縮小サンプリングを実行するステップを含む、請求項３に記載の画像縮小サンプリング方法。
【請求項８】
【数５】
1997331532.tif 000005
である、請求項７に記載の画像縮小サンプリング方法。
【請求項９】ＤＣＴすなわち離散コサイン変換に基づく圧縮方式に従って圧縮された圧縮領域中において逆動き補償を実行する方法であって、
圧縮ビットストリームを復号して、ピクチャＴ−１を定義する複数のＮ×ＮのＤＣＴ型データ・ブロックおよび動きベクトルｈ、ｗを抽出するハフマン復号ステップと、
少なくとも１つのサンプリング・マトリックスに従いかつ前記動きベクトルに基づいて前記データ・ブロックのｎ個を処理して、ピクチャＴに対応する単一のＮ×ＮのＤＣＴ型データ・ブロックを生成するステップと、を含み、
前記ｎは前記ピクチャｎ−１によって占有される領域を定義するために使用され、前記単一のデータ・ブロックは前記ｎ個のデータ・ブロックの平均を表すデータ・ブロックの組み合わせである、逆動き補償実行方法。
【請求項１０】前記処理ステップが、部分的に因数分解された演算子の使用を含む、請求項９に記載の逆動き補償実行方法。
【請求項１１】ＸはｘのＤＣＴであり、Ｘ１,...,Ｘ４から直接決定されＸ＝Ｘ＋Ｅとして、所与の予測誤差ｅのＤＣＴ Ｅから現在時ブロックｘ＝ｘ＋ｅのＤＣＴ Ｘおよびｘ１,...,ｘ４のＤＣＴＸ１,...,Ｘ４を計算するステップを、前記処理ステップが含む、請求項９に記載の逆動き補償実行方法。
【請求項１２】Ｑ１およびＱ２はＮ×ＮのＤＣＴマトリックスであり、Ｕ１＝ＳＱ１Ｓ−１およびＵ２＝ＳＱ２Ｓ−１であり、因数Ｓは、Ｓ＝ＤＰＢ１Ｂ２ＭＡ１Ａ２Ａ３と表され、Ｄは固定的対角線マトリックスであり、Ｐは置換マトリックスであり、Ｂ１Ｂ２ＭＡ１Ａ２Ａ３はＮ×Ｎ固定マトリックスであり、Ｂ１Ｂ２ＭＡ１Ａ２Ａ３はＮ×Ｎ固定マトリックスであるとして、
【数６】
1997331532.tif 000006
および
【数７】
1997331532.tif 000007
という固定マトリックスを計算するステップをさらに含む、請求項９に記載の逆動き補償実行方法。
【請求項１３】
【数８】
1997331532.tif 000008
に従って、Ｘを決定するステップをさらに含む、請求項１２に記載の逆動き補償実行方法。
【請求項１４】
【数９】
1997331532.tif 000009
に従って、Ｘを決定するステップをさらに含む、請求項１２に記載の逆動き補償実行方法。
【請求項１５】
【数１０】
1997331532.tif 000010
に従って、Ｘを決定するステップをさらに含む、請求項１２に記載の逆動き補償実行方法。
【請求項１６】ＤＣＴすなわち離散コサイン変換に基づく圧縮方式に従って圧縮された圧縮領域中の画像情報を縮小サンプリングする装置であって、
圧縮ビットストリームを復号して複数のＮ×ＮのＤＣＴ型データ・ブロックを抽出するハフマン復号器と、
少なくとも１つのサンプリング・マトリックスに従って前記データ・ブロックのｎ個を処理して、単一のＮ×ＮのＤＣＴ型データ・ブロックを抽出するプロセッサと、を備え、
前記ｎは所望の縮小サンプリング因数によって決定され、前記単一のデータ・ブロックは前記複数のＮ×ＮのＤＣＴ型データ・ブロックの平均を表す、画像縮小サンプリング装置。
【請求項１７】前記プロセッサが部分的に因数分解された演算子を使用する手段を含む、請求項１６に記載の画像縮小サンプリング装置。
【請求項１８】ｘ１＝Ｓ−１Ｘ１、ｘ２＝Ｓ−１Ｘ２とし、ＳがＮ点ＤＣＴマトリックスであるとし、少なくとも２つの２次元ベクトルＸ１およびＸ２を基に、各々がｘ１およびｘ２の成分の平均である複数の成分からなるＮ×ＮベクトルｘのＤＣＴであるＸを決定する手段を前記プロセッサが含む、請求項１６に記載の画像縮小サンプリング装置。
【請求項１９】Ｑ１およびＱ２はＮ×ＮのＤＣＴマトリックスであり、Ｕ１＝ＳＱ１Ｓ−１およびＵ２＝ＳＱ２Ｓ−１であり、因数Ｓは、Ｓ＝ＤＰＢ１Ｂ２ＭＡ１Ａ２Ａ３と表され、Ｄは固定的対角線マトリックスであり、Ｐは置換マトリックスであり、Ｂ１Ｂ２ＭＡ１Ａ２Ａ３はＮ×Ｎ固定マトリックスであり、ｉ＝１，２とした積Ｆｉ＝ＭＡ１Ａ２Ａ３ＱｌＡ３−１Ａ２−１Ａ１−１Ｍ−１が和Ｆ＋＝Ｆ１＋Ｆ２および差Ｆ−＝Ｆ１−Ｆ２を持つ疎のマトリックスであるとして、
前記決定手段が、
【数１１】
1997331532.tif 000011
という関係式に従って、因数２の一次元縮小サンプリングを実行する手段を含む、請求項１８に記載の画像縮小サンプリング装置。
【請求項２０】Ｑ１およびＱ２はＮ×ＮのＤＣＴマトリックスであり、Ｕ１＝ＳＱ１Ｓ−１およびＵ２＝ＳＱ２Ｓ−１であり、因数Ｓは、Ｓ＝ＤＰＢ１Ｂ２ＭＡ１Ａ２Ａ３と表され、Ｄは固定的対角線マトリックスであり、Ｐは置換マトリックスであり、Ｂ１Ｂ２ＭＡ１Ａ２Ａ３はＮ×Ｎ固定マトリックスであり、ｉ＝１，２とした積Ｆｉ＝ＭＡ１Ａ２Ａ３ＱｌＡ３−１Ａ２−１Ａ１−１Ｍ−１が和Ｆ＋＝Ｆ１＋Ｆ２および差Ｆ−＝Ｆ１−Ｆ２を持つ疎のマトリックスであるとして、
前記決定手段が、
【数１２】
1997331532.tif 000012
という関係式に従って、因数２の縮小サンプリングを実行する手段を含む、請求項１８に記載の画像縮小サンプリング装置。
【請求項２１】Ｑ１およびＱ２はＮ×ＮのＤＣＴマトリックスであり、Ｕ１＝ＳＱ１Ｓ−１およびＵ２＝ＳＱ２Ｓ−１であり、因数Ｓは、Ｓ＝ＤＰＢ１Ｂ２ＭＡ１Ａ２Ａ３と表され、Ｄは固定的対角線マトリックスであり、Ｐは置換マトリックスであり、Ｂ１Ｂ２ＭＡ１Ａ２Ａ３はＮ×Ｎ固定マトリックスであり、ｉ＝１，２とした積Ｆｉ＝ＭＡ１Ａ２Ａ３ＱｌＡ３−１Ａ２−１Ａ１−１Ｍ−１が和Ｆ＋＝Ｆ１＋Ｆ２および差Ｆ−＝Ｆ１−Ｆ２を持つ疎のマトリックスであるとして、
前記決定手段が、
【数１３】
1997331532.tif 000013
という関係式に従って、因数４の縮小サンプリングを実行する手段を含む、請求項１８に記載の画像縮小サンプリング装置。
【請求項２２】マトリックスＴ＝Ｔ１＋Ｔ２＋Ｔ３、Ｔ＋＝Ｔ１＋Ｔ３、Ｔ−＝（Ｔ１−Ｔ３）／２は疎であること、およびＤは固定的対角線マトリックスであり、Ｐは置換マトリックスであり、Ｂ１Ｂ２ＭＡ１Ａ２Ａ３はＮ×Ｎ固定マトリックスであるとしてＴ１Ｘ＋Ｔ２Ｙ＋Ｔ３Ｚ＝ＴＹ＋Ｔ＋（（Ｘ＋Ｚ）／２−Ｙ）＋Ｔ−（Ｘ−Ｚ）であることに基づいて、
前記決定手段が、
【数１４】
1997331532.tif 000014
という関係式に従って、因数３の縮小サンプリングを実行する手段を含む、請求項１８に記載の画像縮小サンプリング装置。
【請求項２３】
【数１５】
1997331532.tif 000015
である、請求項２２に記載の画像縮小サンプリング装置。
【請求項２４】ＤＣＴすなわち離散コサイン変換に基づく圧縮方式に従って圧縮された圧縮領域中において逆動き補償を実行する装置であって、
圧縮ビットストリームを復号して、ピクチャＴ−１を定義する複数のＮ×ＮのＤＣＴ型データ・ブロックおよび動きベクトルｈ,ｗを抽出するハフマン復号器と、
少なくとも１つのサンプリング・マトリックスに従いかつ前記動きベクトルに基づいて前記データ・ブロックのｎ個を処理して、ピクチャＴに対応する単一のＮ×ＮのＤＣＴ型データ・ブロックを生成するプロセッサと、を含み、
前記ｎは前記ピクチャｎ−１によって占有される領域を定義するために使用され、前記単一のデータ・ブロックは前記ｎ個のデータ・ブロックの平均を表すデータ・ブロックの組み合わせである、逆動き補償実行装置。
【請求項２５】前記プロセッサが、部分的に因数分解された演算子の使用を含む、請求項２４に記載の逆動き補償実行装置。
【請求項２６】ＸはｘのＤＣＴであり、Ｘ１,...,Ｘ４から直接決定されＸ＝Ｘ＋Ｅとして、所与の予測誤差ｅのＤＣＴ Ｅから現在時ブロックｘ＝ｘ＋ｅのＤＣＴ Ｘおよびｘ１,...,ｘ４のＤＣＴＸ１,...,Ｘ４を計算する手段を、前記プロセッサが含む、請求項２４に記載の逆動き補償実行装置。
【請求項２７】Ｑ１およびＱ２はＮ×ＮのＤＣＴマトリックスであり、Ｕ１＝ＳＱ１Ｓ−１およびＵ２＝ＳＱ２Ｓ−１であり、因数Ｓは、Ｓ＝ＤＰＢ１Ｂ２ＭＡ１Ａ２Ａ３と表され、Ｄは固定的対角線マトリックスであり、Ｐは置換マトリックスであり、Ｂ１Ｂ２ＭＡ１Ａ２Ａ３はＮ×Ｎ固定マトリックスであり、Ｂ１Ｂ２ＭＡ１Ａ２Ａ３はＮ×Ｎ固定マトリックスであるとして、
【数１６】
1997331532.tif 000016
および
【数１７】
1997331532.tif 000017
という固定マトリックスを事前計算する手段をさらに備える請求項２６に記載の逆動き補償実行装置。
【請求項２８】
【数１８】
1997331532.tif 000018
に従って、Ｘを決定する手段をさらに備える、請求項２７に記載の逆動き補償実行装置。
【請求項２９】
【数１９】
1997331532.tif 000019
に従って、Ｘを決定する手段をさらに備える、請求項２７に記載の逆動き補償実行装置。
【請求項３０】
【数２０】
1997331532.tif 000020
に従って、Ｘを決定する手段をさらに備える、請求項２７に記載の逆動き補償実行装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、データ圧縮に関するもので、特に、圧縮領域表現に対する縮小サンプリングおよび逆動き補償等の操作の直接実行に関するものである。
【０００２】
【従来の技術】
多くの画像およびビデオ操作アプリケーションは、合成、および、(ズームインまたはズームアウトという)縮小サンプリング、コントラストまたは輝度修正、変換、フィルタリング、マスキング、回転および逆動き補償等の特殊効果を実施するためデジタル画像またはビデオ・データのリアル・タイム操作を必要とする。画像およびビデオ・データのリアルタイム操作は、多くの場合データが圧縮形式の状態でのみ使用可能であるため、問題が多い。画像およびビデオ・データは、典型的には、ＪＰＥＧ、ＭＰＥＧ−１、ＭＰＥＧ−２、Ｈ.２６１またはＨ.２６３のような圧縮標準の１つに従って圧縮される。これら標準を本明細書において集合的に「圧縮規格」と呼ぶ。
【０００３】
圧縮領域データを取り扱う伝統的アプローチは、先ずデータを伸張して空間領域表示を作成し、次に所望の合成または特別な効果に適した画像またはビデオ操作技術を適用し、最後に操作されたデータを圧縮して圧縮規格に準拠するビットストリームを生成する。
【０００４】
図１は、画像データ操作に関する伝統的アプローチを示す流れ図である。最初に画像がディスク１１２上に記憶される。画像は、画像の記憶に必要なメモリ空間量を減少させるため、業界圧縮規格のいずれかの方式を使用した圧縮形式で記憶される。これらの圧縮方式の多くは、オリジナルの画像データを空間領域から圧縮領域へ変換するためいわゆる離散コサイン変換(Discrete Cosine Transformの頭文字をとってＤＣＴと呼ばれる)を使用する。８×８の２次元ＤＣＴ変換は、空間領域におけるブロック{x(n,m)}を以下の数２１の方程式に従って対応する周波数成分マトリックス{X(k,l)}へ変換する。(注：次式において、c(0)=1/21/2およびk>0の場合c(k)=1である)。
【０００５】
【数２１】
1997331532.tif 000021
【０００６】
伝統的アプローチは、圧縮されたデータに対する操作を行わない。その代わりに、画像データは圧縮領域から空間領域へ変換される(ステップ１１４)。圧縮方式がＤＣＴを使用する場合、伸張方式は、以下の数２２の方程式によって与えられる逆ＤＣＴ変換を使用する。
【０００７】
【数２２】
1997331532.tif 000022
【０００８】
データが空間領域に戻されると、周知の画像操作技術を使用して所望の画像が生成される(ステップ１１６)。逆動き補償を行う場合、ステップ１１６は既存の逆動き補償技術を使用する。次に、処理されたデータは同じ圧縮方式を使用して再び圧縮され(ステップ１１８)、ディスク１２０上の記憶へ戻される。図１にはディスク１１２および１２０が別々に示されているが、実際には同じ１つのものとすることができる。
【０００９】
(1)伸張および圧縮計算処理が高度に複雑であり、(2)取り扱うべき空間領域データが大量であるため、伝統的アプローチの使用は厄介である。伝統的アプローチは、多くの実際のアプリケーションにおいて、実行することができない場合がある。このため、圧縮された領域の中でこれらのタスクを直接実行し、それによって伸張の必要性を避けることができる迅速なアルゴリズムを開発する努力が近年払われてきた。そのようなアルゴリズムのいくつかの例は、S. F. Chang、D.G. Messerschmitt両氏著の"Manipulation and Compositing of MC-DCT Compressed Video, IEEE journal on Selected Areas of Communications, vol. 13, No. 1, pp. 111, 1994"、同じく上記両氏著の"A New Approach to Decoding and Compositing Motion-Compensated DCT Based Images, Proc. ICASSP '93,Minneapolis, April 1993"、W. Kou、T. Fjalbrant両氏著の"A Direct Computation of DCT Coefficients for a Signal Block Taken from Two Adjacent Blocks, IEEETrans. Signal Proc., Vol. SP-39, pp. 16921695, JulY 1991"およびJ. B. Lee、B. G. Lee両氏著の" Transform Domain Filtering Based on Pipelining Structure, IEEE Trans. Signal Proc., Vol- SP-40, pp. 2061-2064, August 1992"に記載されている。
【００１０】
ビデオ会議は、画像操作に関する適切な例を提供する。いくつかのグループが参加するビデオ会議では、各グループは、そのグループのワークステーションの画面上の別々のウィンドウで他のグループすべてを見ることができる。すべてのユーザがウィンドウのサイズを変更したり、画面上でウインドウの位置を変更したりすることができる自在性を持つことができれば望ましい。しかし、ワークステーション内の計算能力が限られているため、ただ１つのビデオ・ストリームだけしか効率的に取り扱うことができない場合がある。このような状況では、複数グループのビデオ会議を行うため、すべてのグループからビデオ・ストリームを先ずネットワーク・サーバに送信し、サーバがそれらを１つのストリームに合成するという方法をとることがある。伝統的アプローチでは、すべての圧縮ビデオ・ストリームがサーバにおいて先ず伸張され、次に適切な合成によって単一ストリームを形成するために必要な変更が、伸張されたビデオ・ストリームに対する適切な算術演算に変換され、最後に合成ストリームが再び圧縮されて、ユーザへ送れられる。サーバへ入力されるビデオ・ストリームおよびサーバによって出力される合成ストリームは特定の圧縮規格に準拠する必要があるかもしれない点に注意すべきであろう。標準準拠のシステム環境においては、伸張プロセスの間の逆離散コサイン変換(Inverse Discrete Cosine Transformの頭文字をとってＩＤＣＴと略称される)の計算および圧縮プロセスの間のＤＣＴ計算に関するサーバの計算負荷が非常に大きい。ＤＣＴおよびＩＤＣＴ演算の計算負荷が大きいため、ＤＣＴ領域で直接合成ストリームを生成することができるならば、その利益は大きい。従って、ＩＤＣＴ、ストリーム合成およびＤＣＴ機能が所望の規格準拠の単一合成ストリームを生成するため効果的に結合されているサーバを持つことが望まれる。そのようなサーバは、伝統的画像ストリーム合成を実施するサーバほど複雑でないという特長を持つであろう。そのようなサーバの別の特長として、ユーザ・ワークステーションが単一の合成ストリームだけを取り扱うだけでよく、従って単一の伸張プロセスのみを実行すればよいので、この方法はユーザ・ワークステーションに重い負荷をかけないという利点がある。更に、サーバとユーザ・ワークステーションの間の通信が、高い通信バンド幅資源を必要としないという特長もあげられるであろう。
【００１１】
圧縮領域の画像操作によって利益を得る別の応用分野は、画像キオスクおよび画像キオスクから家庭への画像配達である。典型的には、ユーザが画像キオスクにネットワーク上で接続すると、ユーザは、所望の画像の取得に先立ち、キオスクから配達可能な画像のカタログへ目を通したいことがあろう。そのような画像縦覧の目的のためなら、６４０×４８０のサイズで画像キオスクにＪＰＥＧ圧縮形式に従って記憶されているオリジナル画像を３２０×２４０という１／２に縮小サンプリングしたＪＰＥＧ圧縮画像をユーザに配送することで十分であるかもしれないので、圧縮形式の縮小サンプリング画像をユーザに提供することが適切である場合が存在する。ＤＣＴ領域に基づく圧縮規格に準拠する圧縮画像を縮小サンプリングする際に発生する問題は、もう１つの圧縮画像を生成するため、４つの圧縮データ・ブロックを取り出し単一の圧縮ブロックを作成することが必要であるという点である。例えば、１／２解像度を達成するため、１組の圧縮データ・ブロックを水平(Ｘ)および垂直(Ｙ)の両方向において減少させることが必要である(２圧縮データ・ブロック×２圧縮データ・ブロック＝４圧縮データ・ブロック）。同様に、３単位縮小サンプリングする場合、９つの圧縮データ・ブロックを結合させることが必要である。すなわち、ＸおよびＹ方向それぞれにおける３つの圧縮データ・ブロックから単一の縮小された圧縮データ・ブロックが作成される。
【００１２】
上述のようなＤＣＴ処理を基にした規格に関して、ＤＣＴブロック仕様を８×８に制約する方式がある。この場合縮小サンプリングされた出力もまた８×８ＤＣＴブロック仕様でなければならない。このようにすることによって、ＪＰＥＧ、ＭＰＥＧ−１、ＭＰＥＧ−２、Ｈ.２６１またはＨ.２６３準拠のビットストリームを取り扱うことができる一般的伸張機構によって圧縮ビットストリームを復号することができる。単に４×４ＩＤＣＴを実行して２単位縮小サンプリングされた画像を作成することによって所与の８×８ＤＣＴブロック仕様画像を縮小サンプリングする既知の方法がある点に注意する必要がある。例えばＪＰＥＧ、ＭＰＥＧ−１、ＭＰＥＧ−２、Ｈ.２６１およびＨ.２６３規格のための業界標準ハードウェアおよびソフトウェアの大部分が標準８×８ＤＣＴ形式でデータが保持されることを必要としているにもかかわらず、上記のアプローチはオリジナルの８×８ＤＣＴ形式を保持しない。従って、上記のようなアプローチが、データを非圧縮データに戻す変換を行うことなく圧縮領域にあるデータを直接処理する能力を提供しているにもかかわらず、圧縮領域表現に対して直接縮小サンプリングを行うように開発されたアルゴリズムは、業界規格のハードウエアおよびソフトウエア構成に準拠しないデータ出力を生成する。
【００１３】
第２の問題は、特にＤＣＴに基づくデータ圧縮方式(以下ＤＣＴ型圧縮方式と呼ぶ)に関するもので、逆動き補償の概念に関係がある。ビデオはピクチャのシーケンスとみなされる。圧縮されたビデオに関して、典型的には、最初のピクチャは、ＭＰＥＧ規格によって定義されているように、ある圧縮方式で処理されるアンカー・ピクチャ(すなわち基底ピクチャ)とみなされる。第２のピクチャは、ビデオには連続するピクチャ間に強い相関関係があるという事実を活用する。従って、第２のピクチャには完全な情報が必要ではない。むしろ、圧縮方式は、２つのピクチャ間の差分に対応する情報を送り出す。差分を計算するプロセスは動き補償として知られていて、差分のピクチャは、典型的には、叙述ピクチャまたは動き補償ピクチャと呼ばれる。そのような方式は、時間的に冗長な情報を除外するので、かなりのデータ圧縮を達成する。
【００１４】
そのような方式に関して、例えばビデオ・エディタを使用する時、問題が発生する。アンカー・ピクチャが削除された場合、後続のピクチャは、アンカーに依存しているため、すべてその内容を失う。従って、例えば圧縮領域の中でビデオ編集を実行することは現在の環境では実際的でない。従って、各ピクチャ間の依存性がビットストリームに含まれる圧縮ストリームを取り出し、ピクチャ間の依存性を取り除くことが必要とされる。このプロセスは、逆動き補償として知られている。この依存性を除去する１つの方法は、各ピクチャを見ることができるようにビットストリームを完全に伸張させることである。すなわち、ピクチャの各々はそのオリジナルの状態に戻され、その後、ピクチャを編集することができ、その後再び記憶または送信のため必要に応じて圧縮される。このようなケースでは、あいにく、所望の編集機能をサポートしなければならない伸張プロセスおよび再圧縮プロセスは、非常に高価な命題である。
【００１５】
【発明が解決しようとする課題】
従って、上記の問題点を解決するため、未圧縮領域(すなわち空間領域)において縮小サンプリングや逆動き補償のような画像およびビデオ処理を実行する形態ではなく、ＤＣＴ領域表現データを直接取り扱うことによって圧縮領域における処理を実行する効率的手段が必要とされている。
【００１６】
【課題を解決するための手段】
本発明は、圧縮領域表現形式に対する縮小サンプリングおよび逆動き補償を実行する方式を提供する。本発明が開示する技術は、空間領域表現形式の代わりに圧縮領域表現形式を直接操作することによって、計算処理の複雑性を顕著に減少させる。更に、本発明は、圧縮領域における処理を実行する技術を提供するので、ＭＰＥＧまたはＪＰＥＧのような画像非可逆性アルゴリズムを使用して画像を圧縮および再伸張する場合に発生するであろう品質劣化が起きない。
【００１７】
縮小サンプリングの場合、本発明の方法に従って、圧縮ストリームが、伸張および空間領域上の明示的縮小サンプリングを行うことなく、圧縮された領域(すなわちＤＣＴ領域)で処理され所望の尺度に縮小された画像に対応した圧縮画像が出力される。本発明の方法は、生成される圧縮ストリームが８×８ＤＣＴマトリックスという標準的構文に準拠することを保証する。典型的データ・セットに関する限り、データが先ず伸張され次に空間領域において縮小サンプリングが行われ次に記憶または伝送のため再圧縮されるという伝統的空間領域縮小サンプリング手法に比較して、圧縮領域において縮小サンプリングするという本発明の手段は、約８０％の計算処理の節約を実現する。逆動き補償の場合、本発明の手段は、動き補償された圧縮ビデオを現在時ピクチャのみの空間領域ブロックに対応するＤＣＴ領域ブロック・シーケンスに変換する。すなわち、各ピクチャは、他のフレームのデータに依存することのないＤＣＴブロック・シーケンスとして表現される。逆動き補償を圧縮領域において直接実行することによって、圧縮されたデータから動き補償を逆算する伝統的空間領域法と比較して計算の複雑性が約６８％減少する。縮小サンプリングおよび逆動き補償の機能は、多地点ビデオ会議やビデオ編集のような種々のアプリケーションにおいて使用されることができる。
【００１８】
発明の課題を解決するため、本発明は、ＤＣＴすなわち離散コサイン変換に基づく圧縮方式に従って圧縮された圧縮領域中の画像情報を直接縮小サンプリングする方法を含み、該方法は、圧縮ビットストリームを復号して複数のＮ×ＮのＤＣＴ型データ・ブロックを抽出するハフマン復号ステップ、および少なくとも１つのサンプリング・マトリックスに従って上記データ・ブロックのｎ個を処理して、単一のＮ×ＮのＤＣＴ型データ・ブロックを抽出するステップからなり、上記ｎは所望の縮小サンプリング因数によって決定され、上記単一のデータ・ブロックは上記複数のＮ×ＮのＤＣＴ型データ・ブロックの平均を表す。
【００１９】
【発明の実施の形態】
本発明の１つの実施形態は、伝統的なアプローチと比較して、２、３および４という単位の縮小サンプリング等の画像処理演算を実行するために必要な時間を減少させる。本明細書において、因数ｋという単位での縮小サンプリングとは、入力画像の解像度がＭ×Ｎピクセルであれば、縮小サンプリングした後結果として生成される空間領域画像解像度は、(Ｍ／ｋ)×(Ｎ／ｋ)であることを意味する。縮小サンプリング変換は線形であるため、ＤＣＴ領域における全体的効果も線形であり、従って、基本操作は固定マトリックスによる乗算として表現することができる。エントリが大部分０、１および−1であるような疎なマトリックスの積に分解できれば、このマトリックスによる迅速な乗算は可能である。
【００２０】
本発明は、(W. B. Pennebaker, J. L. Mitchell両氏著の"JPEG still Image Data Compression Standard, Van Nostrand Reinhold, pp. 50-63, 1993"に記載されている)迅速８点ＤＣＴ／ＩＤＣＴに対応するＤＣＴおよびＩＤＣＴ演算マトリックス分解の長所を活用することによって、圧縮領域において効率的に画像処理を実行する方式を提供する。
【００２１】
本発明の方式は、縮小サンプリング因数が２の場合約３７％、縮小サンプリング因数が３の場合約３９％、縮小サンプリング係数が４の場合約５０％それぞれ計算処理を節約する。計算処理という用語は、シフト(SHIFT)、加算(ADD)、シフト加算(SHIFTand ADD)、１シフト加算(SH1ADD)、２シフト加算(SH2ADD)、３シフト加算(SH3ADD)Ｄ)のようなマイクロプロセッサの基本算術演算に対応する。上記のような節約量は、ＤＣＴ領域における疎の度合いについていかなる仮定も設けていないので、最悪の場合の推定値である。典型的には、ＤＣＴブロックの大部分では、垂直および水平方向において低周波に対応する左上の４×４象現を除いて、ＤＣＴ係数のすべてはゼロである。この事実を考慮に入れれば、計算量節約は約８０％に達する。
【００２２】
本発明のもう１つの利点は、伝統的アプローチと比較して計算の精度が向上することである。精度向上の度合いは１.５から３ｄＢの間であることが観察された。本発明は圧縮領域において画像処理を実行する技術を提供するので、ＭＰＥＧまたはＪＰＥＧのような非可逆アルゴリズムを使用して画像を一旦伸張し次に再圧縮する場合に発生するような画像品質の損失がない。ＭＰＥＧまたはＪＰＥＧのような非可逆アルゴリズムにおいては、圧縮／伸張の各ステップは、高い圧縮度を達成するため意図的にまた再現不可能なように画像の一部を破棄する。
【００２３】
本発明の別の実施形態が提供する方式は、ＤＣＴ領域における動き補償演算を元に戻す迅速アルゴリズムを含む(上記動き補償演算は、S. F. Chang, D. G. Messerschmitt両氏著"Manipulation and Compositing of MC-DCT Compressed Video, IEEE journalon Selected Areas of Communications, Vol. 13, No. 1, pp.111, 1994"およびS. F. Chang, D. G. Messerschmitt両氏著"A New Approach to Decoding and Compositing Motion-Compensated DCT Based Images,l Proc. ICASSP '93, Minneapolis, April 1993"に記載されている)。本発明のアルゴリズムは、動き補償された圧縮ビデオのＤＣＴブロックを入力として受け取り、過去および将来のピクチャを参照することなく現在ピクチャのみに対応する空間領域ブロックのＤＣＴブロックを提供する。逆動き補償の演算は、ＤＣＴ圧縮領域におけるビデオ合成を可能にすると共に、縮小サンプリング、重ね合わせ、変換およびフィルタリングのような他のビデオ処理機能をも可能にする。
【００２４】
本発明の１つの実施形態は、上記引用文献において提案されている逆動き補償方式に対する改善を提供する。そのような既存の方式においてはＤＣＴブロックが十分疎である場合のみ計算処理が節約されるが、基準ブロックの大部分がオリジナル・ブロック間の境界に対し少なくとも１つの方向に配列されている限り、本発明の方式は、従来技術の疎または完全な配列という仮定を必要とすることなく、伝統的アプローチに比較して計算の複雑性を４７％減少させる。更に、典型的な場合がそうであるようにＤＣＴブロックの左上の４×４サブブロックのみがゼロでないという意味において、ＤＣＴブロックが疎であるという仮定に立てば、計算の複雑性は６８％減少する。
【００２５】
本発明の圧縮領域縮小サンプリングにおいては、４つのＤＣＴ領域の８×８サイズ・ブロックを所与として、それらを尺度縮小して単一の８×８ＤＣＴブロックを生成することが目的である。本発明は、空間領域演算の周波数領域表現形式を使用し、この形式をＤＣＴマトリックス分解プロセスに組み入れる。圧縮領域逆動き補償において、本発明は、２つのピクチャのブロック間の差分のＤＣＴおよび一方のピクチャのブロックのＤＣＴを所与として、第２の対応するブロックのＤＣＴを抽出することが目的である。ブロックが２つのピクチャにおいて共置されていないという事実のためこの計算は容易ではない。
【００２６】
ＪＰＥＧ、ＭＰＥＧまたはＰｘ６４圧縮方式で圧縮された画像およびビデオ・データに関して、本発明は、縮小サンプリング機能が空間領域で実施される場合に必要とされるものより少ない演算で画像またはビデオ・データを縮小サンプリングすることができる技術を提供する。逆動き補償に関しては、本発明の方法は、空間領域方法に比較して顕著な計算節約を生み出す。縮小サンプリングおよび逆動き補償に関する本発明の方法は、効率的ビデオ編集システムおよび可変画面サのビデオ会議システムに十分適するものである。
【００２７】
画像／ビデオ・エディタ
本発明に従った画像縮小サンプリングおよび逆動き補償の詳細に進む前に、このような機能を備えるシステムを図２に示す。図２のシステムは、事前処理された画像１２６をファイル１２４に記憶するディスクを含む。画像１２６は、例えばＪＰＥＧ、ＭＰＥＧ、Ｈ.２６１またはＨ.２６３のようなＤＣＴ型圧縮方式の１つに従う圧縮エンジン１２８によって圧縮される。画像は、例えば写真処理ショップで作成される。次に、圧縮された画像がファイル１２４に記憶され、写真の所有者が画像／ビデオ・エディタ１３０を使用してその写真を編集することが可能となる。画像／ビデオ・エディタ１３０は、本発明に従った画像縮小サンプリングまたは逆動き補償機能性を含み、ファイル１２４に記憶された圧縮画像データに対して操作を行い、処理された画像データをＤＣＴ領域に作成し、別のファイル１２９へ記憶する。画像縮小サンプリングまたは逆動き補償機能性を画像／ビデオ・エディタ１３０内部に備えるような代替実施形態も可能である。画像／ビデオ・エディタ１３０は、本発明に従ってあらかじめ定められた複数の縮小サンプリング関数を含むことができ、それによって、ユーザが所望の縮小サンプリング関数を指定することができる。ファイル１２９がファイル１２４とは別のディスク上に示されているが、これらのディスクは論理的に別のものであればよい。実際両ファイルは同一物理ディスクに記憶されることができる。圧縮画像が画像／ビデオ・エディタ１３０によって編集されたならば、写真処理ショップは編集された画像を伸張エンジン１３２で伸張し、編集済み画像１３４を作成し、それを所有者に渡すこともできる。
【００２８】
図３は、本発明に従って圧縮領域において画像およびビデオ処理を実行するシステム１００のブロック図である。画像処理システム１００は、ディスク・ドライブ１１１、メモリ１５および画像／ビデオ・エディタ１３０を含む。画像／ビデオ・エディタ１３０は、本発明の画像／ビデオ・エディタ機能を提供するようにプログラムされた専用コンピュータまたは汎用コンピュータでもよい。
【００２９】
画像／ビデオ・エディタ１３０は、圧縮画像を部分的に復号するハフマン復号器１２を含む。図３の例においては、ディスク・ドライブ１１１上の圧縮画像ファイル１２４が圧縮ビットストリーム１１としてハフマン復号器１２へ入力される。圧縮ビットストリーム１１は、ＭＰＥＧ、ＪＰＥＧ、Ｈ.２６１またはＨ,２６３のような既知のＤＣＴ型圧縮方式に従って圧縮されている。ハフマン復号器１２によって部分的に復号された画像がメモリ１５に書き込まれ、その後画像／ビデオ・エディタ１３０に提供される。
【００３０】
画像／ビデオ・エディタ１３０は、部分的に復号された画像１２８を受け取るためメモリ１５に接続される逆量子化器１４を含む。逆量子化器１４は、ＤＣＴ領域に８×８ブロックを生成する機能を含む。このように生成された８×８ＤＣＴブロックは、図３、図４ならびに図５を参照して後述されるＤＣＴ領域縮小サンプリングおよび図３、図６ならびに図７を参照して後述される逆動き補償のようなＤＣＴ処理方法を利用して修正することが可能な状態にある。
【００３１】
画像／ビデオ・エディタ１００の中核は、縮小サンプリング器１０および逆動き補償装モジュール３０から形成される。縮小サンプリング器１０または逆動き補償装モジュール３０のいずれか、あるいはその両方を含む種々の代替的実施形態が可能である。縮小サンプリング器１０および逆動き補償モジュール３０は、逆量子化された画像マトリックスを受け取るように逆量子化器１４に接続される。
【００３２】
縮小サンプリング器１０からの出力は、縮小サンプリングされた画像２３であり、逆動き補償モジュール３０からの出力は、逆動き補償フレーム４３である。それらの出力それぞれは量子化器２６およびハフマン符号化器２４によって更に処理される。ハフマン符号化器２４は、ハフマン復号器１２によって実行された部分的復号を逆にする。最後に、再符号化された画像が、例えば処理済み圧縮画像ファイル１２９として、ディスク・ドライブ１１１へ戻される。
【００３３】
圧縮領域における縮小サンプリング
図４は、本発明に従って圧縮領域で縮小サンプリングを実行する縮小サンプリング器１０のブロック図である。上述のように、逆量子化器１４が、部分的に復号された画像１２８をメモリ１５から受け取り、そこから一連の８×８ＤＣＴブロック２２を抽出して縮小サンプリング器１０へ提供する。詳細は後述するが、取り出し手段１６によってメモリから一連の８×８ブロックX1,X2,...が取り出され、縮小サンプリング手段１７によって、例えば、４つの８×８ＤＣＴブロックを結合して単一の８×８ＤＣＴブロックを作成する場合には２という因子１８による縮小サンプルまたは９つの８×８ＤＣＴブロックを結合して単一の８×８ＤＣＴブロックを作成する場合には３という因子１９による縮小サンプルというように所望の縮小サンプリング因子に基づいて、縮小サンプリング値Xが計算される。縮小サンプリングされた画像X２３は、次に、更に処理を行うためあるいは表示／再生のため、必要に応じて、出力される。例えば、画像２３は、図３に示されるように、圧縮ビットストリーム２５の出力を生成するためハフマン符号化器２３に提供され、最終的に圧縮画像ファイル１２９としてディスク・ドライブ１１１に記憶される。
【００３４】
本発明の方式は、他の方式と異なり、圧縮領域における縮小サンプリングを達成するため、少なくとも４つのＤＣＴブロックを結合し、オリジナル・ブロックの各々と同じサイズの１つのＤＣＴブロックを出力する。すなわち、４個またはそれ以上の８×８ＤＣＴブロックが結合され、それら結合されたブロックの平均である単一の８×８ＤＣＴブロックが生成される。
【００３５】
８×８の２次元ＤＣＴは、空間領域にある次の数２３のブロックを数２４の式(1)に従って数２５で示される周波数成分マトリックスに変換する。但し、式(1)においてC(0)=1/21/2で、k>0の場合c(k)=1である。
【００３６】
【数２３】
1997331532.tif 000023
【００３７】
【数２４】
1997331532.tif 000024
【００３８】
【数２５】
1997331532.tif 000025
逆変換は次の数２６の式(2)によって与えられる。
【００３９】
【数２６】
1997331532.tif 000026
マトリックス形式において、
【００４０】
【数２７】
1997331532.tif 000027
および
【００４１】
【数２８】
1997331532.tif 000028
とし、次の数２９の８点ＤＣＴマトリックスを定義すれば、
【００４２】
【数２９】
1997331532.tif 000029
但し
【００４３】
【数３０】
1997331532.tif 000030
X=SxSt       (4)
である。上式(4)において、肩文字tはマトリックス転移を示す。同様に、肩文字-tが逆向き転移を示すとすれば、
ｘ=S-1XS-t=StXS   (5)
である。
【００４４】
ここで、１６×１６四辺形を形成する４つの隣接する８×８空間領域データ・ブロックx1、x2、x3およびx4が存在すると仮定する。x1は北西位置、x2は北東位置、x3は南西、x4は南東にそれぞれ相当する位置にあるとする。各次元における２という因子による縮小サンプリング(間引き)は、小さい２×２ブロックを形成するあらゆる非オーバーラップの４ピクセル・グループが、その４つのオリジナル・ピクセルの平均である強度を持つ１つのピクセルによって置き換えられるということを意味する。結果として、オリジナルのブロックx1、x2、x3、x4は、それらの縮小サンプリングに対応する単一の８×８出力ブロックｘによって置き換えられる。本発明の目的は、オリジナルのブロックの所与のＤＣＴX1、X2、X3、X4から直接ｘのＤＣＴであるXを効率的に計算することである。
【００４５】
入力ブロックの数が９および１６の場合の因数３および４による縮小サンプリングの課題も同様に定義される。因数２の場合と同様に、因数３の場合はあらゆる３×３ピクセル非オーバーラップ・グループが、因数４の場合はあらゆる４×４ピクセル非オーバーラップ・グループが、それのピクセルの平均値を持つ単一のピクセルによって置き換えられる。
【００４６】
説明の単純化のため、先ず１次元ケースで因子２の縮小サンプリングを考察する。２次元ケースは、各ブロックのすべての行に関する繰り返しを行い、次にあらゆる列について繰り返しを行う。この場合、長さ８、x1=S-1X1およびx2=S-1X2という隣接時間領域ベクトルに対応するＤＣＴ係数の２つの８次元ベクトルX1およびX2が所与とされ、各コンポーネントがx1またはx2における２つの適切な隣接コンポーネントの平均値を持つ８次元ベクトルｘのＤＣＴであるXを計算することが必要である。
【００４７】
次式(6)のマトリックス形式で縮小サンプリング演算を記述することは便利である。
x=(Q1x1+Q2x2)/2        (6)
但し、上式においてQ1およびQ2は次の数３１および数３２である。
【００４８】
【数３１】
1997331532.tif 000031
【００４９】
【数３２】
1997331532.tif 000032
【００５０】
従って
X=(SQ1S-1X1+SQ2S-1X2)     (7)
である。
次に、マトリックスU1=SQ1S-1およびU2=SQ2S-1の効果的分解を考察する。８点ＤＣＴに関する既存の最高速アルゴリズムに対応するＳの分解が使用される。このアルゴリズムは、W. B. Pennebake, J. L. Mitchell両氏著の"JPEG Still Image Data Compression Standard, Van Nostrand Reinhold, pp. 50-63, 1993"に記載されている。この分解アルゴリズムに従って、Sは、
S=DPB1B2MA1A2A3      (8)
として表記される。
Ｄは、
D = diag{0.3536, 0.2549, 0.2706, 0.3007, 0.3536, 0.4500, 0.6533, 1.2814}     (9a)
によって与えられる対角線マトリックスである。
Ｐは、次式(9b)によって与えられる置換マトリックスである。
【００５１】
【数３３】
1997331532.tif 000033
残りのマトリックスは、以下の式(9c)ないし式(9h)のように定義される。
【００５２】
【数３４】
1997331532.tif 000034
【００５３】
【数３５】
1997331532.tif 000035
【００５４】
【数３６】
1997331532.tif 000036
【００５５】
【数３７】
1997331532.tif 000037
【００５６】
【数３８】
1997331532.tif 000038
【００５７】
【数３９】
1997331532.tif 000039
かくして、i=1,2に関して、次式(10)が得られる。
【００５８】
【数４０】
1997331532.tif 000040
【００５９】
本発明の縮小サンプリング・アルゴリズムは、次式(11)の積がかなり疎なマトリックスであり、対応するエレメントの大部分は同じもので時々符号が異なるという観察に基づいている。これは、それらの和F+=F1+F2およびそれらの差F-=F1-F2は一層疎であることを意味する。
【００６０】
【数４１】
1997331532.tif 000041
このようなマトリックスは次の数４２および数４３のように与えられる。
【００６１】
【数４２】
1997331532.tif 000042
【００６２】
【数４３】
1997331532.tif 000043
最後に、式(10)および式(11)を使用して、式(7)は次式(12)のように書き換えられる。
【００６３】
【数４４】
1997331532.tif 000044
【００６４】
次に、式(12)の最右辺を実施するために必要とされるマイクロプロセッサ上の基本算術演算の数を数え、それを空間領域アプローチと比較する。上述のように、ここでいう演算は、シフト(SHIFT)、加算(ADD)、シフト加算(SHIFTand ADD)、１シフト加算(SH1ADD)、２シフト加算(SH2ADD)、３シフト加算(SH3ADD)Ｄ)のようなマイクロプロセッサの基本算術に対応する演算を指す。例えば、計算z=1.375x+1.125yは、次のように実施される。先ずu=x+0.5x(SHlADD)を計算して、次にv=x+0.25u(SH2ADD)を計算し、その後w=v+y(ADD)を計算し、最後にz=w+0.125yを計算する。 このように、全体で４回の基本演算が必要とされる。
【００６５】
演算を数える時、DとD-1の乗算は、それらが逆量子化器１４および量子化器２６によってそれぞれ吸収されるので、無視することができるという事実を使用する。マトリックスPおよびP-1はコンポーネントの順序の変化のみを発生させるので、同様に無視することができる。
かくして、以下の演算が残る。( )内は加算／減算の数および意味のある乗算の数を示す。
＊  X1+X2および X1-X2作成演算：１６演算(１６加算)。
＊  ２回のB-11による乗算：８演算(８加算)
＊  ２回のB-12による乗算：８演算(８加算)
＊  F+による乗算：２３演算(５乗算＋５加算)。
＊  F-による乗算：２８演算(６乗算＋４加算)。
＊  積の加算：８演算(８加算)。
＊  B2による乗算：４演算(４加算)。
＊  B1による乗算：４演算(４加算)。
＊  合計：１１５演算(１１乗算＋５７加算)。
【００６６】
一方、空間領域アプローチでは次の演算が必要である。
＊  ２つのＩＤＣＴ：１１４演算(１０乗算＋６０加算)。
＊  時間領域における縮小サンプリング：８演算(８加算)。
＊  ＤＣＴ：４２演算(５乗算＋３０加算)。
＊  合計：１６１演算(１５乗算＋９８加算)。
このように、本発明の方式は、１次元のケースにおいて演算の約３０％を節約する。２次元ケースにおいても複雑性を大幅に減少させることが可能である。
【００６７】
本発明の方式の副産物として、演算の精度向上が得られる。直接アプローチにおいては、マトリックスの各々１つが式(11)の右辺で一時点で１つずつ乗算されるので、これらのマトリックスのエレメントの有限ワード長表現に関連して発生する丸め誤差が各ステップ毎に累積される。一方、本発明の方式においては、Fiを一度にかついかなる所望の精度についてもすべて事前計算し、これらのマトリックスの各エレメントを所望の精度に丸めることが可能である。詳細は後述するが、後者の方が精度は高い。
【００６８】
次に２次元ケースを考察する。２次元ＤＣＴは行単位のＤＣＴ操作として実行される。行単位ＤＣＴ操作は、空間領域画像ブロックの各行の１次元ＤＣＴをとり出すことを意味する。列単位ＤＣＴ操作は、行単位ＤＣＴ操作の後のブロックの各列の１次元ＤＣＴを取り出すことを意味する。従って、本発明は２次元のケースにも容易に適用することができる。以下に因数２、３および４の縮小サンプリングの計算方式の詳細を記述する。
【００６９】
因子２の縮小サンプリング
次の式(13)は、式(6)を２次元へ拡張したものである。
【００７０】
【数４５】
1997331532.tif 000045
上式において、ｘは、８×８ブロックx1, x2, x3およびx4によってカバーされた区域に関する因数２縮小サンプリングされた２次元８×８ブロックである。
式(12)の対応するＤＣＴ領域拡張は次式(14)である。
【００７１】
【数４６】
1997331532.tif 000046
【００７２】
従って、本発明は、ＤＣＴ領域のデータを直接操作することによってXを効率的に計算する。空間領域アプローチは、x1, x2, x3およびx4を計算するための明示的ＩＤＣＴ実行、その後の式(13)を使用したｘの計算およびXを得るためのｘのＤＣＴの取り出しを必要とする。
【００７３】
再び、式(14)の右辺を次の数４７および数４８のように表すことが望ましい。
【００７４】
【数４７】
1997331532.tif 000047
【００７５】
【数４８】
1997331532.tif 000048
【００７６】
また、次の式(15)ないし(18)を定義する。
X+++ = X1+X2+X3+X4     (15)
X+-- = X1+X2-X3-X4     (16)
X-+- = X1-X2+X3-X4     (17)
X--+ = X1-X2-X3+X4       (18)
前述の線形組み合わせのすべてを作成する場合、周波数成分毎に(１２ではなく)８個の加算／減算が必要なだけである点に注意する必要がある。すなわち、先ず(X1±X2)および(X3±X4) を計算し、次に(X1+X2)±(X3+X4)および(X1-X2)±(X3-X4)を計算する。式(14)は次の式(19a)のように書き換えることができる。
【００７７】
【数４９】
1997331532.tif 000049
【００７８】
式(19a)の最右辺を実施する場合の演算の数を数えると、合計２８２４回の演算である。一方、空間領域アプローチは４５１２回の演算を必要とする。これは、本発明の方式を使用すれば演算の３７.４％が節約されることを意味する。
【００７９】
典型的な画像において大部分のＤＣＴブロックXiが、通常は低周波係数である２、３の非ゼロ係数だけを持つという事実を利用することによって更に計算量を節約することができる。このような計算量の一層の節約を実施するアプローチの１つは次のような２つのステップで動作するメカニズムを使用する。第１のステップにおいて、ＤＣＴブロックがローパスまたは非ローパスに分類される。ローパスは左上４×４サブブロックだけ非ゼロであるブロックとして定義される。第２のステップは、ローパス・ブロックに関する上述の計算方式、または、上述のマトリックス乗算の事前計算に関するローパス仮定を使用する一層迅速な方式のいずれかを使用する。X1,...X4がすべてローパス・ブロックであれば、計算量の減少は約８０％であることが判明する。この同じアプローチを後述される３および４因子の縮小サンプリングにも適用できる。
【００８０】
図５は、図４の縮小サンプリング手段１７による因子２の縮小サンプリングを示すブロック図である。図５の回路は、デジタル画像処理技術における式(19a)の実際の応用である。
【００８１】
マトリックスX1、X2、X3およびX4は取り出し手段１６から送られ、マトリックス加算ネットワーク４０１へ入力され、Ｘ+++、X+--、X-+-およびX--+が生成される。マトリックス加算ネットワーク４０１は、式(15)、(16)、(17)および(18)を実施する。Ｘ+++は乗算器４０３、４０５、４０７および４０９によって、またX+--は乗算器４１１ないし４２９によって、それぞれP-1、B-11、B-12およびF+を乗じられる。同様に、X-+-およびX--+は、乗算器４１７ないし４３１および乗算器４２３ないし４３３によってそれぞれP-1、B-11、B-12およびF-を乗じられる。
【００８２】
マトリックス加算ネットワーク４０１およびマトリックス乗算器４０３ないし４３３によって生成されたこれらの結果のマトリックスは加算器４３５および４３７によって加算される。マトリックス加算器４３５によって加算される項目は、数量Ｘ+++P-1B-11B-12F+およびX+--P-1B-11B-12F-であり、マトリックス加算器４３７によって加算される項目は数量Ｘ-+-P-1B-11B-12F+およびX--+P-1B-11B-12F-である。
【００８３】
マトリックス加算器４３５および４３７によって生成された和の各々にマトリックス乗算器４３９ないし４４９によってマトリックスP-tB-t1B-t2が乗じられる。マトリックス乗算器４４３によって生成された積にはマトリックス乗算器４５１によってマトリックスF+が更に乗じられ、また、マトリックス乗算器４４９によって生成された積にはマトリックス乗算器４５３によってマトリックスF-が更に乗じられる。次に、乗算器４４９および４５１の結果がマトリックス加算器４５５によって加算される。この加算結果は次の式(19b)となる。
【００８４】
【数５０】
1997331532.tif 000050
逆量子化器１４および量子化器２６は、式(19)のマトリックスD、D-1、DtおよびDt-1を伴う計算を含む。従って、縮小サンプリング手段１７において、これらのマトリックスを乗算するためのマトリックス乗算器は必要とされない。
【００８５】
式(19b)の和は、次に、マトリックス乗算器４５７ないし４６７によって式(19a)の残りのマトリックスB2、Bt2、B1、Bt1、PおよびPtが乗じられ、最後に乗算器４６９によって縮小サンプリング因子1/16が乗じられる。
【００８６】
因子４の縮小サンプリング
因子４による縮小サンプリングの１つのアプローチは因子２の縮小サンプリングを２回行うことである。しかし、同様の方法を使用して因子４による縮小サンプリングを直接行う一層効率的方式を開発することができる。因子４による縮小サンプリングは以下の数５１から数５５までのマトリックスを含む。
【００８７】
【数５１】
1997331532.tif 000051
【００８８】
【数５２】
1997331532.tif 000052
【００８９】
【数５３】
1997331532.tif 000053
【００９０】
【数５４】
1997331532.tif 000054
【００９１】
【数５５】
1997331532.tif 000055
次に、以下の数５６および数５７に示される式(21)ないし(28)を定義する。
【００９２】
【数５６】
1997331532.tif 000056
【００９３】
【数５７】
1997331532.tif 000057
また、入力データに関する以下の数５８および数５９における式(29)ないし(36)の線形組み合わせを定義する。
【００９４】
【数５８】
1997331532.tif 000058
但しi=1,2,3,4
【００９５】
【数５９】
1997331532.tif 000059
【００９６】
これらの組み合わせのすべてを作成するためには、周波数コンポーネントあたり６４回の加減算が必要である。
計算の結果、式(19a)と同様に、次式(37)が得られる。
【００９７】
【数６０】
1997331532.tif 000060
【００９８】
この式を実行する際の演算数は、空間領域アプローチにおける１６２２４回の演算に対して８２２４回である。式(37)は、図４に関連して上述した形態と同様なハードウェア・マトリクス乗算器および加算器を使用して実施することが可能である。
【００９９】
因子３による縮小サンプリング
因子３による縮小サンプリングは、平均されるべき３×3ブロックのいくつかが１つの８×８ＤＣＴブロックの範囲内に完全には位置しないので、因子２および４より厄介でありそれほど優雅ではない。この場合、次の３種類の縮小サンプリング・マトリックスがあり、ｘは数６４の式(38)のように定義される。
【０１００】
【数６１】
1997331532.tif 000061
【０１０１】
【数６２】
1997331532.tif 000062
【０１０２】
【数６３】
1997331532.tif 000063
【０１０３】
【数６４】
1997331532.tif 000064
【０１０４】
因子２および４の場合と同様に、以下の式(39)、(40)および(41)を定義する。計算方式は、下記式(42)、(43)および(44)が相対的に疎であるという事実および式(45)の認識に基づいている。
【０１０５】
【数６５】
1997331532.tif 000065
T  = T1 + T2 + T3     (42)
T+ = T1 + T3          (43)
T- = (T1 - T3)/2      (44)
T1X+T2Y+T3Z=TY+T+((X+Z)/2-Y)+T-(X-Z)       (45)
式(38)がＤＣＴ領域に変換され、若干の代数的操作を行った後式(45)を使用してT、T+およびT-に関して固定的マトリックスを表現すれば、次式(46)が得られる。
【０１０６】
【数６６】
1997331532.tif 000066
但し
【０１０７】
【数６７】
1997331532.tif 000067
{X1,...X9}から{X'1,,...,X'9}への変換は、周波数成分あたり１８回の演算で実行することができる。式(46)の総演算回数は５７２８である。一方、空間領域アプローチの総演算回数は９３９２であるので、約３９％の計算量節約である。
【０１０８】
本発明の１つの実施形態において、因数３の縮小サンプリングは、図4に関連して上述した因子２の縮小サンプリングの場合と同様な形態のマトリックス乗算器およびマトリックス加算器を使用して実施される。
【０１０９】
本発明の計算方式は、標準的アプローチよりすぐれた演算精度を提供する。この事実は、因子２の縮小サンプリングの場合に関する以下の両方式のテストによって確認できる。以下のテストでは、マトリックスの各成分は８ビットである。
【０１１０】
第１のテストでは、成分x1,...x4は、セット{0,1,...,255}において一様に分散した統計学的に独立したランダムの整数として選ばれた。基準のためx1,...x4から直接まずxを、次にXを計算する。次に、所与の量子化マトリックスΔに従ってすべてのＤＣＴ計数が量子化され次に逆量子化されるようにＤＣＴX1,..,X4を計算する。X1,...,X4を基に、標準および本発明両方のアプローチを使用して、Xを計算し、その結果を基準値と比較する。この場合、各アプローチの精度は、ＤＣＴ領域および空間領域における誤差の平方和(すなわちＭＳＥ)で測定される。Δがすべて１つのマトリックスの場合、本発明方式のＭＳＥは、標準アプローチより約３ｄＢすぐれている。Δが輝度に関してＪＰＥＧの推奨された量子化マトリックスである場合には(この点についてはW. B. Pennebaker, J. L. Mitchell両氏著"JPEG still Image Data Compression Standard, Van Nostrand Reinhold, 1993"を参照のこと)、本発明の方式は、１.2ｄＢ標準方式を上回る。量子化器のステップのサイズが増加する時、ＤＣＴ係数に関連する量子化誤差が不正確な計算に関連する丸め誤差の大半の原因となる傾向があるので、上記の結果は理にかなっている。
【０１１１】
第２のテストも同様であるが、テスト・データがランダム・データではなく実像に基づいている。すべて１つのマトリックスの場合、標準アプローチは４６.０８ｄＢのＳＮＲを派生するが、一方、本発明のアプローチは４９.０２ｄＢで、やはり３ｄＢ改善されている。ΔがＪＰＥＧデフォルト量子化器の場合、数値はそれぞれ３６.６３ｄＢおよび３６.８４ｄＢである。大部分のＤＣＴ係数が両方の技術においてゼロに丸められているので、ランダム・データの場合より改善の程度が少ない。
【０１１２】
逆動き補償
図６は、本発明に従った画像／ビデオ・エディタ１３０の圧縮画像領域において逆動き補償を実行する逆動き補償モジュール３０を示すブロック図である。図３で示されたように、画像／ビデオ・エディタ１３０は、縮小サンプリング器１０を含む場合もある。図３に関連して述べたように、ディスク１２４から取り出された圧縮ビットストリーム１２８は、ハフマン復号器１２によって部分的に復号される。ビットストリームは、ＭＰＥＧまたはＨ.２６１のような既知のＤＣＴ型ビデオ圧縮方式に従って圧縮されている。部分的に伸張されたビットストリーム１２８は、逆量子化器１４によって逆量子化される。
【０１１３】
逆量子化器１４は、逆動き補償モジュール３０に接続されている。逆動き補償モジュール３０のピクチャ取り出しモジュール３７−４１は、逆量子化され部分的に伸張されたビットストリームX1,X2...から、(時間Ｔにおける)現在時ピクチャに対応するＤＣＴ８×８ブロック、および、(時間Ｔ−１における)アンカー・ピクチャと現在時ピクチャの間の差分に対応する動きベクトルh、wを抜き出す。次に、ＤＣＴブロックおよび動きベクトル情報は式(59)の計算を実行する処理装置４０へ送られる。
【０１１４】
詳細は以下に記述されるが、最高４つの８×８ＤＣＴブロックが単一の８×８ＤＣＴブロックを生成するため結合されるように、８×８ＤＣＴブロックは、アンカー・ピクチャ(Ｔ−１)の範囲内の所望の区域に位置を定めるように処理される。取り出しモジュール３６がメモリ１５からh、wを取り出し、別のモジュール４１が、ピクチャ(Ｔ−１)を構成する４つの８×８ＤＣＴブロックX1,X2,X3,X4を取り出す。更に別のモジュール３７が、hおよびwを使用して、必要とされるマトリックスJ、Kを取り出し、それによって、一組の固定的マトリックスを事前計算する。別のモジュール３８が、現在時ピクチャ(Ｔ)に対応する８×８ＤＣＴブロックをメモリから取り出す。アンカー・ピクチャ(Ｔ−１)の適切な区域の位置が定められると、逆動き補償計算(すなわち後述の式59の計算)を実行するため、アンカー・ピクチャ(Ｔ−１)を確立するために必要な情報を含む４つの８×８ＤＣＴブロックが処理装置４０によって単一の８×８ＤＣＴブロックに変換され、変換されたブロックがアンカー・ピクチャ(Ｔ−１)と現在時ピクチャ(Ｔ)の間の差分を表す８×８ＤＣＴブロックと加算器３９によって加算され、独立した画像が生成される。動き補償が行われたＤＣＴブロック４３は、図３に示されるように量子化器２６、次いでハフマン符号化器に送られ、出力２５がディスク・ドライブ１１に記憶される。
【０１１５】
圧縮ビデオの動き補償は、現在時ピクチャの各８×８空間領域ブロックを前のピクチャの対応する基準ブロックxによって予測し、ＤＣＴを使用して予測誤差ブロックe=x-xを符号化すること(上述の式(1)ないし(5)参照)を意味する。例えばＢ−ピクチャのようないくつかのピクチャにおいては、ブロックは、過去および将来の基準ブロックから推定される。この点に関する技術情報は、Audio. Committee Draft of Standard IS011172, ISO/MPEG 90/176, December 1990Video Codec for Audio Visual Services at px64 Kbits/s, CCITT Recommendation H.261, 1990およびD. le Gall, MPEG:A Video Compression Standard for Multimedia Applications, Commun. of the ACM, Vol. 34, No. 4, pp.47-58, April 1991に記載されている。簡略化のため、過去(すなわちＰ−ピクチャ)だけが使用され、拡張は直線的であると仮定する。
【０１１６】
最もよく合致する基準ブロックは、基準ピクチャのオリジナルの８×８ブロックに合わないかもしれない。一般的に、基準ブロックは、１６×１６平面を構成するX1,X2,X3およびX4の４つの空間領域ブロックと交差する可能性がある。
【０１１７】
目標は、所与の予測誤差ｅのＤＣＴ Eから現在時ブロックx=x+eのＤＣＴ Xを計算し、x1,...,x4のＤＣＴX1,...,X4を計算することである。X=X+E(XはxのＤＣＴ)であるので、残りの主要課題は、X1,...,X4からXを直接計算することである。
【０１１８】
基準ブロックxとx1の共通部分が行hおよび列wからなる長方形を形成すると仮定する(但し、1≦h≦8、1≦w≦8とする)。これは、xとx2、x3およびx4の共通部分がそれぞれh×(8-w)、(8-h)×wおよび(8-h)×(8-w)の大きさの長方形であることを意味している。
【０１１９】
上記引用Chang、Messerschmitt両氏著の文献によれば、xはx1,...x4の移動シフトしたものの重ね合わせとして表現できることが容易にわかる。すなわち、xは次式(56)のように表される。
【０１２０】
【数６８】
1997331532.tif 000068
【０１２１】
但し、ci,j(i=1,...,4, j=1,2)は、移動シフト演算を実行するゼロと１の疎な８×８マトリックスである。Chang、Messerschmitt両氏著の上記文献に記載の技術の背後にある基本的思想は、ＤＣＴに関するマトリックス乗算の分散的属性を活用することである。具体的には、StS=Iであるので、式(56)は次式(57)のように書き換えることができる。
【０１２２】
【数６９】
1997331532.tif 000069
次に、式(57)の両辺にSを乗じ、更にStを乗ずることによって、次式(58)が得られる。
【０１２３】
【数７０】
1997331532.tif 000070
【０１２４】
但し、CijはcijのＤＣＴである。Chang、Messerschmitt両氏は、固定的マトリックスCijをwとhのあらゆる可能な組合せに関して事前計算し、式(58)を使用してＤＣＴ領域で直接計算することを提案した。マトリックスCijの大部分は疎でないけれども、{Xi}の典型的な疎に基き、また、w=8またはh=8いずれか１方向ですなわち式(58)の右辺が２項目のみを持つか、あるいは、x=x1で計算が全く必要がないw=h=8という両方向に、基準ブロックが配列されているという事実によって、計算はなお節約できる。
【０１２５】
xの計算は、次の２つの主な事実を使用することによって、一層効果的に実行される。第１に、cijマトリックスのいくつかは所与のwおよびhのすべてについて互いに等しい。すなわち、
【０１２６】
【数７１】
1997331532.tif 000071
【０１２７】
【数７２】
1997331532.tif 000072
である。但し、IhおよびIwは、それぞれ次元h×hおよびw×wの識別マトリックスである。同様に、
c31=c41=L8-h
および
c2=c42=U8-w
である。
【０１２８】
計算節約に役立つ第２の事実は、Cijの完全な事前計算を行うのではなく、これらのマトリックスを比較的疎なマトリックスに分解しておく方が一層効率的であるという点である。特に、本発明の方式は、Sという因数に分解する(式8および９参照)。
【０１２９】
上記２つの事実を使用する最良の形態は次の通りである。第１に、次の数７３および数７４の固定的マトリックスを事前計算する。
【０１３０】
【数７３】
1997331532.tif 000073
【０１３１】
【数７４】
1997331532.tif 000074
上記マトリックスは非常に構造的であるので、KiまたはJiによる事前計算は非常に効率的に実行することができる。次に、次式(59)を使用してXを計算する。
【０１３２】
【数７５】
1997331532.tif 000075
式(59)は、式(57)の使用あるいは次式(60)の２重形式のいずれかを所与のwおよびhに対して計算量が少ない方を使用することによって、容易に得ることができる。
【０１３３】
【数７６】
1997331532.tif 000076
【０１３４】
図７は、本発明に従ってＤＣＴ型逆動き補償を実行するマトリックス演算ハードウェアのブロック図である。上述のように、モジュール４１がマトリックスX1, X2, X3およびX4を取り出す。別のモジュール３６が動きベクトルhおよびwをメモリ１５から取り出す。動きベクトルを使用して、該当するマトリックスJiおよびKiがメモリ１５から取り出される。
【０１３５】
マトリックスX1には、マトリックス乗算器７０３，７０５，７０７、７０９によってマトリックスおよびマトリックスJtwが乗じられ、X2には、マトリックス乗算器７０３'，７０５'，７０７'、７０９'によってマトリックスP、B1、B2およびマトリックスKt8-wが乗じられ、X3には、マトリックス乗算器７０３"，７０５"，７０７"、７０９"によってマトリックスP、B1、B2およびマトリックスJtwが乗じられ、X4には、マトリックス乗算器７０３"'，７０５"'，７０７"'、７０９"'によってマトリックスP、B1、B2およびマトリックスKt8-wが乗じられる。
【０１３６】
次に、乗算器７０９および７０９'の結果が加算器７１１によって加算され、乗算器７０９"および７０９"'の結果が加算器７１１'によって加算される。加算器７１１および７１１'の結果の各々にマトリックス乗算器７１３，７１５，７１７および７１３'，７１５'，７１７'によってそれぞれPtBt1Bt2が乗じられる。マトリックス乗算器７１７の結果には、マトリックス乗算器７１９によってJhが乗じられ、マトリックス乗算器７１７'の結果には、マトリックス乗算器７１９'によってk8-hが乗じられる。マトリックス乗算器７１９および７１９'の結果はマトリックス加算器７２１によって加算され、出力ＤＣＴXが生成される。最後に加算器７２３によってＤＣＴXにEが加算され、所望の結果のXが生成される。本発明の１つの実施形態において、処理装置４０は、ハードウェア・マトリクス乗算器および加算器を使用して実施される。代替的実施形態においては、図６に示されたマトリックス操作は汎用コンピュータ上で実行されるソフトウェアの形態で実施される。プログラム可能論理装置およびファームウェアを備えるその他の装置で代替的に実施することもできる。
【０１３７】
JiおよびKiの乗算を如何に迅速に実行できるかを次に示す。例として、J6を考察する。その他のマトリックスも同様の形態で処理される。
マトリックスJ6は次の数７７の通りである。
【０１３８】
【数７７】
1997331532.tif 000077
【０１３９】
但し、a=0.7071, b=0.9239およびc=0.3827である。
U=(U1,...,U8)tおよびV=(V1,...,V8)tとして、U=J6Vを計算するため、以下のステップに従って計算を行う。
Y1=V1+V2             (61)
Y2=V1-V2             (62)
Y3=aV3               (63)
Y4=aV6               (64)
Y5=Y1-Y3             (65)
Y6=Y5-V4             (66)
Y7=Y3-Y4             (67)
Y8=Y3+Y4             (68)
Y9=(b+c)(V5+V7)      (69)
Y10=cV5              (70)
Y11=bV7              (71)
Y12=Y9-Y10-Y11       (72)
Y13=Y10-Y11          (73)
U1=Y2-Y7+Y12         (74)
U2=Y6+Y12            (75)
U3=Y6-Y12            (76)
U4=Y2-Y8-Y12         (77)
U5=Y2+Y7+Y13         (78)
U6=Y1+Y3+V4+Y13-V8   (79)
U7=0                 (80)
U8=0                 (81)
上記ステップは、５回の乗算および２２回の加算を必要とする。
【０１４０】
すべてのマトリックスJ1,...J8について同様の実施方式のマトリックス乗算を開発することによって、、1≦i≦8である{Ji}を乗ずるために必要な演算の回数{Ni}は、N1=18, N2=24, N3=38, N4=39, N5=40, N6=43, N7=44およびN8=46によって与えられる。マトリックスKiがあらゆる1≦i≦8に関するJiに類似した構造を持っているので、Kiによる乗算もまたNi回の演算を要する。
【０１４１】
再び、式(59)または(60)の実施における演算を数える時、DおよびD-1による乗算は、ＭＰＥＧ量子化器および逆量子化器において吸収されるので無視することができる。マトリックスＰおよびＰ-1はコンポーネントの順序の変化だけに影響をあたえるので、これらもまた無視することができる。
【０１４２】
このように、一般的位置基準ブロックすなわち1≦w≦7、1≦h≦8に関して、以下が得られる。
1. B1またはBt1による６回の乗算：6×32 = 192回の演算
2. B2またはBt2による６回の乗算：6×32 = 192回の演算
3. JwならびにK8-wによる２回の乗算、およびJhならびにK8-hニよる１回の乗算、またはその逆：8×(Nh+N8-h+Nw+N8-w+min{Nh+N8-h,Nw+N8-w})回の演算
4. １回の２次元ＤＣＴ：42×16= 672回の演算合計：1056+8×(Nh+N8-h+Nw+N8-w+min{Nh+N8-h,Nw+N8-w})回の演算
式(59)および(60)の積の加算は、異なる被加数がマトリックス・エレメントのインデックスの互いに共通しないサブセット上で非ゼロであるため、数えられない。基準ブロックが垂直方向にのみ配列されている(すなわちh=8および1≦w≦7)時、K8-h=K0=L0(MA1A2A3)t=0であり、従って、式(59)および(60)は２つの項目だけを持つ。更に、Jh=J8=U8(MA1A2A3)t=(MA1A2A3)tであるので、式(66)は、次式(82)へ縮退する。
【０１４３】
【数７８】
1997331532.tif 000078
【０１４４】
式(82)は以下のステップを必要とする。
1. B1による２回の乗算：2×32=64回の演算
2. B2による２回の乗算：2×32=64回の演算
3. Jwによる１回の乗算およびK8-wによる１回の乗算：8(Nw+N8-w)回の演算
4. Stによる１回の乗算：8×42=336演算
合計：464+8(Nw+N8-w)回の演算
同様にw=8および1≦h≦7である水平配列の場合、計算回数は464+8(Nh+N8-h)である。上述のように、w=h=8の時X=X1であるので計算は全く必要ない。
【０１４５】
上記の式を使用することによって、hおよびwの最悪ケースの値に関する計算回数は２９２８回であり、ペア{(w,h): 1≦w≦8, 1≦h≦8}に関して一様分布を仮定した平均演算回数は２３００.５である。一方、X1,..,X4に対しＩＤＣＴを実行し空間領域に適切な基準ブロックを挟み込みそれを変換するという力任せのアプローチは、合計４３２０回の演算を必要とする。これは、本発明の方法が従来技術の方法に対して、最悪ケースで３２％、平均のケースで４６.８％計算量を節約することを意味する。
【０１４６】
ここまでは、入力ＤＣＴマトリックスが疎であるということを仮定していなかった。典型的にはＤＣＴブロックのかなりの割合が２、３の非ゼロ成分だけを持ち、通常それらは両方向において低い空間周波数に対応している。単純化のため、低周波に対応する左上の４×４象限だけが非ゼロであれば、ＤＣＴブロックは疎であるとみなされる。X1,...X4が上記の意味で疎であると仮定される場合、JiおよびKi(1≦i≦8)による乗算の実施は、計算回数を、
672+8(N'w+N'8-w+N'h+N'8-h)
に減少し、
1≦w≦７および1≦h≦７の場合、
336+4(N'w+N'8-w)
に減少し、
h=8および1≦w≦７の場合、
336+4(N'h+N'8-h)
に減少し、
w=h=8の場合ゼロに減少する。
但し上記で、N'1=15,N'2=20,N'3=26,N'4=33,N'5=36,N'6=40,N'7=41,N'8=42である。
これは、最悪ケースで１７２８回、平均で１３９７.２回の計算があり、従来技術に対してそれぞれ６０％および６８％の計算量の削減を意味する。
【０１４７】
上記ChangおよびMesserschmitt両氏の文献は、ＤＣＴマトリックスが十分疎であり基準ブロックの大部分が少なくとも１方向に配列されている場合に計算量が削減されることを開示している。具体的には、該文献は次の３つのパラメータを導入した。すなわち、非ゼロ係数の分数部の反数β、１方向に配列された基準ブロックの分数部α1、および完全に配列された基準ブロックの分数部分α2である。
【０１４８】
ブロック配列に関して最悪のケースすなわちα1＝０でα2＝１の場合をまず考察する。疎についての上記定義はβ=4に対応する。Chang氏らは、α1、α2、βおよびブロック・サイズＮ(ＭＰＥＧにおいてはＮ＝８)に関して彼らのアプローチの加算および乗算の回数についての正確な公式を提供している。その公式に従えば、ピクセルにつき１６回の乗算およびピクセルにつき１９回の加算が必要である。一般的マイクロプロセッサ演算と比較するには、平均的に各乗算は最高４回のシフトおよび３回の加算を必要とすること、およびシフトと加算は同時に実行することができることが仮定される。これは、控えめに推定しても、ブロックあたりの演算の総数は、（１６×３＋１９)×６４＝４２８８演算であることを意味し、同じ環境での本発明の上記演算数１７２８より相当多い。
【０１４９】
別の比較の点として、wおよびhに関する一様分布がα1=14/64=0.219およびα2=49/64=0.766に対応していてこれは上記文献の図５の上方曲線(α1=0.2およびα2=0.1）よりも更に悲観的である点に注意すべきである。しかしながら、β＝１に関して、本発明の方式は、Chang氏らの0.6に比較して4320/2300.5=1.87という倍数だけ、β＝４に関して、Chang氏らの2.0に比較して4320/1397.2=3.13という倍数だけ、それぞれ計算速度を向上させることができる。更に、α1=0.2およびα2=0.1を仮定すれば、β=1に関しては9.06倍、β=4に関しては約15倍の速度向上を達成することができる。これは、Chang氏らに比較して速度改善の度合いが１桁高いことを意味する。
【０１５０】
以上、本発明は好ましい実施形態を参照して記述したが、本発明の理念および有効範囲を逸脱することなくその他の形態においても本発明を適用できる点は当業者に容易に認められることであろう。
【０１５１】
本発明には、例として次のような実施様態が含まれる。
（１）ＤＣＴすなわち離散コサイン変換に基づく圧縮方式に従って圧縮された圧縮領域中の画像情報を縮小サンプリングする方法であって、圧縮ビットストリームを復号して複数のＮ×ＮのＤＣＴ型データ・ブロックを抽出するハフマン復号ステップと、少なくとも１つのサンプリング・マトリックスに従って上記データ・ブロックのｎ個を処理して、単一のＮ×ＮのＤＣＴ型データ・ブロックを抽出するステップと、を含み、上記ｎは所望の縮小サンプリング因数によって決定され、上記単一のデータ・ブロックは上記複数のＮ×ＮのＤＣＴ型データ・ブロックの平均を表す、画像縮小サンプリング方法。
（２）上記処理ステップが、部分的に因数分解された演算子の使用を含む、上記（１）に記載の画像縮小サンプリング方法。
（３）x1=S-1X1およびx2=S-1X2とし、SがN点ＤＣＴマトリックスであるとし、各々がx1およびx2の成分の平均である複数の成分からなるN×NベクトルxのＤＣＴであるXを、少なくとも２つの２次元ベクトルX1およびX2を基に、決定するステップを上記処理ステップが含む、上記（１）に記載の画像縮小サンプリング方法。
（４）Q1およびQ2はN×NＤＣＴマトリックスであり、U1=SQ1S-1およびU2=SQ2S-1であり、因数Sは、S=DPB1B2MA1A2A3と表され、Dは固定的対角線マトリックスであり、Pは置換マトリックスであり、B1B2MA1A2A3はN×N固定マトリックスであり、i=1,2とした積Fi=MA1A2A3Q1A-13A-12A-11M-1が和F+=F1+F2および差F-=F1-F2を持つ疎のマトリックスであるとして、上記決定ステップが、
【０１５２】
【数７９】
1997331532.tif 000079
という関係式に従って、因数２の１次元縮小サンプリングを実行するステップを含む、上記（３）に記載の画像縮小サンプリング方法。
【０１５３】
（５）Q1およびQ2はN×NＤＣＴマトリックスであり、U1=SQ1S-1およびU2=SQ2S-1であり、因数Sは、S=DPB1B2MA1A2A3と表され、Dは固定的対角線マトリックスであり、Pは置換マトリックスであり、B1B2MA1A2A3はN×N固定マトリックスであり、i=1,2とした積Fi=MA1A2A3Q1A-13A-12A-11M-1が和F+=F1+F2および差F-=F1-F2を持つ疎のマトリックスであるとして、上記決定ステップが、
【０１５４】
【数８０】
1997331532.tif 000080
という関係式に従って、因数２の縮小サンプリングを実行するステップを含む、上記（３）に記載の画像縮小サンプリング方法。
【０１５５】
（６）Q1およびQ2はN×NＤＣＴマトリックスであり、U1=SQ1S-1およびU2=SQ2S-1であり、因数Sは、S=DPB1B2MA1A2A3と表され、Dは固定的対角線マトリックスであり、Pは置換マトリックスであり、B1B2MA1A2A3はN×N固定マトリックスであり、i=1,2とした積Fi=MA1A2A3Q1A-13A-12A-11M-1が和F+=F1+F2および差F-=F1-F2を持つ疎のマトリックスであるとして、上記決定ステップが、
【０１５６】
【数８１】
1997331532.tif 000081
という関係式に従って、因数４の縮小サンプリングを実行するステップを含む、上記（３）に記載の画像縮小サンプリング方法。
【０１５７】
（７）マトリックスT=T1+T2+T3、T+=T1+T3、T-=(T1-T3)/2は疎であること、およびDは固定的対角線マトリックスであり、Pは置換マトリックスであり、B1B2MA1A2A3はN×N固定マトリックスであるとしてT1X+T2Y+T3Z=TY+T+((X+Z)/2-Y)+T-(X-Z)であることにに基づいて、上記決定ステップが、
【０１５８】
【数８２】
1997331532.tif 000082
という関係式に従って、因数３の縮小サンプリングを実行するステップを含む、上記（３）に記載の画像縮小サンプリング方法。
（８）上記（７）において、
【０１５９】
【数８３】
1997331532.tif 000083
である、上記（７）に記載の画像縮小サンプリング方法。
【０１６０】
（９）ＤＣＴすなわち離散コサイン変換に基づく圧縮方式に従って圧縮された圧縮領域中において逆動き補償を実行する方法であって、圧縮ビットストリームを復号して、ピクチャＴ−１を定義する複数のＮ×ＮのＤＣＴ型データ・ブロックおよび動きベクトルh,wを抽出するハフマン復号ステップと、少なくとも１つのサンプリング・マトリックスに従いかつ上記動きベクトルに基づいて上記データ・ブロックのｎ個を処理して、ピクチャＴに対応する単一のＮ×ＮのＤＣＴ型データ・ブロックを生成するステップと、を含み、上記ｎは上記ピクチャｎ−１によって占有される領域を定義するために使用され、上記単一のデータ・ブロックは上記ｎ個のデータ・ブロックの平均を表すデータ・ブロックの組み合わせである、逆動き補償実行方法。
（１０）上記処理ステップが、部分的に因数分解された演算子の使用を含む、上記（９）に記載の逆動き補償実行方法。
（１１）XはｘのＤＣＴであり、X1,...,X4から直接決定されX=X+Eとして、所与の予測誤差ｅのＤＣＴ Eから現在時ブロックx=x+eのＤＣＴ Xおよびx1,...,x4のＤＣＴX1,...,X4を計算するステップを、上記処理ステップが含む、上記（９）に記載の逆動き補償実行方法。
（１２）Q1およびQ2はN×NＤＣＴマトリックスであり、U1=SQ1S-1およびU2=SQ2S-1であり、因数Sは、S=DPB1B2MA1A2A3と表され、Dは固定的対角線マトリックスであり、Pは置換マトリックスであり、B1B2MA1A2A3はN×N固定マトリックスであるとして、
【０１６１】
【数８４】
1997331532.tif 000084
および
【０１６２】
【数８５】
1997331532.tif 000085
とう固定マトリックスを計算するステップを更に含む、上記（９）に記載の逆動き補償実行方法。
（１３）
【０１６３】
【数８６】
1997331532.tif 000086
に従って、Xを決定するステップを更に含む、上記（１２）に記載の逆動き補償実行方法。
（１４）
【０１６４】
【数８７】
1997331532.tif 000087
に従って、Xを決定するステップを更に含む、上記（１２）に記載の逆動き補償実行方法。
（１５）
【０１６５】
【数８８】
1997331532.tif 000088
に従って、Xを決定するステップを更に含む、上記（１２）に記載の逆動き補償実行方法。
【０１６６】
（１６）ＤＣＴすなわち離散コサイン変換に基づく圧縮方式に従って圧縮された圧縮領域中の画像情報を縮小サンプリングする装置であって、圧縮ビットストリームを復号して複数のＮ×ＮのＤＣＴ型データ・ブロックを抽出するハフマン復号器と、少なくとも１つのサンプリング・マトリックスに従って上記データ・ブロックのｎ個を処理して、単一のＮ×ＮのＤＣＴ型データ・ブロックを抽出するプロセッサと、を備え、上記ｎは所望の縮小サンプリング因数によって決定され、上記単一のデータ・ブロックは上記複数のＮ×ＮのＤＣＴ型データ・ブロックの平均を表す、画像縮小サンプリング装置。
（１７）上記プロセッサが部分的に因数分解された演算子を使用する手段を含む、上記（１６）に記載の画像縮小サンプリング装置。
（１８）x1=S-1X1およびx2=S-1X2とし、SがN点ＤＣＴマトリックスであるとし、少なくとも２つの２次元ベクトルX1およびX2を基に、各々がx1およびx2の成分の平均である複数の成分からなるN×NベクトルxのＤＣＴであるXを決定する手段を上記プロセッサが含む、上記（１６）に記載の画像縮小サンプリング装置。
（１９）Q1およびQ2はN×NＤＣＴマトリックスであり、U1=SQ1S-1およびU2=SQ2S-1であり、因数Sは、S=DPB1B2MA1A2A3と表され、Dは固定的対角線マトリックスであり、Pは置換マトリックスであり、B1B2MA1A2A3はN×N固定マトリックスであり、i=1,2とした積Fi=MA1A2A3Q1A-13A-12A-11M-1が和F+=F1+F2および差F-=F1-F2を持つ疎のマトリックスであるとして、上記決定手段が、
【０１６７】
【数８９】
1997331532.tif 000089
という関係式に従って、因数２の１次元縮小サンプリングを実行する手段を含む、上記（１８）に記載の画像縮小サンプリング装置。
（２０）Q1およびQ2はN×NＤＣＴマトリックスであり、U1=SQ1S-1およびU2=SQ2S-1であり、因数Sは、S=DPB1B2MA1A2A3と表され、Dは固定的対角線マトリックスであり、Pは置換マトリックスであり、B1B2MA1A2A3はN×N固定マトリックスであり、i=1,2とした積Fi=MA1A2A3Q1A-13A-12A-11M-1が和F+=F1+F2および差F-=F1-F2を持つ疎のマトリックスであるとして、上記決定手段が、
【０１６８】
【数９０】
1997331532.tif 000090
という関係式に従って、因数２の縮小サンプリングを実行する手段を含む、上記（１８）に記載の画像縮小サンプリング装置。
【０１６９】
（２１）Q1およびQ2はN×NＤＣＴマトリックスであり、U1=SQ1S-1およびU2=SQ2S-1であり、因数Sは、S=DPB1B2MA1A2A3と表され、Dは固定的対角線マトリックスであり、Pは置換マトリックスであり、B1B2MA1A2A3はN×N固定マトリックスであり、i=1,2とした積Fi=MA1A2A3Q1A-13A-12A-11M-1が和F+=F1+F2および差F-=F1-F2を持つ疎のマトリックスであるとして、上記決定手段が、
【０１７０】
【数９１】
1997331532.tif 000091
という関係式に従って、因数４の縮小サンプリングを実行する手段を含む、上記（１８）に記載の画像縮小サンプリング装置。
（２２）マトリックスT=T1+T2+T3、T+=T1+T3、T-=(T1-T3)/2は疎であること、およびDは固定的対角線マトリックスであり、Pは置換マトリックスであり、B1B2MA1A2A3はN×N固定マトリックスであるとしてT1X+T2Y+T3Z=TY+T+((X+Z)/2-Y)+T-(X-Z)であることにに基づいて、上記決定手段が、
【０１７１】
【数９２】
1997331532.tif 000092
という関係式に従って、因数３の縮小サンプリングを実行する手段を含む、上記（１８）に記載の画像縮小サンプリング装置。
（２３）上記（２２）において、
【０１７２】
【数９３】
1997331532.tif 000093
である、上記（２２）に記載の画像縮小サンプリング装置。
【０１７３】
（２４）ＤＣＴすなわち離散コサイン変換に基づく圧縮方式に従って圧縮された圧縮領域中において逆動き補償を実行する装置であって、圧縮ビットストリームを復号して、ピクチャＴ−１を定義する複数のＮ×ＮのＤＣＴ型データ・ブロックおよび動きベクトルh,wを抽出するハフマン復号器と、少なくとも１つのサンプリング・マトリックスに従いかつ上記動きベクトルに基づいて上記データ・ブロックのｎ個を処理して、ピクチャＴに対応する単一のＮ×ＮのＤＣＴ型データ・ブロックを生成するプロセッサと、を含み、上記ｎは上記ピクチャｎ−１によって占有される領域を定義するために使用され、上記単一のデータ・ブロックは上記ｎ個のデータ・ブロックの平均を表すデータ・ブロックの組み合わせである、逆動き補償実行装置。
（２５）上記プロセッサが、部分的に因数分解された演算子の使用を含む、上記（２４）に記載の逆動き補償実行装置。
（２６）XはｘのＤＣＴであり、X1,...,X4から直接決定されX=X+Eとして、所与の予測誤差ｅのＤＣＴ Eから現在時ブロックx=x+eのＤＣＴ Xおよびx1,...,x4のＤＣＴX1,...,X4を計算する手段を、上記プロセッサが含む、上記（２４）に記載の逆動き補償実行装置。
（２７）Q1およびQ2はN×NＤＣＴマトリックスであり、U1=SQ1S-1およびU2=SQ2S-1であり、因数Sは、S=DPB1B2MA1A2A3と表され、Dは固定的対角線マトリックスであり、Pは置換マトリックスであり、B1B2MA1A2A3はN×N固定マトリックスであるとして、
【０１７４】
【数９４】
1997331532.tif 000094
および
【０１７５】
【数９５】
1997331532.tif 000095
とう固定マトリックスを事前計算する手段を、更に備える上記（２６）に記載の逆動き補償実行装置。
（２８）
【０１７６】
【数９６】
1997331532.tif 000096
に従って、Xを決定する手段を更に備える、上記（２７）に記載の逆動き補償実行装置。
（２９）
【０１７７】
【数９７】
1997331532.tif 000097
に従って、Xを決定する手段を更に備える、上記（２７）に記載の逆動き補償実行装置。
（３０）
【０１７８】
【数９８】
1997331532.tif 000098
に従って、Xを決定する手段を更に備える、上記（２７）に記載の逆動き補償実行装置。
【０１７９】
【発明の効果】
本発明の方式は、画像の縮小サンプリングの場合も、逆動き補償を実行する場合も、従来技術に比較して、大幅に計算処理量を削減する。更に、本発明の画像処理においては、ＭＰＥＧまたはＪＰＥＧのような非可逆アルゴリズムを使用して画像を一旦伸張し次に再圧縮する場合に発生するような画像品質の損失がないという効果を奏する。
【図面の簡単な説明】
【図１】空間領域において画像データをフィルタリングする従来技術の方法を示す流れ図である。
【図２】本発明に従った一般的画像／ビデオ・エディタを示すブロック図である。
【図３】本発明に従って圧縮領域において画像およびビデオ処理を実行するシステムのブロック図である。
【図４】本発明の縮小サンプリング装置のブロック図である。
【図５】本発明の好ましい実施形態に従ってＤＣＴ型１／２縮小サンプリンを実行するマトリックス演算ハードウェアのブロック図である。
【図６】本発明の逆動き補償モジュールの構成を示すブロック図である。
【図７】本発明に従ってＤＣＴ型逆動き補償を実行するマトリックス演算ハードウェアのブロックダ図である。
【符号の説明】
１０      縮小サンプリング器
１１      ビットストリーム
１２      ハフマン復号器
１４      逆量子化器
１５      メモリ
１６      取り出し手段
１７      縮小サンプリング手段
１８、１９、２０、２１    縮小サンプリング因数
２２、４５    逆量子化画像マトリックス
２３      縮小サンプリング画像
２４      ハフマン符号化器
２６      量子化器
３０      逆動き補償モジュール
３６      差分ベクトル取り出し器
３７      マトリックスＪ、Ｋ取り出し器
３８      フレームＴ取り出し器
３９      加算器
４１      フレームＴ−１取り出し器
４３      逆動き補償フレーム
１００    画像処理システム
１１１、１２４、１２９    ディスク・ファイル
１２８    圧縮エンジン
１２９    圧縮画像
１３０    画像／ビデオ・エディタ
１３２    伸張エンジン