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

?

水產(chǎn)養(yǎng)殖智能投喂系統(tǒng)中單目視覺測量的研究

2020-01-01 06:36龐云劍沈曉晶
關(guān)鍵詞:單目測距攝像頭

池 濤,龐云劍,沈曉晶

1.上海海洋大學(xué)信息學(xué)院,上海201306

2.農(nóng)業(yè)部漁業(yè)信息重點實驗室,上海201306

在水產(chǎn)養(yǎng)殖中,淡水魚類產(chǎn)量占我國所有魚類產(chǎn)量的69.1%,在世界淡水魚產(chǎn)量中超過60%[1],而大約三分之二的水產(chǎn)養(yǎng)殖動物需要生產(chǎn)飼料[2]。使用水產(chǎn)養(yǎng)殖飼料養(yǎng)殖更多的水產(chǎn)動物,水產(chǎn)養(yǎng)殖飼料的全球產(chǎn)量從2000 年到2008 年增加了106%,預(yù)計在2008 年至2020 年間增加124%[3]。隨著水產(chǎn)養(yǎng)殖飼料使用量的增加和勞動力成本的不斷提高,如何提高工廠化水產(chǎn)養(yǎng)殖的效率和養(yǎng)殖質(zhì)量是工廠化養(yǎng)殖的重要問題[4]。

為了提高水產(chǎn)養(yǎng)殖的投喂效率,如何使養(yǎng)殖過程變得自動化、智能化、精準化成為水產(chǎn)養(yǎng)殖行業(yè)發(fā)展的關(guān)鍵。因此,許多國內(nèi)外學(xué)者對水產(chǎn)養(yǎng)殖的智能投喂技術(shù)開展了相關(guān)研究,Alzubi 等提出了基于魚類行為的自適應(yīng)智能魚飼料飼喂器的研究[5]。Daniel V 等進行了基于聲音的虎蝦投喂研究,提出了兩種聲音分類器的分類方法,該方法用于估算池塘渾濁水域中蝦的飼料消耗量[6]。Kristoffer等利用無人駕駛飛行器對空中飼料播撒機進行了空中飼料顆粒的運動特征和分布模式的測量,結(jié)果可作為量化和驗證飼料播撒機模型的有效輸入[7]。國內(nèi)學(xué)者的相關(guān)研究有,李大偉等開發(fā)了一種自適應(yīng)閾值方法,用水下圖像中掩模中心像素與閾值的對比來檢測水下圖像中魚未吃完的魚食[8];周超等提出了一種基于近紅外計算機視覺和神經(jīng)模糊模型的魚類進食高效控制方法[9];景新等利用軌道傳動、傳感器和PLC 技術(shù),設(shè)計了新型的室內(nèi)工廠化水產(chǎn)養(yǎng)殖自動投飼系統(tǒng)[10]。由于對水產(chǎn)養(yǎng)殖研究所處的地域和環(huán)境的不同,智能投喂選擇的方式和方法也存在著差異。因此,本文針對東部沿海地區(qū)工廠化水產(chǎn)養(yǎng)殖的需要,利用計算機視覺具有定位精度高,不受工廠化水產(chǎn)養(yǎng)殖外界環(huán)境影響等優(yōu)勢[11],提出了基于單目視覺的水產(chǎn)養(yǎng)殖食場智能投喂系統(tǒng)的研究,實現(xiàn)符合我國東部沿海地區(qū)工廠化水產(chǎn)養(yǎng)殖的精準化控制。

本文搭建了基于ARM9 嵌入式開發(fā)平臺的智能投喂系統(tǒng),該系統(tǒng)通過CMOS 攝像頭來采集目標圖像,利用基于零階圖像矩的深度測距算法來驅(qū)動直流電機到達指定目標食場,重點研究分析了單目視覺測距算法在智能投喂系統(tǒng)中到達目的食場的精準度和實用性。

1 系統(tǒng)結(jié)構(gòu)

本文的系統(tǒng)結(jié)構(gòu)如圖1 所示。首先需要由CMOS 攝像頭采集池塘食場的理想目標圖像,采集的目標如圖4 所示。然后由攝像頭實時采集當前目標圖像,兩者作為深度測距算法的輸入端進行目標深度測距,將得到的距離信息傳送給控制器,由控制器操控執(zhí)行機構(gòu)驅(qū)使設(shè)備移動到目標位置。

圖1 系統(tǒng)結(jié)構(gòu)圖Fig.1 System structure diagram

2 硬件結(jié)構(gòu)

本智能投喂系統(tǒng),選用一個模型船作為投喂設(shè)備的主體,一個CMOS(OV9650)攝像頭作為投喂設(shè)備的圖像采集模塊,兩個直流電機作為動力執(zhí)行模塊。其中,本系統(tǒng)使用的是基于ARM9 的S3C2440 嵌入式處理器,由它來運行本系統(tǒng)的深度測距算法。硬件結(jié)構(gòu)包括基于ARM9 的S3C2440嵌入式處理器模塊、數(shù)據(jù)存儲模塊、LCD 顯示模塊、攝像頭模塊、動力執(zhí)行模塊,具體結(jié)構(gòu)組成如下所示:

1)處理器模塊采用基于ARM9 的微處理器S3C2440,該處理器可以使系統(tǒng)穩(wěn)定地運行在主頻405 MHz,其中,主頻最高可達到530 MHz。

2)數(shù)據(jù)存儲模塊:256 M 字節(jié)的NAND Flash,采用的是K9F2G08。64 M 字節(jié)的SDRAM,由兩片K4S561632 組成,工作在32 位模式下。

3)LCD 顯示模塊:4.3 寸TFT 液晶顯示屏。

4)攝像頭模塊:CMOS 攝像頭,內(nèi)置芯片為OV9650,30 萬像素。

5)動力執(zhí)行模塊:兩個5 V 的直流電機。

其結(jié)構(gòu)框圖,如圖2 所示。硬件結(jié)構(gòu)中,攝像頭模塊使用9 針的接口連接到智能投喂系統(tǒng)的電路主板,通過處理器模塊控制攝像頭來采集圖像,可以將采集到的圖像實時顯示在LCD 顯示模塊上。采集到的8 位RGB 圖像信息會被傳送到數(shù)據(jù)存儲模塊,數(shù)據(jù)存儲模塊將數(shù)據(jù)傳送到處理器來進行圖像預(yù)處理和算法處理,通過單目測距算法的運行結(jié)果控制動力執(zhí)行模塊來移動設(shè)備。

圖2 硬件結(jié)構(gòu)框圖Fig.2 Hardware block diagram

3 單目視覺測量算法

針對在池塘?xí)霈F(xiàn)波浪等障礙物的復(fù)雜外界環(huán)境下,對投喂設(shè)備的投喂追蹤精度、實時性以及自主精準作業(yè)的需求,構(gòu)建穩(wěn)定清晰的視覺投喂平臺可以提高投喂設(shè)備對復(fù)雜作業(yè)環(huán)境下對目標的感知能力,實現(xiàn)投喂設(shè)備靜態(tài)及移動過程中有效的避免波浪等障礙物對投喂精度的影響[11,12]。在視覺深度測量中,有單目視覺測量、雙目視覺測量[13]。其中,雙目視覺測量需要攝像機的標定處理,需要對立體圖像進行校正和立體匹配[14],測量方法繁瑣,計算量大,測量精度還受攝像頭標定參數(shù)、鏡頭參數(shù)、系統(tǒng)結(jié)構(gòu)參數(shù)[15,16]、圖像匹配精確度等[17]的影響。單目視覺測量,可以有效的避免圖像匹配的問題,提高測量的有效性[18],不需要對相機標定處理,大大減少了測量的客觀誤差[19]。因此,對于本智能投喂系統(tǒng),提出了一種基于單目視覺零階圖像矩進行深度測量的算法,該算法利用攝像頭在目標物處于不同距離時,目標二值圖的圖像零階矩與目標距離之間存在的關(guān)系來測量目標深度。系統(tǒng)依靠單目攝像頭圖像采集模塊通過單目深度測距算法來追蹤目標物,到達指定目標地點。

3.1 算法理論關(guān)系推導(dǎo)證明

為研究問題方法,首先作如下假設(shè)和定義。設(shè):攝像頭的三維空間坐標系為{C},投影圖像坐標系為{I},目標為一始終垂直于攝像頭光軸的平面剛體,且目標理想深度為Zd;目標當前深度為Zt。設(shè)目標的投影區(qū)域為閉合區(qū)域A,目標二值圖像為b(x,y),b(x,y)可定義如下:

設(shè)距離為Zd時區(qū)域A上的任意一點i在{I}中的坐標為[k,I],在坐標{C}中的坐標為[X,Y,Z],點i在距離為Zt的區(qū)域A′中的對應(yīng)點為i′,i′在坐標系{I}中的坐標為[k′,I′],在坐標{C}中的坐標為[X′,Y′,Z′],由于攝像機模型采用針孔模型,可以得到以下透視投影變換公式:

其中,f為攝像機焦距,kx和ky分別為攝像機的水平比例因子和垂直比例因子。所以由公式(2)可以將i和i′在坐標系{I}中的坐標[k,I]和[k′,I′]之間的關(guān)系由以下仿射變換公式描述:

由公式(3)推導(dǎo)出下面等式成立:

定義1:所謂的理想目標圖像是指這樣一副目標圖像:目標圖像位于目標的理想深度Zd時所成的圖像;

定義2:設(shè)圖像以函數(shù)f(x,y)表達,則圖像f(x,y)的(p+q)階圖像矩為[20]:

則圖像目標的二值圖零階圖像矩為:

即m00實際上是深度一定時,目標的投影面積。

有定義1 推知,要使目標成像為理想目標圖像,必須滿足要求:在坐標系{C}中,目標深度必須等于Zd。若將目標分別置于不同深度Zd、Zt上成像時,圖像進行二值化灰度處理后,得到零階矩分別為(m00)d、(m00)t,將公式(4)代入公式(6)可以推導(dǎo)出等式(7)成立。

3.2 單目深度測量算法

本文提出的單目視覺測量方法,主要包括以下4 步:

1)首先垂直于攝像頭光軸采集理想目標圖像,測量出目標的理想距離Zd,對理想目標圖像進行圖像預(yù)處理并進行二值化,提取二值化的理想目標圖像的零階矩(m00)d;

2)垂直于攝像頭光軸采集不同距離的當前目標圖像;

3)對當前目標圖像進行圖像預(yù)處理并進行二值化,提取二值化的當前目標圖像的零階矩(m00)t;

4)利用公式求得攝像頭與目標之間的當前距離Zt,即。(其中,Zd為攝像頭與目標之間的理想距離)。

單目深度視覺測量算法的流程框圖如圖3 所示:

圖3 單目深度視覺測量算法的流程圖Fig.3 Flow chart of measurement algorithm in monocular depth vision

4 實驗驗證與數(shù)據(jù)分析

本系統(tǒng)的實驗驗證主要從單目深度測距算法測量目標距離的精確度進行,通過多次測量投喂設(shè)備到達養(yǎng)殖食場目標地點的距離與實際距離的誤差來進行對比分析單目測距算法的精確度,并做了實際場景的控制仿真,驗證了精確控制的可行性。

4.1 圖像預(yù)處理

采集的圖像采用基本全局閾值算法[21]獲取圖像的分割閾值。由圖4 知,目標背景多是綠色植物、藍色天空、水,因此紅色使得目標提取更為方便。本實驗將紅色圓作為目標(如圖4),分別提取原始圖像中的紅色通道和綠色通道的兩幅圖像,然后將這兩幅圖像做圖像減操作,從而濾除大部分背景(如圖5 所示),再利用基本全局閾值算法獲取圖像二值化所需的分割閾值。二值化圖像如圖6 所示。對于圖5 所示的圖像,取門限值為0.01,分割閾值為89。

圖4 實驗水池中的紅色目標Fig.4 Red targets in the experimental pool

圖5 顏色分割圖Fig.5 Color segmentation image

圖6 基本全局閾值算法分割后二值圖Fig.6 Binary graph split by basic global threshold algorithm

4.2 算法實驗驗證

實驗驗證首先把采集的目標理想距離Zd=1 m 的目標圖像作為實驗驗證的理想目標圖像M0。采集投喂設(shè)備當前目標圖像M1,M2,M3,M4,M5,M6,M7,M8,M9,M10,M11,M12,M13,它們的實際距離分別為:2 m,3 m,4 m,5 m,6 m,7 m,8 m,9 m,10 m,11 m,12 m,13 m,14 m。其中理想目標圖像M0 的二值圖處理如圖7(圖片非實際大?。┧?。

圖7 理想目標圖像M0 二值圖Fig.7 Binary map of ideal target image M0

對當前目標圖像M1、M2、M3、M4 灰度二值化處理的二值圖如下圖(圖片非實際大?。┧?,M5 等當前目標圖像的二值圖不再一一列舉。

圖8 目標圖像M1的二值圖Fig.8 Binary map of the target M1

圖9 目標圖像M2的二值圖Fig.9 Binary map of the target M2

圖10 目標圖像M3的二值圖Fig.10 Binary map of the target M3

圖11 目標圖像M4的二值圖Fig.11 Binary map of the target M4

將當前目標圖像的二值圖進行深度測距算法公式處理得到如下數(shù)據(jù),數(shù)據(jù)如表1 所示,其中理想目標圖像M0 的目標像素點的數(shù)量和為842559。

表1 單目深度測距算法測量數(shù)據(jù)表Table 1 Monocular depth ranging algorithm measurement data table

4.3 算法數(shù)據(jù)分析

由以上實驗數(shù)據(jù),繪制出圖像目標實際距離與測量距離的對比圖(如圖12 所示)和測量精度誤差百分比圖(如圖13 所示)。通過數(shù)據(jù)對比分析我們可以看出:

圖12 圖像目標實際距離與測量距離對比圖Fig.12 Comparison between actual distance and measured distance

圖13 圖像目標測量精度誤差百分比圖Fig.13 Accuracy error percentages of images

1)單目深度測距算法測量精確度較高,誤差值在4.345%以下;

2)單目深度測距算法隨著圖像目標距離的增大,測距精度整體呈現(xiàn)逐漸降低的趨勢;

3)單目深度測距算法的誤差隨著圖像目標距離的增大呈波動性增加,增加趨勢整體呈線性,線性趨勢如圖13 中紅線所示。

針對在實驗中單目深度測距算法精度存在的誤差作分析,導(dǎo)致的誤差有以下因素:

1)目標距離的增加,灰度閾值的選取導(dǎo)致當前目標圖像的目標在二值化灰度處理時,使目標面積偏小而增大誤差,這也是測試距離整體偏大的原因;

2)圖像目標的拍攝采樣需要垂直于攝像頭的光軸,實際采樣時無法做到絕對地垂直于攝像頭的光軸,這是誤差以及誤差波動存在的客觀因素;

3)圖像在二值化前,目標背景濾除的不徹底是誤差存在的因素之一。

從圖13 知,由以上因素造成的誤差在0.251%~4.345%的誤差范圍內(nèi)波動,而由文獻[22]知,水產(chǎn)養(yǎng)殖池塘中食場的面積為2 m2左右,投喂的誤差范圍在0.798 m 以內(nèi),所以本系統(tǒng)的投喂距離適用范圍為距離半徑在18.366 m 以內(nèi)的池塘。其中,針對導(dǎo)致誤差的因素2,如何保證投喂設(shè)備在運行過程中,攝像頭光軸與目標平面的法線絕對平行,會是我們下一階段研究的難點之一。

4.4 仿真結(jié)果

通過以上實驗數(shù)據(jù)的分析,做實際情景仿真驗證。取理想深度Zd=2 m,攝像頭與目標的初始深度為4 m,攝像頭最高運動速度限定為100 mm/s,攝像頭的控制速度取為Vc=Kp*(Zd-Zt),Kp>0。

當Kp取值30 時,攝像頭速度與目標深度的仿真結(jié)果如圖14 和圖15 所示。仿真結(jié)果表明:當Kp取值30 時,在比例控制器的作用下,攝像頭與目標之間的距離逐漸縮小,約180 s 時攝像頭到達指定位置。如果提高比例控制系數(shù)Kp,則攝像頭到達理想位置的時間可進一步縮小。仿真結(jié)果驗證了設(shè)備精準到達指定位置的可行性。

圖14 攝像頭運動速度與時間圖Fig.14 Chart of camera movement speed with time

圖15 目標距離與時間圖Fig.15 Chart of target distance with time

5 結(jié)論

本文使用了ARM9 的S3C2440 微處理器作為嵌入式系統(tǒng)處理器,利用CMOS 攝像頭圖像采集模塊設(shè)計了一個單目視覺水產(chǎn)養(yǎng)殖食場智能投喂系統(tǒng)。通過以上的實驗可知,在單目深度測距算法的調(diào)控下,智能投喂設(shè)備可以精準地到達池塘的目標食場,系統(tǒng)的投喂精度高,魯棒性強。因此,本系統(tǒng)對水產(chǎn)品的精準投喂具有很高的應(yīng)用價值,可以滿足水產(chǎn)養(yǎng)殖精準投喂的精度和穩(wěn)定性要求。

猜你喜歡
單目測距攝像頭
浙江首試公路非現(xiàn)場執(zhí)法新型攝像頭
基于單目視覺車距測量方法綜述
攝像頭連接器可提供360°視角圖像
類星體的精準測距
一種單目相機/三軸陀螺儀/里程計緊組合導(dǎo)航算法
基于單目視覺的倉儲物流機器人定位方法探討
單目SLAM直線匹配增強平面發(fā)現(xiàn)方法
淺談超聲波測距
奔馳360°攝像頭系統(tǒng)介紹
基于PSOC超聲測距系統(tǒng)設(shè)計
安多县| 澄城县| 密云县| 河北区| 揭阳市| 彭泽县| 民勤县| 伊川县| 黔西县| 高台县| 镇坪县| 郯城县| 西峡县| 壤塘县| 积石山| 平遥县| 阿坝| 绥江县| 桂东县| 瑞安市| 霸州市| 扎兰屯市| 德化县| 遵化市| 玉溪市| 虹口区| 瓮安县| 榆树市| 韩城市| 张家口市| 长武县| 青冈县| 石门县| 太保市| 南丰县| 和政县| 北辰区| 房产| 昌图县| 汤原县| 北宁市|