劉孝星, 鄭力新, 周凱汀, 吳哲, 林立峰
(1. 華僑大學 信息科學與工程學院, 福建 廈門 361021; 2. 華僑大學 工學院, 福建 泉州 362021)
采用圖像處理的膠囊尺寸缺陷檢測方法
劉孝星1, 鄭力新2, 周凱汀1, 吳哲2, 林立峰1
(1. 華僑大學 信息科學與工程學院, 福建 廈門 361021; 2. 華僑大學 工學院, 福建 泉州 362021)
針對透明膠囊的成像特點,提出一種實時性好、健壯性較強的結合閾值分割、腐蝕、輪廓提取及區(qū)域填充的圖像提取算法.利用旋轉和一階差分分割膠囊本體,通過最小包圍矩形測量膠囊的尺寸,并與公認標準進行對比,從而判別膠囊是否存在尺寸缺陷.實驗結果表明:膠囊圖像提取和尺寸缺陷識別算法的平均漏檢率為6.38%,平均誤檢率為4.13%.
尺寸缺陷; 膠囊; 圖像處理; 區(qū)域分割
Abstract: In view of the characteristics of transparent capsule image, this paper proposed the image extraction algorithm combining with threshold segmentation, corrosion, contour extraction and region filling with good real-time and strong robustness. Then by using rotating and first-order difference divided capsule ontology, through the minimum bounding rectangle measured the size of capsule, compared with generally accepted standards we can distinguish whether capsule exists size defect. The experimental results show that: the average missing rate of capsule image extraction and the size defect recognition algorithm was 6.38%, the average error rate was 4.13%.
Keywords: size defect; capsule; image processing; region segmentation
近年來,隨著醫(yī)藥行業(yè)的飛速發(fā)展,膠囊以能有效掩蓋藥物不良氣味、提高藥物穩(wěn)定性、延緩藥物釋放及易于服用等優(yōu)點,廣泛地應用于保健品和藥品領域.在空心膠囊的生產(chǎn)過程中,尺寸缺陷是常見的一種缺陷膠囊.目前,針對空心膠囊尺寸缺陷的問題,國內生產(chǎn)企業(yè)普遍采用人工檢驗的方式,檢測效率極低.機器視覺技術具有非接觸測量、長時間穩(wěn)定工作等優(yōu)勢,正逐漸應用于工業(yè)表面檢測領域.因此,基于圖像處理的空殼膠囊尺寸缺陷檢測方法代替?zhèn)鹘y(tǒng)的人工檢測是膠囊制藥行業(yè)發(fā)展的趨勢.許多學者對相關檢測算法進行了研究[1-3].本文提出一種適合工業(yè)現(xiàn)場的膠囊尺寸缺陷檢測方法.
利用機器視覺技術對膠囊尺寸進行測量時,需要考慮以下5個問題:1) 圖像噪聲的濾除;2) 膠囊自身圖像與背景圖像的分離;3) 膠囊各區(qū)域的分割,包括體(未重合部分,下文統(tǒng)稱為體)、帽(未重合部分,下文統(tǒng)稱為帽)、重合區(qū);4) 圖像處理算法的實時性;5) 算法的健壯性.通過算法的對比和研究,設計了一套膠囊尺寸缺陷檢測方案,其算法流程,如圖1所示.
圖1 膠囊尺寸檢測流程圖Fig.1 Flow chart of capsule size detection
2.1ROI設定及預處理
膠囊尺寸缺陷識別算法是整個缺陷檢測過程的核心.在外觸發(fā)方式下,電荷耦合器件(CCD)相機每次采集的圖像中包含了4個膠囊檢測位,每幅圖像中膠囊位置相對固定.為了便于對膠囊圖像進行分析及減少數(shù)據(jù)運算量,在獲取的原始圖像中,設定4個感興趣區(qū)域(ROI),每次提取單一的區(qū)域圖像進行處理,如圖2所示.CCD相機采集的圖像中,常夾雜光子散粒噪聲、暗電流噪聲、讀出噪聲、時鐘感應噪聲等[4],導致圖像質量降低,對后續(xù)圖像提取、圖像分割和尺寸測量造成較大影響.因此,采用濾波去噪對圖像進行預處理.為了保證算法的實時性,并最大程度地保持圖像細節(jié),采用改進型中值濾波去除噪聲[5-6],使算法的時間復雜度從O(n2)降低為O(n),其效果如圖3所示.
2.2閾值分割及空位判別
背景圖像對目標圖像處理造成很大干擾,需要提取目標本體圖像,使其與背景完全分離.相較于不透明膠囊,透光性較強的透明膠囊是膠囊自身圖像提取中的難點.透明膠囊的灰度分布不同,灰度值在中部最高,靠近邊緣處較低.假設透明膠囊所處的灰度區(qū)間為D1,背光部分所處的灰度區(qū)間為D2,則存在一個非空區(qū)間K使D1∩D2=K.因此,雙閾值分割將中間區(qū)域作為背景處理,使分割后的圖像只剩下膠囊的邊緣部分.雙閾值通過大量實驗測試得出,經(jīng)雙閾值分割后的兩種膠囊,如圖4所示.
排料過程中,由于膠囊在料槽出口處堆積,可能導致傳送鏈條的膠囊槽未被完全填滿.由圖4(b)可知:分割后的圖像仍存在膠囊槽的輪廓.若膠囊槽中有膠囊,則除了輪廓之外,還有膠囊本體;反之,二值圖中僅有輪廓線,如圖5所示.二值圖像中,背景部分的像素值為0,前景部分的像素值為1.槽中有、無膠囊的兩種情況下,前景的像素數(shù)量相差較多,通過統(tǒng)計像素值為1的像素個數(shù),并與合適的閾值比較,即可判斷是否為空位.圖5中的膠囊槽輪廓像素為1 291個,圖4(b)中的像素為10 236個,若為不透明膠囊,則像素個數(shù)還會進一步增加.因此,該閾值判別法可準確進行空位判別.
2.3形態(tài)學處理
為了去除多余的膠囊槽輪廓,對雙閾值分割后的二值圖像進行腐蝕處理.腐蝕處理時,腐蝕的內核大小的選取十分重要,內核過大會導致膠囊的邊緣被過多地腐蝕而出現(xiàn)斷裂,如圖6(a)所示.膠囊槽的輪廓寬度通常在3個像素之內,使用稍大的結構元素可對其進行處理.在腐蝕過程中均選用3×3的方形結構元素處理圖4(b)的殘余背景,盡可能減少對膠囊邊緣造成的影響,結果如圖6(b)所示.
2.4膠囊輪廓提取
腐蝕后的二值圖除了膠囊區(qū)域外,還可能有其他小目標區(qū)域.為了對各連通域進行分析,必須對其標號.在目標區(qū)域較為復雜時,像素標記法[7-8]、線標記法[9]、基于四叉樹的標號算法[10]等圖像標號算法處理時間會迅速增加.膠囊的邊緣區(qū)域因具有較多“U”形或“E”形的復雜連通域,以上方法并不適用.文中將區(qū)域生長的思想應用于區(qū)域標號中.從圖像左上角開始對像素進行逐一掃描,若碰上沒有標號的像素,則把該像素作為種子點,按照棧的方式存儲,對其鄰域的像素進行標記,并同樣存儲標記過的像素,從棧中去除像素,作為新種子點標記其鄰域,棧內無像素點時終止.采用8鄰域方向生長時,對圖像的遍歷次數(shù)能夠從8次減少為4次左右.通過區(qū)域生長的方式對不同的目標區(qū)域進行逐一標號,實現(xiàn)各個區(qū)域之間的相互區(qū)分.標號的最大數(shù)值m,即為目標區(qū)域的個數(shù).
二值圖像中膠囊邊緣有內、外兩層輪廓,外層輪廓包含了整個膠囊所處的區(qū)域. 為了利用外層輪廓
圖7 8鄰域方向Fig.7 8-direction of neighborhood
提取出膠囊本體圖像,并節(jié)省跟蹤內層輪廓的時間,需獲取輪廓線上的像素坐標,并對該輪廓進行描述.蟲隨法算法簡單,但易忽略邊緣輪廓上的個別凸起[11];光柵掃描法受閾值大小影響大,且掃描次數(shù)不定,難以實際應用[12].文中采用鄰域點邊界跟蹤法可較好地避免以上問題.首先,定義8鄰域的方向(圖7),并設立集合L和變量dir,分別存儲已跟蹤輪廓所屬的區(qū)域標號和從前一個邊界元素到下一個邊界元素的方向.然后,按以下4個步驟執(zhí)行.
步驟1對方向變量賦值,使dir=7,并從圖像左上角開始從上到下、從左到右進行搜索,直至找到第一個非零像素,且該像素的標號l滿足l?L,則該像素P0是其所在區(qū)域Q1第一列的第一行元素.因此,以P0為區(qū)域輪廓的起始像素,并將該區(qū)域的標號添加到集合L中.
步驟2若dir為偶數(shù),用(dir+7)除以8的余數(shù)對其重新賦值;若dir為奇數(shù),用(dir+6)除以8的余數(shù)對其重新賦值.以dir為起始方向逆時針搜尋當前像素的8鄰域,找到的第一個非零像素是當前區(qū)域中新的輪廓元素Pn,同時更新dir,使其等于Pn-1到Pn的方向數(shù)值.
步驟3如果當前的輪廓元素Pn等于第二個輪廓元素P2,且前一個元素Pn-1等于P0,則進行步驟4,區(qū)域Q1的輪廓像素集合為{P0,P1,…,Pn};否則,返回步驟2.
步驟4統(tǒng)計當前集合L中的元素個數(shù)num.若num=m,表明圖像中各區(qū)域輪廓均已獲取,結束操作;若num≠m,返回步驟1,獲取圖像中其他區(qū)域的輪廓.
由于同種膠囊之間存在微小的差異,少數(shù)膠囊在雙閾值分割后邊緣部分較窄,經(jīng)腐蝕處理后出現(xiàn)邊緣斷裂.為了提高算法的魯棒性,解決個別膠囊因邊緣不完整導致的錯誤分割問題,在獲取膠囊邊緣輪廓后,進一步對輪廓進行凸包的構建.膠囊所在區(qū)域Q的輪廓可近似為凸形,重構后的輪廓基本不變,如圖8(a)所示;而腐蝕后出現(xiàn)邊緣斷裂時所獲得的輪廓為凹形,如圖8(b)所示.
若連接斷開處的兩個拐點,并去掉兩個拐點之間的曲線,即可獲得近似的膠囊輪廓.輪廓上點的集合{P0,P1,…,Pn}已按逆時針方向排序,以P0為起點從P2開始進行判斷.首先,得到向量P0P1和P1P2,計算c=|P0P1×P1P2|/(|P0P1|×|P1P2|),若c>0,則P1到P2的路徑相對于P0到P1的路徑是向左轉的,表明P2是凸包上的一個頂點;反之,若c≤0,則P1到P2的路徑相對于P0到P1的路徑是向右轉的,此時,P2就不是凸包的頂點,將P2從點集中移除,以此對后續(xù)的點進行判斷直至回到P0,得到新的點集{p0,p1,…,pn},按順序連接這些點并繪制于一幅新的背景圖像,即可得到所需的凸形輪廓,如圖8(c)所示.
2.5區(qū)域填充與膠囊自身圖像提取
漫水填充法能有效完成對目標區(qū)域的提取[13],但效率較低.文中采用掃描線方法,首先,在輪廓上尋找兩點Pi=(xi,yi)和Pj=(xj,yj),使yi由yj為凸形,所以線段PiPj端點外的任意一點Pk=(xk,yk),若Pk?{P0,P1,…,Pn}在輪廓內部;反之,則重新尋找.膠囊圖像提取效果,如圖9所示.
3.1圖像旋轉
膠囊在槽中的位置不是完全固定的,在圖像中可能出現(xiàn)一定角度的傾斜,將影響后續(xù)的分割.將圖像中的點經(jīng)過線性變換后重新映射到新的圖像中,實現(xiàn)膠囊的旋轉,可使其側邊與水平方向垂直.二維圖形以任意點(xc,yc)為旋轉中心,以α為旋轉角的旋轉公式為
(a) 傾斜 (b) 旋轉后圖10 膠囊旋轉Fig.10 Capsule rotation
進行旋轉前,首先要確定旋轉中心和旋轉角度.圖像中膠囊的輪廓是由離散的點構成的凸多邊形,其最小面積的外接矩形至少有一個邊與輪廓上的一個線段共線.膠囊的外形較為特殊,其最小面積外接矩形的兩條相互平行的邊分別與膠囊兩個側邊共線,計算最小面積外接矩形的中心點坐標及其傾斜角即可得到所需的旋轉中心和旋轉角度,膠囊旋轉效果,如圖10所示.
3.2重合區(qū)邊緣檢測
膠囊體、帽套合時將產(chǎn)生一個重合區(qū)域.為了測量體、帽的長度,必須將每個區(qū)域分割出來.常用的區(qū)域分割方法有區(qū)域生長分割、分水嶺分割.區(qū)域生長需要先確定種子點位置和生長準則,再確定其周圍像素是否屬于同一區(qū)域[14].體、帽的透光率相對均勻,無論兩者的顏色是否相同,重合區(qū)的透光率會低于重合區(qū)外的部分.
因此,體、帽未重合的部分較亮,重合部分較暗,且各部分的灰度基本一致,膠囊區(qū)域內自上而下在第一個重合區(qū)邊緣時,由亮變暗;在第二個重合區(qū)邊緣時,由暗變亮.因此,對膠囊區(qū)域內某一垂直于水平方向的剖面線f(i,j)做差分運算,在點(i,j)處沿豎直方向的一階差分可表示為
得到差分曲線的波谷、波峰分別對應自上而下時重合區(qū)的第一、二個邊緣,如圖11所示.圖11中:A為灰度;n表示第n個像素.
圖11 剖面線差分曲線Fig.11 Differential curve of section lines
由于靠近膠囊邊緣的部分亮度與內部差異較大,因此,需選取合適的剖面線.假設原最小面積外接矩形旋轉后得到的新矩形左上角的坐標為(x1,y1),寬度為w,高度為h,以x=x1+w/2作為剖面線在水平方向上的位置,并按照固定比例0<λ<1舍棄膠囊兩頭的一部分λh,得到剖面線的起始點坐標分別為(x1+w/2,y1+λh),(x1+w/2,y1+(1-λ)h).
對該剖面線上的灰度值做差分運算后篩選出差分結果的最大、最小值,獲取它們的坐標,即可找到膠囊重合區(qū)的上下兩個邊緣在圖像中的位置.
膠囊重合區(qū)的邊緣位置已知,可通過設定ROI分割出3個區(qū)域的圖像.設圖像旋轉后的最小面積包圍矩形的左上角坐標為(xleft,ytop),右上角坐標為(xright,ytop), 右下角坐標為(xright,ybottom), 左下角坐
(a) 第一部分 (b) 第二部分 (c) 第三部分圖12 膠囊本體分割結果Fig.12 Result of capsule segmentation
標為(xleft,ybottom),若至上而下膠囊第一個邊緣的位置為yk,第二個邊緣的位置為yj,以頂點(xleft,ytop),(xright,ytop),(xleft,yk),(xright,yk)的矩形為第一個ROI,(xleft,yk),(xright,yk),(xleft,yk),(xright,yj)為第二個ROI,(xleft,yj),(xright,yj),(xright,ybottom),(xleft,ybottom)為第三個ROI,分割出膠囊的3個區(qū)域,如圖12所示.膠囊在圖像中豎直放置,3個ROI的長度即膠囊3個區(qū)域的尺寸,可得膠囊兩節(jié)的尺寸為yj-ytop和ybottom-yk,兩者數(shù)值較小的即為膠囊帽尺寸,較大的為膠囊體尺寸.判斷測量的帽、體尺寸是否在標準的尺寸范圍內,即可知膠囊是否存在尺寸缺陷.
在Intel Core i7 4770k處理平臺下進行實驗測試,采用任務并行處理技術處理3臺相機所采集的圖像所花費的總時間平均為7.9 ms.在生產(chǎn)線上隨機抽取膠囊作為測試樣本,檢測完成后由專門的檢測人員分別從成品和次品中抽樣檢測,統(tǒng)計膠囊的漏檢率和誤檢率.5次抽樣結果顯示:平均漏檢率為6.38%,平均誤檢率為4.13%;膠囊圖像提取和尺寸缺陷識別算法的健壯性較強,實時性較好.
[1] ISLAM M J,AHMADI M,SID-AHMED M A.Image processing techniques for quality inspection of gelatin capsules in pharmaceutical applications[C]∥International Conference on Control, Automation, Robotics and Vision.Washington D C:IEEE Press,2008:862-867.
[2] MURAI T,MORIMOTO M,FUJII K.A visual inspection system for medical capsules[C]∥International Conference on Systems, Man, and Cybernetics.Washington D C:IEEE Press,2012:1433-1437.
[3] 王娟,周永霞,徐冰俏.圖像處理在膠囊外形缺陷檢測中的應用[J].中國計量學院學報,2012,23(3):239-245.
[4] WANG Dejiang,ZHANG Tao.Noise analysis and measurement of time delay and integration charge coupled device[J].Chinese Physics B,2011,20(8):352-357.
[5] 楊文博,馬天瑋,劉劍.非局部變分修復法去除高密度椒鹽噪聲[J].中國光學,2013,6(6):876-884.
[6] 李剛,范瑞霞.一種改進的圖像中值濾波算法[J].北京理工大學學報(自然科學版),2002,22(3):376-378.
[7] ROSENFELD A,PFALTZ J L.Sequential operations in digital picture processing[J].Journal of the ACM,1966,13(4):471-494.
[8] HARALOCK R M,SHAPIRO L G.Computer and robot vision[M].New Jersey:Prentice Hall,1991:57-64.
[9] IRANI M,ANANDAN P,BERGEN J,etal.Efficient representations of video sequences and their applications[J].Signal Processing: Image Communication,1996,8(4):327-351.
[10] 吳恒山,段雄文,李晨陽.葉結點編碼四叉樹的鄰域尋找算法[J].計算機應用,2005,25(11):2624-2626.
[11] 周秀芝,陳洋,胡文婷.基于交叉點的樹遍歷二值圖像邊界跟蹤算法[J].計算機應用與軟件,2014,31(2):230-232.
[12] 王福生,齊國清.二值圖像中目標物體輪廓的邊界跟蹤算法[J].大連海事大學學報,2006,32(1):62-64.
[13] ZHOU Zhiwei,LI Linlin,TAN C L.Edge based binarization for video text images[C]∥International Conference on Pattern Recognition.Washington D C:IEEE Press,2010:133-136.
[14] ADAMS R,BISCHOF L.Seeded region growing[J].IEEE Transactions on Pattern Analysis and Machine Intelligence,1994,16(6):641-647.
(責任編輯: 錢筠英文審校: 吳逢鐵)
DetectionMethodofCapsuleSizeDefectUsingImageProcessing
LIU Xiaoxing1, ZHENG Lixin2, ZHOU Kaiting1, WU Zhe2, LIN Lifeng1
(1. College of Information Science and Engineering, Huaqiao University, Xiamen 361021, China;2. College of Engineering, Huaqiao University, Quanzhou 362021, China)
10.11830/ISSN.1000-5013.201505045
2015-05-25
鄭力新(1967-),男,教授,博士,主要從事工業(yè)自動化技術的研究.E-mail:1275373176@qq.com.
福建省科技廳資助項目(2013H2002)
TP 391
A
1000-5013(2017)05-0716-05