一個1波段全色地理tiff圖像文件的文件名(.tif擴(kuò)展)术裸。
一個3或4波段的多光譜geotiff圖像文件(RGB,近紅外波段亭枷,按此順序排列)袭艺。
使用GDAL工具
將多光譜Geotiff圖像文件重采樣到相同的更高維度
作為全色圖像的地理tiff文件采用雙三次插值。
這個文件被寫到磁盤上奶栖。然后匹表,對重采樣的多光譜和
全色geotiff切片成塊(使用gdal_retile.py)。為
每一對宣鄙,更小的泛銳多光譜geotiff創(chuàng)建使用
4種泛銳化方法(每片產(chǎn)生4個新的MS geotiff):
(1)Brovey,
(2)主成分分析(PCA)袍镀,
(3) FIHS(快速強(qiáng)度色相飽和度),
(4)小波
稍后冻晤,對于每種泛銳化方法苇羡,所有的瓦片都合并在一起(馬賽克)
用四種方法進(jìn)行泛銳化,形成4個較大的馬賽克(使用gdal_merge.py)鼻弧。
GitHub上找到代碼设江,clone。
打開后發(fā)現(xiàn)為python2程序攘轩,進(jìn)行改寫為python3程序
運行叉存,發(fā)現(xiàn)pywt.ravel_coeffs之類的方法顯示不存在,
1度帮、打開cmd終端歼捏。
- pip uninstall pywt 。
- pip install PyWavelets 笨篷。
- 重裝之后正常
運行瞳秽,發(fā)現(xiàn)生成csv失敗
procTileMS = subprocess.Popen([tileCmdMS],shell=True,stdout=subprocess.PIPE)
procTileMS.wait()
procTilePan = subprocess.Popen([tileCmdPan],shell=True,stdout=subprocess.PIPE)
procTilePan.wait()
cmd命令中運行可以成功生成csv,考慮windows和linux的差別,去掉列表符號,即中括號后可以運行
procTilePan = subprocess.Popen(tileCmdPan,shell=True,stdout=subprocess.PIPE)
融合函數(shù)createMosaic,將小圖通過gdal_merge進(jìn)行融合
def createMosaic( outname, outputTileNames ):
'''function createMosaic( outname, outputTileNames ):
This static (class) method calls the gdal_merge.py Python script (which should be
installed onto your system) to stitch-together a list of Geotiff image
files into a single Geotiff. Hence, this function takes the list of Geotiff image
files in outputTileNames, and passes them to gdal_merge.py such that they may
be merged into a single Geotiff by a mosaic process.
Args:
outname (str): Output string name of Geotiff mosaic.
outputTileNames (list): List of strings for Geotiffs that should be mosaic together.
mosaicCmd = gdalMergeLocation+' -o '+outname+' -of GTiff '
mosaicCmdList = []
mosaicCmdList.extend([mosaicCmd])
mosaicCmdList.extend(outputTileNames)
mosaicCmd = ' '.join(mosaicCmdList)
proc = subprocess.Popen([mosaicCmd],shell=True,stdout=subprocess.PIPE)
proc.wait()
運行到最后的時候,可以看到文件夾里的4種小圖片都已經(jīng)成功生成,但程序運行完成后卻沒有想象中的4種融合圖出現(xiàn),
推測是融合階段出了問題,找到融合函數(shù),發(fā)現(xiàn)cmd命令中竟然沒有加上python解釋器....
mosaicCmd = pythonInterpreter + ' ' + mosaicCmd
加上后成功.
生成的4種圖分別為
(1) a 3 or 4 band multispectral Geotiff image created using Brovey pan-sharpening
(2) a 3 or 4 band multispectral Geotiff image created using FIHS pan-sharpening
(3) a 3 or 4 band multispectral Geotiff image created using Wavlet pan-sharpening
(4) a 3 or 4 band multispectral Geotiff image created using PCA pan-sharpening
其中小波的圖Wavlet 是黑的,不知道為什么...