Phase Unwrapping of IQ data

Started by vishnuanayady 6 months ago12 replieslatest reply 5 months ago192 views

I am doing radar Sensor signal processing.

The radar sensor gives iq data corresponding to the range(sweeps)

I want to detect micro motion so that phas analysis is used.

Sweep is the distance measurement range. one sweep consist of 259 data points

Each sweep is noise- reducing lowpass filtered using 

  y(s) = alpha * y(s-1) + (1 - alpha)* x(s)

alpha is the smoothing factor (alpha_iq = 0.535261)

y(s) is the ouput sweep and x(s) is the input sweep(output data sample/signal from Radar Sensor).

To extract the Phase, Unwrapping of the phase of the IQ samples


θ[s] is the unwrapped phase of a sweep. αθ = 0.995012, is a high pass filter to remove any build up of phase over time, L is the number of fast time samples, s is sweep index, d is range index,  is the phase of complex number, and y∗D is the complex conjugate of yD.yD(s,d) is the low pass filtered sweep

The problem I am facing is that, for detecting moving object, static object and non-moving object 

This unwrapping of phase is using. But I cannot differentiate the unwrapped phase of these 3 objects.

For non-moving objects it shows phase change. How can we differentiate the unwrapped phase of these 3 objects?.

I am attaching the plot of 100 phase array of these 3 cases



Fig1. Human Presence(Chest Movement) Fig2: Non-Moving Object, Fig3: Static Object,

Anyone please help me to solve this issue or give me another solution to extract the phase so that we can differentiate these cases

[ - ]
Reply by jbrowerSeptember 27, 2022

Vishnu Anayady-

Can you show the plots with vertical axis gridmarks in multiples of pi/2 radians ?  It would make it easier to give phase unwrapping algorithm suggestions.


[ - ]
Reply by vishnuanayadySeptember 27, 2022

The vertical axis  shown in the plot is in radian.

because I used np.angle() function to obtain the phase, which is in radian

np.angle(np.mean (yd(s) * np.conjugate(yd(s-1)))

[ - ]
Reply by jbrowerSeptember 27, 2022


Then rescale. The point is that in order to know whether your phase unwrapping is working and/or can be improved, we need to see what happens exactly at pi/2 intervals. With your current graph, that's hard to see and as a volunteer willing to spend a bit of time to help you I'm not willing to graph for you.

"Ask and you shall receive" ... but you when you ask it has to be clear.


[ - ]
Reply by vishnuanayadySeptember 28, 2022

Dear Jeff

I am sorry for my fault. The data used to plot the above figures are lost.

Now I collected 3 new set of data , (i) Non-Moving Object

(ii) Human chest movement (ii) a moving objects. The unwrapped phase of these 3 objects are shown below





[ - ]
Reply by jbrowerSeptember 29, 2022


A couple of quick questions ...

1) Your first plot (HumanChestMovmntUnwrappedPhase.jpeg) is actually wrapped phase, correct ?  It looks like phase wraps occur consistently at pi/2 transition points

2) Can you send me the time-series file ?  A wav file format would be good. In that case I can try some algorithms on it, for example Hypersignal has a phase unwrap algorithm that is tolerant to noise around the wrap points.



[ - ]
Reply by vishnuanayadySeptember 29, 2022

Dear Jeff,

Here I am attaching the time series file. i.e., 100 sweeps.

Each sweeps consists of 259 data points



[ - ]
Reply by jbrowerSeptember 29, 2022


I took a look at the first .h file, it looks like freq domain data (real and imaginary components). Can you clarify ? What I'm expecting is the original time series data, after data acquisition and subsequent filtering or other processing, up to the point where the next step would be FFT.


[ - ]
Reply by vishnuanayadySeptember 30, 2022

Dear Jeff

Yes its the I&Q data from the Radar Sensor for each sweep. 

This data is given to the  noise - reducing lowpass filter. 

Then it is used in the equation for phase unwrapping.

In these 2 steps we are processing with the I&Q data.

The data from the phase unwrapping is used to plot these graphs

I am not performing FFT .

Please tell me that which data you need ?

[ - ]
Reply by jbrowerSeptember 30, 2022


> Yes its the I&Q data from the Radar Sensor for each sweep.

Ok got it, thanks. I'll be able to spend some time on this over the weekend. Is the data in polar coordinate form ? It looks like it. Also what is the radar sensor part number ? I want to understand its sweep characteristics and resolution.


[ - ]
Reply by vishnuanayadyOctober 1, 2022

Dear Jeff

Thank you for your reply.

The I&Q data is in a+ib form. each data point is z = a+ib

polar coordinate r = abs(Z), phase ph = arg(Z)

Radar sensor is Acconeer Radar Sensor(XM112). 

The detected range is 30cm to 80 cm  from the sensor and the step length(range resolution) is 2mm

Radar sweep frequency (update rate )is 80Hz

Thank You


[ - ]
Reply by webblogs1October 10, 2022
coin stock

became a searcher,wanting to discover who i was and what made me precise. my view of myself turned into changing. i desired a stable base to start from. i commenced to resist3 stress to behave in ways that i didn’t like any greater,and i used to be delighted by who i in reality become. i got here to feel a good deal extra sure that no one can ever take my region.