# 2D Music + Spatial smoothing [FMCW MIMO radar processing]

Status
Not open for further replies.

#### Luca_Romano

##### Junior Member level 2
Hi everyone,
I'm using a 2D Music algorithm for the estimation of Range-Azimuth info in a ULA FMCW MIMO radar.
The algorithm procedure is pretty simple (see "Belfiori F., Application of 2D MUSIC Algorithm to Range-Azimuth FMCW Radar data" or " Manokhin G., MUSIC-based algorithm for range-azimuth FMCW radar data processing without estimating number of targets"). I have some doubt with regard the application of the 2D FB spatial smoothing in order to decorrelate the covariance matrix of the data; I'm wondering if I do some error in the following code section (in the way I order the x_win_new vector):
Code:
x= DataV'; %Data collected by the ULA (31 Spatial samples-31Antennas), 501 time samples
N = size(x,1); % Number of antennas
M = size(x,2); % Number of samples in fast-time dimension

% window dimension for the smoothing dim[m1xm2]
m1 = 25;
m2 = 300;
p1 = N-m1+1; %positions in the spatial dimension
p2 = M-m2+1; %positions in the time dimension

N_submat = p1*p2; %number of all the possible scan
M_tot = m1*m2;

ind_tot=1;
for p1_ind = 1:p1
for p2_ind = 1:p2
x_win_new(:,ind_tot) = reshape (x(p1_ind:m1+(p1_ind-1),p2_ind:m2+(p2_ind-1)),[1,M_tot])';
ind_tot=ind_tot+1;
end
end

X_win_cor = x_win_new*x_win_new';
X_win_cor_conj = conj(X_win_cor);
J= fliplr(eye(M_tot)); 	%transition matrix
C=(1/2*N_submat)*(X_win_cor + J*X_win_cor_conj*J);  %data smoothed covariance matrix (forward+backward)
so in my case I'm scanning the full 2D [NxM] matrix in this way:
Code:
x x x .      . x x x      . . . .      . . . .
x x x .      . x x x      x x x .      . x x x
x x x .      . x x x      x x x .      . x x x
. . . .      . . . .      x x x .      . x x x
If I select m1=M and m2=N (so no spatial smoothing, only forward/backward averaging) I get good results as shown in the attached image.

Best regards,

#### Luca_Romano

##### Junior Member level 2
A few more lines to make this more clear:

My main questions are:
1) Is it appropriate the use of 2D spatial smoothing to the data collected by an ULA?
2) If yes, which is the right way to organise the subarray? Which directions the subarray has to scan the full data matrix?

In the attached image[the music plot are theta/range type; θ from -20° to 20°; the FFT plot are in cartesian coordinates].

As you can see in the second music plot (where I used m1=25; m2=300) something went wrong; it seems that the data smoothed covariance matrix has been not build correctly.
Any suggestions?
Thanks,

#### Georgy.Moshkin

##### Full Member level 4
To obtain better radar image quality:
Code:
wnd=hann(ptsNum);
data=data.*wnd;
data=[zeros(pad,1);data;zeros(pad,1)];
2) Used simplest possible 1D FFT signal processing
3) Added peak finding and thresholding
4) Scaled data (20 points per meter)
5) I build radar image using 2D histogram style approach. For each reflector accumulates in 2D map using pretty big 15x15 Gaussian kernel (R=7) point. If more points per meter is used, Gaussian kernel radius must be increased.
Code:
 if  ((xx>0) && (yy>0) && (dist>1*distScale))
for dx=-kernelR:+kernelR
for dy=-kernelR:+kernelR
end;
end;
To be honest I do not have experience with "MUSIC" algorithm. But as you may see on image below, even simple FFT with image processing approach gives pretty good result. I think this result may be improved further with Luca's knowledge and experience with "MUSIC" algorithm. I think that better resolution may be achieved , and sharper image of strong reflectors in the soil. Current result of simple monopulse-style processing:

#### f0urteen

##### Newbie level 1
Hi there, I am also working on the 2D MUSIC algorithm and based on the same paper but got the image wrong. Can you share your code? Much appreciated!

Status
Not open for further replies.