基于全景照片和场景模型计算导出纹理贴图

基于全景照片和场景模型计算导出纹理贴图

  首先,假设全景的位姿是已知,一般可以通过传感器测量或者相关标定方法计算得到;另外,还假设相机中心与模型坐标中心重合(只有这样才能将全景和模型映射到标准球上);这里重点介绍如何基于全景照片和场景模型(.obj)计算导出纹理贴图(.png)。主要用到一种球面映射的思想,具体实现如下:

一、实现思路

  1、全景照片标准化,扩大填充为2:1大小的全景照片,如果已经是2:1的全景无需这种扩充变换。

  2、标准全景照片映射到标准球面上。(标准球是半径为1m的空间球体)

  3、场景模型映射到标准球面上。

  4、场景模型的分割以及分割线计算,一般曲面分割的较小块,平面分割为较大块。

  5、基于分割块计算球面上对应的全景照片的区域,并将该局部全景数据拾取出,copy到纹理照片(png)中,计算顶点在纹理照片中的坐标。即为纹理坐标。

  6、遍历所有分割块,重复第五步,知道分割块的纹理计算完毕为止。

  7、导出obj格式(包含顶点坐标、纹理坐标、法线、面),纹理照片。( 一般为obj+mtl+png照片)

二、实现代码(略)

三、效果

球映射

纹理区域计算

原文地址:https://www.cnblogs.com/lovebay/p/12097922.html

时间: 2024-10-10 08:31:18

基于全景照片和场景模型计算导出纹理贴图的相关文章

基于Pre-Train的CNN模型的图像分类实验

基于Pre-Train的CNN模型的图像分类实验 MatConvNet工具包提供了好几个在imageNet数据库上训练好的CNN模型,可以利用这个训练好的模型提取图像的特征.本文就利用其中的 “imagenet-caffe-ref”的模型,提取图像特征(softmax前一层的输出,4096维),在几个常用的图像分类的数据库中进行了相应的分类实验.这实验的过程中,有对图片进行左右翻转用于增加训练数据.下面结果的表格中:Original原始结果,Flip增加翻转后的结果. 需要用到的toolbox及

Android平台下基于情境的访问控制模型——CBAC

Context-basedAccess Control Systems for Mobile Devices, IEEE Transactions on Dependable andSecure Computing, 2015年3月 [1] http://ieeexplore.ieee.org/xpls/abs_all.jsp?arnumber=6807727 1.1. 背景 普渡大学的研究人员针对BYOD场景中Android终端内恶意软件泄露用户敏感数据的问题,提出了一种基于情境的访问控制模型

oracle命中率模型计算

命中率模型是在owi之前比较常用的一种诊断性能问题的方法,通过命中率的计算,发现系统中的一些设置是否合理,当命中率不高的时候,通过调整一些参数和设置,提高命中率,有效的提高系统的性能和吞吐量.但当系统的命中率很高的时候,系统的性能问题和瓶颈就无法使用命中率模型来有效的定位,因为命中率说到底是一种平均值,而均值会隐藏系统的问题,这里暂且讨论oracle系统上几个相关的命中率的计算.另外会再讨论owi模型. 在awi的报告中,首先是oracle实例和snapshot信息,然后就是report sum

word2vec 中的数学原理详解(四)基于 Hierarchical Softmax 的模型

  word2vec 是 Google 于 2013 年开源推出的一个用于获取 word vector 的工具包,它简单.高效,因此引起了很多人的关注.由于 word2vec 的作者 Tomas Mikolov 在两篇相关的论文 [3,4] 中并没有谈及太多算法细节,因而在一定程度上增加了这个工具包的神秘感.一些按捺不住的人于是选择了通过解剖源代码的方式来一窥究竟,出于好奇,我也成为了他们中的一员.读完代码后,觉得收获颇多,整理成文,给有需要的朋友参考. 相关链接 (一)目录和前言 (二)预备知

基于Cocos2d-x学习OpenGL ES 2.0系列——纹理贴图(6)

在上一篇文章中,我们介绍了如何绘制一个立方体,里面涉及的知识点有VBO(Vertex Buffer Object).IBO(Index Buffer Object)和MVP(Modile-View-Projection)变换. 本文将在教程4的基础之上,添加纹理贴图支持.最后,本文会把纹理贴图扩展至3D立方体上面. 基本方法 当我们把一张图片加载到内存里面之后,它是不能直接被GPU绘制出来的,纹理贴图过程如下: 首先,我们为之前的顶点添加纹理坐标属性并传到vertex shader里面去: 然后

基于SOA的编程模型

1.webservice是SOA架构的一种实现 ====================================================================================================== Spring-WS编程模型: 面向契约的开发:xml--对象(而不是对象---xml) 编程模型: 1.定义消息契约xml(数据契约+操作契约) 2.生成xsd 3.编写消息端点 4.配置序列化OXM 5.生成wsdl-操作契约 ========

基于tomcat响应处理模型实现的高并发web服务器

在上一篇博客中,一个简单的AIOweb处理例子,可以看到AIO异步处理,依赖操作系统完成IO操作的Proactor处理模型确实很强大,可以是实现高并发,高响应服务器的不错选择,但是在tomcat中的connector的处理模型还依旧是基于NIO的处理,当然,我认为这可能会在以后的版本进行改进,但另一方面,我更认为AIO的负载控制方面的处理可能是比较难的,因为AIO api并没有提供我们对分配线程组的处理,而只是提供一个线程组,交给操作系统去解决io处理上的问题,所以,这可能会给需要复杂处理的负载

word2vec 中的数学原理具体解释(四)基于 Hierarchical Softmax 的模型

  word2vec 是 Google 于 2013 年开源推出的一个用于获取 word vector 的工具包,它简单.高效,因此引起了非常多人的关注.因为 word2vec 的作者 Tomas Mikolov 在两篇相关的论文 [3,4] 中并没有谈及太多算法细节,因而在一定程度上添加了这个工具包的神奇感.一些按捺不住的人于是选择了通过解剖源码的方式来一窥到底,出于好奇,我也成为了他们中的一员.读完代码后.认为收获颇多.整理成文,给有须要的朋友參考. 相关链接 (一)文件夹和前言 (二)预备

word2vec 中的数学原理具体解释(五)基于 Negative Sampling 的模型

  word2vec 是 Google 于 2013 年开源推出的一个用于获取 word vector 的工具包,它简单.高效,因此引起了非常多人的关注. 因为 word2vec 的作者 Tomas Mikolov 在两篇相关的论文 [3,4] 中并没有谈及太多算法细节,因而在一定程度上添加了这个工具包的神奇感.一些按捺不住的人于是选择了通过解剖源码的方式来一窥到底,出于好奇,我也成为了他们中的一员. 读完代码后,认为收获颇多,整理成文,给有须要的朋友參考. 相关链接 (一)文件夹和前言 (二)