Obstacle proximity detection device, obstacle proximity detection method, and obstacle proximity detection program
The obstacle proximity detection device uses a three-dimensional laser scanner to identify and track utility poles and obstacles, providing real-time alerts for safe construction by detecting proximity and potential collisions.
Patent Information
- Application Number
- JP2024542519
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2022-08-24
- Publication Date
- 2025-12-09
- Estimated Expiration
- 2042-08-24
AI Technical Summary
Existing technologies fail to detect the proximity of a moving object, such as a utility pole during construction, to other obstacles in real time.
An obstacle proximity detection device and method that utilizes a three-dimensional laser scanner to acquire point cloud data, identify utility pole and obstacle point cloud data, set detection areas, and alert when overlap or threshold conditions are met, enabling real-time proximity detection.
Enables real-time detection of a moving utility pole's proximity to obstacles, ensuring safe construction by alerting workers to potential collisions.
Smart Images

Figure 0007782704000001 
Figure 0007782704000002 
Figure 0007782704000003
Abstract
Description
[Technical Field]
[0001] The disclosed technology relates to an obstacle proximity detection device, an obstacle proximity detection method, and an obstacle proximity detection program. [Background technology]
[0002] Patent Document 1 discloses a three-dimensional space specifying device, method, and program for accurately specifying the three-dimensional space in which a detection target exists.
[0003] Furthermore, Patent Document 2 discloses an equipment status detection method, detection device, and program that enable easy and accurate comparison and confirmation of a three-dimensional model and the actual equipment status without requiring the skilled operator. [Prior art documents] [Patent documents]
[0004] [Patent Document 1] Japanese Patent Application Publication No. 2018-97588 [Patent Document 2] Japanese Patent Application Publication No. 2018-195240 Summary of the Invention [Problem to be solved by the invention]
[0005] When carrying out construction work to erect a new utility pole, which is an example of an object, the utility pole is often moved during the construction work. In this case, it is undesirable for the moved utility pole to be in close proximity to other obstacles.
[0006] The technology disclosed in Patent Document 1 is a technology that detects facilities around a road by analyzing a point cloud made up of three-dimensional points contained in a three-dimensional space in which the facilities exist. Furthermore, the technology disclosed in Patent Document 2 is a technology that generates 3D model data of the facilities based on point cloud data of the facilities acquired by laser scanning, and calculates the thickness, inclination angle, and deflection of poles and trees, as well as the minimum ground clearance of cables, based on this 3D model data.
[0007] Therefore, even if the techniques disclosed in the above Patent Documents 1 and 2 are used, there is a problem in that it is not possible to detect in real time the proximity of a moving object to other obstacles.
[0008] The disclosed technology has been developed in consideration of the above points, and aims to provide an obstacle proximity detection device, an obstacle proximity detection method, and an obstacle proximity detection program that can detect the proximity of a moving object to other obstacles in real time. [Means for solving the problem]
[0009] A first aspect of the present disclosure is an obstacle proximity detection device comprising: an acquisition unit that sequentially acquires three-dimensional point cloud data representing an outdoor structure acquired by a three-dimensional laser scanner; an identification unit that identifies first point cloud data representing an object and second point cloud data representing an obstacle from the three-dimensional point cloud data; a setting unit that sets a first detection area that is an area surrounding the first point cloud data based on the first point cloud data; a movement unit that moves the first point cloud data and the first detection area in accordance with movement of feature points extracted from the first point cloud data; and an output unit that outputs an alert indicating the proximity of the object and the obstacle when a part of the first detection area overlaps with a part of a second detection area that is an area surrounding the second point cloud data, or when the number of point data of the first point cloud data present in the second detection area becomes equal to or greater than a predetermined threshold.
[0010] A second aspect of the present disclosure is an obstacle proximity detection method, in which a computer executes the following process: sequentially acquiring three-dimensional point cloud data representing an outdoor structure obtained by a three-dimensional laser scanner; identifying first point cloud data representing an object and second point cloud data representing an obstacle from the three-dimensional point cloud data; setting a first detection area that is an area surrounding the first point cloud data based on the first point cloud data; moving the first point cloud data and the first detection area in accordance with movement of feature points extracted from the first point cloud data; and outputting an alert indicating the proximity of the object and the obstacle when a part of the first detection area overlaps with a part of a second detection area that is an area surrounding the second point cloud data, or when the number of point data of the first point cloud data present in the second detection area becomes equal to or greater than a predetermined threshold.
[0011] A third aspect of the present disclosure is an obstacle proximity detection program that causes a computer to execute the following process: sequentially acquire three-dimensional point cloud data representing an outdoor structure obtained by a three-dimensional laser scanner; identify first point cloud data representing an object and second point cloud data representing an obstacle from the three-dimensional point cloud data; set a first detection area that is an area surrounding the first point cloud data based on the first point cloud data; move the first point cloud data and the first detection area in accordance with movement of feature points extracted from the first point cloud data; and output an alert indicating the proximity of the object and the obstacle when a part of the first detection area overlaps with a part of a second detection area that is an area surrounding the second point cloud data, or when the number of point data of the first point cloud data present in the second detection area becomes equal to or greater than a predetermined threshold. [Effects of the Invention]
[0012] The disclosed technology has the advantage of being able to detect in real time the proximity of a moving object to another obstacle. [Brief explanation of the drawings]
[0013] [Figure 1]1 is a block diagram showing an example of a hardware configuration of an obstacle proximity detection device according to an embodiment; [Figure 2] 1 is a block diagram showing an example of a functional configuration of an obstacle proximity detection device according to an embodiment; [Figure 3] FIG. 2 is a diagram illustrating the relationship between an obstacle proximity detection device and a three-dimensional laser scanner. [Figure 4] 3A and 3B are diagrams for explaining the operation of the obstacle proximity detection device according to the embodiment; [Figure 5] 3A and 3B are diagrams for explaining the operation of the obstacle proximity detection device according to the embodiment; [Figure 6] 3A and 3B are diagrams for explaining the operation of the obstacle proximity detection device according to the embodiment; [Figure 7] 3A and 3B are diagrams for explaining the operation of the obstacle proximity detection device according to the embodiment; [Figure 8] 3A and 3B are diagrams for explaining the operation of the obstacle proximity detection device according to the embodiment; [Figure 9] 3A and 3B are diagrams for explaining the operation of the obstacle proximity detection device according to the embodiment; [Figure 10] 3A and 3B are diagrams for explaining the operation of the obstacle proximity detection device according to the embodiment; [Figure 11] 3A and 3B are diagrams for explaining the operation of the obstacle proximity detection device according to the embodiment; [Figure 12] 3A and 3B are diagrams for explaining the operation of the obstacle proximity detection device according to the embodiment; [Figure 13] 3A and 3B are diagrams for explaining the operation of the obstacle proximity detection device according to the embodiment; [Figure 14] 3A and 3B are diagrams for explaining the operation of the obstacle proximity detection device according to the embodiment; [Figure 15] 3A and 3B are diagrams for explaining the operation of the obstacle proximity detection device according to the embodiment; [Figure 16] 3A and 3B are diagrams for explaining the operation of the obstacle proximity detection device according to the embodiment; [Figure 17] 3A and 3B are diagrams for explaining the operation of the obstacle proximity detection device according to the embodiment; [Figure 18]3A and 3B are diagrams for explaining the operation of the obstacle proximity detection device according to the embodiment; [Figure 19] 3A and 3B are diagrams for explaining the operation of the obstacle proximity detection device according to the embodiment; [Figure 20] FIG. 1 is a diagram for explaining a conventional technique. [Figure 21] FIG. 1 is a diagram for explaining a conventional technique. DETAILED DESCRIPTION OF THE INVENTION
[0014] An example of an embodiment of the disclosed technology will be described below with reference to the drawings. Note that in each drawing, the same or equivalent components and parts are given the same reference numerals. Also, the dimensional proportions in the drawings are exaggerated for the convenience of explanation and may differ from the actual proportions.
[0015] 20 and 21 are diagrams illustrating the prior art. As shown in FIG. 20, a technology for 3D modeling of outdoor structures using a vehicle-mounted 3D laser scanner (Mobile Mapping System: MMS) is known. FIG. 20 shows scan lines and 3D point cloud data acquired by the MMS. As shown in FIG. 20, the MMS creates scan lines and 3D point cloud data S1 in a space where no 3D point cloud data exists, for example, based on previously acquired scan lines and 3D point cloud data S2. Then, for example, the MMS generates a 3D model by integrating the 3D point cloud data. This allows for accurate generation of a 3D model even if the 3D point cloud data is rough. Therefore, for example, when a 3D laser scanner is mounted on a vehicle and the vehicle is traveling at a high speed, accurate generation of a 3D model of an outdoor structure around the vehicle is possible. For example, as a 3D model of an outdoor structure, a 3D model of a utility pole and a cable, as shown in FIG. 21, is generated.
[0016] When carrying out construction work to erect a new utility pole, which is an example of an object, the utility pole is often moved during the construction work. In this case, it is undesirable for the moved utility pole to be in close proximity to other obstacles.
[0017] However, the technology disclosed in Patent Document 1 requires time to create scan lines and generate 3D models, making it difficult to detect objects in real time.Furthermore, the technology disclosed in Patent Document 2 specifies a detection area in advance, and detects an object and its behavior only when a certain amount of 3D point cloud data has been acquired, making it difficult to accurately detect the proximity and contact of two objects.
[0018] Therefore, in this embodiment, the behavior of an object during construction work is monitored, and proximity or contact between an object being moved during construction work and other obstacles is detected in real time, and a notification is sent to construction workers.
[0019] First, the hardware configuration of an obstacle proximity detection device 10 according to this embodiment will be described with reference to FIG.
[0020] FIG. 1 is a block diagram showing an example of the hardware configuration of an obstacle proximity detection device 10 according to this embodiment.
[0021] 1, the obstacle proximity detection device 10 includes a CPU (Central Processing Unit) 11, a ROM (Read Only Memory) 12, a RAM (Random Access Memory) 13, a storage 14, an input unit 15, a display unit 16, and a communication interface (I / F) 17. Each component is connected to each other via a bus 18 so as to be able to communicate with each other.
[0022] The CPU 11 is a central processing unit that executes various programs and controls each component. That is, the CPU 11 reads programs from the ROM 12 or the storage 14 and executes the programs using the RAM 13 as a work area. The CPU 11 controls the above components and performs various arithmetic processing in accordance with the programs stored in the ROM 12 or the storage 14. In this embodiment, the ROM 12 or the storage 14 stores an obstacle proximity detection program.
[0023] The ROM 12 stores various programs and various data. The RAM 13 temporarily stores programs or data as a working area. The storage 14 is configured with an HDD (Hard Disk Drive) or SSD (Solid State Drive) and stores various programs including the operating system and various data.
[0024] The input unit 15 includes a pointing device such as a mouse and a keyboard, and is used to input various information to the device itself.
[0025] The display unit 16 is, for example, a liquid crystal display, and displays various information. The display unit 16 may also function as the input unit 15 by adopting a touch panel system.
[0026] The communication interface 17 is an interface for the device itself to communicate with other external devices. For this communication, a wired communication standard such as Ethernet (registered trademark) or FDDI (Fiber Distributed Data Interface) or a wireless communication standard such as 4G, 5G, or Wi-Fi (registered trademark) is used.
[0027] The obstacle proximity detection device 10 according to this embodiment is implemented by a general-purpose computer such as a server computer or a personal computer (PC).
[0028] Next, the functional configuration of the obstacle proximity detection device 10 will be described with reference to FIG.
[0029] FIG. 2 is a block diagram showing an example of the functional configuration of the obstacle proximity detection device 10 according to this embodiment.
[0030] 2, the obstacle proximity detection device 10 includes, as functional components, a data storage unit 100, an acquisition unit 102, an identification unit 104, a setting unit 106, a movement unit 108, and an output unit 110. Each functional component is realized by the CPU 11 reading out an obstacle proximity detection program stored in the ROM 12 or the storage 14, expanding the program in the RAM 13, and executing the program.
[0031] 3 is a diagram showing the relationship between the obstacle proximity detection device 10 and the 3D laser scanner 20. As shown in FIG. 3, with the position of the 3D laser scanner 20 as the reference, the east-west direction is the x-axis, the north-south direction is the y-axis, and altitude is the z-axis. The 3D laser scanner 20 sequentially acquires 3D point cloud data of outdoor structures and outputs the 3D point cloud data to the obstacle proximity detection device 10. The obstacle proximity detection device 10 sequentially acquires the 3D point cloud data acquired by the 3D laser scanner 20 and stores it in its own data storage unit 100.
[0032] The data storage unit 100 sequentially stores three-dimensional point cloud data representing outdoor structures acquired by the three-dimensional laser scanner 20. The data storage unit 100 also stores various data necessary for executing the obstacle proximity detection process.
[0033] Next, the operation of the obstacle proximity detection device 10 according to this embodiment will be described with reference to FIGS.
[0034] 4 is a flowchart showing an example of the processing flow of the obstacle proximity detection program according to this embodiment. The processing of the obstacle proximity detection program is realized by the CPU 11 of the obstacle proximity detection device 10 writing the obstacle proximity detection program stored in the ROM 12 or the storage 14 to the RAM 13 and executing it.
[0035] In this embodiment, an example will be described in which, during construction work to erect a new utility pole, which is an example of an object, a 3D laser scanner 20 sequentially acquires 3D point cloud data of outdoor structures including the new utility pole, and an obstacle proximity detection device 10 detects the proximity of the utility pole to an obstacle.
[0036] First, during construction work to erect a new utility pole, 3D laser scanner 20 sequentially acquires 3D point cloud data of outdoor structures including the new utility pole, and outputs the data to obstacle proximity detection device 10. Then, obstacle proximity detection device 10 sequentially stores the 3D point cloud data in data storage unit 100. When the 3D point cloud data starts to be stored in data storage unit 100, obstacle proximity detection device 10 executes the processing of FIG.
[0037] First, in step S100 of Fig. 4, the CPU 11 executes a utility pole point cloud identification process to identify three-dimensional point cloud data of a new utility pole from the three-dimensional point cloud data stored in the data storage unit 100. The utility pole point cloud identification process is realized by Fig. 5 or Fig. 6.
[0038] In step S102 of FIG. 5, the CPU 11 functions as the acquisition unit 102 to acquire the three-dimensional point cloud data stored in the data storage unit 100.
[0039] In step S104, the CPU 11, functioning as the identification unit 104, deletes 3D point cloud data in an unnecessary range from the 3D point cloud data acquired in step S102. For example, 3D point cloud data that is a certain distance or more from the measurement point where the 3D laser scanner 20 is located is deleted as data in an unnecessary range.
[0040] In step S106, the CPU 11, as the specifying unit 104, acquires an angle a for dividing the three-dimensional point cloud data and the angle θ of the utility pole. Note that the angle θ of the utility pole is input to the obstacle proximity detection device 10 manually by, for example, an operator at the construction site. This angle θ is the angle formed by the z-axis on the xyz coordinates shown in FIG. 3 and the utility pole P. When the object is a utility pole under construction, states such as the utility pole being placed on the ground, the utility pole being gripped and suspended by a heavy machine, and the utility pole standing independently are assumed, and the direction and angle in which the utility pole is facing change depending on the situation. Therefore, it is necessary to acquire the angle θ based on the three-dimensional laser scanner 20 in advance. The process in FIG. 5 is the process when the angle θ is determined by the operator and input to the obstacle proximity detection device 10. Note that it is also possible to calculate the angle θ using known techniques by the user inputting in advance to the obstacle proximity detection device 10 the distances from the three-dimensional laser scanner 20 to the lower and upper parts of the utility pole. Although the angle θ of the utility pole can be acquired as described above, the direction in which the utility pole is tilted cannot be calculated. Therefore, as will be described later, by rotating each of the data obtained by dividing the three-dimensional point cloud data at regular intervals by the angle θ, it is possible to identify the utility pole without calculating the direction in which the utility pole is tilted. When identifying the three-dimensional point cloud data representing the utility pole, a threshold value may be set for the distance from the three-dimensional laser scanner 20 and the size of the extracted point cloud, etc., and the three-dimensional point cloud data representing the utility pole may be identified based on this.
[0041] In step S108, the CPU 11, as the specifying unit 104, divides the three-dimensional point cloud data according to the angle a (0 < a < 360) acquired in step S106.
[0042] FIG. 7 illustrates the division of 3D point cloud data according to angle a. As shown on the left side of FIG. 7, the 3D point cloud data within a predetermined region R is divided according to angle a on the xy plane of the xyz coordinate system. P in FIG. 7 represents 3D point cloud data corresponding to a utility pole under construction. FIG. 7 illustrates a case where angle a=45 degrees. Data i divided for each angle a is an index for identifying data within the predetermined region R, and satisfies 1≦j≦360 / a. For example, data within predetermined region R3 corresponds to data with i=3. In the example shown on the left side of FIG. 7, the 3D point cloud data within predetermined region R is divided into eight regions R1 to R8. In the following process, each of these regions R1 to R8 is rotated by the angle θ of the utility pole so that the 3D point cloud data corresponding to the utility pole is aligned with the z-axis. This allows a determination to be made as to whether the 3D point cloud data represents a utility pole.
[0043] For example, as shown on the right side of Figure 7, the 3D point cloud data within a predetermined region R3 is rotated by an angle θ, starting from the origin of the xyz coordinate system. In this case, the utility pole P will be shaped along the z-axis. In this case, consider the case where the 3D point cloud data of the utility pole P shaped along the z-axis is projected onto the xy plane.
[0044] FIG. 8 is a diagram illustrating the processing of 3D point cloud data according to this embodiment. Note that the black circles in FIG. 8 represent 3D point data. As described above, when the 3D point cloud data of utility pole P shaped along the z axis is projected onto the xy plane, the projection result of the 3D point cloud data onto the xy plane becomes a circle, as shown in A1 of FIG. 8. Therefore, in this embodiment, whether or not the 3D point cloud data represents a utility pole is determined depending on whether or not the projection result onto the xy plane obtained in this manner is a circle.
[0045] Furthermore, in this embodiment, as shown in B1 of Fig. 8, the 3D point cloud data is divided into groups G that intersect with the z-axis, and it is determined whether a circular shape is detected for each group G (hereinafter, simply referred to as "circle detection"). Note that B1 of Fig. 8 also depicts a heavy machine M gripping a utility pole P. Furthermore, for detecting circular shapes and linear shapes, for example, well-known RANSAC processing or the like is used.
[0046] In addition, in this embodiment, as shown in C1 of Figure 8, when determining the three-dimensional point cloud data corresponding to a cable Ca existing between existing utility poles, the three-dimensional point cloud data is projected onto a specified plane, and whether the projection result is a circular shape is used to determine whether the three-dimensional point cloud data is a cable.
[0047] As shown on the right side of Figure 7, when the data of the predetermined region R3 is rotated by an angle θ, a circular shape is detected in the projection result, and the data of the predetermined region R3 is identified as a utility pole point cloud. On the other hand, when the data of the predetermined region R7 is rotated by an angle θ, a circular shape is not detected in the projection result, and the data of the predetermined region R7 is identified as not being a utility pole point cloud. Even in this case, since the data of the predetermined region R7 partially includes a utility pole, for example, the data of the predetermined region R7 located diagonally from the data of the predetermined region R3 may also be identified as a utility pole point cloud. Note that circle detection may be performed on all axes of the 3D point cloud data without using the angle θ of the utility pole.
[0048] Specifically, in step S110 of FIG. 5, the CPU 11, as the specifying unit 104, sets data of one predetermined region (for example, data of the predetermined region R1) of the divided three-dimensional point cloud data.
[0049] In step S112, the CPU 11, functioning as the identification unit 104, rotates the data of the predetermined region set in step S110 by an angle θ. If the data of the predetermined region is three-dimensional point cloud data of a utility pole, the data of the predetermined region after rotation will be oriented along the z-axis. In step S114, the CPU 11, functioning as the identification unit 104, divides the data of the predetermined region rotated in step S112 in regions intersecting with the z-axis direction to generate a plurality of groups.
[0050] In step S116, the CPU 11, functioning as the identification unit 104, projects, for each of the groups generated in step S114, the three-dimensional point cloud data belonging to that group onto the xy plane.
[0051] In step S118, the CPU 11, functioning as the identification unit 104, detects a circular shape based on the projection results for each group obtained in step S116.
[0052] In step S120, the CPU 11, functioning as the identification unit 104, determines whether or not there are a predetermined threshold or more groups in which circles have been detected. If there are a predetermined threshold or more groups in which circles have been detected, the process proceeds to step S122. On the other hand, if there are fewer groups in which circles have been detected than the predetermined threshold, the process proceeds to step S124.
[0053] In step S122, the CPU 11, functioning as the specifying unit 104, temporarily stores the data of the predetermined area set in step S110 in the data storage unit 100 as a utility pole candidate point cloud.
[0054] In step S124, the CPU 11, functioning as the identification unit 104, determines whether or not the processes of steps S110 to S122 have been executed for the data of all the predetermined areas divided in step S108. If the processes of steps S110 to S122 have been executed for the data of all the predetermined areas, the process proceeds to step S126. If there is data of a predetermined area for which the processes of steps S110 to S122 have not been executed, the process returns to step S110.
[0055] In step S126, the CPU 11 as the identifying unit 104 identifies the utility pole P by taking the data of the predetermined area in which the number of circular shapes detected is the largest as utility pole point cloud data, which is an example of first point cloud data.
[0056] It should be noted that the utility pole point cloud identification process in step S100 in Fig. 4 is not limited to the process in Fig. 5, and may be realized, for example, by the process in Fig. 6. The process in Fig. 6 identifies utility pole point cloud data without requiring input of the angle θ between the z axis on the xyz coordinate system and the utility pole P.
[0057] Specifically, in step S128, the CPU 11, functioning as the identification unit 104, executes an existing feature point analysis algorithm on the 3D point cloud data to identify a feature point cloud cluster from the 3D point cloud data. A feature point cloud cluster is, for example, a cluster of points of an object in the 3D point cloud data that has characteristics such as high reflection intensity or a unique shape. For example, the feature point cloud cluster can be used to identify a scaffolding bolt or a heavy equipment gripper attached to or near a utility pole. Or, for example, the feature point cloud cluster can be used to identify both ends of a utility pole.
[0058] For this reason, in step S128 of FIG. 6, the CPU 11, functioning as the identification unit 104, generates an axis by connecting the two feature point group clusters identified as both ends of the utility pole.
[0059] Next, in step S130, the CPU 11, functioning as the specifying unit 104, rotates the three-dimensional point cloud data so that the axis generated in step S128 is aligned with the z-axis.
[0060] Then, in step S132, the CPU 11, functioning as the specifying unit 104, divides the rotated three-dimensional point cloud data in areas that intersect with the z-axis direction to generate a plurality of groups.
[0061] Other processes shown in Fig. 6 are the same as those in Fig. 5, and therefore description thereof will be omitted. Note that utility pole point cloud data may be specified using both the processes in Fig. 5 and Fig. 6.
[0062] In this way, utility pole point cloud data, which is an example of first point cloud data, is identified from the 3D point cloud data. Note that utility pole point cloud data may be identified using methods different from those shown in FIGS. 5 and 6. For example, an object made of a highly reflective material or structure may be attached to a utility pole or heavy equipment. Or, an object with a unique shape may be attached to a utility pole or heavy equipment. The axis of the utility pole is then calculated based on the positions of the objects in the 3D point cloud data. More specifically, for example, two highly reflective objects may be attached to the grip of the heavy equipment. Then, for example, the objects may be extracted from the 3D point cloud data, and the axis connecting the two objects may be used as the utility pole axis, and circle detection may be performed to identify the utility pole point cloud data. Utility pole point cloud data may also be identified by performing circle detection on all axes of the 3D point cloud data without using the utility pole angle θ.
[0063] Next, in step S200 of Fig. 4, the CPU 11 executes a wall surface point cloud identification process to identify 3D point cloud data of a wall surface, which is an example of an obstacle, from the 3D point cloud data. The wall surface point cloud identification process is realized by Fig. 9.
[0064] In step S202 of FIG. 9, the CPU 11, functioning as the specifying unit 104, divides the input three-dimensional point cloud data in areas that intersect with the z-axis direction to generate a plurality of groups.
[0065] In step S204, the CPU 11, functioning as the identification unit 104, projects the three-dimensional point cloud data belonging to each of the groups generated in step S202 onto the xy plane.
[0066] In step S206, the CPU 11, functioning as the identification unit 104, detects a linear shape based on the projection results for each group obtained in step S204.
[0067] In step S208, the CPU 11, functioning as the identification unit 104, determines whether or not there are a predetermined threshold or more groups in which a linear shape has been detected. If there are a predetermined threshold or more groups in which a linear shape has been detected, the process proceeds to step S210. On the other hand, if there are fewer groups in which a linear shape has been detected than the predetermined threshold, the process ends.
[0068] In step S210, the CPU 11, functioning as the identification unit 104, stores the input three-dimensional point cloud data in the data storage unit 100 as wall surface point cloud data, which is an example of second point cloud data.
[0069] Next, in step S300 of Fig. 4, the CPU 11 executes a cable point cloud identification process to identify 3D point cloud data of a cable, which is an example of an obstacle, from the 3D point cloud data. The cable point cloud identification process is realized by Fig. 10.
[0070] In step S302 of FIG. 10, the CPU 11 functions as the specifying unit 104 and acquires the angle b for dividing the input three-dimensional point cloud data of the target.
[0071] In step S304, the CPU 11, functioning as the identification unit 104, divides the three-dimensional point cloud data according to the angle b acquired in step S302.
[0072] FIG. 11 is a diagram illustrating the division of 3D point cloud data according to angle b. As shown on the left side of FIG. 11, the 3D point cloud data within a predetermined region R is divided according to angle b on the xy plane of the xyz coordinate system. Ca in FIG. 11 is 3D point cloud data corresponding to an existing cable. Note that FIG. 11 illustrates a case where angle b=45 degrees. In the example shown on the left side of FIG. 11, the 3D point cloud data within the predetermined region R is divided into eight predetermined regions R1 to R8. In the following processing, each of these predetermined regions R1 to R8 is rotated by angle b around the z axis so that the 3D point cloud data corresponding to the cable is aligned with the x axis. This allows a determination to be made as to whether the 3D point cloud data is a cable.
[0073] For example, as shown on the right side of Figure 11, the 3D point cloud data within the predetermined region R3 is rotated around the z-axis by an angle (b*jb / 2). Note that j is an index for identifying the data within the predetermined region R, and satisfies 1≦j≦360 / b. For example, the data within the predetermined region R3 corresponds to data with j=3. Therefore, the 3D point cloud data within the predetermined region R3 is rotated by (45*3-45 / 2)=112.5 degrees, and is aligned with the x-axis.
[0074] Then, the three-dimensional point cloud data within the rotated predetermined region R3 is projected onto the yz plane, and depending on whether the projection results in a circular shape, it is determined whether the three-dimensional point cloud data represents a cable.
[0075] Specifically, in step S306, the CPU 11, functioning as the specifying unit 104, sets data of one predetermined region (for example, data of the predetermined region R1) of the divided three-dimensional point cloud data.
[0076] In step S308, the CPU 11, functioning as the identification unit 104, rotates the data of the predetermined region set in step S306 around the z-axis by an angle (b*jb / 2). If the data of the predetermined region is three-dimensional point cloud data of the cable Ca, the data of the predetermined region after rotation will be oriented along the x-axis.
[0077] In step S310, the CPU 11, functioning as the identification unit 104, divides the data of the predetermined region rotated in step S308 in regions intersecting with the x-axis direction to generate a plurality of groups.
[0078] In step S312, the CPU 11, functioning as the identification unit 104, projects, for each of the groups generated in step S310, the three-dimensional point cloud data belonging to that group onto the yz plane.
[0079] In step S314, the CPU 11, functioning as the identification unit 104, detects a circular shape based on the projection results for each group obtained in step S312.
[0080] In step S316, the CPU 11, functioning as the identification unit 104, determines whether or not the number of groups in which circles have been detected is equal to or greater than a predetermined threshold. If the number of groups in which circles have been detected is equal to or greater than the predetermined threshold, the process proceeds to step S318. On the other hand, if the number of groups in which circles have been detected is less than the predetermined threshold, the process proceeds to step S320.
[0081] In step S318, the CPU 11, functioning as the identification unit 104, temporarily stores the data of the predetermined area set in step S306 in the data storage unit 100 as a cable candidate point group.
[0082] In step S320, CPU 11, functioning as identification unit 104, determines whether the processes of steps S306 to S318 have been executed for all of the data in the predetermined area divided in step S304. If the processes of steps S306 to S318 have been executed for all of the data in the predetermined area, the process proceeds to step S322. If there is data in the predetermined area for which the processes of steps S306 to S318 have not been executed, the process returns to step S306.
[0083] In step S322, the CPU 11, as the identification unit 104, identifies the cable by determining that the data of the predetermined area in which the number of circular shapes was greatest is a cable point cloud, which is an example of second point cloud data. In this way, when identifying cable point cloud data, circles are detected parallel to the ground, and when identifying wall point cloud data, straight lines are detected perpendicular to the ground. Note that, although the above description has been given using an example in which utility pole point cloud data, wall point cloud data, and cable point cloud data are automatically identified, for example, utility pole point cloud data, wall point cloud data, cable point cloud data, etc. may be manually extracted by a user and labeled to identify each piece of data.
[0084] Next, in step S400 of Fig. 4, the CPU 11 executes a utility pole detection area setting process for setting a utility pole detection area, which is an example of a first detection area, for the utility pole point cloud data. The utility pole detection area setting process is realized by Fig. 12 or Fig. 13. In the process of Fig. 12, the central axis of the utility pole point cloud data is detected, and a utility pole detection area centered on that central axis is set.
[0085] 12, the CPU 11, functioning as the setting unit 106, detects at least two circles from the utility pole point cloud data. For example, the above-described method is used as the method for detecting the circles.
[0086] In step S404, the CPU 11 as the setting unit 106 calculates the central axis of the utility pole point cloud data by connecting the centers of the two circles detected in step S402.
[0087] In step S406, the CPU 11 as the setting unit 106 sets, based on the central axis set in step S404, a surrounding area whose distance from the central axis is a preset distance as the utility pole detection area.
[0088] FIG. 14 is a diagram illustrating the setting of a utility pole detection area. As shown in B2 of FIG. 14, a utility pole detection area D2 of any size and shape is set with the central axis T of the utility pole point cloud data as the center. When the shape of the utility pole detection area is a rectangular parallelepiped, for example, the utility pole detection area D2 is an area extending from the central axis T of the utility pole point cloud data by x [cm] in the X-axis direction, y [cm] in the Y-axis direction, and z [cm] in the extension directions from the top and bottom ends of the utility pole point cloud data. In the above case, the central axis T of the utility pole point cloud data is set as the Z-axis, and the X-axis and Y-axis are assumed to be perpendicular to the Z-axis. In this case, for example, as shown in B2 of FIG. 14, a rectangular parallelepiped with a length of 2x [cm], a width of 2y [cm], and a height of L + 2z [cm] is set as the utility pole detection area D2. Here, L represents the length of the central axis.
[0089] If the shape of the utility pole detection area is cylindrical, an area with a radius of a1 [cm] from the central axis T of the utility pole point cloud data and b1 [cm] in the extension direction from each of the top and bottom ends of the utility pole point cloud data is set as the utility pole detection area. In this case, for example, a cylindrical utility pole detection area is set that surrounds the central axis T by a cylinder with a radius of a1 [cm] and a height of L+2b1 [cm].
[0090] By setting the utility pole detection area using the method described above, it becomes possible to automatically track the utility pole point cloud data and the utility pole detection area even if the direction of the circle forming the utility pole point cloud data changes.
[0091] Furthermore, as shown in C2 of FIG. 14, a cable detection area D3 can be set for cable point cloud data representing cable Ca using a method similar to the above-described method. In the example of C2 of FIG. 14, an area of 2x' [cm] in the X-axis direction, 2y' [cm] in the Y-axis direction, and L' + 2z' in the Z-axis direction, centered on the central axis T, is set as the cable detection area D3. In this case, L' represents the thickness of cable Ca (the vertical height of cable Ca). Although C2 of FIG. 14 shows a case where the straight line portion representing the obstacle is cable Ca, the straight line portion representing the obstacle may also be a wall as seen from above. In this case, as described above, wall point cloud data is identified by performing line detection, and a wall detection area is set for the wall point cloud data. In this case, L' represents the height of the wall from the ground. As described above, when identifying the cable point cloud data, a circle is detected parallel to the ground. However, the cable point cloud data may also be identified by performing line detection in the same manner as when identifying the wall point cloud data.
[0092] On the other hand, in the process shown in Figure 13, a group of feature points is extracted from the utility pole point cloud data, and a predetermined height and width are set for each feature point included in the group of feature points, and that area is designated as the utility pole detection area. Feature points extracted from such 3D point cloud data (e.g., scaffolding bolts, suspension ropes, heavy equipment grips, or the outer edge of a utility pole) are unlikely to be in blind spots even during construction work, making tracking relatively easy in the tracking process described below. Furthermore, when this method is adopted, it may be sufficient to track only the feature points, thereby reducing calculation time. In this case, however, in order to perfectly track the utility pole point cloud data during construction, it is considered necessary to acquire 3D point cloud data of the outer shapes of all utility poles.
[0093] Alternatively, arbitrary vertices may be set at the top and bottom of the utility pole point cloud data based on feature points, and points that are connected along the axis of the cylindrical object represented by the utility pole point cloud data may be connected to form a utility pole detection area.
[0094] In step S408 of FIG. 13, the CPU 11, functioning as the setting unit 106, extracts feature point group data, which is a plurality of feature points, from the utility pole point group data.
[0095] In step S410, the CPU 11, functioning as the setting unit 106, sets a utility pole detection area, which is an area surrounding the utility pole point cloud data, based on the feature point cloud data extracted in step S408.
[0096] Next, in step S500 of Fig. 4, the CPU 11 executes a wall surface detection area setting process to set a wall surface detection area, which is an example of the second detection area, for the wall surface point cloud data, which is the second point cloud data. The wall surface detection area setting process is realized by Fig. 15.
[0097] In step S502 of FIG. 15, the CPU 11 as the setting unit 106 detects a quadrangle perpendicular to the ground from the wall point cloud data using known RANSAC processing or the like.
[0098] In step S504, the CPU 11 as the setting unit 106 sets a wall detection area, which is a surrounding area centered on the quadrangle in the wall point cloud data, based on the quadrangle detected in step S502.
[0099] Next, in step S600 of Fig. 4, the CPU 11 executes a cable detection area setting process to set a cable detection area, which is an example of the second detection area, for the cable point cloud data, which is the second point cloud data. The cable detection area setting process is realized by Fig. 16.
[0100] 16, the CPU 11, functioning as the setting unit 106, detects at least two circles from the cable point cloud data. For example, the above-described method is used as the method for detecting the circles.
[0101] In step S604, the CPU 11, functioning as the setting unit 106, calculates the central axis of the cable point cloud data by connecting the centers of the two circles detected in step S602.
[0102] In step S606, the CPU 11 as the setting unit 106 sets, based on the central axis set in step S604, a surrounding area that is a preset distance from the central axis as a cable detection area.
[0103] The wall surface detection area setting process in FIG. 15 and the cable detection process in FIG. 16 may be performed in the same manner as the utility pole detection area setting process in FIG. 12 or FIG.
[0104] Next, in step S700 of Fig. 4, the CPU 11 executes a tracking process to track utility pole point cloud data and output an alert when a predetermined condition is satisfied. The tracking process is realized by Fig. 17 or 18.
[0105] A diagram for explaining the alert output process is shown in Fig. 19. For example, as shown in Fig. 19, when utility pole detection area D2 moves and utility pole detection area D2 overlaps with cable detection area D3, an alert indicating the proximity of a utility pole and a cable is output.
[0106] In step S702 of FIG. 17, the CPU 11, functioning as the moving unit 108, extracts a plurality of feature points from the utility pole point cloud data.
[0107] In step S704, the CPU 11, functioning as the movement unit 108, moves the utility pole point cloud data in accordance with the movement of the plurality of feature points extracted in step S702, thereby realizing tracking of the utility pole point cloud data.
[0108] In step S706, the CPU 11, functioning as the movement unit 108, resets the utility pole detection area in accordance with the utility pole point cloud data moved in step S704. As a result, the utility pole detection area also moves in accordance with the movement of the utility pole point cloud data.
[0109] In step S708, the CPU 11, as the output unit 110, determines whether the utility pole detection area and the obstacle area (representing at least one of the cable detection area and the wall detection area) overlap. If the utility pole detection area and the obstacle area overlap, the process proceeds to step S710. If the utility pole detection area and the obstacle area do not overlap, the process returns to step S704.
[0110] In step S708, the CPU 11 may function as the output unit 110 to proceed to step S710 if the size of the volume of the overlapping utility pole detection area and obstacle detection area exceeds a threshold value.
[0111] In step S710, the CPU 11 outputs an alert indicating the proximity of a utility pole to a wall or a cable as the output unit 110. The alert output from the output unit 110 is output in a form that can be recognized by the user (for example, sound or display) by a sound output device (not shown) or a display device (not shown).
[0112] The alert output process may be realized by the process of FIG.
[0113] In step S712 of Fig. 18, the CPU 11, as the output unit 110, determines whether the number of 3D point cloud data of utility pole point cloud data that has infiltrated into the cable detection area or wall surface detection area is equal to or greater than a threshold. If the number of 3D point cloud data of utility pole point cloud data that has infiltrated into the cable detection area or wall surface detection area is equal to or greater than the threshold, the process proceeds to step S710. If the number of 3D point cloud data of utility pole point cloud data that has infiltrated into the cable detection area or wall surface detection area is less than the threshold, the process returns to step S704. In this case, it is not necessary to set a utility pole detection area. This is because it is known which point cloud data within the 3D point cloud data is utility pole point cloud data by tracking the utility pole point cloud data.
[0114] When workers at a construction site see the alert, they can, for example, stop heavy machinery moving a utility pole.
[0115] In the alert output process of Figures 17 and 18, feature points (for example, scaffolding bolts, suspension ropes, or heavy equipment grips) are extracted from the utility pole point cloud data, and the utility pole point cloud data is tracked by tracking these feature points. Scaffolding bolts are cylindrical objects with several straight lines emerging from them. Furthermore, suspension ropes and heavy equipment grips are cylindrical objects with a shape where the diameter of the object is larger in some places. Therefore, by extracting these parts as feature points, it becomes possible to track the utility pole point cloud data. Furthermore, by maintaining the positional relationship between these feature points and the initially set endpoints and vertices, the utility pole detection area can also be moved at the same time. Specifically, by identifying the position of the circle included in the utility pole point cloud data while tracking the feature points, it becomes possible to maintain the initially defined positional relationship. When redefining a vertex, the vector w nis automatically corrected according to the position of the circle. As a method for tracking feature points, known methods for calculating feature amounts, such as SHOT, PCL, or Spinimage, can be used.
[0116] In this embodiment, objects other than utility poles (for example, cables or wall surfaces) are considered stationary objects and are not tracked. For objects other than utility poles (for example, cables or wall surfaces), the initially set obstacle detection area is used. In this way, by focusing on the feature values during construction work and performing tracking, it is possible to reset the detection area with high accuracy. Furthermore, in the alert output process of FIG. 18, since the utility pole detection area is not fixed, it can also be set for moving objects, allowing for highly flexible sensing.
[0117] As described above, the obstacle proximity detection device sequentially acquires 3D point cloud data representing outdoor structures acquired by a 3D laser scanner. The obstacle proximity detection device then identifies, from the 3D point cloud data, first point cloud data representing a utility pole under construction, which is an example of an object, and second point cloud data representing a cable or wall, which is an example of an obstacle. The obstacle proximity detection device sets a first detection area, which is an area surrounding the first point cloud data, based on the first point cloud data. The obstacle proximity detection device moves the first point cloud data and the first detection area in accordance with the movement of feature points extracted from the first point cloud data. The obstacle proximity detection device outputs an alert indicating the proximity of the utility pole under construction to the cable or wall when a portion of the first detection area overlaps with a portion of the second detection area, which is an area surrounding the second point cloud data, or when the number of point data points of the first point cloud data present in the second detection area exceeds a predetermined threshold. This allows the proximity of a moving object to other obstacles to be detected in real time. Specifically, the conventional technology disclosed in Patent Document 1 lacks real-time capabilities, while the technology disclosed in Patent Document 2 has the drawback of requiring the acquisition of a sufficient number of 3D point data sets to detect an object within a predefined detection area. Specifically, the technology disclosed in Patent Document 2 requires a predefined detection area and detects an object only when a certain amount of 3D point cloud data has been acquired. In contrast, the obstacle proximity detection device of this embodiment enables highly accurate real-time sensing by identifying utility pole point cloud data and then moving the utility pole detection area. Furthermore, by tracking utility poles while they are being constructed, it becomes possible to accurately reconfigure the utility pole detection area. Furthermore, since it is possible to set a detection area for moving objects such as utility poles under construction, it enables highly flexible sensing. Furthermore, because predefined 3D point cloud data is tracked, it is possible to determine, for example, whether utility pole point cloud data has entered a cable detection area or a wall detection area.
[0118] (Example) Next, an embodiment of the obstacle proximity detection device will be described below.
[0119] Step 0: 3D point cloud data is acquired by 3DLiDAR and input into the obstacle proximity detection device.
[0120] Step 1: From the location information where the 3D point cloud data was acquired, delete any 3D point cloud data that is more than 40 m away from the 3DLiDAR's location. This deletes 3D point cloud data that is not necessary for object detection.
[0121] Step 2: Extract utility pole point cloud data representing utility poles, cable point cloud data representing cables, and wall surface point cloud data representing wall surfaces. Step 2-1: Based on the angle pre-entered by the user or the angle calculated from the feature points of the 3D point cloud data, the entire 3D point cloud data is rotated so that the axis that can be the central axis of the 3D point cloud data is the z-axis, and then grouped at 10 cm intervals along the z-axis. Step 2-2: Project the grouped 3D point cloud data onto the xy plane. Detect circles using RANSAC, a known technique. If the number of detected groups exceeds a threshold (e.g., N = 20), the 3D point cloud data is treated as utility pole point cloud data. Step 2-3: Calculate the centers of the circles detected in the utility pole point cloud data, and connect the centers to form the central axis. Step 2-4: In the xy plane, circle detection is performed in the same way as for the utility pole point cloud data, and the central axis of the cable is calculated. Step 2-5: Along the z-axis, perform line detection in the same way as for the utility pole point cloud data, and calculate the central axis of the wall surface.
[0122] Step 3: Set the detection area. Step 3-1: A cylindrical object is generated with a radius of 20 cm from the central axis of the utility pole point cloud data and extending 20 cm from the top and bottom of the utility pole point cloud data, and this cylindrical object is designated as the utility pole detection area. Step 3-2: Create a cylindrical object with a radius of 3 cm from the center axis of the cable and extending 20 cm above and below the cable point cloud data, and use this cylindrical object as the cable detection area. Step 3-3: Create a rectangular parallelepiped with a thickness of 15 cm and extensions of 20 cm on each side and centered on the central axis of the wall, and use this as the wall detection area.
[0123] Step 4: Track the utility pole point cloud data and detect its proximity to the wall point cloud data or the cable point cloud data. Step 4-1: Every 0.5 seconds, calculate and track the feature points of the utility pole point cloud data using known techniques such as Spinimage, SHOT, and ICP. Step 4-2: Calculate the central axis of the utility pole point cloud data and reset the utility pole detection area every second. Step 4-3: When the cable detection area and wall detection area overlap with the utility pole detection area, it is determined that they are in proximity. Step 4-4: Fire an alert.
[0124] In the above embodiment, the obstacle proximity detection process executed by the CPU 11 after reading the obstacle proximity detection program may be executed by various processors other than the CPU 11. Examples of such processors include dedicated electrical circuits, such as programmable logic devices (PLDs) (such as field-programmable gate arrays (FPGAs)) whose circuit configuration can be changed after manufacture, and application-specific integrated circuits (ASICs) that are processors having circuit configurations specifically designed to execute specific processes. The obstacle proximity detection process may be executed by one of these various processors, or by a combination of two or more processors of the same or different types (e.g., multiple FPGAs, or a combination of a CPU and an FPGA). The hardware structure of these various processors is, more specifically, an electrical circuit that combines circuit elements such as semiconductor devices.
[0125] In the above embodiment, the obstacle proximity detection program is described as being pre-stored (also referred to as "installed") in the ROM 12 or the storage 14, but the present invention is not limited to this. The obstacle proximity detection program may be provided in a form stored in a non-transitory storage medium such as a CD-ROM (Compact Disk Read Only Memory), a DVD-ROM (Digital Versatile Disk Read Only Memory), or a USB (Universal Serial Bus) memory. The obstacle proximity detection program may also be downloaded from an external device via a network.
[0126] All publications, patent applications, and technical standards mentioned in this specification are herein incorporated by reference to the same extent as if each individual publication, patent application, or technical standard was specifically and individually indicated to be incorporated by reference.
[0127] The following additional notes are provided regarding the above-described embodiments.
[0128] (Additional note 1) Memory and at least one processor coupled to said memory; Including, The processor: Sequentially acquire 3D point cloud data representing outdoor structures acquired by a 3D laser scanner; Identifying first point cloud data representing an object and second point cloud data representing an obstacle from the three-dimensional point cloud data; based on the first point cloud data, setting a first detection area which is an area surrounding the first point cloud data; based on feature points extracted from the first point cloud data, moving the first point cloud data and the first detection area in accordance with movement of the feature points; outputting an alert indicating the proximity of the object and the obstacle when a part of the first detection area overlaps with a part of a second detection area that is a surrounding area of the second point cloud data, or when the number of point data of the first point cloud data present in the second detection area becomes equal to or greater than a predetermined threshold; An obstacle proximity detection device configured as follows.
[0129] (Additional note 2) A non-transitory storage medium storing a program executable by a computer to perform obstacle proximity detection processing, The obstacle proximity detection process includes: Sequentially acquire 3D point cloud data representing outdoor structures acquired by a 3D laser scanner; Identifying first point cloud data representing an object and second point cloud data representing an obstacle from the three-dimensional point cloud data; based on the first point cloud data, setting a first detection area which is an area surrounding the first point cloud data; based on feature points extracted from the first point cloud data, moving the first point cloud data and the first detection area in accordance with movement of the feature points; outputting an alert indicating the proximity of the object and the obstacle when a part of the first detection area overlaps with a part of a second detection area that is a surrounding area of the second point cloud data, or when the number of point data of the first point cloud data present in the second detection area becomes equal to or greater than a predetermined threshold; Non-transitory storage medium. [Explanation of symbols]
[0130] 10. Obstacle proximity detection device 20 3D laser scanner 100 Data storage unit 102 Acquisition Department 104 Specific part 106 Setting section 108 Mobile Unit 110 Output section
Claims
1. an acquisition unit that sequentially acquires three-dimensional point cloud data representing an outdoor structure acquired by a three-dimensional laser scanner; an identification unit that identifies first point cloud data representing an object and second point cloud data representing an obstacle from the three-dimensional point cloud data; a setting unit that sets a first detection area, which is an area surrounding the first point cloud data, based on the first point cloud data; a moving unit that moves the first point cloud data and the first detection area in accordance with movement of feature points extracted from the first point cloud data; an output unit that outputs an alert indicating the proximity of the object and the obstacle when a part of the first detection area overlaps with a part of a second detection area that is a surrounding area of the second point cloud data, or when the number of point data of the first point cloud data present in the second detection area becomes equal to or greater than a predetermined threshold; Equipped with When identifying the first point cloud data, the identification unit rotates data of a predetermined region included in the three-dimensional point cloud data by a predetermined angle with respect to an xy plane, projects the rotated data of the predetermined region onto the xy plane, and, if the data of the predetermined region projected onto the xy plane is circular, identifies the data of the predetermined region as the first point cloud data. Obstacle proximity detection device.
2. an acquisition unit that sequentially acquires three-dimensional point cloud data representing an outdoor structure acquired by a three-dimensional laser scanner; an identification unit that identifies first point cloud data representing an object and second point cloud data representing an obstacle from the three-dimensional point cloud data; a setting unit that sets a first detection area, which is an area surrounding the first point cloud data, based on the first point cloud data; a moving unit that moves the first point cloud data and the first detection area in accordance with movement of feature points extracted from the first point cloud data; an output unit that outputs an alert indicating the proximity of the object and the obstacle when a part of the first detection area overlaps with a part of a second detection area that is a surrounding area of the second point cloud data, or when the number of point data of the first point cloud data present in the second detection area becomes equal to or greater than a predetermined threshold; Equipped with The object is a utility pole under construction, The obstacle is a cable existing between existing utility poles, When identifying the second point cloud data representing the cable, the identification unit rotates data of a predetermined region included in the three-dimensional point cloud data by a predetermined angle around the z-axis, projects the rotated data of the predetermined region onto a yz-plane, and, if the data of the predetermined region projected onto the yz-plane is circular, identifies the data of the predetermined region as the second point cloud data representing the cable. Obstacle proximity detection device.
3. an acquisition unit that sequentially acquires three-dimensional point cloud data representing an outdoor structure acquired by a three-dimensional laser scanner; an identification unit that identifies first point cloud data representing an object and second point cloud data representing an obstacle from the three-dimensional point cloud data; a setting unit that sets a first detection area, which is an area surrounding the first point cloud data, based on the first point cloud data; a moving unit that moves the first point cloud data and the first detection area in accordance with movement of feature points extracted from the first point cloud data; an output unit that outputs an alert indicating the proximity of the object and the obstacle when a part of the first detection area overlaps with a part of a second detection area that is a surrounding area of the second point cloud data, or when the number of point data of the first point cloud data present in the second detection area becomes equal to or greater than a predetermined threshold; Equipped with The object is a utility pole under construction, the obstacle is a wall surface, When identifying the second point cloud data representing the wall surface, the identification unit projects data of a predetermined region included in the three-dimensional point cloud data onto an xy plane, and, if the data of the predetermined region projected onto the xy plane has a linear shape, identifies the data of the predetermined region as the second point cloud data representing the wall surface. Obstacle proximity detection device.
4. an acquisition unit that sequentially acquires three-dimensional point cloud data representing an outdoor structure acquired by a three-dimensional laser scanner; an identification unit that identifies first point cloud data representing an object and second point cloud data representing an obstacle from the three-dimensional point cloud data; a setting unit that sets a first detection area, which is an area surrounding the first point cloud data, based on the first point cloud data; a moving unit that moves the first point cloud data and the first detection area in accordance with movement of feature points extracted from the first point cloud data; an output unit that outputs an alert indicating the proximity of the object and the obstacle when a part of the first detection area overlaps with a part of a second detection area that is a surrounding area of the second point cloud data, or when the number of point data of the first point cloud data present in the second detection area becomes equal to or greater than a predetermined threshold; Equipped with the setting unit detects at least two circles from the first point cloud data, calculates a central axis of the first point cloud data by connecting the centers of the two circles, and sets the surrounding area, which is a predetermined distance from the central axis, as the first detection area. Obstacle proximity detection device.
5. The object is a utility pole under construction, The obstacle is a cable or a wall existing between existing utility poles. The obstacle proximity detection device according to claim 1 or 4.
6. Sequentially acquiring three-dimensional point cloud data representing outdoor structures acquired by a three-dimensional laser scanner; Identifying first point cloud data representing an object and second point cloud data representing an obstacle from the three-dimensional point cloud data; based on the first point cloud data, setting a first detection area which is an area surrounding the first point cloud data; based on feature points extracted from the first point cloud data, moving the first point cloud data and the first detection area in accordance with movement of the feature points; outputting an alert indicating the proximity of the object and the obstacle when a part of the first detection area overlaps with a part of a second detection area that is a surrounding area of the second point cloud data, or when the number of point data of the first point cloud data present in the second detection area becomes equal to or greater than a predetermined threshold; An obstacle proximity detection method in which processing is executed by a computer, When identifying the first point cloud data, data of a predetermined region included in the three-dimensional point cloud data is rotated by a predetermined angle with respect to an xy plane, the rotated data of the predetermined region is projected onto the xy plane, and if the data of the predetermined region projected onto the xy plane is circular, the data of the predetermined region is identified as the first point cloud data. A method for detecting the proximity of an obstacle, in which processing is performed by a computer.
7. Sequentially acquiring three-dimensional point cloud data representing outdoor structures acquired by a three-dimensional laser scanner; Identifying first point cloud data representing an object and second point cloud data representing an obstacle from the three-dimensional point cloud data; based on the first point cloud data, setting a first detection area which is an area surrounding the first point cloud data; based on feature points extracted from the first point cloud data, moving the first point cloud data and the first detection area in accordance with movement of the feature points; outputting an alert indicating the proximity of the object and the obstacle when a part of the first detection area overlaps with a part of a second detection area that is a surrounding area of the second point cloud data, or when the number of point data of the first point cloud data present in the second detection area becomes equal to or greater than a predetermined threshold; An obstacle proximity detection method in which processing is executed by a computer, The object is a utility pole under construction, The obstacle is a cable existing between existing utility poles, When identifying the second point cloud data representing the cable, data of a predetermined region included in the three-dimensional point cloud data is rotated by a predetermined angle around the z-axis, and the rotated data of the predetermined region is projected onto a yz-plane; and if the data of the predetermined region projected onto the yz-plane is circular, the data of the predetermined region is identified as the second point cloud data representing the cable. A method for detecting the proximity of an obstacle, in which processing is performed by a computer.
8. Sequentially acquiring three-dimensional point cloud data representing outdoor structures acquired by a three-dimensional laser scanner; Identifying first point cloud data representing an object and second point cloud data representing an obstacle from the three-dimensional point cloud data; based on the first point cloud data, setting a first detection area which is an area surrounding the first point cloud data; based on feature points extracted from the first point cloud data, moving the first point cloud data and the first detection area in accordance with movement of the feature points; outputting an alert indicating the proximity of the object and the obstacle when a part of the first detection area overlaps with a part of a second detection area that is a surrounding area of the second point cloud data, or when the number of point data of the first point cloud data present in the second detection area becomes equal to or greater than a predetermined threshold; An obstacle proximity detection method in which processing is executed by a computer, The object is a utility pole under construction, the obstacle is a wall surface, When identifying the second point cloud data representing the wall surface, data of a predetermined area included in the three-dimensional point cloud data is projected onto an xy plane, and if the data of the predetermined area projected onto the xy plane has a linear shape, the data of the predetermined area is identified as the second point cloud data representing the wall surface. A method for detecting the proximity of an obstacle, in which processing is performed by a computer.
9. Sequentially acquiring three-dimensional point cloud data representing outdoor structures acquired by a three-dimensional laser scanner; Identifying first point cloud data representing an object and second point cloud data representing an obstacle from the three-dimensional point cloud data; based on the first point cloud data, setting a first detection area which is an area surrounding the first point cloud data; based on feature points extracted from the first point cloud data, moving the first point cloud data and the first detection area in accordance with movement of the feature points; outputting an alert indicating the proximity of the object and the obstacle when a part of the first detection area overlaps with a part of a second detection area that is a surrounding area of the second point cloud data, or when the number of point data of the first point cloud data present in the second detection area becomes equal to or greater than a predetermined threshold; An obstacle proximity detection method in which processing is executed by a computer, detecting at least two circles from the first point cloud data, calculating a central axis of the first point cloud data by connecting the centers of the two circles, and setting the surrounding area, which is a predetermined distance from the central axis, as the first detection area; A method for detecting the proximity of an obstacle, in which processing is performed by a computer.
10. Sequentially acquiring three-dimensional point cloud data representing outdoor structures acquired by a three-dimensional laser scanner; Identifying first point cloud data representing an object and second point cloud data representing an obstacle from the three-dimensional point cloud data; based on the first point cloud data, setting a first detection area which is an area surrounding the first point cloud data; based on feature points extracted from the first point cloud data, moving the first point cloud data and the first detection area in accordance with movement of the feature points; outputting an alert indicating the proximity of the object and the obstacle when a part of the first detection area overlaps with a part of a second detection area that is a surrounding area of the second point cloud data, or when the number of point data of the first point cloud data present in the second detection area becomes equal to or greater than a predetermined threshold; An obstacle proximity detection program for causing a computer to execute processing, When identifying the first point cloud data, data of a predetermined region included in the three-dimensional point cloud data is rotated by a predetermined angle with respect to an xy plane, the rotated data of the predetermined region is projected onto the xy plane, and if the data of the predetermined region projected onto the xy plane is circular, the data of the predetermined region is identified as the first point cloud data. An obstacle proximity detection program that causes a computer to execute processing.
11. Sequentially acquiring three-dimensional point cloud data representing outdoor structures acquired by a three-dimensional laser scanner; Identifying first point cloud data representing an object and second point cloud data representing an obstacle from the three-dimensional point cloud data; based on the first point cloud data, setting a first detection area which is an area surrounding the first point cloud data; based on feature points extracted from the first point cloud data, moving the first point cloud data and the first detection area in accordance with movement of the feature points; outputting an alert indicating the proximity of the object and the obstacle when a part of the first detection area overlaps with a part of a second detection area that is a surrounding area of the second point cloud data, or when the number of point data of the first point cloud data present in the second detection area becomes equal to or greater than a predetermined threshold; An obstacle proximity detection program for causing a computer to execute processing, The object is a utility pole under construction, The obstacle is a cable existing between existing utility poles, When identifying the second point cloud data representing the cable, data of a predetermined region included in the three-dimensional point cloud data is rotated by a predetermined angle around the z-axis, and the rotated data of the predetermined region is projected onto a yz-plane; and if the data of the predetermined region projected onto the yz-plane is circular, the data of the predetermined region is identified as the second point cloud data representing the cable. An obstacle proximity detection program that causes a computer to execute processing.
12. Sequentially acquiring three-dimensional point cloud data representing outdoor structures acquired by a three-dimensional laser scanner; Identifying first point cloud data representing an object and second point cloud data representing an obstacle from the three-dimensional point cloud data; based on the first point cloud data, setting a first detection area which is an area surrounding the first point cloud data; based on feature points extracted from the first point cloud data, moving the first point cloud data and the first detection area in accordance with movement of the feature points; outputting an alert indicating the proximity of the object and the obstacle when a part of the first detection area overlaps with a part of a second detection area that is a surrounding area of the second point cloud data, or when the number of point data of the first point cloud data present in the second detection area becomes equal to or greater than a predetermined threshold; An obstacle proximity detection program for causing a computer to execute processing, The object is a utility pole under construction, the obstacle is a wall surface, When identifying the second point cloud data representing the wall surface, data of a predetermined area included in the three-dimensional point cloud data is projected onto an xy plane, and if the data of the predetermined area projected onto the xy plane has a linear shape, the data of the predetermined area is identified as the second point cloud data representing the wall surface. An obstacle proximity detection program that causes a computer to execute processing.
13. Sequentially acquiring three-dimensional point cloud data representing outdoor structures acquired by a three-dimensional laser scanner; Identifying first point cloud data representing an object and second point cloud data representing an obstacle from the three-dimensional point cloud data; based on the first point cloud data, setting a first detection area which is an area surrounding the first point cloud data; based on feature points extracted from the first point cloud data, moving the first point cloud data and the first detection area in accordance with movement of the feature points; outputting an alert indicating the proximity of the object and the obstacle when a part of the first detection area overlaps with a part of a second detection area that is a surrounding area of the second point cloud data, or when the number of point data of the first point cloud data present in the second detection area becomes equal to or greater than a predetermined threshold; An obstacle proximity detection program for causing a computer to execute processing, detecting at least two circles from the first point cloud data, calculating a central axis of the first point cloud data by connecting the centers of the two circles, and setting the surrounding area, which is a predetermined distance from the central axis, as the first detection area; An obstacle proximity detection program that causes a computer to execute processing.
Citation Information
Patent Citations
Crane
JP2018095376A
Three-dimensional space specifying device, method, and program
JP2018097588A
Facility state detection method, detection system and program
JP2018195240A
Monitoring system and monitoring method
JP2019201268A