Some radar systems are included in vehicles as part of automated driving assistance systems and used to assist in perception of environments around the vehicles. Important parameters for automotive radar systems have maximum unambiguous ranges and maximum unambiguous velocities. The maximum unambiguous range is directly proportional to the pulse repetition interval, while the maximum unambiguous velocity is inversely proportional to the pulse repetition interval, making it difficult to improve both with a single chirp sequence. As a result, multiple chirp sequences are used, and fast Fourier transforms (FFTs) are performed on the individual chirp sequences to determine velocity. However, determining the velocity in this way does not use all available samples and processes the different chirp sequences separately, resulting in incoherency and signal gain loss. That is, the FFTs are applied to each chirp sequence separately, which causes different ambiguities in the resulting velocity determination. The ambiguities arising from each individual velocity determination must be reduced by searching for consistencies in the ambiguous velocities.
The present invention may be better understood, and its numerous objects, features, and advantages made apparent to those skilled in the art by referencing the accompanying drawings.
The use of the same reference symbols in different drawings indicates identical items unless otherwise noted. The Figures are not necessarily drawn to scale.
As discussed previously herein, some techniques for determining the velocity of objects in the environment around a radar system incoherently compare the Doppler fast Fourier transforms (FFTs) for different chirp sequences and do not use all available radar data samples. The disclosed techniques and radar systems implementing the disclosed techniques are able to process multiple chirps coherently, such that all the available radar data samples are used. As a result, the disclosed techniques and radar system implementing them are able to more accurately determine the velocity of objects at larger distances than conventional techniques.
In this example, radar system 100 includes a microcontroller and processor unit (MCPU) 110, a digital-to-analog converter (DAC) 120, a radar sensor circuit 130, a first antenna array 145, a second antenna array 150, an analog-to-digital converter (ADC) 170, and storage 180. The MCPU 110 comprises one or more MCPU cores, general purpose processing cores, array or vector processing cores, parallel processing cores, graphic processing units, neural net and linear algebra accelerators, field-programable gate arrays, digital signal processors, application-specific integrated circuits, and the like, or any combination thereof. The term “MCPU” in the singular is used herein to refer to either a single or multiple of the MCPU cores, general purpose processing cores, array or vector processing cores, parallel processing cores, graphic processing units, digital signal processors, neural net and linear algebra accelerators, application-specific integrated circuits, field-programable gate arrays, and the like, or any combination thereof comprised in the MCPU 110.
MCPU 110 includes a radar controller 115 and a signal processor 175. The radar controller 115 can receive data from the radar sensor circuit 130 and control radar parameters of the radar sensor circuit 130 such as frequency band, length of a radar frame, and the like via the DAC 120. A control signal from DAC 120 can be used to adjust the radar chirp signals output from a chirp generator 135 included in radar sensor circuit 130. The signal processor 175 in MCPU 110 can also receive the data from the radar sensor circuit 130 and perform signal processing for determining a distance or range between a target object and radar system 100, a radial velocity of the target object, an angle of arrival for the target object, and the like. The signal processor 175 can provide the calculated values to the storage 180 and/or to other systems via the interface 190.
The interface 190 can enable the MCPU 110 to communicate with other systems over local and wide area networks, the internet, automotive communication buses, and/or other kinds of wired or wireless communication systems, for example. The MCPU 110 can provide the calculated values over the interface 190 to other systems, such as a radar-camera-lidar fusion system; an automated driving assistance system including parking, braking, or lane-change assistance features; and the like. The storage 180 can be used to store instructions for the MCPU 110, received data from the radar sensor circuit 130, calculated values from the signal processor 175, and the like. Storage 180 can be any appropriate storage medium, such as a volatile or non-volatile memory.
The radar sensor circuit 130 includes the chirp generator 135, a transmitter 140, a receiver 155, and a baseband processor 160. The chirp generator 135 can include a local oscillator, for example, and generates radar chirp signals and provides them to the transmitter 140. For example, the chirp generator 135 frequency can modulate a continuous wave signal to form a series of linear chirp signals. The transmitted chirp signal of a known, stable frequency continuous wave varies up and down in frequency over a fixed period of time by the modulated signal. The chirp generator 135 provides the generated chirp signals to the transmitter 140, which drives the first antenna array 145 of one or more transmitter (TX) antennas. The second antenna array 150 comprises one or more receiver (RX) antennas and receives signals reflected from objects in the path of the transmitted chirp signals from the TX antenna array 145. The TX antenna array 145 and the RX antenna array 150 can be stationary or configured to transmit and receive across a range of area, such as by mechanical movement. Implementations including multiple TX antennas in TX antenna array 145 and multiple RX antennas in RX antenna array 150 are called multiple-input, multiple-output (MIMO) radar systems and correspond to a virtual antenna array.
The receiver 155 receives the reflected signals from the RX antenna array 150 and provides them to the baseband processor 160. The baseband processor 160 also receives the transmitted chirp signals from the chirp generator 135 and down-converts the received chirp signals directly into the baseband using the copy of the transmitted chirp signals from the chirp generator 135. The baseband processor 160 can then filter and amplify the baseband signal. The baseband processor 160 provides the filtered and amplified baseband signal to the ADC 170, which digitizes the signal and provides it to the MCPU 110. The signal processor 175 in the MCPU 110 can then perform time domain to frequency domain transforms such as fast Fourier transforms (FFTs) and other signal processing to determine the distance, radial velocity, and angle of arrival between the target object and the radar system 100.
Frequency differences between the received reflections and the transmitted chirp signal increase with delay and so are proportional to distance. The phase differences between the received reflections across consecutive chirps in a radar frame are indicative of the velocity of objects in the field of view. For implementations in which RX antenna array 150 includes two or more receiver antennas, the phase difference between received reflections at a first RX antenna and received reflections at a second RX antenna can be used to determine the angle of arrival of target objects. For example, the down-converted and digitized receive signal corresponding to each chirp is first transformed using an FFT (called the range FFT). The range FFT produces a series of range bins with the value of each range bin denoting the signal strength of reflected targets at the corresponding range. A further “Doppler” FFT is then performed for each range bin across all the chirps in a frame to estimate the velocities of reflected targets. Additional processing can then be performed to determine the angle of arrival between the targets and the radar system 100. Although the radar system 100 is described herein as implementing FFT-based range-Doppler processing, any appropriate transforms may be used to produce the range-Doppler information.
For an implementation in which the radar system 100 is included in a vehicle with an automated driving assistance system, the automated driving assistance system can use the determined distance, velocity, and angle of arrival for objects in the field of view from the radar system 100 to provide parking, braking, or lane-change assistance. The radar system 100 must determine the velocity of objects with sufficient accuracy and speed to provide the automated driving assistance system with meaningful information such that meaningful driving assistance can be provided. Some existing methods for determining the velocity are computationally expensive, have limited velocity resolution, have limited maximum unambiguous velocity, or some combination thereof.
The process 300 begins at step 305, at which the signal processor 175 pre-processes the received radar data, for example by amplifying the received radar signal, mixing the received radar signal with the transmitted radar signal, and the like. At step 310, the signal processor 175 performs interference mitigation to reduce the impact of interfering radar signals in the pre-processed radar data. For example, the signal processor 175 can filter the pre-processed radar data at a known frequency of an interfering signal. At step 315, the signal processor 175 performs a range FFT to obtain a range-sample-antenna data cube that indicates a signal strength for the received radar data from each antenna at each range bin.
At optional step 320, the signal processor 175 determines whether a characteristic of each range bin in the range-sample-antenna data cube satisfies a criterion. For example, the criterion can represent a threshold signal-to-noise ratio (SNR) or a particular subset of range bins, such as the farthest ten range bins of the range-sample-antenna data cube, and the like. In response to the characteristic of the range bin satisfying the criterion, the signal processor 175 performs a Doppler FFT on sequential interleaved chirps to obtain range-Doppler-antenna data cubes that indicate a signal strength for the received radar data at each range bin and velocity bin.
For example with respect to diagram 200 shown in
In response to the range bin not satisfying the criterion at optional step 320, the signal processor 175 performs joint multiple chirp sequences processing at step 335. For example, the SNR for the range bin is less than the threshold SNR, or the index of the range bin is within the particular subset of range bins. Joint multiple chirp sequences processing is performed on the number L of sequential interleaved chirps at once, rather than on each chirp individually, and is described further herein with respect to
In some implementations, the optional steps 320, 325, and 330 can be included to reduce the computational complexity. For example, the joint multiple chirp sequences processing performed at step 335 can offer improved maximum unambiguous velocity and velocity resolution compared to the Doppler FFT performed at step 325 but at the cost of increased computational complexity and increased processing time. To balance the computational cost and the improvements to maximum unambiguous velocity and velocity resolution, the signal processor 175 can perform the conventional steps 325 and 330 for range bins having higher SNRs or range bins nearer to the radar system, and perform the joint multiple chirp sequences processing at steps 335 and 340 for range bins having lower SNRs or range bins farther from the radar system.
At step 345, the signal processor 175 resolves Doppler ambiguities in the determined velocities. For example, the signal processor 175 can compare the determined velocities for the chirp sequence 210 and the determined velocities for the chirp sequence 220 by using integer ambiguity resolving based on 2π integer unfolding of two ambiguous estimates and a minimum difference search between unfolded estimates. At step 335, two ambiguous estimates for chirp sequences 210 and 220 are estimated jointly and directly from both of these sequences together. For the velocities determined using the FFT approach at step 325, phase interferometry between the chirp sequences 210 and 220 can be applied to resolve 2π wrapping of the phase differences between chirps. At step 350, the signal processor 175 performs MIMO array construction to create the virtual array corresponding to the TX and RX antennas. At step 355, the signal processor 175 estimates target directions of arrival for objects.
The process 400 begins at step 410, at which the signal processor 175 generates a Hankel matrix for each chirp sequence of the number L of chirp sequences based on the corresponding selecting range bins. For example in diagram 500 shown in
The input beat signal samples 520 for chirp sequence 220 shown in diagram 200 in
The selected range bins 550 and 560 can be chosen based on the signal strength in each range bin, the expected number of objects at each range bin, and the like. The same range bin indexes are included in each of the Hankel matrices for the L chirp sequences. The dimensions of each Hankel matrix are B×Q, where the number B is greater than a maximum expected number P of objects in a range bin and the number Q is greater than or equal to the maximum expected number P of objects in a range bin. In some implementations, the number B is equal to the number M of chirps in a chirp sequence minus the number Q minus one. The numbers B and Q can be tailored to each particular implementation.
Each Hankel matrix Hl can be represented as:
where M′ is an B×(PK) sub-matrix of a Vandermonde matrix M, K is the number of transmitters, θ1l is a diagonal matrix that represents phase shifts introduced by velocities of the objects in the environment between the first chirp sequence and the lth chirp sequence, X is a matrix representing shifted combination of complex amplitudes of the received radar signal reflected off of objects in the environment with object velocity induced phase changes, and Nl is a noise matrix for the lth chirp sequence. The matrix M∈CM×PK is a Vandermonde matrix that satisfies the model M=[M1 M2 . . . MK], where each matrix Mk for k=1, . . . , K are also Vandermonde matrices represented as:
where ϕk,p=e−jϕ
The matrix X can be represented as:
where x is a vector representing the complex amplitudes of the received radar signal, and ϕ is a diagonal matrix [ϕ1,1, . . . , ϕK,P] that represents a phase shift introduced by a Doppler division multiplexing frequency of each transmitter and the Doppler frequency of each object in the environment over the repetition interval Tri between two consecutive chirps in the same chirp sequence, such as between chirp 210A and chirp 210B in chirp sequence 210.
At step 420, the signal processor 175 generates a block Hankel matrix HBLOCK based on the L Hankel matrices Hl determined at step 410. For example in diagram 600 shown in
Steps 410 and 420 describe the Hankel matrix and block Hankel matrix construction for a single selected range bin and are repeated for each range bin of interest, such as each range bin having lower SNRs or range bins farther from the radar system.
At step 430, the signal processor 175 performs truncated singular value decomposition on the block Hankel matrix HBLOCK to generate a matrix U and a matrix sigma. The matrix U has a size (BL)×Q and preserves the shift invariance properties of the column space of the block Hankel matrix HBLOCK. The matrix sigma is a Q×Q diagonal matrix containing Q singular values. The size of the values in the matrix sigma indicate whether the corresponding column vector in the matrix U is a base vector for the signal space or a base vector for the noise subspace.
At step 440, the signal processor 175 performs object detection on the matrix sigma to generate a truncated matrix U. That is, the signal processor 175 performs object detection to determine which of the Q singular values in the matrix sigma and the corresponding column vectors in the matrix U belong to the signal space, rather than the noise subspace. A truncated matrix U can be generated using the column vectors of the larger matrix U that are related to singular values of signals. Any appropriate object detection technique can be used, such as Akaike information criterion object detection or minimum description length object detection. For a Doppler-division multiplexing radar system with a number K of transmitters, a number P of objects in the environment are detected as KP targets, since each target is detected based on each transmitter's chirp signal. Thus, the truncated matrix U has a size (BL)×(KP).
At step 460, the signal processor 175 identifies selection matrices J in the truncated matrix U. The selection matrices J represent two types of phase shifts introduced by velocities of objects in the environment: a first phase shift ϕ over the repetition interval Tri between chirps in the same chirp sequence and a second phase shift e between chirps of the same index in different chirp sequences, such as chirp 210A in chirp sequence 210 and chirp 220A in chirp sequence 220. The selection matrices J for the estimated subspace as indicated by the truncated matrix U are illustrated in the diagram 700 shown in
where “!” indicates the factorial of a number.
At step 460, the signal processor 175 calculates least-squares approximations for the subspace matrix U selected by the selection matrices Jϕ1, Jϕ2, Jθ,1, and Jθ,2 to obtain a first least-squares model Ψ11 for the first phase shift matrix θ11 that encode phase shifts within the chirp sequence and a second set of least-squares models Ψ1l for l=2, . . . , L for the second set of phase shift matrices θ1l, l=2, . . . , L that encode phase shifts between chirp sequences θ1l, l=2, . . . , L. The least-squares approximation for a particular chirp sequence l in the L chirp sequences can be represented as:
where Ψ11 represents a least-squares model for the first phase shift matrix θ11, Ψ1l represent a least-squares models for the second set of matrices θ1l, l=2, . . . , L, and T is a non-singular matrix that jointly diagonalizes Ψ11 and Ψ1l, wherein the matrix T has dimensions (PK)×(PK) where P is an expected maximum number of objects in a range bin and K is a number of transmitters that transmitted the plurality of interleaved chirp sequences. The ( )† represents pseudo inverse of a matrix.
At step 470, the signal processor 175 performs joint diagonalization of the L sets of Ψ11 and Ψ1l to obtain the first phase shift matrix θ11 and the second set of phase shift matrices θ1l, l=2, . . . , L. For example, the signal processor 175 determines the matrix T that jointly diagonalizes Ψ11 and Ψ1l using the optimization:
which follows from the identity:
where ψ1l is equal to vec(Ψ1l), w1l is equal to diag(θ1l), Ψ is equal to [ψ11, . . . , ψ1L], and W is equal to [w11, . . . , w1L]. The operator “vec” is a vectorization operator that stacks columns of a matrix into a vector; (*)T is a transpose operator for a matrix; and ∥*∥F2 is a squared Frobenius norm operator for a matrix. In some implementations, the signal processor 175 uses Gauss-Newton iterations to solve the optimization for the matrix T. Once the matrix T is determined, the signal processor 175 can determine the matrices θ1l, l=1, . . . , L from equations 5 and 6, shown above. For implementations in which the number L of chirp sequences is two, the signal processor 175 can perform joint diagonalization to determine matrix T using QZ iterations or by using unitary matrices and real processing.
At step 480, the signal processor 175 performs Doppler division multiplexing (DDM) compensation in the phase shift estimates obtained from the first phase shift matrix θ11 and the phase shift estimates obtained from the second set of phase shift matrices θ1l, l=2, . . . , L. For each object p in the number P of objects in the environment, K phase shifts are estimated due to the DDM. These K phase estimates can be combined to the single phase estimate θ11,p as:
The argument of θ11,p is used to compute the phase from the complex exponential (phasor) θ11,p. Therefore the computed phase shift from θ11,p is represented as arg(θ11,p). In equation (9), θ11,p(k) represents the phase shift estimate obtained for a pth object in the environment and a kth DDM interval from phase shift matrix θ11. Similarly, the Doppler division multiplexing introduced replicas of phase shift estimates obtained from the set of phase shift matrices θ1l, l=2, . . . , L can be combined, such that the θ1l,p can be represented as:
Here, θ1l,p(k) is the phase shift estimate obtained for a pth object in the environment and a kth DDM interval from phase shift matrix θ1l. The argument of the complex exponential θ1l,p can be used to compute the phase, such that the computed phase shift θ1l,p is represented as arg (θ1l,p). Since all replicas of the phase estimates are combined, the velocities of the objects in the environment can be determined from the first phase shift arg(θ11,p) and the second set of the phase shifts arg(θ1l,p)., l=2, . . . , L.
At step 490, the signal processor 175 resolves ambiguities in the determined velocity for each object in the environment due to 2π wrapping. The difference in time apertures between the first phase shift arg(θ11,p), over the repetition interval Tri between chirps in the same chirp sequence, and the second set of phase shifts arg(θ1l,p), l=2, . . . , L, between chirps of the same index in different chirp sequences, allows the determined velocity from the first phase shift θ11,p and the determined velocities from the second set of phase shifts arg(θ1l,p), l=2, . . . , L to be compared, using integer unfolding and resolving the ambiguity as described in step 345 of the process 300 shown in
As described herein, the disclosed techniques enable velocity estimation of objects in the environment and integer ambiguity resolving by joint coherent processing of multiple chirp sequences at once. In addition, the disclosed techniques allow the velocity estimates introduced due to Doppler division multiplexing to be combined efficiently, which increases processing gain and improves the root mean square error of the determined velocities compared to conventional FFT-based techniques for determining velocity. The reduced error increases the velocity resolution of radar systems implementing the disclosed techniques, which enables the radar systems to distinguish between objects in the environment that have similar radial velocities. The coherent combining of all available samples improves the dynamic range of the velocity determinations compared to conventional FFT-based techniques. Further the disclosed techniques can be used with any appropriate chirp parameters, and do not constrain the chirp frame design.
Features specifically shown or described with respect to one embodiment set forth herein may be implemented in other embodiments set forth herein.
In this description, the term “couple” may cover connections, communications, or signal paths that enable a functional relationship consistent with this description, including intermediate or intervening components that do not alter the functional relationship. A device that is “configured to” perform a task or function may be configured by programming or hardwiring, for example, at a time of manufacturing by a manufacturer and/or may be configurable or reconfigurable by a user after manufacturing. The configuring may be done through firmware and/or software, construction and/or layout of hardware components and connections, or any combination thereof. As used herein, “node”, “pin”, and “lead” are used interchangeably. A circuit or device described herein as including certain components may be adapted to be coupled to those components instead, to form the described circuitry or device.
While particular embodiments of the present invention have been shown and described, it will be recognized to those skilled in the art that, based upon the teachings herein, further changes and modifications may be made without departing from this invention and its broader aspects, and thus, the appended claims are to encompass within their scope all such changes and modifications as are within the true spirit and scope of this invention.
A system includes at least one processor and at least one non-transitory computer-readable medium storing machine instructions. The machine instructions cause the at least one processor to obtain a range-sample-antenna data cube for a received radar signal comprising reflections of a plurality of interleaved chirp sequences off of objects in an environment. The at least one processor generates, for each chirp sequence of the plurality of interleaved chirp sequences, a Hankel matrix based on a subset of range bins of the range-sample-antenna data cube corresponding to the particular chirp sequence, and a block Hankel matrix based on the Hankel matrices corresponding to the plurality of interleaved chirp sequences. The at least one processor performs truncated singular value decomposition on the block Hankel matrix to estimate subspaces and object detection to identify selection matrices in the estimated subspaces.
The at least one processor then calculates least-squares approximations for the selection matrices and the block Hankel matrix to obtain, for each chirp sequence in the plurality of interleaved chirp sequences, a first phase shift matrix θ11 and a second set of phase shift matrices θ1l, l=2, . . . , L. The first phase shift matrix θ11 represents a phase shift over a repetition interval between chirps in a same chirp sequence, and the second phase shift matrices θ1l, l=2, . . . , L represent a phase shift between chirps of a same sequence index in the plurality of interleaved chirp sequences. The at least one processor performs joint diagonalization of the first matrix θ1,1 and the second set of matrices θ1l, l=2, . . . , L and Doppler division multiplexing compensation on the first matrix θ11 and the second set of matrices θ1l, l=2, . . . , L. The at least one processor then resolves ambiguities in determined velocities based on a comparison of the first matrix θ11 and the second set of matrices θ1l, l=2, . . . , L.
In some implementations, a Hankel matrix corresponding to an lth chirp sequence is represented as:
where M′ is an B×(PK) sub-matrix of a Vandermonde matrix M, B is a number greater than a maximum expected number P of objects in a range bin, K is the number of transmitters, θ1l is a diagonal matrix that represents phase shifts introduced by velocities of the objects in the environment between the first chirp sequence and the lth chirp sequence, X is a matrix representing shifted combination of complex amplitudes of the received radar signal reflected off of objects in the environment with object velocity induced phase changes, and Nl is a noise matrix for the lth chirp sequence.
In some implementations, a number of possible selection matrix pairs is represented as two time a number G, where G is represented as:
where “!” indicates the factorial of a number. In some implementations, the plurality of interleaved chirp sequences includes a number L of interleaved chirp sequences. The least-squares approximation for an lth chirp sequence is represented as:
where Ψ11 represents a least-squares model for the first matrix θ11, Ψ1l represents a least-squares model for the second set of matrices θ1l, l=2, . . . , L, and T is a non-singular matrix that jointly diagonalizes Ψ11 and Ψ1l. The matrix T has dimensions (PK)×(PK), where P is an expected maximum number of objects in a range bin and K is a number of transmitters that transmitted the plurality of interleaved chirp sequences.
In some implementations, the Doppler division multiplexing compensation for the first matrix θ11 causes a phase shift arg(θ11,p) for a particular object p in a number P of objects in the environment over the repetition interval between chirps in the same chirp sequence to be represented as:
where K is a number of transmitters that transmitted the plurality of interleaved chirp sequences. In some implementations, the Doppler division multiplexing for the second phase shift matrices θ1l, l=2, . . . , L causes a second set of phase shifts arg(θ1l,p) for a particular object p in a number P of objects in the environment phase shift between chirps of the same index in the plurality of interleaved chirp sequences to be represented as:
where K is a number of transmitters that transmitted the plurality of interleaved chirp sequences.
In some implementations, the at least one non-transitory computer-readable medium further stores machine instructions, which when executed by the at least one processor, cause the at least one processor to obtain the received radar signal and perform a first FFT on the received radar signal to obtain the range-sample-antenna data cube. For each particular range bin in the range-sample-antenna data cube, the at least one processor determines whether a characteristic of the range bin satisfies a criterion. In response to the characteristic of the range bin satisfying the criterion, the at least one processor performs a second FFT on a sample-antenna array corresponding to the particular range bin. In response to the characteristic of the range bin not satisfying the criterion, the at least one processor includes the sample-antenna array corresponding to the particular range bin in the subset of range bins.
A non-transitory computer-readable medium stores machine instructions that cause at least one processor to obtain a range-sample-antenna data cube for a received radar signal comprising reflections of a plurality of interleaved chirp sequences off of objects in an environment. The machine instructions cause the at least one processor to generate, for each chirp sequence of the plurality of interleaved chirp sequences, a Hankel matrix based on a subset of range bins of the range-sample-antenna data cube corresponding to the particular chirp sequence, and a block Hankel matrix based on the Hankel matrices corresponding to the plurality of interleaved chirp sequences. The machine instructions cause the at least one processor to perform truncated singular value decomposition on the block Hankel matrix to estimate subspaces and object detection to identify selection matrices in the estimated subspaces.
The machine instructions cause the at least one processor to then calculate least-squares approximations for the selection matrices and the block Hankel matrix to obtain, for each chirp sequence in the plurality of interleaved chirp sequences, a first phase shift matrix θ11 and a second set of phase shift matrices θ1l, l=2, . . . , L. The first phase shift matrix θ11 represents a phase shift over a repetition interval between chirps in a same chirp sequence, and the second phase shift matrices θ1l, l=2, . . . , L represent a phase shift between chirps of a same sequence index in the plurality of interleaved chirp sequences. The machine instructions cause the at least one processor to perform joint diagonalization of the first matrix θ1,1 and the second set of matrices θ1l, l=2, . . . , L and Doppler division multiplexing compensation on the first matrix θ11 and the second set of matrices θ1l, l=2, . . . , L. The machine instructions cause the at least one processor to then resolve ambiguities in determined velocities based on a comparison of the first matrix θ11 and the second set of matrices θ1l, l=2, . . . , L.
In some implementations, a Hankel matrix corresponding to an lth chirp sequence is represented as:
where M′ is an B×(PK) sub-matrix of a Vandermonde matrix M, B is a number greater than a maximum expected number P of objects in a range bin, K is the number of transmitters, θ1l is a diagonal matrix that represents phase shifts introduced by velocities of the objects in the environment between the first chirp sequence and the lth chirp sequence, X is a matrix representing shifted combination of complex amplitudes of the received radar signal reflected off of objects in the environment with object velocity induced phase changes, and Nl is a noise matrix for the lth chirp sequence.
In some implementations, a number of possible selection matrix pairs is represented as two time a number G, where G is represented as:
where “!” indicates the factorial of a number. In some implementations, the plurality of interleaved chirp sequences includes a number L of interleaved chirp sequences. The least-squares approximation for an lth chirp sequence is represented as:
where Ψ11 represents a least-squares model for the first matrix θ11, Ψ1l represents a least-squares model for the second set of matrices θ1l, l=2, . . . , L, and T is a non-singular matrix that jointly diagonalizes Ψ11 and Ψ1l. The matrix T has dimensions (PK)×(PK), where P is an expected maximum number of objects in a range bin and K is a number of transmitters that transmitted the plurality of interleaved chirp sequences.
In some implementations, the Doppler division multiplexing compensation for the first matrix θ11 causes a phase shift arg(θ11,p) for a particular object p in a number P of objects in the environment over the repetition interval between chirps in the same chirp sequence to be represented as:
where K is a number of transmitters that transmitted the plurality of interleaved chirp sequences. In some implementations, the Doppler division multiplexing for the second phase shift matrices θ1l, l=2, . . . , L causes a second set of phase shifts arg(θ1l,p) for a particular object p in a number P of objects in the environment phase shift between chirps of the same index in the plurality of interleaved chirp sequences to be represented as:
where K is a number of transmitters that transmitted the plurality of interleaved chirp sequences.
In some implementations, the at least one non-transitory computer-readable medium further stores machine instructions, which when executed by the at least one processor, cause the at least one processor to obtain the received radar signal and perform a first FFT on the received radar signal to obtain the range-sample-antenna data cube. For each particular range bin in the range-sample-antenna data cube, the machine instructions cause the at least one processor to determine whether a characteristic of the range bin satisfies a criterion. In response to the characteristic of the range bin satisfying the criterion, the machine instructions cause the at least one processor to perform a second FFT on a sample-antenna array corresponding to the particular range bin. In response to the characteristic of the range bin not satisfying the criterion, the machine instructions cause the at least one processor to include the sample-antenna array corresponding to the particular range bin in the subset of range bins.
A method includes obtaining a range-sample-antenna data cube for a received radar signal comprising reflections of a plurality of interleaved chirp sequences off of objects in an environment. For each chirp sequence of the plurality of interleaved chirp sequences, a Hankel matrix is generated based on a subset of range bins of the range-sample-antenna data cube corresponding to the particular chirp sequence, and a block Hankel matrix is generated based on the Hankel matrices corresponding to the plurality of interleaved chirp sequences. Truncated singular value decomposition is performed on the block Hankel matrix to estimate subspaces, and object detection is performed to identify selection matrices in the estimated subspaces.
Least-squares approximations are calculated for the selection matrices and the block Hankel matrix to obtain, for each chirp sequence in the plurality of interleaved chirp sequences, a first phase shift matrix θ11 and a second set of phase shift matrices θ1l, l=2, . . . , L. The first phase shift matrix θ11 represents a phase shift over a repetition interval between chirps in a same chirp sequence, and the second phase shift matrices θ1l, l=2, . . . , L represent a phase shift between chirps of a same sequence index in the plurality of interleaved chirp sequences. Joint diagonalization of the first matrix θ1,1 and the second set of matrices θ1l, l=2, . . . , L is performed, and Doppler division multiplexing compensation is performed on the first matrix θ11 and the second set of matrices θ1l, l=2, . . . , L. Ambiguities in determined velocities are resolved based on a comparison of the first matrix θ11 and the second set of matrices θ1l, l=2, . . . , L.
In some implementations, a Hankel matrix corresponding to an lth chirp sequence is represented as:
where M′ is an B×(PK) sub-matrix of a Vandermonde matrix M, B is a number greater than a maximum expected number P of objects in a range bin, K is the number of transmitters, θ1l is a diagonal matrix that represents phase shifts introduced by velocities of the objects in the environment between the first chirp sequence and the lth chirp sequence, X is a matrix representing shifted combination of complex amplitudes of the received radar signal reflected off of objects in the environment with object velocity induced phase changes, and Nl is a noise matrix for the lth chirp sequence.
In some implementations, a number of possible selection matrix pairs is represented as two time a number G, where G is represented as:
where “!” indicates the factorial of a number. In some implementations, the plurality of interleaved chirp sequences includes a number L of interleaved chirp sequences. The least-squares approximation for an lth chirp sequence is represented as:
where Ψ11 represents a least-squares model for the first matrix θ11, Ψ1l represents a least-squares model for the second set of matrices θ1l, l=2, . . . , L, and T is a non-singular matrix that jointly diagonalizes Ψ11 and Ψ1l. The matrix T has dimensions (PK)×(PK), where P is an expected maximum number of objects in a range bin and K is a number of transmitters that transmitted the plurality of interleaved chirp sequences.
In some implementations, the Doppler division multiplexing compensation for the first matrix θ11 causes a phase shift arg(θ11,p) for a particular object p in a number P of objects in the environment over the repetition interval between chirps in the same chirp sequence to be represented as:
where K is a number of transmitters that transmitted the plurality of interleaved chirp sequences. In some implementations, the Doppler division multiplexing for the second phase shift matrices θ1l, l=2, . . . , L causes a second set of phase shifts arg(θ1l,p) for a particular object p in a number P of objects in the environment phase shift between chirps of the same index in the plurality of interleaved chirp sequences to be represented as:
where K is a number of transmitters that transmitted the plurality of interleaved chirp sequences.
In some implementations, the method also includes obtaining the received radar signal and performing a first FFT on the received radar signal to obtain the range-sample-antenna data cube. For each particular range bin in the range-sample-antenna data cube, it is determined whether a characteristic of the range bin satisfies a criterion. In response to the characteristic of the range bin satisfying the criterion, a second FFT is performed on a sample-antenna array corresponding to the particular range bin. In response to the characteristic of the range bin not satisfying the criterion, the sample-antenna array corresponding to the particular range bin is included in the subset of range bins.