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

一种点云生成方法、装置及自动驾驶装置与流程

2022-11-23 21:38:05 来源:中国专利 TAG:


1.本发明涉及3d视觉技术领域,特别是涉及一种点云生成方法、装置及自动驾驶装置。


背景技术:

2.点云可以应用在3d建模、3d识别及自动导航等领域。但由于目标对象自遮挡,传感器分辨率,物体材质,环境等因素的影响,因此,采集设备针对目标对象采集的初始点云不可避免的存在缺失、低分辨率,噪点等问题。那么在得到目标对象的初始点云后,通常需要基于初始点云进行点云生成处理,目的是对初始点云进行点云修复、点云去噪、点云上采样等,从而保证目标对象的点云的准确性及完整性。
3.相关技术中,在点云生成的过程中点云数据是从点云生成网络的低层网络往高层网络流传,其中,离最终生成点云较近的子网络为高层网络,离最终生成点云较远的子网络为低层网络。
4.但是在相关技术中,点云生成网络信息仅仅由低层网络向高层网络流动,低层网络由于缺乏高层语义信息的有效指导,只能关注低层语义信息的学习,导致低层特征数据的语义表达能力不足,最终影响生成点云的质量,即,生成点云的准确性和完整性不高。


技术实现要素:

5.本发明实施例的目的在于提供一种点云生成方法、装置及自动驾驶装置,用以提升点云的准确性和完整性。具体技术方案如下:
6.第一方面,本发明实施例提供了一种点云生成方法,应用于电子设备,所述方法包括:
7.获取针对目标对象的初始点云的点云数据;
8.将所述初始点云的点云数据输入预先训练完成的点云生成网络,得到所述点云生成网络的输出结果;其中,所述点云生成网络包括至少一个具有反馈功能的反馈子网络,每一反馈子网络用于利用获取到的输入内容进行点云特征学习,得到输出内容,在符合预定的输出内容反馈条件时,将当前的输出内容作为反馈内容,反馈至对应的指定子网络以使得对应的指定子网络继续基于反馈内容进行点云特征学习,以及若存在下一子网络则在符合预定的输出内容传递条件时,将当前的输出内容,输入下一子网络;其中,任一反馈子网络对应的指定子网络包括:该反馈子网络和/或位于该反馈子网络之前的子网络;
9.利用所述输出结果,确定针对所述目标对象的目标点云。
10.可选地,在符合预定的输出内容反馈条件时,将当前的输出内容作为反馈内容,反馈至对应的指定子网络以使得对应的指定子网络继续基于反馈内容进行点云特征学习,包括:
11.在针对输出内容的已反馈次数小于预设次数阈值时,将当前的输出内容作为反馈内容,反馈至对应的指定子网络以使得对应的指定子网络继续基于反馈内容进行点云特征
学习;
12.所述在符合预定的输出内容传递条件时,将当前的输出内容,输入下一子网络,包括:
13.在该反馈子网络未向下一子网络传递过当前的输出内容时,将当前的输出内容,输入下一子网络。
14.可选地,在符合预定的输出内容反馈条件时,将当前的输出内容作为反馈内容,反馈至对应的指定子网络以使得对应的指定子网络继续基于反馈内容进行点云特征学习,包括:
15.在针对输出内容的已反馈次数小于预设次数阈值时,将当前的输出内容作为反馈内容,反馈至对应的指定子网络以使得对应的指定子网络继续基于反馈内容进行点云特征学习;
16.所述在符合预定的输出内容传递条件时,将当前的输出内容,输入下一子网络,包括:
17.在针对输出内容的已反馈次数小于预设次数阈值时,将当前的输出内容,输入下一子网络。
18.可选地,所述点云生成网络在训练过程中所生成的输出结果包括每一时间步对应的输出结果;所述时间步为按照时间顺序划分的处理阶段;
19.每一时间步对应的输出结果为所述点云生成网络中的各个子网络分别利用在该时间步下所对应的数据内容进行深度点云特征学习,所生成的输出结果;其中,各个子网络中的任一所述指定子网络,在该时间步下所对应的数据内容至少包括该指定子网络对应的内容传输端的最新的输出内容,以及该指定子网络对应的反馈子网络在该时间步的上一时间步的反馈内容,各个子网络中的其他子网络对应的数据内容至少包括对应的内容传输端的最新的输出内容;其中,所述点云生成网络中的任一子网络所对应的内容传输端位于该子网络之前,且用于向该子网络进行内容传输;
20.所述利用所述输出结果,确定针对所述目标对象的目标点云,包括:
21.利用各个时间步中的时间最晚的时间步所对应的输出结果,确定针对所述目标对象的目标点云。
22.可选地,将所述初始点云的点云数据输入预先训练完成的点云生成网络,得到所述点云生成网络的输出结果之前,所述方法还包括:
23.获取所述点云生成网络在所述电子设备运行时的待利用时间步,作为目标时间步;其中,所述待利用时间步为各个时间步中的任一个,且所述待利用时间步为基于所述电子设备的设备种类和/或所述电子设备的可用的算力情况所设定的;
24.将所述预设次数阈值的取值更新为所述目标时间步在各个时间步中的次序值减1。
25.可选地,基于所述电子设备的设备种类设定待利用时间步的方式,包括:
26.若所述电子设备为第一设备种类的设备,确定所述待利用时间步为各个时间步中的时间最早的时间步;
27.若所述电子设备为第二设备种类的设备,确定所述待利用时间步为各个时间步中除时间最早的时间步和时间最晚的时间步以外的任一时间步;
28.若所述电子设备为第三设备种类的设备,确定所述待利用时间步为各个时间步中的时间最晚的时间步;
29.其中,所述第一设备种类的设备、第二设备种类的设备和第三设备种类的设备的算力逐步增大。
30.可选地,所述点云生成网络在训练完成后,不同时间步下所述点云生成网络所具有的网络参数的参数值均相同。
31.可选地,所述任一反馈子网络对应的指定子网络具体用于每次接收到反馈内容时,对当前接收到的反馈内容以及对应的内容传输端的最新的输出内容进行融合处理,并利用融合处理所得到的融合内容进行点云特征学习;其中,所述点云生成网络中的任一子网络所对应的内容传输端位于该子网络之前,且用于向该子网络进行内容传输。
32.可选地,所述对当前接收到的反馈内容以及对应的内容传输端的最新的输出内容进行融合处理,包括:
33.针对对应的内容传输端的最新的输出内容中每一点,在所述当前接收到的反馈内容的各个点中,确定该点对应的至少一个邻域点,利用至少一个邻域点的特征数据和该点的特征数据,进行指定的特征融合处理,得到该点的融合数据。
34.可选地,所述对当前接收到的反馈内容以及对应的内容传输端的最新的输出内容进行融合处理,包括:
35.针对对应的内容传输端的最新的输出内容中的每一点,计算所述当前接收到的反馈内容中的各个点对于该点的注意力权重,得到该点对应的相关性权重矩阵;
36.针对对应的内容传输端的最新的输出内容中的每一点,按照该点对应的相关性权重矩阵,对所述当前接收到的反馈内容中的各个点的特征数据进行加权,得到该点对应的待利用特征数据,将该点的特征数据与该点对应的待利用特征数据进行融合,得到该点的融合数据。
37.可选地,针对对应的内容传输端的最新的输出内容中每一点,在所述当前接收到的反馈内容的各个点中,确定该点对应的至少一个邻域点,包括:
38.针对对应的内容传输端的最新的输出内容中每一点,利用k近邻算法knn,从所述当前接收到的反馈内容的各个点中,确定与该点距离最近的k个点,得到该点对应的至少一个邻域点;
39.或者,
40.针对对应的内容传输端的最新的输出内容中每一点,利用该点对应的相关性权重矩阵,确定该点与所述当前接收到的反馈内容的各个点的注意力权重;基于所确定出的注意力权重的大小,从所述当前接收到的反馈内容的各个点中,确定该点对应的至少一个邻域点;其中,该点对应的相关性权重矩阵用于表征该点与当前接收到的反馈内容中的各个点的注意力权重。
41.可选地,所述点云生成网络为根据距离损失或对抗损失进行网络训练所得到的;其中,所述距离损失包括倒角距离cd损失或般土距离emd损失。
42.第二方面,本发明实施例提供了一种点云生成装置,应用于电子设备,所述装置包括:
43.获取模块,用于获取针对目标对象的初始点云的点云数据;
44.输入模块,用于将所述初始点云的点云数据输入预先训练完成的点云生成网络,得到所述点云生成网络的输出结果;其中,所述点云生成网络包括至少一个具有反馈功能的反馈子网络,每一反馈子网络用于利用获取到的输入内容进行点云特征学习,得到输出内容,在符合预定的输出内容反馈条件时,将当前的输出内容作为反馈内容,反馈至对应的指定子网络以使得对应的指定子网络继续基于反馈内容进行点云特征学习,以及若存在下一子网络则在符合预定的输出内容传递条件时,将当前的输出内容,输入下一子网络;其中,任一反馈子网络对应的指定子网络包括:该反馈子网络和/或位于该反馈子网络之前的子网络;
45.确定模块,用于利用所述输出结果,确定针对所述目标对象的目标点云。
46.第三方面,本发明实施例提供了一种自动驾驶装置,包括:采集模块以及处理模块;
47.采集模块,用于生成针对目标对象的初始点云;
48.处理模块,用于按照上述任一点云生成方法,利用针对目标对象的初始点云的点云数据,生成针对所述目标对象的目标点云。
49.可选地,所述处理模块,还用于在接收到针对所述目标对象的避障任务或导航任务时,基于所述目标对象的目标点云,执行针对所述目标对象的避障任务或导航任务。
50.可选地,所述采集模块包括深度相机;
51.所述深度相机用于针对目标对象进行图像采集,利用所采集到的图像,构建针对所述目标对象的初始点云;
52.所述自动驾驶装置还包括行进部件,根据所述目标对象的目标点云,驱动所述自动驾驶装置行进。
53.可选地,所述采集模块包括激光雷达;
54.所述激光雷达用于针对所述目标对象进行雷达数据采集,利用采集到的雷达数据,构建针对所述目标对象的初始点云;
55.所述自动驾驶装置还包括行进部件,根据所述目标对象的目标点云,驱动所述自动驾驶装置行进。
56.本发明实施例提供的方案,获取针对目标对象的初始点云的点云数据,并向训练完成的点云生成网络输入点云数据,得到点云生成网络的输出结果,其中,点云生成网络包括至少一个反馈子网络,反馈子网络对点云数据进行点云特征学习,得到输出内容,在符合预定的输出内容反馈条件时,将当前的输出内容作为反馈内容,反馈至对应的指定子网络以使得对应的指定子网络继续以反馈内容作为输入内容进行点云特征学习,以及若存在下一子网络则在符合预定的输出内容传递条件时,将当前的输出内容,输入下一子网络;然后,利用输出结果,确定针对目标对象的目标点云。可见,本方案可以将高层网络学习得到的高层特征数据反馈给低层网络,以提升低层特征数据的语义表达能力,即,可以将高层网络学习到高层语义信息传递到低层网络,参与低层特征数据的学习,从而辅助低层特征数据进行学习,使得低层特征数据的语义表达能力得到提升,最终提高生成点云的质量,即,可以提升生成点云的准确性及完整性。另外,与相关技术中的通过大量堆叠网络模块来提升点云的准确度和完整性而言,本方案在提升点云的准确度和完整性时,通过反馈机制,这样可以实现轻量级的点云生成网络,从而最终改善整体网络性能。
57.当然,实施本发明的任一产品或方法并不一定需要同时达到以上所述的所有优点。
附图说明
58.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的实施例。
59.图1为本发明实施例提供的一种点云生成方法的流程示意图;
60.图2为本发明实施例提供的另一种点云生成方法的流程示意图;
61.图3为本发明实施例提供的一种点云生成网络的工作原理示意图;
62.图4为本发明实施例提供的另一种点云生成网络的工作原理示意图;
63.图5为本发明实施例提供的一种点云生成网络的生成效果示意图;
64.图6为本发明实施例提供的一种点云生成装置的结构示意图;
65.图7为本发明实施例提供的一种自动驾驶装置的结构示意图;
66.图8为本发明实施例提供的一种电子设备的结构示意图。
具体实施方式
67.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员基于本发明所获得的所有其他实施例,都属于本发明保护的范围。
68.下面,首先对本发明实施例中所涉及的专业术语进行介绍:
69.点云补全/点云修复:一种将原始点云缺失部分进行重建,复原的技术方法,其中,原始点云也可以称为初始点云。
70.点云去噪:一种将原始点云中的噪点进行辨别并过滤,生成新的无噪点的干净点云,其中,噪点也可以称为野点。
71.点云上采样:对稀疏的原始点云进行上采样,生成目标对象的细粒度表示。
72.点云生成网络的低层网络和高层网络:在点云生成的过程中点云数据的特征是从点云生成网络的低层网络往高层网络流传,其中,低层网络为距离输出结果相对较远的网络层,高层网络为距离输出结果相对较近的网络层。通常来说,低层网络更关注于提取原始输入数据的局部语义的提取,高层网络更关注于目标的全局,抽象语义信息提取。
73.为了提升点云的准确性和完整性,本发明实施例提供了一种点云生成方法、装置及自动驾驶装置。
74.下面首先对发明实施例提供的一种点云生成方法进行介绍。
75.本发明实施例所提供的一种点云生成方法,可以应用于电子设备。在具体应用中,该电子设备可以为终端设备或服务器,本发明实施例对于电子设备的具体形态并不做限定。
76.具体的,该点云生成方法的执行主体可以为一种点云生成装置。示例性的,当该点
云生成方法应用于终端设备时,该点云生成装置可以为运行于终端设备中的、用于进行点云生成的客户端。示例性的,当该点云生成方法应用于服务器时,该点云生成装置可以为运行于服务器中的计算机程序,该计算机程序可以用于进行点云生成。
77.其中,本发明实施例提供的一种点云生成方法,可以包括:
78.获取针对目标对象的初始点云的点云数据;
79.将所述初始点云的点云数据输入预先训练完成的点云生成网络,得到所述点云生成网络的输出结果;其中,所述点云生成网络包括至少一个具有反馈功能的反馈子网络,每一反馈子网络用于利用获取到的输入内容进行点云特征学习,得到输出内容,在符合预定的输出内容反馈条件时,将当前的输出内容作为反馈内容,反馈至对应的指定子网络以使得对应的指定子网络继续基于反馈内容进行点云特征学习,以及若存在下一子网络则在符合预定的输出内容传递条件时,将当前的输出内容,输入下一子网络;其中,任一反馈子网络对应的指定子网络包括:该反馈子网络和/或位于该反馈子网络之前的子网络;
80.利用所述输出结果,确定针对所述目标对象的目标点云。
81.本发明实施例提供的方案,获取针对目标对象的初始点云的点云数据,并向训练完成的点云生成网络输入点云数据,得到点云生成网络的输出结果,其中,点云生成网络包括至少一个反馈子网络,反馈子网络对点云数据进行点云特征学习,得到输出内容,在符合预定的输出内容反馈条件时,将当前的输出内容作为反馈内容,反馈至对应的指定子网络以使得对应的指定子网络继续以反馈内容作为输入内容进行点云特征学习,以及若存在下一子网络则在符合预定的输出内容传递条件时,将当前的输出内容,输入下一子网络;然后,利用输出结果,确定针对目标对象的目标点云。可见,本方案可以将高层网络学习得到的高层特征数据反馈给低层网络,以提升低层特征数据的语义表达能力,即,可以将高层网络学习到高层语义信息传递到低层网络,参与低层特征数据的学习,从而辅助低层特征数据进行学习,使得低层特征数据的语义表达能力得到提升,最终提高生成点云的质量,即,可以提升生成点云的准确性及完整性。另外,与相关技术中的通过大量堆叠网络模块来提升点云的准确度和完整性而言,本方案在提升点云的准确度和完整性时,通过反馈机制,这样可以实现轻量级的点云生成网络,从而最终改善整体网络性能。
82.下面结合附图,对本发明实施例提供的一种点云生成方法进行介绍。
83.如图1所示,本发明实施例提供的一种点云生成方法,可以包括如下步骤:
84.s101,获取针对目标对象的初始点云的点云数据;
85.其中,上述目标对象可以是任一需要生成点云的对象,初始点云可以由采集设备对目标对象进行数据采集所得,其中,采集设备可以为激光雷达、深度相机等设备。为了方便理解,以搭载深度相机的扫地机器人为例对目标对象和初始点云的生成进行说明:深度相机需要采集扫地机器人周围的障碍物来进行避障工作,那么,障碍物可以为目标对象,由深度相机拍摄的深度图,可以转换得到针对障碍物的初始点云。需要说明的是,上述的初始点云的点云数据可以为初始点云中的各个点的指定信息,例如:坐标信息、法向、颜色信息等;并且,目标对象可以根据具体的使用场景进行改变,本发明实施例对此不做限定。
86.可以理解的是,初始点云通常是由采集设备进行采集的,由于目标对象自遮挡,传感器分辨率(即采集设备的分辨率),物体材质,环境等因素的影响,初始点云一般都不可避免的存在点云缺失、低分辨率,噪点等问题,示例性的,由3d采集设备采集到的人脸,由于传
感器的分辨率不足,出现了点云缺失及低分辨率的问题。那么,通过采集设备直接采集到的初始点云一般无法直接使用的,即直接应用于到下游的视觉任务,或影响下游任务的处理效果。因此,需要点云生成方法生成准确性高及完整性高的点云,从而提升下游视觉任务的性能。其中,点云生成的目的在于将针对目标对象的初始点云进行点云修复、点云去噪、点云上采样等,从而保证目标对象的点云的准确性及完整性。
87.另外,需要强调的是,本发明实施例对于针对目标对象的初始点云的采集过程并不做限定,任何一种可以采集初始点云的方式,均可以应用于本发明实施例。并且,本发明实施例并不对初始点云的点云数据的具体表征形态进行限定。
88.s102,将所述初始点云的点云数据输入预先训练完成的点云生成网络,得到所述点云生成网络的输出结果;其中,所述点云生成网络包括至少一个具有反馈功能的反馈子网络,每一反馈子网络用于利用获取到的输入内容进行点云特征学习,得到输出内容,在符合预定的输出内容反馈条件时,将当前的输出内容作为反馈内容,反馈至对应的指定子网络以使得对应的指定子网络继续基于反馈内容进行点云特征学习,以及若存在下一子网络则在符合预定的输出内容传递条件时,将当前的输出内容,输入下一子网络;其中,任一反馈子网络对应的指定子网络包括:该反馈子网络和/或位于该反馈子网络之前的子网络;
89.其中,在将初始点云的点云数据输入点云生成网络时,若初始点云的点云数据符合点云生成网络的输入要求,那么,可以直接将初始点云的点云数据输入至点云生成网络;若初始点云的点云数据不符合点云生成网络的输入要求,那么,可以按照点云生成网络的输入要求对初始点云的点云数据进行预定处理,再输入至点云生成网络,例如,电子设备可以对输入点云生成网络的点云数据进行坐标归一化等操作,如坐标缩放平移至-1到1之间,使得其符合网络输入的要求,相应的,在得到输出结果后,可以再对输出结果进行逆归一化操作,以进行数据还原,例如将坐标还原回原坐标系下的坐标值。
90.其中,上述点云生成网络包括至少一个具有反馈功能的反馈子网络,以通过反馈机制,可以提升低层特征数据的语义表达能力,即,低层网络学习效果得到提升,从而提升点云的准确性和完整性。其中,低层特征数据为低层网络学习得到的,高层特征数据为高层网络学习得到的。需要说明的是,点云生成网络中可以仅仅包括至少一个反馈子网络;示例性的,若存在多个反馈子网络时,各个反馈子网络可以相互串联。当然,除了包含至少一个反馈子网络,在点云生成网络中还可以包括前馈子网络。示例性的,若点云生成网络中存在反馈子网络与前馈子网络,则各个子网络也可以串联。可以理解的是,各个子网络的连接方式并不只限于串联。其中,该前馈子网络不具有反馈功能,对输入数据进行点云特征学习后输入内容直接传递到下一网络,并且,前馈子网络可以由一个或多个点云学习模块构成,如由mlps(multi-layer perceptions,多层感知器),dggcn(dynamic graph cnn,动态图卷积),point transformer点特征提取器等中的一个或多个模块构成,本发明对该网络组成不做具体限定。其中,前馈子网络的输出内容为点云特征,示例性的,该点云特征可以为关于点云的各个点的特征数据,也可以为关于点云的高维特征,所谓的高维特征的形式可以为向量形式,当然并不局限于此;可以理解的是,若该点云特征为关于点云的各个点的特征数据,则该点云特征所涉及的各个点可以为输入内容所表征的点云的各个点,即输入点云的各个点,也可以为基于输入内容所形成的新的点云的各个点,这都是合理的。在本发明实施例中,前馈子网络可以省略,也可以不省略,本发明对此不做具体限定。
91.其中,所述反馈子网络也可以由上述的一个或多个点云学习模块构成。需要说明的是,反馈子网络与前馈子网络相比,新增一个反馈模块,反馈模块的作用在于将高层特征数据与低层特征数据进行融合,提升低层网络的学习能力,进而提升整个网络的性能。另外,可以理解的是,上述的子网络只是为了方便描述而提出的,子网络之间可以进行内容反馈,当然,在一个子网络内也可以进行内容反馈,以将网络的高层特征数据向低层网络传递;并且,在具体应用中,针对点云生成网络而言,在符合上述的关于反馈子网络和前馈子网络的定义的前提下,可以根据实际需求,将点云生成网络划分为多个部分,定义为多个子网络,从而实现高层到低层的内容反馈,本发明对于具体的划分方式并不做限定。其中,每一反馈子网络的输出内容可以是点云特征,关于点云特征的描述参见上述的前馈子网络的点云特征的描述,在此不做赘述。示例性的,反馈子网络0与反馈子网络1进行串联,反馈子网络1相比于反馈子网络0更接近输出结果,反馈子网络0位于低层网络,反馈子网络1位于高层网络,反馈子网络1将输出的各个点的特征数据,反馈给对应的在反馈子网络0,以使反馈子网络0继续以接收到的反馈内容作为输入内容继续进行点云特征学习。本发明对反馈子网络的输出内容不做限定。并且,可以理解的是,反馈子网络的反馈次数可以根据算力来决定,算力可以理解为是计算机芯片的处理能力,若算力较充足,则可以增加反馈次数,来达到更好的效果,若算力较弱时,则减少反馈次数,达到适中的算法性能,若算力严重不足,则可以不进行反馈。
92.为了方便理解,下面结合附图对点云生成网络的工作原理的实施例进行介绍。图3示例性地给出了本发明实施例提供的一种点云生成网络的工作原理示意图。
93.如图3所示,点云生成网络中包括一个前馈子网络与n个反馈子网络,即,前馈子网络与反馈子网络0至反馈子网络n,图中的每个反馈子网络的输出端向自身输入端反馈的箭头为反馈连接;在点云生成过程中,向前馈子网络输入点云,前馈子网络经过点云特征学习,将输出内容向串联相接的n个反馈子网络进行传递;n个反馈子网络中的每一反馈子网络用于利用获取到的输入内容进行点云特征学习,并在符合预定反馈条件时,将当前的输出内容作为反馈内容,反馈至自身以继续基于反馈内容进行点云特征学习,以及若存在下一子网络则在符合预定传递条件时,将当前的输出内容,输入下一子网络;若不存在下一反馈子网络,则输出结果。需要说明的是,图3仅仅作为一种示例,并不应该构成对本发明实施例的限定。
94.另外,示例性的,上述任一反馈子网络对应的指定子网络具体用于每次接收到反馈内容时,对当前接收到的反馈内容以及对应的内容传输端的最新的输出内容进行融合处理,并利用融合处理所得到的融合内容进行点云特征学习;其中,上述点云生成网络中的任一子网络所对应的内容传输端位于该子网络之前,且用于向该子网络进行内容传输。
95.需要说明的是,若子网络接收到的反馈内容以及对应的内容传输端的最新的输出内容一一对应,则可以直接进行特征拼接。
96.其中,对应的内容传输端的最新的输出内容可以是指定子网络的前一子网络的最新输出内容,若指定子网络是整个点云生成网络的第一个子网络,则对应的内容传输端的最新输出内容为点云生成网络的输入内容,在这种情况下对应的内容传输端即为点云生成网络的输入端。需要说明的是,低层网络可以接收多个高层网络的反馈;反之,高层特征数据也可以反馈给多个低层网络。并且,示例性的,若输出内容为关于点云的高维特征,此时,
可以对当前接收到的反馈内容以及对应的内容传输端的最新的输出内容进行加权处理,以完成融合处理,当然并不局限于此。若输出内容为关于点云的各个点的特征数据,融合处理的方式存在多种,为了方案清楚以及布局清晰,下文通过其他实施例示例性介绍对当前接收到的反馈内容以及对应的内容传输端的最新的输出内容进行融合处理的具体实现方式。可以理解的是,在其他实施例中,上述反馈子网络对应的指定子网络还可以用于每次接收到反馈内容时,直接对反馈内容进行点云特征学习。示例性的,点云生成网络中有反馈子网络0与反馈子网络1,反馈子网络0与反馈子网络1进行串联,反馈子网络1相比于反馈子网络0更接近输出结果,故反馈子网络0为低层网络,反馈子网络1为高层网络,反馈子网络1向反馈子网络0进行反馈,反馈子网络0可以利用反馈内容提升自己输出特征的语义表达能力。
97.其中,预定的输出内容反馈条件以及预定的输出内容传递条件的具体实现方式存在多种。可选的,在第一种实现方式中,所述在符合预定的输出内容反馈条件时,将当前的输出内容作为反馈内容,反馈至对应的指定子网络以使得对应的指定子网络继续基于反馈内容进行点云特征学习,包括:
98.在针对输出内容的已反馈次数小于预设次数阈值时,将当前的输出内容作为反馈内容,反馈至对应的指定子网络以使得对应的指定子网络继续基于反馈内容进行点云特征学习;
99.所述在符合预定的输出内容传递条件时,将当前的输出内容,输入下一子网络,包括:
100.在该反馈子网络未向下一子网络传递过当前的输出内容时,将当前的输出内容,输入下一子网络。
101.可见,该第一种实现方式中,输出内容反馈条件为针对输出内容的已反馈次数小于预设次数阈值;而输出内容传递条件为该反馈子网络未向下一子网络传递过当前的输出内容。
102.在第二种实现方式中,所述在符合预定的输出内容反馈条件时,将当前的输出内容作为反馈内容,反馈至对应的指定子网络以使得对应的指定子网络继续基于反馈内容进行点云特征学习,包括:
103.在针对输出内容的已反馈次数小于预设次数阈值时,将当前的输出内容作为反馈内容,反馈至对应的指定子网络以使得对应的指定子网络继续基于反馈内容进行点云特征学习;
104.相应的,所述在符合预定的输出内容传递条件时,将当前的输出内容,输入下一子网络,包括:
105.在针对输出内容的已反馈次数小于预设次数阈值时,将当前的输出内容,输入下一子网络。
106.可见,在该第二种实现方式中,所述输出内容反馈条件为针对输出内容的已反馈次数小于预设次数阈值;而输出内容传递条件为针对输出内容的已反馈次数小于预设次数阈值。
107.需要说明的是,示例性的,上述两种预定的输出内容反馈条件还包括在所述电子设备的当前算力满足预定算力充足条件的情况下,也就是,在电子设备的当前算力允许的情况下。
108.针对第一种实现方式而言:该种实现方式中,在反馈子网络每一次生成一输出内容时,均向下一子网络进行传递,这样可以使得反馈子网络的每一次的输出内容可以应用于下一子网络的学习过程,从而进一步提升低层网络和高层网络的学习效果,即,提升低层和高层特征数据的语义表达能力,进一步提升点云的准确性和完整性。
109.需要说明的是,在上述的第一种实现方式的基础上,所述点云生成网络在训练过程中所生成的输出结果包括每一时间步对应的输出结果;所述时间步为按照时间顺序划分的处理阶段;每一时间步对应的输出结果为所述点云生成网络中的各个子网络分别利用在该时间步下所对应的数据内容进行深度点云特征学习,所生成的输出结果;其中,各个子网络中的任一所述指定子网络,在该时间步下所对应的数据内容至少包括该指定子网络的对应的内容传输端的最新的输出内容,以及该指定子网络对应的反馈子网络在该时间步的上一时间步的反馈内容,各个子网络中的其他子网络对应的数据内容至少包括对应的内容传输端的最新的输出内容;其中,所述点云生成网络中的任一子网络所对应的内容传输端位于该子网络之前,且用于向该子网络进行内容传输。
110.可以理解的是,针对上述的第一种实现方式而言,预定的输出内容反馈条件可以认为是当前时间步小于网络训练时的预设时间步总数,即当前时间步小于点云生成网络所展开的全部时间步。
111.其中,在该时间步下所对应的数据内容至少包括该指定子网络的对应的内容传输端的最新的输出内容,以及该指定子网络对应的反馈子网络在该时间步的上一时间步的反馈内容,需要说明的是,不局限于该指定子网络对应的反馈子网络在该时间步的上一时间步的反馈内容,还可以包括该时间步的上一时间步对应的上一时间步的反馈内容,还可以包括该时间步之上所有时间步的反馈内容,本发明对此不做限定。可以理解的是,对应的内容传输端的最新的输出内容,即,前一级子网络在该时间步的输出内容。
112.另外,预设次数阈值的取值是一个初始的默认值。其中,该初始的默认值为当前点云生成网络在展开全部时间步的情况下,能够使得针对输出内容的反馈次数达到指定的最大次数的取值。其中,在点云生成网络的训练过程中,预设次数阈值的取值为初始的默认值,这样使得在模型训练过程中能够得到全部时间步对应的输出结果,也就是预设次数阈值的取值 1个时间步对应的生成结果,此时,点云生成网络展开全部时间步。需要说明的是,点云生成网络在训练完成后,不同时间步下所述点云生成网络所具有的网络参数的参数值均相同,也就是说,在不同时间步下,点云生成网络的网络参数是共享的。
113.示例性的,每一时间步对应的输出结果具体为所述点云生成网络中的各个子网络分别利用在该时间步下所对应的数据内容,按照各个时间步下共享的所述点云生成网络的网络参数进行深度点云特征学习,所生成的输出结果;也就是说,在不同的时间步下进行特征学习时,点云生成网络的网络参数均相同。其中,网络参数可以理解为点云生成网络的配置信息,如卷积核等等。需要说明的是,网络参数也可以不共享,在这种情况下,每一时间步下,点云生成网络的网络参数不同。
114.由于针对不同时间步而言,点云生成网络的网络参数是共享的,有利于减小网络参数和降低网络优化难度,可以实现轻量级的点云生成网络,从而最终改善整体网络性能。在不使用反馈机制的情况下,需要堆叠更多的网络模块才能实现更好的性能,而本方案达到相同性能的情况下,较现有技术具有更小的模型参数量,因此,更有利于在智能门锁,手
机等移动端对模型大小有限制要求的场景中应用。
115.其中,基于时间步的展开,点云生成网络的输出结果包括每一时间步对应的输出结果。示例性的,用户设定3个时间步,点云生成网络的输出结果包括3个时间步对应的输出结果。需要说明的是,将时间步展开的次数与各个反馈子网络的输出次数是相同的。示例性的,第一时间步下的数据内容为各个反馈子网络第一次的输出内容。
116.对于按照时间划分的各个时间步的方式而言,为了方便理解点云生成网络的工作原理,下面结合附图进行介绍。如图4所示,本发明实施例提供的另一种点云生成网络的工作原理如下:
117.点云生成网络中存在一个前馈子网络与n个反馈子网络,整个点云生成网络以时间步进行展开,在时间步t0,向前馈子网络输入点云,前馈子网络经过点云特征学习,将输出内容向反馈子网络0输入,反馈子网络0经过点云特征学习,将输出内容f
0,t0
向反馈子网络1输入,反馈子网络1经过点云特征学习,将输出内容f
1,t0
向后续反馈子网络输入,直到向反馈子网络n输入,反馈子网络n经过点云特征学习,输出f
n,t0
,作为时间步t0输出结果;在时间步t1,反馈子网络0除了接收前馈子网络的输入之外,还接收子网络0在时间步t0的反馈内容f
0,t0
,反馈子网络0对其进行点云特征学习,得到输出内容f
0,t1
,将输出内容f
0,t1
向后续时间步进行反馈,将输出内容f
0,t1
向反馈子网络1输入,反馈子网络1同时接收时间步t0的反馈内容f
1,t0
与反馈子网络0输出的内容f
0,t1
,作为输入,对其进行点云特征学习,得到反馈子网络1的输出内容f
1,t1
,将输出内容f
1,t1
向后续时间步进行反馈,将输出内容f
1,t1
向后续反馈子网络进行输入,直到向反馈子网络n输入,反馈子网络n经过点云特征学习,将输出内容f
n,t1
反馈给后续时间步的反馈子网络n,输出f
n,t1
作为时间步t1输出结果,重复上述步骤直到时间步tm的反馈子网络n,输出f
n,tm
作为时间步tm输出结果。
118.可以理解的是,每一时间步的反馈子网络0可以都接收前馈子网络的输入。也可以在时间步大于0时接收各子网络历史时间步的中间结果作为输入。
119.针对第二种实现方式而言:
120.该种实现方式中,若输出内容的已反馈次数达到预设次数阈值时,则只向下一子网络进行输入,不进行反馈;若输出内容的已反馈次数小于预设次数阈值时,则只进行反馈,不向下一子网络进行输入,本发明对预设次数阈值不做限定。可以理解的是,在反馈的过程中指定子网络并不一定要将当前接收到的反馈内容以及对应的内容传输端的最新的输出内容进行融合处理,也可以直接将接收到的反馈内容作为输入内容,对反馈内容进行点云特征学习。
121.示例性的,点云生成网络中有反馈子网络0与反馈子网络1,反馈子网络0与反馈子网络1进行串联,反馈子网络1相比于反馈子网络0更接近输出结果,故反馈子网络0为低层网络,反馈子网络1为高层网络,反馈子网络1向反馈子网络0进行反馈,预设次数阈值为5次,在已反馈次数小于5次时,不能向下一子网络进行输入,只能继续进行反馈,当已反馈次数达到5次时,则不能进行反馈,只能将输出内容向下一子网络进行输入。
122.可见,上述方案可以有效保证反馈的次数,在未达到预设次数阈值时,不能进行向下一子网络进行输入,可以保证当前反馈子网络的学习效果,从而可以提升低层特征数据的语义表达能力,进而可以提升生成点云的准确性及完整性。
123.另外,可以理解的是,本方案的点云生成网络在使用前是需要预先训练的,点云生
成网络为根据距离损失或对抗损失进行网络训练所得到的,点云生成网络的训练过程与相关技术中点云生成网络训练过程大致相同,例如,在训练过程中,可以构建重构损失,即,计算输出与真值之间的距离,如cd(chamfer distance,倒角距离),emd(earth mover

s distance,般土距离)等距离损失;还可以使用对抗损失,来增加生成结果的真实度。可选的,若本方案在每一子网络可以输出中间的点云,那么,在训练过程中可以对该中间的点云也加损失约束,同时每个时间步的输出结果也加入损失约束。这样可以使整个生成效果更真实。其中,损失约束可以为真值与训练的输出的差值。示例性的,反馈子网络0与反馈子网络1进行串联,反馈子网络1相比于反馈子网络0更接近输出结果,故反馈子网络0为低层网络,反馈子网络1为高层网络,反馈子网络1向反馈子网络0进行反馈,得到的输出结果与真值的差值作为损失约束,在后续的训练中,反馈子网络0的输出结果需要加上损失约束再向反馈子网络1进行输入,以此类推,每一输出结果都需要加上损失约束。
124.s103,利用所述输出结果,确定针对所述目标对象的目标点云。
125.其中,该点云生成网络的输出结果可以为各个点的指定信息,此时,可以利用点云生成网络输出的各个点的指定信息,生成针对目标对象的目标点云。当然,如针对点云生成网络的输入内容进行过归一化等操作,此时,还需要对各输出结果进行逆归一化等操作,从而得到针对目标对象的目标点云。
126.需要说明的是,若反馈子网络可以输出点云,那么,点云生成网络的最后一个子网络可以是反馈子网络,即,输出内容可以是各个点的指定信息;当然,若反馈子网络的输出内容是用于表征各个点的指定信息的特征内容,即反馈子网络的输出内容为点云特征,那么,点云生成网络的最后一个网络也可以用于将前一子网络的输出内容转换为各个点的指定信息。
127.并且,若所述点云生成网络在训练过程中所生成的输出结果包括每一时间步对应的输出结果,那么,所述利用所述输出结果,确定针对所述目标对象的目标点云,可以包括:利用各个时间步中的时间最晚的时间步所对应的输出结果,确定针对所述目标对象的目标点云。
128.另外,上述目标点云可以更好进行下游的视觉任务。示例性的,将修复后的点云直接在地图中表示为标识信息,较使用初始点云作为标识信息构建的地图相比,本方案地图在可视化效果,以及地图标识信息的完整性上具有明显的优势;另一个应用为避障,通过对目标不可见区域的修复,扫地机器人可以更准确的预测不可通行区域,实现更高效率的避障。
129.本发明实施例提供的方案,获取针对目标对象的初始点云的点云数据,并向训练完成的点云生成网络输入点云数据,得到点云生成网络的输出结果,其中,点云生成网络包括至少一个反馈子网络,反馈子网络对点云数据进行点云特征学习,得到输出内容,在符合预定的输出内容反馈条件时,将当前的输出内容作为反馈内容,反馈至对应的指定子网络以使得对应的指定子网络继续以反馈内容作为输入内容进行点云特征学习,以及若存在下一子网络则在符合预定的输出内容传递条件时,将当前的输出内容,输入下一子网络;然后,利用输出结果,确定针对目标对象的目标点云。可见,本方案可以将高层网络学习得到的高层特征数据反馈给低层网络,以提升低层特征数据的语义表达能力,即,可以将高层网络学习到高层语义信息传递到低层网络,参与低层特征数据的学习,从而辅助低层特征数
据进行学习,使得低层特征数据的语义表达能力得到提升,最终提高生成点云的质量,即,可以提升生成点云的准确性及完整性。另外,与相关技术中的通过大量堆叠网络模块来提升点云的准确度和完整性而言,本方案在提升点云的准确度和完整性时,通过反馈机制,这样可以实现轻量级的点云生成网络,从而最终改善整体网络性能。
130.下面结合另一实施例,介绍对当前接收到的反馈内容以及对应的内容传输端的最新的输出内容进行融合处理的具体实现方式。
131.为了方便理解,下面首先介绍下图像任务与点云任务在融合过程中的差异:
132.示例性的,在图像任务中,反馈内容可以是反馈特征图,由于特征图是规则并有序排列的,当反馈特征图与低层网络的特征图的分辨率不一致时,可以使用卷积,插值,池化等操作实现特征图的分辨率对齐,然后使用concat将两个特征进行融合。
133.示例性的,在点云任务中,反馈内容也可以是特征数据,由于点云是不规则和无序的,在大部分情况下,特征数据的分辨率与低层网络的分辨率并不一致,同时也不存在映射关系。对反馈特征进行下采样,即,降低反馈特征的分辨率,也无法实现与低层网络的分辨率进行对齐。特征融合技术要求两个点云特征之间具有严格的语义映射关系,即,低层网络的点云的特征数据,通过mlps,edgeconv(边卷积网络),上采样等,生成对应的一个或多个高层语义特征,这样,两个点云特征之间有了映射关系。这种情况下,可以通过映射关系对特征数据进行融合、下采样等操作,然后使用concat操作进行最终的回馈融合。针对点云生成任务,这种特征映射关系通常不存在,无法直接借鉴图像融合的策略。如网络某些层特征之间存在该映射关系,也极大的限制了点云生成任务中,回馈操作可实施的范围和效果。
134.基于上述差异内容的描述,当前接收到的反馈内容和对应的内容传输端的最新的输出内容包括:各个点的特征数据,具体的,所述对当前接收到的反馈内容以及对应的内容传输端的最新的输出内容进行融合处理,可以包括方法a1与方法a2:
135.方法a1,针对对应的内容传输端的最新的输出内容中每一点,在所述当前接收到的反馈内容的各个点中,确定该点对应的至少一个邻域点,利用至少一个邻域点的特征数据和该点的特征数据,进行指定的特征融合处理,得到该点的融合数据。
136.示例性的,反馈子网络1与反馈子网络2进行串联,反馈子网络2相比于反馈子网络1更接近输出结果,故反馈子网络1为低层网络,反馈子网络2为高层网络,反馈子网络2向反馈子网络1进行反馈,针对对应的内容传输端的最新的输出点云中每一点,在反馈子网络1接收到的反馈子网络2反馈的各个点的指定信息,针对当前子网络的每一个点,确定其在反馈点云中的至少一个最近邻域点,利用至少一个邻域点的特征数据和该点的特征数据,进行指定的特征融合处理,得到该点的融合数据。
137.其中,方法a1中的确定该点邻域点的方法,可以包括方法a11与方法a12中的任一种:
138.方法a11,针对对应的内容传输端的最新的输出内容中每一点,利用k近邻算法knn,从所述当前接收到的反馈内容的各个点中,确定与该点距离最近的k个点,得到该点对应的至少一个邻域点;
139.方法a12,针对对应的内容传输端的最新的输出内容中每一点,利用该点对应的相关性权重矩阵,确定该点与所述当前接收到的反馈内容的各个点的注意力权重;基于所确定出的注意力权重的大小,从所述当前接收到的反馈内容的各个点中,确定该点对应的至
少一个邻域点;其中,该点对应的相关性权重矩阵用于表征该点与当前接收到的反馈内容中的各个点的注意力权重。
140.为了方便理解上述确定邻域点的方法,下面结合附图,进行介绍,如图5所示:
141.将设备采集到的点云pa输入点云生成网络,得到准确度、完整性高的目标点云pb。
142.需要说明的是,在确定邻域点之前,点云pa中点与点云pb中每个点需要构建跨点云特征连接,可以使用knn(k近邻算法)来构建两个点云之间的连接关系,点云中的点需要通过knn来找到距离最近的邻域点。示例性的,点云pa通过knn查找点云pb中距离最相似k个点的特征。knn可以使用点云坐标来计算距离,也可以使用其它信息,如点云特征学习的特征,或者点云特征学习的特征及坐标等方式。
143.除了使用knn构建连接关系,在确定邻域点时,也可以使用全局注意力机制来计算两个点云之间的相关性权重矩阵,即,计算点云pa中点与点云pb中每个点的注意力权重,权重越高,说明相关性越高;进而,利用相关性权重矩阵,确定每一点与所述当前接收到的反馈内容的各个点的注意力权重,最终利用每一点与各个点的注意力权重,来确定出每一点的邻域点,其中,针对待确定邻域点的每一点而言,该点的邻域点相对于当前接收到的反馈内容中的其他点,与该点的注意力权重更大,也就是,相关性更高。每一点对应的相关性权重矩阵中的注意力权重可以通过预先训练的神经网络学习得到,也可以与点云生成任务同时训练优化,本发明实施例对于注意力权重的生成方式不做限定,预先训练的神经网络可以利用样本数据和真值训练得到,其中,样本数据可以为第一点云中的目标点的特征数据,以及第二样本点云中的针对该目标点的邻域点的特征数据,而真值为针对该目标点的邻域点对于该目标点的注意力权重。
144.可见,通过上述方案可以找到点云中每一点对应的邻域点,通过上述方法可以将点云中的每一点的特征数据与其对应的邻域点的特征数据融合,从而提升低层网络的学习效果,即,提升低层特征数据的语义表达能力的语义表达能力,进而可以提升生成点云的准确性及完整性。
145.其中,利用至少一个邻域点的特征数据和该点的特征数据,进行指定的特征融合处理,得到该点的融合数据,可以包括步骤a13-a14:
146.步骤a13,计算该点的特征数据与每一邻域点的特征数据的特征差异,得到每一邻域点对应的边特征;
147.示例性的,将当前点特征数据与邻域点特征数据进行特征相减,得到每一邻域点对应的边特征。
148.步骤a14,利用每一邻域点对应的边特征,按照第一融合方式或第二融合方式,确定该点的融合内容;
149.示例性的,利用得到的每一邻域点对应的边特征,按照第一融合方式,确定该点的融合内容。
150.其中,第一融合方式包括:针对每一邻域点,对该邻域点对应的边特征和该点的特征数据进行特征学习,得到该邻域点对应的第一特征数据;对每一邻域点对应的第一特征数据进行求平均值或取最大值,得到该点的特征数据;
151.其中,对该邻域点对应的边特征和该点的特征数据可以通过mlps进行学习,从而得到该邻域点对应的第一特征数据。可以理解的是,第一特征数据为该点的数据特征与该
点邻域的边数据相融合并经过mlps学习得到的。示例性的,针对每一邻域点,对该邻域点对应的边特征和该点的特征数据通过mlps进行特征学习,得到该邻域点对应的第一特征数据,对每一邻域点对应的第一特征数据进行求平均,得到该点的特征数据。
152.第二融合方式包括:确定每一邻域点对于该点的注意力权重,按照每一邻域点的注意力权重,对各个邻域点对应的边特征进行加权,得到第二特征数据;将所述第二特征数据与该点的特征数据进行融合。
153.需要说明的是,融合方式可以为concat、transformer等方式中的一种或多种,任一种融合方式均可以应用于本发明实施例,本发明对此不做限定。
154.其中,通过该点的特征数据与邻域特征数据之间相减得到的边特征,可以通过mlps进行学习,得到每一邻域点对于该点的注意力权重。
155.方法a2,针对所述对应的内容传输端的最新的输出内容中的每一点,计算所述当前接收到的反馈内容中的各个点对于该点的注意力权重,得到该点对应的相关性权重矩阵;
156.针对所述对应的内容传输端的最新的输出内容中的每一点,按照该点对应的相关性权重矩阵,对所述当前接收到的反馈内容中的各个点的特征数据进行加权,得到该点对应的待利用特征数据,将该点的特征数据与该点对应的待利用特征数据进行融合,得到该点的融合数据。
157.其中,相关性权重矩阵为接收到反馈内容的各个点对该点的注意力权重,这种方法适用于使用全局注意力机制的情况下。示例性的,反馈子网络0与反馈子网络1进行串联,反馈子网络1相比于反馈子网络0更接近输出结果,故反馈子网络0为低层网络,反馈子网络1为高层网络,反馈子网络1向反馈子网络0进行反馈,针对前馈的最新的输出内容中的每一点,计算反馈子网络0接收到的反馈内容中的各个点对于输出内容中的一点的注意力权重,得到该点对应的相关性权重矩阵。
158.示例性的,反馈子网络0、反馈子网络1及反馈子网络2进行串联,反馈子网络0位于低层网络,反馈子网络2相比于反馈子网络1更靠近输出,反馈子网络1、反馈子网络2向反馈子网络0进行反馈,针对对应的内容传输端的最新的输出点云中的每一点,按照该点对应的相关性权重矩阵,对当前接收到的反馈子网络1、反馈子网络2反馈的点云中的各个点的特征数据进行加权,得到该点对应的待利用数据,将该点的特征数据与该点对应的待利用特征数据进行concat融合,得到该点的融合数据。
159.可见,本实施例中的融合方式,与点云生成网络中的各个输出内容的表征形式具有较好的适配性,这样可以方便快捷地得到有效的融合内容,从而应用于点云生成过程。
160.如图2所示,本发明实施例提供的另一种点云生成方法,可以包括如下步骤:
161.s201,获取针对目标对象的初始点云的点云数据;
162.需要说明的是,s201与上述实施例中的s101相同,在此不做赘述。
163.s202,获取所述点云生成网络在所述电子设备运行时的待利用时间步,作为目标时间步;其中,所述待利用时间步为各个时间步中的任一个,且所述待利用时间步为基于所述电子设备的设备种类和/或所述电子设备的可用的算力情况所设定的;
164.其中,电子设备可以为手机、pc或服务器等等,本发明对此不做限定。通过确定目标时间步,可以使得在点云生成网络在单次训练的前提下,也就是,对点云生成网络进行一
次训练,便可以灵活的应用到不同种类的电子设备,以及不同的可用的算力情况的电子设备,从而保证点云生成质量的同时保证点云生成效率。示例性的,一个点云生成网络可以展开五次时间步,在点云生成网络的训练过程中,展开五次时间步从而进行训练,但由于点云生成网络运行在手机端,算力严重不足,故确定运行一次时间步,作为目标时间步。
165.需要说明的是,目标时间步可以基于电子设备的设备种类和/或电子设备的可用的算力情况所设定的,可以理解的是,目标时间可以只基于电子设备的种类设定的,也可以基于电子设备的可用的算力情况设定的,还可以基于两者一起设定的,本发明对此不做限定。
166.其中,基于电子设备的设备种类设定待利用时间步的方式,包括方式b1-b3:
167.方式b1,若所述电子设备为第一设备种类的设备,确定所述待利用时间步为各个时间步中的时间最早的时间步;
168.方式b2,若所述电子设备为第二设备种类的设备,确定所述待利用时间步为各个时间步中除时间最早的时间步和时间最晚的时间步以外的任一时间步;
169.方式b3,若所述电子设备为第三设备种类的设备,确定所述待利用时间步为各个时间步中的时间最晚的时间步;
170.其中,所述第一设备种类的设备、第二设备种类的设备和第三设备种类的设备的算力逐步增大。
171.可以理解的是,第一设备种类的设备具体实现可以是手机端或处理能力较弱的微处理器端等等,第二设备种类的设备具体实现可以是pc端,第三设备种类的设备具体实现可以是服务器,本发明对此不做具体限定。
172.本发明实施例在算力较为充足的情况下,可以使用多个时间步展开,以此来达到更好的效果;在算力较弱时,可以降低时间步的使用,达到适中的算法性能,在算力严重不足时,可以不进行时间步展开,得到基础的生成效果。可以理解的是,算力可以理解为是计算机芯片的处理能力,通常指io(输入/输出)吞吐能力,处理运算能力等,本发明对芯片的具体形态不做限定。另外,可选的,在一种实现方式中,可以通过设定算力阈值或算力范围等方式来划分不同的算力情况,即通过算力阈值或算力范围来进行算力情况的区分。可选的,在另一种实现方式中,也可以通过点云生成网络的运行环境来划分不同的算力情况,也就是根据点云生成方法所应用于的电子设备的设备种类来划分不同的算力情况。示例性的,需要训练一个可以进行三次反馈的点云生成网络,那么,存在三个时间步:t0、t1和t2,若点云生成网络在手机端或arm(一款risc微处理器)端运行,在这种算力严重不足的情况下,待利用时间步为各个时间步中的时间最早的时间步,即待利用时间步为时间步t0,此时只反馈一次就输出结果;若点云生成网络在pc端且无gpu(graphics processing unit,显示核心)运行,在这种算力适中的情况下,所述待利用时间步为各个时间步中除时间最早的时间步和时间最晚的时间步以外的任一时间步,即待利用时间步为时间步t1,此时,可以反馈两次就输出结果;若点云生成网络在服务器端运行,在这种算力充足的情况下,所述待利用时间步为各个时间步中的时间最晚的时间步,即待利用时间步为时间步t2,此时,可以反馈三次再输出结果。
173.s203,将所述预设次数阈值的取值更新为所述目标时间步在各个时间步中的次序值减1;
174.其中,s201,与s202-s203并不存在严格的执行顺序,例如:s201与s202-s203并行执行,s201也可以早于或晚于s202-s203进行执行。
175.其中,预设次数阈值的取值在确定目标时间步后需要进行更新,将预设次数阈值从初始的默认值更新为:确定所述目标时间步在各个时间步中的次序值减1,初始的默认值已经进行过介绍,在此不做赘述。
176.需要说明的是,若输出内容的已反馈次数达到预设次数阈值时,则只向下一子网络进行输入,不向下一时间步的反馈子网络进行反馈;若输出内容的已反馈次数小于预设次数阈值时,则既向下一时间步的反馈子网络进行反馈,又向下一子网络进行输入。
177.可以理解的是,在用户更新预设次数阈值的取值为k时,那么,在已反馈k次之后,则不开展时间步继续进行反馈,只向下一子网络进行输入,整个点云生成网络共开展k 1次时间步。示例性的,当前算力较为不足,用户设置预设次数阈值为1次,即,需要反馈1次,那么,整个点云生成网络需要开展2次时间步。
178.s204,将所述初始点云的点云数据输入预先训练完成的点云生成网络,得到所述点云生成网络的输出结果;其中,所述点云生成网络包括至少一个具有反馈功能的反馈子网络,每一反馈子网络用于利用获取到的输入内容进行点云特征学习,得到输出内容,在符合预定的输出内容反馈条件时,将当前的输出内容作为反馈内容,反馈至对应的指定子网络以使得对应的指定子网络继续基于反馈内容进行点云特征学习,以及若存在下一子网络则在符合预定的输出内容传递条件时,将当前的输出内容,输入下一子网络;其中,任一反馈子网络对应的指定子网络包括:该反馈子网络和/或位于该反馈子网络之前的子网络;
179.需要说明的是,指定子网络也可以是下一时间步的子网络,s204与上述实施例中的s102相同,在此不做赘述。
180.s205,利用各个时间步中的时间最晚的时间步所对应的输出结果,确定针对所述目标对象的目标点云;
181.将各个时间步中时间最晚的时间步所对应的输出结果,确定为目标对象的目标点云。示例性的,假设有t0、t1两个时间步,t1晚于t0,那么,就将时间步t1所对应的输出结果,确定为目标对象的目标点云。
182.可见,方案可以将高层网络学习得到的高层特征数据反馈给低层网络,以提升低层特征数据的语义表达能力,即,可以将高层网络学习到的高层语义信息传递到低层网络,参与低层特征数据的学习,使得低层特征数据的语义表达能力得到提升,最终提高生成点云的质量,即,可以提升生成点云的准确性及完整性。另外,与相关技术中的通过大量堆叠网络模块来提升点云的准确度和完整性而言,本方案在提升点云的准确度和完整性时,通过反馈机制,这样可以实现轻量级的点云生成网络,从而最终改善整体网络性能。并且,可以基于设备算力情况,选定时间步,从而保证点云生成网络的生成效率。
183.基于上述的方法实施例,如图6所示,本发明实施例还提供了一种点云生成装置,可以包括:
184.获取模块610,用于获取针对目标对象的初始点云的点云数据;
185.输入模块620,用于将所述初始点云的点云数据输入预先训练完成的点云生成网络,得到所述点云生成网络的输出结果;其中,所述点云生成网络包括至少一个具有反馈功能的反馈子网络,每一反馈子网络用于利用获取到的输入内容进行点云特征学习,得到输
出内容,在符合预定的输出内容反馈条件时,将当前的输出内容作为反馈内容,反馈至对应的指定子网络以使得对应的指定子网络继续基于反馈内容进行点云特征学习,以及若存在下一子网络则在符合预定的输出内容传递条件时,将当前的输出内容,输入下一子网络;其中,任一反馈子网络对应的指定子网络包括:该反馈子网络和/或位于该反馈子网络之前的子网络;
186.确定模块630,用于利用所述输出结果,确定针对所述目标对象的目标点云。
187.可选地,在符合预定的输出内容反馈条件时,将当前的输出内容作为反馈内容,反馈至对应的指定子网络以使得对应的指定子网络继续基于反馈内容进行点云特征学习,包括:
188.在针对输出内容的已反馈次数小于预设次数阈值时,将当前的输出内容作为反馈内容,反馈至对应的指定子网络以使得对应的指定子网络继续基于反馈内容进行点云特征学习;
189.所述在符合预定的输出内容传递条件时,将当前的输出内容,输入下一子网络,包括:
190.在该反馈子网络未向下一子网络传递过当前的输出内容时,将当前的输出内容,输入下一子网络。
191.可选地,在符合预定的输出内容反馈条件时,将当前的输出内容作为反馈内容,反馈至对应的指定子网络以使得对应的指定子网络继续基于反馈内容进行点云特征学习,包括:
192.在针对输出内容的已反馈次数小于预设次数阈值时,将当前的输出内容作为反馈内容,反馈至对应的指定子网络以使得对应的指定子网络继续基于反馈内容进行点云特征学习;
193.所述在符合预定的输出内容传递条件时,将当前的输出内容,输入下一子网络,包括:
194.在针对输出内容的已反馈次数小于预设次数阈值时,将当前的输出内容,输入下一子网络。
195.可选地,所述点云生成网络在训练过程中所生成的输出结果包括每一时间步对应的输出结果;所述时间步为按照时间顺序划分的处理阶段;
196.每一时间步对应的输出结果为所述点云生成网络中的各个子网络分别利用在该时间步下所对应的数据内容进行深度点云特征学习,所生成的输出结果;其中,各个子网络中的任一所述指定子网络,在该时间步下所对应的数据内容至少包括该指定子网络对应的内容传输端的最新的输出内容,以及该指定子网络对应的反馈子网络在该时间步的上一时间步的反馈内容,各个子网络中的其他子网络对应的数据内容至少包括对应的内容传输端的最新的输出内容;其中,所述点云生成网络中的任一子网络所对应的内容传输端位于该子网络之前,且用于向该子网络进行内容传输;
197.所述确定模块,包括:
198.确定子模块,用于利用各个时间步中的时间最晚的时间步所对应的输出结果,确定针对所述目标对象的目标点云。
199.可选地,所述装置还包括:
200.获取模块,用于将所述初始点云的点云数据输入预先训练完成的点云生成网络,得到所述点云生成网络的输出结果之前,获取所述点云生成网络在所述电子设备运行时的待利用时间步,作为目标时间步;其中,所述待利用时间步为各个时间步中的任一个,且所述待利用时间步为基于所述电子设备的设备种类和/或所述电子设备的可用的算力情况所设定的;
201.更新模块,用于将所述预设次数阈值的取值更新为所述所述目标时间步在各个时间步中的次序值减1。
202.可选地,基于所述电子设备的设备种类设定待利用时间步的方式,包括:
203.若所述电子设备为第一设备种类的设备,确定所述待利用时间步为各个时间步中的时间最早的时间步;
204.若所述电子设备为第二设备种类的设备,确定所述待利用时间步为各个时间步中除时间最早的时间步和时间最晚的时间步以外的任一时间步;
205.若所述电子设备为第三设备种类的设备,确定所述待利用时间步为各个时间步中的时间最晚的时间步;
206.其中,所述第一设备种类的设备、第二设备种类的设备和第三设备种类的设备的算力逐步增大。
207.可选地,所述点云生成网络在训练完成后,不同时间步下所述点云生成网络所具有的网络参数的参数值均相同。
208.可选地,所述任一反馈子网络对应的指定子网络具体用于每次接收到反馈内容时,对当前接收到的反馈内容以及对应的内容传输端的最新的输出内容进行融合处理,并利用融合处理所得到的融合内容进行点云特征学习;其中,所述点云生成网络中的任一子网络所对应的内容传输端位于该子网络之前,且用于向该子网络进行内容传输。
209.可选地,所述对当前接收到的反馈内容以及对应的内容传输端的最新的输出内容进行融合处理,包括:
210.针对对应的内容传输端的最新的输出内容中每一点,在所述当前接收到的反馈内容的各个点中,确定该点对应的至少一个邻域点,利用至少一个邻域点的特征数据和该点的特征数据,进行指定的特征融合处理,得到该点的融合数据。
211.可选地,所述对当前接收到的反馈内容以及对应的内容传输端的最新的输出内容进行融合处理,包括:
212.针对对应的内容传输端的最新的输出内容中的每一点,计算所述当前接收到的反馈内容中的各个点对于该点的注意力权重,得到该点对应的相关性权重矩阵;
213.针对对应的内容传输端的最新的输出内容中的每一点,按照该点对应的相关性权重矩阵,对所述当前接收到的反馈内容中的各个点的特征数据进行加权,得到该点对应的待利用特征数据,将该点的特征数据与该点对应的待利用特征数据进行融合,得到该点的融合数据。可选地,针对对应的内容传输端的最新的输出内容中每一点,在所述当前接收到的反馈内容的各个点中,确定该点对应的至少一个邻域点,包括:
214.针对对应的内容传输端的最新的输出内容中每一点,利用k近邻算法knn,从所述当前接收到的反馈内容的各个点中,确定与该点距离最近的k个点,得到该点对应的至少一个邻域点;
215.或者,
216.针对对应的内容传输端的最新的输出内容中每一点,利用该点对应的相关性权重矩阵,确定该点与所述当前接收到的反馈内容的各个点的注意力权重;基于所确定出的注意力权重的大小,从所述当前接收到的反馈内容的各个点中,确定该点对应的至少一个邻域点;其中,该点对应的相关性权重矩阵用于表征该点与当前接收到的反馈内容中的各个点的注意力权重。
217.可选地,所述点云生成网络为根据距离损失或对抗损失进行网络训练所得到的;其中,所述距离损失包括倒角距离cd损失或般土距离emd损失。
218.本发明实施例提供了一种自动驾驶装置,包括:采集模块以及处理模块;
219.采集模块,用于生成针对目标对象的初始点云;
220.处理模块,用于按照上述任一点云生成方法,利用针对目标对象的初始点云的点云数据,生成针对所述目标对象的目标点云。
221.可选地,所述处理模块,还用于在接收到针对所述目标对象的避障任务或导航任务时,基于所述目标对象的目标点云,利用所述行进部件,执行针对所述目标对象的避障任务或导航任务。
222.可选地,所述采集模块包括深度相机;
223.所述深度相机用于针对目标对象进行图像采集,利用所采集到的图像,构建针对所述目标对象的初始点云;
224.所述自动驾驶装置还包括行进部件,根据所述目标对象的目标点云,驱动所述自动驾驶装置行进。
225.可选地,所述采集模块包括激光雷达;
226.所述激光雷达用于针对所述目标对象进行雷达数据采集,利用采集到的雷达数据,构建针对所述目标对象的初始点云;
227.所述自动驾驶装置还包括行进部件,根据所述目标对象的目标点云,驱动所述自动驾驶装置行进。
228.本发明实施例还提供了自动驾驶装置,如图7所示,包括:采集模块710以及处理模块730;
229.采集模块710,用于生成针对目标对象的初始点云;
230.处理模块730,用于上述任一点云生成方法,利用针对目标对象的初始点云的点云数据,生成针对所述目标对象的目标点云。
231.可选地,所述处理模块730,还用于在接收到针对所述目标对象的避障任务或导航任务时,基于所述目标对象的目标点云,执行针对所述目标对象的避障任务或导航任务。
232.可选地,所述采集模块710包括深度相机;
233.所述深度相机用于针对目标对象进行图像采集,利用所采集到的图像,构建针对所述目标对象的初始点云;
234.所述自动驾驶装置还包括行进部件720,根据所述目标对象的目标点云,驱动所述自动驾驶装置行进。
235.其中,所述处理模块730还用于根据所述目标对象的目标点云,通过控制所述行进部件720,驱动所述自动驾驶装置行进。
236.在所述采集模块710生成针对所述目标对象的初始点云的过程中,行进部件720可以驱动所述自动驾驶装置围绕所述目标对象行进以采集完整的点云信息,也可以驱动所述自动驾驶装置接近所述目标对象采集更详细的点云数据。
237.可选地,所述采集模块710包括激光雷达;
238.所述激光雷达用于针对所述目标对象进行雷达数据采集,利用采集到的雷达数据,构建针对所述目标对象的初始点云;
239.所述自动驾驶装置还包括行进部件720,根据所述目标对象的目标点云,驱动所述自动驾驶装置行进。
240.下面将以扫地机器人为例,对自动驾驶装置的功能进行介绍:
241.扫地机器人设置有tof摄像头(tof camera,全面解析深度摄像头),由于目标对象自遮挡,传感器分辨率(即tof摄像头的分辨率),物体材质,环境等因素的影响,基于tof摄像头所采集的图像数据生成的初始点云一般都不可避免的存在点云缺失、低分辨率,噪点等问题。那么,为了提升点云的准确性高及完整性,扫地机器人可以通过tof摄像头(tof camera,全面解析深度摄像头)采集周围环境的初始点云,然后,经过处理模块730的处理,对扫地机器人针对目标对象的不可见的区域进行修复,从而形成更加完整且准确的目标点云。从而,扫地机器人可以通过该目标点云,更加准确的预测障碍物或不可通行的区域,从而实现更高效的避障。
242.可以理解的是,tof摄像头可以采集任一材质的障碍物的图像数据,故本发明对障碍物的材质不做限定;并且,由于处理模块可以利用上述的点云生成方法,针对目标对象的不可见区域进行更加完整和准确地修正,因此,无论目标对象自遮挡、传感器分辨率、物体材质、环境等因素造成的点云缺失、缺失、低分辨率,噪点等问题,扫地机器人均可以生成目标对象的完整且准确性高的目标点云,从而可以基于目标点云实现在任务执行过程中的高效地避障。
243.通过本发明实施例所提供的自动驾驶装置,可以提高生成点云的质量,即,可以提升生成点云的准确性及完整性。另外,与相关技术中的通过大量堆叠网络模块来提升点云的准确度和完整性而言,自动驾驶装置中所利用的点云生成网络,在提升点云的准确度和完整性时,通过反馈机制,可以实现轻量级,从而最终改善整体网络性能。
244.本发明实施例还提供了一种电子设备,如图8所示,包括处理器801、通信接口802、存储器803和通信总线804,其中,处理器801,通信接口802,存储器803通过通信总线804完成相互间的通信,
245.存储器803,用于存放计算机程序;
246.处理器801,用于执行存储器803上所存放的程序时,实现点云生成方法步骤。
247.上述电子设备提到的通信总线可以是外设部件互连标准(peripheral component interconnect,pci)总线或扩展工业标准结构(extended industry standard architecture,eisa)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
248.通信接口用于上述电子设备与其他设备之间的通信。
249.存储器可以包括随机存取存储器(random access memory,ram),也可以包括非易失性存储器(non-volatile memory,nvm),例如至少一个磁盘存储器。可选的,存储器还可
以是至少一个位于远离前述处理器的存储装置。
250.上述的处理器可以是通用处理器,包括中央处理器(central processing unit,cpu)、网络处理器(network processor,np)等;还可以是数字信号处理器(digital signal processor,dsp)、专用集成电路(application specific integrated circuit,asic)、现场可编程门阵列(field-programmable gate array,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
251.在本发明提供的又一实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述任一点云生成方法的步骤。
252.在本发明提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例中任一点云生成方法。
253.在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(dsl))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,dvd)、或者半导体介质(例如固态硬盘solid state disk(ssd))等。
254.需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
255.本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
256.以上所述仅为本发明的较佳实施例,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

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

相关文献