彭方進
中鐵第四勘察設計院集團有限公司,武漢,430063
無縫鋼軌引導和支撐列車的運行,是高速鐵路的重要組成部分。隨著列車速度的提高,鋼軌表面缺陷問題日漸凸顯,若不及時處理,會嚴重威脅行車安全,因此必須加強鋼軌表面狀態檢測,及時指導鋼軌的維修養護[1]。
傳統的鋼軌表面檢測采用人工巡檢方式,這種方式效率低下,檢測結果準確性難以保證。為提高檢測效率,國內外相繼開發出了超聲波檢測[2]、渦流檢測[3]、基于機器視覺的鋼軌表面缺陷檢測[4-5]等方法。其中,超聲波檢測探頭的安裝對檢測速度限制較大;渦流檢測信號處理過程復雜,鋼軌軌面狀態提取困難。相較而言,基于機器視覺的鋼軌表面缺陷檢測方法檢測速度快、檢測精度高,成為近年來研究的重點。文獻[6]將鋼軌灰度圖像轉化為灰度對比圖像,實現了圖像的增強,并使用最大熵分割法提取了鋼軌的缺陷部位。這種方法檢測速度快,但魯棒性較差,在檢測車輛過彎時,容易誤檢和漏檢。文獻[7]使用一維線性局部窗口均值代替行像素灰度均值,生成灰度對比度圖像,用來檢測鋼軌表面缺陷。這種方法在一定程度上降低了小微缺陷的漏檢率,但由于窗口互不重疊,生成的對比圖灰度不連續,且并未解決相機與鋼軌相對位置發生變化時引入的背景噪聲問題。
本文針對檢測中的背景噪聲問題,提出了一種多尺度灰度對比度增強算法,該算法魯棒性強,用于動態鋼軌表面缺陷檢測具有良好的效果。
鋼軌表面缺陷檢測流程如圖1所示。

圖1 鋼軌表面缺陷檢測算法流程Fig.1 Algorithm flow of flaw detection on rail surface
由于相機采集的鋼軌圖像中大部分為鋼軌表面背景區域,圖像復雜多變,給鋼軌表面缺陷檢測帶來了困難,因此需要獲取鋼軌區域的準確位置,以簡化下一步的檢測工作。基于此項需求,文獻[8]采用基于霍夫變換的直線檢測方法提取鋼軌表面兩側邊緣線,兩條線之間的部位即為鋼軌表面區域,這種方法常受到鋼軌下邊緣的干擾,容易出現誤判;文獻[6]提出基于水平灰度投影積分的方法定位鋼軌區域,該方法應用較為廣泛,但當鋼軌出現銹蝕或者背景亮度過大時,此方法準確率明顯下降,如圖2所示。圖2b中矩形框區域為算法定位區域,可見算法存在較大的局限性。
針對背景光照復雜問題,本文提出一種適用于高速有砟軌道的定位算法。考慮到鋼軌在行車方向上灰度變換緩慢,高速有砟軌道背景灰度分布復雜,且鋼軌表面亮度總是高于鋼軌軌底亮度,本文提出一種基于灰度標準差與灰度投影積分的鋼軌區域提取算法。本算法先通過每一行像素的灰度標準差確定鋼軌大致所在區域,再對區域內灰度投影進行積分,積分值最大處即為鋼軌軌面區域。

(a)鋼軌圖像水平灰度投影

(b)基于水平灰度投影積分的鋼軌區域定位結果圖2 基于灰度投影積分的鋼軌表面區域定位示意圖Fig.2 Schematic diagram of rail surface arealocating based on grayscale projection integral
算法具體過程如下。
(1)計算圖像在行車方向上的投影。假設圖像I中的行車方向為水平方向,則第y行的投影如下:
(1)
式中,W0為圖像I的寬度;I(x,y)為圖像在(x,y)點的灰度值。
(2)計算圖像水平方向上每行像素的灰度標準差。第y行的灰度標準差如下:
(2)
(3)遍歷σ(1),σ(2),…,σ(H0),獲取最小值σmin,其中,H0為圖像的高度。由于有砟軌道鋼軌與背景標準差相差較大,故可根據σmin計算出一個閾值T以大致定位出鋼軌區域。考慮到實際上鋼軌并不是絕對光滑,在圖像中的位置也并非絕對的垂直與水平,T取值如下:
T=3(σmin+ξ)
(3)
式中,ξ為一個極小數,本文取ξ=0.01。
在標準差圖像中小于T的最大行間距d(d=b-a)即鋼軌大致所在。
(4)在圖像[a,b]行間進行投影積分。由于鋼軌的寬度一定,設寬度為WR,考慮到過彎時的偏移以及可能出現的肥邊等情況,將定積分區間大小設為1.1WR,則每個寬度為W的區間積分如下:

(4)
則最大的S(y)所對應的區間[y,y+W]即為所求鋼軌表面區域。
本文所述鋼軌表面區域定位方法與結果如圖3所示,其中圖3b中黑色矩形框區間即為圖3a中確定的區間[a,b],白線標注的區間為根據投影積分所確定的鋼軌表面區域。

(a)基于灰度標準差的鋼軌大致定位

(b)本文方法定位效果圖3 基于灰度標準差與投影積分的鋼軌表面區域定位Fig.3 Rail surface area locating based on graystandard deviation and projection integration
圖像增強是鋼軌表面缺陷檢測的重要步驟,其目的是突出鋼軌缺陷部位,抑制背景噪聲。最為典型的圖像增強算法為直方圖均衡算法,它通過增強灰度值的動態范圍達到圖像增強的效果。但鋼軌成像灰度級比較集中,在進行全局增強時,容易將鋼軌缺陷區域與干擾區域同時增強,影響缺陷的進一步提取。GORDAN等[9]提出基于局部對比度的增強算法,圖像I的局部對比度如下:
(5)
式中,I1為以(x,y)為中心、面積為m的矩形窗口的灰度均值;I2為窗口大小為3×m的矩形窗口的灰度均值。
任盛偉等[6]依據鋼軌在行車方向上灰度值變化小的特點對對比度進行了相應的改進,其局部對比度定義如下:
(6)
式中,I(x,y)為圖像I在(x,y)處的灰度值;g(x)為行車方向上一列像素的灰度均值。
文獻[6]的方法需要鋼軌在圖像中始終保持垂直的狀態,當檢測裝置與鋼軌相對位置發生變化時,會引入較多的邊界噪聲。此外,對于順軌方向上的缺陷,這種方法也存在較高的漏檢率。考慮以上因素,本文采用以目標像素為中心的矩形窗口均值U(x)代替目標像素所在列或所在行的均值g(x)或g(y)。
使用矩形窗口求取均值能在一定程度上減少遺漏缺陷的情況,但是由于鋼軌在垂直行車方向上灰度值表現出明顯變化,故在生成對比度圖像時會引入許多背景噪聲,給進一步的分割帶來困難。針對此問題,本文提出一種多尺度圖像[10]局部對比度求取方法,通過綜合不同尺度下的圖像對比度抑制背景干擾。算法具體流程如下。
(1)構造多尺度圖像。將輸入圖像I與高斯核函數G(x,y,σ)求卷積,即可得到尺度參數為σ的圖像I(x,y,σ):
(7)
本文共設置三個尺度:σ=1,σ=2,σ=3,得到相應尺度的圖像I(x,y,1),I(x,y,2),I(x,y,3)。
(2)生成各尺度下的灰度對比度圖像。對I(x,y,1)、I(x,y,2)、I(x,y,3)每個像素點進行局部灰度對比度計算,每個尺度下灰度對比度如下:
C(x,y,σ)=
(8)
其中,U(w,σ)為以像素I(x,y,σ)為中心、大小為w的窗口內均值。本文采用35×5的窗口大小。
(3)生成最終灰度對比圖C(x,y),并將其映射到[0,255]區間。灰度對比圖C(x,y)由下式求得:
(9)
將本文鋼軌表面增強算法與兩種經典圖像增強算法(直方圖均衡算法與CLAHE算法)[11]、文獻[6]以及文獻[7]中所提出的算法進行比較,效果如圖4所示。
由圖4不難看出,相較于經典圖像增強算法及文獻[6]和文獻[7]中提出的算法,本文提出的改進對比度算法引入邊界噪聲較少, 能很好地突出缺陷所在,簡化了進一步的分割工作。

(a)鋼軌表面區域原圖

(b)直方圖均衡算法

(c)CLAHE算法

(d)文獻[6]算法

(e)文獻[7]算法

(f)本文算法圖4 不同算法增強效果對比Fig.4 Comparison of different algorithmenhancement effects
鋼軌表面圖像經過增強,缺陷區域與鋼軌表面背景區域對比度明顯,對鋼軌位置無明顯偏移的圖像生成的灰度對比圖灰度級僅集中在以缺陷區域對應的低灰度級以及鋼軌表面對應的高灰度級,故只需選取相對居中的灰度值作為二值化分割的閾值即可提取出缺陷部位。考慮到鋼軌與相機間存在的相對位置變化所帶來額外的灰度級,人工設置閾值難以符合要求,本文選用具有一定自適應性的迭代閾值法實現灰度對比圖的分割。迭代閾值法的實現步驟如下。
(1)選取初始迭代閾值。遍歷灰度圖C,查找最小灰度值Cmin和最大灰度值Cmax,令初始迭代閾值Tk為
(10)
(2)根據Tk將灰度對比圖分為目標O和背景B,并計算目標區域與背景區域各自的灰度平均值mO、mB:
(11)
式中,N1為灰度對比圖中屬于目標的像素個數;N2為灰度對比圖中屬于背景的像素個數。
(3)由mO和mB更新閾值:
Tk+1=mO+mB
(12)
(4)重復步驟(2)和步驟(3),直到Tk+1=Tk,迭代結束。Tk即為所求的分割閾值。迭代閾值分割結果如圖5所示。

圖5 迭代閾值分割后鋼軌表面灰度圖Fig.5 Grayscale image of rail surface after iterativethreshold segmentation
鋼軌表面圖像中除缺陷外,更為普遍的是細小斑點和瑕疵,這些斑點和瑕疵并不會影響行車,但在圖像增強和分割后會跟隨缺陷提取出來,故需對兩者進行區分。
本文對分割后二值圖像中所有黑色區域進行連通域標記,根據連通域的面積進行缺陷判別。面積小于400像素的認定為噪點。經缺陷判別后,鋼軌表面灰度如圖6所示。

圖6 經缺陷判別后的鋼軌表面灰度圖Fig.6 Grayscale image of the rail surface afterdefects discriminant
實驗使用1200張高速鐵路有砟軌道無縫鋼軌圖片對本文所述算法進行測試,這些圖片包括白天外界光源微弱時拍攝的圖像500幅、外界光源強烈時拍攝的圖像50幅、線路巡檢車過彎時拍攝的圖像50幅以及夜間拍攝圖像600幅。圖片大小均為2048pixel×1024pixel。實驗所用缺陷圖像共有180幅,其中,白天外界光源強烈的情況下缺陷圖像17幅,白天外界光源微弱時的缺陷圖像63幅,巡檢車輛過彎時的缺陷圖像29幅,夜間拍攝的缺陷圖像71幅,其余均為正常圖像。算法驗證平臺為Microsoft Visual Studio 2013以及OpenCV開源庫。部分檢測結果如圖7所示。

(a)軌面壓潰

(b)軌面剝落圖7 本文檢測方法檢測結果示例Fig.7 Examples of detection results described in this article
將本文檢測算法與文獻[6]和文獻[7]所述算法在各種拍攝條件下進行對比,檢測效果使用準確率和漏檢率兩項標準進行評定,則三種算法的缺陷檢測結果如表1所示。

表1 各種拍攝條件下缺陷提取算法對比
由表1不難看出,在白天外界光源強烈以及巡檢車輛過彎時,本文算法效果遠優于文獻[6]和文獻[7]算法效果。由于本文算法在對鋼軌表面區域進行定位時通過行像素標準差剔除了復雜背景干擾,從而避免了外界光源的影響,降低了漏檢率。在對鋼軌表面區域提取缺陷時,本文方法使用矩形窗口求取灰度對比度,使得平行于行車方向上的缺陷遺漏較少,此外,對于因車載檢測設備與鋼軌的相對位置變化(如巡檢車輛過彎)所引入的邊界噪聲,本文在多尺度空間中進行抑制,由此保證了缺陷檢測的準確率。
本文提出了一種基于灰度標準差與灰度投影積分的鋼軌定位方法,經實驗驗證,該方法能適應復雜光照背景下的鋼軌定位工作,對高速鐵路有砟軌道鋼軌表面區域的定位有一定的參考意義。針對鋼軌表面缺陷的提取,本文提出一種基于多尺度灰度對比度的增強算法,相較于基于一維線性窗口與單一尺度的增強算法,該方法更能適應相機與鋼軌的相對位置變化,表現出更強的魯棒性。