摘 要:傳統(tǒng)的魚群養(yǎng)殖采用定點(diǎn)、定時(shí)的專人投喂方式,無法滿足智能化養(yǎng)殖的需求。隨著機(jī)器視覺發(fā)展和進(jìn)步,越來越多的水產(chǎn)養(yǎng)殖采用該技術(shù)進(jìn)行餌料投喂工作,以節(jié)約成本和提高效率。本文基于戶外養(yǎng)殖池塘魚群攝食強(qiáng)度視頻數(shù)據(jù)集,搭建戶外養(yǎng)殖池塘魚群攝食強(qiáng)度分類模型,提出了一種基于遷移學(xué)習(xí)的長(zhǎng)期循環(huán)記憶網(wǎng)絡(luò)模型。模型利用遷移后的MobileNet V1網(wǎng)絡(luò)和長(zhǎng)短期記憶(Long short-term memory,LSTM)神經(jīng)網(wǎng)絡(luò),搭建魚群攝食強(qiáng)度視頻分類網(wǎng)絡(luò)模型,遷移后的MobileNet V1的輸出與分類網(wǎng)絡(luò)相連,進(jìn)行視頻數(shù)據(jù)分類,分類的準(zhǔn)確率為85%。
關(guān)鍵詞:遷移學(xué)習(xí);長(zhǎng)短期記憶神經(jīng)網(wǎng)絡(luò);魚群攝食強(qiáng)度;水產(chǎn)養(yǎng)殖" " "中圖分類號(hào):S 964" " 文獻(xiàn)標(biāo)志碼:A
水產(chǎn)養(yǎng)殖業(yè)在中國(guó)漁業(yè)發(fā)展中具有重要地位[1],早在春秋戰(zhàn)國(guó)時(shí)期,我國(guó)就已出現(xiàn)第一部系統(tǒng)介紹魚類養(yǎng)殖的著作《養(yǎng)魚經(jīng)》,這是中國(guó)最早的養(yǎng)魚著作。經(jīng)過數(shù)千年的歷史技術(shù)積淀,我國(guó)已經(jīng)成為世界上唯一一個(gè)水產(chǎn)養(yǎng)殖總量高于捕撈產(chǎn)量的國(guó)家[2],同時(shí)水產(chǎn)養(yǎng)殖也是我國(guó)漁業(yè)的主要生產(chǎn)方式。其中開放式池塘養(yǎng)殖產(chǎn)量占全國(guó)水產(chǎn)養(yǎng)殖總量的80%,魚類的養(yǎng)殖占總體淡水水產(chǎn)養(yǎng)殖的83%,因此提高水產(chǎn)養(yǎng)殖的生產(chǎn)率對(duì)推動(dòng)我國(guó)水產(chǎn)養(yǎng)殖業(yè)快速發(fā)展具有重要作用。隨著水產(chǎn)養(yǎng)殖業(yè)不斷發(fā)展和擴(kuò)大,工業(yè)化的魚類養(yǎng)殖技術(shù)也在不斷更新和適應(yīng)不同的養(yǎng)殖環(huán)境,進(jìn)行餌料自動(dòng)投喂是水產(chǎn)養(yǎng)殖實(shí)現(xiàn)自動(dòng)化、工業(yè)化和智能化的關(guān)鍵一步。
利用機(jī)器視覺技術(shù)對(duì)魚群的攝食情況進(jìn)行監(jiān)控和識(shí)別,可以及時(shí)發(fā)現(xiàn)魚群的異常情況,降低養(yǎng)殖過程中的風(fēng)險(xiǎn)。本文使用基于遷移后的MobileNet V1網(wǎng)絡(luò)和長(zhǎng)短期記憶神經(jīng)網(wǎng)絡(luò)(Long short-term memory,LSTM)搭建魚群攝食強(qiáng)度視頻分類網(wǎng)絡(luò)模型,判斷魚群的攝食強(qiáng)度,進(jìn)行智能化投餌。
1 魚群攝食強(qiáng)度分類模型
本文基于戶外養(yǎng)殖池塘,該水產(chǎn)基地位于上海市崇明區(qū),主要從事綠色食品魚養(yǎng)殖,是崇明優(yōu)質(zhì)淡水魚生產(chǎn)基地,主要的養(yǎng)殖品種有鱸魚、草魚和花鰱魚等。
該養(yǎng)殖基地養(yǎng)殖環(huán)境為戶外開放式養(yǎng)殖池塘,一個(gè)池塘水深約2m,長(zhǎng)約50m,寬約25m,面積超過1000m2(2畝),每個(gè)池塘配有一個(gè)投餌機(jī),投餌機(jī)型號(hào)為佛山市中漁科技有限公司的顆粒飼料投餌機(jī)ZY150,安裝在岸邊的延伸臺(tái)。每個(gè)投餌機(jī)配有一個(gè)半自動(dòng)控制器,控制器具有定時(shí)投餌、餌料檢測(cè)等基礎(chǔ)性功能,需要手動(dòng)開、關(guān)機(jī)。投餌機(jī)采用扇形噴灑式投餌方案,投餌半徑約為6m。
利用安置好的攝像頭,并根據(jù)實(shí)時(shí)串流協(xié)議(Real Time Streaming Protocol,RTSP)采集不同時(shí)間段魚群攝食和未攝食的視頻數(shù)據(jù),提取時(shí)長(zhǎng)為2s的視頻數(shù)據(jù)樣本,進(jìn)行數(shù)據(jù)樣本的整理和標(biāo)注工作。
再制作魚群攝食強(qiáng)度分類數(shù)據(jù)集過程中,需要對(duì)預(yù)先采集的視頻進(jìn)行剪裁等處理,提取時(shí)長(zhǎng)為2s的視頻樣本,每個(gè)視頻樣本包括60個(gè)視頻幀。將樣本按照強(qiáng)攝食(大量魚群浮出水面劇烈爭(zhēng)奪魚餌)、弱攝食(部分魚群浮出水面攝取魚餌,不爭(zhēng)奪)和未攝食(無魚群浮出水面)3種攝食狀態(tài)進(jìn)行數(shù)據(jù)標(biāo)注,將數(shù)據(jù)集的80%作為訓(xùn)練集,20%作為測(cè)試集。視頻數(shù)據(jù)集共包括1071個(gè)時(shí)長(zhǎng)為2s的視頻,其中未攝食視頻樣本355個(gè),弱攝食樣本335個(gè),強(qiáng)攝食樣本381個(gè),具體數(shù)量見表1。不同狀態(tài)下的視頻幀如圖1所示。
采集完成后進(jìn)行數(shù)據(jù)預(yù)處理。采用直方圖均衡化增加圖像的全局對(duì)比度,使亮度可以更好地分布在直方圖上。直方圖均衡化處理是以累積分布函數(shù)為基礎(chǔ)的直方圖修正法,即通過一個(gè)灰度映射函數(shù),將原直方圖改造成所希望的直方圖。圖像的直方圖如公式(1)所示。
式中:nk 為圖像中灰度級(jí)為k(k=0,1,2,…,L-1)的像素個(gè)數(shù),其中L為最大灰度級(jí)。
在直方圖的基礎(chǔ)上,進(jìn)一步計(jì)算直方圖每一個(gè)灰度級(jí)出現(xiàn)的相對(duì)頻率Pr(k),如公式(2)所示。
式中:N為圖像中像素的總數(shù)。
累積分布函數(shù)是概率密度函數(shù)的累積和,表示每個(gè)灰度級(jí)及其之前所有灰度級(jí)出現(xiàn)的累積概率,將公式(2)進(jìn)行累積,可得公式(3)。
式中:dcf (rk)為灰度級(jí)rk及其之前所有灰度級(jí)的累積概率。
下一步將累積概率映射到新的灰度級(jí)上,實(shí)現(xiàn)灰度級(jí)的重新分配,將公式(3)的值乘以最大灰度級(jí),代入公式(4),得到新的灰度級(jí)。
式中:rk為歸一化后的灰度級(jí)。
將原始圖像中的每個(gè)像素值替換為對(duì)應(yīng)的新灰度級(jí),從而得到均衡化后的圖像,對(duì)比效果如圖2所示。
預(yù)處理后的圖像對(duì)比度明顯增強(qiáng),圖像中魚群攝食的魚體邊緣、色彩等細(xì)節(jié)更突出。將預(yù)處理后的視頻送入訓(xùn)練好的魚群攝食強(qiáng)度分類模型中,獲得當(dāng)前時(shí)刻的攝食強(qiáng)度;上位機(jī)根據(jù)設(shè)定投餌策略確定下一時(shí)刻餌料的投放速率,并實(shí)時(shí)向自動(dòng)投餌機(jī)發(fā)出投餌指令;自動(dòng)投餌機(jī)接收指令后開始工作,對(duì)魚群的攝食情況進(jìn)行實(shí)時(shí)反饋,處理流程如圖3所示。
2 基于遷移學(xué)習(xí)的長(zhǎng)期循環(huán)記憶網(wǎng)絡(luò)模型
MobileNet V1網(wǎng)絡(luò)是谷歌團(tuán)隊(duì)于2017年提出的專注于移動(dòng)端和嵌入設(shè)備的輕量級(jí)卷積神經(jīng)網(wǎng)絡(luò),與傳統(tǒng)的神經(jīng)網(wǎng)絡(luò)相比,它在準(zhǔn)確率小幅度降低的前提下顯著減少了模型的參數(shù)與運(yùn)算量。ImageNet項(xiàng)目是一個(gè)用于視覺對(duì)象識(shí)別軟件研究的大型可視化數(shù)據(jù)庫(kù),在網(wǎng)絡(luò)的預(yù)訓(xùn)練方面通用性、適應(yīng)性強(qiáng)。
長(zhǎng)短期記憶網(wǎng)絡(luò)LSTM(Long Short-Term Memory,LSTM)[3]是循環(huán)神經(jīng)網(wǎng)絡(luò)RNN(Recurrent Neural Network,RNN)的一種變體。鑒于梯度消失的原因,RNN只能有短期記憶,LSTM網(wǎng)絡(luò)利用精妙的門控制將短期記憶與長(zhǎng)期記憶結(jié)合起來,并在一定程度上解決了梯度消失的問題,可以學(xué)習(xí)長(zhǎng)期依賴信息。記住長(zhǎng)期的信息在實(shí)踐中是LSTM的默認(rèn)行為,不是需要付出很大代價(jià)才能獲得的能力。所有RNN都具有一種重復(fù)神經(jīng)網(wǎng)絡(luò)模塊鏈?zhǔn)降男问健?/p>
本文所提基于遷移學(xué)習(xí)的長(zhǎng)期循環(huán)記憶網(wǎng)絡(luò)模型的視頻幀特征提取部分采用在ImageNet項(xiàng)目中預(yù)訓(xùn)練好的MobileNet V1網(wǎng)絡(luò),它共有28層(不包括平均池化層和全連接層),圖像輸入大小為(224,224,3),原始網(wǎng)絡(luò)輸出1000個(gè)類別,利用遷移學(xué)習(xí)剔除網(wǎng)絡(luò)的平均池化層和輸出層,保留經(jīng)ImageNet預(yù)訓(xùn)練后的剩余層權(quán)重參數(shù)和模型結(jié)構(gòu),將平均池化層的輸出(1024維)作為視頻幀的深度特征并用于視頻分類。
模型的分類網(wǎng)絡(luò)部分采用長(zhǎng)短期記憶網(wǎng)絡(luò),基于LSTM神經(jīng)網(wǎng)絡(luò)搭建包括L層的視頻分類器,用于整合視頻幀深度特征并進(jìn)行視頻分類。分類器與遷移后的MobileNet V1的平均池化層相連,分類器包括1層LSTM層、L-2層全連接層和1層輸出層,輸出層包括3個(gè)節(jié)點(diǎn),分別代表未攝食、弱攝食和強(qiáng)攝食3種類別。
利用遷移后的MobileNet V1網(wǎng)絡(luò)和長(zhǎng)短期記憶(Long short-term memory, LSTM)神經(jīng)網(wǎng)絡(luò)搭建魚群攝食強(qiáng)度視頻分類網(wǎng)絡(luò)模型(如圖4所示),遷移后的MobileNet V1的輸出與分類網(wǎng)絡(luò)相連,最后對(duì)遷移的MobileNet V1權(quán)重參數(shù)進(jìn)行微調(diào),對(duì)基于LSTM的視頻分類器進(jìn)行全訓(xùn)練,實(shí)現(xiàn)視頻數(shù)據(jù)分類。
本模型傳遞函數(shù)采用線性整流函數(shù)(Linear rectification function)。線性整流函數(shù)又稱修正線性單元,是一種在人工神經(jīng)網(wǎng)絡(luò)中常用的激活函數(shù),不會(huì)造成梯度消失和梯度爆炸,如公式(5)所示。
輸出層分類函數(shù)采用Softmax函數(shù),如公式(6)所示。
式中:zi為第i個(gè)節(jié)點(diǎn)的輸出值;C為輸出節(jié)點(diǎn)的個(gè)數(shù)。
利用該運(yùn)算,可以將各個(gè)輸出節(jié)點(diǎn)的輸出值范圍映射到[0,1],并且約束各個(gè)輸出節(jié)點(diǎn)輸出值的和為1的函數(shù)。
損失函數(shù)是用來量化模型預(yù)測(cè)和真實(shí)標(biāo)簽間差異的一個(gè)非負(fù)實(shí)數(shù)函數(shù),本模型采用交叉熵?fù)p失函數(shù),計(jì)算樣本屬于不同攝食強(qiáng)度的概率,如公式(7)所示。
式中:θjTx(j=1,2,3)為神經(jīng)網(wǎng)絡(luò)對(duì)類別j的原始預(yù)測(cè)值;P(j)為樣本屬于類別j的概率。
進(jìn)而評(píng)估樣本實(shí)際值和預(yù)測(cè)值間的差距熵(即2個(gè)概率分布間的相似性),如公式(8)所示。
式中:yj 為圖像真實(shí)類別。
3 模型結(jié)果分析
本文選取綜合準(zhǔn)確率(Accuracy)、精準(zhǔn)度(Precision)、召回率(Recall)和F1得分(F1 Score)共4個(gè)評(píng)價(jià)指標(biāo)來評(píng)估本網(wǎng)絡(luò)的性能。綜合準(zhǔn)確率(Accuracy)代表最終分類正確的視頻樣本數(shù)量占全部視頻樣本總量的比例;精準(zhǔn)度(Precision)代表最終分類為某一類別的視頻樣本數(shù)量中分類正確的比例;召回率(Recall)代表所有分類到某一類別的視頻樣本占應(yīng)該分類到該類別的比例;F1得分(F1 Score)為綜合評(píng)價(jià)指標(biāo),是Precision和Recall的加權(quán)調(diào)和平均,它綜合考慮了精準(zhǔn)度和召回率,能夠避免算法出現(xiàn)保守預(yù)測(cè)和暴力召回的情況。具體的數(shù)學(xué)描述如公式(9)所示。
式中:TP為True Positives,即被正確分類的正例;TN為True Negatives,即被正確分類的負(fù)例;FP為 Positive,即被錯(cuò)誤分類的負(fù)例;FN為 Negative,即被錯(cuò)誤分類的正例;N為樣本總數(shù)。
通常Accuracy和Precision越高,網(wǎng)絡(luò)的效果越好;Recall越高,網(wǎng)絡(luò)“回憶的能力”越好。但是Precision和Recall這2個(gè)指標(biāo)有時(shí)是相互矛盾的,因此綜合考慮精確率和召回率這2個(gè)度量值比較重要。F1得分綜合了Precision和Recall這2個(gè)指標(biāo)的結(jié)果,如果模型的F1得分較高,說明試驗(yàn)的結(jié)果有效且模型效果較優(yōu)。
通過具體分析三大類別的分類情況,可以看出網(wǎng)絡(luò)對(duì)未攝食狀態(tài)的分類效果最好,這是因?yàn)槲磾z食狀態(tài)下的視頻水面波動(dòng)平穩(wěn)沒有異常狀態(tài),也不存在魚群上浮水面的情況,分類錯(cuò)誤的情況較少,而弱攝食狀態(tài)與強(qiáng)攝食狀態(tài)下相似之處較大,均有魚群上浮水面,所以存在一定分類錯(cuò)誤的情況。網(wǎng)絡(luò)的綜合準(zhǔn)確率(Accuracy)、精準(zhǔn)度(Precision)、召回率(Recall)和F1 得分(F1 Score)均為80%以上,說明網(wǎng)絡(luò)能較好地對(duì)水上魚群攝食強(qiáng)度視頻數(shù)據(jù)集進(jìn)行分類,不存在暴力召回、梯度爆炸等異常情況。
4 投餌應(yīng)用策略
將搭建并訓(xùn)練好的算法模型搬至養(yǎng)殖現(xiàn)場(chǎng)的上位機(jī)中,完成投餌控制系統(tǒng)搭建。視頻信息通過RTSP實(shí)時(shí)串流協(xié)議實(shí)時(shí)顯示在上位機(jī)界面中,并及時(shí)存儲(chǔ)。根據(jù)魚塘魚群的數(shù)量、生長(zhǎng)情況等決定投餌機(jī)的初始投放速率。
開始投餌時(shí),投餌機(jī)以正常投餌速率v進(jìn)行投餌。如果模型判別出當(dāng)前的攝食狀態(tài)為強(qiáng)攝食,那么加大投餌機(jī)的投放速率,速率變化為2v;如果模型判別出當(dāng)前的攝食狀態(tài)為中攝食,那么將投餌機(jī)的投放速率設(shè)定為v;如果模型判別出當(dāng)前的攝食狀態(tài)為未攝食或長(zhǎng)時(shí)間處于弱攝食狀態(tài),那么關(guān)閉投餌機(jī),如公式(10)所示。
選取適當(dāng)?shù)乃俾收{(diào)整間隔,投餌機(jī)會(huì)根據(jù)魚群的攝食情況實(shí)時(shí)調(diào)整餌料的投放速度。具體的投餌速率v和時(shí)間T需要根據(jù)魚塘魚群的數(shù)量、生長(zhǎng)情況等因素決定。
5 結(jié)論
本文基于水上魚群攝食強(qiáng)度視頻,將遷移學(xué)習(xí)和長(zhǎng)期循環(huán)記憶網(wǎng)絡(luò)相結(jié)合,提出了一種基于遷移學(xué)習(xí)的長(zhǎng)期循環(huán)記憶網(wǎng)絡(luò)模型。本文在養(yǎng)殖基地的戶外池塘環(huán)境下采集魚群攝食和未攝食期間的視頻圖像,制作了水上魚群攝食強(qiáng)度視頻數(shù)據(jù)集,并在該數(shù)據(jù)集的基礎(chǔ)上進(jìn)行研究,提出了戶外養(yǎng)殖魚群攝食強(qiáng)度視頻分類模型。最終試驗(yàn)結(jié)果表明,基于遷移學(xué)習(xí)的長(zhǎng)期循環(huán)記憶網(wǎng)絡(luò)模型的綜合準(zhǔn)確率(Accuracy)、精準(zhǔn)度(Precision)、召回率(Recall)和F1得分(F1 Score)均為80%以上,表明模型可以對(duì)水上魚群攝食強(qiáng)度視頻進(jìn)行強(qiáng)攝食、弱攝食和未攝食這3種狀態(tài)進(jìn)行分類,并且具有參數(shù)較少、計(jì)算速度較快等特點(diǎn),可以較好地適應(yīng)養(yǎng)殖基地環(huán)境,為精準(zhǔn)投餌提供指導(dǎo)。
本文提出的魚群攝食強(qiáng)度分類模型是一個(gè)三分類模型,分類的類別有限,未來將嘗試進(jìn)一步細(xì)化分類的類別,在其他細(xì)化領(lǐng)域進(jìn)行自動(dòng)化、智能化改進(jìn),例如魚類異常行為檢測(cè)、魚類體長(zhǎng)測(cè)量等,進(jìn)一步提高水產(chǎn)養(yǎng)殖的總體智能化水平。
參考文獻(xiàn)
[1]鄭思寧,劉強(qiáng),鄭逸芳.規(guī)模化水產(chǎn)養(yǎng)殖技術(shù)效率及其影響因素分析[J].農(nóng)業(yè)工程學(xué)報(bào),2016,32(20):229-235.
[2]韓剛,許玉艷,劉琪,等.科學(xué)制定水產(chǎn)養(yǎng)殖業(yè)綠色發(fā)展標(biāo)準(zhǔn)的思考與建議[J].中國(guó)漁業(yè)質(zhì)量與標(biāo)準(zhǔn),2019,9(5):55-60.
[3]SHI X,CHEN Z,WANG H,et al.Convolutional LSTM"network:A machine learning approach for precipitation nowcasting[M].Cambridge:MIT Press,2015.
基金項(xiàng)目:廣東省普通高校青年創(chuàng)新人才類項(xiàng)目“基于機(jī)器視覺的魚類養(yǎng)殖投餌船設(shè)計(jì)與研究”(項(xiàng)目編號(hào):2023KQNCX240)。