王羅斌, 萬 強, 韋利明, 岳動華, 賈 東
(中國工程物理研究院 總體工程研究所, 四川 綿陽 621999)
數字圖像相關(Digital image correlation,DIC)方法,通過采集物體變形前后的圖像,再利用圖像算法進行計算,從而得到位移和應變信息.與傳統力學測量方法相比,該方法具有以下特點:可實現非接觸的全場測量;只需要光學采集系統和控制計算機,對實驗環境要求較低;圖像采集和處理程序可以固定,容易實現測量自動化[1].此外,該方法與掃描電鏡等顯微設備相結合,還可在微納尺度下實現對材料力學性能的測量[2-5].DIC方法的關鍵是在變形前后的圖像中找到最匹配的圖像子區,這就需要按照一定的方法進行相關運算和搜索.相關搜索是通過計算變形前后圖像子區的相關系數來實現,而相關系數則由相關函數來定義.在傳統的相關函數中,圖像子區每個像素點對計算結果的貢獻是一樣的,這與實際情況會有所差別.對此,文獻[6]采用帶線性權重因子的相關函數來計算變形前后圖像子區的相關系數.但該方法線性權重因子函數在計算子區的邊緣像素點上的權重取值較低,對邊緣區域像素點的影響較大,這可能導致計算結果出現偏差.在此基礎上,本研究提出一種帶高斯函數權重因子的相關函數,并將其與線性權重因子的相關函數和傳統相關函數的計算結果進行了比較,同時,討論了影響算法計算性能的因素,相關結論可為DIC方法性能的改進和工程應用提供有用參考.
DIC方法采用攝影機采集物體變形前后的圖像,然后通過相關的算法尋找變形前后最匹配的圖像子區,從而求得被測物體表面各點的位移.如圖1所示,在變形前灰度值分布為f(x,y)的圖像(又稱參考圖像)中,取以某待求點A(x,y)為中心的(2M+1)×(2M+1)像素點計算子區(又稱為參考圖像子區),在變形后灰度值分布g(x′,y′)的圖像中,通過相關函數計算相關系數,并按照一定的搜索方法,獲得相關系數取極值的以A′(x′,y′)為中心的(2M+1)×(2M+1)區域,由此得到了參考圖像子區中心點A(x,y)的像素位移(u,v).

圖1變形前參考圖像與變形后圖像子區示意圖
在對變形前后圖像子區進行相關運算前,需先定義它們的相關函數.具體應用時,相關函數的選擇主要考慮以下因素:
1)易操作性.相關函數應有簡單的數學描述,表達式中的參數便于計算機自動提取,非匹配窗口與匹配窗口的相關函數輸出值應有顯著差別.
2)抗干擾性.由于受到照明條件等影響,采集到的圖像會存在環境噪聲,好的相關函數應能夠對環境噪聲具有較好的抗干擾性,保持穩定輸出.
3)較小的計算量.數字圖像的像素點多,要求相關函數的形式易于計算,以減少算法的計算量.
目前,常用的效果較好的相關函數有:零均值歸一化互相關(Zero-mean normalized cross correlation,ZNCC)函數、零均值歸一化最小平方距離(Zero-mean normalized sum of squared differences,ZNSSD)相關函數和參數最小平方距離(Parametric sum of squared difference,PSSDab)相關函數等[7].
ZNCC互相關函數的取值范圍為[-1,1].其中,當值為1時,圖像為完全相關;當值為-1時,圖像為完全不相關.其表達式為,
(1)
ZNSSD互相關函數的取值范圍為[0,+∞],值越小,則圖像的相關性越強.其表達式為,

(2)
PSSDab互相關函數的表達式為,

(3)
在式(1)~(3)中,fm、gm分別為變形前后計算子區的灰度平均值.潘兵等[7]對這3種互相關函數進行了等價性證明,推薦使用ZNSSD互相關函數.
傳統的相關函數中,圖像子區每個像素點對計算結果的貢獻是一樣的,而這與實際情況有所差別.例如,當圖像產生拉伸/壓縮變形時,假設圖像計算子區中心像素點的位置不變,其余像素點的位置均有變化,且離中心像素點距離越遠,其位置變化量(位移)就越大.因此,如果考慮圖像子區每個像素點對相關系數的貢獻差別,則可引入帶權重因子的相關函數.例如,采用ZNSSD互相關函數時,其表達式變為,
(4)
式中,r(x,y)為權重因子函數,其取值僅與點(x,y)在圖像計算子區中的位置有關.
考慮如圖2所示的變形前參考圖像子區和變形后2個圖像子區,其中,(a)為變形前的圖像子區,(b)和(c)分別為變形后的2個圖像子區,u,v分別表示圖像在x軸和y軸方向的位移,K、K′分別為圖像(b)和(c)中某2個像素特征點.

圖2變形前后圖像計算子區
考慮一種特殊情況下的狀態,假定變形前圖像子區(a)中各像素點的灰度值相同,均為s.變形后圖像子區(b)和(c)中像素點K和K′的灰度值為k,其余像素點的灰度值為s.
在傳統ZNSSD互相關函數中,圖像子區(a)與(b)的相關系數表示為,
(5)
式中,x′=x+u1,y′=y+v1.
圖像子區(a)與(c)的相關系數表示為,
(6)
式中,x″=x+u2,y″=y+v2.
式(5)和式(6)中,f(x,y)表示圖像子區(a)中的灰度值分布,gb(x′,y′)、gc(x″,y″)分別表示圖像子區(b)和(c)中的灰度值分布,fm、gbm、gcm分別表示圖像子區(a)、(b)和(c)中的灰度平均值,gbm=gcm.
由于f(x,y)=s,故,式(5)和式(6)可以改寫為,
(7)
顯然有,Cab=Cac.這說明,當采用傳統相關函數時,特征點K和K′在不同位置時的2個圖像子區不能被區分.
當采用式(4)帶權重因子相關函數時,上述2個相關系數分別為,
(8)

(9)

由以上討論可以看出,當采用傳統相關函數時,特征點K和K′在不同位置的2個圖像子區不能被區分出,而采用帶權重因子的相關函數時,此類問題就能夠被解決.
研究顯示,利用計算機數值模擬的方法,不僅可以生成理想質量的散斑圖像,還能避免實際實驗中各種噪聲的干擾,如光照不均、系統畸變等引起的圖像噪聲.因此,采用數字模擬散斑圖像模擬變形,能夠準確評估數字圖像算法的計算結果,這也是目前驗證和評價數字圖像相關算法的通用做法.
針對數字散斑圖像的生成,Zhou等[8]提出了一種方法,其基本原理為:在一定大小的圖像中,隨機生成多個高斯光斑,由多個高斯光斑疊加而成一幅數字散斑圖像,其變形前后圖像中各像素點的灰度值可以表示為,
(10)

利用式(10),即可生成一幅數字散斑圖像,同時還可以對該圖像施加平移或變形.
本研究利用上述方法,得到了一幅計算機仿真散斑圖像,具體如圖3所示.該散斑圖像參數為:圖像大小為512×512像素,高斯光斑的半徑為4,光斑數目為4 800,中心光強為255灰度值(圖像灰度值的范圍為0~255).

圖3計算所用的數字散斑圖像
文獻[8]提出一種線性權重因子函數,其形式為,
(11)

圖4圖像計算子區示意圖
如果采用式(11)來計算圖像計算子區中各像素點的權重,其邊緣部分像素點所占的權重較小,且4個角點處的權重均為0,這將低估圖像邊緣區域的像素點尤其是4個角點對相關系數的貢獻.對此,本研究提出一種高斯權重因子函數,其形式為,
r(x,y)=e(-d(x,y)2/M2)
(12)
利用式(10)和式(12),線性權重因子函數和高斯權重因子函數的取值隨像素點與圖像子區中心點距離d的變化曲線如圖5所示.
圖5 2種權重因子函數變化趨勢比較
本研究采用曲面擬合法,分別使用傳統相關函數、線性權重因子相關函數和高斯權重因子相關函數計算圖像在x軸方向逐漸拉伸到應變達20%狀態下的位移場,每次增加1%應變.計算子區大小為41×41像素,從圖像坐標為(70,70)開始,縱向和橫向均是每隔5像素計算一個點的位移值,直到圖像坐標為(450,450).本研究共計算5 929個點的位移值,由此得到了該圖像下3種計算方法的均值誤差絕對值和標準差,并對10幅不同數字散斑圖像的計算結果取平均值.通過比較這3種方法的計算結果,由此分析權重因子對DIC算法的影響.
1)在10%拉伸狀態下3種方法的計算結果如表1所示.

表1 10%拉伸應變下的計算結果比較
從表1可以看出,相比較于傳統相關函數,采用線性權重因子相關函數和高斯權重因子相關函數后,曲面擬合法計算結果的均值誤差由0.002 0像素點分別減少到0.001 3像素點和0.001 1像素點,標準差由0.111 5像素點分別減少到0.090 0像素點和0.081 4像素點.這表明,2種帶權重因子的相關函數均能夠有效提高數字圖像相關算法的計算精度,而當采用高斯權重因子相關函數的計算方法時,其均值誤差和標準差均為最小.
2)在10%拉伸應變下3種方法位移場的計算結果如圖6所示,顯示圖像的大小為60×60像素.

圖6 3種相關函數在10%拉伸應變下位移場計算結果
從圖6可以看出,由傳統相關函數計算得到的位移場變化較大,而采用線性和高斯權重因子的相關函數后,計算得到的位移場平滑性更好.這表明后二者的計算結果更加穩定,計算精度更高.
3)3種方法位移場計算結果的均值誤差絕對值和標準差與拉伸應變的關系如圖7、圖8所示.
從圖7與圖8中可以看出,采用傳統相關函數時,其計算結果的均值誤差絕對值和標準差均遠遠大于另外2種相關函數,且隨著拉伸應變的增加,3種相關函數的計算誤差增加幅度也越來越大.
總體而言,采用高斯權重因子函數算法的計算精度稍好于線性權重因子相關函數.

圖7均值誤差絕對值與拉伸應變的關系

圖8標準差與拉伸應變的關系
本研究提出了一種帶高斯函數權重因子的相關函數,并將其與線性權重因子的相關函數和傳統相關函數的計算結果進行了對比.計算結果表明,相較于傳統相關函數,采用線性權重因子相關函數或高斯權重因子相關函數后,數字圖像相關算法的均值誤差和標準差均有較大幅度下降,這顯著提高了算法的計算精度.而當采用高斯權重因子相關函數的計算方法時,其均值誤差和標準差均為最小,算法的計算精度較好.
實際上,帶權重因子的相關函數,其形式并不只有線性函數或高斯函數,還存在其他函數類型,例如多項式函數.對于每種狀態的圖像而言,采用哪種類型的相關函數更適合,尚需做更進一步的研究.