顏鵬東 譚均軍 高 柱 戴會超, 石小濤 黃太安
(1. 三峽庫區(qū)生態(tài)環(huán)境教育部工程研究中心, 三峽大學(xué), 宜昌 443002; 2. 河海大學(xué)水利水電學(xué)院, 南京 210098)
大壩的建設(shè)阻隔了魚類的洄游通道, 致使魚類資源不斷減少, 物種多樣性趨于降低[1,2]。以魚道為主要代表的過魚設(shè)施, 是協(xié)助魚類順利上行或下行過壩的常見手段, 對維持河流生態(tài)系統(tǒng)連通性、保護(hù)珍稀魚類、維持生物多樣性具有重要作用[3,4]。豎縫式魚道作為一種協(xié)助魚類恢復(fù)其洄游通道的生態(tài)補(bǔ)償措施, 受到廣泛關(guān)注[5]。由于豎縫式魚道池室中的水流急劇變化, 魚類在不同水流條件下會產(chǎn)生不同的運(yùn)動(dòng)行為[6,7]; 而過魚對象運(yùn)動(dòng)能力與魚道池室內(nèi)水力條件是否相適應(yīng)是進(jìn)行魚道設(shè)計(jì)的關(guān)鍵, 因而, 獲取魚類在魚道中的運(yùn)動(dòng)行為至關(guān)重要。
魚的運(yùn)動(dòng)軌跡在一定程度上能反映魚與所處的水流條件是否相適應(yīng), 魚在水中的運(yùn)動(dòng)速度、加速度是魚類游泳行為的重要指標(biāo)。目前獲取魚的運(yùn)動(dòng)行為最基礎(chǔ)、最常用的方法為水槽試驗(yàn)法。水槽試驗(yàn)有目視、錄像、照相等觀測方法, 并可借助計(jì)算機(jī)對實(shí)測資料和數(shù)據(jù)進(jìn)行處理、分析。徐盼麟等[8]提出了一種基于單攝像機(jī)的魚類三維觀測方法, 該方法雖然實(shí)現(xiàn)了自動(dòng)輸出魚的三維坐標(biāo)、實(shí)時(shí)速度、方向等參數(shù), 且生成完整的魚類三維軌跡, 但僅適用于靜水狀態(tài)下魚缸中魚的運(yùn)動(dòng)監(jiān)測。石小濤等[9]采用SwisTrack軟件對圓形水槽中鰱幼魚的二維運(yùn)動(dòng)軌跡進(jìn)行了分析。柯森繁等[10]采用基于Matlab的方法分析封閉水槽中白鰱的擺尾頻率、擺尾幅度、速度和加速度。上述研究工作使得魚類運(yùn)動(dòng)行為的高效捕捉成為可能, 但均僅適用于水流較為平緩的水槽。相比較而言, 豎縫式魚道中存在渦流, 紊動(dòng)強(qiáng)度較大, 因此上述工作中的魚類運(yùn)動(dòng)行為獲得方法, 特別是運(yùn)動(dòng)軌跡提取方法在豎縫式魚道中的應(yīng)用還有待實(shí)踐檢驗(yàn), 但上述研究思路為豎縫式魚道內(nèi)魚的運(yùn)動(dòng)行為的提取提供了很好的借鑒方法。
本文利用基于Matlab的視頻圖像跟蹤方法, 獲取豎縫式魚道內(nèi)魚的運(yùn)動(dòng)軌跡、運(yùn)動(dòng)速度和加速度, 以期為豎縫式魚道提供有用的信息參考。
本試驗(yàn)選用體長為10—15 cm的草魚作為目標(biāo)魚種, 暫養(yǎng)期間, 將目標(biāo)魚置于與試驗(yàn)室循環(huán)水水溫相同的水體中暫養(yǎng)數(shù)天, 期間24h持續(xù)充氧, 正式試驗(yàn)前禁食24h。視頻圖像在如圖1所示的試驗(yàn)裝置圖中得到, 包括豎縫式魚道、紅外攝像頭、計(jì)算機(jī)錄像采集系統(tǒng)。豎縫式魚道長為7.0 m, 水槽寬0.5 m、高0.7 m, 魚道末端設(shè)有尾門。魚道池室段共包括5個(gè)大小相同的池室, 單個(gè)池室寬度為0.5 m,單個(gè)池室長度為0.625 m, 豎縫寬度為0.25 m。豎縫擋板材料為厚度1 cm的聚乙烯硬板, 模型擋板側(cè)邊和底部均采用有機(jī)玻璃膠固定。
圖1 試驗(yàn)裝置圖Fig. 1 Experiment installation diagram
試驗(yàn)前, 在池室入流段和出流段中分別布置攔漁網(wǎng), 防止試驗(yàn)時(shí)魚游出魚道入口和出口。每次試驗(yàn)時(shí), 將單條魚放入池室1的出水口處, 從撤掉攔魚網(wǎng)時(shí)開始計(jì)時(shí)并進(jìn)行攝像。以40min為1個(gè)放魚試驗(yàn)時(shí)間段, 若單條魚成功游到池室5的進(jìn)水口處, 即設(shè)定單條魚成功上溯, 單條魚的運(yùn)動(dòng)軌跡試驗(yàn)完成。分別采用人工計(jì)數(shù)和基于Matlab編程開發(fā)的視頻圖像跟蹤方法獲取魚的運(yùn)動(dòng)軌跡。2種方法的詳細(xì)應(yīng)用見第1.2節(jié)。
視頻圖像跟蹤方法視頻圖像跟蹤方法是基于Matlab軟件平臺專門開發(fā)的用于跟蹤魚的運(yùn)動(dòng)軌跡、輸出魚的運(yùn)動(dòng)行為參數(shù)的程序, 可實(shí)時(shí)、準(zhǔn)確輸出魚的運(yùn)動(dòng)軌跡、運(yùn)動(dòng)速度、加速度等行為參數(shù), 將其以文本形式輸出并保存(圖2)。
基于Matlab的視頻圖像跟蹤方法基本流程如圖3, 包括視頻輸入、圖像處理以及魚的運(yùn)動(dòng)軌跡、運(yùn)動(dòng)速度、加速度等數(shù)據(jù)輸出。該方法將豎縫式魚道魚類游動(dòng)視頻導(dǎo)入Matlab程序, 通過將視頻圖像灰度化、混合高斯建模以及背景差分等處理, 采用分塊自適應(yīng)閾值獲取效果較好的圖像; 并進(jìn)一步對處理后的圖像進(jìn)行連通域分析、形心點(diǎn)確定, 最后輸出魚的運(yùn)動(dòng)軌跡及魚的運(yùn)動(dòng)速度、加速度等數(shù)據(jù)。
(1) 讀取視頻圖像的每一幀, 將圖像轉(zhuǎn)換到灰度空間得到灰度圖像, 并采用混合高斯背景模型對灰度化的圖像進(jìn)行背景建模, 得到背景圖像;
(2) 采用背景差分法提取前景圖像, 將豎縫式魚道作為感興趣區(qū)域(Region of interest, ROI), 只提取ROI中的運(yùn)動(dòng)前景; 對ROI中的運(yùn)動(dòng)前景進(jìn)行面積濾波, 去除細(xì)小的噪聲干擾;
(3) 由于豎縫式魚道中水流紊動(dòng)、陰影現(xiàn)象的存在, 目標(biāo)魚在魚道中的比例較小, 因而采用固定的全局閾值分割法不能達(dá)到理想的分割效果。本文采用分塊自適應(yīng)閾值法[11](一種針對不同圖像區(qū)域選擇不同分割閾值的方法)對圖像進(jìn)行分割, 該方法抗噪能力較強(qiáng), 對豎縫式魚道有較好的分割效果;
(4) 對處理后的圖像進(jìn)行形態(tài)學(xué)腐蝕膨脹操作和連通域分析, 將連通區(qū)域面積最大的輪廓作為個(gè)體魚區(qū)域, 求取該區(qū)域的最小外接矩形, 作為最終魚體所在區(qū)域, 并將區(qū)域形心點(diǎn)作為個(gè)體魚所在位置; 對每一幀圖像進(jìn)行相同的跟蹤操作, 即可得到魚的運(yùn)動(dòng)軌跡。
圖2 基于Matlab視頻跟蹤魚的運(yùn)動(dòng)軌跡示意圖Fig. 2 The schematic diagram of fish movement trajectory using video tracking method base on Matlab
人工手動(dòng)計(jì)數(shù)法人工手動(dòng)計(jì)數(shù)是指將視頻導(dǎo)入到Logger Pro視頻分析軟件中, 通過建立直角坐標(biāo)系, 然后采用手動(dòng)方式逐幀點(diǎn)擊視頻中運(yùn)動(dòng)的個(gè)體魚, 得到不同時(shí)刻魚的運(yùn)動(dòng)位置, 手動(dòng)打點(diǎn)獲取所有時(shí)刻目標(biāo)魚的運(yùn)動(dòng), 即形成魚道中的魚的運(yùn)動(dòng)軌跡等運(yùn)動(dòng)參數(shù)(圖4)。
實(shí)驗(yàn)數(shù)據(jù)采用采用SPSS 18.0來進(jìn)行分析。統(tǒng)計(jì)值分別采用平均數(shù)±標(biāo)準(zhǔn)差(Mean±SD)描述,根據(jù)數(shù)據(jù)的總體分布情況采用t檢驗(yàn)分析數(shù)據(jù)的差異性。
本試驗(yàn)對不同個(gè)體魚的運(yùn)動(dòng)軌跡進(jìn)行跟蹤, 并和人工手動(dòng)跟蹤的運(yùn)動(dòng)軌跡進(jìn)行比較, 圖5為使用2種不同方法所獲得的3條個(gè)體魚的運(yùn)動(dòng)軌跡。在3條不同個(gè)體魚的運(yùn)動(dòng)軌跡中, 使用2種不同方法得出的魚的運(yùn)動(dòng)軌跡其縱坐標(biāo)值間的相對誤差分別為(1.16±0.12)、(1.32±0.14)、(1.30±0.11) cm。此外, 在同一工況下, 采用2種方法獲取的魚的運(yùn)動(dòng)行為數(shù)據(jù)包括魚的運(yùn)動(dòng)速度和加速度如圖6, 2種方法獲取的魚的速度、加速度無顯著差異(P>0.05)。
盡管魚道在魚類生態(tài)保護(hù)發(fā)揮重要的作用, 但其在世界范圍內(nèi)仍未達(dá)到預(yù)期效果, 其根本原因在于魚道水力特性與過魚對象的運(yùn)動(dòng)行為不匹配。隨著現(xiàn)代高新技術(shù)的快速發(fā)展, 一些新技術(shù)如聲納、電子閃光水下攝像等大大擴(kuò)展了觀察魚類水下活動(dòng)的范圍。特別是隨著水下遙測系統(tǒng)、地球衛(wèi)星遙感技術(shù)等的發(fā)展與應(yīng)用, 在混沌水域以及大范圍內(nèi)研究魚類行為逐漸成為可能。然而, 由于進(jìn)行現(xiàn)場試驗(yàn)的設(shè)備通常較昂貴, 現(xiàn)場試驗(yàn)成本較高,使得上述新技術(shù)并未廣泛被應(yīng)用。因此, 有必要尋找成本較低, 易于操作的方法和技術(shù)。
圖3 視頻圖像跟蹤處理基本流程Fig. 3 Flow chart of video tracking process
圖4 人工手動(dòng)跟蹤魚的運(yùn)動(dòng)軌跡示意圖Fig. 4 The schematic diagram of fish movement trajectory using manual tracking analysis method
圖5 使用視頻圖像跟蹤方法和人工手動(dòng)計(jì)數(shù)法所獲得魚的運(yùn)動(dòng)軌跡Fig. 5 The fish movement trajectories using two methods
本文在基于Matlab視頻圖像跟蹤方法中使用了分塊自適應(yīng)閾值方法, 將豎縫式魚道內(nèi)受水流影響較為明顯的圖像區(qū)域應(yīng)用不同分割閾值, 能更好捕捉到魚的軌跡點(diǎn), 并獲取魚的運(yùn)動(dòng)速度和加速度值。使用2種方法得到的魚的運(yùn)動(dòng)軌跡存在一定的誤差, 可能因?yàn)槭褂萌斯な謩?dòng)跟蹤方法進(jìn)行人工手動(dòng)打點(diǎn)過程中, 因水面紊動(dòng)造成人眼觀察魚的運(yùn)動(dòng)位置時(shí)出現(xiàn)偏差, 但2種方法得到魚的運(yùn)動(dòng)速度、加速度未存在顯著差異。另外, 從使用的時(shí)間和人力上, 利用視頻跟蹤法處理處理1min視頻(每秒25幀)僅需62s(測試電腦聯(lián)想ideapad700), 可對視頻進(jìn)行快速批量處理; 而采用人工手動(dòng)處理一幀一幀打點(diǎn), 1min的視頻(每秒25幀)約為1500幀, 所需時(shí)間遠(yuǎn)遠(yuǎn)大于62s, 且需人工手動(dòng)打點(diǎn)1500次。可見, 使用基于Matlab的視頻圖像跟蹤方法能有效提取魚的運(yùn)動(dòng)軌跡和運(yùn)動(dòng)行為數(shù)據(jù), 大量減少人工打點(diǎn)操作, 節(jié)省操作時(shí)間。
魚在豎縫式魚道中的運(yùn)動(dòng)軌跡、運(yùn)動(dòng)速度和加速度是反應(yīng)魚類應(yīng)對不同水流條件的重要特性。本文得到草魚的運(yùn)動(dòng)速度為(0—1.42) m/s, 魚在運(yùn)動(dòng)過程中的最大運(yùn)動(dòng)速度約為爆發(fā)游速(10 BL/s,BL表示魚的體長), 與于曉明等[12]的研究結(jié)論基本一致。進(jìn)一步證實(shí)基于Matlab的視頻圖像跟蹤方法能為豎縫式魚道設(shè)計(jì)提供基礎(chǔ)數(shù)據(jù)。
在采用視頻圖像跟蹤法獲取魚的游泳行為過程中, 可通過調(diào)試合理的參數(shù)如閾值調(diào)節(jié)參數(shù)、連通域面積調(diào)節(jié)參數(shù)等改進(jìn)分析效果??偟恼f來, 基于Matlab的視頻圖像跟蹤方法能有效獲取魚在豎縫式魚道中的運(yùn)動(dòng)軌跡, 并獲取魚在水中的運(yùn)動(dòng)行為參數(shù), 為魚道設(shè)計(jì)提供有用的參考依據(jù)。
圖6 使用視頻圖像跟蹤方法和人工手動(dòng)計(jì)數(shù)法獲得魚的運(yùn)動(dòng)速度和加速度Fig. 6 The movement speed and acceleration of fish using two methods
參考文獻(xiàn):
[1]Chen K L, Chang Z N, Cao X H, et al. Status and prospection of fish pass construction in China [J]. Shuili Xuebao, 2012, 43(2): 182—188 [陳凱麒, 常仲農(nóng), 曹曉紅,等. 我國魚道的建設(shè)現(xiàn)狀與展望. 水利學(xué)報(bào), 2012,43(2): 182—188]
[2]Dong Z R, Sun D Y, Zhao J Y, et al. Progress and prospect of eco-hydraulic engineering [J]. Shuili Xuebao,2014, 45(12): 1419—1425 [董哲仁, 孫東亞, 趙進(jìn)勇, 等.生態(tài)水工學(xué)進(jìn)展與展望. 水利學(xué)報(bào), 2014, 45(12):1419—1425]
[3]Shi X, Kynard B, Liu D, et al. Development of fish passage in China [J]. Fisheries, 2015, 40(4): 161—169
[4]Tan J, Dai H, Gao Z. Fish species and hydropower projects in upper Yangtze River in China: impacts and rehabilitation [J]. Fresenius Environmental Bulletin, 2016,25(6): 1846—1857
[5]Bomba? M, Novak G, Mla?nik J, et al. Extensive field measurements of flow in vertical slot fishway as data for validation of numerical simulations [J]. Ecological Engineering, 2015, 84: 476—484
[6]Arenas A, Politano M, Weber L, et al. Analysis of movements and behavior of smolts swimming in hydropower reservoirs [J]. Ecological Modelling, 2015, 312: 292—307
[7]Newbold L R, Shi X, Hou Y, et al. Swimming performance and behavior of bighead carp (Hypophthalmichthys nobilis): Application to fish passage and exclusion criteria [J]. Ecological Engineering, 2016, 95: 690—698
[8]Xu P L, Han J, Tong J F. Preliminary studies on an automated 3D fish tracking method based on a single video camera [J]. Journal of Fisheries of China, 2012, 36(4):623—628 [徐盼麟, 韓軍, 童劍鋒. 基于單攝像機(jī)視頻的魚類三維自動(dòng)跟蹤方法初探. 水產(chǎn)學(xué)報(bào), 2012, 36(4):623—628]
[9]Shi X T, Hu Y S, Wang B, et al. Using free software swistrack to learn swimming behavior of silver capp, Hypophthalmichthys molitrix [J]. Acta Hydrobiologica Sinica, 2014, 1(3): 588—591 [石小濤, 胡運(yùn)燊, 王博, 等. 運(yùn)用免費(fèi)計(jì)算機(jī)軟件SwisTrack分析鰱幼魚游泳行為. 水生生物學(xué)報(bào), 2014, 1(3): 588—591]
[10]Ke S F, Gao Z, Liu G Y, et al. The analysis of fish swimming dynamics based on the Matlab [J]. Acta Hydrobiologica Sinica, 2016, 40(5): 985—991 [柯森繁, 高柱, 劉國勇, 等. 基于Matlab的魚類游泳動(dòng)力學(xué)分析. 水生生物學(xué)報(bào), 2016, 40(5): 985—991]
[11]Long J L, Shen X J, Chen H P. Adaptive minimum error thresholding algorithm [J]. Acta Automatica Sinica, 2012,38(7): 1134—1144 [龍建武, 申鉉京, 陳海鵬. 自適應(yīng)最小誤差閾值分割算法. 自動(dòng)化學(xué)報(bào), 2012, 38(7):1134—1144]
[12]Yu X M, Zhang X M. Research progress on measurements of fish swimming ability [J]. South China Fisheries Science, 2011, 7(4): 76—84 [于曉明, 張秀梅. 魚類游泳能力測定方法的研究進(jìn)展. 南方水產(chǎn)科學(xué), 2011,7(4): 76—84]