(57)【特許請求の範囲】
【請求項１】
動画像をフレーム単位で保持するフレームメモリと、
前記フレームメモリから符号化対象ブロックと、当該符号化対象ブロックの周辺ブロックの画像を読み出して出力する入力ブロック制御部と、
前記符号化対象ブロックと前記周辺ブロックの原画像とを入力し、前記符号化対象ブロックに基づく前記周辺ブロックの画面内予測画像と、当該周辺ブロックの原画像との相関が最も高いブロックを次の符号化対象ブロックとして出力する相関演算部と、
前記符号化対象ブロックに対する画面内予測モードを決定する画面内予測モード決定部と、
前記画面内予測モード決定部で決定された画面内予測モードで、局部復号画像を用いて前記符号化対象ブロックの予測画像を生成する画面内予測画生成部と、
前記符号化対象ブロックと、前記画面内予測画生成部から出力された予測画像との差分を出力する減算器と、
前記減算器の出力を周波数変換および量子化する周波数変換量子化部と、
前記周波数変換量子化部の出力をエントロピー符号化し、符号化信号として出力するエントロピー符号化部と、
前記周波数変換量子化部の出力を逆量子化および逆周波数変換する逆量子化逆周波数変換部と、
前記逆量子化逆周波数変換部の出力と、前記画面内予測画生成部で生成された予測画像とを加算する加算器と、
前記加算器から出力された信号を前記局部復号画像として保持する局部復号画像メモリとを備え、
前記相関演算部から出力される次の符号化対象ブロックを前記入力ブロック制御部が次に出力する符号化対象ブロックとすることを特徴とする動画像符号化装置。
【請求項２】
動画像をフレーム単位で保持するフレームメモリと、
前記フレームメモリから符号化対象ブロックと、当該符号化対象ブロックの周辺ブロックの画像を読み出して出力する入力ブロック制御部と、
符号化対象ブロックの局部復号画像と前記周辺ブロックの原画像を入力し、前記符号化対象ブロックの局部復号画像に基づく前記周辺ブロックの画面内予測画像と、当該周辺ブロックの原画像との相関が最も高いブロックを次の符号化対象ブロックとして出力する相関演算部と、
前記符号化対象ブロックに対する画面内予測モードを決定する画面内予測モード決定部と、
前記画面内予測モード決定部で決定された画面内予測モードで、局部復号画像を用いて前記符号化対象ブロックの予測画像を生成する画面内予測画生成部と、
前記符号化対象ブロックと、前記画面内予測画生成部から出力された予測画像との差分を出力する減算器と、
前記減算器の出力を周波数変換および量子化する周波数変換量子化部と、
前記周波数変換量子化部の出力をエントロピー符号化し、符号化信号として出力するエントロピー符号化部と、
前記周波数変換量子化部の出力を逆量子化および逆周波数変換する逆量子化逆周波数変換部と、
前記逆量子化逆周波数変換部の出力と、前記画面内予測画生成部で生成された予測画像とを加算する加算器と、
前記加算器から出力された信号を前記局部復号画像として保持する局部復号画像メモリとを備え、
前記相関演算部から出力される次の符号化対象ブロックを前記入力ブロック制御部が次に出力する符号化対象ブロックとすることを特徴とする動画像符号化装置。
【請求項３】
フレーム内でどの位置のブロックを符号化したかを記憶する符号化済ブロック記憶部を備え、
入力ブロック制御部は、符号化対象ブロックの情報を出力した場合は、当該符号化対象ブロックを符号化済ブロックとしてその位置を前記符号化済ブロック記憶部に記憶させると共に、相関演算部に対して、前記符号化対象ブロックの情報と共に、前記符号化済ブロック記憶部に記憶されている符号化済ブロックの位置の情報を出力し、
前記相関演算部は、前記符号化済ブロックを除いて相関を演算することを特徴とする請求項１または請求項２記載の動画像符号化装置。
【請求項４】
画面内予測モード決定部は、入力ブロック制御部から入力した符号化済ブロックの位置の情報に基づいて、符号化対象ブロックに対して３６０度からなる画面内予測モードの中から使用可能な予測モードの画面内予測画像を前記符号化対象ブロックの周辺画素から生成して、当該符号化対象ブロックの原画像との間で差分絶対値和演算を行い、最小値をとるものを予測モードとして選択することを特徴とする請求項１から請求項３のうちのいずれか１項記載の動画像符号化装置。
【請求項５】
画面内予測画生成部は、局部復号画像メモリから符号化対象ブロックの周辺画素を読み出し、画面内予測モード決定部で決定した最適な画面内予測モードの画面内予測画像を生成する請求項１から請求項４のうちのいずれか１項記載の動画像符号化装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、動画像を符号化する動画像符号化装置に関し、特に、画面内予測画像の生成に関するものである。
【背景技術】
【０００２】
従来の動画像符号化装置は、左上から順次横方向（ラスタ順）に符号化することを主として考えられているため、その画面内予測ではラスタ順に符号化した際に再生画像が存在する上および左方向からの予測をしている（例えば、非特許文献１参照）。また、符号化対象ブロックを符号化する時点で存在する再生画像で画面内予測してから対象ブロックの１回目の符号化をして再生画像を得てから、その再生画像を元に続くブロックの再生画像を得て最初の符号化対象ブロックの周辺再生画像を増やし、最初の符号化対象ブロックの周辺再生画像を増やしてから２回目の符号化をすることにより、上および左方向以外の画面内予測をする方法も提案されている（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００９−２７２９７２号公報
【非特許文献】
【０００４】
【非特許文献１】ISO/IEC 14496-10 | ITU-T Recommendation H.264
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、従来の動画像符号化装置は、符号化対象ブロックを現在存在する再生画像で画面内予測して符号化してからその再生画像を得て、その再生画像を元に続くブロックの再生画像を得て最初の符号化対象ブロックの周辺再生画像を増やし、最初の符号化対象ブロックの周辺再生画像を増やしてから最初の符号化対象ブロックの符号化をしている。そのため、繰り返し同じブロックの符号化を行うこととなり、処理時間が増えるという問題があった。
【０００６】
この発明は上記のような課題を解決するためになされたもので、符号化画質の向上と共に符号化効率を向上させることのできる動画像符号化装置を得ることを目的とする。
【課題を解決するための手段】
【０００７】
この発明に係る動画像符号化装置は、動画像をフレーム単位で保持するフレームメモリと、フレームメモリから符号化対象ブロックと、符号化対象ブロックの周辺ブロックの画像を読み出して出力する入力ブロック制御部と、符号化対象ブロックと周辺ブロックの原画像とを入力し、符号化対象ブロックに基づく周辺ブロックの画面内予測画像と、周辺ブロックの原画像との相関が最も高いブロックを次の符号化対象ブロックとして出力する相関演算部と、符号化対象ブロックに対する画面内予測モードを決定する画面内予測モード決定部と、画面内予測モード決定部で決定された画面内予測モードで、局部復号画像を用いて符号化対象ブロックの予測画像を生成する画面内予測画生成部と、符号化対象ブロックと、画面内予測画生成部から出力された予測画像との差分を出力する減算器と、減算器の出力を周波数変換および量子化する周波数変換量子化部と、周波数変換量子化部の出力をエントロピー符号化し、符号化信号として出力するエントロピー符号化部と、周波数変換量子化部の出力を逆量子化および逆周波数変換する逆量子化逆周波数変換部と、逆量子化逆周波数変換部の出力と、画面内予測画生成部で生成された予測画像とを加算する加算器と、加算器から出力された信号を局部復号画像として保持する局部復号画像メモリとを備え、相関演算部から出力される次の符号化対象ブロックを入力ブロック制御部が次に出力する符号化対象ブロックとするようにしたものである。
【発明の効果】
【０００８】
この発明の動画像符号化装置は、符号化対象ブロックに基づく周辺ブロックの画面内予測画像と、周辺ブロックの原画像との相関が最も高いブロックを次の符号化対象ブロックとして出力するようにしたので、符号化画質を向上することができると共に、符号化効率を向上させることができる。
【図面の簡単な説明】
【０００９】
【図１】この発明の実施の形態１による動画像符号化装置を示す構成図である。
【図２】Ｈ．２６４／ＡＶＣの画面内予測における予測モードの説明図である。
【図３】この発明の実施の形態１による動画像符号化装置における予測モードの説明図である。
【図４】この発明の実施の形態１による動画像符号化装置のＮ×Ｎ画素ブロックの座標を示す説明図である。
【図５】この発明の実施の形態１による動画像符号化装置の動作タイミングを示す説明図である。
【図６】この発明の実施の形態２による動画像符号化装置を示す構成図である。
【図７】この発明の実施の形態２による動画像符号化装置の動作タイミングを示す説明図である。
【発明を実施するための形態】
【００１０】
実施の形態１．
図１は、この発明の実施の形態１による動画像符号化装置を示す構成図である。
図１に示す動画像符号化装置は、フレームメモリ１、符号化制御部２、入力ブロック制御部３、符号化済ブロック記憶部４、相関演算部５、画面内予測モード決定部６、減算器７、周波数変換量子化部８、逆量子化逆周波数変換部９、加算器１０、画面内予測画生成部１１、局部復号画像メモリ１２、エントロピー符号化部１３を備えている。
【００１１】
フレームメモリ１は、入力した動画像をフレーム単位で保持するメモリである。符号化制御部２は、動画像符号化装置における符号化処理全体の制御を司る制御部であり、例えば、入力ブロック制御部３やエントロピー符号化部１３に対して符号化対象ブロックの位置の指定を行う。入力ブロック制御部３は、符号化制御部２からフレーム内のどの位置から符号化を始めるかを示す始点情報を入力し、フレームメモリ１から矩形状に符号化対象ブロックと次の符号化対象候補となる符号化対象ブロックの周辺ブロックの原画像を読み出して、相関演算部５と画面内予測モード決定部６に符号化対象ブロックと次の符号化対象候補となる符号化対象ブロックの周辺ブロックの原画を出力すると共に、減算器７に符号化対象ブロックの原画を出力する回路である。符号化済ブロック記憶部４は、フレーム内でどの位置のブロックを符号化したかを記憶するメモリである。
【００１２】
相関演算部５は、入力ブロック制御部３から、符号化対象ブロックと次の符号化対象候補となる符号化対象ブロックの周辺ブロックの原画像を入力し、符号化対象ブロックに基づいて各周辺ブロックの予測画像を生成し、この予測画像と各周辺ブロックの原画像との相関を演算、比較し、相関の最も高いブロックの位置を次の符号化対象ブロックとして、入力ブロック制御部３と画面内予測モード決定部６とに出力する回路である。画面内予測モード決定部６は、入力ブロック制御部３から入力した符号化済ブロックの位置の情報に基づいて、符号化対象ブロックに対して３６０度からなる画面内予測モードの中から使用可能な予測モードの画面内予測画像を符号化対象ブロックの原画像から生成して、符号化対象ブロックの原画像との間で差分絶対値和演算を行い、最小値をとるものを予測モードとして選択して画面内予測画生成部１１に出力する回路である。減算器７は、入力ブロック制御部３から符号化対象ブロックの原画像と画面内予測画生成部１１から符号化対象ブロックの予測画像を入力し、減算して周波数変換量子化部８に出力する回路である。
【００１３】
周波数変換量子化部８は、減算器７から入力した符号化対象ブロック原画像と予測画像の差分を入力し、周波数変換および量子化を行って、量子化後の係数をエントロピー符号化部１３および逆量子化逆周波数変換部９に出力する回路である。逆量子化逆周波数変換部９は、周波数変換量子化部８から、符号化対象ブロックの原画像と予測画像の差分画像を周波数変換した係数の量子化後の係数を入力し、逆量子化および逆周波数変換を行って加算器１０に出力する回路である。加算器１０は、逆量子化逆周波数変換部９から、逆量子化および逆周波数変換した量子化後係数と画面内予測画生成部１１から符号化対象ブロックの予測画像を入力し、加算して局部復号画像メモリ１２に出力する回路である。画面内予測画生成部１１は、局部復号画像メモリ１２から符号化対象ブロックの周辺画素を読み出し、画面内予測モード決定部６で決定した最適な画面内予測モードの画面内予測画像を生成する回路である。局部復号画像メモリ１２は、加算器１０から出力した局部復号画像を蓄積するメモリである。エントロピー符号化部１３は、周波数変換量子化部８から入力した原画像と予測画像の差分画像に対して周波数変換および量子化した係数に対して符号化制御部２の指示を元にエントロピー符号化しストリームを出力する回路である。
【００１４】
次に、実施の形態１の動画像符号化装置の動作について説明する。
ところで、既知の通り、Ｈ．２６４／ＡＶＣの画面内予測では４×４画素ブロック、８×８画素ブロックの場合に図２に示す方向およびＤＣ予測の９種類の予測モードがある。本発明の動画像符号化装置では、Ｎ×Ｎ画素ブロックの画面内予測において図３に示すように、Ｈ．２６４／ＡＶＣの９種の予測に加え、ａ、ｂ、ｃ、ｄ、ｅ、ｆ、ｇ、ｈの８種の方向の予測モードを追加する。例えば、対象のＮ×Ｎ画素ブロックの座標を図４のように規定した場合、図３の予測モードの予測画生成式を以下とする。また、Ｎ＝２ｍとし、ｍは自然数である。
【００１５】
対象ブロックの周辺画素をp[x,y]で示す。p[x,y]の画素はフィルタリングしたものを用いても良い。また“>>”は右シフトを示す。
＜予測モード０＞
p[x,-1] x=0..N-1の画素が存在するとき
predN×N[x,y]=p[x,-1] x,y=0..N-1
【００１６】
＜予測モード１＞
p[-1,y] x=0..N-1の画素が存在するとき
predN×N[x,y]=p[-1,y] x,y=0..N-1
【００１７】
＜予測モード２＞
p[x,-1] x=0..N-1とp[-1,y] y=0..N-1が存在するとき、x,y=0..N-1の式は以下に示す通りである。
0005645589.tif 000002
p[x,-1] x=0..N-1が存在せず、p[-1,y] y=0..N-1が存在するとき、x,y=0..N-1の式は以下に示す通りである。
0005645589.tif 000003
p[-1,y] y=0..N-1が存在せず、p[x,-1] x=0..N-1が存在するとき、x,y=0..N-1の式は以下に示す通りである。
0005645589.tif 000004
上記以外
predN×N[x,y]=(1<<(BitDepthy-1)) BitDepthy=8..14
【００１８】
＜予測モード３＞
p[x,-1] x=0..2N-1の画素が存在するとき、x,y=0..N-1の式は以下の通りである。
x=N-1かつy=N-1のとき
predN×N[x,y]=(p[2N-2,-1]+3*p[2N-1,-1]+2)>>2
上記以外
predN×N[x,y]=(p[x+y,-1]+2*p[x+y+1,-1]+p[x+y+2,-1]+2)>>2
【００１９】
＜予測モード４＞
p[x,-1] x=0..N-1とp[-1,y]=y=-1..N-1が存在するとき、x,y=0..N-1の式は以下の通りである。
x>yのとき
predN×N[x,y]=(p[x-y-2,-1]+2*p[x-y-1,-1]+p[x-y,-1]+2)>>2
x<yのとき
predN×N[x,y]=(p[-1,y-x-2]+2*p[-1,y-x-1]+p[-1,y-x]+2)>>2
x=yのとき
predN×N[x,y]=(p[0,-1]+2*p[-1,-1]+p[-1,0]+2]>>2
【００２０】
＜予測モード５＞
p[x,-1] x=0..N-1とp[-1,y]=y=-1..N-1が存在するとき
zVR=2x-yとしてx,y=0..N-1の式は以下の通りである。
zVR=0..2(N-1)の偶数のとき
predN×N[x,y]=(p[x-(y>>1)-1,-1]+p[x-(y>>1),-1]+1)>>1
zVR=1..2(N-1)-1の奇数のとき
predN×N[x,y]=(p[x-(y>>1)-2,-1]+2*p[x-(y>>1)-1,-1]+p[x-(y>>1),-1]+2)>>2
zVR=-1のとき
predN×N[x,y]=(p[-1,0]+2*p[-1,-1]+p[0,-1]+2)>>2
上記以外
predN×N[x,y]=(p[-1,y-2*x-1]+2*p[-1,y-2*x-2]+p[-1,y-2*x-3]+2)>>2
【００２１】
＜予測モード６＞
p[x,-1] x=0..N-1とp[-1,y]=y=-1..N-1が存在するとき
zHD=2y-xとしてx,y=0..N-1の式は以下の通りである。
zHD=0..2(N-1)の偶数のとき
predN×N[x,y]=(p[-1,y-(x>>1)-1]+p[-1,y-(x>>1)]+1)>>1
zHD=1..2(N-1)-1の奇数のとき
predN×N[x,y]=(p[-1,y-(x>>1)-2]+2*p[-1,y-(x>>1)-1]+p[-1,y-(x>>1)]+2)>>2
zHD=-1のとき
predN×N[x,y]=(p[-1,0]+2*p[-1,-1]+p[0,-1]+2)>>2
上記以外
predN×N[x,y]=(p[x-2*y-1,-1]+2*p[x-2*y-2,-1]+p[x-2*y-3,-1]+2)>>2
【００２２】
＜予測モード７＞
p[x,-1] x=0..2N-1の画素が存在するとき、x,y=0..N-1の式は以下の通りである。
y=0..N-2の偶数のとき
predN×N[x,y]=(p[x+(y>>1),-1]+p[x+(y>>1)+1,-1]+1)>>1
y=1..N-1の奇数のとき
predN×N[x,y]=(p[x+(y>>1),-1]+2*p[x+(y>>1)+1,-1]+p[x+(y>>1)+2,-1]+2)>>2
【００２３】
＜予測モード８＞
p[-1,y]=y=-1..N-1が存在するとき
zHU=x+2yとしてx,y=0..N-1の式は以下の通りである。
zHU=0..2(N-1)-2の偶数のとき
predN×N[x,y]=(p[-1,y+(x>>1)]+p[-1,y+(x>>1)+1]+1)>>1
zHU=1..2(N-1)-3の奇数のとき
predN×N[x,y]=(p[-1,y+(x>>1)]+2*p[-1,y+(x>>1)+1]+p[-1,y+(x>>1)+2]+2)>>2
zHU=2(N-1)-1のとき
predN×N[x,y]=(p[-1,N-2]+3*p[-1,N-1]+2)>>2
上記以外のとき
predN×N[x,y]=p[-1,N-1]
【００２４】
＜予測方向ａ＞
p[N,y] y=0..N-1の画素が存在するとき
predN×N[x,y]=p[N,y] x,y=0..N-1
＜予測方向ｂ＞
p[x,N] x=0..N-1の画素が存在するとき
predN×N[x,y]=p[x,N] x,y=0..N-1
【００２５】
＜予測方向ｃ＞
p[x,N] x=0..N-1とp[-1,y] y=0..Nの画素が存在するとき、x,y=0..N-1の式は以下の通りである。
x+y>N-1のとき
predN×N[x,y]=(p[x+y-(N-1)-2,N]+2*p[x+y-(N-1)-1,N]+p[x+y-(N-1),N]+2)>>2
x+y<N-1のとき
predN×N[x,y]=(p[-1,N-1-(x+y)+2]+2*p[-1,N-1-(x+y)+1]+p[-1,N-1-(x+y)]+2)>>2
x+y=N-1のとき
predN×N[x,y]=(p[0,N]+2*p[-1,N]+p[-1,N-1]+2)>>2
【００２６】
＜予測方向ｄ＞
p[x,N] x=0..N-1とp[N,y] y=0..Nの画素が存在するとき、x,y=0..N-1の式は以下の通りである。
x>yのとき
predN×N[x,y]=(p[N,x-y+N-2]+2*p[N,x-y+N-1]+p[N,x-y+N]+2)>>2
x<yのとき
predN×N[x,y]=(p[y-x+N-2,N]+2*p[y-x+N-1,N]+p[y-x+N,N]+2)>>2
x=yのとき
predN×N[x,y]=(p[N-1,N]+2*p[N,N]+p[N,N-1]+2)>>2
【００２７】
＜予測方向ｅ＞
p[x,N] x=0..N-1とp[N,y] y=0..Nの画素が存在するとき
zVUL=-2x+y+(N-1)としてx,y=0..N-1の式は以下の通りである。
zVUL=0,2,4,6..2(N-1)の偶数のとき
predN×N[x,y]=(p[(N-1)-{-2x+y+(N-1)}>>1,N]+p[(N-1)-{-2x+y+(N-1)}>>1+1,N]+1)>>1
zVUL=1,3,5..2(N-1)-1の奇数のとき
predN×N[x,y]=(p[(N-1)-{-2x+y+(N-1)}>>1-1,N]+2*p[(N-1)-{-2x+y+(N-1)}>>1,N]+p[(N-1)-{-2x+y+(N-1)}>>1+1,N]+2)>>2
zVUL=-1のとき
predN×N[x,y]=(p[N-1,N]+2*p[N,N]+p[N,N-1]+2)>>2
zVUL<-1
predN×N[x,y]=(p[N,-2x+y+2(N-1)+1]+2*p[N,-2x+y+2(N-1)+2]+p[N,-2x+y+2(N-1)+3]+2)>>2
【００２８】
＜予測方向ｆ＞
p[x,N] x=0..N-1とp[N,y] y=0..Nの画素が存在するとき
zHLU=-2y+x+(N-1)としてx,y=0..N-1の式は以下の通りである。
zHLU=0,2,4,6..2(N-1)の偶数のとき
predN×N[x,y]=(p[N,(N-1)-{-2y+x+(N-1)}>>1]+p[N,(N-1)-{-2y+x+(N-1)}>>1+1]+1)>>1
zHLU=1,3,5..2(N-1)-1の奇数のとき
predN×N[x,y]=(p[N,(N-1)-{-2y+x+(N-1)}>>1-1]+2*p[N,(N-1)-{-2y+x+(N-1)}>>1]+p[N,(N-1)-{-2y+x+(N-1)}>>1+1]+2)>>2            
zHLU=-1のとき
predN×N[x,y]=(p[N-1,N]+2*p[N,N]+p[N,N-1]+2)>>2
zHLU<-1のとき
predN×N[x,y]=(p[-2y+x+2(N-1)+1,N]+2*p[-2y+x+2(N-1)+2,N]+p[-2y+x+2(N-1)+3,N]+2)>>2
【００２９】
＜予測方向ｇ＞
p[x,N] x=0..N-1とp[-1,y] y=0..Nの画素が存在するとき
zVUR=2x+y-(N-1)として、x,y=0..N-1の式は以下の通りである。
zVUR=0,2,4,6..2(N-1)の偶数のとき
predN×N[x,y]=(p[{2x+y-(N-1)}>>1-1,N]+p[{2x+y-(N-1)}>>1>>2,N]+1)>>1
zVUR=1,3,5..2(N-1)-1の奇数のとき
predN×N[x,y]=(p[{2x+y-(N-1)}>>1-1,N]+2*p[{2x+y-(N-1)}>>1,N]+p[{2x+y-(N-1)}>>1+1,N]+2)>>2
zVUR=-1のとき
predN×N[x,y]=(p[-1,N-1]+2*p[-1,N]+p[0,N]+2)>>2
zVUR<-1のとき
predN×N[x,y]=(p[-1,2x+y+1]+2*p[-1,2x+y+2]+p[-1,2x+y+3]+2)>>2
【００３０】
＜予測方向ｈ＞
p[x,N] x=0..N-1とp[N,y] y=0..Nの画素が存在するとき
zHLD=2y+x-(N-1)として、x,y=0..N-1の式は以下の通りである。
zHLD=0,2,4,6..2(N-1)の偶数のとき
predN×N[x,y]=(p[N,{2y+x-(N-1)}>>1-1]+p[N,{2y+x-(N-1)}>>1]+1)>>1
zHLD=1,3,5..2(N-1)-1の奇数のとき
predN×N[x,y]=(p[N,{2y+x-(N-1)}>>1-1]+2*p[N,{2y+x-(N-1)}>>1]+p[N,{2y+x-(N-1)}>>1+1]+2)>>2
zHLD=-1のとき
predN×N[x,y]=(p[N-1,-1]+2*p[N,-1]+p[N,0]+2)>>2
zHLD<-1のとき
predN×N[x,y]=(p[2y+x+1,-1]+2*p[2y+x+2,-1]+p[2y+x+3,-1]+2)>>2
【００３１】
また、予測モード３、７、８については、本発明の動画像符号化装置では以下のようなものを用いることも出来る。
＜予測方向３＞
p[x,-1] x=0..N-1とp[N,y] y=0..Nの画素が存在するとき、x,y=0..N-1の式は以下の通りである。
x+y>N-1のとき
predN×N[x,y]=(p[N,x+y-(N-1)]+2*p[N,x+y-(N-1)-1]+p[N,x+y-(N-1)-2]+2)>>2
x+y<N-1のとき
predN×N[x,y]=(p[x+y,-1]+2*p[x+y+1,-1]+p[x+y+2,-1]+2)>>2
x+y=N-1のとき
predN×N[x,y]=(p[N-1,-1]+2*p[N,-1]+p[N,0]+2)>>2
【００３２】
＜予測方向７＞
p[x,-1] x=0..N-1とp[N,y] y=0..Nの画素が存在するとき
zVDL=-2x-y+2(N-1)としてx,y=0..N-1の式は以下の通りである。
zVDL=0,2,4,6..2(N-1)の偶数のとき
predN×N[x,y]=(p[(N-1)-{-2x+2(N-1)-y}>>1,-1]+p[(N-1)-{-2x+2(N-1)-y}>>1+1,-1]+1)>>1
zVDL=1,3,5..2(N-1)-1の奇数のとき
predN×N[x,y]=(p[(N-1)-{-2x+2(N-1)-y}>>1-1,-1]+2*p[(N-1)-{-2x+2(N-1)-y}>>1,-1]+p[(N-1)-{-2x+2(N-1)-y}>>1+1,-1]+2)>>2
zVDL=-1のとき
predN×N[x,y]=(p[N-1,-1]+2*p[N,-1]+p[N,0]+2)>>2
zVDL<-1のとき
predN×N[x,y]=(p[N,2x+y-2(N-1)-1]+2*p[N,2x+y-2(N-1)-2]+p[N,2x+y-2(N-1)-3]+2)>>2
【００３３】
＜予測方向８＞
p[x,N] x=0..N-1 p[-1,y] y=0..Nの画素が存在するとき
zHUL=-x-2y+2(N-1)としてx,y=0..N-1の式は以下の通りである。
zHUL=0,2,4,6..2(N-1)の偶数のとき
predN×N[x,y]=(p[-1,(N-1)-{-x-2y+2(N-1)}>>1]+p[-1,(N-1)-{-x-2y+2(N-1)}>>1+1]+1)>>1
zHUL=1,3,5,7..2(N-1)-1の奇数のとき
predN×N[x,y]=(p[-1,(N-1)-{-x-2y+2(N-1)}>>1-1]+2*p[-1,(N-1)-{-x-2y+2(N-1)}>>1]+p[-1,(N-1)-{-x-2y+2(N-1)}>>1+1] +1)>>1
zHUL=-1のとき
predN×N[x,y]=(p[-1,N-1]+2*p[-1,N]+p[0,N]+2)>>2
zHUL<-1のとき
predN×N[x,y]=(p[x+2y-2(N-1)-1,N]+2*p[x+2y-2(N-1)-2,N]+p[x+2y-2(N-1)-3,N]+2)>>2
【００３４】
本発明の動画像符号化装置では以上の式を用いて、各予測モードに対応した画面内予測画を生成する。
図５に図１の符号化装置のタイミングチャート概略を示す。以下の説明は図５に沿うものである。
動画像符号化装置に入力する動画像はフレームメモリ１にフレーム単位で保持する。
先ず、期間１について説明する。
入力ブロック制御部３は、符号化制御部２指示の最初の符号化対象ブロックと次の符号化対象候補となる符号化対象ブロックの周辺の上下左右４ブロックを読み出し、符号化済ブロック記憶部４より入力した位置情報を元に生成した入力ブロックの周辺画素符号化済ブロック有無情報と最初の符号化対象ブロックを画面内予測モード決定部６へ、最初の符号化対象ブロックと次の符号化対象ブロックとなる上下左右の４ブロックを相関演算部５へ、最初の符号化対象ブロックを減算器７へ出力する。
また、最初の符号化対象ブロックを符号化済として符号化済ブロック記憶部４に出力し、符号化済ブロック記憶部４はそのブロック位置を記憶する。
【００３５】
画面内予測モード決定部６は、最初に符号化するブロックでは周辺に符号化済ブロックは存在せず再生画像がないことから周辺画素が存在せずとも予測画像を生成することが出来る予測モード２のＤＣ予測モードに決定し、予測モードを画面内予測画生成部１１へ出力する。
画面内予測画生成部１１は画面内予測モード決定部６で決定した予測モード２の最初の符号化対象ブロックの画面内予測画像を生成し、減算器７および加算器１０へ出力する。
【００３６】
相関演算部５は、入力ブロック制御部３から最初の符号化ブロックおよび次の符号化ブロック候補である隣接４ブロックの原画像を入力する。先ず原画像の最初の符号化対象ブロック画素から隣接４ブロックの生成可能な予測画像を生成する。例えば、上隣接ブロックに対しては図３の予測モードａの画面内予測画像を生成、左隣接ブロックに対しては図３の予測モードｂの画面内予測画像を生成、下隣接ブロックに対しては図３の予測モード０の画面内予測画像を生成、右隣接ブロックに対しては図３の予測モード１の画面内予測画像を生成する。次に、生成した上下左右各隣接ブロックの画面内予測画像と各隣接ブロックの差分絶対値和を演算し、最小値をとる隣接ブロックを選択する。最小値をとる隣接ブロックの位置を次の符号化対象ブロックとして入力ブロック制御部３に出力する。
【００３７】
減算器７では最初の符号化対象ブロックの原画とその画面内予測画像の差分値を演算して周波数変換量子化部８に出力する。周波数変換量子化部８で最初の符号化対象ブロックの量子化後周波数変換係数を得てエントロピー符号化部１３は符号化制御部２から得た位置情報も含む情報を元に符号化し、ストリームとして動画像符号化装置から出力する。
【００３８】
さらに加算器１０は、量子化後周波数変換係数に対して逆量子化逆周波数変換部９で逆量子化、逆周波数変換した係数と、画面内予測画生成部１１から最初の符号化ブロック対象の予測画を入力し加算することで局部復号画像を出力する。局部復号画像メモリ１２は、加算器１０から出力された最初の符号化対象ブロックの局部復号画像を蓄積する。
以上が期間１の動作であり、最初の符号化対象ブロックの位置情報を含む符号化ストリームを出力し、局部復号画像を得て、次にどの隣接ブロックを符号化するかを決定した。
【００３９】
続く期間についての説明をする。
次に続く期間では、入力ブロック制御部３は、期間１で決定した期間２で符号化するブロックの位置情報、符号化済ブロック記憶部４から符号化済ブロックの位置情報を元に該当ブロックと、このブロックに隣接するブロックで符号化済でないブロックを読み出し、符号化済ブロック記憶部４より入力した位置情報を元に生成した入力ブロックの周辺画素符号化済ブロック有無情報と期間２の符号化対象ブロックを画面内予測モード決定部６へ、期間２の符号化対象ブロックと隣接ブロックのうち符号化済でないブロックを相関演算部５へ、期間２の符号化対象ブロックを減算器７へ出力する。また、期間２の符号化対象ブロックを符号化済ブロックとして符号化済ブロック記憶部４に出力し、符号化済ブロック記憶部４はそのブロック位置を記憶する。
【００４０】
画面内予測モード決定部６は、周辺画素符号化済みブロック有無情報を元に期間２の符号化対象ブロックに対して使用可能な図３の予測モード１から８、ａからｈの予測モードの画面内予測画像を原画像から生成し、符号化対象ブロックの原画像との間で差分絶対値和演算をして、最小値をとるものを予測モードとして決定し、その予測モードを画面内予測画生成部１１へ出力する。画面内予測画生成部１１は局部復号画像メモリ１２から期間２の符号化対象ブロックの周辺局部復号画像を読み出し、画面内予測モード決定部６で決定した図３の予測モード１から８、ａからｈの予測モードの画面内予測画像を生成し、減算器７および加算器１０へ出力する。
【００４１】
相関演算部５は、期間２の符号化対象ブロックおよび次の符号化ブロック候補である隣接ブロックの原画像を入力する。先ず原画像の期間２の符号化対象ブロック画素から隣接ブロックの生成可能な予測画像を生成する。次に、生成した各隣接ブロックの画面内予測画像と各隣接ブロックの差分絶対値和を演算し、最小値をとる隣接ブロックを選択する。最小値をとる隣接ブロックの位置を次の符号化対象ブロックとして入力ブロック制御部３に出力する。
減算器７では、期間２の符号化対象ブロックの原画像とその画面内予測画像の差分値を演算し周波数変換量子化部８に出力する。周波数変換量子化部８で期間２の符号化対象ブロックの量子化後周波数変換係数を得てエントロピー符号化部１３は、符号化制御部２から得た位置情報も含む情報を元に符号化し、ストリームとして動画像符号化装置から出力する。
さらに加算器１０は、量子化後周波数変換係数に対して逆量子化逆周波数変換部９で逆量子化、逆周波数変換した係数と、画面内予測画生成部１１から期間２の符号化ブロック対象の予測画を入力し加算することで期間２の符号化対象ブロックの局部復号画像を出力する。局部復号画像メモリ１２は、加算器１０から出力された期間２の符号化対象ブロックの局部復号画像を蓄積する。
【００４２】
以上が期間２の動作であり、期間２の符号化対象ブロックの位置情報を含む符号化ストリームを出力し、局部復号画像を得て、次にどの隣接ブロックを符号化するかを決定した。
次以降に続く期間についても同様に動作し、この動作をフレーム内のブロック数の全てを処理するまで繰り返す。なお、隣接するブロックが全て符号化済ブロックの場合は一番座標位置の近いブロックを次ブロックとして選択する。
【００４３】
以上説明したように、実施の形態１の動画像符号化装置によれば、動画像をフレーム単位で保持するフレームメモリと、フレームメモリから符号化対象ブロックと、符号化対象ブロックの周辺ブロックの画像を読み出して出力する入力ブロック制御部と、符号化対象ブロックと周辺ブロックの原画像とを入力し、符号化対象ブロックに基づく周辺ブロックの画面内予測画像と、周辺ブロックの原画像との相関が最も高いブロックを次の符号化対象ブロックとして出力する相関演算部と、符号化対象ブロックに対する画面内予測モードを決定する画面内予測モード決定部と、画面内予測モード決定部で決定された画面内予測モードで、局部復号画像を用いて符号化対象ブロックの予測画像を生成する画面内予測画生成部と、符号化対象ブロックと、画面内予測画生成部から出力された予測画像との差分を出力する減算器と、減算器の出力を周波数変換および量子化する周波数変換量子化部と、周波数変換量子化部の出力をエントロピー符号化し、符号化信号として出力するエントロピー符号化部と、周波数変換量子化部の出力を逆量子化および逆周波数変換する逆量子化逆周波数変換部と、逆量子化逆周波数変換部の出力と、画面内予測画生成部で生成された予測画像とを加算する加算器と、加算器から出力された信号を局部復号画像として保持する局部復号画像メモリとを備え、相関演算部から出力される次の符号化対象ブロックを入力ブロック制御部が次に出力する符号化対象ブロックとするようにしたので、符号化画質を向上することができると共に、符号化効率を向上させることができる。また、相関演算部は、符号化対象ブロックの原画像を用いて周辺ブロックの画面内予測画像を生成しているため、演算時間や演算量を抑えながら次の符号化対象ブロックを求めることができる。
【００４４】
また、実施の形態１の動画像符号化装置によれば、フレーム内でどの位置のブロックを符号化したかを記憶する符号化済ブロック記憶部を備え、入力ブロック制御部は、符号化対象ブロックの情報を出力した場合は、符号化対象ブロックを符号化済ブロックとしてその位置を符号化済ブロック記憶部に記憶させると共に、相関演算部に対して、符号化対象ブロックの情報と共に、符号化済ブロック記憶部に記憶されている符号化済ブロックの位置の情報を出力し、相関演算部は、符号化済ブロックを除いて相関を演算するようにしたので、相関演算部における演算量を削減することができ、さらに符号化効率を向上させることができる。
【００４５】
また、実施の形態１の動画像符号化装置によれば、画面内予測モード決定部は、入力ブロック制御部から入力した符号化済ブロックの位置の情報に基づいて、符号化対象ブロックに対して３６０度からなる画面内予測モードの中から使用可能な予測モードの画面内予測画像を符号化対象ブロックの周辺画素から生成して、符号化対象ブロックの原画像との間で差分絶対値和演算を行い、最小値をとるものを予測モードとして選択するようにしたので、画面内予測モード決定部における演算量を削減することができ、さらに符号化効率を向上させることができる。
【００４６】
また、実施の形態１の動画像符号化装置によれば、画面内予測画生成部は、局部復号画像メモリから符号化対象ブロックの周辺画素を読み出し、画面内予測モード決定部で決定した最適な画面内予測モードの画面内予測画像を生成するようにしたので、精度の高い画面内予測画像を生成することができる。
【００４７】
実施の形態２．
図６はこの発明の実施の形態２の動画像符号化装置を示す構成図である。
実施の形態２の動画像符号化装置は、フレームメモリ１、符号化制御部２、入力ブロック制御部３、符号化済ブロック記憶部４、相関演算部５ａ、画面内予測モード決定部６、減算器７、周波数変換量子化部８、逆量子化逆周波数変換部９、加算器１０、画面内予測画生成部１１、局部復号画像メモリ１２、エントロピー符号化部１３からなり、基本的な構成は実施の形態１と同様であるが、相関演算部５ａの構成が異なっている。
【００４８】
実施の形態２における相関演算部５ａは、局部復号画像メモリ１２から符号化対象ブロックの局部復号画像を入力すると共に、入力ブロック制御部３から次の符号化対象候補となる符号化対象ブロックの周辺ブロックの原画像を入力し、符号化対象ブロックの局部復号画像に基づく各周辺ブロックの予測画像と各周辺ブロックの原画像との相関を演算、比較し、相関が最も高い周辺ブロックを次の符号化対象ブロックとして入力ブロック制御部３と画面内予測モード決定部６とに出力する回路である。その他の構成は、実施の形態１と同様であるため、ここでの説明は省略する。
【００４９】
次に、実施の形態２の動画像符号化装置の動作について説明する。
図７に実施の形態２の動画像符号化装置のタイミングチャートの概略を示す。以下の説明は図７に沿うものである。
動画像符号化装置に入力する動画像はフレームメモリ１にフレーム単位で保持する。
先ず期間１について説明する。
入力ブロック制御部３は、符号化制御部２指示の最初の符号化対象ブロックと次の符号化対象候補となる符号化対象ブロックの周辺の上下左右４ブロックをフレームメモリ１から読み出し、符号化済ブロック記憶部４より入力した位置情報を元に生成した入力ブロックの周辺画素符号化済ブロック有無情報と最初の符号化対象ブロックを画面内予測モード決定部６へ、最初の符号化対象ブロックと次の符号化対象ブロックとなる上下左右の４ブロックを相関演算部５ａへ、最初の符号化対象ブロックを減算器７へ出力する。
また、最初の符号化対象ブロックを符号化済として符号化済ブロック記憶部４に出力し、符号化済ブロック記憶部４はそのブロック位置を記憶する。
【００５０】
画面内予測モード決定部６は、最初に符号化するブロックでは周辺に符号化済ブロックは存在せず再生画像がないことから周辺画素が存在せずとも予測画像を生成することが出来る予測モード２のＤＣ予測モードに決定し、予測モードを画面内予測画生成部１１へ出力する。画面内予測画生成部１１は、画面内予測モード決定部６で決定した予測モード２の最初の符号化対象ブロックの画面内予測画像を生成し、減算器７および加算器１０へ出力する。
【００５１】
相関演算部５ａは、入力ブロック制御部３から次の符号化ブロック候補である隣接４ブロックの原画像、局部復号画像メモリ１２から符号化対象ブロックの局部復号画像を入力する。先ず局部復号画像の最初の符号化対象ブロック画素から隣接４ブロックの生成可能な予測画像を生成する。例えば、上隣接ブロックに対しては図３の予測モードａの画面内予測画像を生成、左隣接ブロックに対しては図３の予測モードｂの画面内予測画を生成、下隣接ブロックに対しては図３の予測モード０の画面内予測画像を生成、右隣接ブロックに対しては図３の予測モード１の画面内予測画像を生成する。次に、生成した上下左右各隣接ブロックの画面内予測画像と各隣接ブロックの差分絶対値和を演算し、最小値をとる隣接ブロックを選択する。最小値をとる隣接ブロックの位置を次の符号化対象ブロックとして入力ブロック制御部３に出力する。
【００５２】
減算器７では最初の符号化対象ブロックの原画とその画面内予測画像の差分値を演算し周波数変換量子化部８に出力する。周波数変換量子化部８で最初の符号化対象ブロックの量子化後周波数変換係数を得てエントロピー符号化部１３は符号化制御部２から得た位置情報も含む情報を元に符号化し、ストリームとして動画像符号化装置から出力する。
さらに加算器１０は、量子化後周波数変換係数に対して逆量子化逆周波数変換部９で逆量子化、逆周波数変換した係数と、画面内予測画生成部１１から最初の符号化ブロック対象の予測画像を入力し加算することで局部復号画像を出力する。局部復号画像メモリ１２は加算器１０から出力された最初の符号化対象ブロックの局部復号画像を蓄積する。
以上が期間１の動作であり、最初の符号化対象ブロックの位置情報を含む符号化ストリームを出力し、局部復号画像を得て、次にどの隣接ブロックを符号化するかを決定した。
【００５３】
続く期間についての説明をする。
次に続く期間では、入力ブロック制御部３は、期間１で決定した期間２で符号化するブロックの位置情報、符号化済ブロック記憶部４から符号化済ブロックの位置情報を元に該当ブロックと、このブロックに隣接するブロックで符号化済でないブロックを読み出し、符号化済ブロック記憶部４より入力した位置情報を元に生成した入力ブロックの周辺画素符号化済ブロック有無情報と期間２の符号化対象ブロックを画面内予測モード決定部６へ、期間２の符号化対象ブロックと隣接ブロックのうち符号化済でないブロックを相関演算部５ａへ、期間２の符号化対象ブロックを減算器７へ出力する。また、期間２の符号化対象ブロックを符号化済ブロックとして符号化済ブロック記憶部４に出力し、符号化済ブロック記憶部４はそのブロック位置を記憶する。
【００５４】
画面内予測モード決定部６は、周辺画素符号化済みブロック有無情報を元に期間２の符号化対象ブロックに対して使用可能な図３の予測モード１から８、ａからｈの予測モードの画面内予測画像を原画像から生成し、符号化対象ブロックの原画像との間で差分絶対値和演算をして、最小値をとるものを予測モードとして決定し、その予測モードを画面内予測画生成部１１へ出力する。画面内予測画生成部１１は、局部復号画像メモリ１２から期間２の符号化対象ブロックの周辺局部復号画像を読み出し、画面内予測モード決定部６で決定した図３の予測モード１から８、ａからｈの予測モードの画面内予測画像を生成し、減算器７および加算器１０へ出力する。
【００５５】
相関演算部５ａは、期間２の符号化対象ブロックの局部復号画像と次の符号化ブロック候補である隣接ブロックの原画を入力する。先ず局部復号画像の期間２の符号化対象ブロック画素から隣接ブロックの生成可能な予測画を生成する。次に、生成した各隣接ブロックの画面内予測画像と各隣接ブロックの差分絶対値和を演算し、最小値をとる隣接ブロックを選択する。最小値をとる隣接ブロックの位置を次の符号化対象ブロックとして入力ブロック制御部３に出力する。
【００５６】
減算器７では期間２の符号化対象ブロックの原画とその画面内予測画像の差分値を演算して周波数変換量子化部８に出力する。周波数変換量子化部８で期間２の符号化対象ブロックの量子化後周波数変換係数を得てエントロピー符号化部１３は符号化制御部２から得た位置情報も含む情報を元に符号化し、ストリームとして動画像符号化装置から出力する。
さらに加算器１０は、量子化後周波数変換係数に対して逆量子化逆周波数変換部９で逆量子化、逆周波数変換した係数と、画面内予測画生成部１１から期間２の符号化ブロック対象の予測画を入力し加算することで期間２の符号化対象ブロックの局部復号画像を出力する。局部復号画像メモリ１２は、加算器１０から出力された期間２の符号化対象ブロックの局部復号画像を蓄積する。
【００５７】
以上が期間２の動作であり、期間２の符号化対象ブロックの位置情報を含む符号化ストリームを出力し、局部復号画像を得て、次にどの隣接ブロックを符号化するかを決定した。
次以降に続く期間についても同様に動作し、この動作をフレーム内のブロック数の全てを処理するまで繰り返す。なお、隣接するブロックが全て符号化済ブロックの場合は一番座標位置の近いブロックを次ブロックとして選択する。
【００５８】
以上説明したように、実施の形態２の動画像符号化装置によれば、動画像をフレーム単位で保持するフレームメモリと、フレームメモリから符号化対象ブロックと、符号化対象ブロックの周辺ブロックの画像を読み出して出力する入力ブロック制御部と、符号化対象ブロックの局部復号画像と周辺ブロックの原画像を入力し、符号化対象ブロックの局部復号画像に基づく周辺ブロックの画面内予測画像と、周辺ブロックの原画像との相関が最も高いブロックを次の符号化対象ブロックとして出力する相関演算部と、符号化対象ブロックに対する画面内予測モードを決定する画面内予測モード決定部と、画面内予測モード決定部で決定された画面内予測モードで、局部復号画像を用いて符号化対象ブロックの予測画像を生成する画面内予測画生成部と、符号化対象ブロックと、画面内予測画生成部から出力された予測画像との差分を出力する減算器と、減算器の出力を周波数変換および量子化する周波数変換量子化部と、周波数変換量子化部の出力をエントロピー符号化し、符号化信号として出力するエントロピー符号化部と、周波数変換量子化部の出力を逆量子化および逆周波数変換する逆量子化逆周波数変換部と、逆量子化逆周波数変換部の出力と、画面内予測画生成部で生成された予測画像とを加算する加算器と、加算器から出力された信号を局部復号画像として保持する局部復号画像メモリとを備え、相関演算部から出力される次の符号化対象ブロックを入力ブロック制御部が次に出力する符号化対象ブロックとするようにしたので、符号化画質を向上することができると共に、符号化効率を向上させることができる。また、相関演算部は、符号化対象ブロックの局部復号画像を用いて周辺ブロックの画面内予測画像を生成しているため、より相関の高い画像を次の符号化対象ブロックとして選択でき、精度の高い予測を行うことができる。
なお、本願発明はその発明の範囲内において、各実施の形態の自由な組み合わせ、あるいは各実施の形態の任意の構成要素の変形、もしくは各実施の形態において任意の構成要素の省略が可能である。
【符号の説明】
【００５９】
１  フレームメモリ、２  符号化制御部、３  入力ブロック制御部、４  符号化済ブロック記憶部、５，５ａ  相関演算部、６  画面内予測モード決定部、７  減算器、８  周波数変換量子化部、９  逆量子化逆周波数変換部、１０  加算器、１１  画面内予測画生成部、１２  局部復号画像メモリ、１３  エントロピー符号化部。
【図１】
0005645589.tif 000005
【図２】
0005645589.tif 000006
【図３】
0005645589.tif 000007
【図４】
0005645589.tif 000008
【図５】
0005645589.tif 000009
【図６】
0005645589.tif 000010
【図７】
0005645589.tif 000011