WO2020073444A1 - 基于神经网络的点云数据的处理方法和设备 - Google Patents

基于神经网络的点云数据的处理方法和设备 Download PDF

Info

Publication number
WO2020073444A1
WO2020073444A1 PCT/CN2018/117126 CN2018117126W WO2020073444A1 WO 2020073444 A1 WO2020073444 A1 WO 2020073444A1 CN 2018117126 W CN2018117126 W CN 2018117126W WO 2020073444 A1 WO2020073444 A1 WO 2020073444A1
Authority
WO
WIPO (PCT)
Prior art keywords
point set
set data
point
displacement vector
loss
Prior art date
Application number
PCT/CN2018/117126
Other languages
English (en)
French (fr)
Inventor
黄惠
尹康学
张皓
丹尼尔科恩
Original Assignee
深圳大学
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 深圳大学 filed Critical 深圳大学
Priority to US16/487,319 priority Critical patent/US11270519B2/en
Publication of WO2020073444A1 publication Critical patent/WO2020073444A1/zh

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/30Determination of transform parameters for the alignment of images, i.e. image registration
    • G06T7/33Determination of transform parameters for the alignment of images, i.e. image registration using feature-based methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/20Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/047Probabilistic or stochastic networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/60Analysis of geometric attributes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2200/00Indexing scheme for image data processing or generation, in general
    • G06T2200/04Indexing scheme for image data processing or generation, in general involving 3D image data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10028Range image; Depth image; 3D point clouds
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2210/00Indexing scheme for image generation or computer graphics
    • G06T2210/56Particle system, point based geometry or rendering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2219/00Indexing scheme for manipulating 3D models or images for computer graphics
    • G06T2219/20Indexing scheme for editing of 3D models
    • G06T2219/2021Shape modification

Definitions

  • the invention relates to the field of human neural networks, and in particular to a method and device for processing point cloud data based on neural networks.
  • Point cloud data refers to the scanning data recorded in the form of points, each point contains three-dimensional coordinates, some may contain position information, color information or reflection intensity information.
  • the point cloud formed by the point cloud data collection has the advantages of conciseness, flexibility, and easy access. It has unique advantages and applications in the field of image transformation. In recent years, many scholars have conducted extensive and in-depth research on point clouds.
  • the processing work of applying neural networks to point cloud data includes PointNet and PointNet ++. Both of these tasks are to extract the characteristics of each point in the point cloud and aggregate the point cloud to convert it into a local feature or global point cloud. Features, classify and segment the point cloud based on the local or global features of the point cloud.
  • a method for processing point cloud data based on a neural network includes:
  • first point set data and second point set data respectively represent point data sets of the outer surface of the target object under different shapes
  • the structural parameters include the set abstraction layer parameters and feature propagation Layer parameters and fully connected layer parameters;
  • the present invention provides a computer device, including a memory and a processor, where the memory stores a computer program, and when the processor executes the computer program, the following steps are implemented:
  • first point set data and second point set data respectively represent point data sets of the outer surface of the target object under different shapes
  • the structural parameters include the set abstraction layer parameters and feature propagation Layer parameters and fully connected layer parameters;
  • the present invention provides a computer-readable storage medium on which a computer program is stored, and when the computer program is executed by a processor, the following steps are realized:
  • first point set data and second point set data respectively represent point data sets of the outer surface of the target object under different shapes
  • the structural parameters include the set abstraction layer parameters and feature propagation Layer parameters and fully connected layer parameters;
  • the method and device for processing point cloud data based on neural network include: acquiring first point set data and second point set data; first point set data and second point set data are used to represent the outer surface of the target object Point data set; using the preset structural parameters of the neural network to process the first point set data to obtain the multi-scale features of each point in the first point set data; the structural parameters include the set abstraction layer parameters and the feature propagation layer Parameters and fully connected layer parameters; according to multi-scale features and preset noise, obtain the first displacement vector of each point in the first point set data; according to the first displacement vector, the first point set data and the second point set data Target point set data; since the first displacement vector is the displacement vector corresponding to each point in the first point set data, the target point set data obtained from the first displacement vector, the first point set data, and the second point set data There is a transformation relationship between each point in the data and each point in the first point set data, and the shape of the point cloud corresponding to the point set data formed by the points with different displacements is different,
  • FIG. 1 is a schematic diagram of an application scenario provided by an embodiment
  • FIG. 2 is a flowchart of a method for processing point cloud data based on a neural network according to an embodiment
  • FIG. 3 is a flowchart of an implementation manner of S104 in the embodiment of FIG. 2;
  • FIG. 4 is a flowchart of a method for processing point cloud data based on a neural network according to an embodiment
  • FIG. 5 is a flowchart of an implementation manner of S203 in the embodiment of FIG. 3;
  • FIG. 6 is a flowchart of a method for processing point cloud data based on a neural network according to an embodiment
  • FIG. 7 is a schematic diagram of an internal structure of a computer device provided by an embodiment.
  • the method for processing point cloud data based on a neural network can be applied to the neural network system shown in FIG. 1.
  • the system includes a neural network branch 1 and a neural network branch 2.
  • the neural network branch 1 and the neural network branch 2 each include a set abstraction layer, a feature propagation layer, a fully connected layer, and an adder.
  • the set abstract layer is used to obtain the point features corresponding to the input data set; the feature propagation layer is used to output the multi-scale features of each point in the data set; the fully connected layer is used to compare the multi-scale features of each point in the data set with The noise vector is processed to output the displacement vector corresponding to each point in the data set; the adder is used to add the displacement vector corresponding to each point in the data set to output the prediction data set.
  • the neural network system may further include a geometric loss calculation item and a normal cross loss calculation item.
  • the geometric loss calculation item is used to calculate the geometric difference between the two data sets; the normal cross loss calculation item is used to calculate the two displacement vectors The parallelism between.
  • FIG. 2 is a flowchart of a method for processing point cloud data based on a neural network according to an embodiment.
  • This embodiment relates to the process of processing the point cloud data by using a neural network algorithm to realize the geometric conversion between two target objects.
  • the execution body of the method is a computer device. As shown in FIG. 2, the method includes the following steps:
  • both the first point set data and the second point set data may include point cloud data
  • the point cloud data refers to a set of vectors in a three-dimensional coordinate system. These vectors are usually (x, y, z)
  • the coordinate form is mainly used to represent the outer surface shape of the target object.
  • the first point set data can be surface point set data under the skeleton shape of an aircraft model
  • the corresponding second point set data can be surface point set data under the complete shape of the aircraft model
  • the first point set The data may also be surface point set data under the two-dimensional contour shape of an aircraft model
  • the corresponding second point set data may be surface point set data under the three-dimensional contour shape of the aircraft model.
  • both the first point set data and the second point set data can be generated by scanning the target object through a 3D scanning device.
  • These scanning devices can automatically collect the information of the points on the surface of the target object, and then convert the information of these points Output in the form of a certain data file to form the first point set data or the second point set data. Then, the first point set data or the second point set data is transmitted to the computer devices connected to these scanning devices, so that the computer device can obtain the first point set data or the second point set data output by these scanning devices.
  • scanning devices such as lidar, stereo cameras, and transit time cameras can all collect information on points on the surface of the target object, and then transmit the collected first point set data or second point set data to the computer device To enable the computer device to process the first point set data or the second point set data in the next step.
  • the computer device can also be downloaded directly from the network or obtained from a database to obtain the first point set data or the second point set data corresponding to a target object.
  • the manner in which the computer device acquires the first point set data or the second point set data can be determined according to the actual situation, and this embodiment does not limit this.
  • the structure parameters include the set abstraction layer parameter, the feature propagation layer parameter and the full Connection layer parameters.
  • the structure of the preset neural network may include multiple layer structures. As shown in FIG. 1, the structure of the preset neural network may include a set abstraction layer, a feature propagation layer, and a full layer Connection layers, etc., and the layers are connected to each other, each layer is preset with different parameters, and different parameters are used for different processing of the first point set data.
  • the set abstraction layer is used to output the point features corresponding to the points in the first point set data or the data in the second point set data according to the input first point set data or second point set data
  • the point features corresponding to each point
  • the feature propagation layer is used to output the multi-scale features of each point based on the point features output from the set abstraction layer connected to it
  • the fully connected layer is used to output the multi-scale feature based on the connected feature propagation layer
  • the multi-scale features of each point output the displacement vector corresponding to each point.
  • the first point set data is input into the structure of the preset neural network
  • the set abstraction layer in the structure of the neural network processes the first point set data to obtain the first point set The point feature corresponding to each point in the data, and then input the point feature into the feature propagation layer in the structure of the neural network.
  • the feature propagation layer processes each point feature in the first point set data to obtain the first point Multiscale features of each point in the set data.
  • the preset noise may include at least one of random noise, Gaussian noise, or Gaussian white noise.
  • the selection of the preset noise may be determined according to actual conditions, and this embodiment is not limited.
  • the first displacement vector is used to represent the displacement change amount of each point in the first point set data in a certain direction.
  • the multi-scale feature and the preset noise may be used for both data.
  • Input to a preset neural network process the multi-scale features and preset noise through a fully connected layer in the neural network, and output a first displacement vector for each point in the first point set data.
  • the target point set data is used to represent the point set data on the surface of the target object after the shape transformation.
  • the point set data corresponding to the skeleton shape of the target object is transformed into the point set data corresponding to the complete shape of the target object, then the point set data is the target point set data.
  • the first point set data when the computer device processes the first point set data and obtains the first displacement vector corresponding to each point in the first point set data, the first point set data can be further The vector of each point and the first displacement vector corresponding to each point are subjected to an addition operation or a weighted operation to obtain an operation result, and the operation result is compared with the second point set data for analysis and other processing to obtain target point set data.
  • a preset loss calculation method may also be used to calculate the difference value between the calculation result and the second point set data, and then obtain the target point set data according to the difference value.
  • the computer device acquires the first point set data and the second point set data; the first point set data and the second point set data are used to represent the point data set on the outer surface of the target object; Structural parameters, processing the first point set data to obtain the multi-scale features of each point in the first point set data; structural parameters include the collection abstract layer parameters, feature propagation layer parameters and fully connected layer parameters; according to the multi-scale features and Preset noise, obtain the first displacement vector of each point in the first point set data; obtain the target point set data according to the first displacement vector, the first point set data and the second point set data; because the first displacement vector is the first The displacement vectors corresponding to the points in the point set data.
  • the points in the target point set data obtained from the first displacement vector, the first point set data, and the second point set data are the same as the first point set data.
  • Each point has a transformation relationship in displacement, and the shape of the point cloud corresponding to the point set data formed by the points with different displacements is different, so the processing method for point cloud data proposed in this application can Now the point cloud shape conversion.
  • FIG. 3 is a flowchart of an implementation manner of S104 in the embodiment of FIG. 2. This embodiment relates to a specific process of obtaining target point set data by a computer device. As shown in FIG. 3, step S104 "based on the displacement vector, the first "One point set data and second point set data obtain target point set data", including the following steps:
  • the vector of each point in the first point set data may be The displacement vector is added to obtain the first prediction point set data.
  • the preset geometric loss calculation method may include various loss functions, and various loss functions may be used to calculate the geometric loss between the second point set data and the first predicted point set data, so that the computer The device can determine whether the first predicted point set data and the second point set data are geometrically different according to the value of the geometric loss, and how much difference exists, and whether further processing of the first predicted point set data is required.
  • the preset structural parameters of the neural network can be adjusted according to the value of the geometric loss, and execution returns to S102 Steps and subsequent steps can further determine the target point set data.
  • the computer device obtains the first predicted point set data according to the displacement vector and the first point set data; according to the preset geometric loss calculation method, obtains the data between the second point set data and the first predicted point set data Geometric loss; geometric loss is used to measure the difference in geometry between the first predicted point set data and the second point set data; the target point set data is determined according to the geometric loss.
  • Geometric loss is used to measure the difference in geometry between the first predicted point set data and the second point set data
  • the target point set data is determined according to the geometric loss.
  • S202 "acquiring the geometric loss between the second point set data and the first point set data according to a preset geometric loss calculation method” includes the following steps:
  • the preset geometric loss calculation method may include a shape matching loss function.
  • the shape matching loss function is used to measure the degree of matching between the first predicted point set data and the second point set data; the matching degree can be expressed by the shape matching loss value.
  • the first prediction point set data and the second point set data are substituted as variables into the shape matching loss function, and the shape matching loss value can be calculated.
  • the shape matching loss function may include the following expression (1):
  • Y represents the second point set data
  • p represents the point in the second predicted point set data
  • q represents the point in the first predicted point set data
  • the shape matching loss value corresponding to the geometric loss between the second point set data Y.
  • the preset geometric loss calculation method may include a density loss function.
  • the density loss function is used to measure the difference in local point density between the first predicted point set data and the second point set data.
  • the density difference can be expressed by the density difference loss value. The greater the density difference loss value, the greater the difference in local point density between the first predicted point set data and the second point set data; the smaller the density difference loss value, the The smaller the difference in local point density between the first predicted point set data and the second point set data.
  • the first prediction point set data and the second point set data are substituted as variables into the density loss function, and the density difference loss value can be calculated.
  • the density loss function may include the following expression (2):
  • N i (Y, p) represents the ith point closest to the point p in the Y point set, Indicates the i The point closest to the point p in the point set, k represents the number of points closest to the point p in the Y point set The number of points p closest to the point set.
  • d (p, N i (Y, p)) represents the Euclidean distance between point p and point Y closest to point p; Means p and Euclidean distance between points closest to point p in the set; Represents the first prediction point set data The density loss value corresponding to the geometric loss between the second point set data Y.
  • the preset geometric loss calculation method may include one loss function or two loss functions among the shape matching loss function and the density loss function.
  • the computer device may determine the geometric loss according to the shape matching loss value, and the geometric loss may be expressed by the above relationship (1).
  • the preset geometric loss calculation method only includes the density loss function, the computer device may determine the geometric loss according to the density loss value, and the geometric loss may be expressed by the above relationship (2).
  • the geometric loss can be expressed by the following relationship (3) or its variant:
  • the shape matching loss value corresponding to the geometric loss between the second point set data Y
  • the density loss value corresponding to the geometric loss between the second point set data Y, L X ⁇ Y (D) represents the value of the geometric loss when the first point set data X is converted to the second point set data Y.
  • D represents the training set
  • represents the default parameter, generally takes 1, other parameters are the same as above.
  • FIG. 5 is a flowchart of an implementation manner of S203 in the embodiment of FIG. 3. Based on the above embodiment, as shown in FIG. 5, step S203 "determine target point set data based on geometric loss" includes the following steps:
  • the preset threshold may be set by the user as a self-defined evaluation index for judging whether the first prediction point set data can meet the user's expected result.
  • the geometric loss calculated by the computer device is less than a preset threshold, it can be determined that the first predicted point set data corresponding to the geometric loss conforms to the user's expected result, and then the first predicted point set data is further determined as Target point set data.
  • the processing may include adjusting the preset nerve The structural parameters of the network, and then return to the aforementioned step S102 according to the adjusted structural parameters, and start to perform step S102 and the subsequent steps until the computer device calculates the geometry between the second point set data and the first predicted point set data Until the loss is less than the preset threshold, it is determined that the first predicted point set data is the target point set data.
  • the first predicted point set data is determined to be the target point set data; if the geometric loss is not less than the preset threshold, the structural parameters are adjusted, and the execution of the adjusted structural parameters is returned to.
  • FIG. 6 is a flowchart of a method for processing point cloud data based on a neural network according to an embodiment.
  • This embodiment relates to the process of processing the first displacement vector after the aforementioned step S103 "Acquiring the first displacement vector of each point in the first point set data according to the multi-scale features and preset noise".
  • the method includes the following steps:
  • the preset cross normalization calculation method is used to calculate the normalization loss between the first displacement vector and the second displacement vector, so that the computer device can determine the first displacement vector according to the value of the normalization loss Whether it is parallel to the second displacement vector, and how much there is a difference in parallelism, whether it is necessary to further process the first displacement vector and the second displacement vector. For example, the larger the value of the normalization loss, the lower the parallelism between the first displacement vector and the second displacement vector, and the smaller the value of the normalization loss, the more parallelism between the first displacement vector and the second displacement vector high.
  • the preset cross normalization calculation method may include a loss function, and the loss function may be expressed by the following relationship (4) or its modified relationship:
  • I X (p) represents the first displacement vector corresponding to the p point in the X point set
  • I Y (q) represents the second displacement vector corresponding to the q point in the Y point set
  • L reg (X, Y) represents the first displacement
  • the normalized loss value between the vector and the second displacement vector, d ([p, p + I X (p)], [q + I Y (q), q]) represents the vector [p, p + I X ( p)] and the Euclidean distance between [q + I Y (q), q].
  • the preset structural parameters of the neural network can be adjusted according to the value of the normalized loss, starting from step S102 It is executed to update the first displacement vector and obtain the third displacement vector.
  • the computer device when the computer device acquires the first displacement vector according to the first point set data and the second displacement vector, the normalization between the first displacement vector and the second displacement vector is calculated Loss, and then measure the parallelism between the first displacement vector and the second displacement vector according to the obtained normalized loss.
  • the parallelism If the parallelism is high, update the first displacement vector to obtain the third displacement vector, and then obtain the target point set data based on the third displacement vector, the first point set data, and the second point set data; if the parallelism is low, then Adjust the structural parameters of the preset neural network, and then return to the aforementioned step S102 according to the adjusted structural parameters, and start to perform step S102 and the subsequent steps until the first displacement vector and the second displacement vector calculated by the computer device
  • the parallelism can meet the needs of users.
  • the normalized loss between the first displacement vector and the second displacement vector is obtained according to a preset cross normalization calculation method;
  • the second displacement vector is the displacement vector of each point of the second point set data;
  • the normalization loss is used to measure the parallelism between the first displacement vector and the second displacement vector; update the first displacement vector according to the normalization loss to obtain a third displacement vector; according to the third displacement vector, the first The point set data and the second point set data obtain target point set data. Since the third displacement is the updated first displacement vector, the accuracy of the third displacement vector is high, and the accuracy of the target point set data determined according to the third displacement vector, the first point set data, and the second point set data is high .
  • this embodiment may further include: calculating the preset total network loss of the neural network according to the geometric loss term and the regular cross loss term, the The total network loss is used to measure the conversion accuracy of the first point set data and the second point set data when the preset neural network is used to process the first point set data and the second point set data.
  • the computer device obtains the total network loss, it will adjust the preset structural parameters of the neural network according to the total network loss, and then obtain the first prediction point set data with higher accuracy or the second prediction point set data with higher accuracy.
  • the above total network loss can be expressed by the following relationship (5) or its deformation relationship:
  • L loss represents the total network loss
  • L X ⁇ Y (D) represents the geometric loss of neural network branch 1
  • L Y ⁇ X (D) represents the geometric loss of neural network branch 2
  • L reg (X, Y) represents the normalization loss
  • represents the balance parameter, and its default value is 0.1.
  • steps in the flowcharts of FIGS. 2-6 are displayed in order according to the arrows, the steps are not necessarily executed in the order indicated by the arrows. Unless clearly stated in this article, the execution of these steps is not strictly limited in order, and these steps can be executed in other orders. Moreover, at least some of the steps in FIGS. 2-6 may include multiple sub-steps or multiple stages. These sub-steps or stages are not necessarily executed at the same time, but may be executed at different times. These sub-steps or stages The order of execution is not necessarily sequential.
  • a computer device is provided.
  • the computer device may be a server, and its internal structure may be as shown in FIG. 7.
  • the computer equipment includes a processor, a memory, a network interface, a display screen, and an input device connected through a system bus.
  • the processor of the computer device is used to provide computing and control capabilities.
  • the memory of the computer device includes a non-volatile storage medium and an internal memory.
  • the non-volatile storage medium stores an operating system and computer programs.
  • the internal memory provides an environment for the operation of the operating system and computer programs in the non-volatile storage medium.
  • the network interface of the computer device is used to communicate with external terminals through a network connection.
  • the display screen of the computer device may be a liquid crystal display screen or an electronic ink display screen
  • the input device of the computer device may be a touch layer covered on the display screen, or may be a button, a trackball or a touchpad provided on the computer device housing , Can also be an external keyboard, touchpad or mouse.
  • FIG. 7 is only a block diagram of a part of the structure related to the solution of the present application, and does not constitute a limitation on the computer device to which the solution of the present application is applied.
  • the specific computer device may Include more or less components than shown in the figure, or combine certain components, or have a different arrangement of components.
  • a computer device which includes a memory and a processor.
  • a computer program is stored in the memory, and the processor implements the following steps when the processor executes the computer program:
  • first point set data and second point set data respectively represent point data sets of the outer surface of the target object under different shapes
  • the structural parameters include the set abstraction layer parameters and feature propagation Layer parameters and fully connected layer parameters;
  • a computer-readable storage medium is provided on which a computer program is stored.
  • the computer program is executed by a processor, the following steps are implemented:
  • first point set data and second point set data respectively represent point data sets of the outer surface of the target object under different shapes
  • the structural parameters include the set abstraction layer parameters and feature propagation Layer parameters and fully connected layer parameters;
  • Non-volatile memory may include read-only memory (ROM), programmable ROM (PROM), electrically programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM), or flash memory.
  • Volatile memory can include random access memory (RAM) or external cache memory.
  • RAM is available in many forms, such as static RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), double data rate SDRAM (DDRSDRAM), enhanced SDRAM (ESDRAM), synchronous chain (Synchlink) DRAM (SLDRAM), memory bus (Rambus) direct RAM (RDRAM), direct memory bus dynamic RAM (DRDRAM), and memory bus dynamic RAM (RDRAM), etc.
  • SRAM static RAM
  • DRAM dynamic RAM
  • SDRAM synchronous DRAM
  • DDRSDRAM double data rate SDRAM
  • ESDRAM enhanced SDRAM
  • SLDRAM synchronous chain (Synchlink) DRAM
  • SLDRAM synchronous chain (Synchlink) DRAM
  • Rambus direct RAM
  • DRAM direct memory bus dynamic RAM
  • RDRAM memory bus dynamic RAM

Abstract

本发明涉及一种基于神经网络的点云数据的处理方法和设备。该方法包括:获取第一点集数据和第二点集数据;所述第一点集数据和所述第二点集数据分别表示目标物体在不同形状下外表面的点数据集合。采用预设的神经网络的结构参数,对所述第一点集数据进行处理,得到所述第一点集数据中每个点的多尺度特征;所述结构参数包括集合抽象层参数、特征传播层参数和全连接层参数;根据所述多尺度特征和预设噪声,获取所述第一点集数据中每个点的第一位移向量;根据所述第一位移向量、所述第一点集数据和所述第二点集数据获取目标点集数据。本申请提供的点云数据的处理方法可以实现点云的形状转换。

Description

基于神经网络的点云数据的处理方法和设备
相关申请的交叉引用
本发明要求于2018年10月12日提交中国专利局,申请号为2018111905922,申请名称为“基于神经网络的点云数据的处理方法、装置和设备”的中国专利申请的优先权,其全部内容通过引用结合在本发明中。
技术领域
本发明涉及人神经网络领域,尤其涉及一种基于神经网络的点云数据的处理方法和设备。
背景技术
点云数据是指扫描资料以点的形式记录,每一个点包含有三维坐标,有些可能含有位置信息、颜色信息或反射强度信息。而由点云数据集合形成的点云作为一种基本的形状表达形式,具有简洁、灵活,易获取等优点,因而在图像变换领域具有独特的优势及应用。近几年来,许多学者对点云进行了广泛而深入的研究。
目前,将神经网络应用于点云数据的处理工作有PointNet和PointNet++等,这两个工作均是通过提取点云中每个点的特征,使点云聚集从而转换成点云的局部特征或全局特征,根据点云的局部特征或全局特征实现点云的分类、分割。
但是,上述点云数据的处理方法不能实现点云的形状转换。
发明内容
基于此,有必要针对上述技术问题,提供一种能够实现点云的形状转换的基于神经网络的点云数据的处理方法和设备。
第一方面,一种基于神经网络的点云数据的处理方法,所述方法包括:
获取第一点集数据和第二点集数据;所述第一点集数据和所述第二点集数据分别表示目标物体在不同形状下外表面的点数据集合;
采用预设的神经网络的结构参数,对所述第一点集数据进行处理,得到所述第一点集数据中每个点的多尺度特征;所述结构参数包括集合抽象层参数、特征传播层参数和全连接层参数;
根据所述多尺度特征和预设噪声,获取所述第一点集数据中每个点的第一位移向量;
根据所述第一位移向量、所述第一点集数据和所述第二点集数据获取目标点集数据。
第二方面,本发明提供一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
获取第一点集数据和第二点集数据;所述第一点集数据和所述第二点集数据分别表示目标物体在不同形状下外表面的点数据集合;
采用预设的神经网络的结构参数,对所述第一点集数据进行处理,得到所述第一点集数据中每个点的多尺度特征;所述结构参数包括集合抽象层参数、特征传播层参数和全连接层参数;
根据所述多尺度特征和预设噪声,获取所述第一点集数据中每个点的第一位移向量;
根据所述第一位移向量、所述第一点集数据和所述第二点集数据获取目标点集数据。
第三方面,本发明提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
获取第一点集数据和第二点集数据;所述第一点集数据和所述第二点集数据分别表示目标物体在不同形状下外表面的点数据集合;
采用预设的神经网络的结构参数,对所述第一点集数据进行处理,得到所述第一点集数据中每个点的多尺度特征;所述结构参数包括集合抽象层参数、特征传播层参数和全连接层参数;
根据所述多尺度特征和预设噪声,获取所述第一点集数据中每个点的第一位移向量;
根据所述第一位移向量、所述第一点集数据和所述第二点集数据获取目标点集数据。
本申请提供的基于神经网络的点云数据的处理方法和设备,包括:获取第一点集数据和第二点集数据;第一点集数据和第二点集数据用于表示目标物体外表面的点数据集合;采用预设的神经网络的结构参数,对第一点集数据进行处理,得到第一点集数据中每个点的多尺度特征;结构参数包括集合抽象层参数、特征传播层参数和全连接层参数;根据多尺度特征和预设噪声,获取第一点集数据中每个点的第一位移向量;根据第一位移向量、第一点集数据和第二点集数据获取目标点集数据;由于第一位移向量为第一点集数据中各点对应的位移向量,因此,根据第一位移向量、第一点集数据和第二点集数据获取到的目标点集数据中的各点,与第一点集数据中的个各点存在位移上的变换关系,且不同位移的点形成的点集数据对应的点云的形状不同,所以,本申请提出的对点云数据的处理方法可以实现点云的形状转换。
附图说明
图1为一个实施例提供的应用场景示意图;
图2为一个实施例提供的一种基于神经网络的点云数据的处理方法的流程图;
图3为图2实施例中的S104的一种实现方式的流程图;
图4为一个实施例提供的一种基于神经网络的点云数据的处理方法的流程图;
图5为图3实施例中的S203的一种实现方式的流程图;
图6为一个实施例提供的一种基于神经网络的点云数据的处理方法的流程图;
图7为一个实施例提供的计算机设备的内部结构示意图。
具体实施例方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅用以解释本申请,并不用于限定本申请。
本申请实施例提供的基于神经网络的点云数据的处理方法,可以适用于如图1所示的神经网络系统。该系统包括神经网络分支1和神经网络分支2,神经网络分支1和神经网络分支2各包括集合抽象层、特征传播层、全连接层和加法器。其中,集合抽象层用于获取输入的数据集对应的点特征;特征传播层用于输出数据集中每个点的多尺度特征;全连接层用于将数据集中的每个点的多尺度特征与噪声向量进行处理,输出数据集中的每个点对应的位移向量;加法运算器用于将数据集与该数据集中的每个点对应的位移向量进行加法运算,输出预测数据集。可选地,神经网络系统还可以包括几何损失计算项、正规交叉损失计算项,几何损失计算项用于计算两个数据集之间的几何差异;正规交叉损失计算项用于计算两个位移向量之间的平行度。
下面以具体地实施例对本发明的技术方案进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。
图2为一个实施例提供的一种基于神经网络的点云数据的处理方法的流程图。本实施例涉及的是利用神经网络算法对点云数据进行处理,以实现两个目标物体的几何形状能够相互转换的过程。该方法的执行主体为计算机设备,如图2所示,该方法包括以下步骤:
S101、获取第一点集数据和第二点集数据;第一点集数据和第二点集数据分别表示目标物体在不同形状下外表面的点数据集合。
其中,第一点集数据和第二点集数据均可以包括点云数据,该点云数据是指在三维坐标系统中的一组向量的集合,这些向量通常以(x,y,z)三维坐标的形式表示,主要用来代表目标物体的外表面形状。例如,第一点集数据可以是一个飞机模型的骨架形状下的表面点集数据,则相应的第二点集数据就可以是该飞机模型的完整形状下的表面点集数据;第一点集数据还可以是一个飞机模型的二维轮廓形状下的表面点集数据,则相应的第二点集数据就可以是该飞机模型的三维轮廓形状下的表面点集数据。
在本实施例中,第一点集数据和第二点集数据均可以通过3D扫描设备扫描目标物体产生,这些扫描设备可以自动的采集目标物体表面上的点的信息,然后将这些点的信息以某种数据文件的形式输出,形成第一点集数据或第二点集数据。再将第一点集数据或第二点集数据传输给与这些扫描设备连接的计算机设备,从而使计算机设备能够获取到这些扫描设备输出的第一点集数据或第二点集数据。例如,激光雷达、立体摄像头、越渡时间相机等扫描设备均可以实现对目标物体表面的点的信息的采集,再将采集到的第一点集数据或者第二点集数据传输到计算机设备中,以使计算机设备能够进行下一步的第一点集数据或者第二点集数据的处理。
可选地,计算机设备也可以从网络上直接下载,或者从数据库中获取,得到与一个目标物体相应的第一点集数据或者第二点集数据。计算机设备获取第一点集数据或者第二点集数据的方式,可以根据实际情况确定,本实施例对此不做限制。
S102、采用预设的神经网络的结构参数,对第一点集数据进行处理,得到第一点集数据中每个点的多尺度特征;结构参数包括集合抽象层参数、特征传播层参数和全连接层参数。
在本实施例中,该预设的神经网络的结构中可以包括多种层结构,如图1中所示,该预设的神经网络的结构中可以包括集合抽象层、特征传播层、以及全连接层等,且各层相互连接,每一层级均预先设置不同的参数,不同的参数用于对第一点集数据进行不同的处理。可选地,集合抽象层用于根据输入的第一点集数据或者第二点集数据,输出与第一点集数据中的各点对应的点特征,或者输出与第二点集数据中的各点对应的点特征;特征传播层用于根据与之连接的集合抽象层输出的各点特征,输出每个点的多尺度特征;全连接层用于根据与之连接的特征传播层输出的每个点的多尺度特征,输出每个点对应的位移向量。
在本实施例中,将第一点集数据输入到预设的神经网络的结构中,该神经网络的结构中的集合抽象层对该第一点集数据进行处理,可以得到该第一点集数据中的各点对应的点特征,再将该点特征输入到神经网络的结构中的特征传播层,特征传播层对该第一点集数据中的各点特征进行处理,可以得到第一点集数据中的每个点的多尺度特征。
S103、根据多尺度特征和预设噪声,获取第一点集数据中每个点的第一位移向量。
其中,预设噪声可以包括随机噪声、高斯噪声、或高斯白噪声等中的至少一种噪声,预设噪声的选择可以根据实际情况确定,对此本实施例不做限制。第一位移向量用于表示第一点集数据中的各点在某一方向上的位移变化量。
本实施例中,当计算机设备对第一点集数据进行处理,得到第一点集数据中的每个点的多尺度特征时,可以将该多尺度特征和预设噪声,这两种数据都输入到预设的神经网络中,通过该神经网络中的全连接层对该多尺度特征和预设噪声进行处理,输出得到第一点集数据中的每个点的第一位移向量。
S104、根据第一位移向量、第一点集数据和第二点集数据获取目标点集数据。
其中,目标点集数据用于表示目标物体表面的点集数据经过形状变换后的点集数据。例如,目标物体的骨架形状对应的点集数据,经过形状变换后,形成该目标物体的完整形状对应的点集数据,则该点集数据为目标点集数据。
在本实施例中,当计算机设备对第一点集数据进行处理,获取到该第一点集数据中的每个点对应的第一位移向量时,可以进一步的将第一点集数据中的每个点的向量与每个点对应的第一位移向量进行加法运算或加权运算等,得到运算结果,将该运算结果和第二点集数据进行比较分析等处理,得到目标点集数据。可选地,也可以采用预设的损失计算方法,计算运算结果和第二点集数据之间的差异值,进而根据该差异值得到目标点集数据。
上述实施例中,计算机设备获取第一点集数据和第二点集数据;第一点集数据和第二点集数据用于表示目标物体外表面的点数据集合;采用预设的神经网络的结构参数,对第一点集数据进行处理,得到第一点集数据中每个点的多尺度特征;结构参数包括集合抽象层参数、特征传播层参数和全连接层参数;根据多尺度特征和预设噪声,获取第一点集数据中每个点的第一位移向量;根据第一位移向量、第一点集数据和第二点集数据获取目标点集数据;由于第一位移向量为第一点集数据中各点对应的位移向量,因此,根据第一位移向量、第一点集数据和第二点集数据获取到的目标点集数据中的各点,与第一点集数据中的个各点存在位移上的变换关系,且不同位移的点形成的点集数据对应的点云的形状不同,所以,本申请提出的对点云数据的处理方法可以实现点云的形状转换。
图3为图2实施例中的S104的一种实现方式的流程图,本实施例涉及的是计算机设备获取目标点集数据的具体过程,如图3所示,步骤S104“根据位移向量、第一点集数据和第二点集数据获取目标点集数据”,包括以下步骤:
S201、根据第一位移向量和第一点集数据,获取第一预测点集数据。
本实施例中,当计算机设备获取到第一点集数据中的每个点对应的第一位移向量时,可以将第一点集数据中的每个点的向量与每个点对应的第一位移向量进行加法运算,得到第一预测点集数据。
S202、根据预设的几何损失计算方法,获取第二点集数据和第一预测点集数据之间的几何损失;几何损失用于衡量第一预测点集数据和第二点集数据在几何形状上的差异。
本实施例中,预设的几何损失计算方法可以包括各种损失函数,而各种损失函数均可以用于计算第二点集数据和第一预测点集数据之间的几何损失,以使计算机设备可以根据该几何损失的值来判断第一预测点集数据与第二点集数据在几何形状上是否存在差异,且存在多大的差异,是否需要对第一预测点集数据进一步的处理。
S203、根据几何损失确定目标点集数据。
本实施例中,当计算机设备计算得到第二点集数据和第一预测点集数据之间的几何损失时,可以根据该几何损失的值来调整预设的神经网络的结构参数,返回执行S102步骤以及之后的步骤,就可以进一步的确定目标点集数据。
上述实施例中,计算机设备根据位移向量和第一点集数据,获取第一预测点集数据;根据预设的几何损失计算方法,获取第二点集数据和第一预测点集数据之间的几何损失;几何损失用于衡量第一预测点集数据和第二点集数据在几何形状上的差异;根据几何损失确定目标点集数据。在该方法中,由于几何损失用于衡量第一预测点集数据和第二点集数据在几何形状上的差异,而根据该差异确定目标点集数据,可以使目标点集数据的精度较高。
可选地,在其中一个实施例中,如图4所示,S202“根据预设的几何损失计算方法获取第二点集数据和第一点集数据之间的几何损失”,包括以下步骤:
S301、根据形状匹配损失函数、第二点集数据和第一预测点集数据,计算形状匹配损 失值。
本实施例中,可选地,预设的几何损失计算方法可以包括形状匹配损失函数。形状匹配损失函数用于衡量第一预测点集数据与第二点集数据之间的匹配程度;匹配程度可以用形状匹配损失值表示,形状匹配损失值越大,表示匹配程度越低,即第一预测点集数据与第二点集数据越不匹配;形状匹配损失值越小,表示匹配程度越高,即第一预测点集数据与第二点集数据越匹配。将第一预测点集数据和第二点集数据作为变量代入到形状匹配损失函数中,可以计算得到形状匹配损失值。
可选地,在其中一个实施例中,所述形状匹配损失函数可以包括如下表达式(1):
Figure PCTCN2018117126-appb-000001
上式中,Y表示所述第二点集数据,
Figure PCTCN2018117126-appb-000002
表示第一预测点集数据,p表示第二点集数据中的点,q表示第一预测点集数据中的点,
Figure PCTCN2018117126-appb-000003
表示p点到q点之间的欧式距离,
Figure PCTCN2018117126-appb-000004
表示第一预测点集数据
Figure PCTCN2018117126-appb-000005
与第二点集数据Y之间的几何损失对应的形状匹配损失值。
S302、根据密度损失函数、第二点集数据和第一预测点集数据,计算密度损失值。
本实施例中,可选地,预设的几何损失计算方法可以包括密度损失函数。密度损失函数用于度量第一预测点集数据与第二点集数据之间的局部点密度的差异。密度的差异可以用密度差异损失值表示,密度差异损失值越大,表示第一预测点集数据与第二点集数据之间的局部点密度的差异越大;密度差异损失值越小,表示第一预测点集数据与第二点集数据之间的局部点密度的差异越小。将第一预测点集数据和第二点集数据作为变量代入到密度损失函数中,可以计算得到密度差异损失值。
可选地,在其中一个实施例中,所述密度损失函数可以包括如下表达式(2):
Figure PCTCN2018117126-appb-000006
上式中,N i(Y,p)表示第i个离Y点集中的点p最近的点,
Figure PCTCN2018117126-appb-000007
表示第i个离
Figure PCTCN2018117126-appb-000008
点集中的点p最近的点,k表示离Y点集中的点p最近的点的个数或者离
Figure PCTCN2018117126-appb-000009
点集中的点p最近的点的个数。d(p,N i(Y,p))表示p点和Y点集中离p点最近的点之间的欧式距离;
Figure PCTCN2018117126-appb-000010
表示p点和
Figure PCTCN2018117126-appb-000011
点集中离p点最近的点之间的欧式距离;
Figure PCTCN2018117126-appb-000012
表示第一预测点集数据
Figure PCTCN2018117126-appb-000013
与第二点集数据Y之间的几何损失对应的密度损失值。
S303、根据形状匹配损失值和密度损失值,确定几何损失。
本事实例中,预设的几何损失计算方法可以包括形状匹配损失函数和密度损失函数中的一种损失函数或者两种损失函数。可选地,当预设的几何损失计算方法只包括形状匹配损失函数时,计算机设备可以根据形状匹配损失值确定几何损失,几何损失可以用上述关系式(1)表达。可选地,当预设的几何损失计算方法只包括密度损失函数时,计算机设备可以根据密度损失值确定几何损失,几何损失可以用上述关系式(2)表达。
可选地,当预设的几何损失计算方法包括形状匹配损失函数和密度损失函数时,几何损失可以用如下关系式(3)或其变形式表达:
Figure PCTCN2018117126-appb-000014
上式中,
Figure PCTCN2018117126-appb-000015
表示第一预测点集数据
Figure PCTCN2018117126-appb-000016
与第二点集数据Y之间的几何损失对应的形状匹配损失值;
Figure PCTCN2018117126-appb-000017
表示第一预测点集数据
Figure PCTCN2018117126-appb-000018
与第二点集数据Y之间的几何损失对应的密度损失值,L X→Y(D)表示第一点集数据X转换到第二点集数据Y时的几何损失的值。D表示训练集,λ表示默认参数,一般取1,其它参数同上。
图5为图3实施例中的S203的一种实现方式的流程图,在上述实施例的基础上,如图5所示,步骤S203“根据几何损失确定目标点集数据”,包括以下步骤:
S401、若几何损失小于预设阈值,则确定第一预测点集数据为目标点集数据。
本实施例中,预设阈值可以由用户自定义设置,作为判断第一预测点集数据是否能够满足用户的预期结果的评价指标。可选地,若计算机设备计算得到的几何损失小于预设阈值,则可以判断与该几何损失对应的第一预测点集数据符合用户的预期结果,则进一步的将第一预测点集数据确定为目标点集数据。
S402、若几何损失不小于预设阈值,则调整结构参数,并返回执行采用调整后的结构参数,对第一点集数据进行处理,得到第一点集数据中每个点的多尺度特征的步骤。
可选地,若几何损失不小于预设阈值,则可以判断与该几何损失对应的第一预测点集数据不符合用户的预期结果,需要进一步的处理,该处理过程可以包括调整预设的神经网络的结构参数,再根据调整后的结构参数返回前述的步骤S102,并开始执行步骤S102以及其之后的步骤,直到计算机设备计算得到第二点集数据和第一预测点集数据之间的几何损失小于预设阈值为止,则确定第一预测点集数据为目标点集数据。
上述实施例中,若几何损失小于预设阈值,则确定第一预测点集数据为目标点集数据;若几何损失不小于预设阈值,则调整结构参数,并返回执行采用调整后的结构参数,对第一点集数据进行处理,得到第一点集数据中每个点的多尺度特征的步骤。由于该过程是一个迭代计算几何损失,使几何损失小于预设阈值,从而确定第一预测点集数据的过程,因此,由该过程确定出的第一预测点集数据的精度较高。
图6为一个实施例提供的一种基于神经网络的点云数据的处理方法的流程图。该实施例涉及到的是在前述步骤S103“根据多尺度特征和预设噪声,获取第一点集数据中每个点的第一位移向量”之后,对第一位移向量进行处理的过程。如图6所示,该方法包括以下步骤:
S501、根据预设的交叉正规化计算方法,获取第一位移向量和第二位移向量之间的正规化损失;第二位移向量为第二点集数据每个点的位移向量;正规化损失用于衡量第一位移向量和第二位移向量之间的平行度。
本实施例中,预设的交叉正规化计算方法用于计算第一位移向量和第二位移向量之间 的正规化损失,以使计算机设备可以根据该正规化损失的值来判断第一位移向量与第二位移向量是否平行,且存在多大的平行度差异,是否需要对第一位移向量与第二位移向量进行进一步的处理。例如,正规化损失的值越大,第一位移向量和第二位移向量之间的平行度越低,正规化损失的值越小,第一位移向量和第二位移向量之间的平行度越高。
可选地,在其中一个实施例中,所述预设的交叉正规化计算方法可以包括一个损失函数,该损失函数可以采用以下关系式(4)或其变形关系式表达:
Figure PCTCN2018117126-appb-000019
其中,I X(p)表示X点集中的p点对应的第一位移向量,I Y(q)表示Y点集中q点对应的第二位移向量,L reg(X,Y)表示第一位移向量与第二位移向量之间的正规化损失值,d([p,p+I X(p)],[q+I Y(q),q])表示向量[p,p+I X(p)]与[q+I Y(q),q]之间的欧氏距离。
S502、根据正规化损失更新第一位移向量,获得第三位移向量。
本实施例中,当计算机设备计算得到第一位移向量与第二位移向量之间的正规化损失时,可以根据该正规化损失的值来调整预设的神经网络的结构参数,从S102步骤开始执行,从而更新第一位移向量,获得第三位移向量。
S503、则根据第一位移向量、第一点集数据和第二点集数据获取目标点集数据,包括:根据第三位移向量、第一点集数据和第二点集数据获取目标点集数据。
本实施例中,当计算机设备根据第一点集数据获取到第一位移向量,和第二点集数据获取到第二位移向量时,计算第一位移向量和第二位移向量之间的正规化损失,再根据得到的该正规化损失衡量第一位移向量和第二位移向量之间的平行度。若平行度较高,则更新第一位移向量,获取第三位移向量,然后根据第三位移向量、第一点集数据和第二点集数据获取目标点集数据;若平行度较低,则调整预设的神经网络的结构参数,再根据调整后的结构参数返回前述的步骤S102,并开始执行步骤S102以及其之后的步骤,直到计算机设备计算得到的第一位移向量和第二位移向量之间的平行度能够满足用户的需求为止。
上述实施例中,根据预设的交叉正规化计算方法,获取第一位移向量和第二位移向量之间的正规化损失;第二位移向量为第二点集数据每个点的位移向量;所述正规化损失用于衡量所述第一位移向量和所述第二位移向量之间的平行性;根据正规化损失更新第一位移向量,获得第三位移向量;根据第三位移向量、第一点集数据和第二点集数据获取目标点集数据。由于第三位移是更新后的第一位移向量,所以第三位移向量的精度较高,则根据第三位移向量、第一点集数据和第二点集数据确定的目标点集数据精度较高。
需要说明的是,当计算机设备计算得到几何损失项、正规交叉损失项时,本实施例还可以包括:根据几何损失项和正规交叉损失项,计算得到预设的神经网络的总网络损失,该总网络损失用于衡量利用预设的神经网络对第一点集数据和第二点集数据进行处理时,第一点集数据的转换精度和第二点集数据的转换精度。当计算机设备获取到总网络损失时,会根据该总网络损失调整预设的神经网络的结构参数,进而得到精度较高的第一预测点集数据或精度较高的第二预测点集数据。
可选地,当在如图1所示的应用场景下,上述总网络损失可以用如下关系式(5)或者其变形关系式表达:
Figure PCTCN2018117126-appb-000020
上式中,L loss表示总网络损失,L X→Y(D)表示神经网络分支1的几何损失,L Y→X(D)表示神经网络分支2的几何损失,L reg(X,Y)表示正规化损失,μ表示平衡参数,其默认值为0.1。
应该理解的是,虽然图2-6的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2-6中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图7所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。该计算机程序被处理器执行时以实现一种基于神经网络的点云数据的处理方法。。
本领域技术人员可以理解,图7中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:
获取第一点集数据和第二点集数据;所述第一点集数据和所述第二点集数据分别表示目标物体在不同形状下外表面的点数据集合;
采用预设的神经网络的结构参数,对所述第一点集数据进行处理,得到所述第一点集数据中每个点的多尺度特征;所述结构参数包括集合抽象层参数、特征传播层参数和全连接层参数;
根据所述多尺度特征和预设噪声,获取所述第一点集数据中每个点的第一位移向量;
根据所述第一位移向量、所述第一点集数据和所述第二点集数据获取目标点集数据。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机 程序被处理器执行时实现以下步骤:
获取第一点集数据和第二点集数据;所述第一点集数据和所述第二点集数据分别表示目标物体在不同形状下外表面的点数据集合;
采用预设的神经网络的结构参数,对所述第一点集数据进行处理,得到所述第一点集数据中每个点的多尺度特征;所述结构参数包括集合抽象层参数、特征传播层参数和全连接层参数;
根据所述多尺度特征和预设噪声,获取所述第一点集数据中每个点的第一位移向量;
根据所述第一位移向量、所述第一点集数据和所述第二点集数据获取目标点集数据。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

Claims (9)

  1. 一种基于神经网络的点云数据的处理方法,其特征在于,包括:
    获取第一点集数据和第二点集数据;所述第一点集数据和所述第二点集数据分别表示目标物体在不同形状下外表面的点数据集合;
    采用预设的神经网络的结构参数,对所述第一点集数据进行处理,得到所述第一点集数据中每个点的多尺度特征;所述结构参数包括集合抽象层参数、特征传播层参数和全连接层参数;
    根据所述多尺度特征和预设噪声,获取所述第一点集数据中每个点的第一位移向量;
    根据所述第一位移向量、所述第一点集数据和所述第二点集数据获取目标点集数据。
  2. 根据权利要求1所述的方法,其特征在于,所述根据所述第一位移向量、所述第一点集数据和所述第二点集数据获取目标点集数据,包括:
    根据所述第一位移向量和所述第一点集数据,获取第一预测点集数据;
    根据预设的几何损失计算方法,获取所述第二点集数据和所述第一预测点集数据之间的几何损失;所述几何损失用于衡量所述第一预测点集数据和所述第二点集数据在几何形状上的差异;
    根据所述几何损失确定所述目标点集数据。
  3. 根据权利要求2所述的方法,其特征在于,根据所述几何损失确定所述目标点集数据,包括:
    若所述几何损失小于预设阈值,则确定第一预测点集数据为所述目标点集数据;
    若所述几何损失不小于预设阈值,则调整所述结构参数,并返回执行采用调整后的结构参数,对所述第一点集数据进行处理,得到所述第一点集数据中每个点的多尺度特征的步骤。
  4. 根据权利要求2或3所述的方法,其特征在于,所述根据预设的几何损失计算方法,获取所述第二点集数据和所述第一点集数据之间的几何损失,包括:
    根据形状匹配损失函数、所述第二点集数据和所述第一预测点集数据,计算形状匹配损失值;
    根据密度损失函数、所述第二点集数据和所述第一预测点集数据,计算密度损失值;
    根据所述形状匹配损失值和所述密度损失值,确定所述几何损失。
  5. 根据权利要求4所述的方法,所述形状匹配损失函数包括:
    Figure PCTCN2018117126-appb-100001
    其中,Y表示所述第二点集数据,
    Figure PCTCN2018117126-appb-100002
    表示第一预测点集数据,p表示第二点集数据中的点,q表示第一预测点集数据中的点,d(p,q)表示p点到q点之间的欧式距离,
    Figure PCTCN2018117126-appb-100003
    表示第一预测点集数据
    Figure PCTCN2018117126-appb-100004
    与第二点集数据Y之间的几何损失对应的形状匹配损失值;
    所述密度损失函数包括:
    Figure PCTCN2018117126-appb-100005
    其中,N i(Y,p)表示第i个离Y点集中的点p最近的点,
    Figure PCTCN2018117126-appb-100006
    表示第i个离
    Figure PCTCN2018117126-appb-100007
    点集中的点p最近的点,k表示离Y点集中的点p最近的点的个数或者离
    Figure PCTCN2018117126-appb-100008
    点集中的点p最近的点的个数,d(p,N i(Y,p))表示p点和Y点集中离p点最近的点之间的欧式距离;
    Figure PCTCN2018117126-appb-100009
    表示p点和
    Figure PCTCN2018117126-appb-100010
    点集中离p点最近的点之间的欧式距离;
    Figure PCTCN2018117126-appb-100011
    表示第一预测点集数据
    Figure PCTCN2018117126-appb-100012
    与第二点集数据Y之间的几何损失对应的密度损失值。
  6. 根据权利要求1所述的方法,其特征在于,所述根据所述多尺度特征和预设噪声,获取所述第一点集数据中每个点的位移向量之后,还包括:
    根据预设的交叉正规化计算方法,获取所述第一位移向量和第二位移向量之间的正规化损失;所述第二位移向量为所述第二点集数据每个点的位移向量;所述正规化损失用于衡量所述第一位移向量和所述第二位移向量之间的平行性;
    根据所述正规化损失更新第一位移向量,获得第三位移向量;
    则所述根据所述第一位移向量、所述第一点集数据和所述第二点集数据获取目标点集数据,包括:
    根据所述第三位移向量、所述第一点集数据和所述第二点集数据获取目标点集数据。
  7. 根据权利要求6所述的方法,其特征在于,所述交叉正规化计算方法包括:
    Figure PCTCN2018117126-appb-100013
    其中,I X(p)表示X点集中的p点对应的第一位移向量,I Y(q)表示Y点集中q点对应的第二位移向量,L reg(X,Y)表示第一位移向量与第二位移向量之间的正规化损失值,d([p,p+I X(p)],[q+I Y(q),q])表示向量[p,p+I X(p)]与[q+I Y(q),q]之间的欧氏距离。
  8. 一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7中任一项所述方法的步骤。
  9. 一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法的步骤。
PCT/CN2018/117126 2018-10-12 2018-11-23 基于神经网络的点云数据的处理方法和设备 WO2020073444A1 (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US16/487,319 US11270519B2 (en) 2018-10-12 2018-11-23 Method of processing point cloud data based on neural network

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201811190592.2 2018-10-12
CN201811190592.2A CN109544700A (zh) 2018-10-12 2018-10-12 基于神经网络的点云数据的处理方法、装置和设备

Publications (1)

Publication Number Publication Date
WO2020073444A1 true WO2020073444A1 (zh) 2020-04-16

Family

ID=65843753

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2018/117126 WO2020073444A1 (zh) 2018-10-12 2018-11-23 基于神经网络的点云数据的处理方法和设备

Country Status (3)

Country Link
US (1) US11270519B2 (zh)
CN (1) CN109544700A (zh)
WO (1) WO2020073444A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11270519B2 (en) * 2018-10-12 2022-03-08 Shenzhen University Method of processing point cloud data based on neural network

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11295517B2 (en) * 2019-11-15 2022-04-05 Waymo Llc Generating realistic point clouds
CN111428855B (zh) * 2020-02-25 2023-11-14 北京理工大学 一种端到端的点云深度学习网络模型和训练方法
CN111461194B (zh) * 2020-03-27 2024-03-12 广州小鹏汽车科技有限公司 点云处理方法及装置、行驶控制方法、电子装置和车辆
CN113205531B (zh) * 2021-04-30 2024-03-08 北京云圣智能科技有限责任公司 三维点云分割方法、装置及服务器
CN114048845B (zh) * 2022-01-14 2022-06-03 深圳大学 点云修复方法、装置、计算机设备和存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150154795A1 (en) * 2012-05-23 2015-06-04 Google Inc. Creating a mesh from a sparse structure-from-motion point cloud using co-visibility of points
CN105809118A (zh) * 2016-03-03 2016-07-27 重庆中科云丛科技有限公司 三维目标识别方法及装置
CN107292234A (zh) * 2017-05-17 2017-10-24 南京邮电大学 一种基于信息边缘和多模态特征的室内场景布局估计方法
CN108230329A (zh) * 2017-12-18 2018-06-29 孙颖 基于多尺度卷积神经网络的语义分割方法
CN108596961A (zh) * 2018-04-17 2018-09-28 浙江工业大学 基于三维卷积神经网络的点云配准方法

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6701006B2 (en) * 2002-06-26 2004-03-02 Nextengine, Inc. Apparatus and method for point cloud assembly
US9135502B2 (en) * 2009-05-11 2015-09-15 Universitat Zu Lubeck Method for the real-time-capable, computer-assisted analysis of an image sequence containing a variable pose
EP3384428B1 (en) * 2015-12-04 2023-07-26 Autodesk, Inc. Keypoint-based point-pair-feature for scalable automatic global registration of large rgb-d scans
CN109544700A (zh) * 2018-10-12 2019-03-29 深圳大学 基于神经网络的点云数据的处理方法、装置和设备

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150154795A1 (en) * 2012-05-23 2015-06-04 Google Inc. Creating a mesh from a sparse structure-from-motion point cloud using co-visibility of points
CN105809118A (zh) * 2016-03-03 2016-07-27 重庆中科云丛科技有限公司 三维目标识别方法及装置
CN107292234A (zh) * 2017-05-17 2017-10-24 南京邮电大学 一种基于信息边缘和多模态特征的室内场景布局估计方法
CN108230329A (zh) * 2017-12-18 2018-06-29 孙颖 基于多尺度卷积神经网络的语义分割方法
CN108596961A (zh) * 2018-04-17 2018-09-28 浙江工业大学 基于三维卷积神经网络的点云配准方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11270519B2 (en) * 2018-10-12 2022-03-08 Shenzhen University Method of processing point cloud data based on neural network

Also Published As

Publication number Publication date
CN109544700A (zh) 2019-03-29
US20210366203A1 (en) 2021-11-25
US11270519B2 (en) 2022-03-08

Similar Documents

Publication Publication Date Title
WO2020073444A1 (zh) 基于神经网络的点云数据的处理方法和设备
WO2020119458A1 (zh) 脸部关键点检测方法、装置、计算机设备和存储介质
Kim et al. Automated construction progress measurement using a 4D building information model and 3D data
CN109767461B (zh) 医学影像配准方法、装置、计算机设备和存储介质
CN108830900B (zh) 关键点的抖动处理方法和装置
KR20180050702A (ko) 이미지 변형 처리 방법 및 장치, 컴퓨터 기억 매체
CN106886980B (zh) 一种基于三维激光雷达目标识别的点云密度增强的方法
CN110675440B (zh) 三维深度数据的置信度评估方法、装置和计算机设备
US10297079B2 (en) Systems and methods for providing a combined visualizable representation for evaluating a target object
CN110473233B (zh) 配准方法、计算机设备和存储介质
WO2020019245A1 (zh) 透明物体的三维重建方法、装置、计算机设备及存储介质
CN111325663B (zh) 基于并行架构的三维点云匹配方法、装置和计算机设备
TW201616450A (zh) 點雲畫筆選取系統及方法
WO2021098573A1 (zh) 手部姿态估计方法、装置、设备以及计算机存储介质
CN109409318B (zh) 统计模型的训练方法、统计方法、装置及存储介质
US20170330384A1 (en) Product Image Processing Method, and Apparatus and System Thereof
CN115712384A (zh) 一种基于姿态传感器的手势控制方法、装置以及系统
Bureick et al. Fast converging elitist genetic algorithm for knot adjustment in B-spline curve approximation
CN110824496B (zh) 运动估计方法、装置、计算机设备和存储介质
CN112233223A (zh) 基于三维点云的人体参数化模型自动变形方法和装置
CN114202554A (zh) 标记生成、模型训练、标记方法、装置、存储介质及设备
WO2023088487A1 (zh) 一种高光谱影像正摄校正方法及装置、存储介质
JP6375768B2 (ja) 立体物造形用データ出力規制装置
US20180025479A1 (en) Systems and methods for aligning measurement data to reference data
WO2022120669A1 (zh) 手势识别方法、计算机设备及存储介质

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: 18936753

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

32PN Ep: public notification in the ep bulletin as address of the adressee cannot be established

Free format text: NOTING OF LOSS OF RIGHTS PURSUANT TO RULE 112(1) EPC (EPO FORM 1205A DATED 06.08.2021)

122 Ep: pct application non-entry in european phase

Ref document number: 18936753

Country of ref document: EP

Kind code of ref document: A1