(轉)基於毫米波雷達的艙內乘員檢測原理
https://zhuanlan.zhihu.com/p/272797271?utm_source=wechat_session
1.簡介
隨著家用車的普及,汽車走進越來越多的家庭,其中兒童被困車內的事故時有發生,甚至造成死亡,下圖是由於兒童被困車內致死事故的統計。
兒童被困車內致死人數
為此,ENCAP Roadmap 2025提出,將兒童艙內檢測技術作為汽車的安全性評定的加分項,後續將有法規逐步實施。
ENCAP Roadmap 2025
隨著安全意識的提高,不少車型開始搭載艙內乘員監測系統。通常採用毫米波雷達的方案,將其佈置與B柱上部或者頂棚,檢測艙內的生命體。
毫米波雷達方案優勢對比
本人從事相關領域,以TI的Demo 為例,將其原理及實現進行簡單的介紹。
2.艙內檢測原理
艙內檢測的原理主要包括以下步驟:
- 前端(Front end):依據天線和波形等配置,實現毫米波雷達FMCW的訊號傳送和接收;
- 模數轉換(ADC):對中頻訊號進行取樣,並將 ADC輸出樣本緩衝在ADC輸出緩衝器中,以供DSP部分訪問;
- DSP :艙內檢測的演算法主要在DSP中執行,該演算法主要包括Rang FFT、Clutter Removal、Heatmap Generation、Feature Extraction、Zone Detect 等步驟,下文中將詳細介紹
- ARM :該ARM MCU可執行應用程式程式碼,包括進一步的訊號處理操作和其他更高級別的功能。
艙內乘員檢測的基本原理圖
2.1 距離FFT Range Processing
該部分主要將ADC取樣後的中頻訊號資料進行1維加窗和1D FFT,獲得目標的距離資訊。同時,該過程在有效線性調頻時間和幀結束之間的空閒時間(“幀間”週期)內進行。
2.2 去除雜波 Clutter Removal
在雜亂的環境中,尤其是在室內,檢測具有較小RCS(雷達橫截面)的物體(例如行人和生命形式的物體)具有較大的難度。 一些具有較大RCS的雜波(例如建築結構和傢俱)可能會主導接收到的訊號。 因此,具有小RCS的物體可能在雜波的強烈干擾下被掩蓋,並且變得難以檢測。當雷達感測器處於靜止狀態時,雜波和所有靜止物體的零多普勒頻率將被用於改善其餘雷達訊號處理的效能。
2.3 生成熱力圖 Range-Azimuth Heatmap Generation
每幀使用去除雜波的1D FFT輸出資料,結合基於協方差的高解析度測角方法DOA,生成“距離-方位角”的熱力圖。為避免數值不穩定性問題,沿協方差估計矩陣的對角線新增一個較小的修正量。“熱力圖”實際上是一個速度圖,其幅值越大,表示非靜態物件的運動越多。
DoA角度估計
- :表示經過Range Processing和Clutter Removal兩個步驟後的輸出,分別表示range bin index, chirp index, virtual receive antenna index。
對於第個range bin,空間協方差的估計值為:
其中:為第n個range bin和第k個chirp的空間向量,它是由資料立方體通過在虛擬天線上堆疊樣本而形成的,N_c表示天線個數。
例如:
假設:
- 為了減少計算量,可以使用小於的值來估計空間協方差。
- 當入射雷達射頻(RF)訊號來自方位角時,轉向矢量表示每個虛擬接收天線上的相位差。
對於線性一維虛擬接收機的天線陣列,定義方位角的轉向向量為:
其中,d是歸一化後的天線間距。
第n個rangebin的角度譜可由下式計算:
相應的波束成形向量為:
將每個rangebin的DoA頻譜表示為矩陣形式,其中第n行表示為第n個rangebin的DoA頻譜,稱為“距離-方位熱力圖”
——————————————————————————————————————
Diagonally-Loading Method
在某些情況下,協方差估計是奇異的或接近奇異的,這可能會在進行矩陣求逆時引起數值穩定性問題。
通常沿協方差估計矩陣的對角線新增一個修正量來避免數值穩定性問題
可以使用如下的噪聲方差估計來確定對角因子:
對於常數,其中為協方差估計矩陣對角項的平均值。
2.4 熱力圖調整 Range-Azimuth heatmap conditioning
為去除雜波和DoA問題,需要對熱圖進行進一步處理,以抑制ARC,並平滑因雜波去除中幀變化而導致的掉幀。
Arc Removal
for each range row:
if (range_row_min_val > Nr)
row_range = range_row_max_val - range_row_min_val
scale_factor = 1.0 + ((range_row_min_val - Nr) / row_range
for each cell in the range row:
//Translate the row to zero and rescale
rescaled_val = (cell - range_row_min_val) * scale_factor
//Translate the scaled row to the noise floor
cell = rescaled_val + Nr
Heatmap Smoothing
for each cell in the heatmap:
cell_thresh = previous_cell * threshold
if (current_cell < cell_thresh)
current_cell = cell_thresh
對熱力圖進行去底噪、平滑之後,即可進行下一步的操作。
2.5 特徵提取 Feature Extraction
Notations
-: 位置的個數;
-: 第個range bin所對應的距離值,;
-:第個方位角索引對應的角度值,;
-:第幀處的熱力圖矩陣;
——————————————————————————————————————
定義區域 Definition of Zones
在範圍和方位角域中定義區域,其取值與雷達感測器的安裝位置和姿態有關。可將每個乘客座椅的位置定義為目標區域。其定義方式如下:
-是第個區域(Range-Azimuth Heatmap中的矩形邊界)內所距離-方位角網格的集合,其由四個引數定義。
——————————————————————————————————————
特徵 Features
為區分不同目標區域是否有乘員,需要利用不同的區域特徵進行判斷。通常目標區域是有乘員對於該區域的功率能量影響較大。
平均功率能量 the average zone-power ,表徵第幀的某個區域能量,對於第個區域,第幀時,該區域的平均能量為:
通過平均功率能量這一指標可推匯出三個具有代表意義的特徵:移動平均功率能量、平均功率比、區域功率相關係數。
- 移動平均功率能量Moving-averaged zone power ,表徵前幀的平均功率,對於第個區域,第幀時,其移動平均功率能量為:
其中,,是移動平均值窗的長度。
2.平均功率比 Moving-averaged power ratio ,表徵某個區域能量佔總能量的比值。對於第個區域,第幀時,其平均功率比為:
3.區域功率相關係數 Correlation coefficient of zone power,表示不同目標區域間的相關性,對於區域和區域,其相關係數為:
對於三個目標位置的檢測場景,即時,其特徵向量可表示為:
2.6 區域檢測演算法 Zone Detection Algorithms
對於個目標區域,其可能的乘員分佈有種,將特徵向量和離線生成的訓練係數相乘,將得到一系列的決策結果,其中“1”代表有人,“0”表示空。
對於,乘員分佈的所有狀態如下:
對於每種可能的乘員分佈狀態,定義維的決策權值向量:
其中,是特徵向量的元素個數。
***
目標空間上有乘員的概率定義為:
其中:,
為非線性函式,邏輯迴歸函式,。
***
按照下述估計目標空間上是有有乘員:
因為為增函式,上式可改寫為:
***
進一步,區域檢測可通過矩陣向量乘法實現:
將矩陣寫為的矩陣:
因此,可通過下式得到檢測結果:
其中:為做分類的非線性函式,是返回最大值的索引,是將十進位制轉化為二進位制。
***
當時,其索引與二進位制關係如下:
index | |
---|---|
0 | (0,0,0) |
1 | (1,0,0) |
2 | (0,1,0) |
3 | (1,1,0) |
4 | (0,0,1) |
5 | (1,0,1) |
6 | (0,1,1) |
7 | (1,1,1) |
3 總結
通過上述操作即可實現艙內乘員的檢測,首先通過1DFFT及DOA生成“距離-方位”的熱力圖,在得到熱力圖後,提取其特徵,並採集資料進行離線的訓練優化,得到權重矩陣,依據權重矩陣及區域檢測演算法,得到乘員分佈情況。
上述參考TI的官方指南,如有需要可私信
參考視訊:車內乘員檢測TI:https://edu.21ic.com/video/3813