Я загрузил все данные о растительности из MODIS для Африки, и теперь я пытаюсь создать мозаики из изображений и сохранить их как geo tif. У меня нет проблем делать все это, пока я не попытаюсь запустить его в параллелях на MacPro 6cores, 12 потоков. Код работает, но он использует только 1% от доступности ядра и требует навсегда для завершения процессов.Параллельная обработка изображений MODIS в R
Мне очень нужна помощь, у меня есть более 70 ГБ грамм MODIS. Мне нужно преобразовать в мозаику, и если я не буду использовать всю силу компьютера, которую я получил в лаборатории, это займет навсегда.
Вот часть кода параллельной обработки:
Есть две части работают параллельно, 1. выбрать NDVI; 2. Чтобы создать мозаику, проецируйте их и сохраните их как .tif.
# register the cluster with 10 cores
registerDoParallel(cores=11)
miCluster<-makeCluster(11)
registerDoParallel(miCluster)
library(doMC)
registerDoMC(11)
# 1.
# select the NDVI for each Africa Granule and put it in SdsList
sdsList <- foreach(k = 1:length(dateGranules), .packages=c("raster", "gdalUtils","foreach"))%dopar%{
for(j in 1:1:length(dateGranules)){
return(sapply(X=dateGranules[[j]], FUN=function(x){get_subdatasets(x)[1]}))
}
}
2.
# Generate the Mosaic for Africa with NDVI as aoutput
foreach(j = 1:length(sdsList), .packages=c("raster", "gdalUtils", "foreach"))%dopar%{
gdalwarp(srcfile=sdsList[[j]], t_srs="+proj=longlat +datum=WGS84 +no_defs",
dstfile=file.path(dest, names[j]))
}
Да, это именно то, что я хотел сделать. Как только я оправится от гриппа, я расскажу то, что вы сказали в раковине. Большое спасибо ! –
Kersten, я сделал то, что вы предложили, но я получаю следующую ошибку, которая никогда не проходит 40% -ный прогресс с любым набором данных, который у меня есть: 0 ... 10 ... 20 ... 30 ... 40.ERROR 4: 'HDF4_EOS: EOS_GRID:" MOD13A3.A2005213.h20v08.005.2008069184257.2005-08-01.hdf ": MOD_Grid_monthly_1km_VI: 1 км в месяц NDVI 'не существует в файловой системе, и не признается в качестве поддерживаемого имени набора данных. –
Получаете ли вы ту же ошибку с вашим методом R? Это происходит, если вы создаете VRT или пока деформируете? Похоже, что набор данных отличается от остальных контейнеров hdf MODIS или даже может быть поврежден. – Kersten