一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种扫描设备、相机的位姿确定方法、装置及电子设备与流程

2021-11-26 23:47:00 来源:中国专利 TAG:


1.本技术涉及机器视觉技术领域,特别是涉及一种扫描设备、相机的位姿确定方法、装置及电子设备。


背景技术:

2.在一些应用场景中,需要对现实场景建立适合计算机表示和处理的三维虚拟模型,该过程下文称三维重建。示例性的,机器人室内导航、三维家具展示、增强现实(augmented reality,ar)游戏、三维室内场景监控和分析等应用场景中需要进行三维重建。
3.相关技术中,可以移动相机,对空间进行全方位的扫描,获取场景的相关信息,如颜色(rgb)信息和深度(depth)信息,并求解每一帧时刻的相机位姿;根据每一帧的深度信息和相机内参,可以获得各物体相对于该时刻相机的相对位置,而再根据相机在该时刻的位姿,就可以获得各物体相对于一个统一世界坐标系(即预设虚拟三维空间的坐标系)的绝对位置,从而在预设虚拟三维空间中构建与现实场景对应的三维虚拟场景。
4.但是,当需要进行三维重建的现实场景较大时,扫描得到的场景信息数据量较大,对大量场景信息的处理将导致三维重建的效率较低,并且可能影响到相机位姿确定的精确度,因此相关技术中,难以实现对空间尺度较大的场景的三维重建。


技术实现要素:

5.本技术实施例的至少能够提供一种扫描设备、相机的位姿确定方法、装置及电子设备,以实现减少扫描现实场景时产生的冗余数据,以实现大规模场景的三维重建。具体技术方案如下:
6.在本技术实施例的第一方面,提供了一种扫描设备,所述扫描设备包括可移动底盘、支架、水平杆、相机;
7.所述支架固定于所述可移动底盘;
8.所述水平杆的一端安装在所述支架;
9.所述相机连接在所示水平杆的另一端,并且所述水平杆包括固定组件,所述固定组件用于限制所述相机的方向角的变化;
10.所述可移动底盘用于带动所述相机。
11.在一种可能的实施例中,所述支架设置有垂直可伸缩结构,并且所述垂直可伸缩结构可以在垂直方向伸缩,以调整所述水平杆与所述可移动底盘的上表面之间的距离;
12.并且所述可伸缩结构包括垂直阻尼组件,所述垂直阻尼组件用于限制所述垂直可伸缩结构伸缩。
13.在一种可能的实施例中,所述支架设置有水平伸缩结构,并且所述水平伸缩结构可以在水平方向伸缩,以调整所述相机与所述支架之间的距离;
14.并且所述可伸缩结构包括水平阻尼组件,所述水平阻尼组件用于限制所述水平可
伸缩结构伸缩。
15.在一种可能的实施例中,所述可移动底盘包括转盘,所述支架固定于所述转盘,所述转盘用于带动所述支架以垂直方向为轴进行旋转。
16.在一种可能的实施例中,所述可移动底盘(110),具体用于带动所述相机(140)沿预设轨迹以预设视角拍摄指定场景。
17.在本技术实施例的第二方面,提供了一种相机的位姿确定方法,所述方法包括:
18.获取所述相机在采集到目标图像帧之前的多个历史时间节点所处的多个位姿;
19.按照所述扫描设备中所述相机的预设轨迹,拟合所述多个位姿,得到约束条件;
20.以所述相机采集到所述目标图像帧时所处的位置满足所述约束条件为先验条件,按照预设位姿确定算法,确定所述相机采集到所述目标图像帧时所处的位姿。
21.在一种可能的实施例中,所述按照所述扫描设备中所述相机的预设轨迹,拟合所述多个位姿,得到约束条件,包括:
22.对所述多个位姿中的位置进行平面拟合,得到拟合平面的平面方程,作为约束条件。
23.在一种可能的实施例中,所述按照所述扫描设备中所述相机的预设轨迹,拟合所述多个位姿,得到约束条件,包括:
24.计算所述多个位姿所表示的朝向角的均值,将所述均值的表达式作为约束条件。
25.在一种可能的实施例中,在所述以所述相机采集到所述目标图像帧时所处的位姿满足所述约束条件为先验条件,按照预设位姿确定算法,确定所述相机采集到所述目标图像帧时所处的位姿之后,所述方法还包括:
26.基于所述相机采集到所述目标图像帧时所处的位姿,对所述扫描设备拍摄的场景进行三维重建,得到所述场景的三维模型。
27.在本技术实施例的第三方面,提供了一种相机的位姿确定装置,所述装置包括:
28.历史位姿确定模块,用于获取所述相机在采集到目标图像帧之前的多个历史时间节点所处的多个位姿;
29.轨迹拟合模块,用于按照所述扫描设备中所述相机的预设轨迹,拟合所述多个位姿,得到约束条件;
30.位姿求解模块,用于以所述相机采集到所述目标图像帧时所处的位置满足所述多个位姿所满足的约束条件为先验条件,按照预设位姿确定算法,确定所述相机采集到所述目标图像帧时所处的位姿。
31.处理器,用于运行可执行代码以通过所述历史位姿确定模块、所述轨迹拟合模块以及所述位姿求解模块实现如前述第二方面任一所述的方法。
32.在一种可能的实施例中,所述轨迹拟合模块,具体用于对所述多个位姿中的位置进行平面拟合,得到拟合平面的平面方程,作为约束条件。
33.在一种可能的实施例中,所述轨迹拟合模块,具体用于计算所述多个位姿所表示的朝向角的均值,将所述均值的表达式作为约束条件。
34.在一种可能的实施例中,所述装置还包括重建模块,用于在所述以所述相机采集到所述目标图像帧时所处的位姿满足所述约束条件为先验条件,按照预设位姿确定算法,确定所述相机采集到所述目标图像帧时所处的位姿之后,基于所述相机采集到所述目标图
像帧时所处的位姿,对所述扫描设备拍摄的场景进行三维重建,得到所述场景的三维模型。
35.在本技术实施例的第四方面,提供了一种电子设备,包括:
36.存储器,用于存放计算机程序;
37.处理器,用于执行存储器上所存放的程序时,实现上述第二方面任一所述的方法步骤。
38.在本技术实施例的第五方面,提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述第二方面任一所述的方法步骤。
39.本技术实施例提供的扫描设备、相机的位姿确定方法、装置及电子设备,可以通过支架将相机支撑于一定高度,并通过水平杆使得相机向远离可移动底盘的方向外探一定距离,并且通过固定组件可以使得相机在扫描过程中方向角不会发生变化,因此相机的视野不会受支架和可移动底盘的影响,能够以固定视角拍摄进行拍摄,并且通过可移动底盘带动相机,以使得相机能够以固定的预设视角拍摄指定场景,由于该扫描设备扫描得到的图像数据只包括预设视角拍摄到的图像数据,因此三维重建时需要处理的图像数据较少,对于一些不关心预设视角以外的其他可视角度的应用场景,例如视频监控领域可能不关心除俯视角以外的其他视角,选用该实施例可以实现减少扫描现实场景时产生的冗余数据,以实现大规模场景的三维重建。当然,实施本技术的任一产品或方法并不一定需要同时达到以上所述的所有优点。
附图说明
40.为了更清楚地说明本技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
41.图1为本技术实施例提供的扫描设备的一种结构示意图;
42.图2为本技术实施例提供的扫描设备的另一种结构示意图;
43.图3为本技术实施例提供的三维场景重建方法的一种流程示意图;
44.图4a为本技术实施例提供的扫描设备的扫描轨迹的一种示意图;
45.图4b为本技术实施例提供的扫描设备的扫描轨迹的另一种示意图;
46.图5为本技术实施例提供的位姿确定方法的一种流程示意图;
47.图6为本技术实施例里提供的三维场景重建方法的另一种流程示意图;
48.图7a为本技术实施例提供的位姿确定装置的一种结构示意图;
49.图7b为本技术实施例提供的位姿确定装置的另一种结构示意图;
50.图8为本技术实施例提供的电子设备的一种结构示意图。
具体实施方式
51.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他
实施例,都属于本技术保护的范围。
52.参见图1,图1所示为本技术实施例扫描设备的一种结构示意图,可以包括可移动底盘110、支架120、水平杆130、相机140;
53.支架120固定于可移动底盘110;
54.水平杆130的一端安装在支架120;
55.相机140连接在水平杆130的另一端,并且水平杆包括固定组件,固定组件用于限制相机的方向角的变化;
56.可移动底盘110用于带动相机140。
57.选用该实施例,可以通过支架将相机支撑于一定高度,并通过水平杆使得相机向远离可移动底盘的方向外探一定距离,并且通过固定组件可以使得相机在扫描过程中方向角不会发生变化,因此相机的视野不会受支架和可移动底盘的影响,能够以固定视角进行拍摄,并且通过可移动底盘带动相机,以使得相机能够以固定的预设视角拍摄指定场景,由于该扫描设备扫描得到的图像数据只包括预设视角拍摄到的图像数据,因此三维重建时需要处理的图像数据较少,对于一些不关心预设视角以外的其他可视角度的应用场景,例如视频监控领域可能不关心除俯视角以外的其他视角,选用该实施例可以实现减少扫描现实场景时产生的冗余数据,以实现大规模场景的三维重建。
58.在一种可能的实施例中,可移动底盘可以设置有移动组件,以可移动底盘110上固定有支架120的一面为可移动底盘110的上表面,移动组件可以设置于可移动底盘110的下表面,也可以设置于可移动底盘110的侧面。移动组件可以是任一能够使得可移动底盘移动的组件,例如移动组件可以是一组轮子,该一组轮子可以带动可移动底盘进行平动。
59.支架120和水平杆130之间可以根据实际需求的不同,选用不同的方式连接,示例性的在一种可能的实施例中,水平杆130可以是通过环形连接件安装在支架120上的。在其他可能的实施例中,水平杆130也可以是通过其他方式安装在支架120上的,如焊接、螺纹结构等,本实施例对此不做限制。
60.支架120根据应用场景的不同,也可以是不同类型的支架,示例性的,支架120可以是一垂直杆。支架120用于支撑水平杆130,以使得水平杆130距离可移动底盘的上表面预设垂直距离,预设垂直距离可以根据实际应用场景进行设置,示例性的,假设指定场景中最高的障碍物的顶端与可移动底盘的上表面之间的垂直距离为l,则可以将预设垂直距离设置的大于l,以使得扫描设备在移动时,水平杆130不会与障碍物碰撞。预设垂直距离也可以是根据其他因素设计的,如用户经验、加工难度等,本实施例对此不做限制。
61.在一种可能的实施例中,支架设置有垂直可伸缩结构,该垂直可伸缩结构可以在垂直方向伸张或收缩,以调整水平杆与可移动底盘的上表面之间的距离。并且,该垂直可伸缩结构包括垂直阻尼组件,垂直阻尼组件用于阻止垂直可伸缩结构伸缩,垂直阻尼组件对垂直可伸缩结构伸缩的阻止效果可以根据实际需求终止,例如,垂直阻尼组件可以是可拆卸的,示例性的,当垂直可伸缩结构安装有垂直阻尼组件时,受垂直阻尼组件的限制无法在垂直方向伸缩,当垂直可伸缩结构未安装垂直阻尼组件时,垂直可伸缩组件可以在垂直方向伸缩。又例如,垂直阻尼组件可以是能够在工作状态和非工作状态切换的,当垂直阻尼组件处于工作状态时,垂直可伸缩结构受垂直阻尼组件的限制无法在垂直方向伸缩,当垂直阻尼组件处于非工作状态时,垂直可伸缩组件可以在垂直方向伸缩。
62.选用该实施例,可以使得扫描设备在扫描时,水平杆与可移动底盘的上表面之间的距离可以保持不变,即相机的高度在扫描过程中可以保持不变,同时可以使得预设垂直距离可以根据实际需求灵活调整,从而使得扫描设备能够实现在多种不同的扫描场景中进行拍摄。
63.在一种可能的实施例中,可移动底盘110具体用于带动相机140沿预设轨迹以预设角度拍摄指定场景。
64.水平杆130可以设置于支架120的任一方位,在一种可能的实施例中,可移动底盘包括转盘,支架固定于转盘,该转盘用于带动支架以垂直方向为轴进行旋转。示例性的,该转盘可以是可移动底盘的上表面,该转盘连接有电机,该转盘可以在电机的带动下旋转。
65.选用该实施例,可以在不改变支架的位置的情况下,通过改变相机相对支架的方位,使得相机能够对多个不同空间位置进行拍摄,使得扫描设备可以更灵活的对指定场景进行扫描。
66.水平杆130的长度可以根据实际需求进行设置,可以理解的是,假设设置于水平杆上的相机,距离支架的水平距离为预设水平距离,则理论上水平杆的长度不小于预设水平距离。预设水平距离也可以根据实际应用场景进行设置。
67.在一种可能的实施例中,水平杆设置有水平可伸缩结构,该水平可伸缩结构可以在水平方向伸张或收缩,以调整相机与支架之间的距离。并且,该水平可伸缩结构包括水平阻尼组件,水平阻尼组件对水平可伸缩结构伸缩的阻止效果可以根据实际需求终止,例如,水平阻尼组件可以是可拆卸的,示例性的,当水平可伸缩结构安装有水平阻尼组件时,受水平阻尼组件的限制无法在水平方向伸缩,当水平可伸缩结构未安装水平阻尼组件时,水平可伸缩组件可以在水平方向伸缩。又例如,水平阻尼组件可以是能够在工作状态和非工作状态切换的,当水平阻尼组件处于工作状态时,水平可伸缩结构受水平阻尼组件的限制无法在水平方向伸缩,当水平阻尼组件处于非工作状态时,水平可伸缩组件可以在水平方向伸缩。
68.水平阻尼组件可以用于在扫描设备进行扫描时,阻止水平可伸缩结构伸缩,以使得扫描设备在扫描时,相机与支架之间的距离不变,选用该实施例,可以更好的控制扫描设备在扫描过程相机的运动轨迹。
69.预设视角可以根据实际需求进行设置,示例性的,在一种可能的实施例中,预设视角可以是俯视角,在其他可能的实施例中,预设视角也可以是其他视角,本实施例对此不做限制。
70.在一种可能的实施例中,固定组件可以是能够在工作状态和非工作状态进行切换,当固定组件处于工作状态时,固定组件能够限制相机方向角的变化,当固定组件处于非工作状态时,相机的方向角能够根据实际需求进行调整。在其他可能的实施例中,固定组件也可以是始终处于工作状态,并且无法切换至非工作状态的,本实施例对此不做限制。
71.相机连接在水平杆的另一端,可以是指相机设置于水平杆远离支架的一端的端面处,也可以指相机设置于在满足与支架之间的距离大于预设距离的条件下,设置于水平杆两端面之间。水平杆上可以设置有相机卡槽,相机通过固定于该相机卡槽,以实现设置于水平杆。相机卡槽的方向角可以是可以调整的,也可以是不可以调整的,当相机卡槽的方向角不可以调整时,相机卡槽可以作为固定组件,以限制固定于相机卡槽的相机的方向角。当相
机卡槽的方向角可以调整时,固定组件可以是用于限制相机卡槽的方向角的变化,以限制相机的方向角的变化。
72.参见图2,图2所示为本技术实施例提供的扫描设备的另一种结构示意图,可以包括:
73.可移动底盘110、移动组件111、转盘112、支架120、垂直可伸缩结构121、水平杆130、水平可伸缩结构131、相机卡槽132、相机140。垂直可伸缩结构121中包括垂直阻尼组件,水平可伸缩结构131中包括水平阻尼组件。
74.关于各个元件的说明,可以参见前述相关描述,在此不再赘述。选用该实施例,可以使得扫描设备能够更加灵活的扫描指定场景。
75.为了更清楚的对本技术实施例提供的扫描设备进行说明,可以参见图3,图3所示为本技术实施例提供的利用该扫描设备进行的三维场景重建方法的流程示意图,可以包括:
76.s301,获取相机的内参。
77.相机的内参包括焦距、主点、畸变系数等。这些内参可以是从设备中读取到的,也可以是通过标定的方式确定得到的,本实施例对此不做限制。
78.s302,控制扫描设备运动,以带动相机按照预设轨迹俯拍指定场景。
79.扫描设备可以是电动的,也可以是人工移动的,示例性的,在一种可能的实施例中,扫描设备中可以设置有电机和控制器,控制器用于控制电机,以驱动扫描设备中的移动组件和转盘,从而使得扫描设备运动。预设轨迹根据应用场景的不同,可以不同,可以参见图4a和图4b,图4a和图4b所示为两种不同的预设轨迹示意图,其中图4a是通过平移的方式控制相机俯拍指定场景,图4b是通过平移加转动的方式控制相机俯拍指定场景。图4a和图4b均为俯视角下相机的预设轨迹。
80.如果扫描设备的支架中包括垂直可伸缩结构,则在扫描设备拍摄指定场景的过程中,可以通过该垂直可伸缩结构调整水平杆的高度,以规避障碍物。同理,如果扫描设备的水平杆中包括水平可伸缩结构,则在扫描设备拍摄指定场景的过程中,可以通过该水平可伸缩结构,调整相机与支架间的距离,以使得相机能够更好的对指定场景进行拍摄。并且,相机的方向角可以在一定范围内进行调整,该范围根据应用场景的不同可以不同。
81.s303,相机采集指定场景的rgbd数据。
82.可以是相机采集指定场景的图像帧,图像帧中包括各个像素点的红色分量(r)、绿色分量(g)以及蓝色分量(b),并通过视差测距原理计算得到各个像素点的深度分量(d),深度分量用于表示该像素点所表示的空间点距离相机的距离。可以理解的是,图3仅是本技术实施例提供的三维场景重建方法的一种流程示意图,在其他可能的实施例中,s301也可以是在s302或s303之后执行的,还可以是与s302或s303并行执行,也可以是与s302和/或s303交替执行的,本实施例对此不做限制。
83.s304,确定相机的位姿。
84.可以是确定相机采集到各个rgbd数据时的位姿,即确定相机采集到各个图像帧时所处的位姿。
85.s305,基于确定得到的位姿,以及采集到的rgbd数据,进行三维重建。
86.三维模型重建的原理可以参见前述背景技术的相关描述,在此不再赘述。
87.可以理解的是,如果无法准确确定相机的位姿,则三维重建得到的三维虚拟场景与现实场景可能存在一定差异。而相关技术中,相机位姿确定的结果往往对初值以及所选用的算法较为敏感,因此确定得到的结果的精度较差,并且鲁棒性较差,例如kinectfusion(一种三维重建算法)算法,在较大空间尺度的场景中确定位姿可能存在较大误差,可能导致三维重建失败。
88.基于此,本技术实施例提供了一种相机的位姿确定方法,用于确定前述任一扫描设备中相机所处的位姿。可以参见图5,图5所示为本技术实施例提供的相机的位姿确定方法,可以包括:
89.s501,获取相机在采集到目标图像帧之前的多个历史时间节点所处的多个位姿。
90.s502,按照扫描设备中相机的预设轨迹,拟合多个位姿,得到多个位姿所满足的约束条件。
91.s503,以相机采集到目标图像帧时所处的位姿满足该约束条件为先验条件,按照预设位姿确定算法,确定相机采集到的目标图像帧时所处的位姿。
92.选用该实施例,可以利用扫描设备中相机在扫描过程中高度保持不变的特点,通过拟合历史位姿得到能够反映出相机运动时所符合的运动规律的约束条件,以该约束条件为先验条件,在确定相机位姿的过程中可以有效排除不符合相机运动规律的可能结果,因此得到的结果更加准确。即选用该实施例,可以有效提高位姿确定的鲁棒性和准确性。
93.其中,在s501中,多个历史时间节点的数量可以根据应用场景的不同而不同,在一种可能的实施例中,多个历史时间节点为与相机采集到目标图像帧的时间节点相差小于预设时间间隔的时间节点。相机在历史时间节点上的位姿可以使用本技术实施例提供的相机的位姿确定方法确定得到的,也可以是使用除本技术实施例提供的相机的位姿确定方法以外的其他相机位姿确定方法确定得到的,本实施例对此不做限制。
94.在s502中,如前述分析,在利用本技术实施例提供的扫描设备对指定场景进行扫描的过程中,可以近似认为相机的朝向不变,并且相机在空间中的位置始终处于同一个平面。因此下文为描述方便,以(x,y,z,φ)的形式对先验条件进行描述,其中x为水平面上的第一方向上的分量,y为水平面上的第二方向上的分量,其中第二方向与第一方向正交,z为水平面法向上的分量,φ为朝向角。
95.作为先验条件的约束条件可以包括一个条件,也可以包括多个条件。并且,每个条件可以是通过不同拟合方式拟合多个位姿得到的。示例性的,在一种可能的实施例中,拟合多个位姿的方式可以是对多个位姿的位置进行平面拟合,得到拟合平面的平面方程,作为约束条件。拟合平面的平面方程可以是以ax by cz d=0的形式表示的,其中,a、b、c、d为拟合得到的平面方程系数。例如,拟合得到的平面方程可以是z=10(即a=b=0,c=1,d=-10)。
96.在另一种可能的实施例中,也可以是计算多个位姿所表示的朝向角的均值,将均值的表达式作为约束条件。在又一种可能的实施例中,可以是对多个位姿的位置进行平面拟合,得到拟合平面的平面方程,并计算多个位姿所表示的朝向角的均值,将该平面的平面方程以及该均值作为约束条件。例如,假设均值为φ
ave
,则可以将表达式f(α,β,γ)=φ
ave
作为约束条件,其中,(α,β,γ)是以欧拉角表示的相机位姿的旋转分量,方程f(
·
)为α、β、γ到朝向角φ的映射方程。
97.可以理解的是,前述的扫描设备中,在可移动底盘的带动下,在扫描时相机理论上在一个平面内运动,因此相机所处的位姿理论上满足拟合多个位姿得到的平面方程。并且,在扫描时,相机的朝向角可以认为近似不变,因此相机所处的位姿理论上满足拟合多个位姿所表示的朝向角得到的均值表达式。朝向角的均值的表达式,根据应用场景的不同,可以是向量表达式,也可以是标量表达式,本实施例对此不做限制。
98.在s503中,可以是以相机采集到目标图像帧时所处的位姿满足约束条件为先验条件,分别计算多个可能的候选位姿为相机采集到目标图像帧时所处的位姿的可能性,选取其中可能性最高的候选位姿,作为相机采集到目标图像帧时所处的位姿。
99.示例性的,假设相机采集到目标图像帧时所处的位姿为(x,y,z,α,β,γ),一共有3个候选位姿,分别为(x1,y1,z1,α1,β1,γ1)、(x2,y2,z2,α2,β2,γ2)、(x3,y3,z3,α3,β3,γ3),并且约束条件为z=10&&f(α,β,γ)=φ
ave
,则可以是分别针对i=1、2、3,计算以下先验概率:
100.p
i
=p(x=x
i
&&y=y
i
&&z=z
i
&&α=α
i
&&β=β
i
&&γ=γ
i
|z=10&&f(α,β,γ)=φ
ave
)
101.其中,p
i
即为第i个候选位姿为相机采集到目标图像帧时所处的位姿的可能性。该先验概率根据应用场景的不同,也可以是采用不同的方式计算得到的,示例性的,可以采用slam(simultaneous localization and mapping,即时定位与地图构建)算法,例如orb-slam(一种基于orb特征的slam算法)算法,计算得到。
102.参见图6,图6所示为本技术实施例提供的三维场景重建方法的另一种流程示意图,可以包括:
103.s601,获取相机在采集到目标图像帧之前的多个历史时间节点所处的多个位姿。
104.该步骤与前述s501相同,可以参见前述关于s501的相关描述,在此不再赘述。
105.s602,按照扫描设备中相机的预设轨迹,拟合多个位姿,得到约束条件。
106.该步骤与前述s502相同,可以参见前述关于s502的相关描述,在此不再赘述。
107.s603,以相机采集到目标图像帧时所处的位姿满足该约束条件为先验条件,按照预设位姿确定算法,确定相机采集到的目标图像帧时所处的位姿。
108.该步骤与前述s503相同,可以参见前述关于s503的相关描述,在此不再赘述。
109.s604,基于相机采集到目标图像帧时所处的位姿,对扫描设备拍摄的场景进行三维重建,得到场景的三维模型。
110.根据应用场景的不同,可以是通过不同的方式进行三维重建的,本实施例对此不做限制。例如,可以是利用tsdf(truncated signed distance function,,截断符号距离函数)算法进行三维重建的,也可以是利用泊松重建(poisson reconstruction)的方式进行三维重建。
111.参见图7a,图7a所示为本技术实施例提供的相机的位姿确定装置的一种结构示意图,可以包括:
112.历史位姿确定模块701,用于获取所述相机在采集到目标图像帧之前的多个历史时间节点所处的多个位姿;
113.轨迹拟合模块702,用于按照所述扫描设备中所述相机的预设轨迹,拟合所述多个位姿,得到约束条件;
114.位姿求解模块703,用于以所述相机采集到所述目标图像帧时所处的位置满足所
述多个位姿所满足的约束条件为先验条件,按照预设位姿确定算法,确定所述相机采集到所述目标图像帧时所处的位姿;
115.并且该装置中还包括处理器,处理器用于运行可执行代码以通过历史位姿确定模块701、轨迹拟合模块702以及位姿求解模块703实现前述任一所述的相机的位姿确定方法。历史位姿确定模块701、轨迹拟合模块702以及位姿求解模块703中的任一模块可以是设置于处理器内部的,也可以是相对处理器独立存在的,本实施例对此不做限制。
116.在一种可能的实现方式中,所述轨迹拟合模块702,具体用于对所述多个位姿中的位置进行平面拟合,得到拟合平面的平面方程,作为约束条件。
117.在一种可能的实现方式中,所述轨迹拟合模块702,具体用于计算所述多个位姿所表示的朝向角的均值,将所述均值的表达式作为约束条件。
118.在一种可能的实现方式中,如图7b所示,所述装置还包括重建模块704,用于在所述以所述相机采集到所述目标图像帧时所处的位姿满足所述约束条件为先验条件,按照预设位姿确定算法,确定所述相机采集到所述目标图像帧时所处的位姿之后,基于所述相机采集到所述目标图像帧时所处的位姿,对所述扫描设备拍摄的场景进行三维重建,得到所述场景的三维模型。
119.本技术实施例还提供了一种电子设备,如图8所示,包括:
120.存储器801,用于存放计算机程序;
121.处理器802,用于执行存储器801上所存放的程序时,实现如下步骤:
122.获取所述相机在采集到目标图像帧之前的多个历史时间节点所处的多个位姿;
123.按照所述扫描设备中所述相机的预设轨迹,拟合所述多个位姿,得到多个位姿所满足的约束条件;
124.以所述相机采集到所述目标图像帧时所处的位置满足所述多个位姿所满足的约束条件为先验条件,按照预设位姿确定算法,确定所述相机采集到所述目标图像帧时所处的位姿。
125.在一种可能的实现方式中,所述按照所述扫描设备中所述相机的预设轨迹,拟合所述多个位姿,得到约束条件,包括:
126.对所述多个位姿中的位置进行平面拟合,得到拟合平面的平面方程,作为约束条件。
127.在一种可能的实现方式中,所述按照所述扫描设备中所述相机的预设轨迹,拟合所述多个位姿,得到约束条件,包括:
128.计算所述多个位姿所表示的朝向角的均值,将所述均值的表达式作为约束条件。
129.在一种可能的实现方式中,在所述以所述相机采集到所述目标图像帧时所处的位姿满足所述约束条件为先验条件,按照预设位姿确定算法,确定所述相机采集到所述目标图像帧时所处的位姿之后,所述方法还包括:
130.基于所述相机采集到所述目标图像帧时所处的位姿,对所述扫描设备拍摄的场景进行三维重建,得到所述场景的三维模型。
131.上述电子设备提到的存储器可以包括随机存取存储器(random access memory,ram),也可以包括非易失性存储器(non-volatile memory,nvm),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
132.上述的处理器可以是通用处理器,包括中央处理器(central processing unit,cpu)、网络处理器(network processor,np)等;还可以是数字信号处理器(digital signal processing,dsp)、专用集成电路(application specific integrated circuit,asic)、现场可编程门阵列(field-programmable gate array,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
133.在本技术提供的又一实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述实施例中任一相机的位姿确定方法。
134.在本技术提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例中任一相机的位姿确定方法。
135.在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本技术实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(dsl))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,dvd)、或者半导体介质(例如固态硬盘solid state disk(ssd))等。
136.需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
137.本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置、电子设备、计算机可读存储介质以及计算机程序产品实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
138.以上所述仅为本技术的较佳实施例而已,并非用于限定本技术的保护范围。凡在本技术的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本技术的保护范围内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献