?

基于改進多目標模板匹配在鋁材計數的應用

2024-01-29 00:31高旭升陳曉榮王原野王子旋徐挺
軟件工程 2024年1期
關鍵詞:邊緣檢測

高旭升 陳曉榮 王原野 王子旋 徐挺

關鍵詞:邊緣檢測;模板匹配;直線擬合;圖像金字塔

0 引言(Introduction)

隨著鋁材需求的增加,鋁材的入庫和出庫頻率相應增加,準確統計鋁材數量對庫存調配愈發重要。傳統的統計方法通常依賴人工清點計數,但是人工計數方式不僅效率低下,而且無法確保統計數據的準確性,此外鋁材存放環境復雜、堆積量大,在這樣的環境下采用人工計數方法統計鋁材的入庫和出庫數據存在巨大的安全隱患。

目前,自動化技術[1-2]在各個領域都有應用。在鋁材數量統計方面,采用自動化技術可以提高統計效率和統計結果的準確性,同時降低作業風險。自動化的鋁材數量統計方法使用計算機視覺算法和圖像處理技術實現對鋁材數量的識別和計算,為解決傳統人工計數方式存在的效率低、耗時長及無法保證統計結果準確性的問題提供了較好的方案。

1 相關研究(Related research

CHEN等[3]提出了一種基于深度學習的YOLOv4模型,通過無人機采集圖像對楊梅樹數量進行統計的方法。SOZZI等[4]提出了一種使用YOLO模型對每株葡萄樹進行自動化計數,實現對葡萄產量的估算。CHOWDHURY等[5]提出了一種使用無人機捕獲圖像并結合YOLOv5模型對棕櫚樹進行計數的方法。上述基于深度學習算法的檢測方法需使用大量的圖像進行訓練且訓練結果不能預期。馮書慶等[6]借鑒模板匹配的方法,設計了一種圖像分割掃描及特征匹配的模板檢測算法,提出了一種基于機器視覺的魚類目識別算法。楊俊杰等[7]提出了對圖像金字塔頂層使用Linemod-2D(基于特征匹配的快速目標識別算法)的快速查表法,并結合Otsu(最大類間方差法)算法和自動雙閾值分割法對多目標工件進行快速識別定位及分揀。應捷等[8]運用仿射變換和模板匹配的方法對道路車位進行識別并計數。上述方法雖然不必使用大量圖像進行訓練,但是在面對復雜圖像時,其識別速度較慢、召回率較低。

本文通過基于雙閾值的Sobel邊緣檢測算法提取模板輪廓,針對輪廓可能會出現斷續、凹凸不平等問題,采用直線擬合算法求出最優的模板輪廓,提出一種基于圖像金字塔裁剪的改進圖像金字塔算法,并在此基礎上進行模板匹配,實現對鋁材的準確計數。

2 模板輪廓提?。═emplate contour extraction)

本研究檢測所用圖像均由相機拍攝,采集到的鋁材待測圖像如圖1所示。

檢測所需圖像處理操作如下:首先進行圖像預處理,使用Sobel算法進行邊緣提取、直線擬合,其次采用經過改進的圖像金字塔算法進行多目標模板匹配等操作。測出圖像中每個板材的位置,并將檢測結果顯示在板材對應位置。圖像處理流程圖如圖2所示。

2.1 圖像預處理

為簡化圖像處理過程,需要將采集到的圖像轉成灰度圖像,減少計算量。采集的圖像易受到光照、曝光等因素的影響,容易出現局部模糊、細節丟失等情況,因此需對圖像進行細節增強。

為 了增強圖像細節,經多組實驗對比,采用導向濾波[9]對圖像進行增強,平滑圖像邊緣的同時,圖像的整體細節也可以得到很好的控制;實現原理如公式(1)和公式(2)所示:

其中:pi 為輸入圖像,Ii 為導向圖,qi 為濾波后的輸出圖像,系數ak 和bk 是對導向圖Ii 進行線性變換的參數,ni 可以看成為輸入圖像的紋理和噪聲。

原圖像如圖3(a)所示,預處理后的結果圖像如圖3(b)所示。通過圖3可以觀察到,通過導向濾波處理后的圖像對比原圖像,邊緣更加平滑、細節更加清晰。

2.2 模板輪廓預處理

對圖像進行預處理后,需要選擇合適的模板進行模板匹配,選擇的模板通過圖像預處理后如圖4(a)所示。本文通過Sobel邊緣檢測算法對預處理后的模板圖像進行邊緣提取。Sobel邊緣檢測算法的優點是具有較高的抗噪聲和抗干擾能力,但在處理復雜背景的圖像時,無法嚴格區分背景和所需提取的圖像,可能導致提取的圖像邊緣輪廓模糊[10]。因此,本文引入滯后閾值法,用于優化Sobel算法對邊緣輪廓的提取[11]。該方法設置高低閾值各一個,并通過遍歷像素的方法進行比對。高于高閾值的像素點,認為是強邊緣,予以保留;低于低閾值的邊緣點,認為是弱邊緣,予以舍棄;對于介于高低閾值的像素點,如果該像素點連接強邊緣時,予以保留,如果連接到弱邊緣時,予以舍棄。對經過預處理后的模板圖像,運用Sobel邊緣檢測算法提取的模板輪廓如圖4(b)所示。

使用Sobel邊緣檢測算法提取的模板輪廓并不適用于直接匹配模板。如圖4(b)所示,Sobel邊緣檢測算法檢測到的邊緣可能會出現斷斷續續、凹凸不平的問題,因此如果直接使用該模板輪廓進行匹配,會產生許多錯誤匹配,并且召回率較低,無法滿足實際應用的要求。為了優化模板輪廓,需要對Sobel算子提取的模板輪廓進行直線擬合。

2.3 直線擬合算法

由于最小二乘法[12]對直線擬合是將時間序列中各項數據予以同等對待,直接使用最小二乘法對模板輪廓進行直線擬合,最終得到的結果并不理想。這是因為所要得到的模板輪廓不是一條簡單的直線,而是對模板圖像最貼合的邊緣?;诩訖嘧钚《朔ǖ臄M合,通過對臨近的像素點賦予較高的權重,對較遠的像素點給予較低的權重,因此能得到更真實的模板圖像輪廓[13]。加權最小二乘法采用指數權數Wn-1,0

對圖4(b)進行直線擬合后,得到的模板輪廓如圖5所示。從圖5中可以清晰地看到直線擬合后的模板輪廓與真實的模板輪廓非常接近,相比Sobel算法提取的模板輪廓更加準確。圖5可以作為模板輪廓進行匹配操作。

3 模板匹配(Template matching)

模板匹配的原理是將一個預定義的模板或樣本圖像與目標圖像進行比較,通過計算它們之間的相似度或差異度確定匹配的位置。傳統的模板匹配方法采用遍歷的方式,在原圖像上從左到右、從上到下以像素為單位采用滑動方式進行匹配。在每個像素位置,將原圖像中與模板圖像大小相同的區域截取出來,并進行像素值比較運算,找到最佳匹配位置或最高相似度得分[14]。

由于傳統模板匹配方法是采用遍歷的方式進行搜索,因此存在匹配時間長、內存消耗高等缺陷,不適用于大規模檢測計算。本文引入圖像金字塔算法對模板匹配進行加速。

3.1 圖像金字塔算法

圖像金字塔算法[15]是一種多尺度圖像處理技術,用于在不同分辨率下對圖像進行分析和處理;它以金字塔的形式表示圖像的多個尺度,每個尺度對應圖像的不同分辨率,通常包括兩個主要步驟,通過重復進行向下采樣和向上采樣,可以構建圖像金字塔。每個金字塔級別都對應于原始圖像的不同分辨率。常見的圖像金字塔算法有高斯金字塔算法和拉普拉斯金字塔算法。

如圖6所示,金字塔底部為高分辨率圖像,頂部為低分辨率圖像,將一層一層的圖像比喻成金字塔,層級越高,則圖像越小、分辨率越低。

將圖像金字塔和傳統模板匹配方法相結合,先使用圖像金字塔算法生成一系列不同尺度的圖像,然后將模板放在金字塔最高級別(即最高層)進行匹配。在當前級別的金字塔中找到一個匹配位置后,可以將該匹配結果傳遞到較低級別的金字塔中,作為下一級別的初始估計。重復以上步驟,在下一級別的金字塔中繼續匹配過程,直到達到金字塔的最低級別。通過這種迭代的方式,可以在不同尺度的圖像中搜索匹配,從而提高匹配的效率,有效地解決傳統模板匹配效率較低的問題。本文采用高斯金字塔算法對原圖像進行連續的下采樣生成用于模板匹配的金字塔。

3.2 改進的圖像金子塔算法

采用基于圖像金字塔的算法對模板匹配進行加速,雖然在匹配速度上已經有了很大的提高,但是未能滿足實際應用的要求。因此,本文提出了一種更高效的圖像金字塔算法,具體步驟如下。

(1)創建圖像金字塔:使用高斯圖像金字塔算法生成不同分辨率的圖像金字塔,其中包括多個層級。

(2)確定中間層級:根據匹配需求和圖像金字塔的層級數,選擇適當的中間層級作為匹配的目標層級。

(3)在中間層級進行搜索:使用圖像金字塔裁剪算法,在選定的中間層級上進行匹配搜索。具體步驟如下:①計算金字塔尺寸:根據輸入的圖像金字塔,由函數確定金字塔的總層數以及每個層級的尺寸。②確定層級范圍:根據輸入的起始層級和結束層級,確定需要保留的層級范圍。③獲取指定層級的圖像域:由函數根據指定的層級從金字塔中獲取對應的圖像域。④裁剪圖像域:對金字塔中的每個層級的圖像域進行裁剪,保留指定層級范圍內的圖像域。裁剪操作可以調整圖像域的尺寸,使其符合指定范圍。⑤返回結果:由函數返回一個新的金字塔,其中僅包含在指定層級范圍內的圖像域。

(4)結果映射回原始圖像:根據中間層級的匹配結果,將結果映射回原始圖像的坐標系統,這樣可以得到原始圖像上的匹配結果,包括每個匹配的中心坐標和偏移角度。

4 實驗和結果(Experiments and results)

為了對本文提出的改進的圖像金字塔算法的實際效率進行驗證,使用同一圖像數據集對本文提出的算法、傳統方法及圖像金字塔算法進行多組實驗,對各類算法的耗時進行統計,不同算法的耗時結果如表1所示。

根據表1中的數據可以得出以下結論:在相同的實驗條件下,傳統算法的執行時間較長,而圖像金字塔算法極大地提高了傳統算法的效率。本文提出的算法在圖像金字塔算法的基礎上進行了改進,取得了顯著的效果。

為了驗證本文所提算法的有效性,進行多組實驗,部分實驗結果展示如圖7和圖8所示,檢測結果用加粗線條表示。

如圖7所示,鋁材1的實際數量為76個,檢測結果為76個;如圖8所示,鋁材2的實際數量為105個,檢測結果為99個。

為了對算法的有效性進行判斷,根據實際應用中的幾個關鍵指標進行數據采集,記錄的實驗數據如表2所示。

根據表2中的數據可以得出以下結論:本文提出的改進算法在匹配耗時及召回率方面均有良好的表現,平均檢測準確率達到98.4%,匹配效率相較于傳統圖像金字塔算法提升了37.0%,漏檢率和誤檢率都在可接受的誤差范圍內,本文所提算法滿足實際應用要求。

5 結論(Conclusion)

本文采用基于雙閾值的Sobel邊緣檢測算法進行模板邊緣的提取,結合基于權重的直線擬合方法對模板輪廓進行優化處理,提出改進的圖像金字塔算法對入庫鋁材進行計數檢測。實驗結果表明,該算法具有召回率高、識別效率高等特點,可滿足工業生產的實際檢測要求。但是,本文提出的檢測方法在面對目標被遮擋或堆疊的情況時存在漏檢和誤檢的情況。為了解決這些問題,希望未來的研究可以利用目標周圍的上下文信息輔助檢測過程,例如通過對目標與背景之間的關系或目標與其他目標之間的關聯進行建模,提高檢測的魯棒性,減少誤檢和漏檢情況。

猜你喜歡
邊緣檢測
基于數學形態學的一種改進CO2焊熔池圖像邊緣檢測算法
離散過程神經網絡和CGA相融合的邊緣檢測
基于圖像的物體尺寸測量算法研究
唐卡圖像邊緣提取
水下大壩裂縫圖像分割方法研究 
基于多算法融合的多車牌定位方法研究
基于高精度星敏感器的星圖降噪研究
基于灰度的圖像邊緣檢測與匹配算法的研究
基于TMS320的跑道異物監測系統
基于邊緣檢測和色彩空間的混合車牌定位算法
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合