三维重建 订阅
三维重建的英文术语名称是3D Reconstruction.三维重建是指对三维物体建立适合计算机表示和处理的数学模型,是在计算机环境下对其进行处理、操作和分析其性质的基础,也是在计算机中建立表达客观世界的虚拟现实的关键技术。 展开全文
三维重建的英文术语名称是3D Reconstruction.三维重建是指对三维物体建立适合计算机表示和处理的数学模型,是在计算机环境下对其进行处理、操作和分析其性质的基础,也是在计算机中建立表达客观世界的虚拟现实的关键技术。
信息
领    域
计算机
类    型
数学模型
中文名
三维重建
外文名
3D Reconstruction
三维重建简介
三维重建的英文术语名称是3D Reconstruction.三维重建是指对三维物体建立适合计算机表示和处理的数学模型,是在计算机环境下对其进行处理、操作和分析其性质的基础,也是在计算机中建立表达客观世界的虚拟现实的关键技术。在计算机视觉中, 三维重建是指根据单视图或者多视图的图像重建三维信息的过程. 由于单视频的信息不完全,因此三维重建需要利用经验知识. 而多视图的三维重建(类似人的双目定位)相对比较容易, 其方法是先对摄像机进行标定, 即计算出摄像机的图象坐标系与世界坐标系的关系.然后利用多个二维图象中的信息重建出三维信息。物体三维重建是计算机辅助几何设计(CAGD)、计算机图形学(CG)、计算机动画、计算机视觉、医学图像处理、科学计算和虚拟现实、数字媒体创作等领域的共性科学问题和核心技术。在计算机内生成物体三维表示主要有两类方法。一类是使用几何建模软件通过人机交互生成人为控制下的物体三维几何模型,另一类是通过一定的手段获取真实物体的几何形状。前者实现技术已经十分成熟,现有若干软件支持,比如:3DMAX、Maya、AutoCAD、UG等等,它们一般使用具有数学表达式的曲线曲面表示几何形状。后者一般称为三维重建过程,三维重建是指利用二维投影恢复物体三维信息(形状等)的数学过程和计算机技术,包括数据获取、预处理、点云拼接和特征分析等步骤。
收起全文
精华内容
参与话题
问答
  • Meshlab是一个强大的三维模型处理的软件,在三维点云的处理方面也十分强大,不仅仅可以用三维点云重构三维模型,还可以计算出三维点云每个点的法向量,这在逆向工程和基于三维点云的隐式曲面重建中非常有用。...

    Meshlab是一个强大的三维模型处理的软件,在三维点云的处理方面也十分强大,不仅仅可以用三维点云重构出三维模型,还可以计算出三维点云每个点的法向量,这在逆向工程和基于三维点云的隐式曲面重建中非常有用。

       我的Meshlab的版本是3.3,可以在网上自行下载。

    1.Meshlab读取三维点云

    第一步:打开Meshlab软件

     

    第二步:点击File菜单下的ImportMesh导入txt文档,需要选择你的txt文档中XYZ坐标之间的分隔符,导入成功后会显示你的三维点云数据

     

    2.三维点云重建

    点击下图图标,弹出右侧图层侧边栏

     

    然后点击Fiter菜单下Normals,Curtavures and Oreientation下的Smooths normals on a point set计算三维点云的法向量,如下图

     

    然后设置计算点云法向量的参数,默认就好,如有需要可以自行设置,点击Apply等计算完成然后点击Close关闭对话框

     

    计算完点击法向量之后,点击Filter菜单下Remeshing Simplication and Reconstruction下的Surface Reconstruction:Ball Pivoting进行三维点云重建

     

    然后设置三维点云重建参数,默认就好,也可以自行设置,点击Apply等重建完成,点击close关闭对话框

     

    然后点击下列图标显示重建的三维模型,也可以设置光照等其他参数

     

    以下为三维重建结果

     

     

    3.法向量的导出与计算

    三维点云的法向量的导出与计算有两种方式,一种是在上一节三维重建中我们已经得到了重建后的三维模型,那么每个点都带有法向量,可以直接导出即可,还有一种就是从杂乱的三维点中计算每一个三维点的法向量

    3.1从三维模型中导出三维点云中每个点的法向量

    接着第二节的步骤,点击File菜单下Export Mesh as 

     

    然后在接下来的对话框中选择xyz格式

     

    然后在 接下来的对话框中勾选Normal就可以生成文本格式的三维点以及三维点法向量

     

    以下为文本格式的三维点坐标以及三维点法向量的结果

     

    3.2 直接从三维散乱点云中生成三维点的法向量

    然后点击Filter菜单下Normals,Curtavures and Oreientation下的Compute normals for point set计算三维点云的法向量,如下图

     

    在弹出来的对话框可以自行设置参数,先Apply然后再Close

     

    法向量的导出与3.1中的一样,可以自行参考。

     

    以下为三维点云以及点云的法向量的可视化结果,点云表示为红色的点,法向量表示为绿色的线段

    如果您觉得这篇博文有用,请访问我的个人站:http://www.stubbornhuang.com,更多博文干货等着您。

     

    展开全文
  • 很好的源码,思路清晰,利用双目实现的,大家有兴趣使用的可以直接下载,可以应用到比赛和论文内的,工具是matlab,代码也很好理解
  • 基于matlab的颅面三维重构技术-利用matlab实现ct断层图像的三维重建.pdf 介绍了一种以Matlab为工具实现颅面三维重构的方法。给出了利用该方法处理医学图像、构造体数据集和三维重构的全过程。提出了完成医学图像...
  • 三维重建 分层重构 先进性射影重构 在进行仿射重构 最后进行欧式重构即度量重构 代码中的TEST6.1是射影重构可以直接运行的 严重鄙视网上下载的没头没尾的资源
  • 上一篇中我们通过matlab相机标定工具获得了Calib_Results.mat文件。 先说一下这一篇的主要内容:matlab获取摄像头,录取6s的原始视频—>读取原始视频,对每一帧进行消扭处理,然后保存消扭后的帧—>读取消扭后的帧...
    • 上一篇中我们通过matlab相机标定工具获得了Calib_Results.mat文件。
    • 先说一下这一篇的主要内容:matlab获取摄像头,录取6s的原始视频—>读取原始视频,对每一帧进行消扭处理,然后保存消扭后的帧—>读取消扭后的帧保存到文件夹,并合成视频。

    1.读取摄像头:

    • A=imaqhwinfo(‘winvideo’);
      查看A的内容:DeviceID存储着电脑上所有可用摄像头的ID,每个ID对应一个摄像头。DeviceInfo中存储着每个摄像头的信息。(从我的这里可以看出,我的USB摄像头的ID是2)
      这里写图片描述
      这里写图片描述

    • vid = videoinput(‘winvideo’,2,’YUY2_640x480’);
      创建视频输入对象 ,第二个参数2是指DeviceID对应的第二个摄像头,第三个参数是我们需要的视频格式’YUY2_640x480’。

    • preview(vid)
      显示 至此可以看到我们指定摄像头的图像。

    2.录视频,保存:

    • writerObj = VideoWriter( ‘camera_test.avi’ ) ; %创建视频文件
    • writerObj.FrameRate = N; %设置视频文件每秒钟的帧数
    • frame = getsnapshot(vid); %得到表示视频对象vid当前时刻画面的图像矩阵。 获取视频的一帧,一般这句写在循环里。

    3.读取视频(读取帧),对每一帧消除扭曲并保存:

    obj = VideoReader([filename '.avi']);  %读取视频
    obj_numberofframe = obj.NumberOfFrame; %读取总的帧数
    obj_framerate = obj.FrameRate;%读取帧速
    obj_duration  = obj.Duration ;%读取视频总时长
    for k=1:obj_numberofframe
        frame=read(obj,k);
        %imshow(frame); %显示帧
        imwrite(frame,strcat('E:\研究生文件\3D激光雷达\标定图片\','distort',num2str(k,'%04d'),'.jpg'),'jpg');% 保存帧
        %加载相机标定结果
        load('E:\研究生文件\3D激光雷达\标定图片\Calib_Results.mat')
        %读取上一句中的图片,此处需要对每一帧消除扭曲 调用my_undistort_image_no_read.m(matlab工具箱中的undistort_image_no_read.m修改版)
         my_undistort_image_no_read;
    end

    4.保存处理后的帧到指定文件夹,并合成视频

    Files = dir(strcat('E:\\研究生文件\\3D激光雷达\\标定图片\\','undistort','*.jpg')); %读取文件中的基名是undistort,格式为jpg的图片
    len=length(Files); %读取的文件个数
    w_obj = VideoWriter('camera_test_undistort.avi');
    w_obj.FrameRate = obj_framerate;
    open(w_obj);
    for i=1:len
        name=strcat('E:\研究生文件\3D激光雷达\标定图片\',Files(i).name);  %获得每一帧的文件名
        frame=imread(name);  
        imwrite(frame,strcat('E:\研究生文件\3D激光雷达\标定图片\视频消扭\',Files(i).name),'jpg');% 保存帧到指定文件夹
        imshow(frame);
        writeVideo(w_obj,frame);
    end
    close(w_obj);

    参考链接:
    http://www.cnblogs.com/alphashi/archive/2013/04/13/3019146.html

    这里有几个我当时遇到的问题:

    1.matlab以帧率30录出来6s的视频,出现快进的现象,即视频虽然是6s,但实际录得时间大于6s,以至于看到的6s视频是快进的。

    • 原因:getsnapshot函数获取的帧率很低。该函数在调用的时候作了一系列处理,包括连接设备、配置、开始采集、获取一帧图像,停止采集、关闭设备。因此获取一帧图像需要花相当长的时间。因此通常情况下直接调用该函数会存在帧率低的问题,现象就是直接采集+显示就会出现很卡的现象。(详细原因参考以下网址)
      http://blog.csdn.net/sxjk1987/article/details/8819186

    • 解决办法:帧率调低,一般22差不多。实际上matlab录视频的帧率是不固定的。

    **2.存帧的时候命名为
    strcat('E:\研究生文件\3D激光雷达\标定图片\','distort',num2str(k,'%04d'),'.jpg'),即结果是distort1.jpg、distort2.jpg……..distort100.jpg…….,但是在读取基名为distort,格式为jpg的图片时,最后合成的视频是乱序的,也就是图片读取乱序。**

    • 原因:通过单步调试,查看变量的变化,可以发现读取顺序是distort1、distort10、distort100、distort101…..这是因为读取的时候是按照字符串大小顺序读取的,每一个字符进行大小比较。
    • 解决办法:如果你有2位数的数量的图片时,按照基名+001的方式命名。strcat('E:\研究生文件\3D激光雷达\标定图片\','distort',num2str(k,'%04d'),'.jpg'),比如我有180张图片,则我的命名是用‘num2str(k,’%04d’)’这句实现的命名,结果是distort0001,distort0002…distort0180。这样读取的时候顺序就是正确的了。

    最后附上代码:
    http://pan.baidu.com/s/1bo0W04B

    展开全文
  • 三维重建paper

    2018-03-13 10:22:39
    立体视觉中的摄像机标定、角点检测、图像立体匹配、三维可视化、三维重建· 双目3D重建系统: 摄像机标定、图像预处理、特征提取、立体匹配、深度确定、计算三维坐标、三维可视化1.基于RAC的Tsai标定法,获得立体...
    立体视觉中的摄像机标定、角点检测、图像立体匹配、三维可视化、三维重建

    · 双目3D重建系统:
      摄像机标定、图像预处理、特征提取、立体匹配、深度确定、计算三维坐标、三维可视化
    1.基于RAC的Tsai标定法,获得立体摄像机的内外参数:
         第一步:用最小二乘法求解线性方程组,得出摄像机外部参数
         第二步:求解摄像机内部参数
    2.结合立体摄像师模型与匹配的角点,计算三维坐标点,在DirectX平台上,利用顶点列表和索引表进行3D重建

    ·摄像机标定:获取摄像机内外参数。内部参数=焦距+镜头畸变;外部参数=旋转参数+平移参数
    ·特征提取:提取点、线、轮廓和区域。
    ·立体匹配:对提取的特征计算,建立不同图像特征之间的对应关系
    前景和背景分割:平面分割算法

    · 特征提取
    · 特征匹配:基于光流的跟踪技术
    · 关键特征重建
    · 三角化
    · 立体匹配:神经网络分析法、小波分析法
    · 深度确定
    · 内插

    · 景物图像边缘轮廓
    · 特征检测
    · 轮廓曲线分段
    · 特征匹配
    · 射影重建
    · 准欧氏重建

    Tu 等人提出了一种基于 PBT ( Probabilistic Boosting Tree )分类器 的 BEL 边缘检测算法 [14] 。
    Fowlkes 等人利用中层感知信息改进了边缘检测的结果,训练出一个分类器估计边缘的概率,记为 Pb ,将局部亮度、 纹理和颜色梯度信息作为每个像素点的特征 [15]

    Tu 等人提出的有监督学习的方法进行边缘检测或提取目标轮廓的方 法的基本思想是:图像上每个像素点都有一定的概率是边缘点,只要计 算出每个点是边缘点的概率,就可以得到边缘的概率图。这种边缘检测 的方法也可以说是对每个像素点进行选择的过程,并且在选择的时候考 虑其周围的上下文信息。在学习的过程中,该算法从上万个特征集中综 合选取一组普遍而有效的特征(例如 Haar 小波特征),学习出一个判别式的模型来计算某图像块的中心点是边缘点的概率。为提高学习的准确 率,要用尽可能多的数据进行训练,机器学习理论为人们提供了 PCA (主 成份分析)、 SVM (支持向量机)和 Boosting (增强法)等算法处理这些 高维的数据 [17-19] 。

    三维场景重建是指:给定一个场景的多幅图像或者有关这个场景的 一段视频,通过摄像机标定或其他空间计算方法为该场景建立一个三维 模型。比较常见的情况是建立三维空间坐标系,给出某些点在三维空间 中的位置,更复杂情况下是要建立一个完整的三维表明模型或立体模型


    Paper
    一、<3D Human Model Reconstruction from Sparse Uncalibrated Views>
    * a hierarchical density based clustering algorithm is adapted to obtain high-quality pixel clusters
    * regular cameras rely on multi-view stereo(MVS)    
    * With uncalibrated input images, structure-from-motion (SFM) [4] can be applied to estimate camera parameters from feature correspondences




    SFM(structure-from-motion,运动恢复结构)
    · 基于图像的三维重建
    · 通过分析物体的运动得到三维结构信息
    · 重要问题:找到三维物体图像的对应点
    · 特征:焦点、多方向有梯度值的边缘
    · 找特征点→ 照片的运动方向、拍摄方向→随便拍摄一组照片,都能自动检测运动方向与拍摄角度,自动照片排序
    · 实现一个SFM系统的第一步是找到相机之间的运动。OpenCV可以帮助我们在许多方式上获得这个运动,特别地,使用findFundamentalMat函数
    · 三角化3D点就是计算3D点的坐标

    展开全文
  • point3d 点云三维重建

    2018-09-04 17:19:07
    点云三维重建,用matlab写成的,效果很好,而且速度也比较快 文件列表: point3d\点云的三维重建\Block.mat point3d\点云的三维重建\Bunny.bmp point3d\点云的三维重建\Cactus.mat point3d\点云的三维重建\Chair.mat...
  • 三维重建三维重建基础

    千次阅读 2019-04-10 13:55:24
    三维重建技术通过深度数据获取、预处理、点云配准与融合、生成表面等过程,把真实场景刻画成符合计算机逻辑表达的数学模型。这种模型可以对如文物保护、游戏开发、建筑设计、临床医学等研究起到辅助的作用。 1.1 ...

    前言

           三维重建技术通过深度数据获取、预处理、点云配准与融合、生成表面等过程,把真实场景刻画成符合计算机逻辑表达的数学模型。这种模型可以对如文物保护、游戏开发、建筑设计、临床医学等研究起到辅助的作用。

    1.1 研究背景及意义

    人类通过双眼来探索与发现世界。人类接收外部信息的方式中,有不到三成来自于听觉、触觉、嗅觉等感受器官,而超过七成、最丰富、最复杂的信息则通过视觉[1]进行感知的。计算机视觉便是一种探索给计算机装备眼睛(摄像头)与大脑(算法)的技术,以使计算机能够自主独立的控制行为、解决问题,同时感知、理解、分析外部环境。20世纪60年代,计算机视觉得到了最初的发展。该阶段的研究重心主要体现在如何从二维图像中恢复出如立方体、圆柱体等立体化的三维形状,解释各个物体的空间位置关系。1982年,David Marr[2]从信息处理的角度对数学、神经生理学、计算机图形学等学科的研究成果进行了归纳总结,并在此基础上提出了一系列计算机视觉理论。得益于这个完整明确的理论体系,计算机视觉得到了蓬勃的发展。它的核心思想是从二维图像恢复三维结构。图1-1展示的是经典Marr视觉信息处理过程。 

    这里写图片描述
    图1-1 Marr视觉信息处理过程 

     
    Fig.1-1 Process of Marr visual information 
    随着科学技术的日新月异,计算机视觉的应用日益受到各行业的关注和重视,如设备检测与监视、医学图像处理、文物保护[3]、机器人视觉、自动导航、工业产品外观设计与生产等领域。计算机视觉技术为人们带来了机遇,也带来了挑战。三维重建作为计算机视觉技术中最为最为热门的研究方向之一,涉及到包括图像处理、立体视觉、模式识别等多个学科体系。利用计算机建立表达现实客观景物的三维模型,并以此来满足生产和生活的需要。随着工业化进程的不断发展,多种技术的实现均有赖于目标物体三维信息的获取。三维重建现已被广发的应用于生活和科研工作中,特别是在医学治疗、文物保护、游戏开发、工业设计、航天航海等方面,展现出了极强的生命力和影响力。

    1.2 三维重建技术简介

    三维重建技术的重点在于如何获取目标场景或物体的深度信息。在景物深度信息已知的条件下,只需要经过点云数据[4]的配准及融合,即可实现景物的三维重建。基于三维重建模型的深层次应用研究也可以随即展开。人们按照被动式测量与主动式测量[5]对目标物体深度信息的获取方法进行了分类,下面对这两种方式进行相应的介绍。

    1.2.1 被动式三维重建技术

    被动式一般利用周围环境如自然光的反射,使用相机获取图像,然后通过特定算法计算得到物体的立体空间信息。主要有以下三种方法:

    1.纹理恢复形状法

    各种物体表面具有不同的纹理信息,这种信息由纹理元组成,根据纹理元可以确定表面方向,从而恢复出相应的三维表面。这种方法称为纹理恢复形状法[6] (Shape From Texture,SFT)。 
    纹理法的基本理论为:作为图像视野中不断重复的视觉基元,纹理元覆盖在各个位置和方向上。当某个布满纹理元的物体被投射在平面上时,其相应的纹理元也会发生弯折与变化。例如透视收缩变形使与图像平面夹角越小的纹理元越长,投影变形会使离图像平面越近的纹理元越大。通过对图像的测量来获取变形,进而根据变形后的纹理元,逆向计算出深度数据。SFT对物体表面纹理信息的要求严苛,需要了解成像投影中纹理元的畸变信息,应用范围较窄,只适合纹理特性确定等某些特殊情形。所有在实际使用中较为少见。

    2.阴影恢复形状法

    SFS[7] (Shape From Shading,从阴影恢复形状)法也是一种较为常用的方法。考虑到图像的阴影边界包含了图像的轮廓特征信息,因此能够利用不同光照条件下的图像的明暗程度与阴影来计算物体表面的深度信息,并以反射光照模型进行三维重建。需要注意的是,像素点的亮度受到包括光源指标、摄像机参数、目标表面材质等的制约。 
    阴影恢复形状法的应用范围比较广泛,可以恢复除镜面外的各种物体的三维模型。缺点体现在过程多为数学计算、重建结果不够精细,另外不能忽视的是,SFS法需要准确的光源参数,包括位置与方向信息。这就导致其无法应用于诸如露天场景等具有复杂光线的情形中。

    3.立体视觉法

    立体视觉法[8](Multi-View Stereo,MVS)是另外一种常用的三维重建方法。主要包括直接利用测距器获取程距信息、通过一幅图像推测三维信息和利用不同视点上的两幅或多幅图像恢复三维信息等三种方式。通过模拟人类视觉系统,基于视差原理获取图像对应点之间的位置偏差,恢复出三维信息。S.T.Barnard[9]等人对20世纪70年代到80年代之间出现的三维重建的算法和评价体系做了概述。到了80年代中后期,出现了更多、更深层次的视觉原理,包括立体测量方法和深度传感器等,极大的促进了相关学科的发展。新兴方法可以直接获取景物的三维信息,极大的节省了物力与人力成本。U.R.Dhond[10]等人提出了基于层次处理的三目立体约束方法。二十世纪90年代末,涌现出诸如图像匹配的前沿算法、遮挡处理算法等。M.Z.Brown[11]等人总结了2000年到2010年间的三维视觉发展的总体概况,包括遮挡、配准和效率等的相关分析。 
    双目立体视觉重建,在实际应用情况优于其他基于视觉的三维重建方法,也逐渐出现在一部分商业化产品上; 不足的是运算量仍然偏大,而且在基线距离较大的情况下重建效果明显降低 。 
    代表文章:AKIMOIO T Automatic creation of 3D facial models 1993 
    CHEN C L Visual binocular vison systems to solid model reconstruction2007 
    作为计算机视觉的关键技术之一,立体视觉法也其弊端。例如,立体视觉需要假设空间的平面是正平面,而实际情况却与此相差甚远。除此之外,匹配还存在歧义性:对于一幅图像上的某些特征点,另外的图像可能存在若干个与之相似的特征点。那么如何选取最适配的匹配点,显得较为棘手。如图1-2所示,展示了Middlebury[16]数据集中Teddy和Cones场景的基准彩色图像、标准视差以及通过Graph Cuts[17]算法获取的立体匹配视差估计结果。虽然视差结果体现出了景物的三维位置关系,但是某些像素点的视差与标准值仍有细微的差距。除此之外,对于如相机运动参数的确定、大型场景重建需要获取多帧图像等问题,也极大的影响了立体视觉的深层次应用。 

    这里写图片描述
    图1-2(a) 基准彩色图像

     
     

    这里写图片描述
    图1-2(b) 标准视差

     
     
    参考:立体匹配导论

    1.2.2 主动式三维重建技术

    主动式是指利用如激光、声波、电磁波等光源或能量源发射至目标物体,通过接收返回的光波来获取物体的深度信息。主动测距有莫尔条纹法、飞行时间法、结构光法和三角测距法等四种方法。

    1.莫尔条纹法

    莫尔条纹在生活中比较常见,如两层薄薄的丝绸重叠在一起,即可以看到不规则的莫尔(Morie)条纹;微风的吹动窗纱时,条纹亦随之运动。莫尔条纹法[18]起源于18世纪的法国,是一项古老又现代的测量方法。基本原理是将两块等间隔排列的直线簇或曲线簇图案重叠起来,以非常小的角度进行相对运动来形成莫尔条纹。如图1-3所示,在主光栅与指示光栅的交叉重合处,因光线的透射与遮挡而产生不同的明暗带,即莫尔条纹。莫尔条纹随着光栅的左右平移而发生垂直位移,此时产生的条纹相位信息体现了待测物体表面的深度信息,再通过逆向的解调函数,实现深度信息的恢复。这种方法具有精度高、实时性强的优点,但是其对光照较为敏感,抗干扰能力弱。 

    这里写图片描述
    图1-3 双光栅莫尔条纹法

     

    提出:WIKTIN recovering surface shape and orientation from texture (1987)(被引用454 次)。 
    发展:Warren 2010 对 wiktin 方法进行改进使用了透视投影; 
    Liboy 2006 给出了在纹理单元结构发生改变的情况下的重建方法。 
    优点:精度高,对光照和噪声不敏感。 
    缺点:只应用于具有规则纹理的物体。

    2.飞行时间法

    飞行时间法[19] (Time of Flight,ToF)指的是在光速及声速一定的前提下,通过测量发射信号与接收信号的飞行时间间隔来获得距离的方法。这种信号可以是超声波,也可以是红外线等。飞行时间法相较于立体视觉法而言,具有不受基线长度限制、与纹理无关、成像速度快等特点。但是其也有一定的缺点。首先,ToF相机的分辨率非常低。例如图1-4所示,当今分辨率最高的PMD Camcube 2.0 相机,也仅为204×204像素;其次,ToF相机容易受到环境因素的影响,如混合像素、外界光源等,导致景物深度不准确;最后,系统误差与随机误差对测量结果的影响很大,需要进行后期数据处理,主要体现在场景像素点的位置重合上。值得注意的是,ToF相机的售价达到了数万美元,受众较窄。 

    这里写图片描述
    图1-4 SR4000 ToF相机

     
     
    Fig.1-4 SR4000 ToF camera

    3.结构光法

    结构光法[20](Structured Light)通过向表面光滑无特征的物体发射具有特征点的光线,依据光源中的立体信息辅助提取物体的深度信息。具体的过程包括两个步骤,首先利用激光投影仪向目标物体投射可编码的光束,生成特征点;然后根据投射模式与投射光的几何图案,通过三角测量原理计算摄像机光心与特征点之间的距离,由此便可获取生成特征点的深度信息,实现模型重建。这种可编码的光束就是结构光,包括各种特定样式的点、线、面等图案。结构光法解决了物体表面平坦、纹理单一、灰度变化缓慢等问题。因为实现简单且精度较高,所以结构光法的应用非常广泛,目前已有多家公司生产了以结构光技术为基础的硬件设备,如PrimeSense公司的Prime Sensor、微软公司的Kinect和华硕公司的Xtion PRO LIVE等产品[21]。图1-5展示了利用结构光技术采集文物三维信息的场景。 
    提出:Woodham 对 SFS 进行改进(1980 年):photometric method for determining surface orientation from multiple images (该文章被引用了 891 次) 
    发展:Noakes :非线性与噪声减除 2003 年; 
    Horocitz :梯度场合控制点 2004 年; 
    Tang : 可信度传递与马尔科夫随机场 2005 年; 
    Basri : 光源条件未知情况下的三维重建 2007 年; 
    Sun :非朗伯特 2007 年; 
    Hernandez : 彩色光线进行重建方法 2007 年; 
    Shi : 自标定的光度立体视觉法 2010 年。 

    这里写图片描述
    图1-5 结构光法原理图

     

    4.三角测距法

    三角测距法[22]是一种非接触式的测距方法,以三角测量原理为基础。红外设备以一定的角度向物体投射红外线,光遇到物体后发生反射并被CCD(Charge-coupled Device,电荷耦合元件)图像传感器所检测。随着目标物体的移动,此时获取的反射光线也会产生相应的偏移值。根据发射角度、偏移距离、中心矩值和位置关系,便能计算出发射器到物体之间的距离。三角测距法在军工测量、地形勘探等领域中应用广泛。

    参考文献

    [1] Szeliski R. Computer vision: algorithms and applications[M]. Berlin: Springer, 2010. 
    [2] D. Marr, et al. A Computational Theory of Human Stereo Vision. Proc.R.Soc.Lond. 1979, B.204:301-328. 
    [3] Levoy, M. Pulli, et al. The Digital Michelangelo Project:3D Scanning of Large Statues. Proc.SIGGRAPH,2000. 
    [4] Anand A, Koppula H S, Joachims T, et al. Contextually guided semantic labeling and search for three-dimensional point clouds[J]. The International Journal of Robotics Research, 2013, 32(1):19-34. 
    [5] Mada S K, Smith M L, Smith L N, et al. Overview of passive and active vision techniques for hand-held 3D data acquisition [C]//Opto Ireland. International Society for Optics and Photonics, 2003: 16-27. 
    [6] D. A. Forsyth, J. Ponce, Computer Vision: A Modern Approach. Prentice Hall 2001 
    [7] Horn B. K. P. Shape from shading: a method for obtaining the shape of a smooth opaque object from one view. PhD thesis, Department of Electrical Engineering, MIT, Cambridge. 1970. 
    [8] Ikeuchi K. Determining surface orientations of specular surfaces by using the photometric stereo method [J]. Pattern Analysis and Machine Intelligence, IEEE Transactions, 1981, (6): 661-669. 
    [9] S. T. Barnard, M. A. Fisehler. Computational Stereo[J].ACM Computing Surveys. 1982, Vol.14:553-572. 
    [10] U. R. Dhond, J. K. Aggarval. Struct from Stereo—A Review [J]. IEEE Trans. Systems, Man, and Cybemeties.1989, Vol.19: 1489-1510.

    展开全文
  • 三维重建对疾病的治疗有着重要的意义,本文概要阐述了在医学诊断治疗领域三维重建的一些常用方法。
  • 三维重建

    2018-11-05 19:25:49
    3D Reconstruction From Multiple Images https://youtu.be/5TJqQczwsUQ
  • OpenCV+OpenGL 双目立体视觉三维重建

    万次阅读 多人点赞 2016-08-08 00:02:47
    0.绪论这篇文章主要为了研究双目立体视觉的最终目标——三维重建,系统的介绍了三维重建的整体步骤。双目立体视觉的整体流程包括:图像获取,摄像机标定,特征提取(稠密匹配中这一步可以省略),立体匹配,三维重建...
  • 医学图像三维重建是通过计算机图形学、数字图像处理技术、计算机可视化以及人机交互等技术,把二维的医学图像序列转换为三维图像在屏幕上显示出来,并根据需要为用户提供交互处理手段的理论、方法和技术。图像分割是...
  • 基于视觉的三维重建,指的是通过摄像机获取场景物体的数据图像,并对此图像进行分析处理,再结合计算机视觉知识推导出现实环境中物体的三维信息。 1. 相关概念 (1)彩色图像与深度图像 彩色图像也叫作RGB图像,R...
  • 三维重建技术概述

    万次阅读 多人点赞 2016-06-01 22:29:08
    基于视觉的三维重建,指的是通过摄像机获取场景物体的数据图像,并对此图像进行分析处理,再结合计算机视觉知识推导出现实环境中物体的三维信息。1. 相关概念(1)彩色图像与深度图像彩色图像也叫作RGB图像,R、G、B...
  • 牙模三维重建 牙齿三维重建

    千次阅读 2018-03-28 19:57:45
    今天从朋友那里搞了个牙模来测试了一下,效果还可以。牙模三维重建的作用我就懒得介绍了,相信大家都知道,不过用的人基本上都是医院、整形之类的机构。 微信: ...
  • 多频外差法三维重建 结构光三维重建

    万次阅读 热门讨论 2016-12-13 22:28:52
    结构光三维重建--多频外差 结构光三维重建主要的原理就是从投影仪中投射一定频率的结构光,这种光跟以前采用的格雷码方式不同,它具有一定的正玄性。而多频外差的方式说的就是采用几种不同频率的正玄光,为什么...
  • OpenCV实现SfM(二):双目三维重建

    万次阅读 多人点赞 2015-09-02 14:33:18
    使用OpenCV3.0实现双目三维重建,原理清晰,实践有效。
  • 三维重建基础

    万次阅读 多人点赞 2016-06-01 19:12:13
    三维重建技术通过深度数据获取、预处理、点云配准与融合、生成表面等过程,把真实场景刻画成符合计算机逻辑表达的数学模型。这种模型可以对如文物保护、游戏开发、建筑设计、临床医学等研究起到辅助的作用。1.1 研究...
  • 三维重建软件 医三维

    2016-12-10 19:46:13
    免费的三维重建影像软件,DICOM软件,三维影像工作站
  • 近几年来,随着计算机领域的各个方面的快速发展,人类的生产生活中处处可见计算机的影子,尤其是3D 打印技术的发展促使三维重建技术快速发展,这使得三维重建技术逐渐成为计算机领域的一个研究热点。不同领域的研究...
  • 双目快速触发投影三维重建系统,采用的是降光栅图片事先保存到投影仪当中,然后使用USB接口去控制投影仪并给相机 发生触发型号,控制相机进行采集,这样可以实现图像快速采集的目的。硬件采用的60帧的投影仪,相机...
  • 一段时间以来一直对三维重建中的分层重建概念理解的比较模糊,这两天特地梳理了一下,用博文记录下来,也希望给各位观众朋友们带来帮助,如果发现文中有任何错误,请直接留言或者cveric@foxmail.com给我^_^。...
  • PCB三维重建 电路板锡膏三维重建

    千次阅读 2017-12-14 15:41:44
    所以正对PCB的三维检测我开发的 单目三维重建能满足这方面的要求。我开发的单目结构光系统是基于一个相机和一个投影设备来完成的,相机的分辨率在500W像素,具体的实现方式可以参考上面那个链接...
  • 最近调试完了双投影的快速触发投影功能,主要硬件包括两台带触发模式的投影仪和一台74帧率的带触发的工业相机。 先将25张光栅图片烧进投影仪中,然后控制投影仪投射光栅并输出触发信号给相机进行采集,打光的过程如...
  • 最近将单目的扫描系统做成的彩色点云输出,使用大恒500W彩色相机,并采用基于触发方式的投影仪,硬件图-1所示。...重建的结果如图二所示,没有显示颜色信息,颜色信息效果如图3和图4所示。 ...
  • 首先我们先来看一下三维重建的效果图: 这里特别感谢博主shiter的原创文章:OpenCV+OpenGL 双目立体视觉三维重建 本博文参考了该博主的的核心代码,并针对该博主博文中声明的一些BUG进行了修正: 本文代码下载...

空空如也

1 2 3 4 5 ... 20
收藏数 4,583
精华内容 1,833
关键字:

三维重建