转自:http://blog.csdn.net/esrichinacd/article/details/7730825

地理标记照片是指带有地理位置信息的照片,通常通过内置GPS的数码相机或智能手机拍摄得到。

如果能够在GIS软件中直接载入地理标记照片,并且自动生成对应的点,包含照片和时间等相关的属性信息,那么对于许多涉及外业数据采集、外业巡检的行业将十分有用。例如,环保执法人员可以手持移动设备到现场采集环保违规照片,然后将照片叠加在底图上进行展示和分析等。

ArcGIS 10.1 for Desktop为此推出了新的地理处理工具——GeoTagged Photos To Points。通过该工具,我们可以读取地理标记照片(JPEG或TIFF格式,包含正确的Exif信息)中的经纬度和高程信息,并生成对应的点要素类。

下面将为大家介绍如何使用该工具来生成点要素类,本文使用的照片来自作者的WindowsPhone手机,照片内容是作者与朋友一起到红原、若尔盖草原游玩的途中风景。

2. 使用地理标记照片

2.1 材料准备

首先需要将照片整理好放到某个文件夹中,如下图:

为了显示效果,加载一个底图,本文选用了ArcGISOnline中国的数据,如下图:


2.2 使用GeoTagged Photos ToPoints工具

在工具箱中找到GeoTagged Photos ToPoints工具,如下图:

双击工具,弹出参数对话框如下:

参数说明:

1)       Input Folder:照片文件所在路径,根目录和子文件夹中的照片均会被扫描添加;

2)       Output Feature Class:根据照片位置信息输出的点要素类;

3)       Invalid Photos Table:可选参数,选中则将为不合格的照片(缺失位置信息)创建一个表格(便于区分哪些照片不合格);

4)       Include Non-GeoTagged Photos:可选参数,如果选择则将为缺失地理位置的照片也创建要素类中的一行记录(没有Geometry);

5)       Add Photos As Attachments:可选参数,如果选中,则会将照片添加为点要素的附件(要求至少ArcGIS forDesktop Standard许可)。

设置好参数之后,点击OK按钮,ArcGIS将自动读取照片中包含的地理位置信息,并创建一个要素类,然后自动添加到ArcMap中,如下图所示:


注意:本例加载的Online底图是Web Mercator投影坐标系,而照片则是使用了GPS默认的WGS-84地理坐标系,ArcMap已经自动进行动态投影处理。

为了更好地展示效果,重新对点图层进行符号化,效果如下:


2.3 查看照片信息

可以使用Identify工具查看,如下图:

或者通过HTML Popup窗口进行预览,如下图:


再来一张:


2.4 完善照片信息

我们发现刚才的要素类中,属性主要包括以下几个:

1)       Path:地理标记照片的存储路径,如D:\TestData\photos\WP_000436.jpg;

2)       Name:照片文件的短名称,如WP_000436.jpg;

3)       DateTime:照片的原始采集日期和时间,例如2012:06:30 17:26:17;(文本类型字段,使用Convert Time Field工具可将其转为日期型字段,然后可用于分析和时态展示)

前面提到,本次照片是去高原游玩的过程中拍摄的,因为作者比较关心海拔高度,而默认的要素类属性中没有,但是照片的GPS信息中是有的,所以这里需要添加一个字段,如下图:

然后通过计算Geometry(需要在编辑状态中进行),自动将高程信息填入新增的字段中,如下图:

设置之后,点击OK按钮,自动获得了GPS中的高程信息(部分点为0 ,因为有的照片在拍摄时由于信号不好未能成功获取到高程信息):

有了高程信息,现在再来浏览照片,下图是红原的花海景区,海拔3700多米:

下图是红原的草原与河流,海拔3500多米:

下面是松州古城,此时海拔2900多米:

下面是茂县的茶马古道,此时海拔已经下降到1600多米:

本文中的技术和风景,哪个更吸引你呢?

ArcGIS 10.1 for Desktop新特性之地理标记照片的更多相关文章

  1. ArcGIS 10.3 for Desktop新特性介绍

    ArcGIS 10.3是一个完整公布的ArcGIS平台,它包含新的产品(ArcGIS Pro),针对10.2版本号产品进行了功能增强和稳定性的改进. ArcGIS 10.3 for Server新特性 ...

  2. 【ArcGIS 10.2新特性】ArcGIS 10.2 for Desktop 新特性(二)

    4 三维 4.1 共享三维场景         用户能够将ArcScene文档导出为3D web场景,能够被加载到ArcGIS Online.Portal或本地Web服务器上并进行分享.这样,用户可以 ...

  3. 【ArcGIS 10.2新特性】ArcGIS 10.2 for Desktop 新特性(一)

    ArcGIS 10.2 for Desktop是在10.1的成功基础上进行的改进,它的改进包括:性能提升.附加的安全性.40多个新的分析工具.3D功能提高.栅格增强.新的地理数据管理能力以及其它更多的 ...

  4. ArcGIS 10.3 for Server新特性介绍

    ArcGIS10.3的正式版立即在美国Esri全球用户大会推出.中国的正式发行时间预计在Esri中国的用户大会.以下就将用户比較关心的ArcGIS 10.3 for Server的新特性给大家进行简单 ...

  5. 【ArcGIS 10.2新特性】ArcGIS 10.2 for Server新特性

    ArcGIS forServer相关的很多重大消息,如与Portal for ArcGIS进行了集成,提供对实时数据支持.离线地图使用. 1.与Portal for ArcGIS集成 用户能够配置Po ...

  6. 【ArcGIS 10.2新特性】地理数据(Geodatabase 和database)10.2 新特性

    1. 大数据支持 ArcGIS与Hadoop集成,将提供一个开源的工具包用于大数据的空间分析,开发者将通过该工具包构建定制化的工作流并在ArcGIS当中执行.         支持更多的大数据平台数据 ...

  7. Delphi 10.2 Tokyo的新特性

    Delphi 10.2(Tokyo)出来一段时间了,最重要的新特性就是支持Linux的服务端. 官网有详细的介绍: 这里是主要的特性介绍:https://www.embarcadero.com/pro ...

  8. jdk 9 10 11 12 13 新特性

    jdk 9 新特性 1.集合加强 jdk9 为所有集合(List/Set/Map)都增加了 of 和 copyOf 方法,用来创建不可变集合,即一旦创建就无法再执行添加.删除.替换.排序等操作,否则将 ...

  9. Linux 4.10中两个新特性与我的一段故事

    今早5点半起来没有開始写文章,而是去西湾红树林连跑带走折腾了将近20公里.回来后就8点多了...洗了个澡之后坐稳当.開始写一段关于我的故事.        在2014年到2015年期间,我在负责研发一 ...

随机推荐

  1. 解析php开发中的中文编码问题

    其实php开发中的中文编码并没有想像的那么复杂,虽然定位和解决问题没有定规,各种运行环境也各不尽然,但后面的原理是一样的. 了解字符集的知识是解决字符问题的基础. PHP程序设计中中文编码问题曾经困扰 ...

  2. 水面波浪形View--第三方开源--WaveView(电量、能量、容量指示)

    这种WaveView在一些常见的APP开发中,以水面波浪波形的形象的生动展示手机还剩余多少电量,存储容量还有多少,比较形象直观生动. WaveView在github上的项目主页是:https://gi ...

  3. 小课堂Week10 例外处理设计的逆袭Part3

    小课堂Week10 例外处理设计的逆袭Part3 今天是<例外处理设计的逆袭>这本书阅读的第三天,也是最后一天,我们会主要通过实例,对Part2中提出的例外处理等级进行解读. Level1 ...

  4. Jquery LigerUI框架学习(一)

    ligerUI框架是一个很丰富的后台框架模板,具有简洁大方的后台样式框架,还有很多灵活的控件,方便开发人员使用: 把昨天学习的成功拿出来供大家学习学习: 首先我们要去ligerUI官网下载Jquery ...

  5. MySQL存储过程、函数和游标

    这里我新建了两个表,一个users和test CREATE TABLE users( username ), pwd ) ); CREATE TABLE test( id INT, username ...

  6. ios的UIImage的两种不同的图片加载方式 tom猫

    在ios的UI交互设计时,对图片的处理是难免的:不同的处理方式会对内存有不同的影响: ********************************************************* ...

  7. ruby 格式化当前日期时间

    ruby 格式化当前日期时间 ruby 用Time类获取当前时间. t = Time.new puts t 可以看到输出的是(我现在运行的时间): Sat Jan 29 10:45:22 +0800 ...

  8. 2877: [Noi2012]魔幻棋盘 - BZOJ

    DescriptionInput 第一行为两个正整数N,M,表示棋盘的大小. 第二行为两个正整数X,Y,表示棋盘守护者的位置. 第三行仅有一个正整数T,表示棋盘守护者将进行次操作. 接下来N行,每行有 ...

  9. mysql 的日志文件

    mysql的日志文件 日志文件大致分为  error log, binary log, query log, slow query log, innodb redo log ;如图: 1.error ...

  10. SpringJUnit4测试--测试无反应/控制台报空指针的解决---junit的jar冲突!

    前言: 前些日子碰到一个诡异的问题--用springJUnit进行测试,运行方法什么反应也没有,控制台 也没有输出,百度也没有答案--只好暂时作罢.今天我只好用上了排除法,建个测试小项目,将只要能测试 ...