張杭文,袁國良,張 云,于文馳
(1.上海海事大學 上海 201306;2.上海海洋大學 上海 201306)
在現實生活中對常常需要對采集的魚卵進行相應的計數處理,以計算魚的繁殖率,在水廠養殖方面,魚卵計數是其很重要的一個環節,人工計數魚卵時間成本大,不方便,操作誤差大,效率低,不利于對魚的研究。有必要想新的方法,對其進行計數.借助數字圖像處理這面比較成熟的學科,再結合計算機圖像識別和處理計數來實現魚卵的計數,這樣做更方便快捷.可以提高計數的精度和效率。
目前圖像處理計數在水產養殖方面開展的比較晚,研究報道相對比較少,但已開始在多個領域應用,如魚種類識別,魚類尺寸測量,生長發育研究和行為檢測等等,圖像處理技術在魚類中的應用報道較少,圖像處理技術在魚卵計數技術上的研究更是罕見.在國內關于魚卵計數處理的研究,目前關于魚卵計數的方法主要有體積比對法或質量比對法,即通過計數小體積(小質量)的卵粒數,得到單位體積(單位質量)內的卵粒數,進而求得總體積(總質量)的卵粒數[1],此方法雖然簡單,但效率低、操作誤差大,不適用懷卵量少的魚類,同時該方法會對魚卵造成一定損傷,為此需要尋求一個更好的魚卵計數方法應用于其繁殖生物學研究和選育工作中,避免魚卵損傷并提高計數的效率和精確性。最近的關于魚卵計數的研究有基于彩色圖像處理的魚卵計數方法,利用計算機圖像識別和處理技術實現魚卵的計數,該方法可以提高計數的精度和工作效率,避免魚卵受損傷,同時可以留下被測對象的影像記錄作為備案,為育種工作提供一種高效快捷的魚卵計數新技術,具有一定的理論和應用價值,比較常見的魚卵計數方法有面積計數法,即將二值圖中目標圖像總面積和魚卵平均面積相除,獲得魚卵的總面積[2-6]。這種方法雖然簡單,但誤差大,計數隨機性增大。
文中提出了基于采集的魚卵圖像的魚卵計數方法,分別是檢索輪廓和繪制輪廓計數,這種計數方法既避免了上述金萬昆等論文中計數效率低、操作誤差大等缺點,也克服了林勇等論文中魚卵計數隨機性大的缺點,論文高效率的計算出魚卵的個數,具有實際的應用效果,在水產養殖方面具有一定的理論和實際應用效果。
魚卵計數的總體設計結構如圖1所示,首先,對獲取的圖像進行預處理。因為在獲取圖像的過程中,很難避免的引入的隨機噪聲,所以對獲取的圖像進行了中值濾波,使得計數更精確。然后再對預處理后的圖像進行閾值分割,最后獲得魚卵圖樣以實現魚卵個數的自動計數,閾值分割法是本系統的關鍵之一。由于對于不同的圖像,最優閾值分割算法不盡相同。在本研究中,針對魚卵圖像提出了一個行之有效的算法,針對預處理后的魚卵圖片進行相應的計數,本文對魚卵圖片提出了兩種計數方法,即連通區域標號計數和檢索輪廓繪制輪廓計數,達到了不錯的魚卵計數的效果。

圖1 系統總體結構圖Fig.1 Structure diagram of the whole system
將彩色圖像轉化為灰度圖像稱為圖像的灰度化處理,彩色圖像的每個像素的顏色有R.G.B 3個分量決定,而每個分量有255種值可取,這樣每個像素可有1 600多萬(255*255*255)的顏色的變化范圍,而灰度圖像時R.G.B 3個分量相同的一個特殊的彩色圖像。其中一個像素點的變化范圍為255中,所以在數字圖像處理一般先將各種格式的圖像轉變成灰度圖像,使得后續的計算量少點,便于后期的處理。一般有以下4種方法進行灰度化:1)分量法,2)最大值法,3)平均值法,4)加權平均法。其中采用的是分量法的思想為:將彩色圖像中的三分量的亮度作為3個灰度圖像的灰度值,可根據應用需要選取一種灰度圖像。

其中 fk(i,j)(k=1,2,3)為轉化后灰度圖像在(i,j)處的值,原始圖片如圖2所示,經過灰度化后如圖3所示。

圖2 原始圖片Fig.2 The original picture
實驗采集到的魚卵難免有噪聲和干擾,這些噪聲會降低圖像的質量,常見的去噪大致分為兩類:一是時域去噪,而是頻域去噪.時域去噪的代表方法有加權平均法,中值濾波法和二值形態學等,頻域去噪的代表方法有經典數字濾波器,同態濾波,小波分析法等,本文采用的是時域去噪的中值濾波法,對魚卵進行相應的平滑處理,濾除相應的噪聲,以便以后對魚卵圖片進行進一步處理,在魚卵計數中,中值濾波的效果不錯,其算法如下:

圖3 灰度圖片Fig.3 Grayscale images
中值濾波采用一個含有奇數個數的滑動窗口,用窗口中灰度的中值代替窗口中心像素點的值,讓周圍的像素值接近的中間值。 對于一個一維序列 f1,f2…,fn,取窗口長度為 m,m為奇數序列。對此序列進行中值濾波,就是從序列里取出m個元素,fi-r, …fi-1,fi,fi+1, …,fi+r其中 fi為窗口的中心位置,r=(m-1)/2,將這m個元素按照數值大小排列,位于正中間的那個數值作作為濾波輸出:

同理二維中值濾波:
g(x,y)=med{f(x-k,y-l),(k,l,w)},其中 f(x,y),g(x,y)分別為原始圖像和處理后的圖像,w為二維模板,通常為2×2,3×3 區域,本文為用的是 3×3 區域。
用中值濾波的方法既保護了圖像的邊緣,又有效濾除了相應的噪聲。
圖像的二值化處理就是講圖像上的點置為0或255,也就使整個圖片呈現出比較明顯的黑白效果。將256個亮度等級的灰度圖片通過適當的閾值選取而獲得反應圖像整體和局部特征的二值化圖片,圖像的二值化有利于圖像的而進一步處理,使圖像變得簡單,而且數據量減小,能凸顯出感興趣的目標的輪廓,本文中利用灰度圖片二值化,就是為了將魚卵和背景分離,選擇合適的分割閾值,當一個像素的灰度值超過這個閾值就可以說這個像素是感興趣的目標,負責為背景,本文在選取閾值的創新點在于:通過對魚卵的灰度圖像的膨脹(cvDilate)處理,該結構決定了每個具有最大像素點的鄰域形狀,處理后的結果如圖4所示,再對魚卵灰度圖像的腐蝕(cvErode)處理,該結構決定了每個具有最小像素點的鄰域形狀,處理后的結果如圖5所示,最終的閾值取最大像素和最小像素的平均值,超過這個閾值點的像素選取為魚卵像素,否則選為背景像素。
該方法的思想是:
先求出最大像素點灰度值Zmax和最小像素灰度值Zmin,選中間的閾值H0,有:


圖4 魚卵圖片膨脹后的圖Fig.4 Fish spawns image after dilation

圖5 魚卵圖片腐蝕后的圖Fig.5 Fish spawns image after erosion
把H0設置成為圖像的相應的閾值,大于H0的為背景,小于H0作為魚卵。
在選定H0為閾值時,有:

對于魚卵選定 g(i,j)=1,對于背景選定為 g(i,j)=0。
上述取中值的閾值方法適合背景和前景有明顯對比的魚卵圖像。
除上述閾值方法外,自適應閾值是不錯的選擇,自適應閾值是一種改進了的閾值技術,其中閾值本身是一個變量,自適應閾值T(x,y)的每個像素點都不同,通過計算像素點周圍的b*b區域的加權平均,然后減去一個常數來得到自適應閾值,本文檢索輪廓和繪制輪廓計數采用的是自適應閾值的方法,常用的閾值的選取還有全局閾值、最佳閾值等等
對于取得的魚卵圖片中有魚卵是粘連在一起或是有些魚卵是斷開的,在二值化處理圖片后也會產生相應的噪聲或空洞,膨脹和腐蝕是形態學最基本的運算之一,對魚卵進行膨脹和腐蝕的運算能很好的將粘連的魚卵分離開,并且腐蝕和膨脹能將斷開的魚卵進行連接。并且利用形態學的膨脹和腐蝕的原理也能很好的濾除應二值化而產生的噪聲和空洞。效果如圖6所示。
二值化后的圖像像素只有0和1,兩個值,分別代表背景和目標,輪廓是構成任何一個形狀的邊界或外形,姑且把它作為背景和目標的分界點,查找到目標的輪廓 (可以利用OpenCV提供的方法cvFindContours()的方法),在查找到輪廓之后,即所謂的邊緣點,將檢測的邊緣點連接成線實現所謂的邊緣跟蹤。將檢測的邊緣點連接成線包括兩個過程:1)提取可構成線特征的邊緣;2)將邊緣連成線。

圖6 二值化圖片Fig.6 Binary image
不同輪廓的組織是不一樣的,根據不同的選擇,它們可能是:1)列表;2)雙層結構;3)樹型結構。 從縱向上來看, 輪廓可以使用遞歸的方式。本文采用的是樹形結構。通過對輪廓的跟蹤實現對輪廓的計數。圖7為檢索輪廓和繪制輪廓后的計數后的圖片。

圖7 檢索輪廓圖片Fig.7 The image of contour segmentation
圖8為檢索輪廓和繪制輪廓計數結果。

圖8 計數結果Fig.8 Counting results
上述的相關參數的定義可以通過表格1給出。

表1 原魚卵圖像2的相關參數Tab.1 Parameters estimated by image 2
對于兩種計數魚卵的方法都很大程度上建立在采集魚卵時魚卵的質量上的,對于粘連的系數比較小的魚卵準確性相當的高,對采集的魚卵的處理上甚至有準確性達到100%的,即誤差為零。在檢索輪廓和繪制輪廓計數和連通區域標號計在對圖2進行處理也達到了99.7%點多 (原魚卵個數356個,檢索輪廓和繪制輪廓計數為368個),精確度相當高,在采集魚卵的時候也有些魚卵是粘連在一起的,本文也對其進行了相應的處理,效果也不錯,總體來說,這這種計算魚卵個數的方法都在人容忍范圍內,是可行的魚卵計數的方法。
在采集魚卵,對魚卵進行預處理,計數的過程中,對于數目不是特別大的魚卵的處理精確度比較高,好的可以達到零誤差,隨著魚卵數目的增加,誤差也隨之增大,方法不適合魚卵較多的計數,在魚卵計數的時候,對于魚卵比較多的計數時,可以適當的對魚卵分離,控制魚卵的數量在一定數量個數以下,這樣即實現對魚卵比較精確的計數,也比純粹人工的要簡單和方便!實驗表明這種計數方法比較好,實用性比較強。
[1]金萬昆,楊建新,杜婷,等.津鰱繁殖力研究[J].齊魯漁業,2009,26(10):11-12.JIN Wan-kun,YANG Jian-xin,DU Ting,et al.Tianjin silver carp fecundity research[J].Qilu Fisheries,2009,26(10):11-12.
[2]楊慧贊,林勇,唐章生.廣西壯族自治區水產研究所[J].水生態學雜志,2011,32(5):138-141.YANG Hui-zan,LIN Yong,TAN Zhang-sheng.Fisheries research institute of guangxi zhuang autonomous region[J].Journal of Hydroecog,2011,32(5):138-141.
[3]尤育賽,于慧敏.一種重疊細胞圖像的分離方法[J].中國圖像圖形學報,2005,10(6):736-744.YOU Yu-sai,YU Hui-min.A separating algorithm for overlapping cell images[J].Chinese Journal of image and graphics,2005,10(6):736-744.
[4]CHIN F H Y,LAM F K.Adaptive thresholding by variational method[J].IEEE Transaction on Digital Object Identifer,1998,7(3):468-473.
[5]宋強,徐 科,徐金梧,等.基于圖像處理的棒材自動計數技術[J].鋼鐵,2004,39(5):34-37.SONG Qiang,XU Ke,XU Jin-wu,etal.Research and analyses on digital image processing technlogy for bar steel counting problem[J].steel,2004,39(5):34-37.
[6]Hislop J R G,Bell M A.Observations on the size,dry weight and energy content of the eggs some demersal fish species from British marine waters[C]//J.Fish Biol.,1987(13):1-20.
[7]Rosjean P,Picheral M,Warembourg C,et al.Enumeration,measurement,and identification of net zooplankton samples using the ZOOSCAN digital imaging system.ICES J.Mar.Sci.,2004(61):518-525.
[8]Carpentier A,Vaz S,Martin C S,et al.Eastern Channel Habitats Atlas for Marine Ressource Management(CHARM)[M].Atlas des Habitats des Ressources Marines de la Manche Orientale.Programme INTERREG 3a,2004.