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

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

镶嵌一

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")
# 读取rasterlulc=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)

镶嵌二

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包批量拼接、融合大量栅格图像

批量裁剪

设置文件路径

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语言 | 批量裁剪

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/515.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

2024-04-19 问AI: 介绍一下 Frobenius norm 在深度学习中的应用

文心一言 Frobenius范数在深度学习中具有广泛的应用。深度学习是一种模仿人类大脑神经网络结构进行信息处理和学习的方法&#xff0c;其核心是神经网络&#xff0c;由多层神经元组成。在神经网络的训练过程中&#xff0c;Frobenius范数可以帮助我们衡量模型参数的大小和重要性…

如何使用JavaScript与SVG元素进行交互

1. SVG与JavaScript交互基础知识点 SVG元素选择 学习使用JavaScript选择SVG元素的方法&#xff0c;如getElementById、querySelector等。 事件监听 掌握通过addEventListener方法来监听SVG元素的各种交互事件&#xff0c;如click、mouseover、mousemove等。 属性操作 了解如何…

CSS3 动画

个人主页&#xff1a;学习前端的小z 个人专栏&#xff1a;HTML5和CSS3悦读 本专栏旨在分享记录每日学习的前端知识和学习笔记的归纳总结&#xff0c;欢迎大家在评论区交流讨论&#xff01; 文章目录 ✍CSS3 动画&#x1f48e;1 什么是帧动画&#x1f48e;2 定义关键帧&#x1f…

使用TP8框架根据视频id查找所有评论和回复

在使用ThinkPHP 8&#xff08;TP8&#xff09;框架根据视频ID查找所有评论和回复时&#xff0c;你需要编写相应的控制器逻辑和模型方法来实现这一功能。下面是一个基本的示例&#xff0c;展示如何实现这个功能&#xff1a; 首先&#xff0c;确保你已经定义了Comment和Reply模型…

【全网瞩目】你想知道的Llama3都在这里

Meta发布了开放式生成人工智能模型 Llama 系列的最新产品&#xff1a; Llama 3。或者更准确地说&#xff0c;该公司首次发布了其新的 Llama 3 系列中的两个模型&#xff0c;其余模型将在未来某个不确定的日期发布。 Meta 称&#xff0c;与上一代 Llama 型号 Llama 2 8B 和 Llam…

【支付宝】对接手机网站支付踩坑点记录

前言 简单记录一下对接Wap支付的问题&#xff0c;alipay和wxpay认证过程差不多&#xff0c;有个体商户或企业即可&#xff0c;前者文档不易懂后者还好&#xff0c;但是wxpay门槛高&#xff0c;个人认为pc网站支付(native支付)就是为了收300认证费&#xff01; 应用公私钥 第一…

React Router 5 vs 6:使用上的主要差异与升级指南

React Router 5 的一些API 在 React Router 6 上有时可能找不到&#xff0c;可能会看到如下画面&#xff1a;export ‘useHistory’ was not found in ‘react-router-dom’ … React Router目前有两个大的版本&#xff0c;即React Router 5、6。React Router 6 在设计上更加简…

【Anki】25考研408真题【2009-2023】

介绍 24年的真题解析还没有出&#xff01;只到23年&#xff01;一共有15套真题。 预览 客观题和主观题有两个目录。王道建议第一轮只写选择题&#xff0c;第二轮再开始写大题。 客观题&#xff1a; 主观题&#xff1a; 插件建议 See Previous Card Ratings in Reviewer 代码&am…

PM要会项目管理?完整版项目管理经验分享

近9个月&#xff0c;公司发生许多事情&#xff0c;包括产品研发部的人员结构调整。 原本以产品经理负责制的小组研发&#xff0c;变成了以项目经理负责制的项目组研发。 对于这一调整&#xff0c;我是支持的&#xff0c;毕竟产品在跟进项目时对技术的管控能力确实不如懂技术的…

彻底解决:IDEA java: 警告: 源发行版 17 需要目标发行版 17

一、出现的原因 JDK版本不匹配 二、解决方法 1.点击File -->Project Structure-->Project 修改这两处 2.在Project Structure-->Modules中的红框位置都要调整对应版本 3.点击File-->settings-->java compile将对应框的版本修改成对应版本即可 4.修改Pom文件中…

2010年认证杯SPSSPRO杯数学建模C题(第一阶段)高校图书馆的智能服务全过程文档及程序

2010年认证杯SPSSPRO杯数学建模 C题 高校图书馆的智能服务 原题再现&#xff1a; 图书馆源于保存记事的习惯。图书馆是为读者在馆内使用文献而提供的专门场所。而高校的图书馆为教学和科研服务&#xff0c;具有服务性和学术性强的特点。   现在的高校图书馆存在着许多不良的…

吴恩达llama课程笔记:第四课提示词技术

羊驼Llama是当前最流行的开源大模型&#xff0c;其卓越的性能和广泛的应用领域使其成为业界瞩目的焦点。作为一款由Meta AI发布的开放且高效的大型基础语言模型&#xff0c;Llama拥有7B、13B和70B&#xff08;700亿&#xff09;三种版本&#xff0c;满足不同场景和需求。 吴恩…

【opencv手动下载库】

opencv手动下载库 欢迎使用Markdown编辑器 欢迎使用Markdown编辑器 opencv手动下载&#xff1a; https://mirrors.tuna.tsinghua.edu.cn/pypi/web/simple/opencv-python/ 安装opencv方法&#xff1a; https://www.cnblogs.com/sxkio/p/14320936.html

【0282】Postgres内核 ResourceOwner(资源所有者,Resource Owners)原理分析

0. Resource Owners(资源所有者) ResourceOwner对象是为了简化与查询相关的资源(如缓冲引脚和表锁)的管理而发明的一个概念。需要以可靠的方式跟踪这些资源,以确保它们将在查询结束时被释放,即使查询由于错误而失败。我们没有期望整个执行器都具有万无一失的数据结构,而是…

python的os模块最常用的API

目录 一、os 二、os.path 三、文件的简单读写 Python的os模块提供了与操作系统交互的功能。这个模块中的函数可以用来执行文件和目录操作&#xff0c;获取和修改环境变量&#xff0c;以及执行操作系统命令等。这里列举了最常用的几种方法&#xff0c;剩下的可以现查现用。 …

【oracle数据库安装篇二】Linux6.8基于ASM安装oracle11gR2单机

说明 本篇文章主要介绍了Linux6.8基于ASM安装oracle11gR2单机的配置过程&#xff0c;图文并茂&#xff0c;整个安装过程直观易懂&#xff0c;无论是对于初学者还是有一定经验的系统管理员&#xff0c;都能从中获得很大的帮助。 相比于上一篇【oracle数据库安装篇一】Linux5.6…

嵌入式面试-回答UART

说明&#xff1a; 此文章是在阅读了一些列面试相关资料之后对于一些常见问题的整理&#xff0c;主要针对的是嵌入式软件面试中涉及到的问答&#xff0c;努力精准的抓住重点进行描述。若有不足非常欢迎指出&#xff0c;感谢&#xff01;在总结过程中有些答案没标记参考来源&…

极化码中信道极化的现象

目录 引言 信道极化 引言 极化码中信道极化的现象是极化码编码理论中的核心概念&#xff0c;它是实现极化码优异性能的关键所在。信道极化现象描述的是通过特定的编码方式&#xff0c;使得信道呈现出一种两极分化的特性&#xff0c;即一部分信道趋于完美信道&#xff0c;另一…

window.location.href 与 window.open 有何区别

window.location.href 和 window.open 都是用来实现页面跳转的&#xff0c;但它们之间存在一些区别&#xff1a; window.location.href&#xff1a; window.location.href "/csdn/" tab "/index.html"; 它会改变当前窗口的URL和加载新页面&#xff0…

C++算法题 - 区间

目录 228. 汇总区间56. 合并区间57. 插入区间452. 用最少数量的箭引爆气球 228. 汇总区间 LeetCode_link 给定一个 无重复元素 的 有序 整数数组 nums 。 返回 恰好覆盖数组中所有数字 的 最小有序 区间范围列表 。也就是说&#xff0c;nums 的每个元素都恰好被某个区间范围所…