本發明涉及養殖技術領域,尤其是涉及一種養殖魚類游動方向測定系統和方法。
背景技術:
隨著工廠化水產養殖規模的擴大和信息技術的發展,有必要對水產養殖過程中的養殖對象的實時行為進行監控。其中,魚類的游動方向是衡量魚類群體行為的一個重要指標。因此,及時準確獲取魚類的游動方向信息可以為后續行為監控分析提供重要方法依據,對后續研究魚類疾病預警、投飼控制等有重要意義。
目前魚類游動方向的測定主要是利用傳統機器視覺的方法。通常對圖像進行建模分析處理,此種方法成本低,但是也存在很多不足之處。例如,實際生產過程中,工廠化循環水養殖車間一般光線比較暗,為獲得較好的效果,需要增加光源或者額外補光,有可能會影響魚類的正常生長。
技術實現要素:
針對以上缺陷,本發明提供一種養殖魚類游動方向測定系統和方法,適用于光線條件暗的工廠化循環水養殖中,而且不會對魚類的正常生長造成影響。
第一方面,本發明提供的養殖魚類游動方向測定系統包括近紅外相機和與所述近紅外相機連接的主控器,其中:
所述主控器用于控制所述近紅外相機采集魚池內魚類的近紅外圖像,并根據所述近紅外圖像確定所述魚類的游動方向。
可選的,所述系統還包括與所述主控器連接的近紅外光源;
所述主控器還用于控制所述近紅外光源的開啟和關閉;
所述近紅外光源用于在開啟時為所述近紅外相機補光。
可選的,所述近紅外光源包括圍設在所述近紅外相機周圍的若干個近紅外燈,各個近紅外燈的光軸與所述近紅外相機的光軸平行,且各個近紅外燈的焦點在同一平面上。
可選的,所述系統還包括:
水處理裝置,用于對所述魚池內的養殖用水進行物理過濾和/或生化過濾。
可選的,所述主控器具體用于:
根據所述近紅外圖像中各像素點的亮度差異,確定背景圖像;
根據所述近紅外圖像中各個像素點的亮度與所述背景圖像中對應像素點的亮度,確定各條魚所在的位置;
根據邊緣計算算法,對確定出位置的魚進行邊緣分割;
確定所分割得到的魚的頭部和質心;
根據該魚的頭部相對于質心的方向,確定該魚的游動方向。
可選的,所述主控器還用于:
在確定所分割得到的魚的頭部和質心之前,根據所分割得到的各條魚進行過濾,將像素點個數大于預設的最小閾值且小于預設的最大閾值的魚作為需要確定頭部和質心的魚。
可選的,所述主控器具體用于:所述確定所分割得到的魚的頭部,包括:
確定所分割得到的魚的最小外接矩形;
將所述最小外接矩形等分為三個子矩形,該三個子矩形沿所述最小外接矩形的長度方向排列;
計算該三個子矩形中第一個子矩形的各個像素點的平均亮度值和該子矩形內魚的寬度;
計算該三個子矩陣中第三個子矩陣的各個像素點的平均亮度值和該子矩陣內魚的寬度;
將所述第一個子矩形和所述第三個子矩陣中平均亮度值和寬度均較大的子矩陣作為魚頭的位置;
其中,所述寬度為沿所述最小外接矩形的寬度方向的長度大小。
第二方面,本發明提供的養殖魚類游動方向測定方法包括:
采集魚池內魚類的近紅外圖像;
根據所述近紅外圖像確定所述魚類的游動方向。
可選的,所述根據所述近紅外圖像確定所述魚類的游動方向,包括:
根據所述近紅外圖像中各像素點的亮度差異,確定背景圖像;
根據所述近紅外圖像中各個像素點的亮度與所述背景圖像中對應像素點的亮度,確定各條魚所在的位置;
根據邊緣計算算法,對確定出位置的魚進行邊緣分割;
確定所分割得到的魚的頭部和質心;
根據該魚的頭部相對于質心的方向,確定該魚的游動方向。
可選的,所述確定所分割得到的魚的頭部,包括:
確定所分割得到的魚的最小外接矩形;
將所述最小外接矩形等分為三個子矩形,該三個子矩形沿所述最小外接矩形的長度方向排列;
計算該三個子矩形中第一個子矩形的各個像素點的平均亮度值和該子矩形內魚的寬度;
計算該三個子矩陣中第三個子矩陣的各個像素點的平均亮度值和該子矩陣內魚的寬度;
將所述第一個子矩形和所述第三個子矩陣中平均亮度值和寬度均較大的子矩陣作為魚頭的位置;
其中,所述寬度為沿所述最小外接矩形的寬度方向的長度大小。
本發明提供的養殖魚類游動方向測定系統和方法,采用近紅外相機采集魚類的游動方向,然后采用主控器進行數據處理,進而得到游動方向。由于采用的是近紅外相機進行圖像采集,而近紅外波段處于非可見光范圍,非常適合應用于光線條件暗的工廠化循環水養殖中。同時,不會對魚類的正常生長造成影響。
附圖說明
為了更清楚地說明本公開實施例或現有技術中的技術方案,下面將對實施例或現有技術描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本公開的一些實施例,對于本領域普通技術人員來講,在不付出創造性勞動的前提下,還可以根據這些圖獲得其他的附圖。
圖1示出了本發明一實施例中養殖魚類游動方向測定系統的安裝示意圖;
圖2示出了本發明一實施例中魚的最小外接矩形的等分示意圖;
附圖標記說明:
1-近紅外相機;2-主控器;3-近紅外光源;4-魚池;5-水處理裝置。
具體實施方式
下面將結合本公開實施例中的附圖,對本公開實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發明一部分實施例,而不是全部的實施例。基于本公開中的實施例,本領域普通技術人員在沒有做出創造性勞動前提下所獲得的所有其他實施例,都屬于本公開保護的范圍。
本發明提供一種養殖魚類游動方向測定系統,如圖1所示,該系統包括近紅外相機1和與所述近紅外相機1連接的主控器2,其中:
所述主控器2用于控制所述近紅外相機1采集魚池4內魚類的近紅外圖像,并根據所述近紅外圖像確定所述魚類的游動方向。
在實際應用時,可將所述近紅外相機1設置在魚池4的上方,以采集魚類的近紅外圖像。此時,可將紅外相機的光軸垂直于魚池4水面。
本發明提供的游動方向測定系統中,采用近紅外相機1采集魚類的游動方向,然后采用主控器2進行數據處理,進而得到游動方向。由于采用的是近紅外相機1進行圖像采集,而近紅外波段處于非可見光范圍,非常適合應用于光線條件暗的工廠化循環水養殖中。基于水對近紅外波段光的強烈吸收能力,浸沒在水中的物體的亮度取決于光從光源到目標物體又返回到相機的路徑長度,進而確定游動方向。同時,不會對魚類的正常生長造成影響。
在具體實施時,本發明提供的游動方向測定系統還可以包括與所述主控器2連接的近紅外光源3;對應的,所述主控器2還用于控制所述近紅外光源3的開啟和關閉;所述近紅外光源3用于在開啟時為所述近紅外相機1補光。這里,利用近紅外光源3對近紅外相機1進行補光,以改善采集的圖像畫質。
其中,近紅外光源3的具體結構和設置方式可以根據需要進行選擇。例如,近紅外光源3包括圍設在所述近紅外相機1周圍的若干個近紅外燈,各個近紅外燈的光軸與所述近紅外相機1的光軸平行,且各個近紅外燈的焦點在同一平面上。這樣的話,各個近紅外燈可以對近紅外相機1在任何方向的補光量相同。
其中,近紅外燈的數量、近紅外燈發射光的波長、近紅外燈的功率等可以自行選擇,例如為8個,波長為820nm,功率為3W,整個近紅外光源3的功率為24W,這幾個遠紅外燈與相機之間的距離為5cm。
在具體實施時,為了對魚池4內的養殖用水進行凈化,本發明提供的游動方向測定系統還可以包括:水處理裝置5,用于對所述魚池4內的養殖用水進行物理過濾和/或生化過濾。
其中,物理過濾是指去除水中的糞便、殘餌等大顆粒雜質。
其中,生化過濾是指分離水中的氨氮和亞硝酸鹽,紫外線消毒殺菌等。
在具體實施時,魚池4的大小和材質可以根據具體情況進行選擇,例如,1.2m高,直徑為1.5m的玻璃缸魚池4。
在具體實施時,主控器2可以采用PC機、工控機。
在具體實施時,所述主控器2根據近紅外圖像確定游動方向的方式有多種,其中一種方式為:
S1、根據所述近紅外圖像中各像素點的亮度差異,確定背景圖像;
S2、根據所述近紅外圖像中各個像素點的亮度與所述背景圖像中對應像素點的亮度,確定各條魚所在的位置;
S3、根據邊緣計算算法,對確定出位置的魚進行邊緣分割;
S4、確定所分割得到的魚的頭部和質心;
S5、根據該魚的頭部相對于質心的方向,確定該魚的游動方向。
主控器2在上述處理過程中,通過確定背景圖像,然后基于背景圖像確定各條魚的位置,并將各條魚作為目標,進行邊緣分割、確定質心和頭部,然后根據質心和頭部的相對位置,確定游動方向。當然,還可以采用其他的方式確定游動方向,這里不一一贅述。
可理解的是,至于采集到的每一幀近紅外圖像,均可以通過上述過程確定確定魚的游動方向。
近紅外圖像中魚的亮度要比魚池4壁返回來亮度高,基于此,在S1中,背景圖像的確定過程可以為:當某個位置的(x,y)的平均像素亮度大于δIx,y(0<δ<1,Ix,y為此處的像素亮度)時,此時背景亮度為Ix,y,反之背景亮度為從而可以去除背景中的魚類以獲得圖像背景。其中,系數δ需要根據現場情況多次試驗取得。
在S2中,對于位置(x,y),,和σx,y為平均亮度和背景方差,Ix,y為像素點的亮度。如果則此點為背景,反之則為探測到的目標。
在S3中,魚體深度不同,亮度不同,此特征可用于上下重疊的魚體邊緣分割。其中,邊緣計算算法,例如為基于Roberts算子的邊緣計算算法。
在S5中,相比于魚其他部分,魚頭部反射回來光的亮度亮且和寬度寬,可用來確定魚的運動方向。
在具體實施時,本發明提供的游動方向測定系統中的主控器2還可以用于:在確定所分割得到的魚的頭部和質心之前,根據所分割得到的各條魚進行過濾,將像素點個數大于預設的最小閾值且小于預設的最大閾值的魚作為需要確定頭部和質心的魚。
這里,通過過濾過程可以根據像素點數量去除與魚相比過大或者過小的物體,濾除噪聲、以及沒有分離的重疊的斑點。其中,最小閾值可以為根據最大的20條魚的像素點個數的平均值,最大閾值可以是根據最小的20條魚的像素點的個數的平均值。
在具體實施時,所述主控器2所執行的S4可以具體包括:
確定所分割得到的魚的最小外接矩形;
將所述最小外接矩形等分為三個子矩形,該三個子矩形沿所述最小外接矩形的長度方向排列;
計算該三個子矩形中第一個子矩形的各個像素點的平均亮度值和該子矩形內魚的寬度;
計算該三個子矩陣中第三個子矩陣的各個像素點的平均亮度值和該子矩陣內魚的寬度;
將所述第一個子矩形和所述第三個子矩陣中平均亮度值和寬度均較大的子矩陣作為魚頭的位置;
其中,所述寬度為沿所述最小外接矩形的寬度方向的長度大小。
這里,如圖2所示,將每個目標的劃分為三部分并計算前后三分之一的亮度和寬度,寬且亮的三分之一魚部分被認為是魚頭,從而可以確定魚運動方向。
在具體實施時,主控器2在質心位置的確定時可以采用下述方式:
利用圖像矩計算目標區域的質心,利用一階距計算目標質心,對于目標圖像,其階距可以表示為:
其中,p和q為非負整數,i和j為圖像像素索引,其目標質心得坐標公式為:
在具體實施時,如果亮度較亮且寬度較寬部分落在質心一側,則該側端部的子矩陣被認為是魚的頭部,另一側端部的子矩陣為魚的尾部。
基于相同的發明構思,本發明還提供一種養殖魚類游動方向測定方法,該方法包括:
采集魚池4內魚類的近紅外圖像;
根據所述近紅外圖像確定所述魚類的游動方向。
可選的,所述根據所述近紅外圖像確定所述魚類的游動方向,包括:
根據所述近紅外圖像中各像素點的亮度差異,確定背景圖像;
根據所述近紅外圖像中各個像素點的亮度與所述背景圖像中對應像素點的亮度,確定各條魚所在的位置;
根據邊緣計算算法,對確定出位置的魚進行邊緣分割;
確定所分割得到的魚的頭部和質心;
根據該魚的頭部相對于質心的方向,確定該魚的游動方向。
可選的,所述確定所分割得到的魚的頭部,包括:
確定所分割得到的魚的最小外接矩形;
將所述最小外接矩形等分為三個子矩形,該三個子矩形沿所述最小外接矩形的長度方向排列;
計算該三個子矩形中第一個子矩形的各個像素點的平均亮度值和該子矩形內魚的寬度;
計算該三個子矩陣中第三個子矩陣的各個像素點的平均亮度值和該子矩陣內魚的寬度;
將所述第一個子矩形和所述第三個子矩陣中平均亮度值和寬度均較大的子矩陣作為魚頭的位置;
其中,所述寬度為沿所述最小外接矩形的寬度方向的長度大小。
本發明的說明書中,說明了大量具體細節。然而,能夠理解,本發明的實施例可以在沒有這些具體細節的情況下實踐。在一些實例中,并未詳細示出公知的方法、結構和技術,以便不模糊對本說明書的理解。
以上實施例僅用以說明本發明的技術方案,而非對其限制;盡管參照前述實施例對本發明進行了詳細的說明,本領域的普通技術人員應當理解;其依然可以對前述各實施例所記載的技術方案進行修改,或者對其中部分技術特征進行等同替換;而這些修改或者替換,并不使相應技術方案的本質脫離本發明各實施例技術方案的精神和范圍。