Point cloud processing device

The point cloud processing device addresses the computational load issue by dividing regions, calculating shapes, and selecting target point clouds, resulting in reduced data and improved motion planning efficiency.

JP7856227B1Active Publication Date: 2026-05-11MITSUBISHI ELECTRIC CORP
View PDF 5 Cites 0 Cited by

Patent Information

Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
MITSUBISHI ELECTRIC CORP
Filing Date
2025-05-19
Publication Date
2026-05-11

AI Technical Summary

Technical Problem

Existing point cloud processing systems face increased computational load due to the large amount of data required for motion planning, particularly when considering all layers of a moving body's environment.

Method used

A point cloud processing device that divides regions based on predetermined conditions, calculates first and second shapes for each region, evaluates these shapes, and extracts a target evaluation value to select relevant point clouds for motion planning, reducing data and computational load.

Benefits of technology

The device effectively reduces the amount of data and computational load by extracting only necessary point clouds, allowing for more accurate and efficient motion planning.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007856227000001
    Figure 0007856227000001
  • Figure 0007856227000002
    Figure 0007856227000002
  • Figure 0007856227000003
    Figure 0007856227000003
Patent Text Reader

Abstract

The point cloud processing device includes a point cloud input unit (2) for inputting a point cloud (20), a division unit (3) for dividing a region containing the point cloud (20) and a moving object (100) into divided regions (15), a first calculation unit (5) for calculating a first shape (21) based on the shape of the moving object (100) included in each divided region (15), a second calculation unit (6) for calculating a second shape (22) based on the point cloud (20) included in each divided region (15), an evaluation value calculation unit (7) for calculating an evaluation value based on the first shape (21) and second shape (22) corresponding to each divided region (15), and a point cloud extraction unit (8) for extracting the point cloud (20) of the divided region (15) corresponding to the target evaluation value.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to a point cloud processing apparatus that processes point clouds.

Background Art

[0002] A point cloud processing apparatus is used for motion planning of a moving body. In particular, it is required to perform efficient motion planning in consideration of the surrounding environment of the moving body and the shape of the moving body. Therefore, the surrounding environment of the moving body is acquired as a point cloud by a sensor or the like, and the acquired point cloud is processed to perform motion planning.

[0003] In Patent Document 1, a height range from a reference plane on which a robot device moves to the height of the robot device is divided into a plurality of layers (division regions) corresponding to predetermined height ranges, and an obstacle environment map indicating the occupancy state of obstacles existing in each layer is created. A path is planned based on an enlarged environment map in which the occupancy area of the obstacles in the obstacle environment map is enlarged according to the shape of the mobile robot device in each layer.

Prior Art Documents

Patent Documents

[0004]

Patent Document 1

Summary of the Invention

Problems to be Solved by the Invention

[0005] In the technique disclosed in Patent Document 1, since a path is planned using information corresponding to all layers, there is a problem that the amount of data increases and the computational load in motion planning increases.

[0006] The present disclosure has been made to solve the above problems, and an object thereof is to reduce the amount of data used for motion planning.

Means for Solving the Problems

[0007] The point cloud processing device according to this disclosure includes: a point cloud input unit that inputs a point cloud, which is information about obstacles around a moving object; a division unit that divides a region including the point cloud and the moving object into divided regions according to predetermined division conditions; a first calculation unit that calculates a first shape corresponding to each divided region based on the shape of the moving object included in each divided region; a second calculation unit that calculates a second shape corresponding to each divided region based on the point cloud included in each divided region; an evaluation value calculation unit that calculates an evaluation value corresponding to each divided region based on the first and second shapes corresponding to each divided region; and a point cloud extraction unit that selects a target evaluation value from the evaluation values ​​based on predetermined selection conditions and extracts the point cloud of the divided region corresponding to the target evaluation value. The second shape is characterized in that, in each of the divided regions, the size of the region includes at least a portion of the region from the moving body to the point cloud. ru. [Effects of the Invention]

[0008] According to this disclosure, by extracting only a portion of the input point cloud, the amount of data used for motion planning can be reduced. [Brief explanation of the drawing]

[0009] [Figure 1] Figure 1 is a diagram showing the configuration of a point cloud processing device according to Embodiment 1. [Figure 2] Figure 2 is an external view of the mobile body and its surroundings according to Embodiment 1. [Figure 3] Figure 3 is a top view of the moving body and the area surrounding the moving body for each divided region according to Embodiment 1. [Figure 4] Figure 4 shows the first and second shapes of each divided region according to Embodiment 1. [Figure 5] Figure 5 shows the external view of the moving object and its surroundings when the shape of the moving object and the point cloud surrounding the moving object change. [Figure 6] Figure 6 shows top views of the moving object and its surroundings in each divided region when the shape of the moving object and the point cloud around the moving object change. [Figure 7]FIG. 7 is a diagram showing the first shape and the second shape of each divided region when the shape of the moving body and the point group around the moving body change. [Figure 8] FIG. 8 is a flowchart showing an example of the operation of the point group processing device according to the first embodiment. [Figure 9] FIG. 9 is a configuration diagram of the point group processing device according to the second embodiment. [Figure 10] FIG. 10 is a diagram showing the first shape and the second shape of each divided region according to the second embodiment. [Figure 11] FIG. 11 is a flowchart showing an example of the operation of the point group processing device according to the second embodiment. [Figure 12] FIG. 12 is a configuration diagram of the point group processing device according to the third embodiment. [Figure 13] FIG. 13 is a diagram showing the first shape and the second shape of each divided region according to the third embodiment. [Figure 14] FIG. 14 is a flowchart showing an example of the operation of the point group processing device according to the third embodiment. [Figure 15] FIG. 15 is a diagram showing the hardware configuration of the point group processing device in the first to third embodiments.

MODE FOR CARRYING OUT THE INVENTION

[0010] The moving body is, for example, a robot that autonomously travels to supply parts or the like to a production line in a factory, and is controlled to avoid obstacles such as pillars. The moving body may be a robot that travels within a limited travel range such as a factory, or may be one like an automobile whose travel route is determined but whose travel range is not limited.

[0011] In the present disclosure, the moving body includes a point group processing device. Note that the point group processing device does not necessarily have to be provided in the moving body, and may be provided in an external device separate from the moving body.

[0012] First Embodiment. FIG. 1 is a configuration diagram of the point cloud processing device 110 according to Embodiment 1. FIG. 2 is an external view around the mobile body 100.

[0013] FIG. 1 shows a point cloud sensor 1, a control device 10, a point cloud processing device 110, and a motion planning device 300.

[0014] The point cloud sensor 1 may be, for example, a (3D-) LiDAR sensor provided on the mobile body 100, as long as it is a distance measuring sensor capable of measuring the distance between the mobile body 100 and the obstacle 200. The point cloud sensor 1 outputs a point cloud 20 including the coordinate information of the position of the obstacle 200.

[0015] The control device 10 controls at least part of the operations of the mobile body 100. As will be described later, when the shape of the mobile body 100 changes, the control device 10 inputs information regarding the control of the mobile body 100 to the storage unit 3.

[0016] The point cloud processing device 110 according to Embodiment 1 includes a point cloud input unit 2, a storage unit 3, a division unit 4, a first calculation unit 5, a second calculation unit 6, an evaluation value calculation unit 7, and a point cloud extraction unit 8. The point cloud extraction unit 8 includes a selection unit 9.

[0017] The point cloud processing device 110 processes the point cloud 20 input from the point cloud sensor 1 etc., and extracts a part of the point cloud 20 for use in the motion planning of the mobile body 100. For example, as shown in FIG. 1, the point cloud 20 extracted by the point cloud extraction unit 8 is input to the motion planning device 300 that performs the motion planning of the mobile body 100.

[0018] The point cloud input unit 2 acquires and inputs the point cloud 20, which is information regarding the obstacle 200 around the mobile body 100, from the point cloud sensor 1.

[0019] The storage unit 3 stores the information on the shape of the mobile body 100, specifically, the features of the shape of the mobile body 100. Further, the storage unit 3 acquires and inputs the information on the shape of the mobile body 100 from the control device 10.

[0020] The division unit 4 divides the region containing the point cloud 20 and the moving object 100 according to predetermined division conditions and sets the divided regions as division regions 15. The division unit 4 sets the division regions 15 based on the information input from the storage unit 3 and the point cloud input unit 2 and inputs the shape of the point cloud 20 and the moving object 100 for each division region 15 to the first calculation unit 5 and the second calculation unit 6. The predetermined division conditions are based on the characteristics of the shape of the moving object 100. The division region 15 is a region divided in the height direction from the floor surface to the height of the head of the moving object 100, as shown in Figure 2, for example. In this case, the division conditions can be in any height direction. In this embodiment, the region containing the point cloud 20 and the moving object 100 is divided into three division regions 15: division region 15a, division region 15b, and division region 15c. Note that the number of division regions 15 is merely an example, and the number of division regions 15 is not limited to three.

[0021] The first calculation unit 5 calculates the first shape 21 based on the shape of the moving body 100 contained in each divided region 15. Here, the first shape 21 is a size set based on the shape of the moving body 100. For example, in Embodiment 1, the size of the first shape 21 is the area. Alternatively, the size of the first shape 21 may be the volume.

[0022] The second calculation unit 6 calculates the second shape 22 based on the point cloud 20 contained in each divided region 15. Here, the second shape 22 is the size of the region up to the point cloud 20. For example, in Embodiment 1, the size of the second shape 22 is the area. Alternatively, the size of the second shape 22 may be the volume.

[0023] The second calculation unit 6 calculates the second shape 22 such that it is tangent to the obstacles 200 based on the point cloud 20 included in each divided region 15, or is separated by a predetermined distance from the obstacles 200 based on the point cloud 20 included in each divided region 15.

[0024] In this disclosure, the first shape 21 and the second shape 22 are calculated as two-dimensional figures. Figure 3 is a top view of the movable body 100 and the area around the movable body 100 in each divided region 15. Figure 3(a) shows the divided region 15a, Figure 3(b) shows the divided region 15b, and Figure 3(c) shows the divided region 15c. The movable body 100 shown in Figure 3 shows the outer shape of the movable body 100 with details omitted. Figure 3 is also a top view of Figure 2.

[0025] Figure 4 shows the first shape 21 and second shape 22 of each divided region 15 according to Embodiment 1. Figure 4(a) shows the divided region 15a, Figure 4(b) shows the divided region 15b, and Figure 4(c) shows the divided region 15c.

[0026] Based on the shape of the moving object 100 and the point cloud information for each of the 15 divided regions shown in Figure 3, the first calculation unit 5 and the second calculation unit 6 calculate the first shape 21 and the second shape 22 for each of the 15 divided regions, as shown in Figure 4. Here, the first shape 21 and the second shape 22 are the shaded areas shown in Figure 4. Since the second shape 22 is calculated based on the point cloud 20, which is information about the area around the moving object 100, it is an area that also includes the first shape 21.

[0027] Furthermore, the second calculation unit 6 may calculate a region of any size in the direction of the second shape 22 where there are no obstacles 200. For example, as shown in Figure 4, the upper, lower, and left sides of Figure 4, which are the directions of the second shape 22 where there are no obstacles 200, are demarcated at arbitrary positions and the second shape 22 is calculated accordingly.

[0028] As shown in Figure 1, the evaluation value calculation unit 7 calculates an evaluation value corresponding to each divided region 15 based on the first shape 21 and the second shape 22 corresponding to each divided region 15.

[0029] In Embodiment 1, the evaluation value is the ratio of the size of the first shape 21 to the size of the second shape 22. In Embodiment 1, the evaluation value is the ratio of the area of ​​the first shape 21 to the area of ​​the second shape 22. The evaluation value calculation unit 7 calculates the evaluation value in each divided region 15 based on the first shape 21 and the second shape 22 as shown in Figure 4.

[0030] The point cloud extraction unit 8 selects target evaluation values ​​from evaluation values ​​based on predetermined selection conditions and extracts point clouds 20 of the divided regions 15 corresponding to the target evaluation values.

[0031] The point cloud extraction unit 8 includes a selection unit 9. The selection unit 9 compares the evaluation values ​​calculated by the evaluation value calculation unit 7 based on predetermined selection conditions and selects the evaluation value that best satisfies the selection conditions as the target evaluation value. The point cloud extraction unit 8 then selects a divided region 15 corresponding to the target evaluation value and extracts the point cloud 20 of the divided region 15. The point cloud 20 extracted by the point cloud extraction unit 8 is used for motion planning.

[0032] In Embodiment 1, the selection criterion is, for example, the highest evaluation value among the evaluation values. Since the evaluation value is the ratio of the size of the first shape 21 to the size of the second shape 22, the one with the largest size ratio is selected as the target evaluation value. For example, in Embodiment 1, the region with the largest ratio of the size of the first shape 21 to the size of the second shape 22 is the divided region 15b, so the evaluation value of the divided region 15b becomes the target evaluation value.

[0033] Furthermore, the evaluation value is not limited to the ratio of the size of the first shape 21 to the size of the second shape 22. For example, the evaluation value may be the ratio of the size of the second shape 22 to the size of the first shape 21, in which case the selection unit 9 may select the evaluation value of the smallest region as the target evaluation value.

[0034] Furthermore, the calculation of the first shape 21, the second shape 22, and the evaluation value can be made more efficient by compressing them to reduce the capacity. The first calculation unit 5 compresses the first shape 21 into the planes set in each divided region 15. The second calculation unit 6 compresses the second shape 22 into the planes set in each divided region 15. Then, the evaluation value calculation unit 7 calculates the evaluation value based on the compressed first shape 21 and the compressed second shape 22.

[0035] Furthermore, another method for compression by the first calculation unit 5 and the second calculation unit 6 is shown below. The first calculation unit 5 compresses the first shape 21 into the planes set in each divided region 15. The second calculation unit 6 compresses the point cloud 20 contained in each divided region 15 into the planes set in each divided region 15. The second shape 22 is calculated based on the compressed point cloud 20, and the evaluation value calculation unit 7 calculates an evaluation value based on the compressed first shape 21 and the compressed second shape 22.

[0036] The point cloud extraction unit 8 extracts the point cloud 20 of the divided region 15 corresponding to the target evaluation value as a 3D point cloud 20 or a 2D point cloud 20.

[0037] If a 3D point cloud 20 is extracted, the point cloud 20 used in motion planning can take 3D information into account. For example, if the point cloud 20 contains 3D information, the motion plan will also take height information into account.

[0038] When the point cloud extraction unit 8 extracts a two-dimensional point cloud 20, the amount of data is reduced because the information is compressed. For example, if height information is not needed, the two-dimensional information excluding height information can be used, thus reducing the amount of data and enabling the creation of an efficient operation plan. One example of how the point cloud extraction unit 8 extracts the two-dimensional point cloud 20 is by compressing the information onto the plane set in each divided region 15.

[0039] Furthermore, the shape of the moving object 100 may change, or the point cloud 20, which contains information about obstacles 200 around the moving object 100, may change. In order to process the point cloud 20 in real time and reflect the information, at least one of the first shape 21 and the second shape 22 is made into a dynamically changeable shape.

[0040] Figure 5 shows the external view of the mobile body 100 and its surroundings when the shape of the mobile body 100 and the point cloud 20 surrounding the mobile body 100 change. In Figure 5, the external view of the mobile body 100 and its surroundings changes compared to Figure 2. Specifically, in Figure 5, the length of the arm attached to the mobile body 100 is extended, and the shape of the mobile body 100 in the divided region 15a that includes the arm changes. Also in Figure 5, the state of the obstacle 200 around the mobile body 100 changes, and the point cloud 20 in the divided region 15b that includes the obstacle 200 changes.

[0041] Figure 6 is a top view of the moving object 100 and its surroundings in each divided region 15 when the shape of the moving object 100 and the point cloud 20 surrounding the moving object 100 change. Figure 6(a) shows divided region 15a, Figure 6(b) shows divided region 15b, and Figure 6(c) shows divided region 15c. Figure 6 is a top view of Figure 5.

[0042] Similar to Figure 5, in the divided region 15a of Figure 6(a), the shape of the moving object 100 changes, and in the divided region 15b of Figure 6(b), the point cloud 20, which contains information about the obstacle 200, changes.

[0043] The first calculation unit 5 calculates the first shape 21 based on the changed shape of the moving body 100 if the shape characteristics of the moving body 100 have changed since the last time the first shape 21 was calculated. This allows the first calculation unit 5 to dynamically change the first shape 21.

[0044] The control device 10 controls the movement of the mobile body 100 and inputs control commands, which are information related to the control of the mobile body 100, into the storage unit 3. The division unit 4 creates division regions 15 based on the shape of the mobile body 100 from the storage unit 3, and the first calculation unit 5 calculates the first shape 21 based on the shape of the mobile body 100 for each division region 15 input from the division unit 4.

[0045] Here, the point cloud processing device 110 or the control device 10 may include means for determining whether the shape of the moving body 100 has changed. For example, the shape of the moving body 100 may be determined by means (not shown). The storage unit 3 stores a relationship formula between the joint angle of the arm and the length of the arm. Since the joint angle of the arm is uniquely determined by the command angle of the motor connected in the joint (an example of a control command from the control device 10), the length of the arm can be determined based on the relationship formula stored in the storage unit 3. The means (not shown) determines whether the shape of the moving body 100 has changed by determining whether this length of the arm has changed by a predetermined value or more. If it is determined that the shape of the moving body 100 has changed, the first calculation unit 5 calculates a first shape 21 based on the length of the arm. Alternatively, instead of storing a relationship formula between the joint angle of the arm and the length of the arm, the storage unit 3 may store a table showing the relationship between the joint angle of the arm and the length of the arm.

[0046] Furthermore, the system does not need to have a means for determining whether or not the shape of the moving body 100 has changed. For example, the first calculation unit 5 receives the shape of the moving body 100 from the storage unit 3 via the division unit 4 at predetermined time intervals, and calculates the first shape 21 based on the shape of the moving body 100 for each divided region 15 input from the division unit 4.

[0047] The second calculation unit 6 receives the point cloud 20 from the point cloud input unit 2 via the division unit 4 at predetermined time intervals, and calculates the second shape 22 based on the point cloud 20 for each division region 15 input from the division unit 4. This allows the second calculation unit 6 to dynamically change the second shape 22. However, it is not limited to this, and the second calculation unit 6 may perform the calculation if it determines that the point cloud 20 has changed or not. For example, it may determine whether the point cloud 20 has changed or not before calculating the second shape 22 by means of a means not shown. If the point cloud 20 has changed, the second calculation unit 6 calculates the second shape 22 based on the changed point cloud 20. By making this determination, the computational load on the second calculation unit 6 can be reduced.

[0048] Figure 7 shows the first shape 21 and second shape 22 of each divided region 15 when the shape of the moving object 100 and the point cloud 20 around the moving object 100 change. Figure 7(a) shows the divided region 15a, Figure 7(b) shows the divided region 15b, and Figure 7(c) shows the divided region 15c.

[0049] As shown in Figure 7, the first calculation unit 5 and the second calculation unit 6 calculate the first shape 21 and the second shape 22 for each divided region 15. In the divided region 15a of Figure 7(a), the first shape 21 is calculated based on the shape of the moving body 100 that has been changed by the first calculation unit 5. In the divided region 15b of Figure 7(b), the second shape 22 is calculated based on the point cloud 20 that has been changed by the second calculation unit 6.

[0050] Then, as shown in Figure 1, the evaluation value calculation unit 7 calculates an evaluation value based on the recalculated first shape 21 and second shape 22. In Figure 7, the region where the ratio of the size of the first shape 21 to the size of the second shape 22 is largest is the divided region 15a, so the evaluation value of the divided region 15a becomes the target evaluation value. The point cloud extraction unit 8 extracts the point cloud 20 of the divided region 15 corresponding to the target evaluation value as a 3D point cloud 20 or a 2D point cloud 20.

[0051] Thus, because at least one of the first shape 21 and the second shape 22 is a dynamically changeable shape, the shape can be reflected in real time, resulting in more accurate extraction of the point cloud 20 used for motion planning.

[0052] The motion planning device 300 uses the point cloud 20 from the point cloud extraction unit 8 to plan the motion of the moving object 100. Here, motion planning refers to at least one of the following: generating a movement path for the moving object 100, determining the control amount for the movement of the moving object 100, and determining the action of the moving object 100 (e.g., moving along the left side of the passage, moving slowly, moving backward). The motion planning device 300 uses information about obstacles 200 based on the point cloud 20 from the point cloud extraction unit 8 to plan the motion in a way that avoids interference with obstacles 200.

[0053] Figure 8 is a flowchart showing an example of the operation of the point cloud processing device 110 according to Embodiment 1. As shown in Figure 8, when the operation of the point cloud processing device 110 is started by means (not shown), the point cloud input unit 2 acquires the point cloud 20 (step ST1).

[0054] The memory unit 3 outputs the shape of the mobile body 100 (step ST2).

[0055] The division unit 4 divides the region including the point cloud 20 and the moving object 100 according to predetermined division conditions to create a divided region 15 (step ST3).

[0056] The first calculation unit 5 calculates the first shape 21 based on the shape of the moving body 100 in each divided region 15 (step ST4).

[0057] The second calculation unit 6 calculates the second shape 22 based on the point cloud 20 in each divided region 15 (step ST5).

[0058] The evaluation value calculation unit 7 calculates an evaluation value based on the first shape 21 and the second shape 22 (step ST6). In Embodiment 1, the evaluation value calculation unit 7 calculates the ratio of the area of ​​the first shape 21 to the area of ​​the second shape 22 as the evaluation value. At this time, the evaluation value calculation unit 7 performs the calculation for each divided region 15, and performs the calculation using the first shape 21 and the second shape 22 corresponding to each divided region 15.

[0059] The point cloud extraction unit 8 selects a target evaluation value from the evaluation values ​​based on predetermined selection conditions, and extracts and outputs the point cloud 20 of the divided region 15 corresponding to the target evaluation value (step ST7). In Embodiment 1, the point cloud extraction unit 8 selects the largest evaluation value among the evaluation values ​​as the target evaluation value. This outputted point cloud 20 is used for motion planning. After that, the operation of the point cloud processing device 110 is terminated by means of a means not shown.

[0060] As described above, the point cloud processing device 110 of Embodiment 1 comprises: a point cloud input unit 2 that inputs a point cloud 20 which is information relating to obstacles 200 around a moving object 100; a division unit 4 that divides the region including the point cloud 20 and the moving object 100 into divided regions 15 according to predetermined division conditions; a first calculation unit 5 that calculates a first shape 21 corresponding to each divided region 15 based on the shape of the moving object 100 included in each divided region 15; a second calculation unit 6 that calculates a second shape 22 corresponding to each divided region 15 based on the point cloud 20 included in each divided region 15; an evaluation value calculation unit 7 that calculates an evaluation value corresponding to each divided region 15 based on the first shape 21 and the second shape 22 corresponding to each divided region 15; and a point cloud extraction unit 8 that selects a target evaluation value from the evaluation value based on predetermined selection conditions and extracts the point cloud 20 of the divided region 15 corresponding to the target evaluation value.

[0061] As a result, the point cloud processing device 110 of Embodiment 1 extracts only the point cloud 20 of the selected division region 15 from the point cloud 20 of each division region 15, thus extracting only the minimum number of point clouds 20 necessary for motion planning. Therefore, the amount of data used for motion planning can be reduced. Furthermore, since the point cloud 20 selected from the evaluation values ​​of each division region 15 is used for motion planning, the computational load can be reduced compared to calculating the motion plan while considering all 3D information related to the moving object 100 and its surroundings and using that 3D information.

[0062] At least one of the first shape 21 and the second shape 22 is a dynamically changeable shape. By calculating the first shape 21 and the second shape 22 as dynamic shapes, the shape can be reflected in real time. This improves the quality of information in the extracted point cloud 20 and allows for more accurate motion planning.

[0063] The first calculation unit 5 calculates the first shape 21 based on the changed shape of the moving body 100 if the shape characteristics of the moving body 100 have changed since the last time the first shape 21 was calculated. As a result, when the shape of the moving body 100 changes, the first shape 21 is calculated to match the changed shape of the moving body 100, so that the point cloud 20 can be extracted based on evaluation values ​​calculated with higher accuracy.

[0064] The point cloud input unit 2 receives the point cloud 20 as a three-dimensional point cloud. Because it is three-dimensional information, it is possible to obtain information in both the plane and height directions, allowing for more accurate processing.

[0065] The point cloud extraction unit 8 extracts point clouds 20 from the divided regions 15 corresponding to the target evaluation values ​​as either three-dimensional or two-dimensional point clouds 20. This allows the three-dimensional information to be used in motion planning by providing a point cloud 20 that also considers height. Furthermore, if the information is two-dimensional, data in the height direction can be avoided if it is not needed.

[0066] The first calculation unit 5 compresses the first shape 21 to the plane set in each divided region 15, the second calculation unit 6 compresses the second shape 22 to the plane set in each divided region 15, and the evaluation value calculation unit 7 calculates an evaluation value based on the compressed first shape 21 and the compressed second shape 22. The first calculation unit 5 compresses the first shape 21 to the plane set in each divided region 15, the second calculation unit 6 compresses the point cloud 20 contained in each divided region 15 to the plane set in each divided region 15, calculates the second shape 22 based on the compressed point cloud 20, and the evaluation value calculation unit 7 calculates an evaluation value based on the compressed first shape 21 and the compressed second shape 22. This allows us to reduce the computational complexity by projecting the data onto a plane and compressing it into two-dimensional information.

[0067] The second calculation unit 6 calculates the second shape 22 such that it is tangent to the obstacles 200 based on the point cloud 20 included in each divided region 15, or is separated by a predetermined distance from the obstacles 200 based on the point cloud 20 included in each divided region 15. This allows for more efficient calculation of the size of the second shape 22 based on the point cloud 20.

[0068] The evaluation value is the ratio of the size of the first shape 21 to the size of the second shape 22, and the point cloud extraction unit 8 uses the largest evaluation value as the target evaluation value. By calculating the size ratio, the range in which the mobile body 100 can operate can be calculated. Furthermore, by outputting the evaluation value with the largest ratio of the size of the first shape 21 to the size of the second shape 22, the segmented region 15 with the smallest operable range of the mobile body 100 can be extracted, and the operation plan can be created more efficiently.

[0069] The division unit 4 divides the region containing the point cloud 20 and the moving object 100 into divided regions 15 based on the shape characteristics of the moving object 100. As a result, the efficiency of calculations for each divided region 15 can be improved because the region is divided based on the shape characteristics of the moving object 100.

[0070] The point cloud 20 may be generated based on information detected by sensors such as cameras installed outside the mobile body 100. Alternatively, the motion planning device 300 may have a memory device, and map information of the mobile body 100's travel range may be pre-stored in the memory device, and the point cloud 20 may be a virtual point cloud generated based on the stored map information. A virtual point cloud could be, for example, road markings. The point cloud 20 may also be a fixed point cloud set from the position information of fixed structures among the obstacles 200. The memory device may be installed on the mobile body 100, or the mobile body 100 may have a communication means and the memory device may be stored on a network.

[0071] Embodiment 2. Next, the point cloud processing device 120 according to Embodiment 2 will be described with reference to Figures 9 to 11. The point cloud processing device 120 according to Embodiment 2 differs from that of Embodiment 1 in the calculation methods of the first and second calculation units. Figure 9 is a configuration diagram of the point cloud processing device 120 according to Embodiment 2. Components identical to those in Embodiment 1 are denoted by the same reference numerals and their descriptions are omitted.

[0072] The point cloud processing device 120 according to Embodiment 2 shown in Figure 9 differs from Embodiment 1 in that it includes a first calculation unit 52 and a second calculation unit 62. In Embodiment 2, the first calculation unit 52 and the second calculation unit 62 calculate the first shape 23 and the second shape 24 as primitive shapes. Note that at least one of the first shape 23 and the second shape 24 only needs to be calculated as a primitive shape.

[0073] Primitive shapes are simple geometric shapes, such as roughly circular or polygonal shapes. In Embodiment 2, as an example of primitive shapes, the first shape 23 and the second shape 24 are calculated as ellipses.

[0074] Figure 10 shows the first shape 23 and second shape 24 of each divided region 15 according to Embodiment 2. As shown in Figure 10, the first calculation unit 52 calculates the first shape 23 as an ellipse based on the shape of the moving body 100 in each divided region 15. The first shape 23 is calculated as an ellipse with a size that circumscribes the shape of the moving body 100.

[0075] Furthermore, the second calculation unit 62 calculates a second shape 24 as an ellipse based on the point cloud 20 in each divided region 15. The second shape 24 is calculated as an ellipse of a size that the point cloud 20 touches. For example, the ratio of the length of the minor axis to the length of the major axis of the ellipse may be predetermined and calculated.

[0076] Furthermore, in order to calculate the area without obstacles 200 over the widest possible range, the second calculation unit 6 may calculate the second shape 24 using the shape that maximizes its size. For example, as shown in Figure 10, in the area where no obstacles 200 (point cloud 20) exist, the length in the left-right direction of the drawing is longer than the length in the vertical direction of the drawing. Therefore, by setting the major axis of the ellipse to be in the left-right direction of the drawing, the second shape 24 can be calculated in the shape that maximizes its size. Also, if there are multiple point clouds 20, the second shape 24 may be calculated using the primitive shape that maximizes its size based on the point cloud 20 closest in distance to the moving object 100.

[0077] The evaluation value calculation unit 7 calculates evaluation values ​​corresponding to each divided region 15 based on the first shape 23 and second shape 24 calculated using primitive shapes. The point cloud extraction unit 8 then selects a target evaluation value from the evaluation values ​​based on predetermined selection conditions by the selection unit 9, and extracts the point cloud 20 of the divided region 15 corresponding to the target evaluation value. In Embodiment 2, the selection condition is that the largest evaluation value among the evaluation values, with the largest size ratio, is selected as the target evaluation value. For example, in Embodiment 2, the region with the largest size ratio of the first shape 23 to the size of the second shape 24 is divided region 15b, so the evaluation value of divided region 15b becomes the target evaluation value.

[0078] Figure 11 is a flowchart showing an example of the operation of the point cloud processing device 120 according to Embodiment 2. Figure 11 differs from Figure 8 in that the processing of step ST8 is performed after the processing of step ST3, and the processing of step ST9 is performed after the processing of step ST8. Steps other than steps ST8 and ST9 are the same as those shown in Figure 8, so their explanation is omitted.

[0079] After the processing in step ST3 is performed, the first calculation unit 52 calculates the first shape 23 in primitive form based on the shape of the moving body 100 in each divided region 15 (step ST8).

[0080] After the processing in step ST8 is completed, the second calculation unit 62 calculates the second shape 24 in each divided region 15 as a primitive shape based on the point cloud 20 (step ST9).

[0081] As described above, in the point cloud processing device 120 according to Embodiment 2, at least one of the first shape 23 and the second shape 24 is a primitive shape. As a result, the first shape 23 and the second shape 24 do not become complex shapes, and the processing load of the point cloud processing device 120, such as the calculation of evaluation values, can be reduced.

[0082] The second calculation unit 62 calculates the second shape 22 using the shape with the maximum size. This allows the point cloud 20 to be processed under conditions that ensure the widest possible area without obstacles 200, making motion planning more efficient.

[0083] Embodiment 3. Next, the point cloud processing device 130 according to Embodiment 3 will be described using Figures 12 to 14. The point cloud processing device 130 according to Embodiment 3 differs from that of Embodiment 1 in its method of calculating evaluation values. Figure 12 is a configuration diagram of the point cloud processing device 130 according to Embodiment 3. Figure 13 is a diagram showing the shortest distance 25 between the first shape 21 and the second shape 22 of each divided region 15 according to Embodiment 3. Components identical to those in Embodiments 1 and 2 are denoted by the same reference numerals and their descriptions are omitted.

[0084] The point cloud processing device 130 according to Embodiment 3 shown in Figure 12 differs from Embodiment 1 in that it includes an evaluation value calculation unit 73 and a point cloud extraction unit 83 having a selection unit 93.

[0085] In Embodiment 1, the evaluation value was the ratio of the size of the first shape 21 to the size of the second shape 22, but in Embodiment 3, the evaluation value is the shortest distance 25 between the first shape 21 and the second shape 22. The shortest distance 25 between the first shape 21 and the second shape 22 is the shortest distance between the moving body 100 and the obstacle 200 based on the point cloud 20.

[0086] As shown in Figure 13, the evaluation value calculation unit 73 calculates the shortest distance 25 between the first shape 21 and the second shape 22 based on the first shape 21 and the second shape 22, and uses this as the evaluation value.

[0087] The selection unit 93 of the point cloud extraction unit 83 compares the evaluation values ​​calculated by the evaluation value calculation unit 73 based on predetermined selection conditions and selects the evaluation value that best satisfies the selection conditions as the target evaluation value. In Embodiment 3, since the evaluation value is the shortest distance 25 between the first shape 21 and the second shape 22, the one with the smallest evaluation value is the closest to the moving object 100 and the obstacle 200. Therefore, the selection condition is the smallest evaluation value among the evaluation values, and the smallest evaluation value is selected as the target evaluation value.

[0088] As shown in Figure 13, for example, in Embodiment 3, the division region 15 with the smallest shortest distance 25 between the first shape 21 and the second shape 22 is the division region 15b shown in Figure 13(b), so the evaluation value of the division region 15b becomes the target evaluation value.

[0089] The point cloud extraction unit 83 then selects a divided region 15 corresponding to the target evaluation value and extracts the point cloud 20 of the divided region 15 corresponding to that divided region 15.

[0090] The evaluation value calculation unit 73 may also use the first shape 23 and second shape 24, which were calculated using primitive shapes as shown in Embodiment 2, to determine the evaluation value as the shortest distance 25 between the first shape 23 and the second shape 24.

[0091] Figure 14 is a flowchart showing an example of the operation of the point cloud processing device 130 according to Embodiment 3. Figure 14 differs from Figure 8 in that the processing of step ST10 is performed after the processing of step ST5, and the processing of step ST11 is performed after the processing of step ST10. Steps other than ST10 and ST11 are the same as those shown in Figure 8, so their explanation is omitted.

[0092] After the processing in step ST5 is completed, the evaluation value calculation unit 73 calculates an evaluation value based on the first shape 21 and the second shape 22 (step ST10). In Embodiment 3, the evaluation value calculation unit 73 calculates the shortest distance 25 between the first shape 21 and the second shape 22 as the evaluation value. At this time, the evaluation value calculation unit 73 performs the calculation for each divided region 15, and performs the calculation using the first shape 21 and the second shape 22 corresponding to each divided region 15.

[0093] After the processing in step ST10 is performed, the point cloud extraction unit 83 selects a target evaluation value from the evaluation values ​​based on predetermined selection conditions, and extracts and outputs the point cloud 20 of the divided region 15 corresponding to the target evaluation value (step ST11). In embodiment 3, the point cloud extraction unit 83 selects the smallest evaluation value among the evaluation values ​​as the target evaluation value.

[0094] Based on the above, in the point cloud processing device 130 according to Embodiment 3, the evaluation value is the shortest distance 25 between the first shape 21 and the second shape 22, and the point cloud extraction unit 83 uses the smallest evaluation value among the evaluation values ​​as the target evaluation value. As a result, since the evaluation value is calculated using distance, the processing load of the point cloud processing device 130 can be reduced compared to when it is calculated using area.

[0095] Here, the hardware configuration of the point cloud processing units 110, 120, and 130 in Embodiments 1 to 3 will be described. Each function of the point cloud processing units 110, 120, and 130 can be realized by a processing circuit. The processing circuit comprises at least one processor and at least one memory.

[0096] Figure 15 shows the hardware configuration of the point cloud processing units 110, 120, and 130 in embodiments 1 to 3. The point cloud processing units 110, 120, and 130 can be realized by the processor 90 and memory 91 shown in Figure 15(a). The processor 90 is, for example, a CPU (Central Processing Unit, processing unit, arithmetic unit, microprocessor, microcomputer, processor, also called a DSP (Digital Signal Processor)) or a system LSI (Large Scale Integration).

[0097] Memory 91 includes, for example, non-volatile or volatile semiconductor memory such as RAM (Random Access Memory), ROM (Read Only Memory), flash memory, EPROM (Erasable Programmable Read Only Memory), EEPROM (Registered Trademark) (Electrically Erasable Programmable Read-Only Memory), HDD (Hard Disk Drive), magnetic disk, flexible disk, optical disk, compact disk, minidisc, or DVD (Digital Versatile Disk).

[0098] The functions of each part of the point cloud processing units 110, 120, and 130 are realized by software (software, firmware, or software and firmware). The software is written as a program and stored in memory 91. The processor 90 realizes the functions of each part by reading and executing the program stored in memory 91. In other words, this program can be said to cause the computer to execute the procedures or methods of the point cloud processing units 110, 120, and 130.

[0099] The program executed by processor 90 may be provided as a computer program product, stored on a computer-readable storage medium, in an installable or executable file format. Alternatively, the program executed by processor 90 may be provided to point cloud processing units 110, 120, and 130 via a network such as the Internet.

[0100] Furthermore, the point cloud processing units 110, 120, and 130 may be implemented by a dedicated processing circuit 92 as shown in Figure 15(b). If the processing circuit 92 is dedicated hardware, it may be, for example, a single circuit, a composite circuit, a programmed processor, a parallel programmed processor, an ASIC (Application Specific Integrated Circuit), an FPGA (Field-Programmable Gate Array), or a combination thereof.

[0101] The above describes a configuration in which the functions of each component of the point cloud processing unit 110, 120, and 130 are realized either by software or by hardware. However, this is not the only configuration; some components of the point cloud processing unit 110, 120, and 130 may be realized by software, while others may be realized by dedicated hardware.

[0102] The configurations shown in Embodiments 1 to 3 above are examples and can be combined with other known technologies. Furthermore, Embodiments 1 to 3 can be combined with each other. In addition, some parts of the configuration can be omitted or modified without departing from the spirit of the invention. [Explanation of symbols]

[0103] 110,120,130 Point cloud processing unit, 1 Point cloud sensor, 2 Point cloud input unit, 3 Memory unit, 4 Segmentation unit, 5,52 First calculation unit, 6,62 Second calculation unit, 7,73 Evaluation value calculation unit, 8,83 Point cloud extraction unit, 9,93 Selection unit, 10 Control device, 15,15a,15b,15c Segmentation region, 20 Point cloud, 21,23 First shape, 22,24 Second shape, 25 Shortest distance, 90 Processor, 91 Memory, 92 Processing circuit, 100 Moving object, 200 Obstacle, 300 Motion planning device, ST1,ST2,ST3,ST4,ST5,ST6,ST7,ST8,ST9,ST10,ST11 Steps.

Claims

1. A point cloud input unit that inputs point cloud information, which is information about obstacles around a moving object, A division unit that divides the region including the point cloud and the moving body according to predetermined division conditions to form a divided region, A first calculation unit calculates a first shape corresponding to each of the divided regions based on the shape of the moving body included in each of the divided regions, A second calculation unit calculates a second shape corresponding to each of the divided regions based on the point cloud included in each of the divided regions, An evaluation value calculation unit that calculates an evaluation value corresponding to each of the divided regions based on the first and second shapes corresponding to each of the divided regions, A point cloud extraction unit selects target evaluation values ​​from the evaluation values ​​based on predetermined selection conditions and extracts the point cloud of the divided region corresponding to the target evaluation value, Equipped with, The second shape is characterized in that, in each of the divided regions, the size of the region includes at least a portion of the region from the moving body to the point cloud.

2. A point cloud input unit that inputs point cloud information, which is information about obstacles around a moving object, A division unit that divides the region including the point cloud and the moving body according to predetermined division conditions to form a divided region, A first calculation unit calculates a first shape corresponding to each of the divided regions based on the shape of the moving body included in each of the divided regions, A second calculation unit calculates a second shape corresponding to each of the divided regions based on the point cloud included in each of the divided regions, An evaluation value calculation unit that calculates an evaluation value corresponding to each of the divided regions based on the first and second shapes corresponding to each of the divided regions, A point cloud extraction unit selects target evaluation values ​​from the evaluation values ​​based on predetermined selection conditions and extracts the point cloud of the divided region corresponding to the target evaluation value, Equipped with, The aforementioned evaluation value is the ratio of the size of the first shape to the size of the second shape, The point cloud processing device is characterized in that the point cloud extraction unit sets the largest of the evaluation values ​​as the target evaluation value.

3. The point cloud processing apparatus according to claim 1 or 2, characterized in that at least one of the first shape and the second shape is a dynamically changeable shape.

4. The point cloud processing device according to claim 1 or 2, characterized in that the first calculation unit calculates the first shape based on the changed shape of the moving body when the characteristics of the shape of the moving body have changed since the last time the first shape was calculated.

5. The point cloud processing device according to claim 1 or 2, characterized in that the point cloud input unit inputs the point cloud as a three-dimensional point cloud.

6. The point cloud processing apparatus according to claim 1 or 2, characterized in that the point cloud extraction unit extracts the point cloud of the divided region corresponding to the target evaluation value as a three-dimensional point cloud or a two-dimensional point cloud.

7. The first calculation unit compresses the first shape into a plane set in each of the divided regions, The second calculation unit compresses the second shape into a plane set in each of the divided regions, The point cloud processing apparatus according to claim 1 or 2, characterized in that the evaluation value calculation unit calculates the evaluation value based on the first shape after compression and the second shape after compression.

8. The first calculation unit compresses the first shape into a plane set in each of the divided regions, The second calculation unit compresses the point clouds included in each of the divided regions into a plane set in each of the divided regions, and calculates the second shape based on the compressed point clouds. The point cloud processing apparatus according to claim 1 or 2, characterized in that the evaluation value calculation unit calculates the evaluation value based on the first shape after compression and the second shape after compression.

9. The point cloud processing apparatus according to claim 1 or 2, characterized in that the second calculation unit calculates the second shape such that it is tangent to the obstacle based on the point cloud included in each of the divided regions, or is separated by a predetermined distance from the obstacle based on the point cloud included in each of the divided regions.

10. The point cloud processing apparatus according to claim 1 or 2, characterized in that at least one of the first shape and the second shape is a primitive shape.

11. The point cloud processing device according to claim 10, characterized in that the second calculation unit calculates the second shape as the shape with the maximum size.

12. The aforementioned evaluation value is the ratio of the size of the first shape to the size of the second shape, The point cloud processing apparatus according to claim 1, characterized in that the point cloud extraction unit sets the largest of the evaluation values ​​as the target evaluation value.

13. The aforementioned evaluation value is the shortest distance in the first shape and the second shape. The point cloud processing apparatus according to claim 1, characterized in that the point cloud extraction unit sets the smallest evaluation value among the evaluation values ​​as the target evaluation value.

14. The point cloud processing apparatus according to claim 1 or 2, characterized in that the division portion divides the region including the point cloud and the moving body into a divided region based on the shape characteristics of the moving body.