CN112008980B - 一种3d打印模型处理方法及系统 - Google Patents
一种3d打印模型处理方法及系统 Download PDFInfo
- Publication number
- CN112008980B CN112008980B CN202010111147.3A CN202010111147A CN112008980B CN 112008980 B CN112008980 B CN 112008980B CN 202010111147 A CN202010111147 A CN 202010111147A CN 112008980 B CN112008980 B CN 112008980B
- Authority
- CN
- China
- Prior art keywords
- slice
- primary
- printing
- contour edge
- slices
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B29—WORKING OF PLASTICS; WORKING OF SUBSTANCES IN A PLASTIC STATE IN GENERAL
- B29C—SHAPING OR JOINING OF PLASTICS; SHAPING OF MATERIAL IN A PLASTIC STATE, NOT OTHERWISE PROVIDED FOR; AFTER-TREATMENT OF THE SHAPED PRODUCTS, e.g. REPAIRING
- B29C64/00—Additive manufacturing, i.e. manufacturing of three-dimensional [3D] objects by additive deposition, additive agglomeration or additive layering, e.g. by 3D printing, stereolithography or selective laser sintering
- B29C64/30—Auxiliary operations or equipment
- B29C64/386—Data acquisition or data processing for additive manufacturing
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B33—ADDITIVE MANUFACTURING TECHNOLOGY
- B33Y—ADDITIVE MANUFACTURING, i.e. MANUFACTURING OF THREE-DIMENSIONAL [3-D] OBJECTS BY ADDITIVE DEPOSITION, ADDITIVE AGGLOMERATION OR ADDITIVE LAYERING, e.g. BY 3-D PRINTING, STEREOLITHOGRAPHY OR SELECTIVE LASER SINTERING
- B33Y50/00—Data acquisition or data processing for additive manufacturing
Landscapes
- Chemical & Material Sciences (AREA)
- Engineering & Computer Science (AREA)
- Materials Engineering (AREA)
- Manufacturing & Machinery (AREA)
- Physics & Mathematics (AREA)
- Mechanical Engineering (AREA)
- Optics & Photonics (AREA)
Abstract
本说明书实施例公开了一种3D打印模型处理方法。该方法包括:沿着打印方向并基于打印层厚将3D打印模型切割成多个一级切片;将每个一级切片沿着所述打印方向切割成多个二级切片;基于与每个一级切片相关的二级切片的轮廓边缘数据确定所述每个一级切片的轮廓边缘像素的打印灰度值。
Description
技术领域
本说明书实施例涉及3D打印技术领域,特别涉及一种3D打印模型处理方法及系统。
背景技术
基于数字光处理(Digital Light Processing,DLP)的3D打印技术通常使用DLP投影仪一次将整个截面图像在树脂表面上投射出来,通过方形像素投射光线,树脂固化时形成立体像素,又称体素。然而,截面图像的边缘体素有时呈阶梯形状,导致打印出的物体边缘不平滑。各个像素的尺寸由一个简单公式预先决定,像素尺寸等于构建空间(又称工作包络面)除以投影仪分辨率。因此打印的物体越小,用户需要处理的阶梯形状问题也就越少,但是如果物体增大,像素的阶梯形状就会更加明显。
基于上述问题,本说明书提出一种3D打印模型处理方法及系统。
发明内容
本说明书实施例的一个方面提供一种3D打印模型处理方法,该方法包括沿着打印方向并基于打印层厚将3D打印模型切割成多个一级切片;将每个一级切片沿着所述打印方向切割成多个二级切片;基于与每个一级切片相关的二级切片的轮廓边缘数据确定所述每个一级切片的轮廓边缘像素的打印灰度值。
在一些实施例中,至少两个一级切片的打印层厚不相同。
在一些实施例中,所述打印层厚和所述打印方向上的轮廓线与所述打印方向的偏离程度呈负相关。
在一些实施例中,所述多个二级切片的厚度相同。
在一些实施例中,所述基于与每个一级切片相关的二级切片的轮廓边缘数据确定所述每个一级切片的轮廓边缘像素的打印灰度值包括:基于二级切片的轮廓边缘数据确定所述二级切片的轮廓边缘像素的灰度值;基于与每个一级切片相关的二级切片的轮廓边缘像素的灰度值,确定所述每个一级切片的轮廓边缘像素的打印灰度值。
在一些实施例中,所述基于二级切片的轮廓边缘数据确定所述二级切片的轮廓边缘像素的灰度值包括:基于所述二级切片轮廓边缘像素的面积占比确定所述二级切片的轮廓边缘像素的灰度值。
在一些实施例中,所述基于与每个一级切片相关的二级切片的轮廓边缘像素的灰度值,确定所述每个一级切片的轮廓边缘像素的打印灰度值包括:为每个相关的二级切片设置权重因子;将所述相关的二级切片的轮廓边缘像素的灰度值的加权平均值确定为所述每个一级切片的轮廓边缘像素的打印灰度值。
在一些实施例中,所述相关的二级切片中,靠近所述一级切片中间位置的二级切片的权重因子大于远离所述一级切片中间位置的二级切片的权重因子。
在一些实施例中,所述与每个一级切片相关的二级切片至少包括所述每个一级切片所切割出的二级切片。
在一些实施例中,所述与每个一级切片相关的二级切片还包括与所述每个一级切片相邻的一个或多个二级切片。
本说明书实施例的另一个方面提供一种3D打印方法,利用上述的3D打印模型处理方法对3D打印模型进行处理;对处理后的所述3D打印模型进行打印。
本说明书实施例的另一个方面提供一种3D打印模型处理系统,该系统包括一级切片获取模块、二级切片获取模块和打印灰度值确定模块;所述一级切片获取模块用于沿着打印方向并基于打印层厚将3D打印模型切割成多个一级切片;所述二级切片获取模块用于将每个一级切片沿着所述打印方向切割成多个二级切片;所述打印灰度值确定模块用于基于与每个一级切片相关的二级切片的轮廓边缘数据确定所述每个一级切片的轮廓边缘像素的打印灰度值。
本说明书实施例的另一个方面提供一种3D打印系统,该系统包括本申请任一实施例所述的3D打印模型处理系统和打印模块;所述3D打印模型处理系统用于对3D打印模型进行处理;所述打印模块用于对处理后的所述3D打印模型进行打印。
附图说明
本说明书将以示例性实施例的方式进一步描述,这些示例性实施例将通过附图进行详细描述。这些实施例并非限制性的,在这些实施例中,相同的编号表示相同的结构,其中:
图1为根据本说明书一些实施例所示的3D打印系统的示例性框图;
图2为根据本说明书一些实施例所示的3D打印模型处理方法的示例性流程图;
图3为根据本说明书一些实施例所示的确定一级切片的轮廓边缘像素的打印灰度值的示例性流程图;
图4为根据本说明书一些实施例所示的3D打印模型处理方法的示意图;
图5是根据本说明书的一些实施例所示的二级切片轮廓边缘像素示意图;以及
图6是根据本说明书的一些实施例所示的级切片相关的二级切片的权重因子分布示例图。
具体实施方式
为了更清楚地说明本说明书实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单的介绍。显而易见地,下面描述中的附图仅仅是本说明书的一些示例或实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图将本说明书应用于其它类似情景。除非从语言环境中显而易见或另做说明,图中相同标号代表相同结构或操作。
应当理解,本说明书中所使用的“系统”、“装置”、“单元”和/或“模组”是用于区分不同级别的不同组件、元件、部件、部分或装配的一种方法。然而,如果其他词语可实现相同的目的,则可通过其他表达来替换所述词语。
如本说明书和权利要求书中所示,除非上下文明确提示例外情形,“一”、“一个”、“一种”和/或“该”等词并非特指单数,也可包括复数。一般说来,术语“包括”与“包含”仅提示包括已明确标识的步骤和元素,而这些步骤和元素不构成一个排它性的罗列,方法或者设备也可能包含其它的步骤或元素。
本说明书中使用了流程图用来说明根据本说明书的实施例的系统所执行的操作。应当理解的是,前面或后面操作不一定按照顺序来精确地执行。相反,可以按照倒序或同时处理各个步骤。同时,也可以将其他操作添加到这些过程中,或从这些过程移除某一步或数步操作。
本说明书一个或多个实施例中主要涉及一种3D打印模型处理方法和系统,以及3D打印方法和系统。3D打印模型处理方法通过获取每个一级切片相关的二级切片的轮廓边缘数据,对与每个一级切片相关的二级切片的轮廓边缘数据进行处理,以确定每个一级切片的轮廓边缘像素的打印灰度值,从而可以消除一级切片轮廓边缘呈阶梯状的像素(或打印后的体素)。另外,相邻的一级切片各自相关的二级切片中可以通过设置交叠层数,使得3D打印模型中相邻的一级切片之间过渡更加平滑。
图1为根据本说明书的一些实施例所示的3D打印系统的示框图。
如图1所示,在一些实施例中,该3D打印系统1000可以包括3D打印模型处理系统100和打印模块1010。其中,3D打印模型处理系统100可以包括一级切片获取模块110、二级切片获取模块120以及打印灰度值确定模块130。
一级切片获取模块110可以用于获取3D打印模型的一级切片。例如,一级切片获取模块110可以沿着打印方向并基于打印层厚将3D打印模型切割成多个一级切片。
二级切片获取模块120可以用于获取3D打印模型的二级切片。例如,二级切片获取模块120可以将每个一级切片沿着打印方向切割成多个二级切片。
打印灰度值确定模块130可以用于确定一级切片的轮廓边缘像素的打印灰度值。例如,打印灰度值确定模块130可以基于与每个一级切片相关的二级切片的轮廓边缘数据确定每个一级切片的轮廓边缘像素的打印灰度值。在一些实施例中,打印灰度值确定模块130还可以用于基于二级切片的轮廓边缘数据确定二级切片的轮廓边缘像素的灰度值,并基于与每个一级切片相关的二级切片的轮廓边缘像素的灰度值,确定每个一级切片的轮廓边缘像素的打印灰度值。在一些实施例中,打印灰度值确定模块130还可以用于基于二级切片轮廓边缘像素的面积占比确定二级切片的轮廓边缘像素的灰度值。在一些实施例中,打印灰度值确定模块130还可以用于为每个相关的二级切片设置权重因子,并将相关的二级切片的轮廓边缘像素的灰度值的加权平均值确定为每个一级切片的轮廓边缘像素的打印灰度值。
打印模块1010可以用于对处理后的3D打印模型进行打印。在一些实施例中,打印模块1010可以理解为用于控制打印装置进行3D打印的处理器。在一些实施例中,打印模块1010也可以理解为3D打印设备。3D打印设备可以包括光固化(Stereo lithographyApparatus,SLA)打印设备、数字光处理(Digital Light Processing,DLP)打印设备等。例如,SLA打印设备发出的激光束在液态的光敏树脂表面逐层勾画出待打印物体中各个一级切片的形状,激光束照射后光敏树脂会变成固态,从而完成待打印物体的打印。又例如,DLP打印设备中数字光源可以面光的形式在液态的光敏树脂表面进行各个一级切片的层层投影,使得待打印物体层层固化成型。
3D打印模型处理系统100可以将处理后的3D打印模型的数据通过网络发送至打印模块1010。例如,3D打印模型处理系统100可以将每个一级切片的轮廓边缘像素的打印灰度值通过网络发送至打印模块1010。在一些实施例中,网络可以为任意形式的有线或无线网络或其组合。
应当理解,图1所示的系统及其模块可以利用各种方式来实现。例如,在一些实施例中,系统及其模块可以通过硬件、软件或者软件和硬件的结合来实现。其中,硬件部分可以利用专用逻辑来实现;软件部分则可以存储在存储器中,由适当的指令执行系统,例如微处理器或者专用设计硬件来执行。本领域技术人员可以理解上述的方法和系统可以使用计算机可执行指令和/或包含在处理器控制代码中来实现,例如在诸如磁盘、CD或DVD-ROM的载体介质、诸如只读存储器(固件)的可编程的存储器或者诸如光学或电子信号载体的数据载体上提供了这样的代码。本说明书的一个或多个实施例的系统及其模块不仅可以有诸如超大规模集成电路或门阵列、诸如逻辑芯片、晶体管等的半导体、或者诸如现场可编程门阵列、可编程逻辑设备等的可编程硬件设备的硬件电路实现,也可以用例如由各种类型的处理器所执行的软件实现,还可以由上述硬件电路和软件的结合(例如,固件)来实现。
需要注意的是,以上对于3D打印系统及其模块的描述,仅为描述方便,并不能把本说明书的一个或多个实施例限制在所举实施例范围之内。可以理解,对于本领域的技术人员来说,在了解该系统的原理后,可能在不背离这一原理的情况下,对各个模块进行任意组合,或者构成子系统与其他模块连接,或者对其中的一个或多个模块进行省略。例如,图1中披露的一级切片获取模块110和二级切片获取模块120可以是一个系统中的不同模块,也可以是一个模块实现上述的两个模块的功能。例如,一级切片获取模块110和二级切片获取模块120可以是同一个模块,该模块同时具有切割3D打印模型或一级切片的功能。诸如此类的变形,均在本说明书的一个或多个实施例的保护范围之内。
图2为根据本说明书的一些实施例所示的3D打印模型处理方法的示例性流程图。如图2所示,在一些实施例中,3D打印模型处理方法200中的一个或以上步骤可以在图1所示的3D打印模型处理系统100中实现。例如,3D打印模型处理方法200中的一个或以上步骤可以作为指令的形式存储在3D打印模型处理系统的存储设备中,并被处理设备和/或处理器调用和/或执行。3D打印模型处理方法200可以包括以下步骤:
步骤210,沿着打印方向并基于打印层厚将3D打印模型切割成多个一级切片。在一些实施例中,步骤210可以由一级切片获取模块110执行。
在一些实施例中,3D打印模型可以是指待打印物体的三维结构图。本领域技术人员可以在3Dmax、Rhino、Solidworks、Catia、Inventor、AutoCAD或UG等3D建模软件上来实现待打印物体相对应的3D打印模型的构建。在一些实施例中,打印方向可以是指待打印物体在打印过程中的方位顺序。在一些实施例中,以3D打印模型的视角作为示例,打印方向可以包括从上到下、从下到上、从左到右、从右到左、从前到后、从后到前或其他任意方向。在一些实施例中,以3D打印模型在坐标系中作为示例,打印方向可以包括沿x轴方向、y轴方向、z轴方向或其它任意合理方向。
在一些实施例中,打印层厚可以是指3D打印中每次打印成型的厚度,即一级切片的厚度。打印层厚可以在3D建模软件(例如,AutoCAD)中进行预先设置。在一些实施例中,打印层厚可以为0.005mm-2mm。优选地,打印层厚可以为0.005mm-1.5mm。进一步优选地,打印层厚为0.01mm-0.5mm。更为优选地,打印层厚为0.01mm-0.2mm。在一些实施例中,每个一级切片的打印厚度相同(如均为0.05mm)。在一些实施例中,至少两个一级切片的打印层厚可以不相同。例如,一级切片的打印层厚可以根据待打印物体的各个部位的精度要求进行设置。例如,待打印物体中精度要求高的部位对应的一级切片的打印层厚可以小于精度要求低的部位对应的一级切片的打印层厚。
在一些实施例中,打印层厚和打印方向上的轮廓线与打印方向的偏离程度呈负相关。例如,打印方向上的轮廓线与打印方向的偏离程度越大,一级切片的打印层厚越小。打印方向上的轮廓线与打印方向的偏离程度越小,一级切片的打印层厚越大。仅作为示例性说明,当打印方向上的轮廓线为直线时,一级切片获取模块110可以通过计算该轮廓线(或该轮廓线的延伸线)和与打印方向平行或重合的直线的夹角,并通过判断该夹角的大小确定轮廓线与打印方向的偏离程度。当打印方向上的轮廓线为非直线(例如,曲线)时,可以沿打印方向取轮廓线与打印方向的第一个交点作为切点,作过该切点的切线,一级切片获取模块110可以计算该切线和与打印方向平行或重合的直线的夹角,并通过判断该夹角的大小确定轮廓线与打印方向的偏离程度。其中,偏离程度与夹角的大小正相关。
本说明书中以球体作为待打印物体对上述步骤210作进一步说明。图4为根据本申请一些实施例所示的3D打印模型处理方法的示意图。如图4所示,在一些实施例中,一级切片获取模块110可以将3D打印模型410沿着打印方向415并基于相同的打印层厚进行切割处理得到处理后模型420。其中,打印方向415可以是从上到下或从下到上。处理后模型420中的一级切片的打印层厚可以为预先设置的打印层厚(如0.05mm)。在一些实施例中,一级切片获取模块110可以将3D打印模型410沿着打印方向415并基于不完全相同的打印层厚进行切割处理得到处理后模型430。其中,处理后模型430的一级切片的打印层厚可以根据打印方向415上的轮廓线与打印方向415的偏离程度进行确定。例如,当打印方向415是从上到下时,3D打印模型410顶部至中间部位的轮廓线与打印方向415的偏离程度越来越小,相对应处理后模型430的一级切片的打印层厚可以越来越大。3D打印模型410中间部位至底部的轮廓线与打印方向415的偏离程度越来越大,相对应处理后模型430的一级切片的打印层厚可以越来越小。本说明书实施例通过根据轮廓线与打印方向的偏离程度确定一级切片的打印层厚,可以使得偏离程度小的部位打印层厚更大,偏离程度大的部位打印层厚更小;从而在提高3D打印速度的同时保证打印精度(如减少锯齿状阶梯纹路)。
步骤220,将每个一级切片沿着打印方向切割成多个二级切片。在一些实施例中,步骤220可以由二级切片获取模块120执行。
在一些实施例中,每个一级切片被切割成的多个二级切片的厚度相同。例如,一级切片的打印层厚为0.05mm,该一级切片可以切割成10个(或5个、8个、15个等)二级切片,每个二级切片的厚度为0.005mm。在一些实施例中,不论每个一级切片的打印层厚是否相同,所有的二级切片的厚度可以均相同(例如,所有一级切片各自被切割成的二级切片的厚度均为0.005mm)。在一些替代性实施例中,不同打印层厚的一级切片被切割成的二级切片的厚度可以不同。例如,一级切片可以包括0.05mm打印层厚的第一一级切片和0.06mm打印层厚的第二一级切片,第一一级切片被切割成的二级切片的厚度可以为0.005mm,第二一级切片被切割成的二级切片的厚度可以为0.006mm。
值得注意的是,本申请实施例中所描述的将3D打印模型“切割”成多个一级切片、将一级切片“切割”成多个二级切片并非物理意义上的切割,而只是在3D打印模型处理过程中的一种虚拟操作。其中,将3D打印模型切割成多个一级切片可以理解为将3D打印模型划分为多层,从而在3D打印时能够逐层打印。将一级切片切割成多个二级切片可以理解为将一级切片虚拟的划分为多个二级切片以便计算一级切片的轮廓边缘像素的打印灰度值。
步骤230,基于与每个一级切片相关的二级切片的轮廓边缘数据确定每个一级切片的轮廓边缘像素的打印灰度值。该步骤可以由打印灰度值确定模块130执行。
在一些实施例中,与每个一级切片相关的二级切片可以包括每个一级切片所切割出的二级切片。例如,3D打印模型可以切割为第一一级切片、第二一级切片和第三一级切片等。其中,第一一级切片可以切割为10个二级切片,并依次标号为1、2、3、4…10层二级切片;第二一级切片可以切割为10个二级切片,并依次标号为11、12、13、14…20层二级切片;第三一级切片可以切割为10个二级切片,并依次标号为21、22、23、24…30层二级切片;依次类推。与第一一级切片相关的二级切片可以包括1、2、3、4…10层二级切片,与第二一级切片相关的二级切片可以包括11、12、13、14…20层二级切片,依次类推。
在一些实施例中,为了3D打印模型中相邻一级切片之间的过渡更加平滑,与每个一级切片相关的二级切片还可以包括与每个一级切片相邻的一个或多个二级切片。即相邻的两个一级切片相关的二级切片之间可以有部分重叠。例如,与第一一级切片相关的二级切片可以包括1、2、3、4…10、11、12层二级切片,与第二一级切片相关的二级切片可以包括9、10、11、12、13、14…20、21、22层二级切片,与第三以及切片相关的二级切片可以包括19、20、21、22、23、24…30、31、32层二级切片,依次类推。
在一些实施例中,打印灰度值确定模块130可以对一级切片(以及与其相关的二级切片)进行切分,从而将一级切片分隔成由多个特定形状组成的像素。像素的特定形状可以包括正方形、长方形或者其他多边形等。在一些实施例中,像素可以与打印模块1010(如3D打印机)在打印时的像素对应。在一些实施例中,包含一级切片的轮廓边缘的像素可以被认为是一级切片的轮廓边缘像素。每个轮廓边缘像素可以包括切片区域和非切片区域。在一些实施例中,每个像素在打印时的曝光能量可以与该像素的打印灰度值对应。仅作为示例,像素的打印灰度值可以为0~255范围内的任意值。对于切片内部的像素,其打印灰度值可以相同(如均为255),此时该像素对应的曝光能量也相同(如均为第一曝光能量)。对于不包含切片区域的像素,其打印灰度值可以均为0,这些像素在打印时不曝光。对于轮廓边缘像素,其打印灰度值可以介于0和255之间,其曝光能量可以为与该打印灰度值对应的曝光能量(小于第一曝光能量)。曝光能量与打印灰度值的对应关系可以包括等比例对应或非等比例对应(如基于规则对应)。本申请实施例通过一级切片的轮廓边缘像素的打印灰度值确定该轮廓边缘像素的曝光能量,能够有效减少3D打印件表面的阶梯纹路,增加3D打印件的美观性。
在一些实施例中,二级切片的轮廓边缘数据可以包括二级切片的轮廓形状、位置等。在一些实施例中,打印灰度值确定模块130可以基于二级切片的轮廓边缘数据确定二级切片的轮廓边缘像素的灰度值。例如打印灰度值确定模块130可以基于二级切片轮廓边缘像素的面积占比确定所述二级切片的轮廓边缘像素的灰度值。在一些实施例中,打印灰度值确定模块130可以基于与每个一级切片相关的二级切片的轮廓边缘像素的灰度值,确定每个一级切片的轮廓边缘像素的打印灰度值。关于确定一级切片的轮廓边缘像素的打印灰度值的更多细节可以参考本申请图3及其相关描述。
应当注意的是,上述有关3D打印模型处理方法200的描述仅仅是为了示例和说明,而不限定本说明书的适用范围。对于本领域技术人员来说,在本说明书的指导下可以对3D打印模型处理方法200进行各种修正和改变。例如,在一些实施例中,可以沿着打印方向先将3D打印模型切割成二级切片,再分别由多个二级切片组成一个一级切片,并基于多个二级切片的轮廓边缘数据确定每个一级切片的轮廓边缘像素的打印灰度值。又例如,在二级切片重叠的场景下,与两端的一级切片相关的二级切片可以仅包括该一级切片所切割出的二级切片(即不包括相邻的二级切片)。诸如此类的变形,均在本说明书的一个或多个实施例的保护范围之内。
图3为根据本说明书的一些实施例所示的确定一级切片的轮廓边缘像素的打印灰度值的示例性流程图。如图3所示,确定一级切片的轮廓边缘像素的打印灰度值的流程300可以包括:
步骤310,基于二级切片的轮廓边缘数据确定二级切片的轮廓边缘像素的灰度值。该步骤可以由打印灰度值确定模块130执行。
在一些实施例中,打印灰度值确定模块130可以基于二级切片的轮廓边缘数据确定二级切片的轮廓边缘像素的面积占比,即轮廓边缘像素中二级切片区域面积与像素面积的比值。在一些实施例中,轮廓边缘数据可以包括轮廓边缘上各点的二维坐标值(以二级切片平面为坐标平面)。打印灰度值确定模块130可以在3D打印模型的基础上建立坐标系,从而获取二级切片中轮廓边缘上各点的二维坐标值。基于二级切片中轮廓边缘上各点的二维坐标值以及像素的位置和大小即可计算出每个轮廓边缘像素的面积占比。
在一些实施例中,打印灰度值确定模块130可以基于二级切片轮廓边缘像素的面积占比确定二级切片的轮廓边缘像素的灰度值。在一些实施例中,二级切片轮廓边缘像素的面积占比与其灰度值的对应关系可以包括等比例对应或非等比例对应。仅作为示例,二级切片轮廓边缘像素的灰度值可以为0~255范围内的任意值。对于二级切片内部的像素,其灰度值可以为255。在等比例对应的情况下,当二级切片轮廓边缘像素的面积占比为50%时,其对应的灰度值可以为128。
图5为根据本申请一些实施例所示的确定二级切片轮廓边缘像素示意图。如图5所示,将二级切片510置于正方形的像素网格530中(或者,将二级切片510分隔成多个像素)。其中,包含二级切片510边缘轮廓的像素即为边缘轮廓像素520(如图中阴影部分展示的像素)。在每个边缘轮廓像素520中,可以基于二级切片510的边缘轮廓数据(如形状、位置)确定该轮廓边缘像素520的面积占比。在此基础上便可进一步基于二级切片轮廓边缘像素的面积占比确定二级切片的轮廓边缘像素的灰度值。
步骤320,基于与每个一级切片相关的二级切片的轮廓边缘像素的灰度值,确定每个一级切片的轮廓边缘像素的打印灰度值。该步骤可以由打印灰度值确定模块130执行。
在一些实施例中,打印灰度值确定模块130可以为每个相关的二级切片设置权重因子。在一些实施例中,每个一级切片相关的二级切片中,靠近一级切片中间位置的二级切片的权重因子可以大于远离一级切片中间位置的二级切片的权重因子。一级切片中间位置的二级切片的数量可以为一个或两个。在一些实施例中,一级切片中间位置的二级切片的权重因子可以大于其他位置的二级切片的权重因子。例如,一个一级切片相关的二级切片的层数为奇数m时,一级切片中间位置的二级切片为第(m+1)/2层的二级切片,第(m+1)/2层的二级切片的权重因子大于其它层的二级切片的权重因子。又例如,一个一级切片相关的二级切片的层数为偶数n时,一级切片中间位置的二级切片为第n/2层和第(n/2+1)层的二级切片。第n/2层和第(n/2+1)层的二级切片的权重因子大于其它层的二级切片的权重因子,其中第n/2层二级切片的权重因子和第(n/2+1)层的二级切片的权重因子可以相同或不同。在一些实施例中,每个一级切片相关的二级切片中,位于一级切片中间位置的二级切片的权重因子最大,向外逐层递减。在一些实施例中,相对于一级切片中间位置对称的二级切片的权重因子可以相同。
在一些实施例中,打印灰度值确定模块130可以将与每个一级切片相关的二级切片的轮廓边缘像素的灰度值的加权平均值确定为每个一级切片的轮廓边缘像素的打印灰度值。本申请实施例通过为每个相关的二级切片设置权重因子,并使得中间位置的二级切片的权重因子大于其他位置,能够在充分考虑各层二级切片的基础上突出体现核心层(即中间位置的二级切片)的特征,从而可以使3D打印模型处理得更平滑。
图6是根据本申请一些实施例所示的一级切片相关的二级切片的权重因子分布示例图。如图6所示,仅作为示例性说明,一个一级切片可以包括10个相关的二级切片610,打印灰度值确定模块130对10个二级切片610设置权重因子620。如图6所示,一级切片相关的二级切片610的权重因子620从上至下可以依次设为0.005、0.015、0.03、0.15、0.03、0.03、0.15、0.03、0.015、0.005。一级切片相关的10个二级切片610的轮廓边缘像素的灰度值分别乘以相对应的权重因子并求和即可确定一级切片630的轮廓边缘像素的打印灰度值。
基于上述的3D打印模型处理方法,本说明书还提供一种3D打印方法,该3D打印方法可以包括利用上述的3D打印模型处理方法对3D模型进行处理,该步骤可以由3D打印模型处理系统100执行。该3D打印方法还可以包括对处理后的3D打印模型进行打印,该步骤可以由打印模块1010执行。
应当注意的是,上述有关流程300的描述仅仅是为了示例和说明,而不限定本说明书的适用范围。对于本领域技术人员来说,在本说明书的指导下可以对流程300进行各种修正和改变。例如,与一级切片相关的二级切片的数量、二级切片对应的权重因子等可以根据实际情况进行调整。
本说明书实施例可能带来的有益效果包括但不限于:(1)本说明书的技术方案能够方便地确定二级切片轮廓边缘像素的灰度值和一级切片轮廓边缘像素的打印灰度值,整个处理过程较为简单,计算量较小;(2)通过考虑与一级切片相关的二级切片轮廓边缘像素的灰度值,可以有效消除一级切片在3D打印过程中沿打印方向上呈阶梯状的边缘像素;(3)相邻的一级切片各自相关的二级切片中可以通过设置不同的交叠层数,使得3D打印模型中相邻一级切片之间的过渡更加平滑。需要说明的是,不同实施例可能产生的有益效果不同,在不同的实施例里,可能产生的有益效果可以是以上任意一种或几种的组合,也可以是其他任何可能获得的有益效果。
上文已对基本概念做了描述,显然,对于本领域技术人员来说,上述详细披露仅仅作为示例,而并不构成对本说明书的限定。虽然此处并没有明确说明,本领域技术人员可能会对本说明书进行各种修改、改进和修正。该类修改、改进和修正在本说明书中被建议,所以该类修改、改进、修正仍属于本说明书示范实施例的精神和范围。
同时,本说明书使用了特定词语来描述本说明书的实施例。如“一个实施例”、“一实施例”、和/或“一些实施例”意指与本说明书至少一个实施例相关的某一特征、结构或特点。因此,应强调并注意的是,本说明书中在不同位置两次或多次提及的“一实施例”或“一个实施例”或“一个替代性实施例”并不一定是指同一实施例。此外,本说明书的一个或多个实施例中的某些特征、结构或特点可以进行适当的组合。
此外,本领域技术人员可以理解,本说明书的各方面可以通过若干具有可专利性的种类或情况进行说明和描述,包括任何新的和有用的工序、机器、产品或物质的组合,或对他们的任何新的和有用的改进。相应地,本说明书的各个方面可以完全由硬件执行、可以完全由软件(包括固件、常驻软件、微码等)执行、也可以由硬件和软件组合执行。以上硬件或软件均可被称为“数据块”、“模块”、“引擎”、“单元”、“组件”或“系统”。此外,本说明书的各方面可能表现为位于一个或多个计算机可读介质中的计算机产品,该产品包括计算机可读程序编码。
计算机存储介质可能包含一个内含有计算机程序编码的传播数据信号,例如在基带上或作为载波的一部分。该传播信号可能有多种表现形式,包括电磁形式、光形式等,或合适的组合形式。计算机存储介质可以是除计算机可读存储介质之外的任何计算机可读介质,该介质可以通过连接至一个指令执行系统、装置或设备以实现通讯、传播或传输供使用的程序。位于计算机存储介质上的程序编码可以通过任何合适的介质进行传播,包括无线电、电缆、光纤电缆、RF、或类似介质,或任何上述介质的组合。
本说明书各部分操作所需的计算机程序编码可以用任意一种或多种程序语言编写,包括面向对象编程语言如Java、Scala、Smalltalk、Eiffel、JADE、Emerald、C++、C#、VB.NET、Python等,常规程序化编程语言如C语言、VisualBasic、Fortran2003、Perl、COBOL2002、PHP、ABAP,动态编程语言如Python、Ruby和Groovy,或其他编程语言等。该程序编码可以完全在用户计算机上运行、或作为独立的软件包在用户计算机上运行、或部分在用户计算机上运行部分在远程计算机运行、或完全在远程计算机或处理设备上运行。在后种情况下,远程计算机可以通过任何网络形式与用户计算机连接,比如局域网(LAN)或广域网(WAN),或连接至外部计算机(例如通过因特网),或在云计算环境中,或作为服务使用如软件即服务(SaaS)。
此外,除非权利要求中明确说明,本说明书所述处理元素和序列的顺序、数字字母的使用、或其他名称的使用,并非用于限定本说明书流程和方法的顺序。尽管上述披露中通过各种示例讨论了一些目前认为有用的发明实施例,但应当理解的是,该类细节仅起到说明的目的,附加的权利要求并不仅限于披露的实施例,相反,权利要求旨在覆盖所有符合本说明书实施例实质和范围的修正和等价组合。例如,虽然以上所描述的系统组件可以通过硬件设备实现,但是也可以只通过软件的解决方案得以实现,如在现有的处理设备或移动设备上安装所描述的系统。
同理,应当注意的是,为了简化本说明书披露的表述,从而帮助对一个或多个发明实施例的理解,前文对本说明书实施例的描述中,有时会将多种特征归并至一个实施例、附图或对其的描述中。但是,这种披露方法并不意味着本说明书对象所需要的特征比权利要求中提及的特征多。实际上,实施例的特征要少于上述披露的单个实施例的全部特征。
最后,应当理解的是,本说明书中所述实施例仅用以说明本说明书实施例的原则。其他的变形也可能属于本说明书的范围。因此,作为示例而非限制,本说明书实施例的替代配置可视为与本说明书的教导一致。相应地,本说明书的实施例不仅限于本说明书明确介绍和描述的实施例。
Claims (20)
1.一种3D打印模型处理方法,其特征在于,包括:
沿着打印方向并基于打印层厚将3D打印模型切割成多个一级切片;
将每个一级切片沿着所述打印方向切割成多个二级切片;
基于与每个一级切片相关的二级切片的轮廓边缘数据确定所述每个一级切片的轮廓边缘像素的打印灰度值;其中,
所述基于与每个一级切片相关的二级切片的轮廓边缘数据确定所述每个一级切片的轮廓边缘像素的打印灰度值,包括:
基于二级切片的轮廓边缘数据确定所述二级切片的轮廓边缘像素的灰度值;
基于与每个一级切片相关的二级切片的轮廓边缘像素的灰度值,确定所述每个一级切片的轮廓边缘像素的打印灰度值。
2.根据权利要求1所述的方法,其特征在于,至少两个一级切片的打印层厚不相同。
3.根据权利要求1所述的方法,其特征在于,所述打印层厚和所述打印方向上的轮廓线与所述打印方向的偏离程度呈负相关。
4.根据权利要求1所述的方法,其特征在于,所述多个二级切片的厚度相同。
5.根据权利要求1所述的方法,其特征在于,所述基于二级切片的轮廓边缘数据确定所述二级切片的轮廓边缘像素的灰度值包括:
基于所述二级切片轮廓边缘像素的面积占比确定所述二级切片的轮廓边缘像素的灰度值。
6.根据权利要求1所述的方法,其特征在于,所述基于与每个一级切片相关的二级切片的轮廓边缘像素的灰度值,确定所述每个一级切片的轮廓边缘像素的打印灰度值包括:
为每个相关的二级切片设置权重因子;
将所述相关的二级切片的轮廓边缘像素的灰度值的加权平均值确定为所述每个一级切片的轮廓边缘像素的打印灰度值。
7.根据权利要求6所述的方法,其特征在于,所述相关的二级切片中,靠近所述一级切片中间位置的二级切片的权重因子大于远离所述一级切片中间位置的二级切片的权重因子。
8.根据权利要求1所述的方法,其特征在于,所述与每个一级切片相关的二级切片至少包括所述每个一级切片所切割出的二级切片。
9.根据权利要求8所述的方法,其特征在于,所述与每个一级切片相关的二级切片还包括与所述每个一级切片相邻的一个或多个二级切片。
10.一种3D打印方法,其特征在于,包括:
利用如权利要求1~9中任一项所述的3D打印模型处理方法对3D打印模型进行处理;
对处理后的所述3D打印模型进行打印。
11.一种3D打印模型处理系统,其特征在于,包括一级切片获取模块、二级切片获取模块和打印灰度值确定模块;
所述一级切片获取模块用于沿着打印方向并基于打印层厚将3D打印模型切割成多个一级切片;
所述二级切片获取模块用于将每个一级切片沿着所述打印方向切割成多个二级切片;
所述打印灰度值确定模块用于基于与每个一级切片相关的二级切片的轮廓边缘数据确定所述每个一级切片的轮廓边缘像素的打印灰度值;
所述打印灰度值确定模块还用于基于二级切片的轮廓边缘数据确定所述二级切片的轮廓边缘像素的灰度值,基于与每个一级切片相关的二级切片的轮廓边缘像素的灰度值,确定所述每个一级切片的轮廓边缘像素的打印灰度值。
12.根据权利要求11所述的系统,其特征在于,至少两个一级切片的打印层厚不相同。
13.根据权利要求11所述的系统,其特征在于,所述打印层厚和所述打印方向上的轮廓线与所述打印方向的偏离程度呈负相关。
14.根据权利要求11所述的系统,其特征在于,所述多个二级切片的厚度相同。
15.根据权利要求14所述的系统,其特征在于,所述打印灰度值确定模块还用于:
基于所述二级切片轮廓边缘像素的面积占比确定所述二级切片的轮廓边缘像素的灰度值。
16.根据权利要求14所述的系统,其特征在于,所述打印灰度值确定模块还用于:
为每个相关的二级切片设置权重因子;
将所述相关的二级切片的轮廓边缘像素的灰度值的加权平均值确定为所述每个一级切片的轮廓边缘像素的打印灰度值。
17.根据权利要求16所述的系统,其特征在于,所述相关的二级切片中,靠近所述一级切片中间位置的二级切片的权重因子大于远离所述一级切片中间位置的二级切片的权重因子。
18.根据权利要求11所述的系统,其特征在于,所述与每个一级切片相关的二级切片至少包括所述每个一级切片所切割出的二级切片。
19.根据权利要求18所述的系统,其特征在于,所述与每个一级切片相关的二级切片还包括与所述每个一级切片相邻的一个或多个二级切片。
20.一种3D打印系统,其特征在于,包括如权利要求11~19中任一项所述的3D打印模型处理系统和打印模块;
所述3D打印模型处理系统用于对3D打印模型进行处理;
所述打印模块用于对处理后的所述3D打印模型进行打印。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010111147.3A CN112008980B (zh) | 2020-02-24 | 2020-02-24 | 一种3d打印模型处理方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010111147.3A CN112008980B (zh) | 2020-02-24 | 2020-02-24 | 一种3d打印模型处理方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112008980A CN112008980A (zh) | 2020-12-01 |
CN112008980B true CN112008980B (zh) | 2022-12-13 |
Family
ID=73506756
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010111147.3A Active CN112008980B (zh) | 2020-02-24 | 2020-02-24 | 一种3d打印模型处理方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112008980B (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112743851A (zh) * | 2020-12-28 | 2021-05-04 | 深圳市创想三维科技有限公司 | 光固化3d打印方法、3d打印机、计算机装置及介质 |
CN112650457A (zh) * | 2020-12-29 | 2021-04-13 | 深圳市创想三维科技有限公司 | 应用于3d打印的文件处理方法、装置、设备及存储介质 |
CN112950514A (zh) * | 2021-04-09 | 2021-06-11 | 深圳市纵维立方科技有限公司 | 一种图像处理方法、装置、电子设备及可读存储介质 |
CN113478819A (zh) * | 2021-07-20 | 2021-10-08 | 深圳市鹏基光电有限公司 | 3d打印机曝光显示方法、模块、显示装置以及存储介质 |
CN115187469A (zh) * | 2022-06-02 | 2022-10-14 | 深圳市纵维立方科技有限公司 | 3d打印中的图像处理方法、装置、存储介质及终端 |
CN115592954B (zh) * | 2022-09-22 | 2024-05-17 | 哈尔滨工业大学 | 一种粘结剂喷射3d打印的切片生成方法 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009298023A (ja) * | 2008-06-13 | 2009-12-24 | Roland Dg Corp | 光造形方法、光造形装置および同光造形装置に適用される光造形用コンピュータプログラム |
GB2559914B (en) * | 2015-10-07 | 2021-07-14 | Holo Inc | Sub-pixel grayscale three-dimensional printing |
CN107718535B (zh) * | 2017-09-29 | 2019-09-24 | 深圳晗竣雅科技有限公司 | Dlp光固化快速成型边缘处理方法及装置 |
CN107972266B (zh) * | 2017-12-15 | 2020-07-03 | 博纳云智(天津)科技有限公司 | 一种dlp光固化3d打印机的高精度平滑打印方法 |
CN108995219B (zh) * | 2018-05-31 | 2021-04-20 | 共享智能铸造产业创新中心有限公司 | 一种层厚可变的切片方法、3d打印方法及3d打印的产品 |
KR101997408B1 (ko) * | 2018-10-31 | 2019-07-05 | 이수연 | 3d 프린터 |
-
2020
- 2020-02-24 CN CN202010111147.3A patent/CN112008980B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN112008980A (zh) | 2020-12-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112008980B (zh) | 一种3d打印模型处理方法及系统 | |
US11541601B2 (en) | Systems and methods for printing of 3D models | |
JP6830139B2 (ja) | 3次元データの生成方法、3次元データの生成装置、コンピュータ機器及びコンピュータ読み取り可能な記憶媒体 | |
US11865787B2 (en) | Method and system for additive manufacturing | |
US8768661B2 (en) | Method for creating finite element model of rubber composite | |
KR20150127710A (ko) | 3차원 프린팅을 위한 슬라이싱 및/또는 텍스쳐링 | |
JP5916758B2 (ja) | Gpu上でのcadモデルの直接的なレンダリング | |
KR20180105797A (ko) | 3차원 프린팅 데이터 생성 방법 및 장치 | |
WO2021253769A1 (zh) | 一种 stl 模型切片方法和装置 | |
US20160332385A1 (en) | Apparatus and method for generating bitmap of 3-dimensional model | |
US9977993B2 (en) | System and method for constructing a statistical shape model | |
EP3599562A1 (en) | Designing assistance system, designing assisting method, and computer readable medium | |
US20070216680A1 (en) | Surface Detail Rendering Using Leap Textures | |
US11367245B2 (en) | Transforming object data models to disperse object properties | |
US8289332B2 (en) | Apparatus and method for determining intersections | |
US11221609B2 (en) | Determining object volumes in virtual object space | |
Schollmeyer et al. | Direct trimming of NURBS surfaces on the GPU | |
CN111462330B (zh) | 一种基于平面法向投影的测量视点规划方法 | |
CN109143773A (zh) | 一种光学临近修正前的预处理方法 | |
KR101682296B1 (ko) | 3차원 프린터 장치 및 상기 장치에서의 3차원 오브젝트 배치 방법 | |
CN112265265A (zh) | 一种基于切片的三维打印数据z轴补偿方法 | |
US20210407064A1 (en) | Method and device for geometric analysis of a part surface | |
Muraki et al. | Curve Mesh Modeling Method of Trimmed Surfaces for Direct Modeling | |
KR101682298B1 (ko) | 3차원 모델의 비트맵 생성 장치 및 방법 | |
KR20160058299A (ko) | 3차원 객체의 슬라이싱 및 층별 윤곽 계산 장치 및 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |