本發明屬于計算機智能檢測領域,具體涉及一種基于移動終端的汽車駕駛狀態的監控方法。
背景技術:
司機在汽車行駛過程中的危險駕駛行為和駕駛狀態可直接或間接導致交通事故的發生,對于司機的生命財產安全造成隱患。因此,持續對汽車的行駛狀態進行監控,不僅能夠對司機的駕駛行為進行糾正和輔助,還有助于及早發現可能的危險,提高交通效率和安全。車輛行駛狀態的判定可以通過圖像識別技術,但往往受到光線、天氣的影響,容易產生誤判。而車輛的行駛狀態往往可以通過加速度反映出來,因此,利用傳感器數據來判定汽車的行駛狀態是可行的。
目前關于利用傳感器數據判定汽車行駛狀態的工作主要分為兩類:1、使用車輛內置的加速度傳感器來判別汽車的行駛狀態,由于傳感器與車身處于同一坐標系,因此提取的原始數據可以直接用于判別,且數據噪聲較小。但這需要安裝額外的設備,對硬件要求較高。2、由于目前移動終端的普及,其內置了豐富的傳感器,例如加速計、陀螺儀、gps等,加上其便攜性,可以更快捷的完成汽車行駛狀態的判別工作。一部分工作利用移動終端完成汽車行駛狀態的判別工作,然而未考慮到車內的移動終端坐標系與汽車坐標系的不一致性,需要進行坐標系的轉化。還有一部分工作通過計算變換矩陣完成從移動終端坐標系到汽車坐標系的轉化。但多個傳感器的數據采集和分析對于移動終端的計算要求和能耗提出了很大挑戰,目前還未有相關工作解決這個問題。
技術實現要素:
本發明的基于移動終端的汽車駕駛狀態的監控方法,通過利用移動終端的內置傳感器對汽車的行駛狀態進行持續精確監控,從而了解駕駛員的駕駛行為和駕駛狀態,確保行車安全。
附圖說明
圖1為本發明中基于移動終端的汽車行駛狀態的監控方法的流程圖;
圖2為本發明一實施例中兩軸加速度與汽車前進方向位置關系圖;
圖3為本發明計算移動終端坐標系與汽車坐標系的變換矩陣流程圖;
圖4為本發明根據當前測量值判定汽車行駛狀態的步驟。
具體實施方式
為了使本發明的目的、技術方案及優點更加清楚明白,以下結合附圖及實施例,對本發明進行進一步詳細說明。應當理解,此處所描述的具體實施例僅僅用以解釋本發明,并不用于限定本發明。此外,下面所描述的本發明各個實施方式中所涉及到的技術特征只要彼此之間未構成沖突就可以相互組合。
本發明方法涉及到智能識別、分析等技術,利用移動設備獲取的加速度值,角速度值以及gps數據,進而用于對汽車的行駛狀態進行實時監控。
本發明實施例提供了一種基于移動終端的汽車行駛狀態的監控方法。所述方法如圖1所示,包括以下步驟:
s1、持續采集移動終端的加速度傳感器,陀螺儀,gps傳感器數據;
s2、計算移動終端坐標系與汽車坐標系的變換矩陣;
s3、根據連續若干個汽車坐標系的加速度值判定汽車行駛狀態;
s4、根據加速度傳感器和gps傳感器數據動態重復汽車行駛狀態并調整采樣頻率。
進一步,在步驟s1中,包括:
s11、以固定頻率(20hz)同時收集加速度傳感器和陀螺儀產生的加速度和角速度值。由于gps數據頻率需求不高且較為耗能,因此以一個較低的采樣頻率(1hz)持續采集gps數據。
s12、對采集上來的加速度和角速度數據進行濾波,過濾掉噪聲。
進一步,如圖2所示,在所述步驟s2中包括:
s21、提取前1s的加速度傳感器三軸加速度的平均值作為移動終端坐標系向量(x0,y0,z0);
s22、根據(x0,y0,z0)三軸絕對值的大小判斷與當前移動終端位置最接近的標準姿態,標準姿態共分為6種:水平朝上、水平朝下、豎直長邊朝上、豎直長邊朝下、豎直短邊朝上、豎直短邊朝上;
s23、設置汽車坐標系基礎向量(x1,y1,z1),其中水平兩個軸向加速度為0,第三個軸向加速度的大小為
汽車坐標基礎向量有6種,例如在得到設備坐標(x0,y0,z0)后,判斷三個值的絕對值大小,如果x0的絕對值最大且為正,則設備的擺放位置更接近于一種水平向右擺放的姿態,因此對應的汽車坐標系基礎向量坐標為(g,0,0),其余5種向量判斷和生成規則以此類推。
s24、根據移動終端坐標系向量(x0,y0,z0)和汽車坐標系向量(x1,y1,z1)確定從移動終端坐標系到汽車坐標系的變換矩陣a0;
根據向量(x0,y0,z0)和(x1,y1,z1)通過公式(1-1)和(1-2)得到變換矩陣r,其中k和v對應(x0,y0,z0)和(x1,y1,z1)。
cosθ=k·v/|k||v|(1-1)
進一步,如圖3所示,在所述步驟s3中,包括:
s31、啟動汽車,判定汽車當前行駛行為為正向前進;
在汽車啟動后,持續監控1s時間段內的陀螺儀三軸角速度值的平均值(wx,wy,wz),當陀螺儀的三軸角速度均低于一定閾值(0.4)時,判定汽車當前行駛為正向前進而非轉彎。
s32、利用當前加速度傳感器提取的加速度值右乘變換矩陣a0得到汽車坐標系加速度向量(x,y,z);
s33、將該向量去除掉重力加速度后確定剩余兩軸加速度與汽車前進方向的偏轉角;
當原始數據乘以變換矩陣得到汽車坐標系的三軸數據后,只是確定了垂直于汽車行駛平面的重力加速度的方向,通過啟動汽車,去除掉重力加速度軸向值,可以得到汽車水平面的兩軸加速度值(不妨設為x,y),令acc為前進方向正方向,right為右轉方向正方向。此時
當x和y的相對位置如圖2-1所示時,使用公式(1)-(2)確定兩軸加速度與汽車前進方向的偏轉角。
當x和y的相對位置如圖2-2所示時,使用公式(3)-(4)確定兩軸加速度與汽車前進方向的偏轉角。
當x和y的相對位置如圖2-3所示時,使用公式(5)-(6)確定兩軸加速度與汽車前進方向的偏轉角。
當x和y的相對位置如圖2-4所示時,使用公式(7)-(8)確定兩軸加速度與汽車前進方向的偏轉角。
s34、根據偏轉角和變換矩陣得到最終汽車行駛坐標系中的前進加速度acc_brake和轉彎加速度right_left,從而判定汽車的行駛狀態。
例如,汽車中的手機的豎直短邊向下擺放,x正方向上重力分量最大,,且獲得了前進方向和水平方向的變換角cosθ1,cosθ2,在獲得一個原始的傳感器數據后x0=(x,y,z)后,
1、獲得汽車坐標系向量x1=x0*a0。其中x1=(g,y’,z’)。
2、去除g,其與前進加速度和轉彎加速度無關。剩余的二維向量再與相應的變換角cosθ1,cosθ2做計算,計算前進加速度acc_brake和轉彎加速度right_left的公式為:
right_left=[(-y)*sinθ2+(-z)*sinθ1]/g(9)
acc_brake=[(-y)*cosθ2+z*cosθ1]/g(10)
基于其它5種汽車坐標系向量加速度的計算前進加速度acc_brake和轉彎加速度right_left的公式為:
a)豎直長邊向上:
right_left=[(-x)*sinθ2+(-z)*sinθ1]/g(11)
acc_brake=[(-x)*cosθ2+z*cosθ1]/g(12)
b)豎直長邊向下:
right_left=[(x)*sinθ2+(-z)*sinθ1]/g(13)
acc_brake=[(x)*cosθ2+z*cosθ1]/g(14)
c)豎直短邊向上:
right_left=[(y)*sinθ2+(-z)*sinθ1]/g(15)
acc_brake=[(y)*cosθ2+z*cosθ1]/g(16)
d)水平向上:
right_left=[(-x)*sinθ2+(y)*sinθ1]/g(17)
acc_brake=[(-x)*cosθ2+(-y)*cosθ1]/g(18)
e)水平向下:
right_left=[(x)*sinθ2+(y)*sinθ1]/g(19)
acc_brake=[(x)*cosθ2+(-y)*cosθ1]/g(20)
如果傳感器數據恰好出現多個最大絕對值,則默認汽車坐標系向量為豎直長邊向上。
進一步,在所述步驟s4中,包括:
s41、持續監控acc_brake、right_left值,當acc_brake、right_left至少有一個值超過0.5g且持續超過10s,判定移動終端與汽車的相對姿態發生變化,否則判定移動終端與汽車的相對姿態未發生變化,重復步驟s2和s3重新確定相對姿態。
s42、持續監控1s時間段內的acc_brake、right_left的平均值avg_ab,avg_rl和gps字段速度值v,當v連續超過5s都為0且avg_ab和avg_rl小于一定閾值(avg_ab<0.06g且avg_rl<0.08g)時,判定汽車處于停車狀態。此時,重復步驟s2和s3重新確定相對姿態并降低加速度傳感器和陀螺儀的采樣頻率。
s43、當汽車處于停車狀態時,持續監控1s時間段內的acc_brake、right_left的平均值avg_ab,avg_rl和gps字段速度值v。當avg_ab或avg_rl超過一定閾值(avg_ab>0.12g或avg_rl>0.16g)或v不為0時,判定汽車恢復行駛狀態,此時提高加速度傳感器和陀螺儀的采樣頻率。
最后應說明的是:以上實施例僅用以說明本發明的技術方案,而非對其限制;盡管參照前述實施例對本發明進行了詳細的說明,本領域的普通技術人員應當理解:其依然可以對前述實施例所記載的技術方案進行修改,或者對其中部分技術特征進行等同替換;而這些修改或者替換,并不使相應技術方案的本質脫離本發明各實施例技術方案的精神和范圍。