航摄像片生成DSM(Pix4d)2021.5.21
航摄像片生成DSM(以Pix4d软件为例)2021.5.21
- 1、常用无人机数据处理软件
- 1.1、ContextCapture
- 1.2、Pix4d
- 2、Pix4d安装步骤
- 2.1 Pix4d安装包下载
- 2.2 Pix4d安装方法
- 3、准备无人机倾斜摄影测量数据(航摄像片)
- 4、利用Pix4d生成DOM和DSM
- 4.1 新建项目开始处理
- 4.2 Pix4d处理航摄像片生成的DSM和DOM
- 4.3 ArcGIS打开DSM和DOM结果查看坐标系
- 5、DSM结果tif投影坐标转换为地理坐标WGS84
- 5.1 使用ArcGIS中的ToolBox(ArcMap手动操作)
- 5.2 后台调用ArcGIS中的Arcpy实现栅格重投影并处理NoData(python脚本)
- 5.2.1 栅格重投影坐标系arcpy脚本所用工具介绍
- 5.2.2 ConvertTifToWGS84.py调用示例
- 5.2.3 成功叠加WGS84坐标系的DSM和DOM到三维地球OSGEarth显示
1、常用无人机数据处理软件
1.1、ContextCapture
1.2、Pix4d
2、Pix4d安装步骤
2.1 Pix4d安装包下载
到百度网盘下载链接中下载Pix4d安装包文件,提取码:mw66
下载到本地文件夹后如下图所示:
2.2 Pix4d安装方法
首先双击Pix4Dmapper.msi安装包文件,弹出安装界面,点击Next
选择安装路径为 D:\Pix4Dmapper\ 后点击Next
之后点击Install开始安装,安装结束后取消勾选 Launch Pix4Dmapper后点击Finish即可。
下面利用Pix4d文件夹中的破解工具进行破解,双击硬件获取.exe后弹出窗口坐下角输入123后点击右侧的Generate HWID后在上方的文本框中生成了硬件ID码,复制下来。
之后打开注册机文件夹下的注册.exe,将HWID码粘贴到左侧文本框中后在右侧Owner中输入123,Days输入9999后点击Decode后会在右侧生成log日志,最终点击最右侧的Save REG两次即可在注册机文件夹生成123_pix4d.reg注册表文件。
现在双击123_pix4d.reg注册表文件,看到123_pix4d.reg中包含的项和值已成功添加到注册表中后点击确定即可,至此Pix4d破解完成。
最后双击Pix4d文件夹下的联网工具.exe后在右下角弹出Pix4d Tool v4.0,点击AutoStart即可,启动桌面或开始菜单的Pix4Dmapper.exe便可打开Pix4D。
进入上述Pix4d界面表示破解成功,可以新建项目了。(注:如果没正常启动该界面,需要多次尝试注册机破解后并注意打开联网公工具中的AutoStart后打开Pix4Dmapper.exe)
3、准备无人机倾斜摄影测量数据(航摄像片)
外业无人机倾斜摄影测量数据如下图所示。
4、利用Pix4d生成DOM和DSM
4.1 新建项目开始处理
打开Pix4Dmapper后,点击新项目,项目名称输入TestUAVGerateDOMandDSM
后点击Next
在弹出的新项目窗口中点击添加图像,在图像浏览窗口选择无人机倾斜摄影测量的数据(54张航摄像片)后点击Next
在图片属性窗口会显示图像的地理位置、基准和相机型号等信息,直接点击Next
在选择输出坐标系窗口可以看到自动检测到WGS 84/ UTM zone 44N,而非纯粹的地理坐标系WGS 84,处理的结果如果要用WGS 84地理坐标系的话需要进行坐标转换。
选择处理选项模板为 3DMaps,右侧可以看到为应用实例生成DSM和正射影像图,选中开始处理后点击Finish。
下面进入数据处理阶段,只需等待
4.2 Pix4d处理航摄像片生成的DSM和DOM
最后项目处理结果文件夹如下图所示,数字表面模型DSM和数字正射影像DOM结果都被保存在3_dsm_ortho文件夹下,其中DSM被保存在1_dsm文件夹,DOM被保存在2_mosaic文件夹。
DSM正射影像对应的空间参考投影文件TestUAVGerateDOMandDSM_dsm.prj内容为:
PROJCS["WGS 84 / UTM zone 44N",GEOGCS["WGS 84",DATUM["WGS_1984",SPHEROID["WGS 84",6378137,298.257223563,AUTHORITY["EPSG","7030"]],AUTHORITY["EPSG","6326"]],PRIMEM["Greenwich",0,AUTHORITY["EPSG","8901"]],UNIT["degree",0.0174532925199433,AUTHORITY["EPSG","9122"]],AUTHORITY["EPSG","4326"]],PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",81],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["metre",1,AUTHORITY["EPSG","9001"]],AXIS["Easting",EAST],AXIS["Northing",NORTH],AUTHORITY["EPSG","32644"]]
DOM正射影像对应的空间参考投影文件TestUAVGerateDOMandDSM_transparent_mosaic_group1.prj内容为:
PROJCS["WGS 84 / UTM zone 44N",GEOGCS["WGS 84",DATUM["WGS_1984",SPHEROID["WGS 84",6378137,298.257223563,AUTHORITY["EPSG","7030"]],AUTHORITY["EPSG","6326"]],PRIMEM["Greenwich",0,AUTHORITY["EPSG","8901"]],UNIT["degree",0.0174532925199433,AUTHORITY["EPSG","9122"]],AUTHORITY["EPSG","4326"]],PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",81],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["metre",1,AUTHORITY["EPSG","9001"]],AXIS["Easting",EAST],AXIS["Northing",NORTH],AUTHORITY["EPSG","32644"]]
4.3 ArcGIS打开DSM和DOM结果查看坐标系
打开ArcMap后,点击添加数据,选择DSM和DOM后确定,显示效果如下图所示,同时在图层上右键->属性->源可查看对应的空间参考(坐标系)为WGS 84 / UTM zone 44N。
5、DSM结果tif投影坐标转换为地理坐标WGS84
在ArcGIS中导出地理坐标系WGS84对应的空间参考文件WGS 1984.prj
WGS 1984.prj内容如下:
GEOGCS["GCS_WGS_1984",DATUM["D_WGS_1984",SPHEROID["WGS_1984",6378137.0,298.257223563]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433],AUTHORITY["EPSG",4326]]
5.1 使用ArcGIS中的ToolBox(ArcMap手动操作)
在ArcGIS的工具箱ToolBox中找到数据管理工具下的投影与变换,进入栅格中的投影栅格,打开投影栅格窗口,选择要重投影的栅格文件和输出坐标系WGS84地理坐标系后确定即可。
在ArcMap中查看重投影后DSM84.tif和DOM84.tif的坐标系
DSM84影像中通过识别工具查看影像像素值发现黑色的边框部分对应的RGB的值均为0,可在图层上右键选择属性,在符号系统下的RGB合成中选中显示背景值左侧的方框,并选择背景颜色为白色则可去除黑色边框。
5.2 后台调用ArcGIS中的Arcpy实现栅格重投影并处理NoData(python脚本)
5.2.1 栅格重投影坐标系arcpy脚本所用工具介绍
这里主要利用ArcGISToolBox中的投影栅格和复制栅格两个工具,通过查看工具帮助里的arcpy调用API来实现python脚本对DSM和DOM的重投影,最终编写了一个ConvertTifToWGS84.py脚本文件,放到ArcGIS对应的python编译器路径(D:\ArcGIS\Python27\ArcGIS10.4)下打开cmd窗口输入python.exe ConvertTifToWGS84.py
即可运行。
5.2.2 ConvertTifToWGS84.py调用示例
如上图所示,要转换的栅格影像Tif所在的文件夹为C:\Users\Administrator\Documents\pix4d\TestUAVGerateDOMandDSM\3_dsm_ortho\DSMandDOMToWGS84
,需要手动在此文件夹下新建一个result文件夹,这个result文件夹用来保存转换为WGS 84坐标系后的Tif文件,同时在D:\ArcGIS\Python27\ArcGIS10.4
文件夹下修改ConvertTifToWGS84.py代码的第三行为rootdir = "C:/Users/Administrator/Documents/pix4d/TestUAVGerateDOMandDSM/3_dsm_ortho/DSMandDOMToWGS84"
后内容如下所示。
ConvertTifToWGS84.py(利用ArcGIS 的python2.7 arcpy)
import os
import arcpy
rootdir = "C:/Users/Administrator/Documents/pix4d/TestUAVGerateDOMandDSM/3_dsm_ortho/DSMandDOMToWGS84"
flag = 0
for (dirpath, dirnames, filenames) in os.walk(rootdir):for filename in filenames:suffex = filename[len(filename) - 4] + filename[len(filename) - 3] + filename[len(filename) - 2] + filename[len(filename) - 1]if (suffex == '.tif'):inputTif = rootdir + '/' + filenamemiddleTif = rootdir + '/result/' + '' + 'wgs1984' + filenameoutputTif = rootdir + '/result/' + '' + 'Noda_wgs1984' + filenameprint(inputTif)filename_prj = inputTif.replace('.tif','.prj')#sourceSR = arcpy.SpatialReference(filename_prj)print(filename_prj)targetSR = arcpy.SpatialReference("C:/Users/Administrator/Desktop/WGS 1984.prj")arcpy.ProjectRaster_management(inputTif, middleTif, targetSR, "BILINEAR")# arcpy.ProjectRaster_management(inputTif, middleTif, targetSR, "BILINEAR", "#", "#", "#", sourceSR)arcpy.CopyRaster_management(middleTif,outputTif,"#", "#", 0);print('Result:'+outputTif)
print('successed!')
# python.exe ConvertTifToWGS84.py
GEOGCS["GCS_WGS_1984",DATUM["D_WGS_1984",SPHEROID["WGS_1984",6378137.0,298.257223563]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433],AUTHORITY["EPSG",4326]]
下面需要将WGS 1984.prj复制到桌面,在D:\ArcGIS\Python27\ArcGIS10.4文件夹下打开cmd命令行窗口,并输入命令python.exe ConvertTifTiWGS874.py
回车开始执行坐标转换,执行完成后会在result文件夹得到转换后的DSM和DOM。
result文件夹下转换为WGS 84坐标系后的DSM和DOM结果如下,可以在ArcGIS中打开查看坐标系。
5.2.3 成功叠加WGS84坐标系的DSM和DOM到三维地球OSGEarth显示
航摄像片生成DSM(Pix4d)2021.5.21相关推荐
- 2021.1.21——星露谷作物计算器的可视化
2021.1.21--星露谷作物计算器的可视化 前言 目标 excel表格 代码 效果图 总结 前言 书承上文,之前做的计算器,仅仅是在调用excel里的数据,生成图表并放回到excel表里,每次要查 ...
- 2021.8.21 网易秋招开发笔试(题目 + java代码)
2021.8.21 网易秋招开发笔试 一.题目: 二.程序 //采用的是深度优先搜索 import java.util.HashMap;public class wangyi {public stat ...
- 结合FME利用倾斜三维模型数据成果生成DSM等数据产品
原文发布时间:2017/8/4 14:39:06 作者:土豆(天下图) 邮箱:18055031@qq.com 1 序言 众所周知,我们利用Smart3D除了生成各种数据格式的三维模型以外,还可以在生 ...
- 三维分析之生成DSM
lingguilan DSM又称数字地表模型数据,是指包含了地表建筑物.桥梁.数目等要素的地表高程模型,即这个数据除了包含地表高程,还包含了地表面以上的建筑.植物等要素的信息.此功能常用于提取倾斜模型 ...
- 2021.1.21课程摘要(逻辑教育-王劲胜)
2021.1.21课程摘要 逻辑教育-13期-Python基础班-王劲胜 一.字符串 二.运算符 三.作业讲解 逻辑教育-13期-Python基础班-王劲胜 一.字符串 1.字符串的方法 • len( ...
- 前端16天--IFC、BFC、H5新特性、选择器、伪类元素、扩展盒模型、圆角、盒子阴影等--2021/4/21
前端16天–IFC.BFC.H5新特性–2021/4/21 HTML5是HTML标准的最新演进版本: 1.是一个新的HTML语言版本包含了新的元素.属性和行为. 2.同时包含了一系列可以被用来让web ...
- 尚硅谷——谷粒商城项目开发记录——2021.11.21
尚硅谷--谷粒商城项目开发记录--2021.11.21 概念: 1.var和let的区别: 作用域: var 声明的变量往往会越域 let 声明的变量有严格局部作用域 声明次数: var 可以声明多次 ...
- 一个女生物联人的自学单片机笔记2021.1.21(单片机---单片机的最小系统)
Hello!宝宝们,今天是2021.1.21,这里是甜小姐的后花园.
- 威斯康星大学-深度学习和生成模型导论2021
课程描述 深度学习是一个专门在大型,非结构化数据集中发现和提取复杂结构的领域,用于对具有多层结构的人工神经网络进行参数化.由于深度学习推动了许多研究和应用领域中的最先进技术,因此它已成为现代技术不可缺 ...
- CGAL例程:地理信息系统----点云数据生成DSM、DTM、等高线和数据分类
作者:西蒙·吉罗多 链接:CGAL 5.4 - Manual: GIS (Geographic Information System) 目录 1 概述 2 不规则三角形网数据表示:TIN 3 数字表面 ...
最新文章
- GitHub 上有哪些适合新手跟进的优质项目?(附地址)
- 【Python入门】列表的常用操作,这十张图把它说的明明白白!
- 优化你的DiscuzNT3.0,让它跑起来(4)asp.net 缓存和死锁
- springboot---整合shiro
- button hover逐渐变色_两当水库界桩@产品长久不变色 - 两当安全防护
- echo, print, printf 和 sprintf 区别(PHP)
- [js高手之路] dom常用节点属性兼容性详解与应用
- Java练习21:递归方法求n!
- 分库分表学习总结(1)——数据库中间件MyCat学习总结之MyCat入门简介
- java基础[多态基础,多态数组,多态参数方法]
- 零基础如何学习JAVA编程开发
- opencv 绘制轮廓边框 多边形 圆形 矩形
- uniapp开发:uniapp之vue3.2开发页面传值的解决方案
- android6.0 framwork修改
- js对某个对象数组按照某个字段来排序
- lisp不是函授型语言_讨论:为什么Lisp语言不再被广泛使用
- oracle crm系统叫什么,目前市场上的CRM系统有哪些
- 主流的6个Go语言Web框架
- 平衡树(Treap)的基本操作
- PMP之第一章 引论