Abstract: The present disclosure relates to an information processing device and method which make it possible to suppress a reduction in coding efficiency. Information relating to quantization of a three-dimensional position to be encoded is generated. The information relating to the quantization includes, for example, information relating to a coordinate system in which the quantization is to be performed, information relating to a bounding box for normalizing the position information to be encoded, or information relating to a voxel for quantizing the position information to be encoded. Further, the three-dimensional information to be encoded is restored from a signal sequence on the basis of the information relating to the quantization of the three-dimensional position to be encoded. The present disclosure is applicable, for example, to information processing devices, image processing devices, electronic instruments, information processing methods and programs.
The present disclosure relates to an information processing apparatus and method, and more particularly, to an information processing apparatus and method capable of suppressing a decrease in encoding efficiency.
BACKGROUND
[0002]
Conventionally, and point cloud by the position information and attribute information of the point group such as representing a three-dimensional structure, vertices, edge, configured in terms, the method of compressing vertex data of the mesh defining the three-dimensional shape using a polygonal representation as, for example, such as Octree, there is encoded using a voxel (voxel) (for example, see non-Patent Document 1).
[0003]
In coding using voxel, as a premise, it is necessary to normalize the position information of the encoding target, the work is carried out to set a solid containing the coded called bounding box (Bounding box) to the .
CITATION
Non-patent literature
[0004]
非特許文献1 : R. Mekuria, Student Member IEEE, K. Blom, P. Cesar., Member, IEEE, "Design, Implementation and Evaluation of a Point Cloud Codec for Tele-Immersive Video",tcsvt_paper_submitted_february.pdf
Summary of the Invention
Problems that the Invention is to Solve
[0005]
However, in the case of encoding using voxel, coding efficiency is a possibility to reduce the setting of the bounding box not appropriate.
[0006]
The present disclosure has been made in view of such circumstances, it is desirable to make it possible to suppress the reduction of the coding efficiency.
Means for Solving the Problems
[0007]
According to an embodiment of the present technology is an information processing apparatus including a generation unit for generating information relating to quantization of the three-dimensional position of the coding target.
[0008]
According to another embodiment of the present technology is an information processing method for generating information relating to quantization of the three-dimensional position of the coding target.
[0009]
The information processing apparatus according to another embodiment of the present technology, an information processing apparatus including a restorer based on the information on the quantization of the three-dimensional position of the coding target, to restore the three-dimensional information of the encoding target from the signal sequence is there.
[0010]
An information processing method of another aspect of the present technology, based on the information on the quantization of the three-dimensional position of the coding target, an information processing method for restoring the three-dimensional information of the encoding target from the signal sequence.
[0011]
In the information processing apparatus and method according to an embodiment of the present technology, information on the quantization of the three-dimensional position of the encoding target is generated.
[0012]
In the information processing apparatus and method of another aspect of the present technology, based on information relating to quantization of the three-dimensional position of the coding target, three-dimensional information of the encoding target from the signal sequence is restored.
The invention's effect
[0013]
According to the present disclosure, it is possible to process the information. In particular, it is possible to suppress the reduction of the coding efficiency.
BRIEF DESCRIPTION OF THE DRAWINGS
[0014]
Is a diagram illustrating an example of FIG. 1 point cloud.
It is a block diagram showing a main configuration example of FIG. 2 encoder.
Is a diagram illustrating an example of an outline of FIG. 3 coding.
4 is a block diagram showing a main configuration example of a position quantization unit.
It is a block diagram showing a main configuration example of FIG. 5 the coordinate system setting unit.
It is a diagram illustrating an example of the way in FIG. 6 coordinate system setting.
7 is a diagram illustrating an example of a cylindrical coordinate system.
Is a diagram illustrating an example of FIG. 8 spherical coordinate system.
It is a diagram for explaining an example of control information related to [9] coordinate system.
It is a block diagram showing a main configuration example of FIG. 10 bounding box setting unit.
It is a diagram illustrating an example of the way in FIG. 11 of the bounding box settings.
It is a diagram showing a comparative example of PSNR by setting method [12] bounding box.
13 is a diagram illustrating an example of the way in which setting of the bounding box overlapping.
14 is a diagram illustrating an example of the way in which setting of the bounding box corresponding to the region of interest.
It is a diagram illustrating an example of the way in FIG. 15 of the bounding box corresponding to the attention area setting.
It is a diagram for explaining an example of control information related to [16] bounding box.
17 is a block diagram showing a main configuration example of a voxel setting unit.
18 is a diagram illustrating an example of the way in which linear quantization.
19 is a diagram illustrating an example of the way in which the non-linear quantization.
It is a diagram illustrating an example of the way in FIG. 20 offset setting.
21 is a diagram for explaining an example of control information related to the offset.
22 is a block diagram showing a main configuration example of a selection unit.
FIG. 23 is a block diagram showing a main configuration example of a control information generating unit.
It is a flowchart illustrating an example of FIG. 24 encoding processing flow.
Is a flowchart illustrating an example of the flow of FIG. 25 position quantization process.
Is a flowchart illustrating an example of the flow of FIG. 26 coordinate system setting process.
FIG. 27 is a flowchart illustrating an example of the flow of the bounding box setting process.
[FIG. 28] is a flow chart illustrating an example of a flow of voxel setting process.
FIG. 29 is a flowchart for explaining an example of selection processing flow.
FIG 30 is a flowchart illustrating an example of a flow of control information generation process.
[FIG. 31] is a block diagram showing a main configuration example of a decoding device.
[FIG. 32] is a block diagram showing a main configuration example of a control information analyzing unit.
[FIG 33 is a flowchart illustrating an example of a flow of a decoding process.
FIG. 34 is a flowchart for explaining an example of control information analyzing process flow.
[FIG. 35] is a flowchart describing an example of restoring processing flow.
[FIG. 36] is a block diagram showing a main configuration example of a computer.
DESCRIPTION OF THE INVENTION
[0015]
The following describes embodiments of the present disclosure (hereinafter referred to as embodiments). The description will be made in the following order.
Quantization of 1.3-dimensional position
2. First Embodiment (coding apparatus)
3. Second Embodiment (decoding
device) 4. Otherwise
[0016]
<1.3-dimensional position quantization of>
conventional, and point cloud by the position information and attribute information of the point group such as representing a three-dimensional structure, vertices, edges, consists of a surface, using polygons representation data such as a mesh that defines the three-dimensional shape Te were present.
[0017]
For example, in the case of point cloud representing the three-dimensional structure as shown in A of FIG. 1, as a collection of a large number of points, as shown in B in FIG. 1 (point group). That is, the data of the point cloud is composed of positional information and attribute information of each point of the point cloud (eg, color, etc.). Thus together with the data structure is relatively simple, any stereostructure by using a sufficient number of points can be represented with sufficient accuracy.
[0018]
However, since this point data for a cloud or mesh like a relatively large amount of data, compression of the data amount by the encoding or the like are required. For example, the encoding method using voxel (Voxel) such Octree and KDtree like are considered. Voxel is a data structure for quantizing the position information of the encoding target.
[0019]
In encoding using such voxel, as a premise, it is necessary to normalize the position information of the encoding target, sets a solid containing the coded called bounding box (Bounding box) to the work It is carried out.
[0020]
However, in the case of encoding using voxel, coding efficiency is a possibility to reduce the setting of the bounding box not appropriate.
[0021]
Accordingly, so as to generate information about quantization of the three-dimensional position of the coding target. Thus, by generating the information on the quantization of the three-dimensional position of the coded, the decoding side can restore the data appropriately on the basis of that information. In other words, it is possible to realize encoding and decoding using the quantization of the three-dimensional position of the coding target, it is possible to suppress the reduction of the coding efficiency.
[0022]
Further, so as to quantize the three-dimensional position of the coding target. In this way, coding using a quantization of the three-dimensional position of the encoding target can be performed, it is possible to suppress the reduction of the coding efficiency.
[0023]
Although a description of this technique as an example the point cloud as data to be encoded in the following, the present technology is not limited to the point cloud, for example a mesh or the like, shows a three-dimensional structure, encoding using voxels can also be applied to the encoding target what if data available. Further, the coded may be a moving image, it may be still images.
[0024]
<2. First Embodiment>
2 is a block diagram showing a main configuration example of an encoding device according to an embodiment of the information processing apparatus according to the present technology. Encoding apparatus 100 shown in FIG. 2, a data point cloud which is input as a coded encoded using the voxels, and outputs the resulting encoded data. At that time, the coding device 100 performs the coding in the manner which the present technique is applied as described below.
[0025]
As shown in FIG. 2, the encoding apparatus 100 includes a control unit 101, preprocessing unit 111, the position quantization unit 112, the signal string generator 113, coding unit 114, selection unit 115, the control information generating unit 116, and a association unit 117.
[0026]
Control unit 101 performs processing relating to control of the processing unit of the encoding device 100. For example, the control unit 101 controls the execution or skip (optional) processing by each processing unit. For example, the control unit 101 performs such control based on the predetermined control information. By doing so, the control unit 101 can suppress the execution of unnecessary processing, it is possible to suppress the increase of the load.
[0027]
Control unit 101, any but may have a configuration, for example, CPU (Central Processing Unit), has a ROM (Read Only Memory), RAM (Random Access Memory) or the like, the CPU is a ROM or the like by executing the programs and data stored by loading the RAM, the processing may be performed.
[0028]
Preprocessing unit 111 is controlled by the control unit 101, the encoding target is input to the encoding device 100 (data point cloud), performs a predetermined process as a pretreatment, the position data of the processed Quantum and it supplies the unit 112.
[0029]
For example, the control unit 101 according to the control information for permitting or prohibiting the execution of the preprocessing execution of pre-processing is permitted (not inhibited) when to perform the pre-treated before the processing unit 111. Further, for example, the control unit 101 according to the control information indicating permission or subject to a range to be encoded of prohibition of execution of the preprocessing execution of pre-processing is permitted (not inhibited) coded relative to execute the pre-treated before the processing unit 111. Furthermore, for example, the control unit 101 according to the control information that specifies the processing content to permit or prohibit execution, to execute the execution is permitted (not inhibited) processed before processing section 111. By doing so, it is possible to suppress the execution of unnecessary pretreatment, it is possible to suppress the increase of the load.
[0030]
The contents of the pre-treatment is optional. For example, the pre-processing unit 111, as a pretreatment, may be subjected to processing to reduce noise may be performed a process of changing the resolution (number of points). Also for example, to equalize the density of the point cloud, to or to have a desired bias, it may be updated arrangement of the points. Furthermore, for example, data that is not a point cloud, such as image information having depth information is to be input to the encoding apparatus 100, the preprocessing unit 111, as a pretreatment, the data of the point cloud the input data it may be converted.
[0031]
Executing pre-processing unit 111, any but may have a configuration, for example, CPU, ROM, a RAM or the like, loads the program and data that the CPU is stored in the ROM or the like to RAM by pre-processing may be performed.
[0032]
Position quantization unit 112 is controlled by the control unit 101 performs processing relating to quantization of the three-dimensional position information of each point.
[0033]
For example, the control unit 101 according to the control information for permitting or prohibiting the quantization of the three-dimensional position information, are allowed quantized three-dimensional position information (not inhibited) if, in the position quantization unit 112 the three-dimensional position information is quantized. Further, for example, the control unit 101 according to the control information indicating permission or subject to a range to be encoded of prohibiting the quantization of the three-dimensional position information, the three-dimensional position quantization information is permitted (prohibited respect have not) encoding target, thereby quantizing the three-dimensional position information on the position quantization unit 112. Furthermore, for example, the control unit 101 according to the control information specifying a parameter to allow or prohibit the use, in the position quantization unit 112, are allowed to be used (not inhibited) the three-dimensional position information by using the parameters to quantization. By doing so, it is possible to suppress the unnecessary use of unnecessary parameter execution and quantization, it is possible to suppress the increase of the load.
[0034]
Processing contents of the quantization of the three-dimensional position information is optional. For example, as the process, setting of a coordinate system which performs quantization setting of the bounding box to normalize the position information of each point, the process line of setting of voxels for quantizing the position information of each point it may be cracked.
[0035]
For example, as shown in A of FIG. 3, if the object 131 or object 132 by the data point cloud is expressed, positional quantization unit 112, as shown in B of FIG. 3, Ya object 131 to set the bounding box 141 and the bounding box 142 to include an object 132, respectively. Further, for example, the position quantization unit 112, as shown in C of FIG. 3, sets the voxel 151 by dividing the bounding box 141. Incidentally although not shown, the position quantization unit 112 performs the same processing with respect to the bounding box 142.
[0036]
Position quantization unit 112 was set as described above, the coordinate system, bounding box, voxel etc., and information about the data structure for the quantization of the position information, and the point cloud data, the signal string generator 113 supplied to. The position quantization unit 112 supplies the information about quantization of positional information such as the above control information generator 116. For example, the position quantization unit 112 supplies and information about various parameters used in the quantization of the position information, the information and the like used for the control of the control unit 101 is positioned quantization unit 112 to the control information generation unit 116.
[0037]
The position quantization unit 112, any but may have a configuration, for example, CPU, ROM, a RAM or the like, the program or data the CPU is stored in the ROM or the like to the RAM Load and by executing, it may perform the processing related to quantization of the position information.
[0038]
Signal sequence generation unit 113 is controlled by the control unit 101 performs processing relating to generation of the signal sequence.
[0039]
For example, the control unit 101 according to the control information for permitting or prohibiting the generation of the signal sequence, if the generation of the signal sequence is allowed (not inhibited), to generate a signal sequence to the signal sequence generation unit 113. Further, for example, the control unit 101 according to the control information indicating permission or subject to a range to be encoded of prohibition of generation of the signal sequence, the generation of the signal sequence is allowed (not inhibited) coded relative to generate a signal sequence to the signal sequence generation unit 113. By doing so, it is possible to suppress the generation of unnecessary signal sequence, it is possible to suppress the increase of the load.
[0040]
Method of generating the signal sequence is arbitrary. For example, the signal sequence generation unit 113, by any method such as Octree and kdtree, the data of the point cloud, encoded (compressed) in accordance with the data structure for the quantization of the position information, so as to generate a signal sequence it may be.
[0041]
For example, the signal sequence generation unit 113 divides the bounding box according to the structure of the set voxels, as shown in D of FIG. 3, assigns a point cloud each voxel. By assigning each point to voxel, position information of each point is quantized in the center of the corresponding voxel.
[0042]
Also, for example, in the case of Octree methods, the bounding box is has been voxelized (2 divided in each direction xyz) 8 division. The 8 divided is recursively repeated until the predetermined layer. At that time, voxel only 8 division containing the point is repeated, 8 divided voxels that do not contain the point is not performed. By thus stratify voxel according to the distribution of the point cloud, it is possible to reduce the number of unnecessary voxels, it is possible to suppress an unnecessary increase in the amount of information.
[0043]
Signal sequence generation unit 113, when the information for each voxel by coding information of each point as described above, generates a signal string by arranging information of each the voxel in a predetermined order. Signal sequence generation unit 113 supplies the generated signal sequence to the encoding unit 114.
[0044]
The signal string generator 113, any but may have a configuration, for example, CPU, ROM, a RAM or the like, the program or data the CPU is stored in the ROM or the like to the RAM Load by run, it may perform the process relating to generation of the signal sequence.
[0045]
Encoding unit 114 is controlled by the control unit 101 performs processing relating to encoding of the supplied signal sequence (i.e. three-dimensional position is quantized encoding target).
[0046]
For example, the control unit 101 according to the control information for permitting or prohibiting the coded signal sequence, the coding of the signal sequence is allowed (not inhibited) when encoding a signal sequence to the encoding unit 114 make. Further, for example, the control unit 101 according to the control information indicating permission or subject to a range to be encoded of prohibition of the encoded signal sequence, the coding of the signal sequence is allowed (not inhibited) code respect of the subject, to encode the signal sequence to the encoding unit 114. By doing so, it is possible to suppress coding unnecessary signal sequence, it is possible to suppress the increase of the load.
[0047]
Coding method of the signal sequence is arbitrary. For example, the coding unit 114, a signal sequence may be encoded by a variable length coding (VLC (Variable Length Code)). Encoding unit 114 supplies the encoded data obtained by such encoding (bit stream) to the selection unit 115.
[0048]
Incidentally, the encoding unit 114, any but may have a configuration, for example, a CPU, ROM, RAM, etc., loading the program and data that the CPU is stored in the ROM or the like to RAM by executing Te, it may perform processing related to coding.
[0049]
Position quantization unit 112 as described above, for example, it is possible to perform processing related to quantization of the 3-dimensional position information in several ways. Signal sequence generation unit 113 and the coding unit 114, the data structure for the quantization of the position information obtained by each method, performs the processing described above. That is, for each quantization method of the three-dimensional position information performed by the position quantization unit 112, the encoded data is obtained.
[0050]
Selecting unit 115 is controlled by the control unit 101 performs processing relating to the selection of the quantization method of the three-dimensional position of the coding target. For example, selection unit 115, by selecting a desired encoding result from a to a plurality of coded results obtained as described above (encoded data), quantum positional information corresponding to the encoded result to select the method.
[0051]
For example, the control unit 101 according to the control information for permitting or prohibiting the selection of quantization method, when the selection of the quantization method is allowed (not inhibited), thereby selecting a quantization method selector 115 . Further, for example, the control unit 101 according to the control information indicating permission or subject to a range to be encoded of prohibition of selection of the quantization method, the selection of the quantization method is allowed (not inhibited) code respect of the subject, thereby selecting a quantization method selector 115. By doing so, it is possible to suppress unnecessary selection of the quantization method, it is possible to suppress the increase of the load.
[0052]
Selection method of this quantization method is optional. For example, the selection unit 115 calculates a RD (Rate Distortion) cost of coding result, may be selected an optimum quantization method based on that value.
[0053]
Selecting unit 115 supplies the association unit 117 selected coded data. The selection unit 115 supplies information (information indicating a selection result) indicating the quantization method selected in the control information generation unit 116.
[0054]
The selection unit 115, any but may have a configuration, for example, CPU, ROM, a RAM or the like, loads the program and data that the CPU is stored in the ROM or the like to RAM by executing it may perform processing related to selection.
[0055]
Control information generating unit 116 is controlled by the control unit 101 performs processing relating to generation of the information on the quantization of the 3-dimensional position information.
[0056]
For example, the control unit 101 according to the control information for permitting or prohibiting the generation of information on the quantization of the three-dimensional position information, generating information relating to quantization of the three-dimensional position information is permitted (not inhibited) if to, to generate information about the quantization of three-dimensional position information to the control information generation unit 116. Further, for example, the control unit 101 according to the control information indicating permission or subject to a range to be encoded of prohibition of generation of the information on the quantization of the 3-dimensional position information, generating information relating to quantization of the three-dimensional position information There has been allowed (not inhibited) the encoding target, to generate information about the quantization of three-dimensional position information to the control information generation unit 116. By doing so, it is possible to suppress unnecessary generation of information on the quantization of the 3-dimensional position information, it is possible to suppress the increase of the load.
[0057]
For example, the control information generating unit 116 uses the information about quantization of positional information corresponding to the selected quantization method by the selection unit 115, generates information about the quantization position information (also control information referred to). Control information generating unit 116 supplies the generated control information to the association unit 117.
[0058]
The control information generating unit 116, any but may have a configuration, for example, CPU, ROM, a RAM or the like, the program or data the CPU is stored in the ROM or the like to the RAM Load by run, it may perform the process relating to generation of the control information.
[0059]
Associating unit 117 is controlled by the control unit 101 performs processing relating to the association between the encoded data and control information.
[0060]
For example, the control unit 101 according to the control information for permitting or prohibiting association, association (not inhibited) is permitted if, to associate the encoded data to the association unit 117 and the control information. Further, for example, the control unit 101 according to the control information indicating the association grant or subject to a range to be encoded of prohibition of the encoded data and control information, in association with the encoded data and control information is permitted respect are (not inhibited) encoded, to associate the encoded data and control information to the associating unit 117. By doing so, it is possible to suppress unnecessary association, it is possible to suppress the increase of the load.
[0061]
For example, the associating unit 117, a control information supplied from the control information generating unit 116 associates the encoded data supplied from the selection unit 115.
[0062]
Here, the term "associated" means for example that the other data (may be linked) may be utilized as in processing one of the data. That is, data associated with each other, may be summarized as one data, each of which may be a separate data. For example, control information associated with the encoded data may be transmitted in a different transmission path and the coded data. Further, for example, control information associated with the encoded data may be the encoded data is recorded on (another recording area or the same recording medium) another recording medium. Incidentally, the "association" is not the entire data, or may be a part of the data. For example, a plurality of frames, may be associated with each other in arbitrary units, such as a portion of one frame, or frame.
[0063]
Associating unit 117 outputs those data which are associated with each other into the outside of the encoding device 100. The encoding device 100 data output from the (encoded data and control information) is, for example, is decoded by the subsequent processing unit (not shown), to the data point cloud may be is restored, shown unexpected transmitted by the communication unit, may also be transmitted to other devices of the decoding apparatus or the like via a predetermined transmission path, it may be recorded on a recording medium (not shown). Incidentally, the associating unit 117 may be output without associating the control information with the encoded data.
[0064]
FIG. 4 is a block diagram showing a main configuration example of a position quantization unit 112 of FIG. As shown in FIG. 4, the position quantization unit 112 has a coordinate system setting unit 201, the bounding box setting unit 202 and the voxel setting unit 203,.
[0065]
Coordinate system setting unit 201 is controlled by the control unit 101 performs processing relating to setting of a coordinate system for performing quantization of the three-dimensional position information.
[0066]
For example, the control unit 101 in accordance with permission or control information for prohibiting setting of the coordinate system for performing quantization of the three-dimensional position information, are allowed set of the coordinate system (not inhibited) when the coordinate system to set the coordinate system setting unit 201. Further, for example, the control unit 101 according to the control information indicating permission or subject to a range to be encoded of prohibition setting of the coordinate system which performs quantization of the three-dimensional position information, permitted the setting of the coordinate system respect are (not inhibited) coded, is set the coordinate system to the coordinate system setting unit 201. By doing so, it is possible to suppress the set of unwanted coordinate system, it is possible to suppress the increase of the load.
[0067]
Furthermore, for example, the control unit 101 according to control information about the permission or prohibition of parameters used to set the coordinate system for performing quantization of three-dimensional position information, the coordinate system setting unit 201, is allowed to use (prohibited have not) to set the coordinate system for performing quantization of the three-dimensional positional information using the parameters. For example, the coordinate system and configurable, such relative orientation (shift amount and angle) relative to the world coordinate system can be set may be designated by the control information. By doing so, it is possible to suppress the unnecessary use of parameters, it is possible to suppress the increase of the load.
[0068]
For example, the coordinate system setting unit 201 sets a coordinate system that performs quantization of the three-dimensional position information of each point of the data point cloud which is supplied from the preprocessing unit 111. Coordinate system setting unit 201 may set an arbitrary coordinate system as the coordinate system for performing quantization. For example, the coordinate system setting section 201, a coordinate system which performs quantization, the world coordinate system can be set a Cartesian coordinate system, cylindrical coordinate system, the coordinate system of the spherical coordinate system or the like. Of course, it is also possible to set the coordinate system other than these examples. Furthermore, the coordinate system setting unit 201 can set any number of coordinate systems. For example it may be a single, or a plurality.
[0069]
Coordinate system setting unit 201 supplies information about the coordinate system set in the bounding box setting unit 202. Furthermore, the coordinate system setting unit 201 also supplies the control information generating unit 116 information about coordinate system set.
[0070]
The coordinate system setting section 201, any but may have a configuration, for example, CPU, ROM, a RAM or the like, the program or data the CPU is stored in the ROM or the like to the RAM Load by run, it may perform the process relating to setting of the coordinate system.
[0071]
Coordinate system setting unit 201, a coordinate system for performing quantization of the three-dimensional position information of each point of the data point cloud, for example by setting a coordinate system suitable for the object to be coded, the setting of the bounding box it can be made to more properly. Further, it is possible to further reduce the information amount of the signal sequence after quantization. Therefore, it is possible to suppress the reduction of the coding efficiency.
[0072]
Bounding box setting unit 202 is controlled by the control unit 101 performs processing relating to setting of the bounding box to normalize the position information of the encoding target.
[0073]
For example, the control unit 101 according to the control information for permitting or prohibiting the setting of the bounding box, set if allowed the setting of the bounding box (not inhibited), the bounding box to the bounding box setting unit 202 make. Further, for example, the control unit 101 according to the control information indicating permission or subject to a range to be encoded of prohibition setting of the bounding box, are allowed to set the bounding box (not inhibited) encoded to the subject, to set the bounding box to the bounding box setting unit 202. Furthermore, for example, the control unit 101 according to control information about the permission or prohibition of parameters used to set the bounding box to the bounding box setting unit 202, use (not inhibited) are allowed bounding box with parameters to set the. By doing so, it is possible to suppress the unnecessary use of settings or unnecessary parameters of the bounding box, it is possible to suppress the increase of the load.
[0074]
For example, bounding box setting unit 202 uses the coordinate system set by the coordinate system setting unit 201 sets a bounding box for each object to be coded. Incidentally, if the bounding box is more set, the bounding box setting unit 202 returns the process to the coordinate system setting unit 201 may be set to the coordinate system for each bounding box. Coordinate home setting unit 201 in other words, you can also set the coordinate system for each bounding box. In that case, the bounding box setting unit 202 performs setting of each of the bounding box using the coordinate system assigned to each bounding box.
[0075]
If the bounding box is set, the bounding box setting unit 202 supplies information about the bounding box voxel setting unit 203. Moreover, the bounding box setting unit 202 also supplies the control information generating unit 116 information on bounding box set.
[0076]
Note that the bounding box setting unit 202, any but may have a configuration, for example, CPU, ROM, a RAM or the like, the program or data the CPU is stored in the ROM or the like to the RAM Load by run, it may perform the process relating to setting of the bounding box.
[0077]
Bounding box setting unit 202, for example, by setting the bounding box suitable for the object to be coded, it is possible to further reduce the information amount of the signal sequence after quantization, to suppress the reduction of the coding efficiency can.
[0078]
Voxel setting unit 203 is controlled by the control unit 101 performs processing relating to setting of the voxel for quantizing the position information of the encoding target.
[0079]
For example, the control unit 101 according to the control information for permitting or prohibiting the voxels of setting, in which case the setting of the voxel is allowed (not inhibited), thereby setting the voxel the voxel setting unit 203. Further, for example, the control unit 101 according to the control information indicating permission or subject to a range to be encoded of prohibition of voxels settings, the setting of the voxel is allowed (not inhibited) to be encoded in contrast, to set the voxel the voxel setting unit 203. Furthermore, for example, the control unit 101 according to control information about the permission or prohibition of parameters used in the setting of the voxel, the voxel setting unit 203, are allowed to be used (not inhibited) using the parameters to set the voxels . By doing so, it is possible to suppress the unnecessary use of voxel set or unnecessary parameters, it is possible to suppress the increase of the load.
[0080]
For example, a voxel setting unit 203, in setting the bounding box by bounding box setting unit 202 sets a voxel. Incidentally, if the bounding box there are multiple voxels setting unit 203 sets a voxel for each bounding box. When voxel is set, the voxel setting unit 203 supplies the information concerning the voxel to the signal sequence generation unit 113. Further, the voxel setting unit 203 also supplies the control information generating unit 116 information on voxels set.
[0081]
Incidentally, the voxel setting unit 203, any but may have a configuration, for example, a CPU, ROM, RAM, etc., loading the program and data that the CPU is stored in the ROM or the like to RAM by executing Te, it may perform the process relating to setting of the voxel.
[0082]
Voxel setting unit 203, for example, by setting the voxels in the bounding box suitable for the object to be coded, it is possible to further reduce the information amount of the signal sequence after quantization, suppressing a decrease in encoding efficiency can do.
[0083]
FIG. 5 is a block diagram showing a main configuration example of a coordinate system setting unit 201. As shown in FIG. 5, the coordinate system setting unit 201 has a world coordinate system setting unit 211, a Cartesian coordinate system setting unit 212, a cylindrical coordinate system setting unit 213, and a spherical coordinate system setting unit 214.
[0084]
world coordinate system setting unit 211 is controlled by the control unit 101 sets the world coordinate system as the coordinate system for performing quantization. For example, the control unit 101 according to the control information for permitting or prohibiting the setting of a world coordinate system, setting the world coordinate system is permitted (not inhibited) when, the world coordinate system to the world coordinate system setting unit 211 to set the. By doing so, it is possible to suppress the set of unwanted coordinate system, it is possible to suppress the increase of the load. World coordinate system setting unit 211 supplies along with data point cloud, the identification information indicating the world coordinate system, the bounding box setting unit 202.
[0085]
Incidentally, the world coordinate system setting section 211, any but may have a configuration, for example, CPU, ROM, a RAM or the like, the program or data the CPU is stored in the ROM or the like to RAM by performing loading may be performed processing related to setting of the world coordinate system.
[0086]
Cartesian coordinate system setting unit 212 is controlled by the control unit 101, to set different the world coordinate system as the coordinate system for performing quantization predetermined Cartesian coordinate system. The Cartesian coordinate system has shifted (moved) relative to the world coordinate system, or inclined to (rotation), or both is applied coordinate system.
[0087]
For example, in the case of A in FIG. 6, the object 221 of the cylindrical coded is inclined with respect to the bounding box 222 that is configured to include the object 221. In contrast, in the case of B of FIG. 6, the object 221, the object 221 is not inclined with respect to the bounding box 225 that is configured to include (mutual longitudinal direction is parallel).
[0088]
Accordingly, the height of the bounding box 222 (double arrow 223) than the height of the bounding box 225 (double arrow 226) is lower for. Also, the shorter the width of the bounding box 222 (double arrow 224) than the width of the bounding box 225 (double arrow 227).
[0089]
Thus, bounding boxes, it is possible to further reduce its volume by setting according to encompass object shape and posture or the like. Generally, the more smaller the bounding box, the region to be normalized is reduced, it is possible to further reduce the voxel. In other words, it is possible to suppress an increase in the error due to the quantization, it is possible to suppress the reduction of the coding efficiency. Further, it is possible to reduce the amount of voxels do not contain objects (points), it is possible to further suppress the reduction of the coding efficiency.
[0090]
Incidentally, the rectangular bounding box, such as the example of Figure 6, which is not tilted with respect to the coordinate system, the setting is easy, it can also be relatively small amount of information for the setting. For example, square quadrilateral shown in A in and 6 B of Figure 6 is assumed to be parallel to the axial direction of the world coordinate system, bounding box 222 can be easily set in the world coordinate system, bounding box 225 is inclined with respect to the world coordinate system, it is difficult setting compared to the bounding box 222.
[0091]
However, the bounding box 225 can also be easily set in the coordinate system that is not inclined with respect to the bounding box 225 (coordinate system having an axis parallel to the sides of the bounding box 225). In other words, the bounding box 225, inclined with respect to the world coordinate system, by setting in other coordinate systems, like the bounding box 222 in the world coordinate system, easily setting it is possible to increase the amount of information it can be suppressed.
[0092]
Cartesian coordinate system setting unit 212, a coordinate system which performs quantization, it sets a different Cartesian coordinate system such world coordinate system. More specifically, the Cartesian coordinate system setting unit 212 sets the identification information indicating a Cartesian coordinate system, further, depending on the shape and orientation of the object, and a more appropriate position thereof Cartesian coordinate system relative to the object as an angle, to determine the relative orientation with respect to the world coordinate system of the Cartesian coordinate system, and sets the information indicating the relative attitude. For example, a Cartesian coordinate system setting unit 212, the relative position, the shift amount (x, y, z) and angles (roll, pitch, yaw) defined, the shift amount and the angle, as information indicating a relative position set. Cartesian coordinate system setting unit 212 supplies along with data point cloud, as the information of the coordinate system which performs quantization, such information being set to the bounding box setting unit 202.
[0093]
The control unit 101 is, for example, in accordance with the control information for permitting or prohibiting the setting of a Cartesian coordinate system, when the setting of a Cartesian coordinate system is permitted (not inhibited), Cartesian Cartesian coordinate system setting unit 212 to set the coordinate system. The control unit 101 according to the control information specifying a parameter to allow or prohibit the use, has been granted with respect to the world coordinate system (not inhibited) in a Cartesian coordinate system setting unit 212 in the relative position (shift amount and angle) to set the Cartesian coordinate system. By doing so, it is possible to suppress the set of unwanted coordinate system, it is possible to suppress the increase of the load.
[0094]
Note that a Cartesian coordinate system setting unit 212, any but may have a configuration, for example, CPU, ROM, a RAM or the like, the program or data the CPU is stored in the ROM or the like to RAM by performing loading may be performed processing related to setting of a Cartesian coordinate system.
[0095]
cylindrical coordinate system setting unit 213 is controlled by the control unit 101 sets a predetermined cylindrical coordinate system different from the world coordinate system as the coordinate system for performing quantization. Cylindrical coordinate system is a three-dimensional coordinate system having a cylindrical height z, the radius r, and the rotation angle θ and 3 axes. For example, as shown in A of FIG. 7, an object 232 represented in a cylindrical shape in a Cartesian coordinate system 231, as shown in B of FIG. 7, a rectangular parallelepiped shape as the object 234 in the cylindrical coordinate system 233 It is expressed.
[0096]
That is, in the cylindrical coordinate system, set the cylindrical bounding box becomes easier than in the case of a Cartesian coordinate system. In other words, if the object to be encoded is of cylindrical shape, it is possible to set the bounding box suitable for the object more easily. For example, if the object is a person, as shown in C of FIG. 7, it generally cylindrical bounding boxes can be set smaller than the rectangular bounding box. Further, for example, even when the omnidirectional image radar detector results such as shown in D of FIG. 7 with the object, the direction of generally cylindrical bounding box is set smaller than the rectangular bounding box can.
[0097]
Of course, the cylindrical coordinate system, as in the case of a Cartesian coordinate system described above, with respect to the world coordinate system, shift (movement) or inclination or can go (rotation) or, or both .
[0098]
Cylindrical coordinate system setting unit 213, a coordinate system which performs quantization to set the different cylindrical coordinate system such world coordinate system. More specifically, a cylindrical coordinate system setting unit 213 sets the identification information indicating a cylindrical coordinate system, further, depending on the shape and orientation of the object, and a more appropriate position thereof a cylindrical coordinate system relative to the object as an angle, to determine the relative orientation with respect to the world coordinate system of the cylindrical coordinate system, and sets the information indicating the relative attitude. For example, a cylindrical coordinate system setting unit 213, the relative position, the shift amount (x, y, z) and angles (roll, pitch, yaw) defined, the shift amount and the angle, as information indicating a relative position set. Incidentally, a cylindrical coordinate system setting section 213 also sets information indicating a correspondence relationship between the x-coordinate y-coordinate and r coordinates θ coordinates of the cylindrical coordinate system in the world coordinate system (correspondence between the coordinate axis between coordinate systems). Cylindrical coordinate system setting unit 213 supplies along with data point cloud, as the information of the coordinate system which performs quantization, such information being set to the bounding box setting unit 202.
[0099]
The control unit 101 is, for example, in accordance with the control information for permitting or prohibiting the setting of cylindrical coordinate system, set the cylindrical coordinate system is permitted (not inhibited) if, cylindrical to cylindrical coordinates setting unit 213 to set the coordinate system. The control unit 101 according to the control information specifying a parameter to allow or prohibit the use, has been granted with respect to the world coordinate system (not inhibited) in a cylindrical coordinate system setting unit 213 in the relative position (shift amount and angle) to set the cylindrical coordinate system. By doing so, it is possible to suppress the set of unwanted coordinate system, it is possible to suppress the increase of the load.
[0100]
Incidentally, a cylindrical coordinate system setting section 213, any but may have a configuration, for example, CPU, ROM, a RAM or the like, the program or data the CPU is stored in the ROM or the like to RAM by performing loading may be performed processing related to setting of the cylindrical coordinate system.
[0101]
spherical coordinate system setting unit 214 is controlled by the control unit 101 sets a predetermined spherical coordinate system different from the world coordinate system as the coordinate system for performing quantization. Spherical coordinate system, the radius r of the sphere, which is the rotation angle theta, and 3-dimensional coordinate system for the elevation angle φ and 3 axes. For example, as shown in A of FIG. 8, an object 241 represented spherically in a Cartesian coordinate system 231, as shown in B of FIG. 8, the planar shape represented as objects 243 in the spherical coordinate system 242 It is.
[0102]
That is, in the spherical coordinate system, setting the spherical bounding box becomes easier than in the case of a Cartesian coordinate system. In other words, if the object to be encoded is spherical, it is possible to set the bounding box suitable for the object more easily. For example, if the object is of the earth, as shown in C of FIG. 8, it generally spherical bounding box can be set smaller than the rectangular bounding box. Further, for example, even if the snowman (object comprising a plurality of spheres) as shown in D of FIG. 8 and the object, the direction of generally spherical bounding box is set smaller than the rectangular bounding box can.
[0103]
Of course, the spherical coordinate system, as in the case of a Cartesian coordinate system described above, with respect to the world coordinate system, shift (movement) or inclination or can go (rotation) or, or both .
[0104]
Spherical coordinate system setting unit 214, a coordinate system which performs quantization, setting such, spherical coordinate system different from the world coordinate system. More specifically, the spherical coordinate system setting unit 214 sets the identification information indicating a spherical coordinate system, further, depending on the shape and orientation of the object, and a more appropriate position thereof a spherical coordinate system for the object as an angle, to determine the relative orientation with respect to the world coordinate system of the spherical coordinate system, and sets the information indicating the relative attitude. For example, a spherical coordinate system setting section 214, the relative position, the shift amount (x, y, z) and angles (roll, pitch, yaw) defined, the shift amount and the angle, as information indicating a relative position set. Incidentally, the spherical coordinate system setting section 214, also the information indicating the correspondence between the x-coordinate y-coordinate z-coordinate and r coordinates θ coordinate φ coordinates of a spherical coordinate system in the world coordinate system (correspondence between the coordinate axis between coordinate systems) Set to. Spherical coordinate system setting unit 214 supplies along with data point cloud, as the information of the coordinate system which performs quantization, such information being set to the bounding box setting unit 202.
[0105]
The control unit 101 is, for example, in accordance with the control information for permitting or prohibiting the setting of the spherical coordinate system, if the setting of the spherical coordinate system is permitted (not inhibited), spherical spherical coordinate system setting unit 214 to set the coordinate system. The control unit 101 according to the control information specifying a parameter to allow or prohibit the use, has been granted with respect to the world coordinate system (not inhibited) in the spherical coordinate system setting unit 214 in the relative position (shift amount and angle) to set the spherical coordinate system. By doing so, it is possible to suppress the set of unwanted coordinate system, it is possible to suppress the increase of the load.
[0106]
Incidentally, the spherical coordinate system setting section 214, any but may have a configuration, for example, CPU, ROM, a RAM or the like, the program or data the CPU is stored in the ROM or the like to RAM by performing loading may be performed processing related to setting of the spherical coordinate system.
[0107]
coordinate system coordinate system setting unit 201 of FIG. 5 is set, the output information, and the effects are summarized in the table of FIG. As described above, the coordinate system setting section 201, a coordinate system which performs quantization, the world coordinate system, a Cartesian coordinate system, cylindrical coordinate system, and sets a spherical coordinate system. For the world coordinate system, the coordinate transformation is not necessary, it is possible to set the coordinate system more easily.
[0108]
Also, in the case of a Cartesian coordinate system, it is possible to set the orientation of the coordinate system (shift amount and angle, etc.) in accordance with the shape and orientation of the object, to set the bounding box is more suitable for the object more easily it can. Therefore, it is possible to suppress an increase in the amount of information required to define a bounding box or voxels, it is possible to suppress the reduction of the coding efficiency.
[0109]
Also, if the cylindrical coordinate system, it is possible to set the bounding box suitable for the object of cylindrical shape more easily. Therefore, it is possible to suppress an increase in the amount of information required to define a bounding box or voxels, it is possible to suppress the reduction of the coding efficiency. Furthermore, it is possible to set the orientation of the coordinate system (shift amount and angle, etc.) in accordance with the shape and orientation of the object, it is possible to set the bounding box is more suitable for the object more easily. Therefore, it is possible to further suppress an increase in the amount of information required to define a bounding box or voxels, it is possible to further suppress the reduction of the coding efficiency.
[0110]
Also, if the spherical coordinate system, it is possible to set the bounding box suitable for spherical objects more easily. Therefore, it is possible to suppress an increase in the amount of information required to define a bounding box or voxels, it is possible to suppress the reduction of the coding efficiency. Furthermore, it is possible to set the orientation of the coordinate system (shift amount and angle, etc.) in accordance with the shape and orientation of the object, it is possible to set the bounding box is more suitable for the object more easily. Therefore, it is possible to further suppress an increase in the amount of information required to define a bounding box or voxels, it is possible to further suppress the reduction of the coding efficiency.
[0111]
As described later, the selection unit 115, one of these coordinate systems are selected. Therefore, the coordinate system setting unit 201 may set the coordinate system that is more suitable shape and posture or the like of an object. Bounding box setting unit 202 and the voxel setting unit 203 sets a bounding box or voxel in the coordinate system set by the coordinate system setting unit 201. Therefore, it is possible to set the bounding box or voxels suitable for the shape and posture or the like of the object, it is possible to further suppress the reduction of the coding efficiency.
[0112]
The coordinate system set by the coordinate system setting unit 201 is arbitrary, but is not limited to the example described above. When setting the coordinate system other than those described above, the coordinate system setting unit 201, it is sufficient to have a processing unit that performs the setting of the coordinate system. The number of the coordinate system set by the coordinate system setting unit 201 is arbitrary, but is not limited to the example described above.
[0113]
FIG. 10 is a block diagram showing a main configuration example of a bounding box setting unit 202. As shown in FIG. 10, the bounding box setting unit 202, inscribed bounding box setting unit 311, alignment bounding box setting unit 312, overlap the bounding box setting unit 313, the attention area bounding box setting unit 314, and leveling having a bounding box setting unit 315.
[0114]
inscribed bounding box setting unit 311 is controlled by the control unit 101 performs processing relating to setting of the inscribed bounding box. The inscribed bounding box includes the object is that the bounding box inscribed in the bounding box. In other words, inscribed bounding box setting unit 311, for example, to set the bounding box to the object inscribed.
[0115]
For example, in A of FIG. 11, the object 321 is assumed to be formed by the point cloud distributed at a density of each 1024 in the direction of each side inside a cube 322 (point group). Inscribed bounding box setting unit 311, independent of the density of such point group, setting the inscribed bounding box 323 as the object 321 is inscribed.
[0116]
More specifically, inscribed bounding box setting unit 311 sets the identification information indicating the inscribed bounding box, further, the (information indicating that the singular) information indicating the number of the inscribed bounding box, sets the information (information of a coordinate system which performs quantization) relating the coordinate system of the inscribed bounding box. Inscribed bounding box setting unit 311 supplies along with data point cloud, as information on a bounding box, this information being set to the voxel setting unit 203.
[0117]
The control unit 101 is, for example, in accordance with the control information for permitting or prohibiting the setting of the inscribed bounding box, set the inscribed bounding box is allowed (not inhibited) if, inscribed bounding box setting unit 311 to set the inscribed bounding box.
[0118]
Incidentally, inscribed bounding box setting unit 311, any but may have a configuration, for example, CPU, ROM, a RAM and the like, RAM for program and data that the CPU is stored in the ROM or the like by loading run into, it may be carried out processing related to setting of the inscribed bounding box.
[0119]
aligned bounding box setting unit 312 is controlled by the control unit 101 performs processing relating to setting of the alignment bounding box. Position and is aligned bounding box, the center of distribution and the voxel points of the containing object is set to align (alignment has been performed) is that the bounding box. That is, the position matching the bounding box setting unit 312, the distribution of the points of the containing object (position) sets the position matching the bounding box to align the center position of the voxel.
[0120]
For example, as shown in B of FIG. 11, alignment bounding box setting unit 312 sets the alignment bounding box 324 having uniform size and position as the cube 322. More specifically, alignment bounding box setting unit 312 sets the identification information indicating a position matching the bounding box, and further, the information indicating the number of the alignment bounding box (information indicating the singular), It sets the information (information of a coordinate system which performs quantization) relating the coordinate system of the alignment bounding box. Alignment bounding box setting unit 312 supplies along with data point cloud, as information on a bounding box, this information being set to the voxel setting unit 203.
[0121]
The control unit 101 is, for example, in accordance with the control information for permitting or prohibiting the setting alignment bounding box, is permitted to set the alignment bounding box (not inhibited) if, alignment bounding box setting unit 312 to set the alignment bounding box.
[0122]
Incidentally, alignment bounding box setting unit 312, any but may have a configuration, for example, CPU, ROM, a RAM or the like, the program or data the CPU is stored in the ROM such as a RAM by loading run into, it may be carried out a process on setting alignment bounding box.
[0123]
Can you either inscribed bounding box and the position matching the bounding box to further suppress the reduction of the coding efficiency, for example by coded (image). For example, a predetermined image A correspondence relationship between bpp when to be encoded (geometory bits input points) and peak signal to noise ratio (PSNR (Peak Signal-to-Noise Ratio)), in A of FIG. 12 show. Curve 331 in A of FIG. 12 shows the correspondence between the bpp and PSNR when using inscribed bounding box. Curve 332 shows the correspondence between the bpp and PSNR when using alignment bounding box. As shown in A of FIG. 12, in this case, it is higher PSNR when using inscribed bounding box is image quality. That is, in the case of the image can be better when using inscribed bounding box to further suppress a decrease in encoding efficiency.
[0124]
Further, the correspondence between the bpp and PSNR when to be encoded (the different images) from the image (A) a predetermined image B, shown in B of FIG. 12. Curve 333 in B of FIG. 12 shows the correspondence between the bpp and PSNR when using inscribed bounding box. Curve 334 shows the correspondence between the bpp and PSNR when using alignment bounding box. As shown in B of FIG. 12, in this case, when the bpp increases to some extent, the higher the PSNR is more in the case of using the overwhelmingly alignment bounding box, the image quality. That, bpp (for example in a range greater than a predetermined straight line 335) is a predetermined size greater if found the use of alignment bounding box, possible to further suppress a decrease in encoding efficiency than with inscribed bounding box can.
[0125]
The number of bounding boxes to be set is arbitrary, it may be a plurality, for example. Overlap bounding box setting unit 313 is controlled by the control unit 101 performs processing relating to setting the overlap bounding box. The overlapping bounding boxes is that of a plurality of bounding boxes that overlap each other are set according to the distribution of the points to be coded object. In other words, the overlap bounding box setting unit 313, for example, sets a plurality of bounding boxes overlap each other in accordance with the distribution of the points to be coded.
[0126]
For example as a data point cloud, as shown in A of FIG. 13, the point 341 to the point 345 is distributed. For example, to set the bounding box of the singular with respect to those of the points when the (linearly) was set voxels, as shown in B of FIG. 13, the distance of the center positions of the voxel points are distant, voxelized there are error increases by (quantization) (exceeds the allowable range) point, there is a possibility that the coding efficiency is reduced. For example, in the case of B of FIG. 13, the point 344 and point 345 are over a plurality of voxels, far from the center of the voxel.
[0127]
Therefore, overlapping bounding box setting unit 313, the point 341 as shown in C of FIG. 13, the point 342, and point 343, grouped in the point 344 and the point 345, the D to 13 in FIG. 13 as shown in F, to assign a different voxel points of each group (bounding box). That is, as shown in D in FIG. 13, to set the bounding box 347 for a group of points 341 to the point 343, as shown in E of FIG. 13, bounding the group of points 344 and point 345 setting the box 348. That is, as shown in F of FIG. 13, overlapping (overlap) a plurality of bounding boxes (bounding box 347 and a bounding box 348) is set to each other. By doing so, it is possible to suppress an increase in error due voxelized (quantization), it is possible to suppress the reduction of the coding efficiency.
[0128]
More specifically, overlapping bounding box setting unit 313 sets the identification information indicating the overlapping bounding boxes, further includes information indicating the number of its bounding box, information (a quantization related coordinate system of each bounding box set the coordinate system of information) and to perform. Overlap bounding box setting unit 313 supplies along with data point cloud, as information on a bounding box, this information being set to the voxel setting unit 203.
[0129]
The control unit 101 is, for example, in accordance with the control information for permitting or prohibiting the setting of overlapping bounding boxes, set of overlapping bounding boxes is allowed (not inhibited) when overlapping bounding box setting unit 313 to set the overlap bounding box.
[0130]
Incidentally, the overlap bounding box setting unit 313, any but may have a configuration, for example, CPU, ROM, a RAM or the like, the program or data the CPU is stored in the ROM such as a RAM by loading run into, it may be carried out processing related to setting the overlap bounding box.
[0131]
It is also possible to set a plurality of bounding boxes according to the shape of the object. It is also possible to set the bounding box is divided the region of interest and the other region. Furthermore, the encoding method of all the bounding boxes may not be the same. For example, it may be able to set the encoding method independently for each bounding box. Further, for example, an encoding method of the encoding method and other bounding box of bounding box of the region of interest may be different. For example, the encoding method may be a image quality setting, may be a decoding order, it may be a both, it may be other than these. Also, image quality setting, for example, may be a set of depth limiting voxel hierarchy (LoD (Level Of Detail)) , or may be a set of quality of color compression (Q).
[0132]
Attention area bounding box setting unit 314 is controlled by the control unit 101 performs processing relating to setting of the region of interest bounding box. The attention area bounding box, is that the bounding box is set in accordance with the attention area setting of the encoding object. In other words, the attention area bounding box setting unit 314, for example, set a includes a bounding box region of interest to be encoded object, one or more bounding boxes including portions other than the region of interest of the object (i.e. a plurality of bounding boxes is set).
[0133]
For example, for a human-type object 350, as shown in A of FIG. 14, a portion of the face, the hair portion is set as each attention area. Attention area bounding box setting unit 314, based on the setting, to include bounding box 351 the portion of the face, sets encompassing bounding box 352 a portion of the hair. Furthermore, attention area bounding box setting unit 314 sets encompassing bounding box 353 the rest of the object 350.
[0134]
Attention area bounding box setting unit 314, to set the image quality for each bounding box. For example, in the case of FIG. 14, with respect to the bounding box 353 is not a region of interest, the number of layers limit the voxel is set to 4 (LoD = 4), the quality of the color compression is set to 85 (Q = 85). Further, with respect to the bounding box 351 is a target area to increase the texture of the face, the quality of the color compression is set to 95 (Q = 95). Further, with respect to the bounding box 352 is a region of interest to be expressed finely hair, hierarchical limit for the voxel is set to 5 (LoD = 5).
[0135]
By doing so, for example, to improve the picture quality of the important areas, such as reducing the image quality of a region not critical, it is possible to realize more efficient encoding, to improve the subjective quality of the decoded image it can.
[0136]
Further, as shown in B of FIG. 14, the region of interest bounding box setting unit 314 may be set to decoding order for each bounding box. For examples of B of FIG. 14, the bounding box 351 is first decoded (Priority = High), then the bounding box 353 is decoded (Priority = Mid), final bounding box 352 is decoded (Priority = Low ) are set to.
[0137]
That is, decoding is performed from a high bounding box of Priority preferentially. In this way, the process of the importance region when computing resources of the decoder is poor (region of interest) can be made to make do.
[0138]
Further, for example, when a captured image captured around the vehicle camera and coded, if not set multiple bounding box, as shown in A in FIG. 15, the omnidirectional around the vehicle 360 captured is performed one bounding box 361 would be set, and that all encoded the same quality with respect. However, if such an image, generally, the importance of horizontal direction of the image of the car 360 is low, the highest importance of the front of the picture. Accordingly, as shown in B of FIG. 15, it may be divided the bounding box for each direction. For example, to set the bounding box 362 with respect to the front of the car 360, to set the bounding box 363 relative to the rear of the car 360, to set the bounding box 364 to the left side of the car 360, the right side of the car 360 set the bounding box 365 against, may be set the image quality (e.g. LoD) independently.
[0139]
By doing so, for example, to improve the critical direction of image quality, such as reducing the direction of the image quality is not critical, it is possible to realize more efficient encoding, to improve the subjective quality of the decoded image it can.
[0140]
More specifically, the attention area bounding box setting unit 314, the attention area bounding box sets identification information indicating, further includes information indicating the number of its bounding box, information (a quantization related coordinate system of each bounding box and information of the coordinate system) for performing, sets information (information specifying the image quality and decoding order, etc.) relating to settings for each bounding box. Attention area bounding box setting unit 314 supplies along with data point cloud, as information on a bounding box, this information being set to the voxel setting unit 203.
[0141]
The control unit 101 is, for example, in accordance with the control information for permitting or prohibiting the setting of the region of interest bounding box, set the attention area bounding box is allowed (not inhibited) if, attention area bounding box setting unit to set the region of interest bounding box to 314.
[0142]
Incidentally, attention area bounding box setting unit 314, any but may have a configuration, for example, CPU, ROM, a RAM and the like, RAM for program and data that the CPU is stored in the ROM or the like by loading run into, it may be carried out processing related to setting of the region of interest bounding box.
[0143]
In addition, the number of voxels may be set a plurality of bounding boxes to leveling. For example, by limiting the depth limiting of voxels of each bounding box (LoD), the number of voxels may be leveled.
[0144]
In this way, it is possible to level the load of decoding processing for each bounding box. For example, when performing a decoding process for each bounding box as a parallel processing, it is possible to suppress the deviation of the load of each processing.
[0145]
Leveling bounding box setting unit 315 is controlled by the control unit 101 performs processing relating to setting of the leveling bounding box. The leveling bounding box for the object to be coded, is each a number of voxels that the plurality of bounding boxes that are configured to equalize. That is, leveling bounding box setting unit 315, for example, the object to be coded, each of the number of voxels to set a plurality of bounding boxes to leveling.
[0146]
More specifically, the leveling bounding box setting unit 315 sets the identification information indicating the leveling bounding box, further, information indicating the number of its bounding box, information (a quantization related coordinate system of each bounding box and information of the coordinate system) for performing, sets information on setting leveling the number of voxels (e.g., depth limiting of voxels of each bounding box (LoD) information specifying the) of each bounding box. Leveling bounding box setting unit 315 supplies along with data point cloud, as information on a bounding box, this information being set to the voxel setting unit 203.
[0147]
The control unit 101 is, for example, in accordance with the control information for permitting or prohibiting the setting leveling bounding box, set the leveling bounding box is allowed (not inhibited) if, leveling bounding box setting unit 315 to set the leveling bounding box.
[0148]
Incidentally, leveling bounding box setting unit 315, any but may have a configuration, for example, RAM CPU, ROM, a RAM or the like, the program or data the CPU is stored in the ROM or the like loaded into it by running, it may perform the process relating to setting leveling bounding box.
[0149]
bounding box bounding box setting unit 202 of FIG. 10 is set, the output information, and the effects are summarized in the table of FIG. 16. As described above, the bounding box setting unit 202, a bounding box inscribed bounding box, position alignment bounding box overlaps the bounding box, set the attention area bounding box, and leveling bounding box.
[0150]
Inscribed bounding box, particularly, in the case of encoding a density equal point cloud (spacing uniform point cloud of points between) (also referred to as Voxelized sequence), a relatively coarse quantization by voxelized (size of the voxel is relatively large) by applying to the case, it is possible to suppress the reduction of the coding efficiency. Further, a density uneven point cloud (interval group non-uniformities of the point between) even when encoding (non Voxelized also sequence referred to), by applying the inscribed bounding box, the coding efficiency it is possible to further suppress the reduction.
[0151]
Alignment bounding box, particularly, in the case of encoding a Voxelized sequence, by applying if quantization by voxelized is relatively small (relatively small size of the voxels), a reduction of coding efficiency it can be further suppressed.
[0152]
Overlapping bounding boxes, in particular, by applying in the case where the density of the point cloud (distance point between) are different from each other Voxelized sequence coexist, it is possible to suppress the reduction of the coding efficiency.
[0153]
Attention area bounding box, by application, it is possible to quality between the target region and the other regions are different. It is also possible priority to differ for each bounding box. Thus, for example, computing resources of the decoder even when a poor (if the performance for the request is not sufficient), it is possible to ensure the processing of the required region.
[0154]
Leveling bounding box, by application, it is possible to suppress the variation of the load of parallelization.
[0155]
Note that the bounding box of bounding box setting unit 202 sets is arbitrary, but is not limited to the example described above. When setting the bounding box other than those described above, the bounding box setting unit 202, it is sufficient to have a processing unit that performs the setting of the bounding box. The number of bounding box bounding box setting unit 202 sets is arbitrary, but is not limited to the example described above.
[0156]
Fig. 17 is a block diagram showing a main configuration example of a voxel setting unit 203. As shown in FIG. 17, the voxel setting unit 203 has a linear voxel setting unit 411, the non-linear voxel setting unit 412 and the offset voxel setting unit 413,.
[0157]
linear voxel setting unit 411 is controlled by the control unit 101 performs processing relating to setting the linear voxel. The linear voxel, in the formation of voxels for quantizing the position information of the encoding target is a method of equally divided regions of the processing target (bounding box or voxels) always. By assigning each point of the point cloud into voxels, three-dimensional position information of each point is quantized. Thus, also referred to as linear quantization and quantization of the three-dimensional position information by the linear voxel. In other words, the linear voxel is a method of setting the voxels to quantize the positional information of the encoding target linearly.
[0158]
For example, A in FIG. 18 is a schematic view expressing a two-dimensional voxels. In A of FIG. 18, and the voxel 431 is assigned to the point 421, the voxels 432 are assigned to the points 422, the voxel 433 is assigned to the point 423.
[0159]
Position information of each point is quantized in the center of each voxel. For example, in the case of A in FIG. 18, the position of the point 421 is quantized to the center point 431A of the voxel 431. That is, the distance between the point 421 and the center point 431A is error due to the quantization. The position of the point 422 is quantized to the center point 432A of the voxel 432. That is, the distance between the point 422 and the center point 432A is error due to the quantization. The position of the point 423 is quantized to the center point 433A of the voxel 433. That is, the distance between the point 423 and the center point 433A is error due to the quantization.
[0160]
At this time, the size of the voxel is relatively large (not small enough), the error becomes relatively large due to these quantization. To further reduce the error due to the quantization, as in B in FIG. 18, may be further divided voxels. For examples of B of FIG. 18, the point 421 is quantized to the center point 441A of the voxel 441. Thus, error due to the quantization is smaller than in the case of A in FIG. 18. A point 422 is quantized to the center point 442A of the voxel 442. Thus, error due to the quantization is smaller than in the case of A in FIG. 18. Furthermore, the point 423 is quantized to the center point 443A of the voxel 443. Thus, error due to the quantization is smaller than in the case of A in FIG. 18.
[0161]
That is, when the linear voxel, by increasing the number of layers of voxels, it is possible to improve the accuracy of quantization. In other words, when the linear voxel, sufficient accuracy can be set to the number of layers of voxels so as to obtain. However, increasing the number of layers of voxels, there is a possibility that the amount of information is increased so also increases the number of voxels. Therefore, there is or reduced coding efficiency, a possibility that the processing time or increasing.
[0162]
More specifically, the linear voxel setting unit 411 sets the identification information indicating the linear voxel. Linear voxel setting unit 411 supplies along with information supplied from the bounding box setting unit 202 of the data of the point cloud, as information about the linear voxel, such information being set to the signal sequence generation unit 113.
[0163]
The control unit 101 is, for example, in accordance with the control information for permitting or prohibiting the setting of the linear voxel, setting the linear voxel is allowed (not inhibited) when setting the linear voxel linear voxel setting unit 411 make.
[0164]
Incidentally, the linear voxel setting unit 411, any but may have a configuration, for example, CPU, ROM, a RAM or the like, the program or data the CPU is stored in the ROM or the like to the RAM Load by run, it may perform the processing relating to setting the linear voxel.
[0165]
nonlinear voxel setting unit 412 is controlled by the control unit 101 performs processing relating to setting of the non-linear voxel. The nonlinear voxel, in the formation of voxels for quantizing the position information of the encoding target, a method which can be divided region to be processed (the bounding box or voxels) unevenly. By assigning each point of the point cloud into voxels, three-dimensional position information of each point is quantized. Thus, also referred to as non-linear quantizing the quantization of the three-dimensional position information by the nonlinear voxels. In other words, nonlinear voxel is a method of setting the voxels to quantize the positional information of the encoding target nonlinearly.
[0166]
For example, Figure 19 is a schematic view expressing a two-dimensional voxels. As shown in FIG. 19, since the area to be processed in this case can be divided into unequal, can also be formed size and shape of the box different from even the voxel 451 have the same hierarchy. In other words, even without increasing the number of layers, it is possible to increase the smaller voxel by nonlinear voxel, by its, it is possible to improve the accuracy of the quantization of the critical areas.
[0167]
That is, in the case of non-linear voxel, without increasing the number of layers of voxels, it is possible to improve the accuracy of quantization. That is, it is possible to improve the accuracy of quantization while suppressing the increase in the reduction and processing time of coding efficiency.
[0168]
More specifically, the non-linear voxel setting unit 412 sets the identification information indicating the non-linear voxel, further sets the map information of voxels set. Nonlinear voxel setting unit 412 supplies along with information supplied from the bounding box setting unit 202 of the data of the point cloud as information on Nonlinear voxels, such information being set to the signal sequence generation unit 113.
[0169]
The control unit 101 is, for example, in accordance with the control information for permitting or prohibiting the setting of the non-linear voxel, setting the non-linear voxel is allowed (not inhibited) when setting a non-linear voxel linear voxel setting unit 412 make.
[0170]
Incidentally, the non-linear voxel setting unit 412, any but may have a configuration, for example, CPU, ROM, a RAM or the like, the program or data the CPU is stored in the ROM or the like to the RAM Load by run, it may perform the process relating to setting of the non-linear voxel.
[0171]
Incidentally, the non-linear voxel setting unit 412, for example, in the hierarchy of voxels is smaller voxels as inside the bounding box is formed, it may be set voxels as large voxel as outside is formed. Also, the non-linear voxel setting unit 412, for example, in the hierarchy of voxels is formed is smaller voxel in the region of interest may be set voxels as large voxel outside the region of interest is formed. Of course, it is also possible to set the voxels in these other methods.
[0172]
offset voxel setting unit 413 is controlled by the control unit 101 performs processing relating to setting the offset voxels. Offset voxel for voxel, by assigning an offset to the position of the voxel is a method capable of reducing the error due to quantization.
[0173]
This offset is not only voxels assigned to the offset, corresponding to voxels of the lower layer belonging to the voxel. For example, assigning an offset 471 (arrow in the drawing) to the voxel 460 on one level as in A of FIG. 20, in the voxel 461 to the voxel 464 belonging to the voxel 460 is the offset 471 is applied.
[0174]
Accordingly, as shown in B of FIG. 20, the center of the voxel 461 is moved by an offset 471. Therefore, it is possible to reduce the error in the quantization of the position information of the point 481 by the voxel 461. Similarly, as shown in B of FIG. 20, the center of the voxel 462 is moved by an offset 471. Therefore, it is possible to reduce the error in the quantization of the position information of the point 482 by the voxel 462. Similarly, as shown in B of FIG. 20, the center of the voxel 463 is moved by an offset 471. Therefore, it is possible to reduce the error in the quantization of the position information of the point 483 by the voxel 463.
[0175]
Note that this offset, includes a local offset corresponding to a portion of voxels (Local Point Offset), and Global Offset (Global Point Offset) is the offset for all voxels other that does not correspond to the local offset It is. In other words, the global offset, as shown in C of FIG. 20, assigned to voxels uppermost. Local Offset contrast, as shown in C of FIG. 20, is assigned to the hierarchy other than the uppermost layer. If both the global offset and the local offset exists, as shown in C of FIG. 20, the local offset is assigned to the voxel of the lower layer belonging to the voxel and voxels that local offset is assigned. The global offset is assigned to other voxels that do not correspond to the local offset.
[0176]
Note that the local offset can be assigned to any of the hierarchy if other than the highest layer. It may be assigned to multiple hierarchies.
[0177]
More specifically, the offset voxel setting unit 413 sets the identification information indicating the offset voxel, further sets a vector of the of the set. Offset voxel setting unit 413 supplies along with information supplied from the bounding box setting unit 202 of the data of the point cloud, as information about an offset voxels, such information being set to the signal sequence generation unit 113.
[0178]
The control unit 101 is, for example, in accordance with the control information for permitting or prohibiting the setting of the offset voxel, if the setting of the offset voxel is allowed (not inhibited), sets the non-linear voxel offset voxel setting unit 413 make.
[0179]
The offset voxel setting unit 413, any but may have a configuration, for example, CPU, ROM, a RAM or the like, the program or data the CPU is stored in the ROM or the like to the RAM Load by run, it may perform the processing relating to setting the offset voxels.
[0180]
voxel the voxel setting unit 203 of FIG. 17 is set, the output information, and the effects are summarized in the table of FIG. 21. As described above, voxel setting unit 203, a voxel, set linear voxel, nonlinear voxels, and the offset voxel.
[0181]
By applying a nonlinear voxel, as compared with the case of applying the linear voxel, in the same hierarchy limits (LoD), it is possible to improve the geometry accuracy (Geometry). Also, the non-linear voxel, for example, by applying if the accuracy required by the position different, it is possible to suppress the reduction of the coding efficiency.
[0182]
Also by applying the offset voxel, as compared with the case of applying the linear voxel, in the same hierarchy limits (LoD), it is possible to improve the geometry accuracy (Geometry). Also, the non-linear voxel, for example, by applying if locally point is displaced from the center of the Voxel, it is possible to further suppress the reduction of the coding efficiency.
[0183]
FIG. 22 is a block diagram showing a main configuration example of a selection unit 115 FIG. As shown in FIG. 22, the selection unit 115 includes a cost calculator 511 and the cost comparison section 512.
[0184]
cost calculation unit 511 is controlled by the control unit 101 performs processing relating to the calculation of the cost. The method of calculating the cost is arbitrary. For example, the cost calculating unit 511 calculates the RD cost for the encoded data supplied from the encoding unit 114. Cost calculation unit 511 calculates such cost is performed for all the coded data corresponding to the quantization method of the three-dimensional position. In other words, the cost calculating unit 511 calculates the cost of the encoded data for respective quantization method. Cost calculation unit 511 supplies information about the calculated cost cost comparison section 512.
[0185]
The control unit 101 is, for example, in accordance with the control information for permitting or prohibiting the cost calculation, cost calculation is permitted (not inhibited) when, to calculate the cost of the encoded data to the cost calculation unit 511.
[0186]
Incidentally, the cost calculation section 511, any but may have a configuration, for example, a CPU, ROM, RAM, etc., loading the program and data that the CPU is stored in the ROM or the like to RAM by executing Te may perform processing related to the calculation of the cost.
[0187]
cost comparison unit 512 is controlled by the control unit 101 performs processing relating to the comparison of cost. Method of comparing the cost is arbitrary. For example, cost comparison unit 512 selects an optimal quantization method by comparing the cost of the coded data for each quantization method. Cost comparison unit 512, the coded data corresponding to the selected quantization method as the optimal quantization method, as an encoding result corresponding to the selected optimum quantization method, and supplies the association unit 117. Moreover, the cost comparison unit 512 supplies information indicating the result of the comparison (or on the choice of quantization method), the control information generating unit 116.
[0188]
The control unit 101 is, for example, in accordance with the control information for permitting or prohibiting the cost comparison, when the cost comparison is allowed (not inhibited), the cost of each quantization method in the cost comparison section 512 to be compared.
[0189]
Incidentally, the cost comparison section 512, any but may have a configuration, for example, a CPU, ROM, RAM, etc., loading the program and data that the CPU is stored in the ROM or the like to RAM by executing Te may perform processing related to the comparison of cost.
[0190]
As described above, by the selection unit 115 selects a quantization method of the location information, the encoding apparatus 100 can perform the quantization of positional information in a more appropriate way. Accordingly, the encoding apparatus 100 can suppress an increase in the information amount of the signal sequence, it is possible to suppress the reduction of the coding efficiency.
[0191]
FIG. 23 is a block diagram showing a main configuration example of a control information generating unit 116 of FIG. Control information generating section 116 as shown in FIG. 23, the position quantization control information generating unit 611, coordinate system setting control information generating unit 612, the bounding box setting control information generating unit 613, and a voxel setting control information generating unit 614 a.
[0192]
Position quantization control information generating unit 611 is controlled by the control unit 101, based on the information supplied, the result of selection by the selection unit 115 from the position quantization unit 112, It generates position quantization control information for the selected quantization method.
[0193]
Position quantization control information is control information relating to quantization of positional information. This position quantization control information, if the information about the quantization position information may be specifically any such information. For example, information on permission or prohibition of the quantization of the three-dimensional position of the coding target may be included in the position quantization control information. Information about the permission or prohibition quantization three-dimensional position of the coding target may be any information. For example, it may be included flag information to allow quantization of the three-dimensional position of the coding target, may include flag information for prohibiting the quantization of the three-dimensional position of the coding target.
[0194]
Further, for example, information about the permission or subject to a range to be encoded of prohibiting the quantization of the three-dimensional position of the coding target may be included in the position quantization control information. Information about the permission or subject to a range to be encoded of prohibiting the quantization of three-dimensional position of the coding target may be any information. For example, it may also include information indicating the range to be encoded to allow a quantization of the three-dimensional position of the encoding target by using a bounding box or voxel or the like, quantization of the three-dimensional position of the coding target the range to be encoded may include information indicating using the bounding box and voxels such prohibited.
[0195]
Further, for example, information on permission or prohibition of parameters used in the quantization of the 3-dimensional position of the coding target may be included in the position quantization control information. Information about the permission or prohibition of parameters used in the quantization of the three-dimensional position of the coding target may be any information. For example, it may also include information indicating a viable method for the treatment may contain information indicating the infeasible process of each process.
[0196]
By transmitting information about these authorization or prohibition to the decoding side (decoder), the decoding side (decoder), not only it is possible to omit an unnecessary process on the basis of this information, even the analysis of unnecessary control information it can be omitted.
[0197]
Further, for example, information about the execution or skipped quantization of the three-dimensional position of the coding target may be included in the position quantization control information. Information about the execution or skipped quantization of three-dimensional position of the coding target may be any information. For example, it may be included flag information indicating whether or not perform the quantization of the three-dimensional position of the coding target, whether skipped (omitted) the quantization of the three-dimensional position of the coding target it may include flag information indicating.
[0198]
Further, for example, information on the range to be encoded as a run or skip target quantization of the three-dimensional position of the coding target may be included in the position quantization control information. Information about the coding range to be encoded as a run or skip target quantization of the three-dimensional position of the subject may be any information. For example, it may also include information indicating the range to be encoded quantization is performed in the three-dimensional position of the encoding target by using a bounding box or voxels such as quantum three-dimensional position of the encoding target reduction may also include information indicating using the bounding box and the voxel etc. skipped range to be encoded.
[0199]
Further, for example, information about the parameters used in the quantization of the 3-dimensional position of the coding target may be included in the position quantization control information. Information about the parameters used in the quantization of the three-dimensional position of the coding target may be any information. For example, it may also include information indicating a parameter used in the quantization of the 3-dimensional position of the coding target, includes information indicating the parameter which has not been used in the quantization of the three-dimensional position of the coding target it may be.
[0200]
By transmitting information about the information and parameters relating to these runs and skip the decoding side (decoder), the decoding side (decoder), based on the information pertinent processing, may skip unnecessary processing it can. Accordingly, the decoding side (decoder) can appropriately recover the data point cloud.
[0201]
Position quantization control information generating unit 611 supplies the generated position quantization control information to the coordinate system setting control information generating unit 612.
[0202]
The control unit 101 is, for example, according to permission or control information for prohibiting the generation of the position quantization control information, generating position quantization control information is permitted (not inhibited) when the position quantization control to produce a position quantization control information to the information generating unit 611. By doing so, it is possible to suppress the generation of unnecessary control information, it is possible to suppress the increase of the load.
[0203]
The position quantization control information generating unit 611, any but may have a configuration, for example, CPU, ROM, a RAM or the like, the program or data the CPU is stored in the ROM or the like by loading and executing the RAM, it may perform processing relating to generation position quantization control information.
[0204]
coordinate system setting control information generating unit 612 is controlled by the control unit 101, the information supplied from the position quantization control information generating unit 611, to the result of selection by the selection unit 115 based on, to generate a coordinate system setting control information for the selected quantization method.
[0205]
Coordinate system setting control information is control information related to setting of the coordinate system. The coordinate system setting control information, if the information about the coordinate system, may be specifically any such information. For example, information on permission or prohibition of setting coordinate systems may be included in the coordinate system setting control information. Information about the permission or prohibition of setting the coordinate system may be any information. For example, it may be included flag information for permitting setting of the coordinate system, it may include flag information for prohibiting setting of the coordinate system.
[0206]
Further, for example, information on the range to be encoded as a permission or prohibition of the target setting of the coordinate system may be included in the coordinate system setting control information. Information about the permission or subject to a range to be encoded of prohibition of setting the coordinate system may be any information. For example, it may also include information indicating the range to be encoded to allow setting of the coordinate system by using a bounding box or voxel like, Ya bounding box the scope of coded to prohibit the setting of the coordinate system it may include information indicating using voxels and the like.
[0207]
Further, for example, information on permission or prohibition of parameters used to set the coordinate system may be included in the coordinate system setting control information. Information about the permission or prohibition of parameters used to set the coordinate system, it may be any information. For example, it may include information that indicates the parameter that is allowed to use, may contain information indicating the parameters used is prohibited.
[0208]
By transmitting information about these authorization or prohibition to the decoding side (decoder), the decoding side (decoder), not only it is possible to omit an unnecessary process on the basis of this information, even the analysis of unnecessary control information it can be omitted.
[0209]
Further, for example, information about the execution or skip setting of the coordinate system may be included in the coordinate system setting control information. Information about the execution or skip setting of this coordinate system, may be any information. For example, it may be included flag information indicating whether or not perform the setting of the coordinate system, it may include flag information indicating whether the skip (skip) the setting of the coordinate system.
[0210]
Further, for example, information on the range to be encoded as a run or skipped subject of setting the coordinate system may be included in the coordinate system setting control information. Information as to the scope of coded as the run or skipped subject of this coordinate system setting may be any information. For example, it may also include information indicating an encoding range for which the coordinate system setting has been performed by using a bounding box or voxels such as bounding box range setting of the coordinate system is skipped coded and voxel like may include information indicating used.
[0211]
Further, for example, information about the parameters used to set the coordinate system may be included in the coordinate system setting control information. Information about this parameter may be any information. For example, it may also include information indicating the parameters used to set the coordinate system, may include information that indicates the parameter that has not been used to set the coordinate system.
[0212]
Further, for example, identification information indicating the type of coordinate system employed in selected quantization methods may also be included in the information about this parameter. Further, the identification information, an orthogonal coordinate system, may be located in the identity of the cylindrical coordinate system, or a spherical coordinate system.
[0213]
Further, information indicating a relative position with respect to the world coordinate system of the coordinate system employed in selected quantization methods may also be included in the information about the parameters. Information indicating the relative posture, may include a shift amount from the world coordinate system of the coordinate system employed in selected quantization method. Further, information indicating the relative posture, may include an angle between the coordinate system and the world coordinate system which is employed in the selected quantization method.
[0214]
Furthermore, if the coordinate system is employed in selected quantization method of the coordinate system other than Cartesian coordinate system, information about the parameters, even to include information indicating the correspondence between the coordinate axes and the orthogonal coordinate system the coordinate system good.
[0215]
By transmitting information about the information and parameters relating to these runs and skip the decoding side (decoder), the decoding side (decoder), based on the information pertinent processing, may skip unnecessary processing it can. Accordingly, the decoding side (decoder) can appropriately recover the data point cloud.
[0216]
Coordinate system setting control information generating unit 612 supplies the generated coordinate system setting control information to the bounding box setting control information generating unit 613.
[0217]
The control unit 101 is, for example, in accordance with the control information for permitting or prohibiting the generation of the coordinate system setting control information, generating the coordinate system setting control information is permitted (not inhibited) when the coordinate system setting control to produce a coordinate system setting control information to the information generating unit 612. By doing so, it is possible to suppress the generation of unnecessary control information, it is possible to suppress the increase of the load.
[0218]
The coordinate system setting control information generating unit 612, any but may have a configuration, for example, CPU, ROM, a RAM or the like, the program or data the CPU is stored in the ROM or the like by loading and executing the RAM, it may perform processing relating to generation of the coordinate system control information.
[0219]
bounding box setting control information generating unit 613 is controlled by the control unit 101, the information supplied from the coordinate system setting control information generating unit 612, to the result of selection by the selection unit 115 based on, to generate a bounding box setting control information for the selected quantization method.
[0220]
Bounding box setting control information is control information related to setting of the bounding box. The bounding box setting control information, if the information about the bounding boxes may be specifically any such information. For example, information on permission or prohibition of setting the bounding box may be included in the bounding box setting control information. Information about the permission or prohibition of setting the bounding box may be any information. For example, it may be included flag information for permitting setting of the bounding box, it may include flag information for prohibiting setting of the bounding box.
[0221]
Further, for example, information about the permission or subject to a range to be encoded of prohibition setting bounding boxes may be included in the bounding box setting control information. Information about the permission or subject to a range to be encoded of prohibition setting for this bounding box may be any information. For example, a range to be encoded to allow setting of the bounding box may include information indicating with voxel etc., indicating the range to be encoded to inhibit the setting of the bounding box using the voxel or the like information may also be included.
[0222]
Further, for example, information on permission or prohibition of how to set the bounding box may be included in the bounding box setting control information. Information about the permission or prohibition of a method of setting the bounding box may be any information. For example, it may also include information indicating a setting method of the bounding box are authorized to use, it may include information showing how to set the bounding box used is prohibited.
[0223]
Further, for example, information on permission or prohibition of parameters used to set the bounding box may be included in the bounding box setting control information. Information about the permission or prohibition of parameters used to set the coordinate system, it may be any information. For example, it may include information that indicates the parameter that is allowed to use, may contain information indicating the parameters used is prohibited.
[0224]
By transmitting information about these authorization or prohibition to the decoding side (decoder), the decoding side (decoder), not only it is possible to omit an unnecessary process on the basis of this information, even the analysis of unnecessary control information it can be omitted.
[0225]
Further, for example, information about the execution or skip settings bounding boxes may be included in the bounding box setting control information. Information about the execution or skip setting of this bounding box may be any information. For example, it may be included flag information indicating whether or not perform the setting of the bounding box, the setting of the bounding box skipping may include flag information indicating whether (optional) was.
[0226]
Further, for example, information on the range to be encoded as a run or skipped object of setting of the bounding box may be included in the bounding box setting control information. Information as to the scope of coded as the run or skipped subject of this bounding box setting may be any information. For example, the bounding box range of settings is executed coded may contain information indicating with voxels like, the range setting of the bounding box of the skipped coded using a voxel like may contain information that shows.
[0227]
Further, for example, information about the parameters used to set the bounding box may be included in the bounding box setting control information. Information about this parameter may be any information. For example, it may also include information indicating the parameters used to set the bounding box may contain information that indicates the parameter that has not been used to set the bounding box.
[0228]
The identification information indicating a setting method of the bounding box may be included in the information about this parameter. Further, the identification information, a method of setting an inscribed bounding box, how to set the alignment bounding box, the method of setting the overlapping bounding boxes, set the attention area bounding box, to set the image quality for each bounding box how to set a region of interest bounding box, the method sets a decoding order in each bounding box, or the number of voxels may be some identification information about how to set a plurality of bounding boxes to leveling.
[0229]
Further, information indicating the number of bounding box set may be included in the information about this parameter. Further, information indicating the coordinate system corresponding to each bounding box may be included in the information about this parameter. Moreover, information on the image quality of the bounding boxes may be included in the information about this parameter. Then, information on the image quality, may be to include information about the depth limiting voxel hierarchy may include information about the quality of the color compression.
[0230]
Also, information regarding the decoding order of the respective bounding boxes may be included in the information about this parameter.
[0231]
By transmitting information about the information and parameters relating to these runs and skip the decoding side (decoder), the decoding side (decoder), based on the information pertinent processing, may skip unnecessary processing it can. Accordingly, the decoding side (decoder) can appropriately recover the data point cloud.
[0232]
Bounding box setting control information generating unit 613 supplies the generated bounding box setting control information to the voxel setting control information generating unit 614.
[0233]
The control unit 101 is, for example, in accordance with the control information for permitting or prohibiting the formation of the bounding box setting control information, generating a bounding box setting control information is permitted (not inhibited) if, bounding box setting control to produce a bounding box setting control information to the information generating unit 613. By doing so, it is possible to suppress the generation of unnecessary control information, it is possible to suppress the increase of the load.
[0234]
Note that the bounding box setting control information generating unit 613, any but may have a configuration, for example, CPU, ROM, a RAM or the like, the program or data the CPU is stored in the ROM or the like by loading and executing the RAM, it may perform processing relating to generation of the bounding box control information.
[0235]
voxel setting control information generating unit 614 is controlled by the control unit 101, the information supplied from the bounding box setting control information generating unit 613, based on the result of the selection by the selection unit 115 , it generates a voxel setting control information for the selected quantization method.
[0236]
Voxel setting control information is a control information about the setting of the voxel. The voxel setting control information, if the information about the voxel may be specifically any such information. For example, information on permission or prohibition of voxels settings may be included in the voxel setting control information. Information about the permission or prohibition setting for this voxel may be any information. For example, it may be included flag information for permitting setting of the voxel, it may include flag information for prohibiting setting of the voxel.
[0237]
Further, for example, information about the permission or subject to a range to be encoded of prohibition of voxels settings may be included in the voxel setting control information. Information about the permission or subject to a range to be encoded of prohibition setting for this voxel may be any information. For example, it may also include information indicating the range to be encoded to allow setting of the voxel using the data of point cloud data, etc. in the range point cloud to be encoded to inhibit the setting of the voxel it may include information indicating used.
[0238]
Further, for example, information on permission or prohibition of the setting method of voxels may be included in the voxel setting control information. Information about the permission or prohibition of setting this voxel may be any information. For example, it may also include information indicating a setting method of voxels that are permitted to use, may include information indicating a setting method of voxels used is prohibited.
[0239]
Further, for example, information on permission or prohibition of parameters used in the setting of the voxel may be included in the voxel setting control information. Information about the permission or prohibition of parameters used to set the coordinate system, it may be any information. For example, it may include information that indicates the parameter that is allowed to use, may contain information indicating the parameters used is prohibited.
[0240]
By transmitting information about these authorization or prohibition to the decoding side (decoder), the decoding side (decoder), not only it is possible to omit an unnecessary process on the basis of this information, even the analysis of unnecessary control information it can be omitted.
[0241]
Further, for example, information about the execution or skip voxels settings may be included in the voxel setting control information. Information about the execution or skip setting for this voxel may be any information. For example, it may be included flag information indicating whether or not perform the setting of the voxel, may include flag information indicating whether the setting of the voxel skipped (omitted).
[0242]
Further, for example, information on the range to be encoded as a run or skip target voxel settings may be included in the voxel setting control information. Information as to the scope of coded as the run or skipped subject of this voxel setting may be any information. For example, the voxel set may also include information indicating using data of the point cloud range of the executed encoded, the range setting of the voxel of the skipped coded point cloud data it may include information indicating with like.
[0243]
Further, for example, information about the parameters used in the setting of the voxel may be included in the voxel setting control information. Information about this parameter may be any information. For example, it may also include information indicating the parameters used in the setting of the voxel, it may include information indicating the parameter which has not been used to set the voxel.
[0244]
Moreover, identification information for identifying whether the quantized nonlinearly or quantized linearly, may be included in the information about this parameter. Moreover, information on the arrangement of the voxels in the case of quantization in a non-linear, may be included in the information about this parameter. Further, index information indicating which selects one from a plurality of candidates of the arrangement pattern of voxel may be included in the information about the arrangement of the voxel. Further, the map information showing the arrangement of the voxels may be included in the information about the arrangement of the voxel.
[0245]
Moreover, information on the offset of the position of the voxel, may be included in the information about this parameter. For example, this offset may be set to be a global offset corresponding to all voxels local offset does not correspond. Also for example, the offset may be set to be a local offset corresponding to only the voxels of the lower layer belonging voxels this offset is assigned and its voxel.
[0246]
By transmitting information about the information and parameters relating to these runs and skip the decoding side (decoder), the decoding side (decoder), based on the information pertinent processing, may skip unnecessary processing it can. Accordingly, the decoding side (decoder) can appropriately recover the data point cloud.
[0247]
Voxel setting control information generating unit 614 supplies the generated voxel set control information associating unit 117.
[0248]
The control unit 101 is, for example, in accordance with the control information for permitting or prohibiting the generation of voxel setting control information, generating a voxel setting control information is permitted (not inhibited) if, voxel setting control information generating unit 614 to generate a voxel setting control information. By doing so, it is possible to suppress the generation of unnecessary control information, it is possible to suppress the increase of the load.
[0249]
Incidentally, voxel setting control information generating unit 614, any but may have a configuration, for example, CPU, ROM, a RAM and the like, RAM for program and data that the CPU is stored in the ROM or the like by loading run into, it may be carried out a process related to generation of the voxel control information.
[0250]
Control information generating unit 116 generates control information as described above, by supplying to the decoding side (decoder), the decoding side (decoder), the encoded data obtained by encoding by applying the present technology, and more easier it can appropriately decode processing (restoration processing). Therefore, it is possible to realize the suppression of decrease in the coding efficiency.
[0251]
will be described with reference to the flowchart of FIG. 24 an example of the flow of encoding processing executed by the encoding apparatus 100 configured as described above.
[0252]
When the encoding process is started, the pre-processing unit 111, in step S101, performs a pre-process on the input data.
[0253]
In step S102, the control unit 101 obtains an attention area setting. The region of interest setting is information about the region of interest is set for the point cloud data to be encoded. For example, it includes the information indicating the position and range of the set region of interest.
[0254]
The acquisition source of the region of interest setting is optional. For example, it may be input by the user via the input unit (not shown) or the like. In that case, the control unit 101 acquires the inputted target region setting. Further, for example, it may be stored in advance in the storage unit (not shown). In that case, the control unit 101 reads out and acquires the attention area setting from the storage unit. Further, for example, it may be through the communication unit (not shown) to be supplied from another device. In that case, the control unit 101 communicates with other devices by controlling the communication unit receives and obtains the attention area setting.
[0255]
In step S103, the control unit 101 acquires the speed requirements. This speed requirement is information indicating the processing speed necessary for decoding processing (restoration processing). To perform decoding processing (restoration processing) without failure, it is necessary to comply with this speed requirement. Acquisition source for the speed requirement is any like the attention area setting.
[0256]
Control unit 101 controls the various processing units using the information such as these attention area setting and speed requirements needed to perform the coding.
[0257]
In step S104, the position quantization unit 112 quantizes the positional information of the encoding target.
[0258]
In step S105, the signal string generator 113 generates a signal string based on the data structure.
[0259]
In step S106, the encoding unit 114 encodes the signal sequence generated by the processing in step S105.
[0260]
In step S107, the selecting section 115 selects the position quantization method.
[0261]
In step S108, the control information generating unit 116 generates control information.
[0262]
In step S109, the association unit 117 associates the bit stream (coded data) corresponding to the position quantization method selected by the processing in step S107, and the control information generated by the processing in step S108 with each other.
[0263]
In step S110, the association unit 117 outputs a and associated encoded data and control information.
[0264]
When the process of step S110 is finished, the encoding process ends. For example, when the coding object is a moving image, performing this series of processing for each frame.
[0265]
with reference to the flowchart of FIG. 25, an example of a positional quantization process flow to be executed in step S104 of FIG. 24.
[0266]
When the position quantization process starts, the coordinate system setting unit 201 in step S121, it sets the coordinate system.
[0267]
In step S122, the bounding box setting unit 202 uses the coordinate system set in step S121, sets a bounding box.
[0268]
In step S123, the voxel setting unit 203 sets a voxel set bounding box in step S122.
[0269]
When the process of step S123 is completed, the position quantization process is completed, the process returns to FIG. 24.
[0270]
with reference to the flowchart of FIG. 26, an example of a flow of coordinate system setting processing executed in step S121 of FIG. 25.
[0271]
If the coordinate system setting process is started, the world coordinate system setting unit 211, at step S131, the setting a world coordinate system as the coordinate system for the object to be coded.
[0272]
In step S132, a Cartesian coordinate system setting unit 212 sets the Cartesian coordinate system as the coordinate system for the object to be encoded, sets the shift amount and the angle from the world coordinate system.
[0273]
In step S133, a cylindrical coordinate system setting unit 213, between the set of cylindrical coordinate system as the coordinate system for the object to be coded, a shift amount from the world coordinate system, angle, and the Cartesian coordinate system (world coordinate system) to set the corresponding relationship between the axes.
[0274]
In step S134, the spherical coordinate system setting unit 214, between the set of spherical coordinate system as the coordinate system for the object to be coded, a shift amount from the world coordinate system, angle, and the Cartesian coordinate system (world coordinate system) to set the corresponding relationship between the axes.
[0275]
When the process of step S134 is completed, the coordinate system setting process is finished, the process returns to FIG. 25.
[0276]
with reference to the flowchart of FIG. 27, an example of the flow of the bounding box setting process executed in step S122 of FIG. 25.
[0277]
If the bounding box setting process is started, it inscribed bounding box setting unit 311, an object to be encoded to set the bounding box inscribed in step S141.
[0278]
In step S142, the position matching the bounding box setting unit 312 sets a bounding box by combining the center of the distribution and voxel point.
[0279]
In step S143, the overlapping bounding box setting unit 313, the combined center of distribution and voxel point, sets a plurality of bounding boxes overlap each other.
[0280]
In step S144, the attention area bounding box setting unit 314 sets a plurality of bounding boxes corresponding to the attention area setting. For example, the attention area bounding box setting unit 314, based on the acquired attention area set by the control unit 101 in step S102 of FIG. 24, to set a plurality of bounding boxes containing encompassing bounding box the region of interest.
[0281]
In step S145, leveling bounding box setting unit 315 sets a plurality of bounding boxes obtained by equalizing the number of voxels.
[0282]
When the process of step S145 is completed, the bounding box setting process is finished, the process returns to FIG. 25.
[0283]
with reference to the flowchart of FIG. 28, an example of the flow of voxel setting processing executed in step S123 of FIG. 25.
[0284]
When voxel setting process is started, the linear voxel setting unit 411, at step S151, the setting of the linear voxel. That linear voxel setting unit 411 sets a voxel stratified by equally dividing recursively region.
[0285]
In step S152, the nonlinear voxel setting unit 412 sets the non-linear voxel. That nonlinear voxel setting unit 412 sets recursively (equally or unequally) divided and layered voxel space.
[0286]
In step S153, the offset voxel setting section 413 sets the offset voxel. That offset voxel setting unit 413 divides the re-define the region, after the setting of the global offset and the local offset appropriately sets the voxels associated global offset or a local offset.
[0287]
Processing as the steps S153 ends returns to FIG.
[0288]
with reference to the flowchart in next FIG. 29, an example of selection processing flow executed in step S107 of FIG. 24.
[0289]
When the selection process is started, the cost calculation unit 511 of the selection unit 115, at step S161, calculates the cost of the encoded data obtained by the respective positions quantization method (bit stream).
[0290]
In step S162, the cost comparison section 512 compares the cost of each position quantization method calculated by the processing in step S161, to select the optimum position quantization method based on the comparison result.
[0291]
Processing as the steps S162 ends returns to FIG.
[0292]
with reference to the flowchart of FIG. 30, an example of a flow of control information generating processing executed in step S108 of FIG. 24.
[0293]
When the control information generating process is started, the position quantization control information generating unit 611, in step S171, generates the control information about the position quantization by location quantization method selected by the processing in step S107 in FIG. 24.
[0294]
In step S172, the coordinate system setting control information generating unit 612 generates control information on the coordinate system which is employed in a position quantization method selected by the processing in step S107 in FIG. 24.
[0295]
In step S173, the bounding box setting control information generating unit 613 generates control information on the adopted bounding box in position quantization method selected by the processing in step S107 in FIG. 24.
[0296]
In step S174, the voxel setting control information generating unit 614 generates control information on voxels adopted in position quantization method selected by the processing in step S107 in FIG. 24.
[0297]
Processing as the steps S174 ends returns to FIG.
[0298]
By executing the processes as described above, the encoding device 100 can suppress the reduction of the coding efficiency.
[0299]
<3. Second Embodiment>
FIG. 31 is a block diagram showing a main configuration example of a decoding apparatus which is an embodiment of an information processing apparatus according to the present technology. Decoding apparatus shown in FIG. 31 700 is a decoding apparatus corresponding to the encoding apparatus 100 of FIG. 2, for example, decodes the encoded data of the point cloud generated by the encoding apparatus 100, restore data point cloud to. At that time, the decoder 700 performs the decoding (restored) by the method according to the present technique as described below.
[0300]
As shown in FIG. 31, the decoding apparatus 700 includes a control information analyzing unit 711, decoding unit 712, the voxel processing unit 713 and the point cloud processing unit 714.
[0301]
Control information analyzing unit 711 performs processing relating to the analysis of control information regarding decoding of the coded data supplied from the encoding side (encoder). For example, the control information analyzing unit 711 obtains the control information associated with the encoding device 100 and the coded data in the coded data. Control information analyzing unit 711 analyzes the control information. Control information analyzing section 711 supplies the decoding unit 712 the analysis result of the control information together with the encoded data.
[0302]
The control information analyzing unit 711, any but may have a configuration, for example, CPU, ROM, a RAM or the like, the program or data the CPU is stored in the ROM or the like to the RAM Load by run, it may perform the process relating to the analysis of the control information.
[0303]
Decoding unit 712, based on the analysis result of the control information, decodes the encoded data by the decoding method corresponding to the encoding performed by the encoding device 100 (encoding unit 114). Decoding unit 712, a signal sequence obtained by decoding the encoded data, analysis results, etc. with the control information, and supplies the voxel processing unit 713.
[0304]
Incidentally, the decoding unit 712, any but may have a configuration, for example, CPU, ROM, a RAM or the like, loads the program and data that the CPU is stored in the ROM or the like to RAM by executing it may perform processing related to decoding.
[0305]
Voxel processing unit 713, based on the analysis result of the control information, reads a signal sequence as information of voxels units, it supplies the point cloud processing unit 714 together with the analysis result of it the control information.
[0306]
Incidentally, the voxel processing unit 713, any but may have a configuration, for example, CPU, ROM, a RAM or the like, the program or data the CPU is stored in the ROM or the like to the RAM Load and by executing, it may perform the process relating voxelization.
[0307]
Point cloud processing unit 714, based on the analysis result of the control information, to restore the data point cloud from the supplied information. Point cloud processing unit 714 outputs the data of the restored point cloud. Data of the output point cloud, for example, is an image processed by the subsequent processing unit (not shown), it may also be displayed on a monitor or the like as image information, is transmitted by the communication unit, not shown, predetermined through the transmission path may also be transmitted to another device, it may be recorded on a recording medium (not shown).
[0308]
Incidentally, the point cloud processing unit 714, any but may have a configuration, for example, CPU, ROM, a RAM or the like, the program or data the CPU is stored in the ROM or the like to RAM by performing loading may be performed processing related restored.
[0309]
Analyzes control information as described above, since the decoding processing (restoration processing) based on the control information, the decoding device 700 can correctly decode the encoded data generated by the encoding apparatus 100. Therefore, it is possible to realize the suppression of decrease in the coding efficiency.
[0310]
FIG. 32 is a block diagram showing a main configuration example of a control information analyzing unit 711 of FIG. 31. As shown in the self-32, the control information analyzing unit 711, the position quantization control information analyzing unit 721, the coordinate system setting control information analyzing unit 722, the bounding box setting control information analyzing unit 723 and the voxel setting control information analyzing section 724, having.
[0311]
Position quantization control information analyzing unit 721 performs processing relating to the analysis of the position quantization control information included in the supplied control information. This position quantization control information may include what information. For example, the position quantization control information, may include various types of information described in the first embodiment. Position quantization control information analyzing unit 721 analyzes the information contained in this position quantization control information. Position quantization control information analyzing unit 721 supplies the analysis result of the position quantization control information, the coordinate system setting control information analyzing unit 722 along with other information (the encoded data and control information).
[0312]
The position quantization control information analyzing section 721, any but may have a configuration, for example, CPU, ROM, a RAM or the like, the program or data the CPU is stored in the ROM or the like by loading and executing the RAM, it may be performed a process of analysis on position quantization control information.
[0313]
coordinate system setting control information analyzing unit 722 performs processing relating to the analysis of the coordinate system setting control information included in the supplied control information. The coordinate system setting control information may include what information. For example, the coordinate system setting control information, may include various types of information described in the first embodiment. Coordinate system setting control information analyzing unit 722 analyzes each information included in the coordinate system setting control information. Coordinate system setting control information analyzing unit 722, the analysis result of the coordinate system setting control information, other information (coded data, control information, and the analysis results of the other information) with the bounding box setting control information analyzing unit 723 supplies.
[0314]
The coordinate system setting control information analyzing section 722, any but may have a configuration, for example, CPU, ROM, a RAM or the like, the program or data the CPU is stored in the ROM or the like by loading and executing the RAM, it may perform processing relating to analysis of the coordinate system setting control information.
[0315]
bounding box setting control information analyzing unit 723 performs processing relating to the analysis of the bounding box setting control information included in the supplied control information. The bounding box setting control information may include what information. For example, bounding box setting control information, it may include various types of information described in the first embodiment. Bounding box setting control information analyzing unit 723 analyzes each information included in the bounding box setting control information. Bounding box setting control information analyzing unit 723 supplies the analysis result of the bounding box setting control information, other information (coded data, control information, and the analysis results of the other information) to the voxel setting control information analyzing unit 724 with to.
[0316]
Note that the bounding box setting control information analyzing section 723, any but may have a configuration, for example, CPU, ROM, a RAM or the like, the program or data the CPU is stored in the ROM or the like by loading and executing the RAM, it may perform processing relating to analysis of the bounding box setting control information.
[0317]
voxel setting control information analyzing unit 724 performs processing relating to analysis of voxel setting control information included in the supplied control information. The voxel setting control information may include what information. For example, voxel setting control information, may include various types of information described in the first embodiment. Voxel setting control information analyzing unit 724 analyzes each information included in the voxel setting control information. Voxel setting control information analyzing unit 724 supplies the analysis result of the voxel setting control information, other information (coded data, control information, and the analysis results of the other information) to the decoding unit 712 together.
[0318]
Incidentally, voxel setting control information analyzing section 724, any but may have a configuration, for example, CPU, ROM, a RAM and the like, RAM for program and data that the CPU is stored in the ROM or the like by loading run into, it may be carried out a process related to the analysis of voxel setting control information.
[0319]
As described above, each processing unit of the position quantization control information analyzing unit 721 to voxel setting control information analyzing unit 724, by analyzing the various control information, the decoding device 700, to the control information (analysis result) based on, it is possible to correctly decode the encoded data generated by the encoding device 100 (restored). Therefore, it is possible to realize the suppression of decrease in the coding efficiency.
[0320]
illustrating an example flow of a decoding process performed by the decoding apparatus 700 of the above configuration with reference to the flowchart of FIG. 33.
[0321]
When the decoding process starts, the control information analyzing unit 711, at step S201, analyzes the supplied from the encoding side (associated with the encoded data) control information.
[0322]
In step S202, the decoding unit 712, based on the analysis result of the control information obtained by the processing in step S201, it decodes the supplied encoded data from the encoding side (bit stream).
[0323]
In step S203, the voxel processing unit 713, based on the analysis results of the control information by the processing in step S201, the voxels of a signal sequence obtained by the processing in step S202.
[0324]
In step S204, the point cloud processing unit 714, based on the analysis results of the control information by the processing in step S201, restores the data of the point cloud.
[0325]
In step S205, the point cloud processing unit 714 outputs the data of the restored point cloud by the processing in step S204.
[0326]
Decoding processing as the steps S205 ends, the ends. For example, when the coding object is a moving image, performing this series of processing for each frame.
[0327]
with reference to the flowchart of FIG. 34, an example of a flow of control information analyzing processing executed in step S201 of FIG. 33.
[0328]
When the control information analyzing process is started, the position quantization control information analyzing unit 721 of the control information analyzing unit 711, at step S211, analyzes the control information about the position quantization included in the control information.
[0329]
In step S212, the coordinate system setting control information analyzing unit 722 analyzes the control information on setting of the coordinate system contained in the control information.
[0330]
In step S213, the bounding box setting control information analyzing unit 723 analyzes the control information on setting the bounding box included in the control information.
[0331]
In step S214, the voxel setting control information analyzing unit 724 analyzes the control information on setting the voxels included in the control information.
[0332]
Control information analyzing process and the process of step S214 is completed is completed, the process returns to FIG. 33.
[0333]
with reference to the flowchart of FIG. 35, an example of restoring the flow of the processing executed in step S204 of FIG. 33.
[0334]
When the restoration process is started, the point cloud processing unit 714, in step S221, placing the voxels on each bounding box in the coordinate system for the object.
[0335]
In step S222, the point cloud processing unit 714 converts the data of the voxel data of the point cloud.
[0336]
In step S223, the point cloud processing unit 714 converts the coordinate system of the data point cloud from the coordinate system for the object in the world coordinate system.
[0337]
Restoration processing as the steps S223 ends, the ends and the processing returns to FIG. 33.
[0338]
By executing the processes as described above, the decoding apparatus 700 can realize the suppression of decrease in the coding efficiency.
[0339]
<4. Others>
series of processes described above can be executed by hardware, it may otherwise be executed by software. Further, part of the processing is executed by hardware, other processes may be executed by software. In the case of executing the series of processes by software, a program constituting the software is installed in a computer. Here, the computer includes a computer incorporated in dedicated hardware, by installing various programs, which can execute various functions include, for example, a general-purpose personal computer or the like.
[0340]
Figure 36 is a block diagram showing a configuration example of hardware of a computer that executes the series of processes described above.
[0341]
In the computer 900 shown in FIG. 36, CPU (Central Processing Unit) 901, ROM (Read Only Memory) 902, RAM (Random Access Memory) 903 are connected to each other via a bus 904.
[0342]
The bus 904 also output interface 910 is also connected. Output interface 910, an input unit 911, output unit 912, storage unit 913, a communication unit 914, and a drive 915 are connected.
[0343]
The input unit 911 is, for example, a keyboard, a mouse, a microphone, a touch panel, consisting of an input terminal. The output unit 912 is, for example, a display, a speaker, so forth output terminal. Storage unit 913, for example, a hard disk, RAM disk, made of a nonvolatile memory. The communication unit 914 is, for example, made of a network interface. Drive 915 drives a magnetic disk, an optical disk, a magneto-optical disk, or a removable medium 921 such as a semiconductor memory.
[0344]
Series In the computer configured as described above, CPU 901 is, for example, a program stored in the storage unit 913, output interface 910 and the bus 904, and executes the program loaded into RAM 903, the above-mentioned processing of is performed. RAM903 also include, CPU 901 is appropriately stores data necessary in the execution of various processes.
[0345]
Program computer (CPU 901) is executed, for example, can be applied to the removable medium 921 as a package medium or the like. In that case, the program, by mounting the removable medium 921 into the drive 915, can be installed via the input and output interface 910, the storage unit 913. The program can also be provided via a local area network, the Internet, or digital satellite broadcasting, a wired or wireless transmission medium. In that case, the program may be received by the communication unit 914, installed in the storage unit 913. In addition, this program is, in ROM902 or the storage unit 913, can also be installed in advance.
[0346]
embodiment of the present technology is not limited to the embodiments described above, but various modifications are possible without departing from the scope of the present disclosure.
[0347]
For example, the present technology, any arrangement constituting the apparatus or system, for example, a system LSI (Large Scale Integration) processor as such, module using a plurality of processors such as a unit using a plurality of modules or the like, and other to the unit such as a set obtained by adding a function (i.e., part of the configuration of the device) may be implemented as.
[0348]
In the present specification, the system includes a plurality of components (devices, modules (components) or the like) means a set of does not matter whether all of the components are in the same housing. Therefore, housed in a separate enclosure, a plurality of devices connected via a network, and one device in which a plurality of modules within a single casing is housed, both of which the system .
[0349]
The processing unit described above, if such a function that describes the processing unit may be implemented by any configuration. For example, processing unit, any circuit, LSI, system LSI, a processor, modules, units, set, the device may be constituted by a device or system, or the like. It is also possible to combine a plurality of them. For example, a plurality of circuits, may be combined with the same type of construction as such as a plurality of processors, it may be combined with different types of construction as such circuit and LSI.
[0350]
Further, for example, the configuration described as one apparatus (or processing unit) may be configured as multiple devices (or processing unit). Conversely, it may be constituted as a single device (or processing unit) collectively configuration described as a plurality of devices (or processing unit) in the above. Of course it may also be added to configurations other than those described above in the configuration of each apparatus (or each processing unit). Further, if the same configuration and operation as the entire system are substantially may be included in a part of the configuration of a certain device (or processing unit) in the configuration of another apparatus (or another processing unit) .
[0351]
Further, for example, the present technology, a single function, shared by a plurality of devices via a network, it is possible to adopt a configuration of cloud computing which processes jointly.
[0352]
Further, for example, the program described above can be implemented in any device. In that case, the device has a required function (function block, etc.), it is sufficient to be able to obtain the necessary information.
[0353]
Further, for example, each step described in the above flowcharts may be executed by one device, it can be performed by allocating a plurality of apparatuses. Further, when a plurality of processes are included in one step, the plurality of processes included in the one step may be executed by one device, it can be performed by allocating a plurality of apparatuses. In other words, a plurality of processes included in one step, can be executed as a process of several steps. Conversely, the processing described as multiple steps may be collectively performed as a single step.
[0354]
Program that the computer executes the processing of steps describing the program may also be executed in a time series in the order described herein, such as when parallel or call is made may be are individually performed at the required timing. In other words, as long as no conflict arises, the processing of each step may be executed in a different order from the order described above. Furthermore, the process of steps describing the program, may also be executed in parallel with processing of other programs, it may be executed in conjunction with the processing of other programs.
[0355]
This technology plurality described herein, unless any contradiction occurs can be carried out alone independently. Of course, it can also be carried out in combination with any of a plurality of the technology. For example, some or all of the techniques described in the form of any of the embodiments can be implemented in combination with some or all of the techniques described in the other embodiments. Also, part or all of any of the techniques described above can also be practiced in conjunction with other techniques not described above.
[0356]
The present technology may also be configured as below.
(1) generation unit for generating information relating to quantization of the three-dimensional position of the coded
information processing apparatus including a.
[0357]
(11) the information about quantization, including information about the coordinate system for performing the quantization
information processing apparatus according to (1).
(12) information on the coordinate system, including information on permission or prohibition of the setting of the coordinate system
information processing apparatus according to (11).
(13) information on the coordinate system, including information about the permission or subject to a range to be encoded of prohibition of setting of the coordinate system
information processing apparatus according to (11) or (12).
(14) information on the coordinate system, including information on permission or prohibition of parameters used in the setting of the coordinate system
information processing apparatus according to any one of (11) to (13).
(15) information on the coordinate system, including information about the execution or skip setting of the coordinate system
information processing apparatus according to any one of (11) to (14).
(16) information on the coordinate system, including information about the range of the encoding target to be executed or skipped the subject of setting of the coordinate system
information processing apparatus according to any one of (11) to (15).
(17) information on the coordinate system, including information about the parameters used in the setting of the coordinate system
information processing apparatus according to any one of (11) to (16).
(18) information on the parameter includes identification information indicating the type of the coordinate system
The information processing apparatus according to (17).
(19) said identification information, an orthogonal coordinate system, cylindrical coordinate system, or identification information of the spherical coordinate system
information processing apparatus according to (18).
(20) information on the parameter further includes information indicating a relative position with respect to the world coordinate system of the coordinate system
information processing apparatus according to any one of (17) to (19).
(21) information indicating the relative position comprises a shift amount from the world coordinate system of the coordinate system
information processing apparatus according to (20).
(22) information indicating the relative position comprises an angle between the world coordinate system and the coordinate system
information processing apparatus according to (20) or (21).
(23) When the coordinate system is a coordinate system other than Cartesian coordinate system, information about the parameter includes information indicating the coordinate axes of the correspondence between the rectangular coordinate system and the coordinate system
one of (11) to (22) the information processing apparatus of the crab described.
[0358]
(31) the information about quantization, including information on the bounding box to normalize the position information of the encoding target
information processing apparatus according to any one of (1) to (23).
(32) information on the bounding box includes information on permission or prohibition of the setting of the bounding box
information processing apparatus according to (31).
(33) information on the bounding box includes information about permission or subject to a range to be encoded of prohibition of the setting of the bounding box
information processing apparatus according to (31) or (32).
(34) information on the bounding box includes information on permission or prohibition of setting of the bounding box
information processing apparatus according to any one of (31) to (33).
(35) information on the bounding box includes information on permission or prohibition of parameters used in the setting of the bounding box
information processing apparatus according to any one of (31) to (34).
(36) said information on the bounding box contains information about the execution or skip setting of the bounding box
information processing apparatus according to any one of (31) to (35).
(37) information on the bounding box includes information about the range of the encoding target to be executed or skipped the subject of setting of the bounding box
information processing apparatus according to any one of (31) to (36).
(38) information on the bounding box contains information about the parameters used in the setting of the bounding box
information processing apparatus according to any one of (31) to (37).
(39) information on the parameter includes identification information indicating a setting method of the bounding box
information processing apparatus according to (38).
(40) said identification information, how an object of the encoding target set the bounding box to align how to set the bounding box to be inscribed, the center of distribution and the voxel point of the encoding target, how to configure multiple bounding boxes overlap each other in accordance with the distribution of points of the encoding target, sets a plurality of bounding boxes according to the attention area setting of the encoding target, set the quality for each bounding box how to set a plurality of bounding boxes according to the attention area setting of the encoding target, a method for setting the order of decoding for each bounding box, or to set a plurality of bounding boxes to level the number of voxels is identification information of how
the information processing apparatus according to (39) .
(41) information on the parameter includes information indicating the number of bounding boxes to be set
The information processing apparatus according to any one of (38) to (40).
(42) information on the parameter includes information indicating a coordinate system corresponding to each bounding box
information processing apparatus according to any one of (38) to (41).
(43) information relating to the parameters include information regarding the image quality of each bounding box
information processing apparatus according to any one of (38) to (42).
(44) information on the image quality, including information about the depth limiting voxel hierarchy
information processing apparatus according to (43).
(45) information on the image quality, including information about the quality of the color compression
information processing apparatus according to (43) or (44).
(46) information relating to the parameters include information regarding the decoding order of the bounding box
information processing apparatus according to any one of (38) to (45).
[0359]
(51) the information about quantization, the position information of the encoding target containing information on voxels for quantizing
an information processing apparatus according to any one of (1) to (46).
(52) information on the voxel, containing information about the permission or prohibition of setting of the voxel
information processing apparatus according to (51).
(53) information on the voxel, containing information about the permission or subject to a range to be encoded of prohibition of setting of the voxel
information processing apparatus according to (51) or (52).
(54) information on the voxel, containing information about the permission or prohibition of setting of the voxel
information processing apparatus according to (53).
(55) information on the voxel, containing information about the permission or prohibition of parameters used in the setting of the voxel
information processing apparatus according to (53) or (54).
(56) information on the voxel, containing information about the execution or skip setting of the voxel
information processing apparatus according to any one of (53) to (55).
(57) information on the voxel, containing information about the range of the encoding target to be executed or skipped the subject of setting of the voxel
information processing apparatus according to any one of (53) to (56).
(58) information on the voxel contains information about the parameters used in the setting of the voxel
information processing apparatus according to any one of (53) to (57).
(59) information on the parameter, linearly includes identification information for identifying whether the quantized nonlinearly or quantized
information processing apparatus according to (58).
(60) information relating to the parameters include information regarding the placement of voxels in the case of quantized to a non-linear
information processing apparatus according to (58) or (59).
(61) Information on the arrangement of the voxels includes index information indicating which selects one from a plurality of candidates of the arrangement pattern of voxel
information processing apparatus according to (60).
(62) Information on the arrangement of the voxels includes map information showing the arrangement of the voxel
information processing apparatus according to (60) or (61).
(63) information relating to the parameters include information regarding the offset of the position of the voxel
information processing apparatus according to any one of (58) to (62).
(64) the offset is a global offset corresponding to all voxels local offset does not correspond
information processing apparatus according to (63).
(65) the offset is a local offset corresponding to only the voxels of the lower layer belonging to the voxel and voxels the offset is allocated
an information processing apparatus according to (63) or (64).
[0360]
(71) to generate information about quantization of the three-dimensional position of the coded
information processing method.
[0361]
(81) located quantization unit for quantizing the three-dimensional position of coded
information processing apparatus including a.
[0362]
(91) the position quantization section includes a coordinate-system setting unit that sets a coordinate system that performs the quantization
information processing apparatus according to (81).
(92) the coordinate system setting section, depending on the shape and orientation of the coding target object, setting the coordinate system
information processing apparatus according to (91).
(93) the coordinate system setting unit sets a predetermined rectangular coordinate system as the coordinate system
information processing apparatus according to (91) or (92).
(94) the coordinate system setting unit sets the predetermined cylindrical coordinate system as the coordinate system
information processing apparatus according to any one of (91) to (93).
(95) the coordinate system setting unit sets the predetermined spherical coordinate system as the coordinate system
information processing apparatus according to any one of (91) to (94).
[0363]
(101) the position quantization section includes a bounding box setting unit that sets a bounding box to normalize the position information of the encoding target
information processing apparatus according to any one of (81) to (95) .
(102) the bounding box setting unit, the object of the encoding target set the bounding box to be inscribed
information processing apparatus according to (101).
(103) the bounding box setting unit sets a bounding box to align the center of the distribution and the voxel point of the coded
information processing apparatus according to (101) or (102).
(104) the bounding box setting unit sets a plurality of bounding boxes overlap each other in accordance with the distribution of points of the coded
information processing apparatus according to any one of (101) to (103).
(105) the bounding box setting unit sets a plurality of bounding boxes according to the attention area setting of the encoding target
information processing apparatus according to any one of (101) to (104).
(106) the bounding box setting unit further sets the image quality for each bounding box set
information processing apparatus according to (105).
(107) the bounding box setting unit further sets a decoding order in each bounding box set
information processing apparatus according to (105) and (106).
(108) the bounding box setting unit sets a plurality of bounding boxes to level the number of voxels
information processing apparatus according to any one of (101) to (107).
[0364]
(111) said position quantizing unit within the bounding box to normalize the position information of the encoding target, and a voxel setting unit that sets a voxel for quantizing the position information of the encoding target
the information processing apparatus according to any one of (81) to (108).
(112) the voxel setting unit, position information of the encoding target sets the voxels to quantize the linear
information processing apparatus according to (111).
(113) the voxel setting unit, position information of the encoding target sets the voxels to quantize the non-linear
processing apparatus according to (111) or (112).
(114) the voxel setting section in the hierarchy of voxels, the is inside the smaller voxel bounding box form, sets the voxels as large voxel as the outer is formed
of information processing according to (113) apparatus.
(115) the voxel setting section in the hierarchy of voxels, small voxel in the region of interest is formed, the larger voxel in the region of interest outside sets the voxels so as to form
a (113) or (114) the information processing apparatus according.
(116) the voxel setting unit further sets the offset of the position of the voxel set
information processing apparatus according to any one of (111) to (115).
(117) the voxel setting unit, as the offset, sets the global offset corresponding to all voxels local offset does not correspond
information processing apparatus according to (116).
(118) the voxel setting unit, as the offset, set the local offset corresponding to only the voxels of the lower layer belonging to the voxel and voxels the offset is assigned
information according to (116) or (117) processing apparatus.
[0365]
(121) said position to select a quantization method of three-dimensional position of the encoding target by the quantization unit further comprising a selection unit
processing apparatus according to any one of (81) to (118).
(122) the selection unit, the quantization method is selected based on the RD cost
information processing apparatus according to (121).
(123) the position 3-dimensional position by the quantization unit further comprises a coding unit for coding the coding target quantized
information processing apparatus according to any one of (81) to (122).
(124) and a generator for generating information relating to quantization of the three-dimensional position of the encoding target by the position quantization unit,
the information on the quantization which has been generated by the generation unit, the numeral by the encoding unit of interest are encoded further comprises an association unit for associating the encoded data obtained by
the information processing apparatus according to (123).
(125) the encoding target further comprises a preprocessing unit for performing predetermined processing for,
the positional quantization unit, three-dimensional position of the predetermined processing has been performed by the preprocessing unit the coded the configured to quantize
information processing apparatus according to any one of (81) to (124).
(131) the encoding target is the point cloud
information processing apparatus according to any one of (81) to (125).
(141) quantizes the three-dimensional position of the coded
information processing method.
[0366]
(201) based on information relating to quantization of the three-dimensional position of the encoding target, restoring unit for restoring the three-dimensional information of the encoding target from a signal sequence
information processing apparatus including a.
(202) the restoring unit, based on the information on the quantization, the place voxels corresponding to the signal sequence to the 3-dimensional coordinate system, point cloud the voxels arranged, the world coordinate system to the coordinate system converting the
information processing apparatus according to (201).
(203) the restoring unit, based on the information on the quantization, the signal string is converted into voxel, the converted the voxel located on the coordinate system
information processing apparatus according to (202).
(204) the encoding target further comprises a decoder for decoding a coded data,
said restoration unit, based on the information on the quantization, the encoded data is decoded by the decoding unit obtained by converting the signal sequence to the voxel, the converted the voxel located on the coordinate system
information processing apparatus according to (203).
(205) further includes an analysis unit for analyzing information related to the quantization,
the restoring unit, based on the quantization information of the analysis results for by the analysis unit, the encoded data is decoded by the decoder from the obtained the signal sequence to recover the three-dimensional information of the encoding target
information processing apparatus according to (204).
[0367]
(211) based on information relating to quantization of the three-dimensional position of the coding target, to restore the three-dimensional information of the encoding target from the signal sequence
processing method.
DESCRIPTION OF SYMBOLS
[0368]
100 encoding device, 101 control unit, 111 pre-processing unit, 112-position quantization unit, 113 signal sequence generation unit, 114 encoding unit, 115 selector, 116 a control information generating unit, 117 association unit, 201 coordinate system setting unit , 202 bounding box setting unit, 203 voxels setting unit, 211 the world coordinate system setting unit, 212 a Cartesian coordinate system setting unit, 213 a cylindrical coordinate system setting section, 214 spherical coordinate system setting section, 311 inscribed bounding box setting unit, 312 positions matching bounding box setting unit, 313 overlapping bounding box setting unit, 314 attention area bounding box setting unit, 315 leveling bounding box setting unit, 411 linear voxel setting unit, 412 a non-linear voxel setting unit, 413 offset I Le setting unit, 511 the cost calculation unit, 512 the cost comparison unit 611 positions the quantization control information generating unit, 612 coordinate system setting control information generating unit, 613 bounding box setting control information generating unit, 614 voxel setting control information generating unit, 700 decoding device, 711 control information analyzing unit, 712 decoding unit, 713 voxel processing unit, 714 the point cloud processing unit, 721-position quantization control information analyzing unit, 722 coordinate system setting control information analyzing unit, 723 the bounding box setting control information analysis unit, 724 voxel setting control information analyzing unit, 900 the computer
WE claims
[Requested item 1]
Generator for generating information relating to quantization of the three-dimensional position of the coded
information processing apparatus including a.
[Requested item 2]
Information on the quantization includes information about coordinate system for performing the quantization
information processing apparatus according to claim 1.
[Requested item 3]
Information about the coordinate system, identification information indicating the type of the coordinate system, including the angle of the shift amount, and the coordinate system and the world coordinate system from the world coordinate system of the coordinate system
information of claim 2 processing apparatus.
[Requested item 4]
Information on the quantization includes information about the bounding boxes for normalizing the position information of the encoding target
information processing apparatus according to claim 1.
[Requested item 5]
Information on the bounding box includes identification information indicating a setting method of the bounding box
information processing apparatus according to claim 4.
[Requested item 6]
Information on the quantization includes information on voxels for quantizing the position information of the encoding target
information processing apparatus according to claim 1.
[Requested item 7]
Information on the voxel includes identification information for identifying whether the quantized nonlinearly or quantized linear
information processing apparatus according to claim 6.
[Requested item 8]
Information on the voxel, containing information about the offset of the position of the voxel
information processing apparatus according to claim 6.
[Requested item 9]
The three-dimensional position of the coding target further comprising a position quantization unit for quantizing,
wherein the generator is configured to generate information about quantization of three-dimensional position of the encoding target by the position quantizer that
the information processing apparatus according to claim 1.
[Requested item 10]
Said position quantization unit,
a coordinate system setting unit for setting a coordinate system for performing the quantization,
in the coordinate system set in the coordinate system setting unit, for normalizing the position information of the encoding target a bounding box setting unit that sets a bounding box,
the bounding box within the bounding box that is set by the setting unit, and the voxel setting unit that sets a voxel for quantizing the position information of the encoding target
claims comprising a the information processing apparatus according to claim 9.
[Requested item 11]
The bounding box setting unit sets a plurality of bounding boxes overlap each other in accordance with the distribution of points of the coded
information processing apparatus according to claim 10.
[Requested item 12]
The bounding box setting unit sets a plurality of bounding boxes according to the attention area setting of the encoding target
information processing apparatus according to claim 10.
[Requested item 13]
The bounding box setting unit further sets the image quality or decoding order in each bounding box set
information processing apparatus according to claim 12.
[Requested item 14]
The voxel setting section in the hierarchy of voxels, the inner smaller voxel bounding box is formed, sets the voxels as large voxel as outside is formed
an information processing apparatus according to claim 10.
[Requested item 15]
The quantization method of the three-dimensional position of the encoding target by the position quantization unit, a selection unit that selects, based on the RD cost,
three-dimensional position is quantized by the selected quantization method by the selection unit an encoding unit for encoding the encoding target,
association that associates information regarding the quantization generated by the generating unit, the encoded data obtained the encoding target is encoded by the encoding unit a Department
information processing apparatus according to claim 9, further comprising a.
[Requested item 16]
The encoding target is the point cloud
information processing apparatus according to claim 1.
[Requested item 17]
It generates information about the quantization of the three-dimensional position of the coded
information processing method.
[Requested item 18]
Based on the information on the quantization of the three-dimensional position of the encoding target, restoring unit for restoring the three-dimensional information of the encoding target from a signal sequence
information processing apparatus including a.
[Requested item 19]
The restoration unit, based on the information on the quantization, place the voxel corresponding to the signal sequence to the 3-dimensional coordinate system, point cloud the voxels arranged to convert the coordinate system in the world coordinate system
the information processing apparatus according to claim 18.
[Requested item 20]
Based on the information on the quantization of the three-dimensional position of the coding target, to restore the three-dimensional information of the encoding target from the signal sequence
processing method.
| # | Name | Date |
|---|---|---|
| 1 | 202017000237.pdf | 2020-01-03 |
| 2 | 202017000237-TRANSLATIOIN OF PRIOIRTY DOCUMENTS ETC. [03-01-2020(online)].pdf | 2020-01-03 |
| 3 | 202017000237-STATEMENT OF UNDERTAKING (FORM 3) [03-01-2020(online)].pdf | 2020-01-03 |
| 4 | 202017000237-PROOF OF RIGHT [03-01-2020(online)].pdf | 2020-01-03 |
| 5 | 202017000237-PRIORITY DOCUMENTS [03-01-2020(online)].pdf | 2020-01-03 |
| 6 | 202017000237-POWER OF AUTHORITY [03-01-2020(online)].pdf | 2020-01-03 |
| 7 | 202017000237-FORM 1 [03-01-2020(online)].pdf | 2020-01-03 |
| 8 | 202017000237-DRAWINGS [03-01-2020(online)].pdf | 2020-01-03 |
| 9 | 202017000237-DECLARATION OF INVENTORSHIP (FORM 5) [03-01-2020(online)].pdf | 2020-01-03 |
| 10 | 202017000237-COMPLETE SPECIFICATION [03-01-2020(online)].pdf | 2020-01-03 |
| 11 | 202017000237-OTHERS-080120.pdf | 2020-01-14 |
| 12 | 202017000237-Correspondence-080120.pdf | 2020-01-14 |
| 13 | abstract.jpg | 2020-01-15 |
| 14 | 202017000237-FORM 3 [06-05-2020(online)].pdf | 2020-05-06 |
| 15 | 202017000237-FORM 18 [27-05-2021(online)].pdf | 2021-05-27 |
| 16 | 202017000237-FER.pdf | 2022-02-25 |
| 1 | SearchHistoryE_22-02-2022.pdf |