基于拍照的实时自动3d建模方法

文档序号:1744937 发布日期:2019-11-26 浏览:31次 >En<

阅读说明:本技术 基于拍照的实时自动3d建模方法 (Based on the real-time automatic 3D modeling method taken pictures ) 是由 赵明 向中正 蔡锫 于 2019-08-23 设计创作,主要内容包括:本发明公开了一种基于拍照的实时自动3D建模方法,包括:S1)将移动设备和相机固定在同一拍摄支架上;S2)在移动支架的过程中获取多张相机或移动设备的图像,获取每个拍摄点的位置和朝向,形成使用统一坐标系的路线图;S3)在移动设备上实时对每个拍摄点的相机照片进行3D建模;S4)将每个拍摄点的3D模型按照S2中获取的位置和朝向,统一放置在同一个三维坐标系内,对多个拍摄点3D模型之间的结合部位进行拼接处理,形成包含多拍摄点的整体3D模型;S5)在移动设备上自动生成全景漫游效果。本发明能够支持多种拍摄设备,自动精确记录各个拍摄点的相对位置和相机的镜头朝向,自动生成可在内部漫游的3D模型以及2D平面图。(The invention discloses a kind of based on the real-time automatic 3D modeling method taken pictures, comprising: S1) mobile device and camera are fixed on same shooting bracket;S2 the image that multiple cameras or mobile device) are obtained during mobile bracket, obtains the position and orientation of each shooting point, forms the route map for using unified coordinate system;S3 3D modeling) is carried out to the camera photos of each shooting point in real time on the mobile apparatus;S4 the 3D model of each shooting point is uniformly placed in the same three-dimensional system of coordinate according to the position and orientation obtained in S2), splicing is carried out to the binding site between multiple shooting point 3D models, forms the whole 3D model comprising more shooting points;S5 Panoramic Warping effect) is automatically generated on the mobile apparatus.The present invention can support a variety of capture apparatus, and automatic and accurate records the relative position of each shooting point and the camera lens direction of camera, and automatically generating can be in the 3D model and 2D plan view of inside roaming.)

基于拍照的实时自动3D建模方法

技术领域

本发明涉及一种3D建模方法,尤其涉及一种基于拍照的实时自动3D建模方法。

背景技术

本发明所要解决的技术问题是一种基于拍照的三维空间实时建模方案,该方法可用于单空间或多空间的3D建模和2D平面图生成,包含拍摄硬件,拍摄软件,编辑修改软件和云端展示软件组成的一整套流程系统。

传统上,基于拍照的建模方法有以下两种,但是都有明显的缺点:

传统方法a)使用能够识别深度信息的相机,直接生成3D模型。这种方法依赖于更加复杂的硬件,导致更高的设备成本,往往需要专业摄影师才能操作,不利于普及;

传统方法b)在一个拍摄点距离较近的地方拍摄两张照片,优选间隔厘米级和分米级并连续进行匹配和定位,然后使用MVS(Multi View Stereo,参考https://github.com/cdcseacave/openMVS)进行建模,优点是整个过程全自动不需要人工干预,但是缺点也很明显:

缺点1:计算量较大,无法在移动设备上实时建模,通常上传到服务器(云端/PC),利用更强的计算能力,运行建模算法;

缺点2:无法给出具体间隔多远拍摄的规范,如果太密则使用太麻烦,耗时过长;如果只是靠两两可见,靠感觉,可能建模失败,而拍摄时无法给用户提示。

为了克服以上的缺点,本发明使用了创新的方法,即使用深度学***面图和全景漫游效果;允许手工对拍摄的结果进行审核和编辑。

本发明支持拍摄方式广泛,包括但不限于手机鱼眼镜头、全景相机、带鱼眼镜头的相机,以及普通手机和普通数码相机,成本低廉。

普通照片(定义):使用普通数码相机(包括普通单反、微单、Point&Shoot相机等)、全景相机、带鱼眼镜头的相机,普通手机和带鱼眼镜头的手机,以及摄像头采集的照片。区别于双目视觉,普通照片并不能通过同一拍摄点拍摄的两张照片复原三维信息。普通照片以下简称照片。

使用全景相机时,通常获取的是全景图(全景图的格式和定义可以参考https://baike.baidu.com/item/360度全景图/8060867)。部分计算机视觉、图像算法,例如直线检测,需要将全景图转换为不变形的图片。以下使用的照片和图片表述包括全景照片和经转换过的不变形的图片。

发明内容

本发明所要解决的技术问题是提供一种基于拍照的实时自动3D建模方法,能够支持多种拍摄设备,自动精确记录各个拍摄点的相对位置和相机的镜头朝向,自动生成可在内部漫游的3D模型以及2D平面图。

本发明为解决上述技术问题而采用的技术方案是提供一种基于拍照的实时自动3D建模方法,包括如下步骤:S1)将具有拍照功能的移动设备和相机固定在同一拍摄支架上;S2)在移动支架的过程中获取多张相机或移动设备的图像,结合相机或移动设备的传感器来获取每个拍摄点的位置和朝向,形成使用统一坐标系的路线图;S3)在移动设备上实时对每个拍摄点的相机照片进行3D建模;S4)在移动设备上将每个拍摄点的3D模型按照S2中获取的位置和朝向,统一放置在同一个三维坐标系内,对多个拍摄点3D模型之间的结合部位进行拼接处理,形成包含多拍摄点的整体3D模型;S5)在移动设备上自动生成全景漫游效果。

进一步地,所述步骤S2是基于移动设备的定位系统,使用移动设备的图像,通过相近拍摄点照片进行特征点匹配来找到拍摄点的相对位移,形成包括所有拍摄点的在同一坐标系内的路线图,并提供每个拍摄点的位置和方向。

进一步地,所述步骤S2是基于相机的定位系统,使用相机的图像,通过相近拍摄点照片进行特征点匹配来找到拍摄点的相对位移,并形成包括所有拍摄点的在同一坐标系内的路线图,并提供每个拍摄点的位置和方向。

进一步地,所述步骤S2还包括通过移动设备或相机的传感器,获取包括移动的加速度、速度和方向信息,对路线图进行校正。

进一步地,所述步骤S2还包括获取相机镜头和手机朝向的夹角,在初始化阶段同时运行基于手机的定位系统和基于相机的定位系统,并移动支架一段距离,此时两套系统各提供一个位移向量,两个向量的夹角即为相机镜头与手机的夹角;或者通过手工旋转相机预览图或者拍摄的照片,指定与手机朝向一致的角度;或者通过图像识别算法匹配手机与相机的预览图或拍摄的照片,找到夹角;或者通过使用额外的标识包括在支架上增加刻度与手机的安装方向形成固定夹角,然后在相机预览图或照片中识别该标识来计算相机镜头和手机朝向的夹角。

进一步地,所述步骤S3包括:S31)基于深度学***面,地板和天花板部分的图像块位于水平平面,墙壁部分的图像块位于垂直平面,求解各个平面方程生成3D模型;对于在照片中相交的两个平面,以这两个平面的一条交为约束条件,使得计算得到的交线与实际观察到的交线的误差最小。

进一步地,所述步骤S3还包括:对于室内照片,利用计算机视觉技术识别照片中的墙角,并将墙角连接起来即为房间的粗略模型。

进一步地,所述步骤S3中还包括如下方式生成2D平面图:S33)将3D模型的每个面投影到2D平面上,并将这些投影进行合并成一个多边形;S34)对得到的多边形进行校正和简化,包括仅保留2D平面图上多边形的顶点,删除小的凹凸;S35)对得到的多边形进行校正和简化,包括对于室内场景,利用计算机视觉技术检测图片中的直线,进而确定墙壁的走向,并将与墙壁走向近似平行或垂直的边都修正到对应的方向上;S36)识别门的位置,包括使用深度学习的方法,在全景图上识别门的位置和大小,或者根据整个拍摄过程中相机的移动轨迹和房间轮廓的交点确定门的位置。

进一步地,所述步骤S4包括:S41)根据每个拍摄点的位置和朝向,得到一个转换矩阵,把单个拍摄点的3D模型和2D平面图的局部坐标转换为成全局的世界坐标,从而获得所有点位的整体3D模型和2D平面图;S42)对多个拍摄点的2D平面图进行统一校正,包括使用统计的方法对所有的拍摄点的墙线方向进行统一校正,使得所有房间在一定偏差范围内的墙线平行;S43)对多个拍摄点的2D平面图进行统一处理,自动去除重叠的部分,并且对空洞进行填补。

进一步地,还包括允许手工对拍摄的结果进行审核和编辑,并且提供相关的2D平面图和3D模型的审核和编辑工具。

本发明对比现有技术有如下的有益效果:本发明提供的基于拍照的实时自动3D建模方法,能够支持多种拍摄设备,可以在移动设备有限的计算能力下实时运行,自动精确记录各个拍摄点的相对位置和相机的镜头朝向,自动生成可在内部漫游的3D模型和2D平面图。此外,本发明建模成功率高;支持每个房间只拍摄一张照片,效率高,用户体验好;实时性好,在拍摄过程中实时建模;所见即所得,用户可以参照实时建模结果选择拍摄点位,防止漏拍;建模不包括家具,有利于生成正确户型图。

附图说明

图1为本发明基于拍照的实时自动3D建模方法流程示意图。

具体实施方式

下面结合附图和实施例对本发明作进一步的描述。

图1为本发明基于拍照的实时自动3D建模方法流程示意图。

请参见图1,本发明提供的基于拍照的实时自动3D建模方法,包括如下步骤:

S1)将具有拍照功能的移动设备(包括手机、平板电脑等)和相机(包括全景、鱼眼和普通数码相机)固定在同一拍摄支架(包括三脚架)上。

S2)在移动支架的过程中获取多张相机或移动设备的图像,通过图像处理算法,结合相机或移动设备的传感器来获取每个拍摄点的位置和朝向,形成使用统一坐标系的路线图。

S3)在移动设备上对每个拍摄点的相机照片,通过深度学***面图。

S4)在移动设备上将每个拍摄点的3D模型按照S2中获取的位置和朝向,统一放置在同一个三维坐标系内,对多个拍摄点3D模型之间的结合部位进行拼接处理,形成多个拍摄点的3D模型2D平面图,对所有房间墙的方向进行统一校正并对重叠和空洞情况进行优化处理。正常房型中多数房间由平行的墙构成,而单个拍摄点形成的房间模型中本来平行的墙会有一定偏差(不平行);通过考虑多个房间墙的方向,找出一个主流方向,并以此调整所有房间墙的方向。

S5)在移动设备上自动生成全景漫游效果。

一、硬件系统

本发明要求将手机和相机都固定在同一个支架(包括三脚架)上。

二、系统初始化

本发明使用以下两种方法之一来记录每个拍摄点的拍摄位置和相机的朝向:

方法一)基于手机的定位系统,即使用手机的图像(照片、视频或预览图),通过相近拍摄点照片进行特征点匹配来找到拍摄点的位移,以及优选使用移动设备的传感器(包括陀螺仪Gyroscope、加速度计Accelerometer、指南针Compass等)进行校正,以此生成路线图,并提供拍摄点的位置和方向;

方法二)基于相机的定位系统,即使用相机的图像(照片、视频或预览图),通过相近拍摄点照片进行特征点匹配来找到拍摄点的位移,优选是间隔厘米级和分米级并连续进行匹配和定位,以及优选使用相机的传感器(包括陀螺仪Gyroscope、加速度计Accelerometer、指南针Compass等)进行校正,以此生成路线图,并提供拍摄点的位置和方向。

两种方法对比:方法一基于手机系统,由于手机有多种传感器,一般可以提供较为精确的绝对坐标信息,可以测量拍摄点间的绝对距离,但使用前需要额外的初始化过程。

方法二由于相机往往不具备完善的传感器,只能提供拍摄位置的相对坐标,但不需要额外的初始化以对齐路径和单个拍摄点3D模型的坐标轴;此外,如果拍摄路径中存在回环,方法二提供的坐标误差较小。

使用方法一时,手机提供的坐标是基于手机自身的坐标系(一般一个轴指向与地面垂直的方向,另两个轴分别指向前后和左右方向),而基于全景照片生成的3D模型的坐标系是基于相机的坐标系,两者的坐标轴不重合,为了解决这个问题,需要对系统进行手动或自动的初始化,可以采用手动或自动的方法:

手动:用户使用额外的测量工具或者在支架等设备上增加刻度,手工输入相机镜头和手机朝向的夹角;

自动:初始化阶段同时运行方法一和方法二,并移动设备一段距离,优选移动1-3米,此时两套系统可以各提供一个系统的位移向量,两个向量的夹角即为相机镜头与手机的夹角。

三、拍摄点位置和朝向的确定

上述系统开始运行后,即可实时提供拍摄者所在的位置和朝向信息。

四、单个拍摄点3D模型生成

传统上,基于拍照的建模方法有以下两种,但是都有明显的缺点:

传统方法a)使用能够识别深度信息的相机,直接生成3D模型。这种方法依赖于更加复杂的硬件,导致更高的设备成本,往往需要专业摄影师才能操作,不利于普及;

传统方法b)在一个拍摄点距离较近的地方拍摄两张照片,优选间隔厘米级和分米级并连续进行匹配和定位,然后使用MVS(Multi View Stereo,参考https://github.com/cdcseacave/openMVS)进行建模,优点是整个过程全自动不需要人工干预,但是缺点也很明显:

缺点1:计算量较大,无法在移动设备上实时建模,通常上传到服务器(云端/PC),利用更强的计算能力,运行建模算法;

缺点2:无法给出具体间隔多远拍摄的规范,如果太密则使用太麻烦,耗时过长;如果只是靠两两可见,靠感觉,可能建模失败,而拍摄时无法给用户提示。

为了克服以上的缺点,本发明使用了创新的方法:为了提高实时性,达到所见即所得的效果,通常只对房间轮廓(墙***置)建模,而不去复原家具、饰品等房间附属物体的模型。即:

i.基于深度学***面要么法线方向确定(地板,天花板),要么法线在水平面上(墙壁);

ii.基于图像处理技术,对图像进行分块,每块可近似认为是一个平面。对于地板部分的块,平面方程是已知的。假设y轴垂直向上,则地板部分的方程为y+1=0。对于墙壁部分,平面方程为Ax+Cz+D=0,天花板部分为y+D=0,其他部分为Ax+By+Cz+D=0,生成3D模型的过程即为求解各个平面方程的过程。对于在图片中相交的两个平面,在图片中有一条交线,以此为约束条件,上述求解方程的过程可以变为一个最小化问题,使得对于相交的两个平面,计算得到的交线与实际观察到的交线的误差最小;

iii.也可使用其他方法对场景进行建模。例如在室内,可以利用计算机视觉技术识别图中的墙角,将墙角连接起来即为房间的粗略模型。

iv.2D平面图生成,得到每个拍摄点的3D模型后,可以进一步生成平面图,尤其是对室内场景的应用,很多时候都需要平面图。方法是:

1.将3D模型的每个面投影到2D俯视图平面上;

2.将这些投影进行合并成一个大的多边形;

3.对得到的多边形进行校正和简化,例如:

a)得到的多边形往往点的数量较多,可以对多边形进行简化,仅保留2D平面图上多边形的顶点,删除小的凹凸;

b)对于室内场景,可以利用计算机视觉技术检测图片中的直线,进而确定墙壁的走向,将与墙壁走向近似平行或垂直的边都修正到对应的方向上。

4.门的识别。对于室内场景,需要在2D平面图上对门进行标注,可以使用以下两个方法:

a)直接使用深度学习的方法,在全景图上识别门的位置和大小;

b)由于基于手机或相机的定位系统不仅给出知道每个拍摄点的位置和朝向,还具备整个拍摄过程中相机的移动轨迹,这个路径和房间本身的轮廓的交点必然是门的位置。

五、多个拍摄点3D模型以及2D平面图生成

a)步骤4解决了每个拍摄点的3D模型生成,得到的3D模型坐标都是相对于拍摄点的相对坐标。为了将这些模型结合起来,从而生成完整的3D模型和2D平面图。首先,由于已经知道每个拍摄点的位置和朝向,可以得到一个转换矩阵,把单个模型的局部坐标转换成全局的世界坐标。

b)在此基础上,可以进一步对模型和平面图进行校正。

i.单各拍摄点的模型使用了直线进行校正,一般是存在误差的,拍摄了多个点位后,可以用统计的方法对所有的拍摄点进行统一校正,例如,使用RANSEC(Random SampleConsensus)等方法,找到最合理的校正直线,使得所有房间在一定偏差范围内的墙线平行、避免出现小的偏差角度;

ii.由于建模的误差,多个拍摄点的3D模型和2D平面图放在一起可能存在重叠,空洞等情况,可以自动去除重叠的部分,在2D平面图上对空洞进行填补等。

六、即时展示

上述过程可以完全在手机上自动进行,完成后,可以使用展示软件在手机上即时进行展示,漫游等,并能上传至云端分享给他人。

七、人工编辑

由于定位系统、单拍摄点3D建模算法以及多拍摄点3D模型/2D平面图优化各环节均可能存在误差,为了得到更高精度的模型,本发明允许用户手工对拍摄的结果进行编辑,并提供审核和编辑工具。

虽然本发明已以较佳实施例揭示如上,然其并非用以限定本发明,任何本领域技术人员,在不脱离本发明的精神和范围内,当可作些许的修改和完善,因此本发明的保护范围当以权利要求书所界定的为准。

10页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:一种数字孪生系统、方法及计算机设备

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!

技术分类