[go: up one dir, main page]

ES2997308T3 - Automated determination of a canonical pose of a 3d objects and superimposition of 3d objects using deep learning - Google Patents

Automated determination of a canonical pose of a 3d objects and superimposition of 3d objects using deep learning Download PDF

Info

Publication number
ES2997308T3
ES2997308T3 ES19735321T ES19735321T ES2997308T3 ES 2997308 T3 ES2997308 T3 ES 2997308T3 ES 19735321 T ES19735321 T ES 19735321T ES 19735321 T ES19735321 T ES 19735321T ES 2997308 T3 ES2997308 T3 ES 2997308T3
Authority
ES
Spain
Prior art keywords
canonical
voxel
coordinate system
neural network
representation
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
ES19735321T
Other languages
Spanish (es)
Inventor
Frank Theodorus Catharina Claessen
Moin David Anssari
Teo Cherici
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Promaton Holding BV
Original Assignee
Promaton Holding BV
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Promaton Holding BV filed Critical Promaton Holding BV
Application granted granted Critical
Publication of ES2997308T3 publication Critical patent/ES2997308T3/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • G06T7/75Determining position or orientation of objects or cameras using feature-based methods involving models
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61CDENTISTRY; APPARATUS OR METHODS FOR ORAL OR DENTAL HYGIENE
    • A61C9/00Impression cups, i.e. impression trays; Impression methods
    • A61C9/004Means or methods for taking digitized impressions
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61CDENTISTRY; APPARATUS OR METHODS FOR ORAL OR DENTAL HYGIENE
    • A61C9/00Impression cups, i.e. impression trays; Impression methods
    • A61C9/004Means or methods for taking digitized impressions
    • A61C9/0046Data acquisition means or methods
    • A61C9/0053Optical means or methods, e.g. scanning the teeth by a laser or light beam
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/20Finite element generation, e.g. wire-frame surface description, tesselation
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/20Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/30Determination of transform parameters for the alignment of images, i.e. image registration
    • G06T7/33Determination of transform parameters for the alignment of images, i.e. image registration using feature-based methods
    • G06T7/337Determination of transform parameters for the alignment of images, i.e. image registration using feature-based methods involving reference images or patches
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/30Determination of transform parameters for the alignment of images, i.e. image registration
    • G06T7/33Determination of transform parameters for the alignment of images, i.e. image registration using feature-based methods
    • G06T7/344Determination of transform parameters for the alignment of images, i.e. image registration using feature-based methods involving models
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10072Tomographic images
    • G06T2207/10081Computed x-ray tomography [CT]
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20081Training; Learning
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30004Biomedical image processing
    • G06T2207/30036Dental; Teeth
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2210/00Indexing scheme for image generation or computer graphics
    • G06T2210/41Medical
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2219/00Indexing scheme for manipulating 3D models or images for computer graphics
    • G06T2219/20Indexing scheme for editing of 3D models
    • G06T2219/2004Aligning objects, relative positioning of parts
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2219/00Indexing scheme for manipulating 3D models or images for computer graphics
    • G06T2219/20Indexing scheme for editing of 3D models
    • G06T2219/2016Rotation, translation, scaling

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • General Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Computer Graphics (AREA)
  • General Engineering & Computer Science (AREA)
  • Oral & Maxillofacial Surgery (AREA)
  • Dentistry (AREA)
  • Epidemiology (AREA)
  • Animal Behavior & Ethology (AREA)
  • Public Health (AREA)
  • Veterinary Medicine (AREA)
  • Geometry (AREA)
  • Computer Hardware Design (AREA)
  • Architecture (AREA)
  • Biomedical Technology (AREA)
  • Mathematical Physics (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Biophysics (AREA)
  • Optics & Photonics (AREA)
  • Artificial Intelligence (AREA)
  • Apparatus For Radiation Diagnosis (AREA)
  • Dental Tools And Instruments Or Auxiliary Dental Instruments (AREA)
  • Image Analysis (AREA)
  • Dental Prosthetics (AREA)

Abstract

Se describe un método para determinar automáticamente una posición canónica de un objeto 3D representado por un conjunto de datos 3D, en donde el método comprende: proporcionar uno o más bloques de vóxeles de una representación de vóxeles del objeto 3D asociado con un primer sistema de coordenadas a la entrada de una primera red neuronal profunda 3D, siendo entrenada la primera red neuronal 3D para generar información de posición canónica asociada con un sistema de coordenadas canónico definido en relación con una posición de parte de la estructura dental 3D; recibir información de posición canónica desde la salida de la primera red neuronal profunda 3D, comprendiendo la información de posición canónica para cada vóxel de los uno o más bloques una predicción de una posición del vóxel en el sistema de coordenadas canónico, siendo definida la posición por coordenadas canónicas; utilizar las coordenadas canónicas para determinar una orientación y escala de los ejes del sistema de coordenadas canónico y una posición del origen del sistema de coordenadas canónico en relación con el eje y el origen del primer sistema de coordenadas 3D y utilizar la orientación y la posición para determinar parámetros de transformación para transformar coordenadas del primer sistema de coordenadas en coordenadas canónicas; y, determinar una representación canónica de la estructura dental 3D, incluyendo la determinación la aplicación de los parámetros de transformación a las coordenadas de los vóxeles de la representación de vóxeles o del conjunto de datos 3D utilizado para determinar la representación de vóxeles. (Traducción automática con Google Translate, sin valor legal)A method is described for automatically determining a canonical position of a 3D object represented by a 3D data set, the method comprising: providing one or more voxel blocks of a voxel representation of the 3D object associated with a first coordinate system as input to a first 3D deep neural network, the first 3D neural network being trained to generate canonical position information associated with a canonical coordinate system defined relative to a position of a portion of the 3D tooth structure; receiving canonical position information from the output of the first 3D deep neural network, the canonical position information for each voxel of the one or more blocks comprising a prediction of a position of the voxel in the canonical coordinate system, the position being defined by canonical coordinates; using the canonical coordinates to determine an orientation and scale of the axes of the canonical coordinate system and a position of the origin of the canonical coordinate system relative to the axis and origin of the first 3D coordinate system, and using the orientation and position to determine transformation parameters for transforming coordinates of the first coordinate system into canonical coordinates; and determining a canonical representation of the 3D dental structure, including determining and applying the transformation parameters to the coordinates of the voxels of the voxel representation or of the 3D data set used to determine the voxel representation. (Automatic translation with Google Translate, no legal value)

Description

d e s c r ip c ió ndescription

Determinación automatizada de una postura canónica de un objeto en 3D y superposición de objetos en 3D usando aprendizaje profundo Automated determination of a canonical pose of a 3D object and 3D object superposition using deep learning

Campo de la invenciónField of the invention

La invención se refiere a la determinación automatizada de una postura canónica de un objeto en 3D, tal como estructura dental en 3D, y superposición de objetos en 3D usando aprendizaje profundo; y, en particular, aunque no exclusivamente, a métodos y sistemas para la determinación automatizada de una postura canónica de un objeto en 3D y a métodos y sistemas para la superposición automatizada de objetos en 3D y a un producto de programa informático que permite que un sistema informático realice tales métodos. The invention relates to automated determination of a canonical pose of a 3D object, such as 3D dental structure, and 3D object superposition using deep learning; and in particular, though not exclusively, to methods and systems for automated determination of a canonical pose of a 3D object and to methods and systems for automated 3D object superposition, and to a computer program product that enables a computer system to perform such methods.

Antecedentes de la invenciónBackground of the invention

Losmodelos en 3D precisos de la dentición y los huesos maxilares (maxila y mandíbula) de un paciente son esenciales para aplicaciones dentales asistidas por ordenador en 3D (planificación de tratamiento de ortodoncia, planificación de implante dental, planificación de cirugía ortognática (cirugía maxilar), etc.). La formación de tales modelos en 3D se basa en datos de imágenes en 3D del paciente, normalmente datos de tomografía axial computerizada (TAC) en 3D de un objeto en 3D que representa, por ejemplo, un complejo dentomaxilofacialuotra parte del cuerpo. Una exploración de TAC da normalmente como resultado una representación de vóxeles que representan (parte de) el objeto en 3D, en la que cada vóxel está asociado con un valor de intensidad, normalmente una radiodensidad del volumen explorado. En aplicaciones médicas, tales como aplicaciones dentales, habitualmente se adquieren exploraciones de TAC usando TAC de haz cónico (CBCT), debido a la dosis de radiación inferior para el paciente, el precio de adquisición inferior del equipo y la mayor facilidad deusoen comparación con TAC de haz en abanico. Accurate 3D models of a patient's dentition and jawbones (maxilla and mandible) are essential for 3D computer-aided dental applications (orthodontic treatment planning, dental implant planning, orthognathic surgery (maxillary surgery) planning, etc.). The formation of such 3D models is based on 3D image data of the patient, typically 3D computed tomography (CT) data of a 3D object representing, for example, a dentomaxillofacial complex or other body part. A CT scan typically results in a voxel representation representing (part of) the 3D object, where each voxel is associated with an intensity value, typically a radiodensity of the scanned volume. In medical applications, such as dental applications, CT scans are commonly acquired using cone beam CT (CBCT), due to the lower radiation dose to the patient, the lower acquisition price of the equipment, and the greater ease of use compared to fan beam CT.

Sin embargo, las técnicas de CBCT son sensibles a artefactos (especialmente en presencia de metal), no hay una norma a nivel industrial para la conversión de la salida del sensor del explorador de CBCT en valores de radiación que representen la radiodensidad en unidades de Hounsfield (UH) en el volumen explorado. Además, elusode dosis baja proporciona un contraste relativamente malo, haciendo que sea difícil distinguir entre estructuras en un objeto en 3D, por ejemplo un complejo dentomaxilofacial, que tienen densidades similares. Estos problemas pueden dar como resultado discrepancias en modelos en 3D derivados a partir de tales representaciones de vóxeles usando, por ejemplo, una técnica de determinación de umbral. Por tanto, los modelos en 3D derivados a partir de una representación de vóxeles de datos de CBCT no son adecuados,oal menos son menos adecuados, para diseñar patrones soportados por dientes que se ajusten de manera precisa tal como se usan, por ejemplo, en ortodoncia (terapia de alineador invisible), cirugía maxilar (cirugía ortognática), cirugía de implante (implantología), odontología cosmética (coronas, puentes), etc. However, CBCT techniques are sensitive to artifacts (especially in the presence of metal), and there is no industry-wide standard for converting the CBCT scanner sensor output into radiation values representing the radiodensity in Hounsfield units (HU) in the scanned volume. Furthermore, the use of low doses results in relatively poor contrast, making it difficult to distinguish between structures in a 3D object, e.g., a dentomaxillofacial complex, that have similar densities. These problems can result in discrepancies in 3D models derived from such voxel representations using, e.g., a thresholding technique. Therefore, 3D models derived from a voxel representation of CBCT data are not suitable, or at least less suitable, for designing precisely fitting tooth-supported patterns as used, for example, in orthodontics (invisible aligner therapy), jaw surgery (orthognathic surgery), implant surgery (implantology), cosmetic dentistry (crowns, bridges), etc.

Con el fin de abordar este problema, una representación de vóxeles de un conjunto de datos de CBCToun modelo en 3D derivado a partir de tal representación de vóxeles puede complementarse, aumentarse y/o sustituirse (parcialmente) por datos de exploración óptica.Losdatos de exploración óptica, tales como datos de exploración intrabucal(Io s ),se generan mediante una exploración de superficie (por ejemplo, una luz estructuradaoláser) de superficies de dientes (generalmente las coronas de dientes y la superficie gingival circundante) derivadas a partir de un modelo en yeso(oimpresión) de la dentición de un pacienteogenerando datos de exploración intrabucal (IOS) de la dentición del paciente. En comparación con datos de CBCT/TAC, las ventajas son la ausencia de radiación durante la adquisición de datos y la resolución espacial superior. Se aproxima que las precisiones típicas de exploraciones ópticas (extrabucales) e IOS están dentro del intervalo de entre 5 y 10 micrómetros y entre 25 y 75 micrómetros, respectivamente. Sin embargo, los resultados de exploración no distinguen entre dientes (coronas) y regiones gingivales. Además, no puede captarse ninguna información más allá de superficies visibles, en particular no se adquiere ninguna información sobre raíces de diente, hueso maxilar, nervios, etc. Las exploraciones intrabucales pueden complementarse mediante datos de modelos generalizados, por ejemplo derivados a partir de una base de datos de formas de corona con formas de raíces correspondientes, para estimar las estructuras subyacentes, pero, como tal, una generalización no tiene en cuenta información que considera la forma en 3D real de los volúmenes deseados. Por tanto, tales estimaciones basadas en modelo son inherentemente imprecisas. In order to address this problem, a voxel representation of a CBCT dataset or a 3D model derived from such a voxel representation can be complemented, augmented, and/or (partially) replaced by optical scanning data. Optical scanning data, such as intraoral scanning (IOS) data, are generated by a surface scan (e.g., structured light or laser) of tooth surfaces (usually the tooth crowns and the surrounding gingival surface) derived from a plaster model (or impression) of a patient's dentition, or by generating intraoral scanning (IOS) data of the patient's dentition. Compared to CBCT/CT data, the advantages are the absence of radiation during data acquisition and the higher spatial resolution. Typical accuracies of optical (extraoral) and IOS examinations are estimated to be within the range of 5–10 micrometers and 25–75 micrometers, respectively. However, the examination results do not distinguish between teeth (crowns) and gingival regions. Furthermore, no information beyond visible surfaces can be captured, in particular no information about tooth roots, jawbone, nerves, etc. Intraoral examinations can be supplemented by generalized model data, for example derived from a database of crown shapes with corresponding root shapes, to estimate the underlying structures. However, as such, a generalization does not take into account information that considers the true 3D shape of the desired volumes. Therefore, such model-based estimates are inherently inaccurate.

Más generalmente, cuando se procesan datos de imágenes en 3D, por ejemplo para generar modelos en 3D precisos, para reparar datos que faltan en un conjunto de datos en 3D, pero también para analizar y evaluar, por ejemplo, (posibles) efecto(s)/desenlaces de tratamientoocon el fin de análisis de la progresión de la enfermedad, resulta ventajosooincluso necesario combinar conjuntos de datos de imágenes en 3D a partir de diferentes fuentes. Esto puede significar alinear unoomás conjuntos de datos en 3D voxelizados, tales como conjuntos de datos de CBCT, y/o unoomás conjuntos de datos de malla de superficie en 3Donube de puntos, por ejemplo conjuntos de datos de IOS, del mismo objeto en 3D, por ejemplo la misma estructura dentaloestructura ósea, y fusionar los conjuntos alineados para dar un conjunto de datos que puede usarse para determinar un modelo en 3D precisoopara realizar un análisis de la estructura dental. El procedimiento de alinear diferentes conjuntos de datos de imágenes se denomina superposición de imágenesoregistro de imágenes. Por tanto, el problema de superposiciónoregistro se refiere a encontrar un mapeo de uno a uno entre unoomás sistemas de coordenadas de tal manera que características correspondientes de un modelo, por ejemplo estructuras dentales en 3D, enIosdiferentes sistemas de coordenadas se mapeen entres í.La combinación deIosconjuntos de datos alineados para dar un conjunto de datos que representa la estructura dental se denomina habitualmente fusión. More generally, when processing 3D image data, e.g. to generate accurate 3D models, to repair missing data in a 3D dataset, but also to analyze and evaluate, e.g., (possible) treatment effect(s)/outcomes, or for the purpose of disease progression analysis, it is advantageous or even necessary to combine 3D image datasets from different sources. This may mean aligning one or more voxelized 3D datasets, such as CBCT datasets, and/or one or more 3D surface mesh or point cloud datasets, e.g., IOS datasets, of the same 3D object, e.g., the same tooth structure or bone structure, and merging the aligned sets to give a dataset that can be used to determine an accurate 3D model or to perform an analysis of the tooth structure. The procedure of aligning different image datasets is called image overlay or image registration. The superposition-registration problem therefore concerns finding a one-to-one mapping between one or more coordinate systems such that corresponding features of a model, for example 3D tooth structures, in the different coordinate systems map to each other. Combining the aligned data sets to give a data set representing the tooth structure is often referred to as fusion.

En obtención de imágenes mediante TAC y CBCT, técnicas de superposición en 3D conocidas incluyen superposición basada en puntosode puntos de referencia, superposición basada en superficiesobasada en contornos y superposición basada en vóxeles. Se describen ejemplos de tales técnicas en el artículo de GKANTIDIS, Net al. Evaluation of 3-dimensional superimposition techniques on various skeletal structures of the head using surface models.PLoSOne 2015,vo I.10, n.02; y el artículo de JODA Tet al, Systematic literature review of digital 3D superimposition techniques to create virtual dental patients.Int J Oral Maxillofac Implants, marzo-abril de 2015,vo I.In CT and CBCT imaging, popular 3D superimposition techniques include point-based/landmark-based superimposition, surface-based/contour-based superimposition, and voxel-based superimposition. Examples of such techniques are described in GKANTIDIS, et al., Evaluation of 3-dimensional superimposition techniques on various skeletal structures of the head using surface models, PLoSOne 2015, Vol. I.10, No. 2; and JODA, et al., Systematic literature review of digital 3D superimposition techniques to create virtual dental patients, Int J Oral Maxillofacial Implants, 2015, March–April, Vol. I.

30, n.o 2). Normalmente, estas técnicas requieren intervención humana, por ejemplo entrada humana. 30, no. 2). Typically, these techniques require human intervention, e.g., human input.

La precisión de técnicas de superposición basadas en puntos y basadas en superficies depende de la precisión de la identificación de puntos de referencia yIosmodelos de superficie en 3D, respectivamente. Esto puede ser especialmente problemático en presencia de artefactos y regiones de bajo contraste. Cuando se hacen coincidir conjuntos de datos dispares, resultará difícil identificar puntos de referencia correspondientes con suficiente precisión.Losalgoritmos de coincidencia basados en punto, tales como punto más cercano iterativo (ICP), necesitan generalmente interacción con el usuario para proporcionar un estado inicial que ya está alineado de manera relativamente estrecha. La superposición basada en vóxeles puede superar algunas de las limitaciones de las técnicas de superposición basadas en puntos de referencia y basadas en superficies. Esta técnica emplea información de volumen en 3D almacenada como representaciones de vóxeles. Las similitudes entreIosdatos en 3D superpuestos (que van a superponerse) puede deducirse a partir de las intensidades de nivel de vóxeles en estructuras de referencia correspondientes. Esta técnica es especialmente difícil cuando se combinan datos de CBCT no normalizados de bajo contraste de diferentes fuentesocuando se combinan datos de diferentes modalidades de obtención de imágenes (por ejemplo TAC e IRM,oCBCT y datos de imágenes en 3D binarios tal como pueden derivarse a partir de mallas de superficie que encierranoque no encierran un volumen). Pueden surgir dificultades adicionales cuandoIosconjuntos de datos sólo se solapan parcialmente.Losmétodos de superposición basada en vóxeles del estado de la técnica son con frecuencia costosos desde el punto de vista computacional. The accuracy of point-based and surface-based superposition techniques depends on the accuracy of identifying landmarks and 3D surface models, respectively. This can be especially problematic in the presence of artifacts and low-contrast regions. When matching disparate data sets, it will be difficult to identify corresponding landmarks with sufficient accuracy. Point-based matching algorithms, such as iterative closest point (ICP), generally require user interaction to provide an initial state that is already relatively closely aligned. Voxel-based superposition can overcome some of the limitations of landmark-based and surface-based superposition techniques. This technique employs 3D volume information stored as voxel representations. Similarities between the superimposed 3D data (to be superimposed) can be inferred from the voxel-level intensities in corresponding reference structures. This technique is particularly challenging when combining low-contrast, unnormalized CBCT data from different sources, or when combining data from different imaging modalities (e.g., CT and MRI, or CBCT and binary 3D image data such as those derived from surface meshes enclosing or not enclosing a volume). Additional difficulties can arise when the data sets only partially overlap. State-of-the-art voxel-based superposition methods are often computationally expensive.

El gran tamaño deIosconjuntos de datos en 3D y el hecho de que la implementación clínica requiere una norma muy estricta sobre la precisión, hacen que sea difícil usar métodos de superposición de imágenes convencionales en imágenes médicas de muchas dimensiones. ConIosrecientes desarrollos en el aprendizaje profundo, se han realizado algunos esfuerzos por aplicar aprendizaje profundo en el campo de registro de imágenes. En un enfoque, se usa aprendizaje profundo para estimar una métrica de similitud, que después se usa para impulsar un esquema de optimización iterativa. Esto se notifica, por ejemplo, por Simonovskyet al, A Deep Metric for Multimodal RegistrationMICCAI 2016 (Springer, Cham) págs. 10-18, en el que el problema se presenta como una tarea de clasificación, en la que se establece una CNN para distinguir entre alineación y desalineación de dos fragmentos de imágenes superpuestos. En otro enfoque, se usa una red (neuronal) de regresión profunda para predecir parámetros de transformación entre imágenes. Por ejemplo, el documento EP3121789 describe un método en el que se usa una red neuronal profunda para predecir directamenteIosparámetros de transformación entre una imagen de TAC en 3D y una imagen de radiografía en 2D. El documentoe P2742857da a conocer un método que registra elementos a partir de datos de forma que representan unaomás coronas con vóxeles correspondientes de obtención de imágenes volumétricas de un diente de un paciente. Además, existe el artículo de Liet al,“Non-rigid image registration using fully convolutional networks with deep self-supervision”, del 3 de septiembre de 2017, en el que una red neuronal entrenada recibe dos imágenes y calcula, para cada píxel, una deformación dx,dy,dx que se usa para registrar una imagen con respecto a la otra. Este método requiere dos imágenes de entrada que ya tienen una cierta similitud y, por tanto, no puede gestionar conjuntos de datos en 3D de diferentes modalidades. Por tanto, el problema de registrar conjuntos de datos en 3D de diferentes modalidades (en cuanto a postura, tipo de datos, sistema de coordenadas, etc.) de un objeto en 3D particular no se aborda en la técnica anterior. The large size of 3D datasets and the fact that clinical implementation requires a very strict standard on accuracy make it difficult to use conventional image overlay methods on high-dimensional medical images. With recent developments in deep learning, there have been some efforts to apply deep learning to the field of image registration. In one approach, deep learning is used to estimate a similarity metric, which is then used to drive an iterative optimization scheme. This is reported, for example, by Simonovsky et al., A Deep Metric for Multimodal Registration (MICCAI 2016) (Springer, Cham) pp. 10–18, where the problem is presented as a classification task, where a CNN is trained to distinguish between alignment and misalignment of two overlapping image fragments. In another approach, a deep regression (neural) network is used to predict transformation parameters between images. For example, EP3121789 describes a method that uses a deep neural network to directly predict transformation parameters between a 3D CT image and a 2D X-ray image. P2742857 discloses a method that registers features from shape data that represent one or more crowns with corresponding voxels from volumetric imaging of a patient's tooth. Furthermore, there is the article by Li et al., “Non-rigid image registration using fully convolutional networks with deep self-supervision,” September 3, 2017, in which a trained neural network is given two images and computes, for each pixel, a dx,dy,dx deformation that is used to register one image with respect to the other. This method requires two input images that already have a certain similarity and is therefore unable to handle 3D datasets from different modalities. Therefore, the problem of registering 3D data sets of different modalities (in terms of pose, data type, coordinate system, etc.) of a particular 3D object is not addressed in the prior art.

Grandes variaciones en estos conjuntos de datos en 3D (en cuanto a formatos/modalidades de datos, sistemas de coordenadas, posición y orientación del objeto en 3D, calidad deIosdatos de imágenes, cantidades diferentes de solapamiento entre las estructuras presentes, etc.) a las que debe poder enfrentarse el sistema de superposición, hacen que el problema de una superposición automatizada precisa de objetos en 3D (por ejemplo, superposición de estructuras dentales en 3D sin ninguna intervención humana) sea una tarea no insignificante.Lossistemas de superposición conocidos no pueden abordar estos problemas de una manera fiable y robusta. Más generalmente, grandes variaciones enIosconjuntos de datos en 3D de diferentes modalidades plantean un problema para el procesamiento preciso por un sistema de red neuronal profunda. Esto no sólo es un problema para un registro preciso, sino también para la segmentación y/o clasificación precisas por una red neuronal profunda. Large variations in these 3D datasets (in terms of data formats/modalities, coordinate systems, 3D object position and orientation, image data quality, different amounts of overlap between the structures present, etc.) that the superposition system must be able to cope with make the problem of accurate automated superposition of 3D objects (e.g., superimposing 3D dental structures without any human intervention) a significant task. Known superposition systems cannot address these problems in a reliable and robust manner. More generally, large variations in 3D datasets from different modalities pose a problem for accurate processing by a deep neural network system. This is not only a problem for accurate registration, but also for accurate segmentation and/or classification by a deep neural network.

Por tanto, existe una necesidad en la técnica de un método que pueda superponer de manera completamente automática, rápida y robusta conjuntos de datos en 3D de objetos en 3D, tales como estructuras dentomaxilofaciales en 3D. Más específicamente, existe una necesidad en la técnica de una solución en la que, por ejemplo, un experto dental pueda obtener resultados de superposición, requeridos para cualquiera de diversos fines, sin necesidad de que se requieran interaccionesoconocimiento adicional por parte de dicho experto, con una precisión conocida y puntualidad de resultados. Therefore, there is a need in the art for a method that can fully automatically, rapidly, and robustly superimpose 3D datasets of 3D objects, such as 3D dentomaxillofacial structures. More specifically, there is a need in the art for a solution where, for example, a dental expert can obtain superimposition results, required for any of a variety of purposes, without requiring any additional interaction or knowledge from said expert, with known accuracy and timeliness of results.

Sumario de la invenciónSummary of the invention

Tal como apreciará un experto en la técnica, aspectos de la presente Invención se implementan como un sistema, un métodooun producto de programa informático. Por consiguiente, aspectos de la presente invención pueden adoptar la forma de una realización completamente de hardware, una realización completamente de software (incluyendo firmware, software residente, microcódigo, etc.)ouna realización que combina aspectos de software y hardware, todos los cuales pueden denominarse generalmente en el presente documento “circuito”, “módulo”o“sistema”. Las funciones descritas en esta divulgación pueden implementarse como un algoritmo ejecutado por un microprocesador de un ordenador. Además, aspectos de la presente invención pueden adoptar la forma de un producto de programa informático implementado en unoomás medios legibles por ordenador que tienen código de programa legible por ordenador implementado, por ejemplo, almacenado, en los mismos. As will be appreciated by one of skill in the art, aspects of the present invention are implemented as a system, a method, or a computer program product. Accordingly, aspects of the present invention may take the form of an entirely hardware embodiment, an entirely software embodiment (including firmware, resident software, microcode, etc.), or an embodiment combining software and hardware aspects, all of which may be generally referred to herein as a “circuit,” “module,” or “system.” The functions described in this disclosure may be implemented as an algorithm executed by a microprocessor of a computer. Furthermore, aspects of the present invention may take the form of a computer program product implemented on one or more computer-readable media having computer-readable program code implemented, e.g., stored, therein.

Puede usarse cualquier combinación de unoomás medios legibles por ordenador. El medio legible por ordenador puede ser un medio de señal legible por ordenadoroun medio de almacenamiento legible por ordenador. Un medio de almacenamiento legible por ordenador puede ser, por ejemplo, pero sin limitarse a, un sistema, aparatoodispositivo electrónico, magnético, óptico, electromagnético, de infrarrojosode semiconductor,ocualquier combinación adecuada de los anteriores. Ejemplos más específicos (una lista no exhaustiva) del medio de almacenamiento legible por ordenador incluirá los siguientes: una conexión eléctrica que tiene unoomás cables, un disquete informático portátil, un disco duro, una memoria de acceso aleatorio (RAM), una memoria de sólo lectura (ROM), una memoria de sólo lectura programable y borrable (EPROMomemoria flash), una fibra óptica, una memoria de sólo lectura de disco compacto portátil (CD-ROM), un dispositivo de almacenamiento óptico, un dispositivo de almacenamiento magnéticoocualquier combinación adecuada de los anteriores. En el contexto de este documento, un medio de almacenamiento legible por ordenador puede ser cualquier medio tangible que puede comprender,oalmacenar, un programa parasu usopor,oen relación con, un sistema, aparatoodispositivo de ejecución de instrucciones. Any combination of one or more computer-readable media may be used. The computer-readable medium may be a computer-readable signal medium or a computer-readable storage medium. A computer-readable storage medium may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any suitable combination of the foregoing. More specific examples (a non-exhaustive list) of the computer-readable storage medium include the following: an electrical connection having one or more cables, a portable computer floppy disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPRO or flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing. In the context of this document, a computer-readable storage medium may be any tangible medium that can comprise, or store, a program for use by, or in connection with, a system, apparatus, or instruction execution device.

Un medio de señal legible por ordenador puede incluir una señal de datos propagada con código de programa legible por ordenador implementado en la misma, por ejemplo, en banda baseocomo parte de una onda portadora. Tal señal propagada puede adoptar una variedad de formas, incluyendo, pero sin limitarse a, electromagnética, ópticaocualquier combinación adecuada de las mismas. Un medio de señal legible por ordenador puede ser cualquier medio legible por ordenador que no es un medio de almacenamiento legible por ordenador y que puede comunicar, propagarotransportar un programa parasu usopor,oen relación con, un sistema, aparatoodispositivo de ejecución de instrucciones. A computer-readable signal medium may include a propagated data signal with computer-readable program code implemented therein, for example, in baseband or as part of a carrier wave. Such propagated signal may take a variety of forms, including, but not limited to, electromagnetic, optical, or any suitable combination thereof. A computer-readable signal medium may be any computer-readable medium that is not a computer-readable storage medium and that can communicate, propagate, or transport a program for use by, or in connection with, a system, apparatus, or instruction execution device.

Código de programa implementado en un medio legible por ordenador puede transmitirse usando cualquier medio apropiado, incluyendo, pero sin limitarse a, inalámbrico, cableado, fibra óptica, cable, RF, etc.,ocualquier combinación adecuada de los anteriores. El código de programa informático para llevar a cabo operaciones para aspectos de la presente invención puede escribirse en cualquier combinación de unoomás lenguajes de programación, incluyendo un lenguaje de programación funcionaloun lenguaje de programación orientado a objetos tal como Java(TM), Scala, C++, Pythonosimilares, y lenguajes de programación orientado a procedimientos convencional, tales como el lenguaje de programación “C”olenguajes de programación similares. El código de programa puede ejecutarse completamente en el ordenador del usuario, parcialmente en el ordenador del usuario, como paquete de software autónomo, parcialmente en el ordenador del usuario y parcialmente en un ordenador remoto,ocompletamente en el ordenador remoto, servidoroservidor virtualizado. En esta última situación, el ordenador remoto puede estar conectado al ordenador del usuario mediante cualquier tipo de red, incluyendo una red de área local (LAN)ouna red de área amplia (WAN),ola conexión puede realizarse con un ordenador externo (por ejemplo, a través de Internet usando un proveedor de servicios de Internet). Program code implemented on a computer-readable medium may be transmitted using any appropriate media, including, but not limited to, wireless, wired, fiber optic, cable, RF, etc., or any suitable combination thereof. Computer program code for performing operations for aspects of the present invention may be written in any combination of one or more programming languages, including a functional programming language, an object-oriented programming language such as Java(TM), Scala, C++, Python, or the like, and conventional procedural-oriented programming languages, such as the “C” programming language, or similar programming languages. The program code may execute entirely on the user's computer, partially on the user's computer as a stand-alone software package, partially on the user's computer and partially on a remote computer, or entirely on the remote computer, server, or virtualized server. In the latter situation, the remote computer may be connected to the user's computer via any type of network, including a local area network (LAN) or a wide area network (WAN), or the connection may be made to an external computer (for example, via the Internet using an Internet service provider).

A continuación se describen aspectos de la presente invención con referencia a ilustraciones de diagrama de flujo y/o diagramas de bloques de métodos, aparatos (sistemas) y productos de programa informático según realizaciones de la invención. Se entenderá que cada bloque de las ilustraciones de diagrama de flujo y/o diagramas de bloques, y combinaciones de bloques en las ilustraciones de diagrama de flujo y/o diagramas de bloques, puede implementarse mediante instrucciones de programa informático. Estas instrucciones de programa informático pueden proporcionarse a un procesador, en particular un microprocesadorounidad central de procesamiento (CPU),ounidad de procesamiento de gráficos (GPU), de un ordenador de propósito general, ordenador de propósito especialuotro aparato de procesamiento de datos programable para producir una máquina, de tal manera que las instrucciones, que se ejecutan por el procesador del ordenador, otro aparato de procesamiento de datos programableuotros dispositivos, crean medios para implementar las funciones/acciones especificadas en el bloqueobloques del diagrama de flujo y/o diagrama de bloques. Aspects of the present invention are described below with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the invention. It will be understood that each block of the flowchart illustrations and/or block diagrams, and combinations of blocks in the flowchart illustrations and/or block diagrams, may be implemented by computer program instructions. These computer program instructions may be provided to a processor, in particular a microprocessor, central processing unit (CPU), or graphics processing unit (GPU), of a general-purpose computer, special-purpose computer, or other programmable data processing apparatus for producing a machine, such that the instructions, being executed by the processor of the computer, other programmable data processing apparatus, or other devices, create means for implementing the functions/actions specified in the block blocks of the flowchart and/or block diagram.

Estas instrucciones de programa informático también pueden almacenarse en un medio legible por ordenador que puede dirigir un ordenador,uotro aparato de procesamiento de datos programableuotros dispositivos, para funcionar de una manera particular, de tal manera que las instrucciones almacenadas en el medio legible por ordenador producen un artículo de fabricación que incluye instrucciones que implementan la función/acción especificada en el bloqueobloques del diagrama de flujo y/o diagrama de bloques. These computer program instructions may also be stored on a computer-readable medium that can direct a computer, or other programmable data processing apparatus, or other device, to operate in a particular manner, such that the instructions stored on the computer-readable medium produce an article of manufacture that includes instructions that implement the function/action specified in the block blocks of the flowchart and/or block diagram.

Las instrucciones de programa informático también pueden cargarse en un ordenador, otro aparato de procesamiento de datos programableuotros dispositivos para provocar que se realice una serie de etapas de funcionamiento en el ordenador, otro aparato programableuotros dispositivos para producir un procedimiento implementado por ordenador de tal manera que las instrucciones que se ejecutan en el ordenadoruotro aparato programable proporcionan procedimientos para implementar las funciones/acciones especificadas en el bloqueobloques del diagrama de flujo y/o diagrama de bloques. Computer program instructions may also be loaded into a computer, other programmable data processing apparatus, or other device to cause a series of operating steps to be performed on the computer, other programmable apparatus, or other device to produce a computer-implemented procedure such that the instructions executed on the computer or other programmable apparatus provide procedures for implementing the functions/actions specified in the block blocks of the flowchart and/or block diagram.

El diagrama de flujo y los diagramas de bloques en las figuras ilustran la arquitectura, funcionalidad y funcionamiento de posibles implementaciones de sistemas, métodos y productos de programa informático según diversas realizaciones de la presente invención. Con respecto a esto, cada bloque en el diagrama de flujoodiagramas de bloques puede representar un módulo, segmentooporción de código, que comprende unaomás instrucciones ejecutables para implementar la(s) función/funciones lógica(s) especificada(s). También debe observarse que, en algunas implementaciones alternativas, las funciones indicadas en los bloques pueden producirse fuera del orden indicado en las figuras. Por ejemplo, dos bloques mostrados en sucesión pueden ejecutarse, en realidad, de manera sustancialmente simultánea,o Iosbloques pueden ejecutarse algunas veces en orden inverso, dependiendo de la funcionalidad implicada. También se observará que cada bloque deIosdiagramas de bloques y/o ilustraciones de diagrama de flujo, y combinaciones de bloques enIosdiagramas de bloques y/o ilustraciones de diagrama de flujo, pueden implementarse mediante sistemas basados en hardware de propósito especial que realizan las funcionesoacciones especificadas,ocombinaciones de instrucciones informáticas y hardware de propósito especial The flowchart and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of the present invention. In this regard, each block in the flowchart or block diagram may represent a module, segment, or portion of code, comprising one or more executable instructions for implementing the specified logical function(s). It should also be noted that, in some alternative implementations, the functions indicated in the blocks may occur out of the order indicated in the figures. For example, two blocks shown in succession may actually execute substantially simultaneously, or the blocks may sometimes execute in reverse order, depending on the functionality involved. It will also be noted that each block in the block diagrams and/or flowchart illustrations, and combinations of blocks in the block diagrams and/or flowchart illustrations, may be implemented by systems based on special-purpose hardware that perform the specified functions or actions, or combinations of computer instructions and special-purpose hardware.

En esta solicitud, “ imagen” puede referirse a un conjunto de datos que comprende información en dos, tresomás dimensiones espaciales.Los“datos de imágenes en 3D” pueden referirse a cualquier clase de conjunto de datos tridimensionales, por ejemplo valores de intensidad de vóxeles, definiciones de malla de superficie, etc. Ajustar el sistema de coordenadas de una más imágenes para coincidir con el de otra imagen de referencia que comprende (partes de) las mismas estructuras, se conoce de diversas maneras como registro de datosode imágenes, coincidencia, superposiciónoalineación. Salvo cuando el contexto indique lo contrario, estos términos (y otras palabras derivadas de estos términos) se usan de manera intercambiable. “(Conjunto de) parámetros de transformación” es, en este contexto, un término genérico para información sobre cómo hacer rotar, trasladar y/o ajustar a escala un conjunto de datos con el fin de superponerlo a otroorepresentar el conjunto de datos en un sistema de coordenadas alternativo; puede representarse mediante una única matriz, pero también, por ejemplo, por una colección de matrices, vectores y/o escalares. In this application, “image” may refer to a data set comprising information in two, three, or more spatial dimensions. “3D image data” may refer to any kind of three-dimensional data set, for example voxel intensity values, surface mesh definitions, etc. Adjusting the coordinate system of one or more images to match that of another reference image comprising (portions of) the same structures is variously known as data or image registration, matching, superposition, or alignment. Except where the context requires otherwise, these terms (and other words derived from these terms) are used interchangeably. “Transformation (parameter) set” is, in this context, a generic term for information on how to rotate, translate, and/or scale a data set in order to superimpose it on another data set or to represent the data set in an alternative coordinate system; it may be represented by a single matrix, but also, for example, by a collection of matrices, vectors, and/or scalars.

En un aspecto, la invención se refiere a un método implementado por ordenador tal como se define en la reivindicación 1. In one aspect, the invention relates to a computer-implemented method as defined in claim 1.

En una realización,Iospuntos de datos del conjunto de datos en 3D pueden representar vóxeles. En otra realización,Iospuntos de datos del conjunto de datos en 3D pueden definir puntos de una nube de puntosopuntos y la normal de una malla de superficie en 3D. In one embodiment, the data points in the 3D data set may represent voxels. In another embodiment, the data points in the 3D data set may define points in a point cloud or points and the normal of a 3D surface mesh.

En una realización, la primera red neuronal profunda en 3D puede estar configurada como una red neuronal profunda convolucional que está configurada para procesar datos en 3D voxelizados. In one embodiment, the first 3D deep neural network may be configured as a convolutional deep neural network that is configured to process voxelized 3D data.

En otra realización, la primera red neuronal profunda en 3D puede implementarse como una red basada en perceptrón multicapa (MLP) profunda, que puede procesar puntos de una nube de puntos de 3Douna malla de superficie en 3D. In another embodiment, the first 3D deep neural network may be implemented as a deep multi-layer perceptron (MLP)-based network, which may process points from a 3D point cloud or a 3D surface mesh.

En una realización,Iosparámetros de transformación pueden incluir parámetros de rotación, traslación y/o ajuste a escala. In one embodiment, the transformation parameters may include rotation, translation, and/or scaling parameters.

En una realización, la representación canónica del objeto en 3D puede ser una representación de vóxeles canónicaouna representación de malla en 3D canónica del objeto en 3D. In one embodiment, the canonical representation of the 3D object may be a canonical voxel representation or a canonical 3D mesh representation of the 3D object.

En una realización, la información de postura canónica puede incluir unoomás mapas de vóxeles para asociar (vincular) un vóxel de la representación de vóxeles con (a) una predicción de una posición del vóxel en el sistema de coordenadas canónicas. In one embodiment, the canonical pose information may include one or more voxel maps for associating (linking) a voxel of the voxel representation with (a) a prediction of a position of the voxel in the canonical coordinate system.

En una realización, el unoomás mapas de vóxeles pueden incluir un primer mapa de vóxeles en 3D que asocia (vincula) un vóxel con (a) una predicción de una primera coordenada canónicax 'del sistema de coordenadas canónicas, un segundo mapa de vóxeles en 3D que asocia (vincula) un vóxel con (a) una predicción de una segunda coordenada canónica y' del sistema de coordenadas canónicas y un tercer mapa de vóxeles en 3D que asocia (vincula) un vóxel con (a) una predicción de una tercera coordenada canónicaz 'del sistema de coordenadas canónicas In one embodiment, the one or more voxel maps may include a first 3D voxel map associating (linking) a voxel with (a) a prediction of a first canonical coordinate x' of the canonical coordinate system, a second 3D voxel map associating (linking) a voxel with (a) a prediction of a second canonical coordinate y' of the canonical coordinate system, and a third 3D voxel map associating (linking) a voxel with (a) a prediction of a third canonical coordinate z' of the canonical coordinate system.

En una realización, determinar una orientación de un eje del sistema de coordenadas canónicas puede comprender además: determinar para un vóxel de la representación de vóxeles un gradiente local en una coordenada canónica de uno del unoomás mapas de vóxeles en3 d ,representando el gradiente local un vector en el espacio definido por el primer sistema de coordenadas, en el que la orientación del vector representa una predicción de la orientación de un eje canónico y/o en el que la longitud del vector define un factor de ajuste a escala asociado con el eje canónico. In one embodiment, determining an orientation of an axis of the canonical coordinate system may further comprise: determining for a voxel of the voxel representation a local gradient in a canonical coordinate of one of the one or more 3D voxel maps, the local gradient representing a vector in the space defined by the first coordinate system, wherein the orientation of the vector represents a prediction of the orientation of a canonical axis and/or wherein the length of the vector defines a scaling factor associated with the canonical axis.

Por tanto, el método permite la determinación automatizada de una representación canónica del objeto en 3Dtal como una estructura dental en 3D. El método puede usarse para transformar diferentes modalidades de datos en 3D de un objeto en 3D en la postura canónica del objeto en 3D que puede usarse en el procedimiento de superposición de diferentes conjuntos de datos en 3D. Alternativa y/o adicionalmente, el método puede usarse como etapa de procesamiento previo antes de ofrecer un conjunto de datos en 3D a una entrada en 3D de unaomás redes neuronales profundas en 3D que están configuradas para segmentar el objeto en 3D, por ejemplo una estructura dental en 3D, y/o para determinar una taxonomía de objetos en 3D segmentados, por ejemplo dientes. Tal etapa de procesamiento previo aumenta sustancialmente la precisión de la segmentación y clasificación de los objetos en 3D dado que la precisión de tal red neuronal entrenada puede verse afectada si la postura del objeto en 3D representado por el conjunto de datos en 3D que se introduce en el sistema se desvía demasiado (especialmente con respecto a la orientación) de una postura normalizada. Thus, the method enables the automated determination of a canonical representation of the 3D object, such as a 3D dental structure. The method may be used to transform different 3D data modalities of a 3D object into the canonical pose of the 3D object, which may be used in the process of superimposing different 3D data sets. Alternatively and/or additionally, the method may be used as a preprocessing step before providing the 3D data set as a 3D input to one or more 3D deep neural networks that are configured to segment the 3D object, e.g., a 3D dental structure, and/or to determine a taxonomy of segmented 3D objects, e.g., teeth. Such a pre-processing stage substantially increases the accuracy of 3D object segmentation and classification since the accuracy of such a trained neural network may be affected if the pose of the 3D object represented by the 3D dataset being fed into the system deviates too much (especially with respect to orientation) from a normalized pose.

En un aspecto adicional, la invención se refiere a un método implementado por ordenador tal como se define en la reivindicación 4. In a further aspect, the invention relates to a computer-implemented method as defined in claim 4.

Por tanto, dosomás conjuntos de datos en 3D diferentes de estructuras dentales en 3D (que representan complejos dentomaxilofaciales), normalmente del mismo paciente, pueden superponerse transformando las coordenadas asociadas con los conjuntos de datos en 3D en coordenadas de un sistema de coordenadas canónicas. En un ejemplo típico, diferentes conjuntos de datos en 3D pueden ser diferentes exploraciones de (parte de) la dentición de un paciente. Habitualmente, los diferentes conjuntos de datos en 3D son al menos parcialmente solapantes, es decir que ambos conjuntos de datos tienen al menos parte de un elemento de objeto (por ejemplo, un dienteocorona de diente en el caso de una estructura dental en 3D) en común. Una red neuronal profunda en3 d ,por ejemplo una red neuronal convolucional en 3D, determina la postura canónica al menos para partes de un objeto en 3D. La red neuronal profunda en 3D procesa las coordenadas de bloque en bloque, con el fin de cumplir limitaciones computacionales. Entonces, un ordenador aplica procesamiento adicional para deducir la posición relativa del origen canónico y los ejes canónicos (direcciones y escala) para cada vóxel proporcionado a la red convolucional en 3D. Posteriormente, se deducen parámetros de transformación para superponeroalinear los dos conjuntos de datos de imágenes y se alinean los conjuntos de datos de imágenes en 3D usando dichos parámetros de transformación. El primer conjunto de datos de imágenes en 3D puede transformarse para alinearse con el segundo conjunto de datos de imágenes en 3D,oel segundo conjunto de datos de imágenes en 3D puede transformarse para alinearse con el primer conjunto de datos de imágenes en 3D,oambos conjuntos de datos de imágenes en 3D pueden transformarse de tal manera que se alinean en una tercera orientación diferente de cualquier orientación recibida. Thus, two or more different 3D data sets of 3D dental structures (representing dentomaxillofacial complexes), typically from the same patient, can be superimposed by transforming the coordinates associated with the 3D data sets into coordinates of a canonical coordinate system. In a typical example, different 3D data sets may be different scans of (part of) a patient's dentition. Typically, the different 3D data sets are at least partially overlapping, i.e. both data sets have at least part of an object element (e.g., a tooth or tooth crown in the case of a 3D dental structure) in common. A 3D deep neural network, e.g., a 3D convolutional neural network, determines the canonical pose at least for parts of a 3D object. The 3D deep neural network processes the coordinates block by block, in order to comply with computational constraints. A computer then applies further processing to infer the relative position of the canonical origin and canonical axes (directions and scale) for each voxel provided to the 3D convolutional network. Transformation parameters are then inferred to superimpose or align the two image data sets, and the 3D image data sets are aligned using those transformation parameters. The first 3D image data set may be transformed to align with the second 3D image data set, or the second 3D image data set may be transformed to align with the first 3D image data set, or both 3D image data sets may be transformed such that they align in a third orientation different from any received orientation.

La red neuronal profunda en 3D puede estar entrenada para ser muy robusta frente a variaciones en los conjuntos de datos en 3D porque la red neuronal profunda en 3D se entrena basándose en un gran número estructuras dentomaxilofaciales en 3D típicas en las que las estructuras muestran una gran variación espacial (traslación, rotación y/o ajuste a escala). Problemas relacionados con tamaño de memoria (limitado) de la red neuronal profunda en 3D pueden resolverse entrenando la red neuronal profunda basándose en submuestras (bloques) de representaciones de vóxeles. Para ello, una representación de vóxeles puede dividirse en bloques de vóxeles de un tamaño predeterminado antes de proporcionarse a la entrada de la red neuronal profunda en 3D. Una ventaja adicional de usar bloques es que la red puede determinar la postura canónica incluso de una cantidad limitada de datos, por ejemplo unos pocos dientes en lugar de una dentición completa. Debido al hecho de que el sistema de coordenadas canónicas se define con respecto a una norma conocida (predeterminada) para los objetos (por ejemplo, estructuras dentomaxilofaciales), se alinean el primer y segundo conjuntos de datos en 3D canónicos obtenidos, en el que la precisión puede depender del tiempo de entrenamiento, variación de muestra de entrenamiento y/o bloques disponibles por cada conjunto de datos recibido. The 3D deep neural network can be trained to be very robust to variations in 3D datasets because the 3D deep neural network is trained based on a large number of typical 3D dentomaxillofacial structures, where the structures show large spatial variation (translation, rotation, and/or scaling). Problems related to the (limited) memory size of the 3D deep neural network can be solved by training the deep neural network based on subsamples (blocks) of voxel representations. To do this, a voxel representation can be divided into voxel blocks of a predetermined size before being provided as input to the 3D deep neural network. An additional advantage of using blocks is that the network can determine the canonical pose even from a limited amount of data, for example, a few teeth instead of an entire dentition. Due to the fact that the canonical coordinate system is defined with respect to a known (predetermined) norm for the objects (e.g. dentomaxillofacial structures), the obtained first and second canonical 3D data sets are aligned, where the accuracy may depend on the training time, training sample variation and/or available blocks per received data set.

En esta divulgación, una postura canónica define una postura, que comprende una posición, una orientación y una escala, y es una postura que se define asignando posiciones y/u orientaciones predeterminadas a una parte identificable (preferiblemente) de manera fiable e inequívoca de un objeto en 3D, por ejemplo el arco dental el caso de una estructura dental en 3D. De una manera similar, un sistema de coordenadas canónicas puede definirse asignando el origen a una posición identificable de manera fiable e inequívoca con respecto a una parte identificable del objeto en 3D, y para definir los ejes de coordenadas de una manera sistemática, por ejemplo el eje de las x a lo largo de la tangente del punto de máxima curvatura del arco dental. Un sistema de coordenadas canónicas de este tipo puede definir un sistema de coordenadas predeterminado, normalizado, inequívoco, que es sistemático a lo largo de datos de objeto en 3D de un determinado tipo (por ejemplo, todos los datos de imágenes dentomaxilofaciales pueden definirse con respecto a la posición, orientación y escala típicas de estructuras dentomaxilofaciales identificables de manera fiable).S ufunción es garantizar que un objeto en 3D en diferentes conjuntos de datos de imágenes está en la misma posición, orientación y escala relativas. Tal función puede usarse en una multitud de aplicaciones en las que datos en 3D, tales como representaciones de vóxeles, nubes de puntosomallas en 3D, se procesan por una red neuronal entrenada. Las realizaciones en esta divulgación usan el conocimiento de que si dosomás objetos en 3D se transforman al sistema de coordenadas canónicas, los objetos en 3D también están alineados entres í.Además, usa el conocimiento de que una postura canónica de una estructura dentomaxilofacial puede determinarse automáticamente usando una red neuronal profunda en 3D, preferiblemente una red neuronal convolucional en 3D, evitando la necesidad de interacción humana. In this disclosure, a canonical pose defines a pose, comprising a position, an orientation, and a scale, and is a pose that is defined by assigning predetermined positions and/or orientations to a (preferably) reliably and unambiguously identifiable portion of a 3D object, e.g., the dental arch in the case of a 3D dental structure. In a similar manner, a canonical coordinate system may be defined by assigning the origin to a reliably and unambiguously identifiable position relative to an identifiable portion of the 3D object, and to define the coordinate axes in a systematic manner, e.g., the x-axis along the tangent of the point of maximum curvature of the dental arch. Such a canonical coordinate system can define a predetermined, normalized, unambiguous coordinate system that is systematic across 3D object data of a certain type (e.g., all dentomaxillofacial image data can be defined with respect to the typical position, orientation, and scale of reliably identifiable dentomaxillofacial structures). Its function is to ensure that a 3D object in different image data sets is at the same relative position, orientation, and scale. Such a function can be used in a multitude of applications where 3D data, such as voxel representations, point clouds, or 3D arrays, are processed by a trained neural network. Embodiments in this disclosure use the knowledge that if two or more 3D objects are transformed into the canonical coordinate system, the 3D objects are also aligned with each other. Furthermore, it uses the knowledge that a canonical pose of a dentomaxillofacial structure can be automatically determined using a 3D deep neural network, preferably a 3D convolutional neural network, avoiding the need for human interaction.

En una realización, la primera y segunda representaciones canónicas del primer y segundo objetos en 3D, preferiblemente la primera y segunda mallas de superficie en 3D, pueden ser mallas de superficie en 3D, incluyendo la determinación de una superposición además: segmentar la primera representación canónica del primer objeto en 3D en al menos una malla de superficie en 3D de un elemento de objeto en 3D, por ejemplo un primer elemento de objeto dental en 3D, del primer objeto en 3D y segmentar la segunda representación canónica del segundo objeto en 3D en al menos una malla de superficie en3 dde un segundo elemento de objeto en 3D, por ejemplo un segundo elemento dental en 3D, del segundo objeto en 3D; seleccionar al menos tres primeros y segundos puntos clave no colineales de la primera y segunda mallas de superficie en 3D, un punto clave (un punto de interés en la superficie de una malla de superficie en 3D); y, alinear el primer y segundo elementos dentales en 3D basándose en los primeros y segundos primeros y segundos puntos clave no colineales. En una realización, un punto clave puede definir un máximoomínimo local y/o global en la curvatura de superficie de la primera malla de superficie. In one embodiment, the first and second canonical representations of the first and second 3D objects, preferably the first and second 3D surface meshes, may be 3D surface meshes, the determining an overlay further including: segmenting the first canonical representation of the first 3D object into at least one 3D surface mesh of a 3D object element, for example a first 3D dental object element, of the first 3D object and segmenting the second canonical representation of the second 3D object into at least one surface mesh of a second 3D object element, for example a second 3D dental element, of the second 3D object; selecting at least three first and second non-collinear keypoints of the first and second 3D surface meshes, a keypoint (a point of interest on the surface of a 3D surface mesh); and aligning the first and second 3D dental elements based on the first and second non-collinear key points. In one embodiment, a key point may define a local and/or global maximum and minimum in the surface curvature of the first surface mesh.

En una realización, la primera y segunda representaciones canónicas del primer y segundo objetos en 3D pueden ser representaciones de vóxeles. En una realización, la determinación de una superposición puede incluir además: proporcionar al menos parte de la primera representación de vóxeles canónica del primer objeto en 3D y al menos parte de la segunda representación de vóxeles canónica del segundo objeto en 3D a la entrada de una segunda red neuronal profunda en 3D, estando la segunda red neuronal profunda en 3D entrenada para determinar parámetros de transformación, preferiblemente parámetros de rotación, traslación y/o ajuste a escala, para alinear la primera y segunda representaciones de vóxeles canónicas; alinear la primera y segunda representaciones canónicas del primer y segundo objetos en 3D basándose en los parámetros de transformación proporcionados por la salida de la segunda red neuronal profunda en 3D. In one embodiment, the first and second canonical representations of the first and second 3D objects may be voxel representations. In one embodiment, determining an overlap may further include: providing at least part of the first canonical voxel representation of the first 3D object and at least part of the second canonical voxel representation of the second 3D object as input to a second 3D deep neural network, the second 3D deep neural network being trained to determine transformation parameters, preferably rotation, translation, and/or scaling parameters, to align the first and second canonical voxel representations; aligning the first and second canonical representations of the first and second 3D objects based on the transformation parameters provided by the output of the second 3D deep neural network.

En una realización, determinar una superposición puede incluir además: determinar el procesador un volumen de solapamiento entre la representación canónica del primer objeto en 3D y la representación canónica del segundo objeto en 3D. In one embodiment, determining an overlap may further include: the processor determining a volume of overlap between the canonical representation of the first 3D object and the canonical representation of the second 3D object.

En una realización, determinar una superposición puede incluir además: determinar el procesador un primer volumen de interés que comprende primeros vóxeles de la primera representación canónica en el volumen de solapamiento; y, determinar un segundo volumen de interés que comprende segundos vóxeles de la segunda representación canónica en el volumen de solapamiento. In one embodiment, determining an overlap may further include: the processor determining a first volume of interest comprising first voxels of the first canonical representation in the overlapping volume; and, determining a second volume of interest comprising second voxels of the second canonical representation in the overlapping volume.

En una realización, el método puede comprender además: proporcionar el procesador primeros vóxeles contenidos en el primer volumen de interés (VOI) a la entrada de una tercera red neuronal profunda en 3D, estando la tercera red neuronal profunda en 3D entrenada para clasificar y segmentar vóxeles; y, recibir el procesador valores de activación para cada uno de los primeros vóxeles en el primer volumen de interés y/o para cada uno de los segundos vóxeles en el segundo volumen de interés a partir de la salida de la tercera red neuronal profunda en 3D, en el que un valor de activación de un vóxel representa la probabilidad de que el vóxel pertenezca a un elemento de objeto en 3D predeterminado, por ejemplo un elemento dental en 3D (tal como un diente) de una estructura dental en 3D; y, usar el procesador los valores de activación para determinar una primera y segunda representaciones de vóxeles de primer y segundo elementos de objetos en 3D en el primer y segundo VOI respectivamente. In one embodiment, the method may further comprise: the processor providing first voxels contained in the first volume of interest (VOI) as input to a third 3D deep neural network, the third 3D deep neural network being trained to classify and segment voxels; and, the processor receiving activation values for each of the first voxels in the first volume of interest and/or for each of the second voxels in the second volume of interest from the output of the third 3D deep neural network, wherein an activation value of a voxel represents the probability that the voxel belongs to a predetermined 3D object element, for example a 3D dental element (such as a tooth) of a 3D dental structure; and, the processor using the activation values to determine first and second voxel representations of first and second 3D object elements in the first and second VOIs respectively.

En una realización, el procesador puede usar la primera y segunda representaciones de vóxeles del primer y segundo elementos de objetos en 3D para determinar una primera y segunda mallas de superficie en 3D del primer y segundo elementos de objetos en 3D. In one embodiment, the processor may use the first and second voxel representations of the first and second 3D object elements to determine first and second 3D surface meshes of the first and second 3D object elements.

En una realización, el método puede comprender además: seleccionar el procesador al menos tres primeros y segundos puntos clave no colineales de la primera y segunda mallas de superficie en 3D, definiendo preferiblemente un punto clave un máximoomínimo local y/o global en la curvatura de superficie de la primera malla de superficie; y, alinear el procesador el primer y segundo elementos de objetos en 3D basándose en los primeros y segundos primeros y segundos puntos clave no colineales, preferiblemente usando un algoritmo de punto más cercano iterativo. In one embodiment, the method may further comprise: the processor selecting at least three first and second non-collinear key points of the first and second 3D surface meshes, preferably a key point defining a local and/or global maximum and minimum in the surface curvature of the first surface mesh; and, the processor aligning the first and second 3D object elements based on the first and second non-collinear key points, preferably using an iterative closest point algorithm.

En una realización, el método puede comprender además: proporcionar el procesador la primera representación de vóxeles del primer elemento dental en 3D y la segunda representación de vóxeles del segundo elemento dental en 3D a una cuarta red neuronal profunda en 3D, estando la cuarta red neuronal profunda en 3D entrenada para generar un valor de activación para cada una de una pluralidad de etiquetas de estructura candidatas, representando un valor de activación asociado con una etiqueta candidata la probabilidad de que una representación de vóxeles recibida por la entrada de la cuarta red neuronal profunda en 3D represente un tipo de estructura tal como se indica por la etiqueta de estructura candidata; recibir el procesador, a partir de la salida de la cuarta red neuronal profunda en 3D, una pluralidad de primeros y segundos valores de activación, seleccionar una primera etiqueta de estructura con el valor de activación más alto de la primera pluralidad de valores de activación y seleccionar una segunda etiqueta de estructura con el valor de activación más alto de la segunda pluralidad de valores de activación y asignar la primera y segunda etiquetas de estructura a la primera y segunda mallas de superficie en 3D respectivamente. In one embodiment, the method may further comprise: providing the processor the first voxel representation of the first 3D dental element and the second voxel representation of the second 3D dental element to a fourth 3D deep neural network, the fourth 3D deep neural network being trained to generate an activation value for each of a plurality of candidate structure labels, an activation value associated with a candidate label representing the probability that a voxel representation received by the input of the fourth 3D deep neural network represents a type of structure as indicated by the candidate structure label; the processor receiving, from the output of the fourth 3D deep neural network, a plurality of first and second activation values, selecting a first structure label with the highest activation value from the first plurality of activation values and selecting a second structure label with the highest activation value from the second plurality of activation values and assigning the first and second structure labels to the first and second 3D surface meshes respectively.

En una realización, el método puede comprender además: seleccionar el procesador al menos tres primeros y segundos puntos clave no colineales de la primera y segunda mallas de superficie en 3D, definiendo preferiblemente un punto clave un máximoomínimo local y/o global en la curvatura de superficie de la primera malla de superficie; etiquetar el procesador los primeros y segundos puntos clave basándose en la primera etiqueta de estructura asignada a la primera malla de superficie en 3D y la segunda etiqueta de estructura asignada a la segunda malla de superficie en 3D respectivamente; y, alinear el procesador el primer y segundo elementos dentales en 3D basándose en los primeros y segundos puntos clave y la primera y segunda etiquetas de estructura de la primera y segunda mallas de superficie en 3D respectivamente, preferiblemente usando un algoritmo de punto más cercano iterativo. In one embodiment, the method may further comprise: the processor selecting at least three non-collinear first and second key points of the first and second 3D surface meshes, preferably a key point defining a local and/or global maximum minimum in the surface curvature of the first surface mesh; the processor labeling the first and second key points based on the first structure label assigned to the first 3D surface mesh and the second structure label assigned to the second 3D surface mesh respectively; and, the processor aligning the first and second 3D dental elements based on the first and second key points and the first and second structure labels of the first and second 3D surface meshes respectively, preferably using an iterative closest point algorithm.

En un aspecto adicional, la invención se refiere a un método implementado por ordenador para entrenar una red neuronal profunda en 3D tal como se define en la reivindicación 12. In a further aspect, the invention relates to a computer-implemented method for training a 3D deep neural network as defined in claim 12.

En otro aspecto, la invención se refiere a un sistema informático tal como se define en la reivindicación 13. In another aspect, the invention relates to a computer system as defined in claim 13.

En aún otro aspecto, la invención se refiere a un sistema informático tal como se define en la reivindicación 14. En una realización, al menos una de la primera y segunda representaciones de vóxeles puede comprender datos de CBCT/TAC datos en los que los valores de vóxel representan radiodensidades. In yet another aspect, the invention relates to a computing system as defined in claim 14. In one embodiment, at least one of the first and second voxel representations may comprise CBCT/CT data wherein the voxel values represent radiodensities.

En una realización, al menos una de la primera y segunda representaciones de vóxeles puede comprender datos de superficie voxelizadosodatos de volumen obtenidos a partir de una superficie, preferiblemente datos de exploración de superficie por láseroluz estructurada, más preferiblemente datos de exploración intrabucal (IOS). In one embodiment, at least one of the first and second voxel representations may comprise voxelized surface data or volume data obtained from a surface, preferably laser-structured light surface scanning data, more preferably intraoral scanning (IOS) data.

En un aspecto adicional, la invención también se refiere a un producto de programa informático tal como se define en la reivindicación 15. In a further aspect, the invention also relates to a computer program product as defined in claim 15.

La invención se ilustrará adicionalmente con referencia a los dibujos adjuntos, que mostrarán esquemáticamente realizaciones según la invención. Se entenderá que la invención no se limita de ninguna manera a estas realizaciones específicas. El alcance de la invención ysusrealizaciones se define por las reivindicaciones adjuntas. The invention will be further illustrated with reference to the accompanying drawings, which schematically show embodiments according to the invention. It will be understood that the invention is in no way limited to these specific embodiments. The scope of the invention and its embodiments are defined by the appended claims.

Breve descripción de Ios dibujosBrief description of the drawings

La figura 1 representa un resumen esquemático de un sistema informático para la superposición de datos de imágenes dentomaxilofaciales en 3D usando aprendizaje profundo según una realización de la invención; Figure 1 represents a schematic overview of a computing system for superimposing 3D dentomaxillofacial image data using deep learning according to an embodiment of the invention;

la figura 2 representa un esquema de un sistema para determinar una postura canónica de una estructura dental en 3D según una realización de la invención; Figure 2 represents a schematic of a system for determining a canonical pose of a 3D dental structure according to an embodiment of the invention;

las figuras 3A-3D representan esquemas que ilustran un método de determinación de una postura canónica de una estructura dental en 3D según una realización de la invención; Figures 3A-3D represent schemes illustrating a method of determining a canonical pose of a 3D dental structure according to an embodiment of the invention;

las figuras 4A-C ilustran datos de entrenamiento y de predicción empleados por componentes de sistema, según una realización de la invención; Figures 4A-C illustrate training and prediction data employed by system components, in accordance with an embodiment of the invention;

la figura 5 representa un ejemplo de una arquitectura de red neuronal profunda en 3D para generar coordenadas canónicas según una realización de la invención; Figure 5 depicts an example of a 3D deep neural network architecture for generating canonical coordinates according to an embodiment of the invention;

la figura 6 representa un resumen esquemático de un componente de sistema para la segmentación de datos de imágenes dentomaxilofaciales en 3D según una realización de la invención; Figure 6 represents a schematic overview of a system component for segmenting 3D dentomaxillofacial image data according to an embodiment of the invention;

las figuras 7A y 7B representan ejemplos de una arquitectura de red neuronal profunda en 3D para la segmentación de datos de imágenes dentomaxilofaciales en 3D según una realización de la invención; Figures 7A and 7B depict examples of a 3D deep neural network architecture for segmentation of 3D dentomaxillofacial image data according to an embodiment of the invention;

la figura 8 representa un resumen esquemático de un componente de sistema para la taxonomía de datos de imágenes dentomaxilofaciales en 3D según una realización de la invención; Figure 8 represents a schematic summary of a system component for 3D dentomaxillofacial image data taxonomy according to an embodiment of the invention;

la figura 9 representa un ejemplo de una arquitectura de red neuronal profunda en 3D para la taxonomía de datos de imágenes dentomaxilofaciales en 3D según una realización de la invención; Figure 9 depicts an example of a 3D deep neural network architecture for 3D dentomaxillofacial image data taxonomy according to an embodiment of the invention;

las figuras 10A y 10B ilustran ejemplos de puntos clave generados; Figures 10A and 10B illustrate examples of generated keypoints;

la figura 11 representa un resumen esquemático de un componente de sistema para la determinación directa de parámetros de transformación para la superposición de representaciones de vóxeles según una realización de la invención; Figure 11 represents a schematic overview of a system component for the direct determination of transformation parameters for superimposing voxel representations according to an embodiment of the invention;

las figuras 12A y 12B representan datos recibidos y transformados tal como se emplean en, y resultantes de, un componente de sistema para la generación directa de parámetros de transformación según una realización de la invención; Figures 12A and 12B represent received and transformed data as used in, and resulting from, a system component for the direct generation of transformation parameters according to an embodiment of the invention;

la figura 13 representa un ejemplo de una arquitectura de red neuronal profunda en 3D para un componente de sistema para la deducción directa de parámetros de transformación según una realización de la Invención; Figure 13 represents an example of a 3D deep neural network architecture for a system component for direct derivation of transformation parameters according to an embodiment of the invention;

la figura 14 representa un diagrama de flujo de la lógica de sistema para la selección/determinación de los parámetros de transformación que van a aplicarse, según una realización de la invención; Figure 14 represents a flow diagram of the system logic for the selection/determination of the transformation parameters to be applied, according to an embodiment of the invention;

las figuras 15A y 15B representan resultados de transformación en dos conjuntos de datos de imágenes dentomaxilofaciales en 3D a modo de ejemplo a partir de métodos individuales según diversas realizaciones de la invención; y Figures 15A and 15B depict transformation results on two exemplary 3D dentomaxillofacial image data sets from individual methods according to various embodiments of the invention; and

la figura 16 es un diagrama de bloques que ilustra un sistema de procesamiento de datos a modo de ejemplo que puede usarse para ejecutar métodos y productos de software descritos en esta divulgación. Figure 16 is a block diagram illustrating an exemplary data processing system that can be used to execute methods and software products described in this disclosure.

Descripción detalladaDetailed description

En esta divulgación, se describen realizaciones de sistemas informáticos y métodos implementados por ordenador que usan redes neuronales profundas en 3D para una superposición completamente automatizada, rápida, precisa y robusta de diferentes conjuntos de datos en 3D que representan un objeto en 3D, tal como estructuras dentomaxilofaciales en 3D que se originan a partir de complejos dentomaxilofaciales.Losmétodos y sistemas permiten la superposición de al menos dos conjuntos de datos en 3D usando una red neuronal profunda en 3D que está entrenada para determinar una postura canónica para cada uno de los dos conjuntos de datos en 3D. La salida de la red neuronal entrenada se usa para determinar parámetros de transformación que se usan para determinar conjuntos de datos en 3D canónicos superpuestos, en los que un conjunto de datos en 3D canónico representa una representación canónica de objeto en 3D, tal como una estructura dentomaxilofacial. Pueden usarse redes de aprendizaje profundo en 3D y/o esquemas de superposición adicionales para mejorar adicionalmente la precisión de la superposición.Lossistemas y métodos se describirán en más detalle a continuación en el presente documento. In this disclosure, embodiments of computer systems and computer-implemented methods are described that use 3D deep neural networks for fully automated, fast, accurate, and robust superposition of different 3D data sets representing a 3D object, such as 3D dentomaxillofacial structures originating from dentomaxillofacial complexes. The methods and systems enable superposition of at least two 3D data sets using a 3D deep neural network that is trained to determine a canonical pose for each of the two 3D data sets. The output of the trained neural network is used to determine transformation parameters that are used to determine superimposed canonical 3D data sets, wherein one canonical 3D data set represents a canonical representation of a 3D object, such as a dentomaxillofacial structure. Additional 3D deep learning networks and/or overlay schemes can be used to further improve the overlay accuracy. The systems and methods will be described in more detail later in this paper.

La figura 1 representa un esquema de alto nivel de un sistema informático para la superposición automatizada de datos de imágenes que representan un objeto en 3D, en este ejemplo un complejo dentomaxilofacial en 3D, usando aprendizaje profundo según una realización de la invención. El sistema informático 102 puede comprender al menos dos entradas para recibir al menos dos conjuntos de datos en 3D, por ejemplo un primer conjunto de datos 106 que comprende un primer objeto en 3D, tal como una primera estructura dental en 3D, asociado con un primer sistema de coordenadas y un segundo conjunto de datos 108 que comprende un segundo objeto en 3D, tal como una segunda estructura dental en 3D, asociado con un segundo sistema de coordenadas.Losconjuntos de datos en 3D pueden representar una primera estructura dental en 3D y una segunda estructura dental en 3D que se originan a partir de un complejo dentomaxilofacial en 3D 104, preferiblemente del mismo paciente. El primer y segundo objetos en 3D pueden tener al menos una parte en común, por ejemplo una parte dental en común en el caso de una estructura dental en 3D.Losconjuntos de datos en 3D pueden generarse mediante diferentes dispositivos de exploración, por ejemplo diferentes dispositivos de exploración de CBCT/TAC y/o diferentes dispositivos de exploración óptica. Tales dispositivos de exploración pueden incluir un dispositivo de exploración de TAC de haz cónico, dispositivo de exploración de TAC de haz en abanico, un dispositivo de exploración óptica tal como un dispositivo de exploración intrabucal, etc. Figure 1 depicts a high-level schematic of a computing system for automated superposition of image data representing a 3D object, in this example a 3D dentomaxillofacial complex, using deep learning according to one embodiment of the invention. The computing system 102 may comprise at least two inputs for receiving at least two 3D data sets, for example a first data set 106 comprising a first 3D object, such as a first 3D dental structure, associated with a first coordinate system and a second data set 108 comprising a second 3D object, such as a second 3D dental structure, associated with a second coordinate system. The 3D data sets may represent a first 3D dental structure and a second 3D dental structure originating from a 3D dentomaxillofacial complex 104, preferably from the same patient. The first and second 3D objects may have at least one part in common, for example, a common tooth part in the case of a 3D dental structure. The 3D data sets may be generated by different scanning devices, for example, different CBCT/CT scanning devices and/or different optical scanning devices. Such scanning devices may include a cone beam CT scanning device, a fan beam CT scanning device, an optical scanning device such as an intraoral scanning device, etc.

En el caso de un dispositivo de exploración de CBCT, el conjunto de datos en 3D puede incluir una representación de vóxeles de datos de radiografía generados por un dispositivo de exploración de CBCT. La representación de vóxeles puede tener un formato predeterminado, por ejemplo el formatoDICo M oun derivado del mismo. La representación de vóxeles define un espacio de vóxeles en 3D de un tamaño predeterminado, por ejemplo un espacio de400x400x400vóxeles en el que cada vóxel está asociado con un determinado volumen y la posición de los vóxeles en el espacio de vóxeles puede definirse basándose en un sistema de coordenadas predeterminado. In the case of a CBCT scanning device, the 3D data set may include a voxel representation of X-ray data generated by a CBCT scanning device. The voxel representation may have a predetermined format, for example, the DICo M format or a derivative thereof. The voxel representation defines a 3D voxel space of a predetermined size, for example, a 400x400x400 voxel space, where each voxel is associated with a particular volume, and the position of the voxels in the voxel space may be defined based on a predetermined coordinate system.

Alternativamente, en el caso de un dispositivo de exploración óptica, el conjunto de datos en 3D puede comprender datos de malla de superficie, por ejemplo un conjunto de puntosovértices en un espacio en 3D conectados mediante bordes que definen un conjunto de caras, definiendo el conjunto de caras asuvez una superficie en el espacio en 3D. El conjunto de datos en 3D también puede comprender datos de nube de puntos que representan puntos en un espacio en 3D definido por un sistema de coordenadas en 3D. En una realización, puede generarse un conjunto de datos en 3D que representa una malla de superficie usando un dispositivo de exploración intrabucal, en el que el conjunto de datos en3 dpuede tener un formato predeterminado, por ejemplo el formato STLoun derivado del mismo. También en este caso, la representación de malla de superficie en 3D define un espacio en 3D de un tamaño predeterminado en el que la posición de los puntos y/o vértices se basan en un sistema de coordenadas predeterminado (que difiere del sistema de coordenadas usado para el otro conjunto de datos en 3D). Alternatively, in the case of an optical scanning device, the 3D data set may comprise surface mesh data, for example a set of points or vertices in a 3D space connected by edges defining a set of faces, the set of faces in turn defining a surface in 3D space. The 3D data set may also comprise point cloud data representing points in a 3D space defined by a 3D coordinate system. In one embodiment, a 3D data set representing a surface mesh may be generated using an intraoral scanning device, wherein the 3D data set may have a predetermined format, for example the STLoun format derived therefrom. Again, the 3D surface mesh representation defines a 3D space of a predetermined size in which the position of the points and/or vertices are based on a predetermined coordinate system (which differs from the coordinate system used for the other 3D data set).

En algunas realizaciones, una malla de superficie en 3D de una estructura dental en 3D puede segmentarse para dar elementos dentales en 3D individuales segmentados (es decir, separados), por ejemplo coronas de dientes y superficies que pertenecen a la encía. Segmentar mallas de superficie en 3D para dar mallas de superficie en 3D individuales es una técnica bien conocida en la técnica, tal como se describe, por ejemplo, por WU Ket al, Toothsegmentation on dental meshes using morphologic skeleton.Comput Graph, febrero de 2014,vo I.38, 199-211. In some embodiments, a 3D surface mesh of a 3D tooth structure may be segmented into segmented (i.e., separate) individual 3D tooth elements, e.g., tooth crowns and surfaces belonging to the gum. Segmenting 3D surface meshes into individual 3D surface meshes is a technique well known in the art, as described, e.g., by W.U. Ket al., Toothsegmentation on dental meshes using morphologic skeleton. Comput Graph, February 2014, vol. I.38, 199-211.

Losconjuntos de datos en 3D pueden generarse (aproximadamente) al mismo tiempooen puntos en tiempo diferentes (exploraciones preoperatorias y posoperatorias usando sistemas de exploración igualesodiferentes), enIosque la representación del complejo dentomaxilofacial en 3D puede definirse basándose en un sistema de coordenadas en 3D tal como se define mediante el software de procesamiento de imágenes de modo que la orientación y/o escala de las estructuras dentomaxilofaciales en 3D en el complejo dentomaxilofacial en 3D deIosdiferentes conjuntos en 3D pueden variar sustancialmente. El complejo dentomaxilofacial en 3D puede incluir estructuras dentomaxilofaciales en 3D, en resumen estructuras dentales en 3D tales como maxilar, dientes, encías, etc. The 3D data sets may be generated (approximately) at the same time or at different points in time (pre-operative and post-operative scans using the same or different scanning systems), where the representation of the 3D dentomaxillofacial complex may be defined based on a 3D coordinate system as defined by image processing software such that the orientation and/or scale of the 3D dentomaxillofacial structures in the 3D dentomaxillofacial complex of the different 3D sets may vary substantially. The 3D dentomaxillofacial complex may include 3D dentomaxillofacial structures, in short 3D dental structures such as jaw, teeth, gums, etc.

Grandes variaciones enIosconjuntos de datos en 3D (en cuanto a formatos/modalidades de datos, sistemas de coordenadas, posición y orientación de la estructura en 3D, calidad deIosdatos de imágenes, cantidades diferentes de solapamiento entre las estructuras presentes, etc.) que pueden ofrecerse a la entrada del sistema informático, hacen que el problema de una superposición automatizada precisa de las estructuras dentales en 3D (es decir superposición de las estructuras dentales en 3D sin ninguna intervención humana) sea una tarea no insignificante.Lossistemas de superposición conocidos no pueden abordar estos problemas de una manera fiable y robusta. Large variations in the 3D data sets (in terms of data formats/modalities, coordinate systems, position and orientation of the 3D structure, quality of image data, different amounts of overlap between the structures present, etc.) that can be offered as input to the computer system make the problem of accurate automated superimposition of 3D dental structures (i.e. superimposition of 3D dental structures without any human intervention) a not insignificant task. Known superimposition systems cannot address these problems in a reliable and robust manner.

Con el fin de abordar este problema, el sistema de la figura 1 puede incluir una primera red neuronal profunda en 3D entrenada 112 que está configurada para recibir una representación de vóxeles de diferentes conjuntos de datos en 3D que se originan a partir de un complejo dentomaxilofacial en 3D, preferiblemente de un paciente. La red neuronal profunda en 3D está entrenada para determinar una postura canónica en un sistema de coordenadas canónicas de una estructura dental en 3D en el complejo dentomaxilofacial en 3D, en la que el sistema de coordenadas canónicas define un sistema de coordenadas con respecto a una posición en una estructura dentomaxilofacial común, por ejemplo una posición en el arco dental. La red neuronal profunda en 3D está configurada para determinar primeros parámetros de transformación 114 (en cuanto a traslación, rotación y/o ajuste a escala) para una representación de vóxeles de un conjunto de datos en 3D tal como se codifican en la memoria de la red neuronal profunda en 3D.Losprimeros parámetros de transformación se determinan basándose en información de traslación, orientación y/o ajuste a escala de características dentomaxilofaciales típicas tal como se codifican en la red neuronal profunda en 3D y se usan para transformar coordenadas basadas en el primer sistema de coordenadas del primer conjunto de datos en 3D y coordenadas del segundo sistema de coordenadas basadas en el segundo conjunto de datos en 3D para dar coordenadas basadas en un sistema de coordenadas canónicas. El primer y segundo conjuntos de datos en 3D así obtenidos representan una primera y segunda estructuras dentales en 3D superpuestas en el sistema de coordenadas canónicas. In order to address this problem, the system of Figure 1 may include a first trained 3D deep neural network 112 that is configured to receive a voxel representation of different 3D data sets originating from a 3D dentomaxillofacial complex, preferably from a patient. The 3D deep neural network is trained to determine a canonical pose in a canonical coordinate system of a 3D dental structure in the 3D dentomaxillofacial complex, wherein the canonical coordinate system defines a coordinate system with respect to a position in a common dentomaxillofacial structure, for example a position in the dental arch. The 3D deep neural network is configured to determine first transformation parameters 114 (regarding translation, rotation, and/or scaling) for a voxel representation of a 3D data set as encoded in the memory of the 3D deep neural network. The first transformation parameters are determined based on translation, orientation, and/or scaling information of typical dentomaxillofacial features as encoded in the 3D deep neural network and are used to transform coordinates based on the first coordinate system of the first 3D data set and coordinates of the second coordinate system based on the second 3D data set to give coordinates based on a canonical coordinate system. The first and second 3D data sets thus obtained represent first and second 3D dental structures superimposed on the canonical coordinate system.

En el caso en el que el primer y/o el segundo conjuntos de datos en 3D son datos de exploración óptica, estos datos pueden procesarse previamente antes de ofrecerse a la entrada de la primera red neuronal profunda en 3D. En este caso, el procesamiento previo puede incluir transformarIosdatos de exploración en 3D, por ejemplo una malla en 3D, en una representación de vóxeles de modo que puede procesarse por la red neuronal profunda en 3D. Por ejemplo, una malla de superficie en 3D puede voxelizarse, por ejemplo, de tal manera que un espacio de vóxeles en 3D que representa al menos el mismo volumen en el mundo real que el comprendido dentro deIosdatos de malla de superficie en 3D. Por ejemplo, tal malla de superficie en 3D voxelizada puede tener una representación de vóxeles binaria que tiene valores de vóxel por defecto de un primer valor (por ejemplo “0”) en el que ninguna superficie deIosdatos de malla coincide con el vóxel representativo, y valores de vóxel de un segundo valor (por ejemplo “1”) en el queIosdatos de malla coinciden. Cuando una malla de superficie en 3D recibida define una estructura de superficie en 3D “abierta”, la estructura puede “cerrarse” con superficies adicionales. La voxelización puede realizarse como anteriormente, en la que vóxeles ubicados dentro de un volumen encerrado también pueden tener un segundo valor (por ejemplo “1”). De esta manera, se forma una representación de vóxeles de un volumen. La resolución (tamaño de un vóxel) puede seleccionarse de manera apropiada con el fin de proporcionar resultados precisos a lo largo de todo el sistema, al tiempo que todavía se respetan requisitos teniendo en cuenta, por ejemplo, la memoria disponible y el procesamiento. In the case where the first and/or second 3D data set is optical scanning data, such data may be preprocessed before being provided as input to the first 3D deep neural network. In this case, the preprocessing may include transforming the 3D scanning data, for example a 3D mesh, into a voxel representation such that it can be processed by the 3D deep neural network. For example, a 3D surface mesh may be voxelized, for example, such that a 3D voxel space represents at least the same volume in the real world as that comprised within the 3D surface mesh data. For example, such a voxelized 3D surface mesh may have a binary voxel representation having default voxel values of a first value (e.g., “0”) at which no surface in the mesh data matches the representative voxel, and voxel values of a second value (e.g., “1”) at which the mesh data matches. Where a received 3D surface mesh defines an “open” 3D surface structure, the structure may be “closed” with additional surfaces. Voxelization may be performed as above, where voxels located within an enclosed volume may also have a second value (e.g., “1”). In this manner, a voxel representation of a volume is formed. The resolution (size of a voxel) may be appropriately selected in order to provide accurate results throughout the system, while still respecting requirements considering, for example, available memory and processing.

En una realización, puede usarse una red neuronal profunda en 3D que puede de determinar la postura canónica de datos de exploración óptica (una nube de puntos de 3D) basándose directamente enIosdatos de nube de puntos. Un ejemplo de una red de este tipo es una red neuronal profunda basada en perceptrón multicapa (MLP). Las arquitecturas de red neuronal profunda de MPL incluyen PointNet (Qi, C.R.,et al.:Pointnet: Deep learning on point sets for 3d classication and segmentation.Proc. Computer Vision and Pattern Recognition (CVPR), IEEE 1(2), 4 (2017))oPointCNN (Liet al. “PointCNN: convolution on %-transformed points",arXiv:1801.07791v 5del 5 de noviembre de2018, que va a publicarse en Neural Information Processing Systems (NIPS) 2018). Estas redes neuronales profundas de MLP pueden procesar directamente puntos de una nube de puntos. Tales redes neuronales pueden entrenarse para determinar la información de postura canónica basándose enIosdatos de exploración óptica tal como se describe en esta solicitud. En efecto, esto conducirá a poder omitir una etapa de voxelización de este tipo como etapa de procesamiento previo, conducirá a un procesamiento más rápido y a la capacidad de resultados de precisión superior dependiendo de la granularidad deIosdatos de nube de puntos. In one embodiment, a 3D deep neural network can be used that can determine the canonical pose of optical scanning data (a 3D point cloud) based directly on the point cloud data. An example of such a network is a multilayer perceptron (MLP)-based deep neural network. MLP deep neural network architectures include PointNet (Qi, C.R., et al.: Pointnet: Deep learning on point sets for 3d classication and segmentation. Proc. Computer Vision and Pattern Recognition (CVPR), IEEE 1(2), 4 (2017)) or PointCNN (Li et al. “PointCNN: convolution on %-transformed points”, arXiv:1801.07791v 5, November 5, 2018, to be published in Neural Information Processing Systems (NIPS) 2018). These MLP deep neural networks can directly process points from a point cloud. Such neural networks can be trained to determine canonical pose information based on the optical scan data as described in this application. In effect, this will lead to being able to skip such a voxelization step as a preprocessing step, lead to faster processing and the ability to deliver higher accuracy results depending on the granularity of the point cloud data.

Una etapa de procesamiento previo adicional puede incluir dividir el primer y segundo conjuntos de datos en 3D en bloques de un tamaño predeterminado. El tamaño de bloque puede depender del tamaño del espacio de entrada en 3D de la primera red neuronal profunda en 3D y del espacio de memoria de la red neuronal profunda en 3D. An additional preprocessing step may include dividing the first and second 3D data sets into blocks of a predetermined size. The block size may depend on the size of the 3D input space of the first 3D deep neural network and the memory space of the 3D deep neural network.

En una realización, el ordenador puede determinar un primer y segundo conjuntos de datos canónicos superpuestos determinando primeros parámetros de transformación para el primer conjunto de datos en 3D y primeros parámetros de transformación para el segundo conjunto de datos en 3D y aplicando los parámetros de transformación así determinados al primer y segundo conjuntos de datos en 3D. La red neuronal profunda en 3D puede entrenarse para ser muy robusta frente a grandes variaciones en los conjuntos de datos en 3D porque la red neuronal profunda en 3D se entrena basándose en un gran número de estructuras dentomaxilofaciales en 3D típicas en las que las estructuras muestran una gran variación espacial (traslación, rotación y/o ajuste a escala). Cuestiones relacionadas con tamaño de memoria (limitado) de la red neuronal profunda en 3D se resuelven entrenando la red neuronal profunda basándose en submuestras (bloques) de representaciones de vóxeles. Para ello, en primer lugar se divide una representación de vóxeles en bloques de tamaños predeterminados antes de ofrecerse a la entrada de la red neuronal profunda en 3D. Debido al hecho de que el sistema de coordenadas canónicas se define con respecto a una norma conocida (predeterminada) para estructuras dentomaxilofaciales, se alinean el primer y segundo conjuntos de datos en 3D canónicos obtenidos, en el que la precisión puede depender del tiempo de entrenamiento, variación de muestra de entrenamiento y/o bloques disponibles por cada conjunto de datos. Adicionalmente, tal como se describe en más detalle a continuación, puede usarse una arquitectura de red específica para codificar grandes cantidades de información de imágenes en 3D teniendo en cuenta la variación espacial. In one embodiment, the computer may determine first and second overlapping canonical data sets by determining first transformation parameters for the first 3D data set and first transformation parameters for the second 3D data set and applying the thus determined transformation parameters to the first and second 3D data sets. The 3D deep neural network may be trained to be very robust to large variations in the 3D data sets because the 3D deep neural network is trained based on a large number of typical 3D dentomaxillofacial structures where the structures exhibit large spatial variation (translation, rotation, and/or scaling). Issues related to the (limited) memory size of the 3D deep neural network are addressed by training the deep neural network based on subsamples (blocks) of voxel representations. To achieve this, a voxel representation is first divided into blocks of predetermined sizes before being offered as input to the 3D deep neural network. Because the canonical coordinate system is defined relative to a known (predetermined) norm for dentomaxillofacial structures, the first and second canonical 3D datasets obtained are aligned, where accuracy may depend on training time, training sample variation, and/or available blocks per dataset. Additionally, as described in more detail below, a specific network architecture can be used to encode large amounts of 3D image information while taking spatial variation into account.

En algunos casos, puede resultar ventajoso refinar adicionalmente la precisión de la superposición de conjuntos de datos en 3D canónicos. Por tanto, en algunas realizaciones, puede obtenerse un refinamiento adicional de la superposición usando representaciones de vóxeles canónicas 118 (parcialmente solapantes) del primer y segundo conjuntos de datos en 3D y evaluando la superposición de las representaciones de vóxeles canónicas usando una segunda red de aprendizaje profundo en 3D adicional. En estas realizaciones, el ordenador puede determinar el solapamiento entre los volúmenes definidos por las estructuras dentales en 3D representadas por el primer y segundo conjuntos de datos canónicos superpuestos. En este caso, el solapamiento puede definirse como el volumen dentro del espacio definido por el sistema de coordenadas canónicas que es común a las estructuras dentales en 3D del primer y segundo conjuntos de datos. El solapamiento puede usarse para seleccionar un volumen de interés (VOI) en la representación de vóxeles canónica del primer y segundo conjuntos de datos en 3D. De esta manera, puede seleccionarse un primer VOI de la representación de vóxeles canónica del primer conjunto de datos en 3D y un segundo VOI de la representación de vóxeles canónica del segundo conjunto de datos en 3D parasuintroducción en la segunda red neuronal profunda en 3D 120, que está configurada para determinar segundos parámetros de transformación 122. Esta red neuronal profunda en 3D puede denominarse red neuronal profunda de transformación directa dado que la red neuronal genera parámetros de transformación en respuesta a proporcionar una representación de vóxeles canónica a la entrada de la red neuronal. Aplicar los segundos parámetros de transformación a cada uno del primer y segundo conjuntos de datos en 3D canónico (tal como se obtienen basándose en los primeros parámetros de transformación) puede mejorar adicionalmente la precisión de la superposición 116. In some cases, it may be advantageous to further refine the accuracy of the superposition of canonical 3D data sets. Thus, in some embodiments, further refinement of the superposition may be obtained by using (partially overlapping) canonical voxel representations 118 of the first and second 3D data sets and evaluating the overlap of the canonical voxel representations using a second additional 3D deep learning network. In these embodiments, the computer may determine the overlap between the volumes defined by the 3D dental structures represented by the overlapping first and second canonical data sets. In this case, the overlap may be defined as the volume within the space defined by the canonical coordinate system that is common to the 3D dental structures of the first and second data sets. The overlap may be used to select a volume of interest (VOI) in the canonical voxel representation of the first and second 3D data sets. In this manner, a first VOI from the canonical voxel representation of the first 3D data set and a second VOI from the canonical voxel representation of the second 3D data set may be selected for input to the second 3D deep neural network 120, which is configured to determine second transformation parameters 122. This 3D deep neural network may be referred to as a forward transformation deep neural network since the neural network generates transformation parameters in response to providing a canonical voxel representation as input to the neural network. Applying the second transformation parameters to each of the first and second canonical 3D data sets (as obtained based on the first transformation parameters) may further improve the accuracy of the superposition 116.

Alternativa y/o adicionalmente, en algunas realizaciones, puede obtenerse un refinamiento adicional de la superposición usando las representaciones de vóxeles canónicas del primer y segundo conjuntos de datos en 3D y evaluando la superposición de las representaciones de vóxeles canónicas basándose en un algoritmo de superposición analítico. En particular, en esta realización, pueden determinarse representaciones de vóxeles canónicas 124 de los primeros y segundos datos en 3D. También en este caso, puede usarse el solapamiento entre los volúmenes definidos por las estructuras dentales en 3D representadas por el primer y segundo conjuntos de datos canónicos superpuestos para determinar unoomás primeros VOl de la representación de vóxeles canónica del primer conjunto de datos en 3D y unoomás segundos VOl de la representación de vóxeles canónica del segundo conjunto de datos en 3D, que pueden proporcionarse a la entrada a la entrada de una tercera red neuronal profunda en 3D 126. Esta red neuronal profunda está configurada para clasificar vóxeles de un VOI de una representación de vóxeles de una estructura dental en 3D y formar representaciones de vóxeles de diferentes elementos dentales en 3D segmentados, por ejemplo diente, hueso maxilar, encía, etc. Adicionalmente, en algunas realizaciones, puede aplicarse una etapa de procesamiento posterior en la que se genera un modelo en 3D segmentado de un elemento dental en 3D segmentado basándose en vóxeles clasificados de una estructura dental en 3D segmentada. Adicionalmente, en algunas realizaciones, puede usarse una cuarta red neuronal profunda en 3D adicional para etiquetar representaciones de vóxeles de elementos dentales en 3D segmentados según un esquema de taxonomía conocido, por ejemplo que identifica de manera única y sistemática dientes individuales. Alternatively and/or additionally, in some embodiments, further refinement of the superposition may be obtained by using canonical voxel representations of the first and second 3D data sets and evaluating the superposition of the canonical voxel representations based on an analytical superposition algorithm. In particular, in this embodiment, canonical voxel representations 124 of the first and second 3D data may be determined. Also in this case, the overlap between the volumes defined by the 3D dental structures represented by the first and second overlapping canonical data sets may be used to determine one or more first VOIs of the canonical voxel representation of the first 3D data set and one or more second VOIs of the canonical voxel representation of the second 3D data set, which may be provided as input to a third 3D deep neural network 126. This deep neural network is configured to classify voxels of a VOI of a voxel representation of a 3D dental structure and form voxel representations of different segmented 3D dental elements, e.g., tooth, jawbone, gum, etc. Additionally, in some embodiments, a post-processing step may be applied in which a segmented 3D model of a segmented 3D dental element is generated based on the classified voxels of a segmented 3D dental structure. Additionally, in some embodiments, a fourth additional 3D deep neural network may be used to label voxel representations of segmented 3D dental elements according to a known taxonomy scheme, e.g., that uniquely and systematically identifies individual teeth.

Losprocedimientos de segmentación y taxonomía pueden beneficiarse de la información derivada a partir de la primera red neuronal profunda en 3D. En particular, la determinación y la aplicación de un primer conjunto de parámetros de transformación inicial mediante la primera red neuronal profunda en 3D puede dar como resultado una representación de vóxeles canónica de un conjunto de datos en 3D, lo cual permite resultados de segmentación y/o taxonomía más precisos dado que la precisión de las redes neuronales profundas en 3D usadas para la segmentación y/o taxonomía es relativamente sensible a grandes variaciones rotacionales de los datos de entrada en 3D. Segmentation and taxonomy procedures can benefit from the information derived from the first 3D deep neural network. In particular, determining and applying a first set of initial transformation parameters by the first 3D deep neural network can result in a canonical voxel representation of a 3D dataset, allowing for more accurate segmentation and/or taxonomy results since the accuracy of 3D deep neural networks used for segmentation and/or taxonomy is relatively sensitive to large rotational variations of the 3D input data.

Además, tal como se explicó anteriormente, la cantidad de solapamiento puede usarse por la tercera red neuronal profunda en 3D para determinar en qué volumen del espacio definido por el sistema de coordenadas canónicas, están presentes estructuras solapantes (por ejemplo elementos dentales en 3D) del primer y segundo conjuntos de datos en 3D que son idénticas. La identificación de volúmenes (VOl) que comprenden estructuras solapantes en el primer y segundo conjuntos de datos en 3D puede usarse para determinarIosdenominados puntos clave.Lospuntos clave se usan para marcar las estructuras iguales (solapantes) dentro deIosdos conjuntos de datos diferentes. Por tanto, un conjunto de puntos clave identifica la posición exacta en 3D de múltiples puntos en el primer conjunto de datos en 3D, que están vinculados a un conjunto asociado de puntos clave en el segundo conjunto de datos en 3D. Un algoritmo de minimización de distancia puede usarIospuntos clave para calcularIosterceros parámetros de transformación 130 apropiados para una superposición precisa del primer y segundo conjuntos de datos en 3D. Furthermore, as explained above, the amount of overlap may be used by the third 3D deep neural network to determine in which volume of the space defined by the canonical coordinate system overlapping structures (e.g., 3D dental elements) from the first and second 3D data sets that are identical are present. The identification of volumes (VOl) comprising overlapping structures in the first and second 3D data sets may be used to determine so-called keypoints. The keypoints are used to mark the same (overlapping) structures within the two different data sets. Thus, a set of keypoints identifies the exact 3D position of multiple points in the first 3D data set, which are linked to an associated set of keypoints in the second 3D data set. A distance minimization algorithm may use the keypoints to calculate appropriate third transformation parameters 130 for accurate superposition of the first and second 3D data sets.

En una realización, el ordenador puede usar el primer y segundo conjuntos de datos en 3D canónicos superpuestos (tal como se determina basándose enIosprimeros parámetros de transformación y, opcionalmente,Iossegundos y/o terceros parámetros de transformación) para crear un único conjunto de datos en 3D enfocado 132 en un formato de datos predeterminado. La fusión de conjuntos de datos en 3D se conoce en la técnica, se hace referencia, por ejemplo, al artículo de JUNG Wet al, Combining volumetric dental CT and optlcal sean data for teeth modellng,Comput Aided Des, octubre de 2015,vo I.67-68, 24-37. In one embodiment, the computer may use the overlapping first and second canonical 3D data sets (as determined based on the first transformation parameters and optionally the second and/or third transformation parameters) to create a single focused 3D data set 132 in a predetermined data format. Fusing 3D data sets is known in the art, reference is made, for example, to the article by JUNG Wet et al., Combining volumetric dental CT and optical sonic data for teeth modeling, Computer Aided Design, October 2015, vol. I, 67-68, 24-37.

La figura 2 representa un esquema de un sistema para determinar una postura canónica de una estructura dental en 3D en un sistema de coordenadas canónicas según una realización de la invención. El sistema 200 comprende al menos una red neuronal profunda en 3D 222 que tiene una entrada y una salida. El sistema puede incluir un módulo de entrenamiento 201 para entrenar la red neuronal profunda en 3D basándose en un conjunto de entrenamiento 212. Adicionalmente, el sistema puede incluir un módulo de inferencia 203 que está configurado para recibir un conjunto de datos en 3D que representa un objeto en 3D en un determinado sistema de coordenadas y para determinar parámetros de transformación para transformar coordenadas deIosvóxeles del conjunto de datos en 3D en coordenadas canónicas de un sistema de coordenadas canónicas tal como se codifica en la red neuronal en 3D durante el entrenamiento. Figure 2 depicts a schematic of a system for determining a canonical pose of a 3D dental structure in a canonical coordinate system according to an embodiment of the invention. The system 200 comprises at least one 3D deep neural network 222 having an input and an output. The system may include a training module 201 for training the 3D deep neural network based on a training set 212. Additionally, the system may include an inference module 203 that is configured to receive a 3D data set representing a 3D object in a certain coordinate system and to determine transformation parameters for transforming coordinates of the voxels of the 3D data set into canonical coordinates of a canonical coordinate system as encoded into the 3D neural network during training.

La red puede entrenarse basándose en un conjunto de entrenamiento 212 que incluye muestras de imágenes en 3D y coordenadas canónicas asociadas para las muestras de imágenes en 3D.Losdatos de entrenamiento pueden comprender conjuntos de datos en 3D (por ejemplo, valores de intensidad de vóxeles, por ejemplo radiodensidades en el caso de datos de CBCT/TAC,ovalores binarios, por ejemplo en el caso de datos de exploración de superficie voxelizados). Pueden usarse datos de coordenadas canónicas, que pueden representarse como un vector (x,y,z) por cada vóxel de entrada, como datos objetivo. The network may be trained based on a training set 212 that includes 3D image samples and associated canonical coordinates for the 3D image samples. The training data may comprise 3D data sets (e.g., voxel intensity values, e.g., radiodensities in the case of CBCT/CT data, or binary values, e.g., in the case of voxelized surface scan data). Canonical coordinate data, which may be represented as an (x,y,z) vector for each input voxel, may be used as target data.

Puede seleccionarse un sistema de coordenadas canónicas que es adecuado para una clase de objetos en 3D, por ejemplo estructuras dentales en 3D. En una realización, en el caso de una estructura dental en 3D, puede determinarse que un sistema de coordenadas canónicas tiene un origen (0,0,0) en un punto sistemático (entre pacientes y dentro de un paciente). A partir de aquí, cuando se hace referencia a “coordenadas en el mundo real”, se considera que tienen direcciones de ejes relacionadas con el punto de vista del paciente, estando un paciente erguido, significando “ inferior-superior” el punto de vista del paciente de “arriba-abajo”, significando “delante-detrás” “delante-detrás” desde el punto de vista del paciente, y significando “izquierda-derecha” el punto de vista del paciente de “ izquierda-derecha”. Se pretende que “mundo real” se refiera a la situación a partir de la cual se obtiene información, tal como conjuntos de datos en 3D. Tal punto sistemático puede ser, por ejemplo, el punto más bajo (en coordenadas en el mundo real) en el que ambos dientes posicionados más hacia delante (índice de sistema de FDI 11 y 21) todavía están en contacto,oestarían en contacto(sí,por ejemplo, falta cualquiera de esos dientes). Teniendo en cuenta las direcciones deIosejes, las direcciones del mundo real (vistas como el paciente) abajo-arriba, izquierda-derecha y delante-detrás pueden definirse y codificarse respectivamente como valores dex ,y yzque oscilan desde un valor bajo hasta un valor alto. Con el fin de ajustar a escala a las dimensiones del mundo real, pueden emplearse diversos métodos siempre que esto se realice de manera sistemática en todosIosdatos de entrenamiento, dado que el mismo ajuste a escala será la salida de la red de aprendizaje profundo en 3D. Por ejemplo, puede emplearse un valor de 1 unidad de coordenada por cada traslación en el mundo real de 1 mm. A canonical coordinate system may be selected that is appropriate for a class of 3D objects, e.g., 3D dental structures. In one embodiment, for a 3D dental structure, a canonical coordinate system may be determined to have an origin (0,0,0) at a systematic point (between patients and within a patient). Hereinafter, when referring to “real-world coordinates,” they are considered to have axis directions relative to the patient's viewpoint, with a patient standing upright, “inferior-superior” meaning “top-down” from the patient's viewpoint, “front-back” meaning “front-back” from the patient's viewpoint, and “left-right” meaning “left-right” from the patient's viewpoint. “Real-world” is intended to refer to the situation from which information, such as 3D data sets, is obtained. Such a systematic point can be, for example, the lowest point (in real-world coordinates) at which both anteriorly positioned teeth (FDI system index 11 and 21) are still in contact, or would be in contact (if, for example, either of those teeth were missing). Given the axis directions, the real-world directions (seen as the patient) down-up, left-right, and front-back can be defined and encoded respectively as x , y , and z values ranging from low to high. In order to scale to real-world dimensions, various methods can be employed as long as this is done consistently across all the training data, since the same scaling will be the output of the 3D deep learning network. For example, a value of 1 coordinate unit can be employed for every real-world translation of 1 mm.

Con el fin de obtener una red neuronal profunda en 3D que es robusta frente a variaciones de datos y/o modalidades de datos, puede generarse una amplia variedad de muestras de entrenamiento 212 basándose en un conjunto de entrenamiento 202 inicial que incluye conjuntos de datos en 3D, por ejemplo representaciones de vóxeles de estructuras dentales en 3D y datos de coordenadas canónicas asociados. Para ello, el módulo de entrenamiento puede incluir unoomás módulos para el procesamiento previo deIosdatos de entrenamiento. En una realización, con el fin de respetarIosrequisitos de procesamiento y memoria de la red neuronal profunda en 3D 222, puede usarse un módulo de reducción de escala 204 para reducir la escala de un conjunto de datos en 3D para dar un conjunto de datos en 3D sometido a reducción de escala y coordenadas canónicas asociadas de una resolución predeterminada. Tal operación de reducción de escala da como resultado un conjunto de datos de imágenes en 3D más pequeño, por ejemplo reduciendo a escala la resolución de vóxeles en cada dirección a 1 mm. En otra realización, puede usarse un módulo de transformación 206 para generar diferentes variaciones de un conjunto de datos en 3D aplicando rotaciones aleatorias aIosdatos en 3D (sometidos a reducción de escala) y coordenadas canónicas asociadas. Obsérvese que esto puede realizarse para cualquier paciente disponible, suministrando eficazmente una combinación de datos a partir de la cual extraer posibles muestras de entrenamiento, que tienen una multitud de conjuntos de datos de pacientes y una multitud de rotaciones por cada conjunto de datos. In order to obtain a 3D deep neural network that is robust against variations in data and/or data modalities, a wide variety of training samples 212 may be generated based on an initial training set 202 that includes 3D data sets, for example voxel representations of 3D dental structures and associated canonical coordinate data. To this end, the training module may include one or more modules for preprocessing the training data. In one embodiment, in order to respect the processing and memory requirements of the 3D deep neural network 222, a downscaling module 204 may be used to downscale a 3D data set to give a downscaled 3D data set and associated canonical coordinates of a predetermined resolution. Such a downscaling operation results in a smaller 3D image data set, for example by downscaling the voxel resolution in each direction to 1 mm. In another embodiment, a transformation module 206 may be used to generate different variations of a 3D data set by applying random rotations to the (downscaled) 3D data and associated canonical coordinates. Note that this may be done for any available patient, effectively providing a combination of data from which to draw potential training samples, having a multitude of patient data sets and a multitude of rotations per data set.

En una realización adicional, el módulo de entrenamiento puede incluir un módulo de división 208 para dividirIosconjuntos de datos en 3D (sometidos a reducción de escala) y coordenadas canónicas asociadas en bloques (muestras de imágenes en 3D), en el que cada bloque tiene un tamaño predeterminado y es un subconjunto del volumen total del conjunto de datos en 3D. Por ejemplo, un conjunto de datos en 3D proporcionado a la entrada del módulo de entrenamiento puede incluir un volumen de400x400x400vóxeles en el que cada vóxel tiene una dimensión de 0,2 mm en cada dirección ortogonal. Este conjunto de datos en 3D puede someterse a reducción de escala para dar un conjunto de datos en 3D sometido a reducción de escala que tiene un volumen de, por ejemplo,80x80x80vóxeles de 1 mm en cada dirección. Después, el módulo de división puede dividir el conjunto de datos en 3D sometido a reducción de escala en bloques de datos en 3D de un tamaño predeterminado (por ejemplo24x24x24vóxeles de 1 mm en cada dirección). Estos bloques pueden usarse para entrenar la red neuronal profunda en 3D usando las coordenadas canónicas como objetivo. En una realización, el módulo de división puede incluir un selector aleatorio para seleccionar aleatoriamente bloques que forman el conjunto de entrenamiento 212 para la red neuronal profunda en 3D 222. In a further embodiment, the training module may include a splitting module 208 for splitting the (downscaled) 3D data sets and associated canonical coordinates into blocks (3D image samples), each block having a predetermined size and being a subset of the total volume of the 3D data set. For example, a 3D data set provided as input to the training module may include a volume of 400x400x400 voxels where each voxel has a dimension of 0.2 mm in each orthogonal direction. This 3D data set may be downscaled to give a downscaled 3D data set having a volume of, for example, 80x80x80 voxels of 1 mm in each direction. The splitting module may then split the downscaled 3D dataset into 3D data blocks of a predetermined size (e.g., 24x24x24 voxels of 1 mm in each direction). These blocks may be used to train the 3D deep neural network using the canonical coordinates as a target. In one embodiment, the splitting module may include a random picker to randomly select blocks that form the training set 212 for the 3D deep neural network 222.

Obsérvese que una red de aprendizaje profundo en 3D de este tipo se entrenará de manera inherente tanto con rotaciones (a partir de 206) como con traslaciones (a partir de selecciones aleatorias 208) variables. Opcionalmente, en otra realización, pueden presentarse muestras en una multitud de escalas tal como pueden generarse a partir de 204. Note that such a 3D deep learning network will inherently be trained with both variable rotations (from 206) and translations (from random selections 208). Optionally, in another embodiment, samples may be presented at a multitude of scales as may be generated from 204.

Con una red de aprendizaje profundo en 3D 222 entrenada de manera apropiada, pueden presentarse nuevos datos de imágenes en3 d214 (que tienen una posición y orientación arbitrarias) como entrada al el sistema y procesarse previamente de manera apropiada de modo análogo a los datos de imágenes en 3D de entrenamiento, más específicamente empleando un ajuste a escala predeterminado 216, dividiendo el conjunto de datos sometido a reducción de escala en bloques de imágenes de un tamaño predeterminado 218, y presentando los bloques de imágenes en 3D 220 según se requiera por la red neuronal profunda en 3D. Presentando bloques de imágenes que cubren todo el espacio de los datos de imágenes en 3D recibidos al menos una vez, pueden predecirse coordenadas canónicas por la red neuronal profunda en 3D para cada vóxel (sometido a reducción de escala) en el conjunto de datos de imágenes en 3D. With an appropriately trained 3D deep learning network 222, new 3D image data 214 (having an arbitrary position and orientation) can be presented as input to the system and appropriately pre-processed analogously to the training 3D image data, more specifically by employing a predetermined scaling 216, dividing the downscaled dataset into image blocks of a predetermined size 218, and presenting the 3D image blocks 220 as required by the 3D deep neural network. By presenting image blocks that cover the entire space of the received 3D image data at least once, canonical coordinates can be predicted by the 3D deep neural network for each (downscaled) voxel in the 3D image dataset.

Tales datos de predicción pueden procesarse adicionalmente 224 con el fin de generar un conjunto de parámetros de transformación general, que define cómo pueden transformarse los datos recibidos para alinearse lo más estrechamente posible asupostura canónica. Este procesamiento se describirá e ilustrará en más detalle a continuación en el presente documento. Obsérvese que, con suficientes muestras de entrenamiento a partir de un espacio en 3D del mundo real relativamente grande, puede determinarse una postura canónica para datos recibidos a partir de un volumen más pequeño (siempre que esté comprendida de manera representativa dentro de los datos de entrenamiento). Obsérvese que, en realidad, la resolución de los datos de entrada puede ser de aproximadamente 1,25 mm. Pueden producirse predicciones por la red neuronal profunda en 3D 222 en valores de puntos flotantes. Such prediction data may be further processed 224 to generate a set of general transformation parameters, which define how the received data may be transformed to align as closely as possible with the canonical pose. This processing will be described and illustrated in more detail later in this document. Note that, with sufficient training samples from a relatively large real-world 3D space, a canonical pose may be determined for data received from a smaller volume (provided it is representatively comprised within the training data). Note that in reality, the resolution of the input data may be approximately 1.25 mm. Predictions may be produced by the 3D deep neural network 222 in floating point values.

Las figuras 3A-3D representan esquemas que ilustran un método de determinación de una postura canónica de un objeto en 3D tal como una estructura dental en 3D según una realización de la invención. La figura 3A representa esquemáticamente una representación de vóxeles 300 de un objeto en 3D, por ejemplo un objeto dental tal como un diente. Un vóxel puede estar asociado con un valor de intensidad, por ejemplo una radiodensidad obtenida a partir de una exploración de CBCT/TAC. Alternativamente, un vóxel puede estar asociado con un valor binario. En ese caso, una representación de vóxeles puede ser una representación de vóxeles binaria de una superficie voxelizadaoun volumen derivado de superficie voxelizada obtenido a partir de una exploración de luz estructuradaoexploración de superficie de láser. El objeto en 3D puede tener características específicas que identifican una parte superior (por ejemplo, una corona), una parte inferior (por ejemplo, una raíz), una parte delantera, una parte trasera y una parte izquierda y derecha. La representación de vóxeles está asociada con un primer sistema de coordenadas (ortogonales) (x,y,z) 302, por ejemplo un sistema de coordenadas que se usa por el software de exploración para representar los datos explorados en un espacio en 3D. Estas coordenadas pueden proporcionarse, por ejemplo, como (meta)datos en un archivo de imagen de DICOM. El objeto en 3D puede tener una determinada orientación, posición y tamaño en el espacio en 3D definido por el primer sistema de coordenadas. Sin embargo, obsérvese que tal sistema de coordenadas puede no corresponder aún a un sistema tal como puede definirse con respecto al objeto, ilustrado en este caso como “izquierda”, “derecha”, “delante”, “detrás”, “abajo” y “arriba”. Usando una red neuronal profunda en 3D entrenada, el objeto en 3D se “normaliza” (espacialmente) (es decir, se reorienta, se reposiciona y se ajusta a escala) 308 y se define basándose en un sistema de coordenadas canónicas (ortogonales). En el sistema de coordenadas canónicas (x',y',z') 306, el objeto en 3D normalizado 305 tiene una postura canónica, en la que características específicas del objeto en 3D están alineadas con el eje del sistema de coordenadas canónicas. Por tanto, el sistema recibe una representación de vóxeles de una estructura dental en 3D que tiene una determinada orientación, posición y tamaño en un espacio en 3D definido por un sistema de coordenadas definido por el sistema de exploración y determina una representación de vóxeles canónica del objeto en 3D en la que el objeto en 3D se define en un sistema de coordenadas canónicas en el que el tamaño del objeto se ajusta a escala y en el que características específicas de la estructura dental en 3D están alineadas con ejes del sistema de coordenadas canónicas. Figures 3A-3D depict schematics illustrating a method of determining a canonical pose of a 3D object such as a 3D dental structure according to an embodiment of the invention. Figure 3A schematically depicts a voxel representation 300 of a 3D object, for example a dental object such as a tooth. A voxel may be associated with an intensity value, for example a radiodensity obtained from a CBCT/CT scan. Alternatively, a voxel may be associated with a binary value. In that case, a voxel representation may be a binary voxel representation of a voxelized surface or a voxelized surface derived volume obtained from a structured light scan or laser surface scan. The 3D object may have specific characteristics that identify a top (e.g., a crown), a bottom (e.g., a root), a front, a back, and a left and right. The voxel representation is associated with a first (orthogonal) coordinate system (x,y,z) 302, for example a coordinate system that is used by the scanning software to represent the scanned data in 3D space. These coordinates may be provided, for example, as (meta)data in a DICOM image file. The 3D object may have a certain orientation, position and size in the 3D space defined by the first coordinate system. Note, however, that such a coordinate system may not yet correspond to a system as can be defined with respect to the object, illustrated in this case as “left”, “right”, “front”, “behind”, “bottom” and “top”. Using a trained 3D deep neural network, the 3D object is (spatially) “normalized” (i.e., reoriented, repositioned, and scaled) 308 and defined based on a canonical (orthogonal) coordinate system. In the canonical (x',y',z') coordinate system 306, the normalized 3D object 305 has a canonical pose, where specific features of the 3D object are aligned with the axis of the canonical coordinate system. The system therefore receives a voxel representation of a 3D dental structure having a given orientation, position and size in a 3D space defined by a coordinate system defined by the scanning system and determines a canonical voxel representation of the 3D object, wherein the 3D object is defined in a canonical coordinate system in which the size of the object is scaled and in which specific features of the 3D dental structure are aligned with axes of the canonical coordinate system.

La figura 3B representa una red neuronal profunda en 3D 318 que puede entrenarse para recibir vóxeles de una representación de vóxeles 310 de un objeto en 3D, en la que los vóxeles pueden tener una determinada posición definida por un sistema de coordenadas 302(x ,y ,z ).La red neuronal profunda en 3D está configurada para generar la denominada información de postura canónica 303 asociada con la representación de vóxeles. La información de postura canónica comprende, para cada vóxel 304(x ,y ,z )de la representación de vóxeles, una predicción de una coordenada(x ',y ',z ')en un espacio definido por el sistema de coordenadas canónicas. El sistema de coordenadas canónicas puede definirse con respecto a una posición, orientaciónyescala típicas de estructuras dentomaxilofaciales identificadles de manera fiable, por ejemplo características del arco dental. La información requerida para derivar tal sistema de coordenadas canónicas puede codificarse en la red neuronal profunda en 3D durante la fase de entrenamiento de la red. De esta manera, la información de postura canónica puede usarse para poner diferentes variedadesy/omodalidades de datos en 3D que representan la misma estructura dentomaxilofacial en la misma posición, orientaciónyescala relativas. Figure 3B depicts a 3D deep neural network 318 that may be trained to receive voxels from a voxel representation 310 of a 3D object, wherein the voxels may have a certain position defined by a coordinate system 302 (x,y,z). The 3D deep neural network is configured to generate so-called canonical pose information 303 associated with the voxel representation. The canonical pose information comprises, for each voxel 304 (x,y,z) of the voxel representation, a prediction of a coordinate (x',y',z') in a space defined by the canonical coordinate system. The canonical coordinate system may be defined with respect to a typical position, orientation, and scale of reliably identifiable dentomaxillofacial structures, for example features of the dental arch. The information required to derive such a canonical coordinate system can be encoded into the 3D deep neural network during the network training phase. In this way, the canonical pose information can be used to place different varieties and/or modalities of 3D data representing the same dentomaxillofacial structure in the same relative position, orientation, and scale.

Por tanto, para cada vóxel de entrada 304 se generan tres valores de salida 314, 324, 334 correspondientes por la red neuronal profunda en 3D, que comprenden predicciones para los valores, respectivamente, de las coordenadasx ', y 'Yz 'del vóxel de entrada en el sistema de coordenadas canónicas. En una realización, la información de postura canónica puede incluir tres mapas de vóxeles en 3D 312, 322, 332 en la que cada mapa de vóxeles en 3D vincula un vóxel de una representación de vóxeles en la entrada de la red neuronal en 3D a una coordenada canónica. Thus, for each input voxel 304, three corresponding output values 314, 324, 334 are generated by the 3D deep neural network, comprising predictions for the values, respectively, of the x ', and y 'coordinates of the input voxel in the canonical coordinate system. In one embodiment, the canonical pose information may include three 3D voxel maps 312, 322, 332 wherein each 3D voxel map links a voxel of a voxel representation in the input of the 3D neural network to a canonical coordinate.

Antes de proporcionar la representación de vóxeles a la entrada de la red neuronal profunda en 3D, la representación de vóxeles puede dividirse en un conjunto de bloques de vóxeles (ilustrados en este caso mediante 316, a continuación en el presente documento abreviado como “bloques”), en el que las dimensiones de un bloque de vóxeles coinciden con las dimensiones del espacio de entrada de la red neuronal profunda en 3D. El tamaño de bloque puede depender de capacidades de almacenamiento de datos de la red neuronal profunda en 3D. Por tanto, la red neuronal profunda en 3D puede procesar los vóxeles en cada uno de los bloques de la representación de vóxelesyproducir información de postura canónica para vóxeles de cada bloque, es decir predicciones de coordenadas(x ',y ',z ')de un sistema de coordenadas canónicas para cada vóxel en un bloque. En una realización, la red neuronal profunda en 3D puede generar tres mapas de vóxeles 312, 322, 332, un primer mapa de vóxeles 312 que comprende, para cada vóxel en un bloque que se ofrece a la entrada de la red neuronal profunda en 3D, una coordenadax 'correspondiente; un segundo mapa de vóxeles 322 que comprende, para cada vóxel en un bloque, una coordenaday ';Y, un tercer mapa de vóxeles 332 que comprende, para cada vóxel en un bloque, una coordenadaz '.Before providing the voxel representation to the input of the 3D deep neural network, the voxel representation may be partitioned into a set of voxel blocks (illustrated here by 316, hereinafter abbreviated as “blocks”), where the dimensions of a voxel block match the dimensions of the input space of the 3D deep neural network. The block size may depend on the data storage capabilities of the 3D deep neural network. Thus, the 3D deep neural network can process the voxels in each of the blocks of the voxel representation and produce canonical pose information for voxels in each block, i.e., coordinate predictions (x',y',z') of a canonical coordinate system for each voxel in a block. In one embodiment, the 3D deep neural network may generate three voxel maps 312, 322, 332, a first voxel map 312 comprising, for each voxel in a block offered to the input of the 3D deep neural network, a corresponding x' coordinate; a second voxel map 322 comprising, for each voxel in a block, a y' coordinate; and, a third voxel map 332 comprising, for each voxel in a block, a z' coordinate.

La figura 3C muestra esquemáticamente una representación de vóxeles de un objeto en 3D 300 que se ofrece a la entrada de la red neuronal profunda en 3D,yse define basándose en un primer sistema de coordenadas(x ,y ,z )302, por ejemplo un sistema de coordenadas usado por el software de procesamiento de imágenes del dispositivo de exploración que seusópara producir las imágenes en 3D. Estas coordenadasola información para determinar estas coordenadas pueden incluirse en el archivo de datos, por ejemplo un archivo de DICOM, como metadatos. Basándose en información de postura canónica generada por la red neuronal profunda en 3D, se genera una predicción de la postura canónica del objeto en 3D en un sistema de coordenadas canónicas. Por tanto, la información de postura canónica 350 puede vincular una posición(x ,y ,z )de cada vóxel en el primer sistema de coordenadas a una posición(x ',y ',z ')en el sistema de coordenadas canónicas. Esta información puede usarse para determinar una transformación 360 que permite que el sistema transforme el objeto en 3D definido en el primer sistema de coordenadas ensupostura canónica 362 definida en el sistema de coordenadas canónicas. Figure 3C schematically shows a voxel representation of a 3D object 300 that is provided as input to the 3D deep neural network, and is defined based on a first coordinate system (x,y,z) 302, for example a coordinate system used by the image processing software of the scanning device that was used to produce the 3D images. These coordinates or information for determining these coordinates may be included in the data file, for example a DICOM file, as metadata. Based on canonical pose information generated by the 3D deep neural network, a prediction of the canonical pose of the 3D object in a canonical coordinate system is generated. Thus, the canonical pose information 350 may link a position (x,y,z) of each voxel in the first coordinate system to a position (x',y',z') in the canonical coordinate system. This information may be used to determine a transformation 360 that allows the system to transform the 3D object defined in the first coordinate system into its canonical posture 362 defined in the canonical coordinate system.

La información de postura se usa para determinar una orientaciónyun factor de ajuste a escala asociado con el eje del sistema de coordenadas canónicas(Iosejes canónicos). En este caso, la orientación es una orientación de los ejes canónicos en el espacio definido por el primer sistema de coordenadas. La información de postura también se usa para determinar la posición del origen del sistema de coordenadas canónicas. The posture information is used to determine an orientation and a scaling factor associated with the axis of the canonical coordinate system (the canonical axes). In this case, the orientation is an orientation of the canonical axes in the space defined by the first coordinate system. The posture information is also used to determine the position of the origin of the canonical coordinate system.

Una orientación de un eje canónico puede determinarse basándose en un gradiente (local) en unoomás vóxeles en un mapa de vóxeles en 3D tal como se determina por la red neuronal profunda en 3D. Por ejemplo, para cada uno,oal menos varios, deIosvóxeles del primer mapa de vóxeles en 3D asociados con la componentex 'de una coordenada canónica, puede determinarse un gradiente local. El gradiente local puede representarse como un vector en 3D en el espaciox ,y ,zdefinido por el primer sistema de coordenadas. La dirección del vector representa una predicción de la orientación del eje de lasx 'canónico en la posición del vóxel. Además, la longitud del vector representa una predicción de un factor de ajuste a escala asociado con el eje de lasx 'canónico. En una realización, una predicción para la orientaciónyel factor de ajuste a escala asociado con el eje de lasx 'canónico puede determinarse basándose en valores dex 'del primer mapa de vóxeles en 3D. Por ejemplo, puede determinarse una medida estadísticamente representativa de las predicciones para vóxeles del primer mapa de vóxeles en 3D, por ejemplo la medianaoel promedio del gradiente. En una realización,Iosvalores dex 'del primer mapa de vóxeles en 3D pueden procesarse previamente, por ejemplo suavizarsey/ ofiltrarse. Por ejemplo, en una realización, puede usarse un filtro de mediana para eliminar datos aberrantes (locales). De la misma manera, una predicción de una orientaciónyun factor de ajuste a escala para el eje de lasy 'canónico puede determinarse basándose enIosvalores dey 'en el segundo mapa de vóxeles en 3Dyuna predicción de una orientaciónyun factor de ajuste a escala para el eje de lasz 'canónico puede determinarse basándose enIosvalores dez 'en el tercer mapa de vóxeles en 3D. Las orientaciones predichas deIosejes de lasx ', y ', z 'canónicos pueden procesarse posteriormente para garantizar queIosejes son ortogonalesoincluso ortonormales. Pueden usarse diversos esquemas, por ejemplo el procedimiento de Gram-Schmidt, para lograr esto. Pueden obtenerse parámetros de rotaciónyde ajuste a escala comparando el sistema de coordenadas 302 recibidoyel sistema de coordenadas tal como se deriva a partir de predicciones. An orientation of a canonical axis may be determined based on a (local) gradient at one or more voxels in a 3D voxel map as determined by the 3D deep neural network. For example, for each, or at least several, voxels of the first 3D voxel map associated with the x 'component of a canonical coordinate, a local gradient may be determined. The local gradient may be represented as a 3D vector in the x ,y ,z space defined by the first coordinate system. The direction of the vector represents a prediction of the orientation of the canonical x 'axis at the voxel position. Furthermore, the length of the vector represents a prediction of a scaling factor associated with the canonical x 'axis. In one embodiment, a prediction for the orientation and scaling factor associated with the canonical x 'axis may be determined based on x 'values of the first 3D voxel map. For example, a statistically representative measure of the predictions for voxels in the first 3D voxel map may be determined, e.g., the median or average of the gradient. In one embodiment, the x values in the first 3D voxel map may be preprocessed, e.g., smoothed and/or filtered. For example, in one embodiment, a median filter may be used to remove outliers (local). Similarly, a prediction of an orientation and a scaling factor for the canonical y axis may be determined based on the y values in the second 3D voxel map, and a prediction of an orientation and a scaling factor for the canonical z axis may be determined based on the z values in the third 3D voxel map. The predicted orientations of the canonical x', y', z' axes can be post-processed to ensure that the axes are orthogonal or even orthonormal. Various schemes, for example the Gram-Schmidt procedure, can be used to achieve this. Rotation and scaling parameters can be obtained by comparing the received coordinate system 302 and the coordinate system as derived from predictions.

La posición del origen del sistema de coordenadas canónicas (en cuanto a un vector de traslación en el espacio del primer sistema de coordenadas) puede obtenerse determinando una predicción de las coordenadas canónicas del centro de una representación de vóxeles que se ofrece a la entrada de la red de aprendizaje profundo en 3D. Estas coordenadas pueden determinarse basándose, por ejemplo, en el valor de promedioomediana de valores dex 'predichos del primer mapa de vóxeles en 3D, valores de y' del segundo mapa de vóxeles en 3D y valores dez 'del tercer mapa de vóxeles en 3D. Puede determinarse un vector de traslación basándose en las coordenadas canónicas predichas (xo,yo',zo') del centro del bloque y las coordenadas del centro de los bloques basándose en el primer sistema de coordenadas, por ejemplo usando una simple resta. Alternativamente, el origen del sistema de coordenadas canónicas puede determinarse mediante una agregación de múltiples predicciones de tales bloques, procesando estos últimos eficazmente unas coordenadas canónicas tal como se determinan para el espacio del mismo tamaño de la representación de vóxeles recibida. El procedimiento anteriormente descrito puede repetirse para cada uno,oal menos una gran parte, de los bloques de un conjunto de datos en 3D. La información determinada para cada bloque (orientación, escala y origen del sistema de coordenadas canónicas) puede usarse para obtener valores promedio que proporcionan una predicción precisa. The position of the origin of the canonical coordinate system (as a translation vector in the space of the first coordinate system) may be obtained by determining a prediction of the canonical coordinates of the center of a voxel representation that is provided as input to the 3D deep learning network. These coordinates may be determined based on, for example, the average or median value of predicted x 'values from the first 3D voxel map, y 'values from the second 3D voxel map, and z 'values from the third 3D voxel map. A translation vector may be determined based on the predicted canonical coordinates (xo,yo',zo') of the center of the block and the coordinates of the center of the blocks based on the first coordinate system, for example by using simple subtraction. Alternatively, the origin of the canonical coordinate system can be determined by aggregating multiple predictions of such blocks, the latter effectively processing canonical coordinates as determined for the same-sized space as the received voxel representation. The procedure described above can be repeated for each, or at least a large portion, of the blocks in a 3D data set. The information determined for each block (orientation, scale, and origin of the canonical coordinate system) can be used to obtain average values that provide an accurate prediction.

Por tanto, los sistemas y métodos representados en las figuras 2 y 3 proporcionan una manera eficiente de determinar una postura canónica de una estructura dental en 3D. Tal como se muestra en la figura 3D, estos métodos incluyen una primera etapa 380 de proporcionar, un procesador de un ordenador, una representación de vóxeles de una estructura dental en 3D asociada con un primer sistema de coordenadas a la entrada de una red neuronal profunda en 3D, estando la red neuronal configurada para generar información de postura canónica asociada con un segundo sistema de coordenadas canónicas. Después de eso, en la etapa 382, el procesador puede recibir, a partir de la salida de la red neuronal profunda en 3D, información de postura canónica, en la que, para cada vóxel de la representación de vóxeles, la información de postura canónica comprende una predicción de una coordenada canónica del vóxel. El procesador puede ejecutar posteriormente una etapa de procesamiento 384 en la que se usa la información de postura canónica para determinar una orientación (y, si es aplicable, un ajuste a escala) de los ejes del sistema de coordenadas canónicas (por ejemplo, determinando un vector que representa el gradiente local de una posición de un vóxel) y una posición del origen del sistema de coordenadas canónicas (por ejemplo, determinando un vector que representa valores promedio (x',y',z'), por tanto una distancia en 3D promedio hasta el origen canónico) y en el que la orientación y la posición (y, si es aplicable, el ajuste a escala) se usan posteriormente para determinar parámetros de transformación para transformar coordenadas del primer sistema de coordenadas en 3D en coordenadas del segundo sistema de coordenadas canónicas. Después de eso, en la etapa 386, el procesador determina una postura canónica de la estructura dental en 3D en el espacio representado por el segundo sistema de coordenadas canónicas aplicando los parámetros de transformación al conjunto de datos en 3D recibido. En el caso en el que el conjunto de datos en 3D es una representación de vóxeles, los parámetros pueden aplicarse a los vóxeles. Alternativamente, en el caso en el que el conjunto de datos en 3D es una representación de malla, los parámetros pueden aplicarse a las coordenadas de la malla. Thus, the systems and methods depicted in Figures 2 and 3 provide an efficient way of determining a canonical pose of a 3D dental structure. As shown in Figure 3D, these methods include a first step 380 of providing, to a processor of a computer, a voxel representation of a 3D dental structure associated with a first coordinate system as an input to a 3D deep neural network, the neural network being configured to generate canonical pose information associated with a second canonical coordinate system. Thereafter, in step 382, the processor may receive, from the output of the 3D deep neural network, canonical pose information, wherein, for each voxel of the voxel representation, the canonical pose information comprises a prediction of a canonical coordinate of the voxel. The processor may subsequently execute a processing step 384 wherein the canonical pose information is used to determine an orientation (and, if applicable, a scaling) of the axes of the canonical coordinate system (e.g., by determining a vector representing the local gradient of a voxel position) and a position of the origin of the canonical coordinate system (e.g., by determining a vector representing average (x',y',z') values, hence an average 3D distance to the canonical origin), and wherein the orientation and position (and, if applicable, the scaling) are subsequently used to determine transformation parameters for transforming coordinates of the first 3D coordinate system into coordinates of the second canonical coordinate system. Thereafter, in step 386, the processor determines a canonical pose of the 3D tooth structure in the space represented by the second canonical coordinate system by applying the transformation parameters to the received 3D data set. If the 3D dataset is a voxel representation, the parameters can be applied to the voxels. Alternatively, if the 3D dataset is a mesh representation, the parameters can be applied to the mesh coordinates.

De esta manera, puede realizarse una representación canónica de un objeto en 3D tal como una estructura dental en 3D. El método puede usarse para transformar diferentes modalidades de datos en 3D asociados con un objeto en 3D en la postura canónica del objeto en 3D que puede usarse en el procedimiento de superposición de los diferentes conjuntos de datos en 3D. Alternativa y/o adicionalmente, el método puede usarse como etapa de procesamiento previo antes de ofrecer un conjunto de datos en 3D a una entrada en3 dde unaomás redes neuronales profundas en 3D que están configuradas para segmentar el objeto en 3D y (opcionalmente) para determinar una taxonomía de las partes segmentadas del objeto en 3D. Tal etapa de procesamiento previo aumenta sustancialmente la precisión (y/o reduce el tiempo de entrenamientoo Iosrequisitos de memoria para una misma precisión para tales redes neuronales profundas en 3D) de la segmentación y clasificación deIosobjetos en 3D dado que la precisión de tal red neuronal entrenada puede verse afectada si la postura del objeto en 3D representado por el conjunto de datos en 3D que se introduce en el sistema se desvía demasiado (especialmente con respecto a la orientación) de una postura normalizada. In this way, a canonical representation of a 3D object such as a 3D dental structure can be realized. The method can be used to transform different modalities of 3D data associated with a 3D object into the canonical pose of the 3D object that can be used in the process of superimposing the different 3D data sets. Alternatively and/or additionally, the method can be used as a preprocessing step before offering a 3D data set to an input of one or more 3D deep neural networks that are configured to segment the 3D object and (optionally) to determine a taxonomy of the segmented parts of the 3D object. Such a pre-processing step substantially increases the accuracy (and/or reduces the training time or memory requirements for the same accuracy for such 3D deep neural networks) of 3D object segmentation and classification since the accuracy of such a trained neural network may be affected if the pose of the 3D object represented by the 3D data set being input into the system deviates too much (especially with respect to orientation) from a normalized pose.

Las figuras 4A-C muestran ilustraciones de objetivos y resultados de entrenamiento tal como pueden usarse por un método tal como se describió con referencia a las figuras 3A-3D. La figura 4A representa tres cortes400i -3 de un conjunto de datos en 3D, en este ejemplo una exploración de CBCT de una estructura dental en 3D y cortes asociados deIosmapas de vóxeles en 3D para las coordenadas x', y' yz 'tal como pueden usarse para entrenar una red neuronal profunda en 3D. Estos mapas de vóxeles en 3D comprenden las predicciones deseadas de la coordenada canónica x'402i,la coordenada canónica y' 4022y la coordenada canónicaz '4023.Losvalores en escala de grises visualizanIosgradientes de valores (codificados) para coordenadas según el sistema de coordenadas canónicas. Las coordenadas (x, y,z )indican la posición de un vóxel de la estructura dental en 3D basándose en un sistema de coordenadas asociado con la exploración de CBCT.Losejes tal como se visualizan incluyendosusdirecciones se designan en la parte superior izquierda por cada imagen. También merece la pena indicar queIosvalores en escala de grises deIosgradientes visualizados se han ajustado a escala de manera apropiada para tener el mismo valor en escala de grises para el mismo valor a lo largo de todas las figuras 4A-C. Esto permite una mejor comparación visual de lo que son en realidad traslaciones hacia el sistema de coordenadas canónicas tal como se codifican (para el entrenamiento)ose predicen. Finalmente, obsérvese que todas las visualizaciones son representaciones en 2D de un único “corte” central (en realidad píxeles de datos de imágenes en 2D), tal como se corta a partir del conjunto de datos en 3D realmente empleado yIosmapas de vóxeles asociados, tal como se designa mediante el número de corte visible en la parte superior izquierda por cada Ilustración. Figures 4A-C show illustrations of training objectives and results as may be used by a method as described with reference to Figures 3A-3D. Figure 4A depicts three slices 400i -3 of a 3D data set, in this example a CBCT scan of a 3D tooth structure and associated slices of 3D voxel maps for the coordinates x', y' and z' as may be used to train a 3D deep neural network. These 3D voxel maps comprise the desired predictions of the canonical x' coordinate 402i, the canonical y' coordinate 4022 and the canonical z' coordinate 4023. The grayscale values visualize the gradients of (encoded) values for coordinates according to the canonical coordinate system. The (x, y, z) coordinates indicate the position of a voxel of the 3D tooth structure based on a coordinate system associated with the CBCT scan. The axes as displayed including their directions are designated at the top left for each image. It is also worth noting that the grayscale values of the displayed gradients have been appropriately scaled to have the same grayscale value for the same value throughout Figures 4A-C. This allows for a better visual comparison of what are actually translations toward the canonical coordinate system as encoded (for training) or predicted. Finally, note that all visualizations are 2D representations of a single central “slice” (actually 2D image data pixels), as sliced from the actually employed 3D data set and the associated voxel maps, as designated by the slice number visible at the top left for each illustration.

Con el fin de entrenar el sistema, un conjunto de datos en 3D que representa una estructura dental en 3D puede atribuirse con un sistema de coordenadas canónicas, tal como se ilustra por la figura 4B. En el caso de estas ilustraciones, para las ilustraciones que muestran gradientes, el valor para negro es -40,0 mm y el valor para blanco es 40 mm, teniendo en realidad el centro de esta exploración de paciente como origen (0,0,0). Estos datos (tantoIosdatos de imágenes en 3D como la representación del sistema canónico) ya se han sometido a reducción de escala de manera apropiada tal como resultará a partir del procesador 204. Entonces, pueden rotarse estos datos (por ejemplo, empleando un método de interpolación linealuotro) proporcionando datos en 3D tal como se muestra en las ilustraciones de 406. Dependiendo del método exacto de realización de esta rotación, el tamaño del espacio de imagen también puede expandirse para incluir todosIosvóxeles del conjunto de datos de imágenes en 3D recibido, lo cual no es el caso en estas ilustraciones. In order to train the system, a 3D dataset representing a 3D dental structure can be attributed with a canonical coordinate system, as illustrated by Figure 4B. In the case of these illustrations, for the illustrations showing gradients, the value for black is -40.0 mm and the value for white is 40 mm, actually having the center of this patient scan as the origin (0,0,0). This data (both the 3D image data and the canonical system representation) has already been downscaled in an appropriate manner as will result from processor 204. This data may then be rotated (e.g., by employing a linear interpolation method or another) to provide 3D data as shown in the illustrations at 406. Depending on the exact method of performing this rotation, the size of the image space may also be expanded to include all of the voxels of the received 3D image data set, which is not the case in these illustrations.

La figura 4B ilustra datos de entrenamiento 408 tal como pueden resultar a partir de la selección aleatoria (tal como puede realizarse por el procesador 208) de un bloque 4 l2 de tamaño apropiado, en este caso una submuestra que tiene una dimensión de24x24x24vóxeles, a partir de la representación de vóxeles de entrada rotada de manera aleatoria 406. Obsérvese que, cuando se visualizan las tres direcciones codificadas del sistema de coordenadas canónicas en la misma vista en y-z (el corte de y-z central del cubo en 3D de vóxeles) tal como se realiza en 408, puede observarse una dirección de gradiente, que codifica eficazmente (en el caso de esta visualización en 2D) la dirección del la componente en 2D (en el plano y-z) deIosvectores de dirección en 3D que codifican las direcciones deIosejes del sistema de coordenadas canónicas. De manera similar, el valor por cada vóxel codifica eficazmente la coordenadax ',y' yz 'del vóxel según el sistema de coordenadas canónicas. obsérvese que, cuando se procesa, por ejemplo, un conjunto de datos predicho en 3D entero, puede determinarse queIosvectores en 3D para cada eje siguen el sistema de coordenadas canónicas. La selección de submuestras para el entrenamiento puede realizarse de tal manera que la muestra de tamaño más pequeño seleccionada sólo incluye vóxeles que forman parte del conjunto de datos de imágenes en 3D recibido (es decir, sin incluirIosfragmentos “vacíos” de vóxeles a lo largo deIosbordes, tal como puede observarse en las ilustraciones, resultantes de la rotación aplicada). Figure 4B illustrates training data 408 as may result from random selection (as may be performed by processor 208) of an appropriately sized block 412, in this case a subsample having dimension 24x24x24 voxels, from the randomly rotated input voxel representation 406. Note that when the three encoded directions of the canonical coordinate system are displayed in the same y-z view (the central y-z slice of the 3D cube of voxels) as performed at 408, a gradient direction may be observed, which effectively encodes (in the case of this 2D display) the direction of the 2D component (in the y-z plane) of the 3D direction vectors encoding the directions of the axes of the canonical coordinate system. Similarly, the value for each voxel effectively encodes the voxel’s x’, y’, and z’ coordinates according to the canonical coordinate system. Note that when processing, for example, an entire 3D predicted dataset, the 3D vectors for each axis can be determined to follow the canonical coordinate system. Subsampling for training can be done such that the smallest sample size selected only includes voxels that are part of the received 3D image dataset (i.e., not including the “empty” chunks of voxels along the edges, as seen in the illustrations, resulting from the applied rotation).

La figura 4C muestra una nueva entrada 416 tras el redimensionamiento (tal como puede resultar a partir del procesador 216). ParaIosfines de esta ilustración, esta entrada se ha rotado de manera arbitraria. ParaIosfines de las ilustraciones 418 y 420,sóIose han visualizado vistas (cortes) en x-y. El conjunto 418 muestra cortes de las coordenadas canónicasx ',y' yz 'predichas. Puede observarse queIosdatos de imágenes recibidos se han dividido en bloques(osubmuestras), se realizó la predicción de coordenadas enIosbloques y se colocaron estos bloques de predicción de vuelta en el espacio de conjunto de imágenes en 3D recibido total (que puede considerarse como una estructura de tipo cuadrado observada en las imágenes, que indica las dimensiones deIosbloques). Obsérvese que esto ilustra eficazmente que pueden realizarse predicciones para parámetros de rotación, traslación y opcionalmente ajuste a escala para la transformación en el sistema de coordenadas canónicas con datos de imágenes en 3D con un tamaño de30x30x30mm. La figura también ilustra que la red entrenada es relativamente robusta frente a fragmentos de datos “vacíos” tal como resultan de la rotación empleada para esta visualización (es decir, aIosdatos “vacíos” se les proporciona un valor sistemático de 0 en el caso de la red entrenada conIosfines de estas ilustraciones). Figure 4C shows a new entry 416 after resizing (as may result from processor 216). For the purposes of this illustration, this entry has been arbitrarily rotated. For the purposes of illustrations 418 and 420, only x-y views (slices) have been displayed. Array 418 shows slices of the predicted canonical x', y', and z' coordinates. It can be seen that the received image data has been divided into blocks (or subsamples), coordinate prediction performed on the blocks, and these prediction blocks placed back into the overall received 3D image array space (which can be thought of as a square-like structure observed in the images, indicating the dimensions of the blocks). Note that this effectively illustrates that predictions for rotation, translation, and optionally scaling parameters for the transformation into the canonical coordinate system can be made using 3D image data of size 30x30x30mm. The figure also illustrates that the trained network is relatively robust to “empty” data fragments as they result from the rotation employed for this visualization (i.e., “empty” data are systematically given a value of 0 for the network trained for the purposes of these illustrations).

Mediante 420 se ilustranIosvalores de coordenadas codificados habrían sido si 416 hubieran sido datos de entrenamiento,o Iosvalores “objetivo” deseados como deben resultar a partir de la red neuronal profunda en 3D. Puede observarse queIosvalores generales (que indican distancia por vóxel hasta el origen) y las direcciones generales deIosgradientes son muy similares. En el caso de datos del mundo real que se hacen rotar,Iosfragmentos “vacíos” tal como se observan en la ilustración no estarán presentes. Dentro del procesador 224, el sistema puede realizar, por ejemplo, un filtrado de cálculo de promedio en 3D conIosdatos de coordenadas predichos 418, eliminación de valores aberrantes y/u otros métodos para suavizarIosvalores resultantes. Puede usarse una medida representativa, por ejemplo el promedioola mediana, deIosvalores de coordenadas predichos para determinar la posición del centro de la representación de vóxeles 416 con respecto al sistema de coordenadas canónicas. Puede determinarse una traslación basándose en la diferencia entre la posición del centro de la representación de vóxeles 416 con respecto al sistema de coordenadas recibido y con respecto al sistema de coordenadas canónicas. Illustrated at 420 are what the encoded coordinate values would have been if 416 had been training data, or the desired “target” values as they should result from the 3D deep neural network. It can be seen that the overall values (indicating distance per voxel from the origin) and the overall directions of the gradients are very similar. In the case of real-world data being rotated, the “empty” chunks as seen in the illustration will not be present. Within processor 224, the system may perform, for example, 3D averaging filtering on the predicted coordinate data 418, outlier removal, and/or other methods to smooth the resulting values. A representative measure, such as the average or median, of the predicted coordinate values may be used to determine the position of the center of the voxel representation 416 relative to the canonical coordinate system. A translation can be determined based on the difference between the position of the center of the voxel representation 416 with respect to the received coordinate system and with respect to the canonical coordinate system.

Un algoritmo de derivación de gradiente en 3D, que es relativamente poco costoso desde el punto de vista computacional, puede proporcionar tres cubos adicionales de valores por cada “cube de eje de valores”, proporcionando eficazmente por cada “cubo de eje” las tres componentes del vector que describe la dirección del eje. Esto puede dar como resultado un vector en 3D direccional para todas las direcciones deIosejesx ,y yz ,por cada vóxel. Puede determinarse una medida representativa, por ejemplo el promedioola mediana, para estos vectores paraIosejes de coordenadas deseados Si es aplicable, estos vectores por cada eje pueden convertirse ensuequivalente de vector unitario. Adicionalmente, el sistema puede garantizar que estos tres vectores se convierten ensuconjunto perfectamente ortonormal más próximo de tres, minimizando la suma de la distancia angular entre el primer conjunto de vectores por cada eje predicho y el conjunto ortogonal resultante. A relatively computationally inexpensive 3D gradient derivation algorithm can provide three additional value cubes for each axis cube of values, effectively providing for each axis cube all three components of the vector describing the axis direction. This can result in one directional 3D vector for all x , y , and z axes for each voxel. A representative measure, such as the average or median, can be determined for these vectors for the desired coordinate axes. If applicable, these axis-wise vectors can be converted into their unit vector equivalent. Additionally, the system can guarantee that these three vectors become their nearest perfectly orthonormal set of three by minimizing the sum of the angular distances between the first predicted axis-wise vectors and the resulting orthogonal set.

A partir de estas tres direcciones (eficazmente) predichas deIosejes canónicos, pueden calcularse parámetros de transformación apropiados teniendo en cuenta rotaciones del conjunto de datos de imágenes en 3D recibido hacia la orientación canónica, como parte de la postura canónica. Posteriormente, el sistema puede determinar cuál será la distancia promedio hasta el origen canónico, por cada eje, para el conjunto de datos de imágenes en 3D recibido. A partir de esto, pueden calcularse parámetros de transformación para la traslación del conjunto de datos de imágenes en 3D recibido, determinando eficazmente dónde debe estar el origen canónico dentro del(ocon respecto al) conjunto de datos de imágenes en 3D recibido,o,a la inversa, dónde debe estar la posición canónica en el sistema de coordenadas. From these three (effectively) predicted directions of the canonical axes, appropriate transformation parameters can be calculated taking into account rotations of the received 3D image dataset towards the canonical orientation, as part of the canonical pose. The system can then determine what the average distance to the canonical origin will be, per axis, for the received 3D image dataset. From this, transformation parameters can be calculated for the translation of the received 3D image dataset, effectively determining where the canonical origin should lie within (or with respect to) the received 3D image dataset, or conversely, where the canonical position should lie in the coordinate system.

En otra realización, la red neuronal profunda en 3D puede entrenarse con escalas variables y puede emplearse la magnitud del gradiente de los valores de predicción resultantes para determinar la escala del conjunto de datos de imágenes en 3D recibido. Esto puede usarse para calcular parámetros de transformación hacia un ajuste a escala deseado de los datos recibidos. In another embodiment, the 3D deep neural network can be trained with varying scales, and the gradient magnitude of the resulting prediction values can be used to determine the scale of the received 3D image dataset. This can be used to calculate transformation parameters toward a desired scaling of the received data.

La figura 5 representa un ejemplo de una arquitectura de red neuronal profunda en 3D para la determinación de coordenadas canónicas según una realización de la invención. La red neuronal profunda en 3D puede tener una arquitectura similar a una red en U en 3D, que es en realidad una implementación en 3D de la red en U en 2D tal como se conoce bien en la técnica. Figure 5 depicts an example of a 3D deep neural network architecture for determining canonical coordinates according to an embodiment of the invention. The 3D deep neural network may have an architecture similar to a 3D U-shaped network, which is actually a 3D implementation of the 2D U-shaped network as is well known in the art.

La red puede implementarse usando una variedad de capas de red neuronal en 3D, tales como capas convolucionales (dilatadas) (CNN en 3D), capas de combinación máxima en 3D, capas de desconvolución en 3D (de-CNN en 3D) y capas densamente conectadas. Las capas pueden usar una variedad de funciones de activación tales como lineal, tanh, ReLU, PreLU, sigmoide, etc. Las capas de CNN y de-CNN en 3D pueden variar en cuanto asucantidad de filtros, tamaños de filtro y parámetros de submuestreo . Las capas de CNN y de-CNN en 3D, así como las capas densamente conectadas, pueden variar en cuanto asusmétodos de inicialización de parámetros. Pueden emplearse capas de abandono y/o normalización en lotes a lo largo de toda la arquitectura. The network can be implemented using a variety of 3D neural network layers such as (dilated) convolutional layers (3D CNNs), 3D max-pooling layers, 3D deconvolution layers (3D de-CNNs), and densely connected layers. The layers can use a variety of activation functions such as linear, tanh, ReLU, PreLU, sigmoid, etc. The 3D CNN and de-CNN layers can vary in the number of filters, filter sizes, and subsampling parameters. The 3D CNN and de-CNN layers, as well as the densely connected layers, can vary in their parameter initialization methods. Dropout and/or batch normalization layers can be employed throughout the architecture.

Siguiendo una arquitectura de red en U en 3D, durante el entrenamiento los diversos filtros dentro de las capas de CNN en 3D y de-CNN en 3D aprenden a codificar características significativas dado que ayudará al esfuerzo de precisión de la predicción. Durante el entrenamiento, se usan conjuntos de datos de imágenes en 3D coincidentes 502 y coordenadas canónicas coincidentes codificadas 540 para optimizar hacia la predicción de estas últimas a partir de los primeros. Puede emplearse una función de pérdidas como medida que va a minimizarse. Este esfuerzo de optimización puede ayudarse usando optimizadores tales como SGD, Adam, etc. Following a 3D U-net architecture, during training the various filters within the 3D CNN and 3D de-CNN layers learn to encode meaningful features as this will aid in the prediction accuracy effort. During training, 502 matched 3D image datasets and 540 encoded matched canonical coordinates are used to optimize towards predicting the latter from the former. A loss function can be employed as a measure to be minimized. This optimization effort can be aided by using optimizers such as SGD, Adam, etc.

Una arquitectura de este tipo puede emplear diversas escalas de resolución, realizando eficazmente una reducción de escala 506, 510, 514 como resultados a partir de un conjunto anterior de capas de CNN en 3D 504, 508, 512 mediante capas convolucionales (dilatadas y/o de submuestreo)ode combinación máxima. El término “características significativas” se refiere a derivaciones (sucesivas) de información relevante para determinar los valores de salida objetivo, sin embargo también se codifican mediante las capas de de-CNN en 3D, que realizan eficazmente un aumento a escala mientras se emplean filtros. Combinando 520, 526, 532 datos resultantes de tales capas de de-CNN en 3D 518, 524, 534 con los datos de las “últimas” capas de CNN en 3D que funcionan a la misma resolución (de 512 a 520, de 508 a 526 y de 504 a 532), pueden lograrse predicciones altamente precisas. A lo largo de la trayectoria de aumento a escala, pueden usarse capas de CNN en 3D adicionales 522, 528, 534. Puede codificarse lógica adicional dentro de los parámetros de la red haciendousode capas densamente conectadas que destilan, por ejemplo, lógica por cada vóxel basándose en los resultados de los filtros de la capa de CNN en 3D entrante 534. Such an architecture may employ a variety of resolution scales, effectively performing downscaling 506, 510, 514 as outputs from a prior set of 3D CNN layers 504, 508, 512 via convolutional (dilated and/or downsampling) or max-pooling layers. The term “meaningful features” refers to (successive) derivations of information relevant to determining target output values, however they are also encoded by the 3D de-CNN layers, which effectively perform upscaling while employing filters. By combining 520, 526, 532 data resulting from such 3D de-CNN layers 518, 524, 534 with data from the “last” 3D CNN layers operating at the same resolution (512 to 520, 508 to 526, and 504 to 532), highly accurate predictions can be achieved. Along the upscaling path, additional 3D CNN layers 522, 528, 534 may be used. Additional logic may be encoded within the network parameters by making use of densely connected layers that distill, for example, voxel-wise logic based on the results of the incoming 3D CNN layer 534 filters.

Cuando se usa para inferencia, habiéndose entrenado para tener parámetros internos codificados de tal manera que la validación proporciona resultados suficientemente precisos, puede presentarse una muestra de entrada y la red de aprendizaje profundo en 3D puede proporcionar coordenadas canónicas predichas por cada vóxel 542. When used for inference, having been trained to have internal parameters encoded in such a way that validation provides sufficiently accurate results, an input sample can be presented and the 3D deep learning network can provide predicted canonical coordinates for each 542 voxel.

La figura 6 representa un resumen esquemático de un componente de sistema para la segmentación de datos de imágenes dentomaxilofaciales en 3D según una realización de la invención. Se describen métodos y sistemas para la segmentación automática basándose en aprendizaje profundo en la solicitud de patente europea n.017179185.8 con el título“Classification and 3D modelling of 3D dento-maxillofacial structures using deep learning methods".Figure 6 represents a schematic overview of a system component for segmenting 3D dento-maxillofacial image data according to an embodiment of the invention. Methods and systems for automatic segmentation based on deep learning are described in European patent application No. 017179185.8 entitled "Classification and 3D modeling of 3D dento-maxillofacial structures using deep learning methods".

En particular, el sistema informático 602 puede estar configurado para recibir una pila de datos de imágenes en 3D 604 de una estructura dentomaxilofacial. La estructura puede incluir, por ejemplo, estructuras de maxilar, dientes y nervios.Losdatos de imágenes en 3D pueden comprender vóxeles, es decir elementos espaciales en 3D asociados con un valor de vóxel, por ejemplo un valor en escala de grisesoun valor a color, que representa un valor de intensidadodensidad de radiación. Preferiblemente, la pila de datos de imágenes en 3D puede incluir unos datos de imágenes en CBCT según un formato predeterminado, por ejemplo el formato DICOMoun derivado del mismo. In particular, the computer system 602 may be configured to receive a 3D image data stack 604 of a dentomaxillofacial structure. The structure may include, for example, jawbone structures, teeth, and nerves. The 3D image data may comprise voxels, i.e., 3D spatial elements associated with a voxel value, for example, a grayscale value or a color value, representing a radiation intensity or density value. Preferably, the 3D image data stack may include CBCT image data in a predetermined format, for example, the DICOM format or a derived format thereof.

Particularmente en exploraciones de CBCT, la radiodensidad (medida en unidades de Hounsfield (UH)), es imprecisa dado que diferentes zonas en la exploración aparecen con diferentes valores en escala de grises dependiendo desusposiciones relativas en el órgano que está explorándose. Las UH medidas a partir de la misma zona anatómica con dispositivos de exploración tanto de CBCT como de TAC de calidad médica no son idénticas y, por tanto, no son fiables para la determinación de densidad ósea específica de sitio determinada de manera radiográfica. Particularly in CBCT scans, radiodensity (measured in Hounsfield units (HU)) is imprecise because different areas on the scan appear with different grayscale values depending on their relative positions in the organ being scanned. HU measured from the same anatomical area with both CBCT and medical-grade CT scanners are not identical and are therefore unreliable for determining radiographically determined site-specific bone density.

Además,Iossistemas de CBCT dentales no emplean un sistema normalizado para ajustar a escalaIosniveles de gris que representanIosvalores de densidad reconstruidos. Por tanto, estos valores son arbitrarios y no permiten una evaluación de la calidad ósea. En ausencia de una normalización de este tipo, resulta difícil interpretarIosniveles de grisoimposible compararIosvalores resultante de diferentes máquinas. Furthermore, dental CBCT systems do not employ a standardized system for scaling the gray levels representing the reconstructed density values. These values are therefore arbitrary and do not allow for an assessment of bone quality. In the absence of such normalization, it is difficult to interpret the gray levels or impossible to compare the resulting values from different machines.

Las estructuras de dientes y hueso maxilar tienen una densidad similar, de modo que es difícil que un ordenador distinga entre vóxeles pertenecientes a dientes y vóxeles pertenecientes a un maxilar. Adicionalmente,Iossistemas de CBCT son muy sensibles al denominado endurecimiento por haz que produce rayas oscuras entre dos objetos de alta atenuación (tales como metalohueso), con rayas claras circundantes. The structures of teeth and jawbone have a similar density, so it is difficult for a computer to distinguish between voxels belonging to teeth and voxels belonging to a jawbone. Additionally, CBCT systems are very sensitive to what is known as beam hardening, which produces dark lines between two high-attenuation objects (such as metallobone), with surrounding light lines.

Debido aIosmotivos mencionados anteriormente, y tal como se describirá en más detalle a continuación en el presente documento, resulta particularmente beneficioso que el sistema de superposición use el componente de sistema tal como se describe en el presente documento con referencia a la figura 6. Due to the reasons mentioned above, and as will be described in more detail later in this document, it is particularly beneficial for the overlay system to use the system component as described herein with reference to Figure 6.

El componente de sistema puede comprender un procesador previo de segmentación 606 para procesar previamenteIosdatos de imágenes en 3D antes de alimentarse a la entrada de una primera red neuronal profunda en 3D 612, que está entrenada para producir un conjunto en 3D de vóxeles clasificados como salida 614. Un procesamiento previo de este tipo puede comprender, por ejemplo, normalizar valores de vóxel a un intervalo que es más beneficioso para una red neuronal. Tal como se describirá en más detalle a continuación en el presente documento, la red neuronal profunda en 3D puede entrenarse según un esquema de entrenamiento predeterminado de modo que la red neuronal entrenada puede clasificar con precisión vóxeles en la pila de datos de imágenes en 3D en vóxeles de diferentes clases (por ejemplo, vóxeles asociados con diente, hueso maxilar y/o tejido nervioso). La red neuronal profunda en 3D puede comprender una pluralidad de capas conectadas de red neuronal convolucional en 3D (CNN en 3D). The system component may comprise a segmentation preprocessor 606 for preprocessing the 3D image data before being fed as input to a first 3D deep neural network 612, which is trained to produce a 3D set of classified voxels as output 614. Such preprocessing may comprise, for example, normalizing voxel values to a range that is most beneficial to a neural network. As will be described in more detail hereinafter, the 3D deep neural network may be trained according to a predetermined training scheme such that the trained neural network can accurately classify voxels in the 3D image data stack into voxels of different classes (e.g., voxels associated with tooth, jawbone, and/or nervous tissue). The 3D deep neural network may comprise a plurality of connected 3D convolutional neural network (3D CNN) layers.

El sistema informático puede comprender además un procesador posterior de segmentación 616 para reconstruir con precisión modelos en 3D de diferentes partes de la estructura dentomaxilofacial (por ejemplo, diente, maxilar y nervio) usandoIosvóxeles clasificados por la red neuronal profunda en 3D.Losvóxeles clasificados 614 pueden comprender conjuntos de vóxeles que representan, por ejemplo, todosIosclasificados como que pertenecen a una estructura de diente, maxilaronervio. Puede resultar beneficioso crear datos en 3D de estos tipos de estructuras de tal manera que dientes individuales y/o maxilares (por ejemplo superior, inferior) se representan mediante modelos en 3D independientes. Esto puede lograrse mediante una reconstrucción de volumen 620. Para el caso de separar conjuntos de vóxeles que pertenecen a dientes individuales, esto puede lograrse mediante (combinaciones de) erosión binaria en 3D, creación de marcadores en 3D y transformación divisoria en 3D. Para la combinación de separación en partes de maxilar inferior y superior, puede encontrarse una distancia desde el origen a lo largo del eje arriba-abajo (sistema de coordenadas del mundo real) a la que la suma deIosvóxeles en el plano perpendicular a esta dirección está a un mínimo en comparación con otros planos intersecantes a lo largo del mismo eje. La división en partes de maxilar superior e inferior puede realizarse empleando esta distancia. En otra realización,Iosmaxilares pueden dividirse automáticamente mediante la red profunda clasificandoIosvóxeles correspondientes como clases de maxilar independientes. Otras partes deIosvóxeles clasificados, por ejemplo vóxeles que se clasificaron por la red neuronal profunda en 3D como que pertenecen a nervios, pueden procesarse posteriormente usando una función de interpolación 618 y almacenarse como datos de nervios en 3D 622. Tras la segmentación, que realiza procesamiento posterior deIosdatos en 3D de las diversas partes de la estructura dentomaxilofacial,Iosdatos de nervios, maxilar y dientes 622-626 pueden combinarse y formatearse en modelos en 3D 628 independientes que representan con precisión las estructuras dentomaxilofaciales enIosdatos de imágenes en 3D que se alimentaron a la entrada del sistema informático. Obsérvese que tantoIosvóxeles clasificados 614 así comoIosmodelos en 3D 628 se definen en el mismo sistema de coordenadas queIosdatos de entrada 604. The computer system may further comprise a segmentation post-processor 616 for accurately reconstructing 3D models of different parts of the dentomaxillofacial structure (e.g., tooth, jaw, and nerve) using the voxels classified by the 3D deep neural network. The classified voxels 614 may comprise sets of voxels representing, e.g., all voxels classified as belonging to a tooth, maxilla, or nerve structure. It may be beneficial to create 3D data of these types of structures such that individual teeth and/or jaws (e.g., upper, lower) are represented by separate 3D models. This may be achieved by a volume reconstruction 620. For the case of separating sets of voxels belonging to individual teeth, this may be achieved by (combinations of) 3D binary erosion, 3D marker creation, and 3D splitting transform. For the combination separation into upper and lower jaw parts, a distance from the origin along the up-down axis (real-world coordinate system) can be found at which the sum of the voxels in the plane perpendicular to this direction is at a minimum compared to other intersecting planes along the same axis. The division into upper and lower jaw parts can be performed using this distance. In another embodiment, the jaws can be automatically divided by the deep network by classifying the corresponding voxels as separate jaw classes. Other portions of the classified voxels, for example voxels that were classified by the 3D deep neural network as belonging to nerves, may be post-processed using an interpolation function 618 and stored as 3D nerve data 622. Following segmentation, which performs post-processing on the 3D data of the various portions of the dentomaxillofacial structure, the nerve, jaw, and teeth data 622-626 may be combined and formatted into separate 3D models 628 that accurately represent the dentomaxillofacial structures in the 3D image data that were fed into the input of the computer system. Note that both the classified voxels 614 as well as the 3D models 628 are defined in the same coordinate system as the input data 604.

Con el fin de hacer que la red neuronal profunda en 3D sea robusta frente a la variabilidad presente, por ejemplo, en datos de exploración de CBCT actuales, la red neuronal profunda en 3D puede entrenarse usando un módulo 638 para usar modelos en 3D de partes de la estructura dentomaxilofacial tal como se representa medianteIosdatos de imágenes en 3D.Losdatos de entrenamiento en 3D 630 pueden alinearse correctamente con una imagen de CBCT presentada en 604 para la que se conoce la salida objetivo asociada (por ejemplo, datos de imagen de TAC en 3D de una estructura dentomaxilofacial y una representación segmentada en 3D asociada de la estructura dentomaxilofacial). Pueden obtenerse datos de entrenamiento en 3D convencionales segmentando manualmenteIosdatos de entrada, lo cual puede representar una cantidad significativa de trabajo. Adicionalmente, la segmentación manual da como resultado una baja reproducibilidad y sistematicidad de datos de entrada que van a usarse. In order to make the 3D deep neural network robust against the variability present in, for example, current CBCT scan data, the 3D deep neural network may be trained using a module 638 to use 3D models of portions of the dentomaxillofacial structure as represented by the 3D image data. The 3D training data 630 may be properly aligned to a CBCT image presented at 604 for which the associated target output is known (e.g., 3D CT image data of a dentomaxillofacial structure and an associated 3D segmented representation of the dentomaxillofacial structure). Conventional 3D training data may be obtained by manually segmenting the input data, which may be a significant amount of work. Additionally, manual segmentation results in low reproducibility and consistency of input data to be used.

Con el fin de contrarrestar este problema, en una realización, pueden usarse datos de entrenamiento producidos de manera óptica 630, es decir modelos en 3D precisos de (partes de) estructura(s) dentomaxilofacial(es), en lugaroademás de datos de entrenamiento segmentados manualmente. Las estructuras dentomaxilofaciales que se usan para producirIosdatos de entrenamiento pueden explorarse usando un dispositivo de exploración óptica en 3D. Tales dispositivos de exploración óptica en 3D se conocen en la técnica y pueden usarse para producir datos de superficie de maxilar y dientes en 3D de alta calidad.Losdatos de superficie en 3D pueden incluir mallas de superficie en 3D 632 que pueden rellenarse (determinando qué vóxeles específicos forman parte del volumen abarcado por la malla) y usarse por un clasificador de vóxeles 634. De esta manera, el clasificador de vóxeles puede generar vóxeles clasificados altamente precisos 636 para el training. Adicionalmente, tal como se mencionó anteriormente, también pueden usarse vóxeles de entrenamiento manualmente clasificados por el módulo de entrenamiento para entrenar la red. El módulo de entrenamiento puede usar los vóxeles de entrenamiento clasificados como datos de entrenamiento de TAC objetivo y asociados como entrada. In order to counteract this problem, in one embodiment, optically produced training data 630, i.e., accurate 3D models of (parts of) dentomaxillofacial structure(s), may be used instead of or in addition to manually segmented training data. The dentomaxillofacial structures that are used to produce the training data may be scanned using a 3D optical scanning device. Such 3D optical scanning devices are known in the art and may be used to produce high quality 3D jaw and tooth surface data. The 3D surface data may include 3D surface meshes 632 that may be populated (by determining which specific voxels are part of the volume encompassed by the mesh) and used by a voxel classifier 634. In this manner, the voxel classifier may generate highly accurate classified voxels 636 for training. Additionally, as mentioned above, training voxels manually classified by the training module can also be used to train the network. The training module can use the classified training voxels as target CT training data and associated data as input.

Las figuras 7A y 7B representan ejemplos de arquitecturas de red neuronal profunda en 3D para la segmentación de datos de imágenes dentomaxilofaciales en 3D según diversas realizaciones de la invención. Tal como se muestra en la figura 7A, la red puede implementarse usando redes neuronales convolucionales en 3D (CNN en 3D). Las capas convolucionales pueden emplear una función de activación asociada con las neuronas en las capas tales como una función sigmoide, función tanh, función relu, función softmax, etc. Puede usarse una pluralidad de capas convolucionales en 3D en las que pueden usarse variaciones minoritarias en el número de capas ysusparámetros de definición, por ejemplo diferentes funciones de activación, cantidades y tamaños de núcleos, y capas funcionales adicionales tales como capas de abandono y/o normalización en lotes en la implementación sin perder la esencia del diseño de la red neuronal profunda en 3D. Figures 7A and 7B depict examples of 3D deep neural network architectures for segmentation of 3D dentomaxillofacial image data in accordance with various embodiments of the invention. As shown in Figure 7A, the network may be implemented using 3D convolutional neural networks (3D CNNs). The convolutional layers may employ an activation function associated with the neurons in the layers such as a sigmoid function, tanh function, relu function, softmax function, etc. A plurality of 3D convolutional layers may be used wherein minor variations in the number of layers and their defining parameters, for example different activation functions, numbers and sizes of kernels, and additional functional layers such as dropout and/or batch normalization layers may be used in the implementation without losing the essence of the 3D deep neural network design.

La red puede incluir una pluralidad de trayectorias convolucionales, en este ejemplo tres trayectorias convolucionales, una primera trayectoria convolucional asociada con un primer conjunto de capas convolucionales en 3D 704, una segunda trayectoria convolucional asociada con un segundo conjunto de capas convolucionales en 3D 706 y un tercer conjunto de capas convolucionales en 3D 708. Un ordenador que ejecuta el procesamiento de datos puede proporcionar un conjunto de datos en 3D 702, por ejemplo datos de imágenes de TAC, a las entradas de las trayectorias convolucionales. El conjunto de datos en 3D puede ser una representación de vóxeles de una estructura dental en 3D. The network may include a plurality of convolutional paths, in this example three convolutional paths, a first convolutional path associated with a first set of 3D convolutional layers 704, a second convolutional path associated with a second set of 3D convolutional layers 706, and a third set of 3D convolutional layers 708. A computer performing data processing may provide a 3D data set 702, for example CT image data, as inputs to the convolutional paths. The 3D data set may be a voxel representation of a 3D dental structure.

La función de las diferentes trayectorias se ilustra en más detalle en la figura 7B. Tal como se muestra en esta figura, pueden proporcionarse vóxeles de la representación de vóxeles a la entrada de la red neuronal profunda en 3D.Losvóxeles de la representación de vóxeles pueden definir un volumen predeterminado, que puede denominarse volumen de imagen 7014. El ordenador puede dividir el volumen de imagen en primeros bloques de vóxeles y proporcionar un primer bloque a la entrada de la primera trayectoria. Las capas convolucionales en 3D de la primera trayectoria703i pueden realizar una operación de convolución en 3D en el primer bloque de vóxeles701i.Durante el procesamiento, la salida de una capa de convolución en 3D de la primera trayectoria es la entrada de una capa de convolución en 3D posterior en la primera trayectoria. De esta manera, cada capa convolucional en 3D puede generar un mapa de características en 3D que representa partes del primer bloque de píxeles que se proporciona a la entrada de la primera trayectoria. Por tanto, una capa convolucional en 3D que está configurada para generar tales mapas de características puede denominarse capa de características de CNN en 3D. The function of the different trajectories is illustrated in more detail in Figure 7B. As shown in this figure, voxels from the voxel representation may be provided as input to the 3D deep neural network. The voxels from the voxel representation may define a predetermined volume, which may be referred to as an image volume 7014. The computer may divide the image volume into first blocks of voxels and provide a first block as input to the first trajectory. The 3D convolutional layers of the first trajectory 703i may perform a 3D convolution operation on the first block of voxels 701i. During processing, the output of a 3D convolution layer in the first trajectory is the input to a subsequent 3D convolution layer in the first trajectory. In this way, each 3D convolutional layer can generate a 3D feature map representing portions of the first block of pixels provided as input to the first trajectory. Therefore, a 3D convolutional layer configured to generate such feature maps can be referred to as a 3D CNN feature layer.

Tal como se muestra en la figura 7B, las capas convolucionales de la segunda trayectoria 7032 pueden estar configuradas para procesar segundos bloques de vóxeles 7012 de la representación de vóxeles, en las que un segundo bloque de vóxeles representa una versión sometida a reducción de escala de un primer bloque de vóxeles asociado y en las que el primer y segundo bloques de vóxeles tienen el mismo origen centrado. El volumen representado del segundo bloque es mayor que el volumen del primer bloque. Además, el segundo bloque de vóxeles representa una versión sometida a reducción de escala de un primer bloque de vóxeles asociado. El factor de reducción de escala puede ser cualquier valor apropiado. En una realización, el factor de reducción de escala puede seleccionarse entre 20 y 2, preferiblemente entre 5 y 3. As shown in Figure 7B, the convolutional layers of the second path 7032 may be configured to process second voxel blocks 7012 of the voxel representation, wherein a second voxel block represents a downscaled version of an associated first voxel block, and wherein the first and second voxel blocks have the same centered origin. The rendered volume of the second block is larger than the volume of the first block. Furthermore, the second voxel block represents a downscaled version of an associated first voxel block. The downscaling factor may be any appropriate value. In one embodiment, the downscaling factor may be selected between 20 and 2, preferably between 5 and 3.

La primera trayectoria703i puede definir un primer conjunto de capas de características de CNN en 3D (por ejemplo 5-20 capas), que están configuradas para procesar datos de entrada (por ejemplo, primeros bloques de vóxeles en posiciones predeterminadas en el volumen de imagen) a la resolución de vóxeles del objetivo (es decir, vóxeles del volumen de imagen que se clasifican). La segunda trayectoria puede definir un segundo conjunto de capas de características de CNN en 3D (5-20 capas), que están configuradas para procesar segundos bloques de vóxeles en la que cada bloque de los segundos bloques de vóxeles 7012 tiene el mismo punto central quesubloque asociado del primer bloque de vóxeles701i.Además, los vóxeles de los segundos bloques se procesan a una resolución que es inferior a la resolución de701i.Por tanto, los segundos bloques de vóxeles representan un volumen mayor en dimensiones del mundo real que los primeros bloques. De esta manera, las segundas capas de características de CNN en 3D procesan vóxeles con el fin de generar mapas de características en 3D que incluyen información sobre los vecinos directos de vóxeles asociados que se procesan por las primeras capas de características de CNN en 3D. De esta manera, la segunda trayectoria permite que la red neuronal profunda en 3D determine información contextual, es decir información sobre el contexto (por ejemplo,suentorno) de vóxeles de los datos de imágenes en 3D que se presentan a la entrada de la red neuronal profunda en 3D. The first path 703i may define a first set of 3D CNN feature layers (e.g., 5-20 layers), which are configured to process input data (e.g., first voxel blocks at predetermined positions in the image volume) at the target voxel resolution (i.e., voxels in the image volume being classified). The second path may define a second set of 3D CNN feature layers (5-20 layers), which are configured to process second voxel blocks, wherein each block of the second voxel blocks 7012 has the same center point as its associated block of the first voxel block 701i. Furthermore, the voxels in the second blocks are processed at a resolution that is lower than the resolution of 701i. Thus, the second voxel blocks represent a larger volume in real-world dimensions than the first blocks. In this way, the second feature layers of a 3D CNN process voxels to generate 3D feature maps that include information about the direct neighbors of associated voxels that are processed by the first feature layers of a 3D CNN. In this way, the second trajectory allows the 3D deep neural network to determine contextual information, i.e., information about the context (e.g., their surroundings) of voxels in the 3D image data that are presented as input to the 3D deep neural network.

De una manera similar, puede usarse una tercera trayectoria 7033, para determinar información contextual adicional de los primeros bloques de vóxeles 7 OI3. Por tanto, la tercera trayectoria puede comprender un tercer conjunto de capas de características de CNN en 3D (5-2O capas), que están configuradas para procesar terceros bloques de vóxeles en las que cada bloque de los terceros bloques de vóxeles 7 OI3 tienen el mismo punto central quesubloque asociado del primer bloque de vóxeles701i y el segundo bloque de vóxeles 7 OI3. Además, los vóxeles de los terceros bloques se procesan a una resolución que es inferior a la resolución de los primeros y segundos bloques de vóxeles. Este factor de reducción de escala puede establecerse una vez más a un valor apropiado. En una realización, el factor de reducción de escala puede seleccionarse entre 20 y 3, preferiblemente entre 16 y 9. In a similar manner, a third path 7033 may be used to determine additional contextual information of the first voxel blocks 7 OI3. Thus, the third path may comprise a third set of 3D CNN feature layers (5-20 layers) configured to process third voxel blocks, wherein each block of the third voxel blocks 7 OI3 has the same center point as its associated block of the first voxel block 701i and the second voxel block 7 OI3. Furthermore, the voxels of the third blocks are processed at a resolution that is lower than the resolution of the first and second voxel blocks. This downscaling factor may again be set to an appropriate value. In one embodiment, the downscaling factor may be selected between 20 and 3, preferably between 16 and 9.

Usando tres trayectoriasomás trayectorias, tantoIosdatos de imágenes en 3D(Iosdatos de entrada) como la información contextual sobre vóxeles deIosdatos de imágenes en 3D pueden procesarse en paralelo. La información contextual es importante para clasificar estructuras dentomaxilofaciales, que normalmente incluyen estructuras dentales estrechamente empaquetadas que son difíciles de distinguir. Using three trajectories or more trajectories, both the 3D image data (the input data) and contextual information about voxels in the 3D image data can be processed in parallel. Contextual information is important for classifying dentomaxillofacial structures, which typically include closely packed dental structures that are difficult to distinguish.

Después se fusionan la salida deIosconjuntos de capas de características de CNN en 3D y se alimentan a la entrada de un conjunto de capas de CNN en3 dcompletamente conectadas 410, que están entrenadas para derivar la clasificación pretendida de vóxeles 412 que se ofrecen en la entrada de la red neuronal y se procesan mediante las capas de características de CNN en 3D. The output of the 3D CNN feature layer sets are then fused and fed into the input of a set of 3D fully connected CNN layers 410, which are trained to derive the intended classification of voxels 412 provided as input to the neural network and processed by the 3D CNN feature layers.

Losconjuntos de capas de características de CNN en 3D pueden entrenarse (mediantesusparámetros que pueden aprenderse) para derivar y pasar la información óptimamente útil que puede determinarse a partir desuentrada específica, las capas completamente conectadas codifican parámetros que determinarán la manera en la que debe combinarse la información a partir de las tres trayectorias anteriores para proporcionar vóxeles clasificados óptimos 712. En este caso, la salida (la última capa) de las capas completamente conectadas puede proporcionar una pluralidad de activaciones para cada vóxel. Una activación de vóxeles de este tipo puede representar una medida de probabilidad (una predicción) que define la probabilidad de que un vóxel pertenezca a una de una pluralidad de clases, por ejemplo clases de estructuras dentales, por ejemplo una estructura de diente, maxilar y/o nervio. Para cada vóxel, puede determinarse un umbral de activaciones de vóxeles asociadas con diferentes estructuras dentales con el fin de obtener un vóxel clasificado. Después de eso, vóxeles clasificados que pertenecen a diferentes clases de estructuras dentales pueden presentarse en el espacio de imagen 714. Por tanto, la salida de la red neuronal profunda en 3D son vóxeles clasificados en un espacio de imagen que corresponde al espacio de imagen deIosvóxeles en la entrada. The 3D CNN feature layer sets can be trained (via their learnable parameters) to derive and pass the optimally useful information that can be determined from their specific input, the fully connected layers encode parameters that will determine how the information from the previous three trajectories should be combined to provide optimal classified voxels 712. In this case, the output (the last layer) of the fully connected layers may provide a plurality of activations for each voxel. Such a voxel activation may represent a probability measure (a prediction) that defines the probability of a voxel belonging to one of a plurality of classes, for example classes of dental structures, for example a tooth, jaw and/or nerve structure. For each voxel, a threshold of voxel activations associated with different dental structures may be determined in order to obtain a classified voxel. After that, classified voxels belonging to different classes of dental structures can be presented in the image space 714. Therefore, the output of the 3D deep neural network are classified voxels in an image space that corresponds to the image space of the input voxels.

Obsérvese que, aunque una red neuronal profunda en 3D de segmentación tal como se describió con respecto a la figura 6 y la figura 7 puede ser inherentemente invariable frente a la traslación a lo largo del espacio de datos de imágenes en 3D, puede resultar beneficioso emplear información a partir del procesador 114 para aplicar una etapa de alineación previa inicial 124 para ajustar al menos rotaciones (aunque de manera relativamente aproximada) para obtener una postura canónica. Estando direcciones ortogonales del mundo real (por ejemplo, arriba-abajo, izquierdaderecha y delante-detrás del paciente) presentes enIosdatos de imágenes en 3D usados en una dirección canónica predefinida (por ejemplo, arriba-abajo de direcciónz ,izquierda-derecha de direcciónxy delante-detrás de dirección y de representación respectivamente interna (conjunto de datos en 3D)), puede reducirse el ancho de banda de memoria requerido para la red neuronal profunda en 3D de segmentación, puede reducirse el tiempo de entrenamiento y puede mejorarse la precisión de segmentación. Esto puede realizarse mediante entrenamiento específico y realización de inferencia (predicción en muestras no de entrenamiento) en datos teniendo dichos conjuntos de datos en 3D previamente alineados en cuenta rotaciones para dichas rotaciones canónicas. Note that although a segmentation 3D deep neural network as described with respect to Figure 6 and Figure 7 may be inherently translation invariant across the 3D image data space, it may be beneficial to employ information from processor 114 to apply an initial pre-alignment step 124 to adjust at least rotations (albeit relatively roughly) to obtain a canonical pose. By having real-world orthogonal directions (e.g., up-down, left-right, and in front of-behind the patient) present in the 3D image data used in a predefined canonical direction (e.g., up-down in the z direction, left-right in the x direction, and in front of-behind in the y direction, respectively, of the internal representation (3D dataset)), the memory bandwidth required for the segmentation 3D deep neural network may be reduced, training time may be reduced, and segmentation accuracy may be improved. This can be done by specific training and performing inference (prediction on non-training samples) on data having said 3D data sets previously aligned into account rotations for said canonical rotations.

La figura 8 representa un resumen esquemático de un componente de sistema para la taxonomía de datos de imágenes en 3D dentomaxilofaciales en 3D según una realización de la invención. Se describen métodos y sistemas para la taxonomía automática basándose en aprendizaje profundo en la solicitud de patente europea n.017194460.6 con el título “Automated classification and taxonomy of 3D teeth data using deep learning methods”. El sistema 800 puede incluir dos procesadores diferentes, un primer módulo de entrenamiento 802 para ejecutar un procedimiento para entrenar la red neuronal profunda en 3D 826 y un segundo módulo de clasificación 814 para ejecutar un procedimiento de clasificación basándose en nuevos datos de entrada 816. Figure 8 represents a schematic overview of a system component for taxonomy of 3D dentomaxillofacial image data in accordance with an embodiment of the invention. Methods and systems for automatic taxonomy based on deep learning are described in European patent application No. 017194460.6 entitled “Automated classification and taxonomy of 3D teeth data using deep learning methods”. The system 800 may include two different processors, a first training module 802 for executing a method for training the 3D deep neural network 826 and a second classification module 814 for executing a classification method based on new input data 816.

Tal como se muestra en la figura 8, el módulo de entrenamiento puede comprender unoomás repositoriosobases de datos 806, 812 de fuentes de datos destinadas al entrenamiento. Tal repositorio puede obtenerse mediante una entrada 804 que está configurada para recibir datos de entrada, por ejemplo datos de imágenes en 3D que incluyen denticiones, que pueden almacenarse en diversos formatos junto con las etiquetas deseadas respectivas. Más específicamente, al menos un primer repositorioobase de datos 806 puede usarse para almacenar datos de imágenes en 3D de denticiones y etiquetas asociadas deIosdientes dentro de esta dentición, que puede usarse por un sistema informático 808 que está configurado para segmentar y extraer volúmenes de interés 8 l0 que representan dientes individuales que pueden usarse para el entrenamiento. Un sistema de este tipo puede implementarse tal como se describió con respecto a la figura 6 y la figura 7 en el caso de datos de vóxel (por ejemplo,C b CT/TAC), opuede ser, por ejemplo, mallas de superficie en 3D de coronas de dientes individuales tal como pueden segmentarse a partir de una malla de superficie en 3D que comprende dientes y encías (por ejemplo, datos de IOS). De manera similar, un segundo repositorioobase de datos 812 puede usarse para almacenar otros formatos de datos en 3D, por ejemplo mallas de superficie en 3D generadas mediante exploración óptica y etiquetas de dientes individuales que pueden emplearse durante el entrenamiento de la red. As shown in Figure 8, the training module may comprise one or more repositories or databases 806, 812 of data sources intended for training. Such a repository may be obtained by an input 804 that is configured to receive input data, for example 3D image data including dentitions, which may be stored in various formats together with respective desired labels. More specifically, at least a first repository or database 806 may be used to store 3D image data of dentitions and associated labels of the teeth within this dentition, which may be used by a computing system 808 that is configured to segment and extract volumes of interest 810 representing individual teeth that may be used for training. Such a system may be implemented as described with respect to Figure 6 and Figure 7 in the case of voxel data (e.g., CT/TAC), or it may be, for example, 3D surface meshes of individual tooth crowns as may be segmented from a 3D surface mesh comprising teeth and gums (e.g., IOS data). Similarly, a second repository or database 812 may be used to store other formats of 3D data, for example, 3D surface meshes generated by optical scanning and individual tooth labels that may be employed during training of the network.

Losdatos de entrenamiento en 3D pueden procesarse previamente 826 para dar una representación de vóxeles en 3D (voxelizada) que está optimizada para la red neuronal profunda en 3D 828. El procedimiento de entrenamiento puede terminar en esta fase dado que el procesador de red neuronal profunda en 3D 826 puede requerir únicamente el entrenamiento en muestras de dientes individuales. En una realización, también pueden determinarse datos de dientes en 3D, tales como una malla de superficie en 3D, basándose enIosdatos de imágenes en 3D segmentados que se originan a partir de exploraciones de dentición completa (de 808 a 812), que están etiquetadas de manera apropiada. The 3D training data may be pre-processed 826 to yield a (voxelized) 3D voxel representation that is optimized for the 3D deep neural network 828. The training process may terminate at this stage since the 3D deep neural network processor 826 may only require training on individual tooth samples. In one embodiment, 3D tooth data, such as a 3D surface mesh, may also be determined based on the segmented 3D image data originating from appropriately labeled whole dentition scans (808 to 812).

Cuando se usa el módulo de taxonomía 800 para realizar la taxonomía de una nueva (parte de una) dentición 816, de nuevo pueden emplearse múltiples formatos de datos cuando se traslada la dentición física a una representación en 3D que está optimizada para la red neuronal profunda en 3D 828. Tal como se describió anteriormente, el sistema de taxonomía puede usar, por ejemplo, datos de imágenes en 3D de la dentición 106, 108 y usar un sistema informático 820 (que es 602) que está configurado para segmentar y extraer volúmenes de interés que comprenden dientes individuales 822 (que son 626) de manera análoga a un procesador de entrenamiento 808. Alternativamente, puede usarse otra representación tal como unas mallas de superficie por cada diente 824 resultantes de exploraciones ópticas. Obsérvese de nuevo que pueden usarse datos de dentición completa para extraer otras representaciones en 3D distintas de volúmenes de interés (de 820 a 824). When the taxonomy module 800 is used to taxonomy a new (part of a) dentition 816, again multiple data formats may be employed when translating the physical dentition into a 3D representation that is optimized for the 3D deep neural network 828. As described above, the taxonomy system may use, for example, 3D image data of the dentition 106, 108 and use a computing system 820 (which is 602) that is configured to segment and extract volumes of interest comprising individual teeth 822 (which are 626) in a manner analogous to a training processor 808. Alternatively, another representation such as per-tooth surface meshes 824 resulting from optical scans may be used. Note again that whole dentition data can be used to extract other 3D representations of volumes of interest (820 to 824).

Puede implementarse el procesamiento previo 826 para dar el formato tal como se requiere para la red neuronal profunda en 3D 828. Obsérvese que, dentro del contexto de todo el sistema de superposición, en el caso de un conjunto de datos de imágenes en 3D recibido que son, por ejemplo, datos de CBCT/TAC, la taxonomía de datos segmentados por la red 828 puede realizarse usando (subconjuntos de) datos generados en la reconstrucción del volumen 620 directamente. En el caso de un conjunto de datos de imágenes en 3D recibido que son, por ejemplo, datos de IOS, la taxonomía mediante 828 puede realizarse directamente con (subconjuntos de) datos a partir de la segmentación de malla de superficie en 3D y voxelización de coronas. Pre-processing 826 may be implemented to format as required for the 3D deep neural network 828. Note that within the context of the overall overlay system, in the case of a received 3D image dataset which is e.g. CBCT/CAT data, the taxonomy of data segmented by the network 828 may be performed using (subsets of) data generated in the volume reconstruction 620 directly. In the case of a received 3D image dataset which is e.g. IOS data, the taxonomy by 828 may be performed directly with (subsets of) data from 3D surface mesh segmentation and crown voxelization.

Las salidas de la red neuronal profunda en 3D pueden alimentarse a una etapa de procesamiento posterior de taxonomía 830 diseñada para aprovechar conocimiento teniendo en cuenta las denticiones (por ejemplo, el hecho de que cada índice de diente individual sólo puede aparecer una vez en una única dentición) para garantizar la precisión de la taxonomía a lo largo del conjunto de etiquetas aplicadas a los dientes de la dentición. Esto puede conducir a que el sistema emita etiquetas de dientes por cada objeto de diente individual identificado. En una realización, pueden realimentarse etiquetas correctas en los datos de entrenamiento con el propósito de aumentar la precisión futura tras el entrenamiento adicional de la red neuronal profunda en 3D. The outputs of the 3D deep neural network may be fed into a taxonomy post-processing stage 830 designed to leverage dentition-specific knowledge (e.g., the fact that each individual tooth index can only appear once in a single dentition) to ensure taxonomy accuracy across the set of labels applied to the teeth in the dentition. This may result in the system outputting tooth labels for each individual tooth object identified. In one embodiment, correct labels may be fed back into the training data for the purpose of increasing future accuracy upon further training of the 3D deep neural network.

La figura 9 representa un ejemplo de una arquitectura de red neuronal profunda en 3D para la taxonomía de datos de imágenes dentomaxilofaciales en 3D según una realización de la invención. La red puede implementarse usando capas convolucionales en 3D (CNN en 3D). Las convoluciones pueden usar una función de activación. Puede usarse una pluralidad de capas convolucionales en 3D, 904-908, en las que pueden usarse variaciones minoritarias en el número de capas ysusparámetros de definición, por ejemplo diferentes funciones de activación, cantidades de núcleos,usode submuestreo y tamaños, y capas funcionales adicionales tales como capas de abandono y/o normalización en lotes, en la implementación sin perder la esencia del diseño de la red neuronal profunda en 3D. Figure 9 depicts an example of a 3D deep neural network architecture for 3D dentomaxillofacial image data taxonomy according to an embodiment of the invention. The network may be implemented using 3D convolutional layers (3D CNNs). The convolutions may use an activation function. A plurality of 3D convolutional layers, 904-908, may be used, wherein minor variations in the number of layers and their defining parameters, e.g., different activation functions, numbers of kernels, use of subsampling and sizes, and additional functional layers such as dropout and/or batch normalization layers, may be used in the implementation without losing the essence of the 3D deep neural network design.

En parte para reducir la dimensionalidad de la representación interna de los datos dentro de la red neuronal profunda en 3D, puede emplearse una capa de combinación máxima en 3D 910. En este punto en la red, la representación interna puede pasarse a una capa densamente conectada 912 dirigida a ser una capa intermedia para trasladar la representación en el espacio en 3D a activaciones de posibles etiquetas, en particular etiquetas de tipo de diente. In part to reduce the dimensionality of the internal representation of the data within the 3D deep neural network, a 3D max pooling layer 910 may be employed. At this point in the network, the internal representation may be passed to a densely connected layer 912 intended to be an intermediate layer for translating the representation in 3D space to activations of possible labels, particularly tooth type labels.

La capa de salidaofinal 914 puede tener la misma dimensionalidad que el número deseado de etiquetas codificadas y puede usarse para determinar un valor de activación (análogo a una predicción) por cada posible etiqueta 918. The final output layer 914 may have the same dimensionality as the desired number of encoded labels and may be used to determine an activation value (analogous to a prediction) for each possible label 918.

La red puede entrenarse usando un conjunto de datos con, como entrada para las capas de CNN en 3D, un conjunto de datos previamente procesado de datos en 3D 902, es decir una representación de vóxeles en 3D de un diente. Para cada muestra (que es una representación en 3D de un único diente) puede usarse una representación coincidente de la etiqueta correcta 916 para determinar una pérdida entre la salida deseada y la real 9 l4. Esta pérdida puede usarse durante el entrenamiento como medida para ajustar parámetros dentro de las capas de la red neuronal profunda en 3D. Pueden usarse funciones optimizadoras durante el entrenamiento para ayudar en la eficiencia del esfuerzo de entrenamiento. La red puede entrenarse durante varias iteraciones hasta que los parámetros internos conducen a una precisión deseada de los resultados. Cuando se entrena de manera apropiada, puede presentarse una muestra sin etiquetar como entrada y puede usarse la red neuronal profunda en 3D para derivar una predicción para cada posible etiqueta. The network may be trained using a dataset with, as input to the 3D CNN layers, a pre-processed dataset of 3D data 902, i.e. a 3D voxel representation of a tooth. For each sample (which is a 3D representation of a single tooth) a matched representation of the correct label 916 may be used to determine a loss between the desired and actual output 914. This loss may be used during training as a measure to tune parameters within the 3D deep neural network layers. Optimizing functions may be used during training to aid in the efficiency of the training effort. The network may be trained for several iterations until the internal parameters lead to a desired accuracy of the results. When properly trained, an unlabeled sample may be presented as input and the 3D deep neural network may be used to derive a prediction for each possible label.

Por tanto, dado que la red neuronal profunda en 3D se entrena para realizar la taxonomía de una muestra de datos en 3D de un diente en uno de una pluralidad de tipos de diente, por ejemplo 32 tipos de diente en el caso de una dentición sana de un adulto, la salida de la red neuronal serán valores de activación y etiquetas de tipo de diente posibles asociadas. La etiqueta de tipo de diente posible con el valor de activación más alto puede indicar al sistema de taxonomía que lo más probable es que la muestra de datos en 3D de un diente represente un diente del tipo indicado por la etiqueta. La etiqueta de tipo de diente posible con el valor de activación más bajoouno relativamente bajo puede indicar al sistema de taxonomía que lo menos probable es que el conjunto de datos en 3D de un diente represente un diente del tipo indicado por tal etiqueta. Thus, as the 3D deep neural network is trained to taxonomy a 3D data sample of a tooth into one of a plurality of tooth types, for example 32 tooth types in the case of a healthy adult dentition, the output of the neural network will be activation values and associated possible tooth type labels. The possible tooth type label with the highest activation value may indicate to the taxonomy system that the 3D data sample of a tooth most likely represents a tooth of the type indicated by the label. The possible tooth type label with the lowest or relatively low activation value may indicate to the taxonomy system that the 3D data set of a tooth is least likely to represent a tooth of the type indicated by such label.

Obsérvese que puede requerirse entrenar modelos de red específicos independientes (teniendo las mismas arquitecturas parámetros finales diferentes después de un entrenamiento específico) basándose en el tipo de volumen de entrada, por ejemplo siendo la representación de vóxeles de entrada un volumen de diente completo,orepresentando la representación de vóxeles de entrada tan sólo una corona de diente. Note that it may be required to train separate specific network models (having the same architectures but different final parameters after specific training) based on the type of input volume, for example, the input voxel representation being a full tooth volume, or the input voxel representation being just a tooth crown.

Obsérvese también que, aunque una red neuronal profunda en 3D de taxonomía tal como se describió con respecto a la figura 8 y la figura 9 (como sucedía con la red neuronal profunda en 3D de segmentación) puede ser inherentemente invariable frente a la traslación a lo largo del espacio de datos de imágenes en 3D, puede resultar beneficioso emplear información a partir del procesador 114 para aplicar una etapa de alineación previa inicial 124 para ajustar al menos rotaciones (aunque de manera relativamente aproximada) para obtener una postura canónica. Estando direcciones ortogonales del mundo real (por ejemplo, arriba-abajo, izquierda-derecha y delante-detrás del paciente) presentes en los datos de imágenes en 3D usados en una dirección canónica predefinida (por ejemplo, arriba-abajo de direcciónz ,izquierda-derecha de direcciónxy delante-detrás de dirección y de representación respectivamente interna (conjunto de datos en 3D)), puede reducirse el ancho de banda de memoria requerido para la red neuronal profunda en 3D de taxonomía, puede reducirse el tiempo de entrenamiento y puede mejorarse la precisión de taxonomía. Esto puede realizarse mediante entrenamiento específico y realización de inferencia en datos teniendo dichos conjuntos de datos en 3D previamente alineados en cuenta rotaciones para dicho sistema de coordenadas canónicas. Note also that although a taxonomy 3D deep neural network as described with respect to Figure 8 and Figure 9 (as was the case with the segmentation 3D deep neural network) may be inherently translation invariant throughout the 3D image data space, it may be beneficial to use information from the processor 114 to apply an initial pre-alignment step 124 to adjust at least rotations (albeit relatively roughly) to obtain a canonical pose. By having real-world orthogonal directions (e.g., up-down, left-right, and in front of-behind the patient) present in the 3D image data used in a predefined canonical direction (e.g., up-down of z-direction, left-right of x-direction, and in front of-behind of y-direction of internal representation respectively (3D dataset)), the memory bandwidth required for the taxonomy 3D deep neural network can be reduced, the training time can be reduced, and the taxonomy accuracy can be improved. This can be done by targeted training and performing inference on data having said 3D datasets pre-aligned into account rotations to said canonical coordinate system.

La figura 10A y la figura 10B muestran ejemplos de puntos clave generados en dos conjuntos de datos dentomaxilofaciales en 3D a modo de ejemplo respectivamente con y sin la inclusión de información de taxonomía. A partir al menos de los datos de imágenes en 3D (volúmenes de superficie) que definen estructuras que representan dientes,ocoronas de dientes, independientes y a partir, por ejemplo, del procesamiento tal como se describió con respecto a la figura 6 y la figura 7 en el caso de datos deCBCT/t A c , oempleando una determinación más habitual de mallas de superficie de coronas de dientes individuales en el caso, por ejemplo, de datos de IOS, pueden determinarse puntos clave que caracterizan las superficies. En efecto, esto puede considerarse como una etapa de reducción para reducir todos los puntos disponibles dentro de una malla de superficie a un conjunto de puntos más relevantes (más prominentes). Esta reducción resulta beneficiosa dado que reduce el tiempo de procesamiento y los requisitos de memoria. Además, pueden seleccionarse métodos para la determinación de tales puntos que se espera que proporcionen aproximadamente el mismo conjunto de puntos aunque las entradas para la generación sean (conjuntos de) mallas de superficie en 3D ligeramente divergentes (representando todavía las mismas estructuras).Losmétodos bien conocidos en la técnica para determinar puntos clave a partir de mallas de superficie incluyen habitualmente la determinación de descriptores(ocaracterísticas) de superficie localesoglobales que pueden realizarse a mano (diseñarse manualmente) y/o aprenderse automáticamente y optimizarse para la repetibilidad a lo largo de mallas de superficie de entrada (ligeramente variables), y pueden optimizarse para el rendimiento (velocidad de determinación de puntos claveoprominentes), por ejemplo tal como se enseña por TONIONIa ,et al. Learning to detect good 3D keypoints.Int J Comput Vis. 2018,vo I.126, páginas 1-20. Ejemplos de tales características son mínimosomáximos locales y globales en la curvatura de superficie. Figure 10A and Figure 10B show examples of keypoints generated on two exemplary 3D dentomaxillofacial datasets, respectively, with and without the inclusion of taxonomy information. From at least the 3D image data (surface volumes) defining structures representing independent teeth or tooth crowns, and from, for example, processing as described with respect to Figure 6 and Figure 7 in the case of CBCT/tAC data, or by employing a more typical determination of surface meshes of individual tooth crowns in the case, for example, of IOS data, keypoints characterizing the surfaces can be determined. In effect, this can be considered as a reduction step to reduce all available points within a surface mesh to a more relevant (more prominent) set of points. This reduction is beneficial since it reduces the processing time and memory requirements. Furthermore, methods for determining such points can be selected that are expected to provide approximately the same set of points even though the inputs for generation are slightly divergent (sets of) 3D surface meshes (still representing the same structures). Well-known methods in the art for determining keypoints from surface meshes typically include the determination of local or global surface descriptors (or features) that can be done by hand (hand-designed) and/or automatically learned and optimized for repeatability across (slightly varying) input surface meshes, and can be optimized for performance (speed of determining keypoints or salient points), for example as taught by TONIONIa, et al. Learning to detect good 3D keypoints. Int J Comput Vis. 2018, vol I.126, pp. 1-20. Examples of such features are local and global minima or maxima in the surface curvature.

En la figura 10A y la figura 10B se muestran representaciones informáticas de dos conjuntos de datos de imágenes en 3D recibidos, incluyendoIosbordes y vértices que definen las mallas de caras de superficie y, por tanto, que muestranIospuntos que definen las superficies.Loscuatro objetos superiores son coronas de dientes individualmente procesadas y segmentadas derivadas a partir de una exploración intrabucal.Loscuatro objetos inferiores son dientes individuales derivados a partir de una exploración de CBCT según el método con referencia a la figura a la figura 6 y la figura 7. Estos dos conjuntos de cuatro dientes se obtienen a partir del mismo paciente aproximadamente en el mismo momento en el tiempo. Se han alineado previamente de manera aproximada con un procesador tal como se describió anteriormente en más detalle con referencia a la figura 3, la figura 4 y la figura 5, determinando el procesador 114 la postura canónica tal como se describió anteriormente. A partir de información según 114, se determinaron volúmenes solapantes, y se segmentaron las estructuras en 3D para dar mallas de superficie independientes que representan dientes individuales. En el caso de la figura 10B, adicionalmente, se realizó una taxonomía de datos de imágenes en 3D de dientes individuales según métodos tal como se describió con referencia a la figura 8 y la figura 9. Computer representations of two received 3D image data sets are shown in Figure 10A and Figure 10B, including the edges and vertices defining the surface face meshes and thus showing the points defining the surfaces. The top four objects are individually processed and segmented tooth crowns derived from an intraoral scan. The bottom four objects are individual teeth derived from a CBCT scan according to the method referring to Figure 6 and Figure 7. These two sets of four teeth are obtained from the same patient at approximately the same point in time. They have been roughly pre-aligned by a processor as described in more detail above with reference to Figure 3, Figure 4 and Figure 5, the processor 114 determining the canonical pose as described above. From information according to 114, overlapping volumes were determined, and 3D structures were segmented to give independent surface meshes representing individual teeth. In the case of Figure 10B, additionally, a taxonomy of 3D image data of individual teeth was performed according to methods as described with reference to Figure 8 and Figure 9.

En particular, en la figura 10A, se han visualizado puntos con etiquetas según el formato P[n.0 de conjunto de datos recibidoHn.0 de punto]; el número de puntos se ha reducido con fines de visualización. Tal como puede observarse, cada conjunto de datos de imágenes en 3D recibido tras la generación de puntos clave tienesupropio conjunto de puntos clave a partir de características prominentes del volumen, en el queIosmismos puntos a lo largo de las superficies se marcarán con un punto clave (aunque numerado de manera arbitraria). Obsérvese que sería posible realizar subgrupos de tales puntos por cada diente individual dentro del conjunto de datos en 3D de origen, pero esto no produciría beneficios adicionales dado que el (mismo) diente individual no podrá identificarse a lo largo deIosdiferentes conjuntos de datos en 3D. In particular, in Figure 10A, labeled points have been displayed according to the format P[received dataset no. 0H point no. 0]; the number of points has been reduced for display purposes. As can be seen, each 3D image dataset received after keypoint generation has its own set of keypoints from prominent volume features, where the same points along the surfaces will be marked with a keypoint (albeit arbitrarily numbered). Note that it would be possible to subgroup such points for each individual tooth within the source 3D dataset, but this would not yield additional benefits since the (same) individual tooth cannot be identified across the different 3D datasets.

En la figura 10B, empleando información a partir de la etapa de taxonomía adicional, el formato de las etiquetas se ha visualizado como P[n.o de conjunto de datos recibido]-[índice de diente identificado]-[n.o de punto]. Este índice del diente identificado es el mismo índice a lo largo de ambos conjuntos de datos recibidos paraIosmismos dientes del mundo real. Debe observarse que, dentro de cada subgrupo de dientes individuales, la numeración de puntos clave todavía es arbitraria. In Figure 10B, using information from the additional taxonomy stage, the format of the labels has been visualized as P[received dataset no.]-[identified tooth index]-[point no.]. This identified tooth index is the same index across both received datasets for the same real-world teeth. It should be noted that, within each subgroup of individual teeth, the keypoint numbering is still arbitrary.

Merece la pena indicar queIosdatos de malla de superficie en 3D (y datos de nube de puntosouna colección de puntos clave) se guardan en general en un formato de coordenadasx ,y y z ortogonales por medio de números de puntos flotantes. Esto abre la posibilidad de una determinación altamente precisa de ubicaciones de puntos clave y, por tanto, resultados de alineación altamente precisos habiendo determinado parámetros de transformación basándose, por ejemplo, en métodos que minimizan una distancia calculada entre tales nubes de puntos clave, como puede ser el caso cuando se emplea, por ejemplo, un método de punto más cercano iterativo. It is worth noting that 3D surface mesh data (and point cloud data or a collection of keypoints) are generally stored in an orthogonal x , y , and z coordinate format using floating-point numbers. This opens up the possibility of highly accurate determination of keypoint locations and, therefore, highly accurate alignment results, with transformation parameters determined based on, for example, methods that minimize a computed distance between such keypoint clouds, as may be the case when employing, for example, an iterative nearest point method.

La información añadida teniendo en cuenta qué punto clave pertenece a qué diente (y haciendo coincidir la representación del mismo diente en el otro conjunto de datos de imágenes en 3D recibido), tal como se muestra en la figura 10B, puede emplearse específicamente para lograr una determinación más precisa de parámetros de transformación de alineación. Por ejemplo, en casos en los que no se ha realizado ninguna alineación previa, la coordenada promedio por cada diente puede emplearse para determinar una alineación previa de un conjunto de datos de imágenes en 3D recibido con respecto al otro (en efecto, orientando aproximadamente los dientes coincidentes de la manera más estrecha posible entres í).En otros casos, puede resultar beneficioso determinar en primer lugar un conjunto de parámetros de transformación (uno por cada diente coincidente entre los dos conjuntos de datos de imágenes en 3D recibidos) y determinar los parámetros de transformación finales basándose en un promedio de un conjunto de este tipo. Esto puede ser especialmente beneficioso en casos en los que el volumen solapante entre ambos conjuntos de datos de imágenes en 3D recibidos no se ha determinado (de manera suficientemente apropiada). The added information by considering which keypoint belongs to which tooth (and matching the representation of the same tooth in the other received 3D image data set), as shown in Figure 10B, can be specifically used to achieve more accurate determination of alignment transformation parameters. For example, in cases where no prior alignment has been performed, the average coordinate for each tooth can be used to determine a prior alignment of one received 3D image data set with respect to the other (in effect, approximately orienting the matched teeth as closely as possible to each other). In other cases, it may be beneficial to first determine a set of transformation parameters (one for each matched tooth between the two received 3D image data sets) and determine the final transformation parameters based on an average of such a set. This can be especially beneficial in cases where the overlapping volume between the two received 3D image data sets has not been determined (adequately enough).

Obsérvese que, para la determinación de parámetros de transformación de alineación, se necesita determinar al menos tres puntos no colineales. Note that, for the determination of alignment transformation parameters, at least three non-collinear points need to be determined.

La figura 11 representa un resumen esquemático de un componente de sistema para la determinación directa de parámetros de transformación para la superposición de representaciones de vóxeles según una realización de la invención. El sistema 1100 puede emplearse para predecir directamente parámetros de transformación, por ejemplo rotaciones en 3D, traslaciones en 3D y ajuste a escala en 3D aplicables que definen cómo puede alinearse un conjunto de datos de imágenes en 3D recibido con respecto al otro.Losdatos de entrenamiento 1102 y los datos de inferencia 1116 pueden consistir en datos de imágenes en 3D, por ejemplo valores de intensidad de vóxeles, por ejemplo radiodensidades en el caso de datos de CBCT/TAC,ovalores binarios, por ejemplo en el caso de datos de exploración de superficie voxelizados.Losvalores de intensidad pueden binarizarse por medio de determinación de umbral, por ejemplo en el caso de datos de CBCT/TAC, estableciendo todos los valores de vóxel superiores a un valor de, por ejemplo, 500 UH a 1, y el vóxel restante a 0. En particular con el fin de generar datos de entrenamiento, este umbral puede elegirse aleatoriamente a lo largo de muestras que van a generarse, por ejemplo en un intervalo de 400 a 800u h .Figure 11 represents a schematic overview of a system component for the direct determination of transformation parameters for superimposing voxel representations according to an embodiment of the invention. The system 1100 may be employed to directly predict transformation parameters, for example, applicable 3D rotations, 3D translations, and 3D scaling that define how one received 3D image data set may be aligned relative to another. The training data 1102 and inference data 1116 may consist of 3D image data, for example, voxel intensity values, for example, radiodensities in the case of CBCT/CT data, or binary values, for example, in the case of voxelized surface scan data. The intensity values may be binarized by thresholding, for example, in the case of CBCT/CT data, by setting all voxel values greater than a value of, for example, 500 HU to 1, and the remaining voxel to 0. In particular, for the purpose of generating training data, this threshold may be randomly chosen over samples ranging from 0 to 100. to be generated, for example, in an interval of 400 to 800u h.

El sistema puede emplearse para predecir parámetros a partir de datos de imágenes en 3D que tienen diferentes modalidades entre los dos conjuntos de datos de imágenes en 3D recibidos. La misma red puede entrenarse con diferentes fuentes que comprenden información teniendo en cuenta diferentes estructuras. Por ejemplo en el caso de hacer coincidir información de CBCT/TAC con información de IOS, pueden distinguirse superficies de coronas de dientes con ambos conjuntos de datos recibidos, mientras que, por ejemplo, se espera que las encías sólo puedan distinguirse dentro de los datos de IOS, y, por ejemplo, las raíces de dientes sólo podrán distinguirse en los datos dec b c t /t a c .The system can be used to predict parameters from 3D image data that have different modalities between the two received 3D image data sets. The same network can be trained with different sources comprising information taking into account different structures. For example, in the case of matching CBCT/CT information with IOS information, tooth crown surfaces can be distinguished with both received data sets, while, for example, gums are expected to be distinguishable only within the IOS data, and, for example, tooth roots can only be distinguished in the dec b c t /t a c data.

Durante el esfuerzo de entrenamiento, los parámetros internos de la red neuronal profunda en 3D 1114 pueden optimizarse hacia que la red proporcione resultados con una precisión suficientemente alta. Esto puede lograrse empleando una colección de conjuntos de datos de imágenes en 3D 1102 que pueden ser de modalidades variables pero que comprenden al menos un volumen solapamiento parcial de estructuras del mundo real. Con el fin de entrenar una red de este tipo, es deseable que estos dos conjuntos de entrada estén alineadososuperpuestos entresí1104. Si este no es aún el caso en los datos 1102, puede realizarseobien manualobien automáticamente según, por ejemplo, información siguiendo un método tal como se describió con respecto a las figuras 6-10. La precisión de la superposición de los datos de entrenamiento puede afectar a la precisión de los datos de salida. During the training effort, the internal parameters of the 3D deep neural network 1114 may be optimized so that the network provides results with sufficiently high accuracy. This may be achieved by employing a collection of 3D image data sets 1102 that may be of varying modalities but comprise at least one volume partially overlapping real-world structures. In order to train such a network, it is desirable that these two input sets be aligned or overlapping with each other 1104. If this is not already the case in the data 1102, it may be done either manually or automatically based on, for example, information following a method as described with respect to Figures 6-10. The accuracy of the overlap of the training data may affect the accuracy of the output data.

Resulta beneficioso (teniendo en cuenta la precisión, requisitos de ancho de banda de memoria y posible velocidad de procesamiento) que los datos presentados parasuentrenamiento a la red 1114 comprendan las mismas estructuras del mundo real y estén ajustados a escala a la misma resolución del mundo real en las representaciones de vóxeles que se proporcionarán a la a red neuronal profunda en 3D 1114. Si aún no está presente un solapamiento suficiente dentro del conjuntos de datos recibido, esto puede realizarse 1106obien manualobien automáticamente según una región de solapamiento determinada en el sistema de coordenadas canónicas, por ejemplo siguiendo un método tal como se describió con respecto a la figura 3. Si los conjuntos de datos de entrada tienen resoluciones diferentes, tal como puedeobien saberse a partir de metadatos dentro de los datos recibidosobien, por ejemplo, derivarse mediante un método tal como se describió con respecto a la figura 3, puede resultar beneficioso un nuevo ajuste a escala de los datos de alta resolución a la resolución de los datos de baja resolución 1108. It is beneficial (taking into account accuracy, memory bandwidth requirements, and possible processing speed) for the data presented for training to the network 1114 to comprise the same real-world structures and to be scaled to the same real-world resolution in the voxel representations that will be provided to the 3D deep neural network 1114. If sufficient overlap is not already present within the received datasets, this may be done either manually or automatically based on a determined overlap region in the canonical coordinate system, for example by following a method as described with respect to Figure 3. If the input datasets have different resolutions, as may be known from metadata within the received data or, for example, derived by a method as described with respect to Figure 3, further scaling of the high-resolution data to the resolution of the low-resolution data 1108 may be beneficial.

Obsérvese que, con el fin de generación de una multitud de muestras de entrenamiento a partir del ismo conjunto de conjuntos de datos de imágenes en 3D recibido, puede usarse la selección de regiones de solapamiento 1l06 de tal manera que no sólo se seleccionan los volúmenes de interés (VOl) de máximo solapamiento, sino también volúmenes más pequeños dentro de tales volúmenes de máximo solapamlento, realizando eficazmente un “aumento”, en 3D, en un subconjunto de datos de estructura coincidentes. Note that, in order to generate a multitude of training samples from the same set of received 3D image data sets, overlap region selection 1106 can be used such that not only the maximally overlapping volumes of interest (VOl) are selected, but also smaller volumes within such maximally overlapping volumes, effectively performing a 3D “augmentation” on a subset of the matched structure data.

Con el fin de generar una multitud de muestras de entrenamiento, pueden aplicarse transformaciones aleatorias de traslación, rotación y/o ajuste a escala 1110 desalineando eficazmente la alineación presente en los datos procesados hasta alcanzar el procesador 1110. Esta desalineación introducida puede pasarse en forma de los parámetros de transformación aplicables, a la red neuronal profunda en 3D 1114, con el fin de servir como objetivo de entrenamiento para las transformaciones predichas. Pueden realizarse rotaciones y/o traslaciones de las representaciones de vóxeles de cualquier muestra de conjunto de datos previamente procesada,uopcionalmente de ambas muestras, por ejemplo mediante métodos de rotación empleando interpolación lineal(uotra) tal como se sabe en la técnica. In order to generate a multitude of training samples, random translation, rotation, and/or scaling transformations 1110 may be applied, effectively de-aligning the alignment present in the processed data upon reaching the processor 1110. This introduced misalignment may be passed, in the form of applicable transformation parameters, to the 3D deep neural network 1114 to serve as a training target for the predicted transformations. Rotations and/or translations of the voxel representations of any pre-processed dataset sample, or optionally both samples, may be performed, for example, by rotation methods employing linear (or other) interpolation as is known in the art.

Una multitud de muestras resultantes del procesamiento previo de diversos conjuntos de conjuntos de datos de imágenes en 3D que comprenden estructuras similares pueden guardarse en una base de datos(omemoria) 1112, y, por tanto, el entrenamiento de la red 1114 puede realizarse con una multitud de muestras. A multitude of samples resulting from pre-processing of various sets of 3D image datasets comprising similar structures may be stored in a database 1112, and thus training of the network 1114 may be performed with a multitude of samples.

En otra realización, pueden entrenarse redes neuronales profundas en 3D independientes que tienen una arquitectura similar para condiciones específicas, por ejemplo coincidencia de modalidades de imágenes específicas, que comprenden estructuras del mundo real, y/o ajuste a escala de tamaño específico de las representaciones de vóxeles. Esto puede proporcionar una mayor precisión posible de los resultados para casos específicos, al tiempo que todavía se respeta el requisito de hardware tal como memoria de sistema disponible, velocidad de procesamiento, etc. In another embodiment, independent 3D deep neural networks having a similar architecture can be trained for specific conditions, e.g., matching specific imaging modalities, comprising real-world structures, and/or specific size scaling of voxel representations. This can provide higher possible accuracy of results for specific cases, while still respecting hardware requirements such as available system memory, processing speed, etc.

Habiéndose entrenado 1114 de manera suficiente, pueden presentarse “nuevos datos” 1116 para predicciónoinferencia. Estos nuevos datos pueden ser del mismo tipo tal como se describió anteriormente teniendo en cuenta que es una representación de vóxeles de modalidades de imágenes posiblemente diferentes, etc. La postura canónica de estructuras dentales en el conjunto de datos de entrada puede determinarse por una primera red neuronal profunda en 3D 1118, seguido por la selección de subconjuntos de datos que representan VOl 1120 que se solapan en el sistema de coordenadas canónicas, por ejemplo mediante un método tal como se describió con referencia a la figura 3. Si los conjuntos de datos de entrada tienen resoluciones diferentes, tal como puedeobien saberse a partir de metadatos dentro de los datos recibidosobien, por ejemplo, derivarse mediante un método tal como se describió con respecto a la figura 3, puede realizarse un nuevo ajuste a escala de los datos de alta resolución a la resolución de los datos de baja resolución 1122. Esto da como resultado que ambos conjuntos de datos se procesen previamente parasurecepción por la red de aprendizaje profundo en 3D 1114. Obsérvese que se espera que la alineación previa y selección de VOl solapantes sean menos precisas que el método que está describiéndose en este caso y, con respecto a esto, puede considerarse que este método es un refinamiento más altamente preciso de un método tal como se describió, por ejemplo, con respecto a la figura 3. Having been sufficiently trained 1114, “new data” 1116 can be presented for prediction or inference. This new data can be of the same type as described above, taking into account that it is a voxel representation of possibly different image modalities, etc. The canonical pose of dental structures in the input dataset may be determined by a first 3D deep neural network 1118, followed by the selection of data subsets representing VO1s 1120 that overlap in the canonical coordinate system, for example by a method as described with reference to Figure 3. If the input datasets have different resolutions, as may be known from metadata within the received data or, for example, derived by a method as described with respect to Figure 3, a rescaling of the high-resolution data to the resolution of the low-resolution data 1122 may be performed. This results in both datasets being pre-processed for reception by the 3D deep learning network 1114. Note that the pre-alignment and selection of overlapping VO1s is expected to be less accurate than the method being described here and, with respect to this, it may be considered that this method is a more highly precise refinement of a method as described, for example, with respect to Figure 3.

La red neuronal profunda en 3D entrenada puede procesar posteriormente los datos previamente procesados 1114 y emitir como predicción los parámetros de transformación 1126 para la superposición de la muestra 1 y la muestra 2. Un conjunto de parámetros de este tipo puede comprender, por ejemplo, un vector de 6 valores, codificando los 3 primeros rotaciones aplicables que van a ejecutarse en orden a lo largo de los tres ejes ortogonales del sistema de coordenadas recibido para la muestra de datos que va a transformarse (por ejemplo, la muestra 2), y siendo los tres últimos valores las traslaciones aplicables, positivas y/o negativas, con el fin de alinearosuperponer, por ejemplo, la muestra 2 a la muestra 1. The trained 3D deep neural network may post-process the pre-processed data 1114 and output as a prediction the transformation parameters 1126 for the superposition of sample 1 and sample 2. Such a parameter set may comprise, for example, a 6-valued vector, encoding the first 3 applicable rotations to be executed in order along the three orthogonal axes of the received coordinate system for the data sample to be transformed (e.g., sample 2), and the last three values being the applicable translations, positive and/or negative, in order to align or superimpose, for example, sample 2 to sample 1.

En otra realización, puede realizarse entrenamiento con estos parámetros en forma, por ejemplo, de una matriz de rotación y/o traslación y/o una matriz de transformación logrando el mismo resultado deseado de alineaciónosuperposición. In another embodiment, training can be performed with these parameters in the form of, for example, a rotation and/or translation matrix and/or a transformation matrix achieving the same desired result of alignment or superposition.

Obsérvese que, en el caso de haber empleado 1118, 1120 y/o 1122, los parámetros de transformación tal como se predicen para las muestras recibidas pueden no proporcionar aún los parámetros para alineaciónosuperposición de los conjuntos de datos de imágenes en 3D originalmente recibidos. En tal caso, el procesador 1128 puede usarse teniendo en cuenta información considerando cualquier transformación previamente procesada a partir de estos tres procesadores previos, es decir “apilando” cualquier transformación anterior junto con la transformación predicha para las muestras, proporcionando el sistema 1100 como salida de 1128 parámetros de transformación tal como pueden ser aplicables para los conjuntos de datos de imágenes en 3D recibidos. Note that, in the case where 1118, 1120 and/or 1122 were employed, the transformation parameters as predicted for the received samples may not yet provide the parameters for alignment or superposition of the originally received 3D image data sets. In such a case, processor 1128 may be used taking into account information considering any previously processed transformations from these three previous processors, i.e., “stacking” any previous transformations together with the transformation predicted for the samples, with system 1100 providing as output 1128 transformation parameters as may be applicable to the received 3D image data sets.

Obsérvese que elusode inferencia de este sistema puede considerarse relativamente poco intenso desde el punto de vista computacional, por tanto relativamente rápido. La precisión de este sistema puede ser significativamente superior cuando se emplean etapas de alineación previa y selección 1118 y 1120. Este sistema puede ser altamente robusto frente a diferentes modalidades de imágenes y puede funcionar con múltiples resoluciones (tamaños de vóxel en las representaciones de vóxeles recibidas), empleando resoluciones de vóxel de 0,5-1 mm dependiendo de las cantidades de solapamiento entre estructuras. Sin embargo, puede no ser lo suficientemente preciso en el caso de solapamiento insuficiente.Loselementos que constituyen los diversos conjuntos de parámetros de transformación pueden estar en forma de valores de puntos flotantes. Note that the inference usage of this system can be considered relatively computationally unintensive, hence relatively fast. The accuracy of this system can be significantly higher when using pre-alignment and selection stages 1118 and 1120. This system can be highly robust to different imaging modalities and can operate at multiple resolutions (voxel sizes in the received voxel representations), employing voxel resolutions of 0.5–1 mm depending on the amounts of overlap between structures. However, it may not be accurate enough in the case of insufficient overlap. The elements constituting the various transformation parameter sets can be in the form of floating-point values.

Las figuras 12A y 12B muestran ilustraciones de datos recibidos y transformados tal como se emplean dentro de, y resultan a partir de, un componente de sistema para la deducción directa de parámetros de transformación según una realización de la invención. Más específicamente, son visualizaciones de dos conjuntos de datos de imágenes en 3D recibidos (1202 y 1204). Las visualizaciones son representaciones informáticas de los conjuntos de datos de imágenes en 3D ensurepresentación de vóxeles. Figures 12A and 12B show illustrations of received and transformed data as employed within, and resulting from, a system component for direct derivation of transformation parameters according to an embodiment of the invention. More specifically, they are visualizations of two received 3D image data sets (1202 and 1204). The visualizations are computer representations of the 3D image data sets ensuring voxel representation.

En estas visualizaciones específicas, pueden observarse los tamaños de vóxel tal como se usan, que son de 1 mm en cualquier dirección ortogonal. Aunque 1202 tal como se recibe por el componente de sistema se originó a partir de datos de CBCT, para los fines de esta visualización se muestra como el volumen en 3D resultante a partir de la determinación de umbral de los datos de CBCT por encima de 500 unidades de Hounsfield. 1204 es la representación voxelizada de una IOS del mismo paciente, y ambos de datos de imágenes en 3D recibidos se obtuvieron aproximadamente en el mismo momento en el tiempo. In these specific visualizations, the voxel sizes as used can be seen, which are 1 mm in any orthogonal direction. Although 1202 as received by the system component originated from CBCT data, for the purposes of this visualization it is shown as the 3D volume resulting from thresholding the CBCT data above 500 Hounsfield units. 1204 is the voxelized representation of an IOS from the same patient, and both received 3D image data were obtained at approximately the same moment in time.

A partir de la figura 12B puede observarse que, con la aplicación de los parámetros de transformación a partir del componente de sistema, 1204 se ha alineadoosuperpuesto por medio de rotación en 3D y traslación en 3D.Losconjuntos de datos de imágenes en 3D recibidos ya tenían la misma escala en el caso de este ejemplo. From Figure 12B it can be seen that with the application of the transformation parameters from the system component, 1204 has been aligned or superimposed by means of 3D rotation and 3D translation. The received 3D image data sets were already scaled the same in the case of this example.

La figura 13 representa un ejemplo de una arquitectura de red neuronal profunda en 3D para un componente de sistema para una deducción directa de parámetros de transformación según una realización de la invención.Losdatos de imágenes en 3D recibidos (previamente procesados), dos representaciones de vóxeles 1302, 1304 que coinciden con el espacio de vóxeles de la entrada de la red neuronal profunda en 3D, pueden pasarse a través de, y procesarse por, diversas capas en la red 1306-1320. Las primeras capas de la red pueden incluir una pluralidad de capas convolucionales en 3D 1306-1314. Figure 13 depicts an example of a 3D deep neural network architecture for a system component for direct derivation of transformation parameters according to an embodiment of the invention. The received (pre-processed) 3D image data, two voxel representations 1302, 1304 matching the voxel space of the 3D deep neural network input, may be passed through and processed by various layers in the network 1306-1320. The first layers of the network may include a plurality of 3D convolutional layers 1306-1314.

Cuando los datos han pasado las capas convolucionales, puede pasarse la representación interna a una serie de capas densamente conectadas 1316-1318 que infieren la distancia rotacional y traslacional entre los datos en 3D. Once the data has passed through the convolutional layers, the internal representation can be passed to a series of densely connected layers 1316-1318 that infer the rotational and translational distance between the 3D data.

Pueden usarse en la implementación variaciones en el número de capas ysusparámetros de definición, por ejemplo diferentes cantidades de núcleos de funciones de activación,usode submuestreo y tamaño, y capas funcionales adicionales tales como capas de abandono y/o normalización en lotes, sin perder la esencia del diseño de la red neuronal profunda en 3D. Variations in the number of layers and their definition parameters, for example different numbers of activation function kernels, use of subsampling and size, and additional functional layers such as dropout and/or batch normalization layers, can be used in the implementation without losing the essence of the 3D deep neural network design.

La capa finalode salida 1320 puede representar una predicción de la traslación a lo largo de los tres ejes y rotaciones a lo largo de tres ejes que deben aplicarse a los datos para obtener una superposición correcta de los conjuntos de datos de imágenes en 3D recibidos. The final output layer 1320 may represent a prediction of the translation along the three axes and rotations along three axes that need to be applied to the data to obtain a correct overlay of the received 3D image data sets.

Losdatos de entrenamiento pueden comprender conjuntos de dos representaciones de vóxeles como entrada 1302, 1304 cuyas traslaciones y rotaciones se conocen. Para cada conjunto de datos de representaciones de vóxeles que va a procesarse, puede aplicarse una traslación y rotación aleatorizadas a cualquiera de ellos, y puede usarse la diferencia de traslación y rotación total para determinar una pérdida entre la salida deseada 1322 y la real 1320. Esta pérdida puede usarse durante el entrenamiento como medida para ajustar parámetros dentro de las capas de la red neuronal profunda en 3D. Tal pérdida puede calcularse de tal manera que se obtienen como resultado predicciones precisas de manera óptima a partir de la red de aprendizaje profundo en 3D. Pueden usarse funciones optimizadoras durante el entrenamiento para ayudar en la eficiencia del esfuerzo de entrenamiento. La red puede entrenarse durante varias iteraciones hasta que los parámetros internos conducen a una precisión deseada de los resultados. Cuando se entrena de manera apropiada, pueden presentarse dos representaciones de vóxeles diferentes, por ejemplo, de estructuras maxilofaciales como entrada y la red neuronal profunda en 3D puede usarse para derivar una predicción 1324 de la traslación y rotación necesarias para superponer con precisión el conjunto de entradas. The training data may comprise sets of two voxel representations as input 1302, 1304 whose translations and rotations are known. For each data set of voxel representations to be processed, a randomized translation and rotation may be applied to either of them, and the difference in total translation and rotation may be used to determine a loss between the desired output 1322 and the actual output 1320. This loss may be used during training as a measure to adjust parameters within the layers of the 3D deep neural network. Such a loss may be calculated such that optimally accurate predictions are obtained from the 3D deep learning network. Optimizing functions may be used during training to aid in the efficiency of the training effort. The network may be trained for several iterations until the internal parameters lead to a desired accuracy of the results. When trained appropriately, two different voxel representations, for example, of maxillofacial structures can be presented as input and the 3D deep neural network can be used to derive a prediction of the translation and rotation needed to accurately superimpose the input set.

Las capas pueden usar una variedad de funciones de activación tales como lineal, tanh, ReLU, PreLU, sigmoide, etc. Las capas de CNN en 3D pueden variar en cuanto asucantidad de filtros, tamaños de filtro y parámetros de submuestreo, etc. Al igual que las capas densamente conectadas, pueden variar en cuanto asusmétodos de inicialización de parámetros. Layers can use a variety of activation functions such as linear, tanh, ReLU, PreLU, sigmoid, etc. 3D CNN layers can vary in the number of filters, filter sizes, and subsampling parameters, etc. Like densely connected layers, they can vary in their parameter initialization methods.

La figura 14 representa un diagrama de flujo de la lógica de sistema para la selección/determinación de los parámetros de transformación que van a aplicarse según una realización de la invención. Obsérvese que esto es una configuración a modo de ejemplo de la lógica de sistema según diversas realizaciones de la invención tal como se describió anteriormente. Para los fines del diagrama de flujo, se menciona que los dos conjuntos de datos de entrada ya se han voxelizado de manera apropiada.Losdos conjuntos de datos de entrada pueden recibirse en la etapa 1402, momento en el cual puede determinarse un primer conjunto de parámetros de transformación para una postura canónica. En una realización a modo de ejemplo, esta etapa puede ser robusta frente a grandes variaciones en parámetros de transformación que van a aplicarse con fines de alineaciónosuperposición. La precisión puede ser menor y la resolución de las representaciones de vóxeles de los datos de imágenes recibidos puede ser de aproximadamente 1 mm en cualquier dirección ortogonal. Figure 14 represents a flowchart of the system logic for selecting/determining transformation parameters to be applied in accordance with an embodiment of the invention. Note that this is an exemplary configuration of the system logic in accordance with various embodiments of the invention as described above. For the purposes of the flowchart, it is mentioned that the two input data sets have already been appropriately voxelized. The two input data sets may be received at step 1402, at which time a first set of transformation parameters for a canonical pose may be determined. In an exemplary embodiment, this step may be robust against large variations in transformation parameters to be applied for alignment or superposition purposes. The accuracy may be lower, and the resolution of the voxel representations of the received image data may be approximately 1 mm in any orthogonal direction.

A partir de información de 1402, puede realizarse alineación previa 1404 y determinación de solapamiento suficiente 1406. Obsérvese que, en una realización, esta etapa puede realizar dos determinaciones de solapamiento suficiente, una para cada método posterior opcional que va a realizarse (empezando respectivamente en 1410 y 1416).S íla cantidad de solapamiento es insuficiente, tal como según un umbraloumbrales tal como pueden determinarse de manera experimental y pueden comprobarse posteriormente de manera programática, el sistema puede elegir no realizar cualquieraoambos de los métodos empezando en 1410, 1416.Esdecir, esto puede considerarse como que el sistema determina que los parámetros de transformación resultantes a partir de 1426 no mejorarán debido a resultados no viables a partir de cualquieraoambos de estos métodos adicionales. From information at 1402, pre-alignment 1404 and a determination of sufficient overlap 1406 may be performed. Note that in one embodiment, this step may perform two determinations of sufficient overlap, one for each optional subsequent method to be performed (starting at 1410 and 1416 respectively). If the amount of overlap is insufficient, such as according to a threshold as may be determined experimentally and subsequently verified programmatically, the system may choose not to perform either or both of the methods starting at 1410, 1416. That is, this may be considered as the system determining that the resulting transformation parameters starting at 1426 will not improve due to unviable results from either or both of these additional methods.

En el caso de solapamiento suficiente, puede realizarse el método de deducción directa empezando en la etapa 1410, que se espera, especialmente en el caso de haber realizado alineación previa 1404 y selección de VOI 1408, que proporcione resultados más precisos al tiempo que es robusto frente a diferentes modalidades de imágenes dentro de los conjuntos de datos de imágenes en 3D recibidos. Obsérvese que información aplicable a partir de transformaciones anteriores, tal como puede seguir posiblemente a partir de 1404 y 1408, puede retransmitirse parasu usoen la determinación de parámetros de transformación 14l2 siguiendo el método de deducción directa. Puede esperarse que el procesamiento previo 1410 empleado dentro de este método de como resultado representaciones de vóxeles a una resolución de vóxel de 0,5-1,0 mm. In the case of sufficient overlap, the direct inference method may be performed starting at step 1410, which is expected, especially in the case of having performed prior alignment 1404 and VOI selection 1408, to provide more accurate results while being robust against different image modalities within the received 3D image data sets. Note that applicable information from prior transformations, such as may possibly follow from 1404 and 1408, may be relayed for use in determining transformation parameters 1412 following the direct inference method. The preprocessing 1410 employed within this method may be expected to result in voxel representations at a voxel resolution of 0.5-1.0 mm.

Todavía puede realizarse una prueba de cordura 1414 de la viabilidad de los resultados. Esto puede realizarse por medio de comparación de los parámetros resultantes de 1402 con los resultantes de 1414 y/o 1424.S íla desviación presenta un grado demasiado grande, el sistema puede elegir, por ejemplo, no retransmitir los parámetros a 1426,o1426 puede atribuir un peso de 0 a los parámetros de transformación resultantes. A sanity check 1414 of the viability of the results can still be performed. This can be done by comparing the resulting parameters of 1402 with those of 1414 and/or 1424. If the deviation is too great, the system may choose, for example, not to forward the parameters to 1426, or it may assign a weight of 0 to the resulting transformation parameters.

Tras la determinación de solapamiento aplicable, el sistema puede emplear el método basado en segmentación empezando en la etapa 1416. Puede realizarse segmentación 1416 automáticamente en ambos conjuntos de datos de imágenes en 3D recibidos,obien empleando métodos basados en red neuronal profunda en3 dtal como se describió anteriormente,obien otros métodos conocidos en la técnica tal como puede ser el caso con datos de IOS. Obsérvese que, en este último caso, tales segmentaciones de coronas de dientes pueden realizarse con los datos de imágenes en 3D recibidos en forma de datos de malla de superficie. After determining applicable overlap, the system may employ the segmentation-based method starting at step 1416. Segmentation 1416 may be performed automatically on both sets of received 3D image data, either by employing deep neural network-based methods as described above, or by other methods known in the art such as may be the case with IOS data. Note that in the latter case, such tooth crown segmentations may be performed on the received 3D image data in the form of surface mesh data.

Puede realizarse taxonomía 1418 con los datos de estructura (segmentados) y puede retransmitirse la información resultante a la etapa de generación de puntos clave 1420. Se espera que la capacidad de incluir la identificación de los mismos dientes en los diferentes conjuntos de datos recibidos proporcione más robustez frente a posibles variaciones en la cantidad de solapamiento y calidad de datos de los conjuntos de datos recibidos. Taxonomy 1418 can be performed on the (segmented) structure data and the resulting information can be relayed to the keypoint generation stage 1420. The ability to include the identification of the same teeth in the different received data sets is expected to provide more robustness against possible variations in the amount of overlap and data quality of the received data sets.

Las nubes generadas de puntos clave seleccionados (dispersos, estrechamente coincidentes) pueden emplearse en la etapa 1422 para determinar los parámetros de transformación aplicables para alineaciónosuperposición. Obsérvese que, una vez más, cualquier transformación anterior posiblemente a partir de 1404, 1408 puede tenerse en cuenta por 1422 para determinar parámetros de transformación para cada conjunto. The generated clouds of selected (sparse, closely matching) key points may be used in step 1422 to determine the applicable transformation parameters for alignment or superposition. Note that, again, any prior transformations possibly from 1404, 1408 may be taken into account by 1422 to determine transformation parameters for each set.

Puede realizarse de nuevo una prueba de cordura 1424 para este método, por ejemplo comprobando desviaciones frente a parámetros resultantes a partir de 1414 y/o 1402. En caso de grandes discrepancias, el sistema puede elegir no retransmitir parámetros a 1426. Alternativamente, 1426 puede asignar un peso de 0 al conjunto de parámetros de transformación resultantes.Losresultados no viables pueden ser los resultados de datos imprecisos recibidos, tal como por ejemplo artefactos presentes en datos de CBCT, representación de superficie incorrecta a partir de datos deIo S,etc. A sanity check 1424 may again be performed for this method, for example by checking deviations against resulting parameters from 1414 and/or 1402. In case of large discrepancies, the system may choose not to retransmit parameters to 1426. Alternatively, 1426 may assign a weight of 0 to the resulting transformation parameter set. Unviable results may be the results of inaccurate data received, such as artifacts present in CBCT data, incorrect surface representation from IoS data, etc.

Losdatos de puntos para mallas de superficies se guardan con precisiones de puntos flotantes, proporcionando posiblemente resultados altamente precisos. Este método puede considerarse como el más preciso dentro de este sistema, mientras que al mismo tiempo es el menos robusto. Sin embargo, puede considerarse significativamente más robusto que los métodos actuales en la técnica debido a la inclusión de determinación de alineación previa, solapamiento y segmentación y taxonomía de estructuras individuales. Point data for surface meshes are saved with floating-point precision, providing potentially highly accurate results. This method can be considered the most accurate within this system, while at the same time being the least robust. However, it can be considered significantly more robust than current methods in the art due to the inclusion of pre-alignment determination, overlap, and segmentation and taxonomy of individual structures.

Losparámetros de transformación pueden representarse de manera interna de una variedad de maneras, por ejemplo 3 vectores de 3 valores que describen respectivamente rotaciones en orden, 3 valores de traslación a un origen, y/o 3 valores que determinan un ajuste a escala aplicable, todos ellos teniendo magnitudes de valor positivas y/o negativas pertenecientes a un eje específico en un sistema de coordenadas en 3D ortogonal. Alternativamente, puede emplearse cualquier combinación de matrices tal como se conoce en álgebra lineal, más específicamente cualquier rotación, transformación, ajuste a escala y/o combinación tal como puede determinarse en una matriz de transformación (afín). Transformation parameters can be represented internally in a variety of ways, for example as three 3-valued vectors respectively describing rotations in order, three translations about an origin, and/or three values determining an applicable scaling, all having positive and/or negative magnitudes of values pertaining to a specific axis in an orthogonal 3D coordinate system. Alternatively, any combination of matrices as known in linear algebra can be employed, more specifically any rotation, transformation, scaling, and/or combination as can be determined in an (affine) transformation matrix.

Puede emplearse conocimiento previo teniendo en cuenta precisiones, robustez, etc., por ejemplo, para determinar una ponderación de importancia de cualquiera/la totalidad de los parámetros de transformación recibidos por 1426. Por tanto, la etapa 1426 puede combinar de manera programática los parámetros recibidos a partir de los diversos métodos para proporcionar los parámetros de transformación deseados más precisos para alineaciónosuperposición. Prior knowledge may be employed taking into account accuracies, robustness, etc., for example, to determine an importance weighting of any/all of the transformation parameters received by 1426. Thus, step 1426 may programmatically combine the parameters received from the various methods to provide the most accurate desired transformation parameters for alignment or overlay.

Obsérvese que los parámetros de transformación, dependiendo de los resultados deseados a partir de un sistema de este tipo, puede ser parámetros que hacen coincidir el conjunto 2 al conjunto 1, el conjunto 1 al conjunto 2, y/o superponiéndose ambos en un sistema de coordenadas alternativo (deseado). Note that the transformation parameters, depending on the desired results from such a system, may be parameters that match set 2 to set 1, set 1 to set 2, and/or superimpose both on an alternative (desired) coordinate system.

La figura 15A y la figura 15B representan resultados de transformación en dos conjuntos de datos recibidos a modo de ejemplo a partir de diversas realizaciones de la invención. Más específicamente, la figura 15A y la figura 15B muestran representaciones informáticas de dos conjuntos de datos de imágenes en 3D 1502 y 1504. Estos conjuntos de datos de imágenes en 3D se obtuvieron respectivamente a partir de un dispositivo de exploración de CBCT y un dispositivo de exploración intrabucal. Según una configuración de sistema tal como se describió con respecto a la figura 14, se determinó suficiente solapamiento por el sistema y se realizaron los tres métodos para generación de parámetros de transformación, empleando alineación previa según el método de postura canónica. Figure 15A and Figure 15B depict transformation results on two exemplary data sets received from various embodiments of the invention. More specifically, Figure 15A and Figure 15B show computer representations of two 3D image data sets 1502 and 1504. These 3D image data sets were respectively obtained from a CBCT scanner and an intraoral scanner. In accordance with a system configuration as described with respect to Figure 14, sufficient overlap was determined by the system and all three methods for transformation parameter generation were performed, employing pre-alignment according to the canonical pose method.

Para los fines de esta visualización, los datos de imágenes de CBCT en 3D se reproducen por medio de las mallas de superficie generadas por cada estructura de diente resultante a partir del método de segmentación. En la figura 15A, los datos de imágenes se muestran orientados tal como se reciben, y puede observarse que el ajuste a escala entre ambos conjuntos de datos de imágenes en 3D era el mismo (por ejemplo, 1 mm en dimensiones del mundo real representa un valor de unidad en cada eje ortogonal para ambos conjuntos de datos recibidos). También puede observarse que 1502 y 1504 están desalineados considerando tanto rotaciones como traslaciones, hasta un grado significativo. For the purposes of this visualization, the 3D CBCT image data are reproduced by means of the surface meshes generated for each tooth structure resulting from the segmentation method. In Figure 15A, the image data are shown oriented as received, and it can be seen that the scaling between both 3D image data sets was the same (e.g., 1 mm in real-world dimensions represents a unit value on each orthogonal axis for both received data sets). It can also be seen that 1502 and 1504 are misaligned considering both rotations and translations, to a significant degree.

Se determinó que el conjunto de parámetros de transformación más preciso era resultante del método de segmentación y taxonomía, haciendo coincidir y minimizando la distancia entre puntos clave generados para ambos dientes segmentados (y etiquetados) (coronas en el caso de datos de IOS) tal como se identifican, por tanto, en el caso de este ejemplo, ninguna parte de la transformación aplicada fue el resultado directo de los otros dos métodos. Sin embargo, se emplearon parámetros de transformación a partir del método de postura canónica al tiempo que se realizó procesamiento previo para el método basado en segmentación y taxonomía. The most accurate set of transformation parameters was determined to result from the segmentation and taxonomy method, matching and minimizing the distance between keypoints generated for both segmented (and labeled) teeth (crowns in the case of IOS data) as identified, therefore, in the case of this example, none of the applied transformation was a direct result of the other two methods. However, transformation parameters from the canonical pose method were employed while preprocessing was performed for the segmentation and taxonomy-based method.

La figura 15B muestra los parámetros de transformación tal como se determinan por el sistema aplicado a 1504, que son los datos de IOS, habiéndose configurado el sistema para determinar y aplicar parámetros de transformación que alinean un conjunto de datos de imágenes en 3D recibido al otro. Obsérvese que, a pesar de que el solapamiento sólo está presente para volúmenes de imágenes que definen los índices de dientes 41, 31, 32, 33, 34, 35 y 36 (tal como puede determinarse según la notación de FDI), la etapa de alineaciónosuperposición final tal como se aplica basándose en los parámetros de transformación determinados se realizo automáticamente hasta una precisión significativamente alta. Figure 15B shows the transformation parameters as determined by the system applied to 1504, the IOS data, with the system configured to determine and apply transformation parameters that align one received 3D image data set to the other. Note that although the overlap is only present for image volumes defining tooth indices 41, 31, 32, 33, 34, 35, and 36 (as can be determined using FDI notation), the final alignment or overlay step as applied based on the determined transformation parameters was performed automatically to a significantly high accuracy.

Losdatos alineadososuperpuestos tal como se muestran pueden fusionarseocombinarse adicionalmente, por ejemplo para dientes que tienen solapamiento en datos de superficie (con referencia a 132 en la figura 1). En el caso de los datos tal como se visualizan, específicamente que muestran los resultados de la etapa de segmentación que proporciona dientes completos incluyendo raíces precisas a partir de los datos de CBCT y la combinación con información más precisa teniendo en cuenta coronas de dientes a partir de los datos de IOS, una fusión de superficies que proporcionan coronas de dientes de IOS fusionadas a raíces de dientes de CBCT será muy beneficiosa, por ejemplo en los campos de implantologíauortodoncia tal como se describió anteriormente. Tales métodos de fusión se conocen en el campo y pueden beneficiarse en gran medida de una alineación precisa tal como puede producirse como resultado a partir del sistema tal como se describe. The aligned or overlapping data as shown can be further merged or combined, for example for teeth that have overlapping surface data (referenced to 132 in Figure 1). In the case of the data as displayed, specifically showing the results of the segmentation step providing complete teeth including accurate roots from the CBCT data and the combination with more accurate information considering tooth crowns from the IOS data, a surface fusion providing IOS tooth crowns fused to CBCT tooth roots will be very beneficial, for example in the fields of implantology or orthodontics as described above. Such fusion methods are known in the field and can greatly benefit from the accurate alignment that can be produced as a result of the system as described.

Losmétodos tal como se describieron anteriormente pueden proporcionar los resultados más precisos para la superposición disponible, al tiempo que son robustos frente a una gran variabilidad de condiciones teniendo en cuenta los datos de entrada. Esta variabilidad tiene en cuenta una magnitud variable pero posiblemente grande de “desalineación” entre conjuntos de datos de imágenes en 3D recibidos, diferentes modalidades de imágenes, robustez frente a una calidad de datos posiblemente baja (por ejemplo, superficies malinterpretadas, artefactos en datos de CBCT, etc.). El sistema puede funcionar de manera completamente automática y puede suministrar los resultados de alineaciónosuperposición más precisos de una manera rápida. Debe observarse que, para cualquier implementación de una red de aprendizaje profundo en 3D, se espera que los resultados y la robustez aumenten tras periodos más prolongados de entrenamiento/uso de más datos de entrenamiento (variados). The methods described above can provide the most accurate results for the available overlay, while being robust to a large variability of conditions given the input data. This variability accounts for a variable but potentially large magnitude of misalignment between received 3D image datasets, different imaging modalities, and robustness to possibly low data quality (e.g., misinterpreted surfaces, artifacts in CBCT data, etc.). The system can operate fully automatically and can deliver the most accurate alignment or overlay results quickly. It should be noted that for any implementation of a 3D deep learning network, results and robustness are expected to increase with longer training periods/using more (varied) training data.

Aunque los ejemplos en las figuras se describen con referencia a estructuras dentales en 3D, queda claro que las realizaciones en esta solicitud pueden usarse generalmente para determinar automáticamente (por tanto, sin ninguna intervención humana) una postura canónica para el objeto en 3D en conjuntos de datos en 3D de diferentes modalidades. Además, las realizaciones en esta solicitud pueden usarse para la superposición automática de un primer objeto en 3D con un segundo objeto en 3D, en la que el primer y segundo objetos en 3D pueden representarse mediante conjuntos de datos en 3D de diferentes modalidades. Although the examples in the figures are described with reference to 3D dental structures, it is clear that the embodiments in this application can generally be used to automatically determine (thus, without any human intervention) a canonical pose for the 3D object in 3D data sets from different modalities. Furthermore, the embodiments in this application can be used for the automatic superposition of a first 3D object with a second 3D object, wherein the first and second 3D objects can be represented by 3D data sets from different modalities.

La figura 16 es un diagrama de bloques que ilustra un sistema de procesamiento de datos a modo de ejemplo que puede usarse tal como se describe en esta divulgación. El sistema de procesamiento de datos 1600 puede incluir al menos un procesador 1602 acoplado a elementos de memoria 1604 a través de un bus de sistema 1606. Como tal, el sistema de procesamiento de datos puede almacenar código de programa dentro de los elementos de memoria 1604. Además, el procesador 1602 puede ejecutar el código de programa al que se accede a partir de los elementos de memoria 1604 a través del bus de sistema 1606. En un aspecto, el sistema de procesamiento de datos puede implementarse como un ordenador que es adecuado para almacenar y/o ejecutar código de programa. Sin embargo, debe apreciarse que el sistema de procesamiento de datos 1600 puede implementarse en forma de cualquier sistema que incluye un procesador y memoria que puede de realizar las funciones descritas dentro de esta memoria descriptiva. Figure 16 is a block diagram illustrating an exemplary data processing system that may be used as described in this disclosure. The data processing system 1600 may include at least a processor 1602 coupled to memory elements 1604 via a system bus 1606. As such, the data processing system may store program code within the memory elements 1604. In addition, the processor 1602 may execute program code accessed from the memory elements 1604 via the system bus 1606. In one aspect, the data processing system may be implemented as a computer that is suitable for storing and/or executing program code. However, it should be appreciated that the data processing system 1600 may be implemented as any system that includes a processor and memory that can perform the functions described within this specification.

Loselementos de memoria 1604 pueden incluir unoomás dispositivos de memoria físicos tales como, por ejemplo, memoria local 1608 y unoomás dispositivos de almacenamiento de gran capacidad 1610. La memoria local puede referirse a memoria de acceso aleatoriouotro(s) dispositivo(s) de memoria no persistente(s) generalmente usado(s) durante la ejecución real del código de programa. Un dispositivo de almacenamiento de gran capacidad puede implementarse como un disco durouotro dispositivo de almacenamiento de datos persistente. El sistema de procesamiento 1600 también puede incluir unaomás memorias caché (no mostradas) que proporcionan almacenamiento temporal de al menos algún código de programa con el fin de reducir el número de veces que debe recuperarse código de programa a partir del dispositivo de almacenamiento de gran capacidad 1610 durante la ejecución. The memory elements 1604 may include one or more physical memory devices such as, for example, local memory 1608 and one or more large capacity storage devices 1610. Local memory may refer to random access memory or other non-persistent memory device(s) generally used during actual execution of the program code. A large capacity storage device may be implemented as a hard drive or other persistent data storage device. The processing system 1600 may also include one or more caches (not shown) that provide temporary storage of at least some program code in order to reduce the number of times that program code must be retrieved from the large capacity storage device 1610 during execution.

Opcionalmente pueden acoplarse dispositivos de entrada/salida (1/0), representados como el dispositivo de entrada l6 l2 y el dispositivo de salida 1614, al sistema de procesamiento de datos.Losejemplos de dispositivo de entrada pueden incluir, pero no se limitan a, por ejemplo, un teclado, un dispositivo de puntero tal como un ratón,osimilares.Losejemplos de dispositivo de salida pueden incluir, pero no se limitan a, por ejemplo, un monitoroelemento de visualización, altavocesosimilares. El dispositivo de entrada y/o el dispositivo de salida pueden acoplarse al sistema de procesamiento de datosobien directamenteobien a través de controladores de 1/0 intermedios. También puede acoplarse un adaptador de red 1616 al sistema de procesamiento de datos para permitirle acoplarse a otros sistemas, sistemas informáticos, dispositivos de red remotos y/o dispositivos de almacenamiento remotos a través de redes privadasopúblicas intermedias. El adaptador de red puede comprender un receptor de datos para recibir datos que se transmiten por dichos sistemas, dispositivos y/o redes a dichos datos y un transmisor de datos para transmitir datos a dichos sistemas, dispositivos y/o redes. Módems, módems de cables y tarjetas de Ethernet son ejemplos de diferentes tipos de adaptador de red que pueden usarse con el sistema de procesamiento de datos 1600. Optionally, input/output devices (1/0), represented as input device 1612 and output device 1614, may be coupled to the data processing system. Examples of input devices may include, but are not limited to, for example, a keyboard, a pointing device such as a mouse, or the like. Examples of output devices may include, but are not limited to, for example, a monitor or display, speakers, or the like. The input device and/or output device may be coupled to the data processing system either directly or through intermediate 1/0 drivers. A network adapter 1616 may also be coupled to the data processing system to allow it to be coupled to other systems, computer systems, remote network devices, and/or remote storage devices through intermediate private or public networks. The network adapter may comprise a data receiver for receiving data transmitted by said systems, devices, and/or networks, and a data transmitter for transmitting data to said systems, devices, and/or networks. Modems, cable modems, and Ethernet cards are examples of different types of network adapters that may be used with the data processing system 1600.

Tal como se representa en la figura 16,Ioselementos de memoria 1604 pueden almacenar una aplicación 1618. Debe apreciarse que el sistema de procesamiento de datos 1600 puede ejecutar además un sistema operativo (no mostrado) que puede facilitar la ejecución de la aplicación. La aplicación, implementada en forma de código de programa ejecutable, puede ejecutarse por el sistema de procesamiento de datos 1600, por ejemplo, por el procesador 1602. En respuesta a ejecutar la aplicación, el sistema de procesamiento de datos puede estar configurado para realizar unaomás operaciones que van a describirse en más detalle en el presente documento. As shown in Figure 16, memory elements 1604 may store an application 1618. It should be appreciated that data processing system 1600 may further execute an operating system (not shown) that may facilitate execution of the application. The application, implemented as executable program code, may be executed by data processing system 1600, for example, by processor 1602. In response to executing the application, the data processing system may be configured to perform one or more operations that will be described in more detail herein.

En un aspecto, por ejemplo, el sistema de procesamiento de datos 1600 puede representar un sistema de procesamiento de datos de cliente. En ese caso, la aplicación 1618 puede representar una aplicación de cliente que, cuando se ejecuta, configura el sistema de procesamiento de datos 1600 para realizar las diversas funciones descritas en el presente documento con referencia a un “cliente”.Losejemplos de un cliente pueden incluir, pero no se limitan a, un ordenador personal, un ordenador portátil, un teléfono móvilosimilares. In one aspect, for example, the data processing system 1600 may represent a client data processing system. In that case, the application 1618 may represent a client application that, when executed, configures the data processing system 1600 to perform the various functions described herein with reference to a “client.” Examples of a client may include, but are not limited to, a personal computer, a laptop computer, a mobile phone, or the like.

La terminología usada en el presente documento es únicamente con el fin de describir realizaciones particulares y no se pretende que sea limitativa de la invención. Tal como se usan en el presente documento, se pretende que las formas en singular “un”, “una” y “el/la” incluyan también las formas en plural, a menos que el contexto indique claramente lo contrario. Se entenderá además queIostérminos “comprende” y/o “que comprende”, cuando se usan en esta memoria descriptiva, especifican la presencia de características, números enteros, etapas, operaciones, elementos y/o componentes mencionados, pero no excluyen la presenciaoadición de unaomás de otras características, números enteros, etapas, operaciones, elementos, componentes y/o grupos deIosmismos. The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the invention. As used herein, the singular forms “a,” “an,” and “the” are intended to include the plural forms as well, unless the context clearly indicates otherwise. It is further understood that the terms “comprises” and/or “comprising,” when used herein, specify the presence of the mentioned features, integers, steps, operations, elements, and/or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and/or groups thereof.

Se pretende que las estructuras, materiales, acciones y equivalentes correspondientes de todosIosmediosoelementos de etapa más función en las siguientes reivindicaciones cualquier estructura, materialoacción para realizar la función en combinación con otros elementos reivindicados tal como se reivindica específicamente. La descripción de la presente invención se ha presentado con fines de ilustración y descripción, pero no se pretende que sea exhaustivaose limite a la invención en la forma dada a conocer. Muchas modificaciones y variaciones resultarán evidentes paraIosexpertos habituales en la técnica dentro del alcance de las reivindicaciones adjuntas. La realización se eligió y se describió con el fin de explicar de la mejor maneraIosprincipios de la invención y la aplicación práctica, y permitir que otros expertos habituales en la técnica entiendan la invención para diversas realizaciones con diversas modificaciones tal como son adecuadas para elusoparticular contemplado. The structures, materials, actions, and corresponding equivalents of all step means or elements plus function in the following claims are intended to perform any structure, material, or action to perform the function in combination with other claimed elements as specifically claimed. The description of the present invention has been presented for purposes of illustration and description, but is not intended to be exhaustive or limited to the invention as disclosed. Many modifications and variations will be apparent to those of ordinary skill in the art within the scope of the appended claims. The embodiment was chosen and described so as to best explain the principles of the invention and practical application, and to enable others of ordinary skill in the art to understand the invention in various embodiments with various modifications as are suitable for the particular use contemplated.

Claims (1)

r e iv in d ic a c io n e sv i n d i c a t i o n s Un método implementado por ordenador para determinar automáticamente una postura canónica de una estructura dental en 3D representada por puntos de datos de un conjunto de datos en 3D, comprendiendo el método:A computer-implemented method for automatically determining a canonical pose of a 3D dental structure represented by data points from a 3D data set, the method comprising: proporcionar unoomás bloques de puntos de datos del conjunto de datos en 3D asociados con un primer sistema de coordenadas a la entrada de una primera red neuronal profunda en 3D, estando la primera red neuronal profunda en 3D entrenada para generar información de postura canónica asociada con un sistema de coordenadas canónicas definido con respecto a una posición de parte de una estructura dental en 3D y con una representación canónica de la estructura dental en 3D, en el que el tamaño de la estructura dental en 3D se ajusta a escala y en el que unaomás características predeterminadas de la representación canónica de la estructura dental en 3D están alineadas con ejes del sistema de coordenadas canónicas;providing one or more blocks of data points from the 3D data set associated with a first coordinate system as input to a first 3D deep neural network, the first 3D deep neural network being trained to generate canonical pose information associated with a canonical coordinate system defined with respect to a position of part of a 3D dental structure and with a canonical representation of the 3D dental structure, wherein the size of the 3D dental structure is scaled and wherein one or more predetermined features of the canonical representation of the 3D dental structure are aligned with axes of the canonical coordinate system; recibir información de postura canónica a partir de la salida de la primera red neuronal profunda en 3D, comprendiendo la información de postura canónica, para cada punto de datos del unoomás bloques, una predicción de una posición de un punto de datos en el sistema de coordenadas canónicas, definiéndose la posición del punto de datos mediante coordenadas canónicas;receiving canonical pose information from the output of the first 3D deep neural network, the canonical pose information comprising, for each data point of the one or more blocks, a prediction of a position of a data point in the canonical coordinate system, the position of the data point being defined by canonical coordinates; usar las coordenadas canónicas para determinar una orientación y ajuste a escala de los ejes del sistema de coordenadas canónicas y una posición del origen del sistema de coordenadas canónicas con respecto al eje y el origen del primer sistema de coordenadas y usar la orientación y la posición para determinar parámetros de transformación, preferiblemente parámetros de rotación, traslación y/o ajuste a escala, para transformar coordenadas del primer sistema de coordenadas en coordenadas canónicas; y,using the canonical coordinates to determine an orientation and scaling of the axes of the canonical coordinate system and a position of the origin of the canonical coordinate system relative to the axis and origin of the first coordinate system, and using the orientation and position to determine transformation parameters, preferably rotation, translation, and/or scaling parameters, to transform coordinates of the first coordinate system into canonical coordinates; and determinar una representación canónica, preferiblemente una representación de vóxeles canónicaouna representación de malla en 3D canónica, de la estructura dental en 3D, incluyendo la determinación aplicar los parámetros de transformación a coordenadas de los puntos de datos del conjunto de datos en 3D.determining a canonical representation, preferably a canonical voxel representation or a canonical 3D mesh representation, of the 3D tooth structure, including determining and applying the transformation parameters to coordinates of the data points of the 3D data set. Método según la reivindicación 1, en el que la información de postura canónica incluye unoomás mapas de vóxeles para vincular un vóxel de una representación de vóxeles a una predicción de una posición del vóxel en el sistema de coordenadas canónicas, preferiblemente incluyendo el unoomás mapas de vóxeles un primer mapa de vóxeles en 3D que vincula un vóxel a una predicción de una primera coordenadax 'del sistema de coordenadas canónicas, un segundo mapa de vóxeles en 3D que vincula un vóxel a una predicción de una segunda coordenada y' del sistema de coordenadas canónicas y un tercer mapa de vóxeles en 3D que vincula un vóxel a una predicción de una tercera coordenadaz 'del sistema de coordenadas canónicas1. The method of claim 1 , wherein the canonical pose information includes one or more voxel maps for linking a voxel of a voxel representation to a prediction of a position of the voxel in the canonical coordinate system, the one or more voxel maps preferably including a first 3D voxel map linking a voxel to a prediction of a first x-coordinate of the canonical coordinate system, a second 3D voxel map linking a voxel to a prediction of a second y-coordinate of the canonical coordinate system, and a third 3D voxel map linking a voxel to a prediction of a third z-coordinate of the canonical coordinate system. Método según la reivindicación 2, en el que determinar una orientación de un eje del sistema de coordenadas canónicas comprende además:Method according to claim 2, wherein determining an orientation of an axis of the canonical coordinate system further comprises: determinar para un vóxel de la representación de vóxeles un gradiente local en una coordenada canónica de uno del unoomás mapas de vóxeles en 3D, representando el gradiente local un vector en el espacio definido por el primer sistema de coordenadas, en el que la orientación del vector representa una predicción de la orientación de un eje canónico y/o en el que la longitud del vector define un factor de ajuste a escala asociado con el eje canónico.determining for a voxel of the voxel representation a local gradient at a canonical coordinate of one of the one or more 3D voxel maps, the local gradient representing a vector in the space defined by the first coordinate system, wherein the orientation of the vector represents a prediction of the orientation of a canonical axis and/or wherein the length of the vector defines a scaling factor associated with the canonical axis. Un método implementado por ordenador para la superposición automatizada de una primera estructura dental en 3D, representada por un primer conjunto de datos en 3D y una segunda estructura dental en 3D, representada por un segundo conjunto de datos en 3D, preferiblemente siendo la primera y segunda estructuras dentales en 3D de la misma persona, comprendiendo el método:A computer-implemented method for the automated superposition of a first 3D dental structure, represented by a first 3D data set, and a second 3D dental structure, represented by a second 3D data set, preferably the first and second 3D dental structures being of the same person, the method comprising: proporcionar unoomás primeros bloques de vóxeles de una primera representación de vóxeles de la primera estructura dental en 3D asociada con un primer sistema de coordenadas y unoomás segundos bloques de vóxeles de una segunda representación de vóxeles de la segunda estructura dental en 3D asociada con un segundo sistema de coordenadas a la entrada de una primera red neuronal profunda en 3D, estando la primera red neuronal profunda en 3D entrenada para generar información de postura canónica asociada con un sistema de coordenadas canónicas definido con respecto a una posición de parte de una primera y segunda estructuras dentales en 3D y con una representación canónica de la estructura dental en 3D, en el que el tamaño de la estructura dental en 3D se ajusta a escala y en el que unaomás características predeterminadas de la representación canónica de la estructura dental en 3D están alineadas con ejes del sistema de coordenadas canónicas;providing one or more first voxel blocks of a first voxel representation of the first 3D tooth structure associated with a first coordinate system and one or more second voxel blocks of a second voxel representation of the second 3D tooth structure associated with a second coordinate system to the input of a first 3D deep neural network, the first 3D deep neural network being trained to generate canonical pose information associated with a canonical coordinate system defined with respect to a position of part of a first and second 3D tooth structures and with a canonical representation of the 3D tooth structure, wherein the size of the 3D tooth structure is scaled and wherein one or more predetermined features of the canonical representation of the 3D tooth structure are aligned with axes of the canonical coordinate system; recibir primera y segunda información de postura canónica a partir de la salida de la red neuronal profunda en 3D, comprendiendo la primera información de postura canónica, para cada vóxel del unoomás primeros bloques, una predicción de una primera posición del vóxel en el sistema de coordenadas canónicas; y, comprendiendo la segunda información de postura canónica, para cada vóxel del unoomás segundos bloques, una predicción de una segunda posición del vóxel en el sistema de coordenadas canónicas, definiéndose la primera y segunda posiciones mediante una primera y segunda coordenadas canónicas respectivamente;receiving first and second canonical pose information from the output of the 3D deep neural network, the first canonical pose information comprising, for each voxel of the one or more first blocks, a prediction of a first position of the voxel in the canonical coordinate system; and, the second canonical pose information comprising, for each voxel of the one or more second blocks, a prediction of a second position of the voxel in the canonical coordinate system, the first and second positions being defined by first and second canonical coordinates respectively; usar la primera información de postura canónica para determinar una primera orientación y escala de los ejes y una primera posición del origen de los ejes en el primer sistema de coordenadas y usar la segunda información de postura canónica para determinar una segunda orientación y escala de los ejes y una segunda posición del origen de los ejes del sistema de coordenadas canónicas en el segundo sistema de coordenadas;using the first canonical pose information to determine a first orientation and scale of the axes and a first position of the origin of the axes in the first coordinate system and using the second canonical pose information to determine a second orientation and scale of the axes and a second position of the origin of the axes of the canonical coordinate system in the second coordinate system; usar la primera orientación, escala y la primera posición para determinar primeros parámetros de transformación, preferiblemente primeros parámetros de rotación, traslación y/o ajuste a escala, para transformar coordenadas del primer sistema de coordenadas en coordenadas del sistema de coordenadas canónicas; y, usar la segunda orientación, escala y la segunda posición para determinar segundos parámetros de transformación, preferiblemente segundos parámetros de rotación, traslación y/o ajuste a escala, para transformar coordenadas del segundo sistema de coordenadas en coordenadas canónicas; y,using the first orientation, scale, and the first position to determine first transformation parameters, preferably first rotation, translation, and/or scaling parameters, to transform coordinates of the first coordinate system into coordinates of the canonical coordinate system; and, using the second orientation, scale, and the second position to determine second transformation parameters, preferably second rotation, translation, and/or scaling parameters, to transform coordinates of the second coordinate system into canonical coordinates; and, determinar una superposición de la primera estructura dental en 3D y la segunda estructura dental en 3D, incluyendo la determinación usar los primeros y segundos parámetros de transformación para formar una primera y segunda representaciones canónicas de la primera y segunda estructuras dentales en 3D respectivamente.determining a superposition of the first 3D tooth structure and the second 3D tooth structure, including determining using the first and second transformation parameters to form first and second canonical representations of the first and second 3D tooth structures respectively. Método según la reivindicación 4 en el que la primera y segunda representaciones canónicas de la primera y segunda estructuras dentales en 3D son mallas de superficie en 3D, incluyendo la determinación de una superposición además:Method according to claim 4 wherein the first and second canonical representations of the first and second 3D dental structures are 3D surface meshes, including determining an overlay further: segmentar la primera representación canónica de la primera estructura dental en 3D en al menos una malla de superficie en 3D de al menos un elemento dental en 3D de la primera estructura dental en 3D y segmentar la segunda representación canónica de la segunda estructura dental en 3D, en al menos una malla de superficie en 3D de al menos un segundo elemento dental en 3D de la segunda estructura dental en 3D;segmenting the first canonical representation of the first 3D tooth structure into at least one 3D surface mesh of at least one 3D tooth element of the first 3D tooth structure and segmenting the second canonical representation of the second 3D tooth structure into at least one 3D surface mesh of at least one second 3D tooth element of the second 3D tooth structure; seleccionar al menos tres primeros y segundos puntos clave no colineales de la primera y segunda mallas de superficie en 3D, definiendo preferiblemente un punto clave un máximoomínimo local y/o global en la curvatura de superficie de la primera malla de superficie en 3D; y,selecting at least three non-collinear first and second key points of the first and second 3D surface meshes, preferably defining a key point as a local and/or global maximum minimum in the surface curvature of the first 3D surface mesh; and, alinear la primera y segunda estructuras dentales en 3D basándose en los primeros y segundos puntos clave no colineales.align the first and second tooth structures in 3D based on the first and second non-collinear key points. Método según la reivindicación 4, en el que la primera y segunda representaciones canónicas de la primera y segunda estructuras dentales en 3D son representaciones de vóxeles, incluyendo la determinación de una superposición además:Method according to claim 4, wherein the first and second canonical representations of the first and second 3D dental structures are voxel representations, including determining an overlay further: proporcionar al menos parte de la primera representación de vóxeles canónica de la primera estructura dental en 3D y al menos parte de la segunda representación de vóxeles canónica de la segunda estructura dental en 3D a la entrada de una segunda red neuronal profunda en 3D, estando la segunda red neuronal profunda en 3D entrenada para determinar parámetros de transformación, preferiblemente parámetros de rotación, traslación y/o ajuste a escala, para alinear la primera y segunda representaciones de vóxeles canónicas;providing at least part of the first canonical voxel representation of the first 3D tooth structure and at least part of the second canonical voxel representation of the second 3D tooth structure as input to a second 3D deep neural network, the second 3D deep neural network being trained to determine transformation parameters, preferably rotation, translation and/or scaling parameters, to align the first and second canonical voxel representations; alinear la primera y segunda representaciones canónicas de la primera y segunda estructuras dentales en 3D basándose en los parámetros de transformación proporcionados por la salida de la segunda red neuronal profunda en 3D.aligning the first and second canonical representations of the first and second 3D dental structures based on the transformation parameters provided by the output of the second 3D deep neural network. Método según la reivindicación 4, en el que determinar una superposición incluye además:Method according to claim 4, wherein determining an overlap further includes: determinar un volumen de solapamiento entre la representación canónica de la primera estructura dental en 3D y la representación canónica de la segunda estructura dental en 3D; y,determining an overlap volume between the canonical representation of the first 3D tooth structure and the canonical representation of the second 3D tooth structure; and, determinar un primer volumen de interés que comprende primeros vóxeles de la primera representación canónica en el volumen de solapamiento; y, determinar un segundo volumen de interés que comprende segundos vóxeles de la segunda representación canónica en el volumen de solapamiento.determining a first volume of interest comprising first voxels of the first canonical representation in the overlapping volume; and, determining a second volume of interest comprising second voxels of the second canonical representation in the overlapping volume. Método según la reivindicación 7, que comprende además:Method according to claim 7, further comprising: proporcionar primeros vóxeles contenidos en el primer volumen de interés, VOI, a la entrada de una tercera red neuronal profunda en 3D, estando la tercera red neuronal profunda en 3D entrenada para clasificar y segmentar vóxeles; y,providing first voxels contained in the first volume of interest, VOI, as input to a third 3D deep neural network, the third 3D deep neural network being trained to classify and segment voxels; and, recibir valores de activación para cada uno deIosprimeros vóxeles en el primer volumen de interés y/o para cada uno deIossegundos vóxeles en el segundo volumen de interés a partir de la salida de la tercera red neuronal profunda en 3D, en el que un valor de activación de un vóxel representa la probabilidad de que el vóxel pertenezca a una clase de objeto en 3D predeterminada, por ejemplo un diente de una estructura dental en 3D;receiving activation values for each of the first voxels in the first volume of interest and/or for each of the second voxels in the second volume of interest from the output of the third 3D deep neural network, wherein an activation value of a voxel represents the probability that the voxel belongs to a predetermined 3D object class, for example a tooth of a 3D dental structure; usarIosvalores de activación para determinar una primera y segunda representaciones de vóxeles de un primer y segundo elementos dentales en 3D en el primer y segundo VOI respectivamente; y; opcionalmente, usar la primera y segunda representaciones de vóxeles del primer y segundo elementos dentales en 3D para determinar una primera y segunda mallas de superficie en 3D del primer y segundo elementos dentales en 3D.using the activation values to determine first and second voxel representations of a first and second 3D dental element in the first and second VOI, respectively; and; optionally, using the first and second voxel representations of the first and second 3D dental elements to determine first and second 3D surface meshes of the first and second 3D dental elements. Método según la reivindicación 8, que comprende además:Method according to claim 8, further comprising: seleccionar al menos tres primeros y segundos puntos clave no colineales de la primera y segunda mallas de superficie en 3D, definiendo preferiblemente un punto clave un máximoomínimo local y/o global en la curvatura de superficie de la primera malla de superficie; y,selecting at least three non-collinear first and second key points of the first and second 3D surface meshes, preferably defining a key point as a local and/or global maximum minimum in the surface curvature of the first surface mesh; and, alinear el primer y segundo elementos dentales en 3D basándose enIosprimeros y segundos puntos clave no colineales, preferiblemente usando un algoritmo de punto más cercano iterativo.align the first and second dental elements in 3D based on the first and second non-collinear key points, preferably using an iterative closest point algorithm. Método según la reivindicación 8, que comprende además:Method according to claim 8, further comprising: proporcionar una primera representación de vóxeles de un primer elemento dental en 3D y una segunda representación de vóxeles de un segundo elemento dental en 3D a una cuarta red neuronal profunda en 3D, estando la cuarta red neuronal profunda en 3D entrenada para generar un valor de activación para cada una de una pluralidad de etiquetas de estructura candidatas, representando un valor de activación asociado con una etiqueta candidata la probabilidad de que una representación de vóxeles recibida por la entrada de la cuarta red neuronal profunda en 3D represente un tipo de estructura tal como se indica por la etiqueta de estructura candidata;providing a first voxel representation of a first 3D dental element and a second voxel representation of a second 3D dental element to a fourth 3D deep neural network, the fourth 3D deep neural network being trained to generate an activation value for each of a plurality of candidate structure labels, an activation value associated with a candidate label representing the probability that a voxel representation received by the input of the fourth 3D deep neural network represents a type of structure as indicated by the candidate structure label; recibir, a partir de la salida de la cuarta red neuronal profunda en 3D, una pluralidad de primeros y segundos valores de activación, seleccionar una primera etiqueta de estructura con el valor de activación más alto de la primera pluralidad de valores de activación y seleccionar una segunda etiqueta de estructura con el valor de activación más alto de la segunda pluralidad de valores de activación y asignar la primera y segunda etiquetas de estructura a la primera y segunda mallas de superficie en 3D respectivamente.receiving, from the output of the fourth 3D deep neural network, a plurality of first and second activation values, selecting a first structure label with the highest activation value from the first plurality of activation values and selecting a second structure label with the highest activation value from the second plurality of activation values, and assigning the first and second structure labels to the first and second 3D surface meshes respectively. Método según la reivindicación 10, que comprende además:Method according to claim 10, further comprising: seleccionar al menos tres primeros y segundos puntos clave no colineales de la primera y segunda mallas de superficie en 3D, definiendo preferiblemente un punto clave un máximoomínimo local y/o global en la curvatura de superficie de la primera malla de superficie;selecting at least three non-collinear first and second key points of the first and second 3D surface meshes, preferably defining a key point as a local and/or global maximum minimum in the surface curvature of the first surface mesh; etiquetarIosprimeros y segundos puntos clave basándose en la primera etiqueta de estructura asignada a la primera malla de superficie en 3D y la segunda etiqueta de estructura asignada a la segunda malla de superficie en 3D respectivamente;label the first and second key points based on the first structure label assigned to the first 3D surface mesh and the second structure label assigned to the second 3D surface mesh respectively; alinear el primer y segundo elementos dentales en 3D basándose enIosprimeros y segundos puntos clave y la primera y segunda etiquetas de estructura de la primera y segunda mallas de superficie en 3D respectivamente, preferiblemente usando un algoritmo de punto más cercano iterativo.aligning the first and second 3D dental elements based on the first and second key points and the first and second structure labels of the first and second 3D surface meshes respectively, preferably using an iterative closest point algorithm. Método implementado por ordenador para entrenar una red neuronal profunda en 3D para determinar automáticamente una postura canónica de una estructura dental en 3D representada por un conjunto de datos en 3D, que comprende:Computer-implemented method for training a 3D deep neural network to automatically determine a canonical pose of a 3D dental structure represented by a 3D dataset, comprising: recibir datos de entrenamiento y datos objetivo asociados, incluyendoIosdatos de entrenamiento una representación de vóxeles de una estructura dental en 3D e incluyendoIosdatos objetivo valores de coordenadas canónicas de un sistema de coordenadas canónicas para cada vóxel de la representación de vóxeles, en el que el sistema de coordenadas canónicas es un sistema de coordenadas predeterminado definido con respecto a una posición de parte de la estructura dental en 3D, estando el sistema de coordenadas canónicas asociado con una representación canónica de la estructura dental en 3D, en el que el tamaño de la estructura dental en 3D se ajusta a escala y en el que unaomás características predeterminadas de la representación canónica de la estructura dental en 3D están alineadas con ejes del sistema de coordenadas canónicas;receiving training data and associated target data, the training data including a voxel representation of a 3D tooth structure, and the target data including canonical coordinate values of a canonical coordinate system for each voxel of the voxel representation, wherein the canonical coordinate system is a predetermined coordinate system defined with respect to a position of a portion of the 3D tooth structure, the canonical coordinate system being associated with a canonical representation of the 3D tooth structure, wherein the size of the 3D tooth structure is scaled, and wherein one or more predetermined features of the canonical representation of the 3D tooth structure are aligned with axes of the canonical coordinate system; seleccionar unoomás bloques de vóxeles, representando el unoomás bloques unaomás submuestras de la representación de vóxeles de un tamaño predeterminado y aplicar una rotación en 3D aleatoria a la unaomás submuestras;selecting one or more voxel blocks, the one or more blocks representing one or more subsamples of the voxel representation of a predetermined size, and applying a random 3D rotation to the one or more subsamples; aplicar la misma rotación a los datos objetivo;apply the same rotation to the target data; ofrecer el unoomás bloques a la entrada de la red neuronal profunda en 3D y predecir la red neuronal profunda en 3D, para cada vóxel del unoomás bloques, coordenadas canónicas del sistema de coordenadas canónicas; yproviding the one or more blocks as input to the 3D deep neural network and predicting the 3D deep neural network, for each voxel in the one or more blocks, canonical coordinates of the canonical coordinate system; and optimizar valores de los parámetros de red de la red neuronal profunda en 3D minimizando una función de pérdidas que representa una desviación entre los valores de coordenadas predichos por la red neuronal profunda en 3D y las coordenadas canónicas asociadas con los datos objetivo.Optimize network parameter values of the 3D deep neural network by minimizing a loss function that represents a deviation between the coordinate values predicted by the 3D deep neural network and the canonical coordinates associated with the target data. Un sistema informático adaptado para determinar automáticamente una postura canónica de una estructura dental en 3D representada por un conjunto de datos en 3D, que comprende:A computer system adapted to automatically determine a canonical posture of a 3D dental structure represented by a 3D data set, comprising: un medio de almacenamiento legible por ordenador que tiene código de programa legible por ordenador implementado en el mismo, incluyendo el código de programa al menos una red neuronal profunda en 3D entrenada, y al menos un procesador, preferiblemente un microprocesador, acoplado al medio de almacenamiento legible por ordenador, en el que, en respuesta a la ejecución del código de programa legible por ordenador, el al menos un procesador está configurado para realizar operaciones ejecutables que comprenden:a computer-readable storage medium having computer-readable program code implemented therein, the program code including at least one trained 3D deep neural network, and at least one processor, preferably a microprocessor, coupled to the computer-readable storage medium, wherein, in response to execution of the computer-readable program code, the at least one processor is configured to perform executable operations comprising: proporcionar unoomás bloques de vóxeles de una representación de vóxeles de la estructura dental en 3D asociada con un primer sistema de coordenadas a la entrada de una primera red neuronal profunda en 3D, estando la primera red neuronal profunda en 3D entrenada para generar información de postura canónica asociada con un sistema de coordenadas canónicas definido con respecto a una posición de parte de la estructura dental en 3D y con una representación canónica de la estructura dental en 3D, en el que el tamaño de la estructura dental en 3D se ajusta a escala y en el que unaomás características predeterminadas de la representación canónica de la estructura dental en 3D están alineadas con ejes del sistema de coordenadas canónicas;providing one or more voxel blocks of a voxel representation of the 3D tooth structure associated with a first coordinate system as input to a first 3D deep neural network, the first 3D deep neural network being trained to generate canonical pose information associated with a canonical coordinate system defined with respect to a position of part of the 3D tooth structure and with a canonical representation of the 3D tooth structure, wherein the size of the 3D tooth structure is scaled and wherein one or more predetermined features of the canonical representation of the 3D tooth structure are aligned with axes of the canonical coordinate system; recibir información de postura canónica a partir de la salida de la primera red neuronal profunda en 3D, comprendiendo la información de postura canónica, para cada vóxel del unoomás bloques, una predicción de una posición del vóxel en el sistema de coordenadas canónicas, definiéndose la posición mediante coordenadas canónicas;receiving canonical pose information from the output of the first 3D deep neural network, the canonical pose information comprising, for each voxel of the one or more blocks, a prediction of a position of the voxel in the canonical coordinate system, the position being defined by canonical coordinates; usar las coordenadas canónicas para determinar una orientación y escala de los ejes del sistema de coordenadas canónicas y una posición del origen del sistema de coordenadas canónicas con respecto al eje y el origen del primer sistema de coordenadas y usar la orientación, escala y la posición para determinar parámetros de transformación, preferiblemente parámetros de rotación, traslación y/o ajuste a escala, para transformar coordenadas del primer sistema de coordenadas en coordenadas canónicas; y,using the canonical coordinates to determine an orientation and scale of the axes of the canonical coordinate system and a position of the origin of the canonical coordinate system with respect to the axis and origin of the first coordinate system and using the orientation, scale and position to determine transformation parameters, preferably rotation, translation and/or scaling parameters, to transform coordinates of the first coordinate system into canonical coordinates; and, determinar una representación canónica, preferiblemente una representación de vóxeles canónicaouna representación de malla en 3D canónica, de la estructura dental en 3D, incluyendo la determinación aplicar los parámetros de transformación a coordenadas de los vóxeles de la representación de vóxelesoel conjunto de datos en 3D usado para determinar la representación de vóxeles.determining a canonical representation, preferably a canonical voxel representation or a canonical 3D mesh representation, of the 3D tooth structure, including determining and applying the transformation parameters to coordinates of the voxels of the voxel representation or the 3D data set used to determine the voxel representation. Un sistema informático adaptado para la superposición automatizada de una primera estructura dental en 3D representada por un primer conjunto de datos en 3D y una segunda estructura dental en 3D representada por un segundo conjunto de datos en 3D, que comprende:A computer system adapted for the automated superposition of a first 3D dental structure represented by a first 3D data set and a second 3D dental structure represented by a second 3D data set, comprising: un medio de almacenamiento legible por ordenador que tiene código de programa legible por ordenador implementado en el mismo, incluyendo el código de programa al menos una red neuronal profunda en 3D entrenada, y al menos un procesador, preferiblemente un microprocesador, acoplado al medio de almacenamiento legible por ordenador, en el que, en respuesta a la ejecución del código de programa legible por ordenador, el al menos un procesador está configurado para realizar operaciones ejecutables que comprenden:a computer-readable storage medium having computer-readable program code implemented therein, the program code including at least one trained 3D deep neural network, and at least one processor, preferably a microprocessor, coupled to the computer-readable storage medium, wherein, in response to execution of the computer-readable program code, the at least one processor is configured to perform executable operations comprising: proporcionar unoomás primeros bloques de vóxeles de una primera representación de vóxeles de la primera estructura dental en 3D asociada con un primer sistema de coordenadas y unoomás segundos bloques de vóxeles de una segunda representación de vóxeles de la segunda estructura dental en 3D asociada con un segundo sistema de coordenadas a la entrada de una red neuronal profunda en 3D; estando la red neuronal profunda en 3D entrenada para generar información de postura canónica asociada con un sistema de coordenadas canónicas definido con respecto a una posición de parte de la primera y segunda estructuras dentales en 3D y con una representación canónica de la estructura dental en 3D, en el que el tamaño de la estructura dental en 3D se ajusta a escala y en el que unaomás características predeterminadas de la representación canónica de la estructura dental en 3D están alineadas con ejes del sistema de coordenadas canónicas;providing one or more first voxel blocks of a first voxel representation of the first 3D tooth structure associated with a first coordinate system and one or more second voxel blocks of a second voxel representation of the second 3D tooth structure associated with a second coordinate system as input to a 3D deep neural network; the 3D deep neural network being trained to generate canonical pose information associated with a canonical coordinate system defined with respect to a position of part of the first and second 3D tooth structures and with a canonical representation of the 3D tooth structure, wherein the size of the 3D tooth structure is scaled and wherein one or more predetermined features of the canonical representation of the 3D tooth structure are aligned with axes of the canonical coordinate system; recibir primera y segunda información de postura canónica a partir de la salida de la red neuronal profunda en 3D, comprendiendo la primera información de postura canónica, para cada vóxel del unoomás primeros bloques, una predicción de una primera posición del vóxel en el sistema de coordenadas canónicas; y, comprendiendo la segunda información de postura canónica, para cada vóxel del unoomás segundos bloques, una predicción de una segunda posición del vóxel en el sistema de coordenadas canónicas, definiéndose la primera y segunda posiciones mediante una primera y segunda coordenadas canónicas respectivamente;receiving first and second canonical pose information from the output of the 3D deep neural network, the first canonical pose information comprising, for each voxel of the one or more first blocks, a prediction of a first position of the voxel in the canonical coordinate system; and, the second canonical pose information comprising, for each voxel of the one or more second blocks, a prediction of a second position of the voxel in the canonical coordinate system, the first and second positions being defined by first and second canonical coordinates respectively; usar la primera información de postura canónica para determinar una primera orientación y escala de los ejes y una primera posición del origen de los ejes en el primer sistema de coordenadas y usar la segunda información de postura canónica para determinar una segunda orientación y escala de los ejes y una segunda posición del origen de los ejes del sistema de coordenadas canónicas en el segundo sistema de coordenadas;using the first canonical pose information to determine a first orientation and scale of the axes and a first position of the origin of the axes in the first coordinate system and using the second canonical pose information to determine a second orientation and scale of the axes and a second position of the origin of the axes of the canonical coordinate system in the second coordinate system; usar la primera orientación y la primera posición para determinar primeros parámetros de transformación, preferiblemente primeros parámetros de rotación, traslación y/o ajuste a escala, para transformar coordenadas del primer sistema de coordenadas en coordenadas del sistema de coordenadas canónicas; y, usar la segunda orientación y la segunda posición para determinar segundos parámetros de transformación, preferiblemente segundos parámetros de rotación, traslación y/o ajuste a escala, para transformar coordenadas del segundo sistema de coordenadas en coordenadas canónicas; y,using the first orientation and the first position to determine first transformation parameters, preferably first rotation, translation and/or scaling parameters, to transform coordinates of the first coordinate system into coordinates of the canonical coordinate system; and, using the second orientation and the second position to determine second transformation parameters, preferably second rotation, translation and/or scaling parameters, to transform coordinates of the second coordinate system into canonical coordinates; and, determinar una superposición de la primera estructura dental en 3D y la segunda estructura dental en 3D, incluyendo la determinación usar los primeros y segundos parámetros de transformación para formar una primera y segunda representaciones canónicas de la primera y segunda estructuras dentales en 3D respectivamente.determining a superposition of the first 3D tooth structure and the second 3D tooth structure, including determining using the first and second transformation parameters to form first and second canonical representations of the first and second 3D tooth structures respectively. Producto de programa informático que comprende porciones de código de software configuradas para, cuando se ejecuta en la memoria de un ordenador, ejecutar las etapas de método según cualquiera de las reivindicaciones 1-11.Computer program product comprising portions of software code configured to, when executed in the memory of a computer, execute the method steps according to any of claims 1-11.
ES19735321T 2018-07-03 2019-07-03 Automated determination of a canonical pose of a 3d objects and superimposition of 3d objects using deep learning Active ES2997308T3 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP18181421.1A EP3591616A1 (en) 2018-07-03 2018-07-03 Automated determination of a canonical pose of a 3d dental structure and superimposition of 3d dental structures using deep learning
PCT/EP2019/067905 WO2020007941A1 (en) 2018-07-03 2019-07-03 Automated determination of a canonical pose of a 3d objects and superimposition of 3d objects using deep learning

Publications (1)

Publication Number Publication Date
ES2997308T3 true ES2997308T3 (en) 2025-02-17

Family

ID=62846050

Family Applications (1)

Application Number Title Priority Date Filing Date
ES19735321T Active ES2997308T3 (en) 2018-07-03 2019-07-03 Automated determination of a canonical pose of a 3d objects and superimposition of 3d objects using deep learning

Country Status (10)

Country Link
US (2) US12229993B2 (en)
EP (2) EP3591616A1 (en)
JP (1) JP7493464B2 (en)
KR (1) KR102889390B1 (en)
CN (1) CN112639880B (en)
BR (1) BR112020026687A2 (en)
CA (1) CA3104592A1 (en)
ES (1) ES2997308T3 (en)
IL (1) IL279834B2 (en)
WO (1) WO2020007941A1 (en)

Families Citing this family (39)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
IL271743B2 (en) 2017-06-30 2024-08-01 Promaton Holding Bv Classification and 3D model of dental structures - 3D maxilla using deep learning methods
EP3462373A1 (en) 2017-10-02 2019-04-03 Promaton Holding B.V. Automated classification and taxonomy of 3d teeth data using deep learning methods
EP3503038A1 (en) 2017-12-22 2019-06-26 Promaton Holding B.V. Automated 3d root shape prediction using deep learning methods
EP3561778A1 (en) 2018-04-26 2019-10-30 Promaton Holding B.V. Automated correction of metal affected voxel representations of x-ray data using deep learning techniques
EP3591616A1 (en) 2018-07-03 2020-01-08 Promaton Holding B.V. Automated determination of a canonical pose of a 3d dental structure and superimposition of 3d dental structures using deep learning
FR3083900B1 (en) * 2018-07-13 2021-08-27 Dental Monitoring METHOD OF ANALYSIS OF A PHOTO OF A DENTAL ARCH
EP3620130A1 (en) 2018-09-04 2020-03-11 Promaton Holding B.V. Automated orthodontic treatment planning using deep learning
US11276244B2 (en) * 2018-09-18 2022-03-15 AB Strategies SEZC Ltd. Fixing holes in a computer generated model of a real-world environment
EP3671531A1 (en) 2018-12-17 2020-06-24 Promaton Holding B.V. Semantic segmentation of non-euclidean 3d data sets using deep learning
JP6936826B2 (en) * 2019-03-18 2021-09-22 株式会社モリタ製作所 Image processing equipment, display system, image processing method, and image processing program
JP7202739B2 (en) * 2019-03-25 2023-01-12 ボンワイズインコーポレイテッド Device, method and recording medium for determining bone age of teeth
US12056820B2 (en) * 2019-05-17 2024-08-06 Sdc U.S. Smilepay Spv Three-dimensional modeling toolkit
EP3973878B1 (en) * 2019-05-22 2024-12-11 DIO Corporation Nerve detection method and device
JP7269587B2 (en) * 2019-10-07 2023-05-09 学校法人日本大学 segmentation device
KR102331034B1 (en) * 2020-12-10 2021-12-01 이마고웍스 주식회사 Automated method for extracting landmarks of three dimensional dental scan data and computer readable medium having program for performing the method
CN111612891B (en) * 2020-05-22 2023-08-08 北京京东乾石科技有限公司 Model generation method, point cloud data processing method, device, equipment and medium
JP7195291B2 (en) * 2020-07-01 2022-12-23 株式会社モリタ製作所 DATA PROCESSING APPARATUS, DATA PROCESSING SYSTEM, DATA PROCESSING METHOD, AND DATA PROCESSING PROGRAM
CN111798445B (en) * 2020-07-17 2023-10-31 北京大学口腔医院 A method and system for identifying caries in dental images based on convolutional neural network
CN112348867B (en) * 2020-11-18 2024-04-12 南通市测绘院有限公司 Urban high-precision three-dimensional terrain construction method and system based on LiDAR point cloud data
CN112561288B (en) * 2020-12-07 2024-08-13 东北大学 An intelligent identification method for wind turbine operating status using image model
GB202107492D0 (en) * 2021-05-26 2021-07-07 Vitaware Ltd Image processing method
US12387338B2 (en) 2021-06-15 2025-08-12 Imagoworks Inc. Method for automated tooth segmentation of three dimensional scan data using deep learning and computer readable medium having program for performing the method
GB202109474D0 (en) * 2021-06-30 2021-08-11 Univ Oxford Innovation Ltd Image alignment
KR102523856B1 (en) * 2021-08-31 2023-04-20 주식회사 스타인펠드 Method for creating crown 3d mesh using deep learning and device using the same
CN114219897B (en) * 2021-12-20 2024-04-30 山东大学 A method and system for predicting orthodontic results based on feature point recognition
EP4276765A1 (en) * 2022-05-11 2023-11-15 DENTSPLY SIRONA Inc. Method to correct scale of dental impressions
WO2024026293A1 (en) * 2022-07-26 2024-02-01 Align Technology, Inc. Method of determining tooth root apices using intraoral scans and panoramic radiographs
KR102822516B1 (en) * 2022-08-17 2025-06-23 한국과학기술연구원 Method and system for automating dental crown design image based on artificial intelligence
CN115393622A (en) * 2022-08-24 2022-11-25 陕西科技大学 Deep learning-based sacrum three-dimensional model matching method and device
US20240153139A1 (en) * 2022-11-09 2024-05-09 Texas Instruments Incorporated Object pose estimation in the context of neural networks
KR102670837B1 (en) * 2022-12-05 2024-05-30 주식회사 스타인펠드 Method for creating crown occlusal 3d mesh using deep learning and device using the same
KR102670827B1 (en) * 2022-12-05 2024-05-30 주식회사 스타인펠드 Method for creating crown side 3d mesh using deep learning and device using the same
US20240197449A1 (en) * 2022-12-15 2024-06-20 Align Technology, Inc. Methods and apparatuses for matching jaws virtual dental model using teeth reference points
US20240331295A1 (en) * 2023-03-31 2024-10-03 Sony Group Corporation Parts-based decomposition of human body for blend shape pipeline integration and muscle prior creation
WO2024237900A1 (en) * 2023-05-12 2024-11-21 3D Smile Usa, Inc. Method and apparatus for detecting and determining the location of objects of interest in an image
US20250252693A1 (en) * 2024-02-07 2025-08-07 Dentsply Sirona Inc. Inraoral imaging before and after treatment
CN119379766B (en) * 2024-10-08 2025-09-23 华中科技大学 A method and system for calculating the combined feature coding of the inner cavity and outer shape of a three-dimensional model
CN120862702B (en) * 2025-09-25 2025-12-12 湖南大学 Grabbing detection method and system based on state space model
CN121236076A (en) * 2025-12-02 2025-12-30 中国人民解放军总医院第一医学中心 Intelligent alveolar bone recognition and autologous tooth transplantation scoring system based on artificial intelligence

Family Cites Families (75)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6089868A (en) 1998-05-14 2000-07-18 3M Innovative Properties Company Selection of orthodontic appliances
DE19827788C2 (en) * 1998-06-23 2003-08-28 Dieter Dirksen Device and method for three-dimensional detection of characteristic measuring points of the dental arch
AU6634800A (en) 1999-08-11 2001-03-05 Case Western Reserve University Method and apparatus for producing an implant
US6721387B1 (en) 2001-06-13 2004-04-13 Analogic Corporation Method of and system for reducing metal artifacts in images generated by x-ray scanning devices
EP1714255B1 (en) 2004-02-05 2016-10-05 Koninklijke Philips N.V. Image-wide artifacts reduction caused by high attenuating objects in ct deploying voxel tissue class
US9492245B2 (en) 2004-02-27 2016-11-15 Align Technology, Inc. Method and system for providing dynamic orthodontic assessment and treatment profiles
US7987099B2 (en) 2004-02-27 2011-07-26 Align Technology, Inc. Dental data mining
US7702492B2 (en) 2004-03-11 2010-04-20 Geodigm Corporation System and method for generating an electronic model for a dental impression having a common coordinate system
US7711406B2 (en) 2005-11-23 2010-05-04 General Electric Company System and method for detection of electromagnetic radiation by amorphous silicon x-ray detector for metal detection in x-ray imaging
US7844429B2 (en) 2006-07-19 2010-11-30 Align Technology, Inc. System and method for three-dimensional complete tooth modeling
CN106920246B (en) 2007-08-31 2024-03-08 皇家飞利浦电子股份有限公司 Uncertainty plot for segmentation in the presence of metal artifacts
US8439672B2 (en) 2008-01-29 2013-05-14 Align Technology, Inc. Method and system for optimizing dental aligner geometry
US8108189B2 (en) 2008-03-25 2012-01-31 Align Technologies, Inc. Reconstruction of non-visible part of tooth
JP4717935B2 (en) 2009-03-23 2011-07-06 富士フイルム株式会社 Image processing apparatus and method, and program
US8503750B2 (en) 2009-10-06 2013-08-06 General Electric Company Method and apparatus for reduction of metal artifacts in CT images
WO2011133662A1 (en) 2010-04-20 2011-10-27 Imaging Sciences International Llc Reduction and removal of artifacts from a three-dimensional dental x-ray data set using surface scan information
JP5926728B2 (en) 2010-07-26 2016-05-25 ケイジャヤ、エルエルシー Visualization adapted for direct use by physicians
US8761493B2 (en) 2011-07-21 2014-06-24 Carestream Health, Inc. Method and system for tooth segmentation in dental images
DE102012206714A1 (en) 2011-08-10 2013-02-14 Friedrich-Alexander-Universität Erlangen-Nürnberg Method, arithmetic unit, CT system and C-arm system for the reduction of metal artifacts in CT image datasets
US9135498B2 (en) * 2012-12-14 2015-09-15 Ormco Corporation Integration of intra-oral imagery and volumetric imagery
US20140227655A1 (en) 2013-02-12 2014-08-14 Ormco Corporation Integration of model data, surface data, and volumetric data
US9349198B2 (en) 2013-07-26 2016-05-24 General Electric Company Robust artifact reduction in image reconstruction
EP3139855B1 (en) * 2014-05-09 2021-11-03 3Shape A/S Scanning of edentulous patients
DE102014007095A1 (en) 2014-05-14 2015-11-19 Universität Zu Lübeck Method and device for reducing artifacts in computer tomographic images
ES2941715T3 (en) 2014-05-22 2023-05-25 Carestream Dental Tech Topco Ltd Procedure for 3D cephalometric analysis
US9953425B2 (en) 2014-07-30 2018-04-24 Adobe Systems Incorporated Learning image categorization using related attributes
US9934597B2 (en) 2014-09-11 2018-04-03 Carestream Health, Inc. Metal artifacts reduction in cone beam reconstruction
US9655580B2 (en) 2014-10-24 2017-05-23 General Electric Company Systems and methods for metal artifact reduction
JP6458860B2 (en) 2015-03-09 2019-01-30 富士通株式会社 Crown information acquisition program, information processing apparatus, and crown information acquisition method
US9498179B1 (en) 2015-05-07 2016-11-22 General Electric Company Methods and systems for metal artifact reduction in spectral CT imaging
EP3295374B8 (en) * 2015-05-11 2023-10-18 Siemens Healthcare GmbH Method and system for landmark detection in medical images using deep neural networks
US10013779B2 (en) 2015-06-22 2018-07-03 Toshiba Medical Systems Corporation Metal artifact reduction for 3D-digtial subtraction angiography
US10235606B2 (en) 2015-07-22 2019-03-19 Siemens Healthcare Gmbh Method and system for convolutional neural network regression based 2D/3D image registration
GB2541644B (en) * 2015-08-03 2017-11-22 Advanced Risc Mach Ltd Graphics processing systems
JP6450053B2 (en) 2015-08-15 2019-01-09 セールスフォース ドット コム インコーポレイティッド Three-dimensional (3D) convolution with 3D batch normalization
TWI592145B (en) * 2015-11-26 2017-07-21 國立陽明大學 Tomographic digital impression scanner system and the using method thereof
JP2017102622A (en) 2015-11-30 2017-06-08 キヤノン株式会社 Image processing device, image processing method and program
US10032271B2 (en) 2015-12-10 2018-07-24 3M Innovative Properties Company Method for automatic tooth type recognition from 3D scans
JP6873600B2 (en) 2016-03-04 2021-05-19 キヤノン株式会社 Image recognition device, image recognition method and program
DE102016204226A1 (en) 2016-03-15 2017-09-21 Siemens Healthcare Gmbh Apparatus and method for demarcating a metal object for artifact reduction in tomographic images
CN107203998B (en) * 2016-03-18 2020-04-03 北京大学 A method for segmenting dentition in cone beam CT images
JP6780948B2 (en) 2016-03-28 2020-11-04 キヤノンメディカルシステムズ株式会社 X-ray CT device
JP6658308B2 (en) 2016-05-30 2020-03-04 富士通株式会社 Tooth type determination program, crown position determination apparatus and method
ES3047185T3 (en) 2016-06-21 2025-12-03 Nobel Biocare Services Ag Method for estimating shape, position and orientation of a dental restoration
US10304190B2 (en) 2016-06-29 2019-05-28 3M Innovative Properties Company Virtual model of articulation from intra-oral scans
WO2018022752A1 (en) 2016-07-27 2018-02-01 James R. Glidewell Dental Ceramics, Inc. Dental cad automation using deep learning
AU2017316731B2 (en) 2016-08-22 2022-12-15 Kolibree SAS Oral hygiene system for compliance monitoring and tele-dentistry system
US20200022790A1 (en) 2016-10-10 2020-01-23 3Shape A/S Common Placement Support for Artificial Teeth
US10660728B2 (en) 2016-10-20 2020-05-26 Baliram Maraj Systems and methods for dental treatment utilizing mixed reality and deep learning
CN106618760B (en) 2016-12-07 2019-11-08 上海牙典医疗器械有限公司 A method of design orthodontic therapy scheme
CN108205806B (en) 2016-12-20 2020-10-09 北京大学 Automatic analysis method for three-dimensional craniofacial structure of cone beam CT image
EP3562426B1 (en) 2016-12-30 2022-05-04 Carestream Dental Technology Topco Limited Reconstruction of a virtual computed-tomography volume to track orthodontics treatment evolution
EP4241725B1 (en) 2017-03-20 2025-07-30 Align Technology, Inc. Generating a virtual depiction of an orthodontic treatment of a patient
IL271743B2 (en) 2017-06-30 2024-08-01 Promaton Holding Bv Classification and 3D model of dental structures - 3D maxilla using deep learning methods
KR20200043374A (en) 2017-06-30 2020-04-27 케어스트림 덴탈 테크놀로지 톱코 리미티드 Surface mapping using an intraoral scanner with penetration capability
FR3069359B1 (en) 2017-07-21 2019-08-23 Dental Monitoring METHOD FOR ANALYZING AN IMAGE OF A DENTAL ARCADE
FR3069355B1 (en) 2017-07-21 2023-02-10 Dental Monitoring Method for training a neural network by enriching its learning base for the analysis of a dental arch image
EP3462373A1 (en) 2017-10-02 2019-04-03 Promaton Holding B.V. Automated classification and taxonomy of 3d teeth data using deep learning methods
US10997727B2 (en) 2017-11-07 2021-05-04 Align Technology, Inc. Deep learning for tooth detection and evaluation
US10824862B2 (en) 2017-11-14 2020-11-03 Nuro, Inc. Three-dimensional object detection for autonomous robotic systems using image proposals
EA201700561A1 (en) 2017-11-16 2019-05-31 Общество С Ограниченной Ответственностью "Доммар" METHOD AND SYSTEM OF TEETH ALIGNMENT ON THE BASIS OF MODELING THE CROWN AND ROOTS MOVEMENT
US11120551B2 (en) 2017-11-27 2021-09-14 Rensselaer Polytechnic Institute Training a CNN with pseudo ground truth for CT artifact reduction
EP3503038A1 (en) 2017-12-22 2019-06-26 Promaton Holding B.V. Automated 3d root shape prediction using deep learning methods
CN108305684A (en) 2018-02-28 2018-07-20 成都贝施美医疗科技股份有限公司 Orthodontic treatment analogy method, device and terminal device
EP3561778A1 (en) 2018-04-26 2019-10-30 Promaton Holding B.V. Automated correction of metal affected voxel representations of x-ray data using deep learning techniques
CN110473283B (en) * 2018-05-09 2024-01-23 无锡时代天使医疗器械科技有限公司 Method for setting local coordinate system of tooth three-dimensional digital model
EP3591616A1 (en) 2018-07-03 2020-01-08 Promaton Holding B.V. Automated determination of a canonical pose of a 3d dental structure and superimposition of 3d dental structures using deep learning
EP3620130A1 (en) 2018-09-04 2020-03-11 Promaton Holding B.V. Automated orthodontic treatment planning using deep learning
CN113165929B (en) 2018-09-27 2024-05-31 康宁公司 Modular molten glass delivery device
EP3671531A1 (en) 2018-12-17 2020-06-24 Promaton Holding B.V. Semantic segmentation of non-euclidean 3d data sets using deep learning
US11461244B2 (en) 2018-12-20 2022-10-04 Intel Corporation Co-existence of trust domain architecture with multi-key total memory encryption technology in servers
EP3767521A1 (en) 2019-07-15 2021-01-20 Promaton Holding B.V. Object detection and instance segmentation of 3d point clouds based on deep learning
EP3767531A1 (en) 2019-07-19 2021-01-20 Becton Dickinson Rowa Germany GmbH Method for measuring and verifying drug portions and computer program products
US10932890B1 (en) 2019-11-14 2021-03-02 Pearl Inc. Enhanced techniques for determination of dental margins in intraoral scans
US20230263605A1 (en) 2022-02-24 2023-08-24 Voyager Dental, Inc. Color digital denture design and replacement

Also Published As

Publication number Publication date
US20250252598A1 (en) 2025-08-07
CN112639880A (en) 2021-04-09
JP7493464B2 (en) 2024-05-31
EP3818500A1 (en) 2021-05-12
US12229993B2 (en) 2025-02-18
WO2020007941A1 (en) 2020-01-09
BR112020026687A2 (en) 2021-03-30
CA3104592A1 (en) 2020-01-09
KR20210028226A (en) 2021-03-11
US20210174543A1 (en) 2021-06-10
CN112639880B (en) 2025-08-08
IL279834B2 (en) 2025-05-01
EP3591616A1 (en) 2020-01-08
IL279834B1 (en) 2025-01-01
JP2021529051A (en) 2021-10-28
EP3818500B1 (en) 2024-10-09
IL279834A (en) 2021-03-01
KR102889390B1 (en) 2025-11-24

Similar Documents

Publication Publication Date Title
ES2997308T3 (en) Automated determination of a canonical pose of a 3d objects and superimposition of 3d objects using deep learning
ES3034058T3 (en) Automated orthodontic treatment planning using deep learning
ES2912304T3 (en) Automated 3D root shape prediction using deep learning methods
ES2807263T3 (en) Classification and 3D modeling of 3D dentomaxillofacial structures using deep learning methods
KR102704869B1 (en) Automatic classification and classification systemization of 3D dental data using deep learning methods
Chung et al. Automatic registration between dental cone-beam CT and scanned surface via deep pose regression neural networks and clustered similarities
KR102458324B1 (en) Data processing method using a learning model
CN120345004A (en) Autoencoders for processing 3D representations in digital oral care
Abdolali et al. Mandibular canal segmentation using 3D Active Appearance Models and shape context registration
KR20220133834A (en) Data processing method using a learning model
WO2024127308A1 (en) Classification of 3d oral care representations
Sivasankaran et al. A Rapid Advancing Image Segmentation Approach in Dental to Predict Cryst.
van der Wel Virtual surgical planning and patient specific osteosynthesis in Orthognathic Surgery
Neumann Localization and Classification of Teeth in Cone Beam Computed Tomography using 2D CNNs
WO2024127310A1 (en) Autoencoders for the validation of 3d oral care representations
Lugadilu Development of a statistical shape and appearance model of the skull from a South African population
BR112021003326B1 (en) SYSTEM THAT COMPRISES A DEEP NEURAL NETWORK AND AT LEAST ONE PROCESSOR