湯君健,張正炳,付青青 (長(zhǎng)江大學(xué)電子信息學(xué)院,湖北 荊州 434023)
地震勘探數(shù)據(jù)壓縮方法按照有無(wú)信息丟失可分為無(wú)損壓縮和有損壓縮2大類(lèi):無(wú)損壓縮能保證解壓數(shù)據(jù)與原始數(shù)據(jù)完全一樣,特別適合于對(duì)解壓后還需要做進(jìn)一步處理的地震數(shù)據(jù)進(jìn)行壓縮,但其壓縮效率低,一般壓縮倍數(shù)在2倍左右;有損壓縮在允許有少量信息損失的情況下可以獲得高倍壓縮,壓縮倍數(shù)較高,但存在信息丟失等問(wèn)題[1]。
小波變換由于其在時(shí)域、頻域內(nèi)具有良好的局部分析特性,在地震數(shù)據(jù)壓縮領(lǐng)域一直是學(xué)者們關(guān)注的熱點(diǎn)[2~4]:在地震勘探過(guò)程中,獲取的地震信號(hào)是頻率依賴的,受大地濾波的影響,地震波類(lèi)似于小波的結(jié)構(gòu),正好與小波的特征相一致;小波變換屬于變換域數(shù)據(jù)壓縮方法的一種,它具有很好的局部化特性,地震信號(hào)經(jīng)過(guò)小波變換后的能量集中在少數(shù)變換系數(shù)上,用它代替離散余弦變換并合理地利用其變換系數(shù)的特點(diǎn),可獲得較好的壓縮效果,同時(shí)可克服JPEG方法產(chǎn)生的方塊效應(yīng);同時(shí)地震波信號(hào)有高度的非平穩(wěn)性,所以有良好局部分析能力的小波變換就成為地震數(shù)據(jù)壓縮的主流方法。王喜珍等[5]在研究地震數(shù)據(jù)的有損壓縮過(guò)程中,通過(guò)試驗(yàn)發(fā)現(xiàn)使用bior(3,7)小波函數(shù),分解層數(shù)為5時(shí)信噪比較高,均方差較小,驗(yàn)證了地震數(shù)據(jù)壓縮的效果與小波變換時(shí)濾波器系統(tǒng)長(zhǎng)度和分解層數(shù)有關(guān);武文波等[6]選用基于小波變換的地震信號(hào)壓縮方法,當(dāng)壓縮比達(dá)到50∶1以上時(shí),經(jīng)解壓恢復(fù)后的信息沒(méi)有明顯損失;徐峰濤等[7]提出了一種基于小波變換的零樹(shù)編碼與算術(shù)編碼相結(jié)合的地震數(shù)據(jù)壓縮算法,其算法對(duì)疊前地震數(shù)據(jù)壓縮4倍時(shí),信噪比可達(dá)50dB以上,選用適用小波基對(duì)疊后地震數(shù)據(jù)壓縮16倍時(shí),信噪比仍可達(dá)30dB以上;張正炳等[8]針對(duì)地震勘探數(shù)據(jù)壓縮改進(jìn)JPEG 2000算法,對(duì)疊前數(shù)據(jù)壓縮4倍以下時(shí),信噪比高于42dB,對(duì)疊后數(shù)據(jù)壓縮15倍以下時(shí),信噪比高于30dB。于文茂等[9]提出基于SPIHT改進(jìn)算法的地震數(shù)據(jù)壓縮方法,對(duì)疊后地震數(shù)據(jù)壓縮16倍時(shí),信噪比可達(dá)28.78dB。
徐峰濤等[7,8]基于小波變換的壓縮算法所得地震數(shù)據(jù)壓縮倍數(shù)較高,數(shù)據(jù)解壓效果較好。但其只是對(duì)SEG-Y文件中的地震采樣數(shù)據(jù)集進(jìn)行壓縮,忽略了SEG-Y文件的格式信息,這就導(dǎo)致其解壓后的數(shù)據(jù)缺乏格式信息,他人無(wú)法讀取解析;其研究的是一個(gè)具有固定道數(shù)和采樣點(diǎn)數(shù)的地震采樣數(shù)據(jù)集(800道,每道800個(gè)采樣點(diǎn)),但是實(shí)際地震勘探中獲取的地震數(shù)據(jù)SEG-Y文件的道數(shù)與采樣點(diǎn)數(shù)是任意的,絕大數(shù)不滿足進(jìn)行多次小波變換的條件;另外,壓縮實(shí)際地震數(shù)據(jù)時(shí),由于數(shù)據(jù)量極大,如果將按照其壓縮方案全部數(shù)據(jù)作為一個(gè)整體進(jìn)行壓縮編碼,則需要占用很大的內(nèi)存,且計(jì)算速度慢,十分不利于實(shí)際應(yīng)用。為此,筆者對(duì)其壓縮方案進(jìn)行如下改進(jìn),將其算法研究向?qū)嶋H應(yīng)用方向推進(jìn)一步:讀取標(biāo)準(zhǔn)SEG-Y文件,將其分割為卷頭、道頭數(shù)據(jù)和地震采樣數(shù)據(jù)集兩部分,對(duì)卷頭、道頭數(shù)據(jù)保留原始信息不壓縮;對(duì)地震采樣數(shù)據(jù)集進(jìn)行分塊壓縮處理,先按采樣點(diǎn)數(shù)進(jìn)行數(shù)據(jù)擴(kuò)展填充,使其滿足多次小波變換條件,采樣點(diǎn)數(shù)擴(kuò)展值為劃分塊的寬度值,這樣每塊的道數(shù)和采樣點(diǎn)數(shù)都滿足多次小波變換條件;比較3種填充方法,探索最佳擴(kuò)展填充方式。
標(biāo)準(zhǔn)SEG-Y格式,是勘探地球物理學(xué)會(huì)(SEG)制定的、在地震勘探中最常用的地震數(shù)據(jù)格式[10]。標(biāo)準(zhǔn)SEG-Y格式文件的構(gòu)成如圖1所示,由以下2部分組成:
1)卷頭數(shù)據(jù)。共3600字節(jié),由一個(gè)3200字節(jié)的EBCDIC卡和一個(gè)400字節(jié)的二進(jìn)制編碼頭組成,其中(3201-3260)中定義了對(duì)整個(gè)SEG-Y格式文件有效的信息,包括工作識(shí)別號(hào)、測(cè)線號(hào)、卷號(hào)、地震道數(shù)、輔助道數(shù)、采樣率、每道樣點(diǎn)數(shù)、樣點(diǎn)數(shù)據(jù)類(lèi)型、覆蓋次數(shù)等27個(gè)數(shù)據(jù)項(xiàng)。
2)地震道數(shù)據(jù)。由m個(gè)地震道數(shù)據(jù)塊組成,每一個(gè)地震道數(shù)據(jù)由一個(gè)240字節(jié)的道頭數(shù)據(jù)和多個(gè)采樣數(shù)據(jù)構(gòu)成。地震道的每個(gè)采樣數(shù)據(jù)值以4個(gè)連續(xù)字節(jié)記錄,采用IBM格式,4個(gè)字節(jié)組成一個(gè)32位浮點(diǎn)數(shù),由一個(gè)符號(hào)位qs、7位階數(shù)qc和24位尾數(shù)qf組成。其中,qs表示指定數(shù)值是正還是負(fù);qc表示16的冪;qf為一個(gè)6個(gè)字節(jié)的二進(jìn)制數(shù)字,其基數(shù)點(diǎn)在有效位的左邊[11]。
二維離散地震采樣數(shù)據(jù)表示為:
f(x,y)x=0,1,…,n-1;y=0,1,…,m-1
(1)
式中:n為道數(shù);m為每道采樣點(diǎn)數(shù)。
筆者采用3種擴(kuò)展填充方法,填充“0”、按邊界對(duì)稱(chēng)復(fù)制原始數(shù)據(jù)填充和邊界值復(fù)制填充。
基于小波變換的SEG-Y格式地震數(shù)據(jù)壓縮/解壓方案如圖2所示。
1)SEG-Y格式文件的分割。讀取SEG-Y格式文件,將其分割為卷頭、道頭數(shù)據(jù)和地震采樣數(shù)據(jù)。
2)地震采樣數(shù)據(jù)格式轉(zhuǎn)化。SEG-Y格式文件中地震采樣數(shù)據(jù)記錄格式為工作站的32位IBM浮點(diǎn)數(shù)。由于微機(jī)和工作站的 CPU 架構(gòu)不同,微機(jī)不能對(duì)工作站的IBM浮點(diǎn)數(shù)直接進(jìn)行讀取和利用,因此,工作站的IBM浮點(diǎn)型數(shù)據(jù)與微機(jī)的IEEE浮點(diǎn)型數(shù)據(jù)之間要相互轉(zhuǎn)換[12~13]。
4)對(duì)各個(gè)地震采樣數(shù)據(jù)塊分別進(jìn)行處理。先進(jìn)行小波正變換,采用Mallat算法,將其分解為不同分辨率的子帶,EZW編碼則利用小波變換后不同子帶上,相同位置的小波系數(shù)之間的空間相似性進(jìn)行編碼[15]。算術(shù)編碼將EZW編碼形成的二進(jìn)制文件進(jìn)一步進(jìn)行無(wú)失真壓縮,提高壓縮效率,形成最終壓縮數(shù)據(jù)文件,壓縮過(guò)程結(jié)束。
5)解碼時(shí)先分塊進(jìn)行算術(shù)解碼,后進(jìn)行EZW解碼,再進(jìn)行小波逆變換,依次得到各塊地震采樣數(shù)據(jù)。根據(jù)原始地震采樣數(shù)據(jù)尺寸,對(duì)解壓過(guò)程中小波逆變換得到的地震采樣數(shù)據(jù)塊進(jìn)行裁剪,去除掉數(shù)據(jù)擴(kuò)展填充部分。
6)將各塊地震采樣數(shù)據(jù)塊按原始道號(hào)順序拼接,重組地震采樣數(shù)據(jù)部分;之后再將地震采樣數(shù)據(jù)格式由IEEE浮點(diǎn)數(shù)轉(zhuǎn)化為IBM浮點(diǎn)數(shù);最后將原始卷頭、道頭數(shù)據(jù)和IBM格式地震采樣數(shù)據(jù)按SEG-Y格式文件結(jié)構(gòu)重組,形成解壓重構(gòu)后的SEG-Y格式文件,解壓過(guò)程結(jié)束。
試驗(yàn)數(shù)據(jù)為原始疊前地震勘探數(shù)據(jù)A,大小為4.28MB,其地震采樣數(shù)據(jù)集為856道,每道1250個(gè)采樣點(diǎn)(見(jiàn)圖3)。
由于地震道數(shù)小于填充后的樣點(diǎn)數(shù),所以可看作按筆者方法分塊的最后一塊的情況。試驗(yàn)將根據(jù)原始地震采樣數(shù)據(jù)(不包含填充部分)與解壓重建數(shù)據(jù)的差值計(jì)算得到的信噪比(SNR)作為技術(shù)指標(biāo),研究填充值對(duì)壓縮質(zhì)量的影響。其中,全局信噪比為原始地震856道數(shù)據(jù)與其解壓重建數(shù)據(jù)的信噪比,邊界信噪比為最后一道原始數(shù)據(jù)與其解壓重建數(shù)據(jù)的信噪比。采用3種擴(kuò)展填充方式:方法1為“0”值填充;方法2為按邊界對(duì)稱(chēng)復(fù)制原始數(shù)據(jù)填充;方法3為邊界值復(fù)制填充。基于已有研究[7],選用Antonini小波基,對(duì)疊前地震勘探數(shù)據(jù)A做4層小波變換,根據(jù)筆者算法將其擴(kuò)展填充為1264道,每道1264個(gè)采樣點(diǎn)。
根據(jù)3種擴(kuò)展填充方法壓縮倍數(shù)與全局信噪比和邊界信噪比的關(guān)系曲線如圖4所示。在相同壓縮倍數(shù)下,“0”值填充無(wú)論是全局還是邊界,重構(gòu)質(zhì)量都相對(duì)最好,對(duì)壓縮質(zhì)量影響相對(duì)最小,那是因?yàn)椤?”值填充只擴(kuò)充了極少量信息;按邊界對(duì)稱(chēng)復(fù)制填充對(duì)壓縮質(zhì)量影響相對(duì)最大,那是因?yàn)槠鋽U(kuò)充了大量信息,使編碼器編碼了大量攜帶擴(kuò)充區(qū)域信息的小波變換重要系數(shù),浪費(fèi)了編碼資源,從而大大降低了壓縮質(zhì)量。
選用Antonini小波基,對(duì)疊前地震勘探數(shù)據(jù)A,擴(kuò)展時(shí)進(jìn)行“0”值填充,做4層小波變換,如表1所示,在壓縮小于4倍時(shí),信噪比大于48dB,如圖5(a)所示。圖5與圖3相比較,與原始數(shù)據(jù)無(wú)明顯差別,重構(gòu)誤差相對(duì)較小,可用于實(shí)際地震數(shù)據(jù)壓縮。在壓縮小于16倍時(shí),信噪比大于13dB,如圖5(b)所示,與圖3相比較,重構(gòu)誤差較大,僅僅可用于質(zhì)量監(jiān)督。
筆者采用地震數(shù)據(jù)存儲(chǔ)標(biāo)準(zhǔn)SEG-Y格式文件作為壓縮原始文件,可以實(shí)現(xiàn)IBM與IEEE浮點(diǎn)數(shù)據(jù)之間的轉(zhuǎn)化,對(duì)地震采樣數(shù)據(jù)集進(jìn)行分塊處理,每塊數(shù)據(jù)進(jìn)行擴(kuò)展填充操作,使地震采樣數(shù)據(jù)集適合進(jìn)行多次小波變換。試驗(yàn)結(jié)果表明,對(duì)SEG-Y格式文件中地震采樣數(shù)據(jù)分塊處理,數(shù)據(jù)擴(kuò)展填充時(shí)使用“0”值填充,對(duì)壓縮效果影響相對(duì)較小,對(duì)疊前地震數(shù)據(jù)仍然保持著較高的壓縮效率,疊前地震數(shù)據(jù)壓縮4倍以下,信噪比高于48dB,對(duì)后續(xù)處理影響不大,有利于后續(xù)地震數(shù)據(jù)進(jìn)一步有效利用。