一、前言

Wish3D出品的Smart3D系列教程已经推出3讲了,分别是关于倾斜摄影三维建模原理应用、照片采集技巧、Smart3D各个功能模块的作用,它们都是围绕Smart3D建模软件进行的讲解。那么,在这次的第四讲中,我们将通过实际建模操作,围绕小物件照片的三维重建来说明Smart3D建模软件的处理流程。

二、工具材料

Smart3D建模软件、手机、茶叶罐、报纸

三、方法步骤

(一)拍照

本次实战演练是关于小物件的照片三维重建,基于较好的建模效果,我们需要选择一个有色彩识别度且不透明的小物件,因此选择了身边符合条件的茶叶罐。如下图所示:

这里看到茶叶罐是放置在透明玻璃茶几上的,大家知道透明的物体是不能参与重建的,因为其不反射任何的光源波段,对照片重建有一定的阻碍作用。加上需要对建模物体加上一个位置参考,可以在茶叶罐的下面垫了张报纸。

接下来,开始通过手机照相机围绕茶叶罐开始环拍了。一般来说,连续影像之间的重叠部分应该超过60%。物体的同一部分的不同拍摄点间的分隔应该小于15度。对于简单的小物件,单反或手机拍摄可以环绕式地从物体周围均匀分隔地采集影像。为了保留更多的物体细节,需要保证一定的重叠度,这次是手握手机在同一高度,围绕茶叶罐每隔半步摄取一张照片,一共有27张相片,大致示意图如下:

更多的照片采集要求及技巧可以参考Smart3D系列教程2之 《为什么三维重建效果这么差?——探探那些被忽略的拍照要求和技巧》 (关注wish3d微信公众号查看历史消息)

照片采集结束,将手机里的相应相片导入到电脑中,新建工程文件夹,如下图:

检查一下茶叶罐还有哪些部位没被拍到或者角度重叠度异常,若有问题,返回补拍,若一切正常,那么到这一步,三维重建中的照片采集任务就完成了,下面就该转移到软件操作中去了。

(二)三维重建

添加照片

打开ContextCaputure Master,添加之前拍摄的全部照片:

添加完毕,结果如图:

照片导入之后需要对影像组进行检查,看看是否有丢失的照片,操作如下图:

影像组照片检查正常,否则就需要重新整理下原始照片了:

进入3D view板块检查照片位置是否正确:

控制点和连接点可以在这一步中添加,由于茶叶罐属于小物件,这里就先不加了。

空三运算

一切检查无误之后,回到General板块,点击提交空三按钮:

输入空三名称:

选择定位模式,默认是选用照片的定位数据,这项主要适用于航拍的大范围,针对小物件这里选择第二种自动定位:

其他的参数大多数情况都是默认当前状态:

最后点击提交按钮,准备空三处理:

接着需要打开引擎,空三运算处理这才正式开始:

26张片子大概几分钟就可以空三处理完毕,General板块可以看到空三结果精度报告,如下图:

这时可以看到,影像组里的照片都已定位成功:

3D view版块中,可以看到照片和模型的相对位置示意图,并且点击照片可以预览到照片和在模型中的范围:

重建生成

空三处理完毕无误之后,回到General板块,点击提交重建按钮:

准备生成模型:

这边提一下上图的Spatial framework板块,这里面可以将数据分块生成,加快了处理速度,这次生成的是小物件模型,无需分块,在大面积的航拍数据,尤其是集群处理时,需要做到规则分块,使得每台机器的RAM在最大RAM期望值以下。

另外,这个版块下还可以手动设置模型生成的范围,通过拉伸按钮沿着XYZ坐标轴来设定:

一切设置完毕后,点击提交生成产品按钮:

输入模型名称及详细信息:

选择模型类型,第一行3D mesh就是三维模型了:

选择模型数据格式、设置纹理压缩比和节点大小:

这里我们生成OSGB格式。其他还有这些格式,前三种是最常用的格式:

输入生成模型的存储路径:

保持Engine在打开状态,提交生成,最后的三维模型就在处理中了。

处理完毕后,General版块:

打开模型数据的存储目录:

Properties版块里可以看到关于模型的所有处理详细信息:

(三)模型预览

对于OSGB格式的数据,这里给出两种预览可视化的方法:

1) 在Smart3D中可以生成S3C数据,而这种格式的数据是可以通过Acute3D viewer打开浏览三维模型场景的,那么,如何将生成的OSGB数据创建一个S3C索引继而在viewer里加载呢?大家可以看看下面链接中的帖子就会明了:

http://www.cnblogs.com/sunnyCXX/p/6042675.html

模型效果如下图:

2) 上述的方法耗时较长且步骤繁杂,接下来大家介绍一个直接的方法:将成果文件夹中的data文件夹打包为ZIP压缩包:

在www.wish3d.com上传:

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

四、注意事项

在本次处理的过程中,有如下几点需要重点强调:

1、照片采集时,建模物体的下方一定需要放置一个具有标识性的参考物,可以是报纸、书本等等。

2、对物体拍照时,一定需要保证60%及以上的重叠度,本次实验为了速度只拍了一圈,大家可以试试上下拍两圈,建模效果会增色不少。

3、空三处理阶段:

最好是选择默认定位,这样出来的模型姿态是正常的,选择照片自有的定位信息空三处理的话,会出现这样的效果:

是不是很多人在处理时都有出现这样的情况?

4、空三处理和重建生成三维模型时确保Engine是工作状态。

以上就是对于小物件(茶叶罐)从照片采集到生成处理模型的这一整个流程了,感兴趣想试一试的朋友可以关注Wish3D微信公众号回复4即可获得本次的原始照片及成果文件,有疑问的朋友欢迎加入QQ交流群516635556讨论交流。接下来,我会在下周同一时间(每周三下午)Wish3D微信公众号即将推出Smart3D系列教程5之《案例实战演练2——大区域的地形三维重建》,我们不见不散!

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

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

Smart3D系列教程4之 《案例实战演练1——小物件的照片三维重建》的更多相关文章

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

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

  2. Smart3D系列教程5之 《案例实战演练2——大区域的地形三维重建》

    一.前言 Wish3D出品的Smart3D系列教程中,前面一讲说明了小物件的照片三维重建,相信大家对建模的流程有了一定的了解.这次讲解中,我们将演示说明以一组无人机倾斜摄影照片为原始数据,通过Smar ...

  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. 挑战全网最幽默的Vuex系列教程:第五讲 Vuex的小帮手

    先说两句 前面已经讲完了 Vuex 下的 State.Getter.Mutation 及 Action 这四驾马车,不知道大家是否已经理解.当然,要想真正熟练掌握的话,还是需要不断的练习和动手实践才行 ...

  9. 屌炸天实战 MySQL 系列教程(二) 史上最屌、你不知道的数据库操作

    此篇写MySQL中最基础,也是最重要的操作! 第一篇:屌炸天实战 MySQL 系列教程(一) 生产标准线上环境安装配置案例及棘手问题解决 第二篇:屌炸天实战 MySQL 系列教程(二) 史上最屌.你不 ...

随机推荐

  1. ZOJ 3871 Convex Hull(计算几何、凸包)

    题意:给n个点,|x[i]|,|y[i]| <= 1e9.求在所有情况下的子集下(子集点数>=3),凸包的面积和. 这题主要有几个方面,一个是凸包的面积,可以直接用线段的有向面积和求得,这 ...

  2. java项目上线过程

    关于如何将Javaweb上线,部署到公网,让全世界的人都可以访问的问题.小编将作出系列化,完整的流程介绍. 1.在myeclipse中开发好项目,打包成war格式,不会的同学参考以下 http://z ...

  3. linux部署pxe+kickstart批量安装linux操作系统

    环境 系统 centos6.6 无图形界面 ip 192.168.2.1 系统 centos7.2 有图形界面 以下命令在centos6.6上执行 1. yum -y install dhcp* tf ...

  4. 372. Super Pow

    问题 Your task is to calculate ab mod 1337 where a is a positive integer and b is an extremely large p ...

  5. 解决apache 443端口被占用

    检测 错误 httpd.exe -w -n "apache" -k start , 进入Apache的安装目录, 搜索httpd-ssl.conf,httpd-ahssl.conf ...

  6. Datazen自定义地图

    Datazen的地图数据定义主要以ESRI的Shape文件格式为主,这是现如今被广泛使用的一种地图数据格式.在Datazen中,自定义地图需要提供如下两个地图数据定义文件: SHP文件提供地图的位置数 ...

  7. [转]IIS6.0迁移至IIS7.0

    原文地址:http://www.splaybow.com/post/iis-6.0-7.0.html 公司的项目需要迁移到IIS7的目标机器中 在此做记录 原来server 2003系统 迁到2008 ...

  8. 从零起步搭建Wordpress个人博客——Windows 平台篇(上)

    本文以 Windows Server R2 64bit 标准版 为基础,其他windows版本可能会略有不同. 参考资料: https://codex.wordpress.org/Installing ...

  9. 会议通js

    js逻辑: /** * Created by wanglijuan on 2016/12/2. */ $(function () { //登陆后请求数据 // $.ajax({ // url:&quo ...

  10. java对象转换成json

    package com.bjs.acrosstime.utils; import java.util.ArrayList; import java.util.Date; import java.uti ...