(57)【要約】  本発明は、パーティションに分割されている少なくとも1個の画像を符号化するための方法であって、符号化されている現在のパーティションが、その少なくとも10から1を差し引いた数のデータ項目に符号が割り振られたデータを含む、符号化するための方法に関する。そのような符号化方法は、前記現在のパーティションに関して、以下のステップ、すなわち、前記符号を除いて、前記現在のパーティションのデータを表す関数の値を計算するステップ(S3)と、前記計算された値を前記符号の所定の値と比較するステップ(S4)と、比較する前記ステップの結果に基づいて、現在のパーティションのデータ項目のうちの前記少なくとも1つを修正する(S5)または修正しないステップと、修正するステップの場合、前記少なくとも1個の修正されたデータ項目を符号化するステップ(S20)とを実施することを特徴とする。
2014534764.tif 000002
【特許請求の範囲】
【請求項１】
パーティションに分割された少なくとも1個の画像を符号化するための方法であって、符号化されることになる現在のパーティション(Bi)が、その少なくとも1個のデータ項目に符号が割り振られたデータを含み、
前記符号化方法が、前記現在のパーティションに関して、以下のステップ、すなわち
前記符号を除いて、前記現在のパーティションの前記データを表す関数の値を計算するステップ(S3)と、
前記計算された値を前記符号の所定の値と比較するステップ(S4)と、
前記比較するステップの結果に応じて、前記現在のパーティションの前記データのうちの少なくとも1つを修正する(S5)または修正しないステップと、
前記修正するステップの場合、前記少なくとも1個の修正されたデータ項目を符号化するステップ(S20)と
を実施することを特徴とする符号化方法。
【請求項２】
前記比較するステップの過程で複数の(N個の)符号が考慮される場合、前記比較するステップが、前記現在のパーティションの前記データを表す前記関数の前記計算された値を前記複数の符号を表す関数の値と比較するステップにある、請求項1に記載の符号化方法。
【請求項３】
パーティションに分割された少なくとも1個の画像を符号化するためのデバイス(CO)であって、符号化されることになる現在のパーティションが、その少なくとも1個のデータ項目に符号が割り振られたデータを含み、
前記デバイスが、符号化されることになる前記現在のパーティションに関して、
前記符号を除いて、前記現在のパーティションの前記データを表す関数の値を計算することと、
前記計算された値を前記符号の所定の値と比較することと、
前記比較することの結果に応じて、前記現在のパーティションの前記データのうちの少なくとも1つを修正するまたは修正しないこと
が可能な処理手段(MTR_CO)を備えること、および
前記処理手段によって前記修正を行う場合、前記少なくとも1個の修正されたデータ項目を符号化するための手段(CE_CO)を備えることを特徴とする
デバイス。
【請求項４】
予め符号化されている、パーティションに分割された少なくとも1個の画像を表すデータ信号を復号するための方法であって、復号されることになる現在のパーティション(Bi)が、その少なくとも1個のデータ項目に符号が割り振られたデータを含み、
前記復号方法が、前記現在のパーティションに関して、以下のステップ、すなわち、
前記符号を除いて、前記現在のパーティションの前記データを復号するステップ(SD2、SD3)と、
前記現在のパーティションの前記復号されたデータを表す関数の値を計算するステップ(SD4)と、
前記計算された値に基づいて、前記符号の値を取得するステップと
を含むことを特徴とする復号方法。
【請求項５】
前記計算された値に基づいて、複数の(N個の)符号とそれぞれ関連付けられた複数の値が取得される、請求項4に記載の復号方法。
【請求項６】
予め符号化されている、パーティションに分割された少なくとも1個の画像を表すデータ信号を復号するためのデバイス(DO)であって、復号されることになる現在のパーティションが、その少なくとも1個のデータ項目に符号が割り振られたデータを含み、
前記復号デバイスが、復号されることになる前記現在のパーティションに関して、
前記符号を除いて、前記現在のパーティションの前記データを復号することと、
前記現在のパーティションの前記復号されたデータを表す関数の値を計算することと、
前記計算された値に基づいて、前記符号の値を取得することと
が可能な処理手段(MTR_DO)を備えることを特徴とする
デバイス。
【請求項７】
前記符号化方法がコンピュータ上で実行されるとき、請求項1または2に記載の符号化方法を実施するための命令を備えたコンピュータプログラム。
【請求項８】
前記復号方法がコンピュータ上で実行されるとき、請求項4または5に記載の復号方法を実施するための命令を備えたコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般に、画像の処理の分野に関し、より正確には、デジタル画像およびデジタル画像のシーケンスの符号化および復号に関する。
【０００２】
本発明は、したがって、詳細には、現在のビデオコーダ(MPEG、H.264など)の形で実施されるビデオ符号化、または次のビデオコーダ(ITU-T/VCEG、H.265)もしくはISO/MPEG(HEVC)に適用可能である。
【背景技術】
【０００３】
現在のビデオコーダ(MPEG、H.264など)はビデオシーケンスのブロックごとの(block-wise)表現を使用する。画像は、マクロブロックに分割され、それぞれのマクロブロック自体がブロックに分割され、それぞれのブロック、すなわち、マクロブロックは、画像内予測または画像間予測によって符号化される。したがって、当業者によって知られている動き補償を用いて、1つまたは複数の符号化-復号された基準画像に関して、ある種の画像は空間予測(イントラ予測)によって符号化されるのに対して、他の画像は時間予測(インター予測)によって符号化される。
【０００４】
それぞれのブロックに関して、予測によって減少された元のブロックに対応する、予測残差とも呼ばれる残差ブロックが符号化される。残差ブロックは、離散コサイン変換(DCT)タイプの変換によって変換され、次いで、例えば、スカラタイプの量子化を用いて量子化される。その一部は正であり、その他は負である係数が、量子化ステップの完了時に取得される。これらの係数は、その後、読みの順に、通常、(JPEG標準の場合にように)ジグザグでトラバースされ(traverse)、それによって、高い頻度でかなりの数のゼロ係数を利用することを可能にする。前述のトラバーサル(traversal)が完了するとすぐに、「量子化残差」と呼ばれることになる、係数の一次元リストが取得される。このリストの係数は、次いで、エントロピー符号化によって符号化される。
【０００５】
エントロピー符号化(例えば、算術符号化またはハフマン符号化タイプ)が以下の様式で実行される:
このリストの最後の非ゼロ係数の位置を示すために、情報の項目がエントロピー的に符号化される、
最後の非ゼロ係数の前に位置するそれぞれの係数に関して、その係数がゼロであるか、またはゼロでないかを示すために、情報の項目がエントロピー的に符号化される、
それぞれの先に示された非ゼロ係数に関して、係数が1であるか、または1に等しくないかを示すために、情報の項目がエントロピー的に符号化される、
最後の非ゼロ係数の前に位置する、1に等しくない、それぞれの非ゼロ係数に関して、情報の振幅項目(2だけ減少された係数の絶対値)がエントロピー的に符号化される、
それぞれの非ゼロ係数に関して、その非ゼロ係数に割り振られた符号が(+符号に関して)「0」または(-符号に関して)「1」によって符号化される。
【０００６】
例えば、H.264技法によれば、マクロブロックがブロックに分割されるとき、それぞれのブロックに対応するデータ信号がデコーダに送信される。そのような信号は、以下を含む。
前述のリスト内に含まれた量子化残差、
使用された符号化のモードを表す情報、具体的には、
予測のモード(イントラ予測、インター予測、それに関する情報の項目がデコーダに送信されない予測を実行するデフォルト予測(「スキップ」)、
予測のタイプを指定する情報(配向、基準画像など)、
パーティションのタイプ、
変換のタイプ、例えば、4×4DCT、8×8DCTなど、
必要に応じて、動き情報、
など。
【０００７】
復号は画像ごとに行われ、それぞれの画像に関して、マクロブロックごとに行われる。マクロブロックのそれぞれのパーティションに対して、ストリームの対応する要素が読み取られる。復号された予測残差を生み出すために、ブロックの係数の逆量子化および逆変換が実行される。次に、パーティションの予測が計算され、その予測を復号された予測残差に加えることによって、パーティションが再構築される。
【０００８】
H.264標準で実施されるような、競合によるイントラ符号化またはインター符号化は、したがって、最良のモード、すなわち、所定の性能基準、例えば当業者によく知られているビットレート/歪みコストに従って検討されるパーティションの符号化を最適化することになる最良のモードを選択するための競合を起こさせる、前述の項目など、符号化情報の様々な項目に依存する。
【０００９】
選択された符号化モードを表す情報は、コーダによってデコーダに送信されるデータ信号内に含まれる。したがって、デコーダは、コーダにおいて選択された符号化のモードを識別し、次いで、このモードに従って予測を適用することができる。
【００１０】
文書「Data Hiding of Motion Information in Chroma and Luma Samples for Video Compression」、J.-M. Thiesse、J. JungおよびM. Antonini、International workshop on multimedia signal processing、2011年では、ビデオ圧縮の過程で実施されるデータ隠蔽方法が提示されている。
【００１１】
より正確には、デコーダに送信されることになる信号内を含めて、送信されることになる複数の競合指数から生じるなど、少なくとも1つの競合指数を回避することが提案される。そのような指数は、例えば、インターモードで予測されるブロックに関して使用される動きベクトル予測器を識別するのを可能にする情報の項目を表す指数MVCompである。0または1に等しくてよい、そのような指数は、符号化されたデータ信号内に直接記入され(inscribe)ず、量子化残差の係数の和のパリティによって移送される。量子化残差のパリティと指数MVCompとの間の関連性が生み出される。例として、量子化残差の偶数値は値0の指数MVCompと関連付けられるのに対して、量子化残差の奇数値は値1の指数MVCompと関連付けられる。2つの事例が発生しうる。第1の事例では、量子化残差のパリティが送信されることが所望される指数MVCompのパリティに既に対応する場合、量子化残差は従来の様式で符号化される。第2の事例では、量子化残差のパリティが送信されることが所望される指数MVCompのパリティとは異なる場合、そのパリティが指数MVCompのパリティと同じになるように、量子化残差の修正が行われる。そのような修正は、奇数値(例えば、+1、-1、+3、-3、+5、-5など)だけ量子化残差の1つまたは複数の係数を増分または減分して、所定の基準、この事例では、前述のビットレート-歪みコストを最適化する修正だけを保持することにある。
【００１２】
デコーダにおいて、指数MVCompは信号から読み取られない。デコーダは、単に、残差を従来の様式で判断して済ませる。この残差の値が偶数である場合、指数MVCompは0に設定される。この残差の値が奇数である場合、指数MVCompは1に設定される。
【００１３】
まさに提示された技法によれば、修正を受ける係数は、必ずしも最適な様式で選択されるとは限らず、その結果、適用される修正はデコーダに送信される信号内に妨害を生じさせる。そのような妨害は、当然、ビデオ圧縮の効果に有害である。
【００１４】
さらに、指数MVCompが0または1に等しい確率は等しくないため、この指数は隠蔽されることになる情報の最も有益な項目を構成しない。その結果として、この指数がエントロピー符号化によって従来の様式で符号化された場合、この指数は、デコーダに送信されることになる圧縮ファイル内で、送信される指数MVCompごとに1ビット未満の数のデータによって表されることになる。その結果として、指数MVCompが量子化残差のパリティ内で送信される場合、このように保存されたデータの量は指数MVComp当たり1ビット未満であり、一方、残差のパリティは指数当たり1ビットの情報の項目を転送することを可能にできる。
【００１５】
その結果として、シグナリングコストの削減、ならびに、圧縮の効果は最適ではない。
【発明の概要】
【発明が解決しようとする課題】
【００１６】
本発明の目的のうちの1つは、前述の先行技術の欠陥を改善することである。
【課題を解決するための手段】
【００１７】
このために、本発明の主題は、パーティションに分割された少なくとも1個の画像を符号化するための方法であって、符号化されることになる現在のパーティションが、その少なくとも1個のデータ項目に符号が割り振られたデータを含む方法に関する。
【００１８】
本発明の方法は、前述の現在のパーティションに関して、以下のステップ、すなわち、
符号を除いて、前記現在のパーティションのデータを表す関数の値を計算するステップと、
計算された値を符号の所定の値と比較するステップと、
比較するステップの結果に応じて、現在のパーティションのデータのうちの少なくとも1つを修正するまたは修正しないステップと、
修正するステップの場合、少なくとも1個の修正されたデータ項目を符号化するステップと
を実施するという点で注目すべきである。
【００１９】
そのような構成は、符号化されることになるパーティションのデータの符号にデータ隠蔽技法を有利に適用することを可能にする。正または負の符号が出現する確率が等しいことにより、符号は、実際には、特に隠蔽に関連する情報の項目である。したがって、符号が必然的にビットに関して符号化されることを考えると、これにより、情報のこの項目を隠蔽することによって、デコーダに送信されることになる信号内で1個のビットを節約し、これによって、実質的にシグナリングコストを削減することが可能である。
【００２０】
画像データ項目に関連する情報(符号、振幅など)のうち、ごく少数の確率が等しいことに留意されたい。符号は情報の確率が等しい項目であり、したがって、このタイプの情報の項目を隠蔽し、それによって、圧縮性能を高めることを可能にすることに特定の利益が存在する。
【００２１】
前述の比較するステップの過程で複数の符号が考慮される特定の実施形態では、この比較するステップは、現在のパーティションのデータを表す関数の計算された値を複数の符号を表す関数の値と比較することにある。
【００２２】
そのような構成は、デコーダに送信されることになる信号内にいくつかの符号を隠蔽するのを可能にするため、シグナリングコストの削減を最適化しながら、算術コーダの圧縮性能を最適化にするのを可能にする。
【００２３】
相関的に、本発明は、パーティションに分割された少なくとも1個の画像を符号化するためのデバイスであって、符号化されることになる現在のパーティションが、その少なくとも1個のデータ項目に符号が割り振られたデータを含むデバイスに関する。
【００２４】
そのような符号化デバイスは、符号化される現在のパーティションに関して、
符号を除いて、現在のパーティションのデータを表す関数の値を計算することと、
計算された値を符号の所定の値と比較することと、
比較することの結果に応じて、現在のパーティションのデータのうちの少なくとも1つを修正するまたは修正しないことと
が可能である処理手段を備え、
その処理手段によって修正を行う場合、少なくとも1個の修正されたデータ項目を符号化するための手段を備えるという点で注目すべきである。
【００２５】
対応する様式で、本発明は、やはり、予め符号化されている、パーティションに分割された少なくとも1個の画像を表すデータ信号を復号するための方法であって、復号されることになる現在のパーティションが、その少なくとも1個のデータ項目に符号が割り振られたデータを含む、復号するための方法に関する。
【００２６】
そのような復号方法は、現在のパーティションに関して、以下のステップ、すなわち、
符号を除いて、現在のパーティションのデータを復号するステップと、
現在のパーティションの復号されたデータを表す関数の値を計算するステップと、
計算された値に基づいて、符号の値を取得するステップと
を含むという点で注目すべきである。
【００２７】
ある特定の実施形態では、計算された値に基づいて、複数の符号とそれぞれ関連付けられた複数の値が取得される。
【００２８】
相関的に、本発明は、予め符号化されている、パーティションに分割された少なくとも1個の画像を表すデータ信号を復号するためのデバイスであって、復号されることになる現在のパーティションが、その少なくとも1個のデータ項目に符号が割り振られたデータを含む、デバイスに関する。
【００２９】
そのような復号デバイスは、復号されることになる現在のパーティションに関して、
符号を除いて、現在のパーティションのデータを復号することと、
現在のパーティションの復号されたデータを表す関数の値を計算することと、
計算された値に基づいて、符号の値を取得することと
が可能な処理手段を備えるという点で注目すべきである。
【００３０】
本発明は、プログラムがコンピュータによって実行されたとき、以上の符号化方法または復号方法のステップを実行するための命令を備えたコンピュータプログラムも目的とする。
【００３１】
そのようなプログラムは、任意のプログラミング言語を使用することが可能であり、ソースコード、オブジェクトコード、または部分的にコンパイルされた形式、または何らかのその他の望ましい形式など、ソースコードとオブジェクトコードとの間の中間コードの形式を使用することが可能である。
【００３２】
本発明のさらに別の主題は、コンピュータによって読み取り可能であり、かつ上記の命令など、コンピュータプログラム用の命令を備えた記録媒体も目的とする。
【００３３】
記録媒体は、プログラムを記憶することが可能な何らかのエンティティまたはデバイスであってよい。例えば、そのような媒体は、ROM、例えば、CD ROMもしくは超小型電子回路ROMなどの記憶手段、または、磁気記録手段、例えば、ディスケット(フロッピー（登録商標）ディスク)もしくはハードディスクを含むことが可能である。
【００３４】
さらに、そのような記録媒体は、電気ケーブルもしくは光ケーブルを介して、無線手段もしくはその他の手段によって伝達可能な、電気信号または光信号など、伝送可能媒体であってよい。本発明によるプログラムは、具体的には、インターネットタイプのネットワークからダウンロード可能である。
【００３５】
あるいは、そのような記録媒体は、プログラムが組み込まれた集積回路であってよく、この回路は、問題の方法を実行するように、または問題の方法を実行する際に使用されるように適合される。
【００３６】
符号化デバイス、復号方法、復号デバイス、および前述のコンピュータプログラムは、本発明による符号化方法によって与えられる利点と少なくとも同じ利点を示す。
【００３７】
図面を参照して説明される2つの好ましい実施形態を読むとすぐに、その他の特徴および利点が明らかになるであろう。
【図面の簡単な説明】
【００３８】
【図１】本発明による符号化方法の一般的なステップを表す図である。
【図２】図1の符号化方法のステップを実行することが可能な、本発明による符号化デバイスを表す図である。
【図３】本発明による符号化方法のある特定の実施形態を表す図である。
【図４】本発明による符号化デバイスのある特定の実施形態を表す図である。
【図５】本発明による復号方法の一般的なステップを表す図である。
【図６】図5の復号方法のステップを実行することが可能な、本発明によるある復号デバイスを表す図である。
【図７】本発明による復号方法のある特定の実施形態を表す図である。
【図８】本発明による復号デバイスのある特定の実施形態を表す図である。
【発明を実施するための形態】
【００３９】
符号化部分の詳細な説明
H.264/MPEG-4 AVC標準による符号化によって取得されるバイナリストリームに近いバイナリストリームに従って、画像のシーケンスを符号化するために、本発明による符号化方法が使用される、本発明の一般的な実施形態が次に説明される。本実施形態では、本発明による符号化方法は、例えば、H.264/MPEG-4 AVC標準に当初準拠するコーダを修正することによってソフトウェア様式またはハードウェア様式で実施される。
【００４０】
本発明による符号化方法は、図1に表されるステップS1からS40を含むアルゴリズムの形で表される。
【００４１】
本発明の実施形態によれば、本発明による符号化方法は、その実施形態が図2に表される符号化デバイス内、すなわち、コーダCO内で実施される。
【００４２】
本発明によれば、符号化プロパー(coding proper)に先立って、図2に表されるように、符号化されることになる画像のシーケンスの画像IEの複数Z個のパーティションB1、B2、…、Bi、…、BZへの分割が所定の順序で行われる。
【００４３】
本発明の意味内で「パーティション」という用語は符号化単位を表すことに留意されたい。符号化単位という専門用語は、具体的には、現在、公式化されているHEVC/H.265標準、例えば、以下のインターネットアドレスでアクセス可能な文書で使用される。
http://phenix.int-evry.fr/jct/doc_end_user/current_document.php?id=3286.
【００４４】
具体的には、そのような符号化単位は、ブロックとも呼ばれる矩形または方形の画素のセット、マクロブロック、あるいはその他の幾何学的形を示す画素のセットを一緒にグループ化する。
【００４５】
図2に表される例では、前記パーティションは、方形を有し、すべて同じサイズを有するブロックである。必ずしも複数のブロックサイズであるとは限らない、画像のサイズに応じて、左の最後のブロックおよび底部の最後のブロックは方形でない場合がある。ある代替の実施形態では、ブロックは、例えば、矩形サイズであってよく、かつ/または互いと位置合わせされなくてよい。
【００４６】
それぞれのブロックまたはマクロブロック自体を、さらに、それ自体、再分割可能なサブブロックに分割することが可能である。
【００４７】
そのような分割は、例えば、それ自体がよく知られているパーティションアルゴリズムを使用する、図2に表されるパーティションモジュールPCOによって実行される。
【００４８】
前記分割ステップの後に、前記画像IEの現在のパーティションBi(iは、1≦i≦Zになるような整数である)のそれぞれの符号化が行われる。
【００４９】
図2に表される例では、そのような符号化は、現在の画像IEのブロックB1からBZのそれぞれに連続的に適用される。これらのブロックは、例えば、当業者によく知られている「ラスタースキャン」トラバーサルなどのトラバーサルに従って符号化される。
【００５０】
本発明による符号化は、図2に表されるようなコーダCOの符号化ソフトウェアモジュールMC_CO内で実施される。
【００５１】
図1に表されたステップS1の過程で、図2の符号化モジュールMC_COは、現在のブロックBiとして、現在の画像IEの符号化されることになる第1のブロックB1を選択する。図2に表されるように、これは画像IEの第1の左のブロックである。
【００５２】
図1に表されたステップS2の過程で、リストD1=(a1、a2、…、aP)の形で現在のブロックB1のデータの抽出が行われる。そのような抽出は、図2に表されるようなソフトウェアモジュールEX_COによって実行される。そのようなデータは、例えば、画素データ、すなわち、それぞれに正の符号、または負の符号が割り当てられている非ゼロ画素データである。
【００５３】
リストD1のデータのそれぞれは、エントロピー符号化を受けることが意図される、デジタル情報の様々な項目と関連付けられる。これらの項目など、デジタル情報の項目は、以下で、例として説明される:
リストD1の最後の非ゼロデータ項目の前に位置するそれぞれのデータ項目に関して、ビットなど、情報のデジタル項目は、そのデータ項目がゼロであるか、またはゼロでないかを示すために、エントロピー的に符号化されることが意図され、データ項目がゼロである場合、それは、例えば、符号化されることになる、値0のビットであるのに対して、データ項目が非ゼロである場合、それは符号化されることになる、値1のビットである、
それぞれの非ゼロデータ項目に関して、ビットなど、情報のデジタル項目は、データ項目の絶対値が1に等しいか、または1に等しくないかを示すために、エントロピー的に符号化されることが意図され、絶対値が1に等しい場合、それは、例えば、符号化されることになる、値1のビットであり、絶対値が1に等しくない場合、それは、符号化されることになる、値0のビットである、
その絶対値が1に等しくなく、かつ最後の非ゼロデータ項目の前に位置する、それぞれの非ゼロデータ項目に関して、情報の振幅項目がエントロピー的に符号化される、
それぞれの非ゼロデータ項目に関して、その非ゼロデータ項目に割り振られた符号が、例えば、(+符号の場合)「0」または(-符号の場合)「1」に設定されたビットなど、情報のデジタル項目によって符号化される。
【００５４】
図1を参照して、本発明による特定の符号化ステップが次に説明される。
【００５５】
本発明によれば、リストD1の前記データのうちの1つの少なくとも1個の符号をエントロピー的に符号化することを回避することが決定される。
【００５６】
好ましい実施形態によれば、隠蔽されることが意図されるのは第1の非ゼロデータ項目の符号である。そのような符号は、例えば、正であり、例えば、データ項目a2など、第1の非ゼロデータ項目に割り振られる。
【００５７】
図1に表されるステップS3の過程で、処理モジュールMTR_COは、リストD1のデータを表す関数fの値を計算する。
【００５８】
単一の符号がデコーダに送信されることになる信号内に隠蔽されることが意図される、好ましい実施形態では、この関数fはリストD1のデータの和のパリティである。
【００５９】
図1に表されるステップS4の過程で、処理モジュールMTR_COは、コーダCOにおいて予め定義された規約によって、隠蔽されることになる符号の値のパリティがリストD1のデータの和のパリティに対応するかどうかを検証する。
【００６０】
提案される例では、前記規約は、正の符号が0に等しい値のビットと関連付けられるのに対して、負の符号は1に等しい値のビットと関連付けられるというものである。
【００６１】
本発明によるコーダCOで採用される規約に従って、符号が正であり、それによって、ゼロ符号化ビット値に対応する場合、かつリストD1のデータの和が偶数である場合、第1の非ゼロデータ項目a2の符号を除いて、前述のリストD1のデータのエントロピー符号化のステップS20が行われる。そのようなステップS20は図1に表される。
【００６２】
本発明によるコーダCOで採用される規約にさらに従って、符号が負であり、それによって、1の符号化ビット値に対応する場合、かつリストD1のデータの和が奇数である場合、第1の非ゼロデータ項目a2の符号を除いて、前述のリストD1のデータのエントロピー符号化のステップS20がやはり行われる。
【００６３】
本発明によるコーダCOで採用される規約に従って、符号が正であり、それによって、ゼロ符号化ビット値に対応する場合、かつリストD1のデータの和が奇数である場合、図1に表されるステップS5の過程で、リストD1の少なくとも1個の修正可能なデータ項目の修正が行われる。
【００６４】
本発明によるコーダCOで採用される規約にさらに従って、符号が負であり、それによって、1の符号化ビット値に対応する場合、かつリストD1のデータの和が偶数である場合、リストD1の少なくとも1個の修正可能なデータ項目の修正のステップS5がやはり行われる。
【００６５】
本発明によれば、その修正されたデータ項目がデコーダによって処理されると、その値の修正がデコーダにおいて何の脱同期も引き起こさない場合、データ項目は修正可能である。したがって、処理モジュールMTR_COは、当初、以下を修正しないように構成される:
デコーダが隠蔽された符号の値をこのまたはこれらのゼロデータに割り振らないように、ゼロデータ項目、すなわち、第1の非ゼロデータ項目の前に位置するデータ、
および、計算の複雑さのため、ゼロデータ項目、すなわち、最後の非ゼロデータ項目の後に位置するデータ。
【００６６】
そのような修正動作は、図2の処理モジュールMTR_COによって実行される。
【００６７】
提案される例示的な実施形態では、リストD1のデータの総和は5に等しく、したがって、奇数であると仮定する。その結果、デコーダは、コーダCOがこのデータ項目をデコーダに送信する必要なしに、第1の非ゼロデータ項目a2に割り振られた正の符号を再構築することができるように、和のパリティは偶数になる必要がある。その結果として、処理モジュールMTR_COは、前記ステップS5の過程で、すべてデータの和のパリティを変更することを目的として、リストD1のデータの様々な修正をテストする。好ましい実施形態では、それぞれの修正可能なデータ項目に対する+1または-1の加算と、所定の基準に従って、実行されたすべての修正からある修正の選択とが行われる。
【００６８】
ステップS5の完了時に、修正されたリストDm1=(a'1、a'2、…、a'P)が次いで取得される。
【００６９】
このステップの過程で、ある種の修正は禁じられることに留意されたい。したがって、第1の非ゼロデータ項目が+1に等しい場合、その非ゼロデータ項目に-1を加算することは可能でなくなるが、これは非ゼロデータ項目がゼロになり、その場合、そのリストD1の第1の非ゼロデータ項目のその特性を失うことになるためである。デコーダは、次いで、その後、(データの和のパリティを計算することによって)復号された符号を別のデータ項目に割り振ったことになり、その場合、復号誤りが存在することになる。
【００７０】
その後、データの和のパリティ内に隠蔽された、第1の非ゼロデータ項目a2の正の符号を除いて、前述のリストDm1のデータのエントロピー符号化のステップS20が行われる。
【００７１】
以上で説明されたように、符号化されない第1の非ゼロデータ項目の符号を除いて、リストD1または修正されたリストDm1のデータの振幅のセットが符号のセットの前に符号化されることに留意されたい。
【００７２】
図1に表される以下のステップS30の過程で、図2の符号化モジュールMC_COは、符号化された現在のブロックが画像IEの最後のブロックであるかどうかをテストする。
【００７３】
現在のブロックが画像IEの最後のブロックである場合、図1に表されるステップS40の過程で符号化方法は終了する。
【００７４】
そうでない場合、次いで、1≦i≦Zについて、ステップS1からS20を反復することによって、前述のラスタースキャン順序のトラバーサルに従って符号化される次のブロックBiの選択が行われる。
【００７５】
すべてのブロックB1からBZのエントロピー符号化が実行されると、前記符号化されたブロックをバイナリ形式で表す信号Fの構築が行われる。
【００７６】
バイナリ信号Fの構築は、図2に表されるように、ストリーム構築ソフトウェアモジュールCF内で実施される。
【００７７】
ストリームFは、その後、通信ネットワーク(図示せず)によって遠隔端末に送信される。遠隔端末は、後の説明でより詳細に説明されるデコーダを備える。
【００７８】
主に図1を参照して、本発明の別の実施形態が次に説明される。
【００７９】
この別の実施形態は、Nである、隠蔽されることになる符号の数によってだけ、先の実施形態と区別され、NはN≧2になるような整数である。
【００８０】
このために、関数fはリストD1のデータの和の剰余モジュロ2Nである。提案されるこの例では、N=2であり、隠蔽されることになる2個の符号は、リストD1の第1の2個の非ゼロデータ、例えば、a2およびa3の第1の2個の符号であると仮定される。
【００８１】
図1で表されるステップS4の過程で、処理モジュールMTR_COは、N個の符号の構成、すなわち、2N個の可能な構成がリストD1のデータの和の剰余モジュロ2Nの値に対応するかどうかを検証する。
【００８２】
N=2である、提案される例では、符号の22=4個の異なる構成が存在する。
【００８３】
これらの4個の構成は、コーダCOにおいて、例えば、以下の様式で判断された規約に従う:
0に等しい剰余は2個の連続する正の符号、すなわち、+、+に対応する、
1に等しい剰余は連続する正の符号および負の符号、すなわち、+、-に対応する、
2に等しい剰余は連続する負の符号および正の符号、すなわち、-、+に対応する、
3に等しい剰余は2個の連続する負の符号、すなわち、-、-に対応する。
【００８４】
N個の符号の構成がリストD1のデータの和の剰余モジュロ2Nの値に対応する場合、リストD1のデータの和モジュロ2Nのパリティ内に隠蔽された、第1の2個の非ゼロデータa2およびa3のそれぞれの符号を除いて、前述のリストD1のデータのエントロピー符号化のステップS20が行われる。
【００８５】
そうでない場合、リストD1の少なくとも1個の修正可能なデータ項目の修正のステップS5が行われる。そのような修正は、リストD1の修正可能なデータの和の剰余モジュロ2Nが隠蔽されることになる2個の符号のそれぞれの値に達するように、図2の処理モジュールMTR_COによって実行される。
【００８６】
修正されたリストDm1=(a'1、a'2、…、a'P)が次いで取得される。
【００８７】
その後、データの和モジュロ2Nのパリティ内に隠蔽された、第1の非ゼロデータ項目a2の符号および第2の非ゼロデータ項目a3の符号を除いて、前述のリストDm1のデータのエントロピー符号化のステップS20が実行される。
【００８８】
H.264/MPEG-4 AVC標準による符号化によって取得されるバイナリストリームに近いバイナリストリームに従って、画像のシーケンスを符号化するために、本発明による符号化方法が依然として使用される、本発明のある特定の実施形態が次に説明される。本実施形態では、本発明による符号化方法は、例えば、H.264/MPEG-4 AVC標準に当初準拠するコーダを修正することによってソフトウェア様式またはハードウェア様式で実施される。
【００８９】
本発明による符号化方法は、図3に表されるような、ステップC1からC40を含むアルゴリズムの形で表される。
【００９０】
本発明の実施形態によれば、符号化方法は、ある実施形態が図4に表される符号化デバイス内、すなわち、コーダCO1内で実施される。
【００９１】
本発明によれば、先の例で説明されたように、符号化プロパーに先立って、図4に表されるように、符号化されることになる画像のシーケンスの画像IEの複数Z個のパーティションB'1、B'2、…、B'i、…、B'Zへの分割が所定の順序で行われる。
【００９２】
図4に表される例では、前記パーティションは、方形を有し、すべて同じサイズを有するブロックである。必ずしも複数のブロックサイズであるとは限らない、画像のサイズに応じて、左の最後のブロックおよび底部の最後のブロックは方形でない場合がある。ある代替の実施形態では、これらのブロックは、例えば、矩形サイズのものであってよく、かつ/または互いと位置合わせされなくてよい。
【００９３】
それぞれのブロックまたはマクロブロック自体を、さらに、それ自体、再分割可能なサブブロックに分割することが可能である。
【００９４】
そのような分割は、図2に表されたパーティションモジュールPCOと同一の、図4に表されるパーティションソフトウェアモジュールPCO1によって実行される。
【００９５】
前記分割ステップの後に、前記画像IEの現在のパーティションB'i(iは1≦i≦Zになるような整数である)のそれぞれの符号化が行われる。
【００９６】
図4に表される例では、そのような符号化は、現在の画像IEのブロックB'1からB'Zのそれぞれに連続的に適用される。これらのブロックは、例えば、当業者によく知られている「ラスタースキャン」トラバーサルなどのトラバーサルに従って符号化される。
【００９７】
本発明による符号化は、図4に表されるようなコーダCO1の符号化ソフトウェアモジュールMC_CO1内で実施される。
【００９８】
図3に表されるステップC1の過程で、図4の符号化モジュールMC_CO1は、現在のブロックB'iとして、現在の画像IEの符号化されることになる第1のブロックB'1を選択する。図4に表されるように、これは画像IEの第1の左のブロックである。
【００９９】
図3に表されるステップC2の過程で、その過程で少なくとも1個の予め符号化および復号されたブロックに関してブロックB'1が予測されるイントラ予測および/またはインター予測の知られている技法によって、現在のブロックB'1の予測符号化が行われる。そのような予測は、図4に表されるような予測ソフトウェアモジュールPRED_CO1によって実行される。
【０１００】
言うまでもなく、H.264標準で提案されるようなイントラ予測の他のモードが可能である。
【０１０１】
現在のブロックB'1は、その過程で予め符号化および復号された画像から生じるブロックに関して現在のブロックが予測されるインターモードの予測符号化を受けることも可能である。当然、その他のタイプの予測を考案することができる。現在のブロックに関して可能な予測の中でも、当業者によく知られている速度歪み基準に従って最適予測が選択される。
【０１０２】
前記前述の予測符号化ステップは、現在のブロックB'1の近似である、予測されるブロックB'p1を構築するのを可能にする。この予測符号化に関する情報は、デコーダに送信されることになる信号内に記入されることが意図される。そのような情報は、具体的には、予測のタイプ(インターまたはイントラ)と、適切な場合、イントラ予測のモードと、ブロックまたはマクロブロックが再分割されている場合は、ブロックまたはマクロブロックのパーティションのタイプと、インター予測のモードで使用される基準画像指数および変位ベクトルとを含む。この情報は、コーダCO1によって圧縮される。
【０１０３】
図3に表される次のステップC3の過程で、予測モジュールPRED_CO1は、現在のブロックB'1に関するデータを予測されるブロックB'p1のデータと比較する。より正確には、このステップの過程で、残差ブロックB'r1を生み出すために、現在のブロックB'1から予測されるブロックB'p1の減算が従来の方式で行われる。
【０１０４】
図3に表される次のステップC4の過程で、変換されたブロックB't1を生み出すために、例えば、離散コサイン変換DCTなど、従来の直接変換動作に従って残差ブロックB'r1の変換が行われる。そのような動作は、図4に表されるような変換ソフトウェアモジュールMT_CO1によって実行される。
【０１０５】
図3に表される次のステップC5の過程で、例えば、スカラー量子化など、従来の量子化動作に従って、変換されたブロックB't1の量子化が行われる。次いで、量子化された係数のブロックB'q1が取得される。そのようなステップは、図4に表されるような量子化ソフトウェアモジュールMQ_CO1によって実行される。
【０１０６】
図3に表される次のステップC6の過程で、ブロックB'q1の量子化された係数のトラバーサルが事前に定義された順序で行われる。表された例では、これは従来のジグザグトラバーサルを必要とする。そのようなステップは、図4に表されるような読取りソフトウェアモジュールML_CO1によって実行される。ステップC6の完了時に、「量子化残差」という用語でよりよく知られている、係数の一次元リストE1=(ε1、ε2、…、εL)が取得され、式中、Lは1以上の整数である。リストE1の係数のそれぞれは、エントロピー符号化を受けることが意図される、デジタル情報の様々な項目と関連付けられる。デジタル情報のそのような項目が例として以下で説明される。
【０１０７】
表された例では、L=16であり、リストE1は以下の16個の係数を含むと仮定する:E1=(0、+9、-7、0、0、+1、0、-1、+2、0、0、+1、0、0、0、0)。
【０１０８】
この場合、
リストE1の最後の非ゼロ係数の前に位置するそれぞれの係数に関して、係数がゼロであるか、またはゼロでないかを示すために、ビットなど、情報のデジタル項目がエントロピー的に符号化されることが意図され、係数がゼロである場合、その係数は、例えば、符号化されることになる、値0のビットであるのに対して、係数が非ゼロである場合、それは、符号化されることになる、値1のビットである、
それぞれの非ゼロ係数+9、-7、+1、-1、+2、+1に関して、係数の絶対値が1であるか、または1に等しくないかを示すために、ビットなど、情報のデジタル項目がエントロピー的に符号化されることが意図され、係数が1に等しい場合、それは、例えば、符号化されることになる、値1のビットであるのに対して、係数が1に等しくない場合、それは、符号化されることになる、値0のビットである、
値+9、-7、+2の係数など、その絶対値が1に等しくなく、かつ最後の非ゼロ係数の前に位置する、それぞれの非ゼロ係数に関して、情報の振幅項目(そこから値2が差し引かれる係数の絶対値)がエントロピー的に符号化される、
それぞれの非ゼロ係数に関して、その係数に割り振られた符号が、例えば、(+符号の場合)「0」または(-符号の場合)「1」に設定されたビットなど、情報のデジタル項目によって符号化される。
【０１０９】
図3を参照して、本発明による特定の符号化ステップが次に説明される。
【０１１０】
本発明によれば、リストE1の前記係数のうちの1つの少なくとも1個の符号である、デジタル情報の前述の項目のうちの少なくとも1つをエントロピー的に符号化するのを回避することが決定される。
【０１１１】
このために、図3に表されるステップC7の過程で、その後のエントロピー符号化ステップの過程で隠蔽されることになる符号の数の選択が行われる。そのようなステップは、図4に表されるような処理ソフトウェアモジュールMTR_CO1によって実行される。
【０１１２】
好ましい実施形態では、隠蔽されることになる符号の数は1または0である。さらに、前記好ましい実施形態によれば、隠蔽されることが意図される符号は、第1の非ゼロ係数の符号である。表された例では、これは、したがって、係数ε2=+9の符号を隠蔽することを必要とする。
【０１１３】
ある代替の実施形態では、隠蔽されることになる符号の数は、0、1、2、3、またはそれ以上のいずれかである。
【０１１４】
ステップC7の好ましい実施形態によれば、図3に表される第1のサブステップC71の過程で、前記リストE1に基づいて、修正されることが可能な係数ε'1、ε'2、…、ε'Mを含むサブリストSE1の判断が行われ、式中、M<Lである。そのような係数は、後の説明で修正可能な係数と呼ばれる。
【０１１５】
本発明によれば、その修正された係数がデコーダによって処理されると、その量子化された値の修正がデコーダにおいて何の脱同期も生じさせない場合、係数は修正可能である。したがって、処理モジュールMTR_CO1は、当初、以下を修正しないように構成される:
デコーダが隠蔽された符号の値をこのまたはこれらのゼロ係数に割り振らないように、第1の非ゼロ係数の前に位置する1個または複数のゼロ係数、
および、計算の複雑さのため、最後の非ゼロ係数の後に位置する1個または複数のゼロ係数。
【０１１６】
表された例では、サブステップC71の完了時に、SE1=(9、-7、0、0、1、0、-1、2、0、0、1)になるようにサブリストSE1が取得される。その結果として、11個の修正可能な係数が取得される。
【０１１７】
図3に表される次のサブステップC72の過程で、処理モジュールMTR_CO1は、修正可能な係数の数と所定のしきい値TSIGとの比較を行う。好ましい実施形態では、TSIGは4に等しい。
【０１１８】
修正可能な係数の数がしきい値TSIG未満である場合、図3に表されるステップC20の過程で、図4の基準CE_CO1によって指定されるように、例えば、CABACコーダ内で実行されるように、リストE1の係数の従来のエントロピー符号化が行われる。このために、リストE1のそれぞれの非ゼロ係数の符号はエントロピー的に符号化される。
【０１１９】
修正可能な係数の数がしきい値TSIGを超える場合、図3に表されるステップC8の過程で、処理モジュールMTR_CO1は、サブリストSE1の係数を表す関数fの値を計算する。
【０１２０】
単一の符号がデコーダに送信されることになる信号内に隠蔽されることが意図される、好ましい実施形態では、関数fはサブリストSE1の係数の和のパリティである。
【０１２１】
図3に表されるステップC9の過程で、処理モジュールMTR_CO1は、コーダCO1において予め定義された規約によって、隠蔽されることになる符号の値のパリティがサブリストSE1の係数の和のパリティに対応するかどうかを検証する。
【０１２２】
提案される例では、前記規約は、正の符号が0に等しい値のビットと関連付けられるのに対して、負の符号が1に等しい値のビットと関連付けられるというものである。
【０１２３】
本発明によるコーダCO1で採用される規約に従って、符号が正であり、それによって、ゼロ符号化ビット値に対応する場合、かつサブリストSE1の係数の和が偶数である場合、係数ε2の符号を除いて、前述のリストE1の係数のエントロピー符号化のステップC20が行われる。
【０１２４】
本発明によるコーダCO1で採用される規約にさらに従って、符号が負であり、それによって、1の符号化ビット値に対応する場合、かつサブリストSE1の係数の和が奇数である場合、係数ε2の符号を除いて、前述のリストE1の係数のエントロピー符号化のステップC20がやはり行われる。
【０１２５】
本発明によるコーダCO1で採用される規約に従って、符号が正であり、それによって、ゼロ符号化ビット値に対応する場合、かつサブリストSE1の係数の和が奇数である場合、図3に表されるステップC10の過程で、サブリストSE1の少なくとも1個の修正可能な係数の修正が行われる。
【０１２６】
本発明によるコーダCO1で採用される規約にさらに従って、符号が負であり、それによって、1の符号化ビット値に対応する場合、かつサブリストSE1の係数の和が偶数である場合、サブリストSE1の少なくとも1個の修正可能な係数を修正するステップC10がやはり行われる。
【０１２７】
そのような修正動作は、図4の処理モジュールMTR_CO1によって実行される。
【０１２８】
SE1=(+9、-7、0、0、+1、0、-1、+2、0、0、+1)である例示的な実施形態では、係数の総和は5に等しく、したがって、奇数である。その結果、デコーダは、コーダCO1がこの係数をデコーダに送信する必要なしに、第1の非ゼロ係数ε2=+9に割り振られた正の符号を再構築することができるように、和のパリティは偶数にならなければならない。その結果として、処理モジュールMTR_CO1は、前記ステップC10の過程で、すべて係数の和のパリティを変更することを目的として、サブリストSE1の係数の様々な修正をテストする。好ましい実施形態では、それぞれの修正可能な係数に対する+1または-1の加算と、実行されたすべての修正の中からのある修正の選択とが行われる。
【０１２９】
好ましい実施形態では、そのような選択は、例えば、当業者によく知られているビットレート歪み基準である性能基準による最適予測である。そのような基準は、以下で方程式(1)によって表される:
(1)J=D+λR、式中、
Dは、元のマクロブロックと再構築されたマクロブロックとの間の歪みを表し、Rは、符号化情報の符号のビットのコストを表し、λは、その値が符号化に先立って固定されうるラグランジュ乗数を表す。
【０１３０】
提案される例では、前述のビットレート-歪み基準に従って最適予測を生じさせる修正は、サブリストSE1の第2の係数-7に値1を加算することである。
【０１３１】
次いで、ステップC10の完了時に、修正されたサブリストSEm1=(+9、-6、0、0、+1、0、-1、+2、0、0、+1)が取得される。
【０１３２】
このステップの過程で、ある種の修正は禁じられることに留意されたい。したがって、第1の非ゼロ係数ε2が+1に等しい場合、その係数に-1を加算することは可能でなくなるが、これは、その係数が0になり、その場合、リストE1の第1の非ゼロ係数のその特性を失うことになるためである。デコーダは、次いで、その後、(係数の和のパリティを計算することによって)復号された符号を別の係数に割り振ったことになり、その場合、復号誤りが存在することになる。
【０１３３】
図3に表されるステップC11の過程で、処理モジュールMTR_CO1は、リストE1の対応する修正を行う。次いで、次の修正リストEm1=(0、+9、-6、0、0、+1、0、-1、+2、0、0、+1、0、0、0、0)が取得される。
【０１３４】
その後、係数の和のパリティ内に隠蔽された、提案される例では係数9の+符号である、係数ε2の符号を除いて、前述のリストEm1の係数のエントロピー符号化のステップC20が行われる。
【０１３５】
以上で説明されたように、符号化されない、第1の非ゼロ係数ε2の符号を除いて、符号のセットの前にリストE1または修正されたリストEm1の係数の振幅のセットが符号化されることに留意されたい。
【０１３６】
図3に表される次のステップC30の過程で、図4の符号化モジュールMC_CO1は、符号化された現在のブロックが画像IEの最後のブロックであるかどうかをテストする。
【０１３７】
現在のブロックが画像IEの最後のブロックである場合、図3に表されるステップC40の過程で符号化方法は終了する。
【０１３８】
そうでない場合、次いで、1≦i≦Zについて、ステップC1からC20を反復することによって、前述のラスタースキャン順序のトラバーサルに従って符号化されるB'iに続くブロックの選択が行われる。
【０１３９】
すべてのブロックB'1からB'Zのエントロピー符号化が実行されると、前記符号化されたブロックをバイナリ形式で表す信号F'の構築が行われる。
【０１４０】
バイナリ信号F'の構築は、図4に表されるようなストリーム構築ソフトウェアモジュールCF1内で実施される。
【０１４１】
ストリームF'はその後、通信ネットワーク(図示せず)によって遠隔端末に送信される。遠隔端末は、後の説明でより詳細に説明されるデコーダを備える。
【０１４２】
主に図3を参照して、本発明の別の実施形態が次に説明される。
【０１４３】
この別の実施形態は、0またはNのいずれかである、隠蔽されることになる係数の数によってだけ、先の実施形態と区別され、Nは、N≧2になるような整数である。
【０１４４】
このために、前述の比較サブステップC72は、図3において破線で表されるサブステップC72aと置換され、その過程で、修正可能な係数の数がTSIG_NとTSIG_N+1との間にある場合、N個の符号が隠蔽されることが意図されるように、修正可能な係数の数といくつかの所定のしきい値0<TSIG_1<TSIG_2<TSIG_3…との比較が行われる。
【０１４５】
修正可能な係数の数が第1のしきい値TSIG_1未満である場合、前述のステップC20の過程で、リストE1の係数の従来のエントロピー符号化が行われる。このために、リストE1のそれぞれの非ゼロ係数の符号はエントロピー的に符号化される。
【０１４６】
修正可能な係数の数がしきい値TSIG_NとTSIG_N+1との間にある場合、図3に表されるステップC8の過程で、処理モジュールMTR_CO1は、サブリストSE1の係数を表す関数fの値を計算する。
【０１４７】
この別の実施形態では、コーダにおける決定は、N個の符号を隠蔽することであり、関数fはサブリストSE1の係数の和の剰余モジュロ2Nである。提案される例では、N=2であり、隠蔽されることになる2個の符号は、それぞれ、第1の2個の非ゼロ係数、すなわち、ε2およびε3の第1の2個の符号であると仮定する。
【０１４８】
図3に表される次のステップC9の過程で、処理モジュールMTR_CO1は、N個の符号の構成、すなわち、2N個の可能な構成がサブリストSE1の係数の和の剰余モジュロ2Nの値に対応するかどうかを検証する。
【０１４９】
N=2である、提案される例では、符号の22=4個の異なる構成が存在する。
【０１５０】
これらの4個の構成は、コーダCO1において、例えば、以下の様式で判断された規約に従う:
0に等しい剰余は2個の連続する正の符号、すなわち、+、+に対応する、
1に等しい剰余は連続する正の符号および負の符号、すなわち、+、-に対応する、
2に等しい剰余は連続する負の符号および正の符号、すなわち、-、+に対応する、
3に等しい剰余は2個の連続する負の符号、すなわち、-、-に対応する。
【０１５１】
N個の符号の構成がサブリストSE1の係数の和の剰余モジュロ2Nの値に対応する場合、係数の和モジュロ2Nのパリティ内に隠蔽された、係数ε2の符号および係数ε3の符号を除いて、前述のリストE1の係数のエントロピー符号化のステップC20が行われる。
【０１５２】
そうでない場合、サブリストSE1の少なくとも1個の修正可能な係数の修正のステップC10が行われる。そのような修正は、サブリストSE1の修正可能な係数の和の剰余モジュロ2Nが隠蔽されることになる2個の符号のそれぞれの値に達するように、図4の処理モジュールMTR_CO1によって実行される。
【０１５３】
前述のステップC11の過程で、処理モジュールMTR_CO1は、リストE1の対応する修正を行う。次いで、修正されたリストEm1が取得される。
【０１５４】
その後、係数の和モジュロ2Nのパリティ内に隠蔽される、係数ε2の符号と係数ε3の符号とを除いて、前述のリストEm1の係数のエントロピー符号化のステップC20が行われる。
【０１５５】
復号部分の詳細な説明
復号方法がH.264/MPEG-4 AVC標準に当初準拠するデコーダを修正することによってソフトウェア様式またはハードウェア様式で実施される、本発明による復号方法の一般的な実施形態が次に説明される。
【０１５６】
本発明による復号方法は、図5に表されるステップSD1からSD7を含むアルゴリズムの形で表される。
【０１５７】
本発明の一般的な実施形態によれば、本発明による復号方法は、図2のコーダCOによって配信されるストリームFを受信するのに適した、図6に表されるような復号デバイス内、すなわち、デコーダDO内で実施される。
【０１５８】
図5に表されない予備ステップの過程で、受信されたデータ信号F内で、コーダCOによって予め符号化されているパーティションB1からBZの識別が行われる。好ましい実施形態では、前記パーティションは、方形を有し、すべて同じサイズを有するブロックである。必ずしも複数のブロックサイズであるとは限らない、画像のサイズに応じて、左の最後のブロックおよび底部の最後のブロックは方形でない場合がある。代替の実施形態では、これらのブロックは、例えば、矩形サイズのものであってよく、かつ/または互いと位置合わせされなくてよい。
【０１５９】
それぞれのブロックまたはマクロブロック自体を、さらに、それ自体、再分割可能なサブブロックに分割することが可能である。
【０１６０】
そのような識別は、図6に表されるようなストリーム解析ソフトウェアモジュールEX_DOによって実行される。
【０１６１】
図5に表されるステップSD1の過程で、図6のモジュールEX_DOは、現在のブロックBiとして、復号されることになる第1のブロックB1を選択する。そのような選択は、例えば、第1のブロックB1のデータの開始時に、信号F内の読み取り用ポインタを配置することである。
【０１６２】
その後、選択された、符号化されたブロックのそれぞれの復号が行われる。
【０１６３】
図5に表される例では、そのような復号は、符号化されたブロックB1からBZのそれぞれに連続的に適用される。これらのブロックは、例えば、当業者によく知られている「ラスタースキャン」トラバーサルに従って復号される。
【０１６４】
本発明による復号は、図6に表されるようなデコーダDOの復号ソフトウェアモジュールMD_DO内で実施される。
【０１６５】
図5に表されるステップSD2の過程で、選択されている第1の現在のブロックB1のエントロピー復号がまず行われる。そのような動作は、例えば、CABACタイプの、図6に表されるエントロピー復号モジュールDE_DOによって実行される。このステップの過程で、モジュールDE_DOは、リストD1または修正されたリストDm1の符号化されたデータのそれぞれの振幅に対応する、デジタル情報の項目のエントロピー復号を実行する。この時点で、リストD1または修正されたリストDm1のデータの符号だけが復号されない。
【０１６６】
処理モジュールMTR_DOがリストD1=(a1、a2、…、aP)を受信する場合、図5に表されるステップSD3の過程で、リストD1のデータのすべての符号の従来のエントロピー復号が行われる。そのような復号は、図6の基準DE_DOによって指定されたCABACデコーダによって実行される。このために、リストD1のそれぞれの非ゼロデータ項目の符号がエントロピー的に復号される。
【０１６７】
処理モジュールMTR_DOが修正されたリストDm1=(a'1、a'2、…、a'P)を受信する場合、前記ステップSD3の過程で、第1の非ゼロデータ項目の符号a2を除いて、リストDm1のデータのすべての符号の従来のエントロピー復号が行われる。
【０１６８】
図5に表されるステップSD4の過程で、処理モジュールMTR_DOは、計算された値が偶数であるかまたは奇数であるかを判断するために、リストDm1のデータを表す関数fの値を計算する。
【０１６９】
単一の符号が信号F内に隠蔽される、好ましい実施形態では、関数fはリストDm1のデータの和のパリティである。
【０１７０】
デコーダDOにおけるのと同じ、コーダCOで使用される規約によれば、リストDm1のデータの和の偶数値は修正されたリストDm1の第1の非ゼロデータ項目の符号は正であることを示すのに対して、リストDm1のデータの和の奇数値は修正されたリストDm1の第1の非ゼロデータ項目の符号が負であることを示す。
【０１７１】
例示的な実施形態では、データの総和は偶数である。その結果として、ステップSD4の完了時に、処理モジュールMTR_DOは、第1の非ゼロデータ項目a2の隠蔽された符号が正であることをそこから推論する。
【０１７２】
図5に表されるステップSD5の過程で、復号されたブロックBD1の構築が行われる。そのような動作は、図6に表される再構築ソフトウェアモジュールMR_DOによって実行される。
【０１７３】
図5に表されるステップSD6の過程で、復号モジュールMD_DOは、復号された現在のブロックが信号F内で識別された最後のブロックであるかどうかをテストする。
【０１７４】
現在のブロックが信号Fの最後のブロックである場合、図5に表されるステップSD7の過程で復号方法は終了する。
【０１７５】
そうでない場合、1≦i≦Zについて、ステップSD1からSD5を反復することによって、前述のラスタースキャン順序のトラバーサルに従って復号されることになる次のブロックBiの選択が行われる。
【０１７６】
主に図5を参照して、本発明の別の実施形態が次に説明される。
【０１７７】
この別の実施形態は、この時、Nに等しい、隠蔽された符号の数によってだけ、先の実施形態と区別され、NはN≧2になるような整数である。
【０１７８】
このために、前述のステップSD3の過程で、前記修正されたリストDm1の第1の少数の非ゼロデータのN個のそれぞれの符号を除いて、リストDm1のデータのすべての符号の従来のエントロピー復号が行われ、前記N個の符号は隠蔽されている。
【０１７９】
この別の実施形態では、処理モジュールMTR_DOは、ステップSD4の過程で、リストDm1のデータの和の剰余モジュロ2Nである関数fの値を計算する。提案される例では、N=2であると仮定する。
【０１８０】
次いで、処理モジュールMTR_DOは、符号化に関して使用された規約に従って、それぞれ、第1の2個の非ゼロデータa2およびa3のそれぞれに割り振られた2個の隠蔽された符号の構成をそこから推論する。
【０１８１】
これらの2個の符号が再構築されると、以上で説明されたステップSD5からSD7が実施される。
【０１８２】
復号方法がH.264/MPEG-4 AVC標準に当初準拠するデコーダを修正することによってソフトウェア様式またはハードウェア様式で実施される、本発明による復号方法のある特定の実施形態が次に説明される。
【０１８３】
本発明による復号方法は、図7に表されるステップD1からD12を含むアルゴリズムの形で表される。
【０１８４】
本発明の実施形態によれば、本発明による復号方法は、図4のコーダCO1によって配信される信号F'を処理することが可能な、図8に表されるような、復号デバイス内、すなわち、デコーダDO1内で実施される。
【０１８５】
図7に表されない予備ステップの過程で、受信されたデータ信号F'内で、コーダCO1によって予め符号化されているB'1からB'Zのパーティションの識別が行われる。好ましい実施形態では、前記パーティションは、方形を有し、すべて同じサイズを有するブロックである。必ずしも複数のブロックサイズであるとは限らない、画像のサイズに応じて、左の最後のブロックおよび底部の最後のブロックは方形でない場合がある。代替の実施形態では、これらのブロックは、例えば、矩形サイズのものであってよく、かつ/または互いと位置合わせされなくてよい。
【０１８６】
それぞれのブロックまたはマクロブロック自体を、さらに、それ自体、再分割可能なサブブロックに分割することが可能である。
【０１８７】
そのような識別は、図8に表されるようなストリーム解析ソフトウェアモジュールEX_DO1によって実行される。
【０１８８】
図7に表されるステップD1の過程で、図8のモジュールEX_DO1は、現在のブロックB'iとして、復号されることになる第1のブロックB'1を選択する。そのような選択は、例えば、第1のブロックB'1のデータの開始時に、信号F'内の読み取り用ポインタを配置することである。
【０１８９】
その後、選択された符号化されたブロックのそれぞれの復号が行われる。
【０１９０】
図7に表される例では、そのような復号は、符号化されたブロックB'1からB'Zのそれぞれに連続して適用される。これらのブロックは、例えば、当業者によく知られている「ラスタースキャン」トラバーサルに従って復号される。
【０１９１】
本発明による復号は、図8に表されるようなデコーダDO1の復号ソフトウェアモジュールMD_DO1内で実施される。
【０１９２】
図7に表されるステップD2の過程で、選択されている第1の現在のブロックB'1のエントロピー復号がまず行われる。そのような動作は、例えば、CABACタイプの、図8に表されるエントロピー復号モジュールDE_DO1によって実行される。このステップの過程で、モジュールDE_DO1は、リストE1または修正されたリストEm1の符号化された係数のそれぞれの振幅に対応する、デジタル情報のエントロピー復号を実行する。この時点で、リストE1または修正されたリストEm1の係数の符号だけが復号されない。
【０１９３】
図7に表されるステップD3の過程で、エントロピー符号化C20の先のステップの過程で隠蔽されていそうな符号の数の判断が行われる。そのようなステップD3は、図8に表されるような処理ソフトウェアモジュールMTR_DO1によって実行される。ステップD3は、隠蔽されることになる符号の数を判断する前述のステップC7に類似する。
【０１９４】
好ましい実施形態では、隠蔽された符号の数は1または0である。さらに、前記好ましい実施形態によれば、隠蔽されるのは第1の非ゼロ係数の符号である。表された例では、これは、したがって、係数ε2=+9の正の符号を隠蔽することを必要とする。
【０１９５】
ある代替の実施形態では、隠蔽された符号の数は、0、1、2、3、またはそれ以上のいずれかである。
【０１９６】
ステップD3の好ましい実施形態によれば、図7に表される第1のサブステップD31の過程で、前記リストE1または修正されたリストEm1に基づいて、M<Lである、係数ε'1、ε'2、…、ε'Mを含むサブリストが符号化時に修正されていそうであるという判断が行われる。
【０１９７】
そのような判断は、前述の符号化ステップC7と同じ様式で実行される。
【０１９８】
前述の処理モジュールMTR_CO1のように、処理モジュールMTR_DO1は、以下を修正しないように当初構成される:
第1の非ゼロ係数の前に位置する1個または複数のゼロ係数、
および、計算の複雑さのため、最後の非ゼロ係数の後に位置する1個または複数のゼロ係数。
【０１９９】
表された例では、サブステップD31の完了時に、これはSEm1=(9、-6、0、0、1、0、-1、2、0、0、1)になるようなサブリストSEm1を必要とする。その結果として、修正されていそうな11個の係数が取得される。
【０２００】
図7に表される次のサブステップD32の過程で、処理モジュールMTR_DO1は、修正されていそうな係数の数の所定のしきい値TSIGとの比較を行う。好ましい実施形態では、TSIGは4に等しい。
【０２０１】
修正されていそうな係数の数がしきい値TSIG未満である場合、図7に表されるステップD4の過程で、リストE1の係数のすべての符号の従来のエントロピー復号が行われる。そのような復号は、図8で基準DE_DO1によって指定されたCABACデコーダによって実行される。このために、リストE1のそれぞれの非ゼロ係数の符号はエントロピー的に復号される。
【０２０２】
修正されていそうな係数の数がしきい値TSIGを超える場合、前記ステップD4の過程で、第1の非ゼロ係数ε2の符号を除いて、リストEm1の係数のすべての符号の従来のエントロピー復号が行われる。
【０２０３】
図7に表されるステップD5の過程で、処理モジュールMTR_DO1は、計算された値が偶数であるか、または奇数であるかを判断するために、サブリストSEm1の係数を表す関数fの値を計算する。
【０２０４】
単一の符号が信号F'内に隠蔽される、好ましい実施形態では、関数fはサブリストSEm1の係数の和のパリティである。
【０２０５】
デコーダDO1におけるのと同じ、コーダCO1で使用される規約によれば、サブリストSEm1の係数の和の偶数値は修正されたリストEm1の第1の非ゼロ係数の符号が正であることを示すのに対して、サブリストSEm1の係数の和の奇数値は修正されたリストEm1の第1の非ゼロ係数の符号が負であることを示す。
【０２０６】
SEm1=(+9、-6、0、0、+1、0、-1、+2、0、0、+1)である例示的な実施形態では、係数の総和は6に等しく、したがって、偶数である。その結果として、ステップD5の完了時に、処理モジュールMTR_DO1は、第1の非ゼロ係数ε2の隠蔽された符号が正であることをそこから推論する。
【０２０７】
図7に表されるステップD6の過程で、ステップD2、D4、およびD5の過程で再構築されたデジタル情報のすべての項目を用いて、ブロックB'q1の量子化された係数の再構成が事前に定義された順序で行われる。表された例では、これは、前述の符号化ステップC6の過程で実行されるジグザグトラバーサルに対して逆のジグザグトラバーサルを必要とする。そのようなステップは、図8に表されるような読取りソフトウェアモジュールML_DO1によって実行される。より正確には、モジュールML_DO1は、前記逆のジグザグ順序のトラバーサルを使用して、リストE1(一次元)の係数のブロックB'q1(二次元)への書込みを行う。
【０２０８】
図7に表されるステップD7の過程で、復号された、逆量子化されたブロックBD'q1を生み出すために、前述のステップC5の符号化時に実行された量子化の逆の動作である、従来の逆量子化動作に従って、量子化された残差ブロックB'q1の逆量子化が行われる。そのようなステップは、図8に表されるような逆量子化ソフトウェアモジュールMDQ_DO1によって実行される。
【０２０９】
図7に表されるステップD8の過程で、前述のステップC4の符号化時に実行された直接変換の逆の動作である、逆量子化されたブロックBD'q1の逆変換が行われる。次いで、復号された残差ブロックBD'r1が取得される。そのような動作は、図8に表されるような逆変換ソフトウェアモジュールMTI_DO1によって実行される。
【０２１０】
図7に表されるステップD9の過程で、現在のブロックB'1の予測復号が行われる。このような予測復号は、その過程で少なくとも1個の予め復号されたブロックに関してブロックB'1が予測される、イントラ予測および/またはインター予測の知られている技法によって従来の様式で実行される。そのような動作は、図8に表されるような予測復号モジュールPRED_DO1によって実行される。
【０２１１】
言うまでもなく、H.264標準で提案されるようなイントラ予測の他のモードが可能である。
【０２１２】
このステップの過程で、先のステップで復号された構文要素を用いて、具体的には、予測のタイプ(インターまたはイントラ)と、適切な場合、イントラ予測のモードと、ブロックまたはマクロブロックが再分割されている場合は、ブロックまたはマクロブロックのパーティションのタイプと、インター予測のモードで使用される基準画像指数および変位ベクトルとを含む予測復号が実行される。
【０２１３】
前記前述の予測復号ステップは、予測されるブロックB'p1を構築するのを可能にする。
【０２１４】
図7に表されるステップD10の過程で、復号された残差ブロックBD'r1を予測されるブロックB'p1に追加することによって、復号されたブロックBD'1の構築が行われる。そのような動作は、図8に表される再構築ソフトウェアモジュールMR_DO1によって実行される。
【０２１５】
図7に表されるステップD11の過程で、復号モジュールMD_DO1は、復号された現在のブロックが信号F'内で識別された最後のブロックであるかどうかをテストする。
【０２１６】
現在のブロックが信号F'の最後のブロックである場合、図7に表されるステップD12の過程で復号方法は終了する。
【０２１７】
そうでない場合、1≦i≦Zについて、ステップD1からD10を反復することによって、前述のラスタースキャン順序のトラバーサルに従って復号されることになる次のブロックB'iの選択が行われる。
【０２１８】
主に図7を参照して、本発明の別の実施形態が次に説明される。
【０２１９】
この別の実施形態は、0またはNのいずれかである、隠蔽された係数の数によってだけ、先の実施形態と区別され、Nは、N≧2になるような整数である。
【０２２０】
このために、前述の比較サブステップD32は、図7において破線で表されるサブステップD32aと置換され、その過程で、前記係数の数がTSIG_NとTSIG_N+1との間である場合、N個の符号が隠蔽されているように、修正されていそうな係数の数といくつかの所定のしきい値0<TSIG_1<TSIG_2<TSIG_3…との比較が行われる。
【０２２１】
前記係数の数が第1のしきい値TSIG_1未満である場合、前述のステップD4の過程で、リストE1の係数のすべての符号の従来のエントロピー復号が行われる。このために、リストE1のそれぞれの非ゼロ係数の符号はエントロピー的に復号される。
【０２２２】
前記係数の数がしきい値TSIG_NとTSIG_N+1との間である場合、前述のステップD4の過程で、前記修正されたリストEm1の第1の非ゼロ係数のN個のそれぞれの符号を除いて、リストE1の係数のすべての符号の従来のエントロピー復号が行われ、前記N個の符号が隠蔽されている。
【０２２３】
この別の実施形態では、処理モジュールMTR_DO1は、ステップD5の過程で、サブリストSEm1の係数の和の剰余モジュロ2Nである関数fの値を計算する。提案される例では、N=2であると仮定する。
【０２２４】
次いで、処理モジュールMTR_DO1は、符号化に関して使用された規約に従って、第1の2個の非ゼロ係数ε2およびε3のそれぞれにそれぞれ割り振られた、2個の隠蔽された符号の構成をそこから推論する。
【０２２５】
これらの2個の符号が再構築されると、以上で説明されたステップD6からD12が実行される。
【０２２６】
言うまでもなく、以上で説明されている実施形態は、限定ではなく、表示のためにだけ提示されており、当業者は、本発明の範囲から逸脱せずに、多数の修正を容易に行うことが可能である。
【０２２７】
したがって、例えば、図4に表されるコーダCO1に関する、簡素化された実施形態によれば、コーダCO1は、0個の所定の符号、1個の所定の符号、またはN個の所定の符号のいずれかの代わりに、N'≧1である、少なくともN'個の所定の符号を隠蔽するように構成可能である。この場合、比較ステップC72またはC72aは省かれることになる。対応する様式で、図8に表されるデコーダDO1に関する、簡素化された実施形態によれば、デコーダDO1は、0個の所定の符号、1個の所定の符号、またはN個の所定の符号のいずれかの代わりに、N'個の所定の符号を再構築するように構成されることになる。この場合、比較ステップD32またはD32aは省かれることになる。さらに、符号化ステップC72および復号ステップD32に適用された決定基準を別のタイプの基準と置換することが可能である。このために、修正可能な係数の数、または修正されていそうな係数の数をしきい値と比較する代わりに、処理モジュールMTR_CO1またはMTR_DO1は、修正可能な係数、もしくは修正されていそうな係数の振幅の和、またはそうでなければ、修正可能な、もしくは修正されていそうな係数の中に存在するゼロの数にそれぞれ依存する決定基準を適用することができる。
【符号の説明】
【０２２８】
B  パーティション、ブロック
CO  コーダ
CO1  コーダ
D  リスト
DE_DO  エントロピー復号モジュール
DE_DO1  エントロピー復号モジュール
DO  デコーダ
DO1  デコーダ
Dm  リスト
E  リスト
EX_CO  ソフトウェアモジュール
EX_DO  ストリーム解析ソフトウェアモジュール、モジュール
EX_DO1  ストリーム解析ソフトウェアモジュール、モジュール
F  信号
IE  画像
MC_CO  符号化モジュール、符号化ソフトウェアモジュール
MC_CO1  符号化モジュール、符号化ソフトウェアモジュール
MD_DO  復号ソフトウェアモジュール、復号モジュール
MD_DO1  復号ソフトウェアモジュール、復号モジュール
ML_CO1  読取りソフトウェアモジュール
ML_DO1  モジュール
MT_CO1  変換ソフトウェアモジュール
MTI_DO1  逆変換ソフトウェアモジュール
MTR_CO  処理モジュール
MTR_CO1  処理ソフトウェアモジュール、処理モジュール
MTR_DO  処理ソフトウェアモジュール、処理モジュール
MTR_DO1  処理ソフトウェアモジュール、処理モジュール
MQ_CO1  量子化ソフトウェアモジュール
MR_DO  再構築ソフトウェアモジュール
MR_DO1  再構築ソフトウェアモジュール
PCO  パーティションモジュール
PCO1  パーティションソフトウェアモジュール
PRED_CO1  予測ソフトウェアモジュール、予測モジュール
PRED_DO1  予測復号モジュール
SE  サブリスト
TSIG  しきい値
【図１】
2014534764.tif 000003
【図２】
2014534764.tif 000004
【図３】
2014534764.tif 000005
【図４】
2014534764.tif 000006
【図５】
2014534764.tif 000007
【図６】
2014534764.tif 000008
【図７】
2014534764.tif 000009
【図８】
2014534764.tif 000010
【国際調査報告】
2014534764.tif 000011
2014534764.tif 000012
2014534764.tif 000013
2014534764.tif 000014