专栏名称: 锐多宝
遥感技术教程、资讯与前沿论文
目录
相关文章推荐
冷兔  ·  好朋狗就要一起睡! ·  12 小时前  
英式没品笑话百科  ·  虫子看到巨猫的景象 -20250206132740 ·  2 天前  
英式没品笑话百科  ·  过年回家,把以前用过的四台笔记本按时间顺序摞 ... ·  3 天前  
51好读  ›  专栏  ›  锐多宝

QGIS+R语言管理野外考察照片

锐多宝  · 公众号  ·  · 2024-06-02 23:16

正文

每次野外工作会拍摄大量的考察照片,对这些考察照片进行分类和整理就是一个比较麻烦的工作。在这给大家介绍一下如何使用QGIS和R语言来分类整理这些照片。

本文主要涉及的是 带有定位信息 的手机或无人机照片。

在整理之前,要先将手机或无人机照片原图,注意,一定是原图!有位置信息的原图!导入到电脑中,放到一个文件夹中。

有位置信息的原图

将照片导入QGIS

使用QGIS的Import geotagged photos工具可以将照片导入,建议导入到gpkg数据库中。具体可以看以前的推文:

导入后的照片就会以点要素的形式存储在数据库中,在QGIS中就可以查看照片点位和属性表。

照片点位
照片导入后的属性表

查看照片

为了方便在QGIS中查看考察照片,在这提供三种查看方法:

  1. 平铺的缩略图
  2. HTML弹窗大图
  3. 3D查看

平铺缩略图形式查看

这个方法就是把简单的点符号变成了图片符号,图片符号来源路径为photo字段,这样符号来源就是一个变量,不同点位就可以显示对应的照片。

  • 在QGIS图层属性,符号化选项卡中将默认的Simple Maker符号改为Raster Image Maker符号
  • Image File路径编辑为变量,使用photo变量
  • 根据情况改一下符号大小,确定即可查看平铺的照片
Image File路径设置为变量
编辑变量,photo字段
平铺显示照片

HTML弹窗查看

  • 符号使用Simple Maker的红点即可,切换到Display选项卡,设置HTML Map Tip
QGIS中设置HTML弹窗提示

上图填入如下代码:

"file:///[% photo %]" width="350" height="250">
  • 打开Show Map Tips,使用识别或要素选择工具,将鼠标移动到考察照片点位上即可自动显示考察照片
弹窗查看照片

考察照片属性表编辑

考察照片分类

使用字段计算或者手动编辑属性表的方法,新建照片分类字段,备注信息字段等,可以对照片进一步描述和分类。

属性表操作还不会的看以前推文,这里不赘述了。

修改目录地址

由于我把照片放到了移动硬盘里,换了个插口盘符变了,QGIS中照片使用的是绝对路径,就需要对路径进行一些修改,下面是一个示例代码:

replace("photo",  substr("photo",1,1), 'I')

使用R语言复制照片

上面在属性表里面对照片进行了分类,创建了一个points字段,存储照片分类信息,虽然在属性表中照片分类完了,但是照片并没有分类存在不同的文件夹中,怎么倒腾一下呢?用下面的代码就行。

  • 在照片和gpkg数据库所在文件夹创建一个R工程,这样工作目录就是这里了
  • 建一个Images文件夹,用来存储分类好的照片
  • 运行下面的代码,这样不同的照片就会按照points字段中的分类自动复制到对应类别的文件夹中。

代码和解释

  • normalizePath 将windows的文件目录转换为R的
  • 循环第一行, dir.exists 判断文件目录并根据points中的类别 dir.create 创建文件夹
  • 循环第二行, file.copy 函数用于复制文件






请到「今天看啥」查看全文