楊道清,侯開虎,包 迪,曹如玥,姬思陽
(昆明理工大學 機電工程學院工業工程系,昆明 650500)
在產品生產過程中,若不同質量狀態的產品發生混淆,使“不合格”的產品投入到下一道工序的生產中,不僅僅造成工作量的加大,還會造成最終產品的質量問題,嚴重時還會導致批量廢品。因此,如何避免產品質量安全事故的發生,實現產品生產有序、高效地進行成為國內外專家的研究熱點。
為了使產品質量處于受控狀態,許多專家提出在產品生產、搬運過程中實現自動化,盡量減少人力操做,甚至取消人作業[1~3]。何楠等人則提出對生產現場進行標識管理[4,5],通過使用標識牌、標識符、標簽以及語義符號等來區分識別不同的產品或區域[6~8]。但在以上提出的生產現場標識管理中,標識的識別仍由工作人員完成,不適合于產品質量管理。因為產品的質量檢驗狀態不是固定不變的,剛剛還是“待檢”狀態,一會又變為“合格”狀態,當產品經過下一道工序加工后又變為了“待檢”狀態[4]。當產品批量大時,很多員工都參與到產品標識的分類識別,產品搬運和分區存放的工作中,因此,發生失誤的概率也就變大。
為了實現更精準的標識識別,劉成云等人基于感興趣區域和HOG-MBLBP特征對交通標識進行檢測[9],徐蔚等人就將雙BP神經網絡用于標識牌的識別中[10]。由此,本文針對4種不同的產品質量狀態,設計了4種簡單易識別的產品質量狀態標識符,將GA-BP神經網絡[11~14]與機器視覺AGV結合來實現對標識符的分類識別[15],AGV根據識別結果,對不同質量狀態的產品進行搬運與分區存放,讓產品生產高效有序地進行,降低產品質量事故發生的概率。
為了減少標識符圖像處理過程中的運算量,加快識別速度,以滿足實時性需求,本文設計的標識符以簡單易識別為標準。4種標識符“待檢”、“合格”、“待處理”以及“不合格”,其具體設計圖分別如圖1所示。標識符由簡單的圖形和字母組成,每個字母分別代表的含義如下。

圖1 產品質量狀態標識符設計圖
1)字母C代表“check”,即產品質量狀態為待檢驗。
2)字母Y代表“yes”,即經質檢員檢驗以后,判斷為合格的產品。
3)字母P代表“pend”,即待處理,指產品并不是不合格,只是存在一定的瑕疵,需進行進一步的檢驗判斷,再決定去處。
4)字母N代表“no”,即不合格的產品。
人工神經網絡在圖像分類識別中應用廣泛,其中應用最多的是BP神經網絡,傳統BP神經網絡的參數是隨機產生的,因此魯棒性較差,模型訓練過程容易陷入“局部最優”。因此,本文采用基于遺傳算法優化的BP神經網絡(GA-BP模型)對標識符進行分類識別,相對于傳統BP神經網絡,GA-BP神經網絡性能更優。
BP神經網絡是一種信息前向傳播,誤差逆向傳播的監督學習算法,由輸入層、隱含層、輸出層組成,其模型結構如圖1.1所示。輸入層接收外界信號后經過隱含層,最后到達輸出層,各層之間通過權重進行連接傳遞,即輸入信息是正向傳播的。從圖1中可以看出,在信息的傳播過程中,不同層神經元之間是相互影響的。即每層神經元的信息輸入與其所占有的比例都對下一層神經元所獲得的信息總量產生影響。信息輸入量保持不變,改變其內部的權重分配,都會改變下一層神經元的輸入總量。BP神經網絡的核心正是通過這一特性來進行逆向反饋。即得到輸出層與期望值的誤差,然后將誤差按照原來的網絡路徑反向傳遞回來,不斷地修正權重和閾值,減小輸出層輸出結果與期望值之間的誤差。
由圖2可知,BP神經網絡的模型可以用如下公式表示,其中式(1)中ωij為輸入層到隱含層的各輸入變量的權重,f1為隱含層的激活函數。式(2)中為ωjh隱含層各變量到輸出層的權重,為輸出層的激活函數。式(3)和式(4)為權重調整公式,其中η∈(0,1)稱為學習率,為期望輸出值,學習器將根據錯誤的程度進行權重的多次調整。

圖2 BP神經網絡結構圖

在BP神經網絡中,輸出層是M-P神經元,M-P神經元模型將復雜的生物神經元活動通過簡單的數學模型表達出來。在這個模型中,神經元接收來自其他n個神經元的帶有權重的輸入信號,然后將這些總輸入值與自身的閾值進行比較,最后通過“激活函數”的處理以產生神經元的輸出。常用的“激活函數”有S型函數(Sigmoid)、雙極S型函數、線性函數等。M-P神經元模型結構如圖3所示。

圖3 M-P神經元模型
圖中x1~xi為神經元的輸入變量,ω1~ωi為連接權重,代表的是各輸入變量所占比重,θ表示該神經元的閾值,當神經元接收到的總輸入值大于閾值時,神經元才會被激活,即。
遺傳算法(GA)的基本思想就是首先產生一個初始種群,然后根據設定的目標函數得到種群中每個個體的的適應度值,根據適應度值的大小來進行選擇,被選中的個體進行復制、交叉、變異、產生新的適應度更高的種群,這一過程將持續到輸出的種群中個體適應度值最優為止。
本文提出的遺傳算法優化BP神經網絡主要分為以下三個部分:
1)創建BP神經網絡,并用其進行分類訓練;
2)用遺傳算法優化BP神經網絡的初始權值和閾值;
3)將新的權值和閾值賦予BP神經網絡,得到GA-BP模型。其具體算法流程如圖3所示。
1)創建BP神經網絡
在實驗過程中,首先要確定BP神經網絡的具體結構,本文所創建的神經網絡結構為81-45-4,為三層結構,輸入層神經元個數為81,隱含層神經元個數為45,輸出層神經元個數為4,由神經網絡結構可得其初始權值和閾值的數目表1。

表1 權值和閾值數目

圖4 GA-BP神經網絡流程圖
當確定了BP神經網絡的結構以后,開始創建網絡,對其進行參數設置,包括最大訓練次數,學習速率,訓練要求精度等,BP神經網絡模型參數設置如表2所示。

表2 模型參數表
在信息傳遞過程中,當輸入層各輸入變量與各變量權值乘積的總和大于隱含層各神經元上的閾值時,才可以被激活函數處理以產生神經元的輸出。本文中的BP神經網絡算法將隱含層的激活函數設為tansig函數,其表達式如式(4)所示,而輸出層的激活函數設為purelin函數,其表達式如式(5)所示。

2)遺傳算法(GA)的優化
當創建好BP神經網絡以后,對其進行優化,優化步驟如下:
Step1:確定編碼方式并進行編碼。本次優化采用了實數編碼,編碼長度由BP神經網絡的結構及神經層閾值和權值數目確定,由表3得到編碼長度為3874。其計算公式如式(6),式中S為編碼長度,R為輸入神經元個數,S1為隱層神經元個數,S2為輸出神經元個數。

Step2:隨機產生初始化種群。種群規模最好設置在40~100之間,對于本次優化,通過多次仿真得到種群規模設置為50時,仿真結果最好,因此種群規模設置為50。
Step3:確定適應度函數。在本文設置的適應度函數中,首先求出真實標記矩陣與模型輸出層的輸出矩陣之間的均方誤差,然后再對其求倒,得到的值作為個體的適應度值。
Step4:進行選擇,交叉,變異操作。算出種群中個體適應度值后,以個體適應度值為依據,進行種群的選擇,選擇概率為0.05。然后在GAOT工具箱中分別調用arithXover交叉函數和nonUnifMutation變異函數,對選擇出來的種群進行交叉、變異,得到新的種群,如果新種群符合條件,則終止,不然又重新進行迭代優化,直至滿足條件為止或達到最大迭代次數為止。本次算法優化設置的最大迭代次數為100。
為了驗證模型的性能,進行仿真實驗驗證。此次仿真軟件環境為MATLAB2016a,操作系統為Windows8。
1)標識符圖像的獲取
在本次實驗中所用到的標識符數據集,均為手繪圖像,像素為50×50,總共有400張。
2)標識符圖像的預處理
在對標識符圖像的預處理過程中,本文首先對圖像進行反色處理,然后使用閾值變化法將灰度圖像轉換為二值圖像,通過查找圖像上所有像素點坐標,截取包含完整標識符的最小區域。最后將截取的包含完整標識符的最小區域圖像轉成81維數據。
3)標識符圖像數據集的劃分
本文采用留出法直接將圖像數據集D劃分為兩個互斥的集合,分別為訓練集S,測試集T,訓練集S與測試集T以8比2的比例劃分,即D=S∪T,S∩T=φ,S∶T=8∶2。
在本次實驗中首先進行標識符圖片的獲取,然后對獲取的圖片進行預處理,轉化為數據矩陣。將處理所得的數據集劃分為訓練集和測試集。訓練集用于訓練GA-BP模型,然后使用訓練好的模型對測試集標識符圖像進行分類識別,通過測試集來對創建的模型進行性能評估。其具體的實驗流程圖如圖5所示。

圖5 實驗流程圖
1)遺傳算法(GA)優化實驗
(1)種群中個體適應度值是優化過程中選擇操作的依據,本次優化過程如圖6所示。
從圖6中可以看出,隨著遺傳代數的增加,每一代的平均適應度函數值越接近于最優個體,大約在60代左右,平均適應度值等于種群中個體最優適應度值,即每個個體均達到最優。且60代以后,隨著遺傳代數的增加,最佳適應度值變化很小。從圖中可以看出,最優種群的適應度值大約為0.85,實際實驗輸出為0.8524。

圖6 種群適應度函數值變化曲線
(2)遺傳算法優化的目的是為了得到最佳權值和閾值,經實驗仿真,得到了輸入層與隱含層之間的一個45×81連接權值矩陣,隱含層與輸出層之間4×45的連接權值矩陣以及45個隱含層閾值和4個輸出層閾值。然后將所獲得的最佳權值與閾值賦予BP神經網絡,使用訓練集進行網絡的訓練,得到GA-BP模型。
2)實驗結果分析
(1)模型好壞是相對的,它不僅僅取決于算法和數據,還取決于任務需求。當GA-BP神經網絡用于分類任務,精度是最常用的性能度量,精度即分類正確樣本數占樣本總數的比例。通過實驗,得到GA—BP模型識別標識符的混淆矩陣,如表3所示。

表3 GA-BP模型識別模式的混淆矩陣
由表3GA-BP模型識別模式的混淆矩陣可以得到,待檢驗標識符、合格標識符以及不合格標識符的識別率均為95%,待處理標識符的識別率為90%,平均識別率為93.75%。
(2)為了測試GA-BP模型的穩定性,進行了多次實驗仿真,得到各個標識符識別率的變化曲線如圖7所示。
從圖7可以看出,經過多次實驗仿真,不同標識符識別率曲線變化均比較平緩。平均識別率曲線也比較平緩,基本在92%上下波動,說明GA-BP模型具有較好的魯棒性,用于本文設計的產品質量狀態標識符的分類識別是可行的。

圖7 不同標識符識別率變化曲線
通過實驗仿真得到,GA-BP算法能夠對本文設計的四種產品質量狀態標識符進行快速準確地分類與識別。這表明將GA-BP算法應用于AGV的圖像處理系統,使AGV對采集到的標識符圖像進行分類識別,根據識別結果進行產品的搬運與分區是可行且可靠的,除此之外,能夠有效避免人工失誤,提高質檢工作效率。