JP2012505613A - オーバーラップ変換処理におけるdc利得不整合およびdc漏れの低減 - Google Patents

オーバーラップ変換処理におけるdc利得不整合およびdc漏れの低減 Download PDF

Info

Publication number
JP2012505613A
JP2012505613A JP2011531224A JP2011531224A JP2012505613A JP 2012505613 A JP2012505613 A JP 2012505613A JP 2011531224 A JP2011531224 A JP 2011531224A JP 2011531224 A JP2011531224 A JP 2011531224A JP 2012505613 A JP2012505613 A JP 2012505613A
Authority
JP
Japan
Prior art keywords
overlap
operator
tile
operators
solution
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2011531224A
Other languages
English (en)
Other versions
JP5306469B2 (ja
Inventor
ショーンバーグ,ダニエル
レグナサン,シャンカー・エル
スン,シージュン
サリバン,ゲーリー・ジェイ
チョウ,チー
スリニバサン,シュリダー
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Corp
Original Assignee
Microsoft Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Corp filed Critical Microsoft Corp
Publication of JP2012505613A publication Critical patent/JP2012505613A/ja
Application granted granted Critical
Publication of JP5306469B2 publication Critical patent/JP5306469B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/14Fourier, Walsh or analogous domain transformations, e.g. Laplace, Hilbert, Karhunen-Loeve, transforms
    • G06F17/147Discrete orthonormal transforms, e.g. discrete cosine transform, discrete sine transform, and variations therefrom, e.g. modified discrete cosine transform, integer transforms approximating the discrete cosine transform
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/117Filters, e.g. for pre-processing or post-processing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/12Selection from among a plurality of transforms or standards, e.g. selection between discrete cosine transform [DCT] and sub-band transform or selection between H.263 and H.264
    • H04N19/122Selection of transform size, e.g. 8x8 or 2x4x8 DCT; Selection of sub-band transforms of varying structure or type
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • H04N19/14Coding unit complexity, e.g. amount of activity or edge presence estimation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • H04N19/86Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving reduction of coding artifacts, e.g. of blockiness
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/24Systems for the transmission of television signals using pulse code modulation

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Discrete Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • Theoretical Computer Science (AREA)
  • Computational Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Algebra (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Editing Of Facsimile Originals (AREA)
  • Image Processing (AREA)

Abstract

ある種の実施形態では、ディジタル・メディアのエンコード処理および/またはデコード処理の間に、オーバーラップ演算子を適用する。このオーバーラップ演算子は、内部オーバーラップ演算子とエッジおよび/またはコーナーにおけるオーバーラップ演算子との間におけるDC利得不整合および/またはDC漏れを低減する。他の実施形態では、オーバーラップ処理に対して選択されたタイル境界選択肢を示す情報をエンコードおよび/またはデコードすることができる。選択されたタイル境界選択肢は、オーバーラップ演算子による処理に対して、ハード・タイル境界選択肢およびソフト・タイル境界選択肢のうち1つを示す。次いで、選択されたタイル境界選択肢に少なくとも部分的に基づいて、オーバーラップ変換処理を適用することができる。
【選択図】図7B

Description

変換符号化(transform coding)は、多くのオーディオ、画像、およびビデオ圧縮システムにおいて用いられている圧縮技法である。未圧縮のディジタル画像およびビデオは、通例、二次元(2D)格子に配列された画像またはビデオの位置における画素またはカラーのサンプルとして表されるか、または取り込まれる。これは、従来より、画像またはビデオの空間ドメイン表現と呼ばれている。例えば、矩形状の画像の典型的なフォーマットは、8ビット・カラー・サンプルの3つの二次元アレイから成る。各サンプルは、格子の中の空間位置におけるカラー成分の値を表す数値であり、各カラー成分は、とりわけ、RGBまたはYUVのような、カラー空間内にある軸に沿った振幅を表す。これらのアレイの1つにおける個々のサンプルを画素(pixel)と呼ぶことができる。(他の通常の使用では、画素という用語は、空間的に共存するn個のカラー成分サンプルのn−タプル(n-tuple)を指すのに用いられており、例えば、所与の空間位置についてのR、G、Bカラー成分値の3−タプル集合を指すために用いられるが、本明細書では、代わりに、この用語はスカラー値で表したサンプルを指すために用いられる)。種々の画像およびビデオ・システムが、サンプリングの異なるカラー、空間、および時間分解能を用いることもあり得る。同様に、ディジタル・オーディオは、通例、時間サンプル・オーディオ信号ストリームとして表される。例えば、典型的なオーディオ・フォーマットは、規則的に間隔を取った時点におけるオーディオ信号振幅を表すオーディオ信号の16ビット振幅サンプルのストリームから成る。
未圧縮ディジタル・オーディオ、画像、およびビデオ信号は、大量の記憶および送信容量を消費する可能性がある。変換符号化は、他のエンコード技法と共に用いると、例えば、信号の空間ドメイン(または時間ドメイン)表現を周波数ドメイン(または同様の変換ドメイン)に変換することによって、このようなディジタル・オーディオ、画像、およびビデオを表すために必要とされるデータ量を削減することができ、信号を表すのに必要とされるデータ量の大幅な削減が可能になる。データ量の削減は、通例では、量子化として知られているプロセスの適用、または変換ドメイン表現の一定の周波数成分の選択的破棄によって(またはこれら2つの組み合わせ)、そしてこれに続く、適応ハフマン・エンコード処理または適応算術エンコード処理のようなエントロピー・エンコード技法の適用によって遂行される。量子化プロセスは、個々の周波数成分の知覚的感受性(perceptual sensitivity)の推定度合いに基づいて、または他の規準に基づいて選択的に適用することができる。一般に、出力の所与のビット・レートに対して、変換符号化をしかるべく適用すると、直接的に空間ドメインにおける画像またはビデオの、あるいは時間ドメインにおけるオーディオのカラー・サンプル忠実度または空間分解能を低減することと比較して、発生するディジタル信号の知覚的劣化は遥かに少ない。
更に具体的には、典型的なブロック変換系符号化技術では、ディジタル画像の未圧縮画素を固定サイズの二次元ブロック(X,...X)に分割する。空間周波数分析を実行する線形変換が所与のブロックに適用され、このブロックの中にある空間ドメイン・サンプルを、1組の周波数(または変換)係数に変換する。これらの係数は、一般に、ブロック間隔における、対応する周波数帯域におけるディジタル信号の強度を表す。圧縮のためには、変換係数を量子化し(即ち、係数値の最下位ビットを欠落させることによって、または高い方の精度数からより低い方の精度に値をマッピングすることによって、精度を低下させる)、更に圧縮データ・ストリームにエントロピー符号化または可変長符号化することができる。デコード時には、これらの変換係数は、逆量子化され、更に空間ドメインに逆変換されて、本来のカラー/空間サンプル画像/ビデオ信号をほぼ再現する。
Figure 2012505613
ブロック内にあるサンプルの相関を利用し、こうして圧縮能力を最大化できることは、変換設計における主要な要件である。多くのブロック変換系符号化の用途では、損失が多い圧縮および損失がない圧縮の双方をサポートするために、変換ドメインにおいて適用される量子化動作に応じて、変換が可逆的でなければならない。例えば、量子化を適用しない場合、エンコード処理に可逆変換を利用すると、対応するデコード処理の適用時に、入力データの正確な再現を可能にすることができる。しかしながら、これらの用途における可逆性の必要性のために、符号化技術を設計できる変換の選択が制約される。変換実施の複雑度が、別の重要な設計制約となる。つまり、変換設計は、順および逆変換の適用に、小さな整数との乗算、ならびに加算、減算、およびシフト演算(4、8、16、32等のような、2の累乗による乗算または除算を実施するため)のようなその他の単純な数学的演算のみを伴うように選択され、ダイナミック・レンジの拡大を極力抑えた高速整数の実現(fast integer implementation)が得られるようにすることが多い。
とりわけ、JPEG(ITU-T T.81|ISO/IEC 10918-1)およびMPEG-2(ITU-T H.262|ISO/IEC13818-2)のような多くの画像およびビデオ圧縮標準は、離散余弦変換(DCT)に基づく変換を利用する。DCTは、好ましいエネルギ圧縮特性(property)を有することが知られているが、多くの実施態様において欠点も有する。DCTについては、N. Ahmed、T. Natarajan、およびK.R. Raoによる"Discrete Cosine Transform"(離散余弦変換)IEEE Transactions on Computers, C-23(1974年1月),pp.90-93において記載されている。
静止画像(またはビデオ・シーケンスにおけるイントラ・コード化フレーム(intra coded frame)を圧縮するとき、JPEGやMPEG−2のような多くの一般的な標準では、画像を表すアレイを、8×8のサンプル・ブロックに区分し、このような画像ブロックの各々にブロック変換を適用する。これらの設計において、所与のブロックにおける変換係数は、そのブロック領域内にあるサンプル値の影響のみを受ける。画像およびビデオ符号化では、これらの独立して構築されたブロックにおいてサンプルを量子化すると、ブロック境界において不連続が生じる可能性があり、このため、ブロッキング・アーチファクトまたはブロッキング効果として知られている、目障りなアーチファクトを生成する可能性がある。オーディオ・データについても同様に、非オーバーラップ・ブロックを独立して変換符号化すると、量子化誤差のために、デコーダーにおけるオーディオ信号の再現時に、ブロック境界において信号に不連続が生じる。オーディオでは、周期的なカチカチ言う効果が聞こえる場合がある。
ブロッキング・アーチファクトを軽減するために用いられる技法は、デブロッキング・フィルタ(deblocking filter)を用いてブロック間エッジ境界を跨ぐ信号値を平滑化することを含む。これらの技法には欠点がない訳ではない。例えば、デブロッキング技法は、大量の計算実施リソースを必要とする可能性がある。
別の手法は、H. Malvar, "Signal Processing with Lapped Transforms"(重複変換による信号処理),Artech House, Norwood MA, 1992に記載されているように、重複変換を用いることによって、ブロッキング効果を低減することである。一般に、重複変換は、現ブロックにおけるサンプル以外にも、近隣ブロックにおけるいくつかの隣接サンプルにまで及ぶ入力領域を有する変換である。同様に、再現側では、逆重複変換は、現ブロックのサンプルだけでなく、近隣ブロックにおいてデコードされるいくつかのサンプルに影響を及ぼす。つまり、逆変換は、量子化を用いてもブロック境界を跨いで連続性を保存するこ
とができ、その結果ブロッキング効果の低減がもたらされる。重複変換の別の利点は、ブロック相互相関(cross-block correlation)を利用することができ、圧縮能力の向上が得られることである。重複変換の実施態様によっては、重複するサンプルのブロックを順変換および逆変換において処理する場合もある。他の実施態様では、オーバーラップ処理を変換処理から分離する場合もあり、エンコード処理では、非重複ブロック(non-overlapping blocks)に対して行われる順変換の前に、ブロック境界を跨いでオーバーラップ処理が実行され、デコード処理では、非重複ブロックに逆変換が行われ、次いでブロック境界を跨いでオーバーラップ処理が実行される。
2Dデータの場合、一般に、重複2D変換は、現ブロックの左、上、右、下にあるブロックの選択エレメントと共に、現ブロックの関数であり、恐らくは、現ブロックの左上、右上、左下、および右下にあるブロックの関数でもある。近隣ブロックの中にあり、現ブロックのために重複変換を計算するために用いられるサンプルの数は、オーバーラップ量またはサポート量と呼ばれる。
要約すると、詳細な説明は、ディジタル・メディアの圧縮および伸張のための種々の技術に関する。例えば、エンコード処理および/またはデコード処理中のオーバーラップ処理動作におけるDC利得不整合および/またはDC漏れ現象に取り組む種々の技法を適用する。
開示する技術の一態様によれば、ディジタル・メディア・デコード・デバイスは、ディジタル・メディアをデコードするときに、逆オーバーラップ変換を実行する。ディジタル・メディア・デコード・デバイスは、ディジタル・メディア上で逆周波数変換を実行する。次いで、このデバイスは多数のオーバーラップ演算子を、逆周波数変換の結果に適用する。これら多数のオーバーラップ演算子の内第1のものは、内部オーバーラップ演算子であり、多数のオーバーラップ演算子の内第2のものは、エッジまたはコーナー・オーバーラップ演算子である。これら多数のオーバーラップ演算子の各々は、実質的に同等のDC利得を特徴とする。これによって、演算子間におけるDC利得不整合を低減する。
対応するエンコード処理において、ディジタル・メディア・エンコード・デバイスは、ディジタル・メディアをエンコードするときに、オーバーラップ変換を実行する。前処理において、このデバイスは多数のオーバーラップ演算子をディジタル・メディア・データ・サンプル、またはこのようなディジタル・メディア・データ・サンプルの以前のエンコード段からの結果に対して適用する。これら多数のオーバーラップ演算子の内第1のものは内部オーバーラップ演算子であり、多数のオーバーラップ演算子の内第2のものはエッジまたはコーナー・オーバーラップ演算子である。この場合も、多数のオーバーラップ演算子の各々は、実質的に同等のDC利得を特徴とし、演算子間におけるDC利得不整合を低減し、これによって圧縮性能を向上させる。ディジタル・メディア・エンコード・デバイスは、オーバーラップ前処理の結果に対して周波数変換を実行する。DC利得不整合の低減以外に、多数のオーバーラップ演算子は、多くの場合において、DC漏れの低減も示している。
開示する技術の他の態様によれば、ディジタル・メディア・デコード・デバイスは、エンコード・ビットストリームにおいて、選択されたタイル境界選択肢を示す情報を受け取る。選択されたタイル境界選択肢は、オーバーラップ演算子のためのハード・タイル境界処理、およびオーバーラップ演算子のためのソフト・タイル境界処理の内1つを示す。選択されたタイル境界選択肢に少なくとも部分的に基づいて、ディジタル・メディア・デコード・デバイスは、逆オーバーラップ処理を実行する。例えば、ソフト・タイル境界処理は、タイル境界を跨ぐオーバーラップ処理を特徴とし、ハード・タイル境界処理は、この
ような境界を跨ぐオーバーラップ処理がないことを特徴とする。実施態様によっては、逆オーバーラップ処理が、DC利得不整合および/またはDC漏れを低減させるように設計されたオーバーラップ演算子を適用することを含むことができる場合もある。
対応するエンコード処理では、ディジタル・メディア・エンコード・デバイスが、オーバーラップ演算子のためのハード・タイル境界処理の使用と、オーバーラップ演算子のためのソフト・タイル境界処理の使用との間で選択を行う。ディジタル・メディア・エンコード・デバイスは、選択されたタイル境界選択肢にしたがって、オーバーラップ処理を実行する。また、このデバイスは、エンコード・ビットストリームにおいて、選択されたタイル境界選択肢を示す情報を通知する。実施態様によっては、これが、通例圧縮効率は低いがタイル間に依存性がない第1モード(ハード・タイル)と、通例圧縮効率は高いがタイル間に依存性がある第2モード(ソフト・タイル)との間での切換を可能にする場合もある。
以上の摘要は、端的な全体像に過ぎず、本明細書において紹介する革新のあらゆる特徴を記述することを意味するのではない。本発明の以上のならびにその他の目的、特徴および利点は、添付図面を参照しながら進められる以下の詳細な説明から一層明白になろう。
図1は、可逆オーバーラップ演算子を利用する重複変換を含むエンコーダーの流れ図である。 図2は、対応する逆重複変換を含むデコーダーの流れ図である。 図3は、実施態様例におけるブロック配列の図であり、この実施態様例における第1段オーバーラップ変換およびオーバーラップ変換の第2段における最大分解能チャネルに用いられる、4×4内部、4×1エッジ、および2×2コーナー・オーバーラップ演算子のレイアウトを図示する。図示されたオーバーラップ演算子は、本実施態様例における逆オーバーラップ変換の対応する段においても用いられる。 図4は、実施態様例におけるブロック配列の図であり、この実施態様例における4:2:2ダウンサンプル・クロマ・チャネルのための第2段オーバーラップ変換に用いるための、2×2内部、2×1エッジ、および1×1コーナー・オーバーラップ演算子のレイアウトを図示する。図示されたオーバーラップ演算子は、本実施態様例における逆オーバーラップ変換の対応する段においても用いられる。 図5は、実施態様例におけるブロック配列の図であり、この実施態様例における4:2:0ダウンサンプル・クロマ・チャネルのための第2段オーバーラップ変換に用いるための、2×2内部、2×1エッジ、および1×1コーナー・オーバーラップ演算子のレイアウトを図示する。図示されたオーバーラップ演算子は、本実施態様例における逆オーバーラップ変換の対応する段においても用いられる。 図6Aは、オーバーラップ処理のためにハードまたはソフト・タイル境界を選択し通知する方法例を示すフローチャートである。 図6Bは、逆オーバーラップ処理のために選択されたハードまたはソフト・タイル境界インディケーターを受け取る方法例を示すフローチャートである。 図7Aは、DC利得不整合およびDC漏れを低減するオーバーラップ演算子を用いてオーバーラップ変換を実行する方法例を示す流れ図である。 図7Bは、DC利得不整合およびDC漏れを低減するオーバーラップ演算子を用いて逆オーバーラップ変換を実行する方法例を示す流れ図である。 図8は、本明細書において記載する技術を実現するのに適したコンピューティング環境のブロック図である。
以下の説明は、ディジタル・メディア圧縮または伸張システム、あるいはエンコーダーまたはデコーダーに関し、DC利得不整合および/またはDC漏れ現象に取り組む順/逆オーバーラップ変換設計を利用する。例示の目的上、これらの技術を組み込んだ圧縮/伸張システムの一実施形態は、画像またはビデオ圧縮/伸張システムとする。あるいは、本明細書において記載する技術は、他の2Dデータまたは他のメディア・データ用の圧縮または伸張システム、あるいはエンコーダーまたはデコーダーに組み込むこともできる。本明細書において記載する技術は、ディジタル・メディア圧縮システムが圧縮されたディジタル・メディア・データを特定の符号化フォーマットでエンコードすることを必要としない。
以下に紹介する実施態様例では、画像符号化および復号におけるDC利得不整合および/またはDC漏れの問題に取り組む解決策を例示する。例えば、これらの解決策をJPEG XR画像符号化標準(ITU-T T.832|ISO/IEC 29199-2)に組み込むことができる。加えて、第1および第2実施態様例の種々の章では、JPEG XR標準において参照および/または定義されている演算子を用いる。
また、実施態様は、2008年6月30日に出願した米国特許出願第12/165,474号に記載されているような、画像符号化および復号におけるオーバーラップ処理用の4×4演算子におけるDC漏れの問題に取り組む方法についても言及する。
1.エンコーダー/デコーダー
代表的なデータ・エンコーダーおよびデコーダーについて、一般化および簡略化して、以下のように図示および説明する。
図1および図2は、代表的な2Dデータ・エンコーダー100および対応するデコーダー200において用いられるプロセスを一般化した図である。エンコーダー100およびデコーダー200は、DC利得不整合および/またはDC漏れに取り組む技法を用いた、重複変換のための処理を含む。これらの図は、2Dデータ・エンコーダーおよびデコーダーを組み込んだ圧縮システムおよび伸張システムにおける、本明細書において記載する技術の使用および応用を一般化および簡略化した図を紹介する。これらのDC利得不整合およびDC漏れ低減技法に基づく代わりのエンコーダーおよびデコーダーでは、この代表的エンコーダーおよびデコーダーにおいて示されているプロセスよりも多いまたは少ないプロセスを、2Dデータ圧縮のために用いることができる。例えば、エンコーダー/デコーダーによっては、カラー変換や、種々のカラー・フォーマット処理、スケーラブル・コード化(scalable coding)等のいずれでも含むことができるものもある。説明する圧縮および伸張システム(エンコーダーおよびデコーダー)は、量子化の適用に応じて、2Dデータの損失のない圧縮および/または損失のある圧縮を行うことができる。この量子化は、完全に損失のない表現から非常に粗い(高い圧縮比)表現までの全域において、広範囲の選択可能な忠実度にわたって、エンコードされた表現における忠実度の損失度合いを制御する1つ又は複数の量子化制御パラメータに基づくことができる。
2Dデータ・エンコーダー100は、圧縮ビットストリーム120を生成する。圧縮ビ
ットストリーム120は、エンコーダー100への入力として提示される2Dデータ110を一層コンパクトにした(典型的な入力に対する)表現である。例えば、2Dデータ入力は、画像、ビデオ・シーケンスのフレーム、または一般に画像を指す2次元を有する他のデータとすることができる。エリア調整段(area arranging stage)130では、エンコーダー100は、後の処理のために、入力データをブロックに編成する。例えば、ブロックは、4×4のサンプル・ブロック、2×4のサンプル・ブロック、または2×2のサンプル・ブロックである。あるいは、ブロックは他のサイズを有する。
順方向オーバーラップ処理の第1段140では、エンコーダーはオーバーラップ演算子を入力データのブロックに適用する。順方向オーバーラップ演算子(陰影付きブロック142として示す)は、実施形態の一例では、4つのオーバーラップ変換演算子である。エンコーダー100は、次いで、それぞれのブロックに対してブロック変換を実行する。
エンコーダー100は、後続のエンコード処理のために、DC係数をそれぞれのブロックのAC係数から分離する。エンコーダー100は、オーバーラップ処理の追加段階を実行し、DC係数に対して順方向周波数変換を実行する。このオーバーラップ処理の追加段階を飛ばすこともでき、第1段と同じオーバーラップ演算子でも異なるオーバーラップ演算子でも用いることができる。例えば、実施態様によっては、エンコーダー100が、オーバーラップ処理の追加段階を実行するか否か選択することができ、そしてデコーダーがどの逆オーバーラップ処理を実行すべきか判断する際に用いるために、エンコードしたデータにおいてこの決定を通知することができる。エンコーダーは、DC係数の追加のオーバーラップ変換の結果を量子化し(170)、エンコーダーはAC係数を量子化する。次いで、エンコーダーはこれらの係数をエントロピー・コード化し(180)、ビット・ストリーム120において通知するために、エントロピー・コード化した情報を、デコーダー200がデコード処理の際に用いるコード化決定を示す副情報と共にパケット化する。
図2参照すると、端的な全体像として、デコーダー200は逆プロセスを実行する。デコーダー側では、変換係数ビットが、圧縮ビットストリーム205の中にあるそれぞれのパケットから抽出され(210)、これらから、DCおよびAC係数自体がデコードされ(220)、そして逆量子化される(230)。DC係数240は、逆変換を適用することによって再生され、DC係数の平面は、DCブロック・エッジを跨いで適用される適した演算子を用いる変換後フィルタリングにおいて「逆重複」 (inverse overlapped)される。続いて、ビットストリームからデコードしたDC係数およびAC係数242に逆変換250を適用することによって、サンプルのブロックを再生する。最後に、得られた画像面におけるブロック・エッジを逆オーバーラップ・フィルタ処理する。逆オーバーラップ処理の第2段は、オーバーラップ処理の第1段と同じオーバーラップ演算子または異なるオーバーラップ演算子を用いることができる。これによって、再現された2Dデータ出力290を生成する。
2.記載した技術の一般的な例
この章は、オーバーラップ変換コード化および対応するデコード処理の性能を向上させる技法の一般的な例を含む。
図6Aは、オーバーラップ処理のためにハードまたはソフト・タイル境界を選択し通知する方法例600を示す。図1を参照して説明したエンコーダーのようなエンコーダーが、この技法を実行する。あるいは、他のエンコーダーがこの技法を実行する。
610において、エンコーダーは、オーバーラップ変換コード化の間にオーバーラップ処理を実行するときに用いるために、ハード・タイル境界およびソフト・タイル境界から1つを選択する。例えば、この選択は、エンコードしようとする画像の中にあるタイルの数、デコード処理の所望の計算複雑度、所望の出力品質、ユーザの設定、個々のタイルの
別々のデコード処理(タイル間依存性はない)が望まれる適用要点(application feature)であるか否か、または他の要因に基づくことができる。一般に、画像内においてハード・タイル境界を用いると、タイル間依存性が少なくなる。これは、タイルのエッジがオーバーラップ処理の画像境界として扱われるからである。これによって、潜在的に可能な圧縮効率を犠牲にして、個々のタイルのデコード処理が容易になる(画面全体とは対照的に)(何故なら、オーバーラップ処理によって回避することができたブロッキング・アーチファクトを軽減するためにはより多くのビットが必要となることもあるからであり、そしてオーバーラップ動作は、通常、コード化利得として知られる変換圧縮特性も改善するからである)。一方、ソフト・タイル境界を用いると、タイル境界を跨いだオーバーラップ処理が可能となるが、デコード処理についてはタイル間には依存性が生ずる。タイル境界決定を行った後、エンコーダーはそれに応じてオーバーラップ変換処理を実行する。
620において、エンコーダーは、エンコードしたビットストリームにおいて、選択したタイル境界決定を通知する。例えば、選択したタイル境界決定は、別個のシンタックス・エレメント(syntax element)(例えば、所与の画像のオーバーラップ処理のために、ハードまたはソフトどちらのタイル境界が選択されたのかを示す、画像ヘッダにおける1つのビットとして)として通知することができる。また、選択したタイル境界は他のシンタックス・エレメントと組み合わせて、または合同で通知することもでき、画像毎以外の規準で通知することができる。
図6Bは、選択したハードまたはソフト・タイル境界インディケーターを受け取る方法例630を示す。図2を参照して説明したデコーダーのようなデコーダーがこの技法を実行する。あるいは、他のデコーダーがこの技法を実行する。
640において、デコーダーは、エンコードされたビットストリームにおいて、逆オーバーラップ処理に対して選択されたタイル境界選択肢を示す情報を受け取る。選択されたタイル境界選択肢は、逆オーバーラップ処理のためのハード・タイル境界またはソフト・タイル境界の内1つを示す。例えば、選択されたタイル境界選択肢は、別個のシンタックス・エレメントとして、または合同してコード化されたシンタックス・エレメントとして受け取ることができ、画像の画像ヘッダにおいて受け取ること、または他の何らかのシンタックス・レベルで受け取ることができる。
650において、デコーダーは、選択されたタイル境界選択肢に少なくとも部分的に基づいて、逆変換デコード処理を実行する。例えば、デコーダーは、ソフト・タイルまたはハード・タイルのどちらが用いられるのかに応じて、タイル境界を跨いだ逆オーバーラップ処理を選択的に実行するか、またはこの逆オーバーラップ処理を実行しない。
また、タイル境界決定インディケーターを、選択されたオーバーラップ・モードと組み合わせて、オーバーラップ・モード選択肢がオーバーラップ段およびハード/ソフト・タイリング決定の組み合わせを示すようにすることもできる。例えば、オーバーラップ・モード選択肢の1つの値は、オーバーラップを適用しないことを示すことができ(例えば、第1および第2オーバーラップ段は、2つの段階を有する階層オーバーラップ変換方式では適用されない)、オーバーラップ・モード選択肢の他の値は、2つのオーバーラップ段の内第1段のみにソフト・タイリングを適用することを示すことができ、オーバーラップ・モード選択肢の他の値は、2つのオーバーラップ段にソフト・タイリングを適用することを示すことができ、オーバーラップ・モード選択肢の他の値は、2つのオーバーラップ段の内第1段のみにハード・タイリングを適用することを示すことができ、オーバーラップ・モード選択肢の更に他の値は、2つのオーバーラップ段にハード・タイリングを適用することを示すことができる。このようなオーバーラップ・モード選択肢は、オーバーラップ変換コード化を実行するときに選択し、用いることができ、エンコードしたビットス
トリームにおいて通知することができる。このエンコードされたビットストリームは、対応するデコーダーによって受信され、選択されたオーバーラップ・モード選択肢がデコードされ、逆オーバーラップ変換デコード処理を実行するときに用いられる。
図7Aは、エンコード処理の間にオーバーラップ変換において、DC利得不整合およびDC漏れを低減するオーバーラップ演算子を用いる方法例700を示す。図1を参照して説明したエンコーダーのようなエンコーダーが、この技法を実行する。あるいは、他のエンコーダーがこの技法を実行する。
710において、エンコーダーはディジタル・メディアをエンコードする。このエンコード処理は、複数のオーバーラップ演算子を用い、DC利得不整合およびDC漏れを低減するオーバーラップ変換処理を含む。具体的には、第1オーバーラップ演算子(内部領域用)は第1DC利得を有し、第2オーバーラップ演算子(エッジまたはコーナー領域用)は、第1DC利得と実質的に同等である第2DC利得を有する。実質的に同等のDC利得を有する内部オーバーラップ演算子、エッジ・オーバーラップ演算子、およびコーナー・オーバーラップ演算子の例を、異なる分解能のルーマ・サンプルおよびクロマ・サンプルのブロックについて、以下に示す。
720において、エンコーダーはエンコード・ビットストリームを生成する。例えば、このビットストリームはJPEG XRフォーマットまたは他のフォーマットに準拠する。
図7Bは、デコード処理の間逆オーバーラップ変換において、DC利得不整合およびDC漏れを低減するオーバーラップ演算子を用いる方法例730を示す。図2を参照して説明したデコーダーのようなデコーダーがこの技法を実行する。あるいは、他のデコーダーがこの技法を実行する。
740において、デコーダーはエンコード・ビットストリームを受信する。例えば、このビットストリームはJPEG XRフォーマットまたは他のフォーマットに準拠する。
750において、デコーダーは、複数のオーバーラップ演算子を用い、DC利得不整合およびDC漏れを低減する逆オーバーラップ変換処理を実行する。具体的には、第1オーバーラップ演算子(内部領域用)は第1DC利得を有し、第2オーバーラップ演算子(エッジまたはコーナー領域用)は、第1DC利得と実質的に同等である第2DC利得を有する。異なる分解能のルーマ・サンプルおよびクロマ・サンプルのブロックに対して、実質的に同等のDC利得を有する内部オーバーラップ演算子、エッジ・オーバーラップ演算子、およびコーナー・オーバーラップ演算子の例を以下で示す。
「実質的に同等のDC利得」という用語は、オーバーラップ演算子が正確に同じDC利得を有さなければならないことを意味するのではない。そうではなく、DC利得の差は、動作上の制約や計画した用途を考慮して、これらのオーバーラップ演算子間におけるDC利得の差によって生ずる望ましくないアーチファクトを低減する(または根絶する)程度に十分に小さくなければならない。DC利得の類似性の目標レベルは、他の要素に加えて、目標実施複雑度対所望の品質の関係に応じて、変化する可能性がある。例として、以下に提示するオーバーラップ演算子の組は、それぞれの組の中において実質的に同等のDC利得を有する。
3.実施態様例
実施態様例には、重複変換技術が含まれる。
3.1理論的基礎
先に注記したように、重複変換(lapped transform)(オーバーラップ変換(overlappe
d transform)とも呼ぶ)は、概念的にブロック変換と同様である。従来のブロック変換は次の2つのステップを有する。
1.入力データをブロック領域(IDシリーズにおけるサンプルのストリング、または画像のような2Dデータ集合におけるサンプルの矩形ブロック状アレイのストリングから成る領域)に区分するステップと、
2.変換プロセスを各ブロックに適用して、その周波数内容を分析/分解するステップ。
圧縮の用途では、ブロック変換の出力を量子化し、エントロピー・コード化を結果に適用する。これらのステップは、ときとして、予測プロセスおよび確率推定プロセスのような他の演算と組み合わせられることもある。デコード処理の間、デコーダーはこれらの処理段毎に、逆演算または近似逆演算を適用する。
ブロック変換に伴う周知の現象に、ブロッキング・アーチファクトの生成がある。これは、再現された近似において発生する可能性がある知覚的不連続であり、デコード・プロセスの結果生じる。ブロッキング・アーチファクトを軽減する周知の方法の1つは、重複変換を用いることである。先に説明したように、重複変換では、変換プロセスへの入力を形成するデータ・ブロックが、それぞれ互いと重複される。重複変換の使用において発生する問題の1つは、信号のエッジをどのように処理するかということである。1組の入力データ・サンプルのエッジ(画像のエッジのような)では、通常であればエンコーダーの重複変換入力の一部をなすデータの一部が存在しない。システム設計者は、これらのエッジの場合をどのように処理するか判断しなければならない。
画像コード化技術では、鍵となる概念は、大きな画像の多数のタイルへの分解である。タイルとは、ピクチャーの特定の(通常では矩形)空間画像領域に正確にまたは近似的に対応する1組のデータのことである。画像をタイルに区分し各タイルを別々にエンコードすることによって、画像の一部にアクセスし、画像全体をデコードすることなくそれをデコードすることが可能である。画像の特定の領域にアクセスすることができると、画像が大きいときに特に有用になり得る。しかしながら、大きな画像を小さなタイル領域に区分すると、ピクチャーの中に作られるエッジ、即ち、画像の中においてタイルを他のタイルと分離するエッジが多くなる可能性がある。これらのエッジの各々において、ブロッキング・アーチファクトと直接類似する境界現象が発生する可能性がある。
JPEG XR標準の以前のバージョンでは、オーバーラップ動作をイネーブルすると、ブロック変換の個々のブロック境界を跨いで適用されるだけでなく、画像タイルの境界を跨っても適用される。この手法はある状況下では利点を有するが、この設計を選択した結果、タイル状に整列された画像領域にアクセスするときには、オーバーラップ演算を画像のタイル境界に跨って適用しない場合よりも、タイルに基づく画像エンコード処理および再現(retrieval)は計算の複雑度が高くなる。この計算コストの上昇は、隣接するタイルを跨るデータの依存性によるものであり、変換領域のオーバーラップ処理によって誘発される。その結果、特定のタイル領域をデコードするためには、空間的に隣接するタイルについて格納されているデータにもアクセスし、少なくとも部分的にこのデータをデコードすることが必要になる。
対照的に、本明細書において紹介する実施態様例では、以下のように、境界を2つのタイプの内1つに分類する。
−「ハード」タイル境界。タイルのエッジを画像のエッジと同様に扱って、タイル境界を跨いで適用される変換ブロックの重複をなくすようにする。または、
−「ソフト」タイル境界。変換ブロックの重複をタイル境界を跨いで適用する。
JPEG1およびJPEG200のような以前の設計では、全てのタイル境界をハード・タイル境界として処理していたものもある。対照的に、JPEG XR標準の以前のバージョンでは、タイル境界はソフト・タイル境界として処理される。各タイプの境界処理は、実際に状況によっては有用な場合もある。本明細書において紹介する実施態様例では、エンコーダーは、それ自体の裁量でハードまたはソフト・タイル境界のいずれかを用いることを選択することができ、その選択を、画像データの圧縮表現と共に通知することができる。更に、本明細書において紹介する実施態様では、ハード・タイル境界を用いる場合であっても、あるタイル境界の次にある所与のタイル内にある少なくとも一部のエッジ・サンプルは、エッジ演算子によってオーバーラップ処理されて、そのタイル内部における内部オーバーラップ演算子の適用によって問題を生ずる可能性があるDC利得不整合を低減する。
また、実施態様例は、リフティング(lifting)に基づく変換動作も用いる。「DC漏れ」として知られている現象は、ときとしてこのような変換における問題となる可能性がある。変換がDC漏れを呈する場合、順方向変換の出力が、ある一定値の入力信号(理論上、その入力信号に対して、DC係数が非ゼロ周波数係数であるべき)に対して大量の非DC変換係数を含む可能性がある。DC漏れは、ときとして、圧縮性能の損失、および知覚できる位のアーチファクト(平滑エリアにおける波または歪みのような)を、デコード出力に生じさせる可能性がある。
大きな画像において、圧縮性能の何らかの損失、および画像の外側の境界のみで発生する知覚上のアーチファクトを有する場合、圧縮コード化設計においては容認可能であることもある。しかしながら、ハード・タイル境界を用いたタイル区分では、このような現象を生ずるエリアがより多く作成されるので、設計がハード・タイル境界のサポートを含むようなときには、エッジ領域の処理を注意深く設計することが一層重要となる。
画像コーダー(image coder)におけるタイル・サポートに伴って生ずる問題は、システム・レベルにおける大きな「メタ画像」のサポート・レベルを高めることに伴っても生ずる可能性がある。メタ画像は、各々が別個にエンコードされた多数の小さな画像からの大きなデータ集合として組み立てられる。この場合も、このような使用を想定する場面では、画像エッジを注意深く扱うことが一層重要となる。
つまり、各画像タイルを独立して処理できるようにハード・タイル境界コード化選択肢を有することが望ましい。1つの解決策は、タイル境界を画像境界全体と同じように扱うことである。しかしながら、場合によって、画像のエッジ付近において用いられる動作において、望ましくない程高いDC漏れ現象が変換設計に生ずることもある。加えて、そして更に重要なことは、エッジ処理動作の出力と画像の内部領域に対して実行する処理との間にDC利得差があることである。
いくつかの要点を認識すると、画像境界付近におけるオーバーラップ変換におけるDC利得不整合およびDC漏れに取り組み易くなる。第1に、以前の実施態様では、オーバーラップ演算子に、内部演算子とコーナーおよびエッジ演算子との間におけるDC利得不整合が生じ、したがって圧縮効率の低下、および大量の視覚的アーチファクトが起こる。第2に、以前の実施態様におけるエッジ、コーナー、およびクロマ内部演算子にも、DC漏れが生じており、これも、圧縮効率の低下、および大量の視覚的アーチファクトの原因となる。加えて、4:2:0および4:2:2クロマの場合における画像の内部エリアの処理に対するDC漏れ特性も、以前の実施態様では問題である。
3.2実施態様例の全体像
実施態様例では、階層重複変換を用いる。この変換は4つの段階を有する。
1.第1段オーバーラップ処理
2.第1段コア変換
3.第2段オーバーラップ処理
4.第2段コア変換
オーバーラップ段は、コア変換演算子に関して斜め格子(skewed grid)上で動作する。即ち、コア変換は、画像における左上画素と整列されている格子内に配列されている4×4ブロックに対して動作する。オーバーラップ段は、同様のサイズの格子に対して動作するが、左上角の画素から2画素水平にそして2画素垂直にずれている。また、対応する逆オーバーラップ変換も4つの段階を有する。即ち、第1段逆コア変換、第1段逆オーバーラップ処理、第2段逆コア変換、および第2段逆オーバーラップ処理である。
生憎、以前に実施されていたオーバーラップ演算子は、DC利得不整合およびDC漏れに関して欠点がある。具体的には、エッジ・オーバーラップ演算子(オーバーラップ段の格子ずれによって誘発された2画素幅のエッジにおいて動作する演算子)に問題がある。ハード・タイリングは、画像の中央領域においてこれらのエッジ演算子の大量使用を伴うので(ハード・タイリングを許容するための最も自然な解決策として)、これらの演算子に付随する問題によって誘発されるアーチファクトは遥かに一層明白となる。ハード・タイリングを行わなくても、以前のオーバーラップ演算子は、容認できない量の目立つアーチファクトを画像に生成する。
本明細書において紹介する実施態様例では、オーバーラップ変換が、6つの異なる演算子によって実施される。これらは、3つの演算子から成る2つのグループ、即ち、最大分解能グループおよびクロマ・グループに分けられる。3つの最大分解能オーバーラップ演算子は、次の通りである。
1.オーバーラップ4×4演算子−内部オーバーラップ処理動作、
2.オーバーラップ4×1演算子−エッジ・オーバーラップ処理動作、
3.コーナー・オーバーラップ2×2演算子−コーナー・オーバーラップ処理動作
図3は、これらの演算子のレイアウト図300を示す。図3は、2ブロック×2ブロックのサンプル領域を示す。ドットはサンプルを表し、中央の水平および垂直な破線は、変換コード化およびデコード処理のためのブロック境界を示す。角が丸いボックスは、オーバーラップ演算子の各々に対するサポート領域を表す。中央の4×4サンプル領域の回りにある、角が丸いボックス310は、内部オーバーラップ4×4演算子を表し、4つのコーナー2×2サンプル領域の回りにある、角が丸いボックス(例えば、320)は、コーナー・オーバーラップ2×2演算子を表し、他の8つの4×1(または1×4)サンプル領域の回りにある、角が丸いボックス(例えば、330)は、オーバーラップ4×1演算子を表す。これら3つの最大分解能演算子(full resolution operators)は、第1段オーバーラップ変換におけるチャネル全て、および第2段オーバーラップ変換における最大分解能チャネル(即ち、4:4:4サンプリング・モードにおけるルーマおよびクロマ)に用いられる。
3つのクロマ演算子は次の通りである。
1.オーバーラップ2×2演算子−内部オーバーラップ処理動作、
2.オーバーラップ2×1演算子−エッジ・オーバーラップ処理動作、
3.コーナー・オーバーラップ1×1演算子−コーナー・オーバーラップ処理動作。
これらのクロマ演算子は、ダウンサンプリングした(4:2:2または4:2:0リサ
ンプリング)クロマ・チャネルに対する第2段オーバーラップ変換に用いられる。
図4は、これらのクロマ演算子を4:2:2リサンプリングしたクロマ・チャネルに適用した場合のレイアウト図400を示す。図4は、4:2:2ダウンサンプリングしたクロマ・チャネルに対する第2段オーバーラップ変換に用いるためのオーバーラップ演算子を示す。2×2のブロック配列では、オーバーラップ・クロマ演算子のレイアウトは4:2:2サンプルに適用される。ドットはサンプルを表し、中央の水平および垂直の破線は、変換コード化およびデコード処理のためのブロック境界を示す。つまり、角を丸くしたボックス(および円)は、種々のオーバーラップ演算子のドメイン/サポートを表す。中央の2×2サンプル領域の周囲にある丸いボックス410は、内部オーバーラップ2×2演算子を表し、4つのコーナー1×1サンプル領域の周囲にある丸いボックス(例えば、420)は、コーナー・オーバーラップ1×1演算子を表し、更に他の8つの2×1(または1×2)サンプル領域の周囲にある丸いボックス(例えば、430)は、オーバーラップ2×1演算子を表す。
図5は、これらのクロマ演算子を4:2:0リサンプリングしたクロマ・チャネルに適用した場合のレイアウトの図500を示す。図5は、4:2:0ダウンサンプリングしたクロマ・チャネルに対する第2段オーバーラップ変換に用いるためのオーバーラップ演算子を示す。2×2のブロック配列では、オーバーラップ・クロマ演算子のレイアウトは、4:2:0サンプルに適用される。ドットはサンプルを表し、破線は、変換コード化およびデコード処理のためのブロック境界を示す。つまり、角を丸くしたボックス(および円)は、種々のオーバーラップ演算子のドメイン/サポートを表す。中央の2×2サンプル領域510の周囲にある丸いボックス510は、内部オーバーラップ2×2演算子を表し、4つの1×1サンプル領域の周囲にある丸いボックス(例えば、520)は、コーナー・オーバーラップ1×1演算子を表し、他の4つの2×1(または1×2)サンプル領域の周囲にある丸いボックス(例えば、530)は、オーバーラップ2×1演算子を表す。
これらの演算子の設計では、2つの問題が発生する。即ち、DC利得不整合およびDC漏れである。理想的には、2つの演算子集合(最大分解能およびクロマ)の各々において、3つの演算子全てに対するDC利得係数(gain factor)は同等であるべきである。DC利得不整合の問題は、これら3つのDC利得が一致しないときに発生する。
DC漏れは、変換への完全に平坦な入力からDCおよびAC双方の係数が生ずる現象である。DC漏れは、生じたAC係数の大きさによって測定される。
これら2つの問題の結果、完全に平坦な画像をそのDC係数だけを用いてコード化しても(全ての高周波係数を無視する)、完全に平坦な再現は得られない。再現された画素値における相違は、2つの項、a)スケーリングDC利得不整合、およびb)DC漏れの和として見ることができる。
差〜スケーリング利得不整合(ScalingGainMismatch)+DC漏れ(DCLeakage)
オーバーラップ4×4演算子におけるDC漏れの問題に対する1つの解決策が、米国特許出願第12/165,474号において紹介されている。
本明細書において紹介する実施態様例では、DC利得不整合およびDC漏れを低減または根絶さえする多数の解決策が、残りの5つの演算子について紹介される(オーバーラップ4×4最大分解能演算子以外の5つの演算子)。これらの残りに5つの演算子では、DC利得不整合の大きさは、通例では、DC漏れの大きさよりも遥かに大きいが、DC漏れが原因で発生する知覚的アーチファクトの方が一般に好ましくない(objectionable)と思われる。つまり、解決する必要がある主要な問題は、オーバーラップ演算子間におけるD
C利得不整合である。オーバーラップ演算子におけるDC漏れは、二次的な問題である。
次の章では、ソフト/ハード・タイル境界判断を可能にする様々な解決策についてのシンタックス(syntax)およびセマンティクス(semantics)について説明する。その後の章では、以前のオーバーラップ演算子によって誘発されるアーチファクトを根絶するように設計された新たなオーバーラップ演算子について説明する。ハード・タイリングの想定場面に加えて、これらの新しいオーバーラップ演算子は、1つの大きな画像を小さなチャンク(chunk)に分解し、これらのチャンクを独立して圧縮する「スティッチング」(stitching)の想定場面においても有用である。後の時点で、画像の本来の関係にしたがってこれらを隣接して表示することによって、画像を互いに「縫い合わせる」(stitch)。
3.3 ハード/ソフト・タイリング判断についてのシンタックスの全体像
実施形態例は、ハードおよびソフト双方のタイル境界をサポートする。ソフト・タイル境界の方が、タイル状に分割した画像において多数のタイルを処理し、ブロッキング・アーチファクトを軽減するためには一層効率的である。ハード・タイル境界は、画像におけるタイルの数が限定されているときに、一層効率的な処理を可能にする。ハード/ソフト境界判断についてのシンタックスおよびセマンティクスに関して、2つの選択肢のカテゴリについて説明する。
変化発生シンタックス(Breaking Change Syntax)。第1の選択肢カテゴリは、以前の実施態様のシンタックスを変化させることである。第1の選択肢は、ハードまたはソフト・タイリングのどちらが用いられているかを知らせる新たなシンタックス・エレメントの追加である。例えば、新たなシンタックス・エレメントは画像ヘッダにおけるフラグである。
第2の選択肢は、既にオーバーラップ・モード情報を示すオーバーラップ・レベル・シンタックス・フラグの値(OVERLAP_MODE)を追加することである。以前の実施態様では、OVERLAP_MODEは、以下の3つの可能な値および対応する解釈を有する2ビット・シンタックス・エレメントである。
1.OVERLAP_MODE=0は、オーバーラップ処理のいずれの段階も適用しないことを意味する。
2.OVERLAP_MODE=1は、2つのオーバーラップ処理段の内第1段を適用することを示す。
3.OVERLAP_MODE=2は、2つのオーバーラップ処理段の内双方を適用することを示す。
第2選択肢は、OVERLAP_MODEシンタックス・エレメントを3ビット・シンタックス・エレメントに変化させる。以上のオーバーラップ・モードは、ソフト・タイリング・モードに対応するように変化させられ(OVERLAP_MODE=0はデフォルトではハード・タイル境界であり、オーバーラップ処理が行われないので、少なくともOVERLAP_MODE=1またはOVERLAP_MODE=2について)、以下の追加の値および解釈が加えられる。
4.OVERLAP_MODE=3は、オーバーラップ処理段の内第1段だけを適用し、オーバーラップ処理をハード・タイリング・フォーマットで実行することを意味する。
5.OVERLAP_MODE=4は、オーバーラップ処理の双方の段階を適用し、オーバーラップ処理をハード・タイリング・フォーマットで実行することを意味する。
3ビットOVERLAP_MODEシンタックス・エレメントをサポートしないデコーダーは、この
シンタックス・エレメントを用いて画像をデコードするのを成功することができない。つまり、新たなビットの追加によって、旧式のデコーダーは画像をデコードできなくなる。
下位互換シンタックス(Backwards Compatible Syntax)。旧式のデコーダーが新たなビットストリーム(デコード処理の結果多量のアーチファクトが生じても)を処理することを可能にするために、サブバージョン数値シンタックス・エレメント(sub-version number syntax element)(JPEG XR仕様では、RESERVED_Cと称す)を用いることができる。例えば、米国特許出願第12/165,474号において紹介された、変化を含むビットストリームは、1のサブバージョン値を有し、それ以外ではサブバージョン値は0となる。このサブバージョン数値の最下位から2番目のビットを、ハードまたはソフト・タイリングを知らせるために用いることができる。この方式では、ソフト・タイルの使用は、最下位から2番目のビットを0に設定することによって知らされ、ハード・タイルの使用は最下位から2番目のビットを1に設定することによって知らされる。サブバージョン値を無視する旧式のデコーダーであっても、ハードおよびソフト・タイル画像の双方をデコードすることに成功するが、ハード・タイル画像では多量のアーチファクトが生ずる。何故なら、ソフト・タイル境界オーバーラップ処理がデフォルトで用いられるからである。更にデコーダーの開発が進めば、サブバージョン数値の値に応答し、ハード・タイリングが用いられるときにもアーチファクトを発生せずに画像を正しくデコードすることができるようになると考えられる。
ハード・タイリングの設定は、以下のようにコード化される。
HardTilingTrueFlag = (RESERVED_C>>1)&1
3.4 以前のオーバーラップ演算子の全体像
デコーダーにおいて、以前のオーバーラップ4×4演算子は、1/(S)の倍率(scaling)を有するように設計されている。ここで、s=0.8272である。言い換えると、オーバーラップ4×4演算子は、約1.4614倍にDC値を拡大する。(これは、米国特許出願第12/165,474号に記載されているオーバーラップ4×4演算子である。)以前のオーバーラップ4×1演算子は、DC値の1/sの倍率を有するように設計されている。言い換えると、オーバーラップ4×1演算子は、約1.2089倍にDC値を拡大する。以前のコーナー演算子、コーナー・オーバーラップ2×2はヌル(動作が行われない)であるので、対応するDC値は、1.0の暗黙的な倍率を有する。これらの以前の演算子に関しては、様々な観察が行われるべきである。最初に、以前の演算子によるスケーリングでは、逆オーバーラップの規準(basis)が平滑であり、アーチファクトが大幅に少ないことに加えて、より大きなコード化利得が得られることが保証される。第2に、演算子によって実行される実際のスケーリングは、整数化の実現(integerized implementation)のために多少異なる。第3に、対応するエンコーダー・オーバーラップ演算子は、デコーダーとは逆のスケーリングを実行する。第4に、このようなエンコーダーにおける縮小(scaling down)は、損失のないコード化について何らかの含意を有する。損失のないコード化については、完全に平坦な画像でさえも、AC係数を生成する必要がある(つまり、必然的に圧縮効率をいくらか損失する)。第5に、整数化の実現において用いられる丸めは、分析および実験結果の一部に小さな影響を及ぼす。具体的には、ScalingGainMismatchおよびDCLeakageRatioのような多くの量が、近似的な線形にしかならない。
以下のオーバーラップ演算子の説明では、DC漏れおよびDC利得不整合をこれらの演算子について計算する。以下でDC漏れを計算するために用いられる方法では、マトリクス係数に基づく理論的分析とほぼ同じ結果が得られるが、この方法の方が簡単で高速である。最後に、DC漏れおよびDC利得不整合の範囲を例示するために、全ての画素値が1000000(10)に等しい入力ブロックを考慮することによって、DCスケーリング利得比(DC scaling gain ratio)およびDC漏れを、各オーバーラップ演算子について
導き出す。この入力をXと呼ぶ。
以前の最大分解能用オーバーラップ4×4演算子。以前の4×4演算子の一例では、入力Xが与えられると、出力画素は1461540または1461547の値を有する。つまり、オーバーラップ4×4演算子のScalingGainRatioは約1.461543となる。出力値における差(即ち、|1461540−1461547|=7)は、DC漏れによるものである。以前のオーバーラップ4×4演算子のDCLeakageRatioは7/10である。
8ビット・サンプル画像では、最も大きな範囲は±128/(ScalingGainRatio)である。つまり、8ビット画像上における4×4演算子の最大DC漏れは、次のようになる。
(7/10)×128/ScalingGainRatio = 0.000896/ScalingGainRatio = 0.000614
16ビット画像上における最大DC漏れは、256×0.000614〜0.157となる。
以前の最大分解能用オーバーラップ4×1演算子。以前のオーバーラップ4×1演算子の一例では、入力Xが与えられると、出力画素は1206726または1205078の値を有する。オーバーラップ4×1のScalingGainRatioは、約1.2058となる。逆オーバーラップ4×1演算子への入力が全く同じである場合、1対の入力値に対するこの演算子のスケーリング段のマトリクス表現は、次のように表すことができる。
Figure 2012505613
ここで、x=3/32であり、y=3/16である。入力の1つにおけるスケーリングは、1+xy+x(2+xy)=19771/16384〜1.206726となる。DCLeakageRatioは、19771/16384−617/512=27/16384=0.001648となる。出力値における差(1206726−1205078=1648)は、DC漏れによるものである。DCLeakageRatioは、(1648/10)となる。このDC漏れは小さいが、それでも重要である。8ビット・サンプル画像では、最大DC漏れは127/ScalingGainRatio×(1648/10)〜0.1788/ScalingGainRatio〜0.12247となる。16ビット・サンプル画像では、最大DC漏れは、±46/ScalingGainRatio〜31.35となる可能性がある。
最大分解能用の以前のコーナー・オーバーラップ2×2演算子。以前の実施態様では、コーナー用のオーバーラップ演算子はない。ScalingGainRaioは1.0であり、DCLeakageRatiaは0である。
以前の最大分解能演算子に対するDC利得不整合の影響。以前の実施態様では、大きさに関して(知覚的重要性ではない場合もで)、主な問題はDC利得不整合であり、最悪の場合における影響は、理論的に以下のように定量化することができる。8ビット・サンプル画像について、エッジでは、最悪の場合のScalingGainMismatchは、(1.4615−1.205)×128/ScalingGainRatio 〜 22.48となる。8ビット・サンプル画像について、コーナーでは、最悪の場合のScalingGainMismathは、約(1.4615−1.0)×128/ScalingGainRatio 〜58/ScalingGainRatio 〜 40.46となる。16ビット・サンプル画像について、エッジおよびコーナーにおける最悪の場合のScalingGainMismatchは、それぞれ、22.4×256および40.46×256=10,393.6となる。
最悪の場合における差の合計は、ScalingGainMismathおよびDCLeakageの和として近似することができる。
以前のオーバーラップ2×2クロマ演算子。以前のオーバーラップ2×2演算子の例では、逆オーバーラップ2×2演算子への入力が全て同じ値である場合、1対の入力値におけるこの演算子のスケーリング段のマトリクス表現は、次のように表すことができる。
Figure 2012505613
ここで、x=1/4、そしてy=1/2である。これらの入力の1つに対する倍率は、1+xy+x(2+xy)=53/32=1.656235となり、他方の入力に対する倍率は、y+1+xy=13/8=1.625となる。DCLeakageRatioは、53/32−13/8=1/32=0.03125となる。
以前のオーバーラップ2×1クロマ演算子。以前のオーバーラップ2×1演算子の例では、逆オーバーラップ2×1演算子への入力が全て等しい値である場合、1対の入力値に対するこの演算子のスケーリング段のマトリクス表現は、次のように表すことができる。
Figure 2012505613
ここで、x=1/8、そしてy=1/4である。入力の一方における倍率は、1+xy+x(2+xy)=329/256=1.28515625であり、他方の入力における倍率は、y+1+xy=41/32となる。DCLeakageRatioは、329/256−41/32=1/256=0.003906となる。
以前のコーナー・オーバーラップ1×1クロマ演算子。以前の実施態様では、コーナー用の1×1オーバーラップ演算子はない。ScalingGainRatioは1.0であり、DCLeakageRatioは0.0である。
3.5 オーバーラップ4×1演算子に対する解決策
オーバーラップ4×1演算子について、3つの解決策を紹介する。これら3つの解決策の内1つは、多数の変量を有する。以前のオーバーラップ4×1演算子のその画素に対する適用をオーバーラップ4×1(a、b、c、d)と記す。
オーバーラップ4×1演算子に対する解決策1。以前のオーバーラップ4×1演算子のDC利得は、大まかに、オーバーラップ4×4のDC利得の二乗根であるので、第1の解決策は以前のオーバーラップ4×1演算子を2回適用することである。オーバーラップ4×1解決策(a、b、c、d)を次のように指定する。
1.オーバーラップ4×1(a、b、c、d)
2.オーバーラップ4×1(d、c、b、a)
2回の演算子の適用間で順序を逆にすることによって、第1段によって混入されるDC漏れは、第2段によって相殺される。順序付けを繰り返すと、漏れの蓄積が誘発される。生憎、この解決策では、大量のDC利得不整合が生ずることに変わりない。
このオーバーラップ4×1の解決策1の演算子が入力X1を取り込むと、出力サンプルは、1454061または1453548または1454852または1454340と
いう値を有する。ScalingGainRatioは、約1.4542となる。DCLeakageRatioは、(1454852−1453548)/10=1304/10となる。8ビット・サンプル画像について、8ビット画像に対する最悪の場合のScalingGainMismatchは、(1.4615−14542)×128/ScalingGainRatio = 0.9344/ScalingGainRatio〜0.64となる。最悪の場合のDCLeakageは、127/ScalingGainRatio×1304/10−0.1561/ScalingRatioとなる。16ビット・サンプル画像について、最悪の場合のScalingGainMismatchは0.9344×256/ScalingGainRatio〜239.2064/ScalingGainRatio〜163となる。最悪の場合のDC漏れは、256×0.16561/ScalingGainRatio〜42.39/ScalingGainRatio〜28.76となる。複雑度に関して、この解決策の複雑度は、以前のオーバーラップ4×1演算子の複雑度のほぼ2倍である。
オーバーラップ4×1演算子に対する解決策2。解決策2は、その主旨が解決策1と同様である。即ち、1つの演算子を同じサンプルに2回適用することを伴う。この解決策では、しかしながら、追加のリフティング・ステップ(lifting step)を加えることによって、以前のオーバーラップ4×1演算子のスケーリングを変更する。以前と同様、オーバーラップ4×1の解決策2(a、b、c、d)は、次のように指定される。
1.オーバーラップ4×1変更(a、b、c、d)、
2.オーバーラップ4×1変更(d、c、b、a)
これらの変更では、スケーリング段において6つの余分なリフティング・ステップを用い、各リフティング・ステップは1回の加算および1回のシフトを有する。
この解決策2の背後にある考えは、DC漏れおよびDCスケーリング利得不整合の双方を最小にするように、xおよびyを変化させることである。(本明細書において用いる場合、「最小にする」は、容認可能な動作レベルまで低減することを意味する。)DC漏れを最小にする条件は、次の通りである。
1+xy+x(2+xy)=y+1+xy
yについて解くと、
Figure 2012505613
が得られる。この場合、オーバーラップ4×1変更演算子の1段のScalingGainRatioを次のように計算することができる。
Figure 2012505613
オーバーラップ4×4演算子のDC利得の二乗根をkで示すことにする。したがって、ScalingGainMismatchを最小にするxの値は、次のように示される。
Figure 2012505613
または
Figure 2012505613
一旦この式を用いて、ScalingGainMismatchを最小にするxの値を決定したなら、
Figure 2012505613
という先の式を用いて(DC漏れを最小にする)yの値を決定することができる。この場合、オーバーラップ4×4演算子のScalingGainRatioは、≒1.461543となる。したがって、kの値は、k≒sqrt(1.461543)≒1.208943となり、DCスケーリング利得は、DCスケーリング利得不整合を最小にするために、この値を近似しなければならない。したがって、xの値は0.094589554に近似しなければならず、yの値は、先の式にしたがって選択すべきである。
実際には、2つの部分から成るリフティング・ステップを用いて実現する(implement)ことができる値によってxを近似することができ、yの値を選択することができ、次いで2つの部分から成るリフティング・ステップを用いて実現することができる値によってyを近似することができる。経験的結果は、DC漏れを最小にする目的が、DCスケーリング利得不整合を最小にする目的よりも重要であることを示す。したがって、xの所与の値に対するyの近似は、最初のxの近似よりも遥かに精度が高くなければならない。
オーバーラップ4×1演算子に対する解決策2a。x=3/32およびy=775/4096=3/16+1/512−1/4096となる。この解決策は、最小のDC漏れを有する。この解決策のDC利得は、次の通りである。
Figure 2012505613
したがって、この解決策は少量のScalingGainMismatchを有する。以前のオーバーラップ4×1演算子と比較して、xを実現するための追加のリフティング・ステップはない。yの実現(implementation)には、以前のオーバーラップ4×1演算子と比較して、2つの追加のリフティング・ステップが用いられる。
オーバーラップ4×1演算子に対する解決策2b。x=97/1024=3/32+1/1024およびy=49/256=3/16+1/256を選択する。この解決策は、最小のDC漏れを有する。この解決策のDC利得は、次の通りである。
Figure 2012505613
したがって、この解決策は少量のScalingGainMismatchを有するが、オーバーラップ4×1演算子に対する解決策2aよりも小さい。尚、以前のオーバーラップ4×1演算子と比較すると、xを実現するためには1つの追加のリフティング・ステップがあることを注記しておく。以前のオーバーラップ4×1演算子と比較すると、yを実現する際に、2つ
の余分なリフティング・ステップがある。スケーリング段ではxを2回適用し、yを1回適用する必要があるので、オーバーラップ4×1演算子に対する新たな解決策では6回の余分なリフティング・ステップがある。
オーバーラップ4×1演算子に対する解決策2c。x=775/8192,3/32−1/1024−8192、およびy=391/2048=3/32+1/512+1/2048を選択する。この解決策のDC利得は、次の通りである。
Figure 2012505613
したがって、この解決策は、最少量のScalingGainMismatchを有する。xを実現する際に2つの余分なリフティング・ステップがある。yを実現する際に、2つの余分なリフティング・ステップがある。スケーリング段ではxを2回適用しyを1回適用する必要があるので、この新たな解決策では6つの余分なリフティング・ステップがある。
オーバーラップ4×1演算子への変更は、DC利得不整合およびDC漏れの双方を更に低減するという利点がある。解決策1の主旨を保持することによって、その利点の全ても同様に保持される。この演算子が入力X1を取り込む場合、出力画素は全て1461631という値を有する。ScalingGainRatioは、ほぼ1.4616となる。DCLeakageRatioは、ほぼ0になる(2−16よりも遥かに小さい)。
8ビット・サンプル画像について、最悪の場合のScalingGainMismatchは(1.461543-1.461631)×128/ScalingGainRatio=0.000088/ScalingGainRatioとなる。最悪の場合のDC漏れは0となる。16ビット・サンプル画像について、最悪の場合のScalingGainMismatchは、0.000088/ScalingGainRatioとなる。最悪の場合のDC漏れは0である。
オーバーラップ4×1演算子に対する解決策2cの複雑度に関して、オーバーラップ4×1変更における6つの追加のリフティング・ステップのために、その複雑度がオーバーラップ4×1の1.5倍となる。つまり、オーバーラップ4×1解決策2は全体的に、以前のオーバーラップ4×1演算子よりも、大まかに3倍複雑になる。
オーバーラップ4×1演算子に対する解決策3。この解決策では、以前のオーバーラップ4×1演算子のスケーリング段を、以前のオーバーラップ4×4演算子のスケーリング段と置換して、新たな演算子オーバーラップ4×1解決策3(Overlap4x1Solution3)を形成する。この解決策は、単一段の解決策であり、したがってどの演算子も繰り返す必要がない。これらの変更によって、オーバーラップ4×1解決策3のDC利得およびDC漏れは、オーバーラップ4×4演算子のそれとほぼ同一になる。しかしながら、スケーリング段以外での演算の丸め効果のために、なおも何らかの小さな差がある。
このオーバーラップ4×1解決策3演算子が入力Xを取り込む場合、出力画素は、1461552、1461547、1461540、および1461535という値を有する。ScalingGainRatioは、ほぼ1.45615435となる。DCLeakageRatioは、(1461552−1461535)/10となる。
8ビット・サンプル画像では、最悪の場合のScalingGainMismatchは、(1.461543−1.45615435)×128/ScalingGainRatio 〜0.000064/ScalingGainRatioとなる。最悪の場合のDCLeakageは、(1461552−1461535)/10×128=0.002176/ScalingGainRatioとなる。
16ビット・サンプル画像では、最悪の場合のScalingGainMismatchは、0.000064×256=0.016384/ScalingGainRatioとなる。最悪の場合のDC漏れは、0.002176×256=0.557056/ScalingGainRatio<1/2となる。
例えば、以前の一実施態様では、サンプルのエッジ4×1ブロックに対するオーバーラップ・ポスト・フィルタリングは、以下の表に示す演算を用いていた。
Figure 2012505613
オーバーラップ4×1エッジ演算子に対する解決策3に続いて、スケーリングに対する変化が、以下の表に示すように行われる。
Figure 2012505613
ここで、InvScale()およびInvRotate()は、次のように定義される。
Figure 2012505613
Figure 2012505613
オーバーラップ4×1演算子の古いスケーリング段を新しいスケーリング段と置換することによって、2つの余分なスケーリング・ステップだけ複雑度が増加する。このため、エッジに対する以前のオーバーラップ4×1演算子の複雑度よりも1.2倍だけ複雑度が増加する。
・ コーナー・オーバーラップ2×2演算子に対する解決策
コーナー・オーバーラップ2×2演算子に対して、2つの可能な解決策を紹介する。
コーナー・オーバーラップ2×2演算子に対する解決策1。解決策1は、コーナーのために新たなオーバーラップ6×1演算子を開発し、コーナー画素を隣接するエッジ画素と併合することである。この解決策が望ましくない1つの理由は、DC利得不整合およびDC漏れを根絶するために入り組んだ設計を必要とするからである。加えて、これらの演算子の方位が水平である場合、画像の幅は3マイクロブロック未満となり、この解決策は相容れない(break down)。同様に、これらの演算子の方位が垂直である場合、高さが3マイクロブロック未満の4:2:0画像、および高さが2マイクロブロック未満の4:2:2画像は、この解決策とではうまく行かない。
コーナー・オーバーラップ2×2演算子に対する解決策2。解決策2は、エッジに適用された同じオーバーラップ4×1演算子を、ラスタ・スキャン順にコーナー画素に適用することである。双方の演算子は4画素に作用するので、この解決策には、コーナー演算子がエッジ演算子と全く同じDC利得不整合およびDC漏れ特性を有するという利点がある。
この解決策を、コーナー・オーバーラップ2×2(a、b、c、d)=オーバーラップ4×1解決策適用(AppliedSolution)(左上、右上、左下、右下)と記す。
具体的な実施態様では、コーナー・オーバーラップ2×2演算子は、コーナー毎に同じ画素順序付けで適用される。これには、全てのコーナーにわたって均一の実施を可能にするという利点がある。この実施態様の欠点は、回転が何らかの小さな誤差を混入させる虞れがあることである。オーバーラップ4×1解決策3では、誤差は丸めにおいて生ずるだけである。あるいは、コーナー毎に循環順序付け(rotated ordering)を用いることもできる。
3.7 クロマ用オーバーラップ2×2演算子に対する解決策
従来の実施態様におけるオーバーラップ2×2演算子に伴う主要な問題は、DC漏れである。この章では、DC漏れを低減するようなこの演算子のスケーリング段の再設計を紹介する。以下の章では、オーバーラップ2×1およびコーナー・オーバーラップ2×1演算子を再設計して、この新たなオーバーラップ2×2演算子の利得を一致させる(gain-match)。
デコーダーにおけるこの新たなオーバーラップ2×2演算子のDC漏れは、この演算子への入力全てを同じ値に設定することによって、推定することができる。逆オーバーラップ2×2演算子への入力が全て同じ値である場合、この演算子の1対の入力値に対する効果を次のように表すことができる。
Figure 2012505613
DC漏れがない場合の条件は次のようになる。
1+xy+y=x(2+xy)+1+xy
ここで、yについて解くと、次のようになる。
y=x(2+xy)、次いで、
y=2×x/(1−x
DC漏れの量は、次のように定量化することができる。
y−x(2+xy)
以前のオーバーラップ2×2演算子は、x=1/4およびy=1/2の値を設定し、したがって、出力は、(1+xy+y)=13/8、および(x(2+xy)+1+xy)=53/32となり、この差が、1/32のDC漏れが生ずる原因となる。これらのxおよびyの値が非常に単純な2つの部分から成るリフティング・ステップを用いる実施態様に適するので、クロマ用の以前のオーバーラップ2×2演算子の複雑度は低い。
一般的な解決策では、DC漏れを軽減するためにxおよびy双方を変化させることができるが、これらの解決策は、クロマ用の以前のオーバーラップ2×2演算子よりも高い複雑性を有するのが通例である。したがって、複雑度の増大を制限しつつDC漏れを低減する解決策が開発されている。
可能な解決策の1つでは、x=1/4の値を保持し、DC漏れを低減するようにyの値を調節する。尚、yを用いるリフティングが行われ、したがって、この解決策は、yの既存の値を保持しつつxを変化させる解決策と比較して、複雑度が低くなることを注記しておく。
クロマ用オーバーラップ2×2演算子に対する解決策1。DC漏れを根絶するyの値は、y=2×(1/4)(1−1/16)=8/15である。この解決策におけるDC漏れは0である。しかしながら、2つの部分から成るリフティング・ステップを用いてy=8/15を実現することはできない。したがって、この解決策は、除算演算を必要とするので、複雑度が高くなる。
クロマ用オーバーラップ2×2演算子に対する解決策2a。y=17/32に値を設定
し、この解決策は、2つの部分から成るリフティング・ステップを用いて、1/2+1/32として実現することができる。この値では、DC漏れは1/512となる。
クロマ用オーバーラップ2×2演算子に対する解決策2b。y=273/512に値を設定する。この解決策は、2つの部分から成るリフティング・ステップを用いて、1/2+1/32+1/512として実現することができる(乗算器を用いることなく)。この値では、DC漏れは1/8192となる。
クロマ用オーバーラップ2×2演算子に対する解決策2c。y=4369/8192に値を設定する。この解決策は、2つの部分から成るリフティング・ステップを用いて、1/2+1/32+1/512+1/8192として実現することができる(乗算器を用いることなく)。この値では、DC漏れは1/131072、即ち、1/(217)となる。
このように、DC漏れは1/32(0.03125)から1/(217)に低減されている。つまり、DC漏れは16ビット精度以下に低減されることになる。この場合のDCスケーリング利得比は、1+xy+y=54613/32768〜1.666656494となる。
例えば、以前の実施態様の1つでは、クロマ・サンプルの内部2×2ブロック用のオーバーラップ・ポスト・フィルタリングでは、以下の表に示す演算が用いられていた。
Figure 2012505613
クロマ用のオーバーラップ2×2演算子に対する解決策2cに従って、以下の表に示すように、係数を1/32、1/512、および1/8192とした2つの部分から成るリフティング動作を追加する。5、9、および13ビットのシフト(>>)が、それぞれ、32、512、および8192による除算に対応するとする。
Figure 2012505613
3.8 オーバーラップ2×1演算子に対する解決策
オーバーラップ4×1演算子に対する解決策と同様に、オーバーラップ2×1演算子について3つの解決策を紹介する。ここで、解決策の1つは多数の変量を有する。
オーバーラップ2×1演算子に対する解決策1。以前のオーバーラップ2×1演算子のDC利得は、大まかに以前のオーバーラップ2×2演算子のDC利得の二乗根であるので、第1の解決策は、以前のオーバーラップ2×1演算子を2回適用することである。オーバーラップ2×1解決策(a、b)を次のように指定する。
3.オーバーラップ2×1(a、b)
4.オーバーラップ2×1(b、a)
この演算子の2回の適用の間で順序を逆転させることによって、第1段によって生じるDC漏れは、第2段によって相殺される。この順序付けを繰り返すと、漏れの蓄積を誘発する。生憎、この解決策ではかなりのDC利得不整合がなおも生ずる。複雑度について、この解決策は、以前のオーバーラップ2×1演算子の約2倍の複雑度を有する。
オーバーラップ2×1演算子に対する解決策2。解決策2は、オーバーラップ2×1演算子に対する解決策1と主旨が同様である。即ち、1つの演算子を同じサンプルに2回適用することを伴う。しかしながら、この解決策では、追加のリフティング・ステップを加えることによって、以前のオーバーラップ2×1演算子のスケーリングを変更する。以前と同様に、オーバーラップ2×1解決策2(a、b)を次のように指定する。
3.オーバーラップ2×1変更(a、b)
4.オーバーラップ2×1変更(b、a)
オーバーラップ2×1演算子に対するこの解決策2の背後にある考えは、DC漏れおよびDCスケーリング利得不整合の双方を最小にするようにxおよびyを変化させることである。DC漏れを最小にする条件は、次の通りである。
1+xy+x(2+xy)=y+1+xy
yについて解くと、
Figure 2012505613
が得られる。この場合、オーバーラップ2×1変更演算子の1段のScalingGainRatioは、次のように計算することができる。
Figure 2012505613
オーバーラップ2×2演算子の利得の二乗根をkで示すことにする。したがって、DCスケーリング利得不整合を最小にするxの値は、次のように示される。
Figure 2012505613
または、
Figure 2012505613
一旦この式を用いてScalingGainMismatchを最小にするxの値を決定したなら、先の式
Figure 2012505613
を用いて、(DC漏れを最小にする)yの値を決定することができる。この場合、オーバーラップ4×4演算子のScalingGainRatioは、≒1.666656494となる。したがって、kの値は、k≒sqrt(1.666656494)≒1.290990509となり、DCスケーリング利得は、DCScalingGainMismatchを最小にするように、この値を近似しなければならない。したがって、xの値は、0.127015153に近似しなければならず、yの値は、先の式にしたがって選択するとよい。
実際には、2つの部分から成るリフティング・ステップを用いて実現することができる値でxを近似することができ、yの値を選択することができ、次いで2つの部分から成るリフティング・ステップを用いて実現することができる値でyを近似することができる。この演算子について、経験的結果は、DC漏れを最小にするという目的は、DCScalingGainMismatchを最小にするという目的よりも重要である。したがって、xの所与の値に対するyの近似は、xの初期近似よりも格段に高精度にすべきである。
オーバーラップ2×1演算子に対する解決策2a。x=1/8およびy=65/256=1/4+1/256を選択する。この解決策では、DC漏れが最小となる。この解決策のDCスケーリング利得は次の通りである。
Figure 2012505613
したがって、この解決策にはなおも少量のDCScalingGainMismatchがある。以前のオーバーラップ2×1演算子と比較して、xを実現するための追加のリフティング・ステップはない。yの実現には、以前のオーバーラップ2×1演算子と比較して、1つ追加のリフティング・ステップを用いる。
オーバーラップ2×1演算子に対する解決策2b。x=65/512=1/8+1/512およびy=33/128=1/4+1/128を選択する。この解決策では、DC漏れが最小となる。この解決策のDCスケーリング利得は次の通りである。
Figure 2012505613
したがって、この解決策にはなおも少量のDCScalingGainMismatchがあるが、オーバーラップ2×1演算子に対する解決策2aよりは少ない。以前のオーバーラップ2×1演算子と比較して、xを実現するために追加のリフティング・ステップが1つある。yを実現するには、以前のオーバーラップ2×1演算子と比較して、1つの追加のリフティング・ステップが必要となる。スケーリング段ではxを2回適用し、yを1回適用することが必要となるので、オーバーラップ2×1演算子に対する新たな解決策2bでは、3つの余分なリフティング・ステップがある。
オーバーラップ2×1演算子に対する解決策2c。x=2081/16384およびy=33/128を選択する。この解決策のDCスケーリング利得は、
Figure 2012505613
となる。したがって、この解決策には少量のDCScalingGainMismatchがある。xを実現する際に、2つの余分なリフティング・ステップがある。yを実現する際に、1つの余分なリフティング・ステップがある。スケーリング段ではxを2回適用し、yを1回適用することが必要となるので、オーバーラップ2×1演算子に対する新たな解決策2bでは、5つの余分なリフティング・ステップがある。複雑度に関して、オーバーラップ2×1変更における5つの追加のリフティング・ステップのために、その複雑度が以前のオーバーラップ2×1演算子よりも1.5倍高くなる。つまり、オーバーラップ2×1解決策2の全体的な解決策では、以前のオーバーラップ2×1演算子よりも複雑度が約3倍となる。
オーバーラップ2×1演算子に対する解決策3。この解決策では、以前のオーバーラップ2×1演算子のスケーリング段を、以前のオーバーラップ2×2演算子のスケーリング段と置換して、新たな演算子、オーバーラップ2×1解決策3を形成する。この解決策は、単一ステップの解決策であり、したがっていずれの演算子も繰り返す必要がない。これらの変更によって、オーバーラップ2×1解決策3のDC利得およびDC漏れがオーバーラップ2×2演算子のそれとほぼ同一になることを保証する。しかしながら、スケーリング段の外側における演算の丸め効果のために、なおも何らかの小さな差がある。
例えば、従来の実施態様の1つでは、クロマ・サンプルのエッジ2×1ブロック用のオ
ーバーラップ・ポスト・フィルタリングでは、以下の表に示す演算が用いられていた。
Figure 2012505613
クロマ用のオーバーラップ2×1演算子に対する解決策3に従って、以下の表に示すように、係数を1/32、1/512、および1/8192とした2つの部分から成るリフティング動作を追加する。5、9、および13ビットのシフト(>>)が、それぞれ、32、512、および8192による除算に対応するとする。
Figure 2012505613
オーバーラップ2×1演算子の古いスケーリング段を新たなスケーリング段と置換することによって、3つの余分なスケーリング・ステップだけ複雑度が高くなる。これによって、エッジ用の以前のオーバーラップ2×1演算子よりも1.2倍複雑度が高くなる。
3.9 コーナー・オーバーラップ1×1演算子に対する解決策
コーナー・オーバーラップ1×1演算子は、1つのサンプルのみに対して動作するので、特異の設計課題がある。つまり、DC漏れは問題とならないが、DC利得不整合が大きな問題となる。以下に、可能な様々な解決策について説明する。
厳密に言うと、コーナー・オーバーラップ1×1演算子は、他のオーバーラップ演算子と同じ意味の演算子ではない。「1×1」演算子は、1つのサンプルの他にサポートの領域を有していない。一方、以下の1×1演算子の解決策例では、その多くが1つのサンプルと、1×1エリアの外側にある少なくとも1つのサンプルから決定される予測子(predictor)との間における予測を伴う。簡略化のために、これらのコーナー演算子をコーナー・オーバーラップ1×1演算子と呼ぶことにする。
DCスケーリングは、以下に紹介する1×1演算子に対する解決策の例の多くが、他のオーバーラップ演算子とは異なる別の方法である。これまでの4×4、4×1、2×2、および2×1演算子では、オーバーラップ動作から直接スケーリングが得られた。以下で説明するコーナー・オーバーラップ1×1演算子のいくつかの例に対するサンプル予測動作では、スケーリングは同じようには行われない。これは、1つの集合における演算子全てに対して同じDC利得を有するという目標から遠離る潜在的な可能性があるが、実際には、以下で説明するように、このような1×1コーナー演算子に対して、殆どの時間で同じスケーリングが得られる。
コーナー・オーバーラップ1×1演算子に対する解決策1。コーナー・オーバーラップ2×2演算子に対する解決策1と同様、1つの解決策は新たなオーバーラップ3×1演算子を設計することである。この解決策には同様の欠点がある。この解決策には、最小画像サイズの要件(演算子の方向に沿って3マイクロブロック)という問題があり、DC利得不整合およびDC漏れの可能性という他の問題と合わせて2つの難点がある。
コーナー・オーバーラップ1×1演算子に対する解決策2。この解決策では、コーナーのサンプルは、それに隣接するサンプルに密接に相関付けられている可能性が高いという事実を利用する。重要なのは、DC係数のオーバーラップ処理においてその使用を考慮すると、この演算子は、元の画像ブロックの各々の平均(mean)以上に作用するということである。つまり、1×1コーナー・オーバーラップ演算子の前に、コーナー・サンプルおよびそれに隣接するサンプルは、同様である高い可能性がある。DC利得不整合を排除すれば、コーナー・サンプル値は、オーバーラップ変換の後でも同様に、その隣接するサンプルと全く同様になる。
したがって、この解決策は、コーナー・サンプルの予測に基づく方式を用いる。一例として左上コーナーについて考え、サンプルに次のような記号で呼ぶことにする。
A B…
C D…

左上のサンプルをAと呼び、Aの右隣にあるサンプルをBと呼び、Aの下にあるサンプルをCと呼ぶ。現場(in-place)計算を用いると仮定して、予測方式を以下のように実施する。
1.第2段オーバーラップ演算子を適用する前。
a.値(A)=値(A)−(値(B)+値(C)+1)>>1
2.第2弾オーバーラップ演算子を適用した後。
a.値(A)=値(A)+(値(B)+値(C)+1)>>1
ステップ1後のAの残余値は小さいように思われるので、この演算は、同じ利得をコーナー・サンプルに適用することとほぼ同等である。(BおよびCは有意な値(significant
value)を有するかもしれないが、差の値Aは通例0またはほぼ0である。ステップ1の後、隣接するBおよびCサンプルにスケーリングを適用する(例えば、エッジ・オーバーラップ演算子によって)。ステップ2において、スケーリングしたBおよびCの値を差の値Aに加算すると、得られた値Aは、殆どの場合、Aは、事実上BおよびC値と同じ程度にスケーリングされている。この解決策を他の3つのコーナーに適用することは簡単である。
コーナー・オーバーラップ1×1演算子に対する解決策2には、回転に関して対称的であるという利点がある。1つの欠点は、この解決策が、少なくとも2マクロブロックの幅および2マクロブロックの高さ(4:2:0についてのみであり、4:2:2には当てはまらない)を有する画像を必要とすることであり、そうでなければ、この予測方式は非実用的になる。
コーナー・オーバーラップ1×1演算子に対する解決策3。解決策2と同様の第2方式を、コーナー・オーバーラップ1×1演算子のために紹介する。実施態様によっては、オーバーラップ変換の各段階を1回で実行しなくてもよく、代わりに、これらの段階をずらせばよい場合もある。これによって、オーバーラップ変換の前または後に、BおよびC双方に同時にアクセスすることを困難にすることができる。以下の方式をこの解決策のため
に紹介する。
1.第2段オーバーラップ演算子をBに適用する前:
a.値(A)=値(A)−値(B)>>1.
2.第2段オーバーラップ演算子をCに適用する前:
a.値(A)=値(A)−値(C)>>1.
3.第2段オーバーラップ演算子をBに適用した後:
a.値(A)=値(A)+値(B)>>1.
4.第2段オーバーラップ演算子をCに適用した後:
a.値(A)=値(A)+値(C)>>1.
ステップの順序付けには、1を3の前に行わせ、2を4の前に行わせることだけが求められる。これら2つの条件が満たされている限り、いずれの再順序付けでも容認可能である。コーナー・オーバーラップ1×1演算子に対する解決策3によって、種々の実施態様におけるタイミングの問題からの切り離しが可能になる。生憎、この解決策には、解決策2では生じない丸めによる問題がいくつかある。それ以外では、この解決策は、コーナー・オーバーラップ1×1演算子に対する解決策2と同じ特性を共有する。
コーナー・オーバーラップ1×1演算子に対する解決策4。この解決策では、解決策3を修正して、以下のように、水平方向のみに渡って動作するようにした。
1.第2段オーバーラップ演算子をBに適用する前、
a.値(A)=値(A)− 値(B)
2.第2段オーバーラップ演算子をBに適用した後、
a.値(A)=値(A)+ 値(B)
この解決策の利点は、これの方が必要なメモリー・アクセスが少ないことである。これは、コーナー・オーバーラップ1×1演算子に対する解決策2および3の半分のサンプルとしか相互作用しないので、複雑度は低くなる。この解決策の欠点は、これには対称性が欠けており、したがって回転による問題があることである。この懸念は、ダウンサンプリングが発生する損失が、非対称性が発生する損失よりも大きいことを考慮すると緩和される。コーナー・オーバーラップ1×1演算子に対する他の解決策と同様、解決策4では、画像(即ち、ハード・タイル)が有する幅は、少なくとも2マクロブロック分である。しかしながら、1つの利点は、ダウンサンプリングしたクロマ動作の全てが同様であることである。解決策2(ならびに解決策3、5、6、および7)と同様、Aに対する差を計算するために用いられる隣接サンプルは、Aに非常に似通った値を有することが予期される。ステップ1の後、エッジ・オーバーラップ処理の一部として、隣接サンプルをスケーリングし、次いでステップ2において、コーナーに対する差Aに加算し戻す。差Aは0であるかまたは0に近いことが予期されるので、コーナー値は隣接サンプルとほぼ同じ範囲にスケーリングされる。
コーナー・オーバーラップ1×1演算子に対する解決策5。この解決策では、解決策3を修正して、以下のように、垂直方向のみにわたって動作するようにした。
1.第2段オーバーラップ演算子をCに適用する前、
a.値(A)=値(A)− 値(C)
2.第2段オーバーラップ演算子をCに適用した後、
a.値(A)=値(A)+ 値(C)
この解決策の利点は、これの方が必要なメモリー・アクセスが少ないことである。これは、コーナー・オーバーラップ1×1演算子に対する解決策2および3の半分のサンプルとしか相互作用しないので、複雑度は低くなる。解決策4と同様、この解決策の欠点は、これには対称性が欠けており、したがって回転による問題があることである。この懸念は
、ダウンサンプリングが発生する損失が、非対称性が発生する損失よりも大きいことを考慮すると緩和される。コーナー・オーバーラップ1×1演算子に対する他の解決策と同様、解決策5では、4:2:0画像の高さは、少なくとも2マイクロブロック分である。この解決策からは、他のサイズ要件は発生しない。つまり、4:2:0および4:2:2演算は並列ではない。これは、この解決策の別の欠点となる。
コーナー・オーバーラップ1×1演算子に対する解決策6。コーナー・オーバーラップ1×1演算子に対するこの解決策は、解決策4および5の組み合わせである。具体的には、シンタックス・エレメントをビットストリームに追加して、コーナー・オーバーラップ1×1演算子に対する予測が水平かまたは垂直か指定する。この解決策には、回転が簡単にサポートされるという利点がある。シンタックス・エレメントの追加は、この解決策の欠点となる。
コーナー・オーバーラップ1×1演算子に対する解決策7。この最後の解決策は、Aに対する予測子としてBの値が用いられる代わりに、Dの値が予測子として用いられることを除いて、解決策4と同様である。Dを予測子として用いることの利点は、回転対称性である。しかしながら、Dを用いることの欠点は、BまたはCよりも整合性が悪い(worse match)場合があることである。
4.コンピューティング環境
以上に説明したオーバーラップ処理の改革は、ディジタル・メディア信号処理が実行される種々のデバイス(例えば、ディジタル・メディア・エンコードおよび/またはデコード・デバイス)であればいずれにおいても実現することができ、例の中でもとりわけ、コンピューター、画像およびビデオ記録、送信および受信機器、携帯用ビデオ・プレーヤー、ディジタル・メディア・プレーヤー、ビデオ会議などが含まれる。このオーバーラップ処理の改革は、ハードウェア回路、および図8に示すような、コンピューターまたは他のコンピューティング環境ないにおいて実効するディジタル・メディア処理ソフトウェアでも実現することができる。
図8は、説明した実施形態を実現することができる、適したコンピューティング環境(800)を一般化した例を示す。コンピューター環境(800)は、本発明の使用範囲や機能についていかなる限定をも示唆することを意図していない。それは、本発明が多種多様の汎用または特殊目的コンピューティング環境において実現できるからである。
図8を参照すると、コンピューティング環境(800)は、少なくとも1つの演算装置(810)とメモリーー・ユニット(820)とを含む。図8において、この最も基本的な構成(830)は、破線の中に含まれている。演算装置(810)は、コンピューター実行可能命令を実行し、実在のプロセッサーでも仮想プロセッサーであってもよい。マルチ処理システムでは、多数の演算装置がコンピューター実行可能命令を実行して、処理パワーを増大する。メモリー(820)は、揮発性メモリー(例えば、レジスタ、キャッシュ、RAM)、不揮発性メモリー(例えば、ROM、EEPROM、フラッシュ・メモリー等)、またはこれら2つの何らかの組み合わせとすることができる。メモリー(820)は、オーバーラップ処理のための多数のタイル境界選択肢および/またはDC利得不整合を低減するオーバーラップ演算子を備えた、先に説明したエンコーダー/デコーダーを実現するソフトウェア(880)を格納する。
コンピューティング環境は、追加の特徴を有してもよい。例えば、コンピューティング環境(800)は、ストレージ(840)、1つ又は複数の入力デバイス(850)、1つ又は複数の出力デバイス(860)、および1つ又は複数の通信接続(870)を含む。バス、コントローラー、またはネットワークというような相互接続メカニズム(図示せず)が、コンピューティング環境(800)のコンポーネントを相互接続する。通例では
、オペレーティング・システム・ソフトウェア(図示せず)が、コンピューティング環境(800)において実行するほかのソフトウェアに合った動作環境を提供し、コンピューティング環境(800)のコンポーネントの動作(activities)を調整する。
ストレージ(840)は、リムーバブルでも非リムーバブルでもよく、磁気ディスク、磁気テープまたはカセット、CD−ROM、CD−RW、DVD、あるいは情報を格納するために用いることができしかもコンピューティング環境(800)内においてアクセスすることができるその他のあらゆる媒体も含む。ストレージ(840)は、オーバーラップ処理のための多数のタイル境界選択肢および/またはDC利得不整合を低減するオーバーラップ演算子を備えた、先に説明したエンコーダー/デコーダーを実現するソフトウェア(880)に対する命令を格納する。
入力デバイス(1つまたは複数)(850)は、キーボード、マウス、ペン、またはトラックボールのような接触入力デバイス、音声入力デバイス、走査デバイス、またはコンピューティング環境(800)に入力を供給する他のデバイスとすることができる。オーディオについては、入力デバイス(850)は、サウンド・カード、あるいはアナログまたはディジタル形態でオーディオ入力を受け入れる同様のデバイス、あるいはオーディオ・サンプルをコンピューティング環境に供給するCD−ROMリーダーとすることができる。画像またはビデオについては、入力デバイス(1つまたは複数)(850)は、カメラ、TVチューナー、あるいはアナログまたはディジタル形態で入力ビデオを供給するその他のデバイスとすることができる。出力デバイス(1つまたは複数)(860)は、ディスプレイ、プリンター、スピーカー、CD−ライター、またはコンピューティング環境(800)からの出力を供給するその他のデバイスとすることができる。
通信接続(1つまたは複数)(870)は、通信媒体を通じたほかのコンピューティングエンティティへの通信を可能にする。通信媒体は、圧縮オーディオまたはビデオ情報、あるいは変調データ信号におけるその他のデータというような情報を伝達する。変調データ信号とは、その信号の中に情報をエンコードするような態様で、その特性の1つ又は複数を設定または変化させた信号のことである。一例として、そして限定ではなく、通信媒体は、電気、光、RF、赤外線、音響、またはその他の搬送波で実現した有線またはワイヤレス技法を含む。
本明細書におけるディジタル・メディア処理技法は、コンピューター読み取り可能媒体という一般的なコンテキストで説明することができる。コンピューター読み取り可能媒体は、コンピューティング環境内においてアクセスすることができ、入手可能なあらゆる有形媒体である。一例として、そして限定ではなく、コンピューティング環境(800)では、コンピューター読み取り可能媒体は、メモリー(820)およびストレージ(840)、ならびにこれら2つの組み合わせを含む。コンピューター読み取り可能媒体は、有形媒体である。コンピューター読み取り可能媒体は、変調データ信号を含まない。
本明細書におけるディジタル・メディア処理技法は、目標とする実在のまたは仮想のプロセッサー上にあるコンピューティング環境において実行するプログラム・モジュールに含まれるような、コンピューター実行可能命令という一般的なコンテキストで説明することができる。一般に、プログラム・モジュールは、ルーチン、プログラム、ライブラリー、オブジェクト、クラス、コンポーネント、データ構造等を含み、特定のタスクを実行するかまたは特定の抽象データ・タイプを実現する。プログラム・モジュールの機能は、種々の実施形態における所望に応じて、プログラム・モジュール間で組み合わせることや分割することができる。プログラム・モジュールのコンピューター実行可能命令は、ローカルまたは分散型コンピューティング環境内においても実行することができる。
紹介のために、詳細な説明では、「判定する」、「発生する」、「調節する」、および「適用する」というような用語を用いて、コンピューティング環境におけるコンピューター動作を説明した。これらの用語は、コンピューターが実行する動作についての上位抽象であり、人間が行う好意と混同すべきでない。これらの用語に対応する実際のコンピューターの動作は、実施態様に応じて変化する。
以上、詳細な説明および添付図面において本改革の原理について説明し図示したが、このような原理から逸脱することなく、種々の実施形態の構成および詳細を変更できることは認められよう。本明細書において説明したプログラム、プロセス、または方法は、特に指示されていない限り、いずれの特定のタイプのコンピューティング環境にも関係付けられることも限定されることもないことは言うまでもない。本明細書に記載した教示と共に、種々のタイプの汎用または特殊コンピューティング環境を用いることができ、本明細書に記載した教示にしたがって動作を実行することができる。ソフトウェアとして示した実施形態のエレメントをハードウェアで実現することもでき、更にその逆も可能である。
本発明の原理を適用することができる数多くの実施形態が可能であることに鑑み、以下の特許請求の範囲およびその均等の範囲ならびに主旨に該当すると考えられる、全てのこのような実施形態を発明として特許請求することとする。

Claims (15)

  1. ディジタル・メディア・デコード・デバイス(800)を用いてディジタル・メディアをデコードするために用いられる、逆オーバーラップ変換(260)を実行する方法であって、
    前記ディジタル・メディア・デコード・デバイスによって、ディジタル・メディアに対して逆周波数変換(250)を実行するステップと、
    前記ディジタル・メディア・デコード・デバイスによって、複数のオーバーラップ演算子を前記逆周波数変換の結果に適用するステップ(750)であって、前記複数のオーバーラップ演算子が、少なくとも第1オーバーラップ演算子と第2オーバーラップ演算子とを含み、前記第1オーバーラップ演算子が内部オーバーラップ演算子であり、前記第2オーバーラップ演算子がエッジまたはコーナー・オーバーラップ演算子であり、前記複数のオーバーラップ演算子の各々が、実質的に同等のDC利得を特徴とする、ステップと、
    を備えている、方法。
  2. 請求項1記載の方法において、前記適用するステップの一部として、
    前記第1オーバーラップ演算子を、画像および/またはタイルの内部4×4サンプル領域(310)に適用し、
    前記第2オーバーラップ演算子が、前記画像および/またはタイルのエッジ4×1サンプル領域(330)に適用されるエッジ・オーバーラップ演算子であり、
    前記複数のオーバーラップ演算子の内第3オーバーラップ演算子を、前記画像および/またはタイルのコーナー2×2サンプル領域(320)に適用する、方法。
  3. 請求項2記載の方法において、前記第1オーバーラップ演算子が、スケーリング段を含み、前記第2オーバーラップ演算子が、前記第1オーバーラップ演算子のスケーリング段を用いる、方法。
  4. 請求項2記載の方法において、前記逆オーバーラップ変換が、多数の段階を有する階層的逆変換であり、前記第1、第2、および第3オーバーラップ演算子を、前記多数の段階の内第1段階における少なくとも1つのチャネルのサンプルに適用する、方法。
  5. 請求項2記載の方法において、前記逆オーバーラップ変換が、多数の段階を有する階層的逆変換であり、前記第1、第2、および第3オーバーラップ演算子を、前記多数の段階のうち第2段階における複数の最大分解能チャネルの各々のサンプルに適用する、方法。
  6. 請求項2記載の方法において、前記第1オーバーラップ演算子が、所与のスケーリング段を有する第1スケーリングを含み、前記第2オーバーラップ演算子が、前記所与のスケーリング段を有する第2スケーリングを含み、前記所与のスケーリング段が次の表の通りである、方法。
    Figure 2012505613
  7. 請求項2記載の方法において、前記コーナー2×2サンプル領域に適用される前記第3オーバーラップ演算子が、前記コーナー2×2サンプル領域の左上、右上、左下、および右下のサンプルを順序付けし直した後に、前記第2オーバーラップ演算子を用いて、中間
    4×1サンプル領域として適用される、方法。
  8. 請求項1記載の方法において、前記逆オーバーラップ変換が、多数の段階を有する階層的逆変換であり、前記適用するステップの一部として、
    画像および/またはタイルの内部2×2サンプル領域(410、510)に前記第1オーバーラップ演算子を適用し、
    前記第2オーバーラップ演算子が、前記画像および/またはタイルのエッジ2×1サンプル領域(430、530)に適用されるエッジ・オーバーラップ演算子であり、
    前記複数のオーバーラップ演算子の内第3オーバーラップ演算子を、前記画像および/またはタイルのコーナー1×1サンプル領域(420、520)に適用し、
    前記第1、第2、および第3オーバーラップ演算子を、前記多数の段階の内第1段階において、ダウンサンプリングされたクロマ・チャネルのサンプルに適用する、方法。
  9. 請求項8記載の方法において、前記第1オーバーラップ演算子および前記第2オーバーラップ演算子が、1/32、1/512、および1/8192の係数を有する2つの部分から成るリフティング・ステップを含む、方法。
  10. 請求項8記載の方法において、水平方向に隣接する位置Bにおけるサンプル値を用いて、位置Aにあるサンプルに前記第3オーバーラップ演算子を適用し、前記第3オーバーラップ演算子を、
    前記位置Bにおけるサンプル値にオーバーラップ演算子を適用する前に、前記位置Bにおけるサンプル値を前記位置Aにおけるサンプル値から減算することによって、前記位置Aにおけるサンプル値を調節し、
    前記位置Bにおけるサンプル値にオーバーラップ演算子を適用した後に、前記位置Bにおけるサンプル値を前記位置Aにおけるサンプル値に加算することによって、前記位置Aにおけるサンプル値を調節する、
    ことによって実装する、方法。
  11. ディジタル・メディア・デコード・デバイス(800)を用いてディジタル・メディアをデコードする方法であって、
    前記ディジタル・メディア・デコード・デバイスによって、
    エンコードされたビットストリームにおいて、選択されたタイル境界選択肢を示す情報を受け取るステップ(640)であって、前記選択されたタイル境界選択肢が、オーバーラップ演算子に対するハード・タイル境界処理とオーバーラップ演算子に対するソフト・タイル処理との内1つを示す、ステップと、
    前記選択されたタイル境界選択肢に少なくとも部分的に基づいて、逆オーバーラップ処理を実行するステップ(650)と、
    を備えている、方法。
  12. 請求項11記載の方法であって、更に、
    前記選択されたタイル境界選択肢が、オーバーラップ演算子に対する前記ソフト・タイル境界処理を示す場合、タイル境界を跨ぐ逆オーバーラップ演算によって前記逆オーバーラップ処理を実行するステップと、
    前記選択されたタイル境界選択肢が、オーバーラップ演算子に対する前記ハード・タイル境界処理を示す場合、タイル境界を跨ぐ逆オーバーラップ演算を用いずに、前記逆オーバーラップ処理を実行するステップであって、前記逆オーバーラップ処理が、DC利得不整合を低減するように、前記それぞれのタイル境界の少なくとも一方側にあるエッジ・サンプルに対する逆オーバーラップ演算をなおも含む、ステップと、
    を備えている、方法。
  13. 請求項11記載の方法において、前記選択されたタイル境界選択肢が、画像ヘッダ内において知らされる、方法。
  14. 請求項11記載の方法において、
    前記選択されたタイル境界選択肢が、オーバーラップ演算子に対する前記ソフト・タイル境界処理を示す場合、現在のタイルに対する前記逆オーバーラップ処理が、少なくとも1つの空間的に隣接するタイルを少なくとも部分的にデコードすることを含み、
    前記選択されたタイル境界選択肢が、オーバーラップ演算子に対する前記ハード・タイル境界処理を示す場合、前記現在のタイルに対する前記逆オーバーラップ処理が、空間的に隣接するタイルのデコードとは独立している、方法。
  15. コンピューター実行可能命令を格納したコンピューター読み取り可能媒体であって、それによってプログラミングされたディジタル・メディア・デコード・デバイスに、請求項1から14までのいずれか1項に記載の方法を実行させる、コンピューター読み取り可能媒体。
JP2011531224A 2008-10-10 2009-10-09 オーバーラップ変換処理におけるdc利得不整合およびdc漏れの低減 Expired - Fee Related JP5306469B2 (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US10466808P 2008-10-10 2008-10-10
US61/104,668 2008-10-10
US12/571,365 US8275209B2 (en) 2008-10-10 2009-09-30 Reduced DC gain mismatch and DC leakage in overlap transform processing
US12/571,365 2009-09-30
PCT/US2009/060249 WO2010042875A2 (en) 2008-10-10 2009-10-09 Reduced dc gain mismatch and dc leakage in overlap transform processing

Publications (2)

Publication Number Publication Date
JP2012505613A true JP2012505613A (ja) 2012-03-01
JP5306469B2 JP5306469B2 (ja) 2013-10-02

Family

ID=42098915

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011531224A Expired - Fee Related JP5306469B2 (ja) 2008-10-10 2009-10-09 オーバーラップ変換処理におけるdc利得不整合およびdc漏れの低減

Country Status (14)

Country Link
US (1) US8275209B2 (ja)
EP (1) EP2332334A4 (ja)
JP (1) JP5306469B2 (ja)
KR (1) KR101683313B1 (ja)
CN (1) CN102177714B (ja)
AR (1) AR073820A1 (ja)
AU (1) AU2009303343B2 (ja)
BR (1) BRPI0918932A2 (ja)
CA (1) CA2735973C (ja)
MX (1) MX2011003530A (ja)
MY (1) MY159055A (ja)
RU (1) RU2518932C2 (ja)
TW (2) TWI540845B (ja)
WO (1) WO2010042875A2 (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008109389A (ja) * 2006-10-25 2008-05-08 Canon Inc 画像処理装置および画像処理装置の制御方法
EP2294826A4 (en) * 2008-07-08 2013-06-12 Mobile Imaging In Sweden Ab COMPRESSION METHOD OF IMAGES AND FORMAT OF COMPRESSED IMAGES
JP5199956B2 (ja) * 2009-06-16 2013-05-15 キヤノン株式会社 画像復号装置及びその制御方法
JP5199955B2 (ja) * 2009-06-16 2013-05-15 キヤノン株式会社 画像復号装置及びその制御方法
AP3992A (en) 2011-07-15 2017-01-08 Ge Video Compression Llc Sample array coding for low-delay
CA2873496A1 (en) 2012-05-14 2013-11-21 Luca Rossato Encoding and decoding based on blending of sequences of samples along time
US9224213B2 (en) * 2013-12-31 2015-12-29 Facebook, Inc. Systems and methods for context based image compression
CN113011585B (zh) * 2021-03-19 2023-09-26 上海西井科技股份有限公司 消除拼接算子的编译优化方法、系统、设备及存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008057308A2 (en) * 2006-11-08 2008-05-15 Thomson Licensing Methods and apparatus for in-loop de-artifact filtering
WO2008103766A2 (en) * 2007-02-21 2008-08-28 Microsoft Corporation Computational complexity and precision control in transform-based digital media codec

Family Cites Families (102)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4754492A (en) 1985-06-03 1988-06-28 Picturetel Corporation Method and system for adapting a digitized signal processing system for block processing with minimal blocking artifacts
US4698672A (en) 1986-10-27 1987-10-06 Compression Labs, Inc. Coding system for reducing redundancy
US5297236A (en) 1989-01-27 1994-03-22 Dolby Laboratories Licensing Corporation Low computational-complexity digital filter bank for encoder, decoder, and encoder/decoder
JP2639176B2 (ja) 1990-05-28 1997-08-06 日本電気株式会社 2次元信号符号化復号化方法とその符号化装置・復号化装置
JP3052516B2 (ja) 1990-12-21 2000-06-12 カシオ計算機株式会社 符号化データ処理装置
JPH0591459A (ja) 1990-12-21 1993-04-09 Casio Comput Co Ltd 電子カメラ
JP2549479B2 (ja) 1991-12-06 1996-10-30 日本電信電話株式会社 動き補償フレーム間帯域分割符号化処理方法
KR0148130B1 (ko) 1992-05-18 1998-09-15 강진구 블럭킹아티팩트를 억제시키는 부호화/복호화 방법 및 그 장치
JP3401823B2 (ja) 1993-03-31 2003-04-28 ソニー株式会社 画像コーデック用プロセッサ
US5438590A (en) * 1993-05-24 1995-08-01 Comstream Corporation Transmitting and receiving apparatus and method including punctured convolutional encoding and decoding
US5982459A (en) 1995-05-31 1999-11-09 8×8, Inc. Integrated multimedia communications processor and codec
FR2737931B1 (fr) 1995-08-17 1998-10-02 Siemens Ag Procede destine au traitement de blocs d'images decodes d'un procede de codage d'images a base de blocs
US5959673A (en) 1995-10-05 1999-09-28 Microsoft Corporation Transform coding of dense motion vector fields for frame and object based video coding applications
US6064776A (en) 1995-10-27 2000-05-16 Kabushiki Kaisha Toshiba Image processing apparatus
US6041145A (en) * 1995-11-02 2000-03-21 Matsushita Electric Industrial Co., Ltd. Device and method for smoothing picture signal, device and method for encoding picture and device and method for decoding picture
US5850294A (en) 1995-12-18 1998-12-15 Lucent Technologies Inc. Method and apparatus for post-processing images
KR100196838B1 (ko) 1995-12-23 1999-06-15 전주범 블럭벌 상관 관계에 의한 부호화 장치
JP3130464B2 (ja) * 1996-02-02 2001-01-31 ローム株式会社 データ復号装置
US5805739A (en) 1996-04-02 1998-09-08 Picturetel Corporation Lapped orthogonal vector quantization
JPH1070717A (ja) 1996-06-19 1998-03-10 Matsushita Electric Ind Co Ltd 画像符号化装置及び画像復号化装置
JP2907146B2 (ja) 1996-09-11 1999-06-21 日本電気株式会社 メモリlsiの特定箇所探索方法および探索装置
US5802107A (en) * 1996-09-13 1998-09-01 Zenith Electronics Corporation Symbol rotator
US6233017B1 (en) 1996-09-16 2001-05-15 Microsoft Corporation Multimedia compression system with adaptive block sizes
US5999656A (en) 1997-01-17 1999-12-07 Ricoh Co., Ltd. Overlapped reversible transforms for unified lossless/lossy compression
KR100261253B1 (ko) 1997-04-02 2000-07-01 윤종용 비트율 조절이 가능한 오디오 부호화/복호화 방법및 장치
US5973755A (en) 1997-04-04 1999-10-26 Microsoft Corporation Video encoder and decoder using bilinear motion compensation and lapped orthogonal transforms
AU8055798A (en) 1997-06-05 1998-12-21 Wisconsin Alumni Research Foundation Image compression system using block transforms and tree-type coefficient truncation
US6151296A (en) * 1997-06-19 2000-11-21 Qualcomm Incorporated Bit interleaving for orthogonal frequency division multiplexing in the transmission of digital signals
JP3375539B2 (ja) 1997-07-14 2003-02-10 ペンタックス株式会社 画像圧縮装置および画像伸張装置
US5859788A (en) 1997-08-15 1999-01-12 The Aerospace Corporation Modulated lapped transform method
TW364269B (en) 1998-01-02 1999-07-11 Winbond Electronic Corp Discreet cosine transform/inverse discreet cosine transform circuit
US6393156B1 (en) 1998-01-07 2002-05-21 Truong Q. Nguyen Enhanced transform compatibility for standardized data compression
US6393061B1 (en) 1998-05-15 2002-05-21 Hughes Electronics Corporation Method for reducing blocking artifacts in digital images
US6029126A (en) 1998-06-30 2000-02-22 Microsoft Corporation Scalable audio coder and decoder
US6115689A (en) 1998-05-27 2000-09-05 Microsoft Corporation Scalable audio coder and decoder
US6154762A (en) 1998-06-03 2000-11-28 Microsoft Corporation Fast system and method for computing modulated lapped transforms
US6073153A (en) 1998-06-03 2000-06-06 Microsoft Corporation Fast system and method for computing modulated lapped transforms
US6253165B1 (en) 1998-06-30 2001-06-26 Microsoft Corporation System and method for modeling probability distribution functions of transform coefficients of encoded signal
US6011625A (en) 1998-07-08 2000-01-04 Lockheed Martin Corporation Method for phase unwrapping in imaging systems
US6421464B1 (en) 1998-12-16 2002-07-16 Fastvdo Llc Fast lapped image transforms using lifting steps
US6487574B1 (en) 1999-02-26 2002-11-26 Microsoft Corp. System and method for producing modulated complex lapped transforms
US6496795B1 (en) 1999-05-05 2002-12-17 Microsoft Corporation Modulated complex lapped transform for integrated signal enhancement and coding
US6370502B1 (en) 1999-05-27 2002-04-09 America Online, Inc. Method and system for reduction of quantization-induced block-discontinuities and general purpose audio codec
US6771829B1 (en) 1999-10-23 2004-08-03 Fastvdo Llc Method for local zerotree image coding
US6377916B1 (en) * 1999-11-29 2002-04-23 Digital Voice Systems, Inc. Multiband harmonic transform coder
US6865229B1 (en) 1999-12-14 2005-03-08 Koninklijke Philips Electronics N.V. Method and apparatus for reducing the “blocky picture” effect in MPEG decoded images
US6771828B1 (en) 2000-03-03 2004-08-03 Microsoft Corporation System and method for progessively transform coding digital data
US6968564B1 (en) * 2000-04-06 2005-11-22 Nielsen Media Research, Inc. Multi-band spectral audio encoding
US7177358B2 (en) 2000-06-27 2007-02-13 Mitsubishi Denki Kabushiki Kaisha Picture coding apparatus, and picture coding method
US6832232B1 (en) 2000-07-10 2004-12-14 Advanced Micro Devices, Inc. Dual-block inverse discrete cosine transform method
CN1266649C (zh) 2000-09-12 2006-07-26 皇家菲利浦电子有限公司 视频编码方法
EP1202219A1 (en) 2000-10-30 2002-05-02 Fast Video, LLC Fast lapped image transforms
JP2002182693A (ja) 2000-12-13 2002-06-26 Nec Corp オーディオ符号化、復号装置及びその方法並びにその制御プログラム記録媒体
TW589870B (en) 2000-12-19 2004-06-01 Pts Corp Adaptive transforms
JP2002304624A (ja) 2001-04-05 2002-10-18 Canon Inc フィルタ処理装置及び撮像装置
US7027654B1 (en) 2001-08-16 2006-04-11 On2 Technologies Video compression system
US6882685B2 (en) 2001-09-18 2005-04-19 Microsoft Corporation Block transform and quantization for image and video coding
US7460993B2 (en) 2001-12-14 2008-12-02 Microsoft Corporation Adaptive window-size selection in transform coding
CN101448162B (zh) 2001-12-17 2013-01-02 微软公司 处理视频图像的方法
US6763068B2 (en) 2001-12-28 2004-07-13 Nokia Corporation Method and apparatus for selecting macroblock quantization parameters in a video encoder
JP2003283840A (ja) 2002-03-25 2003-10-03 Canon Inc フィルタ処理装置およびフィルタ処理方法
US7155065B1 (en) 2002-03-27 2006-12-26 Microsoft Corporation System and method for progressively transforming and coding digital data
US7006699B2 (en) 2002-03-27 2006-02-28 Microsoft Corporation System and method for progressively transforming and coding digital data
US7110941B2 (en) 2002-03-28 2006-09-19 Microsoft Corporation System and method for embedded audio coding with implicit auditory masking
JP3855827B2 (ja) 2002-04-05 2006-12-13 ソニー株式会社 2次元サブバンド符号化装置
US7275036B2 (en) 2002-04-18 2007-09-25 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Apparatus and method for coding a time-discrete audio signal to obtain coded audio data and for decoding coded audio data
US7120297B2 (en) 2002-04-25 2006-10-10 Microsoft Corporation Segmented layered image system
US7242713B2 (en) 2002-05-02 2007-07-10 Microsoft Corporation 2-D transforms for image and video coding
GB2388502A (en) 2002-05-10 2003-11-12 Chris Dunn Compression of frequency domain audio signals
US7376280B2 (en) 2002-07-14 2008-05-20 Apple Inc Video encoding and decoding
US7330596B2 (en) * 2002-07-17 2008-02-12 Ricoh Company, Ltd. Image decoding technique for suppressing tile boundary distortion
US6728315B2 (en) 2002-07-24 2004-04-27 Apple Computer, Inc. Method and apparatus for variable accuracy inter-picture timing specification for digital video encoding with reduced requirements for division operations
JP2004064190A (ja) * 2002-07-25 2004-02-26 Ricoh Co Ltd 画像処理装置、方法、プログラムおよび記録媒体
US7031392B2 (en) 2002-09-20 2006-04-18 Seiko Epson Corporation Method and apparatus for video deblocking
US7227901B2 (en) 2002-11-21 2007-06-05 Ub Video Inc. Low-complexity deblocking filter
TWI286706B (en) * 2002-11-28 2007-09-11 Shenzhen Syscan Technology Co Two-dimensional barcode card and the decoding method
JP2004201047A (ja) 2002-12-19 2004-07-15 Ricoh Co Ltd 画像処理装置、プログラム及び記憶媒体
US7542036B2 (en) 2003-02-19 2009-06-02 California Institute Of Technology Level set surface editing operators
US7239990B2 (en) 2003-02-20 2007-07-03 Robert Struijs Method for the numerical simulation of a physical phenomenon with a preferential direction
US7167522B2 (en) 2003-02-27 2007-01-23 Texas Instruments Incorporated Video deblocking filter
US7471726B2 (en) 2003-07-15 2008-12-30 Microsoft Corporation Spatial-domain lapped transform in digital media compression
US7426308B2 (en) * 2003-07-18 2008-09-16 Microsoft Corporation Intraframe and interframe interlace coding and decoding
US20080075377A1 (en) 2003-07-29 2008-03-27 Topiwala Pankaj N Fast lapped image transforms using lifting steps
US7369709B2 (en) * 2003-09-07 2008-05-06 Microsoft Corporation Conditional lapped transform
US7724827B2 (en) 2003-09-07 2010-05-25 Microsoft Corporation Multi-layer run level encoding and decoding
US7315822B2 (en) 2003-10-20 2008-01-01 Microsoft Corp. System and method for a media codec employing a reversible transform obtained via matrix lifting
KR101044940B1 (ko) 2004-06-23 2011-06-28 삼성전자주식회사 에지 플로우 방향성 필터와 커블릿 변환을 이용한 블록현상 제거 방법 및 장치
US8374238B2 (en) 2004-07-13 2013-02-12 Microsoft Corporation Spatial scalability in 3D sub-band decoding of SDMCTF-encoded video
US7471850B2 (en) 2004-12-17 2008-12-30 Microsoft Corporation Reversible transform for lossy and lossless 2-D data compression
US7428342B2 (en) 2004-12-17 2008-09-23 Microsoft Corporation Reversible overlap operator for efficient lossless data compression
US7305139B2 (en) 2004-12-17 2007-12-04 Microsoft Corporation Reversible 2-dimensional pre-/post-filtering for lapped biorthogonal transform
AU2005239628B2 (en) * 2005-01-14 2010-08-05 Microsoft Technology Licensing, Llc Reversible 2-dimensional pre-/post-filtering for lapped biorthogonal transform
KR100676226B1 (ko) 2005-04-06 2007-01-30 엠텍비젼 주식회사 동영상 코덱의 후처리 방법 및 이를 위한 에지 보상 및 향상 필터링 방법
US7613761B2 (en) 2005-06-27 2009-11-03 The Aerospace Corporation Haar wavelet transform embedded lossless type II discrete cosine transform
US7805476B2 (en) 2005-06-27 2010-09-28 The Aerospace Corporation Extended Haar transform
US7640283B2 (en) 2005-06-27 2009-12-29 The Aerospace Corporation Shared Haar wavelet transform
US7634525B2 (en) 2005-06-27 2009-12-15 The Aerospace Corporation Haar wavelet transform embedded lossless type IV discrete cosine transform
US7933337B2 (en) 2005-08-12 2011-04-26 Microsoft Corporation Prediction of transform coefficients for image compression
US20080137982A1 (en) 2006-12-06 2008-06-12 Ayahiro Nakajima Blurring determination device, blurring determination method and printing apparatus
US8054886B2 (en) 2007-02-21 2011-11-08 Microsoft Corporation Signaling and use of chroma sample positioning information
CN101046964B (zh) * 2007-04-13 2011-09-14 清华大学 基于重叠变换压缩编码的错误隐藏帧重建方法
US8447591B2 (en) 2008-05-30 2013-05-21 Microsoft Corporation Factorization of overlapping tranforms into two block transforms

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008057308A2 (en) * 2006-11-08 2008-05-15 Thomson Licensing Methods and apparatus for in-loop de-artifact filtering
WO2008103766A2 (en) * 2007-02-21 2008-08-28 Microsoft Corporation Computational complexity and precision control in transform-based digital media codec

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
JPN6013025385; Sridhar Srinivasan et al.: 'HD Photo: A new image coding technology for digital photography' Proceedings of SPIE, Applications of Digital Image Processing XXX Volume 6696, Part 1, 20070828 *

Also Published As

Publication number Publication date
AU2009303343B2 (en) 2014-06-19
TW201019615A (en) 2010-05-16
MX2011003530A (es) 2011-04-21
CA2735973A1 (en) 2010-04-15
US8275209B2 (en) 2012-09-25
CA2735973C (en) 2017-12-19
RU2518932C2 (ru) 2014-06-10
EP2332334A2 (en) 2011-06-15
AR073820A1 (es) 2010-12-01
TW201628342A (zh) 2016-08-01
KR101683313B1 (ko) 2016-12-06
KR20110091849A (ko) 2011-08-16
CN102177714A (zh) 2011-09-07
WO2010042875A3 (en) 2010-07-08
MY159055A (en) 2016-12-15
JP5306469B2 (ja) 2013-10-02
TWI540845B (zh) 2016-07-01
CN102177714B (zh) 2014-01-08
AU2009303343A1 (en) 2010-04-15
RU2011113975A (ru) 2012-10-20
US20100092098A1 (en) 2010-04-15
WO2010042875A2 (en) 2010-04-15
EP2332334A4 (en) 2012-06-06
TWI603590B (zh) 2017-10-21
BRPI0918932A2 (pt) 2015-12-01

Similar Documents

Publication Publication Date Title
US8724916B2 (en) Reducing DC leakage in HD photo transform
JP5306469B2 (ja) オーバーラップ変換処理におけるdc利得不整合およびdc漏れの低減
JP5457199B2 (ja) 変換ベースのデジタル・メディア・コーデックにおける計算の複雑性及び精度の制御
US9123089B2 (en) Signaling and uses of windowing information for images
CN108347604B (zh) 视频解压方法、视频压缩方法和非暂时性计算机可读媒体
JP5590574B2 (ja) 多重解像度ビデオ符号化および復号化のための再サンプリングおよび画像サイズ変更の演算
TWI771679B (zh) 以區塊為基礎之預測技術
TWI727826B (zh) 使用內預測之寫碼技術
CN114641995A (zh) 对编码树单元进行编码和解码的方法、设备和系统
US20230421786A1 (en) Chroma from luma prediction for video coding
US11463716B2 (en) Buffers for video coding in palette mode
KR20100013142A (ko) 프레임 메모리 압축방법
WO2024026182A1 (en) Tracking sample completion in video coding
da Silva Dias High performance and scalable unified architectures for transform and quantization in H. 264/AVC codecs

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20121002

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130121

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130123

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130423

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20130527

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130625

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 5306469

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees