ENVI IDL波段運算

2021-06-09 20:52:16 字數 1060 閱讀 1492

完成對波段的一下運算:

1、將陣列中小於0的賦值為-999,**如下:

(b1 lt 0)*(0-999)+(b1 ge 0)*b1
2、求三個波段的平均值,如果某波段小於0,則不參與運算,**如下: 

(b1>0+b2>0+b3>0) / (((b1 ge 0) + (b2 ge 0)+(b3 ge 0)) >1)
3、不同波段兩幅影象,b1中的雲部分(象元大於200) 用b2代替,**如下:

(b1 gt 200) * b2+(b1 le 200) * b1

完成上述三次處理的**示例: 

pro work1

envi_open_file,r_fid=fid

envi_file_query,fid,dims=dims,nb=nb,ns=ns,nl=nl

;envi_get_data(fid,dims,pos)

b1=envi_get_data(fid=fid,dims=dims,pos=0)

b2=envi_get_data(fid=fid,dims=dims,pos=1)

b3=envi_get_data(fid=fid,dims=dims,pos=2)

;將陣列中小於0的賦值為-999

a=(b1 lt 0)*(0-999)+(b1 ge 0)*b1

;求三個波段的平均值,如果某波段小於0,則不參與運算

b=(b1>0+b2>0+b3>0) / (((b1 ge 0) + (b2 ge 0)+(b3 ge 0)) >1)

; 兩幅影象,b1中的雲部分(象元大於200) 用b2代替

c=(b1 gt 200) * b2+(b1 le 200) * b1

;輸出到記憶體中

envi_enter_data, a, r_fid = fid

envi_enter_data, b, r_fid = fid

envi_enter_data, c, r_fid = fid

end

ENVI IDL實現每個波段訊雜比計算

在研究影象質量評價時,可以使用訊雜比 snr 的方法。訊雜比,顧名思義就是訊號與雜訊的比例,那麼對於遙感影像來說,每個波段都有乙個訊雜比,這個值越大,說明該波段雜訊越小。基於區域性方差法計算遙感影像的訊雜比,具體步驟如下 1.邊緣提取 基於canny運算元對影象進行邊緣提取,結果為二值影象 邊緣值為...

C GDAL 分波段進行資料運算

int rgbtograygdal const char pszsrcfile,const char pszdstfile,bool bit8 true,const char pszformat gtiff gdaldriver podriver getgdaldrivermanager getdr...

C波段和Ku波段收

中星 鑫諾三號都是c的.中星9號是ku的.一 ku波段衛星數字廣播的特點 與以往的c波段衛星模擬廣播相比,由於使用了較高頻率的ku波段及先進的數字壓縮技術,ku波段衛星數字廣播具有其突出的特點。1 ku波段衛星廣播的主要特點 1 ku波段衛星單 器功率一般比較大,多採用賦形波束覆蓋,衛星eirp較大...