Estimating Vehicle Speed Using Radar Data

By receiving the Doppler beam map and estimating vehicle speed using optimization algorithms, the problem of insufficient accuracy of vehicle speed measurement in specific environments is solved, and accurate vehicle speed estimation and control in various environments is achieved.

CN114488111BActive Publication Date: 2025-07-18GM GLOBAL TECHNOLOGY OPERATIONS LLC
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202110508187.6
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Priority Date
2020-10-28
Filing Date
2021-05-10
Publication Date
2025-07-18
Estimated Expiration
2041-05-10

AI Technical Summary

Technical Problem

In the prior art, vehicle speed measurement depends on inertial measurement units and global positioning systems, and has problems that are costly and not suitable for all environments, especially in areas such as tunnels and bridges, and radar system applications are limited.

Method used

By receiving the distance Doppler beam map of multiple radar devices, iterates spatial registration using an optimization algorithm, combines Doppler data and vehicle speed estimation, the relevant scores are optimized to estimate vehicle speed, and control the vehicle based on this.

Benefits of technology

It provides the ability to accurately estimate vehicle speed in various environments, reduces dependence on inertial measurement units and global positioning systems, expands the application range of radar systems, and improves the accuracy and reliability of vehicle control.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114488111B_ABST
    Figure CN114488111B_ABST
Patent Text Reader

Abstract

Method and system for estimating vehicle speed based on radar data. The method and system include receiving a set of range-Doppler beams, an RDB map from a radar located on the vehicle and performing an optimization process that adjusts the estimate of the vehicle speed in order to optimize a correlation score. The optimization process includes iteratively: spatially registering the set of RDB maps based on a current estimate of the vehicle speed, determining the correlation score based on the spatially registered set of RDB maps, and when the correlation score has been optimized, outputting an optimized estimate of the vehicle speed from the optimization process. The method and system control the vehicle at least in part based on the optimized estimate of the vehicle speed.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure generally relates to vehicles, and more particularly, to methods and systems for estimating vehicle speed. Background Art

[0002] Vehicles utilize motion data including vehicle speed in various vehicle control applications, including advanced driver assistance systems (ADAS) and autonomous driving tasks, which are two of many possible examples. Vehicle speed and other dynamic vehicle motion measurements can be obtained via an inertial measurement unit (IMU) and the global positioning system (GPS). Inertial measurement units are expensive and complex to install. Inertial measurement units are not always precise; they do not directly sense speed but rather acceleration.. The global positioning system does not cover all areas, such as tunnels, bridges, places surrounded by tall buildings, etc.

[0003] Many vehicles use radar systems. For example, certain vehicles utilize radar systems to detect other vehicles, pedestrians, or other objects on the road on which the vehicle is traveling. Radar systems can be used, for example, to implement automatic braking systems, adaptive cruise control, and avoidance features, as well as other vehicle features.

[0004] Accordingly, it is desirable to provide vehicle speed data without always relying on global positioning system or inertial measurement unit data. Additionally, it is desirable to expand the applications of vehicle radar systems. Further, in conjunction with the accompanying drawings and the foregoing technical field and background art, other desirable features and characteristics of the present invention will become apparent from the subsequent detailed description and the appended claims. Summary of the Invention

[0005] In a first aspect, a method for estimating vehicle speed based on radar data is provided. The method includes receiving a set of range-Doppler beams, an RDB map from a radar located on a vehicle and performing an optimization process that adjusts an estimate of the vehicle speed so as to optimize a correlation score. The optimization process includes iteratively spatially registering the set of RDB maps based on a current estimate of the vehicle speed and determining the correlation score based on the set of spatially registered RDB maps. When the correlation score is optimized, an optimized estimate of the vehicle speed is output from the optimization process. The vehicle is controlled based on the optimized estimate of the vehicle speed.

[0006] In an embodiment, the set of RDB maps includes RDB maps from multiple radars located at different positions and / or orientations relative to the vehicle.

[0007] In an embodiment, the set of RDB maps includes current and / or previous frames from the radar.

[0008] In an embodiment, spatially registering the set of RDB maps includes rotating the azimuth angles of the set of RDB maps to a local coordinate system based on a current estimate of the vehicle speed.

[0009] In an embodiment, spatially registering the set of RDB maps includes, for each RDB map, virtually rotating the radar according to a Doppler-based azimuth angle so as to transform the range-Doppler map of the RDB map. The Doppler-based azimuth angle is determined based on the Doppler data and the current estimate of the vehicle speed. For each RDB map, spatially registering the set of RDB maps includes virtually rotating the radar according to a second azimuth angle. The second azimuth angle is determined based on the radar azimuth information of the radar relative to the local coordinate frame of the vehicle so as to transform the range beam map of the RDB map. The transformed range-Doppler map and the transformed range beam map are multiplied to provide an azimuth-rotated RDB map. The azimuth-rotated RDB map forms the basis for determining the spatially registered set of RDB maps.

[0010] In an embodiment, the set of RDB maps includes current and previous frames, and spatially registering the set of RDB maps includes correcting the vehicle movement between the current and previous frames based on the current estimates of the vehicle speed and the frame rate.

[0011] In an embodiment, the optimization process utilizes an optimization algorithm.

[0012] In an embodiment, the set of RDB maps is received from a preprocessing module that performs analog-to-digital conversion, range fast Fourier transform, fast Fourier transform, Doppler fast Fourier transform, and beamforming processes.

[0013] On the other hand, a vehicle is provided. The vehicle includes a radar located on the vehicle and a processor operably communicating with the radar, the processor being configured to execute program instructions, where the program instructions are configured to cause the processor to: receive a set of range-Doppler beams, RDB maps, from the radar located on the vehicle, and perform an optimization process that adjusts an estimate of the vehicle speed so as to optimize a correlation score. The optimization process includes iteratively spatially registering the set of RDB maps based on the current estimate of the vehicle speed and determining the correlation score based on the set of spatially registered RDB maps. When the correlation score is optimized, an optimized estimate of the vehicle speed is output from the optimization process. The vehicle is controlled partially based on the optimized estimate of the vehicle speed.

[0014] In an embodiment, the set of RDB maps includes RDB maps from multiple radars located at different positions and / or orientations relative to the vehicle.

[0015] In an embodiment, the set of RDB maps includes current and / or previous frames from the radar.

[0016] In an embodiment, spatially registering the set of RDB maps includes rotating the azimuth angle of the set of RDB maps to the local coordinate system based on the current estimate of the vehicle speed.

[0017] In an embodiment, for each RDB map, spatially registering the set of RDB maps includes virtually rotating the radar according to a Doppler-based azimuth angle, thereby transforming the range-Doppler map of the RDB map. The Doppler-based azimuth angle is determined based on the Doppler data and the current estimate of the vehicle speed. For each RDB map, spatially registering the set of RDB maps includes virtually rotating the radar according to a second azimuth angle. The second azimuth angle is determined based on the radar azimuth information of the radar relative to the local coordinate frame of the vehicle, thereby transforming the range beam map of the RDB map. The transformed range-Doppler map and the transformed range beam map are multiplied to provide an azimuth-rotated RDB map. The azimuth-rotated RDB map forms the basis for determining the spatially registered set of RDB maps.

[0018] In an embodiment, the set of RDB maps includes current and previous frames, and spatially registering the set of RDB maps includes correcting the vehicle motion between the current and previous frames based on the current estimates of the vehicle speed and the frame rate.

[0019] In an embodiment, the optimization process utilizes an optimization algorithm.

[0020] In an embodiment, the set of RDB maps is received from a preprocessing module that performs analog-to-digital conversion, range fast Fourier transform, fast Fourier transform, Doppler fast Fourier transform, and beamforming processes.

[0021] In another aspect, a system for estimating vehicle speed based on radar data is provided. The system includes a radar locatable on a vehicle; and a processor operably communicable with the radar, the processor being configured to execute program instructions, wherein the program instructions are configured to cause the processor: receive a set of range-Doppler beams, RDB maps, from a radar located on the vehicle, and perform an optimization process that adjusts an estimate of the vehicle speed to optimize a correlation score. The optimization process includes iteratively: spatially registering the set of RDB maps based on a current estimate of the vehicle speed, and determining the correlation score based on the spatially registered set of RDB maps. When the correlation score is optimized, an optimized estimate of the vehicle speed is output from the optimization process. The vehicle is controlled at least in part based on the optimized estimate of the vehicle speed.

[0022] In an embodiment, the set of RDB maps includes RDB maps from multiple radars located at different positions and / or orientations relative to the vehicle.

[0023] In an embodiment, the set of RDB maps includes current and / or previous frames from the radar.

[0024] In an embodiment, spatially registering the set of RDB maps includes rotating the azimuth angle of the set of RDB maps to a local coordinate system based on the current estimate of the vehicle speed. BRIEF DESCRIPTION OF THE DRAWINGS

[0025] Exemplary embodiments will be described below with reference to the following drawings, wherein like reference numerals represent like elements, and wherein:

[0026] Figure 1 is a functional block diagram of a vehicle including a radar and a control system according to an exemplary embodiment;

[0027] Figure 2 According to an exemplary embodiment Figure 1 Functional block diagram of the vehicle control system;

[0028] Figure 3 According to an exemplary embodiment, Figure 1 Vehicles and Figure 2 A data flow diagram of a vehicle speed estimation process performed by a control system;

[0029] Figure 4 According to an exemplary embodiment Figure 3 A more detailed data flow diagram of various aspects of the vehicle speed estimation process;

[0030] Figure 5 is a flow chart of a method for implementing vehicle speed estimation based on radar data according to an exemplary embodiment, which method can be combined with Figure 1 Vehicles and Figure 2 Use of control systems;

[0031] Figure 6 is an exemplary range Doppler map for a radar device according to an exemplary embodiment; and

[0032] Figure 7 is an exemplary range-Doppler map after the transformation process described herein according to an exemplary embodiment. DETAILED DESCRIPTION

[0033] The following detailed description is merely exemplary in nature and is not intended to limit application and use. In addition, it is not intended to be bound by any express or implied theory presented in the previous technical field, background technology, summary of the invention or the following detailed description. As used herein, the term module refers to a dedicated integrated circuit, an electronic circuit, a processor (shared, dedicated or grouped) and a memory that executes one or more software or firmware programs, a combinational logic circuit and / or other suitable components that provide the described functions.

[0034] Figure 1Shows a vehicle 100 or an automobile according to an exemplary embodiment. As described in more detail below, the vehicle 100 includes a control system 102 for estimating the main vehicle dynamics, particularly the vehicle speed, using radar data. This can be achieved by correlating different information dimensions: including correlating the Doppler and beam dimensions, the spatial dimensions from different radars, and correlating the radar data over time. The transformation across these dimensions is based on a candidate vehicle speed, which is optimized using the registration degree of the radar data as an optimization objective. A high correlation indicates the correct candidate vehicle speed. The optimization can be obtained through an optimization algorithm.

[0035] As Figure 1 shown, in addition to the above-described control system 102, the vehicle 100 further includes a chassis 112, a body 114, four wheels 116, an electronic control system 118, a steering system 150, and a braking system 160. The body 114 is disposed on the chassis 112 and substantially encloses the other components of the vehicle 100. The main body 114 and the chassis 112 can together form a frame. Each of the wheels 116 is rotatably connected to the chassis 112 near a respective corner of the body 114. In various embodiments, the vehicle 10 may be different from Figure 1 the vehicle shown. For example, in certain embodiments, the number of wheels 116 may vary. As an additional example, in various embodiments, in addition to various other possible differences, the vehicle 10 may not have a steering system and may, for example, be steered by differential braking.

[0036] In Figure 1 the exemplary embodiment shown, the vehicle 100 includes an actuator assembly 120. The actuator assembly 120 includes a propulsion system 129 that drives at least some of the wheels 116 and is mounted on the chassis 112. In the illustrated embodiment, the actuator assembly 120 includes an engine 130. In one embodiment, the engine 130 includes an internal combustion engine. In other embodiments, instead of or in addition to an internal combustion engine, the actuator assembly 120 may include one or more other types of engines and / or motors, such as an electric motor / generator.

[0037] Still referring to Figure 1 the illustration, the engine 130 is connected to at least some of the wheels 116 via one or more drive shafts 134. In some embodiments, the engine 130 is mechanically connected to a transmission. In other embodiments, the engine 130 may alternatively be coupled to a generator that powers an electric motor mechanically coupled to the transmission. In certain other embodiments (e.g., electric vehicles), an engine and / or a transmission may not be required.

[0038] The steering system 150 is mounted on the chassis 112 and controls the steering of the wheels 116. The steering system 150 includes a steering wheel and a steering column (not shown). The steering wheel receives input from the driver of the vehicle 100. The steering column generates a desired steering angle of the wheels 116 via the drive shaft 134 based on the input from the driver. Similar to the discussion of possible variations of the vehicle 10 above, in some embodiments, the vehicle 10 may not include a steering wheel and / or a steering column. Additionally, in some embodiments, an autonomous vehicle may utilize steering commands generated by a computer without driver participation.

[0039] The braking system 160 is mounted on the chassis 112 and provides braking for the vehicle 100. The braking system 160 receives input from the driver via a brake pedal (not shown) and provides appropriate braking via a braking unit (also not shown). The driver also provides input regarding the desired speed or acceleration of the vehicle via an accelerator pedal (not shown), as well as various other inputs for various vehicle devices and / or systems, such as one or more vehicle radios, other entertainment systems, an environmental control system, a lighting unit, a navigation system, etc. (also not shown). Similar to the discussion of possible variations of the vehicle 10 above, in some embodiments, steering, braking, and / or acceleration may be commanded by a computer rather than the driver (in one such embodiment, the vehicle's computer may use input from a radar system to steer, brake, and / or accelerate the vehicle).

[0040] In Figure 1 the embodiment of. As Figure 1 shown, the vehicle 100 includes a plurality of radar devices 132a through 132g mounted on the body 114. The radar devices (radars) 132a through 132g include front - view radar devices 132a through 132c, side - view radar devices 132d, 132e, and / or rear - view radar devices 132f, 132g. The various radar devices 132a through 132g can be part of a parking assistance system, a rear - collision warning system, a cross - traffic alert system, an emergency braking system, a pedestrian detection system, a forward - collision avoidance system, and / or a blind - spot detection system, as well as other possible systems that utilize radar data as an input for various vehicle outputs. Although Figure 1 seven radar devices 132a through 132g are shown, fewer or more radar devices may be provided. The radar devices 132a through 132g can be short - range, medium - range, or long - range radar devices. After pre - processing the raw radar data, the radar devices 132a through 132g each generate a range - Doppler beam (RDB) map, as further described below. At least some of the radar devices 132a through 132g have overlapping fields of view, such that the various RDB maps are at least partially spatially overlapping.

[0041] The control system 102 is mounted on the chassis 112. The control system 102 provides vehicle odometry through RDB map registration. The control system 102 uses radar data registration to achieve radar-based vehicle dynamics estimation by matching three dynamic projections of a set of RDB maps from radar devices 132a to 132g: range beam to range Doppler, range Doppler beam maps between different radars, and correlations over time. In one example, the control system 102 provides these functions according to the method 500 and Figure 5 the related data conversions and processes of Figure 3 4, 6, and 7 as further described below.

[0042] Although the control system 102 and the radar system 202 are depicted as part of the same system, it should be understood that in some embodiments, these features may include two or more systems. Additionally, in various embodiments, the control system 102 may include all or part of various other vehicle devices and systems, and / or may be coupled to various other vehicle devices and systems, such as the actuator assembly 120 and / or the electronic control system 118.

[0043] Refer to Figure 2 for a functional block diagram of the control system 102 in accordance with an exemplary embodiment. As Figure 1 shown, the control system 102 includes a radar system 202 and a controller 204. The radar system 202 is included as part of a vision system 103, which may include one or more additional sensors 104, as Figure 2 shown in Figure 1 and 2 . In the depicted embodiment, the sensors 104 include one or more cameras 210 and one or more light detection and ranging (LIDAR) systems 212. The cameras 210, LIDAR systems 212, and radar system 202 obtain corresponding sensor information identifying objects on or near the road on which the vehicle 100 is traveling, such as moving or stationary vehicles, pedestrians, bicyclists, animals, buildings, trees, guardrails, medians, and / or other objects on or beside the road.

[0044] Similarly, as Figure 2As shown, the radar system 202 includes a plurality of radar devices 132a through 132g. In one embodiment, each radar device includes a transmitter (or transmitter antenna), a receiver (or receiver antenna), and a preprocessing module 226. In another embodiment, a common preprocessing module 226 may be provided. The transmitter transmits radar signals in the form of time-separated, frequency-modulated chirps. After the transmitted radar signals contact one or more objects (stationary or moving) on or near the road where the vehicle 100 is located and are reflected / redirected to the radar system 202, the redirected radar signals are received by the receivers of the respective radar devices 132a through 132g.

[0045] As Figure 2 shown, the controller 204 is coupled to the radar system 202 and the sensors 104. Similar to the discussion above, in some embodiments, the controller 204 may be wholly or partially disposed within the radar system 202 or be part of the radar system 202. Additionally, in some embodiments, the controller 204 is also coupled to one or more other vehicle systems (such as Figure 1 the electronic control system 118). The controller 204 receives information sensed or determined from the radar system 202 and the sensors 104. In one embodiment, the controller 204 receives raw radar data from the radar system 202 and preprocesses the radar data in the preprocessing module 226 of the controller to provide a set of RDB maps. In the vehicle speed estimation module 241, the controller 204 estimates the vehicle speed by spatially registering the RDB maps using the estimated vehicle speed, which is optimized until sufficient RDB map registration has been achieved. The controller 204 generally performs these functions according to the data flow diagram and method 500 as Figures 3 to 5 will be further described below.

[0046] As Figure 2 shown, the controller 204 includes a computer system. In some embodiments, the controller 204 may also include one or more of the radar systems 202, the sensors 104, one or more other systems, and / or their components. Additionally, it will be understood that the controller 204 may be different from Figure 2 the embodiment shown. For example, the controller 204 may be coupled to or otherwise utilize one or more remote computer systems and / or other control systems, such as Figure 1 the electronic control system 118.

[0047] In the depicted embodiment, the computer system of controller 204 includes a processor 230, a memory 232, an interface 234, a storage device 236, and a bus 238. The processor 230 performs the computing and control functions of controller 204 and may include any type of processor or multiple processors, a single integrated circuit such as a microprocessor, or any suitable number of integrated circuit devices and / or circuit boards that work together to implement the functions of the processing unit. During operation, the processor 230 executes one or more programs 240 contained in the memory 232 and thus controls the general operation of controller 204 and the computer system of controller 204, typically during the execution of the processes described herein, such as the method 500 described further below in conjunction with Figure 5 and the data stream processing of Figure 3 and Figure 4 One or more programs 240 include a preprocessing module 226, a vehicle speed estimation module 241, and a tracker module 243 for performing the steps of method 500 described in detail below. Although the vehicle speed estimation module 241 is shown as being included under the computer program in Figure 2 it should be understood that the vehicle speed estimation module 241 may be stored as a computer program in the memory of the radar system 202 and executed by at least one processor of the radar system 202.

[0048] The processor 230 is capable of executing one or more programs (i.e., running software) to perform the various tasks encoded in the programs, particularly the preprocessing module, the speed estimation module, and the tracker modules 226, 241, 243. The processor 230 may be a microprocessor, a microcontroller, an application specific integrated circuit (ASIC), or other suitable device implemented by those skilled in the art.

[0049] The memory 232 may be any type of suitable memory. This will include various types of dynamic random access memory such as SDRAM, various types of static random access memory (SRAM), and various types of non-volatile memory (programmable read only memory, electrically erasable programmable read only memory, and flash memory). In some examples, the memory 232 is located on and / or co-located on the same computer chip as the processor 230. In the described embodiment, the memory 232 stores the above programs 240 and one or more stored values 242 for making determinations.

[0050] The bus 238 is used to transfer programs, data, status, and other information or signals between various components of the computer system of the controller 204. The interface 234 allows communication, for example, from system drives and / or another computer system to the computer system of the controller 204, and can be implemented using any suitable method and apparatus. The interface 234 can include one or more network interfaces to communicate with other systems or components. The interface 234 can also include one or more network interfaces to communicate with technicians, and / or one or more storage interfaces to connect to storage devices, such as the storage device 236.

[0051] The storage device 236 can be any suitable type of storage device, including direct access storage devices, such as hard disk drives, flash memory systems, floppy disk drives, and optical disk drives. In one exemplary embodiment, the storage device 236 includes a program product from which the memory 232 can receive a program 240 (including computer modules 241 and 243), and the program 240 executes one or more embodiments of one or more processes of the present disclosure, such as the steps of method 500 (and any of its sub-processes), which will be further described below in conjunction with Figures 4 - 7 In another exemplary embodiment, the program product can be directly stored in the memory 232 and / or on a disk (e.g., disk 244), as mentioned below.

[0052] The bus 238 can be any suitable physical or logical means for connecting computer systems and components. This includes, but is not limited to, direct hardwired connections, fiber optics, infrared, and wireless bus technologies. During operation, the program 240 is stored in the memory 232 and executed by the processor 230.

[0053] It should be understood that although this exemplary embodiment is described in the context of a full-featured computer system, those skilled in the art will recognize that the mechanisms of the present disclosure can be distributed as a program product having one or more types of non-transitory computer-readable signal-bearing media for storing the program and its instructions and effecting its distribution, such as a non-transitory computer-readable medium carrying the program and containing computer instructions stored therein for causing a computer processor (e.g., processor 230) to execute and perform the program. Such program products can take many forms, and the present disclosure is equally applicable regardless of the specific type of computer-readable signal-bearing media used for effecting the distribution. Examples of signal-bearing media include: recordable media such as floppy disks, hard disks, memory cards, and optical disks, and transmission media such as digital and analog communication links. It can also be understood that the computer system of the controller 204 can also be different from Figure 2The illustrated embodiments. For example, the computer system of the controller 204 may be coupled to or may utilize one or more remote computer systems and / or other control systems.

[0054] Additionally referring Figure 3 to the data flow diagram 300 of FIG. 3, the or each preprocessing module 226a, 226b processes the received radar signals to provide RDB data in the form of a set of RDB maps 304a, 304b. In an exemplary embodiment, the respective preprocessing modules 226a through 226g apply preprocessing steps to the raw radar data 302a through 302g received from the respective radar devices 132a through 132g. However, in another embodiment, a common preprocessing module 206 may be used. The raw radar data 302a through 302g in the form of analog radar received signals are converted in parallel by the preprocessing modules 226 into a set of RDB maps 304a through 304g. Specifically, in one embodiment, the or each preprocessing module 226 applies the following preprocessing steps: receiving radar signals from the radar devices 132a through 132g and performing analog-to-digital conversion (ADC), range fast Fourier transform (FFT), Doppler fast Fourier transform processing, and beamforming processing thereon to generate the RDB maps 304a through 304g. Beamforming is a fast Fourier transform. While a conventional fast Fourier transform converts time to frequency (e.g., range fast Fourier transform and Doppler fast Fourier transform), the beamforming fast Fourier transform converts space to directivity. Thus, the RDB maps 304a through 304g contain range (distance), velocity (Doppler), and direction (beam) information. Such preprocessing steps are available to those skilled in the art.

[0055] In an embodiment, the set of RDB maps 304 are obtained from a plurality of radar devices 134a through 134g respectively. Additionally or alternatively, the set of RDB maps 304 may include a data set extended by including at least one previous frame of RDB maps from the same plurality of radar devices 134a through 134g. The number of historical frames of the RDB maps is a variable parameter determined based on a balance between processing efficiency and the correctness of the final vehicle speed estimate. For example, 1 to 20 previous RDB map frames (including any integer specifically designated between 1 and 20) may be used.

[0056] Continuing to refer to FIG. Figure 2 and 3, the set of RDB maps 304a to 304g from the preprocessing module 226 or each preprocessing module 226 is provided as an input to the vehicle speed estimation module 241. The vehicle speed estimation module 241 implements an iterative optimization process that spatially registers the set of RDB maps 304a to 304g in the local coordinate frame of the vehicle 100. The spatial registration is performed based on the estimated vehicle speed. The registration is also based on the radar spatial data 308 from the alignment data source 310 and the vehicle dimension data 312 from the vehicle attribute data source 314. The radar spatial data 308 and the vehicle dimension data 312 can be combined to define the orientation and spatial position of each radar device 132a to 132g. The alignment data source 310 and the vehicle attribute data source 314 can be stored on the storage device 236. The more accurate the estimated vehicle speed is relative to the actual vehicle speed, the greater the degree of registration. The degree of registration or the correlation score is determined by the optimization process, and the estimated vehicle speed is adjusted to optimize the correlation score. Once the degree of registration or the correlation score is sufficiently optimized, the optimization process outputs a first estimated vehicle speed 306.

[0057] The first estimated vehicle speed 306 is input to the tracker module 243. The tracker module 243 smooths the estimated vehicle speed based at least on historical estimated vehicle speed data, the input current first estimated vehicle speed 306, and also based on a vehicle speed prediction obtained from a vehicle dynamics model included in the tracker module 243. The vehicle dynamics model can be constructed from the dynamics data 316 obtained from the vehicle attribute data source 314. The tracker module 243 thus generates a second estimated vehicle speed 318 based on the historical estimate of the vehicle speed, the current first estimated vehicle speed 306, and the vehicle dynamics model based on the predicted vehicle speed. In one example, the tracker module 243 utilizes a Kalman filter. The second estimated vehicle speed 318 is fed back to the vehicle speed estimation module 241 and used as the first estimate of the vehicle speed, which will be adjusted during the optimization process implemented by the vehicle speed estimation module 241. The second estimated vehicle speed 318 can further be used for vehicle control applications, such as determining steering, braking, and / or propulsion commands to be sent to the steering system 150, the braking system 160, and the engine 130 by the electronic control system 118.

[0058] Figure 4is a data flow diagram further depicting process 400 of vehicle estimation module 241. Vehicle estimation module 241 includes a speed hypothesis sub-module 402 that receives a second estimated vehicle speed 318 from tracker module 243 and a correlation score 414 from a correlation sub-module 412 described further below. The vehicle hypothesis sub-module 402 adjusts the second estimated vehicle speed 318 and evaluates the resulting impact on the correlation score 414. When the correlation score is sufficiently optimized, e.g., meets a predetermined criterion (e.g., above a predetermined threshold when a high correlation score is the goal), the vehicle hypothesis sub-module 402 may stop the optimization process and output a first estimated vehicle speed 306 based on the current candidate vehicle speed that led to the optimized correlation score 414. The speed hypothesis sub-module can inject a single candidate vehicle speed 416 into the subsequent process at a time, or can inject and process multiple candidate vehicle speeds simultaneously. In the latter case, the predicted speed covariance matrix can be used to calculate the initial candidate vehicle speed for the subsequent process. Regardless of whether a single or multiple candidate speeds are being processed, the speed hypothesis sub-module 402 can use a variety of alternative methods to determine the candidate vehicle speed(s) 416. In one example, gradient descent or the Nelder-Mead method is utilized, but other methods of setting parameters within a given search space are also available. The candidate vehicle speed 416 and the first estimated vehicle speed 306 are vectors and include V x (speed on the x-axis) and V y (speed on the y-axis). The y-axis can extend along the longitudinal central axis of vehicle 100, the x-axis is a transverse axis perpendicular to the longitudinal central axis and passes through the center of gravity of vehicle 100. The vehicle speed can also include a speed along the z-path (i.e., a three-dimensional vehicle speed vector).

[0059] Continuing reference Figure 4, the azimuth rotation sub-module 404 receives the candidate vehicle speed 416, which can be a vector of the candidate vehicle speed. The azimuth rotation sub-module 404 further receives the set of RDB maps 304 from each of the radar devices 132a to 132g after preprocessing. The azimuth rotation sub-module is configured to virtually rotate at least one azimuth angle (and optionally also the elevation angle) of the radar devices 132a to 132g in order to spatially register the set of RDB maps 304. The azimuth rotation is determined at least in part based on the candidate vehicle speed 416. Spatial registration tends to transform each RDB map in the set of RDB maps 304 into the same reference frame, particularly the reference frame of the local coordinates of the vehicle 100. That is, each of the radar devices 132a to 132g and each beam of each of the radar devices 132a to 132g are virtually rotated to be oriented along the same axes of the local coordinate system of the vehicle 100. The azimuth rotation is determined in two different modes. The first mode is determined by transforming each range beam (RB) map in each RDB map 304 based on the known azimuth of the corresponding radar devices 132a to 132g on the vehicle 100 and the azimuth axis of the RB map. The second mode is determined by transforming each range-Doppler (RD) map in each RDB map 304 based on the Doppler values (Doppler vectors) from the RD map and the candidate vehicle speed 416. The second mode relies on the fact that the Doppler data contains computable target angle information. By rotating each RD map based on the angle of the target object, all RD maps can be transformed into the same reference frame corresponding to the local coordinates of the vehicle.

[0060] An exemplary specific algorithm for azimuth rotation will be described. As previously mentioned, there are two forms of azimuth rotation, and one of these rotations is based on the estimated candidate vehicle speed 416. The closer the candidate vehicle speed is to matching the actual vehicle speed, the more aligned the azimuth rotations from the two modalities will be. This will result in better spatial registration and ultimately a better correlation score 414. In the first form, the radar devices 132a to 132g that generate each RB map in each RDB map of the set of RDB maps 304 are virtually rotated according to the following equation:

[0061]

[0062] In Equation 1, i is the radar index, θ i is the azimuth axis of radar i in the local coordinates of the vehicle 100 and Yaw i is the yaw or direction angle of radar i in the local coordinates of the vehicle 100. N is the number of radars, and F is the number of frames (current and previous), thus specifying index numbers not only for a particular radar device 132a to 132g but also for previous frames from the radar devices 132a to 132g. Yaw iIncluded in or derived from the radar spatial data 308 and the vehicle size data 312.

[0063] In the second mode, the radar devices 132a to 132g that generate each RD map in each RDB map of the RDB map group 304 are virtually rotated according to the following formula:

[0064]

[0065]

[0066] In Formulas 2 and 3, is the velocity at radar i. The velocities at each of the radar devices 132a to 132g will vary according to their positions relative to the center of gravity of the vehicle 100. The azimuth rotation sub-module 404 adjusts the candidate vehicle velocity 416 based on the positions of the radar devices 132a to 132g. The relative positions of the radar devices 132a to 132g with respect to the center of gravity are known from the radar spatial data 308 and the vehicle size data 312. The necessary adjustments are derived based on vehicle dynamics models known in the art. ||v i || is the velocity criterion at the position of radar i. is the velocity direction of radar i in the local coordinates of the vehicle 100, which is known based on the radar spatial data 308 and the vehicle size data 312. Formula 2 defines the relationship between the Doppler value in the RD map and the estimated vehicle velocity representing the angle between the target object and radar device i.

[0067] In an embodiment, the azimuth rotation sub-module 404 outputs the rotated RDB data 418 to the integration sub-module 406. More specifically, the rotated RDB data 418 includes the RD maps that have been transformed according to Formulas 2 and 3 and the RB maps that have been transformed according to Formula 1. The integration module integrates or combines the RD maps and the RB maps after azimuth rotation. In one embodiment, the combination is performed by multiplication according to the following formula:

[0068]

[0069] In Formula 4, RD i is the RD map when the radar device i has been virtually rotated and RB i is the RB map when the radar device i has been virtually translated M i represents the integration or combination of the RD and RB maps of each of the radar devices 132a to 132g.

[0070] The transformation sub-module 408 receives the integrated RDB data 420 and converts the data from polar coordinates in the local coordinate frame of the vehicle 100 into Cartesian coordinates. The following polar-to-Cartesian coordinate conversion equations can be used:

[0071]

[0072]

[0073] In formulas 5 and 6, R i is the radial position of the RDB data 420 in the local coordinates of the vehicle 100. Those skilled in the art will understand that the conversion to Cartesian coordinates can be performed earlier or later in the process 400.

[0074] The transformation sub-module 410 receives the transformed RDB data 422. The transformation sub-module 410 uses the vehicle dynamics model to virtually transform the radar devices 132a to 132g of the historical frames included in the RDB data 422 in order to predict the in-time movement of the radar devices 132a to 132g between the current time and the earlier time when the previous data frame was captured. The vehicle dynamics model takes into account the candidate vehicle speed 416. In one embodiment, the vehicle dynamics model is a relatively simple model that multiplies the time difference between the current time frame and the time frame when the radar devices 132a to 132g captured data. However, more complex vehicle dynamics models can be incorporated, such as models that simultaneously consider the candidate vehicle speed and vehicle acceleration. In one embodiment, the transformation sub-module 410 converts the transformed RDB data 422 into the local coordinate system of the vehicle 100 and the current time based on the following formulas:

[0075]

[0076]

[0077] In formulas 7 and formula 8, and are the radar i positions received from the alignment data source 310 and the vehicle attribute data source 314 as part of the radar space data 308 and the vehicle dimension data 312, and ΔT i is the time difference between the frame of radar i and the current frame time.

[0078] The converted RDB data 424 provides an integrated RD map and an RB map for multiple radar devices 132a through 132g and for each radar device 132a through 132g over multiple time frames. The converted RDB data 424 is spatially registered based on a candidate vehicle speed 416 and temporally registered based on the candidate vehicle speed 416. The converted RDB data 424 provides a number (NF) of temporally and spatially registered RDB maps that overlap each other in many regions. The greater the degree of registration achieved, the closer the candidate vehicle speed is to the true speed of vehicle 100. The correlation sub-module 412 provides a quantitative measure of the degree of spatial registration in the converted RDB data 424. In one embodiment, the correlation sub-module 412 uses a normalized cross-correlation function to determine a correlation score 414. Other correlation functions are also feasible. In a specific example, the correlation sub-module 412 may call the following formula:

[0079]

[0080] where and

[0081] (Equation 9)

[0082] In Equation 9, A and B are radar maps in the converted RDB data 424 for all different possible pairs of radar maps. The correlation sub-module 412 derives the correlation score 414 according to the following equation based on the average of the correlation scores for each map pair:

[0083]

[0084] is the correlation score 414 for the current candidate vehicle speed 416. The speed estimation module 241 adjusts the candidate vehicle speed 416 to optimize the correlation score 414, thereby maximizing the degree of registration in the converted RDB data 424. When the correlation score is sufficiently optimized, the speed estimation module 241 outputs a first estimated vehicle speed 306.

[0085] Figure 5 is a flowchart of a method 500 for estimating a vehicle speed based on radar data according to an exemplary embodiment. According to the exemplary embodiment, the method 500 may be implemented in combination with Figure 1 vehicle 100 and Figure 2 control system 102. The method 500 may be continuously implemented during vehicle operation or intermittently implemented in response to detecting certain vehicle conditions (such as a global positioning system data interruption or an inertial measurement unit failure). The estimated vehicle speed generated by the method 500 may be used to replace or combine with the vehicle speed determination from other measurement units (such as a global positioning system or an inertial measurement unit).

[0086] As Figure 5 shown, method 500 includes step 510 of receiving RDB data 302a to 302g from a plurality of radar devices 132a to 132g. The RDB data 302a to 302g is preprocessed to provide RDB maps 304a to 304g. In step 520, current and previous frames are included in the RDB maps 304a to 304g to provide a set of RDB maps for subsequent processing. Referring Figure 6 , an exemplary RD map of a single beam of a single radar device is shown. It can be seen that the radar device observes a plurality of target objects. The set of RDB maps 304 will include such RD maps for a plurality of beam angles for each of the plurality of radar devices 132a to 132g and for a plurality of data frames.

[0087] In step 530, based on the candidate vehicle speed 416, the set of RDB maps 304 is registered in space and time relative to each other. The spatial and temporal registration 416 is calculated based on the candidate vehicle speed. The spatial registration virtually rotates each of the radar devices 132a to 132g so as to be oriented along a common axis in a common reference frame (e.g., the local coordinates of the vehicle 100). The virtual rotation of each of the radar devices 132a to 132g will thus rotate the set of RDB maps 304. In an embodiment, two rotation modes of the radar devices 132a to 132g are used to perform the spatial registration. In the first mode, using the radar spatial data 308, the RB map portion of the RDB map 304 is transformed based on the azimuth of the corresponding radar devices 132a to 132g. In the second mode, based on the relationship between the Doppler energy at the corresponding radar devices 132a to 132g and the vehicle speed, the RD map portion of the RDB map 304 is transformed. The second mode takes into account the azimuth and position of the radar devices in the local coordinates of the vehicle 100 based on the radar spatial data 308. The candidate vehicle speed 416 is taken as an assumption of the vehicle speed, such that the candidate vehicle speed 416 is incorporated into the spatial registration process. As described above, the RD map and the RB map transformed according to the first and second modes are integrated to produce integrated RDB data 420. In the temporal registration process, based on the time elapsed between the previous time frame and the current time frame and the candidate vehicle speed 416, the previous frame of the RDB map 304 is transformed, thereby correcting the previous frame of the RDB to account for the predicted movement of the corresponding radar device since the data was captured. The spatially and temporally registered RDB data is output in Cartesian coordinates in the local coordinate frame of the vehicle 100 in the form of transformed RDB data 424.

[0088] Referring Figure 7 , a simulation is shown in which from the first radar device Figure 6The RD map 600 of is spatially registered with the RD map from the second radar device, which is differently oriented and positioned on the vehicle from the first radar device, but both capture multiple objects in their fields of view. This is a simplified simulation to illustrate the concepts described herein. Figure 7 An integrated and transformed RDB map 700 according to method step 530 is shown, where the RD maps from the first and second radar devices are registered in space and time based on a candidate vehicle speed. Since the candidate vehicle speed is very close to the true vehicle speed, a high overlap between each target marker can be seen.

[0089] In step 540, a correlation score is determined based on the transformed RDB data 424, which represents the degree of registration between each spatially and temporally registered RDB map. Various available correlation functions are used to determine the correlation score. In step 550, an optimization algorithm is executed, which iteratively adjusts to find the candidate vehicle speed 416 that optimizes the correlation score (i.e., minimizes the correlation score when a low correlation score represents a high spatial registration). The optimization algorithm relies on iteratively performing steps 520 and 530 and thus evaluating the correlation score for adjustments to the candidate vehicle speed 416. When the correlation score has been optimized by a particular candidate vehicle speed 416, the candidate vehicle speed is output as the first estimated vehicle speed 306.

[0090] In step 560, vehicle characteristics are directly or indirectly controlled based on the first estimated vehicle speed 306 determined by the optimization algorithm of step 550. The vehicle characteristics can be steering, braking, or propulsion commands. In some embodiments, a tracker smooths the first estimated vehicle speed 306 to provide a second estimated vehicle speed 318, which is used in step 560 for autonomous control of the vehicle characteristics.

[0091] At the start of the next iteration of the optimization process in steps 530 to 550, the estimated vehicle speed 306 or 308 is fed back to the optimization algorithm as an initial estimate of the vehicle speed. The estimated vehicle speed 306 or 308 can undergo further calculations in order to derive other vehicle dynamics parameters, such as acceleration, for use in vehicle control. Method 500 can be repeated when each new frame of the raw radar data 302a to 302g is received.

[0092] It should be understood that the disclosed methods, systems, and vehicles can be different from those depicted in the figures and described herein. For example, vehicle 100 and control system 102 and / or their various components can be different from Figure 1 and 2 as shown in and referenced Figure 1 and Figure 2 described. Further, it will be understood that certain steps of method 500 can be different from Figure 5The steps depicted and / or the related descriptions above. It is also understood that some steps of the above methods may occur simultaneously or in a different order than Figure 5 that shown.

[0093] Although at least one exemplary embodiment has been presented in the foregoing detailed description, it should be understood that a vast number of variations exist. It should also be understood that one or more exemplary embodiments are merely examples and are not intended to limit in any way the scope, applicability, or configuration of the present disclosure. On the contrary, the foregoing detailed description will provide those skilled in the art with a convenient roadmap for implementing one or more exemplary embodiments. It should be understood that various changes may be made to the functions and arrangements of the elements without departing from the scope of the present disclosure as set forth in the appended claims and their legal equivalents.

Claims

1. A method for estimating vehicle speed based on radar data, the method comprising: Collecting a plurality of radar data from a plurality of radars located on the vehicle to receive a set of range-Doppler beam (RDB) maps; Performing an optimization process by adjusting an estimated value of the vehicle speed to optimize a correlation score, wherein the optimization process includes iteratively: Spatially registering the set of RDB maps based on a current estimate of the vehicle speed; And Determining a correlation score based on the spatially registered set of RDB maps; When the correlation score has been optimized, outputting an optimized estimate of the vehicle speed from the optimization process; And Controlling the vehicle at least in part based on the optimized estimate of the vehicle speed.

2. The method according to claim 1, wherein, The set of RDB maps includes RDB maps from a plurality of radars located at different positions and / or orientations relative to the vehicle.

3. The method according to claim 1, wherein the set of RDB maps includes current and / or previous frames from at least one radar.

4. The method according to claim 1, wherein spatially registering the set of RDB maps includes rotating the azimuth angles of the set of RDB maps to a local coordinate system based on a current estimate of the vehicle speed.

5. The method according to claim 1, wherein spatially registering the set of RDB maps includes, for each of the RDB maps, virtually rotating at least one radar according to a Doppler-based azimuth angle to transform the range-Doppler map of the RDB map, the Doppler-based azimuth angle being determined based on Doppler data and a current estimate of the vehicle speed, and virtually rotating the at least one radar according to a second azimuth angle, the second azimuth angle being determined based on radar azimuth information of the at least one radar relative to a local coordinate frame of the vehicle, to transform the range beam map of the RDB map, and multiplying the transformed range-Doppler map and the transformed range beam map to provide an azimuth-rotated RDB map, wherein the azimuth-rotated RDB maps form the basis for determining a spatially registered set of the RDB maps.

6. The method according to claim 1, wherein the set of RDB maps includes a current frame and a previous frame, and wherein spatially registering the set of RDB maps includes correcting vehicle motion between the current frame and the previous frame based on a current estimate of the vehicle speed and a frame rate.

7. The method according to claim 1, wherein the optimization process utilizes an optimization algorithm.

8. The method according to claim 1, wherein, The set of RDB maps is received from a preprocessing module that performs analog-to-digital conversion, range fast Fourier transform, fast Fourier transform, Doppler fast Fourier transform, and beamforming processes.

9. A vehicle, comprising: A plurality of radars located on a vehicle; And At least one processor operably communicable with the plurality of radars, the at least one processor being configured to execute program instructions, wherein the program instructions are configured to cause the at least one processor to: Collect a plurality of radar data from a plurality of radars located on the vehicle to receive a set of range-Doppler beam (RDB) maps; Perform an optimization process by adjusting an estimated value of the vehicle speed to optimize a correlation score, wherein the optimization process includes iteratively: Spatially register the set of RDB maps based on a current estimate of the vehicle speed; and Determine a correlation score based on the spatially registered set of RDB maps; When the correlation score has been optimized, output an optimized estimate of the vehicle speed from the optimization process; and Control the vehicle based at least in part on the optimized estimate of the vehicle speed.

10. The vehicle according to claim 9, wherein the set of RDB maps includes RDB maps from a plurality of radars located at different positions and / or orientations relative to the vehicle.

Citation Information

Patent Citations

  • Radar-based object detection and height determination of detected objects

    DE102017216795A1

  • Tracking Device

    US20150102956A1