3D Point Group Data Processing Apparatus, 3D Point Group Data Processing Program, and 3D Point Group Data Processing Method
The described method inverts normal vectors and aligns non-overlapping three-dimensional point cloud data to accurately combine and restore fragmented cultural artifacts by aligning them in a common coordinate system.
Patent Information
- Application Number
- JP2022003143
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2022-01-12
- Publication Date
- 2025-07-01
- Estimated Expiration
- 2042-01-12
AI Technical Summary
Existing techniques struggle to accurately align three-dimensional point cloud data when there are no overlapping portions between fragments of cultural artifacts or objects, such as artworks excavated from archaeological sites, due to differing normal vector directions.
A three-dimensional point cloud data processing apparatus and method that inverts the normal vector direction of one set of data and aligns it with another set in a common coordinate system, followed by combining the aligned data to generate a unified virtual object.
Enables accurate alignment and combination of non-overlapping three-dimensional point cloud data, even when there are no overlapping portions, by utilizing normal vector inversion and alignment techniques.
Smart Images

Figure 0007701283000001 
Figure 0007701283000002 
Figure 0007701283000003
Abstract
Description
Technical Field
[0001] The present disclosure relates to a three-dimensional point cloud data processing apparatus, a three-dimensional point cloud data processing program, and a three-dimensional point cloud data processing method.
Background Art
[0002] Conventionally, a technique for aligning a plurality of three-dimensional point cloud data obtained by three-dimensional measurement at a plurality of measurement positions is known. For example, in Patent Document 1, for each measurement position, point cloud data belonging to a planar region is extracted from the acquired point cloud data, and an offset amount is calculated such that the vertical difference between the planar regions to which the extracted point cloud data belongs matches between a plurality of measurement positions, and alignment is performed using the point cloud data corrected according to the offset amount.
[0003] Further, in Patent Document 2, among the three-dimensional point cloud data acquired by a laser range finder mounted on a moving body, the previous data on the vertical plane located in the traveling direction (first direction) of the previous moving body and the current data on the vertical plane located in the first direction among the current three-dimensional point cloud data are extracted, and a technique for correcting the position of the current three-dimensional point cloud data so that the difference in distance between the previous data and the current data is minimized is disclosed.
Prior Art Documents
Patent Documents
[0004]
Patent Document 1
Patent Document 2
Summary of the Invention
Problems to be Solved by the Invention
[0005] Incidentally, as an object for acquiring a plurality of three-dimensional point cloud data, cultural properties such as artworks stored in art museums can be considered. For example, artworks found at archaeological sites may not retain their original forms and may be excavated as a group of fragments consisting of multiple fragments. In this case, the three-dimensional point cloud data of each fragment does not overlap with the three-dimensional point cloud data of other fragments. Therefore, when virtually restoring the original form of an artwork from the three-dimensional point cloud data of a group of fragments by using the techniques of Patent Documents 1 and 2 described above, it has been difficult to accurately align the three-dimensional point cloud data.
[0006] The present disclosure has been made in view of the above, and an object thereof is to provide a three-dimensional point cloud data processing apparatus, a three-dimensional point cloud data processing program, and a three-dimensional point cloud data processing method capable of accurately aligning three-dimensional point cloud data even when there is no overlapping portion between a plurality of three-dimensional point cloud data.
Means for Solving the Problems
[0007] In order to solve the above-described problems and achieve the object, a three-dimensional point cloud data processing apparatus according to the present disclosure includes an acquisition unit that acquires a plurality of three-dimensional virtual objects corresponding to a plurality of three-dimensional point cloud data obtained by three-dimensionally measuring a plurality of objects, the plurality of three-dimensional point cloud data having normal vectors of planes formed by a plurality of points; an inversion unit that inverts the direction of the normal vector of any one of the plurality of three-dimensional point cloud data; an alignment unit that aligns the three-dimensional point cloud data whose normal vector direction has been inverted by the inversion unit with any one of the plurality of three-dimensional point cloud data; and a combining unit that combines two of the three-dimensional virtual objects corresponding to the two three-dimensional point cloud data with which the alignment unit has performed the alignment to generate a three-dimensional virtual object combined body.
[0008] In addition, the 3D point cloud data processing program according to the present disclosure is a plurality of 3D point cloud data obtained by three-dimensionally measuring a plurality of objects, and is a plurality of 3D virtual objects corresponding to the plurality of 3D point cloud data each having a normal vector of a plane formed by a plurality of points. An acquisition step of acquiring; an inversion step of inverting the direction of any one of the normal vectors of the plurality of 3D point cloud data; an alignment step of aligning the 3D point cloud data with the inverted normal vector direction and any one of the plurality of 3D point cloud data; A combining step of combining two of the 3D virtual objects corresponding to the two 3D point cloud data after the alignment to generate a 3D virtual object combination is executed by the 3D point cloud data processing device.
[0009] In addition, the 3D point cloud data processing method according to the present disclosure is a plurality of 3D point cloud data obtained by three-dimensionally measuring a plurality of objects, and is a plurality of 3D virtual objects corresponding to the plurality of 3D point cloud data each having a normal vector of a plane formed by a plurality of points. An acquisition step of acquiring; an inversion step of inverting the direction of any one of the normal vectors of the plurality of 3D point cloud data; an alignment step of aligning the 3D point cloud data with the inverted normal vector direction and any one of the plurality of 3D point cloud data; A combining step of combining two of the 3D virtual objects corresponding to the two 3D point cloud data after the alignment to generate a 3D virtual object combination is included.
Effect of the Invention
[0010] According to the present disclosure, there is an effect that even when there is no overlapping portion between a plurality of 3D point cloud data, it is possible to accurately perform alignment between the 3D point cloud data.
Brief Description of the Drawings
[0011]
Figure 1
Figure 2
Figure 3
Figure 4
Figure 5
Figure 6
Figure 7
Figure 8
Figure 9
Figure 10
Figure 11
Figure 12
Figure 13
Figure 14
Figure 15
Figure 16
Figure 17
Figure 18
Figure 19
Figure 20
Figure 21
Figure 22
Figure 23
Figure 24
Figure 25
Figure 26
Figure 27
Figure 28
Figure 29
Figure 30
Figure 31
MODE FOR CARRYING OUT THE INVENTION
[0012] Hereinafter, embodiments for carrying out the present disclosure will be described in detail with reference to the drawings. Note that the present disclosure is not limited by the following embodiments.
[0013] (Embodiment 1) 〔Functional Configuration of Three-Dimensional Point Group Data Processing Apparatus〕 FIG. 1 is a block diagram showing a functional configuration of a three-dimensional point cloud data processing apparatus according to Embodiment 1 of the present disclosure. The three-dimensional point cloud data processing apparatus 1 shown in FIG. 1 includes a communication unit 11, an input unit 12, a display unit 13, a recording unit 14, and a control unit 15. The three-dimensional point cloud data processing apparatus 1 shown in FIG. 1 is realized by using any one of various general-purpose terminals such as a personal computer, a smartphone, and a tablet-type terminal, or a dedicated apparatus such as a server. Alternatively, the three-dimensional point cloud data processing apparatus 1 may be realized by a combination of a plurality of terminals and dedicated apparatuses.
[0014] The communication unit 11 communicates with the outside through a network (not shown) under the control of the control unit 15. This network is composed of, for example, an Internet line network and a mobile phone line network. The communication unit 11 is configured by using, for example, a LAN (Local Area Network) interface board or the like.
[0015] The input unit 12 receives inputs of various operations and outputs information corresponding to the received operations to the control unit 15. The input unit 12 is configured by using a mouse, a keyboard, a microphone, and the like.
[0016] The display unit 13 displays various information under the control of the control unit 15. The display unit 13 is configured by using a liquid crystal display or an organic EL display (Organic Electroluminescent Display) or the like.
[0017] The recording unit 14 records various information related to the three-dimensional point cloud data processing device 1. The recording unit 14 is configured using a DRAM (Dynamic Random Access Memory), a ROM (Read Only Memory), an HDD (Hard Disk Drive), an SSD (Solid State Drive), a flash memory, and the like. The recording unit 14 includes a program recording unit 141 and a three-dimensional virtual object recording unit 142. The program recording unit 141 records various programs executed by the three-dimensional point cloud data processing device 1. The three-dimensional virtual object recording unit 142 records a plurality of three-dimensional point cloud data, feature amounts of each of the plurality of three-dimensional point cloud data, and a plurality of three-dimensional virtual objects respectively corresponding to the plurality of three-dimensional point cloud data in an associated manner. Here, the three-dimensional virtual object is an object generated using the three-dimensional point cloud data obtained by measuring an object by the three-dimensional measurement method described later. Further, the object is, for example, a geographical landmark such as a building or a facility, the appearance and interior of the landmark, the stored items stored in the facility (for example, art works, excavated items, Buddha statues, sculptures, etc.), plants growing in the facility, and the like. Furthermore, the feature amount of the three-dimensional point cloud data represents features such as the shape of the surface formed by the point cloud, and specifically includes information related to the normal line, curvature, etc. at each point on the surface. Note that the three-dimensional virtual object recording unit 142 may be configured to be communicatively connected to the three-dimensional point cloud data processing device 1 via a network as a device separate from the three-dimensional point cloud data processing device 1.
[0018] The control unit 15 includes, as functional modules, an acquisition unit 151, a display control unit 152, an inversion unit 153, an alignment unit 154, a determination unit 155, and a combination unit 156. Specifically, the control unit 15 is configured using a processor having hardware such as a memory and a CPU (Central Processing Unit) or a GPU (Graphics Processing Unit). The control unit 15 reads the program recorded in the program recording unit 141 into the working area of the memory and executes it, and controls each component etc. through the execution of the program by the processor, so that the hardware and software cooperate to realize a functional module that meets a predetermined purpose.
[0019] The acquisition unit 151 acquires a plurality of three-dimensional virtual objects selected from among the plurality of three-dimensional virtual objects recorded by the three-dimensional virtual object recording unit 142 according to the operation information received by the input unit 12.
[0020] The display control unit 152 causes the display unit 13 to display the plurality of three-dimensional virtual objects acquired by the acquisition unit 151. Further, the display control unit 152 causes the display unit 13 to display various information regarding the three-dimensional point cloud data processing device 1.
[0021] The inversion unit 153 inverts any one of the normal vectors of the plurality of three-dimensional point cloud data respectively corresponding to the plurality of three-dimensional virtual objects. Specifically, the inversion unit 153 inverts the normal vector on the plane composed of the plurality of point clouds that make up the three-dimensional virtual object among the plurality of three-dimensional point cloud data respectively corresponding to the plurality of three-dimensional virtual objects. The direction of the normal vector is defined as, for example, the direction toward the outside of the three-dimensional virtual object (the direction from the back side to the front side), and the one with the direction of the normal vector inverted corresponds to the reverse vector of the normal vector. Also, for convenience, the normal vector is assumed to have a unit length.
[0022] The alignment unit 154 aligns the three-dimensional point group data whose normal vector has been inverted by the inversion unit 153 with any one of a plurality of three-dimensional point group data whose normal vector direction has not been inverted. Specifically, the alignment unit 154 converts the three-dimensional point group data whose normal vector has been inverted by the inversion unit 153 and any one of a plurality of three-dimensional point group data whose normal vector direction has not been inverted into a common coordinate system. Then, the alignment unit 154 calculates feature points or feature regions from the feature amounts of the two three-dimensional point group data having the common coordinate system, and performs alignment by using a well-known matching technique (for example, refer to Patent Document 1 and Japanese Unexamined Patent Application Publication No. 2004-54308) on the feature points or feature regions of each of the calculated three-dimensional point group data. Note that the common coordinate system may be the coordinate system of either one of the three-dimensional point group data.
[0023] The determination unit 155 determines whether there is an unconnected three-dimensional virtual object among the plurality of three-dimensional virtual objects.
[0024] The combining unit 156 combines two three-dimensional virtual objects corresponding to the two three-dimensional point group data aligned by the alignment unit 154 to generate a three-dimensional virtual object combination. Specifically, the combining unit 156 converts the three-dimensional point group data corresponding to the three-dimensional virtual object whose normal vector direction has been inverted and the three-dimensional point group data corresponding to the three-dimensional virtual object whose normal vector direction has not been inverted into a common coordinate system and combines them to generate a three-dimensional virtual object combination.
[0025] 〔Outline of three-dimensional measurement method〕 Next, an outline of the three-dimensional measurement method when measuring an object will be described. The 3D scanner used in the three-dimensional measurement method can be classified into two types according to the type of the object.
[0026] First, a three-dimensional measurement method (hereinafter referred to as "Method 1") in the case where the object is a structure or terrain will be described. In Method 1, a ground-based (ground type) laser scanner is used as the 3D scanner. Method 1 calculates the distance from the laser scanner to the object using the time from when the laser scanner irradiates the laser until the laser is reflected by the object and returns to the laser scanner, and the propagation speed of the laser, and obtains the three-dimensional coordinates of the object. The measurement accuracy of this Method 1 is about 1 to 10 mm.
[0027] Next, a three-dimensional measurement method (hereinafter referred to as "Method 2") in the case where the object is small objects will be described. In Method 2, a scanner such as an articulated arm type or a handy type is used as the 3D scanner. These 3D scanners are classified into two types: contact type and non-contact type.
[0028] The contact type contacts the object with a sensor or a probe, and obtains the three-dimensional coordinates of the contacted position. The contact type has a higher measurement accuracy for the object compared to other 3D scanners, but it takes time to measure the object, and it cannot measure parts where the sensor or probe cannot enter. For this reason, the contact type is generally used for applications such as product inspection.
[0029] The non-contact type obtains the three-dimensional coordinates of the object without contacting the object. There are three types of non-contact types: the optical cutting method, the optical projection method, and photogrammetry.
[0030] The optical cutting method irradiates the object with a laser such as a line laser, receives the reflected light reflected by the object with a CCD (Charge Coupled Device) sensor or a CMOS (Complementary Metal Oxide Semiconductor) sensor, and obtains the three-dimensional coordinates by obtaining the distance from the object using the well-known principle of triangulation.
[0031] The optical projection method projects pattern light, such as a stripe pattern, onto an object, captures the change in the pattern light according to the unevenness of the object with an imaging device, and performs arithmetic processing to obtain three-dimensional coordinates.
[0032] Photogrammetry applies the principle of photogrammetry to obtain three-dimensional coordinates through arithmetic processing based on a plurality of captured images with different viewpoints.
[0033] The three-dimensional point cloud data obtained by such a three-dimensional measurement method is composed of the origin of the coordinate system of X, Y, and Z and the position information (X, Y, Z) of each point of the object. Also, the three-dimensional virtual object is constructed by connecting adjacent points in the three-dimensional point cloud data with lines and forming a plurality of triangular elements (polygons).
[0034] In addition, in three-dimensional measurement, since the overlapping parts with the feature points or feature regions for alignment become planes or broken planes, it is necessary to accurately measure the information of the planes or broken planes. For example, the point cloud density of the broken plane is preferably such that the average distance between adjacent points or the average length of one side of the polygon of the formed triangle is 0.3 mm or less, and more preferably 0.15 mm or less. Note that when the average distance between adjacent points or the average length of one side of the polygon of the formed triangle of the broken plane is greater than 0.3 mm, alignment may not be possible or alignment may not be possible with sufficient accuracy.
[0035] 〔Outline of Alignment of Three-Dimensional Virtual Objects〕 Next, an outline of the alignment of three-dimensional point cloud data when combining a plurality of three-dimensional virtual objects will be described. In the following description, for convenience, the alignment of two three-dimensional point cloud data may also be expressed as the alignment of two three-dimensional virtual objects respectively generated by those three-dimensional point cloud data.
[0036] First, an overview of the conventional alignment in the case where each of two 3D virtual objects has feature points or feature regions that overlap with each other will be described. FIG. 2 is a diagram showing an example of alignment in two 3D virtual objects respectively generated from two 3D point cloud data obtained by 3D measurement at different measurement positions and given in different coordinate systems. FIG. 3 is a diagram showing an example of a combined 3D virtual object obtained by combining the two 3D virtual objects shown in FIG. 2 after alignment.
[0037] Each of the two 3D virtual objects A1 and A2 shown in FIG. 2 has a feature region D1 that overlaps with each other and unique feature regions D2 and D3 that are different from each other. Here, the feature region may be a set of feature points. Also, the feature region D1 that overlaps with each other means that the normal vectors of corresponding points within the feature region are the same. Therefore, as shown in FIG. 3, in the 3D virtual objects A1 and A2, by a conventional alignment method or the like, the feature region D1 is extracted, and alignment and the like are performed at the matching parts in the extracted feature region D1 to obtain a combined 3D virtual object A3.
[0038] Next, the case where there is no feature region that overlaps with each other in each of the two 3D virtual objects will be described. FIG. 4 is a diagram showing an example of the case where there is no feature region that overlaps with each other in each of the two 3D virtual objects. Examples of such cases include artworks excavated from ruins, cultural properties stored in art museums or museums, etc. Furthermore, the case where there is no overlapping feature part among a plurality of 3D point cloud data (among a plurality of 3D virtual objects) includes the case where, in addition to the position information of X, Y, and Z which is the coordinate information of the 3D point cloud data, the normal vector information (the direction of the normal vector) that constitutes the front and back of the point cloud data is different. Therefore, in a plurality of 3D point cloud data, even if there is common information of X, Y, and Z in a part of each, if the normal vectors are different, there is no overlapping part.
[0039] As shown in FIG. 4, each of the two three-dimensional virtual objects A11 and A12 has different characteristic regions D11 and D12, and there are no overlapping characteristic regions with each other. Therefore, the conventional alignment method cannot be simply applied to the three-dimensional virtual objects A11 and A12.
[0040] Specifically, as shown in FIG. 4, for the three-dimensional virtual objects A11 and A12, the portions to be joined are the respective cross-sectional planes M1 and M2 of each other, but there are no overlapping characteristic regions on these cross-sectional planes M1 and M2. More specifically, although there are portions that are the same in the X, Y, and Z position information on the cross-sectional planes M1 and M2, they are all on the surfaces of the three-dimensional virtual objects, and since the directions of the normal vectors do not match, there are no characteristic regions. That is, even though they are the same cross-sectional plane, the cross-sectional planes M1 and M2 have opposite normal vector directions to each other, and thus are not recognized as characteristic regions. For this reason, with the conventional alignment method or the like, it was not possible to align the three-dimensional virtual objects A11 and A12 with respect to the three-dimensional virtual objects A11 and A12.
[0041] In contrast, the three-dimensional point cloud data processing device 1 can reverse one of the normal vectors of the three-dimensional point cloud data corresponding to the three-dimensional virtual objects A11 and A12 respectively, so that the directions of the normal vectors of the cross-sectional plane M1 and the cross-sectional plane M2 are the same direction, and it can be recognized as a characteristic region. For this reason, the three-dimensional point cloud data processing device 1 specifies the characteristic regions of the cross-sectional plane M1 and the cross-sectional plane M2 of the three-dimensional virtual objects A11 and A12 and performs alignment to generate a combined three-dimensional virtual object. Thereby, the three-dimensional point cloud data processing device 1 can accurately perform alignment between the three-dimensional point cloud data even when there are few overlapping portions among the plurality of three-dimensional point cloud data.
[0042] 〔Processing of the three-dimensional point cloud data processing device〕 Next, the processing executed by the three-dimensional point cloud data processing device 1 will be described. FIG. 5 is a flowchart showing an overview of the processing executed by the three-dimensional point cloud data processing device 1.
[0043] As shown in FIG. 5, first, the acquisition unit 151 acquires a plurality of three-dimensional virtual objects selected from among the plurality of three-dimensional virtual objects recorded by the three-dimensional virtual object recording unit 142 according to the operation information received by the input unit 12 (step S101). FIG. 6 is a diagram showing an example of the plurality of three-dimensional virtual objects acquired by the acquisition unit 151. In FIG. 6, since the cross-sectional planes of each object are all flat, one normal vector is described for each cross-sectional plane. Also, in FIG. 6, considering visibility, the starting point of the normal vector is appropriately moved and described. As shown in FIG. 6, the acquisition unit 151 acquires three-dimensional virtual objects A21, A22, and A23 from among the plurality of three-dimensional virtual objects recorded by the three-dimensional virtual object recording unit 142 according to the operation information received by the input unit 12.
[0044] Thereafter, the inversion unit 153 inverts the direction of any one of the normal vectors of the three-dimensional virtual objects A21, A22, and A23 (step S102). FIG. 7 is a diagram showing an example of a three-dimensional virtual object in a state where the inversion unit 153 has inverted the direction of the normal vector. In FIG. 7, considering visibility, the starting point of the inverted normal vector is moved from the position before inversion and described. As shown in FIG. 7, the inversion unit 153 inverts the direction of the normal vector B3 of each surface constituting the three-dimensional virtual object A23 among the three-dimensional virtual objects A21, A22, and A23. Note that in FIG. 7, the inversion unit 153 is inverting the direction of the normal vector B3 of the three-dimensional virtual object A23, but the present invention is not limited thereto, and the inversion unit 153 may invert the direction of either the normal vector B1 of the three-dimensional virtual object A21 or the normal vector B2 of the three-dimensional virtual object A22.
[0045] Subsequently, the alignment unit 154 aligns the three-dimensional virtual object whose normal vector direction has been reversed by the inversion unit 153 with any one of the plurality of three-dimensional virtual objects whose normal vector direction has not been reversed (step S103). FIG. 8 is a diagram schematically showing the outline of the alignment process by the alignment unit 154. As shown in FIG. 8, the alignment unit 154 aligns the three-dimensional virtual object A21 and the three-dimensional virtual object A23. In this case, the alignment unit 154 performs alignment by using a well-known matching technique for the feature regions of each surface constituting the three-dimensional virtual object A21 and the feature regions of each surface constituting the three-dimensional virtual object A23. Specifically, the alignment unit 154 performs alignment on the surfaces where the degree of coincidence of the feature regions of the three-dimensional point group data corresponding to the three-dimensional virtual object A21 and the three-dimensional point group data corresponding to the three-dimensional virtual object A23 is equal to or greater than a predetermined value. Here, the predetermined value is, for example, 80%, but is not limited thereto and can be appropriately changed according to the type of the object and the content to be restored. Also, in FIG. 8, the alignment unit 154 first aligns the three-dimensional virtual object A21 and the three-dimensional virtual object A23, but the three-dimensional virtual object A22 and the three-dimensional virtual object A23 may be aligned.
[0046] Thereafter, the combining unit 156 combines the three-dimensional virtual object whose normal vector has been aligned by the alignment unit 154 with the three-dimensional virtual object whose normal vector direction has not been reversed to generate a three-dimensional virtual object combined body (step S104). FIG. 9 is a diagram schematically showing the outline of the combination by the combining unit 156. As shown in FIG. 9, the combining unit 156 combines the three-dimensional virtual object A23 with the three-dimensional virtual object A21 to generate a three-dimensional virtual object combined body A30. In this case, the combining unit 156 reverses the direction of the normal vector B3 of the three-dimensional virtual object A23 in the three-dimensional virtual object combined body A30 again to return it to the original direction.
[0047] Subsequently, the determination unit 155 determines whether there are any other unbonded 3D virtual objects (step S105). If the determination unit 155 determines that there are other unbonded 3D virtual objects (step S105: Yes), the 3D point cloud data processing device 1 returns to step S102 described above and performs the processing of steps S103 to S105 in the same manner for the other unbonded 3D virtual objects. Specifically, as shown in FIG. 10, the inversion unit 153 inverts the direction of the normal vector B2 of each surface constituting the 3D virtual object A22. Thereafter, as shown in FIG. 11, the alignment unit 154 aligns the feature regions of each surface constituting the 3D virtual object combination A30 and the feature regions of each surface constituting the 3D virtual object A22 by using a well-known matching technique. Subsequently, as shown in FIG. 12, the bonding unit 156 bonds the 3D virtual object A22 that the alignment unit 154 has aligned to the 3D virtual object combination A30 to generate a 3D virtual object combination A31. In this case, the bonding unit 156 inverts the direction of the normal vector B2 of the 3D virtual object A22 again to return it to the original direction.
[0048] In step S105, if the determination unit 155 determines that there are no other unbonded 3D virtual objects that are not bonded to the 3D virtual object combination A30 (step S105: No), the 3D point cloud data processing device 1 proceeds to step S106 described below.
[0049] Subsequently, the bonding unit 156 records the 3D virtual object combination in the 3D virtual object recording unit 142 of the recording unit 14 (step S106). In this case, as shown in FIG. 12, the display control unit 152 may cause the display unit 13 to display the 3D virtual object combination A31 generated by the bonding unit 156. After step S106, the 3D point cloud data processing device 1 ends this process.
[0050] According to the first embodiment described above, the alignment unit 154 performs an alignment process of aligning with any one of the three-dimensional virtual object whose normal vector direction is reversed by the reversing unit 153 and a plurality of three-dimensional virtual objects whose normal vector direction is not reversed, and the combining unit 156 combines the three-dimensional virtual object whose normal vector direction is reversed by the alignment unit 154 with the three-dimensional virtual object whose normal vector direction is not reversed to generate a three-dimensional virtual object combination. As a result, there is no overlapping part between the plurality of three-dimensional point cloud data, and even for the fracture surfaces with different normal vector directions, the alignment between the three-dimensional point cloud data can be accurately performed.
[0051] Also, according to the first embodiment, the combining unit 156 further combines the three-dimensional virtual objects that are sequentially aligned with the three-dimensional virtual object combination by the alignment unit 154. As a result, even when there are a plurality of three-dimensional virtual objects, a three-dimensional virtual object combination aligned in one coordinate system can be generated.
[0052] (Second Embodiment) Next, the second embodiment will be described. In the first embodiment described above, the structure of the three-dimensional virtual object was simple, but in the second embodiment, the case where the structure of the three-dimensional virtual object is complex will be described. The same components as those of the three-dimensional point cloud data processing apparatus 1 according to the first embodiment described above are denoted by the same reference numerals, and detailed description thereof is omitted.
[0053] 〔Functional Configuration of Three-Dimensional Point Cloud Data Processing Apparatus〕 FIG. 13 is a block diagram showing the functional configuration of a three-dimensional point cloud data processing apparatus according to the second embodiment of the present disclosure. The three-dimensional point cloud data processing apparatus 1A shown in FIG. 13 includes a control unit 15A instead of the control unit 15 of the three-dimensional point cloud data processing apparatus 1 according to the first embodiment described above.
[0054] The control unit 15A is configured using a memory and a processor having hardware such as a CPU and a GPU. In addition to the functions of the control unit 15 according to the above-described Embodiment 1, the control unit 15A further has a correction unit 157 as a functional module.
[0055] The correction unit 157 performs a correction process to make the joints in the three-dimensional virtual object combination less noticeable for the missing parts existing at the joints of each three-dimensional virtual object. Specifically, the correction unit 157 performs an image process such as a filter process to reduce edges or the like or an interpolation process to interpolate with pixel values such as adjacent pixels on the missing parts (gaps) that are the joints of each three-dimensional virtual object in the three-dimensional virtual object combination, thereby performing a correction process to make the joints less noticeable.
[0056] 〔Processing of the three-dimensional point cloud data processing apparatus〕 Next, the processing executed by the three-dimensional point cloud data processing apparatus 1A will be described. FIG. 14 is a flowchart showing an outline of the processing executed by the three-dimensional point cloud data processing apparatus 1A.
[0057] As shown in FIG. 14, first, the acquisition unit 151 acquires a plurality of three-dimensional virtual objects selected from among the plurality of three-dimensional virtual objects recorded in the three-dimensional virtual object recording unit 142 based on the operation information received by the input unit 12 (step S201). FIG. 15 is a diagram showing an example of a plurality of objects. FIG. 16 is a diagram showing an example of a plurality of three-dimensional virtual objects corresponding to each of the plurality of three-dimensional point cloud data obtained by three-dimensional measurement of each of the plurality of objects in FIG. 15. As shown in FIG. 16, the acquisition unit 151 acquires a group A50 of three-dimensional virtual objects selected from among the plurality of three-dimensional virtual objects recorded in the three-dimensional virtual object recording unit 142 according to the operation information received by the input unit 12. The group A50 of three-dimensional virtual objects is obtained by measuring the plurality of object groups C1 to C11 shown in FIG. 15 by the three-dimensional measurement method of the above-described Embodiment 1.
[0058] Subsequently, the display control unit 152 causes the display unit 13 to display the plurality of 3D virtual objects acquired by the acquisition unit 151 (step S202). Specifically, as shown in FIG. 16, the display control unit 152 causes the display unit 13 to display the 3D virtual object group A50 acquired by the acquisition unit 151.
[0059] Thereafter, the inversion unit 153 inverts the direction of the normal vector of any one of the plurality of 3D virtual objects (step S203). FIG. 17 is a diagram showing an example of a 3D virtual object before the inversion unit 153 inverts the direction of the normal vector. FIG. 18 is a diagram showing an example of a 3D virtual object after the inversion unit 153 inverts the direction of the normal vector. In FIGS. 17 and 18, the inversion of the direction of the normal vector in three 3D virtual objects A51, A52, and A53 among the 3D virtual object group A50 will be described. Also, hereinafter, the 3D virtual object in a state where the direction of the normal vector is inverted is hatched for schematic representation. In the examples shown in FIGS. 17 and 18, the inversion unit 153 inverts the direction of the normal vector of each cross-sectional surface constituting the 3D virtual object A51 among the 3D virtual objects A51, A52, and A53 (FIG. 17 → FIG. 18).
[0060] Subsequently, the alignment unit 154 performs alignment processing between the 3D virtual object whose normal vector direction has been inverted by the inversion unit 153 and any one of the plurality of 3D virtual objects whose normal vector direction has not been inverted (step S204). FIG. 19 is a diagram showing an example of a 3D virtual object after alignment by the alignment unit 154. As shown in FIG. 19, the alignment unit 154 aligns the cross-sectional surfaces of the 3D virtual objects A51 and A52 using a well-known matching technique.
[0061] In step S205, the determination unit 155 determines whether the alignment accuracy of the alignment unit 154 for the three-dimensional virtual object with the normal vector direction reversed and the three-dimensional virtual object with the normal vector direction not reversed is equal to or higher than a predetermined value. Here, the predetermined value is, for example, 80%, but is not limited thereto and can be appropriately changed according to the type of the object and the content to be restored. When the determination unit 155 determines that the alignment accuracy of the alignment unit 154 for the three-dimensional virtual object with the normal vector direction reversed and the three-dimensional virtual object with the normal vector direction not reversed is equal to or higher than the predetermined value (step S205: Yes), the three-dimensional point cloud data processing device 1A proceeds to step S206 described below. On the other hand, when the determination unit 155 determines that the alignment accuracy of the alignment unit 154 for the three-dimensional virtual object with the normal vector direction reversed and the three-dimensional virtual object with the normal vector direction not reversed is not equal to or higher than the predetermined value (step S205: No), the three-dimensional point cloud data processing device 1A proceeds to step S208 described below.
[0062] In step S206, the combining unit 156 combines the three-dimensional virtual object with the normal vector direction reversed and the three-dimensional virtual object with the normal vector direction not reversed to generate a combined three-dimensional virtual object. In this case, the combining unit 156 reverses the direction of the normal vector reversed by the reversing unit 153 again among the normal vectors of the combined three-dimensional virtual object to return it to the original direction.
[0063] Subsequently, the determination unit 155 determines whether there are any other unbound 3D virtual objects with respect to the 3D virtual object combination (step S207). If the determination unit 155 determines that there are other unbound 3D virtual objects with respect to the 3D virtual object combination (step S207: Yes), the 3D point cloud data processing device 1A returns to step S203 described above. On the other hand, if the determination unit 155 determines that there are no other unbound 3D virtual objects with respect to the 3D virtual object combination (step S207: No), the 3D point cloud data processing device 1A proceeds to step S213 described later.
[0064] In step S208, the determination unit 155 determines whether there are any other 3D virtual objects that can be combined with the 3D virtual object combination. Here, the determination unit 155 determines the combinability with respect to the 3D virtual object combination based on, for example, the feature amounts of the 3D point cloud data constituting the surfaces of other unbound 3D virtual objects. If the determination unit 155 determines that there are other 3D virtual objects that can be combined with the 3D virtual object combination (step S208: Yes), the 3D point cloud data processing device 1A proceeds to step S209 described later. On the other hand, if the determination unit 155 determines that there are no other 3D virtual objects that can be combined with the 3D virtual object combination (step S208: No), the 3D point cloud data processing device 1A proceeds to step S211 described later.
[0065] In step S209, the inversion unit 153 selects another 3D virtual object that can be combined with the 3D virtual object combination and inverts the direction of the normal vector. In this case, the inversion unit 153 again inverts the direction of the normal vector of the 3D virtual object for which it is determined that the alignment accuracy by the alignment unit 154 is not equal to or higher than a predetermined value and returns it to the original direction. After step S209, the 3D point cloud data processing device 1A proceeds to step S204 described above.
[0066] In step S210, the display control unit 152 causes the display unit 13 to display an input request for requesting a selection input of a three-dimensional virtual object to be combined with the three-dimensional virtual object combination by the user's manual operation and an input of information regarding the combination position of the selected three-dimensional virtual object with respect to the three-dimensional virtual object combination.
[0067] In step S211, after the display unit 13 displays the input request, the determination unit 155 determines whether the input unit 12 has received, within a predetermined time (for example, within 30 seconds), an operation input of selecting a three-dimensional virtual object to be combined with the three-dimensional virtual object combination from among a plurality of three-dimensional virtual objects by the user and specifying information regarding the combination position with respect to the three-dimensional virtual object combination. If the determination unit 155 determines that the input unit 12 has received the operation input within the predetermined time (step S211: Yes), the three-dimensional point cloud data processing device 1A proceeds to step S212 described below. On the other hand, if the determination unit 155 determines that the input unit 12 has not received the operation input within the predetermined time (step S211: No), the three-dimensional point cloud data processing device 1A ends this process.
[0068] In step S212, the inversion unit 153 inverts the direction of the normal vector of the selected three-dimensional virtual object based on the operation information received by the input unit 12. After step S212, the three-dimensional point cloud data processing device 1A returns to step S204 described above. In this case, the alignment unit 154 aligns the plane of the combination position of the three-dimensional virtual object combination according to the operation information received by the input unit 12 and the plane of the three-dimensional virtual object whose normal vector direction has been inverted by the inversion unit 153.
[0069] FIG. 20 is a diagram showing a three-dimensional virtual object combination obtained by performing alignment and combination in a combination in which the directions of the normal vectors of adjacent three-dimensional virtual objects alternate. FIG. 21 is a top view of the three-dimensional virtual object combination in the direction of arrow K in FIG. 20. FIGS. 22 to 24 are diagrams schematically showing an overview of the alignment by the alignment unit 154.
[0070] As shown in the three-dimensional virtual object combination A60 in FIGS. 20 and 21, the three-dimensional virtual object group A50 (see FIG. 16) has few combinations of three-dimensional virtual objects (fragment groups) in which the directions of the normal vectors of adjacent cross-sectional planes alternate. Specifically, as shown in FIGS. 20 and 21, the three-dimensional virtual object group A50 (see FIG. 16) has few combinations of three-dimensional virtual objects in which the directions of the normal vectors of adjacent cross-sectional planes alternate (for example, the combination of three-dimensional virtual objects A54, A55, A56, and A57). For this reason, as shown in FIGS. 22 and 23, the inversion unit 153 inverts the normal vector of the selected three-dimensional virtual object A52 based on the operation information received by the input unit 12 (FIG. 22 → FIG. 23). As a result, the alignment unit 154 can align the three-dimensional virtual objects A52 and A55 whose normal vector directions have been inverted by the inversion unit 153 with the three-dimensional virtual object A57. Then, as shown in FIG. 24, the combining unit 156 combines the three-dimensional virtual object A57 that the alignment unit 154 has aligned with the three-dimensional virtual object combination A60. In this way, when combining each three-dimensional virtual object while aligning them, the three-dimensional point group data processing device 1A aligns and combines each three-dimensional virtual object while sequentially selecting the three-dimensional virtual objects and inverting the normal vectors.
[0071] In step S213, the inversion part 153, the alignment part 154, and the coupling part 156 perform an optimization process to optimize the coupling state by reducing the gaps at the coupling parts of each 3D virtual object that constitutes the 3D virtual object combined body. FIG. 25 is a diagram showing an example of a 3D virtual object combined body before the optimization process. In the 3D virtual object combined body A60 shown in FIG. 25, there is a missing part W1, which is a gap, between adjacent 3D virtual objects. The optimization process performed by the inversion part 153, the alignment part 154, and the coupling part 156 for such a 3D virtual object combined body A60 will be described. The inversion part 153 appropriately selects each 3D virtual object that constitutes the 3D virtual object combined body, and repeatedly performs inversion and re-inversion with respect to the direction of the normal vector. The alignment part 154 adjusts the alignment positions of each 3D virtual object in parallel with the process of the inversion part 153. The coupling part 156 couples each 3D virtual object whose alignment has been adjusted by the alignment part 154, and reverses the direction of the normal vector reversed by the inversion part 153 back to the original direction. The optimization process is performed by repeating these processes. The optimization process ends, for example, when the determination part 155 determines that the 3D virtual object combined body satisfies a predetermined criterion. Here, the predetermined criterion is set as a criterion such that, for example, the coupling state between adjacent 3D virtual objects can be regarded as uniform. FIG. 26 is a diagram showing an example of a 3D virtual object combined body generated by the optimization process. In the 3D virtual object combined body A60 shown in FIG. 26, as a result of the optimization process, the gap W1 between each 3D virtual object has disappeared.
[0072] Subsequently, the display control unit 152 causes the 3D virtual object combined body to be displayed on the display unit 13 (step S214). In this case, the control unit 15A records the 3D virtual object combined body in the 3D virtual object recording unit 142 of the recording unit 14.
[0073] Thereafter, based on the operation information input from the input unit 12, the determination unit 155 determines whether to perform correction processing on the joint portions of each 3D virtual object in the 3D virtual object combination (step S215). If it is determined by the determination unit 155 that correction processing is to be performed on the joint portions of each 3D virtual object in the 3D virtual object combination (step S215: Yes), the 3D point cloud data processing device 1A proceeds to step S216 described below. On the other hand, if it is determined by the determination unit 155 that correction processing is not to be performed on the joint portions of each 3D virtual object in the 3D virtual object combination (step S215: No), the 3D point cloud data processing device 1A ends this process.
[0074] In step S216, the correction unit 157 performs correction processing on the missing portions that are the joints of each 3D virtual object in the 3D virtual object combination and causes the display unit 13 to display them. FIG. 27 is a diagram showing an example of the 3D virtual object combination before the correction processing by the correction unit 157. FIG. 28 is a diagram showing an example of the 3D virtual object combination after the correction processing by the correction unit 157. As shown in FIGS. 27 and 28, the correction unit 157 performs correction processing to make the joints less conspicuous by performing predetermined image processing on the missing portions W2 that are the joints of each 3D virtual object in the 3D virtual object combination A60. As a result, in the 3D virtual object combination A60 of FIG. 28, the joints W3 of each 3D virtual object become smooth and less conspicuous. In this case, the correction unit 157 records the 3D virtual object combination on which the correction processing has been performed in the 3D virtual object recording unit 142 of the recording unit 14. After step S216, the 3D point cloud data processing device 1A ends this process.
[0075] According to the second embodiment described above, similar to the first embodiment, there are no overlapping portions among the plurality of 3D point cloud data, and even for cross-sectional planes with different normal vector directions and different overlapping portions, accurate alignment between the 3D point cloud data can be performed.
[0076] Further, according to Embodiment 2, when the determination unit 155 determines that the accuracy of aligning the three-dimensional virtual object with respect to the three-dimensional virtual object combination by the alignment unit 154 is not equal to or higher than a predetermined value, the inversion unit 153 reverses the direction of the normal vector of the three-dimensional virtual object that the alignment unit 154 has aligned again, and reverses the direction of the normal vector of another three-dimensional virtual object, so that the direction of the normal vector of the three-dimensional virtual object appropriate for alignment can be automatically reversed.
[0077] Further, according to Embodiment 2, when instruction information indicating the position of aligning the three-dimensional virtual object whose normal vector direction has been reversed with respect to the three-dimensional virtual object combination is input from the outside, alignment is performed with the three-dimensional virtual object whose normal vector direction has been reversed at the position of the three-dimensional virtual object combination indicated according to this instruction information. Therefore, even when automatic alignment is not possible, manual alignment of an appropriate three-dimensional virtual object can be performed.
[0078] Further, according to Embodiment 2, the correction unit 157 performs correction processing for making the joints less noticeable by performing image processing on the missing parts that are the joints of the respective three-dimensional virtual objects in the three-dimensional virtual object combination, so that the joint parts of the plurality of three-dimensional virtual objects can be smoothly restored.
[0079] (Modification Example of Embodiment 2) Note that in Embodiment 2, as shown in FIG. 29, the correction unit 157 may perform correction processing for emphasizing the joint part after smoothing the joint part by performing image processing on the missing part W2 that is the joint of each three-dimensional virtual object in the three-dimensional virtual object combination A60. As a result, in the three-dimensional virtual object combination A60 of FIG. 29, the joint W4 of each three-dimensional virtual object is emphasized.
[0080] Further, in the second embodiment, the correction unit 157 may perform a correction process of filling in a defective area, which is a joint of each 3D virtual object in the 3D virtual object combination, using pixel values such as pixels in an area adjacent to that part.
[0081] FIG. 30 is a diagram showing an example of a 3D virtual object combination before the correction unit 157 fills in the defective area. FIG. 31 is a diagram showing an example of a 3D virtual object combination after the correction unit 157 fills in the defective area.
[0082] As shown in FIGS. 30 and 31, the correction unit 157 performs a correction process of filling in 3D virtual objects P11 and P21 (parts) corresponding to the defective areas P1 and P2 in the 3D virtual object combination A60. Specifically, the correction unit 157 generates 3D virtual objects P11 and P21 by filling in with pixel values such as adjacent pixels in the defective areas P1 and P2. In this case, the combining unit 156 combines the 3D virtual objects P11 and P21 generated by the correction unit 157 with the defective areas P1 and P2. Thereby, even when there are no 3D virtual objects in the defective areas P1 and P2, the 3D virtual object combination can be restored in a state approaching a complete form.
[0083] Note that the various correction processes by the correction unit 157 described in the second embodiment may be applied to the 3D virtual object combination generated in the first embodiment.
[0084] (Other Embodiments) Note that in the three-dimensional point group data processing apparatus according to Embodiments 1 and 2 of the present disclosure, although the direction of the normal vector of the three-dimensional point group data corresponding to the three-dimensional virtual object was automatically reversed, various processes may be performed by an operation input by the user via the input unit 12. For example, the user may manually select and reverse the direction of a desired normal vector from among a plurality of three-dimensional point group data respectively corresponding to a plurality of three-dimensional virtual objects via the input unit 12. Further, the user may select two three-dimensional point group data for alignment from among the plurality of three-dimensional point group data displayed on the display unit 13 via the input unit 12, and perform alignment of the selected two three-dimensional point group data. Furthermore, the user may select desired data from among the plurality of three-dimensional point group data via the input unit 12, and perform fine adjustment to manually move the origin position of the coordinates of the data. In addition, the user may perform optimization processing via the input unit 12.
[0085] Also, in the three-dimensional point group data processing apparatus according to Embodiments 1 and 2 of the present disclosure, when generating a three-dimensional virtual object combination, the display control unit 152 may display each three-dimensional virtual object on the display unit 13 and display it by a moving image or the like that continuously transitions each three-dimensional virtual object to be combined by the combining unit 156.
[0086] Also, in Embodiments 1 and 2 of the present disclosure, the user may be able to select the content of the correction process by the correction unit 157 via the input unit 12. In this case, the correction unit 157 performs a correction process on the missing portion that is the joint of each three-dimensional virtual object in the three-dimensional virtual object combination according to the operation signal input from the input unit 12.
[0087] Also, in the three-dimensional point group data processing apparatus according to Embodiments 1 and 2 of the present disclosure, the "part" described above can be read as "means", "circuit", or the like. For example, the control unit can be read as a control means or a control circuit.
[0088] In addition, the program to be executed by the three-dimensional point group data processing apparatus according to Embodiments 1 and 2 of the present disclosure is provided by being recorded on a computer-readable recording medium such as a CD-ROM, a flexible disk (FD), a CD-R, a DVD (Digital Versatile Disk), a USB medium, or a flash memory in the form of installable or executable file data.
[0089] In addition, the program to be executed by the three-dimensional point group data processing apparatus according to Embodiments 1 and 2 of the present disclosure may be configured to be stored on a computer connected to a network such as the Internet and provided by being downloaded via the network.
[0090] In the description of the flowchart in this specification, expressions such as "first", "after that", and "subsequently" are used to clarify the order of processing between steps. However, the order of processing necessary to implement the present invention is not uniquely determined by these expressions. That is, the order of processing in the flowchart described in this specification can be changed within a range without contradiction.
[0091] As described above, some of the embodiments of the present application have been described in detail with reference to the drawings. However, these are examples, and the present invention can be implemented in other forms in which various modifications and improvements are made based on the knowledge of those skilled in the art, including the aspects described in the column of the disclosure of the present invention.
Description of Reference Numerals
[0092] 1, 1A Three-dimensional point group data processing apparatus 11 Communication unit 12 Input unit 13 Display unit 14 Recording unit 15, 15A Control unit 141 Program recording unit 142 Three-dimensional virtual object recording unit 151 Acquisition unit 152 Display control unit 153 Inversion unit 154 Alignment section 155 Determination section 156 Combining section 157 Correction section
Claims
1. A plurality of three-dimensional point cloud data obtained by three-dimensionally measuring a plurality of objects, and a plurality of three-dimensional virtual objects respectively corresponding to the plurality of three-dimensional point cloud data having the directions of normal vectors of planes formed by a plurality of points. An acquisition unit that acquires; An inversion unit that inverts the direction of the normal vector of any one of the plurality of three-dimensional point cloud data; An alignment unit that aligns the three-dimensional point cloud data whose normal vector direction has been inverted by the inversion unit with any one of the plurality of three-dimensional point cloud data; A combining unit that combines two of the three-dimensional virtual objects respectively corresponding to the two three-dimensional point cloud data on which the alignment unit has performed the alignment to generate a three-dimensional virtual object combination; Comprising A three-dimensional point cloud data processing device.
2. The three-dimensional point cloud data processing device according to claim 1, Further comprising a determination unit that determines the presence or absence of the uncombined three-dimensional virtual object in the three-dimensional virtual object combination, When the determination unit determines that there is an uncombined three-dimensional virtual object, the inversion unit, the alignment unit, and the combining unit respectively execute processing on the uncombined three-dimensional virtual object A three-dimensional point cloud data processing device.
3. The three-dimensional point cloud data processing device according to claim 1, Further comprising a determination unit that determines the accuracy of the alignment by the alignment unit and the presence or absence of other three-dimensional virtual objects that can be combined with the three-dimensional virtual object combination, The inversion unit is When the determination unit determines that the accuracy of the alignment is lower than a predetermined standard and there are other three-dimensional virtual objects that can be combined, the inversion unit reverses the direction of the normal vector of the three-dimensional point cloud data that has been inverted by the inversion unit again, and also reverses the direction of the normal vector of the three-dimensional point cloud data corresponding to another three-dimensional virtual object, The alignment unit and the combining unit execute processing corresponding to the inversion processing of the inversion unit. A three-dimensional point cloud data processing device.
4. The three-dimensional point cloud data processing device according to claim 3, An input unit that receives an operation input from the outside, A display unit capable of displaying the plurality of three-dimensional virtual objects and the three-dimensional virtual object combination, A display control unit that controls the display of the display unit, Further comprising When it is determined by the determination unit that the accuracy of the alignment is lower than a predetermined standard and there is no other three-dimensional virtual object that can be combined, the display control unit causes the display unit to display an input request for requesting an input for selecting a three-dimensional virtual object to be combined and an input for specifying an attachment position with respect to the three-dimensional virtual object combination of the selected three-dimensional virtual object. Three-dimensional point cloud data processing apparatus.
5. The three-dimensional point cloud data processing apparatus according to claim 4, The inversion unit, When the input unit receives an input corresponding to the input request, the normal vector of the three-dimensional point cloud data corresponding to the selected three-dimensional virtual object is inverted, The alignment unit and the combining unit execute processing based on the specified combination position. Three-dimensional point cloud data processing apparatus.
6. The three-dimensional point cloud data processing apparatus according to claim 3, When the determination unit determines that there is no other uncombined three-dimensional virtual object with respect to the three-dimensional virtual object combination, The inversion unit, the alignment unit, and the combining unit, Perform an optimization process for optimizing the combined state by reducing the gaps between the three-dimensional virtual objects constituting the three-dimensional virtual object combination. Three-dimensional point cloud data processing apparatus.
7. The three-dimensional point cloud data processing apparatus according to any one of claims 1 to 6, Further comprising a correction unit that performs a correction process based on predetermined image processing on a joint portion between the three-dimensional virtual objects in the three-dimensional virtual object combination. Three-dimensional point cloud data processing apparatus.
8. An acquisition step of acquiring a plurality of three-dimensional virtual objects corresponding to a plurality of three-dimensional point cloud data obtained by three-dimensional measurement of a plurality of objects, the plurality of three-dimensional point cloud data each having a direction of a normal vector of a plane formed by a plurality of points; An inversion step of inverting the direction of the normal vector of any one of the plurality of three-dimensional point cloud data; An alignment step of aligning the three-dimensional point cloud data with the inverted normal vector direction and any one of the plurality of three-dimensional point cloud data; A combining step of combining two three-dimensional virtual objects corresponding to the two three-dimensional point cloud data that have been aligned to generate a three-dimensional virtual object combination; A 3D point cloud data processing program that causes a 3D point cloud data processing apparatus to execute. A 3D point cloud data processing program. Claim 9 A 3D point cloud data processing apparatus, An acquisition step of acquiring a plurality of 3D virtual objects respectively corresponding to a plurality of 3D point cloud data obtained by 3D measurement of a plurality of objects, the plurality of 3D point cloud data having the directions of normal vectors of planes constituted by a plurality of points; An inversion step of reading and inverting any one of the normal vectors of the plurality of 3D point cloud data from a recording unit; An alignment step of aligning the 3D point cloud data with the inverted normal vector direction and any one of the plurality of 3D point cloud data; A combining step of combining the two 3D virtual objects respectively corresponding to the two 3D point cloud data after the alignment to generate a 3D virtual object combined body; Executing the steps of A 3D point cloud data processing method.
Citation Information
Patent Citations
Automatic historical relic fragment splicing method
CN107248142A
System for simultaneously measuring object to be measured from a plurality of direction using laser measuring apparatus
JP2010276485A
Program, information storage medium, and object generation system
JP2011065396A
Method and device for aligning three-dimensional point group data and mobile body system thereof
JP2016045330A
Information processing program, information processing method and information processing device
JP2018159693A