JP2013179554A - 画像符号化装置、画像復号装置、画像符号化方法、画像復号方法およびプログラム - Google Patents
画像符号化装置、画像復号装置、画像符号化方法、画像復号方法およびプログラム Download PDFInfo
- Publication number
- JP2013179554A JP2013179554A JP2012080006A JP2012080006A JP2013179554A JP 2013179554 A JP2013179554 A JP 2013179554A JP 2012080006 A JP2012080006 A JP 2012080006A JP 2012080006 A JP2012080006 A JP 2012080006A JP 2013179554 A JP2013179554 A JP 2013179554A
- Authority
- JP
- Japan
- Prior art keywords
- image
- unit
- prediction
- encoding
- viewpoint
- 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.)
- Pending
Links
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
【課題】視差補償予測符号化する際に、精度の優れた予測ベクトルを得ることが出来る画像符号化装置を提供すること。
【解決手段】複数の視点画像を符号化する画像符号化装置であって、複数の視点画像のうちの第1の視点画像に対応する奥行き画像に基づいて、第1の視点画像と、複数の視点画像のうちの第1の視点画像とは異なる第2の視点画像との間の視差情報を生成する視差情報生成部と、第1の視点画像に含まれる符号化対象ブロック及び該符号化対象ブロックの隣接ブロックのうち、少なくとも一つに対応する視差情報に基づいて、符号化対象ブロックの予測ベクトルを生成し、該予測ベクトルを用いて、符号化対象ブロックの視点間予測符号化方式による符号化を行う画像符号化部とを備えることを特徴とする。
【選択図】図1
【解決手段】複数の視点画像を符号化する画像符号化装置であって、複数の視点画像のうちの第1の視点画像に対応する奥行き画像に基づいて、第1の視点画像と、複数の視点画像のうちの第1の視点画像とは異なる第2の視点画像との間の視差情報を生成する視差情報生成部と、第1の視点画像に含まれる符号化対象ブロック及び該符号化対象ブロックの隣接ブロックのうち、少なくとも一つに対応する視差情報に基づいて、符号化対象ブロックの予測ベクトルを生成し、該予測ベクトルを用いて、符号化対象ブロックの視点間予測符号化方式による符号化を行う画像符号化部とを備えることを特徴とする。
【選択図】図1
Description
本発明は、画像符号化装置、画像復号装置、画像符号化方法、画像復号方法およびプログラムに関する。
従来の動画像符号化方式としてMPEG(Moving Picture Experts Group)−2、MPEG−4、MPEG−4 AVC(Advanced Video Coding)/H.264方式などがある。これらの動画像符号化方式では、動き補償フレーム間予測符号化という動画像の時間方向の相関性を利用し符号量の削減を図る符号化方式を採用している。動き補償フレーム間予測符号化では、符号化対象の画像をブロック単位に分割し、ブロック毎に動きベクトルを求める。そして、この動きベクトルにより示される参照画像のブロックの画素値を予測に用いることで、効率的な符号化を実現している。
さらに、非特許文献1にあるように、MPEG−4やH.264/AVC規格では、この動きベクトルの圧縮率を向上させるために、予測ベクトルを生成し、符号化対象ブロックの動きベクトルと予測ベクトルの差分を符号化している。仮に、予測ベクトルの予測精度が高ければ、動きベクトルを直接符号化するよりも、この差分値を符号化した方が、符号化効率が高くなる。具体的には、図16に示すように符号化対象ブロックの上に隣接しているブロック(図中の隣接ブロックA)と右上に隣接しているブロック(図中の隣接ブロックB)と、左に隣接しているブロック(図中の隣接ブロックC)の動きベクトル(mv_a、mv_b、mv_c)の水平成分及び垂直成分それぞれの中央値を予測ベクトルとしている。
また、近年、H.264規格にて、複数のカメラで同一の被写体や背景を撮影した複数の動画像である多視点動画像を符号化するための拡張規格であるMVC(Multiview Video Coding)が策定された。この符号化方式では、カメラ間の相関性を表す視差ベクトルを利用して符号量の削減を図る視差補償予測符号化を用いている。また、視差補償予測の結果として検出される視差ベクトルに対しても、上記動きベクトルにおける予測ベクトル生成方式と同様な方法で生成した予測ベクトルを利用することにより、符号量の削減が可能である。
但し、動き補償フレーム間予測符号化と視差補償予測符号化では、それぞれ時間方向の相関性とカメラ間の相関性を利用して符号化するため、検出される動きベクトルと視差ベクトル間に相関性は無い。そのため、隣接ブロックが符号化対象ブロックと異なる符号化方式で符号化された場合、その隣接ブロックの動きベクトル若しくは視差ベクトルを予測ベクトルの生成に活用できないという問題点がある。具体的な一例としては、符号化対象ブロックに隣接する3つの周辺ブロック(左、上、右上)のうち、左と上は動き補償フレーム間予測方式を用い、右上は視差補償予測方式を用いるというように、予測方式が混在する場合である。この状態で、動き補償フレーム間予測を行おうとすると、右上の隣接ブロックについて予測に利用できる動きベクトルが存在しない。或いは、視差補償予測を行おうとすると、左および上の隣接ブロックについて予測に利用できる視差ベクトルが存在しない。そして、従来の方式では、利用するベクトルが存在しない隣接ブロックはゼロベクトルで置き換えられるため、予測ベクトルの精度が低下する問題があった。上記例の他にも、隣接ブロックの符号化方式が符号化対象ブロックの予測方式と全て異なる場合にも同じ問題が発生する。
この問題に対し、特許文献1では隣接ブロックの符号化方式が符号化対象ブロックと異なる場合に、符号化対象ブロックの符号化方式が動き補償フレーム間予測符号化の時には、隣接ブロックの視差ベクトルが参照する領域に最も多く含まれるブロックの動きベクトルを予測ベクトル生成時に使用し、符号化対象ブロックの符号化方式が視差補償予測符号化の時には、隣接ブロックの動きベクトルが参照する領域に最も多く含まれるブロックの視差ベクトルを予測ベクトル生成時に使用することにより、予測ベクトルの生成精度を向上させている。
また、現在、MPEGのアドホックグループであるMPEG−3DVにおいてカメラで撮影した映像と合わせて奥行き画像も伝送する新しい規格が策定されている。
奥行き画像とはカメラから被写体までの距離を表した情報であり、生成方法としては例えば、カメラの近傍に設置された距離を測定する装置から取得する方法がある。また、複数視点のカメラから撮影された画像を解析することによって奥行き画像を生成することもできる。
奥行き画像とはカメラから被写体までの距離を表した情報であり、生成方法としては例えば、カメラの近傍に設置された距離を測定する装置から取得する方法がある。また、複数視点のカメラから撮影された画像を解析することによって奥行き画像を生成することもできる。
MPEG−3DVの新しい規格におけるシステムの全体図を図40に示す。この新しい規格は、2視点以上の複数視点に対応しているが、図40では2視点の場合で説明する。このシステムでは、被写体901をカメラ902、904で撮影し画像を出力するとともに、それぞれのカメラの近傍に設置されている被写体までの距離を測定するセンサ903、905を用いて奥行き画像(デプスマップ)を生成し出力する。符号化器906は、入力として画像と奥行き画像を受け取り、動き補償フレーム間予測符号化や視差補償予測符号化を用いて、画像及び奥行き画像を符号化し出力する。復号器907はローカルな伝送ラインやネットワークNを介して伝送されてくる符号化器906の出力結果を入力として受け取り、復号し、復号画像及び復号した奥行き画像を出力する。表示部908は入力として復号画像と復号した奥行き画像を受け取り、復号画像を表示する、或いは、奥行き画像を用いた処理を復号画像に施してから表示する。
大久保榮 監修、角野眞也、菊池義浩、鈴木輝彦 共編、「H.264/AVC教科書」、改訂三版、インプレスR&D、2009年1月1日、PP123−125(動きベクトルの予測)
しかしながら、特許文献1に記載の方法にあっては、精度の良い予測ベクトルを生成することができないことがあるという問題がある。例えば、符号化対象ブロックを視差補償予測符号化する場合に、隣接ブロックの動きベクトルが参照する領域が必ずしも視差補償予測方式にはならないので、該隣接ブロックについて、予測ベクトルを生成するための視差ベクトルが得られないことがある。また、隣接ブロックの動きベクトルが参照するフレームは、符号化対象ブロックを含むフレームとは異なる時間であるために、カメラから被写体までの距離が変化していて、大きく異なる視差ベクトルが得られることがある。
本発明は、このような事情に鑑みてなされたもので、その目的は、視差補償予測符号化する際に、精度の優れた予測ベクトルを得ることが出来る画像符号化装置、画像復号装置、画像符号化方法、画像復号方法およびプログラムを提供することにある。
(1)この発明は上述した課題を解決するためになされたもので、本発明の一態様は、複数の視点画像を符号化する画像符号化装置であって、前記複数の視点画像のうちの第1の視点画像に対応する奥行き画像に基づいて、前記第1の視点画像と、前記複数の視点画像のうちの前記第1の視点画像とは異なる第2の視点画像との間の視差情報を生成する視差情報生成部と、前記第1の視点画像に含まれる符号化対象ブロック及び該符号化対象ブロックの隣接ブロックのうち、少なくとも一つに対応する前記視差情報に基づいて、前記符号化対象ブロックの予測ベクトルを生成し、該予測ベクトルを用いて、前記符号化対象ブロックの視点間予測符号化方式による符号化を行う画像符号化部とを備えることを特徴とする。
(2)また、本発明の他の態様は、上述の画像符号化装置であって、前記画像符号化部は、前記符号化対象ブロックの隣接ブロックのうち、符号化方式が前記視点間予測符号化方式ではないブロックに対応する前記視差情報に基づいて、前記予測ベクトルを生成することを特徴とする。
(3)また、本発明の他の態様は、上述の画像符号化装置であって、前記画像符号化部は、前記符号化対象ブロックの隣接ブロックのうち、符号化未済みのブロックに対応する前記視差情報に基づいて、前記予測ベクトルを生成することを特徴とする。
(4)また、本発明の他の態様は、上述の画像符号化装置であって、前記画像符号化部は、前記符号化対象ブロックにおける視差を示す情報あるいは前記隣接ブロックにおける視差を示す情報であって、前記視差情報を含む情報の中から選択した情報を用いて、前記予測ベクトルを生成し、該選択した情報に対応するブロックを示す情報を符号化することを特徴とする。
(5)また、本発明の他の態様は、上述のいずれかの画像符号化装置であって、前記視差情報生成部は、前記複数の視点画像を撮影する際のカメラ設定と被写体との位置関係を示す撮影条件情報に含まれる情報又は該情報から算出される情報である、カメラ間距離及び撮影距離に基づいて、前記奥行き画像が示す奥行き値から前記視差情報を生成することを特徴とする。
(6)また、本発明の他の態様は、上述のいずれかの画像符号化装置であって、前記視差情報生成部は、前記奥行き画像を分割したブロック毎の奥行き値の代表値に対応する視差情報を生成することを特徴とする。
(7)また、本発明の他の態様は、上述のいずれかの画像符号化装置であって、前記奥行き画像を符号化する奥行き画像符号化部を更に備えることを特徴とする。
(8)また、本発明の他の態様は、複数の視点画像を復号する画像復号装置であって、前記複数の視点画像のうちの第1の視点画像に対応する奥行き画像に基づいて、前記第1の視点画像と、前記複数の視点画像のうちの前記第1の視点画像とは異なる第2の視点画像との間の視差情報を生成する視差情報生成部と、前記第1の視点画像に含まれる符号化対象ブロック及び該符号化対象ブロックの隣接ブロックのうち、少なくとも一つに対応する前記視差情報に基づいて、前記符号化対象ブロックの予測ベクトルを生成し、該予測ベクトルを用いて、前記符号化対象ブロックの視点間予測復号方式による復号を行う画像復号部とを備えることを特徴とする。
(9)また、本発明の他の態様は、上述の画像復号装置であって、前記画像符号化部は、前記符号化対象ブロックの隣接ブロックのうち、符号化方式が前記視点間予測符号化方式ではないブロックに対応する前記視差情報に基づいて、前記予測ベクトルを生成することを特徴とする。
(10)また、本発明の他の態様は、上述の画像復号装置であって、前記画像符号化部は、前記符号化対象ブロックの隣接ブロックのうち、符号化未済みのブロックに対応する前記視差情報に基づいて、前記予測ベクトルを生成することを特徴とする。
(11)また、本発明の他の態様は、上述の画像復号装置であって、前記画像復号部は、外部から入力される、ブロックを示す情報を参照し、前記情報が示すブロックの視差を示す情報を用いて、前記予測ベクトルを生成することを特徴とする。
(12)また、本発明の他の態様は、上述のいずれかの画像復号装置であって、前記視差情報生成部は、前記複数の視点画像を撮影する際のカメラ設定と被写体との位置関係を示す撮影条件情報に含まれる情報又は該情報から算出される情報である、カメラ間距離及び撮影距離に基づいて、前記奥行き画像が示す奥行き値から前記視差情報を生成することを特徴とする。
(13)また、本発明の他の態様は、上述のいずれかの画像復号装置であって、前記視差情報生成部は、前記奥行き画像を分割したブロック毎の奥行き値の代表値に対応する視差情報を生成することを特徴とする。
(14)また、本発明の他の態様は、上述のいずれかの画像復号装置であって、前記奥行き画像は符号化されており、前記奥行き画像を復号する奥行き画像復号部を更に備えることを特徴とする。
(15)また、本発明の他の態様は、複数の視点画像を符号化する画像符号化方法であって、前記複数の視点画像のうちの第1の視点画像に対応する奥行き画像に基づいて、前記第1の視点画像と、前記複数の視点画像のうちの前記第1の視点画像とは異なる第2の視点画像との間の視差情報を生成するステップと、前記第1の視点画像に含まれる符号化対象ブロック及び該符号化対象ブロックの隣接ブロックのうち、少なくとも一つに対応する前記視差情報に基づいて、前記符号化対象ブロックの予測ベクトルを生成し、該予測ベクトルを用いて、前記符号化対象ブロックの視点間予測符号化方式による符号化を行うステップとを有することを特徴とする。
(16)また、本発明の他の態様は、複数の視点画像を復号する画像復号方法であって、前記複数の視点画像のうちの第1の視点画像に対応する奥行き画像に基づいて、前記第1の視点画像と、前記複数の視点画像のうちの前記第1の視点画像とは異なる第2の視点画像との間の視差情報を生成するステップと、前記第1の視点画像に含まれる符号化対象ブロック及び該符号化対象ブロックの隣接ブロックのうち、少なくとも一つに対応する前記視差情報に基づいて、前記符号化対象ブロックの予測ベクトルを生成し、該予測ベクトルを用いて、前記符号化対象ブロックの視点間予測復号方式による復号を行うステップとを有することを特徴とする。
(17)また、本発明の他の態様は、複数の視点画像を符号化する画像符号化装置のコンピュータに、前記複数の視点画像のうちの第1の視点画像に対応する奥行き画像に基づいて、前記第1の視点画像と、前記複数の視点画像のうちの前記第1の視点画像とは異なる第2の視点画像との間の視差情報を生成するステップと、前記第1の視点画像に含まれる符号化対象ブロック及び該符号化対象ブロックの隣接ブロックのうち、少なくとも一つに対応する前記視差情報に基づいて、前記符号化対象ブロックの予測ベクトルを生成し、該予測ベクトルを用いて、前記符号化対象ブロックの視点間予測符号化方式による符号化を行うステップとを実行させるためのプログラムである。
(18)また、本発明の他の態様は、複数の視点画像を復号する画像復号装置のコンピュータに、前記複数の視点画像のうちの第1の視点画像に対応する奥行き画像に基づいて、前記第1の視点画像と、前記複数の視点画像のうちの前記第1の視点画像とは異なる第2の視点画像との間の視差情報を生成するステップと、前記第1の視点画像に含まれる符号化対象ブロック及び該符号化対象ブロックの隣接ブロックのうち、少なくとも一つに対応する前記視差情報に基づいて、前記符号化対象ブロックの予測ベクトルを生成し、該予測ベクトルを用いて、前記符号化対象ブロックの視点間予測復号方式による復号を行うステップとを実行させるためのプログラムである。
この発明によれば、視差補償予測符号化する際に、精度の良い予測ベクトルを得ることが出来る。
異なる視点の画像の冗長性を考慮した画面間予測によって情報量を削減する動画像符号化方式(代表的な符号化例としてH.264/AVCの拡張であるMVCがある)では、隣接するブロックが符号化対象ブロックと同じ視差補償予測である場合に、その周辺ブロックの視差ベクトルを用いて予測ベクトルを生成している。以下の実施形態では、次世代の映像符号化方式であるMPEG−3DVと同様に、奥行き画像情報が、その入力情報として与えられる。そして、隣接するブロックに視差補償予測とは異なる予測方式が採用されている場合であっても、その奥行き画像情報より算出した視差情報、すなわち視差ベクトルを用いることで、視差補償予測符号化方式における予測ベクトルの予測精度を向上させている。
以下、図面を参照しながら本発明の実施の形態について説明する。図面において同じ部分については同じ符号を付し、繰り返しの説明は省略する。
(実施形態1)<符号化装置>
図1は、本発明の一実施形態である画像符号化装置の構成例を示す機能ブロック図である。
図1は、本発明の一実施形態である画像符号化装置の構成例を示す機能ブロック図である。
画像符号化装置100は、撮影条件情報符号化部101、奥行き画像符号化部103、視差情報生成部104、及び画像符号化部106を含んで構成される。なお、画像符号化部106の内部に記載したブロックは、画像符号化部106の動作を概念的に説明するために利用する。
以下、画像符号化装置100の機能及び動作について説明する。
画像符号化装置100の入力データは、基準視点の視点画像、非基準視点の視点画像、奥行き画像、及び撮影条件情報である。基準視点の視点画像は単一の視点による画像に限定されるが、非基準視点の視点画像は複数の視点による画像が複数入力されてもよい。また、奥行き画像は、画像符号化装置100に入力される視点画像のうちの1つに対応する1つの奥行き画像でもよいし、全ての視点画像に対応する複数の奥行き画像が入力されてもよい。ただし、後述する視差補償予測符号化(視点間予測符号化)を行う画像については、対応する奥行き画像が入力されている。1つの視点画像に対応する1つの奥行き画像を入力する場合、その1つの視点画像は基準視点の画像であっても非基準視点の画像であってもよい。なお、各視点画像、奥行き画像は、静止画像でも動画像でもよい。撮影条件情報は、奥行き画像に対応するものである。
画像符号化装置100の入力データは、基準視点の視点画像、非基準視点の視点画像、奥行き画像、及び撮影条件情報である。基準視点の視点画像は単一の視点による画像に限定されるが、非基準視点の視点画像は複数の視点による画像が複数入力されてもよい。また、奥行き画像は、画像符号化装置100に入力される視点画像のうちの1つに対応する1つの奥行き画像でもよいし、全ての視点画像に対応する複数の奥行き画像が入力されてもよい。ただし、後述する視差補償予測符号化(視点間予測符号化)を行う画像については、対応する奥行き画像が入力されている。1つの視点画像に対応する1つの奥行き画像を入力する場合、その1つの視点画像は基準視点の画像であっても非基準視点の画像であってもよい。なお、各視点画像、奥行き画像は、静止画像でも動画像でもよい。撮影条件情報は、奥行き画像に対応するものである。
基準視点符号化処理部102では、基準視点の視点画像を視点内予測符号化方式により圧縮符号化する。視点内予測符号化では、画面内予測や同一視点内で動き補償を行って、視点内の画像データのみに基づいて画像データを圧縮符号化する。同時に、後述する非基準視点の視点画像を符号化する際の参照用に、逆処理すなわち復号を行い、画像信号に復元しておく。
奥行き画像符号化部103は、奥行き画像を、例えば従来方式であるH.264方式で圧縮する。視点画像と合わせた複数視点の奥行き画像が、奥行き画像符号化部103に入力される場合には、前述のMVCを用いて圧縮符号化することも可能である。同時に、後述する視差情報の生成用に、逆処理すなわち復号を行い、奥行き画像信号に復元しておく。つまり、本実施形態における画像符号化装置100では、奥行き画像符号化部103で符号化された奥行き画像を復号する奥行き画像復号部を備える。なお、奥行き画像符号化部103が不可逆圧縮符号化(ロッシーな符号化)を行う場合、符号化を行う際に復号時に得られるデータを再現する必要があるため、この奥行き画像復号部は奥行き画像符号化部103の内部に設けられる。ここでは、内部に設けた場合を例に挙げ、画像復号部は図示していない。
本実施形態では、奥行き画像復号部を画像符号化装置100に具備した例を挙げている。しかし、奥行き画像は、通常の画像データに比べてデータ量が小さいため、生データを送ったりロスレスで符号化したりすることもある。そのような構成の場合、オリジナルデータを画像復号装置側が取得できることになり、符号化時に内部デコードする必要がなくなる。よって、画像符号化装置100に奥行き画像復号部を設けず、入力された奥行き画像を、そのまま視差情報生成部104に入力するようにしてもよい。さらに、画像符号化装置100から生データを画像復号装置に送る場合には、奥行き画像符号化部103を設けなくても、単に奥行き画像が取得可能な状態になっていれば画像復号装置に送信できる。このように、画像符号化装置100に、奥行き画像符号化部103及び奥行き画像復号部を設けない構成であってもよい。
視差情報生成部104は、復元された奥行き画像及び、外部より入力される撮影条件情報に基づいて、視点間予測符号化を行う視点画像とそれとは異なる視点画像(本実施形態では基準視点の視点画像)との間の視差情報を生成する。なお、ここで、復元された奥行き画像とは、符号化を行う視点画像(本実施形態では、非基準視点の視点画像)に対応する奥行き画像の復元されたものである。視差情報生成の詳細については後述する。
非基準視点符号化処理部105では、復元された基準視点画像と、視差情報生成部104により生成された視差情報とに基づいて、非基準視点の視点画像を視点間予測符号化方式(視差補償予測符号化方式)により圧縮符号化する。視点間予測符号化方式では、符号化対象画像とは異なる視点の画像を用いて視差補償を行い、画像データを圧縮符号化する。なお、非基準視点符号化処理部105では、視点内の画像データのみを用いた視点内予測符号化方式を、符号化効率に基づいて選択することもできる。
また、ここでは、非基準視点の視点画像のみを視点間予測符号化方式で符号化する例を挙げるが、基準視点の視点画像と非基準視点の視点画像の双方を視点間予測符号化方式で符号化するようにしてもよいし、双方の視点画像について、符号化効率に基づいて視点間予測符号化方式と視点内予測符号化方式とを切り替えてもよい。画像符号化装置100は、予測符号化方式を示す情報を画像復号装置側に送信することにより、画像復号装置側での復号が可能である。
撮影条件情報符号化部101は、当該画像符号化装置100に入力される複数の視点画像各々を撮影した際の条件である撮影条件情報を、所定の符号化方式で変換する符号化処理を行う。最終的に、基準視点画像、非基準視点画像、奥行き画像、撮影条件情報の各符号化データは、図示しない符号構成部により連結・並べ替えがなされ、符号化ストリームとして画像符号化装置100の外部(例えば、図11を参照して後述する画像復号装置700)へ出力される。
次に、視差情報生成部104の内部処理に関して、図2、図4から図6を参照して詳細に説明する。
図2は、視差情報生成部104の内部構成を示す機能ブロック図である。視差情報生成部104は、ブロック分割部201、代表奥行き値決定部202、視差算出部203、及び距離情報抽出部204より構成される。
図2は、視差情報生成部104の内部構成を示す機能ブロック図である。視差情報生成部104は、ブロック分割部201、代表奥行き値決定部202、視差算出部203、及び距離情報抽出部204より構成される。
ブロック分割部201は、入力される奥行き画像を所定のサイズ(例えば、16×16画素)に従うブロックに分割する。代表奥行き値決定部202は、分割されたブロック毎に奥行き値の代表値を決定する。具体的には、ブロック内の奥行き値の頻度分布(ヒストグラム)を作成し、最も出現頻度の高い奥行き値を抽出して代表値として決定する。
図4に、代表奥行き値の決定処理の概念図を示す。図4(B)で例示するように、図4(A)で例示する視点画像401に対応する奥行き画像402が与えられているとする。
奥行き画像は、輝度のみのモノクロ画像として表される。輝度が高い(=奥行き値が大きい)領域ほどカメラからの距離が近いことを意味し、輝度が低い(=奥行き値が小さい)領域ほどカメラからの距離が遠いことを意味する。この中の分割されたブロック403において、奥行き値が図4(C)で例示する頻度分布404のような頻度分布をとる場合、最も出現頻度の高い奥行き値405を、ブロック403の代表奥行き値として決定する。
奥行き画像は、輝度のみのモノクロ画像として表される。輝度が高い(=奥行き値が大きい)領域ほどカメラからの距離が近いことを意味し、輝度が低い(=奥行き値が小さい)領域ほどカメラからの距離が遠いことを意味する。この中の分割されたブロック403において、奥行き値が図4(C)で例示する頻度分布404のような頻度分布をとる場合、最も出現頻度の高い奥行き値405を、ブロック403の代表奥行き値として決定する。
なお、奥行き値の代表値を決定する際には、前述のようなヒストグラムに基づく方法の他に、以下の方法に従って決定してもよい。例えば、ブロック内奥行き値の(a)中間値;(b)出現頻度を考慮した平均値;(c)カメラからの距離が最も近い値(ブロック内奥行き値の最大値);(d)カメラからの距離が最も遠い値(ブロック内奥行き値の最小値);或いは(e)ブロックの中心位置の奥行き値を抽出して代表値として決定してもよい。どの方法を選択するかの基準は、例えば、一番効率の良いものを、符号化及び復号で共通の方式に固定する方法、それぞれの方法に基づいて得られた奥行き代表値を用いて視差予測をした際にもっとも予測誤差の小さい方法を適応的に選択するという方法がある。
後者の場合、選択した方法を上記符号化ストリームに付加し、画像復号装置側に与える必要がある。
後者の場合、選択した方法を上記符号化ストリームに付加し、画像復号装置側に与える必要がある。
また、奥行き画像を分割する際のブロックサイズは、前述の16×16サイズに限らず、8×8、4×4などのサイズでもよい。また、縦横の画素数が同数でなくともよく、例えば16×8、8×16、8×4、4×8などのサイズでもよい。これらのサイズは、後述の画像符号化部106が採用する符号化対象ブロックのブロックサイズに合わせる方法がある。或いは奥行き画像や対応する視点画像に含まれる被写体の大きさや、要求される圧縮率などに応じて最適なサイズを選択する方法なども可能である。
図2に戻って、視差算出部203は、上記奥行き値の代表値と、距離情報抽出部204が撮影条件情報から抽出した情報(例えば、カメラ間隔及び撮影距離を示す情報、画素ピッチ)に基づいて、各ブロックについて動き/視差ベクトル検出部314にて検出された視差ベクトルが示す視点画像に対する視差ベクトル(視差情報)を算出する。なお、動き/視差ベクトル検出部314が視差ベクトルを検出する際に、後述するフレームメモリ312から参照する視点画像、すなわち視差ベクトルが示す視点画像は、本実施形態では、符号化対象のフレーム1つに対して1つである。符号化対象の各フレームに対して、いずれの視点画像を参照するかは、どのような方法で決定してもよい。本実施形態では、常に基準視点画像を参照するが、例えば、符号化済みの視点画像の中から、撮影条件情報に基づき視点が最も近い視点画像を選択してもよいし、焦点距離、カメラの向きなど、その他の条件に基づき選択してもよい。
奥行き画像に含まれる奥行き値は、カメラから被写体までの距離そのものではなく、撮影した画像に含まれる距離レンジを所定の数値範囲(例えば0〜255)で表したものである。そこで、視差算出部203が視差ベクトルを算出する際には、撮影条件情報に含まれる撮影時の距離レンジを表す情報(例えば、画像に含まれる被写体に関するカメラからの距離の最小値(最近値)Znearと最大値(最遠値)Zfarで構成される)に基づいて、次式にて奥行き値depthを実際の距離である画像距離Zに変換し、撮影距離やカメラ間隔などの実距離を示す数値と次元(単位)を合わせる。
Z = 1/((depth/255)×(1/Znear−1/Zfar)
+ 1/Zfar) (1)
そして、視差算出部203は、dを視差値、lを撮影距離、Lをカメラ間隔、Zを画像距離(代表値)として、次式にて視差値dを算出する。
d =(l−Z)/Z × L =( l/Z −1)× L (2)
Z = 1/((depth/255)×(1/Znear−1/Zfar)
+ 1/Zfar) (1)
そして、視差算出部203は、dを視差値、lを撮影距離、Lをカメラ間隔、Zを画像距離(代表値)として、次式にて視差値dを算出する。
d =(l−Z)/Z × L =( l/Z −1)× L (2)
さらに、視差算出部203は、距離情報抽出部204が撮影条件情報抽出した画素ピッチに基づき、各ブロックについて、視差値dから視差ベクトルを算出する。なお、撮影条件情報を用いた奥行き値から視差ベクトルへの変換は、公知であるので、ここでは詳細な説明を省略する。
距離情報抽出部204は、撮影条件情報の中から、奥行き値から視差ベクトルへの変換に必要な情報(例えば、カメラ間距離(L)と撮影距離(l)に相当する情報)を抽出し、視差算出部203へ伝送する。なお、撮影条件情報に含まれるカメラの情報(一般的にはカメラパラメータと言う)としては、内部パラメータ(焦点距離、横方向スケールファクタ、縦方向スケールファクタ、画像中心座標、歪み係数)、外部パラメータ(回転行列、併進行列)、及び上記カメラパラメータ以外の情報(最近値と最遠値)がある。なお、カメラ間距離(L)はカメラパラメータには直接は含まれないが、距離情報抽出部204は、上記の併進行列を用いてカメラ間距離を算出する。また、上記最近値及び最遠値は、上述した、奥行き画像を実際の距離の値に変換する処理で用いられる。
ここで、数式(2)と各パラメータの意味を説明する。図5は、奥行き値と視差値との関係を示す概念図である。視点すなわちカメラ501、502と、被写体503、504とが、図のような位置関係にある場合を想定する。この時、各被写体上の正面の点505、506は、撮影距離lにおける平面507上の、pl1、pr1及びpl2、pr2の位置に投影される。平面507が観察時のスクリーン面に相当するとみなすと、pl1とpr1は、被写体の点505に関する左視点画像上と右視点画像上の画素の対応点を意味し、同様にpl2とpr2は、被写体の点506に関する各視点画像上の画素の対応点を意味する。
そして、2つのカメラ間距離をL、カメラの撮影距離をl、各被写体の正面の点505、506までの距離をZ1、Z2とすると、各被写体に対応する両視点画像間の視差d1,d2と、上記各パラメータとの間には、以下の数式(3)、(4)の関係が成り立つ。
ここで、距離Z1、Z2は、数式(2)のZと同様に、カメラからの実距離であって、奥行き画像における奥行き値そのものではない。
ここで、距離Z1、Z2は、数式(2)のZと同様に、カメラからの実距離であって、奥行き画像における奥行き値そのものではない。
L : Z1 = d1 : ( l−Z1 ) ・・・(3)
L : Z2 = d2 : ( Z2−l ) ・・・(4)
L : Z2 = d2 : ( Z2−l ) ・・・(4)
そして、視差値dを、右視点画像の対応点に対する左視点画像の対応点の位置として定義すると、前述の数式(2)の式でdを得ることができる。最終的に、視差算出部203が出力する視差情報は、右視点画像の対応点と左視点画像の対応点に基づくベクトルを算出して、それを利用する。
なお、上述のカメラの撮影距離lは、平行法撮影の場合、すなわち2つのカメラの光軸が平行の場合には、図6(A)に示すように撮影時にピントを合わせた距離(焦点距離)をlに相当するとみなし、交差法撮影の場合、すなわち2つのカメラの光軸が前方で交差する場合には、図6(B)に示すようにカメラから交差点(クロスポイント)までの距離をlに相当するとみなしてよい。
なお、視点画像によって、上述のスクリーン面における原点や解像度が異なる場合には、視差算出部203は、視差ベクトルを算出する際に、上述の回転行列、焦点距離などを用いるようにしてもよい。
なお、視点画像によって、上述のスクリーン面における原点や解像度が異なる場合には、視差算出部203は、視差ベクトルを算出する際に、上述の回転行列、焦点距離などを用いるようにしてもよい。
続いて、画像符号化部106について図3を用いて説明する。図3は、画像符号化部106の機能構成を示す概略ブロック図である。
画像符号化部106は、画像入力部301、減算部302、直交変換部303、量子化部304、エントロピー符号化部305、逆量子化部306、逆直交変換部307、加算部308、予測方式制御部309、選択部310、デブロッキング・フィルタ部311、フレームメモリ(フレームメモリ部)312、動き/視差補償部313、動き/視差ベクトル検出部314、イントラ予測部315、及び視差入力部316を含んで構成される。
なお、説明のために、画面内予測部317と画面間予測部318を点線で図示する。画面内予測部317はイントラ予測部315を含み、画面間予測部318はデブロッキング・フィルタ部311、フレームメモリ312、動き/視差補償部313、及び動き/視差ベクトル検出部314を含む。
なお、説明のために、画面内予測部317と画面間予測部318を点線で図示する。画面内予測部317はイントラ予測部315を含み、画面間予測部318はデブロッキング・フィルタ部311、フレームメモリ312、動き/視差補償部313、及び動き/視差ベクトル検出部314を含む。
図3は、画像符号化部106の構成を示す概略ブロック図である。図1において画像符号化部106の動作を説明した際には、基準視点の符号化とそれ以外の非基準視点の符号化を明示的に分けて、基準視点符号化処理部102の処理と非基準視点符号化処理部105の処理としたが、これらにはお互いに共通する処理が多いため、以下では基準視点符号化処理と非基準視点符号化処理を統合した形態について説明を行う。図3において、画像符号化部106は、画像入力部301、減算部302、直交変換部303、量子化部304、エントロピー符号化部305、逆量子化部306、逆直交変換部307、加算部308、予測方式制御部309、選択部310、視差入力部316、画面内予測部317、画面間予測部318を含んで構成される。画面内予測部317は、イントラ予測部315を含んで構成される。画面間予測部318は、デブロッキング・フィルタ部311、フレームメモリ312、動き/視差補償部313、動き/視差ベクトル検出部314を含んで構成される。
ここでは、前述の基準視点符号化処理部102として行う視点内予測符号化方式は、画像符号化部106のうち、図3の画面内予測部317で実施される処理と画面間予測部318で実施される処理の一部である同一視点の画像を参照する処理(動き補償)を組み合わせたものである。また、非基準視点符号化処理部105で行う視点間予測符号化方式は、画面内予測部317で実施される処理と画面間予測部318で実施される同一視点の画像を参照する処理(動き補償)及び異なる視点の画像を参照する処理(視差補償)を組み合わせたものである。
さらに、画面間予測部318で実施される符号化対象の視点と同一視点の画像を参照する処理(動き補償)と異なる視点の画像を参照する処理(視差補償)についても、符号化時に参照する画像が異なるだけで、参照画像を指し示すID情報(参照視点番号、参照フレーム番号)を用いることで処理を共通化することが可能である。ただし、動き/視差補償部313は、視差補償の場合は、動き補償の場合と異なり、動き/視差ベクトル検出部314が検出した視差ベクトルに加えて、視差入力部316が視差情報生成部104から取得した視差情報(各ブロックの視差ベクトル)を予測ベクトル生成の際に用いる。また、各予測部で予測した画像と入力した視点画像の残差成分を符号化する方法も、基準視点であっても非基準視点であっても共通に行える。詳細は後述する。
画像入力部301は、画像符号化部106の外部から入力される符号化対象となる視点画像(基準視点画像、或いは非基準視点画像)を示す画像信号を、予め定めた大きさ(例えば、垂直方向16画素×水平方向16画素)のブロックに分割する。
画像入力部301は、分割した画像ブロック信号を、減算部302、画面内予測部317の中にあるイントラ予測部315及び画面間予測部318の内部にある動き/視差ベクトル検出部314に出力する。画面内予測部317は、符号化処理ブロックより前に処理の完了した同一画面内の情報のみを用いて符号化を行う処理部で内容については後述する。一方、画面間予測部318は、符号化対象画像とは異なる、過去に処理した同一視点の視点画像、或いは異なる視点の視点画像の情報を用いて符号化を行う処理部で、内容は後述する。画像入力部301は、ブロック位置を順次変えながら、画像フレーム内の全てのブロックが完了し、そして入力される画像が全て終了するまで繰り返して出力する。
なお、画像入力部301が、画像信号を分割する際のブロックサイズは、前述の16×16サイズに限らず、8×8、4×4などのサイズでもよい。また、縦横の画素数が同数でなくともよく、例えば16×8、8×16、8×4、4×8などのサイズでもよい。これらのサイズの例は、H.264、MVCなどの従来方式で用いられた符号化ブロックサイズである。後述する符号化手順に従って、全ブロックサイズの符号化を一通り実施し、最終的に効率の良いものを選択する。なお、ブロックサイズについては上記サイズに限定するものではない。
減算部302は、画像入力部301から入力した画像ブロック信号から選択部310から入力した予測画像ブロック信号を減算して、差分画像ブロック信号を生成する。減算部302は、生成した差分画像ブロック信号を直交変換部303に出力する。
直交変換部303は、減算部302から入力した差分画像ブロック信号を直交変換し、種々の周波数特性の強度を示す信号を生成する。直交変換部303は、差分画像ブロック信号を直交変換する際に、その差分画像ブロック信号を、例えばDCT変換(離散コサイン変換;Discrete Cosine Transform)して周波数領域信号(例えば、DCT変換を行った場合は、DCT係数)を生成する。直交変換部303は、差分画像ブロック信号に基づき周波数領域信号を生成することができれば、DCT変換に限らず、他の方法(例えば、FFT(高速フーリエ変換;Fast Fourier Transform))を用いてもよい。直交変換部303は、生成した周波数領域信号に含まれる係数値を、量子化部304に出力する。
量子化部304は、直交変換部303より入力した周波数特性強度を示す係数値を所定の量子化係数にて量子化し、生成した量子化信号(差分画像ブロック符号)を、エントロピー符号化部305と逆量子化部306に出力する。なお、量子化係数は、外部より与えられる符号量を決めるためのパラメータで、逆量子化部306及びエントロピー符号化部305においても参照される。
逆量子化部306は、量子化部304から入力された差分画像符号を、上記量子化係数を用いて量子化部304で行った量子化と逆の処理(逆量子化)をして復号周波数領域信号を生成し、逆直交変換部307に出力する。
逆直交変換部307は、入力された復号周波数領域信号を直交変換部303とは逆の処理、例えば逆DCT変換して空間領域信号である復号差分画像ブロック信号を生成する。逆直交変換部307は、復号周波数領域信号に基づき空間領域信号を生成することができれば、逆DCT変換に限らず、他の方法(例えば、IFFT(高速フーリエ逆変換;Inverse Fast Fourier Transform))を用いてもよい。逆直交変換部307は、生成した復号差分画像ブロック信号を加算部308に出力する。
加算部308は、選択部310から予測画像ブロック信号と逆直交変換部307から復号差分画像ブロック信号を入力する。加算部308は、予測画像ブロック信号に復号差分画像ブロック信号を加算し、入力画像を符号化・復号した参照画像ブロック信号を生成する(内部デコード)。この参照画像ブロック信号は、画面内予測部317及び画面間予測部318に出力される。
画面内予測部317は、加算部308より参照画像ブロック信号と画像入力部301より符号化対象画像の画像ブロック信号を入力し、所定の方向に画面内予測した画面内予測画像ブロック信号を予測方式制御部309と選択部310に出力する。同時に、画面内予測部317は、画面内予測画像ブロック信号を生成するために必要な予測の方向を示す情報を、画面内予測符号化情報として予測方式制御部309に出力する。画面内予測は、従来方式(例えば、H.264 Reference Software JM ver. 13.2 Encoder, http://iphome.hhi.de/suehring/tml/, 2008)の画面内予測方式に従って実施される。
画面間予測部318は、加算部308より参照画像ブロック信号と画像入力部301より符号化対象画像の画像ブロック信号及び視差入力部316より視差情報を入力し、画面間予測により生成した画面間予測画像ブロック信号を予測方式制御部309と選択部310に出力する。同時に、画面間予測部318は、生成した画面間予測符号化情報を、予測方式制御部309に出力する。画面間予測部318については後述する。
視差入力部316は、前述の画像入力部301に入力される視点画像に対応する視差情報を、視差情報生成部104より入力する。入力される視差情報のブロックサイズは画像信号のブロックサイズと同じである。視差入力部316は、入力された視差情報を視差ベクトル信号として、動き/視差補償部313に出力する。
続いて、予測方式制御部309は、入力画像のピクチャの種類(符号化対象画像が予測画像に参照できる画像を識別するための情報で、Iピクチャ、Pピクチャ、Bピクチャなどがある。なお、ピクチャの種類は、量子化係数と同様に外部より与えられるパラメータによって決まるもので、従来方式のMVCと同じ方法を利用できる。)及び符号化効率に基づいて、画面内予測部317より入力される画面内予測画像ブロック信号とその画面内予測符号化情報、及び画面間予測部318より入力される画面間予測画像ブロック信号とその画面間符号化情報に基づいてブロック毎の予測方式が決められ、その予測方式の情報を選択部310に出力する。予測方式制御部309は、入力画像のピクチャの種類を監視し、入力された符号化対象画像が画面内の情報しか参照できないIピクチャの場合は画面内予測方式を確定的に選択する。符号化済みの過去のフレーム或いは異なる視点の画像を参照できるPピクチャや符号化済みの過去及び未来のフレーム(表示順番では未来のフレームではあるが、過去に処理されたフレームの意味)と異なる視点の画像を参照できるBピクチャの場合には、予測方式制御部309は、エントロピー符号化部305で行う符号化により生成されるビット数と減算部302の原画像との残差から、例えば従来の手法(例えば、H.264 Reference Software JM ver. 13.2 Encoder, http://iphome.hhi.de/suehring/tml/, 2008)を用いてラグランジュコストを算出し、画面内予測方式或いは画面間予測方式を決める。
同時に、予測方式制御部309は、画面内予測符号化情報若しくは画面間予測符号化情報のうち、上述の方法によって選択された予測方式に対応する符号化情報に、予測方式を特定できる情報を付加し予測符号化情報として、エントロピー符号化部305に出力する。
選択部310は、予測方式制御部309より入力される予測方式の情報に従って、画面内予測部317より入力される画面内予測画像ブロック信号、或いは画面間予測部318より入力される画面間予測画像ブロック信号を選択して、減算部302及び加算部308に予測画像ブロック信号を出力する。選択部310は、予測方式制御部309より入力される予測方式が画面内予測である場合には、画面内予測部317より入力される画面内予測画像ブロック信号を選択して出力し、予測方式制御部309より入力される予測方式が画面間予測である場合は、画面間予測部318より入力される画面間予測画像ブロック信号を選択して出力するものとする。
エントロピー符号化部305は、量子化部304より入力される差分画像符号と量子化係数、予測方式制御部309より入力される予測符号化情報をパッキング(packing;詰込)し、例えば可変長符号化(エントロピー符号化)を用いて符号化し、情報量がより圧縮された符号化データを生成する。エントロピー符号化部305は、生成した符号化データを画像符号化装置100の外部(例えば、画像復号装置700)に出力する。
画面間予測部318の詳細について説明する。
デブロッキング・フィルタ部311は、加算部308より参照画像ブロック信号を入力し、画像の符号化時に発生するブロック歪みを減少させるための、従来の手法(例えば、H.264 Reference Software JM ver. 13.2 Encoder, http://iphome.hhi.de/suehring/tml/, 2008)で用いられるFIRフィルタ処理を行う。デブロッキング・フィルタ部311は、処理結果(補正ブロック信号)をフレームメモリ312に出力する。
デブロッキング・フィルタ部311は、加算部308より参照画像ブロック信号を入力し、画像の符号化時に発生するブロック歪みを減少させるための、従来の手法(例えば、H.264 Reference Software JM ver. 13.2 Encoder, http://iphome.hhi.de/suehring/tml/, 2008)で用いられるFIRフィルタ処理を行う。デブロッキング・フィルタ部311は、処理結果(補正ブロック信号)をフレームメモリ312に出力する。
フレームメモリ312は、デブロッキング・フィルタ部311から補正ブロック信号を入力し、視点番号とフレーム番号を同定できる情報と共に画像の一部として補正ブロック信号を保持しておく。フレームメモリ312は、図示していないメモリ管理部によって、入力画像のピクチャの種類或いは画像の順番が管理され、その指示に従って画像を蓄えたり破棄する。画像管理については、従来方式のMVCの画像管理方法を利用することもできる。
動き/視差ベクトル検出部314は、画像入力部301より入力される画像ブロック信号に類似するブロックを、フレームメモリ312に蓄積された画像より探し出し(ブロックマッチング)、探し出したブロックを指し示すベクトル情報、視点番号及びフレーム番号を生成する(ベクトル情報は、参照する画像が符号化対象画像と同一視点の場合は動きベクトルとなり、参照する画像が符号化対象画像と異なる視点の場合は視差ベクトルとなる)。動き/視差ベクトル検出部314は、ブロックマッチングを行う際、当該分割されたブロックとの間の指標値を領域毎に算出し、算出した指標値が最小となる領域を探し出す。指標値は、画像信号間の相関性や類似性を示すものであればよい。動き/視差ベクトル検出部314は、例えば、分割されたブロックに含まれる画素の輝度値と参照画像のある領域における輝度値の差の絶対値総和(SAD;Sum of Absolute Difference)を用いる。入力された視点画像信号から分割されたブロック(例えば、大きさがN×N画素)と参照画像信号のブロックとの間のSADは次の式で表される。
数式(4)において、Iin(i0+i,j0+j)は入力画像の座標(i0+i,j0+j)における輝度値、(i0,j0)は当該分割されたブロックの左上端の画素座標を示す。Iref(i0+i+p,j0+j+q)は参照画像の座標(i0+i+p,j0+j+q)における輝度値、(p,q)は当該分割されたブロックの左上端の座標を基準にしたシフト量(動きベクトル)である。
すなわち、動き/視差ベクトル検出部314は、ブロックマッチングにおいて、(p,q)毎にSAD(p,q)を算出し、SAD(p,q)を最小とする(p,q)を探し出す。(p,q)は入力された視点画像から当該分割されたブロックから当該参照領域の位置までのベクトル(動き/視差ベクトル)を表す。
動き/視差補償部313は、動き/視差ベクトル検出部314より動きベクトル或いは視差ベクトルを入力し、さらに視差入力部316より視差情報を入力する。ここで、視差入力部316から入力される視差情報は、符号化対象の視点画像に対応する奥行き画像に基づく視差情報(各ブロックの視差ベクトル)である。動き/視差補償部313は、入力された動き/視差ベクトルに基づいて、該当する領域の画像ブロックをフレームメモリ312より抽出し、画面間予測画像ブロック信号として、予測方式制御部309と選択部310に出力する。さらに、動き/視差補償部313は、上述のブロックマッチングで算出した動き/視差ベクトルから符号化対象ブロックに隣接する符号化済みブロックで採用された動き/視差ベクトル及び上記視差情報に基づいて生成された予測ベクトルを減算し差分ベクトルを算出する。予測ベクトルの生成方法は後述する。動き/視差補償部313は、上記差分ベクトルと参照画像情報(参照視点画像番号、参照フレーム番号)を連結・並べ替えをし、画面間符号化情報として予測方式制御部309に出力する。なお、ブロックマッチングで検出された入力画像ブロックと最も類似する領域と上記予測ベクトルが指し示す領域は、少なくとも参照視点画像番号と参照フレーム番号が一致しておく必要がある。
続いて、動き/視差補償部313が行う、本実施形態に係わる予測ベクトルの生成方法について説明する。動き/視差補償部313は、図16に示すように、従来方式と同様に、符号化対象ブロックの上に隣接しているブロック(図中の隣接ブロックA)と右上に隣接しているブロック(図中の隣接ブロックB)と、左に隣接しているブロック(図中の隣接ブロックC)の視差ベクトル(mv_a、mv_b、mv_c)の水平成分及び垂直成分それぞれの中央値を予測ベクトルとする。なお、これらの隣接ブロックは、符号化対象ブロックを符号化する際に符号化済みのブロックである。本実施形態では、符号化を行う順序は、フレームの左上端のブロックから始まり、右側に移動していき、右端に達すると、一段下の左端のブロックから始まり、右側に移動していき、右端に達すると、また、一段下の左端のブロックから始めるという、いわゆるラスタースキャン順である。このような順序であるため、左、上、右上の隣接ブロックの視差ベクトルとしているが、符号化順序が異なるときは、これに限らない。
但し、符号化対象ブロックの符号化方式が視差補償予測方式の場合には、図17に示すように、図3の視差入力部316から入力される視差情報のうち符号化対象ブロックに対応する視差ベクトルmv_cbをmv_bと置き換える。即ち、視差ベクトル(mv_a、mv_cb、mv_c)の水平成分及び垂直成分それぞれの中央値を予測ベクトルとする。また、隣接ブロックA、隣接ブロックCのうち、符号化方式が視差補償予測方式ではないブロックについては、図3の視差入力部316から入力される視差情報である視差ベクトルを用いる。例えば、隣接ブロックAの符号化方式が動き補償予測方式であるときは、視差入力部316から入力される視差情報のうち、隣接ブロックAと同じ位置のブロックの視差ベクトルを、mv_aとして用いる。
このように、動き/視差補償部313は、符号化を行う視点画像に関し、視差情報に基づいて異なる視点画像(つまり現符号化対象ではない視点画像)に対する予測ベクトルを生成する。ここで生成される予測ベクトルは、符号化対象画像(符号化対象ブロック)を符号化する際に用いる予測ベクトルであり、その予測ベクトルが指し示す先(ブロック)は異なる視点画像にあるブロック(ブロックマッチングで特定されたブロック)になる。
本実施形態によれば、符号化対象画像に対応した奥行き画像を用いて視差情報を生成するため、全ての画像ブロックに対して視差情報を得ることができる。また、符号化対象画像と同じ時刻の奥行き画像から算出された視差情報である。このため、従来、隣接ブロックの動きベクトルが参照するブロックの視差ベクトルを用いたときに、被写体とカメラの距離が時間変化することによる誤差も発生しない。従って、視差補償予測方式において、精度の優れた予測ベクトルを得ることができる。
なお、予測ベクトルを生成する際には、前述のような方法の他に、以下の方法に従って決定してもよい。例えば、(a)前述の方式で、符号化対象ブロックが視差補償予測方式であり、隣接ブロックA、Cが画面外にあるなどして視差入力部316から視差情報を取得できない場合には、他の隣接ブロック、例えば隣接ブロックBの視差ベクトルもしくは視差入力部316から取得した隣接ブロックBに対応する視差情報を予測ベクトルの候補とする。
或いは(b)本実施形態では視差ベクトルmv_cbでmv_bを置き換えていたが、置き換えるのではなく、図18に示すように、視差ベクトルmv_cbを予測ベクトルの候補として追加してもよい。つまり、視差ベクトル(mv_a、mv_b、mv_c、mv_cb)の4つから予測ベクトルを選択する。選択方法としては、例えば、4つのベクトルの水平成分、垂直成分の平均値を算出し、平均値に最も近いベクトルを予測ベクトルとする。
また、視差ベクトルmv_cbは符号化対象ブロックに対応する視差ベクトルのため、予測ベクトルとしての精度が比較的高いと考えた場合、視差ベクトルmv_cbが予測ベクトルとして選択される確率を高くする方法として、4つのベクトルの水平成分、垂直成分それぞれをソートし、視差ベクトルmv_cbの水平成分または垂直成分が2番目もしくは3番目だった場合には、視差ベクトルmv_cbの水平成分または垂直成分を予測ベクトルとする。視差ベクトルmv_cbの水平成分または垂直成分が最大もしくは最少だった場合には、残りの3つのベクトルの水平成分または垂直成分中央値を予測ベクトルとする。
或いは(c)予測ベクトルを生成する際に利用する隣接ブロックとして、図19に示すように、符号化未済みである符号化対象ブロックの右側の隣接ブロックD、下側の隣接ブロックEを利用してもよい。隣接ブロックD、Eに対応する視差入力部316から入力される視差情報である視差ベクトルmv_d、mv_eを予測ベクトルの候補として追加する。そして、5つのベクトル(mv_a、mv_cb、mv_c、mv_d、mv_e)の水平成分及び垂直成分それぞれの中央値を予測ベクトルとする。
また、(d)予測ベクトルを生成する際に、視差入力部316から入力される視差情報のうち、符号化方式が視差補償予測方式ではない隣接ブロックの視差情報のみを用い、符号化対象ブロックの視差情報は用いないようにしてもよい。
また、(e)視差入力部316から入力される視差情報のみを予測ベクトルの候補とするようにしてもよい。
また、(d)予測ベクトルを生成する際に、視差入力部316から入力される視差情報のうち、符号化方式が視差補償予測方式ではない隣接ブロックの視差情報のみを用い、符号化対象ブロックの視差情報は用いないようにしてもよい。
また、(e)視差入力部316から入力される視差情報のみを予測ベクトルの候補とするようにしてもよい。
また、上記予測ベクトルの生成方式を符号化と復号についてあらかじめ固定にしてもよいし、或いはブロック単位で最適な方式を選択するようにしてもよい。ブロック単位で最適な方式を選択する方法では、符号化時に採用した方式をエントロピー符号化部305にて、上記他の符号化情報と共に連結し符号化し、復号時にはそれを参照して、予測ベクトルの生成方式を切り替える。
また、上述の中央値を選択する場合など、符号化対象ブロックや隣接ブロックの視差ベクトルの要素(視差を示す情報)の中から選択して、予測ベクトルを生成する場合は、選択した要素に対応するブロックを示す情報を、動き/視差補償部313が出力し、エントロピー符号化部305にて、上記他の符号化情報と共に連結し符号化し伝送してもよい。
復号時には、伝送されてきた前記情報を参照し、該情報が示すブロックの視差ベクトルの要素から予測ベクトルを生成する。
また、上述の中央値を選択する場合など、符号化対象ブロックや隣接ブロックの視差ベクトルの要素(視差を示す情報)の中から選択して、予測ベクトルを生成する場合は、選択した要素に対応するブロックを示す情報を、動き/視差補償部313が出力し、エントロピー符号化部305にて、上記他の符号化情報と共に連結し符号化し伝送してもよい。
復号時には、伝送されてきた前記情報を参照し、該情報が示すブロックの視差ベクトルの要素から予測ベクトルを生成する。
また、予測ベクトルの生成方法としては、上述したように、予測ベクトルを生成する際に利用する符号化対象ブロックに隣接した周辺ブロックにおいて、予測ベクトル生成に必要な情報が得られないブロック(予測方式が異なるブロックや他の理由により情報が得られないブロック)に対してのみ、視差情報に基づく情報を適用すればよい。但し、必要な情報が得られるブロックについても視差情報に基づく情報を適用することもできる。つまり、必要な情報が得られないブロックであるか得られるブロックであるかに拘わらず、予測ベクトルの生成方法としては、符号化対象ブロックにおける視差情報に基づく情報を用いることができる。
<画像符号化装置100のフローチャート>
次に、本実施形態に係る画像符号化装置100が行う画像符号化処理について説明する。図7は、画像符号化装置100が行う画像符号化処理を示すフローチャートである。図1を参照しながら説明する。
次に、本実施形態に係る画像符号化装置100が行う画像符号化処理について説明する。図7は、画像符号化装置100が行う画像符号化処理を示すフローチャートである。図1を参照しながら説明する。
まずステップS101において、画像符号化装置100は、外部から視点画像とそれに対応する奥行き画像及び撮影条件情報を入力する。その後、ステップS102に進む。
ステップS102において、奥行き画像符号化部103は、外部より入力した奥行き画像を符号化する。奥行き画像符号化部103は、奥行き画像の符号化データを図示しない符号構成部に出力する。同時に奥行き画像符号化部103は、奥行き画像の符号化データを復号し、その結果を視差情報生成部104に出力する。その後、ステップS103に進む。
ステップS103において、視差情報生成部104は、外部より入力される撮影条件情報と奥行き画像符号化部103より入力される符号化・復号した奥行き画像情報に基づいて視差情報を生成する。視差情報生成部104は、生成した視差情報を画像符号化部106に出力する。その後、ステップS104に進む。
ステップS104において、画像符号化部106は、外部より入力される視点画像と視差情報生成部104より入力される視差情報に基づいて画像の符号化を行う。画像符号化部106は、同時に前述の予測符号化情報及び量子化係数も含めて符号化する。画像符号化部106は、画像の符号化データを図示しない符号構成部に出力する。その後、ステップS105に進む。
ステップS105において、撮影条件情報符号化部101は、外部より撮影条件情報を入力し、符号化する。撮影条件情報符号化部101は、撮影条件情報の符号化データを図示しない符号構成部に出力する。その後、ステップS106に進む。
ステップS106において、図示しない符号構成部は、画像符号化部106より画像に関する符号化データ、奥行き画像符号化部103より奥行き画像の符号化データ、及び撮影条件情報符号化部101より撮影条件情報の符号化データを入力し、符号化データの連結・並べ替えを行い、符号化ストリームとして画像符号化装置100の外部へ出力する。
上記ステップS103で実施される視差情報生成とステップS104で実施される視点画像の符号化について、より詳しく説明する。
まずは、ステップS103の視差情報生成について、図8及び図2を用いて説明する。
まずは、ステップS103の視差情報生成について、図8及び図2を用いて説明する。
ステップS201において、視差情報生成部104は、画像符号化装置100の外部より奥行き画像と撮影条件情報を入力する。視差情報生成部104は、その内部にあるブロック分割部201に奥行き画像を入力し、距離情報抽出部204に撮影条件情報を入力する。その後、ステップS202に進む。
ステップS202において、ブロック分割部201は、奥行き画像を入力し、所定のブロックサイズに奥行き画像を分割する。ブロック分割部201は、分割した奥行き画像ブロックを代表奥行き値決定部202に出力する。その後、ステップS203に進む。
ステップS203において、代表奥行き値決定部202は、ブロック分割部201より分割された奥行き画像を入力し、前述の奥行き値の代表値を算出する方法に従って代表奥行き値を決定する。代表奥行き値決定部202は、算出した代表奥行き値を視差算出部203に出力する。その後、ステップS204に進む。
ステップS204において、距離情報抽出部204は、撮影条件情報を入力し、撮影条件情報の中からカメラ間距離と撮影距離に相当する情報を抽出し、視差算出部203へ出力する。その後、ステップS205に進む。
ステップS205において、視差算出部203は、代表奥行き値決定部202より代表奥行き値と距離情報抽出部204より視差情報を算出するために必要な撮影条件情報を入力し、上述の視差算出方法に従って視差情報、すなわち視差ベクトルを算出する。視差算出部203は、算出した視差情報、すなわち視差ベクトルを視差情報生成部104の外部に出力する。
続いて、ステップS104の視点画像の符号化について、図9及び図3を用いて説明する。
まずステップS301において、画像符号化部106は、外部から視点画像とそれに対応する視差情報を入力する。その後、ステップS302に進む。
まずステップS301において、画像符号化部106は、外部から視点画像とそれに対応する視差情報を入力する。その後、ステップS302に進む。
ステップS302において、画像入力部301は、画像符号化部106の外部から入力された視点画像である入力画像信号を予め定めた大きさ(例えば、垂直方向16画素×水平方向16画素)のブロックに分割して、減算部302と画面内予測部317及び画面間予測部318に出力する。また、視差入力部316は、画像入力部301に入力された視点画像と同期された視差情報、すなわち視差ベクトルを、画像入力部301で実施された画像の分割と同様に分割して、画面間予測部318に出力する。
画像符号化部106は、ステップS302〜ステップS310の処理をフレーム内の画像ブロック毎に繰り返す。次に、ステップS303とステップS304に進む。
ステップS303において、画面内予測部317は、画像入力部301から視点画像の画像ブロック信号と加算部308より復号(内部デコード)された参照画像ブロック信号を入力し、画面内予測を実施する。画面内予測部317は、生成した画面内予測画像ブロック信号を予測方式制御部309と選択部310に、画面内予測符号化情報を予測方式制御部309に出力する。なお、最初の処理において、加算部308の処理が完了していない場合には、リセットされた画像ブロック(全ての画素値が0の画像ブロック)を入力するものとする。画面内予測部の処理が完了すると、ステップS305に進む。
ステップS304において、画面間予測部318は、画像入力部301から視点画像の画像ブロック信号と加算部308より復号(内部デコード)された参照画像ブロック信号及び視差入力部316より視差情報を入力し、画面間予測を実施する。画面間予測部318は、生成した画面間予測画像ブロック信号を予測方式制御部309と選択部310に、画面間予測符号化情報を予測方式制御部309に出力する。なお、最初の処理において、加算部308の処理が完了していない場合には、リセットされた画像ブロック(全ての画素値が0の画像ブロック信号)を入力するものとする。画面間予測部318の処理が完了すると、ステップS305に進む。
ステップS305において、予測方式制御部309は、画面内予測部317より画面内予測画像ブロック信号と画面内予測符号化情報、及び画面間予測部318より画面間予測画像ブロック信号と画面間予測符号化情報を受取り、前述のラグランジュコストに基づいて、符号化効率の良い予測モードを選択する。予測方式制御部309は、選択した予測モードの情報を選択部310に出力する。予測方式制御部309は、選択した予測モードに対応する予測符号化情報に選択した予測モードを識別するための情報を付加して、エントロピー符号化部305に出力する。
選択部310は、予測方式制御部309から入力される予測モード情報に従って、画面内予測部から入力される画面内予測画像ブロック信号、或いは画面間予測部から入力される画面間予測画像ブロック信号を選択して、減算部302と加算部308に出力する。その後、ステップS306に進む。
ステップS306において、減算部302は、画像入力部301から入力される画像ブロック信号から選択部310から入力される予測画像ブロック信号を減算し、差分画像ブロック信号を生成する。減算部302は、差分画像ブロック信号を直交変換部303に出力する。その後、ステップS307に進む。
ステップS307において、直交変換部303は、減算部302から差分画像ブロック信号を入力し、上述の直交変換を実施する。直交変換部303は、直交変換後の信号を量子化部304に出力する。量子化部304は、直交変換部303から入力された信号を、上述の量子化処理を実施し、差分画像符号を生成する。量子化部304は、差分画像符号及び量子化係数を、エントロピー符号化部305と逆量子化部306に出力する。
エントロピー符号化部305は、量子化部304から入力される差分画像符号と量子化係数及び予測方式制御部309から入力される予測符号化情報をパッキング(packing;詰込)し、可変長符号化(エントロピー符号化)を行い、情報量がより圧縮された符号化データを生成する。エントロピー符号化部305は、符号化データを画像符号化装置100の外部に(例えば、図11の画像復号装置700)に出力する。その後、ステップS308に進む。
ステップS308において、逆量子化部306は、量子化部304から差分画像符号を入力し、量子化部304で実施した量子化の逆の処理を行う。逆量子化部306は、生成された信号を逆直交変換部307に出力する。逆直交変換部307は、逆量子化部306から逆量子化された信号を入力し、直交変換部303で実施した直交変換処理の逆直交変換処理を実施し、差分画像(復号差分画像ブロック信号)を復号する。逆直交変換部307は、復号された差分画像ブロック信号を加算部308に出力する。その後、ステップS309に進む。
ステップS309において、加算部308は、逆直交変換部307から入力される復号された差分画像ブロック信号に、選択部310から入力される予測画像ブロック信号を加算して、入力画像を復号する(参照画像ブロック信号)。加算部308は、参照画像ブロック信号を、画面内予測部317と画面間予測部318に出力する。その後、ステップS310に進む。
ステップS310において、画像符号化部106が、フレーム内の全ブロック及び全視点画像についてステップS302〜S310の処理が完了していない場合、処理対象となるブロックを変更してステップS302に戻る。
全ての処理が完了している場合、終了する。
全ての処理が完了している場合、終了する。
上述のステップS303で実施される画面内予測の処理フローは、従来方式であるH.264或いはMVCの画面内予測の処理ステップと同じでよい。
上述のステップS304で実施される画面間予測の処理フローについて、図10及び図3を用いて説明する。
まずステップS401において、デブロッキング・フィルタ部311は、画面間予測部318の外部である加算部308から参照画像ブロック信号を入力し、前述のFIRフィルタ処理を実施する。デブロッキング・フィルタ部311は、フィルタ処理後の補正ブロック信号をフレームメモリ312に出力する。その後、ステップS402に進む。
まずステップS401において、デブロッキング・フィルタ部311は、画面間予測部318の外部である加算部308から参照画像ブロック信号を入力し、前述のFIRフィルタ処理を実施する。デブロッキング・フィルタ部311は、フィルタ処理後の補正ブロック信号をフレームメモリ312に出力する。その後、ステップS402に進む。
ステップS402において、フレームメモリ312は、デブロッキング・フィルタ部311の補正ブロック信号を入力し、視点番号とフレーム番号を同定できる情報と共に画像の一部として補正ブロック信号を保持しておく。その後、ステップS403に進む。
ステップS403において、動き/視差ベクトル検出部314は、画像入力部301から画像ブロック信号を受取ると、該画像ブロックに類似するブロックを、フレームメモリ312に蓄積された参照画像より探し出し(ブロックマッチング)、探し出したブロックを表すベクトル情報(動きベクトル/視差ベクトル)を生成する。動き/視差ベクトル検出部314は、検出したベクトル情報を含めた符号化のために必要な情報(参照視点画像番号、参照フレーム番号)を動き/視差補償部313に出力する。その後、ステップS404に進む。
ステップS404において、動き/視差補償部313は、動き/視差ベクトル検出部314から符号化のために必要な情報を入力し、該当する予測ブロックをフレームメモリ312より抽出する。動き/視差補償部313は、フレームメモリ312より抽出した予測画像ブロック信号を画面間予測画像ブロック信号として予測方式制御部309と選択部310に出力する。同時に、動き/視差補償部313は、符号化対象ブロックの隣接ブロックのベクトル情報と視差入力部316より入力する視差情報である視差ベクトルに基づいて生成した予測ベクトルと動き/視差ベクトル検出部314より入力した動き/視差ベクトルとの差分ベクトルを算出する。動き/視差補償部313は、算出した差分ベクトル及び予測に必要な情報(参照視点画像番号及び参照フレーム番号)を予測方式制御部309に出力する。その後、画面間予測を終了する。
このように、本実施形態によれば、画像符号化装置100は、奥行き画像から算出される視差情報(すなわち視差ベクトル)に基づいた予測ベクトルによる視差補償予測を行うことができる。従って、本実施形態によれば、符号化対象ブロック周辺が視差補償予測と異なる予測方式が採用されている場合であっても、予測ベクトルの精度を向上させることが可能となり、符号化効率を高めることができる。
(実施形態2)<復号装置>
図11は、本発明の一実施形態である画像復号装置の構成例を示す機能ブロック図である。
図11は、本発明の一実施形態である画像復号装置の構成例を示す機能ブロック図である。
図11に示すように、本実施形態における画像復号装置700は、撮影条件情報復号部701、奥行き画像復号部703、視差情報生成部704、及び画像復号部706を含んで構成される。なお、画像復号部706の内部に記載したブロック(基準視点復号処理部702、非基準視点復号処理部705)は、画像復号部706の動作を概念的に説明するために利用する。
以下、画像復号装置700の機能及び動作について説明する。
画像復号装置700の入力データは、画像復号装置700の外部(例えば前述の画像符号化装置100)より伝送された符号化ストリームを入力し、図示しない符号分離部によって分離・抽出された基準視点画像符号、非基準視点画像符号、奥行き画像符号、撮影条件情報符号として与えられる。
画像復号装置700の入力データは、画像復号装置700の外部(例えば前述の画像符号化装置100)より伝送された符号化ストリームを入力し、図示しない符号分離部によって分離・抽出された基準視点画像符号、非基準視点画像符号、奥行き画像符号、撮影条件情報符号として与えられる。
基準視点復号処理部702は、視点内予測符号化に従う方式により圧縮符号化された符号化データを復号し、基準視点の視点画像を復元する。復元した視点画像は、そのまま表示に使用されると共に、後述する非基準視点の視点画像の復号にも使用される。
奥行き画像復号部703は、従来方式であるH.264方式或いはMVC方式により圧縮符号化された符号化データを復号し、奥行き画像を復元する。復元した奥行き画像は、前述の復元された視点画像以外の視点の画像を生成・表示するために使用される。以下の説明では、奥行き画像復号部702を画像復号装置700に具備した例を挙げているが、画像符号化装置100側で生データを送信する場合も想定でき、そのような構成の場合、画像復号装置700はその生データを受信できればよい。よって、画像復号装置700に奥行き画像復号部703を設けない構成を採用することもできる。
撮影条件情報復号部701は、撮影条件情報の符号化データから、撮影時のカメラ間距離と撮影距離を含む情報を復元する。復元した撮影条件情報は、奥行き画像と共に、必要な視点画像を生成・表示するために使用される。視差情報生成部704は、復元された奥行き画像及び撮影条件情報に基づいて、復号する視点画像とそれとは異なる視点画像との間の視差情報を生成する。視差情報生成の方法・手順は、前述の画像符号化装置100における視差情報生成部104の処理と同様である。
非基準視点復号処理部705は、視点間予測符号化に従う方式により圧縮符号化された符号化データを、復元された基準視点画像と、上記視差情報とに基づいて復号し、非基準視点の視点画像を復元する。最終的に、基準視点画像、非基準視点画像は、そのまま表示用画像として使用され、また、必要に応じて、奥行き画像と撮影条件情報とに基づいて、その他の視点の画像、例えば各視点間の間の画像が表示用に生成される。視点画像の生成処理については、当画像復号装置内で行ってもよいし装置外部で行ってもよい。
また、ここでは、画像符号化装置100側で基準視点の視点画像を視点内予測符号化方式で符号化し且つ非基準視点の視点画像を視点間予測符号化方式で符号化する例を挙げているため、画像復号装置700でもそれに合わせた方式で復号する例を挙げている。但し、画像符号化装置100側で、基準視点の視点画像と非基準視点の視点画像の双方を視点間予測符号化方式で符号化する場合、画像復号装置700側でも双方の視点画像を視差補償予測復号方式(視点間予測復号方式)で復号すればよい。なお、画像符号化装置100側で符号化効率に基づいて予測符号化方式を切り替える場合には、画像復号装置700では予測符号化方式を示す情報(予測符号化情報)を画像符号化装置100から受信して予測復号方式を切り替えるが、その切り替えは復号対象画像が基準視点の視点画像であるか非基準視点の視点画像であるかに依らず、予測符号化情報に基づき実行すれば済む。
続いて、画像復号部706について図12を用いて説明する。
図12は、画像復号部706の機能構成を示す概略ブロック図である。
画像復号部706は、符号化データ入力部813、エントロピー復号部801、逆量子化部802、逆直交変換部803、加算部804、予測方式制御部805、選択部806、デブロッキング・フィルタ部807、フレームメモリ808、動き/視差補償部809、イントラ予測部810、画像出力部812及び視差入力部814を含んで構成される。
なお、説明のために、画面内予測部816と画面間予測部815を点線で図示する。画面内予測部816はイントラ予測部810を含み、画面間予測部815はデブロッキング・フィルタ部807、フレームメモリ808及び動き/視差補償部809を含む。
図12は、画像復号部706の機能構成を示す概略ブロック図である。
画像復号部706は、符号化データ入力部813、エントロピー復号部801、逆量子化部802、逆直交変換部803、加算部804、予測方式制御部805、選択部806、デブロッキング・フィルタ部807、フレームメモリ808、動き/視差補償部809、イントラ予測部810、画像出力部812及び視差入力部814を含んで構成される。
なお、説明のために、画面内予測部816と画面間予測部815を点線で図示する。画面内予測部816はイントラ予測部810を含み、画面間予測部815はデブロッキング・フィルタ部807、フレームメモリ808及び動き/視差補償部809を含む。
図11において画像復号部706の動作を説明した際には、基準視点の復号とそれ以外の非基準視点の復号を明示的に分けて、基準視点復号処理部702の処理と非基準視点復号処理部705の処理としたが、お互いに共通する処理が多いため、以下では基準視点復号処理と非基準視点復号処理を統合した形態について説明を行う。具体的には、前述の基準視点復号処理部702で行う視点内予測復号方式は、図12の画面内予測部816で実施される処理と画面間予測部815で実施される処理の一部である同一視点の画像を参照する処理(動き補償)を組み合わせたものである。
また、非基準視点復号処理部705で行う視点間予測符号化方式は、画面内予測部816で実施される処理と画面間予測部815で実施される同一視点の画像を参照する処理(動き補償)及び異なる視点の画像を参照する処理(視差補償)を組み合わせたものである。さらに、画面間予測部815で実施される処理対象視点と同一視点の画像を参照する処理(動き補償)と異なる視点を参照する処理(視差補償)についても、復号時に参照する画像が異なるだけで、参照画像を指し示すID情報(参照視点番号、参照フレーム番号)を用いることで処理を共通化することが可能である。また、画像符号化データを復号した残差成分と各予測部で予測した画像を加算して画像を復元処理する処理も、基準視点であっても非基準視点であっても共通に行える。詳細は後述する。
符号化データ入力部813は、外部(例えば、画像符号化装置100)から入力された画像符号化データを、処理ブロック単位(例えば16画素×16画素)に分割して、エントロピー復号部801に出力する。符号化データ入力部813は、ブロック位置を順次変えながら、フレーム内のすべてのブロックが完了し、そして入力される符号データが終了するまで繰り返して出力する。
エントロピー復号部801は、符号化データ入力部813から入力された符号化データを、エントロピー符号化部305が行った符号化方法(例えば、可変長符号化)と逆の処理(例えば、可変長復号)であるエントロピー復号して、差分画像符号と量子化係数及び予測符号化情報を抽出する。エントロピー復号部801は、差分画像符号と量子化係数を逆量子化部802に、予測符号化情報を予測方式制御部805に出力する。
逆量子化部802は、エントロピー復号部801から入力された差分画像符号を、量子化係数を用いて逆量子化して復号周波数領域信号を生成し、逆直交変換部803に出力する。
逆直交変換部803は、入力された復号周波数領域信号を、例えば逆DCT変換して空間領域信号である復号差分画像ブロック信号を生成する。逆直交変換部803は、復号周波数領域信号に基づき空間領域信号を生成することができれば、逆DCT変換に限らず、他の方法(例えば、IFFT(高速フーリエ逆変換;Inverse Fast Fourier Transform))を用いてもよい。逆直交変換部803は、生成した復号差分画像ブロック信号を加算部804に出力する。
予測方式制御部805は、エントロピー復号部801から入力される予測符号化情報の中から、画像符号化装置100で採用されたブロック単位の予測方式を取り出す。予測方式は、画面内予測或いは画面間予測である。予測方式制御部805は、抽出した予測方式に関する情報を選択部806に出力する。また、予測方式制御部805は、エントロピー復号部801から入力される予測符号化情報の中から符号化情報を取り出し、抽出した予測方式に対応する処理部に符号化情報を出力する。予測方式制御部805は、予測方式が画面内予測である場合には、画面内予測部816に画面内予測符号化情報として符号化情報を出力する。予測方式制御部805は、予測方式が画面間予測である場合には、画面間予測部815に画面間予測符号化情報として符号化情報を出力する。
選択部806は、予測方式制御部805から入力された予測方式に従って、画面内予測部816から入力される画面内予測画像ブロック信号、或いは画面間予測部815から入力される画面間予測画像ブロック信号を選択する。予測方式が、画面内予測の場合には、画面内予測画像ブロック信号を選択する。予測方式が、画面間予測の場合には、画面間予測画像ブロック信号を選択する。選択部806は、選択した予測画像ブロック信号を、加算部804に出力する。
加算部804は、逆直交変換部803から入力した復号差分画像ブロック信号に選択部806から入力した予測画像ブロック信号を加算し、復号画像ブロック信号を生成する。加算部804は、復号した復号画像ブロック信号を、画面内予測部816と画面間予測部815、及び画像出力部812に出力する。
画像出力部812は、加算部804から復号画像ブロック信号を入力し、図示しないフレームメモリに画像の一部として一旦保持する。画像出力部812は、表示順にフレームの並び替えを行った後、全ての視点画像が揃った時に、画像復号装置700の外部に出力する。
続いて、画面内予測部816と画面間予測部815について説明する。
まず、画面内予測部816について説明する。
画面内予測部816内のイントラ予測部810は、加算部804より復号画像ブロック信号と予測方式制御部805より画面内予測符号化情報を入力する。イントラ予測部810は、画面内予測符号化情報より、符号化時に実施した画面内予測を再現する。なお、画面内予測は上述の従来方式に従って実施できる。イントラ予測部810は、生成した予測画像を画面内予測画像ブロック信号として、選択部806に出力する。
まず、画面内予測部816について説明する。
画面内予測部816内のイントラ予測部810は、加算部804より復号画像ブロック信号と予測方式制御部805より画面内予測符号化情報を入力する。イントラ予測部810は、画面内予測符号化情報より、符号化時に実施した画面内予測を再現する。なお、画面内予測は上述の従来方式に従って実施できる。イントラ予測部810は、生成した予測画像を画面内予測画像ブロック信号として、選択部806に出力する。
続いて、画面間予測部815の詳細について説明する。
デブロッキング・フィルタ部807は、加算部804から入力される復号画像ブロック信号に対して、デブロッキング・フィルタ部311で行うFIRフィルタと同じ処理を行い、その処理結果(補正ブロック信号)をフレームメモリ808に出力する。
デブロッキング・フィルタ部807は、加算部804から入力される復号画像ブロック信号に対して、デブロッキング・フィルタ部311で行うFIRフィルタと同じ処理を行い、その処理結果(補正ブロック信号)をフレームメモリ808に出力する。
フレームメモリ808は、デブロッキング・フィルタ部807から補正ブロック信号を入力し、視点番号とフレーム番号を同定できる情報と共に画像の一部として補正ブロック信号を保持しておく。フレームメモリ808は、図示していないメモリ管理部によって、入力画像のピクチャの種類或いは画像の順番が管理され、その指示に従って画像を蓄えたり破棄する。画像管理については、従来方式のMVCの画像管理方法を利用することもできる。
動き/視差補償部809は、予測方式制御部805より画面間予測符号化情報を入力し、その中から参照画像情報(参照視点画像番号と参照フレーム番号)と差分ベクトル(動き/視差ベクトルと予測ベクトルの差分ベクトル)を取り出す。動き/視差補償部809は、視差入力部814から入力した視差情報である視差ベクトルを用いて、前述の動き/視差補償部313で実施した予測ベクトル生成方法と同じ方法によって、予測ベクトルを生成する。すなわち、動き/視差補償部809は、復号を行う視点画像に関し、視差情報に基づいて異なる視点画像(つまり現復号対象ではない視点画像)に対する予測ベクトルを生成する。ここで生成される予測ベクトルは、復号対象画像(復号対象ブロック)を復号する際に用いる予測ベクトルであり、その予測ベクトルが指し示す先(ブロック)は異なる視点画像にあるブロック(ブロックマッチングで特定されたブロック)になる。
動き/視差補償部809は、算出した予測ベクトルに差分ベクトルを加算して、動き/視差ベクトルを再現する。動き/視差補償部809は、参照画像情報と動き/視差ベクトルに基づいて、フレームメモリ808に蓄積されている画像の中から対象の画像ブロック信号(予測画像ブロック信号)を抽出する。動き/視差補償部809は、抽出した画像ブロック信号を画面間予測画像ブロック信号として選択部806に出力する。
また、動き/視差補償部809における予測ベクトルの生成方法としては、上述したように、予測ベクトルを生成する際に利用する復号対象ブロックに隣接した周辺ブロックにおいて、予測ベクトル生成に必要な情報が得られないブロックに対してのみ、視差情報に基づく情報を適用すればよい。但し、必要な情報が得られるブロックについても視差情報に基づく情報を適用することもできる。つまり、必要な情報が得られないブロックであるか得られるブロックであるかに拘わらず、予測ベクトルの生成方法としては、復号対象ブロックにおける視差情報に基づく情報を用いることができる。
<画像復号装置700のフローチャート>
次に、本実施形態に係る画像復号装置700が行う画像復号処理について説明する。図13は、画像復号装置700が行う画像復号処理を示すフローチャートである。図11を参照しながら説明する。
次に、本実施形態に係る画像復号装置700が行う画像復号処理について説明する。図13は、画像復号装置700が行う画像復号処理を示すフローチャートである。図11を参照しながら説明する。
まずステップS501において、画像復号装置700は、外部(例えば、画像符号化装置100)から符号化ストリームを入力し、図示しない符号分離部によって画像符号化データとそれに対応する奥行き画像符号化データ及び撮影条件情報符号化データを分離・抽出する。その後、ステップS502に進む。
ステップS502において、奥行き画像復号部703は、ステップS501で分離・抽出された奥行き画像符号化データを復号し、結果を視差情報生成部704及び画像復号装置700の外部に出力する。その後、ステップS503に進む。
ステップS503において、撮影条件情報復号部701は、ステップS501で分離・抽出された撮影条件情報符号化データを復号し、結果を視差情報生成部704及び画像復号装置700の外部に出力する。その後、ステップS504に進む。
ステップS504において、視差情報生成部704は、撮影条件情報復号部701より復号された撮影条件情報と奥行き画像復号部703より復号された奥行き画像を入力し、視差情報を生成する。視差情報生成部704は、結果を画像復号部706に出力する。その後、ステップS505に進む。
ステップS505において、画像復号部706は、ステップS501で分離・抽出された画像符号化データと視差情報生成部704から視差情報を入力し、画像を復号する。画像復号部706は、結果を画像復号装置700の外部に出力する。
上記ステップS504で実施される視差情報生成処理は、前述のS103すなわちS201〜S205の処理と同じである。
続いて、ステップS505で実施される視点画像の復号について、図14及び図12を用いて説明する。
まずステップS601において、画像復号部706は、外部から画像符号化データと対応する視差情報を入力する。その後、ステップS602に進む。
まずステップS601において、画像復号部706は、外部から画像符号化データと対応する視差情報を入力する。その後、ステップS602に進む。
ステップS602において、符号化データ入力部813は、画像復号部706の外部から入力された符号化データを予め定めた大きさ(例えば、垂直方向16画素×水平方向16画素)に対応する処理ブロックに分割して、エントロピー復号部801に出力する。また、視差入力部814は、符号化データ入力部813に入力された符号化データと同期した視差情報を画像復号部706の外部である視差情報生成部704から入力し、符号化データ入力部813と同様の処理単位に分割して、画面間予測部815に出力する。
画像復号部706は、ステップS602〜ステップS608の処理をフレーム内の画像ブロック毎に繰り返す。
画像復号部706は、ステップS602〜ステップS608の処理をフレーム内の画像ブロック毎に繰り返す。
ステップS603において、エントロピー復号部801は、符号化データ入力部から入力された画像符号化データをエントロピー復号し、差分画像符号と量子化係数、及び予測符号化情報を生成する。エントロピー復号部801は、差分画像符号と量子化係数を、逆量子化部802に出力し、予測符号化情報を予測方式制御部805に出力する。予測方式制御部805は、エントロピー復号部801から予測符号化情報を入力し、予測方式に関する情報とその予測方式に対応する符号化情報を取り出す。予測方式が、画面内予測の場合には、符号化情報を画面内予測符号化情報として画面内予測部816に出力する。予測方式が、画面間予測の場合には、符号化情報を画面間予測符号化情報として画面間予測部815に出力する。その後、ステップS604とステップS605に進む。
ステップS604において、画面内予測部816内のイントラ予測部810は、予測方式制御部805から入力される画面内予測符号化情報と加算部804から入力される復号画像ブロック信号を入力して、画面内予測処理を実施する。イントラ予測部810は、生成された画面内予測画像ブロック信号を選択部806に出力する。なお、最初の処理において、加算部804の処理が完了していない場合には、リセットされた画像ブロック信号(全ての画素値が0の画像ブロック信号)を入力するものとする。その後、ステップS606に進む。
ステップS605において、画面間予測部815は、予測方式制御部805から入力される画面間予測符号化情報と、加算部804から入力される復号画像ブロック信号、及び視差入力部814から入力される視差情報(すなわち視差ベクトル)に基づいて、画面間予測を実施する。画面間予測部815は、生成された画面間予測画像ブロック信号を選択部806に出力する。画面間予測の処理については後述する。なお、最初の処理において、加算部804の処理が完了していない場合には、リセットされた画像ブロック信号(全ての画素値が0の画像ブロック信号)を入力するものとする。その後、ステップS606に進む。
ステップS606において、選択部806は、予測方式制御部805から出力された予測方式に関する情報を入力し、画面内予測部816から入力された画面内予測画像ブロック信号若しくは、画面間予測部815から入力された画面間予測画像信号を選択して、加算部804に出力する。その後、ステップS607に進む。
ステップS607において、逆量子化部802は、エントロピー復号部801から入力した差分画像符号を、画像符号化部106の量子化部304で実施した量子化の逆の処理を行う。逆量子化部802は、生成された復号周波数領域信号を逆直交変換部803に出力する。逆直交変換部803は、逆量子化部802から逆量子化された復号周波数領域信号を入力し、画像符号化部106の直交変換部303で実施した直交変換処理の逆直交変換処理を実施し、差分画像(復号差分画像ブロック信号)を復号する。逆直交変換部803は、復号された復号差分画像ブロック信号を加算部804に出力する。加算部804は、逆直交変換部803から入力される復号差分画像ブロック信号に選択部806から入力される予測画像ブロック信号を加算して、復号画像ブロック信号を生成する。加算部804は、復号した復号画像ブロック信号を画像出力部812と画面内予測部816及び画面間予測部815に出力する。その後、ステップS608に進む。
ステップS608において、画像出力部812は、加算部804から入力される復号画像ブロック信号を、画像内の対応する位置に配置させ出力画像生成する。フレーム内の全ブロックについてステップS602〜S608の処理が完了していない場合、処理対象となるブロックを変更してステップS602に戻る。
画像出力部812は、画像を表示順に並び替えを行い、同一フレームの視点画像を揃えて画像復号装置700の外部に出力する。
画面間予測部815の処理フローについては、図15及び図12を用いて説明する。
まずステップS701において、デブロッキング・フィルタ部807は、画面間予測部815の外部である加算部804から復号画像ブロック信号を入力し、上記符号化時に行ったFIRフィルタ処理を実施する。デブロッキング・フィルタ部807は、フィルタ処理後の補正ブロック信号をフレームメモリ808に出力する。その後、ステップS702に進む。
まずステップS701において、デブロッキング・フィルタ部807は、画面間予測部815の外部である加算部804から復号画像ブロック信号を入力し、上記符号化時に行ったFIRフィルタ処理を実施する。デブロッキング・フィルタ部807は、フィルタ処理後の補正ブロック信号をフレームメモリ808に出力する。その後、ステップS702に進む。
ステップS702において、フレームメモリ808は、デブロッキング・フィルタ部807の補正ブロック信号を入力し、視点番号とフレーム番号を同定できる情報と共に画像の一部として補正ブロック信号を保持しておく。その後、ステップS703に進む。
ステップS703において、動き/視差補償部809は、予測方式制御部805から画面間予測符号化情報を入力し、その中から参照画像情報(参照視点画像番号とフレーム番号)と差分ベクトル(動き/視差ベクトルと予測ベクトルとの差分ベクトル)を取り出す。動き/視差補償部809は、視差入力部814から入力した視差情報である視差ベクトルを用いて、前述の動き/視差補償部313で実施した予測ベクトル生成方法と同じ方法によって、予測ベクトルを生成する。動き/視差補償部809は、算出した予測ベクトルに差分ベクトルを加算して、動き/視差ベクトルを生成する。動き/視差補償部809は、参照画像情報と動き/視差ベクトルに基づいて、フレームメモリ808に蓄積されている画像の中から対象の画像ブロック信号(予測画像ブロック信号)を抽出する。動き/視差補償部809は、抽出した画像ブロック信号を画面間予測画像ブロック信号として選択部806に出力する。その後、画面間予測処理を終了する。
このように、本実施形態によれば、画像復号装置700は、奥行き画像から算出される視差情報(すなわち視差ベクトル)に基づいた予測ベクトルによる視差補償予測を行うことができる。つまり、本実施形態によれば、図1の画像符号化装置100のようにして予測ベクトルの精度を向上させ符号化効率を高めて符号化されたデータを復号することができる。
(実施形態3)<符号化装置>
以下、図面を参照しながら本発明の第3の実施の形態について説明する。第3の実施形態では、符号化情報を伝送しない符号化モードであるスキップモード時の予測ベクトル生成方法と生成された予測ベクトルを用いた符号化について説明する。
以下、図面を参照しながら本発明の第3の実施の形態について説明する。第3の実施形態では、符号化情報を伝送しない符号化モードであるスキップモード時の予測ベクトル生成方法と生成された予測ベクトルを用いた符号化について説明する。
図20は、本実施形態における画像符号化装置の構成例を示す機能ブロック図である。
画像符号化装置1000は、撮影条件情報符号化部101、奥行き画像符号化部1003、視差情報生成部104、及び画像符号化部1006を含んで構成される。撮影条件情報符号化部101、及び視差情報生成部104は画像符号化装置100(図1)と同様なため、説明は省略する。
画像符号化装置1000は、撮影条件情報符号化部101、奥行き画像符号化部1003、視差情報生成部104、及び画像符号化部1006を含んで構成される。撮影条件情報符号化部101、及び視差情報生成部104は画像符号化装置100(図1)と同様なため、説明は省略する。
なお、画像符号化部1006の内部の基準視点符号化処理部102と非基準視点符号化処理部1005は実施例1とほぼ同様の処理を行うため詳しい説明は省略する。ただし、非基準視点符号化処理部1005はスキップモードによる符号化処理がかのうである。
奥行き画像符号化部1003は、復元された奥行き画像を視差情報生成部104だけではなく画像符号化部1006にも出力する。奥行き画像符号化部1003の処理内容は奥行き画像符号化部103と同様なため、説明は省略する。
奥行き画像符号化部1003は、復元された奥行き画像を視差情報生成部104だけではなく画像符号化部1006にも出力する。奥行き画像符号化部1003の処理内容は奥行き画像符号化部103と同様なため、説明は省略する。
画像符号化部1006については図21を用いて説明する。図21は、画像符号化部1006の機能構成を示す概略ブロック図である。
画像符号化部1006は、画像入力部301、減算部302、直交変換部303、量子化部304、エントロピー符号化部305、逆量子化部306、逆直交変換部307、加算部308、予測方式制御部1109、選択部1110、デブロッキング・フィルタ部311、フレームメモリ(フレームメモリ部)312、動き/視差補償部313、動き/視差ベクトル検出部314、イントラ予測部315、視差入力部316、及びスキップモード符号化部1119を含んで構成される。
画像符号化部1006は、画像入力部301、減算部302、直交変換部303、量子化部304、エントロピー符号化部305、逆量子化部306、逆直交変換部307、加算部308、予測方式制御部1109、選択部1110、デブロッキング・フィルタ部311、フレームメモリ(フレームメモリ部)312、動き/視差補償部313、動き/視差ベクトル検出部314、イントラ予測部315、視差入力部316、及びスキップモード符号化部1119を含んで構成される。
なお、説明のために、画面内予測部317と画面間予測部318を点線で図示する。画面内予測部317はイントラ予測部315を含み、画面間予測部1118はデブロッキング・フィルタ部311、フレームメモリ312、動き/視差補償部313、動き/視差ベクトル検出部314、及びスキップモード符号化部1119を含む。
画像入力部301、減算部302、直交変換部303、量子化部304、エントロピー符号化部305、逆量子化部306、逆直交変換部307、加算部308、デブロッキング・フィルタ部311、フレームメモリ(フレームメモリ部)312、動き/視差補償部313、動き/視差ベクトル検出部314、イントラ予測部315、及び視差入力部316は画像符号化部106(図3)の各ブロックと同様なため、説明を省略する。
スキップモード符号化部1119は、同一視点の画像を参照するスキップモードによる符号化処理と、異なる視点の画像を参照するスキップモードによる符号化処理の両方を行う。ただし、異なる視点の画像を参照する処理を行う場合には、実施形態1の動き/視差補償部313と同様、動き/視差ベクトル検出部314が検出した視差ベクトルに加えて、視差入力部316が視差情報生成部104から取得した視差情報(各ブロックの視差ベクトル)を予測ベクトル生成の際に用いる。また、2つの処理でそれぞれ生成した予測ベクトルのうち、奥行き画像を用いることで予測ベクトルを選択しスキップモードによる符号化を行う。詳細は後述する。
予測方式制御部1109は、入力画像のピクチャの種類(符号化対象画像が予測画像に参照できる画像を識別するための情報で、Iピクチャ、Pピクチャ、Bピクチャなどがある。なお、ピクチャの種類は、量子化係数と同様に外部より与えられるパラメータによって決まるもので、従来方式のMVCと同じ方法を利用できる。)及び符号化効率に基づいて、画面内予測部317より入力される画面内予測画像ブロック信号とその画面内予測符号化情報、及び画面間予測部1118の動き/視差補償部313より入力される画面間予測画像ブロック信号とその画面間符号化情報、及び画面間予測部1118のスキップモード符号化部1119より入力されるスキップモード予測画像ブロック信号に基づいてブロック毎の予測方式を決める。予測方式制御部1109は、決めた予測方式を示す情報を選択部1110に出力する。
予測方式制御部1109は、入力画像のピクチャの種類を監視し、入力された符号化対象画像が画面内の情報しか参照できないIピクチャの場合は画面内予測方式を確定的に選択する。符号化済みの過去のフレーム或いは異なる視点の画像を参照できるPピクチャや符号化済みの過去及び未来のフレーム(表示順番では未来のフレームではあるが、過去に処理されたフレームの意味)と異なる視点の画像を参照できるBピクチャの場合には、予測方式制御部1109は、エントロピー符号化部305で行う符号化により生成されるビット数と減算部302の原画像との残差から、例えば従来の手法(例えば、H.264 Reference Software JM ver. 13.2 Encoder, http://iphome.hhi.de/suehring/tml/, 2008)を用いてラグランジュコストを算出し、画面内予測方式、画面間予測方式、スキップモードのいずれかに決める。
同時に、予測方式制御部1109は、画面内予測符号化情報、画面間予測符号化情報若しくはスキップモード符号化情報のうち、上述の方法によって選択された予測方式に対応する符号化情報に、予測方式を特定できる情報を付加し予測符号化情報として、エントロピー符号化部305に出力する。
選択部1110は、図3の選択部310と処理内容はほぼ同様である。ただし、選択部1110は、予測方式制御部1109より入力される予測方式がスキップモードであった場合には、減算部302及び加算部308に何も出力しない。
スキップモード符号化部1119は、動き/視差ベクトル検出部314より動きベクトル或いは視差ベクトルと、視差入力部316より視差情報を入力する。ここで、視差入力部316から入力される視差情報は、符号化対象の視点画像に対応する奥行き画像に基づく視差情報(各ブロックの視差ベクトル)である。スキップモード符号化部1119は、符号化対象ブロックに隣接する符号化済みブロックで採用された動き/視差ベクトル及び上記視差情報に基づいて予測ベクトルを生成する。予測ベクトルの生成法については後述する。スキップモード符号化部1119は、生成された予測ベクトルに基づいて、該当する領域の画像ブロックをフレームメモリ312より抽出し、スキップモード予測画像ブロック信号として、予測方式制御部1109に出力する。
続いて、スキップモード符号化部1119が行う、本実施形態に係わる予測ベクトルの生成方法について説明する。
スキップモード符号化部1119は、図16に示すように、従来方式と同様に、符号化対象ブロックの上に隣接しているブロック(図中の隣接ブロックA)と右上に隣接しているブロック(図中の隣接ブロックB)と、左に隣接しているブロック(図中の隣接ブロックC)の動き/視差ベクトル(mv_a、mv_b、mv_c)の水平成分及び垂直成分それぞれの中央値を予測ベクトルとする。ただし、mv_a、mv_b、mv_cの中に視差ベクトルが存在した場合には、そのベクトルの水平成分、垂直成分を0に置き換える。こうして生成された予測ベクトルを動き予測ベクトルと呼ぶ。
スキップモード符号化部1119は、図16に示すように、従来方式と同様に、符号化対象ブロックの上に隣接しているブロック(図中の隣接ブロックA)と右上に隣接しているブロック(図中の隣接ブロックB)と、左に隣接しているブロック(図中の隣接ブロックC)の動き/視差ベクトル(mv_a、mv_b、mv_c)の水平成分及び垂直成分それぞれの中央値を予測ベクトルとする。ただし、mv_a、mv_b、mv_cの中に視差ベクトルが存在した場合には、そのベクトルの水平成分、垂直成分を0に置き換える。こうして生成された予測ベクトルを動き予測ベクトルと呼ぶ。
また、スキップモード符号化部1119は、符号化対象ブロックの符号化方式が視差補償予測方式の場合に動き/視差補償部313が行う予測ベクトル生成処理と同じ処理をすることで、もう1つ予測ベクトルを生成する。これを、視差予測ベクトルと呼ぶ。
スキップモード符号化部1119は、符号化対象画像に対応する符号化済みの奥行き画像と、動き予測ベクトルおよび視差予測ベクトルが示す画像に対応する符号化済みの奥行き画像とを奥行き画像符号化部1003から入力する。動き予測ベクトルと視差予測ベクトルが示す画像とは、例えば、符号化対象画像の直前に符号化された同一視点の画像と、別視点の画像である。
スキップモード符号化部1119は、符号化対象画像に対応する符号化済みの奥行き画像と、動き予測ベクトルおよび視差予測ベクトルが示す画像に対応する符号化済みの奥行き画像とを奥行き画像符号化部1003から入力する。動き予測ベクトルと視差予測ベクトルが示す画像とは、例えば、符号化対象画像の直前に符号化された同一視点の画像と、別視点の画像である。
スキップモード符号化部1119は、符号化対象ブロックに対応する奥行き画像の領域の奥行き値と、動き予測ベクトルが示す領域に対応する奥行き画像の領域の奥行き値とのSADを算出する。同様に、スキップモード符号化部1119は、符号化対象ブロックに対応する奥行き画像の領域の奥行き値と、視差予測ベクトルが示す領域に対応する奥行き画像の領域の奥行き値とのSADを算出する。スキップモード符号化部1119は、動き予測ベクトルおよび視差予測ベクトルのうち、SADの値が小さかった方を予測ベクトルとする。
本実施形態によれば、符号化対象画像に対応した奥行き画像を用いて視差情報を生成するため、全ての画像ブロックに対して視差情報を得ることができる。また、この視差情報は、符号化対象画像と同じ時刻の奥行き画像から算出された視差情報である。スキップモード符号化部1119は、この視差情報を用いて視差予測ベクトルを生成する。このため、従来のように、符号化対象画像と異なる時刻の視差ベクトルを用いることがないので、被写体とカメラの距離が時間変化することによる誤差も発生しない。従って、スキップモードによる符号化方式において、精度の優れた予測ベクトルを得ることができる。
<画像符号化装置1000のフローチャート>
次に、本実施形態に係る画像符号化装置1000が行う画像符号化処理について説明する。図22は、画像符号化装置1000が行う画像符号化処理を示すフローチャートである。図22を参照しながら説明する。
ステップS101、S103、S105及びS106の処理は、画像符号化装置100で実施される処理(図7のステップS101、S103、S105及びS106)と同様であるので、説明を省略する。また、図22のフローチャートは、図7とは、ステップS102、S104に換えて、ステップS802、S804を有する点が異なる。
次に、本実施形態に係る画像符号化装置1000が行う画像符号化処理について説明する。図22は、画像符号化装置1000が行う画像符号化処理を示すフローチャートである。図22を参照しながら説明する。
ステップS101、S103、S105及びS106の処理は、画像符号化装置100で実施される処理(図7のステップS101、S103、S105及びS106)と同様であるので、説明を省略する。また、図22のフローチャートは、図7とは、ステップS102、S104に換えて、ステップS802、S804を有する点が異なる。
ステップS802において、奥行き画像符号化部1003は、外部より入力した奥行き画像を符号化する。奥行き画像符号化部103は、奥行き画像の符号化データを図示しない符号構成部に出力する。同時に奥行き画像符号化部1003は、奥行き画像の符号化データを復号し、その結果を視差情報生成部104及び画像符号化部1006に出力する。その後、ステップS103に進む。
ステップS804において、画像符号化部1006は、外部より入力される視点画像と、視差情報生成部104より入力される視差情報と、奥行き画像符号化部1003より入力される復号された奥行き画像に基づいて画像の符号化を行う。画像符号化部1006は、同時に前述の予測符号化情報及び量子化係数も含めて符号化する。画像符号化部1006は、画像の符号化データを図示しない符号構成部に出力する。その後、ステップS105に進む。
上記ステップS804で実施される視点画像の符号化について、より詳しく説明する。
ステップS804の視点画像の符号化について、図23を用いて説明する。
ステップS301からステップS303と、ステップS306からステップS310の処理は、図9の各ステップの処理と同様である。また、図23のフローチャートは、図9のステップS304に換えて、ステップS904を有し、ステップS305に換えて、ステップS905、S906を有する。
ステップS804の視点画像の符号化について、図23を用いて説明する。
ステップS301からステップS303と、ステップS306からステップS310の処理は、図9の各ステップの処理と同様である。また、図23のフローチャートは、図9のステップS304に換えて、ステップS904を有し、ステップS305に換えて、ステップS905、S906を有する。
ステップS904において、画面間予測部1118は、画像入力部301から視点画像の画像ブロック信号と加算部308より復号(内部デコード)された参照画像ブロック信号と視差入力部316より視差情報及び奥行き画像符号化部1003から復号された奥行き画像を入力し、画面間予測を実施する。画面間予測部1118は、生成した画面間予測画像ブロック信号を予測方式制御部1109と選択部1110に、とスキップモード予測画像ブロック信号と画面間予測符号化情報を予測方式制御部1109に出力する。なお、最初の処理において、加算部308の処理が完了していない場合には、リセットされた画像ブロック(全ての画素値が0の画像ブロック信号)を入力するものとする。画面間予測部1118の処理が完了すると、ステップS905に進む。
ステップS905において、予測方式制御部1109は、画面内予測部317より画面内予測画像ブロック信号と画面内予測符号化情報、及び画面間予測部1118より画面間予測画像ブロック信号、スキップモード予測画像ブロック信号及び画面間予測符号化情報を受取り、前述のラグランジュコストに基づいて、符号化効率の良い予測モードを選択する。予測方式制御部1109は、選択した予測モードの情報を選択部1110に出力する。予測方式制御部1109は、選択した予測モードに対応する予測符号化情報に選択した予測モードを識別するための情報を付加して、エントロピー符号化部305に出力する。その後、ステップS906に進む。
ステップS906において、選択部1110は、予測方式制御部309から予測モードの情報を入力される。選択部1110は、予測モードの情報がスキップモードを示している場合には(Yes)、減算部302と加算部308には何も出力しない。その後、ステップS309に進む。この場合、差分画像が生成されないため、ステップS309で復号される画像ブロックは予測ベクトルが示す領域そのものとなる。
また、ステップS906において、選択部1110は、予測モードの情報がスキップモード以外を示している場合には(No)、画面内予測部317から入力される画面内予測画像ブロック信号、或いは画面間予測部1118から入力される画面間予測画像ブロック信号を選択して、減算部302と加算部308に出力する。その後、ステップS306に進む。
上述のステップS904で実施される画面間予測の処理フローについて、図24を用いて説明する。
ステップS401からステップS404の処理は、図10の各ステップの処理と同様である。また、図24のフローチャートは、ステップS404の後に、ステップS1005を有する。
ステップS401からステップS404の処理は、図10の各ステップの処理と同様である。また、図24のフローチャートは、ステップS404の後に、ステップS1005を有する。
ステップS1005において、スキップモード符号化部1119は、動き/視差ベクトル検出部314から符号化のために必要な情報と視差入力部316から視差情報を入力される。スキップモード符号化部1119は、符号化のために必要な情報と視差情報から予測ベクトルを生成する。スキップモード符号化部1119は、生成した予測ベクトルに基づいて該当する予測ブロックをフレームメモリ312より抽出する。スキップモード符号化部1119は、フレームメモリ312より抽出した予測ブロックを画面間予測画像ブロック信号として予測方式制御部1109に出力する。その後、画面間予測を終了する。
このように、本実施形態によれば、画像符号化装置1000は、奥行き画像から算出される視差情報(すなわち視差ベクトル)に基づいた予測ベクトルによるスキップモードによる符号化を行うことができる。従って、本実施形態によれば、符号化対象ブロック周辺が視差補償予測と異なる予測方式が採用されている場合であっても、予測ベクトルの精度を向上させることが可能となり、スキップモード時の符号化効率を高めることができる。
実施形態4<復号装置>
以下、図面を参照しながら本発明の第4の実施の形態について説明する。第4の実施形態では、第3の実施形態における画像符号化装置1000により符号化された画像の復号について説明する。図25は、本発明の一実施形態である画像復号装置の構成例を示す機能ブロック図である。
図25に示すように、本実施形態における画像復号装置1200は、撮影条件情報復号部701、奥行き画像復号部1203、視差情報生成部704、及び画像復号部1206を含んで構成される。なお、画像復号部1206の内部に記載したブロック(基準視点復号処理部702、非基準視点復号処理部1205)は、画像復号部1206の動作を概念的に説明するために利用する。
以下、図面を参照しながら本発明の第4の実施の形態について説明する。第4の実施形態では、第3の実施形態における画像符号化装置1000により符号化された画像の復号について説明する。図25は、本発明の一実施形態である画像復号装置の構成例を示す機能ブロック図である。
図25に示すように、本実施形態における画像復号装置1200は、撮影条件情報復号部701、奥行き画像復号部1203、視差情報生成部704、及び画像復号部1206を含んで構成される。なお、画像復号部1206の内部に記載したブロック(基準視点復号処理部702、非基準視点復号処理部1205)は、画像復号部1206の動作を概念的に説明するために利用する。
以下、画像復号装置1200の機能及び動作について説明する。
画像復号装置1200における撮影条件情報復号部701及び視差情報生成部704は画像復号装置700(図11)と同様なため、説明は省略する。
奥行き画像復号部1203は、従来方式であるH.264方式或いはMVC方式により圧縮符号化された符号化データを復号し、奥行き画像を復元する。奥行き画像復号部1203は、復元した奥行き画像を、視差情報生成部704、画像復号部1206及び画像復号装置1200の外部に出力する。
画像復号装置1200における撮影条件情報復号部701及び視差情報生成部704は画像復号装置700(図11)と同様なため、説明は省略する。
奥行き画像復号部1203は、従来方式であるH.264方式或いはMVC方式により圧縮符号化された符号化データを復号し、奥行き画像を復元する。奥行き画像復号部1203は、復元した奥行き画像を、視差情報生成部704、画像復号部1206及び画像復号装置1200の外部に出力する。
画像復号部1206は、画像復号部706に対して、非基準視点復号処理部1205の処理内容が異なる。なお、基準視点復号処理部702は、図11と同様であるので、説明を省略する。
非基準視点復号処理部1205は、視点間予測符号化に従う方式により圧縮符号化された符号化データを、復元された基準視点画像と、上記視差情報と、上記復号した奥行き画像に基づいて復号し、非基準視点の視点画像を復元する。非基準視点復号処理部1205は、復元した非基準視点の視点画像を画像復号装置1200の外部に出力する。
非基準視点復号処理部1205は、視点間予測符号化に従う方式により圧縮符号化された符号化データを、復元された基準視点画像と、上記視差情報と、上記復号した奥行き画像に基づいて復号し、非基準視点の視点画像を復元する。非基準視点復号処理部1205は、復元した非基準視点の視点画像を画像復号装置1200の外部に出力する。
続いて、画像復号部1206について図26を用いて説明する。
図26は、画像復号部1206の機能構成を示す概略ブロック図である。
画像復号部1206は、符号化データ入力部813、エントロピー復号部1301、逆量子化部802、逆直交変換部803、加算部804、予測方式制御部1305、選択部1306、デブロッキング・フィルタ部807、フレームメモリ808、動き/視差補償部1309、スキップモード復号部1317、イントラ予測部810、画像出力部812及び視差入力部814を含んで構成される。なお、説明のために、画面内予測部816と画面間予測部1315を点線で図示する。画面内予測部816はイントラ予測部810を含み、画面間予測部815はデブロッキング・フィルタ部807、フレームメモリ808、動き/視差補償部1309及びスキップモード復号部1317を含む。
図26は、画像復号部1206の機能構成を示す概略ブロック図である。
画像復号部1206は、符号化データ入力部813、エントロピー復号部1301、逆量子化部802、逆直交変換部803、加算部804、予測方式制御部1305、選択部1306、デブロッキング・フィルタ部807、フレームメモリ808、動き/視差補償部1309、スキップモード復号部1317、イントラ予測部810、画像出力部812及び視差入力部814を含んで構成される。なお、説明のために、画面内予測部816と画面間予測部1315を点線で図示する。画面内予測部816はイントラ予測部810を含み、画面間予測部815はデブロッキング・フィルタ部807、フレームメモリ808、動き/視差補償部1309及びスキップモード復号部1317を含む。
図25において画像復号部1206の動作を説明した際には、基準視点の復号とそれ以外の非基準視点の復号を明示的に分けて、基準視点復号処理部702の処理と非基準視点復号処理部1205の処理としたが、お互いに共通する処理が多いため、以下では基準視点復号処理と非基準視点復号処理を統合した形態について説明を行う。
符号化データ入力部813、逆量子化部802、逆直交変換部803、加算部804、デブロッキング・フィルタ部807、フレームメモリ808、イントラ予測部810、画像出力部812及び視差入力部814は、画像復号部706(図12)と同様のため説明を省略する。
符号化データ入力部813、逆量子化部802、逆直交変換部803、加算部804、デブロッキング・フィルタ部807、フレームメモリ808、イントラ予測部810、画像出力部812及び視差入力部814は、画像復号部706(図12)と同様のため説明を省略する。
エントロピー復号部1301は、符号化データ入力部813から入力された符号化データを、エントロピー符号化部305が行った符号化方法(例えば、可変長符号化)と逆の処理(例えば、可変長復号)であるエントロピー復号して、差分画像符号と量子化係数及び予測符号化情報を抽出する。エントロピー復号部1301は、差分画像符号と量子化係数を逆量子化部802に出力する。ただし、符号化データがスキップモードで符号化されている場合、差分画像符号と量子化係数が存在しないため、エントロピー復号部1301は、全ての値が0の差分画像符号と量子化係数を逆量子化部802に出力する。また、エントロピー復号部1301は、予測符号化情報を予測方式制御部1305に出力する。
予測方式制御部1305は、エントロピー復号部1301から入力される予測符号化情報の中から、画像符号化装置1000で採用されたブロック単位の予測方式を取り出す。予測方式は、画面内予測、画面間予測或いはスキップモードである。予測方式制御部1305は、抽出した予測方式に関する情報を選択部1306に出力する。また、予測方式制御部1305は、エントロピー復号部1301から入力される予測符号化情報の中から符号化情報を取り出し、抽出した予測方式に対応する処理部に符号化情報を出力する。
予測方式制御部1305は、予測方式が画面内予測である場合には、画面内予測部816に画面内予測符号化情報として符号化情報を出力する。予測方式制御部1305は、予測方式が画面間予測である場合には、画面間予測部1315の動き/視差補償部1309に画面間予測符号化情報として符号化情報を出力する。予測方式制御部1305は、予測方式がスキップモードである場合には、画面間予測部1315のスキップモード復号部1317にスキップモード符号化情報として符号化情報を出力する。
選択部1306は、予測方式制御部1305から処理対象のブロックの予測方式を入力される。選択部1306は、入力された予測方式に従って、画面内予測部816から入力される画面内予測画像ブロック信号、又は画面間予測部1315の動き/視差補償部1309から入力される画面間予測画像ブロック信号、又は画面間予測部1315のスキップモード復号部1317から入力されるスキップモード予測画像ブロック信号の中から1つを選択する。予測方式が、画面内予測の場合には画面内予測画像ブロック信号を選択し、画面間予測の場合には画面間予測画像ブロック信号を選択し、スキップモードの場合にはスキップモード予測画像ブロック信号を選択する。選択部1306は、選択した予測画像ブロック信号を、加算部804に出力する。
画面間予測部1315は、画面間予測部815とは、動き/視差補償部809に換えて動き/視差補償部1309を有する点と、スキップモード復号部1317が追加されている点が異なる。
動き/視差補償部1309は、動き/視差補償部809と処理内容は同様であるが、生成した動き/視差ベクトルをスキップモード復号部1317に出力する点が異なる。
動き/視差補償部1309は、動き/視差補償部809と処理内容は同様であるが、生成した動き/視差ベクトルをスキップモード復号部1317に出力する点が異なる。
スキップモード復号部1317は、予測方式制御部1305からスキップモード符号化情報と、視差入力部814から視差情報と、奥行き画像復号部1203から復号された奥行き画像と、動き/視差補償部1309から動きベクトル或いは視差ベクトルを入力される。スキップモード復号部1317は、処理対象のブロックに隣接しているブロックの動きベクトル或いは視差ベクトルと、視差情報と、奥行き画像とに基づいて予測ベクトルを生成する。予測ベクトルの生成方法は、画像符号化装置1000のスキップモード符号化部1119の生成方法と同様である。スキップモード復号部1317は、生成した予測ベクトルが示す領域に対応する画像ブロックをフレームメモリ808から抽出する。スキップモード復号部1317は、抽出した画像ブロックをスキップモード予測画像ブロック信号として、選択部1306に出力する。
<画像復号装置1200のフローチャート>
次に、本実施形態に係る画像復号装置1200が行う画像復号処理について説明する。図27は、画像復号装置1200が行う画像復号処理を示すフローチャートである。図27を参照しながら説明する。
次に、本実施形態に係る画像復号装置1200が行う画像復号処理について説明する。図27は、画像復号装置1200が行う画像復号処理を示すフローチャートである。図27を参照しながら説明する。
ステップS501、ステップS503及びステップS504は、画像復号装置700(図13)が行う処理と同様である。図27のフローチャートは、図13とは、ステップS502に換えてステップS1102を有する点と、ステップS505に換えてステップS1105を有する点が異なる。
ステップS1102において、奥行き画像復号部1203は、ステップS501で分離・抽出された奥行き画像符号化データを復号し、結果を視差情報生成部704、画像復号部1206及び画像復号装置1200の外部に出力する。その後、ステップS503に進む。
ステップS1102において、奥行き画像復号部1203は、ステップS501で分離・抽出された奥行き画像符号化データを復号し、結果を視差情報生成部704、画像復号部1206及び画像復号装置1200の外部に出力する。その後、ステップS503に進む。
ステップS1105において、画像復号部1206は、ステップS501で分離・抽出された画像符号化データと、視差情報生成部704から視差情報と、奥行き画像復号部1203から復号された奥行き画像が入力される。画像復号部1206は、入力された画像符号化データと視差情報と奥行き画像に基づいて、画像を復号する。画像復号部1206は、結果を画像復号装置1200の外部に出力する。
続いて、ステップS1105で実施される視点画像の復号について、図28を用いて説明する。
ステップS601、ステップS602、ステップS604、ステップS607及びステップS608は、図14の各ステップと同様である。図28のフローチャートは、図14とは、ステップS603、S605、S606の各々に換えてステップS1203、S1205、S1206を有する点が異なる。
ステップS601、ステップS602、ステップS604、ステップS607及びステップS608は、図14の各ステップと同様である。図28のフローチャートは、図14とは、ステップS603、S605、S606の各々に換えてステップS1203、S1205、S1206を有する点が異なる。
ステップS1203において、エントロピー復号部1301は、符号化データ入力部813から入力された画像符号化データをエントロピー復号し、差分画像符号と量子化係数、及び予測符号化情報を生成する。ただし、処理対象のブロックがスキップモードで符号化されていた場合には、差分画像符号と量子化係数が存在しないため、エントロピー復号部1301は、全ての値が0の差分画像符号と量子化係数を生成する。
エントロピー復号部1301は、差分画像符号と量子化係数を、逆量子化部802に出力し、予測符号化情報を予測方式制御部1305に出力する。予測方式制御部1305は、エントロピー復号部1301から予測符号化情報を入力し、予測方式に関する情報とその予測方式に対応する符号化情報を取り出す。 予測方式制御部1305は、予測方式が画面内予測の場合には、符号化情報を画面内予測符号化情報として画面内予測部816に出力し、その後、ステップS604に進む。
予測方式制御部1305は、予測方式が画面間予測の場合には、符号化情報を画面間予測符号化情報として画面間予測部815の動き/視差補償部1309に出力し、スキップモードの場合には、符号化情報をスキップモード符号化情報として画面内予測部816のスキップモード復号部1317に出力し、その後、ステップS1205に進む。
ステップS1205において、画面間予測部1315は、予測方式制御部1305から入力される画面間予測符号化情報と、加算部804から入力される復号画像ブロック信号と、視差入力部814から入力される視差情報(すなわち視差ベクトル)、及び奥行き画像復号部1203から入力される復号された奥行き画像に基づいて、画面間予測又はスキップモードによる復号処理を実施する。画面間予測部815は、生成された画面間予測画像ブロック信号又はスキップモード予測画像ブロック信号を選択部1306に出力する。画面間予測及びスキップモードの処理については後述する。なお、最初の処理において、加算部804の処理が完了していない場合には、リセットされた画像ブロック信号(全ての画素値が0の画像ブロック信号)を入力するものとする。その後、ステップS1206に進む。
ステップS1206において、選択部1306は、予測方式制御部1305から出力された予測方式に関する情報を入力し、予測方式に関する情報に基づいて画面内予測部816から入力された画面内予測画像ブロック信号、又は画面間予測部1315の動き/視差補償部1309から入力された画面間予測画像信号、又は画面間予測部1315のスキップモード復号部1317から入力されたスキップモード予測画像ブロック信号のいずれかを加算部804に出力する。その後、ステップS607に進む。
画面間予測部1315の処理フローについては、図29を用いて説明する。
ステップS701、ステップS702及びステップS703は、図15の各ステップと同様である。図29のフローチャートと、図15とは、ステップS702とS703の間にステップS1303を有する点と、ステップS1303による分岐先の一方にステップS1304を有する点が異なる。
ステップS1303において、画面間予測部1315は処理対象のブロックの予測方式が画面間予測の場合(Yes)、予測方式制御部1305から画面間予測符号化情報を受け取り、ステップS703に進む。画面間予測部1315は処理対象のブロックの予測方式が画面間予測ではない、即ちスキップモードの場合(No)、予測方式制御部1305からスキップモード予測符号化情報を受け取り、ステップS1304に進む。
ステップS701、ステップS702及びステップS703は、図15の各ステップと同様である。図29のフローチャートと、図15とは、ステップS702とS703の間にステップS1303を有する点と、ステップS1303による分岐先の一方にステップS1304を有する点が異なる。
ステップS1303において、画面間予測部1315は処理対象のブロックの予測方式が画面間予測の場合(Yes)、予測方式制御部1305から画面間予測符号化情報を受け取り、ステップS703に進む。画面間予測部1315は処理対象のブロックの予測方式が画面間予測ではない、即ちスキップモードの場合(No)、予測方式制御部1305からスキップモード予測符号化情報を受け取り、ステップS1304に進む。
ステップS1304において、画面間予測部1315のスキップモード復号部1317は、予測方式制御部1305からスキップモード符号化情報と、視差入力部814から視差情報と、奥行き画像復号部1203から復号された奥行き画像と、動き/視差補償部1309から動きベクトル或いは視差ベクトルを入力される。スキップモード復号部1317は、処理対象のブロックに隣接しているブロックの動きベクトル或いは視差ベクトルと、視差情報と、奥行き画像とに基づいて予測ベクトルを生成する。予測ベクトルの生成方法は、図24のステップS1005と同様である。スキップモード復号部1317は、生成した予測ベクトルが示す領域に対応する画像ブロックをフレームメモリ312から抽出する。スキップモード復号部1317は、抽出した画像ブロックをスキップモード予測画像ブロック信号として、選択部1306に出力する。その後、画面間予測処理を終了する。
このように、本実施形態によれば、画像復号装置1200は、奥行き画像と奥行き画像から算出される視差情報(すなわち視差ベクトル)に基づいた予測ベクトルによるスキップモードを用いて符号化された画像の復号を行うことができる。つまり、本実施形態によれば、図21の画像符号化装置1000のようにして予測ベクトルの精度を向上させスキップモード時の符号化効率を高めて符号化されたデータを復号することができる。
(実施形態5)<符号化装置>
以下、図面を参照しながら本発明の第5の実施の形態について説明する。第5の実施形態では、ベクトル情報を伝送しない符号化モードであるダイレクトモード時の予測ベクトル生成方法と生成された予測ベクトルを用いた符号化について説明する。
以下、図面を参照しながら本発明の第5の実施の形態について説明する。第5の実施形態では、ベクトル情報を伝送しない符号化モードであるダイレクトモード時の予測ベクトル生成方法と生成された予測ベクトルを用いた符号化について説明する。
ダイレクトモードとスキップモードの違いは、符号化対象のブロックと予測画像ブロック信号との差分情報を符号化するか否かである。そのため、本実施形態では実施形態3、4のスキップモードがダイレクトモードに置き換わり、そのダイレクトモードで符号化した際に差分情報を符号化する点が実施形態3、4と異なっているのみであり、他の点は同様である。
また、ダイレクトモードはBピクチャにのみ適用可能なため、以下の説明の中でのダイレクトモードにおける符号化対象画像は全てBピクチャとする。
また、ダイレクトモードには空間ダイレクトモードと時間ダイレクトモードがあるが(非特許文献1)、以下の実施形態では空間ダイレクトモードについてのみ説明する。
また、ダイレクトモードはBピクチャにのみ適用可能なため、以下の説明の中でのダイレクトモードにおける符号化対象画像は全てBピクチャとする。
また、ダイレクトモードには空間ダイレクトモードと時間ダイレクトモードがあるが(非特許文献1)、以下の実施形態では空間ダイレクトモードについてのみ説明する。
図30は、本実施形態における画像符号化装置の構成例を示す機能ブロック図である。
画像符号化装置1400は、撮影条件情報符号化部101、奥行き画像符号化部1003、視差情報生成部104、及び画像符号化部1406を含んで構成される。
撮影条件情報符号化部101、及び視差情報生成部104は、画像符号化装置100(図1)と同様なため、説明は省略する。奥行き画像符号化部1003は、画像符号化装置1000(図20)と同様なため、説明は省略する。
画像符号化装置1400は、撮影条件情報符号化部101、奥行き画像符号化部1003、視差情報生成部104、及び画像符号化部1406を含んで構成される。
撮影条件情報符号化部101、及び視差情報生成部104は、画像符号化装置100(図1)と同様なため、説明は省略する。奥行き画像符号化部1003は、画像符号化装置1000(図20)と同様なため、説明は省略する。
画像符号化部1406については図31を用いて説明する。図31は、画像符号化部1406の機能構成を示す概略ブロック図である。
画像符号化部1406は、画像入力部301、減算部302、直交変換部303、量子化部304、エントロピー符号化部305、逆量子化部306、逆直交変換部307、加算部308、予測方式制御部1509、選択部1510、デブロッキング・フィルタ部311、フレームメモリ(フレームメモリ部)312、動き/視差補償部313、動き/視差ベクトル検出部314、イントラ予測部315、視差入力部316、及びダイレクトモード符号化部1519を含んで構成される。
画像符号化部1406は、画像入力部301、減算部302、直交変換部303、量子化部304、エントロピー符号化部305、逆量子化部306、逆直交変換部307、加算部308、予測方式制御部1509、選択部1510、デブロッキング・フィルタ部311、フレームメモリ(フレームメモリ部)312、動き/視差補償部313、動き/視差ベクトル検出部314、イントラ予測部315、視差入力部316、及びダイレクトモード符号化部1519を含んで構成される。
なお、説明のために、画面内予測部317と画面間予測部1518を点線で図示する。画面内予測部317はイントラ予測部315を含み、画面間予測部1518はデブロッキング・フィルタ部311、フレームメモリ312、動き/視差補償部313、動き/視差ベクトル検出部314、及びダイレクトモード符号化部1519を含む。
画像入力部301、減算部302、直交変換部303、量子化部304、エントロピー符号化部305、逆量子化部306、逆直交変換部307、加算部308、デブロッキング・フィルタ部311、フレームメモリ(フレームメモリ部)312、動き/視差補償部313、動き/視差ベクトル検出部314、イントラ予測部315、及び視差入力部316は画像符号化部106(図3)の各ブロックと同様なため、説明を省略する。
ダイレクトモード符号化部1519は、同一視点の画像を参照するダイレクトモードによる符号化処理と、異なる視点の画像を参照するダイレクトモードによる符号化処理との両方を行う。ただし、異なる視点の画像を参照する処理を行う場合には、実施形態1と同様、動き/視差ベクトル検出部314が検出した視差ベクトルに加えて、視差入力部316が視差情報生成部104から取得した視差情報(各ブロックの視差ベクトル)を予測ベクトル生成の際に用いる。また、2つの処理でそれぞれ生成した予測ベクトルのうち、奥行き画像を用いることで予測ベクトルを選択しダイレクトモードによる符号化を行う。詳細は後述する。
予測方式制御部1509は、入力画像のピクチャの種類(符号化対象画像が予測画像に参照できる画像を識別するための情報で、Iピクチャ、Pピクチャ、Bピクチャなどがある。なお、ピクチャの種類は、量子化係数と同様に外部より与えられるパラメータによって決まるもので、従来方式のMVCと同じ方法を利用できる。)及び符号化効率に基づいて、画面内予測部317より入力される画面内予測画像ブロック信号とその画面内予測符号化情報、及び画面間予測部1518の動き/視差補償部313より入力される画面間予測画像ブロック信号とその画面間符号化情報、及び画面間予測部1518のダイレクトモード符号化部1519より入力されるダイレクトモード予測画像ブロック信号に基づいてブロック毎の予測方式を決める。予測方式制御部1509は、決めた予測方式の情報を選択部1510に出力する。
予測方式制御部1509は、入力画像のピクチャの種類を監視し、入力された符号化対象画像が画面内の情報しか参照できないIピクチャの場合は画面内予測方式を確定的に選択する。符号化済みの過去のフレーム或いは異なる視点の画像を参照できるPピクチャや符号化済みの過去及び未来のフレーム(表示順番では未来のフレームではあるが、過去に処理されたフレームの意味)と異なる視点の画像を参照できるBピクチャの場合には、予測方式制御部1509は、エントロピー符号化部305で行う符号化により生成されるビット数と減算部302の原画像との残差から、例えば従来の手法(例えば、H.264 Reference Software JM ver. 13.2 Encoder, http://iphome.hhi.de/suehring/tml/, 2008)を用いてラグランジュコストを算出し、画面内予測方式、画面間予測方式、ダイレクトモードのいずれかに決める。
同時に、予測方式制御部1509は、画面内予測符号化情報、画面間予測符号化情報若しくはダイレクトモード符号化情報のうち、上述の方法によって選択された予測方式に対応する符号化情報に、予測方式を特定できる情報を付加し予測符号化情報として、エントロピー符号化部305に出力する。
選択部1510は、予測方式制御部1509より予測方式と、画面間予測部317より画面内予測画像ブロック信号と、画面間予測部1518の動き/視差補償部313より画面間予測画像ブロック信号と、画面間予測部1518のダイレクトモード符号化部1519よりダイレクトモード予測画像ブロック信号を入力として受け取る。選択部1510は、予測方式に対応する予測画像ブロック信号を選択する。選択部1510は、選択した予測画像ブロック信号を減算部302及び加算部308に出力する。
ダイレクトモード符号化部1519は、動き/視差ベクトル検出部314より動きベクトル或いは視差ベクトルと、視差入力部316より視差情報を入力する。ここで、視差入力部316から入力される視差情報は、符号化対象の視点画像に対応する奥行き画像に基づく視差情報(各ブロックの視差ベクトル)である。
ダイレクトモード符号化部1519は、符号化済みの画像内の符号化対象ブロックと同じ位置のブロックで採用された動き/視差ベクトル及び上記視差情報に基づいて予測ベクトルを生成する。予測ベクトルの生成法については後述する。ダイレクトモード符号化部1519は、生成された予測ベクトルに基づいて、該当する領域の画像ブロックをフレームメモリ312より抽出し、ダイレクトモード予測画像ブロック信号として、予測方式制御部1509に出力する。
続いて、ダイレクトモード符号化部1519が行う、本実施形態に係わる予測ベクトルの生成方法について説明する。
ダイレクトモード符号化部1519は、図21のスキップモード符号化部1119と同様の処理を行うことで、動き予測ベクトルと視差予測ベクトルを生成する。ただし、ダイレクトモード符号化部1519は、過去の画像に対する動き予測ベクトルと、未来の画像に対する動き予測ベクトルをそれぞれ生成する。また、ダイレクトモード符号化部1519は、別の視点の画像に対する視差予測ベクトルと、前記別の視点とはさらに異なる視点の画像に対する動き予測ベクトルをそれぞれ生成する。
ダイレクトモード符号化部1519は、図21のスキップモード符号化部1119と同様の処理を行うことで、動き予測ベクトルと視差予測ベクトルを生成する。ただし、ダイレクトモード符号化部1519は、過去の画像に対する動き予測ベクトルと、未来の画像に対する動き予測ベクトルをそれぞれ生成する。また、ダイレクトモード符号化部1519は、別の視点の画像に対する視差予測ベクトルと、前記別の視点とはさらに異なる視点の画像に対する動き予測ベクトルをそれぞれ生成する。
ダイレクトモード符号化部1519は、符号化対象ブロックに対応する奥行き画像の領域の奥行き値と、2つの動き予測ベクトルが示す領域に対応する奥行き画像の領域の奥行き値とのSADをそれぞれ算出し、その平均値を算出する。同様に、ダイレクトモード符号化部1519は、符号化対象ブロックに対応する奥行き画像の領域の奥行き値と、2つの視差予測ベクトルが示す領域に対応する奥行き画像の領域の奥行き値とのSADをそれぞれ算出し、その平均値を算出する。ダイレクトモード符号化部1519は、動き予測ベクトルおよび視差予測ベクトルのうち、SADの平均値が小さかった方を予測ベクトルとする。
本実施形態によれば、符号化対象画像に対応した奥行き画像を用いて視差情報を生成するため、全ての画像ブロックに対して視差情報を得ることができる。また、この視差情報は、符号化対象画像と同じ時刻の奥行き画像から算出された視差情報である。ダイレクトモード符号化部1519は、この視差情報を用いて視差予測ベクトルを生成する。このため、従来のように、符号化対象画像と異なる時刻の視差ベクトルを用いることがないので、被写体とカメラの距離が時間変化することによる誤差も発生しない。従って、ダイレクトモードによる符号化方式において、精度の優れた予測ベクトルを得ることができる。
<画像符号化装置1400のフローチャート>
次に、本実施形態に係る画像符号化装置1400が行う画像符号化処理について説明する。図32は、画像符号化装置1400が行う画像符号化処理を示すフローチャートである。図32を参照しながら説明する。
次に、本実施形態に係る画像符号化装置1400が行う画像符号化処理について説明する。図32は、画像符号化装置1400が行う画像符号化処理を示すフローチャートである。図32を参照しながら説明する。
ステップS101、S103、S105及びS106の処理は、画像符号化装置100(図7)で実施される処理と同様である。ステップS802の処理は、画像符号化装置1000(図22)で実施される処理と同様である。なお、図32のフローチャートは、図22とは、ステップS804に換えて、ステップS1404を有する点が異なる。
ステップS1404において、画像符号化部1406は、外部より入力される視点画像と、視差情報生成部104より入力される視差情報と、奥行き画像符号化部1003より入力される復号された奥行き画像に基づいて画像の符号化を行う。画像符号化部1406は、同時に前述の予測符号化情報及び量子化係数も含めて符号化する。画像符号化部1406は、画像の符号化データを図示しない符号構成部に出力する。その後、ステップS105に進む。
ステップS1404において、画像符号化部1406は、外部より入力される視点画像と、視差情報生成部104より入力される視差情報と、奥行き画像符号化部1003より入力される復号された奥行き画像に基づいて画像の符号化を行う。画像符号化部1406は、同時に前述の予測符号化情報及び量子化係数も含めて符号化する。画像符号化部1406は、画像の符号化データを図示しない符号構成部に出力する。その後、ステップS105に進む。
上記ステップS1404で実施される視点画像の符号化について、より詳しく説明する。
ステップS1404の視点画像の符号化について、図33を用いて説明する。
ステップS301からステップS303と、ステップS306からステップS310の処理は、図9の各ステップの処理と同様である。図33のフローチャートは、図9とは、ステップS304、S305に換えて、ステップS1504、S1505を有する点が異なる。
ステップS1404の視点画像の符号化について、図33を用いて説明する。
ステップS301からステップS303と、ステップS306からステップS310の処理は、図9の各ステップの処理と同様である。図33のフローチャートは、図9とは、ステップS304、S305に換えて、ステップS1504、S1505を有する点が異なる。
ステップS1504において、画面間予測部1518は、画像入力部301から視点画像の画像ブロック信号と加算部308より復号(内部デコード)された参照画像ブロック信号と視差入力部316より視差情報及び奥行き画像符号化部1003から復号された奥行き画像を入力し、画面間予測を実施する。画面間予測部1518は、生成した画面間予測画像ブロック信号を予測方式制御部1509と選択部1510に、ダイレクトモード予測画像ブロック信号と画面間予測符号化情報を予測方式制御部1509に出力する。なお、最初の処理において、加算部308の処理が完了していない場合には、リセットされた画像ブロック(全ての画素値が0の画像ブロック信号)を入力する。画面間予測部1518の処理が完了すると、ステップS1505に進む。
ステップS1505において、予測方式制御部1509は、画面内予測部317より画面内予測画像ブロック信号と画面内予測符号化情報、及び画面間予測部1518より画面間予測画像ブロック信号、ダイレクトモード予測画像ブロック信号及び画面間予測符号化情報を受取り、前述のラグランジュコストに基づいて、符号化効率の良い予測モードを選択する。予測方式制御部1509は、選択した予測モードの情報を選択部1510に出力する。予測方式制御部1509は、選択した予測モードに対応する予測符号化情報に選択した予測モードを識別するための情報を付加して、エントロピー符号化部305に出力する。その後、ステップS306に進む。
上述のステップS1504で実施される画面間予測の処理フローについて、図34を用いて説明する。
ステップS401からステップS404の処理は、図10の各ステップで実施される処理と同様である。図34のフローチャートは、図10とは、ステップS404の後にステップS1605を有する点が異なる。
ステップS401からステップS404の処理は、図10の各ステップで実施される処理と同様である。図34のフローチャートは、図10とは、ステップS404の後にステップS1605を有する点が異なる。
ステップS1605において、ダイレクトモード符号化部1519は、動き/視差ベクトル検出部314から符号化のために必要な情報と視差入力部316から視差情報を入力される。ダイレクトモード符号化部1519は、符号化のために必要な情報と視差情報から予測ベクトルを生成する。ダイレクトモード符号化部1519は、生成した予測ベクトルに基づいて該当する予測ブロックをフレームメモリ312より抽出する。ダイレクトモード符号化部1519は、フレームメモリ312より抽出した予測ブロックを画面間予測画像ブロック信号として予測方式制御部1509に出力する。その後、画面間予測を終了する。
このように、本実施形態によれば、画像符号化装置1400は、奥行き画像から算出される視差情報(すなわち視差ベクトル)に基づいた予測ベクトルによるダイレクトモードによる符号化を行うことができる。従って、本実施形態によれば、符号化対象ブロック周辺が視差補償予測と異なる予測方式が採用されている場合であっても、予測ベクトルの精度を向上させることが可能となり、ダイレクトモード時の符号化効率を高めることができる。
(実施形態6)<復号装置>
以下、図面を参照しながら本発明の第6の実施の形態について説明する。第6の実施形態では、第5の実施形態における画像符号化装置1400により符号化された画像の復号について説明する。図35は、本発明の一実施形態である画像復号装置の構成例を示す機能ブロック図である。
図35に示すように、本実施形態における画像復号装置1500は、撮影条件情報復号部701、奥行き画像復号部1203、視差情報生成部704、及び画像復号部1506を含んで構成される。なお、画像復号部1506の内部に記載したブロック(基準視点復号処理部702、非基準視点復号処理部1505)は、画像復号部1506の動作を概念的に説明するために利用する。
以下、図面を参照しながら本発明の第6の実施の形態について説明する。第6の実施形態では、第5の実施形態における画像符号化装置1400により符号化された画像の復号について説明する。図35は、本発明の一実施形態である画像復号装置の構成例を示す機能ブロック図である。
図35に示すように、本実施形態における画像復号装置1500は、撮影条件情報復号部701、奥行き画像復号部1203、視差情報生成部704、及び画像復号部1506を含んで構成される。なお、画像復号部1506の内部に記載したブロック(基準視点復号処理部702、非基準視点復号処理部1505)は、画像復号部1506の動作を概念的に説明するために利用する。
以下、画像復号装置1500の機能及び動作について説明する。
画像復号装置1500における撮影条件情報復号部701及び視差情報生成部704は画像復号装置700(図11)と同様なため、説明は省略する。
奥行き画像復号部1203は、従来方式であるH.264方式或いはMVC方式により圧縮符号化された符号化データを復号し、奥行き画像を復元する。奥行き画像復号部1203は、復元した奥行き画像を、視差情報生成部704、画像復号部1506及び画像復号装置1500の外部に出力する。
画像復号装置1500における撮影条件情報復号部701及び視差情報生成部704は画像復号装置700(図11)と同様なため、説明は省略する。
奥行き画像復号部1203は、従来方式であるH.264方式或いはMVC方式により圧縮符号化された符号化データを復号し、奥行き画像を復元する。奥行き画像復号部1203は、復元した奥行き画像を、視差情報生成部704、画像復号部1506及び画像復号装置1500の外部に出力する。
画像復号部1506は、画像復号部706に対して、非基準視点復号処理部1505の処理内容が異なる。なお、基準視点復号処理部702は、図11と同様であるので、説明を省略する。
非基準視点復号処理部1505は、視点間予測符号化に従う方式により圧縮符号化された符号化データを、復元された基準視点画像と、上記視差情報と、上記復号した奥行き画像に基づいて復号し、非基準視点の視点画像を復元する。非基準視点復号処理部1505は、復元した非基準視点の視点画像を画像復号装置1500の外部に出力する。
非基準視点復号処理部1505は、視点間予測符号化に従う方式により圧縮符号化された符号化データを、復元された基準視点画像と、上記視差情報と、上記復号した奥行き画像に基づいて復号し、非基準視点の視点画像を復元する。非基準視点復号処理部1505は、復元した非基準視点の視点画像を画像復号装置1500の外部に出力する。
続いて、画像復号部1506について図36を用いて説明する。
図36は、画像復号部1506の機能構成を示す概略ブロック図である。
画像復号部1506は、符号化データ入力部813、エントロピー復号部801、逆量子化部802、逆直交変換部803、加算部804、予測方式制御部1605、選択部1606、デブロッキング・フィルタ部807、フレームメモリ808、動き/視差補償部1309、ダイレクトモード復号部1617、イントラ予測部810、画像出力部812及び視差入力部814を含んで構成される。なお、説明のために、画面内予測部816と画面間予測部1615を点線で図示する。画面内予測部816はイントラ予測部810を含み、画面間予測部1615はデブロッキング・フィルタ部807、フレームメモリ808、動き/視差補償部1309及びダイレクトモード復号部1617を含む。
図36は、画像復号部1506の機能構成を示す概略ブロック図である。
画像復号部1506は、符号化データ入力部813、エントロピー復号部801、逆量子化部802、逆直交変換部803、加算部804、予測方式制御部1605、選択部1606、デブロッキング・フィルタ部807、フレームメモリ808、動き/視差補償部1309、ダイレクトモード復号部1617、イントラ予測部810、画像出力部812及び視差入力部814を含んで構成される。なお、説明のために、画面内予測部816と画面間予測部1615を点線で図示する。画面内予測部816はイントラ予測部810を含み、画面間予測部1615はデブロッキング・フィルタ部807、フレームメモリ808、動き/視差補償部1309及びダイレクトモード復号部1617を含む。
図35において画像復号部1506の動作を説明した際には、基準視点の復号とそれ以外の非基準視点の復号を明示的に分けて、基準視点復号処理部702の処理と非基準視点復号処理部1505の処理としたが、お互いに共通する処理が多いため、以下では基準視点復号処理と非基準視点復号処理を統合した形態について説明を行う。
符号化データ入力部813、エントロピー復号部801、逆量子化部802、逆直交変換部803、加算部804、デブロッキング・フィルタ部807、フレームメモリ808、動き/視差補償部1309、イントラ予測部810、画像出力部812及び視差入力部814は、画像復号部1206(図26)と同様のため説明を省略する。
予測方式制御部1605は、エントロピー復号部801から入力される予測符号化情報の中から、画像符号化装置1400で採用されたブロック単位の予測方式を取り出す。予測方式は、画面内予測、画面間予測或いはダイレクトモードである。予測方式制御部1605は、抽出した予測方式に関する情報を選択部1606に出力する。また、予測方式制御部1605は、エントロピー復号部801から入力される予測符号化情報の中から符号化情報を取り出し、抽出した予測方式に対応する処理部に符号化情報を出力する。予測方式制御部1605は、予測方式が画面内予測である場合には、画面内予測部816に画面内予測符号化情報として符号化情報を出力する。予測方式制御部1605は、予測方式が画面間予測である場合には、画面間予測部1615の動き/視差補償部1309に画面間予測符号化情報として符号化情報を出力する。予測方式制御部1605は、予測方式がダイレクトモードである場合には、画面間予測部1615のダイレクトモード復号部1617にダイレクトモード符号化情報として符号化情報を出力する。
選択部1606は、予測方式制御部1605から処理対象のブロックの予測方式を入力される。選択部1606は、入力された予測方式に従って、画面内予測部816から入力される画面内予測画像ブロック信号、又は画面間予測部1615の動き/視差補償部1309から入力される画面間予測画像ブロック信号、又は画面間予測部1615のダイレクトモード復号部1617から入力されるダイレクトモード予測画像ブロック信号を選択する。予測方式が、画面内予測の場合には画面内予測画像ブロック信号を選択し、画面間予測の場合には画面間予測画像ブロック信号を選択し、ダイレクトモードの場合にはダイレクトモード予測画像ブロック信号を選択する。選択部1606は、選択した予測画像ブロック信号を、加算部804に出力する。
画面間予測部1615は、画面間予測部1315に対して、スキップモード復号部1317に換えてダイレクトモード復号部1617を有する点が異なる。
動き/視差補償部1309は、図26の同ブロックと処理内容は同様である。
動き/視差補償部1309は、図26の同ブロックと処理内容は同様である。
ダイレクトモード復号部1617は、予測方式制御部1605からダイレクトモード符号化情報と、視差入力部814から視差情報と、奥行き画像復号部1203から復号された奥行き画像と、動き/視差補償部1309から動きベクトル或いは視差ベクトルを入力される。ダイレクトモード復号部1617は、処理対象のブロックに隣接しているブロックの動きベクトル或いは視差ベクトルと、視差情報と、奥行き画像とに基づいて予測ベクトルを生成する。予測ベクトルの生成方法は、画像符号化装置1400のダイレクトモード符号化部1519の生成方法と同様である。ダイレクトモード復号部1617は、生成した予測ベクトルが示す領域に対応する画像ブロックをフレームメモリ808から抽出する。ダイレクトモード復号部1617は、抽出した画像ブロックをダイレクトモード予測画像ブロック信号として、選択部1606に出力する。
<画像復号装置1500のフローチャート>
次に、本実施形態に係る画像復号装置1500が行う画像復号処理について説明する。図37は、画像復号装置1500が行う画像復号処理を示すフローチャートである。図37を参照しながら説明する。
次に、本実施形態に係る画像復号装置1500が行う画像復号処理について説明する。図37は、画像復号装置1500が行う画像復号処理を示すフローチャートである。図37を参照しながら説明する。
ステップS501、ステップS503及びステップS504は、図13の同ステップと同様の処理である。
ステップS1102は、図27のステップと同様の処理である。図37のフローチャートは、図27とは、ステップS1104に換えてステップS1705を有する点が異なる。
ステップS1102は、図27のステップと同様の処理である。図37のフローチャートは、図27とは、ステップS1104に換えてステップS1705を有する点が異なる。
ステップS1705において、画像復号部1506は、ステップS501で分離・抽出された画像符号化データと、視差情報生成部704から視差情報と、奥行き画像復号部1203から復号された奥行き画像が入力される。画像復号部1506は、入力された画像符号化データと視差情報と奥行き画像に基づいて、画像を復号する。画像復号部1506は、結果を画像復号装置1500の外部に出力する。
続いて、ステップS1705で実施される視点画像の復号について、図38を用いて説明する。
ステップS601、ステップS602、ステップS604、ステップS607及びステップS608は、図14の各ステップと同様である。図14のフローチャートは、図28とは、ステップS603、S605、S606の各々に換えてステップS1803、S1805、S1806を有する点が異なる。
ステップS601、ステップS602、ステップS604、ステップS607及びステップS608は、図14の各ステップと同様である。図14のフローチャートは、図28とは、ステップS603、S605、S606の各々に換えてステップS1803、S1805、S1806を有する点が異なる。
ステップS1803において、エントロピー復号部801は、符号化データ入力部813から入力された画像符号化データをエントロピー復号し、差分画像符号と量子化係数、及び予測符号化情報を生成する。
エントロピー復号部801は、差分画像符号と量子化係数を、逆量子化部802に出力し、予測符号化情報を予測方式制御部1605に出力する。予測方式制御部1605は、エントロピー復号部801から予測符号化情報を入力し、予測方式に関する情報とその予測方式に対応する符号化情報を取り出す。
エントロピー復号部801は、差分画像符号と量子化係数を、逆量子化部802に出力し、予測符号化情報を予測方式制御部1605に出力する。予測方式制御部1605は、エントロピー復号部801から予測符号化情報を入力し、予測方式に関する情報とその予測方式に対応する符号化情報を取り出す。
予測方式が、画面内予測の場合には、符号化情報を画面内予測符号化情報として画面内予測部816に出力し、その後、ステップS604に進む。
予測方式が、画面間予測の場合には、符号化情報を画面間予測符号化情報として画面間予測部815の動き/視差補償部1309に出力し、ダイレクトモードの場合には、符号化情報をダイレクトモード符号化情報として画面内予測部816のダイレクトモード復号部1617に出力し、その後、ステップS1805に進む。
予測方式が、画面間予測の場合には、符号化情報を画面間予測符号化情報として画面間予測部815の動き/視差補償部1309に出力し、ダイレクトモードの場合には、符号化情報をダイレクトモード符号化情報として画面内予測部816のダイレクトモード復号部1617に出力し、その後、ステップS1805に進む。
ステップS1805において、画面間予測部1615は、予測方式制御部1605から入力される画面間予測符号化情報と、加算部804から入力される復号画像ブロック信号と、視差入力部814から入力される視差情報(すなわち視差ベクトル)、及び奥行き画像復号部から入力される復号された奥行き画像に基づいて、画面間予測又はダイレクトモードによる復号処理を実施する。画面間予測部815は、生成された画面間予測画像ブロック信号又はダイレクトモード予測画像ブロック信号を選択部1606に出力する。画面間予測及びダイレクトモードの処理については後述する。なお、最初の処理において、加算部804の処理が完了していない場合には、リセットされた画像ブロック信号(全ての画素値が0の画像ブロック信号)を入力するものとする。その後、ステップS1806に進む。
ステップS1806において、選択部1606は、予測方式制御部1605から出力された予測方式に関する情報を入力し、予測方式に関する情報に基づいて画面内予測部816から入力された画面内予測画像ブロック信号、又は画面間予測部1615の動き/視差補償部1309から入力された画面間予測画像信号、又は画面間予測部1615のダイレクトモード復号部1617から入力されたダイレクトモード予測画像ブロック信号のいずれかを加算部804に出力する。その後、ステップS607に進む。
画面間予測部1615の処理フローについては、図39を用いて説明する。
ステップS701、ステップS702及びステップS703は、図15の各ステップと同様である。図39のフローチャートと、図15とは、ステップS702とS703の間にステップS1903を有する点と、ステップS1903による分岐先の一方にステップS1904を有する点が異なる。
ステップS1903において、画面間予測部1615は処理対象のブロックの予測方式が画面間予測の場合(Yes)、予測方式制御部1605から画面間予測符号化情報を受け取り、ステップS703に進む。画面間予測部1615は処理対象のブロックの予測方式が画面間予測ではない、即ちダイレクトモードの場合(No)、予測方式制御部1605からダイレクトモード予測符号化情報を受け取り、ステップS1904に進む。
ステップS701、ステップS702及びステップS703は、図15の各ステップと同様である。図39のフローチャートと、図15とは、ステップS702とS703の間にステップS1903を有する点と、ステップS1903による分岐先の一方にステップS1904を有する点が異なる。
ステップS1903において、画面間予測部1615は処理対象のブロックの予測方式が画面間予測の場合(Yes)、予測方式制御部1605から画面間予測符号化情報を受け取り、ステップS703に進む。画面間予測部1615は処理対象のブロックの予測方式が画面間予測ではない、即ちダイレクトモードの場合(No)、予測方式制御部1605からダイレクトモード予測符号化情報を受け取り、ステップS1904に進む。
ステップS1904において、予測方式制御部1605からダイレクトモード符号化情報と、視差入力部814から視差情報と、奥行き画像復号部1203から復号された奥行き画像と、動き/視差補償部1309から動きベクトル或いは視差ベクトルを入力される。ダイレクトモード復号部1617は、処理対象のブロックに隣接しているブロックの動きベクトル或いは視差ベクトルと、視差情報と、奥行き画像とに基づいて予測ベクトルを生成する。予測ベクトルの生成方法は、図34のステップS1605と同様である。ダイレクトモード復号部1617は、生成した予測ベクトルが示す領域に対応する画像ブロックをフレームメモリ312から抽出する。ダイレクトモード復号部1617は、抽出した画像ブロックをダイレクトモード予測画像ブロック信号として、選択部1606に出力する。その後、画面間予測処理を終了する。
このように、本実施形態によれば、画像復号装置1500は、奥行き画像と奥行き画像から算出される視差情報(すなわち視差ベクトル)に基づいた予測ベクトルによるダイレクトモードによる符号化を行うことができる。つまり、本実施形態によれば、図30の画像符号化装置1400のようにして予測ベクトルの精度を向上させダイレクトモード時の符号化効率を高めて符号化されたデータを復号することができる。
(実施形態7)<ソフトウェア、方法>
上述した各実施形態における画像符号化装置100、1000、1400、画像復号装置700、1200、1500各々の一部分、例えば、奥行き画像符号化部103の一部、視差情報生成部104、撮影条件情報符号化部101と画像符号化部106内の減算部302、直交変換部303、量子化部304、エントロピー符号化部305、逆量子化部306、逆直交変換部307、加算部308、予測方式制御部309、選択部310、デブロッキング・フィルタ部311、動き/視差補償部313、動き/視差ベクトル検出部314並びにイントラ予測部315、及び奥行き画像復号部703の一部、視差情報生成部704、撮影条件情報復号部701と画像復号部706内のエントロピー復号部801、逆量子化部802、逆直交変換部803、加算部804、予測方式制御部805、選択部806、デブロッキング・フィルタ部807、動き/視差補償部809、並びにイントラ予測部810をコンピュータで実現するようにしてもよい。
上述した各実施形態における画像符号化装置100、1000、1400、画像復号装置700、1200、1500各々の一部分、例えば、奥行き画像符号化部103の一部、視差情報生成部104、撮影条件情報符号化部101と画像符号化部106内の減算部302、直交変換部303、量子化部304、エントロピー符号化部305、逆量子化部306、逆直交変換部307、加算部308、予測方式制御部309、選択部310、デブロッキング・フィルタ部311、動き/視差補償部313、動き/視差ベクトル検出部314並びにイントラ予測部315、及び奥行き画像復号部703の一部、視差情報生成部704、撮影条件情報復号部701と画像復号部706内のエントロピー復号部801、逆量子化部802、逆直交変換部803、加算部804、予測方式制御部805、選択部806、デブロッキング・フィルタ部807、動き/視差補償部809、並びにイントラ予測部810をコンピュータで実現するようにしてもよい。
その場合、この制御機能を実現するためのプログラム(画像符号化プログラム及び/又は画像復号プログラム)をコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することによって実現してもよい。なお、ここでいう「コンピュータシステム」とは、画像符号化装置100又は画像復号装置700に内蔵されたコンピュータシステムであって、OSや周辺機器等のハードウェアを含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含んでもよい。また、上記プログラムは、前述した機能の一部を実現するためのものであってもよく、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであってもよい。また、このプログラムは、可搬の記録媒体やネットワークを介して流通させるに限らず、放送波を介して流通させることもできる。
この画像符号化プログラムは、コンピュータに、異なる視点から撮影した複数の視点画像を符号化する画像符号化処理を実行させるためのプログラムであって、そのコンピュータに、複数の視点画像を撮影する際のカメラ設定と被写体との位置関係を示す撮影条件情報を符号化するステップと、上記複数の視点画像に対応する少なくとも1つ以上の奥行き画像と撮影条件情報に基づいて、符号化を行う視点画像と該符号化を行う視点画像とは異なる視点画像との間の視差情報を生成するステップと、符号化を行う視点画像に関して、視差情報に基づいて上記異なる視点画像に対する予測ベクトルを生成し、その予測ベクトルを用いて視点間予測符号化方式によって符号化を行うステップとを実行させるためのプログラムである。その他の応用例については、画像符号化装置について説明した通りである。
また、上述の画像復号プログラムは、コンピュータに、異なる視点から撮影した複数の視点画像を復号する画像復号処理を実行させるためのプログラムであって、そのコンピュータに、複数の視点画像を撮影した際のカメラ設定と被写体との位置関係を示す撮影条件情報を復号するステップと、上記複数の視点画像に対応する少なくとも1つ以上の奥行き画像と撮影条件情報に基づいて、復号する視点画像と該復号する視点画像とは異なる視点画像との間の視差情報を生成するステップと、復号する視点画像に関して、視差情報に基づいて上記異なる視点画像に対する予測ベクトルを生成し、その予測ベクトルを用いて視点間予測復号方式によって復号を行うステップとを実行させるためのプログラムである。
その他の応用例については、画像復号装置について説明した通りである。この画像復号プログラムは、多視点画像の再生ソフトウェアの一部として実装することができる。
その他の応用例については、画像復号装置について説明した通りである。この画像復号プログラムは、多視点画像の再生ソフトウェアの一部として実装することができる。
また、上述した実施形態における画像符号化装置100、1000、1400及び画像復号装置700、1200、1500各々の一部分、又は全部を、LSI(Large Scale Integration)等の集積回路又はIC(IntegratedCircuit)チップセットとして実現してもよい。画像符号化装置100、1000、1400及び画像復号装置700、1200、1500の各機能ブロックは個別にプロセッサ化してもよいし、一部、又は全部を集積してプロセッサ化してもよい。また、集積回路化の手法はLSIに限らず専用回路、又は汎用プロセッサで実現してもよい。また、半導体技術の進歩によりLSIに代替する集積回路化の技術が出現した場合、当該技術による集積回路を用いてもよい。
また、本発明は、画像符号化装置、画像復号装置における制御の流れを例示したように、さらには画像符号化プログラム、画像復号プログラムの各ステップの処理として説明したように、画像符号化方法、画像復号方法としての形態も採り得る。
この画像符号化方法は、異なる視点から撮影した複数の視点画像を符号化する方法であって、撮影条件情報符号化部が、複数の視点画像を撮影する際のカメラ設定と被写体との位置関係を示す撮影条件情報を符号化するステップと、視差情報生成部が、上記複数の視点画像に対応する少なくとも1つ以上の奥行き画像と撮影条件情報に基づいて、符号化を行う視点画像と該符号化を行う視点画像とは異なる視点画像との間の視差情報を生成するステップと、画像符号化部が、符号化を行う視点画像に関して、視差情報に基づいて上記異なる視点画像に対する予測ベクトルを生成し、その予測ベクトルを用いて視点間予測符号化方式によって符号化を行うステップとを有するものとする。その他の応用例については、画像符号化装置について説明した通りである。
また、上述の画像復号方法は、異なる視点から撮影した複数の視点画像を復号する方法であって、撮影条件情報復号部が、複数の視点画像を撮影した際のカメラ設定と被写体との位置関係を示す撮影条件情報を復号するステップと、視差情報生成部が、上記複数の視点画像に対応する少なくとも1つ以上の奥行き画像と撮影条件情報に基づいて、復号する視点画像と該復号する視点画像とは異なる視点画像との間の視差情報を生成するステップと、画像復号部が、復号する視点画像に関して、視差情報に基づいて上記異なる視点画像に対する予測ベクトルを生成し、その予測ベクトルを用いて視点間予測復号方式によって復号を行うステップとを有するものとする。その他の応用例については、画像復号装置について説明した通りである。
以上、この発明の実施形態を図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計変更等も含まれる。
100、1000、1400…画像符号化装置、101…撮影条件情報符号化部、102…基準視点符号化処理部、103、1003…奥行き画像符号化部、104…視差情報生成部、105、1005、1405…非基準視点符号化処理部、106、1006、1406…画像符号化部、201…ブロック分割部、202…代表奥行き値決定部、203…視差算出部、204…距離情報抽出部、301…画像入力部、302…減算部、303…直交変換部、304…量子化部、305…エントロピー符号化部、306…逆量子化部、307…逆直交変換部、308…加算部、309、1109、1509…予測方式制御部、310、1110、1510…選択部、311…デブロッキング・フィルタ部、312…フレームメモリ、313…動き/視差補償部、314…動き/視差ベクトル検出部、315…イントラ予測部、316…視差入力部、317…画面内予測部、318、1118、1518…画面間予測部、1119…スキップモード符号化部、1519…ダイレクトモード符号化部、700…画像復号装置、701…撮影条件情報復号部、702…基準視点復号処理部、703、1203…奥行き画像復号部、704…視差情報生成部、705、1205、1505…非基準視点復号処理部、706、1206、1506…画像復号部、801、1301…エントロピー復号部、802…逆量子化部、803…逆直交変換部、803…逆直交変換部、804…加算部、805、1305、1605…予測方式制御部、806…選択部、807…デブロッキング・フィルタ部、808…フレームメモリ、809、1309…動き/視差補償部、810…イントラ予測部、812…画像出力部、813…符号化データ入力部、814…視差入力部、815、1315、1615…画面間予測部、816…画面内予測部、1317…スキップモード復号部、1617…ダイレクトモード復号部
Claims (18)
- 複数の視点画像を符号化する画像符号化装置であって、
前記複数の視点画像のうちの第1の視点画像に対応する奥行き画像に基づいて、前記第1の視点画像と、前記複数の視点画像のうちの前記第1の視点画像とは異なる第2の視点画像との間の視差情報を生成する視差情報生成部と、
前記第1の視点画像に含まれる符号化対象ブロック及び該符号化対象ブロックの隣接ブロックのうち、少なくとも一つに対応する前記視差情報に基づいて、前記符号化対象ブロックの予測ベクトルを生成し、該予測ベクトルを用いて、前記符号化対象ブロックの視点間予測符号化方式による符号化を行う画像符号化部と
を備えることを特徴とする画像符号化装置。 - 前記画像符号化部は、前記符号化対象ブロックの隣接ブロックのうち、符号化方式が前記視点間予測符号化方式ではないブロックに対応する前記視差情報に基づいて、前記予測ベクトルを生成することを特徴とする、請求項1に記載の画像符号化装置。
- 前記画像符号化部は、前記符号化対象ブロックの隣接ブロックのうち、符号化未済みのブロックに対応する前記視差情報に基づいて、前記予測ベクトルを生成することを特徴とする、請求項1に記載の画像符号化装置。
- 前記画像符号化部は、
前記符号化対象ブロックにおける視差を示す情報あるいは前記隣接ブロックにおける視差を示す情報であって、前記視差情報を含む情報の中から選択した情報を用いて、前記予測ベクトルを生成し、
該選択した情報に対応するブロックを示す情報を符号化することを特徴とする、請求項1に記載の画像符号化装置。 - 前記視差情報生成部は、前記複数の視点画像を撮影する際のカメラ設定と被写体との位置関係を示す撮影条件情報に含まれる情報又は該情報から算出される情報である、カメラ間距離及び撮影距離に基づいて、前記奥行き画像が示す奥行き値から前記視差情報を生成することを特徴とする、請求項1から請求項4のいずれか1項に記載の画像符号化装置。
- 前記視差情報生成部は、前記奥行き画像を分割したブロック毎の奥行き値の代表値に対応する視差情報を生成することを特徴とする、請求項1から請求項5のいずれか1項に記載の画像符号化装置。
- 前記奥行き画像を符号化する奥行き画像符号化部を更に備えることを特徴とする、請求項1から請求項6のいずれか1項に記載の画像符号化装置。
- 複数の視点画像を復号する画像復号装置であって、
前記複数の視点画像のうちの第1の視点画像に対応する奥行き画像に基づいて、前記第1の視点画像と、前記複数の視点画像のうちの前記第1の視点画像とは異なる第2の視点画像との間の視差情報を生成する視差情報生成部と、
前記第1の視点画像に含まれる符号化対象ブロック及び該符号化対象ブロックの隣接ブロックのうち、少なくとも一つに対応する前記視差情報に基づいて、前記符号化対象ブロックの予測ベクトルを生成し、該予測ベクトルを用いて、前記符号化対象ブロックの視点間予測復号方式による復号を行う画像復号部と
を備えることを特徴とする画像復号装置。 - 前記画像符号化部は、前記符号化対象ブロックの隣接ブロックのうち、符号化方式が前記視点間予測符号化方式ではないブロックに対応する前記視差情報に基づいて、前記予測ベクトルを生成することを特徴とする、請求項8に記載の画像復号装置。
- 前記画像符号化部は、前記符号化対象ブロックの隣接ブロックのうち、符号化未済みのブロックに対応する前記視差情報に基づいて、前記予測ベクトルを生成することを特徴とする、請求項8に記載の画像復号装置。
- 前記画像復号部は、外部から入力される、ブロックを示す情報を参照し、前記情報が示すブロックの視差を示す情報を用いて、前記予測ベクトルを生成することを特徴とする、請求項8に記載の画像復号装置。
- 前記視差情報生成部は、前記複数の視点画像を撮影する際のカメラ設定と被写体との位置関係を示す撮影条件情報に含まれる情報又は該情報から算出される情報である、カメラ間距離及び撮影距離に基づいて、前記奥行き画像が示す奥行き値から前記視差情報を生成することを特徴とする、請求項8から請求項11のいずれか1項に記載の画像復号装置。
- 前記視差情報生成部は、前記奥行き画像を分割したブロック毎の奥行き値の代表値に対応する視差情報を生成することを特徴とする、請求項8から請求項12のいずれか1項に記載の画像復号装置。
- 前記奥行き画像は符号化されており、
前記奥行き画像を復号する奥行き画像復号部を更に備えることを特徴とする、請求項8から請求項13のいずれか1項に記載の画像復号装置。 - 複数の視点画像を符号化する画像符号化方法であって、
前記複数の視点画像のうちの第1の視点画像に対応する奥行き画像に基づいて、前記第1の視点画像と、前記複数の視点画像のうちの前記第1の視点画像とは異なる第2の視点画像との間の視差情報を生成するステップと、
前記第1の視点画像に含まれる符号化対象ブロック及び該符号化対象ブロックの隣接ブロックのうち、少なくとも一つに対応する前記視差情報に基づいて、前記符号化対象ブロックの予測ベクトルを生成し、該予測ベクトルを用いて、前記符号化対象ブロックの視点間予測符号化方式による符号化を行うステップと
を有することを特徴とする画像符号化方法。 - 複数の視点画像を復号する画像復号方法であって、
前記複数の視点画像のうちの第1の視点画像に対応する奥行き画像に基づいて、前記第1の視点画像と、前記複数の視点画像のうちの前記第1の視点画像とは異なる第2の視点画像との間の視差情報を生成するステップと、
前記第1の視点画像に含まれる符号化対象ブロック及び該符号化対象ブロックの隣接ブロックのうち、少なくとも一つに対応する前記視差情報に基づいて、前記符号化対象ブロックの予測ベクトルを生成し、該予測ベクトルを用いて、前記符号化対象ブロックの視点間予測復号方式による復号を行うステップと
を有することを特徴とする画像復号方法。 - 複数の視点画像を符号化する画像符号化装置のコンピュータに、
前記複数の視点画像のうちの第1の視点画像に対応する奥行き画像に基づいて、前記第1の視点画像と、前記複数の視点画像のうちの前記第1の視点画像とは異なる第2の視点画像との間の視差情報を生成するステップと、
前記第1の視点画像に含まれる符号化対象ブロック及び該符号化対象ブロックの隣接ブロックのうち、少なくとも一つに対応する前記視差情報に基づいて、前記符号化対象ブロックの予測ベクトルを生成し、該予測ベクトルを用いて、前記符号化対象ブロックの視点間予測符号化方式による符号化を行うステップと
を実行させるためのプログラム。 - 複数の視点画像を復号する画像復号装置のコンピュータに、
前記複数の視点画像のうちの第1の視点画像に対応する奥行き画像に基づいて、前記第1の視点画像と、前記複数の視点画像のうちの前記第1の視点画像とは異なる第2の視点画像との間の視差情報を生成するステップと、
前記第1の視点画像に含まれる符号化対象ブロック及び該符号化対象ブロックの隣接ブロックのうち、少なくとも一つに対応する前記視差情報に基づいて、前記符号化対象ブロックの予測ベクトルを生成し、該予測ベクトルを用いて、前記符号化対象ブロックの視点間予測復号方式による復号を行うステップと
を実行させるためのプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012080006A JP2013179554A (ja) | 2012-01-31 | 2012-03-30 | 画像符号化装置、画像復号装置、画像符号化方法、画像復号方法およびプログラム |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012019163 | 2012-01-31 | ||
JP2012019163 | 2012-01-31 | ||
JP2012080006A JP2013179554A (ja) | 2012-01-31 | 2012-03-30 | 画像符号化装置、画像復号装置、画像符号化方法、画像復号方法およびプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2013179554A true JP2013179554A (ja) | 2013-09-09 |
Family
ID=49270809
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2012080006A Pending JP2013179554A (ja) | 2012-01-31 | 2012-03-30 | 画像符号化装置、画像復号装置、画像符号化方法、画像復号方法およびプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2013179554A (ja) |
-
2012
- 2012-03-30 JP JP2012080006A patent/JP2013179554A/ja active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112956190B (zh) | 仿射运动预测 | |
KR101773693B1 (ko) | 스킵 및 직접 모드들에 대한 3d 비디오 코딩에서의 디스패리티 벡터 유도 | |
KR101276720B1 (ko) | 카메라 파라미터를 이용하여 시차 벡터를 예측하는 방법,그 방법을 이용하여 다시점 영상을 부호화 및 복호화하는장치 및 이를 수행하기 위한 프로그램이 기록된 기록 매체 | |
TWI501611B (zh) | 用於3d視訊之視圖間預測之運動向量 | |
JP7303894B2 (ja) | エンコーダ、デコーダ、及び対応するインター予測方法 | |
JP6039178B2 (ja) | 画像符号化装置、画像復号装置、並びにそれらの方法及びプログラム | |
JP4663792B2 (ja) | 多視点動映像を符号化及び復号化する装置及び方法 | |
JP7164710B2 (ja) | ビデオ復号化方法及びビデオ・デコーダ | |
TW201340724A (zh) | 視訊寫碼中之像差向量預測 | |
US9924197B2 (en) | Image encoding method, image decoding method, image encoding apparatus, image decoding apparatus, image encoding program, and image decoding program | |
JP6307152B2 (ja) | 画像符号化装置及び方法、画像復号装置及び方法、及び、それらのプログラム | |
CN113519159A (zh) | 视频编解码的方法和装置 | |
KR20200140896A (ko) | 인터 예측 모드 기반 영상 처리 방법 및 이를 위한 장치 | |
WO2012161318A1 (ja) | 画像符号化装置、画像復号装置、画像符号化方法、画像復号方法およびプログラム | |
JP6386466B2 (ja) | 映像符号化装置及び方法、及び、映像復号装置及び方法 | |
JP2015128252A (ja) | 予測画像生成方法、予測画像生成装置、予測画像生成プログラム及び記録媒体 | |
JP2013085156A (ja) | 映像符号化方法,映像復号方法,映像符号化装置,映像復号装置およびそれらのプログラム | |
JP6232117B2 (ja) | 画像符号化方法、画像復号方法、及び記録媒体 | |
RU2815734C1 (ru) | Способ и устройство для хранения информации о движении | |
RU2793825C1 (ru) | Способ и устройство для хранения информации о движении | |
JP2013179554A (ja) | 画像符号化装置、画像復号装置、画像符号化方法、画像復号方法およびプログラム | |
JP7385004B2 (ja) | 動き情報保存のための方法及び装置 | |
WO2015098827A1 (ja) | 映像符号化方法、映像復号方法、映像符号化装置、映像復号装置、映像符号化プログラム及び映像復号プログラム | |
WO2013077304A1 (ja) | 画像符号化装置、画像復号装置、並びにそれらの方法及びプログラム | |
KR20230017238A (ko) | 인터 레이어 예측 여부에 기반하여 움직임 정보를 결정하는 영상 부호화/복호화 방법, 장치 및 비트스트림을 전송하는 방법 |