一种辅助点云目标检测的方法及系统
技术领域
本发明属于计算机技术领域,具体涉及一种辅助点云目标检测的方法及系统。
背景技术
三维激光扫描技术(3D Laser Scanning Technology)可以连续地、快速地、大规模地获取物体表面的三维点云数据,即建点云(Point Cloud)。目前自动驾驶领域利用了这一项技术,即使用车载激光雷达快速扫描车辆前方的物体,获取大量地富有空间结构信息的点云,然后根据获得的点云数据进行基于点云物体的车前目标检测。这一项技术在自动驾驶区域被广泛的使用。
在人工智能领域,三维物体检测吸引了越来越多学者的关注。该技术在自动驾驶、机器人轨迹规划、虚拟现实等方面发挥着重要作用。根据输入的格式,三维物体检测(3Dobject detection)方法主要分为基于图像的三维物体检测、基于点云的三维物体检测和基于图像和点云组合的三维物体检测。
其中,基于点云的三维物体检测直接利用车载的激光雷达数据估计三维检测框。目前直接处理原始点云的方法主要有两种。第一种方法是将整个点云转换为体素,然后在体素上预测3D检测框。但是,这些方法不仅损失了丰富的空间结构信息,而且还不可避免地利用3D CNN从体素中学习特征,这造成了很大的计算量。2017年,Yin Zhou等提出VoxelNet,其将点云经过体素化后,利用PointNet网络从体素中学习点云特征,而Yan Y等人提出的SECOND则利用稀疏卷积层代替PointNet。这些方法不可避免地都产生了很大的计算量。为了减少体素化造成的计算量,Lang A H等提出的PointPillars利用体素柱代替体素网格,但仍然造成了一些较大的计算量。
另一种方式直接利用原始点云作为输入,不对点云做任何改变。因为Qi C R等提出的PointNet和PointNet++在点云中取得了巨大的成功,越来越多的三维目标检测方法通过借助它们实现了直接处理点云的任务。具体来说,2019年,Shi S等提出的二阶段网络PointRCNN,其首先利用PointNet++作为语义分割骨干网络来区分前景点和背景点。然后,根据前景点估计三维检测框。同年,Yang Z等提出的二阶段网络STD也利用PointNet++学习点云的逐点特征,并通过提出的PointsPool模块将候选目标框的内部点特征从稀疏表示转换为密集表示。通过对这两个二阶段方法的总结,发现其第一步语义分割网络起到了至关重要的作用,并且直接影响到最终的性能。但其难以忍受的推理时间使得其很难在实际的自动驾驶系统中应用,所以改进这一技术难点成为该工作中的一项重要的任务。
与二阶段方法不同,一阶段的直接利用点云方法以其效率著称。2020年,Shi W等提出PointGNN提出了一种利用GNN提取点状特征的网络。这充分利用GNN来感知空间结构,并在KITTI上取得了出色的性能。GNN可以很好地感知点云的空间结构信息,但它要求点云不能被下采样。因此,这意味着网络必须在整个点云中进行GNN。所以与其它一阶段的方法相比,计算成本很高。
发明内容
本申请实施例的目的在于提出了一种辅助点云目标检测的方法及系统,兼具一阶段网络的高效性和二阶段网络的精度,解决了上述背景技术存在的问题。
第一方面,本申请实施例提供了一种辅助点云目标检测的方法,该方法的步骤包括:
S100、将初始目标点云集从整体点云场景中分割出;
S200、将初始目标点云集进行特征聚合,以获得初始目标点云集中每个采样点的空间结构信息,并将空间结构信息赋值给对应的采样点,得到采样目标点云集;
S300、将目标点云集通过三点线性插值扩张回初始目标点云集,并用插值法更新初始目标点云集的中点的特征,依据初始目标点云集的中点的特征,使用一层全连接层输出初始目标点云集中每个采样点是前景点还是背景点的概率;
S400、将采样目标点云集输入到多层感知机中,输出采样目标点云集到对应的真实物体中心点的偏移量,再将偏移量与采样目标点云集的特征相加后得到预测中心点的特征,最后根据预测中心点的特征生成三维目标检测框。
在一些实施例中,步骤S200中特征聚合的步骤包括:
S201、对初始目标点云集进行下采样得到K个兴趣采样点;
S202、对兴趣采样点进行挑选得到K’个质量采样点;
S203、对质量采样点周围的临近点进行赋权得到赋权后每个临近点的特征矩阵;
S204、利用赋权后的临近点的特征更新初始目标点云集内的采样点特征得到过程目标点云集;
S205、对过程目标点云集进行下采样得到新的K个兴趣采样点再重复S202-S204操作得到第二过程目标点云集或采样目标点云集,当得到第二过程目标点云集时重复S205步骤直至最终得到采样目标点云集。
对初始目标点云集进行下采样-挑选点-赋权-更新的处理,并根据需求设置重复多次直到得到满意的采样目标点云集,其中兴趣采样点为经下采样操作留下的采样点,质量采样点为同个循环里的兴趣采样点经过去噪和特征学习得到好坏分数并加以挑选的采样点。这样的操作使得采样目标点云集里既包含了通过特征最远点采样获取的尽可能多的前景点,也包含了通过距离最远点采样能够尽可能保存点云整体形状的点云集为步骤S300和步骤S400的顺利执行奠定基础。
在一些实施例中,步骤201中的下采样的具体方法包括:输入初始目标点云集,利用基于距离的最远点采样或者基于特征值的最远点采样的独立采样,对初始目标点云集中的采样点进行下采样,经过下采样后得到K个兴趣采样点。这样的操作使得得到的K个兴趣采样点既能保留尽可能多的前景点,也能够尽可能保存点云形状。
在一些实施例中,步骤202中挑选的具体方法包括:对K个兴趣采样点进行去噪,利用兴趣采样点周围的临近点的数量以及临近点到兴趣采样点的距离信息,通过特征学习得到每个兴趣采样点的好坏分数,根据好坏分数,从K个兴趣采样点中选取前K’个质量较好的质量采样点。这样的操作可以有效去除本身为噪点的采样点及空间结构信息比较稀疏的采样点,便于后续通过各个临近点的贡献度对其进行赋权。
在一些实施例中,步骤203中赋权的具体方法包括:针对K’个质量采样点以其自身为圆心,在半径为r的球形区域内随机采样m个临近点,将质量采样点的特征、临近点的特征及临近点与质量采样点的相对坐标作为输入计算每个临近点对质量采样点的贡献程度,求每个临近点的特征与其对质量采样点的贡献程度的乘积得到赋权后每个临近点的特征。这样的操作可以得到赋权后临近点的特征矩阵,便于下一步的更新点操作。
在一些实施例中,步骤S203中贡献程度的取值范围为0~1。这样的设置可以使赋权结果更合理,科学。
在一些实施例中,步骤204中更新初始目标点云集内的采样点的具体方法包括:利用MaxPooling操作获取赋权后临近点的特征所对应的每个通道上最明显的特征生成一个新的特征,从而形成过程目标点云集。
这样的操作使过程目标点云集能够很好地感知空间结构,使得最终的三维目标检测框的中心点预测更精确,同时通过下采样操作减少需处理的采样点数量,提高运算速度,实现既高效又精确。
在一些实施例中,步骤205的具体操作方式为:输入过程目标点云集,利用基于距离的最远点采样和基于特征值的最远点采样的联合采样,对过程目标点云集中的采样点进行下采样得到新的K个兴趣采样点再进行S202-S204操作得到第二过程目标点云集或采样目标点云集,当得到第二过程目标点云集时重复S205步骤直至最终得到采样目标点云集。
根据需要,重复操作可进一步提高最终的三维目标检测框的中心点预测。
在一些实施例中,步骤S205执行次数为1~4次。每次下采样都可以设置下采样后的点云数,1~4次的执行次数能够更合理地分配下采样的点云数阶梯,使运算时间和最后的三维目标检测框的预测精度都在一个较佳的合理范围内。执行次数太多容易导致运算时间过长,执行次数太少又容易导致精确度不够。
在一些实施例中,步骤S300还包括:通过Flocal loss损失函数惩罚预测前景点或背景点错误的标签。Flocal loss损失函数作为辅助监督手段可以有效地监督最终预测结果的准确性。
在一些实施例中,步骤S400中三维目标检测框的生成步骤包括:先预先定义三维目标检测框的长、宽和高,再将预测中心点的特征作为输入,使用一层全连接层输出相对预先定义的长、宽和高的差量和旋转角度,从而得到最终的三维目标检测框。这样的操作使最终生成的三维目标检测框更符合实际情况。
第二方面,本申请提供了一种辅助点云目标检测的系统,该系统包括:
提取模块,提取模块被配置用以将初始目标点云集从整体点云场景中分割出;
特征聚合模块,特征聚合模块被配置用以将初始目标点云集进行特征聚合,以获得初始目标点云集中每个采样点的空间结构信息,并将空间结构信息赋值给对应的采样点,得到采样目标点云集;
特征传播模块,特征传播模块被配置用以将采样目标点云集通过三点线性插值扩张回初始目标点云集,并用插值法更新初始目标点云集的中点的特征,依据初始目标点云集的中点的特征,使用一层全连接层输出初始目标点云集中每个采样点是前景点还是背景点的概率;
检测框生成模块,检测框生成模块被配置用以将采样目标点云集输入到多层感知机中,输出采样目标点云集到对应的真实物体中心点的偏移量,再将偏移量与采样目标点云集的特征相加后得到预测中心点的特征,最后根据预测中心点的特征生成三维目标检测框。
在一些实施例中,特征聚合模块包括:
下采样模块,下采样模块被配置用以对初始目标点云集进行下采样得到K个兴趣采样点;
点挑选模块,点挑选模块被配置用以对兴趣采样点进行挑选得到K’个质量采样点;
赋权模块,赋权模块被配置用以对质量采样点周围的临近点进行赋权得到赋权后每个临近点的特征矩阵;
采样点更新模块,采样点更新模块被配置用以利用赋权后的临近点的特征更新初始目标点云集内的采样点特征得到过程目标点云集;
循环模块,循环模块被配置用以对过程目标点云集进行下采样得到新的K个兴趣采样点再重复S202-S204操作得到第二过程目标点云集或采样目标点云集,当得到第二过程目标点云集时重复S205步骤直至最终得到采样目标点云集。
特征聚合模块中多个模块的组合作用可以使过程目标点云集能够很好地感知空间结构,使得最终的三维目标检测框的中心点预测更精确,同时通过下采样操作减少需处理的采样点数量,提高运算速度,实现既高效又精确。
第三方面,本申请提供了一种计算机可读存储介质,介质中存储有计算机程序,在计算机程序被处理器执行时,实施如上述第一方面中任一项所述的方法。
本申请实施例提供的一种辅助点云目标检测的方法及系统具有如下优势,1、通过将初始目标点云集进行特征聚合,以获得初始目标点云集中每个采样点的空间结构信息,并将空间结构信息赋值给对应的所述采样点,得到采样目标点云集,聚合过程采用下采样减少了处理的采样点数量,提高运算速度,使本方法更具高效性;2、通过将采样目标点云集通过三点线性插值扩张回初始目标点云集,并用插值法更新初始目标点云集的中点的特征,依据初始目标点云集的中点的特征,使用一层全连接层输出初始目标点云集中每个采样点是前景点还是背景点的概率,使得最终语义分割的效果更明显,从而使点云目标检测的显示结果更明显。3、将采样目标点云集输入到多层感知机中,输出采样目标点云集到对应的真实物体中心点的偏移量,再将偏移量与采样目标点云集的特征相加后得到预测中心点的特征,最后根据预测中心点的特征生成三维目标检测框,能够得到精确的三维目标检测框位置,使本方法更具精确性。
附图说明
通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:
图1是根据本发明的实施例示例性基础流程图;
图2是根据本发明的实施例的一种辅助点云目标检测的方法中的特征聚合步骤的流程示意图;
图3是根据本发明的实施例的一种辅助点云目标检测的系统的结构示意图。
图4是根据本发明的实施例的一种辅助点云目标检测的系统中的特征聚合模块的结构示意图。
具体实施方式
下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释相关发明,而非对该发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与有关发明相关的部分。
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。
图1示出了本发明一种辅助点云目标检测的方法的示例性基础流程。
如图1所示,该基础流程包括:
步骤S100、将初始目标点云集从整体点云场景中分割出;
在本发明的一些实施例中,采用全像素语义分割方法将初始目标点云集从整体点云场景中分割出,假设初始目标点云集为点集A。语义分割方法能够在像素级别上对每个像素进行分类,使得同一类的像素被归为同一类,更利于提取初始目标点云集。
步骤S200、将初始目标点云集进行特征聚合,以获得初始目标点云集中每个采样点的空间结构信息,并将所述空间结构信息赋值给对应的所述采样点,得到采样目标点云集;
结合图2所示,在本发明的一些实施例中,步骤S200的具体实现方式包括:
S201、对初始目标点云集进行下采样得到K个兴趣采样点;具体操作方式为:输入点集A,利用基于距离的最远点采样或者基于特征值的最远点采样的独立采样,对初始目标点云集中的采样点进行下采样,经过下采样后得到K个兴趣采样点。这里基于距离最远点的采样方法能更好地保持点云形状,基于特征值的最远点采样能够获取尽可能多的前景点,对他们进行独立采样使得最终得到的K个兴趣采样点兼具两者的优势。
S202、对兴趣采样点进行挑选得到K’个质量采样点;具体操作方式为:对K个兴趣采样点进行去噪,利用兴趣采样点周围的临近点的数量以及临近点到兴趣采样点的距离信息,通过特征学习得到每个兴趣采样点的好坏分数,根据好坏分数,从K个兴趣采样点中选取前K’个质量较好的质量采样点。在S201得到的K个兴趣采样点中可能包含空间结构信息比较稀疏的点或者本身为噪点的采样点,在步骤202中可对其进行去噪,并通过特征学习的方式得到每个采样点的质量好坏分数,将采样点按质量好坏分数的高低进行排序,选取质量分数好的前K’个质量采样点。质量采样点相对兴趣采样点保留了其空间结构信息较为丰富、质量分数较为高的采样点集。
S203、对质量采样点周围的临近点进行赋权得到赋权后每个临近点的特征矩阵;具体操作方式为:针对K’个质量采样点以其自身为圆心,在半径为r的球形区域内随机采样m个临近点,将质量采样点的特征、临近点的特征及临近点与所述质量采样点的相对坐标作为输入计算每个临近点对质量采样点的贡献程度,求每个临近点的特征与其对质量采样点的贡献程度的乘积得到赋权后每个临近点的特征。贡献程度的取值范围为0~1。这样的设置可以使赋权结果更合理,科学。
本实施例中,假设W∈Rk′*m为所有临近点贡献程度矩阵,F∈Rk′*m*c为所有临近点自身特征向量的集合,c为临近点特征的深度,经过赋予临近点权重模块后得到的特征矩阵为F′=W*F,其中F′∈Rk′*m*c。
S204、利用赋权后的临近点的特征更新初始目标点云集内的采样点特征得到过程目标点云集;具体操作方式为:利用MaxPooling操作获取赋权后临近点的特征所对应的每个通道上最明显的特征生成一个新的特征,从而形成过程目标点云集,设为点集B。
本实施例中,对于上一步得到特征矩阵F′∈Rk′*m*c,网络使用一个MaxPooling操作获取特征矩阵F′每个通道上最明显的特征来生成一个新的特征,新的特征可以表示为New_F∈Rk′*c。同时,MaxPooling还可以解决点云无序性的问题。New_F即为点集B的特征集。
S205、对过程目标点云集进行下采样得到新的K个兴趣采样点再重复S202-S204操作得到第二过程目标点云集或采样目标点云集,当得到第二过程目标点云集时重复S205步骤直至最终得到采样目标点云集;具体操作方式为:输入过程目标点云集,利用基于距离的最远点采样和基于特征值的最远点采样的联合采样,对过程目标点云集中的采样点进行下采样,再进行S202-S204操作得到第二过程目标点云集或采样目标点云集,当得到第二过程目标点云集时重复S205步骤直至最终得到采样目标点云集。
步骤S205执行次数为1~4次。每次下采样都可以设置下采样后的点云数,1~4次的执行次数能够更合理地分配下采样的点云数阶梯,使运算时间和最后的三维目标检测框的预测精度都在一个较佳的合理范围内。执行次数太多容易导致运算时间过长,执行次数太少又容易导致精确度不够。
本实施例中,假设重复次数为2次。则对点集B进行下采样过程先进行基于距离的最远点采样得到点集C,再进行基于特征值的最远点采样得到点集D,再对点集C和点集D进行步骤202-204操作得到点集C和点集D的特征集,此时点集C和点集D共同构成第二过程目标点云集。再将第二过程点云集进行下采样,此时由基于距离的最远点采样得到的点集C继续按照基于距离最远点采样得到点集E,由基于特征值最远点采样得到的点集D继续按照基于特征值最远点采样得到点集G,再对点集E和点集G进行步骤202-204操作得到点集E和点集G的特征集,此时点集E和点集G共同构成采样目标点云集。
如图1所示,该基础流程还包括步骤S300、将采样目标点云集通过三点线性插值扩张回初始目标点云集,并用插值法更新所述初始目标点云集的中点的特征,依据初始目标点云集的中点的特征,使用一层全连接层输出初始目标点云集中每个采样点是前景点还是背景点的概率;
本实施例中,本步骤输入的采样目标点云集主要用到的是基于距离最远点采样得到的点集E,然后通过三点线性插值法(该方法为现有技术,不再拓展讲述)将点集E扩张回高分辨率点集C并更新点集C中点的特征,再对点集C进行三点线性插值法扩张回更高分辨率点集B并更新点集B中点的特征,再对点集B进行三点线性插值法扩张回最原始的高分辨率点云集场景,即为点集A,并更新点集A中点的特征。最后使用一个全连接层输出每个点是前景点还是背景点的概率。
在本实施例的一些可实现方式中,还可以用Flocal loss损失函数惩罚预测前景点或背景点错误的标签。Flocal loss损失函数作为辅助监督手段可以有效地监督最终预测结果的准确性。
步骤S400、将采样目标点云集输入到多层感知机中,输出采样目标点云集到对应的真实物体中心点的偏移量,再将偏移量与采样目标点云集的特征相加后得到预测中心点的特征,最后根据预测中心点的特征生成三维目标检测框。
本实施例中,采样目标点云集主要用到的是基于特征值最远点采样得到的点集G,将点集G的特征输入到多层感知机(MLP)中,输出点集G到对应的真实物体中心点的偏移量,并将偏移量和点集G坐标相加后得到预测的中心点位置。对于预测中心点的特征使用步骤203赋予临近点权重和步骤204更新采样点即可得到。
在本实施例的一些可实现方式中,生成三维目标检测框的方式可以通过先预先定义三维目标检测框的长、宽和高,再将预测中心点的特征作为输入,使用一层全连接层输出相对预先定义的长、宽和高的差量和旋转角度,从而得到最终的三维目标检测框。
为了能够实现上述方法,本申请还提供了一种辅助点云目标检测的系统。
如图3所示,一种辅助点云目标检测的系统500,包括提取模块510,特征聚合模块520、特征传播模块530和检测框生成模块540。其中,
提取模块510,用以将初始目标点云集从整体点云场景中分割出。
特征聚合模块520,用以将初始目标点云集进行特征聚合,以获得初始目标点云集中每个采样点的空间结构信息,并将空间结构信息赋值给对应的采样点,得到采样目标点云集。
结合图4所示,在本发明的一些实施例中,特征聚合模块520包括:
下采样模块521,用以对初始目标点云集进行下采样得到K个兴趣采样点;
点挑选模块522,用以对兴趣采样点进行挑选得到K’个质量采样点;
赋权模块523,用以对质量采样点周围的临近点进行赋权得到赋权后每个临近点的特征矩阵;
采样点更新模块524,用以利用所述赋权后的临近点的特征更新初始目标点云集内的采样点特征得到过程目标点云集;
循环模块525用以对过程目标点云集进行下采样得到新的K个兴趣采样点再重复S202-S204操作得到第二过程目标点云集或采样目标点云集,当得到第二过程目标点云集时重复S205步骤直至最终得到采样目标点云集。
如图3所示,一种辅助点云目标检测的系统500还包括:特征传播模块530,用以将采样目标点云集通过三点线性插值扩张回初始目标点云集,并用插值法更新初始目标点云集的中点的特征,依据初始目标点云集的中点的特征,使用一层全连接层输出初始目标点云集中每个采样点是前景点还是背景点的概率。
检测框生成模块540,用以将采样目标点云集输入到多层感知机中,输出采样目标点云集到对应的真实物体中心点的偏移量,再将偏移量与采样目标点云集的特征相加后得到预测中心点的特征,最后根据所述预测中心点的特征生成三维目标检测框。
特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。本申请所述的计算机可读存储介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、设备或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本申请中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、设备或者器件使用或者与其结合使用。而在本申请中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读存储介质,该计算机可读存储介质可以发送、传播或者传输用于由指令执行系统、设备或者器件使用或者与其结合使用的程序。计算机可读存储介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言或其组合来编写用于执行本申请的操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
附图中的流程图和框图,图示了按照本申请各种实施例的方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本申请实施例中所涉及到的模块可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的模块也可以设置在处理器中,例如,可以描述为:一种处理器包括获取模块、分析模块和输出模块。其中,这些模块的名称在某种情况下并不构成对该模块本身的限定。
以上描述仅为本申请的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本申请中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述发明构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本申请中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。