本發(fā)明涉及漁業(yè)信息化技術(shù),具體涉及一種工廠化循環(huán)水養(yǎng)殖魚類空間位置計算系統(tǒng)及方法。
背景技術(shù):
隨著工廠化水產(chǎn)養(yǎng)殖規(guī)模的增大,有必要對養(yǎng)殖對象的行為實時監(jiān)控。其中,魚類的游動速度是衡量魚類群體行為的一個重要指標(biāo),因此及時準(zhǔn)確的獲取魚類的游動速度可以為后續(xù)行為分析(例如魚類疾病預(yù)警、投飼控制等)提供重要依據(jù)。
目前,魚類位置計算方法通過采用單目、雙目或多目立體機器視覺方法估計魚的位置,具有成本低的優(yōu)點。實際應(yīng)用中,單攝像頭只能估算魚的二維的位置信息,雙目或者多目攝像頭可以計算魚類的空間位置,但是對于兩幅或者多幅圖像中同一個點的計算,需要復(fù)雜的算法,難度較高。另外,工廠化循環(huán)水養(yǎng)殖車間一般光線比較暗,為獲得較好的效果,需要增加光源或者額外補光,有可能會影響魚類的正常生長。
技術(shù)實現(xiàn)要素:
針對現(xiàn)有技術(shù)中的缺陷,本發(fā)明提供一種工廠化循環(huán)水養(yǎng)殖魚類空間位置計算系統(tǒng)及方法,以解決現(xiàn)有技術(shù)中光線較暗環(huán)境獲取魚類游動速度時需要增加光源或者額外補光而影響魚類正常生長的問題。
第一方面,本發(fā)明實施例提供了一種工廠化循環(huán)水養(yǎng)殖魚類空間位置計算系統(tǒng),包括:近紅外相機、近紅外光源和處理設(shè)備;其中所述近紅外相機、所述近紅外光源設(shè)置在魚池的上方,兩者的光軸光線垂直于所述魚池的水面,并且均與所述處理設(shè)備連接;
所述近紅外光源,用于在所述處理設(shè)備的控制下為所述近紅外相機補光;
所述近紅外相機,用于在所述處理設(shè)備的控制下采集魚類的近紅外圖像;
所述處理設(shè)備,還用于接收所述近紅外圖像進行處理以獲取所述魚的空間位置。
可選地,所述近紅外光源為點光源,且其焦點與所述近紅外相機鏡頭的焦點重合。
可選地,所述近紅外相機的型號為Manta G-223B NIR近紅外工業(yè)相機,且其鏡頭型號為Computar M0814-MP2。
可選地,所述紅外光源由多顆環(huán)繞分布在所述近紅外相機周圍的近紅外燈組成。
可選地,所述近紅外燈所發(fā)出光線的中心波長為820nm,功率為3W。
可選地,所述處理設(shè)備為PC機或工控機。
第二方面,本發(fā)明實施例還提供節(jié)一種工廠化循環(huán)水養(yǎng)殖魚類空間位置計算方法,適于上文中任一項所述的工廠化循環(huán)水養(yǎng)殖魚類空間位置計算系統(tǒng),包括:
計算水面光線入射點M(x0,y0)的坐標(biāo);
根據(jù)光線入射點M(x0,y0)的坐標(biāo)以及近紅外相機到水面的高度h計算光線的入射角α和折射角β;
根據(jù)所述入射角α、所述折射角β和亮度衰減公式獲取所述魚體的深度z1;
根據(jù)所述魚體的深度z1以及所述光線入射點M(x0,y0)的坐標(biāo)獲取所述魚體的水平坐標(biāo)x1和y1。
可選地,所述計算水面光線入射點M(x0,y0)坐標(biāo)的步驟之前,還包括:
以近紅外相機的光軸延長線與水面的交點為坐標(biāo)原點,在水平面建立x軸和y軸;所述近紅外相機與所述坐標(biāo)原點連接線所在直線為z軸,形成XYZ坐標(biāo)系。
可選地,所述水面光線入射點M(x0,y0)坐標(biāo)通過以下公式獲取:
公式中,rpx表示近紅外圖像中心到物體的距離;h表示近紅外相機到水面的高度;Fdeg表示近紅外相機在水平或者垂直方向的視角度數(shù);Fpx表示與Fdeg相同方向上的近紅外圖像像素分辨率;xpx和ypx分別表示近紅外圖像像素的橫坐標(biāo)和縱坐標(biāo);Wpx和Hpx分別表示近紅外圖像的像素寬度和高度;i和j分別表示近紅外圖像數(shù)據(jù)陣列中目標(biāo)物體的位置索引。
可選地,所述入射角α和所述折射角β通過以下公式獲?。?/p>
公式中,r表示入射點M到坐標(biāo)原點的距離;nα和nw分別表示空氣和水的折射率;
魚體的深度z1通過以下公式利用數(shù)值迭代算法計算得出:
公式中,Ia(z)表示光線由水吸收引起的光衰減;IL(z)表示光線由平方反比定律引起的光衰減;aw表示近紅外光源波段在消遣的吸收率;I表示魚體在像素點位置(i,j)處的平均亮度;I0表示深度為0時刻魚體的平均亮度;
水平坐標(biāo)x1和y1通過以下公式計算:
由上述技術(shù)方案可知,本發(fā)明通過設(shè)置近紅外相機以及近紅外光源獲取魚體的近紅外圖像,然后由處理設(shè)備分析處理近紅外圖像獲取魚的空間位置。本發(fā)明可以光線較暗的工廠化循環(huán)水養(yǎng)殖車間使用,不會改變魚類的生長環(huán)境即對其生長不會造成影響。還能實時監(jiān)控魚的游動速度,為監(jiān)控魚類行為提供可靠依據(jù)。
附圖說明
通過參考附圖會更加清楚的理解本發(fā)明的特征和優(yōu)點,附圖是示意性的而不應(yīng)理解為對本發(fā)明進行任何限制,在附圖中:
圖1是本發(fā)明提供的一種工廠化循環(huán)水養(yǎng)殖魚類空間位置計算系統(tǒng)結(jié)構(gòu)示意圖;
圖2是圖1中近紅外光源與近紅外相機的位置關(guān)系示意圖;
圖3是本發(fā)明提供的一種工廠化循環(huán)水養(yǎng)殖魚類空間位置計算方法流程示意圖。
具體實施方式
為使本發(fā)明實施例的目的、技術(shù)方案和優(yōu)點更加清楚,下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術(shù)方案進行清楚、完整地描述,顯然,所描述的實施例是本發(fā)明一部分實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領(lǐng)域普通技術(shù)人員在沒有作出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。
如圖1所示,本實施例公開一種工廠化循環(huán)水養(yǎng)殖魚類空間位置計算系統(tǒng),包括:近紅外光源1、近紅外相機2和處理設(shè)備3。其中近紅外光源1和近紅外相機2設(shè)置在魚池0的上方,兩者的光軸光線垂直于魚池0的水面,并且均與處理設(shè)備3連接。
近紅外光源1,用于在處理設(shè)備3的控制下啟動為近紅外相機2補光,以獲取到高質(zhì)量的近紅外圖像;
近紅外相機2,用于在處理設(shè)備3的控制下采集魚體的近紅外圖像;
處理設(shè)備3,還用于接收近紅外圖像進行處理以獲取魚的空間位置。
需要說明的是,本發(fā)明實施例中,近紅外光源1為點光源,且設(shè)置其焦點與近紅外相機鏡頭的焦點重合??蛇x地,如圖2所示,本發(fā)明實施例中該近紅外光源1由多顆環(huán)繞分布在近紅外相機2周圍的近紅外燈組成,例如,近紅外燈的數(shù)量可以為8顆,每顆近紅外燈與近紅外相機2的距離r為5cm。并且,每顆近紅外燈所發(fā)出光線的中心波長為820nm,功率為3W,即近紅外光源的功率為24W。
另外,該近紅外光源1與近紅外相機2的光軸光線互相平時并且垂直于魚池0中的水面。
需要說明的是,近紅外相機2所采集的近紅外圖像與該近紅外相機2物理像素上接收的光線的反射強度線性分布。實際應(yīng)用中,相對于魚池中的水對光線的吸收情況,由空氣和水中小顆粒引起的光線散射可以忽略。可選地,本發(fā)明中近紅外相機采用德國AVT生產(chǎn)的,型號為Manta G-223B NIR近紅外工業(yè)相機,且其鏡頭型號為Computar M0814-MP2,其對角D、水平H、垂直V方向上的視場角分別為67.1°、56.3°、43.7°。
實際應(yīng)用中,由于水對近紅外光有強烈的吸收能力,水中目標(biāo)越深,光線經(jīng)過折射反射后,反射回來光線的亮度越小,因此可以利用近紅外圖像中目標(biāo)的亮度來計算其深度信息。本發(fā)明實施例中處理設(shè)備3可采用現(xiàn)有技術(shù)中的圖像處理方法獲取魚體的平面坐標(biāo)即x坐標(biāo)和y坐標(biāo);然后再結(jié)合近紅色圖像中魚體的亮度計算其深度z;最后結(jié)合x坐標(biāo)、y坐標(biāo)和z坐標(biāo)即可得到魚體的空間位置。該處理設(shè)備3可以是PC機或工控機。當(dāng)然,處理設(shè)備3也可以采用其他處理器,選擇不同的圖像處理方法得到上述x坐標(biāo)和y坐標(biāo),同樣可以實現(xiàn)本發(fā)明的技術(shù)方案,得到基本相同的技術(shù)效果,同樣落入本發(fā)明的保護范圍。
為提高計算精度,本發(fā)明實施例還提供了一種工廠化循環(huán)水養(yǎng)殖魚類空間位置計算方法,如圖3所示,包括:
S1、計算水面光線入射點M(x0,y0)的坐標(biāo);
S2、根據(jù)光線入射點M(x0,y0)的坐標(biāo)以及近紅外相機到水面的高度h計算光線的入射角α和折射角β;
S3、根據(jù)所述入射角α、所述折射角β和亮度衰減公式獲取所述魚體的深度z1;
S4、根據(jù)所述魚體的深度z1以及所述光線入射點M(x0,y0)的坐標(biāo)獲取所述魚體的水平坐標(biāo)x1和y1。
下面結(jié)合附圖對本發(fā)明提供的估算方法的各步驟進行詳細(xì)說明。
需要說明的是,在實現(xiàn)上述估算方法之前,需要建立XYZ坐標(biāo)系:以近紅外相機的光軸延長線與水面的交點為坐標(biāo)原點,在水平面建立x軸和y軸;所述近紅外相機與所述坐標(biāo)原點連接線所在直線為z軸,形成XYZ坐標(biāo)系。
另外,實現(xiàn)本發(fā)明提供的估算方法的前提是,近紅外光源為點光源,其焦點與近紅外相機的鏡頭焦點重合。近紅外相機和近紅外光源的光軸互相平行并垂直于水面。相對于水對光的吸收,由空氣和水中小顆粒引起的光線散射被忽略;且近紅外圖像上像素點與近紅外相機物理像素上接收的光線的反射強度呈線性分布。
首先,介紹S1、計算水面光線入射點M(x0,y0)的坐標(biāo)的步驟。
當(dāng)魚體在水面即深度為0時,采用水面光線入射點點M(x0,y0)的坐標(biāo)進行表示。上述坐標(biāo)x0和y0可以采用近紅外相機的視場角以及該近紅外相機與水面的距離計算得出,公式如下:
公式中,rpx表示近紅外圖像中心到物體的距離;h表示近紅外相機到水面的高度;Fdeg表示近紅外相機在水平或者垂直方向的視角度數(shù);Fpx表示與Fdeg相同方向上的近紅外圖像像素分辨率;xpx和ypx分別表示近紅外圖像像素的橫坐標(biāo)和縱坐標(biāo);Wpx和Hpx分別表示近紅外圖像的像素寬度和高度;i和j分別表示近紅外圖像數(shù)據(jù)陣列中目標(biāo)物體的位置索引。
其次,介紹S2、根據(jù)光線入射點M(x0,y0)的坐標(biāo)以及近紅外相機到水面的高度h計算光線的入射角α和折射角β的步驟。
利用步驟S1計算得到的坐標(biāo)x0和y0計算光線的入射角α和折射角β,公式如下:
公式中,r表示入射點M到坐標(biāo)原點的距離;nα和nw分別表示空氣和水的折射率。
再次,S3、根據(jù)所述入射角α、所述折射角β和亮度衰減公式獲取所述魚體的深度z1的步驟。
光傳播過程中,由水吸收和平方反比定律引起的光線亮度衰減分別為Ia(z)和IL(z),其中:
式中,aw表示近紅外光源波段在消遣的吸收率。
魚體的亮度可以表示為:
Ia(z)表示光線由水吸收引起的光衰減;IL(z)表示光線由平方反比定律引起的光衰減;aw表示近紅外光源波段在消遣的吸收率;I表示魚體在像素點位置(i,j)處的平均亮度;I0表示深度為0時刻魚體的平均亮度。
由公式(7)結(jié)合數(shù)值迭代算法經(jīng)過多次迭代可以計算出魚體的深度z1。
最后,介紹S4、根據(jù)所述魚體的深度z1以及所述光線入射點M(x0,y0)的坐標(biāo)獲取所述魚體的水平坐標(biāo)x1和y1的步驟。
魚體的水平坐標(biāo)x1和y1如公式(8)、(9)所示:
本發(fā)明通過提供工廠化水產(chǎn)養(yǎng)殖魚類空間位置計算方法,通過計算魚體(用一條魚體表示)在水面的坐標(biāo),然后計算光線入射角和折射角,最后計算魚體的深度和水平坐標(biāo)。該估算方法可以用于上文所述的估算系統(tǒng)中,從而提高獲取魚的空間位置的精度。
本領(lǐng)域內(nèi)的技術(shù)人員應(yīng)明白,本申請的實施例可提供為方法、系統(tǒng)、或計算機程序產(chǎn)品。因此,本申請可采用完全硬件實施例、完全軟件實施例、或結(jié)合軟件和硬件方面的實施例的形式。而且,本申請可采用在一個或多個其中包含有計算機可用程序代碼的計算機可用存儲介質(zhì)(包括但不限于磁盤存儲器、CD-ROM、光學(xué)存儲器等)上實施的計算機程序產(chǎn)品的形式。
本申請是參照根據(jù)本申請實施例的方法、設(shè)備(系統(tǒng))、和計算機程序產(chǎn)品的流程圖和/或方框圖來描述的。應(yīng)理解可由計算機程序指令實現(xiàn)流程圖和/或方框圖中的每一流程和/或方框、以及流程圖和/或方框圖中的流程和/或方框的結(jié)合??商峁┻@些計算機程序指令到通用計算機、專用計算機、嵌入式處理機或其他可編程數(shù)據(jù)處理設(shè)備的處理器以產(chǎn)生一個機器,使得通過計算機或其他可編程數(shù)據(jù)處理設(shè)備的處理器執(zhí)行的指令產(chǎn)生用于實現(xiàn)在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的裝置。
這些計算機程序指令也可存儲在能引導(dǎo)計算機或其他可編程數(shù)據(jù)處理設(shè)備以特定方式工作的計算機可讀存儲器中,使得存儲在該計算機可讀存儲器中的指令產(chǎn)生包括指令裝置的制造品,該指令裝置實現(xiàn)在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能。
這些計算機程序指令也可裝載到計算機或其他可編程數(shù)據(jù)處理設(shè)備上,使得在計算機或其他可編程設(shè)備上執(zhí)行一系列操作步驟以產(chǎn)生計算機實現(xiàn)的處理,從而在計算機或其他可編程設(shè)備上執(zhí)行的指令提供用于實現(xiàn)在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的步驟。
需要說明的是,在本文中,諸如第一和第二等之類的關(guān)系術(shù)語僅僅用來將一個實體或者操作與另一個實體或操作區(qū)分開來,而不一定要求或者暗示這些實體或操作之間存在任何這種實際的關(guān)系或者順序。而且,術(shù)語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、物品或者設(shè)備不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、物品或者設(shè)備所固有的要素。在沒有更多限制的情況下,由語句“包括一個……”限定的要素,并不排除在包括所述要素的過程、方法、物品或者設(shè)備中還存在另外的相同要素。術(shù)語“上”、“下”等指示的方位或位置關(guān)系為基于附圖所示的方位或位置關(guān)系,僅是為了便于描述本發(fā)明和簡化描述,而不是指示或暗示所指的裝置或元件必須具有特定的方位、以特定的方位構(gòu)造和操作,因此不能理解為對本發(fā)明的限制。除非另有明確的規(guī)定和限定,術(shù)語“安裝”、“相連”、“連接”應(yīng)做廣義理解,例如,可以是固定連接,也可以是可拆卸連接,或一體地連接;可以是機械連接,也可以是電連接;可以是直接相連,也可以通過中間媒介間接相連,可以是兩個元件內(nèi)部的連通。對于本領(lǐng)域的普通技術(shù)人員而言,可以根據(jù)具體情況理解上述術(shù)語在本發(fā)明中的具體含義。
本發(fā)明的說明書中,說明了大量具體細(xì)節(jié)。然而能夠理解的是,本發(fā)明的實施例可以在沒有這些具體細(xì)節(jié)的情況下實踐。在一些實例中,并未詳細(xì)示出公知的方法、結(jié)構(gòu)和技術(shù),以便不模糊對本說明書的理解。類似地,應(yīng)當(dāng)理解,為了精簡本發(fā)明公開并幫助理解各個發(fā)明方面中的一個或多個,在上面對本發(fā)明的示例性實施例的描述中,本發(fā)明的各個特征有時被一起分組到單個實施例、圖、或者對其的描述中。然而,并不應(yīng)將該公開的方法解釋呈反映如下意圖:即所要求保護的本發(fā)明要求比在每個權(quán)利要求中所明確記載的特征更多的特征。更確切地說,如權(quán)利要求書所反映的那樣,發(fā)明方面在于少于前面公開的單個實施例的所有特征。因此,遵循具體實施方式的權(quán)利要求書由此明確地并入該具體實施方式,其中每個權(quán)利要求本身都作為本發(fā)明的單獨實施例。
最后應(yīng)說明的是:以上各實施例僅用以說明本發(fā)明的技術(shù)方案,而非對其限制;盡管參照前述各實施例對本發(fā)明進行了詳細(xì)的說明,本領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解:其依然可以對前述各實施例所記載的技術(shù)方案進行修改,或者對其中部分或者全部技術(shù)特征進行等同替換;而這些修改或者替換,并不使相應(yīng)技術(shù)方案的本質(zhì)脫離本發(fā)明各實施例技術(shù)方案的范圍,其均應(yīng)涵蓋在本發(fā)明的權(quán)利要求和說明書的范圍當(dāng)中。