JP2018182435A - 動きベクトル予測装置及びコンピュータプログラム - Google Patents
動きベクトル予測装置及びコンピュータプログラム Download PDFInfo
- Publication number
- JP2018182435A JP2018182435A JP2017076238A JP2017076238A JP2018182435A JP 2018182435 A JP2018182435 A JP 2018182435A JP 2017076238 A JP2017076238 A JP 2017076238A JP 2017076238 A JP2017076238 A JP 2017076238A JP 2018182435 A JP2018182435 A JP 2018182435A
- Authority
- JP
- Japan
- Prior art keywords
- motion vector
- unit
- predicted motion
- prediction
- foe
- 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
Images
Landscapes
- Image Analysis (AREA)
- Studio Devices (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
【課題】カメラが移動しながら撮影した映像から深度情報を用いずに、動きベクトルの向きと大きさをより精度良く予測すること。【解決手段】符号化済みブロックから予測動きベクトルノルムを取得する予測動きベクトルノルム取得部と、与えられた角度に関連する情報に基づいて、予測動きベクトルの角度を取得する予測動きベクトル角度取得部と、予測動きベクトルノルムと予測動きベクトルの角度とに基づいて、符号化対象ブロックの予測動きベクトルを取得するベクトル取得部と、を備える動きベクトル予測装置。【選択図】図3
Description
本発明は、動きベクトル予測装置及びコンピュータプログラムに関する。
従来の動画像符号化技術では、画面間での被写体の動きをとらえて予測画像を作成し、予測画像と実際の画像との差分(予測差分)を符号化することで大幅にデータ量を削減している。このとき、予測差分とともに、画面間での被写体の動きを表す動きベクトルを符号化する必要がある。このように従来では、符号量削減のために、動きベクトル自体を予測し、差分の符号化が行われている。
従来の動きベクトル予測技術としては、動画像符号化標準規格H.265/HEVCにおいて用いられている空間方向予測と時間方向予測がある(例えば、非特許文献1参照)。空間方向予測においては、符号化する対象のブロック(以下「符号化対象ブロック」という。)に隣接した符号化済みブロックから動きベクトルを取得し、取得した動きベクトルを予測動きベクトルとして定める。時間方向予測においては、符号化対象ブロックと略同位置にある時間的に異なる別の画像内のブロックから動きベクトルを取得し、取得した動きベクトルを予測動きベクトルとして定める。
また、上記の動きベクトル予測技術の他に、グローバル動き補償という技術を用いて動きベクトル予測を行う手法が提案されている(例えば、非特許文献2参照)。グローバル動き補償とは、パン・チルト・ズームといったカメラの動作に応じて生じる画面内全体の一様な動きを、カメラ動作ごとに決まったパラメータによって予測する手法である。
従来の動きベクトル予測技術としては、動画像符号化標準規格H.265/HEVCにおいて用いられている空間方向予測と時間方向予測がある(例えば、非特許文献1参照)。空間方向予測においては、符号化する対象のブロック(以下「符号化対象ブロック」という。)に隣接した符号化済みブロックから動きベクトルを取得し、取得した動きベクトルを予測動きベクトルとして定める。時間方向予測においては、符号化対象ブロックと略同位置にある時間的に異なる別の画像内のブロックから動きベクトルを取得し、取得した動きベクトルを予測動きベクトルとして定める。
また、上記の動きベクトル予測技術の他に、グローバル動き補償という技術を用いて動きベクトル予測を行う手法が提案されている(例えば、非特許文献2参照)。グローバル動き補償とは、パン・チルト・ズームといったカメラの動作に応じて生じる画面内全体の一様な動きを、カメラ動作ごとに決まったパラメータによって予測する手法である。
"ITU−T H.265"、2015年4月、p.141〜145
上倉一人、渡辺裕、"動画像符号化におけるグローバル動き補償法"、電子情報通信学会論文誌 B−I Vol.J76- B−I No.12 pp.944-952 1993年12月.
上記に示した既存の動きベクトル予測技術を、移動するカメラで撮影された映像に対して適用すると予測誤差が多く発生してしまう。
図11は、カメラが前方方向に移動している場合の動きベクトルの様子を表す図である。なお、図11では、予測に用いられる画像が時系列順で過去のものであるとしており、画面内の被写体は見かけ上画面奥から画面の周辺へと移動し、動きベクトルが画面奥のある点1に向けて伸びている。この点1を以下の説明では、FOE(focus of expansion:拡張焦点、又は、消失点という。)と記載する。動きベクトルは、FOEの方向を向いているが、その大きさは画面内で一様ではなく、カメラと被写体との距離(深度)に応じて変化する。カメラからの距離が近い被写体は見かけ上の動きが大きい。すなわち、動きベクトルが大きい。これに対し、背景などカメラからの距離が遠い被写体は見かけ上の動きが小さい。すわなち、動きベクトルが相対的に小さい。
図11は、カメラが前方方向に移動している場合の動きベクトルの様子を表す図である。なお、図11では、予測に用いられる画像が時系列順で過去のものであるとしており、画面内の被写体は見かけ上画面奥から画面の周辺へと移動し、動きベクトルが画面奥のある点1に向けて伸びている。この点1を以下の説明では、FOE(focus of expansion:拡張焦点、又は、消失点という。)と記載する。動きベクトルは、FOEの方向を向いているが、その大きさは画面内で一様ではなく、カメラと被写体との距離(深度)に応じて変化する。カメラからの距離が近い被写体は見かけ上の動きが大きい。すなわち、動きベクトルが大きい。これに対し、背景などカメラからの距離が遠い被写体は見かけ上の動きが小さい。すわなち、動きベクトルが相対的に小さい。
カメラが移動している状況下で得られる映像に対して空間方向予測を適用した場合、隣接ブロックと符号化対象ブロックとでは、ブロックサイズの分だけFOEまでの方向に違いが生じてしまう。そのため、この違いの分だけ予測ベクトルの向きに予測誤差が生じてしまう。
また、カメラが移動している状況下で得られる映像に対して時間方向予測を適用した場合、符号化対象ブロック内の被写体が、時間方向予測で選択される別の時間の画像内同一位置のブロック内の被写体と異なるような場合、カメラまでの距離が異なるため、動きベクトルの大きさが異なる。そのため、この違いの分だけ動きベクトルの大きさに予測誤差が生じてしまう。
また、カメラが移動している状況下で得られる映像に対して時間方向予測を適用した場合、符号化対象ブロック内の被写体が、時間方向予測で選択される別の時間の画像内同一位置のブロック内の被写体と異なるような場合、カメラまでの距離が異なるため、動きベクトルの大きさが異なる。そのため、この違いの分だけ動きベクトルの大きさに予測誤差が生じてしまう。
また、カメラが移動している状況下で得られる映像に対してグローバル動き補償を用いた動きベクトル予測を適用した場合、動きベクトルが被写体とカメラとの距離に応じて変化するため、画面内で同じ位置にあったとしてもベクトルの大きさが大きく異なる。しかし、グローバル動き補償は画面内の位置のみによって動きベクトルを推定するため、図12に示すように被写体とカメラとの距離による変化を推定できず予測ベクトルの大きさに予測誤差が生じてしまう。
被写体の深度情報がわかれば動きベクトルの大きさを予測可能ではあるが、深度センサといった専用機器を使用しなかった場合、非常に大きな計算コストをかけなければ深度を算出することができない。このように従来の技術では、カメラが移動しながら撮影した映像から深度情報を用いずに、動きベクトルの向きと大きさをより精度良く予測することができないという問題があった。
被写体の深度情報がわかれば動きベクトルの大きさを予測可能ではあるが、深度センサといった専用機器を使用しなかった場合、非常に大きな計算コストをかけなければ深度を算出することができない。このように従来の技術では、カメラが移動しながら撮影した映像から深度情報を用いずに、動きベクトルの向きと大きさをより精度良く予測することができないという問題があった。
上記事情に鑑み、本発明は、カメラが移動しながら撮影した映像から深度情報を用いずに、動きベクトルの向きと大きさをより精度良く予測することができる技術の提供を目的としている。
本発明の一態様は、処理済みブロックから予測動きベクトルノルムを取得する予測動きベクトルノルム取得部と、与えられた角度に関連する情報に基づいて、予測動きベクトルの角度を取得する予測動きベクトル角度取得部と、前記予測動きベクトルノルムと前記予測動きベクトルの角度とに基づいて、処理対象ブロックの予測動きベクトルを取得するベクトル取得部と、を備える動きベクトル予測装置である。
本発明の一態様は、上記の動きベクトル予測装置であって、前記予測動きベクトルノルム取得部は、処理対象ブロックと略同じ奥行の処理済みブロックを用いて前記予測動きベクトルノルムを取得する。
本発明の一態様は、上記の動きベクトル予測装置であって、前記予測動きベクトルノルム取得部は、処理対象ブロックの隣接ブロックである処理済みブロックから前記予測動きベクトルノルムを取得する。
本発明の一態様は、上記の動きベクトル予測装置であって、前記与えられた角度に関連する情報は、少なくともFOE(focus of expansion)座標に基づく情報である。
本発明の一態様は、処理済みブロックから予測動きベクトルノルムを取得する予測動きベクトルノルム取得部と、少なくともFOE(focus of expansion)座標に基づく情報に基づいて、予測動きベクトルの角度を取得する予測動きベクトル角度取得部と、前記予測動きベクトルノルムと前記予測動きベクトルの角度とに基づいて、処理対象ブロックの予測動きベクトルを取得するベクトル取得部と、を備え、前記予測動きベクトルノルム取得部は、処理対象ブロックの隣接ブロックである処理済みブロックを用いて前記予測動きベクトルノルムを取得する動きベクトル予測装置である。
本発明の一態様は、コンピュータに、処理済みブロックから予測動きベクトルノルムを取得する予測動きベクトルノルム取得ステップと、与えられた角度に関連する情報に基づいて、予測動きベクトルの角度を取得する予測動きベクトル角度取得ステップと、前記予測動きベクトルノルムと前記予測動きベクトルの角度とに基づいて、処理対象ブロックの予測動きベクトルを取得するベクトル取得ステップと、を実行させるためのコンピュータプログラムである。
本発明の一態様は、コンピュータに、処理済みブロックから予測動きベクトルノルムを取得する予測動きベクトルノルム取得ステップと、少なくともFOE(focus of expansion)座標に基づく情報に基づいて、予測動きベクトルの角度を取得する予測動きベクトル角度取得ステップと、前記予測動きベクトルノルムと前記予測動きベクトルの角度とに基づいて、処理対象ブロックの予測動きベクトルを取得するベクトル取得ステップと、を実行させ、前記予測動きベクトルノルム取得ステップにおいて、処理対象ブロックの隣接ブロックである処理済みブロックを用いて前記予測動きベクトルノルムを取得するためのコンピュータプログラムである。
本発明により、カメラが移動しながら撮影した映像から深度情報を用いずに、動きベクトルの向きと大きさをより精度良く予測することが可能となる。
以下、本発明の一実施形態を、図面を参照しながら説明する。
まず始めに本発明における前提条件について説明する。
(前提条件)
・車載カメラ映像などのようにカメラ自体が移動しながら撮影した映像を用いる。カメラ自体が移動しながら撮影した映像としては、車載カメラによって撮影された映像、ドローンによって撮影された映像、ウェアラブルカメラによって撮影された映像、通常のカメラをユーザが持ち歩いて移動しながら撮影された映像が挙げられる。
・カメラの速度・角速度及び深度情報は使用できないものとする。
まず始めに本発明における前提条件について説明する。
(前提条件)
・車載カメラ映像などのようにカメラ自体が移動しながら撮影した映像を用いる。カメラ自体が移動しながら撮影した映像としては、車載カメラによって撮影された映像、ドローンによって撮影された映像、ウェアラブルカメラによって撮影された映像、通常のカメラをユーザが持ち歩いて移動しながら撮影された映像が挙げられる。
・カメラの速度・角速度及び深度情報は使用できないものとする。
(第1の実施形態)
図1は、本発明の第1実施形態における映像符号化装置1の構成を示すブロック図である。映像符号化装置1は、例えば、HEVC(High Efficiency Video Coding)と呼ばれるH.265や、H.264等の符号化方式においてエンコーダとして適用される装置である。
映像符号化装置1は、バスで接続されたCPU(Central Processing Unit)やメモリや補助記憶装置などを備え、プログラムを実行する。映像符号化装置1は、プログラムの実行によって減算器11、直交変換・量子化部12、可変長符号化部13、逆量子化・逆直交変換部14、加算器15、イントラ予測部16、ループフィルタ部17、復号ピクチャ記憶部18、インター予測部19、イントラ/インター切り替えスイッチ20、インター予測情報記憶部23を備える装置として機能する。なお、映像符号化装置1の各機能の全て又は一部は、ASIC(Application Specific Integrated Circuit)やPLD(Programmable Logic Device)やFPGA(Field Programmable Gate Array)等のハードウェアを用いて実現されてもよい。プログラムは、コンピュータ読み取り可能な記録媒体に記録されてもよい。コンピュータ読み取り可能な記録媒体とは、例えばフレキシブルディスク、光磁気ディスク、ROM、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置である。プログラムは、電気通信回線を介して送信されてもよい。
図1は、本発明の第1実施形態における映像符号化装置1の構成を示すブロック図である。映像符号化装置1は、例えば、HEVC(High Efficiency Video Coding)と呼ばれるH.265や、H.264等の符号化方式においてエンコーダとして適用される装置である。
映像符号化装置1は、バスで接続されたCPU(Central Processing Unit)やメモリや補助記憶装置などを備え、プログラムを実行する。映像符号化装置1は、プログラムの実行によって減算器11、直交変換・量子化部12、可変長符号化部13、逆量子化・逆直交変換部14、加算器15、イントラ予測部16、ループフィルタ部17、復号ピクチャ記憶部18、インター予測部19、イントラ/インター切り替えスイッチ20、インター予測情報記憶部23を備える装置として機能する。なお、映像符号化装置1の各機能の全て又は一部は、ASIC(Application Specific Integrated Circuit)やPLD(Programmable Logic Device)やFPGA(Field Programmable Gate Array)等のハードウェアを用いて実現されてもよい。プログラムは、コンピュータ読み取り可能な記録媒体に記録されてもよい。コンピュータ読み取り可能な記録媒体とは、例えばフレキシブルディスク、光磁気ディスク、ROM、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置である。プログラムは、電気通信回線を介して送信されてもよい。
減算器11には、映像符号化装置1に入力された入力画像と、イントラ/インター切り替えスイッチ20を介してイントラ予測部16、またはインター予測部19が出力する予測画像情報との差を算出する。また、減算器11は、算出した差に基づく差分画像情報を直交変換・量子化部12に出力する。
直交変換・量子化部12は、減算器11が出力する差分画像情報に対して、直交変換と量子化を行い、可変長符号化部13と逆量子化・逆直交変換部14に出力する。可変長符号化部13は、直交変換・量子化部12が出力する量子化係数を可変長符号化して符号化データを生成し、生成した符号化データを外部に出力する。また、可変長符号化部13は、インター予測情報記憶部23に記憶されているインター予測に関する情報を読み出し、可変長符号化して符号化データを生成し、生成した符号化データを外部に出力する。インター予測に関する情報とは、例えば、符号化済み動きベクトルである。
逆量子化・逆直交変換部14は、直交変換・量子化部12が出力する量子化係数に対して、逆量子化と逆直交変換を行って差分画像情報を復号して加算器15に出力する。加算器15は、逆量子化・逆直交変換部14が出力する復号差分画像情報と、イントラ/インター切り替えスイッチ20を介してイントラ予測部16、またはインター予測部19が出力する予測画像情報との和を算出する。また、加算器15は、算出した和に基づく復号画像情報をイントラ予測部16とループフィルタ部17に出力する。
イントラ予測部16は、加算器15が出力する復号画像情報を参照フレームとして、符号化対象フレームに含まれる符号化対象ブロックのイントラ予測画像情報を生成する。
ループフィルタ部17は、加算器15が出力する復号画像情報にループフィルタを適用し、ループフィルタを適用した復号画像情報を復号ピクチャ記憶部18に書き込んで記憶させる。
ループフィルタ部17は、加算器15が出力する復号画像情報にループフィルタを適用し、ループフィルタを適用した復号画像情報を復号ピクチャ記憶部18に書き込んで記憶させる。
復号ピクチャ記憶部18は、ループフィルタ部17の出力を格納する。復号ピクチャ記憶部18に格納された復号画像情報は、インター予測部19に出力される。復号画像情報は、符号化対象ブロックのインター予測及び動きベクトルの検出時に参照画像として利用される。
インター予測部19は、入力画像と復号ピクチャ記憶部18から出力される参照画像(復号画像)とを用いて動きベクトルを検出する。そして、インター予測部19は、動きベクトルと、参照画像である復号画像とに基づいてインター予測画像情報を生成する。また、インター予測部19は、動きベクトルの予測を行い、動きベクトルと、予測動きベクトルとの差分を符号化し、符号化した差分と、予測動きベクトルのインデックスとを符号化済み動きベクトルとしてインター予測情報記憶部23に記憶する。
イントラ/インター切り替えスイッチ20は、符号化対象ブロックの予測モードに応じて、イントラ予測部16とインター予測部19とを切り替えて、イントラ予測部16が出力するイントラ予測画像情報、またはインター予測部19が出力するインター予測画像情報を減算器11と加算器15に出力する。
インター予測情報記憶部23は、符号化済み動きベクトルを記憶する。
インター予測情報記憶部23は、符号化済み動きベクトルを記憶する。
図2は、インター予測部19の構成例を示す図である。インター予測部19は、動きベクトル符号化部21及びインター予測画像生成部22を備える。
動きベクトル符号化部21は、動きベクトルを符号化する。動きベクトル符号化部21は、動きベクトル探索部211、動きベクトル予測部212及び動きベクトル予測残差符号化部213を備える。
動きベクトル探索部211は、符号化対象ブロックの座標と、画像情報とを入力とし、動きベクトルの探索と記録を行う。動きベクトル探索部211は、探索した動きベクトルを動きベクトル予測部212、動きベクトル予測残差符号化部213及びインター予測画像生成部22に出力する。
動きベクトル符号化部21は、動きベクトルを符号化する。動きベクトル符号化部21は、動きベクトル探索部211、動きベクトル予測部212及び動きベクトル予測残差符号化部213を備える。
動きベクトル探索部211は、符号化対象ブロックの座標と、画像情報とを入力とし、動きベクトルの探索と記録を行う。動きベクトル探索部211は、探索した動きベクトルを動きベクトル予測部212、動きベクトル予測残差符号化部213及びインター予測画像生成部22に出力する。
動きベクトル予測部212は、符号化対象ブロックの座標と、動きベクトル探索部211から出力された動きベクトルと、FOE座標とを入力とする。動きベクトル予測部212は、入力した符号化対象ブロックの座標と、動きベクトルと、FOE座標とに基づいて、従来の空間方向予測動きベクトルや時間方向予測動きベクトルと並行して、FOE方向予測動きベクトルを導出する。すなわち、動きベクトル予測部212は、複数種類の予測動きベクトルを導出する。
動きベクトル予測残差符号化部213は、動きベクトル予測部212から入力される複数種類の予測動きベクトルと、動きベクトル探索部211から入力される実際の動きベクトルとを用いて、動きベクトルの符号化を行う。具体的には、動きベクトル予測残差符号化部213は、複数種類の予測動きベクトルの中から1つの予測動きベクトルを選択し、選択した予測動きベクトルと、動きベクトルとの差分ベクトルを取得する。動きベクトル予測残差符号化部213は、取得した差分ベクトルと、差分ベクトルの導出に用いた予測動きベクトルがどれかを示すインデックスとを符号化して得られる符号化済み動きベクトルをインター予測情報記憶部23に出力する。
動きベクトル予測残差符号化部213は、動きベクトル予測部212から入力される複数種類の予測動きベクトルと、動きベクトル探索部211から入力される実際の動きベクトルとを用いて、動きベクトルの符号化を行う。具体的には、動きベクトル予測残差符号化部213は、複数種類の予測動きベクトルの中から1つの予測動きベクトルを選択し、選択した予測動きベクトルと、動きベクトルとの差分ベクトルを取得する。動きベクトル予測残差符号化部213は、取得した差分ベクトルと、差分ベクトルの導出に用いた予測動きベクトルがどれかを示すインデックスとを符号化して得られる符号化済み動きベクトルをインター予測情報記憶部23に出力する。
すなわち、動きベクトル予測残差符号化部213による動きベクトル符号化の対象は、動きベクトルから予測動きベクトルを引いた差分ベクトルの成分と、差分ベクトル導出に用いた予測動きベクトルがどれかを示すインデックスである。差分ベクトル導出に用いる予測動きベクトルは、次のように選ぶことができる。例えば、入力された全ての予測動きベクトルを用いて差分ベクトルを計算し、符号化した際に符号量が最も小さくなるものを選んでもよい。また、予め定められた優先順位を予測動きベクトルに適用し、差分ベクトルを計算する候補を制限してもよい。このようにすることで、符号化する際のインデックスを減らすことができる。また、入力された予測動きベクトル間の相対的な違いによって、差分ベクトルを計算する候補を制限してもよい。相対的な違いとしては、ベクトルの大きさや角度の差が閾値よりも小さいあるいは大きいもの、とすることが出来る。また、入力された予測動きベクトルの線型結合を用いてもよい。線形結合としては、平均や、何らかの重み付けを行うことができる。
インター予測画像生成部22は、動きベクトル探索部211から出力された動きベクトルと、参照画像である復号画像とに基づいてインター予測画像を生成する。インター予測画像生成部22は、生成したインター予測画像をインター予測画像情報として出力する。
インター予測画像生成部22は、動きベクトル探索部211から出力された動きベクトルと、参照画像である復号画像とに基づいてインター予測画像を生成する。インター予測画像生成部22は、生成したインター予測画像をインター予測画像情報として出力する。
図3は、動きベクトル予測部212の構成例を示す図である。動きベクトル予測部212は、時間方向動きベクトル予測部2121、空間方向動きベクトル予測部2122及びFOE方向動きベクトル予測部2123を備える。
時間方向動きベクトル予測部2121は、別ピクチャ内ブロック動きベクトルと、符号化対象ブロック座標とを入力とし、時間方向予測動きベクトルを導出する。時間方向予測動きベクトルの導出の方法は、既存の技術が用いられる。
時間方向動きベクトル予測部2121は、別ピクチャ内ブロック動きベクトルと、符号化対象ブロック座標とを入力とし、時間方向予測動きベクトルを導出する。時間方向予測動きベクトルの導出の方法は、既存の技術が用いられる。
空間方向動きベクトル予測部2122は、符号化対象ブロック座標と、周辺ブロック動きベクトルとを入力とし、空間方向予測動きベクトルを導出する。空間方向予測動きベクトルの導出の方法は、既存の技術が用いられる。
FOE方向動きベクトル予測部2123は、動きベクトル予測装置の一例である。FOE方向動きベクトル予測部2123は、符号化対象ブロック座標と、周辺ブロック動きベクトルと、FOE座標とを入力とし、FOE方向予測動きベクトルを導出する。具体的には、FOE方向動きベクトル予測部2123は、符号化対象ブロックからFOEまでの方角と周辺ブロックの動きベクトルの大きさを求め、このふたつの情報を用いることによって符号化対象ブロックの動きベクトルを予測する。
FOE方向動きベクトル予測部2123は、動きベクトル予測装置の一例である。FOE方向動きベクトル予測部2123は、符号化対象ブロック座標と、周辺ブロック動きベクトルと、FOE座標とを入力とし、FOE方向予測動きベクトルを導出する。具体的には、FOE方向動きベクトル予測部2123は、符号化対象ブロックからFOEまでの方角と周辺ブロックの動きベクトルの大きさを求め、このふたつの情報を用いることによって符号化対象ブロックの動きベクトルを予測する。
図4は、FOE方向動きベクトル予測部2123の構成例を示す図である。FOE方向動きベクトル予測部2123は、FOE方向角度導出部21231、ノルム導出部21232及びベクトル導出部21233を備える。
FOE方向角度導出部21231は、入力されたFOE座標と、符号化対象ブロック座標とに基づいて、符号化対象ブロックとFOEとの相対的な位置関係を求め、FOE方向予測動きベクトルの向きを決定する。向きの導出は、例えばふたつの座標を結んだ線を斜辺に持つ直角三角形を考え、逆三角関数を用いて画面右方向を基準とした角度を計算する。
FOE方向角度導出部21231は、入力されたFOE座標と、符号化対象ブロック座標とに基づいて、符号化対象ブロックとFOEとの相対的な位置関係を求め、FOE方向予測動きベクトルの向きを決定する。向きの導出は、例えばふたつの座標を結んだ線を斜辺に持つ直角三角形を考え、逆三角関数を用いて画面右方向を基準とした角度を計算する。
符号化対象ブロック座標は、入力されたものを用いてもよいし、適当な補正を加えてもよい。例えば、本発明をH.265/HEVCに適用した場合、入力される符号化対象ブロック座標は符号化対象ブロックの左上画素の座標である(図5)。この場合、符号化対象ブロックのサイズ(縦横の画素数)の半分の値を座標に加えることで、符号化対象ブロックの中心部の座標を算出することもできる。入力された左上画素の座標ではなく中心部の座標を符号化対象ブロックの座標位置とすることで、より精確な向きが求まる。
このように、本実施形態における予測動きベクトルの向き(角度)は、従来技術とは異なり符号化済みブロックの動きベクトルから取得されない。なお、本実施形態における予測動きベクトルの向き(角度)は、符号化済みブロックの動きベクトルから取得されないものの、結果として符号化済みブロックの動きベクトルと同じ角度になる可能性がある。
ノルム導出部21232は、入力された周辺ブロック動きベクトルに基づいて、予測動きベクトルノルムを決定する。ここでノルムとは、ベクトルの長さを示すスカラー値のことである。周辺ブロック動きベクトルは、符号化対象ブロックに隣接した符号化済みブロックにおいて実際に決定された動きベクトルを用いる。このように、ノルム導出部21232は、符号化対象ブロックと略同じ奥行の符号化済みブロックを用いて予測動きベクトルノルムを決定する。動きベクトルを持つ符号化済みブロックが複数存在する場合、ノルム導出部21232は優先順位に従ってひとつを選択してもよいし、それらの線型和を取ってもよい。
優先順位としては、例えば図6に示すようなH.265/HEVCの空間方向予測で採用されているものがある。この場合、ノルム導出部21232は、符号化対象ブロック右上(B0)、上(B1)、左上(B2)の順と、符号化対象ブロック左下(A0)、左(A1)の順に探索し、それぞれ最初に見つかったふたつの動きベクトルを取得する。ノルム導出部21232は、このどちらかの動きベクトル、あるいはその線型和からノルムを求めてもよい。
また、ノルム導出部21232は、他の優先順位を用いてもよい。例えば、人工物が縦方向に垂直であることが多いため、符号化対象ブロックの上にあるブロックが映す被写体と深度が一致していると期待されることから、ノルム導出部21232は、上にあるブロックの動きベクトルを優先してもよい。また、その他の優先順位でもよい。または、画面内における符号化対象ブロックの位置によって、優先順位のつけ方を変えてもよい。例えば、画面両端では上にあるブロックから取得し、路面を映すことが多い画面中央下部では左にあるブロックから取得することにより、精度向上を図ることができる。線型和の方法としては、候補の平均でもよいし、優先順位に応じた重み付けをしてもよい。
ベクトル導出部21233は、FOE方向角度導出部21231から入力された予測動きベクトル角度と、ノルム導出部21232から入力された予測動きベクトルノルムとを用いて、FOE方向予測動きベクトルを決定する。例えば、ベクトル導出部21233は、通常の三角関数を用いて、角度とノルムからベクトルの縦成分横成分を算出する。
図7は、FOE方向動きベクトル予測部2123の処理の流れを示すフローチャートである。本実施形態においてFOE座標はフレーム毎に与えられるものとする。
FOE方向動きベクトル予測部2123は、入力されたフレームに対するFOE座標が入力されたか否か判定する(ステップS101)。FOE座標が入力されなかった場合(ステップS101−NO)、FOE方向動きベクトル予測部2123は零ベクトルを出力する(ステップS102)。
FOE方向動きベクトル予測部2123は、入力されたフレームに対するFOE座標が入力されたか否か判定する(ステップS101)。FOE座標が入力されなかった場合(ステップS101−NO)、FOE方向動きベクトル予測部2123は零ベクトルを出力する(ステップS102)。
一方、FOE座標が入力された場合(ステップS101−YES)、FOE方向動きベクトル予測部2123は周辺ブロック動きベクトルが存在するか否か判定する(ステップS103)。本実施形態では、映像符号化装置1は画面内の各ブロックに対して画面間予測または画面内予測どちらか一方を行っており、画面内予測が選択された場合には動きベクトルを持たない。隣接する符号化済みブロック全てが動きベクトルを持たない場合には、動きベクトル予測部212は周辺ブロック動きベクトルが存在しないと判定する。一方、隣接する符号化済みブロック全て又は一部が動きベクトルを持つ場合には、FOE方向動きベクトル予測部2123は周辺ブロック動きベクトルが存在すると判定する。
周辺ブロック動きベクトルが存在しない場合(ステップS103−NO)、FOE方向動きベクトル予測部2123は零ベクトルを出力する。
一方、周辺ブロック動きベクトルが存在する場合(ステップS103−YES)、FOE方向角度導出部21231は、符号化対象ブロック座標と、FOE座標とを用いて予測動きベクトル角度を決定する(ステップS104)。また、ノルム導出部21232は、決められた優先順位に従って、ノルムを決定するための動きベクトルを選択し、予測動きベクトルノルムを決定する(ステップS105)。
その後、ベクトル導出部21233は、予測動きベクトル角度と、予測動きベクトルノルムとに基づいてFOE方向予測動きベクトルを導出する(ステップS106)。そして、ベクトル導出部21233は、導出したFOE方向予測動きベクトルを出力する(ステップS107)。
一方、周辺ブロック動きベクトルが存在する場合(ステップS103−YES)、FOE方向角度導出部21231は、符号化対象ブロック座標と、FOE座標とを用いて予測動きベクトル角度を決定する(ステップS104)。また、ノルム導出部21232は、決められた優先順位に従って、ノルムを決定するための動きベクトルを選択し、予測動きベクトルノルムを決定する(ステップS105)。
その後、ベクトル導出部21233は、予測動きベクトル角度と、予測動きベクトルノルムとに基づいてFOE方向予測動きベクトルを導出する(ステップS106)。そして、ベクトル導出部21233は、導出したFOE方向予測動きベクトルを出力する(ステップS107)。
以上のように構成された映像符号化装置1によれば、カメラが移動しながら撮影した映像から深度情報を用いずに、動きベクトルの向きと大きさをより精度良く予測することが可能になる。従来の映像符号化技術は、被写体の並行移動が前提となっており、それ以外の場合には符号化効率が悪化してしまう。それに対し、本発明では、符号化済のブロックから動きベクトルの大きさだけを取得し、予め与えられる角度に基づいて動きベクトルの角度を取得し、取得した動きベクトルの大きさと角度とに基づいて動きベクトルを予測する。具体的には、映像符号化装置1は、符号化対象ブロックとFOEとの位置関係から予測動きベクトルの向きを、周辺ブロックの動きベクトルから予測動きベクトルの大きさを決定する。これにより、カメラと被写体との距離によって生じる動き量の違いを考慮して予測できる。このように、適切な角度と適切な大きさの情報を取得して予測動きベクトルを生成するため、深度情報を使わなくとも高精度な予測動きベクトルを得ることが可能になる。
(変形例)
本実施形態では、FOE座標がフレーム毎に入力される構成を示したが、FOE座標は数フレーム毎に入力されてもよい。
本実施形態では、FOE座標がフレーム毎に入力される構成を示したが、FOE座標は数フレーム毎に入力されてもよい。
(第2の実施形態)
第1の実施形態では、FOE座標は予め入力される。それに対し、第2の実施形態では、FOE座標を決定し、決定したFOE座標に基づいてFOE方向予測動きベクトルを導出する。なお、第2の実施形態では、映像符号化装置が備えるインター予測部の構成が第1の実施形態と異なる。第2の実施形態における映像符号化装置は、その他の構成については第1の実施形態における映像符号化装置が備える各機能部と同様の構成を備える。そこで、以下相違点についてのみ説明する。
第1の実施形態では、FOE座標は予め入力される。それに対し、第2の実施形態では、FOE座標を決定し、決定したFOE座標に基づいてFOE方向予測動きベクトルを導出する。なお、第2の実施形態では、映像符号化装置が備えるインター予測部の構成が第1の実施形態と異なる。第2の実施形態における映像符号化装置は、その他の構成については第1の実施形態における映像符号化装置が備える各機能部と同様の構成を備える。そこで、以下相違点についてのみ説明する。
図8は、第2の実施形態におけるインター予測部19aの構成例を示す図である。インター予測部19aは、動きベクトル符号化部21a及びインター予測画像生成部22を備える。
動きベクトル符号化部21aは、FOE座標を決定し、動きベクトルを符号化する。動きベクトル符号化部21aは、動きベクトル探索部211a、動きベクトル予測部212、動きベクトル予測残差符号化部213及びFOE決定部214を備える。動きベクトル予測部212及び動きベクトル予測残差符号化部213は、第1の実施形態における同名の機能部と同様の処理を行うため説明を省略する。
動きベクトル符号化部21aは、FOE座標を決定し、動きベクトルを符号化する。動きベクトル符号化部21aは、動きベクトル探索部211a、動きベクトル予測部212、動きベクトル予測残差符号化部213及びFOE決定部214を備える。動きベクトル予測部212及び動きベクトル予測残差符号化部213は、第1の実施形態における同名の機能部と同様の処理を行うため説明を省略する。
動きベクトル探索部211aは、符号化対象ブロックの座標と、画像情報とを入力とし、動きベクトルの探索と記録を行う。動きベクトル探索部211aは、探索した動きベクトルを動きベクトル予測部212、動きベクトル予測残差符号化部213及びFOE決定部214に出力する。
FOE決定部214は、動きベクトル探索部211aによって得られた動きベクトルを入力し、FOE座標の決定を行って動きベクトル予測部212に出力する。
FOE決定部214は、動きベクトル探索部211aによって得られた動きベクトルを入力し、FOE座標の決定を行って動きベクトル予測部212に出力する。
図9は、FOE決定部214の構成例を示す図である。FOE決定部214は、符号化済み画像FOE算出部2141、FOE記憶装置2142及び決定部2143を備える。
符号化済み画像FOE算出部2141は、動きベクトル探索部211aから出力された実際の動きベクトルを入力とし、既に符号化が行なわれた画像のFOE座標を求める。FOE座標は、画面全体の動きベクトルを順方向あるいは逆方向に延長した場合の交点であるが、実際の動画像中で全ての動きベクトルが一点に収束することは稀であるため、近似的に求める必要がある。
符号化済み画像FOE算出部2141は、動きベクトル探索部211aから出力された実際の動きベクトルを入力とし、既に符号化が行なわれた画像のFOE座標を求める。FOE座標は、画面全体の動きベクトルを順方向あるいは逆方向に延長した場合の交点であるが、実際の動画像中で全ての動きベクトルが一点に収束することは稀であるため、近似的に求める必要がある。
画像内の平行ではない動きベクトル二本を選択したとき、順方向あるいは逆方向に延長すれば必ず一点で交わる。これを選択された動きベクトルに関する仮のFOEとする。符号化済み画像FOE算出部2141は、異なる動きベクトルの組み合わせから仮のFOE座標を複数算出し、それら座標の中央値を取ることによって符号化済み画像FOE座標を算出する。
ここで座標の中央値とは、座標の縦方向成分に関する中央値と、横方向成分に関する中央値をとった値である。異なる動きベクトルの組み合わせは可能な限り多く取ることが望ましいが、計算量の観点から選択的に取ってもよい。例えば、符号化済み画像FOE算出部2141は、動きベクトルのうち、大きさがある閾値を超える動きベクトル、又は、閾値を下回る動きベクトルのみを選んでもよい。閾値としては、空などカメラの移動が影響しづらく動きベクトルがFOE方向を向かない箇所の影響を避けられるように定めるのが望ましい。または、画面を特定の区間に区切り、区間内から動きベクトルの代表を一本ずつ選んで組み合わせてもよい。特定の区間としては、画面左右、画面中央下部といった、被写体が実空間内で静止しておりかつ必要以上に遠方に位置しないと予想される箇所を取ることが望ましい。
FOE記憶装置2142は、符号化済み画像FOE算出部2141が求めた符号化済み画像FOE座標を記録する。符号化済み画像FOE座標は、画像一枚に付き一つずつ存在する。
決定部2143は、符号化済み画像FOE座標と、現在符号化している画像の符号化済みブロックの動きベクトルとを用いて、現在符号化している画像のFOE座標を決定する。新しい画像の符号化の開始時には、決定部2143は、FOE記憶装置2142に記録された符号化済み画像FOE座標を用いて新しい画像のFOE座標を決定する。
決定部2143は、符号化済み画像FOE座標と、現在符号化している画像の符号化済みブロックの動きベクトルとを用いて、現在符号化している画像のFOE座標を決定する。新しい画像の符号化の開始時には、決定部2143は、FOE記憶装置2142に記録された符号化済み画像FOE座標を用いて新しい画像のFOE座標を決定する。
決定の方法としては、例えば直前の画像のFOE座標を今回の画像のFOE座標としてもよい。または、直前二枚分の画像のFOE座標の変化量を求め、直前の画像のFOEに加えることで線形予測を行ってもよい。または、複数枚の画像のFOE座標の中央値を用いてもよい。中央値を算出する為のFOE座標は可能な限り多く用意することが望ましいが、カメラ移動の時間的な変化があるため、一定の時間以内に撮影された画像から選択してもよい。現在の画像の符号化が進行するにつれ、現在の画像の実際の動きベクトルが決定部2143に入力される。決定部2143は、この情報をもとに、現在の画像のFOE座標に修正を加えてもよい。この場合は、符号化済み画像FOE算出部2141が行う動作を、限られた動きベクトルから行うことになる。例えば画像を符号化順に分割し、一区間の符号化が終わるごとにEOFを更新するといったことをしてもよい。その後、決定部2143は、決定したFOE座標を動きベクトル予測部212に出力する。
以上のように構成された映像符号化装置1によれば、処理の度に符号化対象ブロックのFOE座標を決定する。これにより、符号化対象ブロック毎に適したFOE座標を決定し、動きベクトルを予測することができる。また、映像符号化装置1は、符号化対象ブロックとFOEとの位置関係から予測動きベクトルの向きを、周辺ブロックの動きベクトルから予測動きベクトルの大きさを決定する。これにより、カメラと被写体との距離によって生じる動き量の違いを考慮して予測できる。このように、適切な角度と適切な大きさの情報を取得して予測動きベクトルを生成するため、深度情報を使わなくとも高精度な予測動きベクトルを得ることが可能になる。
また、第2の実施形態では、FOE座標の算出技術が含まれる。これにより、外部からFOE座標を与えることなく、従来のエンコーダよりも高効率で圧縮が可能となる。
(映像復号装置)
図10は、第1の実施形態及び第2の実施形態における映像符号化装置1が出力する符号化データを受信して映像信号を復号する映像復号装置3の構成を示すブロック図である。映像復号装置3は、例えば、HEVCやH.264等の符号化方式においてデコーダとして適用される装置である。
映像復号装置3は、バスで接続されたCPUやメモリや補助記憶装置などを備え、プログラムを実行する。映像復号装置3は、プログラムの実行によってエントロピー復号化処理部31、逆量子化処理部32、逆変換処理部33、復号信号生成部34、ループフィルタ部35、復号ピクチャ記憶部36、イントラ予測部37、インター予測情報記憶部38、インター予測部39、イントラ/インター切り替えスイッチ40を備える装置として機能する。なお、映像復号装置3の各機能の全て又は一部は、ASICやPLDやFPGA等のハードウェアを用いて実現されてもよい。プログラムは、コンピュータ読み取り可能な記録媒体に記録されてもよい。コンピュータ読み取り可能な記録媒体とは、例えばフレキシブルディスク、光磁気ディスク、ROM、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置である。プログラムは、電気通信回線を介して送信されてもよい。
図10は、第1の実施形態及び第2の実施形態における映像符号化装置1が出力する符号化データを受信して映像信号を復号する映像復号装置3の構成を示すブロック図である。映像復号装置3は、例えば、HEVCやH.264等の符号化方式においてデコーダとして適用される装置である。
映像復号装置3は、バスで接続されたCPUやメモリや補助記憶装置などを備え、プログラムを実行する。映像復号装置3は、プログラムの実行によってエントロピー復号化処理部31、逆量子化処理部32、逆変換処理部33、復号信号生成部34、ループフィルタ部35、復号ピクチャ記憶部36、イントラ予測部37、インター予測情報記憶部38、インター予測部39、イントラ/インター切り替えスイッチ40を備える装置として機能する。なお、映像復号装置3の各機能の全て又は一部は、ASICやPLDやFPGA等のハードウェアを用いて実現されてもよい。プログラムは、コンピュータ読み取り可能な記録媒体に記録されてもよい。コンピュータ読み取り可能な記録媒体とは、例えばフレキシブルディスク、光磁気ディスク、ROM、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置である。プログラムは、電気通信回線を介して送信されてもよい。
エントロピー復号化処理部31は、映像符号化装置1の可変長符号化部13が出力する符号化データを取り込み、符号化データに含まれている予測動きベクトル等のインター予測に関する情報をエントロピー復号して、インター予測情報記憶部38に書き込んで記憶させる。エントロピー復号化処理部31は、符号化データに含まれている復号対象ブロックの量子化されている変換係数をエントロピー復号する。
逆量子化処理部32は、エントロピー復号化処理部31が出力する量子化されている変換係数を逆量子化して、復号変換係数を出力する。
逆変換処理部33は、逆量子化処理部32が出力する復号変換係数を逆直交変換し、予測残差復号信号を出力する。
復号信号生成部34は、イントラ予測部37、またはインター予測部39が出力する予測画像情報と、逆変換処理部33が出力する予測残差復号信号とを、内部に備える加算器により加算し、復号画像ブロックを生成する。
逆変換処理部33は、逆量子化処理部32が出力する復号変換係数を逆直交変換し、予測残差復号信号を出力する。
復号信号生成部34は、イントラ予測部37、またはインター予測部39が出力する予測画像情報と、逆変換処理部33が出力する予測残差復号信号とを、内部に備える加算器により加算し、復号画像ブロックを生成する。
ループフィルタ部35は、復号信号生成部34が出力する復号画像ブロックに対して符号化歪を低減するフィルタリング処理を行い、フィルタリング処理後の復号画像ブロックを復号ピクチャ記憶部36に書き込んで記憶させる。
復号ピクチャ記憶部36は、ループフィルタ部35の出力を格納する。
イントラ予測部37は、復号ピクチャ記憶部36に記憶されているフィルタリング処理後の復号画像ブロックを読み出す。また、イントラ予測部37は、予測モードに基づいて、読み出した復号画像ブロックから予測画像ブロック、すなわち予測画像情報を生成して出力する。
インター予測情報記憶部38は、インター予測に関する情報を記憶する。インター予測情報記憶部38が記憶するインター予測に関する情報は、符号化済み動きベクトル(差分ベクトルの成分とインデックス)である。
復号ピクチャ記憶部36は、ループフィルタ部35の出力を格納する。
イントラ予測部37は、復号ピクチャ記憶部36に記憶されているフィルタリング処理後の復号画像ブロックを読み出す。また、イントラ予測部37は、予測モードに基づいて、読み出した復号画像ブロックから予測画像ブロック、すなわち予測画像情報を生成して出力する。
インター予測情報記憶部38は、インター予測に関する情報を記憶する。インター予測情報記憶部38が記憶するインター予測に関する情報は、符号化済み動きベクトル(差分ベクトルの成分とインデックス)である。
インター予測部39は、復号ピクチャ記憶部36に記憶されているフィルタリング処理後の復号画像ブロックを読み込む。また、インター予測部39は、インター予測情報記憶部38に記憶されている符号化済み動きベクトルに基づいて、復号画像ブロックから予測画像ブロック、すなわち予測画像情報を生成して出力する。
イントラ/インター切り替えスイッチ40は、復号対象ブロックの予測モードに応じて、イントラ予測部37とインター予測部39とを切り替えて、イントラ予測部37が出力するイントラ予測画像情報、またはインター予測部19が出力するインター予測画像情報を復号信号生成部34に出力する。
イントラ/インター切り替えスイッチ40は、復号対象ブロックの予測モードに応じて、イントラ予測部37とインター予測部39とを切り替えて、イントラ予測部37が出力するイントラ予測画像情報、またはインター予測部19が出力するインター予測画像情報を復号信号生成部34に出力する。
(第1の実施形態及び第2の実施形態のインター予測部の映像復号装置3への適用)
第1の実施形態のインター予測部の構成を映像復号装置3へ適用した場合の構成を図11に示す。
図11は、映像復号装置3のインター予測処理部39の内部構成を示すブロック図である。インター予測処理部39は、動きベクトル復号部41及びインター予測画像復号部42を備える。
動きベクトル復号部41は、動きベクトルを復号する。動きベクトル復号部41は、動きベクトル記憶部411、動きベクトル予測部412及び復号部413を備える。
第1の実施形態のインター予測部の構成を映像復号装置3へ適用した場合の構成を図11に示す。
図11は、映像復号装置3のインター予測処理部39の内部構成を示すブロック図である。インター予測処理部39は、動きベクトル復号部41及びインター予測画像復号部42を備える。
動きベクトル復号部41は、動きベクトルを復号する。動きベクトル復号部41は、動きベクトル記憶部411、動きベクトル予測部412及び復号部413を備える。
動きベクトル記憶部411は、復号対象ブロックの座標と、復号済み動きベクトルとを記憶する。
動きベクトル予測部412は、復号対象ブロックの座標と、動きベクトル記憶部411に記憶されている復号済み動きベクトルと、FOE座標とを入力とする。動きベクトル予測部412は、入力した復号対象ブロックの座標と、復号済み動きベクトルと、FOE座標とに基づいて、従来の空間方向予測動きベクトルや時間方向予測動きベクトルと並行して、FOE方向予測動きベクトルを導出する。なお、動きベクトル予測部412は、予測動きベクトルの導出時には、前回の処理(例えば、予測動きベクトルの導出が時刻tであれば、時刻t−1の処理)で復号部413によって得られた復号済み動きベクトルを用いる。
動きベクトル予測部412は、復号対象ブロックの座標と、動きベクトル記憶部411に記憶されている復号済み動きベクトルと、FOE座標とを入力とする。動きベクトル予測部412は、入力した復号対象ブロックの座標と、復号済み動きベクトルと、FOE座標とに基づいて、従来の空間方向予測動きベクトルや時間方向予測動きベクトルと並行して、FOE方向予測動きベクトルを導出する。なお、動きベクトル予測部412は、予測動きベクトルの導出時には、前回の処理(例えば、予測動きベクトルの導出が時刻tであれば、時刻t−1の処理)で復号部413によって得られた復号済み動きベクトルを用いる。
復号部413は、動きベクトル予測部412から入力される複数の予測動きベクトルと、符号化済み動きベクトルとを用いて、動きベクトルの復号を行う。具体的には、復号部413は、複数種類の予測動きベクトルの中から1つの予測動きベクトルを選択し、選択した予測動きベクトルと、入力された符号化済み動きベクトルを復号して得られる差分ベクトルとを加算して動きベクトルを取得する。復号部413は、取得した動きベクトルを復号済み動きベクトルとして動きベクトル記憶部411に出力する。なお、復号部413は、符号化済み動きベクトルを復号して得られるインデックスで示される予測動きベクトルを、複数種類の予測動きベクトルの中から選択する。
次に、動きベクトル予測部412の具体的な構成について説明する。動きベクトル予測部412は、動きベクトル予測部212と同様の構成を備える。すなわち、動きベクトル予測部412は、時間方向動きベクトル予測部、空間方向動きベクトル予測部及びFOE方向動きベクトル予測部を備える。
時間方向動きベクトル予測部は、別ピクチャ内ブロック動きベクトルと、復号対象ブロック座標とを入力とし、時間方向予測動きベクトルを導出する。時間方向予測動きベクトルの導出の方法は、既存の技術が用いられる。
時間方向動きベクトル予測部は、別ピクチャ内ブロック動きベクトルと、復号対象ブロック座標とを入力とし、時間方向予測動きベクトルを導出する。時間方向予測動きベクトルの導出の方法は、既存の技術が用いられる。
空間方向動きベクトル予測部は、復号対象ブロック座標と、周辺ブロック動きベクトルとを入力とし、空間方向予測動きベクトルを導出する。空間方向予測動きベクトルの導出の方法は、既存の技術が用いられる。
FOE方向動きベクトル予測部は、動きベクトル予測装置の一例である。FOE方向動きベクトル予測部は、復号対象ブロック座標と、周辺ブロック動きベクトルと、FOE座標とを入力とし、FOE方向予測動きベクトルを導出する。具体的には、FOE方向動きベクトル予測部は、復号対象ブロックからFOEまでの方角と周辺ブロックの動きベクトルの大きさを求め、このふたつの情報を用いることによって復号対象ブロックの動きベクトルを予測する。なお、動きベクトル予測部412が備えるFOE方向動きベクトル予測部の処理は、FOE方向動きベクトル予測部2123が用いる符号化対象ブロック座標を復号対象ブロック座標に置き換えればFOE方向動きベクトル予測部2123の処理と同様である。
FOE方向動きベクトル予測部は、動きベクトル予測装置の一例である。FOE方向動きベクトル予測部は、復号対象ブロック座標と、周辺ブロック動きベクトルと、FOE座標とを入力とし、FOE方向予測動きベクトルを導出する。具体的には、FOE方向動きベクトル予測部は、復号対象ブロックからFOEまでの方角と周辺ブロックの動きベクトルの大きさを求め、このふたつの情報を用いることによって復号対象ブロックの動きベクトルを予測する。なお、動きベクトル予測部412が備えるFOE方向動きベクトル予測部の処理は、FOE方向動きベクトル予測部2123が用いる符号化対象ブロック座標を復号対象ブロック座標に置き換えればFOE方向動きベクトル予測部2123の処理と同様である。
インター予測画像復号部42は、復号部413から出力された復号済み動きベクトルと、復号ピクチャ記憶部36に記憶されている復号済み画像とに基づいて、インター予測画像を復号する。インター予測画像復号部42は、復号したインター予測画像を復号済みインター予測画像情報として出力する。
第2の実施形態のインター予測部の構成を映像復号装置3へ適用した場合の構成を図12に示す。
図12は、映像復号装置3のインター予測処理部39の内部構成を示すブロック図である。インター予測処理部39は、動きベクトル復号部41a及びインター予測画像復号部42を備える。動きベクトル復号部41aは、FOE座標を決定し、動きベクトルを復号する。動きベクトル復号部41aは、動きベクトル記憶部411、動きベクトル予測部412、復号部413a及びFOE決定部414を備える。動きベクトル記憶部411及び動きベクトル予測部412は、第1の実施形態のインター予測部の構成を映像復号装置3に適用した場合の同名の機能部と同様の処理を行うため説明を省略する。
図12は、映像復号装置3のインター予測処理部39の内部構成を示すブロック図である。インター予測処理部39は、動きベクトル復号部41a及びインター予測画像復号部42を備える。動きベクトル復号部41aは、FOE座標を決定し、動きベクトルを復号する。動きベクトル復号部41aは、動きベクトル記憶部411、動きベクトル予測部412、復号部413a及びFOE決定部414を備える。動きベクトル記憶部411及び動きベクトル予測部412は、第1の実施形態のインター予測部の構成を映像復号装置3に適用した場合の同名の機能部と同様の処理を行うため説明を省略する。
FOE決定部414は、復号部413から出力された復号済み動きベクトルを入力し、入力した復号済み動きベクトルに基づいてFOE座標の決定し、決定したFOE座標動きベクトル予測部412に出力する。なお、FOE決定部414の処理は、FOE決定部214が用いる符号化済み画像FOE座標及び現在符号化している画像の符号化済みブロックの動きベクトルを復号済み画像FOE座標及び現在復号している画像の復号済みブロックの動きベクトルに置き換えればFOE決定部214の処理と同様である。
上述した各実施形態における映像符号化装置1及び映像復号装置3をコンピュータで実現する様にしてもよい。その場合、この機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することによって実現してもよい。なお、ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。更に「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線の様に、短時間の間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリの様に、一定時間プログラムを保持しているものも含んでもよい。また上記プログラムは、前述した機能の一部を実現するためのものであってもよく、更に前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであってもよく、PLD(Programmable Logic Device)やFPGA(Field Programmable Gate Array)等のハードウェアを用いて実現されるものであってもよい。
以上、この発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。
1…映像符号化装置, 3…映像復号装置, 11…減算器, 12…直交変換・量子化部, 13…可変長符号化部, 14…逆量子化・逆直交変換部, 15…加算器, 16…イントラ予測部, 17…ループフィルタ部, 18…復号ピクチャ記憶部, 19、19a…インター予測部, 20…イントラ/インター切り替えスイッチ, 21、21a…動きベクトル符号化部, 211、211a…動きベクトル探索部, 212…動きベクトル予測部, 213…動きベクトル予測残差符号化部, 214…FOE決定部, 22…インター予測画像生成部, 23…インター予測情報記憶部, 2121…時間方向動きベクトル予測部, 2122…空間方向動きベクトル予測部, 2123…FOE方向動きベクトル予測部, 21231…FOE方向角度導出部, 21232…ノルム導出部, 21233…ベクトル導出部, 2141…符号化済み画像FOE算出部, 2142…FOE記憶装置, 2143…決定部, 31…エントロピー復号化処理部, 32…逆量子化処理部, 33…逆変換処理部, 34…復号信号生成部, 35…ループフィルタ部, 36…復号ピクチャ記憶部, 37…イントラ予測部, 38…インター予測情報記憶部, 39、39a…インター予測部, 40…イントラ/インター切り替えスイッチ, 41、41a…動きベクトル復号部, 411…動きベクトル記憶部, 412…動きベクトル予測部, 413…復号部, 414…FOE決定部, 42…インター予測画像復号部
Claims (7)
- 処理済みブロックから予測動きベクトルノルムを取得する予測動きベクトルノルム取得部と、
与えられた角度に関連する情報に基づいて、予測動きベクトルの角度を取得する予測動きベクトル角度取得部と、
前記予測動きベクトルノルムと前記予測動きベクトルの角度とに基づいて、処理対象ブロックの予測動きベクトルを取得するベクトル取得部と、
を備える動きベクトル予測装置。 - 前記予測動きベクトルノルム取得部は、処理対象ブロックと略同じ奥行の処理済みブロックから前記予測動きベクトルノルムを取得する、請求項1に記載の動きベクトル予測装置。
- 前記予測動きベクトルノルム取得部は、処理対象ブロックの隣接ブロックである処理済みブロックを用いて前記予測動きベクトルノルムを取得する、請求項1に記載の動きベクトル予測装置。
- 前記与えられた角度に関連する情報は、少なくともFOE(focus of expansion)座標に基づく情報である、請求項1に記載の動きベクトル予測装置。
- 処理済みブロックから予測動きベクトルノルムを取得する予測動きベクトルノルム取得部と、
少なくともFOE(focus of expansion)座標に基づく情報に基づいて、予測動きベクトルの角度を取得する予測動きベクトル角度取得部と、
前記予測動きベクトルノルムと前記予測動きベクトルの角度とに基づいて、処理対象ブロックの予測動きベクトルを取得するベクトル取得部と、
を備え、
前記予測動きベクトルノルム取得部は、処理対象ブロックの隣接ブロックである処理済みブロックを用いて前記予測動きベクトルノルムを取得する動きベクトル予測装置。 - コンピュータに、
処理済みブロックから予測動きベクトルノルムを取得する予測動きベクトルノルム取得ステップと、
与えられた角度に関連する情報に基づいて、予測動きベクトルの角度を取得する予測動きベクトル角度取得ステップと、
前記予測動きベクトルノルムと前記予測動きベクトルの角度とに基づいて、処理対象ブロックの予測動きベクトルを取得するベクトル取得ステップと、
を実行させるためのコンピュータプログラム。 - コンピュータに、
処理済みブロックから予測動きベクトルノルムを取得する予測動きベクトルノルム取得ステップと、
少なくともFOE(focus of expansion)座標に基づく情報に基づいて、予測動きベクトルの角度を取得する予測動きベクトル角度取得ステップと、
前記予測動きベクトルノルムと前記予測動きベクトルの角度とに基づいて、処理対象ブロックの予測動きベクトルを取得するベクトル取得ステップと、
を実行させ、
前記予測動きベクトルノルム取得ステップにおいて、処理対象ブロックの隣接ブロックである処理済みブロックを用いて前記予測動きベクトルノルムを取得するためのコンピュータプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017076238A JP2018182435A (ja) | 2017-04-06 | 2017-04-06 | 動きベクトル予測装置及びコンピュータプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017076238A JP2018182435A (ja) | 2017-04-06 | 2017-04-06 | 動きベクトル予測装置及びコンピュータプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2018182435A true JP2018182435A (ja) | 2018-11-15 |
Family
ID=64276054
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017076238A Pending JP2018182435A (ja) | 2017-04-06 | 2017-04-06 | 動きベクトル予測装置及びコンピュータプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2018182435A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112004096A (zh) * | 2020-07-20 | 2020-11-27 | 浙江大华技术股份有限公司 | 角度模式帧间预测方法、编码器及存储介质 |
-
2017
- 2017-04-06 JP JP2017076238A patent/JP2018182435A/ja active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112004096A (zh) * | 2020-07-20 | 2020-11-27 | 浙江大华技术股份有限公司 | 角度模式帧间预测方法、编码器及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI617185B (zh) | 具有仿射運動補償的視訊編碼的方法以及裝置 | |
JP7004782B2 (ja) | 画像予測方法および関連装置 | |
JP7358436B2 (ja) | マルチリファレンス予測のための動きベクトルの精密化 | |
US11375226B2 (en) | Method and apparatus of video coding with affine motion compensation | |
US9621917B2 (en) | Continuous block tracking for temporal prediction in video encoding | |
JP5277257B2 (ja) | 動画像復号化方法および動画像符号化方法 | |
US9473787B2 (en) | Video coding apparatus and video coding method | |
JP5216710B2 (ja) | 復号化処理方法 | |
TW202015405A (zh) | 用於視訊編解碼的幀間預測方法以及裝置 | |
JP6259272B2 (ja) | 映像符号化装置及び映像符号化プログラム | |
JP2018182435A (ja) | 動きベクトル予測装置及びコンピュータプログラム | |
JP2013085156A (ja) | 映像符号化方法,映像復号方法,映像符号化装置,映像復号装置およびそれらのプログラム | |
CN112449197A (zh) | 视频编解码的方法、装置、电子设备及存储介质 | |
JP5705948B2 (ja) | 動画像符号化装置、動画像復号化装置、動画像符号化方法、動画像復号化方法、動画像符号化プログラム及び動画像復号化プログラム |