DATA PROCESSING APPARATUS, DATA PROCESSING METHOD, DATA PROCESSING PROGRAM, AND DATA PROCESSING SYSTEM
The data processing device automates the identification and separation of valid three-dimensional data from obstacles in dental scanning, enhancing efficiency and accuracy by selecting the dataset with the largest data amount, addressing the challenge of interference in dental scanning.
Patent Information
- Application Number
- JP2021196015
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2021-12-02
- Publication Date
- 2024-12-24
- Estimated Expiration
- 2041-12-02
AI Technical Summary
Existing three-dimensional scanning technologies in dentistry face challenges in accurately acquiring data due to obstacles like fingers or tongues interfering with the scanning process, requiring manual selection and correction of data, which is time-consuming.
A data processing device and method that automatically identifies and separates true data sets from false data sets by determining the dataset with the largest amount of data, excluding data corresponding to obstacles, using a three-dimensional scanner to scan oral cavities.
Enables efficient and accurate acquisition of three-dimensional data by automating the selection of valid data, reducing user effort and time in data correction.
Smart Images

Figure 0007605727000001 
Figure 0007605727000002 
Figure 0007605727000003
Abstract
Description
[Technical field]
[0001] The present disclosure relates to a data processing device, a data processing method, a data processing program, and a data processing system for processing three-dimensional data including the positions of each of a point cloud indicating at least the surface of an object acquired by a three-dimensional scanner. [Background technology]
[0002] Conventionally, in the field of dentistry, a technology is known in which three-dimensional data of an object such as teeth is acquired by scanning the oral cavity with a three-dimensional scanner. During scanning with a three-dimensional scanner, an obstacle such as the operator's finger or dental instrument, or the patient's tongue, may get between the object to be scanned, such as teeth, and the three-dimensional scanner, and the three-dimensional scanner may not be able to properly acquire three-dimensional data of the object to be scanned. In this regard, Patent Document 1 discloses an information processing device that enables three-dimensional data selected by a user to be deleted from the three-dimensional data acquired by the three-dimensional scanner. [Prior art documents] [Patent documents]
[0003] [Patent Document 1] JP 2021-111254 A Summary of the Invention [Problem to be solved by the invention]
[0004] According to the information processing device disclosed in Patent Document 1, a user can correct the three-dimensional data acquired by the three-dimensional scanner even if an obstacle enters the oral cavity during scanning. However, in order to correct the three-dimensional data, the user must select the three-dimensional data to be deleted from the three-dimensional data acquired by the three-dimensional scanner, which is time-consuming.
[0005] The present disclosure has been made to solve such problems, and aims to provide a technique that can easily and appropriately acquire three-dimensional data of an object using a three-dimensional scanner. [Means for solving the problem]
[0006] According to one embodiment of the present disclosure, at least one Intraoral There is provided a data processing device for processing three-dimensional data including the positions of each of a point cloud representing a surface of an object. The data processing device includes an input unit to which three-dimensional data acquired by a three-dimensional scanner is input, a first data processing for generating a data set using a plurality of three-dimensional data located within a predetermined range among the plurality of three-dimensional data input from the input unit, and when the plurality of data sets are generated by the first data processing, Determining an amount of data in each of a plurality of data sets; Among multiple data sets, the data set with the largest amount of data or the data set with a certain amount of data or more is selected. Corresponding to the dentition to be scanned The real data set and The other datasets are treated as fake datasets corresponding to obstacles that are not the target of the scan. and a data processing unit that executes a second data process.
[0007] According to one embodiment of the present disclosure, at least one Intraoral A data processing method is provided in which a computer processes three-dimensional data including the positions of each of a group of points representing a surface of an object. The data processing method includes a step of inputting three-dimensional data acquired by a three-dimensional scanner, a first data processing step of generating a data set using a plurality of three-dimensional data located within a predetermined range among the plurality of three-dimensional data inputted in the inputting step, and a second data processing step of generating a data set using the plurality of three-dimensional data located within a predetermined range among the plurality of three-dimensional data inputted in the first data processing step. Determining an amount of data in each of a plurality of data sets; Among multiple data sets, the data set with the largest amount of data or the data set with a certain amount of data or more is selected. Corresponding to the dentition to be scanned The real data set and The other datasets are treated as fake datasets corresponding to obstacles that are not the target of the scan. and performing a second data process to
[0008] According to one embodiment of the present disclosure, at least one Intraoral A data processing program for processing three-dimensional data including the positions of each of a point cloud representing a surface of an object is provided. The data processing program includes a step of inputting three-dimensional data acquired by a three-dimensional scanner to a computer, a first data processing step of generating a data set using a plurality of three-dimensional data located within a predetermined range among the plurality of three-dimensional data inputted in the input step, and a second data processing step of generating a data set when the plurality of data sets are generated by the first data processing. Determining an amount of data in each of a plurality of data sets; Among multiple data sets, the data set with the largest amount of data or the data set with a certain amount of data or more is selected. Corresponding to the dentition to be scanned The real data set and The other datasets are treated as fake datasets corresponding to obstacles that are not the target of the scan. and performing a second data processing step.
[0009] According to one example of the present disclosure, a data processing system is provided. The data processing system includes a three-dimensional scanner that acquires three-dimensional data including the positions of each of a point cloud indicating at least a surface of an object by scanning an object in an oral cavity, and a data processing device that processes the three-dimensional data acquired by the three-dimensional scanner. The data processing device includes an input unit to which the three-dimensional data acquired by the three-dimensional scanner is input, a first data processing that generates a data set using a plurality of three-dimensional data located within a predetermined range among the plurality of three-dimensional data input from the input unit, and when the plurality of data sets are generated by the first data processing, Determining an amount of data in each of a plurality of data sets; Among multiple data sets, the data set with the largest amount of data or the data set with a certain amount of data or more is selected. Corresponding to the dentition to be scanned The real data set and The other datasets are treated as fake datasets corresponding to obstacles that are not the target of the scan. and a data processing unit that executes a second data process. Effect of the Invention
[0010] According to the present disclosure, a user can easily and appropriately acquire three-dimensional data of an object using a three-dimensional scanner. [Brief description of the drawings]
[0011] [Figure 1]1 is a diagram illustrating an application example of a data processing system and a data processing device according to an embodiment of the present invention. [Diagram 2] 1 is a block diagram showing a hardware configuration of a data processing device according to an embodiment of the present invention; [Diagram 3] 1 is a diagram showing a configuration of a three-dimensional scanner according to an embodiment of the present invention; [Figure 4] FIG. 2 is a diagram for explaining a scanning method using a three-dimensional scanner. [Diagram 5] FIG. 1 is a diagram showing an example of scanning by a three-dimensional scanner. [Figure 6] 1 is a block diagram showing a functional configuration of a data processing device according to an embodiment of the present invention; [Figure 7] 3A to 3C are diagrams illustrating an example of a mesh generation process, a data set determination process, and an image data generation process of the data processing device according to the present embodiment. [Figure 8] FIG. 13 illustrates an example of a dataset table. [Figure 9] FIG. 11 is a diagram showing an example of a data determination process of the data processing device according to the present embodiment. [Figure 10] FIG. 11 is a diagram showing an example of a data determination process of the data processing device according to the present embodiment. [Figure 11] FIG. 11 is a diagram showing an example of a data determination process of the data processing device according to the present embodiment. [Figure 12] FIG. 13 is a diagram illustrating an example of a three-dimensional data table. [Figure 13] 4 is a flowchart illustrating an example of a process executed by the data processing device according to the present embodiment. [Figure 14] 13A and 13B are diagrams illustrating an example of a data determination process of a data processing device according to a modified example. [Figure 15] 13A and 13B are diagrams illustrating an example of a data determination process of a data processing device according to a modified example. [Figure 16] 13A and 13B are diagrams illustrating an example of a data determination process of a data processing device according to a modified example. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0012] The embodiments of the present disclosure will be described in detail with reference to the drawings. In the drawings, the same or corresponding parts are designated by the same reference numerals and the description thereof will not be repeated.
[0013] [Example of application] An application example of a data processing system 10 and a data processing device 1 according to the present embodiment will be described with reference to Fig. 1. Fig. 1 is a diagram showing an application example of a data processing system 10 and a data processing device 1 according to the present embodiment.
[0014] As shown in FIG. 1, a user can obtain three-dimensional data of an object in the oral cavity by scanning the oral cavity of a subject using a three-dimensional scanner 2. The "user" may be anyone who obtains three-dimensional data of an object such as teeth using the three-dimensional scanner 2, such as a dentist or other practitioner, a dental assistant, a professor or student at a dental university, a dental technician, a manufacturer's engineer, or a worker at a manufacturing plant. The "subject" may be anyone who can be a subject of scanning with the three-dimensional scanner 2, such as a patient at a dental clinic or a subject at a dental university. The "object" may be anything that can be a subject of scanning with the three-dimensional scanner 2, such as teeth in the oral cavity of a subject. In the following, the object to be scanned is also referred to as a "scan object."
[0015] The data processing system 10 includes a data processing device 1 and a three-dimensional scanner 2. A display 3, a keyboard 4, and a mouse 5 are connected to the data processing device 1.
[0016] The three-dimensional scanner 2 acquires three-dimensional data of the scanned object using a built-in three-dimensional camera. Specifically, the three-dimensional scanner 2 scans the inside of the oral cavity and acquires the positions (coordinates of each axis in the vertical, horizontal, and height directions) of the point cloud indicating the surface of the scanned object as three-dimensional data using an optical sensor or the like. In other words, the three-dimensional data includes position information (coordinates of each axis in the vertical, horizontal, and height directions) of the positions of the multiple points constituting the surface of the scanned object.
[0017] Because the measurement range that the three-dimensional scanner 2 can measure at one time is limited, if a user wishes to obtain three-dimensional data of the entire dentition in the oral cavity (dental arch), the user scans the oral cavity multiple times by moving the three-dimensional scanner 2 inside the oral cavity along the dentition.
[0018] The data processing device 1 generates two-dimensional image data corresponding to a two-dimensional image viewed from any viewpoint based on the three-dimensional data acquired by the three-dimensional scanner 2, and displays the two-dimensional image corresponding to the generated two-dimensional image data on the display 3, thereby enabling the user to see a two-dimensional projection drawing of the surface of the scanned object as viewed from a particular direction.
[0019] Furthermore, the data processing device 1 outputs the three-dimensional data to a dental laboratory. In the dental laboratory, a dental technician creates a tooth model such as a prosthesis based on the three-dimensional data acquired from the data processing device 1. If an automatic manufacturing device capable of automatically manufacturing tooth models, such as a milling machine and a 3D printer, is installed in the dental clinic, the data processing device 1 may output the three-dimensional data to the automatic manufacturing device.
[0020] [Hardware configuration of data processing device] The hardware configuration of the data processing device 1 according to the present embodiment will be described with reference to Fig. 2. Fig. 2 is a block diagram showing the hardware configuration of the data processing device 1 according to the present embodiment. The data processing device 1 may be realized, for example, by a general-purpose computer, or may be realized by a computer dedicated to the data processing system 10.
[0021] As shown in FIG. 2, the data processing device 1 includes, as its main hardware elements, an arithmetic unit 11, a storage unit 12, a scanner interface 13, a communication unit 14, a display interface 15, a peripheral device interface 16, and a media reading unit 17.
[0022] The arithmetic device 11 is an arithmetic entity that executes various processes by executing various programs, and is an example of a computer. The arithmetic device 11 is composed of, for example, a CPU (Central Processing Unit), an FPGA (Field-Programmable Gate Array), and a GPU (Graphics Processing Unit). The arithmetic device 11 may be composed of at least one of the CPU, FPGA, and GPU, or may be composed of a CPU and an FPGA, an FPGA and a GPU, a CPU and a GPU, or all of the CPU, the FPGA, and the GPU. The arithmetic device 11 may also be composed of a processing circuitry.
[0023] The storage device 12 includes a volatile storage area (e.g., a working area) that temporarily stores program code, work memory, and the like when the arithmetic device 11 executes an arbitrary program. For example, the storage device 12 is configured with a volatile memory device such as a DRAM (Dynamic Random Access Memory) or an SRAM (Static Random Access Memory). Furthermore, the storage device 12 includes a non-volatile storage area. For example, the storage device 12 is configured with a non-volatile memory device such as a ROM (Read Only Memory), a hard disk, or an SSD (Solid State Drive).
[0024] In the present embodiment, an example has been shown in which the volatile storage area and the nonvolatile storage area are included in the same storage device 12, but the volatile storage area and the nonvolatile storage area may be included in different storage devices. For example, the arithmetic device 11 may include a volatile storage area, and the storage device 12 may include a nonvolatile storage area. The data processing device 1 may include a microcomputer including the arithmetic device 11 and the storage device 12.
[0025] The storage device 12 stores three-dimensional data 121 acquired by the three-dimensional scanner 2 and a data processing program 122. The data processing program 122 is a program for executing data processing of the three-dimensional data acquired by the arithmetic device 11 from the three-dimensional scanner 2 (processing in FIG. 13 described later).
[0026] The scanner interface 13 is an interface for connecting the three-dimensional scanner 2, and realizes input and output of data between the data processing device 1 and the three-dimensional scanner 2. The data processing device 1 and the three-dimensional scanner 2 are connected via a wired connection using a cable, or wirelessly (WiFi, BlueTooth (registered trademark), etc.).
[0027] The communication device 14 transmits and receives data to and from the dental laboratory or the automated manufacturing device via wired or wireless communication. For example, the data processing device 1 transmits three-dimensional data to the dental laboratory or the automated manufacturing device via the communication device 14.
[0028] The display interface 15 is an interface for connecting the display 3 and realizes input and output of data between the data processing device 1 and the display 3 .
[0029] The peripheral device interface 16 is an interface for connecting peripheral devices such as the keyboard 4 and mouse 5, and realizes input and output of data between the data processing device 1 and the peripheral devices.
[0030] The media reading device 17 reads various data stored in a removable disk 20, which is a storage medium. For example, the media reading device 17 may obtain a data processing program 122 from the removable disk 20.
[0031] [3D scanner configuration] The configuration of the three-dimensional scanner 2 according to this embodiment will be described with reference to Fig. 3. Fig. 3 is a diagram showing the configuration of the three-dimensional scanner 2 according to this embodiment.
[0032] As shown in FIG. 3, the three-dimensional scanner 2 is a hand-held handpiece, and includes a housing 21, a probe 22 detachably connected to the housing 21, and a control device 40.
[0033] The probe 22 is inserted into the oral cavity and projects light having a pattern (hereinafter, also simply referred to as a “pattern”) onto a scan object. The probe 22 guides the reflected light from the scan object onto which the pattern is projected, into the inside of the housing 21.
[0034] The three-dimensional scanner 2 includes a light source 23, a lens 24, an optical sensor 25, a prism 26, and a counterweight 27 inside the housing 21. For ease of explanation, in Fig. 3, the direction in which the lens 24 and the counterweight 27 reciprocate linearly is indicated as the X-axis, the axis perpendicular to the X-axis and pointing upward on the paper surface in Fig. 3 is indicated as the Z-axis, and the axis perpendicular to both the X-axis and the Z-axis is indicated as the Y-axis.
[0035] The light source 23 includes a laser element or an LED (Light Emitting Diode). Light (optical axis L) from the light source 23 passes through the prism 26 and the lens 24, is reflected by a reflecting section 28 provided on the probe 22, and is output from an opening 29. The light output from the opening 29 is irradiated onto the object to be scanned and is reflected by the object to be scanned. The light reflected by the object to be scanned enters the inside of the housing 21 again via the opening 29 and the reflecting section 28, passes through the lens 24, and is input to the prism 26. The prism 26 changes the traveling direction of the light from the object to the direction in which the optical sensor 25 is located (in this example, the Z-axis direction). The light whose traveling direction has been changed by the prism 26 is detected by the optical sensor 25.
[0036] When acquiring three-dimensional data of an object using focusing technology, light that passes through a pattern generating element (not shown) provided between the lens 24 and the object is projected onto the object. When the lens 24 moves back and forth linearly on the same straight line (e.g., the X-axis), the focal position of the projected pattern changes. The optical sensor 25 detects the light from the scanned object with each change.
[0037] The control device 40 is composed of, for example, a CPU, a ROM, and a RAM, and controls the processing performed by the three-dimensional scanner 2. The control device 40 may be composed of an FPGA or a GPU. The control device 40 may be composed of at least one of a CPU, an FPGA, and a GPU, or may be composed of a CPU and an FPGA, an FPGA and a GPU, a CPU and a GPU, or all of a CPU, an FPGA, and a GPU. The control device 40 may be composed of a processing circuitry.
[0038] The control device 40 calculates the position of each point group indicating the surface of the scanned object based on the position of the lens 24 and the detection result of the optical sensor 25 at that time. The three-dimensional data of the object acquired by the three-dimensional scanner 2 in this manner is input to the data processing device 1 via the scanner interface 13. Note that the data processing device 1 may have some or all of the functions of the control device 40. For example, the arithmetic device 11 of the data processing device 1 may have the functions of the control device 40.
[0039] [Example of scanning using a 3D scanner] An example of scanning by the three-dimensional scanner 2 will be described with reference to Figures 4 and 5. Figure 4 is a diagram for explaining a scanning method by the three-dimensional scanner 2.
[0040] The scanning range of the three-dimensional scanner 2 is limited by the size of the probe 22 that can be inserted into the oral cavity. For this reason, the user scans the oral cavity multiple times by inserting the probe 22 into the oral cavity and moving the probe 22 along the dentition within the oral cavity.
[0041] For example, as shown in FIG. 4, the user moves the probe 22 in the oral cavity to sequentially change the scanning range from R1, R2, R3, ... Rn, and obtain three-dimensional data at various positions in the oral cavity. In this way, the user scans the object to be scanned while moving the probe 22, and the three-dimensional scanner 2 can obtain three-dimensional data of the object to be scanned. Note that in the scanning ranges R1 to Rn in FIG. 4, the user scans from the direction of the occlusal surface of the molar or the incisor of the front tooth, but scanning may also be performed from the direction of the lingual surface or buccal surface. This allows the user to more reliably obtain three-dimensional data of each tooth using the three-dimensional scanner 2.
[0042] 5 is a diagram showing an example of scanning by the three-dimensional scanner 2. During scanning by the three-dimensional scanner 2, an obstacle such as the operator's finger or dental instrument, or the patient's tongue, may get between the object to be scanned and the probe 22, and the three-dimensional scanner 2 may not be able to properly obtain three-dimensional data of the object to be scanned.
[0043] For example, in the example shown in Fig. 5(A), during a certain Nth scan, the operator's (e.g., the user's) finger enters the scan range R of the three-dimensional scanner 2. In such a case, as shown in Fig. 5(B), the user removes the obstacle such as the finger, and then scans the scan object again at the same location in the subsequent N+1th scan.
[0044] In the above example, the user must treat the three-dimensional data acquired by the N+1th scan as true data, while processing the three-dimensional data acquired by the Nth scan as false data. Therefore, the data processing device 1 according to the present embodiment is configured to generate a data set by classifying a plurality of three-dimensional data located within a predetermined range among a plurality of three-dimensional data input from the three-dimensional scanner 2, and further to output the data set with the largest amount of data among the plurality of data sets as the true data set. The data set determination process and image data generation process of the data processing device 1 will be specifically described below.
[0045] [Functional configuration of data processing device] The functional configuration of the data processing device 1 according to the present embodiment will be described with reference to Fig. 6. Fig. 6 is a block diagram showing the functional configuration of the data processing device 1 according to the present embodiment.
[0046] As shown in FIG. 6, the data processing device 1 includes, as main functional units, an input unit 1101, a data processing unit 1102, a storage unit 1103, and an output unit 1104.
[0047] The input unit 1101 is a functional part of the scanner interface 13, and receives the three-dimensional data acquired by the three-dimensional scanner 2.
[0048] The input unit 1101 may be a functional unit of the communication device 14, the peripheral device interface 16, or the media reading device 17. For example, when the input unit 1101 is a functional unit of the communication device 14, the communication device 14 acquires three-dimensional data from an external device through wired communication or wireless communication. The external device may be a server device installed in a dental clinic, or a cloud-type server device installed in a location other than the dental clinic. When the input unit 1101 is a functional unit of the peripheral device interface 16, the peripheral device interface 16 acquires three-dimensional data input by a user using the keyboard 4 and the mouse 5. When the input unit 1101 is a functional unit of the media reading device 17, the media reading device 17 acquires three-dimensional data stored in the removable disk 20.
[0049] The data processing unit 1102 is a functional unit of the arithmetic device 11. The data processing unit 1102 executes a mesh generation process to generate a bundle of three-dimensional data (hereinafter also referred to as a "dataset") using the three-dimensional data 121 input from the input unit 1101 and accumulated and stored in the storage unit 1103. The data processing unit 1102 executes a data determination process to determine the authenticity of the dataset. When multiple datasets are generated by three-dimensional data set as true three-dimensional data, the data processing unit 1102 executes a dataset determination process to determine the dataset with the largest amount of data among the multiple datasets as the true dataset. Furthermore, the data processing unit 1102 executes an image data generation process to generate two-dimensional image data corresponding to a two-dimensional image viewed from an arbitrary viewpoint based on the true dataset. The data processing unit 1102 outputs the generated two-dimensional image data to the output unit 1104.
[0050] The output unit 1104 is a functional part of the display interface 15, and outputs the two-dimensional image data generated by the data processing unit 1102 to the display 3. This enables the data processing device 1 to display a two-dimensional image imitating the surface shape of the scanned object on the display 3.
[0051] The output unit 1104 may be a functional unit of the communication device 14 or the media reading device 17. For example, when the output unit 1104 is a functional unit of the communication device 14, the communication device 14 outputs the three-dimensional data to a dental laboratory or an automated manufacturing device via wired or wireless communication. When the output unit 1104 is a functional unit of the media reading device 17, the media reading device 17 outputs the three-dimensional data to the removable disk 20.
[0052] [Mesh generation process, data set determination process, and image data generation process] The mesh generation process, the data set determination process, and the image data generation process of the data processing device 1 according to this embodiment will be described with reference to Fig. 7. Fig. 7 is a diagram showing an example of the mesh generation process, the data set determination process, and the image data generation process of the data processing device 1 according to this embodiment.
[0053] The data processing unit 1102 of the data processing device 1 generates a dataset by executing a mesh generation process, determines the authenticity of the dataset by executing a dataset determination process, and generates two-dimensional image data corresponding to a two-dimensional image viewed from an arbitrary viewpoint generated based on the three-dimensional data by executing an image data generation process.
[0054] Specifically, the data processing device 1 generates at least one data set by linking together a plurality of pieces of three-dimensional data that exist within a predetermined range, among the three-dimensional data acquired by the three-dimensional scanner 2.
[0055] For example, as shown in Fig. 7(A), the data processing device 1 generates one mesh by connecting three or more pieces of three-dimensional data that exist within a predetermined range with straight lines. Note that in this example, the data processing device 1 generates one triangular mesh by connecting three pieces of three-dimensional data with straight lines, but it may also generate one quadrangular mesh by connecting four pieces of three-dimensional data with straight lines, or it may generate one mesh by connecting five or more pieces of three-dimensional data with straight lines.
[0056] The data processing device 1 generates a plurality of meshes as described above, and generates a data set by connecting the meshes. That is, each of a plurality of three-dimensional data included in one data set forms a mesh by being linked to at least one other three-dimensional data present within a predetermined range. The more the number of linked three-dimensional data is, the larger the amount of three-dimensional data included in the data set (for example, the number of three-dimensional data).
[0057] The data processing device 1 executes a data determination process on a plurality of three-dimensional data included in the generated data set, thereby determining the authenticity of each piece of three-dimensional data.
[0058] Next, the data processing device 1 performs a data set determination process to determine that the data set with the largest amount of data among the multiple data sets is the true data set.
[0059] For example, when the data processing device 1 generates dataset 1 using multiple three-dimensional data showing the surface of a tooth portion as shown in FIG. 7(A) and generates dataset 2 using multiple three-dimensional data showing the surface of an obstacle such as a finger, among the multiple datasets 1 and 2, dataset 1 having the largest amount of data is determined to be the true dataset as shown in FIG. 7(B).
[0060] Next, the data processing device 1 generates, through image data generation processing, two-dimensional image data corresponding to a two-dimensional image seen from an arbitrary viewpoint, based on the true data set having the largest amount of data.
[0061] As described above, a data set is composed of a plurality of three-dimensional data existing within a predetermined range, so that three-dimensional data existing outside the predetermined range is not included in the data set. Since the surfaces of teeth are continuous in the oral cavity, it can be said that the data set with the largest amount of data is likely to include a plurality of three-dimensional data showing the surfaces of teeth. In addition, during scanning, the surgeon may pull the patient's lips to the outside of the oral cavity with his / her finger, and in that case, the surgeon's finger may be scanned by the three-dimensional scanner 2. Since the surgeon's finger is placed outside the oral cavity, it is likely that the three-dimensional data of each point constituting the finger does not exist within the predetermined range of the three-dimensional data of each point constituting the tooth. Therefore, the data processing device 1 can distinguish the three-dimensional data of each point constituting the tooth from the three-dimensional data of each point constituting the finger.
[0062] In this way, when the data processing device 1 generates the data set 1 and the data set 2 using a plurality of three-dimensional data acquired by the three-dimensional scanner 2, the data processing device 1 generates two-dimensional image data corresponding to a two-dimensional image seen from an arbitrary viewpoint based on the data set 1 having the largest amount of data among the plurality of data sets 1 and 2, so that the data set 1 generated based on the plurality of three-dimensional data showing the surface of the tooth part can be output. In other words, the data processing device 1 can exclude the data set 2 generated based on the plurality of three-dimensional data showing the surface of the obstacle from the output target. This eliminates the need for the user to select the plurality of three-dimensional data showing the surface of the tooth part from the three-dimensional data acquired by the three-dimensional scanner 2, and allows the user to easily and appropriately acquire the three-dimensional data of the scanned object using the three-dimensional scanner 2.
[0063] [Dataset Table] The dataset table will be described with reference to Fig. 8. Fig. 8 is a diagram showing an example of the dataset table. The data processing device 1 stores a dataset generated based on three-dimensional data input from the input unit 1101 in a table format as shown in Fig. 8.
[0064] 8, in the dataset table, a dataset type is assigned to each generated dataset. The dataset table also stores the number of meshes that make up each dataset.
[0065] When the data processing device 1 generates a data set by executing a mesh generation process, it assigns a data set type and stores the number of meshes in a data set table. By storing the number of meshes in the data set table for each generated data set, the data processing device 1 can classify multiple input three-dimensional data by data set.
[0066] Furthermore, the data processing device 1 can select the dataset with the largest amount of data (number of meshes) (in this example, dataset 1) by referring to the dataset table, and generate two-dimensional image data corresponding to a two-dimensional image viewed from any viewpoint based on the selected dataset.
[0067] [Data Judgment Processing] The data determination process of the data processing device 1 according to the present embodiment will be described with reference to Fig. 9 to Fig. 11. Fig. 9 to Fig. 11 are diagrams showing an example of the data determination process of the data processing device 1 according to the present embodiment.
[0068] The data processing unit 1102 of the data processing device 1 executes a data determination process to compare the first three-dimensional data input from the input unit 1101 with the second three-dimensional data input from the input unit 1101 in a virtual space 50 based on the position of the three-dimensional scanner 2, thereby determining the authenticity of the first three-dimensional data and the second three-dimensional data.
[0069] For example, as shown in FIG. 9, the three-dimensional scanner 2 acquires a plurality of three-dimensional data including the respective positions of a plurality of points indicating the surface of the scanned object by performing an N-th scan.
[0070] When a plurality of three-dimensional data are sequentially input from the three-dimensional scanner 2, the data processing device 1 generates a virtual space 50 based on the positions of each point included in the input three-dimensional data and the position of the three-dimensional scanner 2.
[0071] The virtual space 50 will be specifically described with reference to FIG. 10. As shown in FIG. 10, the light (optical axis L) from the light source 23 that has passed through the housing 21 is reflected by the reflecting portion 28 and outputted in a diffused manner from the opening 29. A certain amount of light diffused and outputted from the opening 29 is reflected by the object to be scanned and enters the inside of the housing 21 again through the opening 29, thereby acquiring three-dimensional data. The range in which the multiple lights diffused and outputted from the opening 29 spread is the scan range. The data processing device 1 sets a predetermined data processing range within the scan range, and generates the virtual space 50 based on the optical axis L of the light included in the data processing range among the certain amount of light diffused and outputted from the opening 29.
[0072] Specifically, the data processing device 1 generates a virtual space 50 having a cylindrical shape with the optical axis L of the three-dimensional scanner 2 as its central axis. More specifically, the data processing device 1 generates a cylindrical virtual space 50 having a cross section with a diameter of a predetermined length and with the optical axis L output from the opening 29, i.e., the optical axis L passing through the position of the three-dimensional scanner 2 and the position of the point detected by the three-dimensional scanner 2 (hereinafter also referred to as the "detection position"). Furthermore, when multiple optical axes L are included in the data processing range, the data processing device 1 generates multiple cylindrical virtual spaces 50 with each of the multiple optical axes L as its central axis.
[0073] Here, in the example of Fig. 10, the "position of the three-dimensional scanner" (hereinafter also referred to as the "scanner position") is set to any position on the path along which the optical axis L from the light source 23 passes through the housing 21, is reflected by the reflecting portion 28, and is output through the opening 29. Note that the scanner position only needs to be a position at which the data processing device 1 can recognize the distance between it and the detection position, and may be set to any position within the three-dimensional scanner 2.
[0074] Returning to Fig. 9, as shown in Fig. 9(A), when a certain detection position A is detected by the Nth scan, the data processing device 1 generates a cylindrical virtual space 50 with the optical axis L passing through the detection position A as the central axis as shown in Fig. 9(B). When the data processing device 1 generates the virtual space 50 for the three-dimensional data acquired by the Nth scan (three-dimensional data including position information of the detection position A), it determines whether or not three-dimensional data acquired by a scan prior to the Nth scan (for example, the N-1th scan in the past) exists within the virtual space 50. Here, N is a natural number.
[0075] When determining whether or not previously acquired three-dimensional data exists within the virtual space 50, the data processing device 1 determines whether or not previously acquired three-dimensional data exists in the direction of the optical axis L from a point corresponding to the detection position A that was the basis for generating the virtual space 50 toward the scanner position.
[0076] 9(B), the three-dimensional data acquired by the Nth scan (N-1th scan) does not exist in the virtual space 50 for the three-dimensional data acquired by the Nth scan. Therefore, the data processing device 1 regards the three-dimensional data of the detection position A as true three-dimensional data.
[0077] Next, the three-dimensional scanner 2 again acquires a plurality of three-dimensional data including the respective positions of a plurality of points indicating the surface of the scanned object by scanning after the Nth time (for example, the N+1th time).
[0078] When a plurality of three-dimensional data are sequentially input from the three-dimensional scanner 2, the data processing device 1 generates a virtual space 50 based on the positions (detected positions) included in the input three-dimensional data.
[0079] For example, as shown in Fig. 9(C), when the data processing device 1 detects the position B of a certain point by the N+1th scan, it generates a cylindrical virtual space 50 with the optical axis L passing through the detected position B as the central axis as shown in Fig. 9(D). When the data processing device 1 generates the virtual space 50 for the three-dimensional data acquired by the N+1th scan (three-dimensional data including position information of the detected position B), it determines whether or not three-dimensional data acquired by a scan prior to the N+1th scan (for example, the Nth scan in the past) exists within the virtual space 50.
[0080] The data processing device 1 determines whether or not there is three-dimensional data previously acquired in the direction of the optical axis L extending from a point corresponding to the detection position B, which is the generation reference for the virtual space 50, toward the scanner position.
[0081] Furthermore, when determining whether or not three-dimensional data acquired by a scan (Nth) prior to the N+1th scan is present in the virtual space 50, the data processing device 1 aligns the origin (reference point) of the coordinates of the N+1th three-dimensional data with the origin (reference point) of the coordinates of the Nth three-dimensional data. For example, the data processing device 1 converts the coordinates of the N+1th three-dimensional data so as to align them with the coordinate system of the Nth three-dimensional data. This enables the data processing device 1 to compare the Nth three-dimensional data with the N+1th three-dimensional data.
[0082] The data processing device 1 may use the scanner position when the Nth three-dimensional data is acquired as the above-mentioned origin (reference point). That is, the data processing device 1 may match the coordinates of the scanner position when the N+1th three-dimensional data is acquired with the coordinates of the scanner position when the Nth three-dimensional data is acquired, and compare the Nth three-dimensional data with the N+1th three-dimensional data in a coordinate system with the scanner position as the origin.
[0083] 9(D), the three-dimensional data acquired by the Nth scan exists in the virtual space 50 for the three-dimensional data acquired by the N+1th scan. Therefore, the data processing device 1 determines the authenticity of the Nth three-dimensional data and the N+1th three-dimensional data by comparing the Nth three-dimensional data with the N+1th three-dimensional data.
[0084] Specifically, the data processing device 1 of this embodiment considers the Nth three-dimensional data and the N+1th three-dimensional data, the N+1th three-dimensional data that is input later, to be the true three-dimensional data.
[0085] For example, as shown in Figures 11(A) to (C), the data processing device 1 inputs multiple pieces of three-dimensional data a to c for a specific area in the oral cavity by the Nth scan by the three-dimensional scanner 2, and then, as shown in Figures 11(D) to (F), multiple pieces of three-dimensional data d to f for the same specific area in the oral cavity are again input by the N+1th scan by the three-dimensional scanner 2.
[0086] As shown in FIG. 11(D), when three-dimensional data d is input by the N+1th scan, the data processing device 1 generates a virtual space 50 for the three-dimensional data d, and determines whether or not three-dimensional data input by a scan prior to the N+1th scan (for example, the Nth scan in the past) exists in the virtual space 50. When three-dimensional data a input by the Nth scan in the past exists in the virtual space 50 for the three-dimensional data d input by the N+1th scan, the data processing device 1 compares the input timing of the Nth three-dimensional data a and the N+1th three-dimensional data d, and determines the N+1th three-dimensional data d input later as the true three-dimensional data. That is, the data processing device 1 determines the currently input three-dimensional data d as the true three-dimensional data.
[0087] As shown in FIG. 11E, when three-dimensional data e is input by the N+1th scan, the data processing device 1 generates a virtual space 50 for the three-dimensional data e, and determines whether or not three-dimensional data input by a scan prior to the N+1th scan (for example, the Nth scan in the past) exists in the virtual space 50. When three-dimensional data b input by the Nth scan in the past exists in the virtual space 50 for the three-dimensional data e input by the N+1th scan, the data processing device 1 compares the input timing of the Nth three-dimensional data b and the N+1th three-dimensional data e, and determines the N+1th three-dimensional data e input later as the true three-dimensional data. That is, the data processing device 1 determines the currently input three-dimensional data e as the true three-dimensional data.
[0088] As shown in FIG. 11(F), when three-dimensional data f is input by the N+1th scan, the data processing device 1 generates a virtual space 50 for the three-dimensional data f, and judges whether or not three-dimensional data input by a scan before the N+1th (for example, the Nth in the past) exists in the virtual space 50. When three-dimensional data c input by the Nth scan in the past exists in the virtual space 50 for the three-dimensional data f input by the N+1th scan, the data processing device 1 compares the input timing of the Nth three-dimensional data c and the N+1th three-dimensional data f, and determines the N+1th three-dimensional data f input later as the true three-dimensional data. That is, the data processing device 1 determines the three-dimensional data f input this time as the true three-dimensional data. In other words, when a plurality of three-dimensional data exists in the virtual space, the data processing device 1 determines the three-dimensional data f that has been scanned and input most recently as the true data.
[0089] In this way, the calculation device 11 (data processing unit 1102) of the data processing device 1 compares the input timing of the Nth three-dimensional data input from the input unit 1101 and the N+1th three-dimensional data input from the input unit 1101 in the virtual space 50 based on the scanner position, and regards the N+1th three-dimensional data input later from the input unit 1101 as the true three-dimensional data. Note that in the above example, when the Nth three-dimensional data is applied to the "first three-dimensional data", the N+1th three-dimensional data is applied to the "second three-dimensional data", and when the Nth three-dimensional data is applied to the "second three-dimensional data", the N+1th three-dimensional data is applied to the "first three-dimensional data".
[0090] By executing the data determination process as described above, the data processing device 1 sets only the three-dimensional data d-f subsequently input from the input unit 1101 as true three-dimensional data, as shown in Fig. 11(G), and then generates two-dimensional image data corresponding to a two-dimensional image viewed from an arbitrary viewpoint based only on the true three-dimensional data d-f. Alternatively, the data processing device 1 stores the true three-dimensional data d-f.
[0091] In this way, for example, as shown in FIG. 5(A), even if an obstacle such as a finger enters the scan range R of the three-dimensional scanner 2 during the Nth scan, if the user then removes the obstacle and scans the same location of the object again by the N+1th scan, the data processing device 1 can set only the N+1th three-dimensional data input later as the true three-dimensional data. This eliminates the need for the user to select the true three-dimensional data from the three-dimensional data acquired by the three-dimensional scanner 2, and allows the user to easily and appropriately acquire the three-dimensional data of the object to be scanned using the three-dimensional scanner 2. In other words, when an obstacle is displayed on the display 3 together with the scanned object, the user can confirm that the true three-dimensional data has been overwritten and saved by removing the obstacle and then rescanning the object at the same position to display the object without the obstacle.
[0092] In addition, when the data processing device 1 regards the three-dimensional data inputted later among the multiple three-dimensional data as the true three-dimensional data, for example, if the finger does not enter the oral cavity in the Nth scan but enters the oral cavity in the N+1th scan, there is a possibility that the three-dimensional data of the surface of the finger may be erroneously set as the true three-dimensional data. However, since the user usually scans the oral cavity while looking at the two-dimensional image displayed on the display 3 (the two-dimensional image seen from an arbitrary viewpoint generated based on the three-dimensional data), when the user recognizes that the two-dimensional image of the finger seen from the arbitrary viewpoint has been generated, if the user removes the finger and scans the teeth again at the same position, the data processing device 1 can set only the three-dimensional data inputted later as the true three-dimensional data.
[0093] [3D data table] The three-dimensional data table will be described with reference to Fig. 12. Fig. 12 is a diagram showing an example of a three-dimensional data table. When storing the three-dimensional data input from the input unit 1101 as three-dimensional data 121, the data processing device 1 stores the three-dimensional data in a table format as shown in Fig. 12.
[0094] 12, in the three-dimensional data table, a data type is assigned to each of the three-dimensional data of each point indicating the surface of the scanned object input from the input unit 1101. The three-dimensional data table stores position information and color information included in the three-dimensional data of each point indicating the surface of the scanned object input from the input unit 1101. The position information includes the position of each point (coordinates of each axis in the vertical, horizontal, and height directions). The color information includes the color of each point (for example, RGB value).
[0095] The three-dimensional data table further assigns a deletion flag to each of the three-dimensional data of each point indicating the surface of the scanned object input from the input unit 1101. The deletion flag includes information for specifying whether or not the data is used when generating two-dimensional image data (data corresponding to a two-dimensional image viewed from an arbitrary viewpoint generated based on the three-dimensional data). For example, the data processing device 1 does not set a deletion flag for three-dimensional data used when generating the two-dimensional image data (storing a bit of "0"), and sets a deletion flag for three-dimensional data not used when generating the two-dimensional image data (storing a bit of "1"). That is, the data processing device 1 does not set a deletion flag for three-dimensional data determined to be true data by the data determination process, and sets a deletion flag as a false indicator for three-dimensional data determined to be false data by the data determination process. The above-mentioned data set determination process is further performed on the three-dimensional data determined to be true three-dimensional data in this way.
[0096] [Processing flow of data processing device 1] With reference to FIG. 13, a processing flow executed by the data processing device 1 according to this embodiment will be described. FIG. 13 is a flowchart for explaining an example of processing executed by the data processing device 1 according to this embodiment. Each step (hereinafter, indicated by "S") shown in FIG. 13 is realized by the arithmetic device 11 of the data processing device 1 executing the data processing program 122. In addition, after the scanning by the three-dimensional scanner 2 is started, the data processing device 1 repeatedly executes the processing of the flowchart shown in FIG. 13 at a predetermined period (for example, several msec). Note that, when the power supply of the data processing device 1 or the three-dimensional scanner 2 is turned off, or when the scanning by the three-dimensional scanner 2 is stopped, the data processing device 1 ends the processing of the flowchart shown in FIG. 13.
[0097] As shown in FIG. 13, the data processing device 1 acquires three-dimensional data of a certain point scanned by the three-dimensional scanner 2 (S1).
[0098] The data processing device 1 generates a data set by generating at least one mesh using the three-dimensional data acquired by the three-dimensional scanner 2 (S2). The data processing device 1 executes a data determination process to determine the authenticity of the three-dimensional data acquired by the three-dimensional scanner 2 (S3).
[0099] In the data determination process of S3, the data processing device 1 generates a virtual space 50 based on the position (detection position) at which each point included in the three-dimensional data input in S1 is detected and the scanner position, as described with reference to Figs. 9 to 11. Then, the data processing device 1 determines whether or not three-dimensional data acquired by a scan prior to the acquisition of the three-dimensional data that is the subject of the authenticity determination exists in the virtual space 50. When three-dimensional data acquired by a scan prior to the acquisition of the three-dimensional data that is the subject of the authenticity determination exists in the virtual space 50, the data processing device 1 determines the three-dimensional data that is the subject of the authenticity determination as true three-dimensional data. The data processing device 1 sets a deletion flag in the three-dimensional data table for other three-dimensional data that is not determined as true three-dimensional data.
[0100] Next, the data processing device 1 determines whether a predetermined condition is satisfied (S4). The predetermined condition includes that the amount of three-dimensional data input from the input unit 1101 exceeds a first predetermined amount (for example, 100 pieces of data). The predetermined condition may include that the time taken for the three-dimensional data to be input from the input unit 1101 exceeds a predetermined time. For example, the predetermined condition may be satisfied when the elapsed time from the start of the process of the flowchart in FIG. 13 exceeds a predetermined time. Alternatively, in the process of the flowchart in FIG. 13 that is repeatedly executed, the predetermined condition may be satisfied when the elapsed time from the determination of YES in S4 in the previous process exceeds a predetermined time.
[0101] 13 is started, the predetermined condition may be satisfied when the elapsed time exceeds a predetermined time and the amount of three-dimensional data input from the input unit 1101 exceeds a second predetermined amount (for example, the average amount of data acquired according to the acquisition time). Alternatively, the predetermined condition may be satisfied when the elapsed time from the determination of YES in S4 in the previous process exceeds a predetermined time and the amount of three-dimensional data input from the input unit 1101 exceeds a second predetermined amount (for example, the average amount of data acquired according to the acquisition time). This is because, when the second predetermined amount is set to the average amount of data acquired according to the acquisition time, if the amount of three-dimensional data input from the input unit 1101 exceeds the second predetermined amount, there is a possibility that three-dimensional data indicating the surface of an obstacle such as a finger has been acquired.
[0102] Thus, the specified condition includes at least one of the following: the amount of three-dimensional data input from input unit 1101 exceeds a specified amount; and the time taken for the three-dimensional data to be input from input unit 1101 exceeds a specified time.
[0103] When a predetermined condition is met (YES in S4), the data processing device 1 executes a dataset determination process to determine, among the multiple datasets, the dataset with the largest amount of data as the true dataset (S5).
[0104] When the predetermined condition is not satisfied (NO in S4) or after S5, the data processing device 1 executes an image data generation process to generate two-dimensional image data corresponding to a two-dimensional image viewed from an arbitrary viewpoint based on the true data set (S6). The two-dimensional image data generated in S6 is output to an external device such as the display 3 via the output unit 1104.
[0105] As described above, the data processing device 1 according to the present embodiment executes a data determination process to compare the three-dimensional data acquired this time in S1 with the three-dimensional data acquired previously in S1 in the virtual space 50 based on the scanner position, and to determine whether the three-dimensional data acquired this time in S1 and the three-dimensional data acquired previously in S1 are genuine or false. This eliminates the need for the user to select the true three-dimensional data from the three-dimensional data acquired by the three-dimensional scanner 2, and allows the user to easily and appropriately acquire three-dimensional data of the scanned object using the three-dimensional scanner 2.
[0106] Moreover, the data processing device 1 according to the present embodiment executes a mesh generation process to generate a data set using a plurality of three-dimensional data located within a predetermined range among the plurality of three-dimensional data acquired in S1 this time and in the past. The data processing device 1 also executes a data set determination process to determine the data set with the largest amount of data among the plurality of data sets as the true data set. Furthermore, the data processing device 1 generates image data based on the true data set. This eliminates the need for the user to select a plurality of three-dimensional data showing the surface of the tooth portion from the three-dimensional data acquired by the three-dimensional scanner 2, and allows the user to easily and appropriately acquire three-dimensional data of the scanned object using the three-dimensional scanner 2.
[0107] A user such as a dentist acquires three-dimensional data of an object (such as a dental arch) in the oral cavity using a three-dimensional scanner 2, and stores the acquired three-dimensional data in the data processing device 1. The user then outputs the three-dimensional data stored in the data processing device 1 to a milling machine or a 3D printer, or displays on the display 3 a two-dimensional image viewed from an arbitrary viewpoint based on the three-dimensional data in order to easily explain to the patient the treatment area and the state of the patient's own dentition.
[0108] The data processing device 1 displays in real time on the display 3 a two-dimensional image of the dental arch viewed from any viewpoint based on the three-dimensional data that has been correctly acquired and recorded, so that the user can know to what extent the three-dimensional data of the dental arch has currently been correctly acquired and recorded.
[0109] In the process of acquiring and recording three-dimensional data of an intraoral object such as a dental arch as described above, the data processing device 1 generates a data set using the three-dimensional data by a mesh generation process, judges whether the three-dimensional data included in the data set is genuine or false by a data judgment process and sets a deletion flag for the false three-dimensional data, judges whether the data set is genuine or false by a data set judgment process, and generates two-dimensional image data based on the true data set. The data processing device 1 only sets a deletion flag for the false three-dimensional data until acquiring the three-dimensional data and generating the two-dimensional image data, but does not delete the false three-dimensional data or regenerate the data set based only on the true three-dimensional data, and generates two-dimensional image data based only on the true three-dimensional data and the true data set without using the false three-dimensional data with the deletion flag set. In other words, the data processing device 1 keeps the false three-dimensional data recorded, but does not display the false three-dimensional data on the display 3. Then, the data processing device 1 deletes the false three-dimensional data for which the deletion flag is set from the records after the user completes the acquisition and recording of a series of three-dimensional data using the three-dimensional scanner 2 (for example, when the power supply of the data processing device 1 or the three-dimensional scanner 2 is turned off, or when the scanning by the three-dimensional scanner 2 is stopped). This allows the data processing device 1 to avoid a processing load caused by deleting the false three-dimensional data or regenerating a data set based only on the true three-dimensional data during the processing flow shown in FIG.
[0110] [Variations] The present disclosure is not limited to the above-mentioned embodiment, and various modifications and applications are possible. Below, modifications applicable to the present disclosure will be described. Note that, in the following, only the configurations and functions of the data processing device 1 according to the modification that are different from the data processing device 1 according to the present embodiment will be described, and the data processing device 1 according to the modification has the same configurations and functions as the data processing device 1 according to the present embodiment with respect to the other configurations and functions.
[0111] (Data Judgment Processing) The data processing device 1 according to this embodiment uses a data determination process to determine that among a plurality of input three-dimensional data, the last input three-dimensional data is the true three-dimensional data, but as shown in Figures 14 to 16, the data processing device 1 according to the modified example may determine the authenticity of the three-dimensional data from a perspective different from that of the data determination process according to this embodiment. Figures 14 to 16 are diagrams showing an example of the data determination process of the data processing device 1 according to the modified example.
[0112] The data processing device 1 according to the modified example may use the data determination process to determine that, among the multiple pieces of input three-dimensional data, the three-dimensional data that includes the position of the point farthest from the scanner position is true three-dimensional data.
[0113] For example, as shown in Figures 14(A) to (C), the data processing device 1 inputs multiple pieces of three-dimensional data a to c for a specific area in the oral cavity by the Nth scan by the three-dimensional scanner 2, and then, as shown in Figures 14(D) to (F), multiple pieces of three-dimensional data d to f for the same specific area in the oral cavity are again input by the N+1th scan by the three-dimensional scanner 2.
[0114] 14(D), when three-dimensional data d is input by the N+1th scan, the data processing device 1 generates a virtual space 50 for the three-dimensional data d, and determines whether or not three-dimensional data input by a scan prior to the N+1th scan (for example, the Nth scan in the past) exists in the virtual space 50. When three-dimensional data a input by the Nth scan in the past exists in the virtual space 50 for the three-dimensional data d input by the N+1th scan, the data processing device 1 compares the distance from the scan position between the Nth three-dimensional data a and the N+1th three-dimensional data d, and regards the N+1th three-dimensional data d including the position of the point farthest from the scanner position as the true three-dimensional data.
[0115] 14(E), when three-dimensional data e is input by the N+1th scan, the data processing device 1 generates a virtual space 50 for the three-dimensional data e, and determines whether or not three-dimensional data input by a scan prior to the N+1th scan (for example, the Nth scan in the past) exists in the virtual space 50. When three-dimensional data b input by the Nth scan in the past exists in the virtual space 50 for the three-dimensional data e input by the N+1th scan, the data processing device 1 compares the distance from the scan position between the Nth three-dimensional data b and the N+1th three-dimensional data e, and regards the N+1th three-dimensional data e including the position of the point farthest from the scanner position as the true three-dimensional data.
[0116] 14(F), when three-dimensional data f is input by the N+1th scan, the data processing device 1 generates a virtual space 50 for the three-dimensional data f, and determines whether or not three-dimensional data input by a scan prior to the N+1th scan (for example, the Nth scan in the past) exists in the virtual space 50. When three-dimensional data c input by the Nth scan in the past exists in the virtual space 50 for the three-dimensional data f input by the N+1th scan, the data processing device 1 compares the distance from the scan position between the Nth three-dimensional data c and the N+1th three-dimensional data f, and regards the N+1th three-dimensional data f including the position of the point farthest from the scanner position as the true three-dimensional data.
[0117] In this way, the calculation device 11 (data processing unit 1102) of the data processing device 1 according to the modified example compares the distance from the scan position between the Nth three-dimensional data input from the input unit 1101 and the N+1th three-dimensional data input from the input unit 1101 in the virtual space 50 based on the scanner position, and determines the three-dimensional data including the position of the point farthest from the scanner position as the true three-dimensional data. Note that in the above example, when the Nth three-dimensional data is applied to the "first three-dimensional data", the N+1th three-dimensional data is applied to the "second three-dimensional data", and when the Nth three-dimensional data is applied to the "second three-dimensional data", the N+1th three-dimensional data is applied to the "first three-dimensional data".
[0118] In addition, when the data processing device 1 regards the three-dimensional data including the position of the point farthest from the scanner position among the multiple three-dimensional data as the true three-dimensional data, for example, when a user first scans the side of a specific tooth closer to the user and then scans the side of the same specific tooth farther from the user, the data processing device 1 may regard only the three-dimensional data of the side of the specific tooth farther from the user as the true three-dimensional data. However, as described with reference to Fig. 7, the data processing device 1 determines whether or not there is three-dimensional data previously obtained in the direction of the optical axis L from the point corresponding to the detection position serving as the generation reference for the virtual space 50 toward the scanner position, and therefore does not cause the above-mentioned problem.
[0119] The data processing device 1 according to the modified example may determine, through the data determination process, that among the multiple pieces of input three-dimensional data, the three-dimensional data that includes the position of the point that is closest to the scanner position, as false three-dimensional data.
[0120] For example, as shown in Figures 15(A) to (C), the data processing device 1 inputs multiple pieces of three-dimensional data a to c for a specific area in the oral cavity by the Nth scan by the three-dimensional scanner 2, and then, as shown in Figures 15(D) to (F), multiple pieces of three-dimensional data d to f for the same specific area in the oral cavity are again input by the N+1th scan by the three-dimensional scanner 2.
[0121] As shown in FIG. 15(D), when three-dimensional data d is input by the N+1th scan, the data processing device 1 generates a virtual space 50 for the three-dimensional data d, and judges whether or not three-dimensional data input by a scan (scan) before the N+1th (for example, the Nth in the past) exists in the virtual space 50. When three-dimensional data a input by the Nth scan in the past exists in the virtual space 50 for the three-dimensional data d input by the N+1th scan, the data processing device 1 compares the distance from the scan position between the Nth three-dimensional data a and the N+1th three-dimensional data d, and regards the Nth three-dimensional data a including the position of the point closest to the scanner position as false three-dimensional data. In other words, the data processing device 1 regards the N+1th three-dimensional data d as true three-dimensional data.
[0122] As shown in FIG. 14(E), when three-dimensional data e is input by the N+1th scan, the data processing device 1 generates a virtual space 50 for the three-dimensional data e, and determines whether or not three-dimensional data input by a scan (scan) before the N+1th (for example, the Nth in the past) exists in the virtual space 50. When three-dimensional data b input by the Nth scan in the past exists in the virtual space 50 for the three-dimensional data e input by the N+1th scan, the data processing device 1 compares the distance from the scan position between the Nth three-dimensional data b and the N+1th three-dimensional data e, and determines the Nth three-dimensional data b including the position of the point closest to the scanner position as false three-dimensional data. In other words, the data processing device 1 determines the N+1th three-dimensional data e as true three-dimensional data.
[0123] As shown in FIG. 14(F), when three-dimensional data f is input by the N+1th scan, the data processing device 1 generates a virtual space 50 for the three-dimensional data f, and judges whether or not three-dimensional data input by a scan before the N+1th scan (for example, the Nth scan in the past) exists in the virtual space 50. When three-dimensional data c input by the Nth scan in the past exists in the virtual space 50 for the three-dimensional data f input by the N+1th scan, the data processing device 1 compares the distance from the scan position between the Nth three-dimensional data c and the N+1th three-dimensional data f, and regards the Nth three-dimensional data c including the position of the point closest to the scanner position as false three-dimensional data. In other words, the data processing device 1 regards the N+1th three-dimensional data f as true three-dimensional data.
[0124] In this way, the calculation device 11 (data processing unit 1102) of the data processing device 1 according to the modified example compares the distance from the scan position between the Nth three-dimensional data input from the input unit 1101 and the N+1th three-dimensional data input from the input unit 1101 in the virtual space 50 based on the scanner position, and sets the three-dimensional data including the position of the point closest to the scanner position as false three-dimensional data. Note that in the above example, when the Nth three-dimensional data is applied to the "first three-dimensional data", the N+1th three-dimensional data is applied to the "second three-dimensional data", and when the Nth three-dimensional data is applied to the "second three-dimensional data", the N+1th three-dimensional data is applied to the "first three-dimensional data".
[0125] In addition, if the data processing device 1 treats the three-dimensional data including the position of the point closest to the scanner position among the multiple three-dimensional data as false three-dimensional data, for example, when a user first scans a side of a specific tooth closer to the user and then scans a side of the same specific tooth farther from the user, the data processing device 1 may treat the three-dimensional data of the side of the specific tooth closer to the user as false three-dimensional data. However, as described with reference to Fig. 7, the data processing device 1 determines whether or not there is three-dimensional data previously obtained in the direction of the optical axis L from the point corresponding to the detection position serving as the generation reference for the virtual space 50 toward the scanner position, and therefore does not cause the above-mentioned problem.
[0126] The data processing device 1 according to the modified example may determine, by the data determination process, the three-dimensional data including color information of the color closest to the specific color as the true three-dimensional data among the multiple input three-dimensional data. The specific color may be, for example, white close to the color of teeth, and may be appropriately set by the user. The data processing device 1 may also specify the color of each point corresponding to each three-dimensional data by referring to the color information of each three-dimensional data stored in the three-dimensional data table of FIG. 12.
[0127] For example, as shown in Figures 16(A) to (C), the data processing device 1 inputs multiple pieces of three-dimensional data a to c for a specific area in the oral cavity by the Nth scan by the three-dimensional scanner 2, and then, as shown in Figures 16(D) to (F), multiple pieces of three-dimensional data d to f for the same specific area in the oral cavity are again input by the N+1th scan by the three-dimensional scanner 2.
[0128] 16(D), when three-dimensional data d is input by the N+1th scan, the data processing device 1 generates a virtual space 50 for the three-dimensional data d, and determines whether or not three-dimensional data input by a scan prior to the N+1th scan (for example, the Nth scan in the past) exists in the virtual space 50. When three-dimensional data a input by the Nth scan in the past exists in the virtual space 50 for the three-dimensional data d input by the N+1th scan, the data processing device 1 compares color information included in the Nth three-dimensional data a with color information included in the N+1th three-dimensional data d, and determines the N+1th three-dimensional data d including color information of a color closest to the specific color as the true three-dimensional data.
[0129] 16(E), when three-dimensional data e is input by the N+1th scan, the data processing device 1 generates a virtual space 50 for the three-dimensional data e, and determines whether or not three-dimensional data input by a scan prior to the N+1th scan (for example, the Nth scan in the past) exists in the virtual space 50. When three-dimensional data b input by the Nth scan in the past exists in the virtual space 50 for the three-dimensional data e input by the N+1th scan, the data processing device 1 compares color information included in the Nth three-dimensional data b with color information included in the N+1th three-dimensional data e, and determines the N+1th three-dimensional data e including color information of a color closest to the specific color as the true three-dimensional data.
[0130] 16(F), when three-dimensional data f is input by the N+1th scan, the data processing device 1 generates a virtual space 50 for the three-dimensional data f, and determines whether or not three-dimensional data input by a scan prior to the N+1th scan (for example, the Nth scan in the past) exists in the virtual space 50. When three-dimensional data c input by the Nth scan in the past exists in the virtual space 50 for the three-dimensional data f input by the N+1th scan, the data processing device 1 compares color information included in the Nth three-dimensional data c with color information included in the N+1th three-dimensional data f, and determines the N+1th three-dimensional data f including color information of a color closest to the specific color as the true three-dimensional data.
[0131] In this way, the calculation device 11 (data processing unit 1102) of the data processing device 1 according to the modified example compares color information between the Nth three-dimensional data input from the input unit 1101 and the N+1th three-dimensional data input from the input unit 1101 in the virtual space 50 based on the scanner position, and determines the three-dimensional data including color information of the color closest to the specific color as the true three-dimensional data. Note that in the above example, when the Nth three-dimensional data is applied to the "first three-dimensional data", the N+1th three-dimensional data is applied to the "second three-dimensional data", and when the Nth three-dimensional data is applied to the "second three-dimensional data", the N+1th three-dimensional data is applied to the "first three-dimensional data".
[0132] In addition, when the data processing device 1 regards the three-dimensional data including color information of the color closest to a specific color among the multiple three-dimensional data as the true three-dimensional data, it may be difficult to determine the authenticity of the three-dimensional data for scanned objects with relatively similar colors, such as comparing gums with a finger. However, when the data processing device 1 combines other data determination processes that compare detection positions of the three-dimensional data as described above, it can determine the authenticity of the three-dimensional data based on the detection positions even if it cannot determine the authenticity of the three-dimensional data based on the color.
[0133] That is, when both the Nth three-dimensional data and the N+1th three-dimensional data exist in the same virtual space, even if the Nth three-dimensional data includes the position of teeth and the N+1th three-dimensional data includes the position of fingers or tongue, in the case of the process of determining the N+1th three-dimensional data as true data (the case of the process described using FIG. 7), the three-dimensional data including the fingers or tongue is determined as true data. In this regard, in the case of the process described using FIG. 16, even if the Nth three-dimensional data includes the position of teeth and the N+1th three-dimensional data includes the position of fingers or tongue, the color information included in the Nth three-dimensional data and the color information included in the N+1th three-dimensional data can be compared to determine the Nth three-dimensional data including the color information of the color closest to the specific color as true three-dimensional data. Therefore, by using such processes in combination, the data processing device 1 can prevent the three-dimensional data including the fingers or tongue from being determined as true three-dimensional data.
[0134] (Virtual space) The data processing device 1 according to this embodiment generates a virtual space 50 having a cylindrical shape with the optical axis L of the three-dimensional scanner 2 as the central axis. However, the data processing device 1 according to the modified example is not limited to the cylindrical virtual space 50, and may generate a virtual space 50 having another shape. For example, the data processing device 1 may generate a virtual space 50 in the shape of a polygonal prism (e.g., a rectangular prism) with the optical axis L of the three-dimensional scanner 2 passing through the center.
[0135] (Dataset determination) The data processing device 1 of this embodiment generates a mesh by connecting multiple three-dimensional data located within a predetermined range with straight lines through a mesh generation process, treats the collection of generated meshes as a dataset, and determines the authenticity of the dataset through a dataset determination process, but the data processing device 1 of the modified example may determine the authenticity of the dataset without generating a mesh.
[0136] For example, the data processing device 1 may classify the three-dimensional data by including multiple three-dimensional point cloud data located within a predetermined range in a common data set without connecting them with straight lines. That is, multiple three-dimensional point cloud data located within a predetermined range are included in a common data set without being connected to each other (without generating a mesh). Then, the data processing device 1 may determine the data set (three-dimensional point cloud data) with the largest amount of data among the multiple data sets (three-dimensional point cloud data) as the true data set (three-dimensional point cloud data).
[0137] In the data processing device 1 of this embodiment, the dataset with the largest amount of data among multiple datasets is regarded as the true dataset, but in the data processing device 1 of the modified example, the dataset with a data amount equal to or greater than a predetermined amount is regarded as the true dataset among multiple datasets, and two-dimensional image data corresponding to a two-dimensional image viewed from an arbitrary viewpoint may be generated based on the dataset with a data amount equal to or greater than the predetermined amount.
[0138] (Indicators of authenticity) The data processing device 1 according to this embodiment sets a deletion flag as a false index for three-dimensional data that is not determined as true three-dimensional data by the data determination process, as shown in Fig. 12. However, the data processing device 1 according to the modified example may associate a true index with three-dimensional data that is determined as true three-dimensional data by the data determination process.
[0139] 12, the data processing device 1 according to the present embodiment stores both the three-dimensional data determined as true three-dimensional data by the data determination process and the three-dimensional data determined as false three-dimensional data in the storage device 12 (storage unit 1103), and distinguishes between the true three-dimensional data and the false three-dimensional data by using a deletion flag. However, the data processing device 1 according to the modified example may delete the three-dimensional data determined as false three-dimensional data by the data determination process after temporarily storing the acquired three-dimensional data in the storage device 12. Alternatively, the data processing device 1 according to the modified example may store in the storage device 12 only the three-dimensional data determined as true three-dimensional data by the data determination process among the acquired three-dimensional data.
[0140] (3D scanner) The three-dimensional scanner 2 according to the present embodiment is configured so that the user can hold and move the probe 22 by hand. However, in a three-dimensional scanner 2 according to a modified example, the housing 21 and the probe 22 may be fixed.
[0141] The three-dimensional scanner 2 is not limited to a device that obtains three-dimensional data of each point indicating the surface of a scanned object by reflection of an optical axis. For example, the three-dimensional scanner 2 may be a device that obtains three-dimensional data of each point indicating the surface of a scanned object by using laser light.
[0142] In addition, the three-dimensional scanner 2 may be a device that acquires voxel data or volumetric data including positional information of each point constituting the interior of the scanned object, rather than just the surface of the scanned object, such as a CT (Computed Tomography) scanner or an X-ray device.
[0143] The embodiments disclosed herein should be considered to be illustrative and not restrictive in all respects. The scope of the present disclosure is indicated by the claims, not by the above description, and is intended to include all modifications within the meaning and scope of the claims. Note that the configurations exemplified in the present embodiment and the configurations exemplified in the modified examples can be appropriately combined. [Explanation of symbols]
[0144] 1 data processing device, 2 three-dimensional scanner, 3 display, 4 keyboard, 5 mouse, 10 data processing system, 11 arithmetic unit, 12 storage device, 13 scanner interface, 14 communication device, 15 display interface, 16 peripheral device interface, 17 media reading device, 20 removable disk, 21 housing, 22 probe, 23 light source, 24 lens, 25 optical sensor, 26 prism, 27 counterweight, 28 reflecting unit, 29 opening, 40 control device, 50 virtual space, 121 three-dimensional data, 122 data processing program, 1101 input unit, 1102 data processing unit, 1103 storage unit, 1104 output unit.
Claims
1. A data processing device that processes three-dimensional data including the positions of each of a cloud of points indicating at least a surface of an intraoral object acquired by a three-dimensional scanner, an input unit to which the three-dimensional data acquired by the three-dimensional scanner is input; a data processing unit that executes a first data processing to generate a dataset using a plurality of the three-dimensional data located within a predetermined range among the plurality of the three-dimensional data input from the input unit, and a second data processing to determine the amount of data of each of the plurality of datasets when a plurality of datasets are generated by the first data processing, and to determine, among the plurality of datasets, the dataset with the largest amount of data or the dataset with an amount of data equal to or greater than a predetermined amount as a true dataset corresponding to the dentition that is the object to be scanned, and to determine datasets other than the determined dataset as false datasets corresponding to obstacles that are not the object to be scanned.
2. The data processing unit executes the second data processing when a predetermined condition is met, 2. The data processing device according to claim 1, wherein the predetermined condition includes at least one of the following: an amount of the three-dimensional data input from the input unit exceeds a predetermined amount; and a time for which the three-dimensional data is input from the input unit exceeds a predetermined time.
3. 3. The data processing device according to claim 1, wherein the data processing unit executes a third data process to determine authenticity of the first three-dimensional data input from the input unit and the second three-dimensional data input from the input unit in a virtual space based on the position of the three-dimensional scanner.
4. 4. The data processing device according to claim 3, wherein the third data processing includes processing for treating, of the first three-dimensional data and the second three-dimensional data, the three-dimensional data which is input later from the input unit as true three-dimensional data.
5. 4. The data processing device according to claim 3, wherein the third data processing includes processing for treating, as true three-dimensional data, the three-dimensional data that includes the position of a point farthest from the position of the three-dimensional scanner, among the first three-dimensional data and the second three-dimensional data.
6. 4. The data processing device according to claim 3, wherein the third data processing includes processing for treating, of the first three-dimensional data and the second three-dimensional data, the three-dimensional data including a position of a point closest to a position of the three-dimensional scanner as false three-dimensional data.
7. the three-dimensional data input from the input unit further includes color information of the color at each of the points representing the surface of the object; The data processing device according to any one of claims 3 to 6, wherein the third data processing includes processing for treating, as true three-dimensional data, the three-dimensional data that includes color information of a color closest to a specific color, among the first three-dimensional data and the second three-dimensional data.
8. The three-dimensional scanner acquires the three-dimensional data using an optical axis; 8. The data processing device according to claim 3, wherein the virtual space has a shape of a cylinder or a polygonal prism having an optical axis of the three-dimensional scanner as a central axis.
9. A data processing device according to any one of claims 3 to 8, wherein the third data processing includes at least one of a process of associating a false indicator with false three-dimensional data, a process of associating a true indicator with true three-dimensional data, a process of deleting the false three-dimensional data stored in a memory unit, and a process of storing only the true three-dimensional data in the memory unit.
10. The data processing device according to any one of claims 1 to 9, wherein the three-dimensional scanner is a hand-held handpiece that acquires the three-dimensional data by scanning the object in the oral cavity.
11. A data processing method in which a computer processes three-dimensional data including positions of each of a point cloud indicating at least a surface of an intraoral object acquired by a three-dimensional scanner, comprising: inputting the three-dimensional data acquired by the three-dimensional scanner; a step of executing a first data processing for generating a dataset using a plurality of the three-dimensional data located within a predetermined range among the plurality of the three-dimensional data input by the inputting step; and a second data processing for determining the amount of data of each of the plurality of datasets when the plurality of datasets are generated by the first data processing, and determining, among the plurality of datasets, the dataset with the largest amount of data or the dataset with an amount of data equal to or greater than a predetermined amount of data as a true dataset corresponding to the dentition that is the object to be scanned, and determining the datasets other than the determined dataset as false datasets corresponding to obstacles that are not the object to be scanned.
12. A data processing program for processing three-dimensional data including the positions of each of a cloud of points indicating at least a surface of an intraoral object acquired by a three-dimensional scanner, On the computer, inputting the three-dimensional data acquired by the three-dimensional scanner; a step of executing a first data processing step of generating a dataset using a plurality of the three-dimensional data located within a predetermined range among the plurality of the three-dimensional data input by the inputting step; and a second data processing step of determining the amount of data of each of the plurality of datasets when a plurality of datasets are generated by the first data processing step, and determining, among the plurality of datasets, the dataset with the largest amount of data or the dataset with an amount of data equal to or greater than a predetermined amount of data as a true dataset corresponding to the dentition that is the object to be scanned, and determining the datasets other than the determined dataset as false datasets corresponding to obstacles that are not the object to be scanned.
13. 1. A data processing system comprising: a three-dimensional scanner for scanning an intraoral object to obtain three-dimensional data including the positions of each of a cloud of points representing at least a surface of the object; a data processing device for processing the three-dimensional data acquired by the three-dimensional scanner, The data processing device includes: an input unit to which the three-dimensional data acquired by the three-dimensional scanner is input; a data processing unit that executes a first data process to generate a dataset using a plurality of the three-dimensional data located within a predetermined range among the plurality of the three-dimensional data input from the input unit, and a second data process that, when a plurality of datasets are generated by the first data process, determines the amount of data in each of the plurality of datasets, and sets, among the plurality of datasets, the dataset with the largest amount of data or a dataset with an amount of data equal to or greater than a predetermined amount of data as a true dataset corresponding to the dentition that is the object to be scanned, and sets other datasets as false datasets corresponding to obstacles that are not the object to be scanned.
Citation Information
Patent Citations
Visualization of 3D data acquisition
JP2009523552A
Detection of movable objects when scanning rigid bodies in 3D
JP2014521163A
Selection and locking of intraoral images
JP2021058672A
Information processing apparatus and data processing method
JP2021111254A
Object detection method and object detector
JP2021117051A
