Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Signal processing part #28

Open
shawrby opened this issue Aug 5, 2022 · 4 comments
Open

Signal processing part #28

shawrby opened this issue Aug 5, 2022 · 4 comments

Comments

@shawrby
Copy link

shawrby commented Aug 5, 2022

Thank you very much for the good research paper!. I'm analyzing the signal processing part. I have several questions.

  1. What AoA technique did you use?
  2. The 'ID information for tracking #3- Need to find TX0 position to rebuild the MIMO spectrum in the correct order' part is not well understood. Can you tell me how? Or can you share some reference material?

Thanks in advance for your answer.

@jrebut
Copy link
Contributor

jrebut commented Aug 5, 2022

Hi,

1- We used cross correlation with a calibration matrix to recover both azimuth and elevation angle. It stores the MIMO spectrum for each azimuth/elevation angle --> CalibrationTable.npy

2- All the Rx and Tx emit and received at the same time. So, in order to build each Rx/Tx virtual antenna, we apply a phase shift on the Tx signal, the phase shift because a DOppler shift after the 2nd FFT. Therefore, if you look to a power spectrum, you will see for one objects a range R, 12 spots on the row R with different Doppler values. All these spots refer to the same object, but they have a doppler shift of 16 bin so that you can rebuild the MIMO spectrum. The first Tx0 is the spot that has another spot on its right separated by 16 bins, and another spot on its left seperated by 256-12*16

hope it helps

@shawrby
Copy link
Author

shawrby commented Aug 6, 2022

@jrebut
Thanks for the detailed reply!
I have additional questions about your answer.

  1. In the case of AoA, what technique did you apply? (Capon beamforming, MUSIC etc.)

  2. Looking at the RD spectrum figure of the paper, is the ground truth (GT) the position of Tx0?
    then is the 'right' you mentioned the (+)doppler axis right? ( = 'left' is (-)doppler axis)
    image

  3. In the '__build_radar_frame' function of rpl.py,
    Why does frame3 data come first?
    return np.concatenate([ frame3 ,frame0,frame1,frame2],axis=2)

  4. Could you share carrier frequency(fc) and bandwidth?

Thanks again for your excellent paper and contribution.

@qqqGpe
Copy link

qqqGpe commented Jan 11, 2023

@jrebut @shawrby
Thank you for the discussion! It's very helpful.
But, I also have the same questions as @shawrby.
Have you ever figured out the reason for the sequence of the frame3?

Besides, I have three more questions:

  1. I notice that the received chirps of each Rx are 256 for each loop in the dataset. However, in my view, since there are only 12 Tx antennas and 16 chirps for each loop, the received chirps for each Rx should be 16 * 12 = 192. Maybe, 256 received chirps are used to determine the Tx0 Doppler bins, but I am not sure, so could you give more details, if possible?

  2. In the '__get_PCL' function of rpl.py,
    After finding the last spots on RD spectrum, the code concatenates the Doppler bin sequences like this

        for doppler_bin in DopplerBin_candidates:
            DopplerBinSeq = np.remainder(doppler_bin + self.dividend_constant_arr, self.numChirps)
            DopplerBinSeq = np.concatenate([[DopplerBinSeq[0]],DopplerBinSeq[5:]]).astype('int')
            doppler_indexes.append(DopplerBinSeq)

Why does the code put the last bin in the first place?

  1. What does the self.window in rpl.py stands for? or what is the meaning of the self.AoA_mat['H'][0]?

Thanks in advance for the answer.

@haomingHu-dd
Copy link

Hi,

1- We used cross correlation with a calibration matrix to recover both azimuth and elevation angle. It stores the MIMO spectrum for each azimuth/elevation angle --> CalibrationTable.npy

2- All the Rx and Tx emit and received at the same time. So, in order to build each Rx/Tx virtual antenna, we apply a phase shift on the Tx signal, the phase shift because a DOppler shift after the 2nd FFT. Therefore, if you look to a power spectrum, you will see for one objects a range R, 12 spots on the row R with different Doppler values. All these spots refer to the same object, but they have a doppler shift of 16 bin so that you can rebuild the MIMO spectrum. The first Tx0 is the spot that has another spot on its right separated by 16 bins, and another spot on its left seperated by 256-12*16

hope it helps

May I ask if you are using TDMA-MIMO mode or DDMA-MIMO mode, as far as I know, only in DDMA mode all the transmitting antennas transmit signals at the same time.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants