Slam device, slam attack countermeasure method, and slam attack countermeasure program
The SLAM device uses LiDAR and distance image camera maps to detect and counter SLAM attacks, ensuring safe navigation by switching to redundant sensor data when LiDAR is compromised, addressing vulnerabilities in autonomous systems.
Patent Information
- Application Number
- PCT/JP2024/000012
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-01-04
- Publication Date
- 2025-07-10
AI Technical Summary
Autonomous driving systems are vulnerable to SLAM attacks that can cause positioning errors leading to sudden acceleration or deceleration, compromising safety.
A SLAM device that integrates a LiDAR sensor and a distance image camera to generate separate maps, comparing these maps to detect potential attacks on the LiDAR sensor by analyzing differences and determining the presence of an attack through statistical methods.
Enables effective detection and mitigation of SLAM attacks, ensuring safe navigation by switching to redundant sensor data when LiDAR is compromised, thereby maintaining accurate positioning and movement control.
Smart Images

Figure JP2024000012_10072025_PF_FP_ABST
Abstract
Description
Slam device, slam attack countermeasure method and slam attack countermeasure program
[0001] The present disclosure relates to countermeasures against attacks on SLAM.
[0002] Autonomous driving systems use multiple sensors to achieve safe driving control of moving objects. These sensors measure the surroundings of the moving object while complementing each other's strengths and weaknesses. This use of multiple sensors is called sensor fusion.
[0003] SLAM is a technology that uses sensor data in autonomous driving systems. SLAM is a technology that simultaneously estimates the self-location of a moving object and generates an environmental map. By utilizing SLAM, a moving object can achieve safe driving even in an unfamiliar place. SLAM is an abbreviation for Simultaneous Localization and Mapping.
[0004] Under certain circumstances, attacks on autonomous driving systems via sensors can be carried out. For example, attacks can be carried out against SLAM, an application used in autonomous driving systems. SLAM attacks can cause the victim (a moving object) to erroneously determine its position, causing it to suddenly accelerate or decelerate.
[0005] Patent Document 1 discloses a technology to address the above problem. Specifically, Patent Document 1 discloses a SLAM interpolation technology that uses measurement data from LiDAR (lidar) and camera. This technology provides a countermeasure in the application against attacks that affect SLAM by performing synchronous spoofing on LiDAR and using the resulting data. LiDAR is an abbreviation for Light Detection and Ranging.
[0006] International Publication No. 2023-139793
[0007] The present disclosure aims to make it possible to determine whether or not an attack has occurred on a SLAM lidar sensor.
[0008] The slam device of the present disclosure includes a lidar slam unit that performs slam using measurement data obtained from a lidar sensor mounted on a mobile body and generates a lidar slam map, a camera slam unit that performs slam using measurement data obtained from a range image camera mounted on the mobile body and generates a camera slam map, and an attack determination unit that determines whether the lidar sensor has been attacked based on the difference between the lidar slam map and the camera slam map.
[0009] According to the present disclosure, it is possible to determine whether or not an attack has occurred on a SLAM lidar sensor.
[0010] FIG. 1 is a configuration diagram of a SLAM device 100 according to a first embodiment. FIG. 2 is a configuration diagram of a mobile body 200 according to the first embodiment. FIG. 3 is a functional configuration diagram of the SLAM device 100 according to the first embodiment. FIG. 4 is a flowchart of a SLAM attack countermeasure method according to the first embodiment. FIG. 5 is a diagram showing an example of the processing flow of the SLAM attack countermeasure method according to the first embodiment. FIG. 6 is a hardware configuration diagram of the SLAM device 100 according to the first embodiment.
[0011] In the embodiments and drawings, the same or corresponding elements are denoted by the same reference numerals. The description of elements denoted by the same reference numerals as those already described will be omitted or simplified as appropriate. Arrows in the drawings primarily indicate the flow of data or the flow of processing.
[0012] First Embodiment Countermeasures against SLAM attacks will be described with reference to FIGS.
[0013] *** Description of Configuration *** The configuration of the SLAM device 100 will be described with reference to Figure 1. The SLAM device 100 is a computer equipped with hardware such as a processor 101, memory 102, auxiliary storage device 103, and input / output interface 104. These pieces of hardware are connected to each other via signal lines.
[0014] The processor 101 is an IC that performs arithmetic processing and controls other hardware. For example, the processor 101 is a CPU. IC is an abbreviation for Integrated Circuit. CPU is an abbreviation for Central Processing Unit.
[0015] The memory 102 is a volatile or non-volatile storage device. The memory 102 is also called a primary storage device or a main memory. For example, the memory 102 is a RAM. Data stored in the memory 102 is saved in the secondary storage device 103 as needed. RAM is an abbreviation for Random Access Memory.
[0016] The auxiliary storage device 103 is a non-volatile storage device. For example, the auxiliary storage device 103 is a ROM, a HDD, a flash memory, or a combination of these. Data stored in the auxiliary storage device 103 is loaded into the memory 102 as needed. ROM is an abbreviation for Read Only Memory. HDD is an abbreviation for Hard Disk Drive.
[0017] The input / output interface 104 is a port to which an input device and an output device are connected. For example, a sensor group 210 and a control device 220 (described later) are connected to the input / output interface 104. USB is an abbreviation for Universal Serial Bus.
[0018] The SLAM device 100 includes elements such as a signal processing unit 110 and a control unit 120. These elements are realized by software.
[0019] The auxiliary storage device 103 stores a SLAM attack countermeasure program for causing the computer to function as the signal processing unit 110 and the control unit 120. The SLAM attack countermeasure program is loaded into the memory 102 and executed by the processor 101. The auxiliary storage device 103 also stores an OS. At least a portion of the OS is loaded into the memory 102 and executed by the processor 101. The processor 101 executes the SLAM attack countermeasure program while running the OS. OS is an abbreviation for Operating System.
[0020] Input and output data of the SLAM attack countermeasure program is stored in the storage unit 190. The memory 102 functions as the storage unit 190. However, a storage unit such as the auxiliary storage unit 103, a register in the processor 101, or a cache memory in the processor 101 may function as the storage unit 190 instead of or together with the memory 102.
[0021] The SLAM attack countermeasure program can be recorded (stored) in a computer-readable manner on a non-volatile recording medium such as an optical disk or flash memory.
[0022] The SLAM device 100 is mounted on a mobile object 200 that moves automatically using SLAM. Examples of the mobile object 200 include a self-driving vehicle, an autonomous mobile robot, and a drone.
[0023] The configuration of the mobile object 200 will be described with reference to Fig. 2. The mobile object 200 is equipped with the SLAM device 100, a sensor group 210, and a control device 220.
[0024] The sensor group 210 includes multiple types of sensors. The sensor group 210 includes a LiDAR sensor 211, a range imaging camera 212, and a satellite positioning sensor 213. The range imaging camera 212 is a camera that measures the distance to an object based on the time of flight (ToF) of a round trip of light such as infrared or visible light. The range imaging camera 212 can output image data including distance data. In other words, the range imaging camera 212 can perform odometry without requiring special point cloud processing. On the other hand, measuring distance using a normal camera requires additional information such as the amount of movement. The range imaging camera 212 is also called a range image sensor. The satellite positioning sensor 213 is a sensor that performs positioning using a satellite positioning system. An example of a satellite positioning system is the Global Positioning System (GPS). The sensor group 210 may include a LiDAR sensor 211, a range imaging camera 212, and a satellite positioning sensor 213, as well as radar, sonar, and the like.
[0025] The control device 220 is a computer that includes an element called a movement control unit 221. The movement control unit 221 controls the movement, stopping, direction change, etc. (movement control) of the moving body 200. Specifically, the movement control unit 221 controls the power unit and steering device of the moving body 200. Examples of the power unit are wheels and a motor. The power unit and steering device are not shown in the figure.
[0026] 3 shows the functional configuration of the SLAM device 100. The signal processing unit 110 includes elements such as a LiDAR SLAM unit 111, a camera SLAM unit 112, and an accuracy determination unit 113. The control unit 120 includes elements such as a comparison unit 121, an attack determination unit 122, an output unit 123, and a correction unit 124.
[0027] ***Description of Operation*** The operation procedure of the SLAM device 100 corresponds to a SLAM attack countermeasure method. Also, the operation procedure of the SLAM device 100 corresponds to a processing procedure by a SLAM attack countermeasure program.
[0028] A method for countering SLAM attacks will be described below. The LiDAR sensor 211 performs LiDAR measurement of the periphery of the mobile object 200 and outputs measurement data. The output measurement data is input to the LiDAR SLAM unit 111. The range imaging camera 212 performs ToF measurement of the periphery of the mobile object 200 and outputs measurement data. The output measurement data is input to the camera SLAM unit 112. The measurement time interval of the range imaging camera 212 is shorter than the measurement time interval of the LiDAR sensor 211, so that two or more measurement data from the range imaging camera 212 are obtained for one measurement data from the LiDAR sensor 211. The satellite positioning sensor 213 performs satellite positioning and outputs satellite positioning data. The output satellite positioning data is input to the accuracy determination unit 113.
[0029] The procedure of the SLAM attack countermeasure method will be described with reference to Fig. 4. The procedure of the SLAM attack countermeasure method is repeatedly executed.
[0030] In step S101, the LiDAR SLAM unit 111 executes SLAM using measurement data obtained from the LiDAR sensor 211.
[0031] In SLAM, point cloud processing and odometry are performed using measurement data. Point cloud processing is a process for generating a point cloud representing multiple measured locations (measurement points). Odometry is a method for deriving a position trajectory. Known methods can be used for odometry.
[0032] By executing SLAM, the position of the moving body 200 is estimated and a map of the surroundings of the moving body 200 is generated.
[0033] SLAM performed using measurement data from the LiDAR sensor 211 is referred to as LiDAR-based SLAM. A map generated by LiDAR-based SLAM is referred to as a LiDAR SLAM map or LiDAR-based SLAM map. A position estimated by LiDAR-based SLAM is referred to as a LiDAR SLAM position or LiDAR-based SLAM position.
[0034] The LiDAR SLAM unit 111 outputs LiDAR SLAM data, which indicates a LiDAR SLAM position and a LiDAR SLAM map. The output LiDAR SLAM data is input to the comparison unit 121.
[0035] In step S102, the accuracy determining unit 113 determines whether the positioning accuracy of the satellite positioning sensor 213 is poor, based on the satellite positioning data obtained from the satellite positioning sensor 213.
[0036] For example, the accuracy determination unit 113 determines whether the positioning accuracy of the satellite positioning sensor 213 is poor as follows: The satellite positioning data includes information indicating the number of captured satellites. The number of captured satellites is the number of captured positioning satellites. A captured positioning satellite is a positioning satellite that is the source of a positioning signal received by the satellite positioning sensor 213. For example, when the mobile body 200 enters a tunnel, the satellite positioning sensor 213 cannot capture a positioning satellite. If the number of captured satellites is small, the positioning accuracy of the satellite positioning sensor 213 is not maintained, and the positioning accuracy of the satellite positioning sensor 213 decreases. Alternatively, the position of the satellite positioning sensor 213 cannot be identified. The accuracy determination unit 113 determines whether the positioning accuracy of the satellite positioning sensor 213 is poor based on the number of captured satellites indicated in the satellite positioning data. If the number of captured satellites is small (if the number of captured satellites is less than a threshold), the accuracy determination unit 113 determines that the positioning accuracy of the satellite positioning sensor 213 is poor.
[0037] The accuracy determination unit 113 then outputs the determination result, which is input to the camera SLAM unit 112 and the comparison unit 121.
[0038] If it is determined that the positioning accuracy of the satellite positioning sensor 213 is not poor, the process proceeds to step S103. In this case, the LiDAR SLAM unit 111 may execute SLAM using the satellite positioning results to regenerate LiDAR SLAM data. This improves the accuracy of self-position estimation. The satellite positioning results indicate the position estimated by satellite positioning by the satellite positioning sensor 213 and are included in the satellite positioning data. The regenerated LiDAR SLAM data is input to the comparison unit 121.
[0039] In step S103, the comparison unit 121 receives the LiDAR SLAM data and the determination result that the accuracy of the satellite positioning sensor 213 is not poor, and outputs the LiDAR SLAM data. The output LiDAR SLAM data is input to the output unit 123. The output unit 123 receives the LiDAR SLAM data and outputs a LiDAR SLAM map. The output LiDAR SLAM map is input to the movement control unit 221.
[0040] The movement control unit 221 receives the LiDAR SLAM map and controls the movement of the moving body 200 using the LiDAR SLAM map.
[0041] After step S103, one procedure of the SLAM attack countermeasure method is completed.
[0042] If it is determined in step S102 that the positioning accuracy of the satellite positioning sensor 213 is poor, the process proceeds to step S111.
[0043] In step S111, the camera SLAM unit 112 receives the determination result that the positioning accuracy of the satellite positioning sensor 213 is poor, and controls the range imaging camera 212 to operate the range imaging camera 212.
[0044] Next, the camera SLAM unit 112 executes SLAM using the measurement data obtained from the range image camera 212.
[0045] SLAM performed using measurement data from the range imaging camera 212 is called camera-based SLAM. Because the range imaging camera 212 can measure images and distances, odometry can be achieved without the need for special point cloud processing. A map generated by camera-based SLAM is called a camera-SLAM map or camera-based SLAM map. A position estimated by camera-based SLAM is called a camera-SLAM position or camera-based SLAM position.
[0046] Next, the camera SLAM unit 112 outputs camera SLAM data, which indicates the camera SLAM position and the camera SLAM map. The output camera SLAM data is input to the comparison unit 121.
[0047] The camera SLAM unit 112 obtains two or more pieces of measurement data from the distance imaging camera 212 and outputs camera SLAM data for each piece of measurement data from the distance imaging camera 212.
[0048] Then, the camera SLAM unit 112 controls the distance image camera 212 to stop the distance image camera 212.
[0049] In step S112, the comparison unit 121 receives the LiDAR SLAM data, the camera SLAM data, and a determination result that the positioning accuracy of the satellite positioning sensor 213 is poor.
[0050] Next, the comparison unit 121 compares the LiDAR SLAM map with the camera SLAM map and calculates the difference between the LiDAR SLAM map and the camera SLAM map.
[0051] For example, the comparison unit 121 overlays the camera SLAM map on the LiDAR SLAM map and calculates the difference between the point clouds in the camera SLAM map and the LiDAR SLAM map. The calculated difference is the difference between the LiDAR SLAM map and the camera SLAM map.
[0052] For each piece of input camera SLAM data, the comparison unit 121 compares the LiDAR SLAM map with the camera SLAM map to calculate a difference. In other words, the comparison unit 121 compares one LiDAR SLAM map with each of two or more camera SLAM maps and calculates two or more differences corresponding to the two or more camera SLAM maps.
[0053] The comparison unit 121 may further compare the LiDAR SLAM position with the camera SLAM position and calculate the difference (trajectory) between the LiDAR SLAM position and the camera SLAM position.
[0054] The comparison unit 121 then outputs the LiDAR SLAM data, the camera SLAM data, and the difference data. The difference data indicates the calculated difference. The output data is input to the attack determination unit 122.
[0055] In step S113, the attack determination unit 122 receives the LiDAR SLAM data, the camera SLAM data, and the difference data.
[0056] Next, the attack determination unit 122 determines whether the LiDAR sensor 211 has been attacked based on the difference between the LiDAR SLAM map and the camera SLAM map.
[0057] For example, the attack determination unit 122 calculates two or more statistical values of differences corresponding to two or more camera SLAM maps. Then, the attack determination unit 122 uses the calculated statistical value to determine whether the LiDAR sensor 211 has been attacked. An example of the statistical value is the standard error. If the standard error is outside a predetermined range, the attack determination unit 122 determines that the LiDAR sensor 211 has been attacked. For example, if the standard error σ is −2.3 or less or 2.3σ or more, the attack determination unit 122 determines that the LiDAR sensor 211 has been attacked. The predetermined range is set appropriately depending on the performance of the LiDAR sensor 211 and the range image camera 212 or the type of the moving object 200.
[0058] The attack determination unit 122 may determine whether the LiDAR sensor 211 has been attacked based on the difference between the LiDAR SLAM map and the camera SLAM map, and the difference between the LiDAR SLAM position and the camera SLAM position.
[0059] If the LiDAR sensor 211 is attacked, it is believed that there is an anomaly in the LiDAR SLAM map.
[0060] If it is determined that the LiDAR sensor 211 has been attacked, the attack determination unit 122 outputs camera SLAM data. The output camera SLAM data is input to the output unit 123. In this case, the attack determination unit 122 further outputs LiDAR SLAM data. The output LiDAR SLAM data is input to the correction unit 124.
[0061] If the LiDAR sensor 211 determines that there is no attack, the attack determination unit 122 outputs LiDAR SLAM data. The output LiDAR SLAM data is input to the output unit 123.
[0062] If it is determined that the LiDAR sensor 211 is not under attack, processing proceeds to step S114.
[0063] In step S114, the output unit 123 receives the LiDAR SLAM data and outputs a LiDAR SLAM map. The output LiDAR SLAM map is input to the movement control unit 221.
[0064] The movement control unit 221 receives the LiDAR SLAM map and controls the movement of the moving body 200 using the LiDAR SLAM map.
[0065] After step S114, one procedure of the SLAM attack countermeasure method is completed.
[0066] If it is determined in step S113 that the LiDAR sensor 211 has been attacked, processing proceeds to step S121.
[0067] In step S121, the correction unit 124 receives the LiDAR SLAM data and corrects the LiDAR SLAM map.
[0068] Specifically, the correction unit 124 removes outlier points from the LiDAR SLAM map. Outliers are values that deviate from the standard error.
[0069] The corrected LiDAR SLAM map is considered to be a map created by LiDAR-based SLAM and is used for trajectory planning, determining surrounding conditions, etc. The correction unit 124 outputs the corrected LiDAR SLAM map. The output LiDAR SLAM map is input to the LiDAR SLAM unit 111, for example, and used in the next LiDAR-based SLAM.
[0070] In step S122, the output unit 123 receives the camera SLAM data and outputs the camera SLAM map. The output camera SLAM map is input to the movement control unit 221.
[0071] The movement control unit 221 receives the camera SLAM map and controls the movement of the moving body 200 using the camera SLAM map.
[0072] After step S122, one procedure of the SLAM attack countermeasure method is completed.
[0073] An example of the processing flow of the SLAM attack countermeasure method will be described with reference to Fig. 5. In this example, it is assumed that the positioning accuracy of the satellite positioning sensor 213 is poor.
[0074] The LiDAR sensor 211 transmits the measurement data, and the LiDAR SLAM unit 111 executes LiDAR-based SLAM and transmits the LiDAR SLAM map to the comparison unit 121 (step S101). Using LiDAR-based SLAM, the LiDAR sensor 211 generates a LiDAR SLAM map every 1 Hz, for example, and performs self-localization every 10 Hz. The LiDAR sensor 211 has a wide measurement range (approximately 100 meters), depending on the laser output. Therefore, a LiDAR SLAM map of a wide area can be generated. By performing high-speed self-localization and low-speed map generation separately, deviations in self-localization can be reduced, and time for feature extraction for map generation can be secured.
[0075] The range imaging camera 212 transmits the measurement data, and the camera SLAM unit 112 executes camera-based SLAM and transmits the camera SLAM map to the comparison unit 121 (step S103). Using camera-based SLAM, the camera SLAM unit 112 generates a camera SLAM map every 5 Hz, for example, and estimates its own position every 50 Hz. The range imaging camera 212 has a narrow measurement range (approximately a few meters). Therefore, a camera SLAM map of a narrow area is generated.
[0076] Generally, the frame rate (measurement time interval) of a range image sensor is higher than the frame rate of a LiDAR sensor. Therefore, a camera SLAM map can be generated with higher accuracy. Assume that the frame rate of the range image camera 212 is one-fifth of the frame rate of the LiDAR sensor 211. The comparison unit 121 compares one LiDAR SLAM map with five camera SLAM maps and transmits the difference data to the attack determination unit 122 (step S112). Note that the number of maps used for comparison can be changed by changing the respective frame rates.
[0077] The attack determination unit 122 determines whether the LiDAR sensor 211 has been attacked based on the difference data (step S113).
[0078] ***Effects of First Embodiment*** The first embodiment makes it possible to prevent jamming attacks on sensors and attacks that deceive sensor fusion.
[0079] In the first embodiment, the range imaging camera 212 operates when the positioning accuracy of the satellite positioning sensor 213 is low. This makes it possible to reduce the operation of unnecessary functions in normal conditions. The measurement data of the range imaging camera 212 can only be used within a narrow range, but has good measurement accuracy. When the positioning accuracy of the satellite positioning sensor 213 is low, the mobile object 200 is often in a narrow space such as inside a three-dimensional building or a tunnel. The condition that the mobile object 200 is in a narrow space is the optimum condition for using the range imaging camera 212. Therefore, even if the LiDAR sensor 211 is under attack, safe movement can be achieved using the camera SLAM map.
[0080] Supplementary Note to First Embodiment The SLAM device 100 estimates its own position and generates a map of the surrounding environment to safely move the mobile object 200. During normal movement (when not under attack), the SLAM device 100 estimates its own position using the LiDAR sensor 211 and the satellite positioning sensor 213. If the positioning accuracy of the satellite positioning sensor 213 decreases due to reasons such as an inability to capture satellites inside a tunnel, the range imaging camera 212 is used. The signal processing unit 110 executes SLAM using the measurement data from the LiDAR sensor 211 and the range imaging camera 212. Under normal circumstances, the signal processing unit 110 obtains measurement data (signals) only from the LiDAR sensor 211 and executes LiDAR-based SLAM using the measurement data from the LiDAR sensor 211. When measurement data is sent from the distance imaging camera 212, the signal processing unit 110 performs SLAM using both the measurement data from the LiDAR sensor 211 and the measurement data from the distance imaging camera 212, and performs data processing (signal processing) for comparison.
[0081] The procedure of the SLAM attack countermeasure method corresponds to a sensor fusion SLAM algorithm using a range imaging camera 212 and a LiDAR sensor 211. When the GPS positioning accuracy is poor, the signal processing unit 110 executes countermeasures using the range imaging camera 212. When the GPS positioning accuracy is poor, the control unit 120 performs corrections by comparing a wide-area map generated by LiDAR-based SLAM with a narrow-area map generated by camera-based SLAM. When the GPS positioning accuracy is poor, the SLAM device 100 performs sensor fusion signal processing, assigning high priority to the range imaging camera 212. Since no additional processing is required for the range imaging camera 212, it is easy to meet the implementation time requirements. The SLAM device 100 uses the range imaging camera 212. The range imaging camera 212 performs measurements using a pattern irradiation method with a frame rate 10 times faster than that of the LiDAR sensor 211. The control unit 120 compares one LiDAR-based SLAM map with five camera-based SLAM maps and performs attack detection through statistical processing.
[0082] The hardware configuration of the SLAM device 100 will be described with reference to Fig. 6. The SLAM device 100 includes a processing circuit 109. The processing circuit 109 is hardware that implements a signal processing unit 110 and a control unit 120. The processing circuit 109 may be dedicated hardware, or may be a processor 101 that executes a program stored in memory 102.
[0083] When the processing circuit 109 is dedicated hardware, the processing circuit 109 may be, for example, a single circuit, a multiple circuit, a programmed processor, a parallel programmed processor, an ASIC, an FPGA, or a combination thereof. ASIC is an abbreviation for Application Specific Integrated Circuit. FPGA is an abbreviation for Field Programmable Gate Array.
[0084] The SLAM device 100 may include multiple processing circuits replacing the processing circuit 109.
[0085] In the processing circuit 109, some functions may be realized by dedicated hardware, and the remaining functions may be realized by software or firmware.
[0086] In this way, the functions of the SLAM device 100 can be realized by hardware, software, firmware, or a combination of these.
[0087] The first embodiment is an example of a preferred embodiment and is not intended to limit the technical scope of the present disclosure. The first embodiment may be implemented in part or in combination with other embodiments. The procedures described using flowcharts and the like may be modified as appropriate.
[0088] The "part" of each element of the SLAM device 100 may be read as a "process," "step," "circuit," or "circuitry."
[0089] 100 SLAM device, 101 processor, 102 memory, 103 auxiliary storage device, 104 input / output interface, 109 processing circuit, 110 signal processing unit, 111 LiDAR SLAM unit, 112 camera SLAM unit, 113 accuracy determination unit, 120 control unit, 121 comparison unit, 122 attack determination unit, 123 output unit, 124 correction unit, 190 memory unit, 200 moving body, 210 sensor group, 211 LiDAR sensor, 212 range image camera, 213 satellite positioning sensor, 220 control device, 221 movement control unit.
Claims
1. A SLAM device comprising: a lidar SLAM unit that executes SLAM using measurement data obtained from a lidar sensor mounted on a moving body to generate a lidar SLAM map; a camera SLAM unit that executes SLAM using measurement data obtained from a distance image camera mounted on the moving body to generate a camera SLAM map; and an attack determination unit that determines whether the lidar sensor has been attacked based on a difference between the lidar SLAM map and the camera SLAM map.
2. The SLAM device according to claim 1, further comprising an accuracy determination unit that determines the positioning accuracy of the satellite positioning sensor based on satellite positioning data obtained from the satellite positioning sensor mounted on the moving body, wherein the camera SLAM unit generates the camera SLAM map when it is determined that the positioning accuracy of the satellite positioning sensor is poor, and the attack determination unit determines whether the lidar sensor has been attacked when it is determined that the positioning accuracy of the satellite positioning sensor is poor.
3. The SLAM device according to claim 2, wherein the camera SLAM unit operates the distance image camera to obtain the measurement data of the distance image camera when it is determined that the positioning accuracy of the satellite positioning sensor is poor.
4. The moving body is provided with a control device that controls the movement of the moving body using a SLAM map generated by SLAM. The SLAM device according to claim 2 or 3 further comprises an output unit that outputs the camera SLAM map to the control device when it is determined that the lidar sensor has been attacked, and outputs the lidar SLAM map to the control device when it is determined that the lidar sensor has not been attacked.
5. The SLAM device according to claim 4, wherein the output unit outputs the lidar SLAM map to the control device when it is not determined that the positioning accuracy of the satellite positioning sensor is poor.
6. The SLAM device according to any one of claims 1 to 5, further comprising a comparison unit that compares the lidar SLAM map with the camera SLAM map and calculates the difference between the lidar SLAM map and the camera SLAM map.
7. The measurement time interval of the distance image camera is shorter than that of the lidar sensor, and two or more measurement data of the distance image camera are obtained for one measurement data of the lidar sensor. The lidar slam unit generates one lidar slam map using the one measurement data of the lidar sensor. The camera slam unit generates two or more camera slam maps using the two or more measurement data of the distance image camera. The comparison unit compares the one lidar slam map with each of the two or more camera slam maps to calculate two or more differences corresponding to the two or more camera slam maps. The attack determination unit calculates a statistical value of the two or more differences and determines whether the lidar sensor has been attacked using the calculated statistical value. The slam device according to claim 6.
8. The slam device according to any one of claims 1 to 7, further comprising a correction unit that corrects the lidar slam map when it is determined that the lidar sensor has been attacked.
9. A slam attack countermeasure method, which executes slam using measurement data obtained from a lidar sensor mounted on a moving body to generate a lidar slam map, executes slam using measurement data obtained from a distance image camera mounted on the moving body to generate a camera slam map, and determines whether the lidar sensor has been attacked based on the difference between the lidar slam map and the camera slam map.
10. A lidar slam process for executing slam using measurement data obtained from a lidar sensor mounted on a moving body to generate a lidar slam map, a camera slam process for executing slam using measurement data obtained from a distance image camera mounted on the moving body to generate a camera slam map, and an attack determination process for determining whether the lidar sensor has been attacked based on the difference between the lidar slam map and the camera slam map. A slam attack countermeasure program for causing a computer to execute the processes.
Citation Information
Patent Citations
Reflector and laser SLAM fused AGV positioning method and system
CN112629522A
Abnormality detection device for self-location estimation device, and vehicle
JP2017097479A
Position estimation device
JP2021026372A
Position estimation system, controller, industrial vehicle, physical distribution support system, position estimation method, and program
JP2021135580A