WO2020248176A1 - 点云处理的方法与装置 - Google Patents
点云处理的方法与装置 Download PDFInfo
- Publication number
- WO2020248176A1 WO2020248176A1 PCT/CN2019/090995 CN2019090995W WO2020248176A1 WO 2020248176 A1 WO2020248176 A1 WO 2020248176A1 CN 2019090995 W CN2019090995 W CN 2019090995W WO 2020248176 A1 WO2020248176 A1 WO 2020248176A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- point
- point cloud
- distortion
- cloud
- information
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/154—Measured or subjectively estimated visual quality after decoding, e.g. measurement of distortion
Definitions
- This application relates to the field of point cloud processing, and more specifically, to a method and device for point cloud processing.
- a point cloud is a form of expression of a three-dimensional object or scene. It is composed of a set of discrete points that are randomly distributed in space and express the spatial structure and surface properties of the three-dimensional object or scene.
- the physical meanings of points at different positions in the point cloud may be different, and the existing point cloud quality evaluation scheme does not reflect this situation.
- This application provides a point cloud processing method and device, which can make the quality evaluation of the point cloud more consistent with the actual situation of the point cloud.
- a point cloud processing method includes: acquiring a first point and a second point, the first point is a point in the first point cloud, and the second point is a point in the second point cloud and the first point. Point meets the preset conditions, one of the first point cloud and the second point cloud is the input point cloud, and the other is the output point cloud; according to the position information of the first point and the second point, the first point and the second point are determined Distortion information between two points; wherein the degree of distortion between the first point and the second point is related to the weight configuration of the first point and/or the weight configuration of the second point, and the weight configuration of the first point and/or the second point The weight configuration of the two points is related to the location information.
- a point cloud processing method includes: acquiring an input point cloud and an output point cloud; and determining the input point cloud and the output point according to the distortion information of the points in the input point cloud and/or the output point cloud Distortion information between clouds; wherein the weight configurations of at least two points in the input point cloud and/or the output point cloud are different.
- a point cloud processing device includes: an acquiring unit for acquiring a first point and a second point, the first point is a point in the first point cloud, and the second point is the second point The point in the cloud that meets the preset condition with the first point, one of the first point cloud and the second point cloud is the input point cloud, and the other is the output point cloud; the determining unit is used to determine the points according to the first point and the second point The position information of, determines the distortion information between the first point and the second point, where the degree of distortion between the first point and the second point is related to the weight configuration of the first point and/or the weight configuration of the second point, The weight configuration of the first point and/or the weight configuration of the second point are related to the location information.
- a point cloud processing device comprising: an acquiring unit for acquiring an input point cloud and an output point cloud; a determining unit for determining the points in the input point cloud and/or output point cloud
- the distortion information determines the distortion information between the input point cloud and the output point cloud, where the weight configuration of at least two points in the input point cloud and/or the output point cloud is different.
- a point cloud processing device in a fifth aspect, includes a memory and a processor, the memory is used to store instructions, and the processor is used to execute instructions stored in the memory and store data in the memory. Execution of the instructions of causes the processor to execute the method provided in the first aspect or the second aspect.
- a computer-readable storage medium is provided, and a computer program is stored thereon.
- the computer program is executed by a computer, the computer realizes the method provided in the first aspect or the second aspect.
- a computer program product containing instructions is provided, when the instructions are executed by a computer, the computer realizes the method provided in the first aspect or the second aspect.
- different weights can be configured for points at different positions in the point cloud, so that the quality evaluation of the point cloud can be more in line with the actual situation of the point cloud.
- the method for calculating the distortion of the point cloud in this application can be applied to the point cloud encoder to calculate the distortion of the point in the point cloud during the rate-distortion optimization process, which makes the calculated point distortion more reasonable, thereby improving the rate distortion The rationality of the optimized results.
- Fig. 1 is a schematic flowchart of a point cloud processing method according to an embodiment of the present application.
- Fig. 2 is a schematic flowchart of a point cloud processing method according to another embodiment of the present application.
- Figure 3 is a schematic diagram of the point cloud encoder architecture.
- Figure 4 is a schematic diagram of an octree in a point cloud encoder.
- Figure 5 is a schematic diagram of attribute coding in point cloud coding.
- Fig. 6 is a schematic block diagram of a point cloud processing apparatus according to an embodiment of the present application.
- Fig. 7 is a schematic block diagram of a point cloud processing apparatus according to another embodiment of the present application.
- Fig. 8 is another schematic block diagram of a point cloud processing apparatus according to an embodiment of the present application.
- Point cloud is a form of expression of three-dimensional objects or scenes.
- the point cloud is composed of a set of discrete points that are randomly distributed in space and express the structure and surface properties of a three-dimensional object or scene space.
- Point clouds can be divided into dense point clouds and sparse point clouds. Different types of point clouds have different data. For example, for a sparse point cloud, the data of the points in the point cloud is usually composed of three-dimensional coordinates describing the coordinate position and the attribute information of the coordinate position, such as color (RGB) or reflectance. This application does not limit the type of point cloud.
- RGB color
- reflectance This application does not limit the type of point cloud.
- the point cloud is a three-dimensional geometric model, which can better express the shape of an object.
- the data volume of point cloud information is huge. Therefore, when the point cloud information is transmitted and stored, it may be necessary to appropriately process the point cloud information, such as lossy compression. That is to say, in the process of point cloud information processing, distortion may be introduced to the point cloud, resulting in a decrease in the quality of the point cloud.
- the quality of the point cloud can be used as a standard to measure the pros and cons of various point cloud processing algorithms (for example, point cloud coding algorithms).
- the quality evaluation of point cloud can be divided into subjective quality evaluation and objective quality evaluation.
- subjective quality evaluation For example, for point clouds collected by devices such as lidar, it is usually not used for human eyes to view, so objective quality evaluation is the main objective when evaluating such point clouds.
- Geometric distortion includes two measurement methods: point-to-point distortion and point-to-surface distortion.
- Point-to-point distortion is obtained by calculating the distance between the point b i in the reconstructed point cloud B and the point a j in the original point cloud A, where the point a j can be the point closest to the point b i in the original point cloud A .
- the point-to-point distortion of the reconstructed point cloud relative to the original point cloud is obtained as shown in the following formula.
- A represents the original point cloud
- B represents a reconstruction point cloud
- N B denotes the number of reconstruction points cloud midpoint
- the original point cloud represents the point cloud data collected by the point cloud collection device.
- Reconstructing the point cloud refers to the point cloud data reconstructed by the receiving end by decoding (or decompressing, or other analysis processing) the received point cloud data.
- Point cloud acquisition equipment includes, for example, point cloud measurement equipment such as lidar and photoelectric radar.
- Point-to-surface distortion is obtained on the basis of point-to-point distortion. Take the point b i of the reconstructed point cloud B as an example. After finding the point a j closest to the point b i in the original point cloud A, the unit normal N j of the point a j is obtained, along the normal line N j Direction projection to point-to-point distance The new error vector obtained is the point-to-surface distortion of the point b i
- the point-to-surface distortion from the reconstructed point cloud to the original point cloud is obtained The following formula is satisfied.
- A represents the original point cloud
- B represents a reconstruction point cloud
- N B denotes the number of reconstruction points cloud midpoint
- Point B represents the reconstructed points in the point cloud b i to measure the distance of the surface
- N j represents a j-point unit normal.
- the physical meanings of points at different positions in the point cloud may be different.
- points closer to the point cloud collection device that is, the origin of the point cloud coordinate system
- points farther away have lower acquisition accuracy. Therefore, starting from practical applications, points at different positions in the point cloud should have different weights in the distortion calculation of the point cloud.
- formula (1) and formula (2) described above, as well as formula (3) and formula (4) it can be seen that the existing point cloud quality evaluation methods cannot reflect this situation. Therefore, the existing point cloud quality evaluation methods do not conform to the physical meaning of point clouds in practical applications.
- this application proposes a point cloud processing method, which can make the quality evaluation of the point cloud more in line with the actual situation of the point cloud.
- an embodiment of the present application provides a point cloud processing method 100.
- the method 100 may be implemented by a point cloud processing device, which is, for example, a point cloud decoder or other equipment for evaluating the quality of a point cloud.
- the method 100 includes the following steps.
- the input point cloud represents the original point cloud
- the original point cloud represents the point cloud data collected by the point cloud collection device.
- Point cloud acquisition equipment includes, for example, point cloud measurement equipment such as lidar and photoelectric radar.
- the input point cloud represents a point cloud after the original point cloud is preprocessed.
- the preprocessing may include, for example, data type conversion, coordinate system conversion and other processing.
- the conversion of the data type is the conversion of floating-point to integer.
- the output point cloud represents the point cloud data reconstructed by the receiving end by decoding (or decompressing, or other analysis processing) the received point cloud data.
- the input point cloud can also be called a decoded point cloud or a reconstructed point cloud.
- the input point cloud and the output point cloud are dynamically acquired point clouds.
- point cloud representation dynamically, using large-scale point cloud data collected by point cloud measurement equipment such as lidar and photoelectric radar to represent geographic location information.
- the output point cloud may also represent the pre-decoded point cloud obtained by the input point cloud during the encoding process of the point cloud encoder.
- the method 100 may be implemented by a point cloud encoder, for example.
- S120 Determine the distortion information of the output point cloud relative to the input point cloud according to the distortion information of the point in the output point cloud, where the distortion information of the point in the output point cloud is related to the weight configuration of the point, and the output point cloud is different The weight configuration of the points of the position is different.
- the distortion information of a point (denoted as point b i ) in the output point cloud refers to the distortion information between point b i and a point in the input point cloud (denoted as point a j ), where point a j And point b i meets the preset condition.
- the preset condition indicates that the distance between the two points is the closest.
- the point a j and the point b i satisfy the preset condition, which means that in the input point cloud A, the point a j is the point closest to the point b i .
- the right distortion point b i b i of the point information related to the reconfiguration means that the right information and the distortion point between the point and the point b i a j b i reconfiguration related.
- Right point b i reconfiguration of positional information points b i associated, or point right b i reconfiguration position information point a j is related to another or point position information and the point right b i reconfiguration point b i of The location information of a j is related.
- the distortion information of the point b i is related to the weight configuration of the point a j .
- the weight configurations of at least two points at different positions in the output point cloud are different.
- the output point cloud B there are at least two points b n1 and b n2 (n1 ⁇ n2), and their weight configurations are different.
- the point b n1 and the point b n2 represent points with different physical meanings in the output point cloud B.
- the point b n1 and the point b n2 have different physical meanings, resulting in the point b x and the point b y
- the acquisition accuracy is different.
- when calculating the distortion of the output point cloud it is more scientific and reasonable to configure different weights for the point b x and the point b y .
- different weights can be configured for points in different positions in the point cloud, so that the point cloud quality evaluation based on the point cloud distortion can conform to the actual situation of the point cloud.
- Distortion information point between the point a j and b i is obtained based on the data point and the point of a j b i data. If distortion information point between point a b i j based on the geometric information dot point a b i j is obtained, the point a and the point b i, j distortion information between geometric distortion information may be referred to, e.g., distortion point Or point-to-face distortion. If distortion information between point b and point a j i obtained according to the attribute information of the point b and the point i a j (e.g., color or reflectance, etc.), the distortion information between the point b and the point i may be referred to a j It is attribute distortion information.
- the method of obtaining the distortion information of the output point cloud relative to the input point cloud may be by accumulating the distortion information of all points in the output point cloud to obtain the distortion information of the output point cloud relative to the input point cloud.
- the distortion information of the output point cloud relative to the input point cloud is equal to the average value of the distortion information of all points in the output point cloud, as shown in the following formula.
- B represents the output point cloud
- A represents the input point cloud
- M B represents the point cloud output distortion information with respect to the input point cloud
- N B represents the number of point cloud comprising the output points
- b i represents an output point cloud point
- E (b i) b i represents the point of distortion information, i.e., information distortion point between b i and the input a in the point cloud point a j, a j-point and the point b i meets a preset condition.
- the distortion information between the output point cloud and the input point cloud is distortion information of the output point cloud relative to the input point cloud.
- the distortion information between the output point cloud B and the input point cloud A is equal to the distortion information M B,A of the output point cloud B relative to the input point cloud A shown in formula (5).
- the distortion information between the output point cloud and the input point cloud is distortion information of the input point cloud relative to the output point cloud.
- the distortion information of the input point cloud relative to the output point cloud is determined according to the distortion information of the points in the input point cloud.
- the distortion information of a point in the input point cloud refers to the distortion information between the point a i and a point in the output point cloud (denoted as point b j ), where the point b j and point a i meet preset conditions.
- the preset conditions are as described above.
- the distortion information of a point in the input point cloud is related to the weight configuration of the point, and the weight configuration of points at different positions in the input point cloud is different.
- Right distortion information point and the point of a i a i related to reconfiguration means that the right information and the distortion point between the point i and the point b j a a i related to reconfiguration.
- the distortion information of the point a i is related to the weight configuration of the point b j .
- the output point cloud A there are at least two points an3 and a n4 (n3 ⁇ n4), and their weight configurations are different.
- the distortion information of the input point cloud relative to the output point cloud is obtained by accumulating the distortion information of all points in the input point cloud.
- the distortion information of the input point cloud relative to the output point cloud is equal to the average value of the distortion information of all points in the input point cloud, as shown in the following formula.
- B represents the output point cloud
- A represents the input point cloud
- M A B represents the distortion information of the input point cloud relative to the output point cloud
- N A represents the number of points included in the input point cloud
- a i represents the input point cloud point
- E (a i) a i represents the point of distortion information, i.e., the point between the distortion information a i and the output point B of the point cloud b j.
- the distortion information between the output point cloud and the input point cloud is based on the distortion information M B, A of the output point cloud relative to the input point cloud, and the input point cloud relative to the output point cloud.
- the distortion information M A, B is obtained.
- the distortion information M between the input point cloud and the input point cloud is equal to the maximum value among M B,A and M A,B , as shown in the following formula.
- the distortion information M B,A of the output point cloud relative to the input point cloud and the distortion information M A,B of the input point cloud relative to the output point cloud, the difference between the two lies in the point mapping method.
- the essence is identical.
- the following description takes as an example the acquisition of distortion information M B,A of the output point cloud relative to the input point cloud.
- the way to obtain the distortion information of each point in the output point cloud B is the same. Therefore, in order to facilitate the understanding of the description and to avoid repetition, the following takes the point b i in the output point cloud B as an example to describe the acquisition A solution for outputting distortion information of each point in the point cloud B.
- the distortion information dots b i the distortion information between a Point b i and the point a j, the right and the point b i reconfiguration related, wherein the right to point b i reconfiguration and the point (point b i and / Or point a j ) related to the location information.
- the position information of the point in the point cloud may include the position information of the distance dimension, for example, the distance from the point to the origin of the point cloud coordinate system.
- the position information of the point in the point cloud may also include the position information of the azimuth dimension, for example, the position of the point in the point cloud coordinate system.
- the right output point cloud points b i reconfiguration related position information from the dimension point, and / or location information and orientation dimensions relevant point This will be described below.
- the point cloud coordinate system mentioned in the embodiments of this application refers to the three-dimensional coordinate system of the point cloud.
- the point cloud coordinate system can be a Cartesian coordinate system, a spherical coordinate system, or an improved spherical coordinate system (D, ⁇ , ), or other feasible three-dimensional space coordinate systems.
- the point cloud coordinate system is referred to as the reference coordinate system.
- the right output point cloud points reconfiguration b i b i and the point in the reference coordinate system reconfiguration related.
- the weight configuration of the point b i in the output point cloud includes the weight configuration of the position component of the position information of the point b i in the reference coordinate system.
- the position component of the point b i is used to determine the first distance, and the first distance represents the distance from the point b i to the origin of the reference coordinate system; the position information of the point b i is in the reference coordinate system The position component of is related to the first distance.
- a first output represents the distance from the point to the cloud point of origin of the reference coordinate system, e.g., a first distance point represents the point b i b i to the distance from the origin of the reference coordinate system, another example, a point
- the first distance of j represents the distance from the point a j to the origin of the reference coordinate system.
- the position component of the point b i includes a distance component
- the weight configuration of the position component of the point b i includes a weight configuration used to characterize the distance component
- Distance component position component in point b i may be understood, the dimension of the range point position information of b i.
- the right to re-configure the point b i may be a function of r i, r i b i represents the distance of the first point.
- the output point cloud B there are at least two points b n1 and b n2 (n1 ⁇ n2), if r n1 ⁇ r n2 , then w(b n1 ) ⁇ w(b n2 ), w(b n1 ) means
- the weight configuration of the point b n1 , w(b n2 ) represents the weight configuration of the point b n2 .
- the right position of the component b i reconfiguration of the first distance from the point b i is a negative correlation.
- the point b i right reconfiguration decreases as the distance from the origin to the point b i reference frame is increased.
- the right position of the component b i reconfiguration of the first distance from the point b i is a positive correlation.
- the point b i right reconfiguration increases as the cloud point from the point b i coordinate origin increases.
- this embodiment can be applied to application scenarios where the collection accuracy of points closer to the point cloud collection device (ie, the origin of the point cloud coordinate system) is lower, and the collection accuracy of points farther away is higher.
- the position component of the point b i is used to determine the angle formed between the origin in the reference coordinate system and the line along the point b i and the horizontal direction or the vertical direction.
- the right position of the component b i reconfiguration b i associated with the point corresponding to the angle (referred to as a first angle).
- the position of the point b i component includes a horizontal orientation components
- the right position of the component b i weights for characterizing the reconfiguration comprises a horizontal orientation component weight
- the position component of the point b i includes a vertical azimuth component
- the weight configuration of the position component of the point b i includes a weight used to characterize the vertical azimuth component.
- the weight configuration of the position component of the point b i has a trigonometric function relationship with the first angle.
- the trigonometric functions include cosine trigonometric functions, or, may also include sine trigonometric functions, or other trigonometric functions.
- the weight configuration of the point b i may be related to the weight configuration of the position component of the position information of the point a j in the reference coordinate system.
- the weight configuration of the point b i may also be related to the position information of the point a j .
- the description of the position component of the position information of the point a j in the reference coordinate system is similar to the description of the position component of the position information of the point b i in the reference coordinate system described above, and will not be repeated.
- the right position of the component b i reconfiguration point a j of the first distance i.e., distance from the origin to the point a j of the reference coordinate system
- the weight configuration of the position component of the point b i has a trigonometric function relationship with the average value of the first angle and the second angle, and the second angle represents the angle corresponding to point a j , that is, the origin to point a in the reference coordinate system The angle along the line of j and the horizontal or vertical direction.
- the weight configuration of the point b i includes weight configurations of multiple dimensions. It can be understood that the weight assigned to the point b i is a multi-dimensional vector.
- the weight configurations of the multiple dimensions of the point b i may be the same or different.
- a plurality of dimensions of the right point b i is a re-dimension configuration arranged weights associated with the point distance component b i (and / or the point a j) position of the component.
- a plurality of dimensions of the right point b i is a re-configuration dimension weights configuration components b i associated with a point (and / or the point a j) position in the direction of the component.
- the weight configurations of at least one dimension of points at different positions in the output point cloud are different.
- the weight configuration of point b i includes three-dimensional weight configuration.
- the weight configuration of one dimension is different (for example, the weight configuration is related to the first distance of the point), and the weight configuration in the other two dimensions is the same (for example, both are 1).
- the weight configurations in the two dimensions are different (for example, one weight configuration is related to the first distance of the point, and the other weight configuration is related to the position of the point), The weight configuration in the remaining one dimension is the same (for example, 1).
- the three-dimensional coordinates of point b i are The three-dimensional coordinates of point a j are The point-to-point distortion e(b i ) of point b i and point a j satisfies the following formula.
- w d1, w d2, w d3 b i represents the weight of the reconfiguration.
- the weight configuration of the point b i is a three-dimensional vector.
- w d1 , w d2 , and w d3 may be the same or not exactly the same, or completely different.
- w d1 and the point b i (and / or the point a j) of the associated first distance, w d2 is equal to 1 and w d3.
- w d1 is related to the first distance of point b i (and/or point a j )
- w d2 is related to the position of point b i (and/or point a j ) in the point cloud coordinate system
- w d3 is equal to 1.
- the point cloud coordinate system (ie, the reference coordinate system) includes distance coordinates, vertical angle coordinates, and horizontal angle coordinates.
- the vertical angle coordinate is used to indicate the zenith angle of a point in the spherical coordinate system.
- the horizontal angle coordinate is used to indicate the azimuth angle of the point in the spherical coordinate system.
- the distance coordinate is non-uniformly quantized, and the non-uniform quantization of the distance coordinate can make the weight configuration of a point decrease as the first distance of the point increases.
- the coordinate system in which the three-dimensional coordinates are distance coordinates, vertical angle coordinates and horizontal angle coordinates is called an improved spherical coordinate system.
- the improved spherical coordinate system (D, ⁇ , ), where D represents the distance coordinate, ⁇ represents the vertical angle coordinate, Represents the horizontal angle coordinate.
- the spherical coordinate system without special instructions in this article refers to the traditional spherical coordinate system, that is, the three-dimensional coordinate system is the radial distance, the zenith angle, and the azimuth angle.
- the improved spherical coordinate system (D, ⁇ , The distance coordinate D in) is a function of R- n or log(R), n is greater than 0, and R represents the radial distance of the point in the spherical coordinate system, that is, the first distance mentioned in the above embodiment.
- the improved spherical coordinate system (D, ⁇ , The distance coordinate D in) satisfies any of the following formulas:
- R near represents the minimum quantization distance in the distance coordinate dimension
- R far represents the maximum quantization distance in the distance coordinate dimension
- int represents the rounding operation
- d represents the preset quantization bit.
- D shown in formula (9) can be called the reciprocal distance.
- the non-uniform quantization method shown in formula (9) can be called a reciprocal distance.
- an improved spherical coordinate system (D, ⁇ , The distance coordinate D in) satisfies the following formula:
- R represents the radial distance of the point in the output point cloud in the spherical coordinate system
- R near represents the minimum quantized distance in the distance coordinate dimension
- R far represents the maximum quantized distance in the distance coordinate dimension
- int represents the rounding operation.
- d represents the preset number of quantization bits.
- a is a constant and can be pre-configured.
- the improved spherical coordinate system (D, ⁇ , The vertical angle coordinate ⁇ in) satisfies the following formula:
- ⁇ ' represents the zenith angle of the point in the spherical coordinate system
- d represents the preset number of quantization bits
- the improved spherical coordinate system (D, ⁇ , The horizontal angle coordinates in) satisfy:
- the reference coordinate system is an improved spherical coordinate system (D, ⁇ , In the case of ), the point-to-point distortion MSE B of the output point cloud B relative to the input point cloud A satisfies the following formula.
- B represents the output point cloud
- A represents the input point cloud
- N B denotes the number of output points cloud midpoint
- D b represents the distance coordinate of the point b i
- ⁇ b represents the vertical angle coordinate of point b i
- D a represents the distance coordinate of point a j
- ⁇ a represents the vertical angle coordinate of point a j .
- D b -D a in formula (18) implies a weight configuration related to the first distance of point b i .
- the weight of the point closer to the origin of the reference coordinate system is greater, and the weight of the point farther from the origin of the reference coordinate system is smaller.
- the cloud quality evaluation method is suitable for application scenarios where the acquisition accuracy of points closer to the acquisition device is higher, and the acquisition accuracy of points farther away is lower, so that the point cloud quality evaluation method is more in line with the actual situation of the point cloud. Therefore, the embodiments of the present application provide a more scientific point cloud quality evaluation method that conforms to the actual situation of the point cloud.
- the point cloud coordinate system is an improved spherical coordinate system (D, ⁇ , When), using the equation (18) calculated point between the output point cloud points b i and the input point cloud point of a j distortion automatically so that the point right distortion point b i reconfiguration (point b i The first distance-related weight configuration) is related to each other, without the need to perform an additional operation of configuring the weight, and therefore, the efficiency of calculating the distortion of the point cloud can be improved.
- the point cloud coordinate system is an improved spherical coordinate system (D, ⁇ , )
- the weight disposed in the position of the component b i b i includes a point at the zenith of the spherical coordinate system, and / or a j-point trigonometric functions in spherical coordinates related zenith angle The weight configuration.
- the weight configuration related to the trigonometric function of the zenith angle of the point b i in the spherical coordinate system and/or the zenith angle of the point a j in the spherical coordinate system is recorded as the azimuth weight configuration of the point b i .
- the position weight configuration of point b i can satisfy any of the following formulas:
- w 2 represents the azimuth weight configuration of the point b i
- ⁇ ′ b represents the zenith angle of the point b i in the spherical coordinate system
- ⁇ ′ a represents the sky of the point a j in the input point cloud in the spherical coordinate system.
- points a j and b i meet the preset conditions.
- the azimuth weight configuration of the point b i can better reflect the different physical meanings of the points at different zenith angles.
- the weight configuration of the point b i in the output point cloud includes the azimuth weight configuration of the point b i .
- the physics of points with different zenith angles can be reflected more scientifically. Meaning, which can make the point cloud quality evaluation method more consistent with the actual situation of the point cloud, and then make the point cloud quality evaluation method more scientific.
- the reference coordinate system is an improved spherical coordinate system (D, ⁇ , ), the weight configuration of the point b i includes the azimuth weight configuration.
- the azimuth weight configuration is the horizontal angle coordinate of the point b i and the point a j The weight of the distortion component of the dimension.
- the reference coordinate system is the improved spherical coordinate system (D, ⁇ , ), the point-to-point distortion MSE B of the output point cloud B relative to the input point cloud A satisfies the following formula:
- B represents the output point cloud
- A represents the input point cloud
- N B denotes the number of output points cloud midpoint
- D b represents the distance coordinate of point b i
- D a represents the distance coordinate of point a j
- D a represents the distance coordinate of point a j
- ⁇ a represents the vertical angle coordinate of point a j
- w 2 is the azimuth weight configuration of the point b i
- w 2 satisfies any one of formula (19) to formula (21).
- the azimuth weight of point b i is configured as w 2 as the horizontal angle coordinate
- the weight of the distortion component of the dimension can better reflect the different physical meanings of the points at different zenith angles under the same azimuth angle, so that the point cloud quality evaluation method can be more in line with the actual situation of the point cloud, and the point The cloud quality evaluation method is more scientific.
- the weight configuration of the point b i in the output point cloud is three-dimensional, and the weight of one dimension is the implicit and point in the distortion component D b -D a
- the weight related to the first distance of b i , and the weight of the other two dimensions is 1.
- the weight configuration of the point b i in the output point cloud is three-dimensional, and the weight of one dimension is the implicit and point in the distortion component D b -D a
- the weight related to the first distance of b i , and the weight configuration of the other dimension is the azimuth weight configuration w 2 of the point b i , and the weight of the last dimension is 1.
- the reference coordinate system is an improved spherical coordinate system (D, ⁇ , ), the way to get point-to-point distortion. It should be understood that the reference coordinate system is an improved spherical coordinate system (D, ⁇ , ), which can also be applied to obtain point-to-plane distortion or attribute distortion of the point cloud.
- the right point b i reconfiguration reconfiguration associated with the right position component of the position information of the point b i in the reference coordinate system, wherein the distortion information point b i is determined comprising: a pair of points At least one position component in the position information of b i is weighted to obtain target position information different from the position information; based on the target position information, the distortion information of the point b i is determined. It should be understood that determining the distortion information at point b i means determining the distortion information between point b i and point a j
- the distortion information of the point b i can be determined in various implementation manners. Three implementations are described below.
- the reference coordinate system of the input point cloud A and the output point cloud B is a Cartesian coordinate system (x, y, z).
- the position information of point b i and point a j in the Cartesian coordinate system are versus
- w d1 , w d2 , and w d3 in formula (8) may be the same or not exactly the same.
- one or more of w d1 , w d2 , and w d3 in formula (8) may be related to the position information of the point b i , or may be related to the position information of the point a j .
- the position information of the point b i and the point a j in Cartesian coordinates is obtained versus After that, based on the weights w d1 , w d2 , and w d3 , the target position information of points b i and a j can be obtained respectively, and then based on the target position information, the distortion information between points b i and a j can be calculated, Obtain the point-to-point distortion information e(b i ) as shown in formula (8).
- the position information of the point b i is converted from the reference coordinate system to the target coordinate system, and at least one position component in the converted position information is weighted to obtain target position information different from the position information to determine the position of the point b i Distorted information.
- the reference coordinate system represents the original point cloud coordinate system of the input point cloud and the output point cloud
- the target coordinate system represents the point cloud coordinate system after the input point cloud and the output point cloud are transformed.
- the reference coordinate system is a Cartesian coordinate system (x, y, z)
- the target coordinate system is a spherical coordinate system (R, ⁇ ′, )
- the conversion between the reference coordinate system and the target coordinate system satisfies the following formula.
- the spherical coordinate system (R, ⁇ ′, The three coordinates of) include a radial distance and two angles, which cannot be calculated. Therefore, it needs to be quantized into three quantities with the same unit, for example, the spherical coordinate system is quantized according to a preset quantization factor.
- Spherical coordinate system (R, ⁇ ′, The unit quantification of) satisfies the following formula:
- the unit spherical coordinate system (L 1 , L 2 , L 3 ) represents the spherical coordinates after unit quantization
- R near represents the minimum quantized distance in the distance coordinate dimension
- R far represents the maximum quantized distance in the distance coordinate dimension
- d represents the preset quantization bit number, that is, d represents the preset quantization factor.
- a weight is configured for the difference between at least one position component of the point b i and the point a j .
- the point-to-point distortion information e(b i ) between point b i and point a j satisfies the following formula:
- w d1 , w d2 , and w d3 may be the same or not completely the same.
- Equation w d1 (26) is, w d2, w d3 or a plurality of position information can be associated with the point b i, may be associated with the position information of the point a j.
- the position information of the point b i and the point a j in the unit spherical coordinate system (L 1 , L 2 , L 3 ) is obtained versus After that, based on the weights w d1 , w d2 , and w d3 , the target position information of points b i and a j can be obtained respectively, and then based on the target position information, the distortion information between points b i and a j can be calculated, Obtain point-to-point distortion information e(b i ) as shown in formula (26).
- the reference coordinate system is the Cartesian coordinate system (x, y, z)
- the target coordinate system is the improved spherical coordinate system (D, ⁇ , ).
- the conversion between the reference coordinate system and the target coordinate system satisfies the following formula.
- int represents a rounding operation
- d represents a preset quantization bit number, that is, d represents a preset quantization factor
- the position information of point b i and point a j in the target coordinate system are obtained as (D b , ⁇ b , ) And (D a , ⁇ a , ).
- the improved spherical coordinate system (D, ⁇ , ) Coordinates of the three units are uniform, therefore, may be based on the point a j b i and the point position information (D b at the target coordinates, ⁇ b, ) And (D a , ⁇ a , ), calculate the distortion information between point b i and point a j .
- D b -D a in formula (18) implies a weight configuration related to the first distance of point b i , and also implies a The weight configuration related to the first distance of j .
- the point-to-point distortion information between point b i and point a j can be calculated directly according to the position information of point b i and point a j in the target coordinate system, and the point-to-point distortion information obtained by calculation implies the point-to-point distortion information with point b
- the weight configuration related to the first distance of i and the weight configuration related to the first distance of point a j .
- the weight of the point closer to the origin of the reference coordinate system is greater, and the weight of the point farther from the origin of the reference coordinate system is smaller.
- the cloud quality evaluation method is suitable for application scenarios where the acquisition accuracy of points closer to the acquisition device is higher, and the acquisition accuracy of points farther away is lower, so that the point cloud quality evaluation method is more in line with the actual situation of the point cloud. Therefore, the embodiments of the present application provide a more scientific point cloud quality evaluation method that conforms to the actual situation of the point cloud.
- the point cloud coordinate system is an improved spherical coordinate system (D, ⁇ , When), using the equation (18) calculated point between the output point cloud points b i and the input point cloud point of a j distortion automatically so that the point right distortion point b i reconfiguration (point b i The first distance-related weight configuration) is related to each other, without the need to perform an additional operation of configuring the weight, and therefore, the efficiency of calculating the distortion of the point cloud can be improved.
- the target coordinate system is an improved spherical coordinate system (D, ⁇ , )
- the point-to-point distortion information between point b i and point a j can be calculated directly according to the position information of point b i and point a j in the target coordinate system
- the point-to-point distortion information obtained by calculation implies the point-to-point distortion information with point b
- the weight configuration related to the first distance of i and the weight configuration related to the first distance of point a j .
- the azimuth weight of point b i is configured as w 2 as the horizontal angle coordinate
- the weight of the distortion component of the dimension can better reflect the different physical meanings of the points at different zenith angles under the same azimuth angle, so that the point cloud quality evaluation method can be more in line with the actual situation of the point cloud, and the point The cloud quality evaluation method is more scientific.
- the position information of the point b i is converted from the reference coordinate system to the target coordinate system, and at least one position component in the converted position information is weighted according to the non-uniform quantization method to obtain target position information with different position information to determine Distortion information at point b i .
- the reference coordinate system is a Cartesian coordinate system (x, y, z)
- the target coordinate system is a spherical coordinate system (R, ⁇ ′, ).
- the conversion between the reference coordinate system and the target coordinate system satisfies formula (24).
- the three coordinates of) include a radial distance and two angles, which cannot be calculated, so it needs to be quantified into three quantities with the same unit.
- formula (25) is used to compare the spherical coordinate system (R, ⁇ ′, ) Perform unit quantification.
- another quantization method is used to measure the spherical coordinate system (R, ⁇ ′, ) For quantization, so that the radial distance (R) in spherical coordinates can be non-uniformly quantized.
- D b -D a in formula (18) implies a weight configuration related to the first distance of point b i , and also implies a The weight configuration related to the first distance of j .
- the spherical coordinates are non-uniformly quantized as shown in formula (28), and the non-uniform quantization of the spherical coordinates can be directly based on the points b i and a j after non-uniform quantization.
- the calculated point-to-point distortion information implies the weight configuration related to the first distance of the point b i , and the point The weight configuration related to the first distance of a j .
- the purpose of implying the configuration of the weights related to the first distance of the points in the point-to-point distortion can be achieved.
- the vertical angle coordinate is related to the trigonometric function. For example, to obtain the point-to-point distortion shown in formula (23)
- the azimuth weight of point b i is configured as w 2 as the horizontal angle coordinate
- the weight of the distortion component of the dimension can better reflect the different physical meanings of the points at different zenith angles under the same azimuth angle, so that the point cloud quality evaluation method can be more in line with the actual situation of the point cloud, and the point The cloud quality evaluation method is more scientific.
- PSNR peak signal to noise ratio
- the point-to-point distortion of the output point cloud is measured by using PSNR.
- the PSNR used to measure the point-to-point distortion of the output point cloud B satisfies the following formula.
- MSE B represents the output point B of the point cloud distortion
- p represents the peak point cloud from the output point B of b i and the input point cloud point in a j.
- p satisfies the following formula:
- d i represents the output point B of each point cloud b i, and its distance from the nearest point between the input point A of the cloud.
- the attribute distortion of the output point cloud can also be measured by PSNR.
- the attribute of each point in the output point cloud is compared with the attribute of the point closest to the point in the input point cloud, so as to calculate the PSNR of each attribute component of the output point cloud.
- an embodiment of the present application provides a point cloud processing method 200, and the method 200 includes the following steps.
- S220 Determine distortion information between the first point and the second point according to the position information of the first point and the second point.
- the degree of distortion between the first point and the second point is related to the weight configuration of the first point and/or the weight configuration of the second point, and the weight configuration of the first point and/or the weight configuration and position information of the second point Related.
- the first point cloud in this embodiment corresponds to the output point cloud in the above embodiment
- the second point cloud corresponds to the input point cloud in the above embodiment
- the first point may correspond to the point b i in the output point cloud in the above embodiment
- the second point may correspond to the point a j in the input point cloud in the above embodiment.
- the first point cloud in this embodiment corresponds to the input point cloud in the above embodiment
- the second point cloud corresponds to the output point cloud in the above embodiment
- the first point may correspond to the point a j in the input point cloud in the above embodiment
- the second point may correspond to the point b i in the output point cloud in the above embodiment.
- the solution for determining the distortion information between the first point and the second point may refer to the solution for obtaining the distortion information of the point b i and the point a j described above.
- the solution provided by the present application can be applied to the point cloud quality evaluation, and can also be applied to the distortion calculation of the point cloud encoder in the Rate-Distortion Optimized (RDO) process.
- RDO Rate-Distortion Optimized
- the method for processing the point cloud in the embodiments of the present application can also be applied.
- rate-distortion optimization weighs the effects of distortion and code rate, that is, the minimum distortion that can be achieved at a specific code rate, or in order to meet a certain distortion limit, how much the minimum code rate can be described.
- code rate the minimum distortion that can be achieved at a specific code rate, or in order to meet a certain distortion limit, how much the minimum code rate can be described.
- code rate the minimum distortion that can be achieved at a specific code rate, or in order to meet a certain distortion limit
- the embodiment shown in FIG. 2 is applied to a point cloud encoder, and the method 200 further includes: encoding the input point cloud according to the distortion information between the first point and the second point, where the output point The cloud is the pre-decoded point cloud obtained during the encoding process of the input point cloud by the point cloud encoder.
- encode the input point cloud based on the rate-distortion optimization method and the distortion information between the first point and the second point including: based on the rate-distortion optimization method and the distortion between the first point and the second point Information, select the coding mode and/or coding strategy of the input point cloud; according to the selected coding mode and/or coding strategy, perform coding processing on the input point cloud.
- a rate-distortion optimization function selects the least costly solution, and writes the solution into the code stream of the input point cloud.
- the method for calculating the distortion of the points in the point cloud provided by the present application (as in the above embodiment to obtain the distortion information from the first point to the second point) is applied to the point cloud encoder to calculate the points in the rate-distortion optimization process
- the distortion of the calculated point can be made more reasonable, so that the reasonable cost solution can be selected through the rate-distortion optimization function, and the efficiency of point cloud coding can be improved.
- the method for calculating the distortion of the point cloud in this application can be applied to the point cloud encoder to calculate the distortion of the point in the point cloud during the rate-distortion optimization process, which makes the calculated point distortion more reasonable, thereby improving the rate distortion The rationality of the optimized results.
- the coding block diagram of the point cloud encoder is shown in Figure 3.
- Point cloud coding is divided into geometric coding and attribute coding.
- the geometric coding represents the coding of the geometric information of the point cloud
- the attribute coding represents the coding of the attribute information of the point cloud.
- the geometric information of the point cloud is encoded (or decoded) first, and then the attribute information of the point cloud is encoded (or decoded) based on the geometric information.
- the compression method in geometric coding is based on such as octree coding
- the attribute coding is based on attribute prediction methods such as interpolation.
- the following exemplarily introduces several main modules in the point cloud encoder.
- Bounding box is a cube, represented by [0,2 d ) 3 , where d is a non-negative integer.
- the division of the octree is carried out in the previously established Bounding box B.
- the cube is determined by the two poles (0,0,0) and (2 d , 2 d , 2 d ).
- the division of the octree is The process of dividing B continuously, each time a cube is divided into 8 sub-cubes, as shown in Figure 4, and each node is represented by an 8-bit binary code, called occupancy code, each sub-cube has 1bit is used to indicate whether there is a point in it, if there is a point, the value is 1, and if it is empty, the value is 0. Only cubes with a side length greater than 1 can be divided. For the case of repeated points at a certain position, the number of additional coding points in the last layer of the octree is needed.
- the encoding end continuously divides the octree recursively, and sequentially generates the 8-bit occupancy code of each node. Therefore, the encoding end does not directly encode the geometric position of the point cloud, but encodes the point cloud.
- the occupancy code is sent to the arithmetic encoder, and then the arithmetic encoder is used for entropy encoding. After decoding, the decoding end can completely restore the entire octree based on these occupancy codes.
- Geometric coding is mainly based on octree coding, but some "isolated points" in the point cloud will be coded in other modes, such as Direct Coding Mode, in which case the 3D point cloud is directly coded Coordinates will be more cost-effective than coding 8bit nodes, and the detailed method will not be explained; in addition, there are many context models involved in the entropy coding of the octree, which is not carefully expanded here.
- the predictive coding of attributes is based on the level of detail (LOD).
- LOD level of detail
- the process of generating LOD is essentially a process of reordering and reorganizing all point cloud points to generate a series of sets with different levels of detail. The higher the level of LOD Deeper, the more refined the point cloud, the highest level of LOD is the original point cloud data.
- the attribute information of the point cloud is encoded/decoded in the order defined in the LOD generation process.
- the transmission order is also transmitted from the points in the low-level LOD first, and then the higher-level LODs are transmitted in turn.
- Only the point cloud that has been encoded/decoded Attributes will be used to make predictions, that is, the attribute value of point i (a i ), i ⁇ 0,...,k-1 is the point closest to point i It is obtained by linear interpolation prediction, and these points have been coded or decoded.
- ( ⁇ j )j ⁇ N i be the distance from the current point, then the predicted value of the current point is obtained by the following formula:
- k is the number of nearest points, which is a parameter determined by the encoding end, and it also needs to be transmitted to the decoding end through the code stream.
- the rate-distortion decision is a comprehensive consideration of the rate and distortion, and a rate-distortion function I(R,D) is used to make the decision.
- a rate-distortion function I(R,D) is used to make the decision.
- the solution with the least rate-distortion is finally selected to write the code stream.
- the encoder will construct a list of prediction candidates and generate multiple coding strategies. As shown in Table 1, the predicted values of these four strategies are the average value of the attributes of the three points, the attribute value of the P4 point, and the value of the P5 point. For the attribute value and the attribute value of P0 point, the encoder will make rate-distortion decisions on these four strategies, and finally select the strategy with the least rate-distortion, use this strategy to predict, obtain the residual, and write it into the code stream.
- Predictor index Predicted value 0 Average 1 P4(1 st nearest point)
- a rate-distortion quantizer When quantizing the value to be encoded, a rate-distortion quantizer can also be used. Generate multiple quantization strategies for the same value, that is, generate multiple optional quantization values. Assuming that the value to be coded is c, first pre-quantize the value:
- the coding mode and/or coding strategy may also include other coding modes and/or coding strategies applicable to the point cloud encoder.
- the coding mode and/or coding strategy may also include other coding modes and/or coding strategies applicable to the point cloud encoder.
- FIG. 6 is a schematic block diagram of a point cloud processing apparatus 600 provided by an embodiment of the present invention.
- the apparatus 600 includes the following units.
- the acquiring unit 610 is configured to acquire a first point and a second point, the first point is a point in the first point cloud, the second point is a point in the second point cloud that meets a preset condition with the first point, and the first point One of the cloud and the second point cloud is the input point cloud, and the other is the output point cloud.
- the determining unit 620 is configured to determine the distortion information between the first point and the second point according to the position information of the first point and the second point.
- the degree of distortion between the first point and the second point is related to the weight configuration of the first point and/or the weight configuration of the second point, and the weight configuration of the first point and/or the weight configuration and position information of the second point Related.
- the first point cloud and the second point cloud are dynamically acquired point clouds.
- the weight configuration of the first point and/or the weight configuration of the second point is related to the weight configuration of the position component of the position information in the reference coordinate system.
- the position component is used to determine the first distance between the first point or the second point and the origin in the reference coordinate system; the weight configuration of the position component is related to the first distance.
- the weight configuration of the position component is negatively related to the first distance.
- the position component includes a distance component
- the weight configuration of the position component includes a weight configuration used to characterize the distance component
- the position component is used to determine the angle of the angle formed between the origin in the reference coordinate system and the horizontal direction or the vertical direction from the origin to the first point or the second point;
- the first angle corresponding to one point and/or the second angle corresponding to the second point are related.
- the weight configuration of the position component has a trigonometric function relationship with the sum of the first angle and the second angle.
- the position component includes a horizontal orientation component
- the weight configuration of the position component includes a weight used to characterize the horizontal orientation component
- the trigonometric function includes a cosine trigonometric function.
- the determining unit 620 is configured to perform weight configuration on at least one position component in the position information to obtain target position information different from the position information; and determine the distortion between the first point and the second point based on the target position information information.
- the reference coordinate system includes a Cartesian coordinate system.
- the determining unit 620 is configured to convert the position information from the reference coordinate system to the target coordinate system, and perform weight configuration on at least one position component in the converted position information according to the non-uniform quantization method to obtain a different position The target location information of the message.
- the determining unit 620 is configured to convert the position information from the reference coordinate system to the target coordinate system, and perform weight configuration on at least one position component in the converted position information to obtain target position information different from the position information.
- the target coordinate system includes a spherical coordinate system.
- each position component in the target position information is obtained according to a preset quantization factor.
- the position component in the target position information includes a distance component, and the distance component in the target position information is weighted based on a non-uniform quantization method.
- the non-uniform quantization method includes a reciprocal distance.
- satisfying a preset condition between the first point and the second point includes determining that the second distance between the first point and the second point is the closest.
- the determining unit 620 is further configured to determine the distortion information between the first point cloud and the second point cloud according to the distortion information between the first point and the second point.
- the determining unit 620 is configured to accumulate the distortion information between the first point and the second point that meet the preset conditions in the first point cloud and the second point cloud, and determine the first point according to the accumulation result Distortion information between the cloud and the second point cloud.
- the device 600 is a point cloud encoder, and the device 600 further includes: an encoding unit for encoding the input point cloud according to the distortion information between the first point and the second point Processing; Among them, the output point cloud is the pre-decoded point cloud obtained by the input point cloud during the encoding process of the point cloud encoder.
- the encoding unit is configured to perform encoding processing on the input point cloud based on the rate-distortion optimization method and the distortion information between the first point and the second point.
- the coding unit is used to select the coding mode and/or coding strategy of the input point cloud based on the rate-distortion optimization method and the distortion information between the first point and the second point; according to the selected coding mode and/or Or coding strategy to encode the input point cloud.
- FIG. 7 is a schematic block diagram of a point cloud processing apparatus 700 according to another embodiment of the present invention.
- the apparatus 700 includes the following units.
- the obtaining unit 710 is configured to obtain an input point cloud and an output point cloud.
- the determining unit 720 is configured to determine the distortion information between the input point cloud and the output point cloud according to the distortion information of the points in the input point cloud and/or the output point cloud. Wherein, the weight configurations of at least two points in the input point cloud and/or the output point cloud are different.
- the determining unit 720 is configured to obtain distortion information of points in the input point cloud and/or the output point cloud through the method 200 provided in the above method embodiment.
- an embodiment of the present invention also provides a point cloud processing device 800.
- the device 800 includes a processor 810 and a memory 820.
- the memory 820 is used to store instructions, and the processor 810 is used to execute the memory 820.
- the stored instructions and the execution of the instructions stored in the memory 820 enable the processor 810 to execute the method of the above method embodiment.
- the point cloud processing device 800 further includes a transceiver 830 for acquiring the point cloud to be processed from the outside, or for outputting the point cloud processing result, for example, the distortion information of the output point cloud relative to the input point cloud .
- the embodiment of the present invention also provides a computer storage medium on which a computer program is stored.
- the computer program When the computer program is executed by a computer, the computer executes the method in the above method embodiment.
- An embodiment of the present invention also provides a computer program product containing instructions, which is characterized in that, when the instructions are executed by a computer, the computer executes the method of the above method embodiment.
- the computer program product includes one or more computer instructions.
- the computer may be a general-purpose computer, a special-purpose computer, a computer network, or other programmable devices.
- the computer instructions may be stored in a computer-readable storage medium or transmitted from one computer-readable storage medium to another computer-readable storage medium. For example, the computer instructions may be transmitted from a website, computer, server, or data center.
- the computer-readable storage medium may be any available medium that can be accessed by a computer or a data storage device such as a server or a data center integrated with one or more available media.
- the usable medium may be a magnetic medium (for example, a floppy disk, a hard disk, a magnetic tape), an optical medium (for example, a digital video disc (DVD)), or a semiconductor medium (for example, a solid state disk (SSD)), etc.
- the disclosed device and method may be implemented in other ways.
- the device embodiments described above are only illustrative.
- the division of the units is only a logical function division, and there may be other divisions in actual implementation, for example, multiple units or components can be combined or It can be integrated into another system, or some features can be ignored or not implemented.
- the displayed or discussed mutual coupling or direct coupling or communication connection may be indirect coupling or communication connection through some interfaces, devices or units, and may be in electrical, mechanical or other forms.
- the units described as separate components may or may not be physically separated, and the components displayed as units may or may not be physical units, that is, they may be located in one place, or they may be distributed on multiple network units. Some or all of the units may be selected according to actual needs to achieve the objectives of the solutions of the embodiments.
- each unit in each embodiment of the present application may be integrated into one processing unit, or each unit may exist alone physically, or two or more units may be integrated into one unit.
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Image Processing (AREA)
Abstract
一种点云处理的方法与装置,该方法包括:获取第一点与第二点,第一点为第一点云中的点,第二点为第二点云中与第一点满足预设条件的点,第一点云和第二点云中的一个为输入点云,另一个为输出点云;根据第一点以及第二点的位置信息,确定第一点与第二点之间的失真信息;其中,第一点与第二点之间的失真程度与第一点的权重配置和/或第二点的权重配置相关,第一点的权重配置和/或第二点的权重配置与位置信息相关。在计算点云的失真时,可以为点云中不同位置信息的点配置不同的权重,从而可以使得计算得到的点云的失真较为符合点云的实际情况。
Description
版权申明
本专利文件披露的内容包含受版权保护的材料。该版权为版权所有人所有。版权所有人不反对任何人复制专利与商标局的官方记录和档案中所存在的该专利文件或者该专利披露。
本申请涉及点云处理领域,并且更为具体地,涉及一种点云处理的方法与装置。
点云是三维物体或场景的一种表现形式,是由空间中一组无规则分布、表达三维物体或场景的空间结构和表面属性的离散点集所构成。
点云信息处理的每个环节,例如压缩、传输、存储都可能对原始点云数据引入失真,从而导致点云的质量下降。因此,对点云质量进行评估是点云信息处理领域的一个重要的问题。目前,业界提出一种基于笛卡尔坐标系的点云质量评价方案。
在实际应用中,点云中不同位置的点的物理含义可能不同,现有的点云质量评价方案没有体现这个情况。
发明内容
本申请提供一种点云处理的方法与装置,可以使点云的质量评价较为符合点云的实际情况。
第一方面,提供一种点云处理的方法,该方法包括:获取第一点与第二点,第一点为第一点云中的点,第二点为第二点云中与第一点满足预设条件的点,第一点云和第二点云中的一个为输入点云,另一个为输出点云;根据第一点以及第二点的位置信息,确定第一点与第二点之间的失真信息;其中,第一点与第二点之间的失真程度与第一点的权重配置和/或第二点的权重配置相关,第一点的权重配置和/或第二点的权重配置与位置信息相关。
第二方面,提供一种点云处理的方法,该方法包括:获取输入点云和输出点云;根据输入点云和/或输出点云中的点的失真信息,确定输入点云和输 出点云之间的失真信息;其中,输入点云和/或输出点云中的至少两个点的权重配置不同。
第三方面,提供一种点云处理的装置,该装置包括:获取单元,用于获取第一点与第二点,第一点为第一点云中的点,第二点为第二点云中与第一点满足预设条件的点,第一点云和第二点云中的一个为输入点云,另一个为输出点云;确定单元,用于根据第一点以及第二点的位置信息,确定第一点与第二点之间的失真信息,其中,第一点与第二点之间的失真程度与第一点的权重配置和/或第二点的权重配置相关,第一点的权重配置和/或第二点的权重配置与位置信息相关。
第四方面,提供一种点云处理的装置,该装置包括:获取单元,用于获取输入点云和输出点云;确定单元,用于根据输入点云和/或输出点云中的点的失真信息,确定输入点云和输出点云之间的失真信息,其中,输入点云和/或输出点云中的至少两个点的权重配置不同。
第五方面,提供一种点云处理的装置,所述装置包括存储器和处理器,所述存储器用于存储指令,所述处理器用于执行所述存储器存储的指令,并且对所述存储器中存储的指令的执行使得所述处理器执行第一方面或第二方面提供的方法。
第六方面,提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被计算机执行时使得所述计算机实现第一方面或第二方面提供的方法。
第七方面,提供一种包含指令的计算机程序产品,所述指令被计算机执行时使得所述计算机实现第一方面或第二方面提供的方法。
本申请在计算点云的失真时,可以为点云中不同位置的点配置不同的权重,从而可以使得点云的质量评价较为符合点云的实际情况。
此外,本申请中的计算点云的失真的方法可以应用于点云编码器在率失真优化过程中计算点云中点的失真,这使得所计算的点的失真较为合理,从而可以提高率失真优化的结果的合理性。
图1为根据本申请实施例的点云处理的方法的示意性流程图。
图2为根据本申请另一实施例的点云处理的方法的示意性流程图。
图3为点云编码器的架构示意图。
图4为点云编码器中八叉树的示意图。
图5为点云编码中属性编码的示意图。
图6为根据本申请实施例的点云处理的装置的示意性框图。
图7为根据本申请另一实施例的点云处理的装置的示意性框图。
图8为根据本申请实施例的点云处理的装置的另一示意性框图。
下面将结合附图,对本申请实施例中的技术方案进行描述。
除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同。本文中在本申请的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本申请。
为了更好地理解本申请实施例,先介绍本申请实施例涉及的概念。
1、点云
点云是三维物体或场景的一种表现形式。点云是由空间中一组无规则分布、表达三维物体或场景空间的结构和表面属性的离散点集所构成。
点云可以分为密集点云、稀疏点云,不同类型的点云的数据不一样。例如,对于稀疏点云而言,点云中的点的数据通常由描述坐标位置的三维坐标,以及该坐标位置的属性信息,例如颜色(RGB)或反射率等,构成。本申请对点云的类型不作限定。
2、点云的质量评价
点云是一种三维几何模型,这种三维几何模型可以较好地表达物体的形状。但点云信息的数据量庞大,因此,在传输、存储点云信息时,可能需要对点云信息进行适当处理,例如,有损压缩等。也就是说,在点云信息处理的过程中,可能会对点云引入失真,从而导致点云的质量下降。如何对点云的质量进行有效的评价是点云信息处理领域的一个重要问题。例如,点云的质量可以作为衡量各种点云处理算法(例如,点云编码算法)优劣的标准。
点云的质量评价可以分为主观质量评价和客观质量评价。例如,对于激光雷达这类设备采集到的点云,其通常不是用于给人眼观看,所以评价这类点云时多以客观质量评价为主。
对于包括几何信息与属性信息的点云来说,点云的质量评价通常可以分 为两部分:几何失真和属性失真。几何失真包括两种度量方法:点对点失真与点对面失真。
当前技术中,存在基于笛卡尔坐标系的点云的质量评价方法。下文以几何失真为例,示例性地描述现有的点云质量评价方法。
1)点对点失真
点对点失真通过计算重构点云B中的点b
i与原始点云A中的点a
j之间的距离得到,其中,点a
j可以为原始点云A中与点b
i距离最近的点。
原始点云表示由点云采集设备采集到的点云数据。重构点云表示接收端通过对接收到的点云数据进行解码(或解压缩,或其它解析处理)而重构出来的点云数据。
点云采集设备例如包括激光雷达、光电雷达等点云测量设备。
2)点到面失真
点到面失真,在点对点失真的基础上获得的。以重构点云中B的点b
i为例,在原始点云A中找到与点b
i距离最近的点a
j之后,获取点a
j的单位法线N
j,沿着法线N
j方向投影到点对点距离
得到的新的误差向量即为该点b
i的点到面失真
申请人发现,在实际应用中,点云中不同位置的点的物理意义可能不同。例如,通常距离点云采集设备(即点云坐标系的原点)较近的点的采集精度较高,距离较远的点的采集精度较低。因此,从实际应用出发,点云中不同位置的点,在点云的失真计算中所占的权重应该是不同的。从上文描述的公式(1)与公式(2),以及公式(3)和公式(4)可知,现有点云的质量评价方法无法体现这一情况。因此,现有的点云质量评价方法不符合点云在实际应用中的物理意义。
针对上述问题,本申请提出一种点云处理的方法,可以使点云的质量评价较为符合点云的实际情况。
如图1所示,本申请实施例提供一种点云处理的方法100。例如,该方法100可以由点云处理装置实现,该点云处理装置例如为点云解码器或其他的用于进行点云的质量评价的设备。该方法100包括如下步骤。
S110,获取输入点云和输出点云。
可选地,输入点云表示原始点云,原始点云表示由点云采集设备采集到的点云数据。
点云采集设备例如包括激光雷达、光电雷达等点云测量设备。
可选地,输入点云表示原始点云经过预处理之后的点云。
该预处理例如可以包括数据类型的转换、坐标系的转换等处理。例如,数据类型的转换为浮点型到整数的转换。
输出点云表示接收端通过对接收到的点云数据进行解码(或解压缩,或其它解析处理)而重构出来的点云数据。输入点云也可称为解码点云或重构点云。
可选地,输入点云与输出点云为动态获取点云。
动态获取点云表示,使用激光雷达、光电雷达等点云测量设备采集的用于表示地理位置信息的大尺度点云数据。
可选地,输出点云还可以表示输入点云在点云编码器的编码过程中得到的预解码点云。在这种情况下,该方法100例如可以由点云编码器实现。
S120,根据输出点云中的点的失真信息,确定输出点云相对于输入点云的失真信息,其中,输出点云中的点的失真信息与该点的权重配置相关,输出点云中不同位置的点的权重配置不同。
输出点云中的点(记为点b
i)的失真信息,指的是,点b
i与输入点云中的一个点(记为点a
j)之间的失真信息,其中,点a
j与点b
i满足预设条件。
可选地,该预设条件表示,两个点的距离最近。
例如,点a
j与点b
i满足预设条件表示,在输入点云A中,点a
j为距离点b
i最近的点。
应理解,根据实际需求,该预设条件还可以具有其他含义。
在本申请中,点b
i的失真信息与点b
i的权重配置相关,指的是,点b
i与点a
j之间的失真信息与点b
i的权重配置相关。
点b
i的权重配置与点b
i的位置信息相关,或者,点b
i的权重配置与点a
j的位置信息相关,再或者,点b
i的权重配置与点b
i的位置信息以及点a
j的位置信息相关。
当点b
i的权重配置与点a
j的位置信息相关,可以理解为,点b
i的失真信息与点a
j的权重配置相关。
在本申请中,输出点云中不同位置的至少两个点的权重配置不同。
例如,在输出点云B中,至少存在两个点b
n1与点b
n2(n1≠n2),二者的权重配置不同。
应理解,在一些应用场景中,点b
n1与点b
n2表示输出点云B中物理意义不同的点,例如,由于点b
n1与点b
n2的物理含义不同导致点b
x与点b
y的采集精度不同。这种场景下,在计算输出点云的失真时,为点b
x与点b
y配置不同的权重,是较为科学、合理的。
本申请在计算点云的失真时,可以为点云中不同位置的点配置不同的权重,从而可以使得,基于点云失真进行的点云质量评价符合点云的实际情况。
点b
i与点a
j之间的失真信息根据点b
i的数据与点a
j的数据获得。若点b
i与点a
j之间的失真信息根据点b
i与点a
j的几何信息获得,则点b
i与点a
j之间的失真信息可以称为几何失真信息,例如,点对点失真或点对面失真。若点b
i与点a
j之间的失真信息根据点b
i与点a
j的属性信息(例如,颜色或反射率等)获得,则点b
i与点a
j之间的失真信息可以称为属性失真信息。
应理解,本申请提供的方案可以应用于获取点云的几何失真,也可以应 用于获取点云的属性失真。
获取输出点云相对于输入点云的失真信息的方式可以为,通过对输出点云中所有点的失真信息进行累加,获取输出点云相对于输入点云的失真信息。
作为示例,输出点云相对于输入点云的失真信息等于输出点云中所有点的失真信息的平均值,如下列公式所示。
其中,B表示输出点云,A表示输入点云,M
B,A表示输出点云相对于输入点云的失真信息,N
B表示输出点云中包括的点的个数,b
i表示输出点云中的点,e(b
i)表示点b
i的失真信息,即点b
i与输入点云A中的点a
j之间的失真信息,点a
j与点b
i满足预设条件。
可选地,在一些实施例中,输出点云与输入点云之间的失真信息为输出点云相对于输入点云的失真信息。
例如,输出点云B与输入点云A之间的失真信息等于公式(5)所示的输出点云B相对于输入点云A的失真信息M
B,A。
可选地,在一些实施例中,输出点云与输入点云之间的失真信息为输入点云相对于输出点云的失真信息。
输入点云相对于输出点云的失真信息根据输入点云中的点的失真信息确定。例如,输入点云中的点(记为点a
i)的失真信息,指的是,点a
i与输出点云中的一个点(记为点b
j)之间的失真信息,其中,点b
j与点a
i满足预设条件。预设条件如前文描述。
输入点云中的点的失真信息与该点的权重配置相关,输入点云中不同位置的点的权重配置不同。
点a
i的失真信息与点a
i的权重配置相关,指的是,点a
i与点b
j之间的失真信息与点a
i的权重配置相关。
点a
i的权重配置与点a
i的位置信息相关,或者,点a
i的权重配置与点b
j的位置信息相关,再或者,点a
i的权重配置与点a
i的位置信息以及点b
j的位置信息相关。
当点a
i的权重配置与点b
j的位置信息相关,可以理解为,点a
i的失真信息与点b
j的权重配置相关。
例如,在输出点云A中,至少存在两个点a
n3与点a
n4(n3≠n4),二者 的权重配置不同。
可选地,作为一种实施方式,输入点云相对于输出点云的失真信息,通过对输入点云中所有点的失真信息进行累加而获取。
作为示例,输入点云相对于输出点云的失真信息等于输入点云中所有点的失真信息的平均值,如下列公式所示。
其中,B表示输出点云,A表示输入点云,M
A,B表示输入点云相对于输出点云的失真信息,N
A表示输入点云中包括的点的个数,a
i表示输入点云中的点,e(a
i)表示点a
i的失真信息,即点a
i与输出点云B中的点b
j之间的失真信息。
可选地,在一些实施例中,输出点云与输入点云之间的失真信息是根据输出点云相对于输入点云的失真信息M
B,A,以及输入点云相对于输出点云的失真信息M
A,B获得。
作为示例,输入点云与输入点云之间的失真信息M等于M
B,A与M
A,B之中的最大值,如下列公式所示。
M=max(M
B,A,M
A,B) 式(7)
上述可知,输出点云相对于输入点云的失真信息M
B,A,与输入点云相对于输出点云的失真信息M
A,B,二者的区别在于点的映射方式不同,其本质是相同的。为了便于理解与描述,也为了避免赘述,下文中以获取输出点云相对于输入点云的失真信息M
B,A为例进行描述。
应理解,本文中以获取输出点云相对于输入点云的失真信息M
B,A为例进行描述的方案,同样适用于获取输入点云相对于输出点云的失真信息M
A,B。
还应理解,获取输出点云B中的每个点的失真信息的方式是相同,所以,为了便于理解描述,也为了避免赘述,下文以输出点云B中的点b
i为例,描述获取输出点云B中的每个点的失真信息的方案。
还应理解,下文中描述的获取输出点云B中的点b
i的失真信息的方案,同样适用于获取输入点云A中的每个点的失真信息。
前文已述,点b
i的失真信息,即点b
i与点a
j之间的失真信息,与点b
i的权重配置相关,其中,点b
i的权重配置与点(点b
i和/或点a
j)的位置信息相关。
应理解,点云中点的位置信息可以包括距离维度的位置信息,例如, 点到点云坐标系的原点的距离。点云中点的位置信息还可以包括方位维度的位置信息,例如,点在点云坐标系中的方位。因此,在本申请中,输出点云中的点b
i的权重配置与点的距离维度的位置信息相关,和/或,与点的方位维度的位置信息相关。下文将进行描述。
下文中,将点云坐标系记为参考坐标系。
可选地,在一些实施例中,输出点云中的点b
i的权重配置与点b
i的位置信息在参考坐标系下的位置分量的权重配置相关。
换言之,输出点云中的点b
i的权重配置包括点b
i的位置信息在参考坐标系下的位置分量的权重配置。
可选地,在一些实施例中,点b
i的位置分量用于确定第一距离,第一距离表示点b
i到参考坐标系的原点的距离;点b
i的位置信息在参考坐标系下的位置分量与第一距离相关。
下文中,以第一距离表示输出点云中的点到参考坐标系的原点的距离,例如,点b
i的第一距离表示点b
i到参考坐标系的原点的距离,再例如,点a
j的第一距离表示点a
j到参考坐标系的原点的距离。
可选地,点b
i的位置分量包括距离分量,点b
i的位置分量的权重配置包括用于表征距离分量的权重配置。
点b
i的位置分量中的距离分量可以理解为,点b
i的距离维度的位置信息。
换句话说,点b
i的权重配置与该点b
i的第一距离相关。
作为示例,点b
i配置的权重可以是r
i的函数,r
i表示点b
i的第一距离。在输出点云B中,至少存在两个点b
n1与点b
n2(n1≠n2),若r
n1≠r
n2,则w(b
n1)≠w(b
n2),w(b
n1)表示点b
n1的权重配置,w(b
n2)表示点b
n2的权重配置。
可选地,作为一种实施方式,点b
i的位置分量的权重配置与点b
i的第一距离呈负相关。
换句话说,点b
i的权重配置随着点b
i到参考坐标系的原点的距离的增大而减小。
例如,对于输出点云中点b
n1与点b
n2,若r
n1>r
n2,则w(b
n1)<w(b
n2)。
应理解,本实施例可以应用于距离点云采集设备(即参考坐标系的原点)较近的点的采集精度较高,距离较远的点的采集精度较低的应用场景。
可选地,作为另一种实施方式,点b
i的位置分量的权重配置与点b
i的第一距离呈正相关。
换句话说,点b
i的权重配置随着点b
i到点云坐标系原点的距离的增大而增大。
应理解,本实施例可以应用于距离点云采集设备(即点云坐标系原点)较近的点的采集精度较低,距离较远的点的采集精度较高的应用场景。
可选地,在一些实施例中,点b
i的位置分量用于确定参考坐标系中的原点至点b
i的沿线方向,与水平方向或竖直方向之间形成的夹角的角度。其中,点b
i的位置分量的权重配置与点b
i对应的角度(记为第一角度)相关。
换句话说,点b
i的权重配置与点b
i在参考坐标系中的方位相关。
可选地,点b
i的位置分量包括水平方位分量,点b
i的位置分量的权重配置包括用于表征水平方位分量的权重。
可选地,点b
i的位置分量包括竖直方位分量,点b
i的位置分量的权重配置包括用于表征竖直方位分量的权重。
例如,点b
i的位置分量的权重配置与第一角度呈三角函数的关系。该三角函数包括余弦三角函数,或者,还可以包括正弦三角函数,或者其他三角函数。
可选地,在一些实施例中,点b
i的权重配置可以与点a
j的位置信息在参考坐标系下的位置分量的权重配置相关。
换言之,点b
i的权重配置还可以与点a
j的位置信息相关。
其中,对于点a
j的位置信息在参考坐标系下的位置分量的描述,与上文描述的点b
i的位置信息在参考坐标系下的位置分量的描述类似,不再赘述。
例如,点b
i的位置分量的权重配置与点a
j的第一距离(即点a
j到参考坐标系的原点的距离)相关。
再例如,点b
i的位置分量的权重配置与第一角度与第二角度的平均值呈三角函数的关系,第二角度表示点a
j对应的角度,即参考坐标系中的原点至点a
j的沿线方向,与水平方向或竖直方向之间形成的角度。
可选地,作为一种实施方式,点b
i的权重配置包括多个维度的权重配置。可以理解为,点b
i被配置的权重是一个多维度向量。
例如,点b
i的多个维度的权重配置之间,可以相同,也可以不同。
再例如,点b
i的多个维度的权重配置中的一个维度的权重配置与点b
i(和/或点a
j)的位置分量中的距离分量相关。
再例如,点b
i的多个维度的权重配置中的一个维度的权重配置与点b
i(和/或点a
j)的位置分量中的方向分量相关。
在本实施例中,输出点云中不同位置的点的至少一个维度的权重配置不同。
假设,点b
i的权重配置包括三个维度的权重配置。例如,在输出点云B中的不同位置的点之间,一个维度的权重配置不同(例如,该权重配置与点的第一距离相关),其余两个维度上的权重配置相同(例如均为1)。再例如,在输出点云B中不同位置的点之间,两个维度上的权重配置不同(例如,其中一个权重配置与点的第一距离相关,另一个权重配置与点的方位相关),其余一个维度上的权重配置相同(例如为1)。
下面给出点b
i的权重配置包括多个维度的权重配置的一个例子。
其中,w
d1,w
d2,w
d3表示b
i的权重配置。在本例中,可以理解为,点b
i的权重配置是一个三维向量,例如,点b
i的权重配置表示为w(b
i)=[w
d1,w
d2,w
d3]
T。
在本例中,w
d1,w
d2,w
d3可以相同,也可以不完全相同,或者,完全不同。
例如,w
d1与点b
i(和/或点a
j)的第一距离相关,w
d2与w
d3等于1。
再例如,w
d1与点b
i(和/或点a
j)的第一距离相关,w
d2与点b
i(和/或点a
j)在点云坐标系中的方位相关,w
d3等于1。
可选地,在一些实施例中,点云坐标系(即参考坐标系)包括距离坐标、竖直角度坐标与水平角度坐标。竖直角度坐标用于指示点在球坐标系下的天顶角。水平角度坐标用于指示点在球坐标系下的方位角。距离坐标被非均匀量化,距离坐标的非均匀量化可以使得一个点的权重配置随着该点的第一距离的增大而减小。
需要说明的是,本文中无特殊说明的球坐标系指的是传统的球坐标系,即三维坐标为径向距离,天顶角,方位角的三维坐标系。
其中,R
near表示距离坐标维度上的最小量化距离,R
far表示距离坐标维 度上的最大量化距离,int表示取整操作,d表示预先设定的量化位数。
其中,公式(9)所示的D可以称为倒数距离。公式(9)所示的非均匀量化方法可以称为倒数距离。
其中,R表示输出点云中的点在球坐标系下的径向距离,R
near表示距离坐标维度上的最小量化距离,R
far表示距离坐标维度上的最大量化距离,int表示取整操作,d表示预先设定的量化位数。
距离近的点,即R≤R′的点被量化到(0,2
d×a)这段范围内,距离远的点即R>R′的点被量化到(0,2
d×a,2
d)这段范围内,a为常数,可以预配置。
其中,θ′表示点在球坐标系下的天顶角,d表示预先设定的量化位数。
其中,B表示输出点云,A表示输入点云,N
B表示输出点云中点的数量,
表示输出点云中的点b
i到输入点云中的点a
j的点对点失真信息,D
b表 示点b
i的距离坐标,
表示点b
i的水平角度坐标,θ
b表示点b
i的竖直角度坐标,D
a表示点a
j的距离坐标,
表示点a
j的水平角度坐标,θ
a表示点a
j的竖直角度坐标。
参考公式(9)至公式(14)可知,公式(18)中的D
b-D
a中隐含了与点b
i的第一距离相关的权重配置。因此,点b
i与点a
j之间的点对点失真程度与点b
i的权重配置相关,该权重配置与点b
i的第一距离相关。
参考公式(9)至公式(14)还可知,公式(18)中的D
b-D
a中隐含的点b
i的权重配置,也与点a
j的第一距离相关。
在本实施例中,在计算点云的点对点失真时,对于距离参考坐标系的原点越近的点的权重越大,对于距离参考坐标系的原点越远的点的权重越小,这种点云质量评价方法适用于距离采集设备较近的点的采集精度较高,距离较远的点的采集精度较低的应用场景,从而使得点云质量评价方法较为符合点云的实际情况。因此,本申请实施例提供了一种符合点云实际情况,较为科学的点云质量评价方法。
应理解,当点云坐标系为改进的球坐标系(D,θ,
)时,采用公式(18)计算输出点云中的点b
i与输入点云中的点a
j之间的点对点失真时,自动使得该点对点失真与点b
i的权重配置(与点b
i的第一距离相关的权重配置)相关,而无需额外执行配置权重的操作,因此,可以提高计算点云的失真的效率。
本文中,将与点b
i在球坐标系下的天顶角,和/或点a
j在球坐标系下的天顶角的三角函数相关的权重配置记为点b
i的方位权重配置。
作为示例,点b
i的方位权重配置可以满足如下公式中的任一种:
w
2=cos(θ′
a) 式(19)
w
2=cos(θ′
b) 式(20)
其中,w
2表示点b
i的方位权重配置,θ′
b表示点b
i的在球坐标系下的天顶角,θ′
a表示输入点云中的点a
j在球坐标系下的天顶角,点a
j与点b
i满足预设条件。
应理解,在球坐标系下,同样的水平方位角
天顶角θ′不同的点的物理意义不同。因为,在同样的水平方位角单位偏差
下,不同天顶角θ′在球面上造成的线长偏差是不一样的。假定在球坐标系下,天顶角θ′的角度范围是-90°至+90°。例如,当天顶角θ′=0°时,水平方位角
偏差1°在单位球上造成的线长偏差较大,当天顶角θ′=60°时,水平方位角
偏差1°在单位球上造成的线长偏差较小。
因此,点b
i的方位权重配置可以较好地体现不同天顶角的点的不同物理意义。
因此,在本实施例中,输出点云中的点b
i的权重配置包括点b
i的方位权重配置,可以实现在计算点云的失真时,较为科学地体现不同天顶角的点的物理含义,从而可以使得点云质量评价方法较为符合点云的实际情况,进而使得点云质量评价方法更为科学。
可选地,作为一种实施方式,参考坐标系为改进的球坐标系(D,θ,
),点b
i的权重配置包括方位权重配置,在计算点b
i与点a
j之间的点对点失真时,该方位权重配置为点b
i与点a
j的水平角度坐标
维度的失真分量的权重。
其中,B表示输出点云,A表示输入点云,N
B表示输出点云中点的数量,
表示输出点云中的点b
i到输入点云中的点a
j的点对点失真度量,D
b表示点b
i的距离坐标,
表示点b
i的水平角度坐标,θ
b表示点b
i的竖直角度坐标,D
a表示点a
j的距离坐标,
表示点a
j的水平角度坐标,θ
a表示点a
j的竖直角度坐标。w
2为点b
i的方位权重配置,w
2满足公式(19)至公式(21)中的任一个。
如前文描述的,同样的水平方位角单位偏差
下,不同天顶角θ′在球面上造成的线长偏差是不一样的。因此,将点b
i的方位权重配置w
2作为水平角度坐标
维度的失真分量的权重,可以更好地体现在相同方位角的情况下,不同天顶角的点的不同物理意义,从而可以使得点云质量评价方法较为符合点云的实际情况,进而使得点云质量评价方法更为科学。
在公式(17)与公式(18)中,可以理解为,输出点云中的点b
i的权重配置是三维的,其中一个维度的权重是失真分量D
b-D
a中隐含的与点b
i的第一距离相关的权重,另外两个维度的权重为1。
在公式(22)与公式(23)中,可以理解为,输出点云中的点b
i的权重配置是三维的,其中一个维度的权重是失真分量D
b-D
a中隐含的与点b
i的第一距离相关的权重,另一个维度的权重配置是点b
i的方位权重配置w
2,最后一个维度的权重为1。
上文参考公式(17)、公式(18)、公式(22)与公式(23)描述了,在参考坐标系为改进的球坐标系(D,θ,
)的情况下,获取点对点失真的方式。应理解,参考坐标系为改进的球坐标系(D,θ,
),同样可以适用于获取点云的点对面失真或属性失真。
可选地,在一些实施例中,点b
i的权重配置与点b
i的位置信息在参考坐标系下的位置分量的权重配置相关,其中,确定点b
i的失真信息,包括:对点b
i的位置信息中的至少一个位置分量进行权重配置,得到不同于该位置信息的目标位置信息;基于该目标位置信息,确定点b
i的失真信息。应理解,确定点b
i的失真信息,表示,确定点b
i与点a
j之间的失真信息
在本实施例中,可以通过多种实现方式确定点b
i的失真信息。下文描述了三种实现方式。
实现方式一
通过在点b
i的位置信息中的至少一个位置分量上直接施加权重配置,以确定点b
i的失真信息。
在本示例中,公式(8)中的w
d1,w
d2,w
d3可以相同,也可以不完全相同。
在本示例中,公式(8)中的w
d1,w
d2,w
d3中的一个或多个可以与点b
i的位置信息相关,也可以是点a
j的位置信息相关。
可选地,作为另一种实施方式,在获得点b
i与点a
j在笛卡尔坐标下的位置信息
与
之后,可以先基于权重w
d1,w
d2,w
d3,分别获得点b
i与点a
j的目标位置信息,然后基于该目标位置信息,计算点b
i与点a
j之间的失真信息,得到如公式(8)所示的点对点失真信息e(b
i)。
实现方式二
将点b
i的位置信息从参考坐标系转换至目标坐标系,对转换后的位置信息中的至少一个位置分量进行权重配置,得到不同于该位置信息的目标位置信息,以确定点b
i的失真信息。
参考坐标系表示输入点云与输出点云原本的点云坐标系,目标坐标系表示输入点云与输出点云经过转换之后的点云坐标系。
由于球坐标系(R,θ′,
)的三个坐标中包括一个径向距离,两个角度,无法进行运算,所以需要将其量化为单位相同的三个量,例如根据预设量化因子对球坐标系进行量化。球坐标系(R,θ′,
)的单位量化满足如下公式:
其中,单位球坐标系(L
1,L
2,L
3)表示经过单位量化后的球坐标,R
near表示距离坐标维度上的最小量化距离,R
far表示距离坐标维度上的最大量化距离,int表示取整操作,d表示预先设定的量化位数,即d表示预设量化因子。
在本示例中,作为一种实施方式,在计算失真信息e(b
i)的过程中,为点b
i与点a
j的至少一个位置分量的差值配置权重。作为示例,点b
i与点a
j之间的点对点失真信息e(b
i)满足下公式:
公式(26)中的w
d1,w
d2,w
d3可以相同,也可以不完全相同。
公式(26)中的w
d1,w
d2,w
d3中的一个或多个可以与点b
i的位置信息相关,也可以与点a
j的位置信息相关。
在本示例中,作为一种实施方式,在获得点b
i与点a
j在单位球坐标系(L
1,L
2,L
3)下的位置信息
与
之后,可以先基于权重w
d1,w
d2,w
d3,分别获得点b
i与点a
j的目标位置信息,然后基于该目标位置信息,计算点b
i与点a
j之间的失真信息,得到如公式(26)所示的点对点失真信息e(b
i)。
从公式(27)可以看出,改进的球坐标系(D,θ,
)中的三个坐标的单位是统一的,所以,可以基于点b
i与点a
j在目标坐标系下的位置信息(D
b,θ
b,
)与(D
a,θ
a,
),计算点b
i与点a
j之间的失真信息。
在本示例中,作为一种实施方式,直接根据点b
i与点a
j在目标坐标系下的位置信息(D
b,θ
b,
)与(D
a,θ
a,
)计算点b
i与点a
j之间的点对点失真,获得如公式(18)所示的点对点失真
如前文描述,参考公式(9)至公式(14)可知,公式(18)中的D
b-D
a中隐含与点b
i的第一距离相关的权重配置,也隐含了与点a
j的第一距离相关的权重配置。
因此,在本实施例中,当目标坐标系为改进的球坐标系(D,θ,
)时,可以直接根据点b
i与点a
j在目标坐标系下的位置信息,计算点b
i与点a
j之间的点对点失真信息,计算得到的点对点失真信息中隐含了与点b
i的第一距离相关的权重配置,以及与点a
j的第一距离相关的权重配置。
在本实施例中,在计算点云的点对点失真时,对于距离参考坐标系的原点越近的点的权重越大,对于距离参考坐标系的原点越远的点的权重越小,这种点云质量评价方法适用于距离采集设备较近的点的采集精度较高,距离较远的点的采集精度较低的应用场景,从而使得点云质量评价方法较为符合点云的实际情况。因此,本申请实施例提供了一种符合点云实际情况,较为科学的点云质量评价方法。
应理解,当点云坐标系为改进的球坐标系(D,θ,
)时,采用公式(18)计算输出点云中的点b
i与输入点云中的点a
j之间的点对点失真时,自动使得该点对点失真与点b
i的权重配置(与点b
i的第一距离相关的权重配置)相关,而无需额外执行配置权重的操作,因此,可以提高计算点云的失真的效率。
在本示例中,作为另一种实施方式,在根据点b
i与点a
j在目标坐标系下的位置信息(D
b,θ
b,
)与(D
a,θ
a,
)计算点b
i与点a
j之间的点对点失真的过 程中,为点b
i与点a
j之间的水平角度坐标的差值配置权重,该权重与点b
i和/或点a
j的竖直角度坐标的三角函数相关。例如,获得如公式(23)所示的点对点失真
在本实施例中,目标坐标系为改进的球坐标系(D,θ,
)时,可以直接根据点b
i与点a
j在目标坐标系下的位置信息,计算点b
i与点a
j之间的点对点失真信息,计算得到的点对点失真信息中隐含了与点b
i的第一距离相关的权重配置,以及与点a
j的第一距离相关的权重配置。
如前文描述的,同样的水平方位角单位偏差
下,不同天顶角θ′在球面上造成的线长偏差是不一样的。因此,将点b
i的方位权重配置w
2作为水平角度坐标
维度的失真分量的权重,可以更好地体现在相同方位角的情况下,不同天顶角的点的不同物理意义,从而可以使得点云质量评价方法较为符合点云的实际情况,进而使得点云质量评价方法更为科学。
实现方式三
将点b
i的位置信息从参考坐标系转换至目标坐标系,按照非均匀量化方法对转换后的位置信息中的至少一个位置分量进行权重配置,得到不同该位置信息的目标位置信息,以确定点b
i的失真信息。
如前文描述,由于球坐标系(R,θ′,
)的三个坐标中包括一个径向距离,两个角度,无法进行运算,所以需要将其量化为单位相同的三个量。在实现方式二中,采用公式(25)基于预设量化因子d对球坐标系(R,θ′,
)进行单位量化。在实现方式三中,采用另一种量化方式对球坐标系(R,θ′,
)进行量化,使得可以实现对球坐标中的径向距离(R)实现非均匀量化。
可以理解到,这里的经过非均匀量化后的球坐标系就是上文提及的改进后的球坐标。
如前文描述,参考公式(9)至公式(14)可知,公式(18)中的D
b-D
a中隐含与点b
i的第一距离相关的权重配置,也隐含了与点a
j的第一距离相关的权重配置。
因此,在本实施例中,当目标坐标系为球坐标系时,对球坐标进行如公式(28)所示的非均匀量化,可以直接根据点b
i与点a
j在经过非均匀量化后的球坐标系下的位置信息,计算点b
i与点a
j之间的点对点失真信息,计算得到的点对点失真信息中隐含了与点b
i的第一距离相关的权重配置,以及与点a
j的第一距离相关的权重配置。在这种实施方式中,无需执行配置权重的操作,就可以实现点对点失真中隐含与点的第一距离相关的权重配置的目的。
在本示例中,作为另一种实施方式,在根据点b
i与点a
j在在经过非均匀量化后的球坐标系下的位置信息
与
计算点b
i与点a
j之间的点对点失真的过程中,为点b
i与点a
j之间的水平角度坐标的差值配置权重,该权重与点b
i和/或点a
j的竖直角度坐标的三角函数相关。例如,获得如公式(23)所示的点对点失真
如前文描述的,同样的水平方位角单位偏差
下,不同天顶角θ′在球面上造成的线长偏差是不一样的。因此,将点b
i的方位权重配置w
2作为水平角度坐标
维度的失真分量的权重,可以更好地体现在相同方位角的情况下,不同天顶角的点的不同物理意义,从而可以使得点云质量评价方法较为符合点云的实际情况,进而使得点云质量评价方法更为科学。
为了规范点云的失真评价,可以采用峰值信噪比(peak signal to noise ratio, PSNR)对点对点失真进行度量。
可选地,作为一种实施方式,输出点云的点对点失真采用PSNR进行度量。
作为示例,用于度量输出点云B的点对点失真的PSNR满足如下公式。
其中,MSE
B表示输出点云B的点对点失真,p表示输出点云B中的点b
i与输入点云中的点a
j的距离中的峰值。例如,p满足如下公式:
其中,d
i表示对于输出点云B中的每个点b
i,与其在输入点云A中距离最近的点之间的距离。
应理解,输出点云的属性失真也可以通过PSNR进行度量。例如,将输出点云中每个点的属性与输入点云中与该点距离最近的点的属性进行比较,从而计算得到输出点云的每个属性分量的PSNR。
上述可知,本申请在计算点云的失真时,可以为点云中不同位置的点配置不同的权重,从而可以使得,基于点云失真进行的点云质量评价符合点云的实际情况。
上文总体上是从点云的角度描述本申请实施例,下文从点云中的点的角度描述本申请实施例。
如图2所示,本申请实施例提供一种点云处理的方法200,该方法200包括如下步骤。
S210,获取第一点与第二点,第一点为第一点云中的点,第二点为第二点云中与第一点满足预设条件的点,第一点云和第二点云中的一个为输入点云,另一个为输出点云。
S220,根据第一点以及第二点的位置信息,确定第一点与第二点之间的失真信息。
其中,第一点与第二点之间的失真程度与第一点的权重配置和/或第二点的权重配置相关,第一点的权重配置和/或第二点的权重配置与位置信息相关。
可选地,本实施例中的第一点云对应于上文实施例中的输出点云,第二点云对应于上文实施例中的输入点云。第一点可以对应于上文实施例中的输出点云中的点b
i,第二点可以对应于上文实施例中的输入点云中的点a
j。
可选地,本实施例中的第一点云对应于上文实施例中的输入点云,第二点云对应于上文实施例中的输出点云。第一点可以对应于上文实施例中的输入点云中的点a
j,第二点可以对应于上文实施例中的输出点云中的点b
i。
确定第一点到第二点之间的失真信息的方案,可以参考上文描述的获取点b
i与点a
j的失真信息的方案。
本申请提供的方案除了可以应用于点云的质量评价之外,还可以应用于点云编码器在率失真优化(Rate-Distortion Optimized,以下简称RDO)过程中的失真计算。
在点云编码器中,涉及到率失真优化相关的编码过程时,也可以应用本申请实施例的处理点云的方法。
应理解,率失真优化权衡了失真和码率的影响,即在特定码率下能达到的最小失真,或为了满足一定的失真限制,所用的最小描述码率可以是多少。例如,当对点云的几何数据或属性数据进行编码时,对同一个点的编码可能会产生多个可选的方案,不同的方案带来的码率和失真不一样,这时就要通过一个率失真优化函数来权衡,最终选择代价最小的方案写入码流,其中,在计算失真时可以采用本申请实施例中的点云处理的方法。
可选地,图2所示的实施例应用于点云编码器,该方法200还包括:根据第一点到第二点之间的失真信息,对输入点云进行编码处理,其中,输出点云为输入点云在点云编码器的编码过程中得到的预解码点云。
可选地,基于率失真优化方法以及第一点与第二点之间的失真信息,对输入点云进行编码处理,包括:基于率失真优化方法以及第一点与第二点之间的失真信息,选择输入点云的编码模式和/或编码策略;根据选择到的编码模式和/或编码策略,对输入点云进行编码处理。
例如,基于第一点到第二点之间的失真信息,通过率失真优化函数选择代价最小的方案,并将该方案写入输入点云的编码码流中。
应理解,将本申请提供的计算点云中的点的失真(如上文实施例中获取第一点到第二点的失真信息)的方法应用于点云编码器在率失真优化过程中计算点的失真,在一定程度上,可以使所计算的点的失真较为合理,从而可以实现通过率失真优化函数选择出合理的代价最小的方案,进而提高点云编码的效率。
因此,本申请中的计算点云的失真的方法可以应用于点云编码器在率失 真优化过程中计算点云中点的失真,这使得所计算的点的失真较为合理,从而可以提高率失真优化的结果的合理性。
作为示例,点云编码器的编码框图如图3所示。
点云编码分为几何编码和属性编码两部分。几何编码表示对点云的几何信息的编码,属性编码表示对点云的属性信息的编码。在编码(或解码)中,先对点云的几何信息进行编码(或解码),再基于几何信息对点云的属性信息进行编码(或解码)。其中,几何编码中的压缩方法是基于诸如八叉树编码进行的,属性编码是基于诸如插值的属性预测方法进行的。
下面示例性介绍点云编码器中的几个主要模块。
(1)量化、去除重复坐标
其中
s是几何的量化步长,用于几何压缩的码率控制,如果s=1,则
到X
n的转换是无损的。进行这样的预处理的目的是为了使每个处理后的点
都能处于一个包围框(bounding box)中的体素上,便于后续编码器的压缩。Bounding box是一个立方体,用[0,2
d)
3表示,其中d是一个非负的整数。
事实上,在对点进行量化后,可能会出现多个点被量化到同一个位置,即出现重复点,所以一般需要去除重复点,当然这个过程是可选的,也可以选择保留重复点,如果需要把重复点去除,由于重复点的几何位置都是一样的,所以可以直接去掉,但是重复点的属性值不一定相同,所以这些被量化到同一位置的重复点的属性值也需要合并成一个点的属性,这个过程称为重着色,具体的做法见重着色。
(2)重着色
对量化后点云的第i个点云点,设
是几何位置,
是对应属性,
是在输入点云(量化前)中离
最近的点,
是其对应的属性,
是一个集合,包含了在原始点云中把
作为最近点的所有点,
是其对应的属性值,所以重建属性值为:
若Q
+(i)为空:
若Q
+(i)不为空:
(3)八叉树编码
八叉树的划分是在之前建立的Bounding box B中进行的,该立方体是由(0,0,0)和(2
d,2
d,2
d)两个极点决定,八叉树的划分就是不断划分B的过程,每次划分,一个立方体被分为8个子立方体,如图4所示,并且每个结点都用8bit二进制码表示,称为占用码(occupancy code),每个子立方体都用1bit来表示里面是否有包含点,如果有点则值为1,如果为空则值为0。只有边长大于1的立方体才能被继续划分,对于某个位置上出现重复点的情况,还需要在八叉树的最后一层额外编码点的个数。
所以,对于点云的几何位置信息,编码端不断递归划分八叉树,按顺序生成每个节点的8bit占用码,所以,编码端不是直接编码点云点的几何位置,而是编码点云的八叉树结构,将占用码送入算术编码器,然后用算术编码器进行熵编码,解码端解码后根据这些占用码就能够完整地恢复出整棵八叉树了。
几何编码主要是基于八叉树编码,但有一些点云中的“孤立点”,会有其他的模式进行编码,如直接编码模式(Direct Coding Mode),这种情况下直接编码点云的三维坐标会比编码8bit节点更划算,详细方法不再展开说明;另外,在八叉树的熵编码时涉及到很多的上下文模型,这里也不仔细展开了。
(4)属性编码
属性的预测编码是基于细节层次(level of detail,LOD)进行的,生成LOD的过程本质上是对所有点云点重排序、重组的过程,生成一系列精细程度不同的集合,LOD的层次越深,点云的精细化程度越高,最高层次的LOD即原始的点云数据。
点云的属性信息按照LOD的生成过程中定义的顺序进行编/解码,传输的顺序也是从低层次LOD中的点最先传,依次传层次高的LOD,只有已经 编/解码了的点云属性才会被用来做预测,也就是说,点i的属性值(a
i),i∈0,…,k-1是通过离点i最近的点
进行线性插值预测得到的,而这些点都是已经编码或解码过的,令(δ
j)j∈N
i为离当前点的距离,则当前点的预测值由下式得到:
其中k是最近点的数量,是编码端决定的一个参数,也需要通过码流传给解码端。
得到预测属性后,就可以编码和量化真实值和预测值的残差
再对这个残差做量化,再送入编码器,比起直接编码属性要节省很多的码率。所以,最终只有LOD0是完整的传输了属性值,剩下的LOD中的点的属性,都是先经过预测,再传输残差值的。
(5)基于率失真的编码策略
率失真决策是综合考虑了码率和失真,使用一个率失真函数I(R,D)来决策,对于不同的编码方案,最终选择率失真最小的方案写入码流。
举下面两例作为基于率失真的编码策略/模式。
(一)编码中的预测策略
在属性编码时,用于预测的点不同,所能达到的预测效果也不同,得到的残差也不同,最终获得的失真和码率也不同,这时需要用一种率失真决策来选定用哪些点做预测,然后对残差经过量化后再熵编码。
以图5为例,假如要对P2这个点进行属性编码,首先在已编码的点中找到距离P2最近的k个点(k≤3),作为预测候选对象,分别是P0、P5、P4,这时编码端会构建一个预测候选列表,生成多种编码策略,如表1所示,这四种策略的预测值分别是这三个点属性的平均值、P4点的属性值、P5点的属性值、P0点的属性值,编码器会对这四种策略进行率失真决策,最终选择率失真最小的策略,用这种策略进行预测,得到残差,写入码流。
表1
预测器索引(Predictor index) | 预测值(Predicted value) |
0 | 平均值(average) |
1 | P4(1 st nearest point) |
2 | P5(2 nd nearest point) |
3 | P0(3 rd nearest point) |
(二)编码中的量化策略
在对需要编码的值进行量化时,也可以使用率失真量化器。对于同一个值生成多种量化策略,即生成多个可选量化值,假设需要编码的值为c,首先对该值进行预量化:
round(.)表示四舍五入,利用l的大小确定可选量化值,例如,当l=2时,可选量化值为0,1,2三种,当l=N时,可选量化值为N-1和N,对于每一个需要量化后编码的值,编码器遍历它的所有可选量化值,最终选择一个率失真代价最小的策略,将该值作为量化后的值,再进行熵编码。
可以理解,编码模式和/或编码策略除了上述说明的内容,还可以包括其它适用于点云编码器的编码模式和/或编码策略,在点云编码器对输入点云的编码过程中,可以结合第一点与第二点之间的失真信息,以及任何适用于点云编码器的编码模式和/或编码策略,对输入点云进行编码。
应理解,本申请提供的方案可以应用于如下领域:光电雷达、激光雷达、3D地图(高清)、点云编码器、点云解码器。
上文描述了本申请的方法实施例,下文将描述本申请的装置实施例。应理解,装置实施例的描述与方法实施例的描述相互对应,因此,未详细描述的内容可以参见前面方法实施例,为了简洁,这里不再赘述。
图6为本发明实施例提供的点云处理的装置600的示意性框图,该装置600包括如下单元。
获取单元610,用于获取第一点与第二点,第一点为第一点云中的点,第二点为第二点云中与第一点满足预设条件的点,第一点云和第二点云中的一个为输入点云,另一个为输出点云。
确定单元620,用于根据第一点以及第二点的位置信息,确定第一点与第二点之间的失真信息。
其中,第一点与第二点之间的失真程度与第一点的权重配置和/或第二点的权重配置相关,第一点的权重配置和/或第二点的权重配置与位置信息相关。
本申请在计算点云的失真时,可以为点云中不同位置信息的点配置不同的权重,从而可以使得,基于点云失真进行的点云质量评价,适用于实际应用中点云中不同位置信息的点的物理意义不同的场景,从而使得点云质量评价较为符合点云的实际情况。
可选地,第一点云以及第二点云为动态获取点云。
可选地,第一点的权重配置和/或第二点的权重配置,与位置信息在参考坐标系下的位置分量的权重配置相关。
可选地,位置分量用于确定第一点或第二点与参考坐标系中的原点的第一距离;位置分量的权重配置与第一距离相关。
可选地,位置分量的权重配置与第一距离呈负相关。
可选地,位置分量包括距离分量,位置分量的权重配置包括用于表征距离分量的权重配置。
可选地,位置分量用于确定参考坐标系中的原点至第一点或第二点的沿线方向,与水平方向或竖直方向之间形成的夹角的角度;位置分量的权重配置与第一点对应的第一角度和/或第二点对应的第二角度相关。
可选地,位置分量的权重配置与第一角度、第二角度之和呈三角函数的关系。
可选地,位置分量包括水平方位分量,位置分量的权重配置包括用于表征水平方位分量的权重。
可选地,三角函数包括余弦三角函数。
可选地,确定单元620用于,对位置信息中的至少一个位置分量进行权重配置,得到不同于位置信息的目标位置信息;基于目标位置信息,确定第一点和第二点之间的失真信息。
可选地,参考坐标系包括笛卡尔坐标系。
可选地,确定单元620用于,将位置信息从参考坐标系转换至目标坐标系,并根据按照非均匀量化方法对转换后的位置信息中的至少一个位置分量进行权重配置,得到不同于位置信息的目标位置信息。
可选地,确定单元620用于,将位置信息从参考坐标系转换至目标坐标系,并对转换后的位置信息中的至少一个位置分量进行权重配置,得到不同于位置信息的目标位置信息。
可选地,目标坐标系包括球坐标系。
可选地,目标位置信息中的各个位置分量是根据预设量化因子得到的。
可选地,目标位置信息中的位置分量包括距离分量,目标位置信息中的距离分量是基于非均匀量化方法进行了权重配置的。
可选地,非均匀量化方法包括倒数距离。
可选地,第一点与第二点满足预设条件包括确定第一点和第二点之间的第二距离最近。
可选地,确定单元620还用于,根据第一点与第二点之间的失真信息,确定第一点云与第二点云之间的失真信息。
可选地,确定单元620用于,对第一点云、第二点云中所有满足预设条件的第一点与第二点之间的失真信息进行累加,并根据累加结果确定第一点云与第二点云之间的失真信息。
可选地,在一些实施例中,该装置600为点云编码器,该装置600还包括:编码单元,用于根据第一点与第二点之间的失真信息,对输入点云进行编码处理;其中,输出点云为输入点云在点云编码器的编码过程中得到的预解码点云。
可选地,该编码单元用于,基于率失真优化方法以及第一点与第二点之间的失真信息,对输入点云进行编码处理。
可选地,该编码单元用于,基于率失真优化方法以及第一点与第二点之间的失真信息,选择输入点云的编码模式和/或编码策略;根据选择到的编码模式和/或编码策略,对输入点云进行编码处理。
图7为本发明另一实施例提供的点云处理的装置700的示意性框图,该装置700包括如下单元。
获取单元710,用于获取输入点云和输出点云。
确定单元720,用于根据输入点云和/或输出点云中的点的失真信息,确定输入点云和输出点云之间的失真信息。其中,输入点云和/或输出点云中的至少两个点的权重配置不同。
可选地,确定单元720用于,通过上文方法实施例提供的方法200获取输入点云和/或输出点云中的点的失真信息。
本申请在计算点云的失真时,可以为点云中不同位置信息的点配置不同的权重,从而可以使得,基于点云失真进行的点云质量评价,适用于实际应用中点云中不同位置信息的点的物理意义不同的场景,从而使得点云质量评 价较为符合点云的实际情况。
如图8所示,本发明实施例还提供一种点云处理的装置800,该装置800包括处理器810与存储器820,该存储器820用于存储指令,该处理器810用于执行该存储器820存储的指令,并且对该存储器820中存储的指令的执行使得,该处理器810用于执行上文方法实施例的方法。
可选地,该点云处理装置800还包括收发器830,用于从外部获取待处理的点云,或者,用于输出点云处理结果,例如,输出点云相对于输入点云的失真信息。
本发明实施例还提供一种计算机存储介质,其上存储有计算机程序,该计算机程序被计算机执行时使得,该计算机执行上文方法实施例的方法。
本发明实施例还提供一种包含指令的计算机程序产品,其特征在于,该指令被计算机执行时使得计算机执行上文方法实施例的方法。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其他任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(digital subscriber line,DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质(例如,软盘、硬盘、磁带)、光介质(例如数字视频光盘(digital video disc,DVD))、或者半导体介质(例如固态硬盘(solid state disk,SSD))等。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方 法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。
Claims (55)
- 一种点云处理的方法,其特征在于,包括:获取第一点与第二点,所述第一点为第一点云中的点,所述第二点为第二点云中与所述第一点满足预设条件的点,所述第一点云和所述第二点云中的一个为输入点云,另一个为输出点云;根据所述第一点以及所述第二点的位置信息,确定所述第一点与所述第二点之间的失真信息;其中,所述第一点与所述第二点之间的失真程度与第一点的权重配置和/或所述第二点的权重配置相关,第一点的权重配置和/或所述第二点的权重配置与所述位置信息相关。
- 根据权利要求1所述的方法,其特征在于,所述第一点云以及所述第二点云为动态获取点云。
- 根据权利要求1所述的方法,其特征在于,所述第一点的权重配置和/或所述第二点的权重配置,与所述位置信息在参考坐标系下的位置分量的权重配置相关。
- 根据权利要求3所述的方法,其特征在于,所述位置分量用于确定所述第一点或所述第二点与所述参考坐标系中的原点的第一距离;所述位置分量的权重配置与所述第一距离相关。
- 根据权利要求4所述的方法,其特征在于,所述位置分量的权重配置与所述第一距离呈负相关。
- 根据权利要求5所述的方法,其特征在于,所述位置分量包括距离分量,所述位置分量的权重配置包括用于表征所述距离分量的权重配置。
- 根据权利要求2所述的方法,其特征在于,所述位置分量用于确定所述参考坐标系中的原点至所述第一点或所述第二点的沿线方向,与水平方向或竖直方向之间形成的夹角的角度;所述位置分量的权重配置与所述第一点对应的第一角度和/或所述第二点对应的第二角度相关。
- 根据权利要求7所述的方法,其特征在于,所述位置分量的权重配置与所述第一角度、所述第二角度之和呈三角函数的关系。
- 根据权利要求8所述的方法,其特征在于,所述位置分量包括水平方位分量,所述位置分量的权重配置包括用于表征所述水平方位分量的权重。
- 根据权利要求8所述的方法,其特征在于,所述三角函数包括余弦三角函数。
- 根据权利要求2至10中任一项所述的方法,其特征在于,所述根据所述第一点和/或所述第二点的位置信息,确定所述第一点与所述第二点之间的失真信息,包括:对所述位置信息中的至少一个所述位置分量进行权重配置,得到不同于所述位置信息的目标位置信息;基于所述目标位置信息,确定所述第一点和所述第二点之间的失真信息。
- 根据权利要求11所述的方法,其特征在于,所述参考坐标系包括笛卡尔坐标系。
- 根据权利要求11所述的方法,其特征在于,所述对所述位置信息中的至少一个所述位置分量进行权重配置,得到不同于所述位置信息的目标位置信息,包括:将所述位置信息从所述参考坐标系转换至目标坐标系,并根据按照非均匀量化方法对转换后的所述位置信息中的至少一个位置分量进行权重配置,得到不同于所述位置信息的目标位置信息。
- 根据权利要求11所述的方法,其特征在于,所述对所述位置信息中的至少一个所述位置分量进行权重配置,得到不同于所述位置信息的目标位置信息,包括:将所述位置信息从所述参考坐标系转换至目标坐标系,并对转换后的所述位置信息中的至少一个位置分量进行权重配置,得到不同于所述位置信息的目标位置信息。
- 根据权利要求13或14所述的方法,其特征在于,所述目标坐标系包括球坐标系。
- 根据权利要求15所述的方法,其特征在于,所述目标位置信息中的各个位置分量是根据预设量化因子得到的。
- 根据权利要求13所述的方法,其特征在于,所述目标位置信息中的位置分量包括距离分量,所述目标位置信息中的距离分量是基于所述非均匀量化方法进行了权重配置的。
- 根据权利要求13所述的方法,其特征在于,所述非均匀量化方法包括倒数距离。
- 根据权利要求11所述的方法,其特征在于,所述第一点与所述第二点满足所述预设条件包括确定所述第一点和所述第二点之间的第二距离最近。
- 根据权利要求1至19中任一项所述的方法,其特征在于,所述方法还包括:根据所述第一点与所述第二点之间的失真信息,确定所述第一点云与所述第二点云之间的失真信息。
- 根据权利要20所述的方法,其特征在于,所述根据所述第一点与所述第二点之间的失真信息,确定所述第一点云与所述第二点云之间的失真信息,包括:对所述第一点云、所述第二点云中所有满足所述预设条件的所述第一点与所述第二点之间的失真信息进行累加,并根据累加结果确定所述第一点云与所述第二点云之间的失真信息。
- 根据权利要求1至19中任一项所述的方法,其特征在于,应用于点云编码器,所述方法还包括:根据所述第一点与所述第二点之间的失真信息,对所述输入点云进行编码处理;其中,所述输出点云为所述输入点云在所述点云编码器的编码过程中得到的预解码点云。
- 根据权利要求22所述的方法,其特征在于,所述根据所述第一点与所述第二点之间的失真信息,对所述输入点云进行编码处理,包括:基于率失真优化方法以及所述第一点与所述第二点之间的失真信息,对所述输入点云进行编码处理。
- 根据权利要求23所述的方法,其特征在于,所述基于率失真优化方法以及所述第一点与所述第二点之间的失真信息,对所述输入点云进行编码处理,包括:基于率失真优化方法以及所述第一点与所述第二点之间的失真信息,选择所述输入点云的编码模式和/或编码策略;根据选择到的编码模式和/或编码策略,对所述输入点云进行编码处理。
- 一种点云处理的方法,其特征在于,包括:获取输入点云和输出点云;根据所述输入点云和/或所述输出点云中的点的失真信息,确定所述输入点云和所述输出点云之间的失真信息;其中,所述输入点云和/或所述输出点云中的至少两个点的权重配置不同。
- 根据权利要求25所述的方法,其特征在于,所述输入点云和/或所述输出点云中的点的失真信息通过如权利要求1至19中任一项所述的方法获取。
- 一种点云处理的装置,其特征在于,包括:获取单元,用于获取第一点与第二点,所述第一点为第一点云中的点,所述第二点为第二点云中与所述第一点满足预设条件的点,所述第一点云和所述第二点云中的一个为输入点云,另一个为输出点云;确定单元,用于根据所述第一点以及所述第二点的位置信息,确定所述第一点与所述第二点之间的失真信息;其中,所述第一点与所述第二点之间的失真程度与第一点的权重配置和/或所述第二点的权重配置相关,第一点的权重配置和/或所述第二点的权重配置与所述位置信息相关。
- 根据权利要求27所述的装置,其特征在于,所述第一点云以及所述第二点云为动态获取点云。
- 根据权利要求27所述的装置,其特征在于,所述第一点的权重配置和/或所述第二点的权重配置,与所述位置信息在参考坐标系下的位置分量的权重配置相关。
- 根据权利要求29所述的装置,其特征在于,所述位置分量用于确定所述第一点或所述第二点与所述参考坐标系中的原点的第一距离;所述位置分量的权重配置与所述第一距离相关。
- 根据权利要求30所述的装置,其特征在于,所述位置分量的权重配置与所述第一距离呈负相关。
- 根据权利要求31所述的装置,其特征在于,所述位置分量包括距离分量,所述位置分量的权重配置包括用于表征所述距离分量的权重配置。
- 根据权利要求28所述的装置,其特征在于,所述位置分量用于确定所述参考坐标系中的原点至所述第一点或所述第二点的沿线方向,与水平方向或竖直方向之间形成的夹角的角度;所述位置分量的权重配置与所述第一点对应的第一角度和/或所述第二 点对应的第二角度相关。
- 根据权利要求33所述的装置,其特征在于,所述位置分量的权重配置与所述第一角度、所述第二角度之和呈三角函数的关系。
- 根据权利要求34所述的装置,其特征在于,所述位置分量包括水平方位分量,所述位置分量的权重配置包括用于表征所述水平方位分量的权重。
- 根据权利要求34所述的装置,其特征在于,所述三角函数包括余弦三角函数。
- 根据权利要求28至36中任一项所述的装置,其特征在于,所述确定单元用于,对所述位置信息中的至少一个所述位置分量进行权重配置,得到不同于所述位置信息的目标位置信息;基于所述目标位置信息,确定所述第一点和所述第二点之间的失真信息。
- 根据权利要求37所述的装置,其特征在于,所述参考坐标系包括笛卡尔坐标系。
- 根据权利要求37所述的装置,其特征在于,所述确定单元用于,将所述位置信息从所述参考坐标系转换至目标坐标系,并根据按照非均匀量化方法对转换后的所述位置信息中的至少一个位置分量进行权重配置,得到不同于所述位置信息的目标位置信息。
- 根据权利要求37所述的装置,其特征在于,所述确定单元用于,将所述位置信息从所述参考坐标系转换至目标坐标系,并对转换后的所述位置信息中的至少一个位置分量进行权重配置,得到不同于所述位置信息的目标位置信息。
- 根据权利要求39或40所述的装置,其特征在于,所述目标坐标系包括球坐标系。
- 根据权利要求41所述的装置,其特征在于,所述目标位置信息中的各个位置分量是根据预设量化因子得到的。
- 根据权利要求39所述的装置,其特征在于,所述目标位置信息中的位置分量包括距离分量,所述目标位置信息中的距离分量是基于所述非均匀量化方法进行了权重配置的。
- 根据权利要求39所述的装置,其特征在于,所述非均匀量化方法包括倒数距离。
- 根据权利要求37所述的装置,其特征在于,所述第一点与所述第二点满足所述预设条件包括确定所述第一点和所述第二点之间的第二距离最近。
- 根据权利要求27至45中任一项所述的装置,其特征在于,所述确定单元还用于,根据所述第一点与所述第二点之间的失真信息,确定所述第一点云与所述第二点云之间的失真信息。
- 根据权利要46所述的装置,其特征在于,所述确定单元用于,对所述第一点云、所述第二点云中所有满足所述预设条件的所述第一点与所述第二点之间的失真信息进行累加,并根据累加结果确定所述第一点云与所述第二点云之间的失真信息。
- 根据权利要求27至45中任一项所述的装置,其特征在于,应用于点云编码器,所述装置还包括:编码单元,用于根据所述第一点与所述第二点之间的失真信息,对所述输入点云进行编码处理;其中,所述输出点云为所述输入点云在所述点云编码器的编码过程中得到的预解码点云。
- 根据权利要求48所述的装置,其特征在于,所述编码单元用于,基于率失真优化方法以及所述第一点与所述第二点之间的失真信息,对所述输入点云进行编码处理。
- 根据权利要求49所述的装置,其特征在于,所述编码单元用于,基于率失真优化方法以及所述第一点与所述第二点之间的失真信息,选择所述输入点云的编码模式和/或编码策略;根据选择到的编码模式和/或编码策略,对所述输入点云进行编码处理。
- 一种点云处理的装置,其特征在于,包括:获取单元,用于获取输入点云和输出点云;确定单元,用于根据所述输入点云和/或所述输出点云中的点的失真信息,确定所述输入点云和所述输出点云之间的失真信息;其中,所述输入点云和/或所述输出点云中的至少两个点的权重配置不同。
- 根据权利要求51所述的装置,其特征在于,所述确定单元用于,通过如权利要求1至19中任一项所述的方法获取所述输入点云和/或所述输出点云中的点的失真信息。
- 一种点云处理的装置,其特征在于,包括:存储器与处理器,所述存储器用于存储指令,所述处理器用于执行所述存储器存储的指令,并且对所述存储器中存储的指令的执行使得,所述处理器用于执行如权利要求1至26中任一项所述的方法。
- 一种计算机存储介质,其特征在于,其上存储有计算机程序,所述计算机程序被计算机执行时,使得所述计算机执行如权利要求1至26中任一项所述的方法。
- 一种包含指令的计算机程序产品,其特征在于,所述指令被计算机执行时使得计算机执行如权利要求1至26中任一项所述的方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201980039249.4A CN112385222B (zh) | 2019-06-12 | 2019-06-12 | 点云处理的方法与装置 |
PCT/CN2019/090995 WO2020248176A1 (zh) | 2019-06-12 | 2019-06-12 | 点云处理的方法与装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2019/090995 WO2020248176A1 (zh) | 2019-06-12 | 2019-06-12 | 点云处理的方法与装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2020248176A1 true WO2020248176A1 (zh) | 2020-12-17 |
Family
ID=73780804
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2019/090995 WO2020248176A1 (zh) | 2019-06-12 | 2019-06-12 | 点云处理的方法与装置 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN112385222B (zh) |
WO (1) | WO2020248176A1 (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115086716B (zh) | 2021-03-12 | 2023-09-08 | 腾讯科技(深圳)有限公司 | 点云中邻居点的选择方法、装置及编解码器 |
CN113298950B (zh) * | 2021-05-13 | 2024-04-19 | 京东鲲鹏(江苏)科技有限公司 | 一种物体属性的确定方法、装置、电子设备和存储介质 |
CN115412715B (zh) * | 2021-05-26 | 2024-03-26 | 荣耀终端有限公司 | 一种点云属性信息的预测编解码方法及装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104007432A (zh) * | 2014-05-16 | 2014-08-27 | 武汉大学 | 一种检查机载激光雷达平面精度的地标布设方法 |
CN105678076A (zh) * | 2016-01-07 | 2016-06-15 | 福州华鹰重工机械有限公司 | 点云测量数据质量评估优化的方法及装置 |
CN106127250A (zh) * | 2016-06-24 | 2016-11-16 | 深圳市唯特视科技有限公司 | 一种基于三维点云数据的人脸质量评估方法 |
CN107767375A (zh) * | 2017-11-02 | 2018-03-06 | 广东电网有限责任公司电力科学研究院 | 一种点云质量评估方法及装置 |
WO2018179532A1 (en) * | 2017-03-27 | 2018-10-04 | Mitsubishi Electric Corporation | System and method for representing point cloud of scene |
-
2019
- 2019-06-12 CN CN201980039249.4A patent/CN112385222B/zh active Active
- 2019-06-12 WO PCT/CN2019/090995 patent/WO2020248176A1/zh active Application Filing
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104007432A (zh) * | 2014-05-16 | 2014-08-27 | 武汉大学 | 一种检查机载激光雷达平面精度的地标布设方法 |
CN105678076A (zh) * | 2016-01-07 | 2016-06-15 | 福州华鹰重工机械有限公司 | 点云测量数据质量评估优化的方法及装置 |
CN106127250A (zh) * | 2016-06-24 | 2016-11-16 | 深圳市唯特视科技有限公司 | 一种基于三维点云数据的人脸质量评估方法 |
WO2018179532A1 (en) * | 2017-03-27 | 2018-10-04 | Mitsubishi Electric Corporation | System and method for representing point cloud of scene |
CN107767375A (zh) * | 2017-11-02 | 2018-03-06 | 广东电网有限责任公司电力科学研究院 | 一种点云质量评估方法及装置 |
Non-Patent Citations (2)
Title |
---|
ZHANG, JUAN ET AL.: "Saliency Based Quality Evaluation of Point Cloud Model", JOURNAL OF APPLIED SCIENCES, vol. 32, no. 5, 30 September 2014 (2014-09-30), DOI: 20200222141819X * |
ZHANG, JUAN ET AL.: "Saliency Based Quality Evaluation of Point Cloud Model", JOURNAL OF APPLIED SCIENCES, vol. 32, no. 5, 30 September 2014 (2014-09-30), DOI: 20200222141834X * |
Also Published As
Publication number | Publication date |
---|---|
CN112385222A (zh) | 2021-02-19 |
CN112385222B (zh) | 2023-11-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113179410B (zh) | 一种点云属性的编解码方法、装置和系统 | |
WO2020248176A1 (zh) | 点云处理的方法与装置 | |
WO2022062369A1 (zh) | 点云编解码方法与系统、及点云编码器与点云解码器 | |
WO2020248177A1 (zh) | 点云的编解码方法及装置 | |
WO2022067790A1 (zh) | 一种点云分层方法及解码器、编码器、存储介质 | |
CN114207668A (zh) | 划分方法、编码器、解码器以及计算机存储介质 | |
WO2021062772A1 (zh) | 预测方法、编码器、解码器及计算机存储介质 | |
WO2020010445A1 (en) | Methods and devices for lossy coding of point cloud occupancy | |
WO2024037244A9 (zh) | 点云数据的解码方法、编码方法、装置、存储介质及设备 | |
US9979969B2 (en) | Method and system for image compression using image block characteristics | |
WO2022133753A1 (zh) | 点云编解码方法与系统、及点云编码器与点云解码器 | |
US20230351639A1 (en) | Point cloud encoding and decoding method, encoder and decoder | |
CN115474041A (zh) | 点云属性的预测方法、装置及相关设备 | |
WO2022131948A1 (en) | Devices and methods for sequential coding for point cloud compression | |
WO2022217611A1 (zh) | 编解码方法及相关设备、存储介质 | |
WO2022188582A1 (zh) | 点云中邻居点的选择方法、装置及编解码器 | |
WO2022140937A1 (zh) | 点云编解码方法与系统、及点云编码器与点云解码器 | |
WO2023103564A1 (zh) | 点云解码方法、点云编码方法、装置、计算机设备、计算机可读存储介质及计算机程序产品 | |
WO2023159428A1 (zh) | 编码方法、编码器以及存储介质 | |
WO2022217472A1 (zh) | 点云编解码方法、编码器、解码器及计算机可读存储介质 | |
WO2023025135A1 (zh) | 点云属性编码方法、装置、解码方法以及装置 | |
WO2024065406A1 (zh) | 编解码方法、码流、编码器、解码器以及存储介质 | |
WO2024178632A1 (zh) | 点云编解码方法、装置、设备及存储介质 | |
WO2024145933A1 (zh) | 点云编解码方法、装置、设备及存储介质 | |
WO2024008019A1 (en) | Method, apparatus, and medium for point cloud coding |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 19933103 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 19933103 Country of ref document: EP Kind code of ref document: A1 |