高一鍇,彭 力,徐龍壯
物聯網技術應用教育部工程研究中心(江南大學物聯網工程學院),江蘇 無錫214122
如何更準確、更及時地探測火災一直是人們研究的熱門課題。由于環境的多樣性、火災發生的隨機性和各種干擾,火災的檢測和預測通常是不容易的。近年來,隨著計算機技術的快速發展,結合機器視覺和模式識別算法的圖像火災檢測方法得到了廣泛的研究,并成功應用到實踐當中。
圖像火災探測的核心問題是從各類火焰干擾中對火焰進行分類和識別。近年來,出現了越來越多的火災模式識別算法,其中常用的方法有支持向量機[1-3]、神經網絡[4-6]、馬爾可夫模型[7]等?;诮y計學習理論和結構風險最小化的支持向量機(Support Vector Machine,SVM)是繼人工神經網絡對火焰識別之后出現的一個新的發展方向,SVM 能夠很好地處理高維度以及局部極值等問題,而且具有直觀的數學模型和簡潔的數學理論,其得到的解為全局最優解,從而解決了人工神經網絡容易陷入局部極小值等問題[8]。曹勇[9]分別用LVQ神經網絡和BP 神經網絡以及SVM 對火焰特征向量進行識別分析,實驗結果表明SVM 的火焰識別準確率最高。楊娜娟等人[10]在每幀火焰圖像中都用SVM 進行識別,識別效果優于BP 神經網絡和RBF 神經網絡,克服了神經網絡容易過學習、容易陷入局部極小點等不足。張興坤[11]同時將SVM和深度卷積神經網絡(CNN)應用于火焰檢測,實驗結果表明SVM可以進行火焰的有效分類識別,效果良好,而CNN 模型對火焰干擾物體的分辨能力較弱,泛化能力較差。雖然SVM 在火焰識別領域取得了較好的成果[1-3,8-11],但是SVM 分類算法在面對規模較大的數據時通常需要進行大量的二次規劃計算,這可能導致分類計算量大、分類速度慢。孿生支持向量機(Twin Support Vector Machines,TWSVM)是2007 年由Jayadeva提出,TWSVM的訓練學習速度更快,計算復雜度更低,時間開銷上僅為SVM的1/4[12],并且TWSVM已經成功應用于發動機故障識別[13]、圖像分類[14]、手勢分類[15]等領域。本文將基于SVM且性能更優的TWSVM理論應用于火焰識別這個領域,這樣做不僅能夠得到優于SVM 在火焰識別中的檢測效果,而且大大降低了算法的時間復雜度。另外,火焰樣本數據經常存在不平衡的情況,也就是一個樣本數據少,一個樣本數據多,SVM往往無法很好地處理這種情況,而TWSVM還能有較好的分類效果,這是因為TWSVM可以分別對正負樣本設置不同的懲罰參數,從而克服SVM 在處理樣本不平衡問題時的缺點。
盡管TWSVM 算法在跨區域數據集上的性能通常優于傳統的SVM算法,但是仍存在不足之處,其中之一就是TWSVM無法很好地處理參數選擇問題。參數對分類結果有很大的影響,不適合的參數將造成TWSVM分類精度大大降低。參數選擇的困難將會極大地限制TWSVM在火焰識別問題中的應用,要想將TWSVM應用到火焰識別上,TWSVM參數選擇是一個不可回避的問題。一種最常見的方法為網格搜索法(Grid)[16],但是這種方法非常耗時。近年來一些學者利用群體智能優化算法來實現TWSVM 的參數選擇,遺傳算法(GA)是目前應用最廣泛的優化方法之一,然而遺傳算法中有四個參數需要選擇和優化[17],這種算法往往使得計算成本變高。粒子群算法(PSO)[18]是另一種基于隨機軌跡的搜索模型,但它偶爾會收斂到局部最優點或任意點,而不是全局最優點。Ding 等人采用果蠅算法(FOA)和螢火蟲算法(GSO)對TWSVM的參數進行優化,但是這兩種優化算法依然存在陷入局部最優解的可能[19-20]。2019年李景燦等人首次將TWSVM與人工魚群算法[21](AFSA)結合來解決TWSVM 的參數選擇問題[22]。但是不足之處在于,人工魚群算法尋優速度較慢,這使得TWSVM無法快速準確地得到全局最優解[22],TWSVM 的分類性能并不是很理想。
應用于TWSVM參數優化的GA算法[17]、PSO算法[18]、FOA算法[19]、GSO算法[20]大多存在陷入局部最優解的缺點,而人工魚群算法有著很強的逃離局部極值的能力,并在尋找全局極值點時也有著非常好的效果[23]。但是由于基本的人工魚群參數設置為固定值,缺乏自適應性和動態調整能力,造成后期收斂速度較慢,另外在搜索后期存在大量人工魚聚集在非全局最優解附近,或仍在漫無目的隨機游動的現象,導致魚群算法的求解效率較低[24-25],本文利用一種改進人工魚群算法(Improved Artificial Fish Swarm Algorithm,IAFSA)對TWSVM的參數進行優化。首先,在魚群初始化時,利用基于聚類的魚群初始化方法來使魚群在空間上分布均勻;其次,利用自適應參數動態調整人工魚群的視野范圍和移動步長,平衡了AFSA的全局搜索能力和局部搜索能力之間的矛盾;最后,為了提高算法的收斂性,除了經典的人工魚群行為如覓食行為、聚群行為和追尾行為外,還提出了兩種新的行為:跳躍行為和淘汰重生行為。通過以上對基本人工魚群算法的改進,得到一種性能更加優良的人工魚群算法,克服了基本人工魚群算法中尋優精度低和尋優速度較慢的缺點,實現對TWSVM參數的快速準確選取,從而幫助TWSVM 獲得更高的分類精度,為TWSVM 應用到火災火焰識別領域提供了可行有效的思路。
孿生支持向量機是基于支持向量機而提出來的,由于TWSVM所求解的二次規劃問題的規模是原SVM的1/4,所以從理論上來說計算效率是傳統SVM的4倍,極大地提高了分類效率[12]。
假設在n維實空間Rn有m個訓練樣本,m1個樣本屬于正類,m2=m-m1個樣本屬于負類,矩陣A∈Rm1×n代表正類的訓練樣本,矩陣B∈Rm2×n代表負類的訓練樣本,A和B的每一行代表一個樣本。TWSVM 的訓練過程是尋找兩個不平行的超平面如式(1):

K是待確定的核函數,CT=[A,B]T,通過求解下面兩個二次規劃問題可以得到這兩個超平面如式(2)、(3):

e1是一個單位列向量,其行數與K(A,CT) 核函數相同。e2是一個單位列向量,其行數與K(B,CT)核函數相同。c1和c2是懲罰參數,與線性模型的情況相似,測試樣本屬于哪一類,取決于它們更接近哪一個分類超平面。
人工魚群算法(AFSA)主要是通過人工魚個體的覓食、聚群和追尾3種行為進行尋優的。在AFSA中,每條魚的位置被看作是待優化問題的一個可行解,每個解都有一個由適應度函數評估的適應度值,根據待優化問題的不同,合理的選擇不同的適應度函數。定義初始人工魚有N條,每條人工魚狀態為Xi=[x1x2…xm]T,食物濃度(適應度)函數定義為Yi=f(Xi),將向量Xi代入適應度函數便能得出該位置相應的適應度值Yi,通過適應度值來評價個體人工魚的好壞。dij=‖Xi-Xj‖為兩個人工魚之間的距離。在每次迭代中,人工魚通過覓食、聚群和追尾等行為來更新自己,具體的行為描述如下。
覓食行為:假設人工魚當前狀態為Xi,并且相應的適應度為Yi=f(Xi),在Xi的視野范圍內隨機選擇另外一個狀態Xj,如果對應的適應度Yj >Yi,則按式(4)向Xj移動一步,否則,重新選取新的Xj判斷是否滿足前進條件,如果嘗試Π次仍然無法前進,則按式(5)隨機移動到一個新的狀態,rand(0,1)是[0,1]內的隨機正數,Step是移動的步長。

聚群行為:假設人工魚當前狀態為Xi,以Xi為中心的視野范圍內共有nf個人工魚伙伴,當nf≥1,根據式(6)計算出魚群中心位置Xc,若滿足Yc/nf >δYi條件,表示魚群中心狀態較優且不太擁擠,故根據式(7)向該魚群中心所對應的方向移動一步,若不滿足該條件,則選擇執行覓食行為。

追尾行為:假設人工魚當前狀態為Xi,其相應的適應度函數為Yi,人工魚在當前視野范圍內搜尋到的具有適應度最大值的人工魚伙伴所在位置為Xmax,則該位置所對應的適應度值為Ymax。若滿足Ymax>Yi,則以Xmax為中心點搜尋在其視野范圍內的所有人工魚,數量為nf,如果滿足Ymax/nf >δYi,說明Xmax位置較優且不太擁擠,則根據式(8)朝Xmax移動一步,若不滿足該條件,則選擇執行覓食行為。

雖然AFSA 算法具有魯棒性強、收斂性好的優點,但在搜索效率上仍存在著后期盲目搜索、算法速度慢、優化結果精度低等缺點。在本小節中,針對以上問題,本文對基本人工魚群算法進行如下改進,并且詳細闡述了改進人工魚群算法(IAFSA)的核心改進步驟。
(1)基于聚類的種群初始化
基本AFSA的初始化是在可行范圍內隨機生成的,隨機初始化可能導致初始種群的不均勻分布,這使得啟發式算法陷入局部最優并影響它們的收斂性。為了克服這個缺點,提出一種基于聚類的魚群初始化方法來使魚群在空間上分布均勻,假設初始種群規模為N,誤差精度為ω,該聚類初始化步驟具體如下:
步驟1隨機產生N個個體作為初始人工魚群(初始中心點),迭代計數器s=0。
步驟2隨機產生M個個體,并把它們歸到離自己最近的中心點,形成N個簇。
步驟3計算這N個簇的中心點,更新中心點的位置。
步驟4判斷條件‖Xi(s+1)-Xi(s)‖<ω是否成立i=1,2,…,N,若滿足條件執行步驟5,否則執行步驟2。
步驟5輸出這N個中心點,就產生了N條分布均勻的人工魚作為初始魚群。
(2)視覺范圍和步長的改進
在標準人工魚群算法中,視野范圍和步長在整個迭代過程中保持不變。如果設定的視野范圍和步長較大,人工魚群更有可能跳出局部最優解,但同時,人工魚難以進行精確的局部搜索,降低了全局搜索的精度。如果使用較小的視野范圍和步長,它能夠進行精細的局部搜索,但必須降低收斂速度才能達到全局最優。
為了平衡AFSA 的全局搜索能力和局部搜索能力之間的矛盾,本文利用式(9)和(10)自適應地調整人工魚的視野范圍和步長。在AFSA的早期,更大的視野范圍和步長可以加快聚群行為和追尾行為的收斂速度,使得人工魚經過較少次數的迭代后能夠快速收斂到局部和全局最優位置。在后期,較小的視野范圍和步長使覓食行為占主導地位,圍繞在極值點附近的人工魚可以準確地找到極值點的位置,從而找到最優值。

Visualmin為視野范圍的最小值,Stepmin為步長的最小值,t∈(1,2,…,t_max)為當前迭代次數,t_max 為最大迭代次數,0.5<η <1。從式(9)和(10)可以看出,視野范圍和步長隨著算法的迭代不斷變小并且最終趨于Visualmin和Stepmin,如果沒有設定Visualmin和Stepmin值,Visual和Step在迭代后期將下降到一個接近零值的值,如果發生這種情況,人工魚將會失去搜索能力,算計將無法繼續迭代下去。
Visualmin和Stepmin的設置影響著算法的性能。如果設置大的Visualmin和Stepmin值,它可能影響局部搜索的精度,如果設置小的Visualmin和Stepmin值,可能會消耗更多的時間來獲取最優解,影響收斂速度。因此,本文設置在閾值t_des迭代次數內,Visualmin和Stepmin值保持一定值,當迭代次數大于閾值t_des時,Visualmin和Stepmin的值按照式(12)和(13)梯度下降的方式發生變化。

(3)引入了跳躍行為和淘汰重生行為
在基本人工魚群算法的覓食行為中,人工魚在嘗試Π次后如果仍然不能前進,則選擇隨機移動,這種盲目的隨機行為會導致算法收斂緩慢,人工魚陷入局部最優解無法跳出。在這種情況下,如果以概率選擇一定數量的人工魚,并使其位置顯著地發生改變,人工魚群往往會跳出局部極值區域,有利于提升算法的全局搜索能力和收斂速度。這種人工魚位置的顯著性變化稱為跳躍行為,具體描述如下。
當迭代次數t大于閾值t_jump且人工魚迭代后的適應度值增量小于閾值Yχ時,為每個符合條件的人工魚生成一個介于0和1之間的隨機數。隨機數大于跳躍閾值ρ的人工魚在視野范圍內執行跳躍行為,如式(14),μ為跳躍系數,函數random(1,m)產生一個1 行m列的隨機數矩陣。

跳躍行為是以概率選擇一定數量的人工魚,一部分人工魚仍在漫無目地隨機游動,甚至出現退化現象。因此,在算法每迭代Γ次以后,如果人工魚的適應度值小于淘汰重生閾值Yreb,這種人工魚被認為競爭力較弱,應該在可行解范圍內隨機重生。淘汰重生閾值Yreb由式(15)來定義:

θ是適應度值的增量系數,Ybasic是淘汰適應度初始值,淘汰重生閾值Yreb隨著算法迭代增加,但是它的最大值不能超過Ymax。在自然環境中,魚通常在死前盡力掙扎。類似地,這個算法中的每一條人工魚在被淘汰之前都有機會通過跳躍行為存活下來。如果人工魚跳躍行為后的食物濃度高于閾值Yreb,它將繼續生存,否則將被淘汰并重生。每隔Γ次迭代,每個人工魚都會被評估是否需要淘汰重生。每個人工魚都有足夠的時間搜索最優值,同時遵循適者生存、弱者淘汰的原則。淘汰重生行為具體描述如下:
當迭代次數t大于閾值t_rebirth時,計算每個人工魚迭代后的適應度值Yi,判斷人工魚是否滿足跳躍行為的條件,若滿足條件,執行跳躍行為并計算跳躍后的適應度值Yj,否則令Yj=Yi并執行下一步判斷;判斷是否執行淘汰操作,如果Yj <Yreb,淘汰該人工魚,并重生新的人工魚,否則人工魚位置保持不變。每隔Γ次迭代,利用式(15)計算淘汰重生閾值Yreb,重新評估每條人工魚是否需要淘汰重生。
與SVM 相似,懲罰參數與核參數的選擇問題直接影響到TWSVM 的性能。TWSVM 常用的核函數是線性核函數、多項式核函數和高斯核函數,其中以高斯核函數最為普遍。高斯核函數具有以下優點,表達式簡單,即使輸入多個變量,復雜度也不會明顯增加;它的任何階的導數都存在并且具有良好的光滑性;它具有良好的性能和很強的學習能力,能夠適應各種維度和樣本量。大量實驗結果表明,高斯核函數在TWSVM中的應用效果良好[17-20,22]。所以本文選取該函數作為核函數進行實驗,高斯核函數表達式如式(16):

利用改進人工魚群算法優化TWSVM 的懲罰系數c1、c2和高斯核參數σ,優化目標是尋求最優的參數組合(c1,c2,σ)使TWSVM的分類正確率達到最大化。參數組合(c1,c2,σ)視為人工魚的位置,采用K-折交叉驗證法(K-CV),將平均分類準確率作為目標函數值。在計算人工魚適應度值時,將人工魚的當前位置作為參數組合(c1,c2,σ)構建TWSVM 模型,將訓練樣本隨機分成大小相同的K(K=10)份,進行十折交叉驗證,把平均分類準確率作為該人工魚當前位置的適應度值。對于給定的訓練樣本,利用改進人工魚群算法優化TWSVM參數的算法(IAFSA-TWSVM)詳細流程如下:
步驟1初始化。設定最大迭代次數t_max、種群規模N、視野范圍最小值的初始值Visualmin、移動步長最小值的初始值Stepmin、覓食最大試探次數Π、擁擠度因子δ、閾值t_des、閾值t_jump、閾值t_rebirth、適應度值增量閾值Yχ、跳躍閾值ρ、淘汰重生行為執行相隔代數Γ、適應度值的增量系數θ、淘汰適應度初始值Ybasic等參數,并且設置TWSVM 中參數組合c1、c2、σ取值范圍。
步驟2利用2.2 節中基于聚類的方法來初始化N條人工魚。
步驟3計算初始魚群中每條人工魚的適應度值。對于每條人工魚,以當前位置作為參數組合(c1,c2,σ)建立TWSVM 模型,對訓練樣本進行五折交叉驗證,將平均分類準確率作為該魚的適應度值。
步驟4將魚群中適應度值最大值作為當前魚群的最優值,并將對應人工魚的位置保存在公告板中。
步驟5魚群更新。每條人工魚分別進行覓食、聚群和追尾行為,按步驟3 的方法計算各行為的適應度值,選擇較優的行為作為魚的移動方向并更新每條人工魚的位置。
步驟6首先利用2.2 節中式(9)、(10)對視野范圍、移動步長進行修改;判斷條件t >t_des是否滿足,若條件成立,Visualmin和Stepmin值按照式(12)和(13)梯度下降的方式發生變化,否則Visualmin和Stepmin值保持不變;判斷條件t >t_jump是否滿足,若條件成立,對符合條件的人工魚執行跳躍行為,否則不執行任何操作;判斷條件t >t_rebirth是否滿足,若條件成立,對執行過跳躍行為的人工魚執行淘汰重生行為,并且每隔Γ代后,通過式(15)計算淘汰重生閾值Yreb,重新評估每條人工魚是否需要淘汰重生,否則不執行任何操作。
步驟7魚群最優值的確定。將各魚的適應度值與公告板中的值進行比較,如果較優則替換,并保存相應的位置,公告板中始終保持歷史最優的值。
步驟8判斷是否滿足終止條件,若是,輸出公告板中的值,即TWSVM的平均分類準確率和最優參數組合(c1,c2,σ)。否則跳轉執行步驟5。
IAFSA-TWSVM的流程圖如圖1所示,通過這個流程圖可以直觀地看出本文所提出算法的過程。

圖1 IAFSA-TWSVM算法流程圖
火災火焰圖像識別需要獲得圖像相關特征量,因此還需要經過火焰圖像分割和特征提取的步驟。
由于火災在燃燒時其現場相對很復雜,所以單一的顏色模型可能無法很好地把火焰區域從背景區域分割出來。因此本文提出了一種RGB-YCbCr混合顏色空間模型方法,將RGB顏色空間模型和YCbCr顏色空間模型結合在一起,對火焰區域進行分割。
Wang等人[26]在實際的火焰數據集上將YCbCr顏色空間模型每個通道中的火焰像素值與相應通道中的平均像素值進行比較,得出了YCbCr顏色空間模型中火焰像素的分布特點:在Y通道中火焰區域的像素值明顯大于整個圖像的平均像素值;在Cb通道中,火焰區域的像素值小于整個圖像的平均像素值;在Cr通道中,火焰區域像素值大于整個圖像的平均像素值。上述分布特點可用式(17)~(19)表示:

Y(i,j)、Cb(i,j)、Cr(i,j)分別為(i,j)位置的Y 通道像素值、Cb 通道像素值、Cr 通道像素值,Ymean、Cbmean、Crmean為對應通道的平均像素值。
申小龍等人[27]通過對隨機選取的134幅火災圖片和945幅未發生火災的圖片進行RGB值統計分析,分析發現對于火焰區域的RGB 值其紅色分量值普遍較高,而綠色通道的值偏低,從而得出了在RGB 顏色空間模型中火焰像素的分布特點:R通道上的火焰像素的像素值大于G通道上的像素值。該特點可用式(20)表示:

R(i,j)、G(i,j)分別表示在RGB顏色空間模型中(i,j)位置的R通道像素值和G通道像素值。
為了更好地分割火焰圖像,本文分別根據YCbCr和RGB 顏色空間模型中的火焰像素分布特點來提取火焰。然后對同時滿足以上兩種條件的像素點進行整理,最終得到完整的火焰目標區域,火焰圖像分割的流程圖如圖2所示。

圖2 火焰圖像分割流程圖
RGB-YCbCr 混合顏色空間模型的火焰圖像分割效果示例圖如圖3 所示,從中可以看出,本文所使用的RGB-YCbCr混合顏色模型能夠有效地從背景區域分割出火焰目標區域。
早期火災火焰的顏色、形態和紋理不斷變化,對火焰的這些特殊特征進行提取,能夠作為很好的火災火焰識別依據。本文選取常用的顏色矩、圓形度、紋理特征作為火焰圖像識別的判據。

圖3 RGB-YCbCr混合顏色空間模型的火焰圖像分割效果示例圖
(1)顏色矩。利用火焰圖像的低階顏色矩就能夠描述顏色的存在狀態,因為圖像的顏色分布主要集中在低階矩。圖像的一階顏色矩M1、二階顏色矩M2、三階顏色矩M3分別表示圖像的平均顏色、標準方差以及二次根非對稱性,其表達式如式(21)~(23):

其中,L代表的是圖像的總像素集合,Y(p(i,j))代表的是在YCbCr顏色空間模型中,火焰目標區域p的(i,j)位置的Y通道分量值。
(2)圓形度。火焰的形狀相對于干擾物(如蠟燭火焰、照明燈等)則顯得不是那么有規律,所以圓形度可以作為火災火焰識別的另一個重要的判據。圓形度是圖元面積和周長之比,其表達式如式(24):

其中,Ai、Pi、Mi分別是第i個圖元的面積、周長、圓形度。周長為物體的邊界長度,從邊界鏈碼中得到,面積通過統計亮點數獲得。
(3)紋理特征。紋理特征是表示目標區域像素灰度空間分布的另一個重要特征,本文利用灰度共生矩陣中的能量(ASM)、熵(ENT)、關聯度(COR)和慣性矩(CON) 四個量來表示火焰識別問題的紋理特征,如式(25)~(28)所示。ph(i,j)為目標火焰區域的灰度值分別為i和j的像元對的概率,μx、σx、μy、σy分別為px(i)=的均值和標準方差。


在本章中,從互聯網網站下載327幅火焰圖像進行火焰識別測試,其中223 幅火焰圖像,其余104 幅為蠟燭、燈光等干擾圖像。實驗選取了樣本總數的70%,即229幅圖像(156幅火焰圖像和73幅干擾圖像)作為訓練集,30%的樣本(67 幅火焰圖像和31 幅干擾圖像)作為測試集。如3.1節所述,根據RGB-YCbCr混合顏色空間模型中火焰像素的分布特點對火焰圖像進行分割,然后提取每個圖像的各個分量的顏色矩、圓形度和紋理特征作為特征向量,作為TWSVM 分類器模型的訓練和測試樣本。實驗在Matlab 環境下實現,硬件配置為Windows 10 操作系統,8 GB 內存,1 TB 硬盤,i5-4210H和2.90 GHz主頻CPU的計算機。
為了證明所提出的IAFSA-TWSVM 的有效性,選取傳統支持向量機(SVM)、基于網格搜索的孿生支持向量機(Grid-TWSVM)、基于遺傳算法的孿生支持向量機(GA-TWSVM)[17]、基于粒子群算法的孿生支持向量機(PSO-TWSVM)[18]、基于果蠅算法的孿生支持向量機(FOA-TWSVM)[19]、基于螢火蟲算法的孿生支持向量機(GSO-TWSVM)[20]、基于人工魚群算法的孿生支持向量機(AFSA-TWSVM)[22]作為對比實驗,與IAFSA-TWSVM進行比較。為了保證算法對比的公平性,如2.3節所述,實驗中所有智能優化算法的適應度函數為采用十折交叉驗證方法得到的平均分類準確率。由于啟發式算法得到的結果對于每個運行周期可能不完全相同,因此每個算法運行5 次,每次算法最大迭代次數為100,并將5次中的最優適應度值相對應的(c1,c2,σ)作為TWSVM的最優參數。表1 給出了不同算法尋找到的最優參數(c1,c2,σ),最優參數對應的最優適應度值,算法運行5次的平均參數尋優時間。
圖4給出了IAFSA-TWSVM、AFSA-TWSVM、PSOTWSVM、GA-TWSVM、GSO-TWSVM、FOA-TWSVM 6種智能優化算法運行5次最優的參數尋優過程曲線。

圖4 不同算法參數尋優過程曲線

表1 不同算法參數尋優結果比較
實驗利用參數尋優得到的最優參數(c1,c2,σ)作為最終選定的TWSVM參數,在全部訓練集上建立TWSVM模型,并對剩余的30%測試集進行測試。
考慮到近年來深度學習的快速發展,以及卷積神經網絡(CNN)在圖像分類上的卓越表現,本文將其應用于火焰識別作為對比實驗。為了與SVM和TWSVM算法進行比較,該對比實驗使用3.1 節火焰分割方法獲得火焰目標區域,減少了無關干擾物的影響同時壓縮了輸入CNN 模型的圖像大小和數據量,然后送入卷積神經網絡進行訓練。本實驗選用具有很強擴展性且泛化能力良好的VGGNet-16[28]深度卷積神經網絡來構建火焰圖像識別網絡模型。另外由于火焰目標可能只存在火焰圖像的某些位置,本實驗將適用于實時目標檢測的Fast R-CNN 算法[29]和YOLO 算法[30]也作為對比算法進行比較。
對于二分類問題,ROC(Receiver Operating Characteristic)曲線分析和混淆矩陣(Confusion Matrix)是分類器比較的重要性能指標。實驗利用測試集的分類結果可以獲得混淆矩陣的四個基本指標:TP(True Positive)即真陽性、FP(False Positive)即假陽性、FN(False Negative)即假陰性、TN(True Negative)即真陰性?;谝陨纤膫€基本指標,利用式(29)~(32)可以計算出準確率(Accuracy)、精確率(Precision)、召回率(Recall)、精確率和召回率的調和平均數F1分數(F1score)。

ROC 曲線的縱坐標為TPR(True Positive Rate)即真陽性率,橫坐標為FPR(False Positive Rate)即假陽性率,TPR和FPR可以利用混淆矩陣中的基本指標得到,如式(33)、(34)。


圖5給出了十一種算法的ROC曲線圖。AUC(Area Under Curve)被定義為ROC曲線下與坐標軸圍成的面積。AUC 為分類算法的性能對比提供了數字化依據,為了計算AUC,只需要得到ROC 曲線下的面積。表2給出了十一種算法在測試集上準確率、F1分數、AUC和算法運行時間(SVM、TWSVM 算法運行時間包含參數尋優時間)四種性能指標的對比情況。

表2 不同算法性能指標比較
從表1和圖4中可以看出,本文提出的IAFSA-TWSVM可以以更少的迭代次數,更快地尋找到TWSVM的最優參數。從表2可以看出,所提出的IAFSA-TWSVM在準確率、F1分數、AUC三種性能指標上均獲得了最優的結果,同時所提的算法運行時間最短,實時性最好。從表2也可以看出,雖然Fast R-CNN 算法取得了較好的分類效果,但是由于該算法使用Selective Search方法提取候選區域,存在很多冗余運算使得算法比較耗時;YOLO算法實時性與SVM 算法比較接近,但是該算法的分類效果不是很理想,這是因為YOLO算法自身存在定位不準的問題,容易出現漏檢的情況;VGGNet-16 深度卷積神經網絡各項性能指標與SVM 算法比較接近,另外由于VGGNet-16卷積層計算量較大且相對于SVM算法參數數量較多,使得VGGNet-16 算法運行時間較長。值得注意的是,SVM算法也比較耗時達到了4 091.83 s,而七種基于TWSVM的算法相比SVM算法運行時間大大縮短。從理論上講,TWSVM時間開銷上為SVM的1/4,在實驗中發現,實驗結果和理論值存在一定的差距,但是依然可以驗證TWSVM在火焰識別領域比SVM更有優勢。在七種基于TWSVM 的算法中,所提的IAFSATWSVM 算法運算時間最短,分類性能指標最好。這主要得益于2.2 節對人工魚群算法的改進,改進后的AFSA可以以更快的速度跳出局部最優解,尋找到適合TWSVM的全局最優參數,從而解決了TWSVM應用于火焰識別時參數選擇困難、常用參數尋優算法尋優時間長等問題。

圖5 測試集上不同方法的ROC曲線
本文針對孿生支持向量機應用到火焰識別領域時參數選擇困難、常用參數尋優算法尋優時間長等問題,提出了一種改進人工魚群算法優化孿生支持向量機參數(IAFSA-TWSVM)的火焰識別方法。該方法通過基于聚類的方法實現人工魚群的均勻初始化,同時用自適應參數取代AFSA算法的固定視野范圍和步長,引入新的跳躍行為和淘汰重生行為更好地幫助魚群跳出局部最優解,提高了算法的收斂速度和識別率,克服了前人優化算法后期收斂速度慢、易陷入局部最優的缺點,為TWSVM應用到火焰識別提供了一種有效的新方法。