一、前言

Wish3D出品的Smart3D系列教程中,前面一讲说明了小物件的照片三维重建,相信大家对建模的流程有了一定的了解。这次讲解中,我们将演示说明以一组无人机倾斜摄影照片为原始数据,通过Smart3D建模软件,重建生成三维地形的过程。与上次不同的是,这次的建模需要对导入的照片预先做一些处理,详情后面会一一说明。

二、工具材料

包括Smart3D建模软件,一组垂直拍摄而且多角度、重叠度满足重建要求的航片、航片对应的pos数据文件

三、方法步骤

关于通过无人机航拍的照片,照片进行三维重建生产模型,一些情况下照片中是自带有GPS数据信息的,而另一些情况则是会导出一组无定位信息的照片和对应的pos数据文本。前者我们直接新建区块,把照片直接导入给软件跑出结果就ok了。那么,这次我们主要来谈论研究第二种情况,即照片和pos分开的情况。

(一)区块导入表格的编辑

区别于第一种情况我们需要编辑下导入区块的表格,我们将照片的文件路径、参考坐标系、传感器的基本信息等信息嵌入到这个表格里,通过它来实现对照片和pos信息数据的导入。后面的操作处理是跟直接导入照片的方法是没有差别的。

首先,我们看到原始数据的文件夹如下图所示,包括一组照片和相应的pos文件:

可以看到,这个pos数据是以文本文档的形式存在:

而在导入区块的过程当中,我们需要导入Excel表格,那么,这时需要运用一定的办公软件的技巧将其转换为Excel表格,这个表格需要包含如下图的4个工作表:

结果如下:

Photogroups工作表中,名称列需要与照片工作表的PhotogroupName一致:

Photos工作表的编辑结果如下图:

控制点工作表中,由于无人机航拍的区域不是很大,且对于建模成果的精度没有设定范围,追求建成模型的速度,我们本次先不设控制点,很多朋友都是误把照片放到了这个工作表中,致使处理出现问题,需要注意一下。编辑结果如下:

Options工作表中,是坐标系和照片路径的信息,设置如下:

到这一步为止,区块导入的表格就算编辑完毕了。

(二)创建工程

打开Smart3D软件,输入工程名称和存储路径,这里注意不要勾选创建空区块,因为我们需要直接导入表格来导入区块,示意图如下:

此时,导入上述的Excel表格:

这里要提到前面的表格当中,各个工作表的英文名称务必要正确,这里我就是漏了一个字母,提示表格导入失败:

返回修改,重新导入,结果如下图:

可以看到,一个工作区块被顺利导入,接下来就可以开始处理工作了。

(三)空三处理

区块导入之后,首先要对照片组做个检查,查看是否有丢失的情况:

检查无误即可接着处理,否则返回照片组重新整理。

如下图可以看到,之前的区块导入的表格关于影像组的基本信息都体现出来了:

照片组的每一张影像都可以预览到其图像且可以打开其路径,空三还没开始前,每张影像的姿态是未知的,如下图所示:

3Dview中,如下图,每张影像代表一个点,可以看到它们都是按照一定规则排列的,没有飘离出去的,若有,可以直接删除。

一切检查工作正常,点击空三按钮:

输入空三名称:

选择定位方式:

设置默认当前参数:

提交后,准备空三处理:

开启Engine,空三处理开始:

空三结束后查看精度报告,发现每张照片都被识别处理,如下图:

影像组的照片全部被定位完毕:

3Dview中照片摄取范围与区域模型之间的关系图:

(四)重建生成模型

点击提交重建按钮:

在Spatial framework中调整模型生成区域的大小:

这里重点说明下模型分块生成的方法。同样在Spatial framework中,默认是不分块的(No tiling):

上图第二个红框中的Expected maximum RAM usage per job代表每项处理任务的最大期望内存值,这就要求处理该任务的计算机可用内存必须保证大于这个内存值,集群处理中,每台计算机的可用内存必须有高于期望内存的容量。而当前的处理任务中,期望内存值是14个G,对于处理它的只有4G装机内存的计算器显然是不可行的,这时,我们需要作出分块处理,使得每块处理所需的内存控制在计算器的可用内存以下。因此,我们将数据规则分块处理,将每块的边长分为200米,共23个区块,期望内存降低为2.7G,示意图如下:

分完块的数据,各瓦片可以在Reference 3D Model预览:

一切准备就绪:

提交生成模型:

输入模型名称:

选择模型种类:

生成OSGB的三维模型:

选择全部的区块生成:

指定模型的保存路径:

到这里参数设置完毕,打开Engine,开始生成模型:

模型生成后可以看到各个瓦片的生成情况:

处理中的参数选择及坐标系:

四、网络发布

对于由多个Tile组成的OSGB格式的Production数据,Acute3D viewer浏览工具是无法直接同时加载浏览整体的三维模型的。这里介绍一个简单直接的方法——通过Wish3D网络发布三维数据。

1.将成果文件夹中的data文件夹打包为ZIP压缩包:

2.在www.wish3d.com上传:

3.编辑完作品信息后,上传成功的模型效果如下图:

上图可以看到,除了加载浏览模型以外,还可以对模型添加标注(文字、图片、视频、全景),设置飞行路径,量测模型高度应用功能等。具体的操作说明可以加入QQ交流群516635556进入群文件查看相关文档。

五、小结

以上就是对于大区域地形的照片三维重建生成处理模型的这一整个流程了,如果感兴趣想试一试的朋友可以关注Wish3D微信公众号回复5即可获得文档,有疑问的朋友欢迎加入QQ交流群516635556讨论交流。接下来,我会在下周同一时间(每周三下午)Wish3D微信公众号即将推出Smart3D系列教程6之《案例实战演练3——倾斜数据正射影像的生产》,我们不见不散!

Wish3D已出品的Smart3D系列教程如下,在微信公众号的历史消息中可以查看,欢迎大家关注Wish3D。

  • 《浅谈无人机倾斜摄影建模的原理和方法》
  • 《为什么三维重建效果这么差?——探探那些被忽略的拍照要求和技巧》
  • 《论照片三维重建中Smart3D几个工作模块的功能意义》
  • 《案例实战演练1——小物件的照片三维重建》
  • 《案例实战演练2——大区域的地形三维重建》

Smart3D系列教程5之 《案例实战演练2——大区域的地形三维重建》的更多相关文章

  1. Smart3D系列教程6之 《案例实战演练3——倾斜数据正射影像及DSM的生产》

    一.前言 Wish3D出品的系列教程中,前面两讲分别讲述说明了小物件的照片三维重建.大区域地形的三维重建,从照片的直接导入至软件到通过Excel表格将区块导入处理,从不同的模型类别.不同的导入方式演示 ...

  2. Smart3D系列教程4之 《案例实战演练1——小物件的照片三维重建》

    一.前言 Wish3D出品的Smart3D系列教程已经推出3讲了,分别是关于倾斜摄影三维建模原理应用.照片采集技巧.Smart3D各个功能模块的作用,它们都是围绕Smart3D建模软件进行的讲解.那么 ...

  3. Smart3D系列教程7之 《手动配置S3C索引加载全部的瓦片数据》

    一.前言 迄今为止,Wish3D已经出品推出了6篇系列教程,从倾斜摄影的原理方法.采集照片的技巧.Smart3D各模块的功能应用.小物件的照片重建.大区域的地形重建到DSM及正射影像的处理生产,立足于 ...

  4. Smart3D系列教程3之 《论照片三维重建中Smart3D几个工作模块的功能意义》

    [摘要] 近年来,倾斜摄影测量技术是国际测绘遥感领域近年发展起来的一项高新技术,利用照片进行三维重建成为一项关键性的技术.Smart3D软件,是照片三维重建主流软件之一,本文将就Smart3D建模软件 ...

  5. Smart3D系列教程2之 《为什么三维重建效果这么差?——探探那些被忽略的拍照要求和技巧》

    一.照片采集的实用概念 根据照片进行三维重建的过程中,有人没怎么遇到坑,有人被坑的不轻.可能是模型的纹理失真,模型的法线错了,模型会生成我们各种也想不到的结果,那么,是什么导致三维重建效果这么差的?是 ...

  6. Smart3D系列教程1之《浅谈无人机倾斜摄影建模的原理与方法》

    一.引言 倾斜摄影测量技术是国际测绘遥感领域近年发展起来的一项高新技术,以大范围.高精度.高清晰的方式全面感知复杂场景,通过高效的数据采集设备及专业的数据处理流程生成的数据成果直观反映地物的外观.位置 ...

  7. Smart3D系列教程8之 《模型合并——相邻地区多次建模结果合并》

    迄今为止,Wish3D已经出品推出了7篇系列教程,从倾斜摄影的原理方法.采集照片的技巧.Smart3D各模块的功能应用.小物件的照片重建.大区域的地形重建到DSM及正射影像的处理生产,立足于建模软件的 ...

  8. NetworkX系列教程(10)-算法之二:最小/大生成树问题

    小书匠 Graph 图论  重头戏部分来了,写到这里我感觉得仔细认真点了,可能在NetworkX中,实现某些算法就一句话的事,但是这个算法是做什么的,用在什么地方,原理是怎么样的,不清除,所以,我决定 ...

  9. 【全网最全的博客美化系列教程】08.自定义地址栏Logo

    全网最全的博客美化系列教程相关文章目录 [全网最全的博客美化系列教程]01.添加Github项目链接 [全网最全的博客美化系列教程]02.添加QQ交谈链接 [全网最全的博客美化系列教程]03.给博客添 ...

随机推荐

  1. sh4.case语句

    case ... esac 与其他语言中的 switch ... case 语句类似,是一种多分枝选择结构.case 语句匹配一个值或一个模式,如果匹配成功,执行相匹配的命令.case语句格式如下: ...

  2. 忘记mysq rootl密码

    忘记mysq rootl密码 1       mysql忘记root密码 1.1     查看mysql的进程 [root@mysql data]# cat /data/mysql.localdoma ...

  3. JS基础学习(一)

    首先感谢 http://www.w3school.com.cn/js/index.asp 学js真的很方便,&下面的内容其实是我自己做的一个备忘 第一节 大致了解 一 js基本介绍 1.轻量级 ...

  4. AspNetPager分页控件的使用

    下面所记得东西仅仅是使用方法,详细知识点请看链接:http://www.webdiyer.com/Controls/AspNetPager/Downloads 首先:从网站上下载并安装控件 下载地址: ...

  5. 解决一则enq: TX – row lock contention的性能故障

    上周二早上,收到项目组的一封邮件: 早上联代以下时间点用户有反馈EDI导入"假死",我们跟踪了EDI导入服务,服务是正常在跑,可能是处理的慢所以用户感觉是"假死" ...

  6. Oracle跟踪文件

    1.跟踪文件分类 1)计划内的.由用户请求所产生的跟踪文件 2)计划外的.数据库服务器自动产生的跟踪文件 2.计划内的.由用户请求所产生的跟踪文件 2.1 生成 ①alter session set ...

  7. 使用sublimehighlight 将文本 转化html

    a = "aaa" b = "bbb" c = "ccc" final = a + b + c print final import sys ...

  8. 如何实现VoIP中大并发应用

    后台服务器实现高并发方式: 说明: 黄色皆为运营商或第三方对接系统的VoIP设备等. 前置服务器A与B为热备容灾模式,当A异常,立即跳转到B. 应用服务器做实时容灾处理. 数据库做实时容灾处理. 媒体 ...

  9. EditText获取和失去焦点,软键盘的关闭,和软键盘的显示和隐藏的监听

    软键盘显示和隐藏的监听: 注: mReplayRelativeLayout是EditText的父布局 //监听软键盘是否显示或隐藏 mReplayRelativeLayout.getViewTreeO ...

  10. js中的 || 与 && 运算符 的使用

    &&和||总是傻傻分不清,在这里详细记录一下吧.也给你们分享一下. 表达式a && 表达式b :  计算表达式(或者函数)a的运算结果, 如果为 True, 执行表达式 ...