江俊佳,沈建新,韓 鵬
(南京航空航天大學 機電學院,南京 210016)
隨著生活水平的不斷提高,人們對眼睛的保護意識越來越強.裂隙燈顯微鏡,如圖1,作為醫(yī)院檢查眼睛病狀最重要的設備,醫(yī)院對裂隙燈顯微鏡成像質量的要求也越來越高.而裂隙燈顯微鏡中對最終成像質量起關鍵性作用的的結構就是轉鼓,如圖2.
在傳統(tǒng)轉鼓裝校平臺上,如圖3,主要依靠工人師傅主觀判斷轉鼓在顯示器上所呈現(xiàn)圖像的清晰度來評價轉鼓裝校的優(yōu)劣,如圖4.由于每個工人師傅的主觀感受不一,長時間工作導致的視覺疲勞,傳統(tǒng)方法存在著隨機性、不準確性、效率低下、有損視力等一系列問題,本文提出一種基于改進的清晰度評價算法的裂隙燈轉鼓數(shù)字化裝校方法,以實現(xiàn)依靠CCD 相機拍攝轉鼓圖像后,自動進行圖像清晰度判別,從而反映每組鏡片裝校的優(yōu)劣.
圖1 裂隙燈顯微鏡
圖2 轉鼓
圖3 傳統(tǒng)裝校平臺
裂隙燈轉鼓數(shù)字化裝校方法的難點在于選擇合適圖像預處理方式,篩選出一種適合于轉鼓圖像使用的清晰度評價算法,并設計一套軟件對轉鼓圖像進行實時評價.以求在生產線上能夠更加快速,準確的裝校裂隙燈轉鼓,提高裂隙燈質量,提升產品競爭力[1].
圖4 傳統(tǒng)圖像評價工具
相較于裝校不合格轉鼓,合格的轉鼓呈現(xiàn)的圖像細節(jié)更豐富,在空域表現(xiàn)為相鄰像素的灰度值變化較大,在頻域表現(xiàn)為頻譜的高頻分量多,對比度也更加強烈.
常用的圖像清晰度評價算法主要可分為3 類[2-5]:① 全參考質量評價(Full Reference QA),將需要檢測的圖像和標準的參考圖像進行比較,從而得到清晰度評價結果,此類算法有PSNR、SSIM、MSSIM、IFC、VIF、FSIM 等算法;② 弱參考質量評價(Reduced Reference QA),先從標準的參考圖像中得到一些有用的特征信息,再利用這些特征信息對需要檢測的圖像清晰度進行計算評價;③ 無參考質量評價(No Reference QA),不需要任何標準參考圖像的輔助,只依靠算法本身獨立完成對需要檢測圖像的清晰度的評價.無參考圖像質量評價算法在計算評價時,只分析自身圖像的特點,因此不需要先獲取無失真的標準參考圖像.
無參考圖像清晰度評價方法主要包括空域算法、頻域算法和統(tǒng)計學算法三類.
在空域算法中,清晰的圖像相比于模糊的圖像表現(xiàn)為邊緣和細節(jié)更加清晰,邊緣相鄰像素的特征值(如灰度)變化較大,所以主要依據(jù)邊緣檢測算子,通過計算圖像的灰度梯度差來表征待測圖像的清晰程度.
(1) Brenner 算法
傳統(tǒng)Brenner 算法[6,7]以Brenner 算子作為基礎,該算法只計算相差兩個像素單元的兩個圖像像素的灰度差,由于需要對圖像輪廓的貢獻進行增強,所以對差值進行了平方處理,從而使用差值平方的和作為圖像清晰度的評價值.一幅高寬為M×N的灰度圖像(下同)的Brenner 算法的定義為:
式中,(f(x+2,y)-f(x,y)2)(自定義閾值),f(x,y)是像素點(x,y)的灰度值,FBrenner為圖像清晰度計算結果(下同).
根據(jù)Brenner 算法的定義,裝校合格的轉鼓顯示的圖像具有最大的計算值.在實際的清晰度評價軟件應用中,Brenner 算法只統(tǒng)計大于一定閾值的灰度差,而舍棄掉小于閾值的灰度差.因此,閾值選取是否合適直接關系到該算法的準確性,一個好的閾值可以很準確地評價圖像的清晰度.如果閾值選取的很低,則Brenner 算子能夠計算的像素越多,計算的結果也就越容易受到周圍噪聲的影響.與此相反,如果閾值選取的太高,則會導致圖像的細節(jié)遺失過多,從而降低清晰度評價算法的計算準確性.
(2) Tenengrad 算法
Tenengrad 算法[8-10]由Tenenbaum 提出,是一種常用的圖像清晰度評價方法.在處理過程中,該算法使用Sobel 算子提取圖像水平方向和豎直方向的梯度值.并將處理后的梯度值之和作為圖像清晰度評價值.其定義如下:
式中,G(x,y)>T,Gx和Gy分別是Sobel 算子在像素點(x,y) 處的水平方向和豎直方向的卷積.使用以下的Sobel 算子模板:
Tenengrad 算法具有單峰性好、可靠性高等特點.
(3) Laplacian 算法
Laplacian 算法利用Laplacian 算子對圖像進行模板卷積,從而得到圖像的高頻分量,然后對圖像的高頻分量求和,用高頻分量之和作為圖像清晰度評價值.其定義如下:
式中,G(x,y)>T,G(x,y)是Laplacian 算子在像素點(x,y)處的卷積.使用以下Laplacian 算子模板:
(4) SMD 算法
SMD (Sum of Modulus of gray Difference,相鄰像素灰度方差法,簡稱灰度方差)算法[11],對像素點(x,y)及其鄰近點的灰度作差分運算,用圖像灰度差分絕對值之和作為圖像清晰度評價值.其定義為:
SMD 算法具有較好的計算性能,但同時,該算法的缺點也非常明顯,就是在靠近焦點的附近的時候,算法的靈敏度不是很高,也就是說SMD 算法在圖像最清晰度的附近計算結果過于平坦,變化不夠明顯,從而導致聚焦精度難以提高[12].
在頻域算法中,清晰圖像相比于模糊圖像表現(xiàn)為圖像的高頻分量比例更大,對比度也更強烈,可以利用傅里葉變換、小波變換等變換方法提取待測圖像的不同頻率成分,計算高頻成分所占比例來表征圖像清晰程度[13].具體處理過程:利用傅立葉變換對轉鼓圖像的頻率進行分析,即對圖像進行FFT 變換,其定義如下:
式中,real和imaginary分別表示圖像變換后的實部和虛部,計算結果越大表征圖像的清晰度越好.
統(tǒng)計學算法主要利用統(tǒng)計學思想,以信息量表征圖像清晰程度.基于統(tǒng)計特征的熵函數(shù)[14]是衡量圖像信息豐富程度的一個重要指標,根據(jù) Shannon 信息論,熵最大時信息量最多,則FShannon越大則圖像越清晰,并定義如下:
式中,pi是圖像中灰度值為i的像素出現(xiàn)的頻率,L為圖像的灰度級總數(shù)(常取256 級).熵函數(shù)靈敏度不高,在圖像內容不同的情況下容易出現(xiàn)與真實情況相反的結果.
前三類算法能夠滿足對特定一類圖像的清晰度的評價,但是沒有和人眼視覺系統(tǒng)(Human Visual System HVS)相結合,所以存在一定的局限性.近年來,隨著人們對于HVS 特性的進一步研究和深入了解,不斷引入新的圖像清晰度評價方式,如基于點銳度的清晰度算法(EVA):
EVA 算法[15-17]由徐貴力等人提出,是一種基于邊緣銳度的圖像清晰度評價算法.該算法只對圖像的特定邊緣區(qū)域進行統(tǒng)計,且在計算前需要人工選定邊緣區(qū)域,不便實現(xiàn)程序運算自動化.因此王鴻南等人提出了改進的EVA 算法:① 將特定邊緣梯度的計算改為逐個像素領域梯度的計算;② 對像素8 領域的灰度變化進行距離加權,水平垂直方向為1,45°和135°為1/.其定義如下:
改進的算法能對圖像的整體進行評價,容易使程序實現(xiàn)自動化.
空域方法計算簡單,實現(xiàn)方便,應用廣泛,但抗噪聲性能較差,且易受光照條件和背景干擾;頻域方法靈敏度高,但計算量大,一般較少采用;統(tǒng)計學方法具有一定的抗噪性,但準確率低,靈敏度低.在本文中選用4 種空域方法和EVA 算法進行實驗對比研究.
一個好的清晰度評價函數(shù)應該滿足4 個要求[18,19]:① 單峰性是指只有一個極值,不能出現(xiàn)其他局部極值;② 無偏性是指在光學系統(tǒng)的正焦位置,圖像清晰度評價值是調焦曲線的最大值,也就是最大值位置恰好對應系統(tǒng)正焦位置,也就是計算出來的清晰度曲線要與圖像的清晰度變化事實相吻合;③ 靈敏性是指能夠區(qū)分開輕微離焦狀態(tài),并且評價值變化梯度大使系統(tǒng)容易得到真實的焦平面,即對不同程度的模糊圖片,清晰度評價結果要求有一定的差別;④ 實時性是指運算時間小于一定閾值,滿足實際生產需要.
其中單峰性和無偏性決定了評價函數(shù)的正確性,靈敏性決定了評價函數(shù)的準確性,實時性決定了該程序是否能夠適用于工廠中的實際生產線.
在實驗過程中CCD 相機獲取的圖像由于轉鼓倍率的不斷改變和現(xiàn)實裝校過程中光照條件的非人為改變,圖像的比度和節(jié)會發(fā)生變化,所以需要考慮不同放大倍率和不同光照條件對算法的影響;而獲取的圖像內容不變,均是十字刻線,且獲取的圖像尺寸大小不變(設定為1280×960),故不需要考慮算法計算結果與圖像內容,圖像尺寸的關系.本文設計了3 組實驗用于比較選取的五種算法對4 個要求的符合程度.
實驗中使用的硬件和軟件如下:德國IDS 公司生產的型號為UI148xLE-C 的工業(yè)相機,日本Computar公司生產的焦距為16 mm、最大光圈為F1.4、像場2/3 英寸的工業(yè)鏡頭;使用Visual Studio2013 中的OPENCV3.0.0 庫進行開發(fā);計算機硬件配置:處理器Core(TM)i5-7500 主頻 3.40 GHz;內存DDR4 16 GB;顯卡NVIDIA GeFoRce GTX1060 3 G.
實驗平臺采用IDS 相機作為光電接收器件,使用LED 光源、光學透鏡、導軌、光學鏡座等光學元件,搭建了如圖5的轉鼓裝校平臺.
圖5 轉鼓裝校平臺
為了對比不同算法的單峰性、無偏性、靈敏性和實時性,實驗1 為:在同一放大倍率下,同一光照條件下,調整CCD 相機焦距,得到轉鼓不同焦距下不同清晰度的圖像,如圖6.然后運行程序對5 幅圖像進行單獨評價,將5 種算法計算得出的結果在不同尺度下進行歸一化,如圖7.算法運行時間如表1.
圖7的橫坐標表示不同焦距位置拍攝圖像的序號,聚焦位置由1 到5 人眼的主觀感受逐漸清晰,主觀評價逐漸提高,縱坐標表示不同算法下清晰度的計算結果(下同).實驗所選取的5 種清晰度算法的計算結果都只在聚焦位置5 處達到極值,滿足單峰性要求;轉鼓圖像清晰度計算結果與人眼的主觀感受的圖像清晰度變化一致,滿足無偏性要求;除Tenengrad 算法外,其余算法計算結果均不相同,且區(qū)分度較好,滿足靈敏性要求;表1為5 種清晰度評價函數(shù)在5 個聚焦位置進行50 組實驗的平均運行時間,從表1可以看出每個算法對單張圖片的運算時間都控制在1 秒以內,所以能夠滿足實時性要求.
圖6 不同焦距圖像
圖7 不同焦距圖像計算結果
為了比較5 種算法計算結果與圖像放大倍率的無關性,實驗2 為:在同一光照條件下,改變裂隙燈轉鼓的放大倍率并保持不變,重復實驗1 中5 個焦距位置,得到不同清晰度的圖像,如圖8.然后運行程序對5 幅圖像進行單獨評價,將5 種算法計算得出的結果在不同尺度下進行歸一化,如圖9.
表1 不同算法單次運行時間(單位:ms)
圖8 放大圖像
圖9 放大圖像計算結果
對于實驗2,人眼的主觀感受由聚焦位置1 到聚焦位置5,清晰度依次上升.實驗所選取的5 種清晰度算法的計算結果都只在聚焦位置5 處達到極值,滿足單峰性要求;轉鼓圖像清晰度計算結果與人眼的主觀感受的圖像清晰度變化一致,滿足無偏性要求;除Tenengrad 算法外,其余算法計算結果均不相同,且區(qū)分度較好,滿足靈敏性要求;單次運行時間與表1相差不大,每個算法對單張圖片的運算時間都控制在1 秒以內,所以能夠滿足實時性要求.
為了比較5 種算法計算結果與圖像的光照條件,即圖像亮度的無關性,實驗3 為:在同一放大倍率下,將光源亮度改變并保持不變,重復實驗1 中5 個焦距位置,得到不同清晰度的圖像,如圖10.然后將計算得出的結果在不同尺度下進行歸一化,如圖11.
圖10 亮度增強圖像
對于實驗3,人眼的主觀感受由聚焦位置1 到聚焦位置5,清晰度依次上升.實驗結果表明選取的算法都只在聚焦位置5 處達到極值,滿足單峰性要求;轉鼓圖像清晰度計算結果與人眼的主觀感受的圖像清晰度變化一致,滿足無偏性要求;除Tenengrad 算法外,其余算法計算結果均不相同,且區(qū)分度較好,滿足靈敏性要求;單次運行時間與表1相差不大,每個算法對單張圖片的運算時間都控制在1 秒以內,所以能夠滿足實時性要求.
圖11 亮度增強圖像計算結果
本文為了解決在傳統(tǒng)裂隙燈轉鼓裝校生產線上,由于人眼評價存在主觀性和隨機性等問題.對當前較為常用的、具有代表性的幾種基于空域的清晰度評價算法的原理定義和特點進行了詳細的描述,并搭建實驗平臺,設計圖像處理軟件,通過3 組實驗綜合分析和對比了這算法對實際生產線上轉鼓圖像的適用情況.結果表明除Tenengrad 算法在靈敏性方面不能滿足實際要求外,其余4 種算法都能滿足要求.而4 種滿足要求的算法當中,又因為EVA 算法在不同光照條件、不同放大倍率條件下所表現(xiàn)出更高的靈敏性,能夠區(qū)分輕微離焦狀態(tài),更適合作為轉鼓數(shù)字化裝校系統(tǒng)圖像清晰度評價算法而采用.本文的研究可運用于實際的裂隙燈轉鼓裝校生產線,以提高轉鼓的裝校質量.