林浩岳 歐陽培建
摘 要:文章基于C#編程語言為茶葉分揀設備設計了一套控制軟件,軟件根據設備提供的茶葉圖像資料,結合識別算法判斷出茶葉的質量,并通過特定通信協議控制設備對茶葉進行分揀。該軟件對茶葉的批量化、自動化生產有一定的促進作用。
關鍵詞:茶葉分揀;茶葉識別;分揀軟件
DOI:10.16640/j.cnki.37-1222/t.2019.24.067
1 概述
本軟件在微軟Visual Studio編程平臺上進行開發,結合基礎類庫MFC和開源opencv圖像識別庫完成軟件的設計。軟件采用MVC開發框架,采用數據層,業務層和展現層的分層結構。茶葉識別算法的設計分為狀選和色選兩個部分,分別對茶葉的外觀特征和顏色進行識別處理,最后得出茶葉的質量及分類數據。
2 茶葉圖像特點分析
以鳳凰茶葉為例,分析合格和不合格茶葉的圖像特點:
表1中觀察對比發現茶葉質量等級可以由兩個方面來判斷,一是茶葉的顏色,二是茶葉的形狀。上位機軟件可以通過形狀算法來判斷茶葉的寬窄,通過HSV顏色系統來進行判斷顏色。具體方法是給二值圖的像素點做標記,尋找茶葉的輪廓,計算茶葉的面積,計算黃色所占面積占整個茶葉面積的比重。圖像初始化后,進行骨骼化,找出茶葉的中軸,再找出兩個端點,取中軸兩邊多點計算平均寬度,得到茶葉的寬度值。
3軟件整體架構
軟件的整體架構設計如圖1所示,利用可視化編程框架MFC編寫軟件的界面,在業務層處理的時候將茶葉識別算法分為色選和狀選兩部分,數據層是從網絡攝像頭獲取的茶葉圖像數據。
系統的軟件分為數據層、業務層和展示層三部分。數據層是獲取攝像頭采集的圖片數據。業務層是茶葉識別算法,茶葉識別分為兩個部分,一部分是茶葉顏色的識別,茶葉和茶梗是黑色,而雜葉偏黃;另一部分是茶葉形狀的識別,茶葉和雜葉都比較寬,而茶梗比較細。展示層則是可視化編程框架MFC編寫軟件的界面,界面會顯示攝像頭拍攝到的茶葉圖片。圖像處理過程中,色選模塊,采用符合我們描述顏色方式的HSV顏色系統,H代表色相,即顏色種類;S代表飽和度,即顏色的深淺;V代表色調,即顏色的亮度[1,2]。色選模塊通過計算顏色偏黃的面積占茶葉總面積的比例,分揀出質量不同的茶葉。將采集到的原始圖像,經過高斯低通濾波,把圖像的噪點濾除,再利用灰度圖進行二值化,尋找茶葉的輪廓,從而計算出茶葉的面積。狀選模塊是先對初始化的圖像進行骨骼化,骨骼化即對圖像進行細化處理,找出茶葉的中軸,將圖像細化為二值圖,但整體形狀不變,利用骨骼化后的圖像找到茶葉的兩個端點,再用迪杰斯特拉最短算法求出茶葉的兩條邊,最后再取中軸兩邊的10對點計算出平均寬度,通過茶葉的寬度識別茶葉質量的好壞。通過色選和狀選兩個模塊,可以準確對茶葉進行識別判斷,得到分類數據,用于控制下位機進行分揀動作。
3.1 HSV顏色系統介紹
經過多次的測試,最后決定在圖像的處理過程中采用HSV顏色系統,因為HSV對于茶葉顏色的表達更準確。H、S和V分別代表色相、飽和度和色調。我們可以參照表2確定顏色的大致區間。
3.2 色選模塊算法設計
色選模塊算法流程:開始原始圖像計算茶葉總面積S1計算茶葉黃色區域面積S2計算茶葉黃色面積占整體面積的比例 (S2/S1)結束。
色選模塊的算法設計如上所示,主要分為兩部分,一部分是計算茶葉的總面積,另一部分是計算黃色區域面積,最后計算黃色面積占整體面積的比例,我們可以根據這個比例識別出茶葉是不是偏黃。
3.3 茶葉總面積的計算
計算茶葉總面積算法流程:開始原始圖像高斯濾波? ? ? ?灰度圖二值化尋找輪廓計算茶葉面積結束。
計算茶葉總面積的流程圖如上所示,首先原始圖像通過高斯濾波剔除一些外在的干擾,然后將圖像轉化為灰度圖,再二值化,最后尋找輪廓計算茶葉面積。
4 上位機軟件界面設計
上位機軟件的整體界面如圖2所示,整體的布局分為數據處理部分和數據統計部分。圖像顯示部分在界面的上半部分,數據統計部分在界面的下半部分。
下面詳細介紹各部分的功能:
①網絡攝像頭傳采集到的茶葉原始圖像;
②、③、⑤、⑥顯示茶葉識別判斷的結果;
④顯示茶葉圖像的灰度圖片;
⑦通信接口的相關配置;
⑧茶葉分類的數據;
⑨設備啟動與停止按鈕。
5 與下位機的通信協議設計
PC機將識別判斷好的茶葉數據通過串口通信發送給下位機,通信數據包含茶葉所在的圖像通道和茶葉的質量等級等信息。通信協議定義為:“0xff+0xff+通道號+茶葉質量等級標記+長度+校檢碼+0x0d+0x0a”。其中“0Xff+0xff”是通信開始標識,“0X0d+0x0a”是通信結束標識,下位機首先創建循環結構體隊列,然后循環執行以下程序:讀取位置編碼器的脈沖,在接收到正確的協議內容后,將包含數據頭的結構體壓入隊列,并循環檢測4通道是否為空,在隊列非空的情況下,根據信息頭信息來控制分揀機構的執行狀態。
6 小結
本文設計的茶葉分揀上位機軟件能顯示茶葉原始及灰度圖像,并通過識別茶葉的顏色和形狀來判斷茶葉質量,得到的判別結果圖像顯示在軟件界面右上方,茶葉的統計數據在軟件下方顯示。并通過特定通信協議與下位機通信,完成茶葉分揀工作。經測試軟件運行穩定,茶葉質量識別率高于90%。該上位機軟件在界面美化及數據保存功能方面還需要繼續完善升級。
參考文獻:
[1]付貝貝.可視化傳感體系構建及在茶葉檢測中的應用研究[D].重慶大學,2016.
[2]余洪.基于計算機視覺技術的茶葉品質分級研究[D].江西農業大學,2017.
[3]陳勝勇.基于OpenCV的計算機視覺技術實現[M].科學出版社,2008.
作者簡介:林浩岳(1986-),男,廣東江門人,本科,實驗師,研究方向:電氣工程自動化。