欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

分層攝影圖減影的制作方法

文檔序號:6432792閱讀:156來源:國知局
專利名稱:分層攝影圖減影的制作方法
技術領域
本發(fā)明一般地涉及圖像檢測,更具體地說,涉及分層攝影圖減影(laminograph deshadowing)。
背景技術
“分層攝影法”(laminography)包括多種成像技術。本領域中公知有許多這里被稱作分層攝影法的成像方法,它們進行“2-維”成像。在分層攝影法中,諸如電磁輻射或聲波的某種能量被引導穿過包含感興趣的(一個或多個)物體的區(qū)域。使用一個或多個靜止傳感器或移動傳感器感應能量。傳感器可以包含排成列、柵格或某種其他的規(guī)則或不規(guī)則圖案的多個感應元件。通常使用(一個或多個)線性或非線性平均運算來組合在各個時刻和位置處得到的傳感器輸出(這里應被稱作圖像)。這些平均運算通常使用模擬、數(shù)字或軟件手段來產生穿過物體的一個或多個層面。層面可以不是完全的平面,而是每個近似為二維。每個層面可以被視作物體的密度、透明度、溫度、顏色或某種其他的物理屬性的二維圖,該物理屬性影響感應過程中所用的能量的透過。因為多個層面可以被用來估計物體的三維重構,所以分層攝影法經常被稱作“2-維”。這樣,分層攝影法和斷層成像法(tomography)不同,不同之處在于在斷層成像法中得到了物體的完全三維重構。為了做到這點,斷層成像法通常比分層攝影法更困難和費時。但是,與該速度和復雜度優(yōu)點相對應,分層攝影法的劣勢是分層攝影圖常常包含層面外的物體的陰影。
為了確保質量,電子電路板等在制造后可能需要自動化檢測,以確保元件焊點符合要求。對于視線光學成像,許多焊點可能是不可見的,這導致需要采用X射線成像,聲成像等等。在這些圖像可以提供對視線外的(例如在元件下)的焊點(例如球柵陣列)的視圖的同時,這些圖像還得到了在印刷電路板(PCB)內部的細節(jié),例如導電跡線,以及印刷電路板相對側上的元件。在圖像中,來自板上相對側元件的焊點可能部分地或全部地覆蓋對象焊點,使質量評估惡化。因此,可以采用分層攝影法用于焊點檢測。
分層攝影法聚焦在包含感興趣焊點的平面上,而來自板另一側的焊點和元件放到光學焦點之外。在焊點平面中,各焊點通常鄰近沒有焊料或不透明元件的電路板。如圖1所示,典型的以前的分層攝影圖100將PCB導電跡線、相對側焊點和元件顯示為被模糊成陰影區(qū)域102,陰影區(qū)域102相對于被檢測的焊點101的尺寸而言很大。焊點101具有比電路板103明顯更高的X射線吸收性。因此,在X射線圖像中,焊點101比其周圍部分更暗。
分層攝影圖、射線圖或類似的圖像可以被視為在平面上分布的致密物體構建的。明暗度的變化使得對物體的分析復雜化,所說變化由一些因素引起,諸如由于非正交投射引起的圖像上的變化的系統(tǒng)增益和前述的焦點平面外的在焦點外的物體。因此,在PCB示例中,焊點圖像被疊加在PCB跡線的未聚焦陰影和相對側元件陰影的斑駁背景上。但是,因為人類視覺有選擇地把顯著信息從不重要信息中區(qū)別出來,所以對人類眼睛來說,平面中的焊點很醒目,而相對側上的元件不明顯。但是,計算機算法很難做出這樣的區(qū)分。而且,傳感器增益可能由于分層攝影設備元件老化以及分層攝影設備被X射線損壞等的原因而以隨時間改變的方式在圖像上變化。
分層攝影法的使用并不普遍,尤其對于焊點檢測。諸如AGILENT5DXTM的現(xiàn)有分層攝影檢測設備試圖通過使PCB掃描和對電路板設計的計算機輔助繪圖(CAD)表達相配合來確定近似的焊點位置,以補償背景值。
或者,對分層攝影圖進行干擾成分預期分布的建模以及從實際的圖像中減去或分出干擾成分可以采取“金像(golden image)”的形式。可以通過對已制造的沒有要測試元件的板(即,在板相對側的元件存在并被焊接)成像來得到這個金像。不同的測試機器,即使具有同樣的型號,也可能彼此不同,所以必須由每個單獨的機器掃描金板。此外,不能從CAD文件中準備這樣的金像,因為這樣的文件不會建模出確切的物理形狀、內部構造和間隙。
使用這些補償方案中任一種,配準(registration)中的變化可以引起假影(artifact),配準校正可能需要顯著的處理時間。而且,所采用的元件的外貌可變性可能導致圖像相對于金像或CAD布圖的變化。此外,諸如線圈芯或鉭質電容的一些元件可能相對于金像或CAD布圖偏移。
而且,現(xiàn)有的設備可以執(zhí)行定位器算法以細化對圖像中焊點位置的估計。已知位置后,對焊點周圍的區(qū)域采樣以估計背景,使得焊點的測量值可以被補償。因為進行檢測的焊點中的缺陷或者陰影可能損害定位器算法的操作,所以這種方法出現(xiàn)困難。而且,在這樣的定位器算法下通過推算定位選擇的像素可能被焊料橋或其他的焊點結構污染。
通常,自動化檢測系統(tǒng)基于被檢測物體的測量值對物體進行分類。通過這樣系統(tǒng)進行的分類任務的目的或目標是使用物體的測量值和/或測量值的組合來確定焊點等是“好”還是“壞”。典型地,被檢測焊點的測量值被與已知的好的和壞的物體的測量值相比較,或者與定義好的和壞的物體的規(guī)格相比較,并且做出類別隸屬關系(好或壞)的判斷。單個測量值不能被用來可靠地進行分類。而是經常需要多個測量值。測量值和/或測量值的組合,通常被稱作物體的特征,被與每個可能組的代表性特征集合相比較,并且基于比較結果的總體來做出決定。
對于使用諸如分層攝影系統(tǒng)的成像系統(tǒng)對焊點進行的自動檢測,目標是正確檢測出壞焊點,使得壞焊點可以被標記而不是留在最終的PCB中。同時存在的一個目標是避免將好焊點錯誤標地記為壞焊點,因為這會導致PCB生產成本的不當增加。好焊點有一定量的可接受的可變性。這種可變性有各種起因,例如引線相對于電路板焊盤的輕微偏移。相反地,壞焊點存在把壞焊點和好焊點區(qū)分開的某些特征,例如,不飽和焊點、過量焊點、不沾錫以及短路。成功的自動化視覺檢測系統(tǒng)應該產生圖像,所述圖像以可以以被計算機算法測量的方式捕獲這些差別。將焊點圖像的實質診斷特性提取成相對較少數(shù)目的測量值,所述測量值也稱作特征。獲得特征的處理也稱作特征提取。這樣特征的一些示例有焊點的橫向范圍以及焊點根部和尖部的焊料量的估計。理想的特征由于可接受的變化僅造成輕微變化,但是在面對一種或多種癥狀時呈現(xiàn)明顯不同的值。但是,實際上,任何給定的特征都在好指示器和壞指示器之間顯示出某種程度的重疊??赡苄枰煌治鋈舾商卣?,或許是許多特征,以可靠地捕捉所有癥狀而忽略可接受的變化。
因為經驗已顯示沒有任何單個測量值或特征與焊點是好還是壞充分相關,所以,有必要整體看待許多特征來區(qū)分好焊點和壞焊點。我們希望,如果焊點是壞的,則對至少一個特征而言該焊點將清楚地被定為不合格或者被分類為壞焊點。合格/不合格命名的高準確率需要好焊點的特征向量非常緊密地聚類。然而,疊加在分層攝影焊點圖像上的陰影和變化的增益傾向于以好焊點和壞焊點的特征向量變得混合在一起的方式使得這些測量值耗散。在這種情況下,高準確率檢測變得困難或者不可能。
在眾多的參考文獻中,與圖像處理相關地討論了現(xiàn)有的用于將結構元素(SE)分解成一系列更小的結構元素的算法的使用。Jianning Xu,Decomposition of Convex Polygonal Morphological Structuring Elements intoNeighborhood Subsets,1991 IEEE Transactions on Pattern Analysis andMachine Intelligence,第13卷,第2期,第153~162頁,1991年2月;以及Hashimoto等的一篇文章討論了用于分解凸二元結構元素的算法。Maragos等,Morphological Systems for Multidimensional Signal Processing,IEEE,第78卷,第4期,第690~710頁,1990年4月,示出了應用這種算子尺度從二次到線性的分解結構元素轉換的計算復雜度的示例。已知一種斜面(chamfering)腐蝕(erosion)算法已發(fā)表在H.G.Barrow等,Parametric Correspondence and Chamfer MatchingTwo New Techniques forImage Matching,IJCAI,第659~663頁,1977中。這篇文章的內容是創(chuàng)建圖像,圖像中的像素被編碼成到給定二值圖像的最近“邊緣”像素的距離。初始距離二值圖像在所有的像素中被初始化為最大值;然后將零寫入被認為是“邊緣”的像素。采用數(shù)學形態(tài)學腐蝕這個二值圖像,產生每個像素到最近的邊緣像素的距離圖。在Sternberg,Biomedical ImageProcessing,IEEE Computer,第22~34頁,1983年1月中報告了使用形態(tài)學操作以去除生物醫(yī)學膠體染色圖像中的背景條紋。Ioannis Pitas FastAlgorithms for Running Ordering and Max/Min Calculation,IEEE Transactionson Circuits and Systems,第795~804頁,1989年6月分析了平的矩形SE計算,得到了對數(shù)算法。但是,這種推導相對復雜并且難于編程。
一種通過無限橫向范圍的線性傾斜(linearly-sloped)結構元素的用于膨脹(dilation)的極快速光柵掃描方法是斜面算法,該算法最初公開在Rosenfeld,A.和Pflatz,J.L.,Distance Functions on Digital Pictures,patternrecognition,第1卷,第1期,1968年7月,第33~62頁中。在Danielson,Euclidean Distance Mapping,Computer Graphics and Image Processing,第14卷,第227~248頁,1980年中重復了這個方法;并且體現(xiàn)在Davis的美國專利No.5,960,127的教導中。Gild和Werman,Computing 2-D Min,Median,and Max Filters,1993 IEEE Transactions on Pattern analysis andMachine Intelligence,第15卷,第5期,第504~507頁,1993年5月,介紹了一種通過有限范圍的平結構元素在一維上膨脹的新的非??斓姆椒?,并且該方法可以用于對圖像應用平矩形結構元素。Gil等,EfficientDilation,Erosion,Opening,and Closing Algorithms,IEEE Transactions onPattern Analysis and Machine Intelligence,第24卷,第12期,第1606~1617頁,2002年12月,對這種方法在計算時間上進行了一些改進。

發(fā)明內容
本發(fā)明涉及用于從數(shù)字圖像尤其是灰度圖像中去除陰影的系統(tǒng)和方法。本發(fā)明可以用來對分層攝影圖減影,使得可以用更穩(wěn)定和良好聚類的特征來進行元件檢測。本發(fā)明利用數(shù)學形態(tài)學的操作以消除分層攝影圖或射線圖中焦點外物體的陰影效應。本發(fā)明尤其適于印刷電路板和/或布置在其上的元件的焊點的檢測。根據(jù)本發(fā)明可以有利地采用一種指數(shù)傳播算法(exponential propagation)以快速估算形態(tài)學算子。
根據(jù)本發(fā)明的陰影補償產生用于使得能夠進行高準確率的檢測的焊點分類的更清晰、更一致的特征。相對于以前補償方法的有利之處在于,本減影系統(tǒng)和方法在補償前不需要使用焊點定位器算法。根據(jù)本發(fā)明的實施例,可以均勻地對圖像應用減影。但是,如果僅僅對包含焊點的圖像區(qū)域應用減影,則可以更快地完成減影。作為另一好處,在減影之后運行焊點定位器算法可以更簡單、更快并且更準確。而且,本發(fā)明能夠從背景補償中分離特征提取,使得可以為每個特征提取采用更簡單的算法。
在減影之后,通過像素值分析,可以從背景區(qū)分出焊點。這樣,精確定位器算法可能變得不必要。而且繼減影之后,可以通過閾值法和連接區(qū)域提取來隔離焊點。這使得可以將特征提取限定于焊點的實際區(qū)域,而不包括焊點外區(qū)域的像素。而且,減影可以有利地使得可以將焊料橋等作為延伸跨越兩焊點預期位置的較大連接區(qū)域明確探測出來。
如上所述,相對于現(xiàn)有的補償方法,減影的好處包括在焊點定位前執(zhí)行減影。本減影系統(tǒng)和方法不需要為操作而預先知道焊點位置的知識,盡管為了減少計算時間可以使用焊點定位的粗略知識以將注意力集中于一般區(qū)域。雖然減影使得焊點定位器算法的任務更容易,但是減影也使得可以用前述閾值法和連接區(qū)域提取來代替焊點定位器算法。這種連接區(qū)域提取有利地將焊點像素和背景隔離開,使得特征提取更加集中和準確,并且焊料橋變得更明顯。經減影的分層攝影圖的連接區(qū)域提取產生更一致的經提取的特征,從而提高檢測準確率。
本發(fā)明應用如下描述的數(shù)學形態(tài)學體系中的操作,以建立分層攝影圖或其他圖像的背景值。數(shù)學形態(tài)學采用涉及結構元素的形態(tài)學算子。用于對分層攝影圖減影的方法可以包括選擇比要檢測的分層攝影圖的檢查元件大的數(shù)學形態(tài)學結構元素;在所述圖像上進行數(shù)學形態(tài)學操作;以及把所述圖像的背景和特征區(qū)分開來,以去除所述背景。
前述內容相當寬泛地概述了本發(fā)明的特征和技術優(yōu)點,以便可以更好地理解下文本發(fā)明的詳細說明。下文將描述本發(fā)明的其他特征和技術優(yōu)點,它們構成了本發(fā)明權利要求的主題。本領域技術人員應該理解,所公開的概念和具體實施例可以很容易地用作修改或設計用于執(zhí)行本發(fā)明同樣目的的其他結構的基礎。本領域技術人員還應該認識到這樣的等價結構不脫離權利要求中闡明的本發(fā)明的精神和范圍。由下面的附圖和說明書將可以更好地理解被認為是本發(fā)明特性的新特征及其操作方法和組成,以及其他目標和優(yōu)點。但是,所提供的每個附圖僅僅是為了解釋和說明的目的,而不是用來限定本發(fā)明。


為了更完全的理解本發(fā)明,參照下面說明并結合附圖,其中所述附圖圖1是示出了焊接到電路板的集成短路(IC)的現(xiàn)有技術分層攝影圖的片斷圖示;圖2是圖1的片斷分層攝影圖的圖示,其中該分層攝影圖已經根據(jù)本發(fā)明經過了減影;圖3是使用該分層攝影圖減影方法的焊點檢測實施例的流程圖;圖4是根據(jù)該分層攝影圖減影方法的實施例,采用2的冪(power-of-two)的結構元素的圖像膨脹的實施例的流程圖;圖5是采用該分層攝影圖減影方法的雙向2的冪的結構元素實施例的圖像膨脹的另一實施例的流程圖;圖6是該分層攝影圖減影方法的實施例的流程圖;圖7A~7B是根據(jù)本發(fā)明使用臺階(terraced)的結構元素的圖像膨脹的“快速”方法的實施例的流程圖;圖8A~8B是該分層攝影圖減影方法的平滑傾斜結構元素實施例的流程圖,示出了通過傾斜的結構元素的膨脹的計算;以及圖9是該分層攝影圖減影方法的結構元素分解實施例的流程圖。
具體實施例方式
圖2示出了由對圖1的現(xiàn)有技術分層攝影圖100應用本系統(tǒng)和方法而產生的經減影分層攝影圖200的片斷。在圖2中,相對于電路板202的背景,焊點塊201很清晰。
根據(jù)本發(fā)明,通過應用如下更詳細討論的數(shù)學形態(tài)學體系中的操作,由在直接包圍的區(qū)域中的最高透射率(最淺的灰度)來建立分層攝影圖或其他圖像的背景值。如上面引用的Maragos等討論的那樣,數(shù)學形態(tài)學采用了形態(tài)學算子,其依次涉及結構元素S,其中S=[Su,v],u和v是結構元素S的以像素計的矩形尺寸,其中u1≤u≤u2,以及 (1)v1≤v≤v2,以及 (2)Su,v≥0(3)其中,通常u1=-u2以及 (4)v1=-v2(5)參考圖3,示出了采用分層攝影圖減影的實施例來檢測焊點或其他檢查元件的示例性方法的流程圖。在框301,選擇大于待檢查的焊點或元件的形態(tài)學結構元素S。S應該大于焊點或檢查元件的最小尺寸。S應該具有總的有限的寬度,通常接近引線間距。IC的引線間距可以被用來確定結構元素的大小。但是,結構元素S的其他尺寸應該相當大,以伸展超逾焊料橋或其他大的結構陰影。而且,S應該是下凸的(其二階導數(shù)非負)。S還應該在大小為焊點的較小尺寸的區(qū)域上相當平。在超過這個中央的相當平的核心后,S優(yōu)選地平滑地上升,以避免將不連續(xù)的假影引入到圖像中。
在這里,使用了下面的數(shù)學慣例。用諸如A的大寫字母表示的圖像矩陣包含由帶有下標的對應小寫字母表示的元素,例如適當?shù)膇和j值的aij,aij占據(jù)第i行和第j列。此外,括號中的上標表示代名。例如在計算機程序中,A(0)是圖像矩陣A的初始內容;A(1)是第一組操作后A的內容;A(2)是第二組操作后的內容等等。
在框302,給定焊點等的灰度圖像A,通過處理灰度圖像A對結構元素S的形態(tài)學膨脹來計算背景灰度圖像B,B=AS。從而,給定結構元素S和輸入灰度圖像A,則B,即A經S的膨脹,B=AS如下計算bij=maxu1≤u<u2v1≤v<v2(ai-u,j-v-Su,v)---(6)]]>其中bij是占據(jù)第i行和第j列的圖像B的元素,a類似地是圖像A的元素。
如果主體分層攝影圖顯示為負,使得較密較暗的焊點產生較高的灰度值,則可以通過C=As,使用灰度圖像A對結構元素S的腐蝕來計算背景灰度圖像,即。A經S的腐蝕,C=AS,可以如下計算cij=maxu1≤u<u2v1≤v<v2(ai+u,j+v+Su,v)---(7)]]>或者,灰度圖像A對結構元素S的形態(tài)學閉運算(closing)可以被用來計算背景灰度圖像B,B=A·S。閉算子可以是優(yōu)選的,因為其可以給出更精確的結果。但是使用閉算子計算背景可能需要更大計算量。對于負圖像,可以優(yōu)選灰度圖像A對結構元素S的開運算(opening),B=AοS,以獲得背景灰度圖像B。A·S被定義為意思是(AS)S,AοS定義為(AS)S。
在i±u或j±v落在A的域外的情況下,可以忽略該項。min算子取一組項的最小值。因而,如果對于i,j,u和v值的特定組合不存在ai+u,j+v,那么可以忽略ai+u,j+v+Su,v項。因此,應該沒有不希望的邊緣效應,因為將利用應用給數(shù)字灰度圖像的線性卷積。
結構元素可以是平底的,即在結構元素中對所有的u和v,Su,v=0。結構元素可以是矩形,其中 或者結構元素可以是半徑為r的圓,其中 此外,如上面討論,S應該比焊點或檢查元件的最小尺寸大,但是具有總體的有限寬度,通常接近引線間距。S應該是下凸的,并且應該在大小為焊點的較小尺寸的區(qū)域上相當平,在超過這個相當平的中央核心后,S優(yōu)選地平滑上升。
而且,在“其他”分句中的值不需要是無窮大,只要相對于正在檢查的圖像而言足夠大即可,大于或等于最大可能像素值的任何值將優(yōu)選地不起作用,只要Su,v條目中的一個為0。通常假定S0,0=0。因為如果S0,0=0,則bi,j≥ai,j≥ci,j或 (10)(AS)i,j≥ai,j≥(AS)i,j(11)此外,(AS)i,j≤(AοS)i,j≤(A·S)i,j≤(AS)i,j(11a)估計焊點或其他檢查元件與背景間的差別,在框304,去除背景以產生經減影的圖像CC=B-A。這個操作可能導致諸如分層攝影圖或射線圖的圖像中的極性反轉,使得灰度圖像C中較大像素值代表較大的密度,因而焊點等顯示得比背景淺。如果初始圖像處于已經使焊點或元件顯示得比背景淺的極性,那么可以通過形態(tài)學的開運算B=AοS來估計背景,并且可以通過C=A-B計算經減影的圖像。
這樣,本系統(tǒng)和方法采用要成像物體的預期大小的知識,以便構建一個或多個形態(tài)學濾波器,并把這些濾波器應用于分層攝影圖以去除背景陰影。如此去除陰影后,可以使用圖像進行進一步的檢測。圖3還描述了這樣的檢測可能采用的步驟(305~307)。在框305,可以使用閾值像素值T通過閾值法來隔離焊接區(qū)域,其中作為結果的二值圖像D=C>T。換句話說,如果C的對應像素大于T,則二值圖像D的給定像素為1,否則為0。然后在框306可以從作為結果的二值圖像D中提取1的連續(xù)區(qū)域,以找到一塊塊焊點。每個位于預期焊點位置的連接區(qū)域可以被用以定義代表焊點的像素。在框307,測量這些區(qū)域,以產生指示每個焊點是“好”還是“壞”的特征。從D的連接區(qū)域直接可得到的特征包括例如位置、橫向范圍、總面積、焊點的投影(二維)形狀。還可以分析經減影的圖像C的區(qū)域的對應像素,以給出焊點中焊料的總量和其分布。已建立的決策理論的技術可以應用于這些特征以將焊點分類為“好”或“壞”。
形態(tài)學算子包括前述的閉運算,A·S=(AS)S,還包括開運算,AοS=(AS)S。這些算子是冪等的,即(A·S)·S=A·S以及(AοS)οS=AοS。
根據(jù)上面的定義式(6)和(7)直接計算形態(tài)學算子可能非常耗時。經由u×v結構元素來膨脹N×M圖像意味著M×N×u×v次不同運算,以及相同數(shù)目的max運算。根據(jù)本發(fā)明的一種用于減少計算負載的替代的方法實施例是對結構元素進行稀疏取樣。例如,使用這樣的結構元素,即僅在對角線的條目或者僅沿水平和垂直中線的條目或者類似條目組被認為是重要的。取決于如何進行操作,這將計算負載減少到M×N×(u+v)次運算或者M×N×max(u,v)次運算。從而,以得到的圖像中的額外假影為代價,獲得了較高的計算速度。以使計算量加倍為代價,可以通過膨脹后繼以相應的腐蝕來減少假影,上述兩個操作構成一個閉運算。
圖4是采用平底矩形結構元素的2的冪的結構元素實施例400的流程圖。在框401選擇方形結構元素邊尺寸(D),并在框402初始地將通過膨脹獲得的尺寸(d)設置為1。如果在框403確定獲得的尺寸比所選擇的結構元素邊尺寸小,則在框404將新的獲得的尺寸(dnew)設置為等于min(2d,D)。在框405將移動量(s)設置為等于新的獲得的尺寸減去獲得的尺寸(s=dnew-d)。如果灰度圖像陣列A非常大,使得邊緣效應不重要,則在框406可以進行操作A(1)←max(A,A1) (12)其中A1表示向右移動一個像素的A,即aij(1)=max(aij,ai,j-1) (13)其后在框407將結果相對其自身向下移動并且應用取最大值操作A(1)←max(A(1),A(1)⇓1)---(14)]]>其中它被理解成是aij(2)=max(aij(1),ai,j-1(1))---(15)]]>可以在灰度圖像A上進行這些操作,A(1)、A(2)等表示同樣的灰度圖像陣列A的內容的隨后一代。在框408,將獲得的尺寸(d)增大到新的獲得的尺寸(dnew)。在這些步驟之后,每個條目都是初始圖像的四個鄰近條目的“最大值”。
aij(2)=max0≤u<20≤v<2ai-u,j-v---(16)]]>可以在框405增加移動量來重復框404,406和407的運算。移動量為2的示例如下所示A(3)←max(A(2),A(2)2)(17)A(4)←max(A(3),A(3)⇓2)---(18)]]>其等價于逐個元素進行aij(3)=max(aij(2),ai,j-2(2))---(19)]]>aij(4)=max(aij(3),ai-2,j(3))---(20)]]>則相對初始內容而言aij(4)=max0≤u<40≤v<4ai-u,j-v---(21)]]>再次地,重復步驟404~407,陣列可以相對其自身移動4個移動量A(5)←max(A(4),A(4) 4) (22)A(6)←max(A(5),A(5)⇓4)---(23)]]>得到aij(6)=max0≤u<80≤v<8ai-u,j-v---(24)]]>在每次迭代,在每個方向所述圖像相對其自身移動下一個2的冪的移動量,并且在框406和407取最大值,直到獲得的尺寸等于或大于所選擇的尺寸。每次迭代后,任一給定圖像像素的影響區(qū)域翻兩番。因而,每一個得到的像素的計算是定義結構元素的方形區(qū)域的大小的對數(shù)。步驟404和405確保累積有效的SE以2的冪的方式增長,直到最后一次循環(huán),其中SE增長到指定尺寸。如果選擇的SE在大小上恰巧是2的冪,則在步驟404,在最后的循環(huán)中2d和D將是相同的。
暗含地,這個實施例的結構元素使其角而不是其中心在結構元素的初始點(偏移0,0)上。這使結果偏移。因為結構元素的尺寸是2的冪,所以中心在四個像素間的角上??梢酝ㄟ^在框410將結果圖像左移所選結構元素尺寸的一半以及在框411將圖像上移所選結構元素尺寸的一半,來從經移動的結果中提取結果圖像。但是,該結果在水平上和垂直上配準偏移了半個像素。
而且,在這個實施例中不必要每次均應用2的冪的移動。類似的,結果結構元素不要求具有2的冪的尺寸。要獲得寬度為25的結構元素,可以應用移動1,2,4和8來得到寬度16。然后可以應用最終移動9來得到寬度25。如果最后的寬度為奇數(shù),那么結構元素的中心直接落在其元素中的一個上,并且結果中沒有半個像素的移動。
類似地,移動應用的順序不重要??梢酝ㄟ^以9、8、4、2、1的順序或者以2、8、4、1、9的順序等應用移動來得到寬度為25的算子??梢栽诖怪币苿忧皯萌克揭苿樱粗嗳?,或者水平移動和垂直移動可以交替進行。
或者,如圖5所示,示出了本發(fā)明的第二方形平底結構元素實施例500。在每個步驟,圖像可以相對其自身左右和上下移動。這使得對于幾乎等同的結構元素寬度在每個步驟的計算工作加倍,但是去除了數(shù)學形態(tài)學處理任務的一個步驟。在框501選擇方形結構元素邊尺寸(D),在框502初始地將通過膨脹獲得的尺寸(d)設置為1。在框503將移動量(s)設置為等于1。如果在框504確定出獲得的尺寸(d)小于選擇的結構元素邊尺寸(D),那么在框505將圖像右移移動量(s),取圖像的最大值。然后在框506,將圖像左移移動量(s),取圖像的最大值。接著,在框507,相對自身將圖像下移移動量(s),取結果圖像的最大值。然后在框508,將圖像上移移動量(s),取最大值。然后在框509,把獲得的尺寸(d)增加移動量(s)的兩倍。然后在框510,移動量(s)被增加到下面兩者中的最小值,兩者中之一為先前移動量的兩倍(2s),兩者中另一個為期望的結構元素直徑(D)和獲得的結構元素直徑(d)之間差的一半,即(D-d)/2???05到508的移動和框509和510的獲得的尺寸和移動量的調整被重復,直到在框504處獲得的尺寸(d)等于或大于選擇的結構元素尺寸(D),于是方法500在框512結束。
如果在兩個方向對稱地應用移動,則在每一步驟上,結構元素的支持區(qū)域或影響區(qū)域在左右或上下兩個方向上擴展2的冪。但是,相反方向的影響區(qū)域重疊一個像素,所以算子寬度比2的冪少一個像素。這也適用于非2的冪的移動。為了得到寬度25,可以使用在兩個方向上移動1、2,4和5。這使得能夠在本地進行操作,而不需要使用用于保存暫時圖像的輔助存儲。
或者,“擴展”量不需要是對稱的,即不需要在兩個方向一樣。例如,可以水平地應用兩級,而垂直地應用四級,使得結構元素寬4長31。
在這個實施例中也不必要每次均應用2的冪的移動。和上面的實施例400類似,結果的結構元素不要求具有2的冪的尺寸。同樣在實施例500中移動應用的順序也不重要。可以在垂直移動前或后應用全部水平移動或者交替進行。
在本發(fā)明的閉運算實施例中,可以使用形態(tài)學的閉算子。這包括其后繼以腐蝕的如上膨脹。腐蝕除了在上面的框406和407或框505、506、507和508應用取最小值算子而不是取最大值算子并且反轉移動方向外,和膨脹相同。對于實施例400,這使得能夠在相反方向進行第二1/2像素移動,使得兩個1/2像素移動互相抵消(實施例500沒有1/2像素移動)。
閉運算使用了兩倍于膨脹的計算力,但是其減少了反常明亮像素的影響區(qū)域。如果使用平底結構元素,閉運算或者膨脹都傾向于將圖像分割成不連續(xù)區(qū)域,但是當使用閉算子時,區(qū)域較小。
在這個閉運算實施例中,必須小心以保證結構元素比焊點大。如果結構元素不比焊點大,則焊點將不能被橋接并且腐蝕步驟將再次將其擴大。因而,對結構元素尺寸過小的懲罰,閉運算的比膨脹的大。
有利地,如上面公開的實施例400和500中的開運算,或者這個實施例中的閉運算,使得即使結構元素不對稱,圖像也和初始圖像配準。而且,如果背景比結構元素變化慢得多,那么通過閉運算保持了背景。這通常不適用于自己膨脹或自己腐蝕。
使用平結構元素,小的明亮物體可以引起尖銳的邊界區(qū)域。本發(fā)明的實施例600,如圖6中的繪制的流程,改善了這個效應。通過將經膨脹的圖像和采用結構元素一半寬度膨脹的圖像進行平均,可以在很大程度上平滑轉變。這近似于圓形結構元素的效果。在框601,選擇SE,其對橋接焊點足夠寬,且被適當?shù)貎A斜或臺階化以淡化其影響,來避免不連續(xù)假影。在框602,使用結構元素膨脹或閉運算該圖像。在框603從結果圖像中減去初始圖像。
使用膨脹或閉運算的圓底結構元素實施例,用來產生圍繞焊點的電路板的背景信號值的估計。背景值在圖像上的變化,源自成像系統(tǒng)中的可變增益,以及板另一側元件的陰影。去除這些影響后,圖像更清楚地描述了焊點本身。因而,如上面討論,通過對密度設定閾值來分隔焊點和非焊點十分有效。然后可以更有效地使用連接區(qū)域提取來隔離焊點,并且從焊點提取的特征變得能更準確地診斷焊點質量。
在一個臺階結構元素實施例中,結構元素的影響優(yōu)選地在圖像的邊緣舍入(round off)。這可以通過反向臺階結構元素來近似。采用這樣的臺階結構元素的減影方法700是圖7A~7B中表示的流程。通過這樣的臺階結構元素的膨脹可以由前面的方法的擴展來完成。例如,通過具有高0直徑15的中心臺階,包圍有高4直徑25的臺階,以及高9直徑33的外部臺階的結構元素來膨脹圖像A。參照圖7A~7B,下面的步驟被表示成采用多個臺階執(zhí)行本發(fā)明的完整算法的流程圖。在701將M設置為等于要減影的分層攝影圖或類似圖像中的行數(shù)。在702將N設置為圖像中的列數(shù)。在703選擇用于結構元素(SE)的第一臺階直徑和臺階高度。在704將結構元素的獲得的直徑設置為1。在705將臺階設置為與圖像的拷貝相等,其以等于選擇的SE最大直徑減去1的行數(shù)和列數(shù)被填補。行數(shù)和列數(shù)被優(yōu)選地設置為圖像的最小的可用數(shù)。在706工作圖像被設置為等于M乘N的圖像陣列,其中像素被設定為最小的可用數(shù)。在707,SE的新直徑被設置為獲得的直徑的兩倍和臺階直徑兩者中的最小值。在708,臺階被設置為該臺階和被下移以下值的臺階兩者中最大的,其中下移的值為707的新直徑減去獲得的直徑。在709,臺階被設置為該臺階和被右移以下值的臺階兩者中最大的,其中右移的值為707的新直徑減去獲得的直徑。然后在710,獲得的直徑被設置為等于在707所設置的新直徑。在711確定獲得的直徑是否小于臺階直徑。如果是,則重復步驟707到711。如果在711,獲得的直徑大于或等于臺階直徑,則臺階的半寬(“h”)被設置為臺階直徑的一半。然后在713,新工作圖像被設置為下面兩者中的最大的,其一是706的舊工作圖像,其二是開始于列h行h減去SE的高的臺階的M乘N子陣列。如果在714確定出要使用的所有臺階都已經被使用過,則在715,在工作圖像中得到結果。但是,如果有要使用的另一個臺階,則在框716選擇臺階直徑和高,并重復步驟707到714。
在本發(fā)明的以上臺階結構元素實施例中,如果結構元素需要平滑舍入,若干臺階可能是必要的。但是,通過方法800可以實現(xiàn)具有恒定斜率的平滑變化表面的結構元素的實施例,如圖8A~8B所示。實際的結構元素可以是每面從中心斜上伸出的四面倒錐形。假定灰度圖像A以浮點數(shù)或者比例整數(shù)表示,使得具有可用小數(shù)位,可以在操作前在寄存器內左移圖像A的個體像素以獲得小數(shù)位,然后在以后將其右移。也就是說,每個像素乘以某個因子(例如16,以獲得4個小數(shù)位),執(zhí)行操作,然后每個像素除以相同的因子。為了通過斜率算子s膨脹灰度圖像A,進行下面的操作。在801將設置獲得的位移(d)1。然后,在802,下降(lapse)被計算為等于位移和SE的期望斜率的乘積。在803,將圖像A的拷貝水平地(在下面的示例中向右)移動位移(d)。在804,從結果圖像中減去下降,并且在805應用取最大值操作A(1)=max(A,(Ad)-d·s) (25)然后,在框806將結果圖像A(1)垂直地(在下面的示例中向上)移動位移(d),在807從結果圖像中減去下降,并且在808應用取最大值操作A(2)=max(A,(A⇑d)-d·s)---(26)]]>然后,在框809將結果圖像A(2)向相反的水平方向(在該示例中,向左)移動位移(d),在810減去下降,并且在811應用取最大值操作A(3)=max(A,(A⇐d)-d·s)---(27)]]>然后,在框812為了獲得圖像A(4),將結果圖像A(3)向相反的垂直方向(在該示例中,向下)移動位移(d),然后在813從結果圖像中減去下降,并且在814應用取最大值操作。
A(4)=max(A,(A⇓d)-d·s)---(28)]]>如果在框815確定出獲得的位移總和的兩倍加1比期望的結構元素直徑小,則在框816重設位移。在框816,重設位移為兩倍的當前位移,但是有限制,應當使得獲得的位移總和的兩倍加1小于或等于期望的SE寬度。換句話說,設置位移為以下兩個中較小的值,其一為當前位移的兩倍數(shù)值,其二為期望SE寬度減1的一半再減去已獲得的位移的總和。在結果圖像上重復步驟802到814。當在815確定出位移總和的兩倍減去1等于期望的結構元素直徑時,過程在817結束。如上面解釋的那樣,可以得到非2的冪的算子。
在平滑傾斜結構元素的實施例中,結構元素的小平面(facet)位于居中于結構元素對角線的結構元素笛卡兒軸之間。所述斜率s在笛卡兒軸的方向保持不變,但是沿著對角線方向斜率為 可以采用分段線性結構元素實施例,所述實施例采用平底然后斜率下降或者具有漸增斜率的結構元素。這可以通過組合在上面剛剛討論的臺階結構元素和平滑傾斜結構元素實施例而獲得,或者可以使用斜率被設置為0的傾斜實施例。
根據(jù)本發(fā)明,可以連同上面討論的通過有限范圍的平SE在一維中膨脹的快速方法應用斜面(可能多次),來產生有限寬度的平滑下降的SE。假定圖像A用諸如浮點數(shù)的小數(shù)位表示,則斜面膨脹算法可以如下表示。for i=1...m andfor j=1...nAij←max(Aij,Ai-1,j-s,Ai,j-1-s,Ai-1,j-1-s2,Ai-1,j+1-s2)---(29)]]>and for i=m...1 by-1 andforj=n...1 by-1Aij←max(Aij,Ai+1,j-s,Ai,j+1-s,Ai+1,j-1-s2,Ai+1,j+1-s2)---(30)]]>
其中,圖像A是m×n陣列,s是結構元素小平面的期望斜率。涉及圖像的界外元素的任何項應該從圖像A的表達式中被忽略。這個結構元素算子所暗指的結構元素是每面在其邊以斜率s傾斜向上并且沿其中線斜率略微更大的倒8面錐。
為了計算類似于平滑傾斜結構元素實施例的四面斜面,可以忽略涉及 的項。如前,通過輕微改動算法得到斜面腐蝕。加上s或 而不是減去,并且使用最小值算子而不是上面的最大值算子。
可以比其他實施例更快速地計算該斜面算法。其是平滑的并且不引入突然中斷。但是,暗指的結構元素具有無限的影響區(qū)域或支持,因為極高值的像素可以自始至終在圖像上控制結果。這和恒定斜率一起導致在一個膨脹或腐蝕運算后,沒有其他膨脹或腐蝕改變圖像。這也意味著閉運算等同于膨脹,開運算等同于腐蝕。但是,如果焊點被不是很模糊的偏移的不透明物體遮住一半,那么經計算的背景具有轉變偏移,使得以更深的背景為代價得到較亮的背景。而且,反常明亮的噪聲像素影響了周圍區(qū)域,產生不能通過匹配腐蝕去除的明亮斑點。
通過結構元素分解實施例的分段線性膨脹或腐蝕采用具有有限支持的分段線性結構元素的膨脹或腐蝕,以克服這樣的半陰影和暗影(umbra)。實施例900的流程圖在圖9中表示出。在實施例900中,具有分段線性結構元素的膨脹或腐蝕優(yōu)選地通過分解結構元素而簡化。這個實施例將結構元素表示成以斜率s1傾斜到半徑r1,然后以斜率s2傾斜到半徑r2,…,以斜率sn傾斜到在901處選擇的最終半徑rn。這樣,實施例900中結構元素的直徑是半徑的二倍加1。根據(jù)實施例900,可以在圖像A上進行下面的算法。在902設置初始斜率為適當值。在902,對于平底結構元素或對于平滑變化結構元素的內部平核心,設置初始斜率(s1)為零。在903設置初始半徑(r1)為1。在框904,經過一次上述的實施例800,圖像A通過初始斜率s1本地膨脹到初始半徑r1。然后在905選擇新斜率sx,例如用于第二次迭代的s2,以及使半徑翻倍或增加到rx,例如用于第二次迭代的r2。然后在906,經過一次上述的實施例800,結果圖像通過新斜率s2(sx)本地膨脹到增加的半徑r2-r1(rx-r1)。如果在907確定出還沒有達到在902選擇的最終半徑rn,那么在906,通過在905選擇的新斜率sx再次將結果圖像本地膨脹到半徑rx-rx-1,直到已達到在902選擇的最終半徑rn,如在907所判斷的那樣,于是過程900在908結束。這樣,在905,半徑在最后迭代期間可以不翻倍而只增加到最終半徑rn。
每個后繼的斜率(sx)將優(yōu)選地大于其前任(sx-1)。內部斜率可以是零,直到大略等于焊點或其他感興趣的物體的寬度的直徑。內部斜率可以被片斷包圍,可以是斜率漸增的1到3個片斷,其最后的總寬度和焊點間距的大小或者類似的尺寸相當。這個實施例自身有助于構建不同斜率的合成結構元素,例如具有平底區(qū)域的結構元素??梢酝ㄟ^設置s1=0來得到結構元素的平底中心。腐蝕可以以同樣的方式分解。
雖然已詳細描述了本發(fā)明以及其優(yōu)點,但是應該理解,這里可以做出各種變化、替換和改變而不背離如權利要求定義的本發(fā)明的精神和范圍。而且,本申請的范圍并不局限于說明書中描述的過程、機器、產品、物件的組合、裝置、方法和步驟的具體實施例。本領域的普通技術人員將從本發(fā)明的公開很容易理解,可以根據(jù)本發(fā)明來使用和這里描述的相應實施例完成實質相同功能或達到實質同樣結果的以后要開發(fā)的或現(xiàn)有的過程、機器、產品、物件的組合、裝置、方法或步驟。據(jù)此,權利要求意欲將這樣的過程、機器、產品、物件的組合、裝置、方法或步驟包括在其范圍內。
權利要求
1.一種用于對分層攝影圖減影的方法(300),包括使用要被成像的物體的預期尺寸構建一個或多個形態(tài)學濾波器(301);以及將所述濾波器應用于包含所述物體圖像的分層攝影圖(302)。
2.一種用于對分層攝影圖減影的方法(300),包括選擇比要被檢測的分層攝影圖的檢查元件大的數(shù)學形態(tài)學結構元素(301);對所述圖像進行數(shù)學形態(tài)學操作(302);以及在進行所述數(shù)學形態(tài)學操作后,將所述圖像的背景和所述檢查元件區(qū)分出來,以去除所述背景(304)。
3.一種用于對分層攝影圖減影的方法(900),包括選擇比要被檢測的分層攝影圖的檢查元件大的最終數(shù)學形態(tài)學結構元素半徑(901);設置所述結構元素的初始斜率(902);將所述結構元素的初始半徑設置為1(903);通過所述被設置的斜率在所述圖像上進行數(shù)學形態(tài)學操作以達到所述被設置的半徑,以獲得結果圖像(904);設置所述結構元素的新斜率(905);增大所述結構元素的半徑(905);通過所述新斜率在所述結果圖像上進行數(shù)學形態(tài)學操作以達到所述被增大的半徑,以獲得新結果圖像(906);以及如果所述被增大的半徑不等于所述最終數(shù)學形態(tài)學結構元素半徑,則重復所述設置新斜率、增大半徑,以及在所述新結果圖像上進行數(shù)學形態(tài)學操作(907)。
4.如權利要求1、2或3之一所述的方法,其中,所述形態(tài)學濾波器采用膨脹運算或者所述形態(tài)學操作是膨脹運算。
5.如權利要求1、2或3之一所述的方法,其中,所述形態(tài)學濾波器采用閉運算或者所述形態(tài)學操作是閉運算。
6.如權利要求1、2或3之一所述的方法,其中,所述圖像是負的并且所述形態(tài)學濾波器采用腐蝕運算或者所述形態(tài)學操作是腐蝕運算。
7.如權利要求1、2或3之一所述的方法,其中,所述圖像是負的并且所述形態(tài)學濾波器采用開運算或者所述形態(tài)學操作是開運算。
8.如權利要求1、2或3之一所述的方法,其中,所述物體或檢查元件是電路板(202)上的焊點(201)。
9.如權利要求8所述的方法,其中,所述分層攝影圖的背景是所述電路板和所述電路板(103)上元件的焦點外陰影。
10.如權利要求1、2或3之一所述的方法,還包括對結果圖像使用閾值法,以提供所述物體或檢查元件(201)的二值圖像(200),并且提取從所述閾值法產生的所述圖像以得到代表所述物體或檢查元件的像素。
全文摘要
本發(fā)明提供了一種用于分層攝影圖減影的方法(300),所述方法包括選擇比要檢測的分層攝影圖的檢查元件大的數(shù)學形態(tài)學結構元素(301),在所述圖像上進行數(shù)學形態(tài)學操作(302),將所述圖像的背景和所述檢查元件區(qū)分開來,以去除所述背景(304)。對于正圖像,數(shù)學形態(tài)學操作可以是膨脹或閉運算。對于負圖像,數(shù)學形態(tài)學操作可以是腐蝕或開運算。實施例提倡使用2的冪的結構元素、雙向2的冪的結構元素、臺階結構元素或傾斜結構元素。數(shù)學形態(tài)學操作可以通過有限支持的結構元素包括至少一個分段線性膨脹或腐蝕。可以使用閾值法來提供減影后的二值圖像(305)。
文檔編號G06K9/46GK1658242SQ20041008401
公開日2005年8月24日 申請日期2004年10月13日 優(yōu)先權日2003年10月15日
發(fā)明者戴維·R·史密斯 申請人:安捷倫科技有限公司
網友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
弥勒县| 四平市| 鹤山市| 万州区| 射洪县| 江北区| 绍兴县| 晋州市| 永安市| 历史| 龙井市| 西贡区| 普兰店市| 腾冲县| 高雄市| 淮滨县| 山阳县| 千阳县| 桂平市| 深圳市| 车险| 万全县| 漾濞| 滨海县| 临澧县| 临夏市| 将乐县| 阿城市| 缙云县| 枣庄市| 宁陵县| 诸暨市| 鄂温| 新干县| 德化县| 呼伦贝尔市| 河间市| 北碚区| 北碚区| 安远县| 桃江县|