一种基于移动设备的光场采集方法与流程

文档序号:17628225发布日期:2019-05-10 23:53阅读:230来源:国知局
一种基于移动设备的光场采集方法与流程

本发明涉及光场采集技术领域,尤其涉及一种基于移动设备的光场采集方法。



背景技术:

当前光场采集装置和方法主要有:1)相机阵列,如平面相机阵列、球形相机阵列等,一般使用按照一定方式排布的十几个到上百个不等数量的相机,从不同位置同时采集场景的照片或视频;2)微镜头阵列,如微透镜掩膜等,通过在传感器前加入特殊微透镜阵列,构造特殊相机,采集场景一定范围的光场图像或视频;3)机械臂挂载相机,如二自由度旋转臂、四自由度机械臂等,使用机械装置使相机按照预设轨迹运动,采集场景不同角度的图像;4)移动单个相机,从多个位置拍摄物体或场景图像。

现有采集方法中,基于相机阵列或机械臂的方法依赖于大型采集装置,成本高昂,且移动、安装、调试困难,缺乏便携性,限制了其应用场景。基于微镜头阵列的方法,也依赖于特殊的光场相机,成本较高,并且采集得到的光场可视角度较小,适用于进行后期对图像进行变焦和改变景深的操作,但不适用于对物体进行三维重建。基于移动单个相机的方法,需要使用特殊的标识图案辅助进行相机定位,破坏了场景的完整性,且需要用户在采集过程中手动选择拍照位置、采样密度等,采集难度较大,对用户经验要求高。



技术实现要素:

为了解决现有技术存在的不足,本发明提供一种基于移动设备的光场采集方法,不依赖于特殊的采集设备、装置,使用手机内置摄像头和计算单元实时估计相机姿态,进行自适应的非规则光场采样,并通过屏幕提供实时的覆盖范围反馈提示信息,引导用户高效完成光场采集过程。

为了达到上述目的,本发明提供的基于移动设备的光场采集方法,包括以下步骤:

1)估计相机三维位置与三维姿态;

2)识别、存储、绘制场景的主要平面;

3)指定采集目标的大小与中心位置;

4)自动计算视点覆盖范围,进行自适应采样;

5)实时可视化绘制已采集的所述视点覆盖范围,引导提示采集覆盖期望区域。

进一步地,所述步骤1)进一步包括:

获取所述相机内参,对所述相机内参进行标定;

从所述移动备程序接口获取估计所述相机三维位置与三维姿态。

进一步地,所述步骤2)进一步包括:

计算场景中稀疏特征点的三维位置,进行鲁棒的平面估计与平面提取;

筛选出大于设定阈值的所述提取平面,以所述相机内参为虚拟相机内参,所述相机三维姿态为虚拟相机外参,将所述平面绘制在屏幕上,叠加到视频流图像上。

进一步地,所述平面内部绘制为半透明颜色,所述屏幕边界绘制为区别于所述内部的不透明颜色。

进一步地,所述步骤3)进一步包括:

点击所述屏幕并指定采集目标初始位置,计算出点击位置在离摄像头最近的主要平面上的三维交点,并设置所述最近平面为当前平面;

在所述屏幕上绘制均分三角网格三维半球,根据摄像头到所述三维交点距离设置初始半径。

进一步地,单个触点在所述屏幕上滑动,对于每一个输入触点屏幕坐标,重新计算点击位置与当前平面的三维交点位置,并把三角网格球体的球心移动到新的交点位置。

进一步地,两个触点在所述屏幕上滑动,根据所述两个触点的屏幕坐标中心位移在当前平面法向量投影方向的上的距离,计算出球体在当前平面法向量上的移动距离,并按照此距离将三维网格球体的球心移动到新的三维位置。

进一步地,根据两个触点的所述屏幕坐标距离变化,计算出三维网格球体的新半径,并根据所述半径更新屏幕上绘制的球体半径,调整所述球体新半径使三维网格球体包围所述采集目标物体。

进一步地,所述步骤4)进一步包括:

记录初始采集半径,以所述采集目标物体中心为球心构造采集球面;

计算当前视点在所述采集球面上的投影位置,计算所述相机中心三维位置与所述采集目标中心位置连线,计算所述连线与三维网格球体表面的交点三维坐标;

计算所述当前视点移动速度,当速度小于设定阈值,且视线对准目标物体时,拍摄第一张图像,并记录该视点在所述采集球面上的第一投影位置;

计算与所述第一投影位置最接近的已采集视点,当所述当前视点与所述已采集视点之间的距离大于设定阈值,所述当前视点与所述已采集视点到目标中心连线的夹角大于预设阈值,且移动速度小于预设阈值时,自动拍摄第二张图像,并记录第二投影位置。

进一步地,所述步骤5)进一步包括:

计算所述已拍图像的视点位置在均匀三角网格三维球体上的投影,统计每个网格内视点的数目;

按照预设的视点数目到颜色的映射,计算所述三角网格中每一个三角形的颜色和透明度,并将所述三角形内部绘制为半透明的对应颜色;

计算视线偏离所述相机与所述目标物体中心连线的角度,按照预设的所述角度到颜色的映射,计算所述角度的提示颜色,将所述三角网格的边沿连线绘制为不透明的对应颜色;

计算当前视点到所述目标物体中心的距离与初始半径之差,按照预设的所述距离到颜色的映射,计算所述距离的提示颜色,将所述屏幕上的距离提示界面元素绘制为对应颜色。

本发明的一种基于移动设备的光场采集方法,具有以下有益效果:

1)进行光场采集时记录下场景中各个位置和方向的光信息,再在绘制时根据视点、成像模型信息通过数字处理生成新的图像。相比传统的三维重建方法有着极大的优势:真实感强,模型能逼真地表现真实物体与场景的复杂外观;适用性强,建模效果不受物体、场景几何与材质复杂程度影响。

2)不依赖于特殊的采集设备、装置,使用手机内置摄像头和计算单元实时估计相机姿态,进行自适应的非规则光场采样,并通过屏幕提供实时的覆盖范围反馈提示信息,引导用户高效完成光场采集过程。

本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。

附图说明

附图用来提供对本发明的进一步理解,并且构成说明书的一部分,并与本发明的实施例一起用于解释本发明,并不构成对本发明的限制。在附图中:

图1为根据本发明的基于移动设备的光场采集方法流程图;

图2为根据本发明的一种绘制场景中平面的方法示意图;

图3为根据本发明的一种指定采集目标物体位置的方法示意图;

图4为根据本发明的一种指定采集目标物体位置的方法另一示意图;

图5为根据本发明的一种指定采集目标物体位置的方法中调节半径示意图;

图6为根据本发明的一种可视化绘制已采集视点分布和密度的方法示意图。

具体实施方式

以下结合附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明。

图1为根据本发明的基于移动设备的光场采集方法流程图,如图1所示,本发明的基于移动设备的光场采集方法,包括以下步骤:

首先,在步骤101,估计相机三维位置与三维姿态。该步骤中,根据场景在视频流中的图像特征点和智能手机传感器输入,实时估计出相机六自由度姿态。

优选地,所述步骤101包括,查询所述相机说明文档得到相机内参,或通过拍摄标识物图像对相机内参进行标定;从智能手机应用程序接口获得相机三维位置与三维姿态的估计。

在步骤102,识别、存储、绘制场景的主要平面。该步骤中,识别出场景中的主要水平与竖直平面,存储在空间数据结构中,并绘制在屏幕上提示用户。

优选地,所述步骤102包括,计算出场景中稀疏特征点的三维位置,进行鲁棒的平面估计与平面提取;从提取出的平面中筛选出面积大于一定阈值的平面,以所述相机内参为虚拟相机内参,估计出的所述相机三维姿态为虚拟相机外参,将平面绘制在屏幕上,叠加到视频流图像上。

优选地,所述平面内部绘制为半透明颜色,屏幕边界绘制为与内部不同的不透明颜色。

在步骤103,指定采集目标的大小与中心位置。该步骤中,.用户通过在触屏上点击、拖拽等操作在识别出的平面上指定采集目标物体的空间位置和粗略大小。

优选地,所述步骤103包括,通过单击触屏指定采集目标初始位置,根据用户触点的屏幕坐标与所述相机内外参数,以及所述主要平面位置和大小,计算出点击位置在离摄像头最近的主要平面上的三维交点,并设置所述最近平面为当前平面;以所述三维交点为中心,在屏幕上绘制均分三角网格三维半球,根据摄像头到所述三维交点距离设置合适的初始半径。

优选地,单个手指在触屏上滑动,对于每一个输入触点屏幕坐标,重新计算点击位置与当前平面的三维交点位置,并把三角网格球体的球心移动到新的交点位置。

优选地,两个手指在触屏上滑动,根据两个触点的屏幕坐标中心位移在当前平面法向量投影方向的上的距离,计算出球体在当前平面法向量上的移动距离,并按照此距离将三维网格球体的球心移动到新的三维位置。

优选地,根据两个触点的屏幕坐标距离变化,计算出三维网格球体的新半径,并根据所述半径更新屏幕上绘制的球体半径;用户通过调整此半径使三维网格球体大概包围采集目标物体。

在步骤104,自动计算视点覆盖范围,进行自适应采样。该步骤中,启动采集后,在用户移动相机过程中,自动计算视点覆盖范围与密度,在合适位置自动拍摄图像。

优选地,所述步骤104包括,记录初始采集半径,以所述采集目标物体中心为球心,以采集半径构造采集球面;计算当前视点在采集球面上的投影位置,计算所述相机中心三维位置与所述采集目标中心位置连线,求出所述连线与三维网格球体表面的交点三维坐标;计算当前视点移动速度,当速度小于一定阈值,且视线对准目标物体时,拍摄第一张图像,并记录该视点在采集球面上的投影位置;求出与当视点在采集球面上的投影位置最接近的已采集视点,当两个视点之间的距离大于一定阈值,两个视点到目标中心连线的夹角大于一定阈值,且移动速度小于一定阈值时,自动拍摄一张新的图像,并记录新的投影位置。

在步骤105,实时可视化绘制已采集的所述视点覆盖范围,引导提示采集覆盖期望区域。该步骤中,在屏幕上可视化绘制已采集的视点密度和覆盖范围,以及可视化提示智能手机离目标的距离和朝向,辅助用户采集覆盖期望的区域。

优选地,所述步骤105包括,计算记录的已拍图像的视点位置在均匀三角网格三维球体上的投影,统计每个网格内视点的数目;按照给定的视点数目到颜色的映射,计算出网格中每一个三角形的颜色和透明度,并将每一个三角形内部绘制为半透明的对应颜色;计算视线偏离相机与目标物体中心连线的角度,按照给定的角度到颜色的映射,计算出角度提示颜色,将网格的边沿连线绘制为不透明的对应颜色;计算当前视点到目标物体中心的距离与初始半径之差,按照给定的距离到颜色的映射,计算出距离对应的提示颜色,将屏幕上的距离提示界面元素绘制为对应颜色。

实施例

估计智能手机相机内参,并得到每一帧图像对应的相机三维位置与三维姿态;

识别出场景中的主要水平与竖直平面,存储在空间数据结构中,并以半透明方式叠加绘制到视频上对应位置;

用户通过在触屏上进行点击,拖拽等操作指定采集目标的中心位置与大致大小;

计算当前视点与已拍摄图像视点的距离,根据视点位置、视线方向和移动速度自动拍摄场景图像,并记录采样对应的视点位置和相机姿态;

计算球面上各个区域的采样视点密度,用不同颜色绘制球面不同区域,同时改变用户界面颜色提示视线偏离目标中心和距离偏离采样球半径的程度。

本发明实施例提供一种估计智能手机相机内、外参的方法,即对于装载ios系统,支持arkit应用程序接口的苹果公司智能手机,或对于装载安卓系统,支持arcore应用程序接口的智能手机,分别使用arkit和arcore提供的函数,对实时采集的视频流中每帧图像,获得对应时刻的相机内参与三维相机位置、姿态。

本发明实施例提供一种识别、场景中主要水平与竖直平面的方法,该方法包括:对于支持arkit或arcore应用程序接口的智能手机,分别使用arkit和arcore提供的函数,获得每帧图像中检测到的水平与竖直平面三维位置与法向量方向;构造三维八叉树空间划分数据结构;对于每一帧检测到的平面,将其中新平面插入八叉树数据结构中,并更新八叉树中所有位置、法向量方向、大小有变化的平面信息。

图2为根据本发明的一种绘制场景中平面的方法示意图,如图2所示,对水平和竖直平面分别使用两种不同的颜色作为基色,用半透明四边形绘制各个平面;用不透明白色作为边界颜色绘制各个平面边界。

本发明提供一种指定采集目标物体位置的方法,该方法包括:

用户通过鼠标或触屏点选视频流中的一个二维位置,屏幕坐标记为;获得的相机内参矩阵和外参矩阵,分别记为,计算出从相机光心位置射出,经过屏幕坐标

位置的射线方程,记为;求出射线与识别出的所有平面的交点;找出其中距离相机光心最近的交点,记为,将其所在平面记为

图3为根据本发明的一种指定采集目标物体位置的方法示意图,如图3所示,以为球心,平面法向量为正方向,用实线绘制网格状正半球;半球初始半径设为到相机中心距离的1/5。

用户通过鼠标或触屏继续点选二维位置,根据新的屏幕坐标,重复上述求交的步骤,计算出新的交点和其所属平面;将网格状半球移动到以为中心,法向量为正方向的位置。

图4为根据本发明的一种指定采集目标物体位置的方法另一示意图,如图4所示,用户在触屏上沿着相同方向滑动两个手指时,调节半球中心离平面的距离;记录用户两个触点平均位置在平面滑动的矢量距离,根据相机内参中的焦距、相机位置和目标中心位置,计算出对应的世界坐标距离;沿着平面法向量移动半球中心距离为d。

图5为根据本发明的一种指定采集目标物体位置的方法中调节半径示意图,如图5所示,用户进入调节半径模式,在触屏上沿着相对靠近或远离的方向滑动两个手指;记录用户两个触点的初始距离和当前距离,记录原半球半径为,按照触点距离变化比值设置新的半球半径

本发明提供一种自动计算采集视点覆盖范围和自适应采样的方法,该方法包括:

将用户点击开始采集按钮时相机光心到目标物体中心的距离记录为初始距离

以半球半径为半径,以为球心,构造采集球面;不论本帧是否采集图像,都记录当前帧的对应的相机三维位置;根据前10帧的三维位置,计算当前视点移动速度;如果速度大于一定阈值,本帧不采集图像;如果速度小于一定阈值,则对于每一帧图像,计算当前相机光心位置连成的射线vp;计算出当前相机光心位置向相机主光轴方向发出的射线vf;分别计算出vp和vf的夹角,如果夹角大于给定阈值,则本帧不采集图像;如果夹角小于给定阈值,计算vp与球面的交点;计算所有已采集视点对应交点集合中的交点与的球面最短弧长距离;如果距离小于给定阈值,则认为该区域采集视点覆盖密度已经足够大,本帧不采集图像;如果距离大于给定阈值,则采集一帧图像,并将加入已采集视点交点集合,并记录下采集时的相机内外参数。

图6为根据本发明的一种可视化绘制已采集视点分布和密度的方法示意图,如图6所示,包括以下步骤:

按照一定间隔均匀等分方位角和仰角,分别记为,将球面上划分为网格状区域;将球面上每个小格区域记为;对记录的已采集视点集合中的所有视点,按其在球面上的方位角和仰角划入对应小格中;构造从采样数值0到小格最大允许采样数的颜色映射;对每个小格中视点数量根据颜色映射计算出对应的颜色;将小格内部绘制为颜色为的半透明三维多边形。

本发明实施例提供一种可视化绘制视线偏离目标物体中心点和视点偏离初始距离的方法,该方法包括:构造从偏离角0到180度范围数值到颜色的映射;计算当前主光轴方向射线vf与相机到目标中心连线vp夹角;按照颜色映射计算夹角对应的颜色值;将半球所有小格边沿绘制为颜色。构造从0到1数值范围到颜色的映射;计算当前视点位置到目标中心的距离;计算偏离初始距离绝对值与包围球半径的比值,将其映射为颜色;在屏幕边界绘制颜色为的半透明边框。

本领域普通技术人员可以理解:以上所述仅为本发明的优选实施例而已,并不用于限制本发明,尽管参照前述实施例对本发明进行了详细的说明,对于本领域的技术人员来说,其依然可以对前述各实施例记载的技术方案进行修改,或者对其中部分技术特征进行等同替换。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1