全网唯一标准王
(19)国家知识产权局 (12)发明 专利申请 (10)申请公布号 (43)申请公布日 (21)申请 号 202211173152.2 (22)申请日 2022.09.26 (71)申请人 中南大学 地址 410083 湖南省长 沙市岳麓区麓山 南 路932号 (72)发明人 范冲 李洵铧 陈旭帅 熊友曹  詹岳陈 杨晨晨  (74)专利代理 机构 长沙启昊知识产权代理事务 所(普通合伙) 4326 6 专利代理师 谢珍贵 (51)Int.Cl. G06T 17/00(2006.01) G06T 19/20(2011.01) (54)发明名称 一种多结构实景三维模型的坐标转换方法 (57)摘要 本发明涉及计算机网络技术领域, 具体公开 了一种多结构实景三维模型的坐标转换方法, 主 要先进行转换信息设置, 再进行元文件处理、 文 件目录解析、 OSGB文件的访问与坐标转换和文件 输出, 在OSGB文件的访问与坐标转换时充分考虑 多种节点排列结构的OSGB文件的坐标转换需求, 不但满足ContextCapture软件原始生产的OSGB 文件, 也满足经过二次修补替换、 未参与分割等 特殊结构的OSGB文件, 具有较高的适应性与兼容 性; 在坐标转换过程中, 采用先导出再写入的文 件流模式处理叶子节点的纹理图片, 降低了转换 后OSGB文件的数据量, 达到资源节省目的并保证 纹理无丢失、 闪烁、 变形现象。 权利要求书3页 说明书7页 附图1页 CN 115512047 A 2022.12.23 CN 115512047 A 1.一种多结构实景三维模型的坐标转换 方法, 其特 征在于: 包括如下步骤: S1、 转换信息设置: 选择待转换的三维模型文件中metadata.xml元文件所在目录作为 输入路径, 选择任意文件夹作为输出路径, 设置坐标转换 的参数信息并连接外部的坐标转 换库, 外部坐标转换库依据转换参数信息实现单个(x,y,z)格式坐标点的读入、 转换、 同格 式输出, 转换的算法与流 程与一般的单点 坐标转换相同; S2、 元文件处 理: 对metadata.xml元文件进行解析、 转换与重写的处 理; S3、 文件目录解析: 根据步骤S1中设置的输入路径对模型文件的各瓦片文件夹按顺序 进行遍历, 将每一文件夹下的.osgb文件加入OSGB 访问模块; S4、 OSGB文件的访问与坐标转换: OSGB文件的节点包括Geode类型和Group类型, 所述 OSGB文件的处 理包括仅含单一Geode节点的文件的处 理和含Group节点的文件的处 理; 其中, 仅含单一Geode节点的文件的处理包括节点访问、 纹理信息提取、 顶点坐标提取、 顶点坐标转换和转换后坐标设置; 含Group节点的文件的处理包括判断父节点是否有二级节点、 判断父节点的类型和判 断二级节点是否有三级节点; S5、 文件输出: 利用osgDB: :writeNodeFile()方法写出转换后的OSGB文件至 输出路径。 2.根据权利要求1所述的一种 多结构实景三维模型的坐标转换方法, 其特征在于: 步骤 S1中所述 坐标转换的参数信息包括 坐标转换库、 转换坐标的带号和坐标补偿信息; 所述坐标转换库包括 参数模板名与转换 方法; 所述转换坐标的带号包括原数据的Y坐标带号与转换后数据的Y坐标带号, 默认均为0, 使原数据的Y坐标在转换 前减去带号 值, 使转换后数据的Y坐标加上 带号值; 所述坐标补偿信息包括转换后数据的X坐标补偿数与Y坐标补偿数, 默认均为0, 使转换 后的XY坐标加上一个固定的值。 3.根据权利要求1所述的一种 多结构实景三维模型的坐标转换方法, 其特征在于: 步骤 S2中所述元文件处 理的具体步骤如下: A1、 根据S1中设置的输入路径, 解析路径metadata.xml文件中 的<SRSOrigin>文件头提 取(x,y,z)格式的模型中心点坐标, 对于没有定义中心点坐标的模型, 设置模型中心点为 (0,0,0); A2、 根据S1中设置的坐标转换的参数信息, 将模型中心点坐标导入坐标转换库, 得到转 换后的中心点 坐标; A3、 由于OSGB文件内顶点存储的是相对于模型中心点的坐标, 记录转换前后的模型中 心点坐标以便 于后续OSGB顶点 坐标转换为实际坐标进行坐标转换; A4、 根据S1中设置的输出路径, 在 此输出路径下新建一个metadata.xml元文件, 内容与 格式与原数据的元文件一致, 其中<SRSOrigin>文件头所在行的模型中心点坐标输入转换 后的模型中心点 坐标。 4.根据权利要求1所述的一种 多结构实景三维模型的坐标转换方法, 其特征在于: 步骤 S3中所述文件目录包括元文件层 级、 瓦片文件夹层 级和.osgb文件层 级, 其中元文件 所在层 级用Data层表示, 瓦片文件夹层级用Tile层表示, .osgb文件层级用OSGB层表示, 按顺序进 行遍历便 于将每一Data层下 各Tile层级所对应的.osgb文件加入OSGB 访问模块。 5.根据权利要求1所述的一种 多结构实景三维模型的坐标转换方法, 其特征在于: 步骤权 利 要 求 书 1/3 页 2 CN 115512047 A 2S4中所述节点文件类型包括仅含单一Geode节点的文件和含Group节点的文件, 含Group节 点的文件包括Group ‑Geode、 Group ‑PagedLOD ‑Geode、 PagedLOD ‑Geode三种常见类型和 PagedLOD、 Group ‑Geode与Group ‑PagedLOD‑Geode混合两种特殊类 型, 其中特殊类型主要见 于未进行分割或对原 始OSGB文件进行修补的数据中。 6.根据权利要求5所述的一种 多结构实景三维模型的坐标转换方法, 其特征在于: 所述 仅含单一Geode节点的文件的处 理流程如下: B1、 访问Geode节点, 利用osg::Geode::getDrawable()方法获取节点Drawable对象, Drawable对象的主体为Geometry, Geometry包含存放纹理路径、 材质信 息的StateSet和存 放图元数组、 顶点 坐标、 纹理坐标的PrimitiveSets两 部分属性; B2、 为实现文件的压缩, 利用Geometry的StateSet属性中的osgStateSet:: getTextureAttribute()方法获取节点纹理对象, 将纹理对象的图片路径设为相对路径, 通过osgDB: :writeIma geFile()方法将纹 理输出至程序运行文件所在目录; B3、 通过Drawable::accept对应的apply()方法访问节点的PrimitiveSets属性, 由于 OSGB的顶点坐标为(x,y,z)格 式, 定义一个osg::Vec3Array类型数组, 当osg::Drawable:: AttributeType为 osg::Drawable: :VERTICES时将顶点 坐标存储至该数组; B4、 以3为步长遍历B3获得的顶点坐标数组, 对每一个单点坐标加上模型转换前中心点 坐标后导入坐标转换库, 得到转换后的单点坐标; 定义一个osg::Vec3Array数 组, 对转换后 的单点坐标减去转换后的中心点 坐标值后依次存 储; B5、 利用osg::Geometry::setVertexArray()方法将B4获得的转换后顶点数组设为当 前节点的顶点 坐标数组。 7.根据权利要求6所述的一种 多结构实景三维模型的坐标转换方法, 其特征在于: 所述 含Group节点的文件的处 理流程如下: C1、 对访问的Group节点利用osg::Group::getNumChildren()方法获取父节点的二级 节点数; 当二级节点数为0时, 为Group中仅含PagedLOD的特殊类型, 该类型未存储LOD中心坐标 信息, 直接执 行S5, 当二级节点数 大于0时, 直接执 行C2; C2、 使用osg::Group::className()方法获取当前父节点的名称; 当父节点名称为 Group时, 直接执行C3; 当父节点名称为PagedLOD时, 利用osg::LOD::getCenter()方法获 取LOD的中心坐标, 对中心坐标导入坐标转换库得到转换后的中心坐标, 使用osg::LOD:: setCenter()方法更新中心坐标并利用o sg::PagedL OD::setDatabasePat h()方法将L OD的 下钻搜索路径设为相对路径; C3、 采用C1相同方法判断各二级节点是否有三级节点; 当三级节点数为0时, 为Group ‑Geode或PagedLOD ‑Geode类型, 对上述两类型的二级 Geode节点使用与单一Geode节点文件相同的方法实现顶点 坐标转换; 当三级节点数大于0时, 为Group ‑PagedLOD ‑Geode或Group ‑Geode与Group ‑PagedLOD ‑ Geode混合类型; 获取二级节点头的名称, 判断二级节点头是否为PagedLOD; 对非PagedLOD (即为Geode)的二级节点头, 按Group ‑Geode类型处理, 对名称为PagedLOD的二级节点头, 对 LOD进行中心坐标变换并将下钻路径设为相对路径, 对三级Geode节点使用与单一Geode节 点文件相同的方法实现顶点 坐标转换。权 利 要 求 书 2/3 页 3 CN 115512047

.PDF文档 专利 一种多结构实景三维模型的坐标转换方法

文档预览
中文文档 12 页 50 下载 1000 浏览 0 评论 309 收藏 3.0分
温馨提示:本文档共12页,可预览 3 页,如浏览全部内容或当前文档出现乱码,可开通会员下载原始文档
专利 一种多结构实景三维模型的坐标转换方法 第 1 页 专利 一种多结构实景三维模型的坐标转换方法 第 2 页 专利 一种多结构实景三维模型的坐标转换方法 第 3 页
下载文档到电脑,方便使用
本文档由 人生无常 于 2024-03-18 11:32:34上传分享
友情链接
站内资源均来自网友分享或网络收集整理,若无意中侵犯到您的权利,敬请联系我们微信(点击查看客服),我们将及时删除相关资源。