時間予測を実施する画像シーケンスの符号化方法及び装置と、対応する信号、データ記憶媒体、復号化方法及び装置、コンピュータプロダクト製品
本発明は、画像のシーケンスを符号化する方法であって、ブロックを参照画像内の少なくとも1つの対応するブロックと関連付ける予測(11)を実施して、シーケンスの現存画像の少なくとも1つのブロックを符号化するステップを備える方法に関する。本発明によれば、予測(11)は、現在画像又は参照画像の少なくとも1つの所与のブロックに対し、ブロックのための複数の制御ベクトルを決定するステップ(111)と、ブロックをサブブロックに少なくとも1回分割するステップ(112)と、サブブロックのため複数の制御ベクトルを決定するステップ(113)と、現在画像の少なくとも1点のための予測値を決定するステップ(114)とを備える。さらに、この方法は、シーケンスを表す信号の中に、所与のブロックのための制御ベクトルの再構成に関する情報を挿入するステップを備える。
【発明の詳細な説明】
【技術分野】
【0001】
1. 発明の分野
本発明の分野は画像シーケンスの符号化及び復号化の分野である。
【0002】
より具体的には、本発明は、ブロックベースの変換を使用する画像シーケンス又はシーン(2次元以上のシーン)の圧縮/伸張に関係する。本発明は、特に、現在の映像デコーダ(MPEG、H.264など)又は将来のエンコーダ(H.265)で実施される時間予測に適用できる。
【背景技術】
【0003】
2. 従来技術
MPEG団体(MPEG−1、MPEG−2、MPEG−4、・・・)に由来、又は、国際電気通信連合ITU−T(H.261、・・・、H.264/AVC)に由来し、映像圧縮標準を実施する今日の映像エンコーダは、ソース画像シーケンスに関して圧縮された符号化シーケンスを配信するために画像のシーケンスを符号化するため使用される。
【0004】
このため、これらのエンコーダは、圧縮における性能の主要なレベルを実現するためにシーケンスの画像間の予測を使用する符号化スキームを使用する。
【0005】
シーケンスの中の画像は、従来的には、その後マクロブロックに再分割されるスライスに、再分割されることに注意されたい。各マクロブロックは、次に、画素のブロックに再分割され、ここで、画素のブロックは隣接する画素のグループ分けに対応する。シーケンスの中の画像の画素のブロックは、その後に、シーケンスの中の1つ以上の他の画像の1つ以上のブロックから時間予測によって符号化される。ここで使用される用語は、ブロック「間」(「インター」ブロック)である。画素のブロックは、符号化されるべき画像の1つ以上のブロックから空間予測によって符号化することもできる。ここで使用される用語はブロック「内」(「イントラ」ブロック)である。
【0006】
ブロックの符号化中に、このブロックが、参照画像として知られているシーケンスの中の他の画像に由来する情報を使用して符号化されるかどうかが、指定される。これらの参照画像は、前に符号化/復号化された画像である。参照ブロックは参照画像の画素のグループ分けに対応する。
【0007】
より具体的には、ブロック間の符号化は、2つのステップで行われる:
− 符号化されるべきブロックの予測は、最初に、仮現運動を考慮するか、又は、再び効果的な予測を実現するために、1つ以上の参照ブロックと動き補償メカニズムとを使用することによって行われる。
− 次に、予測誤差残差が、符号化されるべきブロックと予測との間の差を決定することによって計算される。
【0008】
現在ブロックと予測ブロックとの間の差又は残差は、次に符号化され送信される(及び/又は、用途に依存して格納される)。復号化の時点で、受信された差は、ブロックを再構成するため予測に加算される。
【0009】
典型的には、映像圧縮標準では、ブロック間の動き補償による予測は、平行型の動き補償を用いることによって達成される。よって、vが考慮中の動きベクトルを示し、Rが考慮中の参照画像である場合、ブロックの各点又は画素xにおける予測Pは、P(x)=R(x+v)によって定義される。
【0010】
この動き補償技術の1つの欠点は、回転、ズーム、剪断、又は、他のタイプの自然な動きを考慮できないことである。
【0011】
従って、他の動き補償の変形が、予測を行うために提案されている。
【0012】
例えば、P. Ishwar and P. Moulin, “On Spatial Adaptation of Motion Field Smoothness in Video Coding”は、符号化されるべき画素xの予測の値をセットアップするために動きベクトルのいくつかの値を考慮することに、あるOBMC(オーバーラップブロック動き補償)として知られているブロックベース動き補償技術を提案し、
【数1】
であり、式中、ベクトルviは動きベクトルiに対応し、値wi(x)は差動きベクトルによって取得された差の予測間の重み付け値に対応する。
【0013】
重み付け値wi(x)は、一般にブロック内で考慮中の点xの位置に依存する。典型的に、使用される重みwi(x)は、全てのブロックに対して同じである。
【0014】
この技術は自然な動きの大きな集まりを考慮するために使用できるが、取得される予測は平均的な品質である。送信されるべき予測残差についての情報量は、従って、より大量であり、この付加情報の送信は圧縮性能の点で不利である。
【0015】
従って、従来の欠点を少なくとも部分的に緩和するために、低複雑性であり、同時に、高品質予測を提供する新しい画像符号化/復号化技術が必要である。
【発明の概要】
【発明が解決しようとする課題】
【0016】
3. 発明の概要
本発明は、画像のシーケンスの中の現在画像の少なくとも1つのブロックを、シーケンスの中の参照画像内の少なくとも1つの対応するブロックと関連付ける予測を実施し、画像のシーケンスの中の現在画像の少なくとも1つのブロックを符号化するステップを備える画像のシーケンスを符号化する方法の形で、従来技術の全ての欠点を有していない新しいアプローチを提案する。
【課題を解決するための手段】
【0017】
本発明によれば、予測は、現在画像又は参照画像のそれぞれの少なくとも1つの所与のブロックに対し、
− 1つずつが、ブロックの特徴点と、参照画像又は現在画像のそれぞれにおける上記特徴点の対応位置との間の、シフトを表現する、上記ブロックのための複数の制御ベクトルを決定するステップと、
− ブロックをサブブロックに少なくとも1回再分割するステップと、
− ブロックのための制御ベクトルから、サブブロックのための複数の制御ブロックを決定するステップと、
− サブブロックのために決定された制御ベクトルから実行された、少なくとも1つの上記サブブロックの動き補償から、現在画像の少なくとも1点のための予測の値を決定するステップと、
を備える。
【0018】
符号化方法は、シーケンスを表現する信号の中に、所与のブロックのための制御ベクトルを再構成する情報を挿入するステップをさらに備える。
【0019】
本発明は、このように、効果的な予測品質を提供し、同時に、低複雑性を維持するブロック「間」予測の新しい技術を提案する。提案される解決法は、ブロックの近傍(すなわち、このブロックの左、右、上、又は、下に位置しているブロック)のうちの少なくとも1つと相対的にブロックの動きを考慮して、画像シーケンス内の自然な動きをさらに考慮する。
【0020】
このため、本発明は、ブロックのためのいくつかの制御ベクトル(例えば、2個、3個、4個以上のベクトル)をこのブロックからこのブロックの1つ以上の近傍への連結に応じて決定することを提案する。
【0021】
例えば、ブロック又はサブブロックのための制御ベクトルは、それぞれブロック又はサブブロックの頂点のうちの1個と関連付けられる。よって、2D画像では、4個の制御ベクトルがブロックと関連付けられ、1個の制御ベクトルがブロックの各頂点又はコーナーと関連付けられている。3D画像では、8個のベクトルが実際には立方体に対応するブロックと関連付けられ、制御ベクトルはブロックの各コーナーと関連付けられている。制御ベクトルを、例えば、輪郭に対応するブロックの他の点と関連付けることも可能である。このようにして、ブロックと関連付けられている制御ベクトルの数は一定ではない。
【0022】
特に、提案された技術は、前方及び/又は後方投影を使用することにより画像シーケンスを符号化するため使用される。
【0023】
よって、使用される技術が後方投影を実施する場合、投影は後方動き補償による予測であり、制御ベクトルは現在画像から1つ以上の参照画像を指示する。この場合、複数の制御ベクトルが現在画像に属する所与のブロックのため決定される。
【0024】
反対に、使用される技術が前方投影を実施する場合、投影は前方動き補償による予測であり、制御ベクトルは1つ以上の参照画像から現在画像を指示する。従って、複数の制御ベクトルが参照ブロックに属する所与のブロックのために決定される。
【0025】
参照画像又は現在画像の少なくとも1つの所与のブロックに対し、ブロックは、次に、複数の制御ベクトルが決定されるサブブロックに再分割される。これらのサブブロックは特に異なったサイズにすることができる。
【0026】
このような再分割は、特に、同時にブロック平行移動だけを実行するアフィン変形動きのような画像シーケンス内の自然な動きを考慮することを可能にする。これらのブロック平行移動は、よって、サブ画素位置における画像補間値の計算の複雑性を顕著に制限する(すなわち、計算のブロック共有が、別個の点ベースの計算より効率的である)。
【0027】
本発明の1つの特有の態様によれば、制御ベクトルを再構成する複数の情報は、所与のブロックのための制御ベクトル又はこれらの制御ベクトルを表現する情報を含む。よって、ブロックのためのこれらの制御ベクトルはデコーダで容易に再構成することができる。
【0028】
一変形例によれば、制御ベクトルを再構成する複数の情報は、所与のブロックと少なくとも1つの隣接ブロックとの間の動きを表現する少なくとも1つの連結フラグを含む。
【0029】
例えば、制御ベクトルを再構成する複数の情報は、
− 現在画像と参照画像との間で所与のブロックと所与のブロックの上に位置しているブロックとの間の動きを表現する第1のフラグと、
− 現在画像と参照画像との間で所与のブロックと所与のブロックの左に位置しているブロックとの間の動きを表現する第2のフラグと、
を含む2つの連結フラグを備える。
【0030】
例えば、第1のフラグに対して「flag_tc」と呼ばれ、第2のフラグに対して「flag_lc」と呼ばれるこれらのフラグは、現在画像と参照画像との間で所与のブロックの動きとこの近傍(上隣接又は左隣接ブロック)の動きとを関連付けるため使用される。一旦、デコーダによって受信されると、これらのフラグは制御ベクトルを再構成するため使用される。
【0031】
例えば、所与のブロック及び所与のブロックの上に位置しているブロックが、動き補償後に、現在画像と参照画像とにおいて共通の稜線を有する場合、2番目のフラグは1に等しい(flag_tc=1)。これらの2つのブロックは、この場合、連結していると言われる。
【0032】
所与のブロック及び所与のブロックの左に位置しているブロックが、動き補償後に、現在画像と参照画像とにおいて共通稜線を有する場合、第2のフラグは1に等しい(flag_lc=1)。
【0033】
本発明は、通信ネットワークからダウンロード可能であり、及び/又は、コンピュータ読み取り可能な担体に記憶され、及び/又は、プロセッサによって実行可能であり、プログラムがコンピュータ上で実行されるとき、前述の符号化方法を実施するプログラムコード命令を備えるコンピュータプログラム製品にさらに関係する。
【0034】
別の実施形態では、本発明は、画像のシーケンスの中の現在画像の少なくとも1つのブロックをシーケンスの中の参照画像内の少なくとも1つの対応するブロックと関連付ける予測手段を実施して、上記少なくとも1つのブロックを符号化する手段を備える、画像のシーケンスを符号化する装置に関係する。
【0035】
本発明によれば、予測手段は、現在画像又は参照画像のそれぞれの少なくとも1つの所与のブロックに対し、
− ブロックのための複数の制御ベクトルを決定する手段と、
− ブロックをサブブロックに再分割する手段と、
− ブロックのために決定された制御ベクトルから、サブブロックのための複数の制御ベクトルを決定する手段と、
− サブブロックのために決定された制御ベクトルから実行された、少なくとも1つの上記サブブロックの動き補償から、現在画像の少なくとも1点のための予測の値を決定する手段と、
を備える。
【0036】
さらに、この種の符号化装置は、シーケンスを表現する信号の中に、所与のブロックのための制御ベクトルを再構成する情報を挿入する挿入手段を有している。
【0037】
このような符号化装置は、特に、前述の符号化方法の実施に適合している。例えば、この符号化装置は、MPEG又はH.264型式映像エンコーダ、又は、将来の映像圧縮標準を使用するエンコーダである。
【0038】
本発明のさらに別の態様は、前述した符号化方法によって符号化された画像シーケンスを表現する信号に関係する。
【0039】
このような信号は、所与のブロックのための制御ベクトルを再構成する少なくとも1つの情報を備える。
【0040】
この信号は、当然ながら、本発明の符号化方法に関係する異なった特性を含む。
【0041】
例えば、再構成情報は、所与のブロックと少なくとも1つの隣接ブロックとの間の動きを表現する少なくとも1つの連結フラグを含む。
【0042】
一変形例によれば、再構成情報は、所与のブロックのための制御ベクトル、又は、これらの制御ベクトルを表現する1つの情報を含む。
【0043】
特に、このような信号は、現在画像ブロックと予測との間の差又は残差をさらに含む。
【0044】
信号は、ブロックの再分割の順序に関する情報を伝達することもできる。
【0045】
本発明は、前述したような信号を提供するための記憶媒体にさらに関係する。
【0046】
本発明のさらに別の態様は、再構成されるべき画像のブロックを画像のシーケンスの中の参照画像内の少なくとも1つの対応するブロックと関連付ける、再構成されるべき画像の予測から、画像のシーケンスの中の少なくとも1つの画像を再構成するステップを備える、画像のシーケンスを表現する信号を復号化する方法に関係する。
【0047】
このような復号化方法は、再構成されるべき画像又は参照画像のそれぞれの、少なくとも1つの所与のブロックのための制御ベクトルの再構成に関する情報を取得するステップを備える。
【0048】
さらに、予測は、所与のブロックに対し、
− 上記再構成に関する情報から、1つずつが参照画像又は再構成されるべき画像のそれぞれにおける上記ブロックの特徴点と上記特徴点の対応する位置との間のシフトを表現するブロックのための複数の制御ベクトルを決定するステップと、
− ブロックをサブブロックに少なくとも1回再分割するステップと、
− ブロックのための制御ブロックからサブブロックのための複数の制御ベクトルを決定するステップと、
− サブブロックのために決定された制御ベクトルから実行された少なくとも1つの上記サブブロックの動き補償から、再構成されるべき画像の少なくとも1点の予測の値を決定するステップと、
を含む。
【0049】
このような方法は、前述の符号化方法によって符号化された画像のシーケンスを復号化するために、特に適合されている。このようにして、(信号中で送信された)予測残差を予測に加算することにより、所与のブロックを再構成するように、同じ予測のステップが符号化時に実行されたように実行される。
【0050】
復号化側で実行される予測は、信号中で送信された制御ベクトルの再構成に関する情報を使用する。
【0051】
よって、第1の実施形態によれば、取得するステップは、所与のブロックと少なくとも1つの隣接ブロックとの間の動きを表現する、少なくとも1つの連結フラグを抽出するステップを含む。
【0052】
フラグは、例えば、信号中で送信される「flag_tc」(第1のフラグ)及び「flag_lc」(第2のフラグ)である。
【0053】
これらのフラグは特に所与のブロックのための制御ベクトルを再構成するため使用される。
【0054】
第2の実施形態によれば、取得するステップは、上記所与のブロックのための制御ベクトルを受信するステップを含む。
【0055】
特に、復号化方法は、再分割を決定及び/又はパラメータ化するステップを含み、所与のブロックが再分割されるべきかどうかを決定し、及び/又は、所与のブロックの再分割をパラメータ化することを可能にする。これらの決定及び/又はパラメータ化するステップは、
− ブロックのためのサブブロックの所定数と、
− 上記制御ベクトル間の類似に関する1つの情報と、
− 上記ブロックのサイズと、
− 再分割数を表現するフラグと、
− その他と、
を含むグループに属する所定の基準を考慮する中で定められる。
【0056】
このようにして、再構成されるべき画像の全てのブロック、又は、参照画像のブロックは、必ずしもサブブロックに再分割されなくてもよく、サブブロックへの再分割は、画像の一つのブロックと別のブロックとの間で変化することができる。従って、サブブロックへの分割は適応的である。
【0057】
本発明は、通信ネットワークからダウンロード可能であり、及び/又は、コンピュータ読み取り可能な担体に記憶され、及び/又は、プロセッサによって実行可能であり、プログラムがプロセッサによって実行されるとき、前述の復号化方法を実施するプログラムコード命令を備えるコンピュータプログラム製品にさらに関係する。
【0058】
本発明の別の実施形態は、再構成されるべき画像のブロックをシーケンスの中の参照画像内の少なくとも1つの対応するブロックと関連付ける、再構成されるべき画像を予測する手段を実施して、画像のシーケンスの中の少なくとも1つの画像を再構成する手段を備える、画像のシーケンスを表現する信号を復号化する装置に関係する。
【0059】
このような装置は、再構成されるべき画像又は参照画像のそれぞれの少なくとも1つの所与のブロックのための、制御ベクトルの再構成に関する情報を取得する手段を備える。
【0060】
さらに、予測手段は、所与のブロックに対し、
− 再構成情報から、ブロックのための複数の制御ベクトルを決定する手段と、
− ブロックをサブブロックに再分割する手段と、
− ブロックのための制御ベクトルから、サブブロックのための複数の制御ベクトルを決定する手段と、
− サブブロックのために決定された制御ベクトルから、少なくとも1つの上記サブブロックの動き補償から再構成されるべき画像の少なくとも1点のための予測の値を決定する手段と、
を含む。
【0061】
この種の復号化装置は、特に、前述の復号化方法を実施するために適合されている。この復号化装置は、例えば、MPEG又はH.264形式映像デコーダ、又は、何らかの将来の映像圧縮標準を使用するデコーダである。
【0062】
4. 図のリスト
本発明の他の特徴及び利点は、簡単な例示的かつ非限定的な実施例の目的のために与えられた以下の特有の実施形態の説明と、添付図面とからよりはっきりと明らかになる。
【図面の簡単な説明】
【0063】
【図1A】本発明の一実施形態による動き補償を用いる予測の主要なステップを示す図である。
【図1B】本発明の一実施形態による符号化方法の主要なステップを示す図である。
【図2】ブロックのための制御ベクトルを決定するためのアルゴリズムを提案する図である。
【図3A】近傍を考慮したブロックためのベクトルの決定を示す図である。
【図3B】近傍を考慮したブロックためのベクトルの決定を示す図である。
【図3C】近傍を考慮したブロックためのベクトルの決定を示す図である。
【図3D】近傍を考慮したブロックためのベクトルの決定を示す図である。
【図3E】近傍を考慮したブロックためのベクトルの決定を示す図である。
【図3F】近傍を考慮したブロックためのベクトルの決定を示す図である。
【図3G】近傍を考慮したブロックためのベクトルの決定を示す図である。
【図4】ブロックのサブブロックへの再分割の実施例を示す図である。
【図5】画素のための予測値の決定を示す図である。
【図6】本発明の一実施形態による復号化方法の主要なステップを示す図である。
【図7】本本発明の1つの特有の実施形態による符号化装置の構造を示す図である。
【図8】本本発明の1つの特有の実施形態による復号化装置の構造を示す図である。
【発明を実施するための形態】
【0064】
5 発明の一実施形態の説明
5.1 一般原理
本発明の一般原理は、符号化されるべき画像のブロックをシーケンスの中の参照画像内の少なくとも1つの対応するブロックと関連付ける時間予測を実施する画像のシーケンスの符号化及び復号化にある。
【0065】
より具体的には、本発明は、モード「間」(「インター」モード)で符号化されたブロックの動き補償による予測の新しい技術を提案する。提案された技術は、送信されるべきパラメータの計算及び数の両方に関して、この技術がもたらす複雑さを制限することにより自然な動きの表現を取得するために使用することができる。
【0066】
本発明は、時間的に変化する画素のブロックに対応する、モーションチューブを用いて、表現された画像シーケンス又はシーンの符号化に特に適用できる。この変化中に、チューブは、例えば、見かけの動き、すなわち、ブロック内に存在する画素の数が増加するか、又は、減少するかを考察するため変形させることができる。このチューブは、例えば、ブロックのサブ画素レベルへ移る間に精緻化することができる。本発明は、特にチューブが受ける変形を決定するために使用できる。
【0067】
特に、モーションチューブは、少なくとも以下の情報、
− 参照テクスチャに関する情報を含む参照画素のブロックと、
− チューブ開始時点及び終了時点と、
− 上記参照ブロックと上記シーケンスの少なくとも1つの時点を更新するために使用される移行に関する情報と、
によって定義されることに注意されたい。
【0068】
画像シーケンスを表現するこのような技術は、本願の代わりに、特に、2007年6月25日に出願された仏国特許出願第0756007号に記載されている。
【0069】
本発明による時間予測は、少なくとも1つのブロックのための複数の制御ベクトルを決定することと、少なくともこのブロックをサブブロックに再分割することと、サブブロックのための複数の制御ベクトルを決定することとに依存する。これらの制御ベクトルは、その後、サブブロックの予測を決定するのに使われ、その後、ブロックの予想を決定するのに使われる。
【0070】
5.2 動き補償
以下、図1Aを参照して、例えば、H.264形式の映像エンコーダで実施される動き補償による予測のため実施される主要なステップについて説明する。
【0071】
本発明は、H.264標準において理解されるようにブロックならびにマクロブロックに適用できることに注意されたい。明細書中の「ブロック」という用語は、従って、これに反する指摘がない限り、この標準の真意に従って「マクロブロック」又は「ブロック」を意味することが理解されるべきである。
【0072】
図1Aに示されるように、画像シーケンスの中の現在画像のうちの少なくとも1つのブロックの動き補償による予測(11)は、第1の画像の少なくとも1つの所与のブロックbCに対し、以下のステップ、すなわち、
− 1つずつがブロックbCの特徴点と第2の画像内のこの特徴点の対応する位置との間のシフトを表現する、ブロックbCのための複数の制御ベクトルvbCを決定するステップ111と、
− ブロックbCをサブブロックbSC1、bSC2などに少なくとも1回再分割するステップ112と、
− ブロックのための制御ベクトルvbCに基づいてサブブロックのための複数の制御ベクトルvbSC1、vbSC2などを決定するステップ113と、
− サブブロックのため決定された制御ベクトルvbSC1、vbSC2などに基づいて実行された動き補償に基づいて、現在画像の少なくとも1点のための予測の値を決定するステップ114と、
を実施する。
【0073】
特に、予測が後方補償を実施する場合、第1の画像は現在画像であり、第2の画像は参照画像である。参照画像は前に符号化/復号化された画像に対応することに注意されたい。
【0074】
予測が前方動き補償を実施する場合、第1の画像は参照画像であり、第2の画像は現在画像である。
【0075】
このように、予測ブロック
【数2】
とも称される少なくとも1つの現在画像ブロックの予測が決定される。
【0076】
以下、符号化ブロック間の予測を決定するために実施される様々なステップのより詳細な説明が行われる。制御ベクトルを決定するステップと、ブロックをサブブロックに再分割するステップとは、制御ベクトルが現在画像から1つ以上の参照画像を指示する後方動き補償の場合に関して説明される。当業者は、現在画像を参照画像に置き換え、かつ、逆に参照画像を現在画像に置き換えて、この教示内容を制御ベクトルが参照画像から現在画像を指示する前方動き補償へ容易に拡張することができよう。点又は画素の予測値を決定するステップは、次に、2つの型式の動き補償の1つずつについて説明される。
【0077】
A) 制御ベクトル決定
最初に、典型的な方式では、動きベクトルは、現在画像ICのブロックbCのために決定される。この動きベクトルはvとして表される。
【0078】
次に、複数の制御ベクトルvbCがブロックbCのために決定される(111)。本実施形態では、1つずつがブロックの頂点又はコーナーと関連付けられている、4個の制御ベクトルがブロックのために決定される。
【0079】
例えば、以下の事項に注意する。
− vbrは、ブロックbCの右下に位置しているコーナーと関連付けられた制御ベクトルであり、
− vblは、ブロックbCの左下に位置しているコーナーと関連付けられた制御ベクトルであり、
− vtrは、ブロックbCの右上に位置しているコーナーと関連付けられた制御ベクトルであり、
− vtlは、ブロックbCの左上に位置しているコーナーと関連付けられた制御ベクトルである。
【0080】
これらの制御ベクトルはゼロ値で初期化される。
【0081】
符号化側で、現在画像IC内のブロックbCの位置がこのブロックの近傍の位置と比較され、参照画像IR内の対応するブロックの位置がこのブロックの近傍の位置と比較される。
【0082】
例えば、ブロックbC及び上に位置しているブロックが動き補償後に現在画像及び参照画像の両方に共通した稜線を有する場合、このことは2つのブロックが垂直方向に連結されていることを意味する。
【0083】
値1が次に第1のフラグflag_tcに割り当てられる。
【0084】
ブロックbC及びこのブロックの左に位置しているブロックが、動き補償後に現在画像及び参照画像の両方に共通した稜線を有する場合、このことは2つのブロックが水平方向に連結されていることを意味する。
【0085】
値1が次に第2のフラグflag_lcに割り当てられる。
【0086】
これらのフラグは、現在画像と参照画像との間でブロックbCの動き及びこのブロックの近傍(上又は左)の動きを表現する。これらのフラグは制御ベクトルを決定するため使用されることができる。これらのフラグは、デコーダによって受信される場合、制御ベクトルを再構成するため使用できる。
【0087】
状況に応じて、低減されたシグナリングを用いる実施のために、2つのフラグflag_tc及びflag_lcは同じ値をとるように抑制することができる。それらは、その後、単一の値0又は1をとる単一のフラグflag_cにより表現される。この変形では、従って、制御ベクトルを再構成するためデコーダによって唯一のフラグが使用される。
【0088】
現在画像及び参照画像の分析後、図2に提案されているように、ブロックbCのための制御ベクトルvbr、vbl、vtr及びvtlを決定する。
【0089】
例えば、ブロックbCの右下に位置しているコーナーと関連付けられている制御ベクトルvbrは、ブロックのため予め定められた動きベクトルvが割り付けられる(21)。
【0090】
次に、flag_lcが1に等しいかどうか、すなわち、ブロックbCとこのブロックの左に位置しているブロックとが水平方向に連結されているかどうかを調べるためチェックが行われる(22)。
【0091】
flag_tcが1に等しいかどうか、すなわち、ブロックbCとこのブロックの上に位置しているブロックとが垂直方向に連結されているかどうかを調べるためさらにチェックが行われる(231、232)。
【0092】
flag_lcが1に等しい場合、制御ベクトルvblは、ブロックbCの左に位置しているブロックの制御ベクトルvbrの値をとる(vbl=vbr(left_block))。これらの表記法は、検討されている分野における当業者が式を読み、理解するのを容易にするように選ばれている。
【0093】
さらに、垂直連結モード(フラグflag_tcが1に等しい)では、制御ベクトルvtrは、ブロックbCの上に位置しているブロックの制御ベクトルvbrの値をとり(vtr=vbr(top_block))、制御ベクトルvtlは、ブロックbCの上に位置しているブロックの制御ベクトルvblとブロックbCの左に位置しているブロックの制御ベクトルvtrとの平均値をとる(vtl=moy[vbr(left_block),vbl(top_block)])。
【0094】
垂直非連結モード(flag_tcが0に等しい)では、制御ベクトルvtlは、ブロックbCの左に位置しているブロックの制御ベクトルvtrの値をとり(vtl=vtr(left_block))、制御ベクトルvtrは、ブロックbCの3つの他の制御ベクトルから取得される(vtr=vtl+vbr−vbl)。
【0095】
ステップ22の間に、flag_lcは1に等しくないこと、すなわち、ブロックbCとこのブロックの右に位置しているブロックが非連結モードであることが観察された場合、達成されることは、
− 垂直連結モード(フラグflag_tcが1に等しい)において、
○ 制御ベクトルvtrはブロックbCの上に位置しているブロックの制御ベクトルvbrの値をとり(vtr=vbr(top_block))、
○ 制御ベクトルvtlはブロックbCの上に位置しているブロックの制御ベクトルvblの値をとり(vtl=vbl(top_block))、
○ 制御ベクトルvblはブロックbCの他の3つの制御ベクトルか取得され(vbl=vtl+vbr−vtr)、
が得られ、
− 垂直非連結モード(flag_tcが0に等しい)では、
○ 制御ベクトルvtl、vtr及びvbrは全てがブロックbCの制御ベクトルvbrの値をとる、ことが得られる(vbl=vtl=vbr=vtr=v)。
【0096】
特に、ブロックがこのブロックの左に近傍を有しない場合、このブロックの左上のコーナー及び左下のコーナーと関連付けられる制御ベクトルは、このブロックの右上のコーナー及び右下のコーナーから定義される(vbl=vbr及びvtl=vtr)。同様に、ブロックがこのブロックの上に近傍を有しない場合、このブロックの左上のコーナー及び右上のコーナーと関連付けられるこのブロックの上の制御ベクトルは、このブロックの左下のコーナー及び右下のコーナーのために定義された制御ベクトルに基づいて定義される(vtl=vbl及びvtr=vbr)。ブロックが左の近傍も上の近傍も有しない場合、このブロックの左上のコーナーと、右上のコーナーと、右下のコーナーと関連付けられる制御ベクトルは、このブロックの右下のコーナーのため決定された制御ベクトルに基づいて定義される(vbl=vtl=vtr=vbr)。
【0097】
提示された実施例によれば、フラグflag_lc及びflag_tcは、ブロックbCのための制御ベクトルの再構成のための情報の形でデコーダへ送信される。
【0098】
特に、フラグは、ブロックの組によって定義されてもよく、又は、再びブロック単位で定義されてもよい。さらに、これらのフラグは、所与のブロックのための動きベクトルvの定義中に利用されることがある。実際に、これらの情報は、例えば、所与のブロックと関連付けられた動きベクトルの予測のために使用される予測モードで使用することができる。
【0099】
よって、所与のブロック及びこのブロックの上に位置しているブロックが連結され、そして、所与のブロックがこのブロックの左に位置しているブロックに連結されていない場合、所与のブロックの動きベクトルの符号化は、(従来技術のエンコーダで使用されているように隣接ブロックの中央値ベクトルに基づく予測ではなく)上に位置しているブロックの動きベクトルによって定義された予測を用いて実行することができる。
【0100】
同様に、所与のブロックとこのブロックの左に位置しているブロックとが連結され、そして、所与のブロックがこのブロックの上に位置しているブロックに連結されていない場合、所与のブロックの動きベクトルの符号化は、(従来技術のエンコーダで使用されているように隣接ブロックの中央値ベクトルに基づく予測ではなく)このブロックの左に位置しているブロックの動きベクトルによって定義された予測を用いて実行できる。
【0101】
さらに、提示された実施形態によれば、唯一の動きベクトル、すなわち、ベクトルv(v=vbr)を符号化することができる。他の動きベクトル(vtr、vtl、vbl)は、フラグflag_lc及びflag_tcを用いて定義されることができる。
【0102】
図3A〜3Fは、制御ベクトルが現在画像ICから参照画像IRを指示する後方動き補償による予測のための現在画像ICのブロックbCに対する制御ベクトルの決定を特に示す。
【0103】
より具体的には、図3Aは、ブロックbCの左及び上に位置しているブロックに一貫性がある場合、すなわち、ブロックbCの上に位置しているブロックの左下のコーナーとブロックbCの左に位置しているブロックの右上のコーナーとが連結され、フラグflag_lc及びflag_tcが1に等しい場合に、ブロックbCのための制御ベクトルの決定を示す。
【0104】
図3Bは、ブロックbCの左及び上に位置しているブロックに一貫性があり、flag_lcが1に等しく、flag_tcが0に等しい場合を示す。
【0105】
図3Cは、ブロックbCの左及び上に位置しているブロックに一貫性があり、flag_lcが0に等しく、flag_tcが1に等しい場合を示す。
【0106】
図3Dは、ブロックbCの左及び上に位置しているブロックに一貫性があり、flag_lc及びflag_tcが0に等しい場合を示す。
【0107】
図3Eは、ブロックbCの左及び上に位置しているブロックに一貫性がない場合、すなわち、ブロックbCの上に位置しているブロックの左下のコーナーと、ブロックbCの左に位置しているブロックの右上のコーナーとが異なり、flag_lcが1に等しく、flag_tcが0に等しい場合を示す。
【0108】
図3Fは、ブロックbCの左及び上に位置しているブロックに一貫性がなく、flag_lcが0に等しく、flag_tcが1に等しい場合を示す。
【0109】
図3Gは、ブロックbCの左及び上に位置しているブロックに一貫性がなく、flag_lc及びflag_tcが1に等しい場合を示す。
【0110】
B) ブロックのサブブロックへの再分割
以下、ブロックbCをサブブロックに再分割するステップ112のより厳密な説明を行う。本発明によれば、現在画像の少なくとも1つのブロックがサブブロックに再分割されることに注意されたし。
【0111】
ブロックbCのため定義された4個の制御ベクトルは、次に、異なったサブブロックの制御ベクトルを定義するため補間されるように使用される。例えば、サブブロック毎に4個の制御ベクトルを決定する。
【0112】
よって、図4に示されるように、ブロックbCは、例えば、4個のサブブロックbSC1、bSC2、bSC3及びbSC4に再分割される。ブロックbCに帰属させられた制御ベクトルは、サブブロックのための新しい制御ベクトルを定義するため補間される。例えば、以下の表記法が使用され、
− vmlはサブブロックbSC1の左下に位置しているコーナーと関連付けられた制御ベクトルであり、サブブロックbSC3の左上に位置しているコーナーにも対応し、
− vtmはサブブロックbSC1の上に位置しているコーナーと関連付けられた制御ベクトルであり、サブブロックbSC2の左上に位置しているコーナーにも対応し、
− vmrはサブブロックbSC2の右下に位置しているコーナーと関連付けられた制御ベクトルであり、サブブロックbSC4の右上に位置しているコーナーにも対応し、
− vbmはサブブロックbSC3の右上に位置しているコーナーと関連付けられた制御ベクトルであり、サブブロックbSC4の左下に位置しているコーナーにも対応し、
− vmmはサブブロックbSC1の右下に位置しているコーナーと関連付けられた制御ベクトルであり、サブブロックbSC2の左下に位置しているコーナーと、サブブロックbSC3の右上に位置しているコーナーと、サブブロックbSC4の左上に位置しているコーナーとにも対応する。
【0113】
サブブロックのための制御ベクトルは、次に、ブロックbCのための制御ブロックから決定され、例えば、以下の通りである。
【数4】
【0114】
これらの制御ベクトルは、次に、異なるサブブロックに割り付けられ、
− 左上に位置しているサブブロックbSC1は、制御ベクトルとして、動きベクトルvtl、vtm、vml、vmmを有し、
− 左上に位置しているサブブロックbSC2は、制御ベクトルとして、動きベクトルvtm、vtr、vmm、vmrを有し、
− 左下に位置しているサブブロックbSC3は、制御ベクトルとして、動きベクトルvml、vmm、vbl、vbmを有し、
− 右下に位置しているサブブロックbSC4は、制御ベクトルとして、動きベクトルvmm、vmr、vbm、vbrを有している。
【0115】
再分割数はいくつかのパラメータに依存することができる。例えば、再分割数は、ブロックの組に対し定義されるか、又は、そうでなければ、ブロック単位で適応性のあるパラメータ全体によって定義されることができる。よって、ブロックは、特定の予測が行われる、より小さいサイズのサブブロックに分割される。その後、動き補償を取得するために、可変のブロックサイズが出現する。
【0116】
より具体的には、再分割数は、ブロックのサイズに応じて、又は、ブロックに対する所定のサブブロックの数に応じて定義することができる。例えば、サイズが16×16であるマクロブロックは、サイズが4×8もしくは8×4である8個のブロック、又は、サイズが8×8である4個のブロックに再分割されるか、あるいは、サイズが8×16もしくは16×8である2個のブロックによって形成されるブロックに再分割されることができる。
【0117】
一変形例によれば、ブロックbCと関連付けられた制御ベクトルは、類似に関する1つの情報を取得するために2個ずつ比較される。ブロックbCは、次に、類似に関する情報が少なくとも1つの所定のスレッショルドを越える場合に限りサブブロックに再分割される。
【0118】
ブロック単位で適応性がある場合、制御ベクトル間の振幅の最大差に応じて(例えば、最大差の値の簡単な定量化によって)行われるように再分割の数を定義することができる。
【0119】
C) 現在画像のサブブロックの後方動き補償のための現在画像の少なくとも1点に対する予測値の決定
以下、図5に示されるように、現在画像のサブブロックのため決定された制御ベクトルに基づいて実行される後方動き補償から現在画像の少なくとも1画素のための予測値を決定するステップ114を提示する。
【0120】
サブブロック及びこのサブブロックの4個の制御ベクトルを仮定して、このサブブロックのいずれかの点xに対し、以下の式:
P(x)=w1(x)IR(x+v1)+w2(x)IR(x+v2)+w3(x)IR(x+v3)+w4(x)IR(x+v4)
但し、
サブブロックbSC1に対し、(v1,v2,v3,v4)=(vtl,vtm,vmm,vml)、
サブブロックbSC2に対し、(v1,v2,v3,v4)=(vtm,vtr,vmr,vmm)、
サブブロックbSC3に対し、(v1,v2,v3,v4)=(vml,vmm,vbm,vbl)、及び、
サブブロックbSC4に対し、(v1,v2,v3,v4)=(vmm,vmr,vbr,vbm)、
を用いて予測P(x)を定める。
【0121】
重み付け値w1(x)、w2(x)、w3(x)、w4(x)は、前述の“On Spatial Adaptation of Motion Field Smoothness in Video Coding”に記載されているように決定されることができる。他の既知の技術もまた、予想することができる。
【0122】
このようにして、現在画像ICの少なくとも1つのブロックの予測を決定する。
【0123】
D) 参照画像のサブブロックの前方動き補償のための現在画像の少なくとも1点に対する予測値の決定
以下、参照画像のサブブロックのため決定された制御ベクトルに基づいて実行される前方動き補償に基づいて現在画像の少なくとも1画素のための予測の値を決定するステップ114を提示する。
【0124】
前方動き補償の場合、現在画像のブロックは、1つ以上の参照画像のいくつかのブロックによって予測できる。現在画像の点に対し予測値を計算するためには、現在画像の点を予測するために使用することができるブロックを決定するため、参照画像の全てのブロックを現在画像に投影することが必要である。
【0125】
以下、現在画像のための予測画像を構築するアルゴリズムを提案する。
【0126】
第1のステップの間に、予測画像を初期化する。よって、画像のあらゆる点xに対し、RI(x)=0、RW(x)=0である。RIは、参照画像のブロックによって与えられた全ての予測値が加重累計された予測画像に対応し、RWは加重累計画像に対応する。
【0127】
いずれのサブブロックbSC1、bSC2、・・・に対しても、以下のステップが実施される:
− サブブロックの各動きベクトルに対し、予測画像は、tl、tr、bl、そして、brに等しいabに対して更新される。サブブロック内のいずれのxに対しても、次の点を満たす:
− 点RI(x+vab)における値wab(x)*P(x)に関して、RI(x+vab)+=wab(x)*P(x)が累計され、P(x)はサブブロックの点xにおける予測である。
− 点RW(x+vab)における値wab(x)に関して、RW(x+vab)+=wab(x))が累計される。
【0128】
前方動き補償の間に使用される重みwabは、後方動き補償で使用された値でも、異なる値でもとることが可能である。特に、これらの値は、相異し、ブロック単位で適応性であるようにすることができる。例えば、この適応は制御動きベクトルの類似に依存することができる。
【0129】
予測画像は、その後に、画像内のいずれの点xに対しても標準化され、
RW(x)が0ではない場合、RI(x)はRW(x)で割り算され、すなわち、
RW(x)!=0である場合、RI(x)/=RW(x)であり、
そうでない場合、RI(x)は所定の値UNDEF、例えば、値0で更新される。
【0130】
状況に応じて、RW(x)が0に等しい未定義値は、これらの値の近傍と相対的によりあり得そうな値を有するために修正される。この最後のステップは、様々の方式で、例えば、未定義のいずれかの値に対し、正確に定義された値を有している予測画像内で最も接近した点yの値を規定するときに実行されることができる(すなわち、0と異なるRW(y))。
【0131】
このように、現在画像ブロックICの予測が定義される。
【0132】
5.3 符号化
以下、図1Bを参照して、例えば、H.264形式映像エンコーダで実施される主要な符号化ステップを規定する。特に、本発明の方法は、種々の方式で、特に、ワイヤード形式又はソフトウェア形式で実施することができる。
【0133】
図1Bに示されるように、本発明の符号化方法は、図1Aを参照して前述されたように動き補償による予測を実施する、画像シーケンスの中の現在画像ICの、少なくとも1つのブロックbCを符号化する符号化ステップ11を含む。
【0134】
このようにして、予測ブロック
【数4】
と称される少なくとも1つの現在画像ブロックICの予測を決定する。
【0135】
次に、典型的には、現在画像ブロックと予測ブロック
【数5】
との間の差に対応する予測誤差残差を決定する。
【0136】
最後に、ステップ12で、ブロックbCのための制御ベクトルの再構成に関する情報が画像のシーケンスを表現する信号の中に挿入される。
【0137】
例えば、これらの再構成情報は、ブロックbCと少なくとも1つの隣接ブロックとの間の動きを表現する連結フラグの形をしているか、又は、ブロックbCのための制御ベクトルをそのまま含む。
【0138】
予測誤差残差も同様に信号の中に挿入される。これらの残差は、画像シーケンスの再構成中にデコーダによって使用できる。
【0139】
画像シーケンスを表現する信号は、その後に、送信されること、及び/又は、記録媒体に格納されることができる。
【0140】
5.3 信号
符号化されると、シーケンスの中の画像はデコーダへ送信される。
【0141】
さらに、ブロックbCのための制御ベクトルの再構成に関する情報要素は、この信号の中に挿入される。例えば、これらの再構成情報はフラグflag_lc及びflag_tcを含む。
【0142】
一実施形態によれば、予測誤差残差、特に、画像シーケンスの再構成中にデコーダによって使用される動きベクトルvの予測残差が、信号の中にさらに挿入される。
【0143】
エンコーダでブロックbCが受ける再分割操作の回数を指定するフラグを挿入することも可能である。このようにして、エンコーダによる予測中に実行される再分割がデコーダによる予測中に実行される再分割と同一であることを確実にする。
【0144】
5.4 復号化
次に図6を参照して、例えば、H.264型式映像デコーダによって実施される復号化の主要なステップを提示する。
【0145】
本発明の方法は、種々の方式、特に、ワイヤード形式又はソフトウェア形式で実施することができる。
【0146】
デコーダは、例えば、前述の符号化方法によって符号化された画像のシーケンスを受信することが仮定される。
【0147】
より具体的には、図6に示されるように、本発明による復号化方法は、再構成されるべき画像の予測からシーケンスの中の少なくとも1つの画像を再構成するステップ61と、再構成されるべきメッセージ又は参照画像の少なくとも1つの所与のブロックbCのための制御ブロックの再構成に関する情報を取得するステップ62とを有する。
【0148】
本実施例によれば、再構成されるべき画像又は参照画像の少なくとも1つの所与のブロックbCに対し以下のステップ、
− 再構成情報に基づいて、1つずつが参照画像又は再構成されるべき画像内のブロックbCの特徴点とこの特徴点の対応する位置との間のシフトを表現する、ブロックbCのための複数の制御ベクトルを決定するステップ611と、
− ブロックbCをサブブロックbSC1、bSC2などに少なくとも1回再分割するステップ612と、
− このブロックのための制御ベクトルに基づいて、サブブロックのための複数の制御ベクトルvbSC1、vbSC2などを決定するステップ613と、
− サブブロックのため決定された制御ベクトルに基づいて行われた少なくとも1つのサブブロックの動き補償に基づいて、再構成されるべき画像の少なくとも1つの画素のための予測値を決定するステップ614と、
が実施される。
【0149】
このようにして、再構成されるべき画像の少なくとも1つのブロックに対し、
【数6】
とも称される予測ブロックが決定される。
【0150】
次に、典型的には、再構成されるべき画像の再構成ブロックを決定するように、予測ブロックの符号化中に予測誤差残差が加算される。
【0151】
ブロックのための複数の制御ベクトルを決定するステップ611と、ブロックをサブブロックに再分割するステップ612と、サブブロックのための複数の制御ベクトルを決定するステップ613と、再構成されるべき画像の少なくとも1つの画素のための予測の値を決定するステップ614とは、符号化中に実施されたステップと同様であるので、ここでは詳細に説明されない。
【0152】
特に、ブロックbCのための複数の制御ベクトルvbCを決定するこのステップ611は、ステップ62の間に取得された再構成に関する情報を考慮することに注意されたい。
【0153】
第1の変形例によれば、再構成に関するこれらの情報は、特に、エンコーダで画像シーケンスを表現する信号の中に挿入された少なくとも1つの連結フラグの形をしている。例えば、これらの再構成情報はflag_tc及びflag_lcを含む。
【0154】
第2の変形例によれば、再構成に関するこれらの情報は、ストリーム中でそのまま送信されたブロックbCのための制御ベクトルの形をしている。
【0155】
5.5 動きの反転
前述されているように、提案された技術は、前方投影及び/又は後方投影を使用する際に画像のシーケンスの符号化/復号化を可能にする。
【0156】
よって、ブロックに基づいて定義された動きは反転されることがあり、前方投影(動きベクトルが参照画像上で定義される)によって、複数の情報(現在画像における動きのテクスチャ値の予測、又は、例えば、奥行きに関する情報を符号化する3D映像エンコーダの奥行きに関する情報のような全ての他の有用な情報を符号化/復号化するプロセスを行うことを可能にすることができる。
【0157】
動き反転によって再構成された画像は、前述のサブブロックへの再分割を用いて取得される。この再構成画像は、エンコーダ及び/又はデコーダで使用できる。
【0158】
5.6 エンコーダの構造及びデコーダの構造
次に図7及び8を参照して、前述の符号化技術及び復号化技術をそれぞれに実施する符号化装置及び復号化装置の簡略化された構造を最後に提示する。
【0159】
図7に示されるような符号化装置は、バッファメモリを含むメモリ71と処理ユニット72とを備え、処理ユニット72は、マイクロプロセッサμPを例えば装備し、本発明による符号化方法を実施するコンピュータプログラムによって駆動される。
【0160】
初期化時に、コンピュータ・プログラム・コード命令73は、例えば、RAMにロードされ、その後、処理ユニット72のプロセッサによって実行される。処理ユニット72は、符号化されるべき少なくとも1つの画像、又は、符号化されるべき画像のブロックを入力において受信する。処理ユニット72のマイクロプロセッサは、符号化されるべき画像又はブロックの予測を決定し、ブロック又は対応する画像を符号化するために、コンピュータプログラム73の命令によって前述の符号化方法のステップを実施する。このため、符号化装置は、バッファメモリ71に加えて、ブロックをシーケンスの中の参照画像内の少なくとも1つの対応するブロックと関連付ける予測手段と、シーケンスを表現する信号の中にブロックのための制御ベクトルの再構成に関する情報を挿入する手段とを備え、予測手段は、ブロックのための複数の制御ベクトルを決定する手段と、ブロックをサブブロックに再分割する手段と、サブブロックのための複数の制御ベクトルを決定する手段と、現在画像の少なくとも1つの画素のための予測値を決定する手段とを備える。これらの手段は、処理ユニット72のマイクロプロセッサによって駆動される。
【0161】
図8に示されるような復号化装置は、バッファメモリを含むメモリ81と処理ユニット82とを備え、処理ユニット82は、マイクロプロセッサμPを例えば装備し、本発明による符号化方法を実施するコンピュータプログラム83によって駆動される。
【0162】
初期化時に、コンピュータ・プログラム・コード命令83は、例えば、RAMにロードされ、その後、制御ユニット82のプロセッサによって実行される。処理ユニット82は、少なくとも1つの所与のブロックと関連付けられた制御ベクトルの再構成のための複数の情報を備える画像のシーケンスを表現する信号を入力において受信する。制御ユニット82のマイクロプロセッサは、所与のブロックの予測を決定し、対応する画像を再構成するために、コンピュータプログラム83の命令によって前述の復号化方法のステップを実施する。このため、復号化装置は、バッファメモリ81に加えて、上記シーケンスの中の少なくとも1つの画像を再構成する手段と、少なくとも1つの所与のブロックのための制御ベクトルの再構成に関する情報を取得する手段とを備え、再構成する手段は、ブロックのための複数の制御ベクトルを決定する手段と、ブロックをサブブロックに再分割する手段と、サブブロックのための複数の制御ベクトルを決定する手段と、再構成されるべき画像の少なくとも1つの画素のための予測値を決定する手段とを含む、予測手段を備える。これらの手段は、処理ユニット82のマイクロプロセッサによって駆動される。
【技術分野】
【0001】
1. 発明の分野
本発明の分野は画像シーケンスの符号化及び復号化の分野である。
【0002】
より具体的には、本発明は、ブロックベースの変換を使用する画像シーケンス又はシーン(2次元以上のシーン)の圧縮/伸張に関係する。本発明は、特に、現在の映像デコーダ(MPEG、H.264など)又は将来のエンコーダ(H.265)で実施される時間予測に適用できる。
【背景技術】
【0003】
2. 従来技術
MPEG団体(MPEG−1、MPEG−2、MPEG−4、・・・)に由来、又は、国際電気通信連合ITU−T(H.261、・・・、H.264/AVC)に由来し、映像圧縮標準を実施する今日の映像エンコーダは、ソース画像シーケンスに関して圧縮された符号化シーケンスを配信するために画像のシーケンスを符号化するため使用される。
【0004】
このため、これらのエンコーダは、圧縮における性能の主要なレベルを実現するためにシーケンスの画像間の予測を使用する符号化スキームを使用する。
【0005】
シーケンスの中の画像は、従来的には、その後マクロブロックに再分割されるスライスに、再分割されることに注意されたい。各マクロブロックは、次に、画素のブロックに再分割され、ここで、画素のブロックは隣接する画素のグループ分けに対応する。シーケンスの中の画像の画素のブロックは、その後に、シーケンスの中の1つ以上の他の画像の1つ以上のブロックから時間予測によって符号化される。ここで使用される用語は、ブロック「間」(「インター」ブロック)である。画素のブロックは、符号化されるべき画像の1つ以上のブロックから空間予測によって符号化することもできる。ここで使用される用語はブロック「内」(「イントラ」ブロック)である。
【0006】
ブロックの符号化中に、このブロックが、参照画像として知られているシーケンスの中の他の画像に由来する情報を使用して符号化されるかどうかが、指定される。これらの参照画像は、前に符号化/復号化された画像である。参照ブロックは参照画像の画素のグループ分けに対応する。
【0007】
より具体的には、ブロック間の符号化は、2つのステップで行われる:
− 符号化されるべきブロックの予測は、最初に、仮現運動を考慮するか、又は、再び効果的な予測を実現するために、1つ以上の参照ブロックと動き補償メカニズムとを使用することによって行われる。
− 次に、予測誤差残差が、符号化されるべきブロックと予測との間の差を決定することによって計算される。
【0008】
現在ブロックと予測ブロックとの間の差又は残差は、次に符号化され送信される(及び/又は、用途に依存して格納される)。復号化の時点で、受信された差は、ブロックを再構成するため予測に加算される。
【0009】
典型的には、映像圧縮標準では、ブロック間の動き補償による予測は、平行型の動き補償を用いることによって達成される。よって、vが考慮中の動きベクトルを示し、Rが考慮中の参照画像である場合、ブロックの各点又は画素xにおける予測Pは、P(x)=R(x+v)によって定義される。
【0010】
この動き補償技術の1つの欠点は、回転、ズーム、剪断、又は、他のタイプの自然な動きを考慮できないことである。
【0011】
従って、他の動き補償の変形が、予測を行うために提案されている。
【0012】
例えば、P. Ishwar and P. Moulin, “On Spatial Adaptation of Motion Field Smoothness in Video Coding”は、符号化されるべき画素xの予測の値をセットアップするために動きベクトルのいくつかの値を考慮することに、あるOBMC(オーバーラップブロック動き補償)として知られているブロックベース動き補償技術を提案し、
【数1】
であり、式中、ベクトルviは動きベクトルiに対応し、値wi(x)は差動きベクトルによって取得された差の予測間の重み付け値に対応する。
【0013】
重み付け値wi(x)は、一般にブロック内で考慮中の点xの位置に依存する。典型的に、使用される重みwi(x)は、全てのブロックに対して同じである。
【0014】
この技術は自然な動きの大きな集まりを考慮するために使用できるが、取得される予測は平均的な品質である。送信されるべき予測残差についての情報量は、従って、より大量であり、この付加情報の送信は圧縮性能の点で不利である。
【0015】
従って、従来の欠点を少なくとも部分的に緩和するために、低複雑性であり、同時に、高品質予測を提供する新しい画像符号化/復号化技術が必要である。
【発明の概要】
【発明が解決しようとする課題】
【0016】
3. 発明の概要
本発明は、画像のシーケンスの中の現在画像の少なくとも1つのブロックを、シーケンスの中の参照画像内の少なくとも1つの対応するブロックと関連付ける予測を実施し、画像のシーケンスの中の現在画像の少なくとも1つのブロックを符号化するステップを備える画像のシーケンスを符号化する方法の形で、従来技術の全ての欠点を有していない新しいアプローチを提案する。
【課題を解決するための手段】
【0017】
本発明によれば、予測は、現在画像又は参照画像のそれぞれの少なくとも1つの所与のブロックに対し、
− 1つずつが、ブロックの特徴点と、参照画像又は現在画像のそれぞれにおける上記特徴点の対応位置との間の、シフトを表現する、上記ブロックのための複数の制御ベクトルを決定するステップと、
− ブロックをサブブロックに少なくとも1回再分割するステップと、
− ブロックのための制御ベクトルから、サブブロックのための複数の制御ブロックを決定するステップと、
− サブブロックのために決定された制御ベクトルから実行された、少なくとも1つの上記サブブロックの動き補償から、現在画像の少なくとも1点のための予測の値を決定するステップと、
を備える。
【0018】
符号化方法は、シーケンスを表現する信号の中に、所与のブロックのための制御ベクトルを再構成する情報を挿入するステップをさらに備える。
【0019】
本発明は、このように、効果的な予測品質を提供し、同時に、低複雑性を維持するブロック「間」予測の新しい技術を提案する。提案される解決法は、ブロックの近傍(すなわち、このブロックの左、右、上、又は、下に位置しているブロック)のうちの少なくとも1つと相対的にブロックの動きを考慮して、画像シーケンス内の自然な動きをさらに考慮する。
【0020】
このため、本発明は、ブロックのためのいくつかの制御ベクトル(例えば、2個、3個、4個以上のベクトル)をこのブロックからこのブロックの1つ以上の近傍への連結に応じて決定することを提案する。
【0021】
例えば、ブロック又はサブブロックのための制御ベクトルは、それぞれブロック又はサブブロックの頂点のうちの1個と関連付けられる。よって、2D画像では、4個の制御ベクトルがブロックと関連付けられ、1個の制御ベクトルがブロックの各頂点又はコーナーと関連付けられている。3D画像では、8個のベクトルが実際には立方体に対応するブロックと関連付けられ、制御ベクトルはブロックの各コーナーと関連付けられている。制御ベクトルを、例えば、輪郭に対応するブロックの他の点と関連付けることも可能である。このようにして、ブロックと関連付けられている制御ベクトルの数は一定ではない。
【0022】
特に、提案された技術は、前方及び/又は後方投影を使用することにより画像シーケンスを符号化するため使用される。
【0023】
よって、使用される技術が後方投影を実施する場合、投影は後方動き補償による予測であり、制御ベクトルは現在画像から1つ以上の参照画像を指示する。この場合、複数の制御ベクトルが現在画像に属する所与のブロックのため決定される。
【0024】
反対に、使用される技術が前方投影を実施する場合、投影は前方動き補償による予測であり、制御ベクトルは1つ以上の参照画像から現在画像を指示する。従って、複数の制御ベクトルが参照ブロックに属する所与のブロックのために決定される。
【0025】
参照画像又は現在画像の少なくとも1つの所与のブロックに対し、ブロックは、次に、複数の制御ベクトルが決定されるサブブロックに再分割される。これらのサブブロックは特に異なったサイズにすることができる。
【0026】
このような再分割は、特に、同時にブロック平行移動だけを実行するアフィン変形動きのような画像シーケンス内の自然な動きを考慮することを可能にする。これらのブロック平行移動は、よって、サブ画素位置における画像補間値の計算の複雑性を顕著に制限する(すなわち、計算のブロック共有が、別個の点ベースの計算より効率的である)。
【0027】
本発明の1つの特有の態様によれば、制御ベクトルを再構成する複数の情報は、所与のブロックのための制御ベクトル又はこれらの制御ベクトルを表現する情報を含む。よって、ブロックのためのこれらの制御ベクトルはデコーダで容易に再構成することができる。
【0028】
一変形例によれば、制御ベクトルを再構成する複数の情報は、所与のブロックと少なくとも1つの隣接ブロックとの間の動きを表現する少なくとも1つの連結フラグを含む。
【0029】
例えば、制御ベクトルを再構成する複数の情報は、
− 現在画像と参照画像との間で所与のブロックと所与のブロックの上に位置しているブロックとの間の動きを表現する第1のフラグと、
− 現在画像と参照画像との間で所与のブロックと所与のブロックの左に位置しているブロックとの間の動きを表現する第2のフラグと、
を含む2つの連結フラグを備える。
【0030】
例えば、第1のフラグに対して「flag_tc」と呼ばれ、第2のフラグに対して「flag_lc」と呼ばれるこれらのフラグは、現在画像と参照画像との間で所与のブロックの動きとこの近傍(上隣接又は左隣接ブロック)の動きとを関連付けるため使用される。一旦、デコーダによって受信されると、これらのフラグは制御ベクトルを再構成するため使用される。
【0031】
例えば、所与のブロック及び所与のブロックの上に位置しているブロックが、動き補償後に、現在画像と参照画像とにおいて共通の稜線を有する場合、2番目のフラグは1に等しい(flag_tc=1)。これらの2つのブロックは、この場合、連結していると言われる。
【0032】
所与のブロック及び所与のブロックの左に位置しているブロックが、動き補償後に、現在画像と参照画像とにおいて共通稜線を有する場合、第2のフラグは1に等しい(flag_lc=1)。
【0033】
本発明は、通信ネットワークからダウンロード可能であり、及び/又は、コンピュータ読み取り可能な担体に記憶され、及び/又は、プロセッサによって実行可能であり、プログラムがコンピュータ上で実行されるとき、前述の符号化方法を実施するプログラムコード命令を備えるコンピュータプログラム製品にさらに関係する。
【0034】
別の実施形態では、本発明は、画像のシーケンスの中の現在画像の少なくとも1つのブロックをシーケンスの中の参照画像内の少なくとも1つの対応するブロックと関連付ける予測手段を実施して、上記少なくとも1つのブロックを符号化する手段を備える、画像のシーケンスを符号化する装置に関係する。
【0035】
本発明によれば、予測手段は、現在画像又は参照画像のそれぞれの少なくとも1つの所与のブロックに対し、
− ブロックのための複数の制御ベクトルを決定する手段と、
− ブロックをサブブロックに再分割する手段と、
− ブロックのために決定された制御ベクトルから、サブブロックのための複数の制御ベクトルを決定する手段と、
− サブブロックのために決定された制御ベクトルから実行された、少なくとも1つの上記サブブロックの動き補償から、現在画像の少なくとも1点のための予測の値を決定する手段と、
を備える。
【0036】
さらに、この種の符号化装置は、シーケンスを表現する信号の中に、所与のブロックのための制御ベクトルを再構成する情報を挿入する挿入手段を有している。
【0037】
このような符号化装置は、特に、前述の符号化方法の実施に適合している。例えば、この符号化装置は、MPEG又はH.264型式映像エンコーダ、又は、将来の映像圧縮標準を使用するエンコーダである。
【0038】
本発明のさらに別の態様は、前述した符号化方法によって符号化された画像シーケンスを表現する信号に関係する。
【0039】
このような信号は、所与のブロックのための制御ベクトルを再構成する少なくとも1つの情報を備える。
【0040】
この信号は、当然ながら、本発明の符号化方法に関係する異なった特性を含む。
【0041】
例えば、再構成情報は、所与のブロックと少なくとも1つの隣接ブロックとの間の動きを表現する少なくとも1つの連結フラグを含む。
【0042】
一変形例によれば、再構成情報は、所与のブロックのための制御ベクトル、又は、これらの制御ベクトルを表現する1つの情報を含む。
【0043】
特に、このような信号は、現在画像ブロックと予測との間の差又は残差をさらに含む。
【0044】
信号は、ブロックの再分割の順序に関する情報を伝達することもできる。
【0045】
本発明は、前述したような信号を提供するための記憶媒体にさらに関係する。
【0046】
本発明のさらに別の態様は、再構成されるべき画像のブロックを画像のシーケンスの中の参照画像内の少なくとも1つの対応するブロックと関連付ける、再構成されるべき画像の予測から、画像のシーケンスの中の少なくとも1つの画像を再構成するステップを備える、画像のシーケンスを表現する信号を復号化する方法に関係する。
【0047】
このような復号化方法は、再構成されるべき画像又は参照画像のそれぞれの、少なくとも1つの所与のブロックのための制御ベクトルの再構成に関する情報を取得するステップを備える。
【0048】
さらに、予測は、所与のブロックに対し、
− 上記再構成に関する情報から、1つずつが参照画像又は再構成されるべき画像のそれぞれにおける上記ブロックの特徴点と上記特徴点の対応する位置との間のシフトを表現するブロックのための複数の制御ベクトルを決定するステップと、
− ブロックをサブブロックに少なくとも1回再分割するステップと、
− ブロックのための制御ブロックからサブブロックのための複数の制御ベクトルを決定するステップと、
− サブブロックのために決定された制御ベクトルから実行された少なくとも1つの上記サブブロックの動き補償から、再構成されるべき画像の少なくとも1点の予測の値を決定するステップと、
を含む。
【0049】
このような方法は、前述の符号化方法によって符号化された画像のシーケンスを復号化するために、特に適合されている。このようにして、(信号中で送信された)予測残差を予測に加算することにより、所与のブロックを再構成するように、同じ予測のステップが符号化時に実行されたように実行される。
【0050】
復号化側で実行される予測は、信号中で送信された制御ベクトルの再構成に関する情報を使用する。
【0051】
よって、第1の実施形態によれば、取得するステップは、所与のブロックと少なくとも1つの隣接ブロックとの間の動きを表現する、少なくとも1つの連結フラグを抽出するステップを含む。
【0052】
フラグは、例えば、信号中で送信される「flag_tc」(第1のフラグ)及び「flag_lc」(第2のフラグ)である。
【0053】
これらのフラグは特に所与のブロックのための制御ベクトルを再構成するため使用される。
【0054】
第2の実施形態によれば、取得するステップは、上記所与のブロックのための制御ベクトルを受信するステップを含む。
【0055】
特に、復号化方法は、再分割を決定及び/又はパラメータ化するステップを含み、所与のブロックが再分割されるべきかどうかを決定し、及び/又は、所与のブロックの再分割をパラメータ化することを可能にする。これらの決定及び/又はパラメータ化するステップは、
− ブロックのためのサブブロックの所定数と、
− 上記制御ベクトル間の類似に関する1つの情報と、
− 上記ブロックのサイズと、
− 再分割数を表現するフラグと、
− その他と、
を含むグループに属する所定の基準を考慮する中で定められる。
【0056】
このようにして、再構成されるべき画像の全てのブロック、又は、参照画像のブロックは、必ずしもサブブロックに再分割されなくてもよく、サブブロックへの再分割は、画像の一つのブロックと別のブロックとの間で変化することができる。従って、サブブロックへの分割は適応的である。
【0057】
本発明は、通信ネットワークからダウンロード可能であり、及び/又は、コンピュータ読み取り可能な担体に記憶され、及び/又は、プロセッサによって実行可能であり、プログラムがプロセッサによって実行されるとき、前述の復号化方法を実施するプログラムコード命令を備えるコンピュータプログラム製品にさらに関係する。
【0058】
本発明の別の実施形態は、再構成されるべき画像のブロックをシーケンスの中の参照画像内の少なくとも1つの対応するブロックと関連付ける、再構成されるべき画像を予測する手段を実施して、画像のシーケンスの中の少なくとも1つの画像を再構成する手段を備える、画像のシーケンスを表現する信号を復号化する装置に関係する。
【0059】
このような装置は、再構成されるべき画像又は参照画像のそれぞれの少なくとも1つの所与のブロックのための、制御ベクトルの再構成に関する情報を取得する手段を備える。
【0060】
さらに、予測手段は、所与のブロックに対し、
− 再構成情報から、ブロックのための複数の制御ベクトルを決定する手段と、
− ブロックをサブブロックに再分割する手段と、
− ブロックのための制御ベクトルから、サブブロックのための複数の制御ベクトルを決定する手段と、
− サブブロックのために決定された制御ベクトルから、少なくとも1つの上記サブブロックの動き補償から再構成されるべき画像の少なくとも1点のための予測の値を決定する手段と、
を含む。
【0061】
この種の復号化装置は、特に、前述の復号化方法を実施するために適合されている。この復号化装置は、例えば、MPEG又はH.264形式映像デコーダ、又は、何らかの将来の映像圧縮標準を使用するデコーダである。
【0062】
4. 図のリスト
本発明の他の特徴及び利点は、簡単な例示的かつ非限定的な実施例の目的のために与えられた以下の特有の実施形態の説明と、添付図面とからよりはっきりと明らかになる。
【図面の簡単な説明】
【0063】
【図1A】本発明の一実施形態による動き補償を用いる予測の主要なステップを示す図である。
【図1B】本発明の一実施形態による符号化方法の主要なステップを示す図である。
【図2】ブロックのための制御ベクトルを決定するためのアルゴリズムを提案する図である。
【図3A】近傍を考慮したブロックためのベクトルの決定を示す図である。
【図3B】近傍を考慮したブロックためのベクトルの決定を示す図である。
【図3C】近傍を考慮したブロックためのベクトルの決定を示す図である。
【図3D】近傍を考慮したブロックためのベクトルの決定を示す図である。
【図3E】近傍を考慮したブロックためのベクトルの決定を示す図である。
【図3F】近傍を考慮したブロックためのベクトルの決定を示す図である。
【図3G】近傍を考慮したブロックためのベクトルの決定を示す図である。
【図4】ブロックのサブブロックへの再分割の実施例を示す図である。
【図5】画素のための予測値の決定を示す図である。
【図6】本発明の一実施形態による復号化方法の主要なステップを示す図である。
【図7】本本発明の1つの特有の実施形態による符号化装置の構造を示す図である。
【図8】本本発明の1つの特有の実施形態による復号化装置の構造を示す図である。
【発明を実施するための形態】
【0064】
5 発明の一実施形態の説明
5.1 一般原理
本発明の一般原理は、符号化されるべき画像のブロックをシーケンスの中の参照画像内の少なくとも1つの対応するブロックと関連付ける時間予測を実施する画像のシーケンスの符号化及び復号化にある。
【0065】
より具体的には、本発明は、モード「間」(「インター」モード)で符号化されたブロックの動き補償による予測の新しい技術を提案する。提案された技術は、送信されるべきパラメータの計算及び数の両方に関して、この技術がもたらす複雑さを制限することにより自然な動きの表現を取得するために使用することができる。
【0066】
本発明は、時間的に変化する画素のブロックに対応する、モーションチューブを用いて、表現された画像シーケンス又はシーンの符号化に特に適用できる。この変化中に、チューブは、例えば、見かけの動き、すなわち、ブロック内に存在する画素の数が増加するか、又は、減少するかを考察するため変形させることができる。このチューブは、例えば、ブロックのサブ画素レベルへ移る間に精緻化することができる。本発明は、特にチューブが受ける変形を決定するために使用できる。
【0067】
特に、モーションチューブは、少なくとも以下の情報、
− 参照テクスチャに関する情報を含む参照画素のブロックと、
− チューブ開始時点及び終了時点と、
− 上記参照ブロックと上記シーケンスの少なくとも1つの時点を更新するために使用される移行に関する情報と、
によって定義されることに注意されたい。
【0068】
画像シーケンスを表現するこのような技術は、本願の代わりに、特に、2007年6月25日に出願された仏国特許出願第0756007号に記載されている。
【0069】
本発明による時間予測は、少なくとも1つのブロックのための複数の制御ベクトルを決定することと、少なくともこのブロックをサブブロックに再分割することと、サブブロックのための複数の制御ベクトルを決定することとに依存する。これらの制御ベクトルは、その後、サブブロックの予測を決定するのに使われ、その後、ブロックの予想を決定するのに使われる。
【0070】
5.2 動き補償
以下、図1Aを参照して、例えば、H.264形式の映像エンコーダで実施される動き補償による予測のため実施される主要なステップについて説明する。
【0071】
本発明は、H.264標準において理解されるようにブロックならびにマクロブロックに適用できることに注意されたい。明細書中の「ブロック」という用語は、従って、これに反する指摘がない限り、この標準の真意に従って「マクロブロック」又は「ブロック」を意味することが理解されるべきである。
【0072】
図1Aに示されるように、画像シーケンスの中の現在画像のうちの少なくとも1つのブロックの動き補償による予測(11)は、第1の画像の少なくとも1つの所与のブロックbCに対し、以下のステップ、すなわち、
− 1つずつがブロックbCの特徴点と第2の画像内のこの特徴点の対応する位置との間のシフトを表現する、ブロックbCのための複数の制御ベクトルvbCを決定するステップ111と、
− ブロックbCをサブブロックbSC1、bSC2などに少なくとも1回再分割するステップ112と、
− ブロックのための制御ベクトルvbCに基づいてサブブロックのための複数の制御ベクトルvbSC1、vbSC2などを決定するステップ113と、
− サブブロックのため決定された制御ベクトルvbSC1、vbSC2などに基づいて実行された動き補償に基づいて、現在画像の少なくとも1点のための予測の値を決定するステップ114と、
を実施する。
【0073】
特に、予測が後方補償を実施する場合、第1の画像は現在画像であり、第2の画像は参照画像である。参照画像は前に符号化/復号化された画像に対応することに注意されたい。
【0074】
予測が前方動き補償を実施する場合、第1の画像は参照画像であり、第2の画像は現在画像である。
【0075】
このように、予測ブロック
【数2】
とも称される少なくとも1つの現在画像ブロックの予測が決定される。
【0076】
以下、符号化ブロック間の予測を決定するために実施される様々なステップのより詳細な説明が行われる。制御ベクトルを決定するステップと、ブロックをサブブロックに再分割するステップとは、制御ベクトルが現在画像から1つ以上の参照画像を指示する後方動き補償の場合に関して説明される。当業者は、現在画像を参照画像に置き換え、かつ、逆に参照画像を現在画像に置き換えて、この教示内容を制御ベクトルが参照画像から現在画像を指示する前方動き補償へ容易に拡張することができよう。点又は画素の予測値を決定するステップは、次に、2つの型式の動き補償の1つずつについて説明される。
【0077】
A) 制御ベクトル決定
最初に、典型的な方式では、動きベクトルは、現在画像ICのブロックbCのために決定される。この動きベクトルはvとして表される。
【0078】
次に、複数の制御ベクトルvbCがブロックbCのために決定される(111)。本実施形態では、1つずつがブロックの頂点又はコーナーと関連付けられている、4個の制御ベクトルがブロックのために決定される。
【0079】
例えば、以下の事項に注意する。
− vbrは、ブロックbCの右下に位置しているコーナーと関連付けられた制御ベクトルであり、
− vblは、ブロックbCの左下に位置しているコーナーと関連付けられた制御ベクトルであり、
− vtrは、ブロックbCの右上に位置しているコーナーと関連付けられた制御ベクトルであり、
− vtlは、ブロックbCの左上に位置しているコーナーと関連付けられた制御ベクトルである。
【0080】
これらの制御ベクトルはゼロ値で初期化される。
【0081】
符号化側で、現在画像IC内のブロックbCの位置がこのブロックの近傍の位置と比較され、参照画像IR内の対応するブロックの位置がこのブロックの近傍の位置と比較される。
【0082】
例えば、ブロックbC及び上に位置しているブロックが動き補償後に現在画像及び参照画像の両方に共通した稜線を有する場合、このことは2つのブロックが垂直方向に連結されていることを意味する。
【0083】
値1が次に第1のフラグflag_tcに割り当てられる。
【0084】
ブロックbC及びこのブロックの左に位置しているブロックが、動き補償後に現在画像及び参照画像の両方に共通した稜線を有する場合、このことは2つのブロックが水平方向に連結されていることを意味する。
【0085】
値1が次に第2のフラグflag_lcに割り当てられる。
【0086】
これらのフラグは、現在画像と参照画像との間でブロックbCの動き及びこのブロックの近傍(上又は左)の動きを表現する。これらのフラグは制御ベクトルを決定するため使用されることができる。これらのフラグは、デコーダによって受信される場合、制御ベクトルを再構成するため使用できる。
【0087】
状況に応じて、低減されたシグナリングを用いる実施のために、2つのフラグflag_tc及びflag_lcは同じ値をとるように抑制することができる。それらは、その後、単一の値0又は1をとる単一のフラグflag_cにより表現される。この変形では、従って、制御ベクトルを再構成するためデコーダによって唯一のフラグが使用される。
【0088】
現在画像及び参照画像の分析後、図2に提案されているように、ブロックbCのための制御ベクトルvbr、vbl、vtr及びvtlを決定する。
【0089】
例えば、ブロックbCの右下に位置しているコーナーと関連付けられている制御ベクトルvbrは、ブロックのため予め定められた動きベクトルvが割り付けられる(21)。
【0090】
次に、flag_lcが1に等しいかどうか、すなわち、ブロックbCとこのブロックの左に位置しているブロックとが水平方向に連結されているかどうかを調べるためチェックが行われる(22)。
【0091】
flag_tcが1に等しいかどうか、すなわち、ブロックbCとこのブロックの上に位置しているブロックとが垂直方向に連結されているかどうかを調べるためさらにチェックが行われる(231、232)。
【0092】
flag_lcが1に等しい場合、制御ベクトルvblは、ブロックbCの左に位置しているブロックの制御ベクトルvbrの値をとる(vbl=vbr(left_block))。これらの表記法は、検討されている分野における当業者が式を読み、理解するのを容易にするように選ばれている。
【0093】
さらに、垂直連結モード(フラグflag_tcが1に等しい)では、制御ベクトルvtrは、ブロックbCの上に位置しているブロックの制御ベクトルvbrの値をとり(vtr=vbr(top_block))、制御ベクトルvtlは、ブロックbCの上に位置しているブロックの制御ベクトルvblとブロックbCの左に位置しているブロックの制御ベクトルvtrとの平均値をとる(vtl=moy[vbr(left_block),vbl(top_block)])。
【0094】
垂直非連結モード(flag_tcが0に等しい)では、制御ベクトルvtlは、ブロックbCの左に位置しているブロックの制御ベクトルvtrの値をとり(vtl=vtr(left_block))、制御ベクトルvtrは、ブロックbCの3つの他の制御ベクトルから取得される(vtr=vtl+vbr−vbl)。
【0095】
ステップ22の間に、flag_lcは1に等しくないこと、すなわち、ブロックbCとこのブロックの右に位置しているブロックが非連結モードであることが観察された場合、達成されることは、
− 垂直連結モード(フラグflag_tcが1に等しい)において、
○ 制御ベクトルvtrはブロックbCの上に位置しているブロックの制御ベクトルvbrの値をとり(vtr=vbr(top_block))、
○ 制御ベクトルvtlはブロックbCの上に位置しているブロックの制御ベクトルvblの値をとり(vtl=vbl(top_block))、
○ 制御ベクトルvblはブロックbCの他の3つの制御ベクトルか取得され(vbl=vtl+vbr−vtr)、
が得られ、
− 垂直非連結モード(flag_tcが0に等しい)では、
○ 制御ベクトルvtl、vtr及びvbrは全てがブロックbCの制御ベクトルvbrの値をとる、ことが得られる(vbl=vtl=vbr=vtr=v)。
【0096】
特に、ブロックがこのブロックの左に近傍を有しない場合、このブロックの左上のコーナー及び左下のコーナーと関連付けられる制御ベクトルは、このブロックの右上のコーナー及び右下のコーナーから定義される(vbl=vbr及びvtl=vtr)。同様に、ブロックがこのブロックの上に近傍を有しない場合、このブロックの左上のコーナー及び右上のコーナーと関連付けられるこのブロックの上の制御ベクトルは、このブロックの左下のコーナー及び右下のコーナーのために定義された制御ベクトルに基づいて定義される(vtl=vbl及びvtr=vbr)。ブロックが左の近傍も上の近傍も有しない場合、このブロックの左上のコーナーと、右上のコーナーと、右下のコーナーと関連付けられる制御ベクトルは、このブロックの右下のコーナーのため決定された制御ベクトルに基づいて定義される(vbl=vtl=vtr=vbr)。
【0097】
提示された実施例によれば、フラグflag_lc及びflag_tcは、ブロックbCのための制御ベクトルの再構成のための情報の形でデコーダへ送信される。
【0098】
特に、フラグは、ブロックの組によって定義されてもよく、又は、再びブロック単位で定義されてもよい。さらに、これらのフラグは、所与のブロックのための動きベクトルvの定義中に利用されることがある。実際に、これらの情報は、例えば、所与のブロックと関連付けられた動きベクトルの予測のために使用される予測モードで使用することができる。
【0099】
よって、所与のブロック及びこのブロックの上に位置しているブロックが連結され、そして、所与のブロックがこのブロックの左に位置しているブロックに連結されていない場合、所与のブロックの動きベクトルの符号化は、(従来技術のエンコーダで使用されているように隣接ブロックの中央値ベクトルに基づく予測ではなく)上に位置しているブロックの動きベクトルによって定義された予測を用いて実行することができる。
【0100】
同様に、所与のブロックとこのブロックの左に位置しているブロックとが連結され、そして、所与のブロックがこのブロックの上に位置しているブロックに連結されていない場合、所与のブロックの動きベクトルの符号化は、(従来技術のエンコーダで使用されているように隣接ブロックの中央値ベクトルに基づく予測ではなく)このブロックの左に位置しているブロックの動きベクトルによって定義された予測を用いて実行できる。
【0101】
さらに、提示された実施形態によれば、唯一の動きベクトル、すなわち、ベクトルv(v=vbr)を符号化することができる。他の動きベクトル(vtr、vtl、vbl)は、フラグflag_lc及びflag_tcを用いて定義されることができる。
【0102】
図3A〜3Fは、制御ベクトルが現在画像ICから参照画像IRを指示する後方動き補償による予測のための現在画像ICのブロックbCに対する制御ベクトルの決定を特に示す。
【0103】
より具体的には、図3Aは、ブロックbCの左及び上に位置しているブロックに一貫性がある場合、すなわち、ブロックbCの上に位置しているブロックの左下のコーナーとブロックbCの左に位置しているブロックの右上のコーナーとが連結され、フラグflag_lc及びflag_tcが1に等しい場合に、ブロックbCのための制御ベクトルの決定を示す。
【0104】
図3Bは、ブロックbCの左及び上に位置しているブロックに一貫性があり、flag_lcが1に等しく、flag_tcが0に等しい場合を示す。
【0105】
図3Cは、ブロックbCの左及び上に位置しているブロックに一貫性があり、flag_lcが0に等しく、flag_tcが1に等しい場合を示す。
【0106】
図3Dは、ブロックbCの左及び上に位置しているブロックに一貫性があり、flag_lc及びflag_tcが0に等しい場合を示す。
【0107】
図3Eは、ブロックbCの左及び上に位置しているブロックに一貫性がない場合、すなわち、ブロックbCの上に位置しているブロックの左下のコーナーと、ブロックbCの左に位置しているブロックの右上のコーナーとが異なり、flag_lcが1に等しく、flag_tcが0に等しい場合を示す。
【0108】
図3Fは、ブロックbCの左及び上に位置しているブロックに一貫性がなく、flag_lcが0に等しく、flag_tcが1に等しい場合を示す。
【0109】
図3Gは、ブロックbCの左及び上に位置しているブロックに一貫性がなく、flag_lc及びflag_tcが1に等しい場合を示す。
【0110】
B) ブロックのサブブロックへの再分割
以下、ブロックbCをサブブロックに再分割するステップ112のより厳密な説明を行う。本発明によれば、現在画像の少なくとも1つのブロックがサブブロックに再分割されることに注意されたし。
【0111】
ブロックbCのため定義された4個の制御ベクトルは、次に、異なったサブブロックの制御ベクトルを定義するため補間されるように使用される。例えば、サブブロック毎に4個の制御ベクトルを決定する。
【0112】
よって、図4に示されるように、ブロックbCは、例えば、4個のサブブロックbSC1、bSC2、bSC3及びbSC4に再分割される。ブロックbCに帰属させられた制御ベクトルは、サブブロックのための新しい制御ベクトルを定義するため補間される。例えば、以下の表記法が使用され、
− vmlはサブブロックbSC1の左下に位置しているコーナーと関連付けられた制御ベクトルであり、サブブロックbSC3の左上に位置しているコーナーにも対応し、
− vtmはサブブロックbSC1の上に位置しているコーナーと関連付けられた制御ベクトルであり、サブブロックbSC2の左上に位置しているコーナーにも対応し、
− vmrはサブブロックbSC2の右下に位置しているコーナーと関連付けられた制御ベクトルであり、サブブロックbSC4の右上に位置しているコーナーにも対応し、
− vbmはサブブロックbSC3の右上に位置しているコーナーと関連付けられた制御ベクトルであり、サブブロックbSC4の左下に位置しているコーナーにも対応し、
− vmmはサブブロックbSC1の右下に位置しているコーナーと関連付けられた制御ベクトルであり、サブブロックbSC2の左下に位置しているコーナーと、サブブロックbSC3の右上に位置しているコーナーと、サブブロックbSC4の左上に位置しているコーナーとにも対応する。
【0113】
サブブロックのための制御ベクトルは、次に、ブロックbCのための制御ブロックから決定され、例えば、以下の通りである。
【数4】
【0114】
これらの制御ベクトルは、次に、異なるサブブロックに割り付けられ、
− 左上に位置しているサブブロックbSC1は、制御ベクトルとして、動きベクトルvtl、vtm、vml、vmmを有し、
− 左上に位置しているサブブロックbSC2は、制御ベクトルとして、動きベクトルvtm、vtr、vmm、vmrを有し、
− 左下に位置しているサブブロックbSC3は、制御ベクトルとして、動きベクトルvml、vmm、vbl、vbmを有し、
− 右下に位置しているサブブロックbSC4は、制御ベクトルとして、動きベクトルvmm、vmr、vbm、vbrを有している。
【0115】
再分割数はいくつかのパラメータに依存することができる。例えば、再分割数は、ブロックの組に対し定義されるか、又は、そうでなければ、ブロック単位で適応性のあるパラメータ全体によって定義されることができる。よって、ブロックは、特定の予測が行われる、より小さいサイズのサブブロックに分割される。その後、動き補償を取得するために、可変のブロックサイズが出現する。
【0116】
より具体的には、再分割数は、ブロックのサイズに応じて、又は、ブロックに対する所定のサブブロックの数に応じて定義することができる。例えば、サイズが16×16であるマクロブロックは、サイズが4×8もしくは8×4である8個のブロック、又は、サイズが8×8である4個のブロックに再分割されるか、あるいは、サイズが8×16もしくは16×8である2個のブロックによって形成されるブロックに再分割されることができる。
【0117】
一変形例によれば、ブロックbCと関連付けられた制御ベクトルは、類似に関する1つの情報を取得するために2個ずつ比較される。ブロックbCは、次に、類似に関する情報が少なくとも1つの所定のスレッショルドを越える場合に限りサブブロックに再分割される。
【0118】
ブロック単位で適応性がある場合、制御ベクトル間の振幅の最大差に応じて(例えば、最大差の値の簡単な定量化によって)行われるように再分割の数を定義することができる。
【0119】
C) 現在画像のサブブロックの後方動き補償のための現在画像の少なくとも1点に対する予測値の決定
以下、図5に示されるように、現在画像のサブブロックのため決定された制御ベクトルに基づいて実行される後方動き補償から現在画像の少なくとも1画素のための予測値を決定するステップ114を提示する。
【0120】
サブブロック及びこのサブブロックの4個の制御ベクトルを仮定して、このサブブロックのいずれかの点xに対し、以下の式:
P(x)=w1(x)IR(x+v1)+w2(x)IR(x+v2)+w3(x)IR(x+v3)+w4(x)IR(x+v4)
但し、
サブブロックbSC1に対し、(v1,v2,v3,v4)=(vtl,vtm,vmm,vml)、
サブブロックbSC2に対し、(v1,v2,v3,v4)=(vtm,vtr,vmr,vmm)、
サブブロックbSC3に対し、(v1,v2,v3,v4)=(vml,vmm,vbm,vbl)、及び、
サブブロックbSC4に対し、(v1,v2,v3,v4)=(vmm,vmr,vbr,vbm)、
を用いて予測P(x)を定める。
【0121】
重み付け値w1(x)、w2(x)、w3(x)、w4(x)は、前述の“On Spatial Adaptation of Motion Field Smoothness in Video Coding”に記載されているように決定されることができる。他の既知の技術もまた、予想することができる。
【0122】
このようにして、現在画像ICの少なくとも1つのブロックの予測を決定する。
【0123】
D) 参照画像のサブブロックの前方動き補償のための現在画像の少なくとも1点に対する予測値の決定
以下、参照画像のサブブロックのため決定された制御ベクトルに基づいて実行される前方動き補償に基づいて現在画像の少なくとも1画素のための予測の値を決定するステップ114を提示する。
【0124】
前方動き補償の場合、現在画像のブロックは、1つ以上の参照画像のいくつかのブロックによって予測できる。現在画像の点に対し予測値を計算するためには、現在画像の点を予測するために使用することができるブロックを決定するため、参照画像の全てのブロックを現在画像に投影することが必要である。
【0125】
以下、現在画像のための予測画像を構築するアルゴリズムを提案する。
【0126】
第1のステップの間に、予測画像を初期化する。よって、画像のあらゆる点xに対し、RI(x)=0、RW(x)=0である。RIは、参照画像のブロックによって与えられた全ての予測値が加重累計された予測画像に対応し、RWは加重累計画像に対応する。
【0127】
いずれのサブブロックbSC1、bSC2、・・・に対しても、以下のステップが実施される:
− サブブロックの各動きベクトルに対し、予測画像は、tl、tr、bl、そして、brに等しいabに対して更新される。サブブロック内のいずれのxに対しても、次の点を満たす:
− 点RI(x+vab)における値wab(x)*P(x)に関して、RI(x+vab)+=wab(x)*P(x)が累計され、P(x)はサブブロックの点xにおける予測である。
− 点RW(x+vab)における値wab(x)に関して、RW(x+vab)+=wab(x))が累計される。
【0128】
前方動き補償の間に使用される重みwabは、後方動き補償で使用された値でも、異なる値でもとることが可能である。特に、これらの値は、相異し、ブロック単位で適応性であるようにすることができる。例えば、この適応は制御動きベクトルの類似に依存することができる。
【0129】
予測画像は、その後に、画像内のいずれの点xに対しても標準化され、
RW(x)が0ではない場合、RI(x)はRW(x)で割り算され、すなわち、
RW(x)!=0である場合、RI(x)/=RW(x)であり、
そうでない場合、RI(x)は所定の値UNDEF、例えば、値0で更新される。
【0130】
状況に応じて、RW(x)が0に等しい未定義値は、これらの値の近傍と相対的によりあり得そうな値を有するために修正される。この最後のステップは、様々の方式で、例えば、未定義のいずれかの値に対し、正確に定義された値を有している予測画像内で最も接近した点yの値を規定するときに実行されることができる(すなわち、0と異なるRW(y))。
【0131】
このように、現在画像ブロックICの予測が定義される。
【0132】
5.3 符号化
以下、図1Bを参照して、例えば、H.264形式映像エンコーダで実施される主要な符号化ステップを規定する。特に、本発明の方法は、種々の方式で、特に、ワイヤード形式又はソフトウェア形式で実施することができる。
【0133】
図1Bに示されるように、本発明の符号化方法は、図1Aを参照して前述されたように動き補償による予測を実施する、画像シーケンスの中の現在画像ICの、少なくとも1つのブロックbCを符号化する符号化ステップ11を含む。
【0134】
このようにして、予測ブロック
【数4】
と称される少なくとも1つの現在画像ブロックICの予測を決定する。
【0135】
次に、典型的には、現在画像ブロックと予測ブロック
【数5】
との間の差に対応する予測誤差残差を決定する。
【0136】
最後に、ステップ12で、ブロックbCのための制御ベクトルの再構成に関する情報が画像のシーケンスを表現する信号の中に挿入される。
【0137】
例えば、これらの再構成情報は、ブロックbCと少なくとも1つの隣接ブロックとの間の動きを表現する連結フラグの形をしているか、又は、ブロックbCのための制御ベクトルをそのまま含む。
【0138】
予測誤差残差も同様に信号の中に挿入される。これらの残差は、画像シーケンスの再構成中にデコーダによって使用できる。
【0139】
画像シーケンスを表現する信号は、その後に、送信されること、及び/又は、記録媒体に格納されることができる。
【0140】
5.3 信号
符号化されると、シーケンスの中の画像はデコーダへ送信される。
【0141】
さらに、ブロックbCのための制御ベクトルの再構成に関する情報要素は、この信号の中に挿入される。例えば、これらの再構成情報はフラグflag_lc及びflag_tcを含む。
【0142】
一実施形態によれば、予測誤差残差、特に、画像シーケンスの再構成中にデコーダによって使用される動きベクトルvの予測残差が、信号の中にさらに挿入される。
【0143】
エンコーダでブロックbCが受ける再分割操作の回数を指定するフラグを挿入することも可能である。このようにして、エンコーダによる予測中に実行される再分割がデコーダによる予測中に実行される再分割と同一であることを確実にする。
【0144】
5.4 復号化
次に図6を参照して、例えば、H.264型式映像デコーダによって実施される復号化の主要なステップを提示する。
【0145】
本発明の方法は、種々の方式、特に、ワイヤード形式又はソフトウェア形式で実施することができる。
【0146】
デコーダは、例えば、前述の符号化方法によって符号化された画像のシーケンスを受信することが仮定される。
【0147】
より具体的には、図6に示されるように、本発明による復号化方法は、再構成されるべき画像の予測からシーケンスの中の少なくとも1つの画像を再構成するステップ61と、再構成されるべきメッセージ又は参照画像の少なくとも1つの所与のブロックbCのための制御ブロックの再構成に関する情報を取得するステップ62とを有する。
【0148】
本実施例によれば、再構成されるべき画像又は参照画像の少なくとも1つの所与のブロックbCに対し以下のステップ、
− 再構成情報に基づいて、1つずつが参照画像又は再構成されるべき画像内のブロックbCの特徴点とこの特徴点の対応する位置との間のシフトを表現する、ブロックbCのための複数の制御ベクトルを決定するステップ611と、
− ブロックbCをサブブロックbSC1、bSC2などに少なくとも1回再分割するステップ612と、
− このブロックのための制御ベクトルに基づいて、サブブロックのための複数の制御ベクトルvbSC1、vbSC2などを決定するステップ613と、
− サブブロックのため決定された制御ベクトルに基づいて行われた少なくとも1つのサブブロックの動き補償に基づいて、再構成されるべき画像の少なくとも1つの画素のための予測値を決定するステップ614と、
が実施される。
【0149】
このようにして、再構成されるべき画像の少なくとも1つのブロックに対し、
【数6】
とも称される予測ブロックが決定される。
【0150】
次に、典型的には、再構成されるべき画像の再構成ブロックを決定するように、予測ブロックの符号化中に予測誤差残差が加算される。
【0151】
ブロックのための複数の制御ベクトルを決定するステップ611と、ブロックをサブブロックに再分割するステップ612と、サブブロックのための複数の制御ベクトルを決定するステップ613と、再構成されるべき画像の少なくとも1つの画素のための予測の値を決定するステップ614とは、符号化中に実施されたステップと同様であるので、ここでは詳細に説明されない。
【0152】
特に、ブロックbCのための複数の制御ベクトルvbCを決定するこのステップ611は、ステップ62の間に取得された再構成に関する情報を考慮することに注意されたい。
【0153】
第1の変形例によれば、再構成に関するこれらの情報は、特に、エンコーダで画像シーケンスを表現する信号の中に挿入された少なくとも1つの連結フラグの形をしている。例えば、これらの再構成情報はflag_tc及びflag_lcを含む。
【0154】
第2の変形例によれば、再構成に関するこれらの情報は、ストリーム中でそのまま送信されたブロックbCのための制御ベクトルの形をしている。
【0155】
5.5 動きの反転
前述されているように、提案された技術は、前方投影及び/又は後方投影を使用する際に画像のシーケンスの符号化/復号化を可能にする。
【0156】
よって、ブロックに基づいて定義された動きは反転されることがあり、前方投影(動きベクトルが参照画像上で定義される)によって、複数の情報(現在画像における動きのテクスチャ値の予測、又は、例えば、奥行きに関する情報を符号化する3D映像エンコーダの奥行きに関する情報のような全ての他の有用な情報を符号化/復号化するプロセスを行うことを可能にすることができる。
【0157】
動き反転によって再構成された画像は、前述のサブブロックへの再分割を用いて取得される。この再構成画像は、エンコーダ及び/又はデコーダで使用できる。
【0158】
5.6 エンコーダの構造及びデコーダの構造
次に図7及び8を参照して、前述の符号化技術及び復号化技術をそれぞれに実施する符号化装置及び復号化装置の簡略化された構造を最後に提示する。
【0159】
図7に示されるような符号化装置は、バッファメモリを含むメモリ71と処理ユニット72とを備え、処理ユニット72は、マイクロプロセッサμPを例えば装備し、本発明による符号化方法を実施するコンピュータプログラムによって駆動される。
【0160】
初期化時に、コンピュータ・プログラム・コード命令73は、例えば、RAMにロードされ、その後、処理ユニット72のプロセッサによって実行される。処理ユニット72は、符号化されるべき少なくとも1つの画像、又は、符号化されるべき画像のブロックを入力において受信する。処理ユニット72のマイクロプロセッサは、符号化されるべき画像又はブロックの予測を決定し、ブロック又は対応する画像を符号化するために、コンピュータプログラム73の命令によって前述の符号化方法のステップを実施する。このため、符号化装置は、バッファメモリ71に加えて、ブロックをシーケンスの中の参照画像内の少なくとも1つの対応するブロックと関連付ける予測手段と、シーケンスを表現する信号の中にブロックのための制御ベクトルの再構成に関する情報を挿入する手段とを備え、予測手段は、ブロックのための複数の制御ベクトルを決定する手段と、ブロックをサブブロックに再分割する手段と、サブブロックのための複数の制御ベクトルを決定する手段と、現在画像の少なくとも1つの画素のための予測値を決定する手段とを備える。これらの手段は、処理ユニット72のマイクロプロセッサによって駆動される。
【0161】
図8に示されるような復号化装置は、バッファメモリを含むメモリ81と処理ユニット82とを備え、処理ユニット82は、マイクロプロセッサμPを例えば装備し、本発明による符号化方法を実施するコンピュータプログラム83によって駆動される。
【0162】
初期化時に、コンピュータ・プログラム・コード命令83は、例えば、RAMにロードされ、その後、制御ユニット82のプロセッサによって実行される。処理ユニット82は、少なくとも1つの所与のブロックと関連付けられた制御ベクトルの再構成のための複数の情報を備える画像のシーケンスを表現する信号を入力において受信する。制御ユニット82のマイクロプロセッサは、所与のブロックの予測を決定し、対応する画像を再構成するために、コンピュータプログラム83の命令によって前述の復号化方法のステップを実施する。このため、復号化装置は、バッファメモリ81に加えて、上記シーケンスの中の少なくとも1つの画像を再構成する手段と、少なくとも1つの所与のブロックのための制御ベクトルの再構成に関する情報を取得する手段とを備え、再構成する手段は、ブロックのための複数の制御ベクトルを決定する手段と、ブロックをサブブロックに再分割する手段と、サブブロックのための複数の制御ベクトルを決定する手段と、再構成されるべき画像の少なくとも1つの画素のための予測値を決定する手段とを含む、予測手段を備える。これらの手段は、処理ユニット82のマイクロプロセッサによって駆動される。
【特許請求の範囲】
【請求項1】
画像のシーケンスの中の現在画像の少なくとも1つのブロックを前記シーケンスの中の参照画像内の少なくとも1つの対応するブロックと関連付ける予測(11)を実施して、前記少なくとも1つのブロックを符号化するステップを備える、前記画像のシーケンスの符号化方法であって、
前記予測(11)は、前記現在画像又は前記参照画像のそれぞれの少なくとも1つの所与のブロックに対し、
各制御ベクトルが前記参照画像又は前記現在画像のそれぞれにおける前記ブロックの特徴点と前記特徴点の対応位置との間のシフトを表現する、前記ブロックのための複数の制御ベクトルを決定するステップ(111)と、
前記ブロックをサブブロックに少なくとも1回再分割するステップ(112)と、
前記ブロックのための前記制御ベクトルから前記サブブロックのための複数の制御ブロックを決定するステップ(113)と、
前記サブブロックのため決定された前記制御ベクトルから実行された、少なくとも1つの前記サブブロックの動き補償から、前記現在画像の少なくとも1点のための予測の値を決定するステップ(114)と、
を備え、
前記方法において、前記シーケンスを表現する信号の中に、前記所与のブロックのための前記制御ベクトルを再構成するための情報を挿入するステップをさらに備えることを特徴とする符号化方法。
【請求項2】
前記制御ベクトルを再構成するための情報は、前記所与のブロックと少なくとも1つの隣接ブロックとの間の動きを表現する少なくとも1つの連結フラグを含むことを特徴とする、請求項1に記載の符号化方法。
【請求項3】
前記連結フラグは、
前記現在画像と前記参照画像との間で前記所与のブロックと前記所与のブロックの上に位置しているブロックとの間の動きを表現する第1のフラグと、
前記現在画像と前記参照画像との間で前記所与のブロックと前記所与のブロックの左に位置しているブロックとの間の動きを表現する第2のフラグと、
を含むことを特徴とする、請求項2に記載の符号化方法。
【請求項4】
前記ブロック又はサブブロックのための前記制御ベクトルは、1つずつが前記ブロック又はサブブロックの頂点と関連付けられていることを特徴とする、請求項1に記載の符号化方法。
【請求項5】
通信ネットワークからダウンロード可能であり、及び/又は、コンピュータ読み取り可能な担体に記憶され、及び/又は、プロセッサによって実行可能であり、プログラムがコンピュータ上で実行されるとき、請求項1〜4のうちのいずれか一項に記載の符号化方法を実施するプログラムコード命令を備えることを特徴とするコンピュータプログラム製品。
【請求項6】
画像のシーケンスの中の現在画像の少なくとも1つのブロックを前記シーケンスの中の参照画像内の少なくとも1つの対応するブロックと関連付ける予測手段(11)を実施して、前記少なくとも1つのブロックを符号化する手段を備える、前記画像のシーケンスの符号化装置であって、
前記予測手段(11)は、前記現在画像又は前記参照画像のそれぞれの少なくとも1つの所与のブロックに対し、
各制御ベクトルが前記参照画像又は前記現在画像のそれぞれにおける前記ブロックの特徴点と前記特徴点の対応位置との間のシフトを表現する前記ブロックのための複数の制御ベクトルを決定する手段(111)と、
前記ブロックをサブブロックに再分割する手段(112)と、
前記ブロックのために決定された前記制御ベクトルから前記サブブロックのための複数の制御ベクトルを決定する手段(113)と、
前記サブブロックのために決定された前記制御ベクトルから実行された少なくとも1つの前記サブブロックの動き補償から、前記現在画像の少なくとも1点のための予測の値を決定する手段(114)と、
を備え、
前記シーケンスを表現する信号の中に、前記所与のブロックのための前記制御ベクトルを再構成するための情報を挿入する手段(12)をさらに有することを特徴とする符号化装置。
【請求項7】
請求項1〜4のうちのいずれか一項に記載の符号化方法によって符号化された画像シーケンスを表現する信号であって、
前記所与のブロックのための制御ベクトルを再構成するための少なくとも1つの情報を備えることを特徴とする信号。
【請求項8】
前記制御ベクトルを再構成するための前記情報は、前記所与のブロックと少なくとも1つの隣接ブロックとの間の動きを表現する少なくとも1つの連結フラグを含むことを特徴とする、請求項7に記載の信号。
【請求項9】
請求項7及び8のうちのいずれか一項に記載の信号を提供するための記憶媒体。
【請求項10】
画像のシーケンスの中の再構成されるべき画像のブロックを前記シーケンスの中の参照画像内の少なくとも1つの対応するブロックと関連付ける前記再構成されるべき画像の予測から、前記シーケンスの中の少なくとも1つの画像を再構成するステップ(61)を備える、前記画像のシーケンスを表現する信号の復号化方法であって、
前記再構成されるべき画像又は前記参照画像のそれぞれの少なくとも1つの所与のブロックのための制御ベクトルを再構成するための情報を取得するステップ(62)を備え、
前記予測は、前記所与のブロックに対し、
前記制御ベクトルを再構成する前記情報から、1つずつが前記参照画像又は前記再構成されるべき画像のそれぞれにおける前記ブロックの特徴点と前記特徴点の対応する位置との間のシフトを表現する前記ブロックのための複数の制御ベクトルを決定するステップ(611)と、
前記ブロックをサブブロックに少なくとも1回再分割するステップ(612)と、
前記ブロックのための前記制御ベクトルから前記サブブロックのための複数の制御ベクトルを決定するステップ(613)と、
前記サブブロックのために決定された前記制御ベクトルから実行された少なくとも1つの前記サブブロックの動き補償から、再構成されるべき前記画像の少なくとも1点のための予測の値を決定するステップ(614)と、
を含むことを特徴とする復号化方法。
【請求項11】
前記情報を取得するステップ(62)は、前記所与のブロックと少なくとも1つの隣接ブロックとの間の動きを表現する少なくとも1つの連結フラグを抽出するステップを含むことを特徴とする、請求項10に記載の復号化方法。
【請求項12】
前記情報を取得するステップ(62)は、前記所与のブロックのための前記制御ベクトルを受信するステップを含むことを特徴とする、請求項10に記載の復号化方法。
【請求項13】
前記ブロックのためのサブブロックの所定数と、
前記制御ベクトル間の類似に関する1つの情報と、
前記ブロックのサイズと、
再分割数を表現するフラグと、
を含むグループに属する所定の基準によって、前記再分割を決定及び/又はパラメータ化するステップをさらに備えることを特徴とする、請求項10に記載の復号化方法。
【請求項14】
通信ネットワークからダウンロード可能であり、及び/又は、コンピュータ読み取り可能な担体に記憶され、及び/又は、プロセッサによって実行可能であり、プログラムがプロセッサによって実行されるとき、請求項10〜13のうちのいずれか一項に記載の復号化方法を実施するプログラムコード命令を備えることを特徴とするコンピュータプログラム製品。
【請求項15】
画像のシーケンスの中の再構成されるべき画像のブロックを、前記シーケンスの中の参照画像内の少なくとも1つの対応するブロックと関連付ける前記再構成されるべき画像を予測する手段を実施して、前記シーケンスの中の少なくとも1つの画像を再構成する手段(61)を備える、前記画像のシーケンスを表現する信号の復号化装置であって、
前記再構成されるべき画像又は前記参照画像のそれぞれの少なくとも1つの所与のブロックのための制御ベクトルを再構成するための情報を取得する手段(62)を備え、
前記予測する手段は、前記所与のブロックに対し、
前記制御ベクトルを再構成するための情報から、1つずつが前記参照画像又は前記再構成されるべき画像のそれぞれにおける前記ブロックの特徴点と前記特徴点の対応する位置との間のシフトを表現する前記ブロックのための複数の制御ベクトルを決定する手段(611)と、
前記ブロックをサブブロックに再分割する手段(612)と、
前記ブロックのための前記制御ベクトルから、前記サブブロックのための複数の制御ベクトルを決定する手段(613)と、
前記サブブロックのため決定された前記制御ベクトルから実行された少なくとも1つの前記サブブロックの動き補償から、前記再構成されるべき画像の少なくとも1点のための予測の値を決定する手段(614)と、
を含むことを特徴とする復号化装置。
【請求項1】
画像のシーケンスの中の現在画像の少なくとも1つのブロックを前記シーケンスの中の参照画像内の少なくとも1つの対応するブロックと関連付ける予測(11)を実施して、前記少なくとも1つのブロックを符号化するステップを備える、前記画像のシーケンスの符号化方法であって、
前記予測(11)は、前記現在画像又は前記参照画像のそれぞれの少なくとも1つの所与のブロックに対し、
各制御ベクトルが前記参照画像又は前記現在画像のそれぞれにおける前記ブロックの特徴点と前記特徴点の対応位置との間のシフトを表現する、前記ブロックのための複数の制御ベクトルを決定するステップ(111)と、
前記ブロックをサブブロックに少なくとも1回再分割するステップ(112)と、
前記ブロックのための前記制御ベクトルから前記サブブロックのための複数の制御ブロックを決定するステップ(113)と、
前記サブブロックのため決定された前記制御ベクトルから実行された、少なくとも1つの前記サブブロックの動き補償から、前記現在画像の少なくとも1点のための予測の値を決定するステップ(114)と、
を備え、
前記方法において、前記シーケンスを表現する信号の中に、前記所与のブロックのための前記制御ベクトルを再構成するための情報を挿入するステップをさらに備えることを特徴とする符号化方法。
【請求項2】
前記制御ベクトルを再構成するための情報は、前記所与のブロックと少なくとも1つの隣接ブロックとの間の動きを表現する少なくとも1つの連結フラグを含むことを特徴とする、請求項1に記載の符号化方法。
【請求項3】
前記連結フラグは、
前記現在画像と前記参照画像との間で前記所与のブロックと前記所与のブロックの上に位置しているブロックとの間の動きを表現する第1のフラグと、
前記現在画像と前記参照画像との間で前記所与のブロックと前記所与のブロックの左に位置しているブロックとの間の動きを表現する第2のフラグと、
を含むことを特徴とする、請求項2に記載の符号化方法。
【請求項4】
前記ブロック又はサブブロックのための前記制御ベクトルは、1つずつが前記ブロック又はサブブロックの頂点と関連付けられていることを特徴とする、請求項1に記載の符号化方法。
【請求項5】
通信ネットワークからダウンロード可能であり、及び/又は、コンピュータ読み取り可能な担体に記憶され、及び/又は、プロセッサによって実行可能であり、プログラムがコンピュータ上で実行されるとき、請求項1〜4のうちのいずれか一項に記載の符号化方法を実施するプログラムコード命令を備えることを特徴とするコンピュータプログラム製品。
【請求項6】
画像のシーケンスの中の現在画像の少なくとも1つのブロックを前記シーケンスの中の参照画像内の少なくとも1つの対応するブロックと関連付ける予測手段(11)を実施して、前記少なくとも1つのブロックを符号化する手段を備える、前記画像のシーケンスの符号化装置であって、
前記予測手段(11)は、前記現在画像又は前記参照画像のそれぞれの少なくとも1つの所与のブロックに対し、
各制御ベクトルが前記参照画像又は前記現在画像のそれぞれにおける前記ブロックの特徴点と前記特徴点の対応位置との間のシフトを表現する前記ブロックのための複数の制御ベクトルを決定する手段(111)と、
前記ブロックをサブブロックに再分割する手段(112)と、
前記ブロックのために決定された前記制御ベクトルから前記サブブロックのための複数の制御ベクトルを決定する手段(113)と、
前記サブブロックのために決定された前記制御ベクトルから実行された少なくとも1つの前記サブブロックの動き補償から、前記現在画像の少なくとも1点のための予測の値を決定する手段(114)と、
を備え、
前記シーケンスを表現する信号の中に、前記所与のブロックのための前記制御ベクトルを再構成するための情報を挿入する手段(12)をさらに有することを特徴とする符号化装置。
【請求項7】
請求項1〜4のうちのいずれか一項に記載の符号化方法によって符号化された画像シーケンスを表現する信号であって、
前記所与のブロックのための制御ベクトルを再構成するための少なくとも1つの情報を備えることを特徴とする信号。
【請求項8】
前記制御ベクトルを再構成するための前記情報は、前記所与のブロックと少なくとも1つの隣接ブロックとの間の動きを表現する少なくとも1つの連結フラグを含むことを特徴とする、請求項7に記載の信号。
【請求項9】
請求項7及び8のうちのいずれか一項に記載の信号を提供するための記憶媒体。
【請求項10】
画像のシーケンスの中の再構成されるべき画像のブロックを前記シーケンスの中の参照画像内の少なくとも1つの対応するブロックと関連付ける前記再構成されるべき画像の予測から、前記シーケンスの中の少なくとも1つの画像を再構成するステップ(61)を備える、前記画像のシーケンスを表現する信号の復号化方法であって、
前記再構成されるべき画像又は前記参照画像のそれぞれの少なくとも1つの所与のブロックのための制御ベクトルを再構成するための情報を取得するステップ(62)を備え、
前記予測は、前記所与のブロックに対し、
前記制御ベクトルを再構成する前記情報から、1つずつが前記参照画像又は前記再構成されるべき画像のそれぞれにおける前記ブロックの特徴点と前記特徴点の対応する位置との間のシフトを表現する前記ブロックのための複数の制御ベクトルを決定するステップ(611)と、
前記ブロックをサブブロックに少なくとも1回再分割するステップ(612)と、
前記ブロックのための前記制御ベクトルから前記サブブロックのための複数の制御ベクトルを決定するステップ(613)と、
前記サブブロックのために決定された前記制御ベクトルから実行された少なくとも1つの前記サブブロックの動き補償から、再構成されるべき前記画像の少なくとも1点のための予測の値を決定するステップ(614)と、
を含むことを特徴とする復号化方法。
【請求項11】
前記情報を取得するステップ(62)は、前記所与のブロックと少なくとも1つの隣接ブロックとの間の動きを表現する少なくとも1つの連結フラグを抽出するステップを含むことを特徴とする、請求項10に記載の復号化方法。
【請求項12】
前記情報を取得するステップ(62)は、前記所与のブロックのための前記制御ベクトルを受信するステップを含むことを特徴とする、請求項10に記載の復号化方法。
【請求項13】
前記ブロックのためのサブブロックの所定数と、
前記制御ベクトル間の類似に関する1つの情報と、
前記ブロックのサイズと、
再分割数を表現するフラグと、
を含むグループに属する所定の基準によって、前記再分割を決定及び/又はパラメータ化するステップをさらに備えることを特徴とする、請求項10に記載の復号化方法。
【請求項14】
通信ネットワークからダウンロード可能であり、及び/又は、コンピュータ読み取り可能な担体に記憶され、及び/又は、プロセッサによって実行可能であり、プログラムがプロセッサによって実行されるとき、請求項10〜13のうちのいずれか一項に記載の復号化方法を実施するプログラムコード命令を備えることを特徴とするコンピュータプログラム製品。
【請求項15】
画像のシーケンスの中の再構成されるべき画像のブロックを、前記シーケンスの中の参照画像内の少なくとも1つの対応するブロックと関連付ける前記再構成されるべき画像を予測する手段を実施して、前記シーケンスの中の少なくとも1つの画像を再構成する手段(61)を備える、前記画像のシーケンスを表現する信号の復号化装置であって、
前記再構成されるべき画像又は前記参照画像のそれぞれの少なくとも1つの所与のブロックのための制御ベクトルを再構成するための情報を取得する手段(62)を備え、
前記予測する手段は、前記所与のブロックに対し、
前記制御ベクトルを再構成するための情報から、1つずつが前記参照画像又は前記再構成されるべき画像のそれぞれにおける前記ブロックの特徴点と前記特徴点の対応する位置との間のシフトを表現する前記ブロックのための複数の制御ベクトルを決定する手段(611)と、
前記ブロックをサブブロックに再分割する手段(612)と、
前記ブロックのための前記制御ベクトルから、前記サブブロックのための複数の制御ベクトルを決定する手段(613)と、
前記サブブロックのため決定された前記制御ベクトルから実行された少なくとも1つの前記サブブロックの動き補償から、前記再構成されるべき画像の少なくとも1点のための予測の値を決定する手段(614)と、
を含むことを特徴とする復号化装置。
【図1A】
【図1B】
【図2】
【図3A】
【図3B】
【図3C】
【図3D】
【図3E】
【図3F】
【図3G】
【図4】
【図5】
【図6】
【図7】
【図8】
【図1B】
【図2】
【図3A】
【図3B】
【図3C】
【図3D】
【図3E】
【図3F】
【図3G】
【図4】
【図5】
【図6】
【図7】
【図8】
【公表番号】特表2011−526758(P2011−526758A)
【公表日】平成23年10月13日(2011.10.13)
【国際特許分類】
【出願番号】特願2011−515570(P2011−515570)
【出願日】平成21年6月30日(2009.6.30)
【国際出願番号】PCT/FR2009/051264
【国際公開番号】WO2010/001050
【国際公開日】平成22年1月7日(2010.1.7)
【出願人】(591034154)フランス・テレコム (290)
【Fターム(参考)】
【公表日】平成23年10月13日(2011.10.13)
【国際特許分類】
【出願日】平成21年6月30日(2009.6.30)
【国際出願番号】PCT/FR2009/051264
【国際公開番号】WO2010/001050
【国際公開日】平成22年1月7日(2010.1.7)
【出願人】(591034154)フランス・テレコム (290)
【Fターム(参考)】
[ Back to top ]