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,空間協方差的估計值為:
![[公式]](/image/aHR0cHM6Ly93d3cuemhpaHUuY29tL2VxdWF0aW9uP3RleD0lNUNoYXQlN0JSXyU3Qm4lN0QlN0QlM0QlNUNmcmFjJTdCMSU3RCU3Qk5fYyU3RCU1Q3N1bV8lN0JrJTNEMSU3RCU1RSU3Qk5fYyU3RFhfJTdCbiUyQ2slN0RYXyU3Qm4lMkNrJTdEJTVFJTdCSCU3RA==.png)
其中:
為第n個range bin和第k個chirp的空間向量,它是由數據立方體通過在虛擬天線上堆疊樣本而形成的,N_c表示天線個數。
例如:
假設:![[公式]](/image/aHR0cHM6Ly93d3cuemhpaHUuY29tL2VxdWF0aW9uP3RleD1YXyU3Qm4lMkNrJTdEJTNEJTVCWF8lN0JuJTJDayUyQzElN0QlMkNYXyU3Qm4lMkNrJTJDMiU3RCUyQy4uLiUyQ1hfJTdCbiUyQ2slMkNOXyU3QmElN0QlN0QlNUQlNUVU.png)
- 為了減少計算量,可以使用小於
的值
來估計空間協方差。 - 當入射雷達射頻(RF)信號來自方位角
時,轉向矢量
表示每個虛擬接收天線上的相位差。
對於線性一維虛擬接收機的天線陣列,定義方位角
的轉向矢量
為:
![[公式]](/image/aHR0cHM6Ly93d3cuemhpaHUuY29tL2VxdWF0aW9uP3RleD0lNUNhbHBoYSUyOCU1Q3RoZXRhJTI5JTNEJTVCMSUyQ2V4cCUyOGoyJTVDcGkrZHNpbiUyOCU1Q3RoZXRhJTI5JTI5JTJDLi4uJTJDZXhwJTI4ajIlNUNwaSsrKyslMjhOX2EtMSUyOWRzaW4lMjglNUN0aGV0YSUyOSUyOSU1RA==.png)
其中,d是歸一化后的天線間距。
第n個rangebin的角度譜可由下式計算:
![[公式]](/image/aHR0cHM6Ly93d3cuemhpaHUuY29tL2VxdWF0aW9uP3RleD1QXyU3Qm4lN0QlMjglNUN0aGV0YSUyOSUzRCU1Q2ZyYWMlN0IxJTdEJTdCJTVDYWxwaGElMjglNUN0aGV0YSUyOSU1RUglNUNoYXQlN0JSXyU3Qm4lN0QlN0QlNUUlN0ItMSU3RCU1Q2FscGhhJTI4JTVDdGhldGElMjklN0Q=.png)
相應的波束成形向量為:
![[公式]](/image/aHR0cHM6Ly93d3cuemhpaHUuY29tL2VxdWF0aW9uP3RleD1XXyU3Qm4lN0QlMjglNUN0aGV0YSUyOSUzRCU1Q2ZyYWMlN0IlNUNoYXQlN0JSXyU3Qm4lN0QlN0QlNUUlN0ItMSU3RCU1Q2FscGhhJTI4JTVDdGhldGElMjklN0QlN0IlNUNhbHBoYSUyOCU1Q3RoZXRhJTI5JTVFSCU1Q2hhdCU3QlJfJTdCbiU3RCU3RCU1RSU3Qi0xJTdEJTVDYWxwaGElMjglNUN0aGV0YSUyOSU3RA==.png)
將每個rangebin的DoA頻譜表示為矩陣形式,其中第n行表示為第n個rangebin的DoA頻譜,稱為“距離-方位熱力圖”
——————————————————————————————————————
Diagonally-Loading Method
在某些情況下,協方差估計是奇異的或接近奇異的,這可能會在進行矩陣求逆時引起數值穩定性問題。
通常沿協方差估計矩陣的對角線添加一個修正量來避免數值穩定性問題
![[公式]](/image/aHR0cHM6Ly93d3cuemhpaHUuY29tL2VxdWF0aW9uP3RleD1QXyU3Qm4lN0QlMjglNUN0aGV0YSUyOSUzRCU1Q2ZyYWMlN0IxJTdEJTdCJTVDYWxwaGElMjglNUN0aGV0YSUyOSU1RUglNUIlNUNoYXQlN0JSXyU3Qm4lN0QlN0QlMkIlNUNhbHBoYV9uSSU1RCU1RSU3Qi0xJTdEJTVDYWxwaGElMjglNUN0aGV0YSUyOSU3RA==.png)
可以使用如下的噪聲方差估計來確定對角因子
:
![[公式]](/image/aHR0cHM6Ly93d3cuemhpaHUuY29tL2VxdWF0aW9uP3RleD0lNUNhbHBoYV9uJTNEJTVDYmV0YSslNUNvdmVybGluZStQXyU3Qm4lN0Q=.png)
對於常數
,其中
為協方差估計矩陣對角項的平均值。
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
在范圍和方位角域中定義區域,其取值與雷達傳感器的安裝位置和姿態有關。可將每個乘客座椅的位置定義為目標區域。其定義方式如下:
![[公式]](/image/aHR0cHM6Ly93d3cuemhpaHUuY29tL2VxdWF0aW9uP3RleD1aX2klM0QlN0IlMjhuJTJDbSUyOSUzQXJfbCU1RWolRTIlODklQTRyX24lM0NyX3UlNUVqJTJDJTVDdGhldGFfbCU1RWklRTIlODklQTQlNUN0aGV0YV9tJTNDJTVDdGhldGFfdSU1RWklN0Q=.png)
-
是第
個區域(Range-Azimuth Heatmap中的矩形邊界)內所距離-方位角網格的集合,其由四個參數
定義。
——————————————————————————————————————
特征 Features
為區分不同目標區域是否有乘員,需要利用不同的區域特征進行判斷。通常目標區域是有乘員對於該區域的功率能量影響較大。
平均功率能量 the average zone-power ,表征第幀的某個區域能量,對於第
個區域,第
幀時,該區域的平均能量為:
![]()
通過平均功率能量這一指標可推導出三個具有代表意義的特征:移動平均功率能量、平均功率比、區域功率相關系數。
- 移動平均功率能量Moving-averaged zone power ,表征前
幀的平均功率,對於第
個區域,第
幀時,其移動平均功率能量為:
![[公式]](/image/aHR0cHM6Ly93d3cuemhpaHUuY29tL2VxdWF0aW9uP3RleD0rJTVDb3ZlcmxpbmUrUV9pJTVCdCU1RCUzRCU1Q2ZyYWMlN0IxJTdEJTdCTCU3RCU1Q3N1bStRXyU3QmklN0QlNUJsJTVE.png)
其中,
,
是移動平均值窗的長度。
2.平均功率比 Moving-averaged power ratio ,表征某個區域能量占總能量的比值。對於第
個區域,第
幀時,其平均功率比為:
![[公式]](/image/aHR0cHM6Ly93d3cuemhpaHUuY29tL2VxdWF0aW9uP3RleD1xX2klNUJ0JTVEJTNEJTVDZnJhYyU3QislNUNvdmVybGluZStRX2klNUJ0JTVEJTdEJTdCJTVDc3VtXyU3QmklM0QxJTdEJTVFJTdCTl96JTdEKyU1Q292ZXJsaW5lK1FfaSU1QnQlNUQlN0Q=.png)
3.區域功率相關系數 Correlation coefficient of zone power,表示不同目標區域間的相關性,對於區域
和區域
,其相關系數為:
![[公式]](/image/aHR0cHM6Ly93d3cuemhpaHUuY29tL2VxdWF0aW9uP3RleD0lNUNyaG9fJTdCaSUyQ2olN0QlNUJ0JTVEJTNEJTVDZnJhYyU3QjElN0QlN0JMLTElN0QrJTVDc3VtXyU3QmwlM0R0LUwlMkIxJTdEJTVFJTdCdCU3RCU1Q2ZyYWMlN0JRX2klNUJsJTVELSU1Q292ZXJsaW5lK1FfaSU1QmwlNUQlN0QlN0IlNUNzaWdtYV9pJTVCdCU1RCU3RA==.png)
對於三個目標位置的檢測場景,即
時,其特征向量可表示為:
![[公式]](/image/aHR0cHM6Ly93d3cuemhpaHUuY29tL2VxdWF0aW9uP3RleD1YJTVCdCU1RCUzRCU1QiU1Q292ZXJsaW5lK1FfMSU1QnQlNUQlMkMlNUNvdmVybGluZStRXzIlNUJ0JTVEJTJDJTVDb3ZlcmxpbmUrUV8zJTVCdCU1RCUyQ3FfMSU1QnQlNUQlMkNxXzIlNUJ0JTVEJTJDcV8zJTVCdCU1RCUyQyU1Q3Job18lN0IxJTJDMiU3RCU1QnQlNUQlMkMlNUNyaG9fJTdCMiUyQzMlN0QlNUJ0JTVEJTJDJTVDcmhvXyU3QjMlMkMxJTdEJTVCdCU1RCU1RA==.png)
2.6 區域檢測算法 Zone Detection Algorithms
對於
個目標區域,其可能的乘員分布有
種,將特征向量和離線生成的訓練系數相乘,將得到一系列的決策結果,其中“1”代表有人,“0”表示空。
對於
,乘員分布的所有狀態如下:
![[公式]](/image/aHR0cHM6Ly93d3cuemhpaHUuY29tL2VxdWF0aW9uP3RleD0lMjhPXzElNUJ0JTVEJTJDT18yJTVCdCU1RCUyQ09fMyU1QnQlNUQlMjklNUNpbiU3QiUyODAlMkMwJTJDMCUyOSUyQyUyODElMkMwJTJDMCUyOSUyQyUyODAlMkMxJTJDMCUyOSUyQyUyODAlMkMwJTJDMSUyOSUyQyUyODElMkMxJTJDMCUyOSUyQyUyODElMkMwJTJDMSUyOSUyQyUyODAlMkMxJTJDMSUyOSUyQyUyODElMkMxJTJDMSUyOSU3RA==.png)
對於每種可能的乘員分布狀態,定義
維的決策權值向量:
![[公式]](/image/aHR0cHM6Ly93d3cuemhpaHUuY29tL2VxdWF0aW9uP3RleD1XXyU3QiUyOG9fMSUyQ29fMiUyQy4uLiUyQ29fJTdCTl96JTdEJTI5JTdEJTNEJTVCV18lN0IlMjhvXzElMkNvXzIlMkMuLi4lMkNvXyU3Qk5feiU3RCUyOSU3RCU1RTAlMkNXXyU3QiUyOG9fMSUyQ29fMiUyQy4uLiUyQ29fJTdCTl96JTdEJTI5JTdEJTVFMSUyQy4uLldfJTdCJTI4b18xJTJDb18yJTJDLi4uJTJDb18lN0JOX3olN0QlMjklN0QlNUVOJTVEJTVFVA==.png)
其中,
是特征向量
的元素個數。
***
目標空間上有乘員的概率定義為:
![[公式]](/image/aHR0cHM6Ly93d3cuemhpaHUuY29tL2VxdWF0aW9uP3RleD0lNUNoYXQrcF8lN0IlMjhvXzElMkNvXzIlMkMuLi4lMkNvXyU3Qk5feiU3RCUyOSU3RCU1QnQlNUQlM0RnJTI4V18lN0IlMjhvXzElMkNvXzIlMkMuLi4lMkNvXyU3Qk5feiU3RCVFRiVCQyU4OSU3RCU1RSU3QiU1Q3RpbGRlK3glNUJ0JTVEJTdEJTI5JTNEZyU1Q3N1bV8lN0JpJTNEMCU3RCU1RSU3Qk4lN0RXXyU3QiUyOG9fMSUyQ29fMiUyQy4uLiUyQ29fJTdCTl96JTdEJUVGJUJDJTg5JTdEaSU1RSU3QnglNUJ0JTVEJTdE.png)
其中:
,
為非線性函數,邏輯回歸函數,
。
***
按照下述估計目標空間上是有有乘員:
![[公式]](/image/aHR0cHM6Ly93d3cuemhpaHUuY29tL2VxdWF0aW9uP3RleD0lMjglNUNoYXQrT18xJTVCdCU1RCUyQyU1Q2hhdCtPXzIlNUJ0JTVEJTJDLi4uJTJDJTVDaGF0K09fJTdCTl96JTdEJTVCdCU1RCUyOSUzRGFyZ18lN0IlRUYlQkMlODhPXzElMkNPXzIlMkMuLiUyQzBfJTdCTl9aJTdEJUVGJUJDJTg5JTdEJTVDaW4lN0IlN0IwJTJDMSU3RCU1RSU3Qk5feiU3RCU3RG1heCU1Q2hhdCtwXyU3QiUyOG9fMSUyQ29fMiUyQy4uLiUyQ29fJTdCTl96JTdEJTI5JTdEJTVCdCU1RA==.png)
因為
為增函數,上式可改寫為:
![[公式]](/image/aHR0cHM6Ly93d3cuemhpaHUuY29tL2VxdWF0aW9uP3RleD0lMjglNUNoYXQrT18xJTVCdCU1RCUyQyU1Q2hhdCtPXzIlNUJ0JTVEJTJDLi4uJTJDJTVDaGF0K09fJTdCTl96JTdEJTVCdCU1RCUyOSUzRGFyZ18lN0IlRUYlQkMlODhPXzElMkNPXzIlMkMuLiUyQzBfJTdCTl9aJTdEJUVGJUJDJTg5JTVDaW4lN0IlN0IwJTJDMSU3RCU1RSU3Qk5feiU3RCU3RCU3RG1heFdfJTdCJTI4b18xJTJDb18yJTJDLi4uJTJDb18lN0JOX3olN0QlRUYlQkMlODklN0QlNUUlN0JUJTdEJTVDdGlsZGUrWCU1QnQlNUQ=.png)
***
進一步,區域檢測可通過矩陣矢量乘法實現:
將矩陣
寫為
的矩陣
:
![[公式]](/image/aHR0cHM6Ly93d3cuemhpaHUuY29tL2VxdWF0aW9uP3RleD1XJTNEJTVCJTVDYmVnaW4lN0JtYXRyaXglN0RXXyU3QjAlMkMwJTJDLi4uJTJDMCU3RCU1RSU3QlQlN0QlNUMlNUNXXyU3QjElMkMwJTJDLi4uJTJDMCU3RCU1RSU3QlQlN0QlNUMlNUMuLi4lNUMlNUNXXyU3QjElMkMxJTJDLi4uJTJDMSU3RCU1RSU3QlQlN0QlNUNlbmQlN0JtYXRyaXglN0QlNUQ=.png)
因此,可通過下式得到檢測結果:
![[公式]](/image/aHR0cHM6Ly93d3cuemhpaHUuY29tL2VxdWF0aW9uP3RleD0lMjglNUNoYXQrT18xJTVCdCU1RCUyQyU1Q2hhdCtPXzIlNUJ0JTVEJTJDLi4uJTJDJTVDaGF0K09fJTdCTl96JTdEJTVCdCU1RCUyOSUzRGRlMmJpJTVCYXJnbWF4ZyUyOFclNUN0aWxkZSt4JTVCdCU1RCUyOSU1RA==.png)
其中:
為做分類的非線性函數,
是返回最大值的索引,
是將十進制轉化為二進制。
***
當
時,其索引與二進制關系如下:
| 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
