(57)【要約】ビデオ画像フレームの個々のピクセルを表示するデジタルデータを読み出し、次に伝送または記憶のために一般に８×８のピクセルのブロックを記述する一連の二進符号化されたワードとして符号化する。ワードを符号化する際に、対象をシグニファイするビデオ画像フレームの領域を表示する一組のピクセルが少なくとも他のブロックにオーバーラップしているかどうかの評価を行う。全領域を構成する当該ブロックのサブ領域を識別し、サブ領域の境界を人工的に定める境界を横断する過渡現象をスムーズにするよう、領域の間でこれらピクセルの輝度値および色差値、ならびにこれら値を補間する。圧縮プロセスを高めるようにブロック内の全てのピクセルに対する輝度値を表示するマスクのライブラリーを利用することができる。
2004503153.tif 000002
【特許請求の範囲】
【請求項１】
ビデオ画像フレームのうちの個々の画素（ピクセル）を示すデジタルデータを一連の符号化された２進ワードとして読み出す工程と、
個々のピクセルを表示するワードから各々がピクセルのブロックまたは他のグループを記述する別の符号ワードを生じるように符号化する工程と、
前に符号化されたビデオ画像フレームと共に、前記別の符号ワードから各々が再構成されたビデオ画像フレームの個々のピクセルを示す一連の符号化された２進ワードを誘導するように符号化する工程とを備えた、伝送または記憶をするために適応された圧縮フォーマットでデジタルビデオ情報を処理し、次に再構成されたデジタルビデオ情報を得るように、圧縮されたフォーマットの情報を逆圧縮する方法において、
認識できる対象をシグニファイする元のビデオ画像フレームの領域（Ｙ１、Ｙ２ａ、Ｙ３ａ、Ｙ４ａ）を全体で表示する一組のピクセルが、前記２つ以上の別の符号ワードにより符号化されるピクセルのグループまたはブロックを完全にカバーするか、またはこれにオーバーラップすることを判断することを、前記符号化動作工程が含み、かかるケースにおいて、
前記領域を構成するグループまたはブロックの各々のサブ領域（Ｙ１、Ｙ２ａ、Ｙ３ａ、Ｙ４ａ）を識別する工程と、
それぞれの別の符号ワードにおけるこれらサブ領域に対して符号化されたピクセル値を決定する工程と、
前記サブ領域の境界を定める境界の間の過渡現象をスムーズにするよう、前記領域に対する再構成されたビデオ画像フレームのピクセルを横断する各サブ領域からこれらピクセル値を補間する工程とを備えた、デジタルビデオ情報を処理する方法。
【請求項２】
前記圧縮されたフォーマットが同じ領域をどのサブ領域が表示するかを特定する追加連結符号ワードを含む、請求項１記載のワード。
【請求項３】
前記符号化動作工程が、どのサブ領域が同じ領域を示しているかを予測するための、あらかじめ決定されたアルゴリズムを使用し、このアルゴリズムが有効である場合、前記符号化動作工程が圧縮されたフォーマットから追加連結符号ワードを省略する、請求項２記載の方法。
【請求項４】
別の符号ワードの誘導がグループまたはブロックに関する次のデータ、すなわち
ｉ）グループまたはブロック内の全てのピクセルの輝度値を示すための多数の輝度値、および
多数の代表的な輝度がある場合には、再構成されたビデオ画像フレームのための各ピクセルの適当な輝度値を判断する際に、代表的な輝度のどれを使用すべきかを示す手段として１つのマスクを使用し、
ｉｉ）代表的な色差（クロミナンス）値を設定することを伴う、請求項１、２または３記載の方法。
【請求項５】
前記符号化動作工程が同じビデオ画像フレーム内の前のグループまたはブロック、もしくは別のフレーム（単数または複数）内の同じグループまたはブロックに対する値ｉ）およびｉｉ）の各々を評価し、所定の逐次順序でこれらの値を比較し、差を、すなわち変化を検出し、その後、新しい値または値の差を圧縮されたフォーマット内に含めることを伴う、請求項４記載の方法。
【請求項６】
隣接するグループまたはブロック間の共有するエッジの片側のサブ領域内のピクセルが、共有されたエッジの反対側のサブ領域内のピクセルのサブセットに１つのピクセルだけ空間的に転置でき、
これらサブ領域の符号化された輝度値が互いの所定のスレッショルド内にある時に、
サブ領域をマスク内に表示された同じ代表的な輝度を有するピクセルの組として識別し、隣接するグループまたはブロック内の２つのサブ領域をより大きい領域にマッチングする、請求項４または５記載の方法。
【請求項７】
隣接するグループまたはブロック間の共有するエッジの片側のサブ領域内のピクセルが、共有されたエッジの反対側のサブ領域内のピクセルのサブセットに１つのピクセルだけ空間的に転置でき、
共用されるエッジの片側にあるサブ領域内にある元のビデオ画像フレーム内のピクセルの輝度値の範囲が、共用されるエッジの反対側のサブ領域内にある元のビデオ画像フレーム内のピクセルの輝度値の範囲に対して所定の関係を有する時、
サブ領域をマスク内に表示された同じ代表的な輝度を有するピクセルの組として識別し、隣接するグループまたはブロック内の２つのサブ領域をより大きい領域にマッチングする、請求項４または５記載の方法。
【請求項８】
前記別の符号ワードの各々が、どの値が変化し、新しい値または値の差がどのように符号化されたかを関連するグループまたはブロックに関する全てのデータに対して表示する一組のフラグでスタートし、その後、符号化された新しい値またはそれらの差が続く、請求項４または５記載の方法。
【請求項９】
前記別の各符号ワードの開始時におけるフラグの組が、これらフラグに対するその値の頻度に従って可変長さで符号化される、請求項８記載の方法。
【請求項１０】
フラグの組が別のビデオ画像フレーム上のカットおよびグループまたはブロックに対応するビデオ画像フレーム上のグループまたはブロックに対して独立して、頻度に応じて符号化される、請求項９記載の方法。
【請求項１１】
ピクセルが自己の異なるマスク入力を有する少なくとも１つの隣接するピクセルを有する場合に、そのピクセルが１つのエッジ上にあると見なすことに基づき、マスクのライブラリー（図４）から選択された、前に採用されたマスクとの差を少なくとも１つの別の符号ワードのマスク部分が表示し、前記マスクのライブラリーが、
ｉ）所定の数のピクセルが変化し、これらピクセルがすべて１つのエッジ上にある場合のエッジに沿った差；
ｉｉ）所定の数のピクセルが変化しており、これらすべてがエッジ上にあるとは言えない場合に、エッジに沿っていない差；および／または
ｉｉｉ）所定の数のピクセルが変化しており、これらすべてがエッジ上にあり、すべてがマスクの表示する同じ代表的な輝度値を有する場合に、エッジに沿ったサイドの差を備えたマスクを含む、請求項４記載の方法。
【請求項１２】
別の符号ワードのマスク部分が前に採用したマスクの空間転移を表示する、請求項４記載の方法。
【請求項１３】
ｉ）２つの輝度値の間の曲線境界が垂直線に対して所定の傾きを有し、グループまたはブロックの中心から所定の距離を有する場合の直線状エッジ、
ｉｉ）１つのフレームからの所定の第１エッジとその後のフレームからの所定の第２エッジとの間において、これら２つのフレームの間の対応するグループまたはブロックの時間内の位置を補間することにより、直線状エッジを計算した場合の補間されたエッジ、および／または
ｉｉｉ）隣接するグループまたはブロックからの情報だけがマスクを構成するように働く場合の予測可能なエッジを含む、マスクのライブラリー（図５）から別の符号ワードのマスク部分を選択する、請求項４記載の方法。
【請求項１４】
隣接するグループまたは部分のマスク内のエッジの曲線を外挿することにより、予測エッジのケースを設定する（図６）、請求項１３記載の方法。
【請求項１５】
多数の連続するビデオ画像フレームに対して、あるグループまたはブロックが実質的に変化せず、一定である場合に、別の符号ワードがグループまたはブロックが変化しなかったビデオ画像フレーム（時間的ギャップ）の数を含む、前の請求項の１つ以上に記載の方法。
【請求項１６】
グループまたはブロック内の変化の頻度差に対して最適にされた時間的ギャップ符号化のために異なる状態を採用することを更に含む、請求項１５記載の方法。
【請求項１７】
再構成されたビデオ画像フレーム上の領域間の境界に対してエリアシング防止を適用することを更に含む、前の請求項の１つ以上に記載の方法。
【請求項１８】
領域間の境界のいずれかの側において２つの隣接するピクセルを識別する工程と、
このロケーションにある境界がより垂直であるか、またはより水平であるかのいずれかを設定する工程と、
対応するピクセルの対の双方が境界の同じ側に位置するまで、水平方向または垂直方向に境界をトラッキングすることにより、境界の水平部分または垂直部分の端部ロケーションを双方の方向に設定する工程と、
境界の水平部分または垂直部分の対応する端部ロケーションの中間点を設定する工程と、
サブピクセルの精度に対し、境界の真の位置の最良の推定値を与えるよう、これら中間点を連結する直線ラインを採用する工程と、
再構成されたビデオ画像フレーム内の境界上のピクセルに対し、予測された直線ラインの境界の各側にあるピクセルの領域に対して比例的に重み付けされた、領域のピクセル値の間のエリアシングが防止されたピクセル値を割り当てる工程により、エリアシングの防止を実施する、請求項１７記載の方法。
【請求項１９】
端部ロケーションが所定の距離よりも遠くにないと仮定することにより、端部ロケーションを設定するために境界をトラッキングする工程を実施し、より近いポイントに端部ロケーションが発見されない場合にこの距離を使用する（図９）、請求項１８記載の方法。
【発明の詳細な説明】
【０００１】
本発明はデジタルビデオ情報を処理するための方法に関する。このデジタルビデオ情報は、記憶し、次に例えばインターネットを通して伝送するために圧縮される。
【０００２】
バンド幅に制約があるためにインターネットとしてビデオ信号をリアルタイムで伝送できる、高度に効率的な圧縮技術を開発することが求められている。代表的な５６ｋｂ／ｓのモデムを通してフルスクリーンの、フル動画ビデオ信号を伝送するには、一般に少なくとも１０００倍の圧縮が必要である。
【０００３】
本発明の目的はかかる圧縮技術を提供することにある。
【０００４】
（一般的な背景）
圧縮すべきビデオ信号は多数の（少なくとも１つの）フレームから構成され、各フレームは個々の画素、すなわちピクセルから成るものと見なすことができる。各ピクセルは３つの成分、通常ＲＧＢ（赤、緑および青）またはＹＵＶ（輝度値および２つの色差値）のいずれかによって表示できる。これら成分はそれぞれ任意の数のビットでよいが、各々は８ビットで通常十分であると考えられている。
【０００５】
人の目にはＵおよびＶ内のエッジの位置よりもピクセルのＹ値におけるエッジの位置のほうに敏感である。この理由から、本明細書に記載の好ましい実施例はピクセルに対しＹＵＶ表示を使用した。
【０００６】
画像サイズはピクセルの数が多くなればなるほど解像度がより高くなり、画質もより良好となるように変わり得るが、データレートをより高くすることができなくなる。ソースビデオ信号がＰＡＬ方式である場合、画像フィールドは毎秒２５個のフレームを有する２８８本のラインを有する。四角形のピクセルは３８４×２８８個のピクセルのソース画像サイズを与える。ノイズを生じやすく、テレビ受像機で正常にディスプレイされないエッジピクセルを除くために３８４×２８８個のピクセル画像の中心ピクセルを使用する場合、好ましい実施例は３７６×２８０のピクセルの解像度を有する。
【０００７】
ピクセルは別々に圧縮することが困難であるが、各ピクセルとその近傍ピクセルとの間には高い相関性がある。圧縮を助けるには画像を正方形成分（本願ではスーパーブロックと称す）に分割する。このスーパーブロックは自らの構造を有する単一エンティティと見なすことができる。これらブロックは任意のサイズとすることができるが、下記の好ましい実施例ではスーパーブロックをすべて同じサイズとし、８×８ピクセルの正方形とする。
【０００８】
各スーパーブロックを別々に圧縮した場合、この圧縮方法の結果生じる誤りがスーパーブロックの間のエッジの両側で結合することがあるので、ブロック間のエッジをハイライト表示することによって圧縮のブロック状の性質が示されるが、このことは望ましくない。逆圧縮および／またはディスプレイ方法はスーパーブロックの境界の間の目に見えるアーティファクトをできるだけ除去することが重要である。
【０００９】
（発明の概要）
本発明によれば、ビデオ画像フレームのうちの個々の画素（ピクセル）を示すデジタルデータを一連の符号化された２進ワードとして読み出す工程と、
個々のピクセルを表示するワードから各々がピクセルのブロックまたは他のグループを記述する別の符号ワードを生じるように符号化する工程と、
前に符号化されたビデオ画像フレームと共に、前記別の符号ワードから各々が再構成されたビデオ画像フレームの個々のピクセルを示す一連の符号化された２進ワードを誘導するように符号化する工程とを備えた、伝送または記憶をするために適応された圧縮フォーマットでデジタルビデオ情報を処理し、次に再構成されたデジタルビデオ情報を得るように、圧縮されたフォーマットの情報を逆圧縮する方法において、
認識できる対象をシグニファイする元のビデオ画像フレームの領域（Ｙ１、Ｙ２ａ、Ｙ３ａ、Ｙ４ａ）を全体で表示する一組のピクセルが、前記２つ以上の別の符号ワードにより符号化されるピクセルのグループまたはブロックを完全にカバーするか、またはこれにオーバーラップすることを判断することを、前記符号化動作工程が含み、かかるケースにおいて、
前記領域を構成するグループまたはブロックの各々のサブ領域（Ｙ１、Ｙ２ａ、Ｙ３ａ、Ｙ４ａ）を識別する工程と、
それぞれの別の符号ワードにおけるこれらサブ領域に対して符号化されたピクセル値を決定する工程と、
前記サブ領域の境界を定める境界の間の過渡現象をスムーズにするよう、前記領域に対する再構成されたビデオ画像フレームのピクセルを横断する各サブ領域からこれらピクセル値を補間する工程とを備えた、デジタルビデオ情報を処理する方法が提供される。
【００１０】
この発明は上記情報処理の方法に適したピクセル値を符号化する方法だけでなく、ディスプレイまたは再生のためにかかる情報を符号化する方法にも別々に拡張することもできる。
【００１１】
別の符号ワードの誘導が、グループまたはブロックに関する次のデータ、すなわち
ｉ）グループまたはブロック内の全てのピクセルの輝度値を示すための多数の輝度値、および
多数の代表的な輝度がある場合には、再構成されたビデオ画像フレームのための各ピクセルの適当な輝度値を判断する際に、代表的な輝度のどれを使用すべきかを示す手段として１つのマスクを使用し、
ｉｉ）代表的な色差値を設定することを伴うことができる。
【００１２】
前記符号化動作工程が同じビデオ画像フレーム内の前のグループまたはブロック、もしくは別のフレーム（単数または複数）内の同じグループまたはブロックに対する値ｉ）およびｉｉ）の各々を評価し、所定の逐次順序でこれらの値を比較し、差を、すなわち変化を検出し、その後、新しい値または値の差を圧縮されたフォーマット内に含めることを伴うことができる。
【００１３】
この方法は、少なくとも８×８の個々のピクセル（スーパーブロック）のブロック成分の輝度の表示を少なくとも含む、単一の誘導されたワードとして各々が記述されるピクセルのブロックまたはグループを記述する別のワードを、個々のピクセルを表示するワードから誘導するように符号化する工程と、
ピクセル（一般に４個以下）の各ブロックに対して少なくされた数の可能な輝度値を設定する工程と、
ディスプレイのための各ピクセルの適当な輝度値を判断する際に、可能な輝度値のどれを使用すべきかを表示するための手段として一連の変化可能な記憶されたマスクを提供する工程と、
グループを構成する要素の所定の逐次順序で別のフレーム（単数または複数）と１つのフレームの対応する部分を表示するワードとを比較し、評価して、これらの差、すなわち変化を検出する工程と、
かかる差を示すために更新を必要とするマスクのいずれかを識別し、かかる差を表示するのに最も適したものとしてフレッシュマスクを選択し、伝送のためにこのフレッシュマスク（単数または複数）を記憶する工程を含むことができる。
【００１４】
好ましくは、ピクセルの各ブロックはヘッダーと、Ｙ、ＵおよびＶ値の各々の少なくとも１つと、先行するブロックのロケーションの表示（いわゆるギャップ）と、上記マスクを含む符号ワードとして記述することが好ましい。各ブロックのマスクは同じマスク値を有するピクセルが同じ領域にあると見なされる領域となるようにブロックを有効にサブ分割する。従って、異なる分割する内の同じマスク値は必ずしもそのブロックの対応する領域をシグニファイしない。従って、隣接するブロックにオーバーラップする画像の領域を表示するのに、ブロック記述内に最良に別の表示（連結）が含まれる。各符号ワードのヘッダー部分は、このフレーム上でブロックの上記成分のどれが変化したかを定め、ハフマン符号化されることが好ましい。
【００１５】
符号ワードのマスク部分は、
（ｉ）例えば複雑なマスクが完全均一となった時に新しく作成されるマスクを示すか、または
（ｉｉ）例えば変化が最小の場合の、前に採用されたマスクからの差を示すことができる。
【００１６】
タイプ（ｉ）のマスクは下記のものを含むマスクのライブラリーから選択できる。
（ａ）ｕｎｉｆｏｒｍ０、すなわち全マスクがゼロを含む。
（ｂ）ｕｎｉｆｏｒｍ１、すなわち全マスクが１を含む。
（ｃ）ｓｔｒａｉｇｈｔ　ｅｄｇｅ、すなわち垂直線に対して所定の傾斜を有し、ブロックの中心から所定の距離を有する２つの対照的な領域の間の直線状境界。
（ｄ）ｉｎｔｅｒｐｏｌａｔｅｄ　ｅｄｇｅ、すなわちあるフレームからの所定の第１エッジ、その後のフレームからの所定の第２エッジ、およびこれら２つのフレームの間の対応するブロックの位置を補間することにより計算された直線状エッジ。
（ｅ）ｐｒｅｄｉｃｔａｂｌｅ、すなわちこのブロックのコンテントを確認するために、隣接するブロックだけからの情報を使用すること。
（ｆ）ｒａｗ、すなわち高度に圧縮された表示は既知でなく、各サブ分割が均一となるまでブロックを４つに繰り返しサブ分割することにより、フラクタル技術を使ってブロックを圧縮する。
【００１７】
タイプ（ｉｉ）のマスクは下記のものを含むマスクのライブラリーから選択できる（ここで、ピクセルが自己への異なるマスク入力を有する少なくとも１つの隣接ピクセルを有する場合、このピクセルはあるエッジ上にあると見なされる）。
（ａ）１　ｄｉｆｆ　ａｌｏｎｇ　ｅｄｇｅ、すなわち１つのピクセルが変化し、このピクセルはエッジ上に存在する場合。
（ｂ）１　ｄｉｆｆ　ｎｏｔ　ａｌｏｎｇ　ｅｄｇｅ、すなわち１つのピクセルが変化し、このピクセルがエッジ上にない場合。
（ｃ）２　ｄｉｆｆ　ｓｉｄｅｄ　ｅｄｇｅ、すなわち正確に２つのピクセルが変化し、これら双方のピクセルがエッジ上にあり、双方が同じマスク値を有する場合。
（ｄ）２　ｄｉｆｆ　ｎｏｎ−ｓｉｄｅｄ　ｅｄｇｅ、すなわち正確に２つのピクセルが変化し、これら双方のピクセルがエッジ上にあり、これら双方が異なるマスク値を有する場合。
（ｅ）２　ｄｉｆｆ　ｎｏｔ　ｏｎ　ａｎ　ｅｄｇｅ、すなわち正確に２つのピクセルが変化し、これらのいずれもエッジにない場合。
（ｆ）ｎ　ｄｉｆｆ　ｓｉｄｅｄ　ｅｄｇｅ（ｎ＞２）、すなわち正確にｎ個のピクセルが変化し、これら全てがエッジ上にあり、全てが同じマスク値を有する場合。
（ｇ）ｎ　ｄｉｆｆ　ｎｏｎ−ｓｉｄｅｄ　ｅｄｇｅ（ｎ＞２）、すなわち正確にｎ個のピクセルが変化し、これら全てがエッジ上にあり、全てが異なるマスク値を有する場合。
（ｈ）ｎ　ｄｉｆｆ　ｎｏｔ　ｏｎ　ａｎ　ｅｄｇｅ（ｎ＞２）、すなわち正確にＮ個のピクセルが変化し、これら全てがエッジ上にあるとは言えない場合。
（ｉ）ｂｉｇ　ｅｄｇｅ、すなわち全てのピクセルの変化がエッジ上にある場合。
（ｊ）ｂｉｇ　ｄｉｆｆ　ｓｉｄｅｄ、すなわち全てのピクセル変化がエッジの同じ側にある場合。
（ｋ）ｆｒａｃｔａｌ、すなわち高度に圧縮された表示が既知ではなく各サブ分割が均一になり、アンセットされるまで、または個々のピクセルのレベルに達する（この場合、２×２のブロックにおける各ピクセルの値が明らかに定められる）までブロックを繰り返し４つにサブ分割することにより、フラクタル技術を使ってブロックを圧縮する場合。
（ｌ）ｎ×ｎ　ｂｏｘ、すなわちあるブロック内の変化した全てのピクセルが辺ｎの正方形内に適合し、よって正方形の位置およびそのコンテントの双方を符号化する場合。
【００１８】
フレームの一般的なシーケンスでは、任意の所定のブロックはあるフレームでは変化したり、他のフレームでは変化しなかったりする。各フレームに対し、そのフレームでどのブロックが変化したかを特定する代わりに、異なる解決方法を採用することが望ましい。各ブロックのためのこの異なる解決方法では、ブロックが変化するフレームを特定する。すなわち時間的ギャップである。このことは、所定のブロックに対する符号ワードを多数のフレームに対して有効であると特定でき、データレートを低減することを意味する。
【００１９】
ビデオ内のフレームの代表的なシーケンスでは、急速に変化する対象の領域を示すフレームの部分、例えば話し手の唇は、頻繁な更新を必要とするブロックを有する。これと対照的に、バックグラウンド領域は比較的静的である。しかしながら、急速に変化する部分は画像の以前静的であった部分に移動したり、この逆の移動が生じ得る。このような事態に効率的に対処するために、時間的ギャップ符号化方式は２つの定義できる状態をサポートしている。その一方の状態は、定義されたロケーションにおける急速な変化に対して最適化され、他方の状態は、定義されたロケーション内の頻繁な変化に対して最適化される。本発明の方法は、変化の性質に応じて自動的に適当な状態を選択する追加工程を含むことが好ましい。
【００２０】
本発明の実施例では、ｎ個のピクセルセットから、後に利用できるｍ個のピクセルサブセットを符号化する必要がある。ｎ　ｃｈｏｏｓｅ　ｍが２の級数となることは、比較的稀であるので、複雑となる。更に本発明によれば、長さＩＮＴ（ｌｏｇ２（ｎ　ｃｈｏｏｓｅ　ｍ））および１＋ＩＮＴ（ｌｏｇ２（ｎ　ｃｈｏｏｓｅ　ｍ））の符号ワードを採用する。採用すべき符号ワードの選択は、利用できる最短符号ワードの総数を単に最大にするだけである。変化する可能性が高いピクセルおよびマスクタイプが表示できる変化を相関化するためにマスクタイプが選択され、このことは変化または更新されたマスクを示す適当なマスクタイプが存在する全てのケースにおいて、ｎを最小にすることを保証する傾向がある。
【００２１】
可能な場合にはスーパーブロックの境界（単数または複数）にオーバーラップし得る領域を形成するように、隣接するスーパーブロックに基づき、スーパーブロックのマスクをマッチさせるための技術を採用することが一般に望ましい。この技術の実施例は次のようにすることができる。
ｉ）１つのスーパーブロックのエッジに沿ったマスクの１または０を、隣接するスーパーブロックのエッジに沿ったマスクの０または１のサブセットにそれぞれ変換できる場合、すなわち１つのピクセルだけ空間的に転置できる場合、隣接するスーパーブロックの隣接するエッジに沿ったピクセルにスーパーブロックの任意のエッジに沿ったピクセルをマッチさせること。
ｉｉ）（それぞれのマスクによって決定される）スーパーブロックのＹ値、すなわち領域の強度が互いの所定のスレッショルド内とする。圧縮されない画像データが利用できる場合、ステージｉｉ）を次のようなステージｉｉｉ）に置換することによって、圧縮時により良好な結果を得ることができる。
ｉｉｉ）ステージｉ）に従ってサブセットを取り込みｉ）で言及されたエッジサブセットの両側を横断する、圧縮されていない画像内のピクセルの強度値を取り込み、これら範囲がオーバーラップの所定のスレッショルド内にある場合、それぞれのスレッショルドにおいてｉ）でマッチングされたエッジと同じマスク値を有するピクセルを取り込み、これらピクセルを同じ領域の一部として扱う。
【００２２】
一般に、双線形補間法を使用することにより４つの最も近いスーパーブロックからピクセルへ４つのＹ値を補間することによって、ディスプレイされた各Ｙ値を計算することが有効である。各スーパーブロックに対し、２つ以上のＹ値が記述されている場合、値のどれを採用すべきかを選択することも必要である。更に本発明によれば、スーパーブロックの境界の両端でマッチングするのはどの領域かを設定し、かかるマッチングする領域からのＹ値を使用することにより、補間のために採用すべきＹ値を選択する。スーパーブロックの境界の両端で領域をマッチングさせるための技術は次のとおりである。
【００２３】
ｉ）１つのスーパーブロックのエッジに沿ったマスクの１または０を、隣接するスーパーブロックのエッジに沿ったマスクの０または１のサブセットにそれぞれ変換できる場合、すなわち１つのピクセルだけ空間的に転置できる場合、隣接するスーパーブロックの隣接するエッジに沿ったピクセルにスーパーブロックの任意のエッジに沿ったピクセルをマッチさせること。
ｉｉ）（それぞれのマスクによって決定される）スーパーブロックのＹ値、すなわち領域の強度が互いの所定のスレッショルド内とする。
【００２４】
最も近いピクセルに対し、エッジ位置を近似することによって生じたスーパーブロック内のマスク境界に沿ったギザギザのエッジの問題を改善するために、圧縮されたビデオデータを逆圧縮し、再生する際に、特殊なエリアシング防止技術を採用することが好ましい。かかる技術は次の工程を実行する。
【００２５】
ｉ）エリアシングを防止すべき対照的なマスク値の間の境界上の２つの隣接するピクセルを識別する工程と、
ｉｉ）これらピクセルロケーションにある境界が、より近い垂直線または水平線のいずれかに位置する傾向があるかどうかを決定する工程と、
ｉｉｉ）ピクセルの対の双方が境界の同じ側に存在するまで水平方向または垂直方向のみの境界をトラッキングする（ピクセルロケーションにより近い場合は、ピクセルロケーションから４つのピクセルのロケーションを置換する）ことにより、隣接するピクセルがある境界の水平部分または垂直部分の端部ロケーションを設定する工程と、
ｉｖ）工程ｉｉｉ）の間でマスク値が変化する場合、各ピクセルに沿った中間のポイントを識別するように対応する端部ロケーションの中間点を設定する工程と、
ｖ）２つの隣接する各ピクセルに対し、これら中間点および任意の中間ピクセルを連結する直線を採用し、サブピクセルの精度に対する境界の真の位置の最良の推定値を与える工程と、
ｖｉ）かかる直線と交差する各ピクセルに対し、ラインの各側にあるピクセルの領域に対して比例する値を確認する工程と、
ｖｉｉ）工程ｖｉ）で設定された比率の重みとして利用する境界の各側にある領域の値の重み付けされた平均値を採用する工程とを実行する。
【００２６】
以下に説明する実施例では、ピクセルのグループはスーパーブロックとして知られる８×８のピクセルのブロックから構成される。
【００２７】
各スーパーブロックはその成分ピクセルのＹＵＶ情報を含むものとして符号化される。
【００２８】
どのスーパーブロックに対してもＵおよびＶの各々の１つの値しか有しない実施例では、このＵおよびＶ情報はＹ情報よりも低い空間解像度で記憶される。
【００２９】
単一のスーパーブロック内の各ピクセルに対するＹ値を近似することもできる。多くの場合、スーパーブロック内には１つの対象またはその一部しか存在しない。これらケースでは、特に逆圧縮時の画像の再構成を助けるのに、隣接するスーパーブロックのコンテントを使用する際にスーパーブロックのピクセルのＹ値全体を近似するのに１つのＹ値だけで十分であることが多い。
【００３０】
更に別の多くのケースでは、１つのスーパーブロック内に２つの対象またはその一部しか存在しないことがある。これらケースでは、特に逆圧縮時における画像の再構成を助けるのに、隣接するスーパーブロックのコンテントを使用する時に、全体のスーパーブロックのＹ値を近似するのに一対のＹ値で十分であることが多い。２つのＹ値が存在するケースでは、元のスーパーブロックを再構成する際に各ピクセルに対し２つのＹ値のどれを使用すべきかを示すのにマスクが使用される。これらマスクはマスクの分布が極めて非対称となるにつれ、マスクのコンテントに応じてこれらマスクを種々の方法で圧縮できる。更にマスクはフレーム間でわずかな量だけ変化することが多いので、異なるマスクにおけるマスク間の差を効率的に圧縮することが可能である。
【００３１】
３つ以上のＹ値を有するマスクを使用できるようにすることにより、画質の改善が得られたが、これによってどのＹ値を使用するかを特定するのに必要な情報量が増える。
【００３２】
代表的なフレームシーケンスでは、前のフレームからスーパーブロックの一部しか変化せず、変化するスーパーブロックの多くは予測可能な態様で変化する。このことは、変化したスーパーブロックまたは予測できない態様で変化したスーパーブロックを記憶するだけで、データレートを大幅に低減できることを意味する。
【００３３】
特定のフレーム上でどのスーパーブロックから変化したかを特定する最良の方法は、ビデオコンテントの性質に応じて変わる。例えば数個のフレームが変化し、変化したフレーム内で多数が変化している場合、変化するスーパーブロックの間の空間ギャップは効率的な圧縮方法となる。この方法は、コーデックスの以前の実施例で使用されていたものである。他方、各フレームで数個のスーパーブロックしか変化せず、これらに空間的な相関性がある場合、スーパーブロックの変化の間の時間的なギャップを記憶することがより効率的である。データレートの低いアプリケーションに対してはこのことはより効率的であり、以下、時間的なギャップを圧縮するための方法を説明する。
【００３４】
画像を構成する各スーパーブロックは種々の成分、例えばその画像内の各領域の輝度、色差、形状から構成されている。スーパーブロックの異なる特徴は種々の方法で符号化でき、各成分はフレームごとに変化したり、変化しなかったりする。実際には１つのフレーム上の生じ得る変化の分布は極めて非対称であるので、利用可能な可変長符号ワードを使用することによって大きな圧縮が可能となる。
【００３５】
符号ワードの分布はビデオ部分の間で変化するので、使用する最適な符号ワードも変化する。ビデオの各部分に対し、新しく計算された符号ワードを使用することが有利であることが判っており、これら符号ワード自身は各ビデオ部分の開始時に符号化される。
【００３６】
以下、図面に示された例により本発明の実施例について説明する。
【００３７】
一般に３８４×２８８、３７６×２８０または３２０×２４０ピクセルのビデオフレーム（図１参照）を、サイズが少なくとも８×８ピクセルのピクセルブロック（いわゆるスーパーブロック）（図２参照）に分割する。
【００３８】
この実施例では、各ブロックは次の情報を含む。
２つのＹ値（一般に各値ごとに８ビット）
１つのＵ値（一般に８ビット）
１つのＶ値（一般に８ビット）
マスクの６４ビットはこのスーパーブロックを再構成する際にどのＹ値を使用するかを特定する。
【００３９】
ビデオヘッダー
各スーパーブロックは現在のフレーム上で各スーパーブロックのうちのどの要素を更新し、これら要素をどのように符号化するかを指定する符号ワードから成る。最も一般的な組み合わせ符号ワードは例外符号ワードとそれに続く非圧縮符号ワードとして記憶される、より稀な符号ワードでハフマン圧縮される。各ビデオのスタート時またはビデオの一部にヘッダーとしてハフマンテーブルが記憶される。
【００４０】
スーパーブロックヘッダーのハフマン符号化
各ビデオは同じコンテントを有し得るシーンまたは部分に分割される。これらビデオ部分の各々のスタート時にスーパーブロックのヘッダーが符号化される。これらスーパーブロックのヘッダーは一般に平均約５．５ビットである。
【００４１】
圧縮前のヘッダー内に含まれなければならない情報として次のものがある。
１ビット：　Ｙｍａｘが変わっているかどうか
１ビット：　Ｙｍｉｎが変わっているかどうか
２ビット：　ＵＶが変更されているかどうか
Ｖが変更されず、Ｕが±１のいずれかだけ変わっているかど
どうか
Ｕが変更されず、Ｖが±１のいずれかだけ変わっているかど
どうか
ＵＶが（−１、−１）、（１、−１）、（１、１）または
（−１、１）（１＋２ビット）だけ変わっているか、もし
くはＵＶを１＋１０ビットとしてスクラッチから再び送る
べきかどうか
【００４２】
２ビット：　履歴のために最も最新のフレームを使用するかどうか
履歴のために最後の１つのフレームを使用するかどうか
履歴のためにより古いフレームを使用するかどうか
１ビット：　小さい動きベクトルを使用するかどうか
７ビット：　どのマスクタイプを使用するか（下記のマスクに関する章を
参照）
２ビット：　隣接するスーパーブロック内の領域間の連結を再生時に推定
する方法。正しくない場合、この推定を訂正する；
デフォルト推定を使用するかどうか
最終フレームを使用するかどうか
連結が全体に再送信されているかどうか
【００４３】
このビデオ部分内のスーパーブロックヘッダーに対して使用される符号ワードの符号化で各ビデオ部分がスタートする。設定される５０％から最も遠い確率を有するビットが符号ワード内の高ビットとなり、５０％に最も近いビットが最終ビットとなるようにヘッダー内のビットをソートする。ｎ個のヘッダービットを使用する場合、ハフマンヘッダーワード内のビットの順序をｎ！の可能性のどれを使用するかを示す数字として送る
【００４４】
長さの順に符号ワードを送る。各符号ワード長さに対し、符号ワードを数字の順にソートする。各符号ワードに対し、現在の符号化されていないヘッダーワードと次の符号化されていないヘッダーワードとの間の差のビット数に対し、４ビットの数を送る。この差は１の高ビットでスタートするので、これは送らない。
【００４５】
ヘッダーワードサイズ（現在の一実施例では例えば１４ビット）を定めるように、残りのビットを送る。
各符号ワード長さに対してこれを繰り返す。
【００４６】
かなりの変化（カット状）および非カットがある場合、上記符号ワードの頻度分布はフレーム間で異なることになる。これらタイプのフレームに対するヘッダーが自らのハフマン符号ワードを有する場合、これによって圧縮後のデータレートはより小さくなる。
【００４７】
時間ギャップ
任意のフレームではすべてのスーパーブロックが変化するわけではない。特定のフレームでどのスーパーブロックが変化しているかを特定する最良の方法はビデオコンテントの性質によって決まる。例えば数個のフレームしか変化しておらず、変化するフレーム内で多数の変化がある場合、変化しているスーパーブロック間の空間ギャップは効率的な圧縮方法となる。他方、各フレームで数個のスーパーブロックしか変化しておらず、空間的な相関性がある場合、スーパーブロックの変化の間の時間的ギャップを記憶することはより効率的である。データレートが低いアプリケーションでは、このことはより効率的であり、ここでは時間的ギャップを圧縮するための方法を説明する。
【００４８】
時間的ギャップを使用することにより、時間に対して変化の多い小さい空間領域は小さいギャップに対して短い符号ワードを有し、静的な領域は隣接ブロックに対するギャップに影響しない。時間に対する実際のギャップの分布に応じて静的領域と動的領域との間でスーパーブロックをダイナミックに切り換えることができる。
【００４９】
この実施例（図３参照）では、ビデオ部分のスタート時の（１ビットの数で表示される一実施例における）符号ワードは全ビデオ部分に対してスーパーブロックが変更されていないかどうかを符号化する。この場合、この位置におけるスーパーブロックは再び参照されることはない。
【００５０】
更に２つのケースがある。ＵＰＤＡＴＩＮＧ（更新）の場合、符号ワード０、０１および００１によって０、１および２のギャップが表示される。より長いギャップは０００とそれに続くＳＴＡＴＩＣ（静的）ギャップによって次のように表示される。
【００５１】
ＳＴＡＴＩＣの場合、３０未満のギャップは５ビットとして符号化され、３０以上のギャップはｌｏｇ２（フィルム長さ）ビットとして符号化され、フィルムの終了時までのギャップは５ビットとして符号化される。
【００５２】
ＵＰＤＡＴＩＮＧの場合におけるギャップが８またはそれ以上である場合、状態はＳＴＡＴＩＣの場合に変化し、ＳＴＡＴＩＣケースにおけるギャップが５未満であれば、ＤＩＮＡＭＩＣケースに変化する。
【００５３】
データレートを最小にする、ケースを切り換えるための正しい値は、ビデオに応じて若干変化することが判っている。
【００５４】
Ｙ
各スーパーブロックに対する構造は成分ピクセルのＹ値をベースにするよう、１つのＹ値により全スーパーブロックをカバーする１つの領域であるか、またはピクセルのＹ成分の値をベースにするよう異なるＹ値を有する２つのサブ領域であるかのいずれかである。これらＹ値はフレームごとに変わり得る。再生時に使用するために正しいＹ値を計算するように、スーパーブロック内のＹ値のいずれかまたは双方をスーパーブロック内の各ピクセルに対する位置情報およびコンテントと組み合わせてもよい。
【００５５】
必要な場合に３つ以上のＹ値を使用できるようにすることによって画質は更に高くなる。
【００５６】
ＵＶ
各スーパーブロックは１つのＵ値と１つのＶ値を有する。異なるＹ値を有する２つの領域がある場合、画質を更に良好にするために２つの領域にＵおよびＶの異なる値を割り当てることができる。
【００５７】
Ｙマスク圧縮
各スーパーブロック内の各ピクセルに対して１つの入力を有するＹマスクを使って、再生時にピクセルのＹ値を計算するときにこのスーパーブロックからのどのベースＹ値を使用すべきかを指定する。均一でない場合のＹマスクはそのスーパーブロックを複数の領域に分割する。各スーパーブロックと共にこれら領域からのＹ、ＵおよびＶを記憶するか、またはスーパーブロック外のピクセルからの情報を使ってこれらを計算してもよい。
【００５８】
均一なスーパーブロック間の補間
均一なスーパーブロックが互いに隣接する場合、各分割するを表示するのに使用されるＹ値とＶ値との間の双線形補間法を使って、再生時に各ピクセルに対して使用するＹ、ＵおよびＶ値を探す（図７参照）。この場合、Ｓ１、Ｓ２、Ｓ３およびＳ４に対するＹ値の重み付けされた平均値からｘ１、ｘ２、ｘ３およびｘ４と表示されたスーパーブロックＳ１、Ｓ２、Ｓ４およびＳ５のコーナーを計算する。
【００５９】
隣接するスーパーブロックからのスーパーブロックマスクのマッチング
図８を参照されたい。隣接するスーパーブロック上の別のエッジのサブセットである任意のエッジをマッチングさせる。均一なスーパーブロックと隣接するブロックの双方があるタイプの８個のピクセルを有する場合にマッチングする。スーパーブロックの境界に交差する同じ構造の部分として対応するスーパーブロック領域を扱うように、この対応するスーパーブロックのＹ値はスレッショルド（一般にホワイトの１／１６）内に一致しなければならない。したがって、図８のケースではサブセットのテストはある領域に対する候補としてＹ１、Ｙ２ａ、Ｙ３ａおよびＹ４ａを与え、第２領域に対する候補としてＹ２ｂ、Ｙ３ｂおよびＹ４ｂを与える。いずれかの領域または双方の領域内のＹ値が十分に接近している場合、これらＹ値はスーパーブロック境界に交差した、より大きい同じ領域の一部として推定される。
【００６０】
非均一スーパーブロック間のＹ値の補間
スーパーブロックマスクが１つのスーパーブロック内の２つ以上の領域を示す場合に、ピクセルに最も近い４つのスーパーブロック内のマッチングされた領域のＹ値の間だけで補間を行わなければならない（図７参照）。
【００６１】
ＹｍｉｎおよびＹｍａｘの中心値の位置は、これらが位置するブロックの中心または各色のピクセルの中心に対応していなければならない。各色の中心はより良好に見えるが、重みが１／２５６の整数倍内になくなるにつれ、再生にはより長い時間がかかることがある。ＪＡＶＡにおける再生速度、より早いが、精度の低い中心位置が最良であると現在指示している。
【００６２】
履歴
スーパーブロックマスクが変化するごとに、これまで生じたフレームのリスト内に古いマスクが含まれる。マスクが変化するごとに新しいマスクとこれまで記憶された全ての履歴値との間の差を検討し、これらマスク間の最も簡潔な差異が符号化される。これが、このスーパーブロックマスクの起こり得る最も短い表示であれば、圧縮されたビットスクリーン内でこれを使用する。
【００６３】
履歴の実際の符号ワードの長さおよび履歴に必要とされるフィックスのサイズを使用して新しいスーパーブロックの最も短い表示を探す。
【００６４】
履歴内で完全に一致することが見つかる機会が増すにつれ、スーパーブロックを符号化できるモデルをより制約することにより、可能性のある符号ワードの数を低減する。
【００６５】
一実施例では、履歴は最新の１２８個のフレームを含む。
【００６６】
履歴が全てのスーパーブロックのマスクを含む訳ではないが、より最新のフレームを含む可能性がより高くなるように履歴が配置されている場合、履歴は最良に働く。
【００６７】
ロケーション
履歴内の隣接するスーパーブロックを特定するのに必要な追加情報は、時間内のある点におけるマスクと隣接するマスクとの間の差を符号化することが最良であることを意味する。
【００６８】
動き予測
各ブロックの小さい動きに対する情報を、例えば任意の方向の１つのピクセルの動きを有する所定の履歴として符号化できる。これによりマスク自身およびフレーム間のマスクの差の双方を圧縮することが困難な時でも、フレーム間の短い距離だけ移動するマスクを効率的に符号化できる。
【００６９】
一実施例では、マスクの動きを使用する場合、水平方向または垂直方向、もしくは双方を組み合わせた方向のいずれかの単一ピクセルの動きを各スーパーブロックのためのヘッダー内で符号化する。
【００７０】
マスクに対する変化のための符号化
マスク内のデータを複数のカテゴリーに分割する。各ケースでは最も低いデータレートによる各スーパーブロックの符号化を使用する。
【００７１】
図４、５および６にはマスクの異なるタイプの一部が示されている。図４ではコラムＡは可能なスーパーブロックマスクを示し、コラムＢは可能な更新されたマスクを示し、コラムＣはコラムＡとＢとの間でスーパーブロックマスク内のどのピクセルが変化したか、およびこれらがどのように変化したかを示す。
コラムＤ−ＧにはコラムＢにおける変化に対するキーが示されている。コラムＤは変化していないスーパーブロックに対する表示を示し、コラムＥ内の黒色の正方形はマスク内のセットされたピクセルがどのように表示されるかを示し、コラムＦはセットされた状態からセットされない状態に変化したピクセルがどのように表示されるかを示し、コラムＧはセットされない状態からセットされた状態に変化したピクセルがどのように表示されるかを示す。
【００７２】
下記のような記述を示す。
Ｕｎｃｈａｎｇｅｄ
スーパーブロックマスクは前のフレームから変更されない。この場合、ヘッダーはこの情報を含み、追加情報は与えられない。
【００７３】
Ｕｎｉｆｏｒｍ　０
マスクは全体が０である。
【００７４】
Ｕｎｉｆｏｒｍ　１
マスクは全体が１である。
【００７５】
１　ｄｉｆｆ　ａｌｏｎｇ　ｅｄｇｅ
スーパーブロックマスクは前のフレーム上の対応するスーパーブロックから変化した正確に１つのピクセルを有する。この変化はエッジで生じる。すなわち１つのピクセルが最も近い隣接するピクセルのうちの少なくとも１つに対し、異なるマスクカラーを前のフレームに有する。
【００７６】
１　ｄｉｆｆ　ｎｏｔ　ａｌｏｎｇ　ｅｄｇｅ
スーパーブロックマスクは前のフレーム上の対応するスーパーブロックから変化した正確に１つのピクセルを有する。この変化はエッジで生じる。すなわち前のフレーム上で最も近い隣接するピクセルの少なくとも１つに対して、マスクカラーが異なるピクセルで生じる。
【００７７】
２　ｄｉｆｆ　ｓｉｄｅｄ　ｅｄｇｅ
スーパーブロックマスクは前のフレーム上の対応するスーパーブロックから変化した、正確に２つのピクセルを有する。あるエッジの同じ側でこれら双方の変化が生じる。すなわちいずれのケースにおいてもマスク内の（例えば）０が１に変化するか、またはマスク内の１が０に変化する。
【００７８】
２　ｄｉｆｆ　ｎｏｎ−ｓｉｄｅｄ　ｅｄｇｅ
スーパーブロックマスクは前のフレーム上の対応するスーパーブロックから変化した、正確に２つのピクセルを有する。例えば１つのピクセルはマスク内の０であり、１に変化し、他方のピクセルはマスク内の１であり、０に変化する。
【００７９】
２　ｄｉｆｆ　ｎｏｔ　ｏｎ　ｅｄｇｅ
スーパーブロックマスクは前のフレーム上の対応するスーパーブロック上から変化した２つのピクセルを有する。これらピクセルのいずれもエッジ上にはない。
【００８０】
３、４、．．．．ｄｉｆｆ　ｓｉｄｅｄ　ｅｄｇｅ
上記２−ｄｉｆｆ　ｓｉｄｅｄ　ｅｄｇｅに類似するが、変化したピクセルの対応する数を有する。
【００８１】
３、４、．．．．ｎｏｎ−ｓｉｄｅｄ　ｅｄｇｅ
上記２　ｄｉｆｆ　ｎｏｎ　ｓｉｄｅｄ　ｅｄｇｅに類似するが、変化したピクセルの対応する数を有する。
【００８２】
ｂｉｇ　ｅｄｇｅ
スーパーブロックマスクと前のフレームからの対応するスーパーブロックマスクとの間の全ての変化はエッジに沿って存在する。どのピクセルが変化したかを特定するのに下記のｎ　ｃｈｏｏｓｅ　ｒ符号化方式を使用する。
【００８３】
ｂｉｇ　ｄｉｆｆ　ｓｉｄｅｄ
マスクに対する全ての変化は第１マスクカラーから第２マスクカラーへの変化であり、変化を記述するのに必要な可能な符号ワードの数を低減している。
【００８４】
ｆｒａｃｔａｌ
ほとんどのビットがセットされていないと仮定する。どのビットがセットされたかに関する情報を送る。均一であれば「０」を使用し、そうでない場合は「１」を使用し、８×８ブロックを４つの４×４ブロックに分割し、これを繰り返す。これら４つのピクセルの各々に対し、どのマスクカラーを使用するかを特定するのに、４ビットを使用する場合、２×２で停止する。
【００８５】
ｎ×ｎ　ｂｏｘ　（１＜ｎ＜８）
８×８スーパーブロックの２×２サブセットで全ての変化したピクセルが生じる。スーパーブロック内の各ボックスの位置、変化したピクセルの数および変化したピクセルの組み合わせを送る。
【００８６】
ｓｔｒａｉｇｈｔ　ｅｄｇｅ
このスーパーブロックは直線エッジで近似できる（図５ａ参照）。この近似は５ビット角度（ａ）および中心からのエッジの５ビットの最も近い距離（ｄ）によってそのときに表示できる。現在の表示では５ビットの値の双方はそれらの可能な範囲にわたって均一に分散される。再生時にこのエッジはスーパーブロックマスクに戻るように変換される。
【００８７】
ｉｎｔｅｒｐｏｌａｔｅｄ　ｓｔｒａｉｇｈｔ　ｅｄｇｅ
時間的に分離された第１マスクと最終マスクとの間で補間をすることにより、スーパーブロックの全シーケンスを近似できる（図５ｂ、５ｃ、５ｄ参照）。第１フレームおよび最終フレームの双方がエッジであるケースでは、中間フレームを示すようエッジを画定するパラメータをこれらフレームの間で補間する。図５ｂおよび５ｄは補間の終了ポイントを示し、図５ｃは時間内の中間ポイントを示す。
【００８８】
現在の実施例は６４個までのフレームの補間を可能にし、次のような簡単な符号化を使用した場合でも２６ビットの符号ワード長さを与える。すなわち中心からの最小距離（５ビットとして符号化される）およびある角度（５ビットとして符号化される）を有するエッジにより（可能な場合には）ブロックを表示し、動きの開始ポイントおよび終了ポイントにおけるこれらパラメータに作用し、補間長さ（例えば６４個までのフレーム）を記憶し、これらフレーム間でパラメータを線形に補間し、時間内の任意のポイントでマスクが類似しているはずのものに作用する。
【００８９】
シーケンスに沿った任意のポイントは若干の誤りは許容できるが、全ての誤りはエッジ自身に沿って生じなければならない。隣接するスーパーブロックとのより良好な一貫性を可能にするために、符号化されたスーパーブロックのエッジにおける予測されたマスクピクセルにおける誤りを、スーパーブロックのエッジにない誤りよりもより大きいものとして処理する。全般に、どのフレームでも許容できる誤り率を有する最長時間にわたる補間を使用する。
【００９０】
ｐｒｅｄｉｃｔａｂｌｅ
予測可能な変化が生じたことを示すのに特殊な０ビットの符号ワードを使用する。次に、再生プログラムによってこれをどのように解釈するかに関する最も（自明な）選択を行う（図６参照）。
【００９１】
隣接するスーパーブロックがあるエッジを通過する場合、これはスーパーブロックがその隣接するブロックに連結するポイントにおいて、連続かつ平滑となるように選択されるベジエール（Ｂｅｚｉｅｒ）曲線となる。このベジエール曲線が交差する予測可能なスーパーブロックの２つの側面の各々における正しい勾配および交点を探すために、既知の隣接するスーパーブロックエッジに対して最良に適合する直線を使用する。ベジエール曲線内の勾配ベクトルの長さとして、このラインの良好な適合長さを使用する。
【００９２】
これについては図６に示されており、この図６では（予測可能なタイプ自身はスーパーブロックのヘッダー内で符号化されるので、あるデータをとるが）中心スーパーブロックＳは０ビット符号ワードとして符号化されている。エッジがＳ２およびＳ３を通って連続する場合にエッジを予測するのに、Ｓ１およびＳ４からのエッジを使用する。Ｓにおける２つの領域ＡおよびＢの強度は隣接するスーパーブロック内の接触領域から予測される。
【００９３】
その他のケースも同じように容易に予測できる。他と異なる１つのピクセルしかない場合、予測可能な選択は均一なスーパーブロックを有することである。
【００９４】
エッジが数個の別のエッジによって囲まれているケースでは、３つまたはそれ以上のＹ表示を使用できる。
【００９５】
ｒａｗ
既知のパターンに適合しないマスクもある。この場合、これらマスクは上記に類似するが、各スケールにて各マスクビットがセットされているか、またはリセットされているかについての情報を有するフラクタル圧縮を使って圧縮されたビットマスクとして表示される。
【００９６】
ｃｏｄｉｎｇ　ｎ　ｃｈｏｏｓｅ　ｍ
サイズｎの一組からの可能なｍ個のピクセルサブセットのうちの１つを効率的に符号化しなければならないことが頻繁にある。これらを選択するための内部構造はほとんどないか、または全くなく、すべての選択案はほぼ同じようである。ｎ　ｃｈｏｏｓｅ　ｍが一般に２の級数でないこれらケースでは符号化時に不明瞭さを生じることなく、できるだけ多数の、より短い符号ワードを使用するように、符号化の際に長さＩＮＴ（ｌｏｇ２（ｎ　ｃｈｏｏｓｅ　ｍ））および１＋ＩＮＴ（ｌｏｇ２（ｎ　ｃｈｏｏｓｅ　ｍ））の長さの符号ワードをとる。
【００９７】
この方法を所定場所で使用する場合、ｎを小さくする任意の技術はｍ個の変化したピクセルを符号化するのに必要な平均ビット数を少なくする。従って、起こり得るピクセルの変化の数を制限する新しいタイプのマスクを採用することができ、その結果、選択をする組み合わせが少なくなり、よってデータレートが低くなる。
【００９８】
ａｎｔｉ−ａｌｉａｓｉｎｇ
図９参照
Ｙ＿ｍｉｎとＹ＿ｍａｘとの間のエッジは現在シャープであり、個々のピクセルを示している。これらエッジに沿ったエリアシング防止が有効なサブピクセル精度を与えることができるように十分な情報がある。
【００９９】
既に説明したように、各ｓｂにおいて２つのＹ値しか使用しない時には、異なる領域の間のエッジは全くギザギザ状態のように見えることがある。エッジが存在する場合に、エッジに沿ったコンテクストを使用することによって加工できる場合、これらエッジのエリアシングを防止し、エッジをより元の状態に見えるようにすることができる。
【０１００】
どのエッジピクセルに対しても、ピクセルが存在する最長水平エッジまたは垂直エッジが水平であるかまたは垂直であるかを見つける。次に、この水平部分または垂直部分の両端の中間ポイントを探すか、または利用できる処理時間に応じてこの長さがスレッショルド（このスレッショルドは現在４つのピクセルにセットされている）を越える場合、より少ない数のピクセルを探す。次に、エッジの両端の中間点を連結するラインの領域の日のＹｍｉｎおよびＹｍａｘ値、ならびに局部的ＹｍｉｎおよびＹｍａｘ値を有するこのエッジピクセルに対するグレイスケールを使用する。
【０１０１】
図９ではほとんど水平のエッジが示されており、値Ｃ１−Ｃ８のようにエリアシングを防止することにより値Ａ１−Ａ８は変更されない。値Ｂ１−Ｂ８は１／１６＊Ａ＋１５／１６＊Ｂから１５／１６＊Ａ＋１／１６＊Ｂまで（エッジがｗ１とｗ２との間を走行した場合に得られたはずの値）線形に変化し、各ピクセルはエッジの各側における強度の重み付けされた平均値によりシェーディングされる。
【０１０２】
図９において、エッジ部分に沿った最長方向の端部ポイントであるポイントｘ１およびｘ２を連結することにより、このエッジを近似し、１／４＊Ｄ１＋３／４＊Ｅ２および３／４＊Ｄ１＋１／４＊Ｅ１のＥ１およびＤ２に対する強度を与える。
【０１０３】
薄いスティック、すなわちワイドなピクセルは無変更のままにしなければならない。
【０１０４】
エッジが凸状、すなわち１つの円の内側エッジである場合、短いエッジの中間を外側の長いエッジの中間に連結する２本のラインを想像し、これらラインの領域を使って円の外側のエリアシングを防止する。このタッチのエッジは、このエッジへの突起を有していないのでエリアシングが生じたままにすべきである。
【０１０５】
側面の２つの正方形のエッジを無変更のままにする。
【０１０６】
図９の場合、ｘ１とｘ２との間のエッジをインフェアし、Ｄ２およびＥ２、ならびにＥ１およびＤ１の元のＹ値の重み付けされた平均値となるように、強度Ｄ２およびＥ１を調節する。
【図面の簡単な説明】
【図１】
８×８のピクセルのスーパーブロックに分割された３７６×２８０のピクセルの代表的な画像を示す。
【図２】
６４個のピクセルに分割された８×８のピクセルの代表的なスーパーブロックを示す。
【図３】
変化するスーパーブロックの間のギャップをどのように符号化するかを示すフローチャートである。
【図４】
スーパーブロックのマスク圧縮タイプの例を示す。
【図５】
エッジおよび補間されたエッジのスーパーブロックのタイプをどのように圧縮するかを示す。
【図６】
予測可能なスーパーブロックタイプをどのように圧縮するかを示す。
【図７】
スーパーブロック内のピクセルをどのように補間するかを示す。
【図８】
隣接するスーパーブロック間の領域をどのようにマッチングするかを示す。
【図９】
再生時のエリアシング防止をどのように実現するかを示す。
【図３】
2004503153.tif 000003
【図４】
2004503153.tif 000004
【図５】
2004503153.tif 000005
【国際公開パンフレット】
2004503153.tif 000006
2004503153.tif 000007
2004503153.tif 000008
2004503153.tif 000009
2004503153.tif 000010
2004503153.tif 000011
2004503153.tif 000012
2004503153.tif 000013
2004503153.tif 000014
2004503153.tif 000015
2004503153.tif 000016
2004503153.tif 000017
2004503153.tif 000018
2004503153.tif 000019
2004503153.tif 000020
2004503153.tif 000021
2004503153.tif 000022
2004503153.tif 000023
2004503153.tif 000024
2004503153.tif 000025
2004503153.tif 000026
2004503153.tif 000027
2004503153.tif 000028
2004503153.tif 000029
2004503153.tif 000030
2004503153.tif 000031
2004503153.tif 000032
2004503153.tif 000033
2004503153.tif 000034
2004503153.tif 000035
2004503153.tif 000036
2004503153.tif 000037
2004503153.tif 000038
2004503153.tif 000039
2004503153.tif 000040
2004503153.tif 000041
2004503153.tif 000042
2004503153.tif 000043
2004503153.tif 000044
2004503153.tif 000045
2004503153.tif 000046
2004503153.tif 000047
2004503153.tif 000048
2004503153.tif 000049
2004503153.tif 000050
2004503153.tif 000051
【国際調査報告】
2004503153.tif 000052
2004503153.tif 000053
2004503153.tif 000054