劉炳浩,柳權(quán)奎
(1.湖南工業(yè)大學(xué) 土木工程學(xué)院,湖南 株洲 412007;2.東義大學(xué) 土木工程系,韓國 釜山 47340)
天然河流的水文檢測是洪水及地質(zhì)災(zāi)害預(yù)防措施的重要組成部分,水文基礎(chǔ)研究和水利工程應(yīng)用均需要河流實測資料作為基礎(chǔ)支撐[1]。在河流水文檢測工作中,流速和流量是兩個重要的要素。其中,流速是推求流量的必要參數(shù),流量是水文測量和水資源管理中最常用的量化指標(biāo),精確的流量預(yù)測對洪水預(yù)測和水文過程研究等均具有十分重要的意義。
現(xiàn)有的流速測量設(shè)備大體上可以分為接觸式和非接觸式兩類。接觸式流速計包括螺旋槳流速儀和多普勒聲學(xué)流速儀等,這類流速計需要接觸水體以測量流速;非接觸式流速計包括雷達(dá)流速儀、超聲波流速儀等,其無需接觸水體即可完成流速測量。其中,基于影像分析的影像流速儀是一種較為先進(jìn)的流速測量手段,在洪水等難以接觸水面的條件下,也能迅速準(zhǔn)確地獲得整個河流表面的流速分布。與其他非接觸式測定法相比,影像流速測定具有測試精確度高、速度快、成本低、安全性高等特點[2]。在誕生后的20 多年里,影像測速使用的設(shè)備從最初的固定攝像頭向便攜式攝像機(jī)、熱成像攝像機(jī)、智能手機(jī)等拓展,發(fā)生了非常多樣的變化。
近年來,隨著無人機(jī)技術(shù),特別是小型低空無人機(jī)技術(shù)的快速發(fā)展,通過無人機(jī)獲取地面影像的方法被廣泛應(yīng)用于應(yīng)急救援、地形測定、林業(yè)管理、農(nóng)業(yè)災(zāi)害檢測、海洋污染檢測、輸電線路巡查等領(lǐng)域。無人機(jī)攝影是一種有效、便捷的影像收集手段,由于其可以獲取垂直向下的拍攝角度,同時拍攝者可以遠(yuǎn)離危險和難以接近的區(qū)域遙控拍攝,因此其在水文測量方面也具有明顯的優(yōu)勢。
隨著河流表面圖像測速技術(shù)(river surface image velocimetry,SIV)的發(fā)展,各種SIV 技術(shù)的載體也一起被開發(fā)出來,如固定式SIV 流速計、移動式SIV流速計、紅外線SIV 流速計、手機(jī)SIV 流速計等。然而,地面上攝像機(jī)拍攝的影像有一個共同的問題,其近、遠(yuǎn)端的分辨率相差較大,這是測量誤差發(fā)生的主要原因之一。為了解決這一問題,K.Takehara等[3]使用直徑15 cm 的煎餅作為示蹤物,乘坐直升機(jī)對河面進(jìn)行了現(xiàn)場拍攝和分析,獲取的流速測量結(jié)果(1.1 m/s)與I.Fujita 等[4]安裝在地面上的攝像機(jī)獲取的結(jié)果(1.3 m/s)較為接近,二者對地面標(biāo)定點的定位標(biāo)準(zhǔn)誤差為12.8 cm,由此可見測定的結(jié)果比較準(zhǔn)確,但是成本較高。相對于直升飛機(jī),無人機(jī)拍攝成本更低,且更為便捷。Yu K.等[5-6]開發(fā)了一種基于無人機(jī)影像的表面圖像測速儀,該測速儀添加了遠(yuǎn)紅外熱成像攝像頭,可以兼顧夜間使用。F.Tauro 等[7-9]評估了四旋翼無人機(jī)的懸停能力,提出了保持相機(jī)垂直于水面以避免獲取GRP 的設(shè)想,并于2016年在意大利阿爾卑斯山脈的一條山間溪流的兩個不同地點進(jìn)行了無人機(jī)和固定LSPIV(largescale particle image velocimeter)裝置的表面流速檢測對比試驗,試驗結(jié)果表明:與傳統(tǒng)的LSPIV 實現(xiàn)相比,來自航空平臺的測量對示蹤劑的移動更敏感,結(jié)果更接近準(zhǔn)確值。同時,無人機(jī)穩(wěn)定懸停的穩(wěn)定性對檢測結(jié)果影響較大,高效率的圖像分析手段、無人機(jī)高精度的定位能力有可能降低對無人機(jī)懸停能力的需求。Q.W.Lewis 等[10-12]分別用無人機(jī)和固定攝像機(jī)采集視頻,利用LSPIV 在美國伊利諾斯州的10 個不同的河流位置進(jìn)行了流量測量,將測量結(jié)果與聲學(xué)多普勒流速計、螺旋槳流速計和已建立的流速計測量的參考值進(jìn)行了比較,并評估了基于小型無人機(jī)系統(tǒng)(small unmanned aerial systems,sUAS)的LSPIV 測量二維平均表面速度以及從連續(xù)圖像獲取的準(zhǔn)瞬時二維速度的準(zhǔn)確性,評估結(jié)果認(rèn)為:對于持續(xù)二維流動,基于sUAS 的LSPIV 方法得到的平均速度與固定攝像機(jī)平臺得到的速度一致,兩種方法測量的速度與聲學(xué)多普勒測速儀測量的近地表速度一致。
以上研究成果證實了基于sUAS 的LSPIV 能提供精確的、高分辨率的連續(xù)二維流場大尺度區(qū)域的平均表面速度測量結(jié)果,并且可以觀測二維流場結(jié)構(gòu)的演變,是一種有價值的繪制河流表面流場二維圖像的新方法。
利用無人機(jī)影像測量河流表面流速的方法仍存在以下問題:
1)無人機(jī)晃動對測量結(jié)果的影響很大。在大風(fēng)等極端天氣下,無人機(jī)很難保持靜止,無人機(jī)自身的晃動會造成被攝物體在視頻中晃動,這種晃動會直接影響流速測量結(jié)果。尤其是對大河的測量中,由于無人機(jī)需要飛行得更高,少量的晃動就會造成地面上物體出現(xiàn)較大的位置偏差。
2)測量準(zhǔn)備工作繁瑣?,F(xiàn)有的方法大多需要人為設(shè)置地面參照點,并對參照點進(jìn)行定位測量,然后借助參照點矯正圖像。這種方法需要大量的準(zhǔn)備工作,且測量時間長、效率低。同時,很多自然河流的河岸是難于接近的,這為參照點的設(shè)置和測量帶來了諸多不便。
為了解決無人機(jī)晃動帶來的問題、簡化測量過程,實現(xiàn)快速、安全、精準(zhǔn)的河流表面流速測量,本文擬開發(fā)一種基于無人機(jī)飛行記錄信息的圖像矯正方法,在不對參照點進(jìn)行現(xiàn)場測量的情況下實現(xiàn)對河流表面流速的精準(zhǔn)測量。此外,還嘗試了不設(shè)置參照點,僅通過飛行記錄來矯正圖像的方法,并分別在試驗河道與自然河道進(jìn)行了現(xiàn)場測量驗證。
2.1.1 使用參照點的情況
具體的圖像矯正流程如圖1所示,在河流兩岸設(shè)置4 個以上的參照點,先根據(jù)矯正后的圖像上參照點的像素坐標(biāo)(u,v)相對于圖像光學(xué)中心點像素坐標(biāo)(u0,v0)的位置,利用共線條件式(式1)計算出參照點的空間坐標(biāo)(xi,yi),然后根據(jù)輸出圖像的尺寸設(shè)置一個縮放系數(shù)n(pixel/m),令每個參照點在輸出圖像上的像素坐標(biāo)(xi,yi)=(nxi,nyi)。最后利用待矯正圖像中的參照點像素坐標(biāo)對圖像進(jìn)行單應(yīng)性變換,即可獲得矯正后的圖像。
圖1 使用參照點時的圖像矯正流程示意圖Fig.1 Image correction flow diagram using reference points
本研究飛行高度約為20 m 左右,選用了直徑為18 cm 的紅色圓形紙片貼在碟子上作為參照點,如圖2所示。
圖2 參照點設(shè)置示意圖Fig.2 Schematic diagram of reference point setting
因為此處需要用參照點的像素坐標(biāo)求解空間坐標(biāo),因此用共線條件式的逆變換式:
式中:c為相機(jī)的焦距;(u,v)為照片中光學(xué)中心點的坐標(biāo),可通過相機(jī)標(biāo)定獲??;(XW,YW,ZW)為相機(jī)光學(xué)中心位置的空間坐標(biāo);aij為相機(jī)的旋轉(zhuǎn)矩陣R(式3)的元素;后兩項可通過無人機(jī)的飛行記錄獲取。
式中:ω、φ、κ分別為相機(jī)坐標(biāo)系繞著X、Y、Z軸旋轉(zhuǎn)的旋轉(zhuǎn)分量。
2.1.2 不使用參照點的情況
由于在自然河流流速測定中,往往很難在河岸附近設(shè)置參照點。另外,在對大河的流速測定時,由于無人機(jī)飛行高度較高,因此如果參照物較小,識別度就會下降,必須使用較大的參照物,這給測量流速增加了不便。因此,如果不用參照點,而直接根據(jù)無人機(jī)的位置、高度、姿態(tài)等信息,通過對圖像的平移、縮放和三維旋轉(zhuǎn)等矯正圖像,可極大減少工作量,提高測量效率。
獲取相機(jī)外部參數(shù)的方法通常有以下兩種:
1)通過EXIF(exchangeable image file format)信息獲取。圖像拍攝時,無人機(jī)的GPS 信息和飛行姿態(tài)信息都被記錄在圖像的EXIF 中,EXIF 是專門為數(shù)碼相機(jī)照片設(shè)定的,可以記錄數(shù)碼照片的屬性信息和拍攝數(shù)據(jù)。通過專業(yè)的EXIF 信息編輯軟件,例如MagicEXIF 等,可以很方便地獲取圖像的EXIF信息;利用第三方庫也可以便利地實現(xiàn)EXIF 信息的批量讀取和編輯,例如Python 的exifread 庫等。
2)通過無人機(jī)飛行記錄獲取。本研究使用的DJI-Matrix100 無人機(jī)可以將飛行軌跡和飛行姿態(tài)等信息記錄在飛行記錄文件中,記錄頻率為10 條/s。也就是說,通過飛行記錄文件可以獲取每個0.1 s 節(jié)點處的GPS 坐標(biāo)、飛機(jī)姿態(tài)、相機(jī)姿態(tài)、起飛高度、電池信息,以及此時間點是否攝影或攝像等信息。為了獲取準(zhǔn)確的時間間隔,本研究使用幀速率30 fps 的視頻作為分析對象,每3 幀提取1 幀圖像,這樣相鄰兩幀圖像的拍攝時間正好間隔0.1 s,一幀圖像對應(yīng)一條飛行記錄,具體的獲取流程見圖3。
圖3 通過飛行記錄文件獲取外部參數(shù)流程Fig.3 Process of obtaining external parameters from flight information files
2.3.1 參照點的定位誤差
圖4為定位精度試驗中使用的參照點位置示意圖。
圖4 定位精度試驗中使用的參照點位置示意圖Fig.4 Schematic diagram of reference point position in the positioning accuracy test
由于飛行高度誤差等的影響,計算獲得的參照點空間坐標(biāo)會有一定的誤差,為了研究誤差程度及其對流速測量結(jié)果的影響,將現(xiàn)場用長卷尺量得的各參照點之間的距離(如圖4)和定位計算得到的參照點之間距離進(jìn)行對比,參照點距離誤差情況如表1所示。
表1 參照點距離計算誤差結(jié)果Table 1 Calculation error table of reference point distance
從表1可知,參照點距離計算的最大誤差率為0.834%,平均誤差為0.311%。影像測速的原理是根據(jù)示蹤物在兩張連續(xù)圖像之間的移動距離和兩圖像的拍攝間隔時間來確定速度,在間隔時間固定的情況下,距離誤差率會直接導(dǎo)致相同比例的流速誤差率。由于水無常態(tài),因此流速測量往往很難做到絕對的精準(zhǔn),通常要求單次測量誤差在10%以內(nèi)。因此,最大0.8%左右、平均0.3%左右的誤差率完全可以滿足流速測量的需要。
2.3.2 使用參照點時的圖像矯正誤差
本試驗使用時長5 s 左右,幀速率30 fps 的視頻,每3 幀提取1 幀,共提取51 幀圖像作為分析對象,無人機(jī)飛行高度約17 m,矯正縮放系數(shù)n=180 pix/m,即每像素對應(yīng)長度約5.55 mm。圖像矯正的目的除了獲取正射圖像外,還應(yīng)保證固定物體(參照點)在每幀圖像上處于同樣的像素位置,也就是說,參照點在每幀圖像上的像素坐標(biāo)偏差越小,則矯正的效果越好。本試驗中矯正后各參照點在每幀圖像上的像素坐標(biāo)偏差情況如表2所示。
表2 圖像矯正誤差計算表Table 2 Calculation table of image correction error
根據(jù)矯正結(jié)果,在此次試驗中x、y方向的極差平均為3.67, 2.33 像素,換算為長度則分別為20.4 ,12.9 mm。如果考慮結(jié)果的離散程度,全體平均差為0.65 像素,x、y方向的標(biāo)準(zhǔn)差分別為1.055, 0.541 像素,分別相當(dāng)于5.86, 3.0 mm。這種程度的誤差,在STIV(spatial-temporal image velocimetry)方法的應(yīng)用上影響較小。
2.3.3 未使用參照點時的圖像矯正誤差
在不使用參照點的情況下,由于外部參數(shù)已知,可以直接根據(jù)相機(jī)的位置和姿態(tài),利用數(shù)字圖像處理技術(shù)對圖像進(jìn)行平移和三維旋轉(zhuǎn),獲得正射影像。為了研究矯正誤差的大小,分別用試驗水渠河岸的固定區(qū)域和自然河道進(jìn)行了測量,然后對比相鄰的兩幀圖像中固定物體的偏移情況。圖5選出了其中比較具代表性不使用參照點時矯正出現(xiàn)誤差的影像。
圖5 不使用參照點矯正圖像時的誤差特點Fig.5 Features of errors in image correction without reference points
圖5中,圖5a 出現(xiàn)誤差是因為兩圖片之間存在平移;圖5b 和5e 原因是兩圖片之間存在偏航角偏差(yaw 角誤差);圖5c 和5d 出現(xiàn)誤差的原因是兩圖片之間存在橫滾角和俯仰角偏差(5c 為后圖roll 角小,pitch 角大;5d 為后圖roll 角大,pitch 角?。?/p>
從圖5可以發(fā)現(xiàn),這種方法對于外部參數(shù)的準(zhǔn)確度要求很高,而無人機(jī)的GPS 定位精度并不高,姿態(tài)角度也只精確到0.1°,這是導(dǎo)致連續(xù)的兩張圖像之間出現(xiàn)偏差的主要原因,這種偏差對影像測速有較大的不利影響,然而不同的圖像測速方法對這種影響的敏感度也不一樣,選擇一種合適的圖像分析方法有可能減少一部分矯正誤差帶來的影響。
目前,河流表面圖像測速的方法主要有大尺度粒子圖像測速(LSPIV)和時空圖像測速(STIV)兩種。LSPIV 技術(shù)的原理很簡單,在圖像1(在時間t拍攝)中選擇一個區(qū)域作為查詢區(qū)域(interrogation area),同時在圖像2(在時間t+Δt拍攝)上確定一個搜索區(qū)域(searching area)(如圖6)。利用互相關(guān)算法找出查詢區(qū)域在圖像2 中的位置,進(jìn)而得出查詢區(qū)域在時間間隔Δt內(nèi)移動的距離,就可以計算出移動速度。
圖6 LSPIV 原理示意圖Fig.6 Schematic diagram of LSPIV principle
STIV 首先選擇合適的時間間隔Δt,采集M幀圖像序列;然后在圖像中沿待測水流的運動方向設(shè)置一組寬度為單像素、長度為L(約50~80)像素的測速線,將這些測速線按時間序列組合在一起,以L-t為直角坐標(biāo)系合成一幅大小為L×M像素的時空圖像。圖7為STIV 原理示意圖。
圖7 STIV 原理示意圖Fig.7 STIV schematic diagram
從圖7可以看出,河流水面測速線構(gòu)成的時空圖像具有顯著的紋理特征,表現(xiàn)為具有特定方向性的明暗條帶。將紋理主要走向和縱坐標(biāo)軸間的夾角φ定義為時空圖像的紋理主方向,則tanφ=L/t,即該時間段的流速。
時空圖像中的紋理線條,會呈現(xiàn)出特定的傾斜方向,并隨機(jī)分布在圖像的各個位置。圖8為時空圖像紋理傾斜度檢測原理圖。
圖8 時空圖像紋理傾斜度檢測原理Fig.8 Principle of spatio-temporal image texture inclination detection
根據(jù)傅里葉變換幅度譜的自配準(zhǔn)性質(zhì)[13],若原圖像的長寬相等,不管這些傾斜的紋理線條的位置和分布如何,只要對它進(jìn)行傅里葉變換獲取其幅度譜,則這些傾斜紋理對幅度譜的貢獻(xiàn)都會被集中地反映在通過幅度譜中心,且垂直于原紋理線條方向的直線上,如圖8c。
如圖8d 所示,以幅度譜的中心點為原點O建立極坐標(biāo)系,以圖像邊長的一半,即N/2 作為搜索半徑設(shè)置搜索線,以Δθ=0.1°為步距,0~180°作為搜索范圍。統(tǒng)計搜索線上的幅度值F(r,θ),即可按下式計算能量-角度分布:
能量峰值對應(yīng)的角度即為所求的傾斜角度。在實際應(yīng)用中,可以估計流速的大概范圍,進(jìn)而減少范圍,提高算法效率。
在使用LSPIV 方法對圖像序列中兩幅相鄰圖像進(jìn)行匹配時,圖像矯正過程中的偏差會直接導(dǎo)致與偏差量相同數(shù)值的查詢區(qū)域運動距離的計算錯誤,以至最終影響流速計算結(jié)果。而STIV 是根據(jù)時空圖像(spatial-temporal image,STI)的紋理傾斜度測定一個時間段的流速,且STI 是由這個時間段內(nèi)每一幀圖像中提取一條檢測線組合而成,其中相鄰兩幀圖像之間的少許誤差對STI 的整體紋理傾斜度幾乎無影響。圖9為圖像矯正誤差對時空圖像紋理的影響示意圖。
圖9 圖像矯正誤差對時空圖像(STI)紋理的影響示意圖Fig.9 Effect of image correction error on spatio-temporal image texture
從圖9可看出這一點,圖中靜止的參照點在STI中顯示為一條豎直紋理,矯正誤差導(dǎo)致這條豎直紋理出現(xiàn)了少量的不規(guī)則性,但是這種不規(guī)則性幾乎不會對紋理主方向的判斷造成影響,從這個角度來說,STIV 能更好地適應(yīng)本研究所提出的圖像矯正方法。
為了驗證這種圖像矯正方法在現(xiàn)場試驗中的適用性,分別在韓國安東河流試驗中心急流試驗河道和釜山市溫泉川進(jìn)行了現(xiàn)場驗證試驗?,F(xiàn)場情況如圖10 所示。其中,在安東河流試驗中心的試驗中,使用了泡沫作為示蹤物,分別在圖10a 所示的直線和曲線河道進(jìn)行了影像采集。溫泉川試驗選在了上游的內(nèi)院橋()附近,由于是秋季,水面漂浮了一些樹葉可以作為示蹤物,因此沒有使用人工示蹤物。試驗環(huán)境如表3所示。
圖10 河流流速現(xiàn)場測定試驗場地圖Fig.10 Field test site for river velocity measurement
表3 河流流速現(xiàn)場測定試驗環(huán)境Table 3 Test environment for river velocity measurement
本次試驗中,為了對比結(jié)果的準(zhǔn)確度,用聲學(xué)多普勒流速儀FlowTracker 測量了相同位置各個測點的流速,與影像測速儀獲得的流速進(jìn)行對比,流速測量結(jié)果如表4和表5所示。
表4 模擬河道流速試驗結(jié)果Table 4 Field experiment results of simulated river velocity measurementm/s
表6 自然河流流速試驗結(jié)果Table 6 Field experiment results of natural river velocity measurement m/s
如果以多普勒流速儀的測量值作為參考真值,影像測速儀在使用和不使用參照點的情況下,試驗水路直線段的平均流速測量誤差分別為0.044 m/s(4.4%)和0.035 m/s(3.5%),曲線段的平均流速測量誤差分別為0.008 m/s(0.8%)和0.044 m/s(4.6%),自然河道的測量中,平均流速測量誤差分別為0.001 m/s(1.1%)和0.019 m/s(28.7%)。
可見,在試驗河道,即使不使用參照點矯正圖像,由于示蹤物充足,也能獲得較為準(zhǔn)確的流速。然而,在示蹤物較少的天然河道的試驗中,如果不使用參照點的話,由于矯正偏差較大,因此,在示蹤物密度較低的情況下,往往無法很好地捕捉到示蹤物的軌跡,出現(xiàn)了大量異常值,而且流速測量的準(zhǔn)確度也明顯低于使用參照點的情況。
利用數(shù)字圖像分析技術(shù)的河流表面流速測定方法(SIV)是一種高效、安全、準(zhǔn)確度高的非接觸式流速測定方法。無人機(jī)作為一種新的視覺媒體設(shè)備,通過高空垂直攝影可獲得良好的視覺影像,而且可以在很多車輛和人難以接近的區(qū)域使用。本研究利用無人機(jī)的優(yōu)點,把用無人機(jī)拍攝的河流表面影像作為分析對象,開發(fā)出基于無人機(jī)圖像的河流表面影像流速測定系統(tǒng)。
在對無人機(jī)拍攝的影像進(jìn)行分析時,最大的問題是無人機(jī)自身的晃動,特別是大風(fēng)等極端天氣下,無人機(jī)很難穩(wěn)定懸停,因而在攝像機(jī)和水面之間存在相對運動。在這種情況下拍攝的圖像不宜直接作為分析對象使用,應(yīng)先進(jìn)行矯正。
本文開發(fā)出利用無人機(jī)飛行信息中記錄的位置和姿態(tài)信息,對無人機(jī)拍攝的影像進(jìn)行正射矯正的方法。在使用參照點的情況下,矯正后圖像中,同樣的固定物體在不同的圖像中只存在最大2~5 像素的偏差,完全可以滿足圖像測速要求。而不使用參照點的情況下,由于無人機(jī)位置和姿態(tài)信息不準(zhǔn)確,圖像校正的精度較差,但是在示蹤物豐富的試驗河道測量中,仍然獲得了比較精確的測量結(jié)果,可以滿足水文測量的精度需求。即使在示蹤物不充足的自然河流試驗中,平均流速誤差也僅為0.019 m/s。
未來將設(shè)法對現(xiàn)有的無人機(jī)影像測速技術(shù)進(jìn)行優(yōu)化,具體包括:1)結(jié)合現(xiàn)有的圖像矯正方法,設(shè)法彌補(bǔ)無人機(jī)位置和姿態(tài)記錄不夠精確的問題,在不使用參照點的情況下,提高圖像矯正精度;2)結(jié)合現(xiàn)有的STIV 算法,研究更高效且可以準(zhǔn)確判斷水流方向的圖像測速技術(shù)。