首页 / 专利库 / 人工智能 / 虚拟界面 / 基于单摄像机SFS算法的三维重建方法

基于单摄像机SFS算法三维重建方法

阅读:1016发布:2020-10-23

专利汇可以提供基于单摄像机SFS算法三维重建方法专利检索,专利查询,专利分析的服务。并且本 发明 公开了基于单摄像机SFS 算法 的 三维重建 方法,具体按以下步骤实施:首先标定摄像机,然后提取目标轮廓,最后采用SFS算法基于 体素 进行目标三维重建。本发明采用单摄像机拍摄图片,降低了 三维建模 的成本;对物体三维重建采用的基于体素的方法,而不是基于面片和物体特征点,基于面片比较耗时,而基于物体特征点方法特征点确定难度大,直接影响三维重建的效果;在三维重建过程中,通过预计算和快速体素投影算法寻找内部体素,大大的节省了内存和运算时间,加快了三维建模速度。,下面是基于单摄像机SFS算法三维重建方法专利的具体信息内容。

1.基于单摄像机SFS算法三维重建方法,其特征在于,具体按以下步骤实施:
步骤1:标定摄像机;
步骤2:提取目标物,然后提取目标轮廓;
步骤3:SFS算法三维重建,在计算机虚拟三维空间坐标系中,设定一个感兴趣的空间,将感兴趣空间均匀的分割为大小相等的离散的体素,对体素在目标轮廓中的投影位置进行预计算,并运用快速体素投影算法寻找内部体素,对所有的内部体素进行组合,得到重建后的三维物体;
所述预计算,具体为:将体素在轮廓图中投影形成的多边形区域表示成一个矩形,矩形长、宽边分别是多边形最大行值与最小行值的差值、最大列值与最小列值的差值,计算每个体素在每一幅轮廓图中投影区域的位置,并将其在轮廓图中的位置信息保存到数组中,然后将这些数据写入文件。
2.根据权利要求1所述的基于单摄像机SFS算法的三维重建方法,其特征在于,所述的步骤1具体按照以下步骤实施:
1.1)设定世界坐标系:将标定板放置在三维重建系统的转盘上,设置世界坐标系的方向;
1.2)标定摄像机,具体为:
1.2.1)调整转盘平面至平,使标定板和转盘的平面平行;调整摄像机位置,使标定板在摄像机的视野范围内;调整摄像机焦距,使标定板在初始位置时图像最清晰;
1.2.2)捕获标定板在初始位置及前后移动状态的图片,实际的三维空间点与图片中的二维空间点存在如下关系:
[像]=M[物],
其中M为摄像机投影矩阵,包含参数为摄像机参数;
1.2.3)捕获图片后,提取标定板图像上圆心的空间点的坐标(u,v),其对应的世界坐标系中的点为(Xw,Yw,Zw),点的世界坐标和图像坐标存在如下关系:
其中Hc是一个比例因子,对世界坐标系中的点用MATLAB标定工具箱处理求得投影矩阵M。
3.根据权利要求2所述的基于单摄像机SFS算法的三维重建方法,其特征在于,所述的标定板为圆形的靶标。
4.根据权利要求1所述的基于单摄像机SFS算法的三维重建方法,其特征在于,所述的步骤2具体按照以下步骤实施:
2.1)提取目标物;
在放置物体的转盘下放置蓝色的背景板,同时设置重建系统拍摄背景和摄像机拍摄界面背景为蓝色,拍摄图片,并对得到的图片进行抠图处理,提取目标物;
2.2)提取目标轮廓;
设定目标点为非零值,背景点为零值,遍历经步骤2.1)处理的图片的像素点,若一个点为非零值,而且四周的八个点都是非零值,则将该点置为零值,最终得到多个目标轮廓,保留点数最多的轮廓,即为目标轮廓。
5.根据权利要求4所述的基于单摄像机SFS算法的三维重建方法,其特征在于,所述抠图处理,具体为:获取蓝色背景的像素值,将拍摄的图中每一个像素的蓝色通道和蓝色背景值做差,得到一幅差值图;给定一个阈值th,差值图中像素值如果大于th的保留,否则像素值置为零。
6.根据权利要求1所述的基于单摄像机SFS算法的三维重建方法,其特征在于,所述文件的写入格式为:第一行保存第一个体素在感兴趣空间中的坐标,接下来的行依次保存该体素在每一幅轮廓图中的预计算出来的矩形坐标值,依次如上进行每个体素数据的保存;
所述矩形坐标值包括矩形左上在轮廓图中坐标和矩形的宽、高。
7.根据权利要求1所述的基于单摄像机SFS算法的三维重建方法,其特征在于,所述快速体素投影算法寻找内部体素,具体为:
1)从预计算后保存的文件中读入体素vn在第k幅轮廓图中的矩形坐标值,在此矩形内部随机的挑选Q个点;
2)初始化计数器Count为0;
3)对于i=1~Q进行循环遍历,如果i点是在第k幅轮廓图轮廓的内部,则Count增加一个值;
4)若Count<Qε,Qε是一个给定的标准值,体素vn分类为外部体素;Count≥Qε,则该体素为内部体素。

说明书全文

基于单摄像机SFS算法三维重建方法

技术领域

[0001] 本发明属于三维建模图像处理技术领域,涉及一种基于单摄像机SFS算法的三维重建方法。

背景技术

[0002] 在计算机视觉中,三维重建是指根据单视图或者多视图的图像重建出物体三维信息的过程。三维模型技术在工业设计、瑕疵检测、逆向工程、机器人导引、地貌测量、医学信息、生物信息、刑事鉴定、数字文物典藏、电影制片、游戏创作素材等等都可见其应用。
[0003] 三维建模常用方法一是通过三维扫描仪,该方法是主动的向物体投射激光或者结构光等,通过时差测距或者三测距法获得物体三维表面的距离信息,创建物体几何表面的点,这些点可用来插补成物体的表面形状,越密集的点云可以创建更精确的模型。大量的点云数据就是对物体表面通过激光进行采样,将点云数据相邻的点拼接为面片,就是物体的三维模型。但是三维扫描仪价格特别昂贵,此外,光学技术不易处理闪亮(高反照率)、镜面或半透明的表面,而激光技术不适用于脆弱或易变质的表面,所以寻找一种实惠的,具有普适性的三维重建方法是很有必要的。
[0004] 三维建模另一类方法是基于视觉的方法对物体建模,又细分出众多不同的技术方法。使用可见光图像达成建模的方法,又称作基于机器视觉的方式,是今日机器视觉研究主流之一。基于机器视觉的方式,将额外的能量投射至物体,借由能量的反射来计算三维空间信息;然后由待测物表面反射周遭辐射线的方法,达到预期的效果。由于环境中的可见光辐射,是相当容易取得并利用的,大部分这类型的三维重建以侦测环境的可见光为主。获得物体表面反射周遭辐射线的方法主要包括立体视觉法和轮廓法。传统的立体成像系统使用两个放在一起的摄影机,平行注视待重建之物体,测定物体的深度信息对物体建模。轮廓法是使用一系列物体的轮廓线条构成三维形体常见的方式是将待测物放置于电动转盘上,每次旋转一小角度后拍摄其图像,再经由图像处理技巧去除背景并取出轮廓线条,由各角度的轮廓线后建成物体三维模型。基于视觉的三维重建方法并不需要规格太特殊的硬件支持,这类产品往往相当便宜。
[0005] 基于计算机视觉的三维建模技术具有实际意义,其优势如下:(1)相对于三维扫描仪来说,获取图像的代价很低,而且速度很快;(2)解决了三维重建的纹理映射难题,图像采集的是颜色信息,本身含有丰富纹理信息,而激光扫描获得的只是距离信息没有纹理信息。
[0006] 现有基于机器视觉的三维建模方法,以轮廓法居多,SFS(Shape  From Silhouette)算法就是其中一种。SFS算法是一种根据物体的多幅轮廓图去估计物体外形的一种方法。基于SFS算法进行三维重建的一般方法是拍摄物体一周的多角度的多幅图片,八幅或更多,提取每一幅图片的轮廓,以摄像机的焦点为中心,将轮廓图投影到三维空间,可以得到一个锥形空间,这个空间是一个包含了物体的锥体空间,称为视觉锥体。摄像机拍摄位于转盘上的物体一周的多幅图片,相当于多个摄像机从不同角度去拍摄物体,不同角度的视觉锥体空间的交集是一个不规则形状。当摄像机足够多时,不规则形状就越趋近于物体的外表形状,可以估计出目标物的三维模型。但是现有采用SFS算法在三维重建的过程中存在标定方法成本高,灵活性差的缺点。

发明内容

[0007] 本发明的目的是提供一种基于单摄像机SFS算法的三维重建方法,解决了现有三维重建中标定方法成本高,灵活性差的问题。
[0008] 本发明的技术方案是,基于单摄像机SFS算法的三维重建方法,具体步骤如下:
[0009] 步骤1:标定摄像机;
[0010] 步骤2:提取目标轮廓;
[0011] 步骤3:SFS算法三维重建,在计算机虚拟三维空间坐标系中,设定一个感兴趣的空间,将感兴趣空间均匀的分割为大小相等的离散的体素,对体素在目标轮廓中的投影位置进行预计算,并运用快速体素投影算法寻找内部体素,对所有的内部体素进行组合,得到重建后的三维物体。
[0012] 本发明的特点还在于,
[0013] 步骤1具体按照以下步骤实施:
[0014] 1.1)设定世界坐标系:将标定板放置在三维重建系统的转盘上,设置世界坐标系的方向;
[0015] 1.2)标定摄像机,具体为:
[0016] 1.2.1)调整转盘平面至平,使标定板和转盘的平面平行;调整摄像机位置,使标定板在摄像机的视野范围内;调整摄像机焦距,使标定板在初始位置时图像最清晰;
[0017] 1.2.2)捕获标定板在初始位置及前后移动状态的图片,实际的三维空间点与图片中的二维空间点存在如下关系:
[0018] [像]=M[物],
[0019] 其中M为摄像机投影矩阵,包含参数为摄像机参数;
[0020] 1.2.3)捕获图片后,提取标定板图像上圆心的空间点的坐标(u,v),其对应的世界坐标系中的点为(Xw,Yw,Zw),点的世界坐标和图像坐标存在如下关系:
[0021]
[0022] 其中Hc是一个比例因子,对世界坐标系中的点用MATLAB标定工具箱处理求得投影矩阵M。
[0023] 其中标定板为圆形的靶标。
[0024] 其中步骤2具体按照以下步骤实施:
[0025] 2.1)提取目标物;
[0026] 在放置物体的转盘下放置蓝色的背景板,同时设置重建系统拍摄背景和摄像机拍摄界面背景为蓝色,拍摄图片,并对得到的图片进行抠图处理,提取目标物;
[0027] 2.2)提取目标轮廓;
[0028] 设定目标点为非零值,背景点为零值,遍历经步骤2.1)处理的图片的像素点,若一个点为非零值,而且四周的八个点都是非零值,则将该点置为零值,最终得到多个目标轮廓,保留点数最多的轮廓,即为目标轮廓。
[0029] 其中抠图处理,具体为:获取蓝色背景的像素值,将拍摄的图中每一个像素的蓝色通道和蓝色背景值做差,得到一幅差值图;给定一个阈值th,差值图中像素值如果大于th的保留,否则像素值置为零。
[0030] 其中预计算,具体为:将体素在轮廓图中投影形成的多边形区域表示成一个矩形,矩形长、宽边分别是多边形最大行值与最小行值的差值、最大列值与最小列值的差值,计算每个体素在每一幅轮廓图中投影区域的位置,并将其在轮廓图中的位置信息保存到数组中,然后将这些数据写入文件。
[0031] 其中文件的写入格式为:第一行保存第一个体素在感兴趣空间中的坐标,接下来的行依次保存该体素在每一幅轮廓图中的预计算出来的矩形坐标值,依次如上进行每个体素数据的保存。
[0032] 其中矩形坐标值包括矩形左上角在轮廓图中坐标和矩形的宽、高。
[0033] 其中快速体素投影算法寻找内部体素,具体为:
[0034] 1)从预计算后保存的文件中读入体素vn在第k幅轮廓图中的矩形坐标值,在此矩形内部随机的挑选Q个点;
[0035] 2)初始化计数器Count为0;
[0036] 3)对于i=1~Q进行循环遍历,如果i点是在第k幅轮廓图轮廓的内部,则Count增加一个值;
[0037] 4)若Count<Qε,Qε是一个给定的标准值,体素vn分类为外部体素;Count≥Qε,则该体素为内部体素。
[0038] 本发明的有益效果是,基于单摄像机SFS算法的三维重建方法采用单摄像机拍摄图片,降低了三维建模的成本;对物体三维重建采用的基于体素的方法,而不是基于面片和物体特征点,基于面片比较耗时,而基于物体特征点方法特征点确定难度大,直接影响三维重建的效果;在三维重建过程中,通过预计算和快速体素投影算法寻找内部体素,大大的节省了内存和运算时间,加快了三维建模速度。附图说明
[0039] 图1是本发明基于单摄像机SFS算法的三维重建方法的重建系统;
[0040] 图2是本发明所使用标定板示意图;
[0041] 图3是本发明建立的世界坐标系示意图。
[0042] 图中,1.待拍摄物品,2.转盘,3.摄像机,4.计算机,5.拍摄背景。

具体实施方式

[0043] 下面结合附图和具体实施方式对本发明进行详细说明。
[0044] 本发明基于单摄像机SFS算法的三维重建方法,具体按以下步骤实施:
[0045] 步骤1,标定摄像机
[0046] 1.1)设定世界坐标系
[0047] 按照图1所示重建系统的设置方式,将图2所示的标定板放置在三维重建系统的转盘上,设置世界坐标系的方向,如图3所示,垂直转盘的方向为世界坐标系的Y方向,方向向下;转盘的横方向为世界坐标系的X方向,方向向右;转盘的纵向为Z方向,方向是摄像机的朝向;设定转盘的中心为世界坐标系的原点,标定板的中心与转盘的中心重合。
[0048] 由于圆形对图像阈值不敏感,同时圆心的定位比较精确,因此所使用标定板为圆形靶标。
[0049] 1.2)标定摄像机,摄像机每旋转一个角度均需进行标定,具体为:
[0050] 1.2.1)调整转盘平面至水平,使标定板和转盘的平面平行;调整摄像机位置,使标定板在摄像机的视野范围内:纵向移动平台,记录标定板始终出现在在摄像机范围内的最远和最近的距离,且尽量使最近和最远时,摄像机可以拍摄整个标定板;调整摄像机焦距,使标定板在初始位置时图像最清晰。
[0051] 1.2.2)捕获标定板在初始位置及其前后移动状态的图片(Z方向以5cm前后移动),实际的三维空间点与图片中的二维空间点存在如下关系:
[0052] [像]=M[物]   (1)
[0053] 其中M为摄像机投影矩阵,包含参数为摄像机参数。
[0054] 1.2.3)捕获图片后,提取标定板图像上圆心的空间点的坐标(u,v),其对应的世界坐标系中的点为(Xw,Yw,Zw),点的世界坐标和图像坐标存在如下关系:
[0055]
[0056] 其中Hc是一个比例因子,对所获得的世界坐标系中的点用MATLAB标定工具箱处理求得投影矩阵M,即完成对摄像机的标定,具体为:
[0057]
[0058] 步骤2,提取目标轮廓
[0059] 2.1)提取目标物
[0060] 在放置物体的转盘下放置蓝色的背景板,同时设置重建系统拍摄背景和摄像机拍摄界面背景为蓝色,拍摄图片,并对得到的图片进行抠图处理,提取目标物,具体为:获取蓝色背景的像素值,将拍摄的图中每一个像素的蓝色通道和蓝色背景值做差,得到一幅差值图;给定一个阈值th,差值图中像素值如果大于th的保留,否则像素值置为零。
[0061] 2.2)提取目标轮廓
[0062] 设定目标点为非零值,背景点为零值,遍历经步骤2.1)处理的图片的像素点,若一个点为非零值,而且四周的八个点都是非零值,则将该点置为零值,最终得到多个目标轮廓,保留点数最多的轮廓,即为目标轮廓。
[0063] 步骤3,SFS算法三维重建
[0064] 3.1)在计算机虚拟三维空间坐标系中,设定一个感兴趣的空间,将感兴趣空间均匀的分割为大小相等的离散的体素,每一个体素向目标轮廓图投影得到一个多边形区域。
[0065] 3.2)预计算
[0066] 将轮廓图中的多边形区域表示成一个矩形,矩形长、宽边分别是多边形最大行值与最小行值的差值、最大列值与最小列值的差值,计算每个体素在每一幅轮廓图中投影区域的位置,并将其在轮廓图中的位置信息保存到数组中,然后将这些数据写入文件,文件的写入格式为:第一行保存第一个体素在感兴趣空间中的坐标,接下来的行依次保存该体素在每一幅轮廓图中的预计算出来的矩形坐标值,矩形坐标值包括矩形左上角在轮廓图中坐标和矩形的宽、高,依次如上进行每个体素数据的保存。
[0067] 3.3)快速体素投影算法寻找内部体素,具体为:
[0068] 3.3.1)从步骤3.1保存的文件中读入体素vn在第k幅轮廓图中的矩形坐标值,在此矩形内部随机的挑选Q个点(Q=5);
[0069] 3.3.2)初始化计数器Count为0;
[0070] 3.3.3)对于i=1~Q进行循环遍历,如果i点是在第k幅轮廓图轮廓的内部,则Count增加一个值;
[0071] 3.3.4)若Count<Qε(Qε是一个给定的标准值,Qε=3),体素vn分类为外部体素;Count≥Qε,则该体素为内部体素。
[0072] 3.4)将所有的内部体素进行组合,即为重建后的三维物体。
[0073] 最后将步骤3中得到的内部体素连同其内部的物体像素点,运用OpenGL,绘制出物体的三维并进行光照、渲染、上色以及视角变换等操作,最终在屏幕上显示重建的物体三维模型。
[0074] 计算体素在轮廓图中投影区域的传统方法费时并且计算复杂,在本发明中,将轮廓图中的多边形区域以其最大行值与最小行值之差、最大列值与最小列值之差表示成一个矩形,有效简化了运算过程。
[0075] 本发明在三维重建过程中,通过预计算提前计算出每个体素在每一幅轮廓图中投影区域的位置,并将在轮廓图中的位置信息保存到数组,写入文件,为快速体素投影算法提供了数据准备。同时,通过预计算还可以测试体素是否完全投影在一幅轮廓图的内部,并删除投影在轮廓图外的体素,节省了内存和运算时间。
[0076] 在确定感兴趣空间的物体内部体素时,本发明采用快速体素投影算法无需判断每个体素内的像素点,只需在其内部随机挑选Q个点进行测试,当其中不少于Qε个点在物体轮廓内时,即表示当前体素为内部体素,大大缩短了运算时间,减少了内存消耗,提高了三维重建的速度。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈