(57)【要約】  クリッピングは、エンコーダまたはデコーダにおける様々な動作の間に適用することができる。クリッピングの下限および上限は、予測因子に対して差動符号化することができる。例えば、下限および上限のそれぞれに対して、０および２ｂｉｔｄｅｐｔｈなどの固定予測因子を使用することができる。また、適応予測因子を使用することもできる。適応予測因子は、以前に符号化または復号されたピクチャにおけるクリッピング限度から導き出すことも、またはビットストリームで明示的に伝送することもできる。クリッピング限度を符号化するかどうかは、クリッピング限度に近い値を有する画素の数に基づいて決定することができる。それに加えて、クリッピング動作を活用することで、ブロックに対する歪みを必ずしも増加せずに、予測残差をスムーズにすることができる。
2019521571.tif 000002
【特許請求の範囲】
【請求項１】
ピクチャを符号化してビットストリームに埋め込む方法であって、
前記ピクチャのブロックに対する映像データの値を調整するために下限にアクセスすること（４１０）と、
前記アクセスした下限を量子化すること（４３０）と、
前記量子化のためのパラメータを符号化して前記ビットストリームに埋め込むことであって、前記量子化のための前記パラメータが、前記ブロックに対する前記映像データを表すために使用されるビット深度に基づく、符号化して前記ビットストリームに埋め込むことと、
前記量子化済みの下限を符号化して前記ビットストリームに埋め込むこと（４５０）と、
再構築された下限を形成するために、前記量子化済みの下限を非量子化すること（４５５）と、
前記再構築された下限より大きくなるように前記ブロックに対する映像データの前記値を調整すること（４５５）と、
前記ピクチャの前記ブロックを符号化して前記ビットストリームに埋め込むことと
を含む、方法。
【請求項２】
前記ピクチャの前記ブロックに対する映像データの前記値を調整するために上限および前記上限の予測因子にアクセスすること（４１０）と、
前記アクセスした上限と前記予測因子との差を量子化すること（４３０）と、
前記量子化済みの差を符号化して前記ビットストリームに埋め込むこと（４５０）と、
復号済みの差を形成するために、前記量子化済みの差を非量子化すること（４５５）と、
再構築された上限より小さくなるように前記ブロックに対する映像データの前記値を調整すること（４５５）であって、前記再構築された上限が、前記復号済みの差および前記予測因子に基づいて形成される、調整すること（４５５）と
をさらに含む、請求項１に記載の方法。
【請求項３】
前記再構築された下限が、前記アクセスした下限より小さい、請求項１または２に記載の方法。
【請求項４】
前記再構築された上限が、前記アクセスした上限より大きい、請求項２に記載の方法。
【請求項５】
前記差が、（bitdepth-1）ビットによって表され、bitdepthが、前記ブロックに対する前記映像データを表すために使用されるビット深度である、請求項２〜４のいずれか一項に記載の方法。
【請求項６】
前記ブロックの前記アクセスした下限に近い値を有する画素の数を決定すること（３１０、３１５）と、
前記決定された画素の数に基づいて、前記量子化済みの下限を符号化して前記ビットストリームに埋め込むかどうかを決定すること（３３０）と
をさらに含む、請求項１〜５のいずれか一項に記載の方法。
【請求項７】
ビットストリームからピクチャを復号する方法であって、
前記ビットストリームから量子化済みの下限にアクセスすること（４７０）と、
再構築された下限を形成するために、前記量子化済みの下限を非量子化すること（４８０）であって、前記非量子化のためのパラメータが、前記ビットストリームで信号伝達される、非量子化すること（４８０）と、
前記ビットストリームから前記ピクチャの前記ブロックを復号することと、
前記再構築された下限より大きくなるように前記ブロックに対する映像データの値を調整すること（４８５）と
を含む、方法。
【請求項８】
前記ピクチャの前記ブロックに対する映像データの前記値を調整するために上限の予測因子にアクセスすること（４６０）と、
復号済みの差を形成するために、前記ビットストリームから量子化済みの差を復号すること（４７０）と、
再構築された上限より小さくなるように前記ブロックに対する映像データの前記値を調整すること（４８５）であって、前記再構築された上限が、前記復号済みの差および前記予測因子に基づいて形成される、調整すること（４８５）と
をさらに含む、請求項７に記載の方法。
【請求項９】
前記予測因子が、２ｂｉｔｄｅｐｔｈであり、bitdepthが、前記ブロックに対する前記映像データを表すために使用されるビット深度である、請求項２〜６および８のいずれか一項に記載の方法。
【請求項１０】
前記予測因子が、以前に符号化または復号されたピクチャにおける上限に基づいて決定される、請求項２〜６および８のいずれか一項に記載の方法。
【請求項１１】
前記予測因子が、前記ピクチャの前記ブロックのコンテンツに適応している、請求項２〜６および８のいずれか一項に記載の方法。
【請求項１２】
ピクチャを符号化してビットストリームに埋め込む装置（１０００）であって、少なくとも１つのメモリおよび１つまたは複数のプロセッサを含む、装置（１０００）であり、前記１つまたは複数のプロセッサが、
前記ピクチャのブロックに対する映像データの値を調整するために下限にアクセスすることと、
前記アクセスした下限を量子化することと、
前記量子化のためのパラメータを符号化して前記ビットストリームに埋め込むことであって、前記量子化のための前記パラメータが、前記ブロックに対する前記映像データを表すために使用されるビット深度に基づく、符号化して前記ビットストリームに埋め込むことと、
前記量子化済みの下限を符号化して前記ビットストリームに埋め込むことと、
再構築された下限を形成するために、前記量子化済みの下限を非量子化することと、
前記再構築された下限より大きくなるように前記ブロックに対する映像データの前記値を調整することと、
前記ピクチャの前記ブロックを符号化して前記ビットストリームに埋め込むことと
を行うように構成される、装置（１０００）。
【請求項１３】
前記１つまたは複数のプロセッサが、
前記ピクチャの前記ブロックに対する映像データの前記値を調整するために上限および前記上限の予測因子にアクセスすることと、
前記アクセスした上限と前記予測因子との差を量子化することと、
前記量子化済みの差を符号化して前記ビットストリームに埋め込むことと、
復号済みの差を形成するために、前記量子化済みの差を非量子化することと、
再構築された上限より小さくなるように前記ブロックに対する映像データの前記値を調整することであって、前記再構築された上限が、前記復号済みの差および前記予測因子に基づいて形成される、調整することと
を行うようにさらに構成される、請求項１２に記載の装置。
【請求項１４】
前記再構築された下限が、前記アクセスした下限より小さい、請求項１２または１３に記載の装置。
【請求項１５】
前記再構築された上限が、前記アクセスした上限より大きい、請求項１３に記載の装置。
【請求項１６】
前記差が、（bitdepth-1）ビットによって表され、bitdepthが、前記ブロックに対する前記映像データを表すために使用されるビット深度である、請求項１３〜１５のいずれか一項に記載の装置。
【請求項１７】
前記１つまたは複数のプロセッサが、
前記ブロックの前記アクセスした下限に近い値を有する画素の数を決定することと、
前記決定された画素の数に基づいて、前記量子化済みの下限を符号化して前記ビットストリームに埋め込むかどうかを決定することと
を行うようにさらに構成される、請求項１２〜１６のいずれか一項に記載の装置。
【請求項１８】
ビットストリームからピクチャを復号する装置（１０００）であって、少なくとも１つのメモリおよび１つまたは複数のプロセッサを含む、装置（１０００）であり、前記１つまたは複数のプロセッサが、
前記ビットストリームから量子化済みの下限にアクセスすることと、
再構築された下限を形成するために、前記量子化済みの下限を非量子化することであって、前記非量子化のためのパラメータが、前記ビットストリームで信号伝達される、非量子化することと、
前記ビットストリームから前記ピクチャの前記ブロックを復号することと、
前記再構築された下限より大きくなるように前記ブロックに対する映像データの値を調整することと
を行うように構成される、装置（１０００）。
【請求項１９】
前記１つまたは複数のプロセッサが、
前記ピクチャの前記ブロックに対する映像データの前記値を調整するために上限の予測因子にアクセスすることと、
復号済みの差を形成するために、前記ビットストリームから量子化済みの差を復号することと、
再構築された上限より小さくなるように前記ブロックに対する映像データの前記値を調整することであって、前記再構築された上限が、前記復号済みの差および前記予測因子に基づいて形成される、調整することと
を行うようにさらに構成される、請求項１８に記載の装置。
【請求項２０】
前記予測因子が、２ｂｉｔｄｅｐｔｈであり、bitdepthが、前記ブロックに対する前記映像データを表すために使用されるビット深度である、請求項１３〜１７および１９のいずれか一項に記載の装置。
【請求項２１】
前記予測因子が、以前に符号化または復号されたピクチャにおける上限に基づいて決定される、請求項１３〜１７および１９のいずれか一項に記載の装置。
【請求項２２】
前記予測因子が、前記ピクチャの前記ブロックのコンテンツに適応している、請求項１３〜１７および１９のいずれか一項に記載の装置。
【請求項２３】
ピクチャを符号化する方法であって、
符号化予定のオリジナルブロック、前記オリジナルブロックに対応する予測ブロックおよび残差ブロックにアクセスすることと、
前記オリジナルブロックまたは前記予測ブロックの第１の要素がクリッピングの上限に近いと決定すること（９３５）と、
前記オリジナルブロックまたは前記予測ブロックの前記第１の要素に対応する前記残差ブロックの第１の要素を前記残差ブロックの前記第１の要素より大きい第１の値と置き換えること（９４５）と、
復号済みの残差ブロックを形成するために、前記置き換えた要素で前記残差ブロックを符号化および復号すること（９６０）と、
前記予測ブロックおよび前記復号済みの残差ブロックに基づいて再構築されたブロックを形成すること（８５０）と、
前記再構築されたブロックの第１の要素がクリッピングの前記上限を超える場合は、前記残差ブロックの前記第１の要素に対応する前記再構築されたブロックの前記第１の要素をクリッピングの前記上限と置き換えること（８６０）と
を含む、方法。
【請求項２４】
前記オリジナルブロックまたは前記予測ブロックの第２の要素がクリッピングの下限に近いと決定すること（９３５）と、
前記オリジナルブロックまたは前記予測ブロックの前記第２の要素に対応する前記残差ブロックの第２の要素を前記残差ブロックの前記第２の要素より小さい第２の値と置き換えること（９４５）と、
前記再構築されたブロックの第２の要素がクリッピングの前記下限より小さい場合は、前記残差ブロックの前記第２の要素に対応する前記再構築されたブロックの前記第２の要素をクリッピングの前記下限と置き換えること（８６０）と
をさらに含む、請求項２３に記載の方法。
【請求項２５】
前記第１の値が、前記ブロックのローパスフィルタリングされた値である、請求項２３または２４に記載の方法。
【請求項２６】
前記オリジナルブロックまたは前記予測ブロックの前記第１の要素がクリッピングの上限に近いと決定することが、閾値に基づく、請求項２３〜２５のいずれか一項に記載の方法。
【請求項２７】
前記閾値が０である、請求項２６に記載の方法。
【請求項２８】
前記閾値が、前記残差ブロックに対応する量子化パラメータと共に増加する、請求項２６に記載の方法。
【請求項２９】
ピクチャを符号化する装置（１０００）であって、少なくとも１つのメモリおよび１つまたは複数のプロセッサを含む、装置（１０００）であり、前記１つまたは複数のプロセッサが、
符号化予定のオリジナルブロック、前記オリジナルブロックに対応する予測ブロックおよび残差ブロックにアクセスすることと、
前記オリジナルブロックまたは前記予測ブロックの第１の要素がクリッピングの上限に近いと決定することと、
前記オリジナルブロックまたは前記予測ブロックの前記第１の要素に対応する前記残差ブロックの第１の要素を前記残差ブロックの前記第１の要素より大きい第１の値と置き換えることと、
復号済みの残差ブロックを形成するために、前記置き換えた要素で前記残差ブロックを符号化および復号することと、
前記予測ブロックおよび前記復号済みの残差ブロックに基づいて再構築されたブロックを形成することと、
前記再構築されたブロックの第１の要素がクリッピングの前記上限を超える場合は、前記残差ブロックの前記第１の要素に対応する前記再構築されたブロックの前記第１の要素をクリッピングの前記上限と置き換えることと
を行うように構成される、装置（１０００）。
【請求項３０】
前記１つまたは複数のプロセッサが、
前記オリジナルブロックまたは前記予測ブロックの第２の要素がクリッピングの下限に近いと決定することと、
前記オリジナルブロックまたは前記予測ブロックの前記第２の要素に対応する前記残差ブロックの第２の要素を前記残差ブロックの前記第２の要素より小さい第２の値と置き換えることと、
前記再構築されたブロックの第２の要素がクリッピングの前記下限より小さい場合は、前記残差ブロックの前記第２の要素に対応する前記再構築されたブロックの前記第２の要素をクリッピングの前記下限と置き換えることと
を行うようにさらに構成される、請求項２６に記載の装置。
【請求項３１】
前記第１の値が、前記ブロックのローパスフィルタリングされた値である、請求項２９または３０に記載の装置。
【請求項３２】
前記１つまたは複数のプロセッサが、前記オリジナルブロックまたは前記予測ブロックの前記第１の要素がクリッピングの上限に近いと決定するように構成されることが、閾値に基づく、請求項２９〜３１のいずれか一項に記載の装置。
【請求項３３】
前記閾値が０である、請求項３２に記載の装置。
【請求項３４】
前記閾値が、前記残差ブロックに対応する量子化パラメータと共に増加する、請求項３２に記載の装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本原理は、概して、映像符号化および復号の方法および装置に関し、より具体的には、適応クリッピングを用いた映像符号化および復号の方法および装置に関する。
【背景技術】
【０００２】
高圧縮効率を達成するため、画像および映像コード化スキームは、通常、映像コンテンツにおける空間的および時間的冗長性を活用するために予測および変換を採用する。一般に、イントラまたはインター予測は、イントラまたはインターフレーム相互関係を利用するために使用され、次いで、オリジナル画像と予測画像との差（予測誤差または予測残差として示される場合が多い）は、変換、量子化およびエントロピーコード化が行われる。映像を再構築するため、圧縮データは、予測、変換、量子化およびエントロピーコード化に対応する逆のプロセスによって復号される。
【発明の概要】
【０００３】
映像圧縮システムにおける様々な動作の間、映像データは、映像データを表すために使用されるデータ範囲を超える場合がある。起こり得るデータ反転を避けるため、例えば、より低い８ビットのみが保持される場合は、８ビット表現の範囲を超える高い値は、低い値として不注意に扱われ、映像データは、通常、正しい範囲にクリップされる。
【０００４】
一般態様によれば、ピクチャを符号化してビットストリームに埋め込む方法であって、ピクチャのブロックに対するクリッピングの上限および上限の第１の予測因子にアクセスすることと、上限と第１の予測因子との第１の差を量子化することと、量子化済みの第１の差を符号化してビットストリームに埋め込むことと、復号済みの第１の差を形成するために、量子化済みの第１の差を非量子化することと、再構築された上限より小さくなるようにブロックに対する映像データの値を調整することであって、再構築された上限が、復号済みの第１の差および第１の予測因子に基づいて形成される、調整することと、ピクチャのブロックを符号化してビットストリームに埋め込むこととを含む、方法が提示される。
【０００５】
符号化方法は、ピクチャのブロックに対するクリッピングの下限および下限の第２の予測因子にアクセスすることと、上限と第２の予測因子との第２の差を量子化することと、量子化済みの第２の差を符号化してビットストリームに埋め込むことと、復号済みの第２の差を形成するために、量子化済みの第２の差を非量子化することと、再構築された下限より大きくなるようにブロックに対する映像データの値を調整することであって、再構築された下限が、復号済みの第２の差および第２の予測因子に基づいて形成される、調整することとをさらに含み得る。
【０００６】
歪みを低減するため、量子化および非量子化は、再構築された下限がクリッピングの下限より小さくなり、再構築された上限がクリッピングの上限より大きくなるように設計することができる。
【０００７】
第１の差は、（bitdepth-1）ビットによって表すことができ、bitdepthは、ブロックに対する映像データを表すために使用されるビット深度である。
【０００８】
適応クリッピングを適用するか否かを判断するため、方法は、ブロックの上限および下限の少なくとも１つに近い値を有する画素の数を決定することと、決定された画素の数に基づいて、上限を符号化するために第１の予測因子を使用するかどうかを決定することとをさらに含み得る。
【０００９】
別の一般態様によれば、ビットストリームからピクチャを復号する方法であって、ピクチャのブロックに対するクリッピングの上限の第１の予測因子にアクセスすることと、復号済みの第１の差を形成するために、ビットストリームから量子化済みの第１の差を復号することと、再構築された上限より小さくなるようにブロックに対する映像データの値を調整することであって、再構築された上限が、復号済みの第１の差および第１の予測因子に基づいて形成される、調整することと、ビットストリームからピクチャのブロックを復号することとを含む、方法が提示される。
【００１０】
復号方法は、ピクチャのブロックに対するクリッピングの下限の第２の予測因子にアクセスすることと、復号済みの第２の差を形成するために、ビットストリームから量子化済みの第２の差を復号することと、再構築された下限より大きくなるようにブロックに対する映像データの値を調整することであって、再構築された下限が、復号済みの第２の差および第２の予測因子に基づいて形成される、調整することとをさらに含み得る。
【００１１】
符号化または復号方法では、第１の予測因子が２ｂｉｔｄｅｐｔｈであることも、以前に符号化または復号されたピクチャにおけるクリッピングの上限の予測因子に基づいて第１の予測因子を決定することも可能である。第１の予測因子は、ピクチャのブロックのコンテンツに適応させることができる。
【００１２】
また、本実施形態は、これらのステップを実行する装置も提供する。
【００１３】
また、本実施形態は、上記で説明される方法に従ってピクチャを符号化してビットストリームに埋め込む命令またはビットストリームからピクチャを復号する命令が格納されたコンピュータ可読記憶媒体も提供する。
【００１４】
また、本実施形態は、上記で説明される方法に従って生成されたビットストリームが格納されたコンピュータ可読記憶媒体も提供する。
【００１５】
別の一般態様によれば、映像信号は、ピクチャのブロックに対するクリッピングの上限と上限の第１の予測因子との第１の差を量子化することによって形成された量子化済みの第１の差の符号化済みのセクションを含むようにフォーマットされ、量子化済みの第１の差は、復号済みの第１の差を形成するために非量子化され、ブロックに対する映像データの値は、再構築された上限より小さくなるように調整され、再構築された上限は、復号済みの第１の差および第１の予測因子に基づいて形成される。
【００１６】
別の一般態様によれば、ピクチャを符号化する方法であって、符号化予定のオリジナルブロック、オリジナルブロックに対応する予測ブロックおよび残差ブロックにアクセスすることと、オリジナルブロックまたは予測ブロックの第１の要素がクリッピングの上限に近いと決定することと、オリジナルブロックまたは予測ブロックの第１の要素に対応する残差ブロックの第１の要素を残差ブロックの第１の要素より大きい第１の値と置き換えることと、復号済みの残差ブロックを形成するために、置き換えた要素で残差ブロックを符号化および復号することと、予測ブロックおよび復号済みの残差ブロックに基づいて再構築されたブロックを形成することと、再構築されたブロックの第１の要素がクリッピングの上限を超える場合は、残差ブロックの第１の要素に対応する再構築されたブロックの第１の要素をクリッピングの上限と置き換えることとを含む、方法が提示される。
【００１７】
方法は、オリジナルブロックまたは予測ブロックの第２の要素がクリッピングの下限に近いと決定することと、オリジナルブロックまたは予測ブロックの第２の要素に対応する残差ブロックの第２の要素を残差ブロックの第２の要素より小さい第２の値と置き換えることと、再構築されたブロックの第２の要素がクリッピングの下限より小さい場合は、残差ブロックの第２の要素に対応する再構築されたブロックの第２の要素をクリッピングの下限と置き換えることとをさらに含み得る。
【００１８】
第１の値は、ブロックのローパスフィルタリングされた値であり得る。
【００１９】
オリジナルブロックまたは予測ブロックの第１の要素がクリッピングの上限に近いと決定するため、閾値を使用することができる。一例では、閾値は０である。別の例では、閾値は、残差ブロックに対応する量子化パラメータと共に増加する。
【００２０】
また、本実施形態は、これらのステップを実行する装置も提供する。
【００２１】
また、本実施形態は、上記で説明される方法に従ってピクチャを符号化する命令が格納されたコンピュータ可読記憶媒体も提供する。
【００２２】
また、本実施形態は、上記で説明される方法に従って生成されたビットストリームが格納されたコンピュータ可読記憶媒体も提供する。
【図面の簡単な説明】
【００２３】
【図１】例示的なＨＥＶＣ（高効率映像コード化）エンコーダのブロック図を示す。
【図２】例示的なＨＥＶＣ映像デコーダのブロック図を示す。
【図３】本原理の実施形態による、エンコーダにおいて適応クリッピングを使用可能にするか否かを決定するための例示的な方法を描写する。
【図４Ａ】本原理の実施形態による、クリッピング限度を符号化するための例示的な方法を描写する。
【図４Ｂ】本原理の実施形態による、クリッピング限度を復号するための例示的な方法を描写する。
【図４Ｃ】本原理の実施形態による、エンコーダ側で参照クリッピング限度を初期化するための例示的な方法を描写する。
【図４Ｄ】本原理の実施形態による、デコーダ側で参照クリッピング限度を初期化するための例示的な方法を描写する。
【図５】例を使用して、ＡｄおよびＢｄの量子化および非量子化を示す。
【図６】本原理の実施形態による、固定予測因子または適応予測因子でクリッピング限度を符号化するための例示的な方法を示す。
【図７】本原理の実施形態による、固定予測因子または適応予測因子でクリッピング限度を復号するための例示的な方法を示す。
【図８Ａ】本原理の実施形態による、現在のブロックを符号化するための例示的な方法を示す。
【図８Ｂ】本原理の実施形態による、適応残差スムージングを用いて現在のブロックを符号化するための例示的な方法を示す。
【図９】本原理の実施形態による、エンコーダにおいて残差スムージングを実行するための例示的な方法を示す。
【図１０】本原理の例示的な実施形態の様々な態様を実装することができる例示的なシステムのブロック図を示す。
【発明を実施するための形態】
【００２４】
図１は、例示的なＨＥＶＣエンコーダ１００を示す。１つまたは複数のピクチャを有する映像シーケンスを符号化するため、ピクチャは、１つまたは複数のスライスにパーティション化され、各スライスは、１つまたは複数のスライスセグメントを含み得る。スライスセグメントは、コード化単位、予測単位および変換単位に組織化される。
【００２５】
ＨＥＶＣ仕様は、「ブロック」と「単位」を区別しており、「ブロック」は、サンプルアレイの特定のエリア（例えば、ルマ、Ｙ）に対処し、「単位」は、すべての符号化済みの色成分（Ｙ、Ｃｂ、Ｃｒまたはモノクロ）、構文要素およびブロックと関連付けられた予測データ（例えば、動きベクトル）の配列ブロックを含む。
【００２６】
コード化の場合、ピクチャは、構成可能なサイズを有する正方形状のコード化木ブロック（ＣＴＢ）にパーティション化され、コード化木ブロックの連続セットは、スライスに分類される。ＣＴＢに対応するコード化木単位（ＣＴＵ）は、符号化済みの色成分のＣＴＢを含む。ＣＴＢは、コード化ブロック（ＣＢ）にパーティション化される四分木の根であり、コード化ブロックは、１つまたは複数の予測ブロック（ＰＢ）にパーティション化され、変換ブロック（ＴＢ）にパーティション化される四分木の根を形成する。コード化ブロック、予測ブロックおよび変換ブロックに対応して、コード化単位（ＣＵ）は、予測単位（ＰＵ）および変換単位（ＴＵ）の木構造セットを含み、ＰＵは、すべての色成分の予測情報を含み、ＴＵは、各色成分の残差コード化構文構造を含む。ルマ成分のＣＢ、ＰＢおよびＴＢのサイズは、対応するＣＵ、ＰＵおよびＴＵに当てはまる。本出願では、「ブロック」という用語は、ＣＴＵ、ＣＵ、ＰＵ、ＴＵ、ＣＢ、ＰＢおよびＴＢのいずれかを指すために使用することができる。それに加えて、「ブロック」は、Ｈ．２６４／ＡＶＣまたは他の映像コード化規格において指定されるようなマクロブロック、パーティションおよびサブブロックを指すため、およびより一般的には、様々なサイズのサンプルのアレイを指すために使用することができる。
【００２７】
例示的なエンコーダ１００では、ピクチャは、以下で説明されるようなエンコーダ要素によって符号化される。符号化予定のピクチャは、ＣＵの単位において処理される。各ＣＵは、イントラまたはインターモードを使用して符号化される。ＣＵがイントラモードで符号化される際は、イントラ予測（１６０）が実行される。インターモードでは、動き推定（１７５）および補償（１７０）が実行される。エンコーダは、ＣＵを符号化するためにイントラモードとインターモードのどちらを使用するかを決定し（１０５）、予測モードフラグによってイントラ／インター決定を示す。予測残差は、オリジナル画像ブロックから予測ブロックを減ずること（１１０）によって計算される。
【００２８】
イントラモードのＣＵは、同じスライス内の再構築された近隣のサンプルから予測される。３５のイントラ予測モードのセットがＨＥＶＣにおいて利用可能であり、ＤＣ、平面および３３の角度予測モードを含む。イントラ予測参照は、現在のブロックに隣接する行および列から再構築される。参照は、以前に再構築されたブロックから利用可能なサンプルを使用して、水平および垂直方向においてブロックサイズの２倍に及ぶ。イントラ予測に対して角度予測モードが使用される際は、参照画素は、角度予測モードによって示される方向に沿ってコピーすることができる。
【００２９】
現在のブロックに対する適用可能なルマイントラ予測モードは、２つの異なるオプションを使用してコード化することができる。適用可能なモードが３つの最確モード（ＭＰＭ）の構築リストに含まれる場合は、モードは、ＭＰＭリストのインデックスによって信号伝達される。そうでなければ、モードは、モードインデックスの固定長二進化（fixed-length binarization）によって信号伝達される。３つの最確モードは、上および左の近隣のブロックのイントラ予測モードから導き出される。
【００３０】
インターＣＵの場合は、対応するコード化ブロックは、１つまたは複数の予測ブロックにさらにパーティション化される。インター予測は、ＰＢレベルで実行され、対応するＰＵは、インター予測がどのように実行されるかについての情報を含む。
【００３１】
動き情報（すなわち、動きベクトルおよび参照インデックス）は、２つの方法、すなわち、「高度な動きベクトル予測（ＡＭＶＰ）」および「マージモード」で信号伝達することができる。ＡＭＶＰでは、映像エンコーダまたはデコーダは、既にコード化されているブロックから決定された動きベクトルに基づいて候補リストを組み立てる。次いで、映像エンコーダは、動きベクトル予測因子（ＭＶＰ）を識別するために候補リストにインデックスを信号伝達し、動きベクトル差（ＭＶＤ）を信号伝達する。デコーダ側では、動きベクトル（ＭＶ）は、ＭＶＰ＋ＭＶＤとして再構築される。
【００３２】
マージモードでは、映像エンコーダまたはデコーダは、既にコード化されているブロックに基づいて候補リストを組み立て、映像エンコーダは、候補リスト内の候補のうちの１つに対するインデックスを信号伝達する。デコーダ側では、動きベクトルおよび参照ピクチャインデックスは、信号伝達された候補に基づいて再構築される。
【００３３】
ＨＥＶＣでは、動き補償のための動き情報の精度は、ルマ成分に対して１／４サンプルであり、クロマ成分に対して１／８サンプルである。７タップまたは８タップ補間フィルタは、分数サンプル画素位置の補間に使用される。すなわち、水平方向と垂直方向の両方における全画素場所の１／４、１／２および３／４は、ルマに対処することができる。
【００３４】
予測残差は、変換（１２５）および量子化（１３０）が行われる。量子化済みの変換係数ならびに動きベクトルおよび他の構文要素は、ビットストリームを出力するために、エントロピーコード化（１４５）される。また、エンコーダは、変換をスキップして、４×４ＴＵベースで非変換残差信号に量子化を直接適用することもできる。また、エンコーダは、変換と量子化の両方を回避することもできる（すなわち、残差は、変換または量子化プロセスを適用することなく直接コード化される）。直接ＰＣＭコード化では、予測は適用されず、コード化単位サンプルは、直接コード化され、ビットストリームに埋め込まれる。
【００３５】
エンコーダは、さらなる予測のための参照を提供するために、符号化済みのブロックを復号する。量子化済みの変換係数は、予測残差を復号するために、非量子化（１４０）および逆変換（１５０）が行われる。復号済みの予測残差と予測ブロックを組み合わせること（１５５）で、画像ブロックが再構築される。フィルタは、例えば、ブロックノイズのあるアーチファクトを低減するために非ブロック化／ＳＡＯ（サンプル適応オフセット）フィルタリングを実行するため、再構築されたピクチャに適用される（１６５）。フィルタリングされた画像は、参照ピクチャバッファ（１８０）に格納される。
【００３６】
図２は、例示的なＨＥＶＣ映像デコーダ２００のブロック図を示す。例示的なデコーダ２００では、ビットストリームは、以下で説明されるようなデコーダ要素によって復号される。映像デコーダ２００は、一般に、図１で説明されるような符号化パスとは逆の復号パスを実行し、映像データの符号化の一部として映像復号を実行する。
【００３７】
具体的には、デコーダの入力は、映像ビットストリームを含み、映像ビットストリームは、映像エンコーダ１００によって生成することができる。ビットストリームは、最初に、変換係数、動きベクトルおよび他のコード化情報を得るために、エントロピー復号（２３０）が行われる。変換係数は、予測残差を復号するために、非量子化（２４０）および逆変換（２５０）が行われる。復号済みの予測残差と予測ブロックを組み合わせること（２５５）で、画像ブロックが再構築される。予測ブロックは、イントラ予測（２６０）または動き補償予測（すなわち、インター予測）（２７５）から得ること（２７０）ができる。上記で説明されるように、ＡＭＶＰおよびマージモード技法は、動き補償の間に使用することができ、動き補償は、参照ブロックのサブ整数画素に対する補間値を計算するために補間フィルタを使用することができる。フィルタ（２６５）は、再構築された画像に適用される。フィルタリング済みの画像は、参照ピクチャバッファ（２８０）に格納される。
【００３８】
データオーバーフローまたはアンダーフローを避けるため、ＨＥＶＣデコーダにおける様々なプロセスにおいてクリッピングが指定される。ＨＥＶＣでは、例えば、
ＣｌｉｐＹ（ｘ）＝Ｃｌｉｐ３（０，（１＜＜ＢｉｔＤｅｐｔｈＹ）-１，ｘ）
ＣｌｉｐＣ（ｘ）＝Ｃｌｉｐ３（０，（１＜＜ＢｉｔＤｅｐｔｈＣ）-１，ｘ）          （１）
のような異なるクリッピング関数が定義される。式中、ＹおよびＣはそれぞれ、ルマおよびクロマ成分を示し、BitDepthYおよびBitDepthCはそれぞれ、ルマおよびクロマに対する内部ビット深度（例えば、８または１０）であり、Clip3は、２つの限度ｘとｙとの間で値ｚをクリップするための関数である。
【数１】
2019521571.tif 000003
【００３９】
クリッピングは、例えば、重み付け予測、予測、イントラ予測フィルタ、適応ループフィルタ（ＡＬＦ）、非ブロック化フィルタ、ＳＡＯフィルタなどの動作においてまたは動作後および復号済みの残差が予測に追加される際など、様々な動作の間または様々な動作の後に適用することができる。それに加えて、ＨＥＶＣの性能をさらに向上するため、クリッピングは、共同映像探査チーム（ＪＶＥＴ）によって参照ソフトウェアＪＥＭ（共同探査モデル）において開発されるようなＰＤＰＣ（位置依存性イントラ予測組合せ）においても適用することができる。
【００４０】
クリッピングプロセスは、通常、
ｘｃ＝ｃｌｉｐ（ｘ）＝ｍｉｎ（ＢＵ，ｍａｘ（ＢＬ，Ｘ））            （３）
によって行われ、式中、ＢＬおよびＢＵはそれぞれ、クリッピングの下限および上限であり、値ｘは、ＢＬ〜ＢＵの範囲内の値ｘｃにクリップされる。例えば、デフォルトクリッピング限度は、８ビットＩＢＤ（内部ビス深度）の場合は、BL=0およびBU=255であり得、１０ビットＩＢＤの場合は、BL=0およびBU=1023であり得る。
【００４１】
Chih-Ming Fu等による米国特許出願第１２／９５４，８４４号は、映像データの動的特性を考慮するコンテンツ適応クリッピング方法を開示しており、方法は、部分的なピクチャ、フレームまたはフレームのグループであり得る事前に定義されたセットに映像データを構成する。事前に定義されたセットと関連付けられたオリジナル映像データのデータ範囲が決定され、処理された映像データは、事前に定義されたセットに対して演算された範囲に従ってクリップされる。範囲情報は、シーケンスパラメータセット（ＳＰＳ）、ピクチャパラメータセット（ＰＰＳ）、スライスヘッダまたはコード化単位ヘッダで伝えることができる。
【００４２】
その教示が参照により本明細書に具体的に組み込まれるP. Bordes等による“Methods and devices for encoding and decoding a sequence of pictures, and corresponding computer program products and computer-readable medium”と称する共同所有されるＥＰ特許出願（欧州特許第１５３０６３６９．８号、代理人整理番号ＰＦ１５００１１）は、別の色成分に適応できるある色成分をクリップする方法を開示している。一実施形態では、クロマ成分のサンプルの範囲は、ルマ成分のサンプル値の関数として提供される。
【００４３】
本原理は、映像符号化および復号における適応クリッピングを対象とする。一実施形態では、コンテンツに適応できるクリッピングパラメータを符号化することを提案する。クリッピングパラメータは、これらに限定されないが、適応クリッピングを使用するか否かを示すフラグ、クリッピング限度を符号化するための方法のタイプを示すフラグ、クリッピングの下限および上限を含み、ピクチャのシーケンスもしくはグループに対してまたはピクチャもしくはスライスレベルで示すことができる。例えば、クリッピングパラメータは、映像パラメータセット（ＶＰＳ）、ＳＰＳ、ＰＰＳ、スライスヘッダまたはＣＴＵヘッダで示すことができる。スケーリング可能な映像コード化の事例では、クリッピングパラメータは、個々の層に対して示すことができる。クリッピング限度は、既定の定数および信号限度でも、映像データの確率分布に基づいて生成することも可能である。再構築されたピクチャの後処理としてのみクリッピング限度を使用することも、エンコーダまたはデコーダ内部の１つまたは複数のクリッピング動作においてクリッピング限度を使用することもできる。
【００４４】
図３は、本原理の実施形態による、エンコーダにおいて適応クリッピングを使用可能にするか否かを決定するための例示的な方法３００を描写する。
【００４５】
ステップ３０５では、エンコーダは、ピクチャの最小画素値（ｍ）および最大画素値（Ｍ）を演算する。次いで、エンコーダは、ピクチャのいくつの画素が信号限度ｍおよびＭに近い画素値を有するかを決定する。例えば、エンコーダは、ｍ〜ｍ＋Ｔ１（Ｔ１はパラメータである）の画素値を有する画素の数（Ｎｍ）を計数し（３１０）、Ｍ−Ｔ２〜Ｍ（Ｔ２はパラメータである）の画素値を有する画素の数（ＮＭ）を計数する（３１５）。ＮｍおよびＮＭの数に基づいて、エンコーダは、例えば、ＮｍとＮＭの平均、組合せまたは最大関数を使用して、信号限度に近い画素の数の表示（Ｎ）を決定することができる。数Ｎがｎ％＊ｈ＊ｗ（ｎ％は閾値であり、ｈおよびｗはピクチャの垂直および水平方向における画素の数である）より大きい場合（３２０）は、クリッピング動作によって十分な量の画素を調整することができる。従って、ピクチャに対して適応クリッピングを使用可能にすることができ（３３０）、クリッピング限度をビットストリームで信号伝達することになる。そうでなければ、適応クリッピングは、ピクチャに対して使用可能にはならず、BL=0およびBU=2bitdepth-1に基づくクリッピングを使用することができる。変形形態では、数Ｎは、画像サイズとは無関係に、固定閾値Ｔと比較することができる。
【００４６】
それに加えて、エンコーダは、量子化パラメータ、ピクチャタイプまたはピクチャの時間レベルをチェックすることもできる。量子化パラメータが大きい際は、時間レベルは高く、ピクチャタイプはＢであり、ピクチャのコード化サイズは通常は小さく、クリッピングパラメータの信号伝達は比較的大きなオーバーヘッドを導入し得る。従って、小さなコード化サイズを有することが予想されるピクチャの場合は、余分なオーバーヘッドを避けるために、適応クリッピングを使用不可能にすることができる。大きなコード化サイズを有することが予想されるピクチャ（例えば、ピクチャのグループのイントラピクチャまたは第１のインターピクチャ）の場合は、適応クリッピングを使用可能にすることができる。
【００４７】
コード化サイズの考慮は、閾値ｎ％およびパラメータＴ１、Ｔ２を調整することによって、方法３００に組み入れることができる。例えば、大きなコード化サイズを有することが予想されるピクチャの場合は、ｎ％を小さな値に設定することができ（すなわち、適応クリッピングを使用可能にするための条件を容易に満たすことができる）、小さなコード化サイズを有することが予想されるピクチャの場合は、ｎ％を大きな値に設定することができる。
【００４８】
エンコーダは、ステップ３１０を条件付きで実行することができ、例えば、エンコーダは、m>BL=0の場合にのみステップ３１０を実行する。同様に、エンコーダは、ステップ３１５を条件付きで実行することができ、例えば、エンコーダは、M<BU=2bitdepth-1の場合にのみステップ３１５を実行する。この理由は、m<BL=0またはM>BU=2bitdepth-1の場合、BL=0およびBU=2bitdepth-1での非適応クリッピングの方が、適応クリッピングより性能が優れているためである。
【００４９】
別の例では、量子化パラメータが高い際は、歪みは高く、歪みを低減するためにクリッピングを適用することがより有益であり得る。従って、量子化パラメータの増加と共に、パラメータＴ１およびＴ２を増加することができる。また、エンコーダは、パラメータｎ％、Ｔ１およびＴ２を決定する際に、コード化サイズ（すなわち、ビットレート）と歪みの両方を考慮することもできる。
【００５０】
方法３００は、適応クリッピングがピクチャレベルで実行される際の方法を説明する。また、方法３００は、適応クリッピングがシーケンスレベル、スライスレベル、ＣＴＵレベルまたは他のコード化レベルで実行される際に相応に調整することもできる。別の変形形態では、エンコーダは、適応クリッピングを使用可能にするか否かを決定するため、信号限度の代わりに、クリッピング限度に近い画素の数をチェックすることもできる。適応クリッピングが低いレベル（例えば、ＣＴＵレベル）で実行される際は、決定は、ＣＴＵを符号化する前に行うことができ、個々のＣＴＵに対して適応クリッピングを使用可能にするかどうかを示すフラグは、エントロピー符号化することができる。
【００５１】
図４Ａは、本原理の実施形態による、クリッピング限度を符号化するための例示的な方法４００を描写する。
【００５２】
ステップ４１０では、エンコーダは、初期化ステップを実行することができ、例えば、映像データを表すために使用されるビット深度（bitdepth）、映像データのクリッピング限度（Ｙｌｏｗ，Ｙｈｉｇｈ）およびクリッピングパラメータを量子化するために使用される量子化器のビットの数（qshift）にアクセスする。エンコーダは入力／出力データを表すために、あるビット深度（例えば、８ビット）を使用することや、内部符号化プロセスのために、別のビット深度（例えば、１０ビット、１２ビット）を使用することができることに留意されたい。ここでは、「bitdepth」という変数の値は、クリッピングが起こる段階におけるデータを表すために使用されるビット深度に相当する。例えば、復号済みの出力映像データにクリッピングが適用される際は、bitdepth=8であり、イントラ予測後にクリッピングが適用される最または内部ビット深度１０で動作する他のモジュールの際は、bitdepth=10である。
【００５３】
特定の実施形態では、エンコーダは、初期化ステップの間に差を演算する（ステップ４２０において）ために使用される予測因子（参照クリッピング限度とも呼ばれる）の値を導き出すことができる。図４Ｃは、参照予測因子を導き出すための例示的な方法を描写し、クリッピング値が、スライス／ピクチャレベルで格納され、参照ピクチャリスト（すなわち、インター予測のために使用される参照ピクチャのリスト）のフレームにアクセスするために使用される規則に適合する規則を用いてアクセスされる事例におけるものである。この事例では、既に復号されているピクチャに付随する既に復号されているクリッピング限度および対応するＰＯＣは、前記ピクチャと共に、参照ピクチャセット（ＲＰＳ）（すなわち、ピクチャと関連付けられた参照ピクチャのセットであり、復号順番において関連ピクチャの前のすべての参照ピクチャからなり、関連ピクチャまたは復号順番において関連ピクチャに続く任意のピクチャのインター予測のために使用することができる）に格納される。
【００５４】
ステップ１４１０では、現在のピクチャがイントラコード化スライスを含む場合は、参照予測因子は設定されない（１４１２）。そうでなければ、ステップ１４１３において、bestDeltaPOCが初期化される。例として、bestDeltaPOC（ＰＯＣの最高差）は、無限大に初期化される。ＰＯＣは、各ピクチャと関連付けられた変数であり、コード化映像シーケンスのすべてのピクチャの中で関連ピクチャを一意的に識別する変数である。以下では、POC_refは、参照ピクチャのＰＯＣであり、POC_currentは、コード化予定の現在のピクチャのＰＯＣである。
【００５５】
ステップ１４１４では、ＲＰＳのすべての参照ピクチャにわたるループが開始される。現在のピクチャをコード化するための参照としてＲＰＳのピクチャが使用される場合（１４１５）は、方法はステップ１４１６を続行し、そうでなければ、方法はステップ１４２１を続行する。参照ピクチャのクリッピング限度を使用可能にする場合（１４１６）は、方法はステップ１４１７を続行し、そうでなければ、方法はステップ１４２１を続行する。ＰＯＣの差（deltaPOC）が、これまでに見出されたＰＯＣの最高差の絶対値より小さい場合（１４１７）は、方法はステップ１４２０を続行し、そうでなければ、方法はステップ１４１８を続行する。deltaPOCとbestDeltaPOCの絶対値が等しい場合（１４１８）は、方法はステップ１４１９を続行し、そうでなければ、方法はステップ１４２１を続行する。ＰＯＣの差が正（変形形態では負）の場合（１４１９）は、方法はステップ１４２０を続行し、そうでなければ、方法はステップ１４２１を続行する。ステップ１４２０では、ＰＯＣの最高差（bestDeltaPOC）および最高ＰＯＣ（bestPOC）はそれぞれ、ＰＯＣの差および現在処理されている参照ピクチャのＰＯＣと等しく設定される。ＲＰＳのすべてのピクチャが処理されると、ループは終了し（１４２１）、方法はステップ１４２２を続行する。ＰＯＣの最高差（bestDeltaPOC）がその初期値と等しい場合（１４２２）は、方法はステップ１４１２を続行する。そうでなければ、参照クリッピング限度は、ＰＯＣがbestPOCと等しい参照ピクチャの復号済みのクリッピング限度と等しく設定される（成分ｃｄｘ毎に）（１４２３）。これらの参照クリッピング限度は、以下では、ClipMinRefVal[cdx]およびClipMaxRefVal[cdx]と呼ばれる。
【００５６】
変形形態では、ステップ１４１６が省略される場合は、クリッピング限度が有効化されていない参照ピクチャのクリッピング限度は、従来のクリッピング値（すなわち、下限は０および上限は(1<<BitDepth)-1に設定される。
【００５７】
固定予測因子
圧縮効率を高めるため、クリッピング限度は、差動符号化することができる。ルマ限度の場合は、下限は、０に近い可能性が高く、上限は、２ｂｉｔｄｅｐｔｈに近い可能性が高く、
Ａｄ＝Ｙｌｏｗ、Ｂｄ＝２ｂｉｔｄｅｐｔｈ−Ｙｈｉｇｈ            （４）
として計算することができ（４２０）、式中、ＹｌｏｗおよびＹｈｉｇｈはそれぞれ、ルマ成分に対するクリッピングの下限および上限である。ここでは、０および２ｂｉｔｄｅｐｔｈはそれぞれ、ＹｌｏｗおよびＹｈｉｇｈの予測因子として見ることができる。０および２ｂｉｔｄｅｐｔｈは、コンテンツによって変化しないため、クリッピング限度の固定予測因子とも呼ばれ、符号化方法は、固定予測因子を用いた差動符号化方法と呼ばれる。また、例えば、１０ビットの限られた範囲のデータに対して６４および９４０など、他の固定予測因子を使用することもできる。固定予測因子は、既知数でも、エンコーダとデコーダの両方において生成することも可能であるため、一般に、固定予測因子の値は、ビットストリームで伝送する必要はない。
【００５８】
上限の差は、2bitdepth-1の代わりに、２ｂｉｔｄｅｐｔｈを使用して計算されることに留意されたい。これにより、クリッピング限度における損失なしで差の量子化および非量子化が可能になる。
【００５９】
クリッピング下限は、通常、ビット深度によって表すことができる最大値の半分より小さく（すなわち、Ylow<2bitdepth-1）、クリッピング上限は、通常、ビット深度によって表すことができる最大値の半分より大きい（すなわち、Yhigh>2bitdepth-1）ことが実験から観察される。従って、ＡｄおよびＢｄは、ビット深度（bdd=bitdepth-1）で表すことができる。従って、固定長コードを使用してＡｄおよびＢｄを符号化する際、いくつかのビットを節約することができる。
【００６０】
ステップ４３０では、差が量子化されるが、それは、エンコーダの内部ビット深度が１０であるかまたはそれより高い一方で、ほとんどのコンテンツが未だ８ビットであるため、有益であり得る。ここでは、量子化は、精度に関してほとんど犠牲にすることなく、符号化予定の差のダイナミックレンジを低減することができる。
【００６１】
量子化は、qshiftビットの右シフトとして実行することができる。
Ａｑ＝Ａｄ＞＞ｑｓｈｉｆｔ、Ｂｑ＝Ｂｄ＞＞ｑｓｈｉｆｔ              （５）
ＡｄおよびＢｄは負ではないことに留意されたい。量子化器の選択は、オリジナル映像データを表すために使用されるビット深度（bitdepth0）およびクリッピング段階におけるビット深度（bitdepth）に基づき得る。一例では、差の量子化が、エンコーダにおける内部ビット深度の増加によって生じるアップスケーリングを相殺するように、qshiftは、表１に示されるように、bitdepthとbitdepth0=8との差に基づいて選ばれる。
【００６２】
【表１】
2019521571.tif 000004
【００６３】
この量子化方法を使用することで、再構築された値は、逆シフトによって計算することができる（丸めなし）。
【数２】
2019521571.tif 000005
【００６４】
量子化および非量子化の後、下限に対する再構築された値
【数３】
2019521571.tif 000006
は、一般に、符号化前の下限（Ｙｌｏｗ）より小さく、上限に対する再構築された値
【数４】
2019521571.tif 000007
は、一般に、符号化前の上限（Ｙｈｉｇｈ）より大きい。
【００６５】
適応予測因子
別の実施形態では、コンテンツによって、下限および上限クリッピングの予測因子を変化させることもできる。それらの予測因子は、クリッピング限度の適応予測因子と呼ばれ、符号化方法は、適応予測因子を用いた差動符号化方法と呼ばれる。適応予測因子（ｐｒｅｄｌ，ｐｒｅｄｕ）を使用することで、
Ａｄ＝Ｙｌｏｗ−ｐｒｅｄｌ、Ｂｄ＝Ｙｈｉｇｈ−ｐｒｅｄｕ          （７）
として差を計算すること（４２０）ができる。
【００６６】
ＡｄおよびＢｄは適応予測因子に基づいて計算され、値は正、ゼロまたは負であり得ることに留意されたい。従って、差を量子化するために、式（５）で説明されるように量子化プロセスが調整される。下限差の場合、量子化は、
Ｉｆ  Ａｄ＞０，Ａｑ＝Ａｄ＞＞ｑｓｈｉｆｔ
Ｅｌｓｅ  Ａｄ＝-１＊（（｜Ａｄ｜＋（１＜＜ｑｓｈｉｆｔ）-１））＞＞ｑｓｈｉｆｔ）          （８）
として実行することができる。
【００６７】
上限差の場合、量子化は、
Ｉｆ  Ｂｄ＜０，Ｂｑ＝-１＊（｜Ｂｄ｜＞＞ｑｓｈｉｆｔ）
Ｅｌｓｅ  Ｂｑ＝（Ｂｄ＋（１＜＜ｑｓｈｉｆｔ）-１））＞＞ｑｓｈｉｆｔ          （９）
【００６８】
再構築された差値は、逆シフトによって計算することができ、
【数５】
2019521571.tif 000008
再構築されたクリッピング限度は、
【数６】
2019521571.tif 000009
である。
【００６９】
式（８）および（９）で説明されるように量子化方法を使用することで、下限に対する再構築された値
【数７】
2019521571.tif 000010
は、一般に、符号化前の下限（Ｙｌｏｗ）より小さく、上限に対する再構築された値
【数８】
2019521571.tif 000011
は、一般に、符号化前の上限（Ｙｈｉｇｈ）より大きい。
【００７０】
図５は、例を使用して、ＡｄおよびＢｄの量子化および非量子化を示す。この例では、qshift=2、Ad=7、Bd=13、predl=2、predu=800、Ylow=9、Yhigh=813と設定される。量子化では、Aq=7>>2=1、Bq=(13+(1<<2)-1)>>2=4であり、非量子化では、
【数９】
2019521571.tif 000012
である。この例では、再構築されたクリッピング下限は、符号化前の下限より小さく、再構築されたクリッピング上限は、符号化前の上限より大きい。すなわち、
【数１０】
2019521571.tif 000013
である。従って、入力オリジナルクリッピング限度が９〜８１３で画素値を維持する間、再構築されたクリッピング限度は６〜８１６で画素値を維持することになる。通常、クリッピング範囲を拡大することによって生じる歪みは、クリッピング範囲を圧縮することによって生じる歪みより小さい。従って、提案される量子化は、歪みを低減することによって圧縮効率に利益をもたらすことができる。
【００７１】
クリッピング限度の量子化および再構築のために他の量子化および逆量子化方法を使用できることに留意すべきである。任意選択により、
【数１１】
2019521571.tif 000014
の改善を計算して（４４０）、ビットストリームで示すこともできる。
【数１２】
2019521571.tif 000015
改善が用いられる場合は、再構築されたクリッピング限度は、改善値も含むべきである。
【００７２】
エンコーダとデコーダが同じクリッピング動作を実行するようにするため、再構築されたクリッピング限度は、映像データをクリップするためにエンコーダ側で使用され（４５５）、復号済みのクリッピング限度は、映像データをクリップするためにデコーダ側で使用される。本出願では、交換可能に「再構築された」および「復号済みの」と言及し得る。
【００７３】
ステップ４５０では、量子化済みの差（すなわち、Ａｑ、Ｂｑ）および任意選択により改善値（すなわち、Ａｒ、Ｂｒ）は符号化される。改善値は、可変長コード化を使用して符号化することができる。また、適応予測因子（すなわち、ｐｒｅｄｌ、ｐｒｅｄｕ）を符号化してビットストリームに埋め込むこともできる。
【００７４】
表２は、スライスヘッダにおいてクリッピングパラメータが信号伝達される際の例示的な構文表を示す。この例では、改善は考慮されない。また、構文要素は、ピクチャレベル、シーケンスレベル、ＣＴＵレベルおよび他のコード化レベルで信号伝達することができる。
【００７５】
【表２】
2019521571.tif 000016
【００７６】
１に等しいadaptive_clipping_slice_flagは、現在のスライスに対して適応クリッピングを有効化する。有効化されない場合は、デフォルトクリッピング限度（典型的には、下限および上限に対してそれぞれ０および(1<<BitDepth)-1がクリッピングに使用される。
【００７７】
qshift_idxは、表１で指定されるようにqshiftの値を指定する。映像シーケンスを符号化する際、第１のスライスは、クリッピング限度の固定予測因子を使用して符号化されることに留意されたい。従って、後続のスライスに対するqshiftの値は、第１のスライスから得ることができる。
【００７８】
【表３】
2019521571.tif 000017
【００７９】
clip_min_delta_quant_fixed_predictor[cIdx]は、色成分ｃＩｄｘのクリッピング下限差の量子化された値を指定する。clip_min_delta_quant_fixed_predictor[cIdx]を表すために使用されるビットの数は、（bdd-qshift）であり、ｂｄｄは、クリッピング限度差（例えば、式（４）のようなＡｄ、Ｂｄ）を表すために使用されるビットの数である。記述子ｕ（ｖ）は、符号なしの整数として構文解析プロセスを表し、構文表の「ｖ」は、ビットの数が他の構文要素の値に応じて変化することを示す。
【００８０】
clip_max_delta_quant_fixed_predictor[cIdx]は、色成分ｃＩｄｘのクリッピング上限差の量子化された値を指定する。clip_max_delta_quant_fixed_predictor[cIdx]を表すために使用されるビットの数は、（bdd-qshift）である。
【００８１】
【表４】
2019521571.tif 000018
【００８２】
clip_min_delta_quant_adaptive_predictor[cIdx]は、色成分ｃＩｄｘのクリッピング下限差の量子化された値を指定する。記述子ｓｅ（ｖ）は、左ビットが先頭の符号付き整数０次指数ゴロムコード化構文要素として構文解析プロセスを表す。
【００８３】
clip_max_delta_quant_adaptive_predictor[cIdx]は、色成分ｃＩｄｘのクリッピング上限差の量子化された値を指定する。
【００８４】
エンコーダおよびデコーダ初期化では、クリッピング下限および上限の値（ClipMinRefVal[cIdx]およびClipMaxRefVal[cIdx]）はそれぞれ、０および(1<<BitDepth[cIdx])-1に設定することができ、BitDepthは、色成分ｃＩｄｘの内部ビット深度である。
【００８５】
adaptive_clipping_slice_flagが１に等しい場合、
−  clip_code_fixed_predictor_flagが１に等しい場合、予測因子PredictorMin[cIdx]およびPredictorMax[cIdx]はそれぞれ、０および（1<<BitDepth[cIdx]）に設定される。clip_min_delta_quant[cIdx]およびclip_max_delta_quant[cIdx]の値は、以下のように導き出される。
clip_min_delta_quant[cIdx]=clip_min_delta_quant_fixed_predictor[cIdx]
clip_max_delta_quant[cIdx]=clip_max_delta_quant_fixed_predictor[cIdx]
復号済みのクリッピング下限および上限の値（ClipMinVal[cIdx]およびClipMaxVal[cIdx]）は、以下のように導き出される。
ClipMinVal[cIdx]=PredictorMin[cIdx]+(clip_min_delta_quant[cIdx]<<qshift)
ClipMaxVal[cIdx]=PredictorMax[cIdx]-(clip_max_delta_quant[cIdx]<<qshift)
if (ClipMaxVal[cIdx]>(1<<BitDepth)-1)ClipMaxVal[cIdx]=(1<<BitDepth)-1
−  そうでなければ（clip_code_fixed_predictor_flagが０に等しい場合）、clip_min_delta_quant[cIdx]およびclip_max_delta_quant[cIdx]の値は、以下のように導き出される。
clip_min_sign[cIdx]=Sign(clip_min_delta_quant_adaptive_predictor[cIdx])
clip_max_sign[cIdx]=Sign(clip_max_delta_quant_adaptive_predictor[cIdx])
clip_min_delta_quant[cIdx]=Abs(clip_min_delta_quant_adaptive_predictor[cIdx])
clip_max_delta_quant[cIdx]=Abs(clip_max_delta_quant_adaptive_predictor[cIdx])
式中、
【数１３】
2019521571.tif 000019
である。下限および上限の予測因子PredictorMin[cIdx]およびPredictorMax[cIdx]の値はそれぞれ、最後に復号されたClipMinRefVal[cIdx]およびClipMaxRefVal[cIdx]に更新することができる。別の更新ポリシは、復号する現在のフレームの参照ピクチャバッファにおいて利用可能な時間的に最も近い復号済みのフレームのClipMinVal[cIdx]およびClipMaxVal[cIdx]にPredictorMin[cIdx]およびPredictorMax[cIdx]を設定することである。別の更新ポリシは、復号する現在のフレームの参照ピクチャバッファにおいて利用可能な時間的に最も近い復号済みのフレームのClipMinRefVal[cIdx]およびClipMaxRefVal[cIdx]にPredictorMin[cIdx]およびPredictorMax[cIdx]を設定することである。クリッピング下限および上限の値（ClipMinVal[cIdx]およびClipMaxVal[cIdx]）は、以下のように導き出される。
ClipMinVal[cIdx]=PredictorMin[cIdx]+clip_min_sign[cIdx]*(clip_min_delta_quant[cIdx]<<qshift)
ClipMaxVal[cIdx]=PredictorMax[cIdx]+clip_max_sign[cIdx]*(clip_max_delta_quant[cIdx]<<qshift)
【００８６】
adaptive_clipping_slice_flagが０に等しい場合、ClipMinVal[cIdx]およびClipMaxVal[cIdx]の値はそれぞれ、０および(1<<BitDepth)-1に設定される。
【００８７】
上記では、スライスレベルでクリッピングパラメータを符号化することについて論じられている。クリッピングパラメータがより低いレベル（例えば、ＣＴＵレベル）で符号化される際は、差は、文脈予測因子を使用して（例えば、最後のＣＴＵの値、参照ピクチャバッファにおけるクローゼットフレームの同一場所に配置されたＣＴＵの値またはその周辺のＣＴＵ値の平均を使用して）演算することができる。
【００８８】
クリッピングパラメータがピクチャレベルで符号化される特定の事例では、代替の構文は、表５および表６で描写されるように定義することができる。この構文では、クリッピングパラメータは、ピクチャレベルで設定するために、第１のスライスにおいてのみ符号化される。あるいは、qshift_idxは、ＰＰＳレベルで符号化され、すべてのピクチャに共通である。この事例では、１に等しいadaptive_clipping_slice_flagは、現在のピクチャに対して適応クリッピングを有効化する。１に等しいadaptive_clipping_enabled_flagは、全シーケンスに対して適応クリッピングを使用可能にする。
【００８９】
【表５】
2019521571.tif 000020
【００９０】
【表６】
2019521571.tif 000021
【００９１】
図４Ｂは、本原理の実施形態による、クリッピング限度を復号するための例示的な方法４００ａを描写する。方法４００ａの入力は、方法４００の出力であり得る。ステップ４６０では、デコーダは、初期化を実行することができ、例えば、映像データを表すために使用されるビット深度（bitdepth）、クリッピング限度の予測因子およびクリッピングパラメータを量子化するために使用される量子化器のビットの数（qshift）にアクセスする。ステップ４６５では、量子化済みのクリッピング限度差および任意選択により改善は、ビットストリームから復号することができる。クリッピング限度は、クリッピング限度の復号済みの差および予測因子に基づいて、例えば、式（６）または（１１）を使用して、量子化済みのクリッピング限度差を非量子化することによって復号することができる。改善が用いられる場合は、最終的なクリッピング限度を得るために、改善を最初に復号されたクリッピング限度と組み合わせることもできる（４８０）。次いで、復号済みのクリッピング限度に基づいて、映像データがクリップされる（４８５）。
【００９２】
図４Ｄは、本原理の実施形態による、クリッピング値がスライス／ピクチャレベルで格納され、参照ピクチャリストのフレームにアクセスするためのポリシに適合するポリシを用いてアクセスされる際の参照予測因子を導き出すための初期化の例示的な方法を描写する。このポリシを使用すると、既に復号されているピクチャに付随する既に復号されているクリッピング限度および前記ピクチャの対応するＰＯＣは、参照ピクチャセット（ＲＰＳ）に格納される。方法は、図４Ｃを参照して説明されるエンコーダのものと同様である。図４Ｃのステップと同一のステップは、同一の参照番号で識別されており、さらには説明しない。デコーダ側では、ＲＰＳに格納された値から参照クリッピング限度を導き出すことは、clip_code_fixed_predictor_flagがｘ（例えば、x=0またはx=1）に等しい値を有する際（１４１１）にのみ起こり、clip_code_fixed_predictor_flagに対するｘの値は、固定クリッピング予測因子が使用されることを示す。
【００９３】
図６は、本原理の実施形態による、固定予測因子または適応予測因子でクリッピング限度を符号化するための例示的な方法６００を示す。初期化ステップ（６０５）では、エンコーダは、映像データを表すために使用されるビット深度にアクセスし、クリッピング下限および上限の固定予測因子をそれぞれ生成することができる。ステップ６１０では、エンコーダは、例えば、方法４００を使用して、式（４）で説明されるように計算された差を用いて、固定予測因子でクリッピング限度を符号化する。ステップ６２０では、固定予測因子での符号化コストが計算される。
【００９４】
ステップ６３０では、エンコーダは、例えば、方法４００を使用して、式（７）で説明されるように計算された差を用いて、適応予測因子でクリッピング限度を符号化する。ステップ６４０では、適応予測因子での符号化コストが計算される。ステップ６５０では、エンコーダは、固定予測因子での方法の符号化コストと、適応予測因子での方法の符号化コストを比較する。固定クリッピング予測因子での符号化方法の方が低いコストを有する場合は、例えば、clip_code_fixed_predictor_flag=1と設定することによって、固定クリッピング予測因子を使用することを示すようにフラグが符号化される。固定予測因子は、通常、デコーダで生成することができるため、固定予測因子を符号化してビットストリームに埋め込むことはせず、例えば、上記で説明されるようなCodeClipping_fixed_predictor()を使用して、量子化済みのクリッピング限度差および任意選択の改善のみが符号化される。そうでなければ、例えば、clip_code_fixed_predictor_flag=0と設定することによって、適応クリッピング予測因子を使用することを示すようにフラグが符号化され、クリッピング限度は、例えば、上記で説明されるようなCodeClipping_adaptive_predictor()という構文構造を使用して、適応予測因子で符号化される。
【００９５】
上記では、エンコーダは、図３に示されるような適応クリッピングを使用可能にするかどうかを判断できることが説明されている。それに加えて、エンコーダが適応クリッピングを使用可能にすることを最初に決定した場合であっても、エンコーダは、例えば、bitdepthの代わりに（bdd=bitdepth-1）のビット深度でＡｄおよびＢｄを表すことによって生じた誤差をチェックすることによって、符号化前のクリッピング限度と再構築されたクリッピング限度との誤差が閾値を超えるかどうかをチェックすることもできる。
【００９６】
図７は、本原理の実施形態による、固定予測因子または適応予測因子でクリッピング限度を復号するための例示的な方法７００を示す。方法７００の入力は、方法６００の出力であり得る。初期化（７０５）では、デコーダは、映像データを表すために使用されるビット深度にアクセスすることができる。ステップ７１０では、デコーダは、固定クリッピング予測因子を使用するか否かを示すフラグを復号する。肯定の場合（７２０）は、デコーダは、ステップ７３０において、例えば、ビット深度に基づいて、クリッピング下限および上限の固定予測因子をそれぞれ生成する。次いで、ステップ７４０において、例えば、方法４００ａを使用して、固定予測因子を用いて、クリッピング限度を復号することができる。
【００９７】
そうでなければ、デコーダは、ステップ７５０において、ビットストリームから、クリッピング下限および上限の適応予測因子をそれぞれ復号する。次いで、ステップ７６０において、例えば、方法４００ａを使用して、適応予測因子を用いて、クリッピング限度を復号することができる。
【００９８】
符号化方法６００では、適応予測因子は、ビットストリームで明示的に伝送することも、以前に符号化されたピクチャに基づいて導き出すこともできる。例えば、現在のスライスの適応予測因子は、上記で説明されるように、最も近い復号済みのフレームに基づく。以前に符号化されたピクチャに基づいて適応予測因子が導き出される際は、ピクチャのグループ内の第１のコード化単位は、通常、固定予測因子で符号化される。復号方法７００は、適応予測因子を正しく復号するために相応に設計すべきである。
【００９９】
適応残差スムージング
図８Ａは、本原理の実施形態による、現在のブロックを符号化するための例示的な方法８００を示す。ステップ８１０では、例えば、イントラ予測またはインター予測を通じて、予測ブロックが形成される。ステップ８２０では、現在のオリジナルブロックと予測ブロックとの差として残差ブロックを計算することができる。ステップ８３０では、符号化済みの変換ブロックを形成するために、残差ブロックの変換および量子化が行われる。ステップ８４０では、復号済みの残差ブロックを形成するために、符号化済みの変換ブロックの逆変換および非量子化が行われる。ステップ８５０では、復号済みの残差ブロックと予測ブロックの総和を求めることによって、再構築されたブロックを得ることができる。ステップ８６０では、再構築されたクリップ済みのブロックを生成するために、クリッピングを実行することができる。
【０１００】
以下では、例として３×３ブロックを使用して、符号化方法についてさらに詳細に論じる。
【０１０１】
オリジナルブロックを
【数１４】
2019521571.tif 000022
と想定し、予測ブロックを
【数１５】
2019521571.tif 000023
と想定する。次いで、残差ブロックは、
【数１６】
2019521571.tif 000024
である。変換および量子化の後、符号化済みの変換されたブロックは、
【数１７】
2019521571.tif 000025
である。逆変換および逆量子化の後、復号済みの残差ブロックは、
【数１８】
2019521571.tif 000026
である。再構築されたブロックは、
【数１９】
2019521571.tif 000027
として計算することができる。クリッピング上限を１０００とすると、再構築されたクリップ済みのブロックは、
【数２０】
2019521571.tif 000028
である。オリジナルブロックと再構築されたクリップ済みのブロックとの間の歪みは、Dist0=5277である。
【０１０２】
上記の例から、残差係数（すなわち、行列Ｒｅｓ０の要素）間の変動のため、変換されたブロックの最高周波数で非ゼロ変換係数（すなわち、行列ＴＱ０の−２）が存在することに気づく。非ゼロ高周波数変換係数の符号化は通常は高価であるため、高周波数での非ゼロ係数の発生を低減するように残差をスムーズにすることが提案される。例えば、オリジナルブロックの対応する画素の値がクリッピング上限に近い場合は、残差の値を増加し、オリジナルブロックの対応する画素の値がクリッピング下限に近い場合は、残差の値を減少することができる。残差値の増加または減少は、クリッピング後、再構築された画素値をほとんど変更することなく、残差をスムーズにすることができるため、エンコーダは、追加の歪みをほとんど招くことなく、予測残差の符号化においてビットレートを低減することができる。
【０１０３】
図８Ｂは、本原理の実施形態による、適応残差スムージングを用いて現在のブロックを符号化するための例示的な方法８００ａを示す。ステップ８１０〜８６０は、方法８００で使用されるものと同様であり、追加のステップ８７０は、適応残差スムージングを実行する。
【０１０４】
以下では、方法８００に対して使用されるものと同じオリジナルブロックを使用して、残差スムージングを用いた符号化方法について論じる。
【０１０５】
オリジナルブロックが
【数２１】
2019521571.tif 000029
であり、予測ブロックが
【数２２】
2019521571.tif 000030
である場合、残差ブロック
【数２３】
2019521571.tif 000031
は、適応残差スムージングを使用して調整される。具体的には、y0,0=1000およびy1,1=1000がクリッピング上限にあり、対応する位置における残差（すなわち、Res0,0=20およびres1,1=-20）がチェックされる。これらの２つの選ばれた位置に対し、例えば、選ばれた位置（すなわち、Ｒｅｓ０，０およびｒｅｓ１，１）を除く全ブロックＲｅｓ０の平均を使用して、ローパスフィルタリングされた値が計算される。この例の場合、ローパスフィルタリングされた値は、V=(300+100+500+300+200+100+100)/7=229として計算される。ＶはＲｅｓ０，０およびｒｅｓ１，１より大きいため、クリッピング上限におけるクリッピング段階において増加（すなわち、V-Res0,0=219およびV-res1,1=259）を相殺することができるため、残差Ｒｅｓ０，０およびｒｅｓ１，１は、Ｖと置き換えられる。従って、残差のスムージングおよび修正が行われても、再構築されたブロックがクリップされた後は、ブロックに対する歪みは、残差スムージングなしのものと比べて、必ずしも増加するとは限らない。従って、クリッピングプロセスを活用することによって、圧縮効率を高めることができる。
【０１０６】
次いで、適応残差スムージングの後の残差ブロックは、
【数２４】
2019521571.tif 000032
になる。変換および量子化の後、符号化済みの変換されたブロックは、
【数２５】
2019521571.tif 000033
である。適応スムージングなしの符号化済みの変換ブロックＴＱ０とは異なり、最高周波数における係数は０であり、エネルギーは低周波数（左上）においてさらに圧縮され、従って、符号化するビットの数の観点から安価であり得る。逆変換および逆量子化の後、復号済みの残差ブロックは、
【数２６】
2019521571.tif 000034
である。再構築されたブロックは、
【数２７】
2019521571.tif 000035
として計算することができる。クリッピング上限を１０００とすると、再構築されたクリップ済みのブロックは、
【数２８】
2019521571.tif 000036
である。オリジナルブロックと再構築されたクリップ済みのブロックとの間の歪みは、Dist1=4852であり、これは、残差スムージングなしのＤｉｓｔ０より小さい。従って、適応残差スムージングは、ビットを節約しながら、歪みを低減することもできる。
【０１０７】
図９は、本原理の実施形態による、エンコーダにおいて残差スムージングを実行するための例示的な方法９００を示す。ステップ９０５では、エンコーダは、初期化を実行し、例えば、クリッピング下限および上限にアクセスし、オリジナル入力ブロック、予測ブロックおよび残差ブロックにアクセスする。ステップ９１０では、エンコーダは、例えば、１つまたは複数の閾値と比べて、オリジナルブロックまたは予測ブロックの画素値がクリッピング下限または上限に近い場所を選ぶことによって、残差スムージングを実行することになるブロックの場所を特定する。一例では、閾値を０に設定することができ、従って、まさに限度における値を有する要素のみがスムーズにされる。別の例では、閾値は、量子化パラメータの増加と共に増加し得る。
【０１０８】
ステップ９１５では、エンコーダは、ステップ９１０において１つまたは複数の画素場所が選ばれたかどうかをチェックする。肯定の場合は、エンコーダは、例えば、ローパスフィルタまたはブロックの残差の平均（選ばれた場所を除く）を使用して、ブロックに対するスムージング済みの残差値Ｖを計算する（９２０）。変形形態では、スムーズな残差値は、ブロックの選ばれた場所に対して個別に計算することができる。
【０１０９】
次いで、現在の選ばれた場所における残差値をスムーズにするため、エンコーダは、対応する画素がクリッピング上限に近いことを理由に場所が選ばれ、スムージング済みの残差値Ｖが現在の残差より大きいか、あるいは、対応する画素がクリッピング下限に近いことを理由に場所が選ばれ、スムージング済みの残差値Ｖが現在の残差より小さいかどうかをチェックする（９３５）。肯定の場合は、現在の残差ｒｅｓｉ，ｊは、スムージング済みの残差値Ｖと置き換えられる。すなわち、残差値がクリッピング限度に近く、高周波数変換係数をもたらす可能性がある場合は、残差ブロックの変動を低減するためにクリッピング限度をはるかに超えるように残差値を修正する（それにより、変換ブロックのエネルギーを圧縮する）。次いで、残差スムージングによって生じる過度の残差値は、クリッピング後、クリッピング限度によって定義される範囲内に制限することができ、通常、歪みの大幅な増加を引き起こすことはない。従って、提案される残差スムージングは、歪みをそれほど増加することなく符号化コストを低減することができ、通常、圧縮効率を高めることができる。
【０１１０】
適応残差スムージングは、反復して実行することができる。例えば、残差ブロック
【数２９】
2019521571.tif 000037
の場合、第１の反復では、ブロックの平均を計算して(V0=(20+300+100+500-20+300+200+100+100)/9=178)、Ｒｅｓ０，０およびｒｅｓ１，１を置き換えるために使用することができ、残差ブロックは、
【数３０】
2019521571.tif 000038
になる。第２の反復では、ブロックの平均を計算して(V1=(178+300+100+500+178+300+200+100+100)/9=218)、
【数３１】
2019521571.tif 000039
を置き換えるために使用することができ、残差ブロックは、
【数３２】
2019521571.tif 000040
になる。反復は、反復の数が閾値に達するかまたは
【数３３】
2019521571.tif 000041
になるまで続けることができる。
【０１１１】
ステップ９５０では、エンコーダは、さらなる特定場所を処理するかどうかをチェックする。肯定の場合は、制御は、ステップ９３５に戻る。そうでなければ、例えば、方法８００ａのステップ８３０〜８６０を使用して、修正済みの残差ブロックが符号化され、復号済みのクリップ済みのブロックが再構築される。また、エンコーダは、適応残差スムージングを使用するか否かを判断するために、レート歪み最適化（ＲＤＯ）を実行することもできる。
【０１１２】
上記では、クリッピング下限および上限に対する符号化および復号方法、または、クリッピング下限および上限に基づいて適応残差スムージングを適用する方法が説明されている。異なる変形形態では、単にクリッピング下限かまたはクリッピング上限に対して符号化および復号を実行することも、単にクリッピング下限かまたはクリッピング上限に基づいて残差スムージングを実行することもできる。
【０１１３】
様々な実施形態は、ＨＥＶＣ規格に関して説明されている。しかし、本原理は、ＨＥＶＣに限定されず、他の規格、推奨およびその拡張に適用することができる。
【０１１４】
上記では、様々な方法が説明されており、方法の各々は、説明される方法を達成するための１つまたは複数のステップまたは行動を含む。方法の正しい動作に対してステップまたは行動の特定の順番が必要とされない限り、特定のステップおよび／または行動の順番および／または使用は、修正することも、組み合わせることもできる。
【０１１５】
図１０は、本原理の例示的な実施形態の様々な態様を実装することができる例示的なシステムのブロック図を示す。システム１０００は、以下で説明される様々なコンポーネントを含むデバイスとして具体化することができ、上記で説明されるプロセスを実行するように構成される。そのようなデバイスの例は、これらに限定されないが、パーソナルコンピュータ、ラップトップコンピュータ、スマートフォン、タブレットコンピュータ、デジタルマルチメディアセットトップボックス、デジタルテレビレシーバ、パーソナル映像記録システム、接続された家庭用器具およびサーバを含む。システム１０００は、上記で説明される例示的な映像システムを実装するために、図１０に示されるようなおよび当業者によって知られているような通信チャネルを介して、他の同様のシステムおよびディスプレイに通信可能に結合することができる。
【０１１６】
システム１０００は、上記で論じられるような様々なプロセスを実装するためにその中にロードされた命令を実行するように構成された少なくとも１つのプロセッサ１０１０を含み得る。プロセッサ１０１０は、当技術分野で知られているような埋め込みメモリ、入力出力インタフェースおよび様々な他の回路を含み得る。また、システム１０００は、少なくとも１つのメモリ１０２０（例えば、揮発性メモリデバイス、不揮発性メモリデバイス）も含み得る。それに加えて、システム１０００は、不揮発性メモリを含み得る記憶装置１０４０を含み得、これらに限定されないが、ＥＥＰＲＯＭ、ＲＯＭ、ＰＲＯＭ、ＲＡＭ、ＤＲＡＭ、ＳＲＡＭ、フラッシュ、磁気ディスクドライブおよび／または光ディスクドライブを含む。記憶装置１０４０は、非限定的な例として、内部記憶装置、取り付けられた記憶装置および／またはネットワークアクセス可能記憶装置を含み得る。また、システム１０００は、符号化済みの映像または復号済みの映像を提供するためにデータを処理するように構成されたエンコーダ／デコーダモジュール１０３０も含み得る。
【０１１７】
エンコーダ／デコーダモジュール１０３０は、符号化および／または復号機能を実行するためにデバイスに含めることができるモジュールを表す。知られているように、デバイスは、符号化および復号モジュールの一方または両方を含み得る。それに加えて、エンコーダ／デコーダモジュール１０３０は、当業者に知られているように、システム１０００の別個の要素として実装することも、ハードウェアとソフトウェアの組合せとしてプロセッサ１０１０内に組み込むこともできる。
【０１１８】
上記で説明される様々なプロセスを実行するためにプロセッサ１０１０にロードされる予定のプログラムコードは、記憶装置１０４０に格納し、その後、プロセッサ１０１０による実行のためにメモリ１０２０にロードすることができる。本原理の例示的な実施形態によれば、プロセッサ１０１０、メモリ１０２０、記憶装置１０４０およびエンコーダ／デコーダモジュール１０３０のうちの１つまたは複数は、本明細書で上記で論じられるプロセスの実行の間、様々なアイテムのうちの１つまたは複数を格納することができ、これらに限定されないが、基層入力映像、強化層入力映像、方程式、公式、行列、変数、動作および動作論理を含む。
【０１１９】
また、システム１０００は、通信チャネル１０６０を介して他のデバイスとの通信を可能にする通信インタフェース１０５０も含み得る。通信インタフェース１０５０は、これらに限定されないが、通信チャネル１０６０からデータを送信および受信するように構成されたトランシーバを含み得る。通信インタフェースは、これらに限定されないが、モデムまたはネットワークカードを含み得、通信チャネルは、有線および／または無線媒体内で実装することができる。システム１０００の様々なコンポーネントは、これらに限定されないが、内部バス、ワイヤおよびプリント回路基板を含む様々な適切な接続を使用して、共に、接続または通信可能に結合することができる。
【０１２０】
本原理による例示的な実施形態は、プロセッサ１０１０によって実装されるコンピュータソフトウェアによって、ハードウェアによってまたはハードウェアとソフトウェアの組合せによって実行することができる。非限定的な例として、本原理による例示的な実施形態は、１つまたは複数の集積回路によって実装することができる。メモリ１０２０は、技術環境に適切ないかなるタイプのものでもあり得、非限定的な例として、光メモリデバイス、磁気メモリデバイス、半導体ベースのメモリデバイス、固定メモリおよび取り外し可能メモリなど、任意の適切なデータ格納置技術を使用して実装することができる。プロセッサ１０１０は、技術環境に適切ないかなるタイプのものでもあり得、非限定的な例として、マイクロプロセッサ、汎用コンピュータ、専用コンピュータおよびマルチコアアーキテクチャに基づくプロセッサのうちの１つまたは複数を包含し得る。
【０１２１】
本明細書で説明される実装は、例えば、方法もしくはプロセス、装置、ソフトウェアプログラム、データストリーム、または、信号で実装することができる。実装の単一の形態の文脈においてのみ論じられる（例えば、方法としてのみ論じられる）場合であっても、論じられる特徴の実装は、他の形態（例えば、装置またはプログラム）でも実装することができる。装置は、例えば、適切なハードウェア、ソフトウェアおよびファームウェアで実装することができる。方法は、例えば、コンピュータ、マイクロプロセッサ、集積回路またはプログラマブル論理デバイスを含む、例えば、一般に処理デバイスを指す装置（例えば、プロセッサなど）で実装することができる。また、プロセッサは、例えば、コンピュータ、携帯電話、ポータブル／携帯情報端末（「ＰＤＡ」）、および、エンドユーザ間の情報の通信を容易にする他のデバイスなどの通信デバイスも含む。
【０１２２】
本原理の「一実施形態」、「実施形態」、「一実装」または「実装」およびその他の変形形態への言及は、実施形態と関係して説明される特定の特徴、構造、特性などを本原理少なくとも１つの実施形態に含めることができることを意味する。従って、本明細書全体を通じて様々な場所に現れる「一実施形態では」、「実施形態では」、「一実装では」または「実装では」という記載および他の任意の変形形態の出現は、必ずしもすべてが同じ実施形態を指すとは限らない。
【０１２３】
それに加えて、この出願またはその請求項は、様々な情報片を「決定する」ことについて言及し得る。情報を決定することは、例えば、情報を推定すること、情報を計算すること、情報を予測すること、または、メモリから情報を回収することのうちの１つまたは複数を含み得る。
【０１２４】
さらに、この出願またはその請求項は、様々な情報片に「アクセスすること」について言及し得る。情報にアクセスすることは、例えば、情報を受信すること、情報を回収すること（例えば、メモリから）、情報を格納すること、情報を処理すること、情報を送信すること、情報を移動すること、情報をコピーすること、情報を消去すること、情報を計算すること、情報を決定すること、情報を予測すること、または、情報を推定することのうちの１つまたは複数を含み得る。
【０１２５】
それに加えて、この出願またはその請求項は、様々な情報片を「受信すること」について言及し得る。受信することは、「アクセスすること」と同様に、幅広い用語であることを意図する。情報を受信することは、例えば、情報にアクセスすること、または、情報を回収すること（例えば、メモリから）のうちの１つまたは複数を含み得る。さらに、「受信すること」は、典型的には、例えば、情報を格納すること、情報を処理すること、情報を送信すること、情報を移動すること、情報をコピーすること、情報を消去すること、情報を計算すること、情報を決定すること、情報を予測すること、または、情報を推定することなどの動作の間に、いろいろな方法で関与する。
【０１２６】
当業者には明らかであるように、実装は、例えば、格納または送信することができる、情報を伝えるようにフォーマットされた様々な信号を生成することができる。情報は、例えば、方法を実行するための命令、または、説明される実装のうちの１つによって生成されたデータを含み得る。例えば、信号は、説明される実施形態のビットストリームを伝えるようにフォーマットすることができる。そのような信号は、例えば、電磁波として（例えば、スペクトルの高周波部分を使用して）またはベースバンド信号としてフォーマットすることができる。フォーマットすることは、例えば、データストリームを符号化すること、および、符号化済みのデータストリームで搬送波を変調することを含み得る。信号が伝える情報は、例えば、アナログまたはデジタル情報であり得る。信号は、知られているように、様々な異なる有線または無線リンク上で送信することができる。信号は、プロセッサ可読媒体上に格納することができる。
【図１】
2019521571.tif 000042
【図２】
2019521571.tif 000043
【図３】
2019521571.tif 000044
【図４Ａ】
2019521571.tif 000045
【図４Ｂ】
2019521571.tif 000046
【図４Ｃ】
2019521571.tif 000047
【図４Ｄ】
2019521571.tif 000048
【図５】
2019521571.tif 000049
【図６】
2019521571.tif 000050
【図７】
2019521571.tif 000051
【図８Ａ】
2019521571.tif 000052
【図８Ｂ】
2019521571.tif 000053
【図９】
2019521571.tif 000054
【図１０】
2019521571.tif 000055
【国際調査報告】
2019521571.tif 000056
2019521571.tif 000057
2019521571.tif 000058
2019521571.tif 000059
2019521571.tif 000060
2019521571.tif 000061