JP4231020B2 - イントラ予測モード選択方法,画像符号化装置,画像符号化プログラムおよびそのプログラムを記録したコンピュータ読み取り可能な記録媒体 - Google Patents

イントラ予測モード選択方法,画像符号化装置,画像符号化プログラムおよびそのプログラムを記録したコンピュータ読み取り可能な記録媒体 Download PDF

Info

Publication number
JP4231020B2
JP4231020B2 JP2005093672A JP2005093672A JP4231020B2 JP 4231020 B2 JP4231020 B2 JP 4231020B2 JP 2005093672 A JP2005093672 A JP 2005093672A JP 2005093672 A JP2005093672 A JP 2005093672A JP 4231020 B2 JP4231020 B2 JP 4231020B2
Authority
JP
Japan
Prior art keywords
prediction
prediction mode
error
mode
cost
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2005093672A
Other languages
English (en)
Other versions
JP2006279374A (ja
Inventor
幸浩 坂東
誠之 高村
一人 上倉
由幸 八島
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2005093672A priority Critical patent/JP4231020B2/ja
Publication of JP2006279374A publication Critical patent/JP2006279374A/ja
Application granted granted Critical
Publication of JP4231020B2 publication Critical patent/JP4231020B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は,高能率画像信号符号化方法に関し,特にイントラ予測のモード選択時のコスト算出の演算量を削減可能にしたイントラ予測モード推定方法に関する。
H.264(非特許文献1参照)のイントラ予測において,4×4サイズのブロックを符号化する場合,9つのモードのいずれかを用いる。このモードの選択は,符号化側で自由に設定することができる。最も単純な選択方法は,9つのモード全てに対して,以下に示すコストを算出し,同コストを最小化するモードを選択する方法である。
〔1〕各モードを用いた場合の予測信号を求める。
〔2〕原信号と予測信号との差分信号を求める。
〔3〕差分信号の絶対値和(SAD)を求める。
〔4〕次式で与えられるコストを計算する。
SAD+a×λ(QP) (1)
ここで,aは定数,QPは量子化パラメータ,λ(QP)は量子化パラメータQPの値に応じた加算項を返す関数である。
〔5〕上記〔1〕から〔4〕までの処理を9つのモードに対して繰り返し,コストを最小化するモードを選択する。
コストとして,SADの代りに差分信号に対するアダマール変換を施し,その変換係数の和(SATD)を用いる例も検討されているが,演算量を少なく抑える場合には,上述のSADを用いる方が適している。しかし,SATDではなくSADを用いたとしても,上述のような全モードを対象とした探索処理の場合,コスト算出の計算量は非常に大きなものとなる。
これに対し,予測モードのコスト算出の計算量を低減させるため,最適解であるモードを求めることをあきらめ,準最適解に相当する予測モードを求める方法が検討されている(非特許文献2,非特許文献3参照)。
"Draft ITU-T Recommendation and Final Draft International Standard of Joint Video Specification"ITU-T Rec. H.264|ISO/IEC 14496-10 AVC,JVT-G050r1,May ,2003. P.Feng et.al."Fast mode decision for intra prediction ",JVT-I049,Sept. ,2003. "H.264/AVCにおけるイントラ予測高速化の一検討",高木幸一他,電子情報通信学会技術報告 IE2003-123 ,pp.51-54,2003.
上述のように,準最適解に相当する予測モードを求める方法の場合,計算量の低減とひきかえに,予測誤差の増加を招く。準最適解を選択したことによる画質の劣化は画像に依存するため,画像によっては大きな劣化を引き起こす可能性が残る。このため,予測誤差を増加させることなく計算量を低減させる予測モードの選択法が必要となる。
本発明は,かかる事情に鑑みてなされたものであって,イントラ予測モード選択の基準となるコストの高速な計算法を確立することを目的とする。記述の簡略化のため,以下,単にモードとした場合は,イントラ予測モードを指すものとする。
イントラ予測モードのモード推定時に計算量の大部分を占めるのはコストの算出である。本発明では,コストの算出において,下限値を利用した枝刈りを行う。基本的な考え方は,次の通りである。
・モードのコストの算出に先立ち,コストの下限値を算出する。
・下限値を利用した枝刈りを行う。
・下限値算出の計算量をコストのそれと比べて,少なく抑える。
二つのモードm1 ,m2 のコストを比較する場合,両モードに対するコストを直接比較するのではなく,モードm1 のコストE(m1 )に対して,モードm2 のコストE(m2 )の下限値L(m2 )との大小比較を行う。この時,
E(m1 )≦L(m2
であれば,L(m2 )がコストE(m2 )の下限値であるため,
E(m1 )≦E(m2
となり,E(m2 )を算出して比較する必要はない。つまり,E(m2 )の算出は,
L(m2 )<E(m1
となる場合のみ行えば十分である。後述するように,コストの下限値は,コストに比べて少ない計算量での算出が可能である。このため,コストの下限値との比較を行い,コストの算出を省くことにより,コストの最小化を保証した上で,計算量の低減を図ることができる。
すなわち,本発明は,n個(n≧2)のイントラ予測モードの中から符号化コストが最小となる予測モードを選択しイントラ予測を行う画像符号化方法において,前記n個の予測モードの中の一つの予測モードm1 の符号化コストE(m1 )を算出し,暫定最小コストとして記憶する第1の過程と,次にコスト算出対象となる予測モードmi (i=2,3,…,n)の符号化コストの下限値L(mi )を算出する第2の過程と,前記暫定最小コストと前記下限値L(mi )との大小比較を行い,前記下限値L(mi )が前記暫定最小コストよりも小さい場合にのみ,予測モードmi に対する符号化コストE(mi )を算出し,前記下限値L(mi )が前記暫定最小コストより小さくない場合には,その予測モードmi のコスト算出を打ち切る第3の過程と,前記予測モードmi に対する符号化コストE(mi )を算出した場合に,その符号化コストE(mi )と現在の前記暫定最小コストとの大小比較を行い,前記符号化コストE(mi )が前記暫定最小コストよりも小さい場合に,前記符号化コストE(mi )を新たな暫定最小コストとして記憶する第4の過程と,前記第2の過程から前記第4の過程までを予測モードm2 から最終の予測モードmn まで繰り返し,最終的に暫定最小コストとして記憶されている符号化コストE(mj )に対応する予測モードmj を最適予測モードとして選択する第5の過程とを有することを特徴とする。
第3の過程による最適予測モードの探索における枝刈りによって,精度を落とすことなく演算量を削減することができる。
前記第2の過程における下限値L(mi )の算出では,予測モードmi に対する参照画素値和を算出するとともに,下限値L(mi )の算出において必要となる四捨五入演算により発生する丸め誤差に対する補正値を求め,あらかじめ算出した被予測画素値和と前記参照画素値和と前記丸め誤差に対する補正値とから予測誤差の最小値として下限値L(mi )を算出する。
被予測画素値和は全予測モードの探索において一度だけ算出すればよく,また参照画素値和の算出においても,最初の予測モードにおける予測誤差の算出において算出済みの結果を利用することができるので,下限値L(mi )を少ない演算量で求めることができる。
特に,補正値を求める過程では,あらかじめ参照画素値の下位ビットの組み合わせで参照される位置に,それらの参照画素値に対応する丸め誤差に対する補正値が格納されたルックアップテーブルを用意しておき,該当する予測モードmi の丸め誤差に対する補正値をそのルックアップテーブルから読み込む。これにより,丸め誤差に対する補正値をその都度演算する必要はなく,高速に求めることができる。
また,前記ルックアップテーブルを予測モードmi 毎に個別に設ける。または,ルックアップテーブルを参照画素のクラスタリング結果に応じて個別に設ける。これにより,ルックアップテーブルのサイズを,1つのルックアップテーブルにまとめた場合に比較して小さくすることができる。
本発明では,H.264等の高能率画像信号符号化におけるイントラ予測のモード選択時のコスト計算において,既算出の計算結果を再利用してコスト算出の演算量を削滅する。この際,本発明ではコスト計算に近似は含まれないため,本発明の導入によるモード選択結果は導入前と変化はなく,画質の劣化は発生しない。
以下の説明では,簡単のため,モード選択に用いるコスト関数を予測誤差(SAD)とする。なお,符号化対象ブロック(以下,MBと記す)の左上角の座標を(x0 ,y0 )とおく。MBのサイズが4×4の場合と16×16の場合に分けて説明する。
1.ブロックサイズが4×4の場合の実施の形態
MBのサイズは全て4×4として説明する。コスト関数値の計算法については,まず,予測において丸め誤差が発生しない垂直方向予測および水平方向予測の場合を説明する。次に,これら以外の場合を説明する。
1−1.丸め誤差が発生しない場合
モード番号0の予測(垂直方向予測)およびモード番号1の予測(水平方向予測)のコスト算出は,以下のように行う。
まずは,この2つのモードに対するコスト算出に先立ち,モード番号2の予測(DC予測)に対する予測誤差を求める。同予測誤差をE(2)4x4 とする。このE(2)4x4 をレジスタεに格納する。本モードの場合,参照画素が参照可能(参照可能な場合,参照画素は“available for Intra _4x4prediction ”となっている)か否かに応じて,予測値q[x0 +x,y0 +y](x=0,1,2,3;y=0,1,2,3)は,次式のようになる。なお,座標[x0 +x,y0 +y]の画素値をP[x0 +x,y0 +y]としている。
(i) P[x0 +x,y0 −1],P[x0 −1,y0 +y]が,ともに参照可能な場合:
Figure 0004231020
(ii) P[x0 +x,y0 −1]は参照可能であり,P[x0 −1,y0 +y]が参照可能でない場合:
Figure 0004231020
(iii) P[x0 −1,y0 +y]が参照可能であり,P[x0 +x,y0 −1]は参照可能でない場合:
Figure 0004231020
(iv) P[x0 +x,y0 −1],P[x0 −1,y0 +y]が,ともに参照可能でない場合:
q[x0 +x,y0 +y]=128 (5)
q[x0 +x,y0 +y]の算出過程で求めた次の値を,メモリまたはレジスタに格納しておく。
Figure 0004231020
また,次の値も計算し,格納しておく。
Figure 0004231020
なお,以下では,記述の簡単化のため,次のように略記する。
p[x,y]≡P[x0 +x,y0 +y]
次に,p[x,−1](x=0,1,2,3)が参照可能であれば,モード番号0の予測(垂直予測)を行う。
図1は,ブロックサイズが4×4の場合の垂直予測モードを示している。図1(a)に示すように,垂直予測モードでは,符号化対象ブロックに隣接する上の4画素を垂直方向に下ろして参照画素とする。被予測画素と参照画素とが図1(b),(c)に示す関係にあることから,予測誤差E(0)4x4 は次の下限値を持つ。
Figure 0004231020
このとき次式を満たせば,垂直予測は予測誤差を最小化できないと判断できるため,予測誤差の算出は行うことなく,次の処理に移る。
Figure 0004231020
上式を満たさないときのみ,垂直予測に対する予測誤差E(0)4x4 を求める。
E(0)4x4 <εであれば,レジスタεの値をE(0)4x4 で上書きして置き換える。
次に,p[−1,y](y=0,1,2,3)が参照可能であれば,モード番号1の予測(水平予測)を行う。
図2は,ブロックサイズが4×4の場合の水平予測モードを示している。図2(a)に示すように,水平予測モードでは,符号化対象ブロックに隣接する左の4画素を水平方向にのばして参照画素とする。被予測画素と参照画素とが図2(b),(c)に示す関係にあることから,予測誤差E(1)4x4 は次の下限値を持つ。
Figure 0004231020
このとき次式を満たせば,水平予測は予測誤差を最小化できないと判断できるため,予測誤差の算出は行うことなく,次の処理に移る。
Figure 0004231020
上式を満たさないときのみ,水平予測に対する予測誤差E(1)4x4 を求める。
E(1)4x4 <εであれば,レジスタεの値をE(1)4x4 で上書きして置き換える。
1−2.丸め誤差が発生する場合
図3は,4×4ブロックの予測モードとモード番号の関係を示している。H.264では,各モード番号0〜8の予測モードの予測に用いる参照画素の適用方向が図3に示すようになっている。これらの予測モードのうち,モード番号3〜8に対して,予測誤差の下限値を算出する場合,四捨五入演算により発生する丸め誤差を考慮する必要がある。
前述した垂直方向予測および水平方向予測モードの場合との違いは,この丸め誤差に対する補正値の算出が必要となる点である。なお,以下では,除算により得た実数値は切り捨てにより整数値に丸めるものとする。図4に,補正値の計算例を示す。
モード番号3の場合の例に以下に示す。同モードの予測を行う場合,予測誤差E(3)4x4 は次の下限値を持つ。
Figure 0004231020
ここで,S(3)4x4 は参照画素の加重和として求める以下の値である。
Figure 0004231020
また,R(3)4x4 は,四捨五入演算により発生する丸め誤差を考慮した補正値であり,次式となる。
Figure 0004231020
なお,前述の通り,除算により得た実数値は切り捨てにより整数値に丸めるものとする。
このように,モード番号3の予測の場合,補正値は参照画素p[0,−1],p[1,−1],p[2,−1],p[3,−1],p[4,−1],p[5,−1],p[6,−1],p[7,−1]の下位2ビットにより定まる。補正値に関しては,予め計算した結果をテーブルに格納しておき,下限値算出時には,このテーブルを参照し,演算量の増加を防ぐ。他のモードについても同様に,予測誤差E(m)4x4 (m=3,... ,8)の下限値は次式として与えられる。
4x4 −S(m)4x4 −R(m)4x4
S(m)4x4 を参照画素の加重和,R(m)4x4 を丸め誤差の補正値,T4x4 を被予測画素の画素値和と呼ぶ。なお,S(m)4x4 およびR(m)4x4 (m=3,... ,8)の詳細については,[付録A]として本説明の最後に示す。
1−3.補正値のルックアップテーブルの設計法
以下,補正値のルックアップテーブルの設計法の例について説明する。
1−3−1.ルックアップテーブルの設計法(その1)
いずれのモードの補正値も,参照画素p[0,−1],p[1,−1],p[2,−1],p[3,−1],p[4,−1],p[5,−1],p[6,−1],p[7,−1],p[8,−1],p[−1,1],p[−1,2],p[−1,3],p[−1,4]の下位2ビットにより定まる。そこで,この13個の参照画素の下位2ビットのとり得る全ての組み合わせに対して,各モード毎の補正値をルックアップテーブルに格納する。このとき,各モードの補正値は0から16までの値をとるため,5ビット必要となり,ルックアップテーブルのサイズは次のようになる。
5×413=335.54432[Mbits]
1−3−2.ルックアップテーブルの設計法(その2)
各モード毎に補正値をルックアップテーブルに格納する。ここでは,予測モード3を例にとり説明する。予測モード3の場合,補正値は参照画素p[0,−1],p[1,−1],p[2,−1],p[3,−1],p[4,−1],p[5,−1],p[6,−1],p[7,−1]の下位2ビットにより定まる。そこで,この8個の参照画素の下位2ビットのとり得る全ての組み合わせ(48 通り)に対して,各々の補正値をルックアップテーブルに格納する。
画素値xの下位nビットをU(x,n)とし,例として,(U(p[0,−1],2),(U(p[1,−1],2),(U(p[2,−1],2),(U(p[3,−1],2),(U(p[4,−1],2),(U(p[5,−1],2),(U(p[6,−1],2),(U(p[7,−1],2))=(002 ,002 ,002 ,002 ,002 ,002 ,002 ,002 )の場合を考える。なお,002 は2桁の二進数で表した0である。このとき,式(13)より,補正値はR(3)4x4 =0となり,ルックアップテーブルには,引数(002 ,002 ,002 ,002 ,002 ,002 ,002 ,002 )に対応する値として0が格納される。本モードの補正値は0から16までの値をとるため,ルックアップテーブルのサイズは
5×48 =0.32768[Mbits]
となる。他のモードの場合も同様に考えれば,全モードのルックアップテーブルのサイズは次式となる。なお,次式の第i(i=1,2,... ,6)項は予測番号i+2の予測モードの補正値の格納に必要なテーブルサイズである。
5×48 +5×47 +5×48 +(3×46 +3×23
+5×47 +(3×44 +3×24 )=0.833096[Mbits]
1−3−3.ルックアップテーブルの設計法(その3)
図5は,イントラ予測における被予測画素のグルーピングの例を示す。また,図6は,各モードにおいて各グループ(クラス)毎に被予測画像を分類した結果を示す。
図5に示すように,参照画素を位置に応じて3つのクラスに分類し,各クラス毎に補正値を格納するルックアップテーブルを作成する。各モードにおいてクラス毎の被予測画素を分類した結果を図6に示す。各クラスにおける被予測画素数の内訳を図7に示す。
例えば,モード3では,クラス2の参照画素を用いて6画素の予測を行う(ここでは,クラス2に含まれる6個の参照画素のうち5画素が利用される)。そこで,この6個の参照画素の下位2ビットのとり得る全ての組み合わせ(46 通り)に対して,各々の補正値をルックアップテーブルに格納する。具体的な補正値の算出は,式(13)において,クラス2の参照画素に関する項のみ和をとるものとする。この補正値は0から6までの値をとるため,ルックアップテーブルのサイズは次のようになる。
3×46 =0.012288[Mbits]
一方,クラス3の場合ルックアップテーブルのサイズは次のようになる。
4×45 =0.004096[Mbits]
従って,モード3のルックアップテーブルのサイズは
3×46 +4×45 =0.016384[Mbits]
となる。なお,クラス毎に個別のルックアップテーブルを参照しているため,補正値の算出には,テーブル参照に加えて,各クラスの参照値の加算が必要である。他のモードの場合も同様に考えれば,全モードのルックアップテーブルのサイズは次のようになる。
(3+4+4+5)×46 +(3+4+4+3+2)×46
+(4+3)×45 =0.138240[Mbits]
2.ブロックサイズが16×16の場合の実施の形態
MBのサイズは全て16×16として説明する。コスト関数値の計算法については,まず,予測において丸め誤差が発生しない垂直方向予測および水平方向予測の場合を説明する。次に,これら以外の場合を説明する。
2−1.丸め誤差が発生しない場合
モード番号0の予測(垂直方向予測)およびモード番号1の予測(水平方向予測)のコスト算出は,以下のように行う。
MBサイズが4×4の場合と同様に,まずは,この2つのモードに対するコスト算出に先立ち,モード番号2の予測(DC予測)に対する予測誤差を求める。同予測誤差をE(2)16x16 とする。このE(2)16x16 をレジスタεに格納する。このとき,予測値q[x0 +x,y0 +y](x=0,1,... ,15;y=0,1,... ,15)は参照画素が参照可能(参照画素は“available for Intra _16x16prediction ”となっている)か否かに応じて,次式のようになる。
(i) P[x0 +x,y0 −1],P[x0 −1,y0 +y]が,ともに参照可能な場合:
Figure 0004231020
(ii)P[x0 +x,y0 −1]は参照可能であり,P[x0 −1,y0 +y]が参照可能でない場合:
Figure 0004231020
(iii) P[x0 −1,y0 +y]が参照可能であり,P[x0 +x,y0 −1]は参照可能でない場合:
Figure 0004231020
(iv)P[x0 +x,y0 −1],P[x0 −1,y0 +y]がともに参照可能でない場合:
q[x0 +x,y0 +y]=128 (17)
q[x0 +x,y0 +y]の算出過程で求めた次の値を,メモリまたはレジスタに格納しておく。
Figure 0004231020
また,次の値も計算し,格納しておく。
Figure 0004231020
なお,以下では,記述の簡単化のため,次のように略記する。
p[x,y]≡P[x0 +x,y0 +y]
次に,P[x,−1](x=0,1,2,... ,15)が参照可能であれば,モード番号0の予測(垂直予測)を行う。
図8は,ブロックサイズが16×16の場合の垂直予測モードを示している。図8(a)に示すように,垂直予測モードでは,符号化対象ブロックに隣接する上の16画素を垂直方向に下ろして参照画素とする。被予測画素と参照画素とが図8(b),(c)に示す関係にあることから,予測誤差E(0)16x16 は次の下限値を持つ。
Figure 0004231020
このとき次式を満たせば,垂直予測は予測誤差を最小化できないと判断できるため,予測誤差の算出は行うことなく,次の処理に移る。
Figure 0004231020
上式を満たさないときのみ,垂直予測に対する予測誤差E(0)16x16 を求める。
E(0)16x16 <εであれば,レジスタεの値をE(0)16x16 で上書きして置き換える。
次に,P[−1,y](y=0,1,2,... ,15)が参照可能であれば,モード番号1の予測(水平予測)を行う。
図9は,ブロックサイズが16×16の場合の水平予測モードを示している。図9(a)に示すように,水平予測モードでは,符号化対象ブロックに隣接する左の16画素を水平方向にのばして参照画素とする。被予測画素と参照画素とが図9(b),(c)に示す関係にあることから,予測誤差E(1)16x16 は次の下限値を持つ。
Figure 0004231020
このとき次式を満たせば,水平予測は予測誤差を最小化できないと判断できるため,予測誤差の算出は行うことなく,次の処理に移る。
Figure 0004231020
上式を満たさないときのみ,水平予測に対する予測誤差E(1)16x16 を求める。E(1)16x16 <εであれば,レジスクεの値をE(1)16x16 で上書きして置き換える。
2−2.丸め誤差が発生する場合
モード番号3の場合の予測誤差の下限値を算出する場合,四捨五入演算により発生する丸め誤差を考慮する必要がある。前述の垂直方向予測および水平方向予測モードの場合との違いは,この丸め誤差に対する補正値の算出が必要となる点である。なお,以下では,除算により得た実数値は切り捨てにより整数値に丸めるものとする。
p[x,−1],p[−1,y](x=−1,... ,15),(y=0,... ,15)がともに参照可能な場合に限り,モード番号3の予測が可能であり,このとき,予測誤差E(3)16x16 は,次のような下限値を持つ。
Figure 0004231020
ここで,
Figure 0004231020
であり,S(3)16x16 ,R(3)16x16 については,以下のようにおいた。
Figure 0004231020
R(3)16x16 の値は,a,b,cの下位5ビットにより定まる。そこで,この3つの値の下位5ビットのとり得る全ての組み合わせに対して,各モード毎の補正値をルックアップテーブルに格納する。このとき,各モードの補正値は0から256までの値をとるため,ルックアップテーブルのサイズは次のようになる。
9×(25 3 =0.294912[Mbits]
図10は,本発明の実施例の処理フローチャートである。以下に説明する実施例では,丸め誤差をルックアップテーブルに格納する際,参照画素のクラスタリング結果に応じて,個別のルックアップテーブルに格納するものとする。上述した他のルックアップテーブルの設計法を利用しても,同様に本発明を実施することができる。
まずは,イントラ予測のブロックサイズが4×4の正方形領域の場合について示す。まず,ステップS1では,被予測画素,参照画素,第一算出予測モードを入力とし,第一算出予測モードとして指定された予測モードm0 に対して,予測誤差E(m0 4x4 を出力する。例えば,m0 =2の場合には,式(2)〜(5)に従う処理を行い,予測誤差E(2)4x4 を出力する。この場合,後続のモード0,1の算出において,式(9)およひ式(10)で示したように,モード2における計算結果
Figure 0004231020
を再利用できる。
次に,被予測画素を入力とし,被予測画素値和T4x4 を出力する。より具体的には,式(8)により被予測画素値和T4x4 を算出する(ステップS2)。
予測モード番号m(m=0,1,... ,8,m≠m0 ),参照画素を入力とし,予測モードに対する参照画素値和S(m)4x4 を算出する処理を行う(ステップS3)。より具体的には,付録A(後記)に示す式により算出する。
予測モード番号m(m=0,1,... ,8,m≠m0 ),参照画素を入力とし,予測モードの丸め誤差に対する補正値R(m)4x4 をルックアップテーブルから読み込む処理を行う。なお,同テーブルには,予め付録Aに示す式に従い算出した値を格納しておく。なお,丸め誤差の発生しないモード0,1については,補正値を0として格納しておく(ステップS4)。
被予測画素値和T4x4 ,参照画素値和S(m)4x4 ,丸め誤差に対する補正値R(m)4x4 を入力とし,予測モードの予測誤差の下限値を算出する処理を行う。より具体的には,次式により下限値L(m)を求める(ステップS5)。
4x4 −S(m)4x4 −R(m)4x4
ステップS5で求めた下限値L(m),予測誤差の最小値として格納された値εを入力とし,L(m)とεとの大小比較を行い,
L(m)<ε
であれば真値を出力し,そうでなければ偽値を出力する(ステップS6)。
出力が真値の場合,被予測画素,参照画素を入力とし,予測モードmに対する予測誤差E(m)4x4 を算出する処理を行い,E(m)4x4 を出力する(ステップS7)。続いて,予測モードmに対する予測誤差E(m)4x4 ,予測誤差の最小値として格納された値εを入力とし,両値の大小比較を行う処理を行い,
E(m)4x4 <ε
であれば真値を出力し,そうでなければ偽値を出力する(ステップS8)。
この出力も真値の場合,予測モードm,同モードに対する予測誤差E(m)4x4 を入力とし,mを現時点での最適予測モード,E(m)4x4 を予測誤差の最小値として,各々,レジスタM,εに代入する処理を行う(ステップS9)。
予測モードmを更新しながら(ステップS11),全モードについて上述の処理を繰り返し,全ての予測モードに対する処理が終了したならば(ステップS10),最終的に,全モードの中で予測誤差を最小化する予測モードとして,レジスタMに格納された値を出力する(ステップS10)。
イントラ予測のブロックサイズが16×16の正方形領域の場合には,4×4の正方形領域の場合を示した上述の処理において,モード番号をm=0,1,2,3,第一算出予測モードをm0 ′とし,E(m)4x4 ,S(m)4x4 ,R(m)4x4 ,T4x4 を,各々,E(m)16x16 ,S(m)16x16 ,R(m)16x16 ,T16x16 として,同様の処理を行う。
図11に本発明の実施例の装置構成図を示す。予測モードを決定した後の符号化処理の部分は従来技術と同様でよいため,予測モードを決定する部分の構成だけを示している。図11において,スイッチSW1は,予測モードが第一予測モードの場合,第一予測モード予測誤差決定部101および被予測画素値和決定部102の処理を行い,それ以外の場合,参照画素値和決定部104の処理を行うように制御を切り換える。
第一予測モード予測誤差決定部101は,符号化対象ブロックの画素,参照画素,第一予測モードに対応する予測モードを入力とし,予測誤差を算出する処理を行い,同予測誤差を暫定最小予測誤差記憶部112に出力し,同予測モードを暫定最適予測モード記憶部113に出力する。
被予測画素値和決定部102は,符号化対象ブロックの画素を入力とし,同ブロック内の被予測画素値和を算出する処理を行い,この被予測画素値和を被予測画素値和記憶部103に出力する。なお,被予測画素値和T4x4 ,T16x16 は,各々,式(8),式(20)により算出する。
参照画素値和決定部104は,参照画素,予測モードを入力とし,参照画素値和を算出する処理を行い,この参照画素値和を参照画素値和記憶部105に出力する。なお,参照画素値和S(m)4x4 ,S(m)16x16 の算出は,各々,付録A,付録B(後記)に従う。
予測誤差下限値決定部106は,予測モードを入力とし,被予測画素値和記憶部103,参照画素値和記憶部105,補正値記憶部107から,各々,被予測画素値和,参照画素値和,補正値を読み込み,予測誤差の下限値を算出する処理を行い,同下限値を下限値記憶部108に出力する。具体的な算出は,各ブロックサイズの各モード毎に,
4x4 −S(m)4x4 −R(m)4x4 (m=0,1,... ,8,m≠m0 ),
16x16 −S(m)16x16 −R(m)16x16 (m=0,1,2,3,m≠m0 ′),
により行う。なお,補正値R(m)4x4 ,R(m)16x16 は,補正値記憶部107に予め格納しておくものとする。
枝刈り判定部109は,下限値記憶部108および暫定最小予測誤差記憶部112から,各々,予測誤差の下限値,およびこれまでに格納された予測誤差の最小値を読み込み,2つの値の大小比較を行い,同下限値の方が小さい場合に,次の処理へ進む(SW2)。それ以外の場合には,現在のモードに対する処理を終了する。
予測誤差算出部110は,符号化対象ブロックの画素,参照画素,予測モードを入力とし,予測誤差を算出する処理を行い,同予測誤差を出力する。
また,最適予測モード判定部111は,予測誤差算出部110で算出された予測誤差を入力とし暫定最小予測誤差記憶部112からこれまでに格納された予測誤差の最小値を読み込み,2つの値の大小比較を行い,予測誤差算出部110で算出された予測誤差の方が小さい場合,同予測誤差を暫定最小予測誤差記憶部112に記憶し,同予測モードを暫定最適予測モード記憶部113に記憶する。
予測モード制御部114は,以上の処理を全てのモードに対して繰り返し,最終的に暫定最適予測モード記憶部113に記憶された値を最適な予測モードとして出力する。
以上のイントラ予測モードを決定する処理は,コンピュータとソフトウェアプログラムとによっても実現することができ,そのプログラムをコンピュータ読み取り可能な記録媒体に記録して提供することも,ネットワークを通して提供することも可能である。
[付録A]
ブロックサイズ4×4の場合の各モードの補正項について示す。各モードの対する参照画素値和および補正値は,以下の通りである。
〔1〕モード番号0の場合:
S(0)4x4 =4(p[0,−1]+p[1,−1]
+p[2,−1]+p[3,−1]) (29)
R(0)4x4 =0 (30)
〔2〕モード番号1の場合:
S(1)4x4 =4(p[−1,0]+p[−1,1]
+p[−1,2]+p[−1,3]) (31)
R(1)4x4 =0 (32)
〔3〕モード番号2の場合:
Figure 0004231020
〔4〕モード番号3の場合:
Figure 0004231020
なお,R(3)4x4 は,式(13)に同じ。また,前述の通り,モード番号3の予測の場合,補正項は参照画素p[0,−1],p[1,−1],p[2,−1],p[3,−1],p[4,−1],p[5,−1],p[6,−1],p[7,−1]の下位2ビットにより定まる。
〔5〕モード番号4の場合:
Figure 0004231020
補正項R(4)4x4 は,参照画素p[−1,−1],p[0,−1],p[1,−1],p[2,−1],p[3,−1],p[−1,1],p[−1,2],p[−1,3]の下位2ビットにより定まる。
〔6〕モード番号5の場合:
Figure 0004231020
以下では,zvr=2x−yとする。
Figure 0004231020
補正項R(5)4x4 は,参照画素p[−1,−1],p[0,−1],p[1,−1],p[2,−1],p[3,−1],p[4,−1],p[−1,1],p[−1,2],p[−1,3]の下位2ビットにより定まる。
〔7〕モード番号6の場合:
Figure 0004231020
以下では,zhd=2y−xとする。
Figure 0004231020
補正項R(6)4x4 は,参照画素p[−1,−1],p[0,−1],p[1,−1],p[2,−1],p[3,−1],p[4,−1],p[−1,1]の下位2ビットおよびp[−1,2],p[−1,3],p[−1,4]の下位1ビットにより定まる。
〔8〕モード番号7の場合:
Figure 0004231020
補正項R(7)4x4 は参照画素p[0,−1],p[1,−1],p[2,−1],p[3,−1],p[4,−1],p[5,−1],p[6,−1],p[7,−1]の下位2ビットにより定まる。
〔9〕モード番号8の場合:
Figure 0004231020
以下では,zhu=2y+xとする。
Figure 0004231020
補正項R(7)4x4 は,参照画素p[0,−1],p[1,−1],p[2,−1],p[3,−1]の下位1ビットおよびp[−1,1],p[−1,2],p[−1,3],p[−1,4]の下位2ビットにより定まる。
[付録B]
ブロックサイズ16×16の場合の各モードの補正項は,以下の通りである。
〔1〕モード番号0の場合:
Figure 0004231020
〔2〕モード番号1の場合:
Figure 0004231020
〔3〕モード番号2の場合:
Figure 0004231020
〔4〕モード番号3の場合:
Figure 0004231020
ここで,a,b,cは,以下のようにおいた。
Figure 0004231020
ブロックサイズが4×4の場合の垂直予測モードを示す図である。 ブロックサイズが4×4の場合の水平予測モードを示す図である。 4×4ブロックの予測モードとモード番号の関係を示す図である。 補正値の計算例を示す図である。 イントラ予測における被予測画素のグルーピングの例を示す図である。 各モードにおける各クラス毎の被予測画像の分類結果を示す図である。 各クラスにおける被予測画素数の内訳を示す図である。 ブロックサイズが16×16の場合の垂直予測モードを示す図である。 ブロックサイズが16×16の場合の水平予測モードを示す図である。 本発明の実施例の処理フローチャートである。 本発明の実施例の装置構成図である。
符号の説明
101 第一予測モード予測誤差決定部
102 被予測画素値和決定部
103 被予測画素値和記憶部
104 参照画素値和決定部
105 参照画素値和記憶部
106 予測誤差下限値決定部
107 補正値記憶部
108 下限値記憶部
109 枝刈り判定部
110 予測誤差算出部
111 最適予測モード判定部
112 暫定最小予測誤差記憶部
113 暫定最適予測モード記憶部
114 予測モード制御部

Claims (6)

  1. n個(n≧2)のイントラ予測モードの中から符号化コストが最小となる予測モードを選択しイントラ予測を行う画像符号化方法において,
    前記n個の予測モードの中の一つの予測モードm1 の符号化コストE(m1 )を算出し,暫定最小コストとして記憶する第1の過程と,
    次にコスト算出対象となる予測モードmi (i=2,3,…,n)の符号化コストの下限値L(mi )を算出する第2の過程と,
    前記暫定最小コストと前記下限値L(mi )との大小比較を行い,前記下限値L(mi )が前記暫定最小コストよりも小さい場合にのみ,予測モードmi に対する符号化コストE(mi )を算出し,前記下限値L(mi )が前記暫定最小コストより小さくない場合には,その予測モードmi のコスト算出処理を打ち切る第3の過程と,
    前記予測モードmi に対する符号化コストE(mi )を算出した場合に,その符号化コストE(mi )と現在の前記暫定最小コストとの大小比較を行い,前記符号化コストE(mi )が前記暫定最小コストよりも小さい場合に,前記符号化コストE(mi )を新たな暫定最小コストとして記憶する第4の過程と,
    前記第2の過程から前記第4の過程までを予測モードm2 から最終の予測モードmn まで繰り返し,最終的に暫定最小コストとして記憶されている符号化コストE(mj )に対応する予測モードmj を最適予測モードとして選択する第5の過程とを有し,
    前記第2の過程における下限値L(m i )の算出では,予測モードm i に対する参照画素値和を算出するとともに,下限値L(m i )の算出において必要となる四捨五入演算により発生する丸め誤差に対する補正値を求め,あらかじめ算出した被予測画素値和と前記参照画素値和と前記丸め誤差に対する補正値とから予測誤差の最小値として下限値L(m i )を算出し,
    前記丸め誤差に対する補正値を求める過程では,あらかじめ参照画素値の下位ビットの組み合わせで参照される位置に,それらの参照画素値に対応する丸め誤差に対する補正値が格納されたルックアップテーブルを用いて,該ルックアップテーブルから該当する予測モードm i の丸め誤差に対する補正値を読み込む
    ことを特徴とするイントラ予測モード選択方法。
  2. 前記ルックアップテーブルが予測モードmi 毎に個別に設けられ,各予測モードmi に対応するルックアップテーブルから該当する予測モードmi の丸め誤差に対する補正値を読み込む
    ことを特徴とする請求項記載のイントラ予測モード選択方法。
  3. 前記ルックアップテーブルが参照画素のクラスタリング結果に応じて個別に設けられ,参照画素のクラスタリング結果に対応するルックアップテーブルから該当する予測モードmi の丸め誤差に対する補正値を読み込む
    ことを特徴とする請求項記載のイントラ予測モード選択方法。
  4. n個(n≧2)のイントラ予測モードの中から符号化コストが最小となる予測モードを選択しイントラ予測を行う画像符号化装置において,
    暫定的に決定された最小予測誤差を記憶する暫定最小予測誤差記憶手段と,
    前記n個の予測モードの中の一つの予測モードm1 の予測誤差を算出し,前記暫定最小予測誤差記憶手段に格納する手段と,
    被予測画素値和を算出する手段と,
    前記予測モードm1 以外の各予測モードmi (i=2,3,…,n)毎に参照画素値和を算出する手段と,
    参照画素値の下位ビットの組み合わせで参照される位置に,予測誤差の下限値L(mi )の算出において必要となる四捨五入演算により発生する丸め誤差に対する補正値をあらかじめ記憶する補正値記憶手段と,
    前記被予測画素値和と前記参照画素値和と前記補正値記憶手段から読み出された丸め誤差に対する補正値とから各予測モードmi (i=2,3,…,n)毎に予測誤差の下限値L(mi )を算出する手段と,
    前記暫定最小予測誤差記憶手段に記憶された予測誤差と前記下限値L(mi )との大小比較を行い,前記予測誤差が前記下限値L(mi )より小さい場合に,その予測モードmi の予測誤差の算出を省略して予測モードm i に対する最適予測モード探索の枝刈りを行い,前記予測誤差が前記下限値L(m i )より小さくない場合に,当該予測モードm i の予測誤差を算出し,算出された予測誤差と前記暫定最小予測誤差記憶手段に記憶された予測誤差との比較を行い,当該予測モードm i の予測誤差の方が小さいときに,その予測誤差を前記暫定最小予測誤差記憶手段に記憶する最適予測モード探索を行う手段と,
    前記各予測モードmi に対する処理の後,最終的に前記暫定最小予測誤差記憶手段に記憶された予測誤差に対応する予測モードmj を最適予測モードとして選択する手段と,
    選択された最適予測モードを用いてイントラ予測を行い入力した画像を符号化する手段とを備える
    ことを特徴とする画像符号化装置。
  5. 請求項1から請求項までのいずれか1項に記載されたイントラ予測モード選択方法を,コンピュータに実行させるための画像符号化プログラム。
  6. 請求項1から請求項までのいずれか1項に記載されたイントラ予測モード選択方法を,コンピュータに実行させるための画像符号化プログラムを記録したコンピュータ読み取り可能な記録媒体。
JP2005093672A 2005-03-29 2005-03-29 イントラ予測モード選択方法,画像符号化装置,画像符号化プログラムおよびそのプログラムを記録したコンピュータ読み取り可能な記録媒体 Expired - Fee Related JP4231020B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005093672A JP4231020B2 (ja) 2005-03-29 2005-03-29 イントラ予測モード選択方法,画像符号化装置,画像符号化プログラムおよびそのプログラムを記録したコンピュータ読み取り可能な記録媒体

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005093672A JP4231020B2 (ja) 2005-03-29 2005-03-29 イントラ予測モード選択方法,画像符号化装置,画像符号化プログラムおよびそのプログラムを記録したコンピュータ読み取り可能な記録媒体

Publications (2)

Publication Number Publication Date
JP2006279374A JP2006279374A (ja) 2006-10-12
JP4231020B2 true JP4231020B2 (ja) 2009-02-25

Family

ID=37213671

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005093672A Expired - Fee Related JP4231020B2 (ja) 2005-03-29 2005-03-29 イントラ予測モード選択方法,画像符号化装置,画像符号化プログラムおよびそのプログラムを記録したコンピュータ読み取り可能な記録媒体

Country Status (1)

Country Link
JP (1) JP4231020B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20120012385A (ko) 2010-07-31 2012-02-09 오수미 인트라 예측 부호화 장치
KR101824241B1 (ko) * 2011-01-11 2018-03-14 에스케이 텔레콤주식회사 인트라 부가정보 부호화/복호화 장치 및 방법

Also Published As

Publication number Publication date
JP2006279374A (ja) 2006-10-12

Similar Documents

Publication Publication Date Title
KR101029762B1 (ko) 고급 비디오 코딩에 대한 인트라 프레딕션을 위한 신속모드 결정 알고리즘
CN108449604B (zh) 使用亮度采样的色度块的内部预测方法以及使用其的装置
WO2016066093A1 (en) Method of improved directional intra prediction for video coding
JP5490823B2 (ja) 画像の系列を表すストリームを復号化する方法、画像の系列を符号化する方法及び符号化データ構造
SE1850140A2 (sv) Förfarande för att utse ett kandidatblock för fusion samt en anordning för tillämpning av detta förfarande
US20070177668A1 (en) Method of and apparatus for deciding intraprediction mode
KR20200002697A (ko) 처리율 향상을 위한 영상 부호화/복호화 방법, 장치 및 비트스트림을 저장한 기록 매체
US20190230379A1 (en) Method and device for intra-prediction
CN102396230A (zh) 图像处理设备和方法
CN109819250B (zh) 一种多核全组合方式的变换方法和系统
WO2017122604A1 (ja) 動画像符号化装置、動画像符号化方法、及び、動画像符号化プログラムが記憶された記憶媒体
CN113225562B (zh) 图像分量预测方法、编码器、解码器以及存储介质
KR20190107944A (ko) 복원 영상에 대한 필터링을 수행하는 영상 처리 장치 및 이의 필터링 방법
JP4880255B2 (ja) 符号化モードを選択する方法及び装置
CN114586366A (zh) 帧间预测方法、编码器、解码器及存储介质
KR102327942B1 (ko) 코딩 유닛 분할 결정 방법 및 디바이스, 컴퓨팅 디바이스 및 판독 가능한 저장 매체
EP3621303B1 (en) Processing method and device for video encoding, and storage medium
CN109996083B (zh) 帧内预测方法及装置
CN111742553A (zh) 用于视频压缩的基于深度学习的图像分区
US11706449B2 (en) Method and device for intra-prediction
JP4231020B2 (ja) イントラ予測モード選択方法,画像符号化装置,画像符号化プログラムおよびそのプログラムを記録したコンピュータ読み取り可能な記録媒体
Hari et al. Ctu partition for intra-mode hevc using convolutional neural network
WO2022116113A1 (zh) 一种帧内预测方法、装置及解码器和编码器
CN116137659A (zh) 帧间编码的块划分方法和装置
WO2021196228A1 (zh) 帧间预测方法、编码器、解码器以及存储介质

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070316

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080822

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080902

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20081104

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20081104

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20081202

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20081204

R150 Certificate of patent or registration of utility model

Ref document number: 4231020

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111212

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111212

Year of fee payment: 3

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: R3D02

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111212

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121212

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121212

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131212

Year of fee payment: 5

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees