機(jī)器視覺(Machine Vision)作為光電技術(shù)應(yīng)用的一個特定領(lǐng)域,,目前已經(jīng)發(fā)展成為一個前景光明、活力無限的行業(yè),,年平均增長速度超過2O% ,。機(jī)器視覺廣泛應(yīng)用于微電子、電子產(chǎn)品,、汽車,、醫(yī)療、印刷,、包裝,、科研、軍事等眾多行業(yè),。涉及技術(shù)一致,,應(yīng)用差異明顯,是各種機(jī)器視覺應(yīng)用系統(tǒng)的共同特點(diǎn),。
機(jī)器視覺系統(tǒng)集成時,,涉及到多門技術(shù),最基本的系統(tǒng)也需要照明、成像,、圖像數(shù)字化,、圖像處理算法、計算機(jī)軟件硬件等,,稍微復(fù)雜一點(diǎn)的系統(tǒng)還會用到機(jī)械設(shè)計,、傳感器、電子線路,、PLC,、運(yùn)動控制、數(shù)據(jù)庫,、SPC等等,。要把這么多不同方面的技術(shù)和知識組合到系統(tǒng)里,使其相互完美配合并穩(wěn)定地工作,,對系統(tǒng)集成人員提出了很高的要求,。作者根據(jù)多年的經(jīng)驗(yàn),,講解了機(jī)器視覺系統(tǒng)集成時所涉及的各種技術(shù),、需要綜合考慮的因素以及評估機(jī)器視覺系統(tǒng)項目成功的可能性的方法。
中國經(jīng)濟(jì)經(jīng)過數(shù)十年的高速發(fā)展,在很多領(lǐng)域完成了從無到有、從不能到可以的躍變,,現(xiàn)在已經(jīng)到了提高生產(chǎn)效率和產(chǎn)品質(zhì)量,、殘酷競爭的階段,很多原來使用的人工工序正逐漸被機(jī)器所取代,,從而對機(jī)器視覺系統(tǒng)產(chǎn)生了越來越多的需求。而機(jī)器視覺技術(shù)本來就是為了解決生產(chǎn)中的各種問題發(fā)展起來的。在人類的生產(chǎn)活動中,,人的眼睛擔(dān)負(fù)著很多重要的任務(wù),例如放置和固定工件,、觀察和估計位置,、檢測外觀尺寸、確定產(chǎn)品的一致性,、檢驗(yàn)產(chǎn)品質(zhì)量等,。這些工作正在越來越多地被機(jī)器視覺系統(tǒng)取代,一方面是隨著對生產(chǎn)速度和產(chǎn)品質(zhì)量的要求越來越高,,對檢測速度和精度的要求超過了肉眼的能力,;另一方面是因?yàn)槌上窦夹g(shù)、計算機(jī)技術(shù)或圖像處理技術(shù)的發(fā)展,,機(jī)器視覺系統(tǒng)能夠完成的任務(wù)越來越復(fù)雜,,成本也越來越低。然而,機(jī)器視覺技術(shù)作為一門新興技術(shù),,引人中國時間并不長,,真正有經(jīng)驗(yàn)的系統(tǒng)集成人員也不多,而機(jī)器視覺系統(tǒng)涉及到照明,、成像,、電子、自動控制,、計算機(jī)軟件硬件,、機(jī)械設(shè)計、傳感器,、光學(xué)等各方面,,把這些不同的技術(shù)集成到1個系統(tǒng)內(nèi),并使其相互完美配合工作,,本身就是艱巨的任務(wù),。本文試圖根據(jù)作者多年的經(jīng)驗(yàn),就機(jī)器視覺系統(tǒng)集成技術(shù)給出一些建議,,期望能夠幫助使用機(jī)器視覺系統(tǒng)的用戶評估其系統(tǒng)并在做出合理決策時提供參考,,給研制系統(tǒng)的技術(shù)人員和公司提供一些成功的經(jīng)驗(yàn)。本文將介紹需求分析,、資源配置,、系統(tǒng)集成等幾個方面的內(nèi)容。
A,、 需求分析
準(zhǔn)確地描述機(jī)器視覺系統(tǒng)需要完成的功能和工作環(huán)境,,對于整個機(jī)器視覺系統(tǒng)的成功集成是至關(guān)重要的。對于需求的描述,,實(shí)際定義了視覺系統(tǒng)工作的場景,,而圍繞這個場景設(shè)計1個系統(tǒng)來獲取合適的圖像,并提取有用的信息或控制生產(chǎn)過程就是我們工作的目標(biāo),。這個步驟看起來如此簡單,,以至于經(jīng)常被忽略。有時候用戶在生產(chǎn)過程中產(chǎn)生了某種需求,,但是由于知識面和技術(shù)方面的原因,,用戶不知道自己需要什么樣的視覺系統(tǒng),或者不能準(zhǔn)確描述自己的需求,,而這時系統(tǒng)集成商自己經(jīng)驗(yàn)不足或沒有給以足夠的重視,,就不能幫助用戶來明確系統(tǒng)的功能細(xì)節(jié),這個系統(tǒng)集成開發(fā)過程注定要走彎路,,甚至最終失敗,。
所以,,系統(tǒng)集成的第1步就是明確用戶需求!一般情況下可以使用下面的表格來幫助我們實(shí)現(xiàn)此目標(biāo)。
機(jī)器視覺系統(tǒng)集成技術(shù)的三大概念
B,、資源配置
機(jī)器視覺系統(tǒng)集成時,,涉及到多門技術(shù),最基本的系統(tǒng)也需要照明,、成像,、圖像數(shù)字化、圖像處理算法,、計算機(jī)軟件硬件等,,稍微復(fù)雜一點(diǎn)的系統(tǒng)還會用到機(jī)械設(shè)計、傳感器,、電子線路,、PLC、運(yùn)動控制,、數(shù)據(jù)庫,、SPC等等。顯而易見,,要把這么多不同方面的技術(shù)和知識組合到1個系統(tǒng)里,,使其相互完美配合并穩(wěn)定地工作,對系統(tǒng)集成人員提出了很高的要求,,需要根據(jù)具體的需求來確定所需要配置的資源和對策,。
B.1機(jī)械設(shè)計
由于需求不同,,對機(jī)械部分的要求差別很大,,如果是全自動的機(jī)器視覺系統(tǒng),機(jī)械部分一般需要完成的功能有理料,、輸送,、定位、剔除,、下料等功能,,而有的機(jī)器視覺系統(tǒng)則只需要適當(dāng)?shù)墓潭ㄖЪ軄砉潭ㄏ鄼C(jī)、鏡頭和計算機(jī)即可,,差別很大,。例如,制藥生產(chǎn)線上使用的西林瓶燈檢機(jī),,需要完成理瓶,、輸送、旋轉(zhuǎn),、剎車急停,、相機(jī)同步,、快速歸位、下料,、分流剔除等多個動作,,而且需要提供多達(dá)15個檢測工位,以完成液體內(nèi)部懸浮物,、玻璃碎屑,、瓶身破損、細(xì)菌群落,、瓶口封裝,、瓶底等多項指標(biāo)的檢測,各種機(jī)械零件多達(dá)上千個,,系統(tǒng)非常之復(fù)雜,;而停車場使用的車牌識別系統(tǒng)的機(jī)械部分則非常簡單,只需要相機(jī)固定和保護(hù)等安裝配件即可,。一般系統(tǒng)集成商不愿意介入特別復(fù)雜的機(jī)械設(shè)計,,一方面是因?yàn)樵谟脩舻挠^念中,機(jī)械設(shè)計沒有太多的技術(shù)含量,;另一方面是機(jī)械加工周期較長,,1個小小的設(shè)計錯誤也會導(dǎo)致返工,時間拖得較長,。所以,,雖然在很多情形下,機(jī)械設(shè)計在機(jī)器視覺系統(tǒng)中占了很大的比重,,而且是關(guān)鍵部分,,但投入相對較少,導(dǎo)致整個系統(tǒng)開發(fā)過程不順利,。有時候,,和制造機(jī)械設(shè)備的公司合作是最好的選擇。需要指出的是,,對于需要復(fù)雜機(jī)械系統(tǒng)的全自動系統(tǒng),,由于大多數(shù)系統(tǒng)只能針對特定的產(chǎn)品工作,所以,,除非生產(chǎn)量達(dá)到一定數(shù)量,,或者該產(chǎn)品會生產(chǎn)很長時間,一般情況下,,半自動系統(tǒng)就足夠了,。自動系統(tǒng)開發(fā)周期長,成本高,,生產(chǎn)過程中換型困難,,而半自動系統(tǒng)只需要更換1個夾具,,重新設(shè)置檢測指標(biāo)和合格判據(jù)就可以了。
B.2照明光源
這個看似簡單的照明系統(tǒng)是機(jī)器視覺系統(tǒng)最為關(guān)鍵的部分,,直接關(guān)系到系統(tǒng)的成敗,,其重要性無論如何強(qiáng)調(diào)都是不過分的。好的設(shè)計能夠使我們得到1幅好的圖像,,從而改善整個系統(tǒng)的分辨率,,簡化軟件的運(yùn)算,而不合適的照明,,則會引起很多問題,。例如花點(diǎn)和過度曝光會隱藏很多重要的信息;陰影則會引起邊緣的誤檢,;而信噪比的降低以及不均勻的照明會導(dǎo)致圖像處理閾值選擇的困難,。在實(shí)際應(yīng)用中,得到場景的圖像很容易,,但是得到1幅適合機(jī)器視覺算法要求的圖像則很難,,因?yàn)楸粶y目標(biāo)多種多樣,形狀大小不同,,檢測指標(biāo)各異,,而且各種材料的反光特性及顏色也不一樣,要把所需要檢測的特征突顯出來,,而對不需要的特征加以抑制,,并不是簡單的任務(wù)。這主要通過設(shè)計或選擇合適的照明光源來解決,。針對特定的物體和場景,,設(shè)計/選取成本低廉、安裝簡單,、照明效果好的照明系統(tǒng),,就是我們搭建機(jī)器視覺系統(tǒng)首先需要完成的任務(wù)。那么什么樣的圖像才是好的圖像呢?一般說來,,1幅好的圖像需要滿足以下條件:
1、充分利用視場使被檢測物體特征充滿視場,,從而可以最大限度地利用系統(tǒng)的分辨率,;
2、對比度合適灰度級的最大值接近255,,而最小值接近0,;
3、焦距準(zhǔn)確 圖像沒有因?yàn)榫吧罨蜻\(yùn)動而不清晰,;
4,、照明均勻,,避免反光;
5,、圖像畸變?。?/p>
6,、感興趣的特征容易被檢測識別,,其他特征不顯示或得到抑制。如果選擇的光源,,能使圖像達(dá)到這些基本的要求,,就完成了機(jī)器視覺系統(tǒng)集成的第1步。
B.3成像系統(tǒng)
從系統(tǒng)集成的角度,,簡單列舉選擇這些硬件的原則,。
由于相機(jī)鏡頭和板卡經(jīng)過多年的發(fā)展,目前已經(jīng)相當(dāng)成熟,,而且在國內(nèi)市場上,,選擇的余地也不大,一般是本著經(jīng)濟(jì)的原則,,夠用就好,。
選擇相機(jī)時,我的建議是,,如果可能,,就用USB接口或1394接口的相機(jī),這樣可以省掉1個板卡的費(fèi)用,,以后硬件或軟件升級時工作量會小一些,。對于高端的應(yīng)用,除了CameraLink,,似乎別無選擇,。最新開發(fā)的GigE接口相機(jī),由于TCP/IP協(xié)議Packet傳輸?shù)奶匦?,在某些場合是不能保證數(shù)據(jù)的實(shí)時性的,,但其最大的優(yōu)點(diǎn)是,數(shù)據(jù)線距離可以很長,,主機(jī)可以安裝在辦公室內(nèi),,這樣現(xiàn)場就只需要適當(dāng)?shù)匕惭b和保護(hù)相機(jī)和鏡頭。鏡頭的可選擇性更少,,除了Computar,,Nikon,Tamron,,Navitar及Moritex幾個制造商外,,市場上也沒有多少選擇空間,,當(dāng)然大多數(shù)情況下,也就夠用了,。如果需要更好的成像效果,,可以采用單反相機(jī)鏡頭,這樣做一般需要轉(zhuǎn)接口,。Fujinon在廈門有生產(chǎn),,可是國內(nèi)市場上未見銷售。德國CarlZeiss鏡頭很好,,可惜價格太貴,,不太適合中國市場。
B.4計算機(jī)系統(tǒng)
機(jī)器視覺系統(tǒng)的最佳配置,,是使用工控機(jī)還是使用嵌入式系統(tǒng)?在這個問題上,,見仁見智,各有優(yōu)缺點(diǎn),,主要還是看使用的場合和系統(tǒng)的需求,。2種系統(tǒng)的主要特點(diǎn)見下表:
通過這些對比可以看出,如果安裝空間允許,,選擇基于工控機(jī)的視覺系統(tǒng)還是有更多的優(yōu)點(diǎn)的,。但是,如果現(xiàn)場必須使用體積很小的嵌入式系統(tǒng),,那么我們別無選擇,。各公司的成熟產(chǎn)品一般都采用了嵌入式主機(jī),例~HKeyence,,0mron,,Siemens,Cognex等,。這更多的是由于商業(yè)銷售的考慮,,因?yàn)檫@樣做可以保證自己產(chǎn)品的獨(dú)特性,給差異化銷售找到借口,;另一方面可以使用戶自己不能更換零件,,從而保證售后服務(wù)的利潤。
B.5圖像處理
圖像處理作為機(jī)器視覺系統(tǒng)必不可少的部分,,顯得如此重要,,以至于很多情況下,初學(xué)乍到的人會以為圖像處理就是機(jī)器視覺,。其實(shí),我們所說的圖像處理實(shí)際包含了圖像增強(qiáng)和圖像分析2個部分,。圖像增強(qiáng)是指經(jīng)過某種處理,,使圖像改變,,實(shí)現(xiàn)對比度提高、清晰度增加,、特征突出等目的,;而圖像分析是指經(jīng)過某種運(yùn)算,來提取某種有用的信息,,如有無,、好壞、位置等,,以便用來進(jìn)行判斷或控制,。例如,如何使模糊的圖像恢復(fù)到清晰,,是典型的圖像增強(qiáng)處理,,只要得到清晰的圖像就達(dá)到了目的;在繁忙的機(jī)場抓拍過往旅客的面孔,,找到可疑恐怖分子,,則是典型的圖像分析過程。
經(jīng)過多年的發(fā)展,,圖像增強(qiáng)算法已經(jīng)基本成熟,,例如提高對比度的灰度拉伸、假彩色,、邊緣提取,、濾波、傅立葉變換,、小波變換等,。在機(jī)器視覺系統(tǒng)集成時,這些一般都是在圖像分析前作為圖像預(yù)處理進(jìn)行的,,而圖像分析算法才是機(jī)器視覺真正需要解決的問題,。
通過針對某個真實(shí)場景的圖像,設(shè)計1種算法,,來得到有用的信息,,完全依賴于技術(shù)人員的經(jīng)驗(yàn)和能力。在這個過程中,,公司投入了大量時間和金錢來進(jìn)行研究,,而得到的算法往往具有經(jīng)濟(jì)價值,公司或個人都會嚴(yán)格保密,。例如,,如果機(jī)場候機(jī)廳里只有1個乘客,那么設(shè)計個算法來找到這個乘客的位置,是相對容易的,,很多公司或個人都可以實(shí)現(xiàn),,而且使用的方法或者計算時間也差不多,而要在成千上萬的游客中,,找到具有某個特定特征的乘客,,就不是那么容易了,各人設(shè)計出的算法肯定千差萬別,,誰能夠在最短時間內(nèi)最可靠地找到目標(biāo),,就是最有價值的。這種情況下,,除了經(jīng)驗(yàn)之外,,靈感和創(chuàng)造能力也很重要。也就是說,,作為系統(tǒng)集成所需要的圖像處理算法,,需要很多的實(shí)踐經(jīng)驗(yàn),而這些算法大多不是能夠從書本或文章里學(xué)到的,。
B.6 自動控制
作為1個子系統(tǒng)完美配合工作中的機(jī)器視覺系統(tǒng),,自然會用到光電傳感器、數(shù)字IO接口,、PLC,、運(yùn)動控制等工業(yè)控制元器件,這些方面的知識也是必不可少的,。雖然如此,,這些都是成熟的技術(shù),有基本的知識直接拿來使用就可以了,,不需要我們重新設(shè)計,,而且零件供應(yīng)商也會提供一定的技術(shù)支持。一般在整個系統(tǒng)的開發(fā)過程中,,這方面花費(fèi)的時間和精力是最少的,。
C、系統(tǒng)集成
明確了我們的需求,,估計了我們需要配置的資源,,理解了各子系統(tǒng)需要完成的工作,就到了把這些知識綜合考慮組成1個整機(jī)系統(tǒng)的時候了,。把這些不同領(lǐng)域里得到的零部件組合在一起,,希冀打開電源時就能夠完美的工作,是不太現(xiàn)實(shí)的,。這個過程里有很多意想不到的問題需要解決,。一般情況下,,我們需要遵循一定的原則,才能使出現(xiàn)的問題最少,。這里根據(jù)我們的經(jīng)驗(yàn)給出一些建議,。
1,、盡量使用能夠采購的零件(off—the—shelfcomponents):在可能的情況下,,應(yīng)當(dāng)盡可能使用現(xiàn)成的備件,如鏡頭,、相機(jī),、板卡等,能夠買到的東西就不要自己做,。我已經(jīng)多次看到不同的公司和研究室為了節(jié)省成本,,自己設(shè)計制造很容易買到的零件,結(jié)果浪費(fèi)了很多時間,,走了很多彎路,。例如,有1個公司咨詢?yōu)槭裁闯上裥Ч缓?,我去現(xiàn)場一看,,他們使用了1個直徑20毫米的凸透鏡作為鏡頭,為了節(jié)省成本,,15元人民幣買來的,,可想而知成像效果如何,豈不知連SONY 也不得不向CarlZeiss采購鏡頭,!
2,、分而治之(divide and conquer):把系統(tǒng)分割成多個模塊,把每1部分集成到一起,,確保能夠正確地工作,,然后再把這些模塊組成1個大系統(tǒng)。這和軟件開發(fā)常用的方法是一樣的,,只有把1個大的系統(tǒng)分割成小到我們能夠很容易處理的小塊,,才能夠有效的完成。這也需要富有經(jīng)驗(yàn)的項目負(fù)責(zé)人來完成這項工作,。
3,、充分考慮現(xiàn)場條件:在實(shí)驗(yàn)室里開發(fā)的系統(tǒng),安裝到使用現(xiàn)場后常常碰到問題,。這主要是環(huán)境光,、電磁干擾和振動幾個方面的原因造成的。機(jī)器視覺系統(tǒng)畢竟使用了光學(xué)系統(tǒng),,安裝現(xiàn)場的照明情況或自然光的影響,,有時會導(dǎo)致我們設(shè)計的算法根本無法工作,從而致使系統(tǒng)失敗,;工廠的供電一般是帶有各種電磁干擾的,,很容易從電源線或其他地方進(jìn)入計算機(jī)系統(tǒng),從而導(dǎo)致系統(tǒng)不能穩(wěn)定工作,。如果系統(tǒng)時而工作正常,,時而死機(jī),一般都是這個原因造成的,。另外,,工業(yè)現(xiàn)場各種機(jī)器同時工作,有時振動會導(dǎo)致問題,。例如,,如果算法采用兩幅圖像相減的方法,肯定不能正常工作,,因?yàn)檎駝訉?dǎo)致的圖像移位,,使得圖像已經(jīng)對不準(zhǔn)了。這種情況下,,尺寸測量也會產(chǎn)生誤差,。所以,系統(tǒng)集成的過程中,,最好能夠模擬現(xiàn)場情況,,否則很難1次成功。
4,、把困難乘2:在新產(chǎn)品開發(fā)過程中,,往往會遇到意想不到的問題。例如,,有時候1根電線接觸不良就會導(dǎo)致整個系統(tǒng)不工作,,而查找這個問題并不是1件容易的事;有時軟件有小小的問題,,改成正確的代碼只需要幾分鐘,,但是也許2個星期也找不到問題所在。所以,,整個系統(tǒng)集成時,,碰到的問題和解決問題需要的時間往往比預(yù)計的要多。越是復(fù)雜龐大的系統(tǒng),,越是如此,。一般我們需要把已知需要解決的問題總數(shù)乘以2或3,才能真正地做出切合實(shí)際的工作計劃,。