WO2024090040A1 - 情報処理装置、および情報処理方法、並びにプログラム - Google Patents

情報処理装置、および情報処理方法、並びにプログラム Download PDF

Info

Publication number
WO2024090040A1
WO2024090040A1 PCT/JP2023/032318 JP2023032318W WO2024090040A1 WO 2024090040 A1 WO2024090040 A1 WO 2024090040A1 JP 2023032318 W JP2023032318 W JP 2023032318W WO 2024090040 A1 WO2024090040 A1 WO 2024090040A1
Authority
WO
WIPO (PCT)
Prior art keywords
point cloud
itof
cloud map
information processing
speed
Prior art date
Application number
PCT/JP2023/032318
Other languages
English (en)
French (fr)
Inventor
裕崇 田中
Original Assignee
ソニーグループ株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ソニーグループ株式会社 filed Critical ソニーグループ株式会社
Publication of WO2024090040A1 publication Critical patent/WO2024090040A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S17/00Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
    • G01S17/87Combinations of systems using electromagnetic waves other than radio waves
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S17/00Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
    • G01S17/88Lidar systems specially adapted for specific applications
    • G01S17/93Lidar systems specially adapted for specific applications for anti-collision purposes
    • G01S17/931Lidar systems specially adapted for specific applications for anti-collision purposes of land vehicles
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S7/00Details of systems according to groups G01S13/00, G01S15/00, G01S17/00
    • G01S7/48Details of systems according to groups G01S13/00, G01S15/00, G01S17/00 of systems according to group G01S17/00
    • G01S7/491Details of non-pulse systems
    • G01S7/4911Transmitters

Definitions

  • the present disclosure relates to an information processing device, an information processing method, and a program. More specifically, the present disclosure relates to an information processing device, an information processing method, and a program that executes obstacle detection processing so that a moving body such as a robot or an autonomous vehicle can travel safely.
  • An autonomous mobile vehicle has a sensor that analyzes the position and distance of surrounding objects such as obstacles, and analyzes the position and distance of the obstacles based on sensor detection information, setting a driving route that avoids collisions and contact with the obstacles, thereby ensuring safe driving.
  • movement is performed using a map created based on sensor detection information or map information input from an external source.
  • Known sensors for detecting objects such as obstacles include ToF (Time of Flight) cameras that output light such as visible light, infrared light, or laser light and analyze the light reflected from objects, and LiDAR (Light Detection and Ranging).
  • ToF Time of Flight
  • LiDAR Light Detection and Ranging
  • ToF cameras There are several types of ToF cameras, one of which is the iToF (indirect ToF) camera, which calculates the object distance from the phase difference between the transmitted light (output light) and the received light (reflected light).
  • iToF indirect ToF
  • An iToF camera is designed to calculate distance according to the phase difference between the transmitted light (output light) and the received light (reflected light), but the phase difference between the transmitted light (output light) and the received light (reflected light) can only be detected in the range of 0 to 2 ⁇ .
  • Patent Document 1 JP Patent Publication No. 2022-046162
  • Patent Document 2 JP Patent Publication No. 2013-538342.
  • Patent Document 1 JP 2022-046162 A discloses a configuration in which the exposure time and emission intensity of a ToF sensor are changed according to the speed of a vehicle equipped with the ToF sensor, thereby suppressing a decrease in detection accuracy.
  • Patent Document 1 JP 2022-046162 A discloses a configuration in which the exposure time and emission intensity of a ToF sensor are changed according to the speed of a vehicle equipped with the ToF sensor, thereby suppressing a decrease in detection accuracy.
  • Patent Document 1 JP 2022-046162 A discloses a configuration in which the exposure time and emission intensity of a ToF sensor are changed according to the speed of a vehicle equipped with the ToF sensor, thereby suppressing a decrease in detection accuracy.
  • increasing the emission intensity in an environment where people are walking or there are oncoming vehicles for example, can cause inconvenience to people and oncoming vehicles.
  • Patent Document 2 JP Patent Publication No. 2013-538342 discloses a configuration in which a plurality of different modulation frequencies are used, phase difference detection is performed individually at each frequency, and these are integrated to calculate an object distance with higher accuracy.
  • this configuration has the problem that the system configuration and the calculation processing become complicated.
  • the present disclosure has been made in consideration of the above-mentioned problems, and aims to provide an information processing device, information processing method, and program that enable highly accurate object distance calculation through optimal control according to various driving environments of moving objects such as robots and vehicles.
  • one embodiment of the present disclosure provides an information processing device, information processing method, and program that further improves the accuracy of calculating object distance by using an iToF camera in combination with LiDAR.
  • a first aspect of the present disclosure is a method for manufacturing a semiconductor device comprising: a sensor attached to a moving object, the sensor outputting light of a predetermined frequency from an optical transmitter and inputting light reflected by an object via an optical receiver; a point cloud map generator that receives the detection values of the sensor and generates a point cloud map indicating object positions; A control unit that controls at least one of the sensor and the point cloud map generation unit, The control unit is The information processing device performs control to change at least one of the frequency or intensity of the output light of the sensor, the exposure time of the input light of the sensor, or the point cloud cut area in the point cloud map generated by the point cloud map generation unit, depending on the speed of the moving body.
  • a second aspect of the present disclosure is An information processing method executed in an information processing device,
  • the information processing device includes: a sensor attached to a moving object, the sensor outputting light of a predetermined frequency from an optical transmitter and inputting light reflected by an object via an optical receiver; a point cloud map generator that receives the detection values of the sensor and generates a point cloud map indicating object positions; A control unit that controls at least one of the sensor and the point cloud map generation unit, The control unit:
  • the information processing method performs control to change at least one of the frequency or intensity of the output light of the sensor, the exposure time of the input light of the sensor, or the point cloud cut area in the point cloud map generated by the point cloud map generation unit, depending on the speed of the moving body.
  • a third aspect of the present disclosure is A program for causing an information processing device to execute information processing,
  • the information processing device includes: a sensor attached to a moving object, the sensor outputting light of a predetermined frequency from an optical transmitter and inputting light reflected by an object via an optical receiver; a point cloud map generator that receives the detection values of the sensor and generates a point cloud map indicating object positions; A control unit that controls at least one of the sensor and the point cloud map generation unit, The program causes the control unit to The program executes control to change at least one of the frequency or intensity of the output light of the sensor, the exposure time of the input light of the sensor, or the point cloud cut area in the point cloud map generated by the point cloud map generation unit, depending on the speed of the moving body.
  • the program disclosed herein is, for example, a program that can be provided by a storage medium or a communication medium in a computer-readable format to an information processing device or computer system capable of executing various program codes.
  • a program that can be provided by a storage medium or a communication medium in a computer-readable format to an information processing device or computer system capable of executing various program codes.
  • a system refers to a logical collective configuration of multiple devices, and each of the devices is not limited to being located within the same housing.
  • a configuration is realized in which an optical output sensor and a point cloud map generated based on sensor detection information are controlled according to the speed of a moving object, thereby enabling optimal object detection according to the speed of the moving object.
  • the system includes a sensor that is attached to a moving object and outputs light of a predetermined frequency from an optical transmitter and receives reflected light from an object via an optical receiver, a point cloud map generator that receives the sensor detection value and generates a point cloud map showing the object position, and a controller that controls at least one of the sensor and the point cloud map generator.
  • the controller controls to change at least one of the frequency or intensity of the output light of the sensor, the exposure time of the input light of the sensor, and the point cloud cut area in the point cloud map in accordance with the moving object speed.
  • 1 is a diagram illustrating a configuration of a robot, which is a moving body to which an information processing device of the present disclosure is attached, and an example of a traveling environment in which the robot travels.
  • 1A and 1B are diagrams illustrating an example of object distance measurement using an iToF camera.
  • 11A and 11B are diagrams illustrating specific examples of phase differences when the object distance is small (near) and when the object distance is large (far);
  • 1A and 1B are diagrams illustrating problems in object distance calculation processing using an iToF camera.
  • 1A and 1B are diagrams illustrating problems in object distance calculation processing using an iToF camera.
  • 1A and 1B are diagrams illustrating problems in object distance calculation processing using an iToF camera.
  • 1A and 1B are diagrams illustrating problems in object distance calculation processing using an iToF camera.
  • FIG. 1 is a diagram illustrating an example of a configuration of an information processing device according to the present disclosure.
  • FIG. 1 is a diagram illustrating an example of a point cloud map generated by a LiDAR point cloud map generation unit.
  • FIG. 13 is a diagram illustrating a point cloud cut region.
  • 1 is a diagram illustrating an example of a point cloud map (three-dimensional point cloud map) generated by an iToF point cloud map generator.
  • FIG. 11 is a diagram illustrating an example of a combined point cloud map generated by a point cloud map combination unit;
  • FIG. 11 is a flowchart illustrating a calculation process of an iToF point cloud cut region control parameter executed by an information processing device and a process based on the calculated parameter.
  • FIG. 13 is a diagram showing a graph illustrating the correspondence relationship between the speed of a robot (moving body) and the enlargement and reduction processing of a point cloud cut region.
  • FIG. 11A to 11C are diagrams illustrating specific examples of enlargement and reduction processing of a point cloud cut region.
  • 11A to 11C are diagrams illustrating a specific example of a composite point cloud map generation process executed by a point cloud map compositing unit.
  • 11A to 11C are diagrams illustrating a specific example of a composite point cloud map generation process executed by a point cloud map compositing unit.
  • 11A to 11C are diagrams illustrating a specific example of a composite point cloud map generation process executed by a point cloud map compositing unit.
  • FIG. 13 is a diagram illustrating a graph showing a calculation function of a point cloud cut region control parameter (Dmin).
  • FIG. 11 is a diagram illustrating a specific example of control in which hysteresis is set.
  • 11 is a diagram illustrating an example of a processing sequence in which a point cloud cut process is executed after an iToF point cloud map is generated.
  • FIG. 11 is a diagram showing a flowchart illustrating a calculation process of an iToF camera output light frequency control parameter executed by an information processing device and a process based on the calculated parameter.
  • FIG. 1 is a diagram illustrating a graph showing the correspondence between the speed of a robot (moving object) and the frequency (Hz) of the output light of an iToF camera.
  • FIG. 11 is a diagram illustrating a flowchart for explaining a calculation process of an iToF camera exposure time control parameter executed by an information processing device and a process based on the calculated parameter.
  • FIG. 1 is a diagram illustrating a graph showing the correspondence between the speed of a robot (moving object) and the exposure time ( ⁇ sec) of an iToF camera.
  • FIG. 11 is a diagram illustrating a flowchart for explaining a calculation process of an iToF camera output light intensity control parameter executed by an information processing device and a process based on the calculated parameter.
  • FIG. 1 is a diagram illustrating a graph showing the correspondence between the speed of a robot (moving object) and the intensity (Watt) of the output light of an iToF camera.
  • FIG. 1 is a diagram illustrating a graph showing the correspondence between the speed of a robot (moving object) and the intensity (Watt) of the output light of an iToF camera.
  • FIG. 11 is a flowchart illustrating a process executed by an information processing device.
  • FIG. 11 is a flowchart illustrating a process executed by an information processing device.
  • FIG. 11 is a flowchart illustrating a process executed by an information processing device.
  • FIG. 11 is a flowchart illustrating a process executed by an information processing device.
  • FIG. 2 is a diagram illustrating an example of a hardware configuration of an information processing device according to the present disclosure.
  • Example 1 Regarding calculation processing of an iToF point cloud cut area control parameter, and processing based on the calculated parameters 3-1-1.
  • Example 2 Variation in which point cloud cut processing is performed after generation of an iToF point cloud map 3-2.
  • Example 2 Regarding calculation processing of an iToF camera output light frequency control parameter, and processing based on the calculated parameters 3-3.
  • Example 3 Regarding calculation processing of an iToF camera exposure time control parameter, and processing based on the calculated parameters 3-4.
  • Example 4 Regarding calculation processing of an iToF camera output light intensity control parameter, and processing based on the calculated parameters 4.
  • Example 5 Regarding an example in which the processes of Examples 1 to 4 are sequentially performed 5.
  • Example 5 Regarding hardware configuration examples of an information processing device 6. Summary of the Disclosure
  • FIG. 1 illustrates a configuration of a robot 10, which is a moving body to which an information processing device according to the present disclosure is attached, and an example of a traveling environment in which the robot 10 travels.
  • the moving body to which the information processing device of the present disclosure is attached is not limited to a robot as shown in Figure 1, but can be various moving bodies, such as a vehicle-type moving body such as an autonomous vehicle, or an airborne moving body such as a drone.
  • a vehicle-type moving body such as an autonomous vehicle
  • an airborne moving body such as a drone.
  • the robot 10 is equipped with a camera 20 and a LiDAR 30.
  • the camera 20 is composed of, for example, an RGB camera 21 and an iToF camera (depth camera) 22 .
  • the iToF camera 22 is an iToF (indirect time of flight) camera that analyzes the phase difference between the transmitted light (output light) and the received light (reflected light) and calculates the object distance from the phase difference.
  • LiDAR30 is a LiDAR (Light Detection and Ranging) sensor that outputs laser light and measures the distance to an obstacle by analyzing the reflected light of the laser light from the object.
  • LiDAR Light Detection and Ranging
  • Fig. 1A shows an example of a driving environment.
  • the robot is driving through a passageway in a building.
  • a person is walking ahead of the robot 10, which is the direction of travel of the robot, and electronic devices are also placed there.
  • these people and electronic devices are objects equivalent to obstacles, and in order for the robot 10 to run without colliding with or coming into contact with these objects (obstacles), it is necessary for the robot 10 to accurately grasp the distance and position of these objects (obstacles).
  • An iToF camera 22 and LiDAR 30 are used as sensors to accurately grasp the distance and position of objects (obstacles).
  • the iToF camera 22 and LiDAR 30 output light, such as visible light, infrared light, or laser light, and receive and analyze the light reflected from objects such as obstacles.
  • light such as visible light, infrared light, or laser light
  • the iToF camera 22 analyzes the phase difference between the transmitted light (output light) and the received light (reflected light), and calculates the object distance from the phase difference.
  • a specific example of the object distance calculation process performed by the iToF camera 22 will be described with reference to FIG.
  • FIG. 2A is a diagram showing an example of object distance measurement by the iToF camera 22.
  • the transmitted light (output light) from the iToF camera 22 on the front of the robot 10 is irradiated onto an object (obstacle)
  • the light reflected from the object (obstacle) enters the iToF camera 22 as received light (reflected light).
  • Figure 2(b) is a diagram explaining the principle of distance (depth) measurement based on the phase difference between the transmitted light (output light) of the iToF camera 22 shown in Figure 2(a) and the received light, which is reflected light from an object.
  • the horizontal axis of the graph in the figure is time (t) and the vertical axis is amplitude.
  • the solid line indicates the amplitude change of the transmitted light (output light), and the dotted line indicates the amplitude change of the received light (reflected wave).
  • the amplitude change of the transmitted light (output light) indicated by the solid line is the amplitude change detected by the optical output unit (optical transmission unit) of the iToF camera 22.
  • the amplitude change of the received light (reflected wave) indicated by the dotted line is the amplitude change detected by the optical input unit (optical reception unit) of the iToF camera 22. The greater (farther) the object distance reflecting the light, the greater the deviation between the transmitted light (output light) and the received light (reflected light).
  • the deviation between the transmitted light (output light) and the received light (reflected light) can be detected as a phase difference between the transmitted light (output light) and the received light (reflected light), as shown in the graph of FIG.
  • the phase difference increases as the object distance increases (is farther).
  • Figure 3 shows a graph showing specific examples of phase difference when the object distance is small (near) and when the object distance is large (far).
  • FIG. 3A shows the amplitude change (solid line) of the transmitted light (output light) and the amplitude change (dotted line) of the received light (reflected light) when the object distance is small (close).
  • FIG. 3B shows the amplitude change (solid line) of the transmitted light (output light) and the amplitude change (dotted line) of the received light (reflected light) when the object distance is large (far).
  • the phase difference in the case of a distant object shown in (b) is larger than the phase difference in the case of a close object shown in (a). This is because the more distant the object is, the more delayed the reception time of the received light becomes, i.e., the greater the object distance (the farther away), the greater the phase difference becomes.
  • the iToF camera is a distance sensor that utilizes this principle to enable calculation of the object distance based on the phase difference between transmitted light (output light) and received light (reflected light).
  • the iToF camera is configured to calculate a distance based on the phase difference between transmitted light (output light) and received light (reflected light).
  • the phase difference between the transmitted light (output light) and the received light (reflected light) can only be detected in the range of 0 to 2 ⁇ .
  • FIG. 4 shows the following two diagrams.
  • the example of FIG. 4A is an example of the phase difference between the transmitted light (output light) and the received light (reflected light) when the object distance is small (close), and the phase difference is a value close to zero.
  • the example of FIG. 4B is an example of the phase difference between the transmitted light (output light) and the received light (reflected light) when the object distance is large (far), and the phase difference is close to a value of 2 ⁇ .
  • FIG. 5 shows an example of "(a) RGB image” captured by the RGB camera 21 of the robot 10 when the robot 10 runs through a running environment similar to the example running environment previously described with reference to Figure 1 (A), and an example of "(b) distance image (depth image)” based on the phase difference between the transmitted light (output light) and the received light (reflected light) analyzed using the iToF camera 22.
  • the distance image shown in FIG. 5B is a schematic example of an erroneous distance image generated due to an erroneous detection of the object distance.
  • the iToF camera used here is a camera with a measurable object distance of 0 to 1.5 m. In other words, this is an example of using an iToF camera with an object distance of 1.5 m when the maximum phase difference between the iToF camera's transmitted light (output light) and received light (reflected light) is 2 ⁇ .
  • the "(b) distance image (depth image)" shown in Figure 5 is an image in which pixel values (brightness values) are set according to the phase difference between the transmitted light (output light) and the received light (reflected light) analyzed using an iToF camera with a maximum measurable distance of 1.5 m.
  • This is a luminance image in which the greater the phase difference between the transmitted light (output light) and the received light (reflected light), the lower the luminance (closer to black), and the smaller the phase difference, the higher the luminance (closer to white).
  • a pixel with a phase difference of 2 ⁇ is set to black, indicating an object distance of 1.5 m.
  • a pixel with a phase difference of 0 is set to white, indicating an object distance of 0 m.
  • the "(b) distance image (depth image)" shown in FIG. 5(b) is an example of a distance image (depth image) in which a luminance value according to the phase difference is set for each pixel, but it may be a color image in which a color according to the phase difference is set for each pixel.
  • the distance image shown in Figure 5(b) is a distance image generated using an iToF camera with a measurable object distance of 0 to 1.5 m, and for objects with an object distance of 1.5 m or more, incorrect pixel values (brightness values) are set.
  • the person (object) and electronic device (object) are 5.5 m away from the iToF camera 22 attached to the robot 10, which exceeds the measurable object distance of the iToF camera (0 to 1.5 m), and accurate distance calculation cannot be performed for objects such as the person and electronic device in the distance image shown in FIG. 5(b).
  • the pixel values (brightness values) of the distance image are set to pixel values that indicate an incorrect distance.
  • an incorrect distance value is calculated based on the phase difference between the transmitted light (output light) and received light (reflected light) of the iToF camera 22, and a pixel value (brightness value) corresponding to that incorrect distance value is set.
  • FIG. Figure 6 shows specific examples of the amplitude waveforms and phase difference of the transmitted light (output light) and received light (reflected light) in the following two examples of object distance calculation processing using an iToF camera with a measurable object distance of 0 to 1.5 m.
  • object distance 1.0 m
  • object distance 5.5 m
  • FIG. 6A shows an example of a phase difference analysis result based on the received light (reflected light) from an object at an object distance of 1.0 m, and the phase difference ⁇ between the transmitted light (output light) and the received light (reflected light) of the iToF camera 22 is measured.
  • is a value within the range of 0 to 2 ⁇ .
  • the object distance that can be measured by the iToF camera is 0 to 1.5 m, and when the phase difference is 0, the object distance is 0, and when the phase difference is 2 ⁇ , the object distance is 1.5 m.
  • the phase difference is ⁇ (0 ⁇ 2 ⁇ )
  • the example shown in FIG. 6B is a phase difference analysis result based on the light received (reflected light) from an object at an object distance of 5.5 m.
  • the graph in Figure 7 shows the elapsed time (nsec) from the output of the transmitted light (output light) from the iToF camera to the reception of the received light (reflected light) on the horizontal axis, and the object distance (m) calculated based on the phase difference between the transmitted light (output light) and the received light (reflected light) on the vertical axis.
  • the phase difference between the transmitted light (output light) and the received light (reflected light) increases sequentially within the range of 0 to 2 ⁇ .
  • a second cycle of phase difference change from 0 to 2 ⁇ occurs. Therefore, when the elapsed time is between t1 and t2, the object distance is calculated as 0 to 1.5 m corresponding to the phase difference between 0 and 2 ⁇ , just as when the elapsed time is between t0 and t1. This calculated distance is an incorrect distance.
  • the object distance is calculated as 0 to 1.5 m corresponding to the phase difference of 0 to 2 ⁇ , just as in the case of the elapsed time of t0 to t1. This calculated distance is an incorrect distance.
  • the elapsed time tq within the period from t3 to t4 corresponds to the elapsed time until the reflected light from the object at the object distance of 5.5 m described above with reference to FIG. 6B.
  • the iToF camera used has the problem of generating false detections (aliasing) in the calculated distance for objects that are farther away than the measurable object distance.
  • the measurable distance of an iToF camera is determined by the frequency of the light output from the iToF camera.
  • the frequency of the light output from the iToF camera can be set lower, i.e., the period can be increased.
  • FIG. 8 shows the following two examples.
  • (a) An example of the transmitted light and received light of an iToF camera in short range mode (measurable distance 1.5 m), which is an example of the use of short-period transmitted light with a high frequency (100 MHz) of the transmitted light of the iToF camera.
  • (b) An example of the transmitted light and received light of an iToF camera in long range mode (measurable distance 7.5 m), which is an example of the use of long-period transmitted light with a low frequency (20 MHz) of the transmitted light of the iToF camera.
  • the measurable distance of the iToF camera can be changed by changing the frequency, or period, of the light output by the iToF camera.
  • FIG. 9 is a graph in which the long-range mode data (corresponding data between elapsed time and distance) explained with reference to FIG. 8(b) has been added to the graph in FIG. 7 explained above.
  • the graph shown in Figure 9, like Figure 7 explained above, shows the elapsed time (nsec) from the output of the transmitted light (output light) from the iToF camera to the reception of the received light (reflected light) on the horizontal axis, and the object distance (m) calculated based on the phase difference between the transmitted light (output light) and the received light (reflected light) on the vertical axis.
  • the graph indicated by the dotted line is the data (corresponding data between elapsed time and distance) in short range mode explained with reference to Figure 8(a). This is the same graph as the one explained above with reference to Figure 7, and is a graph for an iToF camera in short range mode with a measurable distance of 0 to 1.5 m.
  • a phase difference of 0 corresponds to an object distance of 0
  • a phase difference of 2 ⁇ corresponds to an object distance of 1.5 m.
  • the graph shown by the solid line is the long-range mode data (corresponding data between elapsed time and distance) that was explained with reference to Figure 8 (b).
  • this is a graph of an iToF camera in long-range mode with a measurable distance of 0 to 7.5 m.
  • a phase difference of 0 corresponds to an object distance of 0
  • a phase difference of 2 ⁇ corresponds to an object distance of 7.5 m.
  • the elapsed time tq corresponds to the elapsed time tq until reflected light is received from an object with an object distance of 5.5 m, as previously described with reference to Figure 7.
  • FIG. 10 shows pixel values (brightness values) of a distance image (depth image) based on distance data calculated based on phase difference on the graph described with reference to FIG. 9.
  • the pixel values of the distance image (depth image) indicate the correct distance, but for objects with an object distance of more than 1.5 m, the pixel values of the distance image (depth image) indicate an incorrect distance.
  • the pixel value (white to black change data) showing the distance (0 to 7.5 m) corresponding to the solid line graph will be one.
  • the measurable distance of the iToF camera can be changed by changing the frequency, i.e., the period, of the output light of the iToF camera.
  • increasing the measurable distance causes a problem in that the accuracy of the calculated distance decreases. Therefore, when highly accurate distance calculation is required, it is preferable to use a camera with a small measurable distance setting.
  • the information processing device disclosed herein is a device that is attached to a moving object such as a robot or vehicle, and calculates object distances using an iToF camera.
  • the information processing device 100 of the present disclosure has a speed sensor 101, a signal processing unit (low-pass filter) 102, a 2D-LiDAR 203, a signal processing unit (low-pass filter) 104, a LiDAR point cloud map generation unit 105, an iToF camera 120, a signal processing unit (low-pass filter) 125, an iToF map generation unit 126, a point cloud map synthesis unit 131, and a control unit 132.
  • the iToF camera 120 includes an output light generating unit 121, a light transmitting unit 122, an exposure time control unit 123, and a light receiving unit (image sensor) 124.
  • the speed sensor 101 is a sensor that detects the moving speed of the robot 10, which is a moving body to which the information processing device 100 is attached.
  • a speed signal detected by the speed sensor 101 is input to the point cloud map synthesis unit 131 via a signal processing unit (low-pass filter) 102.
  • a signal processing unit (low-pass filter) 102 performs processing to remove noise signals from the speed signal detected by the speed sensor 101 .
  • the 2D-LiDAR 103 is a LiDAR (Light Detection and Ranging) sensor that outputs laser light and measures the position and distance of an obstacle by analyzing the reflected light of the laser light from an object.
  • the information processing device 100 of this embodiment uses a 2D-LiDAR 103 which is a 2D type LiDAR.
  • the 2D-LiDAR 103 scans a laser light on a two-dimensional plane, analyzes the reflected light from objects in each direction on the two-dimensional plane, and calculates the distance to the objects in each direction on the two-dimensional plane.
  • FIG. 12 shows a specific example of a two-dimensional plane on which the 2D-LiDAR 103 detects the object distance.
  • FIG. 12 shows an example of a two-dimensional plane 151 on which the 2D-LiDAR 103 performs object distance detection processing.
  • the two-dimensional plane 151 is a two-dimensional plane on which the 2D-LiDAR 103 performs object distance detection processing.
  • Information including the position and distance of objects on a two-dimensional plane analyzed by the 2D-LiDAR 103 is input to the LiDAR point cloud map generator 105 via a signal processor (low-pass filter) 104.
  • a signal processor low-pass filter
  • the signal processing unit (low-pass filter) 104 performs processing to remove noise signals from information including the positions and distances of objects on a two-dimensional plane analyzed by the 2D-LiDAR 103.
  • the LiDAR point cloud map generator 105 generates a point cloud map using information including the positions and distances of objects on a two-dimensional plane analyzed by the 2D-LiDAR 103.
  • a point cloud map is a map that shows a point cloud at the position of an object such as an obstacle.
  • a three-dimensional point cloud map is a map that shows a point cloud at the object position on a three-dimensional xyz coordinate system.
  • a two-dimensional point cloud map is a map that shows a point cloud at the object position on a two-dimensional plane.
  • Figure 14 shows an example of a point cloud map generated by the LiDAR point cloud map generation unit 105.
  • the point cloud map shown in FIG. 14 is a point cloud map that is generated when the robot 10 travels through the travel environment shown in the upper left of FIG.
  • the 2D-LiDAR 103 analyzes the object positions and distances on the two-dimensional plane 151 described above with reference to Figure 13, and the LiDAR point cloud map generation unit 105 generates a point cloud map (two-dimensional point cloud map) using the results of this analysis.
  • the point cloud map based on the LiDAR detection data (LiDAR point cloud map) generated by the LiDAR point cloud map generation unit 105 is input to the point cloud map synthesis unit 131.
  • the point cloud map synthesis unit 131 performs a synthesis process of a point cloud map (LiDAR point cloud map) based on LiDAR detection data generated by the LiDAR point cloud map generation unit 105 and a point cloud map (iToF point cloud map) generated by the iToF point cloud map generation unit 125 based on detection data from the iToF camera 120.
  • the processing executed by the point cloud map synthesis unit 131 will be described later.
  • the iToF camera 120 has an output light generating unit 121, a light transmitting unit 122, an exposure time control unit 123, and a light receiving unit (image sensor) 124.
  • the output light generating section 121 sets parameters of output light such as laser light to be output from the optical transmitting section 122 , generates light according to the set parameters, and outputs the light from the optical transmitting section 122 .
  • the output light generating unit 121 generates output light having the frequency and intensity calculated by the control unit 132 and outputs the output light from the optical transmitting unit 122 .
  • the control unit 132 executes a process of calculating the control parameters of the iToF camera 120 and the control parameters of the iToF point cloud map generated by the iToF point cloud map generation unit 126, using the moving speed of the robot 10 and the analysis results of the point cloud map generated by the point cloud map synthesis unit 131.
  • the iToF camera control parameters calculated by the control unit 132 are, for example, output light control parameters such as the frequency and intensity of the output light output by the light output unit 122 of the iToF camera 120, and parameters such as the exposure time of the light (reflected light) receiving unit (image sensor) 124.
  • the point cloud map control parameters calculated by the control unit 132 are parameters that define the point cloud cut area of the iToF point cloud map generated by the iToF point cloud map generating unit 126.
  • the point cloud cut region will be described with reference to FIG. Assume that the robot 10 shown in FIG. 15 is moving forward (upward in the figure) at a predetermined speed (v). The robot 10 travels while detecting obstacles in the traveling direction and generating a traveling route that does not collide with or come into contact with objects (obstacles).
  • the robot 10 needs to perform processing to determine a travel route based on objects (obstacles) a certain distance ahead, rather than on those immediately ahead of the robot 10.
  • a driving route is determined based on objects (obstacles) present in an object (obstacle) analysis target area 141 shown in Fig. 15.
  • an object (obstacle) non-analysis target area 142 shown in Fig. 15 is an area where object (obstacle) analysis has been completed in advance, and driving is performed according to a route generated based on the results of the advance analysis.
  • the object (obstacle) analysis target area 141 shown in FIG. 15 is an area where object analysis is required to determine the travel route of the robot 10, and where analysis of the object position and distance is required using the iToF point cloud map generated by the iToF point cloud map generation unit 126.
  • a point cloud corresponding to the object needs to be generated in the iToF point cloud map generated by the iToF point cloud map generation unit 126.
  • this region is a region in which it is not necessary to generate a point cloud corresponding to the object in the iToF point cloud map generated by the iToF point cloud map generating unit 126. This region is called a "point cloud cut region.”
  • Dmin shown in FIG. 15 is the maximum distance from the robot 10 to the point cloud cut area, and corresponds to the point cloud cut area control parameter calculated by the control unit 132.
  • the point cloud cut region control parameter (Dmin) and a specific example of the calculation process will be described later in detail.
  • the size of the "point cloud cut area” varies depending on the running speed of the robot 10.
  • the running route is determined based on objects (obstacles) further ahead.
  • the running route is determined based on objects (obstacles) that are relatively close.
  • the "point cloud cut area” can be set larger, and the farther away from the robot 10 the faster the traveling speed of the robot 10 is.
  • the process of setting the point cloud cut area according to the robot speed will be described in detail later.
  • the iToF point cloud map generator 126 does not need to process generating a three-dimensional point cloud for the point cloud cut region close to the robot 10, thereby reducing the processing load.
  • the processing load of the information processing device 100 and the robot 10 can be reduced, and battery consumption can also be reduced.
  • control unit 132 generates output light control parameters such as the frequency and intensity of the output light output by the light output unit 122 of the iToF camera 120, parameters such as the exposure time of the light (reflected light) receiving unit (image sensor) 124, and further parameters that specify the point cloud cut area of the iToF point cloud map generated by the iToF point cloud map generation unit 126.
  • the parameter calculation process executed by the control unit 132 will be described in detail later.
  • the output light generating unit 121 of the iToF camera 120 adjusts the frequency and intensity of the output light, such as laser light, according to the control parameters (frequency, intensity, etc.) calculated by the control unit 132, generates light according to the control parameters, and outputs it from the optical transmitting unit 122.
  • the light output from the optical transmitter 122 is, for example, light having an amplitude of a predetermined frequency as described above with reference to FIG.
  • the reflected light enters a light (reflected light) receiver (image sensor) 124 .
  • the light (reflected light) receiving unit (image sensor) 124 is composed of an image sensor consisting of many pixels, just like a normal camera, and the received signal of each pixel is output to the signal processing unit (low-pass filter) 125.
  • the signal processing unit (low-pass filter) 125 performs processing to remove noise signals from the speed signal detected by the speed sensor 101, and the noise-removed received signal of the light (reflected light) receiving unit (image sensor) 124 is input to the iToF point cloud map generating unit 126.
  • the iToF point cloud map generator 126 generates an iToF point cloud map based on the received signal of the light (reflected light) receiver (image sensor) 124.
  • the iToF point cloud map generator 126 first calculates the phase difference between the received light (reflected light) input to each pixel of the image sensor and the transmitted light (output light) output by the optical transmitter 122 based on the received signal of the optical (reflected light) receiver (image sensor) 124, and then calculates the distance of the object that reflected the received light (reflected light) input to each pixel based on the calculated phase difference.
  • phase difference calculation processes and object distance calculation processes are performed, for example, according to the processes described above with reference to FIG. 2(b) and the like, or the processes described with reference to FIG. 9 and FIG. 10.
  • the iToF point cloud map generator 126 further generates an iToF point cloud map (three-dimensional point cloud map) that indicates the position and distance of objects corresponding to each pixel of the light (reflected light) receiver (image sensor) 124.
  • a point cloud map is a map that shows a point cloud at the location of an object such as an obstacle.
  • a three-dimensional point cloud map is a map that shows a point cloud at the location of an object on a three-dimensional xyz coordinate system.
  • FIG. 16 shows an example of a point cloud map (three-dimensional point cloud map) generated by the iToF point cloud map generating unit 126.
  • the point cloud map shown in FIG. 16 is a point cloud map that is generated when the robot 10 travels through the travel environment shown in the upper left of FIG.
  • the iToF point cloud map generator 126 calculates the phase difference between the received light (reflected light) input by each pixel of the image sensor and the transmitted light (output light) output by the light transmitter 122 based on the received signal of the light (reflected light) receiver (image sensor) 124, calculates the object distance corresponding to each pixel based on the calculated phase difference, and generates an iToF point cloud map (three-dimensional point cloud map) as shown in FIG. 16 based on the calculated distance information.
  • the iToF point cloud map (three-dimensional point cloud map) shown in Figure 16 is a three-dimensional point cloud map that shows the positions of each object (obstacle) on the three-dimensional xyz spatial coordinate system as a point cloud.
  • the point cloud map (iToF point cloud map) generated by the iToF point cloud map generation unit 126 based on the output data of the iToF camera 120 is input to the point cloud map synthesis unit 131.
  • the point cloud map synthesis unit 131 performs a synthesis process of a point cloud map (LiDAR point cloud map) based on LiDAR detection data generated by the LiDAR point cloud map generation unit 105 and a point cloud map (iToF point cloud map) generated by the iToF point cloud map generation unit 125 based on detection data from the iToF camera 120.
  • FIG. 17 shows an example of the combined point cloud map generated by the point cloud map combination unit 131.
  • the composite point cloud map shown in FIG. 17 is a point cloud map that is generated when traveling through the traveling environment shown in the upper left of FIG.
  • the composite point cloud map shown in FIG. 17 is a point cloud map obtained by combining the following two types of point cloud maps.
  • a point cloud map LiDAR point cloud map (two-dimensional point cloud map)) on a two-dimensional plane 151 based on the LiDAR detection data generated by the LiDAR point cloud map generating unit 105 described with reference to FIG. 14
  • a point cloud map iToF point cloud map (3D point cloud map)
  • the point cloud map synthesis unit 131 synthesizes the above two types of point cloud maps to generate a synthesized point cloud map as shown in FIG.
  • the composite point cloud map generated by the point cloud map synthesis unit 131 is a point cloud map based on detection data from the 2D-LiDAR 103 (LiDAR point cloud map) and a point cloud map based on detection data from the iToF camera 120 (iToF point cloud map), a point cloud map generated based on detection data from these two different types of sensors, resulting in a point cloud map that reflects object distance data with higher accuracy.
  • the composite point cloud map generated by the point cloud map synthesis unit 131 is input to the robot control unit 201 and the control unit 132, as shown in FIG. 11.
  • the robot control unit 201 refers to the composite point cloud map generated by the point cloud map composition unit 131 to confirm the positions and distances of objects that are obstacles to the robot 10's travel, determines a safe travel route and travel speed that will avoid collisions or contact with the obstacles, and causes the robot 10 to travel according to the determined travel route and travel speed.
  • the control unit 132 inputs the composite point cloud map generated by the point cloud map synthesis unit 131 and the traveling speed information of the robot 10 detected by the speed sensor 101, and executes a process of calculating the control parameters of the iToF camera 120 and the control parameters of the iToF point cloud map generated by the iToF point cloud map generation unit 126 based on this input information.
  • the iToF camera control parameters calculated by the control unit 132 are, for example, output light control parameters such as the frequency and intensity of the output light output by the light output unit 122 of the iToF camera 120, and parameters such as the exposure time of the light (reflected light) receiving unit (image sensor) 124.
  • the parameters calculated by the control unit 132 are input to the iToF camera 120 .
  • the iToF camera 120 executes control of output light, exposure control, and the like in accordance with parameters input from the control unit 132 .
  • the point cloud map control parameters calculated by the control unit 132 are parameters that define the point cloud cut area of the iToF point cloud map generated by the iToF point cloud map generating unit 126, etc.
  • the iToF point cloud map generator 126 performs a cut process, i.e., a deletion process, on the points of the iToF point cloud map according to the parameters input from the control unit 132.
  • the embodiment described below is a control parameter calculation process performed by the control unit 132 in the information processing device 100 shown in FIG. 11, and a process based on the calculated parameters.
  • control unit 132 inputs the composite point cloud map generated by the point cloud map composition unit 131 and the running speed information of the robot 10 detected by the speed sensor 101.
  • control unit 132 calculates the control parameters of the iToF camera 120 and the control parameters of the iToF point cloud map generated by the iToF point cloud map generation unit 126.
  • control parameters calculated by the control unit 132 are at least any of the following control parameters.
  • the control unit 132 calculates at least one of the above control parameters (a) to (d).
  • the "(a) iToF point cloud cut area control parameters" calculated by the control unit 132 are input to the iToF point cloud map generation unit 126 shown in FIG. 11, and the iToF point cloud map generation unit 126 generates an iToF point cloud map that does not include the point cloud of the cut area according to the input parameters.
  • control parameters (b) to (d) calculated by the control unit 132 are input to the iToF camera 120.
  • the iToF camera 120 performs at least one of frequency control of the output light, intensity control of the output light, and exposure control according to parameters input from the control unit 132.
  • control parameter calculation process executed by the control unit 132 and the control process executed based on the calculated parameters.
  • Example 1 Calculation process of iToF point cloud cut area control parameters and processing based on the calculated parameters
  • Example 2 Calculation process of iToF camera output light frequency control parameters and processing based on the calculated parameters
  • Example 3 Calculation process of iToF camera exposure time control parameters and processing based on the calculated parameters
  • Example 4 Calculation process of iToF camera output light intensity control parameters and processing based on the calculated parameters
  • the flowchart shown in FIG. 18 is a flowchart that explains the calculation process of the iToF point cloud cut area control parameters executed by the information processing device 100 of the present disclosure, and the process based on the calculated parameters.
  • control unit data processing unit
  • CPU central processing unit
  • program execution function a program stored in the internal memory of the information processing device 100 of the present disclosure.
  • Step S101 The information processing device 100 of the present disclosure first detects the velocity (v) of the robot (moving body) 10 in step S101.
  • the speed detection process for this robot (mobile body) 10 is executed by the speed sensor 101 of the information processing device 100 shown in FIG. 11, and the detected speed (v) is input to the control unit 132 and the point cloud map synthesis unit 131.
  • step S102 the information processing device 100 compares the detected speed (v) of the robot 10 with a predefined speed threshold (Vth) and determines whether the speed (v) of the robot 10 is equal to or greater than the speed threshold (Vth). That is, it determines whether the following (determination formula a) is satisfied: v ⁇ Vth (judgment formula a)
  • step S103 the process proceeds to step S104.
  • step S102 if it is determined that the above (decision formula a) is satisfied and the speed (v) of the robot 10 is equal to or greater than the speed threshold value (Vth), the process proceeds to step S103.
  • step S103 the information processing device 100 calculates a point cloud cut region control parameter that expands a close-distance region that does not use a three-dimensional point cloud based on the iToF camera detection value. This process is also executed by the control unit 132 of the information processing device 100 shown in FIG.
  • the "point cloud cut region” corresponds to the object (obstacle) analysis non-target region 142 shown in FIG. 15, and is a region in the iToF point cloud map generated by the iToF point cloud map generator 126 where no point cloud corresponding to the object is required.
  • the robot 10 performs a process of determining a running route based on objects (obstacles) a certain distance ahead, rather than immediately before the robot 10. That is, for example, the running route is determined based on objects (obstacles) present in the object (obstacle) analysis target area 141 shown in FIG. 15.
  • the object (obstacle) non-analysis target area 142 shown in FIG. 15 is an area where object (obstacle) analysis has been completed in advance, and running is performed according to a route generated based on the results of that advance analysis.
  • the object (obstacle) analysis non-target area 142 shown in FIG. 15 is an area where the driving route has already been determined by object analysis, and no new object analysis is required. In other words, it is an area where object analysis using the iToF point cloud map is not required. Therefore, this area is an area where it is not necessary to generate a point cloud corresponding to the object in the iToF point cloud map generated by the iToF point cloud map generation unit 126. This area is the "point cloud cut area.”
  • the running route determination process is performed based on objects (obstacles) further ahead, and when the running speed of the robot 10 is slow, the running route determination process is performed based on objects (obstacles) that are relatively close. Therefore, the faster the traveling speed of the robot 10, the farther the "point cloud cut area" will be set.
  • step S103 The processing of step S103 is performed when it is determined that the speed (v) of the robot 10 is equal to or greater than the speed threshold value (Vth).
  • the control unit 132 calculates a point cloud cut area control parameter that expands the point cloud cut close-distance area that does not require point cloud generation based on the iToF camera detection value.
  • step S104 is a process to be performed when it is determined in step S102 that the above (decision formula a) is satisfied and the speed (v) of the robot 10 is not equal to or greater than the speed threshold value (Vth).
  • step S104 the information processing device 100 calculates a point cloud cut area control parameter that reduces the point cloud cut close-distance area that does not use the three-dimensional point cloud based on the iToF camera detection value.
  • Step S105 In step S103 or step S104, when the process of calculating the point cloud cut area control parameter for enlarging or reducing the close-distance area not using the three-dimensional point cloud based on the iToF camera detection value is completed, the process proceeds to step S105.
  • step S105 the information processing device 100 performs object distance calculation processing based on the iToF camera detection values and three-dimensional point cloud generation processing for the area excluding the point cloud cut area determined based on the point cloud cut area control parameters.
  • This process is executed by the iToF point cloud map generator 126 of the information processing device 100 shown in FIG. 11.
  • the iToF point cloud map generator 126 inputs point cloud cut area control parameters from the controller 132, and in accordance with the input point cloud cut area control parameters, determines a point cloud cut area in which a three-dimensional point cloud based on the iToF camera detection values is not generated, and generates an iToF point cloud map in which a point cloud is set only in the area excluding the determined point cloud cut area.
  • FIG. 19 is a graph for explaining the correspondence relationship between the speed of the robot (mobile body) 10 and the enlargement and reduction processing of the point cloud cut region.
  • the horizontal axis of the graph is the speed v (m/s) of the robot (mobile body) 10.
  • the vertical axis is the "point cloud cut area control parameter (Dmin)," which specifically indicates the maximum distance (m) from the robot 10 of the point cloud cut area.
  • This reference distance is Xm.
  • step S103 in the flow of FIG. 18, i.e., the processing when it is determined that the speed (v) of the robot 10 is equal to or greater than the speed threshold value (Vth), is the processing to the right of the threshold value Vth in the graph shown in FIG. That is, in this case, in step S103, the information processing device 100 expands the close-distance area in which the three-dimensional point cloud based on the iToF camera detection values is not used.
  • step S104 the processing when it is determined that the speed (v) of the robot 10 is not greater than or equal to the speed threshold value (Vth), is the processing to the left of the threshold value Vth in the graph shown in FIG. 19. That is, in this case, in step S104, the information processing device 100 reduces the close-distance area in which the three-dimensional point cloud based on the iToF camera detection values is not used.
  • FIG. 20 is a diagram showing a specific example of the enlargement and reduction processing of the point cloud cut region.
  • the following two different processing examples are given.
  • (a1) An example of setting the point cloud generation area and the point cloud cut area when the speed (v) of the robot 10 is determined to be equal to or greater than the speed threshold (Vth) and the processing of steps S103 and S105 is executed.
  • (a2) An example of setting the point cloud generation area and the point cloud cut area when the speed (v) of the robot 10 is determined to be less than the speed threshold (Vth) and the processing of steps S104 and S105 is executed.
  • FIG. 20(a1) shows an example of a point cloud cut area 171, a point cloud cut reference distance (Xm), and an iToF point cloud generation area 173 when the speed (v) of the robot 10 is determined to be equal to or greater than the speed threshold (Vth).
  • the point cloud cut region 171 is set to an area expanded to a position farther than the point cloud cut reference distance (Xm) 172 .
  • the iToF point cloud generation area 173 is an area excluding the point cloud cut area 171 and is set to an area farther away from the robot 10.
  • FIG. 20(a2) shows an example of a point cloud cut area 174, a point cloud cut reference distance (Xm) 172, and an iToF point cloud generation area 175 when the speed (v) of the robot 10 is determined to be less than the speed threshold (Vth).
  • the point cloud cut region 174 is set as a reduced region to a position closer than the point cloud cut reference distance (Xm).
  • the iToF point cloud generation area 173 is a wide area excluding the point cloud cut area 174, and a point cloud is generated over a wide area from a medium distance to a far distance from the robot 10.
  • steps S102 to S105 it is determined whether the running speed (v) of the robot 10 is equal to or greater than a predefined speed threshold (Vth), and if the robot 10 is running at a high speed equal to or greater than the threshold (Vth), the point cloud cut area is enlarged and set, and if the robot 10 is running at a low speed less than the threshold (Vth), the point cloud cut area is reduced and set.
  • Vth a predefined speed threshold
  • step S105 while the iToF point cloud map generation process, which is a point cloud based on the iToF camera, is being executed, in parallel, the LiDAR point cloud map generation unit 105 of the information processing device 100 shown in Figure 11 is generating a LiDAR point cloud map based on the detection values of the 2D-LiDAR 103.
  • step S106 the information processing device 100 generates a composite point cloud map by combining a three-dimensional point cloud based on the iToF camera detection values and a two-dimensional point cloud based on the LiDAR detection values.
  • This process is executed by the point cloud map synthesis unit 131 of the information processing device 100 shown in FIG. 11.
  • step S106 A specific example of the process in step S106 will be described with reference to FIGS.
  • FIG. (b) Examples of the shapes and sizes of IToF and LiDAR point cloud regions are shown.
  • the iToF point cloud region 177 is shown on the left side of Fig. 21.
  • the iToF point cloud region 177 is a point cloud generation region based on the iToF camera detection values. This region is a three-dimensional region.
  • the area on the right side is the LiDAR point cloud area, which is a point cloud generation area based on the LiDAR detection values. This area is a two-dimensional area.
  • the size and maximum distance of an iToF point cloud region are smaller than the size and maximum distance of a LiDAR point cloud region, because, as described above, the maximum measurable object distance in an iToF camera is the distance corresponding to the maximum phase difference (2 ⁇ ), and accurate distance calculation cannot be performed for objects at a distance equal to or greater than the distance corresponding to the maximum phase difference (2 ⁇ ).
  • the LiDAR point cloud domain allows measurements to be taken of more distant objects with relatively high accuracy.
  • the point cloud map synthesis unit 131 of the information processing device 100 synthesizes two point cloud maps of different sizes to generate one point cloud map.
  • An example of a combined point cloud map generated by the point cloud map combination unit 131 will be described with reference to FIG.
  • FIG. 22 shows examples of map area distribution of the following two composite point cloud maps.
  • c1 A map area distribution example of a composite point cloud map in which the robot speed (v) is equal to or greater than a threshold value Vth and the iToF point cloud with the expanded point cloud cut area is combined with the LiDAR point cloud (an example in which the processes of S103, S105, and S106 in the flow of FIG. 18 are executed)
  • c2 A map area distribution example of a composite point cloud map in which the robot speed (v) is less than the threshold value Vth and the iToF point cloud with the reduced point cloud cut area and the LiDAR point cloud are combined (an example in which the processes of S104 ⁇ S105 ⁇ S106 in the flow of FIG. 18 are executed)
  • Figure 22 (c1) shows an example of map area distribution of a composite point cloud map generated when the running speed (v) of the robot 10 is equal to or greater than the threshold value Vth and an expansion process of the close-range cut area of the iToF point cloud is executed in S103 of the flow in Figure 18.
  • the figure is shown as a plan view observed from above.
  • the area closest to the robot 10 is the LiDAR point cloud area 181.
  • This area corresponds to the point cloud cut area of the iToF point cloud enlarged in the processing of S103 of the flow in FIG. 18.
  • This area does not contain an iToF point cloud, and is composed only of the LiDAR point cloud (two-dimensional planar point cloud).
  • the area beyond LiDAR point cloud area 181 is iToF point cloud & LiDAR point cloud area 182.
  • This area is an area generated by overlapping an iToF point cloud (three-dimensional point cloud) based on the iToF camera detection values and a LiDAR point cloud (two-dimensional planar point cloud) based on the LiDAR detection values.
  • the area further away from the iToF point cloud & LiDAR point cloud area 182 is the LiDAR point cloud area 183.
  • This area is an area where an iToF point cloud based on the iToF camera detection values has not been generated, and like the LiDAR point cloud area 181 closer to the robot 10, this area also does not have an iToF point cloud and is composed only of a LiDAR point cloud (two-dimensional planar point cloud).
  • (c2) shown on the right side of Figure 22 shows an example of map area distribution of a composite point cloud map generated by performing reduction processing of the close-range point cloud cut area of the iToF point cloud in S104 of the flow in Figure 18 when the running speed (v) of the robot 10 is less than the threshold value Vth.
  • the area closest to the robot 10 is the LiDAR point cloud area 184, which is smaller than (c1) on the left side. This is because the close-range cut area of the iToF point cloud was reduced in S104 of the flow in Figure 18. This area does not have an iToF point cloud, and is composed only of the LiDAR point cloud (two-dimensional planar point cloud).
  • the area beyond LiDAR point cloud area 184 is iToF point cloud & LiDAR point cloud area 185, and the area beyond that is LiDAR point cloud area 186.
  • the synthesized point cloud map generated by the point cloud map synthesis unit 131 has the following point cloud areas set, starting from the side closest to the robot 10: (a) LiDAR point cloud area (b) iToF point cloud & LiDAR point cloud area (c) LiDAR point cloud area
  • the area closest to the robot changes size according to the robot's running speed.
  • FIG. 23 shows a specific example of a combined point cloud map generated by the point cloud map combination unit 131.
  • the example of the composite point cloud map shown in FIG. 23 is an example of a composite point cloud map generated when the robot 10 is traveling in the traveling environment shown in the upper left of FIG.
  • the synthesized point cloud map generated by the point cloud map synthesis unit 131 has the following point cloud areas set, beginning from the side closest to the robot 10: (a) LiDAR point cloud area 191 (b) iToF point cloud & LiDAR point cloud area 192 (c) LiDAR point cloud area 193
  • LiDAR point cloud region 191 and “(c) LiDAR point cloud region 193" do not contain iToF point clouds and are composed only of LiDAR point clouds (point clouds on a two-dimensional plane).
  • the "(b) iToF point cloud & LiDAR point cloud area 192" is an area in which, in addition to the LiDAR point cloud (a two-dimensional point cloud on a two-dimensional plane), an iToF point cloud (a three-dimensional point cloud) generated based on the detection values of the iToF camera is also set.
  • the robot 10 is able to obtain more accurate object position and distance information from the “(b) iToF point cloud & LiDAR point cloud area 192”.
  • “(b) iToF point cloud & LiDAR point cloud area 192” is a highly important area that is used to determine the driving route of the robot 10.
  • step S106 of the flow shown in FIG. 18 the information processing device 100 generates a composite point cloud map by combining a point cloud (three-dimensional point cloud) based on the iToF camera detection values and a point cloud (two-dimensional point cloud) based on the LiDAR detection values, for example, a composite point cloud map as shown in FIG. 23.
  • a composite point cloud map as shown in FIG. 23.
  • Step S107 In step S106, a composite point cloud map is generated by combining the point cloud (three-dimensional point cloud) based on the iToF camera detection values and the point cloud (two-dimensional point cloud) based on the LiDAR detection values, for example, a composite point cloud map as shown in Figure 23.Then, the information processing device performs processing in step S107.
  • step S107 the composite point cloud map generated in step S106 is used to control the movement of the robot 10.
  • the robot control unit 201 refers to a composite point cloud map that combines a point cloud (three-dimensional point cloud) based on the iToF camera detection values and a point cloud (two-dimensional point cloud) based on the LiDAR detection values, for example a composite point cloud map as shown in Figure 23, and performs driving control to set a safe driving route that does not collide with or come into contact with objects (obstacles).
  • the point cloud data used by the robot control unit 201 in the process of determining the driving route is mainly the "(b) iToF point cloud & LiDAR point cloud area 192" in the composite point cloud map shown in Figure 23.
  • an iToF point cloud (three-dimensional point cloud) generated based on the detection values of the iToF camera is also set, making it possible to analyze object positions and distance information with higher accuracy, and to set a safe and reliable driving route.
  • step S108 the information processing device 100 determines whether the robot 10 has arrived at the destination, and if so, ends the map generation process and the traveling process.
  • step S101 If the destination has not been reached, return to step S101 and repeat the process from step S101 onwards.
  • Example 1 Calculation process of iToF point cloud cut area control parameters and processing based on the calculated parameters.
  • the calculation formula for the point cloud cut area control parameter (Dmin) described with reference to FIG. 19 is just one example, and formulas other than this calculation formula can also be applied.
  • a calculation function for the point cloud cut region control parameter (Dmin) corresponding to a graph as shown in FIG. 24 may be used.
  • the graph shown in Fig. 24 is a function similar to that of the graph shown in Fig. 19. That is, it is expressed by the following equation (Equation 1).
  • Dmin a ⁇ v + b (Equation 1)
  • the point cloud cut area control parameter (Dmin) calculation function shown in FIG. 24 can be expressed as the following equation (Equation 2).
  • Dmin a x v + b
  • Dmin X ...
  • step S103 the processing when it is determined that the speed (v) of the robot 10 is greater than or equal to the speed threshold value (Vth), will be the processing to the right of the threshold value Vth in the graph shown in Figure 24. That is, in this case, in step S103, the information processing device 100 expands the close-distance area that does not use the three-dimensional point cloud based on the iToF camera detection values.
  • Dmin X (m)
  • the control unit 132 calculates the iToF point cloud cut area control parameter, that is, the point cloud cut area control parameter (Dmin) defined by the robot speed (v) explained with reference to the graph shown in FIG. 19.
  • the iToF point cloud map generator 126 performs processing in a processing sequence in which it generates an iToF point cloud map in which a point cloud is set in an area excluding the point cloud cut area determined according to the point cloud cut area control parameter (Dmin).
  • the iToF point cloud map generating unit 126 of the information processing device 100 shown in FIG. 11 when the iToF point cloud map generating unit 126 of the information processing device 100 shown in FIG. 11 generates an iToF point cloud map in step S105 of the flow shown in FIG. 18, the iToF point cloud map generating unit 126 generates an iToF point cloud map in which point clouds are set only in areas excluding the point cloud cut area determined based on the iToF point cloud map control parameters input from the control unit 132.
  • a processing sequence in which a point cloud cutting process is executed after generating an iToF point cloud map may be used. That is, the iToF point cloud map generating unit 126 of the information processing device 100 shown in FIG. 11 first generates an iToF point cloud map in which point clouds are set for all areas in which point clouds can be generated. Then, the iToF point cloud map generation unit 126 inputs a point cloud cut area control parameter (Dmin) from the control unit 132, and based on the input parameter, deletes the point cloud within the point cloud cut area to generate an iToF point cloud map in which the point cloud in the point cloud cut area is cut. The processing may be performed in such a processing sequence.
  • Dmin point cloud cut area control parameter
  • the flowchart shown in FIG. 26 is a flowchart for explaining the processing procedure according to this processing sequence. The process of each step in the flow shown in FIG. 26 will be described below in order.
  • step S120 information processing device 100 of the present disclosure executes object distance calculation processing and three-dimensional point cloud generation processing based on the iToF camera detection value.
  • step S120 the iToF point cloud map generator 126 generates an iToF point cloud map in which point clouds are set for all areas in which point clouds can be generated.
  • Steps S121 to S124 The processing in steps S121 to S124 is similar to the processing in steps S101 to S104 in the flow previously described with reference to FIG.
  • step S121 the velocity (v) of the robot (moving body) 10 is detected.
  • step S122 it is determined whether or not the speed (v) of the robot 10 is equal to or greater than a speed threshold value (Vth). If the speed (v) of the robot 10 is equal to or greater than the speed threshold value (Vth), the process proceeds to step S123, and if the speed (v) is not equal to or greater than the speed threshold value (Vth), the process proceeds to step S124.
  • Vth speed threshold value
  • step S123 a point cloud cut region control parameter for expanding a close-distance region that does not use a three-dimensional point cloud based on the iToF camera detection value is calculated. Also, in step S124, a point cloud cut region control parameter for reducing a close-distance region that does not use a three-dimensional point cloud based on the iToF camera detection value is calculated.
  • Step S125 In step S123 or step S124, when the calculation process of the point cloud cut area control parameter for enlarging or reducing the close-distance area not using the three-dimensional point cloud based on the iToF camera detection value is completed, the process proceeds to step S125.
  • step S125 the information processing device 100 executes a process of deleting the point cloud of the point cloud cut region determined based on the point cloud cut region control parameters calculated in step S123 or step S124 from the iToF point cloud map generated in step S120.
  • This process is executed by the iToF point cloud map generating unit 126 of the information processing device 100 shown in FIG. Through this process, the iToF point cloud map generating unit 126 generates an iToF point cloud map that does not include the point clouds in the point cloud cut region.
  • Steps S126 to S1228 The processing in steps S126 to S128 is similar to the processing in steps S106 to S108 in the flow previously described with reference to FIG.
  • step S126 a composite point cloud map is generated by combining a three-dimensional point cloud based on the iToF camera detection values and a two-dimensional point cloud based on the LiDAR detection values.
  • step S127 the composite point cloud map generated in step S126 is used to control the movement of the robot 10.
  • step S128 it is determined whether or not the robot 10 has reached the destination, and if so, the map generation process and traveling process are completed. If the vehicle has not arrived at the destination, the process returns to step S121, and the processes from step S121 onwards are repeated.
  • the process shown in the flow in FIG. 26 is executed by the iToF point cloud map generator 126 of the information processing device 100 shown in FIG. 11, which first generates a conventional iToF point cloud map in which point clouds are set in all areas in which point clouds can be set, and then deletes the point clouds in the point cloud cut areas.
  • the iToF point cloud map generator 126 can therefore first generate a conventional iToF point cloud map in which point clouds are set in all areas where point clouds can be set, just as in the past, and then add a process to delete the point clouds in the point cloud cut areas, which has the advantage that there is no need to make major changes to the configuration or processing of conventional devices.
  • the iToF camera calculates the distance according to the phase difference between the transmitted light (output light) and the received light (reflected light).
  • the phase difference between the transmitted light (output light) and the received light (reflected light) can only be detected in the range of 0 to 2 ⁇ .
  • the measurable distance of the iToF camera can be changed by changing the frequency, i.e., the period, of the output light of the iToF camera.
  • the frequency i.e., the period
  • increasing the measurable distance reduces the accuracy of the calculated distance.
  • the frequency of the output light can be lowered to enable distance calculation over a wider range, while when the running speed of the robot 10 is slow, the frequency of the output light can be increased to prioritize high-precision distance calculation.
  • An embodiment for controlling the frequency of such output light will be described below.
  • the flowchart shown in FIG. 27 is a flowchart for explaining the calculation process of the iToF camera output light frequency control parameter executed by the information processing device 100 of the present disclosure and the process based on the calculated parameter. The process of each step in the flow shown in FIG. 27 will be described below in order.
  • Step S201 The information processing device 100 of the present disclosure first detects the velocity (v) of the robot (moving body) 10 in step S201.
  • the speed detection process for this robot (mobile body) 10 is executed by the speed sensor 101 of the information processing device 100 shown in FIG. 11, and the detected speed (v) is input to the control unit 132 and the point cloud map synthesis unit 131.
  • step S202 the information processing device 100 compares the detected speed (v) of the robot 10 with a predefined speed threshold (Vth) and determines whether the speed (v) of the robot 10 is equal to or greater than the speed threshold (Vth). That is, it determines whether the following (determination formula a) is satisfied: v ⁇ Vth (judgment formula a)
  • This process is executed by the control unit 132 of the information processing device 100 shown in FIG. 11.
  • step S203 If the above (decision formula a) is satisfied and it is determined that the speed (v) of the robot 10 is equal to or greater than the speed threshold value (Vth), the process proceeds to step S203. On the other hand, if the above (decision formula a) does not hold, and it is determined that the speed (v) of the robot 10 is not equal to or greater than the speed threshold value (Vth), the process proceeds to step S204.
  • step S202 if it is determined that the above (decision formula a) is satisfied and the speed (v) of the robot 10 is equal to or greater than the speed threshold value (Vth), the process proceeds to step S203.
  • step S203 the information processing device 100 calculates a frequency control parameter for lowering the frequency of the output light of the iToF camera 120. That is, the information processing device 100 calculates a frequency control parameter for lowering the frequency of the light output by the optical transmission unit 122 of the iToF camera 120. This process is also executed by the control unit 132 of the information processing device 100 shown in FIG.
  • step S204 is a process to be performed when it is determined in step S202 that the above (decision formula a) is satisfied and the speed (v) of the robot 10 is not equal to or greater than the speed threshold value (Vth).
  • step S204 the information processing device 100 calculates a frequency control parameter for increasing the frequency of the output light of the iToF camera 120. That is, the information processing device 100 calculates a frequency control parameter for increasing the frequency of the light output by the optical transmission unit 122 of the iToF camera 120. This process is also executed by the control unit 132 of the information processing device 100 shown in FIG.
  • Step S205 When the process of calculating the frequency control parameter for lowering or raising the frequency of the light output from the iToF camera 120 is completed in step S203 or step S204, the process proceeds to step S205.
  • step S205 the information processing device 100 outputs from the iToF camera 120 output light having a frequency determined based on the frequency control parameters calculated in step S203 or step S204.
  • This process is performed in the output light generating unit 121 and the light transmitting unit 122 of the iToF camera 120.
  • Step S206 the information processing device 100 executes an object distance calculation process based on the iToF camera detection value and a three-dimensional point cloud generation process.
  • This process is executed by the iToF point cloud map generator 126 of the information processing device 100 shown in FIG. 11.
  • the iToF point cloud map generator 126 inputs the received signal from the optical receiver 124 of the iToF camera 120 via the signal processor (low-pass filter) 125, and based on this input value, performs object distance calculation processing and 3D point cloud generation processing to generate an iToF point cloud map.
  • FIG. 28 is a graph illustrating the correspondence between the speed of the robot (moving body) 10 and the frequency (Hz) of the output light of the iToF camera.
  • the horizontal axis of the graph is the speed v (m/s) of the robot (moving body) 10.
  • the vertical axis is the "frequency control parameter (fmod),” specifically the frequency (Hz) of the light output from the iToF camera 120.
  • the straight line (solid line) in the graph shown in the figure corresponds to a function that calculates a "frequency control parameter (fmod)" based on the speed (v) of the robot (moving body) 10, and is expressed by the following equation (Equation 3).
  • fmod (1/2)c ⁇ (1/Dmax) (Equation 3)
  • fmod Frequency control parameter, frequency (Hz) of light output from the iToF camera 120
  • Dmax target maximum measurement distance
  • Dmax p x v + q
  • v robot speed (m/s)
  • p Correction coefficient (speed sensitivity)
  • the "iToF camera output light reference frequency (X (Hz))" shown on the vertical axis of the graph in FIG. 28 is a frequency control parameter that serves as a reference when the robot is traveling at a predefined “threshold speed (Vth),” and is the “frequency of the output light of the iToF camera 120" that is set when the robot is traveling at a predefined “threshold speed (Vth).”
  • This reference frequency is X (Hz).
  • steps S202 to S206 it is determined whether the running speed (v) of the robot 10 is equal to or greater than a predefined speed threshold (Vth), and if the robot 10 is running at a high speed equal to or greater than the threshold (Vth), the frequency of the output light from the iToF camera 120 is lowered, and if the robot 10 is running at a low speed less than the threshold (Vth), the frequency of the output light from the iToF camera 120 is increased.
  • Vth a predefined speed threshold
  • the generation area of the iToF point cloud map can be changed according to the running speed of the robot 10.
  • the iToF point cloud map generator 126 when the robot 10 is traveling at high speed, the iToF point cloud map generator 126 generates an iToF point cloud map of a wide area in which point clouds are set up to even more distant areas.
  • an iToF point cloud map of a narrow area is generated by setting a high-precision point cloud of a nearby area.
  • step S206 while the iToF point cloud map generation process, which is a point cloud based on the iToF camera, is being executed, in parallel, the LiDAR point cloud map generation unit 105 of the information processing device 100 shown in Figure 11 is generating a LiDAR point cloud map based on the detection values of the 2D-LiDAR 103.
  • step S207 the information processing device 100 generates a composite point cloud map by combining a three-dimensional point cloud based on the iToF camera detection values and a two-dimensional point cloud based on the LiDAR detection values.
  • This process is executed by the point cloud map synthesis unit 131 of the information processing device 100 shown in FIG. 11.
  • a composite point cloud map is generated by combining a point cloud (three-dimensional point cloud) based on the iToF camera detection values and a point cloud (two-dimensional point cloud) based on the LiDAR detection values, for example, a composite point cloud map such as that described with reference to Figure 23 in the previous example. Then, the information processing device performs processing in step S208.
  • step S208 the composite point cloud map generated in step S207 is used to control the movement of the robot 10.
  • the robot control unit 201 refers to a composite point cloud map that combines a point cloud (three-dimensional point cloud) based on the iToF camera detection values and a point cloud (two-dimensional point cloud) based on the LiDAR detection values, for example a composite point cloud map as shown in Figure 23, and performs driving control to set a safe driving route that does not collide with or come into contact with objects (obstacles).
  • step S209 the information processing device 100 determines whether the robot 10 has arrived at the destination, and if so, ends the map generation process and the traveling process.
  • step S201 If the destination has not been reached, return to step S201 and repeat the process from step S201 onwards.
  • the frequency of the output light from the iToF camera 120 is reduced, and when the robot 10 is traveling at a low speed equal to or less than the threshold value (Vth), the frequency of the output light from the iToF camera 120 is increased.
  • a configuration may be adopted in which control is performed with hysteresis set as described above with reference to FIG.
  • fmod frequency control parameter
  • Example 2 Calculation process of iToF camera output light frequency control parameters and process based on the calculated parameters
  • the frequency of the light output by the iToF camera 120 By changing the frequency of the light output by the iToF camera 120 according to the running speed of the robot 10, the generation area of the iToF point cloud map generated by the iToF point cloud map generator 126 can be changed.
  • the iToF point cloud map generator 126 can generate an iToF point cloud map of a wide area in which a point cloud is set in a more distant area, and when the robot 10 is traveling at low speed, it can generate an iToF point cloud map of a narrow area in which a highly accurate point cloud is set in a closer area.
  • the iToF camera calculates the distance according to the phase difference between the transmitted light (output light) and the received light (reflected light).
  • the intensity of the received light (reflected light) is weak, it is possible to increase the amount of light incident on the image sensor by extending the exposure time, thereby improving the accuracy of analysis.
  • the intensity of the received (reflected) light decreases the further away the object is.
  • the running speed of the robot 10 When the running speed of the robot 10 is fast, it is necessary to calculate the distance to a more distant object, and control that extends the exposure time is effective for analyzing the distance to a more distant object. On the other hand, when the running speed of the robot 10 is slow, it is sufficient to prioritize calculating the distance to a closer object over calculating the distance to a more distant object, and the exposure time may be short.
  • the embodiment described below meets this requirement. For example, when the robot 10 is moving fast, the exposure time of the iToF camera is increased to enable distance calculations for objects over a wider range. On the other hand, when the robot 10 is moving slowly, the exposure time of the iToF camera is shortened to prioritize highly accurate distance calculations for close-range areas.
  • the embodiment described below is an embodiment in which the exposure time of the iToF camera is controlled in this manner according to the running speed of the robot 10.
  • the flowchart shown in FIG. 29 is a flowchart for explaining the calculation process of the iToF camera exposure time control parameter executed by the information processing device 100 of the present disclosure and the process based on the calculated parameter. The process of each step in the flow shown in FIG. 29 will be described below in order.
  • Step S221 The information processing device 100 of the present disclosure first detects the velocity (v) of the robot (moving body) 10 in step S221.
  • the speed detection process for this robot (mobile body) 10 is executed by the speed sensor 101 of the information processing device 100 shown in FIG. 11, and the detected speed (v) is input to the control unit 132 and the point cloud map synthesis unit 131.
  • step S222 the information processing device 100 compares the detected speed (v) of the robot 10 with a predefined speed threshold (Vth) and determines whether the speed (v) of the robot 10 is equal to or greater than the speed threshold (Vth). That is, it determines whether the following (determination formula a) is satisfied: v ⁇ Vth (judgment formula a)
  • This process is executed by the control unit 132 of the information processing device 100 shown in FIG. 11.
  • step S224 If the above (decision formula a) is satisfied and it is determined that the speed (v) of the robot 10 is equal to or greater than the speed threshold value (Vth), the process proceeds to step S223. On the other hand, if the above (decision formula a) does not hold, and it is determined that the speed (v) of the robot 10 is not equal to or greater than the speed threshold value (Vth), the process proceeds to step S224.
  • step S222 if it is determined that the above (decision formula a) is satisfied and the speed (v) of the robot 10 is equal to or greater than the speed threshold value (Vth), the process proceeds to step S223.
  • step S223 the information processing device 100 calculates an exposure time control parameter for lengthening the exposure time of the iToF camera 120. That is, an exposure time control parameter for lengthening the exposure time of the light receiving unit 124 of the iToF camera 120 is calculated. This process is also executed by the control unit 132 of the information processing device 100 shown in FIG.
  • step S224 is a process to be performed when it is determined in step S222 that the above (decision formula a) is satisfied and the speed (v) of the robot 10 is not equal to or greater than the speed threshold value (Vth).
  • step S224 the information processing device 100 calculates an exposure time control parameter for shortening the exposure time of the iToF camera 120. That is, an exposure time control parameter for shortening the exposure time of the light receiving unit 124 of the iToF camera 120 is calculated. This process is also executed by the control unit 132 of the information processing device 100 shown in FIG.
  • Step S225 When the process of calculating the exposure time control parameter for decreasing or shortening the exposure time of the light output from the iToF camera 120 is completed in step S223 or step S224, the process proceeds to step S225.
  • step S225 the information processing device 100 sets the exposure time determined based on the exposure time control parameter calculated in step S223 or step S224 as the exposure time of the light receiving unit 124 of the iToF camera 120. This process is executed by the exposure time control unit 123 and the optical receiving unit 124 of the iToF camera 120.
  • Step S226 the information processing device 100 executes an object distance calculation process based on the iToF camera detection value and a three-dimensional point cloud generation process.
  • This process is executed by the iToF point cloud map generator 126 of the information processing device 100 shown in FIG. 11.
  • the iToF point cloud map generator 126 inputs the received signal from the optical receiver 124 of the iToF camera 120 via the signal processor (low-pass filter) 125, and based on this input value, performs object distance calculation processing and 3D point cloud generation processing to generate an iToF point cloud map.
  • FIG. 30 is a graph illustrating the correspondence between the speed of the robot (moving body) 10 and the exposure time ( ⁇ sec) of the iToF camera.
  • the horizontal axis of the graph is the speed v (m/s) of the robot (moving body) 10.
  • the vertical axis is the "exposure time control parameter (t int )", specifically, the exposure time ( ⁇ sec) of the optical receiving unit 124 of the iToF camera 120.
  • the straight line (solid line) in the graph shown in the figure corresponds to a function that calculates the "exposure time control parameter (t int )" based on the speed (v) of the robot (moving body) 10, and is expressed by the following equation (Equation 5).
  • t int s ⁇ v + t offset ... (Equation 5)
  • the "iToF camera output light reference exposure time (X ( ⁇ sec))" shown on the vertical axis of the graph in FIG. 30 is the exposure time control parameter that serves as the reference when the robot is traveling at a predefined “threshold speed (Vth)” and is the “exposure time of the iToF camera 120" that is set when the robot is traveling at a predefined “threshold speed (Vth).”
  • This reference exposure time is X ( ⁇ sec).
  • steps S222 to S226 it is determined whether the running speed (v) of the robot 10 is equal to or greater than a predefined speed threshold (Vth), and if the robot 10 is running at a high speed equal to or greater than the threshold (Vth), the exposure time of the iToF camera 120 is increased, and if the robot 10 is running at a low speed less than the threshold (Vth), the exposure time of the iToF camera 120 is decreased.
  • Vth a predefined speed threshold
  • the accuracy of the long distance area of the iToF point cloud map can be changed depending on the running speed of the robot 10.
  • the iToF point cloud map generator 126 when the robot 10 is traveling at high speed, the iToF point cloud map generator 126 generates an iToF point cloud map in which a highly accurate point cloud is set even in more distant areas.
  • an iToF point cloud map is generated in which a highly accurate point cloud is set only in the nearby area.
  • step S226 while the iToF point cloud map generation process, which is a point cloud based on the iToF camera, is being executed, in parallel, the LiDAR point cloud map generation unit 105 of the information processing device 100 shown in Figure 11 is generating a LiDAR point cloud map based on the detection values of the 2D-LiDAR 103.
  • step S227 the information processing device 100 generates a composite point cloud map by combining a three-dimensional point cloud based on the iToF camera detection values and a two-dimensional point cloud based on the LiDAR detection values.
  • This process is executed by the point cloud map synthesis unit 131 of the information processing device 100 shown in FIG. 11.
  • a composite point cloud map is generated by combining a point cloud (three-dimensional point cloud) based on the iToF camera detection values and a point cloud (two-dimensional point cloud) based on the LiDAR detection values, for example, a composite point cloud map such as that described with reference to Figure 23 in the previous example. Then, the information processing device performs processing in step S228.
  • step S228 the composite point cloud map generated in step S227 is used to control the movement of the robot 10.
  • the robot control unit 201 refers to a composite point cloud map that combines a point cloud (three-dimensional point cloud) based on the iToF camera detection values and a point cloud (two-dimensional point cloud) based on the LiDAR detection values, for example a composite point cloud map as shown in Figure 23, and performs driving control to set a safe driving route that does not collide with or come into contact with objects (obstacles).
  • step S229 the information processing device 100 determines whether the robot 10 has arrived at the destination, and if so, ends the map generation process and the traveling process.
  • step S221 If the destination has not been reached, return to step S221 and repeat the process from step S221 onwards.
  • the exposure time of the iToF camera 120 is increased, and when the robot 10 is traveling at a low speed equal to or less than the threshold value (Vth), the exposure time of the iToF camera 120 is decreased.
  • t int X ( ⁇ sec)
  • step S224 in the flow of FIG. 29, i.e., the process when it is determined that the speed (v) of the robot 10 is not equal to or greater than the speed threshold value (Vth), is the process shown by the dotted line (processing example b) to the left of the threshold value Vth in the graph shown in FIG. 30.
  • a configuration may be adopted in which control is performed with hysteresis set as described above with reference to FIG.
  • control is performed with hysteresis set as described above with reference to FIG.
  • the iToF point cloud map generator 126 can generate an iToF point cloud map in which a high-precision point cloud is set even in more distant areas, and when the robot 10 is traveling at low speed, the iToF point cloud map can be generated in which a high-precision point cloud is set only in closer areas.
  • the iToF camera 120 calculates the distance according to the phase difference between the transmitted light (output light) and the received light (reflected light).
  • the transmitted light (output light) is output from the optical transmitter 122 of the iToF camera 120 of the information processing device 100 shown in FIG.
  • the fourth embodiment described below is an embodiment in which intensity control of the output light of the iToF camera 120 is performed in consideration of these circumstances. Specifically, when the running speed of the robot 10 is fast, it is necessary to calculate the distance of a more distant object, and in this case, the intensity of the output light is increased. On the other hand, when the running speed of the robot 10 is slow, the intensity of the output light is decreased. Such control of the intensity of the output light is executed. An embodiment for controlling the intensity of output light in this manner will be described below.
  • the flowchart shown in FIG. 31 is a flowchart for explaining the calculation process of the iToF camera output light intensity control parameter executed by the information processing device 100 of the present disclosure and the process based on the calculated parameter. The process of each step in the flow shown in FIG. 31 will be described below in order.
  • Step S241 The information processing device 100 of the present disclosure first detects the velocity (v) of the robot (moving body) 10 in step S241.
  • the speed detection process for this robot (mobile body) 10 is executed by the speed sensor 101 of the information processing device 100 shown in FIG. 11, and the detected speed (v) is input to the control unit 132 and the point cloud map synthesis unit 131.
  • step S242 the information processing device 100 compares the detected speed (v) of the robot 10 with a predefined speed threshold (Vth) and determines whether the speed (v) of the robot 10 is equal to or greater than the speed threshold (Vth). That is, it determines whether the following (determination formula a) is satisfied: v ⁇ Vth (judgment formula a)
  • This process is executed by the control unit 132 of the information processing device 100 shown in FIG. 11.
  • step S243 If the above (decision formula a) is satisfied and it is determined that the speed (v) of the robot 10 is equal to or greater than the speed threshold value (Vth), the process proceeds to step S243. On the other hand, if the above (decision formula a) does not hold, and it is determined that the speed (v) of the robot 10 is not equal to or greater than the speed threshold value (Vth), the process proceeds to step S244.
  • step S242 if it is determined that the above (decision formula a) is satisfied and the speed (v) of the robot 10 is equal to or greater than the speed threshold value (Vth), the process proceeds to step S243.
  • step S243 the information processing device 100 calculates an intensity control parameter for increasing the intensity of the output light of the iToF camera 120. That is, the information processing device 100 calculates an intensity control parameter for increasing the intensity of the light output by the optical transmission unit 122 of the iToF camera 120. This process is also executed by the control unit 132 of the information processing device 100 shown in FIG.
  • step S244 is a process to be performed when it is determined in step S242 that the above (decision formula a) is satisfied and the speed (v) of the robot 10 is not equal to or greater than the speed threshold value (Vth).
  • step S244 the information processing device 100 calculates an intensity control parameter for reducing the intensity of the output light of the iToF camera 120. That is, the information processing device 100 calculates an intensity control parameter for reducing the intensity of the light output by the optical transmission unit 122 of the iToF camera 120. This process is also executed by the control unit 132 of the information processing device 100 shown in FIG.
  • Step S245 When the process of calculating the intensity control parameter for increasing or decreasing the intensity of the light output from the iToF camera 120 is completed in step S243 or step S244, the process proceeds to step S245.
  • step S245 the information processing device 100 outputs from the iToF camera 120 output light having an intensity determined based on the intensity control parameters calculated in step S243 or step S244.
  • This process is performed in the output light generating unit 121 and the light transmitting unit 122 of the iToF camera 120.
  • Step S246 the information processing device 100 executes an object distance calculation process based on the iToF camera detection value and a three-dimensional point cloud generation process.
  • This process is executed by the iToF point cloud map generator 126 of the information processing device 100 shown in FIG. 11.
  • the iToF point cloud map generator 126 inputs the received signal from the optical receiver 124 of the iToF camera 120 via the signal processor (low-pass filter) 125, and based on this input value, performs object distance calculation processing and 3D point cloud generation processing to generate an iToF point cloud map.
  • FIG. 32 is a graph illustrating the correspondence between the speed of the robot (moving body) 10 and the intensity (Watt) of the output light of the iToF camera.
  • the horizontal axis of the graph is the speed v (m/s) of the robot (moving body) 10.
  • the vertical axis is the "intensity control parameter (Po)", specifically the intensity (Watt) of the light output from the iToF camera 120.
  • Po Intensity control parameter
  • the intensity of light output from the iToF camera 120 (Watt)
  • m Correction coefficient (speed sensitivity)
  • the “reference intensity of output light of the iToF camera (X (Watt))” shown on the vertical axis of the graph in FIG. 32 is a light output intensity control parameter that serves as a reference when the robot is traveling at a predefined “threshold speed (Vth),” and is the “intensity of output light of the iToF camera 120" that is set when the robot is traveling at a predefined “threshold speed (Vth).”
  • This reference intensity is X (Watt).
  • steps S242 to S246 it is determined whether the running speed (v) of the robot 10 is equal to or greater than a predefined speed threshold (Vth), and if the robot 10 is running at a high speed equal to or greater than the threshold (Vth), the intensity of the output light of the iToF camera 120 is increased, and if the robot 10 is running at a low speed less than the threshold (Vth), the intensity of the output light of the iToF camera 120 is decreased.
  • Vth a predefined speed threshold
  • an iToF point cloud map According to the running speed of the robot 10, i.e., when the robot is running at high speed, an iToF point cloud map that shows the distance of distant objects with high accuracy can be generated, and when the robot is running at low speed, an iToF point cloud map that shows the distance of close-up objects with high accuracy can be generated.
  • the iToF point cloud map generator 126 when the robot 10 is traveling at high speed, the iToF point cloud map generator 126 generates an iToF point cloud map in which a highly accurate point cloud is set even in more distant areas. On the other hand, when the robot 10 is traveling at a low speed, an iToF point cloud map is generated in which a highly accurate point cloud is set for objects in nearby areas.
  • step S246 while the iToF point cloud map generation process, which is a point cloud based on the iToF camera, is being executed, in parallel, the LiDAR point cloud map generation unit 105 of the information processing device 100 shown in Figure 11 is generating a LiDAR point cloud map based on the detection values of the 2D-LiDAR 103.
  • step S247 the information processing device 100 generates a composite point cloud map by combining a three-dimensional point cloud based on the iToF camera detection values and a two-dimensional point cloud based on the LiDAR detection values.
  • This process is executed by the point cloud map synthesis unit 131 of the information processing device 100 shown in FIG. 11.
  • a composite point cloud map is generated by combining a point cloud (three-dimensional point cloud) based on the iToF camera detection values and a point cloud (two-dimensional point cloud) based on the LiDAR detection values, for example, a composite point cloud map such as that described with reference to Figure 23 in the previous example. Then, the information processing device performs processing in step S248.
  • step S248 the composite point cloud map generated in step S247 is used to control the movement of the robot 10.
  • the robot control unit 201 refers to a composite point cloud map that combines a point cloud (three-dimensional point cloud) based on the iToF camera detection values and a point cloud (two-dimensional point cloud) based on the LiDAR detection values, for example a composite point cloud map as shown in Figure 23, and performs driving control to set a safe driving route that does not collide with or come into contact with objects (obstacles).
  • step S249 the information processing device 100 determines whether the robot 10 has arrived at the destination, and if so, ends the map generation process and the traveling process.
  • step S241 If the destination has not been reached, return to step S241 and repeat the process from step S241 onwards.
  • the intensity of the output light from the iToF camera 120 is increased, and when the robot 10 is traveling at a low speed equal to or less than the threshold value (Vth), the intensity of the output light from the iToF camera 120 is decreased.
  • the iToF point cloud map generator 126 can generate an iToF point cloud map in which a highly accurate point cloud is set even for more distant areas, and when the robot 10 is traveling at low speed, it can generate an iToF point cloud map in which a highly accurate point cloud is set for objects in closer areas.
  • Examples 1 to 4 i.e. (Example 1) Calculation process of iToF point cloud cut area control parameters and processing based on the calculated parameters (Example 2) Calculation process of iToF camera output light frequency control parameters and processing based on the calculated parameters (Example 3) Calculation process of iToF camera exposure time control parameters and processing based on the calculated parameters (Example 4) Calculation process of iToF camera output light intensity control parameters and processing based on the calculated parameters
  • FIGS. 33 to 36 are flowcharts that explain the processing (Example 5) executed by the information processing device 100 of the present disclosure, that is, the processing that sequentially executes each of the processing of Examples 1 to 4 described above.
  • the process of each step in the flow shown in FIGS. 33 to 36 will be described below in order.
  • Step S301 First, in step S301, the information processing apparatus 100 of the present disclosure acquires a speed threshold (Vth) and a distance threshold (Lth) of the moving body, i.e., the robot 10.
  • the velocity threshold (Vth) and distance threshold (Lth) are thresholds used to determine the processing mode, and are determined in advance according to the specifications of the iToF camera 120 to be used and stored in the memory unit of the information processing device 100.
  • These threshold values may be determined by the control unit 132 each time. For example, test shooting is performed using the iToF camera 120, and the sharpness of the received light relative to the output light is analyzed to determine the threshold values. The sharpness of the received light relative to the output light may change depending on the brightness of the surroundings and weather conditions, and the threshold determination process may be configured to take these factors into account.
  • Step S302 the information processing device 100 detects the velocity (v) of the robot (moving body) 10 in step S302.
  • the speed detection process for this robot (mobile body) 10 is executed by the speed sensor 101 of the information processing device 100 shown in FIG. 11, and the detected speed (v) is input to the control unit 132 and the point cloud map synthesis unit 131.
  • Step S303 the information processing device 100 executes an object distance calculation process based on the 2D-LiDAR detection value and a LiDAR point cloud map generation process.
  • This process is executed by the 2D-LiDAR 103 and LiDAR point cloud map generator 105 of the information processing device 100 shown in FIG. 11.
  • the LiDAR point cloud map generator 105 generates a LiDAR point cloud map based on the detection values of the 2D-LiDAR 103.
  • Step S304 the information processing device 100 determines whether or not an obstacle has been detected within the distance threshold (Lth) acquired from the storage unit in step S301.
  • This process is determined by the control unit 132 with reference to the LiDAR point cloud map generated by the LiDAR point cloud map generation unit 105.
  • step S305 If it is determined that no obstacle is detected within the distance threshold (Lth), the process proceeds to step S305. On the other hand, if it is determined that an obstacle is detected within the distance threshold (Lth), the process proceeds to step S321.
  • Step S305 If it is determined in step S304 that no obstacle is detected within the distance threshold (Lth), the process proceeds to step S305.
  • step S305 the information processing device 100 calculates a point cloud cut area control parameter that defines a close-distance area that does not use the iToF point cloud generated based on the detection value of the iToF camera 120.
  • the calculation is based on the moving object speed (v).
  • step S305 corresponds to the processes of steps S103 to S104 in the flowchart shown in Fig. 18, which is a flowchart corresponding to the previously described embodiment 1. That is, the point cloud cut region control parameter is calculated based on a function corresponding to the graph shown in Fig. 19, which was previously described.
  • a point cloud cut area control parameter is calculated that expands the close-range area that does not use the three-dimensional point cloud based on the iToF camera detection value.
  • a point cloud cut area control parameter is calculated to reduce the close-range area that does not use the three-dimensional point cloud based on the iToF camera detection value.
  • Step S306 the information processing device 100 executes an object distance calculation process based on the iToF camera detection value and an iToF point cloud map generation process for the area excluding the point cloud cut area determined based on the point cloud cut area control parameter.
  • This process is executed by the iToF point cloud map generator 126 of the information processing device 100 shown in FIG. 11.
  • the iToF point cloud map generator 126 inputs point cloud cut area control parameters from the controller 132, and in accordance with the input point cloud cut area control parameters, determines a point cloud cut area in which a three-dimensional point cloud based on the iToF camera detection values is not generated, and generates an iToF point cloud map in which a point cloud is set only in the area excluding the determined point cloud cut area.
  • Step S307 the information processing device 100 generates a composite point cloud map.
  • a composite point cloud map is generated by combining the iToF point cloud map generated based on the iToF camera detection values in step S306 and the LiDAR point cloud map generated based on the LiDAR detection values in step S303.
  • This process is executed by the point cloud map synthesis unit 131 of the information processing device 100 shown in FIG. 11.
  • the synthesized point cloud map generated by the point cloud map synthesis unit 131 has the following point cloud areas set, beginning from the side closest to the robot 10: (a) LiDAR point cloud area 191 (b) iToF point cloud & LiDAR point cloud area 192 (c) LiDAR point cloud area 193
  • LiDAR point cloud region 191 and “(c) LiDAR point cloud region 193" do not contain iToF point clouds and are composed only of LiDAR point clouds (point clouds on a two-dimensional plane).
  • the "(b) iToF point cloud & LiDAR point cloud area 192" is an area in which, in addition to the LiDAR point cloud (a point cloud on a two-dimensional plane), an iToF point cloud (a three-dimensional point cloud) generated based on the detection values of the iToF camera is also set.
  • the robot 10 is able to obtain more accurate object position and distance information from the “(b) iToF point cloud & LiDAR point cloud area 192”.
  • “(b) iToF point cloud & LiDAR point cloud area 192” is a highly important area that is used to determine the driving route of the robot 10.
  • Step S308 a composite point cloud map is generated by combining the point cloud (three-dimensional point cloud) based on the iToF camera detection values and the point cloud (two-dimensional point cloud) based on the LiDAR detection values, for example, a composite point cloud map as shown in Figure 23.Then, the information processing device performs processing in step S308.
  • step S308 the composite point cloud map generated in step S307 is used to control the movement of the robot 10.
  • the robot control unit 201 refers to a composite point cloud map that combines a point cloud (three-dimensional point cloud) based on the iToF camera detection values and a point cloud (two-dimensional point cloud) based on the LiDAR detection values, for example a composite point cloud map as shown in Figure 23, and performs driving control to set a safe driving route that does not collide with or come into contact with objects (obstacles).
  • the point cloud data used by the robot control unit 201 in the process of determining the driving route is mainly the "(b) iToF point cloud & LiDAR point cloud area 192" in the composite point cloud map shown in Figure 23.
  • an iToF point cloud (a three-dimensional point cloud) generated based on the detection values of the iToF camera is also set, making it possible to analyze object positions and distance information with higher accuracy, and to set a safe and reliable driving route.
  • step S309 the information processing device 100 determines whether the robot 10 has arrived at the destination, and if so, ends the map generation process and the traveling process.
  • step S302 If the destination has not been reached, return to step S302 and repeat the process from step S302 onwards.
  • step S321 onwards when the determination in the determination step of step S304 is No, i.e., when it is determined that an obstacle has been detected within the distance threshold (Lth), will be explained with reference to the flow shown in Figure 34 onwards.
  • Step S321 If it is determined in step S304 that an obstacle has been detected within the distance threshold (Lth), then in step S321, the information processing device 100 compares the speed (v) of the robot 10 detected in the previous step S302 with a predefined speed threshold (Vth) and determines whether or not the speed (v) of the robot 10 is equal to or greater than the speed threshold (Vth). That is, it determines whether or not the following (determination formula a) is satisfied. v ⁇ Vth (judgment formula a)
  • This process is executed by the control unit 132 of the information processing device 100 shown in FIG. 11.
  • step S322 If the above (decision formula a) is satisfied and it is determined that the speed (v) of the robot 10 is equal to or greater than the speed threshold value (Vth), the process proceeds to step S322. On the other hand, if the above (decision formula a) does not hold, and it is determined that the speed (v) of the robot 10 is not equal to or greater than the speed threshold value (Vth), the process proceeds to step S341.
  • step S322 if it is determined that the above (decision formula a) is satisfied and the speed (v) of the robot 10 is equal to or greater than the speed threshold value (Vth), the process proceeds to step S322.
  • step S322 the information processing device 100 calculates a frequency control parameter for lowering the frequency of the output light of the iToF camera 120. That is, the information processing device 100 calculates a frequency control parameter for lowering the frequency of the light output by the optical transmission unit 122 of the iToF camera 120. This process is also executed by the control unit 132 of the information processing device 100 shown in FIG.
  • step S322 corresponds to the processing in step S203 in the flowchart shown in FIG. 27, which is a flowchart corresponding to the previously described second embodiment. That is, the frequency control parameter is calculated based on a function corresponding to the graph shown in FIG. 28, which was previously described. Specifically, the frequency control parameter (fmod) is calculated according to the following formula (Formula 3).
  • step S322 is performed when it is determined that the speed (v) of the robot 10 is equal to or greater than the speed threshold value (Vth), and a frequency control parameter that reduces the frequency of the output light of the iToF camera 120 below the reference frequency (X (Hz)) is calculated according to the above formula (Formula 3).
  • step S323 the information processing device 100 outputs from the iToF camera 120 output light having a frequency determined based on the frequency control parameter calculated in step S322.
  • This process is performed in the output light generating unit 121 and the light transmitting unit 122 of the iToF camera 120.
  • Step S324 the information processing device 100 executes an object distance calculation process based on the iToF camera detection value, and an iToF point cloud map generation process.
  • This process is executed by the iToF point cloud map generator 126 of the information processing device 100 shown in FIG. 11.
  • the iToF point cloud map generator 126 inputs the received signal from the optical receiver 124 of the iToF camera 120 via the signal processor (low-pass filter) 125, and based on this input value, performs object distance calculation processing and 3D point cloud generation processing to generate an iToF point cloud map.
  • Step S325 the information processing device 100 generates a composite point cloud map.
  • a composite point cloud map is generated by combining the iToF point cloud map generated based on the iToF camera detection values in step S324 and the LiDAR point cloud map generated based on the LiDAR detection values in step S303.
  • This process is executed by the point cloud map synthesis unit 131 of the information processing device 100 shown in FIG. 11.
  • the synthesized point cloud map generated by the point cloud map synthesis unit 131 has the following point cloud areas set, beginning from the side closest to the robot 10: (a) LiDAR point cloud area 191 (b) iToF point cloud & LiDAR point cloud area 192 (c) LiDAR point cloud area 193
  • the robot 10 is able to obtain more accurate object position and distance information from the “(b) iToF point cloud & LiDAR point cloud area 192”.
  • “(b) iToF point cloud & LiDAR point cloud area 192” is a highly important area that is used to determine the driving route of the robot 10.
  • Step S326 a composite point cloud map is generated by combining the point cloud (three-dimensional point cloud) based on the iToF camera detection values and the point cloud (two-dimensional point cloud) based on the LiDAR detection values, for example, a composite point cloud map as shown in Figure 23.Then, the information processing device performs processing in step S326.
  • step S326 the composite point cloud map generated in step S325 is used to control the movement of the robot 10.
  • the robot control unit 201 refers to a composite point cloud map that combines a point cloud (three-dimensional point cloud) based on the iToF camera detection values and a point cloud (two-dimensional point cloud) based on the LiDAR detection values, for example a composite point cloud map as shown in Figure 23, and performs driving control to set a safe driving route that does not collide with or come into contact with objects (obstacles).
  • the point cloud data used by the robot control unit 201 in the process of determining the driving route is mainly the "(b) iToF point cloud & LiDAR point cloud area 192" in the composite point cloud map shown in Figure 23.
  • an iToF point cloud (a three-dimensional point cloud) generated based on the detection values of the iToF camera is also set, making it possible to analyze object positions and distance information with higher accuracy, and to set a safe and reliable driving route.
  • step S327 the information processing device 100 determines whether or not the robot 10 has arrived at the destination, and if the robot 10 has arrived at the destination, ends the map generation process and the traveling process.
  • step S302 If the destination has not been reached, return to step S302 and repeat the process from step S302 onwards.
  • step S341 onwards will be explained with reference to the flow shown in Figure 35 onwards when the determination in the determination step of step S321 is No, i.e. when it is determined that the speed (v) of the moving body, the robot 10, is not equal to or greater than the speed threshold value (Vth).
  • Step S341 If it is determined in step S321 that the speed (v) of the robot 10 is not greater than or equal to the speed threshold (Vth), the information processing device 100 determines in step S341 whether or not a person or an oncoming vehicle has been detected in the direction in which the robot 10 is traveling.
  • This process is executed by the control unit 132 of the information processing device 100 shown in FIG. 11, for example.
  • the control unit 132 performs object shape analysis on the objects detected based on, for example, the LiDAR point cloud map, and determines whether these objects are people or oncoming vehicles.
  • an image captured by an RGB camera may be input to perform object identification processing.
  • step S342 If it is determined that a person or an oncoming vehicle has been detected in the traveling direction of the robot 10, the process proceeds to step S342. On the other hand, if it is determined that no person or oncoming vehicle is detected in the traveling direction of the robot 10, the process proceeds to step S361.
  • Step S342 When it is determined in the determination process of step S341 that a person or an oncoming vehicle has been detected in the traveling direction of the robot 10, the information processing device 100 calculates in step S342 an intensity control parameter for reducing the intensity of the output light of the iToF camera 120. That is, the information processing device 100 calculates an intensity control parameter for reducing the intensity of the light output by the optical transmission unit 122 of the iToF camera 120. This process is executed by the control unit 132 of the information processing device 100 shown in FIG.
  • step S342 corresponds to the process of step S244 in the flowchart shown in FIG. 31, which is a flowchart corresponding to the previously described fourth embodiment. That is, the output light intensity control parameter is calculated based on a function corresponding to the graph shown in FIG. 32, which was previously described. Specifically, the output light intensity control parameter (Po) is calculated according to the following formula (Formula 7).
  • step S342 is performed when it is determined that a person or an oncoming vehicle has been detected in the direction of travel of the robot 10, and in accordance with the above formula (Formula 7), an output light intensity control parameter is calculated that reduces the intensity of the output light from the iToF camera 120 below, for example, the reference strong output light intensity (X (Watt)).
  • the intensity of the light output from the iToF camera 120 is reduced in this way to avoid causing a nuisance to people or oncoming vehicles in the direction of the robot 10's movement.
  • step S343 the information processing device 100 calculates an exposure control parameter for lengthening the exposure time of the iToF camera 120.
  • step S343 corresponds to the process of step S223 in the flowchart shown in Fig. 29, which is a flowchart corresponding to the previously described embodiment 3. That is, the exposure time control parameter is calculated based on a function corresponding to the graph shown in Fig. 30. Specifically, the exposure time control parameter (t int ) is calculated according to the following formula (Formula 5).
  • step S343 is performed when it is determined that a person or oncoming vehicle has been detected in the direction of travel of the robot 10, and output light intensity control is executed in step S342 to reduce the intensity of the output light from the iToF camera 120.
  • This processing extends the exposure time to compensate for the reduced sensitivity of the iToF camera to the received light that accompanies the reduced intensity of the output light.
  • step S344 the information processing device 100 outputs from the iToF camera 120 output light having an intensity determined based on the intensity control parameter calculated in step S342.
  • This process is performed in the output light generating unit 121 and the light transmitting unit 122 of the iToF camera 120.
  • step S345 the information processing device 100 sets the exposure time determined based on the exposure time control parameter calculated in step S343 as the exposure time of the light receiving unit 124 of the iToF camera 120. This process is executed by the exposure time control unit 123 and the optical receiving unit 124 of the iToF camera 120.
  • Step S346 the information processing device 100 executes an object distance calculation process based on the iToF camera detection value, and an iToF point cloud map generation process.
  • This process is executed by the iToF point cloud map generator 126 of the information processing device 100 shown in FIG. 11.
  • the iToF point cloud map generator 126 inputs the received signal from the optical receiver 124 of the iToF camera 120 via the signal processor (low-pass filter) 125, and based on this input value, performs object distance calculation processing and 3D point cloud generation processing to generate an iToF point cloud map.
  • step S347 the information processing device 100 generates a composite point cloud map.
  • a composite point cloud map is generated by combining the iToF point cloud map generated based on the iToF camera detection values in step S346 and the LiDAR point cloud map generated based on the LiDAR detection values in step S303.
  • This process is executed by the point cloud map synthesis unit 131 of the information processing device 100 shown in FIG. 11.
  • the synthesized point cloud map generated by the point cloud map synthesis unit 131 has the following point cloud areas set, starting from the side closest to the robot 10: (a) LiDAR point cloud area 191 (b) iToF point cloud & LiDAR point cloud area 192 (c) LiDAR point cloud area 193
  • the robot 10 is able to obtain more accurate object position and distance information from the “(b) iToF point cloud & LiDAR point cloud area 192”.
  • “(b) iToF point cloud & LiDAR point cloud area 192” is a highly important area that is used to determine the driving route of the robot 10.
  • step S347 a composite point cloud map is generated by combining a point cloud (three-dimensional point cloud) based on the iToF camera detection values and a point cloud (two-dimensional point cloud) based on the LiDAR detection values, for example, a composite point cloud map as shown in Figure 23.Then, the information processing device performs processing of step S348.
  • step S348 the composite point cloud map generated in step S347 is used to control the movement of the robot 10.
  • the robot control unit 201 refers to a composite point cloud map that combines a point cloud (three-dimensional point cloud) based on the iToF camera detection values and a point cloud (two-dimensional point cloud) based on the LiDAR detection values, for example a composite point cloud map as shown in Figure 23, and performs driving control to set a safe driving route that does not collide with or come into contact with objects (obstacles).
  • the point cloud data used by the robot control unit 201 in the process of determining the driving route is mainly the "(b) iToF point cloud & LiDAR point cloud area 192" in the composite point cloud map shown in Figure 23.
  • an iToF point cloud (a three-dimensional point cloud) generated based on the detection values of the iToF camera is also set, making it possible to analyze object positions and distance information with higher accuracy, and to set a safe and reliable driving route.
  • step S349 the information processing device 100 determines whether or not the robot 10 has arrived at the destination, and if it has arrived at the destination, ends the map generation process and the traveling process.
  • step S302 If the destination has not been reached, return to step S302 and repeat the process from step S302 onwards.
  • step S361 onwards will be described with reference to the flow shown in Figure 36 when the determination in step S341 is No, i.e., when no person or oncoming vehicle is detected in the direction of travel of the moving robot 10.
  • Step S361 If the determination in step S341 is No, that is, if no person or oncoming vehicle is detected in the traveling direction of the robot 10, which is a moving body, the information processing device 100 executes the processes from step S361 onwards.
  • step S361 the information processing device 100 calculates an intensity control parameter for increasing the intensity of the output light of the iToF camera 120. That is, the information processing device 100 calculates an intensity control parameter for increasing the intensity of the light output by the optical transmission unit 122 of the iToF camera 120. This process is executed by the control unit 132 of the information processing device 100 shown in FIG.
  • step S361 corresponds to the processing in step S243 in the flowchart shown in FIG. 31, which is a flowchart corresponding to the previously described fourth embodiment. That is, the output light intensity control parameter is calculated based on a function corresponding to the graph shown in FIG. 32, which was previously described. Specifically, the output light intensity control parameter (Po) is calculated according to the following formula (Formula 7).
  • step S361 is performed when it is determined that no person or oncoming vehicle has been detected in the direction of travel of the robot 10, and in accordance with the above formula (Formula 7), an output light intensity control parameter is calculated that increases the intensity of the output light from the iToF camera 120 above, for example, the reference strong output light intensity (X (Watt)).
  • this process is designed to enable the distance to more distant objects to be calculated with high accuracy.
  • Step S362 the information processing device 100 calculates an exposure control parameter for shortening the exposure time of the iToF camera 120.
  • step S362 corresponds to the process of step S224 in the flowchart shown in Fig. 29, which is a flowchart corresponding to the previously described embodiment 3. That is, the exposure time control parameter is calculated based on a function corresponding to the graph shown in Fig. 30. Specifically, the exposure time control parameter (t int ) is calculated according to the following formula (Formula 5).
  • step S362 is performed when output light intensity control is executed in step S361 to increase the intensity of the output light from the iToF camera 120, based on the determination that no person or oncoming vehicle has been detected in the direction of travel of the robot 10. As the intensity of the output light increases, processing is performed to shorten the exposure time to prevent the intensity of the light received by the iToF camera from increasing excessively.
  • step S363 the information processing device 100 outputs, from the iToF camera 120, output light having an intensity determined based on the intensity control parameter calculated in step S361.
  • This process is performed in the output light generating unit 121 and the light transmitting unit 122 of the iToF camera 120.
  • step S364 the information processing device 100 sets the exposure time determined based on the exposure time control parameter calculated in step S362 as the exposure time of the light receiving unit 124 of the iToF camera 120. This process is executed by the exposure time control unit 123 and the optical receiving unit 124 of the iToF camera 120.
  • Step S365 the information processing device 100 executes an object distance calculation process based on the iToF camera detection value, and an iToF point cloud map generation process.
  • This process is executed by the iToF point cloud map generator 126 of the information processing device 100 shown in FIG. 11.
  • the iToF point cloud map generator 126 inputs the received signal from the optical receiver 124 of the iToF camera 120 via the signal processor (low-pass filter) 125, and based on this input value, performs object distance calculation processing and 3D point cloud generation processing to generate an iToF point cloud map.
  • Step S366 the information processing device 100 generates a composite point cloud map.
  • a composite point cloud map is generated by combining the iToF point cloud map generated based on the iToF camera detection values in step S365 and the LiDAR point cloud map generated based on the LiDAR detection values in step S303.
  • This process is executed by the point cloud map synthesis unit 131 of the information processing device 100 shown in FIG. 11.
  • the synthesized point cloud map generated by the point cloud map synthesis unit 131 has the following point cloud areas set, beginning from the side closest to the robot 10: (a) LiDAR point cloud area 191 (b) iToF point cloud & LiDAR point cloud area 192 (c) LiDAR point cloud area 193
  • the robot 10 is able to obtain more accurate object position and distance information from the “(b) iToF point cloud & LiDAR point cloud area 192”.
  • “(b) iToF point cloud & LiDAR point cloud area 192” is a highly important area that is used to determine the driving route of the robot 10.
  • Step S367 a composite point cloud map is generated by combining a point cloud (three-dimensional point cloud) based on the iToF camera detection values and a point cloud (two-dimensional point cloud) based on the LiDAR detection values, for example, a composite point cloud map as shown in Figure 23.Then, the information processing device performs processing in step S367.
  • step S367 the composite point cloud map generated in step S366 is used to control the movement of the robot 10.
  • the robot control unit 201 refers to a composite point cloud map that combines a point cloud (three-dimensional point cloud) based on the iToF camera detection values and a point cloud (two-dimensional point cloud) based on the LiDAR detection values, for example a composite point cloud map as shown in Figure 23, and performs driving control to set a safe driving route that does not collide with or come into contact with objects (obstacles).
  • the point cloud data used by the robot control unit 201 in the process of determining the driving route is mainly the "(b) iToF point cloud & LiDAR point cloud area 192" in the composite point cloud map shown in Figure 23.
  • an iToF point cloud (a three-dimensional point cloud) generated based on the detection values of the iToF camera is also set, making it possible to analyze object positions and distance information with higher accuracy, and to set a safe and reliable driving route.
  • Step S368 the information processing device 100 determines whether the robot 10 has arrived at the destination, and if it has arrived at the destination, ends the map generation process and the traveling process.
  • step S302 If the destination has not been reached, return to step S302 and repeat the process from step S302 onwards.
  • Example 1 Calculation process of iToF point cloud cut area control parameters and processing based on the calculated parameters
  • Example 2 Calculation process of iToF camera output light frequency control parameters and processing based on the calculated parameters
  • Example 3 Calculation process of iToF camera exposure time control parameters and processing based on the calculated parameters
  • Example 4 Calculation process of iToF camera output light intensity control parameters and processing based on the calculated parameters
  • This processing makes it possible to perform optimal iToF camera control and point cloud map generation processing according to the robot's speed and the presence or absence of people or oncoming vehicles within a specified distance in the robot's direction of travel, thereby enabling optimal object distance calculation processing to be performed according to the situation.
  • Example of hardware configuration of information processing device Next, a hardware configuration example of the information processing device 100 of the present disclosure will be described with reference to FIG.
  • the hardware configuration shown in FIG. 37 shows an example of a hardware configuration applicable to the information processing device 100 of the present disclosure. Each component of the hardware shown in FIG. 37 will be described.
  • CPU (Central Processing Unit) 301 functions as a data processing unit such as a control unit that executes various processes according to programs stored in ROM (Read Only Memory) 302 or storage unit 308. For example, it executes processes according to the sequences described in the above-mentioned embodiments.
  • RAM (Random Access Memory) 303 stores programs and data executed by CPU 301.
  • CPU 301, ROM 302, and RAM 303 are interconnected by bus 304.
  • the CPU 301 is connected to an input/output interface 305 via a bus 304, and the input/output interface 305 is connected to an input unit 306 including various switches, a touch panel, a microphone, etc., and an output unit 307 including a display, a speaker, etc.
  • various sensors 321 such as an iToF camera, LiDAR, and RGB camera are connected to the input unit 306 and output unit 307, and optical output processing is performed via the output unit 307, and detection values of the sensor 321 are input via the input unit 306.
  • the storage unit 308 connected to the input/output interface 305 is, for example, a hard disk, and stores the programs executed by the CPU 301 and various data.
  • the communication unit 309 functions as a transmitter/receiver for data communication via a network such as the Internet or a local area network, and communicates with external devices.
  • the drive 310 connected to the input/output interface 305 drives removable media 311, such as a magnetic disk, optical disk, magneto-optical disk, or semiconductor memory such as a memory card, and records or reads data.
  • removable media 311 such as a magnetic disk, optical disk, magneto-optical disk, or semiconductor memory such as a memory card
  • a sensor attached to a moving object the sensor outputting light of a predetermined frequency from an optical transmitter and inputting reflected light from an object via an optical receiver; a point cloud map generator that receives the detection values of the sensor and generates a point cloud map indicating object positions;
  • a control unit that controls at least one of the sensor and the point cloud map generation unit, The control unit is An information processing device that performs control to change at least one of the frequency or intensity of the output light of the sensor, the exposure time of the input light of the sensor, or the point cloud cut area in the point cloud map generated by the point cloud map generation unit, depending on the speed of the moving body.
  • control unit The information processing device according to (1), wherein, when the speed of the moving body is equal to or greater than a specified threshold value, control is executed to expand a point cloud cut region in the point cloud map generated by the point cloud map generating unit.
  • control unit The information processing device according to (1) or (2), wherein, when the speed of the moving body is less than a specified threshold, control is executed to reduce or fix a point cloud cut area in the point cloud map generated by the point cloud map generating unit.
  • the point cloud cut region is The information processing device according to any one of (1) to (3), wherein the area is set in a short-distance area close to the moving body, and the driving route based on the object analysis result has been determined in the area.
  • the sensor is an indirect time of flight (iToF) camera
  • the control unit is The information processing device according to any one of (1) to (4), wherein, when the speed of the moving object is equal to or greater than a specified threshold value, control is executed to lower the frequency of the output light of the iToF camera.
  • the sensor is an iToF camera
  • the control unit is An information processing device according to any one of (1) to (5), which, when the speed of the moving object is less than a specified threshold, executes control to increase or fix the frequency of the output light of the iToF camera.
  • the sensor is an iToF camera
  • the control unit is The information processing device according to any one of (1) to (6), wherein, when the speed of the moving object is equal to or greater than a specified threshold value, control is executed to increase the intensity of the output light of the iToF camera.
  • the sensor is an iToF camera
  • the control unit is An information processing device according to any one of (1) to (7), which, when the speed of the moving object is less than a specified threshold, executes control to reduce or fix the intensity of the output light of the iToF camera.
  • the sensor is an iToF camera
  • the control unit is The information processing device according to any one of (1) to (8), wherein, when the speed of the moving object is equal to or greater than a specified threshold value, control is executed to lengthen the exposure time of the input light of the iToF camera.
  • the sensor is an iToF camera
  • the control unit is An information processing device according to any one of (1) to (9), which, when the speed of the moving object is less than a specified threshold, executes control to shorten or fix the exposure time of the input light of the iToF camera.
  • the sensor includes an iToF (indirect time of flight) camera; Including LiDAR (Light Detection and Ranging),
  • the point cloud map generation unit an iToF point cloud map generator that receives the detection values of the iToF camera and generates an iToF point cloud map indicating object positions; a LiDAR point cloud map generator that receives the detected value of the LiDAR and generates a LiDAR point cloud map indicating an object position;
  • the LiDAR is a 2D-LiDAR that performs object detection on a two-dimensional plane
  • the LiDAR point cloud map generator generates a LiDAR point cloud map indicating object positions on a two-dimensional plane
  • the point cloud map synthesis unit is The information processing device described in (11) generates a composite point cloud map by combining an iToF point cloud map indicating an object position in a three-dimensional space and a LiDAR point cloud map indicating an object position on a two-dimensional plane.
  • the control unit A point cloud cut region is set only for the iToF point cloud map generated by the iToF point cloud map generating unit;
  • the point cloud map synthesis unit is An information processing device according to (11) or (12) that generates a composite point cloud map by combining an iToF point cloud map having a point cloud cut region and a LiDAR point cloud map not including a point cloud cut region.
  • the control unit If no person or oncoming vehicle is detected within a specified threshold distance from the moving object, Executing control to increase the intensity of the output light of the sensor; If a person or an oncoming vehicle is detected within a specified threshold distance from the moving object, The information processing device according to any one of (1) to (13), which executes control to reduce the intensity of the output light of the sensor.
  • the control unit When control is executed to increase the intensity of the output light of the sensor,
  • the information processing device according to (14), further comprising: a controller for shortening an exposure time of the input light of the sensor.
  • the control unit When the control for reducing the intensity of the output light of the sensor is executed, The information processing device according to (14) or (15), further comprising a control for lengthening an exposure time of the input light of the sensor.
  • An information processing method executed in an information processing device includes: a sensor attached to a moving object, the sensor outputting light of a predetermined frequency from an optical transmitter and inputting light reflected by an object via an optical receiver; a point cloud map generator that receives the detection values of the sensor and generates a point cloud map indicating object positions; A control unit that controls at least one of the sensor and the point cloud map generation unit, The control unit: An information processing method that performs control to change at least one of the frequency or intensity of the output light of the sensor, the exposure time of the input light of the sensor, or the point cloud cut area in the point cloud map generated by the point cloud map generation unit, depending on the speed of the moving body.
  • a program for causing an information processing device to execute information processing includes: a sensor attached to a moving object, the sensor outputting light of a predetermined frequency from an optical transmitter and inputting light reflected by an object via an optical receiver; a point cloud map generator that receives the detection values of the sensor and generates a point cloud map indicating object positions; A control unit that controls at least one of the sensor and the point cloud map generation unit, The program causes the control unit to A program that executes control to change at least one of the frequency or intensity of the output light of the sensor, the exposure time of the input light of the sensor, or the point cloud cut area in the point cloud map generated by the point cloud map generation unit, in accordance with the speed of the moving body.
  • a program recording the processing sequence can be installed and executed in memory within a computer built into dedicated hardware, or the program can be installed and executed in a general-purpose computer capable of executing various processes.
  • the program can be pre-recorded on a recording medium.
  • the program can be received via a network such as a LAN (Local Area Network) or the Internet, and installed on a recording medium such as an internal hard disk.
  • a system refers to a logical collective configuration of multiple devices, and is not limited to devices in the same housing.
  • the system includes a sensor that is attached to a moving object and outputs light of a predetermined frequency from an optical transmitter and receives reflected light from an object via an optical receiver, a point cloud map generator that receives the sensor detection value and generates a point cloud map showing the object position, and a controller that controls at least one of the sensor and the point cloud map generator.
  • the controller controls to change at least one of the frequency or intensity of the output light of the sensor, the exposure time of the input light of the sensor, and the point cloud cut area in the point cloud map in accordance with the moving object speed.
  • Robot (mobile object) 20 Camera 21 RGB camera 22 iToF camera 30 LiDAR 100 Information processing device 101 Speed sensor 102 Signal processing unit (low-pass filter) 103 2D-LiDAR 104 Signal processing section (low pass filter) 105 LiDAR point cloud map generator 120 iToF camera 121 Output light generator 122 Light transmitter 123 Exposure time controller 124 Light receiver (image sensor) 125 Signal processing section (low pass filter) 126 iToF map generation unit 131 Point cloud map synthesis unit 132 Control unit 141 Object (obstacle) analysis target area 142 Object (obstacle) analysis non-target area 151 Two-dimensional plane 171, 174 Point cloud cut area 172 Point cloud cut distance 173, 175 iToF point cloud generation area 177 iToF point cloud area 178 LiDAR point cloud area 181 LiDAR point cloud area 182 iToF point cloud & LiDAR point cloud area 183 LiDAR point cloud area 191 LiDAR point cloud area 192 iToF point cloud & LiD

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Electromagnetism (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • General Physics & Mathematics (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Optical Radar Systems And Details Thereof (AREA)

Abstract

光出力センサや、センサ検出情報に基づいて生成される点群マップを、移動体の速度に応じて制御して、移動体速度に応じた最適なオブジェクト検出を可能とする。移動体に装着され、光送信部から所定周波数の光を出力してオブジェクトによる反射光を、光受信部を介して入力するセンサと、センサ検出値を入力して、オブジェクト位置を示す点群マップを生成する点群マップ生成部と、センサ、または点群マップ生成部の少なくともいずれかを制御する制御部を有する。制御部はセンサの出力光の周波数、または強度、またはセンサの入力光の露光時間、または、点群マップ中の点群カット領域の少なくともいずれかを移動体速度に応じて変更する制御を行う。

Description

情報処理装置、および情報処理方法、並びにプログラム
 本開示は、情報処理装置、および情報処理方法、並びにプログラムに関する。さらに詳細には、例えばロボットや自動運転車両等の移動体が安全に走行するために障害物検出処理を実行する情報処理装置、および情報処理方法、並びにプログラムに関する。
 昨今、ロボットや自動運転車両等、自律移動型の移動体の開発や利用が盛んに行われている。
 自律移動型移動体は、周囲の障害物などのオブジェクトの位置や距離を解析するセンサを有し、センサ検出情報に基づいて障害物の位置、距離を解析し、障害物への衝突や接触を避けた走行ルートを設定して安全な走行を行う。
 また、センサ検出情報に基づいて作成した地図や、外部から入力される地図情報を利用して移動を行う場合もある。
 障害物等のオブジェクト検出を行うセンサとして、例えば可視光や赤外光、あるいはレーザ光等の光を出力し、オブジェクトからの反射光を解析するToF(Time of Flight)カメラや、LiDAR(Light Detection and Ranging)などが知られている。
 ToFカメラにはいくつか種類があるが、例えば送信光(出力光)と受信光(反射光)の位相差からオブジェクト距離を算出するiToF(indirect ToF)カメラが知られている。
 しかし、このiToFカメラを用いてオブジェクト距離を算出すると、実際には遠い距離のオブジェクトを実際の距離と異なる近い距離にあるオブジェクトと判定してしまう誤検出(エイリアシング)が発生する場合がある。
 iToFカメラは、送信光(出力光)と受信光(反射光)の位相差に応じて距離を算出する構成であるが、送信光(出力光)と受信光(反射光)の位相差は0~2πの範囲でのみ検出可能である。その結果、検出可能な最大距離(例えば位相差=2π)は、送信光(出力光)の周波数に応じて規定されてしまう。
 例えば、送信光(出力光)と受信光(反射光)の実際の位相差が2πでなく周回遅れの4πや6πであっても、位相差=2πと同様の距離にある近い距離のオブジェクトであると判断する距離算出エラーが発生する可能性がある。
 なお、この誤検出の原理に関する詳細な説明は後述する。
 ToFセンサを用いた場合の検出精度低下を低減する構成を開示した従来技術として、例えば特許文献1(特開2022-046162号公報)や、特許文献2(特表2013-538342号公報)がある。
 特許文献1(特開2022-046162号公報)は、ToFセンサを装着した車両の速度に応じて、ToFセンサの露光時間や発光強度を変更して、検出精度の低下を抑制する構成を開示している。
 しかし、例えば人が歩いている場所や対向車両がいる環境で発光強度を上げると人や対向車両の迷惑となるという問題がある。
 また、特許文献2(特表2013-538342号公報)は、複数の異なる変調周波数を用いて、各周波数において個別に位相差検出を行い、これらを統合することでより精度の高いオブジェクト距離を算出する構成を開示している。
 しかし、この構成はシステム構成や演算処理が複雑化してしまうという問題がある。
特開2022-046162号公報 特表2013-538342号公報
 本開示は、例えば上記問題点に鑑みてなされたものであり、ロボットや車両等の移動体の様々な走行環境に応じた最適な制御により、オブジェクト距離算出を高精度に行うことを可能とした情報処理装置、および情報処理方法、並びにプログラムを提供することを目的とする。
 さらに、本開示の一実施例は、iToFカメラとLiDARを併用することで、オブジェクト距離の算出精度を、さらに高めた情報処理装置、および情報処理方法、並びにプログラムを提供するものである。
 本開示の第1の側面は、
 移動体に装着されたセンサであり、光送信部から所定周波数の光を出力して、オブジェクトによる反射光を、光受信部を介して入力するセンサと、
 前記センサの検出値を入力して、オブジェクト位置を示す点群マップを生成する点群マップ生成部と、
 前記センサ、または前記点群マップ生成部の少なくともいずれかに対する制御を実行する制御部を有し、
 前記制御部は、
 前記センサの出力光の周波数、または強度、または前記センサの入力光の露光時間、または、前記点群マップ生成部が生成する点群マップ中の点群カット領域の少なくともいずれかを、前記移動体の速度に応じて変更する制御を行う情報処理装置にある。
 さらに、本開示の第2の側面は、
 情報処理装置において実行する情報処理方法であり、
 前記情報処理装置は、
 移動体に装着されたセンサであり、光送信部から所定周波数の光を出力して、オブジェクトによる反射光を、光受信部を介して入力するセンサと、
 前記センサの検出値を入力して、オブジェクト位置を示す点群マップを生成する点群マップ生成部と、
 前記センサ、または前記点群マップ生成部の少なくともいずれかに対する制御を実行する制御部を有し、
 前記制御部が、
 前記センサの出力光の周波数、または強度、または前記センサの入力光の露光時間、または、前記点群マップ生成部が生成する点群マップ中の点群カット領域の少なくともいずれかを、前記移動体の速度に応じて変更する制御を行う情報処理方法にある。
 さらに、本開示の第3の側面は、
 情報処理装置において情報処理を実行させるプログラムであり、
 前記情報処理装置は、
 移動体に装着されたセンサであり、光送信部から所定周波数の光を出力して、オブジェクトによる反射光を、光受信部を介して入力するセンサと、
 前記センサの検出値を入力して、オブジェクト位置を示す点群マップを生成する点群マップ生成部と、
 前記センサ、または前記点群マップ生成部の少なくともいずれかに対する制御を実行する制御部を有し、
 前記プログラムは、前記制御部に、
 前記センサの出力光の周波数、または強度、または前記センサの入力光の露光時間、または、前記点群マップ生成部が生成する点群マップ中の点群カット領域の少なくともいずれかを、前記移動体の速度に応じて変更する制御を実行させるプログラムにある。
 なお、本開示のプログラムは、例えば、様々なプログラム・コードを実行可能な情報処理装置やコンピュータ・システムに対して、コンピュータ可読な形式で提供する記憶媒体、通信媒体によって提供可能なプログラムである。このようなプログラムをコンピュータ可読な形式で提供することにより、情報処理装置やコンピュータ・システム上でプログラムに応じた処理が実現される。
 本開示のさらに他の目的、特徴や利点は、後述する本開示の実施例や添付する図面に基づくより詳細な説明によって明らかになるであろう。なお、本明細書においてシステムとは、複数の装置の論理的集合構成であり、各構成の装置が同一筐体内にあるものには限らない。
 本開示の一実施例の構成によれば、光出力センサや、センサ検出情報に基づいて生成される点群マップを、移動体の速度に応じて制御して、移動体速度に応じた最適なオブジェクト検出を可能とした構成が実現される。
具体的には、例えば、移動体に装着され、光送信部から所定周波数の光を出力してオブジェクトによる反射光を、光受信部を介して入力するセンサと、センサ検出値を入力して、オブジェクト位置を示す点群マップを生成する点群マップ生成部と、センサ、または点群マップ生成部の少なくともいずれかを制御する制御部を有する。制御部はセンサの出力光の周波数、または強度、またはセンサの入力光の露光時間、または、点群マップ中の点群カット領域の少なくともいずれかを移動体速度に応じて変更する制御を行う。
 本構成により、光出力センサや、センサ検出情報に基づいて生成される点群マップを、移動体の速度に応じて制御して、移動体速度に応じた最適なオブジェクト検出を可能とした構成が実現される。
 なお、本明細書に記載された効果はあくまで例示であって限定されるものではなく、また付加的な効果があってもよい。
本開示の情報処理装置が装着される移動体であるロボットの構成と、ロボットが走行する走行環境の一例について説明する図である。 iToFカメラによるオブジェクト距離測定例について説明する図である。 オブジェクト距離が小さい(近い)場合と、オブジェクト距離が大きい(遠い)場合の位相差の具体例について説明する図である。 iToFカメラを用いたオブジェクト距離算出処理における問題点について説明する図である。 iToFカメラを用いたオブジェクト距離算出処理における問題点について説明する図である。 iToFカメラを用いたオブジェクト距離算出処理における問題点について説明する図である。 iToFカメラによるオブジェクト距離の誤検出(エイリアシング)の詳細について説明する図である。 iToFカメラの出力光の周波数と計測可能距離との関係について説明する図である。 iToFカメラによるオブジェクト距離の誤検出(エイリアシング)の詳細について説明する図である。 iToFカメラによるオブジェクト距離の誤検出(エイリアシング)の詳細について説明する図である。 本開示の情報処理装置の構成例について説明する図である。 2D-LiDARがオブジェクト距離検出処理を実行する2次元平面の例について説明する図である。 2D-LiDARによるオブジェクト距離検出処理の一例について説明する図である。 LiDAR点群マップ生成部が生成する点群マップの一例について説明する図である。 点群カット領域について説明する図である。 iToF点群マップ生成部が生成する点群マップ(3次元点群マップ)の一例について説明する図である。 点群マップ合成部が生成する合成点群マップの一例について説明する図である。 情報処理装置が実行するiToF点群カット領域制御パラメータの算出処理と、算出パラメータに基づく処理について説明するフローチャートを示す図である。 ロボット(移動体)の速度と、点群カット領域の拡大と縮小処理との対応関係を説明するグラフを示す図である。 点群カット領域の拡大処理、および縮小処理の具体例について説明する図である。 点群マップ合成部が実行する合成点群マップ生成処理の具体例について説明する図である。 点群マップ合成部が実行する合成点群マップ生成処理の具体例について説明する図である。 点群マップ合成部が実行する合成点群マップ生成処理の具体例について説明する図である。 点群カット領域制御パラメータ(Dmin)の算出関数を示すグラフについて説明する図である。 ヒステリシスを設定した制御の具体例について説明する図である。 点群カット処理をiToF点群マップ生成後に実行する処理シーケンスの例について説明する図である。 情報処理装置が実行するiToFカメラ出力光周波数制御パラメータの算出処理と、算出パラメータに基づく処理について説明するフローチャートを示す図である。 ロボット(移動体)の速度と、iToFカメラの出力光の周波数(Hz)との対応関係を示すグラフについて説明する図である。 情報処理装置が実行するiToFカメラ露光時間制御パラメータの算出処理と、算出パラメータに基づく処理について説明するフローチャートを示す図である。 ロボット(移動体)の速度と、iToFカメラの露光時間(μsec)との対応関係を示すグラフについて説明する図である。 情報処理装置が実行するiToFカメラ出力光強度制御パラメータの算出処理と、算出パラメータに基づく処理について説明するフローチャートを示す図である。 ロボット(移動体)の速度と、iToFカメラの出力光の強度(Watt)との対応関係を示すグラフについて説明する図である。 情報処理装置が実行する処理について説明するフローチャートを示す図である。 情報処理装置が実行する処理について説明するフローチャートを示す図である。 情報処理装置が実行する処理について説明するフローチャートを示す図である。 情報処理装置が実行する処理について説明するフローチャートを示す図である。 本開示の情報処理装置のハードウェア構成例について説明する図である。
 以下、図面を参照しながら本開示の情報処理装置、および情報処理方法、並びにプログラムの詳細について説明する。なお、説明は以下の項目に従って行なう。
 1.移動体の構成とiToFカメラの原理と問題点について
 2.本開示の情報処理装置の構成例について
 3.情報処理装置が実行する処理の実施例について
 3-1.(実施例1)iToF点群カット領域制御パラメータの算出処理と、算出パラメータに基づく処理について
 3-1-1.(実施例1の変形例1)点群カット領域の設定態様を変更した変形例
 3-1-2.(実施例1の変形例2)点群カット処理をiToF点群マップ生成後に実行する変形例
 3-2.(実施例2)iToFカメラ出力光周波数制御パラメータの算出処理と、算出パラメータに基づく処理について
 3-3.(実施例3)iToFカメラ露光時間制御パラメータの算出処理と、算出パラメータに基づく処理について
 3-4.(実施例4)iToFカメラ出力光強度制御パラメータの算出処理と、算出パラメータに基づく処理について
 4.(実施例5)上記実施例1~4の各処理をシーケンシャルに実行する実施例について
 5.情報処理装置のハードウェア構成例について
 6.本開示の構成のまとめ
  [1.移動体の構成とiToFカメラの原理と問題点について]
 まず、移動体の構成とiToFカメラの原理と問題点について説明する。
 本開示の情報処理装置は、ロボットや車両等の移動体に装着され、ToFカメラを用いてオブジェクト距離算出を行う。
 図1には、本開示の情報処理装置が装着される移動体であるロボット10の構成と、ロボット10が走行する走行環境の一例を示している。
 なお、本開示の情報処理装置が装着される移動体は、図1に示すようなロボットに限らず、例えば自動運転車両などの車両型移動体や、ドローン等の飛行型移動体など、様々な移動体とすることが可能である。
 以下では、本開示の情報処理装置を装着する移動体として自律走行型のロボット10を用いた実施例について説明する。
 図1に示すように、ロボット10は、カメラ20、LiDAR30を備えている。
 カメラ20は、例えばRGBカメラ21とiToFカメラ(デプスカメラ)22とによって構成される。
 なお、iToFカメラ22は、送信光(出力光)と受信光(反射光)の位相差を解析し、位相差からオブジェクト距離を算出するiToF(indirect Time of Flight)カメラである。
 また、LiDAR30は、レーザ光を出力し、レーザ光のオブジェクトからの反射光を解析することで障害物までの距離を計測するセンサとしてのLiDAR(Light Detection and Ranging)である。
 図1には(A)走行環境の一例を示している。ロボットは、ある建物内の通路を走行している。ロボット10の進行方向である前方には人が歩いており、また、電子機器が置かれている。
 ロボット10にとって、これらの人や電子機器は障害物に相当するオブジェクトであり、ロボット10がこれらのオブジェクト(障害物)に衝突や接触を発生させることなく走行するためには、これらのオブジェクト(障害物)の距離や位置を正確に把握することが必要となる。
 オブジェクト(障害物)の距離や位置を正確に把握するためのセンサとして、iToFカメラ22や、LiDAR30が用いられる。
 iToFカメラ22や、LiDAR30は、例えば可視光や赤外光、あるいはレーザ光等の光を出力し、障害物等のオブジェクトからの反射光を受光して解析する。
 iToFカメラ22は、送信光(出力光)と受信光(反射光)の位相差を解析し、位相差からオブジェクト距離を算出する。
 図2を参照して、iToFカメラ22によるオブジェクト距離算出処理の具体例について説明する。
 図2(a)は、iToFカメラ22によるオブジェクト距離測定例を示す図である。
 ロボット10の前面にあるiToFカメラ22からの送信光(出力光)がオブジェクト(障害物)に照射されると、オブジェクト(障害物)から反射された光が受信光(反射光)としてiToFカメラ22に入力する。
 図2(b)は、図2(a)に示すiToFカメラ22の送信光(出力光)の位相と、オブジェクトからの反射光である受信光の位相差に基づく距離(デプス)測定原理を説明する図である。
 図のグラフの横軸が時間(t)であり、縦軸が振幅を示している。実線が送信光(出力光)の振幅変化を示し、点線が受信光(反射波)の振幅変化を示している。
 実線で示す送信光(出力光)の振幅変化は、iToFカメラ22の光出力部(光送信部)で検出される振幅変化である。点線で示す受信光(反射波)の振幅変化は、iToFカメラ22の光入力部(光受信部)で検出される振幅変化である。
 光を反射するオブジェクト距離が大きい(遠い)ほど、送信光(出力光)と受信光(反射光)とのずれが大きくなる。
 送信光(出力光)と受信光(反射光)とのずれは、図2(b)のグラフに示すように、送信光(出力光)と受信光(反射光)との位相差として検出することができる。
 位相差は、オブジェクト距離が大きい(遠い)ほど大きくなる。
 図3に、オブジェクト距離が小さい(近い)場合と、オブジェクト距離が大きい(遠い)場合の位相差の具体例を示すグラフを示す。
 図3(a)に示すグラフは、オブジェクト距離が小さい(近い)場合の送信光(出力光)の振幅変化(実線)と、受信光(反射光)の振幅変化(点線)を示している。
 図3(b)は、オブジェクト距離が大きい(遠い)場合の送信光(出力光)の振幅変化(実線)と、受信光(反射光)の振幅変化(点線)を示している。
 図3(a),(b)に示す送信光と受信光のずれ量に相当する位相差を比較すると、(a)に示す近いオブジェクトの場合の位相差より、(b)に示す遠いオブジェクトの場合の位相差が大きくなっている。
 これは、オブジェクトが遠いほど、受信光の受信時間が遅れるためである。すなわち、オブジェクト距離が大きい(遠い)ほど、位相差が大きくなる。
 iToFカメラは、この原理を利用して、送信光(出力光)と受信光(反射光)の位相差に基づくオブジェクト距離算出可能とした距離センサである。
 しかし、iToFカメラを用いてオブジェクト距離を算出すると、実際には遠い距離のオブジェクトを実際の距離と異なる近い距離にあるオブジェクトであると判定する誤検出(エイリアシング)が発生する場合がある。
 図4以下を参照してこの問題点について説明する。
 前述したように、iToFカメラは、送信光(出力光)と受信光(反射光)の位相差に応じて距離を算出する構成である。
 送信光(出力光)と受信光(反射光)の位相差は0~2πの範囲でのみ検出可能となる。すなわち、検出可能な最大距離(例えば位相差=2π)は、送信光(出力光)の周波数に応じて規定されてしまう。
 図4には、以下の2つの図を示している。
 (a)オブジェクト距離が小さい(近い)場合の送信光(出力光)と受信光(反射光)の位相差の例
 (b)オブジェクト距離が大きい(遠い)場合の送信光(出力光)と受信光(反射光)の位相差の例
 図4(a)の例は、オブジェクト距離が小さい(近い)場合の送信光(出力光)と受信光(反射光)の位相差の例であり、位相差がほぼ0に近い値となる。
 一方、図4(b)の例は、オブジェクト距離が大きい(遠い)場合の送信光(出力光)と受信光(反射光)の位相差の例であり、位相差がほぼ2πに近い値となる。
 このように、送信光(出力光)と受信光(反射光)の位相差は0~2πの範囲でのみ検出可能であり、検出可能な最大距離(例えば位相差=2π)は、送信光(出力光)の周波数に応じて規定されてしまう。
 例えば、送信光(出力光)と受信光(反射光)の実際の位相差が2πでなく周回遅れの4πや6πであっても、位相差=2πと同様の距離にあると判定し、4πや6πの位相差を持つ反射波を生成した遠い距離のオブジェクトを位相差=2πに対応する近い距離にあるオブジェクトであると誤判定する可能性がある。
 具体例について図5以下を参照して説明する。
 図5には、先に図1(A)を参照して説明した走行環境例と同様の走行環境をロボット10が走行した場合に、ロボット10のRGBカメラ21で撮影された「(a)RGB画像」と、iToFカメラ22を用いて解析された送信光(出力光)と受信光(反射光)の位相差に基づく「(b)距離画像(デプス画像)」の例を示している。
 なお、図5(b)に示す距離画像は、オブジェクト距離の誤検出によって生成された誤った距離画像の模式的な画像例である。
 ここで利用するiToFカメラは、計測可能なオブジェクト距離=0~1.5mのカメラであるとする。すなわち、iToFカメラの送信光(出力光)と受信光(反射光)の最大位相差=2πとなる場合のオブジェクト距離が1.5mである設定のiToFカメラを利用した例である。
 このようなiToFカメラを利用すると、最大計測可能距離=1.5mより遠いオブジェクトについて、正しい距離検出を行うことができなくなる。
 図5に示す例では、人(オブジェクト)や電子機器(オブジェクト)、これらのオブジェクトは、ロボット10が装着したiToFカメラ22から5.5mの距離にある。
 最大計測可能距離=1.5mのiToFカメラでは、これら距離5.5mのオブジェクトについて、例えば、算出距離が1.0m等、誤って距離算出が実行される。
 図5(b)に示す「(b)距離画像(デプス画像)」は、最大計測可能距離=1.5mのiToFカメラを用いて解析された送信光(出力光)と受信光(反射光)の位相差に応じて画素値(輝度値)を設定した画像である。
 送信光(出力光)と受信光(反射光)の位相差が大きいほど低輝度(黒に近い)とし、位相差が小さいほど高輝度(白に近い)設定とした輝度画像である。
 例えば位相差=2πの画素は黒に設定され、オブジェクト距離=1.5mを示す。また、位相差=0の画素は白に設定され、オブジェクト距離=0mを示す。
 なお、前述したように、図5(b)に示す「(b)距離画像(デプス画像)」は、距離画像(デプス画像)の一例であり、各画素に位相差に応じた輝度値を設定した画像であるが、例えば、各画素に対して位相差に応じた色を設定したカラー画像としてもよい。例えば、位相差が大きい(=距離が遠い)ほど赤に近く、位相差が小さい(=距離が近い)ほど青に近い色を設定した距離画像(デプス画像)などが可能である。
 図5(b)に示す距離画像は、計測可能なオブジェクト距離=0~1.5mのiToFカメラを用いて生成した距離画像であり、オブジェクト距離が1.5m以上のオブジェクトについては、誤った画素値(輝度値)が設定される。
 前述したように、人(オブジェクト)や電子機器(オブジェクト)は、ロボット10が装着したiToFカメラ22から5.5mの距離にあり、iToFカメラの計測可能なオブジェクト距離=0~1.5mを超えており、図5(b)に示す距離画像中の人や、電子機器等のオブジェクトについては正確な距離算出を行うことができない。その結果、距離画像の画素値(輝度値)は、誤った距離を示す画素値に設定される。
 すなわち、人や電子機器オブジェクトについては、iToFカメラ22の送信光(出力光)と受信光(反射光)の位相差に基づく誤った距離値が算出されるため、その誤った距離値に応じた画素値(輝度値)が設定されてしまう。
 図6を参照してこのような誤検出が発生する理由について説明する。
 図6には、計測可能なオブジェクト距離=0~1.5mのiToFカメラを利用したオブジェクト距離算出処理例として、以下の2つの例の送信光(出力光)と受信光(反射光)の振幅波形と位相差の具体例を示している。
 (a)正確な距離算出が実行される例(オブジェクト距離=1.0m)
 (b)誤った距離算出が実行される例(オブジェクト距離=5.5m)
 図6(a)に示す例は、オブジェクト距離=1.0mのオブジェクトからの受信光(反射光)に基づく位相差解析結果であり、iToFカメラ22の送信光(出力光)と受信光(反射光)の位相差=αが計測されている。αは0~2πの範囲内の値である。
 iToFカメラの計測可能なオブジェクト距離は、0~1.5mであり、位相差=0の場合はオブジェクト距離=0、位相差=2πであれば、オブジェクト距離=1.5mである。図6(a)の例では、位相差=α(0≦α≦2π)であり、算出距離は、位相差=α(0≦α≦2π)に応じて正しいオブジェクト距離=1mが算出される。
 一方、図6(b)に示す例は、オブジェクト距離=5.5mのオブジェクトからの受信光(反射光)に基づく位相差解析結果である。
 図6(b)の送信光(出力光)と受信光(反射光)の波形から理解されるように、この場合、iToFカメラ22の送信光(出力光)と受信光(反射光)の位相差は、図6(a)に示す例と全く同じ位相差=αが計測されてしまう。αは0~2πの範囲内の値である。
 この結果、オブジェクト距離=5.5mのオブジェクトであっても、図6(a)の例と全く同じ位相差=αに基づく距離算出が行われ、本来のオブジェクト距離=5.5mではなく、誤ったオブジェクト距離=1mが算出されてしまう。
 このように、利用するiToFカメラの計測可能なオブジェクト距離を超える距離のオブジェクトについては、誤った距離が算出されてしまう。
 さらに、図7を参照してiToFカメラによるオブジェクト距離の誤検出(エイリアシング)の詳細について説明する。
 図7に示すグラフは、横軸にiToFカメラの送信光(出力光)の出力時間から受信光(反射光)の受信時間までの経過時間(nsec)を示し、縦軸に送信光(出力光)と受信光(反射光)の位相差に基づいて算出されるオブジェクト距離(m)を示したグラフである。
 なお、iToFカメラの計測可能なオブジェクト距離は0~1.5mであり、位相差=0の場合はオブジェクト距離=0、位相差=2πであれば、オブジェクト距離=1.5mである。
 例えば横軸の経過時間中、経過時間=0~t1の範囲が、このiToFカメラにおいて正確な距離を算出可能な範囲である。
 経過時間=0であれば、オブジェクト距離=0mであり、経過時間=t1であれば、オブジェクト距離=1.5mとなる。
 経過時間=tpの例は、先に図6(a)を参照して説明した例と同様の例であり、オブジェクト距離=1.0mの場合に相当する。
 一方、横軸の経過時間中、経過時間=t1を超える領域は、このiToFカメラ(計測可能オブジェクト距離=0~1.5m)において正確な距離を算出できない領域となる。
 経過時間=t0~t1では、送信光(出力光)と受信光(反射光)の位相差は0~2πの範囲で順次、増加し、その位相差=0~2πに応じた正しいオブジェクト距離=0~1.5mが算出される。
 その後、経過時間=t1~t2でも、送信光(出力光)と受信光(反射光)の位相差は0~2πの範囲で順次、増加する。すなわち2サイクル目の位相差変化=0~2πが発生する。
 従って、経過時間=t1~t2においても、経過時間=t0~t1と同様、位相差=0~2πに応じたオブジェクト距離=0~1.5mが算出されてしまう。この算出距離は、誤った距離である。
 その後、経過時間=t2~t3、経過時間=t3~t4、経過時間=t4~t5でも、3~5サイクル目の位相差変化=0~2πが発生する。
 従って、これらの各サイクルでも、経過時間=t0~t1と同様、位相差=0~2πに応じたオブジェクト距離=0~1.5mが算出されてしまう。この算出距離は、誤った距離である。
 なお、例えば経過時間=t3~t4内の経過時間=tqは、先に図6(b)を参照して説明したオブジェクト距離=5.5mのオブジェクトからの反射光の受信までの経過時間に相当する。
 このオブジェクト距離=5.5mのオブジェクトに対する送信光(出力光)と受信光(反射光)の位相差は経過時間=t0~t1内の経過時間=tpと同様の位相差と同一であり、この結果、誤ったオブジェクト距離=1.0mが算出されてしまう。
 このように、利用するiToFカメラは、計測可能なオブジェクト距離を超える距離のオブジェクトについて、算出距離の誤検出(エイリアシング)を発生させるという問題がある。
 なお、iToFカメラの計測可能距離は、iToFカメラの出力光の周波数によって規定される。iToFカメラの計測可能距離を大きくするためには、iToFカメラの出力光の周波数を低く設定する、すなわち周期を大きくすればよい。
 図8を参照して、iToFカメラの出力光の周波数と計測可能距離との関係について説明する。
 図8には、以下の2つの例を示している。
 (a)iToFカメラの送信光の周波数を高く(100MHz)した短周期の送信光の利用例であるショートレンジモード(計測可能距離=1.5m)のiToFカメラの送信光と受信光の例
 (b)iToFカメラの送信光の周波数を低く(20MHz)した長周期の送信光の利用例であるロングレンジモード(計測可能距離=7.5m)のiToFカメラの送信光と受信光の例
 図8(a)のグラフから理解されるように、iToFカメラの送信光の周波数を高く(100MHz)した短周期の送信光の利用例であるショートレンジモードでは、送信光(出力光)と受信光(反射光)の位相差の最大値=2πで計測されるオブジェクト距離は、1.5mとなる。
 これに対して、図8(b)のグラフから理解されるように、iToFカメラの送信光の周波数を低く(20MHz)した長周期の送信光の利用例であるロングレンジモードでは、送信光(出力光)と受信光(反射光)の位相差の最大値=2πで計測されるオブジェクト距離は、7.5mとなる。
 このように、iToFカメラの計測可能距離は、iToFカメラの出力光の周波数、すなわち周期を変化させることで変更することが可能となる。
 図9は、先に説明した図7のグラフに、図8(b)を参照して説明したロングレンジモードのデータ(経過時間と距離との対応データ)を追加した図である。
 図9に示すグラフは、先に説明した図7と同様、横軸にiToFカメラの送信光(出力光)の出力時間から受信光(反射光)の受信時間までの経過時間(nsec)を示し、縦軸に送信光(出力光)と受信光(反射光)の位相差に基づいて算出されるオブジェクト距離(m)を示したグラフである。
 点線で示すグラフが、図8(a)を参照して説明したショートレンジモードのデータ(経過時間と距離との対応データ)である。これは先に図7を参照して説明したグラフと同様のグラフであり、計測可能距離=0~1.5mのショートレンジモードのiToFカメラのグラフである。このショートレンジモードのiToFカメラでは、位相差=0がオブジェクト距離=0、位相差=2πがオブジェクト距離=1.5mに相当する。
 これに対して、実線で示すグラフが、図8(b)を参照して説明したロングレンジモードのデータ(経過時間と距離との対応データ)である。すなわち、計測可能距離=0~7.5mのロングレンジモードのiToFカメラのグラフである。このロングレンジモードのiToFカメラでは、位相差=0がオブジェクト距離=0、位相差=2πがオブジェクト距離=7.5mに相当する。
 例えば、経過時間tqは、先に図7を参照して説明したオブジェクト距離=5.5mのオブジェクトからの反射光の受信までの経過時間tqに相当する。
 計測可能距離=0~1.5mのショートレンジモードのiToFカメラを利用した場合は、先に図7を参照して説明したように、点線グラフ上の点P2で示すように誤ったオブジェクト距離=1.0mが算出されてしまう。
 これに対して、計測可能距離=0~7.5mのロングレンジモードのiToFカメラを利用した場合は、実線グラフ上の点P1で示すように正しいオブジェクト距離=5.5mが算出される。
 図10は、図9を参照して説明したグラフ上に位相差に基づいて算出される距離データに基づく距離画像(デプス画像)の画素値(輝度値)を示した図である。
 計測可能距離=0~1.5mのショートレンジモードのiToFカメラを利用した場合は、点線グラフのサイクルと同様、距離=0~1.5mを示す画素値=白~黒が、繰り返されることになる。
 すなわち、オブジェクト距離=1.5m以下のオブジェクトについては、距離画像(デプス画像)の画素値が正しい距離を示すが、オブジェクト距離=1.5mを超えるオブジェクトについては、距離画像(デプス画像)の画素値は誤った距離を示すことになる。
 一方、計測可能距離=0~7.5mのロングレンジモードのiToFカメラを利用した場合は、実線グラフに対応する距離=0~7.5mを示す画素値=白~黒の変化データが1つになる。
 すなわち、オブジェクト距離=7.5m以下のオブジェクトについては、距離画像(デプス画像)の画素値は、すべて正しい距離を示すことになる。
 このように、iToFカメラの計測可能距離は、iToFカメラの出力光の周波数、すなわち周期を変化させることで変更することが可能となる。
 ただし、計測可能距離を大きくすると、算出される距離の精度が低下するという問題がある。
 従って、高精度な距離算出を行うことが必要な場合は計測可能距離を小さくした設定したカメラを利用することが好ましい。
  [2.本開示の情報処理装置の構成例について]
 次に、本開示の情報処理装置の構成例について説明する。
 前述したように、本開示の情報処理装置は、ロボットや車両等の移動体に装着され、iToFカメラを用いてオブジェクト距離算出を行う装置である。
 図11を参照して、本開示の情報処理装置の構成例について説明する。
 図11に示すように、本開示の情報処理装置100は、速度センサ101、信号処理部(ローパスフィルタ)102、2D-LiDAR203、信号処理部(ローパスフィルタ)104、LiDAR点群マップ生成部105、iToFカメラ120、信号処理部(ローパスフィルタ)125、iToFマップ生成部126、点群マップ合成部131、制御部132を有する。
 なお、iToFカメラ120は、出力光生成部121、光送信部122、露光時間制御部123、光受信部(イメージセンサ)124を有する。
 以下、情報処理装置100の構成要素について、順次、説明する。
 速度センサ101は、情報処理装置100が装着された移動体であるロボット10の移動速度を検出するセンサである。速度センサ101が検出した速度信号は、信号処理部(ローパスフィルタ)102を介して、点群マップ合成部131に入力される。
 なお、信号処理部(ローパスフィルタ)102は、速度センサ101が検出した速度信号からノイズ信号を除去する処理を行う。
 2D-LiDAR103は、レーザ光を出力し、レーザ光のオブジェクトからの反射光を解析することで障害物の位置や距離を計測するセンサとしてのLiDAR(Light Detection and Ranging)である。
 この実施例の情報処理装置100は、2D型のLiDARである2D-LiDAR103を用いている。
 2D-LiDAR103は、2次元平面上でレーザ光を走査して、2次元平面の各方向にあるオブジェクトの反射光を解析して2次元平面上の各方向にあるオブジェクトの距離を算出する。
 2D-LiDAR103がオブジェクト距離を検出する2次元平面の具体例を図12に示す。
 図12には、2D-LiDAR103がオブジェクト距離検出処理を実行する2次元平面151の例を示している。
 図12に示すように、ロボット10の走行方向をz軸方向として、ロボットの右方向をx軸、垂直上方向をy軸としたとき、ロボット走行平面(y=0のxz平面)に平行なy=yaの1つのxz平面が2次元平面151である。
 2次元平面151は、2D-LiDAR103がオブジェクト距離検出処理を実行する2次元平面である。
 例えば、ロボット10が図12の左上に示すような走行環境を走行する場合、2D-LiDAR103がオブジェクト距離検出処理を実行すると、図13に示すように、各オブジェクトのある高さ(y=ya)の2次元平面151に交わるオブジェクトの一部が検出され、その位置や距離の解析が実行される。
 2D-LiDAR103が解析した2次元平面上のオブジェクトの位置や距離を含む情報は、信号処理部(ローパスフィルタ)104を介して、LiDAR点群マップ生成部105に入力される。
 なお、信号処理部(ローパスフィルタ)104は、2D-LiDAR103が解析した2次元平面上のオブジェクトの位置や距離を含む情報からノイズ信号を除去する処理を行う。
 LiDAR点群マップ生成部105は、2D-LiDAR103が解析した2次元平面上のオブジェクトの位置や距離を含む情報を利用して、点群マップを生成する。
 点群マップとは、障害物等のオブジェクトの位置に点群を示した地図である。例えば3次元点群マップは、xyz3次元座標上のオブジェクト位置に点群を示したマップである。2次元点群マップは、2次元平面上のオブジェクト位置に点群を示したマップである。
 図14にLiDAR点群マップ生成部105が生成する点群マップの一例を示す。
 図14に示す点群マップは、ロボット10が図14の左上に示す走行環境を走行した場合に生成される点群マップである。
 すなわち、2D-LiDAR103が、先に図13を参照して説明した2次元平面151上のオブジェクト位置や距離を解析し、LiDAR点群マップ生成部105が、この解析結果を利用して生成した点群マップ(2次元点群マップ)である。
 先に図12、図13を参照して説明したように2D-LiDAR103は、ある高さ(y=ya)の2次元平面151に交わるオブジェクトのみを検出しており、LiDAR点群マップ生成部105が生成する点群マップは、高さ(y=ya)の2次元平面151上のみにオブジェクト対応の点群が設定されたマップとなる。
 LiDAR点群マップ生成部105が生成したLiDAR検出データに基づく点群マップ(LiDAR点群マップ)は、点群マップ合成部131に入力される。
 点群マップ合成部131は、LiDAR点群マップ生成部105が生成したLiDAR検出データに基づく点群マップ(LiDAR点群マップ)と、iToFカメラ120の検出データに基づいてiToF点群マップ生成部125が生成する点群マップ(iToF点群マップ)との合成処理を実行する。
 点群マップ合成部131が実行する処理については後述する。
 次にiToFカメラ120の構成と処理について説明する。
 図11に示すようにiToFカメラ120は、出力光生成部121、光送信部122、露光時間制御部123、光受信部(イメージセンサ)124を有する。
 出力光生成部121は、光送信部122から出力するレーザ光等の出力光のパラメータを設定し、設定パラメータに従った光を生成して光送信部122から出力する。
 なお、出力光生成部121は、制御部132が算出した周波数や強度を有する出力光を生成して光送信部122から出力する。
 なお、制御部132は、ロボット10の移動速度や、点群マップ合成部131が生成した点群マップの解析結果等を利用してiToFカメラ120の制御パラメータや、iToF点群マップ生成部126が生成するiToF点群マップの制御パラメータを算出する処理を実行する。
 制御部132が算出するiToFカメラ制御パラメータは、例えば、iToFカメラ120の光出力部122が出力する出力光の周波数や強度等の出力光制御パラメータや、光(反射光)受信部(イメージセンサ)124の露光時間等のパラメータである。
 また、制御部132が算出する点群マップ制御パラメータは、iToF点群マップ生成部126が生成するiToF点群マップの点群カット領域を規定するパラメータ等である。
 図15を参照して点群カット領域について説明する。
 図15に示すロボット10は、速度(v)で前方(図の上方向)に向かって所定速度(v)で走行しているとする。
 ロボット10は、走行方向にある障害物を検知しながらオブジェクト(障害物)に衝突や接触しない走行ルートを生成しながら走行する。
 しかし、ロボット10による走行方向変更処理や速度変更処理、あるいは停止処理には一定時間が必要であり、その間にもロボット10は走行して前方に進むことになる。
 従って、ロボット10は、ロボット10の直前ではなく、一定距離、先のオブジェクト(障害物)に基づいて走行ルートを決定する処理を行う必要がある。
 具体的には、例えば、図15に示すオブジェクト(障害物)解析対象領域141に存在するオブジェクト(障害物)に基づいて走行ルートを決定する。一方、図15に示すオブジェクト(障害物)解析非対象領域142は、事前にオブジェクト(障害物)の解析が済んだ領域であり、その事前解析結果に従って生成したルートに従って走行が実行されることになる。
 図15に示すオブジェクト(障害物)解析対象領域141は、ロボット10の走行ルートを決定するためのオブジェクト解析が必要な領域であり、iToF点群マップ生成部126が生成するiToF点群マップを利用したオブジェクトの位置や距離の解析が必要となる領域である。すなわち、iToF点群マップ生成部126が生成するiToF点群マップにオブジェクト対応の点群が生成されている必要がある。
 一方、図15に示すオブジェクト(障害物)解析非対象領域142は、すでにオブジェクト解析が完了し、ロボット10の走行ルートがすでに決定済みの領域であり、現時点でのオブジェクト解析は不要な領域である。すなわち、ロボット10の現在位置では、オブジェクト(障害物)解析非対象領域142について、iToF点群マップによる新たなオブジェクト解析が不要となる。
 従って、この領域は、iToF点群マップ生成部126が生成するiToF点群マップにオブジェクト対応の点群を生成する必要がない領域となる。この領域を「点群カット領域」と呼ぶ。
 なお、図15に示すDminは、点群カット領域のロボット10からの最大距離であり、制御部132が算出する点群カット領域制御パラメータに相当する。
 点群カット領域制御パラメータ(Dmin)の詳細や算出処理の具体例については後述する。
 「点群カット領域」のサイズは、ロボット10の走行速度によって異なる。ロボット10の走行速度が速い場合は、より先の遠いオブジェクト(障害物)に基づいて走行ルートの決定処理を行う。一方、ロボット10の走行速度が遅い場合は、ある程度、近い位置のオブジェクト(障害物)に基づいて走行ルートの決定処理を行う。
 従って、「点群カット領域」は、ロボット10の走行速度が速いほどロボット10から遠い距離まで大きく設定することができる。
 このロボット速度に応じた点群カット領域の設定処理の詳細については後述する。
 なお、点群カット領域を設定することで、iToF点群マップ生成部126は、ロボット10に近い点群カット領域の3次元点群を生成する処理が不要となり、処理負荷が低減される。
 結果として情報処理装置100、およびロボット10の処理負荷の低減、バッテリ消費の低減も可能となる。
 図11に戻り、本開示の情報処理装置100の構成についての説明を続ける。
 上述したように、制御部132は、iToFカメラ120の光出力部122が出力する出力光の周波数や強度等の出力光制御パラメータや、光(反射光)受信部(イメージセンサ)124の露光時間等のパラメータ、さらに、iToF点群マップ生成部126が生成するiToF点群マップの点群カット領域を規定するパラメータ等を生成する。
 なお、制御部132が実行するパラメータ算出処理の詳細については後述する。
 iToFカメラ120の出力光生成部121は、制御部132が算出した制御パラメータ(周波数、強度等)に従って、レーザ光等の出力光の周波数や強度を調整し、制御パラメータに従った光を生成して光送信部122から出力する。
 光送信部122から出力される光は、例えば先に図2(b)を参照して説明したような所定周波数の振幅を有する光である。
 光送信部122から出力される光が障害物等のオブジェクトに反射するとその反射光が光(反射光)受信部(イメージセンサ)124に入力する。
 なお、光(反射光)受信部(イメージセンサ)124は、通常のカメラと同様、多数の画素からなるイメージセンサによって構成されており、各画素の受信信号が、信号処理部(ローパスフィルタ)125に出力される。
 信号処理部(ローパスフィルタ)125は、速度センサ101が検出した速度信号からノイズ信号を除去する処理を行い、ノイズ除去された光(反射光)受信部(イメージセンサ)124の受信信号がiToF点群マップ生成部126に入力される。
 iToF点群マップ生成部126は、光(反射光)受信部(イメージセンサ)124の受信信号に基づいてiToF点群マップを生成する。
 iToF点群マップ生成部126は、まず、光(反射光)受信部(イメージセンサ)124の受信信号に基づいて、イメージセンサの各画素が入力した受信光(反射光)と光送信部122が出力した送信光(出力光)との位相差を算出し、算出した位相差に基づいて、各画素に入力した受信光(反射光)を反射したオブジェクトの距離を算出する。
 これらの位相差算出処理やオブジェクト距離算出処理は、例えば先に図2(b)等を参照して説明した処理や、図9、図10を参照して説明した処理に従って実行される。
 iToF点群マップ生成部126は、さらに、光(反射光)受信部(イメージセンサ)124の各画素対応のオブジェクトの位置や距離を示すiToF点群マップ(3次元点群マップ)を生成する。
 点群マップは、前述したように障害物等のオブジェクトの位置に点群を示した地図である。例えば3次元点群マップは、xyz3次元座標上のオブジェクト位置に点群を示したマップである。
 図16にiToF点群マップ生成部126が生成する点群マップ(3次元点群マップ)の一例を示す。
 図16に示す点群マップは、ロボット10が図16の左上に示す走行環境を走行した場合に生成される点群マップである。
 iToF点群マップ生成部126は、光(反射光)受信部(イメージセンサ)124の受信信号に基づいて、イメージセンサの各画素が入力した受信光(反射光)と光送信部122が出力した送信光(出力光)との位相差を算出し、算出した位相差に基づいて各画素対応のオブジェクト距離を算出し、算出距離情報に基づいて、図16に示すようなiToF点群マップ(3次元点群マップ)を生成する。
 図16に示すiToF点群マップ(3次元点群マップ)は、xyz3次元空間座標上にあるオブジェクト(障害物)各々の位置を点群として示した3次元点群マップである。
 iToF点群マップ生成部126が生成したiToFカメラ120の出力データに基づく点群マップ(iToF点群マップ)は、点群マップ合成部131に入力される。
 点群マップ合成部131は、LiDAR点群マップ生成部105が生成したLiDAR検出データに基づく点群マップ(LiDAR点群マップ)と、iToFカメラ120の検出データに基づいてiToF点群マップ生成部125が生成する点群マップ(iToF点群マップ)との合成処理を実行する。
 点群マップ合成部131が生成する合成点群マップの一例を図17に示す。
 図17に示す合成点群マップは、図17の左上に示す走行環境を走行した場合に生成される点群マップである。
 図17に示す合成点群マップは、以下の2種類の点群マップを合成した点群マップである。すなわち、
 (a)図14を参照して説明したLiDAR点群マップ生成部105が生成したLiDAR検出データに基づく2次元平面151上の点群マップ(LiDAR点群マップ(2次元点群マップ))
 (b)図16を参照して説明したiToFカメラ120の検出データに基づいてiToF点群マップ生成部125が生成した点群マップ(iToF点群マップ(3次元点群マップ))
 点群マップ合成部131は、上記2種類の点群マップを合成して図17に示すような合成点群マップを生成する。
 点群マップ合成部131が生成する合成点群マップは、2D-LiDAR103の検出データに基づく点群マップ(LiDAR点群マップ)と、iToFカメラ120の検出データに基づく点群マップ(iToF点群マップ)、これら2種類の異なるセンサの検出データに基づいて生成される点群マップであり、より高精度なオブジェクト距離データが反映された点群マップとなる。
 なお、点群マップ合成部131が生成した合成点群マップは、図11に示すように、ロボット制御部201と、制御部132に入力される。
 ロボット制御部201は、点群マップ合成部131が生成した合成点群マップを参照してロボット10の走行の障害物となるオブジェクトの位置、距離を確認し、障害物に衝突や接触しない安全な走行ルートや走行速度を決定し、決定した走行ルートや走行速度に従ってロボット10を走行させる。
 制御部132は、点群マップ合成部131が生成した合成点群マップと、速度センサ101が検出したロボット10の走行速度情報を入力し、これらの入力情報に基づいてiToFカメラ120の制御パラメータや、iToF点群マップ生成部126が生成するiToF点群マップの制御パラメータを算出する処理を実行する。
 前述したように、制御部132が算出するiToFカメラ制御パラメータは、例えば、iToFカメラ120の光出力部122が出力する出力光の周波数や強度等の出力光制御パラメータや、光(反射光)受信部(イメージセンサ)124の露光時間等のパラメータである。
 制御部132が算出したパラメータはiToFカメラ120に入力される。
 iToFカメラ120は制御部132から入力したパラメータに従って、出力光の制御や露光制御などを実行する。
 また、制御部132が算出する点群マップ制御パラメータは、iToF点群マップ生成部126が生成するiToF点群マップの点群カット領域を規定するパラメータ等である。
 iToF点群マップ生成部126は、制御部132から入力したパラメータに従って、iToF点群マップの点群のカット処理、すなわち削除処理を実行する。
 制御部132の実行するパラメータ算出処理、および算出パラメータに基づく処理については、次の項目で詳細に説明する。
  [3.情報処理装置が実行する処理の実施例について]
 次に、本開示の情報処理装置100が実行する処理の実施例について説明する。
 以下に説明する実施例は、図11に示す情報処理装置100内の制御部132の実行する制御パラメータ算出処理、および算出パラメータに基づく処理である。
 図11に示すように、制御部132は、点群マップ合成部131が生成した合成点群マップと、速度センサ101が検出したロボット10の走行速度情報を入力する。
 制御部132は、これらの入力情報に基づいてiToFカメラ120の制御パラメータや、iToF点群マップ生成部126が生成するiToF点群マップの制御パラメータを算出する。
 制御部132が算出する制御パラメータは、少なくとも以下のいずれかの制御パラメータである。
 (a)iToF点群カット領域制御パラメータ
 (b)iToFカメラ出力光周波数制御パラメータ
 (c)iToFカメラ露光時間制御パラメータ
 (d)iToFカメラ出力光強度制御パラメータ
 制御部132は、上記の制御パラメータ(a)~(d)の少なくともいずれか1つ以上の制御パラメータを算出する。
 制御部132が算出した「(a)iToF点群カット領域制御パラメータ」は、図11に示すiToF点群マップ生成部126に入力され、iToF点群マップ生成部126は、入力されたパラメータに応じてカット領域の点群を含まないiToF点群マップを生成する。
 また、制御部132が算出した以下の制御パラメータ(b)~(d)はiToFカメラ120に入力される。
 (b)iToFカメラ出力光周波数制御パラメータ
 (c)iToFカメラ露光時間制御パラメータ
 (d)iToFカメラ出力光強度制御パラメータ
 iToFカメラ120は制御部132から入力したパラメータに従って出力光の周波数制御、または出力光の強度制御、または露光制御の少なくともいずれかを実行する。
 以下、制御部132が実行する制御パラメータ算出処理と、算出パラメータに基づいて実行される制御処理に関する複数の実施例について順次、説明する。
 以下に示す複数の実施例について、順次、説明する。
 (実施例1)iToF点群カット領域制御パラメータの算出処理と、算出パラメータに基づく処理
 (実施例2)iToFカメラ出力光周波数制御パラメータの算出処理と、算出パラメータに基づく処理
 (実施例3)iToFカメラ露光時間制御パラメータの算出処理と、算出パラメータに基づく処理
 (実施例4)iToFカメラ出力光強度制御パラメータの算出処理と、算出パラメータに基づく処理
  [3-1.(実施例1)iToF点群カット領域制御パラメータの算出処理と、算出パラメータに基づく処理について]
 まず、本開示の情報処理装置100が実行する処理の実施例1として、iToF点群カット領域制御パラメータの算出処理と、算出パラメータに基づく処理について説明する。
 図18に示すフローチャートは、本開示の情報処理装置100が実行するiToF点群カット領域制御パラメータの算出処理と、算出パラメータに基づく処理について説明するフローチャートである。
 なお、以下において説明するフローに従った処理は、本開示の情報処理装置100の内部のメモリに格納されたプログラムに従って、プログラム実行機能を持つCPU等から構成される制御部(データ処理部)の制御の下で実行可能である。
 以下、図18に示すフローの各ステップの処理について、順次、説明する。
  (ステップS101)
 本開示の情報処理装置100は、まず、ステップS101において、ロボット(移動体)10の速度(v)を検出する。
 このロボット(移動体)10の速度検出処理は、図11に示す情報処理装置100の速度センサ101において実行され、検出された速度(v)は、制御部132と、点群マップ合成部131に入力される。
  (ステップS102)
 情報処理装置100は、次に、ステップS102において、検出したロボット10の速度(v)と、予め規定した速度しきい値(Vth)とを比較し、ロボット10の速度(v)が速度しきい値(Vth)以上であるか否かを判定する。すなわち、以下の(判定式a)が成立するか否かを判定する。
 v≧Vth・・・(判定式a)
 この処理は、図11に示す情報処理装置100の制御部132が実行する。
 上記(判定式a)が成立し、ロボット10の速度(v)が速度しきい値(Vth)以上であると判定された場合は、ステップS103に進む。
 一方、上記(判定式a)が成立せず、ロボット10の速度(v)が速度しきい値(Vth)以上でないと判定された場合は、ステップS104に進む。
  (スップS103)
 ステップS102において、上記(判定式a)が成立し、ロボット10の速度(v)が速度しきい値(Vth)以上であると判定された場合は、ステップS103に進む。
 この場合、情報処理装置100は、ステップS103において、iToFカメラ検出値に基づく3次元点群を利用しない近距離領域を拡大する点群カット領域制御パラメータを算出する。
 この処理も、図11に示す情報処理装置100の制御部132が実行する。
 先に図15を参照して説明したように、「点群カット領域」は、図15に示すオブジェクト(障害物)解析非対象領域142に相当し、iToF点群マップ生成部126が生成するiToF点群マップ中、オブジェクト対応の点群が不要となる領域である。
 前述したように、走行中のロボット10は、ロボット10の直前ではなく、一定距離、先のオブジェクト(障害物)に基づいて走行ルートを決定する処理を行う。すなわち、例えば、図15に示すオブジェクト(障害物)解析対象領域141に存在するオブジェクト(障害物)に基づいて走行ルートを決定する。一方、図15に示すオブジェクト(障害物)解析非対象領域142は、事前にオブジェクト(障害物)の解析が済んだ領域であり、その事前解析結果に従って生成したルートに従って走行が実行される。
 図15に示すオブジェクト(障害物)解析非対象領域142は、すでにオブジェクト解析によって走行ルートが決定されている領域であり、新たなオブジェクト解析が不要な領域である。すなわちiToF点群マップによるオブジェクト解析が不要な領域である。従って、この領域は、iToF点群マップ生成部126が生成するiToF点群マップにオブジェクト対応の点群を生成する必要がない領域である。この領域が「点群カット領域」である。
 なお、ロボット10の走行速度が速い場合は、より先の遠いオブジェクト(障害物)に基づいて走行ルート決定処理を行い、ロボット10の走行速度が遅い場合は、ある程度、近い位置のオブジェクト(障害物)に基づいて走行ルート決定処理を行う。
 従って、「点群カット領域」は、ロボット10の走行速度が速いほど遠くまで設定することになる。
 ステップS103の処理は、ロボット10の速度(v)が速度しきい値(Vth)以上であると判定された場合の処理であり、この場合、制御部132は、ステップS103において、iToFカメラ検出値に基づく点群生成を要しない点群カット近距離領域を拡大する点群カット領域制御パラメータを算出する。
  (ステップS104)
 一方、ステップS104は、ステップS102において、上記(判定式a)が成立し、ロボット10の速度(v)が速度しきい値(Vth)以上でないと判定された場合の処理である。
 この場合、情報処理装置100は、ステップS104において、iToFカメラ検出値に基づく3次元点群を利用しない点群カット近距離領域を縮小する点群カット領域制御パラメータを算出する。
  (ステップS105)
 ステップS103、またはステップS104において、iToFカメラ検出値に基づく3次元点群を利用しない近距離領域を拡大、または縮小する点群カット領域制御パラメータを算出する処理が終了すると、ステップS105に進む。
 情報処理装置100は、ステップS105において、点群カット領域制御パラメータに基づいて決定される点群カット領域を除く領域について、iToFカメラ検出値に基づくオブジェクト距離算出処理、および3次元点群生成処理を実行する。
 この処理は、図11に示す情報処理装置100のiToF点群マップ生成部126が実行する処理である。
 iToF点群マップ生成部126は、制御部132から点群カット領域制御パラメータを入力し、入力した点群カット領域制御パラメータに従って、iToFカメラ検出値に基づく3次元点群を生成しない点群カット領域を決定し、決定した点群カット領域を除く領域のみに点群を設定したiToF点群マップを生成する。
 ステップS103~S105の一連の処理の具体例について、図19、図20を参照して説明する。
 図19は、ロボット(移動体)10の速度と、点群カット領域の拡大と縮小処理との対応関係を説明するグラフである。
 グラフの横軸は、ロボット(移動体)10の速度v(m/s)である。縦軸は、「点群カット領域制御パラメータ(Dmin)」であり、具体的には点群カット領域のロボット10からの最大距離(m)を示している。
 図に示すグラフ中の直線は、ロボット(移動体)10の速度(v)に基づいて「点群カット領域制御パラメータ(Dmin)」を算出する関数に相当し、以下の式(式1)によって表わされる。
 Dmin=a×v+b・・・(式1)
 ただし、
 Dmin:点群カット領域制御パラメータであり、点群カット領域のロボット10からの最大距離(m)
 v:ロボットの速度(m/s)
 a:補正係数(速度対応の感度)
 b:オフセット(速度最小値(v=0)における点群カット領域規定値)
 である。
 また、図19のグラフの縦軸に示す「点群カット領域基準距離(Xm)」は、ロボットが、予め規定した「しきい値速度(Vth)」で走行している場合の基準となる点群カット領域制御パラメータであり、ロボットが、予め規定した「しきい値速度(Vth)」で走行している場合に設定される「点群カット領域」のロボット10からの最大距離(=iToFカメラからの距離)である。この基準距離をXmとする。
 図18のフローのステップS103の処理、すなわち、ロボット10の速度(v)が速度しきい値(Vth)以上であると判定された場合の処理は、図19に示すグラフのしきい値Vthの右側の処理となる。
 すなわち、この場合、情報処理装置100は、ステップS103において、iToFカメラ検出値に基づく3次元点群を利用しない近距離領域を拡大する。
 一方、図18のフローのステップS104の処理、すなわち、ロボット10の速度(v)が速度しきい値(Vth)以上でないと判定された場合の処理は、図19に示すグラフのしきい値Vthの左側の処理となる。
 すなわち、この場合、情報処理装置100は、ステップS104において、iToFカメラ検出値に基づく3次元点群を利用しない近距離領域を縮小する。
 図20は、点群カット領域の拡大処理、および縮小処理の具体例を示す図である。
 以下の2つの異なる処理の具体例を示している。
 (a1)ロボット10の速度(v)が速度しきい値(Vth)以上と判定され、ステップS103の処理とステップS105の処理を実行した場合の点群生成領域と点群カット領域の設定例
 (a2)ロボット10の速度(v)が速度しきい値(Vth)未満と判定され、ステップS104の処理とステップS105の処理を実行した場合の点群生成領域と点群カット領域の設定例
 図20(a1)には、ロボット10の速度(v)が速度しきい値(Vth)以上と判定された場合の点群カット領域171と点群カット基準距離(Xm)と、iToF点群生成領域173の例を示している。
 ロボット10の速度(v)が速度しきい値(Vth)以上と判定された場合、点群カット領域171は、点群カット基準距離(Xm)172より遠い位置まで拡大された領域に設定される。
 この場合、iToF点群生成領域173は、点群カット領域171を除く領域となり、ロボット10からより遠い領域に設定される。
 一方、図20(a2)は、ロボット10の速度(v)が速度しきい値(Vth)未満と判定された場合の点群カット領域174と点群カット基準距離(Xm)172と、iToF点群生成領域175の例を示している。
 ロボット10の速度(v)が速度しきい値(Vth)未満と判定された場合、点群カット領域174は、点群カット基準距離(Xm)より近い位置までの縮小領域として設定される。
 この場合、iToF点群生成領域173は、点群カット領域174を除く広い領域となり、ロボット10から中距離~遠い領域の広い領域に点群が生成される。
 このように、ステップS102~S105においては、ロボット10の走行速度(v)が、予め規定された速度しきい値(Vth)以上であるか否かを判定し、ロボット10がしきい値(Vth)以上の速い速度で高速走行している場合は、点群カット領域を拡大して設定し、ロボット10がしきい値(Vth)未満の遅い速度で低速走行している場合は点群カット領域を縮小して設定する。
 このような処理を行うことで、ロボット10の走行速度に応じて変化する制御不可能近距離領域について、無駄な点群生成処理を行う必要がなくなり、処理負荷の低減、バッテリ消費の低減が実現される。
 図18に示すフローに戻り、ステップS106以下の処理について説明する。
 なお、ステップS105において、iToFカメラに基づく点群であるiToF点群マップ生成処理が実行されている間、並行して図11に示す情報処理装置100のLiDAR点群マップ生成部105は、2D-LiDAR103の検出値に基づくLiDAR点群マップを生成している。
 LiDAR点群マップ生成部105が生成する2D-LiDAR103の検出値に基づくLiDAR点群マップは、先に図13を参照して説明したように、各オブジェクトのある高さ(y=ya)の2次元平面に交わるオブジェクトを示す点群データによって構成される。
  (ステップS106)
 情報処理装置100は、ステップS106において、iToFカメラ検出値に基づく3次元点群と、LiDAR検出値に基づく2次元点群を合成した合成点群マップを生成する。
 この処理は、図11に示す情報処理装置100の点群マップ合成部131が実行する処理である。
 図21~図23を参照してこのステップS106の処理の具体例について説明する。
 図21には、
 (b)IToF点群領域と、LiDAR点群領域の形状とサイズの例
 を示している。
 図21左側にiToF点群領域177を示している。iToF点群領域177は、iToFカメラ検出値に基づく点群生成領域である。この領域は3次元領域となる。
 一方、右側に示すのが、LiDAR点群領域であり、LiDAR検出値に基づく点群生成領域である。この領域は2次元領域となる。
 一般的に、iToF点群領域のサイズや最大距離は、LiDAR点群領域のサイズや最大距離より小さくなる。これは、先に説明したように、iToFカメラでは、最大計測可能なオブジェクト距離は、最大の位相差(2π)に対応する距離であり、最大位相差(2π)対応の距離以上の距離のオブジェクトについては正確な距離算出を行うことができないためである。
 これに対して、LiDAR点群領域では、より遠方のオブジェクトについても比較的精度を維持した測定が可能となる。
 従って、情報処理装置100の点群マップ合成部131は、サイズの異なる2つの点群マップを合成して1つの点群マップを生成することになる。
 図22を参照して、点群マップ合成部131が生成する合成点群マップの例について説明する。
 図22には、以下の2つの合成点群マップのマップ領域分布例を示している。
 (c1)ロボット速度(v)がしきい値Vth以上であり、点群カット領域を拡大したiToF点群と、LiDAR点群を合成した合成点群マップのマップ領域分布例(図18のフローのS103→S105→S106の各処理を実行した場合の例)
 (c2)ロボット速度(v)がしきい値Vth未満であり、点群カット領域を縮小したiToF点群と、LiDAR点群を合成した合成点群マップのマップ領域分布例(図18のフローのS104→S105→S106の各処理を実行した場合の例)
 図22(c1)は、ロボット10の走行速度(v)がしきい値Vth以上であり、図18のフローのS103においてiToF点群の近距離のカット領域の拡大処理が実行された場合に生成される合成点群マップのマップ領域分布例を示している。
 なお、図は上部から観察した平面図として示している。
 ロボット10に最も近い領域は、LiDAR点群領域181である。この領域は、図18のフローのS103の処理で拡大されたiToF点群の点群カット領域に相当する。この領域はiToF点群がなく、LiDAR点群(2次元平面点群)のみによって構成される。
 LiDAR点群領域181の先の領域が、iToF点群&LiDAR点群領域182である。この領域は、iToFカメラ検出値に基づくiToF点群(3次元点群)と、LiDAR検出値に基づくLiDAR点群(2次元平面点群)が重複して生成された領域となる。
 iToF点群&LiDAR点群領域182から、さらに遠い領域が、LiDAR点群領域183である。この領域は、iToFカメラ検出値に基づくiToF点群が生成されていない領域であり、この領域も、ロボット10に近い側のLiDAR点群領域181と同様、iToF点群がなく、LiDAR点群(2次元平面点群)のみによって構成される。
 図22の右側に示す(c2)は、ロボット10の走行速度(v)がしきい値Vth未満であり、図18のフローのS104においてiToF点群の近距離の点群カット領域の縮小処理を実行して生成した合成点群マップのマップ領域分布例を示している。
 この例では、ロボット10に最も近い領域は、LiDAR点群領域184が、左側の(c1)に比較して小さくなっている。これは、図18のフローのS104においてiToF点群の近距離のカット領域の縮小処理がなされたためである。この領域は、iToF点群がなく、LiDAR点群(2次元平面点群)のみによって構成される。
 LiDAR点群領域184の先の領域が、iToF点群&LiDAR点群領域185であり、さらに、その先の領域が、LiDAR点群領域186である。
 このように、点群マップ合成部131が生成する合成点群マップは、ロボット10に近い側から、以下の各点群領域が設定された構成となる。
 (a)LiDAR点群領域
 (b)iToF点群&LiDAR点群領域
 (c)LiDAR点群領域
 上記各領域中、ロボット10に最も近い領域である「(a)LiDAR点群領域」は、ロボットの走行速度に応じてサイズが変更され、ロボットの走行速度が速いほど、大きなサイズ、すなわちロボット10からの距離がより遠い位置まで拡大される。
 図23に、点群マップ合成部131が生成する合成点群マップの具体例を示す。
 図23に示す合成点群マップの例は、ロボット10が図23左上に示す走行環境を走行している場合に生成される合成点群マップの一例である。
 図23に示すように、点群マップ合成部131が生成する合成点群マップは、ロボット10に近い側から、以下の各点群領域が設定された構成となる。
 (a)LiDAR点群領域191
 (b)iToF点群&LiDAR点群領域192
 (c)LiDAR点群領域193
 これらの各領域中、「(a)LiDAR点群領域191」と、「(c)LiDAR点群領域193」は、iToF点群は存在せず、LiDAR点群(2次元平面上の点群)のみによって構成される。
 「(b)iToF点群&LiDAR点群領域192」は、LiDAR点群(2次元平面上の2次元点群)に加え、iToFカメラの検出値に基づいて生成されるiToF点群(3次元点群)も設定される領域となる。
 ロボット10は、「(b)iToF点群&LiDAR点群領域192」から、より高精度なオブジェクト位置、距離情報を取得することが可能となる。
 なお、「(b)iToF点群&LiDAR点群領域192」は、ロボット10の走行ルートを決定するために利用される重要性の高い領域である。
 以上、説明したように、情報処理装置100は、図18に示すフローのステップS106において、iToFカメラ検出値に基づく点群(3次元点群)と、LiDAR検出値に基づく点群(2次元点群)を合成した合成点群マップ、例えば図23に示すような合成点群マップを生成する。
 図18に示すフローに戻り、ステップS107以下の処理について説明する。
  (ステップS107)
 ステップS106において、iToFカメラ検出値に基づく点群(3次元点群)と、LiDAR検出値に基づく点群(2次元点群)を合成した合成点群マップ、例えば図23に示すような合成点群マップが生成されると、次に、情報処理装置はステップS107の処理を実行する。
 すなわち、ステップS107において、ステップS106で生成した合成点群マップを利用して、ロボット10の移動制御を実行する。
 この処理は、図11に示すロボット制御部201が実行する処理である。
 ロボット制御部201は、iToFカメラ検出値に基づく点群(3次元点群)と、LiDAR検出値に基づく点群(2次元点群)を合成した合成点群マップ、例えば図23に示すような合成点群マップを参照して、オブジェクト(障害物)に衝突や接触しない安全な走行ルートを設定して走行するための走行制御を行う。
 なお、ロボット制御部201は、走行ルートの決定処理に利用する点群データは、主に、図23に示合成点群マップ中の「(b)iToF点群&LiDAR点群領域192」である。
 前述したように、「(b)iToF点群&LiDAR点群領域192」は、LiDAR点群(2次元点群)に加え、iToFカメラの検出値に基づいて生成されるiToF点群(3次元点群)も設定されており、より高精度なオブジェクト位置、距離情報の解析が可能であり、安全、確実な走行ルートの設定を行うことができる。
  (ステップS108)
 最後に、情報処理装置100は、ステップS108において、ロボット10が目的地に到着したか否かを判定し、目的地に到着した場合は、マップ生成処理や走行処理を完了する。
 目的地に到着していない場合は、ステップS101に戻り、ステップS101以下の処理を繰り返す。
 以上、「(実施例1)iToF点群カット領域制御パラメータの算出処理と、算出パラメータに基づく処理」について説明してきた。
 上述した実施例1の処理は一例であり、処理態様や処理手順を変更した様々な変形例が可能である。
 以下、下記の変形例について説明する。
 (実施例1の変形例1)点群カット領域の設定態様を変更した変形例
 (実施例1の変形例2)点群カット処理をiToF点群マップ生成後に実行する変形例
  [3-1-1.(実施例1の変形例1)点群カット領域の設定態様を変更した変形例]
 まず、実施例1の変形例1として、点群カット領域の設定態様を変更した変形例について説明する。
 上述した実施例1では、点群カット領域制御パラメータ(Dmin)の算出関数は、先に図19を参照して説明したように、以下の式(式1)によって表わされる。
 Dmin=a×v+b・・・(式1)
 ただし、
 Dmin:点群カット領域制御パラメータであり、点群カット領域のロボット10からの最大距離(m)
 v:ロボットの速度(m/s)
 a:補正係数(速度対応の感度)
 b:オフセット(速度最小値(v=0)における点群カット領域規定値)
 である。
 この図19を参照して説明した点群カット領域制御パラメータ(Dmin)の算出式は一例であり、この算出式以外の式を適用することも可能である。
 例えば図24に示すようなグラフに相当する点群カット領域制御パラメータ(Dmin)の算出関数を利用する構成としてもよい。
 図24に示すグラフは、ロボット10の速度(v)が速度しきい値(Vth)以上である場合は、図19に示すグラフと同様の関数となる。すなわち、以下の式(式1)によって表わされる。
 Dmin=a×v+b・・・(式1)
 しかし、ロボット10の速度(v)が速度しきい値(Vth)未満である場合は、図19に示すグラフと異なり、点群カット領域制御パラメータ(Dmin)が固定値、すなわち、
 Dmin=X
 となる。
 すなわち、図24に示す点群カット領域制御パラメータ(Dmin)算出関数は、以下の式(式2)として表すことができる。
 ロボット速度v≧Vthの場合、
 Dmin=a×v+b
 ロボット速度v<Vthの場合、
 Dmin=X
              ・・・(式2)
 上記(式2)で示される点群カット領域制御パラメータ(Dmin)算出関数、すなわち、図24に示す点群カット領域制御パラメータ(Dmin)の算出関数を利用した場合、図18のフローのステップS103の処理、すなわち、ロボット10の速度(v)が速度しきい値(Vth)以上であると判定された場合の処理は、図24に示すグラフのしきい値Vthの右側の処理となる。
 すなわち、この場合、情報処理装置100は、ステップS103において、iToFカメラ検出値に基づく3次元点群を利用しない近距離領域を拡大する。
 一方、図18のフローのステップS104の処理、すなわち、ロボット10の速度(v)が速度しきい値(Vth)以上でないと判定された場合の処理は、図24に示すグラフのしきい値Vthの左側の処理となる。
 すなわち、この場合、情報処理装置100は、ステップS104において、iToFカメラ検出値に基づく3次元点群を利用しない近距離領域を拡大も縮小も行わず固定して、
 Dmin=X(m)
 とする。
 具体的には、点群カット領域のロボット10からの最大距離(m)を基準距離(Xm)に維持する。
 例えば、このような処理を実行する構成としてもよい。
 なお、上記(式2)で示される点群カット領域制御パラメータ(Dmin)算出関数、すなわち、図24に示す点群カット領域制御パラメータ(Dmin)の算出関数を利用した場合、ロボット速度(v)が、しきい値(Vth)の前後で変動した場合、処理が不安定となる恐れがある。
 具体的には、ロボット速度(v)が、しきい値(Vth)の前後で変動を繰り返すと、点群カット領域の設定変更がスムーズに行われなくなる可能性が発生する。
 このような処理の不安定さを解消するため、例えば図25に示すようにヒステリシスを設定した制御を行う構成とすることが好ましい。
 すなわち、図25に示すように、ロボット速度(v)が、しきい値(Vth)未満から、しきい値以上に変化する速度上昇時には、
 Dmin=Xm
 から、
 Dmin=a×v+b
 これら2つの算出式の移行タイミングを遅らせる。すなわち、速度上昇時のしきい値をVthb(ただしVth<Vthb)とする。
 一方、ロボット速度(v)が、しきい値(Vth)以上から、しきい値未満に変化する速度下降時には、
 Dmin=a×v+b
 から、
 Dmin=Xm
 これら2つの算出式の移行タイミングを遅らせる。すなわち、速度下降時のしきい値をVtha(ただしVtha<Vth)とする。
 このように、ヒステリシスを設定して、2つの異なる点群カット領域制御パラメータ(Dmin)算出関数の切り替えを実行する構成とすることで、点群カット領域の設定変更処理をスムーズに行うことが可能となる。
  [3-1-2.(実施例1の変形例2)点群カット処理をiToF点群マップ生成後に実行する変形例]
 次に、上述した実施例1の変形例2として、点群カット処理をiToF点群マップ生成後に実行する変形例について説明する。
 上述した実施例1では、図18に示すフローを参照して説明したように、まず、制御部132がiToF点群カット領域制御パラメータ、すなわち図19に示すグラフを参照して説明したロボット速度(v)によって規定される点群カット領域制御パラメータ(Dmin)を算出する。
 次に、iToF点群マップ生成部126が、点群カット領域制御パラメータ(Dmin)に従って決定される点群カット領域を除く領域に点群を設定したiToF点群マップを生成するという処理シーケンスで処理を行っている。
 すなわち、図11に示す情報処理装置100のiToF点群マップ生成部126は、図18に示すフローのステップS105においてiToF点群マップを生成する際に、制御部132から入力するiToF点群マップ制御パラメータに基づいて決定される点群カット領域を除く領域についてのみ点群を設定したiToF点群マップを生成していた。
 このような処理シーケンスと異なる処理シーケンスとして、例えば点群カット処理をiToF点群マップ生成後に実行する処理シーケンスとしてもよい。
 すなわち、図11に示す情報処理装置100のiToF点群マップ生成部126が、まず、点群生成可能な全領域について点群を設定したiToF点群マップを生成する。
 その後、iToF点群マップ生成部126が、制御部132から点群カット領域制御パラメータ(Dmin)を入力し、入力パラメータに基づいて、点群カット領域内の点群を削除して、点群カット領域の点群をカットしたiToF点群マップを生成する。
 このような処理シーケンスで処理を行ってもよい。
 図26に示すフローチャートは、この処理シーケンスに従った処理手順を説明するフローチャートである。
 以下、図26に示すフローの各ステップの処理について、順次、説明する。
  (ステップS120)
 本開示の情報処理装置100は、まず、ステップS120において、iToFカメラ検出値に基づくオブジェクト距離算出処理、および3次元点群生成処理を実行する。
 この処理は、図11に示す情報処理装置100のiToF点群マップ生成部126が実行する処理である。
 iToF点群マップ生成部126は、ステップS120において、点群生成可能な全領域について点群を設定したiToF点群マップを生成する。
  (ステップS121~S124)
 ステップS121~S124の処理は、先に図18を参照して説明したフローのステップS101~S104の処理と同様の処理である。
 すなわち、まず、ステップS121において、ロボット(移動体)10の速度(v)を検出する。
 次に、ステップS122において、ロボット10の速度(v)が速度しきい値(Vth)以上であるか否かを判定する。
 ロボット10の速度(v)が速度しきい値(Vth)以上である場合は、ステップS123に進み、速度しきい値(Vth)以上でない場合は、ステップS124に進む。
 ステップS123では、iToFカメラ検出値に基づく3次元点群を利用しない近距離領域を拡大する点群カット領域制御パラメータを算出する。
 また、テップS124では、iToFカメラ検出値に基づく3次元点群を利用しない近距離領域を縮小する点群カット領域制御パラメータを算出する。
  (ステップS125)
 ステップS123、またはステップS124において、iToFカメラ検出値に基づく3次元点群を利用しない近距離領域を拡大、または縮小する点群カット領域制御パラメータの算出処理が終了すると、ステップS125に進む。
 情報処理装置100は、ステップS125において、ステップS120で生成したiToF点群マップから、ステップS123、またはステップS124で算出した点群カット領域制御パラメータに基づいて決定される点群カット領域の点群を削除する処理を実行する。
 この処理は、図11に示す情報処理装置100のiToF点群マップ生成部126が実行する処理である。
 iToF点群マップ生成部126は、この処理によって、点群カット領域の点群を含まないiToF点群マップを生成する。
  (ステップS126~S128)
 ステップS126~S128の処理は、先に図18を参照して説明したフローのステップS106~S108の処理と同様の処理である。
 すなわち、ステップS126において、iToFカメラ検出値に基づく3次元点群と、LiDAR検出値に基づく2次元点群を合成した合成点群マップを生成する。
 次にステップS127において、ステップS126で生成した合成点群マップを利用して、ロボット10の移動制御を実行する。
 最後にステップS128において、ロボット10が目的地に到着したか否かを判定し、目的地に到着した場合は、マップ生成処理や走行処理を完了する。
 目的地に到着していない場合は、ステップS121に戻り、ステップS121以下の処理を繰り返す。
 この図26に示すフローに示す処理は、図11に示す情報処理装置100のiToF点群マップ生成部126が、まず、点群設定可能な全領域に点群を設定した従来型のiToF点群マップを生成し、その後点群カット領域の点群を削除するという手順で処理を実行する。
 従って、iToF点群マップ生成部126は、従来と同様、まず点群設定可能な全領域に点群を設定した従来型のiToF点群マップを生成することが可能であり、その後、点群カット領域の点群を削除するという処理を追加すればよく、従来の装置の構成や処理を大きく変更する必要がないというメリットがある。
  [3-2.(実施例2)iToFカメラ出力光周波数制御パラメータの算出処理と、算出パラメータに基づく処理について]
 次に、本開示の情報処理装置100が実行する処理の実施例2として、iToFカメラ出力光周波数制御パラメータの算出処理と、算出パラメータに基づく処理について説明する。
 先に説明したように、iToFカメラは、送信光(出力光)と受信光(反射光)の位相差に応じて距離を算出する。
 送信光(出力光)と受信光(反射光)の位相差は0~2πの範囲でのみ検出可能となる。すなわち、検出可能な最大距離(例えば位相差=2π)は、送信光(出力光)の周波数に応じて規定される。
 すなわち、先に図8や図9を参照して説明したように、iToFカメラの計測可能距離は、iToFカメラの出力光の周波数、すなわち周期を変化させることで変更することが可能となる。ただし、計測可能距離を大きくすると、算出される距離の精度が低下するという問題がある。
 従って、例えば、ロボット10の走行速度が速い場合は、より遠くまで広い範囲の距離算出を可能とするため、出力光の周波数を低くし、一方、ロボット10の走行速度が遅い場合は、出力光の周波数を高くして、高精度な距離算出を優先させるといった制御が可能となる。
 以下のこのような出力光の周波数制御を行う実施例について説明する。
 図27に示すフローチャートは、本開示の情報処理装置100が実行するiToFカメラ出力光周波数制御パラメータの算出処理と、算出パラメータに基づく処理について説明するフローチャートである。
 以下、図27に示すフローの各ステップの処理について、順次、説明する。
  (ステップS201)
 本開示の情報処理装置100は、まず、ステップS201において、ロボット(移動体)10の速度(v)を検出する。
 このロボット(移動体)10の速度検出処理は、図11に示す情報処理装置100の速度センサ101において実行され、検出された速度(v)は、制御部132と、点群マップ合成部131に入力される。
  (ステップS202)
 情報処理装置100は、次に、ステップS202において、検出したロボット10の速度(v)と、予め規定した速度しきい値(Vth)とを比較し、ロボット10の速度(v)が速度しきい値(Vth)以上であるか否かを判定する。すなわち、以下の(判定式a)が成立するか否かを判定する。
 v≧Vth・・・(判定式a)
 この処理は、図11に示す情報処理装置100の制御部132が実行する。
 上記(判定式a)が成立し、ロボット10の速度(v)が速度しきい値(Vth)以上であると判定された場合は、ステップS203に進む。
 一方、上記(判定式a)が成立せず、ロボット10の速度(v)が速度しきい値(Vth)以上でないと判定された場合は、ステップS204に進む。
  (スップS203)
 ステップS202において、上記(判定式a)が成立し、ロボット10の速度(v)が速度しきい値(Vth)以上であると判定された場合は、ステップS203に進む。
 この場合、情報処理装置100は、ステップS203において、iToFカメラ120の出力光の周波数を低下させるための周波数制御パラメータを算出する。すなわち、iToFカメラ120の光送信部122が出力する光の周波数を低下させるための周波数制御パラメータを算出する。
 この処理も、図11に示す情報処理装置100の制御部132が実行する。
  (ステップS204)
 一方、ステップS204は、ステップS202において、上記(判定式a)が成立し、ロボット10の速度(v)が速度しきい値(Vth)以上でないと判定された場合の処理である。
 この場合、情報処理装置100は、ステップS204において、iToFカメラ120の出力光の周波数を上昇させるための周波数制御パラメータを算出する。すなわち、iToFカメラ120の光送信部122が出力する光の周波数を上昇させるための周波数制御パラメータを算出する。
 この処理も、図11に示す情報処理装置100の制御部132が実行する。
  (ステップS205)
 ステップS203、またはステップS204において、iToFカメラ120の出力する光の周波数の低下、または上昇させる周波数制御パラメータを算出する処理が終了すると、ステップS205に進む。
 情報処理装置100は、ステップS205において、ステップS203、またはステップS204で算出した周波数制御パラメータに基づいて決定される周波数を有する出力光をiToFカメラ120から出力する。
 この処理は、iToFカメラ120の出力光生成部121と、光送信部122において実行される。
  (ステップS206)
 次に、情報処理装置100は、ステップS206において、iToFカメラ検出値に基づくオブジェクト距離算出処理、および3次元点群生成処理を実行する。
 この処理は、図11に示す情報処理装置100のiToF点群マップ生成部126が実行する処理である。
 iToF点群マップ生成部126は、iToFカメラ120の光受信部124の受信信号を、信号処理部(ローパスフィルタ)125を介して入力し、この入力値に基づいて、オブジェクト距離算出処理、および3次元点群生成処理を実行して、iToF点群マップを生成する。
 ステップS203~S206の一連の処理の具体例について、図28を参照して説明する。
 図28は、ロボット(移動体)10の速度と、iToFカメラの出力光の周波数(Hz)との対応関係を説明するグラフである。
 グラフの横軸は、ロボット(移動体)10の速度v(m/s)である。縦軸は、「周波数制御パラメータ(fmod)」であり、具体的にはiToFカメラ120から出力する光の周波数(Hz)を示している。
 なお、ロボット(移動体)10の速度v(m/s)がしきい値Vth以下の領域に、実線のグラフ(処理例a)と、点線のグラフ(処理例b)の2つのグラフを示しているが、これらは、先に説明した実施例1の点群カット処理に関する図19に示す処理例と、図24に示す処理例に対応するものであり、2つの異なる処理が可能であることを示している。
 まず、(処理例a)を含む実線のグラフについて説明する。
 図に示すグラフ中の直線(実線)は、ロボット(移動体)10の速度(v)に基づいて「周波数制御パラメータ(fmod)」を算出する関数に相当し、以下の式(式3)によって表わされる。
 fmod=(1/2)c×(1/Dmax)・・・(式3)
 ただし、
 fmod:周波数制御パラメータであり、iToFカメラ120から出力する光の周波数(Hz)
 c:光速(c=3×10(m/s))
 Dmax:目標最大計測距離
  Dmax=p×v+q
   v:ロボットの速度(m/s)
   p:補正係数(速度対応の感度)
   q:オフセット(速度最小値(v=0)における目標最大計測距離)
 である。
 また、図28のグラフの縦軸に示す「iToFカメラの出力光基準周波数(X(Hz))」は、ロボットが、予め規定した「しきい値速度(Vth)」で走行している場合の基準となる周波数制御パラメータであり、ロボットが、予め規定した「しきい値速度(Vth)」で走行している場合に設定される「iToFカメラ120の出力光の周波数」である。この基準周波数をX(Hz)とする。
 図27のフローのステップS203の処理、すなわち、ロボット10の速度(v)が速度しきい値(Vth)以上であると判定された場合の処理は、図28に示すグラフのしきい値Vthの右側の処理となる。
 すなわち、この場合、情報処理装置100は、ステップS203において、iToFカメラ120の出力光の周波数を低下させる。
 一方、図27のフローのステップS204の処理、すなわち、ロボット10の速度(v)が速度しきい値(Vth)以上でないと判定された場合の処理は、図28に示すグラフのしきい値Vthの左側の処理となる。
 すなわち、この場合、情報処理装置100は、ステップS204において、iToFカメラ120の出力光の周波数を上昇させる。
 このように、ステップS202~S206においては、ロボット10の走行速度(v)が、予め規定された速度しきい値(Vth)以上であるか否かを判定し、ロボット10がしきい値(Vth)以上の速い速度で高速走行している場合は、iToFカメラ120の出力光の周波数を低下させ、ロボット10がしきい値(Vth)未満の遅い速度で低速走行している場合は、iToFカメラ120の出力光の周波数を上昇させる。
 このような処理を行うことで、ロボット10の走行速度に応じて、iToF点群マップの生成領域を変化させることができる。
 すなわち、iToF点群マップ生成部126は、ロボット10が高速走行している場合は、より遠い領域まで点群を設定した広い領域のiToF点群マップを生成する。
 一方、ロボット10が低速走行している場合は、近い領域の高精度な点群を設定した狭い領域のiToF点群マップを生成する。
 図28に示すフローに戻り、ステップS207以下の処理について説明する。
 なお、ステップS206において、iToFカメラに基づく点群であるiToF点群マップ生成処理が実行されている間、並行して図11に示す情報処理装置100のLiDAR点群マップ生成部105は、2D-LiDAR103の検出値に基づくLiDAR点群マップを生成している。
 LiDAR点群マップ生成部105が生成する2D-LiDAR103の検出値に基づくLiDAR点群マップは、先に図13を参照して説明したように、各オブジェクトのある高さ(y=ya)の2次元平面に交わるオブジェクトを示す点群データによって構成される。
  (ステップS207)
 情報処理装置100は、ステップS207において、iToFカメラ検出値に基づく3次元点群と、LiDAR検出値に基づく2次元点群を合成した合成点群マップを生成する。
 この処理は、図11に示す情報処理装置100の点群マップ合成部131が実行する処理である。
  (ステップS208)
 ステップS207において、iToFカメラ検出値に基づく点群(3次元点群)と、LiDAR検出値に基づく点群(2次元点群)を合成した合成点群マップ、例えば先の実施例において図23を参照して説明したような合成点群マップが生成されると、次に、情報処理装置はステップS208の処理を実行する。
 すなわち、ステップS208において、ステップS207で生成した合成点群マップを利用して、ロボット10の移動制御を実行する。
 この処理は、図11に示すロボット制御部201が実行する処理である。
 ロボット制御部201は、iToFカメラ検出値に基づく点群(3次元点群)と、LiDAR検出値に基づく点群(2次元点群)を合成した合成点群マップ、例えば図23に示すような合成点群マップを参照して、オブジェクト(障害物)に衝突や接触しない安全な走行ルートを設定して走行するための走行制御を行う。
  (ステップS209)
 最後に、情報処理装置100は、ステップS209において、ロボット10が目的地に到着したか否かを判定し、目的地に到着した場合は、マップ生成処理や走行処理を完了する。
 目的地に到着していない場合は、ステップS201に戻り、ステップS201以下の処理を繰り返す。
 本実施例では、ロボット10がしきい値(Vth)以上の速い速度で高速走行している場合は、iToFカメラ120の出力光の周波数を低下させ、ロボット10がしきい値(Vth)未満の遅い速度で低速走行している場合は、iToFカメラ120の出力光の周波数を上昇させる。
 この結果、ロボット10が高速走行している場合は、より遠い領域まで点群を設定した広い領域のiToF点群マップを生成することが可能となり、一方、ロボット10が低速走行している場合は、近い領域の高精度な点群を設定した狭い領域のiToF点群マップを生成することが可能となる。
 なお、図28のグラフにおいて、ロボット(移動体)10の速度v(m/s)がしきい値Vth以下の領域に示す点線のグラフ(処理例b)は、先の実施例1において説明した点群カット処理の図24に示す処理例(変形例1)と同様、ロボット10の速度(v)が速度しきい値(Vth)未満である場合、周波数制御パラメータ(fmod)を固定値、すなわち、
 fmod=X(Hz)
 とした変形例である。
 すなわち、(処理例b)の周波数制御パラメータ(fmod)算出関数は、以下の式(式4)として表すことができる。
 ロボット速度v≧Vthの場合、
 fmod=(1/2)c×(1/Dmax)
 ロボット速度v<Vthの場合、
 fmod=X
              ・・・(式4)
 上記(式4)で示される周波数制御パラメータ(fmod)算出関数を利用した場合、図27のフローのステップS203の処理、すなわち、ロボット10の速度(v)が速度しきい値(Vth)以上であると判定された場合の処理は、図24に示すグラフのしきい値Vthの右側の処理となる。
 すなわち、この場合、情報処理装置100は、ステップS203において、iToFカメラ120が出力する光の周波数を低下させる。
 一方、図27のフローのステップS204の処理、すなわち、ロボット10の速度(v)が速度しきい値(Vth)以上でないと判定された場合の処理は、図28に示すグラフのしきい値Vthの左側の点線(処理例b)の処理となる。
 すなわち、この場合、情報処理装置100は、ステップS204において、iToFカメラ120が出力する光の周波数を固定して、
 fmod=X(Hz)
 とする。
 例えば、このような処理を実行する構成としてもよい。
 なお、上記(式4)で示される周波数制御パラメータ(fmod)算出関数、すなわち、ロボット10の速度(v)が速度しきい値(Vth)未満で図28に示すグラフの左側の(処理例b)の点線で示す関数、ロボット10の速度(v)が速度しきい値(Vth)以上で図28に示すグラフの右側の実線で示す関数、これら2つの異なる関数を利用した場合、ロボット速度(v)が、しきい値(Vth)の前後で変動した場合、処理が不安定となる恐れがある。
 このような処理の不安定さを解消するため、例えば先に図25を参照して説明したようにヒステリシスを設定した制御を行う構成としてもよい。
 ヒステリシスを設定して、2つの異なる周波数制御パラメータ(fmod)算出関数の切り替えを実行することで、周波数の変更処理をスムーズに行うことが可能となる。
 以上、説明したように「(実施例2)iToFカメラ出力光周波数制御パラメータの算出処理と、算出パラメータに基づく処理」では、
 ロボット10の走行速度に応じて、iToFカメラ120が出力する光の周波数を変更することで、iToF点群マップ生成部126が生成するiToF点群マップの生成領域を変化させることができる。
 すなわち、iToF点群マップ生成部126は、ロボット10が高速走行している場合は、より遠い領域まで点群を設定した広い領域のiToF点群マップを生成し、ロボット10が低速走行している場合は、近い領域の高精度な点群を設定した狭い領域のiToF点群マップを生成することが可能となる。
  [3-3.(実施例3)iToFカメラ露光時間制御パラメータの算出処理と、算出パラメータに基づく処理について]
 次に、iToFカメラ露光時間制御パラメータの算出処理と、算出パラメータに基づく処理について説明する。
 先に説明したように、iToFカメラは、送信光(出力光)と受信光(反射光)の位相差に応じて距離を算出する。
 iToFカメラも通常のカメラと同様、受信光(反射光)の強度が弱い場合は、露光時間を長くすることでイメージセンサに対する入射光量を増加させることが可能であり、これにより解析精度を高めることができる。
 受信光(反射光)の強度はオブジェクトの距離が遠いほど低下する。
 ロボット10の走行速度が速い場合は、より遠いオブジェクトの距離算出を行うことが必要であり、遠いオブジェクトの距離解析には、露光時間を長くする制御が有効となる。一方、ロボット10の走行速度が遅い場合は、遠いオブジェクトの距離算出より、近いオブジェクトの距離算出を優先すればよく、露光時間は短くてもよい。
 以下に説明する実施例は、この要請に応じたものであり、例えば、ロボット10の走行速度が速い場合は、より遠くまで広い範囲のオブジェクトの距離算出を可能とするため、iToFカメラの露光時間を長くする。一方、ロボット10の走行速度が遅い場合は、iToFカメラの露光時間を短くして、近距離領域の高精度な距離算出を優先させる。
 以下に説明する実施例は、このようにロボット10の走行速度に応じてiToFカメラの露光時間制御を行う実施例である。
 図29に示すフローチャートは、本開示の情報処理装置100が実行するiToFカメラ露光時間制御パラメータの算出処理と、算出パラメータに基づく処理について説明するフローチャートである。
 以下、図29に示すフローの各ステップの処理について、順次、説明する。
  (ステップS221)
 本開示の情報処理装置100は、まず、ステップS221において、ロボット(移動体)10の速度(v)を検出する。
 このロボット(移動体)10の速度検出処理は、図11に示す情報処理装置100の速度センサ101において実行され、検出された速度(v)は、制御部132と、点群マップ合成部131に入力される。
  (ステップS222)
 情報処理装置100は、次に、ステップS222において、検出したロボット10の速度(v)と、予め規定した速度しきい値(Vth)とを比較し、ロボット10の速度(v)が速度しきい値(Vth)以上であるか否かを判定する。すなわち、以下の(判定式a)が成立するか否かを判定する。
 v≧Vth・・・(判定式a)
 この処理は、図11に示す情報処理装置100の制御部132が実行する。
 上記(判定式a)が成立し、ロボット10の速度(v)が速度しきい値(Vth)以上であると判定された場合は、ステップS223に進む。
 一方、上記(判定式a)が成立せず、ロボット10の速度(v)が速度しきい値(Vth)以上でないと判定された場合は、ステップS224に進む。
  (スップS223)
 ステップS222において、上記(判定式a)が成立し、ロボット10の速度(v)が速度しきい値(Vth)以上であると判定された場合は、ステップS223に進む。
 この場合、情報処理装置100は、ステップS223において、iToFカメラ120の露光時間を長くするための露光時間制御パラメータを算出する。すなわち、iToFカメラ120の光受信部124の露光時間を長くするための露光時間制御パラメータを算出する。
 この処理も、図11に示す情報処理装置100の制御部132が実行する。
  (ステップS224)
 一方、ステップS224は、ステップS222において、上記(判定式a)が成立し、ロボット10の速度(v)が速度しきい値(Vth)以上でないと判定された場合の処理である。
 この場合、情報処理装置100は、ステップS224において、iToFカメラ120の露光時間を短くするための露光時間制御パラメータを算出する。すなわち、iToFカメラ120の光受信部124の露光時間を短くするための露光時間制御パラメータを算出する。
 この処理も、図11に示す情報処理装置100の制御部132が実行する。
  (ステップS225)
 ステップS223、またはステップS224において、iToFカメラ120の出力する光の露光時間の低下、または短くする露光時間制御パラメータを算出する処理が終了すると、ステップS225に進む。
 情報処理装置100は、ステップS225において、ステップS223、またはステップS224で算出した露光時間制御パラメータに基づいて決定される露光時間をiToFカメラ120の光受信部124の露光時間として設定する。
 この処理は、iToFカメラ120の露光時間制御部123と、光受信部124において実行される。
  (ステップS226)
 次に、情報処理装置100は、ステップS226において、iToFカメラ検出値に基づくオブジェクト距離算出処理、および3次元点群生成処理を実行する。
 この処理は、図11に示す情報処理装置100のiToF点群マップ生成部126が実行する処理である。
 iToF点群マップ生成部126は、iToFカメラ120の光受信部124の受信信号を、信号処理部(ローパスフィルタ)125を介して入力し、この入力値に基づいて、オブジェクト距離算出処理、および3次元点群生成処理を実行して、iToF点群マップを生成する。
 ステップS223~S226の一連の処理の具体例について、図30を参照して説明する。
 図30は、ロボット(移動体)10の速度と、iToFカメラの露光時間(μsec)との対応関係を説明するグラフである。
 グラフの横軸は、ロボット(移動体)10の速度v(m/s)である。縦軸は、「露光時間制御パラメータ(tint)」であり、具体的にはiToFカメラ120の光受信部124の露光時間(μsec)を示している。
 なお、ロボット(移動体)10の速度v(m/s)がしきい値Vth以下の領域に、実線のグラフ(処理例a)と、点線のグラフ(処理例b)の2つのグラフを示しているが、これらは、先に説明した実施例1の点群カット処理に関する図19に示す処理例と、図24に示す処理例に対応するものであり、2つの異なる処理が可能であることを示している。
 まず、(処理例a)を含む実線のグラフについて説明する。
 図に示すグラフ中の直線(実線)は、ロボット(移動体)10の速度(v)に基づいて「露光時間制御パラメータ(tint)」を算出する関数に相当し、以下の式(式5)によって表わされる。
 tint=s×v+toffset・・・(式5)
 ただし、
 tint:露光時間制御パラメータであり、iToFカメラ120の光受信部124の露光時間(μsec)
 s:補正係数(速度対応の感度)
 v:ロボットの速度(m/s)
 toffset:オフセット(速度最小値(v=0)における露光時間(μsec))
 である。
 また、図30のグラフの縦軸に示す「iToFカメラの出力光基準露光時間(X(μsec))」は、ロボットが、予め規定した「しきい値速度(Vth)」で走行している場合の基準となる露光時間制御パラメータであり、ロボットが、予め規定した「しきい値速度(Vth)」で走行している場合に設定される「iToFカメラ120の露光時間」である。この基準露光時間をX(μsec)とする。
 図29のフローのステップS223の処理、すなわち、ロボット10の速度(v)が速度しきい値(Vth)以上であると判定された場合の処理は、図30に示すグラフのしきい値Vthの右側の処理となる。
 すなわち、この場合、情報処理装置100は、ステップS223において、iToFカメラ120の露光時間を長くする。
 一方、図29のフローのステップS224の処理、すなわち、ロボット10の速度(v)が速度しきい値(Vth)以上でないと判定された場合の処理は、図30に示すグラフのしきい値Vthの左側の処理となる。
 すなわち、この場合、情報処理装置100は、ステップS224において、iToFカメラ120の露光時間を短くする。
 このように、ステップS222~S226においては、ロボット10の走行速度(v)が、予め規定された速度しきい値(Vth)以上であるか否かを判定し、ロボット10がしきい値(Vth)以上の速い速度で高速走行している場合は、iToFカメラ120の露光時間を長くし、ロボット10がしきい値(Vth)未満の遅い速度で低速走行している場合は、iToFカメラ120の露光時間を短くする。
 このような処理を行うことで、ロボット10の走行速度に応じて、iToF点群マップの遠距離領域の精度を変化させることができる。
 すなわち、iToF点群マップ生成部126は、ロボット10が高速走行している場合は、より遠い領域まで高精度な点群を設定したiToF点群マップを生成する。
 一方、ロボット10が低速走行している場合は、近い領域においてのみ高精度な点群を設定したiToF点群マップを生成する。
 図30に示すフローに戻り、ステップS227以下の処理について説明する。
 なお、ステップS226において、iToFカメラに基づく点群であるiToF点群マップ生成処理が実行されている間、並行して図11に示す情報処理装置100のLiDAR点群マップ生成部105は、2D-LiDAR103の検出値に基づくLiDAR点群マップを生成している。
 LiDAR点群マップ生成部105が生成する2D-LiDAR103の検出値に基づくLiDAR点群マップは、先に図13を参照して説明したように、各オブジェクトのある高さ(y=ya)の2次元平面に交わるオブジェクトを示す点群データによって構成される。
  (ステップS227)
 情報処理装置100は、ステップS227において、iToFカメラ検出値に基づく3次元点群と、LiDAR検出値に基づく2次元点群を合成した合成点群マップを生成する。
 この処理は、図11に示す情報処理装置100の点群マップ合成部131が実行する処理である。
  (ステップS228)
 ステップS227において、iToFカメラ検出値に基づく点群(3次元点群)と、LiDAR検出値に基づく点群(2次元点群)を合成した合成点群マップ、例えば先の実施例において図23を参照して説明したような合成点群マップが生成されると、次に、情報処理装置はステップS228の処理を実行する。
 すなわち、ステップS228において、ステップS227で生成した合成点群マップを利用して、ロボット10の移動制御を実行する。
 この処理は、図11に示すロボット制御部201が実行する処理である。
 ロボット制御部201は、iToFカメラ検出値に基づく点群(3次元点群)と、LiDAR検出値に基づく点群(2次元点群)を合成した合成点群マップ、例えば図23に示すような合成点群マップを参照して、オブジェクト(障害物)に衝突や接触しない安全な走行ルートを設定して走行するための走行制御を行う。
  (ステップS229)
 最後に、情報処理装置100は、ステップS229において、ロボット10が目的地に到着したか否かを判定し、目的地に到着した場合は、マップ生成処理や走行処理を完了する。
 目的地に到着していない場合は、ステップS221に戻り、ステップS221以下の処理を繰り返す。
 本実施例では、ロボット10がしきい値(Vth)以上の速い速度で高速走行している場合は、iToFカメラ120の露光時間を長くし、ロボット10がしきい値(Vth)未満の遅い速度で低速走行している場合は、iToFカメラ120の露光時間を短くする。
 この結果、ロボット10が高速走行している場合は、より遠い領域まで高精度な点群を設定したiToF点群マップを生成することが可能となり、一方、ロボット10が低速走行している場合は、近い領域のみ高精度な点群を設定したiToF点群マップを生成することが可能となる。
 なお、図30のグラフにおいて、ロボット(移動体)10の速度v(m/s)がしきい値Vth以下の領域に示す点線のグラフ(処理例b)は、先の実施例1において説明した点群カット処理の図24に示す処理例(変形例1)と同様、ロボット10の速度(v)が速度しきい値(Vth)未満である場合、露光時間制御パラメータ(tint)を固定値、すなわち、
 tint=X(μsec)
 とした変形例である。
 すなわち、(処理例b)の露光時間制御パラメータ(tint)算出関数は、以下の式(式6)として表すことができる。
 ロボット速度v≧Vthの場合、
 tint=s×v+toffset
 ロボット速度v<Vthの場合、
 tint=X
              ・・・(式6)
 上記(式6)で示される露光時間制御パラメータ(tint)算出関数を利用した場合、図29のフローのステップS223の処理、すなわち、ロボット10の速度(v)が速度しきい値(Vth)以上であると判定された場合の処理は、図24に示すグラフのしきい値Vthの右側の処理となる。
 すなわち、この場合、情報処理装置100は、ステップS223において、iToFカメラ120の露光時間を長くする。
 一方、図29のフローのステップS224の処理、すなわち、ロボット10の速度(v)が速度しきい値(Vth)以上でないと判定された場合の処理は、図30に示すグラフのしきい値Vthの左側の点線(処理例b)の処理となる。
 すなわち、この場合、情報処理装置100は、ステップS224において、iToFカメラ120が出力する光の露光時間を固定して、
 tint=X(μsec)
 とする。
 例えば、このような処理を実行する構成としてもよい。
 なお、上記(式6)で示される露光時間制御パラメータ(tint)算出関数、すなわち、ロボット10の速度(v)が速度しきい値(Vth)未満で図30に示すグラフの左側の(処理例b)の点線で示す関数、ロボット10の速度(v)が速度しきい値(Vth)以上で図30に示すグラフの右側の実線で示す関数、これら2つの異なる関数を利用した場合、ロボット速度(v)が、しきい値(Vth)の前後で変動した場合、処理が不安定となる恐れがある。
 このような処理の不安定さを解消するため、例えば先に図25を参照して説明したようにヒステリシスを設定した制御を行う構成としてもよい。
 ヒステリシスを設定して、2つの異なる露光時間制御パラメータ(tint)算出関数の切り替えを実行することで、露光時間の変更処理をスムーズに行うことが可能となる。
 以上、説明したように「(実施例3)iToFカメラ露光時間制御パラメータの算出処理と、算出パラメータに基づく処理」では、
 ロボット10の走行速度に応じて、iToFカメラ120が出力する光の露光時間を変更することで、iToF点群マップ生成部126が生成するiToF点群マップの遠距離領域における精度を変化させることができる。
 すなわち、iToF点群マップ生成部126は、ロボット10が高速走行している場合は、より遠い領域まで高精度な点群を設定したiToF点群マップを生成し、ロボット10が低速走行している場合は、近い領域のみ高精度な点群を設定したiToF点群マップを生成することが可能となる。
  [3-4.(実施例4)iToFカメラ出力光強度制御パラメータの算出処理と、算出パラメータに基づく処理について]
 次に、本開示の情報処理装置100が実行する処理の実施例4として、iToFカメラ出力光強度制御パラメータの算出処理と、算出パラメータに基づく処理について説明する。
 先に説明したように、iToFカメラ120は、送信光(出力光)と受信光(反射光)の位相差に応じて距離を算出する。
 送信光(出力光)は、図11に示す情報処理装置100のiToFカメラ120の光送信部122から出力される。
 光送信部122からの出力光は、その出力強度が高いほど遠くまで届き、光受信部124は遠くのオブジェクトからの反射光を受信することができる。
 すなわち、iToFカメラ120の光送信部122から出力される光の強度を上昇させるほど、遠くのオブジェクトの距離算出精度を高めることができる。
 ただし、例えば、前方近くに人や対向車両が存在する場合などには、高強度の光を出力すると、迷惑になる場合がある。
 以下に説明する実施例4は、これらの状況を鑑みてiToFカメラ120の出力光の強度制御を実行する実施例である。
 具体的には、ロボット10の走行速度が速い場合は、より遠くのオブジェクトの距離算出を行うことが必要であり、この場合は、出力光の強度を上昇させる。一方、ロボット10の走行速度が遅い場合は、出力光の強度を低下させる。このような出力光の強度制御を実行する。
 以下のこのような出力光の強度制御を行う実施例について説明する。
 図31に示すフローチャートは、本開示の情報処理装置100が実行するiToFカメラ出力光強度制御パラメータの算出処理と、算出パラメータに基づく処理について説明するフローチャートである。
 以下、図31に示すフローの各ステップの処理について、順次、説明する。
  (ステップS241)
 本開示の情報処理装置100は、まず、ステップS241において、ロボット(移動体)10の速度(v)を検出する。
 このロボット(移動体)10の速度検出処理は、図11に示す情報処理装置100の速度センサ101において実行され、検出された速度(v)は、制御部132と、点群マップ合成部131に入力される。
  (ステップS242)
 情報処理装置100は、次に、ステップS242において、検出したロボット10の速度(v)と、予め規定した速度しきい値(Vth)とを比較し、ロボット10の速度(v)が速度しきい値(Vth)以上であるか否かを判定する。すなわち、以下の(判定式a)が成立するか否かを判定する。
 v≧Vth・・・(判定式a)
 この処理は、図11に示す情報処理装置100の制御部132が実行する。
 上記(判定式a)が成立し、ロボット10の速度(v)が速度しきい値(Vth)以上であると判定された場合は、ステップS243に進む。
 一方、上記(判定式a)が成立せず、ロボット10の速度(v)が速度しきい値(Vth)以上でないと判定された場合は、ステップS244に進む。
  (スップS243)
 ステップS242において、上記(判定式a)が成立し、ロボット10の速度(v)が速度しきい値(Vth)以上であると判定された場合は、ステップS243に進む。
 この場合、情報処理装置100は、ステップS243において、iToFカメラ120の出力光の強度を上昇させるための強度制御パラメータを算出する。すなわち、iToFカメラ120の光送信部122が出力する光の強度を上昇させるための強度制御パラメータを算出する。
 この処理も、図11に示す情報処理装置100の制御部132が実行する。
  (ステップS244)
 一方、ステップS244は、ステップS242において、上記(判定式a)が成立し、ロボット10の速度(v)が速度しきい値(Vth)以上でないと判定された場合の処理である。
 この場合、情報処理装置100は、ステップS244において、iToFカメラ120の出力光の強度を低下させるための強度制御パラメータを算出する。すなわち、iToFカメラ120の光送信部122が出力する光の強度を低下させるための強度制御パラメータを算出する。
 この処理も、図11に示す情報処理装置100の制御部132が実行する。
  (ステップS245)
 ステップS243、またはステップS244において、iToFカメラ120の出力する光の強度の上昇、または低下させる強度制御パラメータを算出する処理が終了すると、ステップS245に進む。
 情報処理装置100は、ステップS245において、ステップS243、またはステップS244で算出した強度制御パラメータに基づいて決定される強度を有する出力光をiToFカメラ120から出力する。
 この処理は、iToFカメラ120の出力光生成部121と、光送信部122において実行される。
  (ステップS246)
 次に、情報処理装置100は、ステップS246において、iToFカメラ検出値に基づくオブジェクト距離算出処理、および3次元点群生成処理を実行する。
 この処理は、図11に示す情報処理装置100のiToF点群マップ生成部126が実行する処理である。
 iToF点群マップ生成部126は、iToFカメラ120の光受信部124の受信信号を、信号処理部(ローパスフィルタ)125を介して入力し、この入力値に基づいて、オブジェクト距離算出処理、および3次元点群生成処理を実行して、iToF点群マップを生成する。
 ステップS243~S246の一連の処理の具体例について、図32を参照して説明する。
 図32は、ロボット(移動体)10の速度と、iToFカメラの出力光の強度(Watt)との対応関係を説明するグラフである。
 グラフの横軸は、ロボット(移動体)10の速度v(m/s)である。縦軸は、「強度制御パラメータ(Po)」であり、具体的にはiToFカメラ120から出力する光の強度(Watt)を示している。
 なお、ロボット(移動体)10の速度v(m/s)がしきい値Vth以下の領域に、実線のグラフ(処理例a)と、点線のグラフ(処理例b)の2つのグラフを示しているが、これらは、先に説明した実施例1の点群カット処理に関する図19に示す処理例と、図24に示す処理例に対応するものであり、2つの異なる処理が可能であることを示している。
 まず、(処理例a)を含む実線のグラフについて説明する。
 図に示すグラフ中の直線(実線)は、ロボット(移動体)10の速度(v)に基づいて「強度制御パラメータ(Po)」を算出する関数に相当し、以下の式(式7)によって表わされる。
 Po=m×v+n・・・(式7)
 ただし、
 Po:強度制御パラメータであり、iToFカメラ120から出力する光の強度(Watt)
 m:補正係数(速度対応の感度)
 n:オフセット(速度最小値(v=0)における光出力強度(watt))
 である。
 また、図32のグラフの縦軸に示す「iToFカメラの出力光基準強度(X(Watt))」は、ロボットが、予め規定した「しきい値速度(Vth)」で走行している場合の基準となる光出力強度制御パラメータであり、ロボットが、予め規定した「しきい値速度(Vth)」で走行している場合に設定される「iToFカメラ120の出力光の強度」である。この基準強度をX(Watt)とする。
 図31のフローのステップS243の処理、すなわち、ロボット10の速度(v)が速度しきい値(Vth)以上であると判定された場合の処理は、図32に示すグラフのしきい値Vthの右側の処理となる。
 すなわち、この場合、情報処理装置100は、ステップS243において、iToFカメラ120の出力光の強度を上昇させる。
 一方、図31のフローのステップS244の処理、すなわち、ロボット10の速度(v)が速度しきい値(Vth)以上でないと判定された場合の処理は、図32に示すグラフのしきい値Vthの左側の処理となる。
 すなわち、この場合、情報処理装置100は、ステップS244において、iToFカメラ120の出力光の強度を低下させる。
 このように、ステップS242~S246においては、ロボット10の走行速度(v)が、予め規定された速度しきい値(Vth)以上であるか否かを判定し、ロボット10がしきい値(Vth)以上の速い速度で高速走行している場合は、iToFカメラ120の出力光の強度を上昇させ、ロボット10がしきい値(Vth)未満の遅い速度で低速走行している場合は、iToFカメラ120の出力光の強度を低下させる。
 このような処理を行うことで、ロボット10の走行速度に応じたiToF点群マップの生成処理、すなわち高速走行時には、遠距離オブジェクトの距離を高精度に表現したiToF点群マップ、低速走行時には、近距離オブジェクトの距離を高精度に表現したiToF点群マップを生成することができる。
 すなわち、iToF点群マップ生成部126は、ロボット10が高速走行している場合は、より遠い領域まで高精度な点群を設定したiToF点群マップを生成する。
 一方、ロボット10が低速走行している場合は、近い領域のオブジェクトに高精度な点群を設定したiToF点群マップを生成する。
 図32に示すフローに戻り、ステップS247以下の処理について説明する。
 なお、ステップS246において、iToFカメラに基づく点群であるiToF点群マップ生成処理が実行されている間、並行して図11に示す情報処理装置100のLiDAR点群マップ生成部105は、2D-LiDAR103の検出値に基づくLiDAR点群マップを生成している。
 LiDAR点群マップ生成部105が生成する2D-LiDAR103の検出値に基づくLiDAR点群マップは、先に図13を参照して説明したように、各オブジェクトのある高さ(y=ya)の2次元平面に交わるオブジェクトを示す点群データによって構成される。
  (ステップS247)
 情報処理装置100は、ステップS247において、iToFカメラ検出値に基づく3次元点群と、LiDAR検出値に基づく2次元点群を合成した合成点群マップを生成する。
 この処理は、図11に示す情報処理装置100の点群マップ合成部131が実行する処理である。
  (ステップS248)
 ステップS247において、iToFカメラ検出値に基づく点群(3次元点群)と、LiDAR検出値に基づく点群(2次元点群)を合成した合成点群マップ、例えば先の実施例において図23を参照して説明したような合成点群マップが生成されると、次に、情報処理装置はステップS248の処理を実行する。
 すなわち、ステップS248において、ステップS247で生成した合成点群マップを利用して、ロボット10の移動制御を実行する。
 この処理は、図11に示すロボット制御部201が実行する処理である。
 ロボット制御部201は、iToFカメラ検出値に基づく点群(3次元点群)と、LiDAR検出値に基づく点群(2次元点群)を合成した合成点群マップ、例えば図23に示すような合成点群マップを参照して、オブジェクト(障害物)に衝突や接触しない安全な走行ルートを設定して走行するための走行制御を行う。
  (ステップS249)
 最後に、情報処理装置100は、ステップS249において、ロボット10が目的地に到着したか否かを判定し、目的地に到着した場合は、マップ生成処理や走行処理を完了する。
 目的地に到着していない場合は、ステップS241に戻り、ステップS241以下の処理を繰り返す。
 本実施例では、ロボット10がしきい値(Vth)以上の速い速度で高速走行している場合は、iToFカメラ120の出力光の強度を上昇させ、ロボット10がしきい値(Vth)未満の遅い速度で低速走行している場合は、iToFカメラ120の出力光の強度を低下させる。
 この結果、ロボット10が高速走行している場合は、より遠い領域のオブジェクトに対して高精度な点群を設定したiToF点群マップを生成することが可能となり、一方、ロボット10が低速走行している場合は、近い領域のオブジェクトに対して高精度な点群を設定したiToF点群マップを生成することが可能となる。
 なお、図32のグラフにおいて、ロボット(移動体)10の速度v(m/s)がしきい値Vth以下の領域に示す点線のグラフ(処理例b)は、先の実施例1において説明した点群カット処理の図24に示す処理例(変形例1)と同様、ロボット10の速度(v)が速度しきい値(Vth)未満である場合、強度制御パラメータ(Po)を固定値、すなわち、
 Po=X(Watt)
 とした変形例である。
 すなわち、(処理例b)の強度制御パラメータ(Po)算出関数は、以下の式(式8)として表すことができる。
 ロボット速度v≧Vthの場合、
 Po=m×v+n
 ロボット速度v<Vthの場合、
 Po=X
              ・・・(式8)
 上記(式8)で示される強度制御パラメータ(Po)算出関数を利用した場合、図31のフローのステップS243の処理、すなわち、ロボット10の速度(v)が速度しきい値(Vth)以上であると判定された場合の処理は、図24に示すグラフのしきい値Vthの右側の処理となる。
 すなわち、この場合、情報処理装置100は、ステップS243において、iToFカメラ120が出力する光の強度を上昇させる。
 一方、図31のフローのステップS244の処理、すなわち、ロボット10の速度(v)が速度しきい値(Vth)以上でないと判定された場合の処理は、図32に示すグラフのしきい値Vthの左側の点線(処理例b)の処理となる。
 すなわち、この場合、情報処理装置100は、ステップS244において、iToFカメラ120が出力する光の強度を固定して、
 Po=X(Watt)
 とする。
 例えば、このような処理を実行する構成としてもよい。
 なお、上記(式8)で示される強度制御パラメータ(Po)算出関数、すなわち、ロボット10の速度(v)が速度しきい値(Vth)未満で図32に示すグラフの左側の(処理例b)の点線で示す関数、ロボット10の速度(v)が速度しきい値(Vth)以上で図32に示すグラフの右側の実線で示す関数、これら2つの異なる関数を利用した場合、ロボット速度(v)が、しきい値(Vth)の前後で変動した場合、処理が不安定となる恐れがある。
 このような処理の不安定さを解消するため、例えば先に図25を参照して説明したようにヒステリシスを設定した制御を行う構成としてもよい。
 ヒステリシスを設定して、2つの異なる強度制御パラメータ(Po)算出関数の切り替えを実行することで、強度の変更処理をスムーズに行うことが可能となる。
 以上、説明したように「(実施例4)iToFカメラ出力光強度制御パラメータの算出処理と、算出パラメータに基づく処理」では、
 ロボット10の走行速度に応じて、iToFカメラ120が出力する光の強度を変更することで、iToF点群マップ生成部126が生成するiToF点群マップの遠距離領域のオブジェクトの距離算出精度を変化させることができる。
 すなわち、iToF点群マップ生成部126は、ロボット10が高速走行している場合は、より遠い領域まで高精度な点群を設定したiToF点群マップを生成し、ロボット10が低速走行している場合は、近い領域のオブジェクトに対する高精度な点群を設定したiToF点群マップを生成することが可能となる。
 なお、ここまで、実施例1~4、すなわち、
 (実施例1)iToF点群カット領域制御パラメータの算出処理と、算出パラメータに基づく処理
 (実施例2)iToFカメラ出力光周波数制御パラメータの算出処理と、算出パラメータに基づく処理
 (実施例3)iToFカメラ露光時間制御パラメータの算出処理と、算出パラメータに基づく処理
 (実施例4)iToFカメラ出力光強度制御パラメータの算出処理と、算出パラメータに基づく処理
 これら4つの実施例について説明したが、これらの各実施例は個別に実行することも可能であるが、任意の複数の実施例を組み合わせて実行する構成としてもよい。
  [4.(実施例5)上記実施例1~4の各処理をシーケンシャルに実行する実施例について]
 次に、(実施例5)として、上述した実施例1~4の各処理をシーケンシャルに実行する実施例について説明する。
 図33~図36に示すフローチャートは、本開示の情報処理装置100が実行する(実施例5)の処理、すなわち、上述した実施例1~4の各処理をシーケンシャルに実行する処理について説明するフローチャートである。
 以下、図33~図36に示すフローの各ステップの処理について、順次、説明する。
  (ステップS301)
 本開示の情報処理装置100は、まず、ステップS301において、移動体、すなわちロボット10の速度しきい値(Vth)と距離しきい値(Lth)を取得する。
 この処理は、図11に示す情報処理装置100の制御部132が実行する。
 速度しきい値(Vth)と距離しきい値(Lth)は、処理態様を決定するために用いられるしきい値であり、利用するiToFカメラ120の仕様に応じて予め決定され、情報処理装置100の記憶部に格納されている。
 なお、これらのしきい値は、制御部132が、その都度、決定する処理を行ってもよい。例えばiToFカメラ120による試験撮影を行い、出力光に対する受信光の鮮明度などを解析して決定する。周囲の明るさや、気象状態に応じて出力光に対する受信光の鮮明度は変化する可能性があり、これらを考慮したしきい値決定処理を行う構成としてもよい。
  (ステップS302)
 次に、情報処理装置100は、ステップS302において、ロボット(移動体)10の速度(v)を検出する。
 このロボット(移動体)10の速度検出処理は、図11に示す情報処理装置100の速度センサ101において実行され、検出された速度(v)は、制御部132と、点群マップ合成部131に入力される。
  (ステップS303)
 次に、情報処理装置100は、ステップS303において、2D-LiDAR検出値に基づくオブジェクト距離算出処理、およびLiDAR点群マップ生成処理を実行する。
 この処理は、図11に示す情報処理装置100の2D-LiDAR103、LiDAR点群マップ生成部105において実行する処理である。
 LiDAR点群マップ生成部105は、2D-LiDAR103の検出値に基づくLiDAR点群マップを生成する。なお、LiDAR点群マップ生成部105が生成する2D-LiDAR103の検出値に基づくLiDAR点群マップは、先に図13を参照して説明したように、各オブジェクトのある高さ(y=ya)の2次元平面に交わるオブジェクトを示す点群データによって構成される点群マップである。
  (ステップS304)
 次に、情報処理装置100は、ステップS304において、ステップS301で記憶部から取得した距離しきい値(Lth)内に障害物が検出されていないかを判定する。
 この処理は、制御部132が、LiDAR点群マップ生成部105の生成したLiDAR点群マップを参照して判定する。
 距離しきい値(Lth)内に障害物が検出されていないと判定した場合は、ステップS305に進む。
 一方、距離しきい値(Lth)内に障害物が検出されたと判定した場合は、ステップS321に進む。
  (ステップS305)
 ステップS304において、距離しきい値(Lth)内に障害物が検出されていないと判定した場合は、ステップS305に進む。
 この場合、情報処理装置100は、ステップS305において、iToFカメラ120の検出値に基づいて生成されるiToF点群を利用しない近距離領域を規定する点群カット領域制御パラメータを算出する。移動体速度(v)に基づいて算出する。
 この処理は、図11に示す情報処理装置100の制御部132が実行する。
 このステップS305の処理は、先に説明した実施例1対応のフローチャートである図18に示すフローチャートのステップS103~S104の処理に対応する処理である。すなわち、先に説明した図19に示すグラフに対応する関数に基づいて点群カット領域制御パラメータを算出する。
 例えば、先に図19を参照して説明したように、以下の式(式1)によって点群カット領域制御パラメータ(Dmin)を算出する。
 Dmin=a×v+b・・・(式1)
 ただし、
 Dmin:点群カット領域制御パラメータであり、点群カット領域のロボット10からの最大距離(m)
 v:ロボットの速度(m/s)
 a:補正係数(速度対応の感度)
 b:オフセット(速度最小値(v=0)における点群カット領域規定値)
 である。
 例えば、ロボット10の速度(v)が速度しきい値(Vth)以上であると判定された場合は、iToFカメラ検出値に基づく3次元点群を利用しない近距離領域を拡大する点群カット領域制御パラメータを算出する。
 一方、ロボット10の速度(v)が速度しきい値(Vth)以上でないと判定された場合は、iToFカメラ検出値に基づく3次元点群を利用しない近距離領域を縮小する点群カット領域制御パラメータを算出する。
  (ステップS306)
 次に、情報処理装置100は、ステップS306において、点群カット領域制御パラメータに基づいて決定される点群カット領域を除く領域について、iToFカメラ検出値に基づくオブジェクト距離算出処理、およびiToF点群マップ生成処理を実行する。
 この処理は、図11に示す情報処理装置100のiToF点群マップ生成部126が実行する処理である。
 iToF点群マップ生成部126は、制御部132から点群カット領域制御パラメータを入力し、入力した点群カット領域制御パラメータに従って、iToFカメラ検出値に基づく3次元点群を生成しない点群カット領域を決定し、決定した点群カット領域を除く領域のみに点群を設定したiToF点群マップを生成する。
  (ステップS307)
 次に、情報処理装置100は、ステップS307において、合成点群マップを生成する。
 すなわち、ステップS306においてiToFカメラ検出値に基づいて生成されたiToF点群マップと、ステップS303においてLiDAR検出値に基づいて生成されたLiDAR点群マップを合成した合成点群マップを生成する。
 この処理は、図11に示す情報処理装置100の点群マップ合成部131が実行する処理である。
 点群マップ合成部131が生成する合成点群マップの具体例は、先に図23を参照して説明した通りである。
 図23に示すように、点群マップ合成部131が生成する合成点群マップは、ロボット10に近い側から、以下の各点群領域が設定された構成となる。
 (a)LiDAR点群領域191
 (b)iToF点群&LiDAR点群領域192
 (c)LiDAR点群領域193
 これらの各領域中、「(a)LiDAR点群領域191」と、「(c)LiDAR点群領域193」は、iToF点群は存在せず、LiDAR点群(2次元平面上の点群)のみによって構成される。
 「(b)iToF点群&LiDAR点群領域192」は、LiDAR点群(2次元平面上の点群)に加え、iToFカメラの検出値に基づいて生成されるiToF点群(3次元点群)も設定される領域となる。
 ロボット10は、「(b)iToF点群&LiDAR点群領域192」から、より高精度なオブジェクト位置、距離情報を取得することが可能となる。
 なお、「(b)iToF点群&LiDAR点群領域192」は、ロボット10の走行ルートを決定するために利用される重要性の高い領域である。
  (ステップS308)
 ステップS307において、iToFカメラ検出値に基づく点群(3次元点群)と、LiDAR検出値に基づく点群(2次元点群)を合成した合成点群マップ、例えば図23に示すような合成点群マップが生成されると、次に、情報処理装置はステップS308の処理を実行する。
 すなわち、ステップS308において、ステップS307で生成した合成点群マップを利用して、ロボット10の移動制御を実行する。
 この処理は、図11に示すロボット制御部201が実行する処理である。
 ロボット制御部201は、iToFカメラ検出値に基づく点群(3次元点群)と、LiDAR検出値に基づく点群(2次元点群)を合成した合成点群マップ、例えば図23に示すような合成点群マップを参照して、オブジェクト(障害物)に衝突や接触しない安全な走行ルートを設定して走行するための走行制御を行う。
 なお、ロボット制御部201は、走行ルートの決定処理に利用する点群データは、主に、図23に示合成点群マップ中の「(b)iToF点群&LiDAR点群領域192」である。
 前述したように、「(b)iToF点群&LiDAR点群領域192」は、LiDAR点群(2次元平面上の点群)に加え、iToFカメラの検出値に基づいて生成されるiToF点群(3次元点群)も設定されており、より高精度なオブジェクト位置、距離情報の解析が可能であり、安全、確実な走行ルートの設定を行うことができる。
  (ステップS309)
 最後に、情報処理装置100は、ステップS309において、ロボット10が目的地に到着したか否かを判定し、目的地に到着した場合は、マップ生成処理や走行処理を完了する。
 目的地に到着していない場合は、ステップS302に戻り、ステップS302以下の処理を繰り返す。
 次に、ステップS304の判定ステップにおいてNoの判定がなされた場合、すなわち、距離しきい値(Lth)内に障害物が検出されたと判定した場合のステップS321以下の処理について、図34以下に示すフローを参照して説明する。
  (ステップS321)
 ステップS304において、距離しきい値(Lth)内に障害物が検出されたと判定した場合、情報処理装置100は、ステップS321において、先のステップS302で検出したロボット10の速度(v)と、予め規定した速度しきい値(Vth)とを比較し、ロボット10の速度(v)が速度しきい値(Vth)以上であるか否かを判定する。すなわち、以下の(判定式a)が成立するか否かを判定する。
 v≧Vth・・・(判定式a)
 この処理は、図11に示す情報処理装置100の制御部132が実行する。
 上記(判定式a)が成立し、ロボット10の速度(v)が速度しきい値(Vth)以上であると判定された場合は、ステップS322に進む。
 一方、上記(判定式a)が成立せず、ロボット10の速度(v)が速度しきい値(Vth)以上でないと判定された場合は、ステップS341に進む。
  (スップS322)
 ステップS321において、上記(判定式a)が成立し、ロボット10の速度(v)が速度しきい値(Vth)以上であると判定された場合は、ステップS322に進む。
 この場合、情報処理装置100は、ステップS322において、iToFカメラ120の出力光の周波数を低下させるための周波数制御パラメータを算出する。すなわち、iToFカメラ120の光送信部122が出力する光の周波数を低下させるための周波数制御パラメータを算出する。
 この処理も、図11に示す情報処理装置100の制御部132が実行する。
 このステップS322の処理は、先に説明した実施例2対応のフローチャートである図27に示すフローチャートのステップS203の処理に対応する処理である。すなわち、先に説明した図28に示すグラフに対応する関数に基づいて周波数制御パラメータを算出する。具体的には、以下の式(式3)に従って、周波数制御パラメータ(fmod)を算出する。
 fmod=(1/2)c×(1/Dmax)・・・(式3)
 ただし、
 fmod:周波数制御パラメータであり、iToFカメラ120から出力する光の周波数(Hz)
 c:光速(c=3×10(m/s))
 Dmax:目標最大計測距離
  Dmax=p×v+q
   v:ロボットの速度(m/s)
   p:補正係数(速度対応の感度)
   q:オフセット(速度最小値(v=0)における目標最大計測距離)
 である。
 このステップS322の処理は、ロボット10の速度(v)が速度しきい値(Vth)以上であると判定された場合の処理であり、上記式(式3)に従って、iToFカメラ120の出力光の周波数を、基準周波数(X(Hz))より低下させる周波数制御パラメータを算出する。
  (ステップS323)
 次に、情報処理装置100は、ステップS323において、ステップS322で算出した周波数制御パラメータに基づいて決定される周波数を有する出力光をiToFカメラ120から出力する。
 この処理は、iToFカメラ120の出力光生成部121と、光送信部122において実行される。
  (ステップS324)
 次に、情報処理装置100は、ステップS324において、iToFカメラ検出値に基づくオブジェクト距離算出処理、およびiToF点群マップ生成処理を実行する。
 この処理は、図11に示す情報処理装置100のiToF点群マップ生成部126が実行する処理である。
 iToF点群マップ生成部126は、iToFカメラ120の光受信部124の受信信号を、信号処理部(ローパスフィルタ)125を介して入力し、この入力値に基づいて、オブジェクト距離算出処理、および3次元点群生成処理を実行して、iToF点群マップを生成する。
  (ステップS325)
 次に、情報処理装置100は、ステップS325において、合成点群マップを生成する。
 すなわち、ステップS324においてiToFカメラ検出値に基づいて生成されたiToF点群マップと、ステップS303においてLiDAR検出値に基づいて生成されたLiDAR点群マップを合成した合成点群マップを生成する。
 この処理は、図11に示す情報処理装置100の点群マップ合成部131が実行する処理である。
 点群マップ合成部131が生成する合成点群マップの具体例は、先に図23を参照して説明した通りである。
 図23に示すように、点群マップ合成部131が生成する合成点群マップは、ロボット10に近い側から、以下の各点群領域が設定された構成となる。
 (a)LiDAR点群領域191
 (b)iToF点群&LiDAR点群領域192
 (c)LiDAR点群領域193
 ロボット10は、「(b)iToF点群&LiDAR点群領域192」から、より高精度なオブジェクト位置、距離情報を取得することが可能となる。
 なお、「(b)iToF点群&LiDAR点群領域192」は、ロボット10の走行ルートを決定するために利用される重要性の高い領域である。
  (ステップS326)
 ステップS325において、iToFカメラ検出値に基づく点群(3次元点群)と、LiDAR検出値に基づく点群(2次元点群)を合成した合成点群マップ、例えば図23に示すような合成点群マップが生成されると、次に、情報処理装置はステップS326の処理を実行する。
 すなわち、ステップS326において、ステップS325で生成した合成点群マップを利用して、ロボット10の移動制御を実行する。
 この処理は、図11に示すロボット制御部201が実行する処理である。
 ロボット制御部201は、iToFカメラ検出値に基づく点群(3次元点群)と、LiDAR検出値に基づく点群(2次元点群)を合成した合成点群マップ、例えば図23に示すような合成点群マップを参照して、オブジェクト(障害物)に衝突や接触しない安全な走行ルートを設定して走行するための走行制御を行う。
 なお、ロボット制御部201は、走行ルートの決定処理に利用する点群データは、主に、図23に示合成点群マップ中の「(b)iToF点群&LiDAR点群領域192」である。
 前述したように、「(b)iToF点群&LiDAR点群領域192」は、LiDAR点群(2次元平面上の点群)に加え、iToFカメラの検出値に基づいて生成されるiToF点群(3次元点群)も設定されており、より高精度なオブジェクト位置、距離情報の解析が可能であり、安全、確実な走行ルートの設定を行うことができる。
  (ステップS327)
 次に、情報処理装置100は、ステップS327において、ロボット10が目的地に到着したか否かを判定し、目的地に到着した場合は、マップ生成処理や走行処理を完了する。
 目的地に到着していない場合は、ステップS302に戻り、ステップS302以下の処理を繰り返す。
 次に、ステップS321の判定ステップにおいてNoの判定がなされた場合、すなわち、移動体であるロボット10の速度(v)が速度しきい値(Vth)以上でないと判定された場合のステップS341以下の処理について、図35以下に示すフローを参照して説明する。
  (ステップS341)
 ステップS321において、ロボット10の速度(v)が速度しきい値(Vth)以上でないと判定された場合、情報処理装置100は、ステップS341において、ロボット10の進行方向に人や対向車が検出されたか否かを判定する。
 この処理は、例えば図11に示す情報処理装置100の制御部132が実行する処理である。
 制御部132は、例えばLiDAR点群マップに基づいて検出されたオブジェクトについてオブジェクト形状解析を行い、これらのオブジェクトが人や対向車であるか否かを判定する。あるいは図11には示していないRGBカメラの撮影画像を入力して、オブジォクト識別処理を行ってもよい。
 ロボット10の進行方向に人や対向車が検出されたと判定した場合は、ステップS342に進む。
 一方、ロボット10の進行方向に人や対向車が検出されないと判定した場合は、ステップS361に進む。
  (ステップS342)
 ステップS341の判定処理において、ロボット10の進行方向に人や対向車が検出されたと判定した場合は、情報処理装置100は、ステップS342において、iToFカメラ120の出力光の強度を低下させるための強度制御パラメータを算出する。すなわち、iToFカメラ120の光送信部122が出力する光の強度を低下させるための強度制御パラメータを算出する。
 この処理は、図11に示す情報処理装置100の制御部132が実行する。
 このステップS342の処理は、先に説明した実施例4対応のフローチャートである図31に示すフローチャートのステップS244の処理に対応する処理である。すなわち、先に説明した図32に示すグラフに対応する関数に基づいて出力光強度制御パラメータを算出する。具体的には、以下の式(式7)に従って、出力光強度制御パラメータ(Po)を算出する。
  Po=m×v+n・・・(式7)
 ただし、
 Po:強度制御パラメータであり、iToFカメラ120から出力する光の強度(Watt)
 m:補正係数(速度対応の感度)
 n:オフセット(速度最小値(v=0)における光出力強度(watt))
 である。
 このステップS342の処理は、ロボット10の進行方向に人や対向車が検出されたと判定した場合の処理であり、上記式(式7)に従って、iToFカメラ120の出力光の強度を、例えば基準強出力光強度(X(Watt))より低下させる出力光強度制御パラメータを算出する。
 このようにiToFカメラ120の出力光の強度を低下させるのは、ロボット10の進行方向にいる人や対向車の迷惑にならないようにするための処理である。
  (ステップS343)
 次に、情報処理装置100は、ステップS343において、iToFカメラ120の露光時間を長くするための露光制御パラメータを算出する。
 このステップS343の処理は、先に説明した実施例3対応のフローチャートである図29に示すフローチャートのステップS223の処理に対応する処理である。すなわち、先に説明した図30に示すグラフに対応する関数に基づいて露光時間制御パラメータを算出する。具体的には、以下の式(式5)に従って、露光時間制御パラメータ(tint)を算出する。
 tint=s×v+toffset・・・(式5)
 ただし、
 tint:露光時間制御パラメータであり、iToFカメラ120の光受信部124の露光時間(μsec)
 s:補正係数(速度対応の感度)
 v:ロボットの速度(m/s)
 toffset:オフセット(速度最小値(v=0)における露光時間(μsec))
 である。
 このステップS343の処理は、ロボット10の進行方向に人や対向車が検出されたと判定し、ステップS342においてiToFカメラ120の出力光の強度を低下させる出力光強度制御を実行する場合の処理であり、出力光の強度低下に伴い、iToFカメラの受信光の感度が低下するのを補うために露光時間を長くする処理を行うものである。
  (ステップS344)
 次に、情報処理装置100は、ステップS344において、ステップS342で算出した強度制御パラメータに基づいて決定される強度を有する出力光をiToFカメラ120から出力する。
 この処理は、iToFカメラ120の出力光生成部121と、光送信部122において実行される。
  (ステップS345)
 次に、情報処理装置100は、ステップS345において、ステップS343で算出した露光時間制御パラメータに基づいて決定される露光時間をiToFカメラ120の光受信部124の露光時間として設定する。
 この処理は、iToFカメラ120の露光時間制御部123と、光受信部124において実行される。
  (ステップS346)
 次に、情報処理装置100は、ステップS346において、iToFカメラ検出値に基づくオブジェクト距離算出処理、およびiToF点群マップ生成処理を実行する。
 この処理は、図11に示す情報処理装置100のiToF点群マップ生成部126が実行する処理である。
 iToF点群マップ生成部126は、iToFカメラ120の光受信部124の受信信号を、信号処理部(ローパスフィルタ)125を介して入力し、この入力値に基づいて、オブジェクト距離算出処理、および3次元点群生成処理を実行して、iToF点群マップを生成する。
  (ステップS347)
 次に、情報処理装置100は、ステップS347において、合成点群マップを生成する。
 すなわち、ステップS346においてiToFカメラ検出値に基づいて生成されたiToF点群マップと、ステップS303においてLiDAR検出値に基づいて生成されたLiDAR点群マップを合成した合成点群マップを生成する。
 この処理は、図11に示す情報処理装置100の点群マップ合成部131が実行する処理である。
 点群マップ合成部131が生成する合成点群マップの具体例は、先に図23を参照して説明した通りである。
 図23に示すように、点群マップ合成部131が生成する合成点群マップは、ロボット10に近い側から、以下の各点群領域が設定された構成となる。
 (a)LiDAR点群領域191
 (b)iToF点群&LiDAR点群領域192
 (c)LiDAR点群領域193
 ロボット10は、「(b)iToF点群&LiDAR点群領域192」から、より高精度なオブジェクト位置、距離情報を取得することが可能となる。
 なお、「(b)iToF点群&LiDAR点群領域192」は、ロボット10の走行ルートを決定するために利用される重要性の高い領域である。
  (ステップS348)
 ステップS347において、iToFカメラ検出値に基づく点群(3次元点群)と、LiDAR検出値に基づく点群(2次元点群)を合成した合成点群マップ、例えば図23に示すような合成点群マップが生成されると、次に、情報処理装置はステップS348の処理を実行する。
 すなわち、ステップS348において、ステップS347で生成した合成点群マップを利用して、ロボット10の移動制御を実行する。
 この処理は、図11に示すロボット制御部201が実行する処理である。
 ロボット制御部201は、iToFカメラ検出値に基づく点群(3次元点群)と、LiDAR検出値に基づく点群(2次元点群)を合成した合成点群マップ、例えば図23に示すような合成点群マップを参照して、オブジェクト(障害物)に衝突や接触しない安全な走行ルートを設定して走行するための走行制御を行う。
 なお、ロボット制御部201は、走行ルートの決定処理に利用する点群データは、主に、図23に示合成点群マップ中の「(b)iToF点群&LiDAR点群領域192」である。
 前述したように、「(b)iToF点群&LiDAR点群領域192」は、LiDAR点群(2次元平面上の点群)に加え、iToFカメラの検出値に基づいて生成されるiToF点群(3次元点群)も設定されており、より高精度なオブジェクト位置、距離情報の解析が可能であり、安全、確実な走行ルートの設定を行うことができる。
  (ステップS349)
 次に、情報処理装置100は、ステップS349において、ロボット10が目的地に到着したか否かを判定し、目的地に到着した場合は、マップ生成処理や走行処理を完了する。
 目的地に到着していない場合は、ステップS302に戻り、ステップS302以下の処理を繰り返す。
 次に、ステップS341の判定ステップにおいてNoの判定がなされた場合、すなわち、移動体であるロボット10の進行方向に人や対向車が検出されなかった場合のステップS361以下の処理について、図36に示すフローを参照して説明する。
  (ステップS361)
 ステップS341の判定ステップにおいてNoの判定がなされた場合、すなわち、移動体であるロボット10の進行方向に人や対向車が検出されなかった場合、情報処理装置100は、ステップS361以下の処理を実行する。
 この場合、情報処理装置100は、ステップS361において、iToFカメラ120の出力光の強度を上昇させるための強度制御パラメータを算出する。すなわち、iToFカメラ120の光送信部122が出力する光の強度を上昇させるための強度制御パラメータを算出する。
 この処理は、図11に示す情報処理装置100の制御部132が実行する。
 このステップS361の処理は、先に説明した実施例4対応のフローチャートである図31に示すフローチャートのステップS243の処理に対応する処理である。すなわち、先に説明した図32に示すグラフに対応する関数に基づいて出力光強度制御パラメータを算出する。具体的には、以下の式(式7)に従って、出力光強度制御パラメータ(Po)を算出する。
  Po=m×v+n・・・(式7)
 ただし、
 Po:強度制御パラメータであり、iToFカメラ120から出力する光の強度(Watt)
 m:補正係数(速度対応の感度)
 n:オフセット(速度最小値(v=0)における光出力強度(watt))
 である。
 このステップS361の処理は、ロボット10の進行方向に人や対向車が検出されなかったと判定した場合の処理であり、上記式(式7)に従って、iToFカメラ120の出力光の強度を、例えば基準強出力光強度(X(Watt))より上昇させる出力光強度制御パラメータを算出する。
 このようにiToFカメラ120の出力光の強度を上昇させても、ロボット10の進行方向に人や対向車が存在せず、迷惑になることがないためであり、この場合、より遠いオブジェクトの距離を高精度に算出可能とするための処理である。
  (ステップS362)
 次に、情報処理装置100は、ステップS362において、iToFカメラ120の露光時間を短くするための露光制御パラメータを算出する。
 このステップS362の処理は、先に説明した実施例3対応のフローチャートである図29に示すフローチャートのステップS224の処理に対応する処理である。すなわち、先に説明した図30に示すグラフに対応する関数に基づいて露光時間制御パラメータを算出する。具体的には、以下の式(式5)に従って、露光時間制御パラメータ(tint)を算出する。
 tint=s×v+toffset・・・(式5)
 ただし、
 tint:露光時間制御パラメータであり、iToFカメラ120の光受信部124の露光時間(μsec)
 s:補正係数(速度対応の感度)
 v:ロボットの速度(m/s)
 toffset:オフセット(速度最小値(v=0)における露光時間(μsec))
 である。
 このステップS362の処理は、ロボット10の進行方向に人や対向車が検出されなかったとの判定の下、ステップS361においてiToFカメラ120の出力光の強度を上昇させる出力光強度制御を実行した場合の処理であり、出力光の強度上昇に伴い、iToFカメラの受信光の強度が過度に上昇するのを防ぐために露光時間を短くする処理を行うものである。
  (ステップS363)
 次に、情報処理装置100は、ステップS363において、ステップS361で算出した強度制御パラメータに基づいて決定される強度を有する出力光をiToFカメラ120から出力する。
 この処理は、iToFカメラ120の出力光生成部121と、光送信部122において実行される。
  (ステップS364)
 次に、情報処理装置100は、ステップS364において、ステップS362で算出した露光時間制御パラメータに基づいて決定される露光時間をiToFカメラ120の光受信部124の露光時間として設定する。
 この処理は、iToFカメラ120の露光時間制御部123と、光受信部124において実行される。
  (ステップS365)
 次に、情報処理装置100は、ステップS365において、iToFカメラ検出値に基づくオブジェクト距離算出処理、およびiToF点群マップ生成処理を実行する。
 この処理は、図11に示す情報処理装置100のiToF点群マップ生成部126が実行する処理である。
 iToF点群マップ生成部126は、iToFカメラ120の光受信部124の受信信号を、信号処理部(ローパスフィルタ)125を介して入力し、この入力値に基づいて、オブジェクト距離算出処理、および3次元点群生成処理を実行して、iToF点群マップを生成する。
  (ステップS366)
 次に、情報処理装置100は、ステップS366において、合成点群マップを生成する。
 すなわち、ステップS365においてiToFカメラ検出値に基づいて生成されたiToF点群マップと、ステップS303においてLiDAR検出値に基づいて生成されたLiDAR点群マップを合成した合成点群マップを生成する。
 この処理は、図11に示す情報処理装置100の点群マップ合成部131が実行する処理である。
 点群マップ合成部131が生成する合成点群マップの具体例は、先に図23を参照して説明した通りである。
 図23に示すように、点群マップ合成部131が生成する合成点群マップは、ロボット10に近い側から、以下の各点群領域が設定された構成となる。
 (a)LiDAR点群領域191
 (b)iToF点群&LiDAR点群領域192
 (c)LiDAR点群領域193
 ロボット10は、「(b)iToF点群&LiDAR点群領域192」から、より高精度なオブジェクト位置、距離情報を取得することが可能となる。
 なお、「(b)iToF点群&LiDAR点群領域192」は、ロボット10の走行ルートを決定するために利用される重要性の高い領域である。
  (ステップS367)
 ステップS366において、iToFカメラ検出値に基づく点群(3次元点群)と、LiDAR検出値に基づく点群(2次元点群)を合成した合成点群マップ、例えば図23に示すような合成点群マップが生成されると、次に、情報処理装置はステップS367の処理を実行する。
 すなわち、ステップS367において、ステップS366で生成した合成点群マップを利用して、ロボット10の移動制御を実行する。
 この処理は、図11に示すロボット制御部201が実行する処理である。
 ロボット制御部201は、iToFカメラ検出値に基づく点群(3次元点群)と、LiDAR検出値に基づく点群(2次元点群)を合成した合成点群マップ、例えば図23に示すような合成点群マップを参照して、オブジェクト(障害物)に衝突や接触しない安全な走行ルートを設定して走行するための走行制御を行う。
 なお、ロボット制御部201は、走行ルートの決定処理に利用する点群データは、主に、図23に示合成点群マップ中の「(b)iToF点群&LiDAR点群領域192」である。
 前述したように、「(b)iToF点群&LiDAR点群領域192」は、LiDAR点群(2次元平面上の点群)に加え、iToFカメラの検出値に基づいて生成されるiToF点群(3次元点群)も設定されており、より高精度なオブジェクト位置、距離情報の解析が可能であり、安全、確実な走行ルートの設定を行うことができる。
  (ステップS368)
 次に、情報処理装置100は、ステップS368において、ロボット10が目的地に到着したか否かを判定し、目的地に到着した場合は、マップ生成処理や走行処理を完了する。
 目的地に到着していない場合は、ステップS302に戻り、ステップS302以下の処理を繰り返す。
 以上、図33~図36に示すフローチャートを参照して説明した実施例5の処理は、先に説明した実施例1~4、すなわち、
 (実施例1)iToF点群カット領域制御パラメータの算出処理と、算出パラメータに基づく処理
 (実施例2)iToFカメラ出力光周波数制御パラメータの算出処理と、算出パラメータに基づく処理
 (実施例3)iToFカメラ露光時間制御パラメータの算出処理と、算出パラメータに基づく処理
 (実施例4)iToFカメラ出力光強度制御パラメータの算出処理と、算出パラメータに基づく処理
 これらの実施例1~4を組み合わせた処理を実行するシーケンスである。
 この処理によって、ロボットの速度や、ロボット進行方向の所定距離内の人や対向車両の有無に応じた最適なiToFカメラ制御や、点群マップ生成処理を尾込なうことが可能となり、状況に応じた最適なオブジェクト距離算出処理を行うことが可能となる。
  [5.情報処理装置のハードウェア構成例について]
 次に、図37を参照して、本開示の情報処理装置100のハードウェア構成例について説明する。
 図37に示すハードウェア構成は、本開示の情報処理装置100として適用可能なハードウェア構成の一例を示すものである。
 図37に示すハードウェアの各構成について説明する。
 CPU(Central Processing Unit)301は、ROM(Read Only Memory)302、または記憶部308に記憶されているプログラムに従って各種の処理を実行する制御部等のデータ処理部として機能する。例えば、上述した実施例において説明したシーケンスに従った処理を実行する。RAM(Random Access Memory)303には、CPU301が実行するプログラムやデータなどが記憶される。これらのCPU301、ROM302、およびRAM303は、バス304により相互に接続されている。
 CPU301はバス304を介して入出力インタフェース305に接続され、入出力インタフェース305には、例えば、各種スイッチ、タッチパネル、マイクロホンなどよりなる入力部306、ディスプレイ、スピーカなどよりなる出力部307が接続されている。
 また、入力部306、出力部307には、iToFカメラ、LiDAR、RGBカメラ等の様々なセンサ321が接続され、出力部307を介する光出力処理、入力部306を介するセンサ321の検出値の入力処理などが行われる。
 入出力インタフェース305に接続されている記憶部308は、例えばハードディスク等からなり、CPU301が実行するプログラムや各種のデータを記憶する。通信部309は、インターネットやローカルエリアネットワークなどのネットワークを介したデータ通信の送受信部として機能し、外部の装置と通信する。
 入出力インタフェース305に接続されているドライブ310は、磁気ディスク、光ディスク、光磁気ディスク、あるいはメモリカード等の半導体メモリなどのリムーバブルメディア311を駆動し、データの記録あるいは読み取りを実行する。
  [6.本開示の構成のまとめ]
 以上、特定の実施例を参照しながら、本開示の実施例について詳解してきた。しかしながら、本開示の要旨を逸脱しない範囲で当業者が実施例の修正や代用を成し得ることは自明である。すなわち、例示という形態で本発明を開示してきたのであり、限定的に解釈されるべきではない。本開示の要旨を判断するためには、特許請求の範囲の欄を参酌すべきである。
 なお、本明細書において開示した技術は、以下のような構成をとることができる。
 (1) 移動体に装着されたセンサであり、光送信部から所定周波数の光を出力して、オブジェクトによる反射光を、光受信部を介して入力するセンサと、
 前記センサの検出値を入力して、オブジェクト位置を示す点群マップを生成する点群マップ生成部と、
 前記センサ、または前記点群マップ生成部の少なくともいずれかに対する制御を実行する制御部を有し、
 前記制御部は、
 前記センサの出力光の周波数、または強度、または前記センサの入力光の露光時間、または、前記点群マップ生成部が生成する点群マップ中の点群カット領域の少なくともいずれかを、前記移動体の速度に応じて変更する制御を行う情報処理装置。
 (2) 前記制御部は、
 前記移動体の速度が規定しきい値以上である場合、前記点群マップ生成部が生成する点群マップ中の点群カット領域を拡大する制御を実行する(1)に記載の情報処理装置。
 (3) 前記制御部は、
 前記移動体の速度が規定しきい値以未満である場合、前記点群マップ生成部が生成する点群マップ中の点群カット領域を縮小、または固定する制御を実行する(1)または(2)に記載の情報処理装置。
 (4) 前記点群カット領域は、
 前記移動体に近い近距離領域に設定される領域であり、オブジェクト解析結果に基づく走行ルートが決定済みの領域である(1)~(3)いずれかに記載の情報処理装置。
 (5) 前記センサはiToF(indirect Time of Flight)カメラであり、
 前記制御部は、
 前記移動体の速度が規定しきい値以上である場合、前記iToFカメラの出力光の周波数を低下させる制御を実行する(1)~(4)いずれかに記載の情報処理装置。
 (6) 前記センサはiToFカメラであり、
 前記制御部は、
 前記移動体の速度が規定しきい値未満である場合、前記iToFカメラの出力光の周波数を上昇させる制御、または固定する制御を実行する(1)~(5)いずれかに記載の情報処理装置。
 (7) 前記センサはiToFカメラであり、
 前記制御部は、
 前記移動体の速度が規定しきい値以上である場合、前記iToFカメラの出力光の強度を上昇させる制御を実行する(1)~(6)いずれかに記載の情報処理装置。
 (8) 前記センサはiToFカメラであり、
 前記制御部は、
 前記移動体の速度が規定しきい値未満である場合、前記iToFカメラの出力光の強度を低下させる制御、または固定する制御を実行する(1)~(7)いずれかに記載の情報処理装置。
 (9) 前記センサはiToFカメラであり、
 前記制御部は、
 前記移動体の速度が規定しきい値以上である場合、前記iToFカメラの入力光の露光時間を長くする制御を実行する(1)~(8)いずれかに記載の情報処理装置。
 (10) 前記センサはiToFカメラであり、
 前記制御部は、
 前記移動体の速度が規定しきい値未満である場合、前記iToFカメラの入力光の露光時間を短くする制御、または固定する制御を実行する(1)~(9)いずれかに記載の情報処理装置。
 (11) 前記センサはiToF(indirect Time of Flight)カメラと、
 LiDAR(Light Detection and Ranging)を含み、
 前記点群マップ生成部は、
 前記iToFカメラの検出値を入力して、オブジェクト位置を示すiToF点群マップを生成するiToF点群マップ生成部と、
 前記LiDARの検出値を入力して、オブジェクト位置を示すLiDAR点群マップを生成するLiDAR点群マップ生成部と、
 前記iToF点群マップと、前記LiDAR点群マップを合成した合成点群マップを生成する点群マップ合成部を有する構成である(1)~(10)いずれかに記載の情報処理装置。
 (12) 前記LiDARは、2次元平面上のオブジェクト検出を実行する2D-LiDARであり、
 前記LiDAR点群マップ生成部は、2次元平面上のオブジェクト位置を示すLiDAR点群マップを生成し、
 前記点群マップ合成部は、
 3次元空間上のオブジェクト位置を示すiToF点群マップと、2次元平面上のオブジェクト位置を示すLiDAR点群マップを合成した合成点群マップを生成する(11)に記載の情報処理装置。
 (13) 前記制御部は、
 前記iToF点群マップ生成部が生成するiToF点群マップに対してのみ点群カット領域を設定し、
 前記点群マップ合成部は、
 点群カット領域を有するiToF点群マップと、点群カット領域を含まないLiDAR点群マップを合成した合成点群マップを生成する(11)または(12)に記載の情報処理装置。
 (14) 前記制御部は、
 前記移動体から規定しきい値距離内に人、または対向車が検出されない場合、
 前記センサの出力光の強度を上昇させる制御を実行し、
 前記移動体から規定しきい値距離内に人、または対向車が検出された場合、
 前記センサの出力光の強度を低下させる制御を実行する(1)~(13)いずれかに記載の情報処理装置。
 (15) 前記制御部は、
 前記センサの出力光の強度を上昇させる制御を実行した場合、
 前記センサの入力光の露光時間を短くする制御を併せて実行する(14)に記載の情報処理装置。
 (16) 前記制御部は、
 前記センサの出力光の強度を低下させる制御を実行した場合、
 前記センサの入力光の露光時間を長くする制御を併せて実行する(14)または(15)に記載の情報処理装置。
 (17) 情報処理装置において実行する情報処理方法であり、
 前記情報処理装置は、
 移動体に装着されたセンサであり、光送信部から所定周波数の光を出力して、オブジェクトによる反射光を、光受信部を介して入力するセンサと、
 前記センサの検出値を入力して、オブジェクト位置を示す点群マップを生成する点群マップ生成部と、
 前記センサ、または前記点群マップ生成部の少なくともいずれかに対する制御を実行する制御部を有し、
 前記制御部が、
 前記センサの出力光の周波数、または強度、または前記センサの入力光の露光時間、または、前記点群マップ生成部が生成する点群マップ中の点群カット領域の少なくともいずれかを、前記移動体の速度に応じて変更する制御を行う情報処理方法。
 (18) 情報処理装置において情報処理を実行させるプログラムであり、
 前記情報処理装置は、
 移動体に装着されたセンサであり、光送信部から所定周波数の光を出力して、オブジェクトによる反射光を、光受信部を介して入力するセンサと、
 前記センサの検出値を入力して、オブジェクト位置を示す点群マップを生成する点群マップ生成部と、
 前記センサ、または前記点群マップ生成部の少なくともいずれかに対する制御を実行する制御部を有し、
 前記プログラムは、前記制御部に、
 前記センサの出力光の周波数、または強度、または前記センサの入力光の露光時間、または、前記点群マップ生成部が生成する点群マップ中の点群カット領域の少なくともいずれかを、前記移動体の速度に応じて変更する制御を実行させるプログラム。
 なお、明細書中において説明した一連の処理はハードウェア、またはソフトウェア、あるいは両者の複合構成によって実行することが可能である。ソフトウェアによる処理を実行する場合は、処理シーケンスを記録したプログラムを、専用のハードウェアに組み込まれたコンピュータ内のメモリにインストールして実行させるか、あるいは、各種処理が実行可能な汎用コンピュータにプログラムをインストールして実行させることが可能である。例えば、プログラムは記録媒体に予め記録しておくことができる。記録媒体からコンピュータにインストールする他、LAN(Local Area Network)、インターネットといったネットワークを介してプログラムを受信し、内蔵するハードディスク等の記録媒体にインストールすることができる。
 また、明細書に記載された各種の処理は、記載に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。また、本明細書においてシステムとは、複数の装置の論理的集合構成であり、各構成の装置が同一筐体内にあるものには限らない。
 以上、説明したように、本開示の一実施例の構成によれば、光出力センサや、センサ検出情報に基づいて生成される点群マップを、移動体の速度に応じて制御して、移動体速度に応じた最適なオブジェクト検出を可能とした構成が実現される。
具体的には、例えば、移動体に装着され、光送信部から所定周波数の光を出力してオブジェクトによる反射光を、光受信部を介して入力するセンサと、センサ検出値を入力して、オブジェクト位置を示す点群マップを生成する点群マップ生成部と、センサ、または点群マップ生成部の少なくともいずれかを制御する制御部を有する。制御部はセンサの出力光の周波数、または強度、またはセンサの入力光の露光時間、または、点群マップ中の点群カット領域の少なくともいずれかを移動体速度に応じて変更する制御を行う。
 本構成により、光出力センサや、センサ検出情報に基づいて生成される点群マップを、移動体の速度に応じて制御して、移動体速度に応じた最適なオブジェクト検出を可能とした構成が実現される。
  10 ロボット(移動体)
  20 カメラ
  21 RGBカメラ
  22 iToFカメラ
  30 LiDAR
 100 情報処理装置
 101 速度センサ
 102 信号処理部(ローパスフィルタ)
 103 2D-LiDAR
 104 信号処理部(ローパスフィルタ)
 105 LiDAR点群マップ生成部
 120 iToFカメラ
 121 出力光生成部
 122 光送信部
 123 露光時間制御部
 124 光受信部(イメージセンサ)
 125 信号処理部(ローパスフィルタ)
 126 iToFマップ生成部
 131 点群マップ合成部
 132 制御部
 141 オブジェクト(障害物)解析対象領域
 142 オブジェクト(障害物)解析非対象領域
 151 2次元平面
 171,174 点群カット領域
 172 点群カット煕俊距離
 173,175 iToF点群生成領域
 177 iToF点群領域
 178 LiDAR点群領域
 181 LiDAR点群領域
 182 iToF点群&LiDAR点群領域
 183 LiDAR点群領域
 191 LiDAR点群領域
 192 iToF点群&LiDAR点群領域
 193 LiDAR点群領域
 301 CPU
 302 ROM
 303 RAM
 304 バス
 305 入出力インタフェース
 306 入力部
 307 出力部
 308 記憶部
 309 通信部
 310 ドライブ
 311 リムーバブルメディア
 321 センサ

Claims (18)

  1.  移動体に装着されたセンサであり、光送信部から所定周波数の光を出力して、オブジェクトによる反射光を、光受信部を介して入力するセンサと、
     前記センサの検出値を入力して、オブジェクト位置を示す点群マップを生成する点群マップ生成部と、
     前記センサ、または前記点群マップ生成部の少なくともいずれかに対する制御を実行する制御部を有し、
     前記制御部は、
     前記センサの出力光の周波数、または強度、または前記センサの入力光の露光時間、または、前記点群マップ生成部が生成する点群マップ中の点群カット領域の少なくともいずれかを、前記移動体の速度に応じて変更する制御を行う情報処理装置。
  2.  前記制御部は、
     前記移動体の速度が規定しきい値以上である場合、前記点群マップ生成部が生成する点群マップ中の点群カット領域を拡大する制御を実行する請求項1に記載の情報処理装置。
  3.  前記制御部は、
     前記移動体の速度が規定しきい値以未満である場合、前記点群マップ生成部が生成する点群マップ中の点群カット領域を縮小、または固定する制御を実行する請求項1に記載の情報処理装置。
  4.  前記点群カット領域は、
     前記移動体に近い近距離領域に設定される領域であり、オブジェクト解析結果に基づく走行ルートが決定済みの領域である請求項1に記載の情報処理装置。
  5.  前記センサはiToF(indirect Time of Flight)カメラであり、
     前記制御部は、
     前記移動体の速度が規定しきい値以上である場合、前記iToFカメラの出力光の周波数を低下させる制御を実行する請求項1に記載の情報処理装置。
  6.  前記センサはiToFカメラであり、
     前記制御部は、
     前記移動体の速度が規定しきい値未満である場合、前記iToFカメラの出力光の周波数を上昇させる制御、または固定する制御を実行する請求項1に記載の情報処理装置。
  7.  前記センサはiToFカメラであり、
     前記制御部は、
     前記移動体の速度が規定しきい値以上である場合、前記iToFカメラの出力光の強度を上昇させる制御を実行する請求項1に記載の情報処理装置。
  8.  前記センサはiToFカメラであり、
     前記制御部は、
     前記移動体の速度が規定しきい値未満である場合、前記iToFカメラの出力光の強度を低下させる制御、または固定する制御を実行する請求項1に記載の情報処理装置。
  9.  前記センサはiToFカメラであり、
     前記制御部は、
     前記移動体の速度が規定しきい値以上である場合、前記iToFカメラの入力光の露光時間を長くする制御を実行する請求項1に記載の情報処理装置。
  10.  前記センサはiToFカメラであり、
     前記制御部は、
     前記移動体の速度が規定しきい値未満である場合、前記iToFカメラの入力光の露光時間を短くする制御、または固定する制御を実行する請求項1に記載の情報処理装置。
  11.  前記センサはiToF(indirect Time of Flight)カメラと、
     LiDAR(Light Detection and Ranging)を含み、
     前記点群マップ生成部は、
     前記iToFカメラの検出値を入力して、オブジェクト位置を示すiToF点群マップを生成するiToF点群マップ生成部と、
     前記LiDARの検出値を入力して、オブジェクト位置を示すLiDAR点群マップを生成するLiDAR点群マップ生成部と、
     前記iToF点群マップと、前記LiDAR点群マップを合成した合成点群マップを生成する点群マップ合成部を有する構成である請求項1に記載の情報処理装置。
  12.  前記LiDARは、2次元平面上のオブジェクト検出を実行する2D-LiDARであり、
     前記LiDAR点群マップ生成部は、2次元平面上のオブジェクト位置を示すLiDAR点群マップを生成し、
     前記点群マップ合成部は、
     3次元空間上のオブジェクト位置を示すiToF点群マップと、2次元平面上のオブジェクト位置を示すLiDAR点群マップを合成した合成点群マップを生成する請求項11に記載の情報処理装置。
  13.  前記制御部は、
     前記iToF点群マップ生成部が生成するiToF点群マップに対してのみ点群カット領域を設定し、
     前記点群マップ合成部は、
     点群カット領域を有するiToF点群マップと、点群カット領域を含まないLiDAR点群マップを合成した合成点群マップを生成する請求項11に記載の情報処理装置。
  14.  前記制御部は、
     前記移動体から規定しきい値距離内に人、または対向車が検出されない場合、
     前記センサの出力光の強度を上昇させる制御を実行し、
     前記移動体から規定しきい値距離内に人、または対向車が検出された場合、
     前記センサの出力光の強度を低下させる制御を実行する請求項1に記載の情報処理装置。
  15.  前記制御部は、
     前記センサの出力光の強度を上昇させる制御を実行した場合、
     前記センサの入力光の露光時間を短くする制御を併せて実行する請求項14に記載の情報処理装置。
  16.  前記制御部は、
     前記センサの出力光の強度を低下させる制御を実行した場合、
     前記センサの入力光の露光時間を長くする制御を併せて実行する請求項14に記載の情報処理装置。
  17.  情報処理装置において実行する情報処理方法であり、
     前記情報処理装置は、
     移動体に装着されたセンサであり、光送信部から所定周波数の光を出力して、オブジェクトによる反射光を、光受信部を介して入力するセンサと、
     前記センサの検出値を入力して、オブジェクト位置を示す点群マップを生成する点群マップ生成部と、
     前記センサ、または前記点群マップ生成部の少なくともいずれかに対する制御を実行する制御部を有し、
     前記制御部が、
     前記センサの出力光の周波数、または強度、または前記センサの入力光の露光時間、または、前記点群マップ生成部が生成する点群マップ中の点群カット領域の少なくともいずれかを、前記移動体の速度に応じて変更する制御を行う情報処理方法。
  18.  情報処理装置において情報処理を実行させるプログラムであり、
     前記情報処理装置は、
     移動体に装着されたセンサであり、光送信部から所定周波数の光を出力して、オブジェクトによる反射光を、光受信部を介して入力するセンサと、
     前記センサの検出値を入力して、オブジェクト位置を示す点群マップを生成する点群マップ生成部と、
     前記センサ、または前記点群マップ生成部の少なくともいずれかに対する制御を実行する制御部を有し、
     前記プログラムは、前記制御部に、
     前記センサの出力光の周波数、または強度、または前記センサの入力光の露光時間、または、前記点群マップ生成部が生成する点群マップ中の点群カット領域の少なくともいずれかを、前記移動体の速度に応じて変更する制御を実行させるプログラム。
PCT/JP2023/032318 2022-10-28 2023-09-05 情報処理装置、および情報処理方法、並びにプログラム WO2024090040A1 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2022-173018 2022-10-28
JP2022173018 2022-10-28

Publications (1)

Publication Number Publication Date
WO2024090040A1 true WO2024090040A1 (ja) 2024-05-02

Family

ID=90830425

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2023/032318 WO2024090040A1 (ja) 2022-10-28 2023-09-05 情報処理装置、および情報処理方法、並びにプログラム

Country Status (1)

Country Link
WO (1) WO2024090040A1 (ja)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09197045A (ja) * 1996-01-24 1997-07-31 Nissan Motor Co Ltd 車両用レーダ装置
JP2017181488A (ja) * 2016-03-23 2017-10-05 パナソニックIpマネジメント株式会社 距離画像生成装置、距離画像生成方法及びプログラム
WO2019230920A1 (ja) * 2018-06-01 2019-12-05 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 三次元データ符号化方法、三次元データ復号方法、三次元データ符号化装置、及び三次元データ復号装置
JP2021021671A (ja) * 2019-07-30 2021-02-18 日本電気通信システム株式会社 距離計測装置、システム、方法、及びプログラム
CN113256539A (zh) * 2021-07-01 2021-08-13 武汉市聚芯微电子有限责任公司 深度图像的去混叠方法、装置、设备及计算机存储介质
JP2022046162A (ja) * 2020-09-10 2022-03-23 トヨタ自動車株式会社 Tofセンサの制御装置
WO2022092571A1 (ko) * 2020-10-28 2022-05-05 삼성전자주식회사 로봇 청소기 및 그의 주행 방법

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09197045A (ja) * 1996-01-24 1997-07-31 Nissan Motor Co Ltd 車両用レーダ装置
JP2017181488A (ja) * 2016-03-23 2017-10-05 パナソニックIpマネジメント株式会社 距離画像生成装置、距離画像生成方法及びプログラム
WO2019230920A1 (ja) * 2018-06-01 2019-12-05 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 三次元データ符号化方法、三次元データ復号方法、三次元データ符号化装置、及び三次元データ復号装置
JP2021021671A (ja) * 2019-07-30 2021-02-18 日本電気通信システム株式会社 距離計測装置、システム、方法、及びプログラム
JP2022046162A (ja) * 2020-09-10 2022-03-23 トヨタ自動車株式会社 Tofセンサの制御装置
WO2022092571A1 (ko) * 2020-10-28 2022-05-05 삼성전자주식회사 로봇 청소기 및 그의 주행 방법
CN113256539A (zh) * 2021-07-01 2021-08-13 武汉市聚芯微电子有限责任公司 深度图像的去混叠方法、装置、设备及计算机存储介质

Similar Documents

Publication Publication Date Title
JP3838432B2 (ja) 測距装置
US7158217B2 (en) Vehicle radar device
US11579298B2 (en) Hybrid sensor and compact Lidar sensor
EP3702806A1 (en) Control device, control method, program, and storage medium
US20220011425A1 (en) Radar power control method and apparatus
JP6726673B2 (ja) 情報処理装置、情報処理方法、及び、プログラム
US11675062B2 (en) Context aware real-time power adjustment for steerable lidar
WO2022188279A1 (zh) 一种探测方法、装置和激光雷达
EP3432033B1 (en) Object detection device, object detection method, and program
JP2007248146A (ja) レーダ装置
JP3757937B2 (ja) 距離測定装置
JP2006258598A (ja) 車両用物体検知装置
JP6895741B2 (ja) 障害物検出装置と障害物検出方法
CN108061905A (zh) 一种路面状况探测方法及装置
WO2024090040A1 (ja) 情報処理装置、および情報処理方法、並びにプログラム
US20230065727A1 (en) Vehicle and vehicle control method
JP2002006040A (ja) 物体検知装置
Clarke et al. Sensor modelling for radar-based occupancy mapping
CN114545925A (zh) 一种复合机器人控制方法及复合机器人
CN110371136B (zh) 一种用于无人驾驶设备避障时速度控制的方法
WO2017037834A1 (ja) 情報処理装置、制御方法、プログラム及び記憶媒体
JP6267430B2 (ja) 移動体の環境地図生成制御装置、移動体、及び移動体の環境地図生成方法
JPH06148329A (ja) 車間距離検出装置
JP2010085293A (ja) 障害物検出方法及び装置
CN114859328B (zh) 一种mems扫描镜的停摆检测方法、装置及激光雷达

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 23882253

Country of ref document: EP

Kind code of ref document: A1