瞿心昱
(浙江交通職業技術學院軌道交通學院,浙江 杭州 311112)
目前,智慧交通系統中的交通視頻監控系統安裝鋪設非常全面,且采集信息直觀可靠,能夠對路況進行全面準確的描述,因此交通視頻監控系統也成為城市智慧交通系統中應用廣泛、成熟的子系統,取得了較好的社會和經濟效益。各研究機構和人員都進行了大量研究,研究內容集中在對交通道路場景中車輛、行人的檢測以及道路場景多目標、多狀態的交通事件理解。根據紋理[1]、顏色[2]、形狀[3]、Haar-like[4]、HOG[5]等圖像特征檢測車輛和行人的方法大多基于先驗知識,提取的特征往往具有確定性,環境、對象等變化容易導致檢測失敗,方法適應性和魯棒性較差。本文提出一種基于生長式子空間增量PCA的非特定道路場景在線學習算法(GSIPCA),在線增量式地輸入道路場景圖像,將學習到的場景知識積累至可生長PCA子空間,不斷拓展其識別能力,提高任務通用性和環境適應性。
根據學習架構,首先需要使用少量n個道路場景圖像樣本進行標準批量PCA,初始化子空間。定義變量:當前子空間U(n),道路場景圖像樣本均值xˉ(n),在當前子空間下的道路場景圖像投影系數矩陣A(n),新輸入道路場景圖像樣本x,重建x?,重建誤差r,投影a,生長后的子空間U(n+1),道路場景圖像樣本均值xˉ(n+1),投影系數矩陣A(n+1)。
當第n+1個道路圖像場景樣本x輸入算法時,計算x在當前子空間U(n)上的投影:
根據投影和子空間計算該樣本的重建:
計算重建誤差:
計算重建誤差r的歐氏范數‖ ‖r,進一步計算子空間新的基:
計算新子空間基下的投影系數矩陣:

新的道路圖像樣本均值:

按以上增量PCA算法,子空間在計算每一個樣本的PCA后都增加一維,計算和存儲開銷會顯著增加,增加子空間描述知識的冗余,需要對該子空間生長方式進一步優化。每一次子空間更新后,計算當前子空間已學習類別的類間平均距離和類內平均距離,得到樣本重建誤差的兩個參考閾值。定義δ(n)inter為根據第n個樣本更新的子空間計算得到的樣本重建的類間平均距離閾值,δ(n)inner為根據第n個樣本更新的子空間計算得到的樣本重建的類內平均距離閾值,且兩個閾值根據子空間的生長過程動態變化。在第n+1個道路場景圖像樣本輸入算法時,計算該樣本在當前子空間下的投影、重建和重建誤差,根據δ(n)inter和δ(n)inner將樣本分成3種情況,對3種情況分別進行不同的子空間生長方式。
子空間增維生長:當‖ ‖r>δ(n)inter時,該樣本為陌生的新道路場景類別,通過以上增量PCA算法將該類別知識學習到子空間中,子空間維數增加一維,dimU(n+1)=dimU(n)+1。
子空間等維生長:當‖r‖<δ(innte)r且‖r‖>δ(innn)er時,該樣本為子空間中已學習的道路場景類別,但該類別知識不豐富,該樣本應作為類別知識的信息補充,因此仍舊對該樣本進行增量PCA計算,更新子空間。在計算時,將新子空間中貢獻最少的分量舍去,使學習必要信息時保持子空間維數,減少計算和存儲開銷,即dim(U(n+1))=dim(U(n))。同時,對該樣本進行分類識別。
子空間不生長:當‖r‖<δ(innn)er時,該樣本為已學習樣本,且該樣本信息對類別描述冗余,無須進行子空間更新和生長,直接進行分類識別。
設當前子空間中存儲的知識樣本為:
類別為:
對于新輸入樣本x,投影后,計算其與所有子空間內投影的距離,最小距離投影對應的類別為最終識別結果,即:
則a∈classs,即樣本x∈classs,完成識別。
子空間生長策略如圖1所示。
根據以上算法原理推導,生長式子空間增量PCA算法流程如圖2所示。

圖2 生長式子空間增量PCA算法流程
步驟一:當新的道路場景圖像樣本輸入算法時(設已經過預處理),根據公式計算其在當前子空間上的投影、重建及重建誤差。

步驟五:將步驟二計算的最小距離對應的類別作為識別結果輸出。
步驟六:返回步驟一,算法進行下一個循環,接收新道路場景圖像樣本的輸入。
實驗針對提出的生長式子空間增量PCA算法(GSIPCA)進行道路場景的在線增量學習與識別。
選取標準增量PCA算法和文獻[6]提出的PCA算法進行橫向對比,分析3種增量PCA算法的識別正確率、學習時間、存儲空間等指標,得出GSIPCA算法的優勢和需要改進完善之處。
隨著學習樣本增加,IBDPCA算法識別正確率上升趨勢最快,IPCA算法最慢,提出的GSIPCA算法居中,原因是IBDPCA提取了更多的道路場景圖像特征。GSIPCA算法最高識別正確率為95.6%,IBDPCA算法為97.3%,IPCA算法為92.6%,提出的算法和IBDPCA算法均能達到較高的識別正確率。同類算法識別正確率對比如圖4所示。

圖4 同類算法識別正確率對比
隨著學習樣本的增加,三種算法的樣本學習時間均呈上升趨勢,GSIPCA算法的子空間生長策略很好地控制了子空間的急劇增加,減輕計算負擔,對冗余信息的剔除進一步降低了計算量,學習過程中單樣本學習時間控制在2 s以內,最大學習時間為1.69 s。同類算法學習時間對比如圖5所示。

圖5 同類算法學習時間對比
進一步對3種算法在學習過程中內存消耗情況進行對比分析。GSIPCA算法所采用的子空間生長策略很好地控制了子空間快速增長所消耗的大量內存,學習到第500個樣本時內存消耗為72.68 MB,略優于IBDPCA算法。
同類算法內存消耗對比如表1所示。

表1 同類算法內存消耗對比 單位:MB
通過實驗,驗證了提出的生長式子空間增量PCA算法對于道路場景圖像學習與識別的有效性,分析了其收斂性、識別正確率、學習時間和內存消耗等指標。結果表明,該算法實現了在線學習與識別道路場景,子空間生長策略有效地保證了算法學習進程的快速性,且大幅度降低了內存消耗。
本文針對目前道路場景學習與識別算法任務特定,學習與識別過程分離,無法在學習過程中不斷積累知識,發展其智能等問題,提出生長式子空間增量PCA算法,實現了道路場景圖像的在線增量學習與識別,在學習過程中不斷積累和拓展其智能,識別能力不斷提高。結果驗證了該算法的收斂性、高識別正確率、學習快速性和低內存消耗。該算法突破了傳統的機器學習框架,對研究非特定任務人工智能有一定參考價值,對進一步探索知識自主發育的智能系統具有借鑒意義。