[英]How to mosaic the same HDF files using this R function?
文件夾中有1,000多個MODIS HDF圖像:
M:\join
他們的名字告訴我們哪些文件必須拼接在一起。
例如,在以下文件中, 2009090表示這三個圖像必須鑲嵌在一起:
MOD05_L2.A2009090.0420.051.2010336084010
MOD05_L2.A2009090.0555.051.2010336100338
MOD05_L2.A2009090.0600.051.2010336100514
或這兩個日期是同一日期2009091 :
MOD05_L2.A2009091.0555.051.2010336162871
MOD05_L2.A2009091.0600.051.2010336842395
我將使用此功能(功能來源 )將它們鑲嵌:
mosaicHDF(hdfNames, filename, MRTpath, bands_subset, delete=FALSE)
如何將我的HDF文件引入hdfNames ?
我應該用文件名寫什么?
我試圖找到此功能的手冊,但沒有任何內容。
謝謝你的幫助。
幸運的是,我確實找到了答案。 謝謝你的幫助。
hdfs <- c('MOD05_L2.A2009090.0420.051.2010336084010.hdf',
'MOD05_L2.A2009090.0555.051.2010336100338.hdf',
'MOD05_L2.A2009090.0600.051.2010336100514.hdf')
mosaicHDF(hdfNames=hdfs, filename='newhdf.hdf', MRTpath='C:/MRT/bin',bands_subset="1 0 0 0", delete=FALSE)
但是我有一個新問題:-)
由於該文件夾中有數千個HDF文件,
如何編寫循環以將所有HDF文件引入該函數?
僅供參考:我對R很陌生。
這個問題已經很老了,但我認為我會張貼要求的R代碼Canada2015。 因此,對於2000年至2016年的循環,假設文件名仍為A <YEAR> <MONTH> <DAY>。 格式。 此代碼將所有圖塊拼接在一起,以產生一個用於當前年份的新文件。 如果您必須在一年中拼接許多圖塊,則可以將pattern =參數更改為類似“ .hdf”的常規名稱
for(i in 2000:2016){
HDFs <- list.files(path = "F:/PATHTOFILES/HDFs/", pattern = paste("A",i,sep = ""))
mosaicHDF(hdfNames = HDFs, filename = paste('newhdf',i,'.hdf',sep = ""), MRTpath = 'C:/MRT/bin',bands_subset="1 0 0 0", delete=FALSE)
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.