发明内容
本申请实施例的目的在于提供一种基于平均滤波的直线段平滑方法、装置、设备及存储介质,用以对根据目标曲线生成的逼近直线段进行插补,以使得加工机器能够通过逼近直线段模拟目标曲线对应的加工路径,进而能够对待加工工件进行加工。与此同时,本申请实施例提供的一种基于平均滤波的直线段平滑方法、装置、设备及存储介质还用于对逼近直线段进行平滑处理,以使得平滑后的逼近直线段与目标曲线相似度更高,进而提高待交加工工件的加工品质。再方面,本申请实施例提供的一种基于平均滤波的直线段平滑方法、装置、设备及存储介质还用于解决现有小线段平滑处理存在的计算量大、处理效率低的问题。
为此,本申请第一方面提供一种基于平均滤波的直线段平滑方法,所述方法包括:
获取目标曲线,所述目标曲线用于加工待加工工件;
对所述目标曲线进行插补并得到所述目标曲线的逼近直线段,所述逼近直线段包括若干个插补点;
从所述若干个插补点中确定至少一个目标插补点;
确定所述目标插补点的右相邻插补点的平滑距离、所述目标插补点的左相邻插补点的平滑距离、第一距离和第二距离,其中,所述第一距离表征所述右相邻插补点与所述左相邻插补点之间的距离,所述第二距离表征所述目标插补点与所述左相邻插补点之间的距离;
根据所述右相邻插补点的平滑距离、所述左相邻插补点的平滑距离、所述第一距离和所述第二距离确定所述目标插补点的平滑距离;
至少根据所述目标插补点的平滑距离确定目标平滑点的坐标;
根据所述目标平滑点的坐标确定新插补点,所述新插补点用于平滑所述逼近直线段,以通过平滑后的逼近直线段加工所述待加工工件。
本申请第一方面的方法通过对目标曲线进行插补可得到目标曲线的逼近直线段,其中该逼近直线段包括若干个插补点,进而能够在若干个插补点中确定至少一个目标插补点,进而确定目标插补点的右相邻插补点的平滑距离、目标插补点的左相邻插补点的平滑距离、第一距离和第二距离,其中,第一距离表征右相邻插补点与左相邻插补点之间的距离,第二距离表征目标插补点与左相邻插补点之间的距离。另一方面,根据右相邻插补点的平滑距离、左相邻插补点的平滑距离、第一距离和第二距离能够确定目标插补点的平滑距离,进而至少根据目标插补点的平滑距离可确定目标平滑点的坐标,最终根据目标平滑点的坐标能够确定新插补点,新插补点用于平滑逼近直线段,以通过平滑后的逼近直线段加工待加工工件。
与现有技术相比,本申请第一方面的方法能够根据右相邻插补点的平滑距离、左相邻插补点的平滑距离、第一距离和第二距离能够确定目标插补点的平滑距离,即通过右相邻插补点的平滑距离、左相邻插补点的平滑距离、第一距离和第二距离限制目标插补点的平滑距离,避免平滑点与原插补点产生较大的偏移,与此同时,本申请第一方法具有计算量小、平滑处理效率高的优点。而现有技术为了在平滑过程中,避免平滑点与原插补点产生较大的偏移,通常采用的是二分迭代法,不断调整平滑处理的点的平滑距离的值,使得平滑处理点与原始点的偏移距离尽量接近设定误差值,其中,不断调整平滑处理的点的平滑距离的值增加了计算量,也降低了平滑处理效率。
在本申请第一方面中,作为一种可选的实施方式,在所述从所述若干个插补点中确定至少一个目标插补点之后,所述确定所述目标插补点的右相邻插补点的平滑距离、所述目标插补点的左相邻插补点的平滑距离、第一距离和第二距离之前,所述方法还包括:
根据所述目标插补点确定平滑对象;
以及,至少根据所述目标插补点的平滑距离确定目标平滑点的坐标,包括:
根据所述目标插补点的平滑距离和所述平滑对象确定所述目标平滑点的坐标。
在本可选的实施方式中,根据目标插补点的平滑距离和平滑对象能够确定目标平滑点的坐标。
在本申请第一方面中,作为一种可选的实施方式,所述根据所述目标插补点确定平滑对象,包括:
获取以所述目标插补点为中心,向前以及向后各搜索长度G的路径作为平滑计算路径,同时,标记所述平滑计算路径中的起点为Os、所述平滑计算路径的终点为Oe;
将OsOe范围内所有插补点组成一个点群Pgroup;
并将所述点群Pgroup作为所述平滑对象。
在本可选的的实施方式中,通过以所述目标插补点为中心,向前以及向后各搜索长度Ls的路径作为平滑计算路径。
在本申请第一方面中,作为一种可选的实施方式,所述根据所述目标插补点的平滑距离和所述平滑对象确定目标平滑点的坐标的计算式为:
其中,x′表示所述目标平滑点的x轴坐标,y′表示所述目标平滑点的y轴坐标,z′表示所述目标平滑点的z轴坐标,Ls表示所述目标插补点的平滑距离,(xi,yi,zi)表示所述点群Pgroup中OiOi+1的起始点坐标,(vxi,vyi,vzi)表示所述点群Pgroup中OiOi+1的单位向量,Li表示所述点群Pgroup中OiOi+1的长度,i表示所述点群Pgroup中插补点的下标。
在本可选的实施方式中,通过上述计算式能够精确计算目标平滑点的坐标。
在本申请第一方面中,所述根据所述右相邻插补点的平滑距离、所述左相邻插补点的平滑距离、所述第一距离和所述第二距离确定所述目标插补点的平滑距离的计算式为:
其中,Ls表示所述目标插补点的平滑距离、S表示所述第二距离、Lsn+1表示所述右相邻插补点的平滑距离、Lsn表示所述左相邻插补点的平滑距离、L表示所述第一距离。
在本可选的实施方式中,通过目标插补点的平滑距离的计算式可计算得到精确的目标插补点的平滑距离,
在本申请第一方面中,作为一种可选的实施方式,在所述获取目标曲线之后,所述对所述目标曲线进行插补并得到所述目标曲线的逼近直线段之前,所述装置还包括:
对所述目标曲线进行速度前瞻性计算并得到计算结果;
以及,所述对所述目标曲线进行插补并得到所述目标曲线的逼近直线段,包括:
根据所述计算结果和预设插补算法对所述目标曲线进行插补,并得到所述目标曲线的逼近直线段。
在本可选的实施方式中,根据速度前瞻性计算的计算结果和预设插补算法能够对目标曲线进行插补,进而能够得到目标曲线的逼近直线段。
本申请第二方面公开一种基于平均滤波的直线段平滑装置,所述方法包括:
获取模块,用于获取目标曲线;
插补计算模块,用于对所述目标曲线进行插补并得到所述目标曲线的逼近直线段,所述逼近直线段包括若干个插补点;
第一确定模块,用于从所述若干个插补点中确定至少一个目标插补点;
第二确定模块,用于确定所述目标插补点的右相邻插补点的平滑距离、所述目标插补点的左相邻插补点的平滑距离、第一距离和第二距离,其中,所述第一距离表征所述右相邻插补点与所述左相邻插补点之间的距离,所述第二距离表征所述目标插补点与所述左相邻插补点之间的距离;
第三确定模块,用于根据所述右相邻插补点的平滑距离、所述左相邻插补点的平滑距离、所述第一距离和所述第二距离确定所述目标插补点的平滑距离;
第四确定模块,用于至少根据所述目标插补点的平滑距离确定目标平滑点的坐标;
第五确定模块,用于根据所述目标平滑点的坐标确定新插补点,所述新插补点用于平滑所述逼近直线段。
本申请第二方面的装置通过执行基于平均滤波的直线段平滑方法,能够对目标曲线进行插补而得到目标曲线的逼近直线段,其中该逼近直线段包括若干个插补点,进而能够在若干个插补点中确定至少一个目标插补点,进而确定目标插补点的右相邻插补点的平滑距离、目标插补点的左相邻插补点的平滑距离、第一距离和第二距离,其中,第一距离表征右相邻插补点与左相邻插补点之间的距离,第二距离表征目标插补点与左相邻插补点之间的距离。另一方面,根据右相邻插补点的平滑距离、左相邻插补点的平滑距离、第一距离和第二距离能够确定目标插补点的平滑距离,进而至少根据目标插补点的平滑距离可确定目标平滑点的坐标,最终根据目标平滑点的坐标能够确定新插补点,新插补点用于平滑逼近直线段,以通过平滑后的逼近直线段加工待加工工件。
与现有技术相比,本申请第二方面的装置能够根据右相邻插补点的平滑距离、左相邻插补点的平滑距离、第一距离和第二距离能够确定目标插补点的平滑距离,即通过右相邻插补点的平滑距离、左相邻插补点的平滑距离、第一距离和第二距离限制目标插补点的平滑距离,避免平滑点与原插补点产生较大的偏移,与此同时,本申请第二方面的装置具有计算量小、平滑处理效率高的优点。而现有技术为了在平滑过程中,避免平滑点与原插补点产生较大的偏移,通常采用的是二分迭代法,不断调整平滑处理的点的平滑距离的值,使得平滑处理点与原始点的偏移距离尽量接近设定误差值,其中,不断调整平滑处理的点的平滑距离的值增加了计算量,也降低了平滑处理效率。
在本申请第二方面中,作为一种可选的实施方式,所述装置还包括:
第六确定模块,用于根据所述目标插补点确定平滑对象;
以及,所述第四确定模块执行所述至少根据所述目标插补点的平滑距离确定目标平滑点的坐标,包括:
根据所述目标插补点的平滑距离和所述平滑对象确定所述目标平滑点的坐标。
在本可选的实施方式中,根据目标插补点的平滑距离和平滑对象能够确定目标平滑点的坐标。
本申请第三方面提供一种基于平均滤波的直线段平滑设备,该设备包括:
处理器;以及
存储器,配置用于存储机器可读指令,所述指令在由所述处理器执行时,执行本申请第一方面的基于平均滤波的直线段平滑方法。
本申请第三方面的设备通过执行基于平均滤波的直线段平滑方法,能够对目标曲线进行插补而得到目标曲线的逼近直线段,其中该逼近直线段包括若干个插补点,进而能够在若干个插补点中确定至少一个目标插补点,进而确定目标插补点的右相邻插补点的平滑距离、目标插补点的左相邻插补点的平滑距离、第一距离和第二距离,其中,第一距离表征右相邻插补点与左相邻插补点之间的距离,第二距离表征目标插补点与左相邻插补点之间的距离。另一方面,根据右相邻插补点的平滑距离、左相邻插补点的平滑距离、第一距离和第二距离能够确定目标插补点的平滑距离,进而至少根据目标插补点的平滑距离可确定目标平滑点的坐标,最终根据目标平滑点的坐标能够确定新插补点,新插补点用于平滑逼近直线段,以通过平滑后的逼近直线段加工待加工工件。
与现有技术相比,本申请第三方面的设备能够根据右相邻插补点的平滑距离、左相邻插补点的平滑距离、第一距离和第二距离能够确定目标插补点的平滑距离,即通过右相邻插补点的平滑距离、左相邻插补点的平滑距离、第一距离和第二距离限制目标插补点的平滑距离,避免平滑点与原插补点产生较大的偏移,与此同时,本申请第三方面的设备具有计算量小、平滑处理效率高的优点。而现有技术为了在平滑过程中,避免平滑点与原插补点产生较大的偏移,通常采用的是二分迭代法,不断调整平滑处理的点的平滑距离的值,使得平滑处理点与原始点的偏移距离尽量接近设定误差值,其中,不断调整平滑处理的点的平滑距离的值增加了计算量,也降低了平滑处理效率。
本申请第四方面公开一种存储介质,所述存储介质存储有计算机程序,所述计算机程序被处理器执行本申请第一方面的基于平均滤波的直线段平滑方法。
本申请第四方面的存储介质通过执行基于平均滤波的直线段平滑方法,能够对目标曲线进行插补而得到目标曲线的逼近直线段,其中该逼近直线段包括若干个插补点,进而能够在若干个插补点中确定至少一个目标插补点,进而确定目标插补点的右相邻插补点的平滑距离、目标插补点的左相邻插补点的平滑距离、第一距离和第二距离,其中,第一距离表征右相邻插补点与左相邻插补点之间的距离,第二距离表征目标插补点与左相邻插补点之间的距离。另一方面,根据右相邻插补点的平滑距离、左相邻插补点的平滑距离、第一距离和第二距离能够确定目标插补点的平滑距离,进而至少根据目标插补点的平滑距离可确定目标平滑点的坐标,最终根据目标平滑点的坐标能够确定新插补点,新插补点用于平滑逼近直线段,以通过平滑后的逼近直线段加工待加工工件。
与现有技术相比,本申请第四方面的存储介质能够根据右相邻插补点的平滑距离、左相邻插补点的平滑距离、第一距离和第二距离能够确定目标插补点的平滑距离,即通过右相邻插补点的平滑距离、左相邻插补点的平滑距离、第一距离和第二距离限制目标插补点的平滑距离,避免平滑点与原插补点产生较大的偏移,与此同时,本申请第四方面的存储介质具有计算量小、平滑处理效率高的优点。而现有技术为了在平滑过程中,避免平滑点与原插补点产生较大的偏移,通常采用的是二分迭代法,不断调整平滑处理的点的平滑距离的值,使得平滑处理点与原始点的偏移距离尽量接近设定误差值,其中,不断调整平滑处理的点的平滑距离的值增加了计算量,也降低了平滑处理效率。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。
实施例一
请参阅图1,图1是本申请实施例提供的一种基于平均滤波的直线段平滑方法的流程示意图。如图1所示,本申请实施例的方法包括步骤:
101、获取目标曲线,目标曲线用于加工待加工工件;
102、对目标曲线进行插补并得到目标曲线的逼近直线段,逼近直线段包括若干个插补点;
103、从若干个插补点中确定至少一个目标插补点;
104、确定目标插补点的右相邻插补点的平滑距离、目标插补点的左相邻插补点的平滑距离、第一距离和第二距离,其中,第一距离表征右相邻插补点与左相邻插补点之间的距离,第二距离表征目标插补点与左相邻插补点之间的距离;
105、根据右相邻插补点的平滑距离、左相邻插补点的平滑距离、第一距离和第二距离确定目标插补点的平滑距离;
106、至少根据目标插补点的平滑距离确定目标平滑点的坐标;
107、根据目标平滑点的坐标确定新插补点,新插补点用于平滑逼近直线段,以通过平滑后的逼近直线段加工待加工工件。
在本申请实施例中,待加工工件可以家居,例如,可以是门、窗。相应地,目标曲线可以是门或窗的轮廓对应的曲线。
在本申请实施例中,当需要对待加工工件时,可根据待加工工件的轮廓或者其他设计要求确定待加工工件的目标曲线,进而通过CAM软件和设置CAM软件的模型公差精度参数,可生成目标曲线对应的逼近直线段。
在本申请实施例中,逼近直线段包括若干个插补点,例如,包括10个插补点,其中,若干个插补点依次通过直线连接而得到逼近直线段。需要说明的是,逼近直线段中的每个插补点的坐标作为加工路径信息记载在NC代码中,进而加工器可通过执行NC代码沿逼近直线段对待加工工件进行加工。
示例性地,请参阅图2,图2是本申请实施例公开的一种逼近直线段的结构示意图。如图2所示,逼近直线段C可用于模拟目标曲线A,其中,逼近直线段C由若干个插补点B相连构成。
在本申请实施例中,请参阅图4,图4是本申请实施例公开的一种逼近直线段中插补点与平滑点偏移示意图。如图4所示,在由目标平滑点和插补点构成的平滑曲线上,目标平滑点O’与目标插补点O之间存在偏移距离,因此如果不对插补点的平滑距离进行限制,则平滑处理得到的平滑点与插补点之间有偏移距离,进而导致误差,故需要对根据目标插补点的平滑距离确定目标平滑点,使得平滑处理得到的平滑点与插补点之间的偏移距离满足预设要求。
本申请实施例为了使得平滑处理得到的平滑点与原插补点之间的偏移距离满足预设要求,进而通过右相邻插补点的平滑距离、左相邻插补点的平滑距离、第一距离和第二距离可确定目标插补点的平滑距离,
综上可见,本申请实施例的方法通过对目标曲线进行插补可得到目标曲线的逼近直线段,其中该逼近直线段包括若干个插补点,进而能够在若干个插补点中确定至少一个目标插补点,进而确定目标插补点的右相邻插补点的平滑距离、目标插补点的左相邻插补点的平滑距离、第一距离和第二距离,其中,第一距离表征右相邻插补点与左相邻插补点之间的距离,第二距离表征目标插补点与左相邻插补点之间的距离。另一方面,根据右相邻插补点的平滑距离、左相邻插补点的平滑距离、第一距离和第二距离能够确定目标插补点的平滑距离,进而至少根据目标插补点的平滑距离可确定目标平滑点的坐标,最终根据目标平滑点的坐标能够确定新插补点,新插补点用于平滑逼近直线段,以通过平滑后的逼近直线段加工待加工工件。
再一方面,与现有技术相比,本申请实施例的方法能够根据右相邻插补点的平滑距离、左相邻插补点的平滑距离、第一距离和第二距离能够确定目标插补点的平滑距离,即通过右相邻插补点的平滑距离、左相邻插补点的平滑距离、第一距离和第二距离限制目标插补点的平滑距离,避免平滑点与原插补点产生较大的偏移,与此同时,本申请实施例的具有计算量小、平滑处理效率高的优点。而现有技术为了在平滑过程中,避免平滑点与原插补点产生较大的偏移,通常采用的是二分迭代法,不断调整平滑处理的点的平滑距离的值,使得平滑处理点与原始点的偏移距离尽量接近设定误差值,其中,不断调整平滑处理的点的平滑距离的值增加了计算量,也降低了平滑处理效率。
在本申请实施例中,作为一种可选的实施方式,在步骤103:从若干个插补点中确定至少一个目标插补点之后,步骤104:确定目标插补点的右相邻插补点的平滑距离、目标插补点的左相邻插补点的平滑距离、第一距离和第二距离之前,本申请实施例的方法还包括步骤:
根据目标插补点确定平滑对象。
相应地,步骤106:至少根据目标插补点的平滑距离确定目标平滑点的坐标,包括子步骤:
根据目标插补点的平滑距离和平滑对象确定目标平滑点的坐标。
在本可选的实施方式中,根据目标插补点的平滑距离和平滑对象能够确定目标平滑点的坐标。
在本可选的的实施方式中,进一步可选地,根据目标插补点确定平滑对象,包括:
获取以目标插补点为中心,向前以及向后各搜索长度G的路径作为平滑计算路径,同时,标记平滑计算路径中的起点为Os、平滑计算路径的终点为Oe;
将OsOe范围内所有插补点组成一个点群Pgroup;
并将点群Pgroup作为平滑对象。
在本可选的的实施方式中,通过以目标插补点为中心,向前以及向后各搜索长度Ls的路径作为平滑计算路径。
示例性地,请参阅图3,图3是本申请实施例提供的一种平滑对象的示意图。如图3所示,对于一条包括插补点On-3、Os、On-2、On-1、On、On+1、On+2、Oe、On+3的逼近直线段,插补点On为目标插补点,进而以目标插补点On为中心,向右以及向左各搜索G长度得到一平滑计算路径,该平滑计算路径内的所有插补点构成一个点群Pgroup,其中,点群Pgroup=(Os、On-2、On-1、On、On+1、On+2、Oe),且插补点Os作为平滑计算路径中的起点,而插补点Oe作为平滑计算路径中的终点。
在本申请实施例中,作为一种可选的实施方式,根据目标插补点的平滑距离和平滑对象确定目标平滑点的坐标的计算式为:
其中,x′表示目标平滑点的x轴坐标,y′表示目标平滑点的y轴坐标,z′表示目标平滑点的z轴坐标,G表示目标插补点的平滑距离,(xi,yi,zi)表示点群Pgroup中OiOi+1的起始点坐标,(vxi,vyi,vzi)表示点群Pgroup中OiOi+1的单位向量,Li表示点群Pgroup中OiOi+1的长度,i表示点群Pgroup中插补点的下标。
在本申请实施例中,为了便于描述,对点群Pgroup=(Os、On-2、On-1、On、On+1、On+2、Oe)中插补点进行重新排序,重新排序后的点群Pgroup中每个插补点的下标用i表示。
在本可选的实施方式中,通过上述计算式能够精确计算目标平滑点的坐标。
可选地,本申请实施例中,根据右相邻插补点的平滑距离、左相邻插补点的平滑距离、第一距离和第二距离确定目标插补点的平滑距离的计算式为:
其中,Ls表示目标插补点的平滑距离、S表示第二距离、Lsn+1表示右相邻插补点的平滑距离、Lsn表示左相邻插补点的平滑距离、L表示第一距离。
示例性地,请参阅图5,图5是本申请实施例提供的一种确定目标插补点的平滑距离的示意图。如图5所示,目标插补点为点O,此时,以点O向左向前各伸展G而得到点群Pgroup=(Os,On-1,On,O、On+1,On+2、Oe),其中,点On是点O的左相邻插补点,S为点O与点On之间的距离,即第二距离。
可见,本可选的实施方式通过目标插补点的平滑距离的计算式,可计算得到精确的目标插补点的平滑距离,
在本申请实施例中,作为一种可选的实施方式,在步骤101:获取目标曲线之后,步骤102:对目标曲线进行插补并得到目标曲线的逼近直线段之前,本申请实施例的方法还包括步骤:
对目标曲线进行速度前瞻性计算并得到计算结果。
相应地,步骤102:对目标曲线进行插补并得到目标曲线的逼近直线段,包括子步骤:
根据计算结果和预设插补算法对目标曲线进行插补,并得到目标曲线的逼近直线段。
在本可选的实施方式中,根据速度前瞻性计算的计算结果和预设插补算法能够对目标曲线进行插补,进而能够得到目标曲线的逼近直线段。
实施例二
请参阅图6,图6是本申请实施例提供的一种基于平均滤波的直线段平滑装置的结构示意图。如图6所示,本申请实施例的装置包括:
获取模块201,用于获取目标曲线;
插补计算模块202,用于对目标曲线进行插补并得到目标曲线的逼近直线段,逼近直线段包括若干个插补点;
第一确定模块203,用于从若干个插补点中确定至少一个目标插补点;
第二确定模块204,用于确定目标插补点的右相邻插补点的平滑距离、目标插补点的左相邻插补点的平滑距离、第一距离和第二距离,其中,第一距离表征右相邻插补点与左相邻插补点之间的距离,第二距离表征目标插补点与左相邻插补点之间的距离;
第三确定模块205,用于根据右相邻插补点的平滑距离、左相邻插补点的平滑距离、第一距离和第二距离确定目标插补点的平滑距离;
第四确定模块206,用于至少根据目标插补点的平滑距离确定目标平滑点的坐标;
第五确定模块207,用于根据目标平滑点的坐标确定新插补点,新插补点用于平滑逼近直线段。
在本申请实施例中,待加工工件可以家居,例如,可以是门、窗。相应地,目标曲线可以是门或窗的轮廓对应的曲线。
在本申请实施例中,当需要对待加工工件时,可根据待加工工件的轮廓或者其他设计要求确定待加工工件的目标曲线,进而通过CAM软件和设置CAM软件的模型公差精度参数,可生成目标曲线对应的逼近直线段。
在本申请实施例中,逼近直线段包括若干个插补点,例如,包括10个插补点,其中,若干个插补点依次通过直线连接而得到逼近直线段。需要说明的是,逼近直线段中的每个插补点的坐标作为加工路径信息记载在NC代码中,进而加工器可通过执行NC代码沿逼近直线段对待加工工件进行加工。
示例性地,请参阅图2,图2是本申请实施例公开的一种逼近直线段的结构示意图。如图2所示,逼近直线段C可用于模拟目标曲线A,其中,逼近直线段C由若干个插补点B相连构成。
在本申请实施例中,请参阅图4,图4是本申请实施例公开的一种逼近直线段中插补点与平滑点偏移示意图。如图4所示,在由目标平滑点和插补点构成的平滑曲线上,目标平滑点O’与目标插补点O之间存在偏移距离,因此如果不对插补点的平滑距离进行限制,则平滑处理得到的平滑点与插补点之间有偏移距离,进而导致误差,故需要对根据目标插补点的平滑距离确定目标平滑点,使得平滑处理得到的平滑点与插补点之间的偏移距离满足预设要求。
本申请实施例为了使得平滑处理得到的平滑点与原插补点之间的偏移距离满足预设要求,进而通过右相邻插补点的平滑距离、左相邻插补点的平滑距离、第一距离和第二距离可确定目标插补点的平滑距离,
综上可见,本申请实施例的装置通过对目标曲线进行插补可得到目标曲线的逼近直线段,其中该逼近直线段包括若干个插补点,进而能够在若干个插补点中确定至少一个目标插补点,进而确定目标插补点的右相邻插补点的平滑距离、目标插补点的左相邻插补点的平滑距离、第一距离和第二距离,其中,第一距离表征右相邻插补点与左相邻插补点之间的距离,第二距离表征目标插补点与左相邻插补点之间的距离。另一方面,根据右相邻插补点的平滑距离、左相邻插补点的平滑距离、第一距离和第二距离能够确定目标插补点的平滑距离,进而至少根据目标插补点的平滑距离可确定目标平滑点的坐标,最终根据目标平滑点的坐标能够确定新插补点,新插补点用于平滑逼近直线段,以通过平滑后的逼近直线段加工待加工工件。
再一方面,与现有技术相比,本申请实施例的装置能够根据右相邻插补点的平滑距离、左相邻插补点的平滑距离、第一距离和第二距离能够确定目标插补点的平滑距离,即通过右相邻插补点的平滑距离、左相邻插补点的平滑距离、第一距离和第二距离限制目标插补点的平滑距离,避免平滑点与原插补点产生较大的偏移,与此同时,本申请实施例的具有计算量小、平滑处理效率高的优点。而现有技术为了在平滑过程中,避免平滑点与原插补点产生较大的偏移,通常采用的是二分迭代法,不断调整平滑处理的点的平滑距离的值,使得平滑处理点与原始点的偏移距离尽量接近设定误差值,其中,不断调整平滑处理的点的平滑距离的值增加了计算量,也降低了平滑处理效率。
在本申请实施例中,作为一种可选的实施方式,本申请实施例的装置还包括:
第六确定模块,用于根据目标插补点确定平滑对象。
相应地,第四确定模块207执行至少根据目标插补点的平滑距离确定目标平滑点的坐标的具体方式为:
根据目标插补点的平滑距离和平滑对象确定目标平滑点的坐标。
在本可选的实施方式中,根据目标插补点的平滑距离和平滑对象能够确定目标平滑点的坐标。
在本可选的的实施方式中,进一步可选地,根据目标插补点确定平滑对象,包括:
获取以目标插补点为中心,向前以及向后各搜索长度G的路径作为平滑计算路径,同时,标记平滑计算路径中的起点为Os、平滑计算路径的终点为Oe;
将OsOe范围内所有插补点组成一个点群Pgroup;
并将点群Pgroup作为平滑对象。
在本可选的的实施方式中,通过以目标插补点为中心,向前以及向后各搜索长度Ls的路径作为平滑计算路径。
示例性地,请参阅图3,图3是本申请实施例提供的一种平滑对象的示意图。如图3所示,对于一条包括插补点On-3、Os、On-2、On-1、On、On+1、On+2、Oe、On+3的逼近直线段,插补点On为目标插补点,进而以目标插补点On为中心,向右以及向左各搜索G长度得到一平滑计算路径,该平滑计算路径内的所有插补点构成一个点群Pgroup,其中,点群Pgroup=(Os、On-2、On-1、On、On+1、On+2、Oe),且插补点Os作为平滑计算路径中的起点,而插补点Oe作为平滑计算路径中的终点。
在本申请实施例中,作为一种可选的实施方式,根据目标插补点的平滑距离和平滑对象确定目标平滑点的坐标的计算式为:
其中,x′表示目标平滑点的x轴坐标,y′表示目标平滑点的y轴坐标,z′表示目标平滑点的z轴坐标,Ls表示目标插补点的平滑距离,(xi,yi,zi)表示点群Pgroup中OiOi+1的起始点坐标,(vxi,vyi,vzi)表示点群Pgroup中OiOi+1的单位向量,Li表示点群Pgroup中OiOi+1的长度,i表示点群Pgroup中插补点的下标。
在本申请实施例中,为了便于描述,对点群Pgroup=(Os、On-2、On-1、On、On+1、On+2、Oe)中插补点进行重新排序,重新排序后的点群Pgroup中每个插补点的下标用i表示。
在本可选的实施方式中,通过上述计算式能够精确计算目标平滑点的坐标。
可选地,本申请实施例中,根据右相邻插补点的平滑距离、左相邻插补点的平滑距离、第一距离和第二距离确定目标插补点的平滑距离的计算式为:
其中,Ls表示目标插补点的平滑距离、S表示第二距离、Lsn+1表示右相邻插补点的平滑距离、Lsn表示左相邻插补点的平滑距离、L表示第一距离。
示例性地,请参阅图5,图5是本申请实施例提供的一种确定目标插补点的平滑距离的示意图。如图5所示,目标插补点为点O,此时,以点O向左向前各伸展G而得到点群Pgroup=(Os,On-1,On,O、On+1,On+2、Oe),其中,点On是点O的左相邻插补点,S为点O与点On之间的距离,即第二距离。
可见,本可选的实施方式通过目标插补点的平滑距离的计算式,可计算得到精确的目标插补点的平滑距离,
在本申请实施例中,作为一种可选的实施方式,本申请实施例的装置还包括:
速度前瞻性计算模块,用于对目标曲线进行速度前瞻性计算并得到计算结果。
相应地,插补计算模块202执行对目标曲线进行插补并得到目标曲线的逼近直线段的具体方式为:
根据计算结果和预设插补算法对目标曲线进行插补,并得到目标曲线的逼近直线段。
在本可选的实施方式中,根据速度前瞻性计算的计算结果和预设插补算法能够对目标曲线进行插补,进而能够得到目标曲线的逼近直线段。
实施例三
请参阅图7,图7是本申请实施例提供的一种基于平均滤波的直线段平滑设备的结构示意图。如图7所示,该设备包括:
处理器301;以及
存储器302,配置用于存储机器可读指令,指令在由处理器301执行时,执行本申请实施例一的基于平均滤波的直线段平滑方法。
本申请实施例的设备通过执行基于平均滤波的直线段平滑方法,能够对目标曲线进行插补而得到目标曲线的逼近直线段,其中该逼近直线段包括若干个插补点,进而能够在若干个插补点中确定至少一个目标插补点,进而确定目标插补点的右相邻插补点的平滑距离、目标插补点的左相邻插补点的平滑距离、第一距离和第二距离,其中,第一距离表征右相邻插补点与左相邻插补点之间的距离,第二距离表征目标插补点与左相邻插补点之间的距离。另一方面,根据右相邻插补点的平滑距离、左相邻插补点的平滑距离、第一距离和第二距离能够确定目标插补点的平滑距离,进而至少根据目标插补点的平滑距离可确定目标平滑点的坐标,最终根据目标平滑点的坐标能够确定新插补点,新插补点用于平滑逼近直线段,以通过平滑后的逼近直线段加工待加工工件。
与现有技术相比,本申请实施例的设备能够根据右相邻插补点的平滑距离、左相邻插补点的平滑距离、第一距离和第二距离能够确定目标插补点的平滑距离,即通过右相邻插补点的平滑距离、左相邻插补点的平滑距离、第一距离和第二距离限制目标插补点的平滑距离,避免平滑点与原插补点产生较大的偏移,与此同时,本申请实施例的装置具有计算量小、平滑处理效率高的优点。而现有技术为了在平滑过程中,避免平滑点与原插补点产生较大的偏移,通常采用的是二分迭代法,不断调整平滑处理的点的平滑距离的值,使得平滑处理点与原始点的偏移距离尽量接近设定误差值,其中,不断调整平滑处理的点的平滑距离的值增加了计算量,也降低了平滑处理效率。
实施例四
本申请实施例公开一种存储介质,存储介质存储有计算机程序,计算机程序被处理器执行本申请实施例一的基于平均滤波的直线段平滑方法。
本申请实施例的存储介质通过执行基于平均滤波的直线段平滑方法,能够对目标曲线进行插补而得到目标曲线的逼近直线段,其中该逼近直线段包括若干个插补点,进而能够在若干个插补点中确定至少一个目标插补点,进而确定目标插补点的右相邻插补点的平滑距离、目标插补点的左相邻插补点的平滑距离、第一距离和第二距离,其中,第一距离表征右相邻插补点与左相邻插补点之间的距离,第二距离表征目标插补点与左相邻插补点之间的距离。另一方面,根据右相邻插补点的平滑距离、左相邻插补点的平滑距离、第一距离和第二距离能够确定目标插补点的平滑距离,进而至少根据目标插补点的平滑距离可确定目标平滑点的坐标,最终根据目标平滑点的坐标能够确定新插补点,新插补点用于平滑逼近直线段,以通过平滑后的逼近直线段加工待加工工件。
与现有技术相比,本申请实施例的存储介质能够根据右相邻插补点的平滑距离、左相邻插补点的平滑距离、第一距离和第二距离能够确定目标插补点的平滑距离,即通过右相邻插补点的平滑距离、左相邻插补点的平滑距离、第一距离和第二距离限制目标插补点的平滑距离,避免平滑点与原插补点产生较大的偏移,与此同时,本申请实施例的存储介质具有计算量小、平滑处理效率高的优点。而现有技术为了在平滑过程中,避免平滑点与原插补点产生较大的偏移,通常采用的是二分迭代法,不断调整平滑处理的点的平滑距离的值,使得平滑处理点与原始点的偏移距离尽量接近设定误差值,其中,不断调整平滑处理的点的平滑距离的值增加了计算量,也降低了平滑处理效率。
在本申请所提供的实施例中,应该理解到,所揭露装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
另外,作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
再者,在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
需要说明的是,功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。
以上所述仅为本申请的实施例而已,并不用于限制本申请的保护范围,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。