胡祝華曹 路張逸然趙瑤池
(1海南大學信息科學技術學院,海南???,570228;
2南海海洋資源利用國家重點實驗室(海南大學),海南海口,570228)
基于圖像處理和線性擬合的魚體尾柄測量方法研究
胡祝華1,2,曹 路1,張逸然1,趙瑤池1
(1海南大學信息科學技術學院,海南??冢?70228;
2南海海洋資源利用國家重點實驗室(海南大學),海南???,570228)
水產(chǎn)養(yǎng)殖場內(nèi)的魚體尾柄測量在養(yǎng)殖管理中有著重要意義。目前的尾柄測量方法主要依靠人工,操作復雜、效率低,且結(jié)果主觀性強。研究提出一種基于圖像處理和線性擬合的魚體尾柄測量方法。首先在養(yǎng)殖場通過裝置采集圖像,通過邊緣檢測和輪廓提取得到魚體的外部輪廓,基于魚的形態(tài)特征這一先驗知識,提取到尾柄感興趣區(qū)域,最后對尾柄區(qū)域進行角點檢測和最小二乘直線擬合,得到尾柄線長度。結(jié)果顯示,該方法平均測量耗時1.01 s,平均測量偏差0.34 mm,測量精度達到95%以上。采用該方法不僅可以解決人工測量操作繁瑣、主觀性強等問題,而且能夠避免測量過程耗時過長,為魚體尾柄的大批量非接觸式測量提供有效新途徑。
魚體尾柄;長度測量;圖像處理;最小二乘直線擬合;湛江流沙港
我國的水產(chǎn)養(yǎng)殖產(chǎn)量占世界總產(chǎn)量的65%以上[1]。在水產(chǎn)養(yǎng)殖管理中,魚體可量性狀的獲取對養(yǎng)殖業(yè)十分重要,它不僅直觀反映了不同養(yǎng)殖環(huán)境與應激條件下魚的生長狀況,同時也是養(yǎng)殖者進行喂養(yǎng)、捕撈、分級的主要信息依據(jù)[2]。金鯧魚(Trachinotus ovatus)作為一種沿海養(yǎng)殖魚種,其尾柄長度(length of caudal peduncle)具有較為顯著的特征,與魚的成熟周期有著緊密聯(lián)系?,F(xiàn)有的測量方法仍主要依靠人工,操作者需手持測量尺接觸測量。這種方法易受操作者主觀影響,勞動強度大、效率低、檢測結(jié)果主觀性強[3]。同時,由于測量耗時過長,容易造成魚脫水死亡[4]。
針對可量性狀快速無損檢測的實際需求,已有相關學者開展各種檢測方法的研究。如余心杰等[4]設計出一種大黃魚可量性狀檢測系統(tǒng);JEONG等[5]結(jié)合傳感器和工業(yè)相機設計出一個傳送檢測裝置,對比目魚的體長、體寬和體重等參數(shù)進行測量;IVORRA等[6]通過采集受檢魚的形態(tài)參數(shù)數(shù)據(jù)并進行三維重建,從而設計出預測受檢魚體新鮮度的系統(tǒng)。然而,以上研究基本都是圍繞受檢魚的體長、體寬等明顯性狀進行的,對于尾柄等細節(jié)部位仍依賴于手工測量。針對上述問題,提出一種基于圖像處理和線性擬合的魚體尾柄測量方法。該方法利用裝置獲取魚體圖像、利用圖像處理技術獲取尾柄區(qū)域的準確輪廓、創(chuàng)新利用角點檢測和最小二乘線性擬合精準獲取到尾柄輪廓,進而計算出尾柄長度。該方法不僅可以自動、批量測量魚的尾柄長度,還可以將人工測量所帶來的主觀誤差降到最低。
1.1 人工測量尾柄
尾柄作為魚的一種局部特征,能夠直觀體現(xiàn)魚的生長狀況。圖1為尾柄區(qū)域示意圖。
圖1 魚的尾柄示意圖Fig.1 Fish caudal peduncle of schematic diagram
現(xiàn)有的測量方法主要通過操作者手持測量工具接觸測量(圖2)。這種方法主觀性強、測量耗時長,對日益增長的大批量漁業(yè)作業(yè)來說是一個嚴峻挑戰(zhàn)。
圖2 人工測量尾柄長度Fig.2 Artificial caudal peduncle length measurement
1.2 魚體輪廓獲取
在水產(chǎn)養(yǎng)殖場,利用實驗裝置(圖3)快速獲取到俯視角度下的魚體圖像(圖4a)。魚體平放在實驗平臺上,采用圖4中的方法進行處理,得到魚體輪廓二值圖像,輸出結(jié)果如圖4e所示。
圖3 實驗裝置Fig.3 Experimental equipment
圖4 魚體輪廓處理步驟Fig.4 Fish contour processing steps
1.3 尾柄ROI區(qū)域的提取與圖像預處理
為了降低分析復雜度、提高測量系統(tǒng)效率,在測量尾柄長度的過程中,需要提取尾柄的ROI(Region of Interest)區(qū)域[7]以替代魚體整體圖像作為輸入。所謂ROI區(qū)域即處理時的感興趣區(qū)域。首先對圖4e的魚體二值圖像進行外輪廓提?。▓D5a、圖5b);循環(huán)遍歷輪廓圖像,得到魚體四周的邊緣點(圖5c);對圖像建立笛卡爾坐標系,得到魚翅兩側(cè)坐標P1、P2、魚嘴尖坐標P3和尾鰭尖一側(cè)坐標P4(圖5d)。
圖5 金鯧魚尾柄ROI區(qū)域提取過程Fig.5 ROI extraction of trachinotus ovatus caudal peduncle
由于尾柄區(qū)域下側(cè)線具有清晰易測量的特點,本研究考慮尾柄區(qū)域的下半部分。已知金鯧魚的尾柄區(qū)域長度約占魚體總長度的 4/25(圖6a),進一步縮減ROI區(qū)域,最終提取到的尾柄區(qū)域如圖6b所示。
圖6 提取到的尾柄區(qū)域Fig.6 The extraction of caudal peduncle
對提取到的尾柄區(qū)域進行圖像預處理操作(圖7)。首先對彩色圖像進行灰度化處理(圖8a)[8];為了避免噪聲對后續(xù)操作的影響,對灰度圖像進行中值濾波[9](圖8b);然后利用Canny算子[10]對去噪后的圖像進行邊緣檢測,多組實驗證明當閾值為100時效果較好(圖8c);為了增強輪廓邊緣、填充空隙,使用大小為的結(jié)構(gòu)元素進行形態(tài)學閉運算操作[11](圖8d);對提取到的輪廓進行條件篩選,最終得到尾柄線輪廓(圖8e);圖9為多組輪廓提取實驗的驗證結(jié)果。
該項目充分體現(xiàn)了多方協(xié)同,貫穿項目生命周期的一體化規(guī)劃、設計、施工和運維的BIM應用理念,其交付過程廣泛使用了各領域內(nèi)最新的BIM解決方案。項目組在項目初期即制定了詳細的BIM執(zhí)行計劃,明確了項目組成員的各自建模與模型管理任務以及成員間的數(shù)據(jù)/信息交換標準和協(xié)議,清晰地建立了協(xié)同合作的技術與交流平臺,并有效地結(jié)合了其他建筑行業(yè)內(nèi)的高新技術創(chuàng)新,包括裝配式建筑、施工機器人、移動計算、云計算以及虛擬現(xiàn)實等(見圖3)。
圖7 圖像預處理步驟Fig.7 Image pre-processing steps
圖8 尾柄區(qū)域圖像預處理Fig.8 Preprocessing of caudal peduncle
圖9 尾柄區(qū)域輪廓提取Fig.9 Contour extraction of caudal peduncle
2.1 亞像素角點檢測
角點檢測作為一種局部特征點檢測,其灰度圖像在角點處的一階導數(shù)為局部最大,圖像的灰度在水平和豎直方向上均有變化,較為經(jīng)典的有Shi-Tomasi算法[12]和Harris算法[13]。設灰度圖像在點(x,y)處的值為I(x,y),以該點為中心建立一個n×n的窗口O,窗口平移[x,y]后產(chǎn)生的灰度變化為:
對于局部微小移動量,對I(x+Δx,y+Δy)進行泰勒展開并帶入(1)式,表示成矩陣形式:
其中M為2×2的矩陣
E近似看作局部互相關函數(shù),利用矩陣M來衡量(x,y)是否為角點。令λ1,λ2是矩陣M的兩個特征值,Shi-Tomasi算法[12]指出,如果kλ2max≤λ2≤λ1(λ2max是任意像素點較小特征值中的最大值),即能求得角點。
在尾柄實際測量中,往往需要較高的精度。傳統(tǒng)的角點檢測只能得到簡單的像素坐標,而亞像素理論能將精度提升到亞像素級。有研究表明,圖像中一個尖銳峰值點的位置一般都不位于一個像素點的正中心[14];向量的點積理論提出,一個向量與其正交向量的點積為0,角點的兩個邊緣符合這種相交關系。實際計算亞像素角點的位置時,解的是一個點積表達式為0的方程組。圖10為點積都為0的兩種情況,其中每一個方程都是由q鄰域的一個點產(chǎn)生。搜索窗口的中心是整數(shù)坐標值的角點,并從中心點在每個方向上擴展指定的像素。這些等式構(gòu)成一個可用自相關矩陣的逆來求解的線性方程組。每找到一個q的新位置,就需要以這個新的角點作為初始點進行迭代,直到滿足定義的迭代終止條件。
圖10 向量點積為0的兩種情況Fig.10 Two situations when vector dot product is 0
2.2 最小二乘直線擬合魚體尾柄測量
測量尾柄長度的一種簡單方法是計算尾柄輪廓拐點與右側(cè)輪廓端點間的距離。但是,由于實際輪廓的邊緣并不平整,存在許多小的凸起和斷點(圖11),若直接進行角點檢測會導致誤檢。為了解決上述問題,本研究提出一種新思路:將亞像素角點檢測[15]與最小二乘直線擬合[16]相結(jié)合并應用于尾柄線長度測量。
圖11 輪廓曲線放大示意圖Fig.11 Magnified outline curve
歐式距離[17]被廣泛地應用于向量間的距離度量。設兩個像素的坐標分別為(x0,y0)、(x1,y1), 則 歐 式 距 離 可 定 義 為dis=最小二乘直線擬合[16]是利用離散分布,且總體呈直線軌跡的坐標點來求出直線參數(shù)。設直線帶參方程為y=ax+b,利用直線軌跡上某個區(qū)間離散點的坐標(xi,yi)(i-1,…,n),定義誤差項S(a,b)=∑(yi-ax-b)2,最小二乘法原理要求S達到最小值,S最小的條件為:可得:
直接解方程可求出參數(shù)a,b:
首先將檢測到的角點進行存儲,對該點集進行遍歷并尋找輪廓頂點和最右側(cè)端點。以輪廓頂點作為分界,左側(cè)點集記為左點集,右側(cè)點集記為右點集,分別對兩側(cè)點集進行最小二乘直線擬合,最終得到兩條擬合直線。通過計算兩條直線的交點與輪廓最右側(cè)端點間的歐式距離,即可得到尾柄線長度。具體算法:
(1)將尾柄ROI輪廓圖像I(x,y)作為輸入。
(2)根據(jù)亞像素角點檢測算法對尾鰭輪廓曲線進行角點檢測,通過設定一個較高的閾值T,得到n組角點集合P=∑ni=1p(xi,yi)。
(3)令pT、pR分別為尾柄輪廓的頂點和最右側(cè)端點,pxm為點P集中x坐標值最大的點,pym為點集p中y坐標值最小的點。遍歷點集P,當存在一點p(xi,yi),滿足p(yi)=pym(y)時,將該點坐標值賦給pT,當滿足時p(xi)=pxm(x),將該點坐標值賦給pR。
(4)頂點pT是輪廓的最高點,同時也是左右兩條曲線的分界點,以該點為界,將該點及該點左右兩側(cè)角點分別存儲在不同集合。其中左側(cè)點集為PL,右側(cè)點集為PR。
(5)對左右兩側(cè)點集PL、PR中的點分別進行最小二乘直線擬合,得到擬合的直線方程l2、l2以及其交點坐標pC,將pC近似為輪廓曲線的拐點。
(6)尾鰭線測距可轉(zhuǎn)換為求解輪廓拐點與右側(cè)端點間的歐氏距離,根據(jù),計算出dis。
(7)輸出尾柄線長度dis。
為了驗證本文方法的有效性,設計了一個由600 mm×500 mm實驗平臺、機械手臂、工業(yè)CCD相機、圖像采集卡和計算機構(gòu)成的測量裝置(圖3)。其中,工業(yè)相機通過1394接口與計算機的圖像采集卡相連,并將其固定于機械手臂上。以300條同批次金鯧魚為實驗對象,實驗場地為廣東省湛江市流沙港某水產(chǎn)養(yǎng)殖場。實驗中使用2.2 GHz Intel(R)Core(TM)i5計算機,內(nèi)存為2GB,用VS2013+OpenCV2.4編程實現(xiàn)。
按照本文方法,先對圖像進行預處理操作,然后進行邊緣檢測得到尾柄線圖像,對尾柄線兩側(cè)分別進行最小二乘直線擬合(圖12)。
圖12 尾柄線兩側(cè)曲線的最小二乘直線擬合Fig.12 Least squares linear fitting of the two sides of the caudal peduncle
分別對300條金鯧魚進行實驗,將實驗對象分成20組,以每15條統(tǒng)計結(jié)果的平均值作為該組的測量結(jié)果,統(tǒng)計得到的拐點擬合誤差如圖13所示。相較于標準測量結(jié)果,本文方法相對誤差平均值為0.47 mm。
圖13 擬合拐點誤差Fig.13 Deviation curve of inflexion fitting
通過計算尾柄線右側(cè)端點與擬合拐點間的歐式距離,最終得到測量結(jié)果(圖14)。從圖中可以看出,本研究方法與標準測量數(shù)據(jù)作對比,兩種方法的實際測量結(jié)果基本一致,本文方法的平均偏差為0.34 mm,測量精度達到95%以上。
圖14 測量結(jié)果對比Fig.14 Comparison of measurement result
分別對20組實驗對象耗時進行記錄,耗時分別為:1.062、1.015、1.062、1.109、0.985、0.921、1.046、1、1.008、1.109、0.99、0.991、1.203、0.922、0.905、0.999、0.905、0.999、1.14、0.89 s。相較于人工測量的3~5 s,本文方法平均耗時約1.01 s,耗時更短。
4.1 不同光照條件下測量偏差的對比
光照均勻條件下的測量偏差較低,原因是在該條件下圖像處理的閾值容易確定,圖像處理效果較好;而在光照非均勻條件下,圖像局部過亮或過暗,難以確定較為穩(wěn)定的閾值范圍,從而影響到圖像處理的效果。由于圖像處理的效果直接影響尾柄輪廓檢測的準確率,因此,針對非均勻光照條件下的尾柄線提取需要進一步改善。
4.2 測量方法速度和精度的對比
Njc[18]指出手工測量的速度約為每分鐘12條;Jeong等[5]針對比目魚的體長、厚度、體重等多個參數(shù)設計了一套基于機器視覺的檢測系統(tǒng),實現(xiàn)了每分鐘15條的測量速度。本文方法主要針對尾柄部位進行測量,能夠達到每分鐘約60條的測量速度。在應用于大批量測量時,相較于人工測量,本文方法檢測速度更穩(wěn)定、測量結(jié)果更準確客觀。其原因是人工測量結(jié)果易受操作者偏好影響,主觀性較強,當測量基數(shù)增大時,這種差異會愈發(fā)明顯;不同操作者的熟練度也會影響測量耗時,隨著體力的消耗,耗時也會明顯上升。另外,本文以小批量鯧魚的多次人工測量平均數(shù)據(jù)作為參考對比數(shù)據(jù),實驗也同樣證明,在保證尾柄測量精度的同時還可以大大提高測量的時效性。
4.3 傾斜角度的影響
Hsieh等[19]和 Williams等[20]針對魚體形態(tài)參數(shù)提出了一種基于機器視覺的檢測方法,對不同傾斜角度下的魚體測量結(jié)果進行了分析和討論。為了簡化分析過程,本文考慮魚體中軸線基本保持水平,在低傾斜角存在的條件下本文方法處理良好,但在較大傾斜角下(例如60度)處理效果不佳。因此,下一步研究工作會將魚體傾斜因素考慮進來。
提出了一種基于圖像處理和線性擬合的魚體尾柄測量方法。該方法解決了當前魚體尾柄測量仍然依靠人工,且操作繁瑣、效率低下、結(jié)果主觀性強等問題,在保證較為準確地測量尾柄長度的情況下,有效降低了測量所需時間。由于受實驗樣本個數(shù)的限制,本方法實驗范圍偏小,在以后的研究中,將針對大批量魚體的尾柄測量進行更多探索。 □
[1] 王德芬,王玉堂,楊子江,等.我國漁業(yè)多功能性的研究與思考[J].中國水產(chǎn),2012(1):9-14.
[2] 段延娥,李道亮,李振波,等.基于計算機視覺的水產(chǎn)動物視覺特征測量研究綜述[J].農(nóng)業(yè)工程學報,2015,31(15):1-11.
[3] MA Q,JIANG J,ZHU D,et al.Rapid measurement for 3D geometric features of maize ear based on image processing[J].Transactions of the Chinese Society of Agricultural Engineering,2012,28(1):208-212.
[4] 余心杰,吳雄飛,王建平,等.基于機器視覺的大黃魚形態(tài)參數(shù)快速檢測方法[J].集成技術,2014(5):45-51.
[5] JEONG S J,YANG Y S,LEE K,et al.Vision-based Automatic System for Non - contact Measurement of Morphometric CharacteristicsofFlatfish[J].Journalof Electrical Engineering&Technology,2013,8(5):1194-1201.
[6] IVORRA E,VERDU S,SáNCHEZ A,et al.Predicting Gilthead Sea Bream(Sparus aurata)Freshness by a Novel Combined Technique of 3D Imaging and SW-NIR Spectral Analysis[J].Sensors,2016,16(10):1735.
[7] 吳微,苑瑋琦,林森,等.手掌靜脈識別中感興趣區(qū)域的選擇與定位研究[J].光電子·激光,2013(1):152-160.
[8] 劉春曉,朱臻陽,伍敏,等.基于主色檢測與灰度傳播的彩色圖像灰度化方法[J].計算機輔助設計與圖形學學報,2016,28(3):433-442.
[9] 沈?qū)W利,王肅國.基于FPGA的改進型中值濾波算法研究[J].微電子學與計算機,2014(1):21-24.
[10]CANNY J.A computational approach to edge detection[J].IEEE Transactions on pattern analysis and machine intelligence,1986(6):679~698.
[11]陳勇平,郭文靜,王正.基于數(shù)學形態(tài)學的木材單板節(jié)子識別改進算法[J].林業(yè)科學,2015,51(9):90-95.
[12]SHI J,TOMASI C.Good features to track[C]//IEEE Computer Society Conference on Computer Vision&Pattern Recognition,Cvpr.CiteSeer,1994:593-600.
[13]HARRIS C.A combined corner and edge detector[J].Proc alvey vision conference.1988,15(50):147-151.
[14]易子豐,孫堅,鐘紹俊,等.基于OpenCV的高精度零件角點距離測量研究[J].電視技術,2011,35(17):126-128.
[15]任繼昌,楊曉東.基于角點檢測的雙目視覺測距新方法[J].電光與控制,2013,20(7):93-95.
[16]范文博,王文龍,陳岳龍,等.最小二乘直線擬合方法及其在同位素地質(zhì)年代學中的應用研究[J].地質(zhì)論評,2013,59(5):801-815.
[17]ZHAN Z,SHI L,WANG B,et al.A improved CF model base on normaldistribution and Euclidean distance[C]//International Conference on Computer Science& Education.IEEE Xplore,2009:189-192.
[18]NJC S.Length measurement of fish by computer vision[J].Computers&Electronics in Agriculture,1993,8(2):93-104.
[19]HSIEH C L,CHANG H Y,CHEN F H,et al.A simple and effective digitalimaging approach for tuna fish length measurement compatible with fishing operations[J].Computers&Electronics in Agriculture,2011,75(1):44-51.
[20]WILLIAMS K, LauffenburgerN, ChuangM C, etal.Automated measurements of fish within a trawl using stereo images from a Camera-Trawl device(CamTrawl)[J].Methods in Oceanography,2016,17:138-152.
Study on fish caudal peduncle measuring method based on image processing and linear fitting
HU Zhuhua1,2,CAO Lu1,ZHANG Yiran1,ZHAO Yaochi1
(1 College of Information Science and Technology Hainan University,Haikou 570228,China;2 State Key Laboratory of Utilization of Marine Resources in the South China Sea(Hainan University),Haikou 570228,China)
The measurement of fish caudal peduncle in aquaculture farm is of great significance in aquaculture management.At present,the main measuring method is depend on manual work which is inefficient and subjective.This study proposed a new measuring method based on image processing and linear fitting.Firstly,the images are collected in the fish farm using equipments;then,the external contour of the fish is obtained through edge detection and contour extraction based on the fish morphological character;finally,the length of caudal peduncle is figured out using corner detection and least square line fitting after the extracting of ROI of the caudal peduncle.The results show that the average measurement time is 1.01 seconds,the average measurement error is 0.34 mm,and the accuracy of measurement has reached over 95%.Lots of studies have shown that the proposed method can not only solve the problem that manual operation is complex as well as subjective,but also avoid time-consuming measurement;and provide an effective way for non-contact mass measurement of fish caudal peduncle.
fish caudal peduncle;length measurement;image processing;least square line fitting;Liusha port of Zhanjiang
TP391.41
A
1007-9580(2017)02-043-07
10.3969/j.issn.1007?9580.2017.02.008
2017-01-09
海南省自然科學基金項目(20166232,20167238,617033);南海海洋資源利用國家重點實驗室開放項目子課題(2016013B);海南大學研究生優(yōu)秀學位論文培育計劃項目
胡祝華(1979—),男,副教授,博士研究生,研究方向:智慧農(nóng)業(yè),信號處理。Email:eagler_hu@163.com
趙瑤池(1980—),女,副教授,碩士,研究方向:圖像處理,智能系統(tǒng)。Email:yaochizi@163.coms