張久鑫
(1.中國科學院上海微系統與信息技術研究所,上海200050;2.上海科技大學信息與技術學院,上海201210;3.中國科學院大學北京100049)
隨著移動設備與互聯網技術的高速發展,基于位置服務(Location Based Service,LBS)得到越來越廣泛的應用[1-2],由于GPS系統在室內遮蔽環境下無法準確定位,人們對LBS的另一核心技術——室內定位技術提出了更高的要求。評價一項室內定位技術的指標主要有精度,成本和易用性等。在當前的室內定位技術研究熱點中,基于Wi-Fi、藍牙等無線電信號的定位技術[3-4]存在精度上的局限性;超寬帶[2]定位精度較高,但需要佩戴額外標簽,不能滿足一般環境下的應用;行人航位推測(Pedestrian Dead Reckoning,PDR)[5-8]易用性強,但存在誤差校正的難題;可見光定位技術(Visible Light Positioning,VLP)[9-12]精度高,但是成本和易用性難以令人滿意。這些技術各有優劣,但均無法較好地同時滿足精確,廉價和易用的要求。
文中提出了一中基于低分辨率監控攝像頭和智能手機的行人室內定位與識別系統,應用基于卷積神經網絡(Convolutional Neural Network,CNN)的物體追蹤算法進行行人追蹤和定位。此系統可以達到厘米級的定位精確度,并且充分利用建筑物內已有的監控攝像頭和行人普遍擁有的智能手機,無需額外架設硬件。同時,行人無需進行拍照等復雜操作即可獲得定位信息,易用性得到保障。
提出的室內定位系統框架如圖1所示。系統主要分為兩個主要部分,第一部分是對監控攝像頭視頻流的處理。監控攝像頭采集視頻數據輸入系統后,系統從視頻每一幀中提取出各個運動著的行人的圖像[13],并對視野中的每個人進行定位,然后系統提取出每個行人行走的視頻步態特征。同時,行人手機中的運動傳感器記錄目標行人的運動數據,系統從中提取出目標行人的步態特征,將其與視頻中各個行人的特征進行對比,從而確認持有智能手機的目標行人在視頻中對應視頻中哪一個行人,最終得到目標行人的位置信息并返回給手機。

圖1 室內定位系統框架
在采集視頻數據前,對實驗中使用的攝像頭進行校準,以消除圖像畸變,以便讓定位后的坐標變換是線性且易標定的。
文中應用高斯混合模型(Gaussian Mixture Model,GMM)提取視頻幀中的運動部分[14]。GMM算法用于分離運動的前景和靜止的背景。高斯模型儲存動態的背景模型,每個像素點的高斯模型保存著此像素位置上的背景特征。對于圖像中的每一幀,均建立一組高斯模型來擬合背景中的RGB值,當新一幀圖像中的像素值輸入后,通過將其與背景高斯模型對比,可以判定此像素是否屬于運動前景。高斯模型的參數在線下初始化后,在線上根據持續輸入的連續幀中的相應位置的像素值來更新,也就是說,高斯模型是動態的,代表最新的背景特征。
通過GMM算法得到的前景圖像包含陰影,經過陰影剪除后,可以得到清晰的行人輪廓。通過形態學的開操作和閉操作,可以減少前景圖像周圍的毛刺與斷裂。通過對連接區域的分析,可以從整個視頻幀的前景中分離出每個人的前景圖像,前景提取和陰影剪除如圖2所示,圖2(a)為視頻幀原圖像;圖2(b)為GMM提取的前景圖像,灰色部分為陰影;圖2(c)為陰影剪除后的前景區域。

圖2 視頻圖像處理
當視頻中的行人容易部分遮擋,無法提取出完整的行人前景輪廓,因此無法進行有效的定位。為了解決這一問題,應用了基于卷積神經網絡[15]的物體追蹤算法,對行人進定位與追蹤。
卷積神經網絡在計算機視覺領域有著優異的表現,在物體識別與追蹤上更是體現出遠遠超越傳統算法的精度和魯棒性。
在文中的室內定位系統的算法中,已知之前幾幀圖片與圖片中行人的邊界框,輸入下一幀圖片,可以求得下一幀中行人的邊界框。首先在上一幀行人邊界框位置附近隨機取樣,取樣滿足高斯分布。然后對取得的每一個樣本,通過神經網絡的前向傳播得到此樣本作為下一幀行人邊界框的可能性,可能性最大的樣本即為下一幀中的行人邊界框。算法從第一幀開始,逐幀預測下一幀行人的位置,在行人受到部分遮擋時,追蹤也能繼續進行。將邊界框的下邊界中點近似為行人站立點在視頻上的位置。圖3為行人未受遮擋和受遮擋時CNN追蹤算法效果。

圖3 CNN追蹤定位
下一步我們將行人站立點定位坐標從視頻空間轉換到實物空間。由于攝像頭已進行過去畸變處理,坐標轉換公式是簡單的線性公式,如下所示:

公式(1)中,(Xr,Yr)為實物空間坐標,(Xv,Yv)為視頻空間坐標,R為坐標轉換矩陣,δ為常數。對于每個攝像頭,需要在使用之前進行坐標轉換矩陣R和常數δ的標定。從兩個坐標空間中采集4對以上的坐標值,每對坐標值代表同一個點在不同坐標系中的兩種值。通過坐標代入與最小二乘法,即可求解出近似的R和δ。經過坐標轉換公式,可以得到最終的結果,即行人在實物空間里的站立點坐標值。
視頻中同時存在多個行人,通過上文所述的定位方法,可以得到視頻中每個人的位置信息。接下來,需要提取視頻中每個人的步態特征,通過視頻步態特征與智能手機提取出的步態特征的比對來找出視頻中哪一個行人對應著智能手機的持有者,即定位服務的發起者,從而將正確的位置信息反饋給用戶。在實際應用中,截取100幀長度的視頻步態特征和相對應時間長度的智能手機步態特征。特征分為行走狀態,步頻和行走方向3個方面。行走狀態分為走和停,分別用1和0表示;步頻體現行人行走的快慢;方向代表行人前進的方位角,我們把北磁極的方向設為0°方位角。
視頻中的步態特征從行人前景圖中提取。行人雙腿的形態變化可以體現出走路的狀態。在行人前景圖的邊界框內,下半部分像素區域可看作雙腿。通過計算邊界框下半部分前景像素所占的比例,可以發現在行人行走時此比例值是周期性變化的,如圖4所示。視頻中行人兩條腿交疊在一起與兩條腿分開兩種情況下,此比例值一高一低。對曲線作平滑處理并提取極值點的橫坐標,可以計算出行人行走頻率。如果曲線中的某一段可以提取出明顯的極值點,這這一段曲線所對應的幀被判定為行走狀態,反之則為非行走狀態。相鄰兩幀中行人站立點的連線的方位角即為行人行走的方向。

圖4 目標行人的手機步態特征
智能手機中的運動傳感器多種多樣,其中加速度傳感器采集絕對加速度,重力傳感器采集重力加速度,磁感應器測定地磁的方向和大小。絕對加速度與重力加速度作差可求得智能手機相對于實物坐標系的相對加速度。相對加速度的絕對值可作為步態特征的數據源。與3.1類似,對相對加速度絕對值曲線作平滑和提取極值點處理后,可以得到步頻和行走狀態兩種特征。通過磁感應器測定的地磁方向,可以計算出手機相對于地面的傾斜角度,同時已經求得加速度極大時加速度相對于手機的方向,通過坐標變換易得加速度極大時加速度相對地面的方向,此方向可以看做行人行走方向,即為方向特征。方向特征只在行走狀態為1時有意義。
從視頻中和智能手機運動數據中均提取了行走狀態、步頻和方向3個特征。定位服務的發起者持有智能手機,手機采集的是發起定位的行人的運動信息。系統從手機運動信息中提取出步態特征,然后與視頻中各個行人的視頻步態特征進行對比。我們對連續100幀圖像時間內的特征進行比較,計算每一幀的特征匹配度,然后求和,即得到100幀的總匹配度。如圖4~5所示,圖4代表從智能手機中提取的行人加速度數據,圖4描繪3名不同行人a,b,c的視頻特征數據。以第80幀為例,定位發起者行走狀態為行走,a和c的行走狀態同為行走,行走狀態差記為0,b在第20幀的行走狀態為靜止,行走狀態差為1。頻率差直接記為行走頻率的差值,a和c行走狀態一致,步頻明顯不同。方向差在差值大于閾值時記為1,在閾值范圍內則記為0。對于每一幀,3個特征差的加權求和即為單幀特征差,然后對100幀的單幀特征差求和,即可得到總差。對每個行人總特征差排序,總特征差最小且小于預設閾值的行人被認作目標行人,系統將此行人位置反饋給定位發起者。行人a,b,c中,b與目標行人的總特征差最小,與目標行人匹配成功,b的定位信息反饋給目標行人的智能手機。

圖5 3名行人的視頻步態特征
實驗場地為12 m×10 m的室內空間,攝像頭安裝在坐標(6,0)的墻面上,高度距地面3 m。卷積神經網絡結構參照MDNet[16],使用MatConvNet深度學習框架構建。智能手機型號LG G4,操作系統版本為Android 7.0。
對于沒有受遮擋的行人,定位平均誤差為14.63 cm,對于全程受遮擋行人,定位平均誤差增加到20.26 cm。在圖6顯示無遮擋情況下的一組實驗結果,定位誤差滿足大多數應用場景的需求。

圖6 定位效果
文中提出一種結合監控攝像頭與智能手機的行人室內識別與定位系統,引入基于卷積神經網絡的追蹤算法處理遮擋,并提出了從視頻空間和智能手機同時提取步態特征進行對比從而識別目標行人的算法。此系統精度高,易使用,成本低,平均誤差可達十厘米以下。同時,此研究為室內定位研究領域開辟了一種新的思路。