IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 日本電信電話株式会社の特許一覧

<>
  • 特許-復号方法、復号装置およびプログラム 図1
  • 特許-復号方法、復号装置およびプログラム 図2
  • 特許-復号方法、復号装置およびプログラム 図3
  • 特許-復号方法、復号装置およびプログラム 図4
  • 特許-復号方法、復号装置およびプログラム 図5
  • 特許-復号方法、復号装置およびプログラム 図6
  • 特許-復号方法、復号装置およびプログラム 図7
  • 特許-復号方法、復号装置およびプログラム 図8
  • 特許-復号方法、復号装置およびプログラム 図9
  • 特許-復号方法、復号装置およびプログラム 図10
  • 特許-復号方法、復号装置およびプログラム 図11
  • 特許-復号方法、復号装置およびプログラム 図12
  • 特許-復号方法、復号装置およびプログラム 図13
  • 特許-復号方法、復号装置およびプログラム 図14
  • 特許-復号方法、復号装置およびプログラム 図15
  • 特許-復号方法、復号装置およびプログラム 図16
  • 特許-復号方法、復号装置およびプログラム 図17
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-11-29
(45)【発行日】2023-12-07
(54)【発明の名称】復号方法、復号装置およびプログラム
(51)【国際特許分類】
   G06T 9/40 20060101AFI20231130BHJP
【FI】
G06T9/40
【請求項の数】 6
(21)【出願番号】P 2021563457
(86)(22)【出願日】2019-12-09
(86)【国際出願番号】 JP2019048108
(87)【国際公開番号】W WO2021117092
(87)【国際公開日】2021-06-17
【審査請求日】2022-04-26
(73)【特許権者】
【識別番号】000004226
【氏名又は名称】日本電信電話株式会社
(74)【代理人】
【識別番号】100083806
【弁理士】
【氏名又は名称】三好 秀和
(74)【代理人】
【識別番号】100129230
【弁理士】
【氏名又は名称】工藤 理恵
(72)【発明者】
【氏名】渡邊 真由子
(72)【発明者】
【氏名】谷田 隆一
(72)【発明者】
【氏名】木全 英明
【審査官】淀川 滉也
(56)【参考文献】
【文献】米国特許出願公開第2019/0116357(US,A1)
【文献】特開2002-165217(JP,A)
【文献】国際公開第2019/230920(WO,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G06T 9/40
(57)【特許請求の範囲】
【請求項1】
3次元の点群データを含む立方体を第1方向、第2方向、第3方向の順にn(nは2以上の整数)分割して点の占有状態を符号化した符号化データから前記点群データを復号する復号方法であって、
コンピュータが、
復号する順番に応じた第1方向、第2方向、第3方向を判定するステップと、
前記立方体を前記第1方向にn分割したn個の第1ブロック群それぞれの点の占有状態を得るステップと、
前記第1ブロック群それぞれの点の占有状態に応じて、当該第1ブロック群を前記第2方向にn分割したn個の第2ブロック群それぞれの点の占有状態を得るステップと、
前記第2ブロック群それぞれの点の占有状態に応じて、当該第2ブロック群を前記第3方向にn分割したn個のブロックそれぞれの点の占有状態を得るステップを実行する
復号方法。
【請求項2】
請求項に記載の復号方法であって、
nは8である
復号方法。
【請求項3】
請求項1または2に記載の復号方法であって、
前記第3方向にn分割したn個のブロックのそれぞれを符号化した符号化データを復号する
復号方法。
【請求項4】
請求項に記載の復号方法であって、
前記符号化データは、n個のブロックごとに前記復号する順番を判定するための情報を保持する
復号方法。
【請求項5】
3次元の点群データを含む立方体を第1方向、第2方向、第3方向の順にn(nは2以上の整数)分割して点の占有状態を符号化した符号化データから前記点群データを復号する復号装置であって、
復号する順番に応じた第1方向、第2方向、第3方向を判定する復号方向判定部と、
前記立方体を前記第1方向にn分割したn個の第1ブロック群それぞれの点の占有状態を得る第1復号部と、
前記第1ブロック群それぞれの点の占有状態に応じて、当該第1ブロック群を前記第2方向にn分割したn個の第2ブロック群それぞれの点の占有状態を得る第2復号部と、
前記第2ブロック群それぞれの点の占有状態に応じて、当該第2ブロック群を前記第3方向にn分割したn個のブロックそれぞれの点の占有状態を得る第3復号部を備える
復号装置。
【請求項6】
請求項1ないし4のいずれかに記載の復号方法をコンピュータに実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、復号方法、復号装置およびプログラムに関する。
【背景技術】
【0002】
仮想空間内に3次元物体を表示するコンテンツが広まっている。仮想空間内の3次元物体を表現する方法として点群データが知られている。点群データは、3次元空間上の点の集まりである。点群データそのままではデータ量が大きくなるので、点群データを含む立方体を八分木(octree)構造で符号化することが考えられている。
【0003】
八分木構造では、点群データをすべて含む立方体を作成し、各辺を2等分して8つの立方体(以下、分割後の立方体をボックスと称する)に分割する。点を含むボックスはさらに8つに分割する。点を含まないボックスは分割しない。立方体を、ボックスそれぞれの点の占有状態(点を含むか否か)に基づいて数値で表現する。点の占有状態を1ビットの数値で表すと立方体は8ビット(0から255)の数値で表される。さらに分割されたボックスも8ビットの数値で表される。上の階層(大きい立方体)から順に、8ビットの数値を並べることで点群データを符号化できる。
【先行技術文献】
【非特許文献】
【0004】
【文献】“Information technology - MPEG-I (Coded Representation of Immersive Media) - Part 9: Geometry-based Point Cloud Compression”, ISO/IEC JTC 1/SC 29/WG 11
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、現実空間における物体の構造を鑑みると、エッジのように、特定の方向には連続して点が存在するが、隣接する領域では連続して点が存在しないような場合が多数存在する。このような場合、点が存在する領域と点が存在しない領域の境界が1つのボックスに含まれることがある。結果として、当該エッジの大きさに対応する分だけ点が存在する座標と存在しない座標の両方を有するボックスが連続して、符号化効率が落ちる可能性がある。
【0006】
本発明は、上記に鑑みてなされたものであり、点群データの符号化効率を向上することを目的とする。
【課題を解決するための手段】
【0007】
本発明の一態様の復号方法は、3次元の点群データを含む立方体を第1方向、第2方向、第3方向の順にn(nは2以上の整数)分割して点の占有状態を符号化した符号化データから前記点群データを復号する復号方法であって、コンピュータが、復号する順番に応じた第1方向、第2方向、第3方向を判定するステップと、前記立方体を前記第1方向にn分割したn個の第1ブロック群それぞれの点の占有状態を得るステップと、前記第1ブロック群それぞれの点の占有状態に応じて、当該第1ブロック群を前記第2方向にn分割したn個の第2ブロック群それぞれの点の占有状態を得るステップと、前記第2ブロック群それぞれの点の占有状態に応じて、当該第2ブロック群を前記第3方向にn分割したn個のブロックそれぞれの点の占有状態を得るステップを実行する。
【発明の効果】
【0008】
本発明によれば、点群データの符号化効率を向上することができる。
【図面の簡単な説明】
【0009】
図1図1は、点群データを含む立方体を示す図である。
図2図2は、立方体をz軸方向に分割した図である。
図3図3は、4×4ブロック面をx軸方向に分割した図である。
図4図4は、4×1ブロック列をy軸方向に分割した図である。
図5図5は、本実施形態の復号装置が復号する符号化データの構造の一例を示す図である。
図6図6は、ヘッダに含まれる復号情報の一例を示す図である。
図7図7は、本実施形態の復号装置の構成例を示す機能ブロック図である。
図8図8は、本実施形態の復号装置の処理の流れを示すフローチャートである。
図9図9は、立方体をx軸方向に分割した図である。
図10図10は、8×8ブロック面をy軸方向に分割した図である。
図11図11は、8×1ブロック列をz軸方向に分割した図である。
図12図12は、点群データの符号化方法の処理の流れを示すフローチャートである。
図13図13は、立方体を8×8×8ブロックに分割した図である。
図14図14は、点群データの符号化方法の処理の流れを示すフローチャートである。
図15図15は、立方体を8分割した図である。
図16図16は、2つの立方体を8分割した図である。
図17図17は、復号装置のハードウェア構成の一例を示す図である。
【発明を実施するための形態】
【0010】
以下、本発明の実施形態について図面を用いて説明する。
【0011】
本実施形態において復号する符号化データは、3次元の点群データを含む立方体を座標軸方向ごとにn(nは2以上の整数)分割して符号化されたものである。具体的には、本実施形態の符号化データは、立方体をいずれかの座標軸方向にn分割した後、分割後の立体(n×nブロック面)を分割面と平行ないずれかの座標軸方向にn分割し、さらに分割後の立体(n×1ブロック列)をn個の立方体(1×1×1ブロックまたはブロック)に分割して得られた各立体(n×nブロック面、n×1ブロック列、および1×1×1ブロック)の点の占有状態に基づいて符号化されている。
【0012】
[符号化データ]
図1~4を参照し、本実施形態の符号化データについて具体例を用いて説明する。
【0013】
図1に示すように、点を含むブロックがy軸方向に並んでいるとする。これらのブロックを含む立方体を分割して符号化する。以下では、分割数nを4として説明する。
【0014】
図2に立方体の分割例を示す。図2の例では、立方体がz軸方向に4つの4×4ブロック面に分割されている。4×4ブロック面それぞれの点の占有状態について、点を含む立体を1、点を含まない立体を0で表す。z軸の正の方向を上位ビットとして、立方体を4分割した各立体の点の占有状態を表した数値を並べると、立方体は“0001”と表される。
【0015】
4つの4×4ブロック面のうち点を含む4×4ブロック面がさらに分割されて符号化される。図2の例では、一番下の4×4ブロック面のみがさらに分割される。
【0016】
図3に4×4ブロック面の分割例を示す。図3の例では、4×4ブロック面がx軸方向に4つの4×1ブロック列に分割されている。4×1ブロック列それぞれの点の占有状態について、点を含む立体を1、点を含まない立体を0で表す。x軸の正の方向を上位ビットとして、4×4ブロック面を4分割した各立体の点の占有状態を表した数値を並べると、図3の4×4ブロック面は“1000”と表される。
【0017】
4つの4×1ブロック列のうち点を含む4×1ブロック列がさらに分割されて符号化される。図3の例では、一番右の4×1ブロック列のみがさらに分割される。
【0018】
図4に4×1ブロック列の分割例を示す。図4の例では、4×1ブロック列がy軸方向に4つのブロックに分割されている。ブロックそれぞれの点の占有状態について、点を含む立体を1、点を含まない立体を0で表す。y軸の正の方向を上位ビットとして、4×1ブロック列を4分割した各立体の点の占有状態を表した数値を並べると、図4の4×1ブロック列は“1111”と表される。
【0019】
各立体を符号化した数値を並べると本実施形態の符号化データが得られる。図1の立方体は“0001 1000 1111”と12ビットで表される。このデータに、立方体を分割した順番、つまり復号する順番を示すヘッダが付与される。上記の例では、立方体をz軸、x軸、y軸の順に復号することを示すヘッダが付与される。
【0020】
図5に符号化データの構造の一例を示す。図5の符号化データは、ヘッダ、第1符号化データ、第2符号化データ、および第3符号化データで構成される。ヘッダは、復号方法と復号方向を示す復号情報を含む。図6に復号情報の一例を示す。図6の例では、0は従来の八分木で復号することを表す。1から6は復号方向の順番を表す。例えば、図1~4の例では、z軸、x軸、y軸の順に復号するので、復号情報の値は5となる。なお、図5の符号化データの構成および図6のヘッダは一例であり、これに限るものではない。
【0021】
第1符号化データは、立方体をn分割したn×nブロック面それぞれの点の占有状態を符号化したデータである。図1~4の例では、立方体をz軸方向に4分割して得られた4つのn×nブロック面それぞれの点の占有状態を符号化した“0001”が第1符号化データである。
【0022】
第2符号化データは、点を含むn×nブロック面それぞれをn分割したn×1ブロック列それぞれの点の占有状態を符号化したデータである。図1~4の例では、4×4ブロック面をx軸方向に4分割して得られた4つのn×1ブロック列それぞれの点の占有状態を符号化した“0001”が第2符号化データである。第2符号化データは、点を含むn×nブロック面の数分存在する。例えば、2つのn×nブロック面が点を含む場合、第2符号化データは2つ存在し、所定の順番で並べられる。
【0023】
第3符号化データは、点を含むn×1ブロック列それぞれをn分割したブロックそれぞれの点の占有状態を符号化したデータである。図1~4の例では、4×1ブロック列をy軸方向に4分割して得られた4つのブロックそれぞれの点の占有状態を符号化した“1111”が第3符号化データである。第3符号化データは、点を含むn×1ブロック列の数分存在する。複数の第3符号化データは所定の順番で並べられる。
【0024】
なお、復号情報の値が0の場合、ヘッダに続くデータは、立方体の各辺を2等分して分割した8つの立方体それぞれの点の占有状態である。点の占有状態を0か1の1ビットとすると、1階層分の八分木構造のデータは8ビットの数値で表される。本実施形態の符号化データの分割数nを8とすると、第1符号化データ、第2符号化データ、および第3符号化データのいずれも8ビットの数値となるので、八分木構造のデータと親和性が高くなる。
【0025】
次の階層の各ブロック(図4の各ブロック)が分割できるときは、第3符号化データの後に、点を含む各ブロックを符号化した符号化データを追加する。例えば、図4の各ブロックをさらに分割するときは、ブロック4つ分の符号化データが追加される。各ブロックは図1~4と同様に符号化できる。4つのブロックの符号化データのそれぞれは、ヘッダ、第1符号化データ、第2符号化データ、および第3符号化データで構成される。ブロックごとに、本実施形態の符号化データと八分木構造のデータを使い分けてもよい。
【0026】
さらに下の階層のブロック(図4の各ブロックを分割して得られるブロック)が分割できるときは、ブロックごとに下の階層のブロックの符号化データを追加してもよいし、階層ごとに符号化データをまとめてもよい。
【0027】
親の立方体(図1の立方体)と子のブロック(図4の各ブロック)の復号方向が同じ場合は、各ブロックの符号化データにヘッダを付与しなくてもよい。例えば、図4の4つのブロックの符号化データのそれぞれは、第1符号化データ、第2符号化データ、および第3符号化データで構成される。これらの符号化データは、z軸方向、x軸方向、y軸方向の順番で復号する。
【0028】
同じ階層で復号方向が同じ場合は、階層ごとにヘッダを付与してもよい。例えば、階層の1番目の符号化データのみにヘッダを付与し、残りの符号化データにはヘッダを付与しない。
【0029】
[復号装置の構成]
図7を参照し、本実施形態の復号装置について説明する。図7に示す復号装置10は、復号方向判定部11、第1復号部12、第2復号部13、および第3復号部14を備える。
【0030】
復号方向判定部11は、復号する順序に応じた方向を判定する。以下では、復号する順序に応じた方向を第1方向、第2方向、第3方向とする。第1方向、第2方向、第3方向のそれぞれは、x軸方向、y軸方向、z軸方向のいずれかである。
【0031】
第1復号部12は、立方体を第1方向にn分割したn個のn×nブロック面それぞれの点の占有状態を得る。
【0032】
第2復号部13は、n×nブロック面の点の占有状態に応じて、点を含むn×nブロック面を第2方向にn分割したn個のn×1ブロック列それぞれの点の占有状態を得る。
【0033】
第3復号部14は、n×1ブロック列の点の占有状態に応じて、点を含むn×1ブロック列を第3方向にn分割したn個のブロックそれぞれの点の占有状態を得る。
【0034】
ブロックをさらに分割できるときは、点を含むブロックつまり図5の第3符号化データに続く次のブロックの符号化データを復号方向判定部11に入力する。ブロックが分割できないときは、ブロックの点の占有状態が点群データを示す。
【0035】
[復号装置の処理]
図8のフローチャートを参照し、復号装置10の処理の流れについて説明する。
【0036】
ステップS1にて、復号装置10は、入力した符号化データの復号方法を取得し、ステップS2にて、復号方法は従来方法であるか否か判定する。復号方法は、ヘッダを参照することで判定できる。また、復号方向もヘッダから得ることができる。
【0037】
復号方法が従来方法の場合、ステップS3にて、従来方法でヘッダに続くデータを復号する。
【0038】
符号化データが復号装置10の復号対象の場合、ステップS4にて、第1復号部12は、第1符号化データから、8×8×8ブロック(立方体)を第1方向に分割した8×8ブロック面の点の占有状態を得る。分割数n(ここではn=8)は、事前に指定されてもよいし、ヘッダで指定されてもよい。
【0039】
例えば、第1方向がx軸のとき、図9に示すように、立方体はx軸方向に8つの8×8ブロック面に分割されて符号化されている。8×8ブロック面の点の占有状態を1ビットで表すと、x軸の正の方向を上位ビットとした8ビットの数値(0~255)で立方体は符号化されている。
【0040】
点を含まない8×8ブロック面は、以下のステップS5以降の処理対象としない。
【0041】
ステップS5にて、8×8ブロック面のうち点を含む8×8ブロック面について、第2復号部13は、第2符号化データから、8×8ブロック面を第2方向に分割した8×1ブロック列の点の占有状態を得る。
【0042】
例えば、第2方向がy軸のとき、図10に示すように、8×8ブロック面はy軸方向に8つの8×1ブロック列に分割されて符号化されている。8×1ブロック列の点の占有状態を1ビットで表すと、y軸の正の方向を上位ビットとした8ビットの数値(0~255)で8×8ブロック面は符号化されている。
【0043】
点を含まない8×1ブロック列は、以下のステップS6以降の処理対象としない。
【0044】
ステップS6にて、8×1ブロック列のうち点を含む8×1ブロック列について、第3復号部14は、第3符号化データから、8×1ブロック列を第3方向に分割したブロックの点の占有状態を得る。
【0045】
例えば、第3方向がz軸のとき、図11に示すように、8×1ブロック列はz軸方向に8つのブロックに分割されて符号化されている。ブロックの点の占有状態を1ビットで表すと、z軸の正の方向を上位ビットとした8ビットの数値(0~255)で8×1ブロック列は符号化されている。
【0046】
ステップS7にて、ステップS6で得られたブロックがさらに分割できるか否かを判定する。従来方法で復号した場合は、ステップS3で分割後のブロックがさらに分割できるか否かを判定する。
【0047】
ブロックがさらに分割できる場合、そのブロックを符号化したデータについて、ステップS1からの処理を繰り返す。具体的には、図7の次のブロック以降のデータについてステップS1からの処理を繰り返す。
【0048】
[符号化方法]
本実施形態では、分割後の各立体内の点の占有状態の相関が高くなる方向に立体をn分割し、分割後の立体内の点の占有状態に基づいて符号化する。例えば、立体をn分割したときに、分割後のn個の立体のうち点を含まない立体が多くなるように分割方向を決定する。このとき、n分割可能なn×1ブロック列(1×1×n,1×n×1,n×1×1のいずれでもよい)が最小単位(最小の立体)となる。または、点の占有状態の相関が高くなるように、n個のブロックを一方向に並べてn×1ブロック列を作成し、各ブロックの点の占有状態に応じてn×1ブロック列を符号化する。上の階層では、作成するブロック群内の点の占有状態の相関が高くなる方向に、n個のn×1ブロック列を並べて、各n×1ブロック列内の点の占有状態に応じて作成したブロック群を符号化する。さらに上の階層では、点の占有状態の相関が高くなる方向に下の階層のブロック群を並べて符号化する。いずれにおいても、立体を一方向にn分割した各立体の点の占有状態に基づいて符号化されるものであり、本実施例としての選択可能な最小単位はn×1ブロック列である。ただし、符号化対象の点の占有状態により、実施例としての最小単位よりも大きな単位で符号化される場合も当然ある。以下、分割数nを8とした符号化方法について説明する。
【0049】
図12のフローチャートを参照し、点群データの符号化方法の一例について説明する。
【0050】
ステップS11にて、点群データを全て含み、1辺が8のk乗のうち最小となる立方体を生成する。分割数nは8、階層の数はkである。
【0051】
ステップS12にて、図13に示すように、xyz軸方向にそれぞれ8分割する。つまり、立方体を8×8×8個のブロックに分割する。
【0052】
ステップS13にて、xyz軸方向のいずれかのうち、当該空間に点がある、もしくは点が無い相関が最も高くなる方向に8つのブロックをまとめて8×1ブロック列を作成する。例えば、点を含まないブロックだけで構成される8×1ブロック列の数が多くなる方向に、8×1ブロック列を作成する。前出の図11で示した例では、z軸方向にブロックをまとめて8×1ブロック列を作成した。全てのブロックが同じ方向(図11の例ではz軸方向)にまとめられて、64個の8×1ブロック列が作成される。
【0053】
ステップS14にて、ステップS13でブロックをまとめた方向以外のいずれかの方向に8つの8×1ブロック列をまとめて8×8ブロック面を作成する。例えば、点を含まないブロックだけで構成される8×8ブロック面の数が多くなる方向に、8×8ブロック面を作成する。前出の図10に示した例では、y軸方向に8×1ブロック列をまとめて8×8ブロック面を作成した。全ての8×1ブロック列が同じ方向(図10の例ではy軸方向)にまとめられて、8個の8×8ブロック面が作成される。
【0054】
8個の8×8ブロック面をまとめると元の立方体となる。
【0055】
以上の処理により、立方体を分割する方向の順番と分割後の各立体の点の占有状態が決まるので、点群データを含む立方体を符号化できる。
【0056】
また、ステップS15にて、ブロックがさらに分割できるか否か判定する。分割できるときは、点を含むブロックのそれぞれについて、ステップS12からステップS14の処理を繰り返して下の階層の各ブロックを符号化する。なお、ステップS12からステップS14の処理はk回繰り返される。
【0057】
図14のフローチャートを参照し、点群データの符号化方法の別の例について説明する。
【0058】
ステップS21にて、単位ブロックを最小とする。例えば、点群データの1つの点を含む立方体を最小の単位ブロックとする。
【0059】
ステップS22にて、空間内の点の占有状態の相関が高い方向(x軸方向、y軸方向、z軸方向のいずれか)に、単位ブロックを8個まとめて8×1ブロック列を作成する。
【0060】
ステップS23にて、含まれるブロック列の相関が高くなる方向(ステップS22の方向と直交する方向)に、8×1ブロック列を8個まとめて8×8ブロック面を作成する。
【0061】
ステップS24にて、8×8ブロック面を8個まとめて8×8×8ブロックの立方体を作成する。
【0062】
ステップS25にて、立方体に全ての点群データが含まれているか否か判定する。
【0063】
立方体に全ての点群データが含まれている場合は、立方体を分割する方向の順番と分割後の各立体の点の占有状態が決まるので、点群データを含む立方体を符号化できる。
【0064】
立方体に全ての点群データが含まれていない場合は、ステップS26にて、8×8×8ブロックを単位ブロックとして、ステップS22からの処理を繰り返す。
【0065】
なお、符号化方法は上記のものに限らず、様々な符号化方法を用いることができる。例えば、6通りの全ての順番で符号化し、最も符号化効率のよい順番を採用する。
【0066】
[八分木との比較]
次に、本実施形態の復号方法を用いて復号する符号化データと八分木で符号化したデータの符号化効率を比較する。
【0067】
図15,16を参照し、図1で示した4つのブロックを含む立方体を八分木で符号化したデータについて説明する。
【0068】
図15に示すように、八分木構造では、立方体の各辺を2等分して8つの立方体に分割する。8つの立方体のそれぞれに、位置に応じて0番から7番の番号を付与する。具体的には、図15の左側の縦に並んだ2つの立方体を下から順に0番と1番とし、奥の縦に並んだ2つの立方体を下から順に2番と3番とし、手前の縦に並んだ2つの立方体を下から順に4番と5番とし、右側の縦に並んだ2つの立方体を下から順に6番と7番とする。立方体それぞれの点の占有状態について、点を含む立方体を1、点を含まない立方体を0で表す。立方体の番号順に、各立方体の点の占有状態を表した数値を下位ビットから並べると、立方体は“01010000”と表される。
【0069】
図16に示すように、点を含む4番と6番の立方体のそれぞれは、さらに8つの立方体に分割されて同様に符号化される。4番と6番の立方体のいずれも“01010000”と表される。
【0070】
立方体を符号化した数値を階層ごとに並べると、“01010000 01010000 01010000”と24ビットで表される。前出のように、本実施形態の符号化データは12ビットであり、八分木よりも符号量を削減できる可能性がある。
【0071】
以上説明したように、本実施形態の復号装置10は、3次元の点群データを含む立方体を第1方向、第2方向、第3方向の順にn(nは2以上の整数)分割して点の占有状態を符号化した符号化データから点群データを復号する。復号装置10は、立方体を分割した順番に応じた第1方向、第2方向、第3方向を判定する復号方向判定部11と、立方体を第1方向にn分割したn個のn×nブロック面それぞれの点の占有状態を得る第1復号部12と、n×nブロック面それぞれの点の占有状態に応じて、n×nブロック面を第2方向にn分割したn個のn×1ブロック列それぞれの点の占有状態を得る第2復号部13と、n×1ブロック列それぞれの点の占有状態に応じて、n×1ブロック列を第3方向にn分割したn個のブロックそれぞれの点の占有状態を得る第3復号部14を備える。これにより、点群データを八分木構造で表現したときよりも、符号化効率を向上できる場合がある。例えば、床または柱などの3次元物体を表現する際に符号化効率を向上できる。
【0072】
上記説明した復号装置10には、例えば、図17に示すような、中央演算処理装置(CPU)901と、メモリ902と、ストレージ903と、通信装置904と、入力装置905と、出力装置906とを備える汎用的なコンピュータシステムを用いることができる。このコンピュータシステムにおいて、CPU901がメモリ902上にロードされた所定のプログラムを実行することにより、復号装置10が実現される。このプログラムは磁気ディスク、光ディスク、半導体メモリ等のコンピュータ読み取り可能な記録媒体に記録することも、ネットワークを介して配信することもできる。
【符号の説明】
【0073】
10…復号装置
11…復号方向判定部
12…第1復号部
13…第2復号部
14…第3復号部
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17