AR模型的获取方法、电子设备和可读存储介质与流程

文档序号:33152707发布日期:2023-02-03 23:10阅读:67来源:国知局
AR模型的获取方法、电子设备和可读存储介质与流程
ar模型的获取方法、电子设备和可读存储介质
技术领域
1.本发明实施例涉及计算机软件技术领域,特别涉及一种ar模型的获取方法、电子设备和可读存储介质。


背景技术:

2.在快递和货运行业中,物体的尺寸决定了一辆车能装载多少货物。比如,商家在发货时,假如货物的体积小于车上剩余的空间,则可以发拼车单,减轻费用。目前,可以利用手机的增强现实(augmented reality,简称:ar)功能对物体建模,进而获取物体的尺寸。现有的建模方案是通过采集的特征点构建一个三维的边界框,包裹货物,然后得到货物的长、宽、高。手机从货物的上表面检测到特征点,将ar模型的上限(即上表面)扩展到从货物的上表面检测到的特征点所在的高度,ar模型的下限(即底面)也是同理。但是由于底面不同于上表面,底面是与地面或者桌面贴合的,导致无法从底面上获取特征点,以致ar模型在高度方向上的下限无法与货物底面贴合。
3.为了解决这一问题,可以通过采集货物侧面上与底面接近的特征点来扩展ar模型的下限,然而,货物侧面与底面接近的特征点较难采集或者就是不存在。较难采集的原因是:货物侧面上与底面接近的区域贴近地面,用户需要俯身将摄像头对准这部分区域。而无法采集则是因为,特征点的采集是需要货物具有视觉差异特征的,假如货物侧面底部区域是光滑的,并且没有图案,那这部分就没有特征点。缺少货物底面部分的特征点会使得难以准确的识别货物的底面,导致获取的ar模型不准确,无法准确覆盖货物的底部区域,不能准确表示真实的货物。


技术实现要素:

4.本发明实施方式的目的在于提供一种ar模型的获取方法、电子设备和可读存储介质,使得可以准确的识别出目标对象的底面,获取准确的ar模型,以准确的表示真实的目标对象。
5.为解决上述技术问题,本发明的实施方式提供了一种ar模型的获取方法,包括:基于目标对象的特征点建立目标对象的初始ar模型;根据在所述目标对象所在空间中识别的若干平面,确定候选平面;其中,所述候选平面与所述初始ar模型的底面平行;在所述候选平面中,确定与所述初始ar模型的底面最接近的候选平面;根据所确定的候选平面与所述初始ar模型,获取ar模型;其中,所述所确定的候选平面为所述ar模型的底面所在平面。
6.本发明的实施方式还提供了一种电子设备,包括:至少一个处理器;以及,与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行上述的ar模型的获取方法。
7.本发明的实施方式还提供了一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时实现上述的ar模型的获取方法。
8.本发明实施方式中,基于目标对象的特征点建立初始ar模型,根据在目标对象所在空间中识别的若干平面,确定与初始ar模型的底面平行的候选平面;在候选平面中,确定与初始ar模型的底面最接近的候选平面;根据所确定的候选平面与初始ar模型,获取以所确定的候选平面为底面的ar模型。由于在目标对象所在空间中确定的候选平面与初始ar模型的底面平行,因此在候选平面中,确定的与初始ar模型的底面最接近的候选平面能较为准确的表示目标对象的底面真实所在的平面,从而使得根据所确定的候选平面与初始ar模型,获取的ar模型更准确,以使得获取的ar模型可以准确的表示真实的目标对象。
9.另外,所述根据在所述目标对象所在空间中识别的若干平面,确定候选平面,包括:对识别的若干平面进行拟合过滤,得到拟合过滤后的各平面;其中,所述拟合过滤包括:拼接满足预设拼接条件的平面;根据所述拟合过滤后的各平面,确定候选平面。通过对若干平面中满足预设拼接条件的平面进行拼接,可以缩小候选平面的选择范围,从拟合过滤后的各平面中可以快速确定候选平面,从而在一定程度上也可以缩小与初始ar模型的底面最接近的候选平面的选择范围,进而快速确定出与初始ar模型的底面最接近的候选平面,以快速获取到准确的ar模型。
10.另外,所述预设拼接条件包括:所述距离关系为所述若干平面之间在高度方向上的距离小于或等于第一预设阈值,所述位置关系为在所述水平方向上存在重叠区域。重叠区域和平面之间在高度方向上的距离的确定方式较为简单,因此可以降低对平面拼接的复杂度。同时,在高度方向上的距离小于或等于第一预设阈值且在水平方向上存在重叠区域的两个平面在空间中本身较为接近,拼接成一个平面并不会对后续的计算产生较大的影响。
11.另外,所述候选平面还满足预设的投影过滤条件,所述投影过滤条件包括:将所述初始ar模型的底面的边界点投影至所述候选平面后,所述底面的边界点均位于所述候选平面之内。候选平面还满足预设的投影过滤条件,有利于进一步缩小与初始ar模型的底面最接近的候选平面的选择范围,以快速获取到准确的ar模型,同时有利于提高得到的候选平面与目标对象的底面实际所在的水平位置的接近程度。
12.另外,所述候选平面还满足预设的投影过滤条件,所述投影过滤条件包括:将所述初始ar模型的底面的边界点投影至所述候选平面后,所述底面的边界点位于以预设比例放大后的候选平面内,设置以预设比例放大候选平面,适当扩大候选平面的范围,可以实现在避免实际应用中可能存在的误差的同时,提高确定出的候选平面的准确性。
13.另外,所述候选平面还满足预设的距离过滤条件,所述距离过滤条件包括:所述候选平面与所述初始ar模型的底面在高度方向上的距离小于或等于第二预设阈值,所述第二预设阈值与所述目标对象的尺寸正相关。候选平面还满足预设的距离过滤条件,有利于进一步缩小与初始ar模型的底面最接近的候选平面的选择范围,以快速获取到准确的ar模型,同时有利于提高得到的候选平面与目标对象的底面实际所在的高度位置的接近程度。第二预设阈值与目标对象的尺寸正相关,使得距离过滤条件可以适应不同尺寸的目标对象。
14.另外,所述根据在所述目标对象所在空间中识别的若干平面,确定候选平面,包括:若在所述目标对象所在空间中识别的若干平面不满足预设的投影过滤条件和/或预设的距离过滤条件,则继续在所述目标对象所在空间中识别若干平面,直到识别出满足所述
投影过滤条件和/或所述距离过滤条件的平面,将满足所述投影过滤条件和/或所述距离过滤条件的平面,确定为候选平面。通过迭代检测的方式,直到检测到满足投影过滤条件和/或距离过滤条件的候选平面,有利于在持续获取的过程中增加得到满足预设的投影过滤条件和/或预设的距离过滤条件的候选平面的可能性,从而准确获取ar模型。
附图说明
15.一个或多个实施例通过与之对应的附图中的图片进行示例性说明,这些示例性说明并不构成对实施例的限定。
16.图1是本发明的一个实施方式中提到的ar模型的获取方法的流程示意图;
17.图2是本发明的一个实施方式中提到的候选平面的数量为两个的示意图;
18.图3是本发明的一个实施方式中提到的初始ar模型与所确定的候选平面的位置关系的示意图;
19.图4是本发明的一个实施方式中提到的ar模型的示意图;
20.图5是本发明的另一个实施方式中提到的ar模型的获取方法的流程示意图;
21.图6是本发明的一个实施方式中提到的初始ar模型与若干平面之间的位置关系的示意图;
22.图7是本发明的一个实施方式中提到的平面p0和平面p2拼接成的一个新的平面p0’的示意图;
23.图8是本发明的又一个实施方式中提到的ar模型的获取方法的流程示意图;
24.图9是本发明的一个实施方式中提到的初始ar模型的底面投影至拟合过滤后的平面p3的示意图;
25.图10是本发明的一个实施方式中提到的初始ar模型的底面投影至拟合过滤后的平面p4的示意图;
26.图11是本发明的再一个实施方式中提到的ar模型的获取方法的流程示意图;
27.图12是本发明的一个实施方式中提到的电子设备的结构示意图。
具体实施方式
28.为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合附图对本发明的各实施方式进行详细的阐述。然而,本领域的普通技术人员可以理解,在本发明各实施方式中,为了使读者更好地理解本技术而提出了许多技术细节。但是,即使没有这些技术细节和基于以下各实施方式的种种变化和修改,也可以实现本技术所要求保护的技术方案。以下各个实施例的划分是为了描述方便,不应对本发明的具体实现方式构成任何限定,各个实施例在不矛盾的前提下可以相互结合相互引用。
29.本发明的实施方式涉及一种ar模型的获取方法,应用于电子设备,该电子设备可以为:手机、平板电脑、智能手表、智能手环等。本实施方式中ar模型的获取方法,可以准确的识别出目标对象的底面,从而获取准确的ar模型,以准确的表示真实的目标对象。下面对本实施方式的ar模型的获取方法的实现细节进行具体的说明,以下内容仅为方便理解提供的实现细节,并非实施本方案的必须。
30.本实施方式中的ar模型的获取方法的流程示意图可以参考图1,包括:
31.步骤101:基于目标对象的特征点建立目标对象的初始ar模型;
32.步骤102:根据在目标对象所在空间中识别的若干平面,确定候选平面;
33.步骤103:在候选平面中,确定与初始ar模型的底面最接近的候选平面;
34.步骤104:根据所确定的候选平面与初始ar模型,获取ar模型。
35.其中,步骤102中的候选平面与初始ar模型的底面平行。步骤104中所确定的候选平面为ar模型的底面所在平面,也可以理解为:步骤104中获取的ar模型以步骤103中所确定的候选平面为底面。
36.本实施方式中,由于在目标对象所在空间中确定的候选平面与初始ar模型的底面平行,因此在候选平面中,确定的与初始ar模型的底面最接近的候选平面能较为准确的表示目标对象的底面真实所在的平面,从而使得根据所确定的候选平面与初始ar模型,获取的ar模型更准确,以使得获取的ar模型可以准确的表示真实的目标对象。
37.在步骤101中,电子设备可以通过电子设备中的摄像头捕获目标对象的特征点,根据捕获到的特征点建立能够包含所捕获的特征点的三维立体模型,该三维立体模型可以作为目标对象的初始ar模型。比如,如果目标对象的外形为立方体,则三维立体模型可以大致理解为包含捕获的目标对象的所有特征点的最小立方体。其中,捕获的目标对象的特征点可以为视觉差异特征点,也就是说,特征点是基于目标对象的视觉差异特征采集得到的。初始ar模型可以理解为在现实世界中叠加的元素,该元素可以表现为立方体,比如,对于一个快递箱,该快递箱的初始ar模型可以理解为包含该快递箱的所有特征点的最小立方体。
38.在一个例子中,电子设备中可以设置有ar框架,ar框架是指提供ar技术服务的编程框架。如果电子设备支持ios系统,则该电子设备中设置的ar框架可以为arkit;如果电子设备支持android系统,则该电子设备中设置的ar框架可以为arcore。电子设备可以通过设置的ar框架捕获目标对象所在空间中的特征点,根据捕获的特征点建立目标对象的初始ar模型。
39.在一个例子中,捕获的目标对象的特征点可以包括:目标对象的顶面的特征点、目标对象的侧面的特征点和目标对象的底面的特征点,目标对象的顶面的特征点和侧面的特征点较容易采集,并且采集的也较为准确,因此,在一定程度上初始ar模型的顶面和侧面可以较为准确的表示目标对象的顶面和侧面。而目标对象的底面的特征点通常较难准确采集到,因此初始ar模型的底面可能难以准确表示目标对象的底面。本实施方式正是考虑到初始ar模型的底面可能难以准确表示目标对象的底面,因此,至少通过后续的步骤102至步骤104得到能够准确的表示目标对象的底面的ar模型。
40.在步骤102中,电子设备可以对目标对象所在空间进行扫描,得到若干帧扫描数据,然后,对每一帧的扫描数据进行平面识别,识别出若干平面。其中,每一帧的扫描数据可以包括:扫描一次目标对象所在空间,得到的特征点的三维坐标数据。电子设备可以根据特征点的三维坐标数据进行平面识别,确定特征点能否拟合成一个平面,从而得到目标对象所在空间中的若干平面,若干平面可以为有边界的平面。然后,根据识别出的若干平面,确定候选平面;其中,候选平面与初始ar模型的底面平行。比如,可以理解为:候选平面需要满足的条件包括:与初始ar模型的底面平行。
41.在一个例子中,电子设备中的ar框架可以集成用于进行平面识别的算法,从而电子设备可以通过ar框架获取目标对象所在空间的若干平面。
42.在一个例子中,识别出的若干平面可能为有边界的矩形、正方形、多边形、圆形等。
43.在一个例子中,目标对象放置在与水平面平行的地面或桌面上,即目标对象的底面可以视为水平面,初始ar模型的底面也可以视为水平面,则步骤102中确定的候选平面即为水平面。在具体实现中,电子设备可以根据对目标对象所在空间进行扫描得到的若干帧扫描数据,进行水平面检测,得到若干水平面,再根据若干水平面,确定候选平面。
44.在步骤103中,电子设备可以在候选平面中,确定与初始ar模型的底面最接近的候选平面。在一个例子中,电子设备可以计算每个候选平面与初始ar模型的底面在高度方向上的距离,然后将与初始ar模型的底面在高度方向上距离最近的候选平面确定为与初始ar模型的底面最接近的候选平面。比如,候选平面的数量为两个,如图2所示,假设根据在目标对象所在空间中识别的若干平面,确定的候选平面包括:平面o1’和平面o2’,可以在平面o1’和平面o2’中选择与初始ar模型的底面在高度方向上距离最近的一个平面,作为与初始ar模型的底面最接近的候选平面。通过图2可以看出,|o1 o1’|更小,即平面o1’为与初始ar模型的底面在高度方向上距离最近的一个平面,则可以根据平面o1’和初始ar模型,获取ar模型,ar模型以平面o1’为底面。
45.由于与初始ar模型的底面在高度方向上距离最近的候选平面,能够更加准确的评估目标对象的底面在现实空间的场景,从而有利于根据该与初始ar模型的底面在高度方向上距离最近的候选平面和初始ar模型,得到可以得到能够更加准确表示目标对象的ar模型。本示例中主要是考虑到,在目标对象所在的空间靠近阶梯的情况下,如果选择与初始ar模型的底面距离最远的候选平面,也就是在高度方向最低的平面,很可能把初始ar模型的底面扩展至实际放置目标对象的平面底下。因此,本示例中选择多个候选平面中,与初始ar模型的底面在高度方向上距离最近的候选平面,是相对稳妥的,能够更加准确的识别出目标对象的底面,以得到更加精准的ar模型。
46.在步骤104中,电子设备可以根据所确定的候选平面,将初始ar模型的底面扩展至该所确定的候选平面,得到ar模型,该ar模型的底面即为所确定的候选平面。
47.在一个例子中,初始ar模型与所确定的候选平面的位置关系的示意图可以参考图3,根据初始ar模型和所确定的候选平面获取的ar模型的示意图可以参考图4。ar模型的底面的中心点o1与所确定的候选平面的中心点o2重合。假设z0为初始ar模型的中心点o0在z轴(高度方向)上的坐标,z1为ar模型的中心点o0’
在z轴上的坐标,所确定的候选平面与初始ar模型的底面的距离为h,则存在如下关系:z1=z0-h/2;同时,假设初始ar模型原本在z轴方向的高度为h0,ar模型在z轴方向的高度为h1,则存在如下关系:h1=h0+h。因此,在候选平面中,确定与初始ar模型的底面最接近的候选平面后,根据所确定的候选平面和初始ar模型,获取ar模型可以理解为:将初始ar模型的高度向下增加h,同时将ar模型的中心点的高度更新为ar模型的高度的一半。
48.在一个例子中,ar模型用于对目标对象的尺寸进行识别。比如目标对象为货物,ar模型可以用于对货物的尺寸进行识别,具体可以识别出货物的长、宽、高,从而得到货物的体积。由于获取的ar模型能够较好的覆盖目标对象的底部区域,以准确的表示真实的目标对象,因此通过该ar模型识别目标对象的尺寸时,有利于提高识别的尺寸的准确性。在具体实现中,ar模型还可能用于识别目标对象的种类或者实现其他功能,本实施方式对此不作限定。
49.在一个实施方式中,ar模型的获取方法的流程示意图可以参考图5,包括:
50.步骤501:基于目标对象的特征点建立目标对象的初始ar模型;
51.步骤502:对识别的若干平面进行拟合过滤,得到拟合过滤后的各平面;
52.步骤503:根据拟合过滤后的各平面,确定候选平面;
53.步骤504:在候选平面中,确定与初始ar模型的底面最接近的候选平面;
54.步骤505:根据所确定的候选平面与初始ar模型,获取ar模型。
55.其中,步骤501与上述实施方式中的步骤101大致相同,步骤504至步骤505与上述实施方式中的步骤103至步骤104大致相同,为避免重复在此不再赘述。下面主要对步骤502和步骤503进行具体的说明:
56.在步骤502中,拟合过滤包括:拼接满足预设拼接条件的平面。也就是说,步骤502中,电子设备可以对识别的若干平面中满足预设拼接条件的平面进行拼接,得到拼接后的平面。其中,预设拼接条件可以根据实际需要进行设置,旨在筛选出若干平面中近似等同的平面。本实施例中若干平面均为有边界的平面。可以理解的是,识别的若干平面中可能存在和其他平面均不满足预设拼接条件的独立平面,即该独立平面不会和其他任何一个平面进行拼接。如果识别的若干平面中有的可以进行拼接,有的不能进行拼接,则拟合过滤后的平面可以包括:拼接后的平面和独立平面。通过对若干平面进行拟合过滤,有利于缩小候选平面的选择范围,从而有利于快速确定出候选平面。
57.在一个例子中,电子设备可以根据识别的若干平面之间在高度方向上的距离关系和在水平方向上的位置关系,对识别的若干平面进行拟合过滤,得到拟合过滤后的各平面。具体而言,电子设备可以确定若干平面中相互两个平面之间在高度方向上的距离关系以及在水平方向上的位置关系,并根据两个平面之间的距离关系和位置关系,确定两个平面是否满足预设拼接条件。比如,两个平面在高度方向上的距离接近,在水平方向上的位置也较接近,可以认为两个平面满足预设拼接条件。其中,如何衡量两个平面在高度方向上的距离接近以及在水平方向上的位置较接近,可以由本领域技术人员根据实际需要进行设置,本示例对此不做具体限定。
58.在一个例子中,预设拼接条件包括:距离关系为若干平面之间在高度方向上的距离小于或等于第一预设阈值,位置关系为在水平方向上存在重叠区域。也就是说,如果两个平面在水平方向上存在重叠区域,且这两个平面之间在高度方向上的距离小于或等于第一预设阈值,则可以将这两个平面拼接成一个平面。其中,两个平面在水平方向上存在重叠区域也可以理解为:两个平面在同一平面上的投影存在重叠区域,还可以理解为:两个平面中的其中一个平面可以至少部分投影到另一个平面上。上述的第一预设阈值可以根据实际需要进行设置,旨在衡量两个平面之间在高度方向上的距离是否接近。本示例中,可以通过判断两个平面之间在高度方向上的距离是否小于或等于第一预设阈值来衡量两个平面在高度方向上的距离是否接近,通过判断两个平面在水平方向上是否存在重叠区域来衡量两个平面在水平方向上的位置是否接近。如果两个平面之间在高度方向上的距离小于或等于第一预设阈值,可以确定这两个平面在高度方向上的距离较接近;如果两个平面之间在水平方向上存在重叠区域,可以确定这两个平面在水平方向上的位置较接近。为便于对本示例中的预设拼接条件的理解,下面通过图6和图7进行进一步的解释说明:
59.图6为初始ar模型与若干平面之间的位置关系的示意图,假设步骤502中识别得到
的若干平面包括如图6中所示的:平面p0、平面p1、平面p2。通过图6可以看出:平面p0和平面p2在水平方向上存在重叠区域,即平面p0和平面p2在水平面上的投影存在重叠区域,或者说,平面p0可以部分投影在平面p2上,即如果将平面p0投影在平面p2上,则平面p2上存在平面p0的投影。假设,平面p0和平面p2之间的距离小于第一预设阈值,则可以认为平面p0和平面p2满足预设拼接条件,进而可以将平面p0和平面p2拼接成一个平面。平面p0和平面p2拼接成的一个新的平面p0’,p0’的示意图可以参考图7。平面p0’的高度可以和平面p0相同,也可以和平面p2相同,还可以位于平面p0和平面p2之间。通过图6也可以看出,平面p1和平面p0在水平方向上不存在重叠区域,平面p2和平面p1在水平方向上也不存在重叠区域,则可以认为平面p1和平面p0不满足预设拼接条件,平面p2和平面p1不满足预设拼接条件,即平面p1不能和任何一个平面拼接,则对若干平面中的平面p1进行拟合过滤后得到的拟合过滤后的平面即为平面p1本身。由此可见,本示例中,对若干平面(平面p0、平面p1、平面p2)进行拟合过滤,得到拟合过滤后的各平面包括:平面p0’、平面p1。
60.在步骤503中,电子设备可以根据拟合过滤后的各平面,确定候选平面。比如,参考图6和图7,拟合过滤后的各平面包括:平面p0’、平面p1,则可以根据平面p0’和平面p1,确定候选平面。可选的,可以将平面p0’和平面p1均作为候选平面。
61.在步骤504中,电子设备可以在候选平面中,确定与初始ar模型的底面最接近的候选平面。参考图6和图7,假设候选平面包括平面p0’和平面p1,则可以在平面p0’和平面p1中确定与初始ar模型的底面最接近的候选平面。具体的,可以分别计算平面p0’和平面p1与初始ar模型的底面在高度方向上的距离,然后选择一个与初始ar模型的底面在高度方向上的距离最近的一个平面作为与初始ar模型的底面最接近的候选平面。
62.本实施方式中,通过对若干平面进行拟合过滤,拼接满足预设拼接条件的平面,可以缩小候选平面的选择范围(比如,参考图6和7,如果不进行拼接,候选平面的选择范围包括平面p0、平面p1、平面p2这3个平面,如果进行拼接,候选平面的选择范围包括平面p0’、平面p1这2个平面),从拟合过滤后的各平面中可以快速确定候选平面,从而在一定程度上也可以缩小与初始ar模型的底面最接近的候选平面的选择范围,进而快速确定出与初始ar模型的底面最接近的候选平面,以快速获取到准确的ar模型。而且,预设拼接条件包括:距离关系为若干平面之间在高度方向上的距离小于或等于第一预设阈值,位置关系为在水平方向上存在重叠区域时,重叠区域和平面之间在高度方向上的距离的确定方式较为简单,因此还可以降低对平面拼接的复杂度。同时,在高度方向上的距离小于或等于第一预设阈值且在水平方向上存在重叠区域的两个平面在空间中本身较为接近,拼接成一个平面并不会对后续的计算产生较大的影响。
63.在一个实施方式中,ar模型的获取方法的流程示意图可以参考图8,包括:
64.步骤801:基于目标对象的特征点建立目标对象的初始ar模型;
65.步骤802:对识别的若干平面进行拟合过滤,得到拟合过滤后的各平面;
66.步骤803:对拟合过滤后的各平面进行投影过滤和/或距离过滤,得到投影过滤的结果和/或距离过滤的结果;
67.步骤804:根据投影过滤的结果和/或距离过滤的结果,确定候选平面;
68.步骤805:在候选平面中,确定与初始ar模型的底面最接近的候选平面;
69.步骤806:根据所确定的候选平面与初始ar模型,获取ar模型。
70.其中,步骤801至步骤802与上述实施方式中步骤501至步骤502大致相同,步骤805至步骤806与上述实施方式中步骤504至步骤505大致相同,为避免重复,在此不再赘述。下面主要对步骤803和步骤804进行具体的说明:
71.在一个例子中,步骤803可以为对拟合过滤后的各平面进行投影过滤,得到投影过滤的结果,对应的步骤804即为根据投影过滤的结果,确定候选平面。其中,对拟合过滤后的各平面进行投影过滤可以为:将初始ar模型的底面的边界点投影至拟合过滤后的各平面,得到投影过滤的结果;其中,投影过滤的结果可以包括:ar模型的底面的边界点在拟合过滤后的平面上的投影均位于拟合过滤后的平面内、ar模型的底面的边界点在拟合过滤后的平面上的投影不位于拟合过滤后的平面内。如果投影过滤的结果为:ar模型的底面的边界点在拟合过滤后的平面上的投影均位于拟合过滤后的平面内,则该拟合过滤后的平面可以被确定为候选平面。也可以理解为,本示例中候选平面还满足预设的投影过滤条件,投影过滤条件包括:将初始ar模型的底面的边界点投影至候选平面后,底面的边界点均位于候选平面之内。
72.比如,可以参考图9,初始ar模型的底面投影至拟合过滤后的平面p3上,初始ar模型的底面的边界点在平面p3上的投影e1、e2、e3、e4均在平面p3内,则可以将平面p3确定为候选平面。
73.在一个例子中,步骤803的投影过滤的结果可以包括:ar模型的底面的边界点在拟合过滤后的平面上的投影位于以预设比例放大后的拟合过滤后的平面内、ar模型的底面的边界点在拟合过滤后的平面上的投影不位于以预设比例放大后的拟合过滤后的平面内。如果投影过滤的结果为:ar模型的底面的边界点在拟合过滤后的平面上的投影位于以预设比例放大后的拟合过滤后的平面内,则该拟合过滤后的平面可以被确定为候选平面。也可以理解为,本示例中候选平面还满足预设的投影过滤条件,预设的投影过滤条件包括:将初始ar模型的底面的边界点投影至候选平面后,底面的边界点位于以预设比例放大后的候选平面内。其中,预设比例可以根据实际需要进行设置,旨在将有边界的拟合过滤后的平面放大一些,又不至于放大的过大,然而本示例中对预设比例的具体大小不作限制。预设比例可以为对平面的边长的放大比例,也可以为对目标平面的面积的放大比例。
74.比如,可以参考图10,初始ar模型的底面投影至拟合过滤后的平面p4上,初始ar模型的底面的边界点在平面p4上的投影e1、e2、e4均在平面p4内,e3本身不在平面p4内,但距离平面p4的边缘很近。将平面p4以预设比例放大后,得到平面p4’,通过图10可以看出,e3位于平面p4’内,此种情况也可以将平面p4作为候选平面中的一个平面。设置以预设比例放大平面主要是考虑到之前的步骤中的识别的平面以及平面拟合过滤中可能存在的误差,适当扩大平面的范围,可以实现在避免实际应用中可能存在的误差的同时,提高确定出的候选平面的准确性。
75.在步骤805中,电子设备可以在满足预设的投影过滤条件的候选平面中进一步筛选,得到与初始ar模型的底面最接近的候选平面。比如,可以在多个候选平面中选择一个与初始ar模型的底面在高度方向上的距离最近的一个平面作为与初始ar模型的底面最接近的候选平面。通过将初始ar模型分别投影至拟合过滤后的各平面,以对拟合过滤后的各平面进一步进行投影过滤,得到候选平面,有利于进一步缩小与初始ar模型的底面最接近的候选平面的选择范围,有利于提高得到的候选平面与目标对象实际所在的水平位置的接近
程度。同时,容许初始ar模型的底面的边界点在候选平面上的投影可以位于以预设比例放大后的候选平面内,还有利于避免实际应用中可能存在的误差。
76.在一个例子中,步骤803可以为对拟合过滤后的各平面进行距离过滤,得到距离过滤的结果,对应的步骤804即为根据距离过滤的结果,确定候选平面。其中,对拟合过滤后的各平面进行距离过滤可以为:分别计算每个拟合过滤后的平面与初始ar模型的底面在高度方向上的距离,然后根据计算的距离,在拟合过滤后的各平面中筛选出与初始ar模型的底面在高度方向上的距离小于或等于第二预设阈值的平面;其中,第二预设阈值与目标对象的尺寸正相关,比如,目标对象的高度越高,第二预设阈值可以越大,目标对象的高度越低,第二预设阈值可以越小,第二预设阈值的大小可以在满足与目标对象的尺寸正相关的基础上,根据实际需要进行设置。距离过滤的结果可以包括:拟合过滤后的平面与初始ar模型的底面在高度方向上的距离小于或等于第二预设阈值、拟合过滤后的平面与初始ar模型的底面在高度方向上的距离大于第二预设阈值。如果距离过滤的结果为:拟合过滤后的平面与初始ar模型的底面在高度方向上的距离小于或等于第二预设阈值,则可以将该拟合过滤后的平面确定为候选平面。也可以理解为,本示例中候选平面还满足预设的距离过滤条件,距离过滤条件包括:候选平面与初始ar模型的底面在高度方向上的距离小于或等于第二预设阈值,第二预设阈值与目标对象的尺寸正相关。第二预设阈值与目标对象的尺寸正相关,使得对拟合过滤后的各平面进行距离过滤时可以适应不同尺寸的目标对象。
77.通过对拟合过滤后的各平面进一步进行距离过滤,得到候选平面,有利于进一步缩小与初始ar模型的底面最接近的候选平面的选择范围,有利于提高得到的候选平面与目标对象的底面实际所在的高度位置的接近程度,且满足距离过滤条件的候选平面最终被确定为与初始ar模型的底面最接近的候选平面的可能性较大,因此,可以快速得到与初始ar模型的底面最接近的候选平面,以加快获取ar模型的速度。
78.在一个例子中,步骤803可以为对拟合过滤后的各平面进行投影过滤和距离过滤,得到投影过滤的结果和距离过滤的结果,对应的步骤804即为根据投影过滤的结果和距离过滤的结果,确定候选平面。也就是说,该示例中候选平面同时满足预设的投影过滤条件和预设的距离过滤条件。在具体实现中,可以对拟合过滤后的各平面先进行投影过滤,得到满足投影过滤条件的平面,再对满足投影过滤条件的平面进行距离过滤,从而得到同时满足投影过滤条件和距离过滤条件的平面。或者,可以先对拟合过滤后的各平面进行距离过滤,得到满足距离过滤条件的平面,再对满足距离过滤条件的平面进行投影过滤,从而得到同时满足投影过滤条件和距离过滤条件的候选平面。本示例中,通过对拟合过滤后的各平面同时进行投影过滤和距离过滤,有利于极大的缩小与初始ar模型的底面最接近的候选平面的选择范围,且同时满足距离过滤条件和投影过滤条件的候选平面最终被确定为与初始ar模型的底面最接近的候选平面的可能性较大,因此,可以快速且更准确的得到与初始ar模型的底面最接近的候选平面,以加快获取准确的ar模型的速度。
79.在一个例子中,步骤805中可以在候选平面中,将与初始ar模型的底面在高度方向上距离最近的候选平面确定为与初始ar模型的底面最接近的候选平面。然而在具体实现中,并不以此为限,比如:可以根据候选平面的投影过滤的结果和距离过滤的结果分别对应的权重,确定每个候选平面对应的总权重,将总权重最大的候选平面确定为与初始ar模型的底面最接近的候选平面。其中,投影过滤的结果和距离过滤的结果分别对应的权重可以
根据实际需要进行设置。比如,候选平面对应的投影过滤的结果可以包括:ar模型的底面的边界点在候选平面上的投影均位于候选平面内(结果1)、ar模型的底面的边界点在候选平面上的投影位于以预设比例放大后的候选平面内(结果2)。距离过滤的结果可以包括:候选平面与初始ar模型的底面在高度方向上的距离小于第二预设阈值(结果3)、候选平面与初始ar模型的底面在高度方向上的距离等于第二预设阈值(结果4)。投影过滤的结果和距离过滤的结果分别对应的权重从高到低比如可以为:结果1、结果3、结果2、结果4。然而在具体实现中,权重的设置高低并不以此为限。
80.需要说明的是,在具体实现中,也可以不进行拟合过滤,对识别的若干平面直接进行投影过滤和/或距离过滤,根据若干平面的投影过滤的结果和/或距离过滤的结果,确定候选平面。候选平面为若干平面中满足距离过滤条件和/或投影过滤条件的平面。
81.在一个实施方式中,ar模型的获取方法的流程示意图可以参考图11,包括:
82.步骤1101:基于目标对象的特征点建立目标对象的初始ar模型;
83.步骤1102:确定在目标对象所在空间中识别的若干平面,是否存在满足预设的投影过滤条件和/或预设的距离过滤条件的候选平面;如果是,则执行步骤1103,否则执行步骤1105;
84.步骤1103:在候选平面中,确定与初始ar模型的底面最接近的候选平面;
85.步骤1104:根据所确定的候选平面与初始ar模型,获取ar模型;
86.步骤1105:继续在目标对象所在空间中识别若干平面,直到识别出满足投影过滤条件和/或距离过滤条件的平面,将满足投影过滤条件和/或距离过滤条件的平面,确定为候选平面。
87.其中,步骤1101与上述实施方式中的步骤101大致相同,为避免重复,此处不再赘述。
88.在步骤1102中,可以分别判断识别的若干平面是否满足预设的投影过滤条件和/或预设的距离过滤条件,如果存在满足预设的投影过滤条件和/或预设的距离过滤条件的平面,则可以将满足预设的投影过滤条件和/或预设的距离过滤条件的平面确定为候选平面。在具体实现中,可以对识别的若干平面进行投影过滤和/或距离过滤,得到投影过滤的结果和/或距离过滤的结果,根据投影过滤的结果和/或距离过滤的结果确定是否存在候选平面,如果存在候选平面,则执行步骤1103,如果识别的若干平面中不存在满足预设的投影过滤条件和/或预设的距离过滤条件的候选平面,则可以进入步骤1105。
89.在一个例子中,步骤1102中,也可以先对在目标对象所在空间中识别的若干平面进行拟合过滤,在拟合过滤后的平面中,确定是否存在满足预设的投影过滤条件和/或预设的距离过滤条件的候选平面。
90.在步骤1105中,电子设备可以继续在目标对象所在空间中识别若干平面,直到识别出满足投影过滤条件和/或距离过滤条件的平面,将满足投影过滤条件和/或距离过滤条件的平面,确定为候选平面。比如,可以通过移动或转动电子设备,使得电子设备可以基于与目标对象的不同距离或不同角度继续扫描目标对象所在的空间,从而根据继续扫描的扫描数据重新获取目标对象所在空间的若干平面,再根据重新获取的若干平面确定是否存在满足预设的投影过滤条件和/或预设的距离过滤条件的候选平面。在具体实现中,也无需刻意去移动或转动电子设备,利用电子设备中设置的ar框架,使得电子设备能够随着扫描时
间的增加扫描到更多、更准确的特征点,从而可以获取到更多、更准确的平面,有利于在持续获取的过程中增加得到满足预设的投影过滤条件和/或预设的距离过滤条件的候选平面的可能性,从而准确获取ar模型。
91.在一个例子中,步骤1105中可以先对继续在目标对象所在空间中识别的若干平面进行拟合过滤,得到继续识别的若干平面中拟合过滤后的各平面;其中,拟合过滤包括:拼接满足预设拼接条件的平面;然后,根据继续识别的若干平面中拟合过滤后的各平面,识别出满足投影过滤条件和/或距离过滤条件的平面。其中,拟合过滤的方式在上述实施方式中已经进行过说明,为避免重复在此不再赘述。
92.本实施方式中,通过迭代检测的方式,直到检测到满足投影过滤条件和/或距离过滤条件的候选平面,有利于在持续获取的过程中增加得到满足预设的投影过滤条件和/或预设的距离过滤条件的候选平面的可能性,从而准确获取ar模型。
93.需要说明的是,本实施方式中的上述各示例均为为方便理解进行的举例说明,并不对本发明的技术方案构成限定。
94.上面各种方法的步骤划分,只是为了描述清楚,实现时可以合并为一个步骤或者对某些步骤进行拆分,分解为多个步骤,只要包括相同的逻辑关系,都在本专利的保护范围内;对算法中或者流程中添加无关紧要的修改或者引入无关紧要的设计,但不改变其算法和流程的核心设计都在该专利的保护范围内。
95.本发明的一个实施方式中还涉及一种电子设备,如图12,包括至少一个处理器1201;以及,与至少一个处理器1201通信连接的存储器1202;其中,存储器1202存储有可被至少一个处理器1201执行的指令,指令被至少一个处理器1201执行,以使至少一个处理器1201能够执行上述的ar模型的获取方法。
96.其中,存储器1202和处理器1201采用总线方式连接,总线可以包括任意数量的互联的总线和桥,总线将一个或多个处理器1201和存储器1202的各种电路连接在一起。总线还可以将诸如外围设备、稳压器和功率管理电路等之类的各种其他电路连接在一起,这些都是本领域所公知的,因此,本文不再对其进行进一步描述。总线接口在总线和收发机之间提供接口。收发机可以是一个元件,也可以是多个元件,比如多个接收器和发送器,提供用于在传输介质上与各种其他装置通信的单元。经处理器1201处理的数据通过天线在无线介质上进行传输,进一步,天线还接收数据并将数据传送给处理器1201。
97.处理器1201负责管理总线和通常的处理,还可以提供各种功能,包括定时,外围接口,电压调节、电源管理以及其他控制功能。而存储器1202可以被用于存储处理器1201在执行操作时所使用的数据。
98.本发明的一个实施方式中还涉及一种计算机可读存储介质,存储有计算机程序。计算机程序被处理器执行时实现上述方法实施例。
99.即,本领域技术人员可以理解,实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本技术各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。
100.本领域的普通技术人员可以理解,上述各实施方式是实现本发明的具体实施例,而在实际应用中,可以在形式上和细节上对其作各种改变,而不偏离本发明的精神和范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1