JP7763786B2 - Three-dimensional data decoding method, three-dimensional data encoding method, three-dimensional data decoding device, and three-dimensional data encoding device - Google Patents
Three-dimensional data decoding method, three-dimensional data encoding method, three-dimensional data decoding device, and three-dimensional data encoding deviceInfo
- Publication number
- JP7763786B2 JP7763786B2 JP2022574067A JP2022574067A JP7763786B2 JP 7763786 B2 JP7763786 B2 JP 7763786B2 JP 2022574067 A JP2022574067 A JP 2022574067A JP 2022574067 A JP2022574067 A JP 2022574067A JP 7763786 B2 JP7763786 B2 JP 7763786B2
- Authority
- JP
- Japan
- Prior art keywords
- position information
- information
- point
- coordinate system
- prediction
- 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.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T9/00—Image coding
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Description
本開示は、三次元データ符号化方法、三次元データ復号方法、三次元データ符号化装置、及び三次元データ復号装置に関する。 The present disclosure relates to a three-dimensional data encoding method, a three-dimensional data decoding method, a three-dimensional data encoding device, and a three-dimensional data decoding device.
自動車或いはロボットが自律的に動作するためのコンピュータビジョン、マップ情報、監視、インフラ点検、又は、映像配信など、幅広い分野において、今後、三次元データを活用した装置又はサービスの普及が見込まれる。三次元データは、レンジファインダなどの距離センサ、ステレオカメラ、又は複数の単眼カメラの組み合わせなど様々な方法で取得される。 In the future, devices and services that utilize 3D data are expected to become widespread in a wide range of fields, including computer vision for autonomous operation of automobiles or robots, map information, surveillance, infrastructure inspection, and video distribution. 3D data can be acquired in a variety of ways, including using distance sensors such as rangefinders, stereo cameras, or a combination of multiple monocular cameras.
三次元データの表現方法の1つとして、三次元空間内の点群によって三次元構造の形状を表すポイントクラウドと呼ばれる表現方法がある。ポイントクラウドでは、点群の位置と色とが格納される。ポイントクラウドは三次元データの表現方法として主流になると予想されるが、点群はデータ量が非常に大きい。よって、三次元データの蓄積又は伝送においては二次元の動画像(一例として、MPEGで規格化されたMPEG-4 AVC又はHEVCなどがある)と同様に、符号化によるデータ量の圧縮が必須となる。 One method of representing three-dimensional data is a method called a point cloud, which uses a group of points in three-dimensional space to represent the shape of a three-dimensional structure. A point cloud stores the position and color of the points. Point clouds are expected to become the mainstream method of representing three-dimensional data, but point clouds contain a very large amount of data. Therefore, when storing or transmitting three-dimensional data, it is essential to compress the data volume through encoding, just as with two-dimensional video images (examples include MPEG-4 AVC or HEVC standardized by MPEG).
また、ポイントクラウドの圧縮については、ポイントクラウド関連の処理を行う公開のライブラリ(Point Cloud Library)などによって一部サポートされている。 In addition, compression of point clouds is partially supported by public libraries (Point Cloud Library) that perform point cloud-related processing.
また、三次元の地図データを用いて、車両周辺に位置する施設を検索し、表示する技術が知られている(例えば、特許文献1参照)。 In addition, technology is known that uses three-dimensional map data to search for and display facilities located around a vehicle (see, for example, Patent Document 1).
三次元データの符号化処理及び三次元データ復号処理では、符号化効率を向上又は処理量を低減できることが望まれている。 In three-dimensional data encoding and decoding processes, it is desirable to be able to improve encoding efficiency or reduce processing volume.
本開示は、符号化効率を向上又は処理量を低減できる三次元データ符号化方法、三次元データ復号方法、三次元データ符号化装置、又は三次元データ復号装置を提供することを目的とする。 The present disclosure aims to provide a three-dimensional data encoding method, a three-dimensional data decoding method, a three-dimensional data encoding device, or a three-dimensional data decoding device that can improve encoding efficiency or reduce processing volume.
本開示の一態様に係る三次元データ復号方法は、三次元点の位置情報が符号化された符号化位置情報を含むビットストリームを取得し、前記符号化位置情報を復号することで前記位置情報を生成し、前記位置情報が直交座標系で表される場合、前記位置情報をシフトし、前記位置情報が極座標系で表される場合、前記位置情報をシフトしない。 A three-dimensional data decoding method according to one aspect of the present disclosure acquires a bit stream containing encoded position information in which the position information of a three-dimensional point is encoded, generates the position information by decoding the encoded position information, and shifts the position information if the position information is expressed in a Cartesian coordinate system, and does not shift the position information if the position information is expressed in a polar coordinate system.
本開示の一態様に係る三次元データ符号化方法は、三次元点の位置情報を符号化することで符号化位置情報を生成し、前記符号化位置情報と、三次元データ復号装置が復号した復号位置情報を前記三次元データ復号装置がシフトするか否かを示すシフト情報と、を含むビットストリームを生成し、前記シフト情報に基づき、前記三次元データ復号装置は、前記復号位置情報が直交座標系で表される場合、前記復号位置情報をシフトし、前記復号位置情報が極座標系で表される場合、前記復号位置情報をシフトしない。 A three-dimensional data encoding method according to one aspect of the present disclosure generates encoded position information by encoding position information of three-dimensional points, and generates a bit stream including the encoded position information and shift information indicating whether the three-dimensional data decoding device shifts the decoded position information decoded by the three-dimensional data decoding device. Based on the shift information, the three-dimensional data decoding device shifts the decoded position information if the decoded position information is expressed in a Cartesian coordinate system, and does not shift the decoded position information if the decoded position information is expressed in a polar coordinate system.
本開示は、符号化効率を向上又は処理量を低減できる三次元データ符号化方法、三次元データ復号方法、三次元データ符号化装置、又は三次元データ復号装置を提供できる。 The present disclosure provides a three-dimensional data encoding method, a three-dimensional data decoding method, a three-dimensional data encoding device, or a three-dimensional data decoding device that can improve encoding efficiency or reduce processing volume.
本開示の一態様に係る三次元データ復号方法は、三次元点の位置情報が符号化された符号化位置情報を含むビットストリームを取得し、前記符号化位置情報を復号することで前記位置情報を生成し、前記位置情報が直交座標系で表される場合、前記位置情報をシフトし、前記位置情報が極座標系で表される場合、前記位置情報をシフトしない。 A three-dimensional data decoding method according to one aspect of the present disclosure acquires a bit stream containing encoded position information in which the position information of a three-dimensional point is encoded, generates the position information by decoding the encoded position information, and shifts the position information if the position information is expressed in a Cartesian coordinate system, and does not shift the position information if the position information is expressed in a polar coordinate system.
これによれば、当該三次元データ復号方法は、符号化された位置情報が直交座標系であるか極座標系であるかに応じて、位置情報にシフト処理を行うか否かを切り替えることができる。ここで、位置情報が直交座標系である場合には、三次元データ符号化装置においてシフト処理を行ったうえで符号化を行うことで符号化効率を向上できる。当該三次元データ復号方法は、位置情報が直交座標系の場合にはシフト処理を行うことで、符号化効率が向上されたビットストリームを適切に復号できる。また、当該三次元データ復号方法は、位置情報が極座標系の場合にはシフト処理を行わないことで処理量を低減できる。 This allows the three-dimensional data decoding method to switch between performing shift processing on position information depending on whether the encoded position information is in a Cartesian coordinate system or a polar coordinate system. Here, if the position information is in a Cartesian coordinate system, the three-dimensional data encoding device performs shift processing before encoding, thereby improving encoding efficiency. If the position information is in a Cartesian coordinate system, the three-dimensional data decoding method performs shift processing, thereby allowing the bitstream to be properly decoded with improved encoding efficiency. Furthermore, if the position information is in a polar coordinate system, the three-dimensional data decoding method does not perform shift processing, thereby reducing the amount of processing.
例えば、前記ビットストリームは、前記位置情報が、前記極座標系で表されるか否かを示す第一フラグ情報と、前記極座標系で表される前記位置情報が、前記直交座標系で表される変換位置情報に変換されるか否かを示す第二フラグ情報とを含んでもよい。 For example, the bit stream may include first flag information indicating whether the position information is expressed in the polar coordinate system, and second flag information indicating whether the position information expressed in the polar coordinate system is converted into converted position information expressed in the Cartesian coordinate system.
例えば、前記位置情報が、前記極座標系で表され、前記三次元点を生成するセンサの位置が前記極座標系の原点である場合、前記シフトは実施されなくてもよい。 For example, if the position information is expressed in the polar coordinate system and the position of the sensor generating the three-dimensional point is the origin of the polar coordinate system, the shift may not be performed.
例えば、前記ビットストリームから前記シフトの量を示すシフト情報を取得し、前記位置情報が前記極座標系で表される場合、前記シフト情報で示される前記量はゼロであり、前記極座標系で表される前記位置情報を、前記シフト情報で示される前記量に基づき前記位置情報をシフトすることで、前記極座標系で表される位置情報をシフトしなくてもよい。 For example, if shift information indicating the amount of shift is obtained from the bit stream and the position information is expressed in the polar coordinate system, the amount indicated by the shift information is zero, and the position information expressed in the polar coordinate system can be shifted based on the amount indicated by the shift information, thereby eliminating the need to shift the position information expressed in the polar coordinate system.
これによれば、当該三次元データ復号方法は、位置情報が直交座標系であるか極座標系であるかに関わらず、位置情報にシフト処理を適用でき、シフト処理を行うか否かの制御が不要となるため、処理を簡略化できる。 As a result, the three-dimensional data decoding method can apply shift processing to position information regardless of whether the position information is in a Cartesian coordinate system or a polar coordinate system, eliminating the need to control whether or not to perform shift processing, thereby simplifying processing.
例えば、前記ビットストリームから前記シフトの量を示すシフト情報を取得し、前記位置情報が前記直交座標系で表される場合、前記シフト情報で示される前記量に基づき前記位置情報をシフトし、前記位置情報が前記極座標系で表される場合、前記シフト情報で示される前記量に関わらず、前記量がゼロであるとみなしてもよい。 For example, shift information indicating the amount of shift may be obtained from the bit stream, and if the position information is expressed in the Cartesian coordinate system, the position information may be shifted based on the amount indicated by the shift information, and if the position information is expressed in the polar coordinate system, the amount may be considered to be zero regardless of the amount indicated by the shift information.
これによれば、当該三次元データ復号方法は、位置情報が極座標系である場合には、シフト情報で示されるシフトの量に関わらず、シフトの量がゼロであるとみなす。これにより、ビットストリームを生成する三次元データ符号化装置の処理量を低減できる。また、当該三次元データ復号方法は、ビットストリームにエラーが含まれる場合にも、正しくビットストリームを復号できる可能性がある。 According to this, when the position information is in a polar coordinate system, the three-dimensional data decoding method considers the shift amount to be zero regardless of the shift amount indicated by the shift information. This reduces the amount of processing required by the three-dimensional data encoding device that generates the bitstream. Furthermore, this three-dimensional data decoding method may be able to correctly decode the bitstream even if it contains errors.
例えば、前記ビットストリームに、前記シフトの量を示すシフト情報が含まれる場合、前記位置情報が前記直交座標系で表されると判定し、前記シフト情報で示される前記量に基づき前記位置情報をシフトし、前記ビットストリームに前記シフト情報が含まれない場合、前記位置情報が前記極座標系で表されると判定し、前記位置情報をシフトしなくてもよい。 For example, if the bit stream contains shift information indicating the amount of the shift, it may be determined that the position information is represented in the Cartesian coordinate system, and the position information may be shifted based on the amount indicated by the shift information; if the bit stream does not contain the shift information, it may be determined that the position information is represented in the polar coordinate system, and the position information may not need to be shifted.
これによれば、位置情報が極座標系である場合には、ビットストリームにシフト情報が含まれない。よって、ビットストリームのデータ量を削減できる。 This means that if the position information is in polar coordinates, the bitstream does not contain shift information, thereby reducing the amount of data in the bitstream.
例えば、前記ビットストリームは、前記三次元点を含む複数の三次元点の位置情報が符号化された符号化情報を含み、前記符号化情報は、前記複数の三次元点を分割した複数の分割単位に分けられており、前記シフト情報は、前記複数の分割単位に共通のパラメータセットに含まれてもよい。 For example, the bitstream may include encoded information in which positional information of multiple three-dimensional points including the three-dimensional point is encoded, the encoded information is divided into multiple division units into which the multiple three-dimensional points are divided, and the shift information may be included in a parameter set common to the multiple division units.
例えば、前記ビットストリームは、前記三次元点を含む複数の三次元点の位置情報が符号化された符号化情報を含み、前記符号化情報は、前記複数の三次元点を分割した複数の分割単位に分けられており、前記シフト情報は、前記複数の分割単位毎のヘッダに含まれてもよい。 For example, the bit stream may include encoded information in which positional information of multiple three-dimensional points including the three-dimensional point is encoded, the encoded information is divided into multiple division units into which the multiple three-dimensional points are divided, and the shift information may be included in a header for each of the multiple division units.
例えば、前記位置情報が前記極座標系で表される場合、前記位置情報を前記直交座標系で表される変換後位置情報に変換し、前記変換後位置情報をシフトしてもよい。 For example, if the position information is expressed in the polar coordinate system, the position information may be converted into transformed position information expressed in the Cartesian coordinate system, and the transformed position information may be shifted.
これによれば、当該三次元データ復号方法は、符号化された位置情報が極座標系である場合にも、極座標系の位置情報を直交座標系の位置情報に変換し、直交座標系の位置情報を出力できる。 Accordingly, even if the encoded position information is in a polar coordinate system, the three-dimensional data decoding method can convert the position information in the polar coordinate system into position information in a Cartesian coordinate system and output the position information in the Cartesian coordinate system.
本開示の一態様に係る三次元データ符号化方法は、三次元点の位置情報を符号化することで符号化位置情報を生成し、前記符号化位置情報と、三次元データ復号装置が復号した復号位置情報を前記三次元データ復号装置がシフトするか否かを示すシフト情報と、を含むビットストリームを生成し、前記シフト情報に基づき、前記三次元データ復号装置は、前記復号位置情報が直交座標系で表される場合、前記復号位置情報をシフトし、前記復号位置情報が極座標系で表される場合、前記復号位置情報をシフトしない。 A three-dimensional data encoding method according to one aspect of the present disclosure generates encoded position information by encoding position information of three-dimensional points, and generates a bit stream including the encoded position information and shift information indicating whether the three-dimensional data decoding device shifts the decoded position information decoded by the three-dimensional data decoding device. Based on the shift information, the three-dimensional data decoding device shifts the decoded position information if the decoded position information is expressed in a Cartesian coordinate system, and does not shift the decoded position information if the decoded position information is expressed in a polar coordinate system.
これによれば、当該三次元データ符号化方法は、符号化された位置情報が直交座標系であるか極座標系であるかに応じて、位置情報にシフト処理を行うか否かを三次元データ復号装置において切り替えることができるビットストリームを生成できる。ここで、位置情報が直交座標系である場合には、三次元データ符号化装置においてシフト処理を行ったうえで符号化を行うことで符号化効率を向上できる。三次元データ復号装置は、位置情報が直交座標系の場合にはシフト処理を行うことで、符号化効率が向上されたビットストリームを適切に復号できる。また、三次元データ復号装置は、位置情報が極座標系の場合にはシフト処理を行わないことで処理量を低減できる。 This three-dimensional data encoding method can generate a bitstream in which the three-dimensional data decoding device can switch whether to perform shift processing on the position information depending on whether the encoded position information is in a Cartesian coordinate system or a polar coordinate system. Here, when the position information is in a Cartesian coordinate system, the three-dimensional data encoding device performs shift processing before encoding, thereby improving encoding efficiency. When the position information is in a Cartesian coordinate system, the three-dimensional data decoding device performs shift processing, allowing it to properly decode a bitstream with improved encoding efficiency. Furthermore, when the position information is in a polar coordinate system, the three-dimensional data decoding device does not perform shift processing, thereby reducing the amount of processing.
例えば、前記ビットストリームは、前記位置情報が、前記極座標系で表されるか否かを示す第一フラグ情報と、前記極座標系で表される前記位置情報が、前記直交座標系で表される変換位置情報に変換されるか否かを示す第二フラグ情報とを含んでもよい。 For example, the bit stream may include first flag information indicating whether the position information is expressed in the polar coordinate system, and second flag information indicating whether the position information expressed in the polar coordinate system is converted into converted position information expressed in the Cartesian coordinate system.
例えば、前記位置情報が、前記極座標系で表され、前記三次元点を生成するセンサの位置が前記極座標系の原点である場合、前記シフトは実施されなくてもよい。 For example, if the position information is expressed in the polar coordinate system and the position of the sensor generating the three-dimensional point is the origin of the polar coordinate system, the shift may not be performed.
例えば、前記シフト情報は、前記復号位置情報のシフトの際の当該シフトの量を示し、前記位置情報が前記極座標系で表される場合、前記シフト情報で示される前記量はゼロであり、前記三次元データ復号装置は、前記極座標系で表される前記位置情報を、前記シフト情報で示される前記量に基づき前記位置情報をシフトすることで、前記極座標系で表される位置情報をシフトしなくてもよい。 For example, the shift information indicates the amount of shift when shifting the decoded position information, and when the position information is expressed in the polar coordinate system, the amount indicated by the shift information is zero, and the three-dimensional data decoding device shifts the position information expressed in the polar coordinate system based on the amount indicated by the shift information, thereby not shifting the position information expressed in the polar coordinate system.
これによれば、例えば、三次元データ復号装置において、位置情報が直交座標系であるか極座標系であるかに関わらず、位置情報にシフト処理を適用でき、シフト処理を行うか否かの制御が不要となるため、三次元データ復号装置における処理を簡略化できる。 As a result, for example, in a three-dimensional data decoding device, shift processing can be applied to position information regardless of whether the position information is in a Cartesian coordinate system or a polar coordinate system, eliminating the need to control whether or not to perform shift processing, thereby simplifying processing in the three-dimensional data decoding device.
例えば、前記位置情報が前記直交座標系で表される場合、前記シフト情報は、前記復号位置情報のシフトの際の当該シフトの量を示し、前記位置情報が前記極座標系で表される場合、前記シフト情報を前記ビットストリームに格納しなくてもよい。 For example, if the position information is expressed in the Cartesian coordinate system, the shift information indicates the amount of shift when shifting the decoded position information, and if the position information is expressed in the polar coordinate system, the shift information does not need to be stored in the bitstream.
これによれば、位置情報が極座標系である場合には、ビットストリームにシフト情報が含まれない。よって、ビットストリームのデータ量を削減できる。 This means that if the position information is in polar coordinates, the bitstream does not contain shift information, thereby reducing the amount of data in the bitstream.
例えば、前記ビットストリームは、前記三次元点を含む複数の三次元点の位置情報が符号化された符号化情報を含み、前記符号化情報は、前記複数の三次元点を分割した複数の分割単位に分けられており、前記シフト情報は、前記複数の分割単位に共通のパラメータセットに含まれてもよい。 For example, the bitstream may include encoded information in which positional information of multiple three-dimensional points including the three-dimensional point is encoded, the encoded information is divided into multiple division units into which the multiple three-dimensional points are divided, and the shift information may be included in a parameter set common to the multiple division units.
例えば、前記ビットストリームは、前記三次元点を含む複数の三次元点の位置情報が符号化された符号化情報を含み、前記符号化情報は、前記複数の三次元点を分割した複数の分割単位に分けられており、前記シフト情報は、前記複数の分割単位毎のヘッダに含まれてもよい。 For example, the bit stream may include encoded information in which positional information of multiple three-dimensional points including the three-dimensional point is encoded, the encoded information is divided into multiple division units into which the multiple three-dimensional points are divided, and the shift information may be included in a header for each of the multiple division units.
また、本開示の一態様に係る三次元データ復号装置は、プロセッサと、メモリと、を備え、前記プロセッサは、前記メモリを用いて、三次元点の位置情報が符号化された符号化位置情報を含むビットストリームを取得し、前記符号化位置情報を復号することで位置情報を生成し、前記位置情報が直交座標系で表される場合、前記位置情報をシフトし、前記位置情報が極座標系で表される場合、前記位置情報をシフトしない。 In addition, a three-dimensional data decoding device according to one aspect of the present disclosure includes a processor and a memory, and the processor uses the memory to obtain a bit stream including encoded position information in which position information of three-dimensional points is encoded, generates position information by decoding the encoded position information, and shifts the position information if the position information is expressed in a Cartesian coordinate system, and does not shift the position information if the position information is expressed in a polar coordinate system.
これによれば、当該三次元データ復号装置は、符号化された位置情報が直交座標系であるか極座標系であるかに応じて、位置情報にシフト処理を行うか否かを切り替えることができる。ここで、位置情報が直交座標系である場合には、三次元データ符号化装置においてシフト処理を行ったうえで符号化を行うことで符号化効率を向上できる。当該三次元データ復号装置は、位置情報が直交座標系の場合にはシフト処理を行うことで、符号化効率が向上されたビットストリームを適切に復号できる。また、当該三次元データ復号装置は、位置情報が極座標系の場合にはシフト処理を行わないことで処理量を低減できる。 This allows the three-dimensional data decoding device to switch whether to perform shift processing on the position information depending on whether the encoded position information is in a Cartesian coordinate system or a polar coordinate system. Here, if the position information is in a Cartesian coordinate system, the three-dimensional data encoding device performs shift processing before encoding, thereby improving encoding efficiency. If the position information is in a Cartesian coordinate system, the three-dimensional data decoding device performs shift processing, allowing it to properly decode a bitstream with improved encoding efficiency. Furthermore, if the position information is in a polar coordinate system, the three-dimensional data decoding device does not perform shift processing, thereby reducing the amount of processing.
また、本開示の一態様に係る三次元データ符号化装置は、プロセッサと、メモリと、を備え、前記プロセッサは、前記メモリを用いて、三次元点の位置情報位置情報を符号化することで符号化位置情報を生成し、前記符号化位置情報と、三次元データ復号装置が復号した復号位置情報を前記三次元データ復号装置がシフトするか否かを示すシフト情報と、を含むビットストリームを生成し、前記シフト情報に基づき、前記三次元データ復号装置は、前記復号位置情報が直交座標系で表される場合、前記復号位置情報をシフトし、前記復号位置情報が極座標系で表される場合、前記復号位置情報をシフトしない。 Furthermore, a three-dimensional data encoding device according to one aspect of the present disclosure includes a processor and a memory, and the processor uses the memory to generate encoded position information by encoding position information of three-dimensional points, and generates a bit stream including the encoded position information and shift information indicating whether the three-dimensional data decoding device shifts the decoded position information decoded by the three-dimensional data decoding device, and based on the shift information, the three-dimensional data decoding device shifts the decoded position information if the decoded position information is expressed in a Cartesian coordinate system, and does not shift the decoded position information if the decoded position information is expressed in a polar coordinate system.
これによれば、当該三次元データ符号化装置は、符号化された位置情報が直交座標系であるか極座標系であるかに応じて、位置情報にシフト処理を行うか否かを三次元データ復号装置において切り替えることができるビットストリームを生成できる。ここで、位置情報が直交座標系である場合には、三次元データ符号化装置においてシフト処理を行ったうえで符号化を行うことで符号化効率を向上できる。三次元データ復号装置は、位置情報が直交座標系の場合にはシフト処理を行うことで、符号化効率が向上されたビットストリームを適切に復号できる。また、三次元データ復号装置は、位置情報が極座標系の場合にはシフト処理を行わないことで処理量を低減できる。 This allows the three-dimensional data encoding device to generate a bitstream in which the three-dimensional data decoding device can switch whether to perform shift processing on the position information depending on whether the encoded position information is in a Cartesian coordinate system or a polar coordinate system. Here, when the position information is in a Cartesian coordinate system, the three-dimensional data encoding device performs shift processing before encoding, thereby improving encoding efficiency. When the position information is in a Cartesian coordinate system, the three-dimensional data decoding device performs shift processing, allowing it to properly decode a bitstream with improved encoding efficiency. Furthermore, when the position information is in a polar coordinate system, the three-dimensional data decoding device does not perform shift processing, thereby reducing the amount of processing.
なお、これらの包括的または具体的な態様は、システム、方法、集積回路、コンピュータプログラムまたはコンピュータ読み取り可能なCD-ROMなどの記録媒体で実現されてもよく、システム、方法、集積回路、コンピュータプログラム及び記録媒体の任意な組み合わせで実現されてもよい。 In addition, these comprehensive or specific aspects may be realized as a system, method, integrated circuit, computer program, or computer-readable recording medium such as a CD-ROM, or as any combination of a system, method, integrated circuit, computer program, and recording medium.
以下、実施の形態について、図面を参照しながら具体的に説明する。なお、以下で説明する実施の形態は、いずれも本開示の一具体例を示すものである。以下の実施の形態で示される数値、形状、材料、構成要素、構成要素の配置位置及び接続形態、ステップ、ステップの順序などは、一例であり、本開示を限定する主旨ではない。また、以下の実施の形態における構成要素のうち、独立請求項に記載されていない構成要素については、任意の構成要素として説明される。 The following describes the embodiments in detail with reference to the drawings. Note that each of the embodiments described below represents a specific example of the present disclosure. The numerical values, shapes, materials, components, component placement and connection configurations, steps, and step order shown in the following embodiments are merely examples and are not intended to limit the present disclosure. Furthermore, among the components in the following embodiments, components that are not recited in the independent claims are described as optional components.
(実施の形態1)
ポイントクラウドの符号化データを実際の装置又はサービスにおいて使用する際には、ネットワーク帯域を抑制するために用途に応じて必要な情報を送受信することが望ましい。しかしながら、これまで、三次元データの符号化構造にはそのような機能が存在せず、そのための符号化方法も存在しなかった。
(Embodiment 1)
When using encoded point cloud data in an actual device or service, it is desirable to transmit and receive the information required for the application in order to reduce network bandwidth. However, until now, such a function has not existed in the encoding structure of 3D data, and no encoding method for this purpose has existed.
本実施の形態では、三次元のポイントクラウドの符号化データにおいて用途に応じて必要な情報を送受信する機能を提供するための三次元データ符号化方法及び三次元データ符号化装置、並びに、当該符号化データを復号する三次元データ復号方法及び三次元データ復号装置、並びに、当該符号化データを多重化する三次元データ多重化方法、並びに、当該符号化データを伝送する三次元データ伝送方法について説明する。 In this embodiment, we describe a three-dimensional data encoding method and a three-dimensional data encoding device that provide the function of transmitting and receiving information required for a particular purpose in encoded data of a three-dimensional point cloud, as well as a three-dimensional data decoding method and a three-dimensional data decoding device that decodes the encoded data, a three-dimensional data multiplexing method that multiplexes the encoded data, and a three-dimensional data transmission method that transmits the encoded data.
特に、現在、点群データの符号化方法(符号化方式)として第1の符号化方法、及び第2の符号化方法が検討されているが、符号化データの構成、及び符号化データをシステムフォーマットへ格納する方法が定義されておらず、このままでは符号化部におけるMUX処理(多重化)、又は、伝送或いは蓄積ができないという課題がある。 In particular, the first and second encoding methods are currently being considered as methods (encoding schemes) for encoding point cloud data, but the structure of the encoded data and the method for storing the encoded data in a system format have not been defined, which poses the problem that, as things stand, it is not possible to perform MUX processing (multiplexing) in the encoding unit, or to transmit or store the data.
また、PCC(Point Cloud Compression)のように、第1の符号化方法と第2の符号化方法の2つのコーデックが混在するフォーマットをサポートする方法はこれまで存在しない。 In addition, there has been no method to date to support formats that mix two codecs, the first encoding method and the second encoding method, such as PCC (Point Cloud Compression).
本実施の形態では、第1の符号化方法と第2の符号化方法の2つのコーデックが混在するPCC符号化データの構成、及び符号化データをシステムフォーマットへ格納する方法について説明する。 In this embodiment, we will explain the structure of PCC encoded data that mixes two codecs, the first encoding method and the second encoding method, and how to store the encoded data in a system format.
まず、本実施の形態に係る三次元データ(点群データ)符号化復号システムの構成を説明する。図1は、本実施の形態に係る三次元データ符号化復号システムの構成例を示す図である。図1に示すように、三次元データ符号化復号システムは、三次元データ符号化システム4601と、三次元データ復号システム4602と、センサ端末4603と、外部接続部4604とを含む。 First, the configuration of a three-dimensional data (point cloud data) encoding/decoding system according to this embodiment will be described. FIG. 1 is a diagram showing an example configuration of a three-dimensional data encoding/decoding system according to this embodiment. As shown in FIG. 1, the three-dimensional data encoding/decoding system includes a three-dimensional data encoding system 4601, a three-dimensional data decoding system 4602, a sensor terminal 4603, and an external connection unit 4604.
三次元データ符号化システム4601は、三次元データである点群データを符号化することで符号化データ又は多重化データを生成する。なお、三次元データ符号化システム4601は、単一の装置により実現される三次元データ符号化装置であってもよいし、複数の装置により実現されるシステムであってもよい。また、三次元データ符号化装置は、三次元データ符号化システム4601に含まれる複数の処理部のうち一部を含んでもよい。 The three-dimensional data encoding system 4601 generates encoded data or multiplexed data by encoding point cloud data, which is three-dimensional data. The three-dimensional data encoding system 4601 may be a three-dimensional data encoding device realized by a single device, or a system realized by multiple devices. The three-dimensional data encoding device may also include some of the multiple processing units included in the three-dimensional data encoding system 4601.
三次元データ符号化システム4601は、点群データ生成システム4611と、提示部4612と、符号化部4613と、多重化部4614と、入出力部4615と、制御部4616とを含む。点群データ生成システム4611は、センサ情報取得部4617と、点群データ生成部4618とを含む。 The three-dimensional data encoding system 4601 includes a point cloud data generation system 4611, a presentation unit 4612, an encoding unit 4613, a multiplexing unit 4614, an input/output unit 4615, and a control unit 4616. The point cloud data generation system 4611 includes a sensor information acquisition unit 4617 and a point cloud data generation unit 4618.
センサ情報取得部4617は、センサ端末4603からセンサ情報を取得し、センサ情報を点群データ生成部4618に出力する。点群データ生成部4618は、センサ情報から点群データを生成し、点群データを符号化部4613へ出力する。 The sensor information acquisition unit 4617 acquires sensor information from the sensor terminal 4603 and outputs the sensor information to the point cloud data generation unit 4618. The point cloud data generation unit 4618 generates point cloud data from the sensor information and outputs the point cloud data to the encoding unit 4613.
提示部4612は、センサ情報又は点群データをユーザに提示する。例えば、提示部4612は、センサ情報又は点群データに基づく情報又は画像を表示する。 The presentation unit 4612 presents the sensor information or point cloud data to the user. For example, the presentation unit 4612 displays information or an image based on the sensor information or point cloud data.
符号化部4613は、点群データを符号化(圧縮)し、得られた符号化データと、符号化過程において得られた制御情報と、その他の付加情報とを多重化部4614へ出力する。付加情報は、例えば、センサ情報を含む。 The encoding unit 4613 encodes (compresses) the point cloud data and outputs the resulting encoded data, control information obtained during the encoding process, and other additional information to the multiplexing unit 4614. The additional information includes, for example, sensor information.
多重化部4614は、符号化部4613から入力された符号化データと、制御情報と、付加情報とを多重することで多重化データを生成する。多重化データのフォーマットは、例えば蓄積のためのファイルフォーマット、又は伝送のためのパケットフォーマットである。 The multiplexing unit 4614 generates multiplexed data by multiplexing the coded data input from the coding unit 4613, control information, and additional information. The format of the multiplexed data is, for example, a file format for storage or a packet format for transmission.
入出力部4615(例えば、通信部又はインタフェース)は、多重化データを外部へ出力する。または、多重化データは、内部メモリ等の蓄積部に蓄積される。制御部4616(またはアプリ実行部)は、各処理部を制御する。つまり、制御部4616は、符号化及び多重化等の制御を行う。 The input/output unit 4615 (e.g., a communication unit or interface) outputs the multiplexed data to the outside. Alternatively, the multiplexed data is stored in a storage unit such as internal memory. The control unit 4616 (or application execution unit) controls each processing unit. In other words, the control unit 4616 controls encoding, multiplexing, etc.
なお、センサ情報が符号化部4613又は多重化部4614へ入力されてもよい。また、入出力部4615は、点群データ又は符号化データをそのまま外部へ出力してもよい。 In addition, the sensor information may be input to the encoding unit 4613 or the multiplexing unit 4614. In addition, the input/output unit 4615 may output the point cloud data or encoded data directly to the outside.
三次元データ符号化システム4601から出力された伝送信号(多重化データ)は、外部接続部4604を介して、三次元データ復号システム4602に入力される。 The transmission signal (multiplexed data) output from the three-dimensional data encoding system 4601 is input to the three-dimensional data decoding system 4602 via the external connection unit 4604.
三次元データ復号システム4602は、符号化データ又は多重化データを復号することで三次元データである点群データを生成する。なお、三次元データ復号システム4602は、単一の装置により実現される三次元データ復号装置であってもよいし、複数の装置により実現されるシステムであってもよい。また、三次元データ復号装置は、三次元データ復号システム4602に含まれる複数の処理部のうち一部を含んでもよい。 The three-dimensional data decoding system 4602 generates point cloud data, which is three-dimensional data, by decoding the encoded data or multiplexed data. The three-dimensional data decoding system 4602 may be a three-dimensional data decoding device realized by a single device, or may be a system realized by multiple devices. The three-dimensional data decoding device may also include some of the multiple processing units included in the three-dimensional data decoding system 4602.
三次元データ復号システム4602は、センサ情報取得部4621と、入出力部4622と、逆多重化部4623と、復号部4624と、提示部4625と、ユーザインタフェース4626と、制御部4627とを含む。 The three-dimensional data decoding system 4602 includes a sensor information acquisition unit 4621, an input/output unit 4622, a demultiplexing unit 4623, a decoding unit 4624, a presentation unit 4625, a user interface 4626, and a control unit 4627.
センサ情報取得部4621は、センサ端末4603からセンサ情報を取得する。 The sensor information acquisition unit 4621 acquires sensor information from the sensor terminal 4603.
入出力部4622は、伝送信号を取得し、伝送信号から多重化データ(ファイルフォーマット又はパケット)を復号し、多重化データを逆多重化部4623へ出力する。 The input/output unit 4622 acquires the transmission signal, decodes the multiplexed data (file format or packets) from the transmission signal, and outputs the multiplexed data to the demultiplexing unit 4623.
逆多重化部4623は、多重化データから符号化データ、制御情報及び付加情報を取得し、符号化データ、制御情報及び付加情報を復号部4624へ出力する。 The demultiplexing unit 4623 obtains encoded data, control information, and additional information from the multiplexed data, and outputs the encoded data, control information, and additional information to the decoding unit 4624.
復号部4624は、符号化データを復号することで点群データを再構成する。 The decoding unit 4624 reconstructs the point cloud data by decoding the encoded data.
提示部4625は、点群データをユーザに提示する。例えば、提示部4625は、点群データに基づく情報又は画像を表示する。ユーザインタフェース4626は、ユーザの操作に基づく指示を取得する。制御部4627(またはアプリ実行部)は、各処理部を制御する。つまり、制御部4627は、逆多重化、復号及び提示等の制御を行う。 The presentation unit 4625 presents the point cloud data to the user. For example, the presentation unit 4625 displays information or images based on the point cloud data. The user interface 4626 acquires instructions based on user operations. The control unit 4627 (or the application execution unit) controls each processing unit. In other words, the control unit 4627 controls demultiplexing, decoding, presentation, etc.
なお、入出力部4622は、点群データ又は符号化データをそのまま外部から取得してもよい。また、提示部4625は、センサ情報などの付加情報を取得し、付加情報に基づいた情報を提示してもよい。また、提示部4625は、ユーザインタフェース4626で取得されたユーザの指示に基づき、提示を行ってもよい。 The input/output unit 4622 may acquire point cloud data or encoded data directly from outside. The presentation unit 4625 may acquire additional information such as sensor information and present information based on the additional information. The presentation unit 4625 may also present information based on user instructions acquired by the user interface 4626.
センサ端末4603は、センサで得られた情報であるセンサ情報を生成する。センサ端末4603は、センサ又はカメラを搭載した端末であり、例えば、自動車などの移動体、飛行機などの飛行物体、携帯端末、又はカメラなどがある。 The sensor terminal 4603 generates sensor information, which is information obtained by a sensor. The sensor terminal 4603 is a terminal equipped with a sensor or camera, and may be, for example, a moving object such as an automobile, a flying object such as an airplane, a mobile terminal, or a camera.
センサ端末4603で取得可能なセンサ情報は、例えば、(1)LIDAR、ミリ波レーダ、又は赤外線センサから得られる、センサ端末4603と対象物との距離、又は対象物の反射率、(2)複数の単眼カメラ画像又はステレオカメラ画像から得られるカメラと対象物との距離又は対象物の反射率等である。また、センサ情報は、センサの姿勢、向き、ジャイロ(角速度)、位置(GPS情報又は高度)、速度、又は加速度等を含んでもよい。また、センサ情報は、気温、気圧、湿度、又は磁気等を含んでもよい。 Sensor information that can be acquired by the sensor terminal 4603 includes, for example, (1) the distance between the sensor terminal 4603 and an object, or the reflectance of the object, obtained from a LIDAR, millimeter-wave radar, or infrared sensor, and (2) the distance between the camera and the object, or the reflectance of the object, obtained from multiple monocular camera images or stereo camera images. The sensor information may also include the sensor's attitude, orientation, gyro (angular velocity), position (GPS information or altitude), speed, acceleration, etc. The sensor information may also include temperature, air pressure, humidity, magnetism, etc.
外部接続部4604は、集積回路(LSI又はIC)、外部蓄積部、インターネットを介したクラウドサーバとの通信、又は、放送等により実現される。 The external connection unit 4604 is realized by an integrated circuit (LSI or IC), an external storage unit, communication with a cloud server via the Internet, or broadcasting, etc.
次に、点群データについて説明する。図2は、点群データの構成を示す図である。図3は、点群データの情報が記述されたデータファイルの構成例を示す図である。Next, we will explain point cloud data. Figure 2 is a diagram showing the structure of point cloud data. Figure 3 is a diagram showing an example of the structure of a data file in which information about point cloud data is described.
点群データは、複数の点のデータを含む。各点のデータは、位置情報(三次元座標)、及びその位置情報に対する属性情報とを含む。この点が複数集まったものを点群と呼ぶ。例えば、点群は対象物(オブジェクト)の三次元形状を示す。 Point cloud data contains data on multiple points. The data for each point includes location information (three-dimensional coordinates) and attribute information for that location information. A collection of multiple points is called a point cloud. For example, a point cloud may represent the three-dimensional shape of an object.
三次元座標等の位置情報(Position)をジオメトリ(geometry)と呼ぶこともある。また、各点のデータは、複数の属性種別の属性情報(attribute)を含んでもよい。属性種別は、例えば色又は反射率などである。 Position information such as three-dimensional coordinates is sometimes called geometry. Furthermore, the data for each point may include attribute information of multiple attribute types. Attribute types include, for example, color or reflectance.
1つの位置情報に対して1つの属性情報が対応付けられてもよいし、1つの位置情報に対して複数の異なる属性種別を持つ属性情報が対応付けられてもよい。また、1つの位置情報に対して同じ属性種別の属性情報が複数対応付けられてもよい。 One piece of attribute information may be associated with one piece of location information, or multiple pieces of attribute information with different attribute types may be associated with one piece of location information. Also, multiple pieces of attribute information of the same attribute type may be associated with one piece of location information.
図3に示すデータファイルの構成例は、位置情報と属性情報とが1対1に対応する場合の例であり、点群データを構成するN個の点の位置情報と属性情報とを示している。 The example data file configuration shown in Figure 3 is an example where there is a one-to-one correspondence between location information and attribute information, and shows the location information and attribute information of N points that make up the point cloud data.
位置情報は、例えば、x、y、zの3軸の情報である。属性情報は、例えば、RGBの色情報である。代表的なデータファイルとしてplyファイルなどがある。 Position information is, for example, information on the three axes x, y, and z. Attribute information is, for example, RGB color information. A typical data file is a ply file.
次に、点群データの種類について説明する。図4は、点群データの種類を示す図である。図4に示すように、点群データには、静的オブジェクトと、動的オブジェクトとがある。 Next, we will explain the types of point cloud data. Figure 4 is a diagram showing the types of point cloud data. As shown in Figure 4, point cloud data includes static objects and dynamic objects.
静的オブジェクトは、任意の時間(ある時刻)の三次元点群データである。動的オブジェクトは、時間的に変化する三次元点群データである。以降、ある時刻の三次元点群データをPCCフレーム、又はフレームと呼ぶ。 A static object is 3D point cloud data at any time (a certain instant of time). A dynamic object is 3D point cloud data that changes over time. Hereafter, 3D point cloud data at a certain time will be referred to as a PCC frame, or frame.
オブジェクトは、通常の映像データのように、ある程度領域が制限されている点群であってもよいし、地図情報のように領域が制限されていない大規模点群であってもよい。 An object may be a point cloud with a somewhat restricted area, such as normal video data, or a large-scale point cloud with an unlimited area, such as map information.
また、様々な密度の点群データがあり、疎な点群データと、密な点群データとが存在してもよい。 There may also be point cloud data of various densities, including sparse point cloud data and dense point cloud data.
以下、各処理部の詳細について説明する。センサ情報は、LIDAR或いはレンジファインダなどの距離センサ、ステレオカメラ、又は、複数の単眼カメラの組合せなど様々な方法で取得される。点群データ生成部4618は、センサ情報取得部4617で得られたセンサ情報に基づき点群データを生成する。点群データ生成部4618は、点群データとして、位置情報を生成し、位置情報に、当該位置情報に対する属性情報を付加する。 The details of each processing unit are explained below. Sensor information is acquired by various methods, such as distance sensors such as LIDAR or range finders, stereo cameras, or a combination of multiple monocular cameras. The point cloud data generation unit 4618 generates point cloud data based on the sensor information acquired by the sensor information acquisition unit 4617. The point cloud data generation unit 4618 generates position information as point cloud data and adds attribute information for the position information to the position information.
点群データ生成部4618は、位置情報の生成又は属性情報の付加の際に、点群データを加工してもよい。例えば、点群データ生成部4618は、位置が重複する点群を削除することでデータ量を減らしてもよい。また、点群データ生成部4618は、位置情報を変換(位置シフト、回転又は正規化など)してもよいし、属性情報をレンダリングしてもよい。 The point cloud data generation unit 4618 may process the point cloud data when generating position information or adding attribute information. For example, the point cloud data generation unit 4618 may reduce the amount of data by deleting point clouds with overlapping positions. In addition, the point cloud data generation unit 4618 may transform the position information (such as by shifting, rotating, or normalizing) or render the attribute information.
なお、図1では、点群データ生成システム4611は、三次元データ符号化システム4601に含まれるが、三次元データ符号化システム4601の外部に独立して設けられてもよい。 In Figure 1, the point cloud data generation system 4611 is included in the three-dimensional data encoding system 4601, but it may also be provided independently outside the three-dimensional data encoding system 4601.
符号化部4613は、点群データを予め規定された符号化方法に基づき符号化することで符号化データを生成する。符号化方法には大きく以下の2種類がある。一つ目は、位置情報を用いた符号化方法であり、この符号化方法を、以降、第1の符号化方法と記載する。二つ目は、ビデオコーデックを用いた符号化方法であり、この符号化方法を、以降、第2の符号化方法と記載する。 The encoding unit 4613 generates encoded data by encoding the point cloud data based on a predefined encoding method. There are two main types of encoding methods: the first is an encoding method that uses position information, and this encoding method will be referred to as the first encoding method hereinafter. The second is an encoding method that uses a video codec, and this encoding method will be referred to as the second encoding method hereinafter.
復号部4624は、符号化データを予め規定された符号化方法に基づき復号することで点群データを復号する。 The decoding unit 4624 decodes the point cloud data by decoding the encoded data based on a pre-specified encoding method.
多重化部4614は、符号化データを、既存の多重化方式を用いて多重化することで多重化データを生成する。生成された多重化データは、伝送又は蓄積される。多重化部4614は、PCC符号化データの他に、映像、音声、字幕、アプリケーション、ファイルなどの他のメディア、又は基準時刻情報を多重化する。また、多重化部4614は、さらに、センサ情報又は点群データに関連する属性情報を多重してもよい。 The multiplexing unit 4614 generates multiplexed data by multiplexing the encoded data using an existing multiplexing method. The generated multiplexed data is transmitted or stored. In addition to the PCC encoded data, the multiplexing unit 4614 multiplexes other media such as video, audio, subtitles, applications, files, or reference time information. The multiplexing unit 4614 may also multiplex attribute information related to sensor information or point cloud data.
多重化方式又はファイルフォーマットとしては、ISOBMFF、ISOBMFFベースの伝送方式であるMPEG-DASH、MMT、MPEG-2 TS Systems、RMPなどがある。 Multiplexing methods or file formats include ISOBMFF, and ISOBMFF-based transmission methods such as MPEG-DASH, MMT, MPEG-2 TS Systems, and RMP.
逆多重化部4623は、多重化データからPCC符号化データ、その他のメディア、及び時刻情報などを抽出する。 The demultiplexing unit 4623 extracts PCC encoded data, other media, time information, etc. from the multiplexed data.
入出力部4615は、多重化データを、放送又は通信など、伝送する媒体又は蓄積する媒体にあわせた方法を用いて伝送する。入出力部4615は、インターネット経由で他のデバイスと通信してもよいし、クラウドサーバなどの蓄積部と通信してもよい。 The input/output unit 4615 transmits the multiplexed data using a method suited to the transmission medium or storage medium, such as broadcasting or communication. The input/output unit 4615 may communicate with other devices via the Internet, or may communicate with a storage unit such as a cloud server.
通信プロトコルとしては、http、ftp、TCP又はUDPなどが用いられる。PULL型の通信方式が用いられてもよいし、PUSH型の通信方式が用いられてもよい。 Communication protocols include http, ftp, TCP, and UDP. A pull-type communication method or a push-type communication method may be used.
有線伝送及び無線伝送のいずれが用いられてもよい。有線伝送としては、Ethernet(登録商標)、USB、RS-232C、HDMI(登録商標)、又は同軸ケーブルなどが用いられる。無線伝送としては、無線LAN、Wi-Fi(登録商標)、Bluetooth(登録商標)又はミリ波などが用いられる。 Either wired or wireless transmission may be used. For wired transmission, Ethernet (registered trademark), USB, RS-232C, HDMI (registered trademark), or coaxial cable may be used. For wireless transmission, wireless LAN, Wi-Fi (registered trademark), Bluetooth (registered trademark), or millimeter waves may be used.
また、放送方式としては、例えばDVB-T2、DVB-S2、DVB-C2、ATSC3.0、又はISDB-S3などが用いられる。 In addition, broadcasting methods such as DVB-T2, DVB-S2, DVB-C2, ATSC3.0, or ISDB-S3 are used.
図5は、第1の符号化方法の符号化を行う符号化部4613の例である第1の符号化部4630の構成を示す図である。図6は、第1の符号化部4630のブロック図である。第1の符号化部4630は、点群データを第1の符号化方法で符号化することで符号化データ(符号化ストリーム)を生成する。この第1の符号化部4630は、位置情報符号化部4631と、属性情報符号化部4632と、付加情報符号化部4633と、多重化部4634とを含む。 Figure 5 is a diagram showing the configuration of a first encoding unit 4630, which is an example of an encoding unit 4613 that performs encoding using the first encoding method. Figure 6 is a block diagram of the first encoding unit 4630. The first encoding unit 4630 generates encoded data (encoded stream) by encoding point cloud data using the first encoding method. This first encoding unit 4630 includes a position information encoding unit 4631, an attribute information encoding unit 4632, an additional information encoding unit 4633, and a multiplexing unit 4634.
第1の符号化部4630は、三次元構造を意識して符号化を行うという特徴を有する。また、第1の符号化部4630は、属性情報符号化部4632が、位置情報符号化部4631から得られる情報を用いて符号を行うという特徴を有する。第1の符号化方法は、GPCC(Geometry based PCC)とも呼ばれる。 The first encoding unit 4630 is characterized by performing encoding with consideration of three-dimensional structure. The first encoding unit 4630 is also characterized by the attribute information encoding unit 4632 performing encoding using information obtained from the position information encoding unit 4631. The first encoding method is also called GPCC (Geometry-based PCC).
点群データは、PLYファイルのようなPCC点群データ、又は、センサ情報から生成されたPCC点群データであり、位置情報(Position)、属性情報(Attribute)、及びその他の付加情報(MetaData)を含む。位置情報は位置情報符号化部4631に入力され、属性情報は属性情報符号化部4632に入力され、付加情報は付加情報符号化部4633に入力される。 The point cloud data is PCC point cloud data such as a PLY file, or PCC point cloud data generated from sensor information, and includes position information (Position), attribute information (Attribute), and other additional information (MetaData). The position information is input to the position information encoding unit 4631, the attribute information is input to the attribute information encoding unit 4632, and the additional information is input to the additional information encoding unit 4633.
位置情報符号化部4631は、位置情報を符号化することで符号化データである符号化位置情報(Compressed Geometry)を生成する。例えば、位置情報符号化部4631は、8分木等のN分木構造を用いて位置情報を符号化する。具体的には、8分木では、対象空間が8個のノード(サブ空間)に分割され、各ノードに点群が含まれるか否かを示す8ビットの情報(オキュパンシー符号)が生成される。また、点群が含まれるノードは、さらに、8個のノードに分割され、当該8個のノードの各々に点群が含まれるか否かを示す8ビットの情報が生成される。この処理が、予め定められた階層又はノードに含まれる点群の数の閾値以下になるまで繰り返される。 The position information encoding unit 4631 encodes the position information to generate encoded position information (Compressed Geometry), which is encoded data. For example, the position information encoding unit 4631 encodes the position information using an N-ary tree structure such as an octree. Specifically, in an octree, the target space is divided into eight nodes (subspaces), and 8-bit information (occupancy code) indicating whether or not a point cloud is included in each node is generated. Furthermore, the node that includes a point cloud is further divided into eight nodes, and 8-bit information indicating whether or not a point cloud is included in each of the eight nodes is generated. This process is repeated until the number of point clouds included in a predetermined hierarchy or node falls below a threshold.
属性情報符号化部4632は、位置情報符号化部4631で生成された構成情報を用いて符号化することで符号化データである符号化属性情報(Compressed Attribute)を生成する。例えば、属性情報符号化部4632は、位置情報符号化部4631で生成された8分木構造に基づき、処理対象の対象点(対象ノード)の符号化において参照する参照点(参照ノード)を決定する。例えば、属性情報符号化部4632は、周辺ノード又は隣接ノードのうち、8分木における親ノードが対象ノードと同一のノードを参照する。なお、参照関係の決定方法はこれに限らない。 The attribute information encoding unit 4632 generates encoded attribute information (Compressed Attribute), which is encoded data, by encoding using the configuration information generated by the position information encoding unit 4631. For example, the attribute information encoding unit 4632 determines a reference point (reference node) to reference when encoding the target point (target node) to be processed, based on the octree structure generated by the position information encoding unit 4631. For example, the attribute information encoding unit 4632 references a peripheral or adjacent node whose parent node in the octree is the same as that of the target node. Note that the method of determining the reference relationship is not limited to this.
また、属性情報の符号化処理は、量子化処理、予測処理、及び算術符号化処理のうち少なくとも一つを含んでもよい。この場合、参照とは、属性情報の予測値の算出に参照ノードを用いること、又は、符号化のパラメータの決定に参照ノードの状態(例えば、参照ノードに点群が含まれる否かを示す占有情報)を用いること、である。例えば、符号化のパラメータとは、量子化処理における量子化パラメータ、又は算術符号化におけるコンテキスト等である。 The encoding process for attribute information may also include at least one of a quantization process, a prediction process, and an arithmetic coding process. In this case, referencing means using a reference node to calculate a predicted value for the attribute information, or using the state of the reference node (e.g., occupancy information indicating whether the reference node contains a point group) to determine encoding parameters. For example, encoding parameters include quantization parameters in a quantization process, or context in arithmetic coding.
付加情報符号化部4633は、付加情報のうち、圧縮可能なデータを符号化することで符号化データである符号化付加情報(Compressed MetaData)を生成する。 The additional information encoding unit 4633 generates encoded additional information (Compressed MetaData), which is encoded data, by encoding compressible data from the additional information.
多重化部4634は、符号化位置情報、符号化属性情報、符号化付加情報及びその他の付加情報を多重化することで符号化データである符号化ストリーム(Compressed Stream)を生成する。生成された符号化ストリームは、図示しないシステムレイヤの処理部へ出力される。 The multiplexing unit 4634 generates a coded stream (Compressed Stream) which is coded data by multiplexing the coding position information, coding attribute information, coding additional information, and other additional information. The generated coded stream is output to a processing unit in the system layer (not shown).
次に、第1の符号化方法の復号を行う復号部4624の例である第1の復号部4640について説明する。図7は、第1の復号部4640の構成を示す図である。図8は、第1の復号部4640のブロック図である。第1の復号部4640は、第1の符号化方法で符号化された符号化データ(符号化ストリーム)を、第1の符号化方法で復号することで点群データを生成する。この第1の復号部4640は、逆多重化部4641と、位置情報復号部4642と、属性情報復号部4643と、付加情報復号部4644とを含む。 Next, we will explain the first decoding unit 4640, which is an example of a decoding unit 4624 that performs decoding using the first encoding method. Figure 7 is a diagram showing the configuration of the first decoding unit 4640. Figure 8 is a block diagram of the first decoding unit 4640. The first decoding unit 4640 generates point cloud data by decoding, using the first encoding method, encoded data (encoded stream). This first decoding unit 4640 includes a demultiplexing unit 4641, a position information decoding unit 4642, an attribute information decoding unit 4643, and an additional information decoding unit 4644.
図示しないシステムレイヤの処理部から符号化データである符号化ストリーム(Compressed Stream)が第1の復号部4640に入力される。 An encoded stream (compressed stream), which is encoded data, is input to the first decoding unit 4640 from a processing unit of a system layer not shown.
逆多重化部4641は、符号化データから、符号化位置情報(Compressed Geometry)、符号化属性情報(Compressed Attribute)、符号化付加情報(Compressed MetaData)、及び、その他の付加情報を分離する。 The demultiplexing unit 4641 separates the encoded position information (Compressed Geometry), encoded attribute information (Compressed Attribute), encoded additional information (Compressed MetaData), and other additional information from the encoded data.
位置情報復号部4642は、符号化位置情報を復号することで位置情報を生成する。例えば、位置情報復号部4642は、8分木等のN分木構造で表される符号化位置情報から三次元座標で表される点群の位置情報を復元する。 The position information decoding unit 4642 generates position information by decoding the encoded position information. For example, the position information decoding unit 4642 restores the position information of a point group represented by three-dimensional coordinates from encoded position information represented by an N-ary tree structure such as an octree.
属性情報復号部4643は、位置情報復号部4642で生成された構成情報に基づき、符号化属性情報を復号する。例えば、属性情報復号部4643は、位置情報復号部4642で得られた8分木構造に基づき、処理対象の対象点(対象ノード)の復号において参照する参照点(参照ノード)を決定する。例えば、属性情報復号部4643は、周辺ノード又は隣接ノードのうち、8分木における親ノードが対象ノードと同一のノードを参照する。なお、参照関係の決定方法はこれに限らない。 The attribute information decoding unit 4643 decodes the encoded attribute information based on the configuration information generated by the position information decoding unit 4642. For example, the attribute information decoding unit 4643 determines a reference point (reference node) to reference when decoding the target point (target node) to be processed based on the octree structure obtained by the position information decoding unit 4642. For example, the attribute information decoding unit 4643 references a peripheral or adjacent node whose parent node in the octree is the same as that of the target node. Note that the method of determining the reference relationship is not limited to this.
また、属性情報の復号処理は、逆量子化処理、予測処理、及び算術復号処理のうち少なくとも一つを含んでもよい。この場合、参照とは、属性情報の予測値の算出に参照ノードを用いること、又は、復号のパラメータの決定に参照ノードの状態(例えば、参照ノードに点群が含まれる否かを示す占有情報)を用いること、である。例えば、復号のパラメータとは、逆量子化処理における量子化パラメータ、又は算術復号におけるコンテキスト等である。 The attribute information decoding process may also include at least one of an inverse quantization process, a prediction process, and an arithmetic decoding process. In this case, referencing means using a reference node to calculate a predicted value of the attribute information, or using the state of the reference node (e.g., occupancy information indicating whether the reference node contains a point group) to determine decoding parameters. For example, decoding parameters include quantization parameters in an inverse quantization process, or context in arithmetic decoding.
付加情報復号部4644は、符号化付加情報を復号することで付加情報を生成する。また、第1の復号部4640は、位置情報及び属性情報の復号処理に必要な付加情報を復号時に使用し、アプリケーションに必要な付加情報を外部に出力する。 The additional information decoding unit 4644 generates additional information by decoding the encoded additional information. The first decoding unit 4640 uses the additional information required for the decoding process of the position information and attribute information during decoding, and outputs the additional information required for the application to the outside.
次に、位置情報符号化部の構成例を説明する。図9は、本実施の形態に係る位置情報符号化部2700のブロック図である。位置情報符号化部2700は、8分木生成部2701と、幾何情報算出部2702と、符号化テーブル選択部2703と、エントロピー符号化部2704とを備える。 Next, an example configuration of the position information encoding unit will be described. Figure 9 is a block diagram of the position information encoding unit 2700 according to this embodiment. The position information encoding unit 2700 includes an octree generation unit 2701, a geometric information calculation unit 2702, a coding table selection unit 2703, and an entropy encoding unit 2704.
8分木生成部2701は、入力された位置情報から、例えば8分木を生成し、8分木の各ノードのオキュパンシー符号を生成する。幾何情報算出部2702は、対象ノードの隣接ノードが占有ノードか否かを示す情報を取得する。例えば、幾何情報算出部2702は、対象ノードが所属する親ノードのオキュパンシー符号から隣接ノードの占有情報(隣接ノードが占有ノードであるか否かを示す情報)を算出する。また、幾何情報算出部2702は、符号化済みのノードをリストに保存しておき、そのリスト内から隣接ノードを探索してもよい。なお、幾何情報算出部2702は、対象ノードの親ノード内の位置に応じて隣接ノードを切替えてもよい。 The octree generation unit 2701 generates, for example, an octree from the input position information and generates an occupancy code for each node in the octree. The geometric information calculation unit 2702 obtains information indicating whether an adjacent node of the target node is an occupied node. For example, the geometric information calculation unit 2702 calculates the occupancy information of the adjacent node (information indicating whether the adjacent node is an occupied node) from the occupancy code of the parent node to which the target node belongs. The geometric information calculation unit 2702 may also store encoded nodes in a list and search for adjacent nodes from that list. The geometric information calculation unit 2702 may also switch adjacent nodes depending on the position of the target node within the parent node.
符号化テーブル選択部2703は、幾何情報算出部2702で算出された隣接ノードの占有情報を用いて対象ノードのエントロピー符号化に用いる符号化テーブルを選択する。例えば、符号化テーブル選択部2703は、隣接ノードの占有情報を用いてビット列を生成し、そのビット列から生成されるインデックス番号の符号化テーブルを選択してもよい。 The coding table selection unit 2703 selects a coding table to be used for entropy coding of the target node using the occupancy information of adjacent nodes calculated by the geometric information calculation unit 2702. For example, the coding table selection unit 2703 may generate a bit string using the occupancy information of adjacent nodes and select a coding table for the index number generated from the bit string.
エントロピー符号化部2704は、選択されたインデックス番号の符号化テーブルを用いて対象ノードのオキュパンシー符号にエントロピー符号化を行うことで符号化位置情報及びメタデータを生成する。エントロピー符号化部2704は、選択された符号化テーブルを示す情報を符号化位置情報に付加してもよい。 The entropy coding unit 2704 generates coding position information and metadata by entropy coding the occupancy code of the target node using the coding table of the selected index number. The entropy coding unit 2704 may add information indicating the selected coding table to the coding position information.
以下、8分木表現と位置情報のスキャン順について説明する。位置情報(位置データ)は8分木構造に変換(8分木化)された後、符号化される。8分木構造はノードとリーフとで構成される。各ノードは8つのノード又はリーフを持ち、各リーフはボクセル(VXL)情報を持つ。図10は、複数のボクセルを含む位置情報の構造例を示す図である。図11は、図10に示す位置情報を8分木構造に変換した例を示す図である。ここで、図11に示すリーフのうち、リーフ1、2、3はそれぞれ図10に示すボクセルVXL1、VXL2、VXL3を表し、点群を含むVXL(以下、有効VXL)を表現している。 The following explains the octree representation and the scanning order of position information. Position information (position data) is converted into an octree structure (octreeing) and then encoded. The octree structure consists of nodes and leaves. Each node has eight nodes or leaves, and each leaf has voxel (VXL) information. Figure 10 is a diagram showing an example of the structure of position information containing multiple voxels. Figure 11 is a diagram showing an example of the position information shown in Figure 10 converted into an octree structure. Here, of the leaves shown in Figure 11, leaves 1, 2, and 3 represent voxels VXL1, VXL2, and VXL3 shown in Figure 10, respectively, and represent a VXL containing a point cloud (hereinafter referred to as a valid VXL).
具体的には、ノード1は、図10の位置情報を包含する全体空間に対応する。ノード1に対応する全体空間は8つのノードに分割され、8つのノードのうち、有効VXLを含むノードが、さらに8つのノードまたはリーフに分割され、この処理が木構造の階層分繰り返される。ここで、各ノードはサブ空間に対応し、ノード情報として分割後のどの位置に次のノードまたはリーフを持つかを示す情報(オキュパンシー符号)を持つ。また、最下層のブロックはリーフに設定され、リーフ情報としてリーフ内に含まれる点群数などが保持される。 Specifically, node 1 corresponds to the global space containing the position information in Figure 10. The global space corresponding to node 1 is divided into eight nodes, and of these eight nodes, the node containing a valid VXL is further divided into eight nodes or leaves, and this process is repeated for each level of the tree structure. Here, each node corresponds to a subspace, and node information contains information (occupancy code) indicating the position of the next node or leaf after division. In addition, the lowest-level block is set as a leaf, and leaf information such as the number of points contained in the leaf is stored.
次に、位置情報復号部の構成例を説明する。図12は、本実施の形態に係る位置情報復号部2710のブロック図である。位置情報復号部2710は、8分木生成部2711と、幾何情報算出部2712と、符号化テーブル選択部2713と、エントロピー復号部2714とを備える。 Next, an example configuration of the position information decoding unit will be described. Figure 12 is a block diagram of the position information decoding unit 2710 according to this embodiment. The position information decoding unit 2710 includes an octree generation unit 2711, a geometric information calculation unit 2712, an encoding table selection unit 2713, and an entropy decoding unit 2714.
8分木生成部2711は、ビットストリームのヘッダ情報又はメタデータ等を用いて、ある空間(ノード)の8分木を生成する。例えば、8分木生成部2711は、ヘッダ情報に付加されたある空間のx軸、y軸、z軸方向の大きさを用いて大空間(ルートノード)を生成し、その空間をx軸、y軸、z軸方向にそれぞれ2分割することで8個の小空間A(ノードA0~A7)を生成することで8分木を生成する。また、対象ノードとしてノードA0~A7が順に設定される。 The octree generator 2711 generates an octree for a space (node) using header information or metadata of the bitstream. For example, the octree generator 2711 generates a large space (root node) using the size of the x-axis, y-axis, and z-axis directions of a space added to the header information, and then generates an octree by dividing that space into two along the x-axis, y-axis, and z-axis directions to generate eight small spaces A (nodes A0 to A7). Nodes A0 to A7 are set in order as target nodes.
幾何情報算出部2712は、対象ノードの隣接ノードが占有ノードであるか否かを示す占有情報を取得する。例えば、幾何情報算出部2712は、対象ノードが所属する親ノードのオキュパンシー符号から隣接ノードの占有情報を算出する。また、幾何情報算出部2712は、復号済みのノードをリストに保存しておき、そのリスト内から隣接ノードを探索してもよい。なお、幾何情報算出部2712は、対象ノードの親ノード内の位置に応じて隣接ノードを切替えてもよい。 The geometric information calculation unit 2712 obtains occupancy information indicating whether an adjacent node of the target node is an occupied node. For example, the geometric information calculation unit 2712 calculates the occupancy information of the adjacent node from the occupancy code of the parent node to which the target node belongs. The geometric information calculation unit 2712 may also store decoded nodes in a list and search for adjacent nodes from that list. The geometric information calculation unit 2712 may also switch adjacent nodes depending on the position of the target node within the parent node.
符号化テーブル選択部2713は、幾何情報算出部2712で算出された隣接ノードの占有情報を用いて対象ノードのエントロピー復号に用いる符号化テーブル(復号テーブル)を選択する。例えば、符号化テーブル選択部2713は、隣接ノードの占有情報を用いてビット列を生成し、そのビット列から生成されるインデックス番号の符号化テーブルを選択してもよい。 The coding table selection unit 2713 selects a coding table (decoding table) to be used for entropy decoding of the target node using the occupancy information of adjacent nodes calculated by the geometric information calculation unit 2712. For example, the coding table selection unit 2713 may generate a bit string using the occupancy information of adjacent nodes and select a coding table for the index number generated from the bit string.
エントロピー復号部2714は、選択された符号化テーブルを用いて対象ノードのオキュパンシー符号をエントロピー復号することで、位置情報を生成する。なお、エントロピー復号部2714は、選択された符号化テーブルの情報をビットストリームから復号して取得し、当該情報で示される符号化テーブルを用いて、対象ノードのオキュパンシー符号をエントロピー復号してもよい。 The entropy decoding unit 2714 generates position information by entropy decoding the occupancy code of the target node using the selected encoding table. The entropy decoding unit 2714 may also obtain information about the selected encoding table by decoding it from the bitstream, and then entropy decode the occupancy code of the target node using the encoding table indicated by the information.
以下、属性情報符号化部及び属性情報復号部の構成を説明する。図13は属性情報符号化部A100の構成例を示すブロック図である。属性情報符号化部は異なる符号化方法を実行する複数の符号化部を含んでもよい。例えば、属性情報符号化部は、下記の2方式をユースケースに応じて切替えて用いてもよい。 The configuration of the attribute information encoding unit and attribute information decoding unit is described below. Figure 13 is a block diagram showing an example configuration of the attribute information encoding unit A100. The attribute information encoding unit may include multiple encoding units that execute different encoding methods. For example, the attribute information encoding unit may switch between the following two methods depending on the use case.
属性情報符号化部A100は、LoD属性情報符号化部A101と、変換属性情報符号化部A102とを含む。LoD属性情報符号化部A101は、三次元点の位置情報を用いて各三次元点を複数階層に分類し、各階層に属する三次元点の属性情報を予測して、その予測残差を符号化する。ここで、分類した各階層をLoD(Level of Detail)と呼ぶ。 The attribute information encoding unit A100 includes an LoD attribute information encoding unit A101 and a transformed attribute information encoding unit A102. The LoD attribute information encoding unit A101 classifies each 3D point into multiple layers using the position information of the 3D points, predicts the attribute information of the 3D points belonging to each layer, and encodes the prediction residual. Here, each classified layer is called LoD (Level of Detail).
変換属性情報符号化部A102は、RAHT(Region Adaptive Hierarchical Transform)を用いて属性情報を符号化する。具体的には、変換属性情報符号化部A102は、三次元点の位置情報を元に各属性情報に対してRAHTまたはHaar変換を適用することで、各階層の高周波成分および低周波数成分を生成し、それらの値を量子化及びエントロピー符号化等を用いて符号化する。The transformed attribute information encoding unit A102 encodes the attribute information using RAHT (Region Adaptive Hierarchical Transform). Specifically, the transformed attribute information encoding unit A102 applies RAHT or Haar transform to each piece of attribute information based on the position information of the three-dimensional points to generate high-frequency and low-frequency components for each layer, and encodes these values using quantization, entropy coding, etc.
図14は属性情報復号部A110の構成例を示すブロック図である。属性情報復号部は異なる復号方法を実行する複数の復号部を含んでもよい。例えば、属性情報復号部は、下記の2方式をヘッダやメタデータに含まれる情報を元に切替えて復号してもよい。 Figure 14 is a block diagram showing an example configuration of the attribute information decoding unit A110. The attribute information decoding unit may include multiple decoding units that perform different decoding methods. For example, the attribute information decoding unit may switch between the following two methods for decoding based on information contained in the header or metadata.
属性情報復号部A110は、LoD属性情報復号部A111と、変換属性情報復号部A112とを含む。LoD属性情報復号部A111は、三次元点の位置情報を用いて各三次元点を複数階層に分類し、各階層に属する三次元点の属性情報を予測しながら属性値を復号する。 The attribute information decoding unit A110 includes an LoD attribute information decoding unit A111 and a converted attribute information decoding unit A112. The LoD attribute information decoding unit A111 classifies each 3D point into multiple hierarchies using the position information of the 3D points, and decodes the attribute values while predicting the attribute information of the 3D points belonging to each hierarchical level.
変換属性情報復号部A112は、RAHT(Region Adaptive Hierarchical Transform)を用いて属性情報を復号する。具体的には、変換属性情報復号部A112は、三次元点の位置情報を元に各属性値の高周波成分および低周波成分に対して、inverse RAHTまたはinverse Haar変換を適用することで属性値を復号する。 The transformed attribute information decoding unit A112 decodes the attribute information using RAHT (Region Adaptive Hierarchical Transform). Specifically, the transformed attribute information decoding unit A112 decodes the attribute values by applying an inverse RAHT or an inverse Haar transform to the high-frequency and low-frequency components of each attribute value based on the position information of the three-dimensional points.
図15は、LoD属性情報符号化部A101の一例である属性情報符号化部3140の構成を示すブロック図である。 Figure 15 is a block diagram showing the configuration of the attribute information encoding unit 3140, which is an example of the LoD attribute information encoding unit A101.
属性情報符号化部3140は、LoD生成部3141と、周囲探索部3142と、予測部3143と、予測残差算出部3144と、量子化部3145と、算術符号化部3146と、逆量子化部3147と、復号値生成部3148と、メモリ3149と、を含む。 The attribute information encoding unit 3140 includes an LoD generation unit 3141, a surrounding search unit 3142, a prediction unit 3143, a prediction residual calculation unit 3144, a quantization unit 3145, an arithmetic coding unit 3146, an inverse quantization unit 3147, a decoded value generation unit 3148, and a memory 3149.
LoD生成部3141は、三次元点の位置情報を用いてLoDを生成する。 The LoD generation unit 3141 generates LoD using the position information of the three-dimensional points.
周囲探索部3142は、LoD生成部3141によるLoDの生成結果と各三次元点間の距離を示す距離情報とを用いて、各三次元点に隣接する近隣三次元点を探索する。 The surrounding search unit 3142 searches for nearby 3D points adjacent to each 3D point using the LoD generation result by the LoD generation unit 3141 and distance information indicating the distance between each 3D point.
予測部3143は、符号化対象の対象三次元点の属性情報の予測値を生成する。 The prediction unit 3143 generates a predicted value of the attribute information of the target 3D point to be encoded.
予測残差算出部3144は、予測部3143により生成された属性情報の予測値の予測残差を算出(生成)する。 The prediction residual calculation unit 3144 calculates (generates) the prediction residual of the predicted value of the attribute information generated by the prediction unit 3143.
量子化部3145は、予測残差算出部3144により算出された属性情報の予測残差を量子化する。 The quantization unit 3145 quantizes the prediction residual of the attribute information calculated by the prediction residual calculation unit 3144.
算術符号化部3146は、量子化部3145により量子化された後の予測残差を算術符号化する。算術符号化部3146は、算術符号化した予測残差を含むビットストリームを、例えば、三次元データ復号装置に出力する。 The arithmetic coding unit 3146 arithmetically codes the prediction residuals after quantization by the quantization unit 3145. The arithmetic coding unit 3146 outputs a bitstream including the arithmetically coded prediction residuals to, for example, a three-dimensional data decoding device.
なお、予測残差は、算術符号化部3146によって算術符号化される前に、例えば量子化部3145によって二値化されてもよい。 In addition, the prediction residual may be binarized, for example, by a quantization unit 3145, before being arithmetically coded by the arithmetic coding unit 3146.
また、例えば、算術符号化部3146は、算術符号化に用いる符号化テーブルを算術符号化前に初期化してもよい。算術符号化部3146は、算術符号化に用いる符号化テーブルを、層毎に初期化してもよい。また、算術符号化部3146は、符号化テーブルを初期化した層の位置を示す情報をビットストリームに含めて出力してもよい。 Furthermore, for example, the arithmetic coding unit 3146 may initialize the coding table used for arithmetic coding before arithmetic coding. The arithmetic coding unit 3146 may initialize the coding table used for arithmetic coding for each layer. Furthermore, the arithmetic coding unit 3146 may output information indicating the position of the layer for which the coding table has been initialized, by including it in the bitstream.
逆量子化部3147は、量子化部3145によって量子化された後の予測残差を逆量子化する。 The inverse quantization unit 3147 inverse quantizes the prediction residual after being quantized by the quantization unit 3145.
復号値生成部3148は、予測部3143により生成された属性情報の予測値と、逆量子化部3147により逆量子化された後の予測残差とを加算することで復号値を生成する。 The decoded value generation unit 3148 generates a decoded value by adding the predicted value of the attribute information generated by the prediction unit 3143 and the prediction residual after inverse quantization by the inverse quantization unit 3147.
メモリ3149は、復号値生成部3148により復号された各三次元点の属性情報の復号値を記憶するメモリである。例えば、予測部3143は、まだ符号化していない三次元点の予測値を生成する場合に、メモリ3149に記憶されている各三次元点の属性情報の復号値を利用して予測値を生成する。 Memory 3149 is a memory that stores the decoded values of the attribute information of each three-dimensional point decoded by the decoded value generation unit 3148. For example, when generating a predicted value for a three-dimensional point that has not yet been encoded, the prediction unit 3143 generates the predicted value using the decoded values of the attribute information of each three-dimensional point stored in memory 3149.
図16は、変換属性情報符号化部A102の一例である属性情報符号化部6600のブロック図である。属性情報符号化部6600は、ソート部6601と、Haar変換部6602と、量子化部6603と、逆量子化部6604と、逆Haar変換部6605と、メモリ6606と、算術符号化部6607とを備える。 Figure 16 is a block diagram of an attribute information encoding unit 6600, which is an example of the transformed attribute information encoding unit A102. The attribute information encoding unit 6600 includes a sorting unit 6601, a Haar transform unit 6602, a quantization unit 6603, an inverse quantization unit 6604, an inverse Haar transform unit 6605, a memory 6606, and an arithmetic encoding unit 6607.
ソート部6601は、三次元点の位置情報を用いてモートン符号を生成し、複数の三次元点をモートン符号順にソートする。Haar変換部6602は、属性情報にHaar変換を適用することで符号化係数を生成する。量子化部6603は、属性情報の符号化係数を量子化する。 The sorting unit 6601 generates a Morton code using the position information of the 3D points and sorts multiple 3D points in Morton code order. The Haar transform unit 6602 generates coding coefficients by applying a Haar transform to the attribute information. The quantization unit 6603 quantizes the coding coefficients of the attribute information.
逆量子化部6604は、量子化後の符号化係数を逆量子化する。逆Haar変換部6605は、符号化係数に逆Haar変換を適用する。メモリ6606は、復号済みの複数の三次元点の属性情報の値を記憶する。例えば、メモリ6606に記憶される復号済みの三次元点の属性情報は、符号化されていない三次元点の予測等に利用されてもよい。 The inverse quantization unit 6604 inversely quantizes the quantized coding coefficients. The inverse Haar transform unit 6605 applies an inverse Haar transform to the coding coefficients. The memory 6606 stores values of attribute information for multiple decoded 3D points. For example, the attribute information for decoded 3D points stored in the memory 6606 may be used for predicting uncoded 3D points.
算術符号化部6607は、量子化後の符号化係数からZeroCntを算出し、ZeroCntを算術符号化する。また、算術符号化部6607は、量子化後の非ゼロの符号化係数を算術符号化する。算術符号化部6607は、符号化係数を算術符号化前に二値化してもよい。また、算術符号化部6607は、各種ヘッダ情報を生成及び符号化してもよい。 The arithmetic coding unit 6607 calculates ZeroCnt from the coding coefficients after quantization and arithmetically codes ZeroCnt. The arithmetic coding unit 6607 also arithmetically codes the non-zero coding coefficients after quantization. The arithmetic coding unit 6607 may binarize the coding coefficients before arithmetic coding. The arithmetic coding unit 6607 may also generate and code various header information.
図17は、LoD属性情報復号部A111の一例である属性情報復号部3150の構成を示すブロック図である。 Figure 17 is a block diagram showing the configuration of the attribute information decoding unit 3150, which is an example of the LoD attribute information decoding unit A111.
属性情報復号部3150は、LoD生成部3151と、周囲探索部3152と、予測部3153と、算術復号部3154と、逆量子化部3155と、復号値生成部3156と、メモリ3157と、を含む。 The attribute information decoding unit 3150 includes an LoD generation unit 3151, a surrounding search unit 3152, a prediction unit 3153, an arithmetic decoding unit 3154, an inverse quantization unit 3155, a decoded value generation unit 3156, and a memory 3157.
LoD生成部3151は、位置情報復号部(図17には不図示)により復号された三次元点の位置情報を用いてLoDを生成する。 The LoD generation unit 3151 generates LoD using the position information of the three-dimensional points decoded by the position information decoding unit (not shown in Figure 17).
周囲探索部3152は、LoD生成部3151によるLoDの生成結果と各三次元点間の距離を示す距離情報とを用いて、各三次元点に隣接する近隣三次元点を探索する。 The surrounding search unit 3152 searches for nearby 3D points adjacent to each 3D point using the LoD generation result by the LoD generation unit 3151 and distance information indicating the distance between each 3D point.
予測部3153は、復号対象の対象三次元点の属性情報の予測値を生成する。 The prediction unit 3153 generates a predicted value of the attribute information of the target 3D point to be decoded.
算術復号部3154は、図15に示す属性情報符号化部3140より取得したビットストリーム内の予測残差を算術復号する。なお、算術復号部3154は、算術復号に用いる復号テーブルを初期化してもよい。算術復号部3154は、図15に示す算術符号化部3146が符号化処理を行った層について、算術復号に用いる復号テーブルを初期化する。算術復号部3154は、算術復号に用いる復号テーブルを層毎に初期化してもよい。また、算術復号部3154は、ビットストリームに含まれる、符号化テーブルを初期化した層の位置を示す情報に基づいて、復号テーブルを初期化してもよい。 The arithmetic decoding unit 3154 arithmetically decodes the prediction residuals in the bitstream obtained from the attribute information encoding unit 3140 shown in Figure 15. The arithmetic decoding unit 3154 may initialize the decoding table used for arithmetic decoding. The arithmetic decoding unit 3154 initializes the decoding table used for arithmetic decoding for the layer on which the arithmetic encoding unit 3146 shown in Figure 15 performed the encoding process. The arithmetic decoding unit 3154 may initialize the decoding table used for arithmetic decoding for each layer. The arithmetic decoding unit 3154 may also initialize the decoding table based on information included in the bitstream indicating the position of the layer for which the encoding table has been initialized.
逆量子化部3155は、算術復号部3154が算術復号した予測残差を逆量子化する。 The inverse quantization unit 3155 inverse quantizes the prediction residual arithmetically decoded by the arithmetic decoding unit 3154.
復号値生成部3156は、予測部3153により生成された予測値と逆量子化部3155により逆量子化された後の予測残差とを加算して復号値を生成する。復号値生成部3156は、復号された属性情報データを他の装置へ出力する。 The decoded value generation unit 3156 generates a decoded value by adding the predicted value generated by the prediction unit 3153 and the prediction residual after inverse quantization by the inverse quantization unit 3155. The decoded value generation unit 3156 outputs the decoded attribute information data to another device.
メモリ3157は、復号値生成部3156により復号された各三次元点の属性情報の復号値を記憶するメモリである。例えば、予測部3153は、まだ復号していない三次元点の予測値を生成する場合に、メモリ3157に記憶されている各三次元点の属性情報の復号値を利用して予測値を生成する。 Memory 3157 is a memory that stores the decoded values of the attribute information of each three-dimensional point decoded by the decoded value generation unit 3156. For example, when generating a predicted value for a three-dimensional point that has not yet been decoded, the prediction unit 3153 generates the predicted value using the decoded values of the attribute information of each three-dimensional point stored in memory 3157.
図18は、変換属性情報復号部A112の一例である属性情報復号部6610のブロック図である。属性情報復号部6610は、算術復号部6611と、逆量子化部6612と、逆Haar変換部6613と、メモリ6614とを備える。 Figure 18 is a block diagram of an attribute information decoding unit 6610, which is an example of the transformed attribute information decoding unit A112. The attribute information decoding unit 6610 includes an arithmetic decoding unit 6611, an inverse quantization unit 6612, an inverse Haar transform unit 6613, and a memory 6614.
算術復号部6611は、ビットストリームに含まれるZeroCntと符号化係数を算術復号する。なお、算術復号部6611は、各種ヘッダ情報を復号してもよい。 The arithmetic decoding unit 6611 arithmetically decodes the ZeroCnt and coding coefficients contained in the bitstream. The arithmetic decoding unit 6611 may also decode various header information.
逆量子化部6612は、算術復号した符号化係数を逆量子化する。逆Haar変換部6613は、逆量子化後の符号化係数に逆Haar変換を適用する。メモリ6614は、復号済みの複数の三次元点の属性情報の値を記憶する。例えば、メモリ6614に記憶される復号済みの三次元点の属性情報は、復号されていない三次元点の予測に利用されてもよい。 The inverse quantization unit 6612 inverse quantizes the arithmetically decoded coding coefficients. The inverse Haar transform unit 6613 applies an inverse Haar transform to the coding coefficients after inverse quantization. The memory 6614 stores values of attribute information for multiple decoded 3D points. For example, the attribute information for decoded 3D points stored in the memory 6614 may be used to predict undecoded 3D points.
次に、第2の符号化方法の符号化を行う符号化部4613の例である第2の符号化部4650について説明する。図19は、第2の符号化部4650の構成を示す図である。図20は、第2の符号化部4650のブロック図である。 Next, we will explain the second encoding unit 4650, which is an example of the encoding unit 4613 that performs encoding using the second encoding method. Figure 19 is a diagram showing the configuration of the second encoding unit 4650. Figure 20 is a block diagram of the second encoding unit 4650.
第2の符号化部4650は、点群データを第2の符号化方法で符号化することで符号化データ(符号化ストリーム)を生成する。この第2の符号化部4650は、付加情報生成部4651と、位置画像生成部4652と、属性画像生成部4653と、映像符号化部4654と、付加情報符号化部4655と、多重化部4656とを含む。 The second encoding unit 4650 generates encoded data (encoded stream) by encoding the point cloud data using a second encoding method. This second encoding unit 4650 includes an additional information generation unit 4651, a position image generation unit 4652, an attribute image generation unit 4653, a video encoding unit 4654, an additional information encoding unit 4655, and a multiplexing unit 4656.
第2の符号化部4650は、三次元構造を二次元画像に投影することで位置画像及び属性画像を生成し、生成した位置画像及び属性画像を既存の映像符号化方式を用いて符号化するという特徴を有する。第2の符号化方法は、VPCC(Video based PCC)とも呼ばれる。 The second encoding unit 4650 has the feature of generating position images and attribute images by projecting a three-dimensional structure onto a two-dimensional image, and encoding the generated position images and attribute images using an existing video encoding method. The second encoding method is also called VPCC (Video-based PCC).
点群データは、PLYファイルのようなPCC点群データ、又は、センサ情報から生成されたPCC点群データであり、位置情報(Position)、属性情報(Attribute)、及びその他の付加情報MetaData)を含む。 The point cloud data is PCC point cloud data such as a PLY file, or PCC point cloud data generated from sensor information, and includes position information (Position), attribute information (Attribute), and other additional information (MetaData).
付加情報生成部4651は、三次元構造を二次元画像に投影することで、複数の二次元画像のマップ情報を生成する。 The additional information generation unit 4651 generates map information for multiple two-dimensional images by projecting three-dimensional structures onto two-dimensional images.
位置画像生成部4652は、位置情報と、付加情報生成部4651で生成されたマップ情報とに基づき、位置画像(Geometry Image)を生成する。この位置画像は、例えば、画素値として距離(Depth)が示される距離画像である。なお、この距離画像は、一つの視点から複数の点群を見た画像(一つの二次元平面に複数の点群を投影した画像)であってもよいし、複数の視点から複数の点群を見た複数の画像であってもよいし、これらの複数の画像を統合した一つの画像であってもよい。 The position image generation unit 4652 generates a position image (Geometry Image) based on the position information and the map information generated by the additional information generation unit 4651. This position image is, for example, a distance image in which distance (Depth) is indicated as pixel values. Note that this distance image may be an image of multiple point clouds viewed from a single viewpoint (an image in which multiple point clouds are projected onto a single two-dimensional plane), multiple images of multiple point clouds viewed from multiple viewpoints, or a single image in which these multiple images are integrated.
属性画像生成部4653は、属性情報と、付加情報生成部4651で生成されたマップ情報とに基づき、属性画像を生成する。この属性画像は、例えば、画素値として属性情報(例えば色(RGB))が示される画像である。なお、この画像は、一つの視点から複数の点群を見た画像(一つの二次元平面に複数の点群を投影した画像)であってもよいし、複数の視点から複数の点群を見た複数の画像であってもよいし、これらの複数の画像を統合した一つの画像であってもよい。 The attribute image generation unit 4653 generates an attribute image based on the attribute information and the map information generated by the additional information generation unit 4651. This attribute image is, for example, an image in which attribute information (e.g., color (RGB)) is represented as pixel values. Note that this image may be an image of multiple point clouds viewed from a single viewpoint (an image in which multiple point clouds are projected onto a single two-dimensional plane), multiple images of multiple point clouds viewed from multiple viewpoints, or a single image in which these multiple images are integrated.
映像符号化部4654は、位置画像及び属性画像を、映像符号化方式を用いて符号化することで、符号化データである符号化位置画像(Compressed Geometry Image)及び符号化属性画像(Compressed Attribute Image)を生成する。なお、映像符号化方式として、公知の任意の符号化方法が用いられてよい。例えば、映像符号化方式は、AVC又はHEVC等である。 The video encoding unit 4654 generates encoded data, an encoded position image (Compressed Geometry Image) and an encoded attribute image (Compressed Attribute Image), by encoding the position image and attribute image using a video encoding method. Note that any known encoding method may be used as the video encoding method. For example, the video encoding method may be AVC or HEVC.
付加情報符号化部4655は、点群データに含まれる付加情報、及びマップ情報等を符号化することで符号化付加情報(Compressed MetaData)を生成する。 The additional information encoding unit 4655 generates encoded additional information (Compressed MetaData) by encoding additional information contained in the point cloud data, map information, etc.
多重化部4656は、符号化位置画像、符号化属性画像、符号化付加情報、及び、その他の付加情報を多重化することで符号化データである符号化ストリーム(Compressed Stream)を生成する。生成された符号化ストリームは、図示しないシステムレイヤの処理部へ出力される。 The multiplexing unit 4656 generates a coded stream (Compressed Stream) which is coded data by multiplexing the coded position image, coded attribute image, coded additional information, and other additional information. The generated coded stream is output to a processing unit in the system layer (not shown).
次に、第2の符号化方法の復号を行う復号部4624の例である第2の復号部4660について説明する。図21は、第2の復号部4660の構成を示す図である。図22は、第2の復号部4660のブロック図である。第2の復号部4660は、第2の符号化方法で符号化された符号化データ(符号化ストリーム)を、第2の符号化方法で復号することで点群データを生成する。この第2の復号部4660は、逆多重化部4661と、映像復号部4662と、付加情報復号部4663と、位置情報生成部4664と、属性情報生成部4665とを含む。 Next, we will explain the second decoding unit 4660, which is an example of a decoding unit 4624 that performs decoding using the second encoding method. Figure 21 is a diagram showing the configuration of the second decoding unit 4660. Figure 22 is a block diagram of the second decoding unit 4660. The second decoding unit 4660 generates point cloud data by decoding, using the second encoding method, encoded data (encoded stream) encoded using the second encoding method. This second decoding unit 4660 includes a demultiplexing unit 4661, a video decoding unit 4662, an additional information decoding unit 4663, a position information generation unit 4664, and an attribute information generation unit 4665.
図示しないシステムレイヤの処理部から符号化データである符号化ストリーム(Compressed Stream)が第2の復号部4660に入力される。 An encoded stream (compressed stream), which is encoded data, is input to the second decoding unit 4660 from a processing unit of a system layer not shown.
逆多重化部4661は、符号化データから、符号化位置画像(Compressed Geometry Image)、符号化属性画像(Compressed Attribute Image)、符号化付加情報(Compressed MetaData)、及び、その他の付加情報を分離する。 The demultiplexing unit 4661 separates the encoded position image (Compressed Geometry Image), encoded attribute image (Compressed Attribute Image), encoded additional information (Compressed MetaData), and other additional information from the encoded data.
映像復号部4662は、符号化位置画像及び符号化属性画像を、映像符号化方式を用いて復号することで、位置画像及び属性画像を生成する。なお、映像符号化方式として、公知の任意の符号化方式が用いられてよい。例えば、映像符号化方式は、AVC又はHEVC等である。 The video decoding unit 4662 generates a position image and an attribute image by decoding the encoded position image and encoded attribute image using a video encoding method. Any known encoding method may be used as the video encoding method. For example, the video encoding method may be AVC or HEVC.
付加情報復号部4663は、符号化付加情報を復号することで、マップ情報等を含む付加情報を生成する。 The additional information decoding unit 4663 decodes the encoded additional information to generate additional information including map information, etc.
位置情報生成部4664は、位置画像とマップ情報とを用いて位置情報を生成する。属性情報生成部4665は、属性画像とマップ情報とを用いて属性情報を生成する。 The location information generation unit 4664 generates location information using the location image and map information. The attribute information generation unit 4665 generates attribute information using the attribute image and map information.
第2の復号部4660は、復号に必要な付加情報を復号時に使用し、アプリケーションに必要な付加情報を外部に出力する。 The second decoding unit 4660 uses the additional information required for decoding during decoding and outputs the additional information required for the application to the outside.
以下、PCC符号化方式における課題を説明する。図23は、PCC符号化データに関わるプロトコルスタックを示す図である。図23には、PCC符号化データに、映像(例えばHEVC)又は音声などの他のメディアのデータを多重し、伝送又は蓄積する例を示す。 The following explains the issues with the PCC encoding method. Figure 23 is a diagram showing a protocol stack related to PCC encoded data. Figure 23 shows an example of multiplexing other media data, such as video (e.g., HEVC) or audio, onto PCC encoded data and transmitting or storing it.
多重化方式及びファイルフォーマットは、様々な符号化データを多重し、伝送又は蓄積するための機能を有している。符号化データを伝送又は蓄積するためには、符号化データを多重化方式のフォーマットに変換しなければならない。例えば、HEVCでは、NALユニットと呼ばれるデータ構造に符号化データを格納し、NALユニットをISOBMFFに格納する技術が規定されている。 Multiplexing methods and file formats have the function of multiplexing various types of coded data and transmitting or storing them. To transmit or store coded data, the coded data must be converted into the format of the multiplexing method. For example, HEVC specifies a technology for storing coded data in a data structure called a NAL unit and storing the NAL unit in ISOBMFF.
一方、現在、点群データの符号化方法として第1の符号化方法(Codec1)、及び第2の符号化方法(Codec2)が検討されているが、符号化データの構成、及び符号化データをシステムフォーマットへ格納する方法が定義されておらず、このままでは符号化部におけるMUX処理(多重化)、伝送及び蓄積ができないという課題がある。 On the other hand, currently, the first encoding method (Codec1) and the second encoding method (Codec2) are being considered as methods for encoding point cloud data, but the structure of the encoded data and the method for storing the encoded data in a system format have not been defined, which poses the issue that, as things stand, MUX processing (multiplexing), transmission, and storage in the encoding section are not possible.
なお、以降において、特定の符号化方法の記載がなければ、第1の符号化方法、及び第2の符号化方法のいずれかを示すものとする。 In the following, unless a specific encoding method is specified, it refers to either the first encoding method or the second encoding method.
(実施の形態2)
本実施の形態では、上述した第1の符号化部4630、又は第2の符号化部4650で生成される符号化データ(位置情報(Geometry)、属性情報(Attribute)、付加情報(Metadata))の種別、及び付加情報(メタデータ)の生成方法、及び多重化部における多重処理について説明する。なお、付加情報(メタデータ)は、パラメータセット、又は制御情報と表記することもある。
(Embodiment 2)
In this embodiment, the types of coded data (position information (Geometry), attribute information (Attribute), additional information (Metadata)) generated by the above-described first coding unit 4630 or second coding unit 4650, a method for generating the additional information (metadata), and multiplexing processing in the multiplexing unit will be described. Note that the additional information (metadata) may also be referred to as a parameter set or control information.
本実施の形態では、図4で説明した動的オブジェクト(時間的に変化する三次元点群データ)を例に説明するが、静的オブジェクト(任意の時刻の三次元点群データ)の場合でも同様の方法を用いてもよい。 In this embodiment, we will use the dynamic object (three-dimensional point cloud data that changes over time) described in Figure 4 as an example, but a similar method can also be used in the case of a static object (three-dimensional point cloud data at any time).
図24は、本実施の形態に係る三次元データ符号化装置に含まれる符号化部4801及び多重化部4802の構成を示す図である。符号化部4801は、例えば、上述した第1の符号化部4630又は第2の符号化部4650に対応する。多重化部4802は、上述した多重化部4634又は4656に対応する。 Figure 24 is a diagram showing the configuration of the encoding unit 4801 and multiplexing unit 4802 included in the three-dimensional data encoding device according to this embodiment. The encoding unit 4801 corresponds to, for example, the first encoding unit 4630 or the second encoding unit 4650 described above. The multiplexing unit 4802 corresponds to the multiplexing unit 4634 or 4656 described above.
符号化部4801は、複数のPCC(Point Cloud Compression)フレームの点群データを符号化し、複数の位置情報、属性情報及び付加情報の符号化データ(Multiple Compressed Data)を生成する。 The encoding unit 4801 encodes point cloud data of multiple PCC (Point Cloud Compression) frames and generates encoded data (Multiple Compressed Data) of multiple position information, attribute information, and additional information.
多重化部4802は、複数のデータ種別(位置情報、属性情報及び付加情報)のデータをNALユニット化することで、データを復号装置におけるデータアクセスを考慮したデータ構成に変換する。 The multiplexing unit 4802 converts data of multiple data types (position information, attribute information, and additional information) into NAL units, converting the data into a data structure that takes into account data access in the decoding device.
図25は、符号化部4801で生成される符号化データの構成例を示す図である。図中の矢印は符号化データの復号に係る依存関係を示しており、矢印の元は矢印の先のデータに依存している。つまり、復号装置は、矢印の先のデータを復号し、その復号したデータを用いて矢印の元のデータを復号する。言い換えると、依存するとは、依存元のデータの処理(符号化又は復号等)において依存先のデータが参照(使用)されることを意味する。 Figure 25 is a diagram showing an example of the structure of encoded data generated by the encoding unit 4801. The arrows in the diagram indicate dependencies related to the decoding of encoded data, with the source of the arrow depending on the data at the end of the arrow. In other words, the decoding device decodes the data at the end of the arrow and uses that decoded data to decode the data at the end of the arrow. In other words, dependency means that the data on which the dependency is based is referenced (used) in the processing (encoding, decoding, etc.) of the data on which the dependency is based.
まず、位置情報の符号化データの生成処理について説明する。符号化部4801は、各フレームの位置情報を符号化することで、フレーム毎の符号化位置データ(Compressed Geometry Data)を生成する。また、符号化位置データをG(i)で表す。iはフレーム番号、又はフレームの時刻等を示す。 First, we will explain the process of generating encoded data for position information. The encoding unit 4801 generates encoded position data (Compressed Geometry Data) for each frame by encoding the position information of each frame. Furthermore, the encoded position data is represented as G(i), where i indicates the frame number, the time of the frame, etc.
また、符号化部4801は、各フレームに対応する位置パラメータセット(GPS(i))を生成する。位置パラメータセットは、符号化位置データの復号に使用することが可能なパラメータを含む。また、フレーム毎の符号化位置データは、対応する位置パラメータセットに依存する。 The encoding unit 4801 also generates a location parameter set (GPS(i)) corresponding to each frame. The location parameter set includes parameters that can be used to decode the encoded location data. Furthermore, the encoded location data for each frame depends on the corresponding location parameter set.
また、複数フレームから成る符号化位置データを位置シーケンス(Geometry Sequence)と定義する。符号化部4801は、位置シーケンス内の複数のフレームに対する復号処理に共通に使用するパラメータを格納する位置シーケンスパラメータセット(Geometry Sequence PS:位置SPSとも記す)を生成する。位置シーケンスは、位置SPSに依存する。 Also, encoded position data consisting of multiple frames is defined as a position sequence (Geometry Sequence). The encoding unit 4801 generates a position sequence parameter set (Geometry Sequence PS: also referred to as Position SPS) that stores parameters commonly used in the decoding process for multiple frames in the position sequence. The position sequence depends on the Position SPS.
次に、属性情報の符号化データの生成処理について説明する。符号化部4801は、各フレームの属性情報を符号化することで、フレーム毎の符号化属性データ(Compressed Attribute Data)を生成する。また、符号化属性データをA(i)で表す。また、図25では、属性Xと属性Yとが存在する例を示しており、属性Xの符号化属性データをAX(i)で表し、属性Yの符号化属性データをAY(i)で表す。 Next, the process of generating encoded attribute data for attribute information will be described. The encoding unit 4801 generates encoded attribute data (Compressed Attribute Data) for each frame by encoding the attribute information of each frame. The encoded attribute data is represented by A(i). Figure 25 shows an example in which attribute X and attribute Y exist, and the encoded attribute data for attribute X is represented by AX(i) and the encoded attribute data for attribute Y is represented by AY(i).
また、符号化部4801は、各フレームに対応する属性パラメータセット(APS(i))を生成する。また、属性Xの属性パラメータセットをAXPS(i)で表し、属性Yの属性パラメータセットをAYPS(i)で表す。属性パラメータセットは、符号化属性情報の復号に使用することが可能なパラメータを含む。符号化属性データは、対応する属性パラメータセットに依存する。 The encoding unit 4801 also generates an attribute parameter set (APS(i)) corresponding to each frame. The attribute parameter set for attribute X is represented by AXPS(i), and the attribute parameter set for attribute Y is represented by AYPS(i). The attribute parameter set includes parameters that can be used to decode the encoded attribute information. The encoded attribute data depends on the corresponding attribute parameter set.
また、複数フレームから成る符号化属性データを属性シーケンス(Attribute Sequence)と定義する。符号化部4801は、属性シーケンス内の複数のフレームに対する復号処理に共通に使用するパラメータを格納する属性シーケンスパラメータセット(Attribute Sequence PS:属性SPSとも記す)を生成する。属性シーケンスは、属性SPSに依存する。 Also, encoded attribute data consisting of multiple frames is defined as an attribute sequence. The encoding unit 4801 generates an attribute sequence parameter set (Attribute Sequence PS: also referred to as attribute SPS) that stores parameters commonly used in the decoding process for multiple frames in the attribute sequence. The attribute sequence depends on the attribute SPS.
また、第1の符号化方法では、符号化属性データは符号化位置データに依存する。 Also, in the first encoding method, the encoded attribute data depends on the encoded position data.
また、図25では2種類の属性情報(属性Xと属性Y)が存在する場合の例を示している。2種類の属性情報がある場合は、例えば、2つの符号化部により、それぞれのデータ及びメタデータが生成される。また、例えば、属性情報の種類毎に属性シーケンスが定義され、属性情報の種類毎に属性SPSが生成される。 Figure 25 also shows an example where two types of attribute information (attribute X and attribute Y) exist. When there are two types of attribute information, for example, two encoding units generate respective data and metadata. Also, for example, an attribute sequence is defined for each type of attribute information, and an attribute SPS is generated for each type of attribute information.
なお、図25では、位置情報が1種類、属性情報が2種類である例を示しているが、これに限らず、属性情報は1種類であってもよいし、3種類以上であってもよい。この場合も、同様の方法で符号化データを生成できる。また、属性情報を持たない点群データの場合は、属性情報はなくてもよい。その場合は、符号化部4801は、属性情報に関連するパラメータセットを生成しなくてもよい。 Note that Figure 25 shows an example in which there is one type of position information and two types of attribute information, but this is not limited to this, and there may be one type of attribute information, or three or more types. In this case, encoded data can be generated using a similar method. Also, in the case of point cloud data that does not have attribute information, the attribute information may not be necessary. In that case, the encoding unit 4801 does not need to generate a parameter set related to the attribute information.
次に、付加情報(メタデータ)の生成処理について説明する。符号化部4801は、PCCストリーム全体のパラメータセットであるPCCストリームPS(PCC Stream PS:ストリームPSとも記す)を生成する。符号化部4801は、ストリームPSに、1又は複数の位置シーケンス及び1又は複数の属性シーケンスに対する復号処理に共通に使用することができるパラメータを格納する。例えば、ストリームPSには、点群データのコーデックを示す識別情報、及び符号化に使用されたアルゴリズムを示す情報等が含まれる。位置シーケンス及び属性シーケンスはストリームPSに依存する。 Next, the process of generating additional information (metadata) will be described. The encoding unit 4801 generates a PCC stream PS (also referred to as stream PS), which is a parameter set for the entire PCC stream. The encoding unit 4801 stores parameters in the stream PS that can be used in common for decoding processes for one or more position sequences and one or more attribute sequences. For example, the stream PS includes identification information indicating the codec for the point cloud data, information indicating the algorithm used for encoding, and the like. The position sequence and attribute sequence depend on the stream PS.
次に、アクセスユニット及びGOFについて説明する。本実施の形態では、新たにアクセスユニット(Access Unit:AU)、及びGOF(Group of Frame)の考え方を導入する。Next, we will explain access units and GOFs. In this embodiment, we introduce the new concepts of access units (AUs) and GOFs (Groups of Frames).
アクセスユニットは、復号時にデータにアクセスするため基本単位であり、1つ以上のデータ及び1つ以上のメタデータで構成される。例えば、アクセスユニットは、同一時刻の位置情報と1又は複数の属性情報とで構成される。GOFは、ランダムアクセス単位であり、1つ以上のアクセスユニットで構成される。 An access unit is a basic unit for accessing data during decoding, and is composed of one or more pieces of data and one or more pieces of metadata. For example, an access unit is composed of position information at the same time and one or more pieces of attribute information. A GOF is a random access unit and is composed of one or more access units.
符号化部4801は、アクセスユニットの先頭を示す識別情報として、アクセスユニットヘッダ(AU Header)を生成する。符号化部4801は、アクセスユニットヘッダに、アクセスユニットに係るパラメータを格納する。例えば、アクセスユニットヘッダは、アクセスユニットに含まれる符号化データの構成又は情報を含む。また、アクセスユニットヘッダは、アクセスユニットに含まれるデータに共通に用いられるパラメータ、例えば、符号化データの復号に係るパラメータなどを含む。 The encoding unit 4801 generates an access unit header (AU Header) as identification information indicating the beginning of an access unit. The encoding unit 4801 stores parameters related to the access unit in the access unit header. For example, the access unit header includes the configuration or information of the encoded data included in the access unit. The access unit header also includes parameters commonly used for the data included in the access unit, such as parameters related to the decoding of the encoded data.
なお、符号化部4801は、アクセスユニットヘッダの代わりに、アクセスユニットに係るパラメータを含まないアクセスユニットデリミタを生成してもよい。このアクセスユニットデリミタは、アクセスユニットの先頭を示す識別情報として用いられる。復号装置は、アクセスユニットヘッダ又はアクセスユニットデリミタを検出することにより、アクセスユニットの先頭を識別する。 In addition, instead of an access unit header, the encoding unit 4801 may generate an access unit delimiter that does not include parameters related to the access unit. This access unit delimiter is used as identification information that indicates the start of the access unit. The decoding device identifies the start of the access unit by detecting the access unit header or access unit delimiter.
次に、GOF先頭の識別情報の生成について説明する。符号化部4801は、GOFの先頭を示す識別情報として、GOFヘッダ(GOF Header)を生成する。符号化部4801は、GOFヘッダに、GOFに係るパラメータを格納する。例えば、GOFヘッダは、GOFに含まれる符号化データの構成又は情報を含む。また、GOFヘッダは、GOFに含まれるデータに共通に用いられるパラメータ、例えば、符号化データの復号に係るパラメータなどを含む。Next, we will explain how to generate identification information for the start of a GOF. The encoding unit 4801 generates a GOF header as identification information that indicates the start of a GOF. The encoding unit 4801 stores parameters related to the GOF in the GOF header. For example, the GOF header includes the structure or information of the encoded data included in the GOF. The GOF header also includes parameters that are commonly used for the data included in the GOF, such as parameters related to the decoding of the encoded data.
なお、符号化部4801は、GOFヘッダの代わりに、GOFに係るパラメータを含まないGOFデリミタを生成してもよい。このGOFデリミタは、GOFの先頭を示す識別情報として用いられる。復号装置は、GOFヘッダ又はGOFデリミタを検出することにより、GOFの先頭を識別する。 In addition, instead of a GOF header, the encoding unit 4801 may generate a GOF delimiter that does not include parameters related to the GOF. This GOF delimiter is used as identification information indicating the beginning of the GOF. The decoding device identifies the beginning of the GOF by detecting the GOF header or GOF delimiter.
PCC符号化データにおいて、例えば、アクセスユニットはPCCフレーム単位であると定義される。復号装置は、アクセスユニット先頭の識別情報に基づき、PCCフレームにアクセスする。 In PCC encoded data, for example, an access unit is defined as a PCC frame. A decoding device accesses a PCC frame based on the identification information at the beginning of the access unit.
また、例えば、GOFは1つのランダムアクセス単位であると定義される。復号装置は、GOF先頭の識別情報に基づき、ランダムアクセス単位にアクセスする。例えば、PCCフレームが互いに依存関係がなく、単独で復号可能であれば、PCCフレームをランダムアクセス単位と定義してもよい。 Also, for example, a GOF is defined as one random access unit. The decoding device accesses the random access unit based on the identification information at the beginning of the GOF. For example, if PCC frames are not dependent on each other and can be decoded independently, the PCC frames may be defined as random access units.
なお、1つのアクセスユニットに2つ以上のPCCフレームが割り当てられてもよいし、1つのGOFに複数のランダムアクセス単位が割り当てられてもよい。 In addition, two or more PCC frames may be assigned to one access unit, and multiple random access units may be assigned to one GOF.
また、符号化部4801は、上記以外のパラメータセット又はメタデータを定義し、生成してもよい。例えば、符号化部4801は、復号時に必ずしも用いない可能性のあるパラメータ(オプションのパラメータ)を格納するSEI(Supplemental Enhancement Information)を生成してもよい。 The encoding unit 4801 may also define and generate parameter sets or metadata other than those described above. For example, the encoding unit 4801 may generate SEI (Supplemental Enhancement Information) that stores parameters (optional parameters) that may not necessarily be used during decoding.
次に、符号化データの構成、及び符号化データのNALユニットへの格納方法を説明する。 Next, we will explain the structure of encoded data and how encoded data is stored in NAL units.
例えば、符号化データの種類毎にデータフォーマットが規定される。図26は、符号化データ及びNALユニットの例を示す図である。For example, a data format is defined for each type of encoded data. Figure 26 shows an example of encoded data and NAL units.
例えば、図26に示すように符号化データは、ヘッダとペイロードとを含む。なお、符号化データは、符号化データ、ヘッダ又はペイロードの長さ(データ量)を示す長さ情報を含んでもよい。また、符号化データは、ヘッダを含まなくてもよい。 For example, as shown in FIG. 26, the encoded data includes a header and a payload. The encoded data may also include length information indicating the length (amount of data) of the encoded data, header, or payload. The encoded data may also not include a header.
ヘッダは、例えば、データを特定するための識別情報を含む。この識別情報は、例えば、データ種別又はフレーム番号を示す。 The header contains, for example, identification information to identify the data. This identification information indicates, for example, the data type or frame number.
ヘッダは、例えば、参照関係を示す識別情報を含む。この識別情報は、例えば、データ間に依存関係がある場合にヘッダに格納され、参照元から参照先を参照するための情報である。例えば、参照先のヘッダには、当該データを特定するための識別情報が含まれる。参照元のヘッダには、参照先を示す識別情報が含まれる。 The header contains, for example, identification information indicating the reference relationship. This identification information is stored in the header when, for example, there is a dependency between data, and is information used to refer to the referenced data from the reference source. For example, the header of the referenced data contains identification information to identify the data. The header of the reference source contains identification information indicating the referenced data.
なお、他の情報から参照先又は参照元を識別可能又は導出可能である場合は、データを特定するための識別情報、又は参照関係を示す識別情報を省略してもよい。 In addition, if the reference destination or reference source can be identified or derived from other information, the identification information for identifying the data or the identification information indicating the reference relationship may be omitted.
多重化部4802は、符号化データを、NALユニットのペイロードに格納する。NALユニットヘッダには、符号化データの識別情報であるpcc_nal_unit_typeが含まれる。図27は、pcc_nal_unit_typeのセマンティクスの例を示す図である。 The multiplexing unit 4802 stores the encoded data in the payload of the NAL unit. The NAL unit header includes pcc_nal_unit_type, which is identification information for the encoded data. Figure 27 shows an example of the semantics of pcc_nal_unit_type.
図27に示すように、pcc_codec_typeがコーデック1(Codec1:第1の符号化方法)である場合、pcc_nal_unit_typeの値0~10は、コーデック1における、符号化位置データ(Geometry)、符号化属性Xデータ(AttributeX)、符号化属性Yデータ(AttributeY)、位置PS(Geom.PS)、属性XPS(AttrX.PS)、属性YPS(AttrX.PS)、位置SPS(Geometry Sequence PS)、属性XSPS(AttributeX Sequence PS)、属性YSPS(AttributeY Sequence PS)、AUヘッダ(AU Header)、GOFヘッダ(GOF Header)に割り当てられる。また、値11以降は、コーデック1の予備に割り当てられる。 As shown in Figure 27, when pcc_codec_type is Codec 1 (Codec1: first encoding method), the values 0 to 10 of pcc_nal_unit_type correspond to the encoded position data (Geometry), encoded attribute X data (AttributeX), encoded attribute Y data (AttributeY), position PS (Geom.PS), attribute XPS (AttrX.PS), attribute YPS (AttrX.PS), position SPS (Geometry Sequence PS), attribute XSPS (AttributeX Sequence PS), attribute YSPS (AttributeY Sequence PS), AU header (AU Header), and GOF header (GOF Values 11 and above are assigned as spares for Codec 1.
pcc_codec_typeがコーデック2(Codec2:第2の符号化方法)である場合、pcc_nal_unit_typeの値0~2は、コーデックのデータA(DataA)、メタデータA(MetaDataA)、メタデータB(MetaDataB)に割り当てられる。また、値3以降は、コーデック2の予備に割り当てられる。 When pcc_codec_type is Codec 2 (Codec2: second encoding method), pcc_nal_unit_type values 0 to 2 are assigned to codec data A (DataA), metadata A (MetaDataA), and metadata B (MetaDataB). Values 3 and above are assigned as spares for Codec 2.
(実施の形態3)
実施の形態3に係る三次元データ符号化方法では、複数の三次元点の位置情報を、当該位置情報に基づいて生成した予測木を用いて符号化する。
(Embodiment 3)
In the three-dimensional data encoding method according to the third embodiment, position information of a plurality of three-dimensional points is encoded using a prediction tree generated based on the position information.
図28は、実施の形態3に係る、三次元データ符号化方法に用いられる予測木の一例を示す図である。図29は、実施の形態3に係る三次元データ符号化方法の一例を示すフローチャートである。図30は、実施の形態3に係る三次元データ復号方法の一例を示すフローチャートである。 Figure 28 is a diagram showing an example of a prediction tree used in a three-dimensional data encoding method according to embodiment 3. Figure 29 is a flowchart showing an example of a three-dimensional data encoding method according to embodiment 3. Figure 30 is a flowchart showing an example of a three-dimensional data decoding method according to embodiment 3.
図28及び図29に示されるように、三次元データ符号化方法においては、複数の三次元点を用いて予測木を生成し、その後、予測木の各ノードが含むノード情報を符号化する。これにより、符号化されたノード情報を含むビットストリームが得られる。各ノード情報は、例えば、予測木の1つのノードに関する情報である。各ノード情報は、例えば、1つのノードの位置情報、当該1つのノードのインデックス、当該1つのノードが有する子ノードの数、当該1つのノードの位置情報を符号化するために用いられる予測モード、及び、予測残差を含む。 As shown in Figures 28 and 29, in the three-dimensional data encoding method, a prediction tree is generated using multiple three-dimensional points, and then the node information contained in each node of the prediction tree is encoded. This results in a bitstream containing the encoded node information. Each piece of node information is, for example, information about one node of the prediction tree. Each piece of node information includes, for example, the position information of the node, the index of the node, the number of child nodes the node has, the prediction mode used to encode the position information of the node, and the prediction residual.
また、図28及び図30に示される様に、三次元データ復号方法においては、ビットストリームに含まれる符号化された各ノード情報を復号し、その後、予測木を生成しながら位置情報を復号する。 Also, as shown in Figures 28 and 30, in the three-dimensional data decoding method, each encoded node information contained in the bit stream is decoded, and then the position information is decoded while generating a prediction tree.
次に、予測木の生成方法について、図31を用いて説明する。 Next, we will explain how to generate a prediction tree using Figure 31.
図31は、実施の形態3に係る予測木の生成方法を説明するための図である。 Figure 31 is a diagram illustrating a method for generating a prediction tree in embodiment 3.
予測木の生成方法では、図31の(a)に示すように、三次元データ符号化装置は、まず、予測木の初期点として点0を追加する。点0の位置情報は、(x0、y0、z0)の3つの要素を含む座標で示される。点0の位置情報は、三軸直交座標系の座標で示されてもよいし、極座標系の座標で示されてもよい。 In the prediction tree generation method, as shown in (a) of Figure 31, the three-dimensional data encoding device first adds point 0 as the initial point of the prediction tree. The position information of point 0 is represented by coordinates including three elements: (x0, y0, z0). The position information of point 0 may be represented by coordinates in a three-axis Cartesian coordinate system or by coordinates in a polar coordinate system.
child_countは、当該child_countが設定されているノードに1つの子ノードが追加される度に+1される。予測木の生成完了後の各ノードのchild_countは、各ノードが有する子ノードの数を示すこととなり、ビットストリームに付加される。pred_modeは、各ノードの位置情報の値を予測するための予測モードを示す。予測モードの詳細は、後述する。 child_count is incremented by +1 each time a child node is added to the node for which child_count is set. After the prediction tree is generated, the child_count of each node indicates the number of child nodes that each node has, and is added to the bitstream. pred_mode indicates the prediction mode used to predict the value of the position information of each node. Details of prediction modes will be described later.
次に、図31の(b)に示すように、三次元データ符号化装置は、点1を予測木に追加する。この際、三次元データ符号化装置は、既に予測木に追加されている点群から点1の最近傍点を探索し、その最近傍点の子ノードとして点1を追加してもよい。点1の位置情報は、(x1、y1、z1)の3つの要素を含む座標で示される。点1の位置情報は、三軸直交座標系の座標で示されてもよいし、極座標系の座標で示されてもよい。図31の場合、点0が点1の最近傍点となり、点0の子ノードとして点1が追加される。そして、三次元データ符号化装置は、点0のchild_countで示される値を1増加させる。 Next, as shown in (b) of Figure 31, the three-dimensional data encoding device adds point 1 to the prediction tree. At this time, the three-dimensional data encoding device may search for the closest point to point 1 from the group of points already added to the prediction tree, and add point 1 as a child node of that closest point. The position information of point 1 is represented by coordinates including three elements: (x1, y1, z1). The position information of point 1 may be represented by coordinates in a three-axis Cartesian coordinate system, or by coordinates in a polar coordinate system. In the case of Figure 31, point 0 is the closest point to point 1, and point 1 is added as a child node of point 0. Then, the three-dimensional data encoding device increments the value represented by child_count of point 0 by 1.
なお、各ノードの位置情報の予測値は、予測木にノードを追加した際に算出されてもよい。例えば、図31の(b)の場合、三次元データ符号化装置は、点1を点0の子ノードとして追加し、点0の位置情報を予測値として算出してもよい。その場合、pred_mode=1と設定されてもよい。pred_modeは、予測モードを示す予測モード情報(予測モード値)である。また、三次元データ符号化装置は、予測値の算出後、点1のresidual_value(予測残差)を算出してもよい。ここで、residual_valueは、各ノードの位置情報からpred_modeで示される予測モードで算出された予測値を引いた差分値である。このように、三次元データ符号化方法では、位置情報そのものではなく、予測値からの差分値を符号化することで符号化効率を向上できる。 Note that the predicted value of the position information of each node may be calculated when the node is added to the prediction tree. For example, in the case of (b) in Figure 31, the three-dimensional data encoding device may add point 1 as a child node of point 0 and calculate the position information of point 0 as the predicted value. In this case, pred_mode may be set to 1. pred_mode is prediction mode information (prediction mode value) indicating the prediction mode. Furthermore, after calculating the predicted value, the three-dimensional data encoding device may calculate the residual_value (prediction residual) of point 1. Here, residual_value is the difference value obtained by subtracting the predicted value calculated in the prediction mode indicated by pred_mode from the position information of each node. In this way, the three-dimensional data encoding method can improve encoding efficiency by encoding the difference value from the predicted value rather than the position information itself.
次に、図31の(c)に示すように、三次元データ符号化装置は、点2を予測木に追加する。この際、三次元データ符号化装置は、既に予測木に追加されている点群から点2の最近傍点を探索し、その最近傍点の子ノードとして点2を追加してもよい。点2の位置情報は、(x2、y2、z2)の3つの要素を含む座標で示される。点2の位置情報は、三軸直交座標系の座標で示されてもよいし、極座標系の座標で示されてもよい。図31の場合、点1が点2の最近傍点となり、点1の子ノードとして点2が追加される。そして、三次元データ符号化装置は、点1のchild_countで示される値を1増加させる。 Next, as shown in (c) of Figure 31, the three-dimensional data encoding device adds point 2 to the prediction tree. At this time, the three-dimensional data encoding device may search for the closest point to point 2 from the group of points already added to the prediction tree, and add point 2 as a child node of that closest point. The position information of point 2 is represented by coordinates including three elements: (x2, y2, z2). The position information of point 2 may be represented by coordinates in a three-axis Cartesian coordinate system, or by coordinates in a polar coordinate system. In the case of Figure 31, point 1 is the closest point to point 2, and point 2 is added as a child node of point 1. Then, the three-dimensional data encoding device increments the value represented by child_count of point 1 by 1.
次に、図31の(d)に示すように、三次元データ符号化装置は、点3を予測木に追加する。この際、三次元データ符号化装置は、既に予測木に追加されている点群から点3の最近傍点を探索し、その最近傍点の子ノードとして点3を追加してもよい。点3の位置情報は、(x3、y3、z3)の3つの要素を含む座標で示される。点3の位置情報は、三軸直交座標系の座標で示されてもよいし、極座標系の座標で示されてもよい。図31の場合、点0が点3の最近傍点となり、点0の子ノードとして点3が追加される。そして、三次元データ符号化装置は、点0のchild_countで示される値を1増加させる。 Next, as shown in (d) of Figure 31, the three-dimensional data encoding device adds point 3 to the prediction tree. At this time, the three-dimensional data encoding device may search for the closest point to point 3 from the group of points already added to the prediction tree, and add point 3 as a child node of that closest point. The position information of point 3 is represented by coordinates including three elements: (x3, y3, z3). The position information of point 3 may be represented by coordinates in a three-axis Cartesian coordinate system, or by coordinates in a polar coordinate system. In the case of Figure 31, point 0 is the closest point to point 3, and point 3 is added as a child node of point 0. Then, the three-dimensional data encoding device increments the value represented by child_count of point 0 by 1.
このように、三次元データ符号化装置は、全ての点を予測木に追加し、予測木の生成を完了する。予測木の生成が完了すると、最終的にchild_count=0を有するノードが予測木のleafとなる。三次元データ符号化装置は、予測木の生成が完了後、rootのノードからdepth優先順に選択した各ノードのchild_count、pred_mode、及び、residual_valueを符号化する。つまり、三次元データ符号化装置は、depth優先順にノードを選択する場合、選択したノードの次のノードとして、当該選択したノードの1以上の子ノードのうちまだ選択されていない子ノードを選択する。三次元データ符号化装置は、選択したノードに子ノードがない場合、選択したノードの親ノードの未選択の他の子ノードを選択する。 In this way, the three-dimensional data encoding device adds all points to the prediction tree and completes the generation of the prediction tree. When the generation of the prediction tree is complete, the node with child_count = 0 ultimately becomes the leaf of the prediction tree. After the generation of the prediction tree is complete, the three-dimensional data encoding device encodes the child_count, pred_mode, and residual_value of each node selected in depth priority order from the root node. In other words, when the three-dimensional data encoding device selects a node in depth priority order, it selects an unselected child node from one or more child nodes of the selected node as the next node of the selected node. If the selected node does not have a child node, the three-dimensional data encoding device selects another unselected child node of the parent node of the selected node.
なお、符号化順は、depth優先順に限らずに、例えば幅優先(width first)順でも構わない。三次元データ符号化装置は、幅優先順にノードを選択する場合、選択したノードの次のノードとして、当該選択したノードと同一のdepth(階層)の1以上のノードのうちまだ選択されていないノードを選択する。三次元データ符号化装置は、選択したノードと同一のdepthのノードがない場合、次のdepthの1以上のノードのうちまだ選択されていないノードを選択する。 The encoding order is not limited to depth-first order, and may be width-first order, for example. When selecting a node in breadth-first order, the three-dimensional data encoding device selects an unselected node from among one or more nodes at the same depth (layer) as the selected node as the next node after the selected node. If there is no node at the same depth as the selected node, the three-dimensional data encoding device selects an unselected node from among one or more nodes at the next depth.
なお、点0~3は、複数の三次元点の一例である。 Note that points 0 to 3 are examples of multiple three-dimensional points.
なお、上記の三次元データ符号化方法では、child_count、pred_mode、及び、residual_valueを、各点を予測木に追加した際に算出するとしたが、必ずしもこれに限らず、例えば、予測木の生成完了後に、それらを算出してもよい。 In the above three-dimensional data encoding method, child_count, pred_mode, and residual_value are calculated when each point is added to the prediction tree, but this is not necessarily limited to this; for example, they may be calculated after the prediction tree has been generated.
複数の三次元点の三次元データ符号化装置への入力順は、入力された三次元点をMorton orderの昇順または降順に並べ替えて、その先頭の三次元点から順に処理してもよい。これにより、三次元データ符号化装置は、処理対象の三次元点の最近傍点を効率よく探索でき、符号化効率を向上できる。また、三次元データ符号化装置は、三次元点を並べ替えずに入力された順に処理してもよい。例えば、三次元データ符号化装置は、複数の三次元点の入力順に分岐の無い予測木を生成してもよい。具体的には、三次元データ符号化装置は、複数の三次元点の入力順において、入力されたの三次元点の次に入力された三次元点を所定の三次元点の子ノードとして追加してもよい。 The input order of multiple 3D points to the 3D data encoding device may be determined by sorting the input 3D points in ascending or descending Morton order and processing them in order, starting with the first 3D point. This allows the 3D data encoding device to efficiently search for the nearest neighbor of the 3D point being processed, improving encoding efficiency. Alternatively, the 3D data encoding device may process the 3D points in the order they are input without sorting them. For example, the 3D data encoding device may generate a prediction tree without branches based on the input order of multiple 3D points. Specifically, the 3D data encoding device may add the 3D point that is input after the first 3D point in the input order of multiple 3D points as a child node of a given 3D point.
次に、予測モードの第1の例について、図32を用いて説明する。図32は、実施の形態3に係る予測モードの第1の例を説明するための図である。図32は、予測木の一部を示す図である。Next, a first example of a prediction mode will be described using Figure 32. Figure 32 is a diagram for explaining a first example of a prediction mode according to embodiment 3. Figure 32 is a diagram showing a portion of a prediction tree.
予測モードは、以下に示すとおり、8つ設定されてもよい。例えば、図32に示すように、点cの予測値を算出する場合を例に説明する。予測木では、点cの親ノードは点p0であり、点cの祖父ノードは点p1であり、点cの曾祖父ノードは点p2であることが示されている。なお、点c、点p0、点p1、及び、点p2は、複数の三次元点の一例である。 Eight prediction modes may be set, as shown below. For example, as shown in Figure 32, the case of calculating the predicted value of point c will be described as an example. In the prediction tree, it is shown that the parent node of point c is point p0, the grandparent node of point c is point p1, and the great-grandparent node of point c is point p2. Note that points c, p0, p1, and p2 are examples of multiple three-dimensional points.
予測モード値が0である予測モード(以下、予測モード0という)は、予測なしに設定されてもよい。つまり、三次元データ符号化装置は、予測モード0において、入力された点cの位置情報を、当該点cの予測値として算出してもよい。 A prediction mode with a prediction mode value of 0 (hereinafter referred to as prediction mode 0) may be set to no prediction. In other words, in prediction mode 0, the three-dimensional data encoding device may calculate the position information of the input point c as the predicted value of that point c.
また、予測モード値が1である予測モード(以下、予測モード1という)は、点p0との差分予測に設定されてもよい。つまり、三次元データ符号化装置は、点cの親ノードである点p0の位置情報を、当該点cの予測値として算出してもよい。 In addition, a prediction mode with a prediction mode value of 1 (hereinafter referred to as prediction mode 1) may be set to differential prediction with respect to point p0. In other words, the three-dimensional data encoding device may calculate the position information of point p0, which is the parent node of point c, as the predicted value of point c.
また、予測モード値が2である予測モード(以下、予測モード2という)は、点p0と、点p1とによる線形予測に設定されてもよい。つまり、三次元データ符号化装置は、点cの親ノードである点p0の位置情報と、点cの祖父ノードである点p1の位置情報とを用いた線形予測による予測結果を、点cの予測値として算出してもよい。具体的には、三次元データ符号化装置は、下記の式T1を用いて予測モード2における点cの予測値を算出する。 Furthermore, a prediction mode with a prediction mode value of 2 (hereinafter referred to as prediction mode 2) may be set to linear prediction using points p0 and p1. In other words, the three-dimensional data encoding device may calculate the predicted value of point c as the prediction result of linear prediction using the position information of point p0, which is the parent node of point c, and the position information of point p1, which is the grandparent node of point c. Specifically, the three-dimensional data encoding device calculates the predicted value of point c in prediction mode 2 using the following formula T1:
予測値=2×p0-p1 (式T1)
式T1において、p0は点p0の位置情報を示し、p1は点p1の位置情報を示す。
Predicted value = 2 × p0 - p1 (Equation T1)
In the formula T1, p0 indicates the position information of the point p0, and p1 indicates the position information of the point p1.
また、予測モード値が3である予測モード(以下、予測モード3という)は、点p0、点p1及び点p2を用いたParallelogram予測に設定されてもよい。つまり、三次元データ符号化装置は、点cの親ノードである点p0の位置情報と、点cの祖父ノードである点p1の位置情報と、点cの曾祖父ノードである点p2の位置情報とを用いたParallelogram予測による予測結果を、点cの予測値として算出してもよい。具体的には、三次元データ符号化装置は、下記の式T2を用いて予測モード3における点cの予測値を算出する。 Furthermore, a prediction mode with a prediction mode value of 3 (hereinafter referred to as prediction mode 3) may be set to parallelogram prediction using points p0, p1, and p2. In other words, the three-dimensional data encoding device may calculate the predicted value of point c as the result of parallelogram prediction using the position information of point p0, which is the parent node of point c, the position information of point p1, which is the grandparent node of point c, and the position information of point p2, which is the great-grandparent node of point c. Specifically, the three-dimensional data encoding device calculates the predicted value of point c in prediction mode 3 using the following formula T2:
予測値=p0+p1-p2 (式T2) Predicted value = p0 + p1 - p2 (Equation T2)
式T2において、p0は点p0の位置情報を示し、p1は点p1の位置情報を示し、p2は点p2の位置情報を示す。 In equation T2, p0 indicates the position information of point p0, p1 indicates the position information of point p1, and p2 indicates the position information of point p2.
また、予測モード値が4である予測モード(以下、予測モード4という)は、点p1との差分予測に設定されてもよい。つまり、三次元データ符号化装置は、点cの祖父ノードである点p1の位置情報を、当該点cの予測値として算出してもよい。 In addition, a prediction mode with a prediction mode value of 4 (hereinafter referred to as prediction mode 4) may be set to differential prediction with respect to point p1. In other words, the three-dimensional data encoding device may calculate the position information of point p1, which is the grandparent node of point c, as the predicted value of point c.
また、予測モード値が5である予測モード(以下、予測モード5という)は、点p2との差分予測に設定されてもよい。つまり、三次元データ符号化装置は、点cの曾祖父ノードである点p2の位置情報を、当該点cの予測値として算出してもよい。 In addition, a prediction mode with a prediction mode value of 5 (hereinafter referred to as prediction mode 5) may be set to differential prediction with respect to point p2. In other words, the three-dimensional data encoding device may calculate the position information of point p2, which is the great-grandfather node of point c, as the predicted value of point c.
また、予測モード値が6である予測モード(以下、予測モード6という)は、点p0、点p1、及び、点p2のいずれか2個以上の位置情報の平均に設定されてもよい。つまり、三次元データ符号化装置は、点cの親ノードである点p0の位置情報と、点cの祖父ノードである点p1の位置情報と、点cの曾祖父ノードである点p2の位置情報とのうちの2以上の位置情報の平均値を、点cの予測値として算出してもよい。例えば、三次元データ符号化装置は、点p0の位置情報と、点p1の位置情報とを予測値の算出に用いる場合、次の式T3を用いて予測モード6における点cの予測値を算出する。 Furthermore, a prediction mode with a prediction mode value of 6 (hereinafter referred to as prediction mode 6) may be set to the average of the position information of two or more of points p0, p1, and p2. In other words, the three-dimensional data encoding device may calculate the predicted value of point c as the average of two or more of the position information of point p0, which is the parent node of point c, the position information of point p1, which is the grandparent node of point c, and the position information of point p2, which is the great-grandparent node of point c. For example, when the three-dimensional data encoding device uses the position information of point p0 and the position information of point p1 to calculate the predicted value, it calculates the predicted value of point c in prediction mode 6 using the following formula T3:
予測値=(p0+p1)/2 (式T3) Predicted value = (p0 + p1)/2 (Equation T3)
式T3において、p0は点p0の位置情報を示し、p1は点p1の位置情報を示す。 In equation T3, p0 represents the position information of point p0, and p1 represents the position information of point p1.
また、予測モード値が7である予測モード(以下、予測モード7という)は、点p0及び点p1の間の距離d0と、点p2及び点p1の間の距離d1とを用いた非線形予測に設定されてもよい。つまり、三次元データ符号化装置は、距離d0と、距離d1とを用いた非線形予測による予測結果を、点cの予測値として算出してもよい。 Furthermore, a prediction mode with a prediction mode value of 7 (hereinafter referred to as prediction mode 7) may be set to nonlinear prediction using the distance d0 between points p0 and p1 and the distance d1 between points p2 and p1. In other words, the three-dimensional data encoding device may calculate the prediction result of nonlinear prediction using the distance d0 and the distance d1 as the predicted value of point c.
なお、各予測モードに割当てる予測方法は、上記例に限らない。また、上記の8つの予測モードと、上記の8つの予測方法とは、上記の組み合わせでなくてもよく、どのような組み合わせであってもよい。例えば、予測モードを算術符号化などのエントロピー符号化を用いて符号化する場合、予測モード0に使用頻度が高い予測方法が割り当てられてもよい。これにより、符号化効率を向上できる。また、三次元データ符号化装置は、符号化処理を進めながら、予測モードの使用頻度に合わせて動的に予測モードの割り当てを変更することで符号化効率を向上させてもよい。三次元データ符号化装置は、例えば、符号化時の各予測モードの使用頻度をカウントし、使用頻度が高い予測方法ほどより小さい値で示される予測モードを割り当ててもよい。これにより符号化効率を向上できる。なお、Mは、予測モードの数を示す予測モード数であり、上記例の場合、予測モードは、予測モード0~7の8つあるため、M=8となる。 Note that the prediction methods assigned to each prediction mode are not limited to the above example. Furthermore, the above eight prediction modes and the above eight prediction methods do not have to be combined as described above, and any combination is possible. For example, when encoding prediction modes using entropy coding such as arithmetic coding, a frequently used prediction method may be assigned to prediction mode 0. This improves encoding efficiency. Furthermore, the three-dimensional data encoding device may improve encoding efficiency by dynamically changing the assignment of prediction modes according to the frequency of use of prediction modes as the encoding process progresses. For example, the three-dimensional data encoding device may count the frequency of use of each prediction mode during encoding, and assign prediction modes indicated by smaller values to more frequently used prediction methods. This improves encoding efficiency. Note that M is the number of prediction modes, indicating the number of prediction modes. In the above example, there are eight prediction modes, prediction modes 0 to 7, so M = 8.
三次元データ符号化装置は、三次元点の位置情報(x,y,z)の予測値(px,py,pz)として、符号化対象の三次元点の周囲の三次元点のうち、符号化対象の三次元点に距離が近い三次元点の位置情報を用いて、符号化対象の三次元点の位置情報の算出に用いる予測値を算出してもよい。また、三次元データ符号化装置は、予測モード情報(pred_mode)を三次元点毎に付加し、予測モードに応じて算出される予測値を選択できるようにしてもよい。 The three-dimensional data encoding device may calculate a predicted value (px,py,pz) of the position information (x,y,z) of a three-dimensional point to be encoded using the position information of three-dimensional points that are close to the three-dimensional point to be encoded among the three-dimensional points surrounding the three-dimensional point to be encoded. The three-dimensional data encoding device may also add prediction mode information (pred_mode) to each three-dimensional point, allowing the predicted value to be calculated to be selected according to the prediction mode.
例えば、総数がMの予測モードにおいて、予測モード0に最近傍点の三次元点p0の位置情報を割り当て、・・・、予測モードM-1に三次元点p2の位置情報を割り当て、予測に使用した予測モードを三次元点毎にビットストリームに付加することが考えられる。 For example, in a total of M prediction modes, the position information of the nearest three-dimensional point p0 could be assigned to prediction mode 0, ..., the position information of three-dimensional point p2 could be assigned to prediction mode M-1, and the prediction mode used for prediction could be added to the bitstream for each three-dimensional point.
なお、予測モード数Mは、ビットストリームに付加されても構わない。また、予測モード数Mは、ビットストリームに付加されずに規格のprofile、level等で値が規定されても構わない。また、予測モード数Mは、予測に用いる三次元点数Nから算出された値が用いられても構わない。例えば予測モード数Mは、M=N+1により算出されても構わない。 The number of prediction modes M may be added to the bitstream. Alternatively, the number of prediction modes M may not be added to the bitstream, but may have a value specified in the profile, level, etc. of the standard. Alternatively, the number of prediction modes M may be a value calculated from the number of three-dimensional points N used for prediction. For example, the number of prediction modes M may be calculated as M = N + 1.
図33は、実施の形態3に係る、各予測モードにおいて算出される予測値を示すテーブルの第2の例を示す図である。 Figure 33 shows a second example of a table showing predicted values calculated in each prediction mode in embodiment 3.
図33に示されるテーブルは、予測に用いる三次元点数N=4、かつ、予測モード数M=5の場合の例である。 The table shown in Figure 33 is an example where the number of three-dimensional points used for prediction N = 4 and the number of prediction modes M = 5.
第2の例において、点cの位置情報の予測値は、点p0、点p1、及び、点p2の少なくともいずれか1つの位置情報を用いて算出される。予測モードは、符号化対象の三次元点毎に付加される。予測値は、付加された予測モードに応じた値に算出される。 In the second example, the predicted value of the position information of point c is calculated using the position information of at least one of points p0, p1, and p2. A prediction mode is added to each three-dimensional point to be encoded. The predicted value is calculated to a value according to the added prediction mode.
図34は、実施の形態3に係る、各予測モードにおいて算出される予測値を示すテーブルの第2の例の具体例を示す図である。 Figure 34 is a diagram showing a specific example of a second example of a table showing predicted values calculated in each prediction mode in embodiment 3.
三次元データ符号化装置は、例えば、予測モード1を選択し、符号化対象の三次元点の位置情報(x、y、z)を、それぞれ予測値(p0x、p0y、p0z)を用いて符号化してもよい。この場合、選択された予測モード1を示す予測モード値である「1」がビットストリームに付加される。 The three-dimensional data encoding device may, for example, select prediction mode 1 and encode the position information (x, y, z) of the three-dimensional point to be encoded using the respective predicted values (p0x, p0y, p0z). In this case, a prediction mode value of "1" indicating the selected prediction mode 1 is added to the bitstream.
このように、三次元データ符号化装置は、予測モードの選択において、符号化対象の三次元点の位置情報が含む3つの要素の各要素の予測値を算出するための1つの予測モードとして、3つの要素について共通した予測モードを選択してもよい。 In this way, when selecting a prediction mode, the three-dimensional data encoding device may select a prediction mode that is common to the three elements as one prediction mode for calculating predicted values for each of the three elements included in the position information of the three-dimensional point to be encoded.
図35は、実施の形態3に係る、各予測モードにおいて算出される予測値を示すテーブルの第3の例を示す図である。 Figure 35 is a diagram showing a third example of a table showing predicted values calculated in each prediction mode in embodiment 3.
図35に示されるテーブルは、予測に用いる三次元点数N=2、かつ、予測モード数M=5の場合の例である。 The table shown in Figure 35 is an example where the number of three-dimensional points used for prediction N = 2 and the number of prediction modes M = 5.
第3の例において、点cの位置情報の予測値は、点p0及び点p1の少なくともいずれか1つの位置情報を用いて算出される。予測モードは、符号化対象の三次元点毎に付加される。予測値は、付加された予測モードに応じた値に算出される。 In the third example, the predicted value of the position information of point c is calculated using the position information of at least one of points p0 and p1. A prediction mode is assigned to each three-dimensional point to be encoded. The predicted value is calculated to a value corresponding to the assigned prediction mode.
なお、第3の例のように、点cの周囲の点の数(隣接点数)が3個に満たない場合、予測値が未割当てである予測モードは、not availableに設定されてもよい。また、not availableが設定された予測モードが発生した場合、その予測モードには、別の予測方法が割り当てられてもよい。例えば、その予測モードには、予測値として点p2の位置情報が割り当てられてもよい。また、その予測モードには、他の予測モードに割り当てられた予測値が割り当てられてもよい。例えば、not availableが設定された予測モード3に、予測モード4に割り当てられている点p1の位置情報が割り当てられてもよい。その際、予測モード4には、新たに点p2の位置情報が割り当てられてもよい。このように、not availableが設定された予測モードが発生した場合、当該予測モードに新たな予測方法を割り当てることで符号化効率を向上できる。 Note that, as in the third example, if the number of points surrounding point c (number of adjacent points) is less than three, a prediction mode to which a predicted value has not been assigned may be set to "not available." Furthermore, when a prediction mode to which "not available" is set occurs, a different prediction method may be assigned to that prediction mode. For example, the position information of point p2 may be assigned as a predicted value to that prediction mode. Furthermore, a predicted value assigned to another prediction mode may be assigned to that prediction mode. For example, the position information of point p1 assigned to prediction mode 4 may be assigned to prediction mode 3 to which "not available" is set. At that time, the position information of point p2 may be newly assigned to prediction mode 4. In this way, when a prediction mode to which "not available" is set occurs, encoding efficiency can be improved by assigning a new prediction method to that prediction mode.
図36は、位置情報のヘッダのシンタックスの一例を示す図である。図36のシンタックスにおけるNumNeighborPoint、NumPredMode、Thfix、QP、及び、unique_point_per_leafについて順に説明する。 Figure 36 shows an example of the syntax of a location information header. NumNeighborPoint, NumPredMode, Thfix, QP, and unique_point_per_leaf in the syntax of Figure 36 will be explained in order.
NumNeighborPointは、三次元点の位置情報の予測値の生成に用いる周囲の点数の上限値を示す。周囲の点数MがNumNeighborPointに満たない場合(M<NumNeighborPoint)、予測値の算出処理では、M個の周囲の点数を用いて予測値が算出されてもよい。 NumNeighborPoint indicates the upper limit of the number of surrounding points used to generate a predicted value of the position information of a three-dimensional point. If the number of surrounding points M is less than NumNeighborPoint (M < NumNeighborPoint), the predicted value may be calculated using M surrounding points in the calculation process.
NumPredModeは、位置情報の予測に用いる予測モードの総数Mを示す。なお、予測モード数の取りうる値の最大値MaxMは、規格等で値が規定されてもよい。三次元データ符号化装置は、(MaxM-M)の値(0<M<=MaxM)をNumPredModeとしてヘッダに付加し、(MaxM-1)をtruncated unary codeで二値化して符号化しても構わない。また、予測モード数NumPredModeは、ビットストリームに付加されなくてもよく、規格等のprofileまたはlevelで値が規定されても構わない。また、予測モード数は、NumNeighborPoint+NumPredModeで規定されても構わない。 NumPredMode indicates the total number M of prediction modes used to predict position information. Note that the maximum possible value of the number of prediction modes, MaxM, may be specified by standards, etc. The three-dimensional data encoding device may add the value (MaxM-M) (0<M<=MaxM) to the header as NumPredMode, and then binarize and encode (MaxM-1) using a truncated unary code. Furthermore, the number of prediction modes, NumPredMode, does not need to be added to the bitstream, and its value may be specified by a profile or level, etc., of standards, etc. The number of prediction modes may also be specified as NumNeighborPoint + NumPredMode.
Thfixは、予測モードを固定するか否かを判定するための閾値である。予測に用いる点p1及び点p0の間の距離d0と、点p2及び点p1の間の距離d1とを算出し、その差分絶対値distdiff=|d0-d1|が閾値Thfix[i]より小さければ予測モードがαに固定される。αは、予測モードが線形予測を用いた予測値を算出するための予測モードであり、上記実施の形態では「2」である。なお、Thfixはビットストリームに付加されなくてもよく、規格等のprofileまたはlevelで値が規定されても構わない。 Thfix is a threshold value used to determine whether to fix the prediction mode. The distance d0 between points p1 and p0 used for prediction and the distance d1 between points p2 and p1 are calculated, and if the absolute difference distdiff = |d0-d1| is smaller than the threshold Thfix[i], the prediction mode is fixed to α. α is the prediction mode used to calculate a predicted value using linear prediction, and is set to "2" in the above embodiment. Note that Thfix does not need to be added to the bitstream, and its value may be specified in the profile or level of a standard, etc.
QPは、位置情報を量子化する際に用いる量子化パラメータを示す。三次元データ符号化装置は、量子化パラメータから量子化ステップを算出し、算出した量子化ステップを用いて位置情報を量子化してもよい。 QP indicates the quantization parameter used when quantizing the position information. The three-dimensional data encoding device may calculate a quantization step from the quantization parameter and quantize the position information using the calculated quantization step.
unique_point_per_leafは、ビットストリーム内にduplicated point(位置情報が同じ点)が含まれるか否かを示す情報である。unique_point_per_leaf=1であることは、ビットストリーム内にduplicated pointがないことを示す。unique_point_per_leaf=0であることは、ビットストリーム内にduplicated pointが1つ以上存在することを示す。 unique_point_per_leaf is information that indicates whether or not the bitstream contains duplicate points (points with the same position information). unique_point_per_leaf = 1 indicates that there are no duplicate points in the bitstream. unique_point_per_leaf = 0 indicates that there is one or more duplicate points in the bitstream.
なお、本実施の形態では、予測モードを固定するか否かの判断は、距離d0と距離d1との差分絶対値を用いて行われるとしたが、必ずしもこれに限らず、どのような方法で判断しても構わない。例えば、この判断は、点p1及び点p0の間の距離d0を算出し、距離d0が閾値よりも大きい場合、点p1は予測に使えないと判定し、予測モード値を「1」(予測値p0)に固定し、そうでなければ、予測モードを設定するようにしても構わない。これにより、オーバーヘッドを抑えつつ、符号化効率を向上できる。 In this embodiment, the determination of whether to fix the prediction mode is made using the absolute difference between distance d0 and distance d1, but this is not necessarily limited to this, and any method of determination may be used. For example, this determination may be made by calculating the distance d0 between point p1 and point p0, and if distance d0 is greater than a threshold, determining that point p1 cannot be used for prediction and fixing the prediction mode value to "1" (predicted value p0); otherwise, setting a prediction mode. This makes it possible to improve coding efficiency while reducing overhead.
上記NumNeighborPoint、NumPredMode、Thfix、unique_point_per_leafは、エントロピー符号化されてヘッダに付加されてもよい。例えば各値は、二値化されて算出符号化されてもよい。また、各値は、処理量を抑えるために固定長で符号化されても構わない。 The above NumNeighborPoint, NumPredMode, Thfix, and unique_point_per_leaf may be entropy coded and added to the header. For example, each value may be binarized and computationally coded. Each value may also be coded at a fixed length to reduce the amount of processing.
図37は、位置情報のシンタックスの一例を示す図である。図37のシンタックスにおけるNumOfPoint、child_count、pred_mode、及び、residual_value[j]について順に説明する。 Figure 37 shows an example of the syntax for location information. NumOfPoint, child_count, pred_mode, and residual_value[j] in the syntax of Figure 37 will be explained in order.
NumOfPointは、ビットストリームに含まれる三次元点の総数を示す。 NumOfPoints indicates the total number of 3D points contained in the bitstream.
child_countは、i番目の三次元点(node[i])が持つ子ノードの数を示す。 child_count indicates the number of child nodes that the i-th 3D point (node[i]) has.
pred_modeは、i番目の三次元点の位置情報を符号化又は復号するための予測モードを示す。pred_modeは、値0からM-1(Mは予測モードの総数)までの値をとる。pred_modeがビットストリームにない場合(条件であるdistdiff >= Thfix[i] && NumPredMode > 1を満たさない場合)、pred_modeは、固定値αと推定されてもよい。αは、予測モードが線形予測を用いた予測値を算出するための予測モードであり、上記実施の形態では「2」である。なお、αは、「2」に限らずに0からM-1までのいずれかの値が推定値として設定されてもよい。また、pred_modeがビットストリームにない場合の推定値は、別途ヘッダ等に付加されても構わない。また、pred_modeは予測値が割当たった予測モード数を用いてtruncated unary codeで二値化して算術符号化されてもよい。 pred_mode indicates the prediction mode for encoding or decoding the position information of the i-th 3D point. pred_mode takes on values from 0 to M-1 (M is the total number of prediction modes). If pred_mode is not present in the bitstream (if the condition distdiff >= Thfix[i] && NumPredMode > 1 is not satisfied), pred_mode may be estimated to a fixed value α. α is the prediction mode used to calculate a predicted value using linear prediction, and is "2" in the above embodiment. Note that α is not limited to "2," and any value between 0 and M-1 may be set as the estimated value. Furthermore, if pred_mode is not present in the bitstream, the estimated value may be added separately to a header, etc. Also, pred_mode may be binarized and arithmetically coded with a truncated unary code using the number of prediction modes to which the predicted value is assigned.
なお、NumPredMode=1である場合、つまり、予測モード数が1である場合、三次元データ符号化装置は、予測モードを示す予測モード値を符号化せずに、予測モード値を含まないビットストリームを生成してもよい。また、三次元データ復号装置は、予測モード値を含まないビットストリームを取得した場合、予測値の算出において、特定の予測モードの予測値を算出してもよい。特定の予測モードは、予め定められた予測モードである。 Note that when NumPredMode = 1, that is, when the number of prediction modes is 1, the 3D data encoding device may generate a bitstream that does not include a prediction mode value without encoding a prediction mode value that indicates the prediction mode. Furthermore, when the 3D data decoding device acquires a bitstream that does not include a prediction mode value, it may calculate a prediction value of a specific prediction mode when calculating a prediction value. The specific prediction mode is a predetermined prediction mode.
residual_value[j]は、位置情報の予測値との間の予測残差の符号化データを示す。residual_value[0]は、位置情報の要素xを示し、residual_value[1]が位置情報の要素yを示し、residual_value[2]が位置情報の要素zを示してもよい。 residual_value[j] indicates the coded data of the prediction residual between the predicted value of the position information. residual_value[0] may indicate element x of the position information, residual_value[1] may indicate element y of the position information, and residual_value[2] may indicate element z of the position information.
図38は、位置情報のシンタックスの他の一例を示す図である。図38の例は、図37の例の変形例である。 Figure 38 is a diagram showing another example of location information syntax. The example in Figure 38 is a modified example of the example in Figure 37.
pred_modeは、図38に示すように、位置情報(x、y、z)の3つの要素毎の予測モードを示していてもよい。つまり、pred_mode[0]は、要素xの予測モードを示し、pred_mode[1]は要素yの予測モードを示し、pred_mode[2]は要素zの予測モードを示す。pred_mode[0]、pred_mode[1]、及び、pred_mode[2]は、ビットストリームに付加されてもよい。 pred_mode may indicate the prediction mode for each of the three elements of position information (x, y, z), as shown in Figure 38. That is, pred_mode[0] indicates the prediction mode for element x, pred_mode[1] indicates the prediction mode for element y, and pred_mode[2] indicates the prediction mode for element z. pred_mode[0], pred_mode[1], and pred_mode[2] may be added to the bitstream.
(実施の形態4)
本実施の形態では、点群(ポイントクラウド)の位置情報(8分木)に対するインター予測について説明する。図39は、本実施の形態に係る三次元データ符号化装置12800のブロック図である。なお、図39では、点群の位置情報(ジオメトリ)の符号化に関する処理部を記載しているが、三次元データ符号化装置12800は、点群の属性情報の符号化等を行う処理部等の他の処理部を備えてもよい。インター予測では、符号化済みの点群を参照しつつ符号化対象の点群が符号化される。
(Embodiment 4)
In this embodiment, inter prediction for position information (octree) of a point cloud will be described. Fig. 39 is a block diagram of a three-dimensional data encoding device 12800 according to this embodiment. Note that while Fig. 39 illustrates a processing unit related to encoding position information (geometry) of a point cloud, the three-dimensional data encoding device 12800 may also include other processing units, such as a processing unit that encodes attribute information of the point cloud. In inter prediction, a point cloud to be encoded is encoded while referring to an already-encoded point cloud.
三次元データ符号化装置12800は、8分木化部12801と、バッファ12802と、エントロピー符号化部12803と、バッファ12804と、バッファ12805と、点群化部12806と、バッファ12807と、動き検出補償部12808と、8分木化部12809と、バッファ12810と、制御部12811とを備える。 The three-dimensional data encoding device 12800 comprises an octree conversion unit 12801, a buffer 12802, an entropy encoding unit 12803, a buffer 12804, a buffer 12805, a point group conversion unit 12806, a buffer 12807, a motion detection and compensation unit 12808, an octree conversion unit 12809, a buffer 12810, and a control unit 12811.
8分木化部12801は、入力された符号化対象の点群のデータである対象点群を、8分木(Octree)表現に変換することで、対象点群の位置情報を8分木で表現した対象8分木を生成する。なお、入力された対象点群では、点群の位置は例えば三次元座標(例えばx、y、z)で表現される。バッファ12802は、生成された対象8分木を保持する。また、8分木は、複数のノード(分岐点)で構成され、各ノードの情報は、当該ノードの8個の子ノードの各々が三次元点を含むか否かを示す8ビットのオキュパンシー符号を含む。例えば、バッファ12802は、8分木(対象点群)毎に保持するデータを初期化してもよい。 The octree conversion unit 12801 converts the input target point cloud, which is the data of the point cloud to be encoded, into an octree representation, thereby generating a target octree in which the position information of the target point cloud is expressed using an octree. In the input target point cloud, the positions of the point cloud are expressed, for example, using three-dimensional coordinates (e.g., x, y, z). The buffer 12802 stores the generated target octree. The octree is composed of multiple nodes (branching points), and the information for each node includes an 8-bit occupancy code indicating whether each of the node's eight child nodes contains a three-dimensional point. For example, the buffer 12802 may initialize the data stored for each octree (target point cloud).
エントロピー符号化部12803は、ノード毎の情報(例えばオキュパンシー符号)をエントロピー符号化することでビットストリームを生成する。なお、このエントロピー符号化では、対象点群内の符号化済みノード(イントラ参照ノード)の情報又は符号化済み点群内のノード(インター参照ノード)の情報に基づいて確率パラメータ(符号化テーブル又は確率テーブルとも呼ぶ)が制御される。 The entropy coding unit 12803 generates a bitstream by entropy coding information for each node (e.g., occupancy code). In this entropy coding, probability parameters (also called coding tables or probability tables) are controlled based on information about coded nodes (intra-reference nodes) within the target point cloud or information about nodes (inter-reference nodes) within the coded point cloud.
バッファ12804は、対象ノードの情報(例えばオキュパンシー符号)をイントラ参照ノード(符号化済みノード)として保持する。例えば、バッファ12804は、8分木(対象点群)毎に保持するデータを初期化してもよい。 Buffer 12804 stores information about the target node (e.g., occupancy code) as an intra-reference node (encoded node). For example, buffer 12804 may initialize the data it stores for each octree (target point group).
バッファ12805は、対象ノードの情報(例えばオキュパンシー符号)を保持する。また、バッファ12805は、8分木単位の対象ノードの情報を符号化済み8分木として保持する。例えば、バッファ12805は、8分木(対象点群)毎に保持するデータを初期化してもよい。 Buffer 12805 stores information about the target node (e.g., occupancy code). Buffer 12805 also stores information about the target node in octree units as an encoded octree. For example, buffer 12805 may initialize the data stored for each octree (target point group).
点群化部12806は、符号化済み8分木を点群に変換することでインター参照点群(符号化済み点群)を生成する。バッファ12807は、インター参照点群を保持する。つまり、バッファ12807は、符号化済みの1又は複数の点群である複数のインター参照点群を保持する。 The point group generation unit 12806 generates an inter-reference point group (encoded point group) by converting the encoded octree into a point group. The buffer 12807 stores the inter-reference point group. In other words, the buffer 12807 stores multiple inter-reference point groups, which are one or more encoded point groups.
動き検出補償部12808は、インター参照点群と対象点群との変位を検出(動き検出)し、検出した変位に基づきインター参照点群を補正(動き補償)することで、位置合わせ後のインター参照点群である位置合わせ後点群を生成する。 The motion detection and compensation unit 12808 detects the displacement between the inter reference point group and the target point group (motion detection), and corrects the inter reference point group based on the detected displacement (motion compensation), thereby generating a post-alignment point group, which is the inter reference point group after alignment.
8分木化部12809は、位置合わせ後点群を8分木表現に変換することで、位置合わせ後点群の位置情報を8分木で表現したインター参照8分木を生成する。バッファ12810は、生成されたインター参照8分木を保持する。また、例えば、バッファ12810は、8分木(対象点群)毎に保持するデータを初期化してもよい。 The octree conversion unit 12809 converts the aligned point cloud into an octree representation to generate an inter-reference octree in which the position information of the aligned point cloud is expressed as an octree. The buffer 12810 stores the generated inter-reference octree. Furthermore, for example, the buffer 12810 may initialize the data stored for each octree (target point cloud).
また、三次元データ符号化装置12800は、動き検出及び動き補償を、フレーム又は8分木単位で行ってもよいし、ノード(点)毎に行ってもよい。また、三次元データ符号化装置12800は、動きベクトルなどの動き補償に関する情報を、フレーム又は8分木のヘッダ部に記載してもよいし、当該情報をエントロピー符号化したうえでノード情報のヘッダ部に記載してもよい。 The three-dimensional data encoding device 12800 may perform motion detection and motion compensation on a frame or octree basis, or on a node (point) basis. The three-dimensional data encoding device 12800 may also write information related to motion compensation, such as motion vectors, in the header section of the frame or octree, or may entropy-encode the information and then write it in the header section of the node information.
また、インター参照点群は、符号化対象のフレームと異なる符号化済みのフレームに含まれる点群であってもよいし、符号化対象のフレームと同じフレームに含まれる符号化済みの点群であってもよい。 Furthermore, the inter-reference point group may be a point group contained in an already coded frame different from the frame to be coded, or may be an already coded point group contained in the same frame as the frame to be coded.
制御部12811は、バッファ12804に格納されているイントラ参照ノード、又は、バッファ12810に格納されているインター参照8分木に含まれるインター参照ノードを用いて、エントロピー符号化部12803が、対象ノードのエントロピー符号化(算術符号化)に用いる確率パラメータを制御する。なお、イントラ参照ノードを用いた確率パラメータの制御(以下、イントラ参照と呼ぶ)が用いられるか、インター参照ノードを用いた確率パラメータの制御(以下、インター参照と呼ぶ)が用いられるかは、例えば、フレーム又は点群単位で予め定められていてもよいし、任意の方法により決定されてもよい。例えば、実際の符号量が試算され、符号量が少なくなる参照方法(イントラ参照又はインター参照)が選択されてもよい。The control unit 12811 controls the probability parameters used by the entropy coding unit 12803 for entropy coding (arithmetic coding) of the target node using the intra reference node stored in buffer 12804 or the inter reference node included in the inter reference octree stored in buffer 12810. Whether control of the probability parameters using the intra reference node (hereinafter referred to as intra reference) or control of the probability parameters using the inter reference node (hereinafter referred to as inter reference) is used may be determined in advance, for example, on a frame or point cloud basis, or may be determined by any method. For example, the actual amount of coding may be estimated, and the reference method (intra reference or inter reference) that results in the least amount of coding may be selected.
例えば、イントラ参照が用いられる場合には、対象ノードの複数の隣接ノード(イントラ参照ノード)の占有状態(ノードに点が含まれるか否か)に基づき、複数の確率パラメータから確率パラメータが選択される。また、インター参照が用いられる場合には、インター参照8分木に含まれる、対象ノード及び複数の隣接ノードの少なくとも一つと同じ位置のノード(インター参照ノード)の占有状態に基づき、複数の確率パラメータから確率パラメータが選択される。なお、インター参照が選択された場合、インター参照とイントラ参照を組み合わせて確率パラメータが制御されてもよい。また、複数の確率パラメータは、発生頻度に応じて更新される確率パラメータを含んでもよいし、固定値を含んでもよい。For example, when intra-referencing is used, a probability parameter is selected from multiple probability parameters based on the occupancy status (whether the node contains a point) of multiple adjacent nodes (intra-reference nodes) of the target node. When inter-referencing is used, a probability parameter is selected from multiple probability parameters based on the occupancy status of a node (inter-reference node) that is located at the same position as the target node and at least one of the multiple adjacent nodes included in the inter-reference octree. When inter-referencing is selected, the probability parameter may be controlled by combining inter-referencing and intra-referencing. The multiple probability parameters may include a probability parameter that is updated according to the frequency of occurrence, or may include a fixed value.
このように、三次元データ符号化装置12800は、イントラ参照ノードの情報に加えてインター参照ノードの情報にも基づいてエントロピー符号化の確率パラメータを制御することで、対象ノードの情報の生起確率の予測精度を向上できる。よって、符号化効率を向上できる可能性がある。 In this way, the three-dimensional data encoding device 12800 can improve the prediction accuracy of the occurrence probability of the information of the target node by controlling the probability parameters of entropy encoding based on information of the inter-reference node as well as information of the intra-reference node. This may result in improved encoding efficiency.
なお、三次元データ符号化装置12800は、常にインター参照点群を参照する必要はなく、所定の時間間隔(例えば1秒毎など)、所定のフレーム間隔(例えば30フレーム毎など)、又は三次元データ復号装置へ通知する任意のタイミングなどで、インター参照点群を格納しているバッファ12807をクリアするなどして、対象点群の情報のみに基づいて対象点群を符号化してもよい。これにより、三次元データ復号装置において、ビットストリームの先頭以外の、インター参照点群を参照していない点群からの飛び込み再生開始が可能になる。よって、ビットストリームのランダムアクセス性及びエラー耐性を向上できる可能性がある。 The three-dimensional data encoding device 12800 does not need to constantly refer to the inter-reference point group, but may instead encode the target point group based only on the target point group information by clearing the buffer 12807 storing the inter-reference point group at a predetermined time interval (e.g., every second), a predetermined frame interval (e.g., every 30 frames), or at any timing notified to the three-dimensional data decoding device. This makes it possible for the three-dimensional data decoding device to jump in and start playback from a point group other than the beginning of the bitstream that does not reference the inter-reference point group. This potentially improves the random accessibility and error resilience of the bitstream.
図40は、本実施の形態に係る三次元データ復号装置12820のブロック図である。なお、図40では、点群の位置情報(ジオメトリ)の復号に関する処理部を記載しているが、三次元データ復号装置12820は、点群の属性情報の復号等を行う処理部等の他の処理部を備えてもよい。三次元データ復号装置12820は、符号化済みの点群を参照しつつ符号化されたビットストリームから点群を復号するインター予測復号を行う。例えば、三次元データ復号装置12820は、図39に示す三次元データ符号化装置12800で生成されたビットストリームを復号する。 Figure 40 is a block diagram of a three-dimensional data decoding device 12820 according to this embodiment. Note that while Figure 40 describes a processing unit related to decoding position information (geometry) of point clouds, the three-dimensional data decoding device 12820 may also include other processing units, such as a processing unit that decodes attribute information of point clouds. The three-dimensional data decoding device 12820 performs inter-prediction decoding, which decodes point clouds from an encoded bitstream while referencing the encoded point clouds. For example, the three-dimensional data decoding device 12820 decodes a bitstream generated by the three-dimensional data encoding device 12800 shown in Figure 39.
三次元データ復号装置12820は、エントロピー復号部12821と、バッファ12822と、バッファ12823と、点群化部12824と、バッファ12825と、動き補償部12826と、8分木化部12827と、バッファ12828と、制御部12829とを備える。 The three-dimensional data decoding device 12820 includes an entropy decoding unit 12821, a buffer 12822, a buffer 12823, a point group generation unit 12824, a buffer 12825, a motion compensation unit 12826, an octree generation unit 12827, a buffer 12828, and a control unit 12829.
エントロピー復号部12821は、入力されたビットストリームを、8分木の分岐点(ノード)毎にエントロピー復号することで復号ノードの情報(例えばオキュパンシー符号)を生成する。なお、このエントロピー復号では、対象点群内の復号済みノード(イントラ参照ノード)の情報又は復号済み点群内のノード(インター参照ノード)の情報に基づいて確率パラメータ(符号化テーブル又は確率テーブルとも呼ぶ)が制御される。 The entropy decoding unit 12821 generates decoded node information (e.g., occupancy code) by entropy decoding the input bitstream for each branch point (node) of the octree. In this entropy decoding, probability parameters (also called coding tables or probability tables) are controlled based on information on decoded nodes (intra-reference nodes) within the target point cloud or information on nodes (inter-reference nodes) within the decoded point cloud.
バッファ12822は、生成された復号ノードの情報をイントラ参照ノード(復号済みノード)として保持する。例えば、バッファ12822は、8分木(復号点群)毎に保持するデータを初期化してもよい。 Buffer 12822 stores information about the generated decoded nodes as intra reference nodes (decoded nodes). For example, buffer 12822 may initialize the data it stores for each octree (decoded point group).
バッファ12823は、復号ノードの情報(例えばオキュパンシー符号)を保持する。また、バッファ12823は、8分木単位の復号ノードの情報を復号8分木として保持する。例えば、バッファ12823は、8分木(復号点群)毎に保持するデータを初期化してもよい。点群化部12824は、復号8分木を点群に変換することで復号点群を生成する。 Buffer 12823 stores information about the decoding nodes (e.g., occupancy codes). Buffer 12823 also stores information about the decoding nodes in octree units as a decoding octree. For example, buffer 12823 may initialize the data stored for each octree (decoding point cloud). Point cloud generation unit 12824 generates a decoded point cloud by converting the decoded octree into a point cloud.
バッファ12825は、復号点群をインター参照点群として保持する。動き補償部12826は、インター参照点群と復号対象の点群との変位を補正(動き補償)することで、位置合わせ後のインター参照点群である位置合わせ後点群を生成する。例えば、動き補償部12826は、動きベクトルなどの動き補償に関する情報を、フレーム或いは8分木のヘッダ部、又は、ノードの情報のヘッダ部などから取得し、取得した情報を用いて動き補償を行う。 The buffer 12825 stores the decoded point group as an inter reference point group. The motion compensation unit 12826 corrects (motion compensates) the displacement between the inter reference point group and the point group to be decoded, thereby generating an aligned point group, which is the inter reference point group after alignment. For example, the motion compensation unit 12826 obtains information related to motion compensation, such as motion vectors, from the header section of a frame or octree, or the header section of node information, and performs motion compensation using the obtained information.
8分木化部12827は、位置合わせ後点群を8分木表現に変換することで、位置合わせ後点群の位置情報を8分木で表現したインター参照8分木を生成する。バッファ12828は、生成されたインター参照8分木を保持する。また、例えば、バッファ12828は、8分木(復号点群)毎に保持するデータを初期化してもよい。 The octree conversion unit 12827 converts the aligned point cloud into an octree representation to generate an inter-reference octree in which the position information of the aligned point cloud is expressed as an octree. The buffer 12828 stores the generated inter-reference octree. Furthermore, for example, the buffer 12828 may initialize the data stored for each octree (decoded point cloud).
また、三次元データ復号装置12820は、動き補償を、フレーム又は8分木単位で行ってもよいし、ノード(点)毎に行ってもよい。 In addition, the 3D data decoding device 12820 may perform motion compensation on a frame or octree basis, or on a node (point) basis.
また、インター参照点群は、復号対象のフレームと異なる復号済みのフレームに含まれる点群であってもよいし、復号対象のフレームと同じフレームに含まれる復号済みの点群であってもよい。 Furthermore, the inter-reference point group may be a point group contained in a decoded frame different from the frame to be decoded, or a decoded point group contained in the same frame as the frame to be decoded.
制御部12829は、バッファ12822に格納されているイントラ参照ノード、又は、バッファ12828に格納されているインター参照8分木に含まれるインター参照ノードを用いて、エントロピー復号部12821が、対象ノードのエントロピー復号(算術復号)に用いる確率パラメータを制御する。なお、イントラ参照が用いられるか、インター参照が用いられるかは、例えば、ビットストリームに含まれる制御情報に基づき決定されてもよいし、フレーム又は点群単位で予め定められていてもよいし、任意の方法により決定されてもよい。 The control unit 12829 controls the probability parameters used by the entropy decoding unit 12821 for entropy decoding (arithmetic decoding) of the target node, using the intra reference node stored in buffer 12822 or the inter reference node included in the inter reference octree stored in buffer 12828. Whether intra reference or inter reference is used may be determined, for example, based on control information included in the bitstream, may be predetermined on a frame or point cloud basis, or may be determined by any method.
例えば、イントラ参照が用いられる場合には、対象ノードの複数の隣接ノード(イントラ参照ノード)の占有状態(ノードに点が含まれるか否か)に基づき、確率パラメータが選択される。また、インター参照が用いられる場合には、インター参照8分木に含まれる、対象ノード及び複数の隣接ノードの少なくとも一つと同じ位置のノード(インター参照ノード)の占有状態に基づき、確率パラメータが選択される。なお、インター参照が選択された場合、インター参照とイントラ参照を組み合わせて確率パラメータが制御されてもよい。 For example, when intra-referencing is used, the probability parameter is selected based on the occupancy state (whether the node contains a point) of multiple adjacent nodes (intra-reference nodes) of the target node. Also, when inter-referencing is used, the probability parameter is selected based on the occupancy state of a node (inter-reference node) that is in the same position as the target node and at least one of the multiple adjacent nodes included in the inter-reference octree. Note that when inter-referencing is selected, the probability parameter may be controlled by combining inter-referencing and intra-referencing.
このように、三次元データ復号装置12820は、イントラ参照ノードの情報に加えてインター参照ノードの情報にも基づいてエントロピー復号の確率パラメータを制御することで、符号化済みの点群を参照しつつ符号化されたビットストリーム(例えば、図39に示す三次元データ符号化装置12800から出力されたビットストリーム)から点群を復号できる。 In this way, the three-dimensional data decoding device 12820 can control the probability parameters of entropy decoding based on information on inter-reference nodes as well as information on intra-reference nodes, thereby decoding a point cloud from an encoded bit stream (for example, a bit stream output from the three-dimensional data encoding device 12800 shown in Figure 39) while referring to an already encoded point cloud.
なお、三次元データ復号装置12820は、常にインター参照点群を参照する必要はなく、三次元データ符号化装置に合わせて、所定の時間間隔(例えば1秒毎など)、所定のフレーム間隔(例えば30フレーム毎など)、又は三次元データ符号化装置から通知された任意のタイミングなどで、インター参照点群を格納しているバッファ12825をクリアするなどして、復号対象点群の情報のみに基づいて復号対象点群を復号してもよい。これにより、三次元データ復号装置12820は、ビットストリームの先頭以外の、インター参照点群を参照していない点群からの飛び込み再生開始を実現できる。 The three-dimensional data decoding device 12820 does not need to constantly refer to the inter-reference point group, but may decode the point group to be decoded based only on the information of the point group to be decoded, for example, by clearing the buffer 12825 storing the inter-reference point group at a predetermined time interval (e.g., every second), a predetermined frame interval (e.g., every 30 frames), or at any timing notified by the three-dimensional data encoding device, in accordance with the three-dimensional data encoding device. This allows the three-dimensional data decoding device 12820 to realize jump playback start from a point group other than the beginning of the bitstream that does not reference the inter-reference point group.
図41は、三次元データ符号化装置12800の変形例である三次元データ符号化装置12800Aのブロック図である。図41に示す三次元データ符号化装置12800Aは、図39に示す三次元データ符号化装置12800に対して、さらに、動き補償部12812を備える。 Figure 41 is a block diagram of a three-dimensional data encoding device 12800A, which is a modified example of the three-dimensional data encoding device 12800. The three-dimensional data encoding device 12800A shown in Figure 41 further includes a motion compensation unit 12812 in addition to the three-dimensional data encoding device 12800 shown in Figure 39.
動き補償部12812は、点群化部12806で生成された符号化済み点群に動き補償を行うことで、既にバッファ12807に格納されているインター参照点群と位置合わせを行う。バッファ12807は、既に格納しているインター参照点群に動き補償後の符号化済み点群を統合することで、格納するインター参照点群を更新する。これにより、インター参照点群として、複数フレームの点群を重ね合わせた密な点群を用いることができる。また、他の処理は、例えば、三次元データ符号化装置12800と同様である。 The motion compensation unit 12812 performs motion compensation on the encoded point cloud generated by the point cloud generation unit 12806, thereby aligning it with the inter reference point cloud already stored in the buffer 12807. The buffer 12807 updates the inter reference point cloud it stores by integrating the motion-compensated encoded point cloud with the inter reference point cloud already stored. This makes it possible to use a dense point cloud, in which point clouds from multiple frames are superimposed, as the inter reference point cloud. Other processing is similar to that of, for example, the three-dimensional data encoding device 12800.
なお、インター参照点群は、符号化対象のフレームと異なる符号化済みのフレームに含まれる点群であってもよいし、符号化対象のフレームと同じフレームに含まれる符号化済みの点群であってもよい。 The inter-reference point group may be a point group contained in an already coded frame different from the frame to be coded, or it may be an already coded point group contained in the same frame as the frame to be coded.
このように、三次元データ符号化装置12800Aは、符号化済みの点群を位置合わせして統合することで、インター参照点群の点群密度を向上できる可能性がある。これにより、対象ノードの情報の生起確率の予測精度が向上するので、符号化効率を更に向上できる可能性がある。 In this way, the three-dimensional data encoding device 12800A may be able to improve the point cloud density of the inter-reference point cloud by aligning and integrating encoded point clouds. This improves the prediction accuracy of the occurrence probability of information for the target node, potentially further improving encoding efficiency.
なお、三次元データ符号化装置12800Aは、全ての符号化済み点群をインター参照点群として参照する必要はなく、所定の時間間隔(例えば1秒毎など)、所定のフレーム間隔(例えば5フレーム毎など)、又は三次元データ復号装置へ通知する任意のタイミングなどで、インター参照点群を格納しているバッファ12807の全て或いは一部をクリアするなどして、対象点群のみ、又は符号化対象点群と一部の符号化済み点群の情報に基づいて対象点群を符号化してもよい。対象点群のみの情報に基づいて符号化が行われた場合、三次元データ復号装置において、ビットストリームの先頭以外の、インター参照点群を参照していない点群からの飛び込み再生開始が可能になる。よって、ビットストリームのランダムアクセス性及びエラー耐性を向上できる可能性がある。また、対象点群と一部の符号化済み点群の情報に基づいて符号化が行われた場合、インター参照点群を保持するバッファ12807の容量を小さくできるので、三次元データ符号化装置及び三次元データ復号装置の実装コストを低減できる可能性がある。 The three-dimensional data encoding device 12800A does not need to reference all encoded point groups as inter-reference point groups. It may instead encode the target point group based on only the target point group, or on the target point group and some of the encoded point groups, by clearing all or part of the buffer 12807 storing the inter-reference point group at a predetermined time interval (e.g., every second), a predetermined frame interval (e.g., every five frames), or at any timing notified to the three-dimensional data decoding device. When encoding is performed based on only the target point group, the three-dimensional data decoding device can jump in and start playback from a point group other than the beginning of the bitstream that does not reference the inter-reference point group. This may improve the random accessibility and error resilience of the bitstream. Furthermore, when encoding is performed based on the target point group and some of the encoded point groups, the capacity of the buffer 12807 storing the inter-reference point group can be reduced, potentially reducing the implementation costs of the three-dimensional data encoding device and the three-dimensional data decoding device.
図42は、三次元データ復号装置12820の変形例である三次元データ復号装置12820Aのブロック図である。図42に示す三次元データ復号装置12820Aは、図40に示す三次元データ復号装置12820に対して、さらに、動き補償部12830を備える。例えば、三次元データ復号装置12820Aは、図41に示す三次元データ符号化装置12800Aで生成されたビットストリームから点群を復号する。 Figure 42 is a block diagram of a three-dimensional data decoding device 12820A, which is a modified example of the three-dimensional data decoding device 12820. The three-dimensional data decoding device 12820A shown in Figure 42 further comprises a motion compensation unit 12830 in addition to the three-dimensional data decoding device 12820 shown in Figure 40. For example, the three-dimensional data decoding device 12820A decodes a point cloud from the bitstream generated by the three-dimensional data encoding device 12800A shown in Figure 41.
動き補償部12830は、復号点群に動き補償を行うことで、既にバッファ12825に格納されているインター参照点群と位置合わせを行う。バッファ12825は、既に格納しているインター参照点群に動き補償後の復号点群を統合することで、格納するインター参照点群を更新する。これにより、インター参照点群として、複数フレームの点群を重ね合わせた密な点群を用いることができる。また、他の処理は、例えば、三次元データ復号装置12820と同様である。 The motion compensation unit 12830 performs motion compensation on the decoded point group to align it with the inter reference point group already stored in the buffer 12825. The buffer 12825 updates the stored inter reference point group by integrating the motion-compensated decoded point group with the already stored inter reference point group. This makes it possible to use a dense point group obtained by overlapping point groups from multiple frames as the inter reference point group. Other processing is similar to that of, for example, the 3D data decoding device 12820.
なお、インター参照点群は、復号対象のフレームと異なる復号済みのフレームに含まれる点群であってもよいし、復号対象のフレームと同じフレームに含まれる復号済みの点群であってもよい。 Note that the inter-reference point group may be a point group contained in a decoded frame different from the frame to be decoded, or a decoded point group contained in the same frame as the frame to be decoded.
このように、三次元データ復号装置12820Aは、復号済みの点群を位置合わせして統合する構成を有することで、同様の構成を有する三次元データ符号化装置により符号化されたビットストリーム(例えば、図41に示す三次元データ符号化装置12800Aで生成されたビットストリーム)から点群を復号できる。 In this way, the three-dimensional data decoding device 12820A has a configuration that aligns and integrates decoded point clouds, and can decode point clouds from a bit stream encoded by a three-dimensional data encoding device having a similar configuration (for example, a bit stream generated by the three-dimensional data encoding device 12800A shown in Figure 41).
なお、三次元データ復号装置12820Aは、全ての復号済み点群をインター参照点群として参照する必要はなく、所定の時間間隔(例えば1秒毎など)、所定のフレーム間隔(例えば5フレーム毎など)、又は三次元データ符号化装置から通知された任意のタイミングなどで、インター参照点群を格納しているバッファ12825の全て又は一部をクリアするなどして、復号対象点群のみ、又は復号対象点群と一部の復号済み点群の情報に基づいて復号対象点群を復号してもよい。 In addition, the three-dimensional data decoding device 12820A does not need to refer to all decoded point groups as inter-reference point groups, and may decode the point group to be decoded based on information on only the point group to be decoded, or on the point group to be decoded and some of the decoded point groups, by clearing all or part of the buffer 12825 storing the inter-reference point group at a predetermined time interval (e.g., every second), a predetermined frame interval (e.g., every five frames), or at any timing notified by the three-dimensional data encoding device.
三次元データ復号装置12820Aは、復号対象点群のみの情報に基づいて復号を行う場合、ビットストリームの先頭以外の、インター参照点群を参照していない点群からの飛び込み再生開始を実現できる。よって、ビットストリームのランダムアクセス性及びエラー耐性を向上できる可能性がある。また、三次元データ復号装置は、復号対象点群と一部の復号済み点群の情報に基づいて復号を行う場合、インター参照点群を保持するバッファ12825の容量を小さくできる。よって、三次元データ符号化装置及び三次元データ復号装置の実装コストを低減できる可能性がある。 When the three-dimensional data decoding device 12820A performs decoding based only on information about the point group to be decoded, it can realize jump-start playback from a point group other than the beginning of the bitstream that does not reference the inter-reference point group. This has the potential to improve the random accessibility and error resilience of the bitstream. Furthermore, when the three-dimensional data decoding device performs decoding based on information about the point group to be decoded and some of the decoded point groups, it can reduce the capacity of the buffer 12825 that holds the inter-reference point group. This has the potential to reduce the implementation costs of the three-dimensional data encoding device and the three-dimensional data decoding device.
図43は、図39及び図41に示す三次元データ符号化装置におけるインター予測の一例を示す図である。なお、図40及び図42に示す三次元データ復号装置におけるインター予測も同様である。 Figure 43 shows an example of inter prediction in the 3D data encoding device shown in Figures 39 and 41. Note that the same applies to inter prediction in the 3D data decoding device shown in Figures 40 and 42.
図43に示すように、例えば、三次元データ符号化装置は、対象点群を含む第1直方体を設定する。三次元データ符号化装置は、第1直方体を平行移動した第2直方体を設定する。第2直方体は、対象点群の符号化において参照する符号化済み点群を含む空間である。また、三次元データ符号化装置は、動きベクトルの情報として、第1直方体と第2直方体の間の平行移動距離のx、y、z成分を、フレーム又は8分木のヘッダ部に記載してもよいし、当該情報をエントロピー符号化したうえで、ノード情報のヘッダ部に記載してもよい。 As shown in FIG. 43, for example, the three-dimensional data encoding device sets a first rectangular parallelepiped containing the target point cloud. The three-dimensional data encoding device sets a second rectangular parallelepiped obtained by translating the first rectangular parallelepiped. The second rectangular parallelepiped is a space containing an encoded point cloud that is referenced when encoding the target point cloud. In addition, the three-dimensional data encoding device may write the x, y, and z components of the translation distance between the first rectangular parallelepiped and the second rectangular parallelepiped as motion vector information in the header section of the frame or octree, or may entropy-code the information and then write it in the header section of the node information.
なお、ここでは、平行移動により対象点群の符号化において参照する符号化済み点群を含む空間を設定する例を示したが、参照する符号化済み点群を含む空間を一意に設定できる方法であれば、他の方法であってもよい。 Note that here we have shown an example of setting a space containing an encoded point cloud to be referenced when encoding a target point cloud by parallel translation, but any other method can be used as long as it can uniquely set a space containing an encoded point cloud to be referenced.
次に、ヘッダ情報の一例について説明する。図44は、ビットストリームに含まれるシーケンスパラメータセット(SPS)のシンタックス例を示す図である。SPSは複数フレーム、複数点群又は複数スライスに共通の制御情報であり、属性情報と位置情報とに共通の制御情報である。Next, an example of header information will be described. Figure 44 is a diagram showing an example of the syntax of a sequence parameter set (SPS) included in a bitstream. SPS is control information common to multiple frames, multiple point clouds, or multiple slices, and is control information common to attribute information and position information.
図44に示すようにSPSは、sps_inter_prediction_enabled_flagと、sps_max_num_ref_frames_minus1とを含む。 As shown in FIG. 44, the SPS includes sps_inter_prediction_enabled_flag and sps_max_num_ref_frames_minus1.
以下、シーケンスパラメータセットのセマンティックス例を示す。1に等しいsps_inter_prediction_enabled_flagは、SPSを参照するビットストリームに対してインター予測の使用が許されていることを指定する。0に等しいsps_inter_prediction_enabled_flagは、SPSを参照するビットストリームに対してインター予測が無効であることを指定する。 Below are example semantics of sequence parameter sets: sps_inter_prediction_enabled_flag equal to 1 specifies that the use of inter prediction is allowed for bitstreams that reference SPS. sps_inter_prediction_enabled_flag equal to 0 specifies that inter prediction is disabled for bitstreams that reference SPS.
sps_max_num_ref_frames_minus1+1(sps_max_num_ref_frames_minus1に1を加算した値)は、フレームによって参照される参照点群フレームの最大数を指定する。sps_max_num_ref_frames_minus1の値は、0からMaxNumRefFrames-1までの範囲内でなければならない。 sps_max_num_ref_frames_minus1+1 (sps_max_num_ref_frames_minus1 plus 1) specifies the maximum number of reference point cloud frames referenced by a frame. The value of sps_max_num_ref_frames_minus1 must be in the range of 0 to MaxNumRefFrames-1.
sps_max_num_ref_frames_minus1は、sps_inter_prediction_enabled_flagが1の場合にSPSに含まれ、sps_inter_prediction_enabled_flagが0の場合にはSPSに含まれない。 sps_max_num_ref_frames_minus1 is included in the SPS if sps_inter_prediction_enabled_flag is 1, and is not included in the SPS if sps_inter_prediction_enabled_flag is 0.
図45は、ビットストリームに含まれる位置情報パラメータセット(GPS)のシンタックス例を示す図である。GPSは複数フレーム、複数点群又は複数スライス)に共通の制御情報であり、位置情報の制御情報である。 Figure 45 shows an example syntax of the location information parameter set (GPS) included in the bitstream. GPS is control information common to multiple frames, multiple point clouds, or multiple slices, and is control information for location information.
図45に示すようにGPSは、gps_inter_prediction_enabled_flagと、gps_num_ref_frames_minus1とを含む。 As shown in Figure 45, GPS includes gps_inter_prediction_enabled_flag and gps_num_ref_frames_minus1.
以下、位置情報パラメータセットのセマンティックス例を示す。1に等しいgps_inter_prediction_enabled_flagは、GPSを参照するビットストリームの位置情報データ単位の復号処理で、インター予測の使用が許されていることを指定する。0に等しいgps_inter_prediction_enabled_flag、GPSを参照するビットストリームの位置情報データ単位の復号処理で、インター予測が無効であることを指定する。sps_inter_prediction_enabled_flagが0の場合、gps_inter_prediction_enabled_flagは0になる。 Below is an example of the semantics of the location information parameter set. gps_inter_prediction_enabled_flag equal to 1 specifies that the use of inter prediction is allowed in the decoding process of location information data units of bitstreams that reference GPS. gps_inter_prediction_enabled_flag equal to 0 specifies that inter prediction is disabled in the decoding process of location information data units of bitstreams that reference GPS. If sps_inter_prediction_enabled_flag is 0, then gps_inter_prediction_enabled_flag is 0.
gps_num_ref_frames_minus1+1(gps_num_ref_frames_minus1に1を加算した値)は、GPSを参照するフレームで参照される参照点群フレームの数を指定する。gps_num_ref_frames_minus1の値は、0からsps_max_num_ref_frames_minus1の範囲内でなければならない。 gps_num_ref_frames_minus1+1 (the value of gps_num_ref_frames_minus1 plus 1) specifies the number of reference point cloud frames referenced in the GPS reference frame. The value of gps_num_ref_frames_minus1 must be within the range of 0 to sps_max_num_ref_frames_minus1.
gps_num_ref_frames_minus1は、gps_inter_prediction_enabled_flagが1の場合にGPSに含まれ、gps_inter_prediction_enabled_flagが0の場合にはGPSに含まれない。 gps_num_ref_frames_minus1 is included in GPS if gps_inter_prediction_enabled_flag is 1, and is not included in GPS if gps_inter_prediction_enabled_flag is 0.
これらの例に示すように、三次元データ符号化装置は、シーケンスパラメータセット及び位置情報パラメータセットに、例えばsps_inter_prediction_enabled_flag及びgps_inter_prediction_enabled_flagなどのように、インター予測符号化の実施が許されているか否かを示す情報を三次元データ復号装置に通知してもよい。また、三次元データ符号化装置は、インター予測符号化の実施が許されていることを示す情報を三次元データ復号装置に通知する場合に、例えばsps_max_num_ref_frames_minus1及びgps_num_ref_frames_minus1などのように、インター予測符号化において参照するフレームの数又はその最大値などに関する情報を三次元データ復号装置に通知してもよい。 As shown in these examples, the three-dimensional data encoding device may notify the three-dimensional data decoding device of information indicating whether inter-prediction coding is permitted, such as sps_inter_prediction_enabled_flag and gps_inter_prediction_enabled_flag, in the sequence parameter set and position information parameter set. Furthermore, when notifying the three-dimensional data decoding device of information indicating that inter-prediction coding is permitted, the three-dimensional data encoding device may notify the three-dimensional data decoding device of information regarding the number of frames to reference in inter-prediction coding or its maximum value, such as sps_max_num_ref_frames_minus1 and gps_num_ref_frames_minus1.
また、MaxNumRefFramesは、三次元データ復号装置が満足すべき要件として定める固定値であり、例えば6フレームなどの数フレームに設定することが考えられるが、三次元データ符号化装置と三次元データ復号装置の双方で同じ値を用いて処理されていれば、これらより大きな値でも構わない。 In addition, MaxNumRefFrames is a fixed value set as a requirement that the three-dimensional data decoding device must satisfy, and may be set to a number of frames, such as six frames, but it may also be set to a larger value as long as the same value is used for processing in both the three-dimensional data encoding device and the three-dimensional data decoding device.
これらの情報が三次元データ符号化装置から三次元データ復号装置へ通知されることで、三次元データ復号装置において処理に使用するメモリの割り当てを最適化できる可能性がある。 By communicating this information from the three-dimensional data encoding device to the three-dimensional data decoding device, it may be possible to optimize the allocation of memory used for processing in the three-dimensional data decoding device.
また、上記のインター予測符号化の実施が許されているか否かを示す情報及びインター予測符号化において参照するフレームの数又はその最大値などに関する情報は、SPS及びGPSの両方に格納されてもよいし、一方のみに格納されてもよい。また、これらの情報は、SPS及びGPS以外の制御情報に格納されてもよい。 In addition, the information indicating whether or not the implementation of the above-mentioned inter-prediction coding is permitted, and information regarding the number of frames to be referenced in inter-prediction coding or its maximum value, etc., may be stored in both the SPS and GPS, or in only one of them. Furthermore, this information may be stored in control information other than the SPS and GPS.
なお、図39~図45を用いて開示した装置、処理、及びシンタックスなどを、本開示における他の開示の少なくとも一部と組み合わせて実施してもよい。また、図39~図45を用いて開示した装置、処理、及びシンタックスの一部などを他の開示と組み合わせて実施してもよい。 The devices, processes, syntax, etc. disclosed using Figures 39 to 45 may be implemented in combination with at least a portion of other disclosures in this disclosure. Furthermore, parts of the devices, processes, syntax, etc. disclosed using Figures 39 to 45 may be implemented in combination with other disclosures.
また、図39~図45を用いて開示したすべての構成要素がいつも必要とは限らず、各装置は、一部の構成要素のみを備えていてもよい。 Furthermore, not all of the components disclosed using Figures 39 to 45 are always required, and each device may only have some of the components.
以上のように、本実施の形態に係る三次元データ符号化装置は、図46に示す処理を行う。三次元データ符号化装置は、符号化済みの複数の点群に動き補償を行う(S12801)。三次元データ符号化装置は、動き補償後の符号化済みの複数の点群を統合(合成)することで参照点群(例えば、図41に示すインター参照点群)を生成する(S12802)。三次元データ符号化装置は、対象点群のN分木構造(Nは2以上の整数)(例えば、図41に示す対象8分木)を生成する(S12803)。三次元データ符号化装置は、参照点群を用いて対象点群のN分木構造を符号化する(S12804)。なお、Nは、例えば8であるが任意の2のべき乗であってもよいし、それ以外の値であってもよい。 As described above, the three-dimensional data encoding device according to this embodiment performs the processing shown in FIG. 46. The three-dimensional data encoding device performs motion compensation on multiple encoded point groups (S12801). The three-dimensional data encoding device generates a reference point group (for example, the inter-reference point group shown in FIG. 41) by integrating (combining) multiple encoded point groups after motion compensation (S12802). The three-dimensional data encoding device generates an N-ary tree structure (N is an integer greater than or equal to 2) of the target point group (for example, the target octree shown in FIG. 41) (S12803). The three-dimensional data encoding device encodes the N-ary tree structure of the target point group using the reference point group (S12804). Note that N is, for example, 8, but may be any power of 2 or any other value.
これによれば、三次元データ符号化装置は、符号化済みの複数の点群を統合した参照点群を用いて対象点群を符号化することで符号化効率を向上できる。 This allows the three-dimensional data encoding device to improve encoding efficiency by encoding the target point group using a reference point group that integrates multiple encoded point groups.
例えば、三次元データ符号化装置は、対象点群のN分木構造を符号化(S12804)では、参照点群に対象点群に対する動き補償を行い、動き補償後の参照点群のN分木構造(例えば、図41に示すインター参照8分木)を生成し、参照点群のN分木構造を用いて対象点群のN分木構造を符号化する。 For example, when a three-dimensional data encoding device encodes the N-ary tree structure of a target point group (S12804), it performs motion compensation on the reference point group relative to the target point group, generates an N-ary tree structure of the reference point group after motion compensation (for example, the inter-reference octree shown in Figure 41), and encodes the N-ary tree structure of the target point group using the N-ary tree structure of the reference point group.
例えば、三次元データ符号化装置は、対象点群のN分木構造を符号化(S12804)では、対象点群のN分木構造をエントロピー符号化し、参照点群に基づき、エントロピー符号化で用いられる確率パラメータを制御する。例えば、三次元データ符号化装置は、参照点群に基づき、複数の確率パラメータから使用する確率パラメータを選択する。 For example, in encoding the N-ary tree structure of the target point group (S12804), the three-dimensional data encoding device entropy encodes the N-ary tree structure of the target point group and controls the probability parameters used in the entropy encoding based on the reference point group. For example, the three-dimensional data encoding device selects a probability parameter to use from multiple probability parameters based on the reference point group.
例えば、三次元データ符号化装置は、対象点群のN分木構造から符号化済みの対象点群(例えば、図41に示す符号化済み点群)を生成し、符号化済みの対象点群に参照点群に対する動き補償を行い、動き補償後の符号化済みの対象点群を参照点群に統合することで、参照点群を更新する。 For example, a three-dimensional data encoding device generates an encoded target point group (e.g., the encoded point group shown in Figure 41) from the N-ary tree structure of the target point group, performs motion compensation on the encoded target point group relative to the reference point group, and updates the reference point group by integrating the motion-compensated encoded target point group into the reference point group.
例えば、符号化済みの複数の点群の各々は、対象点群と異なるフレームに属する。例えば符号化済みの複数の点群の各々は、対象点群と同じフレームに属する。For example, each of the encoded multiple point clouds belongs to a different frame than the target point cloud. For example, each of the encoded multiple point clouds belongs to the same frame as the target point cloud.
例えば、三次元データ符号化装置は、参照点群を用いた符号化の実施が許されているか否かを示す第1情報(例えば、sps_inter_prediction_enabled_flag、又はgps_inter_prediction_enabled_flag)を、複数点群に共通の制御情報(例えばSPS又はGPS)に格納する。 For example, the three-dimensional data encoding device stores first information (e.g., sps_inter_prediction_enabled_flag or gps_inter_prediction_enabled_flag) indicating whether encoding using a reference point group is allowed in control information common to multiple point groups (e.g., SPS or GPS).
例えば、三次元データ符号化装置は、第1情報が参照点群を用いた符号化の実施が許されていることを示す場合、符号化済みの複数の点群の数に関する第2情報(例えば、sps_max_num_ref_frames_minus1、又はgps_num_ref_frames_minus1)を、複数点群に共通の制御情報(例えばSPS又はGPS)に格納する。例えば、第2情報は、統合する符号化済みの点群の数、又は最大数を示す。 For example, if the first information indicates that encoding using a reference point cloud is permitted, the three-dimensional data encoding device stores second information regarding the number of encoded point clouds (e.g., sps_max_num_ref_frames_minus1 or gps_num_ref_frames_minus1) in control information common to the multiple point clouds (e.g., SPS or GPS). For example, the second information indicates the number or maximum number of encoded point clouds to be integrated.
例えば、三次元データ符号化装置は、プロセッサと、メモリとを備え、プロセッサは、メモリを用いて、上記の処理を行う。 For example, a three-dimensional data encoding device includes a processor and a memory, and the processor uses the memory to perform the above processing.
また、本実施の形態に係る三次元データ復号装置は、図47に示す処理を行う。三次元データ復号装置は、復号済みの複数の点群に動き補償を行う(S12811)。三次元データ復号装置は、動き補償後の復号済みの複数の点群を統合(合成)することで参照点群(例えば、図42に示すインター参照点群)を生成する(S12812)。三次元データ復号装置は、参照点群を用いて、対象点群のN分木構造(Nは2以上の整数)(例えば、図42に示す復号8分木)を復号する(S12813)。つまり、三次元データ復号装置は、対象点群のN分木構造が符号化されることで生成されたビットストリーム(符号化データ)を復号することで対象点群のN分木構造を取得する。三次元データ復号装置は、対象点群のN分木構造から対象点群の復号点群を生成する(S12814)。なお、Nは、例えば8であるが任意の2のべき乗であってもよいし、それ以外の値であってもよい。 The 3D data decoding device according to this embodiment also performs the processing shown in FIG. 47. The 3D data decoding device performs motion compensation on multiple decoded point groups (S12811). The 3D data decoding device generates a reference point group (e.g., the inter-reference point group shown in FIG. 42) by integrating (combining) multiple decoded point groups after motion compensation (S12812). The 3D data decoding device uses the reference point group to decode an N-ary tree structure (N is an integer greater than or equal to 2) (e.g., the decoded octree shown in FIG. 42) of the target point group (S12813). In other words, the 3D data decoding device obtains the N-ary tree structure of the target point group by decoding the bit stream (encoded data) generated by encoding the N-ary tree structure of the target point group. The 3D data decoding device generates a decoded point group of the target point group from the N-ary tree structure of the target point group (S12814). Note that N is, for example, 8, but may be any power of 2 or any other value.
これによれば、三次元データ復号装置は、復号済みの複数の点群を統合した参照点群を用いて対象点群を復号できる。 This allows the three-dimensional data decoding device to decode the target point group using a reference point group that integrates multiple decoded point groups.
例えば、対象点群のN分木構造を復号(S12813)では、三次元データ復号装置は、参照点群に対象点群に対する動き補償を行い、動き補償後の参照点群のN分木構造(例えば、図42に示すインター参照8分木)を生成し、参照点群のN分木構造を用いて対象点群のN分木構造を復号する。 For example, in decoding the N-ary tree structure of the target point group (S12813), the three-dimensional data decoding device performs motion compensation on the reference point group relative to the target point group, generates an N-ary tree structure of the reference point group after motion compensation (for example, the inter-reference octree shown in Figure 42), and decodes the N-ary tree structure of the target point group using the N-ary tree structure of the reference point group.
例えば、対象点群のN分木構造を復号(S12813)では、三次元データ復号装置は、対象点群のN分木構造をエントロピー復号し、参照点群に基づき、エントロピー復号で用いられる確率パラメータを制御する。例えば、三次元データ復号装置は、参照点群に基づき、複数の確率パラメータから使用する確率パラメータを選択する。 For example, in decoding the N-ary tree structure of the target point group (S12813), the three-dimensional data decoding device entropy decodes the N-ary tree structure of the target point group and controls the probability parameters used in the entropy decoding based on the reference point group. For example, the three-dimensional data decoding device selects a probability parameter to use from multiple probability parameters based on the reference point group.
例えば、三次元データ復号装置は、対象点群の復号点群に参照点群に対する動き補償を行い、動き補償後の復号点群を参照点群に統合することで、参照点群を更新する。 For example, a three-dimensional data decoding device performs motion compensation on the decoded point group of the target point group relative to the reference point group, and updates the reference point group by integrating the decoded point group after motion compensation with the reference point group.
例えば、復号済みの複数の点群の各々は、対象点群と異なるフレームに属する。例えば、復号済みの複数の点群の各々は、対象点群と同じフレームに属する。 For example, each of the decoded multiple point groups belongs to a different frame than the target point group. For example, each of the decoded multiple point groups belongs to the same frame as the target point group.
例えば、三次元データ復号装置は、参照点群を用いた復号の実施が許されているか否かを示す第1情報(例えば、sps_inter_prediction_enabled_flag、又はgps_inter_prediction_enabled_flag)を、複数点群に共通の制御情報(例えばSPS又はGPS)から取得する。 For example, the three-dimensional data decoding device obtains first information (e.g., sps_inter_prediction_enabled_flag or gps_inter_prediction_enabled_flag) indicating whether decoding using a reference point group is permitted from control information common to multiple point groups (e.g., SPS or GPS).
例えば、三次元データ復号装置は、第1情報が参照点群を用いた復号の実施が許されていることを示す場合、復号済みの複数の点群の数に関する第2情報(例えば、sps_max_num_ref_frames_minus1、又はgps_num_ref_frames_minus1)を、複数点群に共通の制御情報(例えばSPS又はGPS)から取得する。例えば、第2情報は、統合する復号済みの点群の数、又は最大数を示す。 For example, when the first information indicates that decoding using a reference point group is permitted, the three-dimensional data decoding device obtains second information regarding the number of decoded point groups (e.g., sps_max_num_ref_frames_minus1 or gps_num_ref_frames_minus1) from control information common to the multiple point groups (e.g., SPS or GPS). For example, the second information indicates the number or maximum number of decoded point groups to be integrated.
例えば、三次元データ復号装置は、プロセッサと、メモリとを備え、プロセッサは、メモリを用いて、上記の処理を行う。 For example, a three-dimensional data decoding device includes a processor and a memory, and the processor uses the memory to perform the above processing.
(実施の形態5)
本実施の形態では、点群(ポイントクラウド)の位置情報に対してインター予測及びイントラ予測のいずれかを切り替えて実行する場合について説明する。
Fifth Embodiment
In this embodiment, a case will be described in which inter prediction and intra prediction are switched and performed on position information of a point cloud.
図48は、本実施の形態に係る三次元データ符号化装置12900のブロック図である。なお、図48では、点群の位置情報(ジオメトリ)の符号化に関する処理部を記載しているが、三次元データ符号化装置12900は、点群の属性情報の符号化等を行う処理部等の他の処理部を備えてもよい。インター予測及びイントラ予測では、符号化済みの点群を参照しつつ符号化対象の点群が符号化される。 Figure 48 is a block diagram of a three-dimensional data encoding device 12900 according to this embodiment. Note that while Figure 48 describes a processing unit related to encoding position information (geometry) of point clouds, the three-dimensional data encoding device 12900 may also include other processing units, such as a processing unit that encodes attribute information of point clouds. In inter prediction and intra prediction, the point cloud to be encoded is encoded while referring to an already encoded point cloud.
三次元データ符号化装置12900は、グループ化部12901と、バッファ12902と、量子化部12903と、逆量子化部12904と、バッファ12905と、イントラ予測部12906と、バッファ12907と、動き検出補償部12908と、インター予測部12909と、切替部12910と、エントロピー符号化部12911とを備える。 The three-dimensional data encoding device 12900 includes a grouping unit 12901, a buffer 12902, a quantization unit 12903, an inverse quantization unit 12904, a buffer 12905, an intra prediction unit 12906, a buffer 12907, a motion estimation and compensation unit 12908, an inter prediction unit 12909, a switching unit 12910, and an entropy encoding unit 12911.
グループ化部12901は、入力された符号化対象の点群のデータである対象点群から、符号化の一単位である予測木(Predtree)とする点群を抽出して1つのグループとして設定する。なお、入力された対象点群では、点群の位置は例えば三次元座標(例えばx、y、z)で表現される。バッファ12902は、生成された予測木を保持する。例えば、バッファ12902は、予測木毎に保持するデータを初期化してもよい。バッファ12902に保持された予測木(Predtree)に含まれる複数の三次元点の一点一点に対して順番に符号化のための処理が実行される。三次元座標は、直交座標で表現されてもよいし、極座標で表現されてもよい。なお、以下では、直交座標で表現された位置情報を直交座標系の位置情報と呼び、極座標で表現された位置情報を極座標系の位置情報と呼ぶ。The grouping unit 12901 extracts a group of points to be used as a prediction tree (Predtree), which is a unit of encoding, from the input target point group, which is data of the point group to be encoded, and sets it as one group. In the input target point group, the positions of the points are expressed, for example, by three-dimensional coordinates (e.g., x, y, z). The buffer 12902 stores the generated prediction tree. For example, the buffer 12902 may initialize the data stored for each prediction tree. Encoding processing is performed sequentially on each of the multiple three-dimensional points included in the prediction tree (Predtree) stored in the buffer 12902. The three-dimensional coordinates may be expressed in either Cartesian coordinates or polar coordinates. Hereinafter, position information expressed in Cartesian coordinates will be referred to as position information in a Cartesian coordinate system, and position information expressed in polar coordinates will be referred to as position information in a polar coordinate system.
そして、予測木(Predtree)に含まれる複数の三次元点のそれぞれと、選択された予測点との差分(第1残差信号)が算出される。この第1残差信号は、予測残差とも言う。また、第1残差信号は、第1残差の一例である。 Then, the difference (first residual signal) between each of the multiple 3D points included in the prediction tree (Predtree) and the selected prediction point is calculated. This first residual signal is also called a prediction residual. The first residual signal is also an example of a first residual.
量子化部12903は、第1残差信号を量子化する。エントロピー符号化部12911は、量子化された第1残差信号をエントロピー符号化して符号化データを生成し、符号化データを含むビットストリームを出力(生成)する。 The quantization unit 12903 quantizes the first residual signal. The entropy coding unit 12911 entropy codes the quantized first residual signal to generate coded data, and outputs (generates) a bitstream including the coded data.
逆量子化部12904は、量子化部12903により量子化された第1残差信号を、逆量子化する。逆量子化された第1残差信号は、選択された予測点(1以上の候補点)に基づく予測値に加算されることでイントラ予測及びインター予測に用いられる三次元点(参照点)として復号される。なお、予測値は、上記実施の形態において説明したように、1以上の候補点の位置情報に基づいて算出される。バッファ12905は、復号されたイントラ予測の参照点群を保持する。例えば、バッファ12905は、予測木(対象点群)毎に保持するデータを初期化してもよい。また、バッファ12907は、インター予測の参照点群を保持する。例えば、バッファ12907は、予測木(対象点群)毎に保持するデータを初期化してもよい。 The inverse quantization unit 12904 inversely quantizes the first residual signal quantized by the quantization unit 12903. The inversely quantized first residual signal is added to a predicted value based on selected prediction points (one or more candidate points) to be decoded as a three-dimensional point (reference point) used for intra prediction and inter prediction. Note that, as described in the above embodiment, the predicted value is calculated based on the position information of one or more candidate points. The buffer 12905 holds a group of decoded reference points for intra prediction. For example, the buffer 12905 may initialize the data held for each prediction tree (target point group). Furthermore, the buffer 12907 holds a group of reference points for inter prediction. For example, the buffer 12907 may initialize the data held for each prediction tree (target point group).
イントラ予測部12906は、予測に用いるイントラ予測点を、符号化対象の三次元点が含まれる予測木(Predtree)に含まれる複数の三次元点(イントラ予測の参照点群)などのような当該予測木(Predtree)内の情報を参照して、所定の方法により決定する。例えば、イントラ予測部12906は、符号化対象の三次元点の直前(例えば、予測木の親ノードなどの祖先ノード)に逆量子化された2点の三次元点(復号点)を用いて外挿するなどしてイントラ予測点を決定してもよい。 The intra prediction unit 12906 determines the intra prediction point to be used for prediction using a predetermined method, by referencing information in the prediction tree (Predtree) that includes the 3D point to be encoded, such as multiple 3D points (a group of reference points for intra prediction) included in the prediction tree (Predtree). For example, the intra prediction unit 12906 may determine the intra prediction point by extrapolating using two 3D points (decoded points) that have been dequantized immediately before the 3D point to be encoded (e.g., an ancestor node such as a parent node in the prediction tree).
動き検出補償部12908は、符号化対象の三次元点が含まれる予測木(Predtree)に含まれる複数の三次元点(複数の復号点)に基づいて符号化済みの点群を再生し、符号化済みの点群と符号化対象の点群との間の変位を検出(動き検出)し、検出した変位に基づき符号化済みの点群を補正(動き補償)することで、位置合わせ後のインター予測の参照点群であるインター予測点群を生成する。 The motion detection and compensation unit 12908 reconstructs the encoded point group based on multiple three-dimensional points (multiple decoded points) included in a prediction tree (Predtree) that includes the three-dimensional point to be encoded, detects (motion detection) the displacement between the encoded point group and the point group to be encoded, and corrects (motion compensation) the encoded point group based on the detected displacement, thereby generating an inter-prediction point group, which is a reference point group for inter-prediction after alignment.
インター予測部12909は、動き補償されたインター予測点群に基づいて、予測に用いるインター予測点を所定の方法により決定する。例えば、インター予測部12909は、インター予測点群から、イントラ予測点に最も近い点をインター予測点として選択してもよいし、イントラ予測点を参照せずに、直前(最後)に符号化した三次元点(例えば、予測木の親ノードなどの祖先ノードに対応する三次元点)の近傍の三次元点(例えば直前に符号化した三次元点に最も近い三次元点)をインター予測点として選択してもよい。The inter prediction unit 12909 determines the inter prediction point to be used for prediction using a predetermined method based on the group of motion-compensated inter prediction points. For example, the inter prediction unit 12909 may select the point closest to the intra prediction point from the group of inter prediction points as the inter prediction point, or may select a 3D point near the immediately preceding (last) encoded 3D point (e.g., a 3D point corresponding to an ancestor node such as a parent node in a prediction tree) as the inter prediction point without referring to the intra prediction point.
切替部12910は、イントラ予測点、及び、インター予測点のいずれかを選択することで、予測に用いる予測点を決定する。このように、三次元データ符号化装置12900では、複数の符号化済みの三次元点のうちの1以上の候補点の位置情報が予測点として決定され、予測点に基づいて予測値が算出される。イントラ予測部12906及びインター予測部12909では、予測点(イントラ予測点またはインター予測点)を、符号化対象の三次元点の直前に符号化した三次元点に基づいて決定する。つまり、三次元データ符号化装置12900は、予測値を算出するための1以上の候補点を、複数の符号化済みの三次元点のうちの1以上の基準点に基づいて決定する。1以上の基準点は、符号化対象の三次元点の直前に符号化した三次元点であり、例えば、予測木において、符号化対象の1つの三次元点の親ノード(祖先ノード)に対応する三次元点であってもよい。The switching unit 12910 selects either an intra-prediction point or an inter-prediction point to determine the prediction point to be used for prediction. In this way, the 3D data encoding device 12900 determines the position information of one or more candidate points from among multiple encoded 3D points as prediction points, and calculates a prediction value based on the prediction point. The intra-prediction unit 12906 and the inter-prediction unit 12909 determine the prediction point (intra-prediction point or inter-prediction point) based on the 3D point encoded immediately before the 3D point to be encoded. In other words, the 3D data encoding device 12900 determines one or more candidate points for calculating a prediction value based on one or more reference points from among multiple encoded 3D points. The one or more reference points are 3D points encoded immediately before the 3D point to be encoded, and may, for example, be 3D points corresponding to the parent node (ancestor node) of the 3D point to be encoded in a prediction tree.
なお、三次元データ符号化装置12900は、後述する図50のフローチャートの手順に従って、イントラ予測点及びインター予測点からいずれか1つを予測点として選択してもよい。また、イントラ予測点とインター予測点とのいずれを予測点に用いるかを選択するための、予測に関する情報(予測情報)は、エントロピー符号化されて各三次元点のヘッダ部に記載されてもよいし、各三次元点とインタリーブされて記載されてもよい。また、動きベクトルなどの動き補償に関する情報は、フレームまたは予測木(Predtree)のヘッダ部に記載されてもよいし、エントロピー符号化されて各三次元点のヘッダ部に記載されてもよいし、各三次元点とインタリーブされて記載されてもよい。また、インター予測の参照点群は、符号化対象のフレームと異なる符号化済みのフレームに含まれる点群であってもよいし、符号化対象のフレームと同じフレームに含まれる符号化済みの点群であってもよい。 The 3D data encoding device 12900 may select either an intra-prediction point or an inter-prediction point as a prediction point according to the procedure of the flowchart in Figure 50, which will be described later. Prediction-related information (prediction information) for selecting whether an intra-prediction point or an inter-prediction point is to be used as a prediction point may be entropy-coded and written in the header section of each 3D point, or may be interleaved with each 3D point. Motion compensation information, such as motion vectors, may be written in the header section of a frame or a prediction tree (Predtree), or may be entropy-coded and written in the header section of each 3D point, or may be interleaved with each 3D point. The reference points for inter-prediction may be a point group included in an encoded frame different from the frame to be encoded, or may be a coded point group included in the same frame as the frame to be encoded.
このように、三次元データ符号化装置12900は、イントラ予測に加えてインター予測も用いて符号化対象点の予測を行うことで、エントロピー符号化する第1残差信号の情報量を低減することができ、符号化効率を向上できる可能性がある。 In this way, the three-dimensional data encoding device 12900 can predict the point to be encoded using inter prediction in addition to intra prediction, thereby reducing the amount of information in the first residual signal to be entropy encoded, potentially improving encoding efficiency.
なお、三次元データ符号化装置12900は、常にインター予測点を参照する必要はなく、所定の時間間隔(例えば1秒毎など)、所定のフレーム間隔(例えば30フレーム毎など)、或いは、三次元データ復号装置へ通知する任意のタイミングなどで、インター予測の参照点群を格納しているバッファ12907を初期化するなどして、符号化対象の点群の情報のみに基づいて符号化するようにしてもよい。これにより、対応する三次元データ復号装置において、インター予測点を参照していないビットストリームの先頭でない点群からの飛び込み再生開始が可能になり、当該ビットストリームのランダムアクセス性またはエラー耐性を向上できる可能性がある。 The 3D data encoding device 12900 does not need to constantly reference inter-prediction points, but may instead encode based only on information about the point group to be encoded, by initializing the buffer 12907 that stores the inter-prediction reference point group at a predetermined time interval (e.g., every second), a predetermined frame interval (e.g., every 30 frames), or at any timing notified to the 3D data decoding device. This makes it possible for a corresponding 3D data decoding device to jump in and start playback from a point group that is not at the beginning of a bitstream that does not reference inter-prediction points, potentially improving the random accessibility or error resilience of the bitstream.
三次元データ符号化装置12900は、入力された符号化対象の点群が直交座標で表現された座標を位置情報として有する場合、直交座標で表現された座標で示される位置情報を符号化する。三次元データ符号化装置12900は、入力された符号化対象の点群が極座標で表現された座標を位置情報として有する場合、極座標で表現された座標で示される位置情報を符号化する。 When the input point cloud to be encoded has coordinates expressed in Cartesian coordinates as position information, the three-dimensional data encoding device 12900 encodes the position information indicated by the coordinates expressed in Cartesian coordinates.When the input point cloud to be encoded has coordinates expressed in polar coordinates as position information, the three-dimensional data encoding device 12900 encodes the position information indicated by the coordinates expressed in polar coordinates.
図49は、本実施の形態に係る三次元データ復号装置12920のブロック図である。なお、図49では、点群の位置情報(ジオメトリ)の復号に関する処理部を記載しているが、三次元データ復号装置12920は、点群の属性情報の復号等を行う処理部等の他の処理部を備えてもよい。三次元データ復号装置12920は、復号済みの点群を参照しつつ復号対象の点群を復号するインター予測復号を行う。例えば、三次元データ復号装置12920は、図48に示す三次元データ符号化装置12900で生成されたビットストリームを復号する。 Figure 49 is a block diagram of a three-dimensional data decoding device 12920 according to this embodiment. Note that while Figure 49 describes a processing unit related to decoding position information (geometry) of point clouds, the three-dimensional data decoding device 12920 may also include other processing units, such as a processing unit that decodes attribute information of point clouds. The three-dimensional data decoding device 12920 performs inter-prediction decoding, which decodes the point cloud to be decoded while referencing point clouds that have already been decoded. For example, the three-dimensional data decoding device 12920 decodes the bitstream generated by the three-dimensional data encoding device 12900 shown in Figure 48.
三次元データ復号装置12920は、エントロピー復号部12921と、逆量子化部12922と、バッファ12923と、イントラ予測部12924と、バッファ12925と、動き補償部12926と、インター予測部12927と、切替部12928とを備える。 The three-dimensional data decoding device 12920 includes an entropy decoding unit 12921, an inverse quantization unit 12922, a buffer 12923, an intra prediction unit 12924, a buffer 12925, a motion compensation unit 12926, an inter prediction unit 12927, and a switching unit 12928.
三次元データ復号装置12920は、三次元データ符号化装置12900において生成されたビットストリームを取得する。 The three-dimensional data decoding device 12920 obtains the bitstream generated by the three-dimensional data encoding device 12900.
エントロピー復号部12921は、入力されたビットストリームを、予測木(Predtree)の三次元点毎にエントロピー復号することで量子化された第1残差信号を生成する。逆量子化部12922は、量子化された第1残差信号を逆量子化して、第1残差信号を再生する。各三次元点の第1残差信号は、各三次元点に対応する予測点に基づく予測値と加算されたのち、復号点として生成(出力)される。つまり、三次元データ復号装置12920は、予測値と予測残差とを加算することで、復号対象の1つの三次元点の位置情報を算出する。 The entropy decoding unit 12921 generates a quantized first residual signal by entropy decoding the input bitstream for each 3D point in the prediction tree (Predtree). The inverse quantization unit 12922 inverse quantizes the quantized first residual signal to reproduce the first residual signal. The first residual signal for each 3D point is added to a predicted value based on the prediction point corresponding to each 3D point, and then generated (output) as a decoded point. In other words, the 3D data decoding device 12920 calculates the position information of one 3D point to be decoded by adding the predicted value and the prediction residual.
バッファ12923は、生成された復号点を、イントラ予測の参照点群として保持する。例えば、バッファ12923は、予測木(対象点群)毎に保持するデータを初期化してもよい。また、バッファ12925は、生成された復号点を、インター予測の参照点群として保持する。例えば、バッファ12925は、予測木(対象点群)毎に保持するデータを初期化してもよい。 Buffer 12923 stores the generated decoded points as a group of reference points for intra prediction. For example, buffer 12923 may initialize the data stored for each prediction tree (target point group). Buffer 12925 stores the generated decoded points as a group of reference points for inter prediction. For example, buffer 12925 may initialize the data stored for each prediction tree (target point group).
イントラ予測部12924は、予測に用いるイントラ予測点を、復号対象の三次元点が含まれる予測木(Predtree)に含まれる複数の三次元点(イントラ予測の参照点群)などのような当該予測木(Predtree)内の情報を参照して、所定の方法により決定する。例えば、イントラ予測部12924は、復号対象の三次元点の直前(例えば、予測木の親ノードなどの祖先ノード)に逆量子化された2点の三次元点(復号点)を用いて外挿するなどしてイントラ予測点を決定してもよい。 The intra prediction unit 12924 determines the intra prediction point to be used for prediction using a predetermined method, by referencing information in the prediction tree (Predtree) that includes the 3D point to be decoded, such as multiple 3D points (a group of reference points for intra prediction) included in the prediction tree (Predtree). For example, the intra prediction unit 12924 may determine the intra prediction point by extrapolating using two 3D points (decoded points) that have been dequantized immediately before the 3D point to be decoded (e.g., an ancestor node such as a parent node in the prediction tree).
動き補償部12926は、復号対象の三次元点が含まれる予測木(Predtree)に含まれる複数の三次元点(複数の復号点)に基づいて復号済みの点群を再生し、復号済みの点群と復号対象の点群との間の変位を補正(動き補償)することで、位置合わせ後のインター予測の参照点群であるインター予測点群を生成する。 The motion compensation unit 12926 reconstructs a decoded point group based on multiple three-dimensional points (multiple decoded points) included in a prediction tree (Predtree) that includes the three-dimensional point to be decoded, and corrects (motion compensates) the displacement between the decoded point group and the point group to be decoded, thereby generating an inter-prediction point group, which is a reference point group for inter-prediction after alignment.
インター予測部12927は、動き補償されたインター予測点群に基づいて、予測に用いるインター予測点を所定の方法により決定する。例えば、インター予測部12927は、インター予測点群から、イントラ予測点に最も近い点を選択してインター予測点として選択してもよいし、イントラ予測点を参照せずに、直前に復号した三次元点(例えば、予測木の親ノードなどの祖先ノードに対応する三次元点)の近傍の三次元点(例えば直前に復号した三次元点に最も近い三次元点)をインター予測点として選択してもよい。The inter prediction unit 12927 determines the inter prediction point to be used for prediction using a predetermined method based on the group of motion-compensated inter prediction points. For example, the inter prediction unit 12927 may select a point from the group of inter prediction points that is closest to the intra prediction point as the inter prediction point, or may select a 3D point near the most recently decoded 3D point (e.g., a 3D point corresponding to an ancestor node such as a parent node in a prediction tree) as the inter prediction point without referring to the intra prediction point.
切替部12928は、イントラ予測点、及び、インター予測点のいずれかを選択することで、予測に用いる予測点を決定する。このように、三次元データ復号装置12920では、複数の復号済みの三次元点のうちの1以上の候補点の位置情報が予測点として決定され、予測点に基づいて予測値が算出される。イントラ予測部12924及びインター予測部12927では、予測点(イントラ予測点またはインター予測点)を、復号対象の三次元点の直前に復号した三次元点に基づいて決定する。つまり、三次元データ復号装置12920は、予測値を算出するための1以上の候補点を、複数の復号済みの三次元点のうちの1以上の基準点に基づいて決定する。1以上の基準点は、復号対象の三次元点の直前に符号化した三次元点であり、例えば、予測木において、復号対象の1つの三次元点の親ノード(祖先ノード)に対応する三次元点であってもよい。The switching unit 12928 selects either an intra-prediction point or an inter-prediction point to determine the prediction point to be used for prediction. In this way, the 3D data decoding device 12920 determines the position information of one or more candidate points from among multiple decoded 3D points as prediction points, and calculates a predicted value based on the prediction point. The intra-prediction unit 12924 and the inter-prediction unit 12927 determine the prediction point (intra-prediction point or inter-prediction point) based on the 3D point decoded immediately before the 3D point to be decoded. In other words, the 3D data decoding device 12920 determines one or more candidate points for calculating a predicted value based on one or more reference points from among multiple decoded 3D points. The one or more reference points are 3D points encoded immediately before the 3D point to be decoded, and may, for example, be 3D points corresponding to the parent node (ancestor node) of the 3D point to be decoded in a prediction tree.
なお、三次元データ復号装置12920は、後述する図51のフローチャートの手順に従って、イントラ予測点及びインター予測点からいずれか1つを予測点として選択してもよい。また、三次元データ復号装置12920は、イントラ予測点とインター予測点とのいずれを予測点に用いるかを選択するための、予測に関する情報(予測情報)に基づいて、イントラ予測点とインター予測点とのいずれか1つを予測点として選択してもよい。予測情報は、エントロピー符号化されて各三次元点のヘッダ部に記載されてもよいし、各三次元点とインタリーブされて記載されてもよい。また、動きベクトルなどの動き補償に関する情報は、フレームまたは予測木(Predtree)のヘッダ部に記載されてもよいし、エントロピー符号化されて各点のヘッダ部に記載されてもよいし、各三次元点とインタリーブされて記載されてもよい。このように、予測情報または動き補償に関する情報は、三次元データ復号装置12920へ、対応する三次元データ符号化装置12900から通知されてもよい。また、インター予測の参照点群は、符号化対象のフレームと異なる符号化済みのフレームに含まれる点群であってもよいし、符号化対象のフレームと同じフレームに含まれる符号化済みの点群であってもよい。 The 3D data decoding device 12920 may select either an intra-prediction point or an inter-prediction point as a prediction point according to the procedure of the flowchart in FIG. 51, which will be described later. The 3D data decoding device 12920 may also select either an intra-prediction point or an inter-prediction point as a prediction point based on prediction-related information (prediction information) for selecting whether an intra-prediction point or an inter-prediction point is to be used as a prediction point. The prediction information may be entropy-encoded and written in the header section of each 3D point, or may be interleaved with each 3D point. Information related to motion compensation, such as motion vectors, may be written in the header section of a frame or a prediction tree (Predtree), or may be entropy-encoded and written in the header section of each point, or may be interleaved with each 3D point. In this way, the prediction information or information related to motion compensation may be notified to the 3D data decoding device 12920 from the corresponding 3D data encoding device 12900. In addition, the reference points for inter prediction may be a group of points included in an already coded frame different from the frame to be coded, or may be a group of coded points included in the same frame as the frame to be coded.
このように、三次元データ復号装置12920は、イントラ予測に加えてインター予測も用いて復号対象点の予測を行うことで、復号済みの点群を参照しつつ符号化されたビットストリーム(例えば、図48の三次元データ符号化装置12900から出力されたビットストリーム)から点群を復号できる。 In this way, the three-dimensional data decoding device 12920 can predict the points to be decoded using inter prediction in addition to intra prediction, thereby decoding the point group from the encoded bit stream (for example, the bit stream output from the three-dimensional data encoding device 12900 in Figure 48) while referring to the decoded point group.
なお、三次元データ復号装置12920は、常にインター予測点を参照する必要はなく、所定の時間間隔(例えば1秒毎など)、所定のフレーム間隔(例えば30フレーム毎など)、或いは、対応する三次元データ符号化装置12900から通知される任意のタイミングなどで、インター予測の参照点群を格納しているバッファ12925を初期化するなどして、復号対象の点群の情報のみに基づいて復号するようにしてもよい。これにより、三次元データ復号装置12920は、インター予測点を参照していないビットストリームの先頭でない点群からの飛び込み再生開始が可能になり、当該ビットストリームのランダムアクセス性やエラー耐性を向上できる可能性がある。 The 3D data decoding device 12920 does not need to constantly reference inter-prediction points, but may instead decode based only on information about the point group to be decoded, for example by initializing the buffer 12925 storing the inter-prediction reference point group at a predetermined time interval (e.g., every second), a predetermined frame interval (e.g., every 30 frames), or at any timing notified by the corresponding 3D data encoding device 12900. This enables the 3D data decoding device 12920 to jump in and start playback from a point group that is not at the beginning of the bitstream and does not reference inter-prediction points, potentially improving the random accessibility and error resistance of the bitstream.
三次元データ復号装置12920は、ビットストリームが直交座標で表現された座標で示される位置情報が符号化された符号化データを有する場合、直交座標で表現された座標で示される位置情報を復号する。三次元データ復号装置12920は、ビットストリームが極座標で表現された座標で示される位置情報が符号化された符号化データを有する場合、極座標で表現された座標で示される位置情報を復号する。 When the bitstream contains coded data in which position information represented by coordinates expressed in Cartesian coordinates is coded, the three-dimensional data decoding device 12920 decodes the position information represented by coordinates expressed in Cartesian coordinates.When the bitstream contains coded data in which position information represented by coordinates expressed in polar coordinates is coded, the three-dimensional data decoding device 12920 decodes the position information represented by coordinates expressed in polar coordinates.
図50は、三次元データ符号化装置12900における、予測木(Predtree)の各三次元点を符号化する手順の一例を示すフローチャートである。 Figure 50 is a flowchart showing an example of a procedure for encoding each three-dimensional point of a prediction tree (Predtree) in a three-dimensional data encoding device 12900.
この例では、三次元データ符号化装置12900は、まずイントラ予測の参照点群からイントラ予測点を決定する(S12901)。三次元データ符号化装置12900は、イントラ予測点を、例えば、既に説明した実施の形態に開示されている、予測木を用いて予測点を決定する方法を用いて決定してもよい。例えば、三次元データ符号化装置12900は、複数の符号化済みの三次元点を用いて予測木を生成し、予測木に基づいて複数の符号化済みの三次元点から1以上の候補点を選択してもよい。三次元データ符号化装置12900は、上記の方法のうち少なくとも一つの方法により決定される少なくとも一つのイントラ予測点のうち、符号量が最も少なくなる予測点をイントラ予測点として決定してもよい。また、三次元データ符号化装置12900は、上記の方法のうち少なくとも一つの方法により決定される少なくとも一つのイントラ予測点のうち、座標残差の絶対値和(または二乗和)が最も小さい予測点をイントラ予測点として決定してもよい。In this example, the 3D data encoding device 12900 first determines an intra-prediction point from a group of intra-prediction reference points (S12901). The 3D data encoding device 12900 may determine the intra-prediction point using, for example, a method of determining a prediction point using a prediction tree, as disclosed in the previously described embodiments. For example, the 3D data encoding device 12900 may generate a prediction tree using multiple encoded 3D points and select one or more candidate points from the multiple encoded 3D points based on the prediction tree. The 3D data encoding device 12900 may determine, as the intra-prediction point, the prediction point that results in the smallest amount of coding among at least one intra-prediction point determined by at least one of the above methods. Furthermore, the 3D data encoding device 12900 may determine, as the intra-prediction point, the prediction point that results in the smallest absolute sum (or sum of squares) of coordinate residuals among at least one intra-prediction point determined by at least one of the above methods.
次に、三次元データ符号化装置12900は、イントラ予測関連パラメータを出力する(S12902)。ステップS12901で決定するイントラ予測点の決定方法の候補が2つ以上ある場合、三次元データ符号化装置12900は、選択した決定方法の候補を示す情報を、イントラ予測関連パラメータとしてビットストリームに出力してもよい。 Next, the three-dimensional data encoding device 12900 outputs intra-prediction related parameters (S12902). If there are two or more candidate methods for determining the intra-prediction points to be determined in step S12901, the three-dimensional data encoding device 12900 may output information indicating the selected candidate method to the bitstream as intra-prediction related parameters.
次に、三次元データ符号化装置12900は、インター予測点を、インター予測点群から抽出された少なくとも一つの候補点を参照して決定する。例えば、三次元データ符号化装置12900は、一つの候補点をインター予測点として決定してもよいし、複数の候補点の座標の平均値を座標として有する予測点をインター予測点として決定してもよい。或いは、三次元データ符号化装置12900は、イントラ予測点と少なくとも一つの候補点との座標の平均値を座標として有する予測点をインター予測点として決定してもよい。Next, the 3D data encoding device 12900 determines an inter-prediction point by referring to at least one candidate point extracted from the group of inter-prediction points. For example, the 3D data encoding device 12900 may determine one candidate point as the inter-prediction point, or may determine a prediction point having, as its coordinates, the average values of the coordinates of multiple candidate points as the inter-prediction point. Alternatively, the 3D data encoding device 12900 may determine, as the inter-prediction point, a prediction point having, as its coordinates, the average values of the coordinates of the intra-prediction point and at least one candidate point.
ここでは、三次元データ符号化装置12900は、少なくとも一つの候補点としてイントラ予測点の近傍に位置している点を探索してもよい(S12903)。 Here, the three-dimensional data encoding device 12900 may search for a point located near the intra-prediction point as at least one candidate point (S12903).
次に、三次元データ符号化装置12900は、決定した少なくとも一つのインター予測点のそれぞれに対して、イントラ予測点に近い順に小さいインデックス値を付与してもよい(S12904)。 Next, the 3D data encoding device 12900 may assign smaller index values to each of the at least one determined inter prediction point in order of proximity to the intra prediction point (S12904).
次に、三次元データ符号化装置12900は、探索が終了したか否かを判定し(S12905)、探索が終了した場合(S12905でYes)、次のステップS12906に進み、探索が終了していない場合(S12905でNo)、ステップS12903に戻る。探索が終了したことは、所定点数のインター予測点を発見したことで判定されてもよいし、所定範囲の点群の全てを探索したことで判定されてもよいし、所定点数のインター予測点を発見したか、所定範囲の点群の全てを探索したかのいずれかを満たしたことで判定されてもよい。 Next, the three-dimensional data encoding device 12900 determines whether the search has ended (S12905). If the search has ended (Yes in S12905), the process proceeds to the next step S12906. If the search has not ended (No in S12905), the process returns to step S12903. The end of the search may be determined by finding a predetermined number of inter-prediction points, by searching all of the point clouds in a predetermined range, or by satisfying either finding a predetermined number of inter-prediction points or searching all of the point clouds in a predetermined range.
次に、三次元データ符号化装置12900は、予測方法を決定する(S12906)。具体的には、三次元データ符号化装置12900は、予測点を決定する方法をイントラ予測にするか、インター予測にするかを決定する。つまり、三次元データ符号化装置12900は、イントラ予測点を予測点として決定するか、インター予測点を予測点として決定するかを決定する。例えば、三次元データ符号化装置12900は、イントラ予測点及びインター予測点のうち、符号量が最も少なくなる予測点の予測方法に決定してもよい。また、三次元データ符号化装置12900は、イントラ予測点及びインター予測点のうち、座標残差の絶対値和(または二乗和)が最も小さい予測点の予測方法に決定してもよい。Next, the 3D data encoding device 12900 determines a prediction method (S12906). Specifically, the 3D data encoding device 12900 determines whether to use intra prediction or inter prediction as the method for determining a prediction point. In other words, the 3D data encoding device 12900 determines whether to use intra prediction points or inter prediction points as prediction points. For example, the 3D data encoding device 12900 may determine the prediction method for the intra prediction point or the inter prediction point that results in the smallest amount of coding. Furthermore, the 3D data encoding device 12900 may determine the prediction method for the intra prediction point or the inter prediction point that results in the smallest absolute sum (or sum of squares) of coordinate residuals.
三次元データ符号化装置12900は、決定した予測方法のモードが、予測方法がインター予測であることを示すインターモードであるか、予測方法がイントラ予測であることを示すイントラ予測モードであるかを判定する(S12907)。 The three-dimensional data encoding device 12900 determines whether the mode of the determined prediction method is an inter mode indicating that the prediction method is inter prediction, or an intra prediction mode indicating that the prediction method is intra prediction (S12907).
三次元データ符号化装置12900は、決定した予測方法がインター予測である場合(S12907でインターモード)、インター予測点を予測点として決定したことを示す識別情報(例えば、フラグ)を、ビットストリームに出力する(S12908)。 If the determined prediction method is inter prediction (inter mode in S12907), the three-dimensional data encoding device 12900 outputs identification information (e.g., a flag) indicating that the inter prediction point has been determined as the prediction point to the bitstream (S12908).
次に、三次元データ符号化装置12900は、インター予測点の座標の決定に使用される候補点の数に関する情報、及び、使用される各候補点のインデックス値などを、インター予測関連パラメータとしてビットストリームに出力する(S12909)。インデックス値は、予測値を決定するために用いられる1以上の候補点に割り当てられていてもよい。Next, the 3D data encoding device 12900 outputs, to the bitstream as inter-prediction-related parameters, information regarding the number of candidate points used to determine the coordinates of the inter-prediction point, and index values for each candidate point used (S12909). Index values may be assigned to one or more candidate points used to determine the prediction value.
また、三次元データ符号化装置12900は、決定した予測方法がイントラ予測である場合(S12907でイントラモード)、イントラ予測点を予測点として決定したことを示す識別情報(例えば、フラグ)を、ビットストリームに出力する(S12911)。なお、ステップS12908及びステップS12911における識別情報は、インター予測点を予測点として決定したか、イントラ予測点を予測点として決定したかを示す情報である。 Furthermore, if the determined prediction method is intra prediction (intra mode in S12907), the 3D data encoding device 12900 outputs identification information (e.g., a flag) indicating that an intra prediction point has been determined as the prediction point to the bitstream (S12911). Note that the identification information in steps S12908 and S12911 is information indicating whether an inter prediction point or an intra prediction point has been determined as the prediction point.
ステップS12909またはステップS12911の後で、三次元データ符号化装置12900は、決定した予測方法により求めた予測点を参照して符号化対象の三次元点の座標情報を符号化する(S12910)。 After step S12909 or step S12911, the three-dimensional data encoding device 12900 encodes the coordinate information of the three-dimensional point to be encoded by referring to the predicted point obtained by the determined prediction method (S12910).
このように、三次元データ符号化装置12900は、インター予測点群とイントラ予測点とを参照して少なくとも一つのインター予測点を決定し、これらのイントラ予測点及びインター予測点から予測点を求める方法を決定し、予測点を参照して符号化対象の三次元点の位置情報(座標情報)を符号化する。 In this way, the three-dimensional data encoding device 12900 determines at least one inter-prediction point by referring to the inter-prediction point group and the intra-prediction points, determines a method for obtaining a prediction point from these intra-prediction points and inter-prediction points, and encodes the position information (coordinate information) of the three-dimensional point to be encoded by referring to the prediction point.
なお、S12903では、イントラ予測点を参照せずに、直前に符号化した三次元点(例えば、予測木の親ノードなどの祖先ノードに対応する三次元点)など、イントラ予測関連パラメータに依らずに一意に決定される三次元点の近傍において、インター予測点を探索するようにしてもよい。この場合は、S12902をS12901の直後では実施せず、S12911の直後にS12902を実施するようにしてもよい。 In S12903, the inter-prediction point may be searched for in the vicinity of a 3D point that is uniquely determined without reference to intra-prediction parameters, such as a 3D point that was encoded immediately before (for example, a 3D point corresponding to an ancestor node such as a parent node of a prediction tree), without referencing the intra-prediction point. In this case, S12902 may not be performed immediately after S12901, but may be performed immediately after S12911.
図51は、三次元データ復号装置12920における、予測木(Predtree)の各三次元点を復号する手順の一例を示すフローチャートである。図51は、図50の符号化する手順に従って生成されたビットストリームの復号に対応している。つまり、ビットストリームは、符号化された第1残差信号(予測残差)と、予測値の算出に用いられる1つの候補点に割り当てられたインデックス値とを含む。 Figure 51 is a flowchart showing an example of a procedure for decoding each 3D point of a prediction tree (Predtree) in a 3D data decoding device 12920. Figure 51 corresponds to the decoding of a bitstream generated according to the encoding procedure of Figure 50. In other words, the bitstream includes an encoded first residual signal (prediction residual) and an index value assigned to one candidate point used to calculate a prediction value.
この例では、三次元データ復号装置12920は、ビットストリームから、まずイントラ予測関連パラメータを取得する(S12921)。 In this example, the 3D data decoding device 12920 first obtains intra-prediction related parameters from the bitstream (S12921).
次に、三次元データ復号装置12920は、取得したイントラ予測関連パラメータに基づいてイントラ予測点を決定する(S12922)。具体的には、三次元データ復号装置12920は、図50のステップS12901と同様の方法でイントラ予測点を決定する。三次元データ復号装置12920は、対応する三次元データ符号化装置12900からイントラ予測関連パラメータが通知され、イントラ予測関連パラメータに応じてイントラ予測点を決定する。イントラ予測関連パラメータは、ステップS12921で取得され、イントラ予測点を決定する少なくとも一つの方法を指定する情報と、この情報に付随するパラメータとを含む。 Next, the 3D data decoding device 12920 determines intra-prediction points based on the acquired intra-prediction-related parameters (S12922). Specifically, the 3D data decoding device 12920 determines intra-prediction points in a manner similar to step S12901 in FIG. 50. The 3D data decoding device 12920 is notified of the intra-prediction-related parameters from the corresponding 3D data encoding device 12900, and determines intra-prediction points in accordance with the intra-prediction-related parameters. The intra-prediction-related parameters are acquired in step S12921 and include information specifying at least one method for determining intra-prediction points and parameters accompanying this information.
次に、三次元データ復号装置12920は、ビットストリームから、予測方法のモードを示す識別情報を取得する(S12923)。 Next, the three-dimensional data decoding device 12920 obtains identification information indicating the mode of the prediction method from the bitstream (S12923).
次に、三次元データ復号装置12920は、取得した識別情報が、予測方法がインター予測であることを示すインターモードを示すか、予測方法がイントラ予測であることを示すイントラ予測モードを示すかを判定する(S12924)。 Next, the 3D data decoding device 12920 determines whether the acquired identification information indicates an inter mode, which indicates that the prediction method is inter prediction, or an intra prediction mode, which indicates that the prediction method is intra prediction (S12924).
三次元データ復号装置12920は、予測方法がインター予測である場合(ステップS12924でインターモード)、ビットストリームからインター予測関連パラメータを取得する(S12925)。 If the prediction method is inter prediction (inter mode in step S12924), the 3D data decoding device 12920 obtains inter prediction related parameters from the bitstream (S12925).
次に、三次元データ復号装置12920は、インター予測点を決定するための処理(S12926~S12929)を実行する。具体的には、三次元データ復号装置12920は、図50のステップS12903~S12905と同様の方法でインター予測点を決定する。例えば、三次元データ復号装置12920は、インター予測点を、インター予測点群から抽出された少なくとも一つの候補点を参照して決定する。例えば、三次元データ復号装置12920は、一つの候補点をインター予測点として決定してもよいし、複数の候補点の座標の平均値を座標として有する予測点をインター予測点として決定してもよい。或いは、三次元データ復号装置12920は、イントラ予測点と少なくとも一つの候補点との座標の平均値を座標として有する予測点をインター予測点として決定してもよい。 Next, the 3D data decoding device 12920 executes processing (S12926 to S12929) for determining an inter-prediction point. Specifically, the 3D data decoding device 12920 determines an inter-prediction point using a method similar to steps S12903 to S12905 of FIG. 50. For example, the 3D data decoding device 12920 determines an inter-prediction point by referring to at least one candidate point extracted from the inter-prediction point group. For example, the 3D data decoding device 12920 may determine one candidate point as an inter-prediction point, or may determine a prediction point having, as its coordinates, the average values of the coordinates of multiple candidate points as an inter-prediction point. Alternatively, the 3D data decoding device 12920 may determine, as an inter-prediction point, a prediction point having, as its coordinates, the average values of the coordinates of the intra-prediction point and at least one candidate point.
ここでは、三次元データ復号装置12920は、少なくとも一つの候補点としてイントラ予測点の近傍に位置している点を探索してもよい(S12926)。 Here, the 3D data decoding device 12920 may search for a point located near the intra-prediction point as at least one candidate point (S12926).
次に、三次元データ復号装置12920は、決定した少なくとも一つのインター予測点のそれぞれに対して、イントラ予測点に近い順に小さいインデックス値を付与してもよい(S12927)。 Next, the 3D data decoding device 12920 may assign smaller index values to each of the at least one determined inter prediction point in order of proximity to the intra prediction point (S12927).
次に、三次元データ復号装置12920は、探索が終了したか否かを判定し(S12928)、探索が終了した場合(S12928でYes)、次のステップS12929に進み、探索が終了していない場合(S12928でNo)、ステップS12926に戻る。探索が終了したことは、所定点数のインター予測点を発見したことで判定されてもよいし、所定範囲の点群の全てを探索したことで判定されてもよいし、所定点数のインター予測点を発見したか、所定範囲の点群の全てを探索したかのいずれかを満たしたことで判定されてもよい。 Next, the 3D data decoding device 12920 determines whether the search has ended (S12928). If the search has ended (Yes in S12928), the process proceeds to the next step S12929. If the search has not ended (No in S12928), the process returns to step S12926. The end of the search may be determined by finding a predetermined number of inter-prediction points, by searching all of the point clouds in a predetermined range, or by satisfying either finding a predetermined number of inter-prediction points or searching all of the point clouds in a predetermined range.
次に、三次元データ復号装置12920は、インター予測点群とイントラ予測点とを参照しつつインター予測関連パラメータに基づいてインター予測点を決定する(S12929)。例えば、三次元データ復号装置12920は、インター予測関連パラメータに含まれる、インター予測点の座標の決定に使用される候補点の数に関する情報、及び、使用される各候補点に割り当てられたインデックス値に基づいて、インター予測点の座標の決定に使用される候補点を特定し、特定した候補点を用いてインター予測点の座標を決定することで、インター予測点を決定する。つまり、三次元データ復号装置12920は、ビットストリームに含まれるインデックス値に基づいて、複数の復号済みの三次元点から1つの候補点を選択する。Next, the 3D data decoding device 12920 determines an inter-prediction point based on the inter-prediction-related parameters while referring to the inter-prediction point group and the intra-prediction point (S12929). For example, the 3D data decoding device 12920 identifies candidate points to be used in determining the coordinates of the inter-prediction point based on information included in the inter-prediction-related parameters regarding the number of candidate points to be used in determining the coordinates of the inter-prediction point and an index value assigned to each candidate point used, and determines the coordinates of the inter-prediction point using the identified candidate points, thereby determining the inter-prediction point. In other words, the 3D data decoding device 12920 selects one candidate point from multiple decoded 3D points based on the index value included in the bitstream.
三次元データ復号装置12920は、ステップS12929の後、または、ステップS12924でイントラモードである場合、指定された予測方法により求めた予測点を参照して復号対象の三次元点の位置情報(座標情報)を復号する(S12930)。 After step S12929, or if intra mode is selected in step S12924, the three-dimensional data decoding device 12920 decodes the position information (coordinate information) of the three-dimensional point to be decoded by referring to the predicted point obtained using the specified prediction method (S12930).
このように、三次元データ復号装置12920は、予測方法がインター予測である場合、インター予測点を参照して復号対象の点の座標情報を復号し、予測方法がイントラ予測である場合、イントラ予測点を参照して復号対象の点の座標情報を復号する。 In this way, when the prediction method is inter prediction, the 3D data decoding device 12920 decodes the coordinate information of the point to be decoded by referring to the inter prediction point, and when the prediction method is intra prediction, it decodes the coordinate information of the point to be decoded by referring to the intra prediction point.
なお、S12926では、イントラ予測点を参照せずに、直前に復号した三次元点(例えば、予測木の親ノードなどの祖先ノードに対応する三次元点)など、イントラ予測関連パラメータに依らずに一意に決定される三次元点の近傍において、インター予測点を探索するようにしてもよい。この場合は、S12921及びS12922をS12923の直前では実施せず、S12924でイントラモードと判定された場合にS12921及びS12922を実施するようにしてもよい。 In S12926, the inter-prediction point may be searched for in the vicinity of a 3D point that is uniquely determined without reference to intra-prediction parameters, such as the most recently decoded 3D point (e.g., a 3D point corresponding to an ancestor node such as a parent node of a prediction tree), without reference to the intra-prediction point. In this case, S12921 and S12922 may not be performed immediately before S12923, and S12921 and S12922 may be performed if intra mode is determined in S12924.
図52は、本実施の形態の変形例に係る三次元データ符号化装置12930のブロック図である。なお、図52では、点群の位置情報(ジオメトリ)の符号化に関する処理部を記載しているが、三次元データ符号化装置12930は、点群の属性情報の符号化等を行う処理部等の他の処理部を備えてもよい。インター予測及びイントラ予測では、符号化済みの点群を参照しつつ符号化対象の点群が符号化される。三次元データ符号化装置12930は、その構成及び動作において、図48の三次元データ符号化装置12900と比較して、直交座標で表現された位置情報を有する点群を極座標で表現された位置情報に変換して符号化を行うための座標変換部12931を有する点と、極座標で表現された位置情報の予測残差(第1残差信号)の量子化を行わない点と、直交座標と極座標との間の変換で生じる誤差に相当する直交座標の第2残差信号を量子化する点とが異なる。一方で、三次元データ符号化装置12930は、その構成及び動作において、三次元データ符号化装置12900と比較して、上記の異なる点以外の点が同じである。 Figure 52 is a block diagram of a three-dimensional data encoding device 12930 according to a modified example of this embodiment. While Figure 52 illustrates a processing unit related to encoding the position information (geometry) of a point cloud, the three-dimensional data encoding device 12930 may also include other processing units, such as a processing unit that encodes attribute information of the point cloud. In inter-prediction and intra-prediction, the point cloud to be encoded is encoded while referencing an already-encoded point cloud. The three-dimensional data encoding device 12930 differs in its configuration and operation from the three-dimensional data encoding device 12900 of Figure 48 in that it includes a coordinate conversion unit 12931 that converts a point cloud having position information expressed in Cartesian coordinates into position information expressed in polar coordinates for encoding, does not quantize the prediction residual (first residual signal) of the position information expressed in polar coordinates, and quantizes a second residual signal in Cartesian coordinates that corresponds to the error that occurs in the conversion between Cartesian coordinates and polar coordinates. On the other hand, the three-dimensional data encoding device 12930 is the same in configuration and operation as the three-dimensional data encoding device 12900 except for the differences described above.
三次元データ符号化装置12930は、座標変換部12931と、グループ化部12932と、バッファ12933と、バッファ12934と、イントラ予測部12935と、バッファ12936と、動き検出補償部12937と、インター予測部12938と、切替部12939と、座標変換部12940と、バッファ12941と、量子化部12942と、エントロピー符号化部12943とを備える。 The three-dimensional data encoding device 12930 includes a coordinate transformation unit 12931, a grouping unit 12932, a buffer 12933, a buffer 12934, an intra prediction unit 12935, a buffer 12936, a motion estimation and compensation unit 12937, an inter prediction unit 12938, a switching unit 12939, a coordinate transformation unit 12940, a buffer 12941, a quantization unit 12942, and an entropy encoding unit 12943.
座標変換部12931は、入力された符号化対象の点群のデータである対象点群の位置情報の座標系を直交座標系から極座標系に変換する。つまり、座標変換部12931は、符号化対象の1つの三次元点の直交座標系の位置情報の座標系を変換することで極座標系の位置情報を生成する。極座標に変換された符号化対象の点群はグループ化部12932に出力される。 The coordinate conversion unit 12931 converts the coordinate system of the position information of the target point group, which is the input data of the point group to be encoded, from a Cartesian coordinate system to a polar coordinate system. In other words, the coordinate conversion unit 12931 generates position information in the polar coordinate system by converting the coordinate system of the position information of a single three-dimensional point to be encoded in the Cartesian coordinate system. The point group to be encoded converted to polar coordinates is output to the grouping unit 12932.
グループ化部12932は、極座標に変換された符号化対象の点群である対象点群から、符号化の一単位である予測木(Predtree)とする点群を抽出して1つのグループとして設定する。バッファ12933は、生成された予測木を保持する。例えば、バッファ12933は、予測木毎に保持するデータを初期化してもよい。バッファ12933に保持された予測木(Predtree)に含まれる複数の三次元点の一点一点に対して順番に符号化のための処理が実行される。 The grouping unit 12932 extracts a group of points to be used as a prediction tree (Predtree), which is a unit of encoding, from the target point group, which is a group of points to be encoded that have been converted into polar coordinates, and sets it as one group. The buffer 12933 stores the generated prediction tree. For example, the buffer 12933 may initialize the data stored for each prediction tree. The encoding process is performed sequentially on each of the multiple three-dimensional points included in the prediction tree (Predtree) stored in the buffer 12933.
バッファ12933に保持された予測木に含まれる複数の三次元点のそれぞれ(符号化対象の点)と、当該符号化対象の点に対して選択された予測点との間の差分(第1残差信号)が算出される。この第1残差信号は、極座標で表現された位置情報の残差信号である。第1残差信号は、予測残差とも言う。この第1残差信号は、第1残差の一例である。バッファ12933に保持される複数の三次元点の位置情報は極座標系に変換されているため、第1残差は、変換後の極座標系の位置情報と予測値との差分である。 A difference (first residual signal) is calculated between each of the multiple three-dimensional points (points to be coded) included in the prediction tree stored in buffer 12933 and the prediction point selected for the point to be coded. This first residual signal is a residual signal of position information expressed in polar coordinates. The first residual signal is also called a prediction residual. This first residual signal is an example of a first residual. Because the position information of the multiple three-dimensional points stored in buffer 12933 has been converted to a polar coordinate system, the first residual is the difference between the position information in the polar coordinate system after the conversion and the predicted value.
そして、第1残差信号と予測点とは加算されて、符号化処理済みの復号点としてバッファ12934、12936に保持される。バッファ12934、12936に保持される復号点の位置情報は、極座標により表現される。この点で、バッファ12934、12936の機能は、バッファ12905、12907の機能と異なるが、それ以外の機能は、同じである。 The first residual signal and the predicted point are then added together and stored in buffers 12934 and 12936 as decoded points that have been encoded. The position information of the decoded points stored in buffers 12934 and 12936 is expressed in polar coordinates. In this respect, the functions of buffers 12934 and 12936 differ from those of buffers 12905 and 12907, but otherwise their functions are the same.
また、イントラ予測部12935、動き検出補償部12937、インター予測部12938、及び切替部12939も同様に、処理対象となる三次元点の位置情報が極座標で表現されている点においてイントラ予測部12906、動き検出補償部12908、インター予測部12909、及び切替部12910とその機能が異なるが、それ以外の機能は同じである。 Similarly, the intra prediction unit 12935, motion detection and compensation unit 12937, inter prediction unit 12938, and switching unit 12939 differ in function from the intra prediction unit 12906, motion detection and compensation unit 12908, inter prediction unit 12909, and switching unit 12910 in that the position information of the three-dimensional point to be processed is expressed in polar coordinates, but otherwise their functions are the same.
座標変換部12940は、バッファ12934、12936に保持される復号点と同じ復号点を取得し、取得した復号点の位置情報の座標系を極座標系から直交座標系に変換する。つまり、座標変換部12940は、座標変換部12931による変換後の極座標系の位置情報の座標系を逆変換することで直交座標系の位置情報を生成する。 The coordinate conversion unit 12940 acquires the same decoding points as those stored in the buffers 12934 and 12936, and converts the coordinate system of the position information of the acquired decoding points from a polar coordinate system to a Cartesian coordinate system. In other words, the coordinate conversion unit 12940 generates position information in a Cartesian coordinate system by inversely converting the coordinate system of the polar coordinate system position information after conversion by the coordinate conversion unit 12931.
バッファ12941は、三次元データ符号化装置12930に入力された、直交座標で表現された三次元点の位置情報を保持する。 Buffer 12941 holds the position information of three-dimensional points expressed in Cartesian coordinates input to the three-dimensional data encoding device 12930.
そして、入力された直交座標系の位置情報と、座標変換部12940において極座標系から直交座標系に座標系が変換された直交座標系の位置情報との差分(第2残差信号)が算出される。この第2残差信号は、第2残差の一例である。つまり、第2残差信号は、座標変換部12931において座標変換が行われていない直交座標系の位置情報と、一度極座標に変換された後にさらに直交座標系に逆変換された後の位置情報との差分であり、座標変換により発生する変換誤差である。 Then, the difference (second residual signal) between the input position information in the Cartesian coordinate system and the position information in the Cartesian coordinate system obtained by converting the coordinate system from a polar coordinate system to a Cartesian coordinate system in the coordinate conversion unit 12940 is calculated. This second residual signal is an example of a second residual. In other words, the second residual signal is the difference between the position information in the Cartesian coordinate system that has not been subjected to coordinate conversion in the coordinate conversion unit 12931 and the position information that has been converted to polar coordinates and then converted back to a Cartesian coordinate system, and is a conversion error that occurs due to the coordinate conversion.
量子化部12942は、第2残差信号を量子化する。 The quantization unit 12942 quantizes the second residual signal.
エントロピー符号化部12943は、第1残差信号と、量子化された第2残差信号とをエントロピー符号化して符号化データを生成し、符号化データを含むビットストリームを出力する。 The entropy coding unit 12943 entropy codes the first residual signal and the quantized second residual signal to generate coded data and outputs a bitstream including the coded data.
このように、三次元データ符号化装置12930は、三次元点の位置情報の座標系を直交座標系から極座標系に変換して、極座標系の位置情報を符号化する。これにより、LiDARなどのようにセンサ位置を中心に周囲の物体の三次元位置を取得して生成された点群を符号化する際に、符号化対象の点の予測精度を向上させることができ、符号化効率を向上させることができる可能性がある。 In this way, the three-dimensional data encoding device 12930 converts the coordinate system of the position information of three-dimensional points from a Cartesian coordinate system to a polar coordinate system and encodes the position information in the polar coordinate system. This makes it possible to improve the prediction accuracy of the points to be encoded when encoding a point cloud generated by acquiring the three-dimensional positions of surrounding objects centered on a sensor position, such as with LiDAR, and potentially improve encoding efficiency.
図53は、本実施の形態の変形例に係る三次元データ復号装置12950のブロック図である。なお、図53では、点群の位置情報(ジオメトリ)の復号に関する処理部を記載しているが、三次元データ復号装置12950は、点群の属性情報の復号等を行う処理部等の他の処理部を備えてもよい。三次元データ復号装置12950は、復号済みの点群を参照しつつ復号対象の点群を復号するインター予測復号を行う。例えば、三次元データ復号装置12950は、図52に示す三次元データ符号化装置12930で生成されたビットストリームを復号する。三次元データ復号装置12950は、基本的な構成及び動作において、図49の三次元データ復号装置12920と比較して、第1残差信号(予測残差)の逆量子化を行わない点と、直交座標と極座標との間の変換で生じる変換誤差に相当する直交座標の第2残差信号をエントロピー復号して逆量子化して再生し、対応する極座標の復号点から直交座標に変換された点に加算して直交座標の復号点として出力する点とが異なる。一方で、三次元データ復号装置12950は、三次元データ復号装置12920と比較して、上記の異なる点以外の点が同じである。 Figure 53 is a block diagram of a three-dimensional data decoding device 12950 relating to a modified example of this embodiment. Note that while Figure 53 describes a processing unit related to decoding position information (geometry) of point clouds, the three-dimensional data decoding device 12950 may also include other processing units, such as a processing unit that decodes attribute information of point clouds. The three-dimensional data decoding device 12950 performs inter-prediction decoding, which decodes the point cloud to be decoded while referencing point clouds that have already been decoded. For example, the three-dimensional data decoding device 12950 decodes the bitstream generated by the three-dimensional data encoding device 12930 shown in Figure 52. The three-dimensional data decoding device 12950 differs in basic configuration and operation from the three-dimensional data decoding device 12920 of Fig. 49 in that it does not perform inverse quantization of the first residual signal (prediction residual), and in that it entropy decodes and inverse quantizes a second residual signal in orthogonal coordinates that corresponds to the conversion error that occurs in the conversion between orthogonal coordinates and polar coordinates to reproduce it, adds it to a point converted from the corresponding decoded point in polar coordinates to orthogonal coordinates, and outputs it as a decoded point in orthogonal coordinates. On the other hand, the three-dimensional data decoding device 12950 is the same as the three-dimensional data decoding device 12920 in all respects except for the above differences.
三次元データ復号装置12950は、エントロピー復号部12951と、バッファ12952と、イントラ予測部12953と、バッファ12954と、動き補償部12955と、インター予測部12956と、切替部12957と、座標変換部12958と、逆量子化部12959とを備える。 The three-dimensional data decoding device 12950 includes an entropy decoding unit 12951, a buffer 12952, an intra prediction unit 12953, a buffer 12954, a motion compensation unit 12955, an inter prediction unit 12956, a switching unit 12957, a coordinate transformation unit 12958, and an inverse quantization unit 12959.
エントロピー復号部12951は、入力されたビットストリームを、予測木(Predtree)の三次元点毎にエントロピー復号することで第1残差信号と、量子化された第2残差信号とを生成する。各三次元点の第1残差信号は、各三次元点に対応する予測点に基づく予測値と加算されたのち、極座標で表現された復号点として生成(出力される)。 The entropy decoding unit 12951 entropy decodes the input bitstream for each 3D point in the prediction tree (Predtree) to generate a first residual signal and a quantized second residual signal. The first residual signal for each 3D point is added to a predicted value based on the prediction point corresponding to each 3D point, and then generated (output) as a decoded point expressed in polar coordinates.
バッファ12952は、生成された復号点を、イントラ予測の参照点群として保持する。例えば、バッファ12952は、予測木(対象点群)毎に保持するデータを初期化してもよい。また、バッファ12954は、生成された復号点を、インター予測の参照点群として保持する。例えば、バッファ12954は、予測木(対象点群)毎に保持するデータを初期化してもよい。バッファ12952、12954に保持される復号点の位置情報は、極座標により表現される。この点で、バッファ12952、12954の機能は、バッファ12923、12925の機能と異なるが、それ以外の機能は、同じである。 Buffer 12952 holds the generated decoded points as a group of reference points for intra prediction. For example, buffer 12952 may initialize the data it holds for each prediction tree (target point group). Buffer 12954 also holds the generated decoded points as a group of reference points for inter prediction. For example, buffer 12954 may initialize the data it holds for each prediction tree (target point group). The position information of the decoded points held in buffers 12952 and 12954 is expressed in polar coordinates. In this respect, the functions of buffers 12952 and 12954 differ from those of buffers 12923 and 12925, but the other functions are the same.
また、イントラ予測部12953、動き補償部12955、インター予測部12956、及び切替部12957も同様に、処理対象となる三次元点の位置情報が極座標で表現されている点においてイントラ予測部12924、動き補償部12926、インター予測部12927、及び切替部12928とその機能が異なるが、それ以外の機能は同じである。 Similarly, the intra prediction unit 12953, motion compensation unit 12955, inter prediction unit 12956, and switching unit 12957 differ in function from the intra prediction unit 12924, motion compensation unit 12926, inter prediction unit 12927, and switching unit 12928 in that the position information of the three-dimensional point to be processed is expressed in polar coordinates, but otherwise their functions are the same.
座標変換部12958は、バッファ12952、12954に保持される復号点と同じ復号点を取得し、取得した復号点の位置情報の座標系を極座標系から直交座標系に変換する。 The coordinate conversion unit 12958 acquires the same decoding points as those stored in buffers 12952 and 12954, and converts the coordinate system of the position information of the acquired decoding points from a polar coordinate system to a Cartesian coordinate system.
逆量子化部12959は、量子化された第2残差信号を逆量子化して、第2残差信号を再生する。 The inverse quantization unit 12959 inverse quantizes the quantized second residual signal to reproduce the second residual signal.
座標変換部12958により座標変換されて得られた直交座標系の位置情報と、逆量子化部12959により逆量子化されて再生された第2残差信号とは、加算されたのち、直交座標系の位置情報を含む復号点として生成(出力)される。 The position information in the Cartesian coordinate system obtained by coordinate transformation by the coordinate transformation unit 12958 and the second residual signal reproduced by inverse quantization by the inverse quantization unit 12959 are added together and then generated (output) as a decoded point including position information in the Cartesian coordinate system.
このように、三次元データ復号装置12950は、極座標系の位置情報を有する復号点の座標系を極座標系から直交座標系に変換して、直交座標系の位置情報と極座標系の位置情報との間の変換で生じる誤差に相当する直交座標の第2残差信号に加算する手段を備える。これにより、三次元データ復号装置12950は、極座標において符号化済みの点群を参照しつつ符号化されたビットストリーム(例えば、図52の三次元データ符号化装置12930から出力されたビットストリーム)から点群を復号できる。 In this way, the three-dimensional data decoding device 12950 is equipped with means for converting the coordinate system of a decoded point having position information in a polar coordinate system from a polar coordinate system to a Cartesian coordinate system, and adding it to a second residual signal in Cartesian coordinates that corresponds to the error that occurs in the conversion between the position information in the Cartesian coordinate system and the position information in the polar coordinate system. This allows the three-dimensional data decoding device 12950 to decode a point cloud from an encoded bit stream (e.g., a bit stream output from the three-dimensional data encoding device 12930 in Figure 52) while referencing the point cloud that has already been encoded in polar coordinates.
図54は、ジオメトリパラメータセット(GPS)のシンタックスの一例である。このシンタックスは、図48~図53を用いて説明した三次元データ符号化装置12900、12930及び三次元データ復号装置12920、12950において用いられる。 Figure 54 shows an example of geometry parameter set (GPS) syntax. This syntax is used in the three-dimensional data encoding devices 12900, 12930 and three-dimensional data decoding devices 12920, 12950 described using Figures 48 to 53.
これらの例に示すように、GPSにおいて、例えばgps_alt_coordinates_flagのように、各点の復号処理において極座標など直交座標と別の座標系を用いるか否かを示す情報を通知してもよい。gps_alt_coordinates_flagは、その値が1に設定されている場合(つまり、gps_alt_coordinates_flag=1の場合)、GPSを参照するビットストリームの位置情報のデータユニットの復号処理において、代替座標系(例えば、極座標系)が使用されることを示す。gps_alt_coordinates_flagは、その値が0に設定されている場合(つまり、gps_alt_coordinates_flag=0の場合)、GPSを参照するビットストリームの位置情報のデータユニットの復号処理において、代替座標系が使用されないことを示す。つまり、gps_alt_coordinates_flagは、符号化データが極座標系で算出された第1符号化データを含むか否かを示してもよい。なお、gps_alt_coordinates_flagは、符号化データが極座標系で算出された第1符号化データを含むか否かを示す第1識別情報の一例である。 As shown in these examples, GPS may notify information, such as gps_alt_coordinates_flag, indicating whether a coordinate system other than Cartesian coordinates, such as polar coordinates, is used in the decoding process for each point. When gps_alt_coordinates_flag is set to 1 (i.e., when gps_alt_coordinates_flag = 1), it indicates that an alternative coordinate system (e.g., a polar coordinate system) is used in the decoding process for data units of position information in the bitstream that reference GPS. When gps_alt_coordinates_flag is set to 0 (i.e., when gps_alt_coordinates_flag = 0), it indicates that an alternative coordinate system is not used in the decoding process for data units of position information in the bitstream that reference GPS. In other words, gps_alt_coordinates_flag may indicate whether the encoded data includes first encoded data calculated in a polar coordinate system. Note that gps_alt_coordinates_flag is an example of first identification information indicating whether the encoded data includes first encoded data calculated in a polar coordinate system.
また、各三次元点の復号処理において極座標系などのように直交座標系とは別の座標系(代替座標系)を用いる場合(例えば、gps_alt_coordinates_flag=1の場合など)に、例えばgps_coordinate_trans_enabled_flagのように、各三次元点を三次元データ復号装置から出力する前に復号点の座標変換(例えば極座標系から直交座標系に変換するなど)を実施するか否かを示す座標変換情報を通知してもよい。gps_alt_coordinates_flag=1である場合(つまり、第1識別情報が、符号化データが第1符号化データを含むことを示す場合)とは、具体的には、予測値の算出に用いられる1以上の候補点の位置情報、及び、第1残差の算出に用いられる符号化対象の1つの三次元点の位置情報が、極座標系の位置情報である場合である。この場合、ビットストリームは、gps_coordinate_trans_enabled_flagを含む。gps_coordinate_trans_enabled_flagは、復号において極座標系の位置情報を出力するか、直交座標系の位置情報を出力するかを示す第2識別情報の一例である。また、gps_alt_coordinates_flag=1である場合、符号化において、第1残差を量子化し、量子化された第1残差を符号化する三次元データ符号化装置12900では、極座標系の位置情報が符号化される。このため、gps_alt_coordinates_flag=1であり、かつ、gps_coordinate_trans_enabled_flag=0の場合、極座標系の位置情報が符号化されると言え、gps_coordinate_trans_enabled_flag=0は復号において極座標系の位置情報を出力することを示していると言える。なお、極座標系の位置情報を出力するか否かは、他のフラグ(識別情報)により切り替えられてもよい。 Furthermore, when a coordinate system (alternate coordinate system) other than a Cartesian coordinate system, such as a polar coordinate system, is used in the decoding process of each 3D point (e.g., when gps_alt_coordinates_flag = 1), coordinate transformation information, such as gps_coordinate_trans_enabled_flag, may be notified, indicating whether to perform coordinate transformation of each decoded point (e.g., from a polar coordinate system to a Cartesian coordinate system) before outputting the 3D point from the 3D data decoding device. When gps_alt_coordinates_flag = 1 (i.e., when the first identification information indicates that the encoded data includes first encoded data), specifically, the position information of one or more candidate points used to calculate the predicted value and the position information of one 3D point to be encoded used to calculate the first residual are position information in the polar coordinate system. In this case, the bitstream includes gps_coordinate_trans_enabled_flag. gps_coordinate_trans_enabled_flag is an example of second identification information indicating whether to output position information in the polar coordinate system or the Cartesian coordinate system during decoding. Furthermore, when gps_alt_coordinates_flag=1, the three-dimensional data encoding device 12900 quantizes the first residual during encoding and encodes the quantized first residual, encoding position information in a polar coordinate system. Therefore, when gps_alt_coordinates_flag=1 and gps_coordinate_trans_enabled_flag=0, it can be said that position information in a polar coordinate system is encoded, and gps_coordinate_trans_enabled_flag=0 can be said to indicate that position information in a polar coordinate system is output during decoding. Whether or not to output position information in a polar coordinate system may be switched by another flag (identification information).
なお、gps_alt_coordinates_flag=0である場合(つまり、第1識別情報が、符号化データが第1符号化データを含まないことを示す場合)、ビットストリームは、gps_coordinate_trans_enabled_flag(第2識別情報)を含まなくてもよい。 Note that if gps_alt_coordinates_flag=0 (i.e., if the first identification information indicates that the encoded data does not include the first encoded data), the bitstream does not need to include gps_coordinate_trans_enabled_flag (second identification information).
gps_coordinate_trans_enabled_flagは、その値が1に設定されている場合(つまり、gps_coordinate_trans_enabled_flag=1の場合)、GPSを参照するビットストリームの位置情報のデータユニットの復号処理において、座標系を他の座標系に変換することを示す。このため、gps_alt_coordinates_flag=1であり、かつ、gps_coordinate_trans_enabled_flag=0の場合、直交座標系の位置情報が復号されることになるため、gps_coordinate_trans_enabled_flag=0は復号において直交座標系の位置情報を出力することを示していると言える。 When gps_coordinate_trans_enabled_flag is set to 1 (i.e., when gps_coordinate_trans_enabled_flag=1), it indicates that the coordinate system is converted to another coordinate system during the decoding process of the data unit of position information in the bitstream that references GPS. Therefore, when gps_alt_coordinates_flag=1 and gps_coordinate_trans_enabled_flag=0, position information in the Cartesian coordinate system is decoded, so gps_coordinate_trans_enabled_flag=0 can be said to indicate that position information in the Cartesian coordinate system is output during decoding.
gps_coordinate_trans_enabled_flagは、その値が0に設定されている場合(つまり、gps_coordinate_trans_enabled_flag=0の場合)、GPSを参照するビットストリームの位置情報のデータユニットの復号処理において、座標系を他の座標系に変換しないことを示す。なお、gps_coordinate_trans_enabled_flagが示されていない場合、gps_coordinate_trans_enabled_flagの値が0に設定されているとみなされてもよい。 When gps_coordinate_trans_enabled_flag is set to 0 (i.e., when gps_coordinate_trans_enabled_flag=0), it indicates that the coordinate system will not be converted to another coordinate system when decoding data units of position information in the bitstream that reference GPS. Note that when gps_coordinate_trans_enabled_flag is not specified, the value of gps_coordinate_trans_enabled_flag may be considered to be set to 0.
なお、各三次元点を三次元データ復号装置から出力する前に復号点の座標変換を行わない場合(例えば、gps_coordinate_trans_enabled_flag=0の場合)、図48に示す三次元データ符号化装置12900と図49に示す三次元データ復号装置12920とにより、点群の符号化及び復号が実施されてもよい。また、各三次元点を三次元データ復号装置から出力する前に復号点の座標変換を行う場合(例えば、gps_coordinate_trans_enabled_flag=1の場合)、図52に示す三次元データ符号化装置12930と図53に示す三次元データ復号装置12950とにより、点群の符号化及び復号が実施されてもよい。 Note that if coordinate transformation of decoded points is not performed before each 3D point is output from the 3D data decoding device (for example, when gps_coordinate_trans_enabled_flag = 0), the point cloud may be encoded and decoded using the 3D data encoding device 12900 shown in Figure 48 and the 3D data decoding device 12920 shown in Figure 49. Note that if coordinate transformation of decoded points is performed before each 3D point is output from the 3D data decoding device (for example, when gps_coordinate_trans_enabled_flag = 1), the point cloud may be encoded and decoded using the 3D data encoding device 12930 shown in Figure 52 and the 3D data decoding device 12950 shown in Figure 53.
gps_alt_coordinates_flag及びgps_coordinate_trans_enabled_flagが三次元データ符号化装置から三次元データ復号装置へ通知されることで、各三次元点の符号化及び復号において極座標など直交座標と別の座標系を用いる場合(例えば、gps_alt_coordinates_flag=1の場合など)においても、符号化対象の点群に応じて図48に示す三次元データ符号化装置12900と図52に示す三次元データ符号化装置12930とを切り替えることが可能となり、これにより符号化効率を向上できる可能性がある。 By notifying the three-dimensional data encoding device of gps_alt_coordinates_flag and gps_coordinate_trans_enabled_flag, it becomes possible to switch between the three-dimensional data encoding device 12900 shown in Figure 48 and the three-dimensional data encoding device 12930 shown in Figure 52 depending on the point group to be encoded, even when a coordinate system other than Cartesian coordinates, such as polar coordinates, is used to encode and decode each three-dimensional point (for example, when gps_alt_coordinates_flag = 1), which may improve encoding efficiency.
なお、図54では、GPSのシンタックスを例示したが、 gps_alt_coordinates_flag及びgps_coordinate_trans_enabled_flagは、SPSに含まれていてもよいし、データユニットのヘッダに含まれていてもよいし、他の制御情報にメタデータとして含まれていてもよい。 Note that Figure 54 illustrates GPS syntax, but gps_alt_coordinates_flag and gps_coordinate_trans_enabled_flag may be included in the SPS, the header of the data unit, or as metadata in other control information.
図55は、各三次元点(PredtreeのNode)のシンタックスの一例である。このシンタックスは、図48~図54を用いて説明した三次元データ符号化装置12900、12930及び三次元データ復号装置12920、12950において用いられる。 Figure 55 is an example of the syntax for each three-dimensional point (Predtree node). This syntax is used in the three-dimensional data encoding devices 12900, 12930 and three-dimensional data decoding devices 12920, 12950 described using Figures 48 to 54.
この例では、三次元データ符号化装置12900、12930は、まず符号化対象または復号対象の三次元点におけるイントラ予測点の求め方を示す識別情報(pred_mode)を三次元データ復号装置12920、12950へ通知する。加えて、三次元データ符号化装置12900、12930は、識別情報(pred_mode)に応じて、イントラ予測点を決定するための付加情報を三次元データ復号装置12920、12950へ通知してもよい。 In this example, the three-dimensional data encoding devices 12900, 12930 first notify the three-dimensional data decoding devices 12920, 12950 of identification information (pred_mode) indicating how to determine intra-prediction points at three-dimensional points to be encoded or decoded. In addition, the three-dimensional data encoding devices 12900, 12930 may notify the three-dimensional data decoding devices 12920, 12950 of additional information for determining intra-prediction points according to the identification information (pred_mode).
次に、符号化中の予測木(predtree)が参照しているGPSにおいてインター予測が有効な場合(例えば、gps_inter_prediction_enabeled_flag=1の場合)には、三次元データ符号化装置12900、12930は、符号化対象または復号対象の三次元点における予測方法がイントラ予測であるか否(すなわち、インター予測である)かを示す情報(intra_pred_flag)を三次元データ復号装置12920、12950へ通知してもよい。なお、gps_inter_prediction_enabeled_flag=0の場合、intra_pred_flagの値を1(イントラ予測)に設定するようにしてもよい。符号化対象または復号対象の三次元点における予測方法がインター予測(例えば、 intra_pred_flag=0)の場合、符号化対象または復号対象の三次元点におけるインター予測点の求め方を示す識別情報(inter_pred_mode)を通知してもよい。更に、三次元データ符号化装置12900、12930は、識別情報(inter_pred_mode)に応じて、インター予測点の決定の際に参照するインター予測点群中の候補点数をNumRefPointsに設定し、各候補点のインデックス(inter_ref_point_idx)をNumRefPoints個だけ三次元データ復号装置12920、12950へ通知してもよい。なお、インター予測点の決定の際に参照するインター予測点群中の候補点が複数指定された場合には、指定された複数の候補点の座標の平均値をインター予測点の座標としてもよい。また、三次元データ符号化装置12900、12930は、候補点のインデックスの通知を省略して最も小さいインデックスなど特定の候補点を選択するinter_pred_modeを用意してもよい。例えば、三次元データ符号化装置12900、12930は、inter_pred_modeが当該モードを示しているか否かの判定処理を設けたり、NumRefPointsの値を0に設定したりするなどして、候補点のインデックスの通知を省略してもよい。また、インター予測点が一意に定まる方法に必要な情報が通知されていれば実施可能であり、例えばinter_pred_modeの代わりに、インター予測点の決定の際に参照するインター予測点群中の候補点数を通知するようにしてもよい。Next, if inter-prediction is enabled in the GPS referenced by the prediction tree (predtree) being encoded (e.g., if gps_inter_prediction_enabeled_flag = 1), the 3D data encoding devices 12900, 12930 may notify the 3D data decoding devices 12920, 12950 of information (intra_pred_flag) indicating whether the prediction method for the 3D point to be encoded or decoded is intra-prediction or not (i.e., inter-prediction). Note that if gps_inter_prediction_enabeled_flag = 0, the value of intra_pred_flag may be set to 1 (intra-prediction). If the prediction method for the 3D point to be encoded or decoded is inter-prediction (e.g., intra_pred_flag = 0), identification information (inter_pred_mode) indicating how to determine the inter-prediction point for the 3D point to be encoded or decoded may be notified. Furthermore, the 3D data encoding devices 12900 and 12930 may set the number of candidate points in the inter-prediction point group referenced when determining an inter-prediction point to NumRefPoints according to the identification information (inter_pred_mode), and may notify the 3D data decoding devices 12920 and 12950 of NumRefPoints' worth of indices (inter_ref_point_idx) of each candidate point. If multiple candidate points are specified in the inter-prediction point group referenced when determining an inter-prediction point, the average value of the coordinates of the specified multiple candidate points may be used as the coordinate of the inter-prediction point. Furthermore, the 3D data encoding devices 12900 and 12930 may provide an inter_pred_mode that omits notification of the candidate point index and selects a specific candidate point, such as the one with the smallest index. For example, the 3D data encoding devices 12900 and 12930 may omit notification of the candidate point index by, for example, providing a process for determining whether inter_pred_mode indicates the relevant mode or by setting the value of NumRefPoints to 0. Furthermore, this can be implemented as long as the information necessary for a method of uniquely determining an inter-prediction point is notified. For example, instead of inter_pred_mode, the number of candidate points in the inter-prediction point group to be referenced when determining an inter-prediction point may be notified.
なお、直前に符号化または復号した三次元点(例えば、予測木の親ノードなどの祖先ノードに対応する三次元点)など、イントラ予測点の求め方を示す識別情報(pred_mode)に依らずに一意に決定される三次元点の近傍において、インター予測点群中の候補点を探索する場合、符号化対象または復号対象の三次元点における予測方法がイントラ予測(例えば、 intra_pred_flag=1)の場合に限って、イントラ予測点の求め方を示す識別情報(pred_mode)やイントラ予測点を決定するための付加情報を、三次元データ復号装置12920、12950へ通知してもよい。 In addition, when searching for candidate points in an inter-prediction point group near a three-dimensional point that is uniquely determined without depending on identification information (pred_mode) indicating how to determine an intra-prediction point, such as the three-dimensional point that was most recently encoded or decoded (for example, a three-dimensional point corresponding to an ancestor node such as a parent node of a prediction tree), the three-dimensional data decoding device 12920, 12950 may be notified of identification information (pred_mode) indicating how to determine an intra-prediction point and additional information for determining an intra-prediction point only when the prediction method for the three-dimensional point to be encoded or decoded is intra-prediction (for example, intra_pred_flag=1).
次に、三次元データ符号化装置12900、12930は、符号化対象または復号対象の点の位置情報(座標値)と予測点の位置情報(座標値)の第1差分(1st_residual_value)を通知してもよい。各三次元点を三次元データ復号装置12920、12950から出力する前に復号点の座標変換を行う場合(例えば、gps_coordinate_trans_enabled_flag=1の場合)、極座標などの別の座標系における復号結果を、直交座標などの元の座標系へ座標変換した位置情報(座標値)と、元の位置情報(座標値)との第2差分(2nd_residual_value)を通知してもよい。なお、これらの差分情報を一つのシンタックスとして通知する例を示したが、正負情報と絶対値情報のように複数のシンタックスに分解して通知するようにしてもよい。Next, the three-dimensional data encoding devices 12900 and 12930 may notify the first difference (1st_residual_value) between the position information (coordinate value) of the point to be encoded or decoded and the position information (coordinate value) of the predicted point. If coordinate transformation of the decoded points is performed before outputting each three-dimensional point from the three-dimensional data decoding devices 12920 and 12950 (for example, when gps_coordinate_trans_enabled_flag = 1), the decoding results in another coordinate system, such as polar coordinates, may be transformed into the original coordinate system, such as rectangular coordinates, and the second difference (2nd_residual_value) between the original position information (coordinate value). Note that while an example has been shown in which this difference information is notified as a single syntax, it may also be decomposed into multiple syntax elements, such as positive/negative information and absolute value information, and notified.
これらの情報が三次元データ符号化装置12900、12930から三次元データ復号装置12920、12950へ通知されることで、三次元データ符号化装置12900、12930と三次元データ復号装置12920、12950とで一致した予測処理を実施可能となり、三次元データ復号装置12920、12950において、対応する三次元データ符号化装置12900、12930と不整合を生じることなく処理対象の三次元点を復号できる。 This information is communicated from the three-dimensional data encoding devices 12900, 12930 to the three-dimensional data decoding devices 12920, 12950, making it possible for the three-dimensional data encoding devices 12900, 12930 and the three-dimensional data decoding devices 12920, 12950 to perform consistent prediction processing, and the three-dimensional data decoding devices 12920, 12950 can decode the three-dimensional points to be processed without causing any inconsistency with the corresponding three-dimensional data encoding devices 12900, 12930.
図48~図55を用いて開示した装置または処理、シンタックスなどは、他の実施の形態の少なくとも一部と組み合わせて実施されてもよい。また、図48~図55を用いて開示した装置または処理、シンタックスの一部などは、他の実施の形態と組み合わせて実施してもよい。また、図48~図55を用いて開示したすべての構成要素は、全て必要とは限らず、一部の構成要素のみを備えていてもよい。 The devices, processes, syntax, etc. disclosed using Figures 48 to 55 may be implemented in combination with at least a portion of other embodiments. Furthermore, the devices, processes, portions of syntax, etc. disclosed using Figures 48 to 55 may be implemented in combination with other embodiments. Furthermore, all of the components disclosed using Figures 48 to 55 are not necessarily required, and only some of the components may be included.
以上のように、本実施の形態に係る三次元データ符号化装置は、図56に示す処理を行う。三次元データ符号化装置は、複数の符号化済みの三次元点のうちの1以上の候補点の位置情報に基づいて予測値を決定する(S12931)。三次元データ符号化装置は、複数の三次元点のうちの符号化対象の1つの三次元点の位置情報と、予測値との差分である予測残差を算出する(S12932)。三次元データ符号化装置は、予測残差を符号化することで符号化データを生成する(S12933)。三次元データ符号化装置は、符号化データを含むビットストリームを生成する(S12934)。三次元データ符号化装置は、ステップS12931において、1以上の候補点を、複数の符号化済みの三次元点のうちの1以上の基準点に基づいて決定する。 As described above, the three-dimensional data encoding device according to this embodiment performs the processing shown in FIG. 56. The three-dimensional data encoding device determines a predicted value based on position information of one or more candidate points from among a plurality of encoded three-dimensional points (S12931). The three-dimensional data encoding device calculates a prediction residual, which is the difference between the position information of one three-dimensional point to be encoded from among the plurality of three-dimensional points, and the predicted value (S12932). The three-dimensional data encoding device generates encoded data by encoding the prediction residual (S12933). The three-dimensional data encoding device generates a bitstream including the encoded data (S12934). In step S12931, the three-dimensional data encoding device determines one or more candidate points based on one or more reference points from among the plurality of encoded three-dimensional points.
例えば、複数の三次元点は予測木を構成している。1以上の基準点は、符号化対象の1つの三次元点の親ノードに対応する三次元点を含む。 For example, the multiple 3D points form a prediction tree. One or more reference points include a 3D point corresponding to the parent node of the 3D point to be encoded.
これによれば、予測値の算出に用いられる1以上の候補点を、予測木における、符号化対象の1つの三次元点の親ノードに基づいて決定するため、予測残差を小さくすることができ、符号化効率を向上させることができる。 This allows one or more candidate points used to calculate a predicted value to be determined based on the parent node of a single three-dimensional point to be encoded in the prediction tree, thereby reducing the prediction residual and improving encoding efficiency.
例えば、1以上の候補点には、インデックス値が割り当てられている。ビットストリームは、さらに、予測値の決定に用いる候補点に割り当てられたインデックス値を含む。For example, one or more candidate points are assigned index values. The bitstream further includes the index values assigned to the candidate points used to determine the predicted value.
このため、三次元データ復号装置は、インデックス値に基づいて候補点を容易に特定することができる。よって、三次元データ復号装置における処理負荷を低減することができる。 This allows the three-dimensional data decoding device to easily identify candidate points based on the index values, thereby reducing the processing load on the three-dimensional data decoding device.
例えば、三次元データ符号化装置は、プロセッサと、メモリとを備え、プロセッサは、メモリを用いて、上記の処理を行う。 For example, a three-dimensional data encoding device includes a processor and a memory, and the processor uses the memory to perform the above processing.
また、本実施の形態に係る三次元データ復号装置は、図57に示す処理を行う。三次元データ復号装置は、符号化された予測残差と、予測値の算出に用いられる1つの候補点に割り当てられたインデックス値とを含むビットストリームを取得する(S12941)。三次元データ復号装置は、インデックス値に基づいて、複数の復号済みの三次元点のうちの1以上の基準点に基づいて1つの候補点を決定する(S12942)。三次元データ復号装置は、決定した1つの候補点の位置情報に基づいて予測値を算出する(S12943)。三次元データ復号装置は、符号化された予測残差を復号することで予測残差を算出する(S12944)。三次元データ復号装置は、予測値と予測残差とを加算することで、復号対象の1つの三次元点の位置情報を算出する(S12945)。 The three-dimensional data decoding device according to this embodiment also performs the processing shown in FIG. 57. The three-dimensional data decoding device acquires a bitstream including an encoded prediction residual and an index value assigned to one candidate point used to calculate a predicted value (S12941). The three-dimensional data decoding device determines one candidate point based on one or more reference points from among multiple decoded three-dimensional points, based on the index value (S12942). The three-dimensional data decoding device calculates a predicted value based on position information of the determined candidate point (S12943). The three-dimensional data decoding device calculates a prediction residual by decoding the encoded prediction residual (S12944). The three-dimensional data decoding device calculates position information of the one three-dimensional point to be decoded by adding the predicted value and the prediction residual (S12945).
これによれば、複数の符号化済みの三次元点のうちの1以上の基準点に基づいて1つの候補点を決定し、決定した1つの候補点の位置情報に基づく予測値を用いて復号対象の三次元点を復号することができる。 This allows one candidate point to be determined based on one or more reference points among multiple encoded three-dimensional points, and the three-dimensional point to be decoded can be decoded using a predicted value based on the position information of the determined candidate point.
例えば、複数の三次元点は予測木を構成している。1以上の基準点は、符号化対象の1つの三次元点の親ノードに対応する三次元点を含む。 For example, the multiple 3D points form a prediction tree. One or more reference points include a 3D point corresponding to the parent node of the 3D point to be encoded.
例えば、1以上の候補点には、インデックス値が割り当てられている。ビットストリームは、さらに、予測値の決定に用いる候補点に割り当てられたインデックス値を含む。For example, one or more candidate points are assigned index values. The bitstream further includes the index values assigned to the candidate points used to determine the predicted value.
このため、三次元データ復号装置は、インデックス値に基づいて候補点を容易に特定することができる。よって、三次元データ復号装置における処理負荷を低減することができる。 This allows the three-dimensional data decoding device to easily identify candidate points based on the index values, thereby reducing the processing load on the three-dimensional data decoding device.
例えば、三次元データ復号装置は、プロセッサと、メモリとを備え、プロセッサは、メモリを用いて、上記の処理を行う。 For example, a three-dimensional data decoding device includes a processor and a memory, and the processor uses the memory to perform the above processing.
図58は、符号化処理における座標系の切り替え処理を示すフローチャートである。図58のフローチャートでは、図48で説明した三次元データ符号化装置12900を用いて符号化を行うか、図52で説明した三次元データ符号化装置12930を用いて符号化を行うかの切り替えを行う。また、図58のフローチャートでは、直交座標系の位置情報の符号化を行うか、極座標系の位置情報の符号化を行うかの切り替えも行う。 Figure 58 is a flowchart showing the coordinate system switching process in the encoding process. The flowchart in Figure 58 switches between encoding using the three-dimensional data encoding device 12900 described in Figure 48 and encoding using the three-dimensional data encoding device 12930 described in Figure 52. The flowchart in Figure 58 also switches between encoding position information in a Cartesian coordinate system and encoding position information in a polar coordinate system.
まず、三次元データ符号化装置は、入力点群の座標系を確認し、符号化処理及び復号処理の座標系を決定する(S13001)。つまり、三次元データ符号化装置は、符号化処理及び復号処理の対象となる位置情報の座標系を決定する。 First, the three-dimensional data encoding device checks the coordinate system of the input point cloud and determines the coordinate system for the encoding and decoding processes (S13001). In other words, the three-dimensional data encoding device determines the coordinate system of the position information that is the target of the encoding and decoding processes.
次に、三次元データ符号化装置は、入力点群の座標系と、決定した符号化処理及び復号処理の座標系とが同一であるか否かを判定する(S13002)。 Next, the three-dimensional data encoding device determines whether the coordinate system of the input point group is the same as the coordinate system of the determined encoding process and decoding process (S13002).
三次元データ符号化装置は、入力点群の座標系と、決定した符号化処理及び復号処理の座標系とが同一であると判定した場合(S13002でYes)、gps_coordinate_trans_enabled_flag=0に設定し、座標変換せずに、決定した座標系で点群の位置情報を符号化することを決定する(S13003)。 If the three-dimensional data encoding device determines that the coordinate system of the input point cloud is the same as the coordinate system of the determined encoding process and decoding process (Yes in S13002), it sets gps_coordinate_trans_enabled_flag=0 and determines to encode the position information of the point cloud in the determined coordinate system without performing coordinate transformation (S13003).
三次元データ符号化装置は、入力点群の座標系と、決定した符号化処理及び復号処理の座標系とが同一でないと判定した場合(S13002でNo)、gps_coordinate_trans_enabled_flag=1に設定し、座標変換して、決定した座標系で点群の位置情報を符号化することを決定する(S13004)。 If the three-dimensional data encoding device determines that the coordinate system of the input point cloud is not the same as the coordinate system of the determined encoding process and decoding process (No in S13002), it sets gps_coordinate_trans_enabled_flag=1, performs coordinate transformation, and determines to encode the position information of the point cloud in the determined coordinate system (S13004).
なお、図52で説明した三次元データ符号化装置12930では、入力点群の座標系が極座標であり、符号化処理及び復号処理の座標系が直交座標である場合を一例として示しているが、入力点群の座標系が直交座標であり、符号化処理及び復号処理の座標系が極座標であってもよい。この場合、図52では、極座標系を直交座標系と読み替え、かつ、直交座標系を極座標系と読み替えることで説明できる。 Note that the three-dimensional data encoding device 12930 described in Figure 52 shows an example in which the coordinate system of the input point cloud is polar coordinates and the coordinate system of the encoding process and decoding process is Cartesian coordinates, but the coordinate system of the input point cloud may be Cartesian coordinates and the coordinate system of the encoding process and decoding process may be polar coordinates. In this case, Figure 52 can be explained by reading the polar coordinate system as a Cartesian coordinate system and the Cartesian coordinate system as a polar coordinate system.
次に、三次元データ符号化装置は、符号化の座標系が極座標系であるか否(直交座標系)かを判定する(S13005)。 Next, the three-dimensional data encoding device determines whether the encoding coordinate system is a polar coordinate system or not (Cartesian coordinate system) (S13005).
三次元データ符号化装置は、符号化の座標系が極座標系であると判定した場合(S13005でYes)、gps_alt_coordinates_flag=1に設定し、点群の位置情報を極座標系で符号化する(S13006)。 If the three-dimensional data encoding device determines that the encoding coordinate system is a polar coordinate system (Yes in S13005), it sets gps_alt_coordinates_flag=1 and encodes the point cloud position information in the polar coordinate system (S13006).
三次元データ符号化装置は、符号化の座標系が極座標系でない(つまり、直交座標系である)と判定した場合(S13005でNo)、gps_alt_coordinates_flag=0に設定し、点群の位置情報を直交座標系で符号化する(S13007)。 If the three-dimensional data encoding device determines that the encoding coordinate system is not a polar coordinate system (i.e., a Cartesian coordinate system) (No in S13005), it sets gps_alt_coordinates_flag=0 and encodes the point cloud position information in the Cartesian coordinate system (S13007).
ここで、上記処理によりシンタックスを決定する場合、図54を用いて説明したgps_coordinate_trans_enabled_flag及びgps_alt_coordinates_flagは、依存関係なく独立に示すシンタックス構成としてもよい。つまり、gps_coordinate_trans_enabled_flagは、gps_alt_coordinates_flagの有無または、gps_alt_coordinates_flagの値に関わらず、GPSに示されていてもよい。 When determining the syntax using the above process, the gps_coordinate_trans_enabled_flag and gps_alt_coordinates_flag described using Figure 54 may be configured as syntax elements that are indicated independently and without dependency. In other words, gps_coordinate_trans_enabled_flag may be indicated in the GPS regardless of the presence or absence of gps_alt_coordinates_flag or the value of gps_alt_coordinates_flag.
また、上記処理において、ステップS13002~S13004の処理1と、ステップS13005~S13007の処理2を入れ替え、処理2においてgps_alt_coordinates_flag=1の場合に処理1を実施する構成とすることにより、図54のシンタックス構成を採用してもよい。 In addition, in the above processing, the syntax configuration of Figure 54 may be adopted by swapping processing 1 in steps S13002 to S13004 and processing 2 in steps S13005 to S13007, and configuring processing 1 to be performed when gps_alt_coordinates_flag = 1 in processing 2.
図59は、復号処理における座標系の切り替え処理を示すフローチャートである。図59のフローチャートでは、図49で説明した三次元データ復号装置12920を用いて復号を行うか、図53で説明した三次元データ復号装置12950を用いて復号を行うかの切り替えを行う。また、図59のフローチャートでは、直交座標系の位置情報の復号を行うか、極座標系の位置情報の復号を行うかの切り替えも行う。 Figure 59 is a flowchart showing the coordinate system switching process in the decoding process. The flowchart in Figure 59 switches between decoding using the three-dimensional data decoding device 12920 described in Figure 49 and decoding using the three-dimensional data decoding device 12950 described in Figure 53. The flowchart in Figure 59 also switches between decoding position information in a rectangular coordinate system and decoding position information in a polar coordinate system.
まず、三次元データ復号装置は、ビットストリームに含まれるメタデータを解析する(S13011)。具体的には、メタデータは、GPS、SPS、ヘッダなどに含まれる制御情報である。三次元データ復号装置は、メタデータに含まれるgps_alt_coordinates_flag及びgps_coordinate_trans_enabled_flagを確認する。 First, the 3D data decoding device analyzes the metadata contained in the bitstream (S13011). Specifically, the metadata is control information contained in GPS, SPS, headers, etc. The 3D data decoding device checks the gps_alt_coordinates_flag and gps_coordinate_trans_enabled_flag contained in the metadata.
次に、三次元データ復号装置は、gps_alt_coordinates_flag=1であるか否かを判定する(S13012)。 Next, the three-dimensional data decoding device determines whether gps_alt_coordinates_flag=1 (S13012).
三次元データ復号装置は、gps_alt_coordinates_flag=1である場合(S13012でYes)、極座標系で復号することを決定する(S13013)。 If gps_alt_coordinates_flag=1 (Yes in S13012), the three-dimensional data decoding device decides to decode in the polar coordinate system (S13013).
三次元データ復号装置は、gps_alt_coordinates_flag=0である場合(S13012でNo)、直交座標系で復号することを決定する(S13014)。 If gps_alt_coordinates_flag = 0 (No in S13012), the three-dimensional data decoding device decides to decode in the Cartesian coordinate system (S13014).
このように、算出される復号対象の1つの三次元点の位置情報の座標系は、gps_alt_coordinates_flagの値に応じて決定されるため、第1識別情報が示す第1符号化データを含むか否かに応じた座標系に決定される。 In this way, the coordinate system of the calculated position information of one three-dimensional point to be decoded is determined according to the value of gps_alt_coordinates_flag, and is therefore determined to be a coordinate system depending on whether or not it includes the first encoded data indicated by the first identification information.
次に、三次元データ復号装置は、gps_coordinate_trans_enabled_flag=1であるか否かを判定する(S13015)。 Next, the three-dimensional data decoding device determines whether gps_coordinate_trans_enabled_flag = 1 (S13015).
三次元データ復号装置は、gps_coordinate_trans_enabled_flag=1である場合(S13015でYes)、座標変換せずに決定した座標系で位置情報を復号する(S13016)。この場合、点群の位置情報は、三次元データ復号装置12920の構成を用いて復号される。なお、gps_coordinate_trans_enabled_flagは、gps_alt_coordinates_flag=1である場合に示されるため、gps_coordinate_trans_enabled_flag=1である場合(つまり、第2識別情報が、復号において極座標系の位置情報を出力することを示す場合)、算出される復号対象の1つの三次元点の位置情報の座標系は極座標系である。 If gps_coordinate_trans_enabled_flag = 1 (Yes in S13015), the three-dimensional data decoding device decodes the position information in the determined coordinate system without coordinate conversion (S13016). In this case, the position information of the point cloud is decoded using the configuration of the three-dimensional data decoding device 12920. Note that since gps_coordinate_trans_enabled_flag is indicated when gps_alt_coordinates_flag = 1, if gps_coordinate_trans_enabled_flag = 1 (i.e., if the second identification information indicates that position information in a polar coordinate system is to be output during decoding), the coordinate system of the calculated position information of one three-dimensional point to be decoded is a polar coordinate system.
三次元データ復号装置は、gps_coordinate_trans_enabled_flag=0である場合(S13015でNo)、座標変換して、決定した座標系で位置情報を復号する(S13017)。この場合、点群の位置情報は、三次元データ復号装置12950の構成を用いて復号される。なお、gps_coordinate_trans_enabled_flagは、gps_alt_coordinates_flag=1である場合に示されるため、gps_coordinate_trans_enabled_flag=0である場合(つまり、第2識別情報が、復号において直交座標系の位置情報を出力することを示す場合)、予測値と第1残差とを加算することで得られた極座標系の位置情報の座標系を変換し、変換することで得られた直交座標系の位置情報を、復号対象の1つの三次元点の位置情報として算出する。また、この場合、符号化データは第2残差を含み、三次元データ復号装置は、符号化された第2残差を復号することで第2残差を算出し、復号対象の1つの三次元点の位置情報の算出では、座標系を変換することで得られた直交座標系の位置情報と第2残差とを加算し、加算することで得られた位置情報を、復号対象の1つの三次元点の位置情報として算出する。 If gps_coordinate_trans_enabled_flag = 0 (No in S13015), the 3D data decoding device performs coordinate transformation and decodes the position information in the determined coordinate system (S13017). In this case, the point cloud position information is decoded using the configuration of the 3D data decoding device 12950. Note that gps_coordinate_trans_enabled_flag is indicated when gps_alt_coordinates_flag = 1. Therefore, if gps_coordinate_trans_enabled_flag = 0 (i.e., when the second identification information indicates that position information in a Cartesian coordinate system is output during decoding), the coordinate system of the polar coordinate system position information obtained by adding the predicted value and the first residual is transformed, and the Cartesian coordinate system position information obtained by the transformation is calculated as the position information of one 3D point to be decoded. In this case, the encoded data includes a second residual, and the three-dimensional data decoding device calculates the second residual by decoding the encoded second residual, and in calculating the position information of one three-dimensional point to be decoded, the device adds the position information of the orthogonal coordinate system obtained by converting the coordinate system to the second residual, and calculates the position information obtained by the addition as the position information of one three-dimensional point to be decoded.
なお、図54のシンタックス構成でメタデータが構成される場合、ステップS13012~S13014の処理1において復号する座標系が極座標と判定される場合にステップS13015~S13017の処理2に移行し、処理1において復号する座標系が直交座標と判定される場合には、処理2の判定をスキップし、図49の構成の三次元データ復号装置12920を用いた復号が行われてもよい。 When metadata is configured with the syntax configuration of Figure 54, if the coordinate system to be decoded is determined to be polar coordinates in process 1 of steps S13012 to S13014, the process proceeds to process 2 of steps S13015 to S13017, and if the coordinate system to be decoded is determined to be Cartesian coordinates in process 1, the determination of process 2 may be skipped and decoding may be performed using a three-dimensional data decoding device 12920 with the configuration of Figure 49.
なお、gps_coordinate_trans_enabled_flagは、各点を三次元データ復号装置から出力する前に復号点の座標変換を実施するか否かを示す座標変換情報としたが、各三次元点を符号化する際に座標変換を実施したか否かを示す情報としてもよいし、座標変換に伴い発生する誤差情報(変換誤差)がビットストリームに含まれるか否かを示す情報としてもよい。また、当該情報が含まれる場合には、三次元データ復号装置あるいはアプリケーションにおいて座標変換をするか否かが判定されてもよい。 Note that gps_coordinate_trans_enabled_flag is coordinate transformation information indicating whether or not coordinate transformation is performed on each decoded point before outputting the point from the 3D data decoding device. However, it may also be information indicating whether or not coordinate transformation was performed when encoding each 3D point, or information indicating whether error information (transformation error) that occurs due to coordinate transformation is included in the bitstream. Furthermore, if such information is included, it may be determined whether or not coordinate transformation is performed in the 3D data decoding device or application.
なお、入力点群の座標系、出力点群の座標系、符号化処理の対象となる位置情報の座標系、及び、復号処理の対象となる位置情報の座標系の組み合わせによる処理の切り替え、及び、これらの座標系を示すシグナリング方法について、予測木を用いた符号化を例に説明したが、8分木符号化の場合にも、同様の方法が用いられてもよい。また、入力点群の座標系、出力点群の座標系、符号化処理の対象となる位置情報の座標系、及び、復号処理の対象となる位置情報の座標系がいずれか1種類の場合は、切り替え処理を省略してもよいし、座標系が3種類以上の場合に処理を拡張してもよい。また、位置情報の符号化及び復号に係る座標系を例に説明したが、属性情報の符号化及び復号に係る座標系が複数の座標系に対応する場合、あるいは入力点群及び出力点群の座標系が他の座標系へ切り替わる可能性がある場合、同様の方法を用いて、処理を切り替えてもよい。例えば、図54と同様のシンタックスをattribute_parameter_setに含めてもよい。While the process switching based on the combination of the coordinate system of the input point cloud, the coordinate system of the output point cloud, the coordinate system of the position information to be encoded, and the coordinate system of the position information to be decoded, and the signaling method for indicating these coordinate systems, have been described using predictive tree encoding as an example, a similar method may also be used in the case of octree encoding. Furthermore, if the coordinate system of the input point cloud, the coordinate system of the output point cloud, the coordinate system of the position information to be encoded, and the coordinate system of the position information to be decoded are all the same, the switching process may be omitted, or the process may be expanded when there are three or more types of coordinate systems. Furthermore, while the coordinate system used for encoding and decoding position information has been described as an example, a similar method may be used to switch processes when the coordinate system used for encoding and decoding attribute information corresponds to multiple coordinate systems, or when there is a possibility that the coordinate systems of the input point cloud and output point cloud will be switched to other coordinate systems. For example, syntax similar to that shown in Figure 54 may be included in attribute_parameter_set.
また、位置情報の符号化及び復号に係る座標系と、属性情報の符号化及び復号に係る座標系とは、同一にするように制御されてもよい。 In addition, the coordinate system used to encode and decode location information and the coordinate system used to encode and decode attribute information may be controlled to be the same.
また、以上のように、本実施の形態に係る三次元データ符号化装置は、図60に示す処理を行う。三次元データ符号化装置は、直交座標系、もしくは極座標系のいずれかである複数の三次元点を符号化する。三次元データ符号化装置は、複数の符号化済みの三次元点のうちの1以上の候補点の位置情報に基づいて予測値を算出する(S13021)。三次元データ符号化装置は、複数の三次元点のうちの符号化対象の1つの三次元点の位置情報と、予測値との差分である第1残差を算出する(S13022)。三次元データ符号化装置は、第1残差を符号化することで符号化データを生成する(S13023)。三次元データ符号化装置は、符号化データと、符号化データが極座標系で算出された第1符号化データを含むか否かを示す第1識別情報とを含むビットストリームを生成する(S13024)。 As described above, the three-dimensional data encoding device according to this embodiment performs the processing shown in FIG. 60. The three-dimensional data encoding device encodes a plurality of three-dimensional points in either a Cartesian coordinate system or a polar coordinate system. The three-dimensional data encoding device calculates a predicted value based on position information of one or more candidate points among the plurality of encoded three-dimensional points (S13021). The three-dimensional data encoding device calculates a first residual, which is the difference between the position information of one three-dimensional point to be encoded among the plurality of three-dimensional points and the predicted value (S13022). The three-dimensional data encoding device generates encoded data by encoding the first residual (S13023). The three-dimensional data encoding device generates a bitstream including encoded data and first identification information indicating whether the encoded data includes first encoded data calculated in a polar coordinate system (S13024).
これによれば、符号化データが極座標系で算出された第1符号化データを含むか否かを示す第1識別情報がビットストリームに含まれるため、三次元データ復号装置は、第1識別情報に基づいて適切に復号処理を行うことができる。 As a result, the bit stream contains first identification information indicating whether the encoded data includes first encoded data calculated in a polar coordinate system, allowing the three-dimensional data decoding device to perform appropriate decoding processing based on the first identification information.
例えば、ビットストリームは、さらに、第2識別情報を含む。予測値の算出に用いられる1以上の候補点の位置情報、及び、第1残差の算出に用いられる符号化対象の1つの三次元点の位置情報が、極座標系の位置情報である場合、第1識別情報は、符号化データが極座標系で算出された第1符号化データを含むことを示す。また、この場合、第2識別情報は、復号において極座標系の位置情報を出力するか、直交座標系の位置情報を出力するかを示す。 For example, the bitstream further includes second identification information. If the position information of one or more candidate points used to calculate the predicted value and the position information of one three-dimensional point to be encoded used to calculate the first residual are position information in a polar coordinate system, the first identification information indicates that the encoded data includes first encoded data calculated in a polar coordinate system. In this case, the second identification information also indicates whether position information in a polar coordinate system or position information in a Cartesian coordinate system is to be output during decoding.
例えば、符号化データが第1符号化データを含まないことを第1識別情報が示す場合、ビットストリームは、第2識別情報を含まない。 For example, if the first identification information indicates that the encoded data does not include the first encoded data, the bitstream does not include the second identification information.
例えば、復号において極座標系の位置情報を出力する場合、第2識別情報は、復号において極座標系の位置情報を出力することを示す。また、この場合、第1符号化データの符号化において、第1残差を量子化し、量子化された第1残差を符号化する。 For example, when position information in a polar coordinate system is output during decoding, the second identification information indicates that position information in a polar coordinate system is output during decoding. In this case, when encoding the first encoded data, the first residual is quantized and the quantized first residual is encoded.
例えば、第1残差の算出において、さらに、符号化対象の1つの三次元点の直交座標系の位置情報の座標系を変換することで極座標系の位置情報を生成し、かつ、第1残差は、変換後の極座標系の位置情報と前記予測値との差分である場合、三次元データ符号化装置は、変換後の極座標系の位置情報の座標系を逆変換することで直交座標系の位置情報を生成する。三次元データ符号化装置は、直交座標系の位置情報と、逆変換後の直交座標系の位置情報との差分である第2残差を算出する。符号化データの生成では、第1残差及び前記第2残差を符号化することで符号化データを生成する。第1識別情報は、符号化データが第1符号化データを含むことを示す。第2識別情報は、復号において直交座標系の位置情報を出力することを示す。 For example, if the calculation of the first residual further includes generating position information in a polar coordinate system by transforming the coordinate system of position information in a Cartesian coordinate system of one three-dimensional point to be encoded, and the first residual is the difference between the transformed position information in the polar coordinate system and the predicted value, the three-dimensional data encoding device generates position information in a Cartesian coordinate system by inversely transforming the coordinate system of the transformed position information in the polar coordinate system. The three-dimensional data encoding device calculates a second residual, which is the difference between the position information in the Cartesian coordinate system and the position information in the Cartesian coordinate system after the inverse transformation. In generating encoded data, the first residual and the second residual are encoded to generate the encoded data. The first identification information indicates that the encoded data includes the first encoded data. The second identification information indicates that the position information in the Cartesian coordinate system is to be output during decoding.
例えば、第2識別情報は、第2残差の符号化データをビットストリームに含むか否かを示す。 For example, the second identification information indicates whether the coded data of the second residual is included in the bitstream.
例えば、三次元データ符号化装置は、プロセッサと、メモリとを備え、プロセッサは、メモリを用いて、上記の処理を行う。 For example, a three-dimensional data encoding device includes a processor and a memory, and the processor uses the memory to perform the above processing.
また、本実施の形態に係る三次元データ復号装置は、図61に示す処理を行う。三次元データ復号装置は、直交座標系、もしくは極座標系のいずれかである複数の三次元点を復号する。三次元データ復号装置は、第1残差が符号化された符号化データと、符号化データが極座標系で算出された第1符号化データを含むか否かを示す第1識別情報とを含むビットストリームを取得する(S13031)。三次元データ復号装置は、複数の復号済みの三次元点のうちの1以上の候補点の位置情報に基づいて予測値を算出する(S13032)。三次元データ復号装置は、符号化された第1残差を復号することで第1残差を算出する(S13033)。三次元データ復号装置は、予測値と第1残差とを加算することで、復号対象の1つの三次元点の位置情報を算出する。算出される復号対象の1つの三次元点の位置情報の座標系は、第1識別情報が示す第1符号化データを含むか否かに応じた座標系である。 The three-dimensional data decoding device according to this embodiment also performs the processing shown in FIG. 61. The three-dimensional data decoding device decodes multiple three-dimensional points in either a rectangular coordinate system or a polar coordinate system. The three-dimensional data decoding device acquires a bitstream including coded data in which a first residual is coded and first identification information indicating whether the coded data includes first coded data calculated in a polar coordinate system (S13031). The three-dimensional data decoding device calculates a predicted value based on position information of one or more candidate points among the multiple decoded three-dimensional points (S13032). The three-dimensional data decoding device calculates the first residual by decoding the coded first residual (S13033). The three-dimensional data decoding device calculates position information of one three-dimensional point to be decoded by adding the predicted value and the first residual. The coordinate system of the calculated position information of one three-dimensional point to be decoded is a coordinate system that depends on whether the coded data includes the first coded data indicated by the first identification information.
これによれば、符号化データが極座標系で算出された第1符号化データを含むか否かを示す第1識別情報に基づいて復号対象の1つの三次元点の位置情報の座標系を決定できるため、三次元データ復号装置は、第1識別情報に基づいて適切に復号処理を行うことができる。 This allows the coordinate system of the positional information of one three-dimensional point to be decoded to be determined based on the first identification information indicating whether the encoded data includes first encoded data calculated in a polar coordinate system, so the three-dimensional data decoding device can perform appropriate decoding processing based on the first identification information.
例えば、ビットストリームは、さらに、復号において極座標系の位置情報を出力するか、直交座標系の位置情報を出力するかを示す第2識別情報を含む。第1識別情報が符号化データが第1符号化データを含むこと示す場合、予測値の算出に用いられる1以上の候補点の位置情報、及び、第1残差の算出に用いられた符号化対象の1つの三次元点の位置情報は、極座標系の位置情報である。 For example, the bitstream further includes second identification information indicating whether position information in a polar coordinate system or position information in a Cartesian coordinate system is to be output during decoding. When the first identification information indicates that the encoded data includes first encoded data, the position information of one or more candidate points used to calculate the predicted value and the position information of one three-dimensional point to be encoded used to calculate the first residual are position information in a polar coordinate system.
例えば、符号化データが第1符号化データを含まないことを第1識別情報が示す場合、ビットストリームは、前記第2識別情報を含まない。 For example, if the first identification information indicates that the encoded data does not include the first encoded data, the bitstream does not include the second identification information.
例えば、第2識別情報が、復号において極座標系の位置情報を出力することを示す場合、符号化データは、第1残差が量子化されて符号化されたデータである。また、この場合、算出される復号対象の1つの三次元点の位置情報の座標系は極座標系である。 For example, if the second identification information indicates that position information in a polar coordinate system is to be output during decoding, the encoded data is data obtained by quantizing and encoding the first residual. In this case, the coordinate system of the calculated position information of one three-dimensional point to be decoded is a polar coordinate system.
例えば、第1識別情報が、符号化データが第1符号化データを含むことを示し、かつ、第2識別情報が、復号において直交座標系の位置情報を出力することを示す場合、復号対象の1つの三次元点の位置情報の算出では、予測値と前記第1残差とを加算することで得られた極座標系の位置情報の座標系を変換し、変換することで得られた直交座標系の位置情報を、復号対象の1つの三次元点の位置情報として算出する。 For example, if the first identification information indicates that the encoded data includes the first encoded data and the second identification information indicates that position information in a Cartesian coordinate system is output during decoding, the position information of one three-dimensional point to be decoded is calculated by converting the coordinate system of the position information in a polar coordinate system obtained by adding the predicted value and the first residual, and calculating the position information in the Cartesian coordinate system obtained by the conversion as the position information of one three-dimensional point to be decoded.
例えば、第1識別情報が、符号化データが第1符号化データを含むことを示し、かつ、第2識別情報が、復号において直交座標系の位置情報を出力することを示す場合、符号化データは、さらに、符号化された第2残差を含む。三次元データ符号化装置は、符号化された第2残差を復号することで第2残差を算出する。復号対象の1つの三次元点の位置情報の算出では、座標系を変換することで得られた直交座標系の位置情報と前記第2残差とを加算し、加算することで得られた位置情報を、復号対象の1つの三次元点の位置情報として算出する。 For example, if the first identification information indicates that the encoded data includes first encoded data and the second identification information indicates that position information in a Cartesian coordinate system is output during decoding, the encoded data further includes an encoded second residual. The three-dimensional data encoding device calculates the second residual by decoding the encoded second residual. In calculating the position information of one three-dimensional point to be decoded, the device adds the position information in the Cartesian coordinate system obtained by converting the coordinate system to the second residual, and calculates the position information obtained by the addition as the position information of one three-dimensional point to be decoded.
例えば、第2識別情報は、第2残差の符号化データをビットストリームに含むか否かを示す。 For example, the second identification information indicates whether the coded data of the second residual is included in the bitstream.
例えば、三次元データ復号装置は、プロセッサと、メモリとを備え、プロセッサは、メモリを用いて、上記の処理を行う。 For example, a three-dimensional data decoding device includes a processor and a memory, and the processor uses the memory to perform the above processing.
(実施の形態6)
点群データに含まれる三次元点の位置情報を符号化する位置情報符号化部の構成を説明する。図62は、入力される位置情報の座標系と、符号化に用いられる位置情報の座標系とが共に直交座標系である場合の位置情報符号化部の構成を示すブロック図である。つまり、この構成は、gps_alt_coordinates_flag=0の場合の位置情報符号化部の構成である。ここで、図62~図64において、ブロック内の(x,y,z)は直交座標系を用いた処理が行われることを示し、ブロック内の(r,q,f)は極座標系を用いた処理が行われることを示す。(x,y,z)を付与した信号は直交座標系が用いられる信号であることを示し、(r,q,f)を付与した信号は極座標系が用いられる信号であることを示す。
(Embodiment 6)
The configuration of a position information encoding unit that encodes the position information of three-dimensional points contained in point cloud data will be described. FIG. 62 is a block diagram showing the configuration of a position information encoding unit when the coordinate system of the input position information and the coordinate system of the position information used for encoding are both Cartesian coordinate systems. That is, this configuration is the configuration of a position information encoding unit when gps_alt_coordinates_flag = 0. Here, in FIGS. 62 to 64, (x, y, z) in a block indicates that processing is performed using a Cartesian coordinate system, and (r, q, f) in a block indicates that processing is performed using a polar coordinate system. A signal with (x, y, z) indicates that the Cartesian coordinate system is used, and a signal with (r, q, f) indicates that the polar coordinate system is used.
gps_alt_coordinates_flagは、例えば、GPS(位置情報パラメータセット)に含まれる。GPSは、ビットストリームに含まれる、位置情報の制御情報(パラメータセット)であり、複数フレーム、複数点群又は複数スライスに共通の制御情報である。gps_alt_coordinates_flagは、各点の符号化処理又は復号処理において極座標などの直交座標と別の座標系を用いるか否かを示す情報である。つまり、gps_alt_coordinates_flagは、位置情報符号化データが極座標系で算出された第1位置情報符号化データを含むか否かを示す。例えば、gps_alt_coordinates_flag=1は、GPSを参照する位置情報の符号化処理又は復号処理に極座標系が使用されることを示す。gps_alt_coordinates_flag=0は、GPSを参照する位置情報の符号化処理又は復号処理において、直交座標系が使用されることを示す。 The gps_alt_coordinates_flag is included, for example, in the GPS (location information parameter set). The GPS is control information (parameter set) for location information included in the bitstream, and is control information common to multiple frames, multiple point clouds, or multiple slices. The gps_alt_coordinates_flag is information indicating whether a coordinate system other than Cartesian coordinates, such as polar coordinates, is used in the encoding or decoding process of each point. In other words, the gps_alt_coordinates_flag indicates whether the location information encoded data includes first location information encoded data calculated in a polar coordinate system. For example, gps_alt_coordinates_flag = 1 indicates that a polar coordinate system is used in the encoding or decoding process of location information referencing GPS. The gps_alt_coordinates_flag = 0 indicates that a Cartesian coordinate system is used in the encoding or decoding process of location information referencing GPS.
図62に示すように位置情報符号化部は、予測部13601と、量子化部13602と、符号化部13603とを含む。予測部13601は、入力された直交座標系の位置情報の予測値を算出し、位置情報と予測値との差分である残差を算出する。なお、ここで算出される予測値及び残差は、直交座標系で表される。 As shown in Figure 62, the position information encoding unit includes a prediction unit 13601, a quantization unit 13602, and an encoding unit 13603. The prediction unit 13601 calculates a predicted value of the position information in the input orthogonal coordinate system, and calculates a residual, which is the difference between the position information and the predicted value. Note that the predicted value and residual calculated here are expressed in the orthogonal coordinate system.
量子化部13602は、直交座標系の残差を量子化する。符号化部13603は、量子化された残差を符号化(例えばエントロピー符号化又は算術符号化)することでビットストリームを生成する。つまり、図62に示す位置情報符号化部では、全ての処理が直交座標系で行われる。 The quantization unit 13602 quantizes the residual in the Cartesian coordinate system. The encoding unit 13603 generates a bitstream by encoding (e.g., entropy encoding or arithmetic encoding) the quantized residual. In other words, in the position information encoding unit shown in Figure 62, all processing is performed in the Cartesian coordinate system.
図63は、入力される位置情報の座標系が直交座標系であり、符号化に用いられる位置情報の座標系が極座標系である場合の位置情報符号化部の構成を示すブロック図である。つまり、この構成は、gps_alt_coordinates_flag=1、かつgps_coordinate_trans_enabled_flag=1の場合の位置情報符号化部の構成である。 Figure 63 is a block diagram showing the configuration of the location information encoding unit when the coordinate system of the input location information is a Cartesian coordinate system and the coordinate system of the location information used for encoding is a polar coordinate system. In other words, this configuration is the configuration of the location information encoding unit when gps_alt_coordinates_flag = 1 and gps_coordinate_trans_enabled_flag = 1.
gps_coordinate_trans_enabled_flagは、例えば、GPSに含まれる。gps_coordinate_trans_enabled_flagは、各三次元点を三次元データ復号装置から出力する前に復号点の座標変換(例えば極座標系から直交座標系に変換するなど)を実施するか否かを示す情報である。つまり、gps_coordinate_trans_enabled_flagは、復号において極座標系の位置情報を出力するか、直交座標系の位置情報を出力するかを示す。例えば、gps_alt_coordinates_flag=1は、座標変換が実施されることを示し、gps_alt_coordinates_flag=0は、座標変換が実施されないことを示す。 The gps_coordinate_trans_enabled_flag is included in GPS, for example. The gps_coordinate_trans_enabled_flag is information indicating whether or not to perform coordinate transformation (e.g., from a polar coordinate system to a Cartesian coordinate system) of each decoded point before outputting the three-dimensional point from the three-dimensional data decoding device. In other words, the gps_coordinate_trans_enabled_flag indicates whether to output position information in a polar coordinate system or a Cartesian coordinate system during decoding. For example, gps_alt_coordinates_flag = 1 indicates that coordinate transformation is performed, and gps_alt_coordinates_flag = 0 indicates that coordinate transformation is not performed.
図63に示すように位置情報符号化部は、変換部13611と、予測部13612と、符号化部13613と、変換部13614と、減算部13615と、量子化部13616と、符号化部13617と、結合部13618とを含む。 As shown in FIG. 63, the position information encoding unit includes a conversion unit 13611, a prediction unit 13612, an encoding unit 13613, a conversion unit 13614, a subtraction unit 13615, a quantization unit 13616, an encoding unit 13617, and a combination unit 13618.
変換部13611は、入力された直交座標系の位置情報を、極座標系の位置情報に変換する。予測部13612は、極座標系の位置情報の予測値を算出し、位置情報と予測値との差分である残差1を算出する。なお、ここで算出される予測値及び残差1は、極座標系で表される。符号化部13613は、残差1を符号化(例えばエントロピー符号化又は算術符号化)する。 The conversion unit 13611 converts the input position information in the Cartesian coordinate system into position information in the polar coordinate system. The prediction unit 13612 calculates a predicted value for the position information in the polar coordinate system and calculates residual 1, which is the difference between the position information and the predicted value. Note that the predicted value and residual 1 calculated here are expressed in the polar coordinate system. The encoding unit 13613 encodes residual 1 (e.g., entropy encoding or arithmetic encoding).
変換部13614は、残差1に予測値を加算することで極座標系の位置情報を復元し、当該位置情報を直交座標系の位置情報に変換する。なお、変換部13614は、変換部13611で生成された極座標系の位置情報を直交座標系の位置情報に変換してもよい。減算部13615は、入力された直交座標系の位置情報と、変換部13614で得られた直交座標系の位置情報との差分である残差2を算出する。この残差2は、直交座標系の位置情報を極座標系の位置情報に変換し、得られた極座標系の位置情報を直交座標系の位置情報に戻した際の変換誤差に相当する。 The conversion unit 13614 restores the position information in the polar coordinate system by adding the predicted value to the residual 1, and converts the position information into position information in the Cartesian coordinate system. The conversion unit 13614 may also convert the polar coordinate system position information generated by the conversion unit 13611 into position information in the Cartesian coordinate system. The subtraction unit 13615 calculates the residual 2, which is the difference between the input Cartesian coordinate system position information and the Cartesian coordinate system position information obtained by the conversion unit 13614. This residual 2 corresponds to the conversion error when the Cartesian coordinate system position information is converted into polar coordinate system position information, and the obtained polar coordinate system position information is converted back into Cartesian coordinate system position information.
量子化部13616は、直交座標系の残差2を量子化する。符号化部13617は、量子化された残差2を符号化(例えばエントロピー符号化又は算術符号化)する。結合部13618は、符号化後の残差1と符号化後の残差2とを含むビットストリームを生成する。 The quantization unit 13616 quantizes residual 2 in the Cartesian coordinate system. The encoding unit 13617 encodes (e.g., entropy encoding or arithmetic encoding) the quantized residual 2. The combining unit 13618 generates a bitstream including encoded residual 1 and encoded residual 2.
このように、図63に示す位置情報符号化部では、直交座標系の位置情報が極座標系の位置情報に変換され、極座標系の位置情報に対して符号化処理(予測、符号化)が行われる。 In this way, in the position information encoding unit shown in Figure 63, position information in the Cartesian coordinate system is converted into position information in the polar coordinate system, and encoding processing (prediction, encoding) is performed on the position information in the polar coordinate system.
図64は、入力される位置情報の座標系と、符号化に用いられる位置情報の座標系が共に極座標系である場合の位置情報符号化部の構成を示すブロックである。つまり、この構成は、gps_alt_coordinates_flag=1、かつgps_coordinate_trans_enabled_flag=0の場合の位置情報符号化部の構成である。 Figure 64 is a block diagram showing the configuration of the location information encoding unit when the coordinate system of the input location information and the coordinate system of the location information used for encoding are both polar coordinate systems. In other words, this configuration is the configuration of the location information encoding unit when gps_alt_coordinates_flag = 1 and gps_coordinate_trans_enabled_flag = 0.
図64に示すように位置情報符号化部は、予測部13621と、量子化部13622と、符号化部13623とを含む。予測部13621は、入力された極座標系の位置情報の予測値を算出し、位置情報と予測値との差分である残差を算出する。なお、ここで算出される予測値及び残差は、極座標系で表される。 As shown in Figure 64, the position information encoding unit includes a prediction unit 13621, a quantization unit 13622, and an encoding unit 13623. The prediction unit 13621 calculates a predicted value of the input position information in the polar coordinate system, and calculates a residual, which is the difference between the position information and the predicted value. Note that the predicted value and residual calculated here are expressed in the polar coordinate system.
量子化部13622は、極座標系の残差を量子化する。符号化部13623は、量子化された残差を符号化(例えばエントロピー符号化又は算術符号化)することでビットストリームを生成する。つまり、図64に示す位置情報符号化部では、全ての処理が極座標系で行われる。 The quantization unit 13622 quantizes the residual in the polar coordinate system. The encoding unit 13623 generates a bitstream by encoding (e.g., entropy encoding or arithmetic encoding) the quantized residual. In other words, in the position information encoding unit shown in Figure 64, all processing is performed in the polar coordinate system.
このように、図62に示す構成と図64に示す構成とは類似しているものの、残差を算出するための予測、量子化、及び符号化で取り扱うデータの座標系が異なる。なお、図62に示す構成と図64に示す構成とにおいて、データの処理内容が異なってもよい。 Thus, although the configurations shown in Figures 62 and 64 are similar, the coordinate systems of the data handled in the prediction, quantization, and encoding for calculating residuals are different. Note that the data processing content may differ between the configurations shown in Figures 62 and 64.
また、三次元データ符号化装置は、gps_alt_coordinates_flag及びgps_coordinate_trans_enabled_flagを用いて、位置情報符号化部の機能を図62~図64のいずれかに切り替えてもよい。言い換えると、三次元データ符号化装置は、図62~図64に示す3つの位置情報符号化部を有し、使用する位置情報符号化部を切り替えてもよい。または、三次元データ符号化装置は、gps_alt_coordinates_flag及びgps_coordinate_trans_enabled_flagを用いて、処理ブロック単位で処理の有無及び内容を切り替えてもよい。これにより、図62~図64に示す3つの位置情報符号化部に含まれる処理ブロックのうち共通の処理ブロックを共有化できるので、小さな構成で、図62~図64に示す構成の機能を実現できる位置情報符号化部を実現できる可能性がある。 The three-dimensional data encoding device may also use the gps_alt_coordinates_flag and gps_coordinate_trans_enabled_flag to switch the function of the position information encoding unit to one of those shown in Figures 62 to 64. In other words, the three-dimensional data encoding device may have the three position information encoding units shown in Figures 62 to 64 and switch the position information encoding unit to be used. Alternatively, the three-dimensional data encoding device may use the gps_alt_coordinates_flag and gps_coordinate_trans_enabled_flag to switch the presence or absence and content of processing on a processing block basis. This allows common processing blocks to be shared among the processing blocks included in the three position information encoding units shown in Figures 62 to 64, potentially making it possible to realize a position information encoding unit that can achieve the functions of the configurations shown in Figures 62 to 64 with a small configuration.
なお、上述したように、図62~図64に示す処理の切り替えは、gps_alt_coordinates_flag及びgps_coordinate_trans_enabled_flagの組み合わせで示される。なお、これらの情報は任意の形態で示されてもよい。言い換えると、ビットストリームは、直交座標系と極座標系のうち、復号装置において出力される(復号される)位置情報の座標系を示す情報を含む。また、ビットストリームは、直交座標系と極座標系のうち、符号化又は復号に用いられる座標系を示す情報を含む。また、ビットストリームは、座標変換が行われるか否かを示す情報を含む。 As mentioned above, the switching of the processes shown in Figures 62 to 64 is indicated by a combination of gps_alt_coordinates_flag and gps_coordinate_trans_enabled_flag. Note that this information may be indicated in any form. In other words, the bit stream includes information indicating which of the Cartesian coordinate system and the polar coordinate system is used for the position information output (decoded) by the decoding device. The bit stream also includes information indicating which of the Cartesian coordinate system and the polar coordinate system is used for encoding or decoding. The bit stream also includes information indicating whether coordinate transformation is performed.
ここで、LiDARなどセンサにより取得された点群データは、例えば、センサからの角度及び距離情報と、反射率とで構成されるデータであり、極座標系の位置情報を含む。このセンサから出力される極座標系の点群データを、図62又は図63に示すような、直交座標系の点群データを入力とする符号化部に入力するためには、事前に点群データの位置情報を極座標系から直交座標系に変換する必要がある。この変換により位置情報に変換誤差が生じるため、極座標系を直交座標系に変換した時点で情報の一部が失われる。このため、極座標系から直交座標系に変換し、可逆で逆変換することはできない。 Here, point cloud data acquired by a sensor such as LiDAR is data composed of, for example, angle and distance information from the sensor, as well as reflectance, and includes position information in a polar coordinate system. In order to input the polar coordinate system point cloud data output from this sensor into an encoding unit that inputs point cloud data in a Cartesian coordinate system, such as that shown in Figure 62 or 63, the position information of the point cloud data must first be converted from the polar coordinate system to a Cartesian coordinate system. This conversion introduces a conversion error into the position information, so some information is lost when the polar coordinate system is converted to a Cartesian coordinate system. For this reason, it is not possible to convert from the polar coordinate system to a Cartesian coordinate system and then perform a reversible inverse conversion.
一方で、図64に示す構成及び本実施の形態で説明した方法を用いることにより、変換誤差のない極座標系のデータを符号化することが可能である。つまり、センサから出力された点群データを符号化し、かつ符号化された点群データを復号する際に、可逆圧縮が可能となる。 On the other hand, by using the configuration shown in Figure 64 and the method described in this embodiment, it is possible to encode data in a polar coordinate system without conversion errors. In other words, lossless compression is possible when encoding point cloud data output from a sensor and decoding the encoded point cloud data.
次に、上記位置情報符号化部により生成されたビットストリームを復号する位置情報復号部の構成を説明する。 Next, we will explain the configuration of the position information decoding unit that decodes the bit stream generated by the position information encoding unit.
図65は、出力される位置情報の座標系と、復号に用いられる位置情報の座標系とが共に直交座標系である場合の位置情報復号部の構成を示すブロック図である。つまり、この構成は、gps_alt_coordinates_flag=0の場合の位置情報復号部の構成である。例えば、この位置情報復号部は、図62に示す位置情報符号化部により生成されたビットストリームを復号する。 Figure 65 is a block diagram showing the configuration of a location information decoding unit when the coordinate system of the output location information and the coordinate system of the location information used for decoding are both Cartesian coordinate systems. In other words, this configuration is the configuration of a location information decoding unit when gps_alt_coordinates_flag = 0. For example, this location information decoding unit decodes the bit stream generated by the location information encoding unit shown in Figure 62.
ここで、図65~図67において、ブロック内の(x,y,z)は直交座標系を用いた処理が行われることを示し、ブロック内の(r,q,f)は極座標系を用いた処理が行われることを示す。(x,y,z)を付与した信号は直交座標系が用いられる信号であることを示し、(r,q,f)を付与した信号は極座標系が用いられる信号であることを示す。 Here, in Figures 65 to 67, (x, y, z) in a block indicates that processing is performed using a Cartesian coordinate system, and (r, q, f) in a block indicates that processing is performed using a polar coordinate system. Signals marked with (x, y, z) indicate that they are signals that use a Cartesian coordinate system, and signals marked with (r, q, f) indicate that they are signals that use a polar coordinate system.
図65に示すように位置情報復号部は、復号部13631と、逆量子化部13632と、再構成部13633とを含む。復号部13631は、ビットストリームを復号(例えばエントロピー復号又は算術復号)することで残差(量子化後の残差)を生成する。逆量子化部13632は、復号部13631で得られた残差を逆量子化する。再構成部13633は、予測値を算出し、逆量子化後の残差に予測値を加算することで直交座標系の位置情報を生成する。なお、ここで算出される予測値及び残差は、直交座標系で表される。このように、図65に示す位置情報復号部では、全ての処理が直交座標系で行われる。 As shown in Figure 65, the position information decoding unit includes a decoding unit 13631, an inverse quantization unit 13632, and a reconstruction unit 13633. The decoding unit 13631 generates residuals (residuals after quantization) by decoding the bitstream (e.g., entropy decoding or arithmetic decoding). The inverse quantization unit 13632 inverse quantizes the residuals obtained by the decoding unit 13631. The reconstruction unit 13633 calculates predicted values and adds the predicted values to the residuals after inverse quantization to generate position information in an orthogonal coordinate system. Note that the predicted values and residuals calculated here are represented in an orthogonal coordinate system. As such, in the position information decoding unit shown in Figure 65, all processing is performed in an orthogonal coordinate system.
図66は、出力される位置情報の座標系が直交座標系であり、復号に用いられる位置情報の座標系が極座標系である場合の位置情報復号部の構成を示すブロック図である。つまり、この構成は、gps_alt_coordinates_flag=1、かつgps_coordinate_trans_enabled_flag=1の場合の位置情報復号部の構成である。例えば、この位置情報復号部は、図63に示す位置情報符号化部により生成されたビットストリームを復号する。 Figure 66 is a block diagram showing the configuration of a location information decoding unit when the coordinate system of the output location information is a Cartesian coordinate system and the coordinate system of the location information used for decoding is a polar coordinate system. In other words, this configuration is the configuration of a location information decoding unit when gps_alt_coordinates_flag = 1 and gps_coordinate_trans_enabled_flag = 1. For example, this location information decoding unit decodes the bit stream generated by the location information encoding unit shown in Figure 63.
図66に示すように位置情報復号部は、分離部13641と、復号部13642と、再構成部13643と、変換部13644と、復号部13645と、逆量子化部13646と、加算部13647とを含む。 As shown in FIG. 66, the position information decoding unit includes a separation unit 13641, a decoding unit 13642, a reconstruction unit 13643, a conversion unit 13644, a decoding unit 13645, an inverse quantization unit 13646, and an addition unit 13647.
分離部13641は、ビットストリームから残差1の符号化データと残差2の符号化データとを取得する。復号部13642は、残差1の符号化データを復号(例えばエントロピー復号又は算術復号)することで残差1を生成する。再構成部13643は、予測値を算出し、逆量子化後の残差1に予測値を加算することで極座標系の位置情報を生成する。なお、ここで算出される予測値及び残差1は、極座標系で表される。変換部13644は、極座標系の位置情報を直交座標系の位置情報に変換する。 The separation unit 13641 obtains the coded data of residual 1 and the coded data of residual 2 from the bitstream. The decoding unit 13642 generates residual 1 by decoding (e.g., entropy decoding or arithmetic decoding) the coded data of residual 1. The reconstruction unit 13643 calculates a predicted value and generates position information in a polar coordinate system by adding the predicted value to residual 1 after inverse quantization. Note that the predicted value and residual 1 calculated here are expressed in a polar coordinate system. The conversion unit 13644 converts the position information in the polar coordinate system into position information in a Cartesian coordinate system.
復号部13645は、残差2の符号化データを復号(例えばエントロピー復号又は算術復号)することで残差2(量子化後の残差2)を生成する。逆量子化部13646は、復号部13645で得られた残差2を逆量子化する。ここで算出される予測値及び残差2は、直交座標系で表される。 The decoding unit 13645 generates residual 2 (quantized residual 2) by decoding (e.g., entropy decoding or arithmetic decoding) the coded data of residual 2. The inverse quantization unit 13646 inverse quantizes residual 2 obtained by the decoding unit 13645. The predicted value and residual 2 calculated here are expressed in a Cartesian coordinate system.
加算部13647は、変換部13644で得られた直交座標系の位置情報に残差2を加算することで最終的な直交座標系の位置情報を生成する。 The addition unit 13647 generates the final position information in the Cartesian coordinate system by adding residual 2 to the position information in the Cartesian coordinate system obtained by the conversion unit 13644.
このように、図66に示す位置情報復号部では、極座標系の位置情報を復号処理(予測、復号)を行い、得られた極座標系の位置情報が直交座標系の位置情報に変換される。 In this way, the position information decoding unit shown in Figure 66 performs a decoding process (prediction and decoding) on the position information in the polar coordinate system, and the obtained position information in the polar coordinate system is converted into position information in the Cartesian coordinate system.
図67は、出力される位置情報の座標系と、復号に用いられる位置情報の座標系とが共に極座標系である場合の位置情報復号部の構成を示すブロック図である。つまり、この構成は、gps_alt_coordinates_flag=1、かつgps_coordinate_trans_enabled_flag=0の場合の位置情報復号部の構成である。例えば、この位置情報復号部は、図64に示す位置情報符号化部により生成されたビットストリームを復号する。 Figure 67 is a block diagram showing the configuration of a location information decoding unit when the coordinate system of the output location information and the coordinate system of the location information used for decoding are both polar coordinate systems. In other words, this configuration is the configuration of a location information decoding unit when gps_alt_coordinates_flag = 1 and gps_coordinate_trans_enabled_flag = 0. For example, this location information decoding unit decodes the bit stream generated by the location information encoding unit shown in Figure 64.
図67に示すように位置情報復号部は、復号部13651と、逆量子化部13652と、再構成部13653とを含む。復号部13651は、ビットストリームを復号(例えばエントロピー復号又は算術復号)することで残差(量子化後の残差)を生成する。逆量子化部13652は、復号部13651で得られた残差を逆量子化する。再構成部13653は、予測値を算出し、逆量子化後の残差に予測値を加算することで極座標系の位置情報を生成する。なお、ここで算出される予測値及び残差は、極座標系で表される。このように、図67に示す位置情報復号部では、全ての処理が極座標系で行われる。 As shown in Figure 67, the position information decoding unit includes a decoding unit 13651, an inverse quantization unit 13652, and a reconstruction unit 13653. The decoding unit 13651 generates residuals (residuals after quantization) by decoding the bitstream (e.g., entropy decoding or arithmetic decoding). The inverse quantization unit 13652 inverse quantizes the residuals obtained by the decoding unit 13651. The reconstruction unit 13653 calculates predicted values and adds the predicted values to the residuals after inverse quantization to generate position information in a polar coordinate system. Note that the predicted values and residuals calculated here are expressed in a polar coordinate system. As such, in the position information decoding unit shown in Figure 67, all processing is performed in a polar coordinate system.
このように、図65に示す構成と図67に示す構成とは類似しているものの、残差を算出するための予測、逆量子化、及び復号で取り扱うデータの座標系が異なる。なお、図65に示す構成と図67に示す構成とにおいて、データの処理内容が異なってもよい。 Thus, although the configurations shown in Figures 65 and 67 are similar, the coordinate systems of the data handled in prediction, inverse quantization, and decoding for calculating residuals are different. Note that the data processing content may differ between the configurations shown in Figures 65 and 67.
また、三次元データ復号装置は、gps_alt_coordinates_flag及びgps_coordinate_trans_enabled_flagを用いて、位置情報復号部の機能を図65~図67のいずれかに切り替えてもよい。言い換えると、三次元データ符号化装置は、図65~図67に示す3つの位置情報復号部を有し、使用する位置情報復号部を切り替えてもよい。または、三次元データ復号装置は、gps_alt_coordinates_flag及びgps_coordinate_trans_enabled_flagを用いて、処理ブロック単位で処理の有無及び内容を切り替えてもよい。これにより、図65~図67に示す3つの位置情報復号部に含まれる処理ブロックのうち共通の処理ブロックを共有化できるので、小さな構成で、図65~図67に示す構成の機能を実現できる位置情報復号部を実現できる可能性がある。 The three-dimensional data decoding device may also use the gps_alt_coordinates_flag and gps_coordinate_trans_enabled_flag to switch the function of the location information decoding unit to one of those shown in Figures 65 to 67. In other words, the three-dimensional data encoding device may have the three location information decoding units shown in Figures 65 to 67 and switch the location information decoding unit to be used. Alternatively, the three-dimensional data decoding device may use the gps_alt_coordinates_flag and gps_coordinate_trans_enabled_flag to switch the presence or absence and content of processing on a processing block basis. This allows the processing blocks included in the three location information decoding units shown in Figures 65 to 67 to be shared, potentially making it possible to realize a location information decoding unit that can achieve the functions of the configurations shown in Figures 65 to 67 with a small configuration.
次に、三次元データ符号化装置の構成を説明する。図68は、点群データに含まれる位置情報及び属性情報を符号化する三次元データ符号化装置の構成を示すブロック図である。図68に示す三次元データ符号化装置は、重複点結合部13661と、位置情報符号化部13662と、属性情報変換部13663と、属性情報符号化部13664と、結合部13665とを含む。 Next, the configuration of a three-dimensional data encoding device will be described. Figure 68 is a block diagram showing the configuration of a three-dimensional data encoding device that encodes position information and attribute information contained in point cloud data. The three-dimensional data encoding device shown in Figure 68 includes a overlapping point joining unit 13661, a position information encoding unit 13662, an attribute information conversion unit 13663, an attribute information encoding unit 13664, and a joining unit 13665.
重複点結合部13661は、入力された位置情報(データA)において、複数の点が同一の位置情報をもつ場合、つまり重複点がある場合、同一の位置情報を持つ複数の点を1点にマージする。重複点が存在する場合とは、入力された点群にもともと重複点が存在する場合、又は、量子化処理により重複点が発生した場合である。 If multiple points in the input position information (data A) have the same position information, i.e., if there are duplicate points, the overlapping point merger 13661 merges the multiple points with the same position information into one point. An overlapping point exists when there is already an overlapping point in the input point cloud, or when an overlapping point occurs due to the quantization process.
位置情報符号化部13662は、マージ後の位置情報を符号化することで位置情報符号化データを生成する。例えば、位置情報符号化部13662は、図62~図64に示す3つの位置情報符号化部のうち、少なくとも一つを含む。 The position information encoding unit 13662 generates encoded position information data by encoding the merged position information. For example, the position information encoding unit 13662 includes at least one of the three position information encoding units shown in Figures 62 to 64.
属性情報変換部13663は、重複点がマージされた場合に、重複する複数の点に対する属性情報からマージ後の1点に対する属性情報を生成する。属性情報変換部13663は、重複する複数の点のいずれかを用いてマージ後の1点の属性情報を生成してもよいし、所定の方法で、重複する複数の点の複数の属性情報を1点の属性情報に変換してもよい。例えば、属性情報変換部13663は、マージ前の位置情報(データA)とマージ後の位置情報(データB)とを用いて、マージ後の点とマージ前の点との距離に基づいた重み付け加算により属性情報の値を決定してもよい。 When overlapping points are merged, the attribute information conversion unit 13663 generates attribute information for a single merged point from the attribute information for the multiple overlapping points. The attribute information conversion unit 13663 may generate attribute information for a single merged point using any of the multiple overlapping points, or may convert multiple attribute information for multiple overlapping points into attribute information for a single point using a specified method. For example, the attribute information conversion unit 13663 may use the position information before the merge (data A) and the position information after the merge (data B) to determine the value of the attribute information by weighting and adding based on the distance between the merged point and the point before the merge.
属性情報符号化部13664は、属性情報変換部13663で得られた属性情報を、位置情報(データC)に基づき符号化することで属性情報符号化データを生成する。具体的には、属性情報符号化部13664は、LoD(Level of Detail)を用いて属性情報を符号化する場合には、位置情報を用いてLoD階層の生成を行う。ここで、LoDとは、三次元点の位置情報を用いて各三次元点を複数階層に分類し、設定された階層に基づき三次元点の属性情報の予測値を生成し、属性情報と予測値との予測残差を符号化する方法である。つまり、位置情報は、例えば、属性情報の予測値の生成に用いられる。 The attribute information encoding unit 13664 generates attribute information encoded data by encoding the attribute information obtained by the attribute information conversion unit 13663 based on the position information (data C). Specifically, when encoding attribute information using LoD (Level of Detail), the attribute information encoding unit 13664 generates LoD hierarchies using the position information. Here, LoD is a method of classifying each 3D point into multiple hierarchies using the position information of the 3D points, generating predicted values of the attribute information of the 3D points based on the set hierarchies, and encoding the prediction residual between the attribute information and the predicted values. In other words, the position information is used, for example, to generate predicted values of the attribute information.
または、属性情報符号化部13664は、RAHT(Region Adaptive Hierarchical Transform)又はHaar変換を用いて属性情報を符号化する場合に、位置情報を用いる。これらの方法では、属性情報符号化部13664は、各階層の高周波成分及び低周波数成分を生成し、それらの値を量子化及びエントロピー符号化等を行う。また、位置情報は、最下層の演算のペアとして用いる2つの三次元点の設定に用いられる。 Alternatively, the attribute information encoding unit 13664 uses position information when encoding attribute information using RAHT (Region Adaptive Hierarchical Transform) or Haar transform. In these methods, the attribute information encoding unit 13664 generates high-frequency and low-frequency components for each layer and performs quantization and entropy coding on those values. In addition, the position information is used to set two three-dimensional points to be used as a pair for the calculation at the lowest layer.
例えば、データAの座標系が直交座標系である場合は、位置情報符号化部13662及び属性情報符号化部13664は直交座標系の位置情報を用いた処理を行う。つまり、この場合、データB及びデータCは直交座標系である。このように、直交座標系を用いることにより属性情報の変換及び属性情報の符号化効率を向上できる可能性がある。 For example, if the coordinate system of data A is a Cartesian coordinate system, the position information encoding unit 13662 and the attribute information encoding unit 13664 perform processing using position information in the Cartesian coordinate system. In other words, in this case, data B and data C are in Cartesian coordinate systems. In this way, using a Cartesian coordinate system may improve the efficiency of attribute information conversion and attribute information encoding.
また、例えば、データAの座標系が極座標系である場合は、位置情報符号化部13662及び属性情報符号化部13664は極座標系の位置情報を用いた処理を行う。つまり、データB及びデータCは極座標系である。これにより、符号化効率を向上できる可能性がある。また、座標変換処理が不要であることにより処理量及び処理遅延を低減できる。このように、三次元データ符号化装置は、直交座標系と極座標系とに対応する処理を行う構成を両方具備し、入力された位置情報の座標系に基づき、直交座標系の処理と極座標系の処理とを切り替えてもよい。 Furthermore, for example, if the coordinate system of data A is a polar coordinate system, the position information encoding unit 13662 and the attribute information encoding unit 13664 perform processing using position information in the polar coordinate system. In other words, data B and data C are in polar coordinate systems. This has the potential to improve encoding efficiency. Furthermore, since coordinate conversion processing is not required, the processing volume and processing delay can be reduced. In this way, the three-dimensional data encoding device may be equipped with a configuration that performs processing corresponding to both the Cartesian coordinate system and the polar coordinate system, and may switch between processing in the Cartesian coordinate system and processing in the polar coordinate system based on the coordinate system of the input position information.
なお、三次元データ符号化装置は、符号化効率を向上できる可能性が高い座標系で符号化を行ってもよい。つまり、三次元データ符号化装置は、位置情報の座標系を変換してもよい。例えば、三次元データ符号化装置は、入力データの順序が角度順に並べられている場合は、入力の座標系に関わらず、極座標系を用いて符号化を行ってもよい。 The three-dimensional data encoding device may perform encoding in a coordinate system that is more likely to improve encoding efficiency. In other words, the three-dimensional data encoding device may convert the coordinate system of the position information. For example, if the input data is arranged in angular order, the three-dimensional data encoding device may perform encoding using a polar coordinate system regardless of the input coordinate system.
また、三次元データ符号化装置は、直交座標系と極座標系とのいずれか一方の座標系の処理を行う構成を具備する場合において、入力された位置情報の座標系が、具備する構成の座標系と異なる場合、位置情報の座標系を、具備する構成の座標系に変換してもよい。例えば、三次元データ符号化装置は、位置情報符号化部13662及び属性情報符号化部13664が直交座標系に対応する場合において、データAの座標系が極座標系である場合には、データB及びデータCを極座標系から直交座標系に変換する。これにより、三次元データ符号化装置は、一方の座標系の構成を具備する場合において、両方の座標系のデータAを符号化できる。 Furthermore, when a three-dimensional data encoding device is equipped with a configuration that processes either a Cartesian coordinate system or a polar coordinate system, if the coordinate system of the input position information differs from the coordinate system of the equipped configuration, the three-dimensional data encoding device may convert the coordinate system of the position information to the coordinate system of the equipped configuration. For example, when the position information encoding unit 13662 and the attribute information encoding unit 13664 support Cartesian coordinate systems, if the coordinate system of data A is a polar coordinate system, the three-dimensional data encoding device converts data B and data C from the polar coordinate system to the Cartesian coordinate system. As a result, when a three-dimensional data encoding device is equipped with a configuration of one coordinate system, it can encode data A in both coordinate systems.
つまり、属性情報符号化部13664は、符号化対象の1つの三次元点の属性情報を、直交座標系及び極座標系のうち、復号において出力される位置情報の座標系である第1座標系の、符号化対象の1つの三次元点の位置情報を用いて符号化することで属性情報符号化データを生成する。 In other words, the attribute information encoding unit 13664 generates attribute information encoded data by encoding the attribute information of one three-dimensional point to be encoded using the position information of the one three-dimensional point to be encoded in a first coordinate system, which is the coordinate system of the position information output during decoding, of the Cartesian coordinate system and the polar coordinate system.
結合部13665は、位置情報符号化データ及び属性情報符号化データを含むビットストリームを生成する。 The combining unit 13665 generates a bitstream including position information encoded data and attribute information encoded data.
次に、三次元データ復号装置の構成を説明する。図69は、点群データに含まれる位置情報及び属性情報を復号する三次元データ復号装置の構成を示すブロック図である。図69に示す三次元データ復号装置は、分離部13671と、位置情報復号部13672と、属性情報復号部13673とを含む。 Next, the configuration of a three-dimensional data decoding device will be described. Figure 69 is a block diagram showing the configuration of a three-dimensional data decoding device that decodes position information and attribute information contained in point cloud data. The three-dimensional data decoding device shown in Figure 69 includes a separation unit 13671, a position information decoding unit 13672, and an attribute information decoding unit 13673.
分離部13671は、入力されたビットストリームからは、位置情報符号化データと、属性情報符号化データを取得する。位置情報復号部13672は、位置情報符号化データを復号することで位置情報(データD)を生成する。例えば、位置情報復号部13672は、図65~図67に示す3つの位置情報復号部のうち、少なくとも一つを含む。 The separation unit 13671 obtains position information encoded data and attribute information encoded data from the input bit stream. The position information decoding unit 13672 generates position information (data D) by decoding the position information encoded data. For example, the position information decoding unit 13672 includes at least one of the three position information decoding units shown in Figures 65 to 67.
属性情報復号部13673は、復号された位置情報(データD)を用いて属性情報符号化データを復号することで属性情報を生成する。具体的には、属性情報復号部13673は、LoDを用いて属性情報を復号する場合、位置情報を用いてLoD階層の生成を行う。つまり、位置情報は、例えば、属性情報の予測値の生成に用いられる。または、属性情報復号部13673は、RAHT又はHaar変換を用いて属性情報を符号化する場合に、位置情報を用いる。 The attribute information decoding unit 13673 generates attribute information by decoding the attribute information encoded data using the decoded position information (data D). Specifically, when the attribute information decoding unit 13673 decodes the attribute information using LoD, it uses the position information to generate an LoD hierarchy. In other words, the position information is used, for example, to generate a predicted value of the attribute information. Alternatively, the attribute information decoding unit 13673 uses the position information when encoding the attribute information using the RAHT or Haar transform.
ここで、復号された位置情報(データD)の座標系は、直交座標系と極座標系とのいずれか一方である。例えば、図65又は図66の構成を用いて復号が行われる場合はデータDは直交座標系であり、図67の構成を用いて復号が行われる場合はデータDは極座標系である。 Here, the coordinate system of the decoded position information (data D) is either a rectangular coordinate system or a polar coordinate system. For example, when decoding is performed using the configuration of Figure 65 or Figure 66, data D is in a rectangular coordinate system, and when decoding is performed using the configuration of Figure 67, data D is in a polar coordinate system.
データDの座標系が直交座標系の場合は、属性情報復号部13673は、直交座標系の位置情報を用いた処理を行う。属性情報復号部13673は、直交座標系の位置情報を用いることにより属性情報の変換及び属性情報の符号化効率を向上できる可能性がある。また、データDの座標系が極座標系の場合は、属性情報復号部13673は、極座標系の位置情報を用いた処理を行う。属性情報復号部13673は、極座標系の地位情報を用いることにより符号化効率を向上できる可能性がある。また、座標変換処理が不要であることにより処理量及び処理遅延を低減できる。このように、三次元データ復号装置は、直交座標系と極座標系とに対応する処理を行う構成を両方具備し、入力された位置情報符号化データの座標系に基づき、直交座標系の処理と極座標系の処理とを切り替えてもよい。 If the coordinate system of data D is a Cartesian coordinate system, the attribute information decoding unit 13673 performs processing using position information in the Cartesian coordinate system. By using position information in the Cartesian coordinate system, the attribute information decoding unit 13673 may be able to improve the conversion of attribute information and the encoding efficiency of the attribute information. Furthermore, if the coordinate system of data D is a polar coordinate system, the attribute information decoding unit 13673 performs processing using position information in the polar coordinate system. By using position information in the polar coordinate system, the attribute information decoding unit 13673 may be able to improve encoding efficiency. Furthermore, since coordinate conversion processing is not required, the processing volume and processing delay can be reduced. In this way, the three-dimensional data decoding device may be equipped with configurations that perform processing corresponding to both the Cartesian coordinate system and the polar coordinate system, and may switch between processing in the Cartesian coordinate system and processing in the polar coordinate system based on the coordinate system of the input encoded position information data.
また、三次元データ復号装置は、直交座標系と極座標系とのいずれか一方の座標系の処理を行う構成を具備する場合において、位置情報復号部13672からの位置情報(データD)の座標系が、具備する構成の座標系と異なる場合、位置情報の座標系を、具備する構成の座標系に変換してもよい。例えば、属性情報復号部13673が直交座標系に対応する場合において、位置情報(データD)の座標系が極座標系である場合には、三次元データ復号装置は、データDを極座標系から直交座標系に変換する。これにより、三次元データ復号装置は、一方の座標系の構成を具備する場合において、極座標系のデータD、及び直交座標系のデータDに基づき属性情報を復号できる。 Furthermore, when the three-dimensional data decoding device is equipped with a configuration that processes either a Cartesian coordinate system or a polar coordinate system, if the coordinate system of the position information (data D) from the position information decoding unit 13672 differs from the coordinate system of the equipped configuration, the coordinate system of the position information may be converted to the coordinate system of the equipped configuration. For example, when the attribute information decoding unit 13673 supports a Cartesian coordinate system, if the coordinate system of the position information (data D) is a polar coordinate system, the three-dimensional data decoding device converts data D from the polar coordinate system to a Cartesian coordinate system. As a result, when the three-dimensional data decoding device is equipped with a configuration of one of the coordinate systems, it can decode attribute information based on data D in the polar coordinate system and data D in the Cartesian coordinate system.
このように、属性情報復号部13673は、直交座標系及び極座標系のうち、算出される復号対象の1つの三次元点の位置情報の座標系である第1座標系の、復号対象の1つの三次元点の位置情報を用いて属性情報符号化データを復号することで復号対象の1つの三次元点の属性情報を生成する。 In this way, the attribute information decoding unit 13673 generates attribute information for one three-dimensional point to be decoded by decoding the attribute information encoded data using the position information of the one three-dimensional point to be decoded in a first coordinate system, which is a coordinate system of the position information of the one three-dimensional point to be decoded, either a Cartesian coordinate system or a polar coordinate system.
なお、属性情報復号部13673に入力されるデータDは、データの値が一定の範囲に収まるように正規化されてもよい。例えば、三次元データ復号装置は、データDが直交座標系である場合、点群を構成する点の座標(x,y,z)、又は点群を包括するバウンディングボックスの情報に基づき、位置情報の値の最大値を導出し、導出した最大値に基づき、データDの位置情報の値を正規化してもよい。また、三次元データ復号装置は、データDが極座標系である場合は、原点から点群を構成する点までの距離rに基づき、値の最大値を導出し、導出した最大値に基づき、データDの位置情報の値を正規化してもよい。例えば、三次元データ復号装置は、データDの位置情報の値を導出した最大値で除算してもよい。 The data D input to the attribute information decoding unit 13673 may be normalized so that the data value falls within a certain range. For example, if the data D is in a Cartesian coordinate system, the three-dimensional data decoding device may derive the maximum value of the position information based on the coordinates (x, y, z) of the points that make up the point cloud or information about the bounding box that encompasses the point cloud, and normalize the value of the position information of the data D based on the derived maximum value. Furthermore, if the data D is in a polar coordinate system, the three-dimensional data decoding device may derive the maximum value based on the distance r from the origin to the points that make up the point cloud, and normalize the value of the position information of the data D based on the derived maximum value. For example, the three-dimensional data decoding device may divide the value of the position information of the data D by the derived maximum value.
なお、位置情報復号部13672が、上記の最大値又はバウンディングボックスの情報を導出し、属性情報復号部13673に出力し、属性情報復号部13673において、最大値又はバウンディングボックスの情報を用いたデータDの正規化が行われてもよい。このように、属性情報復号部13673が、位置情報復号部13672から出力された情報に基づき正規化を行うことで、属性情報復号部13673における、最大値を導出する処理の処理量及び処理遅延を削減できる可能性がある。 In addition, the position information decoding unit 13672 may derive the above-mentioned maximum value or bounding box information and output it to the attribute information decoding unit 13673, which may then normalize the data D using the maximum value or bounding box information. In this way, by having the attribute information decoding unit 13673 perform normalization based on the information output from the position information decoding unit 13672, it may be possible to reduce the processing amount and processing delay of the process of deriving the maximum value in the attribute information decoding unit 13673.
なお、ここで、三次元データ復号装置において正規化を行う例を述べたが、三次元データ符号化装置におけるデータCに対しても同様の処理を行ってもよい。また、位置情報符号化部13662が、位置情報復号部13672と同様に、最大値又はバウンディングボックスの情報を導出し、属性情報符号化部13664に出力し、属性情報符号化部13664において、最大値又はバウンディングボックスの情報を用いたデータCの正規化が行われてもよい。 Note that, while an example of normalization in a three-dimensional data decoding device has been described above, similar processing may also be performed on data C in a three-dimensional data encoding device. Furthermore, the position information encoding unit 13662, like the position information decoding unit 13672, may derive maximum value or bounding box information and output it to the attribute information encoding unit 13664, and the attribute information encoding unit 13664 may then normalize data C using the maximum value or bounding box information.
また、上記では、位置情報が(x,y,z)で示される座標系を直交座標系と説明したがデカルト座標系とも呼ぶ場合がある。また、位置情報が(r,q,f)で示される座標系を極座標系と説明したが、球座標系と呼ぶ場合もある。 Also, above, a coordinate system in which position information is represented by (x, y, z) was described as a Cartesian coordinate system, but it is sometimes called a Cartesian coordinate system. Also, a coordinate system in which position information is represented by (r, q, f) was described as a polar coordinate system, but it is sometimes called a spherical coordinate system.
図70は、本実施の形態に係る三次元データ復号処理のフローチャートである。まず、三次元データ復号装置は、ビットストリームから位置情報を復号する(S13601)。次に、三次元データ復号装置は、処理1(S13602)として、属性情報の復号に用いる位置情報の座標系を決定する。具体的には、三次元データ復号装置は、位置情報の復号が極座標系で行われている場合(S13611でYes)、属性情報を極座標系の位置情報を用いて復号すると決定する(S13612)。一方、三次元データ復号装置は、位置情報の復号が極座標系で行われてない場合(S13611でNo)、つまり、位置情報の復号が直交座標系で行われている場合、属性情報を直交座標系の位置情報を用いて復号すると決定する(S13613)。 Figure 70 is a flowchart of the three-dimensional data decoding process according to this embodiment. First, the three-dimensional data decoding device decodes position information from the bit stream (S13601). Next, as process 1 (S13602), the three-dimensional data decoding device determines the coordinate system of the position information to be used in decoding the attribute information. Specifically, if the position information has been decoded in a polar coordinate system (Yes in S13611), the three-dimensional data decoding device determines to decode the attribute information using position information in the polar coordinate system (S13612). On the other hand, if the position information has not been decoded in a polar coordinate system (No in S13611), that is, if the position information has been decoded in a Cartesian coordinate system, the three-dimensional data decoding device determines to decode the attribute information using position information in the Cartesian coordinate system (S13613).
次に、三次元データ復号装置は、処理2(S13603)として、属性情報の復号に用いる位置情報を正規化する。具体的には、三次元データ復号装置は、属性情報の復号に極座標系の位置情報が用いられると決定された場合(S13621でYes)、極座標系の位置情報を正規化する(S13623)。例えば、上述したように、三次元データ復号装置は、原点から点群を構成する点までの距離rに基づき正規化を行う。例えば、三次元データ復号装置は、データDの位置情報の値を距離rの最大値で除算する。 Next, as process 2 (S13603), the three-dimensional data decoding device normalizes the position information used to decode the attribute information. Specifically, if it is determined that position information in a polar coordinate system is to be used to decode the attribute information (Yes in S13621), the three-dimensional data decoding device normalizes the position information in the polar coordinate system (S13623). For example, as described above, the three-dimensional data decoding device performs normalization based on the distance r from the origin to the points that make up the point cloud. For example, the three-dimensional data decoding device divides the value of the position information of data D by the maximum value of the distance r.
一方、三次元データ復号装置は、属性情報の復号に極座標系の位置情報が用いられないと決定された場合(S13621でNo)、つまり、属性情報の復号に直交座標系の位置情報が用いられると決定された場合、直交座標系の位置情報を極座標系の位置情報に変換し(S13622)、得られた極座標系の位置情報を正規化する(S13623)。 On the other hand, if the three-dimensional data decoding device determines that polar coordinate system position information will not be used to decode the attribute information (No in S13621), that is, if it determines that Cartesian coordinate system position information will be used to decode the attribute information, it converts the Cartesian coordinate system position information into polar coordinate system position information (S13622) and normalizes the obtained polar coordinate system position information (S13623).
次に、三次元データ復号装置は、正規化後の位置情報を用いて属性情報を符号化する。なお、三次元データ復号装置は、直交座標系の位置情報を用いて属性情報の復号を行う場合には、正規化後の位置情報を直交座標系に変換し、得られた位置情報を用いて属性情報を復号してもよい。または、三次元データ復号装置は、直交座標系の位置情報を用いて属性情報の復号を行う場合には、ステップS13622の座標変換を行わず、直交座標系の位置情報を正規化してもよい。 Next, the three-dimensional data decoding device encodes the attribute information using the normalized position information. Note that when the three-dimensional data decoding device decodes the attribute information using position information in a Cartesian coordinate system, it may convert the normalized position information into a Cartesian coordinate system and decode the attribute information using the obtained position information. Alternatively, when the three-dimensional data decoding device decodes the attribute information using position information in a Cartesian coordinate system, it may normalize the position information in the Cartesian coordinate system without performing the coordinate conversion in step S13622.
以上のように、本実施の形態に係る三次元データ符号化装置は、図71に示す処理を行う。三次元データ符号化装置は、複数の三次元点を符号化する。三次元データ符号化装置は、複数の符号化済みの三次元点のうちの1以上の候補点の位置情報に基づいて予測値を算出し(S13631)、複数の三次元点のうちの符号化対象の1つの三次元点の位置情報と、予測値との差分である第1残差を算出し(S13632)、第1残差を符号化することで位置情報符号化データを生成し(S13633)、位置情報符号化データが極座標系で算出された第1位置情報符号化データを含むか否かを示す第1識別情報(例えばgps_alt_coordinates_flag)を生成する(S13634)。 As described above, the three-dimensional data encoding device according to this embodiment performs the processing shown in FIG. 71. The three-dimensional data encoding device encodes a plurality of three-dimensional points. The three-dimensional data encoding device calculates a predicted value based on position information of one or more candidate points from among the plurality of encoded three-dimensional points (S13631), calculates a first residual, which is the difference between the predicted value and the position information of one three-dimensional point to be encoded from among the plurality of three-dimensional points (S13632), generates encoded position information data by encoding the first residual (S13633), and generates first identification information (e.g., gps_alt_coordinates_flag) indicating whether the encoded position information data includes first encoded position information data calculated in a polar coordinate system (S13634).
三次元データ符号化装置は、符号化対象の1つの三次元点の属性情報を、直交座標系及び極座標系のうち、復号において出力される位置情報の座標系である第1座標系の、符号化対象の1つの三次元点の位置情報を用いて符号化することで属性情報符号化データを生成する(S13635)。三次元データ符号化装置は、位置情報符号化データと、第1識別情報と、属性情報符号化データとを含むビットストリームを生成する(S13636)。 The three-dimensional data encoding device generates attribute information encoded data by encoding the attribute information of one three-dimensional point to be encoded using position information of the one three-dimensional point to be encoded in a first coordinate system, which is the coordinate system of the position information output during decoding, of either a Cartesian coordinate system or a polar coordinate system (S13635).The three-dimensional data encoding device generates a bit stream including the position information encoded data, the first identification information, and the attribute information encoded data (S13636).
これによれば、三次元データ符号化装置は、復号において出力される位置情報の座標系である第1座標を用いて属性情報を符号化する。これにより、符号化効率を向上できる。また、座標変換処理等が不要となるため処理量を低減できる。 With this, the three-dimensional data encoding device encodes attribute information using first coordinates, which are the coordinate system of the position information output during decoding. This improves encoding efficiency. In addition, the amount of processing can be reduced because coordinate conversion processing and the like are no longer necessary.
例えば、三次元データ符号化装置は、第1座標系が極座標系である場合、符号化対象の1つの三次元点の極座標系の位置情報を正規化し、符号化対象の1つの三次元点の属性情報を、正規化された極座標系の位置情報を用いて符号化する。これによれば、三次元データ符号化装置は、属性情報の復号に用いる位置情報の値の範囲を制限できるので、処理量を低減できる。 For example, when the first coordinate system is a polar coordinate system, the three-dimensional data encoding device normalizes the position information in the polar coordinate system of one three-dimensional point to be encoded, and encodes the attribute information of the one three-dimensional point to be encoded using the position information in the normalized polar coordinate system. This allows the three-dimensional data encoding device to limit the range of position information values used to decode the attribute information, thereby reducing the amount of processing.
例えば、三次元データ符号化装置は、位置情報符号化データの生成において、複数の三次元の座標の最大値、又は、複数の三次元点を包括するバウンディングボックス、を示す情報を生成し、生成された情報を用いて、符号化対象の1つの三次元点の第1座標系の位置情報を正規化し、符号化対象の1つの三次元点の属性情報を、正規化された第1座標系の位置情報を用いて符号化する。これによれば、三次元データ符号化装置は、属性情報の復号処理の処理量を低減できる。 For example, when generating encoded position information data, the three-dimensional data encoding device generates information indicating the maximum value of multiple three-dimensional coordinates or a bounding box encompassing multiple three-dimensional points, uses the generated information to normalize the position information in a first coordinate system of one three-dimensional point to be encoded, and encodes the attribute information of the one three-dimensional point to be encoded using the normalized position information in the first coordinate system. This allows the three-dimensional data encoding device to reduce the amount of processing required to decode the attribute information.
例えば、予測値の算出に用いられる1以上の候補点の位置情報、及び、第1残差の算出に用いられる符号化対象の1つの三次元点の位置情報が、極座標系の位置情報である場合、第1識別情報は、位置情報符号化データが第1位置情報符号化データを含むことを示し、ビットストリームは、さらに、復号において極座標系の位置情報を出力するか、直交座標系の位置情報を出力するかを示す第2識別情報(gps_coordinate_trans_enabled_flag)を含む。 For example, if the position information of one or more candidate points used to calculate the predicted value and the position information of one three-dimensional point to be encoded used to calculate the first residual are position information in a polar coordinate system, the first identification information indicates that the position information encoded data includes first position information encoded data, and the bitstream further includes second identification information (gps_coordinate_trans_enabled_flag) indicating whether position information in a polar coordinate system or position information in a Cartesian coordinate system is output during decoding.
例えば、位置情報符号化データが第1位置情報符号化データを含まないことを第1識別情報が示す場合、ビットストリームは、第2識別情報を含まない。 For example, if the first identification information indicates that the position information encoding data does not include the first position information encoding data, the bitstream does not include the second identification information.
例えば、符号化において、第1残差を量子化し、量子化された第1残差を符号化する場合、第2識別情報は、復号において極座標系の位置情報を出力することを示す。 For example, when encoding, the first residual is quantized and the quantized first residual is encoded, the second identification information indicates that position information in a polar coordinate system is output when decoding.
例えば、三次元データ符号化装置は、第1残差の算出において、さらに、符号化対象の1つの三次元点の直交座標系の位置情報の座標系を変換することで極座標系の位置情報を生成し、かつ、第1残差は、変換後の極座標系の位置情報と予測値との差分である場合、三次元データ符号化装置は、さらに、変換後の極座標系の位置情報の座標系を逆変換することで直交座標系の位置情報を生成し、直交座標系の位置情報と、逆変換後の直交座標系の位置情報との差分である第2残差を算出し、位置情報符号化データの生成では、第1残差及び第2残差を符号化することで位置情報符号化データを生成し、第1識別情報は、位置情報符号化データが第1位置情報符号化データを含むことを示し、第2識別情報は、復号において直交座標系の位置情報を出力することを示す。 For example, when calculating the first residual, the three-dimensional data encoding device further generates position information in a polar coordinate system by transforming the coordinate system of the position information in the Cartesian coordinate system of one three-dimensional point to be encoded, and if the first residual is the difference between the position information in the polar coordinate system after the transformation and the predicted value, the three-dimensional data encoding device further generates position information in a Cartesian coordinate system by inversely transforming the coordinate system of the position information in the polar coordinate system after the transformation, and calculates a second residual that is the difference between the position information in the Cartesian coordinate system and the position information in the Cartesian coordinate system after the inverse transformation, and when generating the position information encoded data, generates position information encoded data by encoding the first residual and the second residual, the first identification information indicates that the position information encoded data includes the first position information encoded data, and the second identification information indicates that the position information in the Cartesian coordinate system is to be output during decoding.
例えば、三次元データ符号化装置は、プロセッサと、メモリとを備え、プロセッサは、メモリを用いて、上記の処理を行う。 For example, a three-dimensional data encoding device includes a processor and a memory, and the processor uses the memory to perform the above processing.
また、本実施の形態に係る三次元データ復号装置は、図72に示す処理を行う。三次元データ復号装置は、複数の三次元点を復号する。三次元データ復号装置は、第1残差が符号化された位置情報符号化データと、位置情報符号化データが極座標系で算出された第1位置情報符号化データを含むか否かを示す第1識別情報(例えばgps_alt_coordinates_flag)と、属性情報符号化データとを含むビットストリームを取得する(S13641)。三次元データ復号装置は、複数の復号済みの三次元点のうちの1以上の候補点の位置情報に基づいて予測値を算出し(S13642)、符号化された第1残差を復号することで第1残差を算出し(S13643)、予測値と第1残差とを加算することで、復号対象の1つの三次元点の位置情報を算出する(S13644)。直交座標系及び極座標系のうち、算出される復号対象の1つの三次元点の位置情報の座標系である第1座標系は、第1識別情報が示す第1位置情報符号化データを含むか否かに応じた座標系である。三次元データ復号装置は、属性情報符号化データを、復号対象の1つの三次元点の第1座標系の位置情報を用いて復号することで復号対象の1つの三次元点の属性情報を生成する(S13645)。 The three-dimensional data decoding device according to this embodiment also performs the processing shown in FIG. 72. The three-dimensional data decoding device decodes multiple three-dimensional points. The three-dimensional data decoding device acquires a bitstream including position information encoded data in which a first residual is encoded, first identification information (e.g., gps_alt_coordinates_flag) indicating whether the position information encoded data includes first position information encoded data calculated in a polar coordinate system, and attribute information encoded data (S13641). The three-dimensional data decoding device calculates a predicted value based on position information of one or more candidate points among the multiple decoded three-dimensional points (S13642), calculates a first residual by decoding the encoded first residual (S13643), and calculates position information of one three-dimensional point to be decoded by adding the predicted value and the first residual (S13644). The first coordinate system, which is the coordinate system of the position information of the one three-dimensional point to be decoded and is either a Cartesian coordinate system or a polar coordinate system, is a coordinate system that depends on whether or not the first position information encoded data indicated by the first identification information is included. The three-dimensional data decoding device generates attribute information of the one three-dimensional point to be decoded by decoding the attribute information encoded data using the position information in the first coordinate system of the one three-dimensional point to be decoded (S13645).
これによれば、三次元データ復号装置は、第1座標の位置情報を用いて属性情報を復号する。これにより、符号化効率を向上できる。また、座標変換処理等が不要となるため処理量を低減できる。 With this, the three-dimensional data decoding device decodes the attribute information using the position information of the first coordinate. This improves encoding efficiency. In addition, the amount of processing can be reduced because coordinate conversion processing and the like are no longer necessary.
例えば、三次元データ復号装置は、第1座標系が極座標系である場合、復号対象の1つの三次元点の極座標系の位置情報を正規化し、属性情報符号化データを、正規化された極座標系の位置情報を用いて復号する。これによれば、三次元データ復号装置は、属性情報の復号に用いる位置情報の値の範囲を制限できるので、処理量を低減できる。 For example, when the first coordinate system is a polar coordinate system, the three-dimensional data decoding device normalizes the position information in the polar coordinate system of one three-dimensional point to be decoded, and decodes the attribute information encoded data using the position information in the normalized polar coordinate system. This allows the three-dimensional data decoding device to limit the range of position information values used to decode the attribute information, thereby reducing the amount of processing.
例えば、三次元データ復号装置は、復号対象の1つの三次元点の位置情報の算出において、複数の三次元の座標の最大値、又は、複数の三次元点を包括するバウンディングボックス、を示す情報を生成し、生成された情報を用いて、復号対象の1つの三次元点の第1座標系の位置情報を正規化し、属性情報符号化データを、正規化された第1座標系の位置情報を用いて復号する。これによれば、三次元データ復号装置は、属性情報の復号処理の処理量を低減できる。 For example, when calculating the position information of a single 3D point to be decoded, the 3D data decoding device generates information indicating the maximum value of multiple 3D coordinates or a bounding box encompassing multiple 3D points, uses the generated information to normalize the position information in a first coordinate system of the single 3D point to be decoded, and decodes the attribute information encoded data using the normalized position information in the first coordinate system. This allows the 3D data decoding device to reduce the amount of processing required to decode the attribute information.
例えば、ビットストリームは、さらに、復号において極座標系の位置情報を出力するか、直交座標系の位置情報を出力するかを示す第2識別情報(gps_coordinate_trans_enabled_flag)を含み、第1識別情報が、位置情報符号化データが第1位置情報符号化データを含むことを示す場合、予測値の算出に用いられる1以上の候補点の位置情報、及び、第1残差の算出に用いられた符号化対象の1つの三次元点の位置情報は、極座標系の位置情報である。 For example, the bitstream further includes second identification information (gps_coordinate_trans_enabled_flag) indicating whether position information in a polar coordinate system or position information in a Cartesian coordinate system is output during decoding, and when the first identification information indicates that the position information encoded data includes first position information encoded data, the position information of one or more candidate points used to calculate the predicted value and the position information of one three-dimensional point to be encoded used to calculate the first residual are position information in a polar coordinate system.
例えば、位置情報符号化データが第1位置情報符号化データを含まないことを第1識別情報が示す場合、ビットストリームは、第2識別情報を含まない。 For example, if the first identification information indicates that the position information encoding data does not include the first position information encoding data, the bitstream does not include the second identification information.
例えば、第2識別情報が、復号において極座標系の位置情報を出力することを示す場合、算出される復号対象の1つの三次元点の位置情報の座標系は極座標系である。 For example, if the second identification information indicates that position information in a polar coordinate system is to be output during decoding, the coordinate system of the calculated position information of one three-dimensional point to be decoded is a polar coordinate system.
例えば、三次元データ復号装置は、第1識別情報が、位置情報符号化データが第1位置情報符号化データを含むことを示し、かつ、第2識別情報が、復号において直交座標系の位置情報を出力することを示す場合、復号対象の1つの三次元点の位置情報の算出では、予測値と第1残差とを加算することで得られた極座標系の位置情報の座標系を変換し、変換することで得られた直交座標系の位置情報を、復号対象の1つの三次元点の位置情報として算出する。 For example, when the first identification information indicates that the position information encoded data includes first position information encoded data and the second identification information indicates that position information in a Cartesian coordinate system is to be output during decoding, the three-dimensional data decoding device calculates the position information of one three-dimensional point to be decoded by converting the coordinate system of the position information in a polar coordinate system obtained by adding the predicted value and the first residual, and calculating the position information in the Cartesian coordinate system obtained by the conversion as the position information of one three-dimensional point to be decoded.
例えば、第1識別情報が、位置情報符号化データが第1位置情報符号化データを含むことを示し、かつ、第2識別情報が、復号において直交座標系の位置情報を出力することを示す場合、位置情報符号化データは、さらに、符号化された第2残差を含み、三次元データ復号装置は、さらに、符号化された第2残差を復号することで第2残差を算出し、復号対象の1つの三次元点の位置情報の算出では、座標系を変換することで得られた直交座標系の位置情報と第2残差とを加算し、加算することで得られた位置情報を、復号対象の1つの三次元点の位置情報として算出する。 For example, if the first identification information indicates that the position information encoded data includes first position information encoded data and the second identification information indicates that decoding outputs position information in a Cartesian coordinate system, the position information encoded data further includes an encoded second residual, and the three-dimensional data decoding device further calculates the second residual by decoding the encoded second residual, and in calculating the position information of one three-dimensional point to be decoded, adds the position information in the Cartesian coordinate system obtained by converting the coordinate system to the second residual, and calculates the position information obtained by the addition as the position information of one three-dimensional point to be decoded.
例えば、三次元データ復号装置は、プロセッサと、メモリとを備え、プロセッサは、メモリを用いて、上記の処理を行う。 For example, a three-dimensional data decoding device includes a processor and a memory, and the processor uses the memory to perform the above processing.
(実施の形態7)
本実施の形態では、三次元点群の位置情報の座標系が直交座標系と極座標系との場合のそれぞれにおける位置情報の符号化処理及び復号処理について説明する。まず、符号化処理について説明する。
Seventh Embodiment
In this embodiment, the encoding process and decoding process of the position information when the coordinate system of the position information of the three-dimensional point group is a Cartesian coordinate system and a polar coordinate system will be described. First, the encoding process will be described.
図73は、入力される三次元点群の位置情報の座標系が直交座標系である場合の位置情報符号化部13700の構成を示すブロック図である。位置情報符号化部13700は、三次元データ符号化装置に含まれ、シフト部13701と、符号化部13702とを備える。 Figure 73 is a block diagram showing the configuration of the position information encoding unit 13700 when the coordinate system of the position information of the input three-dimensional point cloud is a Cartesian coordinate system. The position information encoding unit 13700 is included in a three-dimensional data encoding device and comprises a shift unit 13701 and an encoding unit 13702.
なお、図73等において、(x,y,z)を付与した情報は直交座標系が用いられる情報であることを示し、(r,θ,φ)を付与した情報は極座標系が用いられる情報であることを示す。ここで、rは原点から点群を構成する点までの距離、θは原点を含む水平面における点群を構成する点に対する水平角、φは原点から点群を構成する点に対する仰角である。 In Figure 73 and elsewhere, information marked with (x, y, z) indicates that the Cartesian coordinate system is used, and information marked with (r, θ, φ) indicates that the polar coordinate system is used. Here, r is the distance from the origin to a point that makes up the point cloud, θ is the horizontal angle at which the point that makes up the point cloud is located on a horizontal plane including the origin, and φ is the elevation angle at which the point that makes up the point cloud is located from the origin.
シフト部13701は、直交座標系の位置情報をシフトすることで直交座標系のシフト後位置情報を生成する。符号化部13702は、シフト後位置情報を符号化することでビットストリームを生成する。 The shifting unit 13701 generates shifted position information in the Cartesian coordinate system by shifting the position information in the Cartesian coordinate system. The encoding unit 13702 generates a bitstream by encoding the shifted position information.
図74は、入力される位置情報が直交座標系であり、直交座標系の位置情報が符号化される場合のシフト処理の例を示す図である。図74に示すように、入力される位置情報が直交座標系である場合には、シフト部13701は、位置情報に符号化処理が行われる前に、点群の座標(位置情報)をシフトする。例えば、シフト部13701は、位置情報の符号化において、直交座標系を用いて符号化が行われる場合には、点群のバウンディングボックスの座標(例えば左下隅の座標)が原点となるように点群の座標をシフトする(減算する)。また、シフト部13701は、点群のバウンディングボックスの座標の中心が原点となるように点群の座標をシフトしてもよい。 Figure 74 is a diagram showing an example of shift processing when the input position information is in a Cartesian coordinate system and the position information in the Cartesian coordinate system is encoded. As shown in Figure 74, when the input position information is in a Cartesian coordinate system, the shift unit 13701 shifts the coordinates of the point cloud (position information) before encoding the position information. For example, when encoding the position information using a Cartesian coordinate system, the shift unit 13701 shifts (subtracts) the coordinates of the point cloud so that the coordinates of the bounding box of the point cloud (e.g., the coordinates of the lower left corner) become the origin. The shift unit 13701 may also shift the coordinates of the point cloud so that the center of the coordinates of the bounding box of the point cloud becomes the origin.
なお、図74に示す例は、任意の2軸の図であり、シフトはこれに限られない。すなわち、シフトとは、少なくとも1軸に沿った位置の移動である。 Note that the example shown in Figure 74 is a diagram of two arbitrary axes, and shifting is not limited to this. In other words, shifting refers to movement of position along at least one axis.
図75は、入力される位置情報が直交座標系であり、極座標系の位置情報が符号化される場合のシフト処理の例を示す図である。例えば、図75に示す例は、直交座標系の位置情報が極座標系の位置情報に変換され、極座標系の位置情報が符号化される場合である。極座標系を用いて符号化する場合には、シフト部13701は、点群を取得するLiDARなどのセンサの位置が原点となるように点群の直交座標系の座標をシフトする。変換部(図73には図示されず)は、直交座標系の位置情報を極座標系の位置情報に変換する。変換部はシフト部13701と符号化部13702との間に配置される。 Figure 75 is a diagram showing an example of shift processing when input position information is in a Cartesian coordinate system and position information in a polar coordinate system is encoded. For example, the example shown in Figure 75 is a case where position information in a Cartesian coordinate system is converted to position information in a polar coordinate system and the position information in the polar coordinate system is encoded. When encoding using a polar coordinate system, the shift unit 13701 shifts the coordinates of the Cartesian coordinate system of the point cloud so that the position of a sensor such as LiDAR that acquires the point cloud becomes the origin. A conversion unit (not shown in Figure 73) converts the position information in the Cartesian coordinate system into position information in a polar coordinate system. The conversion unit is arranged between the shift unit 13701 and the encoding unit 13702.
なお、シフト後の座標は、上記の例に限らず、符号化効率を向上できる座標に設定されてもよい。例えば、位置情報をシフトさせることで位置情報の値、つまり絶対値を小さくすることで符号化量を減らすことができる。また、別の例では、位置情報をシフトさせることで、すでに符号化された位置情報と近い値を持つ、位置情報とすることができ、符号化効率を向上させることができる。また、符号化部13702は、シフトした座標に関する座標情報(例えばシフト前の原点を示す情報、又はシフト量を示す情報)をメタデータとしてビットストリームに含めてもよい。なお、シフト量は、座標系における各成分に共通の一つの値で示されてもよいし、成分ごとの値で示されてもよく、成分ごとの値は同じであってもよいし、互いに異なってもよい。また、メタデータは符号化されてもよいし、されなくてもよい。 Note that the shifted coordinates are not limited to the above example, and may be set to coordinates that can improve encoding efficiency. For example, by shifting the position information, the value of the position information, i.e., the absolute value, can be reduced, thereby reducing the amount of encoding. In another example, by shifting the position information, it is possible to obtain position information with a value close to that of already encoded position information, thereby improving encoding efficiency. Furthermore, the encoding unit 13702 may include coordinate information regarding the shifted coordinates (for example, information indicating the origin before the shift, or information indicating the shift amount) in the bitstream as metadata. Note that the shift amount may be represented by a single value common to each component in the coordinate system, or may be represented by a value for each component, and the values for each component may be the same or different. Furthermore, the metadata may or may not be encoded.
図76は、入力される三次元点群の位置情報の座標系が極座標系である場合の位置情報符号化部13710の構成を示すブロック図である。位置情報符号化部13710は、三次元データ符号化装置に含まれ、符号化部13711を備える。 Figure 76 is a block diagram showing the configuration of the position information encoding unit 13710 when the coordinate system of the position information of the input three-dimensional point cloud is a polar coordinate system. The position information encoding unit 13710 is included in a three-dimensional data encoding device and has an encoding unit 13711.
図77は、入力される位置情報が極座標系であり、極座標系の位置情報が符号化される場合の処理の例を示す図である。図77に示すように、入力される点群の位置情報が極座標系であり、点群を取得するLiDARなどのセンサの位置が原点であるため、位置情報符号化部13710は、位置情報の座標をシフトしない。なお、点群を取得するLiDARなどのセンサの位置が原点でなくてもよい。センサの位置が原点に一致しない場合、極座標系の位置情報は、例えばセンサの位置が原点に一致するようにシフトされてもよい。ただし、極座標系の位置情報のシフトは、この例に限らない。符号化部13711は、入力された極座標系の位置情報をそのまま符号化することでビットストリームを生成する。 Figure 77 is a diagram showing an example of processing when the input position information is in a polar coordinate system and the position information in the polar coordinate system is encoded. As shown in Figure 77, the position information of the input point cloud is in a polar coordinate system and the position of the sensor, such as LiDAR, that acquires the point cloud is the origin, so the position information encoding unit 13710 does not shift the coordinates of the position information. Note that the position of the sensor, such as LiDAR, that acquires the point cloud does not have to be the origin. If the position of the sensor does not coincide with the origin, the position information in the polar coordinate system may be shifted, for example, so that the position of the sensor coincides with the origin. However, the shifting of the position information in the polar coordinate system is not limited to this example. The encoding unit 13711 generates a bitstream by encoding the input position information in the polar coordinate system as is.
また、符号化部13711は、センサの位置の座標を示すセンサ位置情報を、メタデータとしてビットストリームに含めてもよい。 The encoding unit 13711 may also include sensor position information indicating the coordinates of the sensor position in the bitstream as metadata.
また、三次元データ符号化装置は、図73に示す位置情報符号化部13700と、図76に示す位置情報符号化部13710との両方を備えてもよいし、一方を備えてもよい。 In addition, the three-dimensional data encoding device may be equipped with both the position information encoding unit 13700 shown in Figure 73 and the position information encoding unit 13710 shown in Figure 76, or may be equipped with only one of them.
次に、上記で生成されたビットストリームを復号する復号処理について説明する。図78は、直交座標系の位置情報が符号化されることで生成されたビットストリームを復号する位置情報復号部13720の構成を示すブロック図である。言い換えると、位置情報復号部13720は、直交座標系の位置情報を出力する。位置情報復号部13720は、三次元データ復号装置に含まれ、復号部13721と、逆シフト部13722とを備える。なお、図78に示す例は、直交座標系のシフト後の位置情報が符号化されることで生成されたビットストリームを復号し、得られた位置情報を座標情報に基づく逆シフト処理を行うことで直交座標系の位置情報が復元される場合である。 Next, we will explain the decoding process for decoding the bit stream generated above. Figure 78 is a block diagram showing the configuration of a position information decoding unit 13720 that decodes a bit stream generated by encoding position information in a Cartesian coordinate system. In other words, the position information decoding unit 13720 outputs position information in a Cartesian coordinate system. The position information decoding unit 13720 is included in a three-dimensional data decoding device, and comprises a decoding unit 13721 and an inverse shift unit 13722. Note that the example shown in Figure 78 is a case where the position information in the Cartesian coordinate system is restored by decoding a bit stream generated by encoding position information after shifting in a Cartesian coordinate system, and performing an inverse shift process on the obtained position information based on the coordinate information.
復号部13721は、ビットストリームを復号することで直交座標系のシフト後位置情報を取得する。また、復号部13721は、ビットストリームからメタデータである座標情報(例えばシフト前の原点を示す情報、又はシフト量を示す情報)を取得する。 The decoding unit 13721 obtains post-shift position information in the Cartesian coordinate system by decoding the bitstream. The decoding unit 13721 also obtains coordinate information, which is metadata, from the bitstream (for example, information indicating the origin before the shift, or information indicating the shift amount).
逆シフト部13722は、復号後のシフト後位置情報を、メタデータである座標情報に示されるシフト情報のシフト量で逆シフト(加算)する。なお、当該シフト量はシフト前の原点座標とシフト後の原点座標との差分に基づき求められた値である。これにより、三次元データ復号装置において三次元データ符号化装置への入力された点群を復元することが可能となる。 The inverse shift unit 13722 inversely shifts (adds) the decoded shifted position information by the shift amount indicated in the shift information, which is metadata. Note that this shift amount is a value calculated based on the difference between the origin coordinates before the shift and the origin coordinates after the shift. This makes it possible for the three-dimensional data decoding device to restore the point cloud input to the three-dimensional data encoding device.
図79は、極座標系の位置情報が符号化されることで生成されたビットストリームを復号する位置情報復号部13730の構成を示すブロック図である。言い換えると、位置情報復号部13730は、極座標系の位置情報を出力する。位置情報復号部13730は、三次元データ復号装置に含まれ、復号部13731を備える。 Figure 79 is a block diagram showing the configuration of a position information decoding unit 13730 that decodes a bit stream generated by encoding position information in a polar coordinate system. In other words, the position information decoding unit 13730 outputs position information in a polar coordinate system. The position information decoding unit 13730 is included in a three-dimensional data decoding device and has a decoding unit 13731.
復号部13731は、ビットストリームを復号することで極座標系の位置情報を取得する。また、復号部13731は、ビットストリームからメタデータであるセンサの位置の座標を示すセンサ位置情報を取得する。位置情報復号部13730は、復号した極座標系の位置情報をシフトせずそのまま出力する。 The decoding unit 13731 obtains position information in the polar coordinate system by decoding the bitstream. The decoding unit 13731 also obtains sensor position information, which is metadata indicating the coordinates of the sensor's position, from the bitstream. The position information decoding unit 13730 outputs the decoded position information in the polar coordinate system as is without shifting it.
なお、極座標系を(r、θ、φ)とは異なる、別のパラメータで示してもよい。例えば、(r、φ、ι)が用いられてもよい。ここで、rは点をx-y平面に投影した際の半径であり、ιは高さ又はθを表現するインデックスである。 Note that the polar coordinate system may be expressed using parameters other than (r, θ, φ). For example, (r, φ, ι) may be used. Here, r is the radius when the point is projected onto the x-y plane, and ι is an index representing the height or θ.
また、三次元データ復号装置は、図78に示す位置情報復号部13720と、図79に示す位置情報復号部13730との両方を備えてもよいし、一方を備えてもよい。 In addition, the three-dimensional data decoding device may be equipped with both the position information decoding unit 13720 shown in FIG. 78 and the position information decoding unit 13730 shown in FIG. 79, or may be equipped with only one of them.
以下、上記の構成の変形例を説明する。例えば、図73に示す構成と、図76に示す構成とにおいて、シフト部13701を共通化してもよい。この場合、入力された位置情報が極座標系である場合には、三次元データ符号化装置は、シフト部13701のシフト処理におけるシフト量を0に設定する。これにより実装コストを削減することが可能となる。 Below, we will explain a modified example of the above configuration. For example, the shift unit 13701 may be shared between the configuration shown in Figure 73 and the configuration shown in Figure 76. In this case, if the input position information is in a polar coordinate system, the three-dimensional data encoding device sets the shift amount in the shift processing of the shift unit 13701 to 0. This makes it possible to reduce implementation costs.
また、三次元データ符号化装置は、入力された位置情報の座標系が直交座標系であるか、極座標系であるかに基づき、シフト処理を行うか否かを切り替えてもよい。図80は、この場合の位置情報符号化部13740の構成を示すブロック図である。位置情報符号化部13740は、三次元データ符号化装置に含まれ、切替部13741と、シフト部13742と、符号化部13743と備える。 The three-dimensional data encoding device may also switch whether to perform shift processing based on whether the coordinate system of the input position information is a Cartesian coordinate system or a polar coordinate system. Figure 80 is a block diagram showing the configuration of the position information encoding unit 13740 in this case. The position information encoding unit 13740 is included in the three-dimensional data encoding device, and comprises a switching unit 13741, a shift unit 13742, and an encoding unit 13743.
切替部13741は、入力された位置情報が直交座標系の位置情報である場合は当該位置情報をシフト部13742に出力する。また、切替部13741は、入力された位置情報が極座標系の位置情報である場合は当該位置情報を符号化部13743に出力する。 If the input position information is position information in a Cartesian coordinate system, the switching unit 13741 outputs the position information to the shifting unit 13742. Furthermore, if the input position information is position information in a polar coordinate system, the switching unit 13741 outputs the position information to the encoding unit 13743.
シフト部13742は、直交座標系の位置情報をシフトすることで直交座標系のシフト後位置情報を生成する。符号化部13743は、シフト後位置情報を符号化することでビットストリームを生成する。また、符号化部13743は、極座標系の位置情報を符号化することでビットストリームを生成する。また、符号化部13743は、センサ位置情報をビットストリームに格納する。なお、符号化部13743は、位置情報が極座標系で表される場合にのみ、センサ位置情報をビットストリームに格納してもよい。 The shifting unit 13742 generates shifted position information in a Cartesian coordinate system by shifting the position information in the Cartesian coordinate system. The encoding unit 13743 generates a bit stream by encoding the shifted position information. The encoding unit 13743 also generates a bit stream by encoding the position information in a polar coordinate system. The encoding unit 13743 also stores the sensor position information in the bit stream. Note that the encoding unit 13743 may store the sensor position information in the bit stream only when the position information is expressed in a polar coordinate system.
この構成により、位置情報符号化部13740は、位置情報が極座標系の場合には、シフト処理を行わないことにより処理量を削減できる。 With this configuration, the position information encoding unit 13740 can reduce the amount of processing by not performing shift processing when the position information is in a polar coordinate system.
また、図78に示す構成と、図79に示す構成とを備え、各復号部から直交座標系または極座標系のシフト後位置情報が逆シフト部13722に出力される構成にしてもよい。その場合、逆シフト部13722は、出力される位置情報が極座標系である場合には、センサ位置情報がいかなる値であっても、シフト量を0に設定する。つまり、逆シフト部13722はシフトを行わない。あるいは、三次元データ復号装置は、センサ位置情報が0でない場合は、ビットストリームが規格違反のストリームであると判断してもよい。これにより実装コストを削減することが可能となる。 Alternatively, the configuration may include the configuration shown in Figure 78 and the configuration shown in Figure 79, and each decoding unit may output shifted position information in a Cartesian coordinate system or a polar coordinate system to the inverse shift unit 13722. In this case, if the output position information is in a polar coordinate system, the inverse shift unit 13722 sets the shift amount to 0 regardless of the value of the sensor position information. In other words, the inverse shift unit 13722 does not perform a shift. Alternatively, the three-dimensional data decoding device may determine that the bit stream is a non-compliant stream if the sensor position information is not 0. This makes it possible to reduce implementation costs.
また、三次元データ復号装置は、出力する位置情報の座標系が直交座標系であるか、極座標系であるかに基づき、逆シフト処理を行うか否かを切り替えてもよい。図81は、この場合の位置情報復号部13750の構成を示すブロック図である。位置情報復号部13750は、三次元データ復号装置に含まれ、復号部13751と、逆シフト部13752と、切替部13753と備える。 The three-dimensional data decoding device may also switch whether to perform reverse shift processing based on whether the coordinate system of the output position information is a Cartesian coordinate system or a polar coordinate system. Figure 81 is a block diagram showing the configuration of the position information decoding unit 13750 in this case. The position information decoding unit 13750 is included in the three-dimensional data decoding device, and comprises a decoding unit 13751, a reverse shift unit 13752, and a switching unit 13753.
復号部13751は、ビットストリームを復号することで、直交座標系のシフト後位置情報、又は、極座標系の位置情報を生成する。また、復号部13751は、極座標系の位置情報を復号した場合にはビットストリームからセンサ位置情報を取得する。 The decoding unit 13751 decodes the bit stream to generate shifted position information in a Cartesian coordinate system or position information in a polar coordinate system. Furthermore, when the decoding unit 13751 decodes position information in a polar coordinate system, it obtains sensor position information from the bit stream.
ここで、三次元データ符号化装置で符号化された位置情報の座標系を示す情報として、復号部13751は、実施の形態6で示したgps_alt_coordinates_flag、gps_coordinate_trans_enabled_flagを用いてもよい。 Here, the decoding unit 13751 may use the gps_alt_coordinates_flag and gps_coordinate_trans_enabled_flag shown in embodiment 6 as information indicating the coordinate system of the position information encoded by the three-dimensional data encoding device.
gps_alt_coordinates_flagは、各点の符号化処理又は復号処理において極座標などの直交座標と別の座標系を用いるか否かを示す情報である。例えば、gps_alt_coordinates_flag=1は、GPSを参照する位置情報の符号化処理又は復号処理に極座標系が使用されることを示し、gps_alt_coordinates_flag=0は、GPSを参照する位置情報の符号化処理又は復号処理において、直交座標系が使用されることを示す。 gps_alt_coordinates_flag is information that indicates whether a coordinate system other than Cartesian coordinates, such as polar coordinates, is used in the encoding or decoding process of each point. For example, gps_alt_coordinates_flag = 1 indicates that a polar coordinate system is used in the encoding or decoding process of location information that references GPS, and gps_alt_coordinates_flag = 0 indicates that a Cartesian coordinate system is used in the encoding or decoding process of location information that references GPS.
gps_coordinate_trans_enabled_flagは、復号において極座標系の位置情報を出力するか、直交座標系の位置情報を出力するかを示す。例えば、gps_alt_coordinates_flag=1は、GPSを参照する位置情報の座標変換が実施されることを示し、gps_alt_coordinates_flag=0は、GPSを参照する位置情報の座標変換が実施されないことを示す。 gps_coordinate_trans_enabled_flag indicates whether to output location information in the polar coordinate system or the Cartesian coordinate system during decoding. For example, gps_alt_coordinates_flag = 1 indicates that coordinate transformation of location information referencing GPS is performed, and gps_alt_coordinates_flag = 0 indicates that coordinate transformation of location information referencing GPS is not performed.
これら情報に基づいて、復号部13751において復号処理が行われ、直交座標系のシフト後位置情報または極座標系の位置情報が出力される。 Based on this information, decoding processing is performed in the decoding unit 13751, and shifted position information in the Cartesian coordinate system or position information in the polar coordinate system is output.
逆シフト部13752は、直交座標系のシフト後位置情報を逆シフトすることで直交座標系の位置情報を生成する。 The inverse shift unit 13752 generates position information in the Cartesian coordinate system by inversely shifting the shifted position information in the Cartesian coordinate system.
切替部13753は、復号された位置情報が直交座標系の位置情報である場合は当該位置情報を出力し、復号された位置情報が極座標系の位置情報である場合は当該位置情報を出力する。また、切替部13753は、gps_coordinate_trans_enabled_flagの情報に基づき、切替を行ってもよい。 The switching unit 13753 outputs the decoded location information if it is location information in a Cartesian coordinate system, and outputs the location information if it is location information in a polar coordinate system. The switching unit 13753 may also perform switching based on the information in the gps_coordinate_trans_enabled_flag.
復号部13751および切替部13753の上述の動作例は、gps_alt_coordinates_flag、gps_coordinate_trans_enabled_flagに基づいたものであったが、復号部13751および切替部13753は、他の情報に基づいて動作してもよい。例えば、ビットストリームに含められる、入力の座標系、座標系の変換の有無、および出力の座標系の組み合わせを示す情報(例えばモード情報)に基づいて、復号部13751および切替部13753は動作してもよい。 The above-described operation examples of the decoding unit 13751 and the switching unit 13753 were based on the gps_alt_coordinates_flag and the gps_coordinate_trans_enabled_flag, but the decoding unit 13751 and the switching unit 13753 may operate based on other information. For example, the decoding unit 13751 and the switching unit 13753 may operate based on information (e.g., mode information) included in the bitstream that indicates the combination of the input coordinate system, whether or not the coordinate system is converted, and the output coordinate system.
この構成により、位置情報復号部13750は、位置情報が極座標系の場合には、逆シフト処理を行わないことにより処理量を削減できる。 With this configuration, the location information decoding unit 13750 can reduce the amount of processing by not performing reverse shift processing when the location information is in a polar coordinate system.
なお、図80及び図81に示す例は、三次元データ符号化装置に入力される位置情報の座標系と三次元データ復号装置から出力される位置情報の座標系とが一致している場合の例である。例えば、三次元データ符号化装置に入力される位置情報の座標系(例えば図80に示す位置情報)が直交座標系である場合には三次元データ復号装置から出力される座標系(図81に示すの位置情報)も直交座標系である。また、三次元データ符号化装置に入力される位置情報の座標系が極座標系である場合には三次元データ復号装置から出力される座標系も極座標系である。 Note that the examples shown in Figures 80 and 81 are examples where the coordinate system of the position information input to the three-dimensional data encoding device is the same as the coordinate system of the position information output from the three-dimensional data decoding device. For example, if the coordinate system of the position information input to the three-dimensional data encoding device (for example, the position information shown in Figure 80) is a Cartesian coordinate system, then the coordinate system output from the three-dimensional data decoding device (the position information shown in Figure 81) is also a Cartesian coordinate system. Furthermore, if the coordinate system of the position information input to the three-dimensional data encoding device is a polar coordinate system, then the coordinate system output from the three-dimensional data decoding device is also a polar coordinate system.
これに対して、三次元データ復号装置は、復号された位置情報が極座標系である場合に、当該位置情報を直交座標系の位置情報に変換し、変換後の直交座標系の位置情報を出してもよい。図82は、この場合の位置情報復号部13760の構成を示すブロック図である。位置情報復号部13760は、三次元データ復号装置に含まれ、復号部13761と、座標変換部13762と、シフト部13763と、切替部13764とを備える。なお、シフト部13763は、符号化側のシフトに応じた逆シフトに限らず、任意のシフトを行う。また、切替部13764から出力される位置情報の座標系は、符号化側から指定されたものに限らず、任意の座標系である。任意のシフトおよび任意の座標系は、例えばユーザの指示又は設定によって求められる。 In contrast, when the decoded position information is in a polar coordinate system, the three-dimensional data decoding device may convert the position information into position information in a Cartesian coordinate system and output the converted position information in the Cartesian coordinate system. Figure 82 is a block diagram showing the configuration of the position information decoding unit 13760 in this case. The position information decoding unit 13760 is included in the three-dimensional data decoding device and comprises a decoding unit 13761, a coordinate conversion unit 13762, a shifting unit 13763, and a switching unit 13764. Note that the shifting unit 13763 performs any shift, not just an inverse shift corresponding to the shift on the encoding side. Furthermore, the coordinate system of the position information output from the switching unit 13764 is not limited to that specified by the encoding side, but may be any coordinate system. The arbitrary shift and arbitrary coordinate system can be determined, for example, by user instructions or settings.
復号部13761は、例えば、図81に示す位置情報復号部13750を含む。復号部13761は、ビットストリームを復号することで、直交座標系の位置情報、又は、極座標系の位置情報を生成する。また、復号部13761は、極座標系の位置情報を復号した場合にはビットストリームからセンサ位置情報を取得する。 The decoding unit 13761 includes, for example, the position information decoding unit 13750 shown in FIG. 81. The decoding unit 13761 generates position information in a Cartesian coordinate system or position information in a polar coordinate system by decoding the bit stream. Furthermore, when the decoding unit 13761 decodes position information in a polar coordinate system, it obtains sensor position information from the bit stream.
座標変換部13762は、極座標系の位置情報を直交座標系の位置情報に変換する。シフト部13763は、座標変換部13762で得られた直交座標系の位置情報をセンサ位置情報を用いてシフトする。例えば、シフト部13763は、センサ位置情報で示されるセンサの位置(座標)を、点群の位置情報に加算する。 The coordinate conversion unit 13762 converts the position information in the polar coordinate system into position information in the Cartesian coordinate system. The shift unit 13763 shifts the position information in the Cartesian coordinate system obtained by the coordinate conversion unit 13762 using the sensor position information. For example, the shift unit 13763 adds the position (coordinates) of the sensor indicated by the sensor position information to the position information of the point cloud.
切替部13764は、復号された位置情報が直交座標系の位置情報である場合は当該位置情報を出力し、復号された位置情報が極座標系の位置情報であり、かつ、座標変換を行わない場合は、当該位置情報を出力し、復号された位置情報が極座標系の位置情報であり、かつ、座標変換を行う場合は、シフト部13763で得られたシフト後の極座標系の位置情報を出力する。 The switching unit 13764 outputs the position information if the decoded position information is position information in a Cartesian coordinate system, outputs the position information if the decoded position information is position information in a polar coordinate system and no coordinate conversion is performed, and outputs the shifted polar coordinate system position information obtained by the shift unit 13763 if the decoded position information is position information in a polar coordinate system and coordinate conversion is performed.
上記構成を用いて符号化及び復号を行うことにより、三次元データ符号化装置への入力される点群の位置情報の座標系が直交座標系又は極座標系である場合と、三次元データ復号装置からの出力される点群の位置情報の座標系が直交座標系又は極座標系である場合との任意の組み合わせに対応可能な三次元データ符号化方法及び三次元データ復号方法を実現できる。 By performing encoding and decoding using the above configuration, it is possible to realize a three-dimensional data encoding method and a three-dimensional data decoding method that can handle any combination of cases where the coordinate system of the position information of the point cloud input to the three-dimensional data encoding device is a Cartesian coordinate system or a polar coordinate system, and cases where the coordinate system of the position information of the point cloud output from the three-dimensional data decoding device is a Cartesian coordinate system or a polar coordinate system.
図83は、三次元データ復号処理のフローチャートである。例えば、図81に示される位置情報復号部13750における三次元データ復号処理のフローチャートである。まず、三次元データ復号装置は、ビットストリームから位置情報を復号する(S13701)。次に、三次元データ復号装置は、位置情報の復号を極座標系で行うか、直交座標系で行うかを判定する(S13702)。つまり、三次元データ復号装置は、ビットストリームが極座標系の位置情報を符号化することで生成されたものか、直交座標系の位置情報を符号化することで生成されたものか、を判定する。例えば、三次元データ復号装置は、ビットストリームに含まれるgps_alt_coordinates_flagに基づき、これらの判定を行う。 Figure 83 is a flowchart of the three-dimensional data decoding process. For example, this is a flowchart of the three-dimensional data decoding process in the position information decoding unit 13750 shown in Figure 81. First, the three-dimensional data decoding device decodes position information from the bit stream (S13701). Next, the three-dimensional data decoding device determines whether the decoding of the position information will be performed in a polar coordinate system or a Cartesian coordinate system (S13702). In other words, the three-dimensional data decoding device determines whether the bit stream was generated by encoding position information in a polar coordinate system or by encoding position information in a Cartesian coordinate system. For example, the three-dimensional data decoding device makes this determination based on the gps_alt_coordinates_flag included in the bit stream.
三次元データ復号装置は、位置情報の復号を極座標系で行うと判定した場合(S13702でYes)、極座標系で位置情報を復号する(S13703)。次に、三次元データ復号装置は、極座標系の位置情報を出力するか直交座標系の位置情報を出力するかを判定する(S13705)。例えば、この判定は、三次元データ復号装置の外部より入力されたgps_coordinate_trans_enabled_flagに基づき行われてもよいし、ビットストリームに含まれる情報に基づき行われてもよい。 If the three-dimensional data decoding device determines that the decoding of the position information should be performed in the polar coordinate system (Yes in S13702), it decodes the position information in the polar coordinate system (S13703). Next, the three-dimensional data decoding device determines whether to output position information in the polar coordinate system or in the Cartesian coordinate system (S13705). For example, this determination may be made based on the gps_coordinate_trans_enabled_flag input from outside the three-dimensional data decoding device, or may be made based on information contained in the bitstream.
三次元データ復号装置は、極座標系の位置情報を出力する場合(S13705でYes)、ステップS13703で得られた極座標系の位置情報を出力する(S13708)。 If the three-dimensional data decoding device outputs position information in the polar coordinate system (Yes in S13705), it outputs the position information in the polar coordinate system obtained in step S13703 (S13708).
一方、三次元データ復号装置は、直交座標系の位置情報を出力する場合(S13705でNo)、ステップS13703で得られた極座標系の位置情報を直交座標系の位置情報に変換する(S13706)。次に、三次元データ復号装置は、変換後の直交座標系の位置情報を、シフト量を用いて逆シフトし(S13707)、シフト後の直交座標系の位置情報を出力する(S13708)。 On the other hand, if the three-dimensional data decoding device outputs position information in the Cartesian coordinate system (No in S13705), it converts the position information in the polar coordinate system obtained in step S13703 into position information in the Cartesian coordinate system (S13706). Next, the three-dimensional data decoding device inversely shifts the converted position information in the Cartesian coordinate system using the shift amount (S13707), and outputs the shifted position information in the Cartesian coordinate system (S13708).
また、ステップS13702で、三次元データ復号装置は、位置情報の復号を直交座標系で行うと判定した場合(S13702でNo)、直交座標系で位置情報を復号する(S13704)。次に、三次元データ復号装置は、得られた直交座標系の位置情報を、座標情報を用いてシフトし(S13707)、シフト後の直交座標系の位置情報を出力する(S13708)。 Also, in step S13702, if the three-dimensional data decoding device determines that the decoding of the position information is to be performed in a Cartesian coordinate system (No in S13702), it decodes the position information in the Cartesian coordinate system (S13704). Next, the three-dimensional data decoding device shifts the obtained position information in the Cartesian coordinate system using the coordinate information (S13707), and outputs the position information in the Cartesian coordinate system after the shift (S13708).
次に、メタデータの例を説明する。図84及び図85は、シフト情報(上述したセンサ位置座標又は座標情報(例えばシフト前の原点を示す情報、又はシフト量を示す情報))に関するシンタックスを示す図である。Next, an example of metadata will be described. Figures 84 and 85 are diagrams showing syntax related to shift information (the above-mentioned sensor position coordinates or coordinate information (e.g., information indicating the origin before the shift, or information indicating the shift amount)).
例えば、三次元データ符号化装置へ入力される点群の位置情報、又は、三次元データ復号装置から出力される点群の位置情報の座標系が直交座標系である場合には、ビットストリームはシフト情報を含む。また、三次元データ符号化装置へ入力される点群、又は、三次元データ復号装置から出力される点群の座標系が極座標系である場合には、ビットストリームはシフト情報を含まない。これにより、情報量を削減できるので、符号化効率を向上することが可能となる。 For example, if the coordinate system of the point cloud position information input to the three-dimensional data encoding device or the point cloud position information output from the three-dimensional data decoding device is a Cartesian coordinate system, the bit stream includes shift information. Also, if the coordinate system of the point cloud input to the three-dimensional data encoding device or the point cloud output from the three-dimensional data decoding device is a polar coordinate system, the bit stream does not include shift information. This allows the amount of information to be reduced, thereby improving encoding efficiency.
図84は、GPS(geometry_parameter_set)のシンタックス例を示す図である。ここで、点群の位置情報の符号化データは分割データ単位である複数のGDU(geometry data unit)に分割されてビットストリームに格納される。なお、分割データ単位とは、例えば、スライス、タイル、又は、その他のサブ空間である。GPS(位置情報パラメータセット:geometry parameter set)は、複数のGDUに共通のパラメータセット(制御情報又はヘッダ)である。 Figure 84 shows an example of the syntax of GPS (geometry_parameter_set). Here, the coded data of the point cloud's position information is divided into multiple GDUs (geometry data units), which are divided data units, and stored in the bitstream. Note that a divided data unit is, for example, a slice, tile, or other subspace. GPS (geometry parameter set) is a parameter set (control information or header) common to multiple GDUs.
図84に示すように、GPSは、gps_alt_coordinates_flagと、gps_coordinate_trans_enabled_flagと、シフト情報(origin_x、origin_y、origin_z)とを含む。 As shown in FIG. 84, GPS includes gps_alt_coordinates_flag, gps_coordinate_trans_enabled_flag, and shift information (origin_x, origin_y, origin_z).
シフト情報は、例えば、上述したセンサ位置座標又は座標情報(例えばシフト前の原点を示す情報、又はシフト量を示す情報)であり、例えば、三次元データ復号装置において位置情報をシフトする場合の原点のシフト先の座標(つまりシフト量)を示す。なお、図84は、直交座標系におけるシフト量を示すが、シフト量は極座標系で表されてもよい。 The shift information is, for example, the sensor position coordinates or coordinate information described above (for example, information indicating the origin before the shift, or information indicating the shift amount), and indicates, for example, the coordinates to which the origin is shifted (i.e., the shift amount) when shifting position information in a three-dimensional data decoding device. Note that while Figure 84 shows the shift amount in a Cartesian coordinate system, the shift amount may also be expressed in a polar coordinate system.
gps_alt_coordinates_flagは、符号化された位置情報が極座標系であるか直交座標系であるかを示す。例えば、符号化された位置情報が極座標系である場合、gps_alt_coordinates_flagは値1に設定され、符号化された位置情報が直交座標系である場合、gps_alt_coordinates_flagは値0に設定される。 gps_alt_coordinates_flag indicates whether the encoded location information is in polar coordinates or Cartesian coordinates. For example, if the encoded location information is in polar coordinates, gps_alt_coordinates_flag is set to the value 1, and if the encoded location information is in Cartesian coordinates, gps_alt_coordinates_flag is set to the value 0.
gps_coordinate_trans_enabled_flagは、例えば、符号化された位置情報が極座標系である場合にGPSに含まれ、符号化された位置情報が直交座標系である場合にGPSに含まれない。符号化された位置情報が直交座標系であって、gps_alt_coordinates_flagの値が0の場合、gps_coordinate_trans_enabled_flagは0であると推定される。すなわち、gps_coordinate_trans_enabled_flagが符号化されていない場合、gps_coordinate_trans_enabled_flagの値は0であると推定される。gps_coordinate_trans_enabled_flagは、三次元データ復号装置において復号した極座標系の位置情報を直交座標系に変換する座標変換を行うか否かを示す。例えば、座標変換を行う場合には、gps_coordinate_trans_enabled_flagは値1に設定され、座標変換を行わない場合には、gps_coordinate_trans_enabled_flagは値0に設定される。 For example, gps_coordinate_trans_enabled_flag is included in GPS when the encoded location information is in a polar coordinate system, and is not included in GPS when the encoded location information is in a Cartesian coordinate system. If the encoded location information is in a Cartesian coordinate system and the value of gps_alt_coordinates_flag is 0, gps_coordinate_trans_enabled_flag is presumed to be 0. In other words, if gps_coordinate_trans_enabled_flag is not encoded, the value of gps_coordinate_trans_enabled_flag is presumed to be 0. The gps_coordinate_trans_enabled_flag indicates whether or not the 3D data decoding device performs coordinate transformation to convert the decoded position information from the polar coordinate system into the Cartesian coordinate system. For example, if coordinate transformation is performed, the gps_coordinate_trans_enabled_flag is set to a value of 1, and if coordinate transformation is not performed, the gps_coordinate_trans_enabled_flag is set to a value of 0.
例えば、GPSは、符号化された位置情報が極座標系であり、かつ、座標変換が行われない場合(つまり、三次元データ復号装置において極座標系の位置情報が出力される場合)には、シフト情報(origin_x、origin_y、origin_z)を含まず、それ以外の場合にはシフト情報を含む。つまり、GPSは、符号化された位置情報が直交座標系である場合にシフト情報を含む。また、GPSは、符号化された位置情報が極座標系であり、かつ、座標変換が行われる場合にシフト情報を含む。つまり、GPSは、三次元データ復号装置において直交座標系の位置情報が出力される場合には、シフト情報を含む。 For example, GPS does not include shift information (origin_x, origin_y, origin_z) when the encoded position information is in a polar coordinate system and coordinate conversion is not performed (i.e., when the three-dimensional data decoding device outputs position information in a polar coordinate system), but includes shift information in other cases. In other words, GPS includes shift information when the encoded position information is in a Cartesian coordinate system. Also, GPS includes shift information when the encoded position information is in a polar coordinate system and coordinate conversion is performed. In other words, GPS includes shift information when the three-dimensional data decoding device outputs position information in a Cartesian coordinate system.
図85は、GDUヘッダ(geometry_dataunit_set)のシンタックス例を示す図である。GDUヘッダは、GDU毎のヘッダ(制御情報)である。GDUヘッダは、シフト情報(origin_x、origin_y、origin_z)を含み、符号化される。 Figure 85 shows an example of the syntax of the GDU header (geometry_dataunit_set). The GDU header is the header (control information) for each GDU. The GDU header contains shift information (origin_x, origin_y, origin_z) and is encoded.
例えば、GDUヘッダは、符号化された位置情報が極座標系であり、かつ、座標変換が行われない場合(つまり、三次元データ復号装置において極座標系の位置情報が出力される場合)には、シフト情報(origin_x、origin_y、origin_z)を含まず、それ以外の場合にはシフト情報を含む。つまり、GDUヘッダは、符号化された位置情報が直交座標系である場合にシフト情報を含む。また、GDUヘッダは、符号化された位置情報が極座標系であり、かつ、座標変換が行われる場合にシフト情報を含む。つまり、GDUヘッダは、三次元データ復号装置において直交座標系の位置情報が出力される場合には、シフト情報を含む。これにより、情報量を削減できるので、符号化効率を向上することが可能となる。 For example, the GDU header does not include shift information (origin_x, origin_y, origin_z) if the encoded position information is in a polar coordinate system and coordinate conversion is not performed (i.e., if the three-dimensional data decoding device outputs position information in a polar coordinate system), but includes shift information in other cases. In other words, the GDU header includes shift information if the encoded position information is in a Cartesian coordinate system. Also, the GDU header includes shift information if the encoded position information is in a polar coordinate system and coordinate conversion is performed. In other words, the GDU header includes shift information if the three-dimensional data decoding device outputs position information in a Cartesian coordinate system. This allows the amount of information to be reduced, thereby improving encoding efficiency.
なお、シフト情報は、GPS及びGDUヘッダの一方に含まれてもよいし、両方に含まれてもよい。なお、シフト情報がGPS及びGDUヘッダの両方に含まれ、それらの値が異なる場合は、三次元データ復号装置は、GDUヘッダに含まれるシフト情報を優先してもよい。また、三次元データ復号装置は、ビットストリームにシフト情報が含まれていない場合は、シフト情報で示される座標(x、y、z)の値を3軸とも0とみなしてもよい。 Note that the shift information may be included in either the GPS or GDU header, or in both. Note that if shift information is included in both the GPS and GDU headers and their values are different, the three-dimensional data decoding device may prioritize the shift information included in the GDU header. Furthermore, if shift information is not included in the bit stream, the three-dimensional data decoding device may consider the values of the coordinates (x, y, z) indicated by the shift information to be 0 on all three axes.
また、図82に示すように、三次元データ符号化装置へ入力される点群の位置情報、又は三次元データ復号装置で復号される点群の位置情報の座標系が極座標系の場合に、ビットストリームはシフト情報を含み、三次元データ復号装置は、復号した極座標系の位置情報を直交座標系の位置情報に座標変換し、直交座標系の位置情報をシフト情報を用いてシフトしてもよい。 Also, as shown in FIG. 82, when the coordinate system of the point cloud position information input to the three-dimensional data encoding device or the point cloud position information decoded by the three-dimensional data decoding device is a polar coordinate system, the bit stream includes shift information, and the three-dimensional data decoding device may convert the decoded polar coordinate system position information into position information in a Cartesian coordinate system, and shift the Cartesian coordinate system position information using the shift information.
このような座標変換を行う場合は、シフト情報は、上記のようにGPS又はGDUヘッダのいずれかに格納されてもよいし、GPS及びGDUヘッダ以外のシーケンス単位のパラメータセット(例えばSPS)に格納されてもよい。例えば、GDUを結合した後の位置情報のシフト量を示すため、シフト情報はGDUヘッダに格納され、GPSには格納されなくてもよい。また、シフト情報は、GPS及びGDUヘッダの両方に格納されてもよいし、GPS及びGDUヘッダの少なくとも一方と、GPS及びGDUヘッダ以外の1以上のパラメータセット又はヘッダに格納されてもよい。 When performing such coordinate transformation, the shift information may be stored in either the GPS or GDU header as described above, or in a sequence-based parameter set other than the GPS and GDU headers (e.g., SPS). For example, to indicate the amount of shift in the position information after combining GDUs, the shift information may be stored in the GDU header but not in the GPS. Furthermore, the shift information may be stored in both the GPS and GDU headers, or may be stored in at least one of the GPS and GDU headers and one or more parameter sets or headers other than the GPS and GDU headers.
なお、三次元データ符号化装置へ入力される点群の位置情報、及び、三次元データ復号装置からの出力される点群の位置情報の座標系に関わらず、ビットストリームは、常にシフト情報を含んでもよい。 In addition, regardless of the coordinate system of the point cloud position information input to the three-dimensional data encoding device and the point cloud position information output from the three-dimensional data decoding device, the bit stream may always include shift information.
以上のように、本実施の形態に係る三次元データ復号装置は、図86に示す処理を行う。三次元データ復号装置は、三次元点の位置情報が符号化された符号化位置情報を含むビットストリームを取得し(S13711)、符号化位置情報を復号することで位置情報を生成する(S13712)。三次元データ復号装置は、位置情報が直交座標系で表される場合(S13713でYes)、位置情報をシフトし(S13714)、位置情報が極座標系で表される場合(S13713でNo)、位置情報をシフトしない。 As described above, the three-dimensional data decoding device according to this embodiment performs the processing shown in FIG. 86. The three-dimensional data decoding device acquires a bit stream including encoded position information in which the position information of three-dimensional points is encoded (S13711), and generates position information by decoding the encoded position information (S13712). If the position information is expressed in a Cartesian coordinate system (Yes in S13713), the three-dimensional data decoding device shifts the position information (S13714), and if the position information is expressed in a polar coordinate system (No in S13713), it does not shift the position information.
これによれば、当該三次元データ復号装置は、符号化された位置情報が直交座標系であるか極座標系であるかに応じて、位置情報にシフト処理を行うか否かを切り替えることができる。ここで、位置情報が直交座標系である場合には、三次元データ符号化装置においてシフト処理を行ったうえで符号化を行うことで符号化効率を向上できる。当該三次元データ復号装置は、位置情報が直交座標系の場合にはシフト処理を行うことで、符号化効率が向上されたビットストリームを適切に復号できる。また、当該三次元データ復号装置は、位置情報が極座標系の場合にはシフト処理を行わないことで処理量を低減できる。また、位置情報が極座標系の場合にはシフト処理を行わないことで、極座標の位置情報から直交座標の位置情報に変換する際に生じる誤差を無くすことができる。その結果、誤差が無い三次元点の符号化が可能となる。 This allows the three-dimensional data decoding device to switch whether to perform shift processing on the position information depending on whether the encoded position information is in a Cartesian coordinate system or a polar coordinate system. Here, if the position information is in a Cartesian coordinate system, the three-dimensional data encoding device performs shift processing before encoding, thereby improving encoding efficiency. If the position information is in a Cartesian coordinate system, the three-dimensional data decoding device performs shift processing, thereby allowing the device to properly decode a bitstream with improved encoding efficiency. Furthermore, if the position information is in a polar coordinate system, the three-dimensional data decoding device does not perform shift processing, thereby reducing the amount of processing. Furthermore, if the position information is in a polar coordinate system, not performing shift processing can eliminate errors that occur when converting polar coordinate position information to Cartesian coordinate position information. As a result, three-dimensional points can be encoded without errors.
なお、三次元データ復号装置は、三次元点の位置情報をビットストリームから導出し、位置情報が直交座標で表される場合、位置情報によって示される第1位置をシフトし、シフトは、位置情報が極座標系で表される場合、実施されなくてもよい。 In addition, the three-dimensional data decoding device derives position information of the three-dimensional point from the bit stream, and if the position information is expressed in Cartesian coordinates, shifts the first position indicated by the position information, and the shift does not have to be performed if the position information is expressed in a polar coordinate system.
なお、三次元データ復号装置は、さらに、位置情報が、直交座標系で表されるか、極座標系で表されるかを、ビットストリームに含まれるシフト情報に基づき、判断してもよい。 In addition, the three-dimensional data decoding device may further determine whether the position information is represented in a Cartesian coordinate system or a polar coordinate system based on shift information contained in the bitstream.
なお、ビットストリーム(例えばシフト情報)は、位置情報が、極座標系で表されるか否かを示す第一フラグ情報(例えばgps_alt_coordinates_flag)と、極座標系で表される位置情報が、直交座標系で表される変換位置情報に変換されるか否かを示す第二フラグ情報(例えばgps_coordinate_trans_enabled_flag)とを含んでもよい。 In addition, the bit stream (e.g., shift information) may include first flag information (e.g., gps_alt_coordinates_flag) indicating whether the position information is expressed in a polar coordinate system, and second flag information (e.g., gps_coordinate_trans_enabled_flag) indicating whether the position information expressed in the polar coordinate system is converted into transformed position information expressed in a Cartesian coordinate system.
なお、位置情報が、極座標系で表され、三次元点を生成するセンサの第二位置が極座標系の原点である場合、シフトは実施されなくてもよい。 なお、位置情報をシフトしないとは、実質的に位置情報がシフトされないことを意味し、例えば、シフト量がゼロのシフト処理を行うことを含んでもよい。 Note that if the position information is expressed in a polar coordinate system and the second position of the sensor that generates the three-dimensional point is the origin of the polar coordinate system, no shifting may be performed. Note that not shifting the position information means that the position information is not actually shifted, and may include, for example, performing a shift process with a shift amount of zero.
例えば、三次元データ復号装置は、ビットストリームからシフト量を示すシフト情報(例えばセンサ位置座標又は座標情報)を取得し、位置情報が、直交座標系で表されるか、極座標系で表されるかに関わらず、シフト情報で示されるシフト量に基づき位置情報をシフトし、位置情報が極座標系で表される位置情報である場合、シフト情報で示されるシフト量はゼロに設定されている。つまり、三次元データ復号装置は、ビットストリームからシフトの量を示すシフト情報を取得し、位置情報が極座標系で表される場合、シフト情報で示される量はゼロであり、極座標系で表される位置情報を、シフト情報で示される量に基づき位置情報をシフトすることで、極座標系で表される位置情報をシフトしない。 For example, the three-dimensional data decoding device acquires shift information (e.g., sensor position coordinates or coordinate information) indicating the shift amount from the bit stream, and shifts the position information based on the shift amount indicated by the shift information regardless of whether the position information is expressed in a Cartesian coordinate system or a polar coordinate system, and if the position information is position information expressed in a polar coordinate system, the shift amount indicated by the shift information is set to zero. In other words, the three-dimensional data decoding device acquires shift information indicating the shift amount from the bit stream, and if the position information is expressed in a polar coordinate system, the amount indicated by the shift information is zero, and does not shift the position information expressed in the polar coordinate system by shifting the position information based on the amount indicated by the shift information.
これによれば、当該三次元データ復号装置は、位置情報が直交座標系であるか極座標系であるかに関わらず、位置情報にシフト処理を適用でき、シフト処理を行うか否かの制御が不要となるため、処理を簡略化できる。 As a result, the three-dimensional data decoding device can apply shift processing to position information regardless of whether the position information is in a Cartesian coordinate system or a polar coordinate system, eliminating the need to control whether or not to perform shift processing, thereby simplifying processing.
例えば、三次元データ復号装置は、ビットストリームからシフトの量を示すシフト情報(例えばセンサ位置座標又は座標情報)を取得し、位置情報が直交座標系で表される場合、シフト情報で示される量に基づき位置情報をシフトし、位置情報が極座標系で表される場合、シフト情報で示される量に関わらず、量がゼロであるとみなす。 For example, a three-dimensional data decoding device obtains shift information (e.g., sensor position coordinates or coordinate information) indicating the amount of shift from the bit stream, and if the position information is expressed in a Cartesian coordinate system, shifts the position information based on the amount indicated by the shift information, and if the position information is expressed in a polar coordinate system, considers the amount to be zero regardless of the amount indicated by the shift information.
これによれば、当該三次元データ復号装置は、位置情報が極座標系である場合には、シフト情報で示されるシフトの量に関わらず、シフトの量がゼロであるとみなす。これにより、ビットストリームを生成する三次元データ符号化装置の処理量を低減できる。また、当該三次元データ復号装置は、ビットストリームにエラーが含まれる場合にも、正しくビットストリームを復号できる可能性がある。 According to this, when the position information is in a polar coordinate system, the three-dimensional data decoding device considers the shift amount to be zero, regardless of the shift amount indicated in the shift information. This reduces the amount of processing required by the three-dimensional data encoding device that generates the bitstream. Furthermore, the three-dimensional data decoding device may be able to correctly decode the bitstream even if it contains an error.
例えば、三次元データ復号装置は、ビットストリームに、シフトの量を示すシフト情報が含まれる場合、位置情報が直交座標系で表されると判定し、シフト情報で示されるシフト量に基づき位置情報をシフトし、ビットストリームにシフト情報が含まれない場合、位置情報が極座標系で表されると判定し、位置情報をシフトしない。 For example, if the bit stream contains shift information indicating the amount of shift, the three-dimensional data decoding device determines that the position information is represented in a Cartesian coordinate system and shifts the position information based on the shift amount indicated by the shift information; if the bit stream does not contain shift information, the device determines that the position information is represented in a polar coordinate system and does not shift the position information.
これによれば、位置情報が極座標系である場合には、ビットストリームにシフト情報が含まれない。よって、ビットストリームのデータ量を削減できる。 This means that if the position information is in polar coordinates, the bitstream does not contain shift information, thereby reducing the amount of data in the bitstream.
例えば、符号化位置情報は、複数の三次元点を分割した分割単位毎の位置情報が符号化された複数の単位データ(例えばGDU)を含み、シフト情報は、ビットストリームに含まれる、複数の単位データに共通のパラメータセット(例えばGPS)に含まれる。つまり、ビットストリームは、三次元点を含む複数の三次元点の位置情報が符号化された符号化情報を含み、符号化情報は、複数の三次元点を分割した複数の分割単位に分けられており、シフト情報は、複数の分割単位に共通のパラメータセットに含まれる。例えば、符号化情報は符号化位置情報を含む。 For example, the encoded position information includes multiple unit data (e.g., GDU) in which position information for each division unit obtained by dividing multiple three-dimensional points is encoded, and the shift information is included in a parameter set (e.g., GPS) included in the bit stream and common to multiple unit data. In other words, the bit stream includes encoded information in which position information for multiple three-dimensional points including a three-dimensional point is encoded, and the encoded information is divided into multiple division units obtained by dividing multiple three-dimensional points, and the shift information is included in a parameter set common to the multiple division units. For example, the encoded information includes encoded position information.
例えば、符号化位置情報は、複数の三次元点を分割した分割単位毎の位置情報が符号化された複数の単位データ(例えばGDU)を含み、シフト情報は、ビットストリームに含まれる、複数の単位データ毎のヘッダ(例えばGDUヘッダ)に含まれる。つまり、ビットストリームは、三次元点を含む複数の三次元点の位置情報が符号化された符号化情報を含み、符号化情報は、複数の三次元点を分割した複数の分割単位に分けられておりシフト情報は、複数の分割単位毎のヘッダに含まれる。例えば、符号化情報は符号化位置情報を含む。 For example, the encoded position information includes multiple unit data (e.g., GDUs) in which position information for each division unit obtained by dividing multiple three-dimensional points is encoded, and the shift information is included in a header (e.g., a GDU header) for each of the multiple unit data included in the bitstream. In other words, the bitstream includes encoded information in which position information for multiple three-dimensional points, including a three-dimensional point, is encoded, and the encoded information is divided into multiple division units obtained by dividing the multiple three-dimensional points, and the shift information is included in a header for each of the multiple division units. For example, the encoded information includes encoded position information.
例えば、三次元データ復号装置は、位置情報が極座標系で表される場合、極座標系で表される位置情報を直交座標系で表される変換後位置情報に変換し、変換後位置情報をシフトする。 For example, when position information is expressed in a polar coordinate system, the three-dimensional data decoding device converts the position information expressed in the polar coordinate system into transformed position information expressed in a Cartesian coordinate system and shifts the transformed position information.
これによれば、当該三次元データ復号装置は、符号化された位置情報が極座標系である場合にも、極座標系の位置情報を直交座標系の位置情報に変換し、直交座標系の位置情報を出力できる。 As a result, even if the encoded position information is in a polar coordinate system, the three-dimensional data decoding device can convert the position information in the polar coordinate system into position information in a Cartesian coordinate system and output the position information in the Cartesian coordinate system.
例えば、三次元データ復号装置は、プロセッサと、メモリとを備え、プロセッサは、メモリを用いて、上記の処理を行う。 For example, a three-dimensional data decoding device includes a processor and a memory, and the processor uses the memory to perform the above processing.
また、本実施の形態に係る三次元データ符号化装置は、図87に示す処理を行う。三次元データ符号化装置は、三次元点の位置情報を符号化することで符号化位置情報を生成し(S13721)、符号化位置情報と、三次元データ復号装置が復号した復号位置情報を三次元データ復号装置がシフトするか否かを示すシフト情報(例えば、(例えばセンサ位置座標、座標情報、gps_alt_coordinates_flag、又はgps_coordinate_trans_enabled_flag)と、を含むビットストリームを生成する(S13722)。 The three-dimensional data encoding device according to this embodiment also performs the processing shown in FIG. 87. The three-dimensional data encoding device generates encoded position information by encoding the position information of the three-dimensional point (S13721), and generates a bitstream including the encoded position information and shift information (e.g., sensor position coordinates, coordinate information, gps_alt_coordinates_flag, or gps_coordinate_trans_enabled_flag) indicating whether the three-dimensional data decoding device shifts the decoded position information decoded by the three-dimensional data decoding device (S13722).
シフト情報に基づき、三次元データ復号装置は、復号位置情報が直交座標系で表される場合、復号位置情報をシフトし、復号位置情報が極座標系で表される場合、復号位置情報をシフトしない。 Based on the shift information, the three-dimensional data decoding device shifts the decoded position information if the decoded position information is expressed in a Cartesian coordinate system, and does not shift the decoded position information if the decoded position information is expressed in a polar coordinate system.
これによれば、当該三次元データ符号化装置は、符号化された位置情報が直交座標系であるか極座標系であるかに応じて、位置情報にシフト処理を行うか否かを三次元データ復号装置において切り替えることができるビットストリームを生成できる。ここで、位置情報が直交座標系である場合には、三次元データ符号化装置においてシフト処理を行ったうえで符号化を行うことで符号化効率を向上できる。三次元データ復号装置は、位置情報が直交座標系の場合にはシフト処理を行うことで、符号化効率が向上されたビットストリームを適切に復号できる。また、三次元データ復号装置は、位置情報が極座標系の場合にはシフト処理を行わないことで処理量を低減できる。 This allows the three-dimensional data encoding device to generate a bitstream in which the three-dimensional data decoding device can switch whether to perform shift processing on the position information depending on whether the encoded position information is in a Cartesian coordinate system or a polar coordinate system. Here, when the position information is in a Cartesian coordinate system, the three-dimensional data encoding device performs shift processing before encoding, thereby improving encoding efficiency. When the position information is in a Cartesian coordinate system, the three-dimensional data decoding device performs shift processing, allowing it to properly decode a bitstream with improved encoding efficiency. Furthermore, when the position information is in a polar coordinate system, the three-dimensional data decoding device does not perform shift processing, thereby reducing the amount of processing.
例えば、三次元データ符号化装置は、三次元点の位置情報を符号化することで符号化位置情報を生成し、符号化位置情報を含むビットストリームを生成し、位置情報が直交座標で表される場合、位置情報によって示される第1位置をシフトし、シフトは、位置情報が極座標系で表される場合、実施されなくてもよい。 For example, a three-dimensional data encoding device generates encoded position information by encoding position information of a three-dimensional point, generates a bit stream including the encoded position information, and shifts a first position indicated by the position information if the position information is expressed in Cartesian coordinates, and the shift may not be performed if the position information is expressed in a polar coordinate system.
例えば、ビットストリームは、位置情報が、直交座標系で表されるか、極座標系で表されるかを示すシフト情報を含んでもよい。 For example, the bitstream may include shift information indicating whether the position information is represented in a Cartesian coordinate system or a polar coordinate system.
なお、ビットストリーム(例えばシフト情報)は、位置情報が、極座標系で表されるか否かを示す第一フラグ情報(例えばgps_alt_coordinates_flag)と、極座標系で表される位置情報が、直交座標系で表される変換位置情報に変換されるか否かを示す第二フラグ情報(例えばgps_coordinate_trans_enabled_flag)とを含んでもよい。 In addition, the bit stream (e.g., shift information) may include first flag information (e.g., gps_alt_coordinates_flag) indicating whether the position information is expressed in a polar coordinate system, and second flag information (e.g., gps_coordinate_trans_enabled_flag) indicating whether the position information expressed in the polar coordinate system is converted into transformed position information expressed in a Cartesian coordinate system.
例えば、位置情報が極座標系で表され、三次元点を生成するセンサの第二位置が極座標系の原点である場合、シフトは実施されなくてもよい。 For example, if the position information is expressed in a polar coordinate system and the second position of the sensor generating the three-dimensional point is the origin of the polar coordinate system, no shift may be performed.
例えば、シフト情報は、復号位置情報のシフトの際の当該シフトの量を示し、位置情報が極座標系で表される場合、シフト情報で示される量はゼロであり、三次元データ復号装置は、極座標系で表される位置情報を、シフト情報で示される量に基づき位置情報をシフトすることで、極座標系で表される位置情報をシフトしない。 For example, the shift information indicates the amount of shift when shifting the decoded position information, and when the position information is expressed in a polar coordinate system, the amount indicated by the shift information is zero, and the three-dimensional data decoding device does not shift the position information expressed in the polar coordinate system by shifting the position information based on the amount indicated by the shift information.
これによれば、例えば、三次元データ復号装置において、位置情報が直交座標系であるか極座標系であるかに関わらず、位置情報にシフト処理を適用でき、シフト処理を行うか否かの制御が不要となるため、三次元データ復号装置における処理を簡略化できる。 As a result, for example, in a three-dimensional data decoding device, shift processing can be applied to position information regardless of whether the position information is in a Cartesian coordinate system or a polar coordinate system, eliminating the need to control whether or not to perform shift processing, thereby simplifying processing in the three-dimensional data decoding device.
例えば、位置情報が直交座標系で表される場合、シフト情報は、復号位置情報のシフトの際のシフト量を示し、位置情報が極座標系で表される場合、三次元データ符号化装置は、シフト情報をビットストリームに格納しない。 For example, when the position information is expressed in a Cartesian coordinate system, the shift information indicates the amount of shift when shifting the decoded position information, and when the position information is expressed in a polar coordinate system, the three-dimensional data encoding device does not store the shift information in the bitstream.
これによれば、位置情報が極座標系である場合には、ビットストリームにシフト情報が含まれない。よって、ビットストリームのデータ量を削減できる。 This means that if the position information is in polar coordinates, the bitstream does not contain shift information, thereby reducing the amount of data in the bitstream.
例えば、符号化位置情報は、複数の三次元点を分割した分割単位毎の位置情報が符号化された複数の単位データ(例えばGDU)を含み、シフト情報は、ビットストリームに含まれる、複数の単位データに共通のパラメータセット(例えばGPS)に含まれる。つまり、ビットストリームは、三次元点を含む複数の三次元点の位置情報が符号化された符号化情報を含み、符号化情報は、複数の三次元点を分割した複数の分割単位に分けられており、シフト情報は、複数の分割単位に共通のパラメータセットに含まれる。 For example, the encoded position information includes multiple unit data (e.g., GDU) in which position information for each division unit obtained by dividing multiple three-dimensional points is encoded, and the shift information is included in a parameter set (e.g., GPS) included in the bit stream and common to multiple unit data. In other words, the bit stream includes encoded information in which position information for multiple three-dimensional points, including a three-dimensional point, is encoded, and the encoded information is divided into multiple division units obtained by dividing multiple three-dimensional points, and the shift information is included in a parameter set common to the multiple division units.
例えば、符号化位置情報は、複数の三次元点を分割した分割単位毎の位置情報が符号化された複数の単位データ(例えばGDU)を含み、シフト情報は、ビットストリームに含まれる、複数の単位データ毎のヘッダ(例えばGDUヘッダ)に含まれる。つまり、ビットストリームは、三次元点を含む複数の三次元点の位置情報が符号化された符号化情報を含み、符号化情報は、複数の三次元点を分割した複数の分割単位に分けられており、シフト情報は、複数の分割単位毎のヘッダに含まれる。 For example, the encoded position information includes multiple unit data (e.g., GDUs) in which position information for each division unit obtained by dividing multiple three-dimensional points is encoded, and the shift information is included in a header (e.g., a GDU header) for each of the multiple unit data included in the bitstream. In other words, the bitstream includes encoded information in which position information for multiple three-dimensional points, including a three-dimensional point, is encoded, and the encoded information is divided into multiple division units obtained by dividing multiple three-dimensional points, and the shift information is included in a header for each of the multiple division units.
例えば、三次元データ符号化装置は、プロセッサと、メモリとを備え、プロセッサは、メモリを用いて、上記の処理を行う。 For example, a three-dimensional data encoding device includes a processor and a memory, and the processor uses the memory to perform the above processing.
(実施の形態8)
次に、本実施の形態に係る三次元データ作成装置810の構成を説明する。図88は、本実施の形態に係る三次元データ作成装置810の構成例を示すブロック図である。この三次元データ作成装置810は、例えば、車両に搭載される。三次元データ作成装置810は、外部の交通監視クラウド、前走車両又は後続車両と三次元データの送受信を行うとともに、三次元データを作成及び蓄積する。
Eighth Embodiment
Next, the configuration of a three-dimensional data creation device 810 according to this embodiment will be described. Fig. 88 is a block diagram showing an example configuration of a three-dimensional data creation device 810 according to this embodiment. This three-dimensional data creation device 810 is mounted on a vehicle, for example. The three-dimensional data creation device 810 transmits and receives three-dimensional data to and from an external traffic monitoring cloud, a leading vehicle, or a following vehicle, and also creates and stores three-dimensional data.
三次元データ作成装置810は、データ受信部811と、通信部812と、受信制御部813と、フォーマット変換部814と、複数のセンサ815と、三次元データ作成部816と、三次元データ合成部817と、三次元データ蓄積部818と、通信部819と、送信制御部820と、フォーマット変換部821と、データ送信部822とを備える。 The three-dimensional data creation device 810 comprises a data receiving unit 811, a communication unit 812, a reception control unit 813, a format conversion unit 814, multiple sensors 815, a three-dimensional data creation unit 816, a three-dimensional data synthesis unit 817, a three-dimensional data storage unit 818, a communication unit 819, a transmission control unit 820, a format conversion unit 821, and a data transmission unit 822.
データ受信部811は、交通監視クラウド又は前走車両から三次元データ831を受信する。三次元データ831は、例えば、自車両のセンサ815で検知不能な領域を含む、ポイントクラウド、可視光映像、奥行き情報、センサ位置情報、又は速度情報などの情報を含む。 The data receiving unit 811 receives three-dimensional data 831 from a traffic monitoring cloud or a preceding vehicle. The three-dimensional data 831 includes information such as a point cloud, visible light image, depth information, sensor position information, or speed information, including areas that cannot be detected by the vehicle's own sensor 815.
通信部812は、交通監視クラウド又は前走車両と通信し、データ送信要求などを交通監視クラウド又は前走車両に送信する。 The communication unit 812 communicates with the traffic monitoring cloud or the vehicle in front, and sends data transmission requests, etc. to the traffic monitoring cloud or the vehicle in front.
受信制御部813は、通信部812を介して、対応フォーマット等の情報を通信先と交換し、通信先との通信を確立する。 The receiving control unit 813 exchanges information such as supported formats with the communication destination via the communication unit 812 and establishes communication with the communication destination.
フォーマット変換部814は、データ受信部811が受信した三次元データ831にフォーマット変換等を行うことで三次元データ832を生成する。また、フォーマット変換部814は、三次元データ831が圧縮又は符号化されている場合には、伸張又は復号処理を行う。 The format conversion unit 814 generates three-dimensional data 832 by performing format conversion, etc. on the three-dimensional data 831 received by the data receiving unit 811. In addition, if the three-dimensional data 831 is compressed or encoded, the format conversion unit 814 performs decompression or decoding processing.
複数のセンサ815は、LiDAR、可視光カメラ又は赤外線カメラなどの、車両の外部の情報を取得するセンサ群であり、センサ情報833を生成する。例えば、センサ情報833は、センサ815がLiDARなどのレーザセンサである場合、ポイントクラウド(点群データ)等の三次元データである。なお、センサ815は複数でなくてもよい。 The multiple sensors 815 are a group of sensors that acquire information about the outside of the vehicle, such as LiDAR, a visible light camera, or an infrared camera, and generate sensor information 833. For example, if the sensor 815 is a laser sensor such as LiDAR, the sensor information 833 is three-dimensional data such as a point cloud (point cloud data). Note that the number of sensors 815 does not need to be multiple.
三次元データ作成部816は、センサ情報833から三次元データ834を生成する。三次元データ834は、例えば、ポイントクラウド、可視光映像、奥行き情報、センサ位置情報、又は速度情報などの情報を含む。 The three-dimensional data creation unit 816 generates three-dimensional data 834 from the sensor information 833. The three-dimensional data 834 includes information such as a point cloud, visible light image, depth information, sensor position information, or velocity information.
三次元データ合成部817は、自車両のセンサ情報833に基づいて作成された三次元データ834に、交通監視クラウド又は前走車両等が作成した三次元データ832を合成することで、自車両のセンサ815では検知できない前走車両の前方の空間も含む三次元データ835を構築する。 The three-dimensional data synthesis unit 817 synthesizes three-dimensional data 834 created based on the vehicle's own sensor information 833 with three-dimensional data 832 created by the traffic monitoring cloud or the vehicle in front, etc., to construct three-dimensional data 835 that includes the space in front of the vehicle in front, which cannot be detected by the vehicle's own sensor 815.
三次元データ蓄積部818は、生成された三次元データ835等を蓄積する。 The three-dimensional data storage unit 818 stores the generated three-dimensional data 835, etc.
通信部819は、交通監視クラウド又は後続車両と通信し、データ送信要求などを交通監視クラウド又は後続車両に送信する。 The communication unit 819 communicates with the traffic monitoring cloud or a following vehicle and sends data transmission requests, etc. to the traffic monitoring cloud or the following vehicle.
送信制御部820は、通信部819を介して、対応フォーマット等の情報を通信先と交換し、通信先と通信を確立する。また、送信制御部820は、三次元データ合成部817で生成された三次元データ832の三次元データ構築情報と、通信先からのデータ送信要求とに基づき、送信対象の三次元データの空間である送信領域を決定する。 The transmission control unit 820 exchanges information such as supported formats with the communication destination via the communication unit 819, and establishes communication with the communication destination. The transmission control unit 820 also determines a transmission area, which is the space of the three-dimensional data to be transmitted, based on the three-dimensional data construction information of the three-dimensional data 832 generated by the three-dimensional data synthesis unit 817 and a data transmission request from the communication destination.
具体的には、送信制御部820は、交通監視クラウド又は後続車両からのデータ送信要求に応じて、後続車両のセンサでは検知できない自車両の前方の空間を含む送信領域を決定する。また、送信制御部820は、三次元データ構築情報に基づいて送信可能な空間又は送信済み空間の更新有無等を判断することで送信領域を決定する。例えば、送信制御部820は、データ送信要求で指定された領域であり、かつ、対応する三次元データ835が存在する領域を送信領域に決定する。そして、送信制御部820は、通信先が対応するフォーマット、及び送信領域をフォーマット変換部821に通知する。 Specifically, in response to a data transmission request from the traffic monitoring cloud or a following vehicle, the transmission control unit 820 determines a transmission area that includes the space ahead of the vehicle that cannot be detected by the sensors of the following vehicle. The transmission control unit 820 also determines the transmission area by determining whether the space available for transmission or the space that has already been transmitted has been updated based on the three-dimensional data construction information. For example, the transmission control unit 820 determines the area specified in the data transmission request and in which the corresponding three-dimensional data 835 exists as the transmission area. The transmission control unit 820 then notifies the format conversion unit 821 of the format supported by the communication destination and the transmission area.
フォーマット変換部821は、三次元データ蓄積部818に蓄積されている三次元データ835のうち、送信領域の三次元データ836を、受信側が対応しているフォーマットへ変換することで三次元データ837を生成する。なお、フォーマット変換部821は、三次元データ837を圧縮又は符号化することでデータ量を削減してもよい。 The format conversion unit 821 generates three-dimensional data 837 by converting the three-dimensional data 836 of the transmission area, which is part of the three-dimensional data 835 stored in the three-dimensional data storage unit 818, into a format supported by the receiving side. The format conversion unit 821 may also reduce the amount of data by compressing or encoding the three-dimensional data 837.
データ送信部822は、三次元データ837を交通監視クラウド又は後続車両に送信する。この三次元データ837は、例えば、後続車両の死角になる領域を含む、自車両の前方のポイントクラウド、可視光映像、奥行き情報、又はセンサ位置情報などの情報を含む。 The data transmission unit 822 transmits three-dimensional data 837 to the traffic monitoring cloud or the following vehicle. This three-dimensional data 837 includes information such as a point cloud ahead of the vehicle, visible light image, depth information, or sensor position information, including areas that are blind spots for the following vehicle.
なお、ここでは、フォーマット変換部814及び821にてフォーマット変換等が行われる例を述べたが、フォーマット変換は行われなくてもよい。 Note that although an example has been described in which format conversion is performed by format conversion units 814 and 821, format conversion does not necessarily have to be performed.
このような構成により、三次元データ作成装置810は、自車両のセンサ815では検知できない領域の三次元データ831を外部から取得し、三次元データ831と自車両のセンサ815で検知したセンサ情報833に基づく三次元データ834とを合成することで三次元データ835を生成する。これにより、三次元データ作成装置810は、自車両のセンサ815で検知できない範囲の三次元データを生成できる。 With this configuration, the three-dimensional data creation device 810 externally acquires three-dimensional data 831 of an area that cannot be detected by the vehicle's sensor 815, and generates three-dimensional data 835 by combining the three-dimensional data 831 with three-dimensional data 834 based on sensor information 833 detected by the vehicle's sensor 815. This allows the three-dimensional data creation device 810 to generate three-dimensional data of an area that cannot be detected by the vehicle's sensor 815.
また、三次元データ作成装置810は、交通監視クラウド又は後続車両からのデータ送信要求に応じて、後続車両のセンサでは検知できない自車両の前方の空間を含む三次元データを、交通監視クラウド又は後続車両等へ送信できる。 In addition, the three-dimensional data creation device 810 can transmit three-dimensional data including the space ahead of the vehicle that cannot be detected by the sensors of the following vehicle to the traffic monitoring cloud or the following vehicle, etc., in response to a data transmission request from the traffic monitoring cloud or the following vehicle.
次に、三次元データ作成装置810における後続車両への三次元データの送信手順について説明する。図89は、三次元データ作成装置810による交通監視クラウド又は後続車両へ三次元データを送信する手順の一例を示すフローチャートである。 Next, we will explain the procedure for transmitting three-dimensional data to a following vehicle in the three-dimensional data creation device 810. Figure 89 is a flowchart showing an example of the procedure for transmitting three-dimensional data to a traffic monitoring cloud or a following vehicle by the three-dimensional data creation device 810.
まず、三次元データ作成装置810は、自車両の前方道路上の空間を含む空間の三次元データ835を生成及び更新する(S801)。具体的には、三次元データ作成装置810は、自車両のセンサ情報833に基づいて作成した三次元データ834に、交通監視クラウド又は前走車両等が作成した三次元データ831を合成するなどして、自車両のセンサ815では検知できない前走車両の前方の空間も含む三次元データ835を構築する。 First, the three-dimensional data creation device 810 generates and updates three-dimensional data 835 of the space including the space on the road ahead of the vehicle (S801). Specifically, the three-dimensional data creation device 810 constructs three-dimensional data 835 including the space ahead of the vehicle ahead that cannot be detected by the vehicle's own sensor 815, for example, by combining three-dimensional data 834 created based on the vehicle's own sensor information 833 with three-dimensional data 831 created by a traffic monitoring cloud or a vehicle ahead.
次に、三次元データ作成装置810は、送信済みの空間に含まれる三次元データ835が変化したかを判定する(S802)。 Next, the three-dimensional data creation device 810 determines whether the three-dimensional data 835 contained in the transmitted space has changed (S802).
送信済みの空間に外部から車両又は人が進入するなどして、当該空間に含まれる三次元データ835に変化が生じた場合には(S802でYes)、三次元データ作成装置810は、変化が生じた空間の三次元データ835を含む三次元データを交通監視クラウド又は後続車両に送信する(S803)。 If a change occurs in the three-dimensional data 835 contained in the space that has already been transmitted, such as when a vehicle or person enters the space from outside (Yes in S802), the three-dimensional data creation device 810 transmits three-dimensional data including the three-dimensional data 835 of the space where the change occurred to the traffic monitoring cloud or a following vehicle (S803).
なお、三次元データ作成装置810は、変化が生じた空間の三次元データを、所定間隔で送信する三次元データの送信タイミングに合わせて送信してもよいが、変化を検知した後すぐに送信してもよい。つまり、三次元データ作成装置810は、変化が生じた空間の三次元データを、所定間隔で送信する三次元データよりも優先して送信してもよい。 The three-dimensional data creation device 810 may transmit the three-dimensional data of the space in which a change has occurred in accordance with the transmission timing of the three-dimensional data transmitted at predetermined intervals, or may transmit the data immediately after detecting the change. In other words, the three-dimensional data creation device 810 may transmit the three-dimensional data of the space in which a change has occurred in priority over the three-dimensional data transmitted at predetermined intervals.
また、三次元データ作成装置810は、変化が生じた空間の三次元データとして、変化が生じた空間の三次元データの全てを送信してもよいし、三次元データの差分(例えば出現又は消失した三次元点の情報、又は三次元点の変位情報など)のみを送信してもよい。 In addition, the three-dimensional data creation device 810 may transmit all of the three-dimensional data of the space in which a change has occurred as the three-dimensional data of the space in which a change has occurred, or may transmit only the differences in the three-dimensional data (for example, information on three-dimensional points that have appeared or disappeared, or displacement information of three-dimensional points, etc.).
また、三次元データ作成装置810は、変化が生じた空間の三次元データに先行して、急制動警報など自車両の危険回避動作に関するメタデータを後続車両へ送信してもよい。これによれば、後続車両は前走車両の急制動などを早期に認知でき、より早期に減速などの危険回避動作を開始できる。 The three-dimensional data creation device 810 may also transmit metadata regarding the vehicle's risk-avoidance actions, such as a sudden braking warning, to the following vehicle prior to transmitting the three-dimensional data of the space where the change has occurred. This allows the following vehicle to recognize the sudden braking of the vehicle in front at an early stage and to begin risk-avoidance actions, such as deceleration, earlier.
送信済みの空間に含まれる三次元データ835に変化が生じていない場合(S802でNo)、又は、ステップS803の後、三次元データ作成装置810は、自車両の前方距離Lにある所定の形状の空間に含まれる三次元データを、交通監視クラウド又は後続車両へ送信する(S804)。 If there is no change in the three-dimensional data 835 contained in the transmitted space (No in S802), or after step S803, the three-dimensional data creation device 810 transmits the three-dimensional data contained in a space of a predetermined shape at a distance L ahead of the vehicle to the traffic monitoring cloud or a following vehicle (S804).
また、例えば、ステップS801~S804の処理は、所定の時間間隔で繰り返し行われる。 Furthermore, for example, the processing of steps S801 to S804 is repeated at a predetermined time interval.
また、三次元データ作成装置810は、現在の送信対象の空間の三次元データ835と、三次元地図とに差がない場合には、空間の三次元データ837を送信しなくてもよい。 In addition, the three-dimensional data creation device 810 does not need to transmit the three-dimensional data 837 of the space if there is no difference between the three-dimensional data 835 of the space currently being transmitted and the three-dimensional map.
本実施の形態では、クライアント装置は、サーバ又は他のクライアント装置にセンサで得られたセンサ情報を送信する。 In this embodiment, the client device transmits sensor information obtained by the sensor to a server or another client device.
まず、本実施の形態に係るシステムの構成を説明する。図90は、本実施の形態に係る三次元マップ及びセンサ情報の送受信システムの構成を示す図である。このシステムは、サーバ901と、クライアント装置902A及び902Bを含む。なお、クライアント装置902A及び902Bを特に区別しない場合には、クライアント装置902とも記す。 First, the configuration of the system according to this embodiment will be described. Figure 90 is a diagram showing the configuration of a system for transmitting and receiving 3D maps and sensor information according to this embodiment. This system includes a server 901 and client devices 902A and 902B. When there is no need to distinguish between client devices 902A and 902B, they will also be referred to as client device 902.
クライアント装置902は、例えば、車両等の移動体に搭載される車載機器である。サーバ901は、例えば、交通監視クラウド等であり、複数のクライアント装置902と通信可能である。 The client device 902 is, for example, an in-vehicle device mounted on a moving object such as a vehicle. The server 901 is, for example, a traffic monitoring cloud, and is capable of communicating with multiple client devices 902.
サーバ901は、クライアント装置902に、ポイントクラウドから構成される三次元マップを送信する。なお、三次元マップの構成はポイントクラウドに限定されず、メッシュ構造等、他の三次元データを表すものであってもよい。 The server 901 transmits a three-dimensional map composed of a point cloud to the client device 902. Note that the composition of the three-dimensional map is not limited to a point cloud, but may represent other three-dimensional data such as a mesh structure.
クライアント装置902は、サーバ901に、クライアント装置902が取得したセンサ情報を送信する。センサ情報は、例えば、LiDAR取得情報、可視光画像、赤外画像、デプス画像、センサ位置情報及び速度情報のうち少なくとも一つを含む。 The client device 902 transmits sensor information acquired by the client device 902 to the server 901. The sensor information includes, for example, at least one of LiDAR acquisition information, visible light image, infrared image, depth image, sensor position information, and velocity information.
サーバ901とクライアント装置902との間で送受信されるデータは、データ削減のために圧縮されてもよいし、データの精度を維持するために非圧縮のままでも構わない。データを圧縮する場合、ポイントクラウドには例えば8分木構造に基づく三次元圧縮方式を用いることができる。また、可視光画像、赤外画像、及びデプス画像には二次元の画像圧縮方式を用いることできる。二次元の画像圧縮方式とは、例えば、MPEGで規格化されたMPEG-4 AVC又はHEVC等である。 Data sent and received between the server 901 and the client device 902 may be compressed to reduce data size, or may remain uncompressed to maintain data accuracy. When compressing data, a three-dimensional compression method based on an octree structure, for example, can be used for point clouds. Furthermore, a two-dimensional image compression method can be used for visible light images, infrared images, and depth images. Examples of two-dimensional image compression methods include MPEG-4 AVC or HEVC, which are standardized by MPEG.
また、サーバ901は、クライアント装置902からの三次元マップの送信要求に応じてサーバ901で管理する三次元マップをクライアント装置902に送信する。なお、サーバ901はクライアント装置902からの三次元マップの送信要求を待たずに三次元マップを送信してもよい。例えば、サーバ901は、予め定められた空間にいる1つ以上のクライアント装置902に三次元マップをブロードキャストしても構わない。また、サーバ901は、一度送信要求を受けたクライアント装置902に、一定時間毎にクライアント装置902の位置に適した三次元マップを送信してもよい。また、サーバ901は、サーバ901が管理する三次元マップが更新される度にクライアント装置902に三次元マップを送信してもよい。 Furthermore, the server 901 transmits the three-dimensional map managed by the server 901 to the client device 902 in response to a request to send the three-dimensional map from the client device 902. Note that the server 901 may transmit the three-dimensional map without waiting for a request to send the three-dimensional map from the client device 902. For example, the server 901 may broadcast the three-dimensional map to one or more client devices 902 located in a predetermined space. Furthermore, the server 901 may transmit a three-dimensional map appropriate to the location of the client device 902 at regular intervals to the client device 902 once it has received a transmission request. Furthermore, the server 901 may transmit the three-dimensional map to the client device 902 each time the three-dimensional map managed by the server 901 is updated.
クライアント装置902は、サーバ901に三次元マップの送信要求を出す。例えば、クライアント装置902が、走行時に自己位置推定を行いたい場合に、クライアント装置902は、三次元マップの送信要求をサーバ901に送信する。 The client device 902 issues a request to the server 901 to send a three-dimensional map. For example, if the client device 902 wants to estimate its own position while driving, the client device 902 sends a request to the server 901 to send a three-dimensional map.
なお、次のような場合に、クライアント装置902はサーバ901に三次元マップの送信要求を出してもよい。クライアント装置902の保持する三次元マップが古い場合に、クライアント装置902はサーバ901に三次元マップの送信要求を出してもよい。例えば、クライアント装置902が三次元マップを取得してから一定期間が経過した場合に、クライアント装置902はサーバ901に三次元マップの送信要求を出してもよい。 In the following cases, the client device 902 may issue a request to the server 901 to send a three-dimensional map. If the three-dimensional map held by the client device 902 is old, the client device 902 may issue a request to the server 901 to send a three-dimensional map. For example, if a certain period of time has passed since the client device 902 obtained the three-dimensional map, the client device 902 may issue a request to the server 901 to send a three-dimensional map.
クライアント装置902が保持する三次元マップで示される空間から、クライアント装置902が外に出る一定時刻前に、クライアント装置902はサーバ901に三次元マップの送信要求を出してもよい。例えば、クライアント装置902が、クライアント装置902が保持する三次元マップで示される空間の境界から予め定められた距離以内に存在する場合に、クライアント装置902はサーバ901に三次元マップの送信要求を出してもよい。また、クライアント装置902の移動経路及び移動速度が把握できている場合には、これらに基づき、クライアント装置902が保持する三次元マップで示される空間から、クライアント装置902が外に出る時刻を予測してもよい。 A certain time before the client device 902 leaves the space shown in the three-dimensional map held by the client device 902, the client device 902 may issue a request to the server 901 to send a three-dimensional map. For example, if the client device 902 is located within a predetermined distance from the boundary of the space shown in the three-dimensional map held by the client device 902, the client device 902 may issue a request to the server 901 to send a three-dimensional map. Furthermore, if the movement path and movement speed of the client device 902 are known, the time when the client device 902 will leave the space shown in the three-dimensional map held by the client device 902 may be predicted based on these.
クライアント装置902がセンサ情報から作成した三次元データと三次元マップとの位置合せ時の誤差が一定以上の場合に、クライアント装置902はサーバ901に三次元マップの送信要求を出してもよい。 If the error when aligning the three-dimensional data created by the client device 902 from sensor information with the three-dimensional map is greater than a certain level, the client device 902 may request the server 901 to send the three-dimensional map.
クライアント装置902は、サーバ901から送信されたセンサ情報の送信要求に応じて、サーバ901にセンサ情報を送信する。なお、クライアント装置902はサーバ901からのセンサ情報の送信要求を待たずにセンサ情報をサーバ901に送ってもよい。例えば、クライアント装置902は、一度サーバ901からセンサ情報の送信要求を得た場合、一定期間の間、定期的にセンサ情報をサーバ901に送信してもよい。また、クライアント装置902は、クライアント装置902がセンサ情報を元に作成した三次元データと、サーバ901から得た三次元マップとの位置合せ時の誤差が一定以上の場合、クライアント装置902の周辺の三次元マップに変化が生じた可能性があると判断し、その旨とセンサ情報とをサーバ901に送信してもよい。 The client device 902 transmits sensor information to the server 901 in response to a request to transmit sensor information transmitted from the server 901. Note that the client device 902 may send sensor information to the server 901 without waiting for a request to transmit sensor information from the server 901. For example, once the client device 902 receives a request to transmit sensor information from the server 901, it may periodically transmit the sensor information to the server 901 for a certain period of time. Furthermore, if the error in aligning the three-dimensional data created by the client device 902 based on the sensor information with the three-dimensional map obtained from the server 901 is equal to or greater than a certain level, the client device 902 may determine that a change may have occurred in the three-dimensional map around the client device 902, and may transmit this information along with the sensor information to the server 901.
サーバ901は、クライアント装置902にセンサ情報の送信要求を出す。例えば、サーバ901は、クライアント装置902から、GPS等のクライアント装置902の位置情報を受信する。サーバ901は、クライアント装置902の位置情報に基づき、サーバ901が管理する三次元マップにおいて情報が少ない空間にクライアント装置902が近づいていると判断した場合、新たな三次元マップを生成するためにクライアント装置902にセンサ情報の送信要求を出す。また、サーバ901は、三次元マップを更新したい場合、積雪時或いは災害時などの道路状況を確認したい場合、渋滞状況、或いは事件事故状況等を確認したい場合に、センサ情報の送信要求を出してもよい。 The server 901 issues a request to send sensor information to the client device 902. For example, the server 901 receives location information of the client device 902, such as GPS, from the client device 902. If the server 901 determines, based on the location information of the client device 902, that the client device 902 is approaching a space with little information in the three-dimensional map managed by the server 901, it issues a request to send sensor information to the client device 902 in order to generate a new three-dimensional map. The server 901 may also issue a request to send sensor information when it wants to update the three-dimensional map, when it wants to check road conditions during snowfall or disasters, when it wants to check traffic congestion, or when it wants to check incident and accident status, etc.
また、クライアント装置902は、サーバ901から受け取るセンサ情報の送信要求の受信時における通信状態又は帯域に応じて、サーバ901に送信するセンサ情報のデータ量を設定してもよい。サーバ901に送信するセンサ情報のデータ量を設定するというのは、例えば、当該データそのものを増減させること、又は圧縮方式を適宜選択することである。 In addition, the client device 902 may set the amount of data of the sensor information to be sent to the server 901 depending on the communication state or bandwidth at the time of receiving a request to send the sensor information from the server 901. Setting the amount of data of the sensor information to be sent to the server 901 means, for example, increasing or decreasing the data itself or appropriately selecting a compression method.
図91は、クライアント装置902の構成例を示すブロック図である。クライアント装置902は、サーバ901からポイントクラウド等で構成される三次元マップを受信し、クライアント装置902のセンサ情報に基づいて作成した三次元データからクライアント装置902の自己位置を推定する。また、クライアント装置902は、取得したセンサ情報をサーバ901に送信する。 Figure 91 is a block diagram showing an example configuration of a client device 902. The client device 902 receives a three-dimensional map composed of a point cloud or the like from the server 901, and estimates the client device 902's own position from three-dimensional data created based on the client device 902's sensor information. The client device 902 also transmits the acquired sensor information to the server 901.
クライアント装置902は、データ受信部1011と、通信部1012と、受信制御部1013と、フォーマット変換部1014と、複数のセンサ1015と、三次元データ作成部1016と、三次元画像処理部1017と、三次元データ蓄積部1018と、フォーマット変換部1019と、通信部1020と、送信制御部1021と、データ送信部1022とを備える。 The client device 902 includes a data receiving unit 1011, a communication unit 1012, a reception control unit 1013, a format conversion unit 1014, multiple sensors 1015, a three-dimensional data creation unit 1016, a three-dimensional image processing unit 1017, a three-dimensional data storage unit 1018, a format conversion unit 1019, a communication unit 1020, a transmission control unit 1021, and a data transmission unit 1022.
データ受信部1011は、サーバ901から三次元マップ1031を受信する。三次元マップ1031は、WLD又はSWLD等のポイントクラウドを含むデータである。三次元マップ1031には、圧縮データ、及び非圧縮データのどちらが含まれていてもよい。 The data receiving unit 1011 receives a three-dimensional map 1031 from the server 901. The three-dimensional map 1031 is data including a point cloud such as a WLD or SWLD. The three-dimensional map 1031 may include either compressed data or uncompressed data.
通信部1012は、サーバ901と通信し、データ送信要求(例えば、三次元マップの送信要求)などをサーバ901に送信する。 The communication unit 1012 communicates with the server 901 and sends data transmission requests (e.g., requests to transmit three-dimensional maps) to the server 901.
受信制御部1013は、通信部1012を介して、対応フォーマット等の情報を通信先と交換し、通信先との通信を確立する。 The receiving control unit 1013 exchanges information such as supported formats with the communication destination via the communication unit 1012 and establishes communication with the communication destination.
フォーマット変換部1014は、データ受信部1011が受信した三次元マップ1031にフォーマット変換等を行うことで三次元マップ1032を生成する。また、フォーマット変換部1014は、三次元マップ1031が圧縮又は符号化されている場合には、伸張又は復号処理を行う。なお、フォーマット変換部1014は、三次元マップ1031が非圧縮データであれば、伸張又は復号処理を行わない。 The format conversion unit 1014 generates a three-dimensional map 1032 by performing format conversion, etc. on the three-dimensional map 1031 received by the data receiving unit 1011. Furthermore, if the three-dimensional map 1031 is compressed or encoded, the format conversion unit 1014 performs decompression or decoding processing. Note that if the three-dimensional map 1031 is uncompressed data, the format conversion unit 1014 does not perform decompression or decoding processing.
複数のセンサ1015は、LiDAR、可視光カメラ、赤外線カメラ、又はデプスセンサなど、クライアント装置902が搭載されている車両の外部の情報を取得するセンサ群であり、センサ情報1033を生成する。例えば、センサ情報1033は、センサ1015がLiDARなどのレーザセンサである場合、ポイントクラウド(点群データ)等の三次元データである。なお、センサ1015は複数でなくてもよい。 The multiple sensors 1015 are a group of sensors, such as LiDAR, a visible light camera, an infrared camera, or a depth sensor, that acquire information about the outside of the vehicle in which the client device 902 is mounted, and generate sensor information 1033. For example, if the sensor 1015 is a laser sensor such as LiDAR, the sensor information 1033 is three-dimensional data such as a point cloud (point cloud data). Note that the number of sensors 1015 does not need to be multiple.
三次元データ作成部1016は、センサ情報1033に基づいて自車両の周辺の三次元データ1034を作成する。例えば、三次元データ作成部1016は、LiDARで取得した情報と、可視光カメラで得られた可視光映像とを用いて自車両の周辺の色情報付きのポイントクラウドデータを作成する。 The three-dimensional data creation unit 1016 creates three-dimensional data 1034 of the surroundings of the vehicle based on the sensor information 1033. For example, the three-dimensional data creation unit 1016 creates point cloud data with color information of the surroundings of the vehicle using information acquired by LiDAR and visible light images acquired by a visible light camera.
三次元画像処理部1017は、受信したポイントクラウド等の三次元マップ1032と、センサ情報1033から生成した自車両の周辺の三次元データ1034とを用いて、自車両の自己位置推定処理等を行う。なお、三次元画像処理部1017は、三次元マップ1032と三次元データ1034とを合成することで自車両の周辺の三次元データ1035を作成し、作成した三次元データ1035を用いて自己位置推定処理を行ってもよい。 The three-dimensional image processing unit 1017 performs processing such as estimating the vehicle's own position using a three-dimensional map 1032 such as a received point cloud and three-dimensional data 1034 of the surroundings of the vehicle generated from sensor information 1033. The three-dimensional image processing unit 1017 may also generate three-dimensional data 1035 of the surroundings of the vehicle by combining the three-dimensional map 1032 and the three-dimensional data 1034, and perform processing such as estimating the vehicle's own position using the generated three-dimensional data 1035.
三次元データ蓄積部1018は、三次元マップ1032、三次元データ1034及び三次元データ1035等を蓄積する。 The three-dimensional data storage unit 1018 stores three-dimensional map 1032, three-dimensional data 1034, three-dimensional data 1035, etc.
フォーマット変換部1019は、センサ情報1033を、受信側が対応しているフォーマットへ変換することでセンサ情報1037を生成する。なお、フォーマット変換部1019は、センサ情報1037を圧縮又は符号化することでデータ量を削減してもよい。また、フォーマット変換部1019は、フォーマット変換をする必要がない場合は処理を省略してもよい。また、フォーマット変換部1019は、送信範囲の指定に応じて送信するデータ量を制御してもよい。 The format conversion unit 1019 generates sensor information 1037 by converting the sensor information 1033 into a format supported by the receiving side. The format conversion unit 1019 may reduce the amount of data by compressing or encoding the sensor information 1037. The format conversion unit 1019 may also omit processing if format conversion is not necessary. The format conversion unit 1019 may also control the amount of data to be transmitted depending on the specified transmission range.
通信部1020は、サーバ901と通信し、データ送信要求(センサ情報の送信要求)などをサーバ901から受信する。 The communication unit 1020 communicates with the server 901 and receives data transmission requests (requests to transmit sensor information) and the like from the server 901.
送信制御部1021は、通信部1020を介して、対応フォーマット等の情報を通信先と交換し、通信を確立する。 The transmission control unit 1021 exchanges information such as supported formats with the communication destination via the communication unit 1020 and establishes communication.
データ送信部1022は、センサ情報1037をサーバ901に送信する。センサ情報1037は、例えば、LiDARで取得した情報、可視光カメラで取得した輝度画像、赤外線カメラで取得した赤外画像、デプスセンサで取得したデプス画像、センサ位置情報、及び速度情報など、複数のセンサ1015によって取得した情報を含む。 The data transmission unit 1022 transmits the sensor information 1037 to the server 901. The sensor information 1037 includes information acquired by multiple sensors 1015, such as information acquired by LiDAR, a luminance image acquired by a visible light camera, an infrared image acquired by an infrared camera, a depth image acquired by a depth sensor, sensor position information, and speed information.
次に、サーバ901の構成を説明する。図92は、サーバ901の構成例を示すブロック図である。サーバ901は、クライアント装置902から送信されたセンサ情報を受信し、受信したセンサ情報に基づいて三次元データを作成する。サーバ901は、作成した三次元データを用いて、サーバ901が管理する三次元マップを更新する。また、サーバ901は、クライアント装置902からの三次元マップの送信要求に応じて、更新した三次元マップをクライアント装置902に送信する。 Next, the configuration of the server 901 will be described. Figure 92 is a block diagram showing an example configuration of the server 901. The server 901 receives sensor information transmitted from the client device 902 and creates three-dimensional data based on the received sensor information. The server 901 uses the created three-dimensional data to update the three-dimensional map managed by the server 901. In addition, the server 901 transmits the updated three-dimensional map to the client device 902 in response to a request from the client device 902 to transmit the three-dimensional map.
サーバ901は、データ受信部1111と、通信部1112と、受信制御部1113と、フォーマット変換部1114と、三次元データ作成部1116と、三次元データ合成部1117と、三次元データ蓄積部1118と、フォーマット変換部1119と、通信部1120と、送信制御部1121と、データ送信部1122とを備える。 The server 901 includes a data receiving unit 1111, a communication unit 1112, a receiving control unit 1113, a format conversion unit 1114, a three-dimensional data creation unit 1116, a three-dimensional data synthesis unit 1117, a three-dimensional data storage unit 1118, a format conversion unit 1119, a communication unit 1120, a transmission control unit 1121, and a data transmission unit 1122.
データ受信部1111は、クライアント装置902からセンサ情報1037を受信する。センサ情報1037は、例えば、LiDARで取得した情報、可視光カメラで取得した輝度画像、赤外線カメラで取得した赤外画像、デプスセンサで取得したデプス画像、センサ位置情報、及び速度情報などを含む。 The data receiving unit 1111 receives sensor information 1037 from the client device 902. The sensor information 1037 includes, for example, information acquired by LiDAR, a luminance image acquired by a visible light camera, an infrared image acquired by an infrared camera, a depth image acquired by a depth sensor, sensor position information, and speed information.
通信部1112は、クライアント装置902と通信し、データ送信要求(例えば、センサ情報の送信要求)などをクライアント装置902に送信する。 The communication unit 1112 communicates with the client device 902 and sends data transmission requests (e.g., requests to transmit sensor information) to the client device 902.
受信制御部1113は、通信部1112を介して、対応フォーマット等の情報を通信先と交換し、通信を確立する。 The receiving control unit 1113 exchanges information such as supported formats with the communication destination via the communication unit 1112 and establishes communication.
フォーマット変換部1114は、受信したセンサ情報1037が圧縮又は符号化されている場合には、伸張又は復号処理を行うことでセンサ情報1132を生成する。なお、フォーマット変換部1114は、センサ情報1037が非圧縮データであれば、伸張又は復号処理を行わない。 If the received sensor information 1037 is compressed or encoded, the format conversion unit 1114 performs decompression or decoding processing to generate sensor information 1132. Note that if the sensor information 1037 is uncompressed data, the format conversion unit 1114 does not perform decompression or decoding processing.
三次元データ作成部1116は、センサ情報1132に基づいてクライアント装置902の周辺の三次元データ1134を作成する。例えば、三次元データ作成部1116は、LiDARで取得した情報と、可視光カメラで得られた可視光映像とを用いてクライアント装置902の周辺の色情報付ポイントクラウドデータを作成する。 The three-dimensional data creation unit 1116 creates three-dimensional data 1134 of the surroundings of the client device 902 based on the sensor information 1132. For example, the three-dimensional data creation unit 1116 creates point cloud data with color information of the surroundings of the client device 902 using information acquired by LiDAR and visible light images acquired by a visible light camera.
三次元データ合成部1117は、センサ情報1132を元に作成した三次元データ1134を、サーバ901が管理する三次元マップ1135に合成することで三次元マップ1135を更新する。 The three-dimensional data synthesis unit 1117 updates the three-dimensional map 1135 by synthesizing the three-dimensional data 1134 created based on the sensor information 1132 with the three-dimensional map 1135 managed by the server 901.
三次元データ蓄積部1118は、三次元マップ1135等を蓄積する。 The three-dimensional data storage unit 1118 stores three-dimensional maps 1135, etc.
フォーマット変換部1119は、三次元マップ1135を、受信側が対応しているフォーマットへ変換することで三次元マップ1031を生成する。なお、フォーマット変換部1119は、三次元マップ1135を圧縮又は符号化することでデータ量を削減してもよい。また、フォーマット変換部1119は、フォーマット変換をする必要がない場合は処理を省略してもよい。また、フォーマット変換部1119は、送信範囲の指定に応じて送信するデータ量を制御してもよい。 The format conversion unit 1119 generates the three-dimensional map 1031 by converting the three-dimensional map 1135 into a format supported by the receiving side. The format conversion unit 1119 may reduce the amount of data by compressing or encoding the three-dimensional map 1135. The format conversion unit 1119 may also omit processing if format conversion is not necessary. The format conversion unit 1119 may also control the amount of data to be transmitted depending on the specified transmission range.
通信部1120は、クライアント装置902と通信し、データ送信要求(三次元マップの送信要求)などをクライアント装置902から受信する。 The communication unit 1120 communicates with the client device 902 and receives data transmission requests (requests to transmit three-dimensional maps) and the like from the client device 902.
送信制御部1121は、通信部1120を介して、対応フォーマット等の情報を通信先と交換し、通信を確立する。 The transmission control unit 1121 exchanges information such as supported formats with the communication destination via the communication unit 1120 and establishes communication.
データ送信部1122は、三次元マップ1031をクライアント装置902に送信する。三次元マップ1031は、WLD又はSWLD等のポイントクラウドを含むデータである。三次元マップ1031には、圧縮データ、及び非圧縮データのどちらが含まれていてもよい。 The data transmission unit 1122 transmits the three-dimensional map 1031 to the client device 902. The three-dimensional map 1031 is data including a point cloud such as a WLD or SWLD. The three-dimensional map 1031 may include either compressed data or uncompressed data.
次に、クライアント装置902の動作フローについて説明する。図93は、クライアント装置902による三次元マップ取得時の動作を示すフローチャートである。Next, we will explain the operational flow of the client device 902. Figure 93 is a flowchart showing the operation of the client device 902 when acquiring a three-dimensional map.
まず、クライアント装置902は、サーバ901へ三次元マップ(ポイントクラウド等)の送信を要求する(S1001)。このとき、クライアント装置902は、GPS等で得られたクライアント装置902の位置情報を合わせて送信することで、その位置情報に関連する三次元マップの送信をサーバ901に要求してもよい。First, the client device 902 requests the server 901 to send a three-dimensional map (such as a point cloud) (S1001). At this time, the client device 902 may also send location information of the client device 902 obtained by GPS or the like, thereby requesting the server 901 to send a three-dimensional map related to that location information.
次に、クライアント装置902は、サーバ901から三次元マップを受信する(S1002)。受信した三次元マップが圧縮データであれば、クライアント装置902は、受信した三次元マップを復号して非圧縮の三次元マップを生成する(S1003)。Next, the client device 902 receives the three-dimensional map from the server 901 (S1002). If the received three-dimensional map is compressed data, the client device 902 decodes the received three-dimensional map to generate an uncompressed three-dimensional map (S1003).
次に、クライアント装置902は、複数のセンサ1015で得られたセンサ情報1033からクライアント装置902の周辺の三次元データ1034を作成する(S1004)。次に、クライアント装置902は、サーバ901から受信した三次元マップ1032と、センサ情報1033から作成した三次元データ1034とを用いてクライアント装置902の自己位置を推定する(S1005)。Next, the client device 902 creates three-dimensional data 1034 of the surroundings of the client device 902 from sensor information 1033 obtained by the multiple sensors 1015 (S1004). Next, the client device 902 estimates its own position using the three-dimensional map 1032 received from the server 901 and the three-dimensional data 1034 created from the sensor information 1033 (S1005).
図94は、クライアント装置902によるセンサ情報の送信時の動作を示すフローチャートである。まず、クライアント装置902は、サーバ901からセンサ情報の送信要求を受信する(S1011)。送信要求を受信したクライアント装置902は、センサ情報1037をサーバ901に送信する(S1012)。なお、クライアント装置902は、センサ情報1033が複数のセンサ1015で得られた複数の情報を含む場合、各情報を、各情報に適した圧縮方式で圧縮することでセンサ情報1037を生成してもよい。 Figure 94 is a flowchart showing the operation of the client device 902 when transmitting sensor information. First, the client device 902 receives a request to transmit sensor information from the server 901 (S1011). Upon receiving the transmission request, the client device 902 transmits the sensor information 1037 to the server 901 (S1012). Note that if the sensor information 1033 includes multiple pieces of information obtained from multiple sensors 1015, the client device 902 may generate the sensor information 1037 by compressing each piece of information using a compression method appropriate for that piece of information.
次に、サーバ901の動作フローについて説明する。図95は、サーバ901によるセンサ情報の取得時の動作を示すフローチャートである。まず、サーバ901は、クライアント装置902へセンサ情報の送信を要求する(S1021)。次に、サーバ901は、当該要求に応じてクライアント装置902から送信されたセンサ情報1037を受信する(S1022)。次に、サーバ901は、受信したセンサ情報1037を用いて三次元データ1134を作成する(S1023)。次に、サーバ901は、作成した三次元データ1134を三次元マップ1135に反映する(S1024)。 Next, the operational flow of the server 901 will be described. Figure 95 is a flowchart showing the operation of the server 901 when acquiring sensor information. First, the server 901 requests the client device 902 to transmit sensor information (S1021). Next, the server 901 receives the sensor information 1037 transmitted from the client device 902 in response to the request (S1022). Next, the server 901 creates three-dimensional data 1134 using the received sensor information 1037 (S1023). Next, the server 901 reflects the created three-dimensional data 1134 in the three-dimensional map 1135 (S1024).
図96は、サーバ901による三次元マップの送信時の動作を示すフローチャートである。まず、サーバ901は、クライアント装置902から三次元マップの送信要求を受信する(S1031)。三次元マップの送信要求を受信したサーバ901は、クライアント装置902へ三次元マップ1031を送信する(S1032)。このとき、サーバ901は、クライアント装置902の位置情報に合わせてその付近の三次元マップを抽出し、抽出した三次元マップを送信してもよい。また、サーバ901は、ポイントクラウドで構成される三次元マップを、例えば8分木構造による圧縮方式等を用いて圧縮し、圧縮後の三次元マップを送信してもよい。 Figure 96 is a flowchart showing the operation of the server 901 when transmitting a three-dimensional map. First, the server 901 receives a request to transmit a three-dimensional map from the client device 902 (S1031). Having received the request to transmit a three-dimensional map, the server 901 transmits a three-dimensional map 1031 to the client device 902 (S1032). At this time, the server 901 may extract a three-dimensional map of the vicinity based on the location information of the client device 902 and transmit the extracted three-dimensional map. The server 901 may also compress the three-dimensional map composed of a point cloud using, for example, a compression method with an octree structure, and transmit the compressed three-dimensional map.
以下、本実施の形態の変形例について説明する。 Below, we will explain some variations of this embodiment.
サーバ901は、クライアント装置902から受信したセンサ情報1037を用いてクライアント装置902の位置付近の三次元データ1134を作成する。次に、サーバ901は、作成した三次元データ1134と、サーバ901が管理する同エリアの三次元マップ1135とのマッチングを行うことによって、三次元データ1134と三次元マップ1135との差分を算出する。サーバ901は、差分が予め定められた閾値以上の場合は、クライアント装置902の周辺で何らかの異常が発生したと判断する。例えば、地震等の自然災害によって地盤沈下等が発生した際などに、サーバ901が管理する三次元マップ1135と、センサ情報1037を基に作成した三次元データ1134との間に大きな差が発生することが考えられる。 The server 901 creates three-dimensional data 1134 of the vicinity of the position of the client device 902 using the sensor information 1037 received from the client device 902. Next, the server 901 calculates the difference between the three-dimensional data 1134 and the three-dimensional map 1135 by matching the created three-dimensional data 1134 with a three-dimensional map 1135 of the same area managed by the server 901. If the difference is equal to or greater than a predetermined threshold, the server 901 determines that some kind of abnormality has occurred in the vicinity of the client device 902. For example, when ground subsidence occurs due to a natural disaster such as an earthquake, a large difference may occur between the three-dimensional map 1135 managed by the server 901 and the three-dimensional data 1134 created based on the sensor information 1037.
センサ情報1037は、センサの種類、センサの性能、及びセンサの型番のうち少なくとも一つを示す情報を含んでもよい。また、センサ情報1037に、センサの性能に応じたクラスID等が付加されてもよい。例えば、センサ情報1037がLiDARで取得された情報である場合、数mm単位の精度で情報を取得できるセンサをクラス1、数cm単位の精度で情報を取得できるセンサをクラス2、数m単位の精度で情報を取得できるセンサをクラス3のように、センサの性能に識別子を割り当てることが考えられる。また、サーバ901は、センサの性能情報等を、クライアント装置902の型番から推定してもよい。例えば、クライアント装置902が車両に搭載されている場合、サーバ901は、当該車両の車種からセンサのスペック情報を判断してもよい。この場合、サーバ901は、車両の車種の情報を事前に取得していてもよいし、センサ情報に、当該情報が含まれてもよい。また、サーバ901は取得したセンサ情報1037を用いて、センサ情報1037を用いて作成した三次元データ1134に対する補正の度合いを切り替えてもよい。例えば、センサ性能が高精度(クラス1)である場合、サーバ901は、三次元データ1134に対する補正を行わない。センサ性能が低精度(クラス3)である場合、サーバ901は、三次元データ1134に、センサの精度に応じた補正を適用する。例えば、サーバ901は、センサの精度が低いほど補正の度合い(強度)を強くする。 The sensor information 1037 may include information indicating at least one of the sensor type, sensor performance, and sensor model number. Furthermore, a class ID or the like according to the sensor performance may be added to the sensor information 1037. For example, if the sensor information 1037 is information acquired by LiDAR, an identifier may be assigned to the sensor performance, such as Class 1 for a sensor that can acquire information with an accuracy of several millimeters, Class 2 for a sensor that can acquire information with an accuracy of several centimeters, and Class 3 for a sensor that can acquire information with an accuracy of several meters. Furthermore, the server 901 may estimate the sensor performance information, etc., from the model number of the client device 902. For example, if the client device 902 is installed in a vehicle, the server 901 may determine the sensor specification information from the vehicle model. In this case, the server 901 may acquire vehicle model information in advance, or this information may be included in the sensor information. Furthermore, the server 901 may use the acquired sensor information 1037 to switch the degree of correction for the three-dimensional data 1134 created using the sensor information 1037. For example, if the sensor performance is high accuracy (class 1), the server 901 does not perform correction on the three-dimensional data 1134. If the sensor performance is low accuracy (class 3), the server 901 applies correction according to the accuracy of the sensor to the three-dimensional data 1134. For example, the server 901 increases the degree (strength) of correction as the accuracy of the sensor decreases.
サーバ901は、ある空間にいる複数のクライアント装置902に同時にセンサ情報の送信要求を出してもよい。サーバ901は、複数のクライアント装置902から複数のセンサ情報を受信した場合に、全てのセンサ情報を三次元データ1134の作成に利用する必要はなく、例えば、センサの性能に応じて、利用するセンサ情報を選択してもよい。例えば、サーバ901は、三次元マップ1135を更新する場合、受信した複数のセンサ情報の中から高精度なセンサ情報(クラス1)を選別し、選別したセンサ情報を用いて三次元データ1134を作成してもよい。 The server 901 may simultaneously issue requests to send sensor information to multiple client devices 902 in a certain space. When the server 901 receives multiple pieces of sensor information from multiple client devices 902, it is not necessary for the server 901 to use all of the sensor information to create the three-dimensional data 1134; for example, the server 901 may select the sensor information to use depending on the performance of the sensor. For example, when updating the three-dimensional map 1135, the server 901 may select high-precision sensor information (Class 1) from the multiple pieces of sensor information it has received, and use the selected sensor information to create the three-dimensional data 1134.
サーバ901は、交通監視クラウド等のサーバのみに限定されず、他のクライアント装置(車載)であってもよい。図97は、この場合のシステム構成を示す図である。 The server 901 is not limited to a server such as a traffic monitoring cloud, but may also be another client device (mounted in a vehicle). Figure 97 shows the system configuration in this case.
例えば、クライアント装置902Cが近くにいるクライアント装置902Aにセンサ情報の送信要求を出し、クライアント装置902Aからセンサ情報を取得する。そして、クライアント装置902Cは、取得したクライアント装置902Aのセンサ情報を用いて三次元データを作成し、クライアント装置902Cの三次元マップを更新する。これにより、クライアント装置902Cは、クライアント装置902Aから取得可能な空間の三次元マップを、クライアント装置902Cの性能を活かして生成できる。例えば、クライアント装置902Cの性能が高い場合に、このようなケースが発生すると考えられる。 For example, client device 902C issues a request to send sensor information to nearby client device 902A and acquires the sensor information from client device 902A. Client device 902C then creates three-dimensional data using the acquired sensor information from client device 902A and updates the three-dimensional map of client device 902C. This allows client device 902C to generate a three-dimensional map of the space that can be acquired from client device 902A, taking advantage of the performance of client device 902C. For example, it is thought that such a case will occur when client device 902C has high performance.
また、この場合、センサ情報を提供したクライアント装置902Aは、クライアント装置902Cが生成した高精度な三次元マップを取得する権利が与えられる。クライアント装置902Aは、その権利に従ってクライアント装置902Cから高精度な三次元マップを受信する。 In this case, client device 902A, which provided the sensor information, is granted the right to obtain the high-precision three-dimensional map generated by client device 902C. Client device 902A receives the high-precision three-dimensional map from client device 902C in accordance with that right.
また、クライアント装置902Cは近くにいる複数のクライアント装置902(クライアント装置902A及びクライアント装置902B)にセンサ情報の送信要求を出してもよい。クライアント装置902A又はクライアント装置902Bのセンサが高性能である場合には、クライアント装置902Cは、この高性能なセンサで得られたセンサ情報を用いて三次元データを作成できる。 Client device 902C may also issue requests to multiple nearby client devices 902 (client device 902A and client device 902B) to send sensor information. If the sensor of client device 902A or client device 902B is high performance, client device 902C can create three-dimensional data using the sensor information obtained by this high performance sensor.
図98は、サーバ901及びクライアント装置902の機能構成を示すブロック図である。サーバ901は、例えば、三次元マップを圧縮及び復号する三次元マップ圧縮/復号処理部1201と、センサ情報を圧縮及び復号するセンサ情報圧縮/復号処理部1202とを備える。 Figure 98 is a block diagram showing the functional configuration of the server 901 and the client device 902. The server 901 includes, for example, a three-dimensional map compression/decoding processing unit 1201 that compresses and decodes three-dimensional maps, and a sensor information compression/decoding processing unit 1202 that compresses and decodes sensor information.
クライアント装置902は、三次元マップ復号処理部1211と、センサ情報圧縮処理部1212とを備える。三次元マップ復号処理部1211は、圧縮された三次元マップの符号化データを受信し、符号化データを復号して三次元マップを取得する。センサ情報圧縮処理部1212は、取得したセンサ情報から作成した三次元データの代わりに、センサ情報そのものを圧縮し、圧縮したセンサ情報の符号化データをサーバ901へ送信する。この構成により、クライアント装置902は、三次元マップ(ポイントクラウド等)を復号する処理を行う処理部(装置又はLSI)を内部に保持すればよく、三次元マップ(ポイントクラウド等)の三次元データを圧縮する処理を行う処理部を内部に保持する必要がない。これにより、クライアント装置902のコスト及び消費電力等を抑えることができる。 The client device 902 comprises a three-dimensional map decoding processing unit 1211 and a sensor information compression processing unit 1212. The three-dimensional map decoding processing unit 1211 receives encoded data of the compressed three-dimensional map and decodes the encoded data to obtain the three-dimensional map. The sensor information compression processing unit 1212 compresses the sensor information itself instead of the three-dimensional data created from the acquired sensor information, and transmits the encoded data of the compressed sensor information to the server 901. With this configuration, the client device 902 only needs to internally include a processing unit (device or LSI) that performs the processing to decode the three-dimensional map (point cloud, etc.), and does not need to internally include a processing unit that performs the processing to compress the three-dimensional data of the three-dimensional map (point cloud, etc.). This allows the cost and power consumption of the client device 902 to be reduced.
以上のように、本実施の形態に係るクライアント装置902は、移動体に搭載され、移動体に搭載されたセンサ1015により得られた、移動体の周辺状況を示すセンサ情報1033から、移動体の周辺の三次元データ1034を作成する。クライアント装置902は、作成された三次元データ1034を用いて移動体の自己位置を推定する。クライアント装置902は、取得したセンサ情報1033をサーバ901又は他のクライアント装置902に送信する。 As described above, the client device 902 according to this embodiment is mounted on a mobile body and creates three-dimensional data 1034 of the surroundings of the mobile body from sensor information 1033 indicating the surrounding conditions of the mobile body, obtained by the sensor 1015 mounted on the mobile body. The client device 902 estimates the self-position of the mobile body using the created three-dimensional data 1034. The client device 902 transmits the acquired sensor information 1033 to the server 901 or another client device 902.
これによれば、クライアント装置902は、センサ情報1033をサーバ901等に送信する。これにより、三次元データを送信する場合に比べて、送信データのデータ量を削減できる可能性がある。また、三次元データの圧縮又は符号化等の処理をクライアント装置902で行う必要がないので、クライアント装置902の処理量を削減できる。よって、クライアント装置902は、伝送されるデータ量の削減、又は、装置の構成の簡略化を実現できる。 According to this, the client device 902 transmits sensor information 1033 to the server 901, etc. This may reduce the amount of data transmitted compared to when transmitting three-dimensional data. In addition, since the client device 902 does not need to perform processes such as compressing or encoding the three-dimensional data, the amount of processing by the client device 902 can be reduced. Therefore, the client device 902 can reduce the amount of data transmitted or simplify the device configuration.
また、クライアント装置902は、さらに、サーバ901に三次元マップの送信要求を送信し、サーバ901から三次元マップ1031を受信する。クライアント装置902は、自己位置の推定では、三次元データ1034と三次元マップ1032とを用いて、自己位置を推定する。 The client device 902 also transmits a request to the server 901 to send a three-dimensional map, and receives the three-dimensional map 1031 from the server 901. The client device 902 estimates its own location using the three-dimensional data 1034 and the three-dimensional map 1032.
また、センサ情報1033は、レーザセンサで得られた情報、輝度画像、赤外画像、デプス画像、センサの位置情報、及びセンサの速度情報のうち少なくとも一つを含む。 In addition, the sensor information 1033 includes at least one of information obtained by a laser sensor, a brightness image, an infrared image, a depth image, sensor position information, and sensor speed information.
また、センサ情報1033は、センサの性能を示す情報を含む。 In addition, sensor information 1033 includes information indicating the performance of the sensor.
また、クライアント装置902は、センサ情報1033を符号化又は圧縮し、センサ情報の送信では、符号化又は圧縮後のセンサ情報1037を、サーバ901又は他のクライアント装置902に送信する。これによれば、クライアント装置902は、伝送されるデータ量を削減できる。 In addition, the client device 902 encodes or compresses the sensor information 1033, and when transmitting the sensor information, transmits the encoded or compressed sensor information 1037 to the server 901 or another client device 902. This allows the client device 902 to reduce the amount of data transmitted.
例えば、クライアント装置902は、プロセッサと、メモリとを備え、プロセッサは、メモリを用いて、上記の処理を行う。 For example, the client device 902 has a processor and memory, and the processor uses the memory to perform the above processing.
また、本実施の形態に係るサーバ901は、移動体に搭載されるクライアント装置902と通信可能であり、移動体に搭載されたセンサ1015により得られた、移動体の周辺状況を示すセンサ情報1037をクライアント装置902から受信する。サーバ901は、受信したセンサ情報1037から、移動体の周辺の三次元データ1134を作成する。 In addition, the server 901 according to this embodiment is capable of communicating with a client device 902 mounted on the mobile body, and receives from the client device 902 sensor information 1037 indicating the surrounding conditions of the mobile body, obtained by a sensor 1015 mounted on the mobile body. The server 901 creates three-dimensional data 1134 of the surroundings of the mobile body from the received sensor information 1037.
これによれば、サーバ901は、クライアント装置902から送信されたセンサ情報1037を用いて三次元データ1134を作成する。これにより、クライアント装置902が三次元データを送信する場合に比べて、送信データのデータ量を削減できる可能性がある。また、三次元データの圧縮又は符号化等の処理をクライアント装置902で行う必要がないので、クライアント装置902の処理量を削減できる。よって、サーバ901は、伝送されるデータ量の削減、又は、装置の構成の簡略化を実現できる。 According to this, the server 901 creates three-dimensional data 1134 using sensor information 1037 transmitted from the client device 902. This potentially reduces the amount of data transmitted compared to when the client device 902 transmits the three-dimensional data. In addition, since the client device 902 does not need to perform processes such as compressing or encoding the three-dimensional data, the amount of processing required by the client device 902 can be reduced. Therefore, the server 901 can reduce the amount of data transmitted or simplify the device configuration.
また、サーバ901は、さらに、クライアント装置902にセンサ情報の送信要求を送信する。 The server 901 also sends a request to the client device 902 to send sensor information.
また、サーバ901は、さらに、作成された三次元データ1134を用いて三次元マップ1135を更新し、クライアント装置902からの三次元マップ1135の送信要求に応じて三次元マップ1135をクライアント装置902に送信する。 The server 901 further updates the three-dimensional map 1135 using the created three-dimensional data 1134 and transmits the three-dimensional map 1135 to the client device 902 in response to a request from the client device 902 to transmit the three-dimensional map 1135.
また、センサ情報1037は、レーザセンサで得られた情報、輝度画像、赤外画像、デプス画像、センサの位置情報、及びセンサの速度情報のうち少なくとも一つを含む。 In addition, the sensor information 1037 includes at least one of information obtained by a laser sensor, a brightness image, an infrared image, a depth image, sensor position information, and sensor velocity information.
また、センサ情報1037は、センサの性能を示す情報を含む。 Sensor information 1037 also includes information indicating the performance of the sensor.
また、サーバ901は、さらに、センサの性能に応じて、三次元データを補正する。これによれば、当該三次元データ作成方法は、三次元データの品質を向上できる。 The server 901 also corrects the three-dimensional data according to the performance of the sensor. This allows the three-dimensional data creation method to improve the quality of the three-dimensional data.
また、サーバ901は、センサ情報の受信では、複数のクライアント装置902から複数のセンサ情報1037を受信し、複数のセンサ情報1037に含まれるセンサの性能を示す複数の情報に基づき、三次元データ1134の作成に用いるセンサ情報1037を選択する。これによれば、サーバ901は、三次元データ1134の品質を向上できる。 Furthermore, when receiving sensor information, the server 901 receives multiple pieces of sensor information 1037 from multiple client devices 902, and selects the sensor information 1037 to use in creating the three-dimensional data 1134 based on multiple pieces of information indicating the performance of the sensors contained in the multiple pieces of sensor information 1037. This allows the server 901 to improve the quality of the three-dimensional data 1134.
また、サーバ901は、受信したセンサ情報1037を復号又は伸張し、復号又は伸張後のセンサ情報1132から、三次元データ1134を作成する。これによれば、サーバ901は、伝送されるデータ量を削減できる。 The server 901 also decodes or decompresses the received sensor information 1037 and creates three-dimensional data 1134 from the decoded or decompressed sensor information 1132. This allows the server 901 to reduce the amount of data transmitted.
例えば、サーバ901は、プロセッサと、メモリとを備え、プロセッサは、メモリを用いて、上記の処理を行う。 For example, server 901 has a processor and memory, and the processor uses the memory to perform the above processing.
以下、変形例について説明する。図99は、本実施の形態に係るシステムの構成を示す図である。図99に示すシステムは、サーバ2001と、クライアント装置2002Aと、クライアント装置2002Bとを含む。 Below, we will explain a modified example. Figure 99 is a diagram showing the configuration of a system related to this embodiment. The system shown in Figure 99 includes a server 2001, a client device 2002A, and a client device 2002B.
クライアント装置2002A及びクライアント装置2002Bは、車両等の移動体に搭載され、センサ情報をサーバ2001に送信する。サーバ2001は、三次元マップ(ポイントクラウド)をクライアント装置2002A及びクライアント装置2002Bに送信する。 Client device 2002A and client device 2002B are mounted on a moving object such as a vehicle and transmit sensor information to server 2001. Server 2001 transmits a three-dimensional map (point cloud) to client device 2002A and client device 2002B.
クライアント装置2002Aは、センサ情報取得部2011と、記憶部2012と、データ送信可否判定部2013とを備える。なお、クライアント装置2002Bの構成も同様である。また、以下ではクライアント装置2002Aとクライアント装置2002Bとを特に区別しない場合には、クライアント装置2002とも記載する。 Client device 2002A comprises a sensor information acquisition unit 2011, a memory unit 2012, and a data transmission feasibility determination unit 2013. Client device 2002B has a similar configuration. In the following, when there is no particular distinction between client device 2002A and client device 2002B, they will also be referred to as client device 2002.
図100は、本実施の形態に係るクライアント装置2002の動作を示すフローチャートである。 Figure 100 is a flowchart showing the operation of the client device 2002 in this embodiment.
センサ情報取得部2011は、移動体に搭載されたセンサ(センサ群)を用いて各種センサ情報を取得する。つまり、センサ情報取得部2011は、移動体に搭載されたセンサ(センサ群)により得られた、移動体の周辺状況を示すセンサ情報を取得する。また、センサ情報取得部2011は、取得したセンサ情報を記憶部2012に記憶する。このセンサ情報は、LiDAR取得情報、可視光画像、赤外画像及びデプス画像の少なくとも一つを含む。また、センサ情報は、センサ位置情報、速度情報、取得時刻情報、及び取得場所情報の少なくとも一つを含んでもよい。センサ位置情報は、センサ情報を取得したセンサの位置を示す。速度情報は、センサがセンサ情報を取得した際の移動体の速度を示す。取得時刻情報は、センサ情報がセンサにより取得された時刻を示す。取得場所情報は、センサ情報がセンサにより取得された際の移動体又はセンサの位置を示す。 The sensor information acquisition unit 2011 acquires various sensor information using a sensor (sensor group) mounted on the mobile body. In other words, the sensor information acquisition unit 2011 acquires sensor information indicating the surrounding conditions of the mobile body, obtained by the sensor (sensor group) mounted on the mobile body. The sensor information acquisition unit 2011 also stores the acquired sensor information in the memory unit 2012. This sensor information includes at least one of LiDAR acquisition information, visible light images, infrared images, and depth images. The sensor information may also include at least one of sensor position information, speed information, acquisition time information, and acquisition location information. The sensor position information indicates the position of the sensor that acquired the sensor information. The speed information indicates the speed of the mobile body when the sensor acquired the sensor information. The acquisition time information indicates the time when the sensor information was acquired by the sensor. The acquisition location information indicates the position of the mobile body or sensor when the sensor information was acquired by the sensor.
次に、データ送信可否判定部2013は、移動体(クライアント装置2002)がサーバ2001へセンサ情報を送信可能な環境に存在するかを判定する(S2002)。例えば、データ送信可否判定部2013は、GPS等の情報を用いて、クライアント装置2002がいる場所及び時刻を特定し、データを送信可能かどうかを判定してもよい。また、データ送信可否判定部2013は、特定のアクセスポイントに接続できるかどうかで、データを送信可能かどうかを判定してもよい。 Next, the data transmission possibility determination unit 2013 determines whether the mobile body (client device 2002) is in an environment where it can transmit sensor information to the server 2001 (S2002). For example, the data transmission possibility determination unit 2013 may use information such as GPS to identify the location and time of the client device 2002 and determine whether data can be transmitted. The data transmission possibility determination unit 2013 may also determine whether data can be transmitted based on whether it can connect to a specific access point.
クライアント装置2002は、移動体がサーバ2001へセンサ情報を送信可能な環境に存在すると判定した場合(S2002でYes)、センサ情報をサーバ2001に送信する(S2003)。つまり、クライアント装置2002がセンサ情報をサーバ2001に送信できるような状況になった時点で、クライアント装置2002は、保持しているセンサ情報をサーバ2001に送信する。例えば、交差点等に高速通信が可能なミリ波のアクセスポイントが設置される。クライアント装置2002は、交差点内に入った時点で、ミリ波通信を用いてクライアント装置2002が保持するセンサ情報を高速にサーバ2001に送信する。 When the client device 2002 determines that the mobile object is in an environment where it can transmit sensor information to the server 2001 (Yes in S2002), it transmits the sensor information to the server 2001 (S2003). In other words, when the client device 2002 is in a situation where it can transmit sensor information to the server 2001, the client device 2002 transmits the sensor information it holds to the server 2001. For example, a millimeter wave access point capable of high-speed communication is installed at an intersection, etc. When the client device 2002 enters the intersection, it uses millimeter wave communication to transmit the sensor information it holds to the server 2001 at high speed.
次に、クライアント装置2002は、サーバ2001に送信済みのセンサ情報を記憶部2012から削除する(S2004)。なお、クライアント装置2002は、サーバ2001に送信していないセンサ情報が所定の条件を満たした場合に、当該センサ情報を削除してもよい。例えば、クライアント装置2002は、保持するセンサ情報の取得時刻が現在時刻から一定時刻前より古くなった時点でそのセンサ情報を記憶部2012から削除してもよい。つまり、クライアント装置2002は、センサ情報がセンサにより取得された時刻と、現在の時刻との差が、予め定められた時間を超えた場合にセンサ情報を記憶部2012から削除してもよい。また、クライアント装置2002は、保持するセンサ情報の取得場所が現在地点から一定距離より離れた時点でそのセンサ情報を記憶部2012から削除してもよい。つまり、クライアント装置2002は、センサ情報がセンサにより取得された際の移動体又はセンサの位置と、現在の移動体又はセンサの位置との差が、予め定められた距離を超えた場合にセンサ情報を記憶部2012から削除してもよい。これにより、クライアント装置2002の記憶部2012の容量を抑制することができる。Next, the client device 2002 deletes the sensor information that has been transmitted to the server 2001 from the storage unit 2012 (S2004). The client device 2002 may delete sensor information that has not been transmitted to the server 2001 if the sensor information satisfies a predetermined condition. For example, the client device 2002 may delete the sensor information from the storage unit 2012 when the acquisition time of the retained sensor information becomes older than a predetermined time from the current time. In other words, the client device 2002 may delete the sensor information from the storage unit 2012 when the difference between the time the sensor information was acquired by the sensor and the current time exceeds a predetermined time. The client device 2002 may also delete the sensor information from the storage unit 2012 when the location where the retained sensor information was acquired becomes more than a predetermined distance away from the current location. In other words, the client device 2002 may delete the sensor information from the storage unit 2012 when the difference between the position of the mobile object or sensor when the sensor information was acquired by the sensor and the current position of the mobile object or sensor exceeds a predetermined distance. This makes it possible to reduce the capacity of the storage unit 2012 of the client device 2002 .
クライアント装置2002によるセンサ情報の取得が終了していない場合(S2005でNo)、クライアント装置2002は、ステップS2001以降の処理を再度行う。また、クライアント装置2002によるセンサ情報の取得が終了した場合(S2005でYes)、クライアント装置2002は処理を終了する。 If the client device 2002 has not finished acquiring sensor information (No in S2005), the client device 2002 performs the processing from step S2001 onwards again. Also, if the client device 2002 has finished acquiring sensor information (Yes in S2005), the client device 2002 ends the processing.
また、クライアント装置2002はサーバ2001に送信するセンサ情報を通信状況に合わせて選択してもよい。例えば、クライアント装置2002は、高速通信が可能な場合は、記憶部2012に保持されるサイズが大きいセンサ情報(例えばLiDAR取得情報等)を優先して送信する。また、クライアント装置2002は、高速通信が難しい場合は、記憶部2012に保持されるサイズが小さく優先度の高いセンサ情報(例えば可視光画像)を送信する。これにより、クライアント装置2002は記憶部2012に保持したセンサ情報をネットワークの状況に応じて効率的にサーバ2001に送信できる。 The client device 2002 may also select the sensor information to be transmitted to the server 2001 in accordance with the communication conditions. For example, when high-speed communication is possible, the client device 2002 will prioritize transmitting sensor information that is large in size and stored in the memory unit 2012 (e.g., LiDAR acquisition information, etc.). When high-speed communication is difficult, the client device 2002 will transmit sensor information that is small in size and has a high priority and is stored in the memory unit 2012 (e.g., visible light images). This allows the client device 2002 to efficiently transmit the sensor information stored in the memory unit 2012 to the server 2001 in accordance with the network conditions.
また、クライアント装置2002は、上記現在時刻を示す時刻情報、及び、現在地点を示す場所情報をサーバ2001から取得してもよい。また、クライアント装置2002は、取得した時刻情報及び場所情報に基づきセンサ情報の取得時刻及び取得場所を決定してもよい。つまり、クライアント装置2002は、サーバ2001から時刻情報を取得し、取得した時刻情報を用いて取得時刻情報を生成してもよい。また、クライアント装置2002は、サーバ2001から場所情報を取得し、取得した場所情報を用いて取得場所情報を生成してもよい。 The client device 2002 may also acquire time information indicating the current time and location information indicating the current location from the server 2001. The client device 2002 may also determine the acquisition time and acquisition location of the sensor information based on the acquired time information and location information. In other words, the client device 2002 may acquire time information from the server 2001 and generate acquired time information using the acquired time information. The client device 2002 may also acquire location information from the server 2001 and generate acquired location information using the acquired location information.
例えば時刻情報については、サーバ2001とクライアント装置2002とはNTP(Network Time Protocol)、又はPTP(Precision Time Protocol)等の仕組みを用いて時刻同期を行う。これにより、クライアント装置2002は正確な時刻情報を取得できる。また、サーバ2001と複数のクライアント装置との間で時刻を同期できるので、別々のクライアント装置2002が取得したセンサ情報内の時刻を同期できる。よって、サーバ2001は、同期された時刻を示すセンサ情報を取り扱える。なお、時刻同期の仕組みはNTP又はPTP以外のどのような方法でも構わない。また、上記時刻情報及び場所情報としてGPSの情報が用いられてもよい。 For example, with regard to time information, the server 2001 and client device 2002 synchronize their time using a mechanism such as NTP (Network Time Protocol) or PTP (Precision Time Protocol). This allows the client device 2002 to obtain accurate time information. Furthermore, since time can be synchronized between the server 2001 and multiple client devices, the time in the sensor information obtained by different client devices 2002 can be synchronized. Therefore, the server 2001 can handle sensor information that indicates synchronized time. Note that the time synchronization mechanism may be any method other than NTP or PTP. GPS information may also be used as the above-mentioned time information and location information.
サーバ2001は、時刻又は場所を指定して複数のクライアント装置2002からセンサ情報を取得しても構わない。例えば何らかの事故が発生した場合に、その付近にいたクライアントを探すため、サーバ2001は、事故発生時刻と場所を指定して複数のクライアント装置2002にセンサ情報送信要求をブロードキャスト送信する。そして、該当する時刻と場所のセンサ情報を持つクライアント装置2002は、サーバ2001にセンサ情報を送信する。つまり、クライアント装置2002は、サーバ2001から場所及び時刻を指定する指定情報を含むセンサ情報送信要求を受信する。クライアント装置2002は、記憶部2012に、指定情報で示される場所及び時刻において得られたセンサ情報が記憶されており、かつ、移動体がサーバ2001へセンサ情報を送信可能な環境に存在すると判定した場合、指定情報で示される場所及び時刻において得られたセンサ情報をサーバ2001に送信する。これにより、サーバ2001は、事故の発生に関連するセンサ情報を複数のクライアント装置2002から取得し、事故解析等に利用できる。 The server 2001 may acquire sensor information from multiple client devices 2002 by specifying a time or location. For example, if an accident occurs, in order to search for clients who were nearby, the server 2001 broadcasts a sensor information transmission request to multiple client devices 2002, specifying the time and location of the accident. Then, the client device 2002 that has sensor information for the corresponding time and location transmits the sensor information to the server 2001. In other words, the client device 2002 receives a sensor information transmission request from the server 2001, including specification information that specifies the location and time. If the client device 2002 determines that sensor information obtained at the location and time indicated by the specification information is stored in the memory unit 2012 and that a mobile object is in an environment where it can transmit sensor information to the server 2001, it transmits the sensor information obtained at the location and time indicated by the specification information to the server 2001. In this way, the server 2001 can acquire sensor information related to the occurrence of an accident from multiple client devices 2002 and use it for accident analysis, etc.
なお、クライアント装置2002は、サーバ2001からのセンサ情報送信要求を受信した場合に、センサ情報の送信を拒否してもよい。また、複数のセンサ情報のうち、どのセンサ情報を送信可能かどうかを事前にクライアント装置2002が設定してもよい。または、サーバ2001は、センサ情報の送信の可否を都度クライアント装置2002に問い合わせてもよい。 When the client device 2002 receives a request to send sensor information from the server 2001, the client device 2002 may refuse to send the sensor information. The client device 2002 may also set in advance which of multiple pieces of sensor information are available for transmission. Alternatively, the server 2001 may inquire of the client device 2002 each time whether or not it is possible to send the sensor information.
また、サーバ2001にセンサ情報を送信したクライアント装置2002にはポイントが付与されてもよい。このポイントは、例えば、ガソリン購入費、EV(Electric Vehicle)の充電費、高速道路の通行料、又はレンタカー費用などの支払いに使用できる。また、サーバ2001は、センサ情報を取得した後、センサ情報の送信元のクライアント装置2002を特定するための情報を削除してもよい。例えば、この情報は、クライアント装置2002のネットワークアドレスなどの情報である。これによりセンサ情報を匿名化することができるので、クライアント装置2002のユーザは安心して、クライアント装置2002からセンサ情報をサーバ2001に送信できる。また、サーバ2001は、複数のサーバから構成されてもよい。例えば複数のサーバでセンサ情報が共有化されることで、あるサーバが故障しても他のサーバがクライアント装置2002と通信できる。これにより、サーバ故障によるサービスの停止を回避できる。 Points may also be awarded to client devices 2002 that transmit sensor information to server 2001. These points can be used, for example, to pay for gasoline purchases, EV (electric vehicle) charging fees, highway tolls, or rental car fees. After acquiring the sensor information, server 2001 may delete information for identifying the client device 2002 that transmitted the sensor information. For example, this information may be information such as the network address of client device 2002. This allows the sensor information to be anonymized, allowing users of client device 2002 to transmit sensor information to server 2001 with peace of mind. Server 2001 may also be composed of multiple servers. For example, by sharing sensor information among multiple servers, even if one server fails, other servers can communicate with client device 2002. This makes it possible to avoid service interruptions due to server failures.
また、センサ情報送信要求で指定される指定場所は事故の発生位置などを示すものであり、センサ情報送信要求で指定される指定時刻におけるクライアント装置2002の位置とは異なることがある。よって、サーバ2001は、例えば、指定場所として周辺XXm以内などの範囲を指定することで、当該範囲内に存在するクライアント装置2002に対して情報取得を要求できる。指定時刻についても同様に、サーバ2001は、ある時刻から前後N秒以内など範囲を指定してもよい。これにより、サーバ2001は、「時刻:t-Nからt+Nにおいて、場所:絶対位置SからXXm以内」に存在していたクライアント装置2002からセンサ情報が取得できる。クライアント装置2002は、LiDARなどの三次元データを送信する際に、時刻tの直後に生成したデータを送信してもよい。 The specified location specified in the sensor information transmission request indicates the location of an accident, etc., and may differ from the location of the client device 2002 at the specified time specified in the sensor information transmission request. Therefore, the server 2001 can specify a range, such as within XX meters of the specified location, to request information acquisition from client devices 2002 located within that range. Similarly, for the specified time, the server 2001 may specify a range, such as within N seconds before or after a certain time. This allows the server 2001 to acquire sensor information from client devices 2002 that were located "at a location: within XX meters of absolute position S, from time: t-N to t+N." When transmitting three-dimensional data such as LiDAR, the client device 2002 may transmit data generated immediately after time t.
また、サーバ2001は、指定場所として、センサ情報取得対象となるクライアント装置2002の場所を示す情報と、センサ情報が欲しい場所とをそれぞれ別に指定してもよい。例えば、サーバ2001は、絶対位置SからYYmの範囲を少なくとも含むセンサ情報を、絶対位置SからXXm以内に存在したクライアント装置2002から取得することを指定する。クライアント装置2002は、送信する三次元データを選択する際には、指定された範囲のセンサ情報を少なくとも含むように、1つ以上のランダムアクセス可能な単位の三次元データを選択する。また、クライアント装置2002は、可視光画像を送信する際は、少なくとも時刻tの直前又は直後のフレームを含む、時間的に連続した複数の画像データを送信してもよい。 Furthermore, the server 2001 may separately specify, as the specified location, information indicating the location of the client device 2002 from which sensor information is to be acquired and the location from which sensor information is desired. For example, the server 2001 specifies that sensor information including at least a range of YYm from absolute position S is to be acquired from client devices 2002 located within XXm of absolute position S. When selecting three-dimensional data to transmit, the client device 2002 selects one or more randomly accessible units of three-dimensional data so as to include at least the sensor information in the specified range. Furthermore, when transmitting visible light images, the client device 2002 may transmit multiple temporally consecutive image data sets including at least the frames immediately before or after time t.
クライアント装置2002が5G或いはWiFi、又は、5Gにおける複数モードなど、複数の物理ネットワークをセンサ情報の送信に利用できる場合には、クライアント装置2002は、サーバ2001から通知された優先順位に従って利用するネットワークを選択してもよい。または、クライアント装置2002自身が送信データのサイズに基づいて適切な帯域を確保できるネットワークを選択してもよい。または、クライアント装置2002は、データ送信にかかる費用等に基づいて利用するネットワークを選択してもよい。また、サーバ2001からの送信要求には、クライアント装置2002が時刻Tまでに送信を開始可能な場合に送信を行う、など、送信期限を示す情報が含まれてもよい。サーバ2001は、期限内に十分なセンサ情報が取得できなければ再度送信要求を発行してもよい。 If the client device 2002 can use multiple physical networks, such as 5G or Wi-Fi, or multiple modes in 5G, to transmit sensor information, the client device 2002 may select a network to use according to the priority notified by the server 2001. Alternatively, the client device 2002 itself may select a network that can ensure an appropriate bandwidth based on the size of the transmission data. Alternatively, the client device 2002 may select a network to use based on the cost of data transmission, etc. In addition, the transmission request from the server 2001 may include information indicating a transmission deadline, such as that the client device 2002 will transmit if it is able to start transmission by time T. The server 2001 may issue a transmission request again if it is unable to obtain sufficient sensor information within the deadline.
センサ情報は、圧縮又は非圧縮のセンサデータと共に、センサデータの特性を示すヘッダ情報を含んでもよい。クライアント装置2002は、ヘッダ情報を、センサデータとは異なる物理ネットワーク又は通信プロトコルを介してサーバ2001に送信してもよい。例えば、クライアント装置2002は、センサデータの送信に先立ってヘッダ情報をサーバ2001に送信する。サーバ2001は、ヘッダ情報の解析結果に基づいてクライアント装置2002のセンサデータを取得するかどうかを判断する。例えば、ヘッダ情報は、LiDARの点群取得密度、仰角、或いはフレームレート、又は、可視光画像の解像度、SN比、或いはフレームレートなどを示す情報を含んでもよい。これにより、サーバ2001は、決定した品質のセンサデータを有するクライアント装置2002からセンサ情報を取得できる。 The sensor information may include header information indicating characteristics of the sensor data along with compressed or uncompressed sensor data. The client device 2002 may transmit the header information to the server 2001 via a different physical network or communication protocol than that used for transmitting the sensor data. For example, the client device 2002 transmits the header information to the server 2001 prior to transmitting the sensor data. The server 2001 determines whether to acquire the sensor data of the client device 2002 based on the analysis results of the header information. For example, the header information may include information indicating the LiDAR point cloud acquisition density, elevation angle, or frame rate, or the resolution, signal-to-noise ratio, or frame rate of the visible light image. This allows the server 2001 to acquire sensor information from the client device 2002 having sensor data of the determined quality.
以上のように、クライアント装置2002は、移動体に搭載され、移動体に搭載されたセンサにより得られた、移動体の周辺状況を示すセンサ情報を取得し、センサ情報を記憶部2012に記憶する。クライアント装置2002は、移動体がサーバ2001へセンサ情報を送信可能な環境に存在するかを判定し、移動体がサーバへセンサ情報を送信可能な環境に存在すると判定した場合、センサ情報をサーバ2001に送信する。 As described above, the client device 2002 is mounted on a mobile object, acquires sensor information indicating the surrounding conditions of the mobile object obtained by sensors mounted on the mobile object, and stores the sensor information in the memory unit 2012. The client device 2002 determines whether the mobile object is in an environment where it can transmit the sensor information to the server 2001, and if it determines that the mobile object is in an environment where it can transmit the sensor information to the server, it transmits the sensor information to the server 2001.
また、クライアント装置2002は、さらに、センサ情報から、移動体の周辺の三次元データを作成し、作成された三次元データを用いて移動体の自己位置を推定する。 In addition, the client device 2002 further creates three-dimensional data of the surroundings of the mobile body from the sensor information and estimates the mobile body's own position using the created three-dimensional data.
また、クライアント装置2002は、さらに、サーバ2001に三次元マップの送信要求を送信し、サーバ2001から三次元マップを受信する。クライアント装置2002は、自己位置の推定では、三次元データと三次元マップとを用いて、自己位置を推定する。 The client device 2002 further transmits a request to the server 2001 to send a three-dimensional map and receives the three-dimensional map from the server 2001. The client device 2002 estimates its own location using the three-dimensional data and the three-dimensional map.
なお、上記クライアント装置2002による処理は、クライアント装置2002における情報送信方法として実現されてもよい。 In addition, the processing by the above-mentioned client device 2002 may be realized as an information transmission method in the client device 2002.
また、クライアント装置2002は、プロセッサと、メモリとを備え、プロセッサは、メモリを用いて、上記の処理を行ってもよい。 The client device 2002 may also be equipped with a processor and memory, and the processor may use the memory to perform the above processing.
次に、本実施の形態に係るセンサ情報収集システムについて説明する。図101は、本実施の形態に係るセンサ情報収集システムの構成を示す図である。図101に示すように本実施の形態に係るセンサ情報収集システムは、端末2021Aと、端末2021Bと、通信装置2022Aと、通信装置2022Bと、ネットワーク2023と、データ収集サーバ2024と、地図サーバ2025と、クライアント装置2026とを含む。なお、端末2021A及び端末2021Bを特に区別しない場合には端末2021とも記載する。通信装置2022A及び通信装置2022Bを特に区別しない場合には通信装置2022とも記載する。 Next, a sensor information collection system according to this embodiment will be described. Figure 101 is a diagram showing the configuration of a sensor information collection system according to this embodiment. As shown in Figure 101, the sensor information collection system according to this embodiment includes a terminal 2021A, a terminal 2021B, a communication device 2022A, a communication device 2022B, a network 2023, a data collection server 2024, a map server 2025, and a client device 2026. Note that when there is no particular distinction between terminal 2021A and terminal 2021B, they are also referred to as terminal 2021. When there is no particular distinction between communication device 2022A and communication device 2022B, they are also referred to as communication device 2022.
データ収集サーバ2024は、端末2021が備えるセンサで得られたセンサデータなどのデータを三次元空間中の位置と対応付けられた位置関連データとして収集する。 The data collection server 2024 collects data such as sensor data obtained by sensors equipped in the terminal 2021 as location-related data associated with positions in three-dimensional space.
センサデータとは、例えば、端末2021の周囲の状態または端末2021の内部の状態などを、端末2021が備えるセンサを用いて取得したデータである。端末2021は、端末2021と直接通信可能、又は同一の通信方式で一或いは複数の中継装置を中継して通信可能な位置にある一又は複数のセンサ機器から収集したセンサデータをデータ収集サーバ2024に送信する。 Sensor data is, for example, data acquired by using a sensor equipped in terminal 2021, such as the state of the surroundings of terminal 2021 or the state of the interior of terminal 2021. Terminal 2021 transmits sensor data collected from one or more sensor devices located in positions that can communicate with terminal 2021 directly or via one or more relay devices using the same communication method to data collection server 2024.
位置関連データに含まれるデータは、例えば、端末自身又は端末が備える機器の動作状態、動作ログ、サービスの利用状況などを示す情報を含んでいてもよい。また、位置関連データに含まれるデータは、端末2021の識別子と端末2021の位置又は移動経路などとを対応付けた情報などを含んでもよい。 Data included in the location-related data may include, for example, information indicating the operating status of the terminal itself or the equipment included in the terminal, operation logs, service usage status, etc. Data included in the location-related data may also include information associating the identifier of the terminal 2021 with the location or movement route of the terminal 2021, etc.
位置関連データに含まれる、位置を示す情報は、例えば三次元地図データなどの三次元データにおける位置を示す情報と対応付けられている。位置を示す情報の詳細については後述する。 The information indicating a location included in the location-related data corresponds to information indicating a location in three-dimensional data, such as three-dimensional map data. Details of the information indicating a location will be described later.
位置関連データは、位置を示す情報である位置情報に加えて、前述した時刻情報と、位置関連データに含まれるデータの属性、又は当該データを生成したセンサの種類(例えば型番など)を示す情報とのうち少なくとも一つを含んでいてもよい。位置情報及び時刻情報は、位置関連データのヘッダ領域又は位置関連データを格納するフレームのヘッダ領域に格納されていてもよい。また、位置情報及び時刻情報は、位置関連データと対応付けられたメタデータとして位置関連データとは別に送信及び/又は格納されてもよい。 In addition to location information, which is information indicating a location, location-related data may include at least one of the time information described above and information indicating the attributes of the data included in the location-related data or the type of sensor that generated the data (e.g., model number). The location information and time information may be stored in the header field of the location-related data or the header field of a frame that stores the location-related data. In addition, the location information and time information may be transmitted and/or stored separately from the location-related data as metadata associated with the location-related data.
地図サーバ2025は、例えば、ネットワーク2023に接続されており、端末2021などの他の装置からの要求に応じて三次元地図データなどの三次元データを送信する。また、前述した各実施の形態で説明したように、地図サーバ2025は、端末2021から送信されたセンサ情報を用いて、三次元データを更新する機能などを備えていてもよい。 The map server 2025 is connected to the network 2023, for example, and transmits three-dimensional data such as three-dimensional map data in response to requests from other devices such as the terminal 2021. As described in the above-mentioned embodiments, the map server 2025 may also have a function for updating the three-dimensional data using sensor information transmitted from the terminal 2021.
データ収集サーバ2024は、例えば、ネットワーク2023に接続されており、端末2021などの他の装置から位置関連データを収集し、収集した位置関連データを内部又は他のサーバ内の記憶装置に格納する。また、データ収集サーバ2024は、収集した位置関連データ又は位置関連データに基づいて生成した三次元地図データのメタデータなどを、端末2021からの要求に応じて端末2021に対して送信する。 The data collection server 2024 is connected to the network 2023, for example, and collects location-related data from other devices such as the terminal 2021, and stores the collected location-related data in a storage device internally or in another server. The data collection server 2024 also transmits the collected location-related data or metadata of three-dimensional map data generated based on the location-related data to the terminal 2021 in response to a request from the terminal 2021.
ネットワーク2023は、例えばインターネットなどの通信ネットワークである。端末2021は、通信装置2022を介してネットワーク2023に接続されている。通信装置2022は、一つの通信方式、又は複数の通信方式を切り替えながら端末2021と通信を行う。通信装置2022は、例えば、(1)LTE(Long Term Evolution)などの基地局、(2)WiFi或いはミリ波通信などのアクセスポイント(AP)、(3)SIGFOX、LoRaWAN或いはWi-SUNなどのLPWA(Low Power Wide Area) Networkのゲートウェイ、又は、(4)DVB-S2などの衛星通信方式を用いて通信を行う通信衛星である。 Network 2023 is a communications network such as the Internet. Terminal 2021 is connected to network 2023 via communication device 2022. Communication device 2022 communicates with terminal 2021 by switching between one or more communication methods. Communication device 2022 is, for example, (1) a base station such as LTE (Long Term Evolution), (2) an access point (AP) such as Wi-Fi or millimeter wave communication, (3) a gateway of an LPWA (Low Power Wide Area) network such as SIGFOX, LoRaWAN, or Wi-SUN, or (4) a communications satellite that communicates using a satellite communications method such as DVB-S2.
なお、基地局は、NB-IoT(Narrow Band-IoT)又はLTE-MなどのLPWAに分類される方式で端末2021との通信を行っていてもよいし、これらの方式を切り替えながら端末2021との通信を行っていてもよい。 In addition, the base station may communicate with terminal 2021 using a method classified as LPWA, such as NB-IoT (Narrow Band-IoT) or LTE-M, or may communicate with terminal 2021 by switching between these methods.
ここでは、端末2021が2種類の通信方式を用いる通信装置2022と通信する機能を備え、これらの通信方式のいずれかを用いて、またはこれらの複数の通信方式及び直接の通信相手となる通信装置2022を切り替えながら地図サーバ2025又はデータ収集サーバ2024と通信を行う場合を例に挙げるが、センサ情報収集システム及び端末2021の構成はこれに限らない。例えば、端末2021は、複数の通信方式での通信機能を有さず、いずれか一つの通信方式で通信を行う機能を備えてもよい。また、端末2021は、3つ以上の通信方式に対応していてもよい。また、端末2021ごとに対応する通信方式が異なっていてもよい。 Here, we will use as an example a case in which the terminal 2021 has the ability to communicate with a communication device 2022 that uses two types of communication methods, and communicates with the map server 2025 or the data collection server 2024 using one of these communication methods, or by switching between these multiple communication methods and the communication device 2022 that is the direct communication partner; however, the configuration of the sensor information collection system and the terminal 2021 is not limited to this. For example, the terminal 2021 may not have the ability to communicate using multiple communication methods, but may instead have the ability to communicate using any one of the communication methods. The terminal 2021 may also support three or more communication methods. Each terminal 2021 may also support a different communication method.
端末2021は、例えば図91に示したクライアント装置902の構成を備える。端末2021は、受信した三次元データを用いて自己位置などの位置推定を行う。また、端末2021は、センサから取得したセンサデータと位置推定の処理により得られた位置情報とを対応付けて位置関連データを生成する。 The terminal 2021 has, for example, the configuration of the client device 902 shown in FIG. 91. The terminal 2021 performs position estimation, such as its own position, using the received three-dimensional data. The terminal 2021 also generates position-related data by associating the sensor data acquired from the sensor with the position information obtained by the position estimation process.
位置関連データに付加される位置情報は、例えば、三次元データで用いられている座標系における位置を示す。例えば、位置情報は、緯度及び経度の値で表される座標値である。このとき、端末2021は、座標値と共に当該座標値の基準となる座標系、及び位置推定に用いた三次元データを示す情報を位置情報に含めてもよい。また、座標値は高度の情報を含んでいてもよい。 The location information added to the location-related data indicates, for example, a location in the coordinate system used in the three-dimensional data. For example, the location information is a coordinate value expressed as latitude and longitude values. In this case, the terminal 2021 may include in the location information, together with the coordinate value, information indicating the coordinate system that serves as the basis for the coordinate value and the three-dimensional data used for location estimation. The coordinate value may also include altitude information.
また、位置情報は、前述した三次元データの符号化に用いることができるデータの単位又は空間の単位に対応付けられていてもよい。この単位とは、例えば、WLD、GOS、SPC、VLM、又はVXLなどである。このとき、位置情報は、例えば位置関連データに対応するSPCなどのデータ単位を特定するための識別子で表現される。なお、位置情報は、SPCなどのデータ単位を特定するための識別子に加えて、当該SPCなどのデータ単位を含む三次元空間を符号化した三次元データを示す情報、又は当該SPC内での詳細な位置を示す情報などを含んでいてもよい。三次元データを示す情報とは、例えば、当該三次元データのファイル名である。 The position information may also be associated with a data unit or a spatial unit that can be used to encode the three-dimensional data described above. Examples of such units include WLD, GOS, SPC, VLM, or VXL. In this case, the position information is expressed, for example, by an identifier for identifying a data unit such as an SPC that corresponds to the position-related data. Note that the position information may also include, in addition to an identifier for identifying a data unit such as an SPC, information indicating three-dimensional data that encodes a three-dimensional space that includes the data unit such as an SPC, or information indicating a detailed position within the SPC. The information indicating the three-dimensional data is, for example, the file name of the three-dimensional data.
このように、当該システムは、三次元データを用いた位置推定に基づく位置情報と対応付けた位置関連データを生成することにより、GPSを用いて取得されたクライアント装置(端末2021)の自己位置に基づく位置情報をセンサ情報に付加する場合よりも精度の高い位置情報をセンサ情報に付与することができる。その結果、位置関連データを他の装置が他のサービスにおいて利用する場合においても、同じ三次元データに基づいて位置推定を行うことで、位置関連データに対応する位置を実空間でより正確に特定できる可能性がある。 In this way, by generating location-related data associated with location information based on location estimation using three-dimensional data, the system can assign location information to sensor information with higher accuracy than when location information based on the client device's (terminal 2021) own location acquired using GPS is added to the sensor information. As a result, even when the location-related data is used by another device for another service, it may be possible to more accurately identify the location corresponding to the location-related data in real space by performing location estimation based on the same three-dimensional data.
なお、本実施の形態では、端末2021から送信されるデータが位置関連データの場合を例に挙げて説明したが、端末2021から送信されるデータは位置情報と関連付けられていないデータであってもよい。すなわち、他の実施の形態で説明した三次元データ又はセンサデータの送受信が本実施の形態で説明したネットワーク2023を介して行われてもよい。 In this embodiment, the data transmitted from terminal 2021 is location-related data, but the data transmitted from terminal 2021 may be data that is not associated with location information. In other words, the transmission and reception of three-dimensional data or sensor data described in other embodiments may be performed via network 2023 described in this embodiment.
次に、三次元又は二次元の実空間又は地図空間における位置を示す位置情報の異なる例について説明する。位置関連データに付加される位置情報は、三次元データ中の特徴点に対する相対位置を示す情報であってもよい。ここで、位置情報の基準となる特徴点は、例えばSWLDとして符号化され、三次元データとして端末2021に通知された特徴点である。 Next, different examples of location information indicating a position in three-dimensional or two-dimensional real space or map space will be described. The location information added to the location-related data may be information indicating a relative position with respect to a feature point in the three-dimensional data. Here, the feature point that serves as the reference for the location information is, for example, a feature point that has been encoded as an SWLD and notified to the terminal 2021 as three-dimensional data.
特徴点に対する相対位置を示す情報は、例えば、特徴点から位置情報が示す点までのベクトルで表され、特徴点から位置情報が示す点までの方向と距離を示す情報であってもよい。または、特徴点に対する相対位置を示す情報は、特徴点から位置情報が示す点までのX軸、Y軸、Z軸のそれぞれの変位量を示す情報であってもよい。また、特徴点に対する相対位置を示す情報は、3以上の特徴点のそれぞれから位置情報が示す点までの距離を示す情報であってもよい。なお、相対位置は、各特徴点を基準として表現された位置情報が示す点の相対位置ではなく、位置情報が示す点を基準として表現された各特徴点の相対位置であってもよい。特徴点に対する相対位置に基づく位置情報の一例は、基準となる特徴点を特定するための情報と、当該特徴点に対する位置情報が示す点の相対位置を示す情報とを含む。また、特徴点に対する相対位置を示す情報が三次元データとは別に提供される場合、特徴点に対する相対位置を示す情報は、相対位置の導出に用いた座標軸、三次元データの種類を示す情報、又は/及び相対位置を示す情報の値の単位量あたりの大きさ(縮尺など)を示す情報などを含んでいてもよい。 The information indicating the relative position with respect to a feature point may be expressed as a vector from the feature point to the point indicated by the position information, and may indicate the direction and distance from the feature point to the point indicated by the position information. Alternatively, the information indicating the relative position with respect to a feature point may be information indicating the amount of displacement along the X-axis, Y-axis, and Z-axis from the feature point to the point indicated by the position information. Furthermore, the information indicating the relative position with respect to a feature point may be information indicating the distance from each of three or more feature points to the point indicated by the position information. Note that the relative position may not be the relative position of the point indicated by the position information expressed relative to each feature point, but may be the relative position of each feature point expressed relative to the point indicated by the position information. An example of position information based on the relative position with respect to a feature point includes information for identifying the reference feature point and information indicating the relative position of the point indicated by the position information with respect to that feature point. Furthermore, if the information indicating the relative position with respect to a feature point is provided separately from the three-dimensional data, the information indicating the relative position with respect to the feature point may include the coordinate axes used to derive the relative position, information indicating the type of three-dimensional data, and/or information indicating the size per unit amount (e.g., scale) of the value of the information indicating the relative position.
また、位置情報は、複数の特徴点について、各特徴点に対する相対位置を示す情報を含んでいてもよい。位置情報を複数の特徴点に対する相対位置で表した場合、実空間において当該位置情報が示す位置を特定しようとする端末2021は、特徴点ごとにセンサデータから推定した当該特徴点の位置から位置情報が示す位置の候補点を算出し、算出された複数の候補点を平均して求めた点を位置情報が示す点であると判定してもよい。この構成によると、センサデータから特徴点の位置を推定する際の誤差の影響を軽減できるため、実空間における位置情報が示す点の推定精度を向上できる。また、位置情報が複数の特徴点に対する相対位置を示す情報を含む場合、端末2021が備えるセンサの種類又は性能などの制約で検出できない特徴点がある場合であっても、複数の特徴点のいずれか一つでも検出することができれば位置情報が示す点の値を推定することが可能となる。 The location information may also include information indicating the relative position of multiple feature points with respect to each feature point. When location information is expressed as a relative position with respect to multiple feature points, the terminal 2021 attempting to identify the position indicated by the location information in real space may calculate a candidate point for the position indicated by the location information from the position of each feature point estimated from sensor data, and determine that the point obtained by averaging the calculated candidate points is the point indicated by the location information. This configuration reduces the impact of errors when estimating the position of a feature point from sensor data, thereby improving the estimation accuracy of the point indicated by the location information in real space. Furthermore, when location information includes information indicating the relative position with respect to multiple feature points, even if there is a feature point that cannot be detected due to constraints such as the type or performance of the sensor equipped in the terminal 2021, it is possible to estimate the value of the point indicated by the location information as long as any one of the multiple feature points can be detected.
特徴点として、センサデータから特定可能な点を用いことができる。センサデータから特定可能な点とは、例えば、前述した三次元特徴量又は可視光データの特徴量が閾値以上であるなど特徴点検出用の所定の条件を満たす点又は領域内の点である。 Feature points can be points that can be identified from sensor data. Points that can be identified from sensor data are points or points within an area that satisfy specific conditions for feature point detection, such as the aforementioned three-dimensional feature values or visible light data feature values being equal to or greater than a threshold value.
また、実空間に設置されたマーカなどを特徴点として用いてもよい。この場合、マーカは、LiDER又はカメラなどのセンサを用いて取得されたデータから検出及び位置の特定が可能であればよい。例えば、マーカは、色或いは輝度値(反射率)の変化、又は、三次元形状(凹凸など)で表現される。また、当該マーカの位置を示す座標値、又は当該マーカの識別子から生成された二次元コード又はバーコードなどが用いられてもよい。 Also, markers placed in real space may be used as feature points. In this case, the markers only need to be able to be detected and located from data acquired using a sensor such as a LiDAR or camera. For example, the markers may be represented by changes in color or brightness (reflectance), or by a three-dimensional shape (such as unevenness). Alternatively, coordinate values indicating the position of the marker, or a two-dimensional code or barcode generated from the marker's identifier, may be used.
また、光信号を送信する光源をマーカとして用いてもよい。光信号の光源をマーカとして用いる場合、座標値又は識別子などの位置を取得するための情報だけでなく、その他のデータが光信号により送信されてもよい。例えば、光信号は、当該マーカの位置に応じたサービスのコンテンツ、コンテンツを取得するためのurlなどのアドレス、又はサービスの提供を受けるための無線通信装置の識別子と、当該無線通信装置と接続するための無線通信方式などを示す情報を含んでもよい。光通信装置(光源)をマーカとして用いることで、位置を示す情報以外のデータの送信が容易になると共に、当該データを動的に切り替えることが可能となる。 Also, a light source that transmits an optical signal may be used as a marker. When a light source of an optical signal is used as a marker, not only information for acquiring a position, such as coordinate values or an identifier, but also other data may be transmitted by the optical signal. For example, the optical signal may include information indicating the content of a service corresponding to the position of the marker, an address such as a URL for acquiring the content, or an identifier of a wireless communication device for receiving the service, and a wireless communication method for connecting to the wireless communication device. Using an optical communication device (light source) as a marker makes it easier to transmit data other than information indicating a position, and enables dynamic switching of the data.
端末2021は、互いに異なるデータ間での特徴点の対応関係を、例えば、データ間で共通に用いられる識別子、又は、データ間の特徴点の対応関係を示す情報或いはテーブルを用いて把握する。また、特徴点間の対応関係を示す情報がない場合、端末2021は、一方の三次元データにおける特徴点の座標を他方の三次元データ空間上の位置に変換した場合に最も近い距離にある特徴点を対応する特徴点であると判定してもよい。 The terminal 2021 grasps the correspondence between feature points between different data, for example, using an identifier commonly used between the data, or information or a table indicating the correspondence between feature points between the data. Furthermore, if there is no information indicating the correspondence between feature points, the terminal 2021 may determine that the feature point that is closest when the coordinates of a feature point in one of the three-dimensional data are converted to a position in the three-dimensional data space of the other is the corresponding feature point.
以上で説明した相対位置に基づく位置情報を用いた場合、互いに異なる三次元データを用いる端末2021又はサービス間であっても、各三次元データに含まれる、又は各三次元データと対応付けられた共通の特徴点を基準に位置情報が示す位置を特定、又は推定することができる。その結果、互いに異なる三次元データを用いる端末2021又はサービス間で、同じ位置をより高い精度で特定又は推定することが可能となる。 When using location information based on the relative positions described above, even between terminals 2021 or services that use different three-dimensional data, it is possible to identify or estimate the location indicated by the location information based on common feature points contained in or associated with each piece of three-dimensional data. As a result, it is possible to identify or estimate the same location with higher accuracy between terminals 2021 or services that use different three-dimensional data.
また、互いに異なる座標系を用いて表現された地図データ又は三次元データを用いる場合であっても、座標系の変換に伴う誤差の影響を低減できるため、より高精度な位置情報に基づくサービスの連携が可能となる。 In addition, even when using map data or three-dimensional data expressed using different coordinate systems, the impact of errors associated with coordinate system conversion can be reduced, making it possible to link services based on more accurate location information.
以下、データ収集サーバ2024が提供する機能の例について説明する。データ収集サーバ2024は、受信した位置関連データを他のデータサーバに転送してもよい。データサーバが複数ある場合、データ収集サーバ2024は、受信した位置関連データをどのデータサーバに転送するかを判定して、転送先として判定されたデータサーバ宛に位置関連データを転送する。 The following describes examples of functions provided by the data collection server 2024. The data collection server 2024 may forward the received location-related data to another data server. If there are multiple data servers, the data collection server 2024 determines to which data server the received location-related data should be forwarded, and forwards the location-related data to the data server determined as the forwarding destination.
データ収集サーバ2024は、転送先の判定を、例えば、データ収集サーバ2024に事前に設定された転送先サーバの判定ルールに基づいて行う。転送先サーバの判定ルールとは、例えば、各端末2021に対応付けられた識別子と転送先のデータサーバとを対応付けた転送先テーブルなどで設定される。 The data collection server 2024 determines the destination of transfer, for example, based on destination server determination rules that are pre-set in the data collection server 2024. The destination server determination rules are set, for example, in a destination table that associates an identifier associated with each terminal 2021 with the destination data server.
端末2021は、送信する位置関連データに対して当該端末2021に対応付けられた識別子を付加してデータ収集サーバ2024に送信する。データ収集サーバ2024は、位置関連データに付加された識別子に対応する転送先のデータサーバを転送先テーブルなどを用いた転送先サーバの判定ルールに基づいて特定し、当該位置関連データを特定されたデータサーバに送信する。また、転送先サーバの判定ルールは、位置関連データが取得された時間又は場所などを用いた判定条件で指定されてもよい。ここで、上述した送信元の端末2021に対応付けられた識別子とは、例えば各端末2021に固有の識別子、又は端末2021が属するグループを示す識別子などである。 The terminal 2021 adds an identifier associated with the terminal 2021 to the location-related data to be transmitted, and transmits the data to the data collection server 2024. The data collection server 2024 identifies the destination data server corresponding to the identifier added to the location-related data based on a destination server determination rule using a destination table or the like, and transmits the location-related data to the identified data server. The destination server determination rule may also be specified by a determination condition using the time or location at which the location-related data was acquired. Here, the identifier associated with the aforementioned source terminal 2021 is, for example, an identifier unique to each terminal 2021, or an identifier indicating the group to which the terminal 2021 belongs.
また、転送先テーブルは、送信元の端末に対応付けられた識別子と転送先のデータサーバとを直接対応付けたものでなくてもよい。例えば、データ収集サーバ2024は、端末2021に固有の識別子毎に付与されたタグ情報を格納した管理テーブルと、当該タグ情報と転送先のデータサーバを対応付けた転送先テーブルとを保持する。データ収集サーバ2024は、管理テーブルと転送先テーブルとを用いてタグ情報に基づく転送先のデータサーバを判定してもよい。ここで、タグ情報は、例えば当該識別子に対応する端末2021の種類、型番、所有者、所属するグループ又はその他の識別子に付与された管理用の制御情報又はサービス提供用の制御情報である。また、転送先テーブルに、送信元の端末2021に対応付けられた識別子の代わりに、センサ毎に固有の識別子が用いられてもよい。また、転送先サーバの判定ルールは、クライアント装置2026から設定できてもよい。 Furthermore, the forwarding destination table does not have to directly associate the identifier associated with the source terminal with the destination data server. For example, the data collection server 2024 holds a management table that stores tag information assigned to each unique identifier of the terminal 2021, and a forwarding destination table that associates the tag information with the destination data server. The data collection server 2024 may use the management table and the forwarding destination table to determine the destination data server based on the tag information. Here, the tag information is, for example, management control information or service provision control information assigned to the type, model number, owner, group to which the terminal 2021 corresponding to the identifier corresponds, or other identifier. Furthermore, the forwarding destination table may use an identifier unique to each sensor instead of the identifier associated with the source terminal 2021. Furthermore, the rules for determining the destination server may be set from the client device 2026.
データ収集サーバ2024は、複数のデータサーバを転送先として判定し、受信した位置関連データを当該複数のデータサーバに転送してもよい。この構成によると、例えば、位置関連データを自動的にバックアップする場合、又は位置関連データを異なるサービスで共通に利用するために、各サービスを提供するためのデータサーバに対して位置関連データを送信する必要がある場合に、データ収集サーバ2024に対する設定を変更ことで意図通りのデータの転送を実現できる。その結果、個別の端末2021に位置関連データの送信先を設定する場合と比較して、システムの構築及び変更に要する工数を削減することができる。 The data collection server 2024 may determine multiple data servers as destinations and transfer the received location-related data to those multiple data servers. With this configuration, for example, when automatically backing up location-related data or when location-related data needs to be sent to a data server providing each service in order to share the data across different services, the intended data transfer can be achieved by changing the settings on the data collection server 2024. As a result, the amount of work required to build and modify the system can be reduced compared to when setting the destination of location-related data on individual terminals 2021.
データ収集サーバ2024は、データサーバから受信した転送要求信号に応じて、転送要求信号で指定されたデータサーバを新たな転送先として登録し、以降に受信した位置関連データを当該データサーバに転送してもよい。 In response to a transfer request signal received from a data server, the data collection server 2024 may register the data server specified in the transfer request signal as a new transfer destination and transfer subsequently received location-related data to that data server.
データ収集サーバ2024は、端末2021から受信した位置関連データを記録装置に保存し、端末2021又はデータサーバから受信した送信要求信号に応じて、送信要求信号で指定された位置関連データを、要求元の端末2021又はデータサーバに送信してもよい。 The data collection server 2024 may store the location-related data received from the terminal 2021 in a recording device, and in response to a transmission request signal received from the terminal 2021 or the data server, may transmit the location-related data specified in the transmission request signal to the requesting terminal 2021 or data server.
データ収集サーバ2024は、要求元のデータサーバ又は端末2021に対する位置関連データの提供の可否を判断し、提供可能と判断された場合に要求元のデータサーバ又は端末2021に位置関連データの転送又は送信を行ってもよい。 The data collection server 2024 may determine whether or not it can provide the location-related data to the requesting data server or terminal 2021, and if it determines that it can provide the data, it may transfer or transmit the location-related data to the requesting data server or terminal 2021.
クライアント装置2026から現在の位置関連データの要求を受け付けた場合、端末2021による位置関連データの送信タイミングでなくても、データ収集サーバ2024が端末2021に対して位置関連データの送信要求を行い、端末2021が当該送信要求に応じて位置関連データを送信してもよい。 When a request for current location-related data is received from client device 2026, even if it is not the timing for terminal 2021 to transmit location-related data, data collection server 2024 may request terminal 2021 to transmit location-related data, and terminal 2021 may transmit the location-related data in response to the transmission request.
上記の説明では、端末2021がデータ収集サーバ2024に対して位置情報データを送信するとしたが、データ収集サーバ2024は、例えば、端末2021を管理する機能など、端末2021から位置関連データを収集するために必要な機能又は端末2021から位置関連データを収集する際に用いられる機能などを備えてもよい。 In the above explanation, it is stated that terminal 2021 transmits location information data to data collection server 2024, but data collection server 2024 may also have functions necessary for collecting location-related data from terminal 2021, such as a function for managing terminal 2021, or functions used when collecting location-related data from terminal 2021.
データ収集サーバ2024は、端末2021に対して位置情報データの送信を要求するデータ要求信号を送信し、位置関連データを収集する機能を備えてもよい。 The data collection server 2024 may have the function of transmitting a data request signal to the terminal 2021 requesting the transmission of location information data and collecting location-related data.
データ収集サーバ2024には、データ収集の対象となる端末2021と通信を行うためのアドレス又は端末2021固有の識別子などの管理情報が事前に登録されている。データ収集サーバ2024は、登録されている管理情報に基づいて端末2021から位置関連データを収集する。管理情報は、端末2021が備えるセンサの種類、端末2021が備えるセンサの数、及び端末2021が対応する通信方式などの情報を含んでいてもよい。 Management information such as an address for communicating with the terminal 2021 from which data is to be collected or an identifier unique to the terminal 2021 is pre-registered in the data collection server 2024. The data collection server 2024 collects location-related data from the terminal 2021 based on the registered management information. The management information may include information such as the type of sensor equipped in the terminal 2021, the number of sensors equipped in the terminal 2021, and the communication method supported by the terminal 2021.
データ収集サーバ2024は、端末2021の稼働状態又は現在位置などの情報を端末2021から収集してもよい。 The data collection server 2024 may collect information from the terminal 2021, such as the operating status or current location of the terminal 2021.
管理情報の登録は、クライアント装置2026から行われてもよいし、端末2021が登録要求をデータ収集サーバ2024に送信することで、登録のための処理が開始されてもよい。データ収集サーバ2024は、端末2021との間の通信を制御する機能を備えてもよい。 Registration of management information may be performed from the client device 2026, or the registration process may be initiated by the terminal 2021 sending a registration request to the data collection server 2024. The data collection server 2024 may have a function to control communication with the terminal 2021.
データ収集サーバ2024と端末2021とを結ぶ通信は、MNO(Mobile Network Operator)、或いはMVNO(Mobile Virtual Network Operator)などのサービス事業者が提供する専用回線、又は、VPN(Virtual Private Network)で構成された仮想の専用回線などであってもよい。この構成によると、端末2021とデータ収集サーバ2024との間の通信を安全に行うことができる。 The communication between the data collection server 2024 and the terminal 2021 may be a dedicated line provided by a service provider such as an MNO (Mobile Network Operator) or MVNO (Mobile Virtual Network Operator), or a virtual dedicated line configured using a VPN (Virtual Private Network). This configuration enables secure communication between the terminal 2021 and the data collection server 2024.
データ収集サーバ2024は、端末2021を認証する機能、又は端末2021との間で送受信されるデータを暗号化する機能を備えてもよい。ここで、端末2021の認証の処理又はデータの暗号化の処理は、データ収集サーバ2024と端末2021との間で事前に共有された、端末2021に固有の識別子又は複数の端末2021を含む端末グループに固有の識別子などを用いて行われる。この識別子とは、例えば、SIM(Subscriber Identity Module)カードに格納された固有の番号であるIMSI(International Mobile Subscriber Identity)などである。認証処理に用いられる識別子とデータの暗号化処理に用いる識別子とは、同じであってもよいし、異なっていてもよい。 The data collection server 2024 may have a function to authenticate the terminal 2021 or a function to encrypt data transmitted and received between the terminal 2021. Here, the authentication process for the terminal 2021 or the data encryption process is performed using an identifier unique to the terminal 2021 or an identifier unique to a terminal group including multiple terminals 2021, which is shared in advance between the data collection server 2024 and the terminal 2021. This identifier is, for example, an IMSI (International Mobile Subscriber Identity), which is a unique number stored in a SIM (Subscriber Identity Module) card. The identifier used in the authentication process and the identifier used in the data encryption process may be the same or different.
データ収集サーバ2024と端末2021との間の認証又はデータの暗号化の処理は、データ収集サーバ2024と端末2021との両方が当該処理を実施する機能を備えていれば提供可能であり、中継を行う通信装置2022が用いる通信方式に依存しない。よって、端末2021が通信方式を用いるかを考慮することなく、共通の認証又は暗号化の処理を用いることができるので、ユーザのシステム構築の利便性が向上する。ただし、中継を行う通信装置2022が用いる通信方式に依存しないとは、通信方式に応じて変更することが必須ではないことを意味している。つまり、伝送効率の向上又は安全性の確保の目的で、中継装置が用いる通信方式に応じてデータ収集サーバ2024と端末2021との間の認証又はデータの暗号化の処理が切り替えられてもよい。 The authentication or data encryption process between the data collection server 2024 and the terminal 2021 can be provided as long as both the data collection server 2024 and the terminal 2021 have the functionality to perform the process, and is independent of the communication method used by the relaying communication device 2022. Therefore, a common authentication or encryption process can be used regardless of the communication method used by the relaying communication device 2021, improving the convenience of system construction for users. However, being independent of the communication method used by the relaying communication device 2022 means that it is not necessary to change it depending on the communication method. In other words, for the purpose of improving transmission efficiency or ensuring security, the authentication or data encryption process between the data collection server 2024 and the terminal 2021 may be switched depending on the communication method used by the relaying device.
データ収集サーバ2024は、端末2021から収集する位置関連データの種類及びデータ収集のスケジュールなどのデータ収集ルールを管理するUIをクライアント装置2026に提供してもよい。これにより、ユーザはクライアント装置2026を用いてデータを収集する端末2021、並びに、データの収集時間及び頻度などを指定できる。また、データ収集サーバ2024は、データを収集したい地図上の領域などを指定し、当該領域に含まれる端末2021から位置関連データを収集してもよい。 The data collection server 2024 may provide the client device 2026 with a UI for managing data collection rules, such as the type of location-related data to be collected from the terminal 2021 and the data collection schedule. This allows the user to use the client device 2026 to specify the terminal 2021 from which data is to be collected, as well as the time and frequency of data collection. The data collection server 2024 may also specify an area on a map from which data is to be collected, and collect location-related data from the terminal 2021 included in that area.
データ収集ルールを端末2021単位で管理する場合、クライアント装置2026は、例えば、管理対象となる端末2021又はセンサのリストを画面に提示する。ユーザはリストの項目毎にデータの収集の要否又は収集スケジュールなどを設定する。 When managing data collection rules on a per-terminal 2021 basis, the client device 2026, for example, presents a list of the terminals 2021 or sensors to be managed on the screen. The user sets whether or not data collection is required and the collection schedule for each item on the list.
データを収集したい地図上の領域などを指定する場合、クライアント装置2026は、例えば、管理対象となる地域の二次元又は三次元の地図を画面に提示する。ユーザは、表示された地図上でデータを収集する領域を選択する。地図上で選択される領域は、地図上で指定された点を中心とする円形又は矩形の領域であってもよいし、ドラッグ動作で特定可能な円形又は矩形の領域であってもよい。また、クライアント装置2026は、都市、都市内のエリア、ブロック、又は主要な道路など予め設定された単位で領域を選択してもよい。また、地図を用いて領域を指定するのではなく、緯度及び経度の数値を入力して領域が設定されてもよいし、入力されたテキスト情報に基づいて導出した候補領域のリストから領域が選択されてもよい。テキスト情報は、例えば、地域、都市、又はランドマークの名前などである。 When specifying an area on a map from which data is to be collected, the client device 2026 presents, for example, a two-dimensional or three-dimensional map of the area to be managed on the screen. The user selects the area from which data is to be collected on the displayed map. The area selected on the map may be a circular or rectangular area centered on a point specified on the map, or a circular or rectangular area that can be specified by dragging. The client device 2026 may also select an area in pre-defined units such as a city, an area within a city, a block, or a major road. Instead of specifying an area using a map, the area may be set by entering numerical latitude and longitude coordinates, or the area may be selected from a list of candidate areas derived based on input text information. The text information may be, for example, the name of a region, city, or landmark.
また、ユーザが一又は複数の端末2021を指定して、当該端末2021の周囲100メートルの範囲内などの条件を設定することで、指定領域を動的に変更しながらデータの収集が行われてもよい。 In addition, the user may specify one or more terminals 2021 and set conditions such as a range of 100 meters around the terminal 2021, allowing data to be collected while dynamically changing the specified area.
また、クライアント装置2026がカメラなどのセンサを備える場合、センサデータから得られたクライアント装置2026の実空間での位置に基づいて地図上の領域が指定されてもよい。例えば、クライアント装置2026は、センサデータを用いて自己位置を推定し、推定された位置に対応する地図上の点から予め定められた距離、又はユーザが指定した距離の範囲内の領域を、データを収集する領域として指定してもよい。また、クライアント装置2026は、センサのセンシング領域、すなわち取得されたセンサデータに対応する領域を、データを収集する領域として指定してもよい。または、クライアント装置2026は、ユーザの指定したセンサデータに対応する位置に基づく領域を、データを収集する領域として指定してもよい。センサデータに対応する地図上の領域、又は位置の推定は、クライアント装置2026が行ってもよいし、データ収集サーバ2024が行ってもよい。 Furthermore, if the client device 2026 is equipped with a sensor such as a camera, an area on a map may be designated based on the position of the client device 2026 in real space obtained from the sensor data. For example, the client device 2026 may estimate its own position using the sensor data and designate an area within a predetermined distance or a user-specified distance from a point on the map corresponding to the estimated position as an area from which data is to be collected. The client device 2026 may also designate the sensing area of the sensor, i.e., the area corresponding to the acquired sensor data, as an area from which data is to be collected. Alternatively, the client device 2026 may designate an area based on a position corresponding to the user-specified sensor data as an area from which data is to be collected. The area on the map or the location corresponding to the sensor data may be estimated by the client device 2026 or by the data collection server 2024.
地図上の領域で指定を行う場合、データ収集サーバ2024は、各端末2021の現在位置情報を収集することで、指定された領域内の端末2021を特定し、特定された端末2021に対して位置関連データの送信を要求してもよい。また、データ収集サーバ2024が領域内の端末2021を特定するのではなく、データ収集サーバ2024が指定された領域を示す情報を端末2021に送信し、端末2021が自身が指定された領域内にあるか否かを判定して、指定された領域内にあると判断された場合に位置関連データを送信してもよい。 When specifying an area on a map, the data collection server 2024 may identify the terminals 2021 within the specified area by collecting current location information of each terminal 2021, and request the identified terminals 2021 to transmit location-related data. Alternatively, rather than the data collection server 2024 identifying the terminals 2021 within the area, the data collection server 2024 may transmit information indicating the specified area to the terminal 2021, determine whether the terminal 2021 is within the specified area, and transmit location-related data if it is determined that the terminal 2021 is within the specified area.
データ収集サーバ2024は、クライアント装置2026が実行するアプリケーションにおいて上述したUI(User Interface)を提供するためのリスト又は地図などのデータをクライアント装置2026に送信する。データ収集サーバ2024は、リスト又は地図などのデータだけでなく、アプリケーションのプログラムをクライアント装置2026に送信してもよい。また、上述したUIは、ブラウザで表示可能なHTMLなどで作成されたコンテンツとして提供されてもよい。なお、地図データなど一部のデータは地図サーバ2025などのデータ収集サーバ2024以外のサーバから提供されてもよい。 The data collection server 2024 transmits to the client device 2026 data such as lists or maps for providing the above-mentioned UI (User Interface) in the application executed by the client device 2026. The data collection server 2024 may transmit not only data such as lists or maps but also application programs to the client device 2026. The above-mentioned UI may also be provided as content created in HTML or the like that can be displayed in a browser. Note that some data, such as map data, may be provided from a server other than the data collection server 2024, such as the map server 2025.
クライアント装置2026は、ユーザによる設定ボタンの押下など、入力が完了したことを通知する入力が行われると、入力された情報を設定情報としてデータ収集サーバ2024に送信する。データ収集サーバ2024は、クライアント装置2026から受信した設定情報に基づいて各端末2021に対して、位置関連データの要求又は位置関連データの収集ルールを通知する信号を送信し、位置関連データの収集を行う。 When the user inputs information to notify that the input is complete, such as by pressing a settings button, the client device 2026 transmits the input information as setting information to the data collection server 2024. Based on the setting information received from the client device 2026, the data collection server 2024 transmits a signal to each terminal 2021 requesting location-related data or notifying the rules for collecting location-related data, and collects location-related data.
次に、三次元又は二次元の地図データに付加された付加情報に基づいて端末2021の動作を制御する例について説明する。 Next, we will explain an example of controlling the operation of terminal 2021 based on additional information added to three-dimensional or two-dimensional map data.
本構成では、道路又は駐車場に埋設された無線給電の給電アンテナ又は給電コイルなどの給電部の位置を示すオブジェクト情報が、三次元データに含まれて、又は三次元データに対応付けられて、車又はドローンなどである端末2021に提供される。 In this configuration, object information indicating the position of a power supply unit such as a wireless power supply antenna or power supply coil buried in a road or parking lot is included in or associated with the three-dimensional data and provided to a terminal 2021, such as a car or drone.
充電を行うために当該オブジェクト情報を取得した車両又はドローンは、車両が備える充電アンテナ又は充電コイルなどの充電部の位置が、当該オブジェクト情報が示す領域と対向する位置になるよう自動運転で車両自身の位置を移動させ、充電を開始する。なお、自動運転機能を備えていない車両又はドローンの場合は、画面上に表示された画像又は音声などを利用して、移動すべき方向又は行うべき操作を運転手又は操縦者に対して提示される。そして、推定された自己位置に基づいて算出した充電部の位置が、オブジェクト情報で示された領域又は当該領域から所定の距離の範囲内に入った判断されると、運転又は操縦を中止させる内容へと提示する画像又は音声が切り替えられ、充電が開始される。 When a vehicle or drone acquires the object information to charge, it automatically moves its own position so that the position of its charging antenna, charging coil, or other charging unit faces the area indicated by the object information, and charging begins. In the case of a vehicle or drone without an autonomous driving function, the driver or operator is informed of the direction to move or the operation to be performed using images displayed on a screen or audio. When it is determined that the position of the charging unit calculated based on the vehicle's estimated position is within the area indicated by the object information or within a specified distance from that area, the image or audio displayed changes to one requesting the driver or operator to stop driving or operating the vehicle, and charging begins.
また、オブジェクト情報は給電部の位置を示す情報ではなく、当該領域内に充電部を配置すると所定の閾値以上の充電効率が得られる領域を示す情報であってもよい。オブジェクト情報の位置は、オブジェクト情報が示す領域の中心の点で表されてもよいし、二次元平面内の領域或いは線、又は、三次元空間内の領域、線或いは平面などで表されてもよい。 In addition, the object information may not be information indicating the position of the power supply unit, but may be information indicating an area within which a charging efficiency equal to or greater than a predetermined threshold can be achieved when a charging unit is placed. The position of the object information may be represented by a point at the center of the area indicated by the object information, or by an area or line in a two-dimensional plane, or an area, line, or plane in three-dimensional space.
この構成によると、LiDERのセンシングデータ又はカメラで撮影した映像では把握できない給電アンテナの位置を把握することができるので、車などの端末2021が備える無線充電用のアンテナと道路などに埋設された無線給電アンテナとの位置合わせをより高精度に行うことができる。その結果、無線充電時の充電速度を短くしたり、充電効率を向上させることができる。 This configuration makes it possible to determine the position of the power feeding antenna, which cannot be determined from LiDER sensing data or camera images, and therefore allows for more accurate alignment of the wireless charging antenna installed in a vehicle or other device 2021 with a wireless power feeding antenna buried in a road or other location. As a result, it is possible to shorten the charging speed during wireless charging and improve charging efficiency.
オブジェクト情報は、給電アンテナの以外の対象物であってもよい。例えば、三次元データは、ミリ波無線通信のAPの位置などをオブジェクト情報として含む。これにより、端末2021は、APの位置を事前に把握することができるので、当該オブジェクト情報の方向にビームの指向性を向けて通信を開始することができる。その結果、伝送速度の向上、通信開始までの時間の短縮、及び通信可能な期間を延ばすなどの通信品質の向上を実現できる。 The object information may be an object other than a power supply antenna. For example, the three-dimensional data may include the position of a millimeter wave wireless communication AP as object information. This allows terminal 2021 to know the position of the AP in advance, and therefore to start communication by directing the beam in the direction of the object information. As a result, it is possible to improve communication quality by improving transmission speed, shortening the time until communication starts, and extending the period during which communication is possible.
オブジェクト情報は、当該オブジェクト情報に対応する対象物のタイプを示す情報を含んでもよい。また、オブジェクト情報は、当該オブジェクト情報の三次元データ上の位置に対応する実空間上の領域内、又は領域から所定の距離の範囲内に端末2021が含まれる場合に、端末2021が実施すべき処理を示す情報を含んでもよい。 The object information may include information indicating the type of object corresponding to the object information. The object information may also include information indicating the processing that the terminal 2021 should perform when the terminal 2021 is within an area in real space corresponding to the position of the three-dimensional data of the object information, or within a predetermined distance from the area.
オブジェクト情報は、三次元データを提供するサーバとは異なるサーバから提供されてもよい。オブジェクト情報を三次元データとは別に提供する場合、同一のサービスで使用されるオブジェクト情報が格納されたオブジェクトグループが、対象サービス又は対象機器の種類に応じてそれぞれ別のデータとして提供されてもよい。 The object information may be provided from a server different from the server that provides the three-dimensional data. If the object information is provided separately from the three-dimensional data, object groups containing object information used in the same service may be provided as separate data depending on the type of target service or target device.
オブジェクト情報と組み合わせて用いられる三次元データは、WLDの点群データであってもよいし、SWLDの特徴点データであってもよい。 The three-dimensional data used in combination with object information may be WLD point cloud data or SWLD feature point data.
三次元データ符号化装置において、符号化対象の三次元点である対象三次元点の属性情報をLoD(Level of Detail)を用いて階層符号化した場合、三次元データ復号装置は、当該三次元データ復号装置で必要なLoDの階層まで属性情報を復号し、必要でない階層の属性情報を復号しなくてもよい。例えば、三次元データ符号化装置が符号化したビットストリーム内の属性情報のLoDの総数がN個の場合、三次元データ復号装置は、最上位層のLoD0からLoD(M-1)までのM個(M<N)のLoDを復号し、残りのLoD(N-1)までのLoDを復号しなくてもよい。これにより、三次元データ復号装置は、処理負荷を抑制しつつ、三次元データ復号装置で必要なLoD0からLoD(M-1)までの属性情報を復号できる。 When a three-dimensional data encoding device hierarchically encodes attribute information of a target three-dimensional point, which is the three-dimensional point to be encoded, using LoD (Level of Detail), the three-dimensional data decoding device decodes attribute information up to the LoD level required by the three-dimensional data decoding device, and does not need to decode attribute information in levels that are not required. For example, if the total number of LoDs of attribute information in a bitstream encoded by the three-dimensional data encoding device is N, the three-dimensional data decoding device may decode M (M < N) LoDs from LoD0 to LoD(M-1) in the top layer, and not need to decode the remaining LoDs up to LoD(N-1). This allows the three-dimensional data decoding device to decode attribute information from LoD0 to LoD(M-1) required by the three-dimensional data decoding device while reducing processing load.
図102は、上記のユースケースを示す図である。図102に例では、サーバは、三次元位置情報と属性情報とを符号化することで得られた三次元地図を保持する。サーバ(三次元データ符号化装置)は、サーバが管理する領域のクライアント装置(三次元データ復号装置:例えば車両又はドローン等)に対し、三次元地図をブロードキャスト送信し、クライアント装置はサーバから受信した三次元地図を用いてクライアント装置の自己位置を特定する処理、又は、クライアント装置を操作するユーザ等に地図情報を表示する処理を行う。 Figure 102 is a diagram illustrating the above use case. In the example shown in Figure 102, the server holds a three-dimensional map obtained by encoding three-dimensional position information and attribute information. The server (three-dimensional data encoding device) broadcasts the three-dimensional map to client devices (three-dimensional data decoding devices: for example, vehicles or drones) in the area managed by the server, and the client devices use the three-dimensional map received from the server to determine their own location, or to display map information to a user operating the client device.
以下、この例における動作例を説明する。まず、サーバは、三次元地図の位置情報を8分木構成などを用いて符号化する。そして、サーバは、位置情報をベースに構築されたN個のLoDを用いて三次元地図の属性情報を階層符号化する。サーバは、階層符号化により得られた三次元地図のビットストリームを保存する。 An example of operation in this example is explained below. First, the server encodes the location information of the 3D map using an octree structure or the like. Then, the server hierarchically encodes the attribute information of the 3D map using N LoDs constructed based on the location information. The server saves the bitstream of the 3D map obtained by hierarchical encoding.
次にサーバは、サーバが管理する領域のクライアント装置から送信された地図情報の送信要求に応じて、符号化された三次元地図のビットストリームをクライアント装置に送信する。 The server then transmits the encoded 3D map bitstream to the client device in response to a request for map information sent from the client device in the area managed by the server.
クライアント装置は、サーバから送信された三次元地図のビットストリームを受信し、クライアント装置の用途に応じて三次元地図の位置情報と属性情報とを復号する。例えば、クライアント装置が位置情報とN個のLoDの属性情報とを用いて高精度な自己位置推定を行う場合は、クライアント装置は、属性情報として密な三次元点までの復号結果が必要と判断し、ビットストリーム内の全ての情報を復号する。 The client device receives the 3D map bitstream transmitted from the server and decodes the location information and attribute information of the 3D map according to the client device's intended use. For example, if the client device performs highly accurate self-location estimation using location information and attribute information for N LoDs, the client device determines that it needs decoded results down to dense 3D points as attribute information and decodes all information in the bitstream.
また、クライアント装置が三次元地図の情報をユーザ等に表示する場合は、クライアント装置は、属性情報として疎な三次元点までの復号結果までが必要と判断し、位置情報とLoDの上位層であるLoD0からM個(M<N)までのLoDの属性情報とを復号する。 In addition, when a client device displays three-dimensional map information to a user, etc., the client device determines that it needs decoded results up to sparse three-dimensional points as attribute information, and decodes the location information and attribute information of LoDs from LoD0 to M (M < N) which are in the upper layer of LoD.
このようにクライアント装置の用途に応じて復号する属性情報のLoDを切替えることによって、クライアント装置の処理負荷を削減できる。 In this way, by switching the LoD of the attribute information to be decoded depending on the purpose of the client device, the processing load on the client device can be reduced.
図102に示す例では、例えば、三次元点地図は、位置情報と属性情報とを含む。位置情報は、8分木で符号化される。属性情報は、N個のLoDで符号化される。 In the example shown in Figure 102, for example, the 3D point map includes location information and attribute information. The location information is coded using an octree. The attribute information is coded using N LoDs.
クライアント装置Aは、高精度な自己位置推定を行う。この場合、クライアント装置Aは、全ての位置情報と属性情報とが必要と判断し、ビットストリーム内の位置情報とN個のLoDで構成される属性情報とを全て復号する。 Client device A performs highly accurate self-location estimation. In this case, client device A determines that all location information and attribute information is necessary, and decodes all location information in the bitstream and all attribute information consisting of N LoDs.
クライアント装置Bは、三次元地図をユーザへ表示する。この場合、クライアント装置Bは、位置情報とM個(M<N)のLoDの属性情報とが必要と判断し、ビットストリーム内の位置情報とM個のLoDで構成される属性情報とを復号する。 Client device B displays a three-dimensional map to the user. In this case, client device B determines that location information and attribute information of M (M < N) LoDs are necessary, and decodes the location information in the bitstream and the attribute information consisting of M LoDs.
なお、サーバは、三次元地図をクライアント装置にブロードキャスト送信してもよいし、マルチキャスト送信、又はユニキャスト送信してもよい。 The server may broadcast, multicast, or unicast the 3D map to the client device.
以下、本実施の形態に係るシステムの変形例について説明する。三次元データ符号化装置において、符号化対象の三次元点である対象三次元点の属性情報をLoDを用いて階層符号化する場合、三次元データ符号化装置は、当該三次元データ復号装置で必要なLoDの階層まで属性情報を符号化し、必要でない階層の属性情報を符号化しなくてもよい。例えば、LoDの総数がN個の場合に、三次元データ符号化装置は、最上位層LoD0からLoD(M-1)までのM個(M<N)のLoDを符号化し、残りLoD(N-1)までのLoDを符号化しないことによりビットストリームを生成してもよい。これにより、三次元データ符号化装置は、三次元データ復号装置からの要望に応じて、三次元データ復号装置で必要なLoD0からLoD(M-1)までの属性情報を符号化したビットストリームを提供できる。 The following describes a modified example of the system according to this embodiment. When a three-dimensional data encoding device hierarchically encodes attribute information of a target three-dimensional point, which is the three-dimensional point to be encoded, using LoD, the three-dimensional data encoding device may encode attribute information up to the LoD layer required by the three-dimensional data decoding device, and may not encode attribute information in layers that are not required. For example, if the total number of LoDs is N, the three-dimensional data encoding device may generate a bitstream by encoding M (M<N) LoDs from the top layer LoD0 to LoD(M-1) and not encoding the remaining LoDs up to LoD(N-1). In this way, the three-dimensional data encoding device can provide a bitstream that encodes attribute information required by the three-dimensional data decoding device from LoD0 to LoD(M-1) in response to a request from the three-dimensional data decoding device.
図103は、上記ユースケースを示す図である。図103に示す例では、サーバは、三次元位置情報と属性情報とを符号化することで得られた三次元地図を保持する。サーバ(三次元データ符号化装置)は、サーバが管理する領域のクライアント装置(三次元データ復号装置:例えば車両又はドローン等)に対し、クライアント装置の要望に応じて三次元地図をユニキャスト送信し、クライアント装置はサーバから受信した三次元地図を用いてクライアント装置の自己位置を特定する処理、又は地図情報をクライアント装置を操作するユーザ等に表示する処理を行う。 Figure 103 is a diagram illustrating the above use case. In the example shown in Figure 103, the server holds a three-dimensional map obtained by encoding three-dimensional position information and attribute information. The server (three-dimensional data encoding device) unicasts the three-dimensional map to client devices (three-dimensional data decoding devices: for example, vehicles or drones) in the area managed by the server in response to a request from the client device, and the client device uses the three-dimensional map received from the server to determine its own location or display the map information to a user operating the client device.
以下、この例における動作例を説明する。まず、サーバは、三次元地図の位置情報を8分木構成などを用いて符号化する。そして、サーバは、三次元地図の属性情報を、位置情報をベースに構築されたN個のLoDを用いて階層符号化することで三次元地図Aのビットストリームを生成し、生成したビットストリームを当該サーバに保存する。また、サーバは、三次元地図の属性情報を、位置情報をベースに構築されたM個(M<N)のLoDを用いて階層符号化することで三次元地図Bのビットストリームを生成し、生成したビットストリームを当該サーバに保存する。 An example of operation in this example is described below. First, the server encodes the location information of the 3D map using an octree structure or the like. Then, the server generates a bitstream of 3D map A by hierarchically encoding the attribute information of the 3D map using N LoDs constructed based on the location information, and stores the generated bitstream on the server. Furthermore, the server generates a bitstream of 3D map B by hierarchically encoding the attribute information of the 3D map using M (M<N) LoDs constructed based on the location information, and stores the generated bitstream on the server.
次にクライアント装置は、クライアント装置の用途に応じて三次元地図の送信をサーバに要求する。例えば、クライアント装置は、位置情報とN個のLoDの属性情報とを用いて高精度な自己位置推定を行う場合は、属性情報として密な三次元点までの復号結果が必要と判断し、三次元地図Aのビットストリームの送信をサーバへ要求する。また、クライアント装置は、三次元地図の情報をユーザ等に表示する場合は、属性情報として疎な三次元点までの復号結果までが必要と判断し、位置情報とLoDの上位層LoD0からM個(M<N)までのLoDの属性情報とを含む三次元地図Bのビットストリームの送信をサーバへ要求する。そしてサーバは、クライアント装置からの地図情報の送信要求に応じて、符号化された三次元地図A又は三次元地図Bのビットストリームをクライアント装置に送信する。 The client device then requests the server to transmit a 3D map according to the client device's intended use. For example, when performing highly accurate self-location estimation using location information and attribute information for N LoDs, the client device determines that decoded results down to dense 3D points are required as attribute information, and requests the server to transmit a bitstream of 3D map A. Furthermore, when displaying 3D map information to a user, the client device determines that decoded results down to sparse 3D points are required as attribute information, and requests the server to transmit a bitstream of 3D map B, which includes location information and attribute information for up to M (M<N) LoDs from LoD0 in the upper LoD layer. The server then transmits the bitstream of encoded 3D map A or 3D map B to the client device in response to a request to transmit map information from the client device.
クライアント装置は、クライアント装置の用途に応じてサーバから送信された三次元地図A又は三次元地図Bのビットストリームを受信し、当該ビットストリームを復号する。このようにサーバは、クライアント装置の用途に応じて送信するビットストリームを切替える。これにより、クライアント装置の処理負荷を削減できる。 The client device receives the bitstream of 3D map A or 3D map B sent from the server depending on the client device's intended use, and decodes the bitstream. In this way, the server switches the bitstream to be sent depending on the client device's intended use. This reduces the processing load on the client device.
図103に示す例では、サーバは、三次元地図A及び三次元地図Bを保持する。サーバは、三次元地図の位置情報を、例えば8分木で符号化し、三次元地図の属性情報をN個のLoDで符号化することで三次元地図Aを生成する。つまり、三次元地図Aのビットストリームに含まれるNumLoDはNを示す。 In the example shown in Figure 103, the server holds three-dimensional maps A and B. The server generates three-dimensional map A by encoding the position information of the three-dimensional map, for example, using an octree, and encoding the attribute information of the three-dimensional map using N LoDs. In other words, the NumLoD included in the bitstream of three-dimensional map A indicates N.
また、サーバは、三次元地図の位置情報を、例えば8分木で符号化し、三次元地図の属性情報をM個のLoDで符号化することで三次元地図Bを生成する。つまり、三次元地図Bのビットストリームに含まれるNumLoDはMを示す。 The server also generates three-dimensional map B by encoding the location information of the three-dimensional map, for example, using an octree, and encoding the attribute information of the three-dimensional map using M LoDs. In other words, the NumLoD included in the bitstream of three-dimensional map B indicates M.
クライアント装置Aは、高精度な自己位置推定を行う。この場合クライアント装置Aは、全ての位置情報と属性情報とが必要と判断し、全ての位置情報とN個のLoDで構成される属性情報とを含む三次元地図Aの送信要求をサーバに送る。クライアント装置Aは、三次元地図Aを受信し、全ての位置情報とN個のLoDで構成される属性情報とを復号する。 Client device A performs highly accurate self-location estimation. In this case, client device A determines that all location information and attribute information is required, and sends a request to the server to send 3D map A containing all location information and attribute information consisting of N LoDs. Client device A receives 3D map A and decodes all location information and attribute information consisting of N LoDs.
クライアント装置Bは、三次元地図をユーザへ表示する。この場合、クライアント装置Bは、位置情報とM個(M<N)のLoDの属性情報とが必要と判断し、全ての位置情報とM個のLoDで構成される属性情報とを含む三次元地図Bの送信要求をサーバに送る。クライアント装置Bは、三次元地図Bを受信して、全ての位置情報とM個のLoDで構成される属性情報とを復号する。 Client device B displays a three-dimensional map to the user. In this case, client device B determines that location information and attribute information for M (M<N) LoDs are required, and sends a request to the server to send three-dimensional map B containing all location information and attribute information consisting of M LoDs. Client device B receives three-dimensional map B and decodes all location information and attribute information consisting of M LoDs.
なお、サーバ(三次元データ符号化装置)は、三次元地図Bに加え、残りのN-M個のLoDの属性情報を符号化した三次元地図Cを符号化しておき、クライアント装置Bの要望に応じて三次元地図Cをクライアント装置Bに送信してもよい。また、クライアント装置Bは、三次元地図Bと三次元地図Cとのビットストリームを用いて、N個のLoDの復号結果を得てもよい。 In addition to three-dimensional map B, the server (three-dimensional data encoding device) may encode three-dimensional map C, which encodes the attribute information of the remaining N-M LoDs, and transmit three-dimensional map C to client device B upon request from client device B. Client device B may also obtain the decoded results of the N LoDs using the bitstreams of three-dimensional map B and three-dimensional map C.
以下、アプリケーション処理の例を説明する。図104は、アプリケーション処理の例を示すフローチャートである。アプリ操作が開始されると、三次元データ逆多重化装置は、点群データ及び複数の符号化データを含むISOBMFFファイルを取得する(S7301)。例えば、三次元データ逆多重化装置は、ISOBMFFファイルを、通信により取得してもよいし、蓄積しているデータから読み込んでもよい。An example of application processing is described below. Figure 104 is a flowchart showing an example of application processing. When application operation is started, the three-dimensional data demultiplexing device acquires an ISOBMFF file containing point cloud data and multiple pieces of encoded data (S7301). For example, the three-dimensional data demultiplexing device may acquire the ISOBMFF file via communication or may read it from stored data.
次に、三次元データ逆多重化装置は、ISOBMFFファイルにおける全体構成情報を解析し、アプリケーションに使用するデータを特定する(S7302)。例えば、三次元データ逆多重化装置は、処理に用いるデータを取得し、処理に用いないデータは取得しない。Next, the three-dimensional data demultiplexing device analyzes the overall configuration information in the ISOBMFF file and identifies the data to be used for the application (S7302). For example, the three-dimensional data demultiplexing device acquires data to be used for processing and does not acquire data not to be used for processing.
次に、三次元データ逆多重化装置は、アプリケーションに使用する1以上のデータを抽出し、当該データの構成情報を解析する(S7303)。 Next, the three-dimensional data demultiplexing device extracts one or more data to be used for the application and analyzes the configuration information of the data (S7303).
データの種別が符号化データである場合(S7304で符号化データ)、三次元データ逆多重化装置は、ISOBMFFを符号化ストリームに変換し、タイムスタンプを抽出する(S7305)。また、三次元データ逆多重化装置は、データ間の同期がそろっているか否かを、例えば、データ間の同期がそろっているか否かを示すフラグを参照して判定し、揃っていなければ同期処理を行ってもよい。If the data type is coded data (coded data in S7304), the three-dimensional data demultiplexing device converts the ISOBMFF into a coded stream and extracts the timestamp (S7305). The three-dimensional data demultiplexing device may also determine whether or not the data is synchronized by, for example, referencing a flag indicating whether or not the data is synchronized, and may perform synchronization processing if the data is not synchronized.
次に、三次元データ逆多重化装置は、タイムスタンプ及びその他の指示に従い、所定の方法でデータを復号し、復号したデータを処理する(S7306)。 Next, the three-dimensional data demultiplexing device decodes the data in a predetermined manner according to the timestamp and other instructions, and processes the decoded data (S7306).
一方、データの種別が符号化データである場合(S7304でRAWデータ)、三次元データ逆多重化装置は、データ及びタイムスタンプを抽出する(S7307)。また、三次元データ逆多重化装置は、データ間の同期がそろっているか否かを、例えば、データ間の同期がそろっているか否かを示すフラグを参照して判定し、揃っていなければ同期処理を行ってもよい。次に、三次元データ逆多重化装置は、タイムスタンプ及びその他の指示に従い、データを処理する(S7308)。 On the other hand, if the data type is coded data (RAW data in S7304), the three-dimensional data demultiplexing device extracts the data and timestamp (S7307). The three-dimensional data demultiplexing device may also determine whether the data is synchronized, for example, by referring to a flag indicating whether the data is synchronized, and perform synchronization processing if it is not. Next, the three-dimensional data demultiplexing device processes the data in accordance with the timestamp and other instructions (S7308).
例えば、ビームLiDAR、FLASH LiDAR、及びカメラで取得されたセンサ信号が、それぞれ異なる符号化方式で符号化及び多重化されている場合の例を説明する。図105は、ビームLiDAR、FLASH LiDAR及びカメラのセンサ範囲の例を示す図である。例えば、ビームLiDARは、車両(センサ)の周囲の全方向を検知し、FLASH LiDAR及びカメラは、車両の一方向(例えば前方)の範囲を検知する。 For example, we will explain an example where the sensor signals acquired by beam LiDAR, FLASH LiDAR, and a camera are each encoded and multiplexed using different encoding methods. Figure 105 is a diagram showing an example of the sensor ranges of beam LiDAR, FLASH LiDAR, and a camera. For example, beam LiDAR detects in all directions around the vehicle (sensor), while FLASH LiDAR and a camera detect a range in one direction (e.g., forward) of the vehicle.
LiDAR点群を統合的に扱うアプリケーションの場合、三次元データ逆多重化装置は、全体構成情報を参照して、ビームLiDARとFLASH LiDARの符号化データを抽出して復号する。また、三次元データ逆多重化装置は、カメラ映像は抽出しない。 For applications that handle LiDAR point clouds in an integrated manner, the 3D data demultiplexer references the overall configuration information to extract and decode the coded data from beam LiDAR and FLASH LiDAR. The 3D data demultiplexer does not extract camera images.
三次元データ逆多重化装置は、LiDARとFLASH LiDARのタイムスタンプに従い、同一のタイムスタンプの時刻のそれぞれの符号化データを同時に処理する。 The three-dimensional data demultiplexing device processes the encoded data of each with the same timestamp simultaneously according to the timestamps of the LiDAR and FLASH LiDAR.
例えば、三次元データ逆多重化装置は、処理したデータを提示装置で提示したり、ビームLiDARとFLASH LiDARの点群データを合成したり、レンダリングなどの処理を行ってもよい。 For example, the three-dimensional data demultiplexing device may present the processed data on a presentation device, combine point cloud data from beam LiDAR and FLASH LiDAR, or perform processing such as rendering.
また、データ間でキャリブレーションをするアプリケーションの場合には、三次元データ逆多重化装置は、センサ位置情報を抽出してアプリケーションで用いてもよい。 In addition, in applications that require calibration between data, the three-dimensional data demultiplexing device may extract sensor position information and use it in the application.
例えば、三次元データ逆多重化装置は、アプリケーションにおいて、ビームLiDAR情報を使用するか、FLASH LiDARを使用するかを選択し、選択結果に応じて処理を切り替えてもよい。 For example, the three-dimensional data demultiplexing device may select whether to use beam LiDAR information or FLASH LiDAR in an application and switch processing depending on the selection result.
このように、アプリケーションの処理に応じて適応的にデータの取得及び符号処理を変えることができるので、処理量及び消費電力を削減できる。 In this way, data acquisition and encoding processes can be adaptively changed according to application processing, thereby reducing processing volume and power consumption.
以下、自動運転におけるユースケースについて説明する。図106は、自動運転システムの構成例を示す図である。この自動運転システムは、クラウドサーバ7350と、車載装置又はモバイル装置等のエッジ7360とを含む。クラウドサーバ7350は、逆多重化部7351と、復号部7352A、7352B及び7355と、点群データ合成部7353と、大規模データ蓄積部7354と、比較部7356と、符号化部7357とを備える。エッジ7360は、センサ7361A及び7361Bと、点群データ生成部7362A及び7362Bと、同期部7363と、符号化部7364A及び7364Bと、多重化部7365と、更新データ蓄積部7366と、逆多重化部7367と、復号部7368と、フィルタ7369と、自己位置推定部7370と、運転制御部7371とを備える。 The following describes use cases in autonomous driving. Figure 106 is a diagram showing an example configuration of an autonomous driving system. This autonomous driving system includes a cloud server 7350 and an edge 7360 such as an in-vehicle device or a mobile device. The cloud server 7350 includes a demultiplexing unit 7351, decoding units 7352A, 7352B, and 7355, a point cloud data synthesis unit 7353, a large-scale data accumulation unit 7354, a comparison unit 7356, and an encoding unit 7357. The edge 7360 includes sensors 7361A and 7361B, point cloud data generation units 7362A and 7362B, a synchronization unit 7363, encoding units 7364A and 7364B, a multiplexing unit 7365, an update data storage unit 7366, a demultiplexing unit 7367, a decoding unit 7368, a filter 7369, a self-position estimation unit 7370, and a driving control unit 7371.
このシステムでは、エッジ7360は、クラウドサーバ7350に蓄積されている大規模点群地図データである大規模データをダウンロードする。エッジ7360は、大規模データとエッジ7360で得られたセンサ情報とをマッチングすることで、エッジ7360(車両又は端末)の自己位置推定処理を行う。また、エッジ7360は、取得したセンサ情報をクラウドサーバ7350へアップロードし、大規模データを最新の地図データに更新する。 In this system, the edge 7360 downloads large-scale data, which is large-scale point cloud map data stored in the cloud server 7350. The edge 7360 performs self-location estimation processing for the edge 7360 (vehicle or terminal) by matching the large-scale data with sensor information obtained by the edge 7360. The edge 7360 also uploads the obtained sensor information to the cloud server 7350 and updates the large-scale data to the latest map data.
また、システム内における点群データを扱う様々なアプリケーションにおいて、符号化方法の異なる点群データが扱われる。 In addition, various applications that handle point cloud data within the system handle point cloud data using different encoding methods.
クラウドサーバ7350は、大規模データを符号化及び多重化する。具体的には、符号化部7357は、大規模点群を符号化するために適した第3の符号化方法を用いて符号化を行う。また、符号化部7357は、符号化データを多重化する。大規模データ蓄積部7354は、符号化部7357で符号化及び多重化されたデータを蓄積する。 The cloud server 7350 encodes and multiplexes the large-scale data. Specifically, the encoding unit 7357 performs encoding using a third encoding method suitable for encoding large-scale point clouds. The encoding unit 7357 also multiplexes the encoded data. The large-scale data storage unit 7354 stores the data encoded and multiplexed by the encoding unit 7357.
エッジ7360は、センシングを行う。具体的には、点群データ生成部7362Aは、センサ7361Aで取得されるセンシング情報を用いて、第1の点群データ(位置情報(ジオメトリ)及び属性情報)を生成する。点群データ生成部7362Bは、センサ7361Bで取得されるセンシング情報を用いて、第2の点群データ(位置情報及び属性情報)を生成する。生成された第1の点群データ及び第2の点群データは、自動運転の自己位置推定或いは車両制御、又は地図更新に用いられる。それぞれの処理において、第1の点群データ及び第2の点群データのうちの一部の情報が用いられてもよい。 Edge 7360 performs sensing. Specifically, point cloud data generation unit 7362A generates first point cloud data (position information (geometry) and attribute information) using sensing information acquired by sensor 7361A. Point cloud data generation unit 7362B generates second point cloud data (position information and attribute information) using sensing information acquired by sensor 7361B. The generated first point cloud data and second point cloud data are used for self-position estimation or vehicle control for autonomous driving, or map updating. In each process, part of the information from the first point cloud data and second point cloud data may be used.
エッジ7360は、自己位置推定を行う。具体的には、エッジ7360は、大規模データをクラウドサーバ7350からダウンロードする。逆多重化部7367は、ファイルフォーマットの大規模データを逆多重化することで符号化データを取得する。復号部7368は、取得された符号化データを復号することで大規模点群地図データである大規模データを取得する。 The edge 7360 performs self-location estimation. Specifically, the edge 7360 downloads large-scale data from the cloud server 7350. The demultiplexing unit 7367 demultiplexes the large-scale data in file format to obtain encoded data. The decoding unit 7368 decodes the obtained encoded data to obtain large-scale data, which is large-scale point cloud map data.
自己位置推定部7370は、取得された大規模データと、点群データ生成部7362A及び7362Bで生成された第1の点群データ及び第2の点群データとをマッチングすることで、車両の地図における自己位置を推定する。また、運転制御部7371は、当該マッチング結果又は自己位置推定結果を運転制御に用いる。 The self-position estimation unit 7370 estimates the vehicle's self-position on the map by matching the acquired large-scale data with the first point cloud data and second point cloud data generated by the point cloud data generation units 7362A and 7362B. The driving control unit 7371 also uses the matching results or the self-position estimation results for driving control.
なお、自己位置推定部7370及び運転制御部7371は、大規模データのうち、位置情報などの特定の情報を抽出し、抽出した情報を用いて処理を行ってもよい。また、フィルタ7369は、第1の点群データ及び第2の点群データに補正又は間引き等の処理を行う。自己位置推定部7370及び運転制御部7371は、当該処理が行われた後の第1の点群データ及び第2の点群データを用いてもよい。また、自己位置推定部7370及び運転制御部7371は、センサ7361A及び7361Bで得られたセンサ信号を用いてもよい。 The self-position estimation unit 7370 and the driving control unit 7371 may extract specific information, such as location information, from the large-scale data and perform processing using the extracted information. Furthermore, the filter 7369 performs processing such as correction or thinning on the first point cloud data and the second point cloud data. The self-position estimation unit 7370 and the driving control unit 7371 may use the first point cloud data and the second point cloud data after this processing has been performed. Furthermore, the self-position estimation unit 7370 and the driving control unit 7371 may use sensor signals obtained by sensors 7361A and 7361B.
同期部7363は、複数のセンサ信号又は複数の点群データのデータ間の時間同期及び位置補正を行う。また、同期部7363は、自己位置推定処理によって生成された、大規模データとセンサデータとの位置補正情報に基づき、センサ信号又は点群データの位置情報を大規模データに合わせるように補正してもよい。 The synchronization unit 7363 performs time synchronization and position correction between multiple sensor signals or multiple point cloud data. The synchronization unit 7363 may also correct the position information of the sensor signals or point cloud data to match the large-scale data based on position correction information between the large-scale data and the sensor data generated by the self-position estimation process.
なお、同期及び位置補正はエッジ7360でなく、クラウドサーバ7350で行われてもよい。この場合、エッジ7360は、同期情報及び位置情報を多重化してクラウドサーバ7350へ送信してもよい。 Note that synchronization and position correction may be performed by the cloud server 7350 rather than the edge 7360. In this case, the edge 7360 may multiplex the synchronization information and position information and transmit them to the cloud server 7350.
エッジ7360は.センサ信号又は点群データを符号化及び多重化する。具体的には、センサ信号又は点群データは、それぞれの信号を符号化するために適した第1の符号化方法又は第2の符号化方法を用いて符号化される。例えば、符号化部7364Aは、第1の符号化方法を用いて第1の点群データを符号化することで第1の符号化データを生成する。符号化部7364Bは、第2の符号化方法を用いて第2の点群データを符号化することで第2の符号化データを生成する。 Edge 7360 encodes and multiplexes sensor signals or point cloud data. Specifically, the sensor signals or point cloud data are encoded using a first encoding method or a second encoding method suitable for encoding the respective signals. For example, encoding unit 7364A generates first encoded data by encoding the first point cloud data using the first encoding method. Encoding unit 7364B generates second encoded data by encoding the second point cloud data using the second encoding method.
多重化部7365は、第1の符号化データ、第2の符号化データ、及び同期情報などを多重化することで多重化信号を生成する。更新データ蓄積部7366は、生成された多重化信号を蓄積する。また、更新データ蓄積部7366は、多重化信号をクラウドサーバ7350へアップロードする。 The multiplexing unit 7365 generates a multiplexed signal by multiplexing the first encoded data, the second encoded data, synchronization information, etc. The update data storage unit 7366 stores the generated multiplexed signal. The update data storage unit 7366 also uploads the multiplexed signal to the cloud server 7350.
クラウドサーバ7350は、点群データを合成する。具体的には、逆多重化部7351は、クラウドサーバ7350にアップロードされた多重化信号を逆多重化することで第1の符号化データ及び第2の符号化データを取得する。復号部7352Aは、第1の符号化データを復号することで第1の点群データ(又はセンサ信号)を取得する。復号部7352Bは、第2の符号化データを復号することで第2の点群データ(又はセンサ信号)を取得する。 The cloud server 7350 synthesizes the point cloud data. Specifically, the demultiplexing unit 7351 demultiplexes the multiplexed signal uploaded to the cloud server 7350 to obtain first encoded data and second encoded data. The decoding unit 7352A decodes the first encoded data to obtain first point cloud data (or sensor signal). The decoding unit 7352B decodes the second encoded data to obtain second point cloud data (or sensor signal).
点群データ合成部7353は、第1の点群データと第2の点群データとを所定の方法で合成する。多重化信号に同期情報及び位置補正情報が多重化されている場合には、点群データ合成部7353は、それらの情報を用いて合成を行ってもよい。 The point cloud data synthesis unit 7353 synthesizes the first point cloud data and the second point cloud data using a predetermined method. If synchronization information and position correction information are multiplexed in the multiplexed signal, the point cloud data synthesis unit 7353 may use this information to perform synthesis.
復号部7355は、大規模データ蓄積部7354に蓄積されている大規模データを逆多重化及び復号する。比較部7356は、エッジ7360で得られたセンサ信号に基づき生成された点群データとクラウドサーバ7350が有する大規模データとを比較し、更新が必要な点群データを判断する。比較部7356は、大規模データのうち、更新が必要と判断された点群データを、エッジ7360から得られた点群データに更新する。 The decoding unit 7355 demultiplexes and decodes the large-scale data stored in the large-scale data storage unit 7354. The comparison unit 7356 compares the point cloud data generated based on the sensor signals obtained by the edge 7360 with the large-scale data held by the cloud server 7350, and determines which point cloud data needs to be updated. The comparison unit 7356 updates the point cloud data determined to need to be updated from the large-scale data to the point cloud data obtained from the edge 7360.
符号化部7357は、更新された大規模データを符号化及び多重化し、得られたデータを大規模データ蓄積部7354に蓄積する。 The encoding unit 7357 encodes and multiplexes the updated large-scale data and stores the resulting data in the large-scale data storage unit 7354.
以上のように、使用する用途又はアプリケーションに応じて、取り扱う信号が異なり、多重化する信号又は符号化方法が異なる場合がある。このような場合であっても、本実施の形態を用いて様々な符号化方式のデータを多重化することで、柔軟な復号及びアプリケーション処理が可能となる。また、信号の符号化方式が異なる場合であっても、逆多重化、復号、データ変換、符号化、多重の処理により適した符号化方式を変換することで、様々なアプリケーションやシステムを構築し、柔軟なサービスの提供が可能となる。 As described above, the signals handled may differ depending on the intended use or application, and the signals or encoding methods to be multiplexed may also differ. Even in such cases, multiplexing data of various encoding methods using this embodiment enables flexible decoding and application processing. Furthermore, even if the signal encoding method is different, converting to an encoding method more suitable for demultiplexing, decoding, data conversion, encoding, and multiplexing processing makes it possible to build a variety of applications and systems and provide flexible services.
以下、分割データの復号及びアプリケーションの例を説明する。まず、分割データの情報について説明する。図107は、ビットストリームの構成例を示す図である。分割データの全体情報は、分割データ毎に、当該分割データのセンサID(sensor_id)とデータID(data_id)とを示す。なお、データIDは各符号化データのヘッダにも示される。 Below, examples of decoding and application of split data will be explained. First, the information on the split data will be explained. Figure 107 is a diagram showing an example of the configuration of a bit stream. The overall information on the split data indicates the sensor ID (sensor_id) and data ID (data_id) of each split data. The data ID is also indicated in the header of each encoded data.
なお、図107に示す分割データの全体情報は、図92と同様に、センサIDに加え、センサ情報(Sensor)と、センサのバージョン(Version)と、センサのメーカー名(Maker)と、センサの設置情報(Mount Info.)と、センサの位置座標(World Coordinate)とのうち少なく一つを含んでもよい。これにより、三次元データ復号装置は、構成情報から各種センサの情報を取得できる。 Note that, similar to FIG. 92, the overall information of the divided data shown in FIG. 107 may include at least one of the following in addition to the sensor ID: sensor information (Sensor), sensor version (Version), sensor manufacturer name (Maker), sensor installation information (Mount Info.), and sensor location coordinates (World Coordinate). This allows the three-dimensional data decoding device to obtain information about various sensors from the configuration information.
分割データの全体情報は、メタデータであるSPS、GPS又はAPSに格納されてもよいし、符号化に必須でないメタデータであるSEIに格納されてもよい。また、三次元データ符号化装置は、多重化の際に、当該SEIをISOBMFFのファイルに格納する。三次元データ復号装置は、当該メタデータに基づき、所望の分割データを取得できる。 The overall information about the split data may be stored in the metadata SPS, GPS, or APS, or in the SEI, which is metadata that is not essential for encoding. Furthermore, the 3D data encoding device stores the SEI in an ISOBMFF file during multiplexing. The 3D data decoding device can obtain the desired split data based on the metadata.
図107において、SPSは符号化データ全体のメタデータであり、GPSは位置情報のメタデータであり、APSは属性情報毎のメタデータであり、Gは分割データ毎の位置情報の符号化データであり、A1等は分割データ毎の属性情報の符号化データである。 In Figure 107, SPS is metadata for the entire encoded data, GPS is metadata for location information, APS is metadata for each attribute information, G is encoded data for location information for each divided data, and A1 etc. are encoded data for attribute information for each divided data.
次に、分割データのアプリケーション例を説明する。点群データから、任意の点群を選択し、選択した点群を提示するアプリケーションの例を説明する。図108は、このアプリケーションにより実行される点群選択処理のフローチャートである。図109~図111は、点群選択処理の画面例を示す図である。 Next, we will explain an example application for divided data. We will explain an example application that selects any point cloud from point cloud data and presents the selected point cloud. Figure 108 is a flowchart of the point cloud selection process executed by this application. Figures 109 to 111 are figures showing example screens for the point cloud selection process.
図109に示すように、アプリケーションを実行する三次元データ復号装置は、例えば、任意の点群を選択するための入力UI(ユーザインタフェース)8661を表示するUI部を有する。入力UI8661は、選択された点群を提示する提示部8662と、ユーザの操作を受け付ける操作部(ボタン8663及び8664)を有する。三次元データ復号装置は、UI8661で点群が選択された後、蓄積部8665から所望のデータを取得する。 As shown in FIG. 109, the three-dimensional data decoding device that executes the application has, for example, a UI unit that displays an input UI (user interface) 8661 for selecting an arbitrary point cloud. The input UI 8661 has a presentation unit 8662 that presents the selected point cloud and an operation unit (buttons 8663 and 8664) that accepts user operations. After a point cloud is selected in the UI 8661, the three-dimensional data decoding device obtains the desired data from the storage unit 8665.
まず、ユーザの入力UI8661に対する操作に基づき、ユーザが表示したい点群情報が選択される(S8631)。具体的には、ボタン8663が選択されることで、センサ1に基づく点群が選択される。ボタン8664が選択されることで、センサ2に基づく点群が選択される。または、ボタン8663及びボタン8664の両方が選択されることで、センサ1に基づく点群とセンサ2に基づく点群の両方が選択される。なお、点群の選択方法は一例であり、これに限らない。 First, the point cloud information that the user wants to display is selected based on the user's operation on input UI 8661 (S8631). Specifically, by selecting button 8663, a point cloud based on sensor 1 is selected. By selecting button 8664, a point cloud based on sensor 2 is selected. Alternatively, by selecting both buttons 8663 and 8664, both the point cloud based on sensor 1 and the point cloud based on sensor 2 are selected. Note that the method of selecting point clouds is an example and is not limited to this.
次に、三次元データ復号装置は、多重化信号(ビットストリーム)又は符号化データに含まれる分割データの全体情報を解析し、選択されたセンサのセンサID(sensor_id)から、選択された点群を構成する分割データのデータID(data_id)を特定する(S8632)。次に、三次元データ復号装置は、多重化信号から、特定された所望のデータIDを含む符号化データを抽出し、抽出した符号化データを復号することで、選択されたセンサに基づく点群を復号する(S8633)。なお、三次元データ復号装置は、その他の符号化データは復号しない。 Next, the three-dimensional data decoding device analyzes the overall information of the divided data contained in the multiplexed signal (bit stream) or encoded data, and identifies the data IDs (data_id) of the divided data that make up the selected point cloud from the sensor ID (sensor_id) of the selected sensor (S8632). Next, the three-dimensional data decoding device extracts encoded data containing the identified desired data ID from the multiplexed signal, and decodes the extracted encoded data to decode the point cloud based on the selected sensor (S8633). Note that the three-dimensional data decoding device does not decode other encoded data.
最後に、三次元データ復号装置は、復号された点群を提示(例えば表示)する(S8634)。図110は、センサ1のボタン8663が押下された場合の例を示し、センサ1の点群が提示される。図111は、センサ1のボタン8663とセンサ2のボタン8664の両方が押下された場合の例を示し、センサ1及びセンサ2の点群が提示される。 Finally, the three-dimensional data decoding device presents (e.g., displays) the decoded point cloud (S8634). Figure 110 shows an example where the sensor 1 button 8663 is pressed, and the point cloud of sensor 1 is presented. Figure 111 shows an example where both the sensor 1 button 8663 and the sensor 2 button 8664 are pressed, and the point clouds of sensor 1 and sensor 2 are presented.
以上、本開示の実施の形態に係る三次元データ符号化装置及び三次元データ復号装置等について説明したが、本開示は、この実施の形態に限定されるものではない。 The above describes a three-dimensional data encoding device and a three-dimensional data decoding device relating to embodiments of the present disclosure, but the present disclosure is not limited to these embodiments.
また、上記実施の形態に係る三次元データ符号化装置及び三次元データ復号装置等に含まれる各処理部は典型的には集積回路であるLSIとして実現される。これらは個別に1チップ化されてもよいし、一部又は全てを含むように1チップ化されてもよい。 Furthermore, each processing unit included in the three-dimensional data encoding device and three-dimensional data decoding device according to the above embodiments is typically realized as an LSI, which is an integrated circuit. These may be individually implemented on a single chip, or some or all of them may be included on a single chip.
また、集積回路化はLSIに限るものではなく、専用回路又は汎用プロセッサで実現してもよい。LSI製造後にプログラムすることが可能なFPGA(Field Programmable Gate Array)、又はLSI内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサを利用してもよい。 In addition, integrated circuits are not limited to LSIs, but may be realized using dedicated circuits or general-purpose processors. FPGAs (Field Programmable Gate Arrays), which can be programmed after LSI manufacturing, or reconfigurable processors, which allow the connections and settings of circuit cells within an LSI to be reconfigured, may also be used.
また、上記各実施の形態において、各構成要素は、専用のハードウェアで構成されるか、各構成要素に適したソフトウェアプログラムを実行することによって実現されてもよい。各構成要素は、CPUまたはプロセッサなどのプログラム実行部が、ハードディスクまたは半導体メモリなどの記録媒体に記録されたソフトウェアプログラムを読み出して実行することによって実現されてもよい。 Furthermore, in each of the above embodiments, each component may be configured with dedicated hardware or may be realized by executing a software program appropriate for each component. Each component may also be realized by a program execution unit such as a CPU or processor reading and executing a software program recorded on a recording medium such as a hard disk or semiconductor memory.
また、本開示は、三次元データ符号化装置及び三次元データ復号装置等により実行される三次元データ符号化方法又は三次元データ復号方法等として実現されてもよい。 The present disclosure may also be realized as a three-dimensional data encoding method or a three-dimensional data decoding method executed by a three-dimensional data encoding device, a three-dimensional data decoding device, etc.
また、ブロック図における機能ブロックの分割は一例であり、複数の機能ブロックを一つの機能ブロックとして実現したり、一つの機能ブロックを複数に分割したり、一部の機能を他の機能ブロックに移してもよい。また、類似する機能を有する複数の機能ブロックの機能を単一のハードウェア又はソフトウェアが並列又は時分割に処理してもよい。 Furthermore, the division of functional blocks in the block diagram is one example, and multiple functional blocks may be realized as a single functional block, one functional block may be divided into multiple blocks, or some functions may be moved to other functional blocks. Furthermore, the functions of multiple functional blocks with similar functions may be processed in parallel or time-shared by a single piece of hardware or software.
また、フローチャートにおける各ステップが実行される順序は、本開示を具体的に説明するために例示するためのものであり、上記以外の順序であってもよい。また、上記ステップの一部が、他のステップと同時(並列)に実行されてもよい。 The order in which each step in the flowchart is performed is merely an example to specifically explain the present disclosure, and orders other than those described above may also be used. Furthermore, some of the steps may be performed simultaneously (in parallel) with other steps.
以上、一つまたは複数の態様に係る三次元データ符号化装置及び三次元データ復号装置等について、実施の形態に基づいて説明したが、本開示は、この実施の形態に限定されるものではない。本開示の趣旨を逸脱しない限り、当業者が思いつく各種変形を本実施の形態に施したものや、異なる実施の形態における構成要素を組み合わせて構築される形態も、一つまたは複数の態様の範囲内に含まれてもよい。 The above describes three-dimensional data encoding devices and three-dimensional data decoding devices according to one or more aspects based on embodiments, but the present disclosure is not limited to these embodiments. Various modifications conceivable by those skilled in the art to these embodiments, as well as configurations constructed by combining components from different embodiments, may also be included within the scope of one or more aspects, provided they do not deviate from the spirit of the present disclosure.
本開示は、三次元データ符号化装置及び三次元データ復号装置に適用できる。 This disclosure is applicable to three-dimensional data encoding devices and three-dimensional data decoding devices.
810 三次元データ作成装置
811 データ受信部
812、819 通信部
813 受信制御部
814、821 フォーマット変換部
815 センサ
816 三次元データ作成部
817 三次元データ合成部
818 三次元データ蓄積部
820 送信制御部
822 データ送信部
831、832、834、835、836、837 三次元データ
833 センサ情報
901 サーバ
902、902A、902B、902C クライアント装置
1011、1111 データ受信部
1012、1020、1112、1120 通信部
1013、1113 受信制御部
1014、1019、1114、1119 フォーマット変換部
1015 センサ
1016、1116 三次元データ作成部
1017 三次元画像処理部
1018、1118 三次元データ蓄積部
1021、1121 送信制御部
1022、1122 データ送信部
1031、1032、1135 三次元マップ
1033、1037、1132 センサ情報
1034、1035、1134 三次元データ
1117 三次元データ合成部
1201 三次元マップ圧縮/復号処理部
1202 センサ情報圧縮/復号処理部
1211 三次元マップ復号処理部
1212 センサ情報圧縮処理部
2001 サーバ
2002、2002A、2002B クライアント装置
2011 センサ情報取得部
2012 記憶部
2013 データ送信可否判定部
2021、2021A、2021B 端末
2022、2022A、2022B 通信装置
2023 ネットワーク
2024 データ収集サーバ
2025 地図サーバ
2026 クライアント装置
2700 位置情報符号化部
2701、2711 8分木生成部
2702、2712 幾何情報算出部
2703、2713 符号化テーブル選択部
2704 エントロピー符号化部
2710 位置情報復号部
2714 エントロピー復号部
3140 属性情報符号化部
3141、3151 LoD生成部
3142、3152 周囲探索部
3143、3153 予測部
3144 予測残差算出部
3145 量子化部
3146 算術符号化部
3147、3155 逆量子化部
3148、3156 復号値生成部
3149、3157 メモリ
3150 属性情報復号部
3154 算術復号部
4601 三次元データ符号化システム
4602 三次元データ復号システム
4603 センサ端末
4604 外部接続部
4611 点群データ生成システム
4612 提示部
4613 符号化部
4614 多重化部
4615 入出力部
4616 制御部
4617 センサ情報取得部
4618 点群データ生成部
4621 センサ情報取得部
4622 入出力部
4623 逆多重化部
4624 復号部
4625 提示部
4626 ユーザインタフェース
4627 制御部
4630 第1の符号化部
4631 位置情報符号化部
4632 属性情報符号化部
4633 付加情報符号化部
4634 多重化部
4640 第1の復号部
4641 逆多重化部
4642 位置情報復号部
4643 属性情報復号部
4644 付加情報復号部
4650 第2の符号化部
4651 付加情報生成部
4652 位置画像生成部
4653 属性画像生成部
4654 映像符号化部
4655 付加情報符号化部
4656 多重化部
4660 第2の復号部
4661 逆多重化部
4662 映像復号部
4663 付加情報復号部
4664 位置情報生成部
4665 属性情報生成部
4801 符号化部
4802 多重化部
6600 属性情報符号化部
6601 ソート部
6602 Haar変換部
6603 量子化部
6604、6612 逆量子化部
6605、6613 逆Haar変換部
6606、6614 メモリ
6607 算術符号化部
6610 属性情報復号部
6611 算術復号部
7350 クラウドサーバ
7351 逆多重化部
7352A、7352B 復号部
7353 点群データ合成部
7354 大規模データ蓄積部
7355 復号部
7356 比較部
7357 符号化部
7360 エッジ
7361A、7361B センサ
7362A、7362B 点群データ生成部
7363 同期部
7364A、7364B 符号化部
7365 多重化部
7366 更新データ蓄積部
7367 逆多重化部
7368 復号部
7369 フィルタ
7370 自己位置推定部
7371 運転制御部
8661 入力UI
8662 提示部
8663、8664 ボタン
8665 蓄積部
12800、12800A 三次元データ符号化装置
12801、12809 8分木化部
12802 バッファ
12803 エントロピー符号化部
12804、12805、12807、12810 バッファ
12806 点群化部
12808 動き検出補償部
12811 制御部
12812 動き補償部
12820、12820A 三次元データ復号装置
12821 エントロピー復号部
12822、12823、12825、12828 バッファ
12824 点群化部
12826 動き補償部
12827 8分木化部
12829 制御部
12830 動き補償部
12900、12930 三次元データ符号化装置
12901、12932 グループ化部
12902、12905、12907、12923、12925、12933、12934、12936、12941、12952、12954 バッファ
12903、12942 量子化部
12904、12922、12959 逆量子化部
12906、12924、12935、12953 イントラ予測部
12908、12937 動き検出補償部
12909、12927、12938、12956 インター予測部
12910、12928、12939、12957 切替部
12911、12943 エントロピー符号化部
12920、12950 三次元データ復号装置
12921、12951 エントロピー復号部
12926、12955 動き補償部
12931、12940、12958 座標変換部
13601、13612、13621 予測部
13602、13616、13622 量子化部
13603、13613、13617、13623 符号化部
13611、13614、13644 変換部
13615 減算部
13618、13665 結合部
13631、13642、13645、13651 復号部
13632、13646、13652 逆量子化部
13633、13643、13653 再構成部
13641、13671 分離部
13647 加算部
13661 重複点結合部
13662 位置情報符号化部
13663 属性情報変換部
13664 属性情報符号化部
13672 位置情報復号部
13673 属性情報復号部
13700、13710、13740 位置情報符号化部
13701、13742、13763 シフト部
13702、13711、13743 符号化部
13720、13730、13750、13760 位置情報復号部
13721、13731、13751、13761 復号部
13722、13752 逆シフト部
13741、13753、13764 切替部
13762 座標変換部
A100 属性情報符号化部
A101 LoD属性情報符号化部
A102 変換属性情報符号化部
A110 属性情報復号部
A111 LoD属性情報復号部
A112 変換属性情報復号部
810 Three-dimensional data creation device 811 Data receiving unit 812, 819 Communication unit 813 Reception control unit 814, 821 Format conversion unit 815 Sensor 816 Three-dimensional data creation unit 817 Three-dimensional data synthesis unit 818 Three-dimensional data accumulation unit 820 Transmission control unit 822 Data transmission unit 831, 832, 834, 835, 836, 837 Three-dimensional data 833 Sensor information 901 Server 902, 902A, 902B, 902C Client device 1011, 1111 Data receiving unit 1012, 1020, 1112, 1120 Communication unit 1013, 1113 Reception control unit 1014, 1019, 1114, 1119 Format conversion unit 1015 Sensor 1016, 1116 3D data creation unit 1017 3D image processing unit 1018, 1118 3D data accumulation unit 1021, 1121 Transmission control unit 1022, 1122 Data transmission unit 1031, 1032, 1135 3D map 1033, 1037, 1132 Sensor information 1034, 1035, 1134 3D data 1117 3D data synthesis unit 1201 3D map compression/decoding processing unit 1202 Sensor information compression/decoding processing unit 1211 3D map decoding processing unit 1212 Sensor information compression processing unit 2001 Server 2002, 2002A, 2002B Client device 2011 Sensor information acquisition unit 2012 Storage unit 2013 Data transmission possibility determination unit 2021, 2021A, 2021B Terminal 2022, 2022A, 2022B Communication device 2023 Network 2024 Data collection server 2025 Map server 2026 Client device 2700 Position information encoding unit 2701, 2711 Octree generation unit 2702, 2712 Geometric information calculation unit 2703, 2713 Encoding table selection unit 2704 Entropy encoding unit 2710 Position information decoding unit 2714 Entropy decoding unit 3140 Attribute information encoding unit 3141, 3151 LoD generation unit 3142, 3152 Surroundings search unit 3143, 3153 Prediction unit 3144 Prediction residual calculation unit 3145 Quantization unit 3146 Arithmetic encoding unit 3147, 3155 Inverse quantization unit 3148, 3156 Decoded value generation unit 3149, 3157 Memory 3150 Attribute information decoding unit 3154 Arithmetic decoding unit 4601 Three-dimensional data encoding system 4602 Three-dimensional data decoding system 4603 Sensor terminal 4604 External connection unit 4611 Point cloud data generation system 4612 Presentation unit 4613 Encoding unit 4614 Multiplexing unit 4615 Input/output unit 4616 Control unit 4617 Sensor information acquisition unit 4618 Point cloud data generation unit 4621 Sensor information acquisition unit 4622 Input/output unit 4623 Demultiplexing unit 4624 Decoding unit 4625 Presentation unit 4626 User interface 4627 Control unit 4630 First encoding unit 4631 Position information encoding unit 4632 Attribute information encoding unit 4633 Additional information encoding unit 4634 Multiplexing unit 4640 First decoding unit 4641 Demultiplexing unit 4642 Position information decoding unit 4643 Attribute information decoding unit 4644 Additional information decoding unit 4650 Second encoding unit 4651 Additional information generation unit 4652 Position image generation unit 4653 Attribute image generation unit 4654 Video encoding unit 4655 Additional information encoding unit 4656 Multiplexing unit 4660 Second decoding unit 4661 Demultiplexing unit 4662 Video decoding unit 4663 Additional information decoding unit 4664 Position information generation unit 4665 Attribute information generation unit 4801 Encoding unit 4802 Multiplexing unit 6600 Attribute information encoding unit 6601 Sorting unit 6602 Haar conversion unit 6603 Quantization unit 6604, 6612 Inverse quantization unit 6605, 6613 Inverse Haar transform unit 6606, 6614 Memory 6607 Arithmetic coding unit 6610 Attribute information decoding unit 6611 Arithmetic decoding unit 7350 Cloud server 7351 Demultiplexing unit 7352A, 7352B Decoding unit 7353 Point cloud data synthesis unit 7354 Large-scale data accumulation unit 7355 Decoding unit 7356 Comparison unit 7357 Encoding unit 7360 Edge 7361A, 7361B Sensor 7362A, 7362B Point cloud data generation unit 7363 Synchronization unit 7364A, 7364B Encoding unit 7365 Multiplexing unit 7366 Update data accumulation unit 7367 Demultiplexing unit 7368 Decoding unit 7369 Filter 7370 Self-position estimation unit 7371 Driving control unit 8661 Input UI
8662 Presentation unit 8663, 8664 Button 8665 Storage unit 12800, 12800A Three-dimensional data encoding device 12801, 12809 Octree generation unit 12802 Buffer 12803 Entropy encoding unit 12804, 12805, 12807, 12810 Buffer 12806 Point group generation unit 12808 Motion detection and compensation unit 12811 Control unit 12812 Motion compensation unit 12820, 12820A Three-dimensional data decoding device 12821 Entropy decoding unit 12822, 12823, 12825, 12828 Buffer 12824 Point group generation unit 12826 Motion compensation unit 12827 Octree generation unit 12829 Control unit 12830 Motion compensation unit 12900, 12930 Three-dimensional data encoding device 12901, 12932 Grouping unit 12902, 12905, 12907, 12923, 12925, 12933, 12934, 12936, 12941, 12952, 12954 Buffer 12903, 12942 Quantization unit 12904, 12922, 12959 Inverse quantization unit 12906, 12924, 12935, 12953 Intra prediction unit 12908, 12937 Motion estimation and compensation unit 12909, 12927, 12938, 12956 Inter prediction unit 12910, 12928, 12939, 12957 Switching unit 12911, 12943 Entropy coding unit 12920, 12950 Three-dimensional data decoding device 12921, 12951 Entropy decoding unit 12926, 12955 Motion compensation unit 12931, 12940, 12958 Coordinate transformation unit 13601, 13612, 13621 Prediction unit 13602, 13616, 13622 Quantization unit 13603, 13613, 13617, 13623 Encoding unit 13611, 13614, 13644 Transformation unit 13615 Subtraction unit 13618, 13665 Combination unit 13631, 13642, 13645, 13651 Decoding units 13632, 13646, 13652 Inverse quantization units 13633, 13643, 13653 Reconstruction units 13641, 13671 Separation units 13647 Addition units 13661 Overlap point joining units 13662 Position information encoding units 13663 Attribute information conversion units 13664 Attribute information encoding units 13672 Position information decoding units 13673 Attribute information decoding units 13700, 13710, 13740 Position information encoding units 13701, 13742, 13763 Shift units 13702, 13711, 13743 Encoding units 13720, 13730, 13750, 13760 Position information decoding units 13721, 13731, 13751, 13761 Decoding units 13722, 13752 Reverse shift units 13741, 13753, 13764 Switching units 13762 Coordinate conversion units A100 Attribute information encoding units A101 LoD attribute information encoding units A102 Transformed attribute information encoding units A110 Attribute information decoding units A111 LoD attribute information decoding units A112 Transformed attribute information decoding units
Claims (18)
前記符号化位置情報を復号することで前記位置情報を生成し、
前記位置情報が直交座標系で表される場合、前記位置情報をシフトし、
前記位置情報が極座標系で表される場合、前記位置情報をシフトしない、
三次元データ復号方法。 Obtain a bitstream containing encoded position information in which position information of the three-dimensional point is encoded;
generating the position information by decoding the encoded position information;
shifting the position information when the position information is expressed in a Cartesian coordinate system;
When the position information is expressed in a polar coordinate system, the position information is not shifted.
Three-dimensional data decoding method.
前記位置情報が、前記極座標系で表されるか否かを示す第一フラグ情報と、
前記極座標系で表される前記位置情報が、前記直交座標系で表される変換位置情報に変換されるか否かを示す第二フラグ情報とを含む、
請求項1記載の三次元データ復号方法。 The bitstream comprises:
First flag information indicating whether the position information is expressed in the polar coordinate system;
and second flag information indicating whether the position information expressed in the polar coordinate system is converted into converted position information expressed in the Cartesian coordinate system.
2. The three-dimensional data decoding method according to claim 1.
請求項1記載の三次元データ復号方法。 If the position information is expressed in the polar coordinate system and the position of the sensor generating the three-dimensional point is the origin of the polar coordinate system, the shift is not performed.
2. The three-dimensional data decoding method according to claim 1.
前記位置情報が前記極座標系で表される場合、前記シフト情報で示される前記量はゼロであり、
前記極座標系で表される前記位置情報を、前記シフト情報で示される前記量に基づき前記位置情報をシフトすることで、前記極座標系で表される位置情報をシフトしない、
請求項1記載の三次元データ復号方法。 obtaining shift information indicating the amount of the shift from the bitstream;
When the position information is expressed in the polar coordinate system, the amount indicated by the shift information is zero;
The position information expressed in the polar coordinate system is shifted based on the amount indicated by the shift information, so that the position information expressed in the polar coordinate system is not shifted.
2. The three-dimensional data decoding method according to claim 1.
前記位置情報が前記直交座標系で表される場合、前記シフト情報で示される前記量に基づき前記位置情報をシフトし、
前記位置情報が前記極座標系で表される場合、前記シフト情報で示される前記量に関わらず、前記量がゼロであるとみなす、
請求項1記載の三次元データ復号方法。 obtaining shift information indicating the amount of the shift from the bitstream;
When the position information is expressed in the Cartesian coordinate system, shifting the position information based on the amount indicated by the shift information;
When the position information is expressed in the polar coordinate system, the amount is considered to be zero regardless of the amount indicated by the shift information.
2. The three-dimensional data decoding method according to claim 1.
前記ビットストリームに前記シフト情報が含まれない場合、前記位置情報が前記極座標系で表されると判定し、前記位置情報をシフトしない、
請求項1記載の三次元データ復号方法。 If the bitstream includes shift information indicating the amount of the shift, determining that the position information is expressed in the Cartesian coordinate system, and shifting the position information based on the amount indicated by the shift information;
If the shift information is not included in the bit stream, it is determined that the position information is expressed in the polar coordinate system, and the position information is not shifted.
2. The three-dimensional data decoding method according to claim 1.
前記符号化情報は、前記複数の三次元点を分割した複数の分割単位に分けられており、
前記シフト情報は、前記複数の分割単位に共通のパラメータセットに含まれる、
請求項4~6のいずれか1項に記載の三次元データ復号方法。 the bitstream includes encoded information in which position information of a plurality of three-dimensional points including the three-dimensional point is encoded;
the encoded information is divided into a plurality of division units obtained by dividing the plurality of three-dimensional points,
The shift information is included in a parameter set common to the plurality of division units.
The three-dimensional data decoding method according to any one of claims 4 to 6.
前記符号化情報は、前記複数の三次元点を分割した複数の分割単位に分けられており、
前記シフト情報は、前記複数の分割単位毎のヘッダに含まれる、
請求項4~6のいずれか1項に記載の三次元データ復号方法。 the bitstream includes encoded information in which position information of a plurality of three-dimensional points including the three-dimensional point is encoded;
the encoded information is divided into a plurality of division units obtained by dividing the plurality of three-dimensional points,
The shift information is included in a header for each of the plurality of division units.
The three-dimensional data decoding method according to any one of claims 4 to 6.
請求項1~8のいずれか1項に記載の三次元データ復号方法。 When the position information is expressed in the polar coordinate system, the position information is converted into converted position information expressed in the Cartesian coordinate system, and the converted position information is shifted.
The three-dimensional data decoding method according to any one of claims 1 to 8.
前記符号化位置情報と、三次元データ復号装置が復号した復号位置情報を前記三次元データ復号装置がシフトするか否かを示すシフト情報と、を含むビットストリームを生成し、
前記シフト情報に基づき、前記三次元データ復号装置は、
前記復号位置情報が直交座標系で表される場合、前記復号位置情報をシフトし、
前記復号位置情報が極座標系で表される場合、前記復号位置情報をシフトしない、
三次元データ符号化方法。 Generate encoded position information by encoding the position information of the three-dimensional point;
generating a bitstream including the encoded position information and shift information indicating whether the three-dimensional data decoding device shifts the decoded position information decoded by the three-dimensional data decoding device;
Based on the shift information, the three-dimensional data decoding device
When the decoded position information is expressed in a Cartesian coordinate system, shifting the decoded position information;
When the decoding position information is expressed in a polar coordinate system, the decoding position information is not shifted.
Three-dimensional data encoding method.
前記位置情報が、前記極座標系で表されるか否かを示す第一フラグ情報と、
前記極座標系で表される前記位置情報が、前記直交座標系で表される変換位置情報に変換されるか否かを示す第二フラグ情報とを含む、
請求項10記載の三次元データ符号化方法。 The bitstream comprises:
First flag information indicating whether the position information is expressed in the polar coordinate system;
and second flag information indicating whether the position information expressed in the polar coordinate system is converted into converted position information expressed in the Cartesian coordinate system.
The three-dimensional data encoding method according to claim 10.
請求項10記載の三次元データ符号化方法。 If the position information is expressed in the polar coordinate system and the position of the sensor generating the three-dimensional point is the origin of the polar coordinate system, the shift is not performed.
The three-dimensional data encoding method according to claim 10.
前記位置情報が前記極座標系で表される場合、前記シフト情報で示される前記量はゼロであり、
前記三次元データ復号装置は、前記極座標系で表される前記位置情報を、前記シフト情報で示される前記量に基づき前記位置情報をシフトすることで、前記極座標系で表される位置情報をシフトしない、
請求項10記載の三次元データ符号化方法。 the shift information indicates an amount of shift when the decoding position information is shifted,
When the position information is expressed in the polar coordinate system, the amount indicated by the shift information is zero;
the three-dimensional data decoding device shifts the position information expressed in the polar coordinate system based on the amount indicated by the shift information, thereby not shifting the position information expressed in the polar coordinate system;
The three-dimensional data encoding method according to claim 10.
前記位置情報が前記極座標系で表される場合、前記シフト情報を前記ビットストリームに格納しない
請求項10記載の三次元データ符号化方法。 When the position information is expressed in the orthogonal coordinate system, the shift information indicates an amount of shift when the decoded position information is shifted,
The three-dimensional data encoding method according to claim 10 , wherein when the position information is expressed in the polar coordinate system, the shift information is not stored in the bitstream.
前記符号化情報は、前記複数の三次元点を分割した複数の分割単位に分けられており、
前記シフト情報は、前記複数の分割単位に共通のパラメータセットに含まれる、
請求項10~14のいずれか1項に記載の三次元データ符号化方法。 the bitstream includes encoded information in which position information of a plurality of three-dimensional points including the three-dimensional point is encoded;
the encoded information is divided into a plurality of division units obtained by dividing the plurality of three-dimensional points,
The shift information is included in a parameter set common to the plurality of division units.
The three-dimensional data encoding method according to any one of claims 10 to 14.
前記符号化情報は、前記複数の三次元点を分割した複数の分割単位に分けられており、
前記シフト情報は、前記複数の分割単位毎のヘッダに含まれる、
請求項10~14のいずれか1項に記載の三次元データ符号化方法。 the bitstream includes encoded information in which position information of a plurality of three-dimensional points including the three-dimensional point is encoded;
the encoded information is divided into a plurality of division units obtained by dividing the plurality of three-dimensional points,
The shift information is included in a header for each of the plurality of division units.
The three-dimensional data encoding method according to any one of claims 10 to 14.
メモリと、を備え、
前記プロセッサは、前記メモリを用いて、
三次元点の位置情報が符号化された符号化位置情報を含むビットストリームを取得し、
前記符号化位置情報を復号することで位置情報を生成し、
前記位置情報が直交座標系で表される場合、前記位置情報をシフトし、
前記位置情報が極座標系で表される場合、前記位置情報をシフトしない、
三次元データ復号装置。 a processor;
a memory;
The processor uses the memory to:
Obtain a bitstream containing encoded position information in which position information of the three-dimensional point is encoded;
generating position information by decoding the encoded position information;
shifting the position information when the position information is expressed in a Cartesian coordinate system;
When the position information is expressed in a polar coordinate system, the position information is not shifted.
Three-dimensional data decoding device.
メモリと、を備え、
前記プロセッサは、前記メモリを用いて、
三次元点の位置情報位置情報を符号化することで符号化位置情報を生成し、
前記符号化位置情報と、三次元データ復号装置が復号した復号位置情報を前記三次元データ復号装置がシフトするか否かを示すシフト情報と、を含むビットストリームを生成し、
前記シフト情報に基づき、前記三次元データ復号装置は、
前記復号位置情報が直交座標系で表される場合、前記復号位置情報をシフトし、
前記復号位置情報が極座標系で表される場合、前記復号位置情報をシフトしない、
三次元データ符号化装置。 a processor;
a memory;
The processor uses the memory to:
Generate encoded position information by encoding the position information of the three-dimensional point;
generating a bitstream including the encoded position information and shift information indicating whether the three-dimensional data decoding device shifts the decoded position information decoded by the three-dimensional data decoding device;
Based on the shift information, the three-dimensional data decoding device
When the decoded position information is expressed in a Cartesian coordinate system, shifting the decoded position information;
When the decoding position information is expressed in a polar coordinate system, the decoding position information is not shifted.
Three-dimensional data encoding device.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2025177473A JP2026012823A (en) | 2021-01-07 | 2025-10-22 | Three-dimensional data decoding method and three-dimensional data decoding device |
Applications Claiming Priority (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US202163134665P | 2021-01-07 | 2021-01-07 | |
| US63/134,665 | 2021-01-07 | ||
| PCT/JP2022/000172 WO2022149589A1 (en) | 2021-01-07 | 2022-01-06 | Three-dimensional data decoding method, three-dimensional data encoding method, three-dimensional data decoding device, and three-dimensional data encoding device |
Related Child Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2025177473A Division JP2026012823A (en) | 2021-01-07 | 2025-10-22 | Three-dimensional data decoding method and three-dimensional data decoding device |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPWO2022149589A1 JPWO2022149589A1 (en) | 2022-07-14 |
| JP7763786B2 true JP7763786B2 (en) | 2025-11-04 |
Family
ID=82357969
Family Applications (2)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2022574067A Active JP7763786B2 (en) | 2021-01-07 | 2022-01-06 | Three-dimensional data decoding method, three-dimensional data encoding method, three-dimensional data decoding device, and three-dimensional data encoding device |
| JP2025177473A Pending JP2026012823A (en) | 2021-01-07 | 2025-10-22 | Three-dimensional data decoding method and three-dimensional data decoding device |
Family Applications After (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2025177473A Pending JP2026012823A (en) | 2021-01-07 | 2025-10-22 | Three-dimensional data decoding method and three-dimensional data decoding device |
Country Status (2)
| Country | Link |
|---|---|
| JP (2) | JP7763786B2 (en) |
| WO (1) | WO2022149589A1 (en) |
Families Citing this family (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR20250005066A (en) * | 2022-05-10 | 2025-01-09 | 삼성전자주식회사 | Adaptive POLAR CODING CONFIGURATION Transmission and Reception Method and Device |
| CN118175333A (en) * | 2022-12-09 | 2024-06-11 | 维沃移动通信有限公司 | Attribute transformation decoding method, attribute transformation encoding method and terminal |
| WO2025007270A1 (en) * | 2023-07-04 | 2025-01-09 | Oppo广东移动通信有限公司 | Encoding method, decoding method, encoder, decoder, code stream, and storage medium |
| CN120146085B (en) * | 2025-05-15 | 2025-07-25 | 北京首华建设经营有限公司 | Multi-dimensional code information generation method based on spherical coordinate conversion |
Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2014178131A1 (en) | 2013-05-01 | 2014-11-06 | 古河電気工業株式会社 | Radar system |
| WO2019012975A1 (en) | 2017-07-10 | 2019-01-17 | ソニー株式会社 | Information processing device and method |
Family Cites Families (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| EP3823286A4 (en) * | 2018-07-11 | 2021-12-01 | Sony Group Corporation | IMAGE PROCESSING DEVICE AND METHOD |
| WO2020013249A1 (en) * | 2018-07-13 | 2020-01-16 | パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ | Three-dimensional data encoding method, three-dimensional data decoding method, three-dimensional data encoding device, and three-dimensional data decoding device |
| CN113228110A (en) * | 2018-12-28 | 2021-08-06 | 松下电器(美国)知识产权公司 | Three-dimensional data encoding method, three-dimensional data decoding method, three-dimensional data encoding device, and three-dimensional data decoding device |
-
2022
- 2022-01-06 JP JP2022574067A patent/JP7763786B2/en active Active
- 2022-01-06 WO PCT/JP2022/000172 patent/WO2022149589A1/en not_active Ceased
-
2025
- 2025-10-22 JP JP2025177473A patent/JP2026012823A/en active Pending
Patent Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2014178131A1 (en) | 2013-05-01 | 2014-11-06 | 古河電気工業株式会社 | Radar system |
| WO2019012975A1 (en) | 2017-07-10 | 2019-01-17 | ソニー株式会社 | Information processing device and method |
Non-Patent Citations (4)
Also Published As
| Publication number | Publication date |
|---|---|
| JPWO2022149589A1 (en) | 2022-07-14 |
| JP2026012823A (en) | 2026-01-27 |
| WO2022149589A1 (en) | 2022-07-14 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP7826545B2 (en) | Three-dimensional data encoding method, three-dimensional data decoding method, three-dimensional data encoding device, and three-dimensional data decoding device | |
| JP7812949B2 (en) | Three-dimensional data encoding method, three-dimensional data decoding method, three-dimensional data encoding device, and three-dimensional data decoding device | |
| US12200245B2 (en) | Three-dimensional data encoding method, three-dimensional data decoding method, three-dimensional data encoding device, and three-dimensional data decoding device | |
| JP7763786B2 (en) | Three-dimensional data decoding method, three-dimensional data encoding method, three-dimensional data decoding device, and three-dimensional data encoding device | |
| JP2025108544A (en) | Three-dimensional data decoding method, three-dimensional data encoding method, three-dimensional data decoding device, and three-dimensional data encoding device | |
| US12530810B2 (en) | Three-dimensional data encoding method, three-dimensional data decoding method, three-dimensional data encoding device, and three-dimensional data decoding device | |
| JP2025111630A (en) | Three-dimensional data encoding method, three-dimensional data decoding method, three-dimensional data encoding device, and three-dimensional data decoding device | |
| US20230239517A1 (en) | Three-dimensional data encoding method, three-dimensional data decoding method, three-dimensional data encoding device, and three-dimensional data decoding device | |
| US12423876B2 (en) | Three-dimensional data encoding method, three-dimensional data decoding method, three-dimensional data encoding device, and three-dimensional data decoding device | |
| US12354316B2 (en) | Three-dimensional data encoding method, three-dimensional data decoding method, three-dimensional data encoding device, and three-dimensional data decoding device | |
| US12243276B2 (en) | Three-dimensional data encoding method and three-dimensional data encoding device | |
| US20230035807A1 (en) | Three-dimensional data encoding method, three-dimensional data decoding method, three-dimensional data encoding device, and three-dimensional data decoding device | |
| WO2022163805A1 (en) | Three-dimensional data encoding method, three-dimensional data decoding method, three-dimensional data encoding device, and three-dimensional data decoding device | |
| US20240404115A1 (en) | Three-dimensional data encoding method, three-dimensional data decoding method, three-dimensional data encoding device, and three-dimensional data decoding device | |
| US12536707B2 (en) | Three-dimensional data encoding method, three-dimensional data decoding method, three-dimensional data encoding device, and three-dimensional data decoding device | |
| US20230217046A1 (en) | Three-dimensional data encoding method, three-dimensional data decoding method, three-dimensional data encoding device, and three-dimensional data decoding device | |
| US11877014B2 (en) | Three-dimensional data encoding method, three-dimensional data decoding method, three-dimensional data encoding device, and three-dimensional data decoding device | |
| US12299944B2 (en) | Three-dimensional data encoding method, three-dimensional data decoding method, three-dimensional data encoding device, and three-dimensional data decoding device | |
| US12190551B2 (en) | Three-dimensional data encoding method, three- dimensional data decoding method, three-dimensional data encoding device, and three-dimensional data decoding device | |
| US20230230287A1 (en) | Decoding methods, encoding method, decoding device, and encoding device | |
| US12573097B2 (en) | Three-dimensional data encoding method, three-dimensional data decoding method, three-dimensional data encoding device, and three-dimensional data decoding device |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20241202 |
|
| TRDD | Decision of grant or rejection written | ||
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20251014 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20251022 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 7763786 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |