引 言
我國是制鞋大國,為全球鞋業(yè)市場提供 60% 的鞋類產(chǎn)品。隨著“中國制造 2025”的推進(jìn),工業(yè)機(jī)械手在制鞋行業(yè)中得到廣泛運(yùn)用。噴膠在制鞋行業(yè)中是一道重要工序,很多制鞋企業(yè)在生產(chǎn)過程中運(yùn)用工業(yè)機(jī)械手進(jìn)行噴膠。目前,大部分鞋業(yè)制造商采用編程鞋模示教的方式驅(qū)動機(jī)械手操作 [1],該方式存在精度不高、靈活性差、生產(chǎn)效率低的問題。因?yàn)槊看问謩邮窘绦枰臅r(shí)間較長,鞋底種類繁多,所以示教的效率較低。另外,由于在實(shí)際生產(chǎn)過程中,鞋底擺放位置不一, 且編程示教容差相對較小,因而噴涂精度不高,從而導(dǎo)致制鞋企業(yè)生產(chǎn)效率低下。
隨著電子和物聯(lián)網(wǎng)技術(shù)的快速發(fā)展,計(jì)算機(jī)運(yùn)算速度突飛猛進(jìn),圖像處理已在工業(yè)中獲得廣泛運(yùn)用。與此同時(shí),工業(yè)機(jī)械手在制鞋行業(yè)中也已得到大力推廣與應(yīng)用。如何把兩者有效地結(jié)合,并尋找高效的解決方案,是該行業(yè)的一大熱點(diǎn)。本文設(shè)計(jì)一種基于機(jī)器圖像處理的鞋模噴膠系統(tǒng),該系統(tǒng)可靈活地驅(qū)動機(jī)械手噴膠,還可處理不同類型的鞋底,且具有容差大、精度高等特點(diǎn)。使用該系統(tǒng)可提高制鞋企業(yè)的生成效益,促使傳統(tǒng)制鞋企業(yè)逐漸向智能工廠轉(zhuǎn)型,從而提升我國制鞋行業(yè)的自動化水平。
1 系統(tǒng)總體設(shè)計(jì)
1.1 總體結(jié)構(gòu)
本文鞋模噴膠系統(tǒng)的硬件主要由兩臺工控機(jī)、一臺路由器及一個工業(yè)攝像頭組成。為控制成本,該機(jī)器 CPU 采用Intel 奔騰 J2900 芯片,主頻為 2.41 GHz,搭配 2 GB 內(nèi)存空間,硬盤采用 Sandisk/ 閃迪 MSATA3 SSD 16 GB。從整體上看,該機(jī)器具有較高性價(jià)比。路由器則使用適合穩(wěn)定傳輸較大圖像的水星 MW315R 300M 型號機(jī)器。另外,工業(yè)相機(jī)選取 GigE 網(wǎng)線傳輸圖像的 Basler acA2500-14gm 相機(jī)。各機(jī)器用途如下 :
(1) 工控機(jī) 1,用于搭載鞋底噴膠示教軟件 ;
(2) 工控機(jī) 2,用于運(yùn)行圖像處理組件,進(jìn)行圖像識別計(jì)算處理 ;
(3) 路由器,用于傳輸轉(zhuǎn)發(fā)數(shù)據(jù) ;
(4) 工業(yè)相機(jī),用于拍攝鞋模圖像 ;
(5) 機(jī)械手,用于噴膠。
另外,整套系統(tǒng)的軟件組件均部署在具有以太網(wǎng)功能的Ubuntu14.04 操作系統(tǒng)上。本文系統(tǒng)的軟件組件主要包含兩部分 :圖像處理組件,該組件需要安裝圖像識別庫 OpenCV 2.4.13,用于對鞋模圖像進(jìn)行識別計(jì)算處理,以提取鞋底輪廓 ;噴膠示教組件,該組件由圖形界面應(yīng)用程序開發(fā)框架 Qt 編程實(shí)現(xiàn),主要用于展示鞋模輪廓,指引機(jī)械手按照輪廓進(jìn)行噴膠處理。
基于機(jī)器視覺的鞋模噴膠系統(tǒng)總體結(jié)構(gòu)如圖 1 所示。
1.2 工作流程
針對本文設(shè)計(jì)的機(jī)器視覺鞋模噴膠系統(tǒng),在第一次運(yùn)行時(shí),用戶需將棋盤格置于工業(yè)攝像頭下方,用于相機(jī)標(biāo)定。后續(xù)運(yùn)行中,機(jī)器傳送帶上的硬件裝置不斷觸發(fā)攝像頭拍照, 并將所獲取的圖像傳送至圖像識別端。圖像識別端在獲得圖像后,通過算法提取鞋底輪廓,然后將其相機(jī)坐標(biāo)轉(zhuǎn)換成世界坐標(biāo),再通過 TCP/IP 協(xié)議將輪廓數(shù)據(jù)發(fā)送至噴膠示教器。示教器接收完數(shù)據(jù)后,在其界面上顯示鞋底輪廓,最后示教器按照鞋底輪廓指引機(jī)器手進(jìn)行噴膠處理。系統(tǒng)工作流程如圖 2 所示。
2 系統(tǒng)實(shí)現(xiàn)
2.1 相機(jī)標(biāo)定實(shí)現(xiàn)
相機(jī)標(biāo)定的目的是將圖像像素點(diǎn)的橫縱坐標(biāo)轉(zhuǎn)換成機(jī)器手可以識別的世界坐標(biāo) [2]。該功能由圖像處理組件與工業(yè)攝像頭協(xié)同完成。在攝像頭采集黑白分布明顯的棋盤格圖像并傳送至圖像處理組件后,由圖像處理組件中的算法獲取棋盤格圖像中的角點(diǎn)信息與世界坐標(biāo),再根據(jù)這些數(shù)據(jù)計(jì)算可得相機(jī)內(nèi)參系數(shù)、外參系數(shù)、圖像旋轉(zhuǎn)向量及圖像位移向量。通過圖像旋轉(zhuǎn)向量與圖像位移向量即可得到相機(jī)坐標(biāo)到世界坐標(biāo)的轉(zhuǎn)換參數(shù),從而實(shí)現(xiàn)坐標(biāo)轉(zhuǎn)換 [2]。
其中, 角點(diǎn)識別由圖像處理組件中的角點(diǎn)檢測算法(Harris Corner Detection)完成 [3]。該算法的主要流程是取某個像素的一個鄰域窗口迭代像素點(diǎn),觀察窗口內(nèi)平均像素灰度值的變化。已知在圖像的平坦區(qū)域,角點(diǎn)的所有方向沒有灰度變化 ;而在圖像邊緣區(qū)域,角點(diǎn)則在某個方向有明顯的灰度變化。當(dāng)窗口沿著邊緣區(qū)域迭代到角度邊緣,如發(fā)現(xiàn)窗口各方向的平均像素灰度值有明顯變化時(shí),即認(rèn)定該窗口所覆蓋的區(qū)域?yàn)閳D像上的角點(diǎn)。根據(jù)上述算法實(shí)際測試,可得到棋盤格的角點(diǎn)如圖 3 圓點(diǎn)所示。
然而,上述算法找到的角點(diǎn)只能達(dá)到像素級別,為了使標(biāo)定參數(shù)更加精確,本文采用擬合法進(jìn)一步提取亞像素角點(diǎn)信息 [4],通過擬合法將角點(diǎn)信息鎖定在像素點(diǎn)后兩位,實(shí)際測試獲取的精確角點(diǎn)像素信息如圖 4 所示。另外,角點(diǎn)世界坐標(biāo)由世界坐標(biāo)轉(zhuǎn)換算法按照棋盤格格子大小與數(shù)量產(chǎn)生的序列網(wǎng)狀坐標(biāo)點(diǎn)獲得 [5]。
2.2 圖像識別實(shí)現(xiàn)
為了使圖像的輪廓像素更易傳輸,本文采用點(diǎn)云數(shù)據(jù)處
理技術(shù)。同時(shí),為了減少干擾信息,本文系統(tǒng)將待處理的圖
像從彩色圖轉(zhuǎn)換成灰度圖。另外,為了使圖像更加圓滑且輪
廓清晰,本文系統(tǒng)采用均值濾波對圖像進(jìn)行模糊化處理,實(shí)
際測試處理后的圖像如圖 5 所示。
為進(jìn)一步提取圖像的關(guān)鍵內(nèi)容,本文采用二值法 [6]。該方法主要由選定的閾值來確定圖像黑白場,公式如下 :
式中:255 表示白場;0 表示黑場;val 與 dst 分別為轉(zhuǎn)換前后的灰度值;thresh 為選定的閾值。
圖像經(jīng)過二值化處理后,大致可提取鞋模輪廓,但仍有一些凹凸不平的花紋。為了消除這些干擾,本文系統(tǒng)采用漫水填充操作 [7]。具體做法為 :選取圖像中的背景點(diǎn),并找到其連通區(qū)域,對其進(jìn)行取反即可得到漫水填充圖,具體如圖 6 所示。
圖 6 處理過程的鞋模圖
將二值化處理后的鞋模圖取反再疊加漫水填充后的鞋模圖,并采用 Canny 算法即可檢測出鞋模輪廓 [8],結(jié)果如圖 7 所示。
圖 7 鞋模輪廓圖
獲取鞋模輪廓后,將其相機(jī)坐標(biāo)轉(zhuǎn)換成世界坐標(biāo),并通過網(wǎng)絡(luò)傳輸協(xié)議將輪廓數(shù)據(jù)發(fā)送至示教客戶端。
2.3 示教客戶端實(shí)現(xiàn)
示教器客戶端包含客戶端連接設(shè)置、確認(rèn)鞋模與示教機(jī)械手三大功能。
在連接設(shè)置中,用戶可設(shè)置目標(biāo)服務(wù)器(圖像處理組件) 的 IP與端口。該功能實(shí)現(xiàn)的主要原理是 Socket通信。首先, 服務(wù)器端先初始化 Socket,然后與端口綁定(Bind),并對端口進(jìn)行監(jiān)聽(Listen),再調(diào)用阻塞函數(shù) Accept,等待示教器連接。當(dāng)用戶設(shè)置完服務(wù)器 IP與端口后,點(diǎn)擊連接服務(wù)端按鈕,示教器客戶端隨即初始化一個 Socket,然后連接服務(wù)器(Connect)。如果 IP 與端口設(shè)置正確,即可成功連接上服務(wù)器,當(dāng)圖像處理端有識別好的鞋模輪廓數(shù)據(jù)會立即傳輸至示教客戶端。
在確認(rèn)鞋模的功能中,可實(shí)時(shí)顯示鞋模輪廓的世界坐標(biāo), 該功能采用繪點(diǎn)控件實(shí)現(xiàn)。控件的主要功能是將獲取的點(diǎn)全部顯示在控件上,控件內(nèi)部有一個點(diǎn)數(shù)組成員。初始化控件時(shí),主線程獲取保存的點(diǎn)信息,并將其存入點(diǎn)數(shù)組成員中。程序運(yùn)行過程中,點(diǎn)數(shù)組會一直被清空再重新被賦值,同時(shí)控件也通過 Update 函數(shù)進(jìn)行刷新,最終用戶可在圖像空間看到獲取到的鞋模輪廓圖,示教器客戶端如圖 8 所示。
圖 8 示教器客戶端圖
示教機(jī)械手的主要功能是使噴膠示教器通過 TCP/IP 協(xié)議將鞋底輪廓世界坐標(biāo)數(shù)據(jù)發(fā)送至機(jī)器手,機(jī)器手根據(jù)這些坐標(biāo)數(shù)據(jù)運(yùn)動進(jìn)行噴膠處理。
3 結(jié) 語
從制鞋行業(yè)出現(xiàn)的主要問題出發(fā),本文提出了一種基于機(jī)器視覺的鞋模噴膠系統(tǒng)設(shè)計(jì)方案。該系統(tǒng)能夠靈活處理不同擺放位置的鞋底,同時(shí)增高旋轉(zhuǎn)的角度容差,從而提升鞋底噴膠的精度。另外,由于不需要對鞋底編程示教,因此系統(tǒng)的整體靈活性得到了顯著提高。另外,整套系統(tǒng)人機(jī)交互界面整潔,方便用戶操作。目前,在國家對中國制造與智能工廠的倡導(dǎo)下,本文系統(tǒng)已得到大力推廣。當(dāng)然,在圖像識別時(shí)還存在一些不足,如有噪點(diǎn)影響時(shí)需要人工干預(yù),全程自動化將是本文系統(tǒng)今后改進(jìn)的方向。