在空間受限的工業(yè)過程監(jiān)控中,使用與基于PC的機(jī)器視覺系統(tǒng)連接的大量相機(jī),并不是一種可行性方案。在這種情況下,使用包含了相機(jī)和PC功能的智能相機(jī),能為系統(tǒng)集成商提供局部通過/失敗判定、I/O零件剔除和聯(lián)網(wǎng)的管理能力等選項(xiàng),同時(shí)還能減少系統(tǒng)所占用的空間。 在過去的十年中,機(jī)器視覺應(yīng)用領(lǐng)域?qū)χ悄芟鄼C(jī)的需求穩(wěn)步增長。然而,正如澳大利亞國家信息通信技術(shù)研究院(NICTA)的Yu Shi在《Smart Cameras: A Review》一文中所指出的,智能相機(jī)將會(huì)越來越多地部署到醫(yī)療、娛樂和教育等領(lǐng)域。 在這些領(lǐng)域,每種應(yīng)用都需要不同類型的智能相機(jī)。雖然大批量生產(chǎn)的安全相機(jī)可能需要低成本的成像器、處理器、存儲(chǔ)器和無線接口,但是為工業(yè)機(jī)器視覺應(yīng)用開發(fā)的相機(jī)還需要額外的功能。對(duì)于那些希望為工業(yè)應(yīng)用部署智能相機(jī)的用戶而言,市場上存在一系列智能相機(jī)產(chǎn)品可供選擇,這些產(chǎn)品中包含不同類型的圖像傳感器、CPU、DSP、FPGA、I/O、軟件以及內(nèi)部和外部照明功能。 多處理器架構(gòu)在提供機(jī)器視覺應(yīng)用所需的圖像處理吞吐量方面非常有用,因?yàn)檫@種架構(gòu)可以在不同處理器之間分配視覺任務(wù)。例如,F(xiàn)PGA能最有效地執(zhí)行諸如直方圖均衡和圖像過濾等處理任務(wù);而對(duì)于統(tǒng)計(jì)模式識(shí)別這樣的任務(wù),則最好交給通用CPU來執(zhí)行。通過在多個(gè)處理器之間分配這些任務(wù),可以有效地執(zhí)行圖像處理任務(wù),從而減少延遲和處理時(shí)間。 每家智能相機(jī)供應(yīng)商都采用了自己特定的計(jì)算架構(gòu),它們之間的差異會(huì)對(duì)系統(tǒng)性能產(chǎn)生很大的影響。瑞典中部大學(xué)的Abdul Waheed Malik在他的論文《用于實(shí)時(shí)機(jī)器視覺系統(tǒng)的三種智能相機(jī)架構(gòu)的比較》(Comparison of Three Smart CameraArchitectures for Real-Time Machine Vision System)一文中表示,基于軟件的商用智能相機(jī)可能會(huì)比其他類型的設(shè)計(jì)展現(xiàn)出更高的延遲,并消耗更多的功率,但是它們可以獲益于更輕松的軟件編程。 在這種智能相機(jī)設(shè)計(jì)中,F(xiàn)PGA可以執(zhí)行低級(jí)圖像處理功能,例如在CPU、DSP或GPU處理圖像之前的缺陷像素校正、伽馬校正或拜耳插值。通過將這些任務(wù)卸載到FPGA上,相機(jī)中的處理器可以更好地執(zhí)行更高級(jí)別的圖像處理任務(wù)。 正如智能相機(jī)的架構(gòu)非常重要一樣,智能相機(jī)的易用性或可編程性、用以按照需要的速度執(zhí)行特定的任務(wù),對(duì)于系統(tǒng)集成商而言也非常關(guān)鍵。雖然智能相機(jī)可以使用各種不同類型的圖像傳感器、I/O和照明配置,但是供應(yīng)商通常提供用于執(zhí)行某種特定成像任務(wù)(如條形碼讀取)的智能相機(jī)產(chǎn)品。這些特定功能通常已經(jīng)定制到相機(jī)的板載FPGA和CPU上,相機(jī)已經(jīng)不能配置為執(zhí)行其他任務(wù)。 然而,許多系統(tǒng)集成商需要能夠執(zhí)行多個(gè)圖像處理操作的智能相機(jī),例如圖像增強(qiáng)、特征位置、對(duì)象測量、存在/不存在檢測或其他機(jī)器視覺任務(wù)。在這種情況下,開發(fā)人員將面臨多種選擇。為了滿足這些需求,許多智能相機(jī)供應(yīng)商提供具有自身軟件和圖形用戶界面(GUI)開發(fā)系統(tǒng)的智能相機(jī)產(chǎn)品。雖然使用這種相機(jī)可能僅限于使用供應(yīng)商自己的軟件,但是供應(yīng)商對(duì)智能相機(jī)及其使用的視覺軟件都有深入的了解,這一點(diǎn)對(duì)系統(tǒng)開發(fā)人員也是一種支持保證。 一些供應(yīng)商(特別是那些已經(jīng)在機(jī)器視覺軟件開發(fā)方面比較成熟的廠商)已經(jīng)認(rèn)識(shí)到,在設(shè)計(jì)上與他們的產(chǎn)品相似的第三方智能相機(jī)的出現(xiàn)。很多供應(yīng)商并沒有忽略這個(gè)機(jī)會(huì),而是允許其他智能相機(jī)供應(yīng)商將他們的軟件集成到各種智能相機(jī)產(chǎn)品中。然而,雖然第三方相機(jī)供應(yīng)商也可以提供智能相機(jī)產(chǎn)品,但是他們提供的支持,相比于智能相機(jī)系統(tǒng)和機(jī)器視覺軟件供應(yīng)商可能更為有限。通過這種發(fā)展,復(fù)雜的系統(tǒng)集成商可以使用現(xiàn)成的軟件包和第三方相機(jī),為他們的機(jī)器視覺任務(wù)開發(fā)最有效和最高效的解決方案。 條形碼讀取 今天,許多公司都專門針對(duì)條形碼讀取應(yīng)用提供智能相機(jī)(通常被稱為智能圖像傳感器),如康耐視的DataMan和MX讀碼器、Datalogic的Matrix系列、基恩士的SR系列、邁思肯的MicroHAWK讀碼器、SICK的Lector系列,以及TeledyneDALSA的BOA Spot ID產(chǎn)品。 雖然這些公司各自都使用了專門針對(duì)條形碼讀取的成像器和處理器,但是許多公司已經(jīng)意識(shí)到,必須將讀取或驗(yàn)證條形碼數(shù)據(jù)的完整性,與實(shí)時(shí)監(jiān)控系統(tǒng)和軟件一起部署。通過實(shí)施這樣的聯(lián)網(wǎng)系統(tǒng),工廠經(jīng)理可以識(shí)別和分類任何讀取或驗(yàn)證錯(cuò)誤,并且將錯(cuò)誤原因呈現(xiàn)為可視化數(shù)據(jù),例如錯(cuò)誤的條形碼打印機(jī),從而增加正確讀取代碼的概率,提高生產(chǎn)線上的機(jī)器效率,減少浪費(fèi)。 市場上存在一些這種實(shí)時(shí)監(jiān)控系統(tǒng)的樣例,例如SICK的軟件包分析軟件、基恩士的WebSentinel PLUS和康耐視的Cognex Explorer實(shí)時(shí)監(jiān)控(RTM)系統(tǒng)(見圖1)。通過解讀這些圖像數(shù)據(jù),而不僅僅是讀取或驗(yàn)證,可以使管理者獲得有關(guān)讀碼器性能和工業(yè)網(wǎng)絡(luò)上其他外設(shè)狀態(tài)的寶貴數(shù)據(jù)。 圖1:Cognex Explorer實(shí)時(shí)監(jiān)控(RTM)系統(tǒng),可以從基于圖像的讀碼器中解讀圖像數(shù)據(jù),為運(yùn)營經(jīng)理提供有關(guān)讀碼器性能和工業(yè)網(wǎng)絡(luò)上其他外設(shè)狀態(tài)的寶貴數(shù)據(jù)。 專有解決方案 雖然許多智能相機(jī)在設(shè)計(jì)上都較為相似,但是制造商已經(jīng)認(rèn)識(shí)到,要讓這些智能相機(jī)產(chǎn)品實(shí)現(xiàn)增值,是通過它們可以執(zhí)行的機(jī)器視覺任務(wù)來實(shí)現(xiàn)的。將這樣的軟件定制到特定的設(shè)備中,使得供應(yīng)商能夠更緊密地控制其產(chǎn)品和他們的客戶需要執(zhí)行的任務(wù)?;魇亢蜌W姆龍都提供具有自身專有軟件的智能相機(jī),用于執(zhí)行特定的成像任務(wù)。例如,基恩士的Vision Sensor IV系列可以執(zhí)行邊緣存在、輪廓和色差測量等功能;歐姆龍的FQ2系列和Shape Search III工具,可以搜索和匹配登記的圖案。這在識(shí)別特定顏色和尺寸的標(biāo)簽、以及同時(shí)測量標(biāo)簽的面積或中心位置的應(yīng)用中,特別有用。 提供專有的硬件/軟件解決方案的不僅僅是日本供應(yīng)商。例如,Datalogic公司的Impact軟件支持其P系列、A系列和T系列智能相機(jī),為開發(fā)人員提供超過100種檢測工具和用戶界面控件,用于創(chuàng)建機(jī)器視覺檢測程序(見圖2)。BannerEngineering提供Vision Manager軟件支持其VE系列智能相機(jī),用于目標(biāo)檢測、零件定位、特征測量和缺陷分析等任務(wù)。印度Soliton Technologies公司為其基于DSP的智能相機(jī)Neo,開發(fā)了SolitonVision Library(SVL)軟件。希望定制相機(jī)的OEM也可以使用德州儀器的Code Composer Studio開發(fā)自己的算法。 圖2:Datalogic的Impact軟件支持其P系列、A系列和T系列智能相機(jī),該軟件為開發(fā)人員提供超過100種檢測工具和用戶界面控件,用于創(chuàng)建機(jī)器視覺檢測程序。 軟件是關(guān)鍵 正如基恩士和歐姆龍這樣的公司提供只能配置自身相機(jī)的專有軟件一樣,一些成熟的軟件供應(yīng)商也提供他們自己的智能相機(jī)產(chǎn)品。其中,康耐視、Teledyne DALSA、MatroxImaging、邁思肯和NI都提供與他們的機(jī)器視覺軟件一起使用的智能相機(jī)產(chǎn)品。 憑借在機(jī)器視覺軟件開發(fā)方面的悠久歷史,這些公司已經(jīng)認(rèn)識(shí)到,系統(tǒng)開發(fā)人員需要一種簡單的方法來編程他們的智能相機(jī)。為此,他們開發(fā)了簡化的用戶界面。這樣一來,系統(tǒng)開發(fā)人員不需要再進(jìn)行復(fù)雜的軟件開發(fā)任務(wù),進(jìn)而可以將主要精力專注于他們的檢測任務(wù)上。 在許多不同的配置中都提供這樣的開發(fā)工具,以便集成商可以使用易于理解的界面配置智能相機(jī)。這些界面,為編程智能相機(jī)提供了多種選擇。例如,對(duì)于In-Sight系列智能相機(jī)而言,康耐視的EasyBuilder軟件允許從菜單中選擇一系列功能,來實(shí)現(xiàn)模式圖像匹配、過濾、缺陷分析和OCR等任務(wù)。 類似地,Teledyne DALSA的iNspectExpress界面能夠指導(dǎo)開發(fā)人員設(shè)置視覺任務(wù),執(zhí)行諸如存在/不在檢測、零件對(duì)準(zhǔn)、測量和表面檢測等功能(見圖3)。該軟件在其BOA系列智能相機(jī)上運(yùn)行,還包括一個(gè)腳本功能,允許通過以太網(wǎng)或RS-232串行接口與第三方設(shè)備進(jìn)行通信。邁思肯提供AutoVISION 圖形用戶界面開發(fā)其MicroHAWK系列智能相機(jī),以便執(zhí)行條形碼讀取、零件定位、計(jì)數(shù)、存在/不存在檢測等任務(wù),該界面還可以通過邁思肯的VisionScape軟件進(jìn)行擴(kuò)展,用于更高級(jí)的應(yīng)用。 圖3:Teledyne DALSA的iNspect Express軟件運(yùn)行在其BOA系列智能相機(jī)上,用于指導(dǎo)開發(fā)人員設(shè)置視覺任務(wù),執(zhí)行諸如存在/不在檢測、零件對(duì)準(zhǔn)、測量和表面檢測等任務(wù)。提供超過20種可用工具,本應(yīng)用中顯示了半導(dǎo)體封裝的引腳計(jì)數(shù)和距離測量(中心)。 Matrox公司提供一種流程圖方法來編程其Iris GTR智能相機(jī)。使用公司的Matrox Imaging Library(MIL)構(gòu)建的MatroxDesign Assistant,是一個(gè)集成的開發(fā)環(huán)境(IDE),允許開發(fā)人員在不需要常規(guī)編程的情況下構(gòu)建應(yīng)用程序。該IDE還支持為特定應(yīng)用開發(fā)圖形操作界面。 第三方解決方案 許多專有的智能相機(jī)專用于諸如條形碼讀取等任務(wù),而可編程智能相機(jī)則允許執(zhí)行多個(gè)機(jī)器視覺任務(wù)。系統(tǒng)集成商可以選擇第三方相機(jī),而不從智能相機(jī)和軟件供應(yīng)商那里選取。由于很多智能相機(jī)都是基于Intel或AMD處理器的,所以開發(fā)人員可以利用這兩家公司開發(fā)的軟件,或是采用其他基于PC的機(jī)器視覺軟件供應(yīng)商的軟件。 例如,凌華科技的NEON-1021智能相機(jī)采用Intel凌動(dòng)處理器,支持多種軟件包,包括MVTec公司的MERLIC和HALCON、StemmerImaging的Common Vision Blox、康耐視的VisionPro、Matrox的MIL以及TeledyneDALSA的Sherlock。 許多智能相機(jī)供應(yīng)商也支持第三方機(jī)器視覺軟件包,如Adaptive Vision的Graphical Adaptive Vision Studio 4.8軟件包。Adaptive Vision的軟件使用基于數(shù)據(jù)流的軟件界面,可以為相機(jī)校準(zhǔn)、條形碼讀取、一維和二維測量以及模板匹配等任務(wù)進(jìn)行編程(見圖4)。 圖4:Graphical Adaptive Vision Studio 4.8軟件使用基于數(shù)據(jù)流的軟件界面,可在智能相機(jī)上運(yùn)行,用于相機(jī)校準(zhǔn)、條形碼讀取、一維和二維測量以及模板匹配。 在Adaptive Vision Studio環(huán)境下創(chuàng)建的程序,可以在凌華科技的NEON、New Electronic Technology的Corsight、上海銳勢的Woodpecker1、以及XIMEA的xPlatform等智能相機(jī)上運(yùn)行。目前,XIMEA與英特爾NUC的版本保持了對(duì)四個(gè)庫的支持——National Instruments的LabVIEW、MathWorks的MATLAB、MVTec的HALCON,以及開源計(jì)算機(jī)視覺庫(OpenCV),同時(shí)也為許多其他軟件包提供有限的支持。 希望在生產(chǎn)設(shè)備中部署智能相機(jī)的系統(tǒng)開發(fā)人員,有許多不同的選擇:選擇專用的固定功能的設(shè)備、從成熟的硬件和軟件供應(yīng)商那里選擇可編程的智能相機(jī),或是選擇第三方的基于PC的相機(jī)。也許比性價(jià)比更重要的是,每個(gè)制造商提供的軟件的功能性和支持水平。 文/Andy Wilson (原文在英文版2017-9月刊) |
|