1场景一:现在的手机拍照基本上都会带有地理位置功能,拍照的时候,开启该功能,拍出的照片,利用相关gis软件处理,就能识别出照片的坐标位置信息了,也可以从gis软件查看照片。
场景二:如果有一系列照片,没有带地理位置信息,但恰好有一系列空间点(或线或面)信息,照片名字与空间点上某列属性值对应,那么有没有办法把照片连接到软件中呢?
场景三:既然一个点能对应一张照片,那如果我有两张照片,分别代表两个不同时间段,有没有办法同时显示两张照片呢?
好了,步入正题了,今天就分享如何利用qgis来完成上述三种场景制作。
一、数据准备
准备三组照片:
场景一:四张由手机拍摄带有地理位置的照片,位置位于“G:\32_qgis照片查看-三种场景运用\1-数据准备\场景1-带地理位置的照片”
场景二:四张不带地理位置照片(留意照片文件名),位置位于"G:\32_qgis照片查看-三种场景运用\1-数据准备\场景2-不带地理位置的照片"
场景三:四张不带位置信息,两两对比照片(1978对应2018,1979对应2019),位置位于"G:\32_qgis照片查看-三种场景运用\1-数据准备\场景3-不带地理位置照片-年份对比"
二、场景一:导入带地理位置的照片
从qgis3.2版本以后,软件自带了导入地理照片的功能,从processing中输入Import geotagged photos,启动该功能的动画框,打开照片存放位置,如下:
之后会提示成功,会生成四个点,利用查看要素功能,并勾选auto open form即可查看照片,可看到照片对应的字段是photo字段。
接下来查看下属性表,即可看到photo是链接了照片绝对位置,而且是由directory+filename构成的。
点击图层,右键打开属性,可以看到photo字段widget type自动设置成了attachment(附件)形式,且没有使用相对位置,是以照片的形式显示。
接下来,我们重新建一个空白文件夹叫"G:\32_qgis照片查看-三种场景运用\1-数据准备\场景1-照片移动位置",把原来"G:\32_qgis照片查看-三种场景运用\1-数据准备\场景1-带地理位置的照片"的四张照片剪切到 "G:\32_qgis照片查看-三种场景运用\1-数据准备\场景1-照片移动位置"中,这里如果再单击点的话,照片消失了。
这时回到字段设置那里,这时选择filename,并在2处设置为attachment,在3处输入我们的照片位置"G:\32_qgis照片查看-三种场景运用\1-数据准备\场景1-照片移动位置",并在4处进行勾选,同时要把类型设置成照片格式(前面字段设置2图中)。这样一样,相当于字段filename就加了一个文件存贮位置了。
这里再单击某个点,就会发现照片有了,且是在filename字段了。
二、场景二:导入不带地理位置的照片
根据场景一,其实就很简单了,如下有四个已知点,有一列字段叫name,它的值分别对应的是“G:\32_qgis照片查看-三种场景运用\1-数据准备\场景2-不带地理位置的照片”下的照片名。(注意字段属性值的类型不能是数字,只能是字符串,要不然后面设置不了)
这时,从图层属性打开字段设置,按照场景一中的方法,设置成相对位置即可。
查看结果。name字段就有了照片信息了。
三、场景三:同一个点导入多张图片
根据场景二,场景三就也很简单了,就是多建一个字段,如下有两个测试点,字段分别为'40年前'和'40年后':
从图层属性,设置字段,分别设置两个字段为附件形式:
结果查看,两者对比图。
四、EVIS查看照片
另外qgis有个核心插件evis也可以实现查看照片功能,也可以设置相对位置,但是不能同时查看多张照片。感兴趣的可以试试。
五、后记
上述三种场景介绍了如何查看带地理信息或不带地理信息的照片(图片)。对于带地理信息的照片,对于拍摄的照片还可以基于时间维度画点连线,勾画出实际的一个轨迹线,比如徒步、交通调查等,特别的对于实际调查的照片,还可以根据时间信息,制作相应的动画,如果统筹一个项目户外调查的话,可以从轨迹路线和动画信息,了解调查员的调查过程、调查覆盖区域,甚至下次调查方案可以根据这些信息进行一定方式的优化。