R语言影像批量镶嵌与裁剪——mosaic

你有中国不同省份的影像,想要拼接镶嵌成完整的中国影像

镶嵌一

ruby 复制代码
library("raster")                                                                
library("sp")
library("rgdal")
library("rgeos")
library("foreach")
rm (list=ls())
setwd("your path/code")
IOA= c("beijing","changchun","changsha","chengdu","your city")
#图像存储在CC里
CC=foreach(ioa=1:36) %do% {
# cat=print功能
  cat (IOA[ioa],"\n")
# 读取raster
 lulc=raster(paste0("../input/lulc_city/reclass_",IOA[ioa],".tif"))
  lulc
  #print(origin(lulc))
}
a<-raster(paste0("../input/lulc_city/lulc_reclass_",IOA[36],".tif"))
origin(a)
#以最后一个原点为标准
names(CC)[1:2] <- c('x', 'y')
#重叠部分取均值
CC$fun <- mean
#计算空值
CC$na.rm <- TRUE
#容忍偏移
CC$tolerance=0.3
r <- do.call(mosaic,CC)
writeRaster(r,paste0("output/lulc_raw_cn.tif"),overwrite=TRUE)

镶嵌二

ruby 复制代码
library(raster)
tif_file_name <- list.files(path = r"(E:\02_Project\01_Chlorophyll\Select\Result)", pattern = ".tif$", full.names = TRUE, ignore.case = TRUE)
tif_file_list <- list()
for (i in 1:length(tif_file_name)){
  tif_file_list[i] <- raster(tif_file_name[i])
}
tif_file_list$fun <- max
tif_file_list$na.rm <- TRUE
tif_mosaic <- do.call(mosaic, tif_file_list)
plot(tif_mosaic)
# tif_merge <- do.call(merge, tif_file_list)
rf <- writeRaster(tif_mosaic, filename = r"(E:\02_Project\01_Chlorophyll\Select\NewClip\LCC_SC_3.tif)", overwrite = TRUE)

R语言raster包批量拼接、融合大量栅格图像

批量裁剪

设置文件路径

ruby 复制代码
raster_path <- "F:/tif2022/"
output_path <- "F:/month"

list <- list.files(raster_path, pattern = ".tif$")
dir <- paste0(raster_path, list)

clip_raster <- vect("F:/China/sheng2022.shp")
crs(clip_raster)

for (i in 1:length(dir)){
  raster_data <- rast(dir[i])
  
  # 投影图层
  clip_raster <- project(clip_raster, crs(raster_data))
  
  # 裁剪数据
  data <- trim(mask(raster_data, clip_raster))
  
  output_file <- paste0(output_path, "/", basename(list[i]))
  writeRaster(data, output_file, overwrite = TRUE)
}

R语言 | 批量裁剪

相关推荐
Chef_Chen4 小时前
从0开始学习R语言--Day20-ARIMA与格兰杰因果检验
开发语言·学习·r语言
善木科研2 天前
读文献先读图:GO弦图怎么看?
机器学习·数据分析·r语言
Tiger Z2 天前
R 语言科研绘图第 55 期 --- 网络图-聚类
开发语言·r语言·贴图
十三画者2 天前
【数据分析】R版IntelliGenes用于生物标志物发现的可解释机器学习
python·机器学习·数据挖掘·数据分析·r语言·数据可视化
lishaoan775 天前
实验设计与分析(第6版,Montgomery著,傅珏生译) 第10章拟合回归模型10.9节思考题10.12 R语言解题
回归·r语言·线性回归·残差分析·实验设计与数据分析·回归显著性
南瓜胖胖5 天前
【R语言编程绘图-mlbench】
开发语言·机器学习·r语言
天桥下的卖艺者5 天前
R语言使用随机过采样(Random Oversampling)平衡数据集
开发语言·r语言
Biomamba生信基地6 天前
R语言基础| 创建数据集
开发语言·r语言·生信·医药
lishaoan776 天前
实验设计与分析(第6版,Montgomery)第5章析因设计引导5.7节思考题5.19 R语言解题
r语言·方差分析·实验设计与分析·残差分析·正态假设·交互作用
weixin_493202637 天前
R语言错误处理方法大全
开发语言·r语言