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

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

▶ キヤノン株式会社の特許一覧

特開2024-162356符号化装置、復号化装置、及びコンピュータプログラム
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024162356
(43)【公開日】2024-11-21
(54)【発明の名称】符号化装置、復号化装置、及びコンピュータプログラム
(51)【国際特許分類】
   G06T 9/40 20060101AFI20241114BHJP
【FI】
G06T9/40
【審査請求】未請求
【請求項の数】14
【出願形態】OL
(21)【出願番号】P 2023077766
(22)【出願日】2023-05-10
(71)【出願人】
【識別番号】000001007
【氏名又は名称】キヤノン株式会社
(74)【代理人】
【識別番号】100114775
【弁理士】
【氏名又は名称】高岡 亮一
(74)【代理人】
【識別番号】100121511
【弁理士】
【氏名又は名称】小田 直
(74)【代理人】
【識別番号】100208580
【弁理士】
【氏名又は名称】三好 玲奈
(72)【発明者】
【氏名】山本 哲也
(57)【要約】
【課題】
レーザを照射したスキャンなどを行う場合における符号化の効率を向上する事が可能な符号化装置を提供する。
【解決手段】
符号化装置において、複数の計測点からなる点群データを、計測手段から取得する取得手段と、前記計測手段の計測パターンに関する計測モデル情報に基づいて、前記複数の計測点に対応する予測点を算出する算出手段と、前記計測点と、前記計測点に対応する前記予測点との差分を演算する演算手段と、前記差分を符号化する符号化手段と、を備える。
【選択図】 図7

【特許請求の範囲】
【請求項1】
複数の計測点からなる点群データを、計測手段から取得する取得手段と、
前記計測手段の計測パターンに関する計測モデル情報に基づいて、前記複数の計測点に対応する予測点を算出する算出手段と、
前記計測点と、前記計測点に対応する前記予測点との差分を演算する演算手段と、
前記差分を符号化する符号化手段と、
を備えることを特徴とする符号化装置。
【請求項2】
前記取得手段は、前記計測手段がレーザを照射したスキャンを行うことによって生成された前記複数の計測点からなる前記点群データを取得する、ことを特徴とする請求項1に記載の符号化装置。
【請求項3】
前記計測モデル情報は、前記計測手段のスキャン時におけるレーザの照射位置又はレーザの照射タイミングに基づいたIDで管理された複数の点に関する情報を含む、ことを特徴とする請求項2に記載の符号化装置。
【請求項4】
前記複数の計測点の情報は、前記計測手段の計測時におけるレーザの照射角度に関する角度情報を含み、
前記計測モデル情報は、前記計測手段のスキャン時におけるレーザの照射角度に関する角度モデル情報を含む、ことを特徴とする請求項2に記載の符号化装置。
【請求項5】
前記角度情報は、前記計測手段の計測時におけるレーザの方位角と仰角とを含み、
前記角度モデル情報は、前記計測手段のスキャン時におけるレーザの方位角モデルと仰角モデルとを含む、ことを特徴とする請求項4に記載の符号化装置。
【請求項6】
前記複数の計測点の情報は、前記計測手段の計測時におけるレーザの照射タイミングを示す照射時間情報を含み、
前記計測モデル情報は、前記計測手段のスキャン時におけるレーザの照射タイミングを示す照射時間モデル情報を含む、ことを特徴とする請求項2に記載の符号化装置。
【請求項7】
前記計測モデル情報と前記計測点の角度の差分に基づき、前記計測モデル情報を修正する修正手段を有することを特徴とする請求項1に記載の符号化装置。
【請求項8】
計測手段の計測パターンに関する計測モデル情報を有し、前記計測モデル情報と符号化データに含まれる角度情報との比較結果に基づき計測点の情報を復号化する復号化手段を備えることを特徴とする復号化装置。
【請求項9】
前記計測手段がレーザを照射したスキャンを行うことによって生成された前記複数の計測点からなる点群データを取得する取得手段を有する、ことを特徴とする請求項8に記載の復号化装置。
【請求項10】
前記複数の計測点の情報は、前記計測手段の計測時におけるレーザの照射角度に関する角度情報を含み、
前記計測モデル情報は、前記計測手段のスキャン時におけるレーザの照射角度に関する角度モデル情報を含む、ことを特徴とする請求項9に記載の復号化装置。
【請求項11】
前記角度情報は、前記計測手段の計測時におけるレーザの方位角と仰角とを含み、
前記角度モデル情報は、前記計測手段のスキャン時におけるレーザの方位角モデルと仰角モデルとを含む、ことを特徴とする請求項10に記載の復号化装置。
【請求項12】
前記複数の計測点の情報は、前記計測手段の計測時におけるレーザの照射タイミングを示す照射時間情報を含み、
前記計測モデル情報は、前記計測手段のスキャン時におけるレーザの照射タイミングを示す照射時間モデル情報を含む、ことを特徴とする請求項9に記載の復号化装置。
【請求項13】
前記計測モデル情報と前記計測点の角度の差分に基づき、前記計測モデル情報を修正する修正手段を有することを特徴とする請求項8に記載の復号化装置。
【請求項14】
請求項1~7のいずれか1項に記載の符号化装置又は請求項8~13のいずれか1項に記載の復号化装置の各手段をコンピュータにより制御するためのコンピュータプログラム。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、符号化装置、復号化装置、及びコンピュータプログラム等に関するものである。
【背景技術】
【0002】
近年、自動運転技術開発やVR(Virtual Reality)技術の普及に伴い、3次元位置情報を計測する事が可能なLiDAR(Light Detection And Ranging)技術の開発が進められている。
【0003】
LiDARとはレーザの照射角度を高速で変更しながら、離散的にレーザを照射し、各照射角度においてレーザの反射光が戻るまでの時刻を計測する事で、周辺物体の3次元位置情報を計測する機器のことである。LiDARは各レーザの照射角度における物体までの距離情報から周辺物体の3次元位置情報を示す点の集まりを点群データとして出力する。
【0004】
一般的に、点群データは大量の点を含んでおり、各点は位置情報に加えて、例えばタイムスタンプ情報、インテンシティ情報、RGB情報などの複数の属性情報を持っている。点群データは大量のデータであるため、記憶及び通信にコストがかかる可能性があり、これらの処理にも時間がかかる可能性がある。
【0005】
これらの課題に対して、点群のデータを減少させる要求があり、例えばMPEG(Moving Picture Experts Group)では、非特許文献1にて開示されている点群の符号化のための手法であるG-PCC(Geometry based Point Cloud Compresion)を提供している。
【0006】
G-PCCは、点群データの各点の3次元の座標で表される位置情報(Geometry)と、タイムスタンプやインテンシティなどの属性情報(Attribute)を、夫々異なるプロセスで符号化を行なう。
【0007】
又、例えば特許文献1には、LiDARにより取得した計測データに対し、計測データを地物の外形を表すテンプレートにより近似するためのパラメータを、圧縮データとして生成するデータ圧縮装置が記載されている。
【先行技術文献】
【特許文献】
【0008】
【特許文献1】特開2018-116452号公報
【非特許文献】
【0009】
【非特許文献1】G-PCC codec description v2、ISO/IEC MPEG (JTC 1/SC 29/WG11)、N18189
【発明の概要】
【発明が解決しようとする課題】
【0010】
しかし、非特許文献1に記載された手法では、LiDARが複雑なスキャン経路を持つ場合は、過去のスキャンからの予測された方位角及び仰角と次のスキャンの方位角及び仰角の差分値が大きくなり、符号化時の圧縮効率が低下してしまう。又、特許文献1の手法では、地物の外形を表すテンプレートが必要となるため、周囲の環境の影響を受けやすい。
【0011】
そこで、本発明の目的の1つは、符号化の効率を向上する事が可能な符号化装置を提供する事にある。
【課題を解決するための手段】
【0012】
上記目標を達成するために、本発明の符号化装置は、
複数の計測点からなる点群データを、計測手段から取得する取得手段と、
前記計測手段の計測パターンに関する計測モデル情報に基づいて、前記複数の計測点に対応する予測点を算出する算出手段と、
前記計測点と、前記計測点に対応する前記予測点との差分を演算する演算手段と、
前記差分を符号化する符号化手段と、
を備えることを特徴とする。
【発明の効果】
【0013】
本発明によれば、符号化の効率を向上する事が可能な符号化装置を提供する事ができる。
【図面の簡単な説明】
【0014】
図1】本発明の実施形態に係るG-PCCの符号化の処理例を示す機能ブロック図である。
図2】本発明の実施形態に係るPredictive Codingの符号化の処理を説明する機能ブロック図である。
図3】本発明の実施形態に係るPredictive Codingの位置予測モジュール203と差分算出モジュール204で行われる処理例について説明する図である。
図4】本発明の実施形態に係るAngular Coding Modeで生成される木の例を説明する図である。
図5】本発明の実施形態に係るG-PCCの復号化の処理を説明する機能ブロック図である。
図6】本発明の実施形態に係るPredictive Codingの復号化の処理を説明する機能ブロック図である。
図7】本発明の実施例1において符号化対象を計測するためのLiDARのスキャン経路の例を示す図である。
図8】本発明の実施例1に係る点群符号化装置800の概略の構成例を示す機能ブロック図である。
図9】本発明の実施例1に係る点群復号化装置900の概略の構成例を示す機能ブロック図である。
図10】本発明の実施例1に係る角度モデルの1例を示す図である。
図11】本発明の実施例1に係る角度情報符号化装置の概略の構成例を示す機能ブロック図である。
図12】本発明の実施例1に係る角度情報復号化装置の概略の構成例を示す機能ブロック図である。
図13】本発明の実施例1に係る角度算出部1102の処理例を示すフローチャートである。
図14】本発明の実施例1に係る角度算出部1203の処理例を示すフローチャートである。
図15】本発明の実施例1に係る方位角・仰角差分算出部1103の処理例を示すフローチャートである。
図16】本発明の実施例1に係る方位角・仰角計算部1204の処理例を示すフローチャートである。
図17】本発明の実施例2に係る角度情報符号化装置1700の概略の構成例を示す機能ブロック図である。
図18】本発明の実施例2に係る角度情報復号化装置1800の概略の構成例を示す機能ブロック図である。
図19】本発明の実施例2に係る角度算出部1702の処理例を示すフローチャートである。
図20】本発明の実施例2に係る角度算出部1803の処理例を示すフローチャートである。
図21】本発明の実施例3に係る角度情報符号化装置2100の概略の構成例を示す機能ブロック図である。
図22】本発明の実施例3に係る角度情報復号化装置2200の概略の構成例を示す機能ブロック図である。
図23】本発明の実施例3に係る角度モデル更新部2102の処理例を示すフローチャートである。
図24】本発明の実施例3に係る角度モデル更新部2202の処理例を示すフローチャートである。
【発明を実施するための形態】
【0015】
以下、図面を参照して本発明の実施の形態を、実施例を用いて説明する。ただし、本発明は以下の実施例に限定されるものではない。なお、各図において、同一の部材または要素については同一の参照番号を付し、重複する説明は省略または簡略化する。
【0016】
図1は、本発明の実施形態に係るG-PCCの符号化の処理例を示す機能ブロック図である。尚、図1に示される機能ブロックの一部は、符号化装置に含まれる不図示のコンピュータとしてのCPU等に、不図示の記憶媒体としてのメモリに記憶されたコンピュータプログラムを実行させることによって実現されている。
【0017】
しかし、それらの一部又は全部をハードウェアで実現するようにしても構わない。ハードウェアとしては、専用回路(ASIC)やプロセッサ(リコンフィギュラブルプロセッサ、DSP)などを用いることができる。
【0018】
又、図1に示される夫々の機能ブロックは、同じ筐体に内蔵されていなくても良く、互いに信号路を介して接続された別々の装置により構成しても良い。尚、図1に関する上記の説明は、図2図5図6図8図9図11図12図17図18図21図22についても同様に当てはまる。
【0019】
図1を参照してG-PCCの符号化の処理を説明する。100は計測手段としてレーザを対象物に照射するLiDARであり、複数の計測点からなる点群データを取得する。LiDAR100で計測された点群データ101が入力されると先ず、分解モジュール102にて、位置情報107と属性情報109へ分解する。位置情報107は位置情報符号化モジュール103にて位置情報ビットストリーム108へ変換される。
【0020】
属性情報109は、位置情報107と共に属性情報符号化104モジュールにて属性情報ビットストリーム110へ変換される。その後、位置情報ビットストリーム108と属性情報ビットストリーム110は合成105モジュールへ入力され、符号化データ106へ合成されて出力される。
【0021】
G-PCCの位置情報符号化モジュール103における位置情報符号化は、LiDARが出力する点群データに適した符号化手法としてPredictive geometry codingを用いる。
【0022】
Predictive geometry codingは、入力された点に対し、過去に入力された複数の点の位置情報を基に入力点の位置を予測し、予測位置と入力点の位置情報との差分を符号化する手法である。
【0023】
図2は、本発明の実施形態に係るPredictive Codingの符号化の処理を説明する機能ブロック図であり、図1の位置情報符号化モジュール103におけるPredictive geometry codingの詳細を示している。
【0024】
先ず、点群の位置情報107から1点分の情報が取り出され、点の位置情報201が得られる。この点の位置情報201は3次元の座標情報である。次に点の位置情報201は木更新モジュール202において木(Prediction tree)のノードとして追加される。木は点の位置情報201に基づいて任意に更新することができるが、典型的にはノードに対応した点の位置を評価し、距離が近いノード同士で符号化の順序を示す枝を張る。
【0025】
木の更新後には、位置予測モジュール203において木を使用した位置予測が行われ、予測位置207と予測に使用した親のノードの識別子208が出力される。予測位置207は差分算出モジュール204にて、点の位置情報201との差分(予測位置の差分209)が算出され、親のノードの識別子208と共に算術符号化205モジュールに入力される。算術符号化205モジュールにおいて、予測位置の差分209は親のノードの識別子208に基づき算術符号化され、点の位置情報のビットストリーム206として出力される。
【0026】
尚、予測位置の差分209が小さいほど符号化効率は高くなり、大きいほど符号化効率は低くなる。即ち、予測位置207が点の位置情報201と近いほど符号化効率は高くなり、位置予測モジュール203にて正確な位置予測を行なうことが、符号化効率を高める上で重要となる。
【0027】
図3は、本発明の実施形態に係るPredictive Codingの位置予測モジュール203と差分算出モジュール204で行われる処理例について説明する図である。301は木であり、nを予測対象のノードとし、nの親のノードをn0、n0の親のノードをn1,n1の親のノードをn2と表現している。
【0028】
位置予測モジュール203において、任意のノードをxとし、xの位置をPos(x)で表わし、予測位置をPred(x)で表すものとするとき、
【0029】
Pred(n)=Pos(n0)+Pos(n0)-Pos(n1)
又は、
Pred(n)=Pos(n1)+Pos(n0)-Pos(n2)
のいずれかの予測方法で予測を行なう。Pred(n)は図2の予測位置207に該当する。
【0030】
次に差分算出モジュール204において、予測位置とノードnに対応する点の位置の差分を算出する。任意のノードをxとし、xの予測位置と位置の差分をDelta(x)で表すものとすると、
Delta(n)=Pred(n)-Pos(n)
であり、Delta(n)は図2の予測位置の差分209に該当する。
【0031】
尚、本実施形態では、回転型LiDARで取得した点群にPredictive geometry codingを適用する際にAngular Coding Modeを適用する。Angular coding modeでは、回転型LiDARで取得した点の位置情報として、レーザを識別するID、方位角、距離を組み合わせた3次元の情報を位置情報として使用する。
【0032】
回転型LiDARは同じレーザであれば仰角が変動しない特徴があるため、仰角の代わりにレーザを識別するIDを用いることで情報量を削減することができる。
【0033】
図4は、本発明の実施形態に係るAngular Coding Modeで生成される木の例を説明する図である。
【0034】
401で示すように、図の上方向はレーザを識別するIDを表しており、右方向は方位角、手前から奥へ向かう方向は距離を表している。図4の1~NはレーザIDを示し、各レーザで取得された点は、402で示すように、同じIDのレーザで取得された点を親に持つようにノードを追加し、木を生成していく。
【0035】
図5は、本発明の実施形態に係るG-PCCの復号化の処理を説明する機能ブロック図である。入力された符号化データ106は、分解モジュール501にて分解され、位置情報ビットストリーム108と属性情報ビットストリーム110が出力される。位置情報ビットストリーム108は、位置情報復号化モジュール502にて位置情報107に復号される。
【0036】
属性情報ビットストリーム110は、位置情報ビットストリーム108と共に属性情報復号化モジュール503へ入力され、属性情報109に復号される。位置情報107と属性情報109は合成モジュール504へ入力され、合成された点群データ101として出力される。
【0037】
図6は、本発明の実施形態に係るPredictive Codingの復号化の処理を説明する機能ブロック図であり、図5に示される位置情報復号化モジュール502の構成例を示している。
【0038】
位置情報ビットストリーム108から、一点分のデータを抽出したものを点の位置情報のビットストリーム206と呼ぶ。位置情報のビットストリーム206は算術復号化モジュール601に入力され、親ノードの識別子208と、予測位置の差分209が復元される。
【0039】
木更新モジュール602では、親ノードの識別子208を用いて、親のノードn0を決定し、当該ノードnをn0の子として追加する。次に位置予測モジュール203にて予測位置207を算出する。その後、位置算出モジュール603にて、予測位置207と、予測位置の差分209から点の位置情報201を算出する。
【0040】
予測位置207をPred(n)、予測位置の差分209をDelta(n)、点の位置情報201をPos(n)で表すと、
Pos(n)=Pred(n)+Delta(n)
である。
【0041】
(実施例1)
図7は、本発明の実施例1において符号化対象を計測するためのLiDARのスキャン経路の例を示す図である。実施例1においては、LiDAR700は例えばMEMS(Micro Electro Mechanical Systems)によりレーザ702を照射する方位角及び仰角等が例えば図7に示すような所定パターンのスキャン経路となるように制御される。
【0042】
尚、スキャン経路は図7のようなパターンに限定されず、どのようなパターンであっても良い。又、実施例1では、図7のようなスキャン経路701が予め設計値により設定されており、レーザ702を照射する方位角及び仰角を調整し、対象物体703から取得された反射光の情報に基づきLiDAR700から対象物体703までの距離を取得する。
【0043】
レーザの照射はレーザを照射する順番に対応した固有の番号(以下「スキャンID」と呼ぶ)の順番に従い実施され、最後のスキャンIDのスキャンが完了したら再度最初のスキャンIDのスキャンが実施される。例えば点704はスキャンIDが任意の整数nの点を示し、点704がスキャンされた後、スキャンIDがn+1の点705がスキャンされる。スキャンはLiDARの動作が停止するまで繰り返し実施される。
【0044】
LiDARから取得される点群の各点には、距離と、方位角と、仰角と、点のスキャンID或いはスキャンID=0からのスキャンが実施された相対時刻(以下「スキャン時刻」と呼ぶ)と、の情報が含まれる。
【0045】
図8は、本発明の実施例1に係る点群符号化装置800の概略の構成例を示す機能ブロック図である。点群符号化装置800は不図示のコンピュータとしてのCPUとコンピュータプログラムを記憶した記憶媒体としてのメモリを有する。
【0046】
分解モジュール801は、点の位置情報201を取得し、点の角度情報802と点の距離情報805に分解する。ここで分解モジュール801は、複数の計測点からなる点群データを、計測手段としてのLiDARから取得する取得手段として機能している。又、取得手段としての分解モジュール801は、計測手段としてのLiDARがレーザを照射したスキャンを行うことによって生成された複数の計測点からなる点群データを取得する。
【0047】
点の角度情報802は、点の方位角と、仰角と、スキャンID或いはスキャン時刻を含む。角度情報符号化装置803は点の角度情報802を符号化し、点の角度情報のビットストリーム804を出力する。符号化の方法については後述する。
【0048】
点の距離情報805は点の距離値を含む。距離情報符号化装置806は、点の距離情報805を入力として例えば非特許文献1に示す手法を用いて符号化を実施し、点の距離情報のビットストリーム807を出力する。合成モジュール808は角度情報のビットストリーム804と、点の距離情報のビットストリーム807を合成して点の位置のビットストリーム206を出力する。
【0049】
図9は、本発明の実施例1に係る点群復号化装置900の概略の構成例を示す機能ブロック図である。点群復号化装置900は不図示のコンピュータとしてのCPUとコンピュータプログラムを記憶した記憶媒体としてのメモリを有する。
【0050】
分解モジュール901は、点の位置情報のビットストリーム206を、点の角度情報のビットストリーム804と、点の距離情報のビットストリーム807に分解する。角度情報復号化装置902は点の角度情報を復号化して点の角度情報802を出力する。
【0051】
復号化手法については後述する。距離情報復号化装置903は、点の距離情報のビットストリーム807を入力として、例えば非特許文献1に示す手法を用いて復号化を実施し、点の距離情報805を出力する。合成モジュール904は、点の角度情報802と、点の距離情報805とを合成し、点の位置情報201を出力する。
【0052】
次に、本実施例の角度情報符号化装置803及び角度情報復号化装置902について詳細に説明する。
【0053】
図10は、本発明の実施例1に係る角度モデルの1例を示す図である。本実施例における角度モデル(テーブル)はスキャンIDと方位角と仰角を有している。ここで、角度モデルは、点群の計測装置であるLiDARが、点群を計測する際の経路(スキャン経路)を示す情報である。
【0054】
より具体的には、角度モデルは、各点の方位角及び仰角を示す角度モデルである。尚、角度モデルは、点群の計測装置であるLiDARによって出射されたレーザ光が、スキャン動作に伴って計測対象物の表面に描く二次元の軌跡を示す情報であっても良い。
【0055】
方位角とは図7における水平方向の角度を示し、仰角とは図7における垂直方向の角度を示す。スキャンIDと方位角と仰角は同じ行に記録されており、スキャンIDを参照する事で、角度モデルから、対応した方位角・仰角情報を取得できる。実施例1では、入力される点の角度情報802は、方位角、仰角、スキャンIDを有するものとする。
【0056】
図11は、本発明の実施例1に係る角度情報符号化装置803の概略の構成例を示す機能ブロック図である。
【0057】
図11に示す角度情報符号化装置803は、角度モデル記憶部1101と、角度算出部1102と方位角・仰角差分算出部1103と、算術符号化部1104とを備えている。
【0058】
角度モデル記憶部1101は、上述のLiDARの設計値に基づいた角度モデルのデータ(計測モデル情報)を記憶する。尚、計測モデル情報は、点群データ中の各点の情報を含み、レーザのスキャン位置あるいはタイミングに基づいたスキャンIDで管理されている。
【0059】
即ち、計測モデル情報は、計測手段としてのLiDARのスキャン時におけるレーザの照射位置又はレーザの照射タイミングに基づいたIDで管理された複数の点に関する情報を含む。尚、ここで、スキャン時とは、実際の計測時ではなく、それよりも前に予めスキャンを想定したデータを取ってモデル化している、という意味である。
【0060】
又、角度モデル記憶部1101に記憶される複数の計測点の情報は、レーザの角度情報、即ちレーザの方位角と仰角の情報を含む。即ち、複数の計測点の情報は、計測手段の計測時におけるレーザの照射角度に関する角度情報を含み、計測モデル情報は、計測手段のスキャン時におけるレーザの照射角度に関する角度モデル情報を含む。
【0061】
又、角度情報は、計測手段の計測時におけるレーザの方位角と仰角とを含み、角度モデル情報は、計測手段のスキャン時におけるレーザの方位角モデルと仰角モデルとを含む。又、レーザの照射時間情報としてレーザの照射タイミング情報等を含んでも良い。
【0062】
即ち、複数の計測点の情報は、計測手段の計測時におけるレーザの照射タイミングを示す照射時間情報を含み、計測モデル情報は、計測手段のスキャン時におけるレーザの照射タイミングを示す照射時間モデル情報を含む。
【0063】
角度算出部1102は入力された点の角度情報802の、スキャンIDに対応する方位角及び仰角の値を角度モデル記憶部1101から抽出し、方位角・仰角差分算出部1103に出力する。
【0064】
即ち、角度算出部1102は、角度モデルのデータに基づき、入力された点の方位角及び仰角を予測して、方位角の予測値及び仰角の予測値を算出する。ここで、角度算出部1102は、計測手段の計測パターンに関する計測モデル情報に基づいて、複数の計測点に対応する予測点を算出する算出手段として機能している。
【0065】
方位角・仰角差分算出部1103は、角度算出部1102から得られた方位角及び仰角予測値と、点群データより得られた方位角及び仰角の計測値の差分を計算し、得られた差分値を算術符号化部1104に出力する。方位角・仰角差分算出部1103は、計測点と、計測点に対応する予測点との差分を演算する演算手段として機能している。
【0066】
算術符号化部1104は方位角・仰角差分算出部1103から出力された方位角及び仰角の差分値を取得し、算術符号化を行う。得られた結果を点の角度情報のビットストリーム804として出力する。算術符号化部1104は、差分を符号化する符号化手段として機能している。
【0067】
図12は、本発明の実施例1に係る角度情報復号化装置902の概略の構成例を示す機能ブロック図である。図12に示す角度情報復号化装置902は、算術復号化部1201と、角度モデル記憶部1202と、角度算出部1203と、方位角・仰角計算部1204とを備えている。
【0068】
算術復号化部1201は角度情報符号化装置803が出力した角度情報のビットストリーム804を算術復号化して、角度算出部1203にスキャンIDを出力し、方位角・仰角計算部1204に方位角及び仰角の差分値を出力する。
【0069】
角度モデル記憶部1202は上述したLiDARの設計値に基づいた角度モデルデータを記憶する。
【0070】
角度算出部1203は入力された方位角及び仰角の差分値の入力順序から差分値のスキャンIDを特定し、角度モデル記憶部1202から対応するスキャンIDの方位角及び仰角の値を方位角・仰角計算部1204に出力する。
【0071】
方位角・仰角計算部1204は算術復号化部1201から取得した方位角及び仰角差分値と角度算出部1203から取得した角度予測値の和を計算し、点群の角度情報802として、方位角及び仰角の値を出力する。
【0072】
このように、実施例1の角度情報復号化装置902は、計測手段の計測パターンに関する計測モデル情報を有し、計測モデル情報と符号化データに含まれる角度情報との比較結果に基づき計測点の情報を復号化する復号化手段を有する。
【0073】
図13は、本発明の実施例1に係る角度算出部1102の処理例を示すフローチャートであり、図13を用いて角度情報符号化装置803の角度算出部1102の処理例について説明する。尚、点群符号化装置800内の不図示のコンピュータとしてのCPU等がメモリに記憶されたコンピュータプログラムを実行することによって図13のフローチャートの各ステップの動作が順次行われる。
【0074】
ステップS1301において、角度モデル記憶部1101から角度モデルを取得する。次にステップS1302において、点の角度情報からスキャンIDを取得する。更にステップS1303において、角度モデルからスキャンIDに対応する方位角及び仰角の値を出力し処理を終了する。
【0075】
図14は、本発明の実施例1に係る角度算出部1203の処理例を示すフローチャートであり、図14を用いて角度情報復号化装置902の角度算出部1203の処理例について説明する。尚、点群復号化装置900内の不図示のコンピュータとしてのCPU等がメモリに記憶されたコンピュータプログラムを実行することによって図14のフローチャートの各ステップの動作が順次行われる。
【0076】
ステップS1401において、角度モデル記憶部1202から角度モデルを取得する。次にステップS1402において、点の角度情報のビットストリームの入力順序からスキャンIDを取得する。ステップS1403において、角度モデル値からスキャンIDに対応する方位角及び仰角の値を出力し処理を終了する。
【0077】
図15は、本発明の実施例1に係る方位角・仰角差分算出部1103の処理例を示すフローチャートであり、図15を用いて角度情報符号化装置803の方位角・仰角差分算出部1103の処理例について説明する。尚、点群符号化装置800内の不図示のコンピュータとしてのCPU等がメモリに記憶されたコンピュータプログラムを実行することによって図15のフローチャートの各ステップの動作が順次行われる。
【0078】
ステップS1501において、入力された点の角度情報の方位角及び仰角の計測値を取得する。次にステップS1502において、入力された方位角及び仰角に対応するスキャンIDを点群データから抽出し、角度モデルからスキャンIDに対応する方位角及び仰角の値を予測値として取得する。
【0079】
次にステップS1503において、方位角及び仰角の計測値と予測値の差分を計算し、ステップS1504において差分値を算術符号化部1104へ出力して処理を終了する。
【0080】
図16は、本発明の実施例1に係る方位角・仰角計算部1204の処理例を示すフローチャートであり、図16を用いて角度情報復号化装置902の方位角・仰角計算部1204の処理例について説明する。尚、点群復号化装置900内の不図示のコンピュータとしてのCPU等がメモリに記憶されたコンピュータプログラムを実行することによって図16のフローチャートの各ステップの動作が順次行われる。
【0081】
ステップS1601において、復号化された角度情報のビットストリームから方位角及び仰角の差分値を取得する。次にステップS1602において、点の角度情報のビットストリームの入力順番によりスキャンIDを取得し、角度モデルからスキャンIDに対応する方位角及び仰角の値を予測値として取得する。
【0082】
次にステップS1603において、方位角及び仰角の計算値と予測値の和を計算する。得られた和をステップS1604で点群データ(方位角及び仰角値)として出力し、処理を終了する。
【0083】
このように本実施例によれば、角度情報符号化装置803は、角度モデル記憶部1101が持つ角度モデル(テーブル)を利用することで、スキャン経路が複雑であっても圧縮効率を保ちつつ点の角度情報ビットストリームを生成する事ができる。
【0084】
また角度情報復号化装置902は、角度モデル記憶部1202が持つ角度モデル(テーブル)を利用することで、角度情報符号化装置803で作られた点の角度情報ビットストリームを復号化する事が可能である。従って、圧縮効率の高い点群符号化データを得ることができる。
【0085】
(実施例2)
次に、本発明の実施例2について説明する。実施例2における角度モデルは、LiDARの設計値に基づいて得られたスキャンの方位角及び仰角方向の変位情報を有する。更に、実施例2における角度モデルは、スキャン時刻を入力として、点群の方位角及び仰角情報を出力することができる関数とする。又、実施例2では、入力される点の角度情報は、方位角、仰角、スキャン時刻を含むものとする。
【0086】
図17は、本発明の実施例2に係る角度情報符号化装置1700の概略の構成例を示す機能ブロック図であり、図18は、本発明の実施例2に係る角度情報復号化装置1800の概略の構成例を示す機能ブロック図である。図17図18の構成は夫々図11図12と同じであるが、スキャン時刻を扱っている点が異なる。
【0087】
以下、図17図18を参照して、本発明の実施例2によるシステム構成図について説明する。図17に示す角度情報符号化装置1700は、角度モデル記憶部1701と、角度算出部1702と、方位角・仰角差分算出部1103と、算術符号化部1104を備えている。尚、実施例2では、入力される点群データは、距離、方位角、仰角、スキャン時刻を有するものとする。
【0088】
角度モデル記憶部1701は、LiDARの設計に基づいた、スキャンの方位角及び仰角方向の時間に対する変位の情報を有する。変位の情報は、例えば、所定の時間当たりの方位角及び仰角方向の変位を示す情報であってもよい。また、変位の情報は、例えば、所定に対して非線形に変化する、方位角及び仰角方向の変位を示す情報であってもよい。
【0089】
角度算出部1702は、入力された点群データのスキャン時刻と、角度モデル記憶部1701に保持されている方位角及び仰角の時間当たりの変位情報から計算した方位角及び仰角情報を、方位角・仰角差分算出部1103に出力する。
【0090】
算術符号化部1703は、方位角・仰角差分算出部1103から出力された方位角及び仰角の差分値と、点の角度情報802のスキャン時刻を取得し、算術符号化を行う。得られた結果を点の角度情報のビットストリーム804として出力する。
【0091】
図18に示す角度情報復号化装置1800は、算術復号化部1801と、角度モデル記憶部1802と、角度算出部1803と、方位角・仰角計算部1204を備えている。
【0092】
算術復号化部1801は、角度情報符号化装置1700が出力した点の角度情報のビットストリーム804を算術復号化して、角度算出部1803にスキャン時刻を出力し、方位角及び仰角差分値を、方位角・仰角計算部1204に出力する。
【0093】
角度モデル記憶部1802は、LiDARの設計に基づいたスキャンの方位角及び仰角方向の時間に対する変位の情報を有する。変位の情報は、例えば、所定の時間当たりの方位角及び仰角方向の変位を示す情報であってもよい。また、変位の情報は、例えば、所定に対して非線形に変化する、方位角及び仰角方向の変位を示す情報であってもよい。
【0094】
角度算出部1803は、点の角度情報ビットストリームのスキャン時刻と、角度モデル記憶部1802に保持されている方位角及び仰角の時間当たりの変位情報から計算した方位角及び仰角情報を、方位角・仰角計算部1204に出力する。
【0095】
図19は、本発明の実施例2に係る角度算出部1702の処理例を示すフローチャートであり、図19を用いて角度情報符号化装置1700の角度算出部1702の処理例について説明する。尚、点群符号化装置800内の不図示のコンピュータとしてのCPU等がメモリに記憶されたコンピュータプログラムを実行することによって図19のフローチャートの各ステップの動作が順次行われる。
【0096】
ステップS1901において、角度モデル記憶部1701から角度モデルデータを取得する。次にステップS1902において、入力された点の角度情報からスキャン時刻データを取得する。ステップS1903において、スキャン時刻を角度モデルに入力し、返された方位角及び仰角の値を出力し処理を終了する。
【0097】
図20は、本発明の実施例2に係る角度算出部1803の処理例を示すフローチャートであり、図20を用いて角度情報復号化装置1800の角度算出部1803の処理例について説明する。尚、点群復号化装置900内の不図示のコンピュータとしてのCPU等がメモリに記憶されたコンピュータプログラムを実行することによって図20のフローチャートの各ステップの動作が順次行われる。
【0098】
ステップS2001において、角度モデル記憶部1802から角度モデルデータを取得する。次にステップS2002において、点の角度情報のビットストリーム804からスキャン時刻を取得する。ステップS2003において、角度モデルにスキャン時刻を入力し得られた方位角及び仰角の値を出力し処理を終了する。
【0099】
このように実施例2によれば、角度情報符号化装置1700は、角度モデル記憶部1701が持つ角度モデルを利用することで、スキャン経路の複雑さに依存せず、圧縮効率を保ちつつ点の角度情報のビットストリームを生成する事ができる。
【0100】
aacc角度情報復号化装置1800は、角度モデル記憶部1802が持つ角度モデルを利用することで、角度情報符号化装置1700で作られた点の角度情報のビットストリームを復号化する事が可能である。又、圧縮効率の高い点群符号化データを扱う事が可能となる。
【0101】
(実施例3)
以下、本発明の実施例3について説明する。LiDARのスキャンは、設計値により予め決定された値により動作するが、機器内部の温度や、MEMS等の駆動系の経年劣化等により、設計値からスキャン経路が変化する場合がある。
【0102】
上述の状況が発生した際には、実施例1の角度モデル記憶部1101の角度情報と、計測値の角度の差分が大きくなることで、符号化効率が低下する。
【0103】
図21は、本発明の実施例3に係る角度情報符号化装置2100の概略の構成例を示す機能ブロック図であり、図22は、本発明の実施例3に係る角度情報復号化装置2200の概略の構成例を示す機能ブロック図である。尚、実施例3では、入力される点群データは、距離、方位角、仰角、スキャンIDの情報を有するものとする。
【0104】
図21に示す角度情報符号化装置2100は、角度モデル記憶部2101と、角度算出部1102と方位角・仰角差分算出部1103と、算術符号化部1104と、角度モデル更新部2102を備えている。
【0105】
角度モデル記憶部2101は、上述したLiDARの設計値に基づいた角度モデル1000を記憶する。又、角度モデル記憶部2101は、角度モデル更新部2102から入力がある場合は角度モデル1000の対象の情報を更新する。
【0106】
角度モデル更新部2102は、方位角・仰角差分算出部1103から得られた差分値を参照し、更新判定条件を満たす場合は角度モデル記憶部2101の対象の情報を更新する。ここで、角度モデル更新部2102は、計測モデル情報と計測点の角度の差分に基づき、計測モデル情報を修正する修正手段として機能している。尚、更新判定処理については後述する。
【0107】
図22に示す角度情報復号化装置2200は、算術復号化部1201と、角度モデル記憶部2201と、角度算出部1203と、方位角・仰角計算部1204と、角度モデル更新部2202を備えている。
【0108】
角度モデル記憶部2201は、上述した角度モデル1000を記憶する。又、角度モデル記憶部2201は、角度モデル更新部2202から入力がある場合には、角度モデルの対象の情報を更新する。
【0109】
角度モデル更新部2202は、方位角・仰角計算部1204から得られた方位角及び仰角の値と角度モデル記憶部2201に記憶されている方位角及び仰角の値を参照し、更新判定条件を満たす場合は角度モデル記憶部2201の対象の情報を更新する。ここで、角度モデル更新部2202は、計測モデル情報と計測点の角度の差分に基づき、計測モデル情報を修正する修正手段として機能している。尚、更新判定については後述する。
【0110】
図23は、本発明の実施例3に係る角度モデル更新部2102の処理例を示すフローチャートであり、図23を用いて角度モデル更新部2102の処理例について説明する。尚、尚、点群符号化装置800内の不図示のコンピュータとしてのCPU等がメモリに記憶されたコンピュータプログラムを実行することによって図23のフローチャートの各ステップの動作が順次行われる。
【0111】
ステップS2301において、方位角・仰角差分算出部から得られた方位角及び仰角の予測値と計測値の差分値を取得する。ステップS2302において、取得した差分値が所定の閾値以上か否かを判定する。ステップS2302で前記所定の閾値未満と判定された場合、図23の処理を終了する。
【0112】
ステップS2302において、取得した差分値が前記の所定の閾値以上と判定された場合には、ステップS2303に進む。そして、差分値の大きさに応じて角度モデル記憶部に保存されている、対応するスキャンIDの方位角及び仰角を修正して図23の処理を終了する。
【0113】
尚、ステップS2303においては、例えば角度モデル記憶部の対応する方位角及び仰角の値に差分値を足しこむことで修正する。又、次回同じスキャンIDの点群データが入力された場合に修正された値を用いて方位角・仰角差分算出部は予測を行う。
【0114】
図24は、本発明の実施例3に係る角度モデル更新部2202の処理例を示すフローチャートであり、図24を用いて角度モデル更新部2202の処理例について説明する。尚、点群復号化装置900内の不図示のコンピュータとしてのCPU等がメモリに記憶されたコンピュータプログラムを実行することによって図24のフローチャートの各ステップの動作が順次行われる。
【0115】
ステップS2401において、方位角・仰角計算部から得られた、復号化された方位角及び仰角の値と、角度モデル記憶部に保存された方位角及び仰角を取得し差分を計算する。ステップS2402において、得られた差分値が所定の閾値以上かどうかを判定する。
【0116】
ステップS2402において、差分値が所定の閾値未満と判定された場合は図24の処理を終了する。ステップS2402において、差分値が所定の閾値以上と判定された場合はステップS2403に進み、差分値の大きさに応じて角度モデル記憶部に保存されているスキャンIDの方位角及び仰角を修正して図24の処理を終了する。
【0117】
ステップS2403においては、例えば角度モデル記憶部2201の対応する方位角及び仰角の値に、差分値の1/2の値を足しこむことで修正をする。又、次回同じスキャンIDの復号化データが入力された場合に修正された値を用いて方位角及び仰角予測部は予測を行う。
【0118】
尚、ステップS2302及びステップS2402においては、同じ所定の閾値を用いて更新判定を実施し、ステップS2303及びステップS2403においては、同じ修正手順を用いて方位角及び仰角の値を修正するものとする。
【0119】
このように実施例3によれば、角度情報符号化装置2100の角度モデル記憶部2101、及び角度情報復号化装置2200の角度モデル記憶部2201の角度モデルを同期して変更している。従って、温度などの影響でスキャン経路が変化した場合でも、圧縮効率の高い符号化データを得ることが可能となる。
【0120】
尚、実施例3において、例えば温度センサを設け、角度モデル記憶部は温度をパラメータとして含むテーブル或いは関数を記憶するようにし、温度センサにより検出された温度に応じて角度モデルを変更するようにしても良い。
【0121】
又、実施例1~3においては角度モデルとして図10に示すようなテーブルの例について説明したが角度モデルは関数であっても良く、角度モデル記憶部は関数を記憶するものであっても良い。
【0122】
又、例えば上記の実施例1~3では角度モデルを用いて符号化を行っているが、例えば図2の符号化と角度モデルを組み合わせて符号化をするようにしても良い。又、復号化についても図6に示す復号化と角度モデルを組み合わせて復号化するようにしても良い。
【0123】
以上、本発明をその好適な実施例に基づいて詳述してきたが、本発明は上記実施例に限定されるものではなく、本発明の趣旨に基づき種々の変形が可能であり、それらを本発明の範囲から除外するものではない。尚、上記実施例は、以下の組み合わせを含む。
【0124】
(構成1)複数の計測点からなる点群データを、計測手段から取得する取得手段と、前記計測手段の計測パターンに関する計測モデル情報に基づいて、前記複数の計測点に対応する予測点を算出する算出手段と、前記計測点と、前記計測点に対応する前記予測点との差分を演算する演算手段と、前記差分を符号化する符号化手段と、を備えることを特徴とする符号化装置。
【0125】
(構成2)前記取得手段は、前記計測手段がレーザを照射したスキャンを行うことによって生成された前記複数の計測点からなる前記点群データを取得する、ことを特徴とする構成1に記載の符号化装置。
【0126】
(構成3)前記計測モデル情報は、前記計測手段のスキャン時におけるレーザの照射位置又はレーザの照射タイミングに基づいたIDで管理された複数の点に関する情報を含む、ことを特徴とする構成2に記載の符号化装置。
【0127】
(構成4)前記複数の計測点の情報は、前記計測手段の計測時におけるレーザの照射角度に関する角度情報を含み、前記計測モデル情報は、前記計測手段のスキャン時におけるレーザの照射角度に関する角度モデル情報を含む、ことを特徴とする構成2又は3に記載の符号化装置。
【0128】
(構成5)
前記角度情報は、前記計測手段の計測時におけるレーザの方位角と仰角とを含み、前記角度モデル情報は、前記計測手段のスキャン時におけるレーザの方位角モデルと仰角モデルとを含む、ことを特徴とする構成4に記載の符号化装置。
【0129】
(構成6)前記複数の計測点の情報は、前記計測手段の計測時におけるレーザの照射タイミングを示す照射時間情報を含み、前記計測モデル情報は、前記計測手段のスキャン時におけるレーザの照射タイミングを示す照射時間モデル情報を含む、ことを特徴とする構成2~5のいずれか1つに記載の符号化装置。
【0130】
(構成7)前記計測モデル情報と前記計測点の角度の差分に基づき、前記計測モデル情報を修正する修正手段を有することを特徴とする構成1~6のいずれか1つに記載の符号化装置。
【0131】
(構成8)計測手段の計測パターンに関する計測モデル情報を有し、前記計測モデル情報と符号化データに含まれる角度情報との比較結果に基づき計測点の情報を復号化する復号化手段を備えることを特徴とする復号化装置。
【0132】
(構成9)前記計測手段がレーザを照射したスキャンを行うことによって生成された前記複数の計測点からなる点群データを取得する取得手段を有する、ことを特徴とする構成8に記載の復号化装置。
【0133】
(構成10)前記複数の計測点の情報は、前記計測手段の計測時におけるレーザの照射角度に関する角度情報を含み、前記計測モデル情報は、前記計測手段のスキャン時におけるレーザの照射角度に関する角度モデル情報を含む、ことを特徴とする構成9に記載の復号化装置。
【0134】
(構成11)前記角度情報は、前記計測手段の計測時におけるレーザの方位角と仰角とを含み、前記角度モデル情報は、前記計測手段のスキャン時におけるレーザの方位角モデルと仰角モデルとを含む、ことを特徴とする構成10に記載の復号化装置。
【0135】
(構成12)前記複数の計測点の情報は、前記計測手段の計測時におけるレーザの照射タイミングを示す照射時間情報を含み、前記計測モデル情報は、前記計測手段のスキャン時におけるレーザの照射タイミングを示す照射時間モデル情報を含む、ことを特徴とする構成9~11のいずれか1つに記載の復号化装置。
【0136】
(構成13)前記計測モデル情報と前記計測点の角度の差分に基づき、前記計測モデル情報を修正する修正手段を有することを特徴とする構成8~12のいずれか1つに記載の復号化装置。
【0137】
(プログラム)構成1~7のいずれか1つに記載の符号化装置又は構成8~13のいずれか1つに記載の復号化装置の各手段をコンピュータにより制御するためのコンピュータプログラム。
【0138】
尚、上記実施例における制御の一部又は全部を実現するために、上述した実施例の機能を実現するコンピュータプログラムをネットワーク又は各種記憶媒体を介して符号化装置等に供給するようにしてもよい。そしてその符号化等におけるコンピュータ(又はCPUやMPU等)がそのプログラムを読み出して実行するようにしてもよい。その場合、そのプログラム、及び該プログラムを記憶した記憶媒体は本発明を構成することとなる。
【符号の説明】
【0139】
100:LiDAR
800:点群符号化装置
900:点群復号化装置
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17
図18
図19
図20
図21
図22
図23
図24