切片处理方法、打印方法、系统、设备和存储介质与流程

文档序号:27549394发布日期:2021-11-24 22:02阅读:223来源:国知局
切片处理方法、打印方法、系统、设备和存储介质与流程

1.本技术属于打印技术领域,具体涉及一种切片处理方法、打印方法、系统、设备和存储介质。


背景技术:

2.3d打印技术是以数字化模型为基础的新型快速成型技术,通过逐层打印的方式来制造模型,是与传统模具生产制造完全不同的成型技术。在3d打印过程中,使用建模软件得到虚拟三维模型后,需要将模型文件转换为打印机的动作数据,上述数据转换的过程可以理解为对虚拟三维模型进行切片处理。
3.目前,云切片技术因其可为云端的大量用户提供切片服务而受到广泛追捧。然而,目前的切片处理只支持单用户单任务,即根据用户发送切片请求的时间对切片任务进行排序,只有在当前切片任务完成后,才能执行后一顺位的切片任务。这导致在排序靠后的切片任务迟迟得不到响应,对于排序靠后的切片任务而言,切片时间过长。


技术实现要素:

4.本技术实施例的目的是提供一种切片处理方法、打印方法、系统、设备和存储介质,能够解决使用云切片技术执行切片任务时,排序靠后的切片任务不能及时得到切片响应。
5.第一方面,本技术实施例提供了一种切片处理方法,该方法包括:
6.基于接收到的n个任务请求,生成所述n个任务请求对应的任务体;
7.按照所述n个任务请求的处理策略,依次循环对至少两个所述任务体对应的待切片模型进行切片处理,直至得到至少两个所述待切片模型的所有层切片。
8.第二方面,本技术实施例提供了一种打印方法,该方法包括:
9.获取待打印图像,并根据所述待打印图像打印模型;其中,所述待打印图像为如第一方面所述的切片处理方法生成的层切片。
10.第三方面,本技术实施例提供了一种打印系统,该打印系统包括图像处理装置和打印设备;
11.所述图像处理装置,用于执行如第一方面所述的切片处理方法;
12.所述打印设备,使用所述图像处理装置输出的层切片,并依据所述层切片得到待打印模型。
13.第四方面,本技术实施例提供了一种打印设备,该打印设备包括处理器、存储器及存储在所述存储器上并可在所述处理器上运行的程序或指令,所述程序或指令被所述处理器执行时实现如第一方面所述的方法的步骤。
14.第五方面,本技术实施例提供了一种可读存储介质,所述可读存储介质上存储程序或指令,所述程序或指令被处理器执行时实现如第一方面所述的方法的步骤。
15.本技术实施例中,基于接收到的n个任务请求,生成n个任务请求对应的任务体;按
照n个任务请求的处理策略,依次循环对至少两个所述任务体对应的待切片模型进行切片处理,直至得到至少两个所述待切片模型的所有层切片。这样,按照任务请求的处理策略,依次循环对至少两个任务体对应的待切片模型进行切片处理,进而在执行多个切片任务的情况下,保证每个切片任务均能得到及时的响应。
附图说明
16.图1是本技术实施例提供的云切片的业务流程图;
17.图2是本技术实施例提供的切片处理方法的流程图;
18.图3是本技术实施例提供的打印系统的结构图;
19.图4是本技术实施例提供的电子设备的结构图。
具体实施方式
20.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚地描述,显然,所描述的实施例是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员获得的所有其他实施例,都属于本技术保护的范围。
21.本技术的说明书和权利要求书中的术语“第一”、“第二”等是用于区别类似的对象,而不用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便本技术的实施例能够以除了在这里图示或描述的那些以外的顺序实施,且“第一”、“第二”等所区分的对象通常为一类,并不限定对象的个数,例如第一对象可以是一个,也可以是多个。此外,说明书以及权利要求中“和/或”表示所连接对象的至少其中之一,字符“/”,一般表示前后关联对象是一种“或”的关系。
22.请参阅图1,图1是本技术实施例提供的云切片的业务流程图。以下结合图1对云切片技术的业务逻辑进行说明。
23.如图1所示,用户可以通过应用程序向终端发送切片请求,终端基于接收到的切片请求生成任务体,图1中示出的“任务体01”表示一个任务体,“任务体02”表示另一个任务体。其中,切片请求和任务体一一对应,上述终端可以是切片处理装置。
24.终端根据接收到切片请求的接收时间的先后顺序,在任务队列中对任务体进行排序。如图1所示,终端包括一个切片线程以及多个压缩线程,应理解,上述切片线程用于对任务体对应的待切片模型进行切片处理,得到层切片;上述压缩线程用于对层切片的切片信息进行压缩,其中,一个压缩线程用于对一个层切片的切片信息进行压缩。
25.结合图1可以得到,云切片技术支持为云端的大量用户提供切片服务,然而,由于终端只具备一个切片线程,因此切片处理只支持单用户单任务,这导致在任务队列中排序靠后的切片任务迟迟得不到响应。
26.基于上述存在的技术问题,本技术实施例提供了一种切片处理方法。
27.下面结合附图,通过具体的实施例及其应用场景对本技术实施例提供的切片处理方法进行详细地说明。
28.请参阅图2,图2是本技术实施例提供的切片方法的流程图。本技术实施例提供的切片处理方法包括以下步骤:
29.s101,基于接收到的n个任务请求,生成所述n个任务请求对应的任务体。
30.应理解,本技术实施例提供的切片处理方法应用于终端,该终端可以是切片处理装置或者3d打印装置,或者其他装置。
31.本步骤中,应用切片处理方法的终端接收多个任务请求,这里,可以将任务请求的数量设定为n,可选地,上述n个任务请求可以由n个用户发送,且一个用户发送一个任务请求;或者,上述n个任务请求也可以由多个用户发送,且一个用户可以发送至少一个任务请求;或者,上述n个任务请求也可以由一个用户发送。其中,n为大于1的正整数。
32.在接收到n个任务请求后,生成与n个任务请求对应的任务体。
33.一种可选的实施方式为,1个任务请求对应1个任务体,那么,n个任务请求对应n个任务体,且这n个任务体与n个任务请求一一对应。
34.另一种可选的实施方式为,1个任务请求对应2个任务体,或对应2个以上的任务体。那么,在接收到n个任务请求后,生成的任务体的数量大于n。
35.应理解,上述任务体包括待切片模型的相关参数,且任务体与待切片模型一一对应,进一步的,可以通过对任务体中的相关参数进行解析,得到与该任务体对应的待切片模型。
36.s102,按照所述n个任务请求的处理策略,依次循环对至少两个所述任务体对应的待切片模型进行切片处理,直至得到至少两个所述待切片模型的所有层切片。
37.本步骤中,任务体可以按照对应的任务请求的接收时间的先后顺序排序,请参阅图1,可以理解为任务队列存储有n个任务体,且n个任务体按照对应的任务请求的接收时间的先后顺序排序。
38.在其他实施例中,任务体也可以按照预设顺序排序,或者按照对应的模型文件的面积从大到小排序,在此不对任务体的排序方式作出具体限定。
39.本步骤中,调用切片线程按照n个任务请求的处理策略,依次循环对至少两个任务体对应的待切片模型进行切片处理,直至得到每个待切片模型对应的所有层切片,停止切片处理操作。
40.其中,切片处理是指将待切片模型的模型文件转换为3d打印装置的动作数据的处理过程。
41.其中,处理策略是指对n个任务请求对应的待切片模型进行切片处理的处理顺序,上述处理策略可以是将n个任务请求按照接收时间的先后顺序,对n个任务请求对应的待切片模型进行切片处理;上述处理策略也可以是按照用户设置的预设顺序,对n个任务请求对应的待切片模型进行切片处理;上述处理策略也可以是按照任务请求对应的模型文件从大到小的顺序,对n个任务请求对应的待切片模型进行切片处理。应理解,本实施例在此并不对处理策略具体限制。
42.其中,对n个任务请求对应的待切片模型进行切片处理的过程为,依次循环对至少两个任务体对应的待切片模型进行切片处理。
43.例如,n的数量为3,1个任务请求对应1个任务体。这种情况下,可以以此循环对3个任务体中的两个任务体对应的待切片模型进行切片处理。
44.应理解,在依次循环对至少两个任务体对应的待切片模型进行切片处理的过程中,并不限定对任务体对应的待切片模型的处理顺序。
45.示例性的,n的数量为3,设定任务体按照对应的任务请求的接收时间的先后顺序
排序,得到任务体01,任务体02和任务体03。设定依次循环对这3个任务体对应的待切片模型进行切片处理。
46.那么,在依次循环对这3个任务体对应的待切片模型进行切片处理的过程中,一种可选地实施方式为,可以先对任务体01对应的待切片模型进行切片处理,再对任务体02对应的待切片模型进行切片处理,最后对任务体03对应的待切片模型进行切片处理。或者,可以先对任务体02对应的待切片模型进行切片处理,再对任务体03对应的待切片模型进行切片处理,最后对任务体01对应的待切片模型进行切片处理。或者其他顺序。
47.其中,依次循环对至少两个待切片模型进行切片处理时,得到的各过程层切片数量相同,若检测到任一任务体完成所述切片处理,则该任务体结束,该任务体退出循环。
48.应理解,上述各过程层切片数量是指每个循环周期中对待切片模型进行切片得到的层切片数量。也就是说,在每个循环周期中对待切片模型进行切片得到的层切片数量是相同的。
49.定义各过程层切片数量为m,为便于理解,示例说明如下:
50.终端接收到了3个任务请求,基于这3个任务请求生成任务体01、任务体02和任务体03,按照任务请求的接收时间的先后顺序对上述任务体进行排序,得到任务体01顺序先于任务体02,任务体02的顺序先于任务体03。
51.对这3个任务体对应的待切片模型执行循环的切片处理,设置m的数值为5,这里,将任务体01对应的待切片模型称为模型01,将任务体02对应的待切片模型称为模型02,将任务体03对应的待切片模型称为模型03。在每次切片处理的过程中,获得模型01的5个层切片,模型02的5个层切片,以及模型03的5个层切片。当得到上述3个待切片模型对应的所有层切片时,停止对待切片模型进行切片。
52.一种可能存在的情况为,模型02的层切片数量少于模型01的层切片数量和模型03的层切片数量,这样,在循环切片过程中,得到了模型02对应的所有层切片,但未得到模型01和模型03对应的所有层切片,这种情况下,在循环切片过程中,停止对模型02进行切片处理,只对模型01和模型03进行切片处理,直至得到模型01对应的所有层切片和模型03对应的所有层切片。
53.本技术实施例中,基于接收到的n个任务请求,生成n个任务请求对应的任务体;按照n个任务请求的处理策略,依次循环对至少两个所述任务体对应的待切片模型进行切片处理,直至得到至少两个所述待切片模型对应的所有层切片。这样,按照任务请求的处理策略,依次循环对至少两个任务体对应的待切片模型进行切片处理,进而在执行多个切片任务的情况下,保证每个切片任务均能得到及时的响应。
54.以下,对每个循环周期中的执行步骤进行说明:
55.所述依次循环对至少两个所述任务体对应的待切片模型进行切片处理包括:
56.对于任一待切片模型,解析所述待切片模型的模型切片信息,获得所述待切片模型对应的已完成的层切片;
57.在所述已完成的层切片的基础上,对所述待切片模型进行切片处理,获得过程切片信息;
58.将所述过程切片信息存储至所述模型切片信息,并刷新所述模型切片信息。
59.应理解,待切片模型包括模型切片信息,模型切片信息用于表征待切片模型对应
的已完成层切片,上述模型切片信息包括多个层切片信息,也就是说,可以将上述模型切片信息理解为是待切片模型对应的层切片信息的集合。
60.上述过程切片信息为在一个循环周期中,对待切片模型进行切片后,得到的已完成层切片对应的层切片信息。可选地,上述过程切片信息包括但不限于层切片数量、每个层切片对应的切片图像,以及待打印模型对应的模型参数和场景参数。
61.本实施例中,在一个循环周期内,对于未完成切片的待切片模型,先对该待切片模型的模型切片信息进行解析,得到该待切片模型已完成层切片和该待切片模型对应的层切片数量,其中,上述待切片模型对应的层切片数量可以理解为是该待切片模型对应的层切片总数;进一步的,在该待切片模型已完成的层切片的基础上,继续对该待切片模型进行切片,得到过程切片信息。
62.在一实施场景中,设定过程切片信息对应m个层切片,那么,对待切片模型的模型切片信息进行解析得到该待切片模型已完成的层切片,可以确定上述已完成的层切片的数量为m的正整数倍。
63.示例性的,在m的数值为5,待切片模型已完成的层切片的数量为10的情况下,在一个循环周期中,对该待切片模型的模型切片信息进行解析,得到该待切片模型对应的已完成的10个层切片;在这10个层切片的基础上,继续对该待切片模型进行切片处理,得到5个层切片,并将这5个层切片对应的层切片信息存储至模型切片信息,也就是说,在这个循环周期过后,该待切片模型对应的模型切片信息用于表征该待切片模型已完成的15个层切片。
64.本实施例中,在每个循环周期的最后,将过程切片信息保存至模型切片信息,在下一次循环周期开始之前,可以在已完成的层切片的基础上,继续进行切片,而不必重新对待切片模型进行切片,以此提高切片效率。
65.可选地,所述任务体预设的总切片层数相同或者不相同,预设的总切片层数最少的所述任务体最先结束并退出循环切片处理。
66.应理解,n个任务体预设的总切片层数可能相同也可能不同,在此不做具体限定。
67.对于n个任务体中的任意两个任务体而言,总切片层数较少的任务体相比于总切片层数较多的任务体先退出循环切片处理。
68.对于n个任务体中的任意两个任务体而言,总切片层数最少的任务体最先退出循环切片处理。
69.示例性的,设定第一任务体对应的层切片数量为2000,第二任务体对应的层切片数量为20,那么,由于第一任务体对应的层切片数量大于第二任务体对应的层切片数量,因此第一任务体对应的切片时间大于第二任务体对应的切片时间,也就是说,第二任务体先退出循环切片处理。
70.可选地,所述任务体包括模型参数和场景参数,所述生成所述n个任务请求对应的任务体之后,所述方法包括:
71.获取所述任务体对应的模型参数,并根据所述模型参数得到所述任务体对应的模型文件,其中,云端服务器存储所述模型参数与所述模型文件之间的映射关系,所述云端服务器接收所述模型参数进行查询并返回对应的所述模型文件;
72.获取所述任务体对应的场景参数,并根据所述场景参数对所述模型文件进行线性
变换,得到所述任务体对应的待切片模型。
73.本实施例中,应用切片处理方法的终端还可以与数据存储设备通信,上述数据存储设备可以是云端服务器或者本地服务器。
74.本实施例中,根据任务请求生成的任务体包括模型参数和场景参数,其中,上述模型参数和场景参数基于用户输入的任务请求的内容确定,上述模型参数为模型文件。
75.为便于理解模型参数和场景参数,请参阅下述示例:
76.待打印模型为“倒立的兔子”,则该待打印模型对应的模型参数为模型文件“兔子”,待打印模型对应的场景参数为“倒立”,其中,场景参数可以为一个4*4包括16个元素的矩阵数列,应用矩阵数列对模型参数表征的模型进行计算,可以得到待打印模型。
77.上述云端服务器存储有模型参数与模型文件之间的映射关系。具体而言,应用本技术实施例提供的切片处理方法的终端向云端服务器发送模型参数,云端服务器接收该模型参数,对该模型参数进行查询,并向终端反馈该模型参数对应的模型文件。其中,上述模型文件表征未进行线性变换的模型文件,即未确定模型大小和模型位置的模型文件。
78.在得到模型文件后,获取任务体中的场景参数,并使用该场景参数对模型文件进行线性变换,得到待切片模型。应理解,对模型文件进行线性变换的方式包括但不限于移动、缩放或者旋转模型。
79.可选地,所述场景参数为矩阵数列,所述模型文件包括k个模型顶点,k为大于1的正整数;
80.所述获取所述任务体对应的场景参数,并根据所述场景参数对所述模型文件进行线性变换,得到所述任务体对应的待切片模型包括:
81.对所述任务体对应的模型文件,将所述模型文件对应的每个模型顶点的坐标值与所述矩阵数列进行矩阵变换运算,得到线性变换后的k个模型顶点;
82.将所述线性变换后的k个模型顶点生成的模型确定为所述任务体对应的所述待切片模型。
83.应理解,用户在模型库中调取三维虚拟模型后,在前端使用建模软件对三维虚拟模型进行线性变换,如移动、缩放或拉伸,得到待切片模型。上述三维虚拟模型为模型文件所表征的虚拟模型,上述对三维虚拟模型进行线性变换的过程可以用用矩阵数列表示。
84.本实施例中,读取任务体中的场景参数,如上所述,场景参数可以表现为一个矩阵数列,可选的实施方式为,设定该矩阵数列为包括16个元素的4*4矩阵。
85.依次使用每个模型顶点的坐标值与该矩阵数列进行矩阵变换运算,上述矩阵变换运算可以是矩阵乘法运算,这样,改变每个模型顶点的坐标值,得到线性变换后的k个模型顶点,以此实现对模型文件的线性变换,并将线性变换后的k个模型顶点生成的模型确定为任务体对应待切片模型。
86.可选地,所述任务体还包括抽壳参数和支撑参数,所述得到所述任务体对应的待切片模型之后,所述方法还包括:
87.根据所述抽壳参数和/或所述支撑参数,分别对所述待切片模型进行抽壳处理和支撑处理。
88.本实施例中,对于一些要进行抽壳处理的待切片模型,任务体中还包括有抽壳参数,上述抽壳参数基于用户输入的任务请求的内容确定,抽壳参数又称为抽壳命令,抽壳参
数用于指示对待切片模型进行抽壳处理,抽壳处理是指将模型内部的东西抽掉,在模型中间形成空心区域。
89.若任务体中包括有抽壳参数,则需要根据抽壳参数对待切片模型进行抽壳处理,在模型中间形成空心区域。
90.本实施例中,对于一些要进行支撑处理的待切片模型,任务体中还包括有支撑参数,上述支撑参数基于用户输入的任务请求的内容确定,支撑参数又称为支撑命令,支撑参数用于指示对待切片模型进行支撑处理,支撑处理是指为了保持3d打印物品的物理平衡而打印支架材料。
91.若任务体中包括有支撑参数,则需要根据支撑参数对待切片模型进行支撑处理,在待切片模型上打印支架材料,在得到打印的实体模型后,可以去除实体模型中打印出来的支架材料。
92.本技术实施例还提供了一种打印方法,所述打印方法包括:
93.获取待打印图像,并根据所述待打印图像打印模型;其中,所述待打印图像为上述切片处理方法实施例生成的层切片。
94.应理解,本技术实施例提供的打印方法能够实现上述切片处理方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
95.本技术实施例还提供了一种打印系统,如图3所示,所述打印系统200包括图像处理装置201和打印设备202;
96.所述图像处理装置201,用于执行上述切片处理方法实施例的各个过程;
97.所述打印设备202,使用所述图像处理装置201输出的层切片,并依据所述每层切片得到待打印模型。
98.应理解,本技术实施例提供的打印方法能够实现上述切片处理方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
99.本技术实施例还提供了一种打印设备,包括处理器,存储器,及存储在所述存储器上并可在所述处理器上运行的程序或指令,所述程序或指令被所述处理器执行时实现上述切片处理方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
100.可选地,如图4所示,本技术实施例还提供一种电子设备300,包括处理器301,存储器302,存储在存储器302上并可在所述处理器301上运行的程序或指令,该程序或指令被处理器301执行时实现上述切片处理方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
101.需要说明的是,本技术实施例中的电子设备包括上述所述的移动电子设备和非移动电子设备。
102.本技术实施例还提供一种可读存储介质,所述可读存储介质上存储有程序或指令,该程序或指令被处理器执行时实现上述切片处理方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
103.其中,所述处理器为上述实施例中所述的电子设备中的处理器。所述可读存储介质,包括计算机可读存储介质,如计算机只读存储器(read

only memory,rom)、随机存取存储器(random access memory,ram)、磁碟或者光盘等。
104.需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排
他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。此外,需要指出的是,本技术实施方式中的方法和装置的范围不限按示出或讨论的顺序来执行功能,还可包括根据所涉及的功能按基本同时的方式或按相反的顺序来执行功能,例如,可以按不同于所描述的次序来执行所描述的方法,并且还可以添加、省去、或组合各种步骤。另外,参照某些示例所描述的特征可在其他示例中被组合。
105.通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分可以以计算机软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器,或者网络设备等)执行本技术各个实施例所述的方法。
106.上面结合附图对本技术的实施例进行了描述,但是本技术并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本技术的启示下,在不脱离本技术宗旨和权利要求所保护的范围情况下,还可做出很多形式,均属于本技术的保护之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1