国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于LightGBM模型的魚類異常行為檢測

2020-05-02 08:20袁紅春陳冠奇張?zhí)祢?/span>吳若有
漁業(yè)現(xiàn)代化 2020年1期
關(guān)鍵詞:斑馬魚游動魚群

袁紅春,王 丹,陳冠奇,張?zhí)祢?,吳若?/p>

(上海海洋大學 信息學院,上海 201306)

隨著中國工業(yè)化進程的不斷加快,水污染問題日趨嚴重。據(jù)2017年長江流域廢污水調(diào)查統(tǒng)計資料顯示,長江流域廢污水排放量高達353.2億t,因此加強水污染監(jiān)測顯得尤為重要[1]。傳統(tǒng)理化監(jiān)測存在操作復雜、分析時間長的問題,而生物式水質(zhì)監(jiān)測可以依據(jù)被監(jiān)測生物在水體環(huán)境中的變化對水質(zhì)做出評價,監(jiān)測操作流程較為簡單,成本也相對低廉[2-4]。魚類作為生物式水質(zhì)監(jiān)測中常用的指示生物,其生理特征、行為特征等可以直觀反映水體情況。如何對魚類行為進行量化,并準確識別已經(jīng)成為當前的研究熱點。

目前,眾多學者利用計算機視覺技術(shù)對魚類行為進行識別和量化研究[5]。如Suzuki等[6]利用計算機視覺技術(shù)和Higuchi方法對時間序列數(shù)據(jù)的魚群行為進行分析,證明該方法對定量評估魚類行為的有效性,但未發(fā)現(xiàn)模型中心結(jié)構(gòu)對魚群行為有明顯影響。Kato等[7]利用空間矩法計算魚的重心得到其運動軌跡,并開發(fā)一套計算機圖像系統(tǒng)來量化斑馬魚游動行為,但該系統(tǒng)不能對魚群進行三維跟蹤分析。Liu等[8]利用計算機視覺技術(shù)監(jiān)測大西洋鮭魚攝食活躍度,但其對硬件設備要求較高,實現(xiàn)難度較大。Zhou等[9]基于卷積神經(jīng)網(wǎng)絡和計算機視覺方法對魚類攝食強度進行有效分級,但是該深度學習方法需要大量樣本數(shù)據(jù)才能取得較好的分類效果。范良忠等[10]利用改進的幀間差分法實現(xiàn)運動魚群的檢測,雖然較完整保留魚的輪廓信息但存在較多噪聲。在此基礎上,國內(nèi)外學者通過分析魚類的異常行為進行水體質(zhì)量的監(jiān)測研究。Ma等[11]基于神經(jīng)網(wǎng)絡機制對魚群軌跡的變化頻率進行分析,并通過區(qū)分魚類的異常行為實現(xiàn)水質(zhì)監(jiān)測,但需要提前提供魚群正常游動的數(shù)據(jù)。Cazenave等[12]利用計算機圖像處理系統(tǒng)實現(xiàn)青鳉魚異常游動速度和活動量的量化。盧煥達等[13]利用壓縮感知分類方法實現(xiàn)低溶氧脅迫下的魚群異常行為檢測。程淑紅等[14]提取魚群運動行為特征參數(shù)構(gòu)建水質(zhì)評價因子數(shù)據(jù)庫,并利用XGBoost算法實現(xiàn)魚類異常行為的檢測。于欣等[15]借助光流法得到目標魚群的運動矢量,并使用NMI和LDOF方法檢測魚群異常行為。

雖然現(xiàn)有研究取得了一定的試驗效果,但選取的特征參數(shù)較多,復雜度高,較難投入實際使用,而且也沒有考慮異常水質(zhì)中魚類的體色變化。所以,針對以上問題提出一種基于LightGBM模型的魚類異常行為檢測,使用較少的特征得到較高的準確率。

1 材料與方法

1.1 材料

以紅色斑馬魚(red zebrafish)為試驗魚。為保證試驗結(jié)果的準確性,試驗前先將10條長18~23 mm的斑馬魚在養(yǎng)殖環(huán)境中飼養(yǎng)數(shù)日,使其充分適應試驗環(huán)境。試驗所用玻璃魚缸為38 cm×26 cm×27 cm,水位高5 cm,水溫控制在19~22 ℃。

1.2 數(shù)據(jù)采集系統(tǒng)

試驗所用的視頻采集系統(tǒng)如圖1所示,該系統(tǒng)主要由養(yǎng)殖魚缸、過濾器、攝像機、計算機和照明裝置組成。試驗選用索尼NEX-FS700R攝像機以25幀/s進行視頻拍攝,所采集的圖像分辨率為1 920×1 080像素,格式為jpg。試驗中,分正常和異常兩個階段進行斑馬魚行為的數(shù)據(jù)采集,首先對處于穩(wěn)定狀態(tài)的斑馬魚進行拍攝,然后向魚缸中加入質(zhì)量濃度5%的次氯酸鈉(NaClO)溶液對魚群進行刺激。拍攝后期使用Pycharm軟件對采集的圖像進行處理,并選取連續(xù)幀進行試驗研究。

圖1 視頻采集系統(tǒng)Fig.1 Video acquisition system

2 數(shù)據(jù)處理和試驗流程

2.1 試驗流程

斑馬魚異常行為檢測的試驗流程如圖2所示,主要包括圖像采集、圖像預處理、特征提取、模型搭建和異常行為檢測等。試驗中首先對采集的視頻以每隔1 s截取一幀的頻率進行視頻剪輯,并選用正常和異常行為共3 000張圖像進行研究;再使用圖像處理方法對斑馬魚圖像進行灰度二值化、濾波去噪和形態(tài)學處理;然后基于灰度共生矩陣和LK光流法提取魚群的紋理特征和方向矢量特征,并對其進行歸一化處理;最后通過搭建算法模型實現(xiàn)斑馬魚異常行為的檢測。

圖2 斑馬魚異常行為檢測流程圖Fig.2 Flow chart of zebrafish abnormal behavior detection

2.2 圖像預處理

為降低外界環(huán)境對圖像質(zhì)量造成的影響,試驗中使用圖像處理技術(shù)對采集的斑馬魚圖像進行預處理操作。試驗中先對圖像進行灰度二值化處理,采用中值濾波方法去除圖像噪聲,對采集的圖像進行直方圖均衡化處理,通過背景減法提取目標魚群。

就斑馬魚游動而言,其在正常情況下游動緩慢,且游動時水面較為平靜,而當遇到外部刺激時,魚群游動速度突變,出現(xiàn)到處亂竄的行為,并會引起水面較大的波動,圖像紋理也會發(fā)生改變。因此,本研究將水面抖動和水花也作為魚群紋理特征變化的因素。圖3為斑馬魚異常行為檢測的彩色圖像和灰度圖像。

2.3 灰度共生矩陣

灰度共生矩陣(GLCM)[16]是一種基于數(shù)學統(tǒng)計理論的特征提取方法,該方法能反映存在一定空間位置關(guān)系的兩像素間的灰度關(guān)系,是描述圖像紋理特征的基礎[17]。根據(jù)斑馬魚異常前后行為的變化情況,選取能量、熵、對比度、逆差矩和相關(guān)度等5種參數(shù)用于圖像紋理特征的描述。

在計算灰度共生矩陣時,選取運動角度θ在0°、45°、90°和135°等4個方向上的能量(ASM)、熵(Ent)、對比度(Con)、相關(guān)度(Cor)和逆差距(IDM)共20維特征,對應的特征值見表1。

圖3 斑馬魚異常行為檢測的彩色圖像和灰度圖像Fig.3 Color image and grayscale image of zebrafish abnormal behavior detection

表1 魚類異常行為檢測的灰度共生矩陣特征值Tab.1 Characteristic values of GLCM for fish abnormal behavior detection

2.4 LK光流法

Lucas-Kanade(LK)光流法[18]是基于亮度恒定、小運動和空間一致假設的兩幀差分光流估算法?;贚K光流法計算運動矢量場,引入信息熵[19]定義魚群混亂指數(shù)。計算魚群信息熵的步驟如下:

1)首先用等距采樣法[20]選取圖像的特征點,再利用LK光流法計算特征點的光流。光流方程如式(1):

I(x,y,t)=I(x+Δx,y+Δy,t+Δt)

(1)

由泰勒公式展開I(x,y,t)得到式(2):

Ixu+Iyv+It=0

(2)

式中:I(x,y,t)表示一個像素點(x,y)在t時刻的亮度值;Ix,Iy,It分別是其x,y,t的偏導數(shù),u(像素/s)、v(像素/s)分別表示X,Y軸方向的光流速度分量。

2)假設在局部小空間(u,v)內(nèi)亮度是恒定的,可得:

(3)

(4)

3)斑馬魚的運動角度可以表述為:

(5)

式中:θ表示運動角度。

4)將運動角度θ∈(0°,360°)均勻分為8個區(qū)間,建立運動角度方向直方圖統(tǒng)計每一幀圖像的方向分布概率。直方圖h定義為:

h(i)={ki,0

(6)

式中:n代表8個不同的方向;ki代表每個方向包含的運動方向矢量數(shù)。

5)根據(jù)直方圖進一步計算運動方向分布概率P:

(7)

式中:m代表每幀圖像的運動方向矢量總數(shù)。

6)最后根據(jù)方向分布概率得到魚群運動信息熵E:

(8)

式中:ci代表圖像幀數(shù)。

光流法是利用圖像序列中像素隨時間變化以及相鄰幀之間關(guān)系找到上一幀跟當前幀之間的聯(lián)系,得到運動目標的信息。圖4a中黑點是根據(jù)等距采樣法選取的圖像特征點,再利用LK光流法計算特征點運動矢量;圖4b和圖4c是根據(jù)連續(xù)兩幀視頻圖像分別計算得到斑馬魚正常和異常游動的光流矢量場例子,特征點的運動速度和方向如圖中黑色箭頭長短和方向所示,線段越長,則斑馬魚的運動速度越快;方向變化角度越大,則斑馬魚的運動方向變化越大。

圖4 魚群運動特征示意圖Fig.4 Chart of fish school movement characteristics

通過斑馬魚群的運動矢量可以得到魚群運動方向分布概率(圖5)。斑馬魚正常游動時方向趨于一致,在1、2、3、7方向游動的魚較少,大部分集中在4、5、6方向游動;相反,斑馬魚異常游動時,各個方向的魚分布較為均勻。另外,由圖5概率分布計算得到此時正常游動的魚群信息熵為0.729,異常游動的魚群信息熵為0.886,也反映出魚群處于正常游動的時候熵值較小,魚群處于異常的無序狀態(tài)熵值較大。

2.5 特征歸一化

為了防止數(shù)據(jù)特征差異過大,異樣值干擾試驗結(jié)果,對提取的紋理特征和信息熵進行歸一化處理,數(shù)據(jù)統(tǒng)一映射到[-1,0]區(qū)間上。min-max標準化公式[22]為:

(9)

式中:x和x*分別為變量歸一化處理前后的值;xmin和xmax分別是樣本數(shù)據(jù)中的最小值和最大值。

圖5 魚群運動方向概率分布圖Fig. 5 Probability distribution of fish school movement direction

2.6 LightGBM模型

LightGBM是微軟公司在2017年提出的一種基于決策樹的梯度提升框架[23]。LightGBM在傳統(tǒng)的梯度提升樹(GBDT)上優(yōu)化,使用直方圖優(yōu)化(Histogram)算法和更高效的葉子生長(Leaf-wise)策略。Histogram算法將連續(xù)的浮點特征離散化至N個整數(shù),并構(gòu)造寬度為N的直方圖。通過遍歷數(shù)據(jù)形成離散值累計數(shù)據(jù)的直方圖,再根據(jù)直方圖的離散值找到最優(yōu)分割點。如圖6所示,將原本連續(xù)的#data個數(shù)據(jù)離散化到N個直方圖中,由原來算法的時間復雜度0(#data×#features)變成Histogram算法需要的時間復雜度0(#bins×features),不僅減少了內(nèi)存開銷而且加快運算速度。

圖6 直方圖優(yōu)化算法Fig.6 Histogram optimization algorithm

LightGBM采用的Leaf-wise如圖7所示,其中,黑點代表分裂增益最大的葉子,白點代表非最大葉子。每次在同層葉子中選取最大增益葉子進行分裂,如此循環(huán),相比按層生長(Level-wise)策略[24],不加以區(qū)分同一層的葉子,造成不必要的搜索和分裂。Leaf-wise在精度與誤差方面顯然更具優(yōu)勢,同時該生長策略還可以限制最大深度防止過擬合現(xiàn)象。

圖7 葉子生長策略Fig.7 Leaf-wise tree growth

3 試驗與結(jié)果分析

3.1 試驗設計

試驗環(huán)境為Windows10專業(yè)版,64位操作系統(tǒng),16 GB內(nèi)存,CPU為Intel(R) Core(TM) i7-6700,分析平臺為PyCharm 2019。以8∶2劃分數(shù)據(jù)集,即訓練集2 400張圖像,測試集600張圖像。設置兩類標簽,1表示斑馬魚正常游動的圖像,0表示斑馬魚異常游動的圖像,利用融合后的特征對LightGBM進行訓練,并與傳統(tǒng)的SVM算法和DNN算法進行對比。試驗中LightGBM模型通過網(wǎng)格搜索方法(GridSearchCV)對學習率、迭代次數(shù)、葉節(jié)點數(shù)和樹的最大深度4個參數(shù)進行自動尋優(yōu)。首先設置較大的學習率(learning rate)=0.1,初始迭代次數(shù)(n estimators)=64,為了防止過擬合葉子結(jié)點樹(num leaves)不超過2max_depth(max_depth為樹的最大深度),目標函數(shù)(objective)為二分類(binary),其他參數(shù)使用默認值;然后利用GridSearchCV函數(shù)尋找最優(yōu)參數(shù);最后得到最優(yōu)學習率為0.01,迭代次數(shù)為192,樹的最大深度為7,葉子結(jié)點樹為100。

對比試驗中支持向量機(SVM)算法選擇sklearn的SVC函數(shù),采用徑向基核函數(shù)。深度神經(jīng)網(wǎng)絡(DNN)算法采取5層結(jié)構(gòu),在第1層到第4層使用線性修正(ReLu)激活函數(shù),最后一層使用sigmoid函數(shù)。

3.2 結(jié)果分析

使用plot _importance函數(shù)展示特征對模型的重要度,如圖8所示,縱坐標為各個特征,橫坐標為特征重要分數(shù),結(jié)合特征間的相關(guān)性依次獲得特征(8、10、16、20、6、4、19、0、11、12、5、3、9、15、2、7、13、14、1、18、17 )對識別斑馬魚異常行為的重要程度。由此得出特征8代表0°方向的對比度、特征10代表135°方向的對比度、特征16代表0°方向的逆差距、特征20代表魚群的運動信息熵等,對LightGBM模型有效檢測魚類異常行為更為重要。

圖8 各個特征對模型的重要度Fig.8 The importance of each feature to the model

由于魚群紋理信息在0°、45°、90°和135°這4個方向的變化趨勢較為相似,所以選取0°方向的能量、熵、對比度、逆差距和相關(guān)度進行分析。選取斑馬魚從正常游動到滴入次氯酸鈉溶液后游動整個過程的500張圖片,獲得其0°方向魚群紋理特征變化的曲線圖(圖9),可以發(fā)現(xiàn)在0~250幀,魚群處于較為穩(wěn)定的游動狀態(tài),能量、熵、對比度和逆差矩4個數(shù)值波動較小,雖然相關(guān)度的變化相對不是很明顯,但從滴入次氯酸鈉溶液的第250幀圖像開始,這5個數(shù)值出現(xiàn)了忽高忽低的情況,整個曲線呈現(xiàn)較為明顯的上下波動,說明魚群處于混亂的異常狀態(tài)。

由試驗結(jié)果(表2)可知,支持向量機SVM算法的準確率為73.2%,深度神經(jīng)網(wǎng)絡DNN算法的準確率達到98%,LightGBM模型相比這兩個模型,分類準確率最高達到98.5%,能很好地檢測魚類異常行為。SVM比較適用于小樣本的分類學習,當樣本容量變大,參數(shù)調(diào)節(jié)和函數(shù)選擇則變得敏感,會直接影響魚類異常行為識別效果。DNN算法通過加深網(wǎng)絡層數(shù),使用激活函數(shù)增強模型的非線性性,同時可以容納更多的神經(jīng)元提高模型的擬合能力,但是至少需要迭代50次才能得到較高的準確率。由于神經(jīng)網(wǎng)絡為黑盒模型,無法對訓練權(quán)重和各個屬性對分類結(jié)果的影響進行有效分析。LightGBM在尋找特征最優(yōu)分裂點、減少樣本數(shù)目上進行優(yōu)化提高了分類的準確度,同時優(yōu)化了對類別特征的支持,可以直接輸入類別特征,提高空間和時間效率;還可以進行特征重要度分析。此外,用精確率、召回率、F1值評估模型性能,可以從預測結(jié)果角度體現(xiàn)分類結(jié)果的準確度;召回率則從原始數(shù)據(jù)角度來體現(xiàn)分類的完備性;而F1值是精確率和召回率的調(diào)和平均值,綜合反映分類的性能。由表2可知,LightGBM的精確率為98.51%、召回率為98.5%和F1為98.5%,3個值都高于另外兩個模型,可以更準確地識別魚類異常行為。

基于灰度共生矩陣和稀疏光流法,能夠提取靜態(tài)紋理特征和運動矢量特征并進行融合,能夠滿足對魚類異常行為檢測的需要。同時,為了測試模型的性能,對各個算法的訓練時間和在測試集數(shù)據(jù)的檢測時間進行對比(表3),在600幀的數(shù)據(jù)集上,3種算法的檢測時間都小于0.5 s,雖然SVM相對訓練時間最短,但是準確率不高無法滿足魚類異常行為檢測的基本需求。DNN算法為了提高精度而加深網(wǎng)絡層數(shù),導致權(quán)重向量數(shù)目過多,網(wǎng)絡擬合緩慢,訓練時間較長。LightGBM的直方圖算法將連續(xù)的特征值分散,加快了訓練速度,帶深度限制的葉子生長策略容易進行多線程優(yōu)化,控制模型的復雜度,因此,LightGBM模型訓練時間較短。在3個算法中,LightGBM的測試時間最短、準確率高、內(nèi)存占用少,為后期能夠?qū)崟r監(jiān)測魚類行為、高效處理海量圖片數(shù)據(jù)奠定了基礎。

圖9 0°方向魚群的紋理特征Fig.9 Texture features of fish school in the 0° direction

表2 不同模型的評價指標Tab.2 Evaluation indexes of each model

注:F1值為調(diào)和平均值,LightGBM為輕量化梯度促進機,DNN為深度神經(jīng)網(wǎng)絡,SVM為支持向量機,下同

表3 不同模型的處理時間對比Tab.3 Comparison of processing time between different models

4 結(jié)論

提出一種基于LightGBM模型的魚類異常行為的檢測方法。首先利用灰度共生矩陣提取斑馬魚的紋理特征,然后利用LK光流算法得到斑馬魚的運動矢量,從實際問題考慮,魚類的異常行為主要表現(xiàn)在運動速度突變或者運動方向改變,選取魚類運動方向建立方向直方圖,并據(jù)此計算魚群信息熵來表示圖像中魚群運動方向的混亂程度;最后將提取的紋理特征和魚群信息熵使用LightGBM模型對魚類異常行為進行檢測。相比DNN神經(jīng)網(wǎng)絡和SVM算法,LightGBM不僅精度高,而且占用內(nèi)存少、運算速度快。研究表明,有效的特征提取可以提高魚類異常行為檢測的精確度。雖然對魚類異常檢測的精度較好,但自然條件下水質(zhì)環(huán)境較為復雜,在后續(xù)研究中需要考慮魚類行為的其他特征(如運動加速度、游動軌跡),進一步提高模型的魯棒性。

猜你喜歡
斑馬魚游動魚群
持續(xù)光照建立斑馬魚失眠模型及評價
小斑馬魚歷險記
把手放進袋子里
人工魚群算法在雷達探測器射頻端電路設計中的應用
魚群漩渦
朱夢琪??《魚群》
斑馬魚
小斑馬魚的奇遇
具功能反應食餌捕食模型動力學分析
父親
莆田市| 若尔盖县| 汪清县| 苗栗市| 崇明县| 扎兰屯市| 静海县| 五家渠市| 凤翔县| 石渠县| 崇明县| 申扎县| 武汉市| 黔南| 政和县| 荆门市| 宜昌市| 昭平县| 普洱| 张北县| 法库县| 贵溪市| 灵宝市| 涟源市| 通许县| 朝阳县| 白城市| 新乐市| 黔江区| 广丰县| 凌海市| 长白| 长沙县| 通化县| 雅安市| 淮南市| 娄底市| 溆浦县| 商南县| 华坪县| 璧山县|