專利名稱:在視覺系統(tǒng)中用于自動恢復(fù)視頻工具的系統(tǒng)和方法
技術(shù)領(lǐng)域:
本發(fā)明一般涉及用于操作機器視覺檢查系統(tǒng)的方法,該系統(tǒng)有可以相對運動的攝像機和載物臺,為的是掃描和檢查載物臺上選取的工件特征,本發(fā)明具體涉及自動恢復(fù)或擴展這種視覺系統(tǒng)上所用視頻基檢查/測量工具操作的系統(tǒng)和方法。
背景技術(shù):
精密機器視覺檢查系統(tǒng)(或簡稱“視覺系統(tǒng)”)可用于得到被檢查物體的精確尺寸測量結(jié)果并檢查各種其他的物體特性。這種系統(tǒng)可以包含計算機,攝像機和光學(xué)系統(tǒng),以及可以沿多個方向運動的精確載物臺,為的是使攝像機掃描正在被檢查的工件特征。一種典型現(xiàn)有技術(shù)的商品化系統(tǒng)是QUICK VISION系列PC基視覺系統(tǒng)和QVPAK軟件,它們可以從位于Aurora,IT.的Mitutoyo America Corporation(MAC)購得。例如,在2003年1月出版的QVPAK 3D CNC VisionMeasuring Machine User′s Guide和1996年9月出版的QVPAK 3DCNC Vision Measuring Machine Operation Guide中大致描述QUICKVISION系列視覺系統(tǒng)和QVPAK軟件的特征和操作,二者的全文合并在此供參考。例如,這種典型的QV-302原型產(chǎn)品能夠利用顯微鏡型光學(xué)系統(tǒng)提供各種放大倍數(shù)的工件圖像,并根據(jù)需要移動載物臺使工件表面超出任何單個視頻圖像的限制。
機器視覺檢查系統(tǒng)通常利用自動化視頻檢查,US Patent No.6,542,180描述這種自動化視頻檢查的各種特性,全文合并在此供參考。如在′180 Patent中所描述的,自動化視頻檢查計量儀器通常有編程能力,它允許用戶對每個特定工件結(jié)構(gòu)確定自動檢查事件序列。例如,這可以借助于文本基編程實施,或通過逐漸“學(xué)習(xí)”檢查事件序列的記錄模式,其中存儲對應(yīng)于用戶完成一系列檢查操作的機器控制指令序列,或通過這兩種方法的組合。這種記錄模式通常稱之為“學(xué)習(xí)模式”或“訓(xùn)練模式”。一旦確定檢查事件序列是在“學(xué)習(xí)模式”,則這個序列可用在“運行模式”期間自動獲取(和附加地分析或檢查)工件的圖像。
包含特定檢查事件序列(即,如何獲取每個圖像以及如何分析/檢查每個獲取的圖像)的機器控制指令通常存儲為特定工件結(jié)構(gòu)專用的“零件程序”或“工件程序”。例如,零件程序規(guī)定如何獲取每個圖像,即,如何相對于工件放置攝像機,在什么照明強度上,在什么放大倍數(shù)上,等等。此外,零件程序規(guī)定如何分析/檢查獲取的圖像,例如,利用諸如邊緣/邊界檢測視頻工具的一個或多個視頻工具。
視頻工具的正常操作取決于正確設(shè)置各種機器,圖像,和影響工具操作的視頻工具參數(shù)。例如,為了利用邊緣/邊界檢測視頻工具查找圖像中的目標(biāo)邊緣/邊界,獲取的圖像應(yīng)當(dāng)有合適的照明/亮度,聚焦,放大倍數(shù)。此外,必須設(shè)定視頻工具的評價區(qū)(即,視頻工具搜索的視頻圖像內(nèi)區(qū)域),為了實際上包含被檢測的邊緣/邊界特征。
一般地說,在確定和訓(xùn)練視頻工具的開始,例如,在操作和編程的訓(xùn)練模式期間,在相當(dāng)理想的條件下建立和設(shè)置相關(guān)的機器和視頻工具參數(shù),這些參數(shù)控制工件特征圖像的獲取并檢查工件特征。一般地說,這是因為操作員觀察工件特征的實時顯示,并調(diào)整相關(guān)的機器和視頻工具參數(shù),例如,機器定位,照明,工具定位和取向,以及其他的參數(shù),直至在相對理想的狀態(tài)下觀察到這些參數(shù),用于提供工件特征的精確檢查結(jié)果。然而,在運行模式下視頻工具的后續(xù)重復(fù)自動操作期間,零件加工,零件固定,視覺機器退化,環(huán)境照明條件等各種不可預(yù)見的變化可以影響一組操作狀態(tài),這些狀態(tài)不適合按照以前建立的操作參數(shù)正常操作視頻工具。因此,普通的視頻工具在“運行模式”操作期間不能正常地運行,例如,由于操作狀態(tài)或工件特性中一個或多個不可預(yù)見的變化。普通的視頻工具在“學(xué)習(xí)模式”操作期間也不能正常地運行,因為相對無經(jīng)驗的用戶可能不會正確地設(shè)置相關(guān)的機器,圖像,或視頻工具參數(shù),這是由于他們不明白工具的操作和/或缺乏其使用的經(jīng)驗。
目前,當(dāng)視頻工具不能正常地運行時,就放棄該工具的下一步操作,并迫使用戶按照人工方式干預(yù)和恢復(fù)該工具,例如,利用人工方式調(diào)整攝像機相對于工件的位置,和/或調(diào)整照明強度,和/或調(diào)整視頻工具的各種參數(shù)。這是一個麻煩和耗費時間的過程,它大大地降低操作員在學(xué)習(xí)模式期間的生產(chǎn)率和/或視覺系統(tǒng)在運行模式期間的檢查處理能力。它還要求部分操作員具有相對高的專業(yè)技術(shù)和經(jīng)驗,為的是分析視頻工具失效的原因,并調(diào)整視頻工具參數(shù)以確保未來的健全運行。
所以,我們需要一種用于自動恢復(fù)和/或擴展失效視頻工具運行的方法和系統(tǒng),它可以在視頻工具失效的情況下減小或消除操作員的干預(yù)需要。
發(fā)明內(nèi)容
本發(fā)明在視覺系統(tǒng)中提供用于自動恢復(fù)失效視頻工具的方法和系統(tǒng)。按照一個方面,本發(fā)明提供一種程序或例行程序,它可以與視頻工具相聯(lián)系或合并,或視頻工具失效發(fā)生時被調(diào)用,從而使該工具自動恢復(fù)并著手提供檢查結(jié)果。即,在遭遇到失效之后,恢復(fù)程序或例行程序包含用于改變,重新編程,或維修相關(guān)機器,圖像,和視頻工具參數(shù)的操作,這些參數(shù)控制工件特征圖像的獲取并檢查工件特征。相關(guān)的機器,圖像,和視頻工具參數(shù)此處還統(tǒng)一或分別地稱之為特征檢查參數(shù),這些參數(shù)控制工件特征圖像的獲取并檢查工件特征。
在本發(fā)明的各個典型實施例中,一種在精密機器視覺檢查系統(tǒng)中用于自動恢復(fù)視頻工具操作的方法,它可以包含圖像特性分析的恢復(fù)階段,通常有三個步驟。第一,在檢查到與被檢查工件特征有關(guān)的視頻工具失效之后,至少在圍繞該特征的區(qū)域,基于特征圖像的分析,確定一個或多個圖像特性值。圖像特性值表示圖像的相關(guān)特性或質(zhì)量的任何數(shù)值,例如,圖像亮度,圖像聚焦等。第二,對于每個確定的圖像特性值,確定它是否落在可接受的范圍內(nèi),該范圍通常是預(yù)定的范圍,缺省范圍,或取決于一個或多個當(dāng)前特征檢查參數(shù)的范圍。根據(jù)圖像特性值,確定該圖像是太暗,太亮,模糊等等。然后,第三,調(diào)整精密機器視覺檢查系統(tǒng)的合適特征檢查參數(shù),為了使該圖像特性值是在可接受的范圍內(nèi)。例如,若圖像的平均亮度超出可接受的范圍,則調(diào)整影響圖像照明條件的各種硬件/軟件參數(shù)。
在本發(fā)明的各個典型實施例中,研究多個特征檢查參數(shù),并對多個特征檢查參數(shù)中的每個參數(shù),類似于以上的描述,重復(fù)評估和修正特征檢查參數(shù)的方法。例如,若上述圖像特性分析的恢復(fù)階段沒有導(dǎo)致視頻工具的正常運行,則可以完成附加的恢復(fù)階段,例如,工具/特征位置和取向分析階段,為的是調(diào)整其他的特征檢查參數(shù)。此外,若這種附加的恢復(fù)階段沒有導(dǎo)致視頻工具的正常運行,則圖像增強的恢復(fù)階段可以包含在本發(fā)明的一些實施例中。
與完成的特征檢查參數(shù)調(diào)整操作次數(shù)無關(guān),可以預(yù)先確定用于研究多個特征檢查參數(shù)及其相關(guān)特性的順序,為了最有效地完成自動工具恢復(fù)過程。例如,可以首先評估和調(diào)整特征檢查參數(shù),這些參數(shù)的正確設(shè)置是評估和/或調(diào)整其他特征檢查參數(shù)的先決條件,而在最后評估和修正可以正常調(diào)整的其他參數(shù)之后,完成其評估和/或調(diào)整是最佳的另一個特征檢查參數(shù),例如,在許多情況下,在評估和調(diào)整圖像亮度之后,評估和修正聚焦是最佳的圖像。此外,在相對早的階段,可以評估和修正一個特征檢查參數(shù),該參數(shù)是與最頻繁工具失效的原因之一相聯(lián)系,而在相對早的階段,可以研究另一個特征檢查參數(shù),該參數(shù)是與較不頻繁工具失效的原因之一相聯(lián)系。此外,可以較早地評估和修正一個特征檢查參數(shù),該參數(shù)通過相對少的調(diào)整或快速分析和調(diào)整的硬件/軟件特性是可修正的,而在此后可以研究另一個特征檢查參數(shù),該參數(shù)要求調(diào)整幾個或相對慢分析和調(diào)整的硬件/軟件特性。
按照本發(fā)明的一方面,在一些實施例中,一種用于自動恢復(fù)視頻工具的方法計算表示圖像亮度和/或圖像聚焦的一個或多個圖像特性值。然后,若確定任何一個圖像特性值是在預(yù)定的可接受范圍之外,則調(diào)整精密機器視覺檢查系統(tǒng)的合適硬件/軟件參數(shù),例如,各種照明控制參數(shù),為了使該圖像特性值是在預(yù)定的可接受范圍內(nèi)。
按照本發(fā)明的另一方面,在各個實施例中,該方法可以包括重新定位和/或重新定向視頻工具的步驟,或更精確地說,相對于被檢查特征的視頻工具評價區(qū)。通過在圖像中重新定位視頻工具評價區(qū),和/或重新定位相對于工件的攝像機并獲取新的圖像(如果需要),可以完成上述步驟。
按照本發(fā)明的另一方面,在各個實施例中,該方法可以包括調(diào)整各種視頻工具操作參數(shù)的步驟。例如,對于各種邊緣檢測工具,基于當(dāng)前圖像的各種特性,可以調(diào)整邊緣極性指示符,一個或多個邊緣檢測閾值,或其他的邊緣工具參數(shù)。簡要地說,邊緣檢測閾值確定視頻工具識別的光強梯度,它作為存在邊緣/邊界特征的指示。因此,通過降低視頻工具的邊緣檢測閾值,該方法可以使視頻工具對即使有很小光強梯度的“微弱”邊緣更靈敏。在許多機器視覺檢查系統(tǒng)中,在操作的學(xué)習(xí)模式期間,通過“訓(xùn)練”用于檢測特征定位的邊緣檢測工具,可以確定與特定工件特征相關(guān)的一個或多個邊緣檢測參數(shù)的特定數(shù)值。這種訓(xùn)練通常是在操作的學(xué)習(xí)模式期間自動完成的,而存儲的相關(guān)參數(shù)值是與檢查相關(guān)工件的零件程序有關(guān)。
按照本發(fā)明的另一方面,在一些實施例中,若各種特征檢查參數(shù)的調(diào)整并沒有導(dǎo)致視頻工具的正常運行,則可以完成一個或多個圖像增強操作以使視頻工具能夠正常運行。例如,至少在圍繞被檢查特征的圖像區(qū)中,可以完成各種過濾和/或圖像閾值化操作。然后,對形成的圖像重新運行視頻工具。然而,在這種情況下,重要的是必須當(dāng)心圖像增強操作沒有嚴重改變被檢查特征的相關(guān)特性,例如,邊緣表觀位置的位移。
按照本發(fā)明的另一方面,在一些實施例中,若一組恢復(fù)操作不能使視頻工具正常運行,則可以利用產(chǎn)生類似檢查結(jié)果的更健全視頻工具代替該視頻工具。例如,基于工件圖像中強度梯度運行的普通邊緣檢測工具可能由于邊際照明有效性或圍繞和遮蔽邊緣的紋理化表面而失效。在這種情況下,恢復(fù)操作可以包括利用基于彩色或紋理變化的邊界檢測工具代替普通的邊緣檢測工具。這種“代替”工具在最初可能不是優(yōu)選的,因為它需要較長的執(zhí)行時間,或提供較低的精確結(jié)果。
按照本發(fā)明的另一方面,利用裝入到精密機器視覺檢查系統(tǒng)中控制系統(tǒng)部分的計算機可執(zhí)行指令,實現(xiàn)自動工具的恢復(fù)方法。
按照本發(fā)明的另一方面,在一些實施例中,提供一種健全的視頻工具,它對照明,聚焦,位置和取向,以及工件邊緣/表面特性起伏有較高的容差。視頻工具配置成對被檢查的工件圖像實施預(yù)定的圖像分析/檢查操作。此外,視頻工具與一組自動工具恢復(fù)指令相聯(lián)系,這些指令試圖在視頻工具失效時恢復(fù)它的運行。例如,這些指令可以包含在計算機程序中。在一些實施例中,這些指令與視頻工具的操作合并和/或與它們不可區(qū)分。在其他的實施例中,這些指令包括與視頻工具分開存儲的程序或例行程序,但它們可以與視頻工具操作一起運行。在各個實施例中,自動工具恢復(fù)指令可以按照上述本發(fā)明的一個或多個特性運行。
按照本發(fā)明的另一方面,在各個實施例中,自動工具恢復(fù)指令的運行可以由用戶配置,或全局地,或與特定視頻工具的操作相聯(lián)系,或二者。例如,用戶可以這樣配置指令,借助于自動恢復(fù)指令僅僅完成一個或多個選取類型的特征檢查參數(shù)調(diào)整(照明調(diào)整,聚焦調(diào)整,定位和定向調(diào)整等)。作為另一個例子,對于由該指令可能完成的每種類型的調(diào)整,用戶可以規(guī)定容差水平,或允許的調(diào)整范圍。
按照本發(fā)明的另一方面,在一些實施例中,自動工具恢復(fù)指令配置成跟蹤失效的視頻工具類型和/或用于恢復(fù)每種工具所完成的調(diào)整類型,它們與具體特征,和/或工件,和/或機器視覺檢查系統(tǒng)有關(guān)。用戶可以編譯和分析這種數(shù)據(jù),例如,用于研究頻繁的工具失效原因以減少未來的工具失效。例如,基于這種分析,用戶可以調(diào)整或維修機器,和/或最佳地確定正常操作每個工具的各種硬件/軟件參數(shù),和/或最佳地配置各種有關(guān)的恢復(fù)操作,或全局地,或與特定工具有關(guān)。
按照本發(fā)明的另一方面,在一些實施例中,基于CAD數(shù)據(jù)等,“離線”建立零件程序,而該零件程序包含按照本發(fā)明的自動恢復(fù)操作。然后,最初運行離線建立的零件程序以檢查實際的工件,而自動恢復(fù)操作試圖至少恢復(fù)一些在最初運行期間失效的視頻工具。當(dāng)工具恢復(fù)成功時,成功工具操作所用的調(diào)整特征檢查參數(shù)用于代替零件程序中最初包含的“失效”參數(shù)。基于輸出報告,可以按照人工方式完成這種代替,該報告識別用于每個成功工具恢復(fù)的調(diào)整特征檢查參數(shù),或半自動方式,或全自動方式。若代替是按照半自動或全自動方式完成的,則在代替之后可以中止或刪除造成這種自動代替的指令,因此,形成的新零件程序是“穩(wěn)定的”,除非在此之后被用戶故意地改變。存儲形成的新零件程序。此后,在自動檢查操作時,參照初始的零件程序使用新的零件程序。
按照本發(fā)明的另一方面,按照本發(fā)明運行包含自動恢復(fù)操作的零件程序以檢查實際的工件,而自動恢復(fù)操作試圖至少恢復(fù)在運行期間失效的一些視頻工具。零件程序包含這樣一些指令,它能使成功工具恢復(fù)的一個或多個調(diào)整的特征檢查參數(shù)自動地代替零件程序中以前包含的相應(yīng)“失效”參數(shù)。在一個實施例中,在代替之后,可以中止或刪除造成自動代替的指令,因此,形成的新零件程序是“穩(wěn)定的”,除非在此之后被用戶故意地改變。在另一個實施例中,啟動成功特征檢查參數(shù)以代替相應(yīng)“失效”參數(shù)的指令連續(xù)地駐留在零件程序中,并通過用戶添加或改變一個或多個合適的零件程序控制語句,可以啟動或中止該指令的執(zhí)行。
參照以下結(jié)合附圖的詳細描述,可以更容易地理解本發(fā)明的上述特征和許多伴隨的優(yōu)點,其中圖1是機器視覺檢查系統(tǒng)中各種典型元件的示意圖;圖2是機器視覺檢查系統(tǒng)中控制系統(tǒng)部分和視覺元件部分的示意圖;圖3A是按照本發(fā)明一個實施例的例行程序流程圖,用于自動恢復(fù)失效的視頻工具;圖3B是按照本發(fā)明另一個實施例的例行程序流程圖,用于自動恢復(fù)失效的視頻工具;圖4A和4B表示相對于最接近邊緣特征重新定位失效視頻工具的例行程序流程圖,它可以作為用于自動恢復(fù)失效視頻工具的部分實施例的例行程序;圖5是在圖像中找到邊緣的例行程序流程圖,它可以作為相對于最接近邊緣重新定位失效視頻工具的部分實施例的例行程序;圖6是按照本發(fā)明一個例子的用戶接口屏幕圖,它可用于配置一組自動工具恢復(fù)的指令。
具體實施例方式
圖1是按照本發(fā)明一個典型機器視覺檢查系統(tǒng)10的方框圖。機器視覺檢查系統(tǒng)10包括與控制計算機系統(tǒng)14的視覺測量機器12,用于交換數(shù)據(jù)和控制信號??刂朴嬎銠C系統(tǒng)14還與監(jiān)視器16,打印機18,操縱桿22,鍵盤24,和鼠標(biāo)26連接,用于交換數(shù)據(jù)和控制信號。視覺測量機器12包括可移動的工件載物臺32和包含變焦透鏡或可交換透鏡的光學(xué)成像系統(tǒng)34。變焦透鏡或可交換透鏡通常給光學(xué)成像系統(tǒng)34形成的圖像提供各種放大倍數(shù)。
操縱桿22通常用于控制可移動工件載物臺32沿X方向和Y方向的運動,X方向和Y方向大致平行于光學(xué)成像系統(tǒng)34的焦平面。操縱桿22還可以控制可移動光學(xué)成像系統(tǒng)34沿Z方向或聚焦方向的運動。通常,Z軸運動是受操縱桿22的手柄上旋轉(zhuǎn)偏轉(zhuǎn)元件或旋鈕的控制。操縱桿22可以有不同于附圖所示的形式,例如,監(jiān)視器16上任何的直觀表示或配件,其功能是作為機器視覺檢查系統(tǒng)10的“虛擬運動控制裝置”,并通過任何計算機輸入裝置接受控制,例如,鼠標(biāo)26。
圖2是按照本發(fā)明機器視覺檢查系統(tǒng)100中的控制系統(tǒng)部分120和視覺元件部分200。如以下更詳細描述的,控制系統(tǒng)部分120用于控制視覺元件部分200。視覺元件部分200包括光學(xué)組件部分205,光源220,230和240,和有中央透明部分212的工件載物臺210。工件載物臺210可以沿一個平面上的X軸和Y軸受控地運動,X軸和Y軸大致平行于可以放置工件20的載物臺表面。光學(xué)組件部分205包括攝像機系統(tǒng)260,可交換物鏡250,并可以包括透鏡旋轉(zhuǎn)臺組件280,和同軸光源230。代替透鏡旋轉(zhuǎn)臺組件,可以包括固定或手動可交換的可變放大倍數(shù)透鏡或變焦透鏡結(jié)構(gòu),等等。利用以下詳細描述的可控電機294,光學(xué)組件部分205可以沿大致垂直于X軸和Y軸的Z軸方向受控地運動。
利用機器視覺檢查系統(tǒng)100成像的工件20放置在工件載物臺210上。一個或多個光源220,230和240分別發(fā)射用于照明工件20的源光222,232,或242。光源220,230和/或240射出的光照明工件20,并被反射或透射成工件光255,工件光255傳輸通過可交換物鏡250和透鏡旋轉(zhuǎn)臺組件280,并被攝像機系統(tǒng)260收集。攝像機系統(tǒng)260捕獲的工件20圖像在信號線262上輸出到控制系統(tǒng)部分120。
用于照明工件20的光源220,230和240可以包含載物臺光220,同軸光230,和表面光240,例如,環(huán)形光或可編程環(huán)形光,它們分別通過信號線或總線221,231,和241都連接到控制系統(tǒng)部分120。作為機器視覺檢查系統(tǒng)100的主光學(xué)組件,除了以上討論的元件以外,光學(xué)組件部分205還可以包含其他的透鏡和其他的光學(xué)元件,例如,光闌,分束器等,可以滿足同軸照明或其他指定機器視覺檢查系統(tǒng)特征的需要。作為機器視覺檢查系統(tǒng)100的次光學(xué)組件,透鏡旋轉(zhuǎn)臺組件280至少包括第一透鏡旋轉(zhuǎn)臺位置和透鏡286和第二透鏡旋轉(zhuǎn)臺位置和透鏡288??刂葡到y(tǒng)部分120通過信號線或總線281沿至少第一與第二透鏡旋轉(zhuǎn)臺位置之間的軸284旋轉(zhuǎn)透鏡旋轉(zhuǎn)臺組件280。
可以調(diào)整工件載物臺210與光學(xué)組件部分205之間的距離,為的是改變攝像機系統(tǒng)260捕獲工件20圖像的焦點。具體地說,在各個典型的實施例中,利用驅(qū)動傳動裝置的可控電機294,連接電纜等,光學(xué)組件部分205可以沿相對于工件載物臺210的垂直Z軸方向運動,從而使光學(xué)組件部分205沿Z軸方向運動。此處使用的術(shù)語Z軸是指用于聚焦光學(xué)組件部分205形成圖像的軸。在利用可控電機294時,它經(jīng)信號線296連接到輸入/輸出接口130。
如圖2所示,在各個典型的實施例中,控制系統(tǒng)部分120包括控制器125,輸入/輸出接口130,存儲器140,工件程序發(fā)生器和執(zhí)行器170,CAD文件特征提取器180,和電源部分190??梢岳斫猓靡粋€或多個數(shù)據(jù)/控制總線和/或應(yīng)用程序設(shè)計接口,或利用各個元件之間的直接連接,可以互連這些元件中的每個元件,以及以下描述的其他元件。
輸入/輸出接口130包括成像控制接口131,運動控制接口132,照明控制接口133,和透鏡控制接口134。運動控制接口132包含位置控制元件132a,和速度/加速度控制元件132b。然而,應(yīng)當(dāng)理解,在各個典型的實施例中,這些元件可以合并和/或不可區(qū)分。照明控制接口133包含照明控制元件133a-133n,它們用于控制機器視覺檢查系統(tǒng)100中各種相應(yīng)光源的選取,功率,on/off開關(guān),和選通脈沖定時,例如,光源220,230,和240。
存儲器140包括圖像文件存儲器部分141,工件程序存儲器部分142,和視頻工具部分143,其中工件程序存儲器部分142可以包含一個或多個零件程序。視頻工具部分143包含工具部分143a-143m,它們確定每個對應(yīng)工具的GUI,圖像處理操作等。視頻工具部分143還包含評價區(qū)發(fā)生器143x,它支持全自動,半自動和/或人工方式的操作,用于確定視頻工具部分143中包含各種視頻工具操作的各個評價區(qū)。一般地說,存儲器部分140存儲這樣的數(shù)據(jù),它用于操作視覺系統(tǒng)元件部分200以捕獲或獲取工件20的圖像,使獲取的工件20圖像有指定的圖像特性。存儲器部分140還存儲這樣的數(shù)據(jù),它用于操作機器視覺檢查系統(tǒng)100以完成對獲取圖像的各種檢查和測量操作,或人工方式或自動方式,并通過輸入/輸出接口130輸出這些結(jié)果。存儲器部分140還包含這樣的數(shù)據(jù),它通過輸入/輸出接口130確定圖形用戶接口。
載物臺光220,同軸光230,和表面光240的各自信號線或總線221,231,和241分別連接到輸入/輸出接口130。攝像機系統(tǒng)260的信號線262和可控電機294的信號線296連接到輸入/輸出接口130。除了傳送圖像數(shù)據(jù)以外,信號線262可以傳送來自控制器125的信號,該信號啟動圖像的采集。
一個或多個顯示裝置136和一個或多個輸入裝置138也可以連接到輸入/輸出接口130。顯示裝置136和輸入裝置138可用于觀察,建立和/或改變零件程序,觀察攝像機系統(tǒng)260捕獲的圖像,和/或直接控制視覺系統(tǒng)元件部分200。在一個有預(yù)定零件程序(或工件程序)的全自動系統(tǒng)中,可以省略顯示裝置136和/或輸入裝置138。
關(guān)于CAD文件特征提取器180,在機器視覺檢查系統(tǒng)的工業(yè)應(yīng)用中通常利用諸如CAD文件的信息,該文件代表工件或基本相同工件的以前圖像。在CAD文件表示的情況下,應(yīng)當(dāng)理解,利用各種已知的CAD文件特征提取方法,按照人工方式,半自動或全自動方式,根據(jù)CAD表示可以確定CAD文件表示中邊緣和邊界的位置。
在各個典型實施例中,當(dāng)用戶利用機器視覺檢查系統(tǒng)100建立工件20的工件圖像采集程序時,用戶產(chǎn)生工件程序指令,或利用工件編程語言,按照全自動,半自動或人工方式明確地編碼這些指令,或移動機器視覺檢查系統(tǒng)100通過圖像采集訓(xùn)練序列產(chǎn)生這些指令,使工件程序指令捕獲訓(xùn)練序列。對于一組被捕獲圖像中的多個圖像,重復(fù)這個過程。在執(zhí)行這些指令時,該指令可以使機器視覺檢查系統(tǒng)以某種速度操縱工件載物臺210和/或攝像機系統(tǒng)260,因此,對于一組被捕獲圖像中的每個圖像,工件20的特定部分是在攝像機系統(tǒng)260的視場內(nèi),并處在理想的聚焦?fàn)顟B(tài)。除了控制攝像機和工件相對運動的程序指令以外,工件圖像采集程序還需要包含啟動一個或多個光源220-240的程序指令,它們在每個圖像采集期間給工件20提供所需的照明。
在本發(fā)明的各個典型實施例中,一旦確定一組工件圖像采集指令,控制系統(tǒng)120執(zhí)行該指令,并命令攝像機系統(tǒng)260按照該指令捕獲一個或多個工件20圖像。然后,在控制器125的控制下,控制系統(tǒng)120通過輸入/輸出接口130輸入捕獲的圖像,并在存儲器140中存儲捕獲的圖像??刂破?25還可以在顯示裝置136上顯示捕獲的圖像。
控制系統(tǒng)部分120還可用于再調(diào)用捕獲和存儲的工件檢查圖像,檢查和分析這些工件檢查圖像中的工件特征,和存儲和/或輸出檢查結(jié)果。這些方法通常體現(xiàn)在存儲器140的視頻工具部分143中包含的各種視頻工具。例如,這種視頻工具可以包括邊緣/邊界檢測工具(其中一個例子是在US Application No.09/987,986中公開,全文合并在此供參考),形狀或模式匹配工具,尺寸測量工具,坐標(biāo)匹配工具等。例如,這些工具通常用在各種商品化機器視覺檢查系統(tǒng)中,例如,以上討論的QUICK VISION系列視覺系統(tǒng)和相關(guān)的QVPAK軟件。
例如,在QVPAK軟件中包含的視頻邊緣/邊界檢測工具包括Point工具,Box工具,Circle工具,和Arc工具。簡要地說,Point工具產(chǎn)生(查找)圖像上單條掃描線相交處的數(shù)據(jù)點。Box工具產(chǎn)生一系列平行掃描線,每條掃描線返回已找到邊緣特征的數(shù)據(jù)點。Circle工具產(chǎn)生一系列以原點為中心圍繞360度的徑向掃描線,每條掃描線返回已找到邊緣特征的數(shù)據(jù)點。Arc工具產(chǎn)生一系列以原點為中心的徑向掃描線,每條掃描線返回已找到邊緣特征的數(shù)據(jù)點(例如,用于返回來自圓角的數(shù)據(jù)點)。這些工具中的每種工具用于自動檢測圖像中特定的邊緣/邊界特征。
在利用這些視頻工具中一個或多個工具完成的圖像檢查/分析操作之后,控制系統(tǒng)120輸出每個檢查/分析操作的結(jié)果到輸入/輸出接口,用于輸出到各種顯示裝置135,例如,視頻顯示器,打印機,等等??刂葡到y(tǒng)120還在存儲器140中存儲每個檢查操作的結(jié)果。
如以上在背景部分所討論的,視頻工具可能由于各種原因不能正常地運行,例如,影響視頻工具運行的至少一些參數(shù)被不合適地設(shè)置,或者,零件加工,零件固定,視覺機器退化,環(huán)境照明條件等中各種不可預(yù)見的變化,它們影響一組操作條件,這些條件使它不能按照以前建立的運行參數(shù)正常地運行視頻工具。當(dāng)視頻工具失效時,例如,控制系統(tǒng)120在視頻顯示器上輸出錯誤的消息,通知用戶該工具的運行不能產(chǎn)生任何的分析/檢查結(jié)果。在這種情況下,以往迫使用戶按照人工方式恢復(fù)該工具。另一方面,本發(fā)明的目的是提供一種用于自動恢復(fù)失效視頻工具的方法和系統(tǒng),例如,按照存儲器140中一個或多個部分中包含的自動恢復(fù)指令。
圖3A是按照本發(fā)明一個相對通用實施例的自動工具恢復(fù)例行程序300流程圖。在工具不能在當(dāng)前圖像中正常運行之后,在方框301,分析當(dāng)前圖像以確定和記錄各種相關(guān)的圖像特性。例如,計算和記錄圖像的平均亮度,圖像中過飽和像素的數(shù)目,指出圖像聚焦?fàn)顟B(tài)的數(shù)值,等等。如此處所使用的,圖像特性值包含表示獲取圖像某個特性或質(zhì)量的任何數(shù)值。在一些情況下,圖像特性值可以表示是否存在條件或特性。用于確定這種圖像特性值(例如,平均亮度,過飽和,聚焦?fàn)顟B(tài)等)的各種方法和視頻工具是熟知的,例如,在以上討論的QVPAK軟件中。以上合并的′180 Patent和′986 Application更詳細地描述用于確定圖像特性的各種方法,這些圖像特性與各種圖像中的邊緣可見度,對比度,和其他的特性有關(guān)。在這個公開內(nèi)容的基礎(chǔ)上,普通的專業(yè)人員顯然知道其他有用的特性以及確定這些特性的方法。
在判定方框302,是否可以接受關(guān)于方框301操作中確定的各種相關(guān)圖像特性評價。在一些情況下,比較定量數(shù)值與可接受的范圍。在其他的情況下,比較存在或不存在指示符與它們的理想狀態(tài)。在任何的情況下,若所有評估的圖像特性是可接受的,則操作轉(zhuǎn)跳到方框306的操作。若所有評估的圖像特性是不可接受的,則該操作進行到方框303的操作。
在方框303的操作中,調(diào)整合適的特征檢查參數(shù)(在這種情況下是一個或多個圖像采集參數(shù)),使評估的圖像特性是可接受的。例如,若在方框302中確定圖像的平均亮度或強度值太低,則在方框303中調(diào)整影響平均亮度值的硬件/軟件參數(shù),例如,光功率強度參數(shù)。作為另一個例子,可以自動地運行以上′180 Patent和′986 Application中公開的一個或多個評估工具,并根據(jù)該結(jié)果可以自動調(diào)整合適的圖像采集參數(shù)和/或工具參數(shù)。作為另一個例子,可以利用給Wasserman的US Patent No.6,627,863中所公開的綜合自動照明選擇和調(diào)整工具,全文合并在此供參考。類似地,可以利用許多商品化機器視覺檢查系統(tǒng)中包含的自聚焦工具。作為另一個例子,在其初始設(shè)置的合理范圍內(nèi),可以改變合適的圖像采集參數(shù)和/或工具參數(shù),和評估每個變化的圖像特性結(jié)果,直至得到可接受的圖像特性結(jié)果,或直至視頻工具正常地運行。更一般地說,按照任何現(xiàn)在已知或以后開發(fā)的方法,可以完成參數(shù)調(diào)整。
一旦在方框303中調(diào)整合適的圖像采集參數(shù)和評估的圖像特性是可接受的,則在方框304,基于形成的調(diào)整圖像,運行視頻工具。當(dāng)然,若在方框303的操作中對相同圖像運行視頻工具作為部分的參數(shù)調(diào)整評估,則實際上已完成方框304的操作。在任何一種情況下,在運行視頻工具之后,按照在判定方框305中的操作,若視頻工具運行正常,則完成方框305′的操作(如果實施)和/或例行程序結(jié)束。
如果需要,在各個實施例或例行程序300的應(yīng)用中,可以實施方框305′的操作。方框305′的操作準(zhǔn)備并輸出或存儲“工具恢復(fù)報告”。這種報告可以識別發(fā)生工具失效的類型,和進行什么特征檢查參數(shù)調(diào)整可以使該工具恢復(fù)。這種報告可用于檢測或診斷機器退化,意外或新發(fā)生的零件加工變化等。在對類似零件重復(fù)地運行零件程序的應(yīng)用中,可以分析一系列這種失效和恢復(fù)趨勢的報告,為的是檢測零件加工過程的“過程漂移”,識別防護性維修機器視覺系統(tǒng)的需要,或者,它們可用于識別一個或多個“最佳”或平均特征檢查參數(shù)調(diào)整,這些調(diào)整的參數(shù)可以永久地代替零件程序指令中容易失效的相關(guān)參數(shù),從而防止或減小在隨后工件檢查期間發(fā)生的視頻工具失效。
另一方面,若視頻工具不能在當(dāng)前調(diào)整圖像中正常地運行,則操作是從方框305進行到判定方框306的操作。在判定方框306的操作中,決定是否評估和調(diào)整當(dāng)前視頻工具的另一個特征檢查參數(shù)。在一些實施例和應(yīng)用中,其中以前確定自動改正一些視頻工具失效潛在原因的風(fēng)險太大(例如,因為圖像中的特征通常是高度紋理化或有噪聲,或各種特征的位置特別地接近,等等),自動工具恢復(fù)操作可以配置成調(diào)整一些“低風(fēng)險”參數(shù)(例如,影響照明的參數(shù)),試圖恢復(fù)失效的工具,但避免調(diào)整那些“高風(fēng)險”的參數(shù)(例如,在密集,高度紋理化特征中重新定位視頻工具)。這是一種保守的方法,試圖在增大操作員干預(yù)需要以恢復(fù)失效視頻工具的同時,減小錯誤檢查結(jié)果的機會。相反地,在一些實施例和應(yīng)用中,其中許多類型的自動參數(shù)調(diào)整是低風(fēng)險的(例如,若被檢查的工件特征在可預(yù)見的低紋理工件上是充分孤立的),可以配置自動工具恢復(fù)操作,試圖調(diào)整所有的自動可調(diào)整的參數(shù)。因此,在各個實施例中,自動恢復(fù)試圖中包含的特定類型參數(shù)或單獨的參數(shù)可以規(guī)定為缺省條件,或在各個其他的實施例中(例如,基于學(xué)習(xí)模式操作期間的操作員輸入),配置特定應(yīng)用或單個特征或視頻工具。在任何情況下,按照支持判定方框306的判定操作方式,確定允許的自動參數(shù)調(diào)整候選方案。若在判定方框306中沒有被評估和調(diào)整的其他特征檢查參數(shù),或由于它們的禁止,或因為已耗盡它們的試圖調(diào)整,則操作進行到方框307,其中輸出工具失效指示符和/或報告,且該例行程序結(jié)束。失效的指示符可以警告用戶干預(yù)以實現(xiàn)該工具的正常運行。例如,視頻工具的失效可能是由于機械故障(例如,燈泡損壞),它不能通過調(diào)整硬件/軟件參數(shù)得到改正,因此,就需要用戶的干預(yù)。
另一方面,若在判定方框306中確定有被評估和調(diào)整當(dāng)前視頻工具的另一個特征檢查參數(shù),則完成方框308的操作。在方框308,相對于某些特性和/或過程和/或與被評估和調(diào)整當(dāng)前特征檢查參數(shù)有關(guān)的參數(shù),分析當(dāng)前的圖像(它通??梢允窃诶谐绦?00中通過以前參數(shù)的調(diào)整得到“改進的”圖像)。例如,被評估的特征檢查參數(shù)是與這樣的參數(shù)有關(guān),該參數(shù)確保諸如邊緣的預(yù)期特征是在當(dāng)前圖像的視頻工具評價區(qū),則可以研究該評價區(qū)以確定表示邊緣強度梯度的存在和/或幅度(應(yīng)當(dāng)理解,表示邊緣存在的要求不同于精確測量邊緣位置的要求)。然后,在方框309,評估方框309操作中分析的各個特性或因素結(jié)果,確定它們支持視頻工具的正常運行是否可以被接受。若該結(jié)果是可接受的,則操作返回到判定方框306,其中確定是否有另一個被評估和調(diào)整的特征檢查參數(shù)。否則,若該結(jié)果是不可接受的,則操作進行到方框310。
在方框310的操作中,調(diào)整合適的特征檢查參數(shù),使與當(dāng)前特征檢查參數(shù)相關(guān)的特性和/或過程和/或參數(shù)為提供工具的正常操作是可接受的。例如,若在判定方框309確定在邊緣工具的評價區(qū)中沒有找到表示邊緣的梯度,則在方框310,可以在圍繞評價區(qū)的合理容差范圍內(nèi)完成搜索操作,為的是找到(假設(shè)的)失準(zhǔn)邊緣特征并相應(yīng)地調(diào)整評價區(qū)位置參數(shù)。以下更詳細地描述這種操作。一旦完成這種修正可以確保當(dāng)前特征檢查參數(shù)支持工具的正常運行,則操作返回到方框304,其中基于調(diào)整的參數(shù)再次運行該工具。重復(fù)方框304-310中的操作,直至例行程序結(jié)束,或因為該工具成功地運行,或因為自動恢復(fù)操作允許或現(xiàn)有的調(diào)整參數(shù)被耗盡而沒有成功。
如以下更充分描述的,在本發(fā)明的各個典型實施例中,研究各個圖像特性和/或其他特征檢查參數(shù)的順序?qū)τ诠ぞ呋謴?fù)效率的最大化是重要的。具體地說,必須首先評估和/或調(diào)整一些圖像和/或工具參數(shù),從而允許評估和/或調(diào)整其他的參數(shù)(例如,在確保正確調(diào)整圖像亮度之后,可以最佳地評估和調(diào)整圖像聚焦)。另一個考慮是較頻繁發(fā)生工具失效的一些原因,從而可以在自動恢復(fù)序列中較早地給出評估相關(guān)參數(shù)的原因。另一個考慮是較容易或較快地修正的一些特征檢查參數(shù)。例如,在利用LED照明時,可以評估,調(diào)整,和測試照明的變化,它比工件的重新定位快得多。因此,在許多情況下,在恢復(fù)序列中較早地調(diào)整這種“可快速調(diào)整的”參數(shù)可以導(dǎo)致較快地執(zhí)行恢復(fù)操作。因此,應(yīng)當(dāng)首先考慮和修正那些圖像特性值,這些特性值說明較頻繁工具失效的原因和/或較容易修正和/或必須修正才可以評估和/或修正其他的參數(shù),為的是最有效地完成自動工具恢復(fù)過程。例如,在本發(fā)明的各個典型實施例中,首先考慮和修正表示獲取圖像照明和/或聚焦質(zhì)量的圖像特性值,這在以下參照圖3B要充分描述的。
應(yīng)當(dāng)理解,利用已知的模糊邏輯或神經(jīng)編程訓(xùn)練方法,可以“預(yù)先確定”方框301和308的操作中完成特性分析結(jié)果與某些參數(shù)之間的相關(guān),這些參數(shù)對于修正從特性分析結(jié)果中觀察到的圖形通常是有效的。即,按照已知的方法,利用一組典型的圖像和失效,可以開發(fā)或訓(xùn)練“分類器”。分類器可應(yīng)用于特性分析的結(jié)果,例如,在方框302-303和/或方框308-309的操作中,為的是分類該結(jié)果并選取對應(yīng)的參數(shù)調(diào)整,這種參數(shù)調(diào)整對于有效修正該類失效是熟知的。我們知道,這些方法在許多應(yīng)用中可以提供健全和快速的失效分析。然而,即使利用這些技術(shù),但首先對第一組特性應(yīng)用第一組分類器仍然是有利的,第一組特性適合于那些特性值,它說明工具失效的較頻繁原因和/或容易或快速地修正和/或必須修正以啟動評估和/或其他參數(shù)的修正。在此之后是對第二組特性應(yīng)用第二組分類器,第二組特性適合于那些特性值,它說明工具失效的較不頻繁原因和/或較難或耗費時間修正和/或最好在其他參數(shù)修正之后再修正,為的是最有效地完成自動工具恢復(fù)過程。例如,第一組特性和分類器主要涉及與亮度和聚焦有關(guān)的圖像采集參數(shù),而第二組特性和分類器涉及這些特征檢查參數(shù),該參數(shù)要求合適照明和聚焦的圖像進行它們的評估和調(diào)整,例如,這些參數(shù)可以包括與定位,取向,和/或特征專用邊緣檢測參數(shù)有關(guān)的參數(shù),它可以確保精確的測量結(jié)果(這些參數(shù)可以包括梯度有關(guān)閾值參數(shù)和/或邊緣閾值參數(shù)的強度變化)。
圖3B是相當(dāng)詳細的例行程序315流程圖,它是一個可用于自動恢復(fù)視頻工具的具體實施例。例行程序315涉及大致敘述可以使視頻工具失效的四類原因不合適照明,不合適聚焦,視頻工具相對于圖像中特征的不合適定位或定向,和一個或多個不合適邊緣檢測參數(shù)。例行程序315按照這個順序敘述這些原因,因為在許多情況下修正工具失效的一些潛在原因是可靠評估和修正其他失效原因的先決條件(例如,只有在確保合適的圖像照明之后,可以最佳或最可靠地評估聚焦)。專業(yè)人員應(yīng)當(dāng)明白,可以改變敘述這些各種原因的順序,它取決于具體應(yīng)用中有效的各種假設(shè)或判斷,在特定的例行程序中還可以提出或多或少的原因,取決于具體的應(yīng)用。例行程序315中給出的順序?qū)τ谶@個例行程序中考慮的失效原因與參數(shù)調(diào)整的組合是有利的。
在方框316,當(dāng)視頻工具失效時,開始判定方框318的操作,其中評估圖像的亮度,并確定該亮度是否在可接受的范圍內(nèi)。例如,在視頻工具的評價區(qū)內(nèi),計算過飽和像素的平均亮度和/或數(shù)目,并與每個數(shù)值的預(yù)定接受范圍進行比較。至少在評價區(qū),若圖像的亮度不是在可接受的范圍內(nèi),則在方框320調(diào)整影響獲取圖像亮度的合適硬件/軟件參數(shù)。例如,可以調(diào)整所用光源的數(shù)目/類型和每個光源的光功率強度。關(guān)于這一點,可以利用按照自動或半自動方式設(shè)置最佳照明強度的各種工具。例如,可以利用以上包含的′863 Patent或以上討論的QVPAK軟件中Lighting WizardTM描述的方法。簡要地說,LightingWizardTM按照自動方式找到用于獲取圖像的最佳照明強度,其中在不同照明設(shè)置組合下拍攝幾個圖像,模擬和內(nèi)插照明設(shè)置的其他組合,并基于最佳模擬/內(nèi)插圖像,有選擇地疊加模擬圖像并識別最佳的照明設(shè)置組合。作為另一個例子,可以利用Dual Area Contrast工具,該工具利用以上包含的′180 Patent或以上討論的QVPAK軟件中描述的方法,用于重復(fù)地和自動地分析在邊緣相對側(cè)上兩個選取的圖像區(qū),并調(diào)整照明強度,使這兩個區(qū)之間的亮度和/或?qū)Ρ榷炔钭畲蠡栽鰪姶_定邊緣的梯度。在調(diào)整合適的硬件/軟件參數(shù)之后,推測已修正了圖像的亮度,或在方框318確定圖像的亮度已在可接受的范圍內(nèi)而無須調(diào)整時,則在方框322確定圖像的聚焦是否在可接受的范圍內(nèi)。為此目的,可以利用自動或半自動方式確定圖像聚焦?fàn)顟B(tài)的各種工具或方法,這些工具或方法是現(xiàn)在已知的或在未來可以開發(fā)的。若確定聚焦?fàn)顟B(tài)是不可接受的,則在方框324調(diào)整影響聚焦?fàn)顟B(tài)的合適硬件/軟件參數(shù)。例如,可以調(diào)整工件載物臺210與光學(xué)組件部分205(見圖2)之間距離以改變聚焦?fàn)顟B(tài)。此外,可以利用自動或半自動方式實現(xiàn)最佳聚焦的各種工具。例如,可以利用以上討論QVPAK軟件中的AutoFocus工具,它在沿相對于工件的Z軸調(diào)整攝像機的同時,拍攝部分工件的多個圖像,并基于對獲取圖像的分析,選取產(chǎn)生最佳聚焦圖像的攝像機位置。
在調(diào)整合適的硬件/軟件參數(shù)之后,推測已修正了圖像的聚焦?fàn)顟B(tài),或在方框322中確定圖像的聚焦?fàn)顟B(tài)已在可接受的范圍內(nèi)而無須調(diào)整時,則在方框326再重新運行視頻工具?;蛘?,我們注意到在方框320完成亮度調(diào)整之后和在方框322檢查圖像聚焦?fàn)顟B(tài)之前(例如,若獲取的圖像可以評估任何的照明調(diào)整,則運行視頻工具是顯然的),立刻可以重新運行視頻工具,雖然在各種應(yīng)用中,在完成亮度和聚焦調(diào)整之后重新運行視頻工具是更有效的,因為這個組合中的一個或兩個因素通常是工具失效的原因。當(dāng)然,若在方框318和322中發(fā)現(xiàn)亮度和聚焦是可接受的,因此無須進行調(diào)整,則在方框326中重新運行視頻工具不可能提供新的信息,因此,可以跳過方框326的操作。
在方框328確定重新運行視頻工具是否失效。如果不是,則操作跳到方框242,例行程序315結(jié)束(例如,已成功地恢復(fù)視頻工具)。另一方面,若重新運行視頻工具再次失效,則假設(shè)另一個最可能失效的原因是視頻工具,或更具體地說,視頻工具的評價區(qū),它相對于被檢測的目標(biāo)邊緣/邊界沒有合適地定位或定向。所以,在方框330重新定位和/或重新定向視頻工具到最接近的邊緣特征,為的是使目標(biāo)邊緣/邊界是在視頻工具評價區(qū)內(nèi)。以下參照圖4A和4B更詳細地描述這個過程。
在方框330的重新定位和/或重新定向操作之后,在方框332中再次重新運行視頻工具。在方框334確定該工具是否失效。如果不是,則視頻工具被成功地恢復(fù),因此,該例行程序在方框342結(jié)束。若視頻工具再次失效,則操作進行到方框336的操作,其中調(diào)整諸如邊緣強度閾值的邊緣檢測閾值參數(shù)。通常,在工具失效的情況下,邊緣強度閾值減小。利用各種類型邊緣檢測閾值是常見的,其參數(shù)是在學(xué)習(xí)模式操作期間基于實際邊緣圖像特性被“訓(xùn)練”或設(shè)置的。這種技術(shù)提供的參數(shù)傾向于指出邊緣的“標(biāo)識”以及提供拒絕邊緣特征圖像的參數(shù)或限制,具有產(chǎn)生相對差邊緣位置檢查精確度的梯度。如以上在QVPAK 3D CNC Vision Measuring Machine User′s Guide和QVPAK3D CNC Vision Measuring Machine Operation Guide中所描述的,邊緣檢測閾值用于設(shè)置視頻工具識別目標(biāo)邊緣/邊界特征的閾值水平。具體地說,邊緣/邊界檢測工具識別光強變化為被檢測的邊緣/邊界。因此,在它的簡化形式中,邊緣檢測閾值確定邊緣/邊界檢測工具識別的光強變化量作為存在邊緣/邊界的指示符。例如,若邊緣檢測閾值設(shè)置成高值,則只有在檢測到兩個相鄰區(qū)之間相對大的光強變化量之后,邊緣/邊界檢測工具可以識別邊緣/邊界。所以,若邊緣檢測閾值設(shè)置成高值,則視頻工具能夠檢測到兩個高對比度區(qū)域之間相對明顯確定或“強”邊緣。另一方面,若邊緣檢測閾值設(shè)置成低值,則視頻工具可以識別相對小的光強變化量作為存在邊緣/邊界的指示符。所以,當(dāng)邊緣檢測閾值設(shè)置成低值時,視頻工具能夠識別不太明顯確定的模糊邊緣,或“弱”邊緣,以及強邊緣。在方框336,降低邊緣檢測閾值,其中假設(shè)視頻工具不能識別目標(biāo)邊緣/邊界,因為最初設(shè)置的閾值太高。一般地說,邊緣檢測閾值越高,則很可能是這樣的情況,圖像支持良好的邊緣位置測量精確度,但視頻工具較頻繁地失效。相反地,當(dāng)邊緣檢測閾值設(shè)置成相對低值時,視頻工具很少失效,但可以增大接受假陽性(檢測噪聲為邊緣)的似然性或接受低測量精確度的似然性。最初,邊緣檢測閾值可以設(shè)置或訓(xùn)練成僅僅接受支持最佳邊緣選擇性和測量精確度的邊緣梯度。然而,在工具失效的事件中,較低的閾值在許多情況下允許視頻工具成功地運行(即,閾值限制不會被邊緣梯度特性破壞),并仍然獲得合適的(但不是最佳的)選擇性和精確度。
在方框336的閾值調(diào)整之后,在方框337重新運行視頻工具。在方框338確定視頻工具是否失效。如果不是,則視頻工具被成功地恢復(fù),因此,例行程序在方框342結(jié)束。另一方面,若視頻工具再次失效,則在方框340,例行程序發(fā)出錯誤指示符,它可以是提示操作員按照人工方式恢復(fù)視頻工具。例如,工具失效的原因可能是需要用戶干預(yù)的機械故障。然后,操作員按照人工方式恢復(fù)視頻工具。
在另一個實施例中,若一組恢復(fù)操作在方框338的操作中不能使視頻工具正常運行,則可以利用提供類似檢查結(jié)果的預(yù)定“替換”視頻工具代替當(dāng)前視頻工具。一般地說,“替換”視頻工具的操作略微不同于它代替的視頻工具,所以,它有成功運行的機會。例如,基于工件圖像中強度梯度運行的普通邊緣檢測工具可能因邊際照明有效性或圍繞和遮蔽邊緣的紋理表面而失效。在這種情況下,恢復(fù)操作可以包括基于彩色或紋理變化,利用邊界檢測工具代替普通邊緣檢測工具。最初,這種“代替”工具可能不是優(yōu)選的,因為它需要較長的執(zhí)行時間或提供較低精確的結(jié)果。例如,一種這樣的工具是健全的邊界檢測工具,它可用于代替在上包含的′986 Application中描述的普通邊緣工具。若這種工具替換是在方框338的操作之后進行,則放置替換工具的評價區(qū)以代替以前工具的評價區(qū),該工具對當(dāng)前的圖像上或新獲取的圖像上進行操作。若替換的工具成功地運行,則該例行程序結(jié)束。否則,例行程序315的繼續(xù)(重復(fù))是在方框318的操作中開始。
圖4A和4B表示相對于最接近的邊緣重新定位(在圖4A的情況下,它可以包括重新定向)失效視頻工具的例行程序流程圖,在圖3B所示例行程序315的一些實施例中,可以在方框330中完成該操作。圖4A表示可用于實現(xiàn)邊緣工具重新定位的例行程序401,例如,沿邊緣(通常是直邊緣)檢測多個點的Box工具,或沿邊緣通常檢測單個點的Point工具,為的是促使這種工具的自動恢復(fù)。在以上討論的QVPAK軟件中列舉和描述這種工具。
在確定應(yīng)當(dāng)重新定位邊緣工具時,例如,在工具失效的原因很可能在自動恢復(fù)序列中被耗盡時,例行程序401是在方框402開始操作,其中在當(dāng)前圖像中找到邊緣(或邊緣像素),至少是在圍繞當(dāng)前評價區(qū)的鄰近。以下參照圖5更詳細地描述一個有用的邊緣像素識別過程。更一般地說,可以利用各種已知的邊緣檢測(邊緣像素識別)方法,例如,Canny邊緣檢測器。在Ramesh Jain et al.的Machine Vision一書第5章中列舉和描述幾個已知的邊緣檢測方法,McGraw Hill于1995年出版,全文合并在此供參考。在各個實施例中,邊緣像素的檢測局限于視頻工具的評價區(qū)鄰近(它通常略大于確定具體視頻工具評價區(qū)的框),為的是減少執(zhí)行時間和防止不重要(遠離)的圖像特征影響或混淆指定邊緣的識別。因此,參照圖4A,4B和5使用的“圖像”是指在原始攝像機視場內(nèi)的子圖像。
一旦在圖像中識別邊緣像素,則在方框404完成,重新定位工具中心的操作,或更精確地說,重新定位視頻工具評價區(qū)中心到最接近的“足夠強”邊緣像素,例如,沿相關(guān)邊緣工具掃描方向展示高梯度值位置相關(guān)的像素。在一些情況下,若在應(yīng)用中需要轉(zhuǎn)動失準(zhǔn)恢復(fù),還可以重新定向視頻工具。可以確定包含最接近“足夠強”邊緣像素的直邊緣取向,例如,利用從最接近“足夠強”邊緣像素或一組包含“足夠強”邊緣像素的鄰近像素中提取梯度方向信息。在完成重新定位和/或重新定向之后,該例行程序結(jié)束。如以上有關(guān)邊緣檢測閾值的簡要描述,每個邊緣的強度可以定義為確定該邊緣的兩個鄰近區(qū)之間光強變化量。因此,邊緣檢測閾值,或梯度閾值,或其他邊緣檢測參數(shù),可以設(shè)定在缺省設(shè)置,用戶設(shè)置,或在相關(guān)工具訓(xùn)練期間從邊緣特性中推導(dǎo)出設(shè)置確定的合適高數(shù)值上,因此,視頻工具的重新定位僅僅是相對與邊緣強度相關(guān)的那些像素,該邊緣強度足以支持視頻工具的正常運行。
圖4B表示可用于實現(xiàn)重新定位曲線邊緣工具的例行程序410,例如,Circle工具或Arc工具。在以上討論的QVPAK軟件中列舉和描述這種工具。圖6展示Circle工具。在確定應(yīng)當(dāng)重新定位Circle工具或Arc工具時,例如,當(dāng)工具失效的原因很可能在自動恢復(fù)序列中被耗盡時,調(diào)用例行程序410。例行程序410開始的操作是在方框412,其中在當(dāng)前圖像中找到邊緣(或邊緣像素),如以上參照圖4A對方框402的描述。在方框414,按照已知的圖像過濾技術(shù)將圖像平滑化,可以使它的邊緣像素梯度方向有較少噪聲。
其次,在方框415,完成廣義Hough變換。廣義Hough變換是專業(yè)人員熟知的用于圖像分析的標(biāo)準(zhǔn)工具,它通常可以找到隱藏在大量數(shù)據(jù)中的圖形(它們的位置)。根據(jù)給Flickner的US Patent No.5,136,660中描述具體實施該技術(shù)的內(nèi)容,可以知道Hough變換技術(shù)的各種一般特性。參照D.H.Ballard在Pattern Recognition,13(2),1981,pp.111-122中的“Generalizing The Hough Transform To DetectArbitrary Shapes”,可以進一步理解廣義Hough變換的應(yīng)用。此處的基本技術(shù)是找到圓形/弧形圖形,它在二維或多維的合適參數(shù)空間中可以參數(shù)化。
具體地說,在方框416,制備對應(yīng)于圓半徑為(R1+R2)/2的[梯度方向,中心偏移]查閱表,其中R1是Circle工具或Arc工具邊界評價區(qū)的內(nèi)半徑,R2是該工具的外半徑(例如,見圖6中的623A′和623B′)。這個半徑是視頻工具查找和測量邊緣特征半徑的合理估算值。梯度方向是指圓邊緣或其部分邊緣上的最大梯度方向或標(biāo)稱徑向。該查閱表是按照梯度方向編排索引,即,相對于參考軸用度表數(shù)示的取向角。
在方框418,計算從方框412和414的操作中得到所有邊緣像素(不是圖像中任何的其他像素)的梯度方向。在方框420,對于每個邊緣像素,利用[梯度方向,中心偏移]查閱表增大2D累加器陣列的小區(qū)。具體地說,利用廣義Hough變換的直接擴展,增大小區(qū)是沿直線段完成的,這個直線段連接當(dāng)前邊緣像素兩側(cè)上(沿梯度方向)的兩個可能圓中心。利用與查閱表中與計算當(dāng)前邊緣像素梯度方向的中心偏移矢量,計算這兩個可能的中心位置。把該矢量相加當(dāng)前像素的坐標(biāo)上,可以得到第一個潛在圓中心,而相減可以得到第二個潛在圓中心。考慮兩個可能邊緣斜率或極性的兩側(cè)邊緣上兩個潛在圓中心,一個圓中心是與沿邊緣上掃描方向的上升強度相關(guān),而另一個圓中心是與邊緣上的下降強度相關(guān)。
利用直線段取代增大累加器陣列的單個小區(qū),可以使這個算法找到圓形或弧形,其半徑略微不同于(R1+R2)/2的標(biāo)稱估算值。因此,這個例子中圓形或弧形的Hough變換有效地利用三參數(shù)空間確定位置的2D累加器陣列,和圓半徑靈活性(第三個參數(shù))。在2D累加器陣列中產(chǎn)生對應(yīng)于直線段的數(shù)值,代替各個點,可以實現(xiàn)Hough變換。
在方框421,2D累加器陣列(它可以考慮成參數(shù)圖像)作為閾值,不考慮方框420操作中累積的較小數(shù)值的所有其他小區(qū)。具有低數(shù)值的小區(qū)不是在有預(yù)期尺寸和形狀的特征上。存儲原始的和閾值化2D累加器陣列供以后參考。
在方框422,在閾值化2D累加器陣列上運行形態(tài)閉合操作(膨脹之后腐蝕)以閉合區(qū)域中的開孔。在方框424,按照已知的圖像處理方法(區(qū)域標(biāo)記法),識別閾值化2D累加器陣列中的連接元件(區(qū)域),并標(biāo)記對應(yīng)的“像素”以表示它們是特定連接區(qū)中的成員。在方框426,基于其標(biāo)記像素的地址,確定每個連接區(qū)的形心,而把對應(yīng)于(即,疊合的)原始2D累加器陣列中連接區(qū)的所有小區(qū)數(shù)值相加可以得到“投票數(shù)”,指出它們與被查找的預(yù)期半徑和形狀是如何的符合。
在方框428,基于它們各自的投票數(shù)(每個區(qū)中投票數(shù)之和)和與當(dāng)前工具中心的距離,排列所有的連接區(qū)(即,候選的圓中心)。例如,投票數(shù)和該距離的數(shù)值可以歸一化成相同的數(shù)字范圍,然后,對于每個連接區(qū),可以對各自歸一化投票數(shù)和各自歸一化距離求和以給出定量的排列數(shù)值。在方框430,重新定位視頻工具,使其相關(guān)圓的中心放置在有最高排列數(shù)值的連接區(qū)形心,即,與被視頻工具分析的失準(zhǔn)特征的最可幾中心對準(zhǔn)。然后,該例行程序結(jié)束。
圖5是一個用于找到圖像中邊緣(邊緣像素)的可能例行程序500流程圖,它可以在圖4A所示一些實施例的例行程序401中方框402和/或在圖4B所示一些實施例的例行程序410中方框412中完成。在方框502,例如,利用平均化過濾器使圖像平滑化,為的是改進包含高度紋理表面圖像的直方圖模式。在方框504,計算和平滑化該圖像的灰度級直方圖。在判定方框506,確定灰度級直方圖是否有不同的模式(即,反映像素值的孤立組數(shù)值,該數(shù)值最通常發(fā)生在圖像中)。如果是,在方框508,基于直方圖模式(自動閾值化)找到閾值,并對圖像應(yīng)用該閾值以產(chǎn)生二進制圖像,二進制圖像較好地確定對應(yīng)于直方圖中一組或兩組孤立數(shù)值的不同區(qū)(物體或特征)。否則,若在方框506確定灰度級直方圖沒有不同的模式,則在方框507完成計算梯度圖像的操作,例如,利用Sobel算符,并給梯度圖像應(yīng)用合適的閾值以產(chǎn)生二進制邊緣圖像。
不管二進制圖像的確定是利用方框507或508的操作,在方框510,在二進制圖像上運行形態(tài)閉合操作(膨脹之后腐蝕),用于閉合不同區(qū)(物體或邊緣特征)中的開孔。
在方框512,在從操作方框510形成的形態(tài)過濾二進制圖像中確定連接區(qū),并對連接區(qū)進行尺寸過濾,為的是去除小于某個尺寸閾值的任何無關(guān)區(qū)。在方框514,識別剩余連接區(qū)的邊界上像素作為邊緣像素,該例行程序結(jié)束。若利用上述的Sobel算符,它在技術(shù)上是剩余連接區(qū)的“中心線”,該連接區(qū)最佳地對應(yīng)于圖像中的邊緣像素。然而,這種連接區(qū)非常狹窄,因此,識別其邊界上像素作為邊緣像素不會嚴重影響后續(xù)操作的結(jié)果,該操作利用邊緣像素實現(xiàn)本發(fā)明的目的。
按照本發(fā)明的各種典型實施例,借助于包含計算機可執(zhí)行指令的自動工具恢復(fù)計算機程序?qū)崿F(xiàn)自動工具恢復(fù)方法,該程序可以裝入到精密機器視覺檢查系統(tǒng)的控制系統(tǒng)部分120(見圖2),可以實踐自動工具恢復(fù)方法。在各個實施例中,自動工具恢復(fù)計算機程序可以包含在控制系統(tǒng)部分120中存儲器140的視頻工具部分143?;謴?fù)程序可以與視頻工具相關(guān)(合并成每個視頻工具功能的整體部分),或者,它可以與視頻工具分開,并在其中任何一個工具失效時被調(diào)用。在任何一種情況下,當(dāng)這種程序是與視頻工具的操作相關(guān)時,該視頻工具變得高度健全,即,它在遭遇到失效之后變得能夠自動地恢復(fù)。
按照本發(fā)明各個典型的實施例,用戶可以配置一組自動工具恢復(fù)指令。圖6是一個用戶接口例子的視頻顯示樣本屏幕圖,該接口允許用戶配置(定制)一組自動工具恢復(fù)指令以及Circle工具相對于圖像中圓形特征的自動重新定位。在圖6中,視頻顯示屏601包含展示被檢查圓形特征602的圖像窗口603,消息窗口605,和控制屏面607。控制屏面607包含圖像特性值屏面610,它顯示基于圖像分析計算的相關(guān)圖像特性值,例如,圖像聚焦和亮度,它可用作專業(yè)用戶的參考??刂破撩?07還包含恢復(fù)型選擇屏面608,容差規(guī)定屏面609,和恢復(fù)試驗命令屏面611。
恢復(fù)型選擇屏面608允許用戶選取由自動工具恢復(fù)計算機程序完成的一種或多種調(diào)整類型。在所示的例子中,選取4種調(diào)整類型“Light”,“Focus”,“Position(相對于圖像特征的工具)”,和“THS(邊緣強度閾值)”。因此,形成的自動工具恢復(fù)指令組配置成自動完成這些調(diào)整類型中的每種調(diào)整,例如,上述包含這種調(diào)整的各種例行程序。通過改變相關(guān)的復(fù)選框,用戶可以停用這些調(diào)整類型中的任何一種,它取決于不同的應(yīng)用。例如,用戶可以停用“Position”和“THS”調(diào)整,因此,自動工具恢復(fù)計算機程序僅完成“Light”和“Focus”的調(diào)整(如果需要)。
容差規(guī)定屏面609允許用戶規(guī)定每種調(diào)整類型(例如,圖6中的“Light”,“Focus”,“Position”和“THS”)的通用容差水平。具體地說,各種調(diào)整類型中的每種調(diào)整有可能的設(shè)置范圍,它可以在恢復(fù)過程期間使用,而容差水平有效地規(guī)定工具恢復(fù)期間內(nèi)這個范圍的百分比。在所示的例子中,容差規(guī)定屏面609允許每種容差設(shè)置成“Low”,“Medium”,或“High”。“Low”容差意味著,允許利用相對小范圍的總可能調(diào)整設(shè)置,使給定的參數(shù)(照明,聚焦,工具位置等)達到可接受的數(shù)值。而“High”意味著,允許利用相對大范圍的(或整個)可能調(diào)整設(shè)置,使給定的參數(shù)達到可接受的數(shù)值。在這個語境下,“容差”意味著,在工具恢復(fù)操作期間試圖成功地調(diào)整各種特征檢查參數(shù)是,利用給各種參數(shù)搜索范圍設(shè)定的限制。一般地說,低容差的調(diào)整往往需要較短的時間周期,這是因為參數(shù)搜索范圍較小。然而,低容差也表示較高的恢復(fù)失效似然性,這是因為它不可能在有限的參數(shù)搜索范圍內(nèi)找到合適的參數(shù)調(diào)整。因此,當(dāng)用戶希望加速自動工具恢復(fù)過程并愿意接受增大的恢復(fù)失效似然性時,用戶可以選取這種調(diào)整類型的“Low”容差水平。另一方面,若需要較高概率的有效參數(shù)調(diào)整,且用戶接受調(diào)整的參數(shù)值可以與引起工具失效的參數(shù)值有很大的不同,以及恢復(fù)速度可以較慢,則用戶可以選取這種調(diào)整類型的“High”容差水平。應(yīng)當(dāng)明白,利用各種其他格式或接口配件,可以按照各種其他的方法設(shè)置容差水平,它不局限于圖6所示的具體實施例。例如,代替可以選取的三個選項(“Low”,“Medium”和“High”),可以給用戶提供或多或少的選項。作為另一個例子,容差規(guī)定屏面609可以提示用戶輸入用于規(guī)定準(zhǔn)確容差值的數(shù)字值。
恢復(fù)試驗命令屏面611可用于運行一組自動工具恢復(fù)指令的預(yù)先測試特定配置,因此,用戶能夠評價該配置的功效。例如,用戶可以故意地限定和定位工具,例如,圖6中所示的Circle工具620是在“不正確的位置”,并故意誤調(diào)光強設(shè)置等,則激勵“Recover Circle Tool”按鈕,為的是運行該工具和當(dāng)前配置的自動工具恢復(fù)指令。若恢復(fù)是成功的,則光強被正確地調(diào)整,且其他特征檢查參數(shù)被正確地調(diào)整,該工具就成功地運行,如消息窗口605中“TOOL OK!...”消息所示。重新定位的Circle工具620′與原始Circle工具620一起顯示,因此,用戶可以在顯示圖像上看到該工具相對于圓形特征602的初始位置和調(diào)整后位置。如圖6所示,恢復(fù)的Circle工具620′是在這樣的位置,它的評價區(qū)內(nèi)半徑623A′和外半徑623B′包圍被檢查圓形特征602的邊緣。
在本發(fā)明的各個典型實施例中,自動工具恢復(fù)計算機指令還配置成跟蹤它的操作,即,收集如下的信息,什么類型工具已失效,失效多少次,以及對于每次工具失效,需要什么類型調(diào)整可以以恢復(fù)該工具??梢蕴峁┖线m數(shù)目的計數(shù)器以實施跟蹤操作。用戶可以記錄和分析工具失效和恢復(fù)的歷史,例如,用于研究頻繁的工具失效原因。
雖然我們已說明和描述本發(fā)明的優(yōu)選和典型實施例,但可以理解,在不偏離本發(fā)明精神和范圍的條件下,按照本發(fā)明的原理可以在其中進行各種變化。
權(quán)利要求
1.一種在檢查工件的精密機器視覺檢查系統(tǒng)中用于自動恢復(fù)視頻工具的方法,精密機器視覺檢查系統(tǒng)包括獲取工件圖像的機器視覺檢查系統(tǒng),和控制圖像采集操作和圖像分析/檢查操作的控制系統(tǒng)部分,其中視頻工具對工件圖像實施預(yù)定的圖像分析/檢查操作,該方法包括(a)在檢測到視頻工具失效之后,基于工件圖像的分析,至少評估一個特征檢查參數(shù);(b)對于每個評估的特征檢查參數(shù),確定該參數(shù)是否落在預(yù)定的可接受范圍內(nèi);和(c)若在步驟(b)中確定一個或多個特征檢查參數(shù)是在預(yù)定的可接受范圍之外,則調(diào)整精密機器視覺檢查系統(tǒng)的一個或多個特征檢查參數(shù),為了使視頻工具成功地運行。
全文摘要
我們描述在精密機器視覺檢查系統(tǒng)中用于自動恢復(fù)失效視頻檢查工具的方法和系統(tǒng)。一組恢復(fù)指令可以與視頻工具相聯(lián)系或合并,從而允許視頻工具自動恢復(fù)并著手提供初始失效之后的檢查結(jié)果。恢復(fù)指令包含用于評估和改變特征檢查參數(shù)的操作,這些參數(shù)控制工件特征圖像的獲取并檢查工件特征。該組恢復(fù)指令可以包含用于調(diào)整圖像采集參數(shù)的初始階段恢復(fù)。若調(diào)整圖像采集參數(shù)不能導(dǎo)致合適的工具操作,則可以調(diào)整其他的特征檢查參數(shù),例如,工具位置。可以預(yù)先確定用于研究多個特征檢查參數(shù)及其相關(guān)特性的順序,為的是最有效地完成自動工具恢復(fù)過程。
文檔編號G01B21/00GK1782661SQ20051011878
公開日2006年6月7日 申請日期2005年10月28日 優(yōu)先權(quán)日2004年10月29日
發(fā)明者羅伯特·K·布雷爾, 有我幸三 申請人:株式會社米姿托約