【文献】
Takeshi Chujoh et al.,Description of video coding technology proposal by TOSHIBA,Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11,1st Meeting: Dresden, DE,2010年 4月,JCTVC-A117r1,pp.1-6
【文献】
Kemal Ugur et al.,Description of video coding technology proposal by Tandberg, Nokia, Ericsson,Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11,1st Meeting: Dresden, DE,2010年 4月,JCTVC-A119,pp.1-5
【文献】
Ken McCann et al.,Samsung’s Response to the Call for Proposals on Video Compression Technology,Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11,1st Meeting: Dresden, DE,2010年 4月,JCTVC-A124,pp.1-15
【文献】
Marta Karczewicz et.al,Video coding technology proposal by Qualcomm Inc,Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11,1st Meeting: Dresden, DE,2010年 4月,JCTVC-A121,pp.1-7
【文献】
Jian Lou et al.,CE3: Report on Motorola Mobility's interpolation filter for HEVC,Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11,5th Meeting: Geneva, CH,2011年 3月,JCTVC-E358,pp.1-4
【文献】
A.Alshin and E.Alshina,CE3: DCT derived interpolation filter test by Samsung.,Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11,6th Meeting: Torino, IT,2011年 7月 7日,JCTVC-F247 (version 2),pp.1-9
【文献】
Jian Lou et al.,CE3: Fixed interpolation filter tests by Motorola Mobility,Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11,6th Meeting: Torino, IT,2011年 7月 3日,JCTVC-F574 (version 3),pp.1-10
(58)【調査した分野】(Int.Cl.,DB名)
【発明を実施するための形態】
【0009】
本発明の一実施形態による映像を補間する方法は、整数ピクセル間のサブピクセルの位置によって、互いに異なる補間フィルタを選択する段階と、前記選択された補間フィルタを利用して、前記サブピクセル位置でのサブピクセル値を生成する段階と、を含むことを特徴とする。
【0010】
本発明の一実施形態による映像を補間する装置は、整数ピクセル間のサブピクセルの位置によって、互いに異なる補間フィルタを選択する補間フィルタ選択部と、前記選択された補間フィルタを利用して、前記サブピクセル位置でのサブピクセル値を生成する補間部と、を含むことを特徴とする。
【0011】
本発明の他の実施形態による映像を補間する方法は、整数ピクセルが含まれるブロックの大きさ、及び前記サブピクセルの位置によって、前記整数ピクセル間のサブピクセル補間のための互いに異なる特性を有する補間フィルタをあらかじめ設定し、前記ブロックの大きさ、及び前記サブピクセルの位置によって、補間に利用する補間フィルタを選択する段階と、前記選択された補間フィルタを利用して、前記サブピクセル位置でのサブピクセル値を生成する段階と、を含むことを特徴とする。
【0012】
本発明の他の実施形態による映像を補間する装置は、整数ピクセルが含まれるブロックの大きさ、及び前記サブピクセルの位置によって、前記整数ピクセル間のサブピクセル補間のための互いに異なる特性を有する補間フィルタをあらかじめ設定し、前記ブロックの大きさ、及び前記サブピクセルの位置によって、補間に利用する補間フィルタを選択する補間フィルタ選択部と、前記選択された補間フィルタを利用して、前記サブピクセル位置でのサブピクセル値を生成する補間部と、を含むことを特徴とする。
【0013】
以下、図面を参照しつつ、本発明の実施形態について詳細に説明する。
【0014】
図1は、本発明の一実施形態による映像符号化装置を図示している。
図1を参照すれば、本発明の一実施形態による映像符号化装置100は、最大符号化単位分割部110、符号化深度決定部120、映像データ符号化部130及び符号化情報符号化部140を含む。
【0015】
最大符号化単位分割部110は、最大サイズの符号化単位である最大符号化単位に基づいて、現在フレームまたは現在スライスを分割することができる。現在フレームまたは現在スライスを、少なくとも1つの最大符号化単位に分割することができる。
【0016】
本発明の一実施形態によれば、最大符号化単位及び深度を利用して、符号化単位が表現される。前述のように、最大符号化単位は、現在フレームの符号化単位のうち、大きさが最大である符号化単位を示し、深度は、符号化単位が階層的に縮小された程度を示す。深度が大きくなりながら、符号化単位は、最大符号化単位から最小符号化単位まで縮小され、最大符号化単位の深度は、最小深度に定義され、最小符号化単位の深度は、最大深度に定義される。最大符号化単位は、深度が大きくなるにつれて、深度別符号化単位の大きさは小さくなるので、k深度のサブ符号化単位は、kより大きい深度の複数個のサブ符号化単位を含むことができる。
【0017】
符号化されるフレームの大きさが大きくなるにつれて、さらに大きい単位に映像を符号化すれば、さらに高い映像圧縮率で映像を符号化することができる。しかし、符号化単位を大きくし、その大きさを固定させてしまえば、続けて変わる映像の特性を反映し、効率的に映像を符号化することができない。
【0018】
例えば、海または空に係わる平坦な領域を符号化するときには、符号化単位を大きくするほど圧縮率が向上するが、人またはビルに係わる複雑な領域を符号化するときには、符号化単位を小さくするほど圧縮率が向上する。
【0019】
このために、本発明の一実施形態は、フレームまたはスライスごとに異なる大きさの最大映像符号化単位を設定して最大深度を設定する。最大深度は、符号化単位が縮小される最大回数を意味するので、最大深度によって、最大映像符号化単位に含まれた最小符号化単位サイズを可変的に設定することができる。
【0020】
符号化深度決定部120は、最大深度を決定する。最大深度は、R−Dコスト(rate-distortion cost)計算に基づいて決定される。最大深度は、フレームまたはスライスごとに異なるように決定されるか、あるいはそれぞれの最大符号化単位ごとに異なるように決定されもする。決定された最大深度は、符号化情報符号化部140に出力され、最大符号化単位別映像データは、映像データ符号化部130に出力される。
【0021】
最大深度は、最大符号化単位に含まれる最小サイズの符号化単位、すなわち、最小符号化単位を意味する。言い換えれば、最大符号化単位は、異なる深度によって異なる大きさのサブ符号化単位に分割される。
図8A及び
図8Bを参照して詳細に後述する。また、最大符号化単位に含まれた異なる大きさのサブ符号化単位は、異なる大きさの処理単位に基づいて、予測または変換される。変換は、空間ドメインのピクセル値を周波数ドメインの係数に変換するものであり、離散コサイン変換(discrete cosine transform)またはKLT(Karhunen Loever transform)であってもよい。
【0022】
言い換えれば、映像符号化装置100は、映像符号化のための複数の処理段階を多様な大きさ及び多様な形態の処理単位に基づいて、遂行することができる。映像データの符号化のためには、予測、変換、エントロピ符号化などの処理段階を経るが、全ての段階にわたって、同一サイズの処理単位が利用されもし、段階別で異なるサイズの処理単位を利用することもできる。
【0023】
例えば、映像符号化装置100は、所定の符号化単位を予測するため、符号化単位と異なる処理単位を選択することができる。
【0024】
符号化単位の大きさが、2Nx2N(ただし、Nは正の整数)である場合、予測のための処理単位は、2Nx2N、2NxN、Nx2N、NxNなどであってもよい。言い換えれば、符号化単位の高さまたは幅のうち、少なくとも一つを半分にする形態の処理単位を基に、動き予測が行われる。以下、予測の基になる処理単位を「予測単位」とする。
【0025】
予測モードは、イントラモード、インターモード及びスキップモードのうち少なくとも一つであってもよく、特定予測モードは、特定サイズまたは形態の予測単位についてのみ遂行される。例えば、イントラモードは、正方形である2Nx2N,NxNサイズの予測単位についてのみ遂行される。また、スキップモードは、2Nx2Nサイズの予測単位についてのみ遂行される。符号化単位内部に複数の予測単位があれば、それぞれの予測単位について予測を行い、符号化誤差が最小である予測モードが選択される。
【0026】
また、映像符号化装置100は、符号化単位と異なる大きさの処理単位に基づいて、映像データを変換することができる。符号化単位の変換のために、符号化単位より小さいか、あるいは同じ大きさのデータ単位を基に変換が行われる。以下、変換の基になる処理単位を「変換単位」とする。
【0027】
符号化深度決定部120は、ラグランジュ乗数(Lagrangian multiplier)基盤の率・歪曲最適化技法(rate-distortion optimization)を利用して、最大符号化単位に含まれたサブ符号化単位を決定することができる。言い換えれば、最大符号化単位が、いかなる形態の複数のサブ符号化単位に分割されるかを決定することができるが、ここで、複数のサブ符号化単位は、深度によって大きさが異なる。その後、映像データ符号化部130は、符号化深度決定部120で決定された分割形態に基づいて、最大符号化単位を符号化してビットストリームを出力する。
【0028】
符号化情報符号化部140は、符号化深度決定部120で決定された最大符号化単位の符号化モードに係わる情報を符号化する。最大符号化単位の分割形態に係わる情報、最大深度に係わる情報、及び深度別サブ符号化単位の符号化モードに係わる情報を符号化し、ビットストリームを出力する。サブ符号化単位の符号化モードに係わる情報は、サブ符号化単位の予測単位に係わる情報、予測単位別予測モード情報、サブ符号化単位の変換単位に係わる情報などを含んでもよい。
【0029】
最大符号化単位の分割形態に係わる情報は、それぞれの符号化単位について分割いかんを示す情報であってもよい。例えば、最大符号化単位を分割して符号化する場合、最大符号化単位について分割いかんを示す情報を符号化し、最大符号化単位を分割し、生成されたサブ符号化単位をさらに分割して符号化する場合にも、それぞれのサブ符号化単位について、分割いかんを示す情報を符号化する。分割いかんを示す情報は、分割いかんを示すフラグ情報であってもよい。
【0030】
最大符号化単位ごとに異なる大きさのサブ符号化単位が存在し、それぞれのサブ符号化単位ごとに、符号化モードについての情報が決定されなければならないので、1つの最大符号化単位については、少なくとも1つの符号化モードについての情報が決定される。
【0031】
映像符号化装置100は、深度が大きくなるにつれて、最大符号化単位の高さ及び幅を半分にし、サブ符号化単位を生成することができる。すなわち、k深度の符号化単位の大きさが2Nx2Nであるならば、k+1深度の符号化単位の大きさは、NxNである。
【0032】
従って、一実施形態による映像符号化装置100は、映像の特性を考慮した最大符号化単位の大きさ及び最大深度を基に、それぞれの最大符号化単位ごとに、最適の分割形態を決定することができる。映像特性を考慮して、可変的に最大符号化単位の大きさを調節し、異なる深度のサブ符号化単位に最大符号化単位を分割して映像を符号化することにより、多様な解像度の映像をさらに効率的に符号化することができる。
【0033】
図2は、本発明の一実施形態による映像復号化装置を図示している。
図2を参照すれば、本発明の一実施形態による映像復号化装置200は、映像データ獲得部210、符号化情報抽出部220及び映像データ復号化部230を含む。
【0034】
映像関連データ獲得部210は、映像復号化装置200が受信したビットストリームをパージングし、最大符号化単位別に映像データを獲得し、映像データ復号化部230に出力する。映像データ獲得部210は、現在フレームまたはスライスに係わるヘッダから、現在フレームまたはスライスの最大符号化単位に係わる情報を抽出することができる。言い換えれば、ビットストリームを最大符号化単位に分割し、映像データ復号化部230が、最大符号化単位ごとに映像データを復号化する。
【0035】
符号化情報抽出部220は、映像復号化装置200が受信したビット列をパージングし、現在フレームに係わるヘッダから、最大符号化単位、最大深度、最大符号化単位の分割形態、サブ符号化単位の符号化モードについての情報を抽出する。分割形態及び符号化モードについての情報は、映像データ復号化部230に出力される。
【0036】
最大符号化単位の分割形態に係わる情報は、最大符号化単位に含まれた深度によって異なる大きさのサブ符号化単位に係わる情報を含んでもよい。前述のように、分割形態に係わる情報は、それぞれの符号化単位について符号化された分割いかんを示す情報(例えば、フラグ情報)であってもよい。符号化モードについての情報は、サブ符号化単位別予測単位に係わる情報、予測モードに係わる情報、及び変換単位に係わる情報などを含んでもよい。
【0037】
映像データ復号化部230は、符号化情報抽出部で抽出された情報に基づいて、それぞれの最大符号化単位の映像データを復号化して現在フレームを復元する。
【0038】
最大符号化単位の分割形態に係わる情報に基づいて、映像データ復号化部230は、最大符号化単位に含まれたサブ符号化単位を復号化することができる。復号化過程は、イントラ予測過程、動き補償を含むインター予測過程及び逆変換過程を含んでもよい。
【0039】
映像データ復号化部230は、サブ符号化単位の予測のために、サブ符号化単位別予測単位に係わる情報、及び予測モードに係わる情報に基づいて、イントラ予測またはインター予測を行うことができる。また、映像データ復号化部230は、サブ符号化単位の変換単位に係わる情報に基づいて、サブ符号化単位ごとに逆変換を行うことができる。
【0040】
図3は、本発明の一実施形態による階層的符号化単位を図示している。
図3を参照すれば、本発明による階層的符号化単位は、幅x高さが64x64である符号化単位から、32x32、16x16、8x8及び4x4を含んでもよい。正方形状の符号化単位以外にも、幅x高さが64x32、32x64、32x16、16x32、16x8、8x16、8x4、4x8である符号化単位が存在する。
【0041】
図3を参照すれば、解像度が1920x1080である映像データ310について、最大符号化単位の大きさが64x64、最大深度が2に設定されている。
【0042】
解像度が1920x1080である他の映像データ320について、最大符号化単位の大きさが64x64、最大深度が4に設定されている。解像度が352x288であるビデオデータ330について、最大符号化単位の大きさが16x16、最大深度が2に設定されている。
【0043】
解像度が高いか、あるいはデータ量が多い場合、圧縮率向上だけではなく、映像特性を正確に反映するために、符号化サイズの最大サイズが相対的に大きいことが望ましい。従って、映像データ330に比べ、解像度が高い映像データ310及び320は、最大符号化単位の大きさが64x64に選択される。
【0044】
最大深度は、階層的符号化単位で、全階層数を示す。映像データ310の最大深度は、2であるので、映像データ310の符号化単位315は、長軸サイズが64である最大符号化単位から、深度が増加するにつれて、長軸サイズが32,16であるサブ符号化単位まで含んでもよい。
【0045】
一方、映像データ330の最大深度が2であるので、映像データ330の符号化単位335は、長軸サイズが16である最大符号化単位から、深度が増加するにつれて、長軸サイズが8,4である符号化単位まで含んでもよい。
【0046】
映像データ320の最大深度が4であるので、ビデオデータ320の符号化単位325は、長軸サイズが64である最大符号化単位から、深度が増加するにつれて、長軸サイズが32,16,8,4であるサブ符号化単位まで含んでもよい。深度が増加するほど、さらに小さいサブ符号化単位に基づいて映像を符号化するので、さらに細密な場面を含んでいる映像を符号化するのに適する。
【0047】
図4は、本発明の一実施形態による符号化単位に基づいた映像符号化部を図示している。
イントラ予測部410は、現在フレーム405において、イントラモードの予測単位についてイントラ予測を行い、動き推定部420及び動き補償部425は、インターモードの予測単位について、現在フレーム405及び参照フレーム495を利用して、インター予測及び動き補償を行う。
【0048】
イントラ予測部410、動き推定部420及び動き補償部425から出力された予測単位に基づいて残差値が生成され、生成された残差値は、変換部430及び量子化部440を経て量子化された変換係数として出力される。
【0049】
量子化された変換係数は、逆量子化部460、逆変換部470を介して、再び残差値に復元され、復元された残差値は、デブロッキング部480及びループ・フィルタリング部490を経て後処理され、参照フレーム495として出力される。量子化された変換係数は、エントロピ符号化部450を経てビットストリーム455として出力される。
【0050】
本発明の一実施形態による映像符号化方法によって符号化するために、映像符号化部400の構成要素である、イントラ予測部410、動き推定部420、動き補償部425、変換部430、量子化部440、エントロピ符号化部450、逆量子化部460、逆変換部470、デブロッキング部480及びループ・フィルタリング部490は、いずれも最大符号化単位、深度によるサブ符号化単位、予測単位及び変換単位に基づいて映像符号化過程を処理する。
【0051】
図5は、本発明の一実施形態による符号化単位に基づいた映像復号化部を図示している。ビットストリーム505がパージング部510を経て、復号化対象である符号化された映像データ、及び復号化のために必要な符号化情報がパージングされる。符号化された映像データは、エントロピ復号化部520及び逆量子化部(530)を経て、逆量子化されたデータとして出力され、逆変換部540を経て残差値に復元される。残差値は、イントラ予測部550のイントラ予測の結果、または動き補償部560の動き補償の結果と加算され、符号化単位別に復元される。復元された符号化単位は、デブロッキング部570及びループ・フィルタリング部580を経て、次の符号化単位または次のフレームの予測に利用される。
【0052】
本発明の一実施形態による映像復号化方法によって復号化するために、映像復号化部400の構成要素である、パージング部510、エントロピ復号化部520、逆量子化部530、逆変換部540、イントラ予測部550、動き補償部560、デブロッキング部570及びループ・フィルタリング部580が、いずれも最大符号化単位、深度によるサブ符号化単位、予測単位及び変換単位に基づいて映像復号化過程を処理する。
【0053】
特に、イントラ予測部550、動き補償部560は、最大符号化単位及び深度を考慮し、サブ符号化単位内の予測単位及び予測モードを決定し、逆変換部540は、変換単位の大きさを考慮して逆変換を行う。
【0054】
図6は、本発明の一実施形態による最大符号化単位、サブ符号化単位及び予測単位を図示している。
【0055】
本発明の一実施形態による映像符号化装置100及び映像復号化装置200は、映像特性を考慮し、符号化/復号化を行うために、階層的な符号化単位を利用する。最大符号化単位及び最大深度は、映像の特性によって適応的に設定されるか、あるいはユーザの要求によって多様に設定される。
【0056】
本発明の一実施形態による符号化単位の階層構造600は、最大符号化単位610の高さ及び幅が64であり、最大深度が4である場合を図示している。符号化単位の階層構造600の縦軸に沿って深度が増加し、深度の増加によって、サブ符号化単位620ないし650の幅及び高さが縮小される。また、符号化単位の階層構造600の横軸に沿って、最大符号化単位610及びサブ符号化単位620ないし650の予測単位が図示されている。
【0057】
最大符号化単位610は、深度が0であり、符号化単位の大きさ、すなわち、幅及び高さが64x64である。縦軸に沿って深度が増加し、サイズ32x32である深度1のサブ符号化単位620、サイズ16x16である深度2のサブ符号化単位630、サイズ8x8である深度3のサブ符号化単位640、サイズ4x4である深度4のサブ符号化単位650が存在する。サイズ4x4である深度4のサブ符号化単位650は、最小符号化単位である。
【0058】
図6を参照すれば、それぞれの深度別に、横軸に沿って、予測単位の例示が図示されている。すなわち、深度0の最大符号化単位610の予測単位は、サイズ64x64の符号化単位610と同一であるか、あるいはそれより小サイズであるサイズ64x64の予測単位610、サイズ64x32の予測単位612、サイズ32x64の予測単位614、サイズ32x32の予測単位616であってもよい。
【0059】
深度1のサイズ32x32の符号化単位620の予測単位は、サイズ32x32の符号化単位620と同一であるか、あるいはそれより小サイズであるサイズ32x32の予測単位620、サイズ32x16の予測単位622、サイズ16x32の予測単位624、サイズ16x16の予測単位626であってもよい。
【0060】
深度2のサイズ16x16の符号化単位630の予測単位は、サイズ16x16の符号化単位630と同一であるか、あるいはそれより小サイズであるサイズ16x16の予測単位630、サイズ16x8の予測単位632、サイズ8x16の予測単位634、サイズ8x8の予測単位636であってもよい。
【0061】
深度3のサイズ8x8の符号化単位640の予測単位は、サイズ8x8の符号化単位640と同一であるか、あるいはそれより小サイズであるサイズ8x8の予測単位640、サイズ8x4の予測単位642、サイズ4x8の予測単位644、サイズ4x4の予測単位646であってもよい。
【0062】
最後に、深度4のサイズ4x4の符号化単位650は、最大深度の符号化単位であり、予測単位は、サイズ4x4の予測単位650である。しかし、最大深度の符号化単位であるとして、必ずしも符号化単位と予測単位との大きさが同一であるという必要はなく、他の符号化単位610ないし65と同様に、符号化単位より小サイズの予測単位に分割して予測を行うこともできる。
【0063】
図7は、本発明の一実施形態による、符号化単位及び変換単位を図示している。
【0064】
本発明の一実施形態による映像符号化装置100及び映像復号化装置200は、最大符号化単位そのまま符号化するか、あるいは最大符号化単位より小さいか、あるいは同じサブ符号化単位に最大符号化単位を分割して符号化する。符号化過程のうち変換のための変換単位の大きさも、符号化単位及び予測単位と関係なく、最も高い圧縮率のための大きさに選択される。例えば、現在符号化単位710が64x64サイズであるとき、32x32サイズの変換単位720を利用して、変換が行われる。
【0065】
図8A及び
図8Bは、本発明の一実施形態による、符号化単位、予測単位及び変換単位の分割形態を図示している。
【0066】
図8Aは、本発明の一実施形態による符号化単位及び予測単位を図示している。
図8Aの左側は、最大符号化単位810を符号化するためで本発明の一実施形態による映像符号化装置100が選択した分割形態を図示する。映像符号化装置100は、多様な形態に最大符号化単位810を分割し、符号化した後で多様な分割形態の符号化結果をR−Dコストに基づいて比較し、最適の分割形態を選択する。最大符号化単位810をそのまま符号化することが最適である場合には、
図8A及び
図8Bのように、最大符号化単位810を分割せずに、最大符号化単位810を符号化することもできる。
【0067】
図8Aの左側を参照すれば、深度0である最大符号化単位810を、深度1以上のサブ符号化単位に分割して符号化する。最大符号化単位810を4つの深度1のサブ符号化単位に分割した後、全部または一部の深度1のサブ符号化単位を、さらに深度2のサブ符号化単位に分割する。
【0068】
深度1のサブ符号化単位のうち、右側上部に位置したサブ符号化単位、及び左側下部に位置したサブ符号化単位が、深度2以上のサブ符号化単位に分割される。深度2以上のサブ符号化単位のうち一部は、さらに深度3以上のサブ符号化単位に分割される。
【0069】
図8Bの右側は、最大符号化単位810に係わる予測単位の分割形態を図示している。
【0070】
図8Aの右側を参照すれば、最大符号化単位に係わる予測単位860は、最大符号化単位810と異なるように分割される。言い換えれば、サブ符号化単位それぞれに係わる予測単位は、サブ符号化単位より小さい。
【0071】
例えば、深度1のサブ符号化単位のうち、右側下部に位置したサブ符号化単位854に係わる予測単位は、サブ符号化単位854より小さい。深度2のサブ符号化単位8104,816,818,828,850,852のうち、一部サブ符号化単位815,816,850,852に係わる予測単位は、サブ符号化単位より小さい。
【0072】
また、深度3のサブ符号化単位822,832,848に係わる予測単位は、サブ符号化単位より小さい。予測単位は、それぞれのサブ符号化単位を、高さ方向または幅方向に半分にした形態でもあり、高さ方向及び幅方向に4分した形態でもある。
【0073】
図8Bは、本発明の一実施形態による予測単位及び変換単位を図示している。
図8Bの左側は、
図8Aの右側に図示された最大符号化単位810に係わる予測単位の分割形態を図示し、
図8Bの右側は、最大符号化単位810の変換単位の分割形態を図示する。
【0074】
図8Bの右側を参照すれば、変換単位87の分割形態は、予測単位860と異なるように設定される。
【0075】
例えば、深度1の符号化単位854に係わる予測単位が、高さを半分にした形態に選択されても、変換単位は、深度1の符号化単位854の大きさと同一サイズに選択される。同様に、深度2の符号化単位814,850に係わる予測単位が、深度2の符号化単位814,850の高さを半分にした形態に選択されても、変換単位は、深度2の符号化単位814,850の本来サイズと同一サイズに選択される。
【0076】
予測単位よりさらに小サイズに変換単位が選択されもする。例えば、深度2の符号化単位852に係わる予測単位が、幅を半分にした形態に選択された場合、変換単位は、予測単位よりさらに小サイズである高さ及び幅を半分にした形態に選択される。
【0077】
以下、
図4の本発明の一実施形態による映像符号化装置400の動き推定部420、動き補償部425、及び
図5の映像復号化装置500の動き補償部550で遂行される映像補間過程について具体的に説明する。以下の説明で、前述の予測単位は、ブロックと称する。
【0078】
図9は、本発明の一実施形態による映像を補間する装置を図示している。
【0079】
映像補間は、低画質の映像を高画質に変換するとき利用される。インターレース(interlace)映像をプログレシブ(progressive)映像に変換するとき利用されたり、低画質の映像をアップサンプリング(up-sampling)し、高画質の映像に変換するときに利用されたりする。また、
図4の映像符号化装置400が映像を符号化するとき、動き推定部420及び動き補償部425は、補間された参照フレームを利用して、インター予測を行うことができる。参照フレーム495を補間して高画質の映像を生成し、高画質の映像に基づいて、動き推定及び補償を行うことにより、インター予測の正確度を高めることができる。同様に、映像復号化装置500が映像を復号化するときにも、動き補償部550は、補間された参照フレームを利用して、動き補償を行うことにより、インター予測の正確度を高めることができる。すなわち、本発明の一実施形態による映像補間装置は、
図4の映像符号化装置400の動き推定部及び動き補償部425、
図5の動き補償部550に含まれるか、あるいはそれらと結合して動作することができる。
【0080】
図9を参照すれば、本発明の一実施形態による映像補間装置900は、補間フィルタ選択部910及び補間部920を含む。
【0081】
補間フィルタ選択部910は、互いに異なる特性を有する複数個の補間フィルタのうち、補間しようとするサブピクセルの位置によって、適用する補間フィルタをあらかじめ設定し、現在補間しようとするサブピクセルの位置によって設定された補間フィルタ情報を出力する。補間フィルタ選択部910によって選択されて各サブピクセルに適用される補間フィルタは、互いに異なるタップ(tap)数を有するか、あるいは互いに異なる係数を有するか、あるいは互いに異なる補間方向及び補間形態など多様な特性を有する補間フィルタのうち、あらかじめサブピクセル位置ごとに設定された補間フィルタであってもよい。具体的には、補間フィルタ選択部910は、補間されるピクセルが含まれるブロックの大きさによって、適用する補間フィルタをあらかじめ設定し、補間しようとするピクセルが含まれるブロックの大きさによってあらかじめ設定された補間フィルタを適用させる。すなわち、補間フィルタ選択部910は、ブロックの大きさによって、互いに異なるタップ数、係数、補間方向及び補間形態を有する複数個の補間フィルタのうち、各サブピクセル位置ごとに適用する補間フィルタをあらかじめ設定し、入力された補間しようとするブロックの大きさ、及びサブピクセルの位置によって設定された補間フィルタに係わる情報を出力する。例えば、補間フィルタ選択部910は、ブロックの大きさに比例するタップ数を有し、各サブピクセル位置ごとに、互いに異なる特性を有する補間フィルタをあらかじめ設定し、現在補間しようとするブロックの大きさ及びサブピクセルの位置によって設定された補間フィルタを出力することができる。また、補間フィルタ選択部910は、サブピクセル位置ごとに、補間時に、水平方向の周辺ピクセルを利用するか、あるいは垂直方向の周辺ピクセルを利用するか、あるいは対角線方向の周辺ピクセルを利用するか、補間方向をあらかじめ設定することができる。また、補間フィルタ選択部910は、サブピクセル位置ごとに、補間時に、一次元形態の補間フィルタを利用するか、あるいは垂直方向及び水平方向の周辺ピクセルを利用する十字形状の補間フィルタを利用するか、あるいは二次元のmxn(m、nは整数)サイズのマスク内に具備された周辺ピクセルを利用する補間フィルタを利用するか、補間形態をあらかじめ設定することができる。
【0082】
補間部920は、選択された補間フィルタを利用して、サブピクセル位置でのサブピクセル値を生成する。
【0083】
図10は、本発明の一実施形態による、サブピクセル補間のための補間フィルタを選択する過程について説明するための参照図である。
図10を参照すれば、補間フィルタ選択部910は、整数ピクセルA 1001、整数ピクセルB 1002、整数ピクセルC 1003、及び整数ピクセルD 1004の間の補間しようとするサブピクセルの位置によって、互いに異なる補間フィルタのうち一つを選択する。前述のように、補間フィルタ選択部910は、互いに異なる特性を有する複数個の補間フィルタのうち、補間しようとするサブピクセルの位置によって、適用する補間フィルタをあらかじめ設定し、現在補間しようとするサブピクセルの位置によって設定された補間フィルタ情報を出力することができる。
【0084】
具体的には、補間フィルタ選択部910は、互いに異なるタップ数及び係数、補間方向及び形態を有する複数個の補間フィルタのうち、サブピクセルの位置によって、適用する補間フィルタをあらかじめ設定し、サブピクセルの位置によって、複数個の補間フィルタのうち設定された補間フィルタ選択して出力する。例えば、補間フィルタ選択部910は、整数ピクセルA 1001と整数ピクセルB 1002との間の1/2サブピクセルb 1006、または整数ピクセルA 1001と整数ピクセルC 1003との間の1/2サブピクセルh 1012の補間のための補間フィルタとして、{8,−40,160,160,−40,8}/256のような係数を有する6タップ補間フィルタ、{−1,4,−11,40,40,−11,4,−1}/64のような係数を有する8タップ補間フィルタ、{−1,8,16,24,−48,161,161,−48、24,−16,8,−1}/256のような係数を有する12タップ補間フィルタのうち一つをあらかじめ設定して補間フィルタ情報として出力する。また、補間フィルタ選択部910は、互いに異なる係数を有する複数個の補間フィルタのうち、整数ピクセルが含まれるブロックの大きさによって、互いに異なるタップ数を有する補間フィルタをあらかじめ設定し、ブロックの大きさによって設定されたタップ数を有する補間フィルタ情報を出力することができる。例えば、補間フィルタ選択部910は、現在ブロックの大きさが16x16,32x32,64x64サイズのうち一つを有するとするとき、16x16サイズのブロックに含まれたピクセルの補間のためには、6タップ補間フィルタ、32x32サイズのブロックに含まれたピクセルの補間のためには8タップ補間フィルタ、64x64サイズのブロックに含まれたピクセルの補間のためには12タップ補間フィルタを設定し、現在ブロックの大きさによって設定された補間フィルタの情報を出力することができる。
【0085】
また、補間フィルタ選択部910は、整数ピクセルA 1001と整数ピクセルB 1002との間の1/4サブピクセルa 1005、または整数ピクセルA 1001と整数ピクセルC 1003との間の1/4サブピクセルd 1008の補間のための補間フィルタとして、{8,−32,224,72,−24,8}/256のような係数を有する6タップ補間フィルタ、{−1,4,−10,58,17,−5,1}/64のような係数を有する7タップ補間フィルタ、{−1,5,−12,20,−40,229,76,−32,16,−8,4,−1}/256のような係数を有する12タップ補間フィルタのうち一つを選択する。
【0086】
同様に、補間フィルタ選択部910は、整数ピクセルA 1001と整数ピクセルB 1002との間の1/4サブピクセルc 1007、または整数ピクセルA 1001と整数ピクセルC 1003との間の1/4サブピクセルl 1016の補間のための補間フィルタとして、1/4サブピクセルa 1005及びサブピクセルd 1008の補間時に利用される補間フィルタ以外に、1/4サブピクセルa 1005及びサブピクセルd 1008の補間時に利用される補間フィルタの係数をミラーリング、すなわち、対称にさせた係数を有する補間フィルタを利用することができる。特に、補間フィルタ選択部910は、現在補間される1/4サブピクセルと近い周辺ピクセルの値がさらに多く補間値に反映されるように、{8,−32,224,72,−24,8}/256のような係数を有する6タップ補間フィルタの対称形態である{8,−24,72,224,−32,8}/256のような係数を有する6タップ補間フィルタ、{−1,4,−10,58,17,−5,1}/64のような係数を有する7タップ補間フィルタの対称形態である{1,−5,17,58,−10,4,−1}/64のような係数を有する7タップ補間フィルタ、{−1,5,−12,20,−40,229,76,−32,16,−8,4,−1}/256のような係数を有する12タップ補間フィルタの対称形態である{−1,4,−8,16,−32,76,229,−40,20,−12,5,−1}/256のような係数を有する12タップ補間フィルタのうち一つをあらかじめ選択し、サブピクセル補間のための補間フィルタとして設定する。
【0087】
補間フィルタ選択部910は、整数ピクセルA 1001、整数ピクセルB 1002、整数ピクセルC 1003及び整数ピクセルD 1004の真ん中に位置した1/2サブピクセルj 1014の補間のための補間フィルタとして、{8,−40,160,160,−40,8}/256のような係数を有する6タップ補間フィルタ、{−1,4,−11,40,40,−11,4,−1}/64のような係数を有する8タップ補間フィルタ、{−1,8,16,24,−48,161,161,−48,24,−16,8,−1}/256のような係数を有する12タップ補間フィルタのうち一つを選択し、補間フィルタとしてあらかじめ設定することができる。そして、補間部920は、選択された補間フィルタを、1/2サブピクセルj 1014と同一の行及び列に位置した1/2サブピクセルに適用し、1/2サブピクセルj 1014のピクセル値を補間する。具体的な1/2サブピクセルj 1014の補間過程については
図12で後述する。
【0088】
補間フィルタ選択部910は、1/2サブピクセルj 1014周辺の1/4サブピクセルf 1010、1/4サブピクセルi 1013、1/4サブピクセルk 1015及び1/4サブピクセルn 1018の補間時に、まず1/2サブピクセルb 1006、1/2サブピクセルh 1012のように、整数ピクセル間の1/2サブピクセル補間のための補間フィルタとして、{8,−40,160,160,−40,8}/256のような係数を有する6タップ補間フィルタ、{−1,4,−11,40,40,−11,4,−1}/64のような係数を有する8タップ補間フィルタ、{−1,8,16,24,−48,161,161,−48,24,−16,8,−1}/256のような係数を有する12タップ補間フィルタのうち一つを選択し、あらかじめ適用する補間フィルタとして設定する。補間部920は、選択された補間フィルタを利用して、1/2サブピクセルを補間する。また、補間フィルタ選択部910は、補間部920によって補間された1/2サブピクセルに適用する補間フィルタとして、{8,−32,224,72,−24,8}/256のような係数を有する6タップ補間フィルタ、{−1,4,−10,58,17,−5,1}のような係数を有する7タップ補間フィルタ、{−1,5,−12,20,−40,229,76,−32,16,−8,4,−1}/256のような係数を有する12タップ補間フィルタのうち一つを選択し、補間フィルタとして設定する。補間部920は、また1/2サブピクセルに選択された補間フィルタを適用し、1/4サブピクセルf 1010、1/4サブピクセルi 1013、1/4サブピクセルk 1015及び1/4サブピクセルn 1018を補間する。1/2サブピクセルj 1014周辺の1/4サブピクセルf 1010、1/4サブピクセルi 1013、1/4サブピクセルk 1015及び1/4サブピクセルn 1018の補間過程については、
図13を参照して後述する。
【0089】
補間フィルタ選択部910は、1/4サブピクセルe 1009、1/4サブピクセルg 1011、1/4サブピクセルm 1017及び1/4サブピクセルo 1019の補間のために、{8,−32,224,72,−24,8}/256のような係数を有する6タップ補間フィルタ、{−1,4,−10,58,17,−5,1}/64のような係数を有する7タップ補間フィルタ、{−1,5,−12,20,−40,229,76,−32,16,−8,4,−1}/256のような係数を有する12タップ補間フィルタ中の一つ、または前記補間フィルタの係数を対称にさせた補間フィルタのうち一つを選択し、補間フィルタとして設定する。具体的な補間過程については、
図14を参照して後述する。
【0090】
図11は、本発明の一実施形態による整数ピクセルと同一の行または列に位置したサブピクセルを補間する過程について説明するための参照図である。
図11で、サブピクセルa,b,cは、それぞれ
図10のサブピクセルa,b,cに対応する。
【0091】
まず、1/2サブピクセルb 110の補間過程について説明する。
【0092】
補間フィルタ選択部910は、整数ピクセルP
−1 1121と整数ピクセルP
1 1111との間の1/2サブピクセルb 1100の補間のために、{8,−40,160,160,−40,8}/256のような係数を有する6タップ補間フィルタ、{−1,4,−11,40,40,−11,4,−1}/64のような係数を有する8タップ補間フィルタ、{−1,8,16,24,−48,161,161,−48,24,−16,8,−1}/256のような係数を有する12タップ補間フィルタのうち、あらかじめ設定された補間フィルタを選択する。1/2サブピクセルb 1100の補間のための補間フィルタとして、{−1,4,−11,40,40,−11,4,−1}/64のような係数を有する8タップ補間フィルタが設定されて選択されたと仮定する。補間部920は、選択された補間フィルタを、1/2サブピクセルb 1100と同一行に位置した整数ピクセルに適用し、1/2サブピクセルb 1100のピクセル値を生成する。すなわち、補間部920は、1/2サブピクセルb 1100と同一行に位置した左側の整数ピクセル 1120、及び右側に位置した整数ピクセル 1110のピクセル値と係数との加重和を計算することにより、1/2サブピクセルb 1100のピクセル値を生成する。具体的には、整数ピクセルP
−4 1124ないしP
4 1114のピクセル値が図示されているように、それぞれPiの値を有すると仮定する。このような場合、補間部920は、次の数式:b={P
−4*(−1)+P
−3*4+P
−2*(−11)+P
−1*40+P
1*40+P
2*(−11)+P
3*4+P
4*(−1}>>n(nは整数)の値を計算することにより、1/2サブピクセルb 1100のピクセル値を生成する。前記数学式で、「>>」は、右側シフト演算子であり、2^nの値で除算を行うことに対応する。nの値は、タップ数及び係数を考慮して決定される。前述の
図10の整数ピクセルA 1001と整数ピクセルC 1003との間の1/2サブピクセルh 1012は、同一列に位置した整数ピクセルを利用するという違いだけ除いて、1/2サブピクセルb 1100の補間過程と同一に補間される。
【0093】
次に、1/4サブピクセルa 1101の補間過程について説明する。
【0094】
補間フィルタ選択部910は、1/4サブピクセルa 1101の補間のために、{8,−32,224,72,−24,8}/256のような係数を有する6タップ補間フィルタ、{−1,4,−10,58,17,−5,1}/64のような係数を有する7タップ補間フィルタ、{−1,5,−12,20,−40,229,76,−32,16,−8,4,−1}/256のような係数を有する12タップ補間フィルタのうち、あらかじめ設定された補間フィルタを選択する。1/4サブピクセルa 1101の補間のための補間フィルタとして、{−1,4,−10,58,17,−5,1}/64のような係数を有する7タップ補間フィルタが選択されたと仮定する。補間部920は、選択された補間フィルタを、1/4サブピクセルa 1101と同一行に位置した整数ピクセルに適用し、1/4サブピクセルa 1101のピクセル値を生成する。すなわち、補間部920は、1/4サブピクセルa 1101と同一行に位置した左側の整数ピクセル 1120、及び右側に位置した整数ピクセル 1110のピクセル値と係数との加重和を計算することにより、1/4サブピクセルa 1101のピクセル値を生成する。ただし、1/4サブピクセルa 1101の場合、整数ピクセルであるP
−1 1121とP
1 1111のうち、P
−1 1121にさらに近いから、補間部920は、現在補間される1/4サブピクセルa 1101と近い左側の4個の整数ピクセル 1121ないし1124と、右側の3個の整数ピクセルP
1 1111,P
2 1112,P
3 1113を、補間に利用する整数ピクセルと決定し、係数との加重和を計算する。具体的には、補間部920は、次の数式:b={P
−4*(−1)+P
−3*4+P
−2*(−1)+P
−1*58+P
1*17+P
2*(−5+P
3*1}>>nの値を計算することにより1/4サブピクセルa 1101のピクセル値を生成する。
【0095】
同様に、補間フィルタ選択部910は、1/4サブピクセルc 1102の補間のために、{8,−32,224,72,−24,8}/256のような係数を有する6タップ補間フィルタ、{−1,4,−10,58,17,−5,1}/64のような係数を有する7タップ補間フィルタ、{−1,5,−12,20,−40,229,76,−32,16,−8,4,−1}/256のような係数を有する12タップ補間フィルタのうち、あらかじめ設定された補間フィルタを選択して出力する。1/4サブピクセルc 1102の補間のための補間フィルタとして、{−1,4,−10,58,17,−5,1}/64のような係数を有する7タップ補間フィルタが選択されたと仮定する。補間部920は、選択された補間フィルタを、1/4サブピクセルc 1102と同一行に位置した整数ピクセルに適用し、1/4サブピクセルc 1102のピクセル値を生成する。補間部920は、現在補間される1/4サブピクセルと近い右側の4個の整数ピクセル 1111ないし1114と、左側の3個の整数ピクセルP
−1 1121,P
−2 1122,P
−3 1123を補間に利用する整数ピクセルとして決定し、係数との加重和を計算する。このとき、係数は、{−1,4,−10,58,17,−5,1}/64の値を対称にさせた{1,−5,17,58,−10,4,−1}/64を利用することができる。具体的には、補間部920は、次の数式:b={P
−3*1+P
−2*(−5+P
−1*17+P
1*58+P
2*(−1)+P
3*4+P
4*(−1)}>>nの値を計算することにより、1/4サブピクセルc 1102のピクセル値を生成する。
【0096】
前述の
図10の1/4サブピクセルd 1008、及び1/4サブピクセルl 1016は、同一列に位置した整数ピクセルを利用するという違いだけ除き、
図11の1/4サブピクセルa 1101、及び1/4サブピクセルc 1102の補間過程と同一に補間される。
【0097】
図12は、
図10の1/2サブピクセルj 1014の補間過程について説明するための参照図である。
【0098】
図12を参照すれば、補間フィルタ選択部910は、1/2サブピクセルj 1210の補間のための補間フィルタとして、{8,−40,160,160,−40,8}/256のような係数を有する6タップ補間フィルタ、{−1,4,−11,40,40,−11,4,−1}/64のような係数を有する8タップ補間フィルタ、{−1,8,16,24,−48,161,161,−48,24,−16,8,−1}/256のような係数を有する12タップ補間フィルタのうち、あらかじめ設定された補間フィルタを選択して出力する。1/2サブピクセルj 1210の補間フィルタとして、{−1,4,−11,40,40,−11,4,−1}/64のような係数を有する8タップ補間フィルタが選択されたと仮定する。補間部920は、選択された補間フィルタを、1/2サブピクセルj 1210と同一の行及び列に位置した1/2サブピクセルに適用し、1/2サブピクセルj 1210のピクセル値を補間する。具体的には、補間部920は、まず、1/2サブピクセルj 1210と同一行の1/2サブピクセルnn,mm,ll,h,hh,ii,jj及びkkのピクセル値、及び同一列の1/2サブピクセルaa,bb,cc,b,dd,ee,ff,ggを生成する。前述のように、1/2サブピクセルnn,mm,ll,h,hh,ii,jj,kk,aa,bb,cc,b,dd,ee,ff,ggは、
図10の1/2サブピクセルb 1006、及び1/2サブピクセルh 1012と同一の補間過程を介して補間される。補間部920は、1/2サブピクセルj 1210と同一の行及び列に位置した1/2サブピクセルと、選択された補間フィルタの係数との加重和を計算することにより、1/2サブピクセルj 1210のピクセル値を生成する。具体的には、補間部920は、次の数式:j={{aa*(−1)+bb*4+cc*(−1)1+b*40+dd*40+ee*(−1)1+ff*4+gg*(−1)}+{nn*(−1)+mm*4+ll*(−1)1+h*40+hh*40+ii*(−1)1+jj*4+kk*(−1)}}>>n(nは整数)の値を計算することにより、1/2サブピクセルj 1210のピクセル値を生成する。また、補間部920は、同一の行及び列に位置した1/2サブピクセルのうち一つだけを選択して係数との加重和を求め、1/2サブピクセルj 1210のピクセル値を生成することもできる。すなわち、補間部920は、次の数式:j={aa*(−1)+bb*4+cc*(−1)1+b*40+dd*40+ee*(−1)1+ff*4+gg*(−1)}>>n、またはj={nn*(−1)+mm*4+ll*(−1)1+h*40+hh*40+ii*(−1)1+jj*4+kk*(−1)}>>nを計算することにより、1/2サブピクセルj 1210のピクセル値を生成することができる。
【0099】
図13は、
図10の1/4サブピクセルf 1010、1/4サブピクセルi 1013、1/4サブピクセルk 1015及び1/4サブピクセルn 1018の補間過程について説明するための参照図である。
【0100】
まず、
図13を参照して、1/4サブピクセルf 1310の補間過程について説明する。
【0101】
補間フィルタ選択部910は、前述のように、{8,−32,224,72,−24,8}/256のような係数を有する6タップ補間フィルタ、{−1,4,−10,58,17,−5,1}/64のような係数を有する7タップ補間フィルタ、{−1,5,−12,20,−40,229,76,−32,16,−8,4,−1}/256のような係数を有する12タップ補間フィルタのうち、あらかじめ設定された補間フィルタを選択して出力し、{−1,4,−10,58,17,−5,1}/64のような係数を有する7タップ補間フィルタが選択されたと仮定する。
【0102】
補間部920は、1/4サブピクセルf 1310と同一の列に位置した上側の4個の1/2サブピクセルaa,bb,cc及びbと、下側の3個の1/2サブピクセルdd,ee,ffと、選択された係数との加重和を計算することにより、1/4サブピクセルf 1310のピクセル値を生成する。前述のように、1/2サブピクセルnn,mm,ll,h,hh,ii,jj,kk,aa,bb,cc,b,dd,ee,ff,ggは、
図10の1/2サブピクセルb 1006、及び1/2サブピクセルh 1012のように補間される。具体的には、補間部920は、次の数式:f={aa*(−1)+bb*4+cc*(−1)+b*58+dd*17+ee*(−5+ff*1}>>nの値を計算することにより、1/4サブピクセルf 1310のピクセル値を生成する。
【0103】
次に、1/4サブピクセルn 1340の補間過程について説明する。補間フィルタ選択部910は、1/4サブピクセルn 1340の補間のために、{8,−32,224,72,−24,8}/256のような係数を有する6タップ補間フィルタ、{−1,4,−10,58,17,−5,1}/64のような係数を有する7タップ補間フィルタ、{−1,5,−12,20,−40,229,76,−32,16,−8,4,−1}/256のような係数を有する12タップ補間フィルタのうち、あらかじめ設定された補間フィルタを選択して出力し、{−1,4,−10,58,17,−5,1}/64のような係数を有する7タップ補間フィルタが選択されたと仮定する。
【0104】
補間部920は、選択された補間フィルタを、1/4サブピクセルn 1340と同一の列に位置した上側の3個の1/2サブピクセルbb,cc及びbと、下側の4個の1/2サブピクセルdd,ee,ff,ggと、選択された係数との加重和を計算することにより、1/4サブピクセルn 1310のピクセル値を生成する。前述のように、係数として、1/4サブピクセルn 1340と近い1/2サブピクセルのピクセル値が補間値にさらに多く反映されるように、{−1,4,−10,58,17,−5,1}/64の値を対称にさせた{1,−5,17,58,−10,4,−1}/64を利用することができる。具体的には、補間部920は、次の数式:n={bb*1+cc*(−5+b*17+dd*58+ee*(−1)+ff*4+gg*(−1)}>>nの値を計算することにより、1/4サブピクセルn 1340のピクセル値を生成する。
【0105】
1/4サブピクセルi 1320及び1/4サブピクセルk 1330は、同一行に位置した1/2サブピクセルnn,mm,ll,h,hh,ii,jj,kkを利用するという違いだけ除き、
図13の1/4サブピクセルf 1310及び1/4サブピクセルn 1340の補間過程と同一に補間される。
【0106】
図14は、
図10の1/4サブピクセルe 1009、1/4サブピクセルg 1011,1/4サブピクセルm 1015及び1/4サブピクセルo 1019の補間過程について説明するための参照図である。
【0107】
まず、
図14を参照して、1/4サブピクセルe 1410の補間過程について説明する。
【0108】
補間フィルタ選択部910は、前述のように、{8,−32,224,72,−24,8}/256のような係数を有する6タップ補間フィルタ、{−1,4,−10,58,17,−5,1}/64のような係数を有する7タップ補間フィルタ、{−1,5,−12,20,−40,229,76,−32,16,−8,4,−1}/256のような係数を有する12タップ補間フィルタのうち、あらかじめ設定された補間フィルタを選択して出力し、{−1,4,−10,58,17,−5,1}/64のような係数を有する7タップ補間フィルタが選択されたと仮定する。
【0109】
補間部920は、選択された補間フィルタを、1/4サブピクセルe 1410と同一の行及び列に位置した1/4サブピクセルに適用し、1/4サブピクセルe 1410のピクセル値を補間する。具体的には、補間部920は、まず、1/4サブピクセルe 1410と同一行の1/4サブピクセルe1ないしe4、及びg1ないしg4と、同一列の1/4サブピクセルe5ないしe8、及びm5ないしm7を生成する。前述のように、1/4サブピクセルe1ないしe4、及びg1ないしg4、e5ないしe8、及びm5ないしm7は、
図10の1/4サブピクセルa 1005及び1/4サブピクセルd 1008のように補間される。補間部920は、1/4サブピクセルe 1410と同一の行及び列に位置した1/4サブピクセルと、選択された補間フィルタの係数との加重和を計算することにより、1/4サブピクセルe 1410のピクセル値を生成する。具体的には、補間部920は、次の数式:e={{e8*(−1)+e7*4+e6*(−1)+e5*58+m5*17+m6*(−5+m7*1}+{e4*(−1)+e3*4+e2*(−1)+e1*58+g1*17+g2*(−5+g3*1}}>>nの値を計算することにより、1/4サブピクセルe 1410のピクセル値を生成する。また、補間部920は、同一の行及び列に位置した1/4サブピクセルのうち一つだけを選択して係数との加重和を求め、1/4サブピクセルe 1410のピクセル値を生成することができる。すなわち、補間部920は、次の数式:e={e8*(−1)+e7*4+e6*(−1)+e5*58+m5*17+m6*(−5+m7*1}>>nまたはe={e4*(−1)+e3*4+e2*(−1)+e1*58+g1*17+g2*(−5+g3*1}>>nを計算することにより、1/4サブピクセルe 1410のピクセル値を生成することができる。
【0110】
次に、1/4サブピクセルm 143の補間過程について説明する。
【0111】
補間フィルタ選択部910は、前述のように、{8,−32,224,72,−24,8}/256のような係数を有する6タップ補間フィルタ、{−1,4,−10,58,17,−5,1}/64のような係数を有する7タップ補間フィルタ、{−1,5,−12,20,−40,229,76,−32,16,−8,4,−1}/256のような係数を有する12タップ補間フィルタのうち、あらかじめ設定された補間フィルタを選択して出力し、{−1,4,−10,58,17,−5,1}/64のような係数を有する7タップ補間フィルタが選択されたと仮定する。
【0112】
補間部920は、選択された補間フィルタを、1/4サブピクセルm 143と同一の行及び列に位置した1/4サブピクセルに適用し、1/4サブピクセルm 143のピクセル値を補間する。具体的には、補間部920は、まず、1/4サブピクセルm 143と同一行の1/4サブピクセルm1ないしm4、及びo1ないしo4と同一の列の1/4サブピクセルe5ないしe8、及びm5ないしm7を生成する。
【0113】
前述のように、1/4サブピクセルm1ないしm4、及びo1ないしo4、e5ないしe8、及びm5ないしm7は、
図10の1/4サブピクセルa 1005、及び1/4サブピクセルl 1016のように補間される。補間部920は、1/4サブピクセルm 143と同一の行及び列に位置した1/4サブピクセルと、選択された補間フィルタの係数との加重和を計算することにより1/4サブピクセルm 143のピクセル値を生成する。列方向に加重和を計算するとき、係数として、1/4サブピクセルm 143と近い1/4サブピクセルのピクセル値が補間値にさらに多く反映されるように、{−1,4,−10,58,17,−5,1}/64の値を対称にさせた{1,−5,17,58,−10,4,−1}/64を列方向に適用することができる。具体的には、補間部920は、次の数式:m={{e7*1+e6*(−5)+e5*17+m5*58+m6*(−1)+m7*4+m8*(−1)}+{m4*(−1)+m3*4+m2*(−1)+m1*58+o1*17+o2*(−5)+o3*1}}>>nの値を計算することにより、1/4サブピクセルm 143のピクセル値を生成する。また、補間部920は、同一の行及び列に位置した1/4サブピクセルのうち一つだけを選択して係数との加重和を求め、1/4サブピクセルm 143のピクセル値を生成することができる。すなわち、補間部920は、次の数式:m={e7*1+e6*(−5)+e5*17+m5*58+m6*(−1)+m7*4+m8*(−1)}>>n、またはm={{m4*(−1)+m3*4+m2*(−1)+m1*58+o1*17+o2*(−5)+o3*1}>>nを計算することにより、1/4サブピクセルm 143のピクセル値を生成することができる。
【0114】
1/4サブピクセルg 1420及び1/4サブピクセルo 1440も、前述の1/4サブピクセルe 1410及び1/4サブピクセルm 1430の補間過程と同様に、同一の行及び列に位置した1/4サブピクセルと、選択された補間フィルタの係数との加重和を利用して、補間される。
【0115】
図15は、本発明の一実施形態による映像補間方法を示したフローチャートである。
図15を参照すれば、段階1510で、補間フィルタ選択部910は、互いに異なる特性を有する複数個の補間フィルタのうち、補間しようとするサブピクセルの位置によって、適用する補間フィルタをあらかじめ設定し、現在補間しようとするサブピクセルの位置によって設定された補間フィルタ情報を出力する。前述のように、補間フィルタ選択部910は、サブピクセルの位置によって、互いに異なるタップ数、係数、補間方向及び補間形態を有する補間フィルタをあらかじめ設定し、補間しようとするサブピクセルの位置によって設定された補間フィルタを選択して出力する。
【0116】
段階1520で、補間部920は、選択された補間フィルタを利用して、サブピクセル位置でのサブピクセル値を生成する。
【0117】
本発明の一実施形態によれば、多様な係数及びタップ数、補間方向及び補間形態を有する補間フィルタを適用することができるので、映像特性によって、さらに効率的に補間が可能である。さらに向上した補間ピクチャを利用する場合、動き予測の予測効率が向上して映像の圧縮効率を上昇させることができる。
【0118】
本発明はまた、コンピュータで読み取り可能な記録媒体に、コンピュータで読み取り可能なコードとして具現するこ
とが可能である。コンピュータで読み取り可能な記録媒体は、コンピュータシステムによって読み取り可能なデータが保存される全ての種類の記録装置を含む。コンピュータで読み取り可能な記録媒体の例としては、ROM(read-only memory)、RAM(random-access memory)、CD(compact disc)−ROM、磁気テープ、フロッピー(登録商標)ディスク、光データ保存装置などが含まれる。また、コンピュータで読み取り可能な記録媒体は、ネットワークに連結されたコンピュータシステムに分散され、分散方式で、コンピュータで読み取り可能なコードとして保存されて実行される。
【0119】
以上、本発明についてその望ましい実施形態を中心に説明した。本発明が属する技術分野で当業者であるならば、本発明が本発明の本質的な特性から外れない範囲で変形された形態に具現されるということを理解することができるであろう。本発明の範囲は、前述の説明ではなく、特許請求の範囲に示されており、それと同等な範囲内にある全ての違いは、本発明に含まれたものであると解釈されなければならないのである。