基于图像的三维重建.ppt

上传人:牧羊曲112 文档编号:6108214 上传时间:2023-09-25 格式:PPT 页数:69 大小:1.65MB
返回 下载 相关 举报
基于图像的三维重建.ppt_第1页
第1页 / 共69页
基于图像的三维重建.ppt_第2页
第2页 / 共69页
基于图像的三维重建.ppt_第3页
第3页 / 共69页
基于图像的三维重建.ppt_第4页
第4页 / 共69页
基于图像的三维重建.ppt_第5页
第5页 / 共69页
点击查看更多>>
资源描述

《基于图像的三维重建.ppt》由会员分享,可在线阅读,更多相关《基于图像的三维重建.ppt(69页珍藏版)》请在三一办公上搜索。

1、主 讲 人:原 飞机器视觉/空间测量组,基于图像的三维重建,基于图像的三维重建,一、应用背景二、研究现状三、重建流程,1-1 制造业与逆向工程,应用背景,1-2 影视与娱乐数字化三维模型,能够给电影和视频游戏提供丰富素材。,22届国际体博会上,由深圳泰山在线科技公司研发的首款三维体感互动游戏i-dong地鼠,1997年,Paul Debevec利用图像重建技术,成功地出品了电影短片the Campanile。,1-3 文化遗产的保存对文物进行三维重建操作,以便获取文物精准的几何和色彩信息。,河南省新乡市辉县村舍重建图,龙形纹理门框的局部重建图,新疆米兰古城三维重建图,研究现状,2-1 国外研究

2、现状 Paul E.Debevec参数几何体表示初始模型 Steven M.Seitz颜色不变量、顺序可见性规 则重建场景模型 Roberto cipolla三维重建系统PhotoBuilder,研究现状,2-2 国内研究现状 北京交通大学 袁保宗 提出了,由真实世界到计算机虚拟世界的转换问题。浙江大学 刘刚 设计了,一个能绘制出几何模型和表面纹理的真实场景交互建模系统。中科院自动化研究所,开发的CVSuite,能利用立体视觉进行三维重建。上海交大 马利庄 提出了一种基于构建Visual Hull,求取物体形状及表面反射属性的方法。,研究现状,2-3 重建软件 3DmeNow,Canoma,P

3、hotoModeler和PhotoModeler Scanner,ImageModeler,三维重建的四种主要方式:1 基于图像 2 使用探针或激光读数器逐点获取数据 3 三维物体的断层扫面 4 光学三维扫描仪,重建流程,基于图像的重建方式,应用范围广泛,精度比较低。,使用探针或激光读数器逐点获取数据,进行整体三角化,此类方法测量精确,但速度很慢,难以在短时间内获得大量数据。,根据三维物体的断层扫面,得到二维图像轮廓,进行相邻轮廓的连接和三角化,得到物体表面形状。,应用硬件光学三维扫描仪获得物体的点云数据,进行重建获得物体的整体表面信息。,基于图像重建流程,纹理贴图,图像匹配1,摄像机标定,图

4、像校正,匹配2,计算视差,点云对齐,拼接,曲面重构,重建流程,空间点的获取,黄色:任意位置绿色:平行位置,图像校正,图像校正的目的,图像校正,极线不平行极线交于极点,极线平行极点无穷远,相机任意位置图像未校正,相机平行校正图像,需计算极线方程影响运行效率,不需进行极线提高效率,图像校正的原理 图像校正的过程,就是对里两幅图像分别进行二维的变换。将这种变换记为U1和U2,则图像点的变换可以看成,其中,为p1变换后的坐标,为p2变换后的坐标。,(1a),(1b),图像校正,为了使极线变成一组平行直线,需要将极点放到无穷远处。设该无穷远极点为 则经过校正后的图像对的基础矩阵 可以表示为,(2),图像

5、校正,则由式(1a)可以得到如下等式,将式(1a)和式(1b)代入得,由式(2)可得,图像校正,只要知道了基础矩阵F,就可以从上式中分解出变换矩阵 和,从而实现图像的校正。,图像校正,设 为,将U分解为如下形式:,透视变换,图像校正,相似变换,错切变换,图像校正过程,图像校正,透视变换,错切变换,相似变换,极线和图像坐标系的横轴平行,极点被移到了无穷远点极线束变成了一组平行直线,使得水平方向的图像畸变最小化,基于窗口的灰度匹配 基于窗口的稀疏点匹配 基于窗口的稠密点匹配,匹配 计算视差,基于窗口的灰度匹配原则,=,匹配 计算视差,左图中所有匹配点最大视差为a最小视差为b匹配点p的视差为d视差图

6、中p点的灰度值为 255*|d-b|/|a-b|,匹配 计算视差,匹配 计算视差,3-4 空间点的获取图像经过校正后可以看成是两台光轴互相平行的摄像机的成像,经过校正后图像上的俩个对应点,空间点P在摄像机C1和C2坐标系下的坐标,b为基线,图像点和三维空间点的映射关系可以得到:,3-5 点云拼接 三维坐标变换 拼接原理 拼接步骤 拼接实例,点云拼接,点云拼接,三维坐标变换,点云拼接,表示三维图像的坐标变换,产生比例、旋转、错切等几何变换,产生平移变换,拼接原理,点云拼接,点云拼接,P1中提取一个子集,在数据点集P2 中有一子集与P1中点一一对应,通过这俩个子集求解R和T,三维坐标系 和 之间的

7、位置对应关系可以用下式表示,即:,如果知道了R和T 的值,就可以将坐标系进行旋转和平移,转化为 坐标系。这样就能将各块测量的数据转换到同一个坐标系,实现拼接任务了。,点云拼接,拼接步骤:多视角点云数据的拼接方法可以分为两步。1 首先利用离散的特征进行匹配的方法实现粗配准 2 再使用迭代最近点算法(ICP)算法进行精确配准,点云拼接,注意:当零件的表面没有明显的特征的时候,可以通过人为的方式在物体的表面附加特征来处理,常用的是粘贴标记点或者辅助圆球的做法。,点云拼接,拼接实例 对同一个待测物体从不同的两个方位进行拍摄,其中图(a)的右半部分和图(b)的左半部分事实上是待测物体上的同一个部分。图(

8、a)中的参考点 4、5、6、7 分别对应图(b)中的 2、1、4、3 点将这些相同点一一对应起来根据它们的坐标解出R和T拼接两部分得到的数据点云,形成一段完整的物体表面轮廓。,点云拼接,点云拼接,散乱点集的曲面三角剖分,空间直接剖分,逐点插入法,分治算法,三角网格生长法,约束delaunay三角剖分,Delaunay三角剖分,最小权三角剖分,Hoppe算法,Choi算法,Voronoi图算法,-shape算法,平面投影法三角剖分,曲面重构,Delaunay三角剖分一、定义二、性质三、算法分类,曲面重构,定义 三角剖分:假设V是二维实数域上的有限点集,边e是由点集中的点作为端点构成的封闭线段,E

9、为e的集合。那么该点集V的一个三角剖分T=(V,E)是一个平面图G,该平面图满足条件:1.除了端点,平面图中的边不包含点集中的任何点。2.没有相交边。3.平面图中所有的面都是三角面,且所有三角面的合集是散点集V的凸包。,曲面重构,Delaunay三角剖分Delaunay边:假设E中的一条边e(两个端点为a,b),e若满足下列条件,则称之为Delaunay边:存在一个圆经过a,b两点,圆内(注意是圆内,圆上最多三点共圆)不含点集V中任何其他的点,这一特性又称空圆特性。Delaunay三角剖分:如果点集V的一个三角剖分T只包含Delaunay边,那么该三角剖分称为Delaunay三角剖分。,曲面重

10、构,Delaunay三角剖分两个重要的性质:1、空圆特性:Delaunay三角网是唯一的(任意四点不能共圆),在Delaunay三角形网中任一三角形的外接圆范围内不会有其它点存在。2、最大化最小角特性:在散点集可能形成的三角剖分中,Delaunay三角剖分所形成的三角形的最小角最大。,曲面重构,算法分类:分治算法逐点插入法三角网格生长法,曲面重构,1 分治算法分治算法首先把点集V以横坐标为主,纵坐标为辅按升序排序,然后递归地执行以下步骤:(1)把点集V分为近似相等的两个子集VL和VR。(2)在VL和VR中生成三角剖分;(3)用局部优化算法优化所生成的三角剖分,使之成为Delaunay三角剖分;

11、(4)找出连接VL和VR中两个凸包的底线和顶线;(5)由底线至顶线合并VL和VR中两个三角剖分。不同的实现方法可有不同的点集划分法、子三角剖分生成法及合并法。代表算法有Lewjo和Robinson算法、Lee和Schachter算法、Dwyer算法、Dewall算法等算法。,曲面重构,2 逐点插入法逐点插入算法的基本步骤是:(1)定义一个包含所有数据点的初始多边形;(2)在初始多边形中建立初始三角剖分,然后迭代以下步骤,直至所有数据点都被处理:1)插入一个数据点P,在三角剖分中找出包含P的三角形t,把P与t的三个顶点相连,生成三个新的三角形;2)然后优化三角剖分。各种实现方法的差别在于其初始多

12、边形的不同以及建立初始三角剖分的方法不同。代表算法有Lawson算法、Lee和Schachter算法、MaCullagh和Ross算法、Bowyer算法、Waston算法、Sloan算法。,曲面重构,3 三角网格生长法生长算法的基本步骤是:(1)以一点为起始点;(2)找出与起始点最近的数据点相互连接形成Delaunay三角剖分的一条边作为基线,按Delaunay三角剖分的判别法则(即最小内角最大准则和空外接圆准则),找出与基线构成Delaunay三角形的第三点;(3)基线的两个端点与第三点相连,成为新的基线;(4)迭代以上两步直至所有基线都被处理。各种不同的实现方法多在搜寻“第三点”上寻求突破

13、。代表算法有Gree和Sibson算法、Brass和Reif算法、Mirante和Weigarten算法。,曲面重构,曲面重构,6 曲面重构,曲面重构,3-7 纹理映射 主要的映射方法:纹理映射 凹凸映射 环境映射,纹理映射,纹理映射,纹理映射,二维纹理映射 在纹理映射中需要用到的坐标:,纹理映射,纹理映射的方法 方法一:把像素中心逆向投影到纹理坐标空间,从而得到某个纹理坐标对应的纹理值 方法二:使用两步映射。第一步映射是把纹理映射到一个简单的三维中 间 表面上,如球面、圆柱面或立方体表面。第二步映射再把带有纹理映射的中间表面映射到需要绘制的对象表面上。,纹理映射,纹理映射,纹理映射,t,把纹理映射到圆柱面,纹理映射,方法一 1 取中间对象表面上某点的纹理值 2 沿着该点的法向量方向画条直线直到与绘制的对象相交。3 然后把中间对象表面上的纹理值作为该交点的纹理值。,纹理映射,方法二 1 从要绘制的对象表面上的某点出发,并沿该点的法向量方向画条直线。2 计算直线与中间对象的交点。3 从这个交点可以得到对象表面的纹理值。,纹理映射,方法三 已知绘制对象的中心 1 从该中心位置到对象表面上某一点画一条直 2 计算该直线与中间对象表面的交点。3 把直线与中间对象表面交点处的纹理值赋给绘制对象表面相应的点。,纹理映射,谢谢!,

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号