我想使用光线着色器包创建地形运动的延时可视化。我发现这篇网络文章通过使用 Venµs 图像提供了一个有用的提示。
文章中的脚本是
library(rayshader)
library(abind)
library(raster)
p="./"
fdem=paste0(p,"HMA_DEM8m_MOS_20170716_tile-677_UTM45_filled_crop_Venus.tif")
pimg=paste0(p,"/VIS1C/")
dem=raster(fdem)
elmat=matrix(extract(dem, extent(dem), buffer = 1000),nrow = ncol(dem), ncol = nrow(dem))
files=list.files(path=pimg, pattern="jpg$", full.names=FALSE, recursive=FALSE)
#rotating view
th=200
k=0
for (x in files) {
fimg=paste0(pimg,x)
fout=paste0(p,"/3Drot/",x)
print(x)
txt=substr(x, 36, 43)
k=k+1
if (k<length(files)/2){
th=th+0.5
}else{
th=th-0.5
}
imgr = raster(fimg,band=1)
imgg = raster(fimg,band=2)
imgb = raster(fimg,band=3)
r = t(matrix(extract(imgr, extent(imgr), buffer = 1000),nrow = ncol(imgr), ncol = nrow(imgr)))
g = t(matrix(extract(imgg, extent(imgr), buffer = 1000),nrow = ncol(imgr), ncol = nrow(imgr)))
b = t(matrix(extract(imgb, extent(imgr), buffer = 1000),nrow = ncol(imgr), ncol = nrow(imgr)))
col=abind(r,g,b,along=3)/255
plot_3d(col, elmat, zscale = 5, fov = 0, theta = th, zoom = 0.7, phi = 45, windowsize = c(1000, 800))
render_snapshot(fout,clear = TRUE,title_text = txt, title_color = "black",
title_font = "Arial", gravity = "NorthEast", title_offset = c(0,0))
}
我有所有的 RGB 合成时间序列图像,这些图像是按照本文和 DEM 从 sentinel hub 下载的,以显示光线着色器动画,但不知道将这些脚本放在哪里。我一直在理解如何改变实现时间序列动画的路径。