Motion Detection via Communication Signals

Overview

This project was completed for the Signals and Systems lab course. It explored Passive Coherent Location (PCL) — using ambient communication signals (cellular base station transmissions) as a radar illuminator to detect and characterize human motion, without emitting any dedicated radar signal. The approach leverages Doppler shift analysis and cross-correlation of reference and surveillance signals to estimate target velocity and range.

Doppler frequency–time heatmap for motion detection

Results

  • Successfully recovered Doppler frequency shift vs. time heatmaps from 20 field data files, clearly showing the presence and motion pattern of a human target.
  • Estimated target velocity using the ambiguity function peak at each time window, with the geometry of the base station-target-receiver triangle used to resolve the projection angle.
  • Extended analysis to micro-Doppler effects as a bonus investigation.

Technical Details

Signal Model:

  • Reference signal: y_ref(t) = α·x(t − τ_r) (direct path from base station)
  • Surveillance signal: y_sur(t) = β·x(t − τ_s)·e^(j2πf_D t) (reflected off the target)
  • Goal: estimate Δτ = |τ_r − τ_s| (range difference) and f_D (Doppler frequency shift)

Processing Pipeline (implemented in MATLAB):

  1. Load data: Read I/Q baseband samples from 20 data files (0.5 s segments, 25 MHz sample rate).
  2. Digital Down Convert (DDC): Frequency-shifted the 2110–2130 MHz band to baseband to isolate the signal of interest.
  3. Low-Pass Filtering: Butterworth LPF (order 10, cutoff 0.88×10⁷ Hz) to reject the adjacent 2130–2135 MHz band and reduce sample rate.
  4. Ambiguity Function:
    $$\text{Cor}(\tau, f_D) = \sum_{n=0}^{N-1} y_{\text{sur}}[nT_s] \cdot y_{\text{ref}}^*[nT_s - \tau] \cdot e^{-j2\pi f_D n T_s}$$
    • Swept over 6 range bins (0–5 samples) and 41 Doppler bins (−40 to +40 Hz).
    • Peak of the ambiguity function gives the best-fit (Δτ, f_D) estimate.
  5. Velocity estimation: Computed from v = λ·f_D / (2·cos(β/2)), where β was determined from the known geometry (base station at 247 m).
  6. Full heatmap: Stacked results across all 20 files to produce a Doppler frequency vs. time image showing the target’s motion trajectory.

Challenges

  • Cross-correlation computation: Naïve triple-loop implementation in MATLAB was extremely slow; required vectorization and careful indexing of delayed reference samples.
  • Frequency ambiguity: Multiple signal components in the raw spectrum made DDC center frequency selection critical; verified by inspecting spectrograms before and after processing.
  • Phase coherence: Small timing offsets between reference and surveillance channels had to be absorbed by the ambiguity function grid resolution.

Reflection and Insights

This project provided a concrete application of core signals-and-systems concepts — Fourier analysis, filtering, convolution/correlation, and Doppler physics — in a real-world sensing context. The ambiguity function framework elegantly unifies range and velocity estimation into a single 2D search problem, and the MATLAB implementation made the connection between the mathematical formulation and actual computational steps very direct.

The micro-Doppler extension raised interesting questions about how fine-grained body motion (arm swing, breathing) modulates the main Doppler return — relevant to applications like medical monitoring and security sensing.

Team and Role

  • Team: Two-person team.
  • My Role: Led signal processing pipeline implementation (DDC, filtering, ambiguity function); collaborated on heatmap generation and analysis.

Motion Detection via Communication Signals

https://liferli.com/2022/12/20/projects/motion-detection/

Author

Zhiling Li

Posted on

2022-12-20

Updated on

2026-02-27

Licensed under