WO2021065538A1 - 点群データ同一性推定装置及び点群データ同一性推定システム - Google Patents

点群データ同一性推定装置及び点群データ同一性推定システム Download PDF

Info

Publication number
WO2021065538A1
WO2021065538A1 PCT/JP2020/035231 JP2020035231W WO2021065538A1 WO 2021065538 A1 WO2021065538 A1 WO 2021065538A1 JP 2020035231 W JP2020035231 W JP 2020035231W WO 2021065538 A1 WO2021065538 A1 WO 2021065538A1
Authority
WO
WIPO (PCT)
Prior art keywords
point cloud
cloud data
data
identity
neural network
Prior art date
Application number
PCT/JP2020/035231
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 CN202080066282.9A priority Critical patent/CN114424244B/zh
Priority to US17/754,219 priority patent/US11704841B2/en
Publication of WO2021065538A1 publication Critical patent/WO2021065538A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • G06T9/002Image coding using neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/0002Inspection of images, e.g. flaw detection
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01BMEASURING LENGTH, THICKNESS OR SIMILAR LINEAR DIMENSIONS; MEASURING ANGLES; MEASURING AREAS; MEASURING IRREGULARITIES OF SURFACES OR CONTOURS
    • G01B11/00Measuring arrangements characterised by the use of optical techniques
    • G01B11/24Measuring arrangements characterised by the use of optical techniques for measuring contours or curvatures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/22Matching criteria, e.g. proximity measures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/241Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
    • G06F18/2413Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on distances to training or reference patterns
    • 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/08Learning methods
    • 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
    • G06N3/084Backpropagation, e.g. using gradient descent
    • 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
    • G06N3/09Supervised learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/04Inference or reasoning models
    • G06N5/041Abduction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • 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
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/74Image or video pattern matching; Proximity measures in feature spaces
    • G06V10/761Proximity, similarity or dissimilarity measures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/60Type of objects
    • G06V20/64Three-dimensional objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2218/00Aspects of pattern recognition specially adapted for signal processing
    • G06F2218/08Feature extraction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2218/00Aspects of pattern recognition specially adapted for signal processing
    • G06F2218/12Classification; Matching
    • 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

Definitions

  • the present disclosure relates to a point cloud data identity estimation device and a point cloud data identity estimation system.
  • each "point cloud” has different measurement conditions such as measurement direction, measurement position, measurement distance, measurement timing, and type of measurement device when measuring the actual environment. It is important to properly align (evaluate the identity) of "information about data”.
  • the present disclosure provides a point cloud data identity estimation device and a point cloud data identity estimation system that improve the accuracy of identity evaluation for information related to point cloud data.
  • the first aspect of the present disclosure is a point cloud data identity estimation device that estimates the identity of an object that is the source of two three-dimensional point cloud data.
  • a point cloud data acquisition unit that acquires first point cloud data and second point cloud data consisting of three-dimensional point cloud data, and a point cloud data acquisition unit.
  • a first neural network that inputs information about the first point cloud data and outputs the first point cloud data features
  • a second neural network that inputs information about the second point cloud data and outputs the second point cloud data features
  • an identity evaluation unit that outputs an evaluation regarding the identity of the 1st point cloud data and the 2nd point group data.
  • the first aspect of the present disclosure it is possible to provide a point cloud data identity estimation device that improves the accuracy of evaluation of identity for information related to point cloud data.
  • the second aspect of the present disclosure is the point cloud data identity estimation device according to the first aspect.
  • the identity evaluation unit When information about two 3D point group data created based on the same 3D shapes is input to the 1st neural network and the 2nd neural network as the first teacher data, the identity evaluation unit The weights of the first neural network and the second neural network are updated while sharing each other so as to output an evaluation indicating high identity.
  • the identity evaluation unit When information about two three-dimensional point group data created based on three-dimensional shapes different from each other is input to the first neural network and the second neural network as second teacher data, the identity evaluation unit The weights of the first neural network and the second neural network are updated while being shared with each other so as to output an evaluation indicating that the identity is low.
  • the third aspect of the present disclosure is the point cloud data identity estimation device according to the second aspect.
  • the first teacher data is one in which at least one of the information about the two three-dimensional point cloud data created based on the same three-dimensional shape is deleted, or at least one in which noise is added. is there.
  • the fourth aspect of the present disclosure is the point cloud data identity estimation device according to the second aspect.
  • the first teacher data is information on two three-dimensional point cloud data created based on measurements of the same three-dimensional shapes under different conditions.
  • the fifth aspect of the present disclosure is the point cloud data identity estimation device according to the first aspect.
  • the information regarding the first point cloud data and the information regarding the second point cloud data are three-dimensional point cloud data, respectively.
  • the sixth aspect of the present disclosure is the point cloud data identity estimation device according to the fifth aspect.
  • the first neural network and the second neural network so that the identity evaluation unit outputs an evaluation indicating that the identity is high when input to the first neural network and the second neural network as the third teacher data.
  • Update the neural network weights while sharing them with each other The three-dimensional point group data created based on the predetermined three-dimensional shape and the three-dimensional point group data created based on the predetermined three-dimensional shape tilted by the predetermined angle or more are obtained. 4
  • the first neural network and the second neural network so that the identity evaluation unit outputs an evaluation indicating that the identity is low when the teacher data is input to the first neural network and the second neural network. Update while sharing network weights with each other.
  • the seventh aspect of the present disclosure is the point cloud data identity estimation device according to the fifth aspect.
  • Three-dimensional point group data created based on a predetermined three-dimensional shape, and one having the same size as the predetermined three-dimensional shape or the predetermined three-dimensional shape is enlarged with an enlargement ratio or reduction ratio within a predetermined range.
  • the identity evaluation unit has high identity. The weights of the first neural network and the second neural network are updated while being shared with each other so as to output the indicated evaluation.
  • the identity evaluation unit outputs an evaluation indicating that the identity is low.
  • the weights of the first neural network and the second neural network are updated while being shared with each other.
  • the eighth aspect of the present disclosure is a measuring device that measures an object and creates three-dimensional point cloud data, and a point cloud that estimates the identity of the object that is the source of the two three-dimensional point cloud data.
  • a point cloud data identity estimation system having a data identity estimation device.
  • the point cloud data identity estimation device is A point cloud data acquisition unit that acquires first point cloud data and second point cloud data consisting of three-dimensional point cloud data, and a point cloud data acquisition unit.
  • a first neural network that inputs information about the first point cloud data and outputs the first point cloud data features
  • a second neural network that inputs information about the second point cloud data and outputs the second point cloud data features
  • an identity evaluation unit that outputs an evaluation regarding the identity of the 1st point cloud data and the 2nd point group data.
  • the eighth aspect of the present disclosure it is possible to provide a point cloud data identity estimation system that improves the accuracy of identity evaluation for information related to point cloud data.
  • FIG. 1 is a diagram showing an example of a system configuration of a point cloud data identity estimation system.
  • FIG. 2 is a diagram showing an example of the hardware configuration of the point cloud data identity estimation device.
  • FIG. 3 is a diagram showing an example of learning data.
  • FIG. 4 is a diagram showing an example of the functional configuration of the data expansion unit.
  • FIG. 5 is a diagram showing an example of the functional configuration of the learning unit.
  • FIG. 6 is a flowchart showing the flow of learning processing by the learning unit.
  • FIG. 7 is a diagram showing an example of the functional configuration of the inference unit.
  • FIG. 8 is a flowchart showing the flow of inference processing by the inference unit.
  • FIG. 9 is a diagram showing a specific example of the inference result.
  • FIG. 1 is a diagram showing an example of a system configuration of a point cloud data identity estimation system.
  • the point cloud data identity estimation system 100 includes a first measurement device 110, a second measurement device 111, and a point cloud data identity estimation device 120.
  • the first measuring device 110 and the second measuring device 111 and the point cloud data identity estimation device 120 are connected by wire or wirelessly.
  • the first measuring device 110 and the second measuring device 111 measure various objects such as the object A and the object B placed in the actual environment 130, respectively, and create three-dimensional point cloud data. ..
  • the first measuring device 110 and the second measuring device 111 each transmit the created three-dimensional point cloud data to the point cloud data identity estimation device 120.
  • the first measuring device 110 and the second measuring device 111 are among various measurement conditions such as a measurement direction, a measurement position, a measurement distance, a measurement timing, and a type of device when measuring various objects. It is assumed that at least one of the measurement conditions is different.
  • the point cloud data identity estimation system 100 will be described as having two measuring devices, the first measuring device 110 and the second measuring device 111, but the point cloud data is the same.
  • the number of measuring devices included in the sex estimation system 100 may be one.
  • the number of measuring devices included in the point cloud data identity estimation system 100 may be three or more.
  • the point cloud data identity estimation device 120 is a device that evaluates the identity of the object that is the source of the two three-dimensional point cloud data.
  • the two 3D point cloud data are 3D point cloud data when an object is measured under different measurement conditions such as measurement direction, measurement position, measurement distance, measurement timing, and type of measurement device. Point to.
  • the first measuring device 110 and the second measuring device 111 each refer to three-dimensional point cloud data created by measuring an object placed in the actual environment 130.
  • the point cloud data identity estimation device 120 has a data acquisition unit 121, a data conversion unit 122, and a data expansion unit 123. , It functions as a learning unit 124 and an inference unit 125.
  • the data acquisition unit 121 acquires the three-dimensional point cloud data transmitted from the first measuring device 110 and the second measuring device 111.
  • the three-dimensional point cloud data acquired by the data acquisition unit 121 includes three-dimensional point cloud data acquired for the purpose of using as learning data and three-dimensional point cloud data acquired for the purpose of using as inference data. Is included.
  • the data conversion unit 122 converts the data format of the three-dimensional point cloud data acquired by the data acquisition unit 121, and generates data in a data format different from the three-dimensional point cloud data.
  • the data generated by the data conversion unit 122 includes, for example, data in various data formats such as mesh data (polygon data), surface data, and CAD data.
  • the data in these various data formats including the three-dimensional point cloud data are collectively referred to as "information about the point cloud data".
  • the data conversion unit 122 has a division function of dividing the three-dimensional point cloud data into a plurality of local three-dimensional point cloud data representing a part of the three-dimensional shape of the object.
  • the data conversion unit 122 uses a plurality of local three-dimensional point cloud data obtained by dividing the three-dimensional point cloud data acquired for the purpose of using it as learning data as training data for learning. It has a storage function for storing in the data storage unit 126.
  • the data conversion unit 122 has the same object among the two three-dimensional point cloud data acquired by measuring the same object by the first and second measuring devices 110 and 111. Two local three-dimensional point cloud data representing a part of the three-dimensional shape of the above are stored in association with each other. At this time, the data conversion unit 122 also stores information indicating that the data is created based on the same three-dimensional shapes.
  • the data conversion unit 122 has a part of the two three-dimensional point cloud data acquired by measuring the same object by the first and second measuring devices 110 and 111, which are different from each other. Two local three-dimensional point cloud data representing a three-dimensional shape are stored in association with each other. At this time, the data conversion unit 122 also stores information indicating that the data is created based on three-dimensional shapes that are different from each other.
  • the data conversion unit 122 has a part of two three-dimensional point cloud data of each object among the two three-dimensional point cloud data acquired by measuring different objects by the first and second measuring devices 110 and 111. Two local three-dimensional point cloud data representing the shape are stored in association with each other. At this time, the data conversion unit 122 also stores information indicating that the data is created based on three-dimensional shapes that are different from each other.
  • a plurality of local three-dimensional point cloud data obtained by dividing the three-dimensional point cloud data acquired for the purpose of using it as inference data is transmitted to the inference data storage unit 127. It has a storage function to store.
  • the data conversion unit 122 A plurality of local three-dimensional point cloud data obtained by dividing the three-dimensional point cloud data acquired by the measurement by the first measuring device 110, and A plurality of local 3D point cloud data obtained by dividing the 3D point cloud data acquired by the measurement by the second measuring device 111, and Are stored in association with each other.
  • the data expansion unit 123 expands the learning data by performing various modification processes on a plurality of local three-dimensional point cloud data stored in the learning data storage unit 126 as learning data.
  • the learning unit 124 has a deep learning framework.
  • the learning unit 124 reads out a plurality of local three-dimensional point cloud data stored in the learning data storage unit 126, and reads the data.
  • -A deep neural network (DNN: Deep Neural Network, for example, PointNet, which is a DNN for 3D point cloud data) is executed by using a set of two local 3D point cloud data associated with each other as input data.
  • -Weights included in the deep neural network for example, PointNet, which is a DNN for 3D point cloud data
  • Update parameters Perform learning process.
  • the learning unit 124 reflects the weight parameter adjusted by performing the learning process on the inference unit 125.
  • the inference unit 125 has a deep learning framework for three-dimensional point cloud data, like the learning unit 124.
  • the inference unit 125 reads out a plurality of local three-dimensional point cloud data stored in the inference data storage unit 127, and reads the data.
  • -A deep neural network for example, PointNet, which is a DNN for 3D point cloud data
  • PointNet which is a DNN for 3D point cloud data
  • FIG. 2 is a diagram showing an example of the hardware configuration of the point cloud data identity estimation device.
  • the point cloud data identity estimation device 120 includes a processor 201, a memory 202, an auxiliary storage device 203, a display device 204, an operation device 205, and an I / F (Interface) device 206. , Drive device 207.
  • the hardware of the point cloud data identity estimation device 120 is connected to each other via the bus 208.
  • the processor 201 has various arithmetic devices such as a CPU (Central Processing Unit) and a GPU (Graphics Processing Unit).
  • the processor 201 reads various programs onto the memory 202 and executes them.
  • the memory 202 has a main storage device such as a ROM (Read Only Memory) and a RAM (Random Access Memory).
  • the processor 201 and the memory 202 form a so-called computer, and the processor 201 realizes the above-mentioned function (see FIG. 1) by executing various programs read on the memory 202.
  • the auxiliary storage device 203 stores various programs and various data used when various programs are executed by the processor 201.
  • the learning data storage unit 126 and the inference data storage unit 127 are realized in the auxiliary storage device 203.
  • the display device 204 is a display device that displays the internal state of the point cloud data identity estimation device 120.
  • the operation device 205 is an input device used by the user of the point cloud data identity estimation device 120 when inputting various instructions to the point cloud data identity estimation device 120.
  • the I / F device 206 is a connecting device for connecting to the first measuring device 110 and the second measuring device 111 and receiving the three-dimensional point cloud data.
  • the drive device 207 is a device for setting the recording medium 210.
  • the recording medium 210 referred to here includes a medium such as a CD-ROM, a flexible disk, a magneto-optical disk, or the like that optically, electrically, or magnetically records information. Further, the recording medium 210 may include a semiconductor memory or the like for electrically recording information such as a ROM or a flash memory.
  • the various programs installed in the auxiliary storage device 203 are installed, for example, by setting the distributed recording medium 210 in the drive device 207 and reading the various programs recorded in the recording medium 210 by the drive device 207. Will be done.
  • the various programs installed in the auxiliary storage device 203 may be installed by being downloaded via a network (not shown).
  • FIG. 3 is a diagram showing an example of learning data. As shown in FIG. 3, the learning data 300 has "first point cloud data”, "second point cloud data”, and "correct answer label” as information items.
  • the "first point cloud data” stores a plurality of local three-dimensional point cloud data obtained by dividing the three-dimensional point cloud data 310 acquired by measuring the object by the first measuring device 110.
  • the example of FIG. 3 shows specific examples of the local three-dimensional point cloud data 311 and 312 as a plurality of local three-dimensional point cloud data.
  • the local three-dimensional point cloud data 311 and 312 include the X coordinate, Y coordinate, Z coordinate, R value, G value, and B value of each point.
  • the local three-dimensional point cloud data 311 and 312 include a point cloud of 2048 points.
  • the "second point cloud data” stores a plurality of local three-dimensional point cloud data obtained by dividing the three-dimensional point cloud data 320 acquired by measuring the object by the second measuring device 111.
  • the example of FIG. 3 shows a specific example of the local three-dimensional point cloud data 321 as a plurality of local three-dimensional point cloud data.
  • the local three-dimensional point cloud data 321 includes the X coordinate, the Y coordinate, the Z coordinate, the R value, the G value, and the B value of each point. Further, in the case of the example of FIG. 3, the local three-dimensional point cloud data 321 includes a point cloud of 2048 points.
  • FIG. 4 is a diagram showing an example of the functional configuration of the data expansion unit.
  • the data expansion unit 123 includes a read unit 401, a density change unit 402, a defect unit 403, a noise addition unit 404, a bias addition unit 405, an angle change unit 406, an enlargement / reduction unit 407, and a shift unit 408. ..
  • the reading unit 401 reads predetermined teacher data from the learning data 300 stored in the learning data storage unit 126.
  • the example of FIG. 4 shows a state in which the teacher data 410 including the local three-dimensional point cloud data 311 and 321 is read out as predetermined teacher data from the learning data storage unit 126.
  • the predetermined teacher data read by the reading unit 401 is teacher data in which information indicating that the "correct answer label" is the same is stored.
  • the density changing unit 402 is a local three-dimensional point cloud data of one of the two local three-dimensional point cloud data included in the “first point cloud data” and the “second point cloud data” of the teacher data 410.
  • the density of each point is changed by thinning each point at regular intervals.
  • the density changing unit 402 stores the teacher data 421 including the changed local three-dimensional point cloud data in the learning data storage unit 126.
  • the missing portion 403 is each of the local three-dimensional point cloud data of one of the two local three-dimensional point cloud data included in the “first point cloud data” and the “second point cloud data” of the teacher data 410. Randomly delete points.
  • the defect unit 403 stores the teacher data 422 including the local three-dimensional point cloud data after the defect in the learning data storage unit 126.
  • the noise addition unit 404 is a local 3D point cloud data of one of the two local 3D point cloud data included in the "first point cloud data" and the "second point cloud data" of the teacher data 410. Add noise (point) to an arbitrary position. Further, the noise addition unit 404 stores the teacher data 423 including the local three-dimensional point cloud data after the noise is added in the learning data storage unit 126.
  • the bias addition unit 405 is the local 3D point cloud data of one of the two local 3D point cloud data included in the “first point cloud data” and the “second point cloud data” of the teacher data 410.
  • a bias value is added to the R value, G value, and B value of each point (that is, the color is changed). Further, the bias adding unit 405 stores the teacher data 424 including the local three-dimensional point cloud data after adding the bias value in the learning data storage unit 126.
  • the angle changing unit 406 selects the local 3D point cloud data of one of the two local 3D point cloud data included in the “first point cloud data” and the “second point cloud data” of the teacher data 410. , Tilt more than the specified angle. Further, the angle changing unit 406 stores the teacher data 425 including the local three-dimensional point cloud data after being tilted by a predetermined angle or more in the learning data storage unit 126.
  • the teacher data 425 is an example of the fourth teacher data.
  • the angle changing unit 406 changes the "correct label" from “identical” to "non-identical” for the teacher data 425 including the local three-dimensional point cloud data after being tilted by a predetermined angle or more.
  • the two local three-dimensional point cloud data are said to have been created based on different three-dimensional shapes. Because it can be regarded.
  • the angle changing unit 406 uses the local three-dimensional point cloud of one of the two local three-dimensional point cloud data included in the "first point cloud data" and the "second point cloud data" of the teacher data 410.
  • the data may not be tilted or tilted less than a predetermined angle.
  • the angle changing unit 406 may store the teacher data 425 including the local three-dimensional point cloud data after not tilting or tilting less than a predetermined angle in the learning data storage unit 126.
  • the teacher data 425 in this case is an example of the third teacher data. Further, regarding the teacher data 425 in this case, the angle changing unit 406 does not change the “correct answer label”.
  • the scaling unit 407 uses the local 3D point cloud data of one of the two local 3D point cloud data included in the "first point cloud data" and the "second point cloud data" of the teacher data 410. Enlarge or reduce at an enlargement or reduction rate that exceeds a predetermined range.
  • the scaling unit 407 stores the teacher data 426 including the local three-dimensional point cloud data after being enlarged or reduced at a magnification or reduction rate exceeding a predetermined range in the learning data storage unit 126.
  • the teacher data 426 is an example of the sixth teacher data.
  • the "correct label” is changed from “same” to "non-identical” for the teacher data 426 including the local three-dimensional point cloud data after scaling at a scaling factor exceeding a predetermined range. Change to "same”.
  • the two local 3D point cloud data are based on different 3D shapes. This is because it can be regarded as having been created in.
  • the scaling unit 407 keeps the two local three-dimensional point cloud data included in the teacher data 410 at the same size, or reduces or reduces the scaling factor of one of the local three-dimensional point cloud data within a predetermined range. It may be enlarged or reduced at a rate. Further, the scaling unit 407 stores the training data 426 including the local three-dimensional point cloud data of the same size or the local three-dimensional point cloud data after being enlarged or reduced at the enlargement ratio or reduction ratio within a predetermined range. It may be stored in the unit 126.
  • the teacher data 426 in this case is an example of the fifth teacher data. Further, regarding the teacher data 426 in this case, the scaling unit 407 does not change the “correct answer label”.
  • the shift unit 408 is the center of the local 3D point cloud data of one of the two local 3D point cloud data included in the “first point cloud data” and the “second point cloud data” of the teacher data 410. Shift the position. Further, the shift unit 408 stores the teacher data 427 including the local three-dimensional point cloud data after shifting the center position in the learning data storage unit 126.
  • FIG. 5 is a diagram showing an example of the functional configuration of the learning unit. As shown in FIG. 5, the learning unit 124 infers whether or not the two local three-dimensional point cloud data are created based on the same three-dimensional shape (evaluate the identity). To use the Siamese network structure.
  • the learning unit 124 includes a first point cloud data input unit 501, a first DNN unit 502, a second point cloud data input unit 511, a second DNN unit 512, and an identity evaluation unit 521. Has. Further, the learning unit 124 has a comparison unit 531.
  • the first point cloud data input unit 501 reads out the local three-dimensional point cloud data stored in the "first point cloud data" from the learning data 300 stored in the learning data storage unit 126, and the first DNN unit 502. Enter in. Further, the second point cloud data input unit 511 reads out the local three-dimensional point cloud data stored in the "second point cloud data" from the learning data 300 stored in the learning data storage unit 126, and reads the second DNN. Input to unit 512.
  • the local 3D point cloud data input by the 1st point cloud data input unit 501 and the local 3D point cloud data input by the 2nd point cloud data input unit 511 correspond to each other in the learning data 300. It is the attached local three-dimensional point cloud data.
  • the first DNN unit 502 is an example of the first neural network, and for example, PointNet, which is a DNN for three-dimensional point cloud data, is used.
  • the first DNN unit 502 operates by inputting local three-dimensional point cloud data by the first point cloud data input unit 501, and outputs the first point cloud data feature amount (see the following equation (1)).
  • the above equation (1) represents that the first point cloud data feature amount including 1024 feature amounts is output from the local three-dimensional point cloud data including the 2048 point cloud.
  • the second DNN unit 512 is an example of the second neural network, and for example, PointNet, which is a DNN for three-dimensional point cloud data, is used.
  • PointNet which is a DNN for three-dimensional point cloud data
  • the second DNN unit 512 operates by inputting local three-dimensional point cloud data by the second point cloud data input unit 511, and outputs the second point cloud data feature amount (see the following equation (2)).
  • the above equation (2) represents that the second point cloud data feature amount including 1024 feature amounts is output from the local three-dimensional point cloud data including the 2048 point cloud.
  • the identity evaluation unit 521 processes the first point cloud data feature amount output from the first DNN unit 502 and the second point cloud data feature amount output from the second DNN unit 512. As a result, the identity evaluation unit 521 data for inferring whether or not the two local three-dimensional point cloud data are created based on the same three-dimensional shape (two local 3). (Evaluation of identity of 3D point cloud data) is output.
  • the Euclidean distance is based on the first point cloud data feature amount pn ⁇ and the second point cloud data feature amount pn ⁇ output from the first DNN unit 502 and the second DNN unit 512.
  • the distance D w is calculated and output to the comparison unit 531 (see the following equation (3)).
  • the first point cloud data feature amount pn ⁇ and the second point group data feature amount pn ⁇ satisfy the following equations (4-1) and (4-2).
  • the Euclidean distance D W represents an evaluation regarding the identity of two local three-dimensional point cloud data. If the Euclidean distance D W is small, it can be said that an evaluation indicating that the identity is high is output, and if the Euclidean distance D W is large, an evaluation indicating that the identity is low is output. it can.
  • the comparison unit 531 indicates that the Euclidean distance D w output by the identity evaluation unit 521 is the same (or non-identical) stored in the “correct answer label” read from the learning data storage unit 126.
  • the loss function L c is calculated based on the information (see equation (5) below).
  • the comparison unit 531 updates the weight parameters of the first DNN unit 502 and the second DNN unit 512 by back-propagating the calculated loss function L c.
  • the weight parameters of the 1DNN portion 502 and the weight parameters of the 2DNN portion 512 are shared with each other, when the loss function L c is reversely propagated, and the 1DNN unit 502 and the 2DNN portion 512, the same value Will be updated to the weight parameter of.
  • the loss function L c is back propagation, by updating while sharing the weight parameter and the 1DNN portion 502 and the 2DNN unit 512, according to the learning unit 124, for example, -Weight parameters can be learned so that point cloud data features suitable for outputting an evaluation of the identity of two local 3D point cloud data are output.
  • the weight parameter with high generalization performance is high.
  • the accuracy of the evaluation of identity can be improved.
  • FIG. 6 is a flowchart showing the flow of learning processing by the learning unit.
  • step S601 the first point cloud data input unit 501 and the second point cloud data input unit 511 read out a plurality of sets of two local three-dimensional point cloud data associated with each other from the learning data storage unit 126.
  • step S602 the first DNN unit 502 and the second DNN unit 512 operate by inputting a set of two read local three-dimensional point cloud data, and the first point cloud data feature amount pn ⁇ and the second point The group data feature amount pn ⁇ is output.
  • step S603 the identity evaluation unit 521 calculates the Euclidean distance D w based on the first point cloud data feature amount pn ⁇ and the second point group data feature amount pn ⁇ .
  • step S604 the comparison unit 531 calculates the loss function L c based on the calculated Euclidean distance D w and the correct answer label C read from the learning data storage unit 126. Further, the comparison unit 531 updates while sharing the weight parameters of the first DNN unit 502 and the second DNN unit 512 based on the calculated loss function L c.
  • step S605 the comparison unit 531 determines whether or not to end the learning process. If it is determined in step S605 that the learning process is not completed (NO in step S605), the process returns to step S602. As a result, the first point cloud data input unit 501 and the second point cloud data input unit 511 are a set of two local three-dimensional point cloud data associated with each other and have not yet been used in the learning process. Is input to the first DNN unit 502 and the second DNN unit 512.
  • step S605 determines whether the learning process is finished (YES in step S605). If it is determined in step S605 that the learning process is finished (YES in step S605), the learning process is finished and the updated weight parameter is reflected in the inference unit 125.
  • FIG. 7 is a diagram showing an example of the functional configuration of the inference unit. Similar to the learning unit 124, the inference unit 125 infers whether or not the two local 3D point cloud data are created based on the same 3D shape (evaluate the identity). To use the Siamese network structure.
  • the inference unit 125 includes the first point cloud data input unit 701, the first DNN unit 702, the second point cloud data input unit 711, the second DNN unit 712, and the identity evaluation unit 721. Has. Further, the inference unit 125 has an output unit 731.
  • the first point cloud data input unit 701 reads out the local three-dimensional point cloud data stored in the "first point cloud data" from the inference data stored in the inference data storage unit 127, and causes the first DNN unit 702 to read the local three-dimensional point cloud data. input. Further, the second point cloud data input unit 711 reads out the local three-dimensional point cloud data stored in the "second point cloud data” from the inference data stored in the inference data storage unit 127, and the second DNN unit. Enter in 712.
  • the inference data stored in the inference data storage unit 127 has the same configuration as the learning data 300 in FIG. 3, except that there is no “correct answer label” as an information item. To do.
  • the local 3D point cloud data input by the 1st point cloud data input unit 701 and the local 3D point cloud data input by the 2nd point cloud data input unit 711 are associated with each other in the inference data. It is the obtained local three-dimensional point cloud data.
  • the first DNN unit 702 is an example of the first neural network, operates by inputting local three-dimensional point cloud data by the first point cloud data input unit 701, and outputs the first point cloud data feature amount pn ⁇ . ..
  • the second DNN unit 712 is an example of the second neural network, operates by inputting local three-dimensional point cloud data by the second point cloud data input unit 711, and outputs the second point cloud data feature amount pn ⁇ . ..
  • the first DNN unit 702 and the second DNN unit 712 share weight parameters with each other.
  • the identity evaluation unit 721 processes the first point cloud data feature amount output from the first DNN unit 702 and the second point cloud data feature amount output from the second DNN unit 712. As a result, the identity evaluation unit 721 infers whether or not the two local three-dimensional point cloud data are created based on the same three-dimensional shape (two local 3). (Evaluation of identity of 3D point cloud data) is output.
  • the identity evaluation unit 721 the first point cloud data feature amount pn ⁇ output from the first DNN unit 702 and the second point cloud data feature amount pn ⁇ output from the second DNN unit 712 are set. Based on this, the Euclidean distance D w is calculated and output to the output unit 731. As described above, if the Euclidean distance D W is small, it can be said that an evaluation indicating that the identity is high is output, and if the Euclidean distance D W is large, an evaluation indicating that the identity is low is output. It can be said that it was done.
  • the output unit 731 determines whether or not the Euclidean distance D w output from the identity evaluation unit 721 is equal to or greater than a predetermined threshold value (see the following equations (6-1) and (6-2)).
  • the output unit 731 When it is determined that the Euclidean distance D w is larger than the predetermined threshold value t d (the above equation (6-1)), the output unit 731 outputs "non-identical” as an evaluation of identity. On the other hand, when it is determined that the Euclidean distance D w is equal to or less than the predetermined threshold value t d (the above equation (6-2)), the output unit 731 outputs "identical” as an evaluation of the sameness.
  • the inference unit 125 for example, -It is possible to output a point cloud data feature amount suitable for outputting an evaluation regarding the identity of two local three-dimensional point cloud data.
  • -It is possible to output a point cloud data feature amount suitable for outputting an evaluation regarding the identity of two local three-dimensional point cloud data.
  • same data can be output as an evaluation of identity regardless of whether the two local three-dimensional point cloud data are input to the first DNN unit 702 or the second DNN unit 712. It will have the effect.
  • the accuracy of the evaluation of identity can be improved.
  • FIG. 8 is a flowchart showing the flow of inference processing by the inference unit.
  • step S801 the first point cloud data input unit 701 and the second point cloud data input unit 711 read out a set of two local three-dimensional point cloud data associated with each other from the inference data storage unit 127.
  • step S802 the first DNN unit 702 and the second DNN unit 712 operate by inputting a set of two read local three-dimensional point cloud data, and the first point cloud data feature amount pn ⁇ and the second point The group data feature amount pn ⁇ is output.
  • step S803 the identity evaluation unit 721 calculates the Euclidean distance D w based on the first point cloud data feature amount pn ⁇ and the second point group data feature amount pn ⁇ .
  • step S804 the output unit 731 outputs an evaluation of identity (“identical” or “non-identical”) based on the Euclidean distance D w output from the identity evaluation unit 721.
  • FIG. 9 is a diagram showing a specific example of the inference result.
  • 9a in FIG. 9 shows an outline of the inference data used in the inference processing.
  • object type indicates the type of the object measured by the first measuring device 110 and the second measuring device 111.
  • the number of the same set of two local three-dimensional point cloud data refers to each other among a plurality of local three-dimensional point cloud data included in the corresponding "object type”.
  • the number of sets of two local 3D point cloud data created based on the same 3D shape is stored.
  • three-dimensional shapes different from each other among a plurality of local three-dimensional point cloud data included in the corresponding "object type” are used.
  • the number of pairs of two local 3D point cloud data created based on this is stored.
  • 9b in FIG. 9 shows the precision ratio for each "type of object" with respect to the inference result inferred by the inference unit 125 using the inference data shown in 9a in FIG. 9 as input data.
  • 9b of FIG. 9 according to the inference unit 125, it is possible to realize a high precision rate regardless of the “type of object”.
  • the point cloud data identity estimation device has a first point cloud data acquisition unit and a second point cloud data acquisition unit that acquire first point cloud data and second point cloud data composed of three-dimensional point cloud data. It has a first DNN unit that inputs the first point cloud data and outputs the first point cloud data feature amount, and a second DNN unit that inputs the second point cloud data and outputs the second point cloud data feature amount. .. -It has an identity evaluation unit that outputs an evaluation regarding the identity of the first point cloud data and the second point cloud data based on the first point cloud data feature amount and the second point group data feature amount. -The first DNN part and the second DNN part share weight parameters with each other.
  • the first embodiment it is possible to provide a point cloud data identity estimation device and a point cloud data identity estimation system that improve the accuracy of the evaluation of the identity of the three-dimensional point cloud data.
  • the information regarding the point cloud data has been described as being the three-dimensional point cloud data itself.
  • the information regarding the point cloud data is not limited to the three-dimensional point cloud data itself, and may be mesh data (polygon data), surface data, CAD data, or the like.
  • the association method in the case where two local three-dimensional point cloud data created based on different three-dimensional shapes are associated and stored as learning data 300 is not mentioned.
  • the association may be limited to the three-dimensional point cloud data in which each three-dimensional shape is located within a predetermined distance.
  • the teacher data whose "correct label” is "same” and the teacher whose "correct label” is “non-identical” depend on the degree of change. It may be configured to generate data.
  • the data expansion unit 123 has described a case where the teacher data having the “same” “correct label” is read out to expand the learning data 300.
  • the teacher data read when the data expansion unit 123 expands the learning data 300 is not limited to this, and the teacher data whose "correct answer label" is "non-identical” may be read.
  • each unit included in the data expansion unit 123 expands the learning data 300 has been described.
  • the method for expanding the learning data 300 is not limited to this, and the learning data 300 may be expanded by artificially changing various measurement conditions.
  • the measurement distance from the first measuring device 110 to the object is changed, or the type of the first measuring device 110 is changed for learning.
  • the data 300 may be expanded.
  • the learning data 300 may be expanded by tilting the angle of the first measuring device 110 and changing the measuring direction. Further, for example, instead of operating the shift unit 408, the learning data 300 may be expanded by shifting the measurement position of the first measurement device 110. Further, for example, instead of operating the noise addition unit 404 or the bias addition unit 405, the brightness of the illumination in the actual environment 130 is changed, or the measurement timing of the first measurement device 110 is changed for learning. The data 300 may be expanded.
  • the identity evaluation unit 521 outputs the Euclidean distance D w calculated based on the first point cloud data feature amount and the second point group data feature amount as an evaluation of identity. The case of doing so was explained.
  • the output method of the evaluation regarding the identity by the identity evaluation unit 521 is not limited to this, and the data calculated by using another function may be output as the evaluation regarding the identity.
  • the data calculated by a method other than the function may be output as an evaluation of identity.
  • the point cloud data identity estimation device 120 has been described as having a learning unit 124 and an inference unit 125.
  • the learning unit 124 and the inference unit 125 may be configured by separate devices.
  • Point group data identity estimation system 110 111: First and second measuring devices
  • Point group data identity estimation device 121 Data acquisition unit 122: Data conversion unit 123: Data expansion unit 124: Learning unit 125 : Reasoning unit 300: Learning data 310, 320: Three-dimensional point group data 311, 312, 321: Local three-dimensional point group data 401: Reading unit 402: Density changing unit 403: Missing part 404: Noise addition unit 405: Bias Addition part 406: Angle change part 407: Scale change part 408: Shift part 501: First point group data input part 502: First DNN part 511: Second point group data input part 512: Second DNN part 521: Identity evaluation part 531 : Comparison unit 701: 1st point group data input unit 702: 1st DNN unit 711: 2nd point group data input unit 712: 2nd DNN unit 721: Identity evaluation unit 731: Output unit

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Data Mining & Analysis (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Computational Linguistics (AREA)
  • Mathematical Physics (AREA)
  • Biomedical Technology (AREA)
  • Molecular Biology (AREA)
  • Biophysics (AREA)
  • Multimedia (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Databases & Information Systems (AREA)
  • Medical Informatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Geometry (AREA)
  • Quality & Reliability (AREA)
  • Image Analysis (AREA)
  • Length Measuring Devices By Optical Means (AREA)
  • Image Processing (AREA)

Abstract

点群データに関する情報について、同一性の評価の精度を向上させる点群データ同一性推定装置、点群データ同一性推定システムを提供する。本開示は、2つの3次元点群データの元となる対象物の同一性を推定する点群データ同一性推定装置であって、3次元点群データからなる第1点群データ及び第2点群データを取得する点群データ取得部と、第1点群データに関する情報を入力して第1点群データ特徴量を出力する第1ニューラルネットワークと、第2点群データに関する情報を入力して第2点群データ特徴量を出力する第2ニューラルネットワークと、前記第1点群データ特徴量と前記第2点群データ特徴量とに基づいて、前記第1点群データと前記第2点群データの同一性に関する評価を出力する同一性評価部と、を有し、前記第1ニューラルネットワークと前記第2ニューラルネットワークとは互いに重みが共有されている。

Description

点群データ同一性推定装置及び点群データ同一性推定システム
 本開示は、点群データ同一性推定装置及び点群データ同一性推定システムに関する。
 従来より、実環境を計測することで取得した3次元点群データ、または、該3次元点群データを異なるデータ形式に変換した変換後のデータ、等のいわゆる“点群データに関する情報”を用いて、3次元モデルを作成するモデル作成技術が知られている。
 当該モデル作成技術により3次元モデルを作成するにあたっては、実環境を計測する際の計測方向や計測位置、計測距離、計測タイミング、計測装置の種類等の各種計測条件が異なる、それぞれの“点群データに関する情報”について、適切に位置合わせ(同一性の評価)を行うことが重要となる。
特開2019-101927号公報
 本開示は、点群データに関する情報について、同一性の評価の精度を向上させる点群データ同一性推定装置、点群データ同一性推定システムを提供する。
 本開示の第1の態様は、2つの3次元点群データの元となる対象物の同一性を推定する点群データ同一性推定装置であって、
 3次元点群データからなる第1点群データ及び第2点群データを取得する点群データ取得部と、
 第1点群データに関する情報を入力して第1点群データ特徴量を出力する第1ニューラルネットワークと、
 第2点群データに関する情報を入力して第2点群データ特徴量を出力する第2ニューラルネットワークと、
 前記第1点群データ特徴量と前記第2点群データ特徴量とに基づいて、前記第1点群データと前記第2点群データの同一性に関する評価を出力する同一性評価部と、を有し、
 前記第1ニューラルネットワークと前記第2ニューラルネットワークとは互いに重みが共有されている。
 本開示の第1の態様によれば、点群データに関する情報について、同一性の評価の精度を向上させる点群データ同一性推定装置を提供することができる。
 また、本開示の第2の態様は、第1の態様に記載の点群データ同一性推定装置であって、
 互いに同一の3次元形状を元にして作成された2つの3次元点群データに関する情報を第1教師データとして前記第1ニューラルネットワーク及び前記第2ニューラルネットワークに入力した場合に、同一性評価部が同一性が高いと示す評価を出力するように、前記第1ニューラルネットワーク及び前記第2ニューラルネットワークの重みを互いに共有させながら更新し、
 互いに異なる3次元形状を元にして作成された2つの3次元点群データに関する情報を第2教師データとして前記第1ニューラルネットワーク及び前記第2ニューラルネットワークに入力した場合に、前記同一性評価部が同一性が低いと示す評価を出力するように、前記第1ニューラルネットワーク及び前記第2ニューラルネットワークの重みを互いに共有させながら更新する。
 また、本開示の第3の態様は、第2の態様に記載の点群データ同一性推定装置であって、
 前記第1教師データは、互いに同一の3次元形状を元にして作成された2つの3次元点群データに関する情報のうち少なくとも一方を欠損させたもの、または、少なくとも一方にノイズを加えたものである。
 また、本開示の第4の態様は、第2の態様に記載の点群データ同一性推定装置であって、
 前記第1教師データは、互いに同一の3次元形状を異なる条件で計測したものを元にして作成された2つの3次元点群データに関する情報である。
 また、本開示の第5の態様は、第1の態様に記載の点群データ同一性推定装置であって、
 前記第1点群データに関する情報及び前記第2点群データに関する情報は、それぞれ、3次元点群データである。
 また、本開示の第6の態様は、第5の態様に記載の点群データ同一性推定装置であって、
 所定の3次元形状を元にして作成された3次元点群データ、及び、前記所定の3次元形状を傾けない或いは所定の角度未満傾けたものを元にして作成された3次元点群データを、第3教師データとして前記第1ニューラルネットワーク及び前記第2ニューラルネットワークに入力した場合に、同一性評価部が同一性が高いと示す評価を出力するように、前記第1ニューラルネットワーク及び前記第2ニューラルネットワークの重みを互いに共有させながら更新し、
 所定の3次元形状を元にして作成された3次元点群データ、及び、前記所定の3次元形状を前記所定の角度以上傾けたものを元にして作成された3次元点群データを、第4教師データとして前記第1ニューラルネットワーク及び前記第2ニューラルネットワークに入力した場合に、前記同一性評価部が同一性が低いと示す評価を出力するように、前記第1ニューラルネットワーク及び前記第2ニューラルネットワークの重みを互いに共有させながら更新する。
 また、本開示の第7の態様は、第5の態様に記載の点群データ同一性推定装置であって、
 所定の3次元形状を元にして作成された3次元点群データ、及び、前記所定の3次元形状と同一サイズのもの或いは前記所定の3次元形状を所定範囲内の拡大率または縮小率で拡大または縮小したものを元にして作成された3次元点群データを、第5教師データとして前記第1ニューラルネットワーク及び前記第2ニューラルネットワークに入力した場合に、同一性評価部が同一性が高いと示す評価を出力するように、前記第1ニューラルネットワーク及び前記第2ニューラルネットワークの重みを互いに共有させながら更新し、
 所定の3次元形状を元にして作成された3次元点群データ、及び、前記所定の3次元形状を前記所定範囲を超えた拡大率または縮小率で拡大または縮小したものを元にして作成された3次元点群データを、第6教師データとして前記第1ニューラルネットワーク及び前記第2ニューラルネットワークに入力した場合に、前記同一性評価部が同一性が低いと示す評価を出力するように、前記第1ニューラルネットワーク及び前記第2ニューラルネットワークの重みを互いに共有させながら更新する。
 また、本開示の第8の態様は、対象物を計測し、3次元点群データを作成する計測装置と、2つの3次元点群データの元となる対象物の同一性を推定する点群データ同一性推定装置と、を有する点群データ同一性推定システムであって、
 前記点群データ同一性推定装置は、
 3次元点群データからなる第1点群データ及び第2点群データを取得する点群データ取得部と、
 第1点群データに関する情報を入力して第1点群データ特徴量を出力する第1ニューラルネットワークと、
 第2点群データに関する情報を入力して第2点群データ特徴量を出力する第2ニューラルネットワークと、
 前記第1点群データ特徴量と前記第2点群データ特徴量とに基づいて、前記第1点群データと前記第2点群データの同一性に関する評価を出力する同一性評価部と、を有し、
 前記第1ニューラルネットワークと前記第2ニューラルネットワークとは互いに重みが共有されている。
 本開示の第8の態様によれば、点群データに関する情報について、同一性の評価の精度を向上させる点群データ同一性推定システムを提供することができる。
図1は、点群データ同一性推定システムのシステム構成の一例を示す図である。 図2は、点群データ同一性推定装置のハードウェア構成の一例を示す図である。 図3は、学習用データの一例を示す図である。 図4は、データ拡張部の機能構成の一例を示す図である。 図5は、学習部の機能構成の一例を示す図である。 図6は、学習部による学習処理の流れを示すフローチャートである。 図7は、推論部の機能構成の一例を示す図である。 図8は、推論部による推論処理の流れを示すフローチャートである。 図9は、推論結果の具体例を示す図である。
 以下、各実施形態について添付の図面を参照しながら説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複した説明を省く。
 [第1の実施形態]
 <点群データ同一性推定システムのシステム構成>
 はじめに、第1の実施形態に係る点群データ同一性推定システムのシステム構成について説明する。図1は、点群データ同一性推定システムのシステム構成の一例を示す図である。
 図1に示すように、点群データ同一性推定システム100は、第1の計測装置110と、第2の計測装置111と、点群データ同一性推定装置120と、を有する。第1の計測装置110及び第2の計測装置111と、点群データ同一性推定装置120とは、有線または無線を介して接続される。
 第1の計測装置110及び第2の計測装置111は、それぞれ、実環境130内に載置された対象物A、対象物B等の各種対象物を計測し、3次元点群データを作成する。第1の計測装置110及び第2の計測装置111は、それぞれ、作成した3次元点群データを点群データ同一性推定装置120に送信する。
 なお、第1の計測装置110と第2の計測装置111とは、各種対象物を計測する際の計測方向、計測位置、計測距離、計測タイミング、装置の種類等の各種計測条件のうちの、少なくともいずれかの計測条件が異なっているものとする。
 また、第1の実施形態では、点群データ同一性推定システム100が、第1の計測装置110及び第2の計測装置111の2台の計測装置を有するものとして説明するが、点群データ同一性推定システム100が有する計測装置の台数は1台であってもよい。あるいは、点群データ同一性推定システム100が有する計測装置の台数は3台以上であってもよい。
 点群データ同一性推定装置120は、2つの3次元点群データの元となる対象物の同一性を評価する装置である。
 なお、2つの3次元点群データとは、計測方向や計測位置、計測距離、計測タイミング、計測装置の種類等の各種計測条件が異なる状況下で対象物を計測した場合の3次元点群データを指す。具体的には、第1の計測装置110と第2の計測装置111とが、それぞれ、実環境130に載置された対象物を計測することで作成した3次元点群データを指す。
 点群データ同一性推定装置には、各種プログラムがインストールされており、当該プログラムを実行することで、点群データ同一性推定装置120は、データ取得部121、データ変換部122、データ拡張部123、学習部124、推論部125として機能する。
 データ取得部121は、第1の計測装置110及び第2の計測装置111より送信された3次元点群データを取得する。データ取得部121が取得する3次元点群データには、学習用データとして用いることを目的として取得する3次元点群データと、推論用データとして用いることを目的として取得する3次元点群データとが含まれる。
 データ変換部122は、データ取得部121が取得した3次元点群データのデータ形式を変換し、3次元点群データとは異なるデータ形式のデータを生成する。データ変換部122により生成されるデータには、例えば、メッシュデータ(ポリゴンデータ)、サーフェスデータ、CADデータ等の各種データ形式のデータが含まれる。第1の実施形態では、3次元点群データを含むこれら各種データ形式のデータを総称して、“点群データに関する情報”と称す。ただし、以下では、説明の簡略化のため、データ変換部122のデータ形式変換機能は動作させず、点群データに関する情報=3次元点群データそのもの、であるとして説明する。
 また、データ変換部122は、3次元点群データを、対象物の一部の3次元形状を表す、複数の局所3次元点群データに分割する分割機能を有する。
 また、データ変換部122は、学習用データとして用いることを目的として取得された3次元点群データを分割することで得た、複数の局所3次元点群データを、学習用データとして、学習用データ格納部126に格納する格納機能を有する。
 具体的には、データ変換部122は、同一の対象物を第1及び第2の計測装置110、111が計測することで取得された2つの3次元点群データのうち、該対象物の同一の一部の3次元形状を表す、2つの局所3次元点群データを、互いに対応付けて格納する。このとき、データ変換部122では、互いに同一の3次元形状を元にして作成されたものであることを示す情報もあわせて格納する。
 また、データ変換部122は、同一の対象物を第1及び第2の計測装置110、111が計測することで取得された2つの3次元点群データのうち、該対象物の異なる一部の3次元形状を表す、2つの局所3次元点群データを、互いに対応付けて格納する。このとき、データ変換部122では、互いに異なる3次元形状を元にして作成されたものであることを示す情報もあわせて格納する。
 また、データ変換部122は、異なる対象物を第1及び第2の計測装置110、111が計測することで取得された2つの3次元点群データのうち、各対象物の一部の3次元形状を表す、2つの局所3次元点群データを、互いに対応付けて格納する。このとき、データ変換部122では、互いに異なる3次元形状を元にして作成されたものであることを示す情報もあわせて格納する。
 更に、データ変換部122では、推論用データとして用いることを目的として取得された3次元点群データを分割することで得た、複数の局所3次元点群データを、推論用データ格納部127に格納する格納機能を有する。
 具体的には、データ変換部122は、
・第1の計測装置110が計測することで取得された3次元点群データを分割した複数の局所3次元点群データと、
・第2の計測装置111が計測することで取得された3次元点群データを分割した複数の局所3次元点群データと、
を互いに対応付けて格納する。
 データ拡張部123は、学習用データとして学習用データ格納部126に格納された、複数の局所3次元点群データに対して、種々の変更処理を行うことで、学習用データを拡張する。
 学習部124は、深層学習フレームワークを有する。学習部124は、学習用データ格納部126に格納された複数の局所3次元点群データを読み出し、
・互いに対応付けられた2つの局所3次元点群データの組を入力データとして、ディープニューラルネットワーク(DNN:Deep Neural Network、例えば、3次元点群データ用のDNNであるPointNet)を実行し、
・同一の3次元形状を元にして作成されたものであるか否かを示す情報を正解ラベルとして、該ディープニューラルネットワーク(例えば、3次元点群データ用のDNNであるPointNet)に含まれる重みパラメータを更新する、
学習処理を行う。
 なお、学習部124は、学習処理を行うことで調整した重みパラメータを、推論部125に反映させる。
 推論部125は、学習部124同様、3次元点群データ用の深層学習フレームワークを有する。
 推論部125は、推論用データ格納部127に格納された複数の局所3次元点群データを読み出し、
・互いに対応付けられた2つの局所3次元点群データの組を入力データとして、ディープニューラルネットワーク(例えば、3次元点群データ用のDNNであるPointNet)を実行し、
・互いに対応付けられた2つの局所3次元点群データの元となる3次元形状が、同一であるか否かを推論する、
推論処理を行う。
 <点群データ同一性推定装置のハードウェア構成>
 次に、点群データ同一性推定装置120のハードウェア構成について説明する。図2は、点群データ同一性推定装置のハードウェア構成の一例を示す図である。
 図2に示すように、点群データ同一性推定装置120は、プロセッサ201と、メモリ202と、補助記憶装置203と、表示装置204と、操作装置205と、I/F(Interface)装置206と、ドライブ装置207とを有する。なお、点群データ同一性推定装置120の各ハードウェアは、バス208を介して相互に接続されている。
 プロセッサ201は、CPU(Central Processing Unit)、GPU(Graphics Processing Unit)等の各種演算デバイスを有する。プロセッサ201は、各種プログラムをメモリ202上に読み出して実行する。
 メモリ202は、ROM(Read Only Memory)、RAM(Random Access Memory)等の主記憶デバイスを有する。プロセッサ201とメモリ202とは、いわゆるコンピュータを形成し、プロセッサ201が、メモリ202上に読み出した各種プログラムを実行することで、当該コンピュータは上記機能(図1参照)を実現する。
 補助記憶装置203は、各種プログラムや、各種プログラムがプロセッサ201によって実行される際に用いられる各種データを格納する。学習用データ格納部126、推論用データ格納部127は、補助記憶装置203において実現される。
 表示装置204は、点群データ同一性推定装置120の内部状態を表示する表示デバイスである。操作装置205は、点群データ同一性推定装置120のユーザが点群データ同一性推定装置120に対して各種指示を入力する際に用いる入力デバイスである。I/F装置206は、第1の計測装置110及び第2の計測装置111と接続し、3次元点群データを受信するための接続デバイスである。
 ドライブ装置207は記録媒体210をセットするためのデバイスである。ここでいう記録媒体210には、CD-ROM、フレキシブルディスク、光磁気ディスク等のように情報を光学的、電気的あるいは磁気的に記録する媒体が含まれる。また、記録媒体210には、ROM、フラッシュメモリ等のように情報を電気的に記録する半導体メモリ等が含まれていてもよい。
 なお、補助記憶装置203にインストールされる各種プログラムは、例えば、配布された記録媒体210がドライブ装置207にセットされ、該記録媒体210に記録された各種プログラムがドライブ装置207により読み出されることでインストールされる。あるいは、補助記憶装置203にインストールされる各種プログラムは、不図示のネットワークを介してダウンロードされることで、インストールされてもよい。
 <学習用データの具体例>
 次に、学習用データ格納部126に格納される学習用データの具体例について説明する。図3は、学習用データの一例を示す図である。図3に示すように、学習用データ300は、情報の項目として、“第1点群データ”、“第2点群データ”、“正解ラベル”を有する。
 “第1点群データ”には、対象物を第1の計測装置110が計測することで取得した3次元点群データ310を分割した複数の局所3次元点群データが格納される。
 なお、図3の例は、複数の局所3次元点群データとして、局所3次元点群データ311、312の具体例を示している。図3に示すように、局所3次元点群データ311、312は、各点のX座標、Y座標、Z座標、R値、G値、B値を含む。また、図3の例の場合、局所3次元点群データ311、312は、2048点の点群を含む。
 “第2点群データ”には、対象物を第2の計測装置111が計測することで取得した3次元点群データ320を分割した複数の局所3次元点群データが格納される。
 なお、図3の例は、複数の局所3次元点群データとして、局所3次元点群データ321の具体例を示している。図3に示すように、局所3次元点群データ321は、各点のX座標、Y座標、Z座標、R値、G値、B値を含む。また、図3の例の場合、局所3次元点群データ321は、2048点の点群を含む。
 “正解ラベル”には、
・“第1点群データ”の局所3次元点群データと、
・“第2点群データ”の局所3次元点群データと、
で、互いに対応付けられた2つの局所3次元点群データが、同一の3次元形状を元にして作成されたものであるか否かを示す情報として、“同一”または“非同一”のいずれかが格納される。
 例えば、局所3次元点群データ311と局所3次元点群データ321とは、互いに同一の3次元形状を元にして作成されたものであるため、“正解ラベル”には、“同一”が格納される。なお、これらは第1教師データの一例である。
 一方、局所3次元点群データ312と局所3次元点群データ321は、互いに異なる3次元形状を元にして作成されたものであるため、“正解ラベル”には、“非同一”が格納される。なお、これらは第2教師データの一例である。
 <データ拡張部の機能構成の詳細>
 次に、データ拡張部123の機能構成の詳細について説明する。図4は、データ拡張部の機能構成の一例を示す図である。
 図4に示すように、データ拡張部123は、読み出し部401、密度変更部402、欠損部403、ノイズ付加部404、バイアス付加部405、角度変更部406、拡縮部407、シフト部408を有する。
 読み出し部401は、学習用データ格納部126に格納された学習用データ300から、所定の教師データを読み出す。図4の例は、学習用データ格納部126から、所定の教師データとして、局所3次元点群データ311、321を含む教師データ410を読み出した様子を示している。なお、読み出し部401が読み出す所定の教師データとは、“正解ラベル”に同一であることを示す情報が格納されている教師データである。
 密度変更部402は、教師データ410の“第1点群データ”及び“第2点群データ”に含まれる2つの局所3次元点群データのうちのいずれか一方の局所3次元点群データの各点を、一定間隔で間引くことで、各点の密度を変更する。密度変更部402は、変更した後の局所3次元点群データを含む教師データ421を、学習用データ格納部126に格納する。
 欠損部403は、教師データ410の“第1点群データ”及び“第2点群データ”に含まれる2つの局所3次元点群データのうちのいずれか一方の局所3次元点群データの各点をランダムに欠損させる。また、欠損部403は、欠損させた後の局所3次元点群データを含む教師データ422を、学習用データ格納部126に格納する。
 ノイズ付加部404は、教師データ410の“第1点群データ”及び“第2点群データ”に含まれる2つの局所3次元点群データのうちのいずれか一方の局所3次元点群データの任意の位置に、ノイズ(点)を付加する。また、ノイズ付加部404は、ノイズを付加した後の局所3次元点群データを含む教師データ423を、学習用データ格納部126に格納する。
 バイアス付加部405は、教師データ410の“第1点群データ”及び“第2点群データ”に含まれる2つの局所3次元点群データのうちのいずれか一方の局所3次元点群データの各点のR値、G値、B値にバイアス値を付加する(つまり、色を変化させる)。また、バイアス付加部405は、バイアス値を付加した後の局所3次元点群データを含む教師データ424を、学習用データ格納部126に格納する。
 角度変更部406は、教師データ410の“第1点群データ”及び“第2点群データ”に含まれる2つの局所3次元点群データのうちのいずれか一方の局所3次元点群データを、所定の角度以上傾ける。また、角度変更部406は、所定の角度以上傾けた後の局所3次元点群データを含む教師データ425を、学習用データ格納部126に格納する。教師データ425は第4教師データの一例である。
 また、角度変更部406では、所定の角度以上傾けた後の局所3次元点群データを含む教師データ425については、“正解ラベル”を、“同一”から“非同一”に変更する。2つの局所3次元点群データのうちのいずれか一方を所定の角度以上傾けた場合、これら2つの局所3次元点群データは、互いに異なる3次元形状を元にして作成されたものであるとみなせるからである。
 なお、角度変更部406は、教師データ410の“第1点群データ”及び“第2点群データ”に含まれる2つの局所3次元点群データのうちのいずれか一方の局所3次元点群データを、傾けない或いは所定の角度未満傾けてもよい。また、角度変更部406は、傾けない或いは所定の角度未満傾けた後の局所3次元点群データを含む教師データ425を、学習用データ格納部126に格納してもよい。この場合の教師データ425は第3教師データの一例となる。また、この場合の教師データ425については、角度変更部406は“正解ラベル”を変更しない。
 拡縮部407は、教師データ410の“第1点群データ”及び“第2点群データ”に含まれる2つの局所3次元点群データのうちのいずれか一方の局所3次元点群データを、所定範囲を超えた拡大率または縮小率で拡大または縮小する。また、拡縮部407は、所定範囲を超えた拡大率または縮小率で拡大または縮小した後の局所3次元点群データを含む教師データ426を、学習用データ格納部126に格納する。教師データ426は第6教師データの一例である。
 また、拡縮部407では、所定範囲を超えた拡大率または縮小率で拡大または縮小した後の局所3次元点群データを含む教師データ426については、“正解ラベル”を、“同一”から“非同一”に変更する。2つの局所3次元点群データのうちのいずれか一方を所定範囲を超えた拡大率または縮小率で拡大または縮小した場合、これら2つの局所3次元点群データは、互いに異なる3次元形状を元にして作成されたものであるとみなせるからである。
 なお、拡縮部407は、教師データ410に含まれる2つの局所3次元点群データを、同一サイズのまま、あるいは、いずれか一方の局所3次元点群データを、所定範囲内の拡大率または縮小率で拡大または縮小してもよい。また、拡縮部407は、同一サイズの局所3次元点群データまたは所定範囲内の拡大率または縮小率で拡大または縮小した後の局所3次元点群データを含む教師データ426を、学習用データ格納部126に格納してもよい。この場合の教師データ426は第5教師データの一例となる。また、この場合の教師データ426については、拡縮部407は“正解ラベル”を変更しない。
 シフト部408は、教師データ410の“第1点群データ”及び“第2点群データ”に含まれる2つの局所3次元点群データのうちのいずれか一方の局所3次元点群データの中心位置をシフトする。また、シフト部408は、中心位置をシフトした後の局所3次元点群データを含む教師データ427を、学習用データ格納部126に格納する。
 このように、データ拡張部123が学習用データ300を拡張することで、計測方向や計測位置、計測距離、計測タイミング、計測装置の種類等の各種計測条件が異なる、2つの局所3次元点群データの組を、疑似的に生成することができる。そして、拡張後の学習用データ300を用いることで、第1の実施形態によれば、各種計測条件が異なる2つの局所3次元点群データについての同一性の評価の精度を向上させることができる。
 <学習部の機能構成の詳細>
 次に、学習部124の機能構成の詳細について説明する。図5は、学習部の機能構成の一例を示す図である。図5に示すように、学習部124は、2つの局所3次元点群データが互いに同一の3次元形状を元にして作成されたものであるか否かを推論するために(同一性を評価するために)、シャム(Siamese)ネットワーク構造を利用する。
 具体的には、図5に示すように、学習部124は、第1点群データ入力部501、第1DNN部502、第2点群データ入力部511、第2DNN部512、同一性評価部521を有する。更に、学習部124は、比較部531を有する。
 第1点群データ入力部501は、学習用データ格納部126に格納された学習用データ300から、“第1点群データ”に格納された局所3次元点群データを読み出し、第1DNN部502に入力する。また、第2点群データ入力部511は、学習用データ格納部126に格納された学習用データ300から、“第2点群データ”に格納された局所3次元点群データを読み出し、第2DNN部512に入力する。
 なお、第1点群データ入力部501により入力される局所3次元点群データと、第2点群データ入力部511により入力される局所3次元点群データとは、学習用データ300において互いに対応付けられた局所3次元点群データである。
 第1DNN部502は第1ニューラルネットワークの一例であり、例えば、3次元点群データ用のDNNであるPointNetが用いられる。第1DNN部502は、第1点群データ入力部501により局所3次元点群データが入力されることで動作し、第1点群データ特徴量を出力する(下式(1)参照)。
Figure JPOXMLDOC01-appb-M000001
 上式(1)は、2048点の点群を含む局所3次元点群データから、1024個の特徴量を含む第1点群データ特徴量が出力されることを表している。
 第2DNN部512は第2ニューラルネットワークの一例であり、例えば、3次元点群データ用のDNNであるPointNetが用いられる。第2DNN部512は、第2点群データ入力部511により局所3次元点群データが入力されることで動作し、第2点群データ特徴量を出力する(下式(2)参照)。
Figure JPOXMLDOC01-appb-M000002
 上式(2)は、2048点の点群を含む局所3次元点群データから、1024個の特徴量を含む第2点群データ特徴量が出力されることを表している。
 同一性評価部521は、第1DNN部502より出力された第1点群データ特徴量と、第2DNN部512より出力された第2点群データ特徴量とを処理する。これにより、同一性評価部521は、2つの局所3次元点群データが、互いに同一の3次元形状を元にして作成されたものであるか否かを推論するためのデータ(2つの局所3次元点群データの同一性に関する評価)を出力する。
 具体的には、同一性評価部521では、第1DNN部502及び第2DNN部512より出力された第1点群データ特徴量pnαと第2点群データ特徴量pnβとに基づいて、ユークリッド距離Dを算出し、比較部531に出力する(下式(3)参照)。
Figure JPOXMLDOC01-appb-M000003
ただし、上式(3)において、第1点群データ特徴量pnα、第2点群データ特徴量pnβは、下式(4-1)、(4-2)を満たすものとする。
Figure JPOXMLDOC01-appb-M000004
 つまり、ユークリッド距離Dは、2つの局所3次元点群データの同一性に関する評価を表しているということができる。なお、ユークリッド距離Dが小さければ、同一性が高いことを示す評価が出力されたということができ、ユークリッド距離Dが大きければ、同一性が低いことを示す評価が出力されたということができる。
 比較部531は、同一性評価部521により出力されたユークリッド距離Dと、学習用データ格納部126より読み出された“正解ラベル”に格納された同一(または非同一)であることを示す情報とに基づいて損失関数Lを算出する(下式(5)参照)。
Figure JPOXMLDOC01-appb-M000005
ただし、上式(5)において、Cには、正解ラベルが“同一”であれば“0”が入力され、“非同一”であれば“1”が入力される。また、上式(5)において、mはマージンである。
 比較部531は、算出した損失関数Lを逆伝播させることで、第1DNN部502及び第2DNN部512の重みパラメータを更新する。
 なお、第1DNN部502の重みパラメータと第2DNN部512の重みパラメータとは互いに共有されており、損失関数Lが逆伝播された際、第1DNN部502と第2DNN部512とは、同じ値の重みパラメータに更新されることになる。
 このように、学習時に、損失関数Lを逆伝播させ、第1DNN部502と第2DNN部512とで重みパラメータを共有させながら更新することで、学習部124によれば、例えば、
・2つの局所3次元点群データの同一性に関する評価を出力するのに適した点群データ特徴量が出力されるように、重みパラメータを学習することができる、
・学習用データ300において、“第1点群データ”及び“第2点群データ”にそれぞれ格納された局所3次元点群データの特性に偏りがあった場合でも、汎化性能の高い重みパラメータを学習することができる、
といった効果を奏することになる。この結果、第1の実施形態によれば、同一性の評価の精度を向上させることができる。
 <学習処理の流れ>
 次に、学習部124による学習処理の流れについて説明する。図6は、学習部による学習処理の流れを示すフローチャートである。
 ステップS601において、第1点群データ入力部501及び第2点群データ入力部511は、学習用データ格納部126より、互いに対応付けられた2つの局所3次元点群データの組を複数読み出す。
 ステップS602において、第1DNN部502及び第2DNN部512は、読み出された2つの局所3次元点群データの組を入力することで動作し、第1点群データ特徴量pnα及び第2点群データ特徴量pnβを出力する。
 ステップS603において、同一性評価部521は、第1点群データ特徴量pnαと第2点群データ特徴量pnβとに基づいてユークリッド距離Dを算出する。
 ステップS604において、比較部531は、算出されたユークリッド距離Dと、学習用データ格納部126より読み出した正解ラベルCとに基づいて、損失関数Lを算出する。また、比較部531は、算出した損失関数Lに基づいて、第1DNN部502及び第2DNN部512の重みパラメータを共有させながら更新する。
 ステップS605において、比較部531は、学習処理を終了するか否かを判定する。ステップS605において、学習処理を終了しないと判定した場合には(ステップS605においてNOの場合には)、ステップS602に戻る。これにより、第1点群データ入力部501及び第2点群データ入力部511は、互いに対応付けられた2つの局所3次元点群データの組であって、まだ学習処理に用いられていない組を第1DNN部502及び第2DNN部512に入力する。
 一方、ステップS605において、学習処理を終了すると判定した場合には(ステップS605においてYESの場合には)、学習処理を終了し、更新した重みパラメータを、推論部125に反映する。
 <推論部の機能構成>
 次に、推論部125の機能構成の詳細について説明する。図7は、推論部の機能構成の一例を示す図である。学習部124と同様、推論部125は、2つの局所3次元点群データが、互いに同一の3次元形状を元にして作成されたものであるか否かを推論するために(同一性を評価するために)、シャム(Siamese)ネットワーク構造を利用する。
 具体的には、図7に示すように、推論部125は、第1点群データ入力部701、第1DNN部702、第2点群データ入力部711、第2DNN部712、同一性評価部721を有する。更に、推論部125は、出力部731を有する。
 第1点群データ入力部701は、推論用データ格納部127に格納された推論用データから、“第1点群データ”に格納された局所3次元点群データを読み出し、第1DNN部702に入力する。また、第2点群データ入力部711は、推論用データ格納部127に格納された推論用データから、“第2点群データ”に格納された局所3次元点群データを読み出し、第2DNN部712に入力する。
 なお、推論用データ格納部127に格納された推論用データは、情報の項目として“正解ラベル”がないことを除けば、図3の学習用データ300と同様の構成を有しているものとする。
 なお、第1点群データ入力部701により入力される局所3次元点群データと、第2点群データ入力部711により入力される局所3次元点群データとは、推論用データにおいて互いに対応付けられた局所3次元点群データである。
 第1DNN部702は第1ニューラルネットワークの一例であり、第1点群データ入力部701により局所3次元点群データが入力されることで動作し、第1点群データ特徴量pnαを出力する。
 第2DNN部712は第2ニューラルネットワークの一例であり、第2点群データ入力部711により局所3次元点群データが入力されることで動作し、第2点群データ特徴量pnβを出力する。なお、第1DNN部702と第2DNN部712とは、互いに重みパラメータが共有されている。
 同一性評価部721は、第1DNN部702より出力された第1点群データ特徴量と、第2DNN部712より出力された第2点群データ特徴量とを処理する。これにより、同一性評価部721は、2つの局所3次元点群データが、互いに同一の3次元形状を元にして作成されたものであるか否かを推論するためのデータ(2つの局所3次元点群データの同一性に関する評価)を出力する。
 具体的には、同一性評価部721では、第1DNN部702より出力された第1点群データ特徴量pnαと、第2DNN部712より出力された第2点群データ特徴量pnβとに基づいて、ユークリッド距離Dを算出し、出力部731に出力する。なお、上述したように、ユークリッド距離Dが小さければ、同一性が高いことを示す評価が出力されたということができ、ユークリッド距離Dが大きければ、同一性が低いことを示す評価が出力されたということができる。
 出力部731では、同一性評価部721より出力されたユークリッド距離Dが所定の閾値以上であるか否かを判定する(下式(6-1)、(6-2)参照)。
Figure JPOXMLDOC01-appb-M000006
 ユークリッド距離Dが所定の閾値tより大きいと判定した場合(上式(6-1))、出力部731では、同一性の評価として“非同一である”を出力する。一方、ユークリッド距離Dが所定の閾値t以下であると判定した場合(上式(6-2))、出力部731では、同一性の評価として、“同一である”を出力する。
 このように、推論時に、互いに重みパラメータが共有された第1DNN部702と第2DNN部712とを用いることで、推論部125によれば、例えば、
・2つの局所3次元点群データの同一性に関する評価を出力するのに適した点群データ特徴量を出力することができる、
・2つの局所3次元点群データを第1DNN部702と第2DNN部712のいずれに入力するかによらず、同一性に関する評価として、同じデータを出力することができる、
といった効果を奏することになる。この結果、第1の実施形態によれば、同一性の評価の精度を向上させることができる。
 <推論処理の流れ>
 次に、推論部125による推論処理の流れについて説明する。図8は、推論部による推論処理の流れを示すフローチャートである。
 ステップS801において、第1点群データ入力部701及び第2点群データ入力部711は、推論用データ格納部127より、互いに対応付けられた2つの局所3次元点群データの組を読み出す。
 ステップS802において、第1DNN部702及び第2DNN部712は、読み出された2つの局所3次元点群データの組を入力することで動作し、第1点群データ特徴量pnα及び第2点群データ特徴量pnβを出力する。
 ステップS803において、同一性評価部721は、第1点群データ特徴量pnαと第2点群データ特徴量pnβとに基づいてユークリッド距離Dを算出する。
 ステップS804において、出力部731は、同一性評価部721より出力されたユークリッド距離Dに基づいて、同一性の評価(“同一である”または“非同一である”)を出力する。
 <推論結果の具体例>
 次に、推論部125による推論結果の具体例について説明する。図9は、推論結果の具体例を示す図である。
 このうち、図9の9aは、推論処理に用いた推論用データの概要を示している。図9の9aにおいて、“対象物の種類”には、第1の計測装置110及び第2の計測装置111が計測した対象物の種類を示している。
 また、図9の9aにおいて、“2つの局所3次元点群データが同一の組の数”には、対応する“対象物の種類”に含まれる複数の局所3次元点群データのうち、互いに同一の3次元形状を元にして作成された、2つの局所3次元点群データの組の数が格納される。また、“2つの局所3次元点群データが非同一の組の数”には、対応する“対象物の種類”に含まれる複数の局所3次元点群データのうち、互いに異なる3次元形状を元にして作成された、2つの局所3次元点群データの組の数が格納される。
 一方、図9の9bは、図9の9aに示す推論用データを入力データとして、推論部125が推論した推論結果についての、“対象物の種類”ごとの適合率を示している。図9の9bに示すように、推論部125によれば、“対象物の種類”によらず、高い適合率を実現することが可能となる。
 <まとめ>
 以上の説明から明らかなように、第1の実施形態に係る点群データ同一性推定システムは、点群データ同一性推定装置が、
・3次元点群データからなる第1点群データ及び第2点群データを取得する第1点群データ取得部及び第2点群データ取得部を有する。
・第1点群データを入力して第1点群データ特徴量を出力する第1DNN部と、第2点群データを入力して第2点群データ特徴量を出力する第2DNN部とを有する。
・第1点群データ特徴量と第2点群データ特徴量とに基づいて、第1点群データと第2点群データの同一性に関する評価を出力する同一性評価部を有する。
・第1DNN部と第2DNN部とは、互いに重みパラメータが共有されている。
 これにより、第1の実施形態によれば、3次元点群データについて、同一性の評価の精度を向上させる点群データ同一性推定装置及び点群データ同一性推定システムを提供することができる。
 [第2の実施形態]
 上記第1の実施形態では、点群データに関する情報が、3次元点群データそのものであるとして説明した。しかしながら、点群データに関する情報は、3次元点群データそのものに限定されず、メッシュデータ(ポリゴンデータ)やサーフェスデータ、CADデータ等であってもよい。
 また、上記第1の実施形態では、互いに異なる3次元形状を元に作成した2つの局所3次元点群データを対応付けて学習用データ300として格納する場合の対応付け方法について言及しなかった。しかしながら、2つの局所3次元点群データを対応付ける際、例えば、それぞれの3次元形状が所定の距離内に位置する3次元点群データに限定して対応付けを行うようにしてもよい。
 また、上記第1の実施形態では、データ拡張部123に含まれる各部のうち、
・角度変更部406が角度を変更する場合、及び、
・拡縮部407がサイズを変更する場合、
に変更の度合いに応じて、“正解ラベル”が“同一”の教師データと、“正解ラベル”が“非同一”の教師データとを生成するものとして説明した。
 しかしながら、角度変更部406、拡縮部407以外の各部についても、同様に、変更の度合いに応じて、“正解ラベル”が“同一”の教師データと、“正解ラベル”が“非同一”の教師データとを生成するように構成してもよい。
 また、上記第1の実施形態において、データ拡張部123は、“正解ラベル”が“同一”の教師データを読み出して、学習用データ300を拡張する場合について説明した。しかしながら、データ拡張部123が学習用データ300を拡張する際に読み出す教師データは、これに限定されず、“正解ラベル”が“非同一”の教師データを読み出してもよい。
 これにより、例えば、同一の3次元形状を有する別箇の個体であって、色のみが異なっている場合や、材質のみが異なっている場合に、同一性の評価として、誤って“同一である”との出力がなされてしまうといった事態を回避することができる。
 また、上記第1の実施形態では、データ拡張部123に含まれる各部が学習用データ300を拡張する場合について説明した。しかしながら、学習用データ300の拡張方法はこれに限定されず、各種計測条件を人為的に変更することで、学習用データ300を拡張してもよい。
 例えば、密度変更部402または拡縮部407を動作させる代わりに、第1の計測装置110から対象物までの計測距離を変更したり、第1の計測装置110の種類を変更することで、学習用データ300を拡張してもよい。
 また、例えば、角度変更部406を動作させる代わりに、第1の計測装置110の角度を傾け、計測方向を変更することで、学習用データ300を拡張してもよい。また、例えば、シフト部408を動作させる代わりに、第1の計測装置110の計測位置をシフトすることで、学習用データ300を拡張してもよい。また、例えば、ノイズ付加部404またはバイアス付加部405を動作させる代わりに、実環境130内の照明の明るさを変更したり、第1の計測装置110の計測タイミングを変更することで、学習用データ300を拡張してもよい。
 また、上記第1の実施形態では、同一性評価部521が、第1点群データ特徴量と第2点群データ特徴量とに基づいて算出したユークリッド距離Dを、同一性に関する評価として出力する場合について説明した。しかしながら、同一性評価部521による同一性に関する評価の出力方法はこれに限定されず、他の関数を用いて算出したデータを、同一性に関する評価として出力してもよい。あるいは、関数以外の方法で(例えば、NNを用いて)算出したデータを、同一性に関する評価として出力してもよい。
 また、上記第1の実施形態では、点群データ同一性推定装置120が、学習部124と推論部125とを有するものとして説明した。しかしながら、学習部124と推論部125とは、別体の装置により構成してもよい。
 以上、実施形態を説明したが、特許請求の範囲の趣旨及び範囲から逸脱することなく、形態や詳細の多様な変更が可能なことが理解されるであろう。
 本出願は、2019年9月30日に出願された日本国特許出願第2019-181004号に基づきその優先権を主張するものであり、同日本国特許出願の全内容を参照することにより本願に援用する。
 100         :点群データ同一性推定システム
 110、111     :第1、第2の計測装置
 120         :点群データ同一性推定装置
 121         :データ取得部
 122         :データ変換部
 123         :データ拡張部
 124         :学習部
 125         :推論部
 300         :学習用データ
 310、320     :3次元点群データ
 311、312、321 :局所3次元点群データ
 401         :読み出し部
 402         :密度変更部
 403         :欠損部
 404         :ノイズ付加部
 405         :バイアス付加部
 406         :角度変更部
 407         :拡縮部
 408         :シフト部
 501         :第1点群データ入力部
 502         :第1DNN部
 511         :第2点群データ入力部
 512         :第2DNN部
 521         :同一性評価部
 531         :比較部
 701         :第1点群データ入力部
 702         :第1DNN部
 711         :第2点群データ入力部
 712         :第2DNN部
 721         :同一性評価部
 731         :出力部

Claims (8)

  1.  2つの3次元点群データの元となる対象物の同一性を推定する点群データ同一性推定装置であって、
     3次元点群データからなる第1点群データ及び第2点群データを取得する点群データ取得部と、
     第1点群データに関する情報を入力して第1点群データ特徴量を出力する第1ニューラルネットワークと、
     第2点群データに関する情報を入力して第2点群データ特徴量を出力する第2ニューラルネットワークと、
     前記第1点群データ特徴量と前記第2点群データ特徴量とに基づいて、前記第1点群データと前記第2点群データの同一性に関する評価を出力する同一性評価部と、を有し、
     前記第1ニューラルネットワークと前記第2ニューラルネットワークとは互いに重みが共有されている、点群データ同一性推定装置。
  2.  互いに同一の3次元形状を元にして作成された2つの3次元点群データに関する情報を第1教師データとして前記第1ニューラルネットワーク及び前記第2ニューラルネットワークに入力した場合に、同一性評価部が同一性が高いと示す評価を出力するように、前記第1ニューラルネットワーク及び前記第2ニューラルネットワークの重みを互いに共有させながら更新し、
     互いに異なる3次元形状を元にして作成された2つの3次元点群データに関する情報を第2教師データとして前記第1ニューラルネットワーク及び前記第2ニューラルネットワークに入力した場合に、前記同一性評価部が同一性が低いと示す評価を出力するように、前記第1ニューラルネットワーク及び前記第2ニューラルネットワークの重みを互いに共有させながら更新する、請求項1に記載の点群データ同一性推定装置。
  3.  前記第1教師データは、互いに同一の3次元形状を元にして作成された2つの3次元点群データに関する情報のうち少なくとも一方を欠損させたもの、または、少なくとも一方にノイズを加えたものである、請求項2に記載の点群データ同一性推定装置。
  4.  前記第1教師データは、互いに同一の3次元形状を異なる条件で計測したものを元にして作成された2つの3次元点群データに関する情報である、請求項2に記載の点群データ同一性推定装置。
  5.  前記第1点群データに関する情報及び前記第2点群データに関する情報は、それぞれ、3次元点群データである、請求項1に記載の点群データ同一性推定装置。
  6.  所定の3次元形状を元にして作成された3次元点群データ、及び、前記所定の3次元形状を傾けない或いは所定の角度未満傾けたものを元にして作成された3次元点群データを、第3教師データとして前記第1ニューラルネットワーク及び前記第2ニューラルネットワークに入力した場合に、同一性評価部が同一性が高いと示す評価を出力するように、前記第1ニューラルネットワーク及び前記第2ニューラルネットワークの重みを互いに共有させながら更新し、
     所定の3次元形状を元にして作成された3次元点群データ、及び、前記所定の3次元形状を前記所定の角度以上傾けたものを元にして作成された3次元点群データを、第4教師データとして前記第1ニューラルネットワーク及び前記第2ニューラルネットワークに入力した場合に、前記同一性評価部が同一性が低いと示す評価を出力するように、前記第1ニューラルネットワーク及び前記第2ニューラルネットワークの重みを互いに共有させながら更新する、請求項5に記載の点群データ同一性推定装置。
  7.  所定の3次元形状を元にして作成された3次元点群データ、及び、前記所定の3次元形状と同一サイズのもの或いは前記所定の3次元形状を所定範囲内の拡大率または縮小率で拡大または縮小したものを元にして作成された3次元点群データを、第5教師データとして前記第1ニューラルネットワーク及び前記第2ニューラルネットワークに入力した場合に、同一性評価部が同一性が高いと示す評価を出力するように、前記第1ニューラルネットワーク及び前記第2ニューラルネットワークの重みを互いに共有させながら更新し、
     所定の3次元形状を元にして作成された3次元点群データ、及び、前記所定の3次元形状を前記所定範囲を超えた拡大率または縮小率で拡大または縮小したものを元にして作成された3次元点群データを、第6教師データとして前記第1ニューラルネットワーク及び前記第2ニューラルネットワークに入力した場合に、前記同一性評価部が同一性が低いと示す評価を出力するように、前記第1ニューラルネットワーク及び前記第2ニューラルネットワークの重みを互いに共有させながら更新する、請求項5に記載の点群データ同一性推定装置。
  8.  対象物を計測し、3次元点群データを作成する計測装置と、
     2つの3次元点群データの元となる対象物の同一性を推定する点群データ同一性推定装置と、を有する点群データ同一性推定システムであって、
     前記点群データ同一性推定装置は、
     3次元点群データからなる第1点群データ及び第2点群データを取得する点群データ取得部と、
     第1点群データに関する情報を入力して第1点群データ特徴量を出力する第1ニューラルネットワークと、
     第2点群データに関する情報を入力して第2点群データ特徴量を出力する第2ニューラルネットワークと、
     前記第1点群データ特徴量と前記第2点群データ特徴量とに基づいて、前記第1点群データと前記第2点群データの同一性に関する評価を出力する同一性評価部と、を有し、
     前記第1ニューラルネットワークと前記第2ニューラルネットワークとは互いに重みが共有されている、点群データ同一性推定システム。
PCT/JP2020/035231 2019-09-30 2020-09-17 点群データ同一性推定装置及び点群データ同一性推定システム WO2021065538A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202080066282.9A CN114424244B (zh) 2019-09-30 2020-09-17 点云数据相同性估计装置及点云数据相同性估计***
US17/754,219 US11704841B2 (en) 2019-09-30 2020-09-17 Apparatus for estimating sameness of point cloud data and system for estimating sameness of point cloud data

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2019181004A JP6819758B1 (ja) 2019-09-30 2019-09-30 点群データ同一性推定装置及び点群データ同一性推定システム
JP2019-181004 2019-09-30

Publications (1)

Publication Number Publication Date
WO2021065538A1 true WO2021065538A1 (ja) 2021-04-08

Family

ID=74200220

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2020/035231 WO2021065538A1 (ja) 2019-09-30 2020-09-17 点群データ同一性推定装置及び点群データ同一性推定システム

Country Status (4)

Country Link
US (1) US11704841B2 (ja)
JP (1) JP6819758B1 (ja)
CN (1) CN114424244B (ja)
WO (1) WO2021065538A1 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023021559A1 (ja) * 2021-08-16 2023-02-23 日本電気株式会社 推定モデル訓練装置、推定モデル訓練方法、認識装置、認識方法、及び非一時的なコンピュータ可読媒体
WO2024095380A1 (ja) * 2022-11-02 2024-05-10 三菱電機株式会社 点群識別装置、学習装置、点群識別方法、および、学習方法
CN115880276B (zh) * 2023-01-09 2023-05-12 广东电网有限责任公司肇庆供电局 一种基于多期点云对比的塔杆运行状态评估方法及***

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012057960A (ja) * 2010-09-06 2012-03-22 Topcon Corp 点群位置データ処理装置、点群位置データ処理方法、点群位置データ処理システム、および点群位置データ処理プログラム
JP2019101927A (ja) * 2017-12-06 2019-06-24 株式会社日立製作所 学習システム及び画像検索システム
JP2019133545A (ja) * 2018-02-02 2019-08-08 株式会社デンソーアイティーラボラトリ 特徴表現装置、それを含む認識システム、及び特徴表現プログラム

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2674326C2 (ru) * 2017-02-20 2018-12-06 Автономная некоммерческая образовательная организация высшего образования "Сколковский институт науки и технологий" Способ формирования архитектуры нейросети для классификации объекта, заданного в виде облака точек, способ ее применения для обучения нейросети и поиска семантически схожих облаков точек
WO2018190805A1 (en) * 2017-04-11 2018-10-18 Siemens Aktiengesellschaft Depth image pose search with a bootstrapped-created database
US10679075B2 (en) * 2017-08-31 2020-06-09 Nec Corporation Dense correspondence estimation with multi-level metric learning and hierarchical matching
CN108228798B (zh) * 2017-12-29 2021-09-17 百度在线网络技术(北京)有限公司 确定点云数据之间的匹配关系的方法和装置
CN108198145B (zh) * 2017-12-29 2020-08-28 百度在线网络技术(北京)有限公司 用于点云数据修复的方法和装置
WO2019182974A2 (en) * 2018-03-21 2019-09-26 Nvidia Corporation Stereo depth estimation using deep neural networks
US10832084B2 (en) * 2018-08-17 2020-11-10 Nec Corporation Dense three-dimensional correspondence estimation with multi-level metric learning and hierarchical matching
CN110147706B (zh) * 2018-10-24 2022-04-12 腾讯科技(深圳)有限公司 障碍物的识别方法和装置、存储介质、电子装置
WO2020154973A1 (en) * 2019-01-30 2020-08-06 Baidu.Com Times Technology (Beijing) Co., Ltd. Lidar localization using rnn and lstm for temporal smoothness in autonomous driving vehicles
US20200311136A1 (en) * 2019-03-25 2020-10-01 HealthBlock, Inc. Measuring and increasing the quality of user-provided information
CN110246167A (zh) * 2019-06-14 2019-09-17 北京百度网讯科技有限公司 用于处理点云数据的方法和装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012057960A (ja) * 2010-09-06 2012-03-22 Topcon Corp 点群位置データ処理装置、点群位置データ処理方法、点群位置データ処理システム、および点群位置データ処理プログラム
JP2019101927A (ja) * 2017-12-06 2019-06-24 株式会社日立製作所 学習システム及び画像検索システム
JP2019133545A (ja) * 2018-02-02 2019-08-08 株式会社デンソーアイティーラボラトリ 特徴表現装置、それを含む認識システム、及び特徴表現プログラム

Also Published As

Publication number Publication date
US11704841B2 (en) 2023-07-18
JP6819758B1 (ja) 2021-01-27
US20220343553A1 (en) 2022-10-27
JP2021056904A (ja) 2021-04-08
CN114424244A (zh) 2022-04-29
CN114424244B (zh) 2022-09-30

Similar Documents

Publication Publication Date Title
WO2021065538A1 (ja) 点群データ同一性推定装置及び点群データ同一性推定システム
US9361728B2 (en) Submarine topography construction method based on multi-source water depth data integration
WO2018113502A1 (zh) 一种自动生成网格与着色器多层次细节的方法
CN106251384A (zh) 使用三角形的递归再分的细分方法
US10229525B2 (en) Enhanced texture packing
JPWO2013111195A1 (ja) 描画データ生成装置及び画像描画装置
JP7074090B2 (ja) 深度超解像装置、深度超解像方法、及びプログラム
US20230267686A1 (en) Subdividing a three-dimensional mesh utilizing a neural network
JP2020068000A (ja) 訓練装置、訓練方法、予測装置、予測方法及びプログラム
JP7068242B2 (ja) 学習装置、学習方法およびプログラム
JP5372241B2 (ja) 画像表示装置
WO2009104218A1 (ja) 地図表示装置
US20230298269A1 (en) Systems and Methods for Generating Splat-Based Differentiable Two-Dimensional Renderings
KR20230167746A (ko) 메시 정점 위치에 대한 반복 및 루트 찾기를 사용하여 표면에 근사하는 폴리곤 메시를 생성하기 위한 방법 및 시스템
US9324187B2 (en) Visualization apparatus and method
US20230154102A1 (en) Representing 3d shapes with probabilistic directed distance fields
US20170039743A1 (en) Method and apparatus for performing path rendering
KR100848687B1 (ko) 3차원 그래픽 처리 장치 및 그것의 동작 방법
Shao et al. A multi-GPU accelerated virtual-reality interaction simulation framework
Liew et al. Searching for the optimum value of the smoothing parameter for a radial basis function surface with feature area by using the bootstrap method
JP2001076172A (ja) 曲面発生方法及びその装置並びに記憶媒体
US11954802B2 (en) Method and system for generating polygon meshes approximating surfaces using iteration for mesh vertex positions
US20230394767A1 (en) Method and system for generating polygon meshes approximating surfaces using root-finding and iteration for mesh vertex positions
CN111144064B (zh) 文字变形方法、介质、设备及装置
JP2023023446A (ja) 点群データ同一性推定装置及び点群データ同一性推定システム

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

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

Country of ref document: EP

Kind code of ref document: A1