• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      改進(jìn)AFSA算法優(yōu)化TWSVM的火焰識別方法

      2021-04-23 04:32:36高一鍇徐龍壯
      計算機(jī)工程與應(yīng)用 2021年8期
      關(guān)鍵詞:魚群適應(yīng)度火焰

      高一鍇,彭 力,徐龍壯

      物聯(lián)網(wǎng)技術(shù)應(yīng)用教育部工程研究中心(江南大學(xué)物聯(lián)網(wǎng)工程學(xué)院),江蘇 無錫214122

      如何更準(zhǔn)確、更及時地探測火災(zāi)一直是人們研究的熱門課題。由于環(huán)境的多樣性、火災(zāi)發(fā)生的隨機(jī)性和各種干擾,火災(zāi)的檢測和預(yù)測通常是不容易的。近年來,隨著計算機(jī)技術(shù)的快速發(fā)展,結(jié)合機(jī)器視覺和模式識別算法的圖像火災(zāi)檢測方法得到了廣泛的研究,并成功應(yīng)用到實踐當(dāng)中。

      圖像火災(zāi)探測的核心問題是從各類火焰干擾中對火焰進(jìn)行分類和識別。近年來,出現(xiàn)了越來越多的火災(zāi)模式識別算法,其中常用的方法有支持向量機(jī)[1-3]、神經(jīng)網(wǎng)絡(luò)[4-6]、馬爾可夫模型[7]等?;诮y(tǒng)計學(xué)習(xí)理論和結(jié)構(gòu)風(fēng)險最小化的支持向量機(jī)(Support Vector Machine,SVM)是繼人工神經(jīng)網(wǎng)絡(luò)對火焰識別之后出現(xiàn)的一個新的發(fā)展方向,SVM 能夠很好地處理高維度以及局部極值等問題,而且具有直觀的數(shù)學(xué)模型和簡潔的數(shù)學(xué)理論,其得到的解為全局最優(yōu)解,從而解決了人工神經(jīng)網(wǎng)絡(luò)容易陷入局部極小值等問題[8]。曹勇[9]分別用LVQ神經(jīng)網(wǎng)絡(luò)和BP 神經(jīng)網(wǎng)絡(luò)以及SVM 對火焰特征向量進(jìn)行識別分析,實驗結(jié)果表明SVM 的火焰識別準(zhǔn)確率最高。楊娜娟等人[10]在每幀火焰圖像中都用SVM 進(jìn)行識別,識別效果優(yōu)于BP 神經(jīng)網(wǎng)絡(luò)和RBF 神經(jīng)網(wǎng)絡(luò),克服了神經(jīng)網(wǎng)絡(luò)容易過學(xué)習(xí)、容易陷入局部極小點等不足。張興坤[11]同時將SVM和深度卷積神經(jīng)網(wǎng)絡(luò)(CNN)應(yīng)用于火焰檢測,實驗結(jié)果表明SVM可以進(jìn)行火焰的有效分類識別,效果良好,而CNN 模型對火焰干擾物體的分辨能力較弱,泛化能力較差。雖然SVM 在火焰識別領(lǐng)域取得了較好的成果[1-3,8-11],但是SVM 分類算法在面對規(guī)模較大的數(shù)據(jù)時通常需要進(jìn)行大量的二次規(guī)劃計算,這可能導(dǎo)致分類計算量大、分類速度慢。孿生支持向量機(jī)(Twin Support Vector Machines,TWSVM)是2007 年由Jayadeva提出,TWSVM的訓(xùn)練學(xué)習(xí)速度更快,計算復(fù)雜度更低,時間開銷上僅為SVM的1/4[12],并且TWSVM已經(jīng)成功應(yīng)用于發(fā)動機(jī)故障識別[13]、圖像分類[14]、手勢分類[15]等領(lǐng)域。本文將基于SVM且性能更優(yōu)的TWSVM理論應(yīng)用于火焰識別這個領(lǐng)域,這樣做不僅能夠得到優(yōu)于SVM 在火焰識別中的檢測效果,而且大大降低了算法的時間復(fù)雜度。另外,火焰樣本數(shù)據(jù)經(jīng)常存在不平衡的情況,也就是一個樣本數(shù)據(jù)少,一個樣本數(shù)據(jù)多,SVM往往無法很好地處理這種情況,而TWSVM還能有較好的分類效果,這是因為TWSVM可以分別對正負(fù)樣本設(shè)置不同的懲罰參數(shù),從而克服SVM 在處理樣本不平衡問題時的缺點。

      盡管TWSVM 算法在跨區(qū)域數(shù)據(jù)集上的性能通常優(yōu)于傳統(tǒng)的SVM算法,但是仍存在不足之處,其中之一就是TWSVM無法很好地處理參數(shù)選擇問題。參數(shù)對分類結(jié)果有很大的影響,不適合的參數(shù)將造成TWSVM分類精度大大降低。參數(shù)選擇的困難將會極大地限制TWSVM在火焰識別問題中的應(yīng)用,要想將TWSVM應(yīng)用到火焰識別上,TWSVM參數(shù)選擇是一個不可回避的問題。一種最常見的方法為網(wǎng)格搜索法(Grid)[16],但是這種方法非常耗時。近年來一些學(xué)者利用群體智能優(yōu)化算法來實現(xiàn)TWSVM 的參數(shù)選擇,遺傳算法(GA)是目前應(yīng)用最廣泛的優(yōu)化方法之一,然而遺傳算法中有四個參數(shù)需要選擇和優(yōu)化[17],這種算法往往使得計算成本變高。粒子群算法(PSO)[18]是另一種基于隨機(jī)軌跡的搜索模型,但它偶爾會收斂到局部最優(yōu)點或任意點,而不是全局最優(yōu)點。Ding 等人采用果蠅算法(FOA)和螢火蟲算法(GSO)對TWSVM的參數(shù)進(jìn)行優(yōu)化,但是這兩種優(yōu)化算法依然存在陷入局部最優(yōu)解的可能[19-20]。2019年李景燦等人首次將TWSVM與人工魚群算法[21](AFSA)結(jié)合來解決TWSVM 的參數(shù)選擇問題[22]。但是不足之處在于,人工魚群算法尋優(yōu)速度較慢,這使得TWSVM無法快速準(zhǔn)確地得到全局最優(yōu)解[22],TWSVM 的分類性能并不是很理想。

      應(yīng)用于TWSVM參數(shù)優(yōu)化的GA算法[17]、PSO算法[18]、FOA算法[19]、GSO算法[20]大多存在陷入局部最優(yōu)解的缺點,而人工魚群算法有著很強的逃離局部極值的能力,并在尋找全局極值點時也有著非常好的效果[23]。但是由于基本的人工魚群參數(shù)設(shè)置為固定值,缺乏自適應(yīng)性和動態(tài)調(diào)整能力,造成后期收斂速度較慢,另外在搜索后期存在大量人工魚聚集在非全局最優(yōu)解附近,或仍在漫無目的隨機(jī)游動的現(xiàn)象,導(dǎo)致魚群算法的求解效率較低[24-25],本文利用一種改進(jìn)人工魚群算法(Improved Artificial Fish Swarm Algorithm,IAFSA)對TWSVM的參數(shù)進(jìn)行優(yōu)化。首先,在魚群初始化時,利用基于聚類的魚群初始化方法來使魚群在空間上分布均勻;其次,利用自適應(yīng)參數(shù)動態(tài)調(diào)整人工魚群的視野范圍和移動步長,平衡了AFSA的全局搜索能力和局部搜索能力之間的矛盾;最后,為了提高算法的收斂性,除了經(jīng)典的人工魚群行為如覓食行為、聚群行為和追尾行為外,還提出了兩種新的行為:跳躍行為和淘汰重生行為。通過以上對基本人工魚群算法的改進(jìn),得到一種性能更加優(yōu)良的人工魚群算法,克服了基本人工魚群算法中尋優(yōu)精度低和尋優(yōu)速度較慢的缺點,實現(xiàn)對TWSVM參數(shù)的快速準(zhǔn)確選取,從而幫助TWSVM 獲得更高的分類精度,為TWSVM 應(yīng)用到火災(zāi)火焰識別領(lǐng)域提供了可行有效的思路。

      1 孿生支持向量機(jī)

      孿生支持向量機(jī)是基于支持向量機(jī)而提出來的,由于TWSVM所求解的二次規(guī)劃問題的規(guī)模是原SVM的1/4,所以從理論上來說計算效率是傳統(tǒng)SVM的4倍,極大地提高了分類效率[12]。

      假設(shè)在n維實空間Rn有m個訓(xùn)練樣本,m1個樣本屬于正類,m2=m-m1個樣本屬于負(fù)類,矩陣A∈Rm1×n代表正類的訓(xùn)練樣本,矩陣B∈Rm2×n代表負(fù)類的訓(xùn)練樣本,A和B的每一行代表一個樣本。TWSVM 的訓(xùn)練過程是尋找兩個不平行的超平面如式(1):

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

      e1是一個單位列向量,其行數(shù)與K(A,CT) 核函數(shù)相同。e2是一個單位列向量,其行數(shù)與K(B,CT)核函數(shù)相同。c1和c2是懲罰參數(shù),與線性模型的情況相似,測試樣本屬于哪一類,取決于它們更接近哪一個分類超平面。

      2 基于改進(jìn)人工魚群算法的孿生支持向量機(jī)

      2.1 基本人工魚群算法

      人工魚群算法(AFSA)主要是通過人工魚個體的覓食、聚群和追尾3種行為進(jìn)行尋優(yōu)的。在AFSA中,每條魚的位置被看作是待優(yōu)化問題的一個可行解,每個解都有一個由適應(yīng)度函數(shù)評估的適應(yīng)度值,根據(jù)待優(yōu)化問題的不同,合理的選擇不同的適應(yīng)度函數(shù)。定義初始人工魚有N條,每條人工魚狀態(tài)為Xi=[x1x2…xm]T,食物濃度(適應(yīng)度)函數(shù)定義為Yi=f(Xi),將向量Xi代入適應(yīng)度函數(shù)便能得出該位置相應(yīng)的適應(yīng)度值Yi,通過適應(yīng)度值來評價個體人工魚的好壞。dij=‖Xi-Xj‖為兩個人工魚之間的距離。在每次迭代中,人工魚通過覓食、聚群和追尾等行為來更新自己,具體的行為描述如下。

      覓食行為:假設(shè)人工魚當(dāng)前狀態(tài)為Xi,并且相應(yīng)的適應(yīng)度為Yi=f(Xi),在Xi的視野范圍內(nèi)隨機(jī)選擇另外一個狀態(tài)Xj,如果對應(yīng)的適應(yīng)度Yj >Yi,則按式(4)向Xj移動一步,否則,重新選取新的Xj判斷是否滿足前進(jìn)條件,如果嘗試Π次仍然無法前進(jìn),則按式(5)隨機(jī)移動到一個新的狀態(tài),rand(0,1)是[0,1]內(nèi)的隨機(jī)正數(shù),Step是移動的步長。

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

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

      2.2 改進(jìn)人工魚群算法

      雖然AFSA 算法具有魯棒性強、收斂性好的優(yōu)點,但在搜索效率上仍存在著后期盲目搜索、算法速度慢、優(yōu)化結(jié)果精度低等缺點。在本小節(jié)中,針對以上問題,本文對基本人工魚群算法進(jìn)行如下改進(jìn),并且詳細(xì)闡述了改進(jìn)人工魚群算法(IAFSA)的核心改進(jìn)步驟。

      (1)基于聚類的種群初始化

      基本AFSA的初始化是在可行范圍內(nèi)隨機(jī)生成的,隨機(jī)初始化可能導(dǎo)致初始種群的不均勻分布,這使得啟發(fā)式算法陷入局部最優(yōu)并影響它們的收斂性。為了克服這個缺點,提出一種基于聚類的魚群初始化方法來使魚群在空間上分布均勻,假設(shè)初始種群規(guī)模為N,誤差精度為ω,該聚類初始化步驟具體如下:

      步驟1隨機(jī)產(chǎn)生N個個體作為初始人工魚群(初始中心點),迭代計數(shù)器s=0。

      步驟2隨機(jī)產(chǎn)生M個個體,并把它們歸到離自己最近的中心點,形成N個簇。

      步驟3計算這N個簇的中心點,更新中心點的位置。

      步驟4判斷條件‖Xi(s+1)-Xi(s)‖<ω是否成立i=1,2,…,N,若滿足條件執(zhí)行步驟5,否則執(zhí)行步驟2。

      步驟5輸出這N個中心點,就產(chǎn)生了N條分布均勻的人工魚作為初始魚群。

      (2)視覺范圍和步長的改進(jìn)

      在標(biāo)準(zhǔn)人工魚群算法中,視野范圍和步長在整個迭代過程中保持不變。如果設(shè)定的視野范圍和步長較大,人工魚群更有可能跳出局部最優(yōu)解,但同時,人工魚難以進(jìn)行精確的局部搜索,降低了全局搜索的精度。如果使用較小的視野范圍和步長,它能夠進(jìn)行精細(xì)的局部搜索,但必須降低收斂速度才能達(dá)到全局最優(yōu)。

      為了平衡AFSA 的全局搜索能力和局部搜索能力之間的矛盾,本文利用式(9)和(10)自適應(yīng)地調(diào)整人工魚的視野范圍和步長。在AFSA的早期,更大的視野范圍和步長可以加快聚群行為和追尾行為的收斂速度,使得人工魚經(jīng)過較少次數(shù)的迭代后能夠快速收斂到局部和全局最優(yōu)位置。在后期,較小的視野范圍和步長使覓食行為占主導(dǎo)地位,圍繞在極值點附近的人工魚可以準(zhǔn)確地找到極值點的位置,從而找到最優(yōu)值。

      Visualmin為視野范圍的最小值,Stepmin為步長的最小值,t∈(1,2,…,t_max)為當(dāng)前迭代次數(shù),t_max 為最大迭代次數(shù),0.5<η <1。從式(9)和(10)可以看出,視野范圍和步長隨著算法的迭代不斷變小并且最終趨于Visualmin和Stepmin,如果沒有設(shè)定Visualmin和Stepmin值,Visual和Step在迭代后期將下降到一個接近零值的值,如果發(fā)生這種情況,人工魚將會失去搜索能力,算計將無法繼續(xù)迭代下去。

      Visualmin和Stepmin的設(shè)置影響著算法的性能。如果設(shè)置大的Visualmin和Stepmin值,它可能影響局部搜索的精度,如果設(shè)置小的Visualmin和Stepmin值,可能會消耗更多的時間來獲取最優(yōu)解,影響收斂速度。因此,本文設(shè)置在閾值t_des迭代次數(shù)內(nèi),Visualmin和Stepmin值保持一定值,當(dāng)?shù)螖?shù)大于閾值t_des時,Visualmin和Stepmin的值按照式(12)和(13)梯度下降的方式發(fā)生變化。

      (3)引入了跳躍行為和淘汰重生行為

      在基本人工魚群算法的覓食行為中,人工魚在嘗試Π次后如果仍然不能前進(jìn),則選擇隨機(jī)移動,這種盲目的隨機(jī)行為會導(dǎo)致算法收斂緩慢,人工魚陷入局部最優(yōu)解無法跳出。在這種情況下,如果以概率選擇一定數(shù)量的人工魚,并使其位置顯著地發(fā)生改變,人工魚群往往會跳出局部極值區(qū)域,有利于提升算法的全局搜索能力和收斂速度。這種人工魚位置的顯著性變化稱為跳躍行為,具體描述如下。

      當(dāng)?shù)螖?shù)t大于閾值t_jump且人工魚迭代后的適應(yīng)度值增量小于閾值Yχ時,為每個符合條件的人工魚生成一個介于0和1之間的隨機(jī)數(shù)。隨機(jī)數(shù)大于跳躍閾值ρ的人工魚在視野范圍內(nèi)執(zhí)行跳躍行為,如式(14),μ為跳躍系數(shù),函數(shù)random(1,m)產(chǎn)生一個1 行m列的隨機(jī)數(shù)矩陣。

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

      θ是適應(yīng)度值的增量系數(shù),Ybasic是淘汰適應(yīng)度初始值,淘汰重生閾值Yreb隨著算法迭代增加,但是它的最大值不能超過Ymax。在自然環(huán)境中,魚通常在死前盡力掙扎。類似地,這個算法中的每一條人工魚在被淘汰之前都有機(jī)會通過跳躍行為存活下來。如果人工魚跳躍行為后的食物濃度高于閾值Yreb,它將繼續(xù)生存,否則將被淘汰并重生。每隔Γ次迭代,每個人工魚都會被評估是否需要淘汰重生。每個人工魚都有足夠的時間搜索最優(yōu)值,同時遵循適者生存、弱者淘汰的原則。淘汰重生行為具體描述如下:

      當(dāng)?shù)螖?shù)t大于閾值t_rebirth時,計算每個人工魚迭代后的適應(yīng)度值Yi,判斷人工魚是否滿足跳躍行為的條件,若滿足條件,執(zhí)行跳躍行為并計算跳躍后的適應(yīng)度值Yj,否則令Yj=Yi并執(zhí)行下一步判斷;判斷是否執(zhí)行淘汰操作,如果Yj <Yreb,淘汰該人工魚,并重生新的人工魚,否則人工魚位置保持不變。每隔Γ次迭代,利用式(15)計算淘汰重生閾值Yreb,重新評估每條人工魚是否需要淘汰重生。

      2.3 IAFSA-TWSVM算法

      與SVM 相似,懲罰參數(shù)與核參數(shù)的選擇問題直接影響到TWSVM 的性能。TWSVM 常用的核函數(shù)是線性核函數(shù)、多項式核函數(shù)和高斯核函數(shù),其中以高斯核函數(shù)最為普遍。高斯核函數(shù)具有以下優(yōu)點,表達(dá)式簡單,即使輸入多個變量,復(fù)雜度也不會明顯增加;它的任何階的導(dǎo)數(shù)都存在并且具有良好的光滑性;它具有良好的性能和很強的學(xué)習(xí)能力,能夠適應(yīng)各種維度和樣本量。大量實驗結(jié)果表明,高斯核函數(shù)在TWSVM中的應(yīng)用效果良好[17-20,22]。所以本文選取該函數(shù)作為核函數(shù)進(jìn)行實驗,高斯核函數(shù)表達(dá)式如式(16):

      利用改進(jìn)人工魚群算法優(yōu)化TWSVM 的懲罰系數(shù)c1、c2和高斯核參數(shù)σ,優(yōu)化目標(biāo)是尋求最優(yōu)的參數(shù)組合(c1,c2,σ)使TWSVM的分類正確率達(dá)到最大化。參數(shù)組合(c1,c2,σ)視為人工魚的位置,采用K-折交叉驗證法(K-CV),將平均分類準(zhǔn)確率作為目標(biāo)函數(shù)值。在計算人工魚適應(yīng)度值時,將人工魚的當(dāng)前位置作為參數(shù)組合(c1,c2,σ)構(gòu)建TWSVM 模型,將訓(xùn)練樣本隨機(jī)分成大小相同的K(K=10)份,進(jìn)行十折交叉驗證,把平均分類準(zhǔn)確率作為該人工魚當(dāng)前位置的適應(yīng)度值。對于給定的訓(xùn)練樣本,利用改進(jìn)人工魚群算法優(yōu)化TWSVM參數(shù)的算法(IAFSA-TWSVM)詳細(xì)流程如下:

      步驟1初始化。設(shè)定最大迭代次數(shù)t_max、種群規(guī)模N、視野范圍最小值的初始值Visualmin、移動步長最小值的初始值Stepmin、覓食最大試探次數(shù)Π、擁擠度因子δ、閾值t_des、閾值t_jump、閾值t_rebirth、適應(yīng)度值增量閾值Yχ、跳躍閾值ρ、淘汰重生行為執(zhí)行相隔代數(shù)Γ、適應(yīng)度值的增量系數(shù)θ、淘汰適應(yīng)度初始值Ybasic等參數(shù),并且設(shè)置TWSVM 中參數(shù)組合c1、c2、σ取值范圍。

      步驟2利用2.2 節(jié)中基于聚類的方法來初始化N條人工魚。

      步驟3計算初始魚群中每條人工魚的適應(yīng)度值。對于每條人工魚,以當(dāng)前位置作為參數(shù)組合(c1,c2,σ)建立TWSVM 模型,對訓(xùn)練樣本進(jìn)行五折交叉驗證,將平均分類準(zhǔn)確率作為該魚的適應(yīng)度值。

      步驟4將魚群中適應(yīng)度值最大值作為當(dāng)前魚群的最優(yōu)值,并將對應(yīng)人工魚的位置保存在公告板中。

      步驟5魚群更新。每條人工魚分別進(jìn)行覓食、聚群和追尾行為,按步驟3 的方法計算各行為的適應(yīng)度值,選擇較優(yōu)的行為作為魚的移動方向并更新每條人工魚的位置。

      步驟6首先利用2.2 節(jié)中式(9)、(10)對視野范圍、移動步長進(jìn)行修改;判斷條件t >t_des是否滿足,若條件成立,Visualmin和Stepmin值按照式(12)和(13)梯度下降的方式發(fā)生變化,否則Visualmin和Stepmin值保持不變;判斷條件t >t_jump是否滿足,若條件成立,對符合條件的人工魚執(zhí)行跳躍行為,否則不執(zhí)行任何操作;判斷條件t >t_rebirth是否滿足,若條件成立,對執(zhí)行過跳躍行為的人工魚執(zhí)行淘汰重生行為,并且每隔Γ代后,通過式(15)計算淘汰重生閾值Yreb,重新評估每條人工魚是否需要淘汰重生,否則不執(zhí)行任何操作。

      步驟7魚群最優(yōu)值的確定。將各魚的適應(yīng)度值與公告板中的值進(jìn)行比較,如果較優(yōu)則替換,并保存相應(yīng)的位置,公告板中始終保持歷史最優(yōu)的值。

      步驟8判斷是否滿足終止條件,若是,輸出公告板中的值,即TWSVM的平均分類準(zhǔn)確率和最優(yōu)參數(shù)組合(c1,c2,σ)。否則跳轉(zhuǎn)執(zhí)行步驟5。

      IAFSA-TWSVM的流程圖如圖1所示,通過這個流程圖可以直觀地看出本文所提出算法的過程。

      圖1 IAFSA-TWSVM算法流程圖

      3 火焰圖像分割與特征提取

      火災(zāi)火焰圖像識別需要獲得圖像相關(guān)特征量,因此還需要經(jīng)過火焰圖像分割和特征提取的步驟。

      3.1 火焰圖像分割

      由于火災(zāi)在燃燒時其現(xiàn)場相對很復(fù)雜,所以單一的顏色模型可能無法很好地把火焰區(qū)域從背景區(qū)域分割出來。因此本文提出了一種RGB-YCbCr混合顏色空間模型方法,將RGB顏色空間模型和YCbCr顏色空間模型結(jié)合在一起,對火焰區(qū)域進(jìn)行分割。

      Wang等人[26]在實際的火焰數(shù)據(jù)集上將YCbCr顏色空間模型每個通道中的火焰像素值與相應(yīng)通道中的平均像素值進(jìn)行比較,得出了YCbCr顏色空間模型中火焰像素的分布特點:在Y通道中火焰區(qū)域的像素值明顯大于整個圖像的平均像素值;在Cb通道中,火焰區(qū)域的像素值小于整個圖像的平均像素值;在Cr通道中,火焰區(qū)域像素值大于整個圖像的平均像素值。上述分布特點可用式(17)~(19)表示:

      Y(i,j)、Cb(i,j)、Cr(i,j)分別為(i,j)位置的Y 通道像素值、Cb 通道像素值、Cr 通道像素值,Ymean、Cbmean、Crmean為對應(yīng)通道的平均像素值。

      申小龍等人[27]通過對隨機(jī)選取的134幅火災(zāi)圖片和945幅未發(fā)生火災(zāi)的圖片進(jìn)行RGB值統(tǒng)計分析,分析發(fā)現(xiàn)對于火焰區(qū)域的RGB 值其紅色分量值普遍較高,而綠色通道的值偏低,從而得出了在RGB 顏色空間模型中火焰像素的分布特點:R通道上的火焰像素的像素值大于G通道上的像素值。該特點可用式(20)表示:

      R(i,j)、G(i,j)分別表示在RGB顏色空間模型中(i,j)位置的R通道像素值和G通道像素值。

      為了更好地分割火焰圖像,本文分別根據(jù)YCbCr和RGB 顏色空間模型中的火焰像素分布特點來提取火焰。然后對同時滿足以上兩種條件的像素點進(jìn)行整理,最終得到完整的火焰目標(biāo)區(qū)域,火焰圖像分割的流程圖如圖2所示。

      圖2 火焰圖像分割流程圖

      RGB-YCbCr 混合顏色空間模型的火焰圖像分割效果示例圖如圖3 所示,從中可以看出,本文所使用的RGB-YCbCr混合顏色模型能夠有效地從背景區(qū)域分割出火焰目標(biāo)區(qū)域。

      3.2 火焰圖像特征提取

      早期火災(zāi)火焰的顏色、形態(tài)和紋理不斷變化,對火焰的這些特殊特征進(jìn)行提取,能夠作為很好的火災(zāi)火焰識別依據(jù)。本文選取常用的顏色矩、圓形度、紋理特征作為火焰圖像識別的判據(jù)。

      圖3 RGB-YCbCr混合顏色空間模型的火焰圖像分割效果示例圖

      (1)顏色矩。利用火焰圖像的低階顏色矩就能夠描述顏色的存在狀態(tài),因為圖像的顏色分布主要集中在低階矩。圖像的一階顏色矩M1、二階顏色矩M2、三階顏色矩M3分別表示圖像的平均顏色、標(biāo)準(zhǔn)方差以及二次根非對稱性,其表達(dá)式如式(21)~(23):

      其中,L代表的是圖像的總像素集合,Y(p(i,j))代表的是在YCbCr顏色空間模型中,火焰目標(biāo)區(qū)域p的(i,j)位置的Y通道分量值。

      (2)圓形度?;鹧娴男螤钕鄬τ诟蓴_物(如蠟燭火焰、照明燈等)則顯得不是那么有規(guī)律,所以圓形度可以作為火災(zāi)火焰識別的另一個重要的判據(jù)。圓形度是圖元面積和周長之比,其表達(dá)式如式(24):

      其中,Ai、Pi、Mi分別是第i個圖元的面積、周長、圓形度。周長為物體的邊界長度,從邊界鏈碼中得到,面積通過統(tǒng)計亮點數(shù)獲得。

      (3)紋理特征。紋理特征是表示目標(biāo)區(qū)域像素灰度空間分布的另一個重要特征,本文利用灰度共生矩陣中的能量(ASM)、熵(ENT)、關(guān)聯(lián)度(COR)和慣性矩(CON) 四個量來表示火焰識別問題的紋理特征,如式(25)~(28)所示。ph(i,j)為目標(biāo)火焰區(qū)域的灰度值分別為i和j的像元對的概率,μx、σx、μy、σy分別為px(i)=的均值和標(biāo)準(zhǔn)方差。

      4 實驗結(jié)果和分析

      在本章中,從互聯(lián)網(wǎng)網(wǎng)站下載327幅火焰圖像進(jìn)行火焰識別測試,其中223 幅火焰圖像,其余104 幅為蠟燭、燈光等干擾圖像。實驗選取了樣本總數(shù)的70%,即229幅圖像(156幅火焰圖像和73幅干擾圖像)作為訓(xùn)練集,30%的樣本(67 幅火焰圖像和31 幅干擾圖像)作為測試集。如3.1節(jié)所述,根據(jù)RGB-YCbCr混合顏色空間模型中火焰像素的分布特點對火焰圖像進(jìn)行分割,然后提取每個圖像的各個分量的顏色矩、圓形度和紋理特征作為特征向量,作為TWSVM 分類器模型的訓(xùn)練和測試樣本。實驗在Matlab 環(huán)境下實現(xiàn),硬件配置為Windows 10 操作系統(tǒng),8 GB 內(nèi)存,1 TB 硬盤,i5-4210H和2.90 GHz主頻CPU的計算機(jī)。

      為了證明所提出的IAFSA-TWSVM 的有效性,選取傳統(tǒng)支持向量機(jī)(SVM)、基于網(wǎng)格搜索的孿生支持向量機(jī)(Grid-TWSVM)、基于遺傳算法的孿生支持向量機(jī)(GA-TWSVM)[17]、基于粒子群算法的孿生支持向量機(jī)(PSO-TWSVM)[18]、基于果蠅算法的孿生支持向量機(jī)(FOA-TWSVM)[19]、基于螢火蟲算法的孿生支持向量機(jī)(GSO-TWSVM)[20]、基于人工魚群算法的孿生支持向量機(jī)(AFSA-TWSVM)[22]作為對比實驗,與IAFSA-TWSVM進(jìn)行比較。為了保證算法對比的公平性,如2.3節(jié)所述,實驗中所有智能優(yōu)化算法的適應(yīng)度函數(shù)為采用十折交叉驗證方法得到的平均分類準(zhǔn)確率。由于啟發(fā)式算法得到的結(jié)果對于每個運行周期可能不完全相同,因此每個算法運行5 次,每次算法最大迭代次數(shù)為100,并將5次中的最優(yōu)適應(yīng)度值相對應(yīng)的(c1,c2,σ)作為TWSVM的最優(yōu)參數(shù)。表1 給出了不同算法尋找到的最優(yōu)參數(shù)(c1,c2,σ),最優(yōu)參數(shù)對應(yīng)的最優(yōu)適應(yīng)度值,算法運行5次的平均參數(shù)尋優(yōu)時間。

      圖4給出了IAFSA-TWSVM、AFSA-TWSVM、PSOTWSVM、GA-TWSVM、GSO-TWSVM、FOA-TWSVM 6種智能優(yōu)化算法運行5次最優(yōu)的參數(shù)尋優(yōu)過程曲線。

      圖4 不同算法參數(shù)尋優(yōu)過程曲線

      表1 不同算法參數(shù)尋優(yōu)結(jié)果比較

      實驗利用參數(shù)尋優(yōu)得到的最優(yōu)參數(shù)(c1,c2,σ)作為最終選定的TWSVM參數(shù),在全部訓(xùn)練集上建立TWSVM模型,并對剩余的30%測試集進(jìn)行測試。

      考慮到近年來深度學(xué)習(xí)的快速發(fā)展,以及卷積神經(jīng)網(wǎng)絡(luò)(CNN)在圖像分類上的卓越表現(xiàn),本文將其應(yīng)用于火焰識別作為對比實驗。為了與SVM和TWSVM算法進(jìn)行比較,該對比實驗使用3.1 節(jié)火焰分割方法獲得火焰目標(biāo)區(qū)域,減少了無關(guān)干擾物的影響同時壓縮了輸入CNN 模型的圖像大小和數(shù)據(jù)量,然后送入卷積神經(jīng)網(wǎng)絡(luò)進(jìn)行訓(xùn)練。本實驗選用具有很強擴(kuò)展性且泛化能力良好的VGGNet-16[28]深度卷積神經(jīng)網(wǎng)絡(luò)來構(gòu)建火焰圖像識別網(wǎng)絡(luò)模型。另外由于火焰目標(biāo)可能只存在火焰圖像的某些位置,本實驗將適用于實時目標(biāo)檢測的Fast R-CNN 算法[29]和YOLO 算法[30]也作為對比算法進(jìn)行比較。

      對于二分類問題,ROC(Receiver Operating Characteristic)曲線分析和混淆矩陣(Confusion Matrix)是分類器比較的重要性能指標(biāo)。實驗利用測試集的分類結(jié)果可以獲得混淆矩陣的四個基本指標(biāo):TP(True Positive)即真陽性、FP(False Positive)即假陽性、FN(False Negative)即假陰性、TN(True Negative)即真陰性。基于以上四個基本指標(biāo),利用式(29)~(32)可以計算出準(zhǔn)確率(Accuracy)、精確率(Precision)、召回率(Recall)、精確率和召回率的調(diào)和平均數(shù)F1分?jǐn)?shù)(F1score)。

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

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

      表2 不同算法性能指標(biāo)比較

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

      圖5 測試集上不同方法的ROC曲線

      5 結(jié)束語

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

      猜你喜歡
      魚群適應(yīng)度火焰
      《火焰》
      改進(jìn)的自適應(yīng)復(fù)制、交叉和突變遺傳算法
      最亮的火焰
      漂在水上的火焰
      魚群漩渦
      中外文摘(2017年19期)2017-10-10 08:28:41
      吹不滅的火焰
      學(xué)與玩(2017年6期)2017-02-16 07:07:22
      基于空調(diào)導(dǎo)風(fēng)板成型工藝的Kriging模型適應(yīng)度研究
      中國塑料(2016年11期)2016-04-16 05:26:02
      基于改進(jìn)魚群優(yōu)化支持向量機(jī)的短期風(fēng)電功率預(yù)測
      電測與儀表(2016年3期)2016-04-12 00:27:44
      基于人工魚群算法的光伏陣列多峰MPPT控制策略
      多子群并行人工魚群算法的改進(jìn)研究
      织金县| 竹溪县| 台南市| 任丘市| 杭锦后旗| 赣州市| 界首市| 辰溪县| 洛隆县| 大城县| 青浦区| 临朐县| 崇州市| 潼关县| 宜春市| 醴陵市| 青州市| 沅陵县| 佛山市| 泌阳县| 民县| 泗水县| 江陵县| 政和县| 平潭县| 富锦市| 巨鹿县| 大荔县| 长宁区| 关岭| 雅安市| 南雄市| 达尔| 新丰县| 达州市| 阿拉善右旗| 石家庄市| 从江县| 秦皇岛市| 澄城县| 泽普县|