Image coding apparatus and method, and image decoded apparatus and method
Patent Information
- Application Number
- BR122026019689
- Authority / Receiving Office
- BR · BR
- Patent Type
- Applications
- Publication Date
- 2026-09-15
Smart Images

Figure 00000000_0000_ABST
Description
62 APPARATUS AND METHOD FOR IMAGE CODING, AND APPARATUS AND METHOD FOR IMAGE DECODING DIVIDED FROM BR112021000038-0, FILED ON 06 / 27 / 2019 Technical Field
[001] The present description refers to an image processing apparatus and an image processing method, and, more particularly, to an image processing apparatus and an image processing method capable of suppressing an increase in processing time from a filtering process for point cloud data. Fundamentals of the Technique
[002] Conventionally, as a method for encoding 3D data representing a three-dimensional structure, such as a point cloud, there is encoding using a voxel, such as Octree (see, for example, Unpatented Document 1).
[003] In recent years, as another coding method, for example, an approach has been proposed in which position and color information in a point cloud are separately projected onto a two-dimensional plane for each small region and coded by a coding method for a two-dimensional image (hereinafter also referred to as a video-based approach) (see, for example, Non-Patent Documents 2 to 4).
[004] In such encoding, in order to suppress a reduction in the subjective quality of the image when the point cloud restored from the decoded two-dimensional image goes through image formation, a method of acquiring peripheral points by a nearest neighbor search and application of a three-dimensional uniform filter was considered. Citation List Non-Patent Document
[005] Non-Patent Document 1: R. Mekuria, Student Member IEEE, Petition 870260078868, dated 06 / 08 / 2026, page 14 / 120 / 62 K. Blom, P. Cesar., Member, IEEE, “Design, Implementation and Evaluation of a Point Cloud Codec for Tele-Immersive Video”, tcsvt_paper_submitted_february.pdf; Non-Patent Document 2: Tim Golla and Reinhard Klein, “Real-time Point Cloud Compression,” IEEE, 2015; Non-Patent Document 3: K. Mammou, “Video-based and Hierarchical Approaches Point Cloud Compression”, MPEG m41649, Oct. 2017; Non-Patent Document 4: K. Mammou, “PCC Test Model Category 2 v0”, N17248 MPEG output document, October 2017. Summary of the Invention Problems to be Solved by the Invention
[006] However, in general, the point cloud contains a large number of points, and the processing load for nearest neighbor search became extremely heavy. For this reason, there was a possibility that this method would increase processing time.
[007] The present description was made in view of a situation such as this, and it is an objective of the present description to enable the performance of a filtering process for point cloud data at a higher speed than conventional methods, and to suppress an increase in processing time. Solutions to the Problems
[008] An image processing apparatus in one aspect of the present technology is an image processing apparatus that includes: a filter processing unit that performs a filtering process on point cloud data using a representative value of the point cloud data for each local region obtained by dividing a three-dimensional space; and an encoding unit that encodes an image in the two-dimensional plane onto which the point cloud data subjected to the filtering process by the filter processing unit are projected, and generates a stream. Petition 870260078868, dated 06 / 08 / 2026, page 15 / 120 / 62 continuous bits.
[009] An image processing method in one aspect of the present technology is an image processing method that includes: performing a filtering process on point cloud data using a representative value of the point cloud data for each local region obtained by dividing a three-dimensional space; and encoding an image in the two-dimensional plane onto which the point cloud data subjected to the filtering process are projected, and generating a continuous bit stream.
[0010] An image processing device in another aspect of the present technology is an image processing device that includes: a decoding unit that decodes a continuous bit stream and generates the encoded data of a two-dimensional plane image onto which the point cloud data are projected; and a filter processing unit that performs a filtering process on the point cloud data restored from the two-dimensional plane image generated by the decoding unit, using a representative value of the point cloud data for each local region obtained by dividing a three-dimensional space.
[0011] An image processing method in another aspect of the present technology is an image processing method that includes: decoding a continuous bit stream and generating the encoded data of a two-dimensional plane image onto which the point cloud data are projected; and performing a filtering process on the point cloud data restored from the generated two-dimensional plane image, using a representative value of the point cloud data for each local region obtained by dividing a three-dimensional space.
[0012] An image processing apparatus in yet another aspect of the present technology is an image processing apparatus that includes: a filter processing unit that performs a filtering process at some points in the point cloud data; and an encoding unit. Petition 870260078868, dated 06 / 08 / 2026, page 16 / 120 / 62, which encodes an image in a two-dimensional plane onto which the point cloud data subjected to the filtering process by the filter processing unit are projected, and generates a continuous bit stream.
[0013] An image processing method in yet another aspect of the present technology is an image processing method that includes: performing a filtering process on some points of the point cloud data; and encoding an image in the two-dimensional plane onto which the point cloud data subjected to the filtering process are projected, and generating a continuous bit stream.
[0014] An image processing apparatus in yet another aspect of the present technology is an image processing apparatus that includes: a decoding unit that decodes a continuous bit stream and generates the encoded data of a two-dimensional plane image onto which the point cloud data are projected; and a filter processing unit that performs a filtering process on some points of the point cloud data restored from the two-dimensional plane image generated by the decoding unit.
[0015] An image processing method in yet another aspect of the present technology is an image processing method that includes: decoding a continuous bit stream and generating the encoded data of a two-dimensional plane image onto which the point cloud data are projected; and performing a filtering process on some points of the point cloud data restored from the generated two-dimensional plane image.
[0016] In the image processing apparatus and in the image processing method in one aspect of the present technology, a filtering process is performed on the point cloud data using a representative value of the point cloud data for each local region obtained by dividing a three-dimensional space, and an image in the two-dimensional plane. Petition 870260078868, dated 06 / 08 / 2026, page 17 / 120 / 62 in which the point cloud data subject to the filtering process is projected, encoded, and a continuous bit stream is generated.
[0017] In the image processing apparatus and in the image processing method in another aspect of the present technology, a continuous bit stream is decoded and the encoded data of a two-dimensional plane image onto which the point cloud data are projected are generated, and a filtering process is performed on the point cloud data restored from the generated two-dimensional plane image, using a representative value of the point cloud data for each local region obtained by dividing a three-dimensional space.
[0018] In the image processing apparatus and in the image processing method in yet another aspect of the present technology, a filtering process is performed on some points of the point cloud data, and an image in the two-dimensional plane onto which the point cloud data subjected to the filtering process are projected is encoded, and a continuous bit stream is generated.
[0019] In the image processing apparatus and in the image processing method in yet another aspect of the present technology, a continuous bit stream is decoded and the encoded data of a two-dimensional plane image onto which the point cloud data are projected are generated, and a filtering process is performed on some points of the point cloud data restored from the generated two-dimensional plane image. Effects of the Invention
[0020] According to the present description, an image can be processed. In particular, an increase in the processing time of a filtering process for point cloud data can be suppressed. Brief Description of the Drawings
[0021] Figure 1A is a diagram that explains an example of a Petition 870260078868, dated 06 / 08 / 2026, page 18 / 120 / 62 standardization process.
[0022] Figure 1B is a diagram that explains an example of a standardization process.
[0023] Figure 2 is a diagram that summarizes the main features in relation to the present technology.
[0024] Figure 3A is a diagram that explains a nearest neighbor search.
[0025] Figure 3B is a diagram that explains a nearest neighbor search.
[0026] Figure 4A is a diagram that explains an example of a sketch of a filtering process using the present technology.
[0027] Figure 4B is a diagram that explains an example of a sketch of a filtering process using the present technology.
[0028] Figure 5 is a diagram that explains an example of the comparison of processing time.
[0029] Figure 6 is a diagram that explains an example of local region division techniques.
[0030] Figure 7 is a diagram that explains the parameters in relation to the local region.
[0031] Figure 8 is a diagram that explains the transmission of information.
[0032] Figure 9 is a diagram that explains the targets of the filtering process.
[0033] Figure 10 is a diagram that explains the methods of deriving a representative value.
[0034] Figure 11 is a diagram that explains the arithmetic operations of the filtering process.
[0035] Figure 12 is a diagram that explains a target range of the filtering process. Petition 870260078868, dated 06 / 08 / 2026, page 19 / 120 / 62
[0036] Figure 13A is a diagram that explains an application case in a filtering process using nearest neighbor search.
[0037] Figure 13B is a diagram that explains an application case in a filtering process using nearest neighbor search.
[0038] Figure 14A is a diagram that explains an application case in a filtering process using a representative value for each local region.
[0039] Figure 14B is a diagram that explains an application case in a filtering process using a representative value for each local region.
[0040] Figure 15 is a diagram that explains an example of processing time comparison.
[0041] Figure 16 is a block diagram illustrating an example of a main configuration of an encoding device.
[0042] Figure 17 is a diagram that explains an example of a main configuration of a patch decomposition unit.
[0043] Figure 18 is a diagram that explains an example of the main configuration of a three-dimensional position information standardization processing unit.
[0044] Figure 19 is a flowchart that explains an example of the flow of a coding process.
[0045] Figure 20 is a flowchart that explains an example of the flow of a patch decomposition process.
[0046] Figure 21 is a flowchart that explains an example of the flow of a standardization process.
[0047] Figure 22 is a flowchart that explains an example of the flow of a process for defining the standardization range.
[0048] Figure 23 is a block diagram illustrating an example of a main configuration of a decoding device.
[0049] Figure 24 is a diagram that explains an example of a main configuration of a 3D reconstruction unit. Petition 870260078868, dated 06 / 08 / 2026, page 20 / 120 / 62
[0050] Figure 25 is a diagram that explains an example of the main configuration of a three-dimensional position information standardization processing unit.
[0051] Figure 26 is a flowchart to explain an example of the flow of a decoding process.
[0052] Figure 27 is a flowchart that explains an example of the flow of a point cloud reconstruction process.
[0053] Figure 28 is a flowchart that explains an example of the flow of a standardization process.
[0054] Figure 29 is a block diagram that illustrates an example of a main computer configuration. Method for Carrying Out the Invention
[0055] The methods for carrying out the present description (hereinafter referred to as methods) will be described below. Note that the description will be given in the following order.
[0056] 1. Accelerated Filtering Process 2. First Mode (Coding Device) 3. Second Mode (Decoding Device) 4. Variations 5. Additional Notes <1. Accelerated Filtering Process> <Documentos etc. que Suportam Conteúdos e Termos Tecnológicos>
[0057] The scope described in the present technology includes not only the contents described in the embodiments, but also the contents described in the following non-patent documents known at the time of filing.
[0058] Non-Patent Document 1: (described above)
[0059] Non-Patent Document 2: (described above)
[0060] Non-Patent Document 3: (described above)
[0061] Non-Patent Document 4: (described above) Petition 870260078868, dated 06 / 08 / 2026, page 21 / 120 / 62
[0062] Non-Patent Document 5: TELECOMMUNICATION STANDARDIZATION SECTOR OF ITU (International Telecommunication Union), “Advanced video coding for generic audiovisual services”, H.264, 04 / 2017
[0063] Non-Patent Document 6: TELECOMMUNICATION STANDARDIZATION SECTOR OF ITU (International Telecommunication Union), “High efficiency video coding”, H.265, 12 / 2016
[0064] Não-Patente Documento 7: Jianle Chen, Elena Alshina, Gary J. Sullivan, Jens-Rainer, Jill Boyce, “Algorithm Description of Joint Exploration Test Model 4”, JVET-G1001_v1, Joint Video Exploration Team (JVET) of ITU-T SG 16 WP 3 and ISO / IEC JTC 1 / SC 29 / WG 11 7th Meeting: Torino, IT, 13-21 July 2017.
[0065] In other words, the contents described in the aforementioned Non-Patent Documents are also the basis for examining the supporting requirements. For example, even when the quadratic tree block structure described in Non-Patent Document 6 and the quadratic tree plus binary tree (QTBT) block structure described in Non-Patent Document 7 are not directly described in the embodiments, these technologies are interpreted as being within the scope of the description of the present technology and to satisfy the supporting requirements of the claims. Furthermore, similarly, for example, technological terms such as syntactic analysis, syntax, and semantics are also interpreted as being within the scope of the description of the present technology and to satisfy the supporting requirements of the claims even when there is no direct description in the embodiments. <Nuvem de pontos>
[0066] Conventionally, there is data, such as a point cloud, that represents a three-dimensional structure by the positional information of the point cloud or by attribute information or similar, and a mesh, which is made up of vertices, edges and faces, and defines a shape. Petition 870260078868, dated 06 / 08 / 2026, page 22 / 120 / 62 three-dimensional using a polygonal representation.
[0067] For example, in the case of a point cloud, a stereo structure is expressed as a collection (point cloud) of a large number of points. In other words, the point cloud data consists of position information and attribute information (e.g., color) at each point in this point cloud. In this way, the data structure is relatively simple, and any stereo structure can be represented with sufficient precision by using a sufficiently large number of points. <Esboço da Abordagem com Base em Vídeo>
[0068] A video-based approach in which the position and color information in a point cloud is separately projected onto a two-dimensional plane for each small region and encoded by an encoding method into a two-dimensional image has been proposed.
[0069] In this video-based approach, the input point cloud is divided into a plurality of segments (also referred to as regions), and each region is projected onto a two-dimensional plane. Note that the point cloud data for each position (i.e., the data for each point) consists of position information (geometry (also referred to as depth)) and attribute information (texture), as explained, and the position information and attribute information are projected separately onto a two-dimensional plane for each region.
[0070] So, each of these segmentations (also referred to as patches) projected onto the two-dimensional plane is arranged into a two-dimensional image, and is encoded by an encoding technique for an image in the two-dimensional plane, such as Advanced Video Coding (AVC) or High Efficiency Video Coding (HEVC), for example. <Mapa de Ocupação>
[0071] When 3D data is projected onto a plane Petition 870260078868, dated 06 / 08 / 2026, page 23 / 120 / 62. Using a two-dimensional approach based on video, in addition to a two-dimensional plane image (also referred to as a geometry image) onto which position information is projected and a two-dimensional plane image (also referred to as a texture image) onto which attribute information is projected, as described, an Occupancy Map is generated. The Occupancy Map is the map information that indicates the presence or absence of position information and attribute information at each position on the two-dimensional plane. More specifically, in the Occupancy Map, the presence or absence of position information and attribute information are indicated for each region referred to as a precision.
[0072] Since the point cloud (each point in the point cloud) is restored in block units defined by this Occupancy Map precision, the larger the size of this block, the coarser the resolution of the points. Therefore, there was a possibility that the subjective image quality when the point cloud encoded and decoded by the video-based approach went through image formation would be reduced due to the large size of this precision.
[0073] For example, when a point cloud encoded and decoded by the video-based approach goes through image formation, when the precision size is large, fine notches, like saw teeth, are formed on the contour between a white part and a black part, as illustrated in A of figure 1, and there was a possibility that the subjective quality of the image would be reduced.
[0074] Thus, a method was considered in which the points around a point to be processed are acquired by nearest neighbor search (also referred to as nearest neighbor (NN)), and a three-dimensional uniform filter is applied to the point to be processed using the acquired points. By applying a three-dimensional uniform filter such as this, as illustrated in B of Figure 1, the notches in the contour between a part Petition 870260078868, dated 06 / 08 / 2026, page 24 / 120 / 62 white and a black part are suppressed and a uniform linear form is obtained, in such a way that a reduction in the subjective quality of the image can be suppressed.
[0075] However, overall, the point cloud contains a large number of points, and the processing load for nearest neighbor search became extremely heavy. For this reason, there was a possibility that this method would increase processing time.
[0076] Due to this increase in processing time, for example, it was difficult to implement the video-based approach, as described above, immediately (in real time) (for example, to encode a 60 frames per second moving image).
[0077] As a general scheme to accelerate NN, an approximation search method (approach NN), a method using hardware capable of processing at higher speeds and the like are considered, but even if these methods are used, the immediate process was difficult in practice. <Processo de Filtro Tridimensional com Aceleração> <#1. Acceleration Using the Representative Value for Each Local Region>
[0078] Thus, the three-dimensional smoothing filtering process is accelerated. For example, as illustrated in section 1 in figure 2, a three-dimensional space is divided into local regions, a representative value of the point cloud is developed for each local region, and the representative value for each local region is used as a reference value in the filtering process.
[0079] For example, when the points are distributed as illustrated in A of figure 3, and a three-dimensional uniform filter is applied to the black point (curPoint) in the center, the uniformization is performed by referencing (using as a reference value) the data of the gray points (nearPoint) around the black point. Petition 870260078868, dated 06 / 08 / 2026, page 25 / 120 / 62
[0080] The pseudocode for the conventional method is illustrated in B of Figure 3. In the conventional case, the peripheral points (nearPoint) of the processing target point (curPoint) are resolved using nearest neighbor (NN) search (nearPoint = NN(curPoint)) and, when all peripheral points do not belong to the same patch as each other (if(! all same patch(nearPoints))), that is, when the processing target point is located in a final part of the patch, the processing target point is uniformized using the average of the data from the peripheral points (curPoint = average(nearPoints)).
[0081] In contrast to this, in the manner indicated by the quadrants in A of Figure 4, the three-dimensional space is divided into local regions, the representative values (x) of the point cloud are derived for each local region, and the processing target point (black point) is uniformized using the derived representative values. The pseudocode for this procedure is illustrated in B of Figure 4. In this case, first, an average (Midpoint) of the points in the local region is derived as a representative value for each local region (grid). Then, a peripheral grid (near grid) located around a grid to which the processing target point belongs (processing target grid) is specified.
[0082] As the peripheral grid, a grid that has a predetermined positional relationship established in anticipation with respect to the target processing grid is selected. For example, a grid adjacent to the target processing grid can be employed as a peripheral grid. For example, in the case of A in Figure 4, when the square in the center is considered as the target processing grid, the eight grids surrounding the target processing grid are employed as the peripheral grids.
[0083] So, when all peripheral points do not belong to the same patch as each other (if(! all same patch(nearPoints))), that is, when the target processing points are located in a part Petition 870260078868, dated 06 / 08 / 2026, page 26 / 120 / 62 final patch, a three-dimensional uniformity filtering process (curPoint = trilinear(averagePoints)) is performed at the target processing point by trilinear filtering using a collection of representative values from these peripheral grids (averagePoints = AveragePoint(near grid)).
[0084] By performing the process in this way, the filtering process (three-dimensional uniformity filtering process) can be implemented without performing the load-supported nearest neighbor search (NN). In this way, a uniformity effect equivalent to that of the conventional three-dimensional uniform filter can be achieved, while the processing time of the filtering process can be significantly reduced. Figure 5 illustrates an example of the comparison between the processing time of the three-dimensional uniform filter (NN) when nearest neighbor search is used and the processing time of the three-dimensional uniform filter (trilinear) in which the present technology is applied. This demonstrates that, by applying the present technology, the processing time required as illustrated in the graph on the left side of Figure 5 can be shortened, as illustrated in the graph on the right side of Figure 5.
[0085] Next, each section in figure 2 will be described in relation to figures 6 to 15. <N° 1-1. Técnica de Divisão da Região Local>
[0086] The method of dividing three-dimensional space (division technique for local regions) is optional. For example, three-dimensional space can be uniformly divided into N x N x N cube regions, as in the row with “1” in the ID column of the table in Figure 6. By dividing three-dimensional space in this way, three-dimensional space can be easily divided into local regions, in such a way that an increase in the processing time of the filtering process can be suppressed (the filtering process can be accelerated). Petition 870260078868, dated 06 / 08 / 2026, page 27 / 120 / 62
[0087] Furthermore, for example, three-dimensional space can be uniformly divided into M x N x L rectangular parallelepiped regions, as in the row with “2” in the ID column of the table in Figure 6. By dividing three-dimensional space in this way, three-dimensional space can be easily divided into local regions, in such a way that an increase in the processing time of the filtering process can be suppressed (the filtering process can be accelerated). Moreover, since the degree of freedom in the shape of the local region is improved, compared to the case of dividing three-dimensional space into cube regions, the processing load can be further uniformized between respective local regions (the load imbalance can be suppressed).
[0088] Furthermore, for example, three-dimensional space can be divided in such a way that the number of points in each local region is constant, as in the row with “3” in the ID column of the table in Figure 6. By dividing three-dimensional space in this way, the processing load and resource usage can be standardized between the respective local regions, compared to the case of dividing three-dimensional space into cube regions or rectangular parallelepiped regions (the load imbalance can be suppressed).
[0089] Furthermore, for example, a local region that has any shape and size can be defined at any position in three-dimensional space, such as in the row with “4” in the ID column of the table in Figure 6. By defining the local region in this way, a more suitable uniformity process for a particular shape can be performed even for an object that has a complex three-dimensional shape, and more uniformity is enabled than in the case of each of the methods described.
[0090] Furthermore, for example, selection from the aforementioned methods with IDs “1” to “4” can be enabled, as in the row with “5” in the ID column of the table in Figure 6. By enabling Petition 870260078868, dated 06 / 08 / 2026, page 28 / 120 / 62 of the selection in this way, a more appropriate standardization process can be carried out in various situations, and more standardization is enabled. Note that how to make this selection (based on what to select) is optional. Furthermore, the information indicating which method was selected can be transmitted from the encoding side to the decoding side (method selection information signal). < No. 1-2. Local Region Parameter Definition>
[0091] Furthermore, the method and contents of the parameters for defining a local region like this are optional. For example, the shape and size of the local region dividing the three-dimensional space (e.g., L, M, N in Figure 6) can have fixed values, as in the row with “1” in the ID column of the table in Figure 7. For example, these values can be defined in advance according to a pattern or similar. By defining the values in this way, the definition of the shape and size of the local region can be omitted, so that the filtering process can be further accelerated.
[0092] Furthermore, for example, the definition of the shape and size of the local region according to the point cloud and the situation can be enabled, as in the line with “2” in the ID column of the table in Figure 7. That is, the parameters of the local region can be made variable. By employing variable parameters in this way, a more appropriate local region can be formed according to the situation, so that the filtering process can be performed more appropriately. For example, the process can be further accelerated, an imbalance in the process can be suppressed, and more uniformity is enabled.
[0093] For example, the size of the local region (e.g., L, M, N in Figure 6) can be made variable, as in the row with “2-1” in the ID column of the table in Figure 7. Furthermore, for example, the number of points contained in the local region can be made variable, as in the row with “2-2” in the column of Petition 870260078868, dated 06 / 08 / 2026, page 29 / 120 / 62 Furthermore, for example, the shape and position of the local region can be made variable, as in the row with “2-3” in the ID column. Additionally, for example, a user or similar can be allowed to select the definition method for the local region, as in the row with “2-4” in the ID column. For example, a user or similar can be allowed to decide which method is selected from the methods with IDs “1” to “4” in the table in Figure 6. < No. 1-3. Signal>
[0094] Furthermore, information about the filtering process may or may not be transmitted from the encoding side to the decoding side. For example, as in the line with “1” in the ID column of the table in Figure 8, all parameters relating to the filtering process can be defined in advance by a pattern or similar, in such a way that information about the filtering process is not transmitted. By defining all parameters in advance in this way, since the amount of information to be transmitted is reduced, the encoding efficiency can be improved. Furthermore, since the derivation of parameters is unnecessary, the load on the filtering process can be mitigated, and the filtering process can be further accelerated.
[0095] Furthermore, for example, as in the line with “2” in the ID column of the table in Figure 8, the derivation of ideal values for all parameters in relation to the filtering process from other internal parameters (e.g., the accuracy of the Occupancy Map) can be enabled, in such a way that information about the filtering process is not transmitted. By enabling the derivation of ideal values in this way, since the amount of information to be transmitted is reduced, the coding efficiency can be improved. Furthermore, it becomes possible to define a more suitable local region for the situation.
[0096] Furthermore, for example, information regarding Petition 870260078868, dated 06 / 08 / 2026, page 30 / 120 / 62. The filtering process can be transmitted in the header of the continuous bit stream, as in the line with “3” in the ID column of the table in Figure 8. In this case, the parameter has a fixed value in the continuous bit stream. By transmitting the information in the header of the continuous bit stream in this way, the amount of information to be transmitted can be relatively small, so that a reduction in encoding efficiency can be suppressed. Furthermore, since the parameter has a fixed value in the continuous bit stream, it is possible to suppress an increase in the load of the filtering process.
[0097] Furthermore, for example, information regarding the filtering process can be transmitted in the frame header, as in the line with “4” in the ID column of the table in Figure 8. In this case, the parameter can be made variable for each frame. In this way, it becomes possible to define a more suitable local region for the situation. < No. 1-4. Target of Filter Processing>
[0098] The target of the filtering process is optional. For example, the position information in the point cloud can be targeted, as in the row with “1” in the ID column of the table in Figure 9. In other words, the three-dimensional uniformity filtering process is performed on the position information at the target processing point. By performing the uniformity filtering process in this way, the uniformity of positions between the respective points of the point cloud can be implemented.
[0099] Furthermore, for example, attribute information (color and similar) in the point cloud can be targeted, for example, as in the row with “2” in the ID column of the table in Figure 9. In other words, the three-dimensional uniformity filtering process is performed on the attribute information at the target processing point. By performing the uniformity filtering process in this way, the uniformity of colors and similarities between the respective points of the point cloud can be implemented. < No. 1-5. Representative Value Derivation Method> Petition 870260078868, dated 06 / 08 / 2026, page 31 / 120 / 62
[00100] The method of deriving the representative value for each local region is optional. For example, as in the row with “1” in the ID column of the table in Figure 10, the average of the data points within the local region (contained within the local region) can be used as the representative value. Since the average can be calculated by a simple arithmetic operation, the representative value can be calculated at a higher speed by using the average as the representative value in this way. That is, the filtering process can be further accelerated.
[00101] Furthermore, for example, as in the row with “2” in the ID column of the table in Figure 10, the median of the data points within the local region (contained in the local region) can be used as the representative value. Since the median is less susceptible to peculiar data, a more stable result can be obtained even when there is noise. That is, a more stable filter processing result can be obtained.
[00102] Certainly, the method of deriving the representative value may differ from these examples. Moreover, for example, the representative value may be derived by a plurality of methods, in such a way that a more favorable value is selected. Furthermore, for example, different derivation methods may be allowed for each local region. For example, the derivation method may be selected according to the features of the three-dimensional structure represented by the point cloud. For example, the representative value may be derived by the median for a part with a thin shape that includes a lot of noise, such as hair, while the representative value may be derived by the mean for a part with a clear outline, such as clothing. < No. 1-6. Arithmetic Operation of the Filter Process>
[00103] The arithmetic operation of the filtering process (three-dimensional uniform filter) is optional. For example, as in the row with “1” in the ID column of the table in Figure 11, trilinear interpolation can be used. Interpolation Petition 870260078868, dated 06 / 08 / 2026, page 32 / 120 / 62. Trilinear interpolation has a good balance between processing speed and quality of the processing result. Alternatively, for example, tricubic interpolation can be used, as in the row with “2” in the ID column of the table in Figure 11. Tricubic interpolation can obtain a higher quality processing result than trilinear interpolation. Furthermore, for example, nearest neighbor (NN) search can be used, as in the row with “3” in the ID column of the table in Figure 11. This method can obtain the processing result at a higher speed than trilinear interpolation. Certainly, the three-dimensional uniform filter can be implemented by any arithmetic operation other than these methods. < No. 2. Simplification of the Three-Dimensional Filtering Process>
[00104] Furthermore, as illustrated in section 2 of Figure 2, the filtering process can be performed exclusively in a partial region. Figure 12 is a diagram illustrating an example of the Occupancy Map. In an Occupancy Map 51 illustrated in Figure 12, the white parts indicate the regions (accuracies) that have data in a geometry image where the point cloud position information is projected onto the two-dimensional plane and data in a texture image where the point cloud attribute information is projected onto the two-dimensional plane, and the black parts indicate the regions that have no data in the geometry image or the texture image. In other words, the white parts indicate the regions where the point cloud patches are projected, and the black parts indicate the regions where the point cloud patches are not projected.
[00105] A notch, of the shape indicated in A of Figure 1, occurs in a contour section between the patches, as indicated by arrow 52 in Figure 12. Thus, as illustrated in section 2-1 in Figure 2, the three-dimensional uniformity filtering process can be performed only at a point corresponding to a contour section like this between the patches. Petition 870260078868, dated 06 / 08 / 2026, page 33 / 120 / 62 (one end of the patch on the Occupation Map). In other words, a final part of the patch on the Occupation Map can be used as a partial region in which the three-dimensional uniformity filtering process is performed.
[00106] By employing a final part of the patch as a partial region in this way, the three-dimensional uniformity filtering process can be performed only in some regions. In other words, since the region in which the three-dimensional uniformity filtering process is performed can be reduced, the three-dimensional uniformity filtering process can be further accelerated.
[00107] This method can be combined with a conventional nearest neighbor search, as illustrated in A of Figure 13. In other words, as in the pseudocode illustrated in B of Figure 13, the three-dimensional uniformity filtering process that includes the nearest neighbor search (k-NearestNeighbor) can only be performed when the position of the target processing point corresponds to an end of the patch (if(is_Boundary(curPos))).
[00108] Furthermore, as illustrated in A of Figure 14, the filtering process described above in No. 1, in which the present technology is applied, can be used in combination. In other words, as in the pseudocode illustrated in B of Figure 14, the three-dimensional smoothing filtering process by trilinear interpolation using the representative value of the local region can only be performed when the position of the target processing point corresponds to an end of the patch (if(is_Boundary(curPos))).
[00109] Figure 15 illustrates an example of the comparison of processing time between the respective methods. The first graph on the left illustrates the processing time of the uniformity filtering process using conventional nearest neighbor search. The second graph on the left illustrates the processing time of the filtering process of Petition 870260078868, dated 06 / 08 / 2026, page 34 / 120 / 62 three-dimensional uniformity by trilinear interpolation using the representative value of the local region. The third graph from the left illustrates the processing time when the uniformity filtering process using conventional nearest neighbor search is performed only at a point corresponding to a final part of the patch in the Occupation Map. The fourth graph from the left illustrates the processing time when the three-dimensional uniformity filtering process by trilinear interpolation using the representative value of the local region is performed only at a point corresponding to a final part of the patch in the Occupation Map. In this way, by performing the three-dimensional uniformity filter only in some regions, the processing time can be reduced regardless of the filtering process method. < 2. First modality> <Aparelho de codificação>
[00110] Next, a configuration that implements each of the schemes, as mentioned above, will be described. Figure 16 is a block diagram illustrating an example of the configuration of a coding device that is an exemplary form of an image processing device in which the present technology is applied. A coding device 100 illustrated in Figure 16 is a device that projects 3D data, such as a point cloud, onto a two-dimensional plane and encodes the projected 3D data by a coding method into a two-dimensional image (a coding device in which the video-based approach is applied).
[00111] Note that Figure 16 illustrates major processing units, data flows, and similar elements, and Figure 16 does not necessarily illustrate all of them. In other words, in encoding device 100, there may be a processing unit that is not illustrated as a block in Figure 16, or there may be a process or data flow that is not illustrated as an arrow or similar element in Figure 16. This also applies similarly... Petition 870260078868, dated 06 / 08 / 2026, p. 35 / 120 / 62 to the other figures that explain the processing units and similar in the encoding apparatus 100.
[00112] As illustrated in figure 16, the encoding apparatus 100 includes a patch decomposition unit 111, a packaging unit 112, an OMap generation unit 113, an auxiliary patch information compression unit 114, a video encoding unit 115, a video encoding unit 116 and an OMap encoding unit 117 and a multiplexer 118.
[00113] Patch decomposition unit 111 performs a process related to the decomposition of 3D data. For example, patch decomposition unit 111 acquires 3D data (e.g., a point cloud) representing a three-dimensional structure, which has been entered into encoding apparatus 100. Furthermore, patch decomposition unit 111 decomposes the acquired 3D data into a plurality of segments to project the 3D data onto a two-dimensional plane for each segment, and generates a position information patch and an attribute information patch.
[00114] Patch decomposition unit 111 supplies information regarding each patch generated for packaging unit 112. Furthermore, patch decomposition unit 111 supplies auxiliary patch information, which is information regarding the decomposition, for auxiliary patch information compression unit 114.
[00115] Packing unit 112 performs a process related to data packing. For example, packing unit 112 acquires the data (a patch) from the two-dimensional plane onto which the 3D data is projected for each region, which was supplied from patch decomposition unit 111. Furthermore, packing unit 112 arranges each acquired patch into an image. Petition 870260078868, dated 06 / 08 / 2026, page 36 / 120 / 62 two-dimensional, and packages the resulting two-dimensional image as a video frame. For example, packaging unit 112 separately packages, like video frames, a patch of position information (geometry) indicating the position of a point and a patch of attribute information (texture), such as color information added to the position information.
[00116] Packing unit 112 supplies the generated video frames to the OMap generation unit 113. Furthermore, packing unit 112 supplies the control information regarding the packing to the multiplexer 118.
[00117] The OMap 113 generation unit performs a process related to the generation of the Occupancy Map. For example, the OMap 113 generation unit acquires the data supplied from the packaging unit 112. Furthermore, the OMap 113 generation unit generates an Occupancy Map corresponding to the position information and the attribute information. The OMap 113 generation unit supplies the generated Occupancy Map and various pieces of information acquired from the packaging unit 112 to subsequent processing units. For example, the OMap 113 generation unit supplies the video frame with position (geometry) information for the video encoding unit 115. Furthermore, for example, the OMap 113 generation unit supplies the video frame with attribute (texture) information for the video encoding unit 116. Moreover, for example, the OMap 113 generation unit supplies the Occupancy Map for the OMap 117 encoding unit.
[00118] The auxiliary patch information compression unit 114 performs a process related to the compression of auxiliary patch information. For example, the auxiliary patch information compression unit 114 acquires the supplied data from the patch decomposition unit 111. The auxiliary patch information compression unit Petition 870260078868, dated 06 / 08 / 2026, page 37 / 120 / 62 114 encodes (compresses) the auxiliary patch information included in the acquired data. The auxiliary patch information compression unit 114 supplies the encoded data obtained from the auxiliary patch information to the multiplexer 118.
[00119] Video encoding unit 115 performs a process related to encoding the position (geometry) information video frame. For example, video encoding unit 115 acquires the position (geometry) information video frame supplied from the OMap generation unit 113. Furthermore, video encoding unit 115 encodes the position (geometry) information video frame acquired by any encoding method into a two-dimensional image, such as AVC or HEVC, for example. Video encoding unit 115 supplies the encoded data obtained by encoding (encoded position (geometry) information video frame data) to multiplexer 118.
[00120] Video encoding unit 116 performs a process related to encoding the video frame of attribute information (texture). For example, video encoding unit 116 acquires the video frame of attribute information (texture) supplied from the OMap generation unit 113. Furthermore, video encoding unit 116 encodes the video frame of attribute information (texture) acquired by any encoding method into a two-dimensional image, such as AVC or HEVC, for example. Video encoding unit 116 supplies the encoded data obtained by encoding (encoded data of the video frame of attribute information (texture)) to multiplexer 118.
[00121] The OMap 117 encoding unit performs a process related to encoding the Occupancy Map. For example, the OMap 117 encoding unit acquires the supplied Occupancy Map from the OMap 113 generation unit. Furthermore, the OMap 117 encoding unit encodes the Occupancy Map acquired by any method of Petition 870260078868, dated 06 / 08 / 2026, page 38 / 120 / 62 encoding, such as arithmetic encoding, for example. The OMap 117 encoding unit supplies the encoded data obtained by encoding (encoded data from the Occupation Map) to the 118 multiplexer.
[00122] Multiplexer 118 performs a process related to multiplexing. For example, multiplexer 118 acquires encoded data from the auxiliary patch information supplied from the auxiliary patch information compression unit 114. Furthermore, multiplexer 118 acquires control information related to packaging supplied from the packaging unit 112. Furthermore, multiplexer 118 acquires encoded video frame data from the position (geometry) information supplied from the video encoding unit 115. Furthermore, multiplexer 118 acquires encoded video frame data from the attribute (texture) information supplied from the video encoding unit 116. Furthermore, multiplexer 118 acquires encoded data from the Occupancy Map supplied from the OMap encoding unit 117.
[00123] Multiplexer 118 multiplexes the acquired information pieces to generate a continuous bit stream. Multiplexer 118 transmits the generated continuous bit stream to the outside of encoding apparatus 100.
[00124] In an encoding apparatus such as this 100, patch decomposition unit 111 acquires the Occupancy Map generated by the OMap generation unit 113 from the OMap generation unit 113. Furthermore, patch decomposition unit 111 acquires the encoded video frame data from the position information (geometry) (also referred to as a geometry image) generated by the video encoding unit 115 from the video encoding unit 115.
[00125] So, the Patch Decomposition Unit 111 uses these pieces of data to perform the three-dimensional smoothing filtering process on the point cloud. In other words, the Patch Decomposition Unit 111 projects the 3D data subjected to the process of Petition 870260078868, dated 06 / 08 / 2026, page 39 / 120 / 62 three-dimensional uniformity filter on a two-dimensional plane, and generates a patch of position information and a patch of attribute information. <Unidade de Decomposição de Remendo>
[00126] Figure 17 is a block diagram illustrating an example of the main configuration of the patch decomposition unit 111 in Figure 16. As illustrated in Figure 17, the patch decomposition unit 111 includes a patch decomposition processing unit 131, a geometry decoding unit 132, a three-dimensional position information smoothing processing unit 133, and a texture correction unit 134.
[00127] Patch decomposition processing unit 131 acquires a point cloud to decompose the acquired point cloud into a plurality of segments, and projects the point cloud onto a two-dimensional plane for each segment to generate a position information patch (geometry patch) and an attribute information patch (texture patch). Patch decomposition processing unit 131 supplies the generated geometry patch to packing unit 112. Furthermore, patch decomposition processing unit 131 supplies the generated texture patch to texture correction unit 134.
[00128] The geometry decoding unit 132 acquires the encoded geometry image data (encoded geometry data). This encoded geometry image data was obtained by packaging the geometry patch generated by the patch decomposition processing unit 131 into a video frame in the packaging unit 112 and by encoding the video frame in the video encoding unit 115. The geometry decoding unit 132 decodes the encoded geometry data by a decoding technique. Petition 870260078868, dated 06 / 08 / 2026, page 40 / 120 / 62 corresponding to the encoding technique of the video encoding unit 115. Furthermore, the geometry decoding unit 132 reconstructs the point cloud (the position information in the point cloud) of the geometry image obtained by decoding the encoded geometry data. The geometry decoding unit 132 supplies the position information obtained in the point cloud (geometry point cloud) to the three-dimensional position information smoothing processing unit 133.
[00129] The three-dimensional position information smoothing processing unit 133 acquires the position information in the point cloud supplied from the geometry decoding unit 132. Furthermore, the three-dimensional position information smoothing processing unit 133 acquires the Occupancy Map. This Occupation Map was generated by the OMap 113 generation unit.
[00130] The three-dimensional position information smoothing processing unit 133 performs the three-dimensional smoothing filtering process on the position information in the point cloud (geometry point cloud). Currently, as explained, the three-dimensional position information smoothing processing unit 133 performs the three-dimensional smoothing filtering process using the representative value for each local region obtained by dividing the three-dimensional space. Furthermore, the three-dimensional position information smoothing processing unit 133 uses the acquired Occupation Map to perform the three-dimensional smoothing filtering process only at one point in a partial region corresponding to one end of the patch in the acquired Occupation Map.By performing the three-dimensional uniformity filtering process in this manner, the three-dimensional position information uniformity processing unit 133 can perform the filtering process at a higher speed.
[00131] The information standardization processing unit Petition 870260078868, dated 06 / 08 / 2026, page 41 / 120 / 62 of three-dimensional position 133 supplies the geometry point cloud subject to the filtering process (also referred to as a uniformized geometry point cloud) to the patch decomposition processing unit 131. The patch decomposition processing unit 131 decomposes the supplied uniformized geometry point cloud into a plurality of segments to project the point cloud onto a two-dimensional plane for each segment, and generates a position information patch (uniformized geometry patch) to supply the generated patch to the packaging unit 112.
[00132] Furthermore, the three-dimensional position information standardization processing unit 133 also supplies the standardized geometry point cloud for the texture correction unit 134.
[00133] Texture correction unit 134 acquires the supplied texture patch from patch decomposition processing unit 131. Furthermore, texture correction unit 134 acquires the supplied smoothed geometry point cloud from three-dimensional position information smoothing processing unit 133. Texture correction unit 134 corrects the texture patch using the acquired smoothed geometry point cloud. When the position information in the point cloud changes due to three-dimensional smoothing, the shape of the patch projected onto the two-dimensional plane may also change. In other words, texture correction unit 134 reflects the change in position information in the point cloud due to three-dimensional smoothing in the attribute information patch (texture patch).
[00134] Texture correction unit 134 supplies texture patching after correction for packaging unit 112.
[00135] Packaging unit 112 packages the standardized geometry patch and the corrected texture patch supplied from patch decomposition unit 111 separately into frames of Petition 870260078868, dated 06 / 08 / 2026, page 42 / 120 / 62 video, and generates a video frame of the position information and a video frame of the attribute information. <Unidade de processamento de uniformização da informação de posição tridimensional>
[00136] Figure 18 is a block diagram illustrating an example of the main configuration of the three-dimensional position information standardization processing unit 133 in Figure 17. As illustrated in Figure 18, the three-dimensional position information standardization processing unit 133 includes a region division unit 141, a region representative value derivation unit 142, a processing target region definition unit 143, a standardization processing unit 144, and a transmission information generation unit 145.
[00137] Region splitting unit 141 acquires position information from the point cloud (geometry point cloud) supplied by geometry decoding unit 132. Region splitting unit 141 divides the region of three-dimensional space that includes the acquired geometry point cloud, and defines a local region (grid). At this point, region splitting unit 141 divides three-dimensional space and defines the local region using the method described above in<N° 1. Aceleração usando o Valor Representativo para Cada Região Local> .
[00138] The region division unit 141 supplies information regarding the defined local region (e.g., information regarding the shape and size of the local region) and the geometry point cloud for the representative value derivation unit in region 142. Furthermore, when information regarding the local region needs to be transmitted to the decoding side, the region division unit 141 supplies information regarding the local region for the transmission information generation unit 145. Petition 870260078868, dated 06 / 08 / 2026, page 43 / 120 / 62
[00139] The representative value derivation unit in region 142 acquires information regarding the local region and the geometry point cloud supplied from the region 141 splitting unit. The representative value derivation unit in region 142 derives the representative value of the geometry point cloud in each local region defined by the region 141 splitting unit, based on these pieces of information. At this point, the representative value derivation unit in region 142 derives the representative value using the method described above in<N° 1. Aceleração usando o Valor Representativo para Cada Região Local> .
[00140] The representative value derivation unit in region 142 supplies the information regarding the local region, the geometry point cloud, and the derived representative value for each local region to the smoothing processing unit 144. Furthermore, when the derived representative value for each local region needs to be transmitted to the decoding side, the information indicating the representative value for each local region is supplied to the transmission information generation unit 145.
[00141] The target processing region definition unit 143 acquires the Occupation Map. The target processing region definition unit 143 defines a region in which the filtering process should be applied, based on the acquired Occupation Map. At this moment, the target processing region definition unit 143 defines the region using the method described above in<N° 2. Simplificação do Processo de Filtro Tridimensional> In other words, the unit defining the target processing region 143 defines a partial region corresponding to one end of the patch in the Occupation Map as the target processing region for the filtering process.
[00142] The unit defining the target processing region 143 provides the information indicating the target processing region defined for the Petition 870260078868, dated 06 / 08 / 2026, page 44 / 120 / 62 standardization processing unit 144. Furthermore, when the information indicating the target processing region needs to be transmitted to the decoding side, the target processing region definition unit 143 supplies the information indicating the target processing region to the transmission information generation unit 145.
[00143] The standardization processing unit 144 acquires the information regarding the local region, the geometry point cloud, and the representative value for each supplied local region from the representative value derivation unit 142. Furthermore, the standardization processing unit 144 acquires the information indicating the target processing region, which was supplied from the target processing region definition unit 143.
[00144] The standardization processing unit 144 performs the three-dimensional standardization filtering process based on these pieces of information. In other words, as described above in<Processo de Filtro Tridimensional com Aceleração> The 144 uniformization processing unit performs the three-dimensional uniformization filtering process at a point in the geometry point cloud in the target processing region, using the representative value of each local region as a reference value. In this way, the 144 uniformization processing unit can perform the three-dimensional uniformization filtering process at a higher speed.
[00145] The smoothing processing unit 144 supplies the geometry point cloud subject to the three-dimensional smoothing filter process (smoothized geometry point cloud) to the patch decomposition processing unit 131 and the texture correction unit 134.
[00146] The transmission information generation unit 145 acquires information regarding the supplied local region from the splitting unit. Petition 870260078868, dated 06 / 08 / 2026, page 45 / 120 / 62 of region 141, the information indicating the representative value for each local region, which was supplied from the representative value derivation unit in region 142, and the information indicating the target processing region, which was supplied from the target processing region definition unit 143. The transmission information generation unit 145 generates transmission information that includes these pieces of information. The transmission information generation unit 145 supplies the generated transmission information, for example, to the auxiliary patch information compression unit 114, and causes the auxiliary patch information compression unit 114 to transmit the supplied transmission information to the decoding side as auxiliary patch information. <Fluxo do Processo de Codificação>
[00147] Next, an example of the flow of a coding process executed by coding device 100 will be described in relation to the flowchart in figure 19.
[00148] Once the coding process is initiated, the patch decomposition unit 111 of the coding apparatus 100 projects a point cloud onto a two-dimensional plane, and decomposes the projected point cloud into patches in step S101.
[00149] In step S102, the auxiliary patch information compression unit 114 compresses the auxiliary patch information generated in step S101.
[00150] In step S103, packaging unit 112 packages each patch of position information and attribute information generated in step S101 as a video frame. Furthermore, OMap generation unit 113 generates an Occupancy Map corresponding to the video frames of position information and attribute information.
[00151] In step S104, video encoding unit 115 encodes a geometry video frame, which is the video frame of information of Petition 870260078868, dated 06 / 08 / 2026, page 46 / 120 / 62 position generated in step S103, by an encoding method for a two-dimensional image.
[00152] In step S105, video encoding unit 116 encodes a color video frame, which is the attribute information video frame generated in step S103, by an encoding method for a two-dimensional image.
[00153] In step S106, the OMap 117 coding unit encodes the Occupation Map generated in step S103 using a pre-determined coding method.
[00154] In step S107, multiplexer 118 multiplexes the various pieces of information generated as described, and generates a continuous bit stream that includes these pieces of information.
[00155] In step S108, multiplexer 118 transmits the continuous bit stream generated in step S107 to the outside of encoding device 100.
[00156] Once the process in step S108 is finished, the encoding process ends. <Fluxo do Processo de Decomposição de Remendo>
[00157] Next, an example of the flow of a patch decomposition process performed in step S101 of Figure 19 will be described in relation to the flowchart in Figure 20.
[00158] Once the patch decomposition process is initiated, the patch decomposition processing unit 131 decomposes a point cloud into patches, and generates a geometry patch and a texture patch in step S121.
[00159] In step S122, geometry decoding unit 132 decodes the encoded geometry data obtained by packing the geometry patch generated in step S121 into a video frame and encoding the video frame, and reconstructs the point cloud to generate a geometry point cloud. Petition 870260078868, dated 06 / 08 / 2026, page 47 / 120 / 62
[00160] In step S123, the three-dimensional position information standardization processing unit 133 executes the standardization process, and performs the three-dimensional standardization filtering process on the geometry point cloud generated in step S122.
[00161] In step S124, texture correction unit 134 corrects the texture patch generated in step S121, using the smoothed geometry point cloud obtained by the process in step S123.
[00162] In step S125, the patch decomposition processing unit 131 decomposes the uniform geometry point cloud obtained by the process in step S123 into patches, and generates a patch of uniform geometry.
[00163] Once the process in step S125 is finished, the patch decomposition process ends and the process returns to figure 19. <Fluxo do Processo de Uniformização>
[00164] Next, an example of the flow of a standardization process executed in step S123 of figure 20 will be described in relation to the flowchart in figure 21.
[00165] Once the uniformization process is initiated, the region 141 division unit divides the three-dimensional space that includes the point cloud into local regions in step S141. The region 141 division unit divides the three-dimensional space and defines the local region using the method described above in<N° 1. Aceleração usando o Valor Representativo para Cada Região Local> .
[00166] In step S142, the representative value derivation unit in region 142 derives the representative value of the point cloud for each local region defined in step S141. The representative value derivation unit in region 142 derives the representative value using the method described above in<N° 1. Aceleração usando o Valor Representativo para Cada Região Local> . Petition 870260078868, dated 06 / 08 / 2026, page 48 / 120 / 62
[00167] In step S143, the target processing region definition unit 143 defines a range to perform the smoothing process. The target processing region definition unit 143 defines the region using the method described above in<N° 2. Simplificação do Processo de Filtro Tridimensional> In other words, the unit defining the target processing region 143 defines a partial region corresponding to one end of the patch in the Occupation Map as the target processing region for the filtering process.
[00168] In step S144, the 144 standardization processing unit performs the standardization process in the processing of the target range defined in step S143, by reference to the representative value of each region. As described above in<Processo de Filtro Tridimensional com Aceleração> The 144 uniformization processing unit performs the three-dimensional uniformization filtering process at a point in the geometry point cloud in the target processing region, using the representative value of each local region as a reference value. In this way, the 144 uniformization processing unit can perform the three-dimensional uniformization filtering process at a higher speed.
[00169] In step S145, transmission information generation unit 145 generates transmission information in relation to standardization to supply the generated transmission information, for example, to auxiliary patch information compression unit 114, and causes auxiliary patch information compression unit 114 to transmit the supplied transmission information as auxiliary patch information.
[00170] Once the process in step S145 is finished, the standardization process ends and the process returns to figure 20. <Fluxo do Processo de Definição da Faixa de Uniformização>
[00171] Below is an example of the flow of a process for defining the Petition 870260078868, dated 06 / 08 / 2026, page 49 / 120 / 62. The standardization strip executed in step S143 of figure 21 will be described in relation to the flowchart in figure 22.
[00172] Once the process of defining the uniformity range is initiated, the target processing region definition unit 143 determines in step S161 whether or not the current position (x, y) (target processing block) in the Occupation Map is located at an end of the Occupation Map. For example, when the lateral width of the Occupation Map is considered as the width and the longitudinal width is considered as the height, the following determination is made: x! = 0 & y! = 0 & x! = width - 1 & y! = height - 1.
[00173] When it is determined that this determination is true, that is, the current position is not located at an end of the Occupation Map, the process proceeds to step S162.
[00174] In step S162, the target processing region definition unit 143 determines whether or not all values of the peripheral parts of the current position in the Occupation Map have 1. When it is determined that all values of the peripheral parts of the current position in the Occupation Map have 1, that is, all peripheral parts have position information and attribute information and are not located in the vicinity of a boundary between a part that has position information and attribute information and a part that has neither position information nor attribute information, the process proceeds to step S163.
[00175] In step S163, the unit defining the target processing region 143 determines whether or not all patches to which the peripheral parts of the current position belong coincide with a patch to which the current position belongs. When the patches are placed side by side, the parts where the Occupancy Map value is 1 continue. In this way, even in a case where it is determined in step S162 that all peripheral parts of the current position have data, it is likely that a part where a Petition 870260078868, dated 06 / 08 / 2026, p. 50 / 120 / 62 plurality of patches are adjacent to each other, and it is likely that the current position is still located at one end of the patch. Then, since the images are basically not continuous between different patches, it is likely that a notch like A in figure 1 is formed due to the large size of the precision of the Occupation Map even in a part where a plurality of patches are adjacent to each other. Thus, as explained, it is determined whether or not all patches to which the peripheral parts of the current position belong coincide with a patch to which the current position belongs.
[00176] When it is determined that all peripheral parts and the current position belong to the same patch as each other, that is, the current position is not located in a part where a plurality of patches are adjacent to each other and not located in an end part of the patch, the process proceeds to step S164.
[00177] In step S164, the target processing region definition unit 143 determines a three-dimensional point restored from the current position (x, y) (a point in the point cloud corresponding to the target processing block) as a point that will not be subject to the smoothing filter process. In other words, the current position is excluded from the smoothing processing treatment range. Once the process in step S164 is finished, the process proceeds to step S166.
[00178] Furthermore, when it is determined, in step S161, that the stated determination is false, that is, the current position is located at one end of the Occupation Map, the process proceeds to step S165.
[00179] Furthermore, when it is determined, in step S162, that there is a peripheral part where the Occupation Map value is not 1, that is, there is a peripheral part that has no position information or attribute information and the current position is located at one end of the patch, the process proceeds to step S165. Petition 870260078868, dated 06 / 08 / 2026, page 51 / 120 / 62
[00180] Furthermore, when it is determined, in step S163, that there is a peripheral part that belongs to a patch different from the patch to which the current position belongs, that is, the current position is located in a part where a plurality of patches are adjacent to each other, the process proceeds to step S165.
[00181] In step S165, the target processing region definition unit 143 determines a three-dimensional point restored from the current position (x, y) (a point in the point cloud corresponding to the target processing block) as a point to be subjected to the smoothing filter process. In other words, the current position is defined as the treatment range of the smoothing processing. Once the process in step S165 is finished, the process proceeds to step S166.
[00182] In step S166, the target processing region definition unit 143 determines whether or not all positions (blocks) in the Occupation Map have been processed. When it is determined that there is an unprocessed position (block), the process returns to step S161, and subsequent processes are repeated for the unprocessed block allocated as the target processing block. In other words, the processes in steps S161 to S166 are repeated for each block.
[00183] So, when it is determined in step S166 that all positions (blocks) in the Occupation Map have been processed, the process of defining the uniformity range ends, and the process returns to figure 21.
[00184] By executing each process as described, an increase in the processing time of the filtering process for the point cloud data can be suppressed (the filtering process can be performed at a higher speed). < 3. Second modality> <Aparelho de decodificação> Petition 870260078868, dated 06 / 08 / 2026, page 52 / 120 / 62
[00185] Next, a configuration that implements each of the aforementioned schemes will be described. Figure 23 is a block diagram illustrating an example of a decoding apparatus configuration that is an exemplary form of the image processing apparatus in which the present technology is applied. A decoding apparatus 200 illustrated in Figure 23 is an apparatus that decodes the encoded data obtained by projecting 3D data, such as a point cloud, onto a two-dimensional plane, and encoding the projected 3D data, by a decoding method, into a two-dimensional image, and projects the decoded data into a three-dimensional space (a decoding apparatus in which the video-based approach is applied). For example, decoding apparatus 200 decodes a continuous bit stream generated by encoding apparatus 100 (Figure 16) which encodes a point cloud, and reconstructs the point cloud.
[00186] Note that Figure 23 illustrates the main processing units, data streams, and the like, and Figure 23 does not necessarily illustrate all of them. In other words, in the decoding apparatus 200, there may be a processing unit that is not illustrated as a block in Figure 23, or there may be a process or data stream that is not illustrated as an arrow or the like in Figure 23. This also applies similarly to other figures that explain the processing units and the like in the decoding apparatus 200.
[00187] As illustrated in figure 23, the decoding apparatus 200 includes a demultiplexer 211, an auxiliary patch information decoding unit 212, a video decoding unit 213, a video decoding unit 214, an OMap decoding unit 215, an unpacking unit 216, and a 3D reconstruction unit 217.
[00188] Demultiplexer 211 performs a process in relation to Petition 870260078868, dated 06 / 08 / 2026, page 53 / 120 / 62 data demultiplexing. For example, demultiplexer 211 acquires a continuous bit stream inserted into decoding device 200. This continuous bit stream is supplied, for example, from encoding device 100. Demultiplexer 211 demultiplexes this continuous bit stream and extracts the encoded data from the auxiliary patch information to supply the extracted encoded data to the auxiliary patch information decoding unit 212. Furthermore, demultiplexer 211 extracts the encoded video frame data from the position (geometry) information from the continuous bit stream by demultiplexing and supplies the extracted encoded data to the video decoding unit 213.Furthermore, demultiplexer 211 extracts the encoded video frame attribute information (texture) from the continuous bitstream by demultiplexing, and supplies the extracted encoded data to the video decoding unit 214. Furthermore, demultiplexer 211 extracts the encoded Occupancy Map data from the continuous bitstream by demultiplexing, and supplies the extracted encoded data to the OMap decoding unit 215. Furthermore, demultiplexer 211 extracts the control information regarding packing from the continuous bitstream by demultiplexing, and supplies the extracted control information to the unpacking unit 216.
[00189] The auxiliary patch information decoding unit 212 performs a process related to decoding the encoded auxiliary patch information data. For example, the auxiliary patch information decoding unit 212 acquires the encoded auxiliary patch information data supplied from the demultiplexer 211. Furthermore, the auxiliary patch information decoding unit 212 decodes (decompresses) the encoded auxiliary patch information data included in the acquired data. The auxiliary patch information decoding unit 212 supplies the auxiliary patch information. Petition 870260078868, dated 06 / 08 / 2026, page 54 / 120 / 62 obtained by decoding to the 3D reconstruction unit 217.
[00190] The video decoding unit 213 performs a process related to decoding the encoded video frame data from the position (geometry) information. For example, the video decoding unit 213 acquires the encoded video frame data from the position (geometry) information supplied from the demultiplexer 211. Furthermore, the video decoding unit 213 decodes the acquired encoded data by any decoding method for a two-dimensional image, such as AVC or HEVC, for example, to obtain the video frame from the position (geometry) information. The video decoding unit 213 supplies the obtained video frame from the position (geometry) information to the unpacking unit 216.
[00191] The video decoding unit 214 performs a process related to decoding the encoded video frame data of the attribute (texture) information. For example, the video decoding unit 214 acquires the encoded video frame data of the attribute (texture) information supplied from the demultiplexer 211. Furthermore, the video decoding unit 214 decodes the acquired data encoded by any decoding method for a two-dimensional image, such as AVC or HEVC, for example, to obtain the video frame of the attribute (texture) information. The video decoding unit 214 supplies the obtained video frame of the attribute (texture) information to the unpacking unit 216.
[00192] The OMap 215 decoding unit performs a process related to decoding the encoded data from the Occupation Map. For example, the OMap 215 decoding unit acquires the encoded data from the Occupation Map supplied from the 211 demultiplexer. Furthermore, the OMap 215 decoding unit decodes the acquired encoded data by any decoding method, such as the Petition 870260078868, dated 06 / 08 / 2026, page 55 / 120 / 62 arithmetic decoding corresponding to the arithmetic encoding to obtain the Occupancy Map, for example. The OMap 215 decoding unit supplies the obtained Occupancy Map to the unpacking unit 216.
[00193] The unpacking unit 216 performs a process related to the packing. For example, the unpacking unit 216 acquires the position information (geometry) video frame from the video decoding unit 213, acquires the attribute information (texture) video frame from the video decoding unit 214, and acquires the Occupancy Map from the OMap decoding unit 215. Furthermore, the unpacking unit 216 unpacks the position information (geometry) video frame and the attribute information (texture) video frame based on the control information regarding the packing.The unpacking unit 216 supplies the 3D reconstruction unit 217 with position information (geometry) data (e.g., geometry patch), attribute information (texture) data (e.g., texture patch), the Occupancy Map, and similar data obtained by packing.
[00194] The 3D reconstruction unit 217 performs a process related to point cloud reconstruction. For example, the 3D reconstruction unit 217 reconstructs the point cloud based on auxiliary patch information supplied from the auxiliary patch information decoding unit 212, and position information (geometry) data (e.g., geometry patch), attribute information (texture) data (e.g., texture patch), the Occupancy Map, and similar data supplied from the unpacking unit 216. The 3D reconstruction unit 217 transmits the reconstructed point cloud to the outside of the decoding apparatus 200.
[00195] This point cloud is supplied, for example, to a display unit and an image is formed, and this image is displayed, recorded in a Petition 870260078868, dated 06 / 08 / 2026, page 56 / 120 / 62 recording media, or supplied to another device by means of communication.
[00196] In a decoding device 200 like this one, the 3D reconstruction unit 217 performs a three-dimensional smoothing filter process for the reconstructed point cloud. <Unidade de Reconstrução 3D>
[00197] Figure 24 is a block diagram illustrating an example of the main configuration of the 3D reconstruction unit 217 in Figure 23. As illustrated in Figure 24, the 3D reconstruction unit 217 includes a geometry point cloud (PointCloud) generation unit 231, a three-dimensional position information smoothing processing unit 232, and a texture synthesis unit 233.
[00198] The geometry point cloud generation unit 231 performs a process related to the generation of the geometry point cloud. For example, the geometry point cloud generation unit 231 acquires the geometry patch supplied from the unpacking unit 216. Furthermore, the geometry point cloud generation unit 231 reconstructs the geometry point cloud (the position information in the point cloud) using the acquired geometry patch and other information, such as auxiliary patch information. The geometry point cloud generation unit 231 supplies the generated geometry point cloud to the three-dimensional position information smoothing processing unit 232.
[00199] The three-dimensional position information standardization processing unit 232 performs a process related to the three-dimensional standardization filtering process. For example, the three-dimensional position information standardization processing unit 232 acquires the geometry point cloud supplied from the geometry point cloud generation unit 231. Furthermore, the unit of Petition 870260078868, dated 06 / 08 / 2026, page 57 / 120 / 62 processing of standardization of three-dimensional position information 232 acquires the Occupation Map supplied from the unpacking unit 216.
[00200] The three-dimensional position information smoothing processing unit 232 performs the three-dimensional smoothing filtering process on the acquired geometry point cloud. Currently, as explained, the three-dimensional position information smoothing processing unit 232 performs the three-dimensional smoothing filtering process using the representative value for each local region obtained by dividing the three-dimensional space. Furthermore, the three-dimensional position information smoothing processing unit 232 uses the acquired Occupation Map to perform the three-dimensional smoothing filtering process only at one point in a partial region corresponding to one end of the patch in the acquired Occupation Map.By performing the three-dimensional uniformity filtering process in this manner, the three-dimensional position information uniformity processing unit 232 can perform the filtering process at a higher speed.
[00201] The three-dimensional position information standardization processing unit 232 supplies the geometry point cloud subject to the filtering process (standardized geometry point cloud) to the texture synthesis unit 233.
[00202] The texture synthesis unit 233 performs a process related to geometry and texture synthesis. For example, the texture synthesis unit 233 acquires the uniformized geometry point cloud supplied from the three-dimensional position information uniformization processing unit 232. Furthermore, the texture synthesis unit 233 acquires the texture patch supplied from the unpacking unit 216. The texture synthesis unit 233 synthesizes the texture patch (i.e., the attribute information) into the point cloud of Petition 870260078868, dated 06 / 08 / 2026, page 58 / 120 / 62 uniformized geometry, and reconstructs the point cloud. The position information of the uniformized geometry point cloud is changed due to three-dimensional uniformization. In other words, strictly speaking, there is likely to be a part where the position information and the attribute information do not correspond to each other. Thus, texture synthesis unit 233 synthesizes the attribute information obtained from the texture patch in the uniformized geometry point cloud, while also reflecting the change in position information in a part subject to three-dimensional uniformization.
[00203] The texture synthesis unit 233 transmits the reconstructed point cloud to the outside of the decoding device 200. <Unidade de processamento de uniformização da informação de posição tridimensional>
[00204] Figure 25 is a block diagram illustrating an example of the main configuration of the three-dimensional position information standardization processing unit 232 in Figure 24. As illustrated in Figure 25, the three-dimensional position information standardization processing unit 232 includes a transmission information acquisition unit 251, a region division unit 252, a region representative value derivation unit 253, a processing target region definition unit 254, and a standardization processing unit 255.
[00205] When transmission information is transmitted from the encoding side, the transmission information acquisition unit 251 acquires the supplied transmission information as auxiliary patch information or similar. The transmission information acquisition unit 251 supplies the acquired transmission information to the region division unit 252, the region representative value derivation unit 253, and the processing target region definition unit 254. Petition 870260078868, dated 06 / 08 / 2026, page 59 / 120 / 62 as necessary. For example, when information regarding the local region is supplied as transmission information, the transmission information acquisition unit 251 supplies the supplied local region information to the region division unit 252. Furthermore, when information indicating a representative value for each local region is supplied as transmission information, the transmission information acquisition unit 251 supplies the supplied information indicating the representative value for each local region to the region representative value derivation unit 253. Furthermore, when information indicating the target processing region is supplied as transmission information, the transmission information acquisition unit 251 supplies the supplied information indicating the target processing region to the target processing region definition unit 254.
[00206] Region splitting unit 252 acquires the position information in the point cloud (geometry point cloud) supplied from geometry point cloud generation unit 231. Region splitting unit 252 divides the three-dimensional space region including the acquired geometry point cloud, and defines a local region (grid). At this point, region splitting unit 141 divides the three-dimensional space and defines the local region using the method described above in<N° 1. Aceleração usando o Valor Representativo para Cada Região Local> Note that when information regarding the local region transmitted from the encoding side is supplied from the transmission information acquisition unit 251, the region division unit 252 adopts the local region definition (e.g., the shape and size of the local region) indicated by the supplied information.
[00207] The region division unit 252 supplies information regarding the defined local region (e.g., information regarding the shape and size of the local region) and the geometry point cloud for the unit. Petition 870260078868, dated 06 / 08 / 2026, page 60 / 120 / 62, regarding the derivation of the representative value in region 253.
[00208] The representative value derivation unit in region 253 acquires information regarding the local region and the geometry point cloud supplied from the region 252 division unit. The representative value derivation unit in region 253 derives the representative value of the geometry point cloud in each local region defined by the region 252 division unit, based on these pieces of information. At this point, the representative value derivation unit in region 253 derives the representative value using the method described above in<N° 1. Aceleração usando o Valor Representativo para Cada Região Local> .Note that when the information indicating the representative value for each local region, which was transmitted from the encoding side, is supplied from the transmission information acquisition unit 251, the representative value derivation unit in region 253 adopts the representative value for each local region indicated by the supplied information.
[00209] The representative value derivation unit in region 142 supplies information regarding the local region, the geometry point cloud, and the representative value derived for each local region for the smoothing processing unit 255.
[00210] The processing target region definition unit 254 acquires the Occupation Map. The processing target region definition unit 254 defines a region in which the filtering process should be applied, based on the acquired Occupation Map. At this point, the processing target region definition unit 254 defines the region using the method described above.<N° 2. Simplificação do Processo de Filtro Tridimensional> In other words, the unit defining the target processing region 254 defines a partial region corresponding to one end of the patch in the Occupation Map as the target processing region for the filtering process. Note that when the information that Petition 870260078868, dated 06 / 08 / 2026, page 61 / 120 / 62 indicates the target processing region, which was transmitted from the encoding side, is supplied from the transmission information acquisition unit 251, the target processing region definition unit 254 adopts the target processing region indicated by the supplied information.
[00211] The target processing region definition unit 254 provides the information that indicates the target processing region defined for the standardization processing unit 255.
[00212] The standardization processing unit 255 acquires information regarding the local region, the geometry point cloud, and the representative value for each supplied local region from the representative value derivation unit 253. Furthermore, the standardization processing unit 255 acquires information indicating the target processing region, which was supplied from the target processing region definition unit 254.
[00213] The standardization processing unit 255 performs the three-dimensional standardization filtering process based on these pieces of information. In other words, as described above in<Processo de Filtro Tridimensional com Aceleração> The 255 uniformization processing unit performs the three-dimensional uniformization filtering process at a point in the geometry point cloud in the target processing region, using the representative value of each local region as a reference value. In this way, the 255 uniformization processing unit can perform the three-dimensional uniformization filtering process at a higher speed.
[00214] The smoothing processing unit 255 supplies the geometry point cloud subject to the three-dimensional smoothing filter process (smoothized geometry point cloud) to the texture synthesis unit 233. <Fluxo do Processo de Decodificação> Petition 870260078868, dated 06 / 08 / 2026, page 62 / 120 / 62
[00215] Next, an example of the flow of a decoding process performed by decoding device 200 will be described in relation to the flowchart in figure 26.
[00216] Once the decoding process is initiated, the demultiplexer 211 of the decoding device 200 demultiplexes the continuous bit stream in step S201.
[00217] In step S202, the auxiliary patch information decoding unit 212 decodes the auxiliary patch information extracted from the continuous bit stream in step S201.
[00218] In step S203, video decoding unit 213 decodes the encoded geometry video frame data (the position information video frame) extracted from the continuous bitstream in step S201.
[00219] In step S204, video decoding unit 214 decodes the encoded color video frame data (the attribute information video frame) extracted from the continuous bitstream in step S201.
[00220] In step S205, the OMap 215 decoding unit decodes the encoded data from the Occupation Map extracted from the continuous bitstream in step S201.
[00221] In step S206, unpacking unit 216 unpacks the geometry video frame obtained by decoding the encoded data in step S203 to generate a geometry patch. Furthermore, unpacking unit 216 unpacks the color video frame obtained by decoding the encoded data in step S204 to generate a texture patch. Additionally, unpacking unit 216 unpacks the Occupancy Map obtained by decoding the encoded data in step S205 to extract the Occupancy Map corresponding to the geometry patch and the texture patch. Petition 870260078868, dated 06 / 08 / 2026, page 63 / 120 / 62
[00222] In step S207, the 3D reconstruction unit 217 reconstructs the point cloud based on the auxiliary patching information obtained in step S202 and the geometry patch, texture patch, Occupancy Map and similar information obtained in step S206.
[00223] Once the process in step S207 is finished, the decoding process ends. <Fluxo do Processo de Reconstrução da Nuvem de Pontos>
[00224] Next, an example of the flow of a point cloud reconstruction process executed in step S207 of figure 26 will be described in relation to the flowchart in figure 27.
[00225] Once the point cloud reconstruction process is initiated, the geometry point cloud generation unit 231 of the 3D reconstruction unit 217 reconstructs the geometry point cloud in step S221.
[00226] In step S222, the three-dimensional position information smoothing processing unit 232 executes the smoothing process, and performs the three-dimensional smoothing filtering process on the geometry point cloud generated in step S221.
[00227] In step S223, texture synthesis unit 233 synthesizes the texture patch onto the uniform geometry point cloud.
[00228] Once the process in step S223 is finished, the point cloud reconstruction process ends, and the process returns to figure 26. <Fluxo do Processo de Uniformização>
[00229] Next, an example of the flow of a standardization process executed in step S222 of figure 27 will be described in relation to the flowchart in figure 28.
[00230] Once the standardization process is initiated, the transmission information acquisition unit 251 acquires the information Petition 870260078868, dated 06 / 08 / 2026, page 64 / 120 / 62 regarding transmission in relation to standardization in step S241. Note that when there is no transmission information, this process is omitted.
[00231] In step S242, the region 252 division unit divides the three-dimensional space that includes the point cloud into local regions. The region 252 division unit divides the three-dimensional space and defines the local region using the method described above in<N° 1. Aceleração Usando o Valor Representativo para Cada Região Local> Note that when information regarding the local region has been acquired as transmission information in step S241, the region division unit 252 adopts the local region definition (the shape, size, and the like of the local region) indicated by the acquired information.
[00232] In step S243, the representative value derivation unit in region 253 derives the representative value of the point cloud for each local region defined in step S242. The representative value derivation unit in region 253 derives the representative value using the method described above in<N° 1. Aceleração Usando o Valor Representativo para Cada Região Local> Note that when the information indicating the representative value for each local region has been acquired as transmission information in step S241, the representative value derivation unit in region 253 adopts the representative value for each local region indicated by the acquired information.
[00233] In step S244, the target processing region definition unit 254 defines the range for performing the smoothing process. The target processing region definition unit 254 defines the region using the method described above in<N° 2. Simplificação do Processo de Filtro Tridimensional> In other words, the unit defining the target processing region 254 executes the process of defining the uniformity range described in relation to the flowchart in Figure 22, and defines the target processing range for the filtering process. Note that, when the information that Petition 870260078868, dated 06 / 08 / 2026, page 65 / 120 / 62 indicates that if the target processing region was acquired as transmission information in step S241, the unit defining the target processing region 254 adopts the definition of the target processing region indicated by the acquired information.
[00234] In step S245, the 255 standardization processing unit performs the standardization process on the target processing range defined in step S244, by reference to the representative value of each region. As described above in<Processo de Filtro Tridimensional com Aceleração> The 255 uniformization processing unit performs the three-dimensional uniformization filtering process at a point in the geometry point cloud in the target processing region, using the representative value of each local region as a reference value. In this way, the 255 uniformization processing unit can perform the three-dimensional uniformization filtering process at a higher speed.
[00235] Once the process in step S245 is finished, the standardization process ends and the process returns to figure 27.
[00236] By executing each process as described, an increase in the processing time of the filtering process for the point cloud data can be suppressed (the filtering process can be performed at a higher speed). < 4. Variations>
[00237] In the first and second modalities, it was described that the three-dimensional uniformity filtering process is performed on the position information in the point cloud, but the three-dimensional uniformity filtering process can also be performed on the attribute information in the point cloud. In this case, since the attribute information is uniformized, for example, the color and similar aspects of the point change.
[00238] For example, in the case of encoding device 100, a Petition 870260078868, dated 06 / 08 / 2026, page 66 / 120 / 62, a smoothing processing unit (e.g., a three-dimensional attribute information smoothing processing unit) that performs the smoothing process on the texture patch supplied to the texture correction unit 134 needs to be provided only in the patch decomposition unit 111 (Figure 17).
[00239] Furthermore, for example, in the case of the decoding apparatus 200, a smoothing processing unit (e.g., a three-dimensional attribute information smoothing processing unit) that performs the smoothing process on the texture patch supplied to the texture synthesis unit 233 only needs to be provided in the 3D reconstruction unit 217 (figure 24). < 5. Additional notes> <Informação de controle>
[00240] Control information relating to the present technology described in each of the embodiments set forth may be transmitted from the encoding side to the decoding side. For example, control information (e.g., enabled_flag) that controls whether the application of the present technology described above is permitted (or prohibited) or not may be transmitted. Furthermore, for example, control information that designates a range in which the application of the present technology described above is permitted (or prohibited) (e.g., an upper or lower limit of the block size, or both the upper and lower limit, a slice, a figure, a sequence, a component, a view, a layer, and the like) may be transmitted. <computador>
[00241] A number of the above-described processes can also be executed using hardware and can also be executed using software. When the series of processes is executed by software, a program that constitutes the software is installed on a computer. Here, the Petition 870260078868, dated 06 / 08 / 2026, page 67 / 120 / 62 computer includes a computer built on dedicated hardware and a computer capable of performing various functions when installed with various programs, for example, a general-purpose personal computer or similar.
[00242] Figure 29 is a block diagram illustrating an example of a computer hardware configuration that performs the above-described series of processes using a program.
[00243] In a computer 900 illustrated in figure 29, a central processing unit (CPU) 901, a read-only memory (ROM) 902 and a random access memory (RAM) 903 are interconnected by means of a bus 904.
[00244] Furthermore, an input / output interface 910 is also connected to bus 904. An input unit 911, an output unit 912, a storage unit 913, a communication unit 914, and a unit 915 are connected to the input / output interface 910.
[00245] For example, input unit 911 includes a keyboard, a mouse, a microphone, a touch panel, an input terminal, and the like. For example, output unit 912 includes a display, a speaker, an output terminal, and the like. For example, storage unit 913 includes a hard disk, a RAM disk, non-volatile memory, and the like. For example, communication unit 914 includes a network interface. Unit 915 drives removable media 921, such as a magnetic disk, an optical disk, a magneto-optical disk, or a semiconductor memory.
[00246] In the computer configured as described, for example, the above-described series of processes is carried out in such a way that CPU 901 loads a program stored in storage unit 913 into RAM 903 via input / output interface 910 and bus 904 for execution. The data required by CPU 901 during the execution of the various processes and the like are also stored in RAM 903 accordingly. Petition 870260078868, dated 06 / 08 / 2026, page 68 / 120 / 62 appropriate.
[00247] For example, the program executed by the computer (CPU 901) can be applied by being recorded on removable media 921 which serves as a media package or similar. In this case, the program can be installed on storage unit 913 via the input / output interface 910 by mounting the removable media 921 on unit 915.
[00248] Furthermore, this program can also be provided via a wired or wireless transmission medium, such as a local area network, the Internet, or digital satellite broadcast. In this case, the program can be received by communication unit 914 to be installed on storage unit 913.
[00249] As an alternative method, this program can also be installed on ROM 902 or storage unit 913 in advance.<Alvo de Aplicação da Presente Tecnologia>
[00250] In the foregoing, the application of the present technology in encoding and decoding point cloud data has been described, but the present technology is not limited to these examples and can be applied to encoding and decoding 3D data of any standard. In other words, provided there is no inconsistency with the above-described present technology, the specifications of various processes, such as encoding and decoding techniques, and various data types, such as 3D data and metadata, are optional. Furthermore, some of the aforementioned processes and specifications may be omitted provided there is no inconsistency with the present technology.
[00251] The present technology can be applied in any configuration. For example, the present technology can be applied to a variety of types of electronic equipment, such as a transmitter and a receiver (for example, a television receiver and a mobile phone) for satellite broadcasting, cable broadcasting, such as cable television, distribution in Petition 870260078868, dated 06 / 08 / 2026, page 69 / 120 / 62 Internet, distribution to a terminal via cellular communication and similar means, or devices (for example, a hard disk recorder and a camera) that record images on media such as an optical disc, a magnetic disk, and flash memory, and reproduce the images from these storage media.
[00252] Furthermore, for example, the present technology can also be implemented as a partial configuration of a device, such as a processor that serves as a large-scale integration (LSI) system or similar (for example, a video processor), a module that uses a plurality of processors or similar (for example, a video module), a unit that uses a plurality of modules or similar (for example, a video unit), or a device in which another function is additionally added to a unit, or similar (for example, a video device).
[00253] Furthermore, for example, the present technology can also be applied in a networked system consisting of a plurality of devices. For example, the present technology can be implemented as cloud computing in which processes are shared and carried out in coordination by a plurality of devices through a network. For example, the present technology can be implemented in a cloud service that provides image-related services (moving images) to any terminals, such as computers, audiovisual (AV) equipment, portable information processing terminals, and Internet of Things (IoT) devices.
[00254] Note that, in the present description, the system refers to a collection of a plurality of constituent elements (e.g., devices and modules (components)), and whether or not all constituent elements are arranged in the same cabinet is not considered important. In this way, a plurality of devices housed in cabinets Petition 870260078868, dated 06 / 08 / 2026, page 70 / 120 / 62 separate to be connected to each other by means of a network and a device of which a plurality of modules are housed in a cabinet are both considered as systems. <Campos e Propósitos de Uso nos quais a Presente Tecnologia Pode ser Aplicada>
[00255] A system, apparatus, processing unit and the like in which the present technology is applied can be used in any fields, such as traffic, medical care, crime prevention, agriculture, animal husbandry, mining, beauty, factories, household appliances, meteorology and nature surveillance, for example. Furthermore, the purposes of use of the described system and the like are also optional. <outros>
[00256] Note that, in the present description, the "indicator" refers to the information used to identify between a plurality of states, and includes not only the information used during the identification between two states of true (1) and false (0), but also the information capable of identifying between three or more states. In this way, the value that this "indicator" can take can be, for example, a binary value of 1 or 0, or a ternary value or more. That is, the number of bits that constitute this "indicator" is optional, and one bit or a plurality of bits can be used. Furthermore, it is assumed that the identification information (including the indicator) has not only a form in which the identification information is included in the continuous bit stream, but also a form in which the difference information of the identification information in relation to certain reference information is included in the continuous bit stream.Therefore, in the present description, the "indicator" and the "identification information" imply not only the completeness of the information in them, but also the difference information in relation to the reference information.
[00257] Furthermore, various pieces of information (metadata and the like) in relation to the encoded data (continuous bit stream) may. Petition 870260078868, dated 06 / 08 / 2026, page 71 / 120 / 62, to be transmitted or recorded in any form, provided that the information is associated with the encoded data. Here, the term "associate" means, for example, ensuring that a piece of data is available (linkable) when another piece of data is processed. In other words, pieces of data associated with each other can be collected into one piece of data or can be separately treated as individual pieces of data. For example, the information associated with the encoded data (image) can be transmitted on a different transmission path than the transmission path of the associated encoded data (image). Furthermore, for example, the information associated with the encoded data (image) can be recorded on a recording medium (or a recording area of the same recording medium) different from the recording medium of the associated encoded data (image).Note that this "association" can be made on a portion of the data, rather than the entire data set. For example, an image and corresponding information about that image can be associated with each other in any unit, such as a plurality of frames, a single frame, or a portion of a frame.
[00258] Furthermore, in the present description, terms such as "synthesize," "multiplex," "add," "integrate," "include," "save," "embed," "put into," "insert," mean collecting a plurality of objects into one, such as collecting the encoded data and metadata into a piece of data, for example, and mean a method of "association" described above.
[00259] Furthermore, the embodiments according to the present technology are not limited to the aforementioned embodiments and a variety of modifications may be made without departing from the scope of the present technology.
[00260] For example, a configuration described as a device (or a processing unit) can be broken down to be configured as Petition 870260078868, dated 06 / 08 / 2026, page 72 / 120 / 62 a plurality of devices (or processing units). Conversely, a configuration described as a plurality of devices (or processing units) as described above can be combined to be configured as one device (or one processing unit). Furthermore, certainly, a configuration different from that described above can be added to the configurations of the respective devices (or the respective processing units). Moreover, a part of the configuration of a certain device (or a certain processing unit) can be included in the configuration of another device (or another processing unit), provided that the configuration or action of the system as a whole remains substantially unchanged.
[00261] Furthermore, for example, the above-described program can be executed by any device. In this case, it is required that this device only has the necessary functions (function blocks or similar), so that the necessary information can be obtained.
[00262] Furthermore, for example, one device can execute each step of a flowchart, or a plurality of devices can share and execute the steps. Moreover, when a plurality of processes is included in a step, the plurality of processes can be executed by a single device, or it can be shared and executed by a plurality of devices. In other words, a plurality of processes included in a step can also be executed as the processes in a plurality of steps. Conversely, the processes described as a plurality of steps can also be grouped into a step to be executed.
[00263] Furthermore, for example, the program executed by the computer may be designed in such a way that the processes of the steps that describe the program are executed over the time series, according to the order described in this description, or executed in parallel. Petition 870260078868, dated 06 / 08 / 2026, page 73 / 120 / 62 or individually in a necessary synchronization, for example, when called. In other words, provided there is no inconsistency, the processes of the respective steps may be executed in a different order from the order described above. Furthermore, these processes of the steps that describe the program may be executed in parallel with a process of another program, or may be executed in combination with a process of another program.
[00264] Furthermore, for example, provided there is no inconsistency, each of a plurality of technologies in relation to the present technology can be independently implemented individually. Certainly, it is also possible to implement any plurality of the present technologies simultaneously. For example, a part or the whole of the present technology described in any of the embodiments can be implemented in combination with a part or the whole of the present technology described in another embodiment. Furthermore, a part or the whole of any of the aforementioned present technologies can be implemented with another technology not mentioned above simultaneously. List of Reference Signs
[00265] 100 Encoding device 111 Patch Decomposition Unit 112 Packaging unit 113 OMap generation unit 114 Auxiliary patch information compression unit 115 Video encoding unit 116 Video encoding unit 117 OMap Coding Unit 118 Multiplexer 131 Patch decomposition processing unit 132 Geometry decoding unit Petition 870260078868, dated 06 / 08 / 2026, page 74 / 120 / 62 133 Three-dimensional position information standardization processing unit 134 Texture Correction Unit 141 Unit of division of the region 142 Unit of derivation of the representative value in the region 143 Unit for defining the target processing region 144 Standardization processing unit 145 Transmission information generation unit 200 Decoding device 211 Demultiplexer 212 Auxiliary Patch Information Decoding Unit 213 Video decoding unit 214 Video decoding unit 215 OMap Decoding Unit 216 Unpacking Unit 217 3D Reconstruction Unit 231 Geometry point cloud generation unit 232 Three-dimensional position information standardization processing unit 233 Texture synthesis unit 251 Transmission information acquisition unit 252 Unit of division of the region 253 Unit of derivation of the representative value in the region 254 Unit for defining the target processing region 255 Standardization processing unit Petition 870260078868, dated 06 / 08 / 2026, page 75 / 120< / outros> < / computador>
Claims
1 / 5 CLAIMS 1. Image encoding apparatus, characterized in that it comprises circuits configured to: acquire a 3D data patch representing a three-dimensional structure using a plurality of points; perform a filtering process on the plurality of points, wherein the filtering process includes processes of: determining whether a current position in the filtering process is located at an end of the patch; defining, based on a determination that the current position is located at the end of the patch, a processing range of the filtering process for the current position; excluding, based on a determination that the current position is not located at the end of the patch, the current position from the filtering process; and encoding an image in the two-dimensional plane onto which the 3D data subject to the filtering process are projected, and generating a continuous bit stream that includes the encoded two-dimensional plane image.
2. Image encoding apparatus according to claim 1, characterized in that the circuits are configured to: divide a three-dimensional space that includes 3D data into a plurality of local regions; and perform the filtering process from a processing target point at the current position using representative values of the 3D data to nearby local regions, wherein the plurality of local regions contains the nearby local regions; and Petition 870260078868, dated 06 / 08 / 2026, page 76 / 120 2 / 5 wherein the nearby local regions are located around the processing target point.
3. Image encoding apparatus according to claim 1, characterized in that: 3D data are represented as point cloud data; the point cloud data include an occupancy map representing whether position information and attribute information for the plurality of points are present at each position in the two-dimensional plane; and the patch is arranged on the occupancy map of the point cloud data.
4. Image encoding apparatus according to claim 2, characterized in that the local region comprises a cubic region or a rectangular parallelepiped region having a predetermined size.
5. Image encoding apparatus according to claim 2, characterized in that the circuits are configured to generate a continuous bit stream that includes information regarding the local region, and wherein the information regarding the local region includes information regarding a size, or a shape, or a size and a shape of the local region.
6. Image encoding apparatus according to claim 2, characterized in that the representative value comprises an average or a median of the 3D data contained in the local near region.
7. Image encoding method, characterized in that it comprises: acquiring a patch of 3D data representing a three-dimensional structure using a plurality of points; performing a filtering process on the plurality of points, wherein the filtering process includes processes of: determining whether a current position in the filtering process is located at an end of the patch; defining, based on a determination that the current position is located at the end of the patch, a processing range of the filtering process for the current position; excluding, based on a determination that the current position is not located at the end of the patch, the current position from the filtering process; and encoding an image in the two-dimensional plane onto which the 3D data subject to the filtering process are projected, and generating a continuous bitstream that includes the encoded two-dimensional plane image.
8. Image decoding apparatus, characterized in that it comprises circuits configured to: decode a continuous bit stream; generate encoded data from a two-dimensional plane image onto which 3D data representing a three-dimensional structure using a plurality of points are projected; perform a filtering process on the 3D data restored from the two-dimensional plane image, wherein the filtering process comprises processes of: determining whether a current position in the filtering process is located at one end of a patch of 3D data; defining, based on a determination that the current position is located at the end of the patch, a processing range of the filtering process for the current position; and Petition 870260078868, dated 06 / 08 / 2026, page 78 / 120 4 / 5 excluding, based on a determination that the current position is not located at the end of the patch, the current position from the filtering process.
9. Image decoding apparatus according to claim 8, characterized in that the circuits are configured to: perform the filtering process of a processing target point at the current position using representative values of the 3D data for nearby local regions, wherein a three-dimensional space that includes the 3D data is divided into a plurality of local regions, and the nearby local regions are contained within the plurality of local regions and are located around the processing target point.
10. Image decoding apparatus according to claim 8, characterized in that: the 3D data are represented as point cloud data; the point cloud data include an occupancy map representing whether position information and attribute information for the plurality of points are present at each position in the two-dimensional plane; and the patch is arranged on the occupancy map of the point cloud data.
11. Image decoding method, characterized in that it comprises: decoding a continuous bit stream; generating encoded data from a two-dimensional plane image onto which 3D data representing a three-dimensional structure using a plurality of points are projected; performing a filtering process on the 3D data restored from the two-dimensional plane image, wherein the filtering process comprises processes of: determining whether a current position in the filtering process is located at an end of a patch of 3D data; defining, based on a determination that the current position is located at the end of the patch, a processing range of the filtering process for the current position; and excluding, based on a determination that the current position is not located at the end of the patch, the current position from the filtering process. Petition 870260078868, dated 06 / 08 / 2026, page 80 / 120