Information processing method, machining method, display method, display device, information processing device, computer program, and recording medium
Patent Information
- Application Number
- JP2024551142
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Priority Date
- 2022-10-20
- Filing Date
- 2022-10-20
- Publication Date
- 2025-07-29
AI Technical Summary
Current methods for processing three-dimensional models struggle to accurately generate processing control information for transforming objects into target shapes, particularly in determining the differences between object and target models to guide additive processing effectively.
An information processing method that generates a differential model by identifying unit areas in a three-dimensional model, clustering them based on distance thresholds, and using user inputs to adjust these thresholds, allowing for the generation of processing control information for additive processing to achieve the target shape.
This method enables precise control over additive processing by clearly defining areas to be added or removed, ensuring accurate transformation of objects into target shapes, enhancing the efficiency and accuracy of the processing device in manufacturing and repair tasks.
Abstract
Description
Information processing method, processing method, display method, display device, information processing device, computer program, and recording medium
[0001] The present invention relates to the technical fields of, for example, an information processing method for processing information about a three-dimensional model, an information processing device and a computer program, a processing method for generating processing control information for processing an object, and a display method, a display device and a computer program for displaying information about a three-dimensional model.
[0002] An example of a processing device that processes an object is described in Patent Document 1. One of the technical challenges of such a processing device is to appropriately generate processing control information for controlling the processing of the object.
[0003] US Patent Application Publication No. 2018 / 0029298
[0004] According to a first aspect, there is provided an information processing method for generating a differential model, which is a three-dimensional model indicating a difference between an object model, which is a three-dimensional model indicating a three-dimensional shape of an object, and a target model, which is a three-dimensional model indicating a target shape of the object, and which indicates a portion to be added to the object in order to process the object into the target shape, the information processing method including: accepting a first input that is a user's input; acquiring a plurality of unit areas, each of which is a portion of the target model, and whose distance from the object model is equal to or greater than a first threshold value set in the first input; accepting a second input that is the user's input; acquiring at least one cluster area, where one cluster area is a group of unit areas, of the acquired plurality of unit areas, whose distance between two unit areas is equal to or less than a second threshold value set in the second input; and outputting at least one of the cluster areas acquired after accepting the first input and the second input, as the differential model or as information for generating the differential model.
[0005] According to a second aspect, there is provided an information processing method for generating a differential model, which is a three-dimensional model that indicates the difference between an object model, which is a three-dimensional model that indicates the three-dimensional shape of an object, and a target model, which is a three-dimensional model that indicates a target shape of the object, the information processing method including: displaying a first display image that displays a plurality of unit areas obtained by subdividing the target model, the plurality of unit areas being at a distance from the object model that is equal to or greater than a first threshold, and displaying a first operation object that is operable by the user to adjust the first threshold; displaying at least one cluster area, which is a group of unit areas among the plurality of unit areas, where the distance between two unit areas is equal to or less than a second threshold, and displaying a second display image that displays a second operation object that is operable by the user to adjust the second threshold; and outputting at least one of the cluster areas obtained after operations are performed with the first operation object and the second operation object, as the differential model or as information for generating the differential model.
[0006] According to a third aspect, there is provided an information processing method for generating a differential model, which is a three-dimensional model that indicates the difference between an object model, which is a three-dimensional model that indicates the three-dimensional shape of an object, and a target model, which is a three-dimensional model that indicates a target shape of the object, the information processing method including: accepting a first input that is a user input; acquiring a plurality of unit areas, each of which is a portion of the target model and whose distance from the object model is equal to or greater than a first threshold value set in the first input; acquiring at least one cluster area, where a group of unit areas among the acquired plurality of unit areas is such that the distance between any two unit areas is equal to or less than a second threshold value; and outputting at least one of the cluster areas acquired based on the second threshold value as the differential model or as information for generating the differential model.
[0007] According to a fourth aspect, there is provided an information processing method for generating a differential model, which is a three-dimensional model that indicates the difference between an object model, which is a three-dimensional model that indicates the three-dimensional shape of an object, and a target model, which is a three-dimensional model that indicates a target shape of the object, the information processing method including: acquiring a plurality of unit areas, each of which is a part of the target model and whose distance from the object model is equal to or greater than a first threshold value; accepting input that is input by the user; acquiring at least one cluster area, where one group of unit areas among the acquired plurality of unit areas is such that the distance between two unit areas is equal to or less than a second threshold value set in the input; and outputting at least one of the cluster areas acquired after accepting the input as the differential model or as information for generating the differential model.
[0008] According to a fifth aspect, there is provided an information processing method for generating a differential model, which is a three-dimensional model indicating a difference between an object model, which is a three-dimensional model indicating a three-dimensional shape of an object, and a target model, which is a three-dimensional model indicating a target shape of the object, and which indicates a portion to be removed from the object in order to process the object into the target shape, the information processing method including: accepting a first input that is a user's input; acquiring a plurality of unit areas, each of which is a portion of the object model, and whose distance from the target model is equal to or greater than a first threshold value set in the first input; accepting a second input that is the user's input; acquiring at least one cluster area, where one cluster area is a group of unit areas, of the acquired plurality of unit areas, whose distance between two unit areas is equal to or less than a second threshold value set in the second input; and outputting at least one of the cluster areas acquired after accepting the first input and the second input, as the differential model or as information for generating the differential model.
[0009] According to a sixth aspect, there is provided an information processing method for generating a differential model, which is a three-dimensional model indicating a difference between an object model, which is a three-dimensional model indicating a three-dimensional shape of an object, and a target model, which is a three-dimensional model indicating a target shape of the object, and which indicates a portion to be processed in order to process the object into the target shape, the information processing method including: accepting a first input that is a user's input; acquiring a plurality of unit areas, each of which is a portion of one of the object model and the target model, and whose distance from the other of the object model and the target model is equal to or greater than a first threshold value set in the first input; accepting a second input that is the user's input; acquiring at least one cluster area, where one cluster area is a group of unit areas, of the acquired plurality of unit areas, whose distance between two unit areas is equal to or less than a second threshold value set in the second input; and outputting at least one of the cluster areas acquired after accepting the first input and the second input, as the differential model or as information for generating the differential model.
[0010] According to the seventh aspect, there is provided a processing method for generating processing control information for processing the shape of an object into the target shape using a processing device capable of processing the object, based on a differential model generated using the information processing method provided by any one of the first to sixth aspects described above.
[0011] According to an eighth aspect, there is provided an information processing method for generating a differential model, which is a three-dimensional model that indicates a difference between a first model and a second model, the information processing method including: accepting a first input that is a user's input; acquiring a plurality of unit areas, each of which is a part of one of the first model and the second model, and whose distance from the other of the first model and the second model is equal to or greater than a first threshold value set in the first input; accepting a second input that is the user's input; acquiring at least one cluster area, where a group of unit areas, two of the acquired unit areas, have a distance between them that is equal to or less than a second threshold value set in the second input, is set as one cluster area; and outputting at least one of the cluster areas acquired after accepting the first input and the second input, as the differential model or as information for generating the differential model.
[0012] According to a ninth aspect, there is provided an information processing method for generating a differential model, which is a three-dimensional model that shows the difference between a first model and a second model, the information processing method including: acquiring a plurality of unit areas, each of which corresponds to a part of one of the first model and the second model, and whose distance from the other of the first model and the second model is equal to or greater than a first threshold value; acquiring at least one cluster area, where a group of unit areas among the acquired plurality of unit areas is such that the distance between two unit areas is equal to or less than a second threshold value; and outputting at least one of the cluster areas acquired based on the second threshold value as the differential model or as information for generating the differential model.
[0013] According to a tenth aspect, there is provided a display method for displaying a differential model, which is a three-dimensional model showing the difference between an object model, which is a three-dimensional model showing the three-dimensional shape of an object, and a target model, which is a three-dimensional model showing a target shape of the object, the display method including: displaying a plurality of unit areas, each of which corresponds to a part of the target model, and whose distance from the object model is equal to or greater than a first threshold value set by a first input, which is input by the user; displaying at least one cluster area, which is a group of unit areas, of the acquired plurality of unit areas, where the distance between two unit areas is equal to or less than a second threshold value set by a second input, which is input by the user; and displaying at least one of the cluster areas acquired after accepting the first input and the second input, as the differential model.
[0014] According to an eleventh aspect, there is provided a display device for displaying a differential model, which is a three-dimensional model showing the difference between an object model, which is a three-dimensional model showing the three-dimensional shape of an object, and a target model, which is a three-dimensional model showing the target shape of the object, the display device including an input device, the display device displays, as a first display image, a plurality of unit areas, each of which corresponds to a part of the target model, and whose distance from the object model is equal to or greater than a first threshold set by the input device, a group of unit areas, of the acquired plurality of unit areas, where the distance between two unit areas is equal to or less than a second threshold set by the input device, as one cluster area, and displays at least one of the cluster areas as a second display image, and displays at least one of the cluster areas acquired based on the second threshold as the differential model.
[0015] According to a twelfth aspect, there is provided an information processing device that generates the differential model using the information processing method provided by any one of the first to sixth and eighth to ninth aspects described above.
[0016] According to a thirteenth aspect, there is provided a computer program that causes a computer to execute the information processing method provided by any one of the first to sixth and eighth to ninth aspects described above.
[0017] According to a fourteenth aspect, there is provided a computer program that causes a computer to execute the display method provided by the tenth aspect described above.
[0018] The functions and other advantages of the present invention will become apparent from the following detailed description of the preferred embodiments.
[0019] FIG. 1 is a block diagram showing the overall configuration of a processing system according to this embodiment. FIG. 2 is a block diagram showing the system configuration of a processing apparatus according to this embodiment. FIG. 3 is a cross-sectional view showing the configuration of the processing apparatus according to this embodiment. FIG. 4 is a block diagram showing the configuration of a measurement system. FIG. 5 is a block diagram showing the configuration of a control information generating apparatus. FIGS. 6(a) to 6(e) are cross-sectional views showing a state in which a certain area on a workpiece is irradiated with modeling light and a modeling material is supplied. FIGS. 7(a) to 7(c) are cross-sectional views showing a process of forming a three-dimensional structure. FIG. 8 is a flowchart showing the overall flow of a control information generating operation. FIG. 9 is a schematic diagram of an object model and a target model. FIG. 10 is a schematic diagram of an object model, a target model, and a differential model. FIG. 11 is a schematic diagram of a point included in the object model and a point included in the target model. FIG. 12 is a schematic diagram of multiple difference points. FIG. 13 is a schematic diagram of a point cloud cluster into which each of multiple difference points is classified. FIG. 14 is a flowchart showing the flow of a differential model generating operation. FIG. 15 shows a difference point display image. FIG. 16 shows a point cloud cluster display image. FIG. 17 shows a point cloud cluster display image. FIGS. 18(a) to 18(c) each show the file formats of files storing an original model and a reduced model. FIG. 19 shows a first specific example of a differential model generation operation using a reduced model. FIG. 20 shows a second specific example of a differential model generation operation using a reduced model. FIG. 21 shows a third specific example of a differential model generation operation using a reduced model. FIG. 22 shows a fourth specific example of a differential model generation operation using a reduced model. FIG. 23 shows a scene in which the inter-model distance threshold and the cluster threshold are reused. FIG. 24 schematically shows a target model when a workpiece is deformed as the workpiece is used, and an object model when the workpiece is deformed as the workpiece is used. FIG. 25 schematically shows a differential model generated based on a target model when a workpiece is deformed as the workpiece is used, and an object model when the workpiece is deformed as the workpiece is used. FIG. 26 shows a schematic representation of an undeformed and a deformed target model.FIG. 27 schematically shows a differential model generated based on a target model deformed based on an object model and an object model when the workpiece is deformed as the workpiece is used. FIG. 28 schematically shows an undeformed object model and a deformed object model. FIG. 29 schematically shows a target model generated by deforming the object model and a differential model generated based on the object model. FIG. 30 shows a display image of an extracted point in the fifth modified example. FIG. 31 shows a point cloud cluster display image in the fifth modified example. FIG. 32 shows an integrated display image in the sixth modified example. FIG. 33 shows an extracted point display image in the seventh modified example. FIG. 34 shows a point cloud cluster display image in the eighth modified example. FIG. 35 shows an integrated display image in the ninth modified example. FIG. 36 shows a machine learning model used in the tenth modified example. FIG. 37 shows an overview of machine learning of the machine learning model used in the tenth modified example. FIG. 38 schematically shows an object model, a target model, and a differential model.
[0020] Hereinafter, embodiments of an information processing method, a processing method, a display method, a display device, an information processing device, and a computer program will be described with reference to the drawings. Hereinafter, the embodiments of the information processing method, the processing method, the display method, and the display device will be described using a processing system SYS capable of processing a workpiece W, which is an example of an object.
[0021] (1) Configuration of Machining System SYS (1-1) Overall Configuration of Machining System SYS First, the overall configuration of the machining system SYS will be described with reference to Fig. 1. Fig. 1 is a block diagram showing the overall configuration of the machining system SYS.
[0022] As shown in Fig. 1, the processing system SYS includes a processing device 1, a measurement system 2, and a transport device 3. In the example shown in Fig. 1, the processing system SYS includes a single processing device 1, but may include a plurality of processing devices 1. The processing system SYS includes a single measurement system 2, but may include a plurality of measurement systems 2. The processing system SYS includes a single transport device 3, but may include a plurality of transport devices 3. However, the processing system SYS does not necessarily have to include the transport device 3.
[0023] When the processing system SYS includes a plurality of processing apparatuses 1, the number of measurement systems 2 may be less than the number of processing apparatuses 1. For example, the processing system SYS may include two or more processing apparatuses 1 and one measurement system 2. Furthermore, when the processing system SYS includes a plurality of measurement systems 2, the number of processing apparatuses 1 may be less than the number of measurement systems 2. For example, the processing system SYS may include one processing apparatus 1 and two or more measurement systems 2.
[0024] The processing device 1 is capable of processing a workpiece W. In this embodiment, an example will be described in which the processing device 1 is a processing device that can process the workpiece W by irradiating the workpiece W with processing light EL (i.e., an energy beam in the form of light). However, the processing device 1 may also process the workpiece W without using the processing light EL.
[0025] The processing apparatus 1 is capable of performing additive processing on the workpiece W. In other words, the processing apparatus 1 is capable of forming a structure on the workpiece W by performing additive processing on the workpiece W. In this case, the processing apparatus 1 may form a structure that is integrated with or separable from the workpiece W by performing additive processing on the workpiece W. The structure formed by the processing apparatus 1 may refer to any object formed by the processing apparatus 1. For example, the processing apparatus 1 may form a three-dimensional structure ST (that is, a three-dimensional structure that has a size in all three-dimensional directions, a solid object, in other words, a structure that has a size in the X-axis direction, Y-axis direction, and Z-axis direction) as an example of a structure. Note that the processing apparatus 1 capable of performing additive processing may be referred to as an additive processing apparatus.
[0026] The processing apparatus 1 may perform additive processing using any additive processing method (i.e., a manufacturing method) capable of manufacturing a shaped object. Examples of additive processing methods include at least one of laser metal deposition (LMD), powder bed fusion (PBF) methods such as selective laser sintering (SLS), binder jetting, material jetting, stereolithography, and laser metal fusion (LMF). The laser build-up welding method may also be referred to as directed energy deposition (DED).
[0027] The workpiece W may be an item that has a missing portion and needs to be repaired. In this case, the processing device 1 may perform repair processing to repair (in other words, restore) the item that needs to be repaired by performing additional processing to form a shaped object to fill in the missing portion. In other words, the additional processing performed by the processing device 1 may include additional processing to add to the workpiece W a three-dimensional structure ST that corresponds to the shaped object to fill in the missing portion. The additional processing performed by the processing device 1 may be at least a part of the repair process for the workpiece W that has a missing portion.
[0028] An example of an item requiring repair that has a missing portion is at least a portion of a worn turbine. For example, an example of an item requiring repair that has a missing portion is a turbine blade that constitutes a turbine. An example of a turbine is at least one of a power generation turbine and an aircraft engine turbine. In this case, the processing device 1 may repair (in other words, restore) the worn turbine. Another example of an item requiring repair that has a missing portion is a worn propeller-shaped part. Another example of an item requiring repair that has a missing portion is a body part of a vehicle such as an automobile, motorcycle, electric vehicle, or railroad car. Another example of an item requiring repair that has a missing portion is an engine part for an automobile engine, motorcycle engine, or aerospace engine. Another example of an item requiring repair that has a missing portion is a battery part for an electric vehicle. The processing device 1 may repair these items requiring repair.
[0029] The workpiece W may be a base for forming a three-dimensional structure ST. In this case, the processing device 1 may manufacture the three-dimensional structure ST from scratch by performing additional processing to form the three-dimensional structure ST on the workpiece W. As an example, the processing device 1 may manufacture a turbine from scratch by performing additional processing to form a three-dimensional structure ST corresponding to a turbine on the workpiece W.
[0030] The workpiece W may be an intermediate product produced in the process of forming a three-dimensional structure ST. In this case, the processing device 1 may perform additional processing on the workpiece W, which is an intermediate product of the three-dimensional structure ST, to complete the three-dimensional structure ST, thereby producing the three-dimensional structure ST from the intermediate product. As an example, the processing device 1 may perform additional processing on the workpiece W, which is an intermediate product of a turbine, to complete the turbine, thereby producing a completed turbine from the intermediate product of the turbine.
[0031] The measurement system 2 measures the workpiece W before the processing device 1 actually starts processing the workpiece W. In this embodiment, the measurement system 2 measures the three-dimensional shape of the workpiece W. Once the three-dimensional shape of the workpiece W is determined, the position of the workpiece W in three-dimensional space (for example, the position of the surface of the workpiece W) is determined. Therefore, measuring the three-dimensional shape of the workpiece W may be considered to be substantially equivalent to measuring the position of the workpiece W.
[0032] The measurement system 2 further generates processing control information. The processing control information is control information used to control the processing device 1 to process the workpiece W. In particular, the processing control information is control information used to control the processing device 1 so that the workpiece W has a target shape by processing the workpiece W. For example, the processing control information may include processing path information. The processing path information may indicate a target irradiation position (e.g., the position of a target irradiation area EA described below) to which the processing light EL should be irradiated to process the workpiece W. Specifically, the processing path information may indicate a target movement path, which is a path to a target irradiation position (e.g., the movement path of the target irradiation area EA described below) to which the processing light EL should be irradiated to process the workpiece W. This target movement path may be referred to as a processing path or a tool path. In this case, the measurement system 2 may generate a G-code indicating the processing path or tool path as the processing control information. The measurement system 2 may generate a file with an extension ".gcode" or ".gco" as the processing control information. The processing control information generated by the measurement system 2 is transmitted from the measurement system 2 to the processing device 1 via a communication network (not shown).
[0033] The processing device 1 receives (i.e., acquires) processing control information transmitted from the measurement system 2. The processing device 1, which has received the processing path information, processes the workpiece W based on the received processing control information. Therefore, after the measurement system 2 measures the three-dimensional shape of the workpiece W, the workpiece W is transported from the measurement system 2 to the processing device 1. Specifically, the workpiece W is removed from the measurement system 2, and the removed workpiece W is transported to the processing device 1. For example, the workpiece W may be transported from the measurement system 2 to the processing device 1 by the transport device 3. For example, the workpiece W may be transported from the measurement system 2 to the processing device 1 by a user of the processing system SYS. The workpiece W transported to the processing device 1 is installed (in other words, placed or attached) on the processing device 1. As a result, the processing device 1 can process the workpiece W.
[0034] 1, the processing system SYS includes a processing device 1 and a measurement system 2, which are separate devices. However, the processing system SYS may include a device in which the processing device 1 and the measurement system 2 are integrated. In other words, the processing device 1 and the measurement system 2 may be integrated.
[0035] The processing system SYS may further include a control server 4. The control server 4 may control the operation of the entire processing system SYS. For example, the control server 4 may control the operation of the processing device 1. For example, the control server 4 may control the operation of the measurement system 2. For example, the control server 4 may control the operation of the transport device 3. However, the processing system SYS does not necessarily have to include the control server 4.
[0036] The control server 4 may function as a cloud server. In this case, the control server 4 may be able to communicate with at least one of the processing apparatus 1, the measurement system 2, and the transport apparatus 3 via a communication network including the Internet. Alternatively, the control server 4 may function as an edge server. In this case, the control server 4 may be able to communicate with at least one of the processing apparatus 1, the measurement system 2, and the transport apparatus 3 via a communication network including an intranet or a local area network.
[0037] The processing system SYS may include a first computer that controls the processing apparatus 1 as part of the processing apparatus 1, in addition to or instead of the control server 4 that controls the processing apparatus 1. That is, the processing apparatus 1 may include the first computer. The first computer may be a laptop computer or other type of computer. The first computer may function as a control unit 17 (see FIG. 2 ) described later. The processing system SYS may include a second computer that controls the measurement system 2 as part of the measurement system 2, in addition to or instead of the control server 4 that controls the measurement system 2. That is, the measurement system 2 may include the second computer. The second computer may be a laptop computer, a tablet terminal, a mobile terminal such as a smartphone, or other type of computer. The second computer may function as a control information generating device 22 (see FIG. 4 ) described later. The processing system SYS may include a third computer that controls the transport device 3 as part of the transport device 3, in addition to or instead of the control server 4 that controls the transport device 3. That is, the transport device 3 may include the third computer. The third computer may be a laptop or some other type of computer.
[0038] (1-2) Configuration of Processing Apparatus 1 Next, the configuration of the processing apparatus 1 will be described with reference to Fig. 2 and Fig. 3. Fig. 2 is a block diagram showing the system configuration of the processing apparatus 1. Fig. 3 is a cross-sectional view showing the configuration of the processing apparatus 1.
[0039] In the following description, the positional relationships of the various components constituting the processing apparatus 1 will be described using an XYZ Cartesian coordinate system defined by mutually orthogonal X, Y, and Z axes as the processing coordinate system. For ease of explanation, the X-axis and Y-axis directions are each assumed to be horizontal (i.e., a predetermined direction within a horizontal plane), and the Z-axis direction is assumed to be vertical (i.e., a direction perpendicular to the horizontal plane, essentially an up-down direction). Furthermore, the rotation directions around the X-axis, Y-axis, and Z-axis (in other words, tilt directions) are referred to as the θX direction, θY direction, and θZ direction, respectively. Here, the Z-axis direction may be the direction of gravity. Furthermore, the XY plane may be assumed to be horizontal.
[0040] In the following description, for the sake of convenience, a configuration of the processing device 1 that performs additional processing using a laser build-up welding method will be described as an example of the configuration of the processing device 1.
[0041] The processing device 1, which performs additive processing using the laser build-up welding method, performs additive processing by processing a modeling material M using processing light EL. The modeling material M is a material that can be melted by irradiation with processing light EL of a predetermined intensity or higher. For example, at least one of a metallic material and a resinous material can be used as the modeling material M. However, materials other than metallic materials and resinous materials may also be used as the modeling material M. The modeling material M is a powdered or granular material. In other words, the modeling material M is a powdered or granular material. However, the modeling material M does not have to be a powdered or granular material. For example, at least one of a wire-shaped modeling material and a gaseous modeling material may be used as the modeling material M.
[0042] A processing apparatus 1 that performs additive processing using laser build-up welding sequentially forms multiple structural layers SL (see FIG. 7 , which will be described later) to form a three-dimensional structure ST in which multiple structural layers SL are stacked. In this case, the processing apparatus 1 first sets the surface of the workpiece W as a printing surface MS on which the object will actually be printed, and prints the first structural layer SL on the printing surface MS. The processing apparatus 1 then sets the surface of the first structural layer SL as a new printing surface MS, and prints the second structural layer SL on the printing surface MS. Thereafter, the processing apparatus 1 repeats the same operations to form a three-dimensional structure ST in which multiple structural layers SL are stacked.
[0043] 2 and 3 , the processing apparatus 1 includes a material supply source 11, a processing unit 12, a stage unit 13, a light source 15, a gas supply source 16, and a control unit 17. The processing unit 12 and the stage unit 13 may be housed in a chamber space 183IN inside a housing 18. At least one of the processing unit 12 and the stage unit 13 does not have to be housed in the chamber space 183IN inside the housing 18.
[0044] The material supply source 11 supplies the molding material M to the processing unit 12. The material supply source 11 supplies a desired amount of the molding material M according to the required amount so that the amount of the molding material M required per unit time for performing additive processing is supplied to the processing unit 12.
[0045] The processing unit 12 processes the modeling material M supplied from the material supply source 11 to form a model. To form the model, the processing unit 12 includes a processing head 121 and a head drive system 122. The processing head 121 further includes an irradiation optical system 1211 and a material nozzle 1212. In the example shown in FIGS. 2 and 3 , the processing head 121 includes a single irradiation optical system 1211, but the processing head 121 may also include multiple irradiation optical systems 1211. In the example shown in FIGS. 2 and 3 , the processing head 121 includes a single material nozzle 1212, but the processing head 121 may also include multiple material nozzles 1212.
[0046] The irradiation optical system 1211 is an optical system (e.g., a focusing optical system) for emitting the processing light EL. Specifically, the irradiation optical system 1211 is optically connected to the light source 15 that emits the processing light EL via an optical transmission member 151 such as an optical fiber or a light pipe. The irradiation optical system 1211 emits the processing light EL propagated from the light source 15 via the optical transmission member 151. The irradiation optical system 1211 irradiates the processing light EL downward (i.e., toward the -Z side) from the irradiation optical system 1211. A stage 131 is disposed below the irradiation optical system 1211. When a workpiece W is placed on the stage 131, the irradiation optical system 1211 irradiates the emitted processing light EL onto the workpiece W. In this case, the irradiation optical system 1211 irradiates the processing light EL from above the workpiece W toward the workpiece W. Specifically, the irradiation optical system 1211 can irradiate the processing light EL onto a target irradiation area EA that is set on or near the workpiece W as an area to be irradiated (typically, focused) with the processing light EL. Furthermore, under the control of the control unit 17, the state of the irradiation optical system 1211 can be switched between a state in which the processing light EL is irradiated onto the target irradiation area EA and a state in which the processing light EL is not irradiated onto the target irradiation area EA.
[0047] The material nozzle 1212 supplies (e.g., injects, jets, spouts, or sprays) the modeling material M. The material nozzle 1212 is physically connected to the material supply source 11, which is a supply source of the modeling material M, via the supply pipe 111 and the mixer 112. The material nozzle 1212 supplies the modeling material M supplied from the material supply source 11 via the supply pipe 111 and the mixer 112. The material nozzle 1212 may pressure-feed the modeling material M supplied from the material supply source 11 via the supply pipe 111. That is, the modeling material M from the material supply source 11 and a conveying gas (i.e., a pressure-feed gas, for example, an inert gas such as nitrogen or argon) may be mixed in the mixer 112 and then pressure-feed to the material nozzle 1212 via the supply pipe 111. As a result, the material nozzle 1212 supplies the modeling material M together with the conveying gas. For example, a purge gas supplied from the gas supply source 16 is used as the conveying gas. However, the transport gas may be a gas supplied from a gas supply source different from the gas supply source 16. The material nozzle 1212 supplies the modeling material M downward (i.e., toward the -Z side) from the material nozzle 1212. A stage 131 is disposed below the material nozzle 1212. When a workpiece W is mounted on the stage 131, the material nozzle 1212 supplies the modeling material M toward the workpiece W or the vicinity of the workpiece W.
[0048] In this embodiment, the material nozzle 1212 supplies the modeling material M to the irradiation position of the processing light EL (i.e., the target irradiation area EA onto which the processing light EL from the irradiation optical system 1211 is irradiated). For this reason, the material nozzle 1212 and the irradiation optical system 1211 are aligned so that a target supply area MA, which is set on or near the workpiece W as the area onto which the material nozzle 1212 supplies the modeling material M, coincides with (or at least partially overlaps with) the target irradiation area EA. In this case, the modeling material M supplied from the material nozzle 1212 is irradiated with the processing light EL emitted by the irradiation optical system 1211. As a result, the modeling material M melts. That is, a molten pool MP containing the molten modeling material M is formed on the workpiece W.
[0049] The material nozzle 1212 may supply the forming material M to the molten pool MP formed by the processing light EL emitted from the irradiation optical system 1211. Alternatively, for example, the processing device 1 may melt the forming material M from the material nozzle 1212 using the irradiation optical system 1211 before the forming material M reaches the workpiece W, and then adhere the molten forming material M to the workpiece W.
[0050] The head drive system 122 moves the machining head 121 under the control of the control unit 17. That is, the head drive system 122 moves the irradiation optical system 1211 and the material nozzle 1212 under the control of the control unit 17. The head drive system 122 moves the machining head 121, for example, along at least one of the X-axis, Y-axis, Z-axis, θX direction, θY direction, and θZ direction. When the head drive system 122 moves the machining head 121, the relative positions of the machining head 121, the stage 131, and the workpiece W placed on the stage 131 change. As a result, the target irradiation area EA and the target supply area MA (and further, the molten pool MP) move relative to the workpiece W.
[0051] The stage unit 13 includes a stage 131 and a stage drive system 132 .
[0052] A workpiece W is placed on the stage 131. The stage 131 is capable of supporting the workpiece W placed on the stage 131. The stage 131 may be capable of holding the workpiece W placed on the stage 131. In this case, the stage 131 may be equipped with at least one of a mechanical chuck, an electrostatic chuck, a vacuum chuck, or the like to hold the workpiece W. Alternatively, the stage 131 may not be capable of holding the workpiece W placed on the stage 131. In this case, the workpiece W may be placed on the stage 131 in a clampless manner. Furthermore, the workpiece W may be attached to a holder such as a jig, or the holder to which the workpiece W is attached may be placed on the stage 131. The workpiece W does not have to be placed on the stage 131, and may be placed on the floor, for example.
[0053] The holder to which the workpiece W is attached may include a beam member arranged around the workpiece W. As an example, the holder may include a beam member that surrounds the outer periphery of the workpiece W. Multiple workpieces W may be attached to the holder. In this case, the holder may include a beam member arranged around at least two of the multiple workpieces W. As an example, the holder may include a beam member that surrounds the outer periphery of at least two workpieces W. As another example, the holder may include a beam member that passes through the space between at least two workpieces W. As another example, the holder may include two beam members that pass through the space between at least two workpieces W and intersect with each other. In this case, at least a portion of the at least two workpieces W may be arranged outside a rectangular area connecting both ends of the two beam members. The holder may be mounted on the stage 31 via a support member that can kinematically support the holder.
[0054] The stage drive system 132 moves the stage 131 under the control of the control unit 17. The stage drive system 132 moves the stage 131, for example, along at least one of the X-axis, Y-axis, Z-axis, θX direction, θY direction, and θZ direction. When the stage drive system 132 moves the stage 131, the relative positions of the stage 131 and the workpiece W placed on the stage 131, and the machining head 121 change. As a result, the target irradiation area EA and the target supply area MA (and further, the molten pool MP) move relative to the workpiece W.
[0055] The light source 15 emits, for example, at least one of infrared light, visible light, and ultraviolet light as the processing light EL. However, other types of light may be used as the processing light EL. The processing light EL may include multiple pulsed lights (i.e., multiple pulse beams). The processing light EL may include continuous light (CW: Continuous Wave). The processing light EL may be laser light. In this case, the light source 15 may include a laser light source (for example, a semiconductor laser such as a laser diode (LD: Laser Diode)). The laser light source may be a fiber laser, a CO 2The light source 15 may include at least one of a laser, a YAG laser, an excimer laser, etc. However, the processing light EL does not have to be laser light. The light source 15 may include any light source (for example, at least one of an LED (Light Emitting Diode), a discharge lamp, etc.).
[0056] The gas supply source 16 is a supply source of purge gas for purging the chamber space 183IN inside the housing 18. The purge gas includes an inert gas. Examples of the inert gas include nitrogen gas and argon gas. The gas supply source 16 is connected to the chamber space 183IN via a supply port 182 formed in a partition member 181 of the housing 18 and a supply pipe 161 connecting the gas supply source 16 and the supply port 182. The gas supply source 16 supplies purge gas to the chamber space 183IN via the supply pipe 161 and the supply port 182. As a result, the chamber space 183IN becomes a space purged with the purge gas. The purge gas supplied to the chamber space 183IN may be exhausted from an exhaust port (not shown) formed in the partition member 181. The gas supply source 16 may be a cylinder containing an inert gas. When the inert gas is nitrogen gas, the gas supply source 16 may be a nitrogen gas generator that generates nitrogen gas using air as a raw material.
[0057] When the material nozzle 1212 supplies the modeling material M together with a purge gas, the gas supply source 16 may supply the purge gas to the mixer 112 to which the modeling material M is supplied from the material supply source 11. Specifically, the gas supply source 16 may be connected to the mixer 112 via a supply pipe 162 connecting the gas supply source 16 and the mixer 112. As a result, the gas supply source 16 supplies the purge gas to the mixer 112 via the supply pipe 162. In this case, the modeling material M from the material supply source 11 may be supplied (specifically, pressure-fed) through the supply pipe 111 toward the material nozzle 1212 by the purge gas supplied from the gas supply source 16 via the supply pipe 162. In other words, the gas supply source 16 may be connected to the material nozzle 1212 via the supply pipe 162, the mixer 112, and the supply pipe 111. In this case, the material nozzle 1212 supplies the modeling material M together with a purge gas for pumping the modeling material M.
[0058] The control unit 17 controls the operation of the processing apparatus 1. For example, the control unit 17 may control the processing unit 12 (for example, at least one of the processing head 121 and the head drive system 122) provided in the processing apparatus 1 so as to process the workpiece W. For example, the control unit 17 may control the stage unit 13 (for example, the stage drive system 132) provided in the processing apparatus 1 so as to process the workpiece W.
[0059] The control unit 17 may include, for example, an arithmetic device and a storage device. The arithmetic device may include, for example, at least one of a CPU (Central Processing Unit) and a GPU (Graphics Processing Unit). The storage device may include, for example, a memory. The control unit 17 functions as a device that controls the operation of the machining device 1 by the arithmetic device executing a computer program. This computer program is a computer program for causing the arithmetic device to perform (i.e., execute) the operations to be performed by the control unit 17, which will be described later. In other words, this computer program is a computer program for causing the control unit 17 to function so as to cause the machining device 1 to perform the operations to be described later. The computer program executed by the arithmetic device may be recorded in a storage device (i.e., a recording medium) included in the control unit 17, or may be recorded in any storage medium (e.g., a hard disk or a semiconductor memory) built into the control unit 17 or externally attachable to the control unit 17. Alternatively, the computing device may download the computer program to be executed from a device external to the control unit 17 via a network interface.
[0060] The control unit 17 may control the emission mode of the processing light EL by the irradiation optical system 1211. The emission mode may include, for example, at least one of the intensity of the processing light EL and the emission timing of the processing light EL. When the processing light EL includes multiple pulsed lights, the emission mode may include, for example, at least one of the emission duration of the pulsed light, the emission cycle of the pulsed light, and the ratio between the emission duration of the pulsed light and the emission cycle of the pulsed light (so-called duty ratio). Furthermore, the control unit 17 may control the movement mode of the processing head 121 by the head drive system 122. The control unit 17 may control the movement mode of the stage 131 by the stage drive system 132. The movement mode may include, for example, at least one of the movement amount, movement speed, movement direction, and movement timing (movement time). Furthermore, the control unit 17 may control the supply mode of the modeling material M by the material nozzle 1212. The supply mode may include, for example, at least one of the supply amount (particularly, the supply amount per unit time) and the supply timing (supply time).
[0061] The control unit 17 does not have to be provided inside the processing apparatus 1. For example, the control unit 17 may be provided as a server or the like outside the processing apparatus 1. In this case, the control unit 17 and the processing apparatus 1 may be connected via a wired and / or wireless network (or a data bus and / or a communication line). The wired network may be a network using a serial bus interface, such as at least one of IEEE1394, RS-232x, RS-422, RS-423, RS-485, and USB. The wired network may be a network using a parallel bus interface. The wired network may be a network using an Ethernet (registered trademark) interface, such as at least one of 10BASE-T, 100BASE-TX, and 1000BASE-T. The wireless network may be a network using radio waves. An example of a network using radio waves is a network compliant with IEEE 802.1x (e.g., at least one of a wireless LAN and Bluetooth (registered trademark)). A network using infrared rays may be used as the wireless network. A network using optical communication may be used as the wireless network. In this case, the control unit 17 and the processing device 1 may be configured to be able to transmit and receive various information via the network. The control unit 17 may also be able to transmit information such as commands and control parameters to the processing device 1 via the network. The processing device 1 may include a receiving device that receives information such as commands and control parameters from the control unit 17 via the network. The processing device 1 may also include a transmitting device (i.e., an output device that outputs information to the control unit 17) that transmits information such as commands and control parameters to the control unit 17 via the network. Alternatively, a first control device that performs part of the processing performed by the control unit 17 may be provided inside the processing device 1, while a second control device that performs another part of the processing performed by the control unit 17 may be provided outside the processing device 1.
[0062] A computational model that can be constructed by machine learning may be implemented in the control unit 17 by the computation device executing a computer program. An example of a computational model that can be constructed by machine learning is a computational model including a neural network (so-called artificial intelligence (AI)). In this case, learning of the computational model may include learning of parameters of the neural network (e.g., at least one of a weight and a bias). The control unit 17 may control the operation of the processing device 1 using the computational model. In other words, the operation of controlling the operation of the processing device 1 may include the operation of controlling the operation of the processing device 1 using the computational model. Note that a computational model that has been constructed by offline machine learning using training data may be implemented in the control unit 17. Furthermore, the computational model implemented in the control unit 17 may be updated on the control unit 17 by online machine learning. Alternatively, the control unit 17 may control the operation of the processing device 1 using a computational model implemented in a device external to the control unit 17 (i.e., a device provided outside the processing device 1) in addition to or instead of the computational model implemented in the control unit 17.
[0063] The recording medium for recording the computer program executed by the control unit 17 may be at least one of the following: a CD-ROM, CD-R, CD-RW, a flexible disk, an MO, a DVD-ROM, a DVD-RAM, a DVD-R, a DVD+R, a DVD-RW, a DVD+RW, and an optical disk such as Blu-ray (registered trademark), a magnetic medium such as a magnetic tape, a magneto-optical disk, a semiconductor memory such as a USB memory, and any other medium capable of storing a program. The recording medium may also include a device capable of recording a computer program (for example, a general-purpose device or a dedicated device in which a computer program is implemented in an executable state in at least one of the forms of software and firmware). Furthermore, each process or function included in the computer program may be realized by a logical processing block realized within the control unit 17 (i.e., the computer) as the control unit 17 executes the computer program, or may be realized by hardware such as a predetermined gate array (FPGA (Field Programmable Gate Array), ASIC (Application Specific Integrated Circuit)) included in the control unit 17, or may be realized in a form that combines logical processing blocks and partial hardware modules that realize some elements of the hardware.
[0064] (1-3) Structure of Measurement System 2 Next, the configuration of the measurement system 2 will be described with reference to Fig. 4. Fig. 4 is a block diagram showing the configuration of the measurement system 2. As shown in Fig. 4, the measurement system 2 includes a shape measurement device 21 and a control information generation device 22.
[0065] The shape measuring device 21 is capable of measuring the three-dimensional shape of a measurement target. In this embodiment, as described above, the measurement system 2 measures the workpiece W before the processing device 1 actually starts processing the workpiece W. Therefore, the measurement target of the shape measuring device 21 may include the workpiece W.
[0066] The shape measurement device 21 may have any configuration as long as it can measure the three-dimensional shape of the measurement object. For example, the shape measurement device 21 may measure the three-dimensional shape of the measurement object using a pattern projection method or a light section method, in which a measurement light is irradiated onto the surface of the measurement object to project a light pattern onto the surface, and the shape of the projected pattern is measured. For example, the shape measurement device 21 may measure the three-dimensional shape of the measurement object using a time-of-flight method, in which a measurement light is projected onto the surface of the measurement object, the time it takes for the projected measurement light to return from the measurement object to the shape measurement device 21, and the distance to the measurement object based on this time are measured at multiple positions on the measurement object. For example, the shape measurement device 21 may measure the three-dimensional shape of the measurement object using at least one of a moire topography method (specifically, a grating projection method or a grating projection method), a holographic interferometry method, an autocollimation method, a stereo method, an astigmatism method, a critical angle method, and a knife-edge method.
[0067] The shape measurement device 21 is not limited to a device that measures the three-dimensional shape of a measurement object stored in its housing. For example, the shape measurement device 21 may be attached to a robot arm so as to be movable around the measurement object.
[0068] The control information generating device 22 generates processing control information. An example of the configuration of the control information generating device 22 capable of generating processing control information is shown in Fig. 5. As shown in Fig. 5, the control information generating device 22 includes a calculation device 221, a storage device 222, and a communication device 223. The control information generating device 22 may further include an input device 224 and a display device 225. The calculation device 221, the storage device 222, the communication device 223, the input device 224, and the display device 225 may be connected via a data bus 226.
[0069] The arithmetic device 221 includes, for example, at least one of a CPU (Central Processing Unit) and a GPU (Graphics Processing Unit). The arithmetic device 221 reads a computer program. For example, the arithmetic device 221 may read a computer program stored in the storage device 222. For example, the arithmetic device 221 may read a computer program stored in a computer-readable, non-transitory storage medium using a storage medium reading device (not shown). The arithmetic device 221 may acquire (i.e., download or read) the computer program from a device (not shown) located outside the control information generating device 22 via the communication device 223. In other words, the arithmetic device 221 may acquire (i.e., download or read) the computer program stored in a storage device of a device (not shown) located outside the control information generating device 22 via the communication device 223. The arithmetic device 221 executes the loaded computer program. As a result, a logical function block for executing the operation to be performed by the control information generating device 22 (for example, an operation for generating processing control information) is realized within the arithmetic device 221. That is, the arithmetic device 221 can function as a controller for realizing the logical function block for executing the operation to be performed by the control information generating device 22. In this case, any device (typically, a computer) that executes a computer program can function as the control information generating device 22.
[0070] FIG. 5 shows an example of logical functional blocks realized within the arithmetic device 221. As shown in FIG. 5, a model generation unit 2211 and a control information generation unit 2212 are realized within the arithmetic device 221. The model generation unit 2211 generates a three-dimensional model that indicates the three-dimensional shape of an object to be formed by the processing device 1 performing additional processing. In other words, the model generation unit 2211 generates a three-dimensional model that indicates the three-dimensional shape of a three-dimensional structure ST to be formed by the processing device 1 performing additional processing. The control information generation unit 2212 generates processing control information based on the three-dimensional model generated by the model generation unit 2211. The operation of generating the processing control information will be described in detail later.
[0071] A computational model that can be constructed by machine learning may be implemented in the computational device 221 by the computational device 221 executing a computer program. An example of a computational model that can be constructed by machine learning is a computational model including a neural network (so-called artificial intelligence (AI)). In this case, learning of the computational model may include learning of parameters of the neural network (e.g., at least one of weights and biases). The computational device 221 may generate processing control information using the computational model. Note that the computational device 221 may be implemented with a computational model that has been constructed by offline machine learning using teacher data. Furthermore, the computational model implemented in the computational device 221 may be updated by online machine learning on the computational device 221. Alternatively, the computational device 221 may control the operation of the processing apparatus 1 using a computational model implemented in a device external to the computational device 221 (i.e., a device provided outside the control information generating device 22) in addition to or instead of the computational model implemented in the computational device 221.
[0072] The storage device 222 can store desired data. For example, the storage device 222 may temporarily store a computer program executed by the arithmetic device 221. The storage device 222 may temporarily store data that the arithmetic device 221 temporarily uses when the arithmetic device 221 is executing a computer program. The storage device 222 may store data that the control information generating device 22 stores long-term. The storage device 222 may include at least one of a RAM (Random Access Memory), a ROM (Read Only Memory), a hard disk device, a magneto-optical disk device, an SSD (Solid State Drive), and a disk array device. In other words, the storage device 222 may include a non-transitory recording medium.
[0073] The communication device 223 is capable of communicating with the processing device 1 via a communication network (not shown). In this embodiment, the communication device 223 is capable of transmitting the processing control information generated by the control information generating device 22 to the processing device 1.
[0074] The input device 224 is a device that accepts information input to the control information generating device 22 from outside the control information generating device 22. For example, the input device 224 may include an operation device that can be operated by a user (for example, at least one of a keyboard, a mouse, and a touch panel). In this case, the input device 224 may accept user input. For example, the input device 224 may include a reading device that can read information recorded as data on a recording medium that can be externally attached to the control information generating device 22. For example, the input device 224 may accept information input from a robot external to the control information generating device 22. For example, the input device 224 may accept information input from a computer external to the control information generating device 22.
[0075] The display device 225 can display desired information as an image. That is, the display device 225 can display an image showing information that is to be output.
[0076] The display device 225 may be attached to a robot. In this case, the robot to which the display device 225 is attached may output information to the outside of the control information generating device 22. For example, the robot to which the display device 225 is attached may output information as an image.
[0077] (2) Operation of the Machining System SYS Next, the operation performed by the machining system SYS will be described. In this embodiment, the machining system SYS may perform a machining operation for machining the workpiece W, mainly using the machining device 1. Furthermore, the machining system SYS may perform a control information generation operation for generating machining control information, mainly using the measurement system 2. Therefore, the machining operation and the control information generation operation will be described in order below.
[0078] (2-1) Processing Operation First, the processing operation will be described with reference to FIGS. 6 and 7 . In particular, as an example of the processing operation, the additional processing operation performed by the processing apparatus 1 will be described. As described above, the processing apparatus 1 forms the three-dimensional structure ST using the laser build-up welding method. Therefore, the processing apparatus 1 may form the three-dimensional structure ST by performing an existing additional processing operation that complies with the laser build-up welding method. Below, a brief description will be given of an example of the processing operation for forming the three-dimensional structure ST using the laser build-up welding method.
[0079] In order to form a three-dimensional structure ST, the processing apparatus 1 sequentially forms, for example, a plurality of layered partial structures (hereinafter referred to as "structural layers") SL arranged along the Z-axis direction. For example, the processing apparatus 1 sequentially forms a plurality of structural layers SL obtained by slicing the three-dimensional structure ST along the Z-axis direction, one by one. As a result, a three-dimensional structure ST is formed, which is a layered structure in which a plurality of structural layers SL are stacked. Below, the flow of operations for forming a three-dimensional structure ST by sequentially forming a plurality of structural layers SL one by one will be described.
[0080] First, the operation of forming each structure layer SL will be described with reference to FIGS. 6( a) to 6(e). Under the control of the control unit 17, the processing apparatus 1 moves at least one of the processing head 121 and the stage 131 so that a target irradiation area EA is set in a desired area on the printing surface MS corresponding to the surface of the workpiece W or the surface of the printed structure layer SL. Then, the processing apparatus 1 irradiates the target irradiation area EA with processing light EL from the irradiation optical system 1211. At this time, the focusing surface on which the processing light EL is focused in the Z-axis direction may coincide with the printing surface MS. Alternatively, the focusing surface may be offset from the printing surface MS in the Z-axis direction. As a result, as shown in FIG. 6(a), a molten pool MP (i.e., a pool of metal or the like melted by the processing light EL) is formed on the printing surface MS irradiated with the processing light EL. Furthermore, under the control of the control unit 17, the processing apparatus 1 supplies a printing material M from the material nozzle 1212. As a result, the printing material M is supplied to the molten pool MP. The building material M supplied to the molten pool MP is melted by the processing light EL irradiated onto the molten pool MP. Alternatively, the building material M supplied from the material nozzle 1212 may be melted by the processing light EL before reaching the molten pool MP, and the molten building material M may be supplied to the molten pool MP. Thereafter, when the processing light EL is no longer irradiated onto the molten pool MP as at least one of the machining head 121 and the stage 131 moves, the molten building material M in the molten pool MP cools and solidifies (i.e., solidifies). As a result, as shown in FIG. 6( c), a built object made of the solidified building material M is deposited on the building surface MS.
[0081] The processing apparatus 1 repeats a series of printing processes, including forming a molten pool MP by irradiating the processing light EL, supplying the printing material M to the molten pool MP, melting the supplied printing material M, and solidifying the molten printing material M, while moving the processing head 121 relative to the printing surface MS in at least one of the X-axis direction and the Y-axis direction, as shown in Fig. 6(d) . During this process, the processing apparatus 1 irradiates the printing surface MS with the processing light EL in an area on the printing surface MS where a desired object is to be printed, while not irradiating the printing surface MS with the processing light EL in an area on the printing surface MS where a desired object is not to be printed. In other words, the processing apparatus 1 moves the target irradiation area EA along a predetermined movement path on the printing surface MS, and irradiates the printing surface MS with the processing light EL at a timing that corresponds to the distribution of the area where a desired object is to be printed.
[0082] The movement path of the target irradiation area EA on the printing surface MS may be referred to as a processing path (in other words, a tool path). The above-mentioned processing control information includes information related to this processing path as processing path information. Therefore, the control information generating device 22 may generate processing control information including processing path information. Based on the processing control information, the processing device 1 moves the target irradiation area EA along a predetermined movement path on the printing surface MS, and irradiates the printing surface MS with processing light EL at a timing according to the distribution of the area where the object is to be printed.
[0083] As a result, the molten pool MP also moves on the build surface MS along a movement path corresponding to the movement path of the target irradiation area EA. Specifically, the molten pool MP is sequentially formed on the build surface MS in the area along the movement path of the target irradiation area EA that is irradiated with the processing light EL. As a result, as shown in FIG. 6E , a structure layer SL corresponding to an object, which is an aggregate of melted and solidified build material M, is formed on the build surface MS. That is, a structure layer SL corresponding to an aggregate of objects formed on the build surface MS in a pattern corresponding to the movement path of the molten pool MP (i.e., a structure layer SL having a shape corresponding to the movement path of the molten pool MP in a planar view) is formed. Note that if the target irradiation area EA is set in an area where an object is not desired to be built, the processing apparatus 1 may irradiate the target irradiation area EA with the processing light EL and stop supplying the build material M. In addition, when a target irradiation area EA is set in an area where it is not desired to form a molded object, the processing device 1 may supply the molding material M to the target irradiation area EA and irradiate the target irradiation area EA with processing light EL of an intensity that will not create a molten pool MP.
[0084] The processing apparatus 1 repeatedly performs operations for forming such a structure layer SL under the control of the control unit 17 based on processing control information. Specifically, the processing apparatus 1 first performs operations for forming a first structure layer SL#1 on a printing surface MS corresponding to the surface of the workpiece W based on processing control information (e.g., information regarding a processing path for forming the structure layer SL#1). As a result, the structure layer SL#1 is formed on the printing surface MS as shown in FIG. 7A. Thereafter, the processing apparatus 1 sets the surface (i.e., the upper surface) of the structure layer SL#1 as a new printing surface MS, and then forms a second structure layer SL#2 on the new printing surface MS. To form the structure layer SL#2, the control unit 17 first controls at least one of the head drive system 122 and the stage drive system 132 so that the processing head 121 moves along the Z axis relative to the stage 131. Specifically, the control unit 17 controls at least one of the head drive system 122 and the stage drive system 132 to move the processing head 121 toward the +Z side and / or the stage 131 toward the -Z side so that the target irradiation area EA is set on the surface of the structural layer SL#1 (i.e., the new printing surface MS). Then, under the control of the control unit 17, the processing apparatus 1 forms a structural layer SL#2 on the structural layer SL#1 based on the processing control information (e.g., processing path information for printing the structural layer SL#2) in the same manner as the operation for printing the structural layer SL#1. As a result, the structural layer SL#2 is printed as shown in FIG. 7( b). Thereafter, the same operation is repeated until all structural layers SL constituting the three-dimensional structure ST to be printed on the workpiece W are printed. As a result, as shown in FIG. 7( c), the three-dimensional structure ST is printed using a layered structure in which multiple structural layers SL are stacked.
[0085] (2-2) Control Information Generation Operation Next, the control information generation operation will be described.
[0086] (2-2-1) Overall Flow of Control Information Generation Operation First, the overall flow of the control information generation operation will be described with reference to Fig. 8. Fig. 8 is a flowchart showing the overall flow of the control information generation operation.
[0087] 8 , first, the shape measuring device 21 measures the three-dimensional shape of the workpiece W (step S1). As a result, the shape measuring device 21 generates an object model OM (step S2). The object model OM is a three-dimensional model that represents the three-dimensional shape of the workpiece W. Specifically, the object model OM is a three-dimensional model that represents the actual three-dimensional shape of the workpiece W. In other words, the object model OM is a three-dimensional model that has the same three-dimensional shape as the actual three-dimensional shape of the workpiece W.
[0088] In this embodiment, a three-dimensional model including multiple unit areas is used as the object model OM. In other words, a three-dimensional model that can be subdivided into multiple unit areas is used as the object model OM. For example, a three-dimensional model including multiple points Pom (see FIG. 11 ), which are an example of multiple unit areas, may be used as the object model OM. That is, a three-dimensional model that shows the three-dimensional shape of the workpiece W using multiple points Pom (i.e., a point cloud) may be used as the object model OM. Note that a three-dimensional model using a point cloud may be referred to as a point cloud model. Alternatively, for example, a three-dimensional model including multiple meshes, which are an example of multiple unit areas, may be used as the object model OM. That is, a three-dimensional model that shows the three-dimensional shape of the workpiece W using multiple meshes may be used as the object model OM. Each mesh has a polygonal shape. Note that a three-dimensional model including multiple meshes may be referred to as a mesh model.
[0089] For convenience of explanation, the following description will be given assuming that a three-dimensional model including a plurality of points Pom is used as the object model OM. In this case, each of the plurality of points Pom may be considered to correspond to a part of the object model OM. However, even when a three-dimensional model including a plurality of arbitrary unit areas different from the plurality of points Pom is used as the object model OM, the machining system SYS may perform the control information generation operation described below.
[0090] The shape measuring device 21 outputs the generated object model OM to the control information generating device 22. Alternatively, the shape measuring device 21 may output the measurement results of the three-dimensional shape of the workpiece W to the control information generating device 22 without generating the object model OM. In this case, the control information generating device 22 may generate the object model OM based on the measurement results of the three-dimensional shape of the workpiece W by the shape measuring device 21.
[0091] In parallel with or independently of the operations of steps S1 to S2, the control information generating device 22 (particularly, the model generating unit 2211) acquires a target model TM (step S3). The target model TM is a three-dimensional model representing a target shape of the workpiece W after machining. For example, a CAD (Computer Aided Design) model of the workpiece W having the target shape may be used as the target model TM. For example, a three-dimensional model obtained by actually measuring the three-dimensional shape of the workpiece W having the target shape may be used as the target model TM. In this case, a three-dimensional model represented by a file representing CAD data may be used as the target model TM. Examples of files representing CAD data include at least one of a file with an STL extension, a file with a DWF extension, a file with a DXF extension, a file with a DWG extension, and a file with an STP extension.
[0092] In this embodiment, a three-dimensional model including a plurality of unit areas is used as the target model TM. In other words, a three-dimensional model that can be subdivided into a plurality of unit areas is used as the target model TM. For example, a three-dimensional model including a plurality of points Ptm (see FIG. 11 ), which are an example of a plurality of unit areas, may be used as the target model TM. In other words, a three-dimensional model that indicates the target shape of the workpiece W using a plurality of points Ptm (i.e., a point cloud) may be used as the target model TM. Alternatively, for example, a three-dimensional model including a plurality of meshes, which are an example of a plurality of unit areas, may be used as the target model TM. In other words, a three-dimensional model that indicates the target shape of the workpiece W using a plurality of meshes may be used as the target model TM. Each mesh has a polygonal shape. Note that a three-dimensional model including a plurality of meshes may be referred to as a mesh model.
[0093] For convenience of explanation, the following description will be given assuming that a three-dimensional model including a plurality of points Ptm (see FIG. 11 ) is used as the target model TM. In this case, each of the plurality of points Ptm may be considered to correspond to a part of the target model TM. However, even when a three-dimensional model including a plurality of arbitrary unit areas different from the plurality of points Ptm is used as the target model TM, the machining system SYS may perform the control information generating operation described below.
[0094] Examples of the object model OM and the target model TM are shown in FIG. 9 . As shown in FIG. 9 , the target shape of the workpiece W represented by the target model TM typically differs from the actual three-dimensional shape of the workpiece W represented by the object model OM. For example, as described above, if a defective part requiring repair is used as the workpiece W, as shown in FIG. 9 , the object model OM represents the three-dimensional shape of the workpiece W that has been partially damaged due to use of the workpiece W. On the other hand, as shown in FIG. 9 , the target model TM represents the three-dimensional shape of the workpiece W that is not damaged. In other words, the object model OM represents the three-dimensional shape of the workpiece W after it has actually been used, while the target model TM represents the three-dimensional shape of the workpiece W before it is actually used. As an example, if the workpiece W is a turbine blade with a portion worn out, the object model OM represents the three-dimensional shape of the partially worn turbine blade, while the target model TM represents the three-dimensional shape of the unworn turbine blade.
[0095] In this embodiment, "use of the workpiece W" may include using the workpiece W in a manner suited to the intended use of the workpiece W. When the workpiece W is used as a component of a product, "use of the workpiece W" may include using a product including the workpiece W in a manner suited to the intended use of the product. For example, when the workpiece W includes a turbine blade, "use of the turbine blade" may include using a turbine including the turbine blade in a manner suited to the intended use of the turbine.
[0096] Furthermore, considering that a situation in which a portion of the workpiece W is lost (e.g., worn) due to use of the workpiece W as described above is an example of a situation in which the machining system SYS of this embodiment is used, "use of the workpiece W" may include use of the workpiece W that causes loss of a portion of the workpiece W. For example, "use of the workpiece W" may include use of the workpiece W for a long period of time that causes loss of a portion of the workpiece W. Therefore, an actually used workpiece W may include a workpiece W that has been used long enough to cause loss of a portion of the workpiece W. On the other hand, a workpiece W before actual use may include a workpiece W that has been used but not long enough to cause loss of a portion of the workpiece W. For example, a workpiece W before actual use may include use of the workpiece W for a short period of time that does not cause loss of a portion of the workpiece W (e.g., a test run of the workpiece W or a product including the workpiece W). Of course, a workpiece W before actual use may literally include a workpiece W that has not yet been used. For example, a workpiece W before actual use may include a workpiece W before it is shipped as a product or part. For example, a workpiece W before actual use may include a workpiece W in the design stage.
[0097] 8 , thereafter, the model generation unit 2211 generates a three-dimensional model indicating the three-dimensional shape of the object to be formed by the processing device 1 through additive processing, based on the object model OM generated in step S2 and the target model TM acquired in step S3 (step S4). That is, the model generation unit 2211 generates a three-dimensional model indicating the three-dimensional shape of the three-dimensional structure ST to be formed by the processing device 1 (step S4). In other words, the model generation unit 2211 generates a three-dimensional model indicating the three-dimensional shape of a part (object) to be added to the workpiece W in order to process the workpiece W so that the shape of the workpiece W becomes the target shape (step S4).
[0098] Specifically, as shown in FIG. 10 , which schematically illustrates the target model TM and the object model OM, the target model TM represents the target shape of the workpiece W, and the object model OM represents the actual three-dimensional shape of the workpiece W. In this case, as shown in FIG. 10 , the difference between the target model TM and the object model OM corresponds to a three-dimensional model representing the three-dimensional shape of the three-dimensional structure ST to be formed by the processing apparatus 1. Therefore, as shown in FIG. 10 , the model generation unit 2211 may generate a three-dimensional model corresponding to the difference between the target model TM and the object model OM as a three-dimensional model representing the three-dimensional shape of the three-dimensional structure ST to be formed by the processing apparatus 1. In the following description, the three-dimensional model corresponding to the difference between the target model TM and the object model OM is referred to as a differential model DM. The differential model DM is typically a three-dimensional model corresponding to a portion of the target model TM.
[0099] 8 , the control information generating device 22 (particularly, the control information generating unit 2212) then generates processing control information based on the differential model DM generated in step S4 (step S5). For example, the control information generating unit 2212 may perform a slicing process to divide the differential model DM into multiple layered models at a layering pitch corresponding to the thickness of the structural layer SL, thereby generating multiple slice data corresponding to each of the multiple structural layers SL that constitute the three-dimensional structure ST. Then, the control information generating unit 2212 may generate multiple pieces of processing control information to be used to form each of the multiple structural layers SL, based on the multiple slice data.
[0100] (2-2-2) Differential Model Generation Operation Next, a further description will be given of the differential model generation operation, which is the operation for generating the differential model DM in step S4 of Fig. 8. As mentioned above, for convenience of explanation, the following description will focus on the differential model generation operation that is performed when a three-dimensional model including a plurality of points Pom (point cloud) is used as the object model OM, and a three-dimensional model including a plurality of points Ptm (point cloud) is used as the target model TM.
[0101] (2-2-2-1) Overview of Differential Model Generation Operation First, an overview of the differential model generation operation will be described with reference to FIGS.
[0102] FIG. 11 schematically shows a point Pom included in the object model OM and a point Ptm included in the target model TM. To generate the differential model DM, the model generation unit 2211 first aligns the object model OM with the target model TM in a predetermined coordinate space, as shown in FIG. 11 . For example, the model generation unit 2211 may align the object model OM with the target model TM so that a reference portion of the object model OM and a reference portion of the target model TM are located at the same position in the predetermined coordinate space. In other words, the model generation unit 2211 may align the object model OM with the target model TM so that the position of the reference portion of the object model OM in the predetermined coordinate space is the same as the position of the reference portion of the target model TM in the predetermined coordinate space. For example, the model generation unit 2211 may align the object model OM and the target model TM so that the reference parts of the object model OM and the target model TM are located at the same position in a specified coordinate space, thereby at least partially overlapping the object model OM and the target model TM.
[0103] The reference portions of the object model OM and the target model TM may be model portions corresponding to the reference portions of the workpiece W. The reference portion of the workpiece W may include a portion that is less likely to wear due to use of the workpiece W. The reference portion of the workpiece W may include a portion that is less likely to deform due to use of the workpiece W. For example, if the workpiece W is a turbine blade, the reference portion of the workpiece W may include at least a portion of the shank of the turbine blade.
[0104] After aligning the object model OM and the target model TM, the model generation unit 2211 extracts (in other words, calculates or acquires) from among the points Ptm included in the target model TM a plurality of points Ptm that satisfy a predetermined distance condition as a plurality of extracted points Pext. The predetermined distance condition may include a condition that a distance D1 between a point Ptm on the target model TM and a point Pom on the object model OM that is closest to the point Ptm (hereinafter referred to as the "inter-model distance D1") is equal to or greater than a predetermined inter-model distance threshold TH_M. When the point Pom is the point on the surface of the object model OM that is closest to the point Ptm on the target model TM, the inter-model distance D1 may be the distance between the point Ptm on the target model TM and this point Pom. In the following description, for convenience of explanation, a point Pom of the object model OM that is closest to a point Ptm of the target model TM will be referred to as the "closest point Pom_closest." In this case, if the inter-model distance D1 between the point Ptm and the closest point Pom_closest is equal to or greater than the inter-model distance threshold TH_M, the model generation unit 2211 extracts the point Ptm as a point Ptm that satisfies the distance condition (i.e., as an extraction point Pext). On the other hand, if the inter-model distance D1 between the point Ptm and the closest point Pom_closest is not equal to or greater than the inter-model distance threshold TH_M, the model generation unit 2211 does not have to extract the point Ptm as a point Ptm that satisfies the distance condition (i.e., as an extraction point Pext).
[0105] The inter-model distance threshold TH_M is a threshold used for comparison with the inter-model distance D1, which is a distance parameter, and therefore may be simply referred to as a distance threshold.
[0106] When the target model TM includes N points Ptm (specifically, points Ptm#1 to Ptm#N), the model generation unit 2211 repeats the operation of determining whether the inter-model distance D1#k between a point Ptm#k (where k is a variable indicating an integer greater than or equal to 1 and less than or equal to N) and the nearest point Pom_closest#k of the object model OM that is closest to the point Ptm#1 is greater than or equal to the inter-model distance threshold TH_M, while changing the variable k from 1 to N. As a result, as shown in Fig. 12 which schematically shows a plurality of points Ptm that satisfy the distance condition, a plurality of points Ptm that satisfy the distance condition are extracted as a plurality of extraction points Pext.
[0107] As shown in FIG. 12 , the multiple extraction points Pext that satisfy the distance condition typically correspond to the difference between the object model OM and the target model TM. As shown in FIG. 12 , the multiple extraction points Pext indicate the three-dimensional shape of the difference between the object model OM and the target model TM. Therefore, the model generation unit 2211 may generate a differential model DM based on the multiple extraction points Pext. For example, the model generation unit 2211 may generate a three-dimensional model including the multiple extraction points Pext as the differential model DM. For example, the model generation unit 2211 may generate a three-dimensional model having the three-dimensional shape indicated by the multiple extraction points Pext as the differential model DM.
[0108] However, as shown in FIG. 12 , the multiple extraction points Pext may include extraction points Pext that do not represent a difference between the object model OM and the target model TM. In other words, the multiple extraction points Pext may include extraction points Pext that are noise and should not be used to generate the differential model DM. Therefore, in this embodiment, the model generation unit 2211 extracts the multiple extraction points Pext and then clusters the multiple extraction points Pext. Specifically, as shown in FIG. 13 , which shows the multiple extraction points Pext, the model generation unit 2211 clusters the multiple extraction points Pext so that two extraction points Pext that satisfy the condition that the distance D2 between the two extraction points Pext is equal to or less than a predetermined cluster threshold TH_C are classified into the same point cloud cluster PGC. In this case, the clustering of the multiple extracted points Pext may be considered to be a process in which a labeling process for connected components in a graph is applied to a point cloud, in which two extracted points Pext that are separated by a distance D2 equal to or less than the cluster threshold TH_C are considered to be connected, and each extracted point Pext is then classified into a cluster. Note that the point cloud cluster PGC may also be referred to as a cluster region. However, the model generation unit 2211 does not necessarily have to perform clustering of the multiple extracted points Pext.
[0109] The distance D2 between the two extraction points Pext may be a distance on the order of micrometers. The distance D2 between the two extraction points Pext may be a parameter that can be adjusted on the order of micrometers. For example, the distance D2 between the two extraction points Pext may be a distance of several hundred micrometers. Alternatively, the distance D2 between the two extraction points Pext may be a distance on the order of submillimeters to centimeters. The distance D2 between the two extraction points Pext may be a parameter that can be adjusted on the order of submillimeters to centimeters. Alternatively, the distance D2 between the two extraction points Pext may be a distance that can be expressed using the number of pixels of an image.
[0110] The cluster threshold TH_C may be simply referred to as a distance threshold because it is a threshold used for comparison with the distance parameter D2. In other words, the cluster threshold TH_C may be considered to be an example of a distance threshold used for comparison with a distance parameter, together with the above-described inter-model distance threshold TH_M.
[0111] For example, if the distance D2 between the first extraction point Pext and the second extraction point Pext is equal to or less than the cluster threshold TH_C, the model generation unit 2211 performs clustering on the first extraction point Pext and the second extraction point Pext so that the first extraction point Pext and the second extraction point Pext are classified into the first point cloud cluster PGC. Furthermore, if the distance D2 between the third extraction point Pext and at least one of the first and second extraction points Pext is equal to or less than the cluster threshold TH_C, the model generation unit 2211 performs clustering on the third extraction point Pext so that the third extraction point Pext is classified into the first point cloud cluster PGC, which the first and second extraction points Pext are classified into. On the other hand, for example, if the distance D2 between the third extraction point Pext and each of the first and second extraction points Pext is not less than the cluster threshold TH_C, the model generation unit 2211 performs clustering of the third extraction point Pext so that the third extraction point Pext is classified into a second point cloud cluster PGC that is different from the first point cloud cluster PGC into which the first and second extraction points Pext are classified.
[0112] Alternatively, for example, if the distance D2 between the first extraction point Pext and the second extraction point Pext is not equal to or less than the cluster threshold TH_C, the model generation unit 2211 performs clustering on the first extraction point Pext and the second extraction point Pext such that the first extraction point Pext is classified into the first point cloud cluster PGC, while the second extraction point Pext is classified into a second point cloud cluster PGC that is different from the first point cloud cluster PGC. Furthermore, for example, if the distance D2 between the third extraction point Pext and the first extraction point Pext is equal to or less than the cluster threshold TH_C, the model generation unit 2211 performs clustering on the third extraction point Pext such that the third extraction point Pext is classified into the first point cloud cluster PGC to which the first extraction point Pext is classified. On the other hand, for example, if the distance D2 between the third extraction point Pext and the second extraction point Pext is equal to or less than the cluster threshold TH_C, the model generation unit 2211 performs clustering on the third extraction point Pext so that the third extraction point Pext is classified into the second point cloud cluster PGC into which the second extraction point Pext is classified. On the other hand, for example, if the distance D2 between the third extraction point Pext and each of the first and second extraction points Pext is not equal to or less than the cluster threshold TH_C, the model generation unit 2211 performs clustering on the third extraction point Pext so that the third extraction point Pext is classified into a third point cloud cluster PGC that is different from the first and second point cloud clusters PGC into which the first and second extraction points Pext are respectively classified.
[0113] As a result, the model generation unit 2211 generates (in other words, calculates or acquires) at least one point cloud cluster PGC into which at least one extraction point Pext is classified, as shown in Fig. 13. In the example shown in Fig. 13, the model generation unit 2211 performs clustering of the multiple extraction points Pext so as to generate three point cloud clusters PGC (specifically, point cloud cluster PGC#1, point cloud cluster PGC#2, and point cloud cluster PGC#3).
[0114] Thereafter, the model generation unit 2211 generates a differential model DM based on at least one point cloud cluster PGC. Note that the operation of generating a differential model DM based on at least one point cloud cluster PGC will be described in detail later with reference to FIG. 14 , and therefore will not be described here.
[0115] (2-2-2) Flow of the Differential Model Generation Operation Next, the flow of the differential model generation operation will be described with reference to Fig. 14. Fig. 14 is a flowchart showing the flow of the differential model generation operation.
[0116] 14, the model generation unit 2211 first extracts, from among the points Ptm included in the target model TM, points Ptm that satisfy a predetermined distance condition as extraction points Pext (step S410). Specifically, the model generation unit 2211 extracts, as extraction points Pext, points Ptm that satisfy the condition that the inter-model distance D1 between the point Ptm of the target model TM and the nearest point Pom_closest is equal to or greater than the inter-model distance threshold TH_M. Note that in step S410, the model generation unit 2211 may extract the multiple extraction points Pext using the default inter-model distance threshold TH_M.
[0117] Thereafter, the model generation unit 2211 controls the display device 25 to display an extraction point display image 51 for displaying the plurality of extraction points Pext extracted by the model generation unit 2211 (step S411). As a result, the display device 25 displays the extraction point display image 51 under the control of the model generation unit 2211 (step S411).
[0118] An example of the extraction point display image 51 is shown in Fig. 15. As shown in Fig. 15, the extraction point display image 51 may include a display image 511 for displaying a plurality of extraction points Pext extracted by the model generation unit 2211. In the example shown in Fig. 15, the plurality of extraction points Pext are displayed three-dimensionally in a predetermined coordinate space in the display image 511. However, a display method different from the display method shown in Fig. 15 may be used as a method for displaying the plurality of extraction points Pext in the display image 511.
[0119] In the display image 511, a plurality of extraction points Pext may be displayed together with at least one of the target model TM and the object model OM. For example, in the display image 511, a plurality of extraction points Pext may be displayed in a state where the plurality of extraction points Pext are aligned with the target model TM. In other words, in the display image 511, a plurality of extraction points Pext may be displayed in a state where the plurality of extraction points Pext are associated with the target model TM. For example, in the display image 511, a plurality of extraction points Pext may be displayed in a state where the plurality of extraction points Pext are aligned with the object model OM. In other words, in the display image 511, a plurality of extraction points Pext may be displayed in a state where the plurality of extraction points Pext are associated with the object model OM.
[0120] In the example shown in FIG. 15 , a plurality of extraction points Pext are displayed together with both the target model TM and the object model OM in the display image 511. In this case, the target model TM and the object model OM may be displayed in a state in which the target model TM and the object model OM are aligned with each other. For example, as described above, the target model TM and the object model OM may be displayed such that the reference portion of the target model TM and the reference portion of the object model OM are located at the same position in a predetermined coordinate space. For example, as described above, the target model TM and the object model OM may be displayed such that the reference portion of the target model TM and the reference portion of the object model OM are located at the same position in a predetermined coordinate space, thereby at least partially overlapping the target model TM and the object model OM.
[0121] The model generation unit 2211 may change the display mode of a group of display objects including a plurality of extraction points Pext displayed in the display image 511, based on a user input using the input device 24. For example, the model generation unit 2211 may translate a display object within a predetermined coordinate space defined in the display image 511. For example, the model generation unit 2211 may rotate a display object within a predetermined coordinate space defined in the display image 511. For example, the model generation unit 2211 may enlarge or reduce a display object within a predetermined coordinate space defined in the display image 511. Note that, when a plurality of extraction points Pext are displayed together with at least one of a target model TM and an object model OM in the display image 511, the group of display objects including the plurality of extraction points Pext may include at least one of the target model TM and the object model OM.
[0122] In the present embodiment, the extraction point display image 51 may further include a display image 512 including a manipulation object 5121 that the user can manipulate to adjust the inter-model distance threshold TH_M used to extract the extraction point Pext. In this case, the user may adjust (in other words, set or change) the inter-model distance threshold TH_M by manipulating the manipulation object 5121 using the input device 24.
[0123] 15 , a slider (in other words, a slider bar) is used as the operation object 5121. In this case, the user may adjust the inter-model distance threshold TH_M so that the inter-model distance threshold TH_M increases by performing an operation to move the slider in a first direction (e.g., upward in FIG. 15 ). On the other hand, the user may adjust the inter-model distance threshold TH_M so that the inter-model distance threshold TH_M decreases by performing an operation to move the slider in a second direction opposite the first direction (e.g., downward in FIG. 15 ).
[0124] Note that a display object other than a slider may be used as the operation object 5121. For example, a display object capable of specifying one candidate value to be set as the inter-model distance threshold TH_M from among a plurality of candidate values for the inter-model distance threshold TH_M may be used as the scanning object 5121. Examples of such a display object include at least one of a combo box, a drop-down list, and a radio button.
[0125] The input device 224 used by the user to operate the operation object 5121 may be configured to be capable of receiving user input for operating the scanning object 5121. As an example, the input device 224 may be capable of receiving at least one of a slide input, a pinch input, and a spin input. In this case, the user may adjust the inter-model distance threshold TH_M by performing at least one of a slide input, a pinch input, and a spin input.
[0126] A user may adjust the inter-model distance threshold TH_M on the order of micrometers. A user may adjust the inter-model distance threshold TH_M on the order of sub-millimeters to centimeters. A user may adjust the inter-model distance threshold TH_M using the number of pixels in the image.
[0127] 14 , the model generation unit 2211 determines whether or not the user has adjusted the inter-model distance threshold TH_M using the input device 24 (step S412). That is, the model generation unit 2211 determines whether or not the user has performed an operation to adjust the inter-model distance threshold TH_M using the input device 24 (step S412). In other words, the model generation unit 2211 determines whether or not the input device 24 has received a user input to adjust the inter-model distance threshold TH_M (step S412).
[0128] If it is determined in step S412 that the user has adjusted the inter-model distance threshold TH_M (step S412: Yes), the model generation unit 2211 extracts multiple extraction points Pext using the inter-model distance threshold TH_M adjusted by the user (step S413). That is, the model generation unit 2211 re-extracts multiple extraction points Pext using the inter-model distance threshold TH_M adjusted by the user. Specifically, the model generation unit 2211 extracts, as extraction points Pext, points Ptm that satisfy the condition that the inter-model distance D1 between points Ptm of the target model TM and the nearest point Pom_closest is equal to or greater than the inter-model distance threshold TH_M adjusted by the user (step S413). In other words, the model generation unit 2211 updates the multiple extraction points Pext based on the user's operation of the operation object 5121 (step S413).
[0129] Thereafter, the model generation unit 2211 controls the display device 25 to display the extraction point display image 51 for displaying the plurality of extraction points Pext extracted in step S413 (step S414). As a result, under the control of the model generation unit 2211, the display device 25 displays the extraction point display image 51 for displaying the plurality of extraction points Pext extracted in step S413 (step S414).
[0130] In this case, the model generation unit 2211 may be considered to be controlling the display device 25 to update the extraction point display image 51. Specifically, the model generation unit 2211 may be considered to be controlling the display device 25 to update the extraction point display image 51 based on the multiple extraction points Pext extracted in step S413. Because the multiple extraction points Pext are extracted based on the user's operation of the operation object 5121 in step S413, the model generation unit 2211 may be considered to be controlling the display device 25 to update the extraction point display image 51 based on the user's operation of the operation object 5121.
[0131] Thereafter, each time it is determined that the user has adjusted the inter-model distance threshold TH_M (step S412: Yes), the model generation unit 2211 extracts a plurality of extraction points Pext (step S413) and updates the extraction point display image 51 (step S414). Note that if the speed at which the user adjusts the inter-model distance threshold TH_M is equal to or greater than a predetermined threshold, the model generation unit 2211 does not need to update the extraction point display image 51 each time the user adjusts the inter-model distance threshold TH_M.
[0132] The model generation unit 2211 may reflect the result of the user's adjustment of the inter-model distance threshold TH_M in real time in the extraction point display image 51. In other words, when the user adjusts the inter-model distance threshold TH_M, the model generation unit 2211 may extract multiple extraction points Pext in real time and update the extraction point display image 51. As an example, if the operations from step S412 to step S414 described above are performed at a relatively fast cycle, the model generation unit 2211 may reflect the result of the user's adjustment of the inter-model distance threshold TH_M in real time in the extraction point display image 51. However, the model generation unit 2211 does not have to reflect the result of the user's adjustment of the inter-model distance threshold TH_M in the extraction point display image 51 in real time.
[0133] As described above, in this embodiment, the user can appropriately adjust the inter-model distance threshold TH_M using the operation object 5121 included in the extraction point display image 51. For example, if the multiple extraction points Pext displayed in the extraction point display image 51 are inappropriate, the user may adjust the inter-model distance threshold TH_M so that appropriate extraction points Pext are extracted. In this case, because the multiple extracted extraction points Pext are displayed in the extraction point display image 51, the user can easily confirm the multiple extraction points Pext displayed in the extraction point display image 51. As a result, compared to when the multiple extracted extraction points Pext are not displayed in the extraction point display image 51, the user can relatively easily adjust the inter-model distance threshold TH_M so that appropriate extraction points Pext are extracted. Furthermore, when the inter-model distance threshold TH_M is adjusted, the model generation unit 2211 can extract more appropriate extraction points Pext than when the inter-model distance threshold TH_M is fixed. As a result, the model generating unit 2211 can generate a more appropriate differential model DM based on the appropriate extracted points Pext thus extracted.
[0134] The model generation unit 2211 may change the display mode of each extraction point Pext based on the inter-model distance D1 between each extraction point Pext and the nearest point Pom_closest that is closest to each extraction point Pext. For example, the longer the inter-model distance D1 between each extraction point Pext and the nearest point Pom_closest, the more likely each extraction point Pext is a point Ptm that appropriately indicates the difference between the target model TM and the object model OM. This is because such an extraction point Pext is a point Ptm of the target model TM that is located relatively far from the object model OM, and therefore it is more natural to consider it to be a point Ptm that appropriately indicates the difference between the target model TM and the object model OM. Conversely, the shorter the inter-model distance D1 between each extraction point Pext and the nearest point Pom_closest, the higher the likelihood that each extraction point Pext is noise that does not appropriately represent the difference between the target model TM and the object model OM. Therefore, the model generation unit 2211 may change the display mode of each extraction point Pext so that the display mode of an extraction point Pext whose inter-model distance D1 exceeds a predetermined noise threshold differs from the display mode of an extraction point Pext whose inter-model distance D1 is below the predetermined noise threshold. In other words, the model generation unit 2211 may change the display mode of each extraction point Pext so that the display mode of an extraction point Pext that is relatively unlikely to be noise differs from the display mode of an extraction point Pext that is relatively unlikely to be noise. In this case, the user may check the extraction point display image 51 and adjust the inter-model distance threshold TH_M so as to reduce the number of extraction points Pext that are relatively likely to be noise. As a result, the model generation unit 2211 can appropriately extract extraction points Pext that appropriately indicate the differences between the target model TM and the object model OM. Therefore, the model generation unit 2211 can generate a more appropriate differential model DM based on the appropriate extraction points Pext extracted in this manner. Note that a display color is an example of a display mode.
[0135] The model generation unit 2211 may change the display modes of all of the multiple extraction points Pext based on the inter-model distance D1. Alternatively, the model generation unit 2211 may change the display modes of some of the multiple extraction points Pext based on the inter-model distance D1, while not changing the display modes of other of the multiple extraction points Pext based on the inter-model distance D1. For example, the model generation unit 2211 may change the display modes of some of the multiple extraction points Pext based on the inter-model distance D1, while displaying other of the multiple extraction points Pext in a predetermined color (e.g., gray). Alternatively, the model generation unit 2211 may change the display modes of some of the multiple extraction points Pext based on the inter-model distance D1, while not displaying other of the multiple extraction points Pext.
[0136] The model generation unit 2211 may display an extraction point display image 51 including a display object for displaying a plurality of points Ptm included in the target model TM. In this case, the model generation unit 2211 may change the display mode of each point Ptm based on the inter-model distance D1, in the same way as when changing the display mode of each extraction point Pext based on the inter-model distance D1.
[0137] The model generation unit 2211 may change the display mode of each extraction point Pext based on the inter-model distance D1, and may also display an extraction point display image 51 including a histogram showing the appearance frequency of the extraction point Pext based on the inter-model distance D1. The model generation unit 2211 may change the display mode of each point Ptm based on the inter-model distance D1, and may also display an extraction point display image 51 including a histogram showing the appearance frequency of the point Ptm based on the inter-model distance D1.
[0138] On the other hand, if it is determined in step S412 that the user has not adjusted the inter-model distance threshold TH_M (step S412: No), the model generation unit 2211 generates at least one point cloud cluster PGC by clustering the multiple extraction points Pext (step S420). Specifically, the model generation unit 2211 generates at least one point cloud cluster PGC by classifying two extraction points Pext that satisfy the condition that the distance D2 between the two extraction points Pext is equal to or less than a predetermined cluster threshold TH_C into the same point cloud cluster PGC. Note that in step S420, the model generation unit 2211 may generate the point cloud cluster PGC using the default cluster threshold TH_C.
[0139] Thereafter, the model generation unit 2211 controls the display device 25 to display a point cloud cluster display image 52 for displaying at least one point cloud cluster PGC generated by the model generation unit 2211 (step S421). As a result, the display device 25 displays the point cloud cluster display image 52 under the control of the model generation unit 2211 (step S421).
[0140] The model generation unit 2211 may control the display device 25 to display the point cloud cluster display image 52 instead of the extraction point display image 51. In other words, the model generation unit 2211 may control the display device 25 to display either the extraction point display image 51 or the point cloud cluster display image 52, while not displaying the other of the extraction point display image 51 or the point cloud cluster display image 52. In this case, the display device 25 may be considered to be selectively switching the image it displays between the extraction point display image 51 and the point cloud cluster display image 52. Similarly, when the extraction point display image 51 is displayed in step S410 described above, the model generation unit 2211 may control the display device 25 to display the extraction point display image 51 instead of the point cloud cluster display image 52.
[0141] Alternatively, the model generation unit 2211 may control the display device 25 to display the point cloud cluster display image 52 in addition to the extraction point display image 51. That is, the model generation unit 2211 may control the display device 25 to display both the extraction point display image 51 and the point cloud cluster display image 52. In this case, the display device 25 may simultaneously display both the extraction point display image 51 and the point cloud cluster display image 52. That is, the display device 25 may simultaneously display the extraction point display image 51 and the point cloud cluster display image 52 on one display screen. Similarly, when the extraction point display image 51 is displayed in step S410 described above, the model generation unit 2211 may control the display device 25 to display both the extraction point display image 51 and the point cloud cluster display image 52.
[0142] An example of the point cloud cluster display image 52 is shown in Fig. 16. As shown in Fig. 16, the point cloud cluster display image 52 may include a display image 521 for displaying at least one point cloud cluster PGC generated by the model generation unit 2211. In the example shown in Fig. 16, the display image 521 displays at least one point cloud cluster PGC in three dimensions within a predetermined coordinate space. However, a display method different from the display method shown in Fig. 16 may be used as a display method for the at least one point cloud cluster PGC in the display image 521.
[0143] In the display image 521, at least one point cloud cluster PGC may be displayed together with at least one of the target model TM and the object model OM. For example, in the display image 521, at least one point cloud cluster PGC may be displayed in a state where the at least one point cloud cluster PGC is aligned with the target model TM. In other words, in the display image 521, at least one point cloud cluster PGC may be displayed in a state where the at least one point cloud cluster PGC is associated with the target model TM. For example, in the display image 521, at least one point cloud cluster PGC may be displayed in a state where the at least one point cloud cluster PGC is aligned with the object model OM. In other words, in the display image 521, at least one point cloud cluster PGC may be displayed in a state where the at least one point cloud cluster PGC is associated with the object model OM.
[0144] 16 , at least one point cloud cluster PGC is displayed together with both the target model TM and the object model OM in the display image 521. In this case, the target model TM and the object model OM may be displayed in a state where the target model TM and the object model OM are aligned with each other. For example, as described above, the target model TM and the object model OM may be displayed such that the reference portion of the target model TM and the reference portion of the object model OM are located at the same position in a predetermined coordinate space. For example, as described above, the target model TM and the object model OM may be displayed such that the reference portion of the target model TM and the reference portion of the object model OM are located at the same position in a predetermined coordinate space, thereby at least partially overlapping the target model TM and the object model OM.
[0145] The model generation unit 2211 may change the display mode of a group of display objects including at least one point cloud cluster PGC displayed in the display image 521 based on a user input using the input device 24. For example, the model generation unit 2211 may translate a display object within a predetermined coordinate space defined in the display image 521. For example, the model generation unit 2211 may rotate a display object within the predetermined coordinate space defined in the display image 521. For example, the model generation unit 2211 may enlarge a display object within the predetermined coordinate space defined in the display image 521. Note that when at least one point cloud cluster PGC is displayed together with at least one of a target model TM and an object model OM in the display image 521, the group of display objects including at least one point cloud cluster PGC may include at least one of the target model TM and the object model OM.
[0146] In this embodiment, the point cloud cluster display image 52 may further include a display image 522 including a manipulation object 5221 that the user can manipulate to adjust the cluster threshold TH_C used to generate the point cloud cluster PGC. In this case, the user may adjust (in other words, set or change) the cluster threshold TH_C by manipulating the manipulation object 5221 using the input device 24.
[0147] 16 , a slider (in other words, a slider bar) is used as the operation object 5221. In this case, the user may adjust the cluster threshold TH_C so that the cluster threshold TH_C increases by performing an operation to move the slider in a first direction (e.g., upward in FIG. 16 ). On the other hand, the user may adjust the cluster threshold TH_C so that the cluster threshold TH_C decreases by performing an operation to move the slider in a second direction opposite to the first direction (e.g., downward in FIG. 16 ).
[0148] Note that a display object other than a slider may be used as the operation object 5221. For example, a display object capable of specifying one candidate value to be set as the cluster threshold TH_C from among multiple candidate values for the cluster threshold TH_C may be used as the scanning object 5221. Examples of such a display object include at least one of a combo box, a drop-down list, and a radio button.
[0149] The input device 224 used by the user to operate the operation object 5221 may be configured to be capable of receiving user input for operating the scanning object 5221. As an example, the input device 224 may be capable of receiving at least one of a slide input, a pinch input, and a spin input. In this case, the user may adjust the cluster threshold TH_C by performing at least one of a slide input, a pinch input, and a spin input.
[0150] A user may adjust the cluster threshold TH_C on the order of micrometers. A user may adjust the cluster threshold TH_C on the order of sub-millimeters to centimeters. A user may adjust the cluster threshold TH_C using the number of pixels in the image.
[0151] 14 , the model generation unit 2211 determines whether or not the user has adjusted the cluster threshold TH_C using the input device 24 (step S422). That is, the model generation unit 2211 determines whether or not the user has performed an operation to adjust the cluster threshold TH_C using the input device 24 (step S422). In other words, the model generation unit 2211 determines whether or not the input device 24 has received a user input to adjust the cluster threshold TH_C (step S422).
[0152] If it is determined in step S422 that the user has adjusted the cluster threshold TH_C (step S422: Yes), the model generation unit 2211 extracts at least one point cloud cluster PGC using the cluster threshold TH_C adjusted by the user (step S423). That is, the model generation unit 2211 re-extracts at least one point cloud cluster PGC using the cluster threshold TH_C adjusted by the user. Specifically, the model generation unit 2211 generates at least one point cloud cluster PGC by classifying two extraction points Pext that satisfy the condition that the distance D2 between the two extraction points Pext is equal to or less than the cluster threshold TH_C adjusted by the user into the same point cloud cluster PGC (step S423). In other words, the model generation unit 2211 updates at least one point cloud cluster PGC based on the user's operation of the operation object 5221 (step S423).
[0153] Thereafter, the model generation unit 2211 controls the display device 25 to display a point cloud cluster display image 52 for displaying at least one point cloud cluster PGC generated in step S423 (step S424). As a result, under the control of the model generation unit 2211, the display device 25 displays the point cloud cluster display image 52 for displaying at least one point cloud cluster PGC generated in step S423 (step S424).
[0154] In this case, the model generation unit 2211 may be considered to be controlling the display device 25 to update the point cloud cluster display image 52. Specifically, the model generation unit 2211 may be considered to be controlling the display device 25 to update the point cloud cluster display image 52, based on the at least one point cloud cluster PGC generated in step S423. Because at least one point cloud cluster PGC is generated based on the operation of the operation object 5221 by the user in step S423, the model generation unit 2211 may be considered to be controlling the display device 25 to update the point cloud cluster display image 52, based on the operation of the operation object 5221 by the user.
[0155] Thereafter, every time it is determined that the user has adjusted the cluster threshold TH_C (step S422: Yes), the model generation unit 2211 generates at least one point cloud cluster PGC (step S423) and updates the point cloud cluster display image 52 (step S424). Note that if the speed at which the user adjusts the cluster threshold TH_C is equal to or greater than a predetermined threshold, the model generation unit 2211 does not need to update the point cloud cluster display image 52 every time the user adjusts the cluster threshold TH_C.
[0156] The model generation unit 2211 may reflect the result of the user's adjustment of the cluster threshold TH_C in real time in the point cloud cluster display image 52. In other words, when the user adjusts the cluster threshold TH_C, the model generation unit 2211 may generate at least one point cloud cluster PGC in real time and update the point cloud cluster display image 52. As an example, if the operations from step S422 to step S424 described above are performed at a relatively fast cycle, the model generation unit 2211 may reflect the result of the user's adjustment of the cluster threshold TH_C in real time in the extraction point display image 51. However, the model generation unit 2211 does not have to reflect the result of the user's adjustment of the cluster threshold TH_C in the point cloud cluster display image 52 in real time.
[0157] As described above, in this embodiment, the user can appropriately adjust the cluster threshold TH_C using the operation object 5221 included in the point cloud cluster display image 52. For example, if at least one point cloud cluster PGC displayed in the point cloud cluster display image 52 is inappropriate, the user may adjust the cluster threshold TH_C so that an appropriate point cloud cluster PGC is generated. In this case, because the generated point cloud cluster PGC is displayed in the point cloud cluster display image 52, the user can easily confirm the point cloud cluster PGC displayed in the point cloud cluster display image 52. As a result, compared to when the generated point cloud cluster PGC is not displayed in the point cloud cluster display image 52, the user can relatively easily adjust the cluster threshold TH_C so that an appropriate point cloud cluster PGC is generated. Furthermore, when the cluster threshold TH_C is adjusted, the model generation unit 2211 can generate a more appropriate point cloud cluster PGC compared to when the cluster threshold TH_C is fixed. As a result, the model generation unit 2211 can generate a more appropriate difference model DM based on the appropriate point cloud cluster PGC generated in this manner.
[0158] The model generation unit 2211 may change the display mode of each point cloud cluster PGC based on the number of extraction points Pext included in each point cloud cluster PGC. For example, a point cloud cluster PGC into which a relatively large number of extraction points Pext are classified is more likely to include noise extraction points Pext than a point cloud cluster PGC into which a relatively small number of extraction points Pext are classified. This is because the fewer the number of extraction points Pext classified into a point cloud cluster PGC, the more likely it is that the extraction points Pext classified into the point cloud cluster PGC are points Ptm of the target model TM that were accidentally extracted as extraction points Pext due to some factor. For this reason, the model generation unit 2211 may change the display mode of each point cloud cluster PGC so that the display mode of a point cloud cluster PGC in which the number of classified extraction points Pext exceeds a lower threshold differs from the display mode of a point cloud cluster PGC in which the number of classified extraction points Pext is below the lower threshold. That is, the model generation unit 2211 may change the display mode of each point cloud cluster PGC so that the display mode of a point cloud cluster PGC into which extraction points Pext with a relatively high probability of being noise are classified differs from the display mode of a point cloud cluster PGC into which extraction points Pext with a relatively low probability of being noise are classified. In this case, the user may check the point cloud cluster display image 52 and adjust the cluster threshold TH_C so that point cloud clusters PGC containing extraction points Pext with a high probability of being noise are not generated. As a result, the model generation unit 2211 can appropriately generate point cloud clusters PGC containing extraction points Pext that appropriately indicate the difference between the target model TM and the object model OM. As a result, the model generation unit 2211 can generate a more appropriate difference model DM based on the appropriate point cloud cluster PGC thus generated. Display color is an example of a display mode.
[0159] The number of point cloud clusters PGCs generated may change as a result of adjusting the cluster threshold TH_C. That is, the number of point cloud clusters PGCs generated after adjusting the cluster threshold TH_C may be different from the number of point cloud clusters PGCs generated before adjusting the cluster threshold TH_C. Alternatively, the number of point cloud clusters PGCs generated may not change as a result of adjusting the cluster threshold TH_C. That is, the number of point cloud clusters PGCs generated after adjusting the cluster threshold TH_C may be the same as the number of point cloud clusters PGCs generated before adjusting the cluster threshold TH_C.
[0160] On the other hand, if it is determined in step S422 that the user has not adjusted the cluster threshold TH_C (step S422: No), the model generation unit 2211 determines whether to end the adjustment of the inter-model distance threshold TH_M and the cluster threshold TH_C (step S431). For example, if the user has requested continuation of the adjustment of at least one of the inter-model distance threshold TH_M and the cluster threshold TH_C, the model generation unit 2211 may determine not to end the adjustment of the inter-model distance threshold TH_M and the cluster threshold TH_C. For example, if the user has not requested continuation of the adjustment of at least one of the inter-model distance threshold TH_M and the cluster threshold TH_C, the model generation unit 2211 may determine to end the adjustment of the inter-model distance threshold TH_M and the cluster threshold TH_C. For example, if the user requests the end of adjustment of the inter-model distance threshold TH_M and the cluster threshold TH_C, the model generation unit 2211 may determine to end adjustment of the inter-model distance threshold TH_M and the cluster threshold TH_C.
[0161] If it is determined in step S431 that the adjustment of the inter-model distance threshold TH_M and the cluster threshold TH_C should not be ended (step S431: No), the operations from step S411 onwards are repeated. For example, the user may adjust the inter-model distance threshold TH_M as needed, and the model generation unit 2211 may extract multiple extraction points Pext and update the extraction point display image 51 in accordance with the user's adjustment of the inter-model distance threshold TH_M. For example, the user may adjust the cluster threshold TH_C as needed, and the model generation unit 2211 may generate a point cloud cluster PGC and update the point cloud cluster display image 52 in accordance with the user's adjustment of the cluster threshold TH_C.
[0162] That is, in this embodiment, the user may repeat the adjustment of the inter-model distance threshold TH_M and the adjustment of the cluster threshold TH_C as many times as necessary. For example, the user may end the adjustment of the inter-model distance threshold TH_M and the cluster threshold TH_C by adjusting the inter-model distance threshold TH_M once and the cluster threshold TH_C once. For example, the user may end the adjustment of the inter-model distance threshold TH_M and the cluster threshold TH_C by adjusting the inter-model distance threshold TH_M multiple times and the cluster threshold TH_C once. For example, the user may end the adjustment of the inter-model distance threshold TH_M and the cluster threshold TH_C by adjusting the inter-model distance threshold TH_M once and the cluster threshold TH_C multiple times. For example, the user may adjust the inter-model distance threshold TH_M multiple times and adjust the cluster threshold TH_C multiple times, thereby completing the adjustment of the inter-model distance threshold TH_M and the cluster threshold TH_C.
[0163] If the user adjusts the inter-model distance threshold TH_M multiple times, at least one of the multiple adjustments of the inter-model distance threshold TH_M by the user may include fine-tuning the inter-model distance threshold TH_M to set the inter-model distance threshold TH_M to a value desired by the user. In this case, when the user fine-tunes the inter-model distance threshold TH_M, the model generation unit 2211 may not extract multiple extraction points Pext in step S413 or update the extraction point display image 51 in step S414. In other words, if the adjustment amount (in other words, the amount of change) of the inter-model distance threshold TH_M by the user is within a predetermined range, the model generation unit 2211 may not extract multiple extraction points Pext in step S413 or update the extraction point display image 51 in step S414. The model generation unit 2211 may extract a plurality of extraction points Pext and update the extraction point display image 51 after the user has finished fine-tuning the inter-model distance threshold TH_M and the value of the inter-model distance threshold TH_M has been determined.
[0164] If the user adjusts the cluster threshold TH_C multiple times, at least one of the multiple adjustments of the cluster threshold TH_C by the user may include fine-tuning the cluster threshold TH_C to set the cluster threshold TH_C to a value desired by the user. In this case, when the user fine-tunes the cluster threshold TH_C, the model generation unit 2211 may not generate a point cloud cluster PGC in step S423 or update the point cloud cluster display image 52 in step S424. In other words, if the adjustment amount (in other words, the change amount) of the cluster threshold TH_C by the user is within a predetermined range, the model generation unit 2211 may not generate a point cloud cluster PGC in step S423 or update the point cloud cluster display image 52 in step S424. The model generation unit 2211 may generate the point cloud cluster PGC and update the point cloud cluster display image 52 after the user has finished fine-tuning the cluster threshold TH_C and the value of the cluster threshold TH_C has been determined.
[0165] On the other hand, if it is determined in step S431 that the adjustment of the inter-model distance threshold TH_M and the cluster threshold TH_C is to be terminated (step S431: Yes), the model generation unit 2211 generates a differential model DM based on at least one point cloud cluster PGC generated in step S423 (step S432). For example, the model generation unit 2211 may generate, as the differential model DM, a three-dimensional model including a plurality of extraction points Pext classified into at least one point cloud cluster PGC. For example, the model generation unit 2211 may generate, as the differential model DM, a three-dimensional model having a three-dimensional shape indicated by the plurality of extraction points Pext classified into at least one point cloud cluster PGC. In this case, the point cloud cluster PGC may be considered to be used as the differential model DM. The plurality of extraction points Pext included in the point cloud cluster PGC may be considered to be used as the differential model DM.
[0166] If a single point cloud cluster PGC is generated in step S423, the model generation unit 2211 may generate a differential model DM based on the single point cloud cluster PGC. If a plurality of point cloud clusters PGC are generated in step S423, the model generation unit 2211 may generate a differential model DM based on at least one of the plurality of point cloud clusters PGC.
[0167] If multiple point cloud clusters PGCs are generated in step S423, the user may specify at least one point cloud cluster PGC to be used to generate the differential model DM. For example, as shown in FIG. 17 , the user may specify at least one point cloud cluster PGC by operating a pointer 529 for specifying at least one point cloud cluster PGC on the point cloud cluster display image 52 using the input device 24. In this case, the model generation unit 2211 may generate the differential model DM based on at least one point cloud cluster PGC specified by the user. Alternatively, the model generation unit 2211 may automatically specify at least one point cloud cluster PGC to be used to generate the differential model DM. Alternatively, a cluster specification device different from the model generation unit 2211 may automatically specify at least one point cloud cluster PGC to be used to generate the differential model DM. An example of a cluster specification device is a device that uses a computational model that can identify at least one point cloud cluster PGC to be used to generate the differential model DM when feature quantities of multiple point cloud clusters PGCs are input. Such a computational model may be a computational model that can be learned by machine learning.
[0168] The cluster designation device (or the computational model used by the cluster designation device, hereinafter the same in this paragraph) may identify at least one point cloud cluster PGC to be used to generate the differential model DM depending on the type of workpiece W to be subjected to additive machining. For example, if the workpiece W is a turbine blade, the tip (i.e., the top) of the turbine blade wears. Therefore, the cluster designation device may identify a point cloud cluster PGC located at or near the tip (i.e., the top) of the turbine blade as at least one point cloud cluster PGC to be used to generate the differential model DM. On the other hand, because the side or bottom of the turbine blade wears less frequently, the cluster designation device may identify a point cloud cluster PGC located at the side or bottom of the turbine blade as noise. In other words, it is not necessary to identify a point cloud cluster PGC located at the side or bottom of the turbine blade as at least one point cloud cluster PGC to be used to generate the differential model DM.
[0169] As described above, a point cloud cluster PGC into which a relatively small number of extraction points Pext are classified is more likely to include noise extraction points Pext than a point cloud cluster PGC into which a relatively large number of extraction points Pext are classified. Therefore, when multiple point cloud clusters PGC are generated, the model generation unit 2211 may generate a differential model DM based on point cloud clusters PGCs that satisfy a cluster selection condition based on the number of extraction points Pext classified into the point cloud cluster PGC. The cluster selection condition may include a first condition that the number of extraction points Pext classified into the point cloud cluster PGC is equal to or greater than a lower threshold. In this case, the model generation unit 2211 may generate a differential model DM based on at least one point cloud cluster PGC in which the number of extraction points Pext classified into the point cloud cluster PGC is equal to or greater than a lower threshold. The cluster selection condition may include a second condition that the number of extraction points Pext classified into the point cloud cluster PGC is maximized. In this case, the model generation unit 2211 may generate the differential model DM based on one point cloud cluster PGC that has the largest number of extracted points Pext classified into the point cloud cluster PGC. In this case, the model generation unit 2211 can generate the differential model DM without using extracted points Pext that are relatively likely to be noise. As a result, the model generation unit 2211 can generate the differential model DM that accurately indicates the difference between the object model OM and the target model TM.
[0170] When the differential model DM is generated, the model generation unit 2211 may generate a differential model file related to the generated differential model DM (step S433). The differential model file may store the differential model DM. The differential model file may store multiple slice data obtained by performing a slicing process on the differential model DM as described above. The differential model file may store at least one of the inter-model distance threshold TH_M and the cluster threshold TH_C used to generate the differential model DM. The differential model file may store at least one of the object model OM and the target model TM used to generate the differential model DM. Alternatively, the differential model file may be associated with another file storing at least one of the object model OM and the target model TM used to generate the differential model DM. Such a differential model file may be used for the purpose of traceability of the generation environment of the differential model DM. In this case, a user can easily confirm the generation environment when a certain differential model DM was generated by referring to the differential model file.
[0171] Furthermore, when a differential model DM is generated, the model generation unit 2211 may control the display device 25 to display the generated differential model DM. As a result, the display device 25 may display the differential model DM generated by the model generation unit 2211 under the control of the model generation unit 2211.
[0172] Furthermore, when the differential model DM is generated, the model generation unit 2211 outputs the generated differential model DM to the control information generation unit 2212. As a result, the control information generation unit 2212 generates processing control information based on the differential model DM generated by the model generation unit 2211.
[0173] 14 , in addition to or instead of generating the differential model DM based on at least one point cloud cluster PGC, the model generation unit 2211 may output at least one point cloud cluster PGC as information for generating the differential model DM. In this case, a device different from the model generation unit 2211 may generate the differential model DM based on the at least one point cloud cluster PGC generated by the model generation unit 2211. The control information generation unit 2212 may generate processing control information based on the differential model DM generated by a device different from the model generation unit 2211.
[0174] (3) Technical Effects As described above, in this embodiment, the user can repeat the adjustment of the inter-model distance threshold TH_M and the adjustment of the cluster threshold TH_C as many times as necessary. Therefore, after adjusting the cluster threshold TH_C, the user can readjust the inter-model distance threshold TH_M. For example, if the point cloud cluster PGC displayed in the point cloud cluster display image 52 after adjusting the cluster threshold TH_C is inappropriate, the user can adjust not only the cluster threshold TH_C but also the inter-model distance threshold TH_M. Here, the generated point cloud cluster PGC may be inappropriate not only because the cluster threshold TH_C is inappropriate, but also because the multiple extraction points Pext that served as the basis for calculating the point cloud cluster PGC are inappropriate. In this embodiment, if the point cloud cluster PGC is inappropriate, the user can not only adjust the cluster threshold TH_C to resolve the problem of the inappropriate cluster threshold TH_C, but also readjust the inter-model distance threshold TH_M to resolve the problem of the inappropriate multiple extraction points Pext. Furthermore, when the inter-model distance threshold TH_M is adjusted, the user can readjust the cluster threshold TH_C in accordance with the adjustment of the inter-model distance threshold TH_M. This allows the model generation unit 2211 to generate a more appropriate point cloud cluster PGC compared to a case where the user cannot readjust the inter-model distance threshold TH_M after adjusting the cluster threshold TH_C. As a result, the model generation unit 2211 can generate a more appropriate differential model DM based on the appropriate point cloud cluster PGC generated in this manner.
[0175] (4) Modifications Next, modifications of the machining system SYS will be described.
[0176] (4-1) First Modification As described above, each time the user adjusts the inter-model distance threshold TH_M (step S412 in FIG. 14 : Yes), the model generation unit 2211 extracts multiple extraction points Pext from the target model TM in real time based on the inter-model distance threshold TH_M adjusted by the user (step S413 in FIG. 14 ) and displays the extraction points Pext in real time (step S414 in FIG. 14 ). However, the greater the number of points Ptm included in the target model TM and the number of points Pom included in the object model OM (i.e., the data size of the point cloud), the greater the processing load required to extract and display the multiple extraction points Pext. As a result, depending on the data size of the point cloud, the model generation unit 2211 may not be able to extract and display the multiple extraction points Pext in real time.
[0177] Similarly, as described above, each time the user adjusts the cluster threshold TH_C (step S422: Yes in FIG. 14 ), the model generation unit 2211 generates at least one point cloud cluster PGC in real time based on the cluster threshold TH_C adjusted by the user (step S423 in FIG. 14 ) and displays the point cloud cluster PGC in real time (step S424 in FIG. 14 ). However, the greater the number of points Ptm included in the target model TM and the number of points Pom included in the object model OM (i.e., the point cloud data size), the greater the processing load required to generate and display at least one point cloud cluster PGC. As a result, depending on the point cloud data size, the model generation unit 2211 may not be able to generate and display at least one point cloud cluster PGC in real time.
[0178] Therefore, in the first modified example, the model generation unit 2211 may use, as the target model TM, a reduced target model TM_reduced having fewer points Ptm than the original target model TM_original (i.e., having a smaller point cloud data size) in addition to the original target model TM_original acquired in step S3 of Fig. 8. Similarly, the model generation unit 2211 may use, as the object model OM, a reduced object model OM_reduced having fewer points Pom than the original object model OM_original (i.e., having a smaller point cloud data size) in addition to the original object model OM_original generated by the shape measurement device 21 in step S2 of Fig. 8.
[0179] In the following description, the original target model TM_original and the original object model OM_original will each be collectively referred to as the "original model M_original" as necessary. Furthermore, in the following description, the reduced target model TM_reduced and the reduced object model OM_reduced will each be collectively referred to as the "reduced model M_reduced" as necessary. The reduced model M_reduced may be considered to correspond to a reduced three-dimensional image. For this reason, the reduced model M_reduced may also be referred to as a "thumbnail image" indicating a reduced (in other words, compressed) image.
[0180] When a reduced model M_reduced is used, the model generation unit 2211 may acquire the reduced model M_reduced before starting the differential model generation operation shown in FIG. 14 . For example, the model generation unit 2211 may acquire the target model TM_reduced by performing a reduction process on the target model TM_original to generate the target model TM_reduced. For example, the model generation unit 2211 may acquire the target model TM_reduced from a model generation device that generates the target model TM_reduced. For example, the model generation unit 2211 may acquire the object model OM_reduced by performing a reduction process on the object model OM_original to generate the object model OM_reduced. For example, the model generation unit 2211 may acquire the object model OM_reduced from a model generation device that generates the object model OM_reduced. Thereafter, the model generation unit 2211 may perform the differential model generation operation shown in FIG. 14 using the reduced model M_reduced in addition to the original model M_original.
[0181] The original model M_original and the reduced model M_reduced may be used in a file format in which the original model M_original and the reduced model M_reduced are stored in a single data file, as shown in Fig. 18(a). Alternatively, the original model M_original and the reduced model M_reduced may be used in a file format in which the original model M_original and the reduced model M_reduced are stored in separate data files, as shown in Fig. 18(b). When the original model M_original and the reduced model M_reduced are stored in separate data files, the model generation unit 2211 may obtain one original model M_original and one reduced model M_reduced corresponding to one original model M_original using file association information that associates a data file in which one original model M_original is stored with a data file in which one reduced model M_reduced corresponding to one original model M_original, as shown in Figure 18 (c).
[0182] A specific example of a differential model generation operation using the reduced model M_reduced will now be described.
[0183] (4-1-1) First specific example of differential model generation operation using reduced model M_reduced In the first specific example, in order to extract multiple extraction points Pext in step S410 or step S413 of Figure 14, the model generation unit 2211 may first use the reduced model M_reduced instead of the original model M_original.
[0184] For example, Figure 19 shows multiple extraction points Pext extracted using a reduced model M_reduced instead of the original model M_original. As shown in Figure 19, if, at time t11, the user adjusts the inter-model distance threshold TH_M so that the inter-model distance threshold TH_M becomes the first inter-model distance threshold TH_M#11, the model generation unit 2211 may extract multiple extraction points Pext using the target model TM_reduced, the object model OM_reduced, and the first inter-model distance threshold TH_M#11. Furthermore, the display device 25 may display an extraction point display image 51 for displaying the multiple extraction points Pext. Subsequently, at time t12, if the user adjusts the inter-model distance threshold TH_M so that the inter-model distance threshold TH_M is changed from the first inter-model distance threshold TH_M#11 to the second inter-model distance threshold TH_M#12, the model generation unit 2211 may extract multiple extraction points Pext using the target model TM_reduced, the object model OM_reduced, and the second inter-model distance threshold TH_M#12. Furthermore, the display device 25 may display an extraction point display image 51 for displaying the multiple extraction points Pext. As shown in FIG. 19 , at least one of the positions and the number of the multiple extraction points Pext may change due to the change in the inter-model distance threshold TH_M. Subsequently, at time t13, if the user adjusts the inter-model distance threshold TH_M so that the inter-model distance threshold TH_M is changed from the second inter-model distance threshold TH_M#12 to the third inter-model distance threshold TH_M#13, the model generation unit 2211 may extract multiple extraction points Pext using the target model TM_reduced, the object model OM_reduced, and the third inter-model distance threshold TH_M#13. Furthermore, the display device 25 may display an extraction point display image 51 for displaying the multiple extraction points Pext. As shown in FIG. 19 , at least one of the positions and the number of the multiple extraction points Pext may change due to the change in the inter-model distance threshold TH_M.
[0185] If, as a result of adjusting the inter-model distance threshold TH_M in this manner, the user determines that the third inter-model distance threshold TH_M#13 is appropriate as the final inter-model distance threshold TH_M, the model generation unit 2211 may extract multiple extraction points Pext using the original model M_original instead of the reduced model M_reduced. In other words, the model generation unit 2211 may extract, as multiple extraction points Pext, multiple points Ptm that satisfy the condition that the inter-model distance D1 between point Ptm of the target model TM_original and the nearest point Pom_closest of the object model OM_original is equal to or greater than the third inter-model distance threshold TH_M#13. Furthermore, if necessary, the display device 25 may display an extraction point display image 51 for displaying the multiple extraction points Pext.
[0186] As a result, while the user is adjusting the inter-model distance threshold TH_M, the model generation unit 2211 extracts and displays multiple extraction points Pext using the reduced model M_reduced. Therefore, the processing load required to extract and display multiple extraction points Pext is lower than when the original model M_original is used. As a result, the model generation unit 2211 is more likely to be able to extract and display multiple extraction points Pext in real time.
[0187] On the other hand, after the user has completed adjusting the inter-model distance threshold TH_M, the model generation unit 2211 re-extracts the multiple extraction points Pext using the original model M_original. Therefore, the model generation unit 2211 can generate a point cloud cluster PGC using the multiple extraction points Pext extracted using the original model M_original, instead of the multiple extraction points Pext extracted using the reduced model M_reduced. Therefore, the operation of extracting the multiple extraction points Pext using the reduced model M_reduced does not affect the subsequent operation of generating a point cloud cluster PGC.
[0188] (4-1-2) Second Specific Example of Differential Model Generation Operation Using Reduced Model M_reduced In the second specific example, in order to extract multiple extraction points Pext in step S410 or step S413 of FIG. 14 , the model generation unit 2211 may use the reduced model M_reduced in addition to the original model M_original. That is, the model generation unit 2211 may perform the process of extracting multiple extraction points Pext using the original model M_original and the process of extracting multiple extraction points Pext using the reduced model M_reduced in parallel. However, the model generation unit 2211 may perform the process of extracting multiple extraction points Pext using the original model M_original as background processing. On the other hand, the model generation unit 2211 may perform the process of extracting multiple extraction points Pext using the reduced model M_reduced as foreground processing.
[0189] For example, Figure 20 shows multiple extraction points Pext extracted using the original model M_original and the reduced model M_reduced. As shown in Figure 20, if the user adjusts the inter-model distance threshold TH_M at time t14 so that the inter-model distance threshold TH_M becomes the fourth inter-model distance threshold TH_M#14, the model generation unit 2211 may perform, as foreground processing, a process of extracting multiple extraction points Pext using the target model TM_reduced, the object model OM_reduced, and the fourth inter-model distance threshold TH_M#14. Furthermore, the display device 25 may display an extraction point display image 51 for displaying the multiple extraction points Pext extracted by the foreground processing. On the other hand, the model generation unit 2211 may perform, as background processing, a process of extracting multiple extraction points Pext using the target model TM_original, the object model OM_original, and the fourth inter-model distance threshold TH_M#14. In this case, the display device 25 does not need to display the extraction point display image 51 for displaying the multiple extraction points Pext extracted by the background processing. Thereafter, at time t15, if the user adjusts the inter-model distance threshold TH_M so that the inter-model distance threshold TH_M is changed from the fourth inter-model distance threshold TH_M#14 to the fifth inter-model distance threshold TH_M#15, the model generation unit 2211 may perform, as foreground processing, a process of extracting multiple extraction points Pext using the target model TM_reduced, the object model OM_reduced, and the fifth inter-model distance threshold TH_M#15. Furthermore, the display device 25 may display an extraction point display image 51 for displaying the plurality of extraction points Pext extracted by the foreground processing. As shown in Fig. 20 , at least one of the positions and the number of the plurality of extraction points Pext may change due to a change in the inter-model distance threshold TH_M. Meanwhile, the model generation unit 2211 may perform, as background processing, a process of extracting the plurality of extraction points Pext using the target model TM_original, the object model OM_original, and the fifth inter-model distance threshold TH_M#15.In this case, the display device 25 does not need to display the extraction point display image 51 for displaying the plurality of extraction points Pext extracted by the background processing.
[0190] If, as a result of adjusting the inter-model distance threshold TH_M in this manner, the user determines that the fifth inter-model distance threshold TH_M#15 is appropriate as the final inter-model distance threshold TH_M, the model generation unit 2211 may generate a point cloud cluster PGC using the multiple extraction points Pext that have already been generated by background processing using the fifth inter-model distance threshold TH_M#15. As a result, the time required from when the user completes adjustment of the inter-model distance threshold TH_M to when the point cloud cluster PGC is generated is reduced, compared to when background processing is not performed. Furthermore, because the process of extracting the multiple extraction points Pext using the original model M_original is performed as background processing, the model generation unit 2211 can allocate relatively more resources to the process of extracting and displaying the multiple extraction points Pext using the reduced model M_reduced, compared to when the process of extracting the multiple extraction points Pext using the original model M_original is performed as foreground processing. As a result, the model generating unit 2211 is more likely to be able to extract and display a plurality of extraction points Pext in real time.
[0191] (4-1-3) Third specific example of differential model generation operation using reduced model M_reduced In the third specific example, in order to generate at least one point cloud cluster PGC in step S420 or step S423 of Figure 14, the model generation unit 2211 may first use the reduced model M_reduced instead of the original model M_original.
[0192] For example, Fig. 21 shows at least one point cloud cluster PGC generated using a reduced model M_reduced instead of the original model M_original. As shown in Fig. 21, if, at time t21, the user adjusts the cluster threshold TH_C so that the cluster threshold TH_C becomes the first cluster threshold TH_C#11, the model generation unit 2211 may generate at least one point cloud cluster PGC by clustering the multiple extracted points Pext extracted from the target model TM_reduced based on the first cluster threshold TH_C#11. Furthermore, the display device 25 may display a point cloud cluster display image 52 for displaying at least one point cloud cluster PGC. Subsequently, at time t22, if the user adjusts the cluster threshold TH_C so that the cluster threshold TH_C is changed from the first cluster threshold TH_C#11 to the second cluster threshold TH_C#12, the model generation unit 2211 may generate at least one point cloud cluster PGC by clustering the multiple extraction points Pext extracted from the target model TM_reduce based on the second cluster threshold TH_C#12. Furthermore, the display device 25 may display a point cloud cluster display image 52 for displaying at least one point cloud cluster PGC. As shown in FIG. 21 , at least one of the position, shape, and number of the point cloud cluster PGC may change due to the change in the cluster threshold TH_C. Subsequently, at time t23, if the user adjusts the cluster threshold TH_C so that the cluster threshold TH_C is changed from the second cluster threshold TH_C#12 to the third cluster threshold TH_C#13, the model generation unit 2211 may generate at least one point cloud cluster PGC by clustering the multiple extraction points Pext extracted from the target model TM_reduce based on the third cluster threshold TH_C#13. Furthermore, the display device 25 may display a point cloud cluster display image 52 for displaying at least one point cloud cluster PGC. As shown in FIG. 21 , at least one of the position, shape, and number of the point cloud cluster PGC may change due to the change in the cluster threshold TH_C.
[0193] If, as a result of adjusting the cluster threshold TH_C in this manner, the user determines that the third cluster threshold TH_C#13 is appropriate as the final cluster threshold TH_C, the model generation unit 2211 may generate at least one point cloud cluster PGC by clustering the multiple extraction points Pext extracted from the target model TM_original, instead of clustering the multiple extraction points Pext extracted from the target model TM_reduced. Furthermore, if necessary, the display device 25 may display a point cloud cluster display image 52 for displaying at least one point cloud cluster PGC.
[0194] As a result, while the user is adjusting the cluster threshold TH_C, the model generation unit 2211 generates and displays at least one point cloud cluster PGC using the reduced model M_reduced. Therefore, the processing load required to generate and display at least one point cloud cluster PGC is lower than when the original model M_original is used. As a result, the model generation unit 2211 is more likely to be able to generate and display at least one point cloud cluster PGC in real time.
[0195] On the other hand, after the user completes the adjustment of the cluster threshold TH_C, the model generation unit 2211 regenerates at least one point cloud cluster PGC using the original model M_original. Therefore, the model generation unit 2211 can generate a differential model DM using at least one point cloud cluster PGC generated using the original model M_original, instead of at least one point cloud cluster PGC generated using the reduced model M_reduced. Therefore, the operation of generating at least one point cloud cluster PGC using the reduced model M_reduced does not affect the subsequent operation of generating a differential model DM.
[0196] (4-1-4) Fourth Specific Example of Differential Model Generation Operation Using Reduced Model M_reduced In this fourth specific example, to generate at least one point cloud cluster PGC in step S420 or step S423 of FIG. 14 , the model generation unit 2211 may use the reduced model M_reduced in addition to the original model M_original. That is, the model generation unit 2211 may perform, in parallel, the process of generating at least one point cloud cluster PGC using the original model M_original and the process of generating at least one point cloud cluster PGC using the reduced model M_reduced. However, the model generation unit 2211 may perform the process of generating at least one point cloud cluster PGC using the original model M_original as background processing. On the other hand, the model generation unit 2211 may perform the process of generating at least one point cloud cluster PGC using the reduced model M_reduced as foreground processing.
[0197] For example, Fig. 22 shows at least one point cloud cluster PGC generated using the original model M_original and the reduced model M_reduced. As shown in Fig. 22, if the user adjusts the cluster threshold TH_C at time t24 so that the cluster threshold TH_C becomes a fourth cluster threshold TH_C#14, the model generation unit 2211 may perform, as foreground processing, a process of generating at least one point cloud cluster PGC by clustering a plurality of extracted points Pext extracted from the target model TM_reduced based on the fourth cluster threshold TH_C#14. Furthermore, the display device 25 may display a point cloud cluster display image 52 for displaying the at least one point cloud cluster PGC generated by the foreground processing. On the other hand, the model generation unit 2211 may perform, as background processing, a process of generating at least one point cloud cluster PGC by clustering the plurality of extraction points Pext extracted from the target model TM_original based on a fourth cluster threshold TH_C#14. In this case, the display device 25 does not need to display a point cloud cluster display image 52 for displaying the at least one point cloud cluster PGC generated by the background processing. Thereafter, if, at time t25, the user adjusts the cluster threshold TH_C so that the cluster threshold TH_C is changed from the fourth cluster threshold TH_C#14 to the fifth cluster threshold TH_C#15, the model generation unit 2211 may perform, as foreground processing, a process of generating at least one point cloud cluster PGC by clustering the plurality of extraction points Pext extracted from the target model TM_reduce based on the fifth cluster threshold TH_C#15. Furthermore, the display device 25 may display a point cloud cluster display image 52 for displaying at least one point cloud cluster PGC generated by the foreground processing. As shown in Fig. 22, at least one of the position, shape, and number of the point cloud cluster PGC may change due to a change in the cluster threshold TH_C.On the other hand, the model generation unit 2211 may perform, as background processing, processing to generate at least one point cloud cluster PGC by clustering the multiple extraction points Pext extracted from the target model TM_original based on the fifth cluster threshold TH_C#15. In this case, the display device 25 does not need to display a point cloud cluster display image 52 for displaying the at least one point cloud cluster PGC generated by the background processing.
[0198] If, as a result of adjusting the cluster threshold TH_C in this manner, the user determines that the fifth cluster threshold TH_C#15 is appropriate as the final cluster threshold TH_C, the model generation unit 2211 may generate a differential model DM using at least one point cloud cluster PGC that has already been generated by background processing using the fifth cluster threshold TH_C#15. As a result, the time required from when the user completes adjustment of the cluster threshold TH_C to when the point cloud cluster PGC is generated is reduced, compared to when background processing is not performed. Furthermore, because the processing of generating at least one point cloud cluster PGC using the original model M_original is performed as background processing, the model generation unit 2211 can allocate relatively more resources to the processing of generating and displaying at least one point cloud cluster PGC using the reduced model M_reduced, compared to when the processing of generating at least one point cloud cluster PGC using the original model M_original is performed as foreground processing. As a result, the model generation unit 2211 is more likely to be able to generate and display at least one point cloud cluster PGC in real time.
[0199] (4-2) Second Modification In the second modification, as shown in FIG. 23, the model generation unit 2211 may reuse at least one of the inter-model distance threshold TH_M and the cluster threshold TH_C adjusted to generate a first differential model DM#21 indicating the three-dimensional shape of a first three-dimensional structure ST#21 to be formed in a first work W#21, to generate a second differential model DM#22 indicating the three-dimensional shape of a second three-dimensional structure ST#22 to be formed in a second work W#22 different from the first work W#21.
[0200] 23 , when the machining apparatus 1 machines a plurality of workpieces W so that the shapes of the plurality of workpieces W having the same shape become the same target shape, the three-dimensional shape of the first three-dimensional structure ST#21 to be formed in the second workpiece W#21 and the three-dimensional shape of the second three-dimensional structure ST#22 to be formed in the second workpiece W#22 should be identical. Therefore, the first differential model DM#21 and the second differential model DM#22 should also be identical. Therefore, even if at least one of the inter-model distance threshold TH_M and the cluster threshold TH_C used to generate the first differential model DM#21 is reused to generate the second differential model DM#22, the model generation unit 2211 can generate a second differential model DM#22 that represents the three-dimensional shape of the second three-dimensional structure ST#22 to be formed in the second workpiece W#22 with a reasonable degree of accuracy. Therefore, when the processing device 1 processes multiple workpieces W having the same shape so that the shapes of the multiple workpieces W become the same target shape, the technical effect of reusing at least one of the model distance threshold TH_M and the cluster threshold TH_C is enhanced.
[0201] Specifically, to generate the second differential model DM#22, the model generation unit 2211 may extract multiple extraction points Pext using the inter-model distance threshold TH_M that was adjusted to generate the first differential model DM#21 in step S410 of Fig. 14. For example, if the inter-model distance threshold TH_M#21 is used as the final value of the inter-model distance threshold TH_M to generate the first differential model DM#21, the model generation unit 2211 may extract multiple extraction points Pext using the inter-model distance threshold TH_M#21 in step S410 of Fig. 14.
[0202] In this case, the user does not necessarily need to adjust the inter-model distance threshold TH_M in step S412 of FIG. 14 . This reduces the user's effort in adjusting the inter-model distance threshold TH_M. Furthermore, the time required for the user to adjust the inter-model distance threshold TH_M, the time required for extracting multiple extraction points Pext associated with the user's adjustment of the inter-model distance threshold TH_M, and the time required for updating the extraction point display image 51 associated with the extraction of the multiple extraction points Pext are eliminated. This improves the throughput related to the generation of the differential model DM. Furthermore, the model generation unit 2211 does not need to extract multiple extraction points Pext associated with the user's adjustment of the inter-model distance threshold TH_M and update the extraction point display image 51 associated with the extraction of the multiple extraction points Pext. This reduces the processing load on the model generation unit 2211 required for generating the differential model DM.
[0203] Furthermore, to generate the second differential model DM#22, the model generation unit 2211 may generate at least one point cloud cluster PGC using the cluster threshold TH_C adjusted to generate the first differential model DM#21 in step S420 of Fig. 14. For example, if the cluster threshold TH_C#21 is used as the final value of the cluster threshold TH_C to generate the first differential model DM#21, the model generation unit 2211 may generate at least one point cloud cluster PGC using the cluster threshold TH_C#21 in step S420 of Fig. 14.
[0204] In this case, the user does not necessarily need to adjust the cluster threshold TH_C in step S422 of FIG. 14 . This reduces the user's effort to adjust the cluster threshold TH_C. Furthermore, the time required for the user to adjust the cluster threshold TH_C, the time required for generating at least one point cloud cluster PGC in association with the user's adjustment of the cluster threshold TH_C, and the time required for updating the point cloud cluster display image 52 in association with the generation of at least one point cloud cluster PGC are eliminated. This improves throughput related to the generation of the differential model DM. Furthermore, the model generation unit 2211 does not need to generate at least one point cloud cluster PGC in association with the user's adjustment of the cluster threshold TH_C and update the point cloud cluster display image 52 in association with the generation of at least one point cloud cluster PGC. This reduces the processing load on the model generation unit 2211 required for generating the differential model DM.
[0205] The model generation unit 2211 may reuse a single inter-model distance threshold TH_M adjusted by the user for a single work W as the inter-model distance threshold TH_M for other works W. Alternatively, the model generation unit 2211 may reuse two or more inter-model distance thresholds TH_M adjusted by the user for two or more works W as the inter-model distance thresholds TH_M for other works W. In this case, the model generation unit 2211 may reuse a value calculated from two or more inter-model distance thresholds TH_M as the inter-model distance threshold TH_M for other works W. An example of a value calculated from two or more inter-model distance thresholds TH_M is at least one of the average, median, minimum, and maximum of two or more inter-model distance thresholds TH_M.
[0206] Furthermore, to generate the second differential model DM#22, the model generation unit 2211 may reuse the position of the first differential model DM#21 in addition to or instead of reusing at least one of the inter-model distance threshold TH_M and the cluster threshold TH_C adjusted to generate the first differential model DM#22. Specifically, the model generation unit 2211 may use the point cloud cluster PGC located closest to the position of the first differential model DM#21, among the at least one point cloud cluster PGC generated to generate the second differential model DM#22. In other words, the model generation unit 2211 may generate the second differential model DM#22 using the point cloud cluster PGC located closest to the position of the first differential model DM#21.
[0207] However, the model generation unit 2211 does not need to reuse at least one of the inter-model distance threshold TH_M, the cluster threshold TH_C, and the position of the differential model DM. That is, the user may adjust the inter-model distance threshold TH_M and the cluster threshold TH_C to generate the first differential model DM#21, and also adjust the inter-model distance threshold TH_M and the cluster threshold TH_C to generate the second differential model DM#22. In this case, compared to the case where at least one of the inter-model distance threshold TH_M, the cluster threshold TH_C, and the position of the differential model DM is reused, the model generation unit 2211 can generate the second differential model DM#22 that represents the three-dimensional shape of the second three-dimensional structure ST#22 to be formed in the second workpiece W#22 with higher accuracy.
[0208] Furthermore, if the three-dimensional shape of the second differential model DM#22 generated by reusing at least one of the inter-model distance threshold TH_M, the cluster threshold TH_C, and the position of the differential model DM is significantly different from the expected three-dimensional shape, the model generation unit 2211 may regenerate the second differential model DM#22 without reusing at least one of the inter-model distance threshold TH_M, the cluster threshold TH_C, and the position of the differential model DM. This is because, in this case, it is assumed that the accuracy of the second differential model DM#22 has deteriorated due to the reusing of at least one of the inter-model distance threshold TH_M, the cluster threshold TH_C, and the position of the differential model DM. In this case, the model generation unit 2211 may generate the second differential model DM#22 using the inter-model distance threshold TH_M and the cluster threshold TH_C adjusted by the user to generate the second differential model DM#22.
[0209] Furthermore, as described above, the technical effect of reusing at least one of the inter-model distance threshold TH_M and the cluster threshold TH_C is enhanced when the machining device 1 machines multiple workpieces W so that the shapes of the multiple workpieces W having the same shape become the same target shape. In this case, if the multiple workpieces W include at least one workpiece W with a significantly different shape, reusing at least one of the inter-model distance threshold TH_M and the cluster threshold TH_C for the at least one workpiece W with a significantly different shape may degrade the accuracy of the differential model DM. Therefore, the model generation unit 2211 may determine whether the actual shape of the workpiece W significantly differs from the expected shape based on the measurement results of the three-dimensional shape of the workpiece W by the shape measurement device 21 (i.e., the object model OM). For a workpiece W whose actual shape significantly differs from the expected shape, the model generation unit 2211 may generate a differential model DM without reusing at least one of the inter-model distance threshold TH_M, the cluster threshold TH_C, and the position of the differential model DM. As a result, even if the plurality of workpieces W includes at least one workpiece W with a significantly different shape, the accuracy of the differential model DM is less likely to deteriorate.
[0210] The second modified example may be combined with the first modified example described above. That is, in the first modified example described above, the model generation unit 2211 may also use at least one of the inter-model distance threshold TH_M and the cluster threshold TH_C, as described in the second modified example.
[0211] (4-3) Third Modification In the third modification, after acquiring the target model TM in step S3 of Fig. 8, the model generation unit 2211 deforms the target model TM based on the object model OM, and generates a differential model DM based on the object model OM and the deformed target model TM. Below, the technical reasons for deforming the target model TM will be explained, and then the operation of deforming the target model TM will be explained.
[0212] As described above, as the workpiece W is used, a portion of the workpiece W may be damaged. However, in addition to or instead of a portion of the workpiece W being damaged, at least a portion of the workpiece W may be physically deformed as the workpiece W is used. For example, the workpiece W may be physically deformed due to a load applied to the workpiece W when used in a high-temperature environment. In other words, creep may occur. For example, the workpiece W may be physically deformed due to aging or the like.
[0213] In the case where the workpiece W is deformed, "use of the workpiece W" may include use of the workpiece W long enough to cause deformation of the workpiece W. For example, "use of the workpiece W" may include use of the workpiece W for a long period of time that causes deformation of the workpiece W. Therefore, an actually used workpiece W may include a workpiece W that was used until it was deformed. On the other hand, a workpiece W before actual use may include a workpiece W that has been used but not long enough to cause deformation of the workpiece W. For example, a workpiece W before actual use may include use of the workpiece W for a short period of time that does not cause deformation of the workpiece W (for example, a test run of the workpiece W or a product including the workpiece W, etc.).
[0214] It should be noted that even when a part of the workpiece W is damaged (for example, worn) as the workpiece W is used, the three-dimensional shape of the workpiece W changes, and therefore the workpiece W can be said to be deformed. However, in this embodiment, the "deformation of the workpiece W" refers to the deformation of the workpiece W that occurs as the workpiece W is used, and that is caused by a factor other than the damage to the workpiece W.
[0215] Here, as described above, the object model OM represents the three-dimensional shape of the workpiece W after it has actually been used. Therefore, when the workpiece W is deformed as the workpiece W is used, the object model OM represents the actual three-dimensional shape of the workpiece W that has been deformed as the workpiece W is used, as shown on the right side of FIG. 24, which schematically shows the object model OM generated when the workpiece W is deformed. In other words, the object model OM reflects the deformation of the workpiece W that has occurred as the workpiece W is used. On the other hand, as described above, the target model TM represents the three-dimensional shape of the workpiece W before it is actually used. Therefore, the target model TM does not reflect any deformation of the workpiece W that has occurred as the workpiece W is used. Therefore, as shown on the left side of FIG. 24, the target model TM represents the target shape of the workpiece W that has not been deformed.
[0216] In this case, although the three-dimensional shape of the object model OM should be identical to the three-dimensional shape of the corresponding model portion CMP of the target model TM corresponding to the object model OM, due to deformation of the workpiece W, the three-dimensional shape of the object model OM differs from the three-dimensional shape of the corresponding model portion CMP of the target model TM, as shown in FIG. 24 . As a result, as shown in FIG. 25 , which schematically illustrates a differential model DM generated when the workpiece W is deformed, the differential model DM corresponding to the difference between the target model TM and the object model OM exhibits a three-dimensional shape that differs from the three-dimensional shape of the three-dimensional structure ST to be formed by the machining apparatus 1 through additive machining. For example, the differential model DM exhibits a three-dimensional shape that differs from the three-dimensional shape of the missing portion of the workpiece W. As a result, when machining control information is generated based on such a differential model DM, the machining apparatus 1 will form a three-dimensional structure ST having a shape that differs from the desired shape. In other words, the machining apparatus 1 cannot form a three-dimensional structure ST having the desired shape. For example, the processing device 1 cannot form a three-dimensional structure ST that can properly fill in the missing portion. In this way, when the workpiece W is deformed as the workpiece W is used, the measurement system 2 (particularly the control information generating device 22) has a technical problem in that it may not be able to generate processing control information for controlling the processing device 1 to form a three-dimensional structure ST having a desired shape.
[0217] Therefore, in the third modified example, in order to solve the above-mentioned technical problem, the model generation unit 2211 deforms the target model TM that does not reflect the deformation of the workpiece W, based on the object model OM that reflects the deformation of the workpiece W. For example, as shown in FIG. 26 , which shows the undeformed target model TM and the deformed target model TM, the model generation unit 2211 may deform the target model TM to match the deformation of the workpiece W. In other words, the model generation unit 2211 may deform the target model TM that does not reflect the deformation of the workpiece W to match the actual shape of the workpiece W indicated by the object model OM (i.e., the deformed shape of the workpiece W). The undeformed target model TM may be distinguished from the deformed target model TM by being called a reference model.
[0218] After the target model TM is deformed, the model generation unit 2211 generates a differential model DM based on the object model OM and the deformed target model TM. Specifically, as shown in FIG. 27 , the model generation unit 2211 may generate a three-dimensional model corresponding to the difference between the deformed target model TM and the object model OM as the differential model DM. As a result, as shown in FIG. 27 , the differential model DM corresponding to the difference between the deformed target model TM and the object model OM is closer to the three-dimensional shape of the three-dimensional structure ST to be formed by the processing apparatus 1 than the three-dimensional shape indicated by the differential model DM corresponding to the difference between the undeformed target model TM and the object model OM (see FIG. 25 ). Thus, in the third modification, the accuracy of the differential model DM is less likely to decrease when the workpiece W is deformed, compared to when the differential model DM is generated using an undeformed target model TM. In other words, the differential model DM is more likely to appropriately indicate the three-dimensional shape of the three-dimensional structure ST to be formed by the processing apparatus 1 so that the three-dimensional shape of the workpiece W matches the target shape. Therefore, the control information generating device 22 can appropriately generate processing control information for controlling the processing device 1 to form a three-dimensional structure ST having a desired shape, even if the workpiece W is deformed as the workpiece W is used. Therefore, even if the workpiece W is deformed as the workpiece W is used, the processing device 1 can form a three-dimensional structure ST having a desired shape.
[0219] The third modified example may be combined with at least one of the first and second modified examples described above. That is, in at least one of the first and second modified examples described above, the model generation unit 2211 may deform the target model TM based on the object model OM, and generate a differential model DM based on the object model OM and the deformed target model TM, as described in the third modified example.
[0220] (4-4) Fourth Modification In a fourth modification, the model generation unit 2211 may deform at least a part of the object model OM, and generate the deformed object model OM as the target model TM. In this case, the model generation unit 2211 can generate the target model TM even when the target model TM cannot be acquired in step S3 of FIG. 8.
[0221] The model generation unit 2211 may deform the object model OM so that at least a portion of the object model OM is elongated, as shown in FIG. 28 showing the deformed object model OM. In other words, the model generation unit 2211 may deform the object model OM so that at least a portion of the object model OM is enlarged. For example, the model generation unit 2211 may deform the object model OM so that a first surface of the object model OM facing a predetermined direction is uniformly moved by a desired distance. As an example, FIG. 28 shows an example in which the model generation unit 2211 deforms the object model OM so that the top surface of the object model OM (e.g., the surface located opposite the bottom surface, which is the reference portion) is uniformly moved by a desired distance. In particular, FIG. 28 shows an example in which the model generation unit 2211 deforms the object model OM so that the top surface of the object model OM is uniformly moved by a desired distance along the normal direction of the top surface. In this case, the model generation unit 2211 may consider the object model OM to be deformed so as to be elongated in the length direction. As another example, the model generation unit 2211 may deform the object model OM so that surfaces other than the top and bottom surfaces of the object model OM (e.g., side surfaces) move uniformly by a desired distance. The model generation unit 2211 may deform the object model OM so that surfaces other than the top and bottom surfaces of the object model OM (e.g., side surfaces) move uniformly by a desired distance along the normal direction of the surfaces. In this case, the model generation unit 2211 may consider the object model OM to be deformed so as to be elongated in the width direction.
[0222] The model generation unit 2211 may deform the object model OM so that at least a portion of the object model OM is shrunk. In other words, the model generation unit 2211 may deform the object model OM so that at least a portion of the object model OM is reduced. For example, the model generation unit 2211 may deform the object model OM so that the object model OM is shrunk in the length direction. For example, the model generation unit 2211 may deform the object model OM so that the object model OM is shrunk in the width direction.
[0223] Furthermore, when the object model OM is deformed so that the first surface of the object model OM moves uniformly by a desired distance, the model generation unit 2211 may deform the object model OM so that a second surface of the object model OM, which is different from the first surface and connected to the first surface, follows the movement of the first surface. In the example shown in Fig. 28, the model generation unit 2211 deforms the object model OM so that the side surface of the object model OM (in particular, the upper end portion of the side surface connected to the top surface) moves upward (typically, extends) following the upward movement of the top surface of the object model OM.
[0224] The model generation unit 2211 may generate the target model TM by deforming the object model OM so that the first surface of the object model OM moves a distance longer than a desired distance, and then removing a part of the object model OM. For example, the model generation unit 2211 may remove a part of the object model OM by performing a Boolean operation (e.g., a Boolean operation for finding the difference) between the deformed object model OM and a model assumed as the shape of the surface of the target model TM.
[0225] Even when the target model TM is generated by deforming the object model OM in this way, the model generation unit 2211 may generate a three-dimensional model corresponding to the difference between the target model TM and the object model OM as a differential model DM, as shown in Fig. 29. In other words, the model generation unit 2211 may generate a three-dimensional model corresponding to the difference between the target model TM generated by deforming the object model OM and the undeformed object model OM as a differential model DM.
[0226] In the fourth modified example, the model generation unit 2211 can easily generate the target model TM by deforming the object model OM as shown in Fig. 28 under the condition that the top surface of the workpiece W (for example, the tip of a turbine blade) is uniformly worn. Therefore, the model generation unit 2211 can generate the differential model DM without acquiring the target model TM.
[0227] On the other hand, if a crack has occurred on the top surface of the workpiece W or if the top surface of the workpiece W is partially worn, simply deforming the object model OM as shown in FIG. 28 may result in the deformed object model OM being unable to be used as a target model TM that accurately represents the target shape of the workpiece W. In this case, the model generation unit 2211 may designate a portion of the top surface of the object model OM as a first surface to be deformed as shown in FIG. 28, and designate another portion of the top surface of the object model OM as a second surface that is not deformed as shown in FIG. 28. As a result, even if a crack has occurred on the top surface of the workpiece W or if the top surface of the workpiece W is partially worn, the model generation unit 2211 can generate a target model TM that accurately represents the target shape of the workpiece W by deforming a portion of the top surface of the object model OM as shown in FIG. 28. Note that if it is not easy to generate a target model TM that accurately represents the target shape of the workpiece W by deforming the object model OM, the model generation unit 2211 may generate the target model TM using the method shown in a third modified example.
[0228] The fourth modification may be combined with at least one of the first to third modifications described above. That is, in at least one of the first to third modifications described above, the model generation unit 2211 may generate the deformed object model OM as the target model TM by deforming at least a part of the object model OM, as described in the fourth modification.
[0229] 30 showing an extraction point display image 51 in the fifth modification, the extraction point display image 51 may include a display image 512 that includes a plurality of operation objects 5121. Each of the plurality of operation objects 5121 is a display object that can be operated by the user to adjust the inter-model distance threshold TH_M that is used to extract a plurality of extraction points Pext from a plurality of points Ptm included in a corresponding one of a plurality of different regions of the target model TM.
[0230] 30 , the display image 512 includes two operation objects 5121 (specifically, operation objects 5121#1 and 5121#2). The operation object 5121#1 is a display object that can be operated by the user to adjust the inter-model distance threshold TH_M used to extract a plurality of extraction points Pext from a plurality of points Ptm included in a first region 514#1 of the target model TM. The operation object 5121#2 is a display object that can be operated by the user to adjust the inter-model distance threshold TH_M used to extract a plurality of extraction points Pext from a plurality of points Ptm included in a second region 514#2 of the target model TM, which is different from the first region 514#1.
[0231] In this case, the model generation unit 2211 may extract multiple extraction points Pext from multiple points Ptm included in the first region 514#1 of the target model TM using the inter-model distance threshold TH_M adjusted by the user using the operation object 5121#1. On the other hand, the model generation unit 2211 does not need to use the inter-model distance threshold TH_M adjusted by the user using the operation object 5121#2 to extract multiple extraction points Pext from multiple points Ptm included in the first region 514#1 of the target model TM. Similarly, the model generation unit 2211 may extract multiple extraction points Pext from multiple points Ptm included in the second region 514#2 of the target model TM using the inter-model distance threshold TH_M adjusted by the user using the operation object 5121#2. On the other hand, the model generation unit 2211 does not need to use the inter-model distance threshold TH_M adjusted by the user using the operation object 5121#1 to extract multiple extraction points Pext from multiple points Ptm included in the second region 514#2 of the target model TM.
[0232] As an example, when the user adjusts the inter-model distance threshold TH_M using the operation object 5121#1 so that the inter-model distance threshold TH_M becomes the first inter-model distance threshold TH_M#51, the model generation unit 2211 may use the first inter-model distance threshold TH_M#51 to extract multiple extraction points Pext from multiple points Ptm included in the first region 514#1 of the target model TM. On the other hand, the model generation unit 2211 does not need to use the first inter-model distance threshold TH_M#51 to extract multiple extraction points Pext from multiple points Ptm included in the second region 514#2 of the target model TM.
[0233] As another example, when the user adjusts the inter-model distance threshold TH_M using the operation object 5121#2 so that the inter-model distance threshold TH_M becomes the second inter-model distance threshold TH_M#52, the model generation unit 2211 may use the second inter-model distance threshold TH_M#52 to extract multiple extraction points Pext from multiple points Ptm included in the second region 514#2 of the target model TM. On the other hand, the model generation unit 2211 does not need to use the second inter-model distance threshold TH_M#52 to extract multiple extraction points Pext from multiple points Ptm included in the first region 514#1 of the target model TM.
[0234] 31 showing a point cloud cluster display image 52 in the fifth modified example, the point cloud cluster display image 52 may further include a display image 522 including a plurality of operation objects 5221. Each of the plurality of operation objects 5221 is a display object that can be operated by the user to adjust a cluster threshold TH_C used to perform clustering of a plurality of extraction points Pext included in a corresponding one of a plurality of different regions of the target model TM.
[0235] 31 , the display image 522 includes two operation objects 5221 (specifically, operation objects 5221#1 and 5221#2). The operation object 5221#1 is a display object that can be operated by the user to adjust a cluster threshold TH_C used to perform clustering on a plurality of extraction points Pext included in a first region 524#1 of the target model TM. The operation object 5221#2 is a display object that can be operated by the user to adjust a cluster threshold TH_C used to perform clustering on a plurality of extraction points Pext included in a second region 524#2 of the target model TM that is different from the first region 524#1.
[0236] In this case, the model generation unit 2211 may perform clustering of the multiple extraction points Pext included in the first region 524#1 of the target model TM using the cluster threshold TH_C adjusted by the user using the operation object 5221#1. On the other hand, the model generation unit 2211 may not use the cluster threshold TH_C adjusted by the user using the operation object 5221#2 to perform clustering of the multiple extraction points Pext included in the first region 524#1 of the target model TM. Similarly, the model generation unit 2211 may perform clustering of the multiple extraction points Pext included in the second region 524#2 of the target model TM using the cluster threshold TH_C adjusted by the user using the operation object 5221#2. On the other hand, the model generation unit 2211 may not use the cluster threshold TH_C adjusted by the user using the operation object 5221#1 to perform clustering of the multiple extraction points Pext included in the second region 524#2 of the target model TM.
[0237] As an example, when the user adjusts the cluster threshold TH_C using the operation object 5221#1 so that the cluster threshold TH_C becomes the first cluster threshold TH_C#51, the model generation unit 2211 may use the first cluster threshold TH_C#51 to perform clustering of the multiple extraction points Pext included in the first region 524#1 of the target model TM. On the other hand, the model generation unit 2211 does not need to use the first cluster threshold TH_C#51 to perform clustering of the multiple extraction points Pext included in the second region 524#2 of the target model TM.
[0238] As another example, when the user adjusts the cluster threshold TH_C using the operation object 5221#2 so that the cluster threshold TH_C becomes the second cluster threshold TH_C#52, the model generation unit 2211 may use the second cluster threshold TH_C#52 to perform clustering of the multiple extraction points Pext included in the second region 524#2 of the target model TM. On the other hand, the model generation unit 2211 does not need to use the second cluster threshold TH_C#52 to perform clustering of the multiple extraction points Pext included in the second region 524#1 of the target model TM.
[0239] The fifth modified example may be combined with at least one of the first to fourth modified examples described above. That is, in at least one of the first to fourth modified examples described above, the extraction point display image 51 may include a display image 512 including a plurality of operation objects 5121, and the point cloud cluster display image 52 may include a display image 522 including a plurality of operation objects 5221, as described in the fifth modified example.
[0240] (4-6) Sixth Modification In the sixth modification, in addition to or instead of controlling the display device 25 to display the extracted point display image 51 and the point cloud cluster display image 52, the model generation unit 2211 may control the display device 25 to display an integrated display image 53 in which the extracted point display image 51 and the point cloud cluster display image 52 are integrated.
[0241] An example of the integrated display image 53 is shown in FIG. 32 . As shown in FIG. 32 , the integrated display image 53 may include a display image 531. The display image 531 is an image for displaying a plurality of extraction points Pext extracted by the model generation unit 2211 and at least one point cloud cluster PGC generated by the model generation unit 2211. The display manner of the plurality of extraction points Pext in the display image 531 of the integrated display image 53 may be the same as or different from the display manner of the plurality of extraction points Pext in the display image 511 of the extraction point display image 51 described above. The display manner of the at least one point cloud cluster PGC in the display image 531 of the integrated display image 53 may be the same as or different from the display manner of the at least one point cloud cluster PGC in the display image 521 of the point cloud cluster display image 52 described above.
[0242] 32 , the integrated display image 53 may further include a display image 532. The display image 532 is an image for displaying a control object 5121 that the user can operate to adjust the inter-model distance threshold TH_M used to extract the extraction point Pext, and a control object 5221 that the user can operate to adjust the cluster threshold TH_C used to generate at least one point cloud cluster PGC. The display manner of the control object 5121 in the display image 532 of the integrated display image 53 may be the same as or different from the display manner of the control object 5121 in the display image 512 of the extraction point display image 51 described above. The display manner of the control object 5221 in the display image 532 of the integrated display image 53 may be the same as or different from the display manner of the control object 5221 in the display image 522 of the point cloud cluster display image 52 described above.
[0243] In the sixth modified example, since the integrated display image 53 is displayed, the user can repeat the adjustment of the inter-model distance threshold TH_M and the adjustment of the cluster threshold TH_C as many times as necessary without switching the image displayed on the display device 25. In this case, it can be considered that the model generation unit 2211 essentially controls the display device 25 to simultaneously display the extraction point display image 51 and the point cloud cluster display image 52.
[0244] The sixth modification may be combined with at least one of the first to fifth modifications described above. That is, in at least one of the first to fifth modifications described above, the model generation unit 2211 may control the display device 25 to display the integrated display image 53, as described in the sixth modification.
[0245] 33, the extraction point display image 51 may include at least one display image 513 in addition to the above-described display images 511 and 512. The display image 513 is an image for displaying a plurality of extraction points Pext that are extracted when the inter-model distance threshold TH_M is set to a predetermined preset value (in other words, a candidate value or a provisional value) that corresponds to the display image 513.
[0246] 33 , the extraction point display image 51 includes two display images 513 (specifically, display image 513#71 and display image 513#72). Display image 513#71 displays multiple extraction points Pext that are extracted when the inter-model distance threshold TH_M is set to a first preset value TH_D#71. Display image 513#72 displays multiple extraction points Pext that are extracted when the inter-model distance threshold TH_M is set to a second preset value TH_D#72 that is different from the first preset value TH_D#71. However, the extraction point display image 51 may include a single display image 513, or may include three or more display images 513.
[0247] The user may adjust the inter-model distance threshold TH_M by selecting one of the multiple display images 513 using the input device 24. In this case, the input device 24 may accept the user's input for selecting the display image 513 as input for adjusting the inter-model distance threshold TH_M. Specifically, when the user selects one of the multiple display images 513 using the input device 24, the model generation unit 2211 may set the inter-model distance threshold TH_M to a preset value corresponding to the display image 513 selected by the user. For example, when the user selects the display image 513#71 shown in FIG. 33 , the model generation unit 2211 may set the inter-model distance threshold TH_M to a first preset value TH_D#71 corresponding to the display image 513#71 selected by the user. For example, if the user selects display image 513#72 shown in Figure 33, the model generation unit 2211 may set the inter-model distance threshold TH_M to the first preset value TH_D#72 corresponding to display image 513#72 selected by the user. In this case, the user can adjust the inter-model distance threshold TH_M while checking display image 513 showing the extraction results of multiple extraction points Pext. This allows the user to intuitively adjust the inter-model distance threshold TH_M.
[0248] The user may adjust the inter-model distance threshold TH_M by selecting the display image 513, and then adjust the inter-model distance threshold TH_M by operating the operation object 5121. In other words, the user may adjust the inter-model distance threshold TH_M by selecting the display image 513 before adjusting the inter-model distance threshold TH_M by operating the operation object 5121. Therefore, the display image 513 may be displayed before the user operates the operation object 5121. In this case, the user may roughly adjust the inter-model distance threshold TH_M by selecting the display image 513, and then fine-tune the inter-model distance threshold TH_M by operating the operation object 5121. As a result, compared to adjusting the inter-model distance threshold TH_M without selecting the display image 513, the user can relatively easily adjust the inter-model distance threshold TH_M so that an appropriate extraction point Pext is extracted.
[0249] When the user adjusts the inter-model distance threshold TH_M by selecting the display image 513, the model generation unit 2211 may extract multiple extraction points Pext using the inter-model distance threshold TH_M adjusted by the user, similar to when the user adjusts the inter-model distance threshold TH_M by operating the operation object 5121 (step S413 in FIG. 14 ). For example, when the user selects the display image 513#71 shown in FIG. 33 , the model generation unit 2211 may extract multiple extraction points Pext by using the first preset value TH_D#71 as the inter-model distance threshold TH_M in step S413 in FIG. 14 . For example, when the user selects the display image 513#72 shown in FIG. 33 , the model generation unit 2211 may extract multiple extraction points Pext by using the second preset value TH_D#72 as the inter-model distance threshold TH_M in step S413 in FIG. 14 . Thereafter, the model generation unit 2211 may update the extraction point display image 51 (step S414 in FIG. 14 ). In particular, the model generation unit 211 may update the display image 511 that displays the multiple extraction points Pext extracted using the inter-model distance threshold TH_M adjusted by the user (step S414 in FIG. 14 ).
[0250] The multiple extraction points Pext displayed in the display image 513 may be extracted using the reduced model M_reduced described in the first modified example. In this case, the processing load required to display the display image 513 (specifically, the processing load required to extract the multiple extraction points Pext using the preset value of the inter-model distance threshold TH_M) does not become excessively high. On the other hand, the multiple extraction points Pext displayed in the display image 511 may be extracted using the original model M_original described in the first modified example.
[0251] The data size of the display image 513 displayed using the reduced model M_reduced may be smaller than the data size of the display image 511 displayed using the original model M_original. Within the extraction point display image 51, the size (e.g., vertical and horizontal sizes) of the display image 513 may be smaller than the size of the display image 511. For this reason, the display image 513 displayed using the reduced model M_reduced may be referred to as a reduced image.
[0252] The seventh modified example may be combined with at least one of the first to sixth modified examples described above. That is, in at least one of the first to sixth modified examples described above, the extraction point display image 51 may include at least one display image 513 in addition to the display images 511 and 512 described above, as described in the seventh modified example.
[0253] 34 , in addition to the above-described display images 521 and 522, the point cloud cluster display image 52 may include at least one display image 523. The display image 523 is an image for displaying at least one point cloud cluster PGC that is generated when the cluster threshold TH_C is set to a predetermined preset value (in other words, a candidate value or a provisional value) that corresponds to the display image 523.
[0254] 34 , the point cloud cluster display image 52 includes two display images 523 (specifically, display image 523#81 and display image 523#82). Display image 523#71 displays at least one point cloud cluster PGC generated when the cluster threshold TH_C is set to a first preset value TH_C#81. Display image 523#72 displays at least one point cloud cluster PGC generated when the cluster threshold TH_C is set to a second preset value TH_C#82 that is different from the first preset value TH_C#81. However, the point cloud cluster display image 52 may include a single display image 523, or may include three or more display images 523.
[0255] The user may adjust the cluster threshold TH_C by selecting one of the multiple display images 523 using the input device 24. In this case, the input device 24 may accept the user's input for selecting the display image 523 as an input for adjusting the cluster threshold TH_C. Specifically, when the user selects one of the multiple display images 523 using the input device 24, the model generation unit 2211 may set the cluster threshold TH_C to a preset value corresponding to the display image 523 selected by the user. For example, when the user selects display image 523#81 shown in FIG. 34, the model generation unit 2211 may set the cluster threshold TH_C to a first preset value TH_C#81 corresponding to display image 523#81 selected by the user. For example, when the user selects display image 523#82 shown in FIG. 34, the model generation unit 2211 may set the cluster threshold TH_C to a first preset value TH_C#82 corresponding to display image 523#82 selected by the user. In this case, the user can adjust the cluster threshold TH_C while checking the display image 523 that shows the generation result of at least one point cloud cluster PGC. This allows the user to intuitively adjust the cluster threshold TH_C.
[0256] The user may adjust the cluster threshold TH_C by selecting the display image 523, and then adjust the cluster threshold TH_C by operating the operation object 5221. That is, the user may adjust the cluster threshold TH_C by selecting the display image 523 before adjusting the cluster threshold TH_C by operating the operation object 5221. Therefore, the display image 523 may be displayed before the user operates the operation object 5221. In this case, the user may roughly adjust the cluster threshold TH_C by selecting the display image 523, and then finely adjust the cluster threshold TH_C by operating the operation object 5221. As a result, the user can relatively easily adjust the cluster threshold TH_C so as to generate an appropriate point cloud cluster PGC, compared to adjusting the cluster threshold TH_C without selecting the display image 523.
[0257] When the user adjusts the cluster threshold TH_C by selecting display image 523, the model generation unit 2211 may generate at least one point cloud cluster PGC using the cluster threshold TH_C adjusted by the user, as in the case where the user adjusts the cluster threshold TH_C by operating operation object 5221 (step S423 in FIG. 14 ). For example, when the user selects display image 523#81 shown in FIG. 34 , the model generation unit 2211 may generate at least one point cloud cluster PGC by using the first preset value TH_C#81 as the cluster threshold TH_C in step S423 in FIG. 14 . For example, when the user selects display image 523#82 shown in FIG. 34 , the model generation unit 2211 may generate at least one point cloud cluster PGC by using the second preset value TH_C#82 as the cluster threshold TH_C in step S423 in FIG. 14 . Thereafter, the model generation unit 2211 may update the point cloud cluster display image 52 (step S424 in FIG. 14 ). In particular, the model generation unit 211 may update the display image 521 that displays at least one point cloud cluster PGC generated using the cluster threshold value TH_C adjusted by the user (step S424 in FIG. 14 ).
[0258] At least one point cloud cluster PGC displayed in the display image 523 may be generated using the reduced model M_reduced described in the first modified example. In this case, the processing load required to display the display image 523 (specifically, the processing load required to generate at least one point cloud cluster PGC using the preset value of the cluster threshold TH_C) does not become excessively high. On the other hand, at least one point cloud cluster PGC displayed in the display image 521 may be extracted using the original model M_original described in the first modified example.
[0259] The data size of the display image 523 displayed using the reduced model M_reduced may be smaller than the data size of the display image 521 displayed using the original model M_original. Within the point cloud cluster display image 52, the size (e.g., vertical and horizontal sizes) of the display image 523 may be smaller than the size of the display image 521. For this reason, the display image 523 displayed using the reduced model M_reduced may be referred to as a reduced image.
[0260] The eighth modified example may be combined with at least one of the first to seventh modified examples described above. That is, in at least one of the first to seventh modified examples described above, the point cloud cluster display image 52 may include at least one display image 523 in addition to the display images 521 and 522 described above, as described in the eighth modified example.
[0261] (4-9) Ninth Modification In the ninth modification, similarly to the sixth modification, an integrated display image 53 may be displayed. However, in the ninth modification, as shown in FIG. 35 , the integrated display image 53 may include at least one display image 533 in addition to the above-described display images 531 and 532. The display image 533 is an image for displaying a plurality of extraction points Pext extracted when the inter-model distance threshold TH_M is set to a predetermined preset value corresponding to the display image 533 and the cluster threshold TH_C is set to a predetermined preset value corresponding to the display image 533. Furthermore, the display image 533 is an image for displaying at least one point cloud cluster PGC generated when the inter-model distance threshold TH_M is set to a predetermined preset value corresponding to the display image 533 and the cluster threshold TH_C is set to a predetermined preset value corresponding to the display image 533.
[0262] 35 , the integrated display image 53 includes four display images 533 (specifically, display image 533#91, display image 533#92, display image 533#93, and display image 533#94). Display image 533#91 displays a plurality of extracted points Pext extracted when the inter-model distance threshold TH_M is set to the first preset value TH_D#91 and the cluster threshold TH_C is set to the first preset value TH_C#91. Furthermore, display image 533#91 displays at least one point cloud cluster PGC generated when the inter-model distance threshold TH_M is set to the first preset value TH_D#91 and the cluster threshold TH_C is set to the first preset value TH_C#91. Display image 533#92 displays multiple extraction points Pext extracted when the inter-model distance threshold TH_M is set to a first preset value TH_D#91 and the cluster threshold TH_C is set to a second preset value TH_C#92 different from the first preset value TH_C#91. Furthermore, display image 533#92 displays at least one point cloud cluster PGC generated when the inter-model distance threshold TH_M is set to the first preset value TH_D#91 and the cluster threshold TH_C is set to the second preset value TH_C#92. Display image 533#93 displays multiple extraction points Pext extracted when the inter-model distance threshold TH_M is set to the second preset value TH_D#92 different from the first preset value TH_D#91 and the cluster threshold TH_C is set to the first preset value TH_C#91. Furthermore, display image 533#93 displays at least one point cloud cluster PGC generated when inter-model distance threshold TH_M is set to the second preset value TH_D#92 and cluster threshold TH_C is set to the first preset value TH_C#91. Display image 533#94 displays multiple extraction points Pext extracted when inter-model distance threshold TH_M is set to the second preset value TH_D#92 and cluster threshold TH_C is set to the second preset value TH_C#92.Furthermore, display image 533#94 displays at least one point cloud cluster PGC generated when the model distance threshold TH_M is set to the second preset value TH_D#92 and the cluster threshold TH_C is set to the second preset value TH_C#92.
[0263] The user may adjust the inter-model distance threshold TH_M and the cluster threshold TH_C by selecting one of the multiple display images 533 using the input device 24. In this case, the input device 24 may accept an input from the user selecting the display image 533 as an input for adjusting the inter-model distance threshold TH_M and the cluster threshold TH_C. Specifically, when the user selects one of the multiple display images 533 using the input device 24, the model generation unit 2211 may set the inter-model distance threshold TH_M to a preset value corresponding to the display image 533 selected by the user, and may also set the cluster threshold TH_C to a preset value corresponding to the display image 533 selected by the user. For example, when the user selects the display image 533#91 shown in Fig. 35, the model generation unit 2211 may set the inter-model distance threshold TH_M to a first preset value TH_D#91 corresponding to the display image 533#91 selected by the user, and may set the cluster threshold TH_C to a first preset value TH_C#91 corresponding to the display image 533#91 selected by the user. For example, when the user selects the display image 533#92 shown in Fig. 35, the model generation unit 2211 may set the inter-model distance threshold TH_M to the first preset value TH_D#91 corresponding to the display image 533#92 selected by the user, and may set the cluster threshold TH_C to a second preset value TH_C#92 corresponding to the display image 533#92 selected by the user. For example, when the user selects the display image 533#93 shown in Fig. 35 , the model generation unit 2211 may set the inter-model distance threshold TH_M to the second preset value TH_D#92 corresponding to the display image 533#93 selected by the user, and may set the cluster threshold TH_C to the first preset value TH_C#91 corresponding to the display image 533#93 selected by the user. For example, when the user selects the display image 533#94 shown in Fig. 35 , the model generation unit 2211 may set the inter-model distance threshold TH_M to the second preset value TH_D#92 corresponding to the display image 533#94 selected by the user, and may set the cluster threshold TH_C to the second preset value TH_C#92 corresponding to the display image 533#94 selected by the user.
[0264] The user may adjust the inter-model distance threshold TH_M and the cluster threshold TH_C by selecting the display image 533, and then adjust the inter-model distance threshold TH_M by operating the operation object 5121 and adjust the cluster threshold TH_C by operating the operation object 5221. In other words, the user may adjust the inter-model distance threshold TH_M and the cluster threshold TH_C by selecting the display image 533 before adjusting the inter-model distance threshold TH_M by operating the operation object 5121 and adjusting the cluster threshold TH_C by operating the operation object 5221. Therefore, the display image 533 may be displayed before the user operates the operation object 5221. In this case, the user may roughly adjust the inter-model distance threshold TH_M and the cluster threshold TH_C by selecting the display image 533, and then fine-tune the inter-model distance threshold TH_M by operating the operation object 5121 and fine-tune the cluster threshold TH_C by operating the operation object 5221. As a result, the user can relatively easily adjust the model distance threshold TH_M and the cluster threshold TH_C so that appropriate extraction points Pext are extracted and appropriate point cloud clusters PGC are generated, compared to when adjusting the model distance threshold TH_M and the cluster threshold TH_C without selecting the display image 533.
[0265] In the ninth modification, as in the seventh modification, when the user adjusts the inter-model distance threshold TH_M by selecting the display image 533, the model generation unit 2211 may extract multiple extraction points Pext using the inter-model distance threshold TH_M adjusted by the user. Similarly, in the ninth modification, as in the seventh modification, when the user adjusts the cluster threshold TH_C by selecting the display image 533, the model generation unit 2211 may generate at least one point cloud cluster PGC using the cluster threshold TH_C adjusted by the user. Thereafter, the model generation unit 2211 may update the integrated display image 53.
[0266] The multiple extraction points Pext displayed in the display image 533 may be extracted using the reduced model M_reduced described in the first modified example. In this case, the processing load required to display the display image 533 (specifically, the processing load required to extract the multiple extraction points Pext using the preset value of the inter-model distance threshold TH_M) does not become excessively high. On the other hand, the multiple extraction points Pext displayed in the display image 531 may be extracted using the original model M_original described in the first modified example.
[0267] Similarly, at least one point cloud cluster PGC displayed in the display image 533 may be generated using the reduced model M_reduced described in the first modified example. In this case, the processing load required to display the display image 533 (specifically, the processing load required to generate at least one point cloud cluster PGC using the preset value of the cluster threshold TH_C) does not become excessively high. On the other hand, at least one point cloud cluster PGC displayed in the display image 531 may be extracted using the original model M_original described in the first modified example.
[0268] The data size of the display image 533 displayed using the reduced model M_reduced may be smaller than the data size of the display image 531 displayed using the original model M_original. Within the integrated display image 53, the size (e.g., vertical and horizontal sizes) of the display image 533 may be smaller than the size of the display image 531. For this reason, the display image 533 displayed using the reduced model M_reduced may be referred to as a reduced image.
[0269] The ninth modified example may be combined with at least one of the above-described first to eighth modified examples. That is, in at least one of the above-described first to eighth modified examples, the integrated display image 53 (or at least one of the extracted point display image 51 and the point cloud cluster display image 52) may include at least one display image 533, as described in the ninth modified example.
[0270] (4-10) Tenth Modification In the tenth modification, as shown in FIG. 36 , when feature quantities of an object model OM and feature quantities of a target model TM are input, the model generation unit 2211 may set at least one of the inter-model distance threshold TH_M and the cluster threshold TH_C using a machine learning model LM that is capable of outputting a recommended value for at least one of the inter-model distance threshold TH_M and the cluster threshold TH_C. An example of the machine learning model is a machine learning model using a neural network. In this case, the model generation unit 2211 may extract multiple extraction points Pext using the recommended value of the inter-model distance threshold TH_M output by the machine learning model LM in step S410 or step S413 of FIG. 14 . The model generation unit 2211 may generate at least one point cloud cluster PGC using the recommended value of the cluster threshold TH_C output by the machine learning model LM in step S420 or step S423 of FIG. 14 .
[0271] When the machine learning model LM outputs a recommended value for at least one of the inter-model distance threshold TH_M and the cluster threshold TH_C, the user does not need to adjust at least one of the inter-model distance threshold TH_M and the cluster threshold TH_C. This reduces the user's effort in adjusting at least one of the inter-model distance threshold TH_M and the cluster threshold TH_C. However, when the machine learning model LM outputs a recommended value for at least one of the inter-model distance threshold TH_M and the cluster threshold TH_C, the user may adjust at least one of the inter-model distance threshold TH_M and the cluster threshold TH_C. For example, the user may adjust at least one of the inter-model distance threshold TH_M and the cluster threshold TH_C based on the recommended value for at least one of the inter-model distance threshold TH_M and the cluster threshold TH_C output by the machine learning model LM.
[0272] 37 , the machine learning model LM may be generated by machine learning using training data including sample data including feature amounts of the object model OM and feature amounts of the target model TM, and correct labels indicating correct values of at least one of the inter-model distance threshold TH_M and the cluster threshold TH_C to be set for the object model OM and the target model TM. In particular, the machine learning model LM may be generated by machine learning using a training data set including a large amount of training data. In this case, machine learning may be performed so that the error between the output of the machine learning model LM when sample data included in the training data (specifically, the feature amounts of the object model OM and the feature amounts of the target model TM) is input and the correct labels included in the training data is small.
[0273] Alternatively, the model generation unit 2211 may generate a recommended value for at least one of the inter-model distance threshold TH_M and the cluster threshold TH_C without using the machine learning model LM. For example, the model generation unit 2211 may generate a recommended value for the cluster threshold TH_C based on the distance conditions described above. For example, the model generation unit 2211 may generate a recommended value for the inter-model distance threshold TH_M based on conditions of the point cloud cluster PGC (e.g., at least one of the size and number of the point cloud cluster PGC). Even in this case, the user does not need to adjust at least one of the inter-model distance threshold TH_M and the cluster threshold TH_C.
[0274] The model generation unit 2211 may automatically output or generate both the inter-model distance threshold TH_M and the cluster threshold TH_C. The model generation unit 2211 may automatically output or generate the inter-model distance threshold TH_M, while a user may manually adjust the cluster threshold TH_C. The model generation unit 2211 may automatically output or generate the cluster threshold TH_C, while a user may manually adjust the inter-model distance threshold TH_M. The operation mode of the model generation unit 2211 may be switchable between an automatic mode in which the extraction points Pext are extracted using the inter-model distance threshold TH_M output or generated by the model generation unit 2211, and a manual mode in which the extraction points Pext are extracted using the inter-model distance threshold TH_M adjusted by the user. The operation mode of the model generation unit 2211 may be switchable between an automatic mode in which the extraction points Pext are clustered using the cluster threshold TH_C output or generated by the model generation unit 2211, and a manual mode in which the extraction points Pext are clustered using the cluster threshold TH_C adjusted by the user.
[0275] (4-11) Eleventh Modification Subsequently, in the above description, the processing device 1 performs additional processing on the workpiece W. On the other hand, in the eleventh modification, the processing device 1 may perform removal processing on the workpiece W in addition to or instead of performing additional processing on the workpiece W. In other words, the processing device 1 may be capable of performing removal processing to remove a portion of the workpiece W. Note that, in addition to or instead of performing removal processing on the workpiece W, the processing device 1 may perform removal processing on a shaped object formed on the workpiece W by the processing device 1.
[0276] Even when the processing device 1 performs removal processing on the workpiece W, the control information generating device 22 may generate processing control information by performing the above-described control information generating operation (see FIG. 8). However, when the processing device 1 performs removal processing on the workpiece W, as shown in FIG. 38, the object model OM indicates the three-dimensional shape of the workpiece W including the portion RP removed by the removal processing, while the target model TM indicates the three-dimensional shape of the workpiece W excluding the portion RP removed. Therefore, in the 11th modified example, the differential model DM corresponding to the difference between the target model TM and the object model OM indicates the three-dimensional shape of the portion removed from the workpiece W by the removal processing.
[0277] Furthermore, in the eleventh modification, in step S410 or step S413 of the differential model generation operation shown in FIG. 14 , the model generation unit 2211 may extract, as a plurality of extracted points Pext, a plurality of points Pom that satisfy a predetermined distance condition from a plurality of points Pom included in the object model OM. The predetermined distance condition may include a condition that a distance D3 between a point Pom on the object model OM and a point Ptm on the target model TM that is closest to the point Pom is equal to or greater than a predetermined inter-model distance threshold TH_M. In this case, even when the processing device 1 performs subtractive processing, the above-described effects that can be obtained when the processing device 1 performs additive processing can be obtained.
[0278] As described above, the processing apparatus 1 capable of performing additive processing may perform additive processing as at least part of a repair process for a workpiece W having a missing portion. In this case, the processing apparatus 1 capable of performing subtractive processing may perform subtractive processing as at least another part of the repair process. For example, the processing apparatus 1 may perform subtractive processing to remove a portion of a shaped object added to the workpiece W. When the processing apparatus 1 performs subtractive processing, the processing apparatus 1 may process the workpiece W using the principle of non-thermal processing (e.g., ablation processing). Alternatively, the processing apparatus 1 capable of melting processing may perform melting processing as at least another part of the repair process. The melting processing may include melting the surface of the workpiece W or the shaped object and solidifying the melted surface. The melting processing may also be referred to as remelting processing. The processing apparatus 1 may perform flattening processing to make the surface of the workpiece W or the shaped object closer to a flat surface compared to before the melting processing.
[0279] Furthermore, even when the processing device 1 performs processing other than additive processing and subtractive processing, the control information generating device 22 may generate processing control information by performing the above-described control information generating operation (see FIG. 8 ). However, in this case, in step S410 or step S413 of the differential model generating operation shown in FIG. 14 , the model generating unit 2211 may extract, as multiple extraction points Pext, multiple points that satisfy a predetermined distance condition from multiple points included in either the object model OM or the target model TM. The predetermined distance condition may include a condition that a distance D4 between a first point on either the object model OM or the target model TM and a second point on the other of the object model OM or the target model TM that is closest to the first point is equal to or greater than a predetermined inter-model distance threshold TH_M. In this case, even when the machining apparatus 1 performs machining other than additive machining and subtractive machining, the above-described effects that can be obtained when the machining apparatus 1 performs at least one of additive machining and subtractive machining can be obtained. Furthermore, the differential model generation operation shown in FIG. 14 may be performed not only when the machining apparatus 1 processes the workpiece W, but also when generating a differential model corresponding to the difference between the first three-dimensional model and the second three-dimensional model. However, in this case, in step S410 or step S413 of FIG. 14 , the model generation unit 2211 may extract, as multiple extraction points Pext, multiple points that satisfy a predetermined distance condition from multiple points included in either the first or second three-dimensional model. The predetermined distance condition may include a condition that the distance D5 between a first point in either the first or second three-dimensional model and a second point in the other of the first or second three-dimensional model that is closest to the first point is equal to or greater than a predetermined inter-model distance threshold TH_M. In this case, the above-described effects can be obtained even when a differential model corresponding to the difference between the first three-dimensional model and the second three-dimensional model is generated. (4-12) Other Modifications In the above description, the processing apparatus 1 melts the modeling material M by irradiating the modeling material M with the processing light EL. However, the processing apparatus 1 may melt the modeling material M by irradiating the modeling material M with any energy beam. Examples of the any energy beam include at least one of a charged particle beam and an electromagnetic wave.Examples of the charged particle beam include at least one of an electron beam and an ion beam.
[0280] In the above description, the processing apparatus 1 performs additive processing using a laser build-up welding method. However, the processing apparatus 1 may also perform additive processing using an additive processing method other than laser build-up welding. For example, the processing apparatus 1 may perform additive processing using a powder bed fusion method. When the processing apparatus 1 performs additive processing using a powder bed fusion method, after the workpiece W measured by the measurement system 2 or a holder holding the workpiece W is placed on the stage 131 of the processing apparatus 1, the processing apparatus 1 fills the periphery of the workpiece W with the building material M so that the top surface of the building material M is positioned on the top surface of the workpiece W, and then performs additive processing on the top surface of the workpiece W.
[0281] (5) Supplementary Note The following supplementary note is further disclosed regarding the above-described embodiment: [Supplementary Note 1] An information processing method for generating a differential model, which is a three-dimensional model indicating a difference between an object model, which is a three-dimensional model indicating a three-dimensional shape of an object, and a target model, which is a three-dimensional model indicating a target shape of the object, and which indicates a portion to be added to the object in order to process the object into the target shape, the information processing method including: accepting a first input that is input by a user; acquiring a plurality of unit areas, each of which is a portion of the target model, and whose distance from the object model is equal to or greater than a first threshold value set in the first input; accepting a second input that is input by the user; acquiring at least one cluster area, where a group of unit areas, among the acquired plurality of unit areas, has a distance between two unit areas equal to or less than a second threshold value set in the second input, is set as one cluster area; and outputting at least one of the cluster areas acquired after accepting the first input and the second input, as the differential model or as information for generating the differential model. [Supplementary Note 2] The information processing method according to Supplementary Note 1, wherein processing control information for controlling a processing device capable of processing the object so as to process the object into the target shape is generated based on the differential model. [Supplementary Note 3] The information processing method according to Supplementary Note 2, wherein the processing device is an additive processing device, and wherein additional processing of the object by the processing device is performed as at least a part of a repair process of the object. [Supplementary Note 4] The information processing method according to any one of Supplements 1 to 3, further comprising: generating the target model by transforming at least a part of a reference model of the object based on the object model. [Supplementary Note 5] The information processing method according to any one of Supplements 1 to 3, wherein the target model is generated by transforming at least a part of the object model. [Supplementary Note 6] The information processing method according to Supplementary Note 5, wherein the transformation of the object model includes enlarging a part of the object model.[Supplementary Note 7] The information processing method according to any one of Supplements 1 to 6, further including: displaying a first display image including the plurality of unit areas and a first operation object operable by the user to adjust the first threshold; and displaying a second display image including the cluster area and a second operation object operable by the user to adjust the second threshold. [Supplementary Note 8] The information processing method according to Supplementary Note 7, further including: updating the plurality of unit areas included in the first display image based on operation of the first operation object; and updating the cluster areas included in the second display image based on operation of the second operation object. [Supplementary Note 9] The information processing method according to any one of Supplements 7 or 8, wherein the number of cluster areas included in the second display image changes as a result of the user adjusting the second threshold. [Supplementary Note 10] The information processing method according to any one of Supplements 7 to 9, wherein the first display image when the first threshold is set to a first candidate value includes a first reduced image including a plurality of unit areas acquired when the first threshold is set to a second candidate value different from the first candidate value. [Supplementary Note 11] The information processing method according to Supplementary Note 10, wherein, after the first display image including the first reduced image is displayed, if the user specifies the first reduced image in the first display image, the specification is used as the first input and the first display image when the first threshold is set to the second candidate value is displayed. [Supplementary Note 12] The information processing method according to any one of Supplements 7 to 11, further comprising displaying a first provisional image including an image including a plurality of unit areas acquired when the first threshold is set to a first provisional value and an image including a plurality of unit areas acquired when the first threshold is set to a second provisional value, wherein, if the user specifies the image based on the first provisional value in the first provisional image, the specification is used as the first input and the first display image when the first threshold is set to the first provisional value is displayed. [Supplementary Note 13] The information processing method according to Supplementary Note 12, wherein the first provisional image is displayed before the first input is performed.[Supplementary Note 14] The information processing method according to any one of Supplementary Notes 7 to 13, wherein the second display image when the second threshold is set to a third candidate value includes a second reduced image including a plurality of unit regions acquired when the second threshold is set to a fourth candidate value different from the third candidate value. [Supplementary Note 15] The information processing method according to Supplementary Note 14, wherein, after the second display image including the second reduced image is displayed, if the second reduced image is specified in the second display image by the user, the specification is used as the second input, and the first display image when the second threshold is set to the fourth candidate value is displayed. [Supplementary Note 16] The information processing method according to any one of Supplements 7 to 15, further comprising displaying a second interim image including an image including a cluster region acquired when the second threshold is set to a third interim value and an image including a cluster region acquired when the second threshold is set to a fourth interim value, and when the image based on the third interim value is designated by the user in the second interim image, the second display image when the second threshold is set to the third interim value is displayed using the designation as the second input. [Supplementary Note 17] The information processing method according to Supplementary Note 16, wherein the second interim image is displayed before the first input is performed. [Supplementary Note 18] The information processing method according to any one of Supplements 7 to 17, wherein the first display image and the second display image are displayed simultaneously. [Supplementary Note 19] The information processing method according to any one of Supplements 1 to 18, further comprising receiving a third input that is an input by the user for specifying at least one of the cluster areas, and outputting the at least one cluster area specified by the third input as the differential model or as information for generating the differential model. [Supplementary Note 20] The information processing method according to any one of Supplements 1 to 19, further comprising acquiring thumbnail images related to the plurality of unit areas before acquiring the plurality of unit areas. [Supplementary Note 21] The information processing method according to any one of Supplements 1 to 20, further comprising acquiring a thumbnail image related to the cluster area before acquiring the cluster area.the object is a first object; the object model is a first object model; the unit area is a first unit area; the cluster area is a first cluster area; and the differential model is a first differential model; the first differential model is determined based on a first definite value of the first threshold and a second definite value of the second threshold; and the information processing method according to any one of Supplements 1 to 21 further includes: acquiring a plurality of second unit areas, each of which is a portion of a target model of a second object, and whose distance from the second object model, which is a three-dimensional model indicating a three-dimensional shape of the second object, is equal to or greater than the first definite value; acquiring at least one second cluster area, where a group of second unit areas, among the acquired plurality of second unit areas, is a group of second unit areas, the distance between any two second unit areas being equal to or less than the second definite value, is set as one second cluster area; and outputting at least one of the at least one second cluster area as a second differential model or as information for generating the second differential model. [Supplementary Note 23] The information processing method described in any one of Supplementary Notes 1 to 22, wherein the first threshold and a third threshold different from the first threshold are set by accepting the first input, and acquiring the plurality of unit areas includes acquiring a plurality of unit areas, from a plurality of unit areas included in a first area of the target model, whose distance from the object model is equal to or greater than the first threshold, and the information processing method further includes acquiring a plurality of unit areas, from a plurality of unit areas included in a second area different from the first area of the target model, whose distance from the object model is equal to or greater than the third threshold.[Supplementary Note 24] The information processing method described in any one of Supplementary Notes 1 to 23, wherein the second threshold and a fourth threshold different from the second threshold are set by receiving the second input, and acquiring the cluster area includes acquiring, from a third area included in the acquired plurality of unit areas, a group of unit areas in which the distance between two of the acquired plurality of unit areas is equal to or less than the second threshold, as a cluster area, and the information processing method further includes acquiring, from a plurality of unit areas included in a fourth area different from the third area, a group of unit areas in which the distance between two of the acquired plurality of unit areas is equal to or less than the fourth threshold, as a cluster area. [Supplementary Note 25] An information processing method for generating a differential model, which is a three-dimensional model indicating a difference between an object model, which is a three-dimensional model indicating a three-dimensional shape of an object, and a target model, which is a three-dimensional model indicating a target shape of the object, the information processing method including: displaying a first display image that displays a plurality of unit areas obtained by subdividing the target model, the plurality of unit areas being at a distance from the object model equal to or greater than a first threshold, and displaying a first operation object that is operable by a user to adjust the first threshold; displaying at least one cluster area, which is a group of unit areas among the plurality of unit areas, where the distance between two unit areas is equal to or less than a second threshold, and displaying a second display image that displays a second operation object that is operable by the user to adjust the second threshold; and outputting at least one of the cluster areas obtained after operations are performed with the first operation object and the second operation object, as the differential model or as information for generating the differential model. [Supplementary Note 26] The information processing method according to Supplementary Note 25, wherein the display of the first display image is updated based on an operation of the first operation object, and the display of the second display image is updated based on an operation of the second operation object.[Supplementary Note 27] An information processing method for generating a differential model, which is a three-dimensional model that indicates a difference between an object model, which is a three-dimensional model that indicates a three-dimensional shape of an object, and a target model, which is a three-dimensional model that indicates a target shape of the object, the information processing method including: accepting a first input that is a user input; acquiring a plurality of unit areas, each of which is a portion of the target model, and whose distance from the object model is equal to or greater than a first threshold value set in the first input; acquiring at least one cluster area, where a group of unit areas, among the acquired plurality of unit areas, has a distance between two unit areas that is equal to or less than a second threshold value; and outputting at least one of the cluster areas acquired based on the second threshold value, as the differential model or as information for generating the differential model. [Supplementary Note 28] An information processing method for generating a differential model, which is a three-dimensional model that indicates a difference between an object model, which is a three-dimensional model that indicates a three-dimensional shape of an object, and a target model, which is a three-dimensional model that indicates a target shape of the object, the information processing method including: acquiring a plurality of unit areas, each of which is a portion of the target model, and whose distance from the object model is equal to or greater than a first threshold value; accepting input that is input by the user; acquiring at least one cluster area, where a group of unit areas, among the acquired plurality of unit areas, has a distance between two unit areas that is equal to or less than a second threshold value set in the input, is set as one cluster area; and outputting at least one of the cluster areas acquired after accepting the input as the differential model or as information for generating the differential model.[Supplementary Note 29] An information processing method for generating a differential model, which is a three-dimensional model indicating a difference between an object model, which is a three-dimensional model indicating a three-dimensional shape of an object, and a target model, which is a three-dimensional model indicating a target shape of the object, and which indicates a portion to be removed from the object in order to process the object into the target shape, the information processing method including: accepting a first input that is an input from a user; acquiring a plurality of unit areas, each of which is a portion of the object model and whose distance from the target model is equal to or greater than a first threshold value set in the first input; accepting a second input that is an input from the user; acquiring at least one cluster area, where one cluster area is a group of unit areas, of the acquired plurality of unit areas, whose distance between two unit areas is equal to or less than a second threshold value set in the second input; and outputting at least one of the cluster areas acquired after accepting the first input and the second input, as the differential model or as information for generating the differential model.[Supplementary Note 30] An information processing method for generating a differential model, which is a three-dimensional model indicating a difference between an object model, which is a three-dimensional model indicating a three-dimensional shape of an object, and a target model, which is a three-dimensional model indicating a target shape of the object, and which indicates a portion to be processed in order to process the object into the target shape, the information processing method including: accepting a first input that is an input from a user; acquiring a plurality of unit areas, each of which is a portion of one of the object model and the target model, and which is a distance from the other of the object model and the target model that is equal to or greater than a first threshold set in the first input; accepting a second input that is an input from the user; [Supplementary Note 31] A processing method for generating processing control information for processing a shape of the object into the target shape by a processing device capable of processing the object, based on a differential model generated using the information processing method according to any one of Supplementary Notes 1 to 30.[Supplementary Note 32] An information processing method for generating a differential model, which is a three-dimensional model indicating a difference between a first model and a second model, the information processing method including: accepting a first input that is an input from a user; acquiring a plurality of unit areas, each of which is a part of one of the first model and the second model, and whose distance from the other of the first model and the second model is equal to or greater than a first threshold value set in the first input; accepting a second input that is an input from the user; acquiring at least one cluster area, where a group of unit areas, of the acquired plurality of unit areas, has a distance between two unit areas that is equal to or less than a second threshold value set in the second input, is set as one cluster area; and outputting at least one of the cluster areas acquired after accepting the first input and the second input, as the differential model or as information for generating the differential model. [Supplementary Note 33] An information processing method for generating a differential model, which is a three-dimensional model indicating a difference between a first model and a second model, the information processing method including: acquiring a plurality of unit areas, each of which is a part of one of the first model and the second model, and whose distance from the other of the first model and the second model is equal to or greater than a first threshold value; acquiring at least one cluster area, where a group of unit areas, among the acquired plurality of unit areas, is a group of unit areas, the distance between which is equal to or less than a second threshold value, is one cluster area; and outputting at least one of the cluster areas acquired based on the second threshold value as the differential model or as information for generating the differential model.[Supplementary Note 34] A display method for displaying a differential model, which is a three-dimensional model showing a difference between an object model, which is a three-dimensional model showing a three-dimensional shape of an object, and a target model, which is a three-dimensional model showing a target shape of the object, the display method including: displaying a plurality of unit areas, each of which is a part of the target model, and whose distance from the object model is equal to or greater than a first threshold set by a first input, which is input by the user; displaying at least one cluster area, which is a group of unit areas, of the acquired plurality of unit areas, where the distance between two unit areas is equal to or less than a second threshold set by a second input, which is input by the user; and displaying at least one of the cluster areas acquired after receiving the first input and the second input, as the differential model. [Supplementary Note 35] A display device for displaying a differential model, which is a three-dimensional model showing the difference between an object model, which is a three-dimensional model showing the three-dimensional shape of an object, and a target model, which is a three-dimensional model showing a target shape of the object, the display device comprising an input device, the display device: displays, as a first display image, a plurality of unit areas, each of which corresponds to a part of the target model, and whose distance from the object model is equal to or greater than a first threshold set by the input device; sets a group of unit areas, of the acquired plurality of unit areas, where the distance between two unit areas is equal to or less than a second threshold set by the input device, as one cluster area, and displays at least one of the cluster areas as a second display image; and displays at least one of the cluster areas acquired based on the second threshold as the differential model.[Supplementary Note 36] The display device according to Supplementary Note 35, wherein the display device displays, together with the plurality of unit areas, a first operation object for which the user can set a first threshold, as the first display image; displays, together with at least one of the cluster areas, a second operation object operable to set the second threshold, as the second display image; and displays, as the differential model, at least one of the cluster areas obtained after the first operation object and the second operation object are operated. [Supplementary Note 37] The display device according to Supplementary Note 35 or 36, wherein the first display image and the second display image are displayed in a switching manner. [Supplementary Note 38] The display device according to Supplementary Note 35 or 36, wherein the first display image and the second display image are displayed simultaneously. [Supplementary Note 39] An information processing device that generates the differential model using the information processing method according to any one of Supplements 1 to 30 and 32 to 33. [Supplementary Note 40] A computer program that causes a computer to execute the information processing method according to any one of Supplements 1 to 30 and 32 to 33. [Supplementary Note 41] A computer program causing a computer to execute the display method according to Supplementary Note 34. [Supplementary Note 42] An information processing method for generating a differential model, which is a three-dimensional model showing a difference between a first model and a second model, comprising: accepting a user input; acquiring a plurality of unit areas, each of which is a part of one of the first model and the second model, and which is distanced from the other of the first model and the second model by a first threshold value or more set in the input; acquiring at least one cluster area, where a group of unit areas, among the acquired plurality of unit areas, is a group of unit areas, the distance between which is equal to or less than a second threshold value, is one cluster area; and outputting at least one of the cluster areas acquired after accepting the input as the differential model or as information for generating the differential model.[Supplementary Note 43] An information processing method for generating a differential model, which is a three-dimensional model showing a difference between a first model and a second model, the information processing method including: accepting a user input; acquiring a plurality of unit areas, each of which is a part of one of the first model and the second model, and whose distance from the other of the first model and the second model is equal to or greater than a first threshold; acquiring at least one cluster area, where a group of unit areas, of the acquired plurality of unit areas, has a distance between two unit areas equal to or less than a second threshold set in the input, is set as one cluster area; and outputting at least one of the cluster areas acquired after accepting the input as the differential model or as information for generating the differential model. [Supplementary Note 44] An information processing method for generating a differential model, which is a three-dimensional model that indicates a difference between an object model, which is a three-dimensional model that indicates a three-dimensional shape of an object, and a target model, which is a three-dimensional model that indicates a target shape of the object, comprising: acquiring a plurality of unit areas, each of which is a portion of the target model, and whose distance from the object model is equal to or greater than a first threshold value; acquiring at least one cluster area, where a group of unit areas, among the acquired plurality of unit areas, is such that the distance between any two unit areas is equal to or less than a second threshold value; and outputting at least one of the cluster areas acquired based on the second threshold value, as the differential model or as information for generating the differential model.
[0282] At least some of the constituent elements of each of the above-described embodiments can be appropriately combined with at least some of the other constituent elements of each of the above-described embodiments. Some of the constituent elements of each of the above-described embodiments may not be used. Furthermore, to the extent permitted by law, the disclosures of all publications and U.S. patents cited in each of the above-described embodiments are incorporated herein by reference.
[0283] The present invention is not limited to the above-described embodiments, but can be modified as appropriate within the scope of the claims and the gist or idea of the invention as can be read from the entire specification, and information processing methods, processing methods, display methods, display devices, information processing devices, and computer programs that involve such modifications are also included in the technical scope of the present invention.
[0284] SYS Machining system 1 Machining device 2 Measurement system 22 Control information generating device 2211 Model generating unit 2212 Control information generating unit 24 Input device 25 Display device 51 Extracted point display image 52 Point cloud cloud display image W Work EL Processing light OM Object model TM Target model DM Difference model Ptm, Pom Points Pext Extracted points PGC Point cloud cluster TH_D Inter-model distance threshold TH_C Cluster threshold
Claims
1. An information processing method for generating a difference model, which is a three-dimensional model showing the difference between an object model that is a three-dimensional model showing the three-dimensional shape of an object and a target model that is a three-dimensional model showing the target shape of the object, and showing a portion to be added to the object to process the object into the target shape, the information processing method comprising: receiving a first input that is an input by a user; obtaining a plurality of unit regions, each corresponding to a part of the target model and having a distance from the object model greater than or equal to a first threshold set by the first input; receiving a second input that is an input by the user; obtaining at least one cluster region by treating a group of unit regions, among the obtained plurality of unit regions, having a distance between two unit regions less than or equal to a second threshold set by the second input as one cluster region; outputting at least one of the cluster regions obtained after receiving the first input and receiving the second input as the difference model or as information for generating the difference model. An information processing method comprising the above.
2. Processing control information for controlling a processing device capable of processing the object so that the shape of the object is made into the target shape is generated based on the difference model. The information processing method according to Claim 1.
3. The processing device is an additional processing device, and the additional processing of the object by the processing device is performed as at least a part of a repair process of the object. The information processing method according to Claim 2.
4. The method further includes generating the target model by deforming at least a part of a reference model of the object based on the object model. The information processing method according to any one of Claims 1 to 3.
5. The target model is generated by deforming at least a part of the object model. The information processing method according to any one of Claims 1 to 3.
6. The deformation of the object model includes an enlargement of a part of the object model. The information processing method according to Claim 5.
7. displaying a first display image including the plurality of unit regions and a first operation object operable by the user to adjust the first threshold; further including displaying a second display image including the cluster region and a second operation object operable by the user to adjust the second threshold. The information processing method according to any one of claims 1 to 3.
8. Updating a plurality of unit areas included in the first display image based on the operation of the first operation object; Updating a cluster area included in the second display image based on the operation of the second operation object The information processing method according to claim 7, further comprising:
9. By adjusting the second threshold value by the user, the number of the cluster areas included in the second display image changes The information processing method according to claim 7.
10. The first display image when the first threshold value is set to the first candidate value includes a first reduced image including a plurality of unit areas obtained when the first threshold value is set to a second candidate value different from the first candidate value The information processing method according to claim 7.
11. After the first display image including the first reduced image is displayed, when the first reduced image is designated in the first display image by the user, using the designation as the first input, display the first display image when the first threshold value is set to the second candidate value The information processing method according to claim 10.
12. Further including displaying a first provisional image including an image including a plurality of unit areas obtained when the first threshold value is set to a first provisional value and an image including a plurality of unit areas obtained when the first threshold value is set to a second provisional value, When the image based on the first provisional value in the first provisional image is designated by the user, using the designation as the first input, display the first display image when the first threshold value is set to the first provisional value The information processing method according to claim 7.
13. The first provisional image is displayed before the first input is made. The information processing method according to claim 12.
14. The second display image when the second threshold value is set to a third candidate value includes a second reduced image including a plurality of unit areas obtained when the second threshold value is set to a fourth candidate value different from the third candidate value The information processing method according to claim 7.
15. After the second display image including the second reduced image is displayed, when the second reduced image is designated in the second display image by the user, using the designation as the second input, display the first display image when the second threshold value is set to the fourth candidate value The information processing method according to claim 14.
16. Further including displaying a second provisional image including an image including a cluster region obtained when the second threshold value is set to a third provisional value and an image including a cluster region obtained when the second threshold value is set to a fourth provisional value, When the image based on the third provisional value in the second provisional image is specified by the user, using the specification as the second input and displaying the second display image when the second threshold value is set to the third provisional value The information processing method according to claim 7.
17. The second provisional image is displayed before the first input is performed. The information processing method according to claim 16.
18. The first display image and the second display image are displayed simultaneously. The information processing method according to claim 7.
19. Further including receiving a third input which is an input of the user for designating at least one of the cluster regions, At least one cluster region designated by the third input is output as the difference model or as information for generating the difference model. The information processing method according to any one of claims 1 to 3.
20. Further including obtaining a thumbnail image related to the plurality of unit regions before obtaining the plurality of unit regions. The information processing method according to any one of claims 1 to 3.
21. Further including obtaining a thumbnail image related to the cluster region before obtaining the cluster region. The information processing method according to any one of claims 1 to 3.
22. The object is a first object, The object model is a first object model, The unit region is a first unit region, The cluster region is a first cluster region, The difference model is a first difference model, Based on the first determined value of the first threshold value and the second determined value of the second threshold value, the first difference model is determined. The information processing method is Obtaining a plurality of second unit regions each corresponding to a part of a target model of a second object and having a distance from a second object model which is a three-dimensional model showing the three-dimensional shape of the second object of not less than the first determined value, Regarding a group of second unit regions in which the distance between two second unit regions among the obtained plurality of second unit regions is not more than the second determined value, obtaining at least one second cluster region as one second cluster region, Output at least one of the at least one of the second cluster regions as a second difference model or as information for generating the second difference model The information processing method according to any one of claims 1 to 3, further comprising this
23. By receiving the first input, a first threshold value and a third threshold value different from the first threshold value are set The obtaining of the plurality of unit regions includes obtaining a plurality of unit regions from among the plurality of unit regions included in the first region of the target model, where the distance from the object model is equal to or greater than the first threshold value The information processing method further includes obtaining a plurality of unit regions from among the plurality of unit regions included in a second region different from the first region of the target model, where the distance from the object model is equal to or greater than the third threshold value The information processing method according to any one of claims 1 to 3
24. By receiving the second input, a second threshold value and a fourth threshold value different from the second threshold value are set The obtaining of the cluster region includes obtaining, as a cluster region, a group of unit regions from among the plurality of obtained unit regions, where the distance between two unit regions among the plurality of obtained unit regions is equal to or less than the second threshold value, from a third region included in the plurality of obtained unit regions The information processing method further includes obtaining, as a cluster region, a group of unit regions from among the plurality of obtained unit regions, where the distance between two unit regions among the plurality of obtained unit regions is equal to or less than the fourth threshold value, from a fourth region different from the third region, among the plurality of unit regions included in the fourth region The information processing method according to any one of claims 1 to 3
25. An information processing method for generating a difference model, which is a three-dimensional model showing the difference between an object model, which is a three-dimensional model showing the three-dimensional shape of an object, and a target model, which is a three-dimensional model showing the target shape of the object Displaying a plurality of unit regions obtained by subdividing the target model and where the distance from the object model is equal to or greater than a first threshold value, and displaying a first display image that displays a first operation object operable by a user to adjust the first threshold value Among the plurality of unit regions, a group of unit regions where the distance between two unit regions is equal to or less than a second threshold value is defined as one cluster region, and at least one cluster region is displayed, and a second display image for displaying a second operation object operable by the user to adjust the second threshold value is displayed. Outputting at least one of the cluster regions obtained after the operations of the first operation object and the second operation object as the difference model or as information for generating the difference model. Information processing method.
26. The display of the first display image is updated based on the operation of the first operation object. The display of the second display image is updated based on the operation of the second operation object. The information processing method according to claim 25.
27. An information processing method for generating a difference model, which is a three-dimensional model showing the difference between an object model, which is a three-dimensional model showing the three-dimensional shape of an object, and a target model, which is a three-dimensional model showing the target shape of the object. Receiving a first input, which is an input from the user. Obtaining a plurality of unit regions, each of which corresponds to a part of the target model and the distance from the object model is equal to or greater than a first threshold value set by the first input. Regarding a group of unit regions where the distance between two unit regions among the obtained plurality of unit regions is equal to or less than a second threshold value as one cluster region, and obtaining at least one cluster region. Outputting at least one of the cluster regions obtained based on the second threshold value as the difference model or as information for generating the difference model. An information processing method including the above.
28. An information processing method for generating a difference model, which is a three-dimensional model showing the difference between an object model, which is a three-dimensional model showing the three-dimensional shape of an object, and a target model, which is a three-dimensional model showing the target shape of the object. Obtaining a plurality of unit regions, each of which corresponds to a part of the target model and the distance from the object model is equal to or greater than a first threshold value. Receiving an input, which is an input from the user. Among the plurality of acquired unit regions, taking a group of unit regions where the distance between two unit regions is equal to or less than a second threshold value set in the input as one cluster region, and acquiring at least one of the cluster regions; Outputting at least one of the cluster regions acquired after receiving the input as the difference model or as information for generating the difference model; An information processing method including the above.
29. An information processing method for generating a three-dimensional model showing the difference between an object model, which is a three-dimensional model showing the three-dimensional shape of an object, and a target model, which is a three-dimensional model showing the target shape of the object, and showing the part removed from the object to process the object into the target shape, the difference model being a three-dimensional model, The information processing method includes: Receiving a first input, which is an input from a user; Acquiring a plurality of unit regions, each corresponding to a part of the object model and where the distance from the target model is equal to or greater than a first threshold value set in the first input; Receiving a second input, which is an input from the user; Among the plurality of acquired unit regions, taking a group of unit regions where the distance between two unit regions is equal to or less than a second threshold value set in the second input as one cluster region, and acquiring at least one of the cluster regions; Outputting at least one of the cluster regions acquired after receiving the first input and the second input as the difference model or as information for generating the difference model; An information processing method including the above.
30. An information processing method for generating a three-dimensional model showing the difference between an object model, which is a three-dimensional model showing the three-dimensional shape of an object, and a target model, which is a three-dimensional model showing the target shape of the object, and showing the part to be processed to process the object into the target shape, the difference model being a three-dimensional model, The information processing method includes: Receiving a first input, which is an input from a user; Acquiring a plurality of unit regions, each corresponding to a part of one of the object model and the target model, and where the distance from the other of the object model and the target model is equal to or greater than a first threshold value set in the first input; Receiving a second input, which is an input from the user; Regarding a plurality of acquired unit regions, taking a group of unit regions where the distance between two unit regions is equal to or less than a second threshold set by the second input as one cluster region, and acquiring at least one cluster region; After accepting the first input and accepting the second input, outputting at least one of the acquired cluster regions as the difference model or as information for generating the difference model; An information processing method including the above.
31. Based on a difference model generated using the information processing method according to any one of Claims 1 to 3, generating machining control information for machining the shape of the object into the target shape with a machining apparatus capable of machining the object. A machining method.
32. An information processing method for generating a difference model, which is a three-dimensional model showing the difference between a first model and a second model, the information processing method comprising: The information processing method includes: Accepting a first input that is an input from a user; Acquiring a plurality of unit regions each corresponding to a part of one of the first model and the second model, and where the distance from the other of the first model and the second model is equal to or greater than a first threshold set by the first input; Accepting a second input that is an input from the user; Regarding a plurality of acquired unit regions, taking a group of unit regions where the distance between two unit regions is equal to or less than a second threshold set by the second input as one cluster region, and acquiring at least one cluster region; After accepting the first input and accepting the second input, outputting at least one of the acquired cluster regions as the difference model or as information for generating the difference model; An information processing method including the above.
33. An information processing method for generating a difference model, which is a three-dimensional model showing the difference between a first model and a second model, the information processing method comprising: The information processing method includes: Acquiring a plurality of unit regions each corresponding to a part of one of the first model and the second model, and where the distance from the other of the first model and the second model is equal to or greater than a first threshold; Regarding a plurality of acquired unit regions, taking a group of unit regions where the distance between two unit regions is equal to or less than a second threshold as one cluster region, and acquiring at least one cluster region; Outputting at least one of the cluster regions obtained based on the second threshold as the difference model or as information for generating the difference model Information processing method
34. A display method for displaying a difference model, which is a three-dimensional model showing the difference between an object model, which is a three-dimensional model showing the three-dimensional shape of an object, and a target model, which is a three-dimensional model showing the target shape of the object, The display method includes displaying a plurality of unit regions, each corresponding to a part of the target model and having a distance from the object model greater than or equal to a first threshold set by a first input, which is an input of the user displaying at least one cluster region, which is a group of unit regions where the distance between two of the obtained plurality of unit regions is less than or equal to a second threshold set by a second input, which is an input of the user, as one cluster region displaying at least one of the cluster regions obtained after receiving the first input and receiving the second input as the difference model Display method
35. A display device for displaying a difference model, which is a three-dimensional model showing the difference between an object model, which is a three-dimensional model showing the three-dimensional shape of an object, and a target model, which is a three-dimensional model showing the target shape of the object, The display device includes an input device The display device displays a plurality of unit regions, each corresponding to a part of the target model and having a distance from the object model greater than or equal to a first threshold set by the input device, as a first display image displays at least one cluster region, which is a group of unit regions where the distance between two of the obtained plurality of unit regions is less than or equal to a second threshold set by the input device, as a second display image displays at least one of the cluster regions obtained based on the second threshold as the difference model Display device
36. The display device displays a first operation object, by which the user can set the first threshold, as the first display image together with the plurality of unit regions displays a second operation object, which is operable to set the second threshold, as the second display image together with at least one of the cluster regions Display at least one of the cluster regions obtained after the operations on the first operation object and the second operation object as the difference model The display device according to claim 35
37. The first display image and the second display image are alternately displayed The display device according to claim 35 or 36
38. The first display image and the second display image are simultaneously displayed The display device according to claim 35 or 36
39. An information processing apparatus that generates the difference model using the information processing method according to any one of claims 1 to 3
40. A computer program that causes a computer to execute the information processing method according to any one of claims 1 to 3
41. A computer program that causes a computer to execute the display method according to claim 34