Capturing signal level of target

A dual FMCW signal system in laser radar systems addresses the challenge of capturing signals from both near and far targets by overlapping delayed and direct signals, improving integration times and signal strength for enhanced accuracy.

CN120322700APending Publication Date: 2025-07-15AQRONOS INC
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202380083806.9
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Priority Date
2022-10-28
Filing Date
2023-10-27
Publication Date
2025-07-15

AI Technical Summary

Technical Problem

When existing lidar technology deals with remote and short-range targets, the integral time is unbalanced, resulting in insufficient signal strength, especially when remote target detection is poor signal capture.

Method used

A dual modulator system is adopted, in which one modulator is used to scan the signal directly, and the other modulator delays a fixed time as a reference signal, increasing the integration time through beat frequency detection and enhancing the signal strength.

Benefits of technology

It realizes that the signal strength and signal-to-noise ratio of remote target detection is significantly improved without damaging short-range target detection, and enhances the detection capability of lidar.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120322700A_ABST
    Figure CN120322700A_ABST
Patent Text Reader

Abstract

The laser source generates an optical signal. The splitter splits the optical signal into a first signal and a second signal. The first modulator modulates a first signal. The second modulator modulates the second signal. The scanner scans the first signal after modulation by the first modulator. The coupler combines the modulated second signal and the modulated first signal after scanning the first signal. A detector detects an attribute corresponding to the combined modulated second signal and the modulated first signal, and captures a target based on the combined modulated second signal and the modulated first signal.
Need to check novelty before this filing date? Find Prior Art

Description

Cross - Reference to Related Applications

[0001] This disclosure claims priority and the benefit of U.S. Provisional Patent Application No. 63 / 420,439, filed on October 28, 2022, with the United States Patent and Trademark Office. The entire content of the above - mentioned application is incorporated herein by reference. Technical Field

[0002] This disclosure relates to methods of using lidar to increase the signal level of a captured target. Background Art

[0003] Lidar technology has rich applications in the fields of aerospace, autonomous or semi - autonomous driving, meteorology, etc. due to its fast processing speed, high precision, and high accuracy. Summary of the Invention

[0004] Various examples of this disclosure may include a system that includes: a laser source configured to generate an optical signal; a splitter configured to split the optical signal into a first signal and a second signal; a first modulator configured to modulate the first signal; a second modulator configured to modulate the second signal; a scanner that scans the first signal after the first modulator modulates it; a coupler that combines the modulated second signal and the modulated first signal after scanning the first signal; and a detector configured to detect an attribute corresponding to the combined modulated second signal and modulated first signal and capture a target based on the combined modulated second signal and modulated first signal.

[0005] In some examples, the system may further include a processor that generates a first frequency - modulated continuous - wave (FMCW) signal and a second FMCW signal to modulate the first signal and the second signal, respectively.

[0006] In some examples, the processor processes the captured target and determines and executes a navigation action based on the processed target.

[0007] In some examples, the navigation action includes yielding, swerving, or turning actions.

[0008] In some examples, the second FMCW signal has a delay relative to the first FMCW signal, and the processor controls the magnitude of the delay.

[0009] In some examples, the processor controls the magnitude of the delay based on the distance from the processor to the target.

[0010] In some examples, the processor controls the magnitude of the delay to be higher in response to a smaller distance from the processor to the target.

[0011] In some examples, the second FMCW signal includes a reference beat frequency signal that beats with the signal reflected from the target.

[0012] In some examples, the system further includes a first digital-to-analog converter (DAC) that controls the first modulator and a second DAC that controls the second modulator.

[0013] In some examples, the system further includes a field programmable gate array (FPGA) that controls the first DAC and the second DAC.

[0014] In some examples, the corresponding method performed by the system and its above-described elements includes: generating an optical signal; splitting the optical signal into a first signal and a second signal; modulating the first signal; modulating the second signal; scanning the first signal after the first modulator modulates; after scanning the first signal, combining the modulated second signal and the modulated first signal; detecting an attribute corresponding to the combined modulated second signal and the modulated first signal; and capturing a target based on the combined modulated second signal and the modulated first signal. Detailed Description

[0015] In coherent lidar detection, in the case of a single modulator, the return signal reflected from the target can only beat with the modulated signal transmitted to the target, which results in a short integration time if the target is located at a long distance. Since the integration time is related to the level of the acquired signal, it is disadvantageous to detect long-distance signals using a single modulator. In particular, the overlapping region in the region between the two signals can indicate the total signal intensity. Therefore, in order to improve the signal captured during long-range target detection without compromising the signal captured during short-range target detection, a new technique implements two modulators, where the first frequency-modulated continuous wave (FMCW) signal is directly transmitted to the lidar scanner, while the second FMCW signal is delayed by a fixed time to the return signal as a reference beat frequency signal.

[0016] Figure 1Shows an embodiment of an FMCW lidar, in which after applying an input voltage 102, the laser source 103 is directed into two separate paths, namely a reference path 111 as a local oscillator and a detection path 112 towards the target 122. The laser source 103 can be a frequency-modulated chirp laser. The photodetector 104 can detect the interference signal of the light between the detection path 112 and the reference path 111, which can be manifested as a beat signal 108. The beat signal 108 can be sinusoidal, and the frequency of the beat signal can be proportional to the distance to the target. The laser source 103 can be part of the lidar, which can be arranged on a moving object, such as a vehicle. For example, at least one of the lidar or the target 122 can be moving. In some examples, the maximum relative speed between the lidar and the target 122 can be about 300 kilometers per hour, where both the lidar and the target 122 are moving in opposite directions at a speed of about 150 kilometers per hour. In another example, the lidar or the target 122 can be substantially stationary, and one of the lidar and the target 122 can be moving at a speed of about 150 kilometers per hour. The range of the relative speed can be between 150 kilometers per hour and 300 kilometers per hour.

[0017] The lidar can be associated with a computing system 152 including one or more processors and a memory. The processor can be configured to perform various operations by interpreting machine-readable instructions, such as from a machine-readable storage medium 162. The processor can include one or more hardware processors 153. In some examples, one or more of the hardware processors 153 can be combined or integrated into a single processor, and some or all of the functions performed by one or more of the hardware processors 153 may not be spatially separated but can be performed by a common processor. The hardware processor 153 can also be connected to, include, or embed logic 163. For example, the logic 163 can include a protocol that is executed to perform the functions of the hardware processor 153. These functions can include any of the functions described in the above figures (such as Figures 2 - 13 )). One or more hardware processors 153 can also be associated with a memory 154, which can include permanent memory or a cache to store any output or intermediate output from the hardware processor 153.

[0018] Figure 2Shows a schematic implementation of a lidar system, which includes a laser source 202, a splitter 203, a digital-to-analog converter (DAC) 205, a DAC 207, a modulator 204 corresponding to the DAC 205, a modulator 206 corresponding to the DAC 207, a scanner 208, a coupler 209, a detector 210, and a processor 212. The processor 212 can generate a first FMCW signal for optical signal modulation and a second signal corresponding to the returned optical signal detected by the detector 210 and sampled. The laser source 202 can generate an optical signal, which can be split into two paths using the splitter 203 and modulated with two FMCW signals generated by the processor 212 at the modulators 204 and 206. The modulator 204 can modulate the optical signal with the first FMCW signal, while the modulator 206 can modulate the optical signal with the second FMCW signal. The DAC 205 can control the modulator 204, while the DAC 207 can control the modulator 206. The DACs 205 and 207 can be controlled by a field-programmable gate array (FPGA) 213. The optical signal modulated with the first FMCW signal can first be transmitted to the scanner 208, while the optical signal modulated with the second FMCW signal can be directly transmitted to the coupler 209. Then, the optical signal modulated with the first FMCW signal can be transmitted to the coupler 209 after being transmitted to the scanner 208. Then, the two signals transmitted to the coupler 209 are transmitted to the detector 210 for generating or detecting a beat frequency. Thus, the modulator 204 is used for modulation and transmission, while the modulator 206 can be used for beating the received signal, thereby improving the integration time of long-range returned signals and increasing the signal-to-noise ratio of long-range signals. By implementing two modulators, the returned signal can be beat with the second FMCW signal instead of the first FMCW signal, resulting in a shorter integration time for nearby objects and a longer integration time for long-range objects. Even for nearby objects, since the signal is stronger, the target can be fully detected and identified even with a shorter integration time. Therefore, the short integration time for nearby objects may not be harmful.

[0019] Figure 3 Shows an embodiment according to Figure 2 , two fixed-delay sweep signals 304 and 306 generated by controlling two DACs (such as DAC 205 and DAC 207) using an FPGA (such as FPGA 213) are shown. The delay can be a digital electronic delay programmable on the FPGA. The sweep signal 304 represents a reference signal with a fixed delay time and / or synchronized with the returned signal. The sweep signal 306 shows the transmitted signal. Figure 4 Shows the two fixed-delay sweep signals when the target is at a short distance. At Figure 4Among them, the previous scan signal 304 can be shifted to the shifted signal 404, while the previous scan signal 305 can be shifted to the shifted signal 405. Figure 5 Shows two fixed-delay scan signals when the target is at a long distance. In Figure 5 Among them, the previous scan signal 304 can be shifted to the shifted signal 504, while the previous scan signal 305 can be shifted to the shifted signal 505. In Figure 5 Among them, the overlap time between the scan signal 306 and the shifted signal 504 may be longer than that in Figure 4 Thereby increasing the integration time. In Figures 3 - 5 Each of them, the two scan signals has the same slope amplitude. At shorter distances, the beat frequency will be larger.

[0020] Figures 6 - 12 Shows a navigation scenario in which navigation can be enhanced to capture one or more targets with increased signal strength. In Figure 6 Among them, the lidar 602 associated with and / or on the vehicle 620 (for example, which may include the laser source 103) can be used Figures 1 - 5Any of the techniques shown can be used to detect a target, such as obstacle 621, such as a pothole, bump, or rock on a road. The hardware processor 153 can determine a driving action or maneuver of vehicle 620 to pass by or avoid obstacle 621. The determined driving action or maneuver of vehicle 620 can be based on the size and location of obstacle 621 and / or the predicted position of vehicle 620 as it passes through obstacle 621. In some examples, the hardware processor 153 can determine that obstacle 621 is too large and / or too dangerous for vehicle 620 to pass by or straddle without turning. For example, the hardware processor 153 can predict that if vehicle 620 attempts to drive directly over obstacle 621 without turning, one or more wheels of vehicle 620 may hit obstacle 621 and cause the previously stationary obstacle 621 to roll into another adjacent lane or to the opposite side of the road, thereby increasing the danger to another vehicle in the adjacent lane or on the opposite side of the road. The hardware processor 153 can predict the trajectory change of another vehicle on the adjacent lane or on the opposite side of the road due to the rolling of obstacle 621. The hardware processor 153 can also predict the trajectory change of vehicle 620 itself due to hitting obstacle 621, such as changes in the speed, acceleration, attitude, direction, and / or balance of vehicle 620. If the hardware processor 153 predicts that the trajectory change of vehicle 620 after hitting obstacle 621 exceeds the allowable range, or the trajectory change of another vehicle exceeds the allowable range, the hardware processor 153 can determine that vehicle 620 should turn to avoid obstacle 621. The hardware processor 153 can adjust the trajectory of vehicle 620 to avoid obstacle 621. The hardware processor 153 can select from potential trajectories 623, 624, 625, 626, 627, and 628. The potential trajectories 623, 624, 625, 626, 627, and 628 can be based on historical data of previous trajectories under similar conditions determined by obstacle size, traffic density, road conditions, lighting conditions, and / or weather conditions. For example, the potential trajectories 623, 624, 625, 626, 627, and 628 can be determined based on the recent driving history of vehicle 620. The potential trajectories 623, 624, 625, 626, 627, and 628 can be the most recent actual trajectories, for example, having the highest safety metrics in the past year, month, or week. The hardware processor 153 can select trajectory 628 based on the predicted impact on trajectory 628, the trajectory of obstacle 621, and the trajectory of another nearby vehicle that may be affected by obstacle 621. For example, the hardware processor 153 can predict that vehicle 620 will not hit obstacle 621 when driving along trajectory 628, so obstacle 621 will not change its trajectory and will remain stationary. The hardware processor 153 can navigate or maneuver vehicle 620 along trajectory 628 to pass through obstacle 621.After following trajectory 628, the hardware processor 153 can determine the actual impact on the trajectory of trajectory 628, obstacle 621, and nearby vehicles. Thus, if the hardware processor 153 determines that vehicle 620 actually hits obstacle 621 while following trajectory 628, the hardware processor 153 can update or adjust the predicted impact on the trajectory of trajectory 628, obstacle 621, and another nearby vehicle. The predicted impact can be stored in the model. Updating or adjusting the predicted impact can include updating the model. Thus, in subsequent situations, using the updated or adjusted predicted impact of the updated or adjusted model, the potential trajectory will keep vehicle 620 and obstacle 621 further apart.

[0021] In Figure 7 , the hardware processor (e.g., hardware processor 153) associated with the lidar 702 of vehicle 740 (which can include, for example, laser source 103) can use Figures 1 - 5Sense other vehicles 742, 744, 746, and 748 in the environment using any of the above-described techniques in []. The hardware processor 153 can determine a driving action or a maneuvering action of the vehicle 740 based on the other vehicles 742, 744, 746, and 748. For example, when the vehicle 740 attempts to turn left. The determined driving action or maneuvering action of the vehicle 740 can also be based on the sizes and positions of the vehicles 742, 744, 746, and 748. The hardware processor 153 can predict the trajectories 743, 745, 747, and 749 of the other vehicles 742, 744, 746, and 748 respectively based on the determined directions and speeds of movement of the other vehicles 742, 744, 746, and 748, while predicting changes in the trajectories 743, 745, 747, and 749 due to the vehicle 740 following the selected trajectory 741. The hardware processor 153 can also predict changes in the selected trajectory 741 of the vehicle 740 itself due to interactions with the vehicles 742, 744, 746, and 748. If the hardware processor 153 predicts that the change in the trajectory of the vehicle 740 itself exceeds an allowable range, or the change in one or more of the predicted trajectories 743, 745, 747, and 749 exceeds an allowable range, then the hardware processor 153 can update the selected trajectory 741 or select another trajectory such that the changes falling outside their respective allowable ranges are within the allowable ranges. For example, the hardware processor 153 can predict that when following the trajectory 741, the vehicle 740 will maintain at least a predetermined distance from each of the predicted trajectories 743, 745, 747, and 749 without causing any of the vehicles 742, 744, 746, and 748 to decelerate by more than an acceptable amount or deviate from one of the corresponding predicted trajectories 743, 745, 747, and 749. After following the trajectory 741, the hardware processor 153 can determine the actual changes or impacts on the selected trajectory 741, as well as the actual changes and impacts on the predicted trajectories 743, 745, 747, and 749. If the hardware processor 153 determines that at least one of the actual trajectories of the vehicles 742, 744, 746, and / or 748 deviates from the predicted trajectories 743, 745, 747, and 749 respectively, or at least one of the vehicles 742, 744, 746, and 748 reduces its respective speed by more than an acceptable amount, then the hardware processor 153 can update or adjust the predicted trajectories 743, 745, 747, and 749 or the predicted impacts on the predicted trajectories 743, 745, 747, and 749. The predicted trajectories 743, 745, 747, and 749 can be stored in a model. Updating or adjusting the predicted trajectories 743, 745, 747, and 749, or the predicted impacts on the predicted trajectories 743, 745, 747, and 749, can include updating the model.For example, if the hardware processor 153 determines that the trajectory 741 is too close to one or more predicted trajectories, such as the predicted trajectory 743, such that the vehicle 742 must turn, the result of this interaction can be stored in the model. The model can be updated such that the next selected trajectory will not be too close to one of the predicted trajectories. As a result, using the updated or adjusted prediction impact of the updated or adjusted model, the potential trajectories in subsequent interactions will result in a greater distance between the vehicle 740 and the predicted trajectories.

[0022] In Figure 8 , the computing system of the vehicle 860 (e.g., the computing system 152, including the hardware processor 153) associated with the lidar 802 of the vehicle 860 (e.g., which can include the laser source 103) can be used when the vehicle 860 drives into the parking lot 863 Figures 1 - 5Sense other vehicles and surrounding conditions using any of the above-described techniques in [reference]. In some examples, the entrance to the parking lot 863 may not include a transparent lane divider to separate the vehicles entering the parking lot 863 and the vehicles 864 leaving the parking lot 863. In these examples, the hardware processor 153 may select a trajectory, such as trajectory 861, for the vehicle 860 to follow when the vehicle 860 drives into the parking lot 863 based on the detected vehicle 864. For example, the trajectory 861 may be at a quarter distance from one side of the entrance (e.g., the right side) and at a three-quarter distance from the opposite side of the entrance (e.g., the left side), so that sufficient space can be left for the vehicle 864 leaving the parking lot 863 from the opposite side, as shown by the predicted trajectory 862. The hardware processor 153 may determine the driving actions or maneuvering actions of the vehicle 860, thereby considering the vehicle 864. The determined driving actions or maneuvering actions of the vehicle 860 may be based on the size and position of the vehicle 864. The hardware processor 153 may predict the trajectory 862 and predict the change in the trajectory 862 due to the vehicle 860 following the selected trajectory 861. The hardware processor 153 may also predict the change in the selected trajectory 861 of the vehicle 860 itself due to the interaction with the vehicle 864. If the hardware processor 153 predicts that the change in the trajectory of the vehicle 860 itself exceeds the allowable range, or the change in the predicted trajectory 862 exceeds the allowable range, then the hardware processor 153 may update the selected trajectory 861 or select another trajectory so that the changes falling outside the respective allowable ranges are within the allowable ranges. For example, the hardware processor 153 may predict that when following the trajectory 861, the vehicle 860 will maintain at least a predetermined distance from the predicted trajectory 862 without causing the vehicle 864 to decelerate by more than an acceptable amount or deviate from the predicted trajectory 862. After following the trajectory 861, the hardware processor 153 may determine the actual change or impact on the trajectory 861 and the actual change and impact on the predicted trajectory 862 of the vehicle 864. If the hardware processor 153 determines that the actual trajectory of the vehicle 864 deviates from the predicted trajectory 862, or the vehicle 864 reduces its speed by more than an acceptable amount, then the hardware processor 153 may update or adjust the predicted trajectory 862 or the predicted impact on the predicted trajectory 862 due to the vehicle 860 following the trajectory 861. The predicted trajectory 862 may be stored in a model. Updating or adjusting the predicted trajectory 862 and the predicted impact on the predicted trajectory 862 may include updating the model. For example, if the hardware processor 153 determines that the trajectory 861 is too close to the predicted trajectory 862 such that the vehicle 864 actually steers to avoid the vehicle 860, the result of this interaction may be stored in the model. The model may be updated so that the selected trajectory of the vehicle 860 next time will not be too close to the predicted trajectory. As a result, using the updated or adjusted predicted impact of the updated or adjusted model, the potential trajectories in subsequent interactions will keep the distance between the vehicle 860 and the predicted trajectory farther.

[0023] In Figure 9 , the computing system of vehicle 970 (e.g., computing system 152 including hardware processor 153) associated with lidar 902 (e.g., which may include laser source 103) can sense other vehicles and surrounding conditions when vehicle 970 drives into the parking space between vehicles 972 and 973, while maintaining at least a predetermined distance from vehicle 974 which may currently be driving and trying to drive into the same parking space. Hardware processor 153 can use any of the above-described techniques in Figures 1 - 5 to sense, detect, or capture vehicle 974. Hardware processor 153 can determine whether to compete for a common parking space with another vehicle such as vehicle 974 based on the relative positions of vehicles 970 and 974 and the predicted trajectory of vehicle 974 (including the speed, acceleration, and attitude of vehicle 974). If hardware processor 153 determines to attempt to obtain a parking space, hardware processor 153 can select trajectory 971. If vehicle 970 is unsuccessful in obtaining a parking space, or if the distance between vehicle 971 and vehicle 974 becomes lower than a threshold distance while both vehicle 971 and vehicle 974 are attempting to obtain a parking space, hardware processor 153 can store the data of vehicle 971 and the result of the interaction with vehicle 974 in a model, so that when vehicle 970 attempts to drive into a parking space, vehicle 970 can improve its decision-making process in similar future situations.

[0024] In Figure 10 , vehicle 1010 can drive in lane 1030 according to the selected trajectory 1012. Another vehicle 1020 (which may be an AV) can drive in lane 1040 to the left of vehicle 1010. The computing system of vehicle 1010 (e.g., computing system 152 including hardware processor 153) associated with lidar 1002 (e.g., which may include laser source 103) can sense other vehicles and the surrounding conditions of vehicle 1010 to determine and / or perform navigation actions. Another vehicle 1020 can signal to vehicle 1010 that another vehicle 1020 intends to overtake or pass vehicle 1010 and merge into lane 1030. Vehicle 1010 can detect and identify that another vehicle 1020 intends to merge into lane 1030 through one or more hardware processors (e.g., hardware processor 153). The sensing, detection, and / or capture of vehicle 1020 and its intention to merge can be based on Figures 1 - 5Any of the above techniques described in. The hardware processor 153 may determine whether to allow another vehicle 1020 to merge into lane 1030. This determination may include predicting the trajectory 1028 of the other vehicle 1020 and the predicted change in the selected trajectory 1012 of the vehicle 1010 due to the vehicle 1010 allowing the other vehicle 1020 to merge into lane 1030. For example, if the predicted change in the selected trajectory 1012 exceeds an allowable amount, the hardware processor 153 may not allow the other vehicle 1020 to merge into lane 1030. For example, the predicted change in the selected trajectory 1012 may include a predicted decrease in the speed of the vehicle 1010. If the vehicle 1010 allows the other vehicle 1020 to merge into lane 1030, the hardware processor 153 may determine the actual change in the selected trajectory 1012 caused by the merger of the other vehicle 1020 and determine the actual trajectory of the other vehicle 1020 during the merger. If the deviation between the actual change in the selected trajectory 1012 and the predicted change in the selected trajectory 1012 exceeds a threshold amount, if the actual change in the selected trajectory 1012 exceeds an allowable amount, or if the actual trajectory of the other vehicle 1020 during the merger deviates from the predicted trajectory 1028, the hardware processor 153 may update or adjust the predicted trajectory 1028, or the predicted impact on the selected trajectory 1012 due to the vehicle 1010 following the trajectory 1012. The predicted trajectory 1028 and the predicted impact on the selected trajectory 1012 may be stored in a model. Updating or adjusting the predicted trajectory 1028 and the predicted impact on the selected trajectory 1012 may include updating the model. For example, if the hardware processor 153 determines that the other vehicle 1020 follows the actual trajectory 1029 such that the vehicle 1010 must decelerate more than an allowable amount to maintain a predetermined distance from the other vehicle 1020, the result of this interaction may be stored in the model. The model may be updated such that the next time the vehicle 1010 is less likely to allow another vehicle to merge into lane 1030. Similarly, when the vehicle 1010 sends a model update to other vehicles in a platoon or network, the other vehicles may also adjust their behavior such that they are less likely to attempt to merge in such a situation.

[0025] In Figure 11In this case, vehicle 1110 can travel in lane 1180 according to the selected trajectory 1112. The computing system of vehicle 1110 (e.g., computing system 152, including hardware processor 153), which is associated with lidar 1102 (e.g., which can include laser source 103), can sense other vehicles and the surrounding conditions of vehicle 1110 to determine and / or perform navigation actions. Another vehicle 1120 (which can be an AV) can travel in lane 1190 to the left of vehicle 1110. Another vehicle 1120 can be attempting to merge into lane 1180 urgently without giving an appropriate signal to vehicle 1110 indicating that another vehicle 1120 intends to overtake or pass vehicle 1110 and merge into lane 1180. Vehicle 1110 can detect and recognize that another vehicle 1120 intends to merge into lane 1180 through hardware processor 153. Hardware processor 153 can be based on Figures 1 - 5Any of the above-described techniques detect, capture, and / or sense another vehicle 1120 and its attempt or intention to merge, predict the trajectory of the other vehicle 1120, and / or infer or predict any point at which the other vehicle 1120 intends to merge into lane 1180. The hardware processor 153 may determine whether to allow the other vehicle 1120 to merge into lane 1180 by decelerating or accelerating to move ahead of the other vehicle 1120. This determination may include predicting the predicted change in the trajectory 1128 of the other vehicle 1120 and the selected trajectory 1112 of vehicle 1110 due to the vehicle 1110 allowing the other vehicle 1120 to merge into lane 1180 or due to accelerating. For example, if the predicted change in the selected trajectory 1112 exceeds an allowable amount due to allowing the other vehicle 1120 to merge into lane 1180, the hardware processor 153 may determine not to allow the other vehicle 1120 to merge into lane 1180. For example, the predicted change in the selected trajectory 1112 may include a predicted decrease in the speed of vehicle 1110. If vehicle 1110 allows the other vehicle 1120 to merge into lane 1180, the hardware processor 153 may determine the actual change in the selected trajectory 1112 caused by the merge of the other vehicle 1110 and determine the actual trajectory of the other vehicle 1120 during the merge. If the deviation of the actual change in the selected trajectory 1112 from the predicted change in the selected trajectory 1112 exceeds a threshold amount, if the actual change in the selected trajectory 1112 exceeds an allowable amount, or if the actual trajectory of the other vehicle 1120 during the merge deviates from the predicted trajectory 1128, the hardware processor 153 may update or adjust the predicted trajectory 1128 or the predicted impact on the selected trajectory 1112 due to vehicle 1110 following the trajectory 1112. The predicted trajectory 1128 and the predicted impact on the selected trajectory 1112 may be stored in a model. Updating or adjusting the predicted trajectory 1128 and the predicted impact on the selected trajectory 1112 may include updating the model. For example, if the hardware processor 153 determines that the other vehicle 1120 follows the actual trajectory 1129 such that vehicle 1110 must decelerate more than an allowable amount to maintain a predetermined distance from the other vehicle 1120, the result of this interaction may be stored in the model. The model may be updated such that the next time vehicle 1110 is less likely to allow another vehicle to merge into lane 1130, and thus vehicle 1110 will accelerate to pull ahead of another vehicle that will attempt to merge into the lane without signaling. Similarly, when vehicle 1110 sends a model update to other vehicles in a platoon or network, the other vehicles may also adjust their behavior such that they are less likely to attempt to merge in such a situation.

[0026] In Figure 12 vehicle 1210 may be traveling on lane 1280. Vehicle 1210 may act in accordance with Figures 1 - 5For any of the above technologies, a hardware processor 153 of the vehicle 1210 detects and identifies one or more pedestrians 1240 intending to cross the road. The hardware processor 153 of the vehicle 1210 is associated with a lidar 1202 (e.g., which may include a laser source 103), and can sense other vehicles and the surrounding conditions of the vehicle 1210 to determine and / or perform navigation actions. The vehicle 1210 can individually and / or jointly determine or predict the moving direction and speed of the pedestrian 1240, predict the trajectory of the pedestrian 1240 based on the moving direction or speed, and predict the delay time caused by yielding to the pedestrian 1240. After the pedestrian 1240 finishes crossing the road, the hardware processor 153 can determine the actual delay time caused by yielding to the pedestrian 1240. If the deviation between the actual delay time and the predicted delay time exceeds a threshold amount, the hardware processor 153 can update the predicted delay time to account for the deviation and incorporate the updated predicted delay time into future measurements.

[0027] Figure 13 illustrates a method according to any one of the foregoing Figures 1 - 12 figures.

[0028] In step 1306, a laser source (e.g., a lidar, such as lidar 102) can generate an optical signal, which may include a light signal.

[0029] In step 1308, a splitter (e.g., splitter 203) can split the optical signal into a first signal and a second signal, which are transmitted through separate paths (e.g., a first path and a second path). The first path can pass through modulator 204, and the second path can pass through modulator 206. In step 1310, modulator 204 can modulate the first signal, while modulator 206 can modulate the second signal. Modulator 204 can use a first modulation signal (e.g., a frequency-modulated continuous wave (FMCW) signal generated by processor 212) to modulate the first signal. Similarly, modulator 206 can use a second modulation signal (e.g., an FMCW signal generated by processor 212) to modulate the second signal.

[0030] In step 1312, after modulation by modulator 204, the first signal can be scanned by scanner 208. Meanwhile, after modulation by modulator 206, the second signal can be directly transmitted to coupler 209 without passing through scanner 208. The second signal can be delayed by a fixed time with respect to the returned optical signal, which serves as a reference beat frequency signal. In step 1314, coupler 209 can combine the modulated second signal and the modulated and scanned first signal. The received signal and the other modulated signal can be transmitted together into coupler 209 and then transmitted to detector 210, which can detect the reference beat frequency signal.

[0031] In step 1316, detector 210 may detect an attribute corresponding to the combined modulated second signal and modulated first signal, such as a beat frequency. In step 1318, detector 210 may capture a target based on the modulated second signal and the modulated first signal. In particular, such a dual-modulated signal may increase the integration time, which corresponds to the overlapping time range between the modulated second signal and the modulated first signal. For example, the captured target may be further processed by processor 212. For example, navigation actions of a vehicle (e.g., vehicle 106) may be determined based on the captured target, as is the case Figures 6 - 12 shown. Hardware implementation

[0032] The techniques described herein are implemented by one or more special-purpose computing devices. The special-purpose computing device may be hard-wired to perform the techniques, or may include circuitry or digital electronic devices, such as one or more application-specific integrated circuits (ASICs) or field-programmable gate arrays (FPGAs), which are persistently programmed to perform the techniques, or may include one or more hardware processors, which are programmed to perform the techniques according to program instructions in firmware, memory, other memory, or a combination. Such special-purpose computing devices may also combine custom hard-wired logic, ASICs, or FPGAs with custom programming to implement the techniques. The special-purpose computing device may be a desktop computer system, a server computer system, a portable computer system, a handheld device, a network device, or any other device or combination of devices that combines hard-wired and / or program logic to implement the techniques.

[0033] Computing devices are generally controlled and coordinated by operating system software. The operating system controls and schedules computer processes for execution, performs memory management, provides file system, networking, I / O services, and provides user interface functionality, such as a graphical user interface (“GUI”), etc.

[0034] Figure 14 is a block diagram of a computer system 1400 on which any of the embodiments described herein may be implemented. In some examples, computer system 1400 may include a cloud-based or remote computing system. For example, computer system 1400 may include a cluster of machines arranged as a parallel processing infrastructure. Computer system 1400 includes a bus 1402 or other communication mechanism for communicating information, and one or more hardware processors 1404 coupled to bus 1402 for processing information. The hardware processors 1404 may be, for example, one or more general-purpose microprocessors.

[0035] The computer system 1400 also includes a main memory 1406, such as a random access memory (RAM), a cache, and / or other dynamic storage devices, which is coupled to the bus 1402 for storing information and instructions to be executed by the processor 1404. The main memory 1406 can also be used to store temporary variables or other intermediate information during the execution of instructions by the processor 1404. When stored in a storage medium accessible by the processor 1404, these instructions cause the computer system 1400 to present itself as a special-purpose machine that is customized to perform the operations specified in the instructions.

[0036] The computer system 1400 also includes a read-only memory (ROM) 1408 or other static storage devices coupled to the bus 1402 for storing static information and instructions for the processor 1404. A storage device 1410, such as a magnetic disk, an optical disk, or a USB flash drive (flash drive), etc., is provided and coupled to the bus 1402 for storing information and instructions.

[0037] The computer system 1400 can be connected via the bus 1402 to a display 1412, such as a cathode ray tube (CRT) or an LCD display (or a touch screen), for displaying information to a computer user. An input device 1414 including alphanumeric and other keys is coupled to the bus 1402 for passing information and command selections to the processor 1404. Another type of user input device is a cursor control 1416, such as a mouse, a trackball, or cursor direction keys, for passing direction information and command selections to the processor 1404 and for controlling the movement of a cursor on the display 1412. This input device typically has two degrees of freedom in two axes, namely a first axis (e.g., x) and a second axis (e.g., y), which allows the device to specify a position in a plane. In some embodiments, the same direction information and command selections as those of the cursor control can be achieved by receiving a touch on the touch screen without a cursor.

[0038] The computing system 1400 can include a user interface module to implement a GUI, which can be stored as executable software code executed by the computing device in a mass storage device. For example, this module and other modules can include components such as software components, object-oriented software components, class components, and task components, processes, functions, attributes, procedures, subroutines, program code segments, drivers, firmware, microcode, circuits, data, databases, data structures, tables, arrays, and variables.

[0039] In general, as used herein, the term "module" refers to logic embodied in hardware or firmware, or to a set of software instructions that may have entry and exit points and that is written in a programming language, such as Java, C, or C++. A software module may be compiled and linked into an executable program, installed in a dynamic link library, or may be written in an interpreted programming language, such as BASIC, Perl, or Python. It should be understood that a software module may be called from other modules or from itself, and / or may be called in response to detected events or interrupts. Software modules configured to execute on a computing device may be provided on a computer-readable medium, such as a compact disc, digital video disc, flash drive, magnetic disk, or any other tangible medium, or as a digital download (and may initially be stored in a compressed or installable format that requires installation, decompression, or decryption prior to execution). Such software code may be stored, in whole or in part, on the storage device of the executing computing device for execution by the computing device. Software instructions may be embedded in firmware, such as an EPROM. It should also be understood that a hardware module may be composed of connected logic units, such as gates and flip-flops, and / or may be composed of programmable units, such as programmable gate arrays or processors. The modules or computing device functionality described herein is preferably implemented as software modules, but may also be represented in hardware or firmware. In general, the modules described herein refer to logical modules that may be combined with other modules or divided into sub-modules, regardless of their physical organization or storage.

[0040] Computer system 1400 may implement the techniques described herein using custom hardwired logic, one or more ASICs or FPGAs, firmware, and / or program logic that, in combination with the computer system, cause the computer system 1400 to be or be programmed as a special-purpose machine. According to one embodiment, the techniques herein are performed by computer system 1400 in response to one or more sequences of one or more instructions contained in main memory 1406 being executed by processor 1404. Such instructions may be read into main memory 1406 from another storage medium, such as storage device 1410. Execution of the instruction sequences contained in main memory 1406 causes processor 1404 to perform the processing steps described herein. In an alternative embodiment, hardwired circuitry may be used in place of or in combination with software instructions.

[0041] As used herein, the term "non-transitory medium" and like terms refer to any medium that stores data and / or instructions and causes a machine to operate in a specific manner. Such non-transitory media can include non-volatile media and / or volatile media. Non-volatile media includes, for example, optical discs or magnetic disks, such as storage device 1410. Volatile media includes dynamic memory, such as main memory 1406. Common forms of non-transitory media include, for example, floppy disks, flexible disks, hard disks, solid state drives, magnetic tape, or any other magnetic data storage media, CD-ROMs, any other optical data storage media, any physical media with a hole pattern, RAM, PROM, and EPROM, FLASH-EPROM, NVRAM, any other memory chip or cartridge, and network versions thereof.

[0042] Non-transitory media is different from transmission media but can be used in combination with transmission media. Transmission media participates in the transfer of information between non-transitory media. For example, transmission media includes coaxial cables, copper wire, and fiber optics, including the wires that make up bus 1402. Transmission media can also take the form of acoustic waves or light waves, such as those generated during radio wave and infrared data communications.

[0043] When carrying one or more sequences of one or more instructions to processor 1404 for execution, various forms of media may be involved. For example, the instructions may initially be stored on a disk or solid state drive of a remote computer. The remote computer can load the instructions into its dynamic memory and send the instructions over a telephone line using a modem. A modem local to computer system 1400 can receive the data on the telephone line and convert the data to an infrared signal using an infrared transmitter. An infrared detector can receive the data carried in the infrared signal, and appropriate circuitry can place the data on bus 1402. Bus 1402 transfers the data to main memory 1406, and processor 1404 retrieves and executes the instructions from main memory 1406. The instructions received by main memory 1406 can retrieve and execute these instructions. The instructions received by main memory 1406 can optionally be stored on storage device 1410 before or after being executed by processor 1404.

[0044] The computer system 1400 also includes a communication interface 1418 coupled to the bus 1402. The communication interface 1418 provides a two-way data communication coupling with one or more network links connected to one or more local networks. For example, the communication interface 1418 can be an Integrated Services Digital Network (ISDN) card, a cable modem, a satellite modem, or a modem that provides a data communication connection to a corresponding type of telephone line. As another example, the communication interface 1418 can be a Local Area Network (LAN) card to provide a data communication connection to a compatible LAN (or a WAN component communicating with a WAN). A wireless link can also be implemented. In any such implementation, the communication interface 1418 transmits and receives electrical, electromagnetic, or optical signals carrying digital data streams representing various types of information.

[0045] Network links typically provide data communication to other data devices through one or more networks. For example, a network link can provide a connection to a host or a data device operated by an Internet Service Provider (ISP) through a local network. The ISP in turn provides data communication services through the global packet data communication network now commonly referred to as the "Internet". Both local area networks and the Internet use electrical signals, electromagnetic signals, or optical signals carrying digital data streams. Signals passing through various networks and signals on network links and signals passing through the communication interface 1418 are example forms of transmission media that transmit digital data to and from the computer system 1400.

[0046] The computer system 1400 can send messages and receive data, including program code, through the network, network links, and the communication interface 1418. In the Internet example, a server can send request code for an application through the Internet, the ISP, the local network, and the communication interface 1418.

[0047] The received code can be executed by the processor 1404 upon receipt, and / or stored in the storage device 1410 or other non-volatile memory for later execution.

[0048] Each process, method, and algorithm described in the previous sections can be embodied in code modules executed by one or more computer systems or computer processors including computer hardware, and be fully or partially automated thereby. These processes and algorithms can be implemented partially or fully in dedicated circuitry.

[0049] The various features and processes described above can be used independently of each other or in combination in various ways. All possible combinations and sub - combinations are intended to fall within the scope of the present disclosure. Additionally, in certain embodiments, certain method or process blocks may be omitted. The methods and processes described herein are also not limited to any particular order, and the associated blocks or states can be executed in a suitable other order. For example, the described blocks or states can be executed in an order different from the specifically disclosed order, or multiple blocks or states can be combined into a single block or state. Example blocks or states can be executed serially, in parallel, or in some other manner. Blocks or states can be added to or deleted from the disclosed example embodiments. The example systems and components described herein can be configured differently than described. For example, elements can be added, deleted, or rearranged compared to the disclosed example embodiments.

[0050] Conditional language, such as "can", "may", "could", or "might", unless specifically stated otherwise or otherwise understood in the context in which it is used, is generally intended to convey that certain embodiments include, while other embodiments do not include, certain features, elements, and / or steps. Thus, such conditional language generally does not imply that one or more embodiments require, in any way, the features, elements, and / or steps, nor does it imply that one or more embodiments must include logic for deciding, with or without user input or prompting, whether to include or execute these features, elements, or steps in any particular embodiment.

[0051] Any process descriptions, elements, or blocks in the flowcharts described herein and / or shown in the figures should be understood as potentially representing modules, segments, or portions of code that include one or more executable instructions for implementing specific logical functions or steps in the process. Those skilled in the art will understand that alternative embodiments are included within the scope of the embodiments described herein, where elements or functions can be removed, executed in the order shown or discussed, including substantially simultaneously or in the reverse order, depending on the functionality involved.

[0052] It should be emphasized that many variations and modifications can be made to the above - described embodiments, and their elements should be understood as one of other acceptable examples. All such modifications and variations are intended to be included within the scope of the present disclosure. The above description details certain embodiments of the present invention. However, it should be understood that, no matter how detailed the above may be in the text, the present invention can be practiced in many ways. As noted above, it should be noted that the use of specific terms when describing certain features or aspects of the present invention should not be construed as implying that the term is re - defined herein to be limited to any particular feature of the present invention associated with that term. Thus, the scope of the present invention should be interpreted in accordance with the appended claims and any equivalents thereof. language

[0053] In this specification, multiple instances can implement components, operations, or structures described as a single instance. Although the individual operations of one or more methods are shown and described as separate operations, one or more of the individual operations can be performed simultaneously, and the operations are not required to be performed in the order shown. Structures and functions presented as separate components in an example configuration can be implemented as a combined structure or component. Similarly, structures and functions presented as a single component can be implemented as separate components. These and other variations, modifications, additions, and improvements are within the scope of the subject matter of this disclosure.

[0054] Although the subject matter has been described in overview with reference to specific example embodiments, various modifications and changes can be made to these embodiments without departing from the broader scope of the disclosed embodiments. The terms "invention" can be used herein, either singly or collectively, to refer to these embodiments of the subject matter merely for convenience, and without any intention of voluntarily limiting the scope of this application to any single disclosure or concept if in fact multiple are disclosed.

[0055] The embodiments shown herein are described in sufficient detail to enable those skilled in the art to practice the disclosed teachings. Other embodiments can be used and derived therefrom, such that structural and logical substitutions and changes can be made without departing from the scope of the disclosure. Accordingly, the detailed description should not be construed as limiting, and the scope of the various embodiments is defined only by the appended claims and the full equivalents to which those claims are entitled.

[0056] It should be understood that "logic", "system", "data storage", and / or "database" can include software, hardware, firmware, and / or circuitry. In one example, one or more software programs including instructions executable by a processor can perform one or more functions of the data storage, database, or system described herein. In another example, circuitry can perform the same or similar functions. Alternative embodiments can include more, fewer, or functionally equivalent systems, data storage, or databases and still be within the scope of this embodiment. For example, the functions of various systems, data storage, and / or databases can be combined or divided differently.

[0057] As used herein, "open source" software is defined as source code that permits distribution in source and compiled form, with a widely publicized and indexed means of obtaining the source code, optionally with a license that permits modification and derivative works.

[0058] The data storage described herein can be any suitable structure (e.g., an active database, a relational database, a self-referential database, a table, a matrix, an array, a flat file, a document-oriented storage system, a non-relational No-SQL system, etc.) and can be cloud-based or otherwise.

[0059] As used herein, the term "or" can be interpreted as inclusive or exclusive. In addition, multiple instances of resources, operations, or structures described herein can be provided as a single instance. Further, the boundaries between various resources, operations, and data stores are to some extent arbitrary, and a particular operation is illustrated in the context of a particular illustrative configuration. Other function allocations are contemplated and can fall within the scope of various embodiments of the present disclosure. In general, structures and functions presented as separate resources in an example configuration can be implemented as a combined structure or resource. Similarly, structures and functions presented as a single resource can be implemented as separate resources. These and other variations, modifications, additions, and improvements fall within the scope of the embodiments of the present disclosure as represented by the appended claims. Accordingly, the specification and drawings are to be regarded as illustrative rather than restrictive.

[0060] Although the present invention has been described in detail based on currently considered to be the most practical and preferred embodiments, it should be understood that these details are for this purpose only, and the present invention is not limited to the disclosed embodiments. On the contrary, the present invention is intended to cover modifications and equivalent arrangements within the spirit and scope of the appended claims. For example, it should be understood that the present invention contemplates that, to the extent possible, one or more features of any figure or example can be combined with one or more features of any other figure or example. A component implemented as another component can be interpreted as a component operating in the same or a similar manner as another component, and / or including features, characteristics, and parameters the same as or similar to those of another component.

[0061] Phrases such as "at least one of...", "at least one selected from...", or "at least one selected from the group consisting of..." should be interpreted disjunctively (e.g., should not be interpreted as at least one in A and at least one in B).

[0062] As used in this specification, "example" or "exemplary" means that a particular feature, structure, or characteristic associated with the example is included in at least one example of the present invention. Thus, the phrases "in one example" or "in some examples" that appear in various places in this specification do not necessarily all refer to the same example, but may in some cases. Additionally, a particular feature, structure, or characteristic can be combined in any suitable manner in one or more different examples.

Claims

1. A system, comprising: a laser source configured to generate an optical signal; a splitter configured to split the optical signal into a first signal and a second signal; a first modulator configured to modulate the first signal; a second modulator configured to modulate the second signal; a scanner that scans the first signal after the first modulator modulates it; a coupler that combines the modulated second signal and the modulated first signal after scanning the first signal; and a detector configured to detect an attribute corresponding to the combined modulated second signal and modulated first signal and capture a target based on the combined modulated second signal and modulated first signal.

2. The system according to claim 1, wherein the system further comprises a processor that generates a first frequency-modulated continuous wave (FMCW) signal and a second FMCW signal to modulate the first signal and the second signal respectively.

3. The system according to claim 2, wherein the processor processes the captured target and determines and executes a navigation action based on the processed target.

4. The system according to claim 3, wherein the navigation action includes a yielding, a sharp turn or a steering action.

5. The system according to claim 2, wherein the second FMCW signal has a delay relative to the first FMCW signal, and the processor controls the magnitude of the delay.

6. The system according to claim 5, wherein the processor controls the magnitude of the delay based on the distance from the processor to the target.

7. The system according to claim 5, wherein the processor controls the magnitude of the delay to be higher in response to a smaller distance from the processor to the target.

8. The system according to claim 2, wherein the second FMCW signal includes a reference beat frequency signal that beats with a signal reflected from the target.

9. The system according to claim 1, wherein the system further comprises a first digital-to-analog converter (DAC) that controls the first modulator and a second DAC that controls the second modulator.

10. The system according to claim 9, wherein the system further comprises a field-programmable gate array (FPGA) that controls the first DAC and the second DAC.

11. A method, comprising: generating an optical signal; splitting the optical signal into a first signal and a second signal; modulating the first signal; modulating the second signal; scanning the first signal after the first modulator modulates it; combining the modulated second signal and the modulated first signal after scanning the first signal; detecting an attribute corresponding to the combined modulated second signal and modulated first signal; and capturing a target based on the combined modulated second signal and modulated first signal.

12. The method according to claim 11, wherein the method further comprises generating a first frequency-modulated continuous wave (FMCW) signal and a second FMCW signal to modulate the first signal and the second signal respectively.

13. The method according to claim 12, the method further comprising processing the captured target; and determining and performing a navigation action based on the processed target.

14. The method according to claim 13, wherein the navigation action includes yielding, sharp turning, or steering actions.

15. The method according to claim 12, the method further comprising controlling an amplitude of a delay of the second FMCW signal relative to the first FMCW signal.

16. The method according to claim 15, the method further comprising controlling the amplitude of the delay based on a distance from the processor to the target.

17. The method according to claim 15, the method further comprising controlling the amplitude of the delay to be higher in response to a smaller distance from the processor to the target.

18. The method according to claim 12, wherein the second FMCW signal includes a reference beat frequency signal that beats together with the signal reflected from the target.

19. The method according to claim 12, the method further comprising controlling the first modulator using a first DAC and controlling the second modulator using a second DAC.

20. The method according to claim 19, the method further comprising controlling the first DAC and the second DAC using a field programmable gate array (FPGA).