WO2024179065A1 - 三维打印方法、装置、设备及存储介质 - Google Patents
三维打印方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- WO2024179065A1 WO2024179065A1 PCT/CN2023/133758 CN2023133758W WO2024179065A1 WO 2024179065 A1 WO2024179065 A1 WO 2024179065A1 CN 2023133758 W CN2023133758 W CN 2023133758W WO 2024179065 A1 WO2024179065 A1 WO 2024179065A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- data
- color
- type
- value
- printing
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 93
- 238000010146 3D printing Methods 0.000 title claims abstract description 47
- 238000003860 storage Methods 0.000 title claims abstract description 19
- 239000000463 material Substances 0.000 claims abstract description 118
- 238000012545 processing Methods 0.000 claims abstract description 103
- 238000007639 printing Methods 0.000 claims abstract description 101
- 239000012780 transparent material Substances 0.000 claims abstract description 32
- 238000006243 chemical reaction Methods 0.000 claims description 56
- 238000000547 structure data Methods 0.000 claims description 6
- 230000000694 effects Effects 0.000 abstract description 8
- 239000000976 ink Substances 0.000 description 59
- 238000010586 diagram Methods 0.000 description 14
- 238000005516 engineering process Methods 0.000 description 10
- 238000004891 communication Methods 0.000 description 8
- 239000003086 colorant Substances 0.000 description 7
- 238000000151 deposition Methods 0.000 description 7
- 101100233916 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) KAR5 gene Proteins 0.000 description 5
- 230000008021 deposition Effects 0.000 description 5
- 101000827703 Homo sapiens Polyphosphoinositide phosphatase Proteins 0.000 description 4
- 102100023591 Polyphosphoinositide phosphatase Human genes 0.000 description 4
- 101001121408 Homo sapiens L-amino-acid oxidase Proteins 0.000 description 3
- 102100026388 L-amino-acid oxidase Human genes 0.000 description 3
- 101100012902 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) FIG2 gene Proteins 0.000 description 3
- 238000004590 computer program Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 2
- 239000011347 resin Substances 0.000 description 2
- 229920005989 resin Polymers 0.000 description 2
- 125000000174 L-prolyl group Chemical group [H]N1C([H])([H])C([H])([H])C([H])([H])[C@@]1([H])C(*)=O 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 239000000654 additive Substances 0.000 description 1
- 230000000996 additive effect Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000009792 diffusion process Methods 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000012778 molding material Substances 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
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
- 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
- B29C64/393—Data acquisition or data processing for additive manufacturing for controlling or regulating additive manufacturing processes
-
- 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
-
- 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
- B33Y50/02—Data acquisition or data processing for additive manufacturing for controlling or regulating additive manufacturing processes
Definitions
- the present application relates to the field of three-dimensional printing technology, and in particular to a three-dimensional printing method, device, equipment and storage medium.
- Rapid prototyping technology is also known as rapid prototyping technology or additive manufacturing technology. Its basic principle is to slice three-dimensional (3D) models and then process and stack them layer by layer to make 3D objects. Among them, the use of 3D inkjet technology to make 3D objects has been one of the hot topics of research in recent years.
- 3D inkjet technology can be used to make colorful 3D objects.
- four types of photocurable resin inks namely magenta (M), yellow (Y), cyan (C) and black (K), are used as molding materials for 3D objects, and white (W) or transparent (T) photocurable resin ink is used for supplementary printing to ensure that the amount of ink in each voxel remains consistent, avoiding uneven surface of the 3D object, which ultimately affects the dimensional accuracy of the 3D object.
- the embodiments of the present application provide a three-dimensional printing method, device, equipment and storage medium to solve the problem that color 3D objects produced by 3D inkjet technology cannot meet the requirements of different color transparency.
- an embodiment of the present application provides a three-dimensional printing method, which is applied to a terminal device, including: obtaining model data of a target 3D object, the target 3D object including multiple regions with different color transparency types; for each of the multiple regions, based on the color transparency type of the region, performing data processing on the model data of the region to satisfy a numerical type corresponding to the color transparency type of the region, to obtain printing data, wherein different color transparency types correspond to different numerical types; printing according to the printing data to obtain the target 3D object, wherein the numerical type includes at least a first numerical type and a second numerical type.
- the filling material corresponding to the first value type includes at least white material
- the filling material corresponding to the second value type is transparent material.
- the model data includes at least structure data and color data, and the color transparency type of each area is customized by the user or determined according to the color data.
- data processing is performed on the model data of the area to satisfy the numerical type corresponding to the color transparency type of the area to obtain printing data, including: based on the color transparency type of the area, data conversion processing is performed on the color data in the model data of the area to satisfy the numerical type corresponding to the color transparency type of the area; based on the structure data, slicing the model data after the data conversion processing is performed to obtain sliced data; and halftone processing is performed on the sliced data to obtain printing data.
- data processing is performed on the model data of the area to satisfy the numerical type corresponding to the color transparency type of the area to obtain printing data, including: slicing the model data based on the structural data to obtain sliced data; based on the color transparency type of the area, data conversion processing is performed on the color data in the sliced data to satisfy the numerical type corresponding to the color transparency type of the area; and halftone processing is performed on the data after the data conversion processing to obtain printing data.
- the color data is RGB data
- R, G, and B are sub-values of red, green, and blue corresponding to the color data, respectively, and data conversion processing is performed on the color data to meet the value type corresponding to the color transparency type of the area, including: arbitrarily selecting one of the sub-values of R, G, and B corresponding to the color data as the target sub-value; if the target sub-value is a first brightness level and does not meet the value type corresponding to the color transparency type of the area, then performing data conversion processing of addition or subtraction operation on the target sub-value based on the first value to meet the value type corresponding to the color transparency type of the area; if the target sub-value is a second brightness level and does not meet the value type corresponding to the color transparency type of the area, then performing data conversion processing of addition or subtraction operation on the target sub-value based on the second value to meet the value type corresponding to the color transparency type of the area.
- the three-dimensional printing method also includes: before halftone processing, converting the data into CMYK data in a printing color mode; correspondingly, the printing data is obtained in the following manner: halftone processing is performed on the CMYK data to obtain bitmap data; filling the bitmap data according to the numerical type corresponding to the area; and generating printing data based on the filled data.
- obtaining the model data of the target 3D object includes: obtaining the model data by scanning the target 3D object; and/or obtaining the model data by drawing the target 3D object using drawing software.
- printing is performed according to the printing data to obtain a target 3D object, including: Based on the printing data, each voxel corresponding to each slice layer is printed layer by layer in sequence using printing materials, wherein the printing materials include color materials and filling materials, each voxel includes multiple ink droplets, the total ink volume of different voxels is the same, and each ink droplet is sprayed using one color material or one filling material.
- an embodiment of the present application provides a three-dimensional printing device, which is applied to a terminal device, including: an acquisition module, used to acquire model data of a target 3D object, the target 3D object including multiple areas with different color transparency types; a data processing module, used to, for each of the multiple areas, perform data processing on the model data of the area based on the color transparency type of the area to satisfy the numerical type corresponding to the color transparency type of the area, and obtain printing data, wherein different color transparency types correspond to different numerical types; a printing module, used to print according to the printing data to obtain the target 3D object, wherein the numerical type includes at least a first numerical type and a second numerical type, the filling material corresponding to the first numerical type includes at least a white material, and the filling material corresponding to the second numerical type is a transparent material.
- the model data includes at least structure data and color data, and the color transparency type of each area is customized by the user or determined according to the color data.
- the data processing module is specifically used to: based on the color transparency type of the area, perform data conversion processing on the color data in the model data of the area to satisfy the numerical type corresponding to the color transparency type of the area; based on the structural data, perform slicing processing on the model data after the data conversion processing to obtain sliced data; perform halftone processing on the sliced data to obtain printing data.
- the data processing module can also be used to: slice the model data based on the structural data to obtain slice data; convert the color data in the slice data based on the color transparency type of the area to meet the numerical type corresponding to the color transparency type of the area; and halftone the data after the data conversion to obtain printing data.
- the color data is RGB data
- R, G, and B are sub-values of red, green, and blue corresponding to the color data, respectively.
- the data processing module can also be used to: arbitrarily select one of the sub-values corresponding to R, G, and B of the color data as the target sub-value; if the target sub-value is a first brightness level and does not satisfy the value type corresponding to the color transparency type of the area, then based on the first value, perform data conversion processing of addition or subtraction operation on the target sub-value to satisfy the value type corresponding to the color transparency type of the area; if the target sub-value is a second brightness level and does not satisfy the value type corresponding to the color transparency type of the area, then based on the second value, perform data conversion processing of addition or subtraction operation on the target sub-value to satisfy the value type corresponding to the color transparency type of the area.
- the data processing module may also be used to: convert the data into CMYK data in a printing color mode before halftone processing; correspondingly, the printing data is obtained by: performing halftone processing on the CMYK data to obtain bitmap data; and Type, fill the bitmap data; based on the filled data, generate print data.
- the acquisition module is specifically used to: obtain model data by scanning the target 3D object; and/or obtain model data by drawing the target 3D object using drawing software.
- the printing module is specifically used to: based on the printing data, use the printing material to print each voxel corresponding to each slice layer layer by layer in sequence, wherein the printing material includes a color material and a filling material, each voxel includes multiple ink droplets, the total ink volume of each voxel is the same, and each ink droplet is sprayed using one color material or one filling material.
- the present application provides an electronic device comprising: at least one processor; and a memory connected to the at least one processor; wherein the memory is used to store instructions executable by the at least one processor, the instructions being executed by the at least one processor to enable the at least one processor to execute the three-dimensional printing method provided in the first aspect.
- the present application provides a computer-readable storage medium, in which computer-executable instructions are stored. When the computer-executable instructions are executed, they are used to implement the three-dimensional printing method provided in the first aspect.
- the present application provides a program product, the program product comprising computer-executable instructions.
- the computer-executable instructions When executed, the three-dimensional printing method provided in the first aspect is implemented.
- the present application provides a three-dimensional printing method, apparatus, device and storage medium, which obtains model data of a target 3D object including multiple areas with different color transparency types, processes the model data of the area based on the color transparency type of the area to satisfy the numerical type corresponding to the color transparency type of the area for each of the multiple areas, obtains printing data, and prints according to the printing data to obtain the target 3D object, wherein different color transparency types correspond to different numerical types, and the numerical types at least include a first numerical type and a second numerical type, and the filling material corresponding to the first numerical type at least includes a white material, and the filling material corresponding to the second numerical type is a transparent material.
- the present application processes the model data of the area based on the color transparency type of the area to satisfy the numerical type corresponding to the color transparency type of the area, obtains printing data, and controls the material used for filling and printing, thereby realizing the simultaneous use of white material and transparent material to print target 3D objects with different color transparencies, meeting the needs of having different color transparencies, and improving the three-dimensional printing effect.
- FIG1 is a flow chart of a three-dimensional printing method provided by an embodiment of the present application.
- FIG2 is a flow chart of a three-dimensional printing method provided by another embodiment of the present application.
- FIG3 is a schematic diagram of color data before and after data conversion processing provided by an embodiment of the present application.
- FIG4 is another schematic diagram of color data before and after data conversion processing provided by an embodiment of the present application.
- FIG5 is a schematic structural diagram of a slice layer of a target 3D object portion after rasterization provided by an embodiment of the present application
- FIG6 is another schematic structural diagram of a slice layer after rasterization of a target 3D object portion provided in an embodiment of the present application.
- FIG. 7 is another structural schematic diagram of a slice layer after rasterization of a target 3D object portion provided in an embodiment of the present application.
- FIG8 is a schematic structural diagram of a three-dimensional printing device provided in an embodiment of the present application.
- FIG. 9 is a schematic diagram of the structure of an electronic device provided in an embodiment of the present application.
- the present application obtains printing data for printing 3D objects by processing the model data corresponding to a 3D object having multiple areas of different color transparency types based on the color transparency types corresponding to different areas to satisfy the numerical type corresponding to the color transparency type of the area, thereby realizing the control of the material used for filling and printing, and further realizing that in the process of printing 3D objects, white materials and transparent materials can be used simultaneously to print 3D objects with different color transparencies.
- the application scenarios provided by the embodiments of the present application include a terminal device, a 3D scanner and a 3D printer, wherein the terminal device is connected to the 3D scanner and the 3D printer respectively through communication.
- the terminal device can be a wireless terminal device such as a computer or a wired terminal device
- the 3D scanner can be a contact 3D scanner or a non-contact 3D scanner.
- the application scenarios can be Includes terminal devices and 3D printers only.
- slicing software may be installed in the terminal device. Specifically, the slicing software is used to perform corresponding data processing on model data corresponding to the 3D object to be printed.
- the terminal device may also be installed with 3D modeling software, specifically, the 3D modeling software is used to draw the 3D object to be printed.
- the 3D modeling software may be Computer Aided Drafting (CAD), Proe (Pro/Engineer), Solidwork, UG (Unigraphics NX, UG), 3D Max (3D Studio Max), etc.
- a 3D model corresponding to the 3D object is established on the terminal device side and model data corresponding to the 3D model is obtained. Then, the model data corresponding to the 3D model is further processed to obtain printing data, and the printing data is sent to the 3D printer through a communication connection for printing.
- the 3D model and the model data corresponding to the 3D model can be obtained by scanning with a 3D scanner connected to the terminal device, or by constructing with 3D modeling software installed in the terminal device, or by scanning with a 3D scanner connected to the terminal device and then reconstructing with 3D modeling software installed in the terminal device, or by other methods in the prior art.
- FIG1 is a flow chart of a three-dimensional printing method provided in an embodiment of the present application.
- the three-dimensional printing method is applied to a terminal device. As shown in FIG1 , the three-dimensional printing method includes the following steps:
- the target 3D object may be a 3D object of any shape.
- the model data may be one or more of the structural data, position data, size data, color data, density data, elasticity data, and hardness data corresponding to the target 3D object.
- the color data may be RGB data.
- the color data may also include color transparency data.
- the model data of the target 3D object can be obtained by scanning the target 3D object to obtain the corresponding model data.
- the target 3D object can be scanned using a 3D scanner as described in the above application scenario to obtain the corresponding model data.
- the drawing software is similar to the above and will not be repeated here. It can be understood that the target 3D object is obtained by drawing with drawing software.
- the basic structural model of the object therefore, on this basis, the drawn basic structural model needs to be colored.
- the drawn basic structural model can be directly colored and converted into a polygon file format (Polygon File Format, referred to as PLY); the basic structural model drawn by the drawing software can also be converted into a stereoscopic printing (Sterelithography, referred to as STL) format and then colored.
- the specific method of obtaining the model data is not limited.
- the color transparency type includes a color transparent type and a color opaque type. It is understandable that the color transparency type is determined by the type of the filling material. Specifically, when the filling material is a white material or a white material and a transparent material, the color transparency type obtained is a color opaque type, and when the filling material is a transparent material, the color transparency type obtained is a color transparent type.
- the color transparency type of each area corresponding to the target 3D object may be determined by a user, or may be determined according to position data in the model data of the target 3D object and color transparency data in the color data.
- the color transparency types corresponding to the two areas are color transparent and color opaque respectively; when the target 3D object includes three or more areas with different color transparency types, the color transparency types corresponding to two adjacent areas are different, namely, color transparent type and color opaque type respectively.
- the value type may be an odd number or an even number.
- the specific value of the value may be a value obtained by performing data conversion processing on any sub-value in the RGB data, namely, the R sub-value, the G sub-value or the B sub-value.
- the correspondence between the numerical type and the color transparency type can be: when the numerical type is an odd number, the corresponding area is defined as a color transparent type, and when the numerical type is an even number, the corresponding area is defined as a color opaque type; it can also be that when the numerical type is an odd number, the corresponding area is defined as a color opaque type, and when the numerical type is an even number, the corresponding area is defined as a color transparent type.
- the data processing of the model data may include data conversion processing of the color data, slicing processing and halftone processing of the model data after the data conversion processing, etc.
- the specific implementation method of the data processing is described in detail below in conjunction with the specific embodiments.
- the filling material corresponding to the second value type is a transparent material.
- each voxel corresponding to each slice layer is printed layer by layer based on the printing data to complete the printing of the target 3D object.
- each voxel corresponding to each slice layer is printed layer by layer using a printing material, wherein the printing material includes a color material and a filling material, the color material is used to reflect the color of the target 3D object, and the filling material is used to reflect the color transparency type of the target 3D object, each voxel includes multiple ink droplets, and the total ink volume of different voxels is the same, and each ink droplet is sprayed using a color material or a filling material.
- the color material may be magenta, yellow, cyan, black, etc.
- the filling material may be white material or transparent material.
- color materials are used for printing according to the print data, and when the value type corresponding to the print data is a first value type, at least white material is used for filling printing; when the value corresponding to the print data is a second value type, transparent material is used for filling printing.
- the first value type may be an odd number
- the corresponding filling material may be a white material or a white material and a transparent material.
- the second value type may be an even number
- the corresponding filling material may be a transparent material.
- the print data is of the first value type
- white material or a white material and a transparent material may be used for filling and printing, and the corresponding color transparency type is color opaque
- transparent material may be used for filling and printing
- the corresponding color transparency type is color transparent.
- a voxel when a voxel includes three ink droplets, in order to ensure that the total ink volume of each voxel is the same, when there is only one ink droplet corresponding to the color material, the other two ink droplets need to be filled with white material and/or transparent material.
- the corresponding color transparency type is the color transparent type
- the corresponding color transparency type is the color opaque type
- the corresponding color transparency type is the color opaque type
- model data of a target 3D object including a plurality of regions with different color transparency types, for each of the plurality of regions, based on the color transparency type of the region, data processing is performed on the model data of the region to satisfy the numerical type corresponding to the color transparency type of the region, print data is obtained, and printing is performed according to the print data to obtain the target 3D object, wherein no The same color transparency type corresponds to different numerical types, and the numerical types include at least a first numerical type and a second numerical type.
- the filling material corresponding to the first numerical type includes at least a white material, and the filling material corresponding to the second numerical type is a transparent material.
- the present application processes the model data of the region based on the color transparency type of the region to meet the numerical type corresponding to the color transparency type of the region, obtains printing data, and controls the material used for filling and printing, thereby achieving the simultaneous use of white material and transparent material to print target 3D objects with different color transparencies, meeting the needs of different color transparencies and improving the three-dimensional printing effect.
- the implementation method of obtaining printing data by performing data processing on the model data of the region based on the color transparency type of the region in step S102 to satisfy the numerical type corresponding to the color transparency type of the region is described in detail below in conjunction with FIG. 2 .
- FIG2 is a flow chart of a three-dimensional printing method provided by another embodiment of the present application. As shown in FIG2, based on the color transparency type of the region, the model data of the region is processed to meet the numerical type corresponding to the color transparency type of the region to obtain printing data, which may further include the following steps:
- the color data may be RGB data, wherein R (red), G (green), and B (blue) are the sub-values of the color data corresponding to red, green, and blue, respectively.
- RGB is represented by 8 bits, and each color can carry 2 to the 8th power (256) brightness levels, that is, RGB each has 256 brightness levels, generally represented by numbers from 0, 1, 2, 3, 4... to 255.
- the three color channels can be combined to produce 256 to the 3rd power (more than 16.7 million) colors, which can theoretically restore any color existing in nature.
- RGB can also be represented by 16 bits, and each color can carry 2 to the 16th power (65536) brightness levels, that is, RGB each has 65536 brightness levels, generally represented by numbers from 0 to 65536.
- the values of the R, G, and B sub-values can be represented by a 0-255 value or a 0-65536 value.
- the numerical value type is similar to the above, and will not be described in detail here.
- the first numerical value type may be an even number
- the second numerical value type may be an odd number.
- the color data in the model data of the region is converted to meet the value type corresponding to the color transparency type of the region.
- any one of the sub-values corresponding to R, G, and B of the color data is selected as the target sub-value; if the target sub-value is a first brightness level and does not meet the value type corresponding to the color transparency type of the region, the target sub-value is converted based on the first value.
- Data conversion processing of addition or subtraction operation is performed to satisfy the numerical type corresponding to the color transparency type of the area; if the target sub-value is the second brightness level and does not satisfy the numerical type corresponding to the color transparency type of the area, data conversion processing of addition or subtraction operation is performed on the target sub-value based on the second value to satisfy the numerical type corresponding to the color transparency type of the area.
- the target sub-value which can be a sub-value corresponding to R, or a sub-value corresponding to G or B.
- the numerical representation of the sub-value corresponding to the first brightness level may be 0-255
- the numerical representation of the sub-value corresponding to the second brightness level may be 0-65536.
- the second value may be N times the first value, where N is any positive integer.
- the first value may be 1, and the second value may be 1, 128, 255, etc.
- the target sub-value is subjected to data conversion processing of adding 1 or subtracting 1 to satisfy the value type corresponding to the color transparency type of the region; if the target sub-value is the second brightness level and does not satisfy the value type corresponding to the color transparency type of the region, the target sub-value is subjected to data conversion processing of adding 255 or subtracting 255 based on the second value to satisfy the value type corresponding to the color transparency type of the region. It is understandable that when the target sub-value is the first brightness level or the second brightness level and satisfies the value type corresponding to the color transparency type of the region, the target sub-value is not subjected to data conversion processing.
- FIG3 is a schematic diagram of the color data before and after the data conversion process provided by the embodiment of the present application.
- the color data corresponding to the arrow is the color data before the data conversion process is performed on the color data
- the color data corresponding to the arrow is the color data before the data conversion process is performed on the color data.
- the thick solid line represents the regional division boundary of the slice layer
- the part inside the thick solid line represents the first area
- the part outside the thick solid line represents the second area
- the color transparency type corresponding to the first area and the second area is different.
- each square represents a voxel
- the value in each square represents the target sub-value corresponding to the color data of the voxel.
- the color data of each square in FIG3 is (189, 255, 255), and the target sub-value can be the sub-value corresponding to R, that is, the color data before the data conversion process can be (189, 255, 255).
- the target value of the color data in the first area before the arrow is converted, that is, the target sub-value is subtracted by 1 so that the target sub-value satisfies the first value type of an even number, that is, the color value of each square in the first area is converted to (188, 255, 255), or the target sub-value is converted to (188, 255, 255).
- the value is added by 1 so that the target sub-value satisfies the first value type of an even number, that is, the color value of each square in the first area is converted to (190, 255, 255); the target value of the color data of the second area before the arrow is converted without performing data conversion so that the target sub-value satisfies the second value type of an odd number, that is, the color value of each square in the second area is (189, 255, 255).
- the specific operation method for data conversion processing in different areas can be selected according to actual needs.
- the target sub-value of the first area can be increased by 1 or remain unchanged, and the target sub-value of the second area can be reduced by 1 or remain unchanged;
- the target sub-value of the first area can be reduced by 1 or remain unchanged, and the target sub-value of the second area can be increased by 1 or remain unchanged;
- the target sub-value of the first area can be increased by 1 or remain unchanged;
- the target sub-value of the first area and the target sub-value of the second area can be reduced by 1 or remain unchanged, etc.
- the present application does not limit the specific data conversion method.
- RGB colors can combine a total of about 16.78 million colors.
- the three-dimensional printing device can achieve about 16.78 million different colors.
- the embodiment of the present application uses sub-values of color data to perform tiny addition and subtraction operations, and the color change error is kept within ⁇ 1 unit. Under the premise of almost not affecting the color performance of the target object, color data can be used to represent different color transparencies, thereby achieving the use of white materials and transparent materials simultaneously in the same 3D object printing process to print 3D objects with different color transparencies.
- FIG4 is another schematic diagram of the color data before and after the data conversion process provided by the embodiment of the present application.
- the color data corresponding to the arrow is the color data before the data conversion process is performed on the color data
- the color data corresponding to the arrow is the color data before the data conversion process is performed on the color data.
- the thick solid line represents the regional division boundary of the slice layer
- the part inside the thick solid line represents the first area
- the part outside the thick solid line represents the second area
- the color transparency types corresponding to the first area and the second area are different.
- each square represents a voxel
- the value in each square represents the target sub-value corresponding to the voxel color data.
- the target sub-value in FIG4 can be the sub-value corresponding to R.
- the method of performing data conversion processing on the target sub-value is similar to the above, which will not be repeated here.
- the above embodiment is a detailed description of the data conversion process when the target value is the first brightness level. It can be understood that when the target value is the second brightness level, the specific data conversion process
- the setting of the second value is determined by the value of the specific target sub-value, and the embodiment of the present application does not limit the setting of the second value.
- the model data after data conversion is cut into different slice layers according to a preset thickness using a slice software, each slice layer containing corresponding model data, ie, slice data.
- the structural data may be contour data corresponding to the target 3D object.
- the data format of the model data needs to be converted into a data format that can be recognized by the slicing software.
- the data format that can be recognized by the slicing software can be STL format, PLY format, and Virtual Reality Language (WRL) format.
- Halftone processing is a technology that uses colored dots to display images. By changing the size and depth of the dots, different colors can be simulated.
- the processing method used in the halftone processing includes at least one of the dithering method, the error diffusion method and the iterative method.
- bitmap data can be binary data or two-bit bitmap data.
- the binary data can be 1-bit bitmap data (1bit data), that is, the data at any position can be 0 or 1; two-bit bitmap data (2bit data), that is, the data at any position can be 0, 1, 2 or 3.
- bitmap data is used to reflect the deposition form of the ink droplets.
- bitmap data when the bitmap data is binary data, it indicates that the material corresponding to the ink droplet can be deposited or not deposited at a specific position. Specifically, when the bitmap data is 0, it indicates not depositing, and when the bitmap data is 1, it indicates depositing.
- bitmap data when the bitmap data is two-bit bitmap data, it means that the material corresponding to the ink droplet can be deposited in four forms of large, medium, small or none at a specific position. Specifically, when the bitmap data is 0, it can indicate no deposition; when the bitmap data is 1, it can indicate a small amount of ink deposition; when the bitmap data is 2, it can indicate a medium amount of ink deposition; when the bitmap data is 3, it can indicate a large amount of ink deposition.
- the bitmap data is described by taking binary data as an example.
- the filling data of the binary data is determined based on different numerical types of different regions, and data filling is performed based on the filling data.
- the filling data of the binary data determined based on the determined numerical type includes a filling position and a filling material type.
- the filling position can be the position of the ink droplet
- the filling material type can be a white material and a transparent material.
- different numerical types represent different filling methods
- the filling method refers to the method of filling the binary data after halftone processing, that is, the method of filling the voxels with insufficient color materials.
- the first numerical type represents a color opaque type
- at least white material is used for filling
- the second numerical type represents a color transparent type
- transparent material is used for filling.
- the printing data is generated based on the bitmap data after data filling.
- the bitmap data after data filling is format converted into a data format recognizable by the 3D printing device, so that the 3D printing device prints the target 3D object.
- the color data in the model data of the region is converted to meet the numerical type corresponding to the color transparency type of the region, the model data after the data conversion is sliced to obtain sliced data, and the sliced data is half-toned to obtain printing data.
- the color data is used for data processing to meet different numerical types to obtain printing data, thereby improving printing efficiency.
- the color data can be used to represent different color transparency types to achieve control of the material used for filling printing, thereby achieving the simultaneous use of white material and transparent material to print target 3D objects with different color transparencies, meeting the needs of different color transparencies and improving the three-dimensional printing effect.
- the model data of the region is processed to meet the numerical type corresponding to the color transparency type of the region
- the specific implementation method of obtaining the printing data can also be: based on the structure data, the model data is sliced to obtain the sliced data; based on the color transparency type of the region, the color data in the sliced data is converted to meet the numerical type corresponding to the color transparency type of the region; the data after the data conversion is processed is half-toned to obtain the printing data.
- the specific implementation method is similar to the above, and will not be repeated here.
- the 3D printing method provided in the embodiment of the present application may optionally include the following steps before step S303: converting the data into CMYK data in a printing color mode. Specifically, based on the slicing software, converting the RGB data into CMYK data.
- the printing data may be obtained in the following manner: performing halftone processing on CMYK data to obtain bitmap data; filling the bitmap data according to the value type corresponding to the area; and generating printing data based on the filled data.
- Figure 5 is a structural schematic diagram of a slice layer after rasterization of the target 3D object part provided in an embodiment of the present application. As shown in Figure 5, the slice layer includes two areas, the part inside the thick solid line represents the first area, and the part outside the thick solid line represents the second area.
- the first area and the second area both include a plurality of small squares of the same size, wherein each small square represents a voxel, and each voxel includes 3 ink droplets, wherein each rectangular box with a letter represents an ink droplet, and the letter represents the material corresponding to the filling of the ink droplet.
- T represents an ink droplet of a transparent material
- W represents an ink droplet of a white material
- C represents an ink droplet of a cyan material
- M represents an ink droplet of a magenta material
- Y represents an ink droplet of a yellow material
- K represents an ink droplet of a black material
- TW represents an ink droplet of a filling material
- CMYK represents an ink droplet of a color material.
- the ink droplets corresponding to one voxel are one cyan ink droplet and two white ink droplets.
- the ink droplets corresponding to the color materials are only cyan ink droplets.
- the remaining two ink droplets need to be filled with a filling material, that is, a white material or a transparent material.
- the ink droplets contained in one voxel in the figure are composed of CWW.
- the ink droplets contained in one voxel in the figure are composed of CTT.
- the colored material to be deposited in each voxel is determined based on the color data through halftoning processing, and when the amount of colored transparent material is insufficient to fill the space of the voxel, the material to be filled in each voxel is determined based on the numerical type of the sub-value of the color data.
- the voxel when the sub-value of the color data corresponding to the first area is of the first value type, i.e., an even number, the voxel is filled with at least white material, and the ink droplet combination of this part of the voxels can be any one of the following: formed by color material (CMYK) or color material and white material (CWW, MWW, YWW, KWW, CMW, CYW, CKW, MYW, MKW, YKW) or color material, white material and transparent material (CWT, MWT, YWT, KWT); when the sub-value of the color data corresponding to the second area is of the second value type, i.e., an odd number, the voxel is filled with transparent material, and the ink droplet combination of this part of the voxels can be any one of the following: formed by color material (CMYK) or color material and transparent material (CTT, MTT, YTT, KTT, CMT
- Figure 6 is another schematic diagram of the structure of the rasterized slice layer of the target 3D object part provided in the embodiment of the present application
- Figure 7 is another schematic diagram of the structure of the rasterized slice layer of the target 3D object part provided in the embodiment of the present application.
- the method for determining the material corresponding to each ink droplet deposited in each voxel is similar to the above, and will not be repeated here.
- FIG8 is a schematic diagram of the structure of a three-dimensional printing device provided in an embodiment of the present application.
- the three-dimensional printing device 50 includes: an acquisition module 510 , a data processing module 520 and a printing module 530 .
- the acquisition module 510 is used to acquire the model data of the target 3D object, which includes multiple areas with different color transparency types; the data processing module 520 is used to, for each of the multiple areas, perform data processing on the model data of the area based on the color transparency type of the area to satisfy the numerical type corresponding to the color transparency type of the area, and obtain printing data, wherein different color transparency types correspond to different numerical types; the printing module 530 is used to print according to the printing data to obtain the target 3D object, wherein the numerical type includes at least a first numerical type and a second numerical type, the filling material corresponding to the first numerical type includes at least a white material, and the filling material corresponding to the second numerical type is a transparent material.
- the model data includes at least structure data and color data, and the color transparency type of each area is customized by the user or determined according to the color data.
- the data processing module 520 is specifically used to: based on the color transparency type of the area, perform data conversion processing on the color data in the model data of the area to satisfy the numerical type corresponding to the color transparency type of the area; based on the structural data, perform slice processing on the model data after the data conversion processing to obtain slice data; perform halftone processing on the slice data to obtain printing data.
- the data processing module 520 can also be used to: slice the model data based on the structural data to obtain slice data; perform data conversion on the color data in the slice data based on the color transparency type of the region to meet the numerical type corresponding to the color transparency type of the region; and perform halftone processing on the data after the data conversion to obtain printing data.
- the color data is RGB data
- R, G, and B are sub-values of red, green, and blue corresponding to the color data, respectively.
- the data processing module 520 can also be used to: arbitrarily select one of the sub-values corresponding to R, G, and B of the color data as a target sub-value; if the target sub-value is a first brightness level and does not satisfy the value type corresponding to the color transparency type of the area, then based on the first value, perform data conversion processing of addition or subtraction operation on the target sub-value to satisfy the value type corresponding to the color transparency type of the area; if the target sub-value is a second brightness level and does not satisfy the value type corresponding to the color transparency type of the area, then based on the second value, perform data conversion processing of addition or subtraction operation on the target sub-value to satisfy the value type corresponding to the color transparency type of the area.
- the data processing module 520 can also be used to: convert the data into CMYK data in printing color mode before halftone processing; correspondingly, the print data is obtained in the following manner: halftone processing is performed on the CMYK data to obtain bitmap data; filling the bitmap data according to the numerical type corresponding to the area; and generating print data based on the filled data.
- the acquisition module 510 is specifically used to: obtain the model data by scanning the target 3D object; and/or obtain the model data by drawing the target 3D object using drawing software.
- the printing module 530 is specifically used to: based on the printing data, use the printing material to print each voxel corresponding to each slice layer layer by layer in sequence, wherein the printing material includes a color material and a filling material, the color material is used to reflect the color of the target 3D object, and the filling material is used to reflect the color transparency type of the target 3D object, each voxel includes multiple ink droplets, the total ink volume of each voxel is the same, and each ink droplet is sprayed using a color material or a filling material.
- the device provided in the embodiment of the present application can be used to execute the method steps provided in the above method embodiment. Its implementation principle and technical effects are similar and will not be repeated here.
- the division of the various modules of the above device is only a division of logical functions. In actual implementation, they can be fully or partially integrated into one physical entity, or they can be physically separated. And these modules can all be implemented in the form of software called by processing elements; they can also be all implemented in the form of hardware; some modules can also be implemented in the form of software called by processing elements, and some modules can be implemented in the form of hardware.
- the data processing module can be a separately established processing element, or it can be integrated in a chip of the above device. In addition, it can also be stored in the memory of the above device in the form of program code, and called and executed by a processing element of the above device. The implementation of other modules is similar.
- each step of the above method or each module above can be completed by an integrated logic circuit of hardware in the processor element or instructions in the form of software.
- the above modules may be one or more integrated circuits configured to implement the above methods, such as one or more application specific integrated circuits (ASIC), or one or more microprocessors (DSP), or one or more field programmable gate arrays (FPGA).
- ASIC application specific integrated circuits
- DSP microprocessors
- FPGA field programmable gate arrays
- the processing element may be a general-purpose processor, such as a central processing unit (CPU) or other processor that can call program code.
- these modules may be integrated together and implemented in the form of a system-on-a-chip (SOC).
- SOC system-on-a-chip
- all or part of the embodiments may be implemented by software, hardware, firmware, or any combination thereof.
- all or part of the embodiments may be implemented in the form of a computer program product.
- the computer program product includes one or more computer instructions. When the computer instructions are loaded and executed on a computer, the process or function according to the embodiments of the present application is generated in whole or in part.
- the computer may be A general-purpose computer, a special-purpose computer, a computer network, or other programmable device.
- Computer instructions can be stored in a computer-readable storage medium, or transmitted from one computer-readable storage medium to another computer-readable storage medium.
- Computer instructions can be transmitted from one website, computer, server, or data center to another website, computer, server, or data center by wired (e.g., coaxial cable, optical fiber, digital subscriber line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.) means.
- Computer-readable storage media can be any available medium that can be accessed by a computer or a data storage device such as a server or data center that includes one or more available media integrated. Available media can be magnetic media (e.g., floppy disks, hard disks, tapes), optical media (e.g., digital versatile disks, (DVD)), or semiconductor media (e.g., solid state disks (SSD)), etc.
- FIG9 is a schematic diagram of the structure of an electronic device provided by an embodiment of the present application.
- the electronic device 60 includes: at least one processor 610, a memory 620, a communication interface 630 and a system bus 640.
- the memory 620 and the communication interface 630 are connected to the processor 610 through the system bus 640 and complete the communication with each other, the memory 620 is used to store instructions, the communication interface 630 is used to communicate with other devices, and the processor 610 is used to call the instructions in the memory to execute the method steps provided in the above method embodiment.
- the specific implementation method and technical effect are similar and will not be repeated here.
- the electronic device 60 may be a computer device, specifically, the computer device may be a computing device such as a desktop computer, a notebook, a PDA, a cloud server, etc.
- the computer device may include, but is not limited to, a processor 610 and a memory 620.
- FIG9 is only an example of a computer device and does not constitute a limitation on the computer device, and may include more or fewer components than shown in the figure, or combine certain components, or different components, for example, the computer device may also include input and output devices, network access devices, buses, etc.
- the system bus 640 mentioned in FIG. 9 may be a Peripheral Component Interconnect (PCI) bus or an Extended Industry Standard Architecture (EISA) bus.
- PCI Peripheral Component Interconnect
- EISA Extended Industry Standard Architecture
- the system bus 640 may be divided into an address bus, a data bus, a control bus, etc. For ease of representation, only one thick line is used in the figure, but it does not mean that there is only one bus or one type of bus.
- the communication interface 630 is used to implement communication between the database access device and other devices (such as clients, read-write libraries, and read-only libraries).
- the memory 620 may include a random access memory (RAM), and may also include a non-volatile memory, such as at least one disk storage.
- the memory 620 may be an internal storage unit of the computer device, such as a computer
- the memory 620 may be a hard disk or memory of a computer device.
- the memory 620 may also be an external storage device of the computer device, such as a plug-in hard disk equipped on the computer device, a smart memory card (SMC), a secure digital (SD) card, a flash card, etc.
- the memory 620 may also include both an internal storage unit of the computer device and an external storage device.
- the memory 620 is used to store computer programs and other programs and data required by the computer device.
- the memory 620 may also be used to temporarily store data that has been output or is to be output.
- Processor 610 can be a general-purpose processor, including a central processing unit, a network processor (NP), etc.; a digital signal processor (DSP), an application specific integrated circuit (ASIC), a field programmable gate array (FPGA) or other programmable logic devices, discrete gate or transistor logic devices, and discrete hardware components.
- NP network processor
- DSP digital signal processor
- ASIC application specific integrated circuit
- FPGA field programmable gate array
- An embodiment of the present application also provides a computer-readable storage medium, in which computer execution instructions are stored.
- computer execution instructions When the computer execution instructions are executed by a processor, they are used to implement the method steps in the above method embodiment. The specific implementation method and technical effect are similar and will not be repeated here.
- the present application also provides a program product, which includes computer-executable instructions.
- a program product which includes computer-executable instructions.
- the computer-executable instructions When executed, the method steps in the above method embodiment are implemented.
- the specific implementation method and technical effect are similar and will not be repeated here.
- user information including but not limited to user device information, user personal information, etc.
- data including but not limited to data used for analysis, stored data, displayed data, etc.
- user information and data are all information and data authorized by the user or fully authorized by all parties, and the collection, use and processing of relevant data must comply with the relevant laws, regulations and standards of the relevant countries and regions, and provide corresponding operation entrances for users to choose to authorize or refuse.
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
本申请要求于2023年02月28日提交国家知识产权局、申请号为202310185282.6、申请名称为“三维打印方法、装置、设备及存储介质”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
本申请涉及三维打印技术领域,尤其涉及一种三维打印方法、装置、设备及存储介质。
快速成型技术又称为快速原型制造技术或加式制造技术,其基本原理是基于三维(Three-dimensiona,简称3D)模型切片后逐层加工堆积起来制作3D物体。其中,采用3D喷墨技术制作3D物体是近年来备受关注研究的热点之一。
相关技术中,3D喷墨技术可以用于制作彩色的3D物体,具体地,采用品红色(Magenta,简称M)、黄色(Yellow,简称Y)、青色(Cyan,简称C)以及黑色(Black,简称K)这四种光固化树脂墨水作为3D物体的成型材料,并以白色(White,简称W)或透明(Transparent,简称T)光固化树脂墨水补充打印以保证每个体素的墨量保持一致,避免造成3D物体的表面不平整,最终影响3D物体的尺寸精度。
但通过上述方式制作的3D物体,不能满足具有不同彩色透明度的需求。
发明内容
本申请实施例提供一种三维打印方法、装置、设备及存储介质,用以解决通过3D喷墨技术制作的彩色3D物体不能满足具有不同彩色透明度需求的问题。
第一方面,本申请实施例提供一种三维打印方法,应用于终端设备,包括:获取目标3D物体的模型数据,该目标3D物体包括多个具有不同彩色透明度类型的区域;针对多个区域中每个区域,分别基于区域的彩色透明度类型,对区域的模型数据进行数据处理以满足区域的彩色透明度类型对应的数值类型,得到打印数据,其中,不同彩色透明度类型对应不同的数值类型;根据打印数据进行打印,得到目标3D物体,其中,数值类型至少包括第一数值类型和第二数值
类型,第一数值类型对应的填充材料至少包括白色材料,第二数值类型对应的填充材料为透明材料。
一种可能的实现方式中,模型数据至少包括结构数据和色彩数据,每个区域的彩色透明度类型由用户自定义或根据色彩数据确定。
一种可能的实现方式中,基于区域的彩色透明度类型,对区域的模型数据进行数据处理以满足区域的彩色透明度类型对应的数值类型,得到打印数据,包括:基于区域的彩色透明度类型,对区域的模型数据中色彩数据进行数据转换处理,以满足区域的彩色透明度类型对应的数值类型;基于结构数据对数据转换处理后的模型数据进行切片处理,得到切片数据;对切片数据进行半色调处理,得到打印数据。
一种可能的实现方式中,基于区域的彩色透明度类型,对区域的模型数据进行数据处理以满足区域的彩色透明度类型对应的数值类型,得到打印数据,包括:基于结构数据对模型数据进行切片处理,得到切片数据;基于区域的彩色透明度类型,对切片数据中色彩数据进行数据转换处理,以满足区域的彩色透明度类型对应的数值类型;对数据转换处理后的数据进行半色调处理,得到打印数据。
一种可能的实现方式中,色彩数据为RGB数据,R、G、B分别为色彩数据对应红、绿、蓝的子数值,对色彩数据进行数据转换处理,以满足区域的彩色透明度类型对应的数值类型,包括:从色彩数据对应R、G、B的子数值中任意选取一个为目标子数值;若目标子数值为第一亮度级别,且不满足区域的彩色透明度类型对应的数值类型,则基于第一数值对目标子数值进行加法运算或减法运算的数据转换处理,以满足区域的彩色透明度类型对应的数值类型;若目标子数值为第二亮度级别,且不满足区域的彩色透明度类型对应的数值类型,则基于第二数值对目标子数值进行加法运算或减法运算的数据转换处理,以满足区域的彩色透明度类型对应的数值类型。
一种可能的实现方式中,该三维打印方法还包括:在半色调处理之前,将数据转换为印刷色彩模式CMYK数据;对应地,打印数据是通过以下方式得到的:对CMYK数据进行半色调处理,得到位图数据;根据区域对应的数值类型,对位图数据进行填充;基于填充后的数据,生成打印数据。
一种可能的实现方式中,获取目标3D物体的模型数据,包括:通过扫描目标3D物体得到模型数据;和/或通过绘图软件绘制目标3D物体得到模型数据。
一种可能的实现方式中,根据打印数据进行打印,得到目标3D物体,包括:
基于打印数据,使用打印材料依次逐层打印每一个切片层对应的每个体素,其中,打印材料包括彩色材料和填充材料,每个体素包括多个墨滴,不同体素的总墨量相同,每个墨滴使用一种彩色材料或一种填充材料喷出。
第二方面,本申请实施例提供一种三维打印装置,应用于终端设备,包括:获取模块,用于获取目标3D物体的模型数据,该目标3D物体包括多个具有不同彩色透明度类型的区域;数据处理模块,用于针对多个区域中每个区域,分别基于区域的彩色透明度类型,对区域的模型数据进行数据处理以满足区域的彩色透明度类型对应的数值类型,得到打印数据,其中,不同彩色透明度类型对应不同的数值类型;打印模块,用于根据打印数据进行打印,得到目标3D物体,其中,数值类型至少包括第一数值类型和第二数值类型,第一数值类型对应的填充材料至少包括白色材料,第二数值类型对应的填充材料为透明材料。
一种可能的实现方式中,模型数据至少包括结构数据和色彩数据,每个区域的彩色透明度类型由用户自定义或根据色彩数据确定。
一种可能的实现方式中,数据处理模块具体用于:基于区域的彩色透明度类型,对区域的模型数据中色彩数据进行数据转换处理,以满足区域的彩色透明度类型对应的数值类型;基于结构数据对数据转换处理后的模型数据进行切片处理,得到切片数据;对切片数据进行半色调处理,得到打印数据。
一种可能的实现方式中,数据处理模块还可以用于:基于结构数据对模型数据进行切片处理,得到切片数据;基于区域的彩色透明度类型,对切片数据中色彩数据进行数据转换处理,以满足区域的彩色透明度类型对应的数值类型;对数据转换处理后的数据进行半色调处理,得到打印数据。
一种可能的实现方式中,色彩数据为RGB数据,R、G、B分别为色彩数据对应红、绿、蓝的子数值,数据处理模块还可以用于:从色彩数据对应R、G、B的子数值中任意选取一个为目标子数值;若目标子数值为第一亮度级别,且不满足区域的彩色透明度类型对应的数值类型,则基于第一数值对目标子数值进行加法运算或减法运算的数据转换处理,以满足区域的彩色透明度类型对应的数值类型;若目标子数值为第二亮度级别,且不满足区域的彩色透明度类型对应的数值类型,则基于第二数值对目标子数值进行加法运算或减法运算的数据转换处理,以满足区域的彩色透明度类型对应的数值类型。
一种可能的实现方式中,数据处理模块还可以用于:在半色调处理之前,将数据转换为印刷色彩模式CMYK数据;对应地,打印数据是通过以下方式得到的:对CMYK数据进行半色调处理,得到位图数据;根据区域对应的数值类
型,对位图数据进行填充;基于填充后的数据,生成打印数据。
一种可能的实现方式中,获取模块具体用于:通过扫描目标3D物体得到模型数据;和/或通过绘图软件绘制目标3D物体得到模型数据。
一种可能的实现方式中,打印模块具体用于:基于打印数据,使用打印材料依次逐层打印每一个切片层对应的每个体素,其中,打印材料包括彩色材料和填充材料,每个体素包括多个墨滴,每个体素的总墨量相同,每个墨滴使用一种彩色材料或一种填充材料喷出。
第三方面,本申请提供一种电子设备,包括:至少一个处理器;以及与至少一个处理器连接的存储器;其中,存储器用于存储至少一个处理器可执行的指令,该指令被至少一个处理器执行,以使至少一个处理器能够执行第一方面提供的三维打印方法。
第四方面,本申请提供一种计算机可读存储介质,该计算机可读存储介质中存储有计算机执行指令,计算机执行指令被执行时用于实现第一方面提供的三维打印方法。
第五方面,本申请提供一种程序产品,该程序产品包含计算机执行指令。当计算机执行指令被执行时,以实现第一方面提供的三维打印方法。
本申请提供一种三维打印方法、装置、设备及存储介质,通过获取包括多个具有不同彩色透明度类型区域的目标3D物体的模型数据,针对多个区域中每个区域,分别基于区域的彩色透明度类型,对区域的模型数据进行数据处理以满足区域的彩色透明度类型对应的数值类型,得到打印数据,并根据打印数据进行打印,得到目标3D物体,其中,不同彩色透明度类型对应不同的数值类型,数值类型至少包括第一数值类型和第二数值类型,第一数值类型对应的填充材料至少包括白色材料,第二数值类型对应的填充材料为透明材料。本申请通过基于区域的彩色透明度类型,对区域的模型数据进行数据处理以满足区域的彩色透明度类型对应的数值类型,得到打印数据,实现对用于填充打印的材料的控制,进而实现同时使用白色材料和透明材料来打印具有不同彩色透明度的目标3D物体,满足具有不同彩色透明度的需求,提升三维打印效果。
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。
图1为本申请一实施例提供的三维打印方法的流程图;
图2为本申请又一实施例提供的三维打印方法的流程图;
图3为本申请实施例提供的对色彩数据进行数据转换处理前后的一示意图;
图4为本申请实施例提供的对色彩数据进行数据转换处理前后的另一示意图;
图5为本申请实施例提供的目标3D物体部分的栅格化后的切片层的一结构示意图;
图6为本申请实施例提供的目标3D物体部分的栅格化后的切片层的又一结构示意图;
图7为本申请实施例提供的目标3D物体部分的栅格化后的切片层的另一结构示意图;
图8为本申请一实施例提供的三维打印装置的结构示意图;
图9为本申请一实施例提供的电子设备的结构示意图。
通过上述附图,已示出本申请明确的实施例,后文中将有更详细的描述。这些附图和文字描述并不是为了通过任何方式限制本申请构思的范围,而是通过参考特定实施例为本领域技术人员说明本申请的概念。
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
基于相关技术中存在的问题,本申请通过对具有多个不同彩色透明度类型区域的3D物体对应的模型数据,基于不同区域对应的彩色透明度类型进行数据处理以满足区域的彩色透明度类型对应的数值类型,得到用于打印3D物体的打印数据,实现对用于填充打印的材料的控制,进而实现在打印3D物体的过程中,可以同时使用白色材料和透明材料来打印具有不同彩色透明度的3D物体。
为了便于理解,首先对本申请实施例的应用场景进行介绍。
本申请实施例提供的应用场景包括终端设备、3D扫描仪和3D打印机,其中,终端设备分别与3D扫描仪和3D打印机之间通过通信连接。可选地,终端设备可以为计算机等无线终端设备或有线终端设备,3D扫描仪可以为接触式3D扫描仪,也可以为非接触式3D扫描仪。可选地,在其他实施例中,应用场景可
仅包括终端设备和3D打印机。
可选地,终端设备中可以安装有切片软件,具体的,该切片软件用于对待打印3D物体对应的模型数据进行对应的数据处理。
可选地,终端设备中还可以安装有3D建模软件,具体的,3D建模软件用于绘制待打印的3D物体。示例性的,3D建模软件可以为计算机辅助设计(Computer Aided Drafting,简称CAD)、Proe(Pro/Engineer,简称Proe)、Solidwork、UG(Unigraphics NX,简称UG)以及3D Max(3D Studio Max)等。
具体的,在进行3D物体打印时,首先在终端设备端建立与3D物体对应的3D模型并获取该3D模型对应的模型数据,通过进一步对3D模型对应的模型数据进行处理得到打印数据,并将该打印数据通过通信连接发送给3D打印机进行打印。示例性的,对于3D模型以及与3D模型对应的模型数据的获取,可以通过与终端设备连接的3D扫描仪通过扫描的方式获取,也可以通过终端设备中安装的3D建模软件构建得到,也可以通过与终端设备连接的3D扫描仪通过扫描的方式获取后再通过终端设备中安装的3D建模软件重建得到,也可以选择现有技术的其它方式得到。
基于上述应用场景,下面结合具体的实施例对本申请实施例提供的三维打印方法进行详细的说明。
图1为本申请一实施例提供的三维打印方法的流程图。该三维打印方法应用于终端设备。如图1所示,该三维打印方法包括以下步骤:
S101,获取目标3D物体的模型数据,该目标3D物体包括多个具有不同彩色透明度类型的区域。
示例性的,目标3D物体可以是任意形状的3D物体。
可选地,模型数据可以为目标3D物体对应的结构数据、位置数据、尺寸数据、色彩数据、密度数据、弹性数据以及软硬度数据等数据中的一项或者多项。示例性的,色彩数据可以为RGB数据。在一些实施例中,色彩数据还可以包括彩色透明度数据。
可选地,目标3D物体的模型数据可以通过以下方式获取:通过扫描目标3D物体得到对应的模型数据。具体的,通过扫描目标3D物体得到模型数据时,可以采用如上述应用场景中所述的3D扫描仪对目标3D物体进行扫描,以得到对应的模型数据。
和/或通过绘图软件绘制目标3D物体得到模型数据。具体的,绘图软件与上述类似,这里不再赘述。可以理解的是,通过绘图软件绘制得到的是目标3D
物体的基本结构模型,因此,在此基础上还需对绘制出的基本结构模型进行配色。常用配色方式有多种,示例性的,可以直接对绘制好的基本结构模型进行配色后转换成多边形文件格式(Polygon File Format,简称PLY);也可以将绘图软件绘制好的基本结构模型转换成立体印刷(Sterelithography,简称STL)格式后再进行配色等。本申请实施例提供的三维打印方法中,对模型数据的具体获取方式不做限定。
示例性的,彩色透明度类型包括彩色透明类型和彩色不透明类型。可以理解的是,彩色透明度类型是由填充材料的类型决定的。具体的,当填充材料为白色材料或白色材料和透明材料时,其得到的彩色透明度类型为彩色不透明类型,当填充材料为透明材料时,其得到的彩色透明度类型为彩色透明类型。
可选地,目标3D物体对应的每个区域的彩色透明度类型可以由用户自定义确定,也可以根据目标3D物体的模型数据中的位置数据以及色彩数据中的彩色透明度数据等确定。
可以理解的是,当目标3D物体包括2个具有不同彩色透明度类型的区域时,两个区域对应的彩色透明度类型分别为彩色透明和彩色不透明;当目标3D物体包括3个或多个具有不同彩色透明度类型的区域时,两个相邻区域对应的彩色透明度类型不相同,分别为彩色透明类型和彩色不透明类型。
S102,针对多个区域中每个区域,分别基于区域的彩色透明度类型,对区域的模型数据进行数据处理以满足区域的彩色透明度类型对应的数值类型,得到打印数据,其中,不同彩色透明度类型对应不同的数值类型。
示例性的,数值类型可以为奇数或偶数。具体的,数值的具体值可以为对RGB数据中任意一个子数值即R子数值、G子数值或B子数值进行数据转换处理后得到的数值。
示例性的,数值类型和彩色透明度类型之间的对应关系可以为:当数值类型为奇数时,定义对应的区域为彩色透明类型,当数值类型为偶数时,定义对应的区域为彩色不透明类型;也可以为当数值类型为奇数时,定义对应的区域为彩色不透明类型,当数值类型为偶数时,定义对应的区域为彩色透明类型。
可选地,对模型数据进行的数据处理可以包括对色彩数据的数据转换处理,对数据转换处理后的模型数据进行切片处理以及半色调处理等,具体的数据处理的实现方式下面结合具体的实施例进行详细的说明。
S103,根据打印数据进行打印,得到目标3D物体,其中,数值类型至少包括第一数值类型和第二数值类型,第一数值类型对应的填充材料至少包括白色
材料,第二数值类型对应的填充材料为透明材料。
可以理解的是,在打印目标3D物体时,是基于打印数据,依次逐层打印每一个切片层对应的每一个体素,以完成对目标3D物体的打印。一种可能的实现方式中,基于打印数据,使用打印材料依次逐层打印每一个切片层对应的每个体素,其中,打印材料包括彩色材料和填充材料,彩色材料用于体现目标3D物体的颜色,填充材料用于体现目标3D物体的彩色透明度类型,每个体素包括多个墨滴,不同体素的总墨量相同,每个墨滴使用一种彩色材料或一种填充材料喷出。
示例性的,彩色材料可以为品红色、黄色、青色以及黑色等材料,填充材料可以为白色材料或透明材料。
可选地,根据打印数据使用彩色材料进行打印,且当打印数据对应的数值类型为第一数值类型时,至少使用白色材料进行填充打印;当打印数据对应的数值为第二数值类型时,使用透明材料进行填充打印。
示例性的,第一数值类型可以为奇数,其对应的填充材料可以为白色材料或白色材料和透明材料。第二数值类型可以为偶数,其对应的填充材料可以为透明材料。具体的,当打印数据为第一数值类型时,可以使用白色材料或白色材料和透明材料进行填充打印,其对应的彩色透明度类型为彩色不透明;当打印数据为第二数值类型时,可以使用透明材料进行填充打印,其对应的彩色透明度类型为彩色透明。
示例性的,当一个体素包括3个墨滴时,为保证每个体素的总墨量相同,当彩色材料对应的墨滴只有一个时,则其余两个墨滴需要填充白色材料和/或透明材料。具体的,当该体素包括一滴品红色墨滴和两滴透明墨滴时,其对应的彩色透明度类型为彩色透明类型;当该体素包括一滴品红色墨滴和两滴白色墨滴时,其对应的彩色透明度类型为彩色不透明类型;当该体素包括一滴品红色墨滴、一滴白色墨滴和一滴透明墨滴时,其对应的彩色透明度类型为彩色不透明类型。
需要说明的是,本申请实施例提供的三维打印方法中,对一个体素中包含的墨滴的个数不做限定。
本申请实施例中,通过获取包括多个具有不同彩色透明度类型区域的目标3D物体的模型数据,针对多个区域中每个区域,分别基于区域的彩色透明度类型,对区域的模型数据进行数据处理以满足区域的彩色透明度类型对应的数值类型,得到打印数据,并根据打印数据进行打印,得到目标3D物体,其中,不
同彩色透明度类型对应不同的数值类型,数值类型至少包括第一数值类型和第二数值类型,第一数值类型对应的填充材料至少包括白色材料,第二数值类型对应的填充材料为透明材料。本申请通过基于区域的彩色透明度类型,对区域的模型数据进行数据处理以满足区域的彩色透明度类型对应的数值类型,得到打印数据,实现对用于填充打印的材料的控制,进而实现同时使用白色材料和透明材料来打印具有不同彩色透明度的目标3D物体,满足具有不同彩色透明度的需求,提升三维打印效果。
基于上述实施例,下面结合图2对步骤S102中基于区域的彩色透明度类型,对区域的模型数据进行数据处理以满足区域的彩色透明度类型对应的数值类型,得到打印数据的实现方式进行详细的说明。
图2为本申请又一实施例提供的三维打印方法的流程图。如图2所示,基于区域的彩色透明度类型,对区域的模型数据进行数据处理以满足区域的彩色透明度类型对应的数值类型,得到打印数据,具体还可以包括以下步骤:
S201,基于区域的彩色透明度类型,对区域的模型数据中色彩数据进行数据转换处理,以满足区域的彩色透明度类型对应的数值类型。
示例性的,色彩数据可以为RGB数据,其中,R(red)、G(green)、B(blue)分别为色彩数据对应红色、绿色、蓝色的子数值。通过对红(R)、绿(G)、蓝(B)三个颜色通道的变化以及它们相互之间的叠加可得到各式各样的颜色。通常情况下,一些实施例中,RGB以8位表示,在每种颜色上可以负载2的8次方(256)种亮度级别,即RGB各有256级亮度,一般用数字表示为从0、1、2、3、4…到255。这样三种颜色通道合在一起就可以产生256的3次方(1670多万)种颜色,它在理论上可以还原自然界中存在的任何颜色。另一些实施例中,RGB也可以以16位表示,在每种颜色上可以负载2的16次方(65536)种亮度级别,即RGB各有65536级亮度,一般用数字表示为从0~65536。
可选地,R、G、B子数值的取值可以用0-255数值表示,也可以用0-65536数值表示。
具体的,数值类型与上述类似,这里不再赘述。示例性的,第一数值类型可以为偶数,第二数值类型可以为奇数。
对区域的模型数据中色彩数据进行数据转换处理,以满足区域的彩色透明度类型对应的数值类型,一种可能的实现方式中,从色彩数据对应R、G、B的子数值中任意选取一个为目标子数值;若目标子数值为第一亮度级别,且不满足区域的彩色透明度类型对应的数值类型,则基于第一数值对目标子数值进行
加法运算或减法运算的数据转换处理,以满足区域的彩色透明度类型对应的数值类型;若目标子数值为第二亮度级别,且不满足区域的彩色透明度类型对应的数值类型,则基于第二数值对目标子数值进行加法运算或减法运算的数据转换处理,以满足区域的彩色透明度类型对应的数值类型。
可以理解的是,本申请实施例提供的三维打印方法中,对目标子数值的选取不做限定,可以是R对应的子数值,也可以是G或B对应的子数值。
示例性的,第一亮度级别对应的子数值的数值表示可以为0-255,第二亮度级别对应的子数值的数值表示可以为0-65536。
可选地,第二数值可以为第一数值的N倍,N为任意的正整数。示例性的,第一数值可以为1,第二数值可以为1,也可以为128,还可以为255等。一种可能的实现方式中,若目标子数值为第一亮度级别,且不满足区域的彩色透明度类型对应的数值类型,则对目标子数值进行加1运算或减1运算的数据转换处理,以满足区域的彩色透明度类型对应的数值类型;若目标子数值为第二亮度级别,且不满足区域的彩色透明度类型对应的数值类型,则基于第二数值对目标子数值进行加255运算或减255运算的数据转换处理,以满足区域的彩色透明度类型对应的数值类型。可以理解的是,当目标子数值为第一亮度级别或第二亮度级别,且满足区域的彩色透明度类型对应的数值类型时,则不对目标子数值进行数据转换处理。
本申请实施例中,以目标子数值为第一亮度级别为例,结合图3和图4对色彩数据进行数据转换处理的方式进行详细说明。
图3为本申请实施例提供的对色彩数据进行数据转换处理前后的一示意图。如图3所示,箭头前对应的色彩数据为对色彩数据进行数据转换处理前的色彩数据,箭头后对应的色彩数据为对色彩数据进行数据转换处理前的色彩数据。其中,粗实线表示切片层的区域划分界限,粗实线内侧的部分表示第一区域,粗实线外侧的部分表示第二区域,且第一区域和第二区域对应的彩色透明度类型不同。具体的,每一个方格表示一个体素,每一个方格内的数值表示该体素色彩数据对应的目标子数值。示例性的,图3中每个方格的色彩数据均为(189,255,255),目标子数值可以为R对应的子数值,即对于进行数据转换处理前的色彩数据可以为(189,255,255)。
如图3中所示,对箭头前第一区域色彩数据的目标数值进行数据转换,即对该目标子数值进行减1运算使得该目标子数值满足为偶数的第一数值类型,即第一区域中每个方格的色彩数值转变为(188,255,255),或对该目标子数
值进行加1运算使得该目标子数值满足为偶数的第一数值类型,即第一区域中每个方格的色彩数值转变为(190,255,255);对箭头前第二区域色彩数据的目标数值进行数据转换不运算,使得该目标子数值满足为奇数的第二数值类型,即第二区域中每个方格的色彩数值为(189,255,255)。
需要说明的是,对不同区域数据转换处理的具体运算方式可根据实际需求选择,具体的,可以为对第一区域的目标子数值进行加1或不变的运算,对第二区域的目标子数值进行减1或不变的运算;也可以为对第一区域的目标子数值进行减1或不变的运算,对第二区域的目标子数值进行加1或不变的运算;还可以为对第一区域的目标子数值和第二区域的目标子数值均进行加1或不变的运算;还可以为对第一区域的目标子数值和第二区域的目标子数值均进行减1或不变的运算等,只要保证数据转换后的目标子数值与原目标子数值的误差保持在±1之内,即颜色变化误差保持在±1个单位内,不影响目标3D物体颜色的表现即可,本申请对具体的数据转换方式不做限定。
可以理解的是,256级的RGB色彩总共能组合出约1678万种色彩,则理论上三维打印装置可以实现约1678万种不同的颜色,但由于输出过程中颜色信息的损失、输出技术和环境的限制,实际上能产生的颜色数量比理论值少,本申请实施例利用色彩数据的子数值进行微小的加减运算,颜色变化误差保持在±1个单位内,在几乎不影响目标物体的颜色表现的前提下,可以使用色彩数据以表示不同的彩色透明度,从而可以实现在同一3D物体打印过程中同时使用白色材料和透明材料来打印不同彩色透明度的3D物体。
图4为本申请实施例提供的对色彩数据进行数据转换处理前后的另一示意图。如图4所示,箭头前对应的色彩数据为对色彩数据进行数据转换处理前的色彩数据,箭头后对应的色彩数据为对色彩数据进行数据转换处理前的色彩数据。其中,粗实线表示切片层的区域划分界限,粗实线内侧的部分表示第一区域,粗实线外侧的部分表示第二区域,且第一区域和第二区域对应的彩色透明度类型不同。具体的,每一个方格表示一个体素,每一个方格内的数值表示该体素色彩数据对应的目标子数值。示例性的,图4中的目标子数值可以为R对应的子数值。
具体的,对目标子数值进行数据转换处理的方式与上述类似,这里不再赘述。
上述实施例为对目标数值为第一亮度级别时,进行数据转换处理的详细说明。可以理解的是,当目标子数值为第二亮度级别时,其具体的数据转换处理
方式与上述类似。第二数值的设定由具体的目标子数值的值决定,本申请实施例对第二数值的设定不做限定。
S202,基于结构数据对数据转换处理后的模型数据进行切片处理,得到切片数据。
可选地,基于结构数据,采用切片软件将数据转换处理后的模型数据根据预设的厚度切割为不同的切片层,每个切片层中包含有对应的模型数据,即切片数据。具体的,结构数据可以为目标3D物体对应的轮廓数据。
需要说明的是,在对模型数据进行切片处理之前,还需要对模型数据的数据格式进行转换,转换为切片软件可以识别的数据格式。示例性的,切片软件可以识别的数据格式可以为STL格式、PLY格式以及虚拟显示语言(Virtual Reality Language,简称WRL)格式等。
S203,对切片数据进行半色调处理,得到打印数据。
半色调处理是一种利用彩色点状来显示图像的技术。通过变化点的大小和深度,可以模拟显示出不同的颜色。该半色调处理采用的处理方式包括抖动法、误差扩散法以及迭代法中的至少一种。
可选地,对切片数据进行半色调处理,首先得到位图数据。示例性的,位图数据可以为二值数据或二位位图数据。具体的,二值数据可以为1位位图数据(1bit数据),即任意一个位置的数据可以是0或1;二位位图数据(2bit数据),即任意一个位置的数据可以是0、1、2或3。本申请实施例提供的三维打印方法中,位图数据用于反映墨滴的沉积形式。
示例性的,当位图数据为二值数据时,表示墨滴对应的材料在特定位置可以选择以沉积或不沉积两种形式进行沉积。具体的,当位图数据为0时,可以表示不沉积,当位图数据为1时,可以表示沉积。
示例性的,当位图数据为二位位图数据时,表示墨滴对应的材料在特定位置可以选择大、中、小或无四种形式进行沉积。具体的,当位图数据为0时,可以表示不沉积;当位图数据为1时,可以表示小墨量沉积;当位图数据为2时,可以表示中墨量沉积;当位图数据为3时,可以表示大墨量沉积。
一些实施例中,位图数据以二值数据为例进行说明。可选地,在得到位图数据后,基于不同区域的不同数值类型确定二值数据的填充数据,并基于该填充数据进行数据填充。其中,基于确定的数值类型确定二值数据的填充数据包括填充位置和填充材料类型。示例性的,填充位置可以为墨滴的位置,填充材料类型可以为白色材料和透明材料。
具体的,不同数值类型代表不同的填充方式,填充方式是指对半色调处理后的二值数据进行填充的方式,即对彩色材料不足的体素的填充方式。示例性的,第一数值类型代表彩色不透明类型时,至少使用白色材料填充;第二数值类型代表彩色透明类型时,使用透明材料填充。
可选地,打印数据是基于数据填充后的位图数据生成的。具体的,对基于数据填充后的位图数据进行格式转换,转换为3D打印装置可以识别的数据格式,以使3D打印装置进行对目标3D物体的打印。
本申请实施例,通过基于区域的彩色透明度类型,对区域的模型数据中色彩数据进行数据转换处理,以满足区域的彩色透明度类型对应的数值类型,对数据转换处理后的模型数据进行切片处理,得到切片数据,对切片数据进行半色调处理,得到打印数据。本申请实施例通过利用色彩数据进行数据处理以满足不同数值类型得到打印数据,提高打印效率,在几乎不影响目标物体的颜色表现的前提下,可以使用色彩数据以表示不同的彩色透明度类型,实现对用于填充打印的材料的控制,进而实现同时使用白色材料和透明材料来打印具有不同彩色透明度的目标3D物体,满足具有不同彩色透明度的需求,提升三维打印效果。
可选地,基于区域的彩色透明度类型,对区域的模型数据进行数据处理以满足区域的彩色透明度类型对应的数值类型,得到打印数据的具体实现方式还可以为:基于结构数据对模型数据进行切片处理,得到切片数据;基于区域的彩色透明度类型,对切片数据中色彩数据进行数据转换处理,以满足区域的彩色透明度类型对应的数值类型;对数据转换处理后的数据进行半色调处理,得到打印数据。其具体的实现方式与上述类似,这里不再赘述。
需要说明的是,对色彩数据进行数据转换处理以满足不同数值类型和进行切片处理的顺序可根据需求选择,本申请实施例提供的三维打印方法中对此不作限定。
基于上述实施例,本申请实施例提供的三维打印方法,可选地,在步骤S303之前,还可以包括以下步骤:将数据转换为印刷色彩模式CMYK数据。具体的,基于切片软件,将RGB数据转换为CMYK数据。
可选地,打印数据可以通过以下方式得到:对CMYK数据进行半色调处理,得到位图数据;根据区域对应的数值类型,对位图数据进行填充;基于填充后的数据,生成打印数据。
下面结合图5对步骤根据CMYK数据、每个体素对应的预设墨滴个数以及
区域对应的数值类型,对位图数据进行填充的具体实现方式进行详细说明。图5为本申请实施例提供的目标3D物体部分的栅格化后的切片层的一结构示意图。如图5所示,该切片层中包括两个区域,粗实线内侧的部分表示第一区域,粗实线外侧的部分表示第二区域。第一区域和第二区域均包括多个大小相同的小方格,其中,每个小方格表示一个体素,每个体素中包括3个墨滴,其中每一个带有字母的长方形框分别表示一个墨滴,以及字母表示该墨滴对应填充的材料。示例性的,T表示透明材料的墨滴,W为白色材料的墨滴,C为青色材料的墨滴,M为品红色材料的墨滴,Y为黄色材料的墨滴,K为黑色材料的墨滴,TW为填充材料的墨滴,CMYK均为彩色材料的墨滴。
示例性的,如图5所示,在第一区域中,其中一个体素内对应的墨滴分别为一滴青色材料墨滴和两滴白色材料墨滴。具体的,通过CMYK数据可知其彩色材料对应的墨滴只有青色材料墨滴,则为了确保每个体素中总的墨量相同,当预设墨滴个数为3时,剩余的两个墨滴需要通过填充材料即白色材料或透明材料进行填充,其图中示例的一个体素包含的墨滴组成为CWW。示例性的,在第二区域,其图中示例的一个体素包含的墨滴组成为CTT。
可选地,通过半色调处理基于色彩数据确定每个体素中应当沉积的彩色材料,并在彩色透明材料的量不足以填满体素的空间时,基于色彩数据的子数值的数值类型确定每个体素中应当填充的材料。示例性的,当第一区域对应的色彩数据的子数值为第一数值类型即偶数时,则至少使用白色材料对该体素进行填充,该部分体素的墨滴组合可以为以下任意一种:由彩色材料(CMYK)或彩色材料和白色材料(CWW、MWW、YWW、KWW、CMW、CYW、CKW、MYW、MKW、YKW)或彩色材料和白色材料和透明材料(CWT、MWT、YWT、KWT)形成,当第二区域对应的色彩数据的子数值为第二数值类型即奇数时,则使用透明材料对该体素进行填充,该部分体素的墨滴组合可以为以下的任意一种:由彩色材料(CMYK)或彩色材料和透明材料(CTT、MTT、YTT、KTT、CMT、CYT、CKT、MYT、MKT、YKT)形成。
图6为本申请实施例提供的目标3D物体部分的栅格化后的切片层的又一结构示意图,图7为本申请实施例提供的目标3D物体部分的栅格化后的切片层的另一结构示意图。具体的,每个体素中对应每个墨滴沉积的材料的确定方式与上述类似,这里不再赘述。
下述为本申请装置实施例,可以用于执行本申请方法实施例。对于本申请装置实施例中未披露的细节,请参照本申请方法实施例。
图8为本申请一实施例提供的三维打印装置的结构示意图。如图8所示,该三维打印装置50包括:获取模块510、数据处理模块520以及打印模块530。
其中,获取模块510,用于获取目标3D物体的模型数据,该目标3D物体包括多个具有不同彩色透明度类型的区域;数据处理模块520,用于针对多个区域中每个区域,分别基于区域的彩色透明度类型,对区域的模型数据进行数据处理以满足区域的彩色透明度类型对应的数值类型,得到打印数据,其中,不同彩色透明度类型对应不同的数值类型;打印模块530,用于根据打印数据进行打印,得到目标3D物体,其中,数值类型至少包括第一数值类型和第二数值类型,第一数值类型对应的填充材料至少包括白色材料,第二数值类型对应的填充材料为透明材料。
一种可能的实现方式中,模型数据至少包括结构数据和色彩数据,每个区域的彩色透明度类型由用户自定义或根据色彩数据确定。
一种可能的实现方式中,数据处理模块520具体用于:基于区域的彩色透明度类型,对区域的模型数据中色彩数据进行数据转换处理,以满足区域的彩色透明度类型对应的数值类型;基于结构数据对数据转换处理后的模型数据进行切片处理,得到切片数据;对切片数据进行半色调处理,得到打印数据。
一种可能的实现方式中,数据处理模块520还可以用于:基于结构数据对模型数据进行切片处理,得到切片数据;基于区域的彩色透明度类型,对切片数据中色彩数据进行数据转换处理,以满足区域的彩色透明度类型对应的数值类型;对数据转换处理后的数据进行半色调处理,得到打印数据。
一种可能的实现方式中,色彩数据为RGB数据,R、G、B分别为色彩数据对应红、绿、蓝的子数值,数据处理模块520还可以用于:从色彩数据对应R、G、B的子数值中任意选取一个为目标子数值;若目标子数值为第一亮度级别,且不满足区域的彩色透明度类型对应的数值类型,则基于第一数值对目标子数值进行加法运算或减法运算的数据转换处理,以满足区域的彩色透明度类型对应的数值类型;若目标子数值为第二亮度级别,且不满足区域的彩色透明度类型对应的数值类型,则基于第二数值对目标子数值进行加法运算或减法运算的数据转换处理,以满足区域的彩色透明度类型对应的数值类型。
一种可能的实现方式中,数据处理模块520还可以用于:在半色调处理之前,将数据转换为印刷色彩模式CMYK数据;对应地,打印数据是通过以下方式得到的:对CMYK数据进行半色调处理,得到位图数据;根据区域对应的数值类型,对位图数据进行填充;基于填充后的数据,生成打印数据。
一种可能的实现方式中,获取模块510具体用于:通过扫描目标3D物体得到模型数据;和/或通过绘图软件绘制目标3D物体得到模型数据。
一种可能的实现方式中,打印模块530具体用于:基于打印数据,使用打印材料依次逐层打印每一个切片层对应的每个体素,其中,打印材料包括彩色材料和填充材料,彩色材料用于体现目标3D物体的颜色,填充材料用于体现目标3D物体的彩色透明度类型,每个体素包括多个墨滴,每个体素的总墨量相同,每个墨滴使用一种彩色材料或一种填充材料喷出。
本申请实施例提供的装置,可用于执行上述方法实施例提供的方法步骤,其实现原理和技术效果类似,在此不再赘述。
需要说明的是,应理解以上装置的各个模块的划分仅仅是一种逻辑功能的划分,实际实现时可以全部或部分集成到一个物理实体上,也可以物理上分开。且这些模块可以全部以软件通过处理元件调用的形式实现;也可以全部以硬件的形式实现;还可以部分模块通过处理元件调用软件的形式实现,部分模块通过硬件的形式实现。例如,数据处理模块可以为单独设立的处理元件,也可以集成在上述装置的某一个芯片中实现,此外,也可以以程序代码的形式存储于上述装置的存储器中,由上述装置的某一个处理元件调用并执行以上处理模块的功能。其它模块的实现与之类似。此外这些模块全部或部分可以集成在一起,也可以独立实现。这里的处理元件可以是一种集成电路,具有信号的处理能力。在实现过程中,上述方法的各步骤或以上各个模块可以通过处理器元件中的硬件的集成逻辑电路或者软件形式的指令完成。
例如,以上这些模块可以是被配置成实施以上方法的一个或多个集成电路,例如:一个或多个特定集成电路(Application Specific Integrated Circuit,简称ASIC),或,一个或多个微处理器(Digital Signal Processor,简称DSP),或,一个或者多个现场可编程逻辑门阵列(Field Programmable Gate Array,简称FPGA)等。再如,当以上某个模块通过处理元件调度程序代码的形式实现时,该处理元件可以是通用处理器,例如中央处理器(Central Processing Unit,简称CPU)或其它可以调用程序代码的处理器。再如,这些模块可以集成在一起,以片上系统(System-On-a-Chip,简称SOC)的形式实现。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行计算机指令时,全部或部分地产生按照本申请实施例的流程或功能。计算机可以是
通用计算机、专用计算机、计算机网络、或者其他可编程装置。计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(Digital Subscriber Line,简称DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,数字通用光盘,(Digital Video Disc,简称DVD))、或者半导体介质(例如固态硬盘solid state disk(SSD))等。
图9为本申请一实施例提供的电子设备的结构示意图。如图9所示,该电子设备60包括:至少一个处理器610、存储器620、通信接口630和系统总线640。其中,存储器620和通信接口630通过系统总线640与处理器610连接并完成相互间的通信,存储器620用于存储指令,通信接口630用于和其他设备进行通信,处理器610用于调用存储器中的指令以执行如上述方法实施例提供的方法步骤,具体实现方式和技术效果类似,这里不再赘述。
该电子设备60可以为计算机设备,具体的,该计算机设备可以为桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。计算机设备可以包括,但不限于,处理器610以及存储器620。本领域技术人员可以理解,图9所示的仅仅是计算机设备的示例,并不构成对计算机设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如计算机设备还可以包括输入输出设备、网络接入设备、总线等。
该图9中提到的系统总线640可以是外设部件互连标准(Peripheral Component Interconnect,简称PCI)总线或扩展工业标准结构(Extended Industry Standard Architecture,简称EISA)总线等。该系统总线640可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口630用于实现数据库访问装置与其他设备(例如客户端、读写库和只读库)之间的通信。
存储器620可能包含随机存取存储器(Random Access Memory,简称RAM),也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。对于计算机设备,存储器620可以是计算机设备的内部存储单元,例如计算机
设备的硬盘或内存。存储器620也可以是计算机设备的外部存储设备,例如计算机设备上配备的插接式硬盘,智能存储卡(Smart Media Card简称SMC),安全数字(Secure Digital,简称SD)卡,闪存卡(Flash Card)等。进一步地,存储器620还可以既包括计算机设备的内部存储单元也包括外部存储设备。存储器620用于存储计算机程序以及计算机设备所需的其他程序和数据。存储器620还可以用于暂时地存储已经输出或者将要输出的数据。
处理器610可以是通用处理器,包括中央处理器、网络处理器(Network Processor,简称NP)等;数字信号处理器(Digital Signal Processor,简称DSP)、专用集成电路(Application Specific Integrated Circuit,简称ASIC)、现场可编程逻辑门阵列(Field Programmable Gate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
本申请实施例还提供一种计算机可读存储介质,计算机可读存储介质中存储有计算机执行指令,计算机执行指令被处理器执行时用于实现如上述方法实施例中的方法步骤,具体实现方式和技术效果类似,这里不再赘述。
本申请实施例还提供一种程序产品,该程序产品包含计算机执行指令。当计算机执行指令被执行时,以实现如上述方法实施例中的方法步骤,具体实现方式和技术效果类似,这里不再赘述。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到发明的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本申请未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本申请的真正范围和精神由下面的权利要求书指出。
应当理解的是,本申请并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本申请的范围仅由所附的权利要求书来限制。
需要说明的是,本申请所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据,并且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准,并提供有相应的操作入口,供用户选择授权或者拒绝。
Claims (11)
- 一种三维打印方法,其特征在于,包括:获取目标3D物体的模型数据,所述目标3D物体包括多个具有不同彩色透明度类型的区域;针对多个区域中每个区域,分别基于所述区域的彩色透明度类型,对所述区域的模型数据进行数据处理以满足所述区域的彩色透明度类型对应的数值类型,得到打印数据,其中,不同彩色透明度类型对应不同的数值类型;根据所述打印数据进行打印,得到所述目标3D物体,其中,所述数值类型至少包括第一数值类型和第二数值类型,所述第一数值类型对应的填充材料至少包括白色材料,所述第二数值类型对应的填充材料为透明材料。
- 根据权利要求1所述的三维打印方法,其特征在于,所述模型数据至少包括结构数据和色彩数据,所述每个区域的彩色透明度类型由用户自定义或根据色彩数据确定。
- 根据权利要求2所述的三维打印方法,其特征在于,所述基于所述区域的彩色透明度类型,对所述区域的模型数据进行数据处理以满足所述区域的彩色透明度类型对应的数值类型,得到打印数据,包括:基于所述区域的彩色透明度类型,对所述区域的模型数据中色彩数据进行数据转换处理,以满足所述区域的彩色透明度类型对应的数值类型;基于所述结构数据对数据转换处理后的模型数据进行切片处理,得到切片数据;对所述切片数据进行半色调处理,得到所述打印数据。
- 根据权利要求2所述的三维打印方法,其特征在于,所述基于所述区域的彩色透明度类型,对所述区域的模型数据进行数据处理以满足所述区域的彩色透明度类型对应的数值类型,得到打印数据,包括:基于所述结构数据对所述模型数据进行切片处理,得到切片数据;基于所述区域的彩色透明度类型,对所述切片数据中色彩数据进行数据转换处理,以满足所述区域的彩色透明度类型对应的数值类型;对数据转换处理后的数据进行半色调处理,得到所述打印数据。
- 根据权利要求3或4所述的三维打印方法,其特征在于,所述色彩数据为RGB数据,R、G、B分别为色彩数据对应红、绿、蓝的子数值,对色彩数据进行数据转换处理,以满足所述区域的彩色透明度类型对应的数值类型,包括:从色彩数据对应R、G、B的子数值中任意选取一个为目标子数值;若所述目标子数值为第一亮度级别,且不满足所述区域的彩色透明度类型对应的数值类型,则基于第一数值对所述目标子数值进行加法运算或减法运算的数据转换处理,以满足所述区域的彩色透明度类型对应的数值类型;若所述目标子数值为第二亮度级别,且不满足所述区域的彩色透明度类型对应的数值类型,则基于第二数值对所述目标子数值进行加法运算或减法运算的数据转换处理,以满足所述区域的彩色透明度类型对应的数值类型。
- 根据权利要求3或4所述的三维打印方法,其特征在于,还包括:在半色调处理之前,将数据转换为印刷色彩模式CMYK数据;对应地,所述打印数据是通过以下方式得到的:对所述CMYK数据进行半色调处理,得到位图数据;根据所述区域对应的数值类型,对所述位图数据进行填充;基于填充后的数据,生成所述打印数据。
- 根据权利要求1至4中任一项所述的三维打印方法,其特征在于,所述获取目标3D物体的模型数据,包括:通过扫描所述目标3D物体得到所述模型数据;和/或通过绘图软件绘制所述目标3D物体得到所述模型数据。
- 根据权利要求1至4中任一项所述的三维打印方法,其特征在于,所述根据所述打印数据进行打印,得到所述目标3D物体,包括:基于所述打印数据,使用打印材料依次逐层打印每一个切片层对应的每个体素,其中,所述打印材料包括彩色材料和填充材料,所述体素包括多个墨滴,不同体素的总墨量相同,每个所述墨滴使用一种所述彩色材料或一种所述填充材料喷出。
- 一种三维打印装置,其特征在于,包括:获取模块,用于获取目标3D物体的模型数据,所述目标3D物体包括多个具有不同彩色透明度类型的区域;数据处理模块,用于针对多个区域中每个区域,分别基于所述区域的彩色透明度类型,对所述区域的模型数据进行数据处理以满足所述区域的彩色透明度类型对应的数值类型,得到打印数据,其中,不同彩色透明度类型对应不同的数值类型;打印模块,用于根据所述打印数据进行打印,得到所述目标3D物体,其中,所述数值类型至少包括第一数值类型和第二数值类型,所述第一数值类型对应 的填充材料至少包括白色材料,所述第二数值类型对应的填充材料为透明材料。
- 一种电子设备,其特征在于,包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器用于存储所述至少一个处理器可执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1至8中任一项所述的三维打印方法。
- 一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现如权利要求1至8中任一项所述的三维打印方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310185282.6A CN116061439A (zh) | 2023-02-28 | 2023-02-28 | 三维打印方法、装置、设备及存储介质 |
CN202310185282.6 | 2023-02-28 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2024179065A1 true WO2024179065A1 (zh) | 2024-09-06 |
Family
ID=86174955
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2023/133758 WO2024179065A1 (zh) | 2023-02-28 | 2023-11-23 | 三维打印方法、装置、设备及存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN116061439A (zh) |
WO (1) | WO2024179065A1 (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116061439A (zh) * | 2023-02-28 | 2023-05-05 | 珠海赛纳三维科技有限公司 | 三维打印方法、装置、设备及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150191024A1 (en) * | 2014-01-08 | 2015-07-09 | Electronics For Imaging, Inc. | Multilayer white printing with white-balance |
CN113119472A (zh) * | 2021-04-20 | 2021-07-16 | 珠海赛纳三维科技有限公司 | 体素点墨量控制方法、三维打印方法、三维打印设备及存储介质 |
CN113619119A (zh) * | 2020-08-14 | 2021-11-09 | 珠海赛纳三维科技有限公司 | 三维物体的打印系统、方法、存储介质以及三维模型 |
CN114387384A (zh) * | 2020-10-16 | 2022-04-22 | 深圳市汉森软件有限公司 | 三维模型的打印处理方法、装置、设备及存储介质 |
CN116061439A (zh) * | 2023-02-28 | 2023-05-05 | 珠海赛纳三维科技有限公司 | 三维打印方法、装置、设备及存储介质 |
-
2023
- 2023-02-28 CN CN202310185282.6A patent/CN116061439A/zh active Pending
- 2023-11-23 WO PCT/CN2023/133758 patent/WO2024179065A1/zh unknown
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150191024A1 (en) * | 2014-01-08 | 2015-07-09 | Electronics For Imaging, Inc. | Multilayer white printing with white-balance |
CN113619119A (zh) * | 2020-08-14 | 2021-11-09 | 珠海赛纳三维科技有限公司 | 三维物体的打印系统、方法、存储介质以及三维模型 |
CN114387384A (zh) * | 2020-10-16 | 2022-04-22 | 深圳市汉森软件有限公司 | 三维模型的打印处理方法、装置、设备及存储介质 |
CN113119472A (zh) * | 2021-04-20 | 2021-07-16 | 珠海赛纳三维科技有限公司 | 体素点墨量控制方法、三维打印方法、三维打印设备及存储介质 |
CN116061439A (zh) * | 2023-02-28 | 2023-05-05 | 珠海赛纳三维科技有限公司 | 三维打印方法、装置、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN116061439A (zh) | 2023-05-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2024179065A1 (zh) | 三维打印方法、装置、设备及存储介质 | |
EP1564683B1 (en) | System and method for connecting regions of image data having similar characteristics | |
CN105377533B (zh) | 使用任意打印机和任意软件应用的3d打印方法和计算设备 | |
CN107005621B (zh) | 将3d对象的至少一部分转换为适于打印的格式的方法 | |
US10482356B2 (en) | Soft-proof file generation based on print-ready data | |
AU2011202173B2 (en) | Screen printing techniques | |
US10717235B2 (en) | Method for joint color and translucency 3D printing and a joint color and translucency 3D printing device | |
US10809699B2 (en) | Method for generating three dimensional object models for an additive manufacturing process | |
US10181217B2 (en) | Data processing apparatus, three dimensional object molding system, and non-transitory computer readable medium | |
JP2007142848A (ja) | ディザマトリックスを用いたハーフトーン処理 | |
CN107105126A (zh) | 用于使用于彩色设备的墨模型规则化的系统和方法 | |
JP2007142847A (ja) | 高画質ハーフトーン処理 | |
CN100429582C (zh) | 用于计算墨粉用量的系统和方法 | |
Stute et al. | Digital wood: 3D internal color texture mapping | |
JP6853259B2 (ja) | 3d物体用のフルカラーデータの処理方法及び装置 | |
CN101242475B (zh) | 图像生成装置和图像生成方法 | |
CN116766597A (zh) | 三维打印方法、装置、设备及存储介质 | |
JP2007188219A (ja) | 印刷制御装置、印刷制御方法および印刷制御プログラム | |
US12101452B2 (en) | Color enhancement method, image-forming apparatus, and storage medium | |
US20210197486A1 (en) | Determining property mapping resources with property constraints | |
Takahashi et al. | Intensive 3D structure modeling and seamless data flow to 3D printers using voxel-based data format FAV (Fabricatable Voxel) | |
WO2020050830A1 (en) | Modeling a printed halftone image | |
WO2016173069A1 (zh) | 三维模型处理方法及其装置、三维打印方法及三维打印设备 | |
CN117359938A (zh) | 多材料物体的三维打印方法、系统、设备及存储介质 | |
JP5708094B2 (ja) | 画像検査装置、画像形成装置、画像検査方法及び画像検査プログラム |