基于SOPC技術(shù)的PET瓶缺陷檢測系統設計
在各模塊中主要介紹以下幾個(gè)模塊:
(1)圖像采集模塊。圖像采集采用的是TRDB-DC2模塊。該模塊由1片高像素的CMOS圖像傳感芯片和1個(gè)聚焦鏡頭組成。圖像采集通過(guò)CMOS Sen-sor采集圖像后,再由I2C總線(xiàn)對圖像傳感器進(jìn)行配置,然后再根據圖像傳感器的時(shí)序特性來(lái)讀取采集到的圖像點(diǎn)陣。由于采集到的圖像點(diǎn)陣是: Bayer色彩空間,因而還要由相應的算法將其轉換為RGB色彩空間,再把圖像點(diǎn)陣數據存入SDRAM,而VGA顯示部分則從SDRAM中讀取數據來(lái)顯示。SDRAM控制器采用雙口SDRAM控制方法。圖像處理部分也可以從SDRAM中讀取數據來(lái)處理。其硬件模塊如圖4所示。
(2)圖像預處理模塊。從SDRAM中讀取數據,采用硬件語(yǔ)言對圖像預處理實(shí)現圖像的灰度變化、閾值分割和二值化處理。其硬件模塊圖如圖5所示。
(3)VGA硬件模塊。VGA控制器外接一個(gè)存儲器,以保存當前顯示的數據??刂破鞲鶕煌瑫r(shí)刻在VGA上顯示的像素位置,計算出存儲器中當前數據存放的地址,并輸出存儲器地址(oAddress信號)。外接存儲器控制器從該地址中讀取數據,返回給VGA控制器(iRed,iGreen,iBlue)。 VGA控制器將顯示數據輸出到D/A轉換器上。依據其水平與垂直時(shí)序設計的VGA控制器如圖6所示。通過(guò)VGA controller器件,可以實(shí)時(shí)將圖像直接顯示在VGA上。
2 系統軟件實(shí)現
2.1 軟件總體設計
系統配置完成后,攝像頭獲取圖像,送人SDRAM存儲器,每幀圖像經(jīng)轉換生成圖像數據進(jìn)入預處理模塊進(jìn)行灰度變化、閾值分割、二值化和邊緣跟蹤,使用硬件語(yǔ)言進(jìn)行處理和結合NIOSⅡ處理器進(jìn)行圖像的先后續處理和控制,處理后的圖像經(jīng)數模轉換在監視器上實(shí)時(shí)顯示。系統軟件總流程圖如圖7所示。
2.2 圖像后處理算法的設計
2.2.1 NIOS中使用C++實(shí)現圖像檢測判斷準則
(1)求取瓶蓋上邊緣到基準線(xiàn)的最大距離,先與標準瓶蓋的上邊緣到基準線(xiàn)的標準距離比較,判斷瓶蓋旋封是否合格,大于標準距離,認為瓶子不合格,剔除瓶子。
(2)通過(guò)左邊緣直線(xiàn)、右邊緣直線(xiàn)分別和基準線(xiàn)、上邊緣的直線(xiàn)之間的夾角來(lái)判斷瓶蓋旋封是否合格,如果4個(gè)夾角都在(90°-δ)內(δ為一個(gè)允許的誤差,取一個(gè)很小的角度),認為瓶子合格,否則瓶子不合格,剔除。
2.2.2 設計步驟
(1)采集經(jīng)過(guò)適當預處理的圖像數據后,首先找出瓶蓋和瓶身的分割線(xiàn),該分割線(xiàn)位于瓶頸區域,通過(guò)分割線(xiàn),確定瓶蓋所在區域,縮小了后面圖像的識別范圍,如圖8所示。
c++相關(guān)文章:c++教程
評論