• CC001:CC照片建模


    摘要:CC照片建模原理是通过从图像中提取特征点和特征描述符,然后根据特征点的匹配来计算相机的位姿,从而生成三维点云数据。最后,借助网格重建和纹理映射的方法,将点云转换为带有纹理的三维网格模型。

    实验数据:

    链接:https://pan.baidu.com/s/1YcRD_TKyyNWN7DEuV87nDA?pwd=h12c 
    提取码:h12c


    一、创建工程目录

    新建一个任务总文件夹,建议以文件名称英文+日期命名,在总文件夹下建立job文件夹存放任务序列目录,建立照片文件夹存放需要处理的照片,建立工程文件夹存放工程文件(也可更加用户文件管理习惯自行设置)。


    二、影像准备

    使用相机或手机拍摄一个简单物体,至少从三个不同的视角拍摄物体的每个部分。尽量保证两张相邻照片重叠区域在2/3以上,且相邻照片的拍摄夹角小于15°。


    三、新建工程

    1、打开软件

    点击桌面左下角开始,展开Bently,单击打开ContextCapture Master主模块。

    2、新建工程

    在软件打开界面点击【新工程】。

    3、保存工程

    在弹出窗口输入工程名称和工程保存的路径,点击OK完成工程的创建。

    4、工程目录说明

    新建工程完成后.ccm格式的工程文件会存放在工程文件夹下,打开工程文件时同级目录下会生成.lock文件,表示该程序已在运行,以防止重复启动或控制并发访问。


    四、添加影像

    1、添加影像

    点击工程下面的区块,在右侧窗口选择【影像】选项卡,点击【添加影像】下拉框,软件默认提供了3种导入影像的方式,以下介绍前2种影像导入方法。

    【方法1】:通过【添加影像选择】添加用户选取的影像。

    【方法2】:通过【添加整个目录】添加用户选择目录下的所有影像。

    2、影像分组说明

    添加后的影像以照片分组的形式加载完成,若添加的图片全部位于一个文件夹下,则会创建1个照片分组,若加载的图片位于不同的子文件夹下,则会创建和子文件夹数量一致的照片分组。


    五、指定Master文件及任务序列路径

    点击工程,切换到【选项】选项卡,检查工程文件UNC路径是否为新建的.ccm工程文件的路径(建议采用默认的网络路径),并将任务序列目录指定到job文件夹。


    六、指定Setting任务序列路径

    【流程说明】:为Master、Engine模块定义任务序列目录,以便Master监视任务及Engine进行空三计算。

    1、打开设置模块

    点击左下角开始,单击打开cc设置模块。

    2、设置任务序列目录

    在弹出的cc设置窗口切换到【配置】选项卡,将任务序列目录设置到job文件夹所在路径(需要和Master中的任务系列路径一致),点击OK确认。


    七、启动Engine

    【流程说明】:ContextCapture的Engine模块是进行数据处理和计算的核心部分。

    1、启动引擎

    在设置好Master主模块和Setting模块路径后,点击桌面开始,单击ContextCapture Center Engine启动引擎。

    2、任务序列目录说明

    启动引擎后,会在指定的任务序列文件夹下创建子文件夹,用于控制整个工程和操作者提交的任务。

    • Archive:保留供用户保存任务;
    • Cancelled:包含用户取消的任务;
    • Completed:包含已完成的任务;
    • Engines:当前连接到任务序列的所有引擎的列表;
    • Failed:包含因引擎端出错而失败的任务;
    • Pending:包含等待处理的任务。运行监听此任务序列的引擎时将在此文件夹中查找任务。子目录“低/普通/高”对应于各种不同的优先级:
    • Running:包含引擎目前正处理的任务。

    八、提交空中三角测量计算

    【流程说明】:将任务序列里面的任务提交给Engine进行运算。

    1、提交空中三角测量

    【方法一】:可通过选中工程下面的Block_1,在【空中三角测量计算】选项下点击【提交空中三角测量】。

    【方法二】:可选中block_1后,点击软件右侧的【提交空中三角测量】进行空三运算。

    2、定义空中三角测量计算参数

    本文照片建模全部采用默认参数设置,点击设置选项卡后直接点击提交即可。

    3、查看引擎状态

    查看引擎运行状态,若提示Starting Engine on job queue(启动任务序列的引擎),则表示引擎已经开始运行。

    4、查看空中三角测量成果

    点击3D视图,可以查看区块1的空中三角测量结果。

    5、查看质量报告

    可在空三计算成果中点击【查看质量报告】来查看模型的质量报告,其中模型分辨率范围可在左侧显示,计算成果提示数据完整,则可以进行三维重建。


    九、新建重建项目

    【流程说明】:重建项目可以管理三维重建框架(空间参考系统、兴趣区域、切块、约束、修饰、处理设置)。根据重建项目,可以启动一个或多个生产项目。

    1、新建三维重建

    右键Block_1-AT,点击【新建三维重建】。

    2、定义模型空间框架

    空间框架用于定义生产模型的空间参考系统、兴趣区域和切块。选择Reconstruction_1,切换到【空间框架】选项,设置模型的切块模式为【规则平面网格】,点击右侧视图的【裁剪盒】,根据需求调整生产模型的范围。


    十、生产三维模型

    【流程说明】:生产项目用于管理三维模型的生成、错误反馈、进度监控和有关基础重建的更新通知,生产项目在Master中定义,但由Engine进行处理。可以通过以下2种方法提交生产项目。

    1、提交新的生产项目

    【方法一】:右键点击新建的重建项目,在弹出选项中点击【提交新的生产项目】。

    【方法二】:点击重建项目,切换到概要选项卡,点击右下角【提交新的生产项目】下拉框,点击使用引擎处理。

    2、输入产品名称和描述

    产品名称推荐使用默认命名,或使用项目英文名称,点击下一步。

    3、选择提交生产项目的目标

    此实验我们只进行模型浏览,不在第三方软件进行模型修饰,使用默认设置即可,点击下一步。

    4、选择生产项目的输出格式和选项

    使用默认设置,点击下一步。

    cc生产项目的输出类型主要包括三维网格、三维点云以及DOM/DSM,3种类型的输出格式列举如下。

    ①【三维网格】

    3MX格式:一种开放格式,建议使用此格式旨在简化ContextCapture数据的分发。

    Smart3DCapture S3C:ContextCapture 的旧版格式,可以使用ContextCapture S3C Composer编辑S3C索引文件,以便通过ContextCapture查看器查看模型。

    OBJ Wavefront格式:一种便携式三维格式,可通过大多数 CAD 和三维软件加载。

    Collada DAE:交互式三维应用程序的文件交换格式。

    Autodesk FBX:Autodesk应用程序的三维交换格式。

    Stereolithography STL:广泛用于三维打印的几何结构格式(不支持纹理)。

    ESRI i3s场景数据库:适用于 ArcGIS Scene Service 的 ESRI Indexed 3D Scene 格式。

    Cesium 3D Tiles:适合显示在 Cesium 中。

    Google Earth KML:分层文件格式,适用于在 Google Earth 中实时以三维方式显示非常大的数据集。

    OpenSceneGraph二进制 (OSGB):开源 OpenSceneGraph 库的原生格式,动态细节层次和分页。最适合 SuperMap GIS。

    导出LOD树:细节层次树交换格式,基于XML文件和Collada DAE格式的三维模型。

    SpacEyes3D Builder层:SpacEyes3D Builder层文件,基于OSGB格式。

    ②【三维点云】

    ASPRS LASer (LAS):用于交换三维点云数据的公共文件格式。

    Pointools POD 文件格式:在Bentley Pointools以及任何基于MicroStation的应用程序内使用的点云格式。

    ③DOM/DSM

    TIFF/GeoTIFF:含地理参考信息的标准光栅格式。

    JPEG:标准压缩影像格式。

    KML Super-overlay:分层影像文件格式,适用于在 Google Earth 中实时以三维方式显示非常大的正射影像。

    TIFF/GeoTIFF:含地理参考信息的标准光栅格式。

    ESRI ASCII光栅/ASC:用于光栅交换的通用 ASCII 格式。

    XYZ:基本 ASCII 格式,含 3 列,每行包含 X、Y 和 Z 坐标。

    5、再次定义生产项目的范围

    使用默认设置,点击下一步。

    6、提交生产

    输出路径使用默认路径,点击提交。

    7、查看任务序列的状态

    点击【监视任务序列】,在弹出的任务序列监视器中可查看运行中的任务和排队的任务,以及参与重建的机器数量。


    十一、结果展示

    建模完成后,点击【用ContextCapture Viewer打开】,使用cc默认查看器打开模型查看。

  • 相关阅读:
    【Java开发】 Springboot集成Mybatis-Flex
    soildwork2022怎么恢复软件界面的默认设置?
    谁把我网站攻击了
    linux中git暂存,提交,上传到github
    我的周刊(第054期)
    数学建模笔记(三)论文写作:论文排版
    华为机试题解析015:称砝码(python)
    [WebDav] WebDav基础知识
    OceanBase 分布式数据库【信创/国产化】- OceanBase V4.3 里程碑版本
    关于binwalk->sasquatch插件安装错误的缓解方案
  • 原文地址:https://blog.csdn.net/qq_31762031/article/details/134053425