從視覺軟件進入機器視覺行業,有必要全局認識一下機器視覺系統組成。
圖 1
典型的機器視覺系統可以分為:圖像采集部分、圖像處理部分和運動控制部分。基於PC的視覺系統具體由如圖1所示的幾部分組成:
①工業相機與工業鏡頭——這部分屬於成像器件,通常的視覺系統都是由一套或者多套這樣的成像系統組成,如果有多路相機,可能由圖像卡切換來獲取圖像數據,也可能由同步控制同時獲取多相機通道的數據。根據應用的需要相機可能是輸出標准的單色視頻(RS-170/CCIR)、復合信號(Y/C)、RGB信號,也可能是非標准的逐行掃描信號、線掃描信號、高分辨率信號等。
②光源——作為輔助成像器件,對成像質量的好壞往往能起到至關重要的作用,各種形狀的LED燈、高頻熒光燈、光纖鹵素燈等都容易得到。
③傳感器——通常以光纖開關、接近開關等的形式出現,用以判斷被測對象的位置和狀態,告知圖像傳感器進行正確的采集。
④圖像采集卡——通常以插入卡的形式安裝在PC中,圖像采集卡的主要工作是把相機輸出的圖像輸送給電腦主機。它將來自相機的模擬或數字信號轉換成一定格式的圖像數據流,同時它可以控制相機的一些參數,比如觸發信號,曝光/積分時間,快門速度等。圖像采集卡通常有不同的硬件結構以針對不同類型的相機,同時也有不同的總線形式,比如PCI、PCI64、Compact PCI,PC104,ISA等。
⑤PC平台——電腦是一個PC式視覺系統的核心,在這里完成圖像數據的處理和絕大部分的控制邏輯,對於檢測類型的應用,通常都需要較高頻率的CPU,這樣可以減少處理的時間。同時,為了減少工業現場電磁、振動、灰塵、溫度等的干擾,必須選擇工業級的電腦。
⑥視覺處理軟件——機器視覺軟件用來完成輸入的圖像數據的處理,然后通過一定的運算得出結果,這個輸出的結果可能是PASS/FAIL信號、坐標位置、字符串等。常見的機器視覺軟件以C/C++圖像庫,ActiveX控件,圖形式編程環境等形式出現,可以是專用功能的(比如僅僅用於LCD檢測,BGA檢測,模版對准等),也可以是通用目的的(包括定位、測量、條碼/字符識別、斑點檢測等)。
⑦控制單元(包含I/O、運動控制、電平轉化單元等)——一旦視覺軟件完成圖像分析(除非僅用於監控),緊接着需要和外部單元進行通信以完成對生產過程的控制。簡單的控制可以直接利用部分圖像采集卡自帶的I/O,相對復雜的邏輯/運動控制則必須依靠附加可編程邏輯控制單元/運動控制卡來實現必要的動作。
一個完整的機器視覺系統的主要工作過程如下:
1、工件定位檢測器探測到物體已經運動至接近攝像系統的視野中心,向圖像采集部分發送觸發脈沖。
2、圖像采集部分按照事先設定的程序和延時,分別向攝像機和照明系統發出啟動脈沖。
3、攝像機停止目前的掃描,重新開始新的一幀掃描,或者攝像機在啟動脈沖來到之前處於等待狀態,啟動脈沖到來后啟動一幀掃描。
4、攝像機開始新的一幀掃描之前打開曝光機構,曝光時間可以事先設定。
5、另一個啟動脈沖打開燈光照明,燈光的開啟時間應該與攝像機的曝光時間匹配。
6、攝像機曝光后,正式開始一幀圖像的掃描和輸出。
7、圖像采集部分接收模擬視頻信號通過A/D將其數字化,或者是直接接收攝像機數字化后的數字視頻數據。
8、圖像采集部分將數字圖像存放在處理器或計算機的內存中。
9、處理器對圖像進行處理、分析、識別,獲得測量結果或邏輯控制值。
10、處理結果控制流水線的動作、進行定位、糾正運動的誤差等。
來源於CSDN->小熊之家