畢 楊,宋 飛,王 軒
(西安航空學(xué)院 電子工程學(xué)院,陜西 西安 710000)
隨著智能制造時代的到來,出現(xiàn)了多樣的先進機電產(chǎn)品,其復(fù)雜程度也是也越來越高,例如現(xiàn)代噴氣式飛機、高速鐵路客車、高級小轎車等。這些產(chǎn)品方便了人們的生活,同時,這些產(chǎn)品的維修和保養(yǎng)工具也越來越多、越來越精細化,特別是在航空維修工具領(lǐng)域,所用的到維修工具大到常見的刀具、量具、輔具,小到長約1 cm的工具頭、細到幾個毫米的針狀拐子等。目前對這些精細化工具的存放和管理仍然大量使用傳統(tǒng)的各種大大小小的工具箱,在現(xiàn)實的使用過程中往往會存在如下一些明顯的問題:(1)由于維修現(xiàn)場往往是大型復(fù)雜的航空機電產(chǎn)品,而維修工具種類繁多又很細小,如果因為維修人員疏忽將維修工具遺失在現(xiàn)場而不自知,那后果是不堪設(shè)想的。(2)傳統(tǒng)的工具箱只能收納工具,但是工具在箱內(nèi)存放凌亂,對于普通工具影響不大,但是對一些高精度的量具、刀具則會容易造成損壞。(3)大量工具無序存放,在使用過程中需要來回翻找,降低了維修工人的工作效率,并可能造成一定的安全隱患。(4)大量維修工具需要進行統(tǒng)一的科學(xué)管理和及時維護[1-2]。同時,隨著政府大力發(fā)展高端制造業(yè),有越來越多的國產(chǎn)先進精密機電設(shè)備投入市場,進而對這些設(shè)備的維修保養(yǎng)需求也越來越多,科學(xué)有效地解決高精度維修工具存管中存在的上述問題就顯得尤為重要而迫切[3-4]。
國內(nèi)外目前對智能型工具箱的實現(xiàn)也有相關(guān)的研究,主要是針對防止工具丟失的功能,目前主要有采用RFID標簽識別的方法[5-6]和采用光敏灰度傳感器識別的方法等,這些方法要么不適合于微小工具,要么無法解決工具亂放或非工具物件占用工具槽位的問題[7]。都不能很好地滿足對微小工具和工具唯一性檢測的要求。
文中將利用圖像識別技術(shù)進行工具箱內(nèi)的工具信息分析處理,在此基礎(chǔ)上又設(shè)計了一套完整的管理系統(tǒng)對工具箱進行系統(tǒng)管理,從而實現(xiàn)工具箱的智能管理,并通過實驗驗證了該設(shè)計方案的可行性和有效性。
HOG(histogram of oriented gradient)算法,即方向梯度直方圖特征,是識別計算機視覺和圖像處理中的對象的特征描述符[8]。該算法中的特征是通過計算部分圖像區(qū)域的梯度方向確定的。目前,將HOG算法與SVM分類器相結(jié)合并且用于圖像識別得到了廣泛的認可[9]。
HOG算法的特征提取如圖1所示,其中最主要的步驟是計算圖像梯度以及構(gòu)建每個單元的梯度方向直方圖。
圖1 HOG算法流程
計算圖像中每個像素的梯度,包括其大小和方向等。其主要目的在于獲取輪廓數(shù)據(jù),并且對來自光照的干擾進行最小化處理。計算圖像的水平和垂直梯度,并相應(yīng)地計算每個像素位置的梯度方向值,它可以進一步削弱照明的影響[10]。
圖像中像素點(x,y)的梯度為:
Gx(x,y)=H(x+1,y)-H(x-1,y)
(1)
Gy(x,y)=H(x,y+1)-H(x,y-1)
(2)
其中,Gx(x,y)、Gy(x,y)、H(x,y)分別表示輸入圖像中像素點(x,y)處的水平方向梯度、垂直方向梯度和像素值。
像素點(x,y)處的梯度幅值、梯度方向分別為:
(3)
(4)
通常使用梯度算子[-1,0,1]來對原始圖像作褶積運算。并獲得x方向的梯度分量。然后用梯度算子[1,0,-1]來對原始圖像作褶積運算,并獲得y方向的梯度分量。最后,通過上面的公式可以得到像素的梯度大小和方向。
創(chuàng)建單元格梯度方向直方圖的目的是為部分圖像區(qū)域提供方向,單元中的每個像素基于方向直方圖通道選擇投票[11]。投票是一種加權(quán)投票制度,也就是說,每張票都具有權(quán)重,該權(quán)重是基于像素的梯度大小計算的,該權(quán)重可以通過幅值本身或它的幅值函數(shù)來表示。單元格可以是矩形或星形。直方圖通道均勻散布在0~1 800(非定向)或0~3 600(定向)的范圍內(nèi)。實驗表明,使用非定向梯度和9個直方圖通道可以在行人檢測實驗中獲得最佳結(jié)果[12]。
將圖像分成若干個“單元格”,并將每個單元格的像素設(shè)置為6*6。使用9塊直方圖來統(tǒng)計有關(guān)這6*6像素梯度的信息。也就是說,單元梯度的方向(360度)被分成9個方向塊。用梯度方向?qū)卧駜?nèi)每個像素在直方圖中進行加權(quán)投影,能夠得到單元格梯度方向直方圖,就是對應(yīng)于單元格的9維特征向量。如圖2所示,像素梯度的方向在20~40度之內(nèi),那么直方圖的第二列的值增加1。
圖2 梯度方向通道示意圖
通過研究人員的實際測試表明:要想獲得最佳的效果必須用幅值來表示,當然,也可以選擇幅值函數(shù)來表示,比如幅值的平方、平方根、截斷形式等[13]。
(1)HOG算法在圖像的局部單元上運行,因此在保持圖像的幾何和光學(xué)畸變方面具有良好的不變性。僅在更大空間區(qū)域中會出現(xiàn)這兩種形變。
(2)HOG表示角落的結(jié)構(gòu)特征,因此它可以描述局部形狀信息。
(3)HOG算法對子單元的處理方式,能有效地體現(xiàn)出圖像的局部像素點之間的關(guān)系。
(4)描述子生成過程繁瑣,具有高維度,導(dǎo)致HOG算法運算速度慢,實時性差,并且難以處理遮擋問題。而且由于梯度的性質(zhì),描述子對噪聲非常敏感。
文中提出的智能工具箱可識別到具體的五種異型的工件,如圖3所示,圖3中最右邊的為標尺。在工件放置近工具箱后,工具箱系統(tǒng)調(diào)用補光燈和攝像部分對箱內(nèi)進行拍照,并將圖片暫存到系統(tǒng)中,取出感興趣的工具圖像部分和標尺(即基準圖片)。智能工具箱首先通過統(tǒng)一標尺進行工件的尺度歸一化,然后調(diào)HOG算法處理模塊對基準圖片以及拍到的圖片進行圖像匹配,若兩圖之間的特征值差異在工具箱提前設(shè)定好的容錯范圍內(nèi),則說明工件匹配成功,否則產(chǎn)生報警提示。
圖3 工具箱內(nèi)原始圖片
具體過程如下:
(1)對原始工件拍照,提取特征值信息,并保存在系統(tǒng)中,可根據(jù)用戶需要實現(xiàn)工件種類和數(shù)量靈活配置。
(2)工件借出配置好后,待歸還時,進行再次拍照,并提取現(xiàn)有工具箱中工件的特征值信息。
(3)系統(tǒng)對現(xiàn)有的信息和預(yù)先保存的信息進行匹配,就可以知曉歸還工件的種類和數(shù)量是否與借出時相一致。
圖像分割的目的是提取圖像中的有用信息。通常圖像的邊緣、亮度、色彩等特點常作為分割的依據(jù)。主要方法就是將原始圖像的RGB色域轉(zhuǎn)換為YCBCR色域,將工具更好地從圖像背景中分割出來,如圖4所示。
(a)YCBCR色域圖
(b)二值化后圖
(c)填充之后圖圖4 工具背景分割圖
將工具從原始圖像背景中分離出來后,對目標工件進行定位,將需要識別的工具分割出來,如圖5所示。
圖5 分割出來的工具
文中提出的智能工具箱中的尺度歸一化主要就是通過保持標尺與工件的相對比例不變特性,即利用數(shù)字圖像中不變的矩尋找一組參數(shù)使其能夠消除其他變化函數(shù)對圖像變化的影響,將待處理的不同格式的原始圖像轉(zhuǎn)換成相應(yīng)的唯一標準形式[14-15]。
工具箱對工具進行特征提取,即使用文中研究的HOG特征算法處理模板圖片中的工件和需要檢測的圖像。按照圖1所示的步驟完成圖像特征的提取。
配準識別為智能工具箱的最后一步。將待檢測圖像的特征(描述算子)提取出來后,在模板圖像范圍內(nèi)進行特征向量漢明距離配準識別,如果計算得到的漢明距離滿足工具箱所設(shè)定的要求,則說明匹配成功,進而將匹配成功的工具的位置進行定位標記,如圖6所示。
圖6 成功識別到的工具
以上就是智能工具箱的主要處理步驟,對需要處理的圖像進行處理后,最終以可見信息的形式傳達出來。若工具匹配成功,工具箱則閃爍綠燈表示,若未識別到工具或者匹配失敗,工具箱則紅燈閃爍并產(chǎn)生警報,以提醒相關(guān)人員及時處理問題。
圖像識別算法實現(xiàn)過程如圖7所示。
圖7 算法實現(xiàn)過程
(1)首先通過Matlab工具進行圖像識別算法的模擬,完成核心算法的仿真。
(2)將完成仿真的算法通過安卓平臺開發(fā)完整邏輯的實現(xiàn),并完成模擬調(diào)試。
(3)將完成調(diào)試的安卓呈現(xiàn)寫入開發(fā)板,完成真實環(huán)境的調(diào)試以及硬件控制調(diào)制。
文中的仿真環(huán)境和開發(fā)平臺如表1所示。
表1 仿真環(huán)境和開發(fā)平臺
智能工具箱完成了對維修工具的精確識別和管理,對多臺工具箱的關(guān)系則需要一套完整的管理系統(tǒng)進行管理。
如前文所述,智能工具箱內(nèi)采用Firefly-RK3128開發(fā)平臺板,擁有ARM Cortex-A7架構(gòu)處理器,除了擁有良好的運算與圖形處理能力,還支持2.4 GHz Wi-Fi及藍牙4.0接口,因此工具箱管理系統(tǒng)利用藍牙接口實現(xiàn)了對智能工具箱的“智能”管理。
后臺管理系統(tǒng)設(shè)計采用以下原則[16-17]:
·開放性:提供標準數(shù)據(jù)接口、網(wǎng)絡(luò)接口、系統(tǒng)和應(yīng)用軟件接口。
·模塊化:嚴格按照模塊化結(jié)構(gòu)方式開發(fā),以滿足通用性和可替換性。
·先進性:軟件技術(shù)選型符合技術(shù)發(fā)展潮流。
·高效率:緊貼工具箱應(yīng)用場景進行設(shè)計,提高使用者管理效率。
·可靠性:獨立數(shù)據(jù)代理,及時數(shù)據(jù)備份等措施保證系統(tǒng)的穩(wěn)定可靠。
在以上設(shè)計原則的指導(dǎo)下,后臺管理系統(tǒng)采用三層體系架構(gòu)[18]。
(1)數(shù)據(jù)采集層:通過藍牙協(xié)議負責與智能工具箱通信,獲取工具箱狀態(tài)。
(2)數(shù)據(jù)層:負責系統(tǒng)數(shù)據(jù)存儲,支持設(shè)置數(shù)據(jù)安全和備份機制,保證數(shù)據(jù)在授權(quán)的范圍內(nèi)被訪問,保證數(shù)據(jù)系統(tǒng)意外的情況下可恢復(fù)。
(3)管理應(yīng)用層:本層為系統(tǒng)主要的應(yīng)用展現(xiàn)層,負責系統(tǒng)用戶及工具箱的管理邏輯。
服務(wù)器:Windows Server 2016;
開發(fā)工具:Microsoft Visual Studio 2017;
開發(fā)語言:Visual C#;
數(shù)據(jù)庫:Microsoft SQL Server 2016。
智能工具箱管理系統(tǒng)提供了人員管理、工具箱管理、查詢統(tǒng)計、系統(tǒng)設(shè)置功能,并集成工具箱倉庫的門禁系統(tǒng)管理,實現(xiàn)了對工具箱端到端的完整管理能力,詳細功能如圖8所示。
圖8 智能工具箱管理系統(tǒng)功能
(1)用戶管理。
用戶管理主要提供了對系統(tǒng)用戶(使用者)的管理功能,僅系統(tǒng)管理員具備創(chuàng)建/刪除用戶、用戶密碼重置的功能權(quán)限。普通用戶不能添加及刪除用戶,修改用戶僅支持修改名稱及聯(lián)系方式。
(2)工具箱注冊。
僅管理員支持對工具箱的注冊和管理功能,包含注冊、解注冊、修改、工具箱類型維護等。
(3)工具箱出入庫。
工具箱出入庫用戶工具借出和歸還時使用。
(4)歷史記錄。
系統(tǒng)對管理員及用戶的所有操作進行記錄,支持根據(jù)操作時間、用戶及操作等條件聯(lián)合查詢,并支持對查詢的結(jié)果導(dǎo)出到Excel文件,方便用戶打印。
為了滿足航空維修工具管理的要求,將圖像識別技術(shù)應(yīng)用于對工具箱內(nèi)的工具信息進行分析處理,在完成了對維修工具的精確識別的基礎(chǔ)上,又設(shè)計了一套完整的管理系統(tǒng)對多臺工具箱進行系統(tǒng)管理。經(jīng)實驗驗證,提出的以圖像識別技術(shù)為基礎(chǔ)的工具智能管理系統(tǒng)能有效地對工具箱內(nèi)的工具進行檢測,并且檢測速度快,檢測效果明顯,在此基礎(chǔ)上給出的一套完整的管理系統(tǒng)提供了人員管理、工具箱管理、查詢統(tǒng)計、系統(tǒng)設(shè)置功能,并集成工具箱倉庫的門禁系統(tǒng)管理,實現(xiàn)了對工具箱端到端的完整智能管理。該設(shè)計方案在航空維修工具領(lǐng)域有廣泛的應(yīng)用和推廣價值。