












摘 要:針對像素較低的攝像頭對條形碼進行拍攝識別時,需要靠近條形碼并保持較久的時間,且存在一定的掃描結果錯誤率等問題,利用卷積神經網絡技術SRCNN對單幅低清晰度條形碼圖片進行超分辨率重建,將低分辨率圖片轉換為高分辨率圖片。通過實驗驗證,SRCNN相對于傳統超分方法,在圖像處理和評價指標方面取得了更好的效果,實現了條形碼圖像的超分辨率重建,獲得了更為清晰的圖片。
關鍵詞:條形碼圖像;超分辨率重建;雙三次插值法;卷積神經網絡;SRCNN;圖像處理
中圖分類號:TP391.41 文獻標識碼:A 文章編號:2095-1302(2024)03-0-03
0 引 言
在無人監督的藥品庫進行藥品抓取任務中,通常以機械臂抓取為首選,搭配機器視覺進行手眼標定抓取。由于成像設備的局限性、藥品盒標識條形碼小,得到的圖像分辨率較低,不利于藥品的識別。提高條形碼圖像的分辨率,不僅便于提高機械臂抓取藥品的準確率,也對生產生活中條形碼的識別有一定的幫助。
為提高圖像分辨率,常采用圖像超分辨率(SR)法,即將圖像從低分辨率恢復到高分辨率。傳統圖像超分辨率方法常用雙三次插值(BiCubic)法、基于稀疏表示法[1-3]、基于局部嵌入法[4-6]、基于樣例(Example-Based)法[7],這些經典的方法在提高圖像分辨率上取得了一定的效果,但均是在插值過程中加入銳化的流程,本質上是通過人工觀察、總結和試驗得出來的方法,具有一定的局限性,在處理條形碼圖像后常常出現模糊、銳化過度的現象。
針對以上傳統超分方法存在的問題,本文提出基于卷積神經網絡(CNN)的超分辨率卷積神經網絡(SRCNN)[8]的條形碼超分辨率重建方法。SRCNN是基于深度學習,旨在實現一種端對端的網絡模型,它具有結構簡單且失真度低的特點,其被用于將低分辨率的圖像轉換為高分辨圖像,證明深度學習在超分領域的應用可以超越傳統的插值等算法,取得較高的表現力和良好的處理效果。
結合圖像亮度增強技術、傳統超分方法中的雙三次插值法以及零填充技術,對條形碼圖像進行增亮、放大;然后通過加入零填充的SRCNN,實現低分辨率到高分辨率的非線性映射,得到相較于傳統超分方法處理后效果更好的條形碼圖像及更高的PSNR值。
1 SRCNN模型分析
1.1 數據預處理
在將圖像輸入SRCNN前,需要進行圖像的預處理:將獲得的高分辨率圖像X通過采樣處理成低分辨率圖像Y1,再使用雙三次(BiCubic)插值法將低分辨率圖像Y1放大至與輸出高分辨率圖片尺寸相同的低分辨率圖像Y,如圖1所示。
1.2 SRCNN模型結構
SRCNN的特點是僅使用三層網絡,就取得相較于傳統超分方法更好的結果,能夠解決圖像重建速度慢、計算量大的問題,其三層卷積的結構可以被解釋為:圖像子塊的提取和特征表示、特征矩陣非線性映射和最終的特征重建。接著通過三層卷積網絡擬合非線性映射,最后重建并輸出高分辨率圖像結果。其結構示意圖如圖2所示。
由于SRCNN的特性,三個部分的操作均可使用卷積完成。因此,雖然針對模型結構的解釋與傳統方法類似,但SRCNN卻在數學上擁有更加簡單的表達,以下為每層的操作內容:
(1)特征提取層
從輸入的低分辨率圖像中提取多個圖像塊,通過CNN以及ReLU層將圖像塊提取成向量,令所得的向量組成特征矩陣F1(Y):
(1)
式中:W1、B1分別是卷積核的參數和偏置量;窗口大小為f1×f1;通道數為Y,有n1個濾波器。
(2)非線性映射層
將特征矩陣再次使用卷積核過濾及ReLU層激活實現非線性映射,變成另一組維度不同的特征矩陣F2(Y),加深網絡層數,表達式為:
(2)
式中:W2、B2分別是卷積核的參數和偏置量;采用1×1的卷積核;通道數為n1,有n2個濾波器。
在該層后可以繼續增加非線性層,但在SRCNN構建時為推出一種通用性SR框架,所以選擇只有一層非線性層的網絡模型。
(3)圖像重建層
本層借鑒傳統超分方法的插值法,不使用ReLU層,直接對圖像局部進行平均化,使用反卷積的方式做圖像重建,將非線性層得到的特征矩陣還原為高分辨圖像,表達式為:
(3)
式中,卷積核大小為n2×c×f3×f3。
1.3 加入零填充的SRCNN
在SRCNN中,通常會使用過濾器(卷積核)來實現圖像的卷積,從而實現圖像的降維,即圖像縮小;當使用多個過濾器實現多層的卷積,那么輸出圖像會持續縮小,很容易造成圖像邊緣有意義的信息丟失。
因此,為更好地實現圖像超分辨率重建效果,本文在卷積層中加入零填充(zero-padding)[9-10],以保持輸入和輸出的空間維度相同,在水平軸和垂直軸的開始和結束處都添加0,即在卷積的時候,降低圖像變小的速度,并防止圖像邊緣的信息丟失。加入零填充的SCRNN操作示意圖如圖3所示。
使用零填充時,對輸出特征尺寸大小的影響通過式(4)計算。
(4)
式中:x為輸出特征圖的邊長;a為輸入邊長;b為步長,不能整除時向上取整。
2 實驗結果與分析
實驗在使用Python3.9、PyTorch框架及具有以下規格的計算機上運行:Windows 10、CPU采用AMD Ryzen 74800H with Radeon Graphics、GPU采用NVIDIA GeForce GTX 1650、16 GB RAM。
2.1 數據集及評價指標
(1)數據集
訓練集采用91-image作為SRCNN的實驗數據集,模糊條形碼圖像集作為測試數據集,數據集在訓練或測試前會進行修正處理,過程主要為高斯去噪、亮度提高、輻射校正和幾何校正。
(2)SRCNN參數配置
模型的參數設置為:f1=9、f2=1、f3=5、n1=64、n2=32,SRCNN一共3層,前兩層配置的學習率為10-4,最后一層的學習率配置為10-5,這樣可以讓最后一層取得較小的學習率,有利于網絡收斂。
(3)損失函數
在實驗中,選取MSE用作損失函數,該統計參數是預測數據和原始數據對應點誤差的平方和的均值,表達式為:
(5)
式中:Y和X分別表示對應的低分辨率(LR)圖像和高分辨率(HR)圖像;i表示不同的通道;θ={Wi, Bi}表示網絡的卷積參數;F(Yi; θ)表示網絡的輸入結果;n表示訓練樣本的數量。
(4)評價指標
峰值信噪比(PSNR)表示信號的最大可能功率與影響其精度的噪聲之比,選取PSNR為評價指標,表達式為:
(6)
式中,MAX2為圖片可能的最大像素值。
2.2 實驗結果
采用像素為320×340的攝像頭拍攝多種藥品條形碼,得到大量的低像素下較模糊的條形碼圖片,分別使用傳統超分方法下的BiCubic法和加入零填充的SRCNN進行處理,取數據集中藥品蒙脫石散的條形碼圖像展示,如圖4、圖5所示。可以看到SRCNN相對于傳統超分BiCubic法在超分辨率重建效果上有直觀的提升,能夠體現更豐富的細節。
2.3 實驗分析
針對圖4和圖5,在不同條形碼圖像輸入規模上,使用評價指標公式(6)對其進行評價,可得到表1。由表1可以看出,在2、3、4三種圖像規模下, SRCNN都具有更好的重構效果,擁有更高的PSNR值。
同時,在SRCNN處理條形碼圖像時可以測得模型的處理時間,見表2所列。由表1、表2可以發現,SRCNN在處理速度方面仍然不夠理想,在圖像重建上沒有特別明顯的效果,主要是存在兩個固有的限制因素:首先,在圖像預處理時使用雙三次插值法將LR圖像放大至所需圖像的尺寸大小時,其計算復雜度為放大后圖像的空間尺寸的平方;其次,在非線性映射層進行非線性映射時,采用更大的映射層可以提高映射的圖像精準度,但運行時間也會相對增加。
因此,可以考慮采取相應的措施進行后續的改進:使用反卷積層在最后進行升采樣,以代替雙三次插值法;在非線性映射層前后分別添加收縮層和擴展層。改進后的SRCNN即為緊湊的沙漏型結構FSRCNN,它能夠達到SRCNN處理速度的40倍以及更好的圖像恢復效果,但SRCNN模型更為簡單,在低分辨率藥品條形碼上進行超分辨率重建的處理效果已經可以達到預期,能明顯提高識別條形碼的速度和掃描讀取的準確率。
3 結 語
針對成像設備的低分辨率的條形碼圖像,本文提出基于SRCNN對條形碼圖像進行超分辨率重建,通過圖像的預處理和SRCNN,并加入零填充操作,將低分辨率圖像非線性映射為高分辨率圖像,得到更高的PSNR值和更清晰的圖像,保證條形碼在識別時的正確率和識別速度,提高了信息傳遞的速率和可靠度。
注:本文通訊作者為袁小平。
參考文獻
[1] YANG J C,WRIGHT J,HUANG T,et al. Image super-resolution as sparse representation of raw image patches [C]// 2008 IEEE Conference on Computer Vision and Pattern Recognition. Anchorage,AK,USA:IEEE,2008:1-8.
[2]朱彥穎,賴芝岑,李凡,等.基于人臉識別的實驗室考勤系統[J].物聯網技術,2023,13(1):14-16.
[3] ADLER A,HEL-OR Y,ELAD M. A shrinkage learning approach for single image super-resolution with overcomplete representations [M]// DANIILIDIS K,MARAGOS P,PARAGIOS N. Computer Vision—ECCV 2010 Lecture Notes in Computer Science. Berlin,Heidelber:Springer,2010:622-635.
[4]李紅巖,梁紫璇,趙峰,等.圖像識別智能門禁[J].物聯網技術,2023,13(1):104-106.
[5] GAO X,ZHANG K,TAO D,et al. Image super-resolution with sparse neighbor embedding [J]. IEEE transactions on image processing,2012,21(7):3194-3205.
[6] CHANG H,YEUNG D Y,XIONG Y M. Super-resolution through neighbor embedding [C]// Proceedings of the 2004 IEEE Computer Society Conference on Computer Vision and Pattern Recognition.Washington,DC,USA:IEEE,2004.
[7] ZHANG Y F,FAN Q L,BAO F X,et al. Single-image super-resolution based on rational fractal interpolation [J]. IEEE transactions on image processing,2018,27(8):3782-3797.
[8] DONG C,LOY C C,HE K,et al. Image super-resolution using deep convolutional networks [J]. IEEE transactions on pattern analysis and machine intelligence,2016,38(2):295-307.
[9]呂響,張書玉,宋英楠,等.基于深度學習下的卷積神經網絡參數學習[J].渤海大學學報(自然科學版),2021,42(4):369-375.
[10]胡伏原,李林燕,尚欣茹,等.基于卷積神經網絡的目標檢測算法綜述[J].蘇州科技大學學報(自然科學版),2020,37(2):1-10.
作者簡介:孫天健(2002—),男,本科生,研究方向為機器視覺。
袁小平(1966—),男,博士,教授,研究方向為物聯網技術、機器學習、智能硬件加速。
房鴻超(2001—),男,本科生,研究方向為圖像處理。
陳思宇(2002—),男,本科生,研究方向為機器視覺。