楊靜嫻 任小洪
(1.四川輕化工大學人工智能四川省重點實驗室,四川 宜賓 644000;2.四川輕化工大學自動化與信息工程學院,四川 宜賓 644000)
近年,隨著數字經濟的發(fā)展,釀酒工藝數字化、智能化[1-3]和信息化[4-7]已成為發(fā)展趨勢。在傳統的摘酒過程中,酒度的范圍都是人工通過經驗來判斷,白酒釀制工人通過“看花摘酒”和“邊摘邊嘗”的方法對白酒度數進行判斷,從而實現對白酒度數的分級,這樣的判斷存在分級不穩(wěn)定性以及不確定性的問題[8]。因此,實現白酒摘酒過程中度數分級智能化已經是必然的發(fā)展趨勢。對白酒摘酒工藝的研究通常從白酒多個方面的特征考慮。例如,陳林等[9]提出從酒精水溶液濃度、溫度、酒精體積分數關系進行酒精度模型搭建,通過音叉密度計監(jiān)測基酒密度,再將模型轉化為酒精度,對比實測酒精度與預測酒精度之間的差異,實現酒精度的預測;何盛國等[10-11]通過檢測基酒中的四大脂,傳送到控制系統,通過實測脂含量與預設含量的對比,通過脂含量的固定范圍將基酒進行分級,實現自動化摘取,但在此研究中會受到酒醅物性、裝甄工藝的影響,同時需要大量樣本的學習。除此以外,大多數白酒智能化研究都是基于白酒風味物質[12]、含量[13-14]、變化規(guī)律[15-16]進行。
現階段除人工摘酒外,已有企業(yè)采用的酒精度檢測儀進行自動摘酒,但存在價格昂貴、在線檢測效果不理想等問題,而通過機器視覺技術、圖像處理技術相結合的方法具有成本低、方便快捷、易于實現大規(guī)模摘酒的優(yōu)點。文章擬分析和討論一種基于圖像處理技術的白酒酒花輪廓檢測的方法,以期實現酒花分級摘酒的智能化。
在現階段,白酒在生產中通常實現的是三段摘酒。在白酒蒸餾開始后,通過人工的方法進行“看花摘酒”“邊摘邊嘗”等操作實現白酒酒度的分級。在白酒蒸餾過程中,蒸餾液流入酒桶中,水、酒精由于表面張力的作用而激濺起的氣泡,稱為“酒花”。酒花的大小以及酒花的滯留時間長短便作為白酒酒度的一種判別方法。
針對某酒廠的白酒摘酒酒度分級中的酒花進行示例見表1。
表1 宜賓某酒廠白酒酒花分類
在摘酒時要掐去酒頭與酒尾,分別貯存,可以選擇合適的餾分用于后續(xù)的勾兌白酒,也可將酒頭與酒尾混合,一起進行再次蒸餾。
要實現對酒花的分級,得到摘酒過程中的酒花輪廓圖便是關鍵所在,通過對白酒酒花的輪廓獲取,可以更加清晰地對白酒酒花進行分級,從而實現對白酒酒度的分級。
基于圖像處理的白酒酒花輪廓檢測方法是在Visual studio+opencv平臺上進行的,通過對多種處理流程以及處理算法的試驗,最終確定在對白酒摘酒圖像進行以下的檢測流程,方法能夠很好地獲取到在摘酒過程中的白酒酒花,具體流程圖如圖1所示。
通過對白酒摘酒原始圖像進行以上的預處理方法后,能夠消除圖像中的大量噪聲,并在OTSU算法以及Canny邊緣檢測相結合的方法下能夠獲得相對精確清晰的大清花以及小清花酒花輪廓,為實現在白酒摘酒過程中的白酒酒度分級打下基礎。在以下將對大清花以及小清花的圖像進行算法實現。
通過在宜賓某酒廠進行數據采集,在同一光照條件下,采用1 600萬像素拍攝工具進行視頻拍攝,對同一甄酒的摘酒酒花進行了數據采集,獲取了在現階段人工摘酒時大清花和小清花的觀測圖像。在采集的圖片中可以看出,受到蒸餾液擊打在白紡布上飛濺的影響以及動態(tài)酒的影響,圖像中只有部分能夠觀測到酒花的輪廓。因此,為了避免大量噪聲的影響,只針對所獲取圖像的部分進行圖像處理,即選取感興趣區(qū)域(region of interest,ROI)進行白酒酒花的輪廓檢測。在文中主要是通過圖像處理部分對酒花圖片進行分析,因此采用鼠標截取酒泡清晰的部分,對比選取最優(yōu)的ROI區(qū)域進行接下來的圖像處理部分。在應用中可以通過固定出酒管的位置設置矩形區(qū)域進行ROI區(qū)域的選擇再進行后續(xù)的圖像處理。根據多次試驗對比,ROI區(qū)域的像素控制在300×300左右能夠獲得較為全面的酒花圖像。原始圖像以及酒花處理部分如圖2所示。
圖1 檢測流程圖
圖2 原始圖像以及酒花處理部分
通過圖2可以看出,白酒酒花的圖像提取受到酒桶、酒裝、蒸餾酒流以及光照等因素的影響,經過ROI提取后的酒花圖像能過夠大部分的刪除包含酒桶、酒裝的影響,將圖像處理區(qū)域減小。通過觀察ROI區(qū)域圖像可看出,白酒酒花圖像仍然存在酒花粘連、邊緣不清晰、酒花高光區(qū)域等影響因素,在不同的光照條件所獲取的圖像在亮度方面也是存在差異的。白酒酒花為無色透明狀,在透明酒花中存在嚴重的反光現象,造成了酒花與背景之間的差別不明顯,對白酒酒花輪廓的提取造成了較大的困難。實現白酒酒花與背景的分離,消除酒花中存在的反光現象是實現白酒酒花輪廓檢測的關鍵。
在所獲得的ROI圖像中,圖像的對比度較低,酒花與背景之間的分割不明顯,通過酒花的灰度直方圖進行分析。在圖3(a)中,由于受到陰影以及邊緣不清晰的影響,直方圖中酒花區(qū)域較小且集中在灰度級的偏左部分,相應的對比度也就不明顯;在圖3(b)中由于受到酒花反光以及大部分的白色細花的影響,出現了多個峰值。
在灰度直方圖中,灰度值的范圍變化較小,圖像整體較暗,對比度不強。直方圖均衡化是常用的圖形增強的方法,通過直方圖均衡化,可以拉伸像素強度分布范圍,以此來增強圖像中的對比度,獲得更加明亮的圖像。白酒酒花的直方圖均衡化后的圖像如圖4所示。
在白酒酒花圖片中,由于酒花邊緣相互粘連,造成酒花之間的分界不清淅。通過圖像的腐蝕,可以求得局部最小值,將圖像中的部分粘連進行消除,降低噪聲。通過圖像的腐蝕,得到去除了酒花中大部分高光區(qū)域的圖像,使每個酒花呈現出與邊界相似的灰度級,酒花與背景之間的差別更明顯,每個酒花的輪廓也更加清晰。通過圖5酒花腐蝕圖像可以看出,相鄰酒花之間的邊界更加清晰,酒花中高光區(qū)域產生的影響也得到了改善。
不同的灰度值之間會存在界限,這種界限稱為邊緣,直接通過以上腐蝕圖像進行邊緣檢測,仍然會出現很多噪聲邊界,為了能夠獲得更加清晰的酒花邊界,進行圖像的二值化是獲取更加精確酒花輪廓的關鍵步驟。
圖5 酒花腐蝕圖像
3.2.1 圖像的二值化 圖像二值化將圖像處理成只含有黑色和白色兩種顏色,能夠更好地保留圖像中目標物體的形態(tài)信息,減少圖像中顏色信息與背景信息可能在圖像處理中存在的影響。
圖像二值化,最重要的就是對分割閾值的選取。在灰度平均值二值化方法中,將整幅圖像的灰度平均值作為二值化的閾值;在雙峰法中,是根據直方圖中的兩個最高峰值之間的峰谷最低值進行閾值的設定。這兩種方法進行閾值選取時都具有局限性,會導致圖像部分的邊緣像素丟失,使二值化圖像不能反映真實的圖像信息。
相比之下,圖像二值化方法中的OTSU算法(也稱為大津法或是最大類間方差法)是自適應閾值分割算法,不需要實時監(jiān)督,屬于自動進行最優(yōu)閾值選取的圖像分割法[17-19]。采用該算法利用自適應閾值分割將酒花圖像分割為酒花與背景兩部分。通過計算得到最佳的分割閾值來區(qū)分背景與前景兩類像素,使前景與背景兩類像素的區(qū)分度最大。
運用OTSU算法進行最佳的閾值選取后,通過將圖像中每一個像素點的灰度值與最佳分割閾值相比較,便可以分割出圖像的酒花與背景,圖6為酒花OTSU圖像。
圖6 酒花OTSU圖像
3.2.2 邊緣檢測 在進行邊緣檢測時,常用的有Sobel算子、Laplacian算子、Canny算子等。Sobel算子通過求導計算圖像灰度函數近似梯度;Laplacian算子是n維歐幾里得空間中的一個二階微分算子;Canny邊緣檢測是一種多級邊緣檢測算法,Canny使用變分法,是能夠表示出盡可能多的實際邊緣同時減少噪聲誤報的函數方法,使得到的邊緣與實際邊緣更加接近[20-21]。在進行邊緣檢測前,通常會對圖像進行濾波處理,最常用的濾波方法是高斯濾波[22]。
高斯濾波是一種線性平滑濾波,可以消除噪聲,并且使圖像邊緣更加平滑。高斯濾波的具體操作是用模板中確定的領域內像素的加權平均灰度值去代替模板中心像素點的值。通過對OTSU圖像進行高斯濾波處理,會得到更加平滑的酒花邊緣,使進行邊緣檢測時得到的酒花輪廓更加接近真實酒花輪廓。白酒的酒花高斯濾波圖如圖7所示。
圖7 酒花高斯濾波圖
高斯濾波后進行圖像的邊緣檢測對比,選取最優(yōu)的邊緣檢測算子進行后續(xù)酒花圖像處理。在Sobel算子進行一階導數計算時,內核值的設置會對圖像邊緣提取產生不同的邊緣,并且在內核值選取為1時,圖像沒有進行高斯平滑操作;在Laplacian算子中也存在內核值的選擇,相比之下,在內核值選取為3時,得到的邊緣輪廓圖像較為清晰;在Canny算子中默認內核值大小為3,在此時,所獲得的邊緣輪廓相比其他兩種算子的邊緣更加清晰,如圖8所示。因此,選取Canny算子進行酒花邊緣檢測。
在進行Canny邊緣檢測的圖像已經是經過OTSU算法二值化后并濾波的圖像,在圖片中只存在兩個像素值,不存在傳統的Canny邊緣檢測中需要設定高低閾值的困難,任意的閾值設定均可以實現圖像在此時的準確邊緣檢測,白酒酒花的邊緣檢測如圖9所示。
圖8 邊緣檢測對比圖
圖9 酒花Canny邊緣檢測圖像
3.2.3 輪廓提取 在已經得到的邊緣檢測圖像中,仍然存在部分的由于蒸餾酒飛濺以及酒花高光區(qū)域產生的誤差,但是這些噪聲產生的邊緣輪廓都遠小于實際的大清花與小清花的酒花大小,可以通過篩選實際面積的方法獲取更加清晰明確的酒花圖像。在邊緣輪廓檢測圖像中,可以清晰地看出大清花圖像與小清花圖像之間的差別。在大清花圖像中,大酒花的數量較多,且分部集中;小清花中也存在少量的大酒花,但是數量較少、分布較散。白酒的酒花邊緣輪廓檢測圖像如圖10所示。
圖10 酒花邊緣輪廓檢測圖像
文章主要針對生產現場采集的白酒酒花視頻圖像進行圖像處理,在圖像預處理采用直方圖均衡化和圖像腐蝕進行了酒花圖像中高光噪聲的消除,采用OTSU算法與Canny邊緣檢測算法結合的方法,獲取清晰的酒花邊緣輪廓,對大清花圖像與小清花圖像進行了對比研究。結果表明,采用機器視覺的智能摘酒方法是可行的。在后續(xù)的工作中將進一步開展多等級酒花分類算法研究,并依據酒花圖像建立在一定場景下的酒花分級閾值和判斷標準。通過選擇合適的工業(yè)攝像機采集摘酒過程中的酒花圖像,并進行酒花圖像的實時處理,實現白酒摘酒的智能自動化。