(57)【要約】【課題】  投影方法の幾何学的特性を考慮して動きベクトルを効率良く予測することができ、符号化効率をさらに向上させる。【解決手段】  着目フレーム内の符号化しようとする着目ブロックを、符号化済みのブロックの動きベクトルを用い、着目ブロックに対する予測ブロックを求める予測部と、この予測部で求めた予測ブロックと着目ブロックとの差分である差分ブロックを求め、当該差分ブロックと、予測ブロックの位置を表す動きベクトルとを符号化する符号化部と、予測部による着目ブロックの動きベクトルを求める際に参照する符号化済みブロックの範囲を設定する予測制御部とを有する。予測制御部は、着目ブロックの周囲の符号化済みのブロックに加えて、着目フレーム内の着目ブロックの座標位置に依存した距離ぶん隔てた位置のブロックを参照範囲として設定する。【選択図】  図１
2019161410.tif 000002
【特許請求の範囲】
【請求項１】
符号化済のブロックの動きベクトルを用いて画像を符号化する画像符号化装置において、
符号化対象ブロックと同一のフレーム内に存在し、かつ符号化対象ブロックとは隣接しない符号化済のブロックの動きベクトルを用いて、符号化対象ブロックの動きベクトルを予測する動きベクトル予測手段を有する
ことを特徴とする画像符号化装置。
【請求項２】
符号化しようとする動画像のフレームを解析し、動画像を示すフレームが、被写体を２次元平面として撮影して得た映像のフレームであるか、全方位の撮影映像を２次元の矩形範囲に投影して得た映像のフレームであるかを判定する解析手段を更に有することを特徴とする請求項１に記載の画像符号化装置。
【請求項３】
前記解析手段の解析結果が、動画像を示すフレームが被写体を２次元平面として撮影して得た映像のフレームであることを示している場合、前記動きベクトル予測手段は符号化しようとしている着目のブロックの周囲の符号化済みのブロックを参照範囲として設定することを特徴とする請求項２に記載の画像符号化装置。
【請求項４】
前記解析手段の解析結果が、動画像を示すフレームが全方位の撮影映像を２次元の矩形範囲に投影して得た映像のフレームであることを示している場合、前記フレーム内に定義される予め設定された水平又は垂直線分に関する情報を符号化手段を有することを特徴とする請求項２に記載の画像符号化装置。
【請求項５】
前記フレームの中央を通る線に対し、線対称となるブロックを符号化した際の動きベクトルの水平、垂直成分の一方の正負の符号を反転させたベクトルを、符号化対象の着目のブロックの動きベクトルの候補として設定することを特徴とする請求項４に記載の画像符号化装置。
【請求項６】
前記解析手段の解析結果が、動画像を示すフレームが全方位の撮影映像を２次元の矩形範囲に投影して得た映像のフレームであることを示し、且つ、符号化しようとしている着目のブロックがフレームの左端又は右端に位置する場合、前記動きベクトル予測手段は、前記着目のブロックの周囲の符号化済みのブロックに加えて、前記着目のブロックとは反対側の右端又は左端の位置するブロックを参照範囲とすることを特徴とする請求項２乃至５のいずれか１項に記載の画像符号化装置。
【請求項７】
復号済のブロックの動きベクトルを用いて画像を復号する画像復号装置において、
復号対象ブロックと同一のフレーム内に存在し、かつ復号対象ブロックとは隣接しない復号済みブロックの動きベクトルを用いて、復号対象ブロックの動きベクトルを予測する動きベクトル予測手段を有する
ことを特徴とする画像復号装置。
【請求項８】
コンピュータが読み込み実行することで、前記コンピュータを請求項７に記載の方法の各工程を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、動画像の符号化技術に関するものである。
【背景技術】
【０００２】
動画像の圧縮記録の符号化方式として、ＨＥＶＣ（High Efficiency Video Coding）符号化方式が知られている（非特許文献１）。ＨＥＶＣでは符号化効率向上のため、符号化対象ブロックに空間的に隣接するブロックの動きベクトルや時間的に異なるフレームのブロックの動きベクトルを用いて、動きベクトルを予測する技術が採用されている。この動きベクトル予測技術を用いることにより、符号化対象ブロックの動きベクトルをより効率良く符号化することができる。
【０００３】
近年、ＶＲ（Virutal Reality）技術の発達に伴い、３６０°映像を複数のカメラで撮影し、撮影した画像を圧縮・符号化するユースケースが生まれている。球体状の３６０°映像は、円筒状に展開するＥＲＰ（Equirectangular Projection）やサイコロ状に展開するＣｕｂｅ  Ｍａｐ  Ｐｒｏｊｅｃｔｉｏｎなどといった方法で、１枚の二次元の映像へと展開される（非特許文献２）。このような３６０°映像の圧縮・符号化には上述のような方法で３６０°映像を二次元化し、二次元になった映像を圧縮・符号化するのが一般的である。
【０００４】
ＥＲＰは３６０°映像の数ある投影方法の中で最も一般的に用いられている手法であり、地球儀を平面状の地図へと投影する方法としても用いられている。図１０はＥＲＰによる投影方法の一例であり、左側の球形で表現されている３６０°映像の極（地球儀上の北極・南極に相当）は右側の長方形で表現されている二次元映像の上端・下端部分に投影される。また、例えば左側の円形で表現されている３６０°映像の点線部分は、右側の長方形で表現されている二次元映像の点線部分に投影される。
【０００５】
このＥＲＰは投影位置の計算が比較的容易であるという長所がある一方、画像の位置により投影による歪みに大きな差があり、特に３６０°映像の極に近い部分ほど大きく引き延ばされてしまうといった性質がある。
【先行技術文献】
【非特許文献】
【０００６】
【非特許文献１】ITU-T H.265 (12/2016) High efficiency video coding
【非特許文献２】JVET 寄書 JVET-C0050 ＜http://phenix.int-evry.fr/jvet/doc_end_user/documents/3_Geneva/wg11/＞
【発明の概要】
【発明が解決しようとする課題】
【０００７】
通常の二次元映像においては、符号化対象ブロックを符号化する際、その符号化対象ブロックの動きベクトルを、既に符号化済みの周辺ブロックを参照して求める。そして、求めた動きベクトルで示される予測ブロックと符号化対象ブロックとの差分を求め、エントロピー符号化する。
【０００８】
しかしながら、３６０°映像から前述のＥＲＰに代表される投影方法を用いて生成された映像においては、投影方法の幾何学的特性により、映像の位置により大きな歪みが生じる。さらに言えば、この歪みを原因として、元の３６０°映像では単調な直線的な動きであっても、投影された二次元映像では複雑な動きとなってしまい、既存の動きベクトル予測技術では、効率良く動きベクトルを予測することもできない。
【０００９】
本発明はかかる問題に鑑みなされたものであり、投影方法の幾何学的特性を考慮して効率良く動きベクトルを予測し、符号化効率を高める技術を提供しようとするものである。
【課題を解決するための手段】
【００１０】
この課題を解決するため、例えば本発明の画像符号化装置は以下の構成を備える。すなわち、
符号化済のブロックの動きベクトルを用いて画像を符号化する画像符号化装置において、
符号化対象ブロックと同一のフレーム内に存在し、かつ符号化対象ブロックとは隣接しない符号化済のブロックの動きベクトルを用いて、符号化対象ブロックの動きベクトルを予測する動きベクトル予測手段を有することを特徴とする。
【発明の効果】
【００１１】
本発明により、投影方法の幾何学的特性を考慮して動きベクトルを効率良く予測することができるようになり、符号化効率をさらに向上させることができる。
【図面の簡単な説明】
【００１２】
【図１】第１の実施形態における画像符号化装置の構成を示すブロック図。
【図２】第２の実施形態における画像復号装置の構成を示すブロック図。
【図３】第１の実施形態に係る画像符号化装置における画像符号化処理を示すフローチャート。
【図４】第２の実施形態に係る画像復号装置における画像復号処理を示すフローチャート。
【図５】第１、第２の実施形態における動きベクトル予測に用いられるブロックの位置の例を示す図。
【図６】第１、第２の実施形態における動きベクトル予測に用いられるブロックの位置の例を示す図。
【図７】ＥＲＰで投影された画像上の動きベクトルの一例を示す図。
【図８】画像符号化装置、復号装置に適用可能なコンピュータのハードウェア構成例を示すブロック図。
【図９】第１、第２の実施形態におけるビットストリームの構造の例を示す図。
【図１０】Ｅｑｕｉｒｅｃｔａｎｇｕｌａｒ  Ｐｒｏｊｅｃｔｉｏｎ（ＥＲＰ）の例を示す図。
【図１１】全方位映像からの２次元投影画像の他の例を示す図。
【図１２】全方位映像からの２次元投影画像の他の例を示す図。
【発明を実施するための形態】
【００１３】
以下、添付図面に従って本発明に係る実施形態を詳細に説明する。なお、以下に示す実施形態における構成は一例に過ぎず、本発明は図示された構成に限定されるものではない。
【００１４】
［第１の実施形態］
図１は第１の実施形態の画像符号化装置を示すブロック図である。本装置は、画像データを入力する端子１０１、画像解析部１０２、動きベクトル予測制御情報生成部１０３、予測部１０４、変換・量子化部１０５、逆量子化・逆変換部１０６、画像再生部１０７、フレームメモリ１０８、動きベクトルメモリ１０９、符号化部１１０、統合符号化部１１１、出力端子１１２を有する。
【００１５】
入力端子１０１は、符号化対象の動画像データを入力する。符号化対象の動画像データの発生源は、記憶媒体、ネットワーク上のファイルサーバ等でよく、その種類は問わない。画像解析部１０２は、入力した画像の幾何学的特性を解析し、その解析結果を画像解析情報として出力する。
【００１６】
動きベクトル予測制御情報生成部１０３は、後述の幾何学的特性を活かした動きベクトル予測処理を行うか否かについての情報である、動きベクトル予測制御情報を生成し、出力する。
【００１７】
予測部１０４は、符号化対象の着目ブロックの画像データに対し、フレーム内予測であるイントラ予測やフレーム間予測であるインター予測などを行い、予測画像データを生成する。さらに、予測部１０４は、着目ブロックの画像データと前記予測画像データの差分である予測誤差を算出し、出力する。このとき、予測部１０４は、予測に必要な情報、例えば予測モードや動きベクトル等の情報も予測誤差と併せて出力される。以下ではこの予測に必要な情報を予測情報と呼称する。
【００１８】
変換・量子化部１０５は、予測部１０４からの予測誤差を、ブロック単位で直交変換して変換係数を得る。そして、変換・量子化部１０５は、その変換係数の量子化を行い、量子化後の係数を出力する。
【００１９】
逆量子化・逆変換部１０６は、変換・量子化部１０５から出力された着目ブロックから得た量子化後の係数に対して逆量子化して変換係数を再生し、さらに逆直交変換して予測誤差を生成する。
【００２０】
画像再生部１０７は、予測部１０４から出力された予測情報に基づいて、フレームメモリ１０８を適宜参照し、着目ブロックに対する予測画像データを生成し、この予測画像データと逆量子化・逆変換部１０６で得た着目ブロックの予測誤差から、着目ブロックの再生画像データを生成し、出力する。
【００２１】
符号化部１１０は、変換・量子化部１０５から出力された着目ブロックの量子化係数、及び、予測部１０４から出力された予測情報を、動きベクトルメモリ１０９を適宜参照しながら符号化して、符号データを生成し出力する。
【００２２】
統合符号化部１１１は、画像解析部１０２や動きベクトル予測制御情報生成部１０３からの出力を符号化して、ヘッダ符号データを生成する。更に、統合符号化部１１１は、符号化部１１０から出力された符号データと合わせて、ビットストリームを形成して出力し、出力端子１１２より、符号化画像データのストリームとして出力する。出力先は、記憶媒体、ネットワーク上のファイルサーバ等で良く、その種類は問わない。
【００２３】
以上、実施形態における画像符号化装置の符号化に係る基本的な処理を説明した。次に、実施形態における符号化に係る特徴的な処理、動作を説明する。なお、本実施形態では、入力端子１０１から、動画像データをフレーム単位に入力するものとして説明する。
【００２４】
入力端子１０１から入力された１フレーム分の画像データは画像解析部１０２に供給される。画像解析部１０２は、入力画像（着目フレーム）の特徴を解析する。そして、画像解析部１０２は、入力画像が通常の２次元映像（被写体を２次元平面の画像として撮影して得た映像）であるか、それとも３６０°映像を二次元に投影した撮影映像であるかといった情報や、投影された映像の中で正面や真後ろ、真上や真下の位置に関する情報などを画像解析情報として後段に出力する。３６０°映像を二次元に投影する方法として、例えばＥＲＰを用いることができるが、これに限定されない。
【００２５】
ＥＲＰによる投影画像の場合の特徴は、上端（又は下端）の水平ライン上に並ぶ画素値は元々は極を示すので、実質的に同じである。また、左端と右端の垂直方向の座標が同じ２画素は、もともとは水平方向に隣接する画素であり、高い相関性が期待できる。この原理に基づいて、画像解析部１０２は、入力画像が通常の二次元映像であるか、それとも３６０°映像を二次元に投影した撮影映像かを判定できる。
【００２６】
例えば、着目フレームの画像が水平方向Ｗ画素、垂直方向Ｈ画素で表され、画像の左上隅を座標（０、０）とし、水平右方向をＸ軸の正方向、垂直下方向をＹ軸の正方向、そして、座標（ｘ，ｙ）の画素値をＰ（ｘ、ｙ）と定義する。そして、画像解析部１０２は、以下の３つの条件を満たす場合に、入力画像はＥＲＰの投影画像と判定し、いずらか１つでも満たさない場合には通常の映像として判定する。
Σ｛Ｐ（ｉ，０）−Ｐ（ｉ＋１，０）｝2＜ε1    …（１）
Σ｛Ｐ（ｉ，Ｈ−１）−Ｐ（ｉ＋１，Ｈ−１）｝2＜ε1  …（２）
Σ｛Ｐ（０，ｊ）−Ｐ（Ｗ−１、ｊ）｝2＜ε2  …（３）
なお、式（１）、（２）におけるΣはｉ＝０、１、…、Ｗ−２とした場合の合算を示し、式（３）におけるΣはｊ＝０、１、２、…、Ｈ−１とした場合の合算を示す。また、閾値ε1、ε2は、予め設定された正の閾値である。なお、上記は一例であり、他にも考えられる。例えば上式（１）、（２）の代わりに、画像の上端、或いは下端の水平ライン上に並ぶ画素の分散を求め、その分散が非常に小さくなることを利用しても構わない。
【００２７】
さて、画像解析部１０２は、符号化対象画像を解析し、その画像が投影画像であるか否かの判定を行い、その判定結果を画像解析情報として出力する。例えば、符号化対象画像がＥＲＰによる投影画像であると判定された場合、画像解析情報には、入力画像がＥＲＰによる投影画像であることを示す情報、投影画像の水平位置で中心にあたる場所が正面、水平位置で両端にあたる場所が真後ろ、などといった情報が含まれる。また、この画像解析情報の生成方法は先に示したものに限らず、外部から画像解析情報に当たる情報を入力する構成としても構わない。例えば、ＥＲＰによる投影画像が入力されることが予め分かっている場合には、不図示の操作部から、投影画像の水平位置で中心にあたる場所が正面、水平位置で両端にあたる場所が真後ろ、などといった情報が入力されても良い。
【００２８】
動きベクトル予測制御情報生成部１０３は、符号化対象の着目ブロックを符号化する際、その着目ブロックに空間的に隣接する隣接ブロックに加え、着目ブロックと同一フレーム内であり、且つ、隣接ブロック以外の着目ブロックから空間的に隔てた位置にあるブロックの動きベクトルを用いて動きベクトル予測を行うか否かを決定する。また、動きベクトル予測制御情報生成部１０３は、隣接ブロック以外の着目ブロックから空間的に隔てた位置にあるブロックの動きベクトルを用いる場合に、同一フレーム内のどのブロックを用いて動きベクトル予測を行うかも決定する。このようにして決定した情報は、動きベクトル予測制御情報として、予測部１０４や統合符号化部１１１に出力される。
【００２９】
ここで、図５（ａ）を用いて本実施形態で用いる動きベクトル予測制御情報について詳しく説明する。図５（ａ）において、参照符号５０で示す最も大きな長方形が入力画像であり、ここではＥＲＰにより投影された二次元画像が入力されたものとする。また、入力画像の水平位置で中心にあたる点線が元の３６０°撮影映像における正面にあたるものとする。この場合、必然的に水平位置で左右両端は元の３６０°撮影映像において真後ろにあたることになる。次に図５（ａ）においてＣと表記されたブロックが符号化対象の着目ブロックとすると、その周辺にはＵ（上隣接）、Ｌ（左隣接)、ＵＬ(左上隣接)、ＵＲ（右上隣接）、ＢＬ（左下隣接）といったブロックが存在することになる。ＨＥＶＣなどの符号化方式においては、着目ブロックＣのブロックの符号化時に、こうした周辺ブロックを符号化する際に用いた動きベクトルを用いて着目Ｃのブロックの動きベクトルを予測する。
【００３０】
実施形態における動きベクトル予測制御情報生成部１０３は、符号化対象画像がＥＲＰによる投影画像の場合、着目ブロックＣに対する動きベクトルとして、上記の通常撮影映像の場合の周囲ブロックの動きベクトルだけでなく、着目ブロックＣと同一フレーム内であって、周辺ブロック以外の、着目ブロックＣから隔てた既符号化ブロックの符号化時に用いた動きベクトルをも参照する。そして、動きベクトル予測制御情報生成部１０３は、その設定した情報を、動きベクトル予測制御情報として、予測部１０４や統合符号化部１１１に供給する。以下、かかる点を、より分かりやすく説明する。
【００３１】
ここで、３６０°撮影映像が、例えば車載のドライブレコーダのようなユースケースを考える。この場合、視点が正面の方向へ移動する場合、風景は正面から左もしくは右側に流れ真後ろの方向に移動することになる。ＥＲＰで投影された撮影映像上では、例えば図７で示したように、水平位置で中心部の点線付近から垂直位置を変えながら左もしくは右に移動し、最終的には左右両端付近に到達する。
【００３２】
さて、このような場合、移動する風景は、図７上の水平位置で中心部の点線(正面)を基準に線対称の動き(垂直方向は同一、水平方向は左右反転した動き)をすることが多い。この性質を活用すれば、例えば図５（ａ）の着目ブロックＣの符号化時に、正面と後方を結んだ線にあたる中央の垂直点線を基準に、水平位置で線対称の位置のブロックＳがインター符号化されている場合、そのブロックＳを符号化した際に用いた動きベクトルを活用し、着目ブロックＣの動きベクトルを効率良く予測することができる。具体的には、ブロックＳの２次元空間での動きベクトルを（ＭＶｓｘ、ＭＶｓｙ）とした場合、垂直成分ＭＶｓｙはそのまま、水平成分ＭＶｓｘのみを正負の符号を反転させた（−ＭＶｓｘ、ＭＶｘｙ）であり、且つ、ブロックＳの符号化時に参照した参照フレームを、着目ブロックＣの予測動きベクトルの候補に加える、といった具合である。このようにして、各符号化ブロックが動きベクトルの参照先となるブロックの位置に関する情報や正負の符号の反転に関する情報も上述の動きベクトル予測制御情報には含まれる。この結果、符号化対象の映像がＥＲＰで投影された映像の場合であり、着目ブロックが図５（ａ）のブロックＣの場合、これまでの動きベクトル候補であるブロック｛Ｕ、Ｌ、ＵＬ、ＵＲ、ＢＬ｝に加え、ベクトル（−ＭＶｓｘ、ＭＶｘｙ）も動きベクトルの候補とすることができる。特に、ドライブレコーダのようなユースケースであり、移動体（人間や車等）が無い、もしくは少ない場合、ベクトル（−ＭＶｓｘ、ＭＶｘｙ）で示されるブロックが、最終的な着目ブロックＣのための予測ブロックとして採用される可能性が高いことが期待できる。故に、上記の場合、ベクトル（−ＭＶｓｘ、ＭＶｘｙ）が示すブロックを優先的に予測ブロックとして判定するようにすることが望ましい。
【００３３】
なお、上記は符号化対象の映像フレームが、３６０°撮影映像のＥＲＰで投影された画像であって、且つ、視点が正面の方向へ移動することを示す情報が外部から設定されている場合についてのものである。なお、画像解析部１０２が、符号化に先立って、複数のフレームを解析し、時間軸に対して映像が図７に示すように流れているか否かを判定しても良い。
【００３４】
図１に戻り、予測部１０４では、画像解析部１０２から入力された画像データを複数のブロックに切り出す。そして、動きベクトル予測制御情報生成部１０３から入力された動きベクトル予測制御情報を用いながら動きベクトルメモリ１０９を参照し、ブロック単位の予測処理（予測ブロックの決定処理）を実行する。予測ブロックが求められると、符号化対象の着目ブロックとの予測ブロックとの差分ブロック（予測誤差）が生成され、変換・量子化部１０５に入力される。また、予測部１０４は予測情報（動きベクトルを含む）を生成し、符号化部１１０、画像再生部１０７および動きベクトルメモリ１０９に出力する。
【００３５】
ここで、予測部１０４で実行される予測処理や予測部１０４から出力される予測情報についてより詳しく説明する。ＨＥＶＣを初めとする画像符号化技術においては、再生画像の画質を維持しつつ、符号化されるビットストリームのデータ量を小さくするため、符号化済ブロックの画素を用いて符号化対象ブロックの画素を予測する予測処理が用いられている。予測処理には、同一フレームで符号化済のブロックの画素を用いるイントラ予測や、符号化済の異なるフレームのブロックの画素を用いるインター予測が存在する。ここではインター予測についてさらに説明する。
【００３６】
インター予測は符号化済のフレーム（参照フレーム）の画素を参照して、符号化対象の着目ブロックに対応する予測ブロックを求める処理である。例えば、参照フレームである符号化済フレームと、符号化対象の着目フレームとの間で動きが無い場合は、符号化対象ブロックの画素は参照対象の符号化済フレームの同一位置の画素を用いて予測される。このような場合、動きが無いことを示す（０、０）動きベクトルが予測情報として含まれることになる。一方で符号化対象ブロックに対して、フレーム間で動きが発生している場合にはその動きベクトル（ＭＶｘ、ＭＶｙ）が予測情報に含まれることになる。
【００３７】
ＨＥＶＣではこの動きベクトルに関するデータ量をさらに削減するため、動きベクトル予測と呼ばれる技術が採用されている。これは符号化済のブロックの動きベクトルを用いて符号化対象ブロックの動きベクトルを予測する技術であり、動きベクトルのデータ量を削減する効果がある。例えば、図５（ａ）のブロックＣが動いている物体の一部であった場合、着目ブロックＣの周辺ブロックＵＬ、Ｕ、ＵＲ、Ｌ、ＢＬなどを動きベクトル予測の候補とみなし、着目ブロックＣの動きベクトルと最も近い動きベクトルを動きベクトル予測子とする。
【００３８】
本実施形態では、車載のドライブレコーダのように、正面に向けて移動中の３６０°映像から、ＥＲＰで投影された映像を符号化対象とする場合、図５（ａ）のブロックＳを符号化する際に用いた動きベクトル（ＭＶｓｘ、ＭＶｓｙ）の水平成分の正負符号を反転させたベクトル（−ＭＶｓｘ、ＭＶｓｙ）を、着目ブロックＣの予測ブロックを求める際の動きベクトルの候補に加える。具体的には、入力された動きベクトル予測制御情報により、動きベクトルの参照対象となる離れた位置にあるブロックＳが特定され、かつブロックＳがインター符号化済である場合、その際に用いた動きベクトル（ＭＶｓｘ、ＭＶｓｙ）からベクトル（−ＭＶｓｘ、ＭＶｓｙ）を求め、このベクトル（−ＭＶｓｘ、ＭＶｓｙ）を、着目ブロックの動きベクトルの候補として追加する。あるいは、着目ブロックに対してベクトル（−ＭＶｓｘ、ＭＶｓｙ）が示すブロックを予測ブロックの候補として追加する。本実施形態では既存の動きベクトル予測候補（ＵＬ、Ｕ、ＵＲ、Ｌ、ＢＬなど）に加えて、ベクトル（−ＭＶｓｘ、ＭＶｓｙ）が示すブロックも予測ブロック候補とするが、これに限定されない。既存の動きベクトル予測候補（ＵＬ、Ｕ、ＵＲ、Ｌ、ＢＬなど）のうちの１つを置き換える構成としても良い。また、符号化済のフレームのブロックの動きベクトルを予測候補として用いる時間的動きベクトル予測の変わりに（−ＭＶｓｘ、ＭＶｓｙ）を予測候補としても良い。さらには、ブロックＳにあたる位置のブロックが符号化済の場合のみ（−ＭＶｓｘ、ＭＶｓｙ）を既存の予測候補と置き換え、そうでない場合には既存の予測候補をそのまま用いる構成としても良い。
【００３９】
図１に戻り、変換・量子化部１０５では、入力された予測誤差に直交変換・量子化を行い、量子化係数を生成する。生成された量子化係数は符号化部１１０および逆量子化・逆変換部１０６に供給される。逆量子化・逆変換部１０６では、入力された量子化係数を逆量子化して変換係数を再生し、さらに再生された変換係数を逆直交変換して予測誤差を再生し、画像再生部１０７に出力する。
【００４０】
画像再生部１０７は、予測部１０４から入力される予測情報に基づいて、フレームメモリ１０８を適宜参照し、予測ブロックの画像データを再生する。そして再生された予測画像データと、逆量子化・逆変換部１０６から入力された再生された予測誤差から画像データを再生し、フレームメモリ１０８に入力し、格納する。
【００４１】
符号化部１１０では、ブロック単位で、変換・量子化部１０５で生成された量子化係数、予測部１０４から入力された予測情報をエントロピー符号化し、符号データを生成する。予測情報を構成する動きベクトルの符号化においては、符号化対象のブロックの動きベクトルと予測部１０４で算出された予測動きベクトルとの差分値や予測動きベクトル候補の中でどれが予測動きベクトルとなったかを示す識別子などが符号化される。本実施形態では、予測部１０４からは符号化対象ブロックの動きベクトルおよび予測動きベクトルの識別子が入力され、符号化部１１０にて動きベクトルメモリ１０９を参照しながら動きベクトルの差分値を算出するものとするが、構成はこれに限定されない。動きベクトルの差分値自体を予測部１０４で算出し、符号化部１１０に入力する構成としても構わない。
【００４２】
エントロピー符号化の方法は特に指定しないが、ゴロム符号化、算術符号化、ハフマン符号化などを用いることができる。生成された符号データは統合符号化部１１１に出力される。
【００４３】
統合符号化部１１１では、動きベクトル予測制御情報を符号化し、動きベクトル予測制御情報符号を生成する。符号化の方法は特に指定しないが、ゴロム符号化、算術符号化、ハフマン符号化などを用いることができる。また、これらの符号や符号化部１１０から入力された符号データなどを多重化してビットストリームを形成する。最終的には、ビットストリームは端子１１２から外部に出力される。
【００４４】
図９（ａ）に符号化された動きベクトル予測制御情報を含んだビットストリームの例を示す。動きベクトル予測制御情報は動きベクトル予測制御情報符号としてシーケンス、ピクチャ等のヘッダのいずれかに含まれる。本実施形態では図９（ａ）に示されるようにピクチャのヘッダ部分に含まれるものとする。
【００４５】
図３は、第１の実施形態に係る画像符号化装置における符号化処理を示すフローチャートである。
【００４６】
まず、ステップＳ３０１にて、画像解析部１０２は入力画像を解析し、解析して得た情報を画像解析情報とする。画像解析情報は統合符号化部１１１によって符号化される。
【００４７】
ステップＳ３０２にて、動きベクトル予測制御情報生成部１０３は、符号化対象の着目ブロックに空間的に隣接したブロック以外の同一フレーム内のブロックを符号化時に用いた動きベクトルを、着目ブロックの動きベクトルの候補として加えるか否かを決定する。そして、その情報を動きベクトル予測制御情報とし、動きベクトル予測制御情報も統合符号化部１１１によって符号化される。
【００４８】
ステップＳ３０３にて、予測部１０４は入力された画像データを複数のブロックに切り出し、ブロック単位でイントラ予測ないしはインター予測を行い、予測情報および予測画像データを生成する。さらに入力された画像データと前記予測画像データから予測誤差を算出する。
【００４９】
ステップＳ３０４にて、変換・量子化部１０５はステップＳ３０３で算出された予測誤差を直交変換して変換係数を生成し、さらに量子化を行い、量子化係数を生成する。
【００５０】
ステップＳ３０５にて、逆量子化・逆変換部１０６はステップＳ３０４で生成された量子化係数を逆量子化・逆直交変換し、予測誤差を再生する。
【００５１】
ステップＳ３０６にて、画像再生部１０７はステップＳ３０３で生成された予測情報に基づいて予測画像を再生する。さらに再生された予測画像とステップＳ３０５で生成された予測誤差から画像データを再生する。
【００５２】
ステップＳ３０７にて、符号化部１１０は、ステップＳ３０３で生成された予測情報およびステップＳ３０４で生成された量子化係数を符号化し、符号データを生成する。また、他の符号データも含め、ビットストリームを生成する。
【００５３】
ステップＳ３０８にて、画像符号化装置は、フレーム内の全てのブロックの符号化が終了したか否かの判定を行い、終了していれば符号化処理を終了し、そうでなければ次のブロックを対象として、ステップＳ３０３に戻る。
【００５４】
以上の構成と動作により、特にステップＳ３０２において、投影画像の性質に適した動きベクトル予測制御を算出し、ステップＳ３０３において適用することで、動きベクトル予測の効率をさらに高めることができる。結果として、動きベクトル情報の符号化にかかる符号量を削減することができるようになるため、圧縮効率を向上させることができる。  なお、本実施形態では、図５（ａ）に示す通り、画像の水平位置で中心に当たる位置に線対称の基準となる線分が存在するものとしたが、線分の位置は中心に限定されず、また水平方向だけでなく垂直方向に線対称であっても構わない。また、その場合、線分の位置や水平・垂直といった線対称の方向に関する情報を上述の動きベクトル予測制御情報に含んでも良い。
【００５５】
例えば、同様なＥＲＰを用いた投影画像において、視点が右方から左方に向かって動く場合、左方から前・後ろを通り右方に風景が動いていくことになる。このような場合、左方と右方を結んだ水平方向の線分を基準に線対称の動き（水平方向は同一、垂直方向は上下反転した動き）をすることが多くなる。このような場合、図５（ｂ）に示したように、こうした水平方向の線分を基準に線対称の位置のブロックの動きベクトルを用いて動きベクトル予測をしても良い。例えば、図５（ｂ）において、符号化対象の着目ブロックＣの符号化時に、左方と右方を結んだ線に当たる水平方向の点線を基準に水平位置で線対称の位置のブロックＳの動きベクトルを活用し、着目ブロックＣの動きベクトル候補に追加することも可能である。
【００５６】
さらには、ＥＲＰなどの投影方法の特性を活かし、図６（ａ）や図６（ｂ）のように、中央の垂直線分に対して線対称の関係を持たない非隣接ブロックの動きベクトルを用いて動きベクトル予測をすることもできる。図６（ａ）および図６（ｂ）において、符号化対象である着目ブロックＣを符号化する際、図６（ａ）における着目ブロックＣとは反対側に位置するブロックＲ’やブロックＵＲ’は、二次元の投影映像上は隣接していないが、ＥＲＰの特性上、ＣとＲ’、ＵとＵＲ’は元との物理空間ではつながっており、同一のオブジェクトの一部を構成している可能性が高い。よって、図６（ａ）のように、着目ブロックＣが画像の右端近傍にあとき、既に符号化済のブロックＲ’やブロックＵＲ’の動きベクトルを用いて動きベクトル予測をすることも可能である。同様にして、図６（ｂ）のブロックＣの符号化時に、既に符号化済であるブロックＵＬ’の動きベクトルを用いて動きベクトル予測をすることも可能である。
【００５７】
なお、本実施形態では図９（ａ）に示すように、動きベクトル予測制御情報をピクチャヘッダ部分で符号化するものとしたが、符号化される位置はこれに限定されない。図９（ｂ）に示されるように画像のシーケンスヘッダ部分で符号化されても良いし、他の位置で符号化されても構わない。
【００５８】
また、本実施形態では動きベクトル予測制御情報のみを符号化してビットストリームに含める構成としたが、図９（ｃ）や図９（ｄ）に示されるように画像解析情報も符号化してビットストリームに含める構成としても構わない。また、その場合、画像解析情報はシーケンスヘッダやピクチャヘッダではなく、図９（ｅ）に示されるように補助情報（ＳＥＩ）としてビットストリームとは別の形で符号化する構成としても良い。
【００５９】
また、本実施形態ではＥＲＰにより二次元に投影された３６０°映像が入力された構成としたが、ＥＲＰ以外の方法で二次元に投影された映像が入力される構成としても構わない。
【００６０】
以上説明したように、本第１の実施形態によれば、符号化対象の映像が被写体を２次元平面とし、且つ矩形範囲で撮影して得た画像データである場合には、２次元座標空間で前記着目ブロックの周辺のブロックの動きベクトルを参照して符号化を行うことで、これまで通りの符号化を行うことができる。そして、符号化対象が３６０°映像を２次元投影された映像の場合には、通常の周囲ブロックに加え、符号化対象の着目ブロックと同一フレーム内にあって、周辺ブロック以外の符号化済のブロックをも参照範囲に追加する。この結果、映像が通常の画角の２次元平面画像と同様に符号化する場合と比較して、符号化に係る処理負担は、追加する動きベクトルだけ増えるものの、発生する符号量をこれまでよりも少なくすることが期待できる。
【００６１】
なお、上記実施形態では、符号化対象の映像が、図１０に示す球形の３６０°映像をＥＲＰにより２次元投影してえた映像であるものとして説明した。しかし、例えば図１１に示すように、魚眼レンズ等で半球空間の映像１１００を、中心点１１０１から切り出し線１１０２で切り出し、投影した映像１１０３を符号化対象としても良い。この場合、映像１１０３の上端が先に示した式（１）、（３）を満たすか否かを判定して、かかる投影画像か否かを判定できる。また、図１２に示すように、一つの軸（垂直軸）の軸回りの全方位の映像１２０１を線分１２０２で切り離して映像１２０３を符号化対象としても良い。この場合、式（３）から判定することになる。
【００６２】
［第２の実施形態］
次に、上記第１の実施形態での画像符号化装置で生成された符号化ストリームを復号する画像復号装置を第２の実施形態として説明する。
【００６３】
画像復号装置は、入力端子２０１、分離復号部２０２、復号部２０３、逆量子化・逆変換部２０４、画像再生部２０５、動きベクトルメモリ２０６、フレームメモリ２０７、及び、出力端子２０８を有する。
【００６４】
入力端子２０１は、第１の実施形態の画像符号化装置で生成された符号化動画像のビットストリームを入力する。分離復号部２０２は、入力したビットストリームから復号処理に関する情報や係数に関する符号データに分離し、またビットストリームのヘッダ部に存在する符号データを復号する。本実施形態では、動きベクトル予測制御情報を再生し、後段に出力する。なお、分離復号部２０２は、図１の統合符号化部１１１と逆の動作を行う。
【００６５】
復号部２０３は、分離復号部２０２から出力された符号データを復号し、量子化係数および予測情報を再生する。逆量子化・逆変換部２０４は、図１の逆量子化・逆変換部１０６と同様、ブロック単位で量子化係数を入力し、逆量子化を行って変換係数を得、さらに逆直交変換を行い、予測誤差を再生する。
【００６６】
動きベクトルメモリ２０６には、再生されたブロックの動きベクトルが格納される。フレームメモリ２０７には、再生されたピクチャの画像データが格納される。
【００６７】
画像再生部２０５は、入力された予測情報に基づいてフレームメモリ２０７や動きベクトルメモリ２０６を適宜参照して、着目ブロックの予測画像データを生成する。そして、この予測画像データと、逆量子化・逆変換部２０４で再生された着目ブロックの予測誤差とから着目ブロックの再生画像データを生成し、出力端子２０８より出力する。
【００６８】
上記構成における実施形態の画像復号装置における復号動作の更なる詳細を以下に説明する。復号対象の符号化画像のビットストリームは第１の実施形態の画像符号化装置で生成されたものとする。
【００６９】
入力端子２０１から入力されたビットストリームは分離復号部２０２に供給される。分離復号部２０２は、入力したビットストリームから復号処理に関する情報や係数に関する符号データに分離し、ビットストリームのヘッダ部に存在する符号データを復号する。具体的には、動きベクトル予測制御情報を再生する。本実施形態では、まず、図９（ａ）に示されるビットストリームのピクチャヘッダから動きベクトル予測制御情報符号を抽出して復号する。このようにして得られた動きベクトル予測制御情報は復号部２０３に出力される。続いて、ピクチャデータのブロック単位の符号データを再生し、これも復号部２０３に出力する。
【００７０】
復号部２０３では、符号データを復号し、量子化係数および予測情報を再生する。再生された量子化係数は逆量子化・逆変換部２０４に出力され、再生された予測情報は画像再生部２０５に出力される。予測情報のうち、動きベクトルの再生については、第１の実施形態の符号化部１１０とは逆の処理を行う。具体的にはまず、復号対象ブロックにおける予測動きベクトルの識別子を復号し再生する。分離復号部２０２から入力された動きベクトル予測制御情報や再生された動きベクトルの識別子に基づいて動きベクトルメモリ２０６を参照し予測動きベクトルを生成する。
【００７１】
本第２の実施形態における予測動きベクトルの生成方法について、具体的に説明する。まず、復号対象の着目ブロックが図５（ａ）のブロックＣであるとし、ＵＬ、Ｕ、ＵＲ、Ｌ、ＢＬは着目ブロックＣに隣接するブロック、ブロックＳは画像の中心を通る垂直点線を基準に線対称の位置にあるブロックとする。ここで再生された動きベクトルの識別子により、動きベクトル予測候補の中からどのブロックの動きベクトルを動きベクトル予測に用いるかを選択する。ブロックＣに隣接するブロック、すなわち既存の動きベクトル予測候補（ＵＬ、Ｕ、ＵＲ、Ｌ、ＢＬなど）が選択された場合には選択されたブロックの動きベクトルを予測動きベクトルとする。また、ブロックＳにあたるブロックが選択された場合、ブロックＳの動きベクトル（ＭＶｓｘ、ＭＶｓｙ）の水平成分の正負の符号を反転させた（−ＭＶｓｘ、ＭＶｓｙ）を予測動きベクトルとする。本実施形態では第１の実施形態と同様、既存の動きベクトル予測候補（ＵＬ、Ｕ、ＵＲ、Ｌ、ＢＬなど）に加えて、（−ＭＶｓｘ、ＭＶｓｙ）も新たな動きベクトル予測候補とするものとするが、これに限定されない。既存の動きベクトル予測候補（ＵＬ、Ｕ、ＵＲ、Ｌ、ＢＬなど）のうちの１つを置き換える構成としても良い。また、復号済のフレームのブロックの動きベクトルを予測候補として用いる時間的動きベクトル予測の変わりに（−ＭＶｓｘ、ＭＶｓｙ）を予測候補としても良い。さらには、Ｓにあたる位置のブロックが復号済の場合のみ（−ＭＶｓｘ、ＭＶｓｙ）を既存の予測候補と置き換え、そうでない場合には既存の予測候補をそのまま用いる構成としても良い。
【００７２】
次に復号対象ブロックの動きベクトルと前記予測動きベクトルとの差分をビットストリームから復号し、再生された差分と予測動きベクトルから復号対象ブロックの動きベクトルを再生する。再生された動きベクトルは画像再生部２０５に出力される予測情報に含まれるとともに、動きベクトルメモリ２０６にも格納される。
【００７３】
逆量子化・逆変換部２０４は、入力された量子化係数に対し逆量子化を行って直交変換係数を生成し、さらに逆直交変換を施して予測誤差を再生する。再生された予測情報は画像再生部２０５に出力される。
【００７４】
画像再生部２０５では、復号部２０３から入力された予測情報に基づいて、フレームメモリ２０７や動きベクトルメモリ２０６を適宜参照し、予測画像を再生する。画像再生部２０５は、この予測画像と、逆量子化・逆変換部２０４から入力された予測誤差から、復号対象のブロックの画像データを再生し、フレームメモリ２０７に入力し、格納する。格納された画像データは予測の際の参照に用いられる。
【００７５】
フレームメモリ２０７に格納された再生画像は、最終的には端子２０８から外部に出力される。
【００７６】
図４は、第２の実施形態に係る画像復号装置における画像の復号処理を示すフローチャートである。
【００７７】
まず、ステップＳ４０１にて、分離復号部２０２はビットストリームから復号処理に関する情報や係数に関する符号データに分離して、ヘッダ部分の符号データを復号し、動きベクトル予測制御情報を再生する。
【００７８】
ステップＳ４０２にて、復号部２０３はステップＳ４０１で分離された符号データを復号し、量子化係数および予測情報を再生する。予測情報に含まれる復号対象ブロックの動きベクトルに関しては、ステップＳ４０１で生成された動きベクトル予測制御情報に基づき、動きベクトルメモリ２０６を参照しながら復号対象ブロックの動きベクトルを再生する。
【００７９】
ステップＳ４０３にて、逆量子化・逆変換部２０４はブロック単位で量子化係数に対し逆量子化を行って変換係数を得、さらに逆直交変換を行い、予測誤差を再生する。
【００８０】
ステップＳ４０４にて、画像再生部２０５はステップＳ４０２で生成された予測情報や予測画像を再生する。さらに再生された予測画像とステップＳ４０３で生成された予測誤差から画像データを再生する。
【００８１】
ステップＳ４０５にて、画像復号装置は着目フレーム内の全てのブロックの復号が終了したか否かの判定を行い、終了していれば再生された画像を生成し、処理を終了する。そうでなければ、次のブロックを対象としてステップＳ４０２に戻る。
【００８２】
以上の構成と動作により、第１の実施形態で生成された、投影画像の性質に適した動きベクトル予測制御を用いたビットストリームを復号することができる。
【００８３】
なお、本実施形態では図５（ａ）に示すように、動きベクトル予測制御情報がピクチャヘッダ部分に含まれているビットストリームを復号するものとしたが、情報の符号化位置はこれに限定されない。図５（ｂ）に示されるように画像のシーケンスヘッダ部分で符号化されていても良いし、他の位置で符号化されていても構わない。
【００８４】
［第３の実施形態］
図１、図２に示した各処理部はハードウェアでもって構成しているものとして上記実施形態では説明した。しかし、これらの図に示した各処理部で行う処理をコンピュータプログラムでもって構成しても良い。
【００８５】
図８は、上記各実施形態に係る画像表示装置に適用可能なコンピュータのハードウェアの構成例を示すブロック図である。
【００８６】
ＣＰＵ８０１は、ＲＡＭ８０２やＲＯＭ８０３に格納されているコンピュータプログラムやデータを用いてコンピュータ全体の制御を行うと共に、上記各実施形態に係る画像処理装置が行うものとして上述した各処理を実行する。即ち、ＣＰＵ８０１は、図１、図２に示した各処理部として機能することになる。
【００８７】
ＲＡＭ８０２は、外部記憶装置８０６からロードされたコンピュータプログラムやデータ、Ｉ／Ｆ（インターフェース）８０７を介して外部から取得したデータなどを一時的に記憶するためのメモリである。更に、ＲＡＭ８０２は、ＣＰＵ８０１が各種の処理を実行する際に用いるワークエリアとしても利用される。即ち、ＲＡＭ８０２は、例えば、フレームメモリとして割り当てたり、その他の各種のエリアを適宜提供したりすることができる。
【００８８】
ＲＯＭ８０３には、本コンピュータの設定データや、ブートプログラムなどが格納されている。操作部８０４は、キーボードやマウスなどにより構成されており、本コンピュータのユーザが操作することで、各種の指示をＣＰＵ８０１に対して入力することができる。表示部８０５は、ＣＰＵ８０１による処理結果を表示する。また表示部８０５は例えば液晶ディスプレイで構成される。
【００８９】
外部記憶装置８０６は、ハードディスクドライブ装置に代表される、大容量情報記憶装置である。外部記憶装置８０６には、ＯＳ（オペレーティングシステム）や、図１、図２に示した各部の機能をＣＰＵ８０１に実現させるためのコンピュータプログラムが保存されている。更には、外部記憶装置８０６には、処理対象としての各画像データが保存されていても良い。
【００９０】
外部記憶装置８０６に保存されているコンピュータプログラムやデータは、ＣＰＵ８０１による制御に従って適宜、ＲＡＭ８０２にロードされ、ＣＰＵ８０１による処理対象となる。Ｉ／Ｆ８０７には、ＬＡＮやインターネット等のネットワーク、投影装置や表示装置などの他の機器を接続することができ、本コンピュータはこのＩ／Ｆ８０７を介して様々な情報を取得したり、送出したりすることができる。８０８は上述の各部を繋ぐバスである。
【００９１】
上述の構成からなる作動は前述のフローチャートで説明した作動をＣＰＵ８０１が中心となってその制御を行うことで、図１、図２に示す各種処理部として機能することになる。
【００９２】
（その他の実施例）
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【産業上の利用可能性】
【００９３】
本発明は静止画・動画の符号化・復号を行う符号化装置・復号装置に用いられる。特に、動きベクトル予測処理を使用する符号化方式および復号方式に適用が可能である。
【符号の説明】
【００９４】
１０１、２０１…入力端子、１０２…画像解析部、１０３…動きベクトル予測制御情報生成部、１０４…予測部、１０５…変換・量子化部、１０６、２０４…逆量子化・逆変換部、１０７、２０５…画像再生部、１０８、２０７…フレームメモリ、１０９、２０６…動きベクトルメモリ、１１０…符号化部、１１１…統合符号化部、２０２…分離復号部、２０３…復号部、１１２、２０８…出力端子
【図１】
2019161410.tif 000003
【図２】
2019161410.tif 000004
【図３】
2019161410.tif 000005
【図４】
2019161410.tif 000006
【図５】
2019161410.tif 000007
【図６】
2019161410.tif 000008
【図７】
2019161410.tif 000009
【図８】
2019161410.tif 000010
【図９】
2019161410.tif 000011
【図１０】
2019161410.tif 000012
【図１１】
2019161410.tif 000013
【図１２】
2019161410.tif 000014