【卫星影像三维重建随记】obj模型及其纹理材质文件介绍

news2024/11/17 3:49:48

obj模型及纹理材质介绍

  • 1.介绍
    • 1.1 背景
    • 1.2 带有纹理色彩的obj三维模型
  • 2.带有纹理信息obj三维模型文件解析
    • 2.1 三维模型数据
    • 2.2 obj文件内容
    • 2.3mtl文件内容
  • 3 参考

1.介绍

1.1 背景

OBJ格式是一种简单且通用的三维模型文件格式,支持多边形网格和基本的几何体类型,如点、线和面等三维信息的存储,一般包括三个子文件,分别是**.obj、.mtl、.jpg**,含有三个文件的一般为带有纹理色彩的三维模型,
也存在只有obj文件的,这种文件一般是没有纹理色彩的三维模型;

1.2 带有纹理色彩的obj三维模型

带有纹理的OBJ文件通常包含以下特定文件及其具体作用:

  1. OBJ文件:这是主要的3D模型文件,包含了模型的顶点、面片、法向量和纹理等几何信息。OBJ文件使用标准的Polygon(多边形)储存格式,直接储存顶点坐标和法线等数据;
  2. MTL文件:材质库文件,与OBJ文件配合,把纹理颜色渲染到OBJ模型上。MTL文件描述的是物体的材质信息,如颜色、透明度等,这些信息主要是呈现模型的视觉效果的参数信息;
  3. 纹理文件:通常情况下,为了实现更真实的视觉效果,OBJ模型会关联一个或多个纹理文件。这些纹理文件存储了模型表面的颜色和其他视觉属性,如反射、透明度等。

2.带有纹理信息obj三维模型文件解析

2.1 三维模型数据

三维模型文件在资源绑定可下载,包含三维模型文件( obj),材质文件(mtl)、以及纹理文件(.jpg),有纹理和无纹理的三维模型效果示意如下(PS:以下效果均在meshlab中呈现):
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

2.2 obj文件内容

首先是obj整体信息:包含534165个顶点,1064007个面,然后mtllib指向材质文件1.mtl,接下来是三维模型的具体展开
v :几何体顶点 (Geometric vertices)
vt: 贴图坐标点 (Texture vertices)
vn: 顶点法线 (Vertex normals)
f :面 (Face)
详细介绍见3D文件格式之OBJ文件格式

# 534165 vertices, 1064007 faces
mtllib 1.mtl
v 5933.684 5014.03 24.7866
v 6783.865 4216.579 18.71951
v 6785.873 4216.577 17.27195
v 5934.572 5014.032 24.79637
v 6787.372 4216.6 8.83658
v 5935.165 5014.034 24.97735
v 6782.655 4216.573 25.12711
v 6782.359 4216.56 27.72783
v 5936.057 5014.036 25.42348
v 6787.987 4216.596 8.63874
v 5936.65 5014.037 25.59104
v 6792.734 4216.605 8.42905
v 6793.037 4216.612 8.351725
v 6793.328 4216.592 12.30764
v 5937.838 5014.04 25.73989
v 6794.222 4216.606 7.762855
v 6794.514 4216.58 15.05509
v 6796.001 4216.661 16.87754
v 6796.902 4216.596 20.05687
v 5939.32 5014.043 26.09047
v 6797.203 4216.625 26.43649
v 5939.915 5014.044 26.11746
v 6798.062 4216.66 26.58853
v 5940.51 5014.046 25.96651
v 6798.966 4216.625 23.67713
v 5941.1 5014.045 25.72362
v 5941.396 5014.046 25.64608

2.3mtl文件内容

# 
# Wavefront MTL generated by www.daspatial.com for 3D Users
# 
newmtl Tile_+007_+004_textured_geometry_0
Ka 0.2 0.2 0.2
Kd 1 1 1
Ks 0.2 0.2 0.2
map_Kd Tile_+007_+004_textured_geometry_0.jpg

3 参考

参考网站:
(1)https://cloud.tencent.com/developer/ask/sof/116081910
(2)https://www.jianshu.com/p/afa7ffa01191

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1677093.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

IDEA运行main方法,为什么要编译整个工程?

每次在IDEA中导入工程后,想写一个类去测试一些数据,有时候只是写一个main方法进行简单的输出; 但是每次运行一个main方法,整个工程都会重新编译一下,耗时不短 在Eclipse就不会有这个问题; 为什么会编译整…

华为昇腾310B1平台视频解码失败[ERROR] Send frame to vdec failed, errorno:507018

目录 1 [ERROR] Send frame to vdec failed, errorno:507018 2 bug解决尝试1 3 bug解决尝试2 4 最终解决方法 参考文献: 1 [ERROR] Send frame to vdec failed, errorno:507018 某项目中的代码运行报错 [ERROR] Send frame to vdec failed, errorno:507018 Ac…

Spring Boot:异常处理

Spring Boot 前言使用自定义错误页面处理异常使用 ExceptionHandler 注解处理异常使用 ControllerAdvice 注解处理异常使用配置类处理异常使用自定义类处理异常 前言 在 Spring Boot 中,异常处理是一个重要的部分,可以允许开发者优雅地处理应用程序中可…

平地惊雷,GPT-4o 凌晨震撼发布

GPT-4o 今日凌晨,OpenAI 2024 年春季发布会召开,OpenAI 通过短短 28 分钟的发布会,发布了「再次震惊世界」的 GPT-4o,其中 o 是指 omni(全能)的意思。 一款「全新交互(支持 文本/音频/视频 组合…

平安养老险深圳分公司携手福海街道开展5.12防灾减灾活动

在构建和谐社会、倡导人文关怀的当下,平安养老险深圳分公司以高度的社会责任感和深厚的人文情怀,持续关注老年人的健康与安全。在今年“5.12防灾减灾日”来临之际,公司积极响应倡议,于5月10日携手福海街道举办了一场别开生面的消防…

web学习记录--(5.14)

1.Sublime安装与汉化 直接点击windows即可下载,安装即可 Thank You - Sublime Text 汉化 Install Package ChineseLocalzation 2.PHPstorm下载以及激活,汉化 直接下载,然后找激活码激活即可 汉化 plugins(插件)/chinese&…

【源码】相亲交友系统全新UI/情感测试/婚庆中介/交友系统

【交友】相亲交友系统全新UI/情感测试/婚庆中介/交友系统 带商城,情感测试。 https://www.52codes.cc/codes/qt

YOLOv5改进 | 主干网络 | 在backbone添加Swin-Transformer层

尽管Ultralytics 推出了最新版本的 YOLOv8 模型。但YOLOv5作为一个anchor base的目标检测的算法,YOLOv5可能比YOLOv8的效果更好。注意力机制是提高模型性能最热门的方法之一,本文给大家带来的教程是添加Swin-Transformer到backbone中。文章在介绍主要的原…

C# OpenCvSharp Demo - 最大内接圆

C# OpenCvSharp Demo - 最大内接圆 目录 效果 项目 代码 下载 效果 项目 代码 using OpenCvSharp; using System; using System.Diagnostics; using System.Drawing; using System.Drawing.Imaging; using System.Linq; using System.Windows.Forms; namespace OpenCvSh…

YOLOv5独家改进:backbone改进 | 微软新作StarNet:超强轻量级Backbone | CVPR 2024

💡💡💡创新点:star operation(元素乘法)在无需加宽网络下,将输入映射到高维非线性特征空间的能力,这就是StarNet的核心创新,在紧凑的网络结构和较低的能耗下展示了令人印象深刻的性能和低延迟 💡💡💡如何跟YOLOv5结合:替代YOLOv5的backbone 收录 YOL…

分享一个基于Qt的Ymodem的上位机(GitHub开源)

文章目录 1.项目地址2.Ymodem 协议介绍3.文件传输过程4.使用5.SecureCRT 软件也支持Ymodem6.基于PyQt5的Ymodem界面实现案例 1.项目地址 https://github.com/XinLiGH/SerialPortYmodem 基于VS2019 Qt5.15.2 编译,Linux下编译也可以,这里不做说明。 2.…

ROS2+TurtleBot3+Cartographer+Nav2实现slam建图和导航

0 引言 入门机器人最常见的应用就是slam建图和导航,本文将详细介绍这一流程, 便于初学这快速上手。 首先对需要用到的软件包就行简单介绍。 turtlebot3: 是一个小型的,基于ros的移动机器人。 学习机器人的很多示例程序都是基于turtlebot3。 …

51 单片机[2-1]:点亮一个LED

一、在 Keil5 中新建项目 打开 Keil5 ,点击 Project —— new μVision Project 新建文件夹 KeilProject ,以后的项目都在这个文件夹下,再建一个文件夹 2-1 点亮一个LED。在该文件夹下创建名为 Project 的文件,并保存。推荐起这…

金万维动态域名小助手怎么用?

金万维动态域名小助手是一个域名检测工具,使用此工具可以进行检测域名解析是否正确、清除DNS缓存、修改DNS服务器地址及寻找在线客服(仅支持付费用户)等操作。对不懂网络的用户是一个很好的检测域名的工具,下面我就讲解一下金万维…

TimesFM: 预训练的时间序列基础模型

大模型技术论文不断,每个月总会新增上千篇。本专栏精选论文重点解读,主题还是围绕着行业实践和工程量产。若在阅读过程中有些知识点存在盲区,可以回到如何优雅的谈论大模型重新阅读。另外斯坦福2024人工智能报告解读为通识性读物。若对于如果…

根据Word文档用剪映批量自动生成视频发布抖音

手头有大量word文档,想通过剪映的AI图文成片功能批量生成视频,发布到抖音平台,简单3步即可: 第一步:把word文档或者PDF等文档转成txt文本,可以用一些软件,也可以用AI工具,具体常见文…

Windows下编译RTTR

虽然C11引入了RTTI、Metaprogramming 等技术,但C在Reflection编程方面依旧功能有限。在社区上,RTTR则提供了一套C编写的反射库,补充了C在Reflection方面的缺陷。 零、环境 操作系统Windows 11Visual StudioVisual Studio Community 2022 CMa…

Qt---Socket通信

一、TCP/IP通信 在Qt中实现TCP/IP服务器端通信的流程: 1. 创建套接字 2. 将套接字设置为监听模式 3. 等待并接受客户端请求 可以通过QTcpServer提供的void newConnection()信号来检测是否有连接请求,如果有可以在对应的槽函数中调用nextPendingCon…

【现代C++】范围库的应用

C20引入了范围库(Ranges library),它是标准模板库(STL)的一个扩展,提供了一种新的方式来处理序列和范围。这个库允许开发者以更声明式的方式编写代码,使得操作序列变得更简洁、更易读。以下是C范…

【web网页开发制作】Html+Css+Js游戏主题特效及轮播效果网页作业天涯明月刀(7页面附源码)

HTMLCSSJS游戏主题轮播效果 🍔涉及知识🥤写在前面✨特效展示特效1、轮播幻灯效果特效2和3、鼠标悬浮及点击效果 🍧一、网页主题🌳二、网页效果Page1、首页Page2、游戏简介Page3、新闻中心Page4、互动专区Page5、视听盛宴Page6、用…