Method and system for controlling autonomous vehicle using coherent range doppler optical sensors

JP2025020331AInactive Publication Date: 2025-02-12AURORA OPERATIONS INC
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
JP2024195001
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Priority Date
2018-04-23
Filing Date
2024-11-07
Publication Date
2025-02-12
Estimated Expiration
Not applicable · inactive patent

AI Technical Summary

Benefits of technology

【0016】 また他の側面において、本発明を行うために考慮される最上のモードを含む多数の特定の実施例および具現を単純に例示することによって、次の詳細な説明から本発明の特徴および長所を容易に理解することができる。他の実施例は、また異なる特徴および長所を有し得、一部の詳細事項は、本明細書の思想および範囲を逸脱しない様々な側面で明らかになるように修正され得る。したがって、図面および説明は、限定的ではなく、本質的に例示的なものとみなされるべきである。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025020331000001_ABST
    Figure 2025020331000001_ABST
Patent Text Reader

Abstract

To provide a high-resolution range-Doppler LIDAR system that improves the control of an autonomous vehicle.SOLUTION: Techniques for controlling an autonomous vehicle with a processor that controls operation include operating a Doppler LIDAR system to collect point cloud data that indicates for each point at least four dimensions including an inclination angle, an azimuthal angle, a range, and a relative speed between the point and the LIDAR system. A value of a property of an object in the point cloud is determined based on three or less of the at least four dimensions. In some embodiments, determining the value of the property of the object includes isolating multiple points in the point cloud data which have high value Doppler components. A moving object in the multiple points is determined based on a cluster by azimuth and Doppler component values.SELECTED DRAWING: Figure 3A
Need to check novelty before this filing date? Find Prior Art

Description

[Background technology]

[0001] Lidar for Light Detection and Ranging (LIDAR), also known as Computing and Vehicle Laser Radar (RADAR), often referred to by its mnemonic, is used in a variety of applications ranging from altimeters to imaging to collision avoidance. Lidar offers finer range resolution with smaller beam sizes than traditional microwave ranging systems such as Radio-wave Detection and Ranging (RADAR). Optical detection of distance can be done with a variety of other techniques including direct distance measurement based on the round trip travel time of a light pulse to an object, chirp detection based on the difference in frequency between a transmitted chirp optical signal and the signal scattered back from the object, and Phase-Encoded Detection based on a series of single frequency phase changes that can be distinguished from natural signals.

[0002] To obtain acceptable range accuracy and detection sensitivity, Direct Long Range LIDAR systems use short pulse lasers with low pulse repetition rate and very high pulse maximum power. High pulse power can result in rapid degradation of optical components. Chirp and Phase-Encoded LIDAR systems use long optical pulses with relatively low maximum optical output. In this configuration, range accuracy increases with chirp bandwidth or phase code length and bandwidth rather than pulse duration, so high range accuracy can still be obtained.

[0003] Useful optical bandwidths have been achieved using wideband radio frequency (RF) electrical signals to modulate an optical carrier. Recent developments in lidar include using an optical carrier modulated in the same way as a reference signal, which is combined with the signal returned from the photodetector to generate an electrical signal at a relatively low beat frequency within the RF band that is proportional to the frequency difference, and using the phase of the reference and returned optical signals. When the detector detects beat frequencies that differ in frequency, this is called heterodyne detection. The technique is known to have several advantages, such as being immediate and inexpensive to use when using RF components.

[0004] The inventor's recent work discloses a new arrangement of optical components and coherent processing to detect Doppler motion from the returned signal that provides vectorially improved range as well as relative signed velocity between the lidar system and each external object. The system is called Hi-res Range-Doppler LIDAR. See, for example, World Intellectual Property Organization (WIPO) publications WO2018 / 160240 and WO / 2018 / 144853, which are based on Patent Cooperation Treaty (PCT) patent applications PCT / US2017 / 062703 and PCT / US2018 / 016632, respectively.

[0005] Autonomous navigation solutions require the cooperation of multiple sensors to obtain the desired results. For example, modern autonomous vehicles often combine camera, radar and lidar systems for spatial awareness. The systems further use GPS solutions, Inertial Measurement Units (INS) and Odometers to generate position, speed and heading in a Global Coordinate System. The systems may sometimes be referred to as Inertial Navigation System (INS) "solutions." The navigation task represents a complex interplay between the proposed motion plan (dictated by the INS and mapping software) and dynamic obstacle avoidance (camera, radar and lidar systems). The dependency of the two subsystems is complicated when one of the two systems' subcomponents behaves unreliably. For example, INS solutions are notoriously unreliable. Summary of the Invention [Problem to be solved by the invention]

[0006] [Means for solving the problem]

[0007] The current inventors have recognized that high-resolution range Doppler lidars may be leveraged to improve the control of autonomous vehicles. For example, when components of a previous INS solution fail, high-resolution range Doppler lidar data feeds may be invoked to assist with vehicle localization. An example may be a search for objects with known relative positions (e.g., lane markings) or known geospatial positions (e.g., buildings or road signs only or trajectory markings) in an attempt to improve the vehicle's position and velocity solution.

[0008] In a first set of embodiments, a method embodied in a processor configured to operate a Doppler LIDAR system includes operating a Doppler LIDAR system to collect point cloud data indicative of at least four dimensions for each point, including tilt angle, azimuth angle, range, and relative velocity between the point and the LIDAR system, and also includes determining attribute values ​​of objects in the point cloud based on no more than three of the at least four dimensions.

[0009] In some embodiments of the first set, determining the attribute value of the object includes isolating a plurality of points from the point cloud data having a high value Doppler component, and determining moving objects among the plurality of points based on clusters by azimuth angle and Doppler component value.

[0010] In some embodiments of the first set, determining the attribute value of the object of the point cloud includes identifying a plurality of stationary points in the point cloud based at least in part on a tilt angle for each of the plurality of stationary points. The method includes determining a ground velocity of the lidar based on a plurality of relative velocities corresponding to the plurality of stationary points. In some of the embodiments, the method includes discarding points from the plurality of stationary points having a relative velocity equal to or greater than a threshold from a statistic based on the plurality of relative velocities corresponding to the plurality of stationary points. In some embodiments, the method includes determining an azimuth direction of a lidar velocity based on an azimuth angle associated with a stationary point of the plurality of stationary points for which the relative velocity is greatest.

[0011] In some embodiments of the first set, the method includes de-skewing by changing the azimuth or tilt or distance of points in the point cloud data based on a current lidar speed and a time difference from a fixed time within a scan period.

[0012] In a second set of embodiments, a method embodied in a processor configured to operate a high resolution lidar system includes operating a high resolution lidar system to collect point cloud data indicative of at least four dimensions including tilt angle, azimuth angle, distance to each point, and reflectivity of the point. The method also includes determining a number of objects in the point cloud, each object based on a number of adjacent points of the point cloud having high reflectivity values. The method also includes determining a corresponding number of objects in the database, each object in the database having a known location. The method also includes determining a location of the Doppler lidar system based at least in part on the known location of each object in the database for the object corresponding to the database.

[0013] In a third set of embodiments, a method embodied in a processor configured to operate a Doppler lidar system includes operating the Doppler lidar system to collect point cloud data indicative of at least four dimensions including tilt angle, azimuth angle, distance for each point, relative velocity between the point and the lidar system, and reflectivity of the point. The method includes determining a number of objects in the point cloud, each object based on adjacent points in the point cloud having high reflectivity values ​​or adjacent points in the point cloud having approximately suitable relative velocity values ​​for a globally stationary object. The method also includes determining a corresponding number of objects in a database, each object in the database having a known location. The method further includes determining a velocity of the Doppler lidar system based at least in part on the known location of each object in the database for a corresponding object in the database.

[0014] In a fourth set of embodiments, a method embodied in a processor configured to operate a Doppler LIDAR system includes operating a Doppler LIDAR system to collect point cloud data indicative of at least four dimensions including tilt angle, azimuth angle, distance to each point, relative velocity between the point and the LIDAR system, and reflectivity of the point. The method also includes determining a plurality of points of an object in the point cloud. The object is based on adjacent points in the point cloud having high reflectivity values ​​or clusters of azimuth and Doppler component values. The method further includes determining a rotational velocity or global velocity of the object based on differences in Doppler component values ​​between the points on the object.

[0015] In other embodiments, a system or device or computer readable medium is configured to perform one or more steps of the method.

[0016] In yet another aspect, the features and advantages of the present invention can be readily understood from the following detailed description, simply by illustrating a number of specific embodiments and implementations, including the best mode contemplated for carrying out the invention. Other embodiments may also have different features and advantages, and some details may be modified as will become apparent in various aspects without departing from the spirit and scope of the present specification. Accordingly, the drawings and description should be regarded as illustrative in nature, and not restrictive. [Brief description of the drawings]

[0017] The embodiments are illustrated by way of example, and not by way of limitation, in the accompanying drawings, in which like elements are given like reference numerals.

[0018] [Figure 1A] 4 is a schematic graph showing an example of a signal transmitted as a series of binary numbers along with a returned optical signal for distance measurement according to one embodiment of the present invention.

[0019] [Figure 1B] 1 is a schematic graph showing an example of cross-correlations of a reference signal of two signals returned by one embodiment of the present invention, and a schematic graph showing an example spectrum of the reference signal and a spectrum of a Doppler shifted return signal.

[0020] [Figure 1C] 4 is a graphical graph illustrating an example of a cross-spectrum of the phase component of a Doppler shifted return signal, according to one embodiment of the present invention.

[0021] [Figure 1D]1 is a set of graphs illustrating an example of optical chirp measurement over range, according to one embodiment.

[0022] [Figure 1E] 13 is a graph showing a dashed line of a return signal in a frequency time plot when there is no Doppler shift, using a symmetric LO signal, according to one embodiment.

[0023] [Figure 1F] 1E using a symmetric LO signal, according to one embodiment, showing the return signal in a frequency time plot in dashed lines when there is a non-zero Doppler shift;

[0024] [Figure 2A] FIG. 1 is a block diagram illustrating an example of high resolution lidar system components, according to one embodiment.

[0025] [Figure 2B] FIG. 2 is a block diagram illustrating a Sawtooth scan pattern for a High Resolution Doppler system used in some embodiments.

[0026] [Figure 2C] 1 is an image showing an example of a velocity point cloud generated by a high resolution Doppler lidar system, according to one embodiment.

[0027] [Figure 3A] FIG. 1 is a block diagram illustrating an example of a system including at least one high resolution Doppler LIDAR system mounted on a vehicle, according to one embodiment.

[0028] [Figure 3B] FIG. 1 is a block diagram illustrating an example of a system including a Multiple Hi-res Doppler LIDAR system mounted on a vehicle, according to one embodiment.

[0029] [Figure 3C] FIG. 1 is a block diagram illustrating an example including multiple high-resolution Doppler lidar systems mounted on a vehicle in association with objects detected from a point cloud, according to one embodiment.

[0030] [Figure 4] 1 is a flow diagram illustrating an example of a method for using data from a high resolution Doppler lidar system in an autonomous vehicle setting, according to one embodiment.

[0031] [Figure 5A] 2 is a block diagram illustrating example computational components for detecting movement of an Own Vehicle relative to a stationary road surface, according to one embodiment.

[0032] [Figure 5B] 1 is a plot showing an example of a Raw Doppler LIDAR point cloud rendered in x / y / z space without being compensated for Ego-Motion, according to one embodiment.

[0033] [Figure 5C] 1 is a plot illustrating an example of a Doppler Lidar point cloud rendered in x / y / z space, compensated for distance for ego-motion based on a Doppler calculated velocity solution, according to one embodiment.

[0034] [Figure 6] 4 is a flow diagram illustrating an example of a method for determining a speed of an Own Vehicle, according to one embodiment.

[0035] [Figure 7A] 1 is a graph showing an example of a velocity comparison derived from Global Positioning System (GPS) data and high-resolution 3D Doppler lidar data, according to one embodiment. [Figure 7B]1 is a graph showing an example of a velocity comparison derived from Global Positioning System (GPS) data and high-resolution 3D Doppler lidar data, according to one embodiment.

[0036] [Figure 7C] 1 is a graph showing an example of velocity dependence from a Doppler LIDAR on azimuth angle depending on vehicle movement direction, according to one embodiment.

[0037] [Figure 7D] 1 is a graph showing an example of velocity dependence from a Doppler LIDAR on azimuth angle depending on vehicle movement direction, according to one embodiment.

[0038] [Figure 7E] 1 is a graph showing an example of velocity dependence from a Doppler LIDAR on azimuth angle depending on vehicle movement direction, according to one embodiment.

[0039] [Figure 7F] 1 is a graph showing an example of velocity-dependent measurements from a Doppler lidar with azimuth angle, according to one embodiment.

[0040] [Figure 8] 4 is a flow diagram illustrating an example of a method for determining the velocity of an Own Vehicle and other moving objects according to another embodiment.

[0041] [Figure 9A] FIG. 2 is a block diagram illustrating example computational components for detecting movement of other objects relative to an Own Vehicle, according to one embodiment.

[0042] [Figure 9B] FIG. 2 is a block diagram illustrating example computational components for detecting movement of other objects relative to an Own Vehicle, according to one embodiment.

[0043] [Figure 9C]FIG. 2 is a block diagram illustrating example computational components for detecting movement of other objects relative to an Own Vehicle, according to one embodiment.

[0044] [Figure 10] 4 is a flow diagram illustrating an example of a method for determining the movement and track of another moving object according to another embodiment.

[0045] [Figure 11] FIG. 2 is a block diagram illustrating an example of computational components for determining Own Position relative to a detected survey object (a stationary object in the mapping database), according to one embodiment.

[0046] [Figure 12] 4 is a flow diagram illustrating an example of determining an Own Position relative to a detected investigation object according to one embodiment.

[0047] [Figure 13] FIG. 2 is a block diagram illustrating example computational components for determining a unique global velocity, according to one embodiment.

[0048] [Figure 14] 13 is a flow diagram illustrating an example of determining a unique global speed according to one embodiment.

[0049] [Figure 15] 2 is a block diagram illustrating example computational components for determining a rotational velocity of a moving object relative to an Own Vehicle, according to one embodiment.

[0050] [Figure 16] 4 is a flow diagram illustrating an example of a method for determining a global velocity of a moving object, according to one embodiment.

[0051] [Figure 17A] 1 is a block diagram illustrating an example of the locations of points illuminated from a high-resolution Doppler LIDAR system, according to one embodiment.

[0052] [Figure 17B] 11 is an image showing an example of returns at illuminated points showing returns from a track of a stationary object and a moving object, according to one embodiment.

[0053] [Figure 17C] 11 is an image showing an example of returns at illuminated points showing returns from a track of a stationary object and a moving object, according to one embodiment.

[0054] [Figure 17D] 11 is an image showing an example of returns at illuminated points showing returns from a track of a stationary object and a moving object, according to one embodiment.

[0055] [Figure 18A] 11 is a graph showing an example of a return with another vehicle as a moving object, according to one embodiment;

[0056] [Figure 18B] 11 is a graph showing an example of a return with another vehicle as a moving object, according to one embodiment;

[0057] [Figure 18C] 11 is a graph showing an example of a return with another vehicle as a moving object, according to one embodiment;

[0058] [Figure 18D] 1 is a plot showing an example of a measured point cloud, according to one embodiment.

[0059] [Figure 18E] 1 is a plot showing an example of a measured point cloud, according to one embodiment.

[0060] [Figure 19] 1 is a block diagram illustrating a computer system in which an embodiment of the present invention may be implemented.

[0061] [Figure 20] 1 illustrates a chipset in which an embodiment of the present invention can be implemented. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0062] A method, apparatus, system, and computer readable medium utilizing Doppler correction of optical distance sensing to operate a vehicle are described. For purposes of explanation, numerous specific details are set forth in the following detailed description in order to provide a thorough understanding of the present invention. However, it will be understood by those skilled in the art that the present invention may be practiced without such specific details. In other instances, well-known structures and devices are shown in block diagram form in order to avoid unnecessarily obscuring the present invention.

[0063] Numerical ranges and parameters expressing broad ranges, even if approximate, are reported as precisely as possible in the specific non-limiting examples. However, any numerical value inherently contains certain errors resulting only from the standard deviation found in each experimental measurement at the time of making the invention. Moreover, unless otherwise clear from the context, the numerical values ​​presented in the invention have an implied precision given by the lowest digit. Thus, a value of 1.1 implies a value from 1.05 to 1.15. The term "about" is used to express a broader range around a given value, and unless otherwise clear from the context, implies a broader range around the lowest digit, such as "about 1.1" implies 1.0 to 1.2. If the lowest digit is unknown, the term "about" means two times. For example, "about X" implies a value in the range of 0.5X to 2X. For example, "about 100" implies a value in the range of 50 to 200. Moreover, all ranges disclosed herein should be understood to include any ranges and all subranges contained therein. For example, a range "less than 10" can include any range and subrange between (inclusive) a minimum value of zero and a maximum value of 10, i.e., any range and subrange having a minimum value equal to or greater than zero and a maximum value equal to or less than 10, such as 1 to 4.

[0064] Some embodiments of the present invention are described below in the context of a single front mounted high resolution Doppler lidar system on a personal vehicle. However, the embodiments are not so limited. In other embodiments, multiple systems with overlapping or non-overlapping fields of view or one or more systems mounted on smaller or larger ground, sea or space vehicles (autonomous or partially autonomous or driver assisted) are used. In some embodiments, the high resolution Doppler lidar uses a Continuous Wave (CW) laser with external modulation as described in the inventors' previous work. External modulation offers the advantages of allowing waveform flexibility through electronic control, reducing laser requirements (laser is simply CW), allowing new methods for simultaneous range and Doppler (velocity measurement), and allowing better performance at low SNR when the beam quickly passes through otherwise small target speckle realizations.

[0065] 1. Overview of Phase-Encoding Detection

[0066] Optical phase-encoding signals are used for distance measurement, where the transmitted signal is In Phase with the Carrier (phase=0) for part of the transmitted signal, and then repeatedly switches back and forth between two or more phase values ​​for the transmitted signal with one or more phase changes represented by ΔΦ (phase=ΔΦ) during a short period of time. The shortest period of constant phase is a parameter of the encoding called the pulse duration (τ), which is usually the duration of a number of periods of the lowest frequency in the band. The inverse (1 / τ) is the Baud Rate, and each Baud represents a symbol. The number of such constant phase pulses (N) during the time of the transmitted signal is the number of symbols (N), which indicates the length of the encoding. In binary encoding, there are two phase values, and of the shortest length phase, one value can be considered as 0 and the other value can be considered as 1, so a symbol is one bit, and the baud rate is also named Bit Rate. In the case of multi-phase encoding, there are many phase values. For example, ΔΦ*{0, 1, 2, 3}, ΔΦ=π / 2(90°), the four phase values ​​are equal to {0, π / 2, π, 3π / 2} respectively, so the four phase values ​​can represent 0, 1, 2, 3 respectively. In the above example, each symbol is 2 bits, and the bit rate is twice the baud rate.

[0067] Phase-Shift Keying (PSK) refers to a digital modulation method that conveys data by varying (modulating) the phase of a reference signal (carrier wave). The modulation is done by varying sine and cosine inputs at precise times. In Radio Frequency (RF), PSK is widely used for Wireless Local Area Networks (LANs), Radio Frequency Identification (RFID) and Bluetooth® communications. Alternatively, instead of operating against a constant Reference Wave, the transmission may operate against itself. The phase change of a single transmitted waveform may be considered a symbol. In such systems, the demodulator determines the change in phase of the received signal, not just the phase (relative to the Reference Wave). Because the method relies on the difference between successive phases, it is named Differential Phase-Shift Keying (DPSK). DPSK can be implemented more reliably and simply than regular PSK because the demodulator does not need to have a copy of a reference signal to determine the exact phase of the received signal (hence it is a non-coherent scheme).

[0068] In the case of optical distance measurement applications, the carrier frequency is the optical frequency f c and the RF frequency f o is modulated onto an Optical Carrier. The number of symbols N and duration τ are selected to achieve the required range accuracy and resolution. The pattern of symbols is selected to distinguish the coded signal from other sources and from noise. Thus, a strong correlation between the transmitted signal and the returned signal is a strong indication of the reflected or backscattered signal. The transmitted signal consists of one or more blocks of symbols, each long enough to provide a strong correlation with the reflected or backscattered return even in the presence of noise. In the following discussion, the transmitted signal is considered to consist of M blocks of N symbols per block, where M and N are non-negative integers.

[0069] 1A is a graphical graph 120 illustrating an example of a signal transmitted as a series of binary numbers along with a returned optical signal for distance measurement according to one embodiment of the present invention. The horizontal axis 122 indicates time in arbitrary units after a starting time of zero. The vertical axis 124a indicates the frequency f c +f o The vertical axis (124b) represents the amplitude of the optical transmitted signal at frequency f relative to zero. c +f o 1A shows the amplitude of the returned optical signal at 00011010 in arbitrary units, offset from vertical axis 124a to separate the traces. Trace 125 shows a transmitted signal of M*N binary symbols starting with 00011010 and having phase changes as shown in FIG. 1A to produce successive codes, as indicated by omission. Trace 126 shows an ideal (noise-free) return signal scattering from a stationary object (so the return is not Doppler shifted). Although the amplitude is reduced, the code 00011010 is recognizable. Trace 127 shows an ideal (noise-free) return signal scattering from an object that is moving and therefore Doppler shifted. The return is at the appropriate optical frequency f c +f o Since the signal is not detected within the expected frequency band, it is reduced in amplitude.

[0070] The observed frequency of the return, f', is the exact frequency of the Doppler return given by f=f c +f o is different.

[0071]

number

[0072] where c is the speed of light in the medium, v0 is the speed of the observer, and v sis the velocity of the source along the vector linking the receivers. It should be noted that if the observer and the source are moving in the same direction with the same velocity on the vector between them, the two frequencies will be the same. The difference between the two frequencies, Δf=f'-f, is the Doppler shift Δf, which causes problems in distance measurements. D is given by the formula 2.

[0073]

number

[0074] Note that the magnitude of the error increases with the frequency, f, of the signal. Also, for a stationary lidar system (v0=0) and an object moving at a speed of 10 meters per second (v s =10), and the frequency of visible light is about 500 THz, the magnitude of the error is 16 megahertz (MHz, 1 MHz = 10 6 It should be noted that the time period is measured in Hertz (Hz, 1 Hz = 1 cycle per second). In various embodiments described below, Doppler shift errors are detected and used in data processing for distance calculations.

[0075] In Phase Coded Ranging, the arrival of phase coded reflections is detected in the return by cross-correlating the transmitted signal or other reference signal with the returned signal, essentially embodied through down-mixing the RF signal code back into the RF band using heterodyne detection with the electrical signal from the photodetector. The cross-correlation for any one lag is calculated by convolving the two traces, i.e. multiplying the corresponding values ​​in the two traces, adding all the points in the traces, and then repeating this for each time lag. Alternatively, the cross-correlation can be done by multiplying the Fourier transforms of the two traces, followed by an inverse Fourier transform. Effective hardware and software implementations for the Fast Fourier Transform (FFT) can be widely used for both the forward and inverse Fourier transforms.

[0076] Note that the cross-correlation calculation is typically performed using an analog or digital electrical signal after the return amplitude and phase have been detected from the photodetector. To move the photodetector signal to an RF frequency distance where it can be easily digitized, the optical return signal is optically mixed with a reference signal before impinging on the detector. A phase-encoded copy of the transmitted optical signal can be used as the reference signal, but it is also possible, and often preferred, to use a Continuous Wave Carrier Frequency Optical Signal output by a laser as the reference signal and capture both the amplitude and phase of the electrical signal output by the detector.

[0077] For an ideal (noise-free) return signal reflecting off a stationary object (so the return is not Doppler shifted), the peak occurs at a time Δt after the start of the transmitted signal. This indicates that the returned signal contains a version of the transmitted phase code starting at time Δt. The range R to the reflecting (or backscattering) object is calculated from the two-way travel time delay based on the speed of light c in the medium, and is given by:

[0078]

number

[0079] For an ideal (noise-free) return signal scattered from a moving object (so the return is Doppler shifted), the return signal does not contain phase encoding in the appropriate frequency bin, correlation remains low during all time lags, and peaks are not easily detected and may often go unnoticed in the presence of noise. Therefore, Δt is not easily determined and range R is not easily generated.

[0080] According to various embodiments of the inventors' previous work, the Doppler shift is determined within the electrical processing of the returned signal, and the Doppler shift is used to correct the cross-correlation calculations. Thus, peaks can be more easily found and distances more easily determined. FIG. 1B is a graphical graph 140 showing an example spectrum of a signal transmitted according to one embodiment and an example spectrum of a Doppler shifted complex return signal. The horizontal axis 142 represents the frequency of the optical carrier f cVertical axis 144a shows the RF frequency in arbitrary units, offset from the appropriate RF frequency f. Vertical axis 144b shows the amplitude of a particular narrow frequency bin, also called the spectral density, in arbitrary units relative to zero. Vertical axis 144b shows the spectral density in arbitrary units relative to zero, offset from vertical axis 144a to separate the traces. Trace 145 shows the transmitted signal, with peaks at the appropriate RF frequency f. o Trace 146 shows an ideal (noise-free) complex return signal backscattered from an object moving towards the lidar system, and therefore Doppler shifted (called blue shifted) to a higher frequency. The return is generated at the appropriate RF frequency f o does not have a peak at Δf D The frequency f shifted by s In fact, the complex return, which shows all the in-phase and quadrature (I / Q) components of the return, is blue-shifted by +Δf D For use in determining the peak in the Doppler motion direction, the direction of motion of the object in the vector between the sensor and the object is clearly indicated in a single return.

[0081] In some Doppler compensation embodiments, Δf D Rather than taking the spectra of both the transmitted and returned signals to find Δf , searching for each peak, and then subtracting the frequency of the corresponding peak, it is more effective to take the cross spectrum of the in-phase and quadrature components of the down-mix returned signal in the RF band, as illustrated in FIG. 1B. FIG. 1C is a graphical graph 150 showing an example of a cross-spectrum, according to one embodiment of the invention. The horizontal axis 152 shows the frequency shift in arbitrary units relative to a reference spectrum, and the vertical axis 154 shows the amplitude of the cross spectrum in arbitrary units relative to zero. Trace 155 shows the frequency shift of a first object (Δf ) moving towards the lidar system. D1 Blue shift of = Δf in Figure 1B D ) and a second object (ΔfD2 The cross spectrum of the ideal (noise-free) return signal generated by the 100-MHz ... D1 ) and one of the components is red-shifted (Δf D2 ) another peak occurs when the Doppler shift is determined. This determines the Doppler shift, which is very important for collision avoidance applications and can be used to determine the closing velocity with the sign of the object around the lidar. However, if the I / Q processing is not completed, the Doppler shift can be calculated by + / - Δf D1 and + / - Δf D2 Since peaks are shown in both the Doppler motion signal and the motion direction, there is ambiguity in the Doppler motion signal and the motion direction.

[0082] As described in more detail in the inventors' previous work, the Doppler shift detected in the cross spectrum is used to correct the cross correlation so that peak 135 is evident in the Doppler compensated Doppler shifted return at lag Δt and the range R can be determined. In some embodiments, simultaneous I / Q processing is performed as described in more detail in International Patent Application Publication WO2018 / 144853 to S. Crouch et al. entitled "Method and system for Doppler detection and Doppler correction of optical phase-encoded range detection". In other embodiments, serial I / Q processing is used to determine the Doppler return code, for example as described in more detail in International Patent Application Publication WO20019 / 014177 to S. Crouch et al. entitled "Method and system for Time Separated Quadrature Detection of Doppler Effects in Optical Range Measurements". In other embodiments, other means are used to determine the Doppler correction. In various embodiments, any method or device or system known to one of ordinary skill in the art for performing Doppler correction may be used.

[0083] 2. Chirped Detection Overview

[0084] FIG. 1D is a set of graphs illustrating an example optical chirp distance measurement according to one embodiment. The horizontal axis 102 is the same for all four graphs and is in milliseconds (ms, 1 ms=10 -3Graph 100 shows the power of a beam of light used as a transmitted optical signal. The vertical axis 104 of graph 100 shows the power of the transmitted signal in arbitrary units. Trace 106 shows that power is provided starting at time 0 for a limited pulse duration, τ. Graph 110 shows the frequency of the transmitted signal. The vertical axis 114 shows the transmitted frequency in arbitrary units. Trace 116 shows that the frequency of the pulse increases from f1 to f2 over the pulse duration τ, thus having a bandwidth B=f2-f1. The rate of frequency change is (f2-f1) / τ.

[0085] The returned signal is shown in graph 160, which has a horizontal axis 102 indicating time and a vertical axis 114 indicating frequency as in graph 110. The chirp 116 of graph 110 is also shown as a dashed line on graph 160. The first returned signal, provided in trace 166a, is the transmitted reference signal, reduced in intensity (not shown) and delayed by Δt. When the returned signal is received from the external object after covering a distance of 2R, the returned signal starts with a delay Δt, provided by 2R / c according to equation 3 above, where R is the range to the target and c is the speed of light in the medium (approximately 3×10 8 The frequency during that time is given by multiplying the amount of distance, i.e., the frequency change rate, by the delay time, and is expressed as f R The change is made by an amount called, which is given by the number 4A.

[0086]

number

[0087] f R The value of R is measured by the frequency difference between the transmitted signal 116 and the returned signal 166a in a time-domain mixing operation called De-chirping. The distance R is therefore given by Equation 4B.

[0088] Of course, if the returned signal arrives after the pulse has been completely transmitted, i.e., 2R / c is greater than τ, then equations 4A and 4B are not valid. In this case, the reference signal is delayed by a known or fixed amount to cause the returned signal to overlap with the reference signal. The fixed or known delay time of the reference signal is multiplied by the speed of light, c, to provide an additional distance that is added to the distance calculated from equation 4B. Although the absolute distance may be inaccurate due to uncertainties in the speed of light in the medium, this is a Near-Constant Error, and the relative distance based on frequency difference is still very accurate.

[0089] In some circumstances, the point illuminated by the transmitted light beam encounters two or more different scatterers at different distances, such as in front of and behind a semi-transparent object, or closer and farther parts of an object at different lengths from the lidar, or two distinct objects within the illuminated point. In such circumstances, a second reduced intensity and differently delayed signal will also be received, as shown in graph 160 by trace 166b. This can be achieved by using equation 4b to provide different distances, f R In some circumstances, multiple additional returned signals are received.

[0090] Graph 170 shows the frequency f of the difference between the first returned signal 166a and the reference chirp 116. R 1D. The horizontal axis 102 represents time, as in all other aligned graphs in FIG. 1D, and the vertical axis 164 represents frequency difference on a much larger scale. Trace 176 represents the frequency difference of a constant frequency f R , and indicates a particular distance given by Equation 4B. The second returned signal 166b, if present, is a signal having a larger f R (not shown) value, which results in the larger distance being calculated using number 4B.

[0091] A common method for dechirping is to direct the reference and returned optical signals to the same photodetector. The electrical output of the detector is dominated by a beat frequency that is the same as or depends on the difference in frequency and phase of the two signals focused on the detector. A Fourier transform of the electrical output signal will give rise to a peak at the beat frequency. The beat frequency is in the range of terahertz (THz, 1 THz = 10 12 Hz) optical frequency distance is not megahertz (MHz, 1MHz = 10 6 Hz = 10 per second 6 The signal is then at a radio frequency (RF) distance of 100 MHz (100 MHz cycles). The signal is easily processed with common and inexpensive RF components such as FFT algorithms implemented in a microprocessor or custom fabricated FFT (Fast Fourier Transform) or other Digital Signal Processing (DSP) integrated circuits. In another embodiment, the return signal is mixed with a continuous wave (CW) tone that acts as a local oscillator (compared to a chirp as a local oscillator). This induces a detected signal that is itself a chirp (or whatever waveform was transmitted). In this case, the detected signal undergoes Matching Filtering in the digital domain as described in Kachelmyer 1990. A disadvantage is that the digitizer bandwidth requirements are generally high. The positive aspects of coherent detection are preserved in other approaches.

[0092] In some embodiments, the lidar system is modified to generate simultaneous up and down chirps. This approach eliminates variability introduced by object velocity differences that actually change the range, or by changing the lidar position relative to the object, changing the temporal scatterers within the beam, among others, or in any combination. This approach also ensures that the range and Doppler shifts measured as up and down chirps are actually the same, and can be combined very usefully. The Doppler approach captures return pairs that are asymmetrically shifted in frequency space in parallel, ensuring a high probability of accurate compensation.

[0093] Figure 1E is, according to one embodiment, a graph using a symmetric LO signal, and shows the return signal of the frequency time plot without Doppler shift by a dashed line. The horizontal axis represents time in units of 10 -5 seconds (tens of microseconds). The vertical axis represents the carrier frequency f c or the frequency of the optical transmission signal relative to the reference signal in gigahertz (10 9 Hertz). During the pulse duration, an optical beam containing two optical frequencies is generated at all times. While one frequency increases from, for example, f1 to f2 (1 to 2 GHz above the optical carrier), the other frequency decreases from f4 to f3 (1 to 2 GHz below the optical carrier). Since the two frequency bands (for example, band 1 from f1 to f2 and band 2 from f3 to f4) do not overlap, the transmitted signal and the return signal can be optically separated by a high-pass filter, a low-pass filter, or a combination thereof having a passband starting from all pass frequencies f p . For example, f1 < f2 < f p < f3 < f4 can be. In the disclosed embodiments, the higher frequency provides an up-chirp and the lower frequency provides a down-chirp, but in other embodiments, the higher frequency generates a down-chirp and the lower frequency generates an up-chirp.

[0094] In some embodiments, two different laser sources are used to generate two different optical frequencies with their respective beams at each time. However, in some embodiments, a single optical carrier is modulated by a single RF chirp to generate symmetrical sidebands that act as simultaneous up and down chirps. In some of the above embodiments, a double sideband Mach-Zehnder modulator that generally does not leave much energy at the carrier frequency is used. Instead, almost all of the energy goes into the sidebands.

[0095] As a result of sideband symmetry, the bandwidth of the two optical chirps can be the same when the same order of sidebands are used. In other embodiments, other sidebands are used, such as second order sidebands, or second sidebands that do not overlap with the first order sidebands, or some other combination.

[0096] As explained in WO 2018 / 160240, a U.S. patent application published by Crouch et al. entitled "Method and System for Doppler Detection and Doppler Correction of Optical Chirped Range Detection," when selecting transmit (TX) and local oscillator (LO) chirp waveforms, it is advantageous to have the system's frequency shift band make the most of the available digitizer bandwidth. Typically, this is done by shifting the up-chirp or down-chirp to have a range frequency beat closer to zero.

[0097] FIG. 1F is a graph similar to FIG. 1E using a symmetric LO signal, according to one embodiment, showing the return signal in the frequency-time plot in dashed lines when there is a non-zero Doppler shift. In the case of chirp waveforms, time-separated I / Q processing (also known as time-domain multiplexing) can be used to overcome the hardware requirements of the other approaches mentioned above. In this case, an Acousto-Optic Modulator (AOM) can be used to disambiguate the range Doppler to the real-value signal. In some embodiments, up- and down-chirp returns can be used in pairs in a scoring system, as described in more detail in the cited patent application publication WO2018 / 160240. In other embodiments, I / Q processing can be used to determine the sign of the Doppler chirp, as described in more detail in S. Crouch et al.'s patent application publication WO20019 / 014177, entitled "Method and System for Time Separated Quadrature Detection of Doppler Effects in Optical Range Measurements."

[0098] 3. Overview of Light Detection Hardware

[0099] To explain how to use the high-resolution range Doppler detection system, several general hardware approaches are described. FIG. 2A is a block diagram illustrating exemplary components of a high-resolution lidar system according to one embodiment. Optical signals are represented by arrows. Electronic wired or wireless connections are represented by lines without arrowheads. A Laser Source 212 emits a phase or frequency modulated carrier 201 from a modulator 282a before or after a splitter 216 to generate a phase coded or chirped optical signal 203 with duration D. The splitter 216 splits the modulated (or, as shown, unmodulated) optical signal for use in a reference path 220. A target beam 205, also called a transmitted signal in the present invention, is generated, which has most of the energy of the beam 201. A modulated or unmodulated reference beam 207a is also generated, which has a much smaller amount of energy sufficient to generate good mixing with the returned light 291 scattered from an object (not shown). In the illustrated embodiment, the reference beam 207a is individually modulated by the modulator 282b. The reference beam 207a passes through the reference path 220 and is directed to multiple detectors as the reference beam 207b. In some embodiments, the reference path 220 provides a delay sufficient for the reference beam 207a to reach the detector array 230 with light scattered from objects external to the lidar within a spread of the distance of interest. In some embodiments, the reference beam 207b is named a Local Oscillator (LO) signal, which refers to previous approaches that generate the reference beam 207b locally from a separate oscillator. In various embodiments, from less flexible to more flexible approaches, the reference will arrive in a scattered or reflected field through:1) by placing a mirror in the scene to reflect a portion of the transmit beam back at the detector array so that the path lengths are closely matched, 2) by closely matching the path lengths and using fiber delays to broadcast a reference beam with optics around the detector array, with or without path adjustments to compensate for observed or predicted phase differences for a particular distance as suggested in Figure 2, or by using a frequency shifting device (acousto-optic modulator) or time delays of local oscillator waveform modulation to generate separate modulation to compensate for path length mismatch, or some combination. In some embodiments, the object is close enough and the transmitted duration is long enough that the return overlaps well with the reference signal without delay.

[0100] The transmitted signal may often be transmitted to illuminate an area of ​​interest via scanning optics 218. The detector array is a one-dimensional (1D) or two-dimensional (2D) array of paired or unpaired detectors arranged in a plane that is approximately perpendicular to the returned beam 291 from a single paired or unpaired detector or object. The reference beam 207b and the returned beam 291 are combined in zero or more optical mixers 284 to generate optical signals of a suitable characteristic that are detected. The frequency, phase or amplitude or some combination of the interference pattern is recorded by the acquisition system 240 for each detector multiple times during the signal duration D.

[0101] The number of Temporal Samples processed per signal duration affects the Down-Range Extent. The number is a practical consideration, selected based on the number of symbols per signal, the signal repetition rate, and the available camera frame rate. The frame rate is the sampling bandwidth, also called the "Digitizer Frequency". The only fundamental limit on the distance scale is the coherence length of the laser and the length of the previous chirp or unique phase code before it can be repeated (for unambiguous distance measurements). This is made possible because the returned Heterodyne signal or digital record of bits can be compared or cross-correlated with any portion of the transmitted bits from the previous transmission history.

[0102] The acquired data is made available to a processing system 250, such as a computer system as described below with reference to FIG. 19 or a chipset as described below with reference to FIG. 20. A signed Doppler compensation module 270 determines the sign and magnitude of the Doppler shift and a corrected distance based thereon along with any other corrections described herein. In some embodiments, the processing system 250 also provides a scanning signal for driving the scanning optics 218 and includes a modulation signal module for transmitting one or more electrical signals that drive the modulators 282a, 282b as shown in FIG. 2. In the illustrated embodiment, the processing system also includes a vehicle control module 272 for providing information about the position and movement of the vehicle with respect to a shared geospatial coordinate system or with respect to one or more detected objects or a combination of parts. In some embodiments, the vehicle control module 272 also controls the vehicle (not shown) in response to such information.

[0103] Any known device or system can be used to embody the laser source 212, the modulators 282a, 282b, the beam splitter 216, the reference path 220, the optical mixer 284, the detector array 230, the scanning optics 218, or the acquisition system 240. Optical coupling to a flood or focus to a target or focus via a pupil plane is not shown. As used in the present invention, an optical coupler is any component that affects the propagation of light in spatial coordinates to guide light from one component to another, such as vacuum, air, glass, crystal, mirror, lens, optical circulator, beam splitter, phase plate, polarizer, optical fiber, optical mixer, alone or in some combination, among others.

[0104] FIG. 2A also shows an example of components for a simultaneous up and down chirp lidar system according to one embodiment. In the embodiment, the modulator 282a is a frequency shifter added to the optical path of the transmitted beam 205. In other embodiments, the frequency shifter is added in place of the optical path of the returned beam 291 or the reference path 220. In general, the frequency shifter component is added on the local oscillator (LO, or named reference path) side, such as the device used in the modulator 282b (e.g., an Acousto-Optic Modulator (AOM)), or on the transmit side (before the optical amplifier) ​​as the modulator 282b, since the device used in the modulator has associated losses, it is disadvantageous to place loss components on the receive side or after the optical amplifier. The purpose of the optical shifter is to shift the frequency of the transmitted signal (or return signal) relative to the frequency of a reference signal by a known Δf so that the beat frequencies of the up and down chirps occur in different frequency bands that can be picked up, for example, by a Fast Fourier Transform (FTT) component in the processing system 250 in the analysis of the electrical signal output by the photodetector 230. s For example, the blue shift that induces the distance effect is f B If , the beat frequency of the up-chirp increases by the offset, f B +Δf s The beat frequency of the down chirp is reduced by the offset to f B -Δf s Therefore, the up chirp is in a higher frequency band than the down chirp, so they can be separated from each other. If Δf s If is larger than the expected Doppler effect, the distance ambiguity associated with up-chirps and down-chirps may disappear.

[0105] The measured beats are then scaled to a known Δf to obtain the appropriate up-chirp and down-chirp distances. sIn some embodiments, the RF signal leaving the balanced detector is digitized directly with the bands separated via a Fast Fourier Transform (FTT). In some embodiments, the RF signal leaving the balanced detector is digitized after being pre-processed with analog RF electronics to separate a lower band (corresponding to one of the up-chirp and down-chirp) that can be digitized directly and a higher band (counter-chirp) that can be electronically downmixed to baseband. Both embodiments provide a path to match the band of the detected signal to the Digitizer resources.

[0106] 2B is a block diagram illustrating a sawtooth scan pattern of a high resolution Doppler LIDAR system used in some embodiments. The scan sweeps a range of azimuth angles (horizontal) and tilt angles (from horizontal with a tilt of zero (0) to upward and downward elevation). In other embodiments, other scan patterns are used. For example, in some embodiments, adaptive scanning may be performed using the methods disclosed in International Patent Application Publications entitled "Method and system for adaptive scanning with optical ranging systems" by Crouch, WO 2018 / 125438 or "Method and system for automatic real-time adaptive scanning with optical ranging systems", WO 2018 / 102188.

[0107] FIG. 2C is an image showing an example of a velocity point cloud generated by a scanning high resolution Doppler lidar system according to one embodiment. Although called a point cloud, each element of the cloud represents a return from a single spot. The size of the spot is a function of the beam width and distance. In some embodiments, the beam is typically about 1 mm (mm, 1 mm = 10 -3A pencil beam with a circular symmetric Gaussian collimated beam and cross-sectional diameter (beam width) emitted from the lidar system between 1000 and 10000 meters. Each pixel in the 2D image represents another point illuminated by a specific azimuth and tilt angle, and each point can be associated with a distance (3rd dimension) and velocity (4th dimension) relative to the lidar. In some embodiments, the reflectivity measurement is also represented by the intensity or amplitude of the returned signal (5th dimension). Thus, each point in the point cloud is represented as at least a 4D vector and possibly a 5D vector.

[0108] Using the above mentioned techniques, a scanning high resolution range Doppler lidar generates a high resolution 3D point cloud image that is signed with the relative velocity of the scene from the lidar system's view for each point. With the current high resolution Doppler lidars mentioned above, the Doppler relative velocity is determined with high granularity (<0.25m / s) over a very large speed spread (>+ / -100m / s). The use of coherent measurement techniques translates the inherent sensitivity to Doppler into simultaneous range Doppler measurements for the lidar scanner. Coherent measurement techniques also enable much higher dynamic range measurements compared to conventional lidar solutions. The combination of the above data fields allows for very effective vehicle location in the presence of INS (Inertial Navigation System) dropouts.

[0109] 4. Overview of Vehicle Control

[0110] In some embodiments, the vehicle is controlled at least in part based on data received from a high resolution Doppler LIDAR system mounted on the vehicle.

[0111] FIG. 3A is a block diagram illustrating an example of a system including at least one high-resolution Doppler LIDAR system 320 mounted on a vehicle 310, according to one embodiment. The vehicle has a center of mass indicated by a star 311 and moves in a forward direction given by an arrow 313. In some embodiments, the vehicle 310 includes components such as steering or braking systems (not shown) that operate in response to signals from a processor. In some embodiments, the vehicle has an on-board processor 314, such as the Chip Set shown in FIG. 20. In some embodiments, the on-board processor 314 communicates with a remote processor by wire or wireless communication, as shown in FIG. 19. The high-resolution Doppler LIDAR uses a scanning beam 322 that sweeps the azimuth field of view 324 as well as the surrounding vertical angle (not shown) from one side to the other, represented by a future beam 323. In some embodiments, the field of view is 360 degrees in azimuth. In some embodiments, the Inclination Angle Field of View is from about +10 degrees to about -10 degrees, or any subset thereof.

[0112] In some embodiments, the vehicle includes ancillary sensors (not shown) such as a GPS sensor, an odometer, a tachometer, a temperature sensor, a vacuum sensor, a voltage or current sensor, as are well known to those skilled in the art. In some embodiments, a gyroscope 330 is included to provide rotational information.

[0113] Also shown in Figure 3A is a Global Coordinate System represented by an arrow pointing north and an arrow pointing east from a known geographic location represented by the point at the base of the two arrows. Mapping system data, such as a Geographical Information System (GIS) database, is positioned relative to the Global Positioning System. When controlling a vehicle, it is advantageous to know the vehicle's position and orientation in the Global Coordinate System, as well as the vehicle's relative position and movement compared to other moving and non-moving objects around the vehicle.

[0114] 3B is a block diagram illustrating an example of a system including multiple high resolution Doppler LIDAR systems mounted on a vehicle 310 according to one embodiment. Items 310, 311, 313, and 314 and the global coordinate system are as shown in FIG 3A. Here, multiple high resolution Doppler LIDAR systems 340a, 340b, 340c, and 340d (collectively referred to as LIDAR systems 340 hereinafter) are disposed on the vehicle 310 to provide complete angular coverage that overlaps at least some angles for a range exceeding a certain distance.

[0115] FIG. 3C is a block diagram illustrating an example including multiple high-resolution Doppler lidar systems 340 mounted on a vehicle 310 in relation to objects detected from a point cloud, according to one embodiment. Items 310, 311, 313, 314, 340, 342, 343, and 344 are as in FIG. 3B. Items that can be detected in a 3D point cloud from the system 340 include a road surface 391, a curve 395, a stop signal 392, light posts 393a, 393b, and 393c (collectively referred to as light posts 393), lane markings 394, and another moving vehicle 396. The other moving vehicle 396 is rotating, so that a velocity vector 397a in front of the vehicle is different from a velocity vector 397b behind the vehicle. Some items, such as the stop signal 392 and the light post 393, may have a global coordinate system in a database of a Geographical Information System (GIS).

[0116] Figure 4 is a flow diagram illustrating an example method 400 for using data from a high resolution Doppler lidar system in an autonomous or assisted vehicle setting, according to one embodiment. Although the steps in Figure 4 and subsequent flow diagrams Figures 6, 8, 10, 12, 14, and 16 are shown in a particular sequence for illustrative purposes, in other embodiments, one or more of the steps, or portions thereof, may be performed in a different sequence, superimposed in series or parallel, omitted, or one or more additional steps may be added, or modified in some combination.

[0117] In step 401, a high resolution lidar system 340 is configured on the vehicle 310 (hereafter referred to as the Own Vehicle to distinguish other vehicles 396 in the vicinity). In some embodiments, the configuration includes installing the lidar system 340 on the vehicle 310. Configuration data is stored in a database of multiple Own Vehicles, either on the vehicle 310, remotely, or some combination. The configuration data includes at least the position of the system 340 relative to the center of mass 311 of the vehicle and the field of view 344 of the system relative to the vehicle's forward direction 313. In some embodiments, step 40 includes storing values ​​of other constants or parameters of the method to be used in one or more of the subsequent steps, such as, for example, a solution tolerance value for the Own Vehicle's speed, as described below with reference to FIG. 8.

[0118] In step 403, the Own Vehicle's sensor systems are operated, such as speed information from an odometer, position information from a GPS receiver, orientation information from a gyroscope, and an Inertial Navigation System (INS) to obtain high resolution Doppler LIDAR 3D point cloud data that corrects the position and orientation of the LIDAR field of view relative to the vehicle's center of mass and orientation. The correction data is stored in one or more databases.

[0119] At step 405, a high resolution Doppler LIDAR, higher than any calibration measurement, is operated to construct a scene including a 3D point cloud with relative velocity at each point as a result of one complete scan with each of the one or more LIDAR systems 340. At step 411, the scene data is analyzed to determine stationary objects (e.g., road surface 391 or traffic sign board 392 or lamp post 393 or curve 395 or marking 394 or some combination), the movement of the ego-vehicle relative to the stationary objects (also referred to as Ego-Motion), and, if present, the speed and direction of one or more moving objects (e.g., 396). Various embodiments of methods for determining each or all of the foregoing results are described in more detail below with reference to the remaining flow charts.

[0120] It is advantageous for the Ego-Motion determination to be fast enough to sense motion changes (accelerations) before dealing with large distances (such as the size of the vehicle). max ) is the scan period (T scan ) and Doppler resolution (r D ) is advantageously small compared to the product

[0121] For example, r D = 0.25 m / s, 10 Hz scan rate (T scan =0.1sec) the lidar sensor detects vehicle acceleration of 2.5m / s 2If the velocity solution exceeds 100 m / s, moving actors may not be properly separated. This is not a particularly high value, so current implementations solve for the velocity of each "framelet" (a left-to-right scan of a vertical array of one or more simultaneous Doppler lidar beams) rather than the entire vertical frame (comprising one or more framelets taken sequentially at different tilt angle offsets). This allows a typical velocity solution to operate with an effective scan rate of 80 Hz, up to 20 m / s, more than twice the acceleration of gravity, which is sufficient for many vehicle scenarios, including most automotive operations. 2 Similar limitations exist for velocity estimation of other objects, primarily because the change in velocity over the range of the other object advantageously exceeds a characteristic Doppler noise value for determining the movement of the other object.

[0122] Typically, it is useful to measure each point in a point cloud in less than a millisecond, allowing a point cloud of hundreds of points to accumulate in less than 1 / 10 of a second. Faster measurements on the order of tens of microseconds can result in a 100 times larger point cloud. For example, the high resolution Doppler phase encoded lidar mentioned above can achieve a baud rate of 500 Mbps and 1 Gbps. As a result, the duration of the code for a single measurement is approximately 500 nanoseconds (ns, 1 ns = 10 -9 It is noted that under these conditions the Range Window can be extended to several kilometers and the Doppler resolution can also be very high (depending on the duration of the transmitted signal).

[0123] In step 421, it is determined whether the moving object indicates a danger to the Own Vehicle, for example, if the Own Vehicle's speed or the moving object's speed or some combination indicates a collision or near collision. If so, in step 423, hazard mitigation measures are initiated, for example, by sending an alert to the driver or a command signal to the Own Vehicle to activate one or more systems, such as brakes, steering, or airbags. In some embodiments, the hazard mitigation measures include determining the objects predicted to be involved in a collision or near collision. For example, if the other object is a person or a large moving object such as a train or truck, a severe collision avoidance may be allowed that may cause the Own Vehicle to skid or roll, but if the other object is a stop sign or curb, the collision may be slowed. In some embodiments, the object is identified based on a change in reflectivity or shape or some combination using any method known to those skilled in the art. For example, in some embodiments, classification is performed using the method described in PCT patent application WO2018 / 102190 by Crouch, entitled "Method and system for classification of an object in a point cloud data set." In some embodiments, the object is identified based on a GIS that indicates the global position of the ego-vehicle and its global position relative to other stationary or moving objects. Control then returns to step 405 to collect the next scene using the high resolution Doppler lidar system 340. The loop of steps 405 through 411 through 421 through 423 is repeated until no hazard is determined in step 421. Obviously, the faster the scans are measured, the more quickly the loop can be completed.

[0124] In step 431, it is determined whether the ego-vehicle speed is reliable (indicated by YES in FIG. 4). For example, the calibration data indicates that the odometer is working properly and a signal is being received at the odometer, or the gyroscope indicates that the ego-vehicle is not rotating. In some embodiments, the speed determined from the 3D point cloud relative speed is used to determine the speed in the global coordinate system, and if the odometer does not match the speed determined from the point cloud, it is not a normal speed. Otherwise, the speed in step 433 is determined based on the 3D point cloud for which there is relative speed data. In some embodiments, the speed relative to the road surface or other ground is automatically determined in step 411. In some embodiments, the speed previously used relative to the ground is used in step 433. In some embodiments, 3D point cloud data is selected for such speed determination, and the speed determination is made instead or again during step 433. Control then proceeds to step 441.

[0125] In step 441, for example, if values ​​for the parameters are in one or more ego vehicle databases, it is determined whether the ego vehicle's speed and direction indicate a risk, such as a risk of road departure or exceeding a safe speed range for road conditions. If so, control proceeds to step 433 to initiate risk mitigation measures. For example, in various embodiments, initiating risk mitigation measures may include sending an alert to the driver or sending a command signal so that one or more systems of the ego vehicle, such as braking or steering, are activated to slow the vehicle to a safe speed and direction, or an airbag is deployed. Control then returns to step 405 to collect high resolution Doppler LIDAR data to generate the next scene.

[0126] In step 451, it is determined whether the position of the ego-vehicle can be trusted (indicated by YES in FIG. 4). For example, the length to a highly reflective point, such as a curb or lane marking, matches one on the road going in the right direction. If not, in step 453, a relative position is determined based on the 3D point cloud with relative speed data based on the road markings and the measured length to a highly reflective point, such as a curb. In some embodiments, such a relative position of the ego-vehicle is determined automatically in step 411. In some embodiments, a previously used relative position is used in step 453. In some embodiments, the 3D point cloud data of a highly reflective stationary object is selected during step 453 to determine the relative position of the ego-vehicle. Control then proceeds to step 461.

[0127] In step 461, it is determined whether the relative position of the host vehicle indicates a risk, such as a risk of road departure. If so, control proceeds to step 463 to initiate risk mitigation measures. For example, in various embodiments, initiating risk mitigation measures may include sending a warning to the driver, sending a command signal to activate one or more systems of the host vehicle, such as braking or steering, to guide the host vehicle to remain on the road, or to deploy an airbag. Control then proceeds back to step 405 to collect high resolution Doppler lidar data to construct the next scene.

[0128] If no hazards are detected in steps 421, 441 or 461, control proceeds to step 470. In step 470, a global position is determined based on the 3D point cloud with relative speed data. In some embodiments, such global position of the ego-vehicle is determined automatically in step 411. In some embodiments, the previously used global position of the ego-vehicle is used again in step 470. In some embodiments, 3D point cloud data of stationary objects such as road sign boards and lamp posts or moving objects with precisely known global coordinates and trajectories such as trajectory objects are selected and cross-referenced with the GIS in step 470 to determine the global position of the ego-vehicle. In some embodiments, step 470 is omitted. Control then proceeds to step 481.

[0129] At step 481, it is determined whether the global position of the host vehicle indicates a risk, such as a risk of being on a wrong road to proceed to a particular destination. If so, control proceeds to step 483 to initiate risk mitigation measures. For example, in various embodiments, initiating risk mitigation measures may include sending an alert to the driver or sending a command signal to cause one or more systems on the host vehicle, such as braking or steering, to navigate to the correct global position of the host vehicle or to deploy an airbag. Control then returns to step 405 to collect high resolution Doppler lidar data to construct the next scene.

[0130] If no danger is detected in steps 421, 441, 461 or 481, control proceeds to step 491 to determine whether an end condition is met. Any end condition may be used in various embodiments. For example, in some embodiments, an end condition is met when it is detected that the vehicle has been powered off, a particular destination has been reached, or a command has been received from the driver to turn off the system. If an end condition is not met, control returns again after step 403 described above. Otherwise, the process is terminated.

[0131] 5. Illustrative Examples

[0132] FIG. 5A is a block diagram illustrating example computational components for detecting ego-motion (Ego-Motion) of an ego vehicle relative to a stationary road surface, according to one embodiment. The sensor 520 of the High Resolution Doppler LIDAR system is mounted on a vehicle traveling at a velocity V (in the forward direction of the vehicle). The sensor is at an elevation above the road surface and receives returns from points 591, 592 ahead of the road surface 590 corresponding to scanning beams at tilt angles l1 and l2 expressed as unit vectors (e.g., magnitude=1) during a scan that is short compared to the time it takes the vehicle to move a significant distance. The relative velocity V of the returns from the fixed points 591, 592 is r1 and V r2 is measured directly by a high-resolution Doppler lidar system observed in the reference frame of sensor 520. The velocity is the same as the dot product of the respective inverse unit vectors l1′ and l2′, as presented in Equations 5a and 5b.

[0133]

number

[0134] l1' and l2' are known, and V r1 and V r2 is measured and V is assumed to be horizontal (parallel to the road surface 590) and in the direction of vehicle travel, so each equation can be solved for V. However, due to systematic errors, there may be errors in each determination. To eliminate the systematic errors, the difference can be determined by equation 5C, and the difference equation can be solved for V.

[0135] or it may be expressed differently as the number 5D.

[0136] Here, ΔV r =V r1 -V r2and Δl'=l1'-l2' as shown in FIG. 5. Thus, the lidar system is operated to collect point cloud data indicating at each point the inclination angle and relative velocity between the point and the lidar system. A number of stationary points are identified in the point cloud based on the inclination angle for each point. A determination of the lidar ground speed (and by extension the vehicle ground speed inference) is then based on the relative velocities corresponding to the number of stationary points.

[0137] It should be noted that the processing is limited to two dimensions (slant and Doppler components) out of the four or five dimensions (slant, azimuth, range and Doppler components) available in the data. This is an example of determining attribute values ​​for objects in a point cloud based on only three or fewer dimensions out of at least four. The advantage of the two dimensional approach is that it is much more efficient than the various computational methods for solving simultaneous equations with noise that must be performed in three or four dimensions. A common method for solving simultaneous linear equations with noise is commonly referred to as Least Squares Solutions and primarily involves the use of identities to find the solution of x=(A T *A) -1 *A T *b, the quantity b-Ax that implies b, is minimized. To do this, (A T *A) needs to be found. This is typically done through SVD (Singular Value Decomposition) or Complete Orthogonal Decomposition (COD). Such is computationally intensive the higher the dimensions of the vectors b, x and matrix A. Therefore, the solution can be determined in less time with all the available processing. Thus, the approach provides more time to react to critical situations.

[0138] 5B is an example of a raw Doppler LIDAR point cloud rendered in x / y / z space without ego-motion compensation, according to one embodiment. FIG 5C is an example of an implemented Doppler LIDAR point cloud rendered in x / y / z space with ego-motion distance compensation based on a Doppler calculation velocity solution, according to one embodiment.

[0139] FIG. 6 is a flow diagram illustrating an example of a method for determining the speed of an ego-vehicle, according to one embodiment. The embodiment is based on equations 5A to 5D. In step 601, high resolution Doppler lidar data is obtained, corresponding to step 405 of FIG. 4. In step 603, points of data corresponding to stationary ground and in front of the vehicle are identified. In some embodiments, ground points are identified based on manual input, such as using a Graphical User Interface (GUI) to allow a user to circle points in the 3D data cloud to use as ground points. This can also be done automatically based on geometric features, but for example, points along a line in front of the vehicle at a slant angle of the shadow along the vehicle's heading direction 313 can be used.

[0140] Objects moving between the points can confuse the calculations, so an effort is made to discard most of the points that satisfy the geometric conditions and other velocities that have large velocity differences.

[0141] In step 605, a unit vector l between the sensor and a number of points on the ground is determined. In step 607, Δl′ is determined for any pair of points on the ground. In step 609, ΔV ris determined based on the measured Doppler velocity for any pair of points. In step 611, the number 5D is calculated for any pair to obtain V. In some embodiments, steps 607, 609 and 611 are repeated and averaged for multiple any pairs to further reduce the effects of noise in the measurement.

[0142] 7A and 7B are graphs illustrating an example of a comparison between velocities derived from Global Positioning System (GPS) data and high-resolution 3D Doppler Lidar data, according to one embodiment. FIG. 7A shows a graph 710 with a horizontal axis showing time in arbitrary units of number of scans and a vertical axis showing speed in the forward direction 313 in units of meters per second from a minimum of about 1 to a maximum of about 15. Trajectory 716 shows the GPS derived speed and is referred to as the GPS solution. The vehicle comes to a near stop at point 716a and reaches a high speed at point 716b. Box 718 shows the section redisplayed on an expanded scale in graph 720 of FIG. 7B. Graph 720 shows a graph 720 with a horizontal axis showing time in arbitrary units of number of scans and a vertical axis showing speed in the forward direction 313 in units of meters per second from a minimum of about 11.1 to a maximum of about 12. Trace 726 shows the GPS solution, and trace 727 shows the velocity derived from the point cloud from a high resolution Doppler, called the Doppler solution. They match closely to within about 0.1 meters per second. There is systematic error making up the very small shifts found in both of the two traces.

[0143] In fact, the number 5D itself is the measurement V r1 and V r2In the past, it was difficult to objectively determine a point that represents a stationary ground rather than a moving object because of the influence of any noise in the direction 313 of the vehicle. It was recognized that velocities measured in directions other than the vehicle's direction 313 can be used to reduce the effect of noise when determining the vehicle speed (speed and direction) of the ego-vehicle. Also, using other azimuth directions may avoid the assumption that the vehicle is moving in a forward direction. Figures 7C-7E are graphs showing an example of the velocity dependence from a Doppler LIDAR on azimuth angle relative to the vehicle's direction of travel, according to one embodiment. Plot 730 in Figure 7C shows Doppler velocity measured in one experiment scanning through 360 degrees. The horizontal axis shows azimuth angle from -180 degrees to 180 degrees. The vertical axis shows Doppler velocity in meters per second from -2.5 to +2.5. The open circle shows the ground measurement (i.e., the assumed stationary point). Multiple velocities are measured as the LIDAR scans 360 degrees multiple times at each azimuth angle. The range of velocities in the experiments arises due to noise in the measurements, in which there were no moving objects to contaminate the measurements of stationary points in the point cloud.

[0144] Azimuths in Front indicate positive speed as the relative motion moves towards the vehicle, with a maximum value in the direction of travel near an azimuth of 0 degrees relative to the direction 313 of the vehicle 310. The difference from 0 indicates the speed difference from the estimated forward direction of the vehicle. Rearward Azimuth indicates negative speed as the relative motion of a point on the ground moves away from the vehicle. The data may be fit to a polynomial given by Trace 737 similar to a cosine function. Thus, the azimuth direction of the ground speed is determined based on the azimuth associated with the stationary point of the multiple stationary points where the relative speed is maximum. The actual ground speed is then based on the stationary points where the relative speed is maximum.

[0145] The same noise average maximum is obtained using a subset of data relative to the vehicle's direction of travel. Plot 740 in FIG. 7D has a horizontal axis showing azimuth angles from -30 degrees to 30 degrees. The vertical axis shows Doppler velocity in meters per second from 0 to +2.5. Dots 746 show measurements from an azimuth angle of approximately -25 degrees to approximately 25 degrees, and trajectory 747 shows the polynomial fit. Similarly, plot 750 in FIG. 7E has a horizontal axis showing azimuth angles from -60 degrees to 60 degrees. The vertical axis shows Doppler velocity in meters per second from 0 to +2.5. Dots 756 show measurements from an azimuth angle of approximately -25 degrees to approximately 25 degrees, and trajectory 757 shows the polynomial fit. Essentially, the azimuth-corrected vehicle speed is represented by the polynomial trajectory of FIG. 7C-7D.

[0146] In the experiment, all points are oriented toward a stationary ground, so the vehicle velocity is given by the Doppler for which the polynomial fit is maximal. The Doppler velocity V at each point is the dot product of the beam direction given in Equation 6 and the unit vector l of the vehicle velocity V.

[0147]

number

[0148] 7F is a graph showing an example of measuring velocity dependence from a Doppler lidar on azimuth angle, according to one embodiment. The projection shown shows a Doppler lidar point cloud rendered in azimuth / distance / Doppler space, but rotated to display only the azimuth and Doppler axes. From this perspective, another moving object becomes apparent, as does the cosine structure of a stationary point.

[0149] The two-dimensional treatment of equations 5A through 5D is generalized to three dimensions, with x, y, and z denoting east, north, and up, respectively. A computationally efficient, but potentially numerically unstable, approach is to use the three unknowns in equation 6 to form a three equation system for the set of points detected by the scanner within a short time interval. The simultaneous equations are of the form:

[0150]

number

[0151] A is a matrix of inverse unit vectors l' for each Doppler measurement. Each vector l' has three components l for the x, y and z directions. x 'l y 'l z ', V is a three-dimensional vector of vehicle speed and an array D of scalar measured Doppler relative velocity.

[0152]

number

[0153] Equation 8 may be calculated in such a way as to repeatedly invert and dot-product A to provide a value for V, the velocity vector.

[0154] The approach is sensitive to the selection of points used to form the system, but may fail to find the inverse A if the matrix A is singular. This occurs when the points have very similar beam vectors, for example when the points are collected over a small angular region. Also, for measurements of Doppler values ​​such as distance, noise may prevent accurate solutions, and the solution must converge through iterative execution. The formula is very sensitive to the points of moving objects included in the solution, so a simple, low-level method is advantageous to avoid including the points of moving objects. In some embodiments, moving objects may be segmented by applying a filter based on compatibility with the latest previous velocity solution. For the normalized beam vector of the nth sample, the Doppler detection of stationary objects should follow the relationship given in Equation 9.

[0155]

number

[0156] where ΔV is a small vector that represents the amount of expected error in the scanner's Doppler velocity measurement multiplied by the maximum expected change in vehicle speed since the previous solution was sampled. This can be evaluated by the most recent acceleration and sampling time (scan or subscan period), among other approaches.

[0157] An alternative approach used in some embodiments is to find an Over-Determined Least Squares Solution, for example based on Singular Value Decomposition (SVD), where A is a matrix that is n by 3, where n denotes the number of lidar points (points in the 3D point cloud) used. In this case, the number 7 may take the form of the number 10A.

[0158]

number

[0159] A solution is found for the overdetermined representation given by equation (10A), where the objective is to find a vector V that minimizes a residual vector R, which is a column vector of size (n × 1) given by equation (10B).

[0160] Essentially, R represents the difference between the azimuth corrected vehicle speed and the data points represented by the polynomial trajectories of FIGS. 7C-7D.

[0161] It is clear that a pseudo-inverse based Singular Value Decomposition (SVD) solution works well for the data shown in FIG. 7C because the characteristics of the Doppler change through the Field of View (FOV) are well defined. In contrast, FIG. 7D shows this same situation only for + / - 20 degrees (40° FOV), and the difference is much less clear. Thus, in practice the constraint takes the form of a minimum velocity that can well resolve a velocity vector that is strongly driven by the FOV. It turns out that this occurs most commonly in the vertical (tilt / altitude) direction, since lidar sensors used on vehicles often have smaller FOVs in the vertical direction. Also, the velocity vector should point inside the FOV of the lidar sensor for best performance (i.e., the direction of movement is within the angular direction scanner by the lidar). The formula returns values ​​outside the constraint, which may not be valid in this case because it cannot be distinguished from a sudden linear acceleration during a scan period for a Non-Counter Scanning Pattern. A non-counterscanning pattern is a scanning pattern of one or more lidar beams where all beams always move in the same direction during the execution of a single scanning frame. A counterscanning pattern is a scanning pattern where one or more lidar beams move in one or more opposite directions simultaneously or at other points during the execution of a single scanning frame.

[0162] The FOV limits can be approximated for intermediate angles (<~80 degrees) given by the number 10C.

[0163] where r is the velocity resolution of the Doppler lidar sensor, ||v|| is the magnitude of the vehicle velocity vector, and θ is the smaller of two angles between the direction of movement and one of the edges of the FOV.

[0164] Similar limitations exist for target velocity estimation: first, the change in velocity over the target range must exceed a characteristic Doppler noise value to determine target motion, but in practice the very high sample density in the scan direction provided by the Doppler LIDAR example allows one to operate within the limits of Least Squares Solutions applications.

[0165] FIG. 8 is a flow diagram showing an example of a method 800 for determining the speed of an ego-vehicle and other moving objects according to another embodiment. This is related to ego-vehicle movement (self-motion) compensation. This embodiment not only determines the ego-vehicle movement (self-motion) based on a residual column vector R of several tens of B, but also compensates for the detection of moving and stationary objects based on the self-motion. Note that the self-motion is actually the motion of the LIDAR, and the motion is transferred to the motion of the vehicle with the LIDAR fixed. Also note that the self-motion of multiple LIDAR systems of the same vehicle can be combined to determine the motion of the vehicle.

[0166] At step 801, the current velocity vector V currentis determined. Any method can be used to determine the current velocity vector, which is essentially a first guess for a solution found using method 800. For example, for a vehicle starting in a stationary state, the current velocity vector is zero. In some embodiments, for finding a solution when, for example, the odometer has stopped functioning, the current velocity vector may be selected as the last speed from the odometer in the direction the vehicle was traveling at that time. For example, in embodiments for determining a solution at a later time increment, the current velocity vector is selected the same as the solution at the previous time increment. In some embodiments, the current velocity is determined using the downslope pair and azimuth angle with the maximum velocity, as described above.

[0167] Step 801 includes determining a solution tolerance, a residual first threshold associated with stationary points in the 3D point cloud, angle bin sizes for objects expected to move at the same speed, and angle bin sizes for similarly moving objects. The first threshold is a speed difference that is greater than the change in vehicle speed during the scan time. For example, if a scan is completed within 1 millisecond and the vehicle can accelerate at 100 km / h (approximately 3 meters per second) within 10 seconds, a change of .003 meters per second or more is expected not to be due to a change in the ego-vehicle speed, but rather due to a moving object being scanned. In such a case, the first threshold is .01 meters per second. If adjacent beams in a scanning pattern have similar speeds, e.g., similar residual magnitudes, they may belong to the same object. Thus, data points for the same moving object are expected to have a range of similar angles and similar magnitudes of speed change. The data is searched to determine the size and speed of the moving object in some embodiments. The values ​​determined for the angle bin size and residual bin size affect how data points are grouped to determine the presence and speed of moving objects in the 3D point cloud.

[0168] Any method can be used to determine the values, including reading from local or remote memory or storage, computing using standard algorithms, receiving a message from a remote processor, or in response to an optional or information request. In some embodiments, values ​​for all of the parameters are determined during step 401 of Figure 4 and stored in one or more databases along with the configuration data.

[0169] In step 803, the 3D point cloud data collected during a single scan is corrected for skew due to the current speed. Skew occurs when the vehicle moves while the lidar scans the scene. Thus, the range and Doppler velocity associated with each point of the point cloud can be corrected at the scan start time or time during the scan or at the scan end time or other time using the current value for the vehicle speed. Thus, step 803 includes the change in azimuth or tilt angle or distance of the points in the point cloud data based on the current lidar speed and the time difference from the time stopped during the scan cycle. In some implementations, the skew is not significant or is ignored, and step 803 can be omitted.

[0170] In step 805, for example, V x , V y and V z and a residual vector is determined based on the current vehicle speed calculated using Equation 10B. The rows of the residual vector measure how much the point speed of the point cloud data differs from the current vehicle speed. If the difference is too large, the point is probably a moving object, not a stationary object like the ground. The next step is to try to find said point on a moving object and remove said point from the calculation of the ego-vehicle speed.

[0171] In step 811, the next row of the residual vector R is selected. In step 813, it is determined whether the residual value of the row is greater than a first threshold for stationary points. If so, the row is likely not for a Doppler observation of a stationary object and control proceeds to step 815. In step 815, the row is deleted from the residual vector R and the Doppler relative velocity V r n is deleted and the vector magnitude is reduced (e.g., new n=current n-1). In step 817, the deleted row is added to another residual vector for each of the one or more moving objects based on the angle bin magnitude and the residual bin magnitude. Each moving object residual vector contains only residuals of a particular residual range that does not exceed the size of one residual bin, and only angles of a particular angle range that does not exceed the size of one angle bin. Control then proceeds to step 811 to select the next row for the residual vector R. In some implementations, the deleted row is not added to the moving object residual vector, step 817 is omitted, and control proceeds from step 815 to step 811.

[0172] If, in step 813, it is determined that the next row does not have a residual greater than the first threshold, control proceeds to step 821. In step 821, it is determined whether any more rows of the residual vector R remain to be selected. If not, control proceeds to step 823.

[0173] In step 823, the SVD operation is performed and R is set to a new set of values ​​R new Minimize V with current In some embodiments, the solution is obtained by iteratively performing the pseudo-inverse of the n×3 matrix A in (10A) using the Singular Value Decomposition, an arbitrary matrix decomposition given by (11A).

[0174]

number

[0175] Here, U is a unitary matrix of size n×n. Σ is a diagonal matrix of size n×3, V is a 3×3 unitary matrix, and V* is the conjugate transpose of V. The pseudo-inverse of A, A -1 is based on the approximation given in Equation 11B.

[0176] Σ is a diagonal matrix, so it can be easily inverted, and U* is simply the conjugate transpose of U. In this case, the residual R is only used to compute the "quality" of the pseudoinverse solution.

[0177] In step 825, it is determined whether the new residual has been sufficiently reduced. This is done by new This can be done by observing whether the magnitude of ||R|| is less than or equal to the target velocity tolerance. Among other things, R new The largest element of R new Sum of elements, R new The sum of the absolute values ​​of the elements, R new Any method, such as the sum of the squares of the elements, can be used to determine ||R||. The value of the tolerance is R new It depends on the manner in which the magnitude of is determined. For example, the residual tolerance should expand with the error of the Doppler measurement (errors in the beam direction also contribute, but are relatively small). The normalized L2 norm of the residual of the perfect solution should simply be the variance of the Doppler measurement, or, if the error is Gaussian, the squared standard deviation. A good tolerance is a small multiple of the variance. If the tolerance is smaller than this, it is unlikely to be met and the final condition will not be achieved. R new If is greater than the tolerance, control proceeds to step 827.

[0178] In 827 steps, the new residual vector R new The first threshold is decreased to remove more rows from R. new The control is resumed by making V the current residual vector and the first row of the residual vector the next row to be selected. Control then proceeds to step 811 to select the next row of the residual vector. Thus, the velocity vector V current A loop is formed to repeat the process until V is less than or equal to a desired tolerance or as determined by the magnitude of the residual vector. In some embodiments, if there is no convergence to a small enough residual vector, a limit may be set on the number of iterations, e.g., the process may be terminated when 100 iterations have been performed or the difference in velocity V between adjacent iterations is less than a certain percentage, such as 1%.

[0179] In step 831, the rotation determined based on data from the gyroscope (if present) is added to the velocity vector V. The above formula, however, cannot detect pure rotational motion (rotation about a fixed axis), so a sensor that can directly detect rotational rate, such as a vibrating structure gyroscope, is recommended as an additional input for all vehicles with predominantly rotational motion. In some embodiments, a gyroscope is not included and step 831 may be omitted. Control then proceeds to step 833.

[0180] In step 833, it is determined whether to correct for skew. Calculation of a vehicle velocity solution based on a set of points detected during a fixed time interval allows for a fixed correction of skew effects such as "rolling shutter" caused by the finite scanning speed of the lidar beam during the time interval. For example, a flat orthogonal surface perpendicular to the velocity vector of a lidar system with a horizontal scanning beam will appear diagonally skewed because points detected later in the interval have a shorter distance due to vehicle movement. If the set of points detected during the interval is used to match or compare to a map or point cloud to determine the vehicle position and / or attitude, the finite scanning speed skew effects can significantly reduce the accuracy and security of the matching algorithm. The velocity vector extracted from the set of detected points can be used to provide an instantaneous and constant measure of the deformation of the vehicle during the collection time interval, and the set can be de-skewed by backprojecting each point along the vector by an amount given by dt*||v||. If this needs to be done, control returns to step 803 to de-skew the data, otherwise control proceeds to step 841.

[0181] In step 841, the equation formed by moving the deleted rows from the fixed data points is used to determine the velocity V of the moving objects relative to the ego-vehicle in the 3D point cloud using the above method for each of the residual vectors of each moving object. The velocity of the ego-vehicle is calculated by multiplying the global coordinate velocity V of one or more moving objects (if any) by the above method. g If it is determined that the adjacent objects are moving similarly, then the rows for the residual vectors and Doppler velocities of the two moving objects can be merged, and V can be solved for the merged equation to merge the adjacent objects into one object. Control then passes to step 843.

[0182] At step 843, moving objects detected from successive scans may be examined to determine if they are the same object. At step 845, the position and velocity of the object from scan to scan are combined to form a track of the object, and the track of the moving object is added to one or more databases. In some embodiments, moving objects are not tracked, and steps 843 and 845 may be omitted.

[0183] 9A-9C are block diagrams illustrating example computational components for detecting the movement of other objects relative to an ego-vehicle, according to one embodiment. In FIG. 9A, a sensor 921 of a high resolution Doppler LIDAR system is mounted on a vehicle traveling at a speed in the vehicle's forward direction y. The sensor is at a height above the road surface and receives returns from a point 991 corresponding to scanning a beam at an azimuth angle represented by a unit vector l during a scan that is short compared to the time it takes the vehicle to move a significant distance. The global coordinate system is represented by vectors N and E in the north and east directions, respectively, from a global origin represented by a 3D point A. If there is no movement, the returns simply provide the location of the point 991. In FIG. 9B, the object represented at the point 991 is moving at a speed represented by a vector V. The relative velocity V r is calculated by the inner product of the inverse unit vector l' given in equation 12 and the velocity V,

[0184]

number

[0185] As observed in the reference frame of the sensor 921, it is directly measured by the high-resolution Doppler lidar system. In FIG. 9C, the target object 991 and the sensor 921 are respectively V target and V sensorThe target's relative velocity V measured by the high-resolution Doppler lidar sensor is r_corr is found by combining the two velocities along the line joining them by equation (13).

[0186]

number

[0187] FIG. 10 is a flow diagram showing an example of a method 1000 for determining the movement and track of other moving objects according to another embodiment. The embodiment is based on Equations 12 and 13. In step 1001, a point cloud based on high resolution Doppler lidar data is filtered to isolate points with high values ​​of Doppler velocity. In step 1003, points are clustered based on similar Doppler velocity values. Each cluster with similar Doppler velocity in a similar azimuth direction, e.g., a range of azimuth angles smaller than 360 degrees, is considered as an object. In step 1005, an object list of high Doppler clusters for each time step is maintained. In step 1007, object clusters at different times are associated with each other based on spatial (azimuth and tilt) proximity and Doppler similarity. In step 1009, object tracks for the associated object clusters are determined and maintained, e.g., in a computer storage device.

[0188] It is worth noting again that the process is limited to three dimensions (slant, azimuth and Doppler component) out of the three or five dimensions (slant, azimuth, range, Doppler component and reflectivity) available in the data. This is yet another example of determining attribute values ​​of objects in a point cloud with only three or fewer dimensions out of a minimum of four. The advantage of the three dimensional approach is that the various computational methods for clustering and solving noisy simultaneous equations are more efficient than if the method had to be done in four dimensions. Thus, the approach provides more time to respond to a critical situation since a solution can be determined in less time for all available processing power.

[0189] In some embodiments, the detection of the object at a known position is used to determine the own sensor position. FIG. 11 is a block diagram illustrating an example of computational components for determining an Own Position relative to a detected survey object (either a stationary object in a mapping database or an object whose position is known moving over time) according to one embodiment. A sensor 1121 of a high-resolution Doppler lidar system is mounted on a vehicle at a position given by a 3D vector p, and receives returns from points 1191 and 1192 at different distances represented by 3D vectors r1 and r2 during a scan that is short compared to the time it takes the vehicle to travel a sensible distance, and receives azimuth angles represented by unit vectors l1 and l2, respectively, in response to scanning the beam from the azimuth angle. The known positions of the two objects are provided by 3D vectors t1 and t2, respectively. The data satisfies the following equations 14A to 14E.

[0190]

number

[0191] Thus, a 3D vector for the sensor position p is determined.

[0192] FIG. 12 is a flow diagram illustrating an example of determining an Own Position relative to a detected survey object, according to one embodiment. In step 1201, a high resolution lidar image is obtained. This does not have to be a Doppler image. In step 1203, highly reflective objects in the scene are identified. These may include objects of known location, such as road sign boards 392, lamp posts 393, etc. In step 1205, the object is cross referenced with neighboring objects surveyed, for example, from a Geographic Information System (GIS) database. If the Own Position is not well known, the cross reference may be an approximation, for example, the object surveyed in the GIS may or may not be the detected object. In step 1207, a set of line of sight unit vectors l between the sensor and the detected object is determined. In step 1209, Δl is calculated for any pair of the detected objects. In step 1211, R is solved using equation (14D) with Δl and Δt measured from a surveyed object position, such as a GIS. In step 1213, R, l, and t for multiple pairs are each used to estimate the position p of the sensor, and a geometric mean of many values ​​for p is determined to obtain an estimate for p. In some embodiments, a confidence level for the value p is also determined during step 213.

[0193] 13 is a block diagram illustrating an example of computational components for determining a unique global velocity, according to one embodiment. In the embodiment, a sensor is located on a vehicle moving at a position p with a velocity V. A sensor 1321 of a high resolution Doppler lidar system is mounted on the vehicle at a position given by a 3D vector p. During a scan that is short compared to the time it takes the vehicle to travel a sensible distance, returns are received from points 1391 and 1392 that do not move to other azimuth angles corresponding to scanning the beam at azimuth angles represented by unit vectors l1 and l2, respectively. The data satisfies the following equations 14A to 14E:

[0194]

number

[0195] Therefore, the 3D vector for the sensor velocity V global is determined.

[0196] FIG. 14 is a flow diagram illustrating an example method 1400 for determining unique global velocity, according to one embodiment. In step 1401, a high resolution Doppler lidar image is obtained. In step 1403, points in the scene with Doppler values ​​that correspond to a generally static surface are identified using one or more techniques described above. In step 1405, a set of line-of-sight unit vectors l between the sensor and detected stationary objects is determined. In step 1407, Δl is calculated for the detected points. In step 1409, V is calculated using equation 15C that measures Δl′ and Δ. local In 1411 steps, R is V global is used to estimate

[0197] FIG. 15 is a block diagram illustrating example computational components for determining the rotational velocity of a moving object relative to an ego-vehicle, according to one embodiment. A sensor 1521 of a high resolution Doppler lidar system is mounted on the vehicle. Returns are received from points 1591 and 1592 at other locations of the rotating object moving at a velocity V during a scan that is short compared to the time it takes the vehicle to travel a significant distance. The points are within a detected azimuth angle corresponding to the scanning beam, represented by unit vectors l1 and l2, respectively. The detected Doppler velocity is expressed as V, respectively. r1 and V r2 The data satisfies the following numbers 16A through 16D.

[0198]

number

[0199] The overall velocity of the target is therefore obtained from the relative velocities of two points on the moving target.

[0200] 16 is a flow diagram illustrating an example of a method for determining the global velocity of a moving object, according to one embodiment. In step 1601, a high-resolution Doppler lidar image is acquired. In step 1603, V r_corr In step 1605, points on the same moving object are clustered based on Doppler velocity and azimuth proximity. In step 1607, a set of line-of-sight unit vectors l between the sensor and detected points on the moving object is determined. In step 1609, Δl is calculated for any pair of the detected points. In step 1611, V r_corr is calculated for any pair of the detected points. In step 1613, Δl′ and ΔV are measured and V is calculated using equation (16D). V is the V for the detected object. global The linear velocity is the subject of the equations of Figure 15 and the method of Figure 16. However, rotating objects can violate that equality and it would be advantageous to measure the rotational velocity.

[0201] 5. Illustrative Examples

[0202] 17A is a block diagram illustrating example locations of illuminated points from a high resolution Doppler lidar system, according to one embodiment, that are on a road surface and that are used to determine a unique global velocity by method 600 or method 800.

[0203] 17B-17D are images showing example returns from a stationary object and from an illuminated spot showing the track of a moving object, according to one embodiment, which can be used to track an object using method 800 or method 1000.

[0204] 18A-18C are graphs showing an example of a return from another vehicle as a moving object, according to one embodiment. The Doppler points are clustered by speed and proximity of azimuth and tilt angles. The net movement of the object is determined using method 1600.

[0205] Figures 18D and 18E are configurations showing an example of a measured point cloud according to one embodiment. Each point is shaded according to the measured velocity. The result shows the track going around a corner, and the object undergoing simultaneous translational and rotational motion. This is an actual data representation of the simulation data shown in Figures 8a and 8b.

[0206] 6. Computer Hardware Overview

[0207] FIG. 19 is a block diagram illustrating a computer system 1900 in which an embodiment of the present invention can be embodied. The computer system 1900 includes a communication mechanism, such as a bus 1910, for communicating information between other internal and external components of the computer system 1900. The information is represented as a measurable current physical signal, usually a voltage, but in other embodiments includes phenomena such as magnetic, electromagnetic, atmospheric, chemical, molecular atomic, and quantum interactions. For example, a north and south magnetic field, or zero and non-zero voltages, represent the two states (0, 1) of a binary number (bit). Other phenomena may represent higher base numbers. A superposition of multiple simultaneous quantum states before measurement represents a quantum bit (qubit). A sequence of one or more digits is used to represent a code for a number or a letter. In some embodiments, information, termed analog data, is represented by a near continuum of values ​​measurable within a certain distance. The computer system 1900, or portions thereof, constitute a means for performing one or more steps of one or more of the methods described herein.

[0208] A sequence of binary digits constitutes digital data used to represent codes for numbers or letters. The bus 1910 includes many parallel conductors of information so that information may be rapidly conveyed between devices coupled to the bus 1910. One or more processors 1902 for processing information are coupled to the bus 1910. The processor 1902 performs a sequence of operations on the information. The sequence of operations includes obtaining information from the bus 1910 and placing information on the bus 1910. The sequence of information also typically includes comparing one or more units of information, shifting the position of the units of information, and combining two or more units of information, such as adding or multiplying. The sequence of operations performed by the processor 1902 constitutes computer instructions.

[0209] The computer system 1900 also includes a memory 1904 coupled to the bus 1910. The memory 1904, such as a random access memory (RAM) or other dynamic storage device, stores information including computer instructions. Dynamic memory allows information stored therein to be transformed by the computer system 1900. RAM allows units of information stored at locations designated memory addresses to be stored and retrieved independently of information at adjacent addresses. The memory 1904 is also used by the processor 1902 to store temporary values ​​during execution of computer instructions. The computer system 1900 also includes a read only memory (ROM) 1906 or other static storage device coupled to the bus 1910 for storing static information including instructions that are not changed by the computer system 1900. A non-volatile (persistent) storage device 1908, such as a magnetic or optical disk, is also coupled to the bus 1910 for storing information including instructions that persist even when the computer system 1900 is turned off or loses power.

[0210] Information including instructions is provided to the bus 1910 for use by the processor from external input devices 1912, such as a keyboard including letter and number keys operated by a human user, or sensors. The sensors detect conditions in their surroundings and convert the detections into signals compatible with those used to represent information within the computer system 1900. Other external devices coupled to the bus 1910 primarily used for human interaction include a display device 1914, such as a cathode ray tube (CRT) or liquid crystal display (LCD), for depicting images, and a pointing device 1916, such as a mouse or trackball or cursor direction keys, for controlling the position of a small cursor image displayed on the display 1914 and for issuing commands related to graphical elements displayed on the display 1914.

[0211] In the illustrated embodiment, special purpose hardware such as special purpose integrated circuits (ICs) 1920 are coupled to bus 1910. The special purpose hardware is configured to perform operations not performed by processor 1902 quickly enough for a special purpose. Examples of special purpose integrated circuits include graphics accelerator cards for generating images for display 1914, cryptographic boards for encrypting and decrypting messages sent over a network, voice recognition, and interfaces to specialized external devices such as robotic arms and medical scanning equipment that repeatedly perform some complex sequence of operations that are more effectively embodied in hardware.

[0212] The computer system 1900 also includes one or more instances of a communication interface 1970 coupled to the bus 1910. The communication interface 1970 provides a two-way communication coupling to various external devices that operate with their own processors, such as printers, scanners, and external disks. Typically, the coupling includes a network link 1978 connected to a local network 1980 to which various external devices having their own processors are connected. For example, the communication interface 1970 may be a parallel or serial port on a personal computer or a universal serial bus (USB) port. In some embodiments, the communication interface 1970 is a telephone modem that provides a telecommunications connection to an Integrated Services Digital Network (ISDN) card or a Digital Subscriber Line (DSL) card or a corresponding form of telephone line. In some embodiments, the communication interface 1970 is a cable modem that converts signals on the bus 1910 to signals for telecommunications connection via coaxial cable or optical signals for telecommunications connection via fiber optic cable. As another example, the communication interface 1970 may be a LAN card for providing a data communication connection to a compatible local area network (LAN), such as Ethernet. Also, wireless links may be implemented. Carrier waves, such as sound and electromagnetic waves, include radio, optical and infrared waves that travel through space without wires or cables. Signals include artificial changes in the amplitude, frequency, phase, polarity or other physical properties of the carrier wave. For wireless links, the communications interface 1970 sends and receives electrical, acoustic or electromagnetic signals, including infrared and optical signals, that carry information streams, such as digital data.

[0213] The term "computer-readable medium" as used herein means any medium that participates in providing information, including instructions for execution, to the processor 1902. Such media may take a variety of forms, including but not limited to non-volatile media, volatile media, and transmission media. For example, non-volatile media includes dynamic memory 1904. For example, transmission media includes coaxial cables, copper wire, fiber optic cables, and waveforms that travel through space without wires or cables, such as acoustic and electromagnetic waves, including radio, optical, and infrared waves. The term "computer-readable storage medium" as used herein means any medium that participates in providing information to the processor 1902, except for transmission media.

[0214] For example, typical forms of computer readable media include floppy disks, flexible disks, hard disks, magnetic tape or any other magnetic media, compact disk ROMs (CD-ROMs), digital video disks (DVDs) or any other optical media, punch cards, paper tape or any other physical media having hole patterns, RAM, programmable ROMs (PROMs), erasable PROMs (EPROMs), FLASH-EPROMs, or any other memory chips or cartridges, carrier waves, or any other media from which a computer can read. As used herein, the term "non-transitory computer readable storage medium" refers to any medium, excluding carrier waves and other signals, that participates in providing information to the processor 1902.

[0215] Logic encoding in one or more tangible media includes one or all of the computer readable storage media and processor instructions on special purpose hardware such as an ASIC 1920.

[0216] The network link 1978 typically provides information communication through one or more networks to other devices that use or process information. For example, the network link 1978 may provide a connection through a local network 1980 to a host computer 1982 operated by an Internet Service Provider (ISP) or to ISP equipment 1984. The ISP equipment 1984 ultimately provides data communication services through the public worldwide packet-switched communication network of networks now commonly referred to as the Internet 1990. A computer connected to the Internet, designated a server 1992, provides services responsive to information received over the Internet. For example, the server 1992 provides information representing video data for presentation on a display 1914.

[0217] The present invention relates to the use of computer system 1900 for implementing the techniques described herein. According to one embodiment of the present invention, such techniques are performed by computer system 1900 in response to processor 1902 executing one or more instructions or one or more sequences contained in memory 1904. The instructions, also referred to as software and program code, may be loaded into memory 1904 from other computer-readable media, such as storage device 1908. Execution of the sequences of instructions contained in memory 1904 causes processor 1902 to perform the method steps described herein. In alternative embodiments, hardware, such as application specific integrated circuit 1920, may be used in place of or in combination with software to implement the present invention. Thus, embodiments of the present invention are not limited to any specific combination of hardware and software.

[0218] Signals transmitted over other networks via network link 1978 and communication interface 1970 carry information to and from computer system 1900. Computer system 1900 may transmit and receive information, including program code, over networks 1980, 1990, among others, via network link 1978 and communication interface 1970. In an example using the Internet 1990, a server 1992 transmits program code for a specific application requested by a message transmitted from computer system 1900 via the Internet 1990, ISP equipment 1984, local network 1980 and communication interface 1970. The received code may be executed by processor 1902 as it is received, or may be stored in storage device 1908, or other non-volatile storage device for later execution, or both. In the above manner, computer system 1900 may obtain application program code in the form of a signal on a carrier wave.

[0219] Various forms of computer readable media may be involved in transferring one or more sequences of instructions and / or data to the processor 1902 for execution. For example, the instructions and data may initially be borne on a magnetic disk of a remote computer, such as the host 1982. The remote computer loads the instructions and data into its dynamic memory and transmits the instructions and data over a telephone line using a modem. A modem local to the computer system 1900 receives the instructions and data on the telephone line and uses an infrared transmitter to convert the instructions and data into an infrared carrier wave signal that serves as the network link 1978. An infrared detector serving as the communications interface 1970 receives the instructions and data borne in the infrared signal and places information representing the instructions and data on the bus 1910. The bus 1910 transfers the information to the memory 1904, from which the processor 1902 retrieves and executes the instructions using a portion of the data transmitted with the instructions. The instructions and data received into the memory 1904 may optionally be stored on a storage device 1908 either before or after execution by the processor 1902.

[0220] FIG. 20 illustrates a chip set 2000 in which an embodiment of the present invention can be embodied. The chip set 2000 is programmed to perform one or more steps of the methods described herein, for example, including the processor and memory components described above in connection with FIG. 19 integrated into one or more physical packages (e.g., chips). In an exemplary manner, the physical package includes one or more arrangements of materials, components, and / or wires on a structural assembly (e.g., baseboard) to provide one or more characteristics such as physical impact, size management, and / or limitation of electrical interactions. It is contemplated that in certain embodiments, the chip set can be implemented in a single chip. The chip set 2000, or portions thereof, constitute a means for performing one or more steps of the methods described in the present invention.

[0221] In one embodiment, chipset 2000 includes a communication mechanism such as bus 2001 for moving information between components of chipset 2000. Processor 2003 has connectivity to bus 2001 for executing instructions and processing information stored, for example, in memory 2005. Processor 2003 may include one or more processing cores configured such that each core operates independently. A multi-core processor allows for multiple processing within a single physical package. Examples of multi-core processors include two, four, eight, or more processing cores. Alternatively or additionally, processor 2003 may include one or more microprocessors configured side-by-side via bus 2001 to allow for independent execution of instructions, pipelining, and multithreading. Processor 2003 may also include one or more specialized components to perform specific processing functions and tasks, such as one or more digital signal processors (DSPs) 2007, or one or more special purpose integrated circuits (ASICs) 2009. Typically, DSP 2007 is configured to process real-world signals (e.g., sound) in real time independent of processor 2003. Similarly, ASIC 2009 may be configured to perform special purposes not easily performed by a general purpose processor. Other specialized components for assisting in performing the inventive functions described in the present invention include one or more field programmable gate arrays (FPGAs) (not shown), one or more controllers (not shown), or one or more other special-purpose computer chips.

[0222] The processor 2003 and associated components have connectivity to memory 2005 via bus 2001. Memory 2005 includes both dynamic memory (e.g., RAM, magnetic disk, writable optical disk, etc.) and static memory (e.g., ROM, CD-ROM, etc.) for storing executable instructions when executed to perform one or more steps of the methods described herein. Memory 2005 also stores data associated with or generated by the execution of one or more steps of the methods described herein.

[0223] 7. Modifications, Extensions and Variations

[0224] In the foregoing detailed description, the present invention has been described with reference to specific embodiments thereof. However, it is apparent that various modifications and changes may be made without departing from the broader spirit and scope of the present invention. Thus, the detailed description and drawings should be regarded in an illustrative sense and not in a restrictive sense. Throughout this specification and claims, unless the context requires otherwise, the terms "comprises" and "comprises" and variations such as "comprises" include the mentioned item, element or step or group of items, elements or steps, but do not exclude any other items, elements or steps or group of items, elements or steps. Furthermore, the indefinite article "a" has the meaning of indicating one or more of the item, element or step modified by the article. As disclosed in this invention, one value is "about" another value if it is within a factor of two (two times or one-half) of the other value, unless otherwise clear from the context. Although exemplary ranges have been given, any encompassed range is included within the various embodiments, unless otherwise clear from the context. Thus, a range from 0 to 10 includes a range from 1 to 4 in some embodiments.

Claims

1. 1. A light detection and ranging (LIDAR) sensor system for a vehicle, comprising: one or more scanning optics and one or more processors; the one or more scanning optics are coupled to the autonomous vehicle and configured to output at least one transmitted signal; The one or more processors: receiving a first return signal from at least one of a reflection or scattering of the at least one transmitted signal by an object, the first return signal corresponding to a first location on the object; receiving a second return signal from at least one of a reflection or scattering of the at least one transmitted signal by the object, the second return signal corresponding to a second location on the object; determining a first Doppler velocity of the first location on the object based on the first return signal; determining a second Doppler velocity at the second location on the object based on the second return signal; determining a rotational velocity of the object based on the first Doppler velocity and the second Doppler velocity; a control system of the vehicle configured to output a control signal to the control system of the vehicle such that the control system controls operation of at least one of a steering system of the vehicle and a braking system of the vehicle in response to the rotational velocity of the object.

2. 2. The LIDAR sensor system of claim 1, the one or more processors are configured to identify a three-dimensional (3D) point cloud based on the first return signal and the second return signal. LIDAR sensor system.

3. 2. The LIDAR sensor system of claim 1, the one or more processors are configured to identify a track of the object based on the rotational speed. LIDAR sensor system.

4. 2. The LIDAR sensor system of claim 1, Further comprising a modulator; the modulator is configured to apply at least one of a phase modulation and a frequency modulation to a beam from a laser source to generate the at least one transmit signal; LIDAR sensor system.

5. 2. The LIDAR sensor system of claim 1, and one or more detectors configured to output electrical signals corresponding to the first return signal and the second return signal to the one or more processors. LIDAR sensor system.

6. 2. The LIDAR sensor system of claim 1, the one or more processors are configured to detect a translation of the object based on the first return signal and the second return signal. LIDAR sensor system.

7. 2. The LIDAR sensor system of claim 1, the one or more processors are configured to determine the rotational speed in a global reference frame. LIDAR sensor system.

8. An autonomous vehicle, A LIDAR system, a steering system, a brake system, and a vehicle controller, The LIDAR system includes: Outputting a first transmission signal and a second transmission signal; receiving a first return signal from a reflection of the first transmitted signal by an object, the first return signal corresponding to a first position on the object; receiving a second return signal from a reflection of the second transmitted signal by the object, the second return signal corresponding to a second location on the object; determining a first Doppler velocity of the first location on the object based on the first return signal; determining a second Doppler velocity at the second location on the object based on the second return signal; configured to determine a rotational velocity of the object based on the first Doppler velocity and the second Doppler velocity; the vehicle controller is configured to control operation of at least one of the steering system and the braking system based on the rotational velocity of the object. Autonomous vehicles.

9. 9. The autonomous vehicle according to claim 8, The LIDAR system includes a laser source and one or more scanning optics. the laser source is configured to generate a beam; the one or more scanning optics are configured to output the beam as the first transmit signal. Autonomous vehicles.

10. 9. The autonomous vehicle according to claim 8, The LIDAR system includes one or more processors. the one or more processors are configured to identify a three-dimensional (3D) point cloud based on the first return signal and the second return signal. Autonomous vehicles.

11. 9. The autonomous vehicle according to claim 8, The LIDAR system includes one or more processors. the one or more processors are configured to identify a track of the object based on the rotational speed. Autonomous vehicles.

12. 9. The autonomous vehicle according to claim 8, Further comprising a modulator; the modulator is configured to apply at least one of phase modulation and frequency modulation to a beam from a laser source to generate the first transmit signal; Autonomous vehicles.

13. 9. The autonomous vehicle according to claim 8, and one or more detectors configured to output electrical signals corresponding to the first return signal and the second return signal to the one or more processors. Autonomous vehicles.

14. 9. The autonomous vehicle according to claim 8, the LIDAR system is configured to detect a translation of the object based on the first return signal and the second return signal. Autonomous vehicles.

15. A vehicle control system, comprising: A LIDAR system coupled to a vehicle and a vehicle controller, The LIDAR system includes one or more processors. The one or more processors: receiving a first return signal from at least one of reflection and scattering of the at least one transmitted signal by the remote vehicle, the first return signal corresponding to a first location on the remote vehicle; receiving a second return signal from at least one of a reflection or scattering of the at least one transmitted signal by the remote vehicle, the second return signal corresponding to a second location on the remote vehicle; determining a first Doppler velocity of the first location on the remote vehicle based on the first return signal; determining a second Doppler velocity of the second location on the remote vehicle based on the second return signal; configured to determine a rotational speed of the remote vehicle based on the first Doppler velocity and the second Doppler velocity; the vehicle controller is configured to control operation of at least one of a steering system of the vehicle and a braking system of the vehicle in response to the rotational speed of the remote vehicle. Vehicle control system.

16. 16. The vehicle control system according to claim 15, further comprising one or more scanning optics; the one or more scanning optics are configured to output the at least one transmit signal as a first transmit signal at a first angle and a second transmit signal at a second angle; the first transmission signal is associated with the first return signal; The second transmission signal is associated with the second return signal. Vehicle control system.

17. 16. The vehicle control system according to claim 15, The laser source further includes the laser source is configured to generate a beam; the one or more scanning optics are configured to output the beam as at least one transmit signal. Vehicle control system.

18. 16. The vehicle control system according to claim 15, the one or more processors are configured to identify a three-dimensional (3D) point cloud based on the first return signal and the second return signal. Vehicle control system.

19. 16. The vehicle control system according to claim 15, sensors including at least one of an inertial navigation system (INS), a global positioning system (GPS) receiver, and a gyroscope; the one or more processors of the LIDAR system are further configured to determine the rotation rate based on sensor data received from the sensor. Vehicle control system.

20. 16. The vehicle control system according to claim 15, The LIDAR system is configured to detect translation of the remote vehicle based on the first return signal and the second return signal. Vehicle control system.

Citation Information

Patent Citations

  • Estimating device

    JP2009288255A

  • Vehicle body roll angle estimation apparatus

    JP2015189300A

  • To increase the resolution of images acquired from a 3D measurement system.

    JP2015535925A

  • Object recognition device

    JP2017138219A

  • Estimation of motion in six degrees of freedom (6DOF) using lidar

    WO2017087779A1