百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术教程 > 正文

CC由基础→进阶非常全面详细的教程提高空三效率、提升模型效果

csdh11 2025-03-07 17:51 3 浏览


本文分两部分

01基础篇

很全面详细的讲解了CC(Smart3D)的建模流程

02进阶篇

分享了集群、提高空三效率、提升模型效果、

不同航高航片,空中+地面照片及大区域联合建模方法

建立索引、电脑三维配置


01

基础篇




01

新建工程


新建工程,设置工程路径


02

导入照片


导入本机照片。如需集群处理,则需要导入网络路径下的照片,详见6.2工程设置:


导入照片


Set downsampling(设置采样率):该参数只会在空三的过程中对照片进行重采样空三,建模时仍旧使用原始分辨率影像。

Check image files...(检查航片完整性):建模失败的时候可以用此功能进行数据完整性检查。

Import positions...(导入POS):导入POS格式如下,


a. 如果有多个照片组(Photogroup)则必须保证每个照片组中的照片名称唯一,否则会导入失败;


b. POS路径必须为英文;


相机参数


每个照片组(Photogroup)都会有一个相机参数,可以在右键菜单中导入或导出相机检校参数(特别对CC4.4以后版本有用)。


03

空中三角测量


3.1常规空三流程


空三参数设置,如第一次使用,则建议直接按照默认参数,只需“下一步”即可,如欲了解其中参数意义则进入如下内容:


(1)设置名称,最好根据飞行架次或项目信息进行设置


(2)参与空三的照片,默认使用全部照片


(3)照片定位或地理参考设置



(4)空三参数设置,通常默认参数即可


a.对于地名拍摄照片,可能会修改“Keypoints density”、“Pair selection mode”、“Component construction mode”三个选项;


b.对于航空拍摄照片,通常使用默认参数,如果多个架次且存在航高不一致的情况,则可能会修改“Pair selection mode”、“Component construction mode”两个选项;(实例:百里峡漂流两个架次航高不一致)


(5)空三检查


1首先保证General选项卡中显示Georeferencing情况的空三结果,才能进行建模操作。


2然后在特征点的三维视图中检查又没有明显的分层或交叉现象


O 主要查看航片有没有交叉;

O 特征点在道路或房屋区域有没有分层;

O 检查像控点又没的平面和高层误差是否过大;


检查航片位置


检查像控点误差


3.2空三刺点(在航片上刺地面像控点)


O 导入像控点


导入像控点之前需要先选择坐标系,此次坐标系更加像控点的坐标系进行选择,

如果像控点使用的是地方坐标系,个人建议使用局部坐标系笛卡尔(cartesian)坐标系。


导入像控点


O 刺点


选择坐标系并刺点


注(个人观点):刺点一般尽量分布在多个航带的照片上,每个航带刺点数量不少于9张,若是边缘点或者某些航线照片较少可以低于此标准,一般不低于3张。


3.3导入/导出空三流程


O 导出空三


导出已完成空三


O 导入空三


导入其他已完成空三


04

模型重建


然后在空三结果中开启一个重建,使用“General”选项卡中右下角的“New reconstruction”按钮,如下图


新建reconstruction


新建reconstruction后


4.1重建参数设置


建模开始之前,必须进行建模参数设置,如下图所示,为建模之前必须设置的参数。


建模参数设置


4.1.1设置坐标系(初学直接略过)


对于空三后在General选项卡中显示Georeferencing情况的空三结果,才可以在建模时设置坐标系。以及进行地理坐标(大坐标)的像控点刺点工作。对于空三后显示的为relative和absolute状态的块,则只能使用小坐标(四位整数以内)的坐标进行刺点,此时时不支持国家地理坐标的。


参数设置概览


选择坐标系


注:此处建议项目成果坐标系或ENU坐标系。


搜索坐标系


4.1.2设置建模范围(初学可以略过)


根据视图中的空三结果修改需要建模的区域。


(1)使用软件自带的工具修改建模范围,以及导入KML进行修改;


使用软件自带工具修改建模范围前


使用软件自带工具修改建模范围后


(2)使用第三方软修改建模范围


a.在块中输出空三结果中的照片位置为KML文件;


b.使用Global Mapper软件打开该KML文件,根据照片位置勾绘多边形,导出为KML格式;



c.导入在Global Mapper软件中勾绘的多边形;


分块大小设置:设置好瓦片划分模式及瓦片大小后,需要注意内存使用大小(Expected maxium RAM usage per job)不超过24G(计算机内存32G)。此处的内存使用大小是根据空三完成后的特征点数量进行计算的,由于CC4.4以后的版特征点数量大幅下降以及有些区域特征点本身较少的原因,因此推荐以参与建模的照片数量来确定瓦片数量。


瓦片划分建议参考位置


4.1.3设置瓦片划分方式及瓦片大小


(1)使用规则瓦片


(2)使用不规则瓦片


此功能在4.3以后版本中增加,主要由于现阶段部分平台对该种瓦片划分方式支持较差以及数据后处理难度较大,为保险起见,当前建议不使用该种瓦片划分方式。


4.2生成产品

选择Reconstruction1,点击General选项卡中的“Submit new production”按钮。


提交产品


4.2.1产品名称

建议工程或数据名称+格式组合


4.2.2确定生成的产品类型(初学,使用默认)


选择产品类型


4.2.3确定生成的产品格式(初学,使用默认)


选择产品格式


4.2.4确定产品的坐标系及平移量(初学略过)


选择坐标系


注:如上图所示,为生成产品的过程中进行的坐标系选择,如果希望OSG模型能直接导入Skyline平台则:a.使用默认的ENU坐标系;b.导入时取消导入第二个选项中的.xml文件,导入成功后再到“Output”文件夹立面修改LODTreeExport.xml文件中的坐标系信息。


设置原点(如果一个工程分几个区域建模,同时又希望使用S3C_Composer建立索引时可以修改)


4.2.5再定义产品的范围(初学略过,非紧急任务也可略过)

此功能可以作为在节点足够的情况下加快建模速度的一个方式,对于需要生成正射影像的工程,不建议在此重新定义范围,否则会导致正射影像生成不完整。最好采用4.1.2中的方法设置产品生成范围。



通过鼠标选择分块


4.2.6提交并运行


提交产品


提交状态


05

开启引擎


1、检查工程中配置的发布任务路径(便于各节点到改路径读取任务)


工程中配置Engine工作路径


2、每个节点使用CCSeting设置引擎读取任务的路径,需要和工程的中发布的任务路径一样。


CCSeting中设置Engine路径


3、打开引擎

引擎最终的执行任务角色,它会根据本节点计算机中CCSeting中设置的路径,到改路径下领取任务并执行。


02

进阶篇


06

集群配置


集群方法也可参考之前发→集群步骤


6.1文件共享方法(路径配置——工程及Jobs均需设置为共享路径)

(1)文件共享设置



(2)共享文件的密码保护设置(共享文件夹后,其它机器访问时仍需要密码,可通过以下方式修改)

打开“网络和共享中心”


6.2工程设置

1照片路径设置

一定要导入共享路径下的照片,保证照片来自网络路径。


导入网络路径照片


2使用工程发布新建及设置工程,以及发布任务(Jobs)


3各节点机器中通过CCSeting设置本机执行任务(Jobs)的位置,然后开启个节点的机器执行任务


07

提升空三成功率


7.1方法一:软件版本选择


大概的空三效果对比4.0>4.2>4.4.0>4.1>4.3(此次为个人经验,未作论证),4.4.6以后版本在空三中引入集群处理方式,但初步测试效果弱于4.4.0。优点是新版本速度快。


7.2方法二:修改空三参数

(1)空三参数设置中,关于“Component construction mode”参数的应用,“One-pass”和“Multi-pass”不同的空三效果(针对某些架次之间空三不好时的情况,和部分照片位入网的情况)。


图7-1 空三参数详细设置


图7-2 使用“One-pass”进行空三后的结果(使用照片自带GPS定位信息)


图7-3 使用“Multi-pass”进行空三后的结果(使用照片自带GPS定位信息)


(2)导入相机参数


为每个照片组分别导入相机检校参数,


a.如果已经进行过相机检校则直接输入或导入相机参数;

b.如果已经进行过空三则可以导入软件子检校的相机参数(此法对于无相机检校参数空三失败时有效,也即最好在空三前导入相机参数,此时可以导出空三结果良好的架次之相机检校参数用于其他架次)。


图7-4 导入相机参数


(3)修改位置和姿态参数(终极提升方式)

在4.3以后的版本中,如果空三结果不好,则可以将下图中两个参数设置为Compute在已有的结果上再次进行空三。


图7-5 修改位置和姿态参数


08

提升模型效果


8.1改进拍摄方式(未进行严密论证)


建议在空中+地面拍摄的方式建模时,在使用地面照片拍照的上方使用大疆精灵补充拍摄一层(镜头倾斜)。具体拍摄方式如下图9-5所示,如果条件允许建议使用图9-6中所使用的拍照方式,

(注:针对建筑物前有树木遮挡的情况,建议尽量使用精灵进行补拍,不建议使用地面拍摄,除非树木极为密集则可以使用地面相机补充屋檐。如必须进行地面补拍,则需尽量避开树木。)精灵建议补拍方式:(拍摄距离不应低于30米,特殊情况下可以先让相机倾斜的较为厉害,不建议直接近距离进行拍摄,必须先保证精灵将屋顶和侧面完全覆盖以后再考虑拉近拍摄。)



图7-5 精灵补充拍摄方式


图7-6 多层渐近拍摄方式


8.2调整航片


根据原始航片进行建模得到的三维模型效果一直不出色,后在建模之前对原片进行特色后模型效果有部分提升,以下为使用到的一些参数。

(1)使用Camera Raw工具(快捷键Ctrl+Shift+A)中的“fx”选项卡中的去雾工具对照片进行去雾,对比度,特别是其去雾效果很好;然后再使用阴影/高光(图像--->调整-->阴影/高光)可以加亮暗部,压缩亮部。

初步形成经验参数:


不严重

严重

去雾

30-50%

70-80%

锐化

15-20

对比度

15-25

清晰度

15-25

色温

5-10

色调

-5—-15

Camera Raw调整效果


(2)添加颜色蒙板



8.3调整建模参数


8.3.1几何精度参数


Extra/High:模型细节好,数据量大(4倍左右),建模时间长(2倍以上),建议大型或超大型项目使用;

Middle:模型细节差,数据量小,建模时间短,建议中小行项目使用。


Extra和Middle两种精度对比


8.3.2补洞参数


Fill all holes except at tile boundries:每个瓦片模型除了边缘的孔外,没有内部孔

Fill small holes only:每个瓦片模型中出来极小的孔被软件自动填充后,会留下部分孔。


8.3.3平面简化参数


在Reconstruction参数设置中,将最后一个选项卡“Processing settings”中的“Geometric simplification”的参数设置为“Planer”。表示对生成的模型进行平面简化。此参数使,a.路面更平(但造成阶梯路面),b.建筑物形成直角,但是同时又导致模型的三角面比较破碎,对某些模型会严重降低显示效果。因此该参数慎用,使用时建议小于默认参数。

几何简化


几何简化后效果


8.4修改模型和纹理--导入约束


1导入水面约束


可以导入三维模型或者kml,或使用三维obj模型。如果是kml注意导入路径必须为英文路径,且该kml文件中的多边形的每个节点必须有高程。


导入约束


更新模型


2导入模型约束


如果对于模型局部地方需要修改,如建筑物、公路或一些漂浮物,则需要先生成一份该区域的obj格式模型,到每个Tile中去修改obj。然后再将修改的obj按照原有的目录形式保存,再使用Reconstruction中的“Reference 3D Model”选项卡,使用它“Import Retouches...”工具导入修改好的obj模型。如下图所示,在“Import Retouches”对话框中,分上下两个部分,上面部分只是针对修改的模型重新进行纹理映射(会改变模型UV),下面部分则对按照导入的模型和纹理进行格式转换。(如果需要生成多级模型建议先修改模型然后更新,再使用更新的模型进行纹理修改进入下面的固定模型和纹理操作)


注:如果在生成obj模型时改动过坐标系,则在导入的obj模型坐标系应和生成时的坐标系一致。


09

不同航高航片、空中+地面照片及大区域联合建模方法


无像控点的情况下(小区域)

(1)使用高航高航片或者空中照片进行建模,然后在模型上刺点,将这些点作为低航高航片或地面照片的控制点。


(2)对低航高航片或地面照片进行空三,然后合并空三(Merge blocks)进行建模即可。

2使用像控点的情况下(适合不同航高及大区域联合建模是使用)

只需要分别根据像控点刺点进行空三后,再使用合并空三(Merge blocks)进行建模即可。


合并多个空三


010

系统要求


系统推荐:推荐win10专业版或企业版

硬件推荐:CPU:i7(主频高第一,核心多第二)

内存:32G以上

显卡:Nvidia GTX1070以上


该教程版权归原作者所有

如有侵权请告知删除

相关推荐

Hutool Java工具类库导出Excel,超级简单

作者:程序猿的内心独白原文链接:http://suo.im/5Zxx2L前言在开发应用系统的时候,导出文件是必不可放的功能。以前用过POI、easyexcel等工具的导入导出功能,但总感觉太麻烦了,代...

java轻松玩转Excel之EasyExcel

项目地址:https://github.com/PiKeZhao/excel-model.git如果您对该项目有什么问题加群咨询哦978219630(各类电子书籍,学习视频等)大家常用Apache...

程序员:超级简单导出Excel 工具,Hutool Java工具类库

前言在开发应用系统的时候,导出文件是必不可放的功能。以前用过POI、easyexcel等工具的导入导出功能,但总感觉太麻烦了,代码特别多,感觉并不是很好用。今天给大家介绍一款新工具,java工具类库H...

EasyExcel导出Excel表格到浏览器,通过Postman测试导出Excel

一、前言小编最近接到一个导出Excel的需求,需求还是很简单的,只需要把表格展示的信息导出成Excel就可以了,也没有复杂的合并列什么的。...

好难~记录一次生产上的OOM解决过程

点击上方,轻松关注!及时获取有趣有料的技术文章记录一次生产上的OOM解决过程一.项目架构...

发现开源:替换Jenkins,支持多用户多语言部署平台Walle很震撼

溪云阁:专注编程教学,架构,JAVA,Python,微服务,机器学习等领域,欢迎关注,一起学习。部署系统,从手动部署,到用jenkins,到阿里的自动化运维部署,一直在不断的变化姿势,好让自己舒服点。...

SpringBoot + EasyExcel 轻松实现百万级数据导入导出,用起来还优雅

01、背景介绍在实际的业务系统开发过程中,操作Excel实现数据的导入导出基本上是个非常常见的需求。...

10W 行级别数据的 Excel 导入优化记录

优质文章,及时送达作者:后青春期的Keatswww.cnblogs.com/keatsCoder/p/13217561.html需求说明项目中有一个Excel导入的需求:缴费记录导入...

easypoi导出Excel根据内容如何自动换行和自动调整行高

在使用easypoi导出EXCEL的时候,经常会遇到需要根据内容自动换行和自动调整行高的情况...

POI读取/生成Excel大文件,有高人吗?

最近在搞一个通用文件处理服务器,需要处理excel文件,但是有的excel文件大小超过3M,读取文件时直接导致jvm异常:gcoverheadlimitexceeded。原来poi读取excel...

如何轻松实现Excel动态列导出?Easypoi教程来袭!

EasyPoi简介EasyPoi是一款基于ApachePOI和jxls的Java开源框架,它可以用于快速创建Excel、Word、Pdf等复杂文档。Easypoi最大的特点是可以通过注解来实现对Ex...

Excel导出,Excel模板导出Excel导入,Word模板导出神器-Easypoi

概述Easypoi是码云上的一个开源项目。项目开发组织是Lemur开源。目前属于码云最有价值开源项目。Easypoi是对poi的封装,其主打的功能就是容易,让一个没见接触过poi的人员就可以方便...

优雅地实现EasyPoi动态导出列的两种方式

前言嗨,大家好,我是希留。...

easypoi一款方便快捷的excel处理框架,赶紧学习起来

easypoi是一个基于ApachePOI和jxls封装的Java框架,用于简化Excel导入导出和Word导出等操作。它支持将Java对象转换为Excel或Word文档,并支持Excel模板导出和...

EasyPoi使用

EasyPoi的主要特点:1.设计精巧,使用简单2.接口丰富,扩展简单3.默认值多,writelessdomore4.springmvc支持,web导出可以简单明了使用1.easypoi...