(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024152415
(43)【公開日】2024-10-25
(54)【発明の名称】メッシュ復号装置、メッシュ復号方法及びプログラム
(51)【国際特許分類】
H04N 19/54 20140101AFI20241018BHJP
【FI】
H04N19/54
【審査請求】未請求
【請求項の数】6
【出願形態】OL
(21)【出願番号】P 2023066598
(22)【出願日】2023-04-14
【国等の委託研究の成果に係る記載事項】(出願人による申告)令和5年度、総務省、「3次元空間データの無線伝送に向けた高能率圧縮技術の研究開発」、産業技術力強化法第17条の適用を受ける特許出願
(71)【出願人】
【識別番号】000208891
【氏名又は名称】KDDI株式会社
(74)【代理人】
【識別番号】110001564
【氏名又は名称】フェリシテ弁理士法人
(72)【発明者】
【氏名】岸本 広輝
(72)【発明者】
【氏名】河村 圭
【テーマコード(参考)】
5C159
【Fターム(参考)】
5C159MA01
5C159MC11
5C159ME01
5C159NN32
5C159PP04
5C159UA02
5C159UA05
(57)【要約】
【課題】連続するメッシュデータの復号すること。
【解決手段】本発明に係るメッシュ復号装置200は、基本サブメッシュに基づき、細分割メッシュ及び細分割頂点法線を生成して出力するように構成されている細分割部203と、サブメッシュ境界上の同一頂点に対して異なる2つの変位量が存在するときに、補正した変位量を用いて復号メッシュを生成して出力するように構成されているメッシュ復号部204とを備える。
【選択図】
図2
【特許請求の範囲】
【請求項1】
メッシュ復号装置であって、
基本サブメッシュに基づき、細分割メッシュ及び細分割頂点法線を生成して出力するように構成されている細分割部と、
サブメッシュ境界上の同一頂点に対して異なる2つの変位量が存在するときに、補正した変位量を用いて復号メッシュを生成して出力するように構成されているメッシュ復号部と、を備えることを特徴とするメッシュ復号装置。
【請求項2】
前記細分割部は、隣接パッチの復号対象パッチの細分割頂点法線の算出方法が異なるとき、異なる2つの方法で細分割頂点法線を求めた後に算出した2つの法線の平均値又は前記2つの法線のいずれかを用いて、前記細分割頂点法線を補正するように構成されている細分割頂点法線計算部を備えることを特徴とする請求項1に記載のメッシュ復号装置。
【請求項3】
前記メッシュ復号部は、異なるサブメッシュに存在する2つの頂点の距離が閾値以下のとき、前記2つの頂点を同一頂点と判定することを特徴とする請求項1に記載のメッシュ復号装置。
【請求項4】
前記メッシュ復号部は、前記サブメッシュ境界上の同一頂点に対して異なる2つの変位量が存在するときに、前記2つの変位量の平均値又は前記2つの変位量のいずれかを用いて、前記変位量を補正することを特徴とする請求項1に記載のメッシュ復号装置。
【請求項5】
メッシュ復号方法であって、
基本サブメッシュに基づき、細分割メッシュ及び細分割頂点法線を生成して出力する工程と、
サブメッシュ境界上の同一頂点に対して異なる2つの変位量が存在するときに、補正した変位量を用いて復号メッシュを生成して出力する工程と、を有することを特徴とするメッシュ復号方法。
【請求項6】
コンピュータを、メッシュ復号装置として機能させるプログラムであって、
前記メッシュ復号装置は、
基本サブメッシュに基づき、細分割メッシュ及び細分割頂点法線を生成して出力するように構成されている細分割部と、
サブメッシュ境界上の同一頂点に対して異なる2つの変位量が存在するときに、補正した変位量を用いて復号メッシュを生成して出力するように構成されているメッシュ復号部と、を備えることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、メッシュ復号装置、メッシュ復号方法及びプログラムに関する。
【背景技術】
【0002】
非特許文献1では、メッシュを大まかな情報を表す基本メッシュと詳細な情報を表す変位量とに分けて復号しており、かかる変位量は、映像コーデックによって復号されている。
【先行技術文献】
【非特許文献】
【0003】
【非特許文献1】Khaled Mammou, Jungsun Kim, Alexis Tourapis, Dimitri Podborski, Krasimir Kolarov, “[V-CG] Apple’s Dynamic Mesh Coding CfP Response,” ISO/IEC JTC 1/SC 29/WG 7 m5928, April 2022.
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、非特許文献1では、サブメッシュやパッチ単位で処理を変更した場合に、サブメッシュやパッチの境界部分で穴が開いてしまい、主観性能が低下してしまう可能性があるという問題点があった。 そこで、本発明は、上述の課題に鑑みてなされたものであり、サブメッシュやパッチの境界上の頂点に定義される変位量を補正することで、連続するメッシュデータの復号することを可能とするメッシュ復号装置、メッシュ復号方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【0005】
本発明の第1の特徴は、メッシュ復号装置であって、基本サブメッシュに基づき、細分割メッシュ及び細分割頂点法線を生成して出力するように構成されている細分割部と、サブメッシュ境界上の同一頂点に対して異なる2つの変位量が存在するときに、補正した変位量を用いて復号メッシュを生成して出力するように構成されているメッシュ復号部と、を備えることを要旨とする。
【0006】
本発明の第2の特徴は、メッシュ復号方法であって、基本サブメッシュに基づき、細分割メッシュ及び細分割頂点法線を生成して出力する工程と、サブメッシュ境界上の同一頂点に対して異なる2つの変位量が存在するときに、補正した変位量を用いて復号メッシュを生成して出力する工程と、を有することを要旨とする。
【0007】
本発明の第3の特徴は、コンピュータを、メッシュ復号装置として機能させるプログラムであって、前記メッシュ復号装置は、基本サブメッシュに基づき、細分割メッシュ及び細分割頂点法線を生成して出力するように構成されている細分割部と、サブメッシュ境界上の同一頂点に対して異なる2つの変位量が存在するときに、補正した変位量を用いて復号メッシュを生成して出力するように構成されているメッシュ復号部と、を備えることを要旨とする。
【発明の効果】
【0008】
本発明によれば、サブメッシュやパッチの境界上の頂点に定義される変位量を補正することで、連続するメッシュデータの復号することを可能とするメッシュ復号装置、メッシュ復号方法及びプログラムを提供することができる。
【図面の簡単な説明】
【0009】
【
図1】
図1は、一実施形態に係るメッシュ処理システム1の構成の一例を示す図である。
【
図2】
図2は、一実施形態に係るメッシュ復号装置200の機能ブロックの一例を示す図である。
【
図3】
図3は、一実施形態に係るメッシュ復号装置200のアトラスデータ復号部207の機能ブロックの一例を示す図である。
【
図4】
図4は、一実施形態に係るメッシュ復号装置200のアトラスデータ復号部207のパッチ情報復号部207Bの機能ブロックの一例を示す図である。
【
図5】
図5は、一実施形態に係るメッシュ復号装置200のアトラスデータ復号部207のパッチ制御情報復号部207Cの機能ブロックの一例を示す図である。
【
図6】
図6は、一実施形態に係るメッシュ復号装置200の細分割部203の機能ブロックの一例を示す図である。
【
図7】
図7は、細分割頂点法線計算部203Cの動作の一例について説明するフローチャートである。
【
図8A】
図8Aは、細分割頂点法線部計算部203Cによる細分割頂点法線の計算方法の一例について説明するための図である。
【
図8B】
図8Bは、細分割頂点法線部計算部203Cによる細分割頂点法線の計算方法の一例について説明するための図である。
【
図9】
図9は、一実施形態に係るメッシュ復号装置200の変位量復号部205の機能ブロックの一例を示す図である。
【
図10】
図10は、一実施形態に係るメッシュ復号装置200の変位量復号部205で用いられる制御信号と変位量符号化方法との対応表の一例を示す図である。
【
図11】
図11は、一実施形態に係るメッシュ復号装置200の変位量復号部205の逆量子化部205Dの動作の一例を示すフローチャートである。
【
図12】
図12は、一実施形態に係るメッシュ復号装置200のメッシュ復号部204の動作の一例を示すフローチャートである。
【発明を実施するための形態】
【0010】
以下、本発明の実施の形態について、図面を参照しながら説明する。なお、以下の実施形態における構成要素は、適宜、既存の構成要素等との置き換えが可能であり、また、他の既存の構成要素との組み合わせを含む様々なバリエーションが可能である。したがって、以下の実施形態の記載をもって、特許請求の範囲に記載された発明の内容を限定するものではない。
【0011】
<第1実施形態>
以下、
図1~
図12を参照して、本実施形態に係るメッシュ処理システム1について説明する。
【0012】
図1は、本実施形態に係るメッシュ処理システム1の構成の一例を示す図である。
図1に示すように、メッシュ処理システム1は、メッシュ符号化装置100及びメッシュ復号装置200を備えている。
【0013】
図2は、本実施形態に係るメッシュ復号装置200の機能ブロックの一例を示す図である。
【0014】
図2に示すように、メッシュ復号装置200は、多重分離部201と、サブメッシュ復号部202と、細分割部203と、メッシュ復号部204と、変位量復号部205と、映像復号部206と、アトラスデータ復号部207とを有する。
【0015】
多重分離部201は、多重化されたビットストリームを、アトラスビットストリームとサブメッシュビットストリームと変位量ビットストリームとテクスチャビットストリームとアトラスビットストリームとに分離するように構成されている。
【0016】
サブメッシュ復号部202は、サブメッシュビットストリームを復号して基本サブメッシュを生成して出力するように構成されている。
【0017】
細分割部203は、パッチ制御情報によって示された細分割手法により、サブメッシュ復号部202によって復号された基本サブメッシュから、追加された細分割頂点及びそれらの接続情報を生成して出力するように構成されている。
【0018】
ここで、基本サブメッシュ、追加された細分割頂点、及び、それらの接続情報を、併せて「細分割メッシュ」と呼ぶ。
【0019】
また、サブメッシュは、単体で復号可能なメッシュデータの一部であり、1つのサブメッシュは、いくつかのパッチを含む。パッチは、メタデータであり、サブメッシュの一部の領域を表すパッチ情報及びパッチに関する各種制御情報の集合である。
【0020】
メッシュ復号部204は、細分割部203で生成された細分割メッシュ及び変位量復号部205で復号された変位量を用いて、復号メッシュを生成して出力するように構成されている。
【0021】
変位量復号部205は、変位量ビットストリームを復号して変位量を生成して出力するように構成されている。
【0022】
映像復号部206は、映像コーデックによってテクスチャを復号して出力するように構成されている。例えば、映像復号部206は、参考文献1「Information technology - High efficiency coding and media delivery in heterogeneous environments - Part 2: High efficiency video coding, ISO/IEC 23008-2:2013.」に開示されているHEVCを用いてもよい。
【0023】
アトラスデータ復号部207は、アトラスビットストリームを復号してパッチ情報とパッチ制御情報と制御情報とを出力するように構成されている。
【0024】
(アトラスデータ復号部207)
アトラスデータ復号部207は、アトラスビットストリームを復号してパッチ情報とパッチ制御情報と制御情報とを出力するように構成されている。
【0025】
図3は、アトラスデータ復号部207の機能ブロックの一例を示す図である。
【0026】
図3に示すように、アトラスデータ復号部207は、分離部207Aと、パッチ情報復号部207Bと、パッチ制御情報復号部207Cと、制御情報復号部207Dとを有する。
【0027】
分離部207Aは、入力されたアトラスビットストリームを、パッチ情報ビットストリームとパッチ制御情報ビットストリームと制御情報ビットストリームとに分離して、それぞれを出力する。
【0028】
(パッチ情報復号部207B)
パッチ情報復号部207Bは、入力されたパッチ情報ビットストリームに基づき、パッチ情報を算出して出力するように構成されている。
【0029】
ここで、パッチ情報は、サブメッシュ内に存在する基本面がどのパッチに属するかを表す情報である。
【0030】
図4は、パッチ情報復号部207Bの機能ブロックの一例を示す図である。
【0031】
図4に示すように、パッチ情報復号部207Bは、可変長復号部207B1と、差分パッチ情報復号部207B2とを有する。
【0032】
以下、具体的なパッチ情報の復号方法について説明する。
【0033】
可変長復号部207B1は、入力されたパッチ情報ビットストリームから指数ゴロム符号化アルゴリズムを用いて差分パッチ情報を計算して出力するように構成されている。
【0034】
また、可変長復号部207B1は、基本面ごとのパッチ番号を表す一次元のベクトルを出力するように構成されていてもよい。
【0035】
例えば、基本面1,2,3,4,5に対して、基本面1~3がパッチ0に属し、基本面4,5がパッチ1に属する場合、一次元のベクトルは、[0,0,0,1,1]のように表せる。
【0036】
また、可変長復号部207B1は、各パッチに含まれる全ての面のインデックス番号を出力してもよいし、各パッチに含まれる先頭インデックス及び末尾インデックスをそのまま出力するように構成されていてもよい。
【0037】
このとき、可変長復号部207B1は、算術符号化やランレングス符号化等の既存の整数符号化手法を用いて、差分パッチ情報を計算してもよい。
【0038】
差分パッチ情報復号部207B2は、入力された差分パッチ情報に基づき、パッチ情報を算出して出力するように構成されている。
【0039】
なお、差分パッチ情報は、先頭差分インデックスs’と、末尾差分インデックスe’とによって構成される。
【0040】
ここで、差分パッチ情報は、パッチiのj番目先頭差分インデックスをs’[i][j]とし、末尾差分インデックスを、e’[i][j]とする。
【0041】
また、パッチ情報は、先頭インデックスsと末尾インデックスeとによって構成される。
【0042】
ここで、パッチ情報は、差分パッチ情報と同様に、パッチiのj番目先頭インデックスをs[i][j]とし、末尾インデックスをe[i][j]とする。
【0043】
なお、先頭インデックス及び末尾インデックスは、各パッチに含まれている面の数を表す。
【0044】
例えば、s[0][0]=1,e[0][0]=4,s[0][1]=7,e[0][1]=8のとき、面1~4及び面7~8が、パッチ0に含まれてい ることを示す。
【0045】
j=0のとき、先頭インデックスs[i][j]及び末尾インデックスe[i][j]は、次のように算出される。
【0046】
s[i][0]=s’[i][0]
e[i][0]=e’[i][0]+s[i][0]
j>0のとき、先頭インデックスs[i][j]及び末尾インデックスe[i][j]は、次のように算出される。
【0047】
s[i][j]=s’[i][j]+e[i][j-1]+2
e[i][j]=e’[i][j]+s[i][j]
また、可変長復号部207B1で、パッチ情報が既に算出されているとき、差分パッチ情報復号部207B2は、上述の処理を行わず、入力情報をそのままパッチ情報として出力してもよい。
【0048】
(パッチ制御情報復号部207C)
図5は、パッチ制御情報復号部207Cの機能ブロックの一例を示す図である。
【0049】
図5に示すように、パッチ情報復号部207Cは、パッチ制御情報バッファ部207C1と、パッチ制御情報参照部207C2と、パッチ制御情報予測部207C3と、可変長復号部207C4と、加算部207C5と、を有する。
【0050】
パッチ情報復号部207Cは、入力されたパッチ情報と基本サブメッシュとパラメータ制御情報残差とに基づいて、パッチ制御情報を計算して出力するように構成されている。
【0051】
パッチ制御情報は、パッチごとに定義されているパッチ情報以外の制御情報である。例えば、パッチ制御情報は、細分割数や法線方向の算出方法等を含む。
【0052】
パッチ制御情報バッファ部207C1は、パッチごとのパッチ制御情報を格納しており、かかるパッチ制御信号をパッチ制御情報参照部に出力するように構成されている。
【0053】
具体的には、パッチ制御情報バッファ部207C1は、パッチ制御情報ビットストリームに含まれるパッチ制御情報を格納するように構成されている。
【0054】
ここで、パッチ制御情報バッファ部207C1のサイズは「1」であり、パッチ制御情報バッファ部207C1は、パッチ制御情報参照部207C2に対して、直前に蓄積されたパッチ制御情報を出力するように構成されていてもよい。
【0055】
パッチ制御情報参照部207C2は、復号対象パッチに対して隣接するパッチが存在していない場合、或いは、復号対象パッチに対して隣接するパッチが存在しているがパラメータが確定していない場合は、パッチ制御情報予測部207C3に対して、参照不可を出力するように構成されている。
【0056】
ここで、隣接パッチの情報は、基本サブメッシュ及びパッチ情報から算出される。
【0057】
一方、パッチ制御情報参照部207C2は、復号対象パッチに対して隣接するパッチが存在し且つパッチ制御情報が確定している場合は、パッチ制御情報予測部207C3に対して、かかるパッチ制御情報を出力するように構成されている。
【0058】
パッチ制御情報予測部207C3は、入力された1つ以上のパラメータに基づいて復号対象パッチのパッチ制御情報を予測し、加算部207C5に対して、予測したパッチ制御情報(予測制御情報)を出力するように構成されている。
【0059】
ここで、パッチ制御情報予測部207C3は、パッチ制御情報参照部207C2から参照不可のみが入力された場合は、加算部207C5に対して「0」を出力するように構成されている。
【0060】
なお、パッチ制御情報予測部207C3は、1つ以上のパラメータが入力された場合、入力されたパラメータの平均値や最大値や最小値や最頻値等の統計値のいずれかを用いて、予測制御情報を生成するように構成されていてもよい。
【0061】
なお、パッチ制御情報予測部207C3は、1つ以上のパッチ制御情報が入力された場合、隣接するパッチのいずれかのパッチ情報を予測して、予測制御情報として生成するように構成されていてもよい。
【0062】
可変長復号部207C4は、入力されたパッチ制御情報ビットストリームから指数ゴロム符号化アルゴリズムを用いてパッチ制御情報残差を計算して出力するように構成されている。
【0063】
このとき、可変長復号部207C4は、算術符号化等の既存の整数符号化手法を用いてパッチ制御情報残差を計算してもよい。
【0064】
加算部207C5は、可変長復号部207C4から取得したパッチ制御情報残差とパッチ制御情報予測部207C3から取得した予測制御情報とを加算することによって得られたパッチ制御情報を出力するように構成されている。
【0065】
(細分割部203)
図6は、細分割部203の機能ブロックの一例を示す図である。
【0066】
図6に示すように、細分割部203は、基本メッシュ細分割部203Aと、細分割メッシュ調整部203Bと、細分割頂点法線計算部203Cとを有する。
【0067】
基本メッシュ細分割部203Aは、入力された基本サブメッシュに基づき、初期細分割メッシュを出力するように構成されている。
【0068】
細分割メッシュ調整部203Bは、初期細分割メッシュを調整するように構成されている。
【0069】
ここで、調整とは、メッシュ復号部204によってメッシュを復号する際に、メッシュに穴が空かないような細分割メッシュを生成する操作である。
【0070】
(細分割頂点法線部計算部203C)
細分割頂点法線計算部203Cは、入力された細分割面を構成する細分割頂点に対して、細分割頂点ごとに定義される法線(細分割頂点法線)を出力するように構成されている。
【0071】
以下、
図7及び
図8を用いて細分割頂点法線部計算部203Cによって行われる処理の一例について説明する。
【0072】
図7は、細分割頂点法線計算部203Cの動作の一例について説明するフローチャートである。
【0073】
図7に示すように、ステップS203C-1において、細分割頂点法線計算部203Cは、全てのパッチに対して細分割頂点計算処理が完了しているかどうかを判定する。
【0074】
Yesの場合、本動作は、終了し、Noの場合、本動作は、ステップS203C-2に進む。
【0075】
ステップS203C-2において、細分割頂点法線計算部203Cは、パッチ内の全ての基本面に対して細分割頂点法線の計算処理が完了しているかを判定する。
【0076】
Yesの場合、本動作は、ステップS203C-1に進み、Noの場合、本動作は、ステップS203C-3に進む。
【0077】
ステップS203C-3において、細分割頂点法線計算部203Cは、基本面内の全ての細分割頂点に対して細分割頂点法線の計算処理が完了しているかを判定する。
【0078】
Yesのとき、本動作は、ステップS203C-2に進み、Noのとき、本動作は、ステップS203C-4に進む。
【0079】
ステップS203C-4において、細分割頂点法線計算部203Cは、未処理細分割頂点を選択し、本動作は、ステップS203C-5に進む。
【0080】
ステップS203-5において、細分割頂点法線計算部203Cは、選択した細分割頂点がパッチ境界の細分割頂点であるかどうかを判定する。
【0081】
Yesのとき、本動作は、ステップS203C-6に進み、Noのとき、本動作は、ステップS203C-8に進む。
【0082】
ステップS203C-6において、細分割頂点法線計算部203Cは、隣接パッチと細分割頂点算出方法が異なるかどうかを判定する。
【0083】
Yesのとき、本動作は、ステップS203C-7に進み、Noのとき、本動作は、ステップS203C-8に進む。
【0084】
ステップS203C-7において、細分割頂点法線計算部203Cは、選択した細分割頂点に対して細分割頂点法線を計算し、細分割頂点法線を補正する。
【0085】
以下に、細分割頂点法線の計算方法について説明する。
【0086】
第1に、細分割頂点法線計算部203Cは、選択した細分割頂点法線に対して、復号対象パッチで指定されている細分割頂点法線の計算方法の種別を指定する制御信号に基づき、細分割頂点法線を計算する。
【0087】
図8A及び
図8Bは、ステップS203C-7において、基本面ABC内の細分割頂点Xに対して、細分割頂点法線を計算したものである。
【0088】
図8Aを参照して、細分割頂点法線の計算方法について説明する。
【0089】
細分割頂点法線部計算部203Cは、以下の(式1)に示すように、基本点法線の合計値に基づいて、基本面ABC上の細分割頂点Xの法線n(ベクトル)を計算するように構成されていてもよい。
【0090】
【数1】
このとき、a,b,c(ベクトル)は、基本点(基本面を構成する頂点)ごとに定義されている法線(基本点法線)である。
【0091】
また、
図8Bを参照して、細分割頂点法線の計算方法の他の一例について説明する。
【0092】
細分割頂点法線部計算部203Cは、以下の(式2)に示すように、基本面ABCに隣接する基本面の法線の合計値に基づいて、基本面ABC上の細分割頂点Xの法線n(ベクトル)を計算するように構成されていてもよい。
【0093】
【数2】
このとき、a,b,c,d,e(ベクトル)は、基本面ABCに隣接する基本面の面法線(ベクトル)である。
【0094】
また、細分割頂点法線部計算部203Cは、単純に基本面ABCの面法線を細分割頂点Xの法線(細分割点法線)として使用してもよい。
【0095】
このように計算することで、同一基本面上に存在する細分割点法線は、基本的には同一の法線が使用される。
【0096】
また、細分割頂点法線部計算部203Cは、基本点法線についても同様に、上述の細分割頂点法線の計算手法を用いて、計算してもよい。
【0097】
このとき、同一基本面上に存在する細分割点法線及び基本点法線としては、基本的には、同一の法線が使用される。
【0098】
第2に、細分割頂点法線部計算部203Cは、選択した細分割頂点法線に対して、隣接パッチで指定されている細分割頂点法線の計算方法の種別を指定する制御信号に基づいて、細分割頂点法線を計算する。
【0099】
基本点法線及び細分割頂点法線の算出方法は、上述と同様である。
【0100】
以下に、細分割頂点法線の補正方法について説明する。
【0101】
細分割頂点法線部計算部203Cは、求めた2つの細分割頂点法線のどちらか一方を使用することで、細分割頂点法線について補正する。
【0102】
また、細分割頂点法線部計算部203Cは、求めた2つの細分割頂点法線の平均値を用いて、細分割頂点法線について補正してもよい。
【0103】
ステップS203-C8において、細分割頂点法線部計算部203Cは、選択した細分割頂点に対して細分割頂点法線を計算し、本動作は、ステップS203C-3に進む。
【0104】
細分割頂点の法線の計算方法に関しては、上述の通りである。
【0105】
(変位量復号部205)
図9に示すように、変位量復号部205は、変位量符号化次元数判定部205Aと、映像復号部205Bと、変位量再構成部205Cと、逆量子化部205Dと、逆ウェーブレット変換部205Eとを備えている。
【0106】
変位量符号化次元数判定部205Aは、変位量ビットストリームに定義されている制御情報を用いて、変位量の符号化方法(復号方法)を示す変位量符号化手法を決定して出力するように構成されている。
【0107】
ここで、変位量符号化次元数判定部205Aは、YUVフォーマットを表す制御情報chroma_format_idc及びChromaサンプルを全て同じ値で復号することを表す制御情報neutral_chroma_indication_flagの値に基づき、変位量復号化手法を決定して出力するように構成されている。
【0108】
図10に、かかる制御信号と変位量符号化方法との対応表の一例を示す。
【0109】
映像復号部205Bは、入力された変位量ビットストリーム及び変位量符号化手法に基づき、変位量ビットストリームを既存の映像コーデック技術を用いて復号して変位量ビデオフレームを出力するように構成されている。
【0110】
変位量再構成部205Cは、入力された変位量ビデオフレームから変位量を抽出し、出力するように構成されている。
【0111】
ここで、変位量再構成部205Cは、上述の変位量符号化手法が一次元変位量符号化であるとき、法線方向に直交する成分に対応する変位量ビデオフレームのチャンネルに対する処理を行わず、法線方向に対応するチャンネルのみに対して処理を行うように構成されていてもよい。
【0112】
(逆量子化部205D)
図11は、逆量子化部205Dの動作の一例を示すフローチャートである。
【0113】
図11に示すように、ステップS203J-1において、逆量子化部205Dは、全てのパッチに対して処理が完了したかどうかを判定する。
【0114】
Yesのとき、本動作は、処理を終了し、Noのとき、本動作は、ステップS203J-2に進む。
【0115】
ステップS203J-2において、逆量子化部205Dは、パッチ内の全ての細分割レベルの頂点に対して処理が完了したかどうかを判定する。
【0116】
ここで、細分割レベルは、細分割を行った回数を表しており、細分割レベルが0のときは、基本点を表す。
【0117】
Yesのとき、本動作は、ステップS203J-1に進み、Noのとき、本動作は、ステップS203J-3に進む。
【0118】
ステップS203J-3において、逆量子化部205Dは、現在の細分割レベルの量子化値をパッチ制御情報に基づき決定し、本動作は、ステップS203J-4に進む。
【0119】
ステップS203J-4において、逆量子化部205Dは、現在の細分割レベルの全ての変位量に対して逆量子化処理が完了したかどうかを判定する。
【0120】
Yesのとき、本動作は、ステップS203J-2に進み、Noのとき、本動作は、ステップS203J-5に進む。
【0121】
ステップS203J-5において、逆量子化部205Dは、パッチ境界の頂点であるかを判定する。
【0122】
Yesのとき、本動作は、ステップS203J-6に進み、Noのとき、本動作は、ステップS203J-8に進む。
【0123】
ステップS203J-6において、逆量子化部205Dは、現在のパッチより隣接パッチの細分割レベル量子化値が小さいかどうかを判定する。
【0124】
Yesのとき、本動作は、ステップS203J-7に進み、Noのとき、本動作は、ステップS203J-8に進む。
【0125】
ステップ203J-7において、逆量子化部205Dは、隣接パッチの細分割レベル量子化値で変位量を逆量子化する。
【0126】
逆量子化部205Dは、上述の変位量符号化手法が一次元変位量符号化であるとき、法線方向に直交する2つの変位量成分に対して逆量子化処理をスキップし、法線方向の変位量成分のみに対して逆量子化処理を行うように構成されていてもよい。
【0127】
このとき、逆量子化部205Dは、参考文献2「Jinhua Yu, “Advantages of uniform scalar dead-zone quantization in image coding system,” in 2004 International Conference on Communications, Circuits and Systems (IEEE Cat. No. 04EX914). IEEE, 2004, vol. 2, pp. 805-808.」の均一量子化を用いて逆量子化を行ってもよいし、その他の既存の逆量子化手法を用いて逆量子化を行ってもよい。
【0128】
ステップ203J-8において、逆量子化部205Dは、ステップS203J-3で計算した細分割レベル量子化値で変位量を逆量子化する。ここで、逆量子化の手法は、ステップS203J-7と同様である。
【0129】
また、逆量子化部205Dは、選択している頂点がサブメッシュ境界であるとき、変位量を0として復号してもよい。
【0130】
逆ウェーブレット変換部205Eは、逆量子化部205Dで出力された変位量係数に対して逆ウェーブレット変換を行い、復号変位量を出力するように構成されている。
【0131】
逆ウェーブレット変換部205Eは、法線方向に直交する2つの変位量成分に対して逆ウェーブレット変換処理をスキップし、法線方向の変位量成分のみに対して逆ウェーブレット変換を行うように構成されていてもよい。
【0132】
また、逆ウェーブレット変換部205Eは、法線方向成分のみを有する変位量を出力するように構成されていてもよい。
【0133】
(メッシュ復号部204)
メッシュ復号部204は、入力されたパッチ情報と細分割メッシュと変位量とに基づいて、復号メッシュを出力するように構成されている。
【0134】
図12は、メッシュ復号部204の動作の一例を示すフローチャートである。
【0135】
図12に示すように、ステップS204-1において、メッシュ復号部204は、全てのサブメッシュに対して処理が完了したかを判定する。
【0136】
Yesのとき、本動作は、処理を終了し、Noのとき、本動作は、ステップS204-2に進む。
【0137】
ステップS204-2において、メッシュ復号部204は、サブメッシュ内の全ての細分割頂点に対して処理が完了したかを判定する。
【0138】
Yesのとき、本動作は、ステップS204-3に進み、Noのとき、本動作は、ステップS204-1に進む。
【0139】
ステップS204-3において、メッシュ復号部204は、サブメッシュ内の頂点を選択し、本動作は、ステップS204-4に進む。
【0140】
ステップS204-4において、メッシュ復号部204は、サブメッシュ境界の頂点かを判定する。
【0141】
Yesのとき、本動作は、ステップS204-5に進み、Noのとき、本動作は、ステップS204-7に進む。
【0142】
ステップS204-5において、メッシュ復号部204は、選択した頂点の変位量と隣接サブメッシュの同一頂点の変位量とが異なるかを判定する。
【0143】
ここで、メッシュ復号部204は、かかる頂点間の距離が閾値以下のとき、同一頂点と判定する。
【0144】
また、メッシュ復号部204は、パッチ情報、パッチ制御情報、制御情報のいずれかに隣接するサブメッシュ境界の頂点情報が与えられている場合は、サブメッシュ境界の頂点情報に基づき、同一頂点を判定してもよい。
【0145】
Yesのとき、本動作は、ステップS204-6に進み、Noのとき、本動作は、ステップS204-7に進む。
【0146】
ステップS204-6において、メッシュ復号部204は、選択した細分割頂点における変位量の補正を行い、補正後の変位量を細分割頂点に加算する。
【0147】
メッシュ復号部204は、2つの異なる変位量の平均値を用いて、かかる変位量を補正してもよいし、2つの異なる変位量のうちのいずれかの変位量を用いることで、かかる変位量を補正してもよい。
【0148】
ステップS204-7において、メッシュ復号部204は、細分割頂点に対して変位量を加算し、本動作は、ステップS204-2に進む。
【0149】
メッシュ復号部204は、上記と同様の手順でサブメッシュ間の同一頂点を求め、変位量加算後の同一頂点に対して補正を行ってもよい。 補正方法は、上述の通り、同一頂点座標の平均値として補正してもよいし、そのいずれかを使用して補正してもよい。
【0150】
本実施形態によれば、パッチに含まれる基本面のインデックスを先頭インデックスと末尾インデックスとの差分として符号化することで、効率的に符号化することができる。
【0151】
また、本実施形態によれば、サブメッシュやパッチ境界上の頂点に定義される変位量を補正することで、連続するメッシュデータの復号することを可能とする。
【0152】
さらに、本実施形態によれば、変位量の法線方向成分のみを符号化することで、効率的に変位量を圧縮することができる。
【0153】
上述のメッシュ符号化装置100及びメッシュ復号装置200は、コンピュータに各機能(各工程)を実行させるプログラムであって実現されていてもよい。
【産業上の利用可能性】
【0154】
なお、本実施形態によれば、例えば、動画像通信において総合的なサービス品質の向上を実現できることから、国連が主導する持続可能な開発目標(SDGs)の目標9「レジリエントなインフラを整備し、持続可能な産業化を推進するとともに、イノベーションの拡大を図る」に貢献することが可能となる。
【符号の説明】
【0155】
1…メッシュ処理システム
100…メッシュ符号化装置
200…メッシュ復号装置
201…多重分離部
202…サブメッシュ復号部
203…細分割部
203A…基本メッシュ再分割部
203B…細分割メッシュ調整部
203C…細分割頂点法線計算部
204…メッシュ復号部
205…変位量復号部
205A…変位量符号化次元数判定部
205B…映像復号部
205C…変位量再構成部
205D…逆量子化部
205E…逆ウェーブレット変換部
206…映像復号部
207…アトラスデータ復号部
207A…分離部
207B…パッチ情報復号部
207B1…可変長復号部
207B2…差分パッチ情報復号部
207C…バッチ制御情報復号部
207C1…パッチ制御情報バッファ部
207C2…パッチ制御情報参照部
207C3…パッチ制御情報予測部
207C4…可変長復号部
207C5…加算部
207D…制御情報復号部