BR112020026687A2 - Método implantado por computador para determinar automaticamente uma pose canônica de um objeto 3d, para sobreposição automatizada de um primeiro objeto 3d e para treinar uma rede neural profunda 3d, sistema de computador adaptado para determinar automaticamente uma pose canônica de um objeto 3d e para sobreposição automatizada de um primeiro objeto 3d, produto de programa de computador - Google Patents

Método implantado por computador para determinar automaticamente uma pose canônica de um objeto 3d, para sobreposição automatizada de um primeiro objeto 3d e para treinar uma rede neural profunda 3d, sistema de computador adaptado para determinar automaticamente uma pose canônica de um objeto 3d e para sobreposição automatizada de um primeiro objeto 3d, produto de programa de computador Download PDF

Info

Publication number
BR112020026687A2
BR112020026687A2 BR112020026687-6A BR112020026687A BR112020026687A2 BR 112020026687 A2 BR112020026687 A2 BR 112020026687A2 BR 112020026687 A BR112020026687 A BR 112020026687A BR 112020026687 A2 BR112020026687 A2 BR 112020026687A2
Authority
BR
Brazil
Prior art keywords
canonical
voxel
coordinate system
neural network
data
Prior art date
Application number
BR112020026687-6A
Other languages
English (en)
Inventor
Frank Theodorus Catharina Claessen
David Anssari Moin
Teo Cherici
Original Assignee
Promaton Holding B.V.
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 B.V. filed Critical Promaton Holding B.V.
Publication of BR112020026687A2 publication Critical patent/BR112020026687A2/pt

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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; CALCULATING OR 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; CALCULATING OR 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; CALCULATING OR 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; CALCULATING OR 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; CALCULATING OR 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; CALCULATING OR 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; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2210/00Indexing scheme for image generation or computer graphics
    • G06T2210/41Medical
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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; CALCULATING OR 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)
  • Computer Vision & Pattern Recognition (AREA)
  • General Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Software Systems (AREA)
  • Veterinary Medicine (AREA)
  • Public Health (AREA)
  • Animal Behavior & Ethology (AREA)
  • Epidemiology (AREA)
  • Dentistry (AREA)
  • Oral & Maxillofacial Surgery (AREA)
  • Computer Graphics (AREA)
  • General Engineering & Computer Science (AREA)
  • Optics & Photonics (AREA)
  • Computational Linguistics (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • Computing Systems (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Architecture (AREA)
  • Molecular Biology (AREA)
  • Computer Hardware Design (AREA)
  • Geometry (AREA)
  • Apparatus For Radiation Diagnosis (AREA)
  • Dental Tools And Instruments Or Auxiliary Dental Instruments (AREA)
  • Image Analysis (AREA)
  • Dental Prosthetics (AREA)

Abstract

trata-se de um método para determinar automaticamente uma pose canônica de um objeto 3d representado por um conjunto de dados 3d, em que o método compreende: fornecer um ou mais blocos de voxels de uma representação de voxel do objeto 3d associado a um primeiro sistema de coordenada para a entrada de uma primeira rede neural profunda 3d, em que a primeira rede neural 3d é treinada para gerar informações de pose canônica associadas a um sistema de coordenada canônica definido em relação a uma posição de parte da estrutura dental 3d; receber informações de pose canônica da saída da primeira rede neural profunda 3d, em que as informações de pose canônica compreendem para cada voxel do um ou mais blocos uma predição de uma posição do voxel no sistema de coordenada canônica, em que a posição é definida por coordenadas canônicas; usar as coordenadas canônicas para determinar uma orientação e dimensão dos eixos geométricos do sistema de coordenada canônica, e uma posição da origem do sistema de coordenada canônica em relação ao eixo geométrico e a origem do primeiro sistema de coordenada 3d, e usar a orientação e a posição para determinar parâmetros de transformação para transformar coordenadas do primeiro sistema de coordenada em coordenadas canônicas; e determinar uma representação canônica da estrutura dental 3d, em que a determinação inclui aplicar os parâmetros de transformação às coordenadas dos voxels da representação de voxel ou o conjunto de dados 3d usado para determinar a representação de voxel.

Description

Relatório Descritivo da Patente de Invenção para “MÉTODO IMPLANTADO POR
COMPUTADOR PARA DETERMINAR AUTOMATICAMENTE UMA POSE CANÔNICA DE UM OBJETO 3D, PARA SOBREPOSIÇÃO AUTOMATIZADA DE UM PRIMEIRO OBJETO 3D E PARA TREINAR UMA REDE NEURAL PROFUNDA 3D, SISTEMA DE COMPUTADOR ADAPTADO PARA DETERMINAR AUTOMATICAMENTE UMA POSE CANÔNICA DE UM OBJETO 3D E PARA SOBREPOSIÇÃO AUTOMATIZADA DE UM PRIMEIRO OBJETO 3D, PRODUTO DE PROGRAMA DE COMPUTADOR”
CAMPO DA INVENÇÃO
[001] A invenção refere-se à determinação automatizada de uma pose canônica de um objeto 3D, como estrutura dental 3D, e sobreposição de objetos 3D com o uso de aprendizado profundo; e, em particular, embora não exclusivamente, a métodos e sistemas para determinação automatizada de uma pose canônica de um objeto 3D e métodos e sistemas para sobreposição automatizada de objetos 3D e um produto de programa de computador que possibilita que um sistema de computador possa realizar tais métodos.
ANTECEDENTES DA INVENÇÃO
[002] Os modelos 3D precisos da dentição e ossos mandibulares (maxila e mandíbula) de um paciente são essenciais para aplicações dentais auxiliadas por computador 3D (planejamento de tratamento ortodôntico, planejamento de implante dental, planejamento de cirurgia ortognática (cirurgia mandibular), etc.). A formação de tais modelos 3D tem base nos dados de imagem 3D do paciente, tipicamente dados de Tomografia Computadorizada (CT) 3D de um objeto 3D que representa, por exemplo, um complexo dentomaxilofacial ou outra parte do corpo. Uma varredura CT resulta tipicamente em uma representação de voxel que representa (parte de) o objeto 3D, em que cada voxel é associado a um valor de intensidade, tipicamente uma radiodensidade do volume submetido à varredura. Em aplicações médicas, como aplicações dentais, as varreduras de CT são usualmente adquiridas com o uso de CT de feixe cônico (CBCT), devido ao fato de que, quando mais baixa a dose de radiação ao paciente, mais baixo o preço de aquisição do equipamento, e mais fácil o uso em comparação com CT de feixe em leque.
[003] Entretanto, as técnicas de CBCT são sensíveis a artefatos (especialmente na presença de metal), não há padrão para o setor industrial para conversão da saída de sensor do digitalizador de CBCT em valores de radiação que representam a radiodensidade em unidades Hounsfield (HU) no volume submetido à varredura. Além disso, o uso de baixa dose fornece um contraste relativamente insatisfatório, o que torna o mesmo difícil de distinguir entre estruturas em um objeto 3D, por exemplo, um complexo dentomaxilofacial, que tem densidades similares. Estes problemas podem resultar em discrepâncias em modelos 3D derivados de tais representações de voxel com o uso de, por exemplo, uma técnica de limiarização. Então, modelos 3D derivados de uma representação de voxel de dados de CBCT não são adequados, ou pelo menos são menos adequados, para projetar precisamente modelos sustentados por dentes, como usados em, por exemplo, produtos ortodônticos (terapia com alinhador transparente), cirurgia da mandíbula (cirurgia ortognática), cirurgia de implante (implantologia), dentística cosmética (coroas, pontes), etc.
[004] A fim de abordar esse problema, uma representação de voxel de um conjunto de dados de CBCT ou um modelo 3D derivado de tal representação de voxel pode ser suplementado, aumentado e/ou (parcialmente) substituído por dados de varredura óptica. Os dados de varredura óptica, como dados de varredura intraoral (IOS) são gerados por uma varredura de superfície (por exemplo, um laser ou luz estruturada) de superfícies de dente (geralmente, as coroas dentais e a superfície gengival circundante) derivadas de um modelo de gesso (ou impressão) da dentição de um paciente ou gerando-se dados de varredura intraoral (IOS) da dentição do paciente. Em comparação com dados de (CB)CT, as vantagens são a ausência de radiação durante a aquisição de dados, e a resolução espacial mais alta. As precisões típicas de varreduras ópticas (extraorais) e IOS são aproximadas como na faixa entre 5 e 10 mícrons e entre 25 e 75 mícrons, respectivamente. Entretanto, os resultados de varredura não diferem entre dentes (coroas) e regiões gengivais. Além disso,
nenhuma informação pode ser capturada além das superfícies visíveis, em particular, nenhuma informação sobre raízes de dente, osso mandibular, nervos, etc. é adquirida. As varreduras intraorais podem ser suplementadas por dados de modelo generalizado, por exemplo, derivadas de um banco de dados de formatos de coroa com formatos de raiz correspondentes, para estimar as estruturas subjacentes, mas - como tal - uma generalização não considera as informações que consideram o formato 3D real dos volumes desejáveis. Então, tais estimativas com base em modelo são inerentemente imprecisas.
[005] Mais geralmente, durante o processamento de dados de imagem 3D, por exemplo, para gerar modelos 3D precisos, para reparar dados ausentes num conjunto de dados 3D, mas também para analisar e avaliar, por exemplo, (potencial) efeito de tratamento (ou efeitos de tratamento)/resultados ou com o propósito de análise de progressão de doença, é vantajoso ou até mesmo necessário combinar conjuntos de dados de imagem 3D de fontes diferentes. Isto pode significar alinhar um ou mais conjuntos de dados 3D voxelizados, como conjuntos de dados de CBCT, e/ou um ou mais conjuntos de dados de nuvem de pontos ou malha de superfície 3D, por exemplo, conjuntos de dados de IOS, do mesmo objeto 3D, por exemplo, a mesma estrutura dental ou estrutura óssea, e unir os conjuntos alinhados em um conjunto de dados que pode ser usado para determinar um modelo 3D preciso ou para realizar uma análise da estrutura dental. O processo de alinhar conjuntos de dados diferentes é denominado sobreposição de imagem ou registro de imagem. O problema de sobreposição ou registro se refere, desse modo, à constatação de um mapeamento um a um entre um ou mais sistemas de coordenada, de modo que recursos correspondentes de um modelo, por exemplo, estruturas dentais 3D, nos sistemas de coordenada diferentes sejam mapeados um ao outro. A união dos conjuntos de dados alinhados em um conjunto de dados que representa a estrutura dental é usualmente denominada fusão.
[006] Em imaginologia de CT e CBCT, técnicas de sobreposição 3D conhecidas incluem sobreposição com base em ponto ou com base em ponto de referência,
sobreposição com base em superfície ou com base em contorno e sobreposição com base em voxel. Exemplos de tais técnicas são descritos no artigo de GKANTIDIS, N et al. Evaluation of 3-dimensional superimposition techniques on various skeletal structures of the head using surface models. PLoS One 2015, Volume 10, n° 2; e o artigo por JODA T et al, Systematic literature review of digital 3D superimposition techniques to create virtual dental patients. Int J Oral Maxillofac Implants, março a abril de 2015, Volume 30, n° 2). Tipicamente, estas técnicas necessitam de intervenção humana, por exemplo, inserção humana.
[007] A precisão de técnicas de sobreposição com base em ponto e com base em superfície depende da precisão da identificação de ponto de referência e dos modelos de superfície 3D, respectivamente. Isso pode ser especialmente problemático na presença de artefatos e regiões de baixo contraste. Quando correspondendo conjuntos de dados divergentes, seria desafiador identificar pontos de referência correspondentes com precisão suficiente. Os algoritmos de correspondência com base em ponto, como ponto iterativo mais próximo (ICP), necessitam geralmente da interação do usuário para fornecer um estado inicial que já está relativamente alinhado de modo próximo. A sobreposição com base em voxel pode superar parte das limitações das técnicas de sobreposição com base em ponto de referência e com base em superfície. Essa técnica emprega informações de volume 3D armazenadas como representações de voxel. As similaridades entre os dados 3D (a serem) sobrepostos podem ser deduzidas das intensidades de nível de voxels em estruturas de referência correspondentes. Essa técnica é especialmente desafiadora quando combinando dados de CBCT não padronizados de baixo contraste de diferentes fontes ou quando combinando dados de modalidades de imagem diferentes (por exemplo, CT e MRI, ou CBCT e dados de imagem 3D binários, conforme pode ser derivado de malhas de superfície que envolvem ou não envolvem um volume). As dificuldades adicionais podem surgir quando conjuntos de dados estão apenas parcialmente em sobreposição. Os métodos de sobreposição com base em voxel do estado da técnica são frequentemente dispendiosos de modo computacional.
[008] O tamanho grande dos conjuntos de dados 3D e o fato de que a implantação clínica necessita de um padrão muito estrito em precisão tornam difícil de utilizar métodos convencionais de sobreposição de imagem em imagens médicas altamente dimensionais. Com os desenvolvimentos recentes em aprendizado profundo, alguns esforços foram feitos para aplicar o aprendizado profundo no campo de registro de imagem. Em uma abordagem, o aprendizado profundo é usado para estimar uma métrica de similaridade, que é, então, usada para acionar um esquema de otimização iterativa. Isso é, por exemplo, relatado por Simonovsky et al, A Deep Metric for Multimodal Registration MICCAI 2016 (Springer, Cham) páginas 10 a 18, em que o problema é apresentado como uma tarefa de classificação, quando uma CNN é definida para distinguir entre alinhamento e desalinhamento de dois fragmentos de imagens sobrepostos. Em outra abordagem, uma rede de regressão profunda (neural) é usada para predizer parâmetros de transformação entre imagens. Por exemplo, o documento nº EP3121789 descreve um método em que uma rede neural profunda é usada para predizer diretamente os parâmetros de transformação entre uma imagem de CT 3D e uma imagem de raios-X 2D. De modo similar, o artigo por Li et al, “Non-rigid image registration using fully convolutional networks with deep self-supervision”, de 3 de setembro de 2017, em que uma rede neural treinada recebe duas figurações e calcula para cada pixel uma deformação dx,dy,dx que é usada para registrar uma figuração na outra. Esse método necessita de duas imagens de entrada que já têm uma certa similaridade e, desse modo, não podem manipular os conjuntos de dados 3D de modalidades diferentes. Então, o problema de registrar conjuntos de dados 3D de modalidades diferentes (em pose, tipo de dados, sistema de coordenada, etc.) de um objeto 3D particular não é abordado na técnica prior.
[009] Grandes variâncias nesses conjuntos de dados 3D (em termos de formatos/modalidades de dados, sistemas de coordenada, posição e orientação do objeto 3D, qualidade dos dados de imagem, quantidades diferentes de sobreposição entre as estruturas presentes, etc.) que o sistema de sobreposição deveria poder lidar,
tornam o problema de sobreposição automatizada precisa de objetos 3D (por exemplo, sobreposição de estruturas dentais 3D sem qualquer intervenção humana) um exercício não trivial. Os sistemas de sobreposição conhecidos não têm capacidade de lidar com estas questões de maneira confiável e robusta. De modo mais geral, grandes variâncias em conjuntos de dados 3D de modalidades diferentes apresentam um problema para processamento preciso por um sistema de rede neural profunda. Isto não é apenas um problema para registro preciso, como também segmentação e/ou classificação precisa por uma rede neural profunda.
[010] Então, há uma necessidade na técnica por um método que pode sobrepor de modo completo, automaticamente, temporizado e robusto o objeto 3D, como estruturas dentomaxilofaciais 3D, conjuntos de dados 3D. Mais especificamente, há uma necessidade na técnica por uma solução na qual, por exemplo, um profissional dental pode obter resultados de sobreposição, necessários para quaisquer de vários propósitos, sem a necessidade de conhecimento adicional ou interações sendo necessárias pelo dito especialista, com um precisão e pontualidade conhecidas de resultados.
SUMÁRIO DA INVENÇÃO
[011] Conforme será observado por um indivíduo versado na técnica, aspectos da presente invenção podem ser incorporados como um sistema, método ou produto de programa de computador. Consequentemente, aspectos da presente invenção podem assumir a forma de uma modalidade inteiramente de hardware, uma modalidade inteiramente de software (incluindo firmware, software residente, microcódigo, etc.) ou uma modalidade que combina aspectos de software e hardware que podem ser todos ser geralmente denominados no presente documento como um "circuito", "módulo" ou "sistema”. Funções descritas nesta revelação podem ser implantadas como um algoritmo executado por um microprocessador de um computador. Adicionalmente, aspectos da presente invenção podem assumir a forma de um produto de programa de computador incorporado em um ou mais meios legíveis por computador que têm código de programa legível por computador incorporado, por exemplo, armazenado nos mesmos.
[012] Qualquer combinação de um ou mais meios legíveis por computador podem ser utilizados. O meio legível por computador pode ser um meio de sinal legível por computador ou um meio de armazenamento legível por computador. Um meio de armazenamento legível por computador pode ser, por exemplo, mas sem limitação, um sistema, aparelho ou dispositivos eletrônicos, magnético, óptico, eletromagnético, infravermelho ou semicondutor ou qualquer combinação adequada dos supracitados. Exemplos mais específicos (uma lista não exaustiva) do meio de armazenamento legível por computador incluiria o seguinte: uma conexão elétrica que tem um ou mais fios, um disquete de computador portátil, um disco rígido, uma memória de acesso aleatório (RAM), uma memória somente de leitura (ROM), uma memória somente de leitura programável apagável (EPROM ou memória Flash), uma fibra óptica, uma memória somente de leitura de disco compacto portátil (CD-ROM), um dispositivo de armazenamento óptico, um dispositivo de armazenamento magnético, ou qualquer combinação adequada dos supracitados. No contexto do documento, um meio de armazenamento legível por computador pode ser qualquer meio tangível que pode compreender, ou armazenar um programa para uso por ou em conexão com um sistema, aparelho ou dispositivo de execução de instrução.
[013] Um meio de sinal legível por computador pode incluir um sinal de dados propagados com código de programa legível por computador incorporado no mesmo, por exemplo, em banda-base ou como parte de uma onda carreadora. Visto que um sinal propagado pode assumir qualquer uma dentre uma variedade de formas, incluindo, mas sem limitação, eletromagnética, óptica ou qualquer combinação adequada das mesmas. Um meio de sinal legível por computador pode ser qualquer meio legível por computador que não é um meio de armazenamento legível por computador e que pode comunicar, propagar, ou transportar um programa para uso por ou em conexão com um sistema, aparelho ou dispositivo de execução de instruções.
[014] O código de programa incorporado em um meio legível por computador pode ser transmitido com o uso de qualquer meio apropriado, incluindo, mas sem limitação, sem fio, com fio, fibra óptica, cabo, RF, etc., ou qualquer combinação adequada do supracitado. O código de programa de computador para executar operações para aspectos da presente invenção pode ser escrito em qualquer combinação de uma ou mais linguagens de programação, incluindo uma linguagem funcional ou de programação orientada por objeto, como Java(TM), Scala, C++, Python ou semelhantes e linguagens de programação processuais convencionais, como a linguagem de programação "C” ou linguagens de programação similares. O código de programa pode ser executado inteiramente no computador do usuário, parcialmente no computador do usuário, como um pacote de software independente, parcialmente no computador do usuário e parcialmente em um computador remoto ou inteiramente no computador remoto, servidor ou servidor virtualizado. Na última situação, o computador remoto pode ser conectado ao computador do usuário através de qualquer tipo de rede, incluindo uma rede local (LAN) ou uma rede ampla (WAN), ou a conexão pode ser feita a um computador externo (por exemplo, através da Internet com o uso de um Provedor de Serviço de Internet).
[015] Os aspectos da presente invenção são descritos abaixo com referência às ilustrações de fluxograma e/ou diagramas de bloco de métodos, aparelho (sistemas) e produtos de programa de computador de acordo com as modalidades da invenção. Será entendido que cada bloco das ilustrações de fluxograma e/ou diagramas de blocos, e combinações de blocos nas ilustrações de fluxograma e/ou diagramas de blocos, possam ser implantados por instruções de programa de computador. Essas instruções de programa de computador podem ser fornecidas a um processador, em particular, um microprocessador ou unidade de processamento central (CPU), ou unidade de processamento gráfico (GPU), de um computador de propósitos gerais, computador de propósitos especiais, ou outro aparelho de processamento de dados programável para produzir uma máquina, de modo que as instruções, que executam por meio do processador do computador, outro aparelho de processamento de dados programáveis, ou outros dispositivos criem meios para implantar as funções/atos especificados no fluxograma e/ou bloco ou blocos de diagrama de blocos.
[016] Essas instruções de programa de computador também podem ser armazenadas em um meio legível por computador que pode direcionar um computador, outro aparelho de processamento de dados programáveis, ou outros dispositivos para funcionar de maneira particular, de modo que as instruções armazenadas no meio legível por computador produzam um artigo de fabricação incluindo instruções que implantam a função/ato especificado no fluxograma e/ou bloco ou blocos de diagrama de blocos.
[017] As instruções de programa de computador também podem ser carregadas em um computador, outro aparelho de processamento de dados programáveis, ou outros dispositivos para fazer com que uma série de etapas operacionais seja realizada no computador, outro aparelho programável ou outros dispositivos produzam um processo implantado por computador de modo que as instruções que são executadas no computador ou outro aparelho programável forneçam processos para implantar as funções/atos especificados no fluxograma e/ou bloco ou blocos de diagrama de blocos.
[018] O fluxograma e os diagramas de bloco nas figuras ilustram a arquitetura, funcionalidade e operação de implantações possíveis de sistemas, métodos e produtos de programa de computador de acordo com várias modalidades da presente invenção. Nesse aspecto, cada bloco no fluxograma ou diagramas de bloco pode representar um módulo, segmento, ou porção de código, que compreende uma ou mais instruções executáveis para implantar a função lógica especificada (ou funções lógicas especificadas). Deve ser observado que, em algumas implantações alternativas, as funções observadas nos blocos podem ocorrer fora da ordem observada nas figuras. Por exemplo, dois blocos mostrados em sucessão podem, de fato, serem executados de modo substancialmente concomitante, ou os blocos podem, algumas vezes, serem executados na ordem inversa, dependendo da funcionalidade envolvida. Também será observado que cada bloco do diagrama de blocos e/ou ilustrações de fluxograma, e combinações de blocos no diagrama de blocos e/ou ilustrações de fluxograma, podem ser implantados por sistemas com base em hardware de propósito especial que realizam as funções ou atos especificados, ou combinações de instruções de hardware e computador de propósito especial.
[019] Nessa aplicação, “imagem” pode se referir a um conjunto de dados que compreende informações em duas, três ou mais dimensões espaciais. “Dados de imagem 3D” pode se referir a qualquer tipo de conjunto de dados tridimensionais, por exemplo, valores de intensidade de voxel, definições de malha de superfície, etc. Ajustar o sistema de coordenada de uma ou mais imagens para coincidir com aquela de outra imagem de referência que compreende (partes de) as mesmas estruturas, é variavelmente conhecido como registro, correspondência, sobreposição ou alinhamento de dados ou imagem. Exceto quando o contexto indica de outro modo, estes termos (e outras palavras derivadas destes termos) são usados de modo intercambiável. “(Conjunto de) parâmetros de transformação”, nesse contexto, é um termo genérico para informações sobre como girar, transladar e/ou dimensionar um conjunto de dados a fim de sobrepor o mesmo em outro ou representar o conjunto de dados em um sistema de coordenada alternativo; o mesmo pode ser representado por uma matriz única, mas também por, por exemplo, uma coletânea de matrizes, vetores e/ou escalas.
[020] Em um aspecto, a invenção se refere a um método implantado por computador para determinar automaticamente uma pose canônica de um objeto 3D em um conjunto de dados 3D. O método pode compreender: um processador de um computador que fornece um ou mais pontos de dados de blocos do conjunto de dados 3D para a entrada de uma primeira rede neural profunda 3D, em que a primeira rede neural 3D é treinada para gerar informações de pose canônica associadas a um sistema de coordenada canônica definido em relação a uma posição de parte do objeto 3D; o processador que recebe informações de pose canônica da saída da primeira rede neural profunda 3D, em que as informações de pose canônica compreendem para cada um dos pontos de dados do um ou mais blocos a predição de uma posição de um ponto de dados no sistema de coordenada canônica, em que a posição é definida por coordenadas canônicas; o processador que usa as coordenadas canônicas para determinar uma orientação dos eixos geométricos do sistema de coordenada canônica, uma posição da origem do sistema de coordenada canônica em relação ao eixo geométrico e a origem do primeiro sistema de coordenada 3D e/ou um dimensionamento dos eixos geométricos do sistema de coordenada canônica; e usar a orientação e as posições para determinar parâmetros de transformação para transformar coordenadas do primeiro sistema de coordenada em coordenadas canônicas; e o processador que determina uma representação canônica do objeto 3D, em que a determinação inclui aplicar os parâmetros de transformação para coordenadas dos pontos de dados do conjunto de dados 3D.
[021] Em uma modalidade, o objeto 3D pode ser uma estrutura dental 3D. Em uma modalidade, os pontos de dados do conjunto de dados 3D podem representar voxels. Em outra modalidade, os pontos de dados do conjunto de dados 3D podem definir pontos de uma nuvem de pontos ou pontos e normal de uma malha de superfície 3D.
[022] Em uma modalidade, a primeira rede neural profunda 3D pode ser configurada como uma rede neural profunda convolucional que é configurada para processar dados 3D voxelizados.
[023] Em outra modalidade, a primeira rede neural profunda 3D pode ser implantada como uma rede com base em perceptron multicamadas profunda (MLP), que teve capacidade de processar pontos de uma nuvem de ponto 3D ou uma malha de superfície 3D.
[024] Em uma modalidade, os parâmetros de transformação podem incluir parâmetros de rotação, translação e/ou dimensionamento.
[025] Em uma modalidade, a representação canônica do objeto 3D pode ser uma representação de voxel canônica ou uma representação de malha 3D canônica do objeto 3D.
[026] Em uma modalidade, as informações de pose canônica podem incluir um ou mais mapas de voxel para associar (ligar) um voxel da representação de voxel com
(a) uma predição de uma posição do voxel no sistema de coordenada canônica.
[027] Em uma modalidade, o um ou mais mapas de voxel podem incluir um primeiro mapa de voxel 3D que associa (liga) um voxel com (a) uma predição de uma primeira coordenada canônica x’ do sistema de coordenada canônica, um segundo mapa 3D de voxel que associa (liga) um voxel com (a) uma predição de uma segunda coordenada y’ canônica do sistema de coordenada canônica e um terceiro mapa de voxel 3D que associa (liga) um voxel com (a) uma predição de uma terceira coordenada z’ canônica do sistema de coordenada canônica.
[028] Em uma modalidade, a determinação de uma orientação de um eixo geométrico do sistema de coordenada canônica pode compreender adicionalmente: determinar para um voxel da representação de voxel um gradiente local numa coordenada canônica de um dentre o um ou mais mapas de voxel 3D, em que o gradiente local representa um vetor no espaço definido pelo primeiro sistema de coordenada, em que a orientação do vetor representa uma predição da orientação de um eixo geométrico canônico e/ou em que o comprimento do vetor define um fator de dimensionamento associado ao eixo geométrico canônico.
[029] Então, o método permite a determinação automatizada de uma representação canônica do objeto 3D, como uma estrutura dental 3D. O método pode ser usado para transformar modalidades de dados 3D diferentes de um objeto 3D na pose canônica do objeto 3D que pode ser usado no processo de sobreposição de conjuntos de dados 3D diferentes. Alternativamente e/ou adicionalmente, o método pode ser usado como uma etapa de pré-processamento antes de um conjunto de dados 3D ser oferecido a uma entrada 3D de uma ou mais redes neurais profundas 3D que são configuradas para segmentar o objeto 3D, por exemplo, uma estrutura dental 3D, e/ou para determinar uma taxonomia de objetos 3D segmentados, por exemplo, dentes. Tal etapa de pré-processamento aumenta substancialmente a precisão da segmentação e classificação dos objetos 3D visto que a precisão de tal rede neural treinada pode ser afetada se a pose do objeto 3D representado pelo conjunto de dados 3D que é inserido no sistema desvia muito (especialmente em relação à orientação) de uma pose normalizada.
[030] Em um aspecto adicional, a invenção pode se referir a um método implantado por computador para sobreposição automatizada de um primeiro objeto 3D, como uma primeira estrutura dental 3D, representado por (pelo menos) um primeiro conjunto de dados 3D e um segundo objeto 3D, como uma segunda estrutura dental 3D, representada por um segundo conjunto de dados 3D. Em uma modalidade, o primeiro e o segundo objetos 3D são estruturas dentais 3D da mesma pessoa. Em uma modalidade, o método pode compreender: um processador de um computador que fornece um ou mais primeiros blocos de voxels de uma primeira representação de voxel do primeiro objeto 3D associado a um primeiro sistema de coordenada e um ou mais segundos blocos de voxels de uma segunda representação de voxel do segundo objeto 3D associado a um segundo sistema de coordenada para a entrada de uma primeira rede neural profunda 3D, em que a primeira rede neural profunda 3D é treinada para gerar informações de pose canônica associadas a um sistema de coordenada canônica definido em relação a uma posição de parte do objeto 3D; em que o processador recebe a primeira e segunda informações de pose canônica da saída da rede neural profunda 3D, em que as primeiras informações de pose canônica compreendem para cada voxel do um ou mais primeiros blocos uma predição de uma primeira posição do voxel no sistema de coordenada canônica; e as segundas informações de pose canônica que compreendem para cada voxel do um ou mais segundos blocos uma predição de uma segunda posição do voxel no sistema de coordenada canônica, em que a primeira e segunda posição são definidas pela primeira e segunda coordenadas canônicas, respectivamente; o processador que usa as primeiras informações de pose canônica para determinar uma primeira orientação dos eixos geométricos e a primeira posição da origem dos eixos geométricos no primeiro sistema de coordenada e usar as segundas informações de pose canônica para determinar uma segunda orientação e uma segunda posição da origem dos eixos geométricos do sistema de coordenada canônica no segundo sistema de coordenada; o processador que usa a primeira orientação e a primeira posição para determinar primeiros parâmetros de transformação, preferencialmente primeiros parâmetros de rotação, translação e/ou dimensionamento, para transformar coordenadas do primeiro sistema de coordenada em coordenadas do sistema de coordenada canônica; e usar a segunda orientação e a segunda posição para determinar os segundos parâmetros de transformação, preferencialmente segundos parâmetros de rotação, translação e/ou dimensionamento, para transformar coordenadas do segundo sistema de coordenada nas coordenadas canônicas; e, o processador determina uma sobreposição do primeiro objeto 3D e o segundo objeto 3D, em que a determinação inclui usar o primeiro e segundo parâmetros de transformação para formar uma primeira e segunda representações canônicas do primeiro e segundo objetos 3D, respectivamente.
[031] Então, dois ou mais conjuntos de dados 3D diferentes de objetos 3D, como estruturas dentais 3D (que representam complexos dentomaxilofaciais), tipicamente do mesmo paciente, podem ser sobrepostos transformando-se as coordenadas associadas aos conjuntos de dados 3D em coordenadas de um sistema de coordenada canônica. Num exemplo típico, conjuntos de dados 3D diferentes podem ser varreduras diferentes (parte de) uma dentição do paciente. Usualmente, os conjuntos de dados 3D diferentes estão pelo menos parcialmente em sobreposição, isto é, ambos os conjuntos de dados têm pelo menos parte de um elemento de objeto (por exemplo, um dente ou coroa de dente no caso de uma estrutura dental 3D) em comum. Uma rede neural profunda 3D, por exemplo, uma rede neural convolucional 3D, pode determinar a pose canônica para pelo menos partes de um objeto 3D. Em algumas modalidades, a rede neural profunda 3D processa as coordenadas bloco por bloco, a fim de satisfazer as limitações computacionais. Um computador pode, então, aplicar processamento adicional para deduzir a posição relativa da origem canônica e eixos geométricos canônicos (direções e dimensão) para cada voxel fornecido à rede convolucional 3D. Subsequentemente, parâmetros de transformação para sobrepor ou alinhar os dois conjuntos de dados de imagem podem ser deduzidos e os conjuntos de dados de imagem 3D podem ser alinhados com o uso dos ditos parâmetros de transformação. O primeiro conjunto de dados de imagem 3D pode ser transformado para se alinhar com o segundo conjunto de dados de imagem 3D, ou o segundo conjunto de dados de imagem 3D pode ser transformado para se alinhar com o primeiro conjunto de dados de imagem 3D, ou ambos os conjuntos de dados de imagem 3D podem ser transformados de modo que sejam alinhados em uma terceira orientação diferente de qualquer orientação recebida.
[032] A rede neural profunda 3D pode ser treinada para ser muito robusta contra variâncias nos conjuntos de dados 3D devido ao fato de que a rede neural profunda 3D é treinada com base em um grande número de estruturas dentomaxilofaciais 3D típicas, em que as estruturas exibem uma variância espacial grande (translação, rotação e/ou dimensionamento). Problemas relacionados ao tamanho de memória (limitado) da rede neural profunda 3D podem ser resolvidos treinando-se a rede neural profunda com base nas subamostras (blocos) de representações de voxel. Para essa finalidade, uma representação de voxel pode ser dividida em blocos de voxels de um tamanho predeterminado antes de serem fornecidos à entrada da rede neural profunda 3D. Uma vantagem adicional de usar blocos é a de que a rede pode determinar a pose canônica de até mesmo uma quantidade limitada de dados, por exemplo, alguns dentes em vez de uma dentição inteira. Devido ao fato de que o sistema de coordenada canônica é definido em relação a um padrão conhecido (predeterminado) para os objetos (por exemplo, estruturas dentomaxilofaciais), o primeiro e segundo conjuntos de dados 3D canônicos obtidos são alinhados, em que a precisão pode depender do tempo de treinamento, variância de amostra de treinamento, e/ou blocos disponíveis conjuntos de dados recebidos.
[033] Nessa revelação, uma pose canônica define uma pose, que compreende uma posição, uma orientação, e uma dimensão, e é uma pose que é definida atribuindo-se posições e/ou orientações predeterminadas à parte (preferencialmente) parte identificável de modo confiável e não ambíguo de um objeto 3D, por exemplo, a arcada dentária, no caso de uma estrutura dental 3D. De maneira similar, um sistema de coordenada canônica pode ser definido atribuindo-se a origem a uma posição identificável de modo confiável e não ambíguo em relação a uma parte identificável do objeto 3D, e para definir os eixos geométricos coordenados de maneira consistente, por exemplo, o eixo geométrico x ao longo da tangente do ponto de curvatura máxima da arcada dentária. Tal sistema de coordenada canônica pode definir um sistema de coordenada padronizado, não ambíguo, predeterminado que é consistente através de dados de objeto 3D de um certo tipo (por exemplo, todos os dados de imagem dentomaxilofacial podem ser definidos em relação à posição, orientação e dimensão típicas de estruturas dentomaxilofaciais identificáveis de modo confiável). Sua função é garantir que um objeto 3D em conjuntos de dados de imagem diferentes está na mesma posição, orientação e dimensão relativa. Tal função pode ser usada em várias aplicações em que dados 3D, como representações de voxel, nuvens de ponto ou malhas 3D, são processados por uma rede neural treinada. As modalidades dessa revelação usam a percepção de que, se dois ou mais objetos 3D são transformados para o sistema de coordenada canônica, os objetos 3D também são alinhados um ao outro. O mesmo usa adicionalmente a percepção de que uma pose canônica de uma estrutura dentomaxilofacial pode ser automaticamente determinada utilizando-se uma rede neural profunda 3D, preferencialmente uma rede neural convolucional 3D, impedindo a necessidade de interação humana.
[034] Em uma modalidade, a primeira e a segunda representações canônicas do primeiro e segundo objetos 3D, preferencialmente primeira e segunda malhas de superfície 3D, pode ser malhas de superfície 3D, a determinação de uma sobreposição inclui adicionalmente: segmentar a primeira representação canônica do primeiro objeto 3D em pelo menos uma malha de superfície 3D de um elemento de objeto 3D, por exemplo, um primeiro elemento de objeto dental 3D, do primeiro objeto 3D e segmentar a segunda representação canônica do segundo objeto 3D em pelo menos uma malha de superfície 3D de um segundo elemento de objeto 3D, por exemplo, um segundo elemento dental 3D, do segundo objeto 3D; selecionar pelo menos três primeiros e segundos pontos-chave não colineares da primeira e segunda malhas de superfície 3D, um ponto-chave (um ponto de interesse na superfície de uma malha de superfície 3D); e alinhar o primeiro e segundo elementos dentais 3D com base no primeiro e segundo pontos-chave não colineares. Em uma modalidade, um ponto-chave pode definir um máximo ou mínimo local e/ou global na curvatura de superfície da primeira malha de superfície.
[035] Em uma modalidade, a primeira e a segunda representações canônicas do primeiro e segundo objetos 3D podem ser representações de voxel. Em uma modalidade, a determinação de uma sobreposição pode incluir adicionalmente: fornecer pelo menos parte da primeira representação de voxel canônica do primeiro objeto 3D e pelo menos parte da segunda representação de voxel canônica do segundo objeto 3D para a entrada de uma segunda rede neural profunda 3D, em que a segunda rede neural profunda 3D é treinada para determinar parâmetros de transformação, preferencialmente parâmetros de rotação, translação e/ou dimensionamento, para alinhar a primeira e a segunda representações de voxel canônica; alinhar a primeira e a segunda representações canônicas do primeiro e segundo objetos 3D com base nos parâmetros de transformação fornecidos pela saída da segunda rede neural profunda 3D.
[036] Em uma modalidade, determinar uma sobreposição pode incluir adicionalmente: o processador que determina um volume de sobreposição entre a representação canônica do primeiro objeto 3D e a representação canônica do segundo objeto 3D.
[037] Em uma modalidade, determinar uma sobreposição pode incluir adicionalmente: o processador que determina um primeiro volume de interesse que compreende primeiros voxels da primeira representação canônica no volume de sobreposição; e determinar o segundo volume de interesse que compreende segundos voxels da segunda representação canônica no volume de sobreposição.
[038] Em uma modalidade, o método pode compreender adicionalmente: o processador que fornece primeiros voxels contidos no primeiro volume de interesse (VOI) para a entrada de uma terceira rede neural profunda 3D, em que a terceira rede neural profunda 3D é treinada para classificar e segmentar voxels; e o processador que recebe valores de ativação para cada um dos primeiros voxels no primeiro volume de interesse e/ou para cada um dos segundos voxels no segundo volume de interesse da saída da terceira rede neural profunda 3D, em que um valor de ativação de um voxel representa a probabilidade de que o voxel pertence a um elemento de objeto 3D predeterminado, por exemplo, um elemento dental 3D (como um dente) de uma estrutura dental 3D; e o processador que usa os valores de ativação para determinar uma primeira e segunda representações de voxel do primeiro e segundo elementos de objeto 3D no primeiro e segundo VOIs, respectivamente.
[039] Em uma modalidade, o processador pode usar a primeira e segunda representações de voxel do primeiro e segundo elementos de objeto 3D para determinar a primeira e segunda malhas de superfície 3D do primeiro e segundo elementos de objeto 3D.
[040] Em uma modalidade, o método pode compreender adicionalmente: o processador que seleciona pelo menos três primeiros e segundos pontos-chave não colineares da primeira e segunda malhas de superfície 3D, um ponto-chave que define preferencialmente um máximo ou mínimo local e/ou global na curvatura de superfície da primeira malha de superfície; e o processador que se alinha ao primeiro e segundo elemento de objeto 3D com base no primeiro e segundo pontos-chave não colineares, preferencialmente com o uso de um algoritmo iterativo de ponto mais próximo.
[041] Em uma modalidade, o método pode compreender adicionalmente: o processador que fornece a primeira representação de voxel do primeiro elemento dental 3D e a segunda representação de voxel do segundo elemento dental 3D para uma quarta rede neural profunda 3D, em que a quarta rede neural profunda 3D é treinada para gerar um valor de ativação para cada uma dentre uma pluralidade de identificações de estrutura candidata, um valor de ativação associado a uma identificação candidata que representa a probabilidade de uma representação de voxel recebida pela entrada da quarta rede neural profunda 3D representar um tipo de estrutura conforme indicado pela identificação de estrutura candidata; o processador que recebe da saída da quarta rede neural profunda 3D uma pluralidade de primeiros e segundos valores de ativação, que seleciona uma primeira identificação de estrutura com o valor de ativação mais alto da primeira pluralidade de valores de ativação e seleciona uma segunda identificação de estrutura com o valor de ativação mais alto da segunda pluralidade de valores de ativação e atribui a primeira e segunda identificações de estrutura à primeira e segunda malhas de superfície 3D, respectivamente.
[042] Em uma modalidade, o método pode compreender adicionalmente: o processador que seleciona pelo menos três primeiros e segundos pontos-chave não colineares da primeira e segunda malhas de superfície 3D, um ponto-chave que define preferencialmente um máximo ou mínimo local e/ou global na curvatura de superfície da primeira malha de superfície; em que o processador identifica o primeiro e segundo pontos-chave com base na primeira identificação de estrutura atribuída à primeira malha de superfície 3D e a segunda identificação de estrutura atribuída à segunda malha de superfície 3D, respectivamente; e, o processador que alinha o primeiro e segundo elementos dentais 3D com base no primeiro e segundo pontos-chave e a primeira e segunda identificações de estrutura da primeira e segunda malhas de superfície 3D, respectivamente, preferencialmente com o uso de um algoritmo iterativo de ponto mais próximo.
[043] Em um aspecto adicional, a invenção pode se referir a um método implantado por computador para treinar uma rede neural profunda 3D para determinar automaticamente uma pose canônica de um objeto 3D, como uma estrutura dental 3D, representada por um conjunto de dados 3D. Em uma modalidade, o método pode compreender: receber dados de treinamento e dados-alvo associados, os dados de treinamento incluindo uma representação de voxel de um objeto 3D e os dados-alvo incluindo valores de coordenada canônica de um sistema de coordenada canônica para cada voxel da representação de voxel, em que o sistema de coordenada canônica é um sistema de coordenada predeterminado definido em relação a uma posição de parte da estrutura dental 3D; selecionar um ou mais blocos de voxels (um ou mais subamostras) da representação de voxel de um tamanho predeterminado e aplicar uma rotação 3D aleatória à subamostra e aplicar a mesma rotação aos dados- alvo; oferecer o um ou mais blocos para a entrada da rede neural profunda 3D e a rede neural profunda 3D que prediz, para cada voxel do um ou mais blocos, coordenadas canônicas do sistema de coordenada canônica; e otimizar valores dos parâmetros de rede da rede neural profunda 3D minimizando-se uma função de perda que representa um desvio entre os valores de coordenada preditos pela rede neural profunda 3D e as coordenadas canônicas (apropriadamente transformadas) associadas aos dados-alvo.
[044] Em outro aspecto, a invenção pode se referir a uma sistema de computador adaptado para determinar automaticamente uma pose canônica de um objeto 3D, como uma estrutura dental 3D, representada por um conjunto de dados 3D, que compreende: um meio de armazenamento legível por computador que tem código de programa legível por computador incorporado ao mesmo, o código de programa incluindo pelo menos uma rede neural profunda 3D treinada, e pelo menos um processador, preferencialmente um microprocessador, acoplado ao meio de armazenamento legível por computador, em que, em resposta a executar o código de programa legível por computador, o pelo menos um processador é configurado para realizar operações executáveis que compreendem: fornecer um ou mais blocos de voxels de uma representação de voxel do objeto 3D associados a um primeiro sistema de coordenada à entrada de uma primeira rede neural profunda 3D, a primeira rede neural 3D é treinada para gerar informações de pose canônica associadas a um sistema de coordenada canônica definido em relação a uma posição de parte do objeto 3D; receber informações de pose canônica da saída da primeira rede neural profunda 3D, em que as informações de pose canônica compreendem para cada voxel do um ou mais blocos uma predição de uma posição do voxel no sistema de coordenada canônica, em que a posição é definida por coordenadas canônicas; usar as coordenadas canônicas para determinar uma orientação dos eixos geométricos do sistema de coordenada canônica e uma posição da origem do sistema de coordenada canônica em relação ao eixo geométrico e a origem do primeiro sistema de coordenada 3D e usar a orientação e a posição para determinar parâmetros de transformação, preferencialmente parâmetros de rotação, translação e/ou dimensionamento, para transformar coordenadas do primeiro sistema de coordenada em coordenadas canônicas; e determinar uma representação canônica, preferencialmente uma representação de voxel canônica ou uma representação de malha 3D canônica, do objeto 3D, em que a determinação inclui aplicar os parâmetros de transformação às coordenadas dos voxels da representação de voxel ou o conjunto de dados 3D usado para determinar a representação de voxel.
[045] Ainda em outro aspecto, a invenção pode se referir a um sistema de computador adaptado para sobreposição automatizada de um primeiro objeto 3D, como uma primeira estrutura dental 3D, representada por um primeiro conjunto de dados 3D e um segundo objeto 3D, uma segunda estrutura dental 3D, representada por um segundo conjunto de dados 3D, que compreende: um meio de armazenamento legível por computador que tem código de programa legível por computador incorporado ao mesmo, em que o código de programa inclui pelo menos uma rede neural profunda 3D treinada, e pelo menos um processador, preferencialmente um microprocessador, acoplado ao meio de armazenamento legível por computador, em que, em resposta à execução do código de programa legível por computador, o pelo menos um processador é configurado para realizar operações executáveis que compreendem: fornecer um ou mais primeiros blocos de voxels de uma primeira representação de voxel do primeiro objeto 3D associado a um primeiro sistema de coordenada e um ou mais segundos blocos de voxels de uma segunda representação de voxel do segundo objeto 3D associado a um segundo sistema de coordenada à entrada de uma rede neural profunda 3D; em que a rede neural profunda 3D é treinada para gerar informações de pose canônica associadas a um sistema de coordenada canônica definido em relação a uma posição de parte do objeto 3D; receber primeiras e segundas informações de pose canônica da saída da rede neural profunda 3D, em que as primeiras informações de pose canônica compreendem para cada voxel do um ou mais primeiros blocos a predição de uma primeira posição do voxel no sistema de coordenada canônica; e as segundas informações de pose canônica que compreendem, para cada voxel do um ou mais segundos blocos, uma predição de uma segunda posição do voxel no sistema de coordenada canônica, em que a primeira e segunda posição são definidas pela primeira e segunda coordenadas canônicas, respectivamente; usar as primeiras informações de pose canônica para determinar uma primeira orientação dos eixos geométricos e a primeira posição da origem dos eixos geométricos no primeiro sistema de coordenada e com o uso das segundas informações de pose canônica para determinar uma segunda orientação e uma segunda posição da origem dos eixos geométricos do sistema de coordenada canônica no segundo sistema de coordenada; com o uso da primeira orientação e da primeira posição para determinar os primeiros parâmetros de transformação, preferencialmente primeiros parâmetros de rotação, translação e/ou dimensionamento, para transformar coordenadas do primeiro sistema de coordenada em coordenadas do sistema de coordenada canônica; e usar a segunda orientação e a segunda posição para determinar segundos parâmetros de transformação, preferencialmente segundos parâmetros de rotação, translação e/ou dimensionamento, para transformar coordenadas do segundo sistema de coordenada em coordenadas canônicas; e determinar uma sobreposição do primeiro objeto 3D e do segundo objeto 3D, em que a determinação inclui usar o primeiro e segundo parâmetros de transformação para formar primeira e segunda representações canônicas do primeiro e segundo objetos 3D, respectivamente.
[046] Em uma modalidade, pelo menos uma dentre a primeira e segunda representações de voxel pode compreender dados de (CB)CT, em que valores de voxel representam radiodensidades.
[047] Em uma modalidade, pelo menos uma dentre a primeira e segunda representações de voxel pode compreender dados de superfície voxelizados ou dados de volume obtidos a partir de uma superfície, preferencialmente dados de varredura de superfície a laser ou luz estruturada, mais preferencialmente dados de varredura intraoral (IOS).
[048] Em um aspecto adicional, a invenção também pode se referir a um produto de programa de computador que compreende porções de código de software configuradas para, quando executadas na memória de um computador, executar as etapas de método de acordo com qualquer uma das etapas de processo descritas acima.
[049] A invenção será adicionalmente ilustrada com referência aos desenhos anexos, os quais mostrarão esquematicamente modalidades de acordo com a invenção. Será entendido que a invenção não é restrita de qualquer modo a essas modalidades específicas.
BREVE DESCRIÇÃO DOS DESENHOS
[050] A Figura 1 representa uma vista geral esquemática de um sistema de computador para sobreposição de dados de imagem 3D dentomaxilofacial com o uso de aprendizado profundo, de acordo com uma modalidade da invenção; A Figura 2 representa um esquema de um sistema para determinar uma pose canônica de uma estrutura dental 3D, de acordo com uma modalidade da invenção; As Figuras 3A a 3D representam esquemas que ilustram um método para determinar uma pose canônica de uma estrutura dental 3D, de acordo com uma modalidade da invenção; As Figuras 4A a 4C ilustram dados de treinamento e predição empregados por componentes de sistema, de acordo com uma modalidade da invenção; A Figura 5 representa um exemplo de uma arquitetura de rede neural profunda 3D para gerar coordenadas canônicas, de acordo com uma modalidade da invenção; A Figura 6 representa uma vista esquemática de um componente de sistema para segmentação de dados de imagem 3D dentomaxilofacial, de acordo com uma modalidade da invenção; As Figuras 7A e 7B representam exemplos de uma arquitetura de rede neural profunda 3D para segmentação de dados de imagem 3D dentomaxilofacial, de acordo com uma modalidade da invenção; A Figura 8 representa uma vista esquemática de um componente de sistema para taxonomia de dados de imagem 3D dentomaxilofacial, de acordo com uma modalidade da invenção; A Figura 9 representa um exemplo de uma arquitetura de rede neural profunda 3D para taxonomia de dados de imagem 3D dentomaxilofacial, de acordo com uma modalidade da invenção; As Figuras 10A e 10B ilustram exemplos de pontos-chave gerados; A Figura 11 representa uma vista geral esquemática de um componente de sistema para determinação direta de parâmetros de transformação para sobreposição de representações de voxel, de acordo com uma modalidade da invenção; As Figuras 12A e 12B representam dados recebidos e transformados conforme empregado em e resultante de um componente de sistema para geração direta de parâmetros de transformação, de acordo com uma modalidade da invenção; A Figura 13 representa um exemplo de uma arquitetura de rede neural profunda 3D para um componente de sistema para dedução direta de parâmetros de transformação, de acordo com uma modalidade da invenção; A Figura 14 representa um fluxograma da lógica de sistema para seleção/determinação dos parâmetros de transformação a serem aplicados, de acordo com uma modalidade da invenção; As Figuras 15A e 15B representam resultados de transformação em dois conjuntos de dados de imagem dentomaxilofacial 3D exemplificativos que seguem a partir de métodos individuais de acordo com várias modalidades da invenção; e A Figura 16 é um diagrama de blocos que ilustra um sistema de processamento de dados exemplificativo que pode ser usado para executar métodos e produtos de software descritos nesta revelação.
DESCRIÇÃO DETALHADA
[051] Nessa revelação, as modalidades são descritas de sistemas de computador e métodos implantados por computador que usam redes neurais profundas 3D para sobreposição completamente automatizada, temporizada, precisa e robusta de diferentes conjuntos de dados 3D que representam objeto 3D, como estruturas dentomaxilofaciais 3D originárias de complexos dentomaxilofaciais. Os métodos e sistemas possibilitam a sobreposição de pelo menos dois conjuntos de dados 3D com o uso de uma rede neural profunda 3D que é treinada para determinar uma pose canônica para cada um dos dois conjuntos de dados 3D. A saída da rede neural treinada é usada para determinar parâmetros de transformação que são usados para determinar conjuntos de dados 3D canônicos sobrepostos, em que um conjunto de dados 3D canônicos representa uma representação canônica de objeto 3D, coo uma estrutura dentomaxilofacial. As redes de aprendizado profundo 3D adicionais e/ou esquemas de sobreposição podem ser usados para melhorar adicionalmente a precisão da sobreposição. Os sistemas e métodos serão descritos abaixo no presente documento, em mais detalhes.
[052] A Figura 1 representa um esquema de alto nível de um sistema de computador para sobreposição automatizada de dados de imagem que representam um objeto 3D, nesse exemplo, um complexo dentomaxilofacial 3D, com o uso de aprendizado profundo, de acordo com uma modalidade da invenção. O sistema de computador 102 pode compreender pelo menos duas entradas para receber pelo menos dois conjuntos de dados 3D, por exemplo, um primeiro conjunto de dados 106 que compreende um primeiro objeto 3D, como uma primeira estrutura dental 3D, associada a um primeiro sistema de coordenada e um segundo conjunto de dados 108 que compreende um segundo objeto 3D, como uma segunda estrutura dental 3D, associada a um segundo sistema de coordenada. Os conjuntos de dados 3D podem representar uma primeira estrutura dental 3D e uma segunda estrutura dental 3D que se origina de um complexo dentomaxilofacial 3D 104, preferencialmente do mesmo paciente. O primeiro e segundo objetos 3D podem ter pelo menos uma parte em comum, por exemplo, uma parte dental comum no caso de uma estrutura dental 3D. Os conjuntos de dados 3D podem ser gerados por digitalizadores diferentes, por exemplo, digitalizadores de (CB)CT e/ou digitalizadores ópticos diferentes. Tais dispositivos de varredura podem incluir um digitalizador de CT de feixe cônico, digitalizador de CT de feixe em leque, digitalizador óptico, como digitalizador intraoral, etc.
[053] No caso de um digitalizador de CBCT, o conjunto de dados 3D pode incluir uma representação de voxel de dados de raios-X gerados por um digitalizador de CBCT. A representação de voxel pode ter um formato predeterminado, por exemplo, o formato DICOM ou um derivado do mesmo. A representação de voxel define um espaço de voxel 3D de um tamanho predeterminado, por exemplo, um espaço de voxel de 400×400×400 em que cada voxel é associado a um certo volume e a posição dos voxels no espaço de voxel pode ser definida com base em um sistema de coordenada predeterminado.
[054] Alternativamente, no caso de um digitalizador óptico, o conjunto de dados 3D pode compreender dados de malha de superfície, por exemplo, um conjunto de pontos ou vértices no espaço 3D conectado por bordas que definem um conjunto de faces, em que o conjunto de, por sua vez, define uma superfície no espaço 3D. O conjunto de dados 3D também pode compreender dados de nuvem de pontos que representam pontos em um espaço 3D definido por um sistema de coordenada 3D. Em uma modalidade, um conjunto de dados 3D que representa uma malha de superfície pode ser gerado com o uso de um digitalizador intraoral, em que o conjunto de dados 3D pode ter um formato predeterminado, por exemplo, o formato STL ou um derivado do mesmo. Também nesse caso, a representação de malha de superfície 3D define um espaço 3D de um tamanho predeterminado, em que a posição dos pontos e/ou vértices têm base em um sistema de coordenada predeterminado (que difere do sistema de coordenada usado para o outro conjunto de dados 3D).
[055] Em algumas modalidades, uma malha de superfície 3D de uma estrutura dental 3D pode ser segmentada em elementos dentais 3D segmentados individuais (isto é, separados), por exemplo, coroas dentais e superfícies que pertencem à gengiva. Segmentar as malhas de superfície 3D em malhas de superfície 3D individuais é uma técnica bem conhecida na arte, conforme descrito, por exemplo, por WU K et al, Tooth segmentation on dental meshes using morphologic skeleton. Comput Graph fevereiro de 2014, volume 38, 199 a 211.
[056] Os conjuntos de dados 3D podem ser gerados (aproximadamente) ao mesmo tempo ou em diferentes pontos no tempo (varreduras pré-operacionais e pós- operacionais com o uso dos sistemas de varredura iguais ou diferentes), em que a representação do complexo dentomaxilofacial 3D pode ser definida com base em um sistema de coordenada 3D conforme definido pelo software de processamento de imagem de modo que a orientação e/ou dimensão das estruturas dentomaxilofaciais 3D no complexo dentomaxilofacial 3D dos conjuntos 3D diferentes possam variar substancialmente. O complexo dentomaxilofacial 3D pode incluir estruturas dentomaxilofaciais 3D, em estruturas dentais 3D curtas, como mandíbula, dentes, gomas, etc.
[057] Grandes variâncias nos conjuntos de dados 3D (em termos de formatos/modalidades de dados, sistemas de coordenada, posição e orientação da estrutura 3D, qualidade dos dados de imagem, quantidades diferentes de sobreposição entre as estruturas presentes, etc.) que podem ser oferecidas à entrada do sistema de computador tornam o problema de sobreposição automatizada precisa das estruturas dentais 3D (isto é, sobreposição das estruturas dentais 3D sem qualquer intervenção humana) um exercício não trivial. Os sistemas de sobreposição conhecidos não têm capacidade de lidar com estas questões de maneira confiável e robusta.
[058] A fim de lidar com este problema, o sistema da Figura 1 pode incluir uma primeira rede neural profunda 3D treinada 112 que é configurada para receber uma representação de voxel de conjuntos de dados 3D diferentes que se originam de um complexo dentomaxilofacial 3D, preferencialmente de um paciente. A rede neural profunda 3D é treinada para determinar uma pose canônica em um sistema de coordenada canônica de uma estrutura dental 3D no complexo dentomaxilofacial 3D, em que o sistema de coordenada canônica define um sistema de coordenada em relação a uma posição em uma estrutura dentomaxilofacial comum, por exemplo, uma posição na arcada dentária. A rede neural profunda 3D pode ser configurada para determinar primeiros parâmetros de transformação 114 (em termos de translação, rotação e/ou dimensionamento) para uma representação de voxel de um conjunto de dados 3D conforme codificado na memória da rede neural profunda 3D. Os primeiros parâmetros de transformação são determinados com base nas informações de translação, orientação e/ou dimensionamento de recursos dentomaxilofaciais típicos, conforme codificado na rede neural profunda 3D e podem ser usados para transformar coordenadas com base no primeiro sistema de coordenada do primeiro conjunto de dados 3D e coordenadas do segundo sistema de coordenada com base no segundo conjunto de dados 3D para coordenadas com base em um sistema de coordenada canônica. O primeiro e segundo conjuntos de dados 3D obtidos desse modo representam primeira e segunda estruturas dentais 3D sobrepostas no sistema de coordenada canônica.
[059] No caso de o primeiro e/ou o segundo conjuntos de dados 3D serem dados de varredura óptica, esses dados podem ser pré-processados antes de serem oferecidos à entrada da primeira rede neural profunda 3D. Aqui, o pré-processamento pode incluir transformar os dados de varredura 3D, por exemplo, uma malha 3D, em uma representação de voxel de modo que possam ser processados pela rede neural profunda 3D. Por exemplo, uma malha de superfície 3D pode, por exemplo, voxelizada in em tal maneira que um espaço de voxel 3D que representa pelo menos o mesmo volume no mundo real, conforme compreendido nos dados de malha de superfície 3D. Por exemplo, tal de superfície 3D voxelizada pode ter uma representação de voxel binário que tem valores de voxel padrão de um primeiro valor (por exemplo, “0”) em que nenhuma superfície dos dados de malha coincide com o voxel representativo, e valores de voxel de um segundo valor (por exemplo, ”1”) em que os dados de malha coincidem. Quando uma malha de superfície 3D recebida define uma estrutura de superfície 3D “aberta”, a estrutura pode ser “fechada” com superfícies adicionais. A voxelização pode ser realizada conforme acima, em que voxels localizados em um volume envolvido também podem ter um segundo valor (por exemplo, “1”). Dessa maneira, uma representação de voxel de um volume é formada. A resolução (tamanho de um voxel) pode ser selecionada apropriadamente a fim de render resultados precisos ao longo do sistema, enquanto ainda aderem aos requisitos que consideram, por exemplo, memória disponível e processamento.
[060] Em uma modalidade, uma rede neural profunda 3D pode ser usada, a qual tem capacidade de determinar a pose canônica de dados de varredura óptica (uma nuvem de pontos 3D) diretamente com base nos dados de nuvem de ponto. Um exemplo de tal rede é a rede neural profunda com base em perceptron multicamadas (MLP). As arquiteturas de rede neural profunda de MPL incluem 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)) ou PointCNN (Li et al. “PointCNN: convolution on χ−transformed points”, arXiv:1801.07791v5 de 5 de novembro de 2018, a ser publicado em Neural Information Processing Systems (NIPS) 2018). Essas redes neurais profundas de MLP têm capacidade de processar diretamente os pontos de uma nuvem de ponto. Tais redes neurais podem ser treinadas para determinar as informações de pose canônica com base nos dados de varredura óptica conforme descrito neste pedido. Em efeito, isso levaria à capacidade de omitir tal etapa de voxelização como uma etapa de pré-processamento, levar ao processamento mais rápido e a capacidade de resultados de precisão mais altos dependendo da granularidade dos dados de nuvem de ponto.
[061] Uma etapa de pré-processamento adicional pode incluir dividir o primeiro e segundo conjuntos de dados 3D em blocos de um tamanho predeterminado. O tamanho de bloco pode depender do tamanho do espaço de entrada 3D da primeira rede neural profunda 3D e do espaço de memória da rede neural profunda 3D.
[062] Em uma modalidade, o computador pode determinar um primeiro e segundo conjuntos de dados canônicos sobrepostos determinando-se os primeiros parâmetros de transformação para o primeiro conjunto de dados 3D e primeiros parâmetros de transformação para o segundo conjunto de dados 3D e aplicando-se os parâmetros de transformação determinados desse modo ao primeiro e segundo conjuntos de dados 3D. A rede neural profunda 3D pode ser treinada para ser muito robusta contra variâncias grandes nos conjuntos de dados 3D devido ao fato de que a rede neural profunda 3D é treinada com base em um grande número de estruturas dentomaxilofaciais 3D típicas, em que as estruturas exibem uma variância espacial grande (translação, rotação e/ou dimensionamento). Problemas relacionados ao tamanho de memória (limitado) da rede neural profunda 3D podem ser resolvidos treinando-se a rede neural profunda com base nas subamostras (blocos) de representações de voxel. Para essa finalidade, uma representação de voxel é primeiro dividida em blocos de tamanhos predeterminados antes de ser oferecida à entrada da rede neural profunda 3D. Devido ao fato de que o sistema de coordenada canônica é definido em relação a um padrão conhecido (predeterminado) para estruturas dentomaxilofaciais, o primeiro e segundo conjuntos de dados 3D canônicos obtidos são alinhados, em que a precisão pode depender do tempo de treinamento, variância de amostra de treinamento, e/ou blocos disponíveis conjuntos de dados recebidos. Adicionalmente, conforme descrito abaixo em maiores detalhes, uma arquitetura de rede específica pode ser usada para codificar quantidades grandes de informações de imagem 3D considerando variância espacial.
[063] Em alguns casos, pode ser vantajoso refinar adicionalmente a precisão da sobreposição de conjuntos de dados 3D canônicos. Portanto, em algumas modalidades, um refino adicional da sobreposição pode ser obtido com o uso de representações de voxel canônicas (parcialmente em sobreposição) 118 do primeiro e segundo conjuntos de dados 3D e avaliar a sobreposição das representações de voxel canônicas com o uso de uma segunda rede de aprendizado profundo 3D adicional. Nessas modalidades, o computador pode determinar a sobreposição entre os volumes definida pelas estruturas dentais 3D representadas pelo primeiro e segundo conjuntos de dados canônicos sobrepostos. Aqui, a sobreposição pode ser definida como o volume no espaço definido pelo sistema de coordenada canônica que é comum às estruturas dentais 3D do primeiro e segundo conjuntos de dados. A sobreposição pode ser usada para selecionar um volume de interesse (VOI) na representação de voxel canônica do primeiro e segundo conjuntos de dados 3D. Dessa maneira, um primeiro VOI da representação de voxel canônica do primeiro conjunto de dados 3D e um segundo VOI da representação de voxel canônica do segundo conjunto de dados 3D podem ser selecionados para entrada na segunda rede neural profunda 3D 120, que é configurada para determinar segundos parâmetros de transformação 122. Essa rede neural profunda 3D pode ser denominada como uma rede neural profunda de transformação direta, visto que a rede neural gera parâmetros de transformação em resposta à provisão de uma representação de voxel canônica para a entrada da rede neural. Aplicar os segundos parâmetros de transformação a cada um dentre o primeiro e segundo conjuntos de dados 3D canônicos (conforme obtido com base nos primeiros parâmetros de transformação) pode melhorar adicionalmente a precisão da sobreposição 116.
[064] Alternativamente e/ou além disso, em algumas modalidades, um refinamento adicional da sobreposição pode ser obtido com o uso das representações de voxel canônicas do primeiro e segundo conjuntos de dados 3D e avaliando a sobreposição das representações de voxel canônicas com base em um algoritmo de sobreposição analítica. Em particular, nessa modalidade, as representações de voxel canônicas 124 do primeiro e segundo dados 3D podem ser determinadas. Também nesse caso, a sobreposição entre os volumes definidos pelas estruturas dentais 3D representadas pelo primeiro e segundo conjuntos de dados canônicos sobrepostos pode ser usada para determinar um ou mais primeiros VOIs da representação de voxel canônica do primeiro conjunto de dados 3D e um ou mais segundos VOIs da representação de voxel canônica do segundo conjunto de dados 3D, que pode ser fornecida para a entrada de uma terceira rede neural profunda 3D 126. Essa rede neural profunda é configurada para classificar voxels de um VOI de uma representação de voxel de uma estrutura dental 3D e formar representações de voxel de elementos dentais 3D segmentados diferentes, por exemplo, dente, osso mandibular, goma, etc. Adicionalmente, em algumas modalidades, uma etapa pós-
processamento pode ser aplicada, em que um modelo 3D segmentado de um elemento dental 3D segmentado é gerado com base em voxels classificados de uma estrutura dental 3D segmentada. Adicionalmente, em algumas modalidades, uma quarta rede neural profunda 3D adicional pode ser usada para identificar representações de voxel de elementos dentais 3D segmentados de acordo com um esquema de taxonomia conhecido, por exemplo, que identifica unicamente e consistentemente dentes individuais.
[065] Os processos de segmentação e taxonomia podem se beneficiar das informações derivadas da primeira rede neural profunda 3D. Em particular, a determinação e a aplicação de um primeiro conjunto inicial de parâmetros de transformação pela primeira rede neural profunda 3D pode resultar em uma representação de voxel canônica de um conjunto de dados 3D, que permite resultados de segmentação e/ou taxonomia mais precisos visto que a precisão das redes neurais profundas 3D usadas para segmentação e/ou taxonomia é relativamente sensível a grandes variâncias rotativas dos dados de entrada 3D.
[066] Adicionalmente, conforme explicado acima, a quantidade de sobreposição pode ser usada pela terceira rede neural profunda 3D para determinar em que volume do espaço definido pelo sistema de coordenada canônica, sobrepondo as estruturas (por exemplo, elementos dentais 3D) do primeiro e segundo conjuntos de dados 3D presentes que são idênticas. A identificação de volumes (VOIs) que compreendem estruturas sobrepostas no primeiro e segundo conjuntos de dados 3D podem ser usadas para determinar os chamados pontos-chave. Os pontos-chave são usados para marcar as mesmas estruturas (sobrepostas) nos dois conjuntos de dados diferentes. Então, um conjunto de pontos-chave identifica a posição 3D exata de múltiplos pontos no primeiro conjunto de dados 3D, que são ligados a um conjunto associado de pontos-chave no segundo conjunto de dados 3D. Um algoritmo de minimização de distância pode usar os pontos-chave para calcular os terceiros parâmetros de transformação apropriados 130 para sobreposição precisa do primeiro e segundo conjuntos de dados 3D.
[067] Em uma modalidade, o computador pode usar o primeiro e segundo conjuntos de dados 3D canônicos sobrepostos (conforme determinado com base nos primeiros parâmetros de transformação e, opcionalmente, o segundo e/ou terceiro parâmetros de transformação) para criar um conjunto de dados 3D fundido único 132 em um formato de dados predeterminado. A fusão de conjuntos de dados 3D é conhecida na técnica, com referência, por exemplo, ao artigo de JUNG W et al, Combining volumetric dental CT and optical scan data for teeth modeling, Comput Aided Des outubro de 2015, Volume 67 e 68, 24 a 37.
[068] A Figura 2 representa um esquema de um sistema para determinar uma pose canônica de uma estrutura dental 3D em um sistema de coordenada canônica, de acordo com uma modalidade da invenção. O sistema 200 compreende pelo menos uma rede neural profunda 3D 222 que tem uma entrada e uma saída. O sistema pode incluir um módulo de treinamento 201 para treinar a rede neural profunda 3D com base em um conjunto de treinamento 212. Adicionalmente, o sistema pode incluir um módulo de inferência 203 que é configurado para receber um conjunto de dados 3D que representa um objeto 3D em um certo sistema de coordenada e para determinar parâmetros de transformação para transformar coordenadas dos voxels do conjunto de dados 3D em coordenadas canônicas de um sistema de coordenada canônica conforme codificado na rede neural 3D durante o treinamento.
[069] A rede pode ser treinada com base em um conjunto de treinamento 212 incluindo amostras de imagem 3D e coordenadas canônicas associadas para as amostras de imagem 3D. Os dados de treinamento podem compreender conjuntos de dados 3D (por exemplo, valores de intensidade de voxel, por exemplo, radiodensidades no caso de dados de (CB)CT, ou valores binários, por exemplo, no caso de dados de varredura de superfície voxelizada). Os dados de coordenada canônicos, que podem ser representados como um vetor (x,y,z) por voxel de entrada, pode ser usado como dados-alvo.
[070] Um sistema de coordenada canônica pode ser selecionado, que é adequado para uma classe de objetos 3D, por exemplo, estruturas dentais 3D. Em uma modalidade, no caso de uma estrutura dental 3D, um sistema de coordenada canônica pode ser determinado como tendo uma origem (0,0,0) em um ponto consistente (inter- e intrapaciente). A partir daqui, quando em referência a “coordenadas do mundo real”, isso é considerado como tendo direções de eixos geométricos em relação à perspectiva do paciente, com um paciente em pé, com “mais baixo para mais alto” significando a perspectiva do paciente de “cima para baixo”, “frontal e traseira” significando “frontal e traseira” da perspectiva do paciente, e “esquerda para direita” significando a perspectiva do paciente da “esquerda para direita”. “Mundo real” é destinado a se referir à situação a partir da qual as informações, como conjuntos de dados 3D, são derivadas. Tal ponto consistente pode, por exemplo, ser o ponto mais baixo (em coordenadas do mundo real) - em que ambos os dentes posicionados mais à frente (índice de sistema FDI 11 e 21) ainda estão em contato, ou estariam em contato (se, por exemplo, qualquer um desses dentes estiver ausente). Considerando as direções dos eixos geométricos, as direções do mundo real (vistas como paciente) de baixo para cima, esquerda para direita e frontal e traseira podem ser respectivamente definidas e codificadas como valores x, y e z na faixa de um valor mais baixo para um valor mais alto. A fim de dimensionar para dimensões do mundo real, vários métodos podem ser empregados enquanto isso for feito consistentemente através de todos os dados de treinamento, visto que o mesmo dimensionamento será a saída da rede de aprendizado profundo 3D. Por exemplo, um valor de 1 unidade de coordenada por translação do mundo real de 1 mm pode ser empregado.
[071] A fim de alcançar uma rede neural profunda 3D que é robusta contra variâncias em dados e ou modalidades de dados, uma grande variedade de amostras de treinamento 212 pode ser gerada com base em um conjunto de treinamento inicial 202 que inclui os conjuntos de dados 3D, por exemplo, representações de voxel de estruturas dentais 3D e dados de coordenada canônica associados. Para essa finalidade, o módulo de treinamento pode incluir um ou mais módulos para pré- processar os dados de treinamento. Em uma modalidade, a fim de aderir aos requisitos de processamento e memória de rede neural profunda 3D 222, um módulo de redução 204 pode ser usado para reduzir um conjunto de dados 3D para um conjunto de dados 3D reduzido e coordenadas canônicas associadas de uma resolução predeterminada. Tal operação de redução resulta em um conjunto de dados de imagem 3D menor, por exemplo, reduzir a resolução de voxel em cada direção para 1 mm. Em outra modalidade, um módulo de transformação 206 pode ser usado para gerar variações diferentes de um conjunto de dados 3D aplicando-se rotações aleatórias aos dados 3D (reduzidos) e coordenadas canônicas associadas. Deve ser observado que isso pode ser feito para qualquer paciente disponível, fornecendo de modo eficaz um agrupamento de dados do qual se extraem amostras de treinamento potenciais que têm uma grande variedade de conjuntos de dados de paciente e uma grande variedade de rotações por conjunto de dados.
[072] Em uma modalidade adicional, o módulo de treinamento pode incluir um módulo de divisão 208 para dividir os conjuntos de dados 3D (reduzidos) e coordenadas canônicas associadas em blocos (amostras de imagem 3D), em que cada bloco tem um tamanho predeterminado e é um subconjunto do volume total do conjunto de dados 3D. Por exemplo, um conjunto de dados 3D fornecido à entrada do módulo de treinamento pode incluir um volume de 400×400×400 voxels, em que cada voxel tem uma dimensão de 0,2 mm em cada direção ortogonal. Esse conjunto de dados 3D pode ser reduzido a um conjunto de dados 3D reduzido que tem um volume de, por exemplo, 80×80×80 voxels de 1 mm em cada direção. Então, o módulo de divisão pode dividir o conjunto de dados 3D reduzido em blocos de dados 3D de um tamanho predeterminado (por exemplo, 24×24×24 de 1 mm em cada direção). Estes blocos podem ser usados para treinar a rede neural profunda 3D com o uso das coordenadas canônicas como alvo. Em uma modalidade, o módulo de divisão pode incluir um seletor aleatório para selecionar aleatoriamente blocos que formam o conjunto de treinamento 212 para a rede neural profunda 3D 222.
[073] Deve ser observado que tal rede de aprendizado profundo 3D treinará inerentemente tanto nas rotações (de 206) quanto nas translações (de seleções aleatórias 208) variáveis. Opcionalmente, em outra modalidade, as amostras podem ser apresentadas em uma grande variedade de escalas, conforme pode ser gerado de 204.
[074] Com uma rede de aprendizado profundo 3D apropriadamente treinada 222, novos dados de imagem 3D 214 (que têm uma posição e orientação arbitrárias) podem ser apresentados como entrada ao sistema e pré-processadas apropriadamente análogas aos dados de imagem 3D de treinamento, que empregam mais especificamente o dimensionamento predeterminado 216, dividindo o conjunto de dados reduzido em blocos de imagem de um tamanho predeterminado 218, e apresentando os blocos de imagem 3D 220 conforme necessário pela rede neural profunda 3D. Apresentando-se blocos de imagem que cobrem o espaço inteiro dos dados de imagem 3D recebidos pelo menos uma vez, as coordenadas canônicas podem ser preditas pela rede neural profunda 3D para cada voxel (subamostragem) no conjunto de dados de imagem 3D.
[075] Tais dados de predição podem ser processados adicionalmente 224 a fim de gerar um conjunto geral de parâmetros de transformação, que definem como os dados recebidos podem ser transformados para serem alinhados o mais próximo possível de sua pose canônica. Esse processamento será descrito e ilustrado abaixo no presente documento em mais detalhes. Deve ser observado que, com amostras de treinamento suficientes de um espaço 3D do mundo real relativamente grande, uma pose canônica pode ser determinada para dados recebidos de um volume menor (visto que é representativamente compreendido nos dados de treinamento). Deve ser observado de modo eficaz que a resolução dos dados de entrada pode estar em torno de 1,25 mm. Predições pela rede neural profunda 3D 222 podem ser rendidas em valores de ponto de flutuação.
[076] As Figuras 3A a 3D representam esquemas que ilustram um método para determinar uma pose canônica de um objeto 3D, como uma estrutura dental 3D de acordo com uma modalidade da invenção. A Figura 3A representa esquematicamente uma representação de voxel 300 de um objeto 3D, por exemplo, um objeto dental,
como um dente.
Um voxel pode ser associado a um valor de intensidade, por exemplo, uma radiodensidade obtida de uma varredura de (CB)CT.
Alternativamente, um voxel pode ser associado a um valor binário.
Nesse caso, uma representação de voxel pode ser uma representação de voxel binário de uma superfície voxelizada ou um volume derivado de superfície voxelizado obtido de uma varredura de luz estruturada ou varredura de superfície a laser.
O objeto 3D pode ter recursos específicos que identificam uma parte de topo (por exemplo, uma coroa), uma parte de fundo (por exemplo, uma raiz), uma parte frontal, uma parte traseira e uma parte esquerda e direita.
A representação de voxel é associada a um primeiro sistema de coordenada (ortogonal) (x,y,z) 302, por exemplo, um sistema de coordenada que é usado pelo software de varredura para representar os dados submetidos à varredura em um espaço 3D.
Essas coordenadas podem ser, por exemplo, fornecidas como (meta)dados em um arquivo de imagem DICOM.
O objeto 3D pode ter uma certa orientação, posição e tamanho no espaço 3D definido pelo primeiro sistema de coordenada.
Observe que tal sistema de coordenada pode ainda não corresponder a um sistema conforme pode ser definido em relação ao objeto, ilustrado aqui por “esquerda”, “direita”, “frontal”, “traseira”, “fundo” e “topo”. Com o uso de uma rede neural profunda 3D treinada, o objeto 3D pode ser (espacialmente) “normalizado” (isto é, reorientado, reposicionado e dimensionado) 308 e definido com base em um sistema de coordenada canônica (ortogonal). No sistema de coordenada canônica (x’,y’,z’) 306, o objeto 3D normalizado 305 pode ter uma pose canônica, em que recursos específicos do objeto 3D podem ser alinhados com o eixo geométrico do sistema de coordenada canônica.
Então, o sistema pode receber uma representação de voxel de uma estrutura dental 3D que tem uma certa orientação, posição e tamanho em um espaço 3D definido por um sistema de coordenada definido pelo sistema de digitalização e determinar uma representação de voxel canônica do objeto 3D, em que o objeto 3D é definido em um sistema de coordenada canônica, em que o tamanho do objeto é dimensionado e em que recursos específicos da estrutura dental 3D são alinhados com eixos geométricos do sistema de coordenada canônica.
[077] A Figura 3B representa uma rede neural profunda 3D 318 que pode ser treinada para receber voxels de uma representação de voxel 310 de um objeto 3D, em que voxels podem ter uma certa posição definida por um sistema de coordenada 302 (x,y,z). A rede neural profunda 3D pode ser configurada para gerar as chamadas informações de pose canônica 303 associadas à representação de voxel. As informações de pose canônica podem compreender para cada voxel 304 (x,y,z) da representação de voxel, uma predição de uma coordenada (x’,y’,z’) em um espaço definido pelo sistema de coordenada canônica. O sistema de coordenada canônica pode ser definido em relação a uma posição, orientação e dimensão típicas de estruturas dentomaxilofaciais identificáveis de modo confiável, por exemplo, características da arcada dentária. As informações necessárias para derivar tal sistema de coordenada canônica podem ser codificadas na rede neural profunda 3D durante a fase de treinamento da rede. Dessa maneira, as informações de pose canônica podem ser usadas para colocar variedades e/ou modalidades diferentes de dados 3D que representam a mesma estrutura dentomaxilofacial na mesma posição, orientação, e dimensão relativas.
[078] Então, para cada voxel de entrada 304, três valores de saída correspondentes 314, 324, 334 são gerados pela rede neural profunda 3D, que compreende predições para os valores de, respectivamente, as coordenadas x’, y’ e z’ do voxel de entrada no sistema de coordenada canônica. Em uma modalidade, as informações de pose canônica podem incluir três mapas de voxel 3D 312, 322, 332, em que cada mapa de voxel 3D liga um voxel de uma representação de voxel na entrada da rede neural 3D a uma coordenada canônica.
[079] Antes de fornecer a representação de voxel à entrada da rede neural profunda 3D, a representação de voxel pode ser dividida em um conjunto de blocos de voxel (ilustrados aqui por 316, doravante resumido como “blocos”), em que as dimensões de um bloco de voxel correspondem às dimensões do espaço de entrada da rede neural profunda 3D. O tamanho de bloco pode depender das capacidades de armazenamento de dados da rede neural profunda 3D. Desse modo, a rede neural profunda 3D pode processar os voxels em cada um dos blocos da representação de voxel e produzir informações de pose canônica para voxels de cada bloco, isto é, predições de coordenadas (x’,y’,z’) de um sistema de coordenada canônica para cada voxel em um bloco. Em uma modalidade, a rede neural profunda 3D pode gerar três mapas de voxel 312, 322, 332, um primeiro mapa de voxel 312 que compreende para cada voxel em um bloco que é oferecido à entrada da rede neural profunda 3D, uma coordenada correspondente x’; um segundo mapa de voxel 322 que compreende para cada voxel em um bloco uma coordenada y’; e um terceiro mapa de voxel 332 que compreende para cada voxel em um bloco uma coordenada z’.
[080] A Figura 3C mostra esquematicamente uma representação de voxel de um objeto 3D 300 que é oferecido à entrada da rede neural profunda 3D e definido com base em um primeiro sistema de coordenada (x,y,z) 302, por exemplo, um sistema de coordenada usado pelo software de processamento de imagem do digitalizador que foi usado para produzir as imagens 3D. Essas coordenadas ou as informações para determinar essas coordenadas podem ser incluídas no arquivo de dados, por exemplo, um arquivo DICOM, como metadados. Com base nas informações de pose canônica geradas pela rede neural profunda 3D, uma predição da pose canônica do objeto 3D em um sistema de coordenada canônica pode ser gerada. Então, as informações de pose canônica 350 podem ligar uma posição (x,y,z) de cada voxel no primeiro sistema de coordenada a uma posição (x’,y’,z’) no sistema de coordenada canônica. Essas informações podem ser usadas para determinar uma transformação 360 que permite que o sistema transforme o objeto 3D definido no primeiro sistema de coordenada em sua pose canônica 362 definida no sistema de coordenada canônica.
[081] As informações de pose podem ser usadas para determinar uma orientação e um fator de dimensionamento associado ao eixo geométrico do sistema de coordenada canônica (os eixos geométricos canônicos). Aqui, a orientação pode ser uma orientação dos eixos geométricos canônicos no espaço definido pelo primeiro sistema de coordenada. As informações de pose também podem ser usadas para determinar a posição da origem do sistema de coordenada canônica.
[082] Uma orientação de um eixo geométrico canônico pode ser determinada com base em um gradiente (local) em um ou mais voxels em um mapa de voxel 3D conforme determinado pela rede neural profunda 3D. Por exemplo, para cada ou pelo menos vários voxels do primeiro mapa de voxel 3D associado ao componente x’ de uma coordenada canônica, um gradiente local pode ser determinado. O gradiente local pode ser representado como um vetor 3D no espaço x,y,z definido pelo primeiro sistema de coordenada. A direção do vetor representa uma predição da orientação do eixo geométrico x’ canônico na posição do voxel. Adicionalmente, o comprimento do vetor representa uma predição de um fator de dimensionamento associado ao eixo geométrico x’ canônico. Em uma modalidade, uma predição para a orientação e o fator de dimensionamento associado ao eixo geométrico x’ canônico podem ser determinados com base em valores x’ do primeiro mapa de voxel 3D. Por exemplo, uma medida estatisticamente representativa das predições para voxels do primeiro mapa de voxel 3D, por exemplo, o gradiente mediano ou médio, podem ser determinados. Em uma modalidade, os valores x’ do primeiro mapa de voxel 3D podem ser pré-processados, por exemplo, suavizados e/ou filtrados. Por exemplo, em uma modalidade, um filtro mediano pode ser usado para remover discrepâncias (locais). Da mesma maneira, uma predição de uma orientação e um fator de dimensionamento para o eixo geométrico y’ canônico podem ser determinados com base nos valores y’ no segundo mapa de voxel 3D e uma predição de uma orientação e um fator de dimensionamento para o eixo geométrico z’ canônico pode ser determinados com base nos valores z’ no terceiro mapa de voxel 3D. As orientações preditas dos eixos geométricos x’, y’, z’ canônicos podem ser pós-processadas para garantir que os eixos geométricos sejam ortogonais ou até mesmo ortonormais. Vários esquemas conhecidos, por exemplo, o processo de Gram-Schmidt, podem ser usados para alcançar isso. Os parâmetros de rotação e dimensionamento podem ser obtidos comparando-se o sistema de coordenada recebido 302 e o sistema de coordenada conforme derivado de predições.
[083] A posição da origem do sistema de coordenada canônica (em termos de um vetor de translação no espaço do primeiro sistema de coordenada) pode ser obtida determinando-se uma predição das coordenadas canônicas do centro de uma representação de voxel que é oferecida para a entrada da rede de aprendizado profundo 3D. Essas coordenadas podem ser determinadas com base em por exemplo o valor médio ou valor mediano de valores x’ preditos do primeiro mapa de voxel 3D, valores y’ do segundo mapa de voxel 3D e valores z’ do terceiro mapa de voxel 3D. Um vetor de translação pode ser determinado com base nas coordenadas canônicas preditas (xo’,yo’,zo’) do centro do bloco e as coordenadas do centro dos blocos com base no primeiro sistema de coordenada, por exemplo, com o uso de uma subtração simples. Alternativamente, a origem do sistema de coordenada canônica pode ser determinado por uma agregação de múltiplas predições de tais blocos, em que os mesmos processam de modo eficaz coordenadas canônicas conforme determinado para o espaço do mesmo tamanho da representação de voxel recebida. O processo descrito acima pode ser repetido para cada ou pelo menos uma grande parte dos blocos de um conjunto de dados 3D. As informações determinadas para cada bloco (orientação, dimensão e origem do sistema de coordenada canônica) podem ser usadas para obter valores médios que fornecem uma predição precisa.
[084] Então, os sistemas e métodos representados nas Figuras 2 e 3 fornecem uma maneira eficaz de determinar uma pose canônica de uma estrutura dental 3D. Conforme mostrado na Figura 3D, esses métodos incluem uma primeira etapa 380 de um processador de um computador que fornece uma representação de voxel de uma estrutura dental 3D associada a um primeiro sistema de coordenada para a entrada de uma rede neural profunda 3D, em que a rede neural é configurada para gerar informações de pose canônica associadas a um segundo sistema de coordenada canônica. Após isso, na etapa 382, o processador pode receber da saída da rede neural profunda 3D informações de pose canônica, em que para cada voxel da representação de voxel as informações de pose canônica compreendam uma predição de uma coordenada canônica do voxel. O processador pode executar subsequentemente uma etapa de processamento 384, em que as informações de pose canônica são usadas para determinar uma orientação (e, se aplicável, dimensionamento) dos eixos geométricos do sistema de coordenada canônica (por, por exemplo, determinação de um vetor que representa o gradiente local de uma posição de um voxel) e uma posição da origem do sistema de coordenada canônica (por, por exemplo, determinação de um vetor que representa os valores (x’,y’,z’) médios, então, a distância 3D média à origem canônica) e em que a orientação e a posição (e, se aplicável, dimensionamento) são subsequentemente usadas para determinar parâmetros de transformação para transformar coordenadas do primeiro sistema de coordenada 3D em coordenadas do segundo sistema de coordenada canônica. Após isso, na etapa 386, o processador determina uma pose canônica da estrutura dental 3D no espaço representado pelo segundo sistema de coordenada canônica aplicando-se os parâmetros de transformação ao conjunto de dados 3D recebido. No caso do conjunto de dados 3D ser uma representação de voxel, os parâmetros podem ser aplicados aos voxels. Alternativamente, no caso do conjunto de dados 3D ser uma representação de malha, os parâmetros podem ser aplicados às coordenadas de malha.
[085] Dessa maneira, uma representação canônica de um objeto 3D, como uma estrutura dental 3D, pode ser realizada. O método pode ser usado para transformar modalidades de dados 3D diferentes associadas a um objeto 3D na pose canônica do objeto 3D que pode ser usado no processo de sobreposição dos conjuntos de dados 3D diferentes. Alternativa e/ou adicionalmente, o método pode ser usado como uma etapa de pré-processamento antes de um conjunto de dados 3D ser oferecido a uma entrada 3D de uma ou mais redes neurais profundas 3D que são configuradas para segmentar o objeto 3D e (opcionalmente) para determinar uma taxonomia das partes segmentadas do objeto 3D. Tal etapa de pré-processamento aumenta substancialmente a precisão (e/ou reduz o tempo de treinamento ou requisitos de memória para uma mesma precisão para tais redes neurais profundas 3D) da segmentação e classificação dos objetos 3D visto que a precisão de tal rede neural treinada pode ser afetada se a pose do objeto 3D representado pelo conjunto de dados 3D que é inserida no sistema desvia muito (especialmente em relação à orientação) de uma pose normalizada.
[086] As Figuras 4A a 4C mostram ilustrações de alvos de treinamento e resultados conforme podem ser usados por um método conforme descrito com referência às Figuras 3A a 3D. A Figura 4A representa três cortes 4001–3 de um conjunto de dados 3D, nesse exemplo, uma varredura de CBCT de uma estrutura dental 3D e cortes associados dos mapas de voxel 3D para as coordenadas x’, y’ e z’ conforme podem ser usados para treinar uma rede neural profunda 3D. Esses mapas de voxel 3D compreendem as predições desejáveis da coordenada canônica x’ 4021, a coordenada canônica y’ 4022 e a coordenada canônica z’ 4023. Os valores de escala de cinza visualizam os gradientes de valores (codificados) para coordenadas de acordo com o sistema de coordenada canônica. As coordenadas (x, y, z) indicam a posição de um voxel da estrutura dental 3D com base em um sistema de coordenada associado à varredura de CBCT. Os eixos geométricos conforme visualizados incluindo suas direções são denotados como esquerda superior por figuração. Também é notável que os valores de escala de cinza dos gradientes exibidos foram apropriadamente dimensionados para ter o mesmo valor de escala de cinza para o mesmo valor por todas as Figuras 4A a 4C. Isso permite a comparação visual melhor do que está em translação de modo eficaz em direção ao sistema de coordenada canônica, conforme codificado (para treinamento) ou previsto. Finalmente, deve ser observado que todas as visualizações são representações 2D de um “corte” intermediário único (de modo eficaz, pixels de dados de imagem 2D), conforme cortado a partir do conjunto de dados 3D realmente empregado e dos mapas de voxel associados, conforme denotado pelo número de corte superior esquerdo visível por ilustração.
[087] Com o propósito de treinar o sistema, um conjunto de dados 3D que representa uma estrutura dental 3D pode ser atribuído com um sistema de coordenada canônica, conforme ilustrado pela Figura 4B. No caso dessas ilustrações,
para as ilustrações que mostram gradientes, o valor para preto é −40,0 mm e o valor para branco é +40 mm, que tem de modo eficaz o centro dessa varredura de paciente como origem (0,0,0). Esses dados (tanto os dados de imagem 3D quanto a representação do sistema canônico) já são reduzidos apropriadamente conforme seria resultante do processador 204. Esses dados podem ser, então, girados (por exemplo, empregando um método de interpolação linear ou outro método) rendendo dados 3D conforme mostrado nas ilustrações de 406. Dependendo do método exato de realizar essa rotação, o tamanho do espaço de imagem também pode ser expandido para incluir todos os voxels do conjunto de dados de imagem 3D recebido, o que não é o caso nestas ilustrações.
[088] A Figura 4B ilustra dados de treinamento 408 conforme pode ser resultante da seleção aleatória (conforme pode ser realizado pelo processador 208) de um bloco apropriadamente dimensionado 412, nesse caso, uma subamostra que tem dimensão de 24×24×24 voxels, da representação de voxel de entrada girada aleatoriamente
406. Deve ser observado que, quando visualizando todas as três direções codificadas do sistema de coordenada canônica na mesma vista y-z (o corte y-z intermediário do cubo 3D de voxels) conforme feito em 408, uma direção de gradiente pode ser vista, a qual codifica de modo eficaz (no caso dessa visualização 2D) a direção do componente 2D (no plano y-z) dos vetores direcionais 3D que codificam as direções dos eixos geométricos do sistema de coordenada canônica. De modo similar, o valor por voxel codifica de modo eficaz as coordenadas x’, y’ e z’ de voxel de acordo com o sistema de coordenada canônica. Deve ser observado que, durante o processamento de, por exemplo, um conjunto predito 3D dados inteiro, os vetores 3D para cada eixo geométrico podem ser determinados como seguindo o sistema de coordenada canônica. A seleção de subamostras para treinamento podem ser feitas de tal maneira que a amostra de tamanho menor selecionada inclua apenas voxels como se fossem parte do conjunto de dados de imagem 3D recebido (isto é, não incluindo os fragmentos “vazios” de voxels ao longo das bordas, conforme pode ser visto nas ilustrações, resultantes da rotação aplicada).
[089] A Figura 4C mostra uma nova entrada 416 após redimensionamento (conforme pode ser resultante do processador 216). Essa entrada, com o propósito dessa ilustração, foi arbitrariamente girada. Com o propósito das ilustrações 418 e 420, apenas as vistas x-y (cortes) foram visualizadas. O conjunto 418 mostra cortes das coordenadas canônicas preditas x’, y’ e z’. Conforme pode ser visto que os dados de imagem recebidos foram divididos em blocos (ou subamostras), a predição de coordenada foi realizada nos blocos e esses blocos de predição foram colocados de volta no espaço de conjunto de imagem 3D recebida total (que pode ser visto a partir da estrutura tipo quadrado vista nas imagens, indicando as dimensões dos blocos). Deve ser observado que isso ilustra de modo eficaz essas predições tanto para parâmetros de rotação, translação quanto, opcionalmente, dimensionamento para a transformação para o sistema de coordenada canônica poder ser realizada nos dados de imagem de 3D de tamanho 30×30×30 mm. A figura também ilustra que a rede treinada tem novamente fragmentos relativamente robustos de dados “vazios” como resultado da rotação empregada para essa visualização. (Isto é, dados “vazios” recebem um valor consistente de 0 no caso da rede treinada com o propósito dessas ilustrações)
[090] São ilustrados por 420 os valores de coordenada codificados, conforme seriam se 416 fosse dados de treinamento, ou os valores “alvo” desejáveis, conforme deve ser resultante da rede neural profunda 3D. Pode ser visto que os valores gerais (indicando distância por voxel para a origem) e as direções gerais dos gradientes são muito similares. No caso de dados do mundo real serem girados, os fragmentos “vazios” conforme visto na ilustração não estariam presentes. O sistema pode, dentro do processador 224, realizar, por exemplo, um filtro de estabilização 3D nos dados de coordenada predita 418, remoção de valores discrepantes e/ou outros métodos para suavizar os valores resultantes. Uma medida representativa, por exemplo, a média ou a mediana, dos valores de coordenada preditos, pode ser usada para determinar a posição do centro da representação de voxel 416 em relação ao sistema de coordenada canônica. Uma translação pode ser determinada com base na diferença entre a posição do centro da representação de voxel 416 em relação ao sistema de coordenada recebido e em relação ao sistema de coordenada canônica.
[091] Um algoritmo de derivação de gradiente 3D, que é relativamente não dispendioso de modo computacional, pode render três cubos adicionais de valores por “cubo de eixo geométrico de valores”, render de modo eficaz por “cubo de eixo geométrico” os três componentes do vetor que descrevem a direção do eixo geométrico. Isso pode resultar em um vetor 3D direcional para todas as direções de eixos geométricos x, y e z, por voxel. Uma medida representativa, por exemplo, a média ou mediana, pode ser determinada para esses vetores para os eixos geométricos de coordenada desejáveis. Se aplicável, esses vetores por eixo geométrico podem ser convertidos em seu equivalente de vetor unitário. Adicionalmente, o sistema pode garantir que esses três vetores são convertidos em seu conjunto perfeitamente ortonomal mais próximo de três, minimizando a soma da distância angular entre o primeiro conjunto de vetores por eixo geométrico predito e o conjunto ortogonal resultante.
[092] Dessas três direções preditas (de modo eficaz) dos eixos geométricos canônicos, os parâmetros de transformação apropriados que consideram as rotações do conjunto de dados de imagem 3D recebido em direção à orientação canônica, como parte da pose canônica, podem ser calculados. Subsequentemente, o sistema pode determinar qual seria a distância média para a origem canônica, por eixo geométrico, para o conjunto de dados de imagem 3D recebido. A partir disso, os parâmetros de transformação para translação do conjunto de dados de imagem 3D recebidos podem ser calculados, determinando de modo eficaz onde a origem canônica deve estar no (ou em relação a) conjunto de dados de imagem 3D recebido, ou, de modo contrário, onde a posição canônica deve estar no sistema de coordenada.
[093] Em outra modalidade, a rede neural profunda 3D pode ser treinada em escalas variáveis e a magnitude do gradiente dos valores de predição resultantes pode ser empregada para determinar a dimensão do conjunto de dados de imagem 3D recebido. Isso pode ser usado para calcular parâmetros de transformação em direção a um dimensionamento desejável dos dados recebidos.
[094] A Figura 5 representa um exemplo de uma arquitetura de rede neural profunda 3D para determinação de coordenadas canônicas, de acordo com uma modalidade da invenção. A rede neural profunda 3D pode ter uma arquitetura similar a uma U-net 3D, que é, de modo eficaz, uma implantação 3D da U-net 2D conforme conhecida na técnica.
[095] A rede pode ser implantada com o uso de uma variedade de camadas 3D de rede neural, como camadas convolucionais (dilatadas) (CNNs 3D), camadas de agrupamento máximo 3D, camadas deconvolucionais 3D (de-CNNs 3D), e camadas densamente conectadas. As camadas podem usar uma variedade de funções de ativação, como linear, tanh, ReLU, PreLU, sigmoide, etc. As camadas de CNN e de- CNN 3D podem variar em sua quantidade de filtros, tamanhos de filtro e parâmetros de subamostragem. As camadas de CNN e de-CNN 3D, assim como as camadas densamente conectadas, podem variar em seus métodos de inicialização de parâmetro. As camadas de dropout e/ou normalização de lote podem ser empregadas ao longo da arquitetura.
[096] Seguindo uma arquitetura de U-net 3D, durante o treinamento, os vários filtros nas camadas de CNN e de-CNN 3D aprendem a codificar recursos significativos, visto que auxiliariam no esforço de precisão de predição. Durante o treinamento, os conjuntos correspondentes de dados de imagem 3D 502 e coordenadas canônicas correspondentes codificadas 540 são usados para otimizar em relação à predição do último mencionado para o anterior. Uma função de perda pode ser empregada como uma medida a ser minimizada. Esse esforço de otimização pode ser auxiliado fazendo uso de otimizadores, como SGD, Adam, etc.
[097] Tal arquitetura pode empregar várias dimensões de resolução, reduzindo de modo eficaz 506, 510, 514 como resultados de um conjunto anterior camadas de CNN 3D 504, 508, 512 através de agrupamento máximo ou camadas convolucionais (dilatadas e/ou subamostragem). O termo “recursos significativos” se refere a derivações (sucessivas) de informações relevantes à determinação dos valores de saída alvo os quais também são, entretanto, codificados através das camadas de de- CNN 3D, que realizam de modo eficaz um aumento enquanto empregam filtros. Combinando-se os dados 520, 526, 532 resultantes de tais camadas de de-CNN 3D 518, 524, 534 com os dados das “últimas” camadas de CNN 3D que operam na mesma resolução (512 a 520, 508 a 526 e 504 a 532), predições altamente precisas podem ser alcançadas. Ao longo do trajeto de aumento, camadas de CNN 3D adicionais podem ser usadas 522, 528, 534. A lógica adicional pode ser codificada nos parâmetros da rede fazendo uso de camadas densamente conectadas que destilam, por exemplo, a lógica por voxel com base nos resultados dos filtros da camada de CNN 3D incidente 534.
[098] Quando utilizada para inferência, que tem sido treinada para ter parâmetros internos codificados de tal maneira que a validação renda resultados suficientemente precisos, uma amostra de entrada pode ser apresentada e a rede de aprendizado profundo 3D pode render coordenadas canônicas preditas por voxel 542.
[099] A Figura 6 representa uma vista esquemática de um componente de sistema para segmentação de dados de imagem 3D dentomaxilofacial, de acordo com uma modalidade da invenção. Métodos e sistemas para segmentação automática com base em aprendizado profundo são descritos no pedido de patente europeu nº
17179185.8 com o título Classification and 3D modelling of 3D dento-maxillofacial structures using deep learning methods, que é incorporado aqui, a título de referência, a este pedido.
[0100] Em particular, o sistema de computador 602 pode ser configurado para receber uma pilha de dados de imagem 3D 604 de uma estrutura dentomaxilofacial. A estrutura pode incluir, por exemplo, estruturas de mandíbula, dentes e nervo. Os dados de imagem 3D podem compreender voxels, isto é, elementos de espaço 3D associados a um valor de voxel, por exemplo, um valor de escala de cinza ou um valor de cor, que representa uma intensidade de radiação ou valor de densidade. Preferencialmente, a pilha de dados de imagem 3D pode incluir dados de imagem CBCT de acordo com um formato predeterminado, por exemplo, o formato DICOM ou um derivado do mesmo.
[0101] Particularmente, em varreduras de CBCT, a radiodensidade (medida em unidades Hounsfield (HU)), é imprecisa devido ao fato de que diferentes áreas na varredura aparecem com diferentes valores de escala de cinza dependendo de suas posições relativas no órgão sendo submetido à varredura. HU medidas da mesma área anatômica com ambos os digitalizadores de CBCT e CT de grau médico não são idênticas e são, desse modo, não confiáveis para determinação de densidade óssea identificada de modo radiográfico sítio-específico.
[0102] Além disso, os sistemas de CBCT dentais não empregam um sistema padronizado para dimensionar os níveis cinzas que representam os valores de densidade reconstruída. Esses valores são, como tais, arbitrários e não permitem a avaliação de qualidade óssea. Na ausência de tal padronização, é difícil interpretar os níveis de cinza ou impossível comparar os valores resultantes de máquinas diferentes.
[0103] A estrutura óssea mandibular e dentes têm densidade similar, de modo que seja difícil para um computador distinguir entre voxels que pertencem aos dentes e voxel que pertence a uma mandíbula. Adicionalmente, os sistemas de CBCT são muito sensíveis pelo chamado endurecimento de feixe que pode produzir manchas escuras entre dois objetos de alta atenuação (como metal ou osso), com manchas claras circundantes.
[0104] Devido a razões mencionadas acima, e conforme será descrito abaixo no presente documento em mais detalhes, é particularmente benéfico que o sistema de sobreposição faça uso do componente de sistema conforme descrito aqui com referência à Figura 6.
[0105] O componente de sistema pode compreender uma pré-processador de segmentação 606 para pré-processar os dados de imagem 3D antes dos mesmos serem fornecidos à entrada de uma primeira rede neural profunda 3D 612, que é treinada para produzir um conjunto 3D de voxels classificados como uma saída 614. Tal pré-processamento pode compreender, por exemplo, normalizar valores de voxel a uma faixa que é mais benéfica para uma rede neural. Conforme será descrito abaixo no presente documento em mais detalhes, a rede neural profunda 3D pode ser treinada de acordo com um esquema de treinamento predeterminado, de modo que a rede neural treinada tenha capacidade para classificar precisamente voxels na pilha de dados de imagem 3D em voxels de diferentes classes (por exemplo, voxels associados ao dente, osso mandibular e/ou tecido nervoso). A rede neural profunda 3D pode compreender uma pluralidade de camadas de rede neural convolucionais 3D conectadas (CNN 3D).
[0106] O sistema de computador pode compreender adicionalmente um pós- processador de segmentação 616 para reconstruir precisamente os modelos 3D de partes diferentes da estrutura dentomaxilofacial (por exemplo, dente, mandíbula e nervo) com o uso dos voxels classificados pela rede neural profunda 3D. Os voxels classificados 614 podem compreender conjuntos de voxels que representam, por exemplo, todos aqueles classificados como pertencendo a uma estrutura de dente, mandíbula ou nervo. Pode ser benéfico criar dados 3D desses tipos de estruturas de tal maneira que dentes e/ou mandíbulas individuais (por exemplo, superior, inferior) sejam representados por modelos 3D separados. Isso pode ser alcançado por reconstrução de volume 620. Para o caso de separar conjuntos de voxels que pertencem a dentes individuais, isso pode ser alcançado por (combinações de) erosão binária 3D, criação de marcador 3D e segmentação por divisores de água 3D. Para a combinação de separação em partes de mandíbula inferior e superior, uma distância de origem ao longo do eixo geométrico de cima para baixo (sistema de coordenada do mundo real) pode ser encontrada, na qual a soma de voxels no plano perpendicular a essa direção está em um mínimo comparado com outros planos em interseção ao longo do mesmo eixo geométrico. A divisão entre partes de mandíbula superior e inferior pode ser feita empregando essa distância. Em outra modalidade, as mandíbulas podem ser automaticamente divididas pela rede profunda classificando- se os voxels correspondentes como classes de mandíbula separadas. Outras partes dos voxels classificados, por exemplo, voxels que foram classificados pela rede neural profunda 3D como pertencendo a nervos podem ser pós-processadas usando-se uma função de interpolação 618 e armazenados como dados de nervo 3D 622. Após a segmentação, pós-processamento dos dados 3D das várias partes da estrutura dentomaxilofacial, os dados de nervo, mandíbula e dente dados 622 a 626 podem ser combinados e formatados em modelos 3D separados 628 que representam precisamente as estruturas dentomaxilofaciais nos dados de imagem 3D que foram alimentadas à entrada do sistema de computador. Deve ser observado que ambos os voxels classificados 614, assim como modelos 3D 628, são definidos no mesmo sistema de coordenada como dados de entrada 604.
[0107] A fim de tornar a rede neural profunda 3D robusta contra a variabilidade presente em, por exemplo, dados de varredura de CBCT do presente, a rede neural profunda 3D pode ser treinada com o uso de um módulo 638 para fazer uso de modelos 3D de partes da estrutura dentomaxilofacial, conforme representado pelos dados de imagem 3D. Os dados de treinamento 3D 630 podem ser corretamente alinhados a uma imagem de CBCT apresentada em 604 para a qual a saída-alvo associada é conhecida (por exemplo, dados de imagem de CT 3D de uma estrutura dentomaxilofacial e uma representação segmentada 3D associada da estrutura dentomaxilofacial). Os dados de treinamento 3D convencionais podem ser obtidos segmentando-se manualmente os dados de entrada, que podem representar uma quantidade significativa de trabalho. Adicionalmente, a segmentação manual resulta em uma baixa reprodutibilidade e consistência de dados de entrada a serem usados.
[0108] A fim de contrapor esse problema, em uma modalidade, dados de treinamento opticamente produzidos 630, isto é, modelos 3D precisos de (partes de) estrutura dentomaxilofacial (ou estruturas dentomaxilofaciais) podem ser usados em vez de ou além de dados de treinamento manualmente segmentados. Estruturas dentomaxilofaciais que são usadas para produzir os dados de treinamento podem ser submetidas à varredura com o uso de um digitalizador óptico 3D. Tais digitalizadores 3D ópticos são conhecidos na técnica e podem ser usados para produzir dados de superfície de mandíbula e dente 3D de alta qualidade. Os dados de superfície 3D podem incluir malhas de superfície 3D 632 que podem ser carregados (determinando quais voxels específicos são parte do volume abrangido pela malha) e usados por um classificador de voxel 634. Dessa maneira, o classificador de voxel pode gerar voxels classificados altamente precisos 636 para treinamento. Adicionalmente, conforme mencionado acima, os voxels de treinamento manualmente classificados podem ser usados pelo módulo de treinamento para também treinar a rede. O módulo de treinamento pode usar os voxels de treinamento classificados como um alvo e dados de treinamento de CT associados como uma entrada.
[0109] As Figuras 7A e 7B representam exemplos de arquiteturas de rede neural profunda 3D para segmentação de dados de imagem 3D dentomaxilofacial, de acordo com várias modalidades da invenção. Conforme mostrado na Figura 7A, a rede pode ser implantada com o uso de redes neurais convolucionais 3D (CNNs 3D). As camadas convolucionais podem empregar uma função de ativação associada aos neurônios nas camadas, como uma função sigmoide, função tanh, função relu, função softmax, etc. Uma pluralidade de camadas convolucionais 3D pode ser usada, em que variações menores no número de camadas e seus parâmetros de definição, por exemplo, diferentes funções de ativação, quantidades e tamanhos de grãos, e camadas funcionais adicionais, como camadas de dropout e/ou normalização de lote podem ser usados na implantação sem perder a essência do projeto da rede neural profunda 3D.
[0110] A rede pode incluir uma pluralidade de trajetos convolucionais, nesse exemplo, três trajetos convolucionais, um primeiro trajeto convolucional associado a um primeiro conjunto de camadas convolucionais 3D 704, um segundo trajeto convolucional associado a um segundo conjunto de camadas convolucionais 3D 706 e um terceiro conjunto de camadas convolucionais 3D 708. Um computador que executa o processamento de dados pode fornecer um conjunto de dados 3D 702, por exemplo, dados de imagem de CT, para as entradas dos trajetos convolucionais. O conjunto de dados 3D pode ser uma representação de voxel de uma estrutura dental 3D.
[0111] A função dos trajetos diferentes é ilustrada em mais detalhes na Figura 7B.
Conforme mostrado nesta figura, os voxels da representação de voxel podem ser fornecidos para a entrada da rede neural profunda 3D. Os voxels da representação de voxel podem definir um volume predeterminado, que pode ser denominado como o volume de imagem 7014. O computador pode dividir o volume de imagem nos primeiros blocos de voxels e fornecer um primeiro bloco para a entrada do primeiro trajeto. As camadas convolucionais 3D do primeiro trajeto 7031 podem realizar uma operação de convolução 3D no primeiro bloco de voxels 7011. Durante o processamento, a saída de uma camada de convolução 3D do primeiro trajeto é a entrada de uma camada de convolução 3D subsequente no primeiro trajeto. Dessa maneira, cada camada convolucional 3D pode gerar um mapa de recurso 3D que representa partes do primeiro bloco de pixels que é fornecido à entrada do primeiro trajeto. Uma camada convolucional 3D que é configurada para gerar tais mapas de recurso pode ser, portanto, denominada como uma camada de recurso de CNN 3D.
[0112] Conforme mostrado na Figura 7B, as camadas convolucionais do segundo trajeto 7032 podem ser configuradas para processar segundos blocos de voxels 7012 da representação de voxel, em que um segundo bloco de voxels representa uma versão subamostrada de um primeiro bloco de voxels associado e em que o primeiro e segundo blocos de voxels têm a mesma origem centralizada. O volume representado do segundo bloco é maior do que o volume do primeiro bloco. Ademais, o segundo bloco de voxels representa uma versão subamostrada de um primeiro bloco de voxels associado. O fator de subamostragem pode ser qualquer valor apropriado. Em uma modalidade, o fator de subamostragem pode ser selecionado entre 20 e 2, preferencialmente entre 5 e 3.
[0113] O primeiro trajeto 7031 pode definir um primeiro conjunto de camadas de recurso de CNN 3D (por exemplo, 5 a 20 camadas) que são configuradas para processar dados de entrada (por exemplo, primeiros blocos de voxels em posições predeterminadas no volume de imagem) na resolução de voxel do alvo (isto é, voxels do volume de imagem que são classificados). O segundo trajeto pode definir um segundo conjunto de camadas de recurso de CNN 3D (5 a 20 camadas) que são configuradas para processar segundos blocos de voxels, em que cada bloco dos segundos blocos de voxels 7012 tem o mesmo ponto central como seu bloco associado do primeiro bloco de voxels 7011. Ademais, os voxels dos segundos blocos são processados em uma resolução que é mais baixa do que a resolução de 7011. Então, os segundos blocos de voxels representam um volume maior em dimensões do mundo real do que os primeiros blocos. Dessa maneira, as segundas camadas de recurso de CNN 3D processam voxels a fim de gerar mapas de recurso 3D que incluem informações sobre a adjacência direta de voxels associados que são processados pelas primeiras camadas de recurso de CNN 3D. Dessa maneira, o segundo trajeto possibilita que a rede neural profunda 3D determine informações contextuais, isto é, informações sobre o contexto (por exemplo, suas adjacências) de voxels dos dados de imagem 3D que são apresentadas à entrada da rede neural profunda 3D.
[0114] De maneira similar, um terceiro trajeto 7033 pode ser utilizado, para determinar informações contextuais adicionais de primeiros blocos de voxels 7013. Então, o terceiro trajeto pode compreender um terceiro conjunto de camadas de recurso de CNN 3D (5 a 20 camadas) que são configuradas para processar terceiros blocos de voxels, em que cada bloco dos terceiros blocos de voxels 7013 tem o mesmo ponto central que seu bloco associado do primeiro bloco de voxels 7011 e o segundo bloco de voxels 7013. Ademais, os voxels dos terceiros blocos são processados em uma resolução que é mais baixa do que a resolução do primeiro e segundo blocos de voxels. Esse fator de subamostragem pode ser novamente definido em um valor apropriado. Em uma modalidade, o fator de subamostragem pode ser selecionado entre 20 e 3, preferencialmente entre 16 e 9.
[0115] Usando-se os três trajetos ou mais trajetos, tanto os dados de imagem 3D (os dados de entrada) quanto as informações contextuais sobre voxels dos dados de imagem 3D podem ser processados em paralelo. As informações contextuais são importantes para classificar estruturas dentomaxilofaciais, que incluem tipicamente estruturas dentais proximamente envolvidas que são difíceis de distinguir.
[0116] A saída dos conjuntos de camadas de recurso de CNN 3D é, então, unida e fornecida à entrada de um conjunto de camadas de CNN 3D completamente conectadas 410, que são treinadas para derivar a classificação pretendida de voxels 412 que são oferecidos na entrada da rede neural e processados pelas camadas de recurso de CNN 3D.
[0117] Os conjuntos de camadas de recurso de CNN 3D podem ser treinados (através de seus parâmetros que podem ser aprendidos) para derivar e passar as informações úteis de modo otimizado que podem ser determinadas de sua entrada específica, em que as camadas completamente conectadas codificam parâmetros que determinarão a maneira que as informações dos três trajetos anteriores devem ser combinadas para fornecer voxels classificados otimizados 712. Aqui, a saída (a última camada) das camadas completamente conectadas pode fornecer uma pluralidade de ativações para cada voxel. Tal ativação de voxel pode representar uma medida de probabilidade (uma predição) que define a probabilidade de que um voxel pertence a uma dentre uma pluralidade de classes, por exemplo, classes de estrutura dental, por exemplo, uma estrutura de dente, mandíbula e/ou nervo. Para cada voxel, as ativações de voxel associadas a estruturas dental diferentes pode ser submetido à limiarização a fim de obter um voxel classificado. Após isso, os voxels classificados que pertencem a classes de estrutura dental diferentes podem ser apresentados no espaço de imagem 714. Então, a saída da rede neural profunda 3D é de voxels classificados em um espaço de imagem que corresponde ao espaço de imagem dos voxels na entrada.
[0118] Deve ser observado que, enquanto uma segmentação de rede neural profunda 3D, conforme descrito em relação à Figura 6 e Figura 7, pode ser inerentemente invariante em relação à translação através do espaço de dados de imagem 3D, pode ser benéfico empregar informações do processador 114 para aplicar uma etapa de pré-alinhamento inicial 124 para ajustar pelo menos rotações (embora de modo relativamente bruto) para obter uma pose canônica. Com direções ortogonais do mundo real (por exemplo, paciente de cima para baixo, esquerda para direita e frontal para traseira) presentes nos dados de imagem 3D usados em uma direção canônica pré-definida (por exemplo, respectivamente, representação interna (conjunto de dados 3D) direção z de cima para baixo, direção x de esquerda para direita e direção y de frontal para traseira), a largura de banda de memória necessária para a segmentação de rede neural profunda 3D pode ser reduzida, o tempo de treinamento pode ser reduzido e a precisão de segmentação pode ser melhorada. Isso pode ser feito treinando-se especificamente e realizando a inferência (predição em amostras sem treinamento) em dados com os ditos conjuntos de dados 3D pré-alinhados considerando as rotações para as ditas rotações canônicas.
[0119] A Figura 8 representa uma vista geral esquemática de um componente de sistema para taxonomia de dados de imagem 3D dentomaxilofacial, de acordo com uma modalidade da invenção. Métodos e sistemas para taxonomia automática com base em aprendizado profundo são descritos no pedido de patente europeu nº
17194460.6 com o título Automated classification and taxonomy of 3D teeth data using deep learning methods, que é aqui incorporado a título de referência, neste pedido. O sistema 800 pode incluir dois diferentes processadores, um primeiro módulo de treinamento 802 para executar um processo para treinar a rede neural profunda 3D 826 e um segundo módulo de classificação 814 para executar um processo de classificação com base em novos dados de entrada 816.
[0120] Conforme mostrado na Figura 8, o módulo de treinamento pode compreender um ou mais repositórios ou bancos de dados 806, 812 de fontes de dados destinadas ao treinamento. Tal repositório pode ser derivado por meio de uma entrada 804 que é configurada para receber dados de entrada, por exemplo, dados de imagem 3D incluindo definições, que podem ser armazenadas em vários formatos junto com as respectivas identificações desejáveis. Mais especificamente, pelo menos um primeiro repositório ou banco de dados 806 pode ser usado para armazenar dados de imagem 3D de definições e identificações associadas dos dentes nessa dentição que podem ser usadas por um sistema de computador 808 que é configurado para segmentar e extrair volumes de interesse 810 que representam dentes individuais que podem ser usados para treinamento. Tal sistema pode ser implantado conforme descrito em relação à Figura 6 e Figura 7 no caso de dados de voxel (por exemplo, (CB)CT), ou pode ser, por exemplo, malhas de superfície 3D de coroas dentais individuais, visto que podem ser segmentadas de uma malha de superfície 3D que compreende dentes e gengiva (por exemplo, dados de IOS). De modo similar, um segundo repositório ou banco de dados 812 pode ser usado para armazenar outros formatos de dados 3D, por exemplo, malhas de superfície 3D geradas por varredura óptica e identificações de dentes individuais que podem ser empregadas durante o treinamento da rede.
[0121] Os dados de treinamento 3D podem ser pré-processados 826 em uma representação de voxel 3D (voxelizada) que é otimizada para rede neural profunda 3D 828. O processo de treinamento pode terminar nesse estágio, visto que o processador de rede neural profunda 3D 826 pode apenas necessitar de treinamento em amostras de dentes individuais. Em uma modalidade, os dados de dente 3D, como uma malha de superfície 3D, também podem ser determinados com base nos dados de imagem 3D segmentados que se originam de varreduras de dentição completas (808 a 812), que são apropriadamente identificadas.
[0122] Durante o uso do módulo de taxonomia 800 para taxonomia de uma nova (parte de uma) dentição 816, novamente, múltiplos formatos de dados podem ser empregados durante a translação da dentição física em uma representação 3D que é otimizada para rede neural profunda 3D 828. Conforme descrito acima, o sistema de taxonomia pode, por exemplo, fazer uso dos dados de imagem 3D da dentição 106, 108 e usar um sistema de computador 820 (sendo 602) que é configurado para segmentar e extrair volumes de interesse que compreendem dentes individuais 822 (sendo 626) análogos ao processador de treinamento 808. Alternativamente, outra representação, como malhas de superfície por dente 824 resultantes de varreduras ópticas, pode ser usada. Deve ser observado novamente que os dados de dentição completa podem ser usados para extrair outras representações 3D diferentes dos volumes de interesse (820 a 824).
[0123] O pré-processamento 826 para o formato conforme necessário para a rede neural profunda 3D 828 pode ser realizado. Deve ser observado que, no contexto do sistema de sobreposição inteiro, no caso de um conjunto de dados de imagem 3D recebido ser, por exemplo, dados de (CB)CT, a taxonomia de dados segmentados pela rede 828 pode ser feita utilizando (subconjuntos de) dados gerados em reconstrução de volume 620 diretamente. No caso de um conjunto de dados de imagem 3D recebido ser, por exemplo, dados de IOS, a taxonomia por 828 pode ser realizada diretamente (em subconjuntos de dados) após a segmentação de malha de superfície 3D e voxelização de coroas.
[0124] As saídas da rede neural profunda 3D podem ser fornecidas a uma etapa pós-processamento de taxonomia 830 projetada para fazer o uso de conhecimento que considera as dentições (por exemplo, o fato de que cada índice de dente individual pode apenas aparecer uma vez em uma dentição única) para garantir a precisão da taxonomia através do conjunto de identificações aplicado aos dentes da dentição. Isso pode levar ao sistema que emite identificações de dente por objeto de dente individual identificado. Em uma modalidade, as identificações corretas podem ser fornecidas novamente aos dados de treinamento com o propósito de aumentar a precisão futura após o treinamento adicional da rede neural profunda 3D.
[0125] A Figura 9 representa um exemplo de uma arquitetura de rede neural profunda 3D para taxonomia de dados de imagem 3D dentomaxilofacial, de acordo com uma modalidade da invenção. A rede pode ser implantada com o uso de camadas convolucionais 3D (CNNs 3D). As convoluções podem usar uma função de ativação. Uma pluralidade de camadas convolucionais 3D, 904 a 908, pode ser usada em que variações menores no número de camadas e seus parâmetros de definição, por exemplo, funções de ativação diferentes, quantidades de grãos, uso de subamostragem e tamanhos, e camadas funcionais adicionais, como camadas de normalização de lote e/ou dropout podem ser usados na implantação sem perder a essência do projeto da rede neural profunda 3D.
[0126] Em parte, para reduzir a dimensionalidade da representação interna dos dados na rede neural profunda 3D, uma camada de agrupamento máximo 3D 910 pode ser empregada. Nesse ponto na rede, a representação interna pode ser passada para uma camada densamente conectada 912 destinada a ser intermediária para traduzir a representação no espaço 3D para ativações de identificações potenciais, em particular, identificações do tipo dente.
[0127] A camada final ou de saída 914 pode ter a mesma dimensionalidade que o número desejável de identificações codificadas e pode ser usada para determinar um valor de ativação (análogo a uma predição) por identificação potencial 918.
[0128] A rede pode ser treinada fazendo uso de um conjunto de dados como entrada para as camadas de CNN 3D de um conjunto de dados pré-processado de dados 3D 902, isto é, uma representação de voxel 3D de um dente. Para cada amostra (sendo uma representação 3D de um dente único) uma representação correspondente da identificação correta 916 pode ser usada para determinar uma perda entre a saída desejável e real 914. Essa perda pode ser usada durante o treinamento como uma medida para ajustar os parâmetros nas camadas da rede neural profunda 3D. As funções otimizadoras podem ser usadas durante o treinamento para auxiliar na eficácia do esforço de treinamento. A rede pode ser treinada para qualquer número de iterações até os parâmetros internos levarem a uma precisão desejável de resultados. Quando apropriadamente treinada, uma amostra não identificada pode ser apresentada como entrada e a rede neural profunda 3D pode ser usada para derivar uma predição para cada identificação potencial.
[0129] Então, visto que a rede neural profunda 3D é treinada para submeter à taxonomia uma amostra de dados 3D de um dente em um dentre uma pluralidade de tipos de dente, por exemplo, 32 tipos de dente no caso de uma dentição saudável de um adulto, a saída da rede neural será de valores de ativação e identificações de tipo de dente potencial associadas. A identificação de tipo de dente potencial com o valor de ativação mais alto pode indicar para o sistema de taxonomia que é mais provável que a amostra de dados 3D de um dente represente um dente do tipo conforme indicado pela identificação. A identificação de tipo de dente potencial com o valor de ativação mais baixo ou relativamente baixo pode indicar ao sistema de taxonomia que é pelo menos provável que o conjunto de dados 3D de um dente representa um dente do tipo conforme indicado por tal identificação.
[0130] Deve ser observado que pode ser necessário treinar modelos de rede específicos separados (mesmas arquiteturas que têm parâmetros finais diferentes após treinamento específico) com base no tipo de volume de entrada, por exemplo, a representação de voxel de entrada sendo um volume de dente completo, ou a representação de voxel de entrada que apenas representa uma coroa de dente.
[0131] Também deve ser observado que, enquanto uma rede neural profunda 3D de taxonomia, conforme descrito em relação à Figura 8 e Figura 9 (como o caso com a segmentação de rede neural profunda 3D) pode ser inerentemente invariante em relação à translação através do espaço de dados de imagem 3D, pode ser benéfico empregar informações do processador 114 para aplicar uma etapa de pré- alinhamento inicial 124 para ajustar pelo menos as rotações (embora de modo relativamente bruto) para obter uma pose canônica. Com direções ortogonais do mundo real (por exemplo, paciente de cima para baixo, esquerda para direita e frontal para traseira) presentes nos dados de imagem 3D usados em uma direção canônica pré-definida (por exemplo, respectivamente, representação interna (conjunto de dados 3D) direção z de cima para baixo, direção x de esquerda para direita e direção y de frontal para traseira), a largura de banda de memória necessária para a taxonomia de rede neural profunda 3D pode ser reduzida, o tempo de treinamento pode ser reduzido e a precisão de taxonomia pode ser melhorada. Isso pode ser feito treinando-se especificamente e realizando a inferência em dados com os ditos conjuntos de dados 3D pré-alinhados considerando as rotações para o dito sistema de coordenada canônica.
[0132] A Figura 10A e a Figura 10B mostram exemplos de pontos-chave gerados em dois conjuntos de dados dentomaxilofaciais 3D exemplificativos respectivamente com e sem a inclusão de informações de taxonomia. Após pelo menos os dados de imagem 3D (volumes de superfície) que definem estruturas que representam dentes separados, ou coroas dentais, e após, por exemplo, o processamento, conforme descrito em relação à Figura 6 e Figura 7 no caso de dados de (CB)CT, ou empregando-se determinação mais comum de malhas de superfície de coroas dentais individuais no caso de, por exemplo, dados de IOS, pontos-chave que caracterizam as superfícies podem ser determinados. Em efeito, isso pode ser considerado como uma etapa de redução para reduzir todos os pontos disponíveis em uma malha de superfície para um conjunto de pontos mais relevantes (mais salientes). Essa redução é benéfica, visto que reduz o tempo de processamento e requisitos de memória. Além disso, os métodos para determinação de tais pontos podem ser selecionados, os quais se espera que rendam de modo bruto os mesmos conjuntos de pontos até mesmo se as entradas para a geração serem (conjuntos de) malhas de superfície 3D levemente divergentes (que ainda representam as mesmas estruturas). Os métodos bem conhecidos na técnica para determinar pontos-chave de malhas de superfície incluem usualmente a determinação de descritores de superfície local ou global (ou recursos) que podem ser feitos à mão (projetados manualmente) e/ou aprendidos por máquina e otimizados para capacidade de repetição através de malhas de superfície de entrada (levemente variáveis), e podem ser otimizados para desempenho (velocidade de determinação das saliências ou pontos-chave), por exemplo, conforme ensinado por TONIONI A, et al. Learning to detect good 3D keypoints. Int J Comput Vis. 2018 Volume 126, páginas 1 a 20. Exemplos de tais recursos são mínimos e máximos locais e globais em curvatura de superfície.
[0133] São mostradas na Figura 10A e na Figura 10B as renderizações de computador de dois conjuntos de dados de imagem 3D recebidos, incluindo as bordas e vértices que definem as malhas de faces de superfície e, então, mostram os pontos que definem as superfícies. Os quatro objetos de topo são coroas dentais individualmente processadas e segmentadas derivadas de uma varredura intraoral. Os quatro objetos de fundo são dentes individuais derivados de varredura de CBCT, de acordo com o método, com referência à Figura 6 e Figura 7. Esses dois conjuntos de quatro dentes são derivados do mesmo paciente aproximadamente no mesmo momento no tempo. Os mesmos foram brutamente pré-alinhados com um processador conforme descrito em mais detalhes acima com referência à Figura 3, Figura 4 e Figura 5, sendo o processador 114 determinante da pose canônica, conforme descrito anteriormente. A partir das informações a seguir 114, volumes de sobreposição foram determinados, e as estruturas 3D foram segmentadas em malhas de superfície separadas que representam dentes individuais. No caso da Figura 10B, adicionalmente, a taxonomia de dados de imagem 3D de dente individual foi realizada de acordo com métodos, conforme descrito com referência à Figura 8 e Figura 9.
[0134] Em particular, na Figura 10A, os pontos foram visualizados com identificações de acordo com o formato P[nº de conjuntos de dados recebidos]-[nº de ponto]; o número de pontos foi reduzido com propósitos de visualização. Conforme pode ser visto, cada conjunto de dados de imagem 3D recebido após a geração de ponto-chave teve seu próprio conjunto de pontos-chave após recursos salientes do volume, em que os mesmos pontos ao longo das superfícies serão marcados com um ponto-chave (embora arbitrariamente numerado). Deve ser observado que seria possível subagrupar tais pontos por dente individual no conjunto de dados 3D original, mas isso não renderia benefícios adicionais, visto que o (mesmo) dente individual não seria identificável através de conjuntos de dados 3D diferentes.
[0135] Na Figura 10B, empregar as informações após a etapa de taxonomia adicional, o formato das identificações foi visualizado como P[nº de conjunto de dados recebido]-[índice de dente identificado]-[nº de ponto]. Esse índice do dente identificado é o mesmo índice através de ambos os conjuntos de dados recebidos para os mesmos dentes do mundo real. Seria observado que, em cada subgrupo de dente individual, a numeração de pontos-chave ainda é arbitrária.
[0136] É notável que os dados de malha de superfície 3D (e os dados de nuvem de ponto ou uma coletânea de pontos-chave) é, em geral, salva em um formato de coordenadas x, y e z ortogonais por meio de números de ponto de flutuação. Isso disponibiliza o potencial de localizações de determinação altamente precisa de pontos-chave e, então, os resultados de alinhamento altamente preciso que têm parâmetros de transformação determinados com base em, por exemplo, métodos que minimizam uma distância computada entre tais nuvens de pontos-chave, conforme pode ser o caso ao empregar, por exemplo, um método de ponto iterativo mais próximo.
[0137] As informações adicionadas que consideram qual ponto-chave pertence a qual dente (e que correspondem à mesma representação de dente no outro conjunto de dados de imagem 3D recebido), conforme mostrado na Figura 10B, podem ser especificamente empregadas para alcançar determinação mais precisa de parâmetros de transformação de alinhamento. Por exemplo, em casos em que nenhum pré-alinhamento inicial foi realizado, a coordenada média por dente pode ser empregada para determinar um pré-alinhamento de um conjunto de dados de imagem 3D recebido para o outro (em efeito que orienta de modo bruto os dentes correspondentes o mais próximo possível um do outro). Em outros casos, pode ser benéfico determinar um conjunto de parâmetros de transformação primeiro (um por dente correspondente entre os dois conjuntos de dados de imagem 3D recebidos) e determinar os parâmetros de transformação final com base em uma média de tal conjunto. Isso pode ser especialmente benéfico em casos em que o volume sobreposto entre ambos os conjuntos de dados de imagem 3D recebidos não foi determinado (apropriadamente o suficiente).
[0138] Deve ser observado que, para a determinação de parâmetros de transformação de alinhamento, pelo menos três pontos não colineares precisam ser determinados.
[0139] A Figura 11 representa uma vista geral esquemática de um componente de sistema para determinação direta de parâmetros de transformação para sobreposição de representações de voxel, de acordo com uma modalidade da invenção. O sistema 1100 pode ser empregado para predizer diretamente os parâmetros de transformação, por exemplo, rotações 3D aplicáveis, translações 3D e dimensionamento 3D que definem como um conjunto de dados de imagem 3D recebido pode ser alinhado ao outro. Os dados de treinamento 1102 e os dados de inferência 1116 podem consistir em dados de imagem 3D, por exemplo, valores de intensidade de voxel, por exemplo, radiodensidades no caso de dados de (CB)CT, ou valores binários, por exemplo, no caso de dados de varredura de superfície voxelizada. Os valores de intensidade podem ser submetidos à binarização por meio de limiarização, por exemplo, no caso de dados de (CB)CT, definindo todos os valores de voxel para mais altos do que um valor de, por exemplo, 500 HUs para 1 e o voxel restante para 0. Em particular, com o propósito de gerar dados de treinamento, esse limiar pode ser aleatoriamente escolhido através das amostras a serem geradas, por exemplo, em uma faixa de 400 a 800 HUs.
[0140] O sistema pode ser empregado para predizer parâmetros de dados de imagem 3D que têm modalidades diferentes entre os dois conjuntos de dados de imagem 3D recebidos. Fontes diferentes que compreendem informações que consideram estruturas diferentes podem ser treinadas mediante a mesma rede. Por exemplo, no caso de corresponder as informações de (CB)CT para informações de IOS, as superfícies de coroas dentais podem ser distinguíveis com ambos os conjuntos de dados recebidos, enquanto, por exemplo, espera-se que a gengiva seja distinguível apenas nos dados de IOS e, por exemplo, as raízes de dente serão apenas distinguíveis nos dados de (CB)CT.
[0141] Durante o esforço de treinamento, os parâmetros internos de rede neural profunda 3D 1114 podem ser otimizados em direção à rede que fornece resultados de uma precisão suficientemente alta. Isso pode ser alcançado empregando-se uma coleta de conjuntos de dados de imagem 3D 1102 que podem ser de modalidades variáveis, mas que compreendem pelo menos uma sobreposição de volume parcial de estruturas do mundo real. Com o propósito de treinar tal rede, é desejável que esses dois conjuntos de entrada sejam alinhados ou sobrepostos um ao outro 1104. Se esse ainda não é o caso em dados 1102, o mesmo pode ser feito manual ou automaticamente de acordo com, por exemplo, informações que seguem um método conforme descrito em relação às Figuras 6 a 10. A precisão da sobreposição dos dados de treinamento pode afetar a precisão dos dados de saída.
[0142] É benéfico (considerando a precisão, necessidades de largura de banda de memória e velocidade de processamento potencial) que os dados apresentados para treinamento para a rede 1114 compreendam as mesmas estruturas do mundo real e sejam dimensionadas para uma mesma resolução do mundo real nas representações de voxel que serão fornecidas para a rede neural profunda 3D 1114. Se sobreposição o suficiente ainda não estiver presente nos conjuntos de dados recebidos, isso pode ser feito 1106 manualmente ou automaticamente de acordo com uma região de sobreposição determinada no sistema de coordenada canônica, por exemplo, após um método conforme descrito em relação à Figura 3. Se os conjuntos de dados de entrada têm resoluções diferentes, conforme pode ser conhecido a partir de metadados nos dados recebidos ou, por exemplo, derivado por um método, conforme descrito em relação à Figura 3, o redimensionamento dos dados de alta resolução para a resolução dos dados de baixa resolução 1108 pode ser benéfico.
[0143] Deve ser observado que, com o propósito da geração de uma grande variedade de amostras de treinamento de um mesmo conjunto recebido de conjuntos de dados de imagem 3D, a seleção de regiões de sobreposição 1106 pode ser utilizada de tal maneira que não apenas os volumes de interesse (VOIs) de sobreposição máxima sejam selecionados, como também os volumes menores com tais volumes de sobreposição máxima, “ampliando” de modo eficaz, em 3D, em um sobconjunto de dados de estrutura correspondentes.
[0144] Com o propósito de gerar uma grande variedade de amostras de treinamento, transformações de translação, rotação e/ou dimensionamento aleatórias podem ser aplicadas 1110 desalinhando de modo eficaz o alinhamento presente nos dados processados até alcançar o processador 1110. Esse desalinhamento introduzido pode ser passado juntamente na forma dos parâmetros de transformação aplicáveis, para a rede neural profunda 3D 1114, com o propósito de servir como alvo de treinamento para as transformações preditas. Rotações e/ou translações das representações de voxel de qualquer amostra de conjunto de dados pré-processada, ou opcionalmente ambas as amostras, podem ser realizadas, por exemplo, por métodos de rotação que empregam interpolação linear (ou outra) conforme conhecido na técnica.
[0145] Uma grande variedade de amostras resultantes do pré-processamento de vários conjuntos de conjuntos de dados de imagem 3D que compreendem estruturas similares pode ser salva em um banco de dados (ou memória) 1112, e o treinamento de rede 1114 pode ser, desse modo, realizado em uma grande variedade de amostras.
[0146] Em outra modalidade, as redes neurais profundas 3D separadas que têm uma arquitetura similar podem ser treinadas para condições específicas, por exemplo, a correspondência de modalidades de imagem específicas, que compreendem estruturas do mundo real, e/ou dimensionamento específico de tamanho das representações de voxel. Isso pode render precisão potencial mais alta de resultados para casos específicos, enquanto ainda adere aos requisitos de hardware, como memória de sistema disponível, velocidade de processamento, etc.
[0147] Com 1114 sendo suficientemente treinado, “novos dados” 1116 podem ser apresentados para predição ou inferência. Esses novos dados podem ser do mesmo tipo, conforme descrito acima, considerando ser a representação de voxel de modalidades de imagem potencialmente diferentes, etc. A pose canônica de estruturas dentais no conjunto de dados de entrada pode ser determinada por uma primeira rede neural profunda 3D 1118, seguida pela seleção de subconjuntos de dados que representam VOIs 1120 que sobrepõem no sistema de coordenada canônica, por exemplo, por um método conforme descrito com referência à Figura 3. Se os conjuntos de dados de entrada têm resoluções diferentes, conforme pode ser conhecido a partir de metadados nos dados recebidos ou, por exemplo, derivado por um método, conforme descrito em relação à Figura 3, o redimensionamento dos dados de alta resolução para a resolução dos dados de baixa resolução 1122 pode ser realizado. Isso resulta em ambos os conjuntos de dados pré-processados para a recepção por rede de aprendizado profundo 3D 1114. Deve ser observado que se espera que o pré-alinhamento e a seleção de VOIs de sobreposição sejam menos precisos do que o método sendo descrito aqui e, nesse aspecto, esse método pode ser considerado um refinamento mais preciso mediante um método conforme, por exemplo, descrito em relação à Figura 3.
[0148] A rede neural profunda 3D treinada pode processas subsequentemente os dados pré-processados 1114 e saída como predição dos parâmetros de transformação 1126 para sobreposição da amostra 1 e amostra 2. Tal conjunto de parâmetros pode, por exemplo, compreender um vetor de 6 valores, em que os primeiros 3 codificam rotações aplicáveis para serem executados em ordem ao longo dos três eixos geométricos ortogonais do sistema de coordenada recebido para a amostra de dados a ser transformada (por exemplo, amostra 2), e os últimos três valores sendo as traduções aplicáveis, positivas e/ou negativas, a fim de alinhar ou sobrepor, por exemplo, a amostra 2 à amostra 1.
[0149] Em outra modalidade, esses parâmetros podem ser treinados mediante estar na forma de, por exemplo, uma matriz de rotação e/ou translação e/ou uma matriz de transformação que alcança o mesmo resultado de alinhamento ou sobreposição desejável.
[0150] Deve ser observado que, no caso de empregar 1118, 1120 e/ou 1122, os parâmetros de transformação conforme predito para as amostras recebidas podem não render ainda os parâmetros para alinhamento ou sobreposição dos conjuntos de dados de imagem 3D originalmente recebidos. Em tal caso, o processador 1128 pode ser utilizado considerando as informações que consideram qualquer transformação pré-processada após esses três pré-processadores, isto é, “que empilham” quaisquer transformações anteriores junto com a transformação predita para as amostras, em que o sistema 1100 rende como saída de 1128 os parâmetros de transformação, conforme pode ser aplicável para os conjuntos de dados de imagem 3D recebidos.
[0151] Deve ser observado que a utilização de inferência desse sistema pode ser considerada relativamente não intensiva de modo computacional, então, relativamente rápida. A precisão desse sistema pode ser significativamente mais alta quando se empregam as etapas de pré-alinhamento e seleção 1118 e 1120. Esse sistema pode ser altamente robusto contra modalidades de imagem diferentes e pode funcionar em múltiplas resoluções (tamanhos de voxel nas representações de voxel recebidas), que empregam resoluções de voxel de 0,5 a 1 mm dependendo de quantidades de sobreposição entre estruturas. Entretanto, o mesmo pode não ser suficientemente preciso no caso de sobreposição insuficiente. Os elementos que compõem os vários conjuntos de parâmetros de transformação podem estar na forma de valores de ponto de flutuação.
[0152] As Figuras 12A e 12B mostram ilustrações de dados recebidos e transformados conforme empregado em e resultante de um componente de sistema para dedução direta de parâmetros de transformação, de acordo com uma modalidade da invenção. Mais especificamente, as mesmas são visualizações de dois conjuntos de dados de imagem 3D recebidos (1202 e 1204). As visualizações são renderizações de computador dos conjuntos de dados de imagem 3D em sua representação de voxel.
[0153] Nessas visualizações específicas, os tamanhos de voxel, conforme usado, sendo 1 mm em qualquer direção ortogonal, podem ser vistos. Enquanto 1202 conforme recebido pelo componente de sistema se originou de dados CBCT, com o propósito dessa visualização, o mesmo é mostrado como o volume 3D resultante da limiarização dos dados de CBCT acima de 500 unidades Hounsfield. 1204 é a representação voxelizada de um IOS do mesmo paciente, e ambos os conjuntos de dados de imagem 3D recebidos foram assumidos apropriadamente no mesmo momento no tempo.
[0154] A partir da Figura 12B pode ser visto que, com a aplicação dos parâmetros de transformação após o componente de sistema, 1204 foi alinhado ou sobreposto por meio de rotação 3D e translação 3D. Os conjuntos de dados de imagem 3D recebidos já tiveram o mesmo dimensionamento no caso desse exemplo.
[0155] A Figura 13 representa um exemplo de uma arquitetura de rede neural profunda 3D para um componente de sistema para dedução direta de parâmetros de transformação, de acordo com uma modalidade da invenção. Os dados de imagem 3D recebidos (pré-processados), duas representações de voxel 1302, 1304 que correspondem ao espaço de da entrada da rede neural profunda 3D, podem ser passados e processados por várias camadas na rede 1306 a 1320. As primeiras camadas da rede podem incluir uma pluralidade de camadas convolucionais 3D 1306 a 1314.
[0156] Quando os dados passaram pelas camadas convolucionais, a representação interna pode ser passada para uma série de camadas densamente conectadas 1316 a 1318 que inferem a distância de rotação e translação entre os dados 3D.
[0157] Variações no número de camadas e seus parâmetros de definição, por exemplo, funções de ativação diferentes, quantidades de grãos, uso de subamostragem e tamanho, e camadas funcionais adicionais, como camadas de normalização de lote e/ou dropout podem ser usados na implantação sem perder a essência do projeto na rede neural profunda 3D.
[0158] A camada final ou de saída 1320 pode representar uma predição da translação através dos três eixos geométricos e rotações ao longo dos três eixos geométricos que devem ser aplicados aos dados para obter uma sobreposição correta dos conjuntos de dados de imagem 3D recebidos.
[0159] Os dados de treinamento podem compreender conjuntos de representações de voxel como entrada 1302, 1304 da qual as translações e rotações são conhecidas. Para cada conjunto de dados de representações de voxel a ser processado, uma translação e rotação aleatorizada pode ser aplicada a qualquer um, e a diferença de translação e rotação total pode ser usada para determinar uma perda entre a saída desejável 1322 e real 1320. Essa perda pode ser usada durante o treinamento como uma medida para ajustar os parâmetros nas camadas da rede neural profunda 3D. Tal perda pode ser calculada, de modo que as predições precisas de modo otimizado sejam resultantes da rede de aprendizado profundo 3D. As funções otimizadoras podem ser usadas durante o treinamento para auxiliar na eficácia do esforço de treinamento. A rede pode ser treinada para qualquer número de iterações até os parâmetros internos levarem a uma precisão desejável de resultados. Quando apropriadamente treinadas, duas representações de voxel diferentes de, por exemplo, estruturas maxilofaciais podem ser apresentadas como entrada e a rede neural profunda 3D pode ser usada para derivar uma predição 1324 da translação e rotação necessária para sobrepor precisamente o conjunto de entradas.
[0160] As camadas podem usar uma variedade de funções de ativação como linear, tanh, ReLU, PreLU, sigmoide, etc. As camadas de CNN 3D podem variar em sua quantidade de filtros, tamanhos de filtro e parâmetros de subamostragem, etc. Os mesmos, assim como as camadas densamente conectadas, podem variar em seus métodos de internalização de parâmetro.
[0161] A Figura 14 representa um fluxograma da lógica de sistema para seleção/determinação dos parâmetros de transformação a serem aplicados, de acordo com uma modalidade da invenção. Deve ser observado que isso é uma definição exemplificativa da lógica de sistema, de acordo com várias modalidades da invenção, conforme descrito acima. Os dois conjuntos de dados de entrada têm o propósito do fluxograma declarado como já sendo apropriadamente voxelizados. Os dois conjuntos de dados de entrada podem ser recebidos na etapa 1402, em que um primeiro conjunto de parâmetros de transformação para uma pose canônica pode ser determinado. Em uma modalidade exemplificativa, essa etapa pode ser robusta contra grandes variâncias para serem aplicados parâmetros de transformação com o propósito de alinhamento ou sobreposição. A precisão pode ser menor e a resolução das representações de voxel dos dados de imagem recebidos pode ser aproximadamente 1 mm em qualquer direção ortogonal.
[0162] Após as informações de 1402, o pré-alinhamento 1404 e a determinação de sobreposição suficiente 1406 podem ser realizados. Deve ser observado que, em uma modalidade, essa etapa pode realizar duas determinações de sobreposição suficiente, uma para cada método subsequente opcional a ser realizado (que começa em, respectivamente, 1410 e 1416). Se a quantidade de sobreposição for insuficiente, como de acordo com um limiar ou limiares, conforme pode ser determinado de modo experimental e subsequentemente pode ser verificado de modo programático, o sistema pode escolher não realizar qualquer um ou ambos os métodos como iniciando em 1410, 1416. Isto é, isso pode ser considerado como o sistema que determina que os parâmetros de transformação resultantes de 1426 não melhorariam devido aos resultados não praticáveis em qualquer um ou ambos esses métodos adicionais.
[0163] No caso de sobreposição suficiente, o método de dedução direta pode ser realizando começando na etapa 1410, que é esperado, especialmente no caso de ter pré-alinhamento realizado 1404 e seleção de VOI 1408, para render resultados mais precisos enquanto é robusto contra modalidades de imagem diferentes nos conjuntos de dados de imagem 3D recebidos. Deve ser observado que as informações aplicáveis após transformações anteriores, conforme pode se seguir potencialmente de 1404 e 1408, podem ser retransmitidos para uso na determinação de parâmetros de transformação 1412 após o método de dedução direta. Espera-se que o pré- processamento 1410 empregado nesse método resulte em representações de voxel em uma resolução de voxel de 0,5 a 1,0 mm.
[0164] A viabilidade de resultados ainda pode ser submetida à prova real 1414. Isso pode ser feito por meio de comparação dos parâmetros resultantes de 1402 com aqueles resultantes de 1414 e/ou 1424. Se o desvio é de uma extensão muito grande, o sistema pode, por exemplo, escolher não retransmitir os parâmetros para 1426, ou 1426 pode atribuir um peso de 0 aos parâmetros de transformação resultantes.
[0165] Após a determinação de sobreposição aplicável, o sistema pode empregar a segmentação com base no método que começa na etapa 1416. A segmentação 1416 pode ser feita automaticamente em ambos os conjuntos de dados de imagem 3D recebidos, empregando métodos com base em rede neural profunda 3D conforme descrito acima, ou outros métodos conhecidos na técnica, conforme pode ser o caso com dados de IOS. Deve ser observado que, no caso do último mencionado, tais segmentações de coroas dentais podem ser realizadas nos dados de imagem 3D recebidos na forma de dados de malha de superfície.
[0166] A taxonomia 1418 pode ser realizada nos dados de estrutura
(segmentados) e as informações resultantes podem ser retransmitidas para a etapa de geração de ponto-chave 1420. Espera-se que a capacidade de incluir a identificação dos mesmos dentes nos diferentes conjuntos de dados recebidos renda mais robustez contra variâncias potenciais na quantidade de sobreposição e qualidade de dados dos conjuntos de dados recebidos.
[0167] As nuvens geradas de pontos-chave selecionados (escassos, correspondentes de modo próximo) podem ser empregadas na etapa 1422 para determinar os parâmetros de transformação aplicáveis para alinhamento ou sobreposição. Deve ser observado novamente qualquer transformação anterior potencialmente após 1404, 1408 pode ser considerada por 1422 para determinar o conjunto de parâmetros de transformação.
[0168] Uma prova real 1424 para esse método pode ser novamente realizada, por exemplo, verificando-se desvios contra parâmetros resultantes de 1414 e/ou 1402. No caso de discrepâncias grandes, o sistema pode escolher não retransmitir os parâmetros para 1426. Alternativamente, 1426 pode atribuir um peso de 0 ao conjunto de parâmetros de transformação resultantes. Os resultados não praticáveis podem ser os resultados de dados imprecisos recebidos, como, por exemplo, artefatos presentes em dados de CBCT, representação de superfície incorreta de dados de IOS, etc.
[0169] Os dados de ponto para malhas de superfícies são salvos com precisões de ponto flutuante, rendendo resultados alta e potencialmente precisos. Esse método pode ser considerado como o mais preciso nesse sistema, enquanto, ao mesmo tempo, é o menos robusto. Entretanto, pode ser considerado significativamente mais robusto do que os métodos atuais na técnica devido à inclusão de determinação de pré-alinhamento, sobreposição e segmentação e taxonomia de estruturas individuais.
[0170] Os parâmetros de transformação podem ser internamente representados em uma variedade de maneiras, por exemplo, 3 vetores de 3 valores que descrevem respectivamente as rotações em ordem, 3 valores de translação a uma origem, e/ou 3 valores que determinam o dimensionamento aplicável, em que todos têm magnitudes positivas e/ou negativas de valor que pertencem a um eixo geométrico específico em um sistema de coordenada 3D ortogonal. Alternativamente, qualquer combinação de matrizes conforme conhecido em álgebra linear pode ser empregado, mais especificamente, rotação, transformação, dimensionamento e/ou combinações, conforme pode ser determinado em uma matriz de transformação (afim).
[0171] O conhecimento anterior que considera precisões, robustez, etc. pode ser empregado para, por exemplo, determinar um peso de importância de quaisquer/todos os parâmetros de transformação recebidos por 1426. A etapa 1426 pode, desse modo, combinar de modo programático os parâmetros recebidos dos vários métodos para render os parâmetros de transformação desejáveis mais precisos para alinhamento ou sobreposição.
[0172] Deve ser observado que parâmetros de transformação podem, dependendo de resultados desejáveis de tal sistema, ser parâmetros que correspondem o conjunto 2 ao conjunto 1, conjunto 1 ao conjunto 2, e/ou ambos sendo sobrepostos em um sistema de coordenada alternativo (desejável).
[0173] A Figura 15A e a Figura 15B representam resultados de transformação em dois conjuntos de dados recebidos exemplificativos após várias modalidades da invenção. Mais especificamente, a Figura 15A e a Figura 15B mostram renderizações de computador de dois conjuntos de dados de imagem 3D 1502 e 1504. Esses conjuntos de dados de imagem 3D foram respectivamente derivados de um digitalizador de CBCT e um digitalizador intraoral. De acordo com uma definição de sistema conforme descrito em relação à Figura 14, sobreposição suficiente foi determinada pelo sistema e todos os três métodos para geração de parâmetros de transformação foram realizados, com o emprego de pré-alinhamento, de acordo com o método de pose canônica.
[0174] Com o propósito dessa visualização, os dados de imagem de CBCT 3D são renderizados por meio das malhas de superfície geradas por estrutura dental resultante do método de segmentação. Na Figura 15A, os dados de imagem são mostrados orientados conforme recebido, e pode ser visto que o dimensionamento entre ambos os conjuntos de dados de imagem 3D foi igual (por exemplo, 1 mm em dimensões do mundo real se acumula para um valor de unidade em cada eixo geométrico ortogonal para ambos os conjuntos de dados recebidos). Também pode ser visto que 1502 e 1504 são desalinhados, ambos considerando rotações e translações, para uma extensão significante.
[0175] O conjunto de parâmetros de transformação mais preciso foi determinado como o resultante do método de segmentação e taxonomia, correspondendo e minimizando a distância entre pontos-chave gerados para ambos os dentes segmentados (e identificados) (coroas, no caso de dados de IOS) conforme identificado, desse modo, no caso desse exemplo, nenhuma parte da transformação aplicada foi o resultado direto dos outros dois métodos. Os parâmetros de transformação do método de pose canônica foram, entretanto, empregados enquanto se realiza o pré-processamento para o método com base em segmentação e taxonomia.
[0176] A Figura 15B mostra os parâmetros de transformação conforme determinado pelo sistema aplicado a 1504, sendo os dados de IOS, o sistema que tem sido configurado para determinar e aplicar parâmetros de transformação que alinham um conjunto de dados de imagem 3D recebido ao outro. Deve ser observado que, apesar da sobreposição estar apenas presente para volumes de imagem que definem índices de dentes 41, 31, 32, 33, 34, 35 e 36 (conforme pode ser determinado de acordo com a notação de FDI), a etapa de alinhamento ou sobreposição final conforme aplicado com base nos parâmetros de transformação determinados foi automaticamente realizada a uma precisão significativamente alta.
[0177] Os dados alinhados ou sobrepostos, conforme mostrado, podem ser adicionalmente fundidos ou unidos, por exemplo, para dentes que têm sobreposição em dados de superfície (com referência a 132 na Figura 1). No caso dos dados conforme visualizado, que mostra especificamente os resultados da etapa de segmentação que rende dentes completos incluindo raízes precisas dos dados de CBCT e a combinação com informações mais precisas considerando coroas dentais dos dados de IOS, uma união de superfícies que rendem coroas dentais de IOS fundidas às raízes dentais de CBCT seria muito benéfica, por exemplo, nos campos de implantologia ou ortodontia, conforme descrito acima. Tais métodos de união são conhecidos no campo e podem se beneficiar grandemente do alinhamento preciso, visto que pode ser resultante do sistema conforme descrito.
[0178] Os métodos, conforme descrito acima, podem fornecer os resultados mais precisos para sobreposição disponíveis, enquanto são robustos para uma grande variabilidade de condições considerando os dados de entrada. Essa variabilidade considera uma magnitude variável, mas potencialmente grande de “desalinhamento” entre conjuntos de dados de imagem 3D recebidos, modalidades de imagem diferentes, robustez contra qualidade de dados potencialmente baixa (por exemplo, superfícies interpretadas incorretamente, artefatos em dados de CBCT, etc.). O sistema pode ser executado de modo completamente automático e pode fornecer os resultados de alinhamento ou sobreposição mais precisos no devido tempo. Deve ser observado que, para qualquer implantação de uma rede de aprendizado profundo 3D, espera-se que os resultados e a robustez aumentem seguindo períodos mais longos de treinamento/utilização de mais dados de treinamento (variados).
[0179] Embora os exemplos nas figuras sejam descritos com referência às estruturas dentais 3D, é claro que as modalidades nesse pedido podem ser geralmente usadas para determinar automaticamente (desse modo, sem qualquer intervenção humana) uma pose canônica para objeto 3D em conjuntos de dados 3D de modalidades diferentes. Além disso, as modalidades nessa aplicação podem ser usadas para sobreposição automática de um primeiro objeto 3D com um segundo objeto 3D, em que o primeiro e o segundo objetos 3D podem ser representados por conjuntos de dados 3D de modalidades diferentes.
[0180] A Figura 16 é um diagrama de blocos que ilustra um sistema de processamento de dados exemplificativo que pode ser usado conforme descrito nessa revelação. O sistema de processamento de dados 1600 pode incluir pelo menos um processador 1602 acoplado aos elementos de memória 1604 através de um barramento de sistema 1606. Como tal, o sistema de processamento de dados pode armazenar código de programa em elementos de memória 1604. Adicionalmente, o processador 1602 pode executar o código de programa acessado dos elementos de memória 1604 por meio de um barramento de sistema 1606. Em um aspecto, o sistema de processamento de dados pode ser implantado como um computador que é adequado para armazenar e/ou executar o código de programa. Deve ser observado, entretanto, que o sistema de processamento de dados 1600 pode ser implantado na forma de qualquer sistema incluindo um processador e memória que tem capacidade para realizar as funções descritas neste relatório descritivo.
[0181] Os elementos de memória 1604 podem incluir um ou mais dispositivos de memória física, como, por exemplo, memória local 1608 e um ou mais dispositivos de armazenamento em massa 1610. A memória local pode se referir à memória de acesso aleatório ou outro dispositivo de memória não persistente (ou dispositivos de memória não persistente) usado em geral durante a execução real do código de programa. Um dispositivo de armazenamento em massa pode ser implantado como um disco rígido ou outro dispositivo de armazenamento de dados persistente. O sistema de processamento 1600 também pode incluir uma ou mais memórias de cache (não mostradas) que fornecem armazenamento temporário de pelo menos algum código de programa a fim de reduzir o número de vezes que o código de programa deve ser recuperado do dispositivo de armazenamento em massa 1610 durante a execução.
[0182] Os dispositivos de entrada/saída (I/O) representados como dispositivo de entrada 1612 e dispositivo de saída 1614 podem ser opcionalmente acoplados ao sistema de processamento de dados. Os exemplos de dispositivo de entrada podem incluir, mas sem limitação, por exemplo, um teclado, um dispositivo apontador, como um mouse, ou semelhantes. Exemplos de dispositivo de saída podem incluir, mas sem limitação, por exemplo, um monitor ou visor, alto-falantes ou semelhantes. O dispositivo de entrada e/ou dispositivo de saída podem ser acoplados ao sistema de processamento de dados diretamente ou através de controladores de I/O intervenientes. Um adaptador de rede 1616 também pode ser acoplado ao sistema de processamento de dados para possibilitar que o mesmo se torne acoplado a outros sistemas, sistemas de computador, dispositivos de rede remotos e/ou dispositivos de armazenamento remotos através de redes privadas ou públicas intervenientes. O adaptador de rede pode compreender um receptor de dados para receber dados que são transmitidos pelos ditos sistemas, dispositivos e/ou redes aos ditos dados e um transmissor de dados para transmitir dados aos ditos sistemas, dispositivos e/ou redes. Modems, modems de cabo e cartões Ethernet são exemplos de diferentes tipos de adaptador de rede que podem ser usados com o sistema de processamento de dados 1600.
[0183] Conforme representado na Figura 16, os elementos de memória 1604 podem armazenar uma aplicação 1618. Deve ser observado que o sistema de processamento de dados 1600 pode executar adicionalmente um sistema operacional (não mostrado) que pode facilitar a execução da aplicação. A aplicação, sendo implantada na forma de código de programa executável, pode ser executada pelo sistema de processamento de dados 1600, por exemplo, pelo processador 1602. Em resposta à execução de aplicação, o sistema de processamento de dados pode ser configurado para realizar uma ou mais operações a serem descritas no presente documento em detalhes adicionais.
[0184] Em um aspecto, por exemplo, o sistema de processamento de dados 1600 pode representar um sistema de processamento de dados de cliente. Nesse caso, a aplicação 1618 pode representar uma aplicação de cliente que, quando executada, configura o sistema de processamento de dados 1600 para realizar as várias funções descritas no presente documento com referência a um "cliente". Os exemplos de um cliente podem incluir, mas sem limitação, um computador pessoal, um computador portátil, um telefone móvel, ou semelhantes.
[0185] A terminologia usada no presente documento tem apenas o propósito de descrever modalidades particulares e não se destina a limitar a invenção. Conforme usado no presente documento, as formas singulares "um", "uma", "o" e "a" também se destinam a incluir as formas plurais, a menos que o contexto indique claramente de outro modo. Será adicionalmente entendido que os termos “compreende” e/ou “que compreende”, quando usados nesse relatório descritivo, especificam a presença de recursos declarados, números inteiros, etapas, operações, elementos e/ou componentes, mas não excluem a presença ou adição de um ou mais outros recursos, números inteiros, etapas, operações, elementos, componentes e/ou grupos dos mesmos.
[0186] As estruturas, os materiais, as ações e equivalentes correspondentes de todos os meios ou elementos de etapa mais função nas reivindicações abaixo são destinados a incluir qualquer estrutura, material ou ação correspondente para realizar a função em combinação com outros elementos reivindicados conforme especificamente reivindicados. A descrição da presente invenção foi apresentada com propósitos de ilustração e descrição, mas não se destina a ser exaustiva e limitada à invenção na forma revelada. Muitas modificações e variações serão evidentes àqueles de habilidade comum na técnica sem se afastar do escopo e espírito da invenção. A modalidade foi escolhida e descrita a fim de explicar melhor os princípios da invenção e da aplicação prática, e para possibilitar que outros com habilidade comum na técnica entendam a invenção para várias modalidades com várias modificações conforme são adequadas ao uso particular contemplado.

Claims (15)

REIVINDICAÇÕES
1. Método implantado por computador para determinar automaticamente uma pose canônica de um objeto 3D, como uma estrutura dental 3D, representado por pontos de dados de um conjunto de dados 3D, sendo que o método é caracterizado por compreender: um processador de um computador que fornece um ou mais blocos de pontos de dados do conjunto de dados 3D associado a um primeiro sistema de coordenada para a entrada de uma primeira rede neural profunda 3D, em que a primeira rede neural 3D é treinada para gerar informações de pose canônica associadas a um sistema de coordenada canônica definido em relação a uma posição de parte do objeto 3D; o processador receber informações de pose canônica da saída da primeira rede neural profunda 3D, em que as informações de pose canônica compreendem para cada ponto de dados do um ou mais blocos uma predição de uma posição de um ponto de dados no sistema de coordenada canônica, em que a posição do ponto de dados é definida por coordenadas canônicas; o processador usar as coordenadas canônicas para determinar uma orientação e dimensionar os eixos geométricos do sistema de coordenada canônica e uma posição da origem do sistema de coordenada canônica em relação ao eixo geométrico e a origem do primeiro sistema de coordenada 3D e usar a orientação e a posição para determinar parâmetros de transformação, preferencialmente parâmetros de rotação, translação e/ou dimensionamento, para transformar coordenadas do primeiro sistema de coordenada em coordenadas canônicas; e o processador determinar uma representação canônica, preferencialmente uma representação de voxel canônica ou uma representação de malha 3D canônica, do objeto 3D, em que a determinação inclui aplicar os parâmetros de transformação a coordenadas dos pontos de dados do conjunto de dados 3D.
2. Método, de acordo com a reivindicação 1, caracterizado por as informações de pose canônica incluírem um ou mais mapas de voxel para ligar um voxel da representação de voxel a uma predição de uma posição do voxel no sistema de coordenada canônica, preferencialmente o um ou mais mapas de voxel incluindo um primeiro mapa de voxel 3D que liga a um voxel a uma predição de uma primeira coordenada x’ do sistema de coordenada canônica, um segundo mapa de voxel 3D que liga um voxel a uma predição de uma segunda coordenada y’ do sistema de coordenada canônica e um terceiro mapa de voxel 3D que liga um voxel a uma predição de uma terceira coordenada z’ do sistema de coordenada canônica
3. Método, de acordo com a reivindicação 2, caracterizado por a determinação de uma orientação de um eixo geométrico do sistema de coordenada canônica compreender adicionalmente: determinar para um voxel da representação de voxel um gradiente local numa coordenada canônica de um dentre o um ou mais mapas de voxel 3D, em que o gradiente local representa um vetor no espaço definido pelo primeiro sistema de coordenada, em que a orientação do vetor representa uma predição da orientação de um eixo geométrico canônico e/ou em que o comprimento do vetor define um fator de dimensionamento associado ao eixo geométrico canônico.
4. Método implantado por computador para sobreposição automatizada de um primeiro objeto 3D, como estrutura dental 3D, representado por um primeiro conjunto de dados 3D e um segundo objeto 3D, como estrutura dental 3D, representado por um segundo conjunto de dados 3D, em que preferencialmente a primeira e segunda estruturas dentais 3D são da mesma pessoa, sendo que o método é caracterizado por compreender: um processador de um computador que fornece um ou mais primeiros blocos de voxels de uma primeira representação de voxel do primeiro objeto 3D associado a um primeiro sistema de coordenada e um ou mais segundos blocos de voxels de uma segunda representação de voxel do segundo objeto 3D associado a um segundo sistema de coordenada para a entrada de uma primeira rede neural profunda 3D, em que a primeira rede neural profunda 3D é treinada para gerar informações de pose canônica associadas a um sistema de coordenada canônica definido em relação a uma posição de parte da estrutura dental 3D; o processador que recebe primeira e segunda informações de pose canônica da saída da rede neural profunda 3D, em que as primeiras informações de pose canônica compreendem para cada voxel do um ou mais primeiros blocos uma predição de uma primeira posição do voxel no sistema de coordenada canônica; e, as segundas informações de pose canônica que compreendem para cada voxel do um ou mais segundos blocos uma predição de uma segunda posição do voxel no sistema de coordenada canônica, em que a primeira e a segunda posição são definidas pela primeira e segunda coordenadas canônicas, respectivamente; o processador que usa as primeiras informações de pose canônica para determinar uma primeira orientação e dimensão dos eixos geométricos e primeira posição da origem dos eixos geométricos no primeiro sistema de coordenada e usar as segundas informações de pose canônica para determinar uma segunda orientação e dimensão dos eixos geométricos e uma segunda posição da origem dos eixos geométricos do sistema de coordenada canônica no segundo sistema de coordenada; o processador que usa a primeira orientação, dimensão e a primeira posição para determinar os primeiros parâmetros de transformação, preferencialmente primeiros parâmetros de rotação, translação e/ou dimensionamento, para transformar coordenadas do primeiro sistema de coordenada em coordenadas do sistema de coordenada canônica; e usar a segunda orientação, dimensão e a segunda posição para determinar segundos parâmetros de transformação, preferencialmente segundos parâmetros de rotação, translação e/ou dimensionamento, para transformar coordenadas do segundo sistema de coordenada em coordenadas canônicas; e, o processador que determina uma sobreposição do primeiro objeto 3D e o segundo objeto 3D, em que a determinação inclui usar o primeiro e segundo parâmetros de transformação para formar uma primeira e segunda representações canônicas da primeira e segunda estruturas dentais 3D, respectivamente.
5. Método, de acordo com a reivindicação 4, caracterizado por a primeira e segunda representações canônicas do primeiro e segundo objetos 3D, preferencialmente primeira e segunda estruturas dentais 3D, são malhas de superfície 3D, em que a determinação de uma sobreposição inclui adicionalmente: dividir a primeira representação canônica do primeiro objeto 3D em pelo menos uma malha de superfície 3D de pelo menos um elemento de objeto 3D, como um elemento dental 3D, do primeiro objeto 3D e segmentar a segunda representação canônica do segundo objeto 3D, em pelo menos uma malha de superfície 3D de pelo menos um segundo elemento de objeto 3D, como um elemento dental 3D, do segundo objeto 3D; selecionar pelo menos três primeiros e segundos pontos-chave não colineares da primeira e segunda malhas de superfície 3D, em que um ponto-chave define preferencialmente um máximo ou mínimo local e/ou global na curvatura de superfície da primeira malha de superfície; e, alinhar o primeiro e segundo elemento de objeto 3D com base no primeiro e segundo pontos-chave não colineares.
6. Método, de acordo com a reivindicação 4, caracterizado por a primeira e a segunda representação canônica do primeiro e segundo objeto 3D serem representações de voxel, em que a determinação de uma sobreposição incluir adicionalmente: fornecer pelo menos parte da primeira representação de voxel canônica do primeiro objeto 3D e pelo menos parte da segunda representação de voxel canônica do segundo objeto 3D para a entrada de uma segunda rede neural profunda 3D, a segunda rede neural profunda 3D ser treinada para determinar parâmetros de transformação, preferencialmente parâmetros de rotação, translação e/ou dimensionamento, para alinhar a primeira e a segunda representação de voxel canônica; alinhar a primeira e segunda representações canônicas da primeira e segunda estruturas dentais 3D com base nos parâmetros de transformação fornecidos pela saída da segunda rede neural profunda 3D.
7. Método, de acordo com a reivindicação 4, caracterizado por a determinação de uma sobreposição incluir adicionalmente: o processador que determina um volume de sobreposição entre a representação canônica do primeiro objeto 3D e a representação canônica do segundo objeto; e o processador que determina um primeiro volume de interesse que compreende primeiros voxels da primeira representação canônica no volume de sobreposição; e determinar o segundo volume de interesse que compreende segundos voxels da segunda representação canônica no volume de sobreposição.
8. Método, de acordo com a reivindicação 7, caracterizado por compreender adicionalmente: o processador que fornece primeiros voxels contidos no primeiro volume de interesse, VOI, para a entrada de uma terceira rede neural profunda 3D, em que a terceira rede neural profunda 3D é treinada para classificar e segmentar voxels; e, o processador que recebe valores de ativação para cada um dos primeiros voxels no primeiro volume de interesse e/ou para cada um dos segundos voxels no segundo volume de interesse da saída da terceira rede neural profunda 3D, em que um valor de ativação de um voxel representa a probabilidade que o voxel pertença a uma classe de objeto 3D predeterminado, por exemplo, um dente de uma estrutura dental 3D; o processador que usa os valores de ativação para determinar uma primeira e segunda representações de voxel do primeiro e segundo elementos dentais 3D no primeiro e segundo VOI, respectivamente; e, opcionalmente, o processador que usa a primeira e segunda representações de voxel do primeiro e segundo elementos dentais 3D para determinar a primeira e segunda malhas de superfície 3D do primeiro e segundo elementos dentais 3D.
9. Método, de acordo com a reivindicação 8, caracterizado por compreender adicionalmente: o processador que seleciona pelo menos três primeiros e segundos pontos-
chave não colineares da primeira e segunda malhas de superfície 3D, em que um ponto-chave define preferencialmente um máximo ou mínimo local e/ou global na curvatura de superfície da primeira malha de superfície; e o processador que alinha o primeiro e segundo elementos dentais 3D com base no primeiro e segundo pontos-chave não colineares, preferencialmente com o uso de um algoritmo iterativo de ponto mais próximo.
10. Método, de acordo com a reivindicação 8, caracterizado por compreender adicionalmente: o processador que fornece uma primeira representação de voxel de um primeiro elemento dental 3D e uma segunda representação de voxel de um segundo elemento dental 3D para uma quarta rede neural profunda 3D, em que a quarta rede neural profunda 3D é treinada para gerar um valor de ativação para cada uma dentre uma pluralidade de identificações de estrutura candidata, um valor de ativação associado a uma identificação candidata que representa a probabilidade de uma representação de voxel recebida pela entrada da quarta rede neural profunda 3D representar um tipo de estrutura conforme indicado pela identificação de estrutura candidata; o processador que recebe da saída da quarta rede neural profunda 3D uma pluralidade de primeiro e segundo valores de ativação, selecionar uma primeira identificação de estrutura com o valor de ativação mais alto da primeira pluralidade de valores de ativação e selecionar uma segunda identificação de estrutura com o valor de ativação mais alto da segunda pluralidade de valores de ativação e atribuir a primeira e a segunda identificações de estrutura à primeira e segunda malhas de superfície 3D, respectivamente.
11. Método, de acordo com a reivindicação 10, caracterizado por compreender adicionalmente: o processador que seleciona pelo menos três primeiros e segundos pontos- chave não colineares da primeira e segunda malhas de superfície 3D, em que um ponto-chave define preferencialmente um máximo ou mínimo local e/ou global na curvatura de superfície da primeira malha de superfície; o processador identifica o primeiro e segundo pontos-chave com base na primeira identificação de estrutura atribuída à primeira malha de superfície 3D e a segunda identificação de estrutura atribuída à segunda malha de superfície 3D, respectivamente; o processador alinha o primeiro e segundo elementos dentais 3D com base no primeiro e segundo pontos-chave e a primeira e segunda identificações de estrutura da primeira e segunda malhas de superfície 3D respectivamente, preferencialmente com o uso de um algoritmo iterativo de ponto mais próximo.
12. Método implantado por computador para treinar uma rede neural profunda 3D para determinar automaticamente uma pose canônica de uma estrutura dental 3D representada por um conjunto de dados 3D caracterizado por compreender: receber dados de treinamento e dados alvo associados, em que os dados de treinamento incluem uma representação de voxel de um objeto 3D e os dados-alvo incluindo valores de coordenada canônica de um sistema de coordenada canônica para cada voxel da representação de voxel, em que o sistema de coordenada canônica é um sistema de coordenada predeterminado definido em relação a uma posição de parte do objeto 3D, preferencialmente parte de uma estrutura dental 3D, como uma arcada dentária; selecionar um ou mais blocos de voxels, em que o um ou mais blocos representam uma ou mais subamostras da representação de voxel de um tamanho predeterminado e aplicar uma rotação 3D aleatória à uma ou mais subamostras; aplicar a mesma rotação aos dados-alvo; oferecer o um ou mais blocos à entrada da rede neural profunda 3D e a rede neural profunda 3D que prediz para cada voxel do um ou mais coordenadas canônicas de blocos do sistema de coordenada canônica; e otimizar valores dos parâmetros de rede da rede neural profunda 3D minimizando-se uma função de perda que representa um desvio entre os valores de coordenada preditos pela rede neural profunda 3D e as coordenadas canônicas associadas aos dados-alvo.
13. Sistema de computador adaptado para determinar automaticamente uma pose canônica de um objeto 3D representado por um conjunto de dados 3D caracterizado por compreender: um meio de armazenamento legível por computador que tem código de programa legível por computador incorporado ao mesmo, em que o código de programa inclui pelo menos uma rede neural profunda 3D treinada, e pelo menos um processador, preferencialmente um microprocessador, acoplado ao meio de armazenamento legível por computador, em que, em resposta a executar o código de programa legível por computador, o pelo menos um processador é configurado para realizar operações executáveis que compreendem: fornecer um ou mais blocos de voxels de uma representação de voxel do objeto 3D associado a um primeiro sistema de coordenada para a entrada de uma primeira rede neural profunda 3D, em que a primeira rede neural 3D é treinada para gerar informações de pose canônica associadas a um sistema de coordenada canônica definido em relação a uma posição de parte do objeto 3D; receber informações de pose canônica da saída da primeira rede neural profunda 3D, em que as informações de pose canônica compreendem para cada voxel do um ou mais blocos uma predição de uma posição do voxel no sistema de coordenada canônica, em que a posição é definida por coordenadas canônicas; usar as coordenadas canônicas para determinar uma orientação e dimensão dos eixos geométricos do sistema de coordenada canônica e uma posição da origem do sistema de coordenada canônica em relação ao eixo geométrico e a origem do primeiro sistema de coordenada 3D e usar a orientação, dimensão e a posição para determinar parâmetros de transformação, preferencialmente parâmetros de rotação, translação e/ou dimensionamento, para transformar coordenadas do primeiro sistema de coordenada em coordenadas canônicas; e determinar uma representação canônica, preferencialmente uma representação de voxel canônica ou uma representação de malha 3D canônica, do objeto 3D, em que a determinação inclui aplicar os parâmetros de transformação a coordenadas dos voxels da representação de voxel ou o conjunto de dados 3D usado para determinar a representação de voxel.
14. Sistema de computador adaptado para sobreposição automatizada de um primeiro objeto 3D, preferencialmente uma primeira estrutura dental 3D, representada por um primeiro conjunto de dados 3D e um segundo objeto 3D, preferencialmente uma segunda estrutura dental 3D, uma representada por um segundo conjunto de dados 3D, caracterizado por compreender: um meio de armazenamento legível por computador que tem código de programa legível por computador incorporado ao mesmo, em que o código de programa inclui pelo menos uma rede neural profunda 3D treinada, e pelo menos um processador, preferencialmente um microprocessador, acoplado ao meio de armazenamento legível por computador, em que, em resposta a executar o código de programa legível por computador, o pelo menos um processador é configurado para realizar operações executáveis que compreendem: fornecer um ou mais primeiros blocos de voxels de uma primeira representação de voxel da primeira estrutura dental 3D associada a um primeiro sistema de coordenada e um ou mais segundos blocos de voxels de uma segunda representação de voxel da segunda estrutura dental 3D associada a um segundo sistema de coordenada à entrada de uma rede neural profunda 3D; em que a rede neural profunda 3D é treinada para gerar informações de pose canônica associadas a um sistema de coordenada canônica definido em relação a uma posição de parte do objeto 3D; receber primeira e segunda informações de pose canônica da saída da rede neural profunda 3D, em que as primeiras informações de pose canônica compreendem para cada voxel do um ou mais primeiros blocos uma predição de uma primeira posição do voxel no sistema de coordenada canônica; e, as segundas informações de pose canônica que compreendem para cada voxel do um ou mais segundos blocos uma predição de uma segunda posição do voxel no sistema de coordenada canônica, em que a primeira e a segunda posição são definidas pela primeira e segunda coordenadas canônicas, respectivamente; usar as primeiras informações de pose canônica para determinar uma primeira orientação e dimensão dos eixos geométricos e primeira posição da origem dos eixos geométricos no primeiro sistema de coordenada e usar as segundas informações de pose canônica para determinar uma segunda orientação e dimensão dos eixos geométricos e uma segunda posição da origem dos eixos geométricos do sistema de coordenada canônica no segundo sistema de coordenada; usar a primeira orientação e a primeira posição para determinar primeiros parâmetros de transformação, preferencialmente primeiros parâmetros de rotação, translação e/ou dimensionamento, para transformar coordenadas do primeiro sistema de coordenada em coordenadas do sistema de coordenada canônica; e usar a segunda orientação e a segunda posição para determinar segundos parâmetros de transformação, preferencialmente segundos parâmetros de rotação, translação e/ou dimensionamento, para transformar coordenadas do segundo sistema de coordenada em coordenadas canônicas; e, determinar uma sobreposição do primeiro objeto 3D e o segundo objeto 3D, em que a determinação inclui usar o primeiro e segundo parâmetros de transformação para formar uma primeira e segunda representações canônicas do primeiro e segundo objetos 3D, respectivamente.
15. Produto de programa de computador caracterizado por compreender porções de código de software configuradas para, quando executadas na memória de um computador, executar as etapas de método, de acordo com qualquer uma das reivindicações 1 a 11.
BR112020026687-6A 2018-07-03 2019-07-03 Método implantado por computador para determinar automaticamente uma pose canônica de um objeto 3d, para sobreposição automatizada de um primeiro objeto 3d e para treinar uma rede neural profunda 3d, sistema de computador adaptado para determinar automaticamente uma pose canônica de um objeto 3d e para sobreposição automatizada de um primeiro objeto 3d, produto de programa de computador BR112020026687A2 (pt)

Applications Claiming Priority (3)

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
EP18181421.1 2018-07-03
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
BR112020026687A2 true BR112020026687A2 (pt) 2021-03-30

Family

ID=62846050

Family Applications (1)

Application Number Title Priority Date Filing Date
BR112020026687-6A BR112020026687A2 (pt) 2018-07-03 2019-07-03 Método implantado por computador para determinar automaticamente uma pose canônica de um objeto 3d, para sobreposição automatizada de um primeiro objeto 3d e para treinar uma rede neural profunda 3d, sistema de computador adaptado para determinar automaticamente uma pose canônica de um objeto 3d e para sobreposição automatizada de um primeiro objeto 3d, produto de programa de computador

Country Status (9)

Country Link
US (1) US20210174543A1 (pt)
EP (2) EP3591616A1 (pt)
JP (1) JP7493464B2 (pt)
KR (1) KR20210028226A (pt)
CN (1) CN112639880A (pt)
BR (1) BR112020026687A2 (pt)
CA (1) CA3104592A1 (pt)
IL (1) IL279834A (pt)
WO (1) WO2020007941A1 (pt)

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11379975B2 (en) 2017-06-30 2022-07-05 Promaton Holding B.V. Classification and 3D modelling of 3D dento-maxillofacial structures 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
FR3083900B1 (fr) * 2018-07-13 2021-08-27 Dental Monitoring Procede d'analyse d'une photo d'une arcade dentaire
US11276244B2 (en) * 2018-09-18 2022-03-15 AB Strategies SEZC Ltd. Fixing holes in a computer generated model of a real-world environment
JP6936826B2 (ja) * 2019-03-18 2021-09-22 株式会社モリタ製作所 画像処理装置、表示システム、画像処理方法、および画像処理プログラム
US11961235B2 (en) * 2019-03-25 2024-04-16 Bonewise Inc. Apparatus, method and recording medium storing instructions for determining bone age of teeth
US20210174585A1 (en) * 2019-05-17 2021-06-10 Standard Cyborg, Inc. Three-dimensional modeling toolkit
EP3806034A1 (en) * 2019-10-07 2021-04-14 Nihon University Segmentation device
CN111612891B (zh) * 2020-05-22 2023-08-08 北京京东乾石科技有限公司 模型生成方法、点云数据处理方法、装置、设备及介质
JP7195291B2 (ja) * 2020-07-01 2022-12-23 株式会社モリタ製作所 データ処理装置、データ処理システム、データ処理方法、およびデータ処理用プログラム
CN111798445B (zh) * 2020-07-17 2023-10-31 北京大学口腔医院 一种基于卷积神经网络的牙齿图像龋坏识别方法及系统
CN112348867B (zh) * 2020-11-18 2024-04-12 南通市测绘院有限公司 基于LiDAR点云数据的城市高精度三维地形构建方法及系统
CN112561288A (zh) * 2020-12-07 2021-03-26 东北大学 一种采用图像模型的风力发电机运行状态智能辩识方法
GB202107492D0 (en) * 2021-05-26 2021-07-07 Vitaware Ltd Image processing method
US20220398738A1 (en) * 2021-06-15 2022-12-15 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 (ko) * 2021-08-31 2023-04-20 주식회사 스타인펠드 딥러닝을 이용한 크라운 3d 메쉬 생성 방법 및 이를 이용하는 장치
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
KR102670837B1 (ko) * 2022-12-05 2024-05-30 주식회사 스타인펠드 딥러닝을 이용한 크라운 교합면 3d 메쉬 생성 방법 및 이를 이용하는 장치
KR102670827B1 (ko) * 2022-12-05 2024-05-30 주식회사 스타인펠드 딥러닝을 이용한 크라운 측면 3d 메쉬 생성 방법 및 이를 이용하는 장치

Family Cites Families (11)

* 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
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
JP4717935B2 (ja) * 2009-03-23 2011-07-06 富士フイルム株式会社 画像処理装置および方法並びにプログラム
US9135498B2 (en) * 2012-12-14 2015-09-15 Ormco Corporation Integration of intra-oral imagery and volumetric imagery
DK3139855T3 (da) * 2014-05-09 2022-02-07 3Shape As Scanning af tandløse patienter
US20170258420A1 (en) * 2014-05-22 2017-09-14 Carestream Health, Inc. Method for 3-D Cephalometric Analysis
EP3269325A4 (en) * 2015-03-09 2018-06-06 Fujitsu Limited Crown information acquisition program, information processing device, and crown information acquisition method
CN107636659B (zh) * 2015-05-11 2021-10-12 西门子保健有限责任公司 使用深度神经网络检测医学图像中的地标的方法和系统
US10235606B2 (en) 2015-07-22 2019-03-19 Siemens Healthcare Gmbh Method and system for convolutional neural network regression based 2D/3D image registration
TWI592145B (zh) * 2015-11-26 2017-07-21 國立陽明大學 光斷層掃描數位印模取像系統及其使用方法
JP6658308B2 (ja) 2016-05-30 2020-03-04 富士通株式会社 歯の種類判定プログラム、歯冠位置判定装置及びその方法

Also Published As

Publication number Publication date
CN112639880A (zh) 2021-04-09
WO2020007941A1 (en) 2020-01-09
US20210174543A1 (en) 2021-06-10
JP2021529051A (ja) 2021-10-28
IL279834A (en) 2021-03-01
EP3818500A1 (en) 2021-05-12
KR20210028226A (ko) 2021-03-11
JP7493464B2 (ja) 2024-05-31
CA3104592A1 (en) 2020-01-09
EP3591616A1 (en) 2020-01-08

Similar Documents

Publication Publication Date Title
BR112020026687A2 (pt) Método implantado por computador para determinar automaticamente uma pose canônica de um objeto 3d, para sobreposição automatizada de um primeiro objeto 3d e para treinar uma rede neural profunda 3d, sistema de computador adaptado para determinar automaticamente uma pose canônica de um objeto 3d e para sobreposição automatizada de um primeiro objeto 3d, produto de programa de computador
JP7412334B2 (ja) 深層学習法を使用する3d歯データの自動分類および分類法
JP7489964B2 (ja) 深層学習を使用した自動化矯正治療計画
ES2912304T3 (es) Predicción de forma de raíz en 3D automatizada usando métodos de aprendizaje profundo
ES2807263T3 (es) Clasificación y modelado 3D de estructuras dentomaxilofaciales 3D usando métodos de aprendizaje profundo
US11727086B2 (en) Multimodality image processing techniques for training image data generation and usage thereof for developing mono-modality image inferencing models
Chung et al. Automatic registration between dental cone-beam CT and scanned surface via deep pose regression neural networks and clustered similarities
JP2023505374A (ja) 医療画像セグメント化及びアトラス画像選択
Abdolali et al. Mandibular canal segmentation using 3D Active Appearance Models and shape context registration
Zheng et al. Semi or fully automatic tooth segmentation in CBCT images: a review
Lugadilu Development of a statistical shape and appearance model of the skull from a South African population
BR112021003326B1 (pt) Sistema que compreende uma rede neural profunda e pelo menos um processador
Sivasankaran et al. A Rapid Advancing Image Segmentation Approach in Dental to Predict Cryst.
WO2024127310A1 (en) Autoencoders for the validation of 3d oral care representations
WO2024127308A1 (en) Classification of 3d oral care representations
Shkarin Machine learning-based automated segmentation with a feedback loop for 3D synchrotron micro-CT
Neumann Localization and Classification of Teeth in Cone Beam Computed Tomography using 2D CNNs
WO2024127316A1 (en) Autoencoders for the processing of 3d representations in digital oral care
Choi et al. Deep Reinforcement Learning for Efficient Registration between Intraoral-Scan Meshes and Ct Images