樊 桃, 張 飛, 王曉峰, 劉海斌
(1.中國鐵建電氣化局集團(tuán)有限公司, 北京 100043; 2.常州數(shù)控技術(shù)研究所, 江蘇 常州 213164)
隨著人們生活水平的不斷提高, 人們對包裝產(chǎn)品的需求從以前的實用性轉(zhuǎn)而更加注重它的美觀性, 藝術(shù)性和收藏價值, 高檔精美的包裝產(chǎn)品取代了以前的簡單色彩類的包裝產(chǎn)品。燙金(亦稱燙?。杭y作為印后整飾中的重要工藝,將燙金和壓紋結(jié)合起來對包裝產(chǎn)品起著獨(dú)特的裝飾作用,經(jīng)壓紋后的包裝裝飾材料表面呈現(xiàn)出深淺不同的圖案和紋理,具有明顯的浮雕立體感,增強(qiáng)了承壓材料的藝術(shù)感染力,深受人們的關(guān)注和偏愛[1]。 從近年來得市場份額看, 使用壓紋工藝的精裝盒占據(jù)整個精裝盒包裝市場的比例逐年增加。
精裝盒燙金圖案壓紋的質(zhì)量和精確美觀至關(guān)重要,傳統(tǒng)的精裝盒燙金圖案壓紋工序為人工操作, 這種方法借助人眼判斷決定燙金圖案是否擺放正確, 其壓紋效果完全由人主觀判斷決定,具有較大的隨機(jī)性和誤差,操作工人的生理因素、心理因素、視覺疲勞、環(huán)境因素等等都能影響最終的壓紋效果, 無法保證整批產(chǎn)品質(zhì)量的穩(wěn)定性和可靠性[2]。 因此,本論文提出了一種基于Opencv 的精裝盒燙金圖案識別與定位系統(tǒng),將視覺識別應(yīng)用到精裝盒燙金圖案壓紋工序中,來確保精裝盒燙金圖案壓紋質(zhì)量的穩(wěn)定性、可靠性和高精度,實現(xiàn)產(chǎn)品的高效高質(zhì)量生產(chǎn)。
系統(tǒng)在精裝盒燙金圖案壓紋生產(chǎn)線上的工作流程為:當(dāng)精裝盒到達(dá)指定位置后相機(jī)進(jìn)行拍照采集圖片,然后識別圖片中精裝盒燙金圖案的位置數(shù)據(jù), 其次依據(jù)燙金圖案的位置數(shù)據(jù)計算其定位數(shù)據(jù), 最后將定位數(shù)據(jù)發(fā)送給機(jī)器人系統(tǒng), 機(jī)器人根據(jù)得到的數(shù)據(jù)抓取精裝盒放到指定的位置進(jìn)行壓紋。
精裝盒燙金圖案檢測系統(tǒng)硬件主要包括工控機(jī)、光源、工業(yè)相機(jī)和觸發(fā)裝置。 其中光源和CCD 工業(yè)相機(jī)的選型為該系統(tǒng)的重點(diǎn)。 由于精裝盒燙金圖案具有亮度值高和高反光的特性, 光源照射到燙金圖案上產(chǎn)生圖案局部高亮、邊緣模糊不清等現(xiàn)象,不利于圖案采集和圖案識別。本文通過各種顏色光源實驗對比后采用藍(lán)色條形光為照明光源,從精裝盒側(cè)面進(jìn)行照明,有效避免了圖案局部高亮、邊緣模糊不清等情況。 該系統(tǒng)要求燙金圖案最終定位精度在0.1mm 以內(nèi),識別范圍最大為420mm×350mm,依據(jù)此需求和各項其他因素考慮,我們選擇了大恒圖像1000w像素的水星系列數(shù)字相機(jī),型號為MER-1070-10GM-P。 使用相機(jī)外觸發(fā)方式采集圖像, 并通過千兆以太網(wǎng)將圖形數(shù)據(jù)傳輸給系統(tǒng),保證圖像采集的實時性和高效。
OpenCV 是一個基于BSD 許可(開源)發(fā)行的跨平臺計算機(jī)視覺庫,提供了豐富的圖像處理函數(shù)[3]。 系統(tǒng)設(shè)計中使用Opencv 視覺庫設(shè)計燙金圖案識別算法、 標(biāo)定算法、模板提取算法、輪廓匹配算法等,并將這些算法代碼封裝成動態(tài)鏈接庫供系統(tǒng)調(diào)用。 系統(tǒng)軟件界面在VS2010開發(fā)平臺上使用C# 語言進(jìn)行設(shè)計開發(fā)。系統(tǒng)按功能模塊劃分進(jìn)行設(shè)計,其包括人機(jī)交互模塊、參數(shù)設(shè)置模塊、相機(jī)標(biāo)定模塊、相機(jī)拍照模塊、圖案模板編輯模塊、燙金圖案識別模塊、定位計算模塊、與機(jī)器人系統(tǒng)交互模塊、信息存儲模塊等。 系統(tǒng)體系結(jié)構(gòu)示意圖如圖1 所示。
圖1 系統(tǒng)體系結(jié)構(gòu)框圖Fig.1 System architecture diagram
由于不同批次的精裝盒上的燙金圖案各不相同,本文采用圖案匹配的方式來實現(xiàn)燙金圖案識別。目前關(guān)于圖像匹配的研究和應(yīng)用比較多,圖像匹配算法按照處理方式不同主要有灰度相關(guān)算法、 變換域信息算法和圖像特征相關(guān)算法三種方式[4]。
SURF 算法是由Herbert Bay 等在2006 年首次提出的一種穩(wěn)健的局部特征點(diǎn)檢測和描述算法。該算法是Sift算法的加速版本, 改進(jìn)了Sift 算法的特征的提取和描述方式,用一種更為高效的方式完成特征的提取和描述。對物體的旋轉(zhuǎn)、光照等情況有較好的魯棒性[5]。SURF 算法的實現(xiàn)流程如下:
(1)構(gòu)建Hessian 矩陣(黑塞矩陣),構(gòu)造高斯金字塔尺度空間。
(2)利用非極大值抑制初步確定特征點(diǎn)。
(3)精確定位極值點(diǎn)。
(4)選取特征點(diǎn)主方向。
(5)構(gòu)造SURF 特征點(diǎn)描述算子。
(6)進(jìn)行特征點(diǎn)匹配。
SURF 算法在求主方向階段過于依賴局部區(qū)域像素的梯度方向, 即便不大偏差角度也可以造成后面特征匹配的誤差放大,從而使匹配不成功。
本文針對這種問題提出了一種改進(jìn)的SURF 匹配算法[6-8],提高了匹配的成功率。 其改進(jìn)方法為在進(jìn)行SURF算法前,加入圖像濾波處理和邊緣檢測兩項預(yù)處理。
在應(yīng)用于燙金圖案識別時, 由于精裝盒在拍照時兩邊有檔條定位,位置變化小,故精裝盒上燙金圖案的位置變化也小。 本文在進(jìn)行圖案匹配時只需要對設(shè)定的ROI 區(qū)域進(jìn)行圖像識別,這樣縮短了計算時間,提高了實時性。 具體實現(xiàn)方法如圖2 所示。
圖2 改進(jìn)的SURF算法流程圖Fig.2 Improved SURF algorithm flowchart
在匹配算法程序測試中, 我們的軟件開發(fā)工具為VS2010,使用的視覺庫為Opencv2.9。將精裝盒移動不同位置后進(jìn)行拍照,得要實驗圖片。本次實驗中使用的精裝盒如圖3 所示, 需要匹配的燙金圖案為橢圓中的圖案。
算法實現(xiàn)中, 首先加載模板圖片和目標(biāo)圖片,然后按照圖2流程進(jìn)行程序?qū)崿F(xiàn)。 算法的部分代碼如下所示:
圖3 測試精裝盒Fig.3 Hardcover box for test
最后本文將模板圖片與目標(biāo)圖片的匹配點(diǎn)用線連接在一起,實驗結(jié)果如圖4,圖5 所示。 圖4 為本文選擇的模板圖片原圖匹配效果,圖5 為將精裝盒旋轉(zhuǎn)90°后,燙金圖案的匹配效果。
圖4 燙金圖案原圖匹配效果Fig.4 Matching effect of the original bronzing pattern
圖5 燙金圖案旋轉(zhuǎn)90°效果Fig.5 Matching effect of bronzing pattern rotated 90°
在精裝盒燙金圖案壓紋生產(chǎn)線上,使用的機(jī)器人是水平多關(guān)節(jié)機(jī)器人,其上安裝的夾具為長條形夾具,夾具安裝方式為一端固定在機(jī)器人上下運(yùn)動的R 軸上。這種安裝方式下夾具的中心點(diǎn)不在機(jī)器人上下運(yùn)動的R 軸的中心點(diǎn)上,這種情況稱夾具為偏心夾具。 夾具如圖6 所示。
在生產(chǎn)工藝要求上, 機(jī)器人每次抓取精裝盒時根據(jù)燙金圖案位置調(diào)整機(jī)器人位置保證夾具與燙金圖案的位置關(guān)系始終一致。此時燙金圖案位置數(shù)據(jù)無法直接使用,需要處理計算為定位數(shù)據(jù)[9,10]。
燙金圖案定位數(shù)據(jù)為機(jī)器人移動到取盒位置時的偏差量數(shù)據(jù),其目的是保證機(jī)器人抓取精裝盒時, 每次抓取時其姿態(tài)位置與燙金圖案的位置關(guān)系始終保持一致。 機(jī)器人與燙金圖案的位置關(guān)系在燙金圖案模板設(shè)定時確定。機(jī)器人抓取精裝盒的水平面移動量和旋轉(zhuǎn)軸的旋轉(zhuǎn)角度值為機(jī)器人初始設(shè)置的位置數(shù)據(jù)與燙金圖案定位數(shù)據(jù)之和。 我們假定燙金圖案模板設(shè)定時燙金圖案坐標(biāo)值為p0(x0,y0,θ0),機(jī)器人抓取精裝盒時坐標(biāo)值為p1(x1,y1,θ1),當(dāng)前燙金圖案位置數(shù)據(jù)坐標(biāo)值為p2(x2,y2,θ2),則燙金圖案定位坐標(biāo)值為△p(△x,△y,△θ),以上數(shù)據(jù)中x,y 為機(jī)器人坐標(biāo)系下平面坐標(biāo)值,θ 為旋轉(zhuǎn)角度值。 則圖案定位坐標(biāo)的旋轉(zhuǎn)角度為:
圖6 精裝盒夾具Fig.6 Hardcover box fixture
在計算燙金圖案定位坐標(biāo)△p(△x,△y)時,我們假定機(jī)器人在p1點(diǎn)抓取燙金圖案模板旋轉(zhuǎn)△θ角度后, 得到的燙金圖案模板坐標(biāo)值p3(x3,y3,θ3)為:
根據(jù)此坐標(biāo)值, 最終得到燙金圖案定位坐標(biāo)值△p(△x,△y,△θ)為:
化簡公式(3)中的中間變量得:
在系統(tǒng)的實現(xiàn)中, 系統(tǒng)將燙金圖案識別的數(shù)據(jù)通過上述公式(4),計算為燙金圖案定位數(shù)據(jù),然后將其發(fā)送給機(jī)器人系統(tǒng)執(zhí)行。
本文基于Opencv 的精裝盒燙金圖案識別與定位系統(tǒng)應(yīng)用在精裝盒燙金圖案自動壓紋生產(chǎn)線上, 實現(xiàn)了燙金圖案識別、定位、缺損檢測等功能。 解決了人工操作燙金圖案壓紋精確度不高和質(zhì)量不穩(wěn)定的缺點(diǎn), 提高了燙金圖案壓紋精度和生產(chǎn)效率,為企業(yè)提高了經(jīng)濟(jì)效益。